@lovrabet/rabetbase-cli 2.5.0-beta.1 → 2.5.0-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/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-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/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/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/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 +1 -1
- package/skills/rabetbase/guides/custom-page-workflow.md +1 -1
- package/skills/rabetbase/references/rabetbase-config.md +1 -1
- package/skills/rabetbase/references/rabetbase-dataset-business-group-update.md +17 -6
- package/skills/rabetbase/references/rabetbase-kb.md +1 -1
- package/skills/rabetbase/references/rabetbase-page-custom-list.md +5 -2
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
function a111_0x169b(){const _0xa48ad9=['replace','create-menu','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','Run\x20','Whether\x20the\x20menu\x20is\x20visible','protocol','4205328iGxiMh','6rXbTYS','expectedPath','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','https:','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','menu_sort_overflow','Created\x20menu\x20','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','trim','menu_parent_not_folder','\x20could\x20not\x20be\x20verified.','menu_not_found','data','657466KSxTnk','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','expectedSnapshotHash','Menu\x20label','Menu\x20','path','after','7lxbqDj','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','string','2980aMyIUP','Recovered\x20menu\x20','visible','add','link','menu_verification_failed','create\x20external\x20menu','menus','fromEntries','entries','<redacted>','causemessage','\x20--format\x20compress','menu_create_recovery_required','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','embedded','23454ObuSZv','external-link-create','new-window','cookie','createdId','open-mode','username','boolean','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','menu_create_response_invalid','menu_mutation_failed','prototype','lookupCommand','menu_permission_denied','flagMissing','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','has','appCode','filter','Would\x20create\x20external\x20website\x20link\x20menu\x20','menu_open_mode_invalid','Create\x20an\x20external\x20website\x20link\x20menu','plannedActions','succeeded','verification','\x20after\x20response\x20loss.','13187108dqSgVI','create-response-validation','failed','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','byId','96366lXChmH','hash','menu_sort_invalid','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','visibility','<platform-generated>','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Recovered\x20created\x20external\x20menu\x20','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','write','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','parent','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','56135zDVdfw','menu','sort','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','afterPlan','plan','stringify','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','body','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','4793280OoIwEw','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','currentSnapshotHash','\x27\x5c\x27\x27','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','URL','External\x20menu\x20creation\x20failed.','label','object','type','/smartapi/menu/create','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','How\x20to\x20open\x20the\x20external\x20website','\x20with\x20','Created\x20external\x20menu\x20','bool','url','recovered','rawFlags','str','map','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','cause','POST','length','rabetbase\x20menu\x20list\x20--appcode\x20','parent-id','isSafeInteger','172WmydNL','create-recovery','menu\x20list','menu_state_drift','isArray','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','menu_url_https_required','code','menu_url_credentials_forbidden','parentId','readbackerror'];a111_0x169b=function(){return _0xa48ad9;};return a111_0x169b();}const a111_0x5bc329=a111_0x393c;(function(_0xe86647,_0x43dceb){const _0x27f80d=a111_0x393c,_0x1c19ee=_0xe86647();while(!![]){try{const _0x4a9a3c=parseInt(_0x27f80d(0xef))/0x1+-parseInt(_0x27f80d(0x12c))/0x2*(-parseInt(_0x27f80d(0xe1))/0x3)+parseInt(_0x27f80d(0xcf))/0x4*(parseInt(_0x27f80d(0x139))/0x5)+-parseInt(_0x27f80d(0xe0))/0x6+parseInt(_0x27f80d(0xf7))/0x7*(parseInt(_0x27f80d(0x144))/0x8)+-parseInt(_0x27f80d(0x10a))/0x9*(-parseInt(_0x27f80d(0xfa))/0xa)+-parseInt(_0x27f80d(0x127))/0xb;if(_0x4a9a3c===_0x43dceb)break;else _0x1c19ee['push'](_0x1c19ee['shift']());}catch(_0x565e57){_0x1c19ee['push'](_0x1c19ee['shift']());}}}(a111_0x169b,0xadfb1));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':a111_0x5bc329(0xfe)};export function validateExternalMenuUrl(_0x37d89e){const _0x23ff26=a111_0x5bc329,_0x29c7bd=_0x37d89e[_0x23ff26(0xea)]();let _0x1b923b;try{_0x1b923b=new URL(_0x29c7bd);}catch{throw menuError('menu_url_invalid',_0x23ff26(0x13c),'Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x1b923b[_0x23ff26(0xdf)]!==_0x23ff26(0xe4))throw menuError(_0x23ff26(0xd5),_0x23ff26(0xe9),'Provide\x20an\x20HTTPS\x20URL.');if(_0x1b923b[_0x23ff26(0x110)]||_0x1b923b['password'])throw menuError(_0x23ff26(0xd7),'External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.',_0x23ff26(0x134));return _0x29c7bd;}export const menuExternalLinkCreate={'service':a111_0x5bc329(0x13a),'command':a111_0x5bc329(0x10b),'description':a111_0x5bc329(0x122),'risk':a111_0x5bc329(0x135),'structuredErrors':!![],'flags':[{'name':a111_0x5bc329(0xb9),'type':a111_0x5bc329(0xf9),'required':!![],'description':a111_0x5bc329(0xf3)},{'name':a111_0x5bc329(0x10f),'type':a111_0x5bc329(0xf9),'required':!![],'enum':[a111_0x5bc329(0x109),a111_0x5bc329(0x10c)],'description':a111_0x5bc329(0xbe)},{'name':a111_0x5bc329(0xc2),'type':a111_0x5bc329(0xf9),'required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a111_0x5bc329(0xfc),'type':a111_0x5bc329(0x111),'default':!![],'description':a111_0x5bc329(0xde)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2f0c07){validateAddInput(_0x2f0c07);},async 'dryRun'(_0x5934d3){const _0x29f963=a111_0x5bc329;validateAddInput(_0x5934d3);const {plan:_0x849491}=await buildSafeAddPlan(_0x5934d3,!![]),_0x50437f=_0x849491[_0x29f963(0xf6)],_0x28ddef=createBody(_0x50437f);return menuDryRunResult(_0x849491,{'method':'POST','url':'/smartapi/menu/create','body':_0x28ddef,'description':_0x29f963(0x120)+JSON[_0x29f963(0x13f)](_0x50437f[_0x29f963(0xb9)])+_0x29f963(0xbf)+_0x5934d3[_0x29f963(0xc5)](_0x29f963(0x10f))+_0x29f963(0xf8)});},async 'execute'(_0x473a3f){const _0x595be3=a111_0x5bc329;validateAddInput(_0x473a3f);const _0x2ce7c1=await buildSafeAddPlan(_0x473a3f,![]),{plan:_0x46abe4,snapshot:_0x4a0851}=_0x2ce7c1,_0x282402=_0x46abe4[_0x595be3(0xf6)],_0x23c367=buildMenuLookupCommand(_0x473a3f['appCode']);await recheckAddSnapshot(_0x473a3f,_0x46abe4);let _0x5146b4;try{_0x5146b4=await createMenuEntity(_0x473a3f[_0x595be3(0x11e)],_0x473a3f[_0x595be3(0x10d)],createBody(_0x282402));}catch(_0x4cdf4c){const _0x30082a=mapMenuApiError(_0x4cdf4c,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x4cdf4c)||_0x30082a[_0x595be3(0xd6)]===_0x595be3(0x11a))throw externalLinkCreateFailure(_0x30082a,_0x46abe4,{'stage':'create','failed':{},'verification':{'status':_0x595be3(0x129),'lookupCommand':_0x23c367}});return recoverAfterResponseLoss(_0x473a3f,_0x2ce7c1,_0x23c367);}const _0x44222f=Number(_0x5146b4?.['id']),_0x51c5bd=typeof _0x5146b4?.[_0x595be3(0xf5)]===_0x595be3(0xf9)?_0x5146b4[_0x595be3(0xf5)]:'';if(!Number[_0x595be3(0xce)](_0x44222f)||_0x44222f<=0x0||!_0x51c5bd[_0x595be3(0xea)]()){const _0x5ac82d=menuError(_0x595be3(0x116),_0x595be3(0x132),_0x595be3(0xdd)+_0x23c367+_0x595be3(0x112));throw externalLinkCreateFailure(_0x5ac82d,_0x46abe4,{'stage':_0x595be3(0x128),'succeeded':Number[_0x595be3(0xce)](_0x44222f)&&_0x44222f>0x0?[{'id':_0x44222f,'created':!![]}]:[],'failed':{'createdId':Number[_0x595be3(0xce)](_0x44222f)?_0x44222f:null,'generatedPathConfirmed':Boolean(_0x51c5bd[_0x595be3(0xea)]())},'warnings':[_0x595be3(0x138)],'after':Number[_0x595be3(0xce)](_0x44222f)&&_0x44222f>0x0?{..._0x282402,'id':_0x44222f,'path':_0x51c5bd}:_0x282402,'verification':{'status':_0x595be3(0x129),'lookupCommand':_0x23c367,...Number[_0x595be3(0xce)](_0x44222f)&&_0x44222f>0x0?{'targetId':_0x44222f}:{}}});}const _0xb6cc95=await readAndVerifyCreatedMenu({'appCode':_0x473a3f[_0x595be3(0x11e)],'cookie':_0x473a3f[_0x595be3(0x10d)],'plan':_0x46abe4,'afterPlan':_0x282402,'createdId':_0x44222f,'expectedPath':_0x51c5bd,'lookupCommand':_0x23c367,'recovered':![]});return creationSuccess(_0x46abe4,_0xb6cc95['snapshot'],_0xb6cc95['fact'],![]);}};function validateAddInput(_0x6bb05f){const _0x27d387=a111_0x5bc329;if(!_0x6bb05f['str'](_0x27d387(0xb9))[_0x27d387(0xea)]())throw CliErrors['flagMissing']('label');resolveExternalMenuType(_0x6bb05f),validateExternalMenuUrl(_0x6bb05f[_0x27d387(0xc5)]('url')),parseParentId(_0x6bb05f,_0x27d387(0xcd)),validateSort(_0x6bb05f);}function a111_0x393c(_0x4f24a0,_0x29b6cc){_0x4f24a0=_0x4f24a0-0xb3;const _0x169bbf=a111_0x169b();let _0x393cb3=_0x169bbf[_0x4f24a0];return _0x393cb3;}function resolveExternalMenuType(_0x12f118){const _0x30d32e=a111_0x5bc329,_0x48a46b=_0x12f118[_0x30d32e(0xc5)](_0x30d32e(0x10f))['trim']();if(!_0x48a46b)throw CliErrors[_0x30d32e(0x11b)]('open-mode');const _0x4fbf8f=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x48a46b];if(!_0x4fbf8f)throw menuError(_0x30d32e(0x121),_0x30d32e(0xf1),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x4fbf8f;}async function buildAddPlan(_0xedc253,_0x2a35c9){const _0x5be9a8=a111_0x5bc329,_0x4347ae=await fetchMutationSnapshot(_0xedc253,_0x5be9a8(0x100)),_0x230cd7=parseParentId(_0xedc253,_0x5be9a8(0xcd))??null;if(_0x230cd7!=null)requireFolder(_0x4347ae,_0x230cd7);const _0x3d3b3e=validateSort(_0xedc253),_0x429d7e=_0x3d3b3e??nextSiblingSort(_0x4347ae,_0x230cd7,'menu'),_0x4f6f6a=_0xedc253[_0x5be9a8(0xc5)](_0x5be9a8(0xb9))[_0x5be9a8(0xea)](),_0x4608ee=resolveExternalMenuType(_0xedc253),_0x5e4ed1=validateExternalMenuUrl(_0xedc253[_0x5be9a8(0xc5)](_0x5be9a8(0xc2))),_0x4094da=Object[_0x5be9a8(0x118)]['hasOwnProperty']['call'](_0xedc253[_0x5be9a8(0xc4)],_0x5be9a8(0xfc))?_0xedc253[_0x5be9a8(0xc1)]('visible'):!![],_0x31494f={'id':null,'parentId':_0x230cd7,'label':_0x4f6f6a,'path':_0x5be9a8(0x131),'url':_0x5e4ed1,'type':_0x4608ee,'visible':_0x4094da,'sort':_0x429d7e},_0x199d62=buildMenuLookupCommand(_0xedc253[_0x5be9a8(0x11e)]),_0x4351aa=mutationResult({'operation':_0x5be9a8(0xfd),'selector':{'parentId':_0x230cd7,'type':_0x4608ee,'label':_0x4f6f6a,'url':_0x5e4ed1},'before':null,'after':_0x31494f,'dryRun':_0x2a35c9,'backend':[{'method':_0x5be9a8(0xca),'path':_0x5be9a8(0xbc)}],'plannedActions':[{'stage':_0x5be9a8(0xdb),'method':'POST','path':_0x5be9a8(0xbc),'body':createBody(_0x31494f)}],'snapshotHash':_0x4347ae['hash'],'warnings':[_0x5be9a8(0x140)],'verification':{'lookupCommand':_0x199d62}});return{'plan':_0x4351aa,'snapshot':_0x4347ae};}async function buildSafeAddPlan(_0x116a48,_0x36902c){try{return await buildAddPlan(_0x116a48,_0x36902c);}catch(_0x429689){throw safeMenuAddError(_0x429689);}}async function recheckAddSnapshot(_0x1f9d75,_0x40a0e1){const _0x1e9924=a111_0x5bc329;try{await recheckMutationSnapshot(_0x1f9d75,_0x40a0e1,_0x1e9924(0x100));}catch(_0x2c9ef8){const _0x593cc7=getFailureRecord(_0x2c9ef8);throw externalLinkCreateFailure(_0x2c9ef8,_0x40a0e1,{'stage':'pre-write-recheck','failed':{..._0x593cc7?.[_0x1e9924(0xf2)]?{'expectedSnapshotHash':_0x593cc7[_0x1e9924(0xf2)]}:{},..._0x593cc7?.[_0x1e9924(0xb4)]?{'currentSnapshotHash':_0x593cc7['currentSnapshotHash']}:{}}});}}function createBody(_0x12a22c){const _0x31e781=a111_0x5bc329;return{'parentId':toApiParentId(_0x12a22c[_0x31e781(0xd8)]),'label':String(_0x12a22c[_0x31e781(0xb9)]),'type':String(_0x12a22c[_0x31e781(0xbb)]),'url':String(_0x12a22c[_0x31e781(0xc2)]),'visible':Boolean(_0x12a22c[_0x31e781(0xfc)]),'sort':Number(_0x12a22c[_0x31e781(0x13b)]),'extend':{}};}function buildMenuLookupCommand(_0xbdc830){const _0x1a08ff=a111_0x5bc329,_0x4a2dc1='\x27'+_0xbdc830['replace'](/'/g,_0x1a08ff(0xb5))+'\x27';return _0x1a08ff(0xcc)+_0x4a2dc1+_0x1a08ff(0x106);}async function recoverAfterResponseLoss(_0x31b784,_0x42c7cc,_0x49beee){const _0x5e7e69=a111_0x5bc329,{plan:_0x183506,snapshot:_0x19fb41}=_0x42c7cc,_0x544ab7=_0x183506[_0x5e7e69(0xf6)];let _0x416dbc;try{_0x416dbc=await fetchMenuSnapshot(_0x31b784[_0x5e7e69(0x11e)],_0x31b784[_0x5e7e69(0x10d)]);}catch(_0x33ab70){throw recoveryRequiredFailure(_0x183506,_0x49beee,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x53c1fc=_0x416dbc[_0x5e7e69(0x101)][_0x5e7e69(0x11f)](_0x5e234c=>_0x5e234c[_0x5e7e69(0xd8)]===_0x544ab7['parentId']&&_0x5e234c[_0x5e7e69(0xbb)]===_0x544ab7[_0x5e7e69(0xbb)]&&_0x5e234c[_0x5e7e69(0xb9)]===_0x544ab7[_0x5e7e69(0xb9)]&&_0x5e234c[_0x5e7e69(0xc2)]===_0x544ab7[_0x5e7e69(0xc2)]),_0x4731a0=_0x53c1fc[_0x5e7e69(0x11f)](_0x560f9e=>!_0x19fb41[_0x5e7e69(0x12b)]['has'](_0x560f9e['id'])),_0xef5138=_0x53c1fc[_0x5e7e69(0x11f)](_0xfe5650=>_0x19fb41[_0x5e7e69(0x12b)][_0x5e7e69(0x11d)](_0xfe5650['id']));if(_0x53c1fc[_0x5e7e69(0xcb)]!==0x1||_0x4731a0[_0x5e7e69(0xcb)]!==0x1)throw recoveryRequiredFailure(_0x183506,_0x49beee,{'matchCount':_0x53c1fc[_0x5e7e69(0xcb)],'newMatchCount':_0x4731a0[_0x5e7e69(0xcb)],'preexistingMatchCount':_0xef5138[_0x5e7e69(0xcb)]});const _0x43fc20=_0x4731a0[0x0];try{verifyCreatedFact(_0x43fc20,_0x43fc20['id'],_0x544ab7,null);}catch(_0x46d724){const _0x3f3ecc=_0x46d724 instanceof Error&&_0x5e7e69(0xd6)in _0x46d724?_0x46d724:menuError('menu_verification_failed',_0x5e7e69(0xfb)+_0x43fc20['id']+_0x5e7e69(0xec),_0x5e7e69(0xdd)+_0x49beee+_0x5e7e69(0x114));throw externalLinkCreateFailure(_0x3f3ecc,_0x183506,{'stage':_0x5e7e69(0x125),'succeeded':[{'id':_0x43fc20['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x43fc20['id'],'finalFactsConfirmed':![]},'after':_0x43fc20,'warnings':[_0x5e7e69(0xf4)+_0x43fc20['id']+_0x5e7e69(0xc7)],'verification':{'status':_0x5e7e69(0x129),'targetId':_0x43fc20['id'],'recovered':!![],'lookupCommand':_0x49beee}});}return creationSuccess(_0x183506,_0x416dbc,_0x43fc20,!![]);}function recoveryRequiredFailure(_0x3c52b1,_0x5c9eb0,_0x982e2b){const _0x45d085=a111_0x5bc329,_0x3740f5=menuError(_0x45d085(0x107),_0x45d085(0x115),'Run\x20'+_0x5c9eb0+_0x45d085(0xb6));return externalLinkCreateFailure(_0x3740f5,_0x3c52b1,{'stage':_0x45d085(0xd0),'failed':_0x982e2b,'warnings':[_0x45d085(0xc8)],'verification':{'status':_0x45d085(0x129),..._0x982e2b,'lookupCommand':_0x5c9eb0}});}async function readAndVerifyCreatedMenu(_0x83b141){const _0x4f2b82=a111_0x5bc329;let _0x40515c;try{_0x40515c=await fetchMenuSnapshot(_0x83b141['appCode'],_0x83b141[_0x4f2b82(0x10d)]);}catch(_0x3633d8){const _0x3f2e29=menuError('menu_verification_failed','Menu\x20'+_0x83b141[_0x4f2b82(0x10e)]+_0x4f2b82(0x11c),_0x4f2b82(0xdd)+_0x83b141[_0x4f2b82(0x119)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x3f2e29,_0x83b141['plan'],{'stage':'verification','succeeded':[{'id':_0x83b141[_0x4f2b82(0x10e)],'created':!![]}],'failed':{'id':_0x83b141[_0x4f2b82(0x10e)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x83b141[_0x4f2b82(0x13d)],'id':_0x83b141[_0x4f2b82(0x10e)],'path':_0x83b141['expectedPath']},'warnings':[_0x4f2b82(0xf4)+_0x83b141[_0x4f2b82(0x10e)]+_0x4f2b82(0xdc)],'verification':{'status':_0x4f2b82(0x129),'targetId':_0x83b141[_0x4f2b82(0x10e)],'lookupCommand':_0x83b141[_0x4f2b82(0x119)]}});}const _0xf09676=_0x40515c[_0x4f2b82(0x12b)]['get'](_0x83b141[_0x4f2b82(0x10e)]);try{if(!_0xf09676)throw menuError(_0x4f2b82(0xff),_0x4f2b82(0xe7)+_0x83b141[_0x4f2b82(0x10e)]+_0x4f2b82(0xe8),_0x4f2b82(0xdd)+_0x83b141[_0x4f2b82(0x119)]+_0x4f2b82(0xb3));verifyCreatedFact(_0xf09676,_0x83b141[_0x4f2b82(0x10e)],_0x83b141[_0x4f2b82(0x13d)],_0x83b141[_0x4f2b82(0xe2)]);}catch(_0x4babdb){const _0x4c6eaf=_0x4babdb instanceof Error&&_0x4f2b82(0xd6)in _0x4babdb?_0x4babdb:menuError(_0x4f2b82(0xff),_0x4f2b82(0xe7)+_0x83b141[_0x4f2b82(0x10e)]+'\x20failed\x20final\x20verification.',_0x4f2b82(0xdd)+_0x83b141[_0x4f2b82(0x119)]+_0x4f2b82(0xb3));throw externalLinkCreateFailure(_0x4c6eaf,_0x83b141[_0x4f2b82(0x13e)],{'stage':_0x4f2b82(0x125),'succeeded':[{'id':_0x83b141[_0x4f2b82(0x10e)],'created':!![]}],'failed':{'id':_0x83b141['createdId'],'finalFactsConfirmed':![]},'after':_0xf09676??{..._0x83b141[_0x4f2b82(0x13d)],'id':_0x83b141[_0x4f2b82(0x10e)],'path':_0x83b141['expectedPath']},'warnings':[_0x4f2b82(0xf4)+_0x83b141[_0x4f2b82(0x10e)]+_0x4f2b82(0x136)],'verification':{'status':_0x4f2b82(0x129),'targetId':_0x83b141[_0x4f2b82(0x10e)],'recovered':_0x83b141[_0x4f2b82(0xc3)],'lookupCommand':_0x83b141[_0x4f2b82(0x119)]}});}return{'snapshot':_0x40515c,'fact':_0xf09676};}function verifyCreatedFact(_0x19d77b,_0x5a2681,_0x5750be,_0x24a725){const _0x2a4cea=a111_0x5bc329;if(!Number[_0x2a4cea(0xce)](_0x19d77b['id'])||_0x19d77b['id']<=0x0||_0x19d77b['id']!==_0x5a2681)throw menuError(_0x2a4cea(0xff),_0x2a4cea(0xd4),_0x2a4cea(0xe3));const _0x20994b=[[_0x2a4cea(0x137),_0x19d77b[_0x2a4cea(0xd8)],_0x5750be[_0x2a4cea(0xd8)]],[_0x2a4cea(0xbb),_0x19d77b[_0x2a4cea(0xbb)],_0x5750be[_0x2a4cea(0xbb)]],['label',_0x19d77b[_0x2a4cea(0xb9)],_0x5750be['label']],[_0x2a4cea(0xb7),_0x19d77b[_0x2a4cea(0xc2)],_0x5750be[_0x2a4cea(0xc2)]],[_0x2a4cea(0x130),_0x19d77b[_0x2a4cea(0xfc)],_0x5750be[_0x2a4cea(0xfc)]],[_0x2a4cea(0x13b),_0x19d77b[_0x2a4cea(0x13b)],_0x5750be[_0x2a4cea(0x13b)]]];for(const [_0x7c8aa1,_0x29e1ca,_0x579bd4]of _0x20994b){if(_0x29e1ca!==_0x579bd4)throw menuError(_0x2a4cea(0xff),_0x2a4cea(0xe7)+_0x19d77b['id']+'\x20has\x20an\x20unexpected\x20'+_0x7c8aa1+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x19d77b[_0x2a4cea(0xf5)][_0x2a4cea(0xea)]()||_0x24a725!==null&&_0x19d77b[_0x2a4cea(0xf5)]!==_0x24a725)throw menuError('menu_verification_failed',_0x2a4cea(0xe7)+_0x19d77b['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x2a4cea(0x113));}function creationSuccess(_0x2c9065,_0xbc5a9b,_0x533c20,_0x54eaac){const _0x511b8a=a111_0x5bc329,_0x461733=mutationResult({..._0x2c9065,'after':_0x533c20,'dryRun':![],'succeeded':[{'id':_0x533c20['id'],'created':!![],'recovered':_0x54eaac}],'verification':{'checkedBy':_0x511b8a(0xd1),'snapshotHash':_0xbc5a9b[_0x511b8a(0x12d)],'targetId':_0x533c20['id'],'recovered':_0x54eaac,'path':_0x533c20[_0x511b8a(0xf5)]}});return{'ok':!![],'message':_0x54eaac?_0x511b8a(0x133)+_0x533c20['id']+_0x511b8a(0x126):_0x511b8a(0xc0)+_0x533c20['id']+'.','data':{..._0x461733,'recovered':_0x54eaac}};}function externalLinkCreateFailure(_0x542a49,_0x118f5a,_0x28b03e){const _0x551fdb=a111_0x5bc329;return menuFailure(safeMenuAddError(_0x542a49),redactFailurePlan(_0x118f5a),{..._0x28b03e,'succeeded':_0x28b03e[_0x551fdb(0x124)]?.['map'](redactFailureRecord),'failed':_0x28b03e[_0x551fdb(0x129)]?redactFailureRecord(_0x28b03e[_0x551fdb(0x129)]):undefined,'verification':_0x28b03e[_0x551fdb(0x125)]?redactFailureRecord(_0x28b03e[_0x551fdb(0x125)]):undefined,'after':_0x28b03e[_0x551fdb(0xf6)]===undefined?undefined:redactFailureValue(_0x28b03e[_0x551fdb(0xf6)])});}function redactFailurePlan(_0x5bf779){const _0x1642f5=a111_0x5bc329;return{..._0x5bf779,'selector':redactFailureRecord(_0x5bf779['selector']),'before':redactFailureValue(_0x5bf779['before']),'after':redactFailureValue(_0x5bf779[_0x1642f5(0xf6)]),'plannedActions':_0x5bf779[_0x1642f5(0x123)]?.['map'](_0x521d48=>({..._0x521d48,'body':redactFailureRecord(_0x521d48[_0x1642f5(0x142)])})),'succeeded':_0x5bf779['succeeded'][_0x1642f5(0xc6)](redactFailureRecord),'failed':_0x5bf779[_0x1642f5(0x129)][_0x1642f5(0xc6)](redactFailureRecord),'verification':_0x5bf779[_0x1642f5(0x125)]?redactFailureRecord(_0x5bf779[_0x1642f5(0x125)]):undefined};}function redactFailureRecord(_0x2f4ba4){return redactFailureValue(_0x2f4ba4);}function redactFailureValue(_0x105293,_0x360f7b=''){const _0x44b5f8=a111_0x5bc329,_0x58b82d=_0x360f7b['toLowerCase']()[_0x44b5f8(0xda)](/[^a-z0-9]/g,'');if([_0x44b5f8(0xc9),_0x44b5f8(0x105),_0x44b5f8(0xd9),'rawerror']['includes'](_0x58b82d))return _0x44b5f8(0x104);if(Array[_0x44b5f8(0xd3)](_0x105293))return _0x105293[_0x44b5f8(0xc6)](_0x358c50=>redactFailureValue(_0x358c50));if(_0x105293&&typeof _0x105293===_0x44b5f8(0xba))return Object[_0x44b5f8(0x102)](Object[_0x44b5f8(0x103)](_0x105293)['map'](([_0x195b4d,_0x164680])=>[_0x195b4d,redactFailureValue(_0x164680,_0x195b4d)]));return _0x105293;}function safeMenuAddError(_0xcc4324){const _0x55548a=a111_0x5bc329,_0x23bdb2=_0xcc4324 instanceof CliError?_0xcc4324[_0x55548a(0xd6)]:_0x55548a(0x117);switch(_0x23bdb2){case _0x55548a(0xd2):return menuError(_0x23bdb2,_0x55548a(0x12a),_0x55548a(0x108));case _0x55548a(0x11a):return menuError(_0x23bdb2,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.',_0x55548a(0x143));case _0x55548a(0x116):return menuError(_0x23bdb2,_0x55548a(0xbd),_0x55548a(0xe5));case _0x55548a(0xff):return menuError(_0x23bdb2,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.',_0x55548a(0xe5));case _0x55548a(0x107):return menuError(_0x23bdb2,_0x55548a(0x12f),_0x55548a(0xf0));case'menu_mutation_failed':case _0x55548a(0xed):case _0x55548a(0xeb):case _0x55548a(0x12e):case _0x55548a(0xe6):return menuError(_0x23bdb2,_0x55548a(0xb8),_0x55548a(0x141));default:return menuError(_0x55548a(0x117),_0x55548a(0xb8),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x10c79d){const _0x3207a3=a111_0x5bc329;if(!(_0x10c79d instanceof Error)||!(_0x3207a3(0xee)in _0x10c79d))return undefined;const _0xb81bec=_0x10c79d[_0x3207a3(0xee)];if(!_0xb81bec||typeof _0xb81bec!==_0x3207a3(0xba))return undefined;const _0x39637e=_0xb81bec['failed'];if(!Array[_0x3207a3(0xd3)](_0x39637e)||!_0x39637e[0x0]||typeof _0x39637e[0x0]!=='object')return undefined;return _0x39637e[0x0];}
|
|
1
|
+
const a111_0x3ca769=a111_0x4011;(function(_0x2c12f5,_0x4b363b){const _0x127ef5=a111_0x4011,_0x9e1adf=_0x2c12f5();while(!![]){try{const _0xdcddf7=-parseInt(_0x127ef5(0xf4))/0x1*(-parseInt(_0x127ef5(0x12f))/0x2)+parseInt(_0x127ef5(0xca))/0x3+parseInt(_0x127ef5(0x121))/0x4+-parseInt(_0x127ef5(0x120))/0x5*(-parseInt(_0x127ef5(0x14a))/0x6)+-parseInt(_0x127ef5(0x143))/0x7+parseInt(_0x127ef5(0x122))/0x8+-parseInt(_0x127ef5(0xdd))/0x9;if(_0xdcddf7===_0x4b363b)break;else _0x9e1adf['push'](_0x9e1adf['shift']());}catch(_0x1feff5){_0x9e1adf['push'](_0x9e1adf['shift']());}}}(a111_0x4a61,0xc9209));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(_0x5a7cc4){const _0x5da381=a111_0x4011,_0x1dd9bf=_0x5a7cc4['trim']();let _0x19e9c5;try{_0x19e9c5=new URL(_0x1dd9bf);}catch{throw menuError(_0x5da381(0x12d),_0x5da381(0x108),'Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x19e9c5['protocol']!==_0x5da381(0xc6))throw menuError(_0x5da381(0xff),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0x5da381(0x102));if(_0x19e9c5['username']||_0x19e9c5[_0x5da381(0xfd)])throw menuError('menu_url_credentials_forbidden',_0x5da381(0x142),_0x5da381(0x109));return _0x1dd9bf;}export const menuExternalLinkCreate={'service':a111_0x3ca769(0xd0),'command':a111_0x3ca769(0xed),'description':a111_0x3ca769(0xec),'risk':a111_0x3ca769(0xeb),'structuredErrors':!![],'flags':[{'name':a111_0x3ca769(0x137),'type':a111_0x3ca769(0x111),'required':!![],'description':'Menu\x20label'},{'name':a111_0x3ca769(0xce),'type':a111_0x3ca769(0x111),'required':!![],'enum':[a111_0x3ca769(0x10d),a111_0x3ca769(0xea)],'description':a111_0x3ca769(0x128)},{'name':'url','type':a111_0x3ca769(0x111),'required':!![],'description':a111_0x3ca769(0x11d)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':a111_0x3ca769(0xd3),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x409638){validateAddInput(_0x409638);},async 'dryRun'(_0xf85c96){const _0x30d808=a111_0x3ca769;validateAddInput(_0xf85c96);const {plan:_0x3cb917}=await buildSafeAddPlan(_0xf85c96,!![]),_0x5b1e4d=_0x3cb917[_0x30d808(0x12c)],_0x3f6d9a=createBody(_0x5b1e4d);return menuDryRunResult(_0x3cb917,{'method':_0x30d808(0x127),'url':'/smartapi/menu/create','body':_0x3f6d9a,'description':_0x30d808(0xfb)+JSON[_0x30d808(0xd8)](_0x5b1e4d[_0x30d808(0x137)])+_0x30d808(0x148)+_0xf85c96[_0x30d808(0x134)](_0x30d808(0xce))+_0x30d808(0x10f)});},async 'execute'(_0x54a0d3){const _0x3b644a=a111_0x3ca769;validateAddInput(_0x54a0d3);const _0x4bf2cf=await buildSafeAddPlan(_0x54a0d3,![]),{plan:_0x24e3e3,snapshot:_0x445f84}=_0x4bf2cf,_0x230a71=_0x24e3e3[_0x3b644a(0x12c)],_0x52603d=buildMenuLookupCommand(_0x54a0d3[_0x3b644a(0xde)]);await recheckAddSnapshot(_0x54a0d3,_0x24e3e3);let _0xf130b1;try{_0xf130b1=await createMenuEntity(_0x54a0d3[_0x3b644a(0xde)],_0x54a0d3[_0x3b644a(0xdc)],createBody(_0x230a71));}catch(_0x5eb283){const _0x5467d0=mapMenuApiError(_0x5eb283,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x5eb283)||_0x5467d0['code']===_0x3b644a(0x116))throw externalLinkCreateFailure(_0x5467d0,_0x24e3e3,{'stage':_0x3b644a(0x10b),'failed':{},'verification':{'status':'failed','lookupCommand':_0x52603d}});return recoverAfterResponseLoss(_0x54a0d3,_0x4bf2cf,_0x52603d);}const _0x3471ed=Number(_0xf130b1?.['id']),_0x4a2137=typeof _0xf130b1?.[_0x3b644a(0xf5)]===_0x3b644a(0x111)?_0xf130b1['path']:'';if(!Number[_0x3b644a(0xda)](_0x3471ed)||_0x3471ed<=0x0||!_0x4a2137[_0x3b644a(0x126)]()){const _0x42c8fb=menuError(_0x3b644a(0xcc),_0x3b644a(0xf8),_0x3b644a(0x13f)+_0x52603d+_0x3b644a(0x14b));throw externalLinkCreateFailure(_0x42c8fb,_0x24e3e3,{'stage':_0x3b644a(0x115),'succeeded':Number[_0x3b644a(0xda)](_0x3471ed)&&_0x3471ed>0x0?[{'id':_0x3471ed,'created':!![]}]:[],'failed':{'createdId':Number[_0x3b644a(0xda)](_0x3471ed)?_0x3471ed:null,'generatedPathConfirmed':Boolean(_0x4a2137[_0x3b644a(0x126)]())},'warnings':[_0x3b644a(0xe2)],'after':Number[_0x3b644a(0xda)](_0x3471ed)&&_0x3471ed>0x0?{..._0x230a71,'id':_0x3471ed,'path':_0x4a2137}:_0x230a71,'verification':{'status':_0x3b644a(0x151),'lookupCommand':_0x52603d,...Number[_0x3b644a(0xda)](_0x3471ed)&&_0x3471ed>0x0?{'targetId':_0x3471ed}:{}}});}const _0x2a0f7a=await readAndVerifyCreatedMenu({'appCode':_0x54a0d3[_0x3b644a(0xde)],'cookie':_0x54a0d3['cookie'],'plan':_0x24e3e3,'afterPlan':_0x230a71,'createdId':_0x3471ed,'expectedPath':_0x4a2137,'lookupCommand':_0x52603d,'recovered':![]});return creationSuccess(_0x24e3e3,_0x2a0f7a[_0x3b644a(0x12e)],_0x2a0f7a[_0x3b644a(0x13b)],![]);}};function validateAddInput(_0x11bf2d){const _0x2e9ccc=a111_0x3ca769;if(!_0x11bf2d['str'](_0x2e9ccc(0x137))[_0x2e9ccc(0x126)]())throw CliErrors[_0x2e9ccc(0xc7)](_0x2e9ccc(0x137));resolveExternalMenuType(_0x11bf2d),validateExternalMenuUrl(_0x11bf2d[_0x2e9ccc(0x134)](_0x2e9ccc(0x138))),parseParentId(_0x11bf2d,_0x2e9ccc(0x130)),validateSort(_0x11bf2d);}function a111_0x4011(_0x190cb1,_0x54f339){_0x190cb1=_0x190cb1-0xc4;const _0x4a6125=a111_0x4a61();let _0x401151=_0x4a6125[_0x190cb1];return _0x401151;}function a111_0x4a61(){const _0x313f65=['plan','sort','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','rawerror','External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','filter','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','replace','new-window','write','Create\x20an\x20external\x20website\x20link\x20menu','external-link-create','byId','visible','menu_verification_failed','<redacted>','plannedActions','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','1kqgziy','path','/smartapi/menu/create','verification','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','\x20--format\x20compress','Would\x20create\x20external\x20website\x20link\x20menu\x20','get','password','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','menu_url_https_required','\x20has\x20an\x20unexpected\x20','Menu\x20','Provide\x20an\x20HTTPS\x20URL.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Created\x20menu\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','body','before','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','<platform-generated>','create','succeeded','embedded','rawFlags','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','menus','string','create\x20external\x20menu','Created\x20external\x20menu\x20','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','create-response-validation','menu_permission_denied','cause','selector','length','menu_sort_overflow','type','rabetbase\x20menu\x20list\x20--appcode\x20','External\x20HTTPS\x20URL','menu_parent_not_folder','pre-write-recheck','4275135OViMBi','4525008uYSNeP','5968664mbSIjQ','code','expectedSnapshotHash','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','trim','POST','How\x20to\x20open\x20the\x20external\x20website','Recovered\x20menu\x20','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','after','menu_url_invalid','snapshot','39058JpnmGf','parent-id','fromEntries','readbackerror','menu_mutation_failed','str','menu\x20list','bool','label','url','createdId','isArray','fact','create-recovery','lookupCommand','toLowerCase','Run\x20','includes','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','11376561RMYbLf','currentSnapshotHash','hasOwnProperty','causemessage','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','\x20with\x20','object','6yDpjJi','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','\x20after\x20response\x20loss.','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','data','failed','expectedPath','URL','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','create-menu','https:','flagMissing','visibility','add','925683lqRQyl','parentId','menu_create_response_invalid','prototype','open-mode','map','menu','afterPlan','entries','boolean','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','menu_not_found','stringify','\x27\x5c\x27\x27','isSafeInteger','has','cookie','5502708cHsoLn','appCode','menu_create_recovery_required'];a111_0x4a61=function(){return _0x313f65;};return a111_0x4a61();}function resolveExternalMenuType(_0x146874){const _0x226f86=a111_0x3ca769,_0x18aaa6=_0x146874[_0x226f86(0x134)](_0x226f86(0xce))[_0x226f86(0x126)]();if(!_0x18aaa6)throw CliErrors[_0x226f86(0xc7)](_0x226f86(0xce));const _0x285aa0=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x18aaa6];if(!_0x285aa0)throw menuError('menu_open_mode_invalid',_0x226f86(0x125),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x285aa0;}async function buildAddPlan(_0x2b6a53,_0x1c15a9){const _0x241957=a111_0x3ca769,_0x4d8884=await fetchMutationSnapshot(_0x2b6a53,_0x241957(0x112)),_0xb7b094=parseParentId(_0x2b6a53,_0x241957(0x130))??null;if(_0xb7b094!=null)requireFolder(_0x4d8884,_0xb7b094);const _0x58fcb7=validateSort(_0x2b6a53),_0x5372af=_0x58fcb7??nextSiblingSort(_0x4d8884,_0xb7b094,_0x241957(0xd0)),_0x4be7e4=_0x2b6a53['str'](_0x241957(0x137))[_0x241957(0x126)](),_0x5d130b=resolveExternalMenuType(_0x2b6a53),_0x2274ca=validateExternalMenuUrl(_0x2b6a53[_0x241957(0x134)](_0x241957(0x138))),_0x36dbaa=Object[_0x241957(0xcd)][_0x241957(0x145)]['call'](_0x2b6a53[_0x241957(0x10e)],'visible')?_0x2b6a53[_0x241957(0x136)](_0x241957(0xef)):!![],_0x4c52a5={'id':null,'parentId':_0xb7b094,'label':_0x4be7e4,'path':_0x241957(0x10a),'url':_0x2274ca,'type':_0x5d130b,'visible':_0x36dbaa,'sort':_0x5372af},_0x26e6cc=buildMenuLookupCommand(_0x2b6a53[_0x241957(0xde)]),_0x5bdc45=mutationResult({'operation':_0x241957(0xc9),'selector':{'parentId':_0xb7b094,'type':_0x5d130b,'label':_0x4be7e4,'url':_0x2274ca},'before':null,'after':_0x4c52a5,'dryRun':_0x1c15a9,'backend':[{'method':_0x241957(0x127),'path':'/smartapi/menu/create'}],'plannedActions':[{'stage':_0x241957(0xc5),'method':'POST','path':_0x241957(0xf6),'body':createBody(_0x4c52a5)}],'snapshotHash':_0x4d8884['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x26e6cc}});return{'plan':_0x5bdc45,'snapshot':_0x4d8884};}async function buildSafeAddPlan(_0xfe66d7,_0x46dc63){try{return await buildAddPlan(_0xfe66d7,_0x46dc63);}catch(_0x20862b){throw safeMenuAddError(_0x20862b);}}async function recheckAddSnapshot(_0x375760,_0x297755){const _0x2331c2=a111_0x3ca769;try{await recheckMutationSnapshot(_0x375760,_0x297755,'create\x20external\x20menu');}catch(_0x414b91){const _0x29af0e=getFailureRecord(_0x414b91);throw externalLinkCreateFailure(_0x414b91,_0x297755,{'stage':_0x2331c2(0x11f),'failed':{..._0x29af0e?.[_0x2331c2(0x124)]?{'expectedSnapshotHash':_0x29af0e['expectedSnapshotHash']}:{},..._0x29af0e?.[_0x2331c2(0x144)]?{'currentSnapshotHash':_0x29af0e['currentSnapshotHash']}:{}}});}}function createBody(_0x5bb714){const _0x18f2a1=a111_0x3ca769;return{'parentId':toApiParentId(_0x5bb714['parentId']),'label':String(_0x5bb714[_0x18f2a1(0x137)]),'type':String(_0x5bb714[_0x18f2a1(0x11b)]),'url':String(_0x5bb714[_0x18f2a1(0x138)]),'visible':Boolean(_0x5bb714['visible']),'sort':Number(_0x5bb714['sort']),'extend':{}};}function buildMenuLookupCommand(_0x42aea4){const _0x10d043=a111_0x3ca769,_0x53d58e='\x27'+_0x42aea4[_0x10d043(0xe9)](/'/g,_0x10d043(0xd9))+'\x27';return _0x10d043(0x11c)+_0x53d58e+_0x10d043(0xfa);}async function recoverAfterResponseLoss(_0x57d7df,_0x10273a,_0x548dc2){const _0x4abd63=a111_0x3ca769,{plan:_0x540b93,snapshot:_0x5723b5}=_0x10273a,_0x18868e=_0x540b93['after'];let _0x3254b6;try{_0x3254b6=await fetchMenuSnapshot(_0x57d7df['appCode'],_0x57d7df['cookie']);}catch(_0xe1e554){throw recoveryRequiredFailure(_0x540b93,_0x548dc2,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x281d1d=_0x3254b6[_0x4abd63(0x110)][_0x4abd63(0xe7)](_0x32833b=>_0x32833b[_0x4abd63(0xcb)]===_0x18868e[_0x4abd63(0xcb)]&&_0x32833b[_0x4abd63(0x11b)]===_0x18868e[_0x4abd63(0x11b)]&&_0x32833b['label']===_0x18868e[_0x4abd63(0x137)]&&_0x32833b['url']===_0x18868e[_0x4abd63(0x138)]),_0xfb4222=_0x281d1d[_0x4abd63(0xe7)](_0x209ef2=>!_0x5723b5['byId'][_0x4abd63(0xdb)](_0x209ef2['id'])),_0x1c1346=_0x281d1d[_0x4abd63(0xe7)](_0x521312=>_0x5723b5[_0x4abd63(0xee)][_0x4abd63(0xdb)](_0x521312['id']));if(_0x281d1d['length']!==0x1||_0xfb4222[_0x4abd63(0x119)]!==0x1)throw recoveryRequiredFailure(_0x540b93,_0x548dc2,{'matchCount':_0x281d1d[_0x4abd63(0x119)],'newMatchCount':_0xfb4222[_0x4abd63(0x119)],'preexistingMatchCount':_0x1c1346[_0x4abd63(0x119)]});const _0x180a0a=_0xfb4222[0x0];try{verifyCreatedFact(_0x180a0a,_0x180a0a['id'],_0x18868e,null);}catch(_0x1ac67c){const _0x16418c=_0x1ac67c instanceof Error&&_0x4abd63(0x123)in _0x1ac67c?_0x1ac67c:menuError('menu_verification_failed',_0x4abd63(0x129)+_0x180a0a['id']+'\x20could\x20not\x20be\x20verified.','Run\x20'+_0x548dc2+_0x4abd63(0x12b));throw externalLinkCreateFailure(_0x16418c,_0x540b93,{'stage':_0x4abd63(0xf7),'succeeded':[{'id':_0x180a0a['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x180a0a['id'],'finalFactsConfirmed':![]},'after':_0x180a0a,'warnings':['Menu\x20'+_0x180a0a['id']+_0x4abd63(0xe3)],'verification':{'status':'failed','targetId':_0x180a0a['id'],'recovered':!![],'lookupCommand':_0x548dc2}});}return creationSuccess(_0x540b93,_0x3254b6,_0x180a0a,!![]);}function recoveryRequiredFailure(_0x4cd29d,_0x530328,_0x4579c2){const _0x45d7d1=a111_0x3ca769,_0x100909=menuError('menu_create_recovery_required',_0x45d7d1(0x114),_0x45d7d1(0x13f)+_0x530328+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x100909,_0x4cd29d,{'stage':_0x45d7d1(0x13c),'failed':_0x4579c2,'warnings':[_0x45d7d1(0xc4)],'verification':{'status':_0x45d7d1(0x151),..._0x4579c2,'lookupCommand':_0x530328}});}async function readAndVerifyCreatedMenu(_0xa2f77d){const _0x57a82f=a111_0x3ca769;let _0x157350;try{_0x157350=await fetchMenuSnapshot(_0xa2f77d['appCode'],_0xa2f77d[_0x57a82f(0xdc)]);}catch(_0x5cb93b){const _0x4dcf78=menuError(_0x57a82f(0xf0),_0x57a82f(0x101)+_0xa2f77d['createdId']+_0x57a82f(0x14e),_0x57a82f(0x13f)+_0xa2f77d['lookupCommand']+_0x57a82f(0xf9));throw externalLinkCreateFailure(_0x4dcf78,_0xa2f77d['plan'],{'stage':'verification','succeeded':[{'id':_0xa2f77d[_0x57a82f(0x139)],'created':!![]}],'failed':{'id':_0xa2f77d[_0x57a82f(0x139)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0xa2f77d[_0x57a82f(0xd1)],'id':_0xa2f77d['createdId'],'path':_0xa2f77d[_0x57a82f(0x152)]},'warnings':[_0x57a82f(0x101)+_0xa2f77d[_0x57a82f(0x139)]+_0x57a82f(0x14f)],'verification':{'status':_0x57a82f(0x151),'targetId':_0xa2f77d[_0x57a82f(0x139)],'lookupCommand':_0xa2f77d[_0x57a82f(0x13d)]}});}const _0xe8c34e=_0x157350[_0x57a82f(0xee)][_0x57a82f(0xfc)](_0xa2f77d[_0x57a82f(0x139)]);try{if(!_0xe8c34e)throw menuError(_0x57a82f(0xf0),_0x57a82f(0x104)+_0xa2f77d[_0x57a82f(0x139)]+_0x57a82f(0xd4),_0x57a82f(0x13f)+_0xa2f77d[_0x57a82f(0x13d)]+_0x57a82f(0xf9));verifyCreatedFact(_0xe8c34e,_0xa2f77d[_0x57a82f(0x139)],_0xa2f77d[_0x57a82f(0xd1)],_0xa2f77d[_0x57a82f(0x152)]);}catch(_0x1d66ea){const _0x74ae37=_0x1d66ea instanceof Error&&_0x57a82f(0x123)in _0x1d66ea?_0x1d66ea:menuError(_0x57a82f(0xf0),_0x57a82f(0x104)+_0xa2f77d[_0x57a82f(0x139)]+'\x20failed\x20final\x20verification.',_0x57a82f(0x13f)+_0xa2f77d[_0x57a82f(0x13d)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x74ae37,_0xa2f77d[_0x57a82f(0xe0)],{'stage':_0x57a82f(0xf7),'succeeded':[{'id':_0xa2f77d[_0x57a82f(0x139)],'created':!![]}],'failed':{'id':_0xa2f77d[_0x57a82f(0x139)],'finalFactsConfirmed':![]},'after':_0xe8c34e??{..._0xa2f77d[_0x57a82f(0xd1)],'id':_0xa2f77d[_0x57a82f(0x139)],'path':_0xa2f77d[_0x57a82f(0x152)]},'warnings':[_0x57a82f(0x101)+_0xa2f77d['createdId']+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x57a82f(0x151),'targetId':_0xa2f77d[_0x57a82f(0x139)],'recovered':_0xa2f77d['recovered'],'lookupCommand':_0xa2f77d['lookupCommand']}});}return{'snapshot':_0x157350,'fact':_0xe8c34e};}function verifyCreatedFact(_0x1ec3f4,_0x187049,_0x23c42e,_0x5eb9f9){const _0x4c39ac=a111_0x3ca769;if(!Number[_0x4c39ac(0xda)](_0x1ec3f4['id'])||_0x1ec3f4['id']<=0x0||_0x1ec3f4['id']!==_0x187049)throw menuError(_0x4c39ac(0xf0),_0x4c39ac(0x103),_0x4c39ac(0xf3));const _0x43bedd=[['parent',_0x1ec3f4[_0x4c39ac(0xcb)],_0x23c42e[_0x4c39ac(0xcb)]],[_0x4c39ac(0x11b),_0x1ec3f4['type'],_0x23c42e[_0x4c39ac(0x11b)]],[_0x4c39ac(0x137),_0x1ec3f4[_0x4c39ac(0x137)],_0x23c42e[_0x4c39ac(0x137)]],[_0x4c39ac(0x153),_0x1ec3f4[_0x4c39ac(0x138)],_0x23c42e[_0x4c39ac(0x138)]],[_0x4c39ac(0xc8),_0x1ec3f4['visible'],_0x23c42e[_0x4c39ac(0xef)]],[_0x4c39ac(0xe1),_0x1ec3f4[_0x4c39ac(0xe1)],_0x23c42e[_0x4c39ac(0xe1)]]];for(const [_0x526601,_0x1b74c9,_0x244591]of _0x43bedd){if(_0x1b74c9!==_0x244591)throw menuError(_0x4c39ac(0xf0),'Created\x20menu\x20'+_0x1ec3f4['id']+_0x4c39ac(0x100)+_0x526601+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x1ec3f4[_0x4c39ac(0xf5)][_0x4c39ac(0x126)]()||_0x5eb9f9!==null&&_0x1ec3f4['path']!==_0x5eb9f9)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x1ec3f4['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function creationSuccess(_0x4d8b0c,_0x378166,_0x3ba597,_0x13ed4b){const _0x35dfd7=a111_0x3ca769,_0x549463=mutationResult({..._0x4d8b0c,'after':_0x3ba597,'dryRun':![],'succeeded':[{'id':_0x3ba597['id'],'created':!![],'recovered':_0x13ed4b}],'verification':{'checkedBy':_0x35dfd7(0x135),'snapshotHash':_0x378166['hash'],'targetId':_0x3ba597['id'],'recovered':_0x13ed4b,'path':_0x3ba597[_0x35dfd7(0xf5)]}});return{'ok':!![],'message':_0x13ed4b?'Recovered\x20created\x20external\x20menu\x20'+_0x3ba597['id']+_0x35dfd7(0x14c):_0x35dfd7(0x113)+_0x3ba597['id']+'.','data':{..._0x549463,'recovered':_0x13ed4b}};}function externalLinkCreateFailure(_0xb6cb2c,_0x386e33,_0x4f7321){const _0xd64cdf=a111_0x3ca769;return menuFailure(safeMenuAddError(_0xb6cb2c),redactFailurePlan(_0x386e33),{..._0x4f7321,'succeeded':_0x4f7321[_0xd64cdf(0x10c)]?.[_0xd64cdf(0xcf)](redactFailureRecord),'failed':_0x4f7321[_0xd64cdf(0x151)]?redactFailureRecord(_0x4f7321[_0xd64cdf(0x151)]):undefined,'verification':_0x4f7321[_0xd64cdf(0xf7)]?redactFailureRecord(_0x4f7321[_0xd64cdf(0xf7)]):undefined,'after':_0x4f7321[_0xd64cdf(0x12c)]===undefined?undefined:redactFailureValue(_0x4f7321['after'])});}function redactFailurePlan(_0x41c86f){const _0x2c43af=a111_0x3ca769;return{..._0x41c86f,'selector':redactFailureRecord(_0x41c86f[_0x2c43af(0x118)]),'before':redactFailureValue(_0x41c86f[_0x2c43af(0x107)]),'after':redactFailureValue(_0x41c86f[_0x2c43af(0x12c)]),'plannedActions':_0x41c86f[_0x2c43af(0xf2)]?.[_0x2c43af(0xcf)](_0x33a99a=>({..._0x33a99a,'body':redactFailureRecord(_0x33a99a[_0x2c43af(0x106)])})),'succeeded':_0x41c86f[_0x2c43af(0x10c)]['map'](redactFailureRecord),'failed':_0x41c86f[_0x2c43af(0x151)][_0x2c43af(0xcf)](redactFailureRecord),'verification':_0x41c86f[_0x2c43af(0xf7)]?redactFailureRecord(_0x41c86f[_0x2c43af(0xf7)]):undefined};}function redactFailureRecord(_0x3bde89){return redactFailureValue(_0x3bde89);}function redactFailureValue(_0x5de607,_0x2d4da4=''){const _0x5306c0=a111_0x3ca769,_0x25d475=_0x2d4da4[_0x5306c0(0x13e)]()[_0x5306c0(0xe9)](/[^a-z0-9]/g,'');if([_0x5306c0(0x117),_0x5306c0(0x146),_0x5306c0(0x132),_0x5306c0(0xe4)][_0x5306c0(0x140)](_0x25d475))return _0x5306c0(0xf1);if(Array[_0x5306c0(0x13a)](_0x5de607))return _0x5de607[_0x5306c0(0xcf)](_0x140196=>redactFailureValue(_0x140196));if(_0x5de607&&typeof _0x5de607===_0x5306c0(0x149))return Object[_0x5306c0(0x131)](Object[_0x5306c0(0xd2)](_0x5de607)['map'](([_0x141899,_0x2e6e1f])=>[_0x141899,redactFailureValue(_0x2e6e1f,_0x141899)]));return _0x5de607;}function safeMenuAddError(_0x2fd919){const _0x1b4c10=a111_0x3ca769,_0x503a80=_0x2fd919 instanceof CliError?_0x2fd919[_0x1b4c10(0x123)]:_0x1b4c10(0x133);switch(_0x503a80){case'menu_state_drift':return menuError(_0x503a80,_0x1b4c10(0x14d),_0x1b4c10(0x105));case'menu_permission_denied':return menuError(_0x503a80,_0x1b4c10(0xfe),_0x1b4c10(0xe8));case _0x1b4c10(0xcc):return menuError(_0x503a80,_0x1b4c10(0x12a),_0x1b4c10(0x147));case _0x1b4c10(0xf0):return menuError(_0x503a80,_0x1b4c10(0x141),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x1b4c10(0xdf):return menuError(_0x503a80,_0x1b4c10(0xd5),_0x1b4c10(0xd6));case _0x1b4c10(0x133):case _0x1b4c10(0xd7):case _0x1b4c10(0x11e):case'menu_sort_invalid':case _0x1b4c10(0x11a):return menuError(_0x503a80,_0x1b4c10(0xe5),_0x1b4c10(0xe6));default:return menuError('menu_mutation_failed',_0x1b4c10(0xe5),_0x1b4c10(0xe6));}}function getFailureRecord(_0x4f5141){const _0x2446da=a111_0x3ca769;if(!(_0x4f5141 instanceof Error)||!(_0x2446da(0x150)in _0x4f5141))return undefined;const _0x49a43e=_0x4f5141[_0x2446da(0x150)];if(!_0x49a43e||typeof _0x49a43e!==_0x2446da(0x149))return undefined;const _0x28c056=_0x49a43e[_0x2446da(0x151)];if(!Array[_0x2446da(0x13a)](_0x28c056)||!_0x28c056[0x0]||typeof _0x28c056[0x0]!==_0x2446da(0x149))return undefined;return _0x28c056[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a112_0x4ed671=a112_0x2c92;(function(_0x56dae8,_0x199a3a){const _0x59a085=a112_0x2c92,_0x2c94c5=_0x56dae8();while(!![]){try{const _0xe9d0=parseInt(_0x59a085(0xef))/0x1*(parseInt(_0x59a085(0xbb))/0x2)+-parseInt(_0x59a085(0xee))/0x3*(-parseInt(_0x59a085(0xd8))/0x4)+-parseInt(_0x59a085(0xf4))/0x5*(parseInt(_0x59a085(0xfe))/0x6)+-parseInt(_0x59a085(0x100))/0x7+parseInt(_0x59a085(0xc4))/0x8*(-parseInt(_0x59a085(0xfb))/0x9)+parseInt(_0x59a085(0xb6))/0xa+parseInt(_0x59a085(0xbe))/0xb*(parseInt(_0x59a085(0xbf))/0xc);if(_0xe9d0===_0x199a3a)break;else _0x2c94c5['push'](_0x2c94c5['shift']());}catch(_0xf4bb14){_0x2c94c5['push'](_0x2c94c5['shift']());}}}(a112_0x43a0,0x9c86e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a112_0x2c92(_0xff52d4,_0x511bcc){_0xff52d4=_0xff52d4-0xb4;const _0x43a0d4=a112_0x43a0();let _0x2c9234=_0x43a0d4[_0xff52d4];return _0x2c9234;}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':a112_0x4ed671(0xb9),'path':a112_0x4ed671(0xe2)}];export const menuExternalLinkUpdate={'service':a112_0x4ed671(0xbc),'command':a112_0x4ed671(0xd0),'description':a112_0x4ed671(0xc9),'risk':a112_0x4ed671(0xde),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a112_0x4ed671(0xb5),'type':a112_0x4ed671(0xe1),'required':!![],'description':a112_0x4ed671(0xf6)},{'name':a112_0x4ed671(0xcc),'type':'string','required':!![],'description':a112_0x4ed671(0xf2)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xb9322f){validateInput(_0xb9322f);},async 'dryRun'(_0x14c28c){const _0x16584d=a112_0x4ed671;validateInput(_0x14c28c);const _0x91be1f=await buildPlan(_0x14c28c,!![]);return menuDryRunResult(_0x91be1f[_0x16584d(0xe8)],{'method':_0x16584d(0xb9),'url':_0x16584d(0xe2),'body':_0x91be1f[_0x16584d(0xdc)],'description':_0x16584d(0xfa)+_0x91be1f[_0x16584d(0xdc)]['id']+'.'});},async 'execute'(_0x2f89a4){const _0x49a74e=a112_0x4ed671;validateInput(_0x2f89a4);const _0x24ba75=await buildPlan(_0x2f89a4,![]),{plan:_0x23e632,body:_0x2cf0d0,before:_0x37679c,noChanges:_0x20de84}=_0x24ba75,_0x46fcc2=_0x2cf0d0['id'];if(_0x20de84)return updateSuccess(_0x23e632,_0x24ba75[_0x49a74e(0xb4)],_0x37679c,!![],![]);await recheckMutationSnapshot(_0x2f89a4,_0x23e632,_0x49a74e(0xd2),_0x46fcc2);try{await updateMenuEntity(_0x2f89a4[_0x49a74e(0x108)],_0x2f89a4[_0x49a74e(0xda)],{'id':_0x2cf0d0['id'],'url':_0x2cf0d0[_0x49a74e(0xb5)]});}catch(_0x5c9112){const _0x240ebc=mapMenuApiError(_0x5c9112,'update\x20external\x20menu\x20URL',_0x46fcc2);if(isMenuResponseLoss(_0x5c9112)&&_0x240ebc[_0x49a74e(0xf1)]!==_0x49a74e(0xfd))return recoverAfterResponseLoss(_0x2f89a4,_0x24ba75);throw menuFailure(_0x240ebc,_0x23e632,{'stage':_0x49a74e(0xd4),'failed':{'id':_0x46fcc2},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x49a74e(0xc5),'targetId':_0x46fcc2,'lookupCommand':buildLookupCommand(_0x2f89a4[_0x49a74e(0x108)])}});}let _0x56e134,_0x243821;try{_0x56e134=await fetchMenuSnapshot(_0x2f89a4['appCode'],_0x2f89a4['cookie']),_0x243821=requireMenu(_0x56e134,_0x46fcc2),verifyUpdatedFact(_0x37679c,_0x243821,_0x2cf0d0[_0x49a74e(0xb5)]);}catch(_0x1c502c){const _0x435788=describeMenuErrorCause(_0x1c502c,_0x49a74e(0xdd),_0x46fcc2),_0x1cf01b=asVerificationError(_0x1c502c,_0x49a74e(0xc3)+_0x46fcc2+_0x49a74e(0x104));throw menuFailure(_0x1cf01b,_0x23e632,{'stage':_0x49a74e(0xf0),'succeeded':[{'id':_0x46fcc2,'updateRequested':!![]}],'failed':{'id':_0x46fcc2,'requestedStateConfirmed':![],..._0x435788},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x49a74e(0xc5),'targetId':_0x46fcc2,'lookupCommand':buildLookupCommand(_0x2f89a4['appCode'])}});}return updateSuccess(_0x23e632,_0x56e134,_0x243821,![],![]);}};function validateInput(_0x243b56){const _0x15fb8a=a112_0x4ed671;validateExactId(_0x243b56),requiredUrl(_0x243b56,_0x15fb8a(0xb5)),requiredExpectedUrl(_0x243b56),parseParentId(_0x243b56,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x5ad80d,_0x44a8f9){const _0x17a290=a112_0x4ed671;if(!hasFlag(_0x5ad80d,_0x44a8f9)||!_0x5ad80d[_0x17a290(0x105)](_0x44a8f9)[_0x17a290(0xd1)]())throw CliErrors[_0x17a290(0xe4)](_0x44a8f9);return validateExternalMenuUrl(_0x5ad80d[_0x17a290(0x105)](_0x44a8f9));}function requiredExpectedUrl(_0x7018dd){const _0x184ff5=a112_0x4ed671;if(!hasFlag(_0x7018dd,_0x184ff5(0xcc))||!_0x7018dd[_0x184ff5(0x105)]('expect-url')['trim']())throw CliErrors[_0x184ff5(0xe4)](_0x184ff5(0xcc));return _0x7018dd[_0x184ff5(0x105)](_0x184ff5(0xcc))['trim']();}async function buildPlan(_0x2ef848,_0x117ed2){const _0x12a8bd=a112_0x4ed671,_0x3af932=validateExactId(_0x2ef848),_0x518fea=requiredUrl(_0x2ef848,_0x12a8bd(0xb5)),_0x7322e4=requiredExpectedUrl(_0x2ef848),_0x176846=parseParentId(_0x2ef848,'expect-parent-id',{'required':!![]}),_0x279805=await fetchMutationSnapshot(_0x2ef848,_0x12a8bd(0xd2),_0x3af932),_0x4afcbe=requireMenu(_0x279805,_0x3af932);assertExternalLinkLeaf(_0x4afcbe);if(_0x4afcbe['parentId']!==_0x176846)throw menuError(_0x12a8bd(0xd5),_0x12a8bd(0xc2)+_0x3af932+_0x12a8bd(0xed)+formatParent(_0x176846)+_0x12a8bd(0xca)+formatParent(_0x4afcbe[_0x12a8bd(0xc7)])+'.',_0x12a8bd(0x109));const _0x155368=_0x4afcbe[_0x12a8bd(0xb5)]===_0x518fea;if(!_0x155368&&_0x4afcbe[_0x12a8bd(0xb5)]!==_0x7322e4)throw menuError(_0x12a8bd(0xd5),_0x12a8bd(0xc2)+_0x3af932+_0x12a8bd(0xff),_0x12a8bd(0x107));const _0x526306={'id':_0x3af932,'appCode':_0x2ef848[_0x12a8bd(0x108)],'url':_0x518fea},_0x3e2035={..._0x4afcbe,'url':_0x518fea};return{'body':_0x526306,'before':_0x4afcbe,'noChanges':_0x155368,'snapshot':_0x279805,'plan':mutationResult({'operation':_0x12a8bd(0xd0),'selector':{'id':_0x3af932},'before':_0x4afcbe,'after':_0x3e2035,'dryRun':_0x117ed2,'backend':[...BACKEND],'plannedActions':_0x155368?[]:[{'stage':_0x12a8bd(0xcb),'method':_0x12a8bd(0xb9),'path':_0x12a8bd(0xe2),'body':_0x526306}],'snapshotHash':_0x279805[_0x12a8bd(0xc0)],'warnings':_0x155368?[_0x12a8bd(0x103)]:[]})};}function assertExternalLinkLeaf(_0x367bc9){const _0x3dc0cf=a112_0x4ed671;if(_0x367bc9['type']!==_0x3dc0cf(0xd6)&&_0x367bc9[_0x3dc0cf(0xe3)]!==_0x3dc0cf(0xe5))throw menuError(_0x3dc0cf(0xec),_0x3dc0cf(0xc2)+_0x367bc9['id']+_0x3dc0cf(0xe6)+(_0x367bc9[_0x3dc0cf(0xe3)]||'unknown')+'\x22,\x20not\x20iframe\x20or\x20link.',_0x3dc0cf(0xe0));if(_0x367bc9[_0x3dc0cf(0xcf)]!==0x0)throw menuError('menu_external_link_not_leaf',_0x3dc0cf(0xc2)+_0x367bc9['id']+_0x3dc0cf(0xb7)+_0x367bc9[_0x3dc0cf(0xcf)]+'\x20direct\x20child\x20menu(s).',_0x3dc0cf(0xd7));if(!_0x367bc9[_0x3dc0cf(0xbd)][_0x3dc0cf(0xd1)]())throw menuError('menu_external_link_path_missing',_0x3dc0cf(0xc2)+_0x367bc9['id']+_0x3dc0cf(0xf8),_0x3dc0cf(0xce));}function verifyUpdatedFact(_0x4f830d,_0x14115f,_0x3e1601){const _0x1c5a3a=a112_0x4ed671;assertExternalLinkLeaf(_0x14115f);const _0x5d05aa=[['id',_0x14115f['id'],_0x4f830d['id']],[_0x1c5a3a(0xea),_0x14115f[_0x1c5a3a(0xea)],_0x4f830d[_0x1c5a3a(0xea)]],[_0x1c5a3a(0xe3),_0x14115f[_0x1c5a3a(0xe3)],_0x4f830d[_0x1c5a3a(0xe3)]],[_0x1c5a3a(0xbd),_0x14115f[_0x1c5a3a(0xbd)],_0x4f830d[_0x1c5a3a(0xbd)]],[_0x1c5a3a(0xc7),_0x14115f[_0x1c5a3a(0xc7)],_0x4f830d[_0x1c5a3a(0xc7)]],['sort',_0x14115f[_0x1c5a3a(0xc6)],_0x4f830d['sort']],[_0x1c5a3a(0xc1),_0x14115f[_0x1c5a3a(0xc1)],_0x4f830d[_0x1c5a3a(0xc1)]]];for(const [_0x548413,_0xbd3ed9,_0x279148]of _0x5d05aa){assertVerified(_0xbd3ed9===_0x279148,_0x1c5a3a(0xc2)+_0x4f830d['id']+'\x20'+_0x548413+_0x1c5a3a(0xf7));}assertVerified(_0x14115f['url']===_0x3e1601,_0x1c5a3a(0xc2)+_0x4f830d['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x308b0d,_0x1be7c1,_0x599d0b,_0x38e43f,_0x4f0a5c){const _0x336d39=a112_0x4ed671,_0x48dd63=_0x599d0b['id'],_0x50cef6=mutationResult({..._0x308b0d,'after':_0x599d0b,'dryRun':![],'succeeded':[{'id':_0x48dd63,'updated':!_0x38e43f,'skipped':_0x38e43f,'recovered':_0x4f0a5c}],'verification':{'checkedBy':_0x336d39(0xe7),'snapshotHash':_0x1be7c1[_0x336d39(0xc0)],'targetId':_0x48dd63,'matchesRequestedState':!![],'recovered':_0x4f0a5c}});return{'ok':!![],'message':_0x4f0a5c?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x48dd63+'.':_0x38e43f?_0x336d39(0xc2)+_0x48dd63+_0x336d39(0xd3):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x48dd63+'.','data':{..._0x50cef6,'recovered':_0x4f0a5c}};}function a112_0x43a0(){const _0x4d4ab7=['Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','requestedUrlObserved','905935pWmTdE','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','New\x20external\x20HTTPS\x20URL','\x20changed\x20during\x20the\x20URL-only\x20update.','\x20has\x20an\x20empty\x20platform\x20path.','after','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','4287474QzdUAk','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','menu_permission_denied','18BCgFeu','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','1587901TZfMWO','menu_update_recovery_required','Response\x20was\x20lost\x20and\x20menu\x20','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','str','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','appCode','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','snapshot','url','12737470uGoxfy','\x20has\x20','\x20--format\x20compress','POST','\x20could\x20not\x20be\x20verified\x20safely','14eCZoQS','menu','path','11BlIWYC','3491184LhDBpb','hash','visible','Menu\x20','Update\x20request\x20for\x20menu\x20','8nyhZVM','failed','sort','parentId','rabetbase\x20menu\x20list\x20--appcode\x20','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu',',\x20current\x20','update-external-link-url','expect-url','get','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','childrenCount','external-link-update','trim','update\x20external\x20menu\x20URL','\x20already\x20matches\x20the\x20requested\x20URL.','update','menu_state_drift','iframe','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','15644fxlAYU','readbackFailed','cookie','byId','body','verify\x20external\x20menu\x20URL\x20update','write','Run\x20','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','string','/smartapi/menu/update','type','flagMissing','link','\x20is\x20type\x20\x22','menu\x20list','plan','update-recovery','label','\x27\x5c\x27\x27','menu_external_link_type_required','\x20parent\x20changed:\x20expected\x20','12KsSCPh','43943TFUFbx','verification','code'];a112_0x43a0=function(){return _0x4d4ab7;};return a112_0x43a0();}async function recoverAfterResponseLoss(_0x505d18,_0x4c53f0){const _0x3f4cb5=a112_0x4ed671,{plan:_0x464ea6,before:_0x387642,body:_0xec5779}=_0x4c53f0;let _0x23cc84;try{_0x23cc84=await fetchMenuSnapshot(_0x505d18[_0x3f4cb5(0x108)],_0x505d18['cookie']);}catch{throw recoveryRequired(_0x464ea6,_0x505d18[_0x3f4cb5(0x108)],{'id':_0xec5779['id'],'readbackFailed':!![]});}const _0xcf8e37=_0x23cc84[_0x3f4cb5(0xdb)][_0x3f4cb5(0xcd)](_0xec5779['id']);if(!_0xcf8e37||_0xcf8e37[_0x3f4cb5(0xb5)]!==_0xec5779[_0x3f4cb5(0xb5)])throw recoveryRequired(_0x464ea6,_0x505d18[_0x3f4cb5(0x108)],{'id':_0xec5779['id'],'requestedUrlObserved':![],'after':_0xcf8e37??null});try{verifyUpdatedFact(_0x387642,_0xcf8e37,_0xec5779[_0x3f4cb5(0xb5)]);}catch(_0x344a6d){const _0x167597=asVerificationError(_0x344a6d,_0x3f4cb5(0x102)+_0xec5779['id']+_0x3f4cb5(0xba));throw menuFailure(_0x167597,_0x464ea6,{'stage':_0x3f4cb5(0xe9),'succeeded':[{'id':_0xec5779['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0xec5779['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0xcf8e37,'warnings':[_0x3f4cb5(0xf5)],'verification':{'status':'failed','targetId':_0xec5779['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x505d18[_0x3f4cb5(0x108)])}});}return updateSuccess(_0x464ea6,_0x23cc84,_0xcf8e37,![],!![]);}function recoveryRequired(_0x546fbe,_0x45409d,_0x52f66d){const _0x366d6f=a112_0x4ed671,_0x4d5a4b=menuError(_0x366d6f(0x101),_0x366d6f(0x106),_0x366d6f(0xdf)+buildLookupCommand(_0x45409d)+_0x366d6f(0xfc));return menuFailure(_0x4d5a4b,_0x546fbe,{'stage':_0x366d6f(0xe9),'failed':{'id':_0x52f66d['id'],..._0x52f66d[_0x366d6f(0xf3)]===undefined?{}:{'requestedUrlObserved':_0x52f66d[_0x366d6f(0xf3)]},..._0x52f66d[_0x366d6f(0xd9)]?{'readbackFailed':!![]}:{}},'after':_0x52f66d[_0x366d6f(0xf9)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x366d6f(0xc5),'targetId':_0x52f66d['id'],..._0x52f66d[_0x366d6f(0xf3)]===undefined?{}:{'requestedUrlObserved':_0x52f66d[_0x366d6f(0xf3)]},..._0x52f66d[_0x366d6f(0xd9)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x45409d)}});}function buildLookupCommand(_0x272db8){const _0xbd3c63=a112_0x4ed671,_0x517bb2='\x27'+_0x272db8['replace'](/'/g,_0xbd3c63(0xeb))+'\x27';return _0xbd3c63(0xc8)+_0x517bb2+_0xbd3c63(0xb8);}
|
|
1
|
+
const a112_0x11bafc=a112_0x2928;(function(_0x4799b7,_0x33e0b3){const _0x4d1ca2=a112_0x2928,_0x420838=_0x4799b7();while(!![]){try{const _0x4502b1=-parseInt(_0x4d1ca2(0x196))/0x1*(parseInt(_0x4d1ca2(0x1b2))/0x2)+-parseInt(_0x4d1ca2(0x195))/0x3+-parseInt(_0x4d1ca2(0x1b3))/0x4*(parseInt(_0x4d1ca2(0x1b1))/0x5)+-parseInt(_0x4d1ca2(0x199))/0x6+-parseInt(_0x4d1ca2(0x1b6))/0x7+parseInt(_0x4d1ca2(0x1c0))/0x8+parseInt(_0x4d1ca2(0x1a7))/0x9;if(_0x4502b1===_0x33e0b3)break;else _0x420838['push'](_0x420838['shift']());}catch(_0x4532c9){_0x420838['push'](_0x420838['shift']());}}}(a112_0x40c4,0xa9889));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';function a112_0x2928(_0x519ed3,_0x4930ee){_0x519ed3=_0x519ed3-0x180;const _0x40c444=a112_0x40c4();let _0x292833=_0x40c444[_0x519ed3];return _0x292833;}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a112_0x11bafc(0x1c9),'path':a112_0x11bafc(0x1d6)}];export const menuExternalLinkUpdate={'service':a112_0x11bafc(0x1ae),'command':a112_0x11bafc(0x18c),'description':a112_0x11bafc(0x1aa),'risk':a112_0x11bafc(0x192),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a112_0x11bafc(0x1a8),'type':'string','required':!![],'description':a112_0x11bafc(0x1cb)},{'name':a112_0x11bafc(0x1a2),'type':a112_0x11bafc(0x19b),'required':!![],'description':a112_0x11bafc(0x1a1)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x25ec24){validateInput(_0x25ec24);},async 'dryRun'(_0x238dac){const _0x1eee8b=a112_0x11bafc;validateInput(_0x238dac);const _0x4c951c=await buildPlan(_0x238dac,!![]);return menuDryRunResult(_0x4c951c['plan'],{'method':_0x1eee8b(0x1c9),'url':'/smartapi/menu/update','body':_0x4c951c[_0x1eee8b(0x180)],'description':_0x1eee8b(0x18f)+_0x4c951c[_0x1eee8b(0x180)]['id']+'.'});},async 'execute'(_0x3325a6){const _0x4c5006=a112_0x11bafc;validateInput(_0x3325a6);const _0x4efdc5=await buildPlan(_0x3325a6,![]),{plan:_0x21fc47,body:_0x4d9e98,before:_0x24f852,noChanges:_0x5c68d0}=_0x4efdc5,_0x410797=_0x4d9e98['id'];if(_0x5c68d0)return updateSuccess(_0x21fc47,_0x4efdc5[_0x4c5006(0x1ac)],_0x24f852,!![],![]);await recheckMutationSnapshot(_0x3325a6,_0x21fc47,_0x4c5006(0x186),_0x410797);try{await updateMenuEntity(_0x3325a6[_0x4c5006(0x18d)],_0x3325a6['cookie'],{'id':_0x4d9e98['id'],'url':_0x4d9e98[_0x4c5006(0x1a8)]});}catch(_0x20a95b){const _0x3e5d51=mapMenuApiError(_0x20a95b,_0x4c5006(0x186),_0x410797);if(isMenuResponseLoss(_0x20a95b)&&_0x3e5d51[_0x4c5006(0x1ba)]!==_0x4c5006(0x18e))return recoverAfterResponseLoss(_0x3325a6,_0x4efdc5);throw menuFailure(_0x3e5d51,_0x21fc47,{'stage':'update','failed':{'id':_0x410797},'warnings':[_0x4c5006(0x19c)],'verification':{'status':'failed','targetId':_0x410797,'lookupCommand':buildLookupCommand(_0x3325a6[_0x4c5006(0x18d)])}});}let _0x5d6c9e,_0x3db917;try{_0x5d6c9e=await fetchMenuSnapshot(_0x3325a6[_0x4c5006(0x18d)],_0x3325a6[_0x4c5006(0x1a3)]),_0x3db917=requireMenu(_0x5d6c9e,_0x410797),verifyUpdatedFact(_0x24f852,_0x3db917,_0x4d9e98['url']);}catch(_0x45b876){const _0x449be7=describeMenuErrorCause(_0x45b876,_0x4c5006(0x1bb),_0x410797),_0x1e8e02=asVerificationError(_0x45b876,'Update\x20request\x20for\x20menu\x20'+_0x410797+_0x4c5006(0x187));throw menuFailure(_0x1e8e02,_0x21fc47,{'stage':_0x4c5006(0x19e),'succeeded':[{'id':_0x410797,'updateRequested':!![]}],'failed':{'id':_0x410797,'requestedStateConfirmed':![],..._0x449be7},'warnings':[_0x4c5006(0x181)],'verification':{'status':_0x4c5006(0x1af),'targetId':_0x410797,'lookupCommand':buildLookupCommand(_0x3325a6[_0x4c5006(0x18d)])}});}return updateSuccess(_0x21fc47,_0x5d6c9e,_0x3db917,![],![]);}};function validateInput(_0x5115a6){validateExactId(_0x5115a6),requiredUrl(_0x5115a6,'url'),requiredExpectedUrl(_0x5115a6),parseParentId(_0x5115a6,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x38396b,_0x14d278){const _0xc31883=a112_0x11bafc;if(!hasFlag(_0x38396b,_0x14d278)||!_0x38396b['str'](_0x14d278)[_0xc31883(0x1c8)]())throw CliErrors[_0xc31883(0x1b9)](_0x14d278);return validateExternalMenuUrl(_0x38396b['str'](_0x14d278));}function requiredExpectedUrl(_0x1eb019){const _0x3b261c=a112_0x11bafc;if(!hasFlag(_0x1eb019,_0x3b261c(0x1a2))||!_0x1eb019[_0x3b261c(0x1c5)]('expect-url')[_0x3b261c(0x1c8)]())throw CliErrors[_0x3b261c(0x1b9)](_0x3b261c(0x1a2));return _0x1eb019[_0x3b261c(0x1c5)]('expect-url')[_0x3b261c(0x1c8)]();}function a112_0x40c4(){const _0x12e8e2=['35284716TbZDoe','url','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20direct\x20child\x20menu(s).','snapshot','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','menu','failed','parentId','102005YukiZz','66qsUyBE','172JSSMXd',',\x20current\x20','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','6791953JdmAoJ','readbackFailed','requestedUrlObserved','flagMissing','code','verify\x20external\x20menu\x20URL\x20update','unknown','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','iframe','\x20--format\x20compress','4284080irGnNE','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','\x20could\x20not\x20be\x20verified\x20safely','\x20URL\x20update\x20did\x20not\x20take\x20effect.','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','str','\x20changed\x20during\x20the\x20URL-only\x20update.','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','trim','POST','update-recovery','New\x20external\x20HTTPS\x20URL','replace','menu_update_recovery_required','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','menu_external_link_not_leaf','path','\x20is\x20type\x20\x22','Updated\x20external\x20URL\x20for\x20menu\x20','link','after','menu\x20list','/smartapi/menu/update','body','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','menu_external_link_type_required','expect-parent-id','menu_state_drift','\x27\x5c\x27\x27','update\x20external\x20menu\x20URL','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','sort','update-external-link-url','byId','type','external-link-update','appCode','menu_permission_denied','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','rabetbase\x20menu\x20list\x20--appcode\x20','label','write','visible','\x20has\x20','2950773cDANKd','26519JiNGEn','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','\x22,\x20not\x20iframe\x20or\x20link.','332310eyTJqr','Run\x20','string','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','verification','Menu\x20','\x20has\x20an\x20empty\x20platform\x20path.','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','expect-url','cookie','\x20parent\x20changed:\x20expected\x20','Response\x20was\x20lost\x20and\x20menu\x20','childrenCount'];a112_0x40c4=function(){return _0x12e8e2;};return a112_0x40c4();}async function buildPlan(_0x2975cc,_0x4f46d9){const _0x31d3cb=a112_0x11bafc,_0x316621=validateExactId(_0x2975cc),_0x394e55=requiredUrl(_0x2975cc,_0x31d3cb(0x1a8)),_0x44b7d7=requiredExpectedUrl(_0x2975cc),_0x2b82a6=parseParentId(_0x2975cc,_0x31d3cb(0x183),{'required':!![]}),_0x4e8dfb=await fetchMutationSnapshot(_0x2975cc,_0x31d3cb(0x186),_0x316621),_0x22a22a=requireMenu(_0x4e8dfb,_0x316621);assertExternalLinkLeaf(_0x22a22a);if(_0x22a22a[_0x31d3cb(0x1b0)]!==_0x2b82a6)throw menuError('menu_state_drift',_0x31d3cb(0x19f)+_0x316621+_0x31d3cb(0x1a4)+formatParent(_0x2b82a6)+_0x31d3cb(0x1b4)+formatParent(_0x22a22a[_0x31d3cb(0x1b0)])+'.',_0x31d3cb(0x19d));const _0x30db3a=_0x22a22a[_0x31d3cb(0x1a8)]===_0x394e55;if(!_0x30db3a&&_0x22a22a['url']!==_0x44b7d7)throw menuError(_0x31d3cb(0x184),'Menu\x20'+_0x316621+_0x31d3cb(0x197),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x4e364e={'id':_0x316621,'appCode':_0x2975cc[_0x31d3cb(0x18d)],'url':_0x394e55},_0x2bb9a4={..._0x22a22a,'url':_0x394e55};return{'body':_0x4e364e,'before':_0x22a22a,'noChanges':_0x30db3a,'snapshot':_0x4e8dfb,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x316621},'before':_0x22a22a,'after':_0x2bb9a4,'dryRun':_0x4f46d9,'backend':[...BACKEND],'plannedActions':_0x30db3a?[]:[{'stage':_0x31d3cb(0x189),'method':_0x31d3cb(0x1c9),'path':_0x31d3cb(0x1d6),'body':_0x4e364e}],'snapshotHash':_0x4e8dfb['hash'],'warnings':_0x30db3a?[_0x31d3cb(0x1ad)]:[]})};}function assertExternalLinkLeaf(_0x54d6b8){const _0x5d7400=a112_0x11bafc;if(_0x54d6b8[_0x5d7400(0x18b)]!==_0x5d7400(0x1be)&&_0x54d6b8[_0x5d7400(0x18b)]!==_0x5d7400(0x1d3))throw menuError(_0x5d7400(0x182),'Menu\x20'+_0x54d6b8['id']+_0x5d7400(0x1d1)+(_0x54d6b8[_0x5d7400(0x18b)]||_0x5d7400(0x1bc))+_0x5d7400(0x198),_0x5d7400(0x1a9));if(_0x54d6b8[_0x5d7400(0x1a6)]!==0x0)throw menuError(_0x5d7400(0x1cf),_0x5d7400(0x19f)+_0x54d6b8['id']+_0x5d7400(0x194)+_0x54d6b8[_0x5d7400(0x1a6)]+_0x5d7400(0x1ab),_0x5d7400(0x1c7));if(!_0x54d6b8['path'][_0x5d7400(0x1c8)]())throw menuError('menu_external_link_path_missing',_0x5d7400(0x19f)+_0x54d6b8['id']+_0x5d7400(0x1a0),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x21fff3,_0x26ac0d,_0x59cefe){const _0x38a31e=a112_0x11bafc;assertExternalLinkLeaf(_0x26ac0d);const _0x2e2574=[['id',_0x26ac0d['id'],_0x21fff3['id']],[_0x38a31e(0x191),_0x26ac0d[_0x38a31e(0x191)],_0x21fff3[_0x38a31e(0x191)]],[_0x38a31e(0x18b),_0x26ac0d[_0x38a31e(0x18b)],_0x21fff3[_0x38a31e(0x18b)]],[_0x38a31e(0x1d0),_0x26ac0d[_0x38a31e(0x1d0)],_0x21fff3[_0x38a31e(0x1d0)]],[_0x38a31e(0x1b0),_0x26ac0d['parentId'],_0x21fff3['parentId']],[_0x38a31e(0x188),_0x26ac0d[_0x38a31e(0x188)],_0x21fff3[_0x38a31e(0x188)]],[_0x38a31e(0x193),_0x26ac0d[_0x38a31e(0x193)],_0x21fff3[_0x38a31e(0x193)]]];for(const [_0x2a3b80,_0x1d72e2,_0x316622]of _0x2e2574){assertVerified(_0x1d72e2===_0x316622,_0x38a31e(0x19f)+_0x21fff3['id']+'\x20'+_0x2a3b80+_0x38a31e(0x1c6));}assertVerified(_0x26ac0d[_0x38a31e(0x1a8)]===_0x59cefe,'Menu\x20'+_0x21fff3['id']+_0x38a31e(0x1c3));}function updateSuccess(_0x3c6bf4,_0x3d801a,_0x33b1e9,_0x14a0b9,_0x304cda){const _0x51bd1a=a112_0x11bafc,_0x61ead3=_0x33b1e9['id'],_0x1d69b1=mutationResult({..._0x3c6bf4,'after':_0x33b1e9,'dryRun':![],'succeeded':[{'id':_0x61ead3,'updated':!_0x14a0b9,'skipped':_0x14a0b9,'recovered':_0x304cda}],'verification':{'checkedBy':_0x51bd1a(0x1d5),'snapshotHash':_0x3d801a['hash'],'targetId':_0x61ead3,'matchesRequestedState':!![],'recovered':_0x304cda}});return{'ok':!![],'message':_0x304cda?_0x51bd1a(0x1c1)+_0x61ead3+'.':_0x14a0b9?_0x51bd1a(0x19f)+_0x61ead3+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x51bd1a(0x1d2)+_0x61ead3+'.','data':{..._0x1d69b1,'recovered':_0x304cda}};}async function recoverAfterResponseLoss(_0x5ef45d,_0x2c0cfe){const _0x1e7b17=a112_0x11bafc,{plan:_0x15e215,before:_0x3023a1,body:_0x1378e8}=_0x2c0cfe;let _0x4114fb;try{_0x4114fb=await fetchMenuSnapshot(_0x5ef45d[_0x1e7b17(0x18d)],_0x5ef45d[_0x1e7b17(0x1a3)]);}catch{throw recoveryRequired(_0x15e215,_0x5ef45d[_0x1e7b17(0x18d)],{'id':_0x1378e8['id'],'readbackFailed':!![]});}const _0xaa2358=_0x4114fb[_0x1e7b17(0x18a)]['get'](_0x1378e8['id']);if(!_0xaa2358||_0xaa2358[_0x1e7b17(0x1a8)]!==_0x1378e8['url'])throw recoveryRequired(_0x15e215,_0x5ef45d[_0x1e7b17(0x18d)],{'id':_0x1378e8['id'],'requestedUrlObserved':![],'after':_0xaa2358??null});try{verifyUpdatedFact(_0x3023a1,_0xaa2358,_0x1378e8[_0x1e7b17(0x1a8)]);}catch(_0x340897){const _0x29e6ba=asVerificationError(_0x340897,_0x1e7b17(0x1a5)+_0x1378e8['id']+_0x1e7b17(0x1c2));throw menuFailure(_0x29e6ba,_0x15e215,{'stage':_0x1e7b17(0x1ca),'succeeded':[{'id':_0x1378e8['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1378e8['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0xaa2358,'warnings':[_0x1e7b17(0x1c4)],'verification':{'status':_0x1e7b17(0x1af),'targetId':_0x1378e8['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5ef45d[_0x1e7b17(0x18d)])}});}return updateSuccess(_0x15e215,_0x4114fb,_0xaa2358,![],!![]);}function recoveryRequired(_0x19898f,_0xed33d1,_0x4474bb){const _0x5535ed=a112_0x11bafc,_0x4d7721=menuError(_0x5535ed(0x1cd),_0x5535ed(0x1ce),_0x5535ed(0x19a)+buildLookupCommand(_0xed33d1)+_0x5535ed(0x1b5));return menuFailure(_0x4d7721,_0x19898f,{'stage':_0x5535ed(0x1ca),'failed':{'id':_0x4474bb['id'],..._0x4474bb[_0x5535ed(0x1b8)]===undefined?{}:{'requestedUrlObserved':_0x4474bb[_0x5535ed(0x1b8)]},..._0x4474bb[_0x5535ed(0x1b7)]?{'readbackFailed':!![]}:{}},'after':_0x4474bb[_0x5535ed(0x1d4)],'warnings':[_0x5535ed(0x1bd)],'verification':{'status':'failed','targetId':_0x4474bb['id'],..._0x4474bb[_0x5535ed(0x1b8)]===undefined?{}:{'requestedUrlObserved':_0x4474bb[_0x5535ed(0x1b8)]},..._0x4474bb[_0x5535ed(0x1b7)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0xed33d1)}});}function buildLookupCommand(_0x5edeeb){const _0x46d9a8=a112_0x11bafc,_0x17d5e0='\x27'+_0x5edeeb[_0x46d9a8(0x1cc)](/'/g,_0x46d9a8(0x185))+'\x27';return _0x46d9a8(0x190)+_0x17d5e0+_0x46d9a8(0x1bf);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a113_0x317d50=a113_0xf8ca;(function(_0x304367,_0xfe3500){const _0x351a33=a113_0xf8ca,_0x124b4b=_0x304367();while(!![]){try{const _0x36ce11=parseInt(_0x351a33(0x1c0))/0x1*(parseInt(_0x351a33(0x1cc))/0x2)+parseInt(_0x351a33(0x1a2))/0x3+-parseInt(_0x351a33(0x1c8))/0x4+-parseInt(_0x351a33(0x1b1))/0x5+parseInt(_0x351a33(0x1a0))/0x6*(parseInt(_0x351a33(0x1c3))/0x7)+-parseInt(_0x351a33(0x1cb))/0x8*(parseInt(_0x351a33(0x1bb))/0x9)+-parseInt(_0x351a33(0x1c4))/0xa;if(_0x36ce11===_0xfe3500)break;else _0x124b4b['push'](_0x124b4b['shift']());}catch(_0x4fae0a){_0x124b4b['push'](_0x124b4b['shift']());}}}(a113_0x3f2f,0x83689));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a113_0x3f2f(){const _0x4520ec=['Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','parent-id','\x20unexpectedly\x20owns\x20a\x20page.','Would\x20create\x20empty\x20folder\x20\x22','Created\x20menu\x20','537702aVzlUc','str','2138523CQYXXL','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','isSafeInteger','verification','length','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','Folder\x20','verify\x20folder\x20creation','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','failed','cookie','label','create\x20folder','\x20has\x20unexpected\x20parent\x20','folder','1746220alHicZ','\x20is\x20missing\x20from\x20menu\x20list.','Created\x20folder\x20','write','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','appCode','\x20may\x20exist\x20online\x20at\x20path\x20','\x20has\x20an\x20unexpected\x20label.','resources','create-response-validation','9tWRBQq','after','pageId','menu','trim','30406XvuxnF','get','\x20is\x20not\x20empty.','70fiJXFw','102440YwphSp','\x20has\x20an\x20unexpected\x20sort.','hash','Created\x20menu\x20folder\x20','2211536BVWRqf','rabetbase\x20menu\x20list\x20--format\x20json','create-folder','6375328HbJBHu','42KPnzei','sort','path','Menu\x20create\x20response\x20for\x20folder\x20','stringify','/smartapi/menu/create','childrenCount','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','\x20is\x20not\x20visible.','POST','parentId','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20has\x20resources.','\x22\x20with\x20a\x20platform-generated\x20path.','string','create'];a113_0x3f2f=function(){return _0x4520ec;};return a113_0x3f2f();}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a113_0xf8ca(_0x266589,_0x1cc3b8){_0x266589=_0x266589-0x18e;const _0x3f2fd6=a113_0x3f2f();let _0xf8ca4d=_0x3f2fd6[_0x266589];return _0xf8ca4d;}import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a113_0x317d50(0x193),'path':a113_0x317d50(0x18f)}];export const menuGroupCreate={'service':a113_0x317d50(0x1be),'command':'group-create','description':a113_0x317d50(0x1a3),'risk':a113_0x317d50(0x1b4),'structuredErrors':!![],'flags':[{'name':a113_0x317d50(0x1ad),'type':a113_0x317d50(0x199),'required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5ba907){validateCreateInput(_0x5ba907);},async 'dryRun'(_0x34a1a3){const _0x4bcc8d=a113_0x317d50,_0x20e134=await buildCreatePlan(_0x34a1a3,!![]),_0x39b67d=_0x20e134[_0x4bcc8d(0x1bc)];return menuDryRunResult(_0x20e134,{'method':_0x4bcc8d(0x193),'url':_0x4bcc8d(0x18f),'body':{'parentId':toApiParentId(_0x39b67d[_0x4bcc8d(0x194)]),'label':_0x39b67d[_0x4bcc8d(0x1ad)],'type':'folder','visible':!![],'sort':_0x39b67d[_0x4bcc8d(0x1cd)],'extend':{}},'description':_0x4bcc8d(0x19e)+String(_0x39b67d[_0x4bcc8d(0x1ad)])+_0x4bcc8d(0x198)});},async 'execute'(_0x4fa218){const _0x56010c=a113_0x317d50;validateCreateInput(_0x4fa218);const _0x2a3486=await buildCreatePlan(_0x4fa218,![]),_0x33464e=_0x2a3486[_0x56010c(0x1bc)];await recheckMutationSnapshot(_0x4fa218,_0x2a3486,'create\x20folder');let _0x4d13ba;try{_0x4d13ba=await createMenuEntity(_0x4fa218[_0x56010c(0x1b6)],_0x4fa218[_0x56010c(0x1ac)],{'parentId':toApiParentId(_0x33464e['parentId']),'label':String(_0x33464e[_0x56010c(0x1ad)]),'type':'folder','visible':!![],'sort':Number(_0x33464e['sort']),'extend':{}});}catch(_0x3530bf){const _0x193413=mapMenuApiError(_0x3530bf,_0x56010c(0x1ae));throw menuFailure(_0x193413,_0x2a3486,{'stage':_0x56010c(0x19a),'failed':{}});}const _0xc6858b=Number(_0x4d13ba['id']);if(!Number[_0x56010c(0x1a4)](_0xc6858b)||_0xc6858b<=0x0){const _0x131250=menuError('menu_create_response_invalid',_0x56010c(0x19b),_0x56010c(0x1aa));throw menuFailure(_0x131250,_0x2a3486,{'stage':'create-response-validation','failed':{'createdId':_0x4d13ba['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':'failed','lookupCommand':_0x56010c(0x1c9)}});}const _0x42721f=typeof _0x4d13ba[_0x56010c(0x1ce)]===_0x56010c(0x199)?_0x4d13ba[_0x56010c(0x1ce)]:'';if(!_0x42721f[_0x56010c(0x1bf)]()){const _0x309de7=menuError('menu_create_response_invalid',_0x56010c(0x1cf)+_0xc6858b+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x56010c(0x1b5));throw menuFailure(_0x309de7,_0x2a3486,{'stage':_0x56010c(0x1ba),'succeeded':[{'id':_0xc6858b,'created':!![]}],'failed':{'id':_0xc6858b,'generatedPathConfirmed':![]},'warnings':[_0x56010c(0x1a8)+_0xc6858b+_0x56010c(0x195)],'after':{..._0x33464e,'id':_0xc6858b,'path':_0x42721f},'verification':{'status':_0x56010c(0x1ab),'lookupCommand':_0x56010c(0x1c9),'targetId':_0xc6858b}});}let _0x9b92f0;try{_0x9b92f0=await fetchMenuSnapshot(_0x4fa218[_0x56010c(0x1b6)],_0x4fa218[_0x56010c(0x1ac)]);}catch(_0x279e48){const _0x5dde2a=describeMenuErrorCause(_0x279e48,_0x56010c(0x1a9),_0xc6858b),_0x47ff01=asVerificationError(_0x279e48,_0x56010c(0x1a8)+_0xc6858b+_0x56010c(0x1a7));throw menuFailure(_0x47ff01,_0x2a3486,{'stage':_0x56010c(0x1a5),'succeeded':[{'id':_0xc6858b,'created':!![],'path':_0x42721f}],'failed':{'id':_0xc6858b,'finalFactsConfirmed':![],..._0x5dde2a},'warnings':[_0x56010c(0x1a8)+_0xc6858b+_0x56010c(0x1b7)+JSON[_0x56010c(0x18e)](_0x42721f)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x33464e,'id':_0xc6858b,'path':_0x42721f},'verification':{'status':_0x56010c(0x1ab),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0xc6858b}});}const _0x391c00=_0x9b92f0['byId'][_0x56010c(0x1c1)](_0xc6858b);let _0x1a7aef;try{assertVerified(Boolean(_0x391c00),_0x56010c(0x1b3)+_0xc6858b+_0x56010c(0x1b2)),_0x1a7aef=_0x391c00,assertVerified(_0x1a7aef['type']===_0x56010c(0x1b0),_0x56010c(0x19f)+_0xc6858b+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x1a7aef[_0x56010c(0x1ad)]===_0x33464e['label'],'Created\x20folder\x20'+_0xc6858b+_0x56010c(0x1b8)),assertVerified(_0x1a7aef['path']===_0x42721f&&Boolean(_0x1a7aef[_0x56010c(0x1ce)]['trim']()),_0x56010c(0x1b3)+_0xc6858b+_0x56010c(0x196)),assertVerified(_0x1a7aef['visible']===!![],_0x56010c(0x1b3)+_0xc6858b+_0x56010c(0x192)),assertVerified(_0x1a7aef[_0x56010c(0x1b9)][_0x56010c(0x1a6)]===0x0,_0x56010c(0x1b3)+_0xc6858b+_0x56010c(0x197)),assertVerified(_0x1a7aef[_0x56010c(0x190)]===0x0,_0x56010c(0x1b3)+_0xc6858b+_0x56010c(0x1c2)),assertVerified(_0x1a7aef[_0x56010c(0x1cd)]===_0x33464e['sort'],_0x56010c(0x1b3)+_0xc6858b+_0x56010c(0x1c5)),assertVerified(_0x1a7aef[_0x56010c(0x194)]===_0x33464e['parentId'],_0x56010c(0x1b3)+_0xc6858b+_0x56010c(0x1af)+(_0x1a7aef[_0x56010c(0x194)]??'root')+'.'),assertVerified(_0x1a7aef[_0x56010c(0x1bd)]==null,'Created\x20folder\x20'+_0xc6858b+_0x56010c(0x19d));const _0x494e3d=_0x1a7aef['parentId']==null?undefined:requireFolder(_0x9b92f0,_0x1a7aef[_0x56010c(0x194)]);assertVerified(_0x1a7aef['depth']===(_0x494e3d?_0x494e3d['depth']+0x1:0x0),_0x56010c(0x1b3)+_0xc6858b+_0x56010c(0x191));}catch(_0x35684d){const _0xa1beed=describeMenuErrorCause(_0x35684d,'verify\x20folder\x20creation',_0xc6858b),_0x1ceb62=asVerificationError(_0x35684d,_0x56010c(0x1a8)+_0xc6858b+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0x1ceb62,_0x2a3486,{'stage':_0x56010c(0x1a5),'succeeded':[{'id':_0xc6858b,'created':!![],'path':_0x42721f}],'failed':{'id':_0xc6858b,'finalFactsConfirmed':![],..._0xa1beed},'warnings':[_0x56010c(0x1a8)+_0xc6858b+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x391c00??{..._0x33464e,'id':_0xc6858b,'path':_0x42721f},'verification':{'status':_0x56010c(0x1ab),'lookupCommand':_0x56010c(0x1c9),'targetId':_0xc6858b}});}const _0x5d3a5e=mutationResult({..._0x2a3486,'after':_0x1a7aef,'dryRun':![],'succeeded':[{'id':_0xc6858b,'type':_0x56010c(0x1b0),'path':_0x42721f}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x9b92f0[_0x56010c(0x1c6)],'folder':!![],'path':_0x42721f,'emptyResources':!![]}});return{'ok':!![],'data':_0x5d3a5e,'message':_0x56010c(0x1c7)+_0xc6858b+'.'};}};function validateCreateInput(_0x265c97){const _0x338f47=a113_0x317d50,_0x110da5=_0x265c97[_0x338f47(0x1a1)](_0x338f47(0x1ad))['trim']();if(!_0x110da5)throw CliErrors['flagMissing'](_0x338f47(0x1ad));parseParentId(_0x265c97,_0x338f47(0x19c)),validateSort(_0x265c97);}async function buildCreatePlan(_0x2841e8,_0x89adc2){const _0x726738=a113_0x317d50,_0x288c66=await fetchMutationSnapshot(_0x2841e8,_0x726738(0x1ae)),_0x334ef0=parseParentId(_0x2841e8,'parent-id')??null;if(_0x334ef0!=null)requireFolder(_0x288c66,_0x334ef0);const _0x6c166b=validateSort(_0x2841e8),_0x3c373b=_0x6c166b??nextSiblingSort(_0x288c66,_0x334ef0,_0x726738(0x1b0)),_0x45c223=_0x2841e8[_0x726738(0x1a1)](_0x726738(0x1ad))[_0x726738(0x1bf)]();return mutationResult({'operation':'group-create','selector':{'label':_0x45c223,'parentId':_0x334ef0},'before':null,'after':{'id':null,'parentId':_0x334ef0,'label':_0x45c223,'path':'<platform-generated>','type':_0x726738(0x1b0),'visible':!![],'sort':_0x3c373b,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x89adc2,'backend':[...BACKEND],'plannedActions':[{'stage':_0x726738(0x1ca),'method':'POST','path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x334ef0),'label':_0x45c223,'type':_0x726738(0x1b0),'visible':!![],'sort':_0x3c373b,'extend':{}}}],'snapshotHash':_0x288c66['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|
|
1
|
+
const a113_0x15c043=a113_0x2698;function a113_0x2698(_0x46223b,_0x472df4){_0x46223b=_0x46223b-0x11e;const _0x5a61df=a113_0x5a61();let _0x2698ca=_0x5a61df[_0x46223b];return _0x2698ca;}(function(_0x22925f,_0x37972f){const _0xb1177=a113_0x2698,_0x4710b4=_0x22925f();while(!![]){try{const _0x400275=-parseInt(_0xb1177(0x15a))/0x1+-parseInt(_0xb1177(0x13c))/0x2+-parseInt(_0xb1177(0x152))/0x3*(parseInt(_0xb1177(0x157))/0x4)+parseInt(_0xb1177(0x15b))/0x5*(parseInt(_0xb1177(0x125))/0x6)+parseInt(_0xb1177(0x169))/0x7+-parseInt(_0xb1177(0x14c))/0x8+parseInt(_0xb1177(0x136))/0x9*(-parseInt(_0xb1177(0x146))/0xa);if(_0x400275===_0x37972f)break;else _0x4710b4['push'](_0x4710b4['shift']());}catch(_0x52f41b){_0x4710b4['push'](_0x4710b4['shift']());}}}(a113_0x5a61,0x2e1a7));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a113_0x15c043(0x129),'path':a113_0x15c043(0x138)}];function a113_0x5a61(){const _0x2ea8cf=['visible','menu','parent-id','\x20has\x20an\x20unexpected\x20label.','197560lCokJN','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','Would\x20create\x20empty\x20folder\x20\x22','create','create-response-validation','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','55320DsemxR','Folder\x20label','group-create','Created\x20menu\x20','cookie','20mqDqYy','\x20has\x20unexpected\x20parent\x20','label','70552UzeNdd','10oRdGPc','menu\x20list','Created\x20folder\x20','\x20is\x20not\x20visible.','Created\x20menu\x20folder\x20','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','stringify','verify\x20folder\x20creation','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','\x20is\x20missing\x20from\x20menu\x20list.','sort','resources','isSafeInteger','1775508vCmdym','type','parentId','\x20has\x20resources.','hash','appCode','create\x20folder','Folder\x20','428070cGMLNA','after','failed','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','POST','childrenCount','folder','root','str','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','\x20has\x20an\x20unexpected\x20sort.','create-folder','length','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','\x20may\x20exist\x20online\x20at\x20path\x20','pageId','111753PWjJce','Menu\x20create\x20response\x20for\x20folder\x20','/smartapi/menu/create','rabetbase\x20menu\x20list\x20--format\x20json','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','trim','15262TLFLrM','\x20is\x20not\x20empty.',';\x20verify\x20it\x20before\x20retrying.','path','depth','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','verification','write','string','menu_create_response_invalid','10zPmeWW','byId'];a113_0x5a61=function(){return _0x2ea8cf;};return a113_0x5a61();}export const menuGroupCreate={'service':a113_0x15c043(0x149),'command':a113_0x15c043(0x154),'description':a113_0x15c043(0x164),'risk':a113_0x15c043(0x143),'structuredErrors':!![],'flags':[{'name':a113_0x15c043(0x159),'type':a113_0x15c043(0x144),'required':!![],'description':a113_0x15c043(0x153)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x25b0f9){validateCreateInput(_0x25b0f9);},async 'dryRun'(_0x1430b9){const _0x29cea5=a113_0x15c043,_0xc5a9c2=await buildCreatePlan(_0x1430b9,!![]),_0xffa568=_0xc5a9c2[_0x29cea5(0x126)];return menuDryRunResult(_0xc5a9c2,{'method':_0x29cea5(0x129),'url':_0x29cea5(0x138),'body':{'parentId':toApiParentId(_0xffa568['parentId']),'label':_0xffa568[_0x29cea5(0x159)],'type':_0x29cea5(0x12b),'visible':!![],'sort':_0xffa568['sort'],'extend':{}},'description':_0x29cea5(0x14e)+String(_0xffa568[_0x29cea5(0x159)])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x5880ef){const _0x37ecef=a113_0x15c043;validateCreateInput(_0x5880ef);const _0x43dd84=await buildCreatePlan(_0x5880ef,![]),_0x34b94a=_0x43dd84[_0x37ecef(0x126)];await recheckMutationSnapshot(_0x5880ef,_0x43dd84,_0x37ecef(0x123));let _0x1ff0db;try{_0x1ff0db=await createMenuEntity(_0x5880ef[_0x37ecef(0x122)],_0x5880ef[_0x37ecef(0x156)],{'parentId':toApiParentId(_0x34b94a[_0x37ecef(0x11f)]),'label':String(_0x34b94a[_0x37ecef(0x159)]),'type':_0x37ecef(0x12b),'visible':!![],'sort':Number(_0x34b94a['sort']),'extend':{}});}catch(_0x4393d1){const _0x611c65=mapMenuApiError(_0x4393d1,'create\x20folder');throw menuFailure(_0x611c65,_0x43dd84,{'stage':_0x37ecef(0x14f),'failed':{}});}const _0x5aea00=Number(_0x1ff0db['id']);if(!Number[_0x37ecef(0x168)](_0x5aea00)||_0x5aea00<=0x0){const _0x340db7=menuError(_0x37ecef(0x145),_0x37ecef(0x13a),_0x37ecef(0x141));throw menuFailure(_0x340db7,_0x43dd84,{'stage':_0x37ecef(0x150),'failed':{'createdId':_0x1ff0db['id']??null},'warnings':[_0x37ecef(0x163)],'verification':{'status':_0x37ecef(0x127),'lookupCommand':_0x37ecef(0x139)}});}const _0x29b468=typeof _0x1ff0db[_0x37ecef(0x13f)]===_0x37ecef(0x144)?_0x1ff0db['path']:'';if(!_0x29b468[_0x37ecef(0x13b)]()){const _0x2fc081=menuError(_0x37ecef(0x145),_0x37ecef(0x137)+_0x5aea00+_0x37ecef(0x133),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x2fc081,_0x43dd84,{'stage':_0x37ecef(0x150),'succeeded':[{'id':_0x5aea00,'created':!![]}],'failed':{'id':_0x5aea00,'generatedPathConfirmed':![]},'warnings':[_0x37ecef(0x124)+_0x5aea00+_0x37ecef(0x160)],'after':{..._0x34b94a,'id':_0x5aea00,'path':_0x29b468},'verification':{'status':_0x37ecef(0x127),'lookupCommand':_0x37ecef(0x139),'targetId':_0x5aea00}});}let _0x1ad31a;try{_0x1ad31a=await fetchMenuSnapshot(_0x5880ef['appCode'],_0x5880ef['cookie']);}catch(_0x4b915b){const _0x150b1c=describeMenuErrorCause(_0x4b915b,_0x37ecef(0x162),_0x5aea00),_0x20daae=asVerificationError(_0x4b915b,_0x37ecef(0x124)+_0x5aea00+_0x37ecef(0x128));throw menuFailure(_0x20daae,_0x43dd84,{'stage':_0x37ecef(0x142),'succeeded':[{'id':_0x5aea00,'created':!![],'path':_0x29b468}],'failed':{'id':_0x5aea00,'finalFactsConfirmed':![],..._0x150b1c},'warnings':[_0x37ecef(0x124)+_0x5aea00+_0x37ecef(0x134)+JSON[_0x37ecef(0x161)](_0x29b468)+_0x37ecef(0x13e)],'after':{..._0x34b94a,'id':_0x5aea00,'path':_0x29b468},'verification':{'status':_0x37ecef(0x127),'lookupCommand':_0x37ecef(0x139),'targetId':_0x5aea00}});}const _0x1f761f=_0x1ad31a[_0x37ecef(0x147)]['get'](_0x5aea00);let _0x3754fb;try{assertVerified(Boolean(_0x1f761f),_0x37ecef(0x15d)+_0x5aea00+_0x37ecef(0x165)),_0x3754fb=_0x1f761f,assertVerified(_0x3754fb[_0x37ecef(0x11e)]==='folder',_0x37ecef(0x155)+_0x5aea00+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x3754fb[_0x37ecef(0x159)]===_0x34b94a[_0x37ecef(0x159)],_0x37ecef(0x15d)+_0x5aea00+_0x37ecef(0x14b)),assertVerified(_0x3754fb[_0x37ecef(0x13f)]===_0x29b468&&Boolean(_0x3754fb[_0x37ecef(0x13f)]['trim']()),_0x37ecef(0x15d)+_0x5aea00+_0x37ecef(0x14d)),assertVerified(_0x3754fb[_0x37ecef(0x148)]===!![],_0x37ecef(0x15d)+_0x5aea00+_0x37ecef(0x15e)),assertVerified(_0x3754fb[_0x37ecef(0x167)][_0x37ecef(0x132)]===0x0,'Created\x20folder\x20'+_0x5aea00+_0x37ecef(0x120)),assertVerified(_0x3754fb[_0x37ecef(0x12a)]===0x0,_0x37ecef(0x15d)+_0x5aea00+_0x37ecef(0x13d)),assertVerified(_0x3754fb[_0x37ecef(0x166)]===_0x34b94a[_0x37ecef(0x166)],_0x37ecef(0x15d)+_0x5aea00+_0x37ecef(0x130)),assertVerified(_0x3754fb[_0x37ecef(0x11f)]===_0x34b94a[_0x37ecef(0x11f)],_0x37ecef(0x15d)+_0x5aea00+_0x37ecef(0x158)+(_0x3754fb[_0x37ecef(0x11f)]??_0x37ecef(0x12c))+'.'),assertVerified(_0x3754fb[_0x37ecef(0x135)]==null,_0x37ecef(0x15d)+_0x5aea00+'\x20unexpectedly\x20owns\x20a\x20page.');const _0xf6ada3=_0x3754fb[_0x37ecef(0x11f)]==null?undefined:requireFolder(_0x1ad31a,_0x3754fb[_0x37ecef(0x11f)]);assertVerified(_0x3754fb[_0x37ecef(0x140)]===(_0xf6ada3?_0xf6ada3[_0x37ecef(0x140)]+0x1:0x0),_0x37ecef(0x15d)+_0x5aea00+_0x37ecef(0x151));}catch(_0xcc9795){const _0x15341f=describeMenuErrorCause(_0xcc9795,_0x37ecef(0x162),_0x5aea00),_0x22cc7c=asVerificationError(_0xcc9795,_0x37ecef(0x124)+_0x5aea00+_0x37ecef(0x12f));throw menuFailure(_0x22cc7c,_0x43dd84,{'stage':_0x37ecef(0x142),'succeeded':[{'id':_0x5aea00,'created':!![],'path':_0x29b468}],'failed':{'id':_0x5aea00,'finalFactsConfirmed':![],..._0x15341f},'warnings':[_0x37ecef(0x124)+_0x5aea00+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x1f761f??{..._0x34b94a,'id':_0x5aea00,'path':_0x29b468},'verification':{'status':_0x37ecef(0x127),'lookupCommand':_0x37ecef(0x139),'targetId':_0x5aea00}});}const _0x4e45c0=mutationResult({..._0x43dd84,'after':_0x3754fb,'dryRun':![],'succeeded':[{'id':_0x5aea00,'type':'folder','path':_0x29b468}],'verification':{'checkedBy':_0x37ecef(0x15c),'snapshotHash':_0x1ad31a[_0x37ecef(0x121)],'folder':!![],'path':_0x29b468,'emptyResources':!![]}});return{'ok':!![],'data':_0x4e45c0,'message':_0x37ecef(0x15f)+_0x5aea00+'.'};}};function validateCreateInput(_0x326f45){const _0x592a02=a113_0x15c043,_0x5ef834=_0x326f45[_0x592a02(0x12d)]('label')['trim']();if(!_0x5ef834)throw CliErrors['flagMissing'](_0x592a02(0x159));parseParentId(_0x326f45,_0x592a02(0x14a)),validateSort(_0x326f45);}async function buildCreatePlan(_0x2b16c0,_0x33cc73){const _0x1c6ed9=a113_0x15c043,_0x10c6fd=await fetchMutationSnapshot(_0x2b16c0,_0x1c6ed9(0x123)),_0x58458b=parseParentId(_0x2b16c0,'parent-id')??null;if(_0x58458b!=null)requireFolder(_0x10c6fd,_0x58458b);const _0x2fe377=validateSort(_0x2b16c0),_0x217c8f=_0x2fe377??nextSiblingSort(_0x10c6fd,_0x58458b,_0x1c6ed9(0x12b)),_0x4e77fc=_0x2b16c0[_0x1c6ed9(0x12d)](_0x1c6ed9(0x159))['trim']();return mutationResult({'operation':_0x1c6ed9(0x154),'selector':{'label':_0x4e77fc,'parentId':_0x58458b},'before':null,'after':{'id':null,'parentId':_0x58458b,'label':_0x4e77fc,'path':'<platform-generated>','type':_0x1c6ed9(0x12b),'visible':!![],'sort':_0x217c8f,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x33cc73,'backend':[...BACKEND],'plannedActions':[{'stage':_0x1c6ed9(0x131),'method':_0x1c6ed9(0x129),'path':_0x1c6ed9(0x138),'body':{'parentId':toApiParentId(_0x58458b),'label':_0x4e77fc,'type':'folder','visible':!![],'sort':_0x217c8f,'extend':{}}}],'snapshotHash':_0x10c6fd[_0x1c6ed9(0x121)],'warnings':[_0x1c6ed9(0x12e)]});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a114_0x3461d5=a114_0x31cd;(function(_0x510591,_0x1f0973){const _0x5e8380=a114_0x31cd,_0x345c23=_0x510591();while(!![]){try{const _0x5ba75b=parseInt(_0x5e8380(0x86))/0x1+parseInt(_0x5e8380(0x90))/0x2*(-parseInt(_0x5e8380(0x88))/0x3)+-parseInt(_0x5e8380(0x92))/0x4*(-parseInt(_0x5e8380(0x8d))/0x5)+parseInt(_0x5e8380(0x99))/0x6+-parseInt(_0x5e8380(0xae))/0x7*(-parseInt(_0x5e8380(0x9f))/0x8)+parseInt(_0x5e8380(0xa0))/0x9*(-parseInt(_0x5e8380(0x8e))/0xa)+parseInt(_0x5e8380(0xaa))/0xb;if(_0x5ba75b===_0x1f0973)break;else _0x345c23['push'](_0x345c23['shift']());}catch(_0xdb4b2e){_0x345c23['push'](_0x345c23['shift']());}}}(a114_0x29e7,0xafa23));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a114_0x29e7(){const _0x28016f=['menu\x20list','unknown','sort','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','11032pDGfSX','22689uKttNS','\x20is\x20type\x20\x22','validation','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','menu_not_folder','type','trim','POST','parent-id','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','12466531KInKUr','selector','menu','update\x20folder','2219WlWabH','Folder\x20','Updated\x20folder\x20','verification','\x20already\x20matches\x20the\x20requested\x20state.','verify\x20folder\x20update','label','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','\x22,\x20not\x20folder.','\x20is\x20no\x20longer\x20type\x20folder.','group-update','Would\x20update\x20folder\x20','681534IfyACO','--label\x20cannot\x20be\x20empty.','1370826xhCeGI','str','\x20label\x20update\x20did\x20not\x20take\x20effect.','cookie','\x20sort\x20update\x20did\x20not\x20take\x20effect.','15KJlXYa','5620PCRpNM','failed','2vNihOq','Update\x20request\x20for\x20folder\x20','201676eHJxzj','appCode','folder','parentId','New\x20folder\x20label','rabetbase\x20menu\x20list\x20--format\x20json','Menu\x20','1139304xALbSH','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state'];a114_0x29e7=function(){return _0x28016f;};return a114_0x29e7();}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':a114_0x3461d5(0xa7),'path':'/smartapi/menu/update'}];export const menuGroupUpdate={'service':a114_0x3461d5(0xac),'command':a114_0x3461d5(0x84),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':'write','structuredErrors':!![],'rejectedFlags':[{'name':a114_0x3461d5(0xa8),'message':a114_0x3461d5(0xa3),'hint':a114_0x3461d5(0xa9)}],'flags':[MENU_ID_FLAG,{'name':'label','type':'string','description':a114_0x3461d5(0x96)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5a0c12){validateUpdateInput(_0x5a0c12);},async 'dryRun'(_0x50c746){const _0x45e3ab=a114_0x3461d5;validateUpdateInput(_0x50c746);const {plan:_0x26eeb9,patch:_0x58a59d}=await buildUpdatePlan(_0x50c746,!![]);return menuDryRunResult(_0x26eeb9,{'method':'POST','url':'/smartapi/menu/update','body':_0x58a59d,'description':_0x45e3ab(0x85)+_0x26eeb9[_0x45e3ab(0xab)]['id']+'.'});},async 'execute'(_0x2c3b4f){const _0x74add=a114_0x3461d5;validateUpdateInput(_0x2c3b4f);const {plan:_0x29723f,patch:_0x35f67f,noChanges:_0x766c97}=await buildUpdatePlan(_0x2c3b4f,![]),_0x4ce58c=Number(_0x29723f[_0x74add(0xab)]['id']),_0x1931fe=await recheckMutationSnapshot(_0x2c3b4f,_0x29723f,_0x74add(0xad),_0x4ce58c);if(!_0x766c97)try{await updateMenuEntity(_0x2c3b4f[_0x74add(0x93)],_0x2c3b4f['cookie'],_0x35f67f);}catch(_0x46d0e9){const _0x3d568e=mapMenuApiError(_0x46d0e9,_0x74add(0xad),_0x4ce58c);throw menuFailure(_0x3d568e,_0x29723f,{'stage':'update','failed':{'id':_0x4ce58c}});}let _0x54285a=_0x1931fe,_0x34a55c;try{!_0x766c97&&(_0x54285a=await fetchMenuSnapshot(_0x2c3b4f[_0x74add(0x93)],_0x2c3b4f[_0x74add(0x8b)])),_0x34a55c=requireMenu(_0x54285a,_0x4ce58c),verifyPatch(_0x34a55c,_0x35f67f),_0x34a55c[_0x74add(0x95)]!=null&&requireFolder(_0x54285a,_0x34a55c[_0x74add(0x95)]);}catch(_0x20b843){const _0x26e88e=describeMenuErrorCause(_0x20b843,_0x74add(0xb3),_0x4ce58c),_0x32e246=asVerificationError(_0x20b843,_0x74add(0x91)+_0x4ce58c+_0x74add(0x9a));throw menuFailure(_0x32e246,_0x29723f,{'stage':_0x74add(0xb1),'succeeded':[{'id':_0x4ce58c,'updateRequested':!_0x766c97,'skipped':_0x766c97}],'failed':{'id':_0x4ce58c,'requestedStateConfirmed':![],..._0x26e88e},'warnings':[_0x74add(0x81)],'verification':{'status':_0x74add(0x8f),'lookupCommand':_0x74add(0x97),'targetId':_0x4ce58c}});}const _0x4b5ab9=mutationResult({..._0x29723f,'after':_0x34a55c,'dryRun':![],'succeeded':[{'id':_0x4ce58c,'updated':!_0x766c97,'skipped':_0x766c97}],'verification':{'checkedBy':_0x74add(0x9b),'snapshotHash':_0x54285a['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x4b5ab9,'message':_0x766c97?_0x74add(0xaf)+_0x4ce58c+_0x74add(0xb2):_0x74add(0xb0)+_0x4ce58c+'.'};}};function validateUpdateInput(_0x21e544){const _0x19b612=a114_0x3461d5;validateExactId(_0x21e544);if(hasFlag(_0x21e544,_0x19b612(0xa8)))throw CliErrors[_0x19b612(0xa2)](_0x19b612(0xa3),_0x19b612(0xa9));if(!hasFlag(_0x21e544,_0x19b612(0x7f))&&!hasFlag(_0x21e544,_0x19b612(0x9d)))throw CliErrors[_0x19b612(0xa2)](_0x19b612(0x80));if(hasFlag(_0x21e544,_0x19b612(0x7f))&&!_0x21e544[_0x19b612(0x89)]('label')[_0x19b612(0xa6)]())throw CliErrors['validation'](_0x19b612(0x87));validateSort(_0x21e544);}function a114_0x31cd(_0x532be9,_0x5d447c){_0x532be9=_0x532be9-0x7f;const _0x29e70a=a114_0x29e7();let _0x31cd26=_0x29e70a[_0x532be9];return _0x31cd26;}async function buildUpdatePlan(_0x1b86de,_0x54e910){const _0x26b293=a114_0x3461d5,_0x102c12=validateExactId(_0x1b86de),_0x26fcb6=await fetchMutationSnapshot(_0x1b86de,_0x26b293(0xad),_0x102c12),_0x318712=requireMenu(_0x26fcb6,_0x102c12);if(_0x318712[_0x26b293(0xa5)]!==_0x26b293(0x94))throw menuError(_0x26b293(0xa4),_0x26b293(0x98)+_0x102c12+_0x26b293(0xa1)+(_0x318712[_0x26b293(0xa5)]||_0x26b293(0x9c))+_0x26b293(0x82),_0x26b293(0x9e));assertExpectedState(_0x1b86de,_0x318712);const _0x453c71={'id':_0x102c12},_0x207a71={..._0x318712};if(hasFlag(_0x1b86de,_0x26b293(0x7f))){const _0x4e3b31=_0x1b86de[_0x26b293(0x89)](_0x26b293(0x7f))[_0x26b293(0xa6)]();_0x453c71['label']=_0x4e3b31,_0x207a71[_0x26b293(0x7f)]=_0x4e3b31;}if(hasFlag(_0x1b86de,_0x26b293(0x9d))){const _0x129138=validateSort(_0x1b86de);_0x453c71['sort']=_0x129138,_0x207a71[_0x26b293(0x9d)]=_0x129138;}const _0x12687d=sameRequestedState(_0x318712,_0x207a71),_0x3c30d0=_0x12687d?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x453c71,'noChanges':_0x12687d,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x102c12},'before':_0x318712,'after':_0x207a71,'dryRun':_0x54e910,'backend':[...BACKEND],'snapshotHash':_0x26fcb6['hash'],'warnings':_0x3c30d0})};}function sameRequestedState(_0x5c7214,_0x32a3fb){const _0x115884=a114_0x3461d5;return _0x5c7214[_0x115884(0x7f)]===_0x32a3fb['label']&&_0x5c7214[_0x115884(0x9d)]===_0x32a3fb[_0x115884(0x9d)];}function verifyPatch(_0x1f3f5c,_0x26844f){const _0x336949=a114_0x3461d5;assertVerified(_0x1f3f5c['type']==='folder',_0x336949(0x98)+_0x1f3f5c['id']+_0x336949(0x83)),_0x26844f[_0x336949(0x7f)]!==undefined&&assertVerified(_0x1f3f5c[_0x336949(0x7f)]===_0x26844f[_0x336949(0x7f)],'Folder\x20'+_0x1f3f5c['id']+_0x336949(0x8a)),_0x26844f[_0x336949(0x9d)]!==undefined&&assertVerified(_0x1f3f5c[_0x336949(0x9d)]===_0x26844f['sort'],_0x336949(0xaf)+_0x1f3f5c['id']+_0x336949(0x8c));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x596450,_0x1e8595){const _0xfec5d3=a115_0x217c,_0x32bcb4=_0x596450();while(!![]){try{const _0x5473e5=parseInt(_0xfec5d3(0xb9))/0x1+parseInt(_0xfec5d3(0xbb))/0x2*(parseInt(_0xfec5d3(0xbc))/0x3)+-parseInt(_0xfec5d3(0xbf))/0x4+-parseInt(_0xfec5d3(0xbe))/0x5*(parseInt(_0xfec5d3(0xba))/0x6)+-parseInt(_0xfec5d3(0xc1))/0x7+-parseInt(_0xfec5d3(0xc0))/0x8*(-parseInt(_0xfec5d3(0xbd))/0x9)+parseInt(_0xfec5d3(0xb8))/0xa;if(_0x5473e5===_0x1e8595)break;else _0x32bcb4['push'](_0x32bcb4['shift']());}catch(_0x265c4d){_0x32bcb4['push'](_0x32bcb4['shift']());}}}(a115_0x2053,0xc03e7));function a115_0x217c(_0x519293,_0x4c37ba){_0x519293=_0x519293-0xb8;const _0x205354=a115_0x2053();let _0x217cb9=_0x205354[_0x519293];return _0x217cb9;}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';function a115_0x2053(){const _0x1283cc=['5286730GswjLF','123007ibRAqE','66NpaPWe','1646QHtUwv','5271WSwWMK','45Avstjj','152290nmklZJ','1262816dHgAQv','105848CTuTUp','5079711PEptol'];a115_0x2053=function(){return _0x1283cc;};return a115_0x2053();}import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a116_0x40d0fe=a116_0xc111;(function(_0x22802e,_0x5ee743){const _0x20dc4f=a116_0xc111,_0x216f5a=_0x22802e();while(!![]){try{const _0x31cc87=-parseInt(_0x20dc4f(0x171))/0x1+-parseInt(_0x20dc4f(0x176))/0x2+parseInt(_0x20dc4f(0x165))/0x3*(parseInt(_0x20dc4f(0x164))/0x4)+-parseInt(_0x20dc4f(0x170))/0x5*(parseInt(_0x20dc4f(0x166))/0x6)+-parseInt(_0x20dc4f(0x163))/0x7+parseInt(_0x20dc4f(0x16a))/0x8*(parseInt(_0x20dc4f(0x16f))/0x9)+parseInt(_0x20dc4f(0x173))/0xa;if(_0x31cc87===_0x5ee743)break;else _0x216f5a['push'](_0x216f5a['shift']());}catch(_0x36a1b7){_0x216f5a['push'](_0x216f5a['shift']());}}}(a116_0x2496,0x9e596));function a116_0x2496(){const _0x54f86a=['52112tyBBeC','219ZsfUyw','6MmPmsc','hash','cookie','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','8hLZQia','list','boolean','verbose','total','2527173gCLRMF','6068955ePhUxQ','882754omHQtp','\x20menu(s)','32255900eaHHXe','No\x20menus\x20found.','Found\x20','1992426ekgtpN','menus','appCode','bool','5012525pWfhqG'];a116_0x2496=function(){return _0x54f86a;};return a116_0x2496();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a116_0xc111(_0x55dbc4,_0x27343a){_0x55dbc4=_0x55dbc4-0x160;const _0x2496b0=a116_0x2496();let _0xc111d2=_0x2496b0[_0x55dbc4];return _0xc111d2;}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':'menu','command':a116_0x40d0fe(0x16b),'description':a116_0x40d0fe(0x169),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a116_0x40d0fe(0x16d),'type':a116_0x40d0fe(0x16c),'description':'Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing'}],async 'execute'(_0x3fa248){const _0x4ec8a3=a116_0x40d0fe,_0x45d0ea=_0x3fa248[_0x4ec8a3(0x162)](_0x4ec8a3(0x16d)),_0x3f1011=await fetchMenuSnapshot(_0x3fa248[_0x4ec8a3(0x161)],_0x3fa248[_0x4ec8a3(0x168)],{'verbose':_0x45d0ea});return{'ok':!![],'data':{'total':_0x3f1011[_0x4ec8a3(0x16e)],'snapshotHash':_0x3f1011[_0x4ec8a3(0x167)],'menus':_0x3f1011[_0x4ec8a3(0x160)]['map'](toMenuListItem)},'message':_0x3f1011[_0x4ec8a3(0x16e)]===0x0?_0x4ec8a3(0x174):_0x4ec8a3(0x175)+_0x3f1011[_0x4ec8a3(0x16e)]+_0x4ec8a3(0x172)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a117_0x3aa3d6=a117_0x30ea;(function(_0x36f6cf,_0x50049a){const _0x17e11f=a117_0x30ea,_0x466f44=_0x36f6cf();while(!![]){try{const _0x478588=parseInt(_0x17e11f(0x9d))/0x1+parseInt(_0x17e11f(0x8f))/0x2*(-parseInt(_0x17e11f(0x88))/0x3)+parseInt(_0x17e11f(0x86))/0x4*(-parseInt(_0x17e11f(0xac))/0x5)+parseInt(_0x17e11f(0xa8))/0x6+-parseInt(_0x17e11f(0x8d))/0x7+-parseInt(_0x17e11f(0xa2))/0x8*(-parseInt(_0x17e11f(0xad))/0x9)+parseInt(_0x17e11f(0x8c))/0xa*(parseInt(_0x17e11f(0x82))/0xb);if(_0x478588===_0x50049a)break;else _0x466f44['push'](_0x466f44['shift']());}catch(_0x47944e){_0x466f44['push'](_0x466f44['shift']());}}}(a117_0x254b,0x4a04b));function a117_0x30ea(_0x44b762,_0x238637){_0x44b762=_0x44b762-0x7b;const _0x254b8a=a117_0x254b();let _0x30eab4=_0x254b8a[_0x44b762];return _0x30eab4;}function a117_0x254b(){const _0x589823=['Move\x20request\x20for\x20menu\x20','447588MkZOmi','POST','Menu\x20','sort','update','1121576aPOtpZ','write','appCode','childrenCount','Would\x20move\x20menu\x20','parent-id','3225360EvFzaR','hash','move\x20menu','after','2301515XxxySU','36alcUXo','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','failed','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','Moved\x20menu\x20','/smartapi/menu/update',',\x20current\x20','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','1331033aZERtr','type','\x20is\x20now\x20type\x20folder.','\x20is\x20no\x20longer\x20a\x20leaf.','4eWWKQy','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','813fuQAwC','menu_state_drift','verify\x20menu\x20move','menu\x20list','20GXxoWW','4073419mcHmCB','move','3266oKUKGt','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','cookie','menu','expect-parent-id','verification','rabetbase\x20menu\x20list\x20--format\x20compress','\x20parent\x20changed:\x20expected\x20','folder','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','parentId','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.'];a117_0x254b=function(){return _0x589823;};return a117_0x254b();}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':a117_0x3aa3d6(0x9e),'path':'/smartapi/menu/update'}];export const menuMove={'service':a117_0x3aa3d6(0x92),'command':a117_0x3aa3d6(0x8e),'description':a117_0x3aa3d6(0x7d),'risk':a117_0x3aa3d6(0xa3),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1abeff){validateMoveInput(_0x1abeff);},async 'dryRun'(_0x2d764e){const _0xc2b78a=a117_0x3aa3d6,{plan:_0x2b7bf2,patch:_0x2e5279}=await buildMovePlan(_0x2d764e,!![]);return menuDryRunResult(_0x2b7bf2,{'method':_0xc2b78a(0x9e),'url':'/smartapi/menu/update','body':{..._0x2e5279,'appCode':_0x2d764e[_0xc2b78a(0xa4)]},'description':_0xc2b78a(0xa6)+_0x2e5279['id']+'.'});},async 'execute'(_0x56c04e){const _0x1e5eff=a117_0x3aa3d6;validateMoveInput(_0x56c04e);const {plan:_0x5c660d,patch:_0xc5821c,noChanges:_0x518c2d,snapshot:_0x435b29}=await buildMovePlan(_0x56c04e,![]),_0x36f0f0=_0xc5821c['id'];if(!_0x518c2d)try{await updateMenuEntity(_0x56c04e['appCode'],_0x56c04e[_0x1e5eff(0x91)],_0xc5821c);}catch(_0x457509){const _0x59c4ca=mapMenuApiError(_0x457509,_0x1e5eff(0x8e),_0x36f0f0);throw menuFailure(_0x59c4ca,_0x5c660d,{'stage':_0x1e5eff(0xa1),'failed':{'id':_0x36f0f0},'warnings':[_0x1e5eff(0x7b)],'verification':{'status':_0x1e5eff(0x7c),'targetId':_0x36f0f0,'lookupCommand':_0x1e5eff(0x95)}});}let _0x5bdf90,_0x1a967c;try{_0x5bdf90=_0x518c2d?_0x435b29:await fetchMenuSnapshot(_0x56c04e['appCode'],_0x56c04e['cookie']),_0x1a967c=requireMenu(_0x5bdf90,_0x36f0f0),verifyMove(_0x1a967c,_0x5c660d[_0x1e5eff(0xab)]),_0x1a967c[_0x1e5eff(0x9a)]!==null&&requireFolder(_0x5bdf90,_0x1a967c['parentId']);}catch(_0x318831){const _0x43f6b2=describeMenuErrorCause(_0x318831,_0x1e5eff(0x8a),_0x36f0f0),_0x481798=asVerificationError(_0x318831,_0x1e5eff(0x9c)+_0x36f0f0+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x481798,_0x5c660d,{'stage':_0x1e5eff(0x94),'succeeded':[{'id':_0x36f0f0,'updateRequested':!_0x518c2d,'skipped':_0x518c2d}],'failed':{'id':_0x36f0f0,'requestedStateConfirmed':![],..._0x43f6b2},'warnings':[_0x1e5eff(0x81)],'verification':{'status':_0x1e5eff(0x7c),'targetId':_0x36f0f0,'lookupCommand':_0x1e5eff(0x95)}});}const _0x3678db=mutationResult({..._0x5c660d,'after':_0x1a967c,'dryRun':![],'succeeded':[{'id':_0x36f0f0,'updated':!_0x518c2d,'skipped':_0x518c2d}],'verification':{'checkedBy':_0x1e5eff(0x8b),'snapshotHash':_0x5bdf90[_0x1e5eff(0xa9)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x3678db,'message':_0x518c2d?_0x1e5eff(0x9f)+_0x36f0f0+_0x1e5eff(0x9b):_0x1e5eff(0x7e)+_0x36f0f0+'.'};}};function validateMoveInput(_0x44cf12){const _0x33cc46=a117_0x3aa3d6;validateExactId(_0x44cf12),parseParentId(_0x44cf12,_0x33cc46(0xa7),{'required':!![]}),parseParentId(_0x44cf12,_0x33cc46(0x93),{'required':!![]}),validateSort(_0x44cf12);}async function buildMovePlan(_0x4aca81,_0x29ae3a){const _0x2db31c=a117_0x3aa3d6,_0x50c729=validateExactId(_0x4aca81),_0x4bd1d9=parseParentId(_0x4aca81,'parent-id',{'required':!![]}),_0x44e8b=parseParentId(_0x4aca81,_0x2db31c(0x93),{'required':!![]}),_0x95e22b=validateSort(_0x4aca81),_0x741510=await fetchMutationSnapshot(_0x4aca81,_0x2db31c(0xaa),_0x50c729),_0x440970=requireMenu(_0x741510,_0x50c729);if(_0x440970[_0x2db31c(0x83)]==='folder'||_0x440970[_0x2db31c(0xa5)]!==0x0)throw menuError('menu_move_source_not_leaf',_0x2db31c(0x9f)+_0x50c729+_0x2db31c(0x98),_0x2db31c(0x87));if(_0x440970[_0x2db31c(0x9a)]!==_0x44e8b)throw menuError(_0x2db31c(0x89),_0x2db31c(0x9f)+_0x50c729+_0x2db31c(0x96)+formatParent(_0x44e8b)+_0x2db31c(0x80)+formatParent(_0x440970[_0x2db31c(0x9a)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');_0x4bd1d9!==null&&requireFolder(_0x741510,_0x4bd1d9);const _0x1ba170=_0x95e22b??(_0x440970[_0x2db31c(0x9a)]===_0x4bd1d9?_0x440970[_0x2db31c(0xa0)]??0x0:nextSiblingSort(_0x741510,_0x4bd1d9,_0x2db31c(0x92))),_0x133e78={..._0x440970,'parentId':_0x4bd1d9,'sort':_0x1ba170},_0x5ddf41={'id':_0x50c729,'parentId':toApiParentId(_0x4bd1d9),'sort':_0x1ba170},_0x231653=_0x440970[_0x2db31c(0x9a)]===_0x4bd1d9&&_0x440970[_0x2db31c(0xa0)]===_0x1ba170;return{'patch':_0x5ddf41,'noChanges':_0x231653,'snapshot':_0x741510,'plan':mutationResult({'operation':_0x2db31c(0x8e),'selector':{'id':_0x50c729,'parentId':_0x4bd1d9},'before':_0x440970,'after':_0x133e78,'dryRun':_0x29ae3a,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':_0x2db31c(0x9e),'path':_0x2db31c(0x7f),'body':{..._0x5ddf41,'appCode':_0x4aca81['appCode']}}],'snapshotHash':_0x741510[_0x2db31c(0xa9)],'warnings':_0x231653?['Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.']:[]})};}function verifyMove(_0x3c779c,_0x458165){const _0x2c2c3f=a117_0x3aa3d6;assertVerified(_0x3c779c[_0x2c2c3f(0x83)]!==_0x2c2c3f(0x97),_0x2c2c3f(0x9f)+_0x3c779c['id']+_0x2c2c3f(0x84)),assertVerified(_0x3c779c[_0x2c2c3f(0xa5)]===0x0,_0x2c2c3f(0x9f)+_0x3c779c['id']+_0x2c2c3f(0x85)),assertVerified(_0x3c779c[_0x2c2c3f(0x9a)]===_0x458165[_0x2c2c3f(0x9a)],_0x2c2c3f(0x9f)+_0x3c779c['id']+_0x2c2c3f(0x90)),assertVerified(_0x3c779c[_0x2c2c3f(0xa0)]===_0x458165['sort'],_0x2c2c3f(0x9f)+_0x3c779c['id']+_0x2c2c3f(0x99));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a118_0x3c94c6=a118_0x5a50;(function(_0x42ad6e,_0x2ccba7){const _0xb63bef=a118_0x5a50,_0x3d7142=_0x42ad6e();while(!![]){try{const _0xeacd5c=parseInt(_0xb63bef(0x1f4))/0x1+parseInt(_0xb63bef(0x1dd))/0x2*(parseInt(_0xb63bef(0x1b9))/0x3)+-parseInt(_0xb63bef(0x20a))/0x4*(-parseInt(_0xb63bef(0x1f8))/0x5)+parseInt(_0xb63bef(0x1cc))/0x6*(parseInt(_0xb63bef(0x1d5))/0x7)+parseInt(_0xb63bef(0x203))/0x8*(parseInt(_0xb63bef(0x1f9))/0x9)+-parseInt(_0xb63bef(0x1c3))/0xa*(parseInt(_0xb63bef(0x200))/0xb)+parseInt(_0xb63bef(0x1d9))/0xc*(-parseInt(_0xb63bef(0x209))/0xd);if(_0xeacd5c===_0x2ccba7)break;else _0x3d7142['push'](_0x3d7142['shift']());}catch(_0x5a68b3){_0x3d7142['push'](_0x3d7142['shift']());}}}(a118_0x5e54,0xac9b3));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';function a118_0x5a50(_0x2af660,_0x538bf){_0x2af660=_0x2af660-0x1b4;const _0x5e542f=a118_0x5e54();let _0x5a5069=_0x5e542f[_0x2af660];return _0x5a5069;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a118_0x3c94c6(0x1bf)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a118_0x3c94c6(0x1d7),'command':a118_0x3c94c6(0x1d3),'description':a118_0x3c94c6(0x1e6),'risk':'write','structuredErrors':!![],'flags':[{'name':a118_0x3c94c6(0x1d6),'type':a118_0x3c94c6(0x1c4),'required':!![],'description':a118_0x3c94c6(0x1f5)},{'name':a118_0x3c94c6(0x1ca),'type':a118_0x3c94c6(0x1c4),'required':!![],'description':a118_0x3c94c6(0x1b7)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x15c5cf){validateRegroupInput(_0x15c5cf);},async 'dryRun'(_0x8f0169){const _0x19cfc6=a118_0x3c94c6;validateRegroupInput(_0x8f0169);const _0x201564=await buildRegroupPlan(_0x8f0169,!![]);return menuDryRunResult(_0x201564[_0x19cfc6(0x1db)],{'method':_0x19cfc6(0x1ff),'url':'/smartapi/menu/regroup','body':_0x201564['input'],'description':_0x19cfc6(0x1fc)+JSON[_0x19cfc6(0x1ec)](_0x201564[_0x19cfc6(0x1d6)])+_0x19cfc6(0x1c6)+_0x201564[_0x19cfc6(0x1fb)][_0x19cfc6(0x1c7)](',\x20')+';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.'});},async 'execute'(_0x57df59){const _0x368a64=a118_0x3c94c6;validateRegroupInput(_0x57df59);const _0xb2d2a7=await buildRegroupPlan(_0x57df59,![]);await recheckMutationSnapshot(_0x57df59,_0xb2d2a7[_0x368a64(0x1db)],_0x368a64(0x202));const _0x5c5d9e=buildMenuLookupCommand(_0x57df59['appCode']);let _0x360927,_0x2b9054;try{_0x360927=await startMenuRegroup(_0x57df59[_0x368a64(0x208)],_0xb2d2a7['input']),_0x2b9054=normalizeAsyncTask(_0x360927);}catch(_0x42efe2){const _0x4a10ce=await inspectRegroupAfterFailure(_0x57df59[_0x368a64(0x1de)],_0x57df59[_0x368a64(0x208)],_0xb2d2a7['label'],_0xb2d2a7[_0x368a64(0x1fb)]),_0x10cc6d=typeof _0x360927?.[_0x368a64(0x1cd)]===_0x368a64(0x1c4)&&_0x360927[_0x368a64(0x1cd)]['trim']()?_0x360927[_0x368a64(0x1cd)][_0x368a64(0x1f6)]():null,_0x47704d=_0x10cc6d?{'command':buildAsyncTaskStatusCommand(_0x10cc6d,_0x57df59[_0x368a64(0x1de)])}:null,_0x1a7d8a=mapMenuApiError(_0x42efe2,_0x368a64(0x20e));throw menuFailure(_0x1a7d8a,_0xb2d2a7[_0x368a64(0x1db)],{'stage':'regroup-submit','failed':{'menuIds':_0xb2d2a7[_0x368a64(0x1fb)],'taskId':_0x10cc6d,'groupingApplied':_0x4a10ce['applied']?!![]:_0x368a64(0x213)},'after':_0x4a10ce[_0x368a64(0x1e5)]??null,'warnings':[_0x368a64(0x1dc),..._0x4a10ce[_0x368a64(0x20f)]?[_0x368a64(0x1c9)+_0x4a10ce[_0x368a64(0x20f)]]:[],..._0x10cc6d?[_0x368a64(0x1b6)]:[]],'verification':{'status':_0x368a64(0x1b8),'groupingApplied':_0x4a10ce[_0x368a64(0x1e5)]?!![]:_0x368a64(0x213),'taskId':_0x10cc6d,'query':_0x47704d,'lookupCommand':_0x5c5d9e}});}const _0x44b291=buildAsyncTaskStatusCommand(_0x2b9054[_0x368a64(0x1cd)],_0x57df59['appCode']);let _0x885835=null,_0x5ac2e3=null,_0x2cce9d=null;try{_0x885835=await fetchMenuSnapshot(_0x57df59[_0x368a64(0x1de)],_0x57df59[_0x368a64(0x208)]),_0x5ac2e3=findAppliedRegroup(_0x885835,_0xb2d2a7[_0x368a64(0x1d6)],_0xb2d2a7[_0x368a64(0x1fb)]);}catch(_0x566a55){_0x2cce9d=_0x566a55 instanceof Error?_0x566a55[_0x368a64(0x1da)]:String(_0x566a55);}const _0xb01994=mutationResult({..._0xb2d2a7['plan'],'after':_0x5ac2e3??null,'dryRun':![],'succeeded':[{'groupId':_0x5ac2e3?.['group']['id']??null,'menuIds':_0xb2d2a7['menuIds'],'taskId':_0x2b9054['taskId'],'status':_0x2b9054['status'],'groupingApplied':_0x5ac2e3?!![]:_0x368a64(0x213)}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x885835?.[_0x368a64(0x205)]??null,'groupId':_0x5ac2e3?.['group']['id']??null,'groupingApplied':_0x5ac2e3?!![]:_0x368a64(0x213),'readbackError':_0x2cce9d,'lookupCommand':_0x5c5d9e},'warnings':[..._0xb2d2a7['plan'][_0x368a64(0x20c)],...!_0x5ac2e3?[unconfirmedRegroupWarning(_0x2b9054)]:[],..._0x2cce9d?[_0x368a64(0x1e8)+_0x2cce9d]:[]]}),_0x1ce8f5=_0x2b9054[_0x368a64(0x1c0)]==='SUCCESS'&&!_0x5ac2e3?'Regroup\x20task\x20'+_0x2b9054[_0x368a64(0x1cd)]+_0x368a64(0x1be):_0x368a64(0x1fa)+asyncTaskMessage(_0x2b9054);return{'ok':!![],'message':_0x1ce8f5,'data':{..._0xb01994,'task':_0x2b9054,'query':_0x2b9054[_0x368a64(0x1c2)]?null:{'command':_0x44b291}}};}};function validateRegroupInput(_0x313c8b){const _0x1b22b6=a118_0x3c94c6;if(!_0x313c8b[_0x1b22b6(0x212)](_0x1b22b6(0x1d6))[_0x1b22b6(0x1f6)]())throw CliErrors[_0x1b22b6(0x207)](_0x1b22b6(0x1d6));parseMenuIds(_0x313c8b['str'](_0x1b22b6(0x1ca)));}function parseMenuIds(_0x440e70){const _0x1d15ba=a118_0x3c94c6,_0x3414b3=_0x440e70['split'](',')[_0x1d15ba(0x1e1)](_0x58b564=>_0x58b564[_0x1d15ba(0x1f6)]());if(_0x3414b3[_0x1d15ba(0x1ba)]===0x0||_0x3414b3[_0x1d15ba(0x1f0)](_0x28e912=>!_0x28e912))throw CliErrors['validation'](_0x1d15ba(0x1cb));const _0x1a778b=_0x3414b3[_0x1d15ba(0x1e1)](_0x30e3da=>{const _0x11f5fd=_0x1d15ba;if(!/^\d+$/[_0x11f5fd(0x1f2)](_0x30e3da))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x37fdfb=Number(_0x30e3da);if(!Number['isSafeInteger'](_0x37fdfb)||_0x37fdfb<=0x0)throw CliErrors[_0x11f5fd(0x1bc)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x37fdfb;});if(new Set(_0x1a778b)[_0x1d15ba(0x1f3)]!==_0x1a778b[_0x1d15ba(0x1ba)])throw CliErrors['validation'](_0x1d15ba(0x1c5));if(_0x1a778b[_0x1d15ba(0x1ba)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x1d15ba(0x1bc)]('--menu-ids\x20supports\x20at\x20most\x20'+MAX_REGROUP_MENU_COUNT+'\x20menus\x20per\x20regroup\x20request.');return _0x1a778b;}function buildMenuLookupCommand(_0x2f852c){const _0xcb651e=a118_0x3c94c6,_0x3c4533='\x27'+_0x2f852c[_0xcb651e(0x1d1)](/'/g,_0xcb651e(0x1ea))+'\x27';return CLI_BIN_NAME+_0xcb651e(0x1b5)+_0x3c4533+_0xcb651e(0x1e2);}function unconfirmedRegroupWarning(_0x5402c4){const _0x2f534c=a118_0x3c94c6;if(_0x5402c4[_0x2f534c(0x1c0)]===_0x2f534c(0x1fe))return _0x2f534c(0x1e9);if(_0x5402c4[_0x2f534c(0x1c0)]==='FAILED')return _0x2f534c(0x1e4);if(_0x5402c4['knownStatus'])return _0x2f534c(0x1d8);return _0x2f534c(0x206);}async function buildRegroupPlan(_0x2974a7,_0xf4ea1f){const _0x11011d=a118_0x3c94c6,_0x36c1c7=_0x2974a7['str'](_0x11011d(0x1d6))[_0x11011d(0x1f6)](),_0x4fd15b=parseMenuIds(_0x2974a7[_0x11011d(0x212)](_0x11011d(0x1ca))),_0x40ed50=await fetchMutationSnapshot(_0x2974a7,_0x11011d(0x210)),_0x27bddb=_0x4fd15b[_0x11011d(0x1e1)](_0x3b8451=>requireMenu(_0x40ed50,_0x3b8451));for(const _0x46084a of _0x27bddb){if(_0x46084a[_0x11011d(0x1bd)][_0x11011d(0x1f6)]()[_0x11011d(0x20d)]()===_0x11011d(0x20b)||_0x46084a[_0x11011d(0x1ee)]>0x0)throw menuError('menu_regroup_target_not_leaf','Menu\x20'+_0x46084a['id']+_0x11011d(0x1e0),_0x11011d(0x1c1));if(!_0x46084a['label'][_0x11011d(0x1f6)]())throw menuError('menu_regroup_target_label_missing',_0x11011d(0x1e3)+_0x46084a['id']+_0x11011d(0x1b4),_0x11011d(0x1d2));}const _0x16cc67=findAppliedRegroup(_0x40ed50,_0x36c1c7,_0x4fd15b);if(_0x16cc67)throw menuError(_0x11011d(0x201),_0x11011d(0x1f1)+_0x4fd15b[_0x11011d(0x1c7)](',\x20')+_0x11011d(0x1d4)+_0x16cc67[_0x11011d(0x211)]['id']+'\x20('+JSON[_0x11011d(0x1ec)](_0x36c1c7)+').','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.');const _0x47ca88=_0x40ed50[_0x11011d(0x1f7)][_0x11011d(0x1ef)](_0xf5cd5f=>_0xf5cd5f[_0x11011d(0x1df)]==null&&_0xf5cd5f[_0x11011d(0x1bd)][_0x11011d(0x1f6)]()[_0x11011d(0x20d)]()==='folder'&&_0xf5cd5f['label']===_0x36c1c7);if(_0x47ca88[_0x11011d(0x1ba)]>0x0)throw menuError(_0x11011d(0x1c8),'Root\x20folder\x20label\x20'+JSON['stringify'](_0x36c1c7)+_0x11011d(0x1fd)+_0x47ca88[_0x11011d(0x1e1)](_0x53dd62=>_0x53dd62['id'])['join'](',\x20')+'.',_0x11011d(0x1eb));const _0x2d4d3a={'appCode':_0x2974a7[_0x11011d(0x1de)],'menuGroups':[{'label':_0x36c1c7,'type':_0x11011d(0x20b),'children':_0x27bddb[_0x11011d(0x1e1)](_0x49e40a=>({'id':_0x49e40a['id'],'label':_0x49e40a['label']}))}]},_0x5cac53=mutationResult({'operation':'regroup-start','selector':{'label':_0x36c1c7,'menuIds':_0x4fd15b},'before':{'menus':_0x27bddb},'after':{'group':{'id':null,'parentId':null,'label':_0x36c1c7,'path':_0x11011d(0x1d0),'type':_0x11011d(0x20b),'childrenIds':_0x4fd15b},'children':_0x27bddb[_0x11011d(0x1e1)](_0x22e43d=>({'id':_0x22e43d['id'],'label':_0x22e43d[_0x11011d(0x1d6)],'beforeParentId':_0x22e43d[_0x11011d(0x1df)],'afterParentId':_0x11011d(0x204)}))},'dryRun':_0xf4ea1f,'backend':[...BACKEND],'plannedActions':[{'stage':_0x11011d(0x1ed),'method':_0x11011d(0x1ff),'path':_0x11011d(0x1bf),'body':_0x2d4d3a}],'snapshotHash':_0x40ed50[_0x11011d(0x205)],'warnings':['The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.',_0x11011d(0x1e7)]});return{'label':_0x36c1c7,'menuIds':_0x4fd15b,'input':_0x2d4d3a,'plan':_0x5cac53};}function a118_0x5e54(){const _0x521af7=['menu_regroup_label_conflict','Regroup\x20readback\x20also\x20failed:\x20','menu-ids','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','746034orXcRD','taskId','byId','sort','<platform-generated>','replace','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','regroup-start','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','21EhTfqw','label','menu','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','2241552ohkbSk','message','plan','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','273446uoQAaS','appCode','parentId','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','map','\x20--format\x20compress','Menu\x20','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','applied','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','Regroup\x20readback\x20failed:\x20','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','\x27\x5c\x27\x27','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','stringify','submit-regroup-task','childrenCount','filter','some','Menus\x20','test','size','1103686soLQeO','Label\x20of\x20the\x20new\x20root\x20folder','trim','menus','35xvITWD','9HcMEjn','Regroup\x20task\x20accepted.\x20','menuIds','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','SUCCESS','POST','2134egvgiX','menu_regroup_already_applied','start\x20regroup','7635312RSHKJR','<new-group-id>','hash','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.','flagMissing','cookie','234dzRchK','637932ViexSs','folder','warnings','toLowerCase','start\x20menu\x20regroup','readbackError','plan\x20regroup','group','str','unconfirmed','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','\x20menu\x20list\x20--appcode\x20','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','failed','27OQHFnf','length','get','validation','type','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','/smartapi/menu/regroup','status','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','isTerminal','36530yooZDz','string','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','\x20and\x20regroup\x20menu\x20ids\x20','join'];a118_0x5e54=function(){return _0x521af7;};return a118_0x5e54();}function findAppliedRegroup(_0x21cd1d,_0x429a74,_0x2db163){const _0xd28797=a118_0x3c94c6,_0x4c3663=_0x2db163[_0xd28797(0x1e1)](_0x26edd2=>_0x21cd1d[_0xd28797(0x1ce)][_0xd28797(0x1bb)](_0x26edd2))['filter'](_0x438946=>Boolean(_0x438946));if(_0x4c3663[_0xd28797(0x1ba)]!==_0x2db163[_0xd28797(0x1ba)])return null;const _0x537856=_0x4c3663[0x0]?.[_0xd28797(0x1df)];if(_0x537856==null||_0x4c3663[_0xd28797(0x1f0)](_0x24bdc3=>_0x24bdc3[_0xd28797(0x1df)]!==_0x537856))return null;const _0x5dfea0=_0x21cd1d[_0xd28797(0x1ce)]['get'](_0x537856);if(!_0x5dfea0||_0x5dfea0[_0xd28797(0x1df)]!=null||_0x5dfea0[_0xd28797(0x1bd)][_0xd28797(0x1f6)]()['toLowerCase']()!==_0xd28797(0x20b)||_0x5dfea0[_0xd28797(0x1d6)]!==_0x429a74)return null;const _0x9ca73c=[..._0x2db163][_0xd28797(0x1cf)]((_0x452c7b,_0x593b8b)=>_0x452c7b-_0x593b8b),_0x46b71a=[..._0x5dfea0['childrenIds']][_0xd28797(0x1cf)]((_0x14a064,_0x303b9f)=>_0x14a064-_0x303b9f);if(JSON[_0xd28797(0x1ec)](_0x46b71a)!==JSON['stringify'](_0x9ca73c))return null;return{'group':_0x5dfea0,'children':_0x4c3663};}async function inspectRegroupAfterFailure(_0x4f9cc9,_0x1bbec3,_0x293739,_0x1eca67){const _0x23ea59=a118_0x3c94c6;try{const _0x414d16=await fetchMenuSnapshot(_0x4f9cc9,_0x1bbec3);return{'applied':findAppliedRegroup(_0x414d16,_0x293739,_0x1eca67),'readbackError':null};}catch(_0x5d9f8c){return{'applied':null,'readbackError':_0x5d9f8c instanceof Error?_0x5d9f8c[_0x23ea59(0x1da)]:String(_0x5d9f8c)};}}
|
|
1
|
+
function a118_0x9d8a(){const _0x2f6875=['failed','size','cookie','7MVbWVJ','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','8433vsajeh','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','\x20menu\x20list\x20--appcode\x20','4392210IQVaCQ','group','taskId','readbackError','regroup-submit','menus','status','regroup-start','Label\x20of\x20the\x20new\x20root\x20folder','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','label','hash','warnings','menuIds',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','message','byId','replace','input','menu_regroup_target_not_leaf','parentId','57LMsjzN','menu_regroup_already_applied','stringify','childrenCount','7288ulTiHn','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','4929318aqABYY','\x20menus\x20per\x20regroup\x20request.','sort','Menus\x20','1679606IhjDda','isSafeInteger','121DVovcr','trim','menu_regroup_target_label_missing','knownStatus','filter','start\x20regroup','\x20and\x20regroup\x20menu\x20ids\x20','childrenIds','start\x20menu\x20regroup','menu-ids','unconfirmed','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','toLowerCase','some','plan','\x27\x5c\x27\x27','<new-group-id>','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','get','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','menu_regroup_label_conflict','<platform-generated>','appCode','/smartapi/menu/regroup','string','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','test','menu\x20list','str','isTerminal','length','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','Regroup\x20readback\x20failed:\x20','map','type','POST','flagMissing','folder','157228CaRDxP','plan\x20regroup','submit-regroup-task','write','Regroup\x20task\x20','validation','join','FAILED','Regroup\x20readback\x20also\x20failed:\x20','applied','Menu\x20','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','2155710rSOXBv','--menu-ids\x20supports\x20at\x20most\x20','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','menu','1469616xcwcdU','1iLVPjP','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'];a118_0x9d8a=function(){return _0x2f6875;};return a118_0x9d8a();}const a118_0x59f5a4=a118_0x5eaa;(function(_0xb3cde8,_0x3fa4bc){const _0xd24266=a118_0x5eaa,_0x2099aa=_0xb3cde8();while(!![]){try{const _0x40a670=parseInt(_0xd24266(0x148))/0x1*(-parseInt(_0xd24266(0x171))/0x2)+parseInt(_0xd24266(0x167))/0x3*(-parseInt(_0xd24266(0x135))/0x4)+parseInt(_0xd24266(0x152))/0x5+parseInt(_0xd24266(0x16d))/0x6*(-parseInt(_0xd24266(0x14d))/0x7)+-parseInt(_0xd24266(0x16b))/0x8*(-parseInt(_0xd24266(0x14f))/0x9)+-parseInt(_0xd24266(0x141))/0xa+parseInt(_0xd24266(0x173))/0xb*(parseInt(_0xd24266(0x147))/0xc);if(_0x40a670===_0x3fa4bc)break;else _0x2099aa['push'](_0x2099aa['shift']());}catch(_0xff1967){_0x2099aa['push'](_0x2099aa['shift']());}}}(a118_0x9d8a,0x6f30d));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';function a118_0x5eaa(_0x13d83a,_0x29b5fa){_0x13d83a=_0x13d83a-0x122;const _0x9d8ad8=a118_0x9d8a();let _0x5eaaa9=_0x9d8ad8[_0x13d83a];return _0x5eaaa9;}const BACKEND=[{'method':'POST','path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a118_0x59f5a4(0x146),'command':a118_0x59f5a4(0x159),'description':a118_0x59f5a4(0x144),'risk':a118_0x59f5a4(0x138),'structuredErrors':!![],'flags':[{'name':a118_0x59f5a4(0x15c),'type':a118_0x59f5a4(0x125),'required':!![],'description':a118_0x59f5a4(0x15a)},{'name':a118_0x59f5a4(0x17c),'type':a118_0x59f5a4(0x125),'required':!![],'description':a118_0x59f5a4(0x185)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3f7212){validateRegroupInput(_0x3f7212);},async 'dryRun'(_0x18dea5){const _0x5b384f=a118_0x59f5a4;validateRegroupInput(_0x18dea5);const _0x5bfd91=await buildRegroupPlan(_0x18dea5,!![]);return menuDryRunResult(_0x5bfd91[_0x5b384f(0x181)],{'method':_0x5b384f(0x132),'url':_0x5b384f(0x124),'body':_0x5bfd91[_0x5b384f(0x164)],'description':_0x5b384f(0x14e)+JSON[_0x5b384f(0x169)](_0x5bfd91[_0x5b384f(0x15c)])+_0x5b384f(0x179)+_0x5bfd91[_0x5b384f(0x15f)][_0x5b384f(0x13b)](',\x20')+_0x5b384f(0x160)});},async 'execute'(_0x3702b0){const _0x1e555a=a118_0x59f5a4;validateRegroupInput(_0x3702b0);const _0x10141c=await buildRegroupPlan(_0x3702b0,![]);await recheckMutationSnapshot(_0x3702b0,_0x10141c[_0x1e555a(0x181)],_0x1e555a(0x178));const _0x4330e5=buildMenuLookupCommand(_0x3702b0[_0x1e555a(0x123)]);let _0x15b89f,_0xe3bf5b;try{_0x15b89f=await startMenuRegroup(_0x3702b0[_0x1e555a(0x14c)],_0x10141c[_0x1e555a(0x164)]),_0xe3bf5b=normalizeAsyncTask(_0x15b89f);}catch(_0x1a9769){const _0x45684c=await inspectRegroupAfterFailure(_0x3702b0[_0x1e555a(0x123)],_0x3702b0['cookie'],_0x10141c[_0x1e555a(0x15c)],_0x10141c[_0x1e555a(0x15f)]),_0x3eb99f=typeof _0x15b89f?.[_0x1e555a(0x154)]==='string'&&_0x15b89f[_0x1e555a(0x154)][_0x1e555a(0x174)]()?_0x15b89f[_0x1e555a(0x154)][_0x1e555a(0x174)]():null,_0x543684=_0x3eb99f?{'command':buildAsyncTaskStatusCommand(_0x3eb99f,_0x3702b0[_0x1e555a(0x123)])}:null,_0x87a8f5=mapMenuApiError(_0x1a9769,_0x1e555a(0x17b));throw menuFailure(_0x87a8f5,_0x10141c[_0x1e555a(0x181)],{'stage':_0x1e555a(0x156),'failed':{'menuIds':_0x10141c[_0x1e555a(0x15f)],'taskId':_0x3eb99f,'groupingApplied':_0x45684c[_0x1e555a(0x13e)]?!![]:'unconfirmed'},'after':_0x45684c['applied']??null,'warnings':[_0x1e555a(0x184),..._0x45684c[_0x1e555a(0x155)]?[_0x1e555a(0x13d)+_0x45684c['readbackError']]:[],..._0x3eb99f?[_0x1e555a(0x12e)]:[]],'verification':{'status':_0x1e555a(0x14a),'groupingApplied':_0x45684c[_0x1e555a(0x13e)]?!![]:_0x1e555a(0x17d),'taskId':_0x3eb99f,'query':_0x543684,'lookupCommand':_0x4330e5}});}const _0x1f72a5=buildAsyncTaskStatusCommand(_0xe3bf5b[_0x1e555a(0x154)],_0x3702b0[_0x1e555a(0x123)]);let _0x27f43b=null,_0xab8689=null,_0x1db43b=null;try{_0x27f43b=await fetchMenuSnapshot(_0x3702b0[_0x1e555a(0x123)],_0x3702b0[_0x1e555a(0x14c)]),_0xab8689=findAppliedRegroup(_0x27f43b,_0x10141c[_0x1e555a(0x15c)],_0x10141c[_0x1e555a(0x15f)]);}catch(_0x36d055){_0x1db43b=_0x36d055 instanceof Error?_0x36d055['message']:String(_0x36d055);}const _0x3a649d=mutationResult({..._0x10141c[_0x1e555a(0x181)],'after':_0xab8689??null,'dryRun':![],'succeeded':[{'groupId':_0xab8689?.[_0x1e555a(0x153)]['id']??null,'menuIds':_0x10141c['menuIds'],'taskId':_0xe3bf5b[_0x1e555a(0x154)],'status':_0xe3bf5b[_0x1e555a(0x158)],'groupingApplied':_0xab8689?!![]:_0x1e555a(0x17d)}],'verification':{'checkedBy':_0x1e555a(0x128),'snapshotHash':_0x27f43b?.[_0x1e555a(0x15d)]??null,'groupId':_0xab8689?.[_0x1e555a(0x153)]['id']??null,'groupingApplied':_0xab8689?!![]:_0x1e555a(0x17d),'readbackError':_0x1db43b,'lookupCommand':_0x4330e5},'warnings':[..._0x10141c[_0x1e555a(0x181)][_0x1e555a(0x15e)],...!_0xab8689?[unconfirmedRegroupWarning(_0xe3bf5b)]:[],..._0x1db43b?[_0x1e555a(0x12f)+_0x1db43b]:[]]}),_0xf06a09=_0xe3bf5b[_0x1e555a(0x158)]==='SUCCESS'&&!_0xab8689?_0x1e555a(0x139)+_0xe3bf5b[_0x1e555a(0x154)]+'\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.':'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0xe3bf5b);return{'ok':!![],'message':_0xf06a09,'data':{..._0x3a649d,'task':_0xe3bf5b,'query':_0xe3bf5b[_0x1e555a(0x12a)]?null:{'command':_0x1f72a5}}};}};function validateRegroupInput(_0x2b2a0b){const _0x5670aa=a118_0x59f5a4;if(!_0x2b2a0b['str'](_0x5670aa(0x15c))[_0x5670aa(0x174)]())throw CliErrors[_0x5670aa(0x133)](_0x5670aa(0x15c));parseMenuIds(_0x2b2a0b[_0x5670aa(0x129)]('menu-ids'));}function parseMenuIds(_0x2de1c4){const _0x23caff=a118_0x59f5a4,_0x28717a=_0x2de1c4['split'](',')['map'](_0x22571a=>_0x22571a[_0x23caff(0x174)]());if(_0x28717a[_0x23caff(0x12b)]===0x0||_0x28717a[_0x23caff(0x180)](_0x318901=>!_0x318901))throw CliErrors[_0x23caff(0x13a)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x5639ed=_0x28717a['map'](_0x1b2089=>{const _0xe8611b=_0x23caff;if(!/^\d+$/[_0xe8611b(0x127)](_0x1b2089))throw CliErrors[_0xe8611b(0x13a)](_0xe8611b(0x12d));const _0x1719c4=Number(_0x1b2089);if(!Number[_0xe8611b(0x172)](_0x1719c4)||_0x1719c4<=0x0)throw CliErrors[_0xe8611b(0x13a)](_0xe8611b(0x12d));return _0x1719c4;});if(new Set(_0x5639ed)[_0x23caff(0x14b)]!==_0x5639ed[_0x23caff(0x12b)])throw CliErrors['validation'](_0x23caff(0x150));if(_0x5639ed[_0x23caff(0x12b)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x23caff(0x13a)](_0x23caff(0x142)+MAX_REGROUP_MENU_COUNT+_0x23caff(0x16e));return _0x5639ed;}function buildMenuLookupCommand(_0x47c432){const _0x2bba91=a118_0x59f5a4,_0x15fc6b='\x27'+_0x47c432[_0x2bba91(0x163)](/'/g,_0x2bba91(0x182))+'\x27';return CLI_BIN_NAME+_0x2bba91(0x151)+_0x15fc6b+'\x20--format\x20compress';}function unconfirmedRegroupWarning(_0xdcb36f){const _0x4b2670=a118_0x59f5a4;if(_0xdcb36f['status']==='SUCCESS')return _0x4b2670(0x12c);if(_0xdcb36f[_0x4b2670(0x158)]===_0x4b2670(0x13c))return _0x4b2670(0x140);if(_0xdcb36f[_0x4b2670(0x176)])return _0x4b2670(0x126);return _0x4b2670(0x187);}async function buildRegroupPlan(_0x3142a3,_0x5b9534){const _0x5c8053=a118_0x59f5a4,_0x299a77=_0x3142a3[_0x5c8053(0x129)](_0x5c8053(0x15c))[_0x5c8053(0x174)](),_0x2bf553=parseMenuIds(_0x3142a3[_0x5c8053(0x129)](_0x5c8053(0x17c))),_0x5498d3=await fetchMutationSnapshot(_0x3142a3,_0x5c8053(0x136)),_0xfa8056=_0x2bf553['map'](_0x27180f=>requireMenu(_0x5498d3,_0x27180f));for(const _0x1daaa6 of _0xfa8056){if(_0x1daaa6[_0x5c8053(0x131)][_0x5c8053(0x174)]()[_0x5c8053(0x17f)]()==='folder'||_0x1daaa6[_0x5c8053(0x16a)]>0x0)throw menuError(_0x5c8053(0x165),'Menu\x20'+_0x1daaa6['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',_0x5c8053(0x17e));if(!_0x1daaa6[_0x5c8053(0x15c)][_0x5c8053(0x174)]())throw menuError(_0x5c8053(0x175),_0x5c8053(0x13f)+_0x1daaa6['id']+_0x5c8053(0x145),_0x5c8053(0x16c));}const _0x99a8a=findAppliedRegroup(_0x5498d3,_0x299a77,_0x2bf553);if(_0x99a8a)throw menuError(_0x5c8053(0x168),_0x5c8053(0x170)+_0x2bf553[_0x5c8053(0x13b)](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0x99a8a[_0x5c8053(0x153)]['id']+'\x20('+JSON[_0x5c8053(0x169)](_0x299a77)+').',_0x5c8053(0x15b));const _0x1a9e81=_0x5498d3[_0x5c8053(0x157)][_0x5c8053(0x177)](_0x4a8d69=>_0x4a8d69['parentId']==null&&_0x4a8d69['type']['trim']()[_0x5c8053(0x17f)]()==='folder'&&_0x4a8d69[_0x5c8053(0x15c)]===_0x299a77);if(_0x1a9e81['length']>0x0)throw menuError(_0x5c8053(0x188),'Root\x20folder\x20label\x20'+JSON['stringify'](_0x299a77)+_0x5c8053(0x149)+_0x1a9e81[_0x5c8053(0x130)](_0xb0819b=>_0xb0819b['id'])[_0x5c8053(0x13b)](',\x20')+'.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.');const _0x5ecbcc={'appCode':_0x3142a3['appCode'],'menuGroups':[{'label':_0x299a77,'type':'folder','children':_0xfa8056[_0x5c8053(0x130)](_0xc7d585=>({'id':_0xc7d585['id'],'label':_0xc7d585['label']}))}]},_0xfe6e7a=mutationResult({'operation':_0x5c8053(0x159),'selector':{'label':_0x299a77,'menuIds':_0x2bf553},'before':{'menus':_0xfa8056},'after':{'group':{'id':null,'parentId':null,'label':_0x299a77,'path':_0x5c8053(0x122),'type':_0x5c8053(0x134),'childrenIds':_0x2bf553},'children':_0xfa8056['map'](_0x5aac3a=>({'id':_0x5aac3a['id'],'label':_0x5aac3a[_0x5c8053(0x15c)],'beforeParentId':_0x5aac3a[_0x5c8053(0x166)],'afterParentId':_0x5c8053(0x183)}))},'dryRun':_0x5b9534,'backend':[...BACKEND],'plannedActions':[{'stage':_0x5c8053(0x137),'method':_0x5c8053(0x132),'path':_0x5c8053(0x124),'body':_0x5ecbcc}],'snapshotHash':_0x5498d3[_0x5c8053(0x15d)],'warnings':['The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.',_0x5c8053(0x143)]});return{'label':_0x299a77,'menuIds':_0x2bf553,'input':_0x5ecbcc,'plan':_0xfe6e7a};}function findAppliedRegroup(_0x35d538,_0x5f00ce,_0x3ed77b){const _0x52e8a1=a118_0x59f5a4,_0x343e63=_0x3ed77b['map'](_0x24efd5=>_0x35d538['byId'][_0x52e8a1(0x186)](_0x24efd5))[_0x52e8a1(0x177)](_0xada167=>Boolean(_0xada167));if(_0x343e63['length']!==_0x3ed77b['length'])return null;const _0x24181d=_0x343e63[0x0]?.[_0x52e8a1(0x166)];if(_0x24181d==null||_0x343e63['some'](_0x4a41c6=>_0x4a41c6[_0x52e8a1(0x166)]!==_0x24181d))return null;const _0x536280=_0x35d538[_0x52e8a1(0x162)]['get'](_0x24181d);if(!_0x536280||_0x536280[_0x52e8a1(0x166)]!=null||_0x536280[_0x52e8a1(0x131)][_0x52e8a1(0x174)]()['toLowerCase']()!==_0x52e8a1(0x134)||_0x536280[_0x52e8a1(0x15c)]!==_0x5f00ce)return null;const _0x59a486=[..._0x3ed77b][_0x52e8a1(0x16f)]((_0x117b82,_0x20942a)=>_0x117b82-_0x20942a),_0x4eca33=[..._0x536280[_0x52e8a1(0x17a)]]['sort']((_0x228f92,_0x4c4801)=>_0x228f92-_0x4c4801);if(JSON['stringify'](_0x4eca33)!==JSON[_0x52e8a1(0x169)](_0x59a486))return null;return{'group':_0x536280,'children':_0x343e63};}async function inspectRegroupAfterFailure(_0x1d4e45,_0x1c8677,_0x382871,_0x255ac2){const _0xb683bd=a118_0x59f5a4;try{const _0x27e3a=await fetchMenuSnapshot(_0x1d4e45,_0x1c8677);return{'applied':findAppliedRegroup(_0x27e3a,_0x382871,_0x255ac2),'readbackError':null};}catch(_0xfa3bb5){return{'applied':null,'readbackError':_0xfa3bb5 instanceof Error?_0xfa3bb5[_0xb683bd(0x161)]:String(_0xfa3bb5)};}}
|