@lovrabet/rabetbase-cli 2.5.0-beta.2 → 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-page-custom-list.md +5 -2
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const a111_0x3e4ded=a111_0x5101;(function(_0x368860,_0x2628f1){const _0x236180=a111_0x5101,_0x56aea9=_0x368860();while(!![]){try{const _0x26dfba=parseInt(_0x236180(0xf7))/0x1*(parseInt(_0x236180(0xe4))/0x2)+-parseInt(_0x236180(0xea))/0x3+parseInt(_0x236180(0x107))/0x4+parseInt(_0x236180(0xcd))/0x5*(-parseInt(_0x236180(0x12a))/0x6)+-parseInt(_0x236180(0xe2))/0x7+-parseInt(_0x236180(0x128))/0x8*(-parseInt(_0x236180(0x12f))/0x9)+parseInt(_0x236180(0xd6))/0xa;if(_0x26dfba===_0x2628f1)break;else _0x56aea9['push'](_0x56aea9['shift']());}catch(_0x28aba9){_0x56aea9['push'](_0x56aea9['shift']());}}}(a111_0x5484,0x4b13f));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';function a111_0x5484(){const _0x4461a9=['prototype','after','menu_create_recovery_required','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','cause','<platform-generated>','code','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','replace','lookupCommand','iframe','2016732taLmJS','entries','Recovered\x20created\x20external\x20menu\x20','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','Menu\x20label','succeeded','rawerror','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','boolean','includes','menu_mutation_failed','menu_sort_invalid','readbackerror','link','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','menu_not_found','str','\x20after\x20response\x20loss.','fromEntries','causemessage','has','parent-id','failed','menu_url_invalid','string','Menu\x20','parent','length','hasOwnProperty','write','sort','create','menu_create_response_invalid','16jvhuGG','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','23712CsgnTc','menus','open-mode','cookie','expectedSnapshotHash','462978TYUipF','menu\x20list','create\x20external\x20menu','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','stringify','parentId','\x20could\x20not\x20be\x20verified.','\x20has\x20an\x20unexpected\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','Create\x20an\x20external\x20website\x20link\x20menu','URL','visible','bool','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','object','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','trim','appCode','POST','External\x20HTTPS\x20URL','recovered','label','isSafeInteger','menu_url_credentials_forbidden','verification','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','password','map','How\x20to\x20open\x20the\x20external\x20website','plan','toLowerCase','visibility','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu_open_mode_invalid','new-window','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','\x20with\x20','menu_permission_denied','fact','isArray','335EQaZWl','\x20--format\x20compress','create-recovery','menu_parent_not_folder','hash','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','type','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','createdId','666840FTkExs','data','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','menu_state_drift','create-menu','Run\x20','plannedActions','username','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','protocol','Created\x20menu\x20','create-response-validation','690151BYhCrd','menu','80042bbEVUD','menu_verification_failed','add','\x27\x5c\x27\x27','body','afterPlan','1209195YoDrmt','rawFlags','currentSnapshotHash','\x20has\x20an\x20unexpected\x20generated\x20path.','flagMissing','embedded','path','snapshot','filter','byId','/smartapi/menu/create','Whether\x20the\x20menu\x20is\x20visible','url','10XpbZSS','get','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','expectedPath','https:'];a111_0x5484=function(){return _0x4461a9;};return a111_0x5484();}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a111_0x3e4ded(0x106),'new-window':a111_0x3e4ded(0x114)};export function validateExternalMenuUrl(_0x1566c8){const _0x27665e=a111_0x3e4ded,_0x3884dc=_0x1566c8[_0x27665e(0xb4)]();let _0xb86db3;try{_0xb86db3=new URL(_0x3884dc);}catch{throw menuError(_0x27665e(0x11e),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x27665e(0xf9));}if(_0xb86db3[_0x27665e(0xdf)]!==_0x27665e(0xfb))throw menuError('menu_url_https_required','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','Provide\x20an\x20HTTPS\x20URL.');if(_0xb86db3[_0x27665e(0xdd)]||_0xb86db3[_0x27665e(0xbf)])throw menuError(_0x27665e(0xbb),_0x27665e(0xd2),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x3884dc;}export const menuExternalLinkCreate={'service':a111_0x3e4ded(0xe3),'command':'external-link-create','description':a111_0x3e4ded(0xac),'risk':a111_0x3e4ded(0x124),'structuredErrors':!![],'flags':[{'name':a111_0x3e4ded(0xb9),'type':a111_0x3e4ded(0x11f),'required':!![],'description':a111_0x3e4ded(0x10b)},{'name':a111_0x3e4ded(0x12c),'type':a111_0x3e4ded(0x11f),'required':!![],'enum':[a111_0x3e4ded(0xef),a111_0x3e4ded(0xc7)],'description':a111_0x3e4ded(0xc1)},{'name':a111_0x3e4ded(0xf6),'type':a111_0x3e4ded(0x11f),'required':!![],'description':a111_0x3e4ded(0xb7)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a111_0x3e4ded(0xae),'type':a111_0x3e4ded(0x10f),'default':!![],'description':a111_0x3e4ded(0xf5)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x352527){validateAddInput(_0x352527);},async 'dryRun'(_0x57817d){const _0x4d7acf=a111_0x3e4ded;validateAddInput(_0x57817d);const {plan:_0xc9609c}=await buildSafeAddPlan(_0x57817d,!![]),_0x1482f3=_0xc9609c[_0x4d7acf(0xfd)],_0x20235f=createBody(_0x1482f3);return menuDryRunResult(_0xc9609c,{'method':_0x4d7acf(0xb6),'url':'/smartapi/menu/create','body':_0x20235f,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON[_0x4d7acf(0x133)](_0x1482f3[_0x4d7acf(0xb9)])+_0x4d7acf(0xc9)+_0x57817d['str']('open-mode')+_0x4d7acf(0xbd)});},async 'execute'(_0x107326){const _0x417439=a111_0x3e4ded;validateAddInput(_0x107326);const _0x92d3f=await buildSafeAddPlan(_0x107326,![]),{plan:_0x58e69b,snapshot:_0x600cb6}=_0x92d3f,_0x54c28b=_0x58e69b[_0x417439(0xfd)],_0x11cefb=buildMenuLookupCommand(_0x107326[_0x417439(0xb5)]);await recheckAddSnapshot(_0x107326,_0x58e69b);let _0x30ca95;try{_0x30ca95=await createMenuEntity(_0x107326[_0x417439(0xb5)],_0x107326['cookie'],createBody(_0x54c28b));}catch(_0x5bc64e){const _0x3e527f=mapMenuApiError(_0x5bc64e,_0x417439(0x131));if(!isMenuResponseLoss(_0x5bc64e)||_0x3e527f[_0x417439(0x102)]==='menu_permission_denied')throw externalLinkCreateFailure(_0x3e527f,_0x58e69b,{'stage':_0x417439(0x126),'failed':{},'verification':{'status':_0x417439(0x11d),'lookupCommand':_0x11cefb}});return recoverAfterResponseLoss(_0x107326,_0x92d3f,_0x11cefb);}const _0x4745d5=Number(_0x30ca95?.['id']),_0x9d3212=typeof _0x30ca95?.[_0x417439(0xf0)]===_0x417439(0x11f)?_0x30ca95[_0x417439(0xf0)]:'';if(!Number[_0x417439(0xba)](_0x4745d5)||_0x4745d5<=0x0||!_0x9d3212[_0x417439(0xb4)]()){const _0x4a0c76=menuError(_0x417439(0x127),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.',_0x417439(0xdb)+_0x11cefb+_0x417439(0xb3));throw externalLinkCreateFailure(_0x4a0c76,_0x58e69b,{'stage':_0x417439(0xe1),'succeeded':Number[_0x417439(0xba)](_0x4745d5)&&_0x4745d5>0x0?[{'id':_0x4745d5,'created':!![]}]:[],'failed':{'createdId':Number[_0x417439(0xba)](_0x4745d5)?_0x4745d5:null,'generatedPathConfirmed':Boolean(_0x9d3212[_0x417439(0xb4)]())},'warnings':[_0x417439(0x132)],'after':Number[_0x417439(0xba)](_0x4745d5)&&_0x4745d5>0x0?{..._0x54c28b,'id':_0x4745d5,'path':_0x9d3212}:_0x54c28b,'verification':{'status':_0x417439(0x11d),'lookupCommand':_0x11cefb,...Number[_0x417439(0xba)](_0x4745d5)&&_0x4745d5>0x0?{'targetId':_0x4745d5}:{}}});}const _0x25bc8a=await readAndVerifyCreatedMenu({'appCode':_0x107326[_0x417439(0xb5)],'cookie':_0x107326[_0x417439(0x12d)],'plan':_0x58e69b,'afterPlan':_0x54c28b,'createdId':_0x4745d5,'expectedPath':_0x9d3212,'lookupCommand':_0x11cefb,'recovered':![]});return creationSuccess(_0x58e69b,_0x25bc8a[_0x417439(0xf1)],_0x25bc8a[_0x417439(0xcb)],![]);}};function validateAddInput(_0x233b63){const _0x29a3c7=a111_0x3e4ded;if(!_0x233b63[_0x29a3c7(0x117)](_0x29a3c7(0xb9))[_0x29a3c7(0xb4)]())throw CliErrors[_0x29a3c7(0xee)]('label');resolveExternalMenuType(_0x233b63),validateExternalMenuUrl(_0x233b63['str'](_0x29a3c7(0xf6))),parseParentId(_0x233b63,_0x29a3c7(0x11c)),validateSort(_0x233b63);}function resolveExternalMenuType(_0x674563){const _0x14d63c=a111_0x3e4ded,_0x4f7e0d=_0x674563['str'](_0x14d63c(0x12c))[_0x14d63c(0xb4)]();if(!_0x4f7e0d)throw CliErrors['flagMissing']('open-mode');const _0x251dcc=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x4f7e0d];if(!_0x251dcc)throw menuError(_0x14d63c(0xc6),'--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x251dcc;}async function buildAddPlan(_0x454f88,_0x1877bf){const _0x1806ef=a111_0x3e4ded,_0x1347c2=await fetchMutationSnapshot(_0x454f88,_0x1806ef(0x131)),_0x25c85a=parseParentId(_0x454f88,_0x1806ef(0x11c))??null;if(_0x25c85a!=null)requireFolder(_0x1347c2,_0x25c85a);const _0x49f8fb=validateSort(_0x454f88),_0x5aacb4=_0x49f8fb??nextSiblingSort(_0x1347c2,_0x25c85a,'menu'),_0x37d1cf=_0x454f88[_0x1806ef(0x117)](_0x1806ef(0xb9))['trim'](),_0x3c8188=resolveExternalMenuType(_0x454f88),_0x4ba44d=validateExternalMenuUrl(_0x454f88[_0x1806ef(0x117)](_0x1806ef(0xf6))),_0x1ee680=Object[_0x1806ef(0xfc)][_0x1806ef(0x123)]['call'](_0x454f88[_0x1806ef(0xeb)],_0x1806ef(0xae))?_0x454f88[_0x1806ef(0xaf)](_0x1806ef(0xae)):!![],_0x1eca42={'id':null,'parentId':_0x25c85a,'label':_0x37d1cf,'path':_0x1806ef(0x101),'url':_0x4ba44d,'type':_0x3c8188,'visible':_0x1ee680,'sort':_0x5aacb4},_0x35bd08=buildMenuLookupCommand(_0x454f88[_0x1806ef(0xb5)]),_0x359f4e=mutationResult({'operation':_0x1806ef(0xe6),'selector':{'parentId':_0x25c85a,'type':_0x3c8188,'label':_0x37d1cf,'url':_0x4ba44d},'before':null,'after':_0x1eca42,'dryRun':_0x1877bf,'backend':[{'method':_0x1806ef(0xb6),'path':_0x1806ef(0xf4)}],'plannedActions':[{'stage':_0x1806ef(0xda),'method':_0x1806ef(0xb6),'path':'/smartapi/menu/create','body':createBody(_0x1eca42)}],'snapshotHash':_0x1347c2[_0x1806ef(0xd1)],'warnings':[_0x1806ef(0x103)],'verification':{'lookupCommand':_0x35bd08}});return{'plan':_0x359f4e,'snapshot':_0x1347c2};}async function buildSafeAddPlan(_0x19a465,_0x4dce1a){try{return await buildAddPlan(_0x19a465,_0x4dce1a);}catch(_0x3b7365){throw safeMenuAddError(_0x3b7365);}}async function recheckAddSnapshot(_0x168f0a,_0x1e1c5e){const _0x33fc5a=a111_0x3e4ded;try{await recheckMutationSnapshot(_0x168f0a,_0x1e1c5e,_0x33fc5a(0x131));}catch(_0x48e0b8){const _0x137037=getFailureRecord(_0x48e0b8);throw externalLinkCreateFailure(_0x48e0b8,_0x1e1c5e,{'stage':'pre-write-recheck','failed':{..._0x137037?.[_0x33fc5a(0x12e)]?{'expectedSnapshotHash':_0x137037[_0x33fc5a(0x12e)]}:{},..._0x137037?.[_0x33fc5a(0xec)]?{'currentSnapshotHash':_0x137037[_0x33fc5a(0xec)]}:{}}});}}function createBody(_0x5650a0){const _0x10e328=a111_0x3e4ded;return{'parentId':toApiParentId(_0x5650a0[_0x10e328(0x134)]),'label':String(_0x5650a0[_0x10e328(0xb9)]),'type':String(_0x5650a0['type']),'url':String(_0x5650a0[_0x10e328(0xf6)]),'visible':Boolean(_0x5650a0[_0x10e328(0xae)]),'sort':Number(_0x5650a0[_0x10e328(0x125)]),'extend':{}};}function a111_0x5101(_0x3262b7,_0x32578e){_0x3262b7=_0x3262b7-0xa8;const _0x548463=a111_0x5484();let _0x510109=_0x548463[_0x3262b7];return _0x510109;}function buildMenuLookupCommand(_0x5c8ef5){const _0x4c9d0c=a111_0x3e4ded,_0x2a7ff4='\x27'+_0x5c8ef5[_0x4c9d0c(0x104)](/'/g,_0x4c9d0c(0xe7))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x2a7ff4+_0x4c9d0c(0xce);}async function recoverAfterResponseLoss(_0x399e3d,_0x1dbefb,_0x12d7f9){const _0x217920=a111_0x3e4ded,{plan:_0x5628b8,snapshot:_0x241960}=_0x1dbefb,_0xbac798=_0x5628b8[_0x217920(0xfd)];let _0x309ead;try{_0x309ead=await fetchMenuSnapshot(_0x399e3d[_0x217920(0xb5)],_0x399e3d[_0x217920(0x12d)]);}catch(_0x4875b3){throw recoveryRequiredFailure(_0x5628b8,_0x12d7f9,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x1f6952=_0x309ead[_0x217920(0x12b)][_0x217920(0xf2)](_0x48897a=>_0x48897a[_0x217920(0x134)]===_0xbac798[_0x217920(0x134)]&&_0x48897a['type']===_0xbac798[_0x217920(0xd3)]&&_0x48897a[_0x217920(0xb9)]===_0xbac798[_0x217920(0xb9)]&&_0x48897a[_0x217920(0xf6)]===_0xbac798[_0x217920(0xf6)]),_0x28dd45=_0x1f6952['filter'](_0x5f09b7=>!_0x241960[_0x217920(0xf3)][_0x217920(0x11b)](_0x5f09b7['id'])),_0x2971da=_0x1f6952[_0x217920(0xf2)](_0x5cce96=>_0x241960[_0x217920(0xf3)][_0x217920(0x11b)](_0x5cce96['id']));if(_0x1f6952['length']!==0x1||_0x28dd45[_0x217920(0x122)]!==0x1)throw recoveryRequiredFailure(_0x5628b8,_0x12d7f9,{'matchCount':_0x1f6952[_0x217920(0x122)],'newMatchCount':_0x28dd45[_0x217920(0x122)],'preexistingMatchCount':_0x2971da[_0x217920(0x122)]});const _0x53f022=_0x28dd45[0x0];try{verifyCreatedFact(_0x53f022,_0x53f022['id'],_0xbac798,null);}catch(_0x11ee67){const _0x5f444e=_0x11ee67 instanceof Error&&_0x217920(0x102)in _0x11ee67?_0x11ee67:menuError(_0x217920(0xe5),'Recovered\x20menu\x20'+_0x53f022['id']+_0x217920(0xa8),_0x217920(0xdb)+_0x12d7f9+_0x217920(0xb0));throw externalLinkCreateFailure(_0x5f444e,_0x5628b8,{'stage':_0x217920(0xbc),'succeeded':[{'id':_0x53f022['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x53f022['id'],'finalFactsConfirmed':![]},'after':_0x53f022,'warnings':['Menu\x20'+_0x53f022['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x217920(0x11d),'targetId':_0x53f022['id'],'recovered':!![],'lookupCommand':_0x12d7f9}});}return creationSuccess(_0x5628b8,_0x309ead,_0x53f022,!![]);}function recoveryRequiredFailure(_0x33c74a,_0x162981,_0x5db0e4){const _0x583961=a111_0x3e4ded,_0x3f4374=menuError('menu_create_recovery_required',_0x583961(0x115),_0x583961(0xdb)+_0x162981+_0x583961(0xff));return externalLinkCreateFailure(_0x3f4374,_0x33c74a,{'stage':_0x583961(0xcf),'failed':_0x5db0e4,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x583961(0x11d),..._0x5db0e4,'lookupCommand':_0x162981}});}async function readAndVerifyCreatedMenu(_0xc37b20){const _0x330acc=a111_0x3e4ded;let _0x2ceac2;try{_0x2ceac2=await fetchMenuSnapshot(_0xc37b20[_0x330acc(0xb5)],_0xc37b20[_0x330acc(0x12d)]);}catch(_0x2bc9ae){const _0x56cff1=menuError(_0x330acc(0xe5),_0x330acc(0x120)+_0xc37b20[_0x330acc(0xd5)]+_0x330acc(0xd8),'Run\x20'+_0xc37b20['lookupCommand']+_0x330acc(0xc8));throw externalLinkCreateFailure(_0x56cff1,_0xc37b20[_0x330acc(0xc2)],{'stage':'verification','succeeded':[{'id':_0xc37b20[_0x330acc(0xd5)],'created':!![]}],'failed':{'id':_0xc37b20[_0x330acc(0xd5)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0xc37b20['afterPlan'],'id':_0xc37b20[_0x330acc(0xd5)],'path':_0xc37b20['expectedPath']},'warnings':[_0x330acc(0x120)+_0xc37b20[_0x330acc(0xd5)]+_0x330acc(0xb2)],'verification':{'status':_0x330acc(0x11d),'targetId':_0xc37b20['createdId'],'lookupCommand':_0xc37b20['lookupCommand']}});}const _0x23ad7e=_0x2ceac2[_0x330acc(0xf3)][_0x330acc(0xf8)](_0xc37b20[_0x330acc(0xd5)]);try{if(!_0x23ad7e)throw menuError('menu_verification_failed',_0x330acc(0xe0)+_0xc37b20[_0x330acc(0xd5)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x330acc(0xdb)+_0xc37b20['lookupCommand']+_0x330acc(0xc8));verifyCreatedFact(_0x23ad7e,_0xc37b20[_0x330acc(0xd5)],_0xc37b20[_0x330acc(0xe9)],_0xc37b20[_0x330acc(0xfa)]);}catch(_0x373621){const _0xda9c99=_0x373621 instanceof Error&&_0x330acc(0x102)in _0x373621?_0x373621:menuError(_0x330acc(0xe5),_0x330acc(0xe0)+_0xc37b20[_0x330acc(0xd5)]+'\x20failed\x20final\x20verification.',_0x330acc(0xdb)+_0xc37b20[_0x330acc(0x105)]+_0x330acc(0xc8));throw externalLinkCreateFailure(_0xda9c99,_0xc37b20[_0x330acc(0xc2)],{'stage':'verification','succeeded':[{'id':_0xc37b20[_0x330acc(0xd5)],'created':!![]}],'failed':{'id':_0xc37b20[_0x330acc(0xd5)],'finalFactsConfirmed':![]},'after':_0x23ad7e??{..._0xc37b20[_0x330acc(0xe9)],'id':_0xc37b20[_0x330acc(0xd5)],'path':_0xc37b20['expectedPath']},'warnings':[_0x330acc(0x120)+_0xc37b20[_0x330acc(0xd5)]+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x330acc(0x11d),'targetId':_0xc37b20[_0x330acc(0xd5)],'recovered':_0xc37b20[_0x330acc(0xb8)],'lookupCommand':_0xc37b20['lookupCommand']}});}return{'snapshot':_0x2ceac2,'fact':_0x23ad7e};}function verifyCreatedFact(_0x1a80c8,_0x38ed68,_0x2cff4c,_0x1899af){const _0x1a7b9d=a111_0x3e4ded;if(!Number[_0x1a7b9d(0xba)](_0x1a80c8['id'])||_0x1a80c8['id']<=0x0||_0x1a80c8['id']!==_0x38ed68)throw menuError(_0x1a7b9d(0xe5),_0x1a7b9d(0x129),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x628b60=[[_0x1a7b9d(0x121),_0x1a80c8['parentId'],_0x2cff4c['parentId']],[_0x1a7b9d(0xd3),_0x1a80c8[_0x1a7b9d(0xd3)],_0x2cff4c[_0x1a7b9d(0xd3)]],[_0x1a7b9d(0xb9),_0x1a80c8['label'],_0x2cff4c[_0x1a7b9d(0xb9)]],[_0x1a7b9d(0xad),_0x1a80c8['url'],_0x2cff4c['url']],[_0x1a7b9d(0xc4),_0x1a80c8[_0x1a7b9d(0xae)],_0x2cff4c[_0x1a7b9d(0xae)]],['sort',_0x1a80c8[_0x1a7b9d(0x125)],_0x2cff4c[_0x1a7b9d(0x125)]]];for(const [_0x2eaf43,_0x49f749,_0x393bef]of _0x628b60){if(_0x49f749!==_0x393bef)throw menuError('menu_verification_failed',_0x1a7b9d(0xe0)+_0x1a80c8['id']+_0x1a7b9d(0xa9)+_0x2eaf43+'.',_0x1a7b9d(0xde));}if(!_0x1a80c8['path'][_0x1a7b9d(0xb4)]()||_0x1899af!==null&&_0x1a80c8[_0x1a7b9d(0xf0)]!==_0x1899af)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x1a80c8['id']+_0x1a7b9d(0xed),_0x1a7b9d(0xde));}function creationSuccess(_0x8eb560,_0x3f00f8,_0x2c450b,_0x23f295){const _0x201867=a111_0x3e4ded,_0x10d0d7=mutationResult({..._0x8eb560,'after':_0x2c450b,'dryRun':![],'succeeded':[{'id':_0x2c450b['id'],'created':!![],'recovered':_0x23f295}],'verification':{'checkedBy':_0x201867(0x130),'snapshotHash':_0x3f00f8[_0x201867(0xd1)],'targetId':_0x2c450b['id'],'recovered':_0x23f295,'path':_0x2c450b['path']}});return{'ok':!![],'message':_0x23f295?_0x201867(0x109)+_0x2c450b['id']+_0x201867(0x118):'Created\x20external\x20menu\x20'+_0x2c450b['id']+'.','data':{..._0x10d0d7,'recovered':_0x23f295}};}function externalLinkCreateFailure(_0x25ce52,_0x282b01,_0x2248f8){const _0x1bcd6a=a111_0x3e4ded;return menuFailure(safeMenuAddError(_0x25ce52),redactFailurePlan(_0x282b01),{..._0x2248f8,'succeeded':_0x2248f8[_0x1bcd6a(0x10c)]?.[_0x1bcd6a(0xc0)](redactFailureRecord),'failed':_0x2248f8[_0x1bcd6a(0x11d)]?redactFailureRecord(_0x2248f8[_0x1bcd6a(0x11d)]):undefined,'verification':_0x2248f8['verification']?redactFailureRecord(_0x2248f8[_0x1bcd6a(0xbc)]):undefined,'after':_0x2248f8[_0x1bcd6a(0xfd)]===undefined?undefined:redactFailureValue(_0x2248f8[_0x1bcd6a(0xfd)])});}function redactFailurePlan(_0x52e7cf){const _0x2418ae=a111_0x3e4ded;return{..._0x52e7cf,'selector':redactFailureRecord(_0x52e7cf['selector']),'before':redactFailureValue(_0x52e7cf['before']),'after':redactFailureValue(_0x52e7cf[_0x2418ae(0xfd)]),'plannedActions':_0x52e7cf[_0x2418ae(0xdc)]?.[_0x2418ae(0xc0)](_0x3a8360=>({..._0x3a8360,'body':redactFailureRecord(_0x3a8360[_0x2418ae(0xe8)])})),'succeeded':_0x52e7cf['succeeded'][_0x2418ae(0xc0)](redactFailureRecord),'failed':_0x52e7cf[_0x2418ae(0x11d)][_0x2418ae(0xc0)](redactFailureRecord),'verification':_0x52e7cf[_0x2418ae(0xbc)]?redactFailureRecord(_0x52e7cf[_0x2418ae(0xbc)]):undefined};}function redactFailureRecord(_0x3d14cc){return redactFailureValue(_0x3d14cc);}function redactFailureValue(_0x490637,_0x3719b4=''){const _0x2a0b6b=a111_0x3e4ded,_0x22b053=_0x3719b4[_0x2a0b6b(0xc3)]()[_0x2a0b6b(0x104)](/[^a-z0-9]/g,'');if([_0x2a0b6b(0x100),_0x2a0b6b(0x11a),_0x2a0b6b(0x113),_0x2a0b6b(0x10d)][_0x2a0b6b(0x110)](_0x22b053))return'<redacted>';if(Array[_0x2a0b6b(0xcc)](_0x490637))return _0x490637['map'](_0x322927=>redactFailureValue(_0x322927));if(_0x490637&&typeof _0x490637===_0x2a0b6b(0xb1))return Object[_0x2a0b6b(0x119)](Object[_0x2a0b6b(0x108)](_0x490637)[_0x2a0b6b(0xc0)](([_0x4fe342,_0x3dd8a9])=>[_0x4fe342,redactFailureValue(_0x3dd8a9,_0x4fe342)]));return _0x490637;}function safeMenuAddError(_0xbd4209){const _0x18ca73=a111_0x3e4ded,_0x2fb657=_0xbd4209 instanceof CliError?_0xbd4209[_0x18ca73(0x102)]:_0x18ca73(0x111);switch(_0x2fb657){case _0x18ca73(0xd9):return menuError(_0x2fb657,'Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.',_0x18ca73(0x10e));case _0x18ca73(0xca):return menuError(_0x2fb657,_0x18ca73(0xbe),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x18ca73(0x127):return menuError(_0x2fb657,_0x18ca73(0x10a),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x18ca73(0xe5):return menuError(_0x2fb657,_0x18ca73(0xd4),_0x18ca73(0xaa));case _0x18ca73(0xfe):return menuError(_0x2fb657,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x18ca73(0xab));case _0x18ca73(0x111):case _0x18ca73(0x116):case _0x18ca73(0xd0):case _0x18ca73(0x112):case'menu_sort_overflow':return menuError(_0x2fb657,'External\x20menu\x20creation\x20failed.',_0x18ca73(0xc5));default:return menuError(_0x18ca73(0x111),'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x17bcdc){const _0x1be9a7=a111_0x3e4ded;if(!(_0x17bcdc instanceof Error)||!(_0x1be9a7(0xd7)in _0x17bcdc))return undefined;const _0x4938ac=_0x17bcdc[_0x1be9a7(0xd7)];if(!_0x4938ac||typeof _0x4938ac!==_0x1be9a7(0xb1))return undefined;const _0x401187=_0x4938ac[_0x1be9a7(0x11d)];if(!Array[_0x1be9a7(0xcc)](_0x401187)||!_0x401187[0x0]||typeof _0x401187[0x0]!=='object')return undefined;return _0x401187[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_0xd9f9f0=a112_0x1794;(function(_0x3877ca,_0x26368b){const _0x1554a6=a112_0x1794,_0x2cdfa2=_0x3877ca();while(!![]){try{const _0x565560=-parseInt(_0x1554a6(0xfc))/0x1*(parseInt(_0x1554a6(0xf3))/0x2)+-parseInt(_0x1554a6(0xf1))/0x3+parseInt(_0x1554a6(0x103))/0x4+parseInt(_0x1554a6(0xcd))/0x5+-parseInt(_0x1554a6(0xf7))/0x6*(parseInt(_0x1554a6(0xec))/0x7)+-parseInt(_0x1554a6(0xdf))/0x8*(-parseInt(_0x1554a6(0xd7))/0x9)+parseInt(_0x1554a6(0xcf))/0xa;if(_0x565560===_0x26368b)break;else _0x2cdfa2['push'](_0x2cdfa2['shift']());}catch(_0x2d44ad){_0x2cdfa2['push'](_0x2cdfa2['shift']());}}}(a112_0x3f8e,0x3ba7e));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_0x1794(_0x2eff9e,_0x2d5534){_0x2eff9e=_0x2eff9e-0xb4;const _0x3f8e09=a112_0x3f8e();let _0x179442=_0x3f8e09[_0x2eff9e];return _0x179442;}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a112_0xd9f9f0(0xc6),'path':a112_0xd9f9f0(0xf2)}];export const menuExternalLinkUpdate={'service':'menu','command':'external-link-update','description':a112_0xd9f9f0(0xd6),'risk':a112_0xd9f9f0(0xd8),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a112_0xd9f9f0(0xcc),'type':a112_0xd9f9f0(0xea),'required':!![],'description':a112_0xd9f9f0(0x100)},{'name':a112_0xd9f9f0(0xc8),'type':a112_0xd9f9f0(0xea),'required':!![],'description':a112_0xd9f9f0(0xb8)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x43352b){validateInput(_0x43352b);},async 'dryRun'(_0x3bf8df){const _0x2b02e7=a112_0xd9f9f0;validateInput(_0x3bf8df);const _0x58ab05=await buildPlan(_0x3bf8df,!![]);return menuDryRunResult(_0x58ab05[_0x2b02e7(0x102)],{'method':'POST','url':'/smartapi/menu/update','body':_0x58ab05[_0x2b02e7(0xe6)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x58ab05[_0x2b02e7(0xe6)]['id']+'.'});},async 'execute'(_0x6bc6a9){const _0x7b473d=a112_0xd9f9f0;validateInput(_0x6bc6a9);const _0x40521b=await buildPlan(_0x6bc6a9,![]),{plan:_0x17b263,body:_0x3190a9,before:_0x5cbaec,noChanges:_0x36a1ba}=_0x40521b,_0x31678b=_0x3190a9['id'];if(_0x36a1ba)return updateSuccess(_0x17b263,_0x40521b[_0x7b473d(0xd2)],_0x5cbaec,!![],![]);await recheckMutationSnapshot(_0x6bc6a9,_0x17b263,_0x7b473d(0xb5),_0x31678b);try{await updateMenuEntity(_0x6bc6a9['appCode'],_0x6bc6a9[_0x7b473d(0xbe)],{'id':_0x3190a9['id'],'url':_0x3190a9[_0x7b473d(0xcc)]});}catch(_0x4024f4){const _0x1174d7=mapMenuApiError(_0x4024f4,_0x7b473d(0xb5),_0x31678b);if(isMenuResponseLoss(_0x4024f4)&&_0x1174d7[_0x7b473d(0xf9)]!==_0x7b473d(0xc2))return recoverAfterResponseLoss(_0x6bc6a9,_0x40521b);throw menuFailure(_0x1174d7,_0x17b263,{'stage':_0x7b473d(0xb7),'failed':{'id':_0x31678b},'warnings':[_0x7b473d(0x105)],'verification':{'status':'failed','targetId':_0x31678b,'lookupCommand':buildLookupCommand(_0x6bc6a9['appCode'])}});}let _0x34e48e,_0x136f96;try{_0x34e48e=await fetchMenuSnapshot(_0x6bc6a9[_0x7b473d(0xcb)],_0x6bc6a9[_0x7b473d(0xbe)]),_0x136f96=requireMenu(_0x34e48e,_0x31678b),verifyUpdatedFact(_0x5cbaec,_0x136f96,_0x3190a9[_0x7b473d(0xcc)]);}catch(_0x1bead2){const _0x2023e6=describeMenuErrorCause(_0x1bead2,_0x7b473d(0xf8),_0x31678b),_0x2d92ec=asVerificationError(_0x1bead2,_0x7b473d(0xe4)+_0x31678b+_0x7b473d(0xdd));throw menuFailure(_0x2d92ec,_0x17b263,{'stage':'verification','succeeded':[{'id':_0x31678b,'updateRequested':!![]}],'failed':{'id':_0x31678b,'requestedStateConfirmed':![],..._0x2023e6},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x7b473d(0xc9),'targetId':_0x31678b,'lookupCommand':buildLookupCommand(_0x6bc6a9[_0x7b473d(0xcb)])}});}return updateSuccess(_0x17b263,_0x34e48e,_0x136f96,![],![]);}};function validateInput(_0x2f8cb8){const _0x493ef4=a112_0xd9f9f0;validateExactId(_0x2f8cb8),requiredUrl(_0x2f8cb8,_0x493ef4(0xcc)),requiredExpectedUrl(_0x2f8cb8),parseParentId(_0x2f8cb8,_0x493ef4(0xb4),{'required':!![]});}function requiredUrl(_0x35b1fe,_0x5b94cc){const _0x554e5c=a112_0xd9f9f0;if(!hasFlag(_0x35b1fe,_0x5b94cc)||!_0x35b1fe[_0x554e5c(0xf0)](_0x5b94cc)[_0x554e5c(0xed)]())throw CliErrors[_0x554e5c(0xf4)](_0x5b94cc);return validateExternalMenuUrl(_0x35b1fe[_0x554e5c(0xf0)](_0x5b94cc));}function requiredExpectedUrl(_0x44d8f){const _0x29c4b0=a112_0xd9f9f0;if(!hasFlag(_0x44d8f,'expect-url')||!_0x44d8f[_0x29c4b0(0xf0)](_0x29c4b0(0xc8))['trim']())throw CliErrors['flagMissing']('expect-url');return _0x44d8f[_0x29c4b0(0xf0)](_0x29c4b0(0xc8))[_0x29c4b0(0xed)]();}function a112_0x3f8e(){const _0x5017eb=['954nULAHr','flagMissing','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','update-recovery','209766guGGkW','verify\x20external\x20menu\x20URL\x20update','code','visible','childrenCount','417Titgqj','sort','menu_external_link_type_required','hash','New\x20external\x20HTTPS\x20URL','iframe','plan','1146588YsiwtJ','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu_update_recovery_required','unknown','after','\x27\x5c\x27\x27','expect-parent-id','update\x20external\x20menu\x20URL','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','update','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','type','readbackFailed','path','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','cookie','\x20could\x20not\x20be\x20verified\x20safely','\x20already\x20matches\x20the\x20requested\x20URL.','menu_external_link_path_missing','menu_permission_denied','menu\x20list','\x20has\x20','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','POST','menu_external_link_not_leaf','expect-url','failed','link','appCode','url','934010odiQzD','Menu\x20','201440ayljxZ','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','external-link-update','snapshot','Response\x20was\x20lost\x20and\x20menu\x20','parentId','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','25785Oatuuu','write','requestedUrlObserved','\x20parent\x20changed:\x20expected\x20','rabetbase\x20menu\x20list\x20--appcode\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','Run\x20','936VXTYgY','\x20is\x20type\x20\x22','Updated\x20external\x20URL\x20for\x20menu\x20','label','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','Update\x20request\x20for\x20menu\x20','menu_state_drift','body','\x20has\x20an\x20empty\x20platform\x20path.',',\x20current\x20','update-external-link-url','string','replace','49yqJHVo','trim','\x20URL\x20update\x20did\x20not\x20take\x20effect.','get','str','422436ReyTrW','/smartapi/menu/update'];a112_0x3f8e=function(){return _0x5017eb;};return a112_0x3f8e();}async function buildPlan(_0x44fa81,_0x5333bb){const _0x297e72=a112_0xd9f9f0,_0x2c2772=validateExactId(_0x44fa81),_0x504a0f=requiredUrl(_0x44fa81,_0x297e72(0xcc)),_0x1a6933=requiredExpectedUrl(_0x44fa81),_0x42cc9b=parseParentId(_0x44fa81,_0x297e72(0xb4),{'required':!![]}),_0x252b23=await fetchMutationSnapshot(_0x44fa81,_0x297e72(0xb5),_0x2c2772),_0x2aeb6e=requireMenu(_0x252b23,_0x2c2772);assertExternalLinkLeaf(_0x2aeb6e);if(_0x2aeb6e[_0x297e72(0xd4)]!==_0x42cc9b)throw menuError('menu_state_drift','Menu\x20'+_0x2c2772+_0x297e72(0xda)+formatParent(_0x42cc9b)+_0x297e72(0xe8)+formatParent(_0x2aeb6e[_0x297e72(0xd4)])+'.',_0x297e72(0xdc));const _0x42a499=_0x2aeb6e[_0x297e72(0xcc)]===_0x504a0f;if(!_0x42a499&&_0x2aeb6e[_0x297e72(0xcc)]!==_0x1a6933)throw menuError(_0x297e72(0xe5),_0x297e72(0xce)+_0x2c2772+_0x297e72(0xb6),_0x297e72(0xbd));const _0x1e92a5={'id':_0x2c2772,'appCode':_0x44fa81[_0x297e72(0xcb)],'url':_0x504a0f},_0xee5c35={..._0x2aeb6e,'url':_0x504a0f};return{'body':_0x1e92a5,'before':_0x2aeb6e,'noChanges':_0x42a499,'snapshot':_0x252b23,'plan':mutationResult({'operation':_0x297e72(0xd1),'selector':{'id':_0x2c2772},'before':_0x2aeb6e,'after':_0xee5c35,'dryRun':_0x5333bb,'backend':[...BACKEND],'plannedActions':_0x42a499?[]:[{'stage':_0x297e72(0xe9),'method':_0x297e72(0xc6),'path':_0x297e72(0xf2),'body':_0x1e92a5}],'snapshotHash':_0x252b23[_0x297e72(0xff)],'warnings':_0x42a499?[_0x297e72(0xf5)]:[]})};}function assertExternalLinkLeaf(_0x48eeae){const _0x48cbdb=a112_0xd9f9f0;if(_0x48eeae[_0x48cbdb(0xb9)]!==_0x48cbdb(0x101)&&_0x48eeae[_0x48cbdb(0xb9)]!==_0x48cbdb(0xca))throw menuError(_0x48cbdb(0xfe),_0x48cbdb(0xce)+_0x48eeae['id']+_0x48cbdb(0xe0)+(_0x48eeae[_0x48cbdb(0xb9)]||_0x48cbdb(0x107))+'\x22,\x20not\x20iframe\x20or\x20link.',_0x48cbdb(0xbc));if(_0x48eeae['childrenCount']!==0x0)throw menuError(_0x48cbdb(0xc7),_0x48cbdb(0xce)+_0x48eeae['id']+_0x48cbdb(0xc4)+_0x48eeae[_0x48cbdb(0xfb)]+'\x20direct\x20child\x20menu(s).',_0x48cbdb(0xd0));if(!_0x48eeae[_0x48cbdb(0xbb)][_0x48cbdb(0xed)]())throw menuError(_0x48cbdb(0xc1),_0x48cbdb(0xce)+_0x48eeae['id']+_0x48cbdb(0xe7),_0x48cbdb(0x104));}function verifyUpdatedFact(_0x56d2ca,_0x1c9152,_0x2dbd16){const _0x39155e=a112_0xd9f9f0;assertExternalLinkLeaf(_0x1c9152);const _0x174b8e=[['id',_0x1c9152['id'],_0x56d2ca['id']],['label',_0x1c9152['label'],_0x56d2ca[_0x39155e(0xe2)]],[_0x39155e(0xb9),_0x1c9152['type'],_0x56d2ca['type']],[_0x39155e(0xbb),_0x1c9152[_0x39155e(0xbb)],_0x56d2ca[_0x39155e(0xbb)]],[_0x39155e(0xd4),_0x1c9152[_0x39155e(0xd4)],_0x56d2ca[_0x39155e(0xd4)]],[_0x39155e(0xfd),_0x1c9152[_0x39155e(0xfd)],_0x56d2ca[_0x39155e(0xfd)]],[_0x39155e(0xfa),_0x1c9152[_0x39155e(0xfa)],_0x56d2ca['visible']]];for(const [_0x19ac72,_0x43c566,_0x368810]of _0x174b8e){assertVerified(_0x43c566===_0x368810,_0x39155e(0xce)+_0x56d2ca['id']+'\x20'+_0x19ac72+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x1c9152['url']===_0x2dbd16,'Menu\x20'+_0x56d2ca['id']+_0x39155e(0xee));}function updateSuccess(_0x15d982,_0x1357db,_0x14dc6b,_0x104525,_0xffbc46){const _0xea7d29=a112_0xd9f9f0,_0x4e3b89=_0x14dc6b['id'],_0x5b3fe9=mutationResult({..._0x15d982,'after':_0x14dc6b,'dryRun':![],'succeeded':[{'id':_0x4e3b89,'updated':!_0x104525,'skipped':_0x104525,'recovered':_0xffbc46}],'verification':{'checkedBy':_0xea7d29(0xc3),'snapshotHash':_0x1357db[_0xea7d29(0xff)],'targetId':_0x4e3b89,'matchesRequestedState':!![],'recovered':_0xffbc46}});return{'ok':!![],'message':_0xffbc46?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x4e3b89+'.':_0x104525?_0xea7d29(0xce)+_0x4e3b89+_0xea7d29(0xc0):_0xea7d29(0xe1)+_0x4e3b89+'.','data':{..._0x5b3fe9,'recovered':_0xffbc46}};}async function recoverAfterResponseLoss(_0x3eba08,_0x4a39df){const _0xadfb2c=a112_0xd9f9f0,{plan:_0xed2c44,before:_0x33ac75,body:_0x112a64}=_0x4a39df;let _0x40ea31;try{_0x40ea31=await fetchMenuSnapshot(_0x3eba08[_0xadfb2c(0xcb)],_0x3eba08[_0xadfb2c(0xbe)]);}catch{throw recoveryRequired(_0xed2c44,_0x3eba08[_0xadfb2c(0xcb)],{'id':_0x112a64['id'],'readbackFailed':!![]});}const _0x5b0bd6=_0x40ea31['byId'][_0xadfb2c(0xef)](_0x112a64['id']);if(!_0x5b0bd6||_0x5b0bd6[_0xadfb2c(0xcc)]!==_0x112a64[_0xadfb2c(0xcc)])throw recoveryRequired(_0xed2c44,_0x3eba08['appCode'],{'id':_0x112a64['id'],'requestedUrlObserved':![],'after':_0x5b0bd6??null});try{verifyUpdatedFact(_0x33ac75,_0x5b0bd6,_0x112a64['url']);}catch(_0x595300){const _0x5a53dd=asVerificationError(_0x595300,_0xadfb2c(0xd3)+_0x112a64['id']+_0xadfb2c(0xbf));throw menuFailure(_0x5a53dd,_0xed2c44,{'stage':_0xadfb2c(0xf6),'succeeded':[{'id':_0x112a64['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x112a64['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x5b0bd6,'warnings':[_0xadfb2c(0xe3)],'verification':{'status':_0xadfb2c(0xc9),'targetId':_0x112a64['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x3eba08[_0xadfb2c(0xcb)])}});}return updateSuccess(_0xed2c44,_0x40ea31,_0x5b0bd6,![],!![]);}function recoveryRequired(_0x22a3fc,_0x3c3f67,_0x57437c){const _0x5cda7b=a112_0xd9f9f0,_0x5cb5f0=menuError(_0x5cda7b(0x106),_0x5cda7b(0xd5),_0x5cda7b(0xde)+buildLookupCommand(_0x3c3f67)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x5cb5f0,_0x22a3fc,{'stage':_0x5cda7b(0xf6),'failed':{'id':_0x57437c['id'],..._0x57437c[_0x5cda7b(0xd9)]===undefined?{}:{'requestedUrlObserved':_0x57437c['requestedUrlObserved']},..._0x57437c[_0x5cda7b(0xba)]?{'readbackFailed':!![]}:{}},'after':_0x57437c[_0x5cda7b(0x108)],'warnings':[_0x5cda7b(0xc5)],'verification':{'status':_0x5cda7b(0xc9),'targetId':_0x57437c['id'],..._0x57437c[_0x5cda7b(0xd9)]===undefined?{}:{'requestedUrlObserved':_0x57437c[_0x5cda7b(0xd9)]},..._0x57437c['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x3c3f67)}});}function buildLookupCommand(_0x4af91e){const _0x377b7a=a112_0xd9f9f0,_0x204b97='\x27'+_0x4af91e[_0x377b7a(0xeb)](/'/g,_0x377b7a(0x109))+'\x27';return _0x377b7a(0xdb)+_0x204b97+'\x20--format\x20compress';}
|
|
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
|
-
function a113_0x57d9(){const _0x53396a=['menu_create_response_invalid','cookie','menu\x20list','Created\x20folder\x20','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','\x20has\x20an\x20unexpected\x20sort.','label','POST',';\x20verify\x20it\x20before\x20retrying.','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','\x20has\x20resources.','<platform-generated>','Would\x20create\x20empty\x20folder\x20\x22','write','group-create','sort','parentId','trim','isSafeInteger','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','\x20has\x20an\x20unexpected\x20label.','flagMissing','31224sgJBXW','childrenCount','3436pewKkv','hash','26265967NWwpiZ','1281WvhrhI','get','\x20is\x20missing\x20from\x20menu\x20list.','12OmhyZN','menu','after','byId','Created\x20menu\x20folder\x20','appCode','create\x20folder','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','Created\x20menu\x20','rabetbase\x20menu\x20list\x20--format\x20json','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','visible','root','verify\x20folder\x20creation','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','resources','type','3108879DDuGVe','\x20is\x20not\x20empty.','391795TZAPSI','verification','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','path','27246WOIrxm','string','387FqvqvP','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','\x20has\x20unexpected\x20parent\x20','parent-id','Menu\x20create\x20response\x20for\x20folder\x20','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','failed','create','/smartapi/menu/create','\x20is\x20not\x20type\x20folder.','depth','Folder\x20label','folder','\x20may\x20exist\x20online\x20at\x20path\x20','2497biqEQp','20DpCImq','Folder\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','create-response-validation','80ymeAYu','45048bbtQTr','str'];a113_0x57d9=function(){return _0x53396a;};return a113_0x57d9();}const a113_0x2be8a4=a113_0x2cb3;(function(_0xa826ec,_0x27e810){const _0x523c9b=a113_0x2cb3,_0xeffcbf=_0xa826ec();while(!![]){try{const _0x385aa6=parseInt(_0x523c9b(0x18c))/0x1*(parseInt(_0x523c9b(0x177))/0x2)+-parseInt(_0x523c9b(0x179))/0x3*(-parseInt(_0x523c9b(0x159))/0x4)+parseInt(_0x523c9b(0x172))/0x5*(-parseInt(_0x523c9b(0x15f))/0x6)+parseInt(_0x523c9b(0x15c))/0x7*(-parseInt(_0x523c9b(0x1a5))/0x8)+-parseInt(_0x523c9b(0x170))/0x9*(parseInt(_0x523c9b(0x188))/0xa)+parseInt(_0x523c9b(0x187))/0xb*(-parseInt(_0x523c9b(0x18d))/0xc)+parseInt(_0x523c9b(0x15b))/0xd;if(_0x385aa6===_0x27e810)break;else _0xeffcbf['push'](_0xeffcbf['shift']());}catch(_0x3134ce){_0xeffcbf['push'](_0xeffcbf['shift']());}}}(a113_0x57d9,0xc50d3));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a113_0x2cb3(_0x151401,_0x1fafb8){_0x151401=_0x151401-0x158;const _0x57d97f=a113_0x57d9();let _0x2cb379=_0x57d97f[_0x151401];return _0x2cb379;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a113_0x2be8a4(0x181)}];export const menuGroupCreate={'service':a113_0x2be8a4(0x160),'command':a113_0x2be8a4(0x19d),'description':a113_0x2be8a4(0x166),'risk':a113_0x2be8a4(0x19c),'structuredErrors':!![],'flags':[{'name':a113_0x2be8a4(0x195),'type':a113_0x2be8a4(0x178),'required':!![],'description':a113_0x2be8a4(0x184)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x9b6773){validateCreateInput(_0x9b6773);},async 'dryRun'(_0x30d933){const _0x129ebb=a113_0x2be8a4,_0xee5a95=await buildCreatePlan(_0x30d933,!![]),_0x58a2ee=_0xee5a95[_0x129ebb(0x161)];return menuDryRunResult(_0xee5a95,{'method':_0x129ebb(0x196),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x58a2ee[_0x129ebb(0x19f)]),'label':_0x58a2ee[_0x129ebb(0x195)],'type':'folder','visible':!![],'sort':_0x58a2ee[_0x129ebb(0x19e)],'extend':{}},'description':_0x129ebb(0x19b)+String(_0x58a2ee[_0x129ebb(0x195)])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x3d16c0){const _0x3e8ec0=a113_0x2be8a4;validateCreateInput(_0x3d16c0);const _0x452e6f=await buildCreatePlan(_0x3d16c0,![]),_0x37ae49=_0x452e6f[_0x3e8ec0(0x161)];await recheckMutationSnapshot(_0x3d16c0,_0x452e6f,_0x3e8ec0(0x165));let _0x2a4216;try{_0x2a4216=await createMenuEntity(_0x3d16c0[_0x3e8ec0(0x164)],_0x3d16c0[_0x3e8ec0(0x190)],{'parentId':toApiParentId(_0x37ae49['parentId']),'label':String(_0x37ae49['label']),'type':_0x3e8ec0(0x185),'visible':!![],'sort':Number(_0x37ae49[_0x3e8ec0(0x19e)]),'extend':{}});}catch(_0x117794){const _0xa4316=mapMenuApiError(_0x117794,_0x3e8ec0(0x165));throw menuFailure(_0xa4316,_0x452e6f,{'stage':_0x3e8ec0(0x180),'failed':{}});}const _0x5461fa=Number(_0x2a4216['id']);if(!Number[_0x3e8ec0(0x1a1)](_0x5461fa)||_0x5461fa<=0x0){const _0x22e8ec=menuError('menu_create_response_invalid',_0x3e8ec0(0x17a),_0x3e8ec0(0x18a));throw menuFailure(_0x22e8ec,_0x452e6f,{'stage':_0x3e8ec0(0x18b),'failed':{'createdId':_0x2a4216['id']??null},'warnings':[_0x3e8ec0(0x16d)],'verification':{'status':_0x3e8ec0(0x17f),'lookupCommand':_0x3e8ec0(0x168)}});}const _0x12641a=typeof _0x2a4216['path']===_0x3e8ec0(0x178)?_0x2a4216[_0x3e8ec0(0x176)]:'';if(!_0x12641a[_0x3e8ec0(0x1a0)]()){const _0x589714=menuError(_0x3e8ec0(0x18f),_0x3e8ec0(0x17d)+_0x5461fa+_0x3e8ec0(0x198),_0x3e8ec0(0x175));throw menuFailure(_0x589714,_0x452e6f,{'stage':_0x3e8ec0(0x18b),'succeeded':[{'id':_0x5461fa,'created':!![]}],'failed':{'id':_0x5461fa,'generatedPathConfirmed':![]},'warnings':[_0x3e8ec0(0x189)+_0x5461fa+_0x3e8ec0(0x1a2)],'after':{..._0x37ae49,'id':_0x5461fa,'path':_0x12641a},'verification':{'status':_0x3e8ec0(0x17f),'lookupCommand':_0x3e8ec0(0x168),'targetId':_0x5461fa}});}let _0x20d0da;try{_0x20d0da=await fetchMenuSnapshot(_0x3d16c0[_0x3e8ec0(0x164)],_0x3d16c0[_0x3e8ec0(0x190)]);}catch(_0x40dfbe){const _0x27d0fb=describeMenuErrorCause(_0x40dfbe,_0x3e8ec0(0x16c),_0x5461fa),_0x4c1e9e=asVerificationError(_0x40dfbe,_0x3e8ec0(0x189)+_0x5461fa+_0x3e8ec0(0x17e));throw menuFailure(_0x4c1e9e,_0x452e6f,{'stage':_0x3e8ec0(0x173),'succeeded':[{'id':_0x5461fa,'created':!![],'path':_0x12641a}],'failed':{'id':_0x5461fa,'finalFactsConfirmed':![],..._0x27d0fb},'warnings':[_0x3e8ec0(0x189)+_0x5461fa+_0x3e8ec0(0x186)+JSON['stringify'](_0x12641a)+_0x3e8ec0(0x197)],'after':{..._0x37ae49,'id':_0x5461fa,'path':_0x12641a},'verification':{'status':'failed','lookupCommand':_0x3e8ec0(0x168),'targetId':_0x5461fa}});}const _0x4c9af7=_0x20d0da[_0x3e8ec0(0x162)][_0x3e8ec0(0x15d)](_0x5461fa);let _0x20abf5;try{assertVerified(Boolean(_0x4c9af7),_0x3e8ec0(0x192)+_0x5461fa+_0x3e8ec0(0x15e)),_0x20abf5=_0x4c9af7,assertVerified(_0x20abf5[_0x3e8ec0(0x16f)]==='folder',_0x3e8ec0(0x167)+_0x5461fa+_0x3e8ec0(0x182)),assertVerified(_0x20abf5[_0x3e8ec0(0x195)]===_0x37ae49['label'],_0x3e8ec0(0x192)+_0x5461fa+_0x3e8ec0(0x1a3)),assertVerified(_0x20abf5[_0x3e8ec0(0x176)]===_0x12641a&&Boolean(_0x20abf5['path'][_0x3e8ec0(0x1a0)]()),_0x3e8ec0(0x192)+_0x5461fa+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x20abf5[_0x3e8ec0(0x16a)]===!![],'Created\x20folder\x20'+_0x5461fa+'\x20is\x20not\x20visible.'),assertVerified(_0x20abf5[_0x3e8ec0(0x16e)]['length']===0x0,_0x3e8ec0(0x192)+_0x5461fa+_0x3e8ec0(0x199)),assertVerified(_0x20abf5[_0x3e8ec0(0x158)]===0x0,_0x3e8ec0(0x192)+_0x5461fa+_0x3e8ec0(0x171)),assertVerified(_0x20abf5['sort']===_0x37ae49['sort'],_0x3e8ec0(0x192)+_0x5461fa+_0x3e8ec0(0x194)),assertVerified(_0x20abf5[_0x3e8ec0(0x19f)]===_0x37ae49['parentId'],'Created\x20folder\x20'+_0x5461fa+_0x3e8ec0(0x17b)+(_0x20abf5[_0x3e8ec0(0x19f)]??_0x3e8ec0(0x16b))+'.'),assertVerified(_0x20abf5['pageId']==null,'Created\x20folder\x20'+_0x5461fa+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x4b3d27=_0x20abf5[_0x3e8ec0(0x19f)]==null?undefined:requireFolder(_0x20d0da,_0x20abf5['parentId']);assertVerified(_0x20abf5[_0x3e8ec0(0x183)]===(_0x4b3d27?_0x4b3d27[_0x3e8ec0(0x183)]+0x1:0x0),_0x3e8ec0(0x192)+_0x5461fa+_0x3e8ec0(0x174));}catch(_0x238d2e){const _0x519124=describeMenuErrorCause(_0x238d2e,_0x3e8ec0(0x16c),_0x5461fa),_0x2c9233=asVerificationError(_0x238d2e,'Folder\x20'+_0x5461fa+_0x3e8ec0(0x193));throw menuFailure(_0x2c9233,_0x452e6f,{'stage':_0x3e8ec0(0x173),'succeeded':[{'id':_0x5461fa,'created':!![],'path':_0x12641a}],'failed':{'id':_0x5461fa,'finalFactsConfirmed':![],..._0x519124},'warnings':[_0x3e8ec0(0x189)+_0x5461fa+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x4c9af7??{..._0x37ae49,'id':_0x5461fa,'path':_0x12641a},'verification':{'status':_0x3e8ec0(0x17f),'lookupCommand':_0x3e8ec0(0x168),'targetId':_0x5461fa}});}const _0x1ceefb=mutationResult({..._0x452e6f,'after':_0x20abf5,'dryRun':![],'succeeded':[{'id':_0x5461fa,'type':_0x3e8ec0(0x185),'path':_0x12641a}],'verification':{'checkedBy':_0x3e8ec0(0x191),'snapshotHash':_0x20d0da[_0x3e8ec0(0x15a)],'folder':!![],'path':_0x12641a,'emptyResources':!![]}});return{'ok':!![],'data':_0x1ceefb,'message':_0x3e8ec0(0x163)+_0x5461fa+'.'};}};function validateCreateInput(_0x17ca43){const _0xef069c=a113_0x2be8a4,_0x509a73=_0x17ca43[_0xef069c(0x18e)](_0xef069c(0x195))[_0xef069c(0x1a0)]();if(!_0x509a73)throw CliErrors[_0xef069c(0x1a4)](_0xef069c(0x195));parseParentId(_0x17ca43,_0xef069c(0x17c)),validateSort(_0x17ca43);}async function buildCreatePlan(_0x5d52af,_0x4109cc){const _0x4c45dd=a113_0x2be8a4,_0x331c4f=await fetchMutationSnapshot(_0x5d52af,_0x4c45dd(0x165)),_0x1abf63=parseParentId(_0x5d52af,_0x4c45dd(0x17c))??null;if(_0x1abf63!=null)requireFolder(_0x331c4f,_0x1abf63);const _0x3eb14f=validateSort(_0x5d52af),_0x3724f2=_0x3eb14f??nextSiblingSort(_0x331c4f,_0x1abf63,_0x4c45dd(0x185)),_0x2f9c62=_0x5d52af[_0x4c45dd(0x18e)]('label')[_0x4c45dd(0x1a0)]();return mutationResult({'operation':_0x4c45dd(0x19d),'selector':{'label':_0x2f9c62,'parentId':_0x1abf63},'before':null,'after':{'id':null,'parentId':_0x1abf63,'label':_0x2f9c62,'path':_0x4c45dd(0x19a),'type':_0x4c45dd(0x185),'visible':!![],'sort':_0x3724f2,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x4109cc,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':_0x4c45dd(0x196),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x1abf63),'label':_0x2f9c62,'type':'folder','visible':!![],'sort':_0x3724f2,'extend':{}}}],'snapshotHash':_0x331c4f[_0x4c45dd(0x15a)],'warnings':[_0x4c45dd(0x169)]});}
|
|
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
|
-
|
|
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
|
-
const
|
|
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
|
-
const
|
|
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_0x2437e2=a118_0x3d2e;(function(_0x1dca58,_0x319949){const _0x14b6ec=a118_0x3d2e,_0x510bba=_0x1dca58();while(!![]){try{const _0xc6745e=-parseInt(_0x14b6ec(0x13f))/0x1*(parseInt(_0x14b6ec(0x17c))/0x2)+-parseInt(_0x14b6ec(0x126))/0x3*(parseInt(_0x14b6ec(0x146))/0x4)+-parseInt(_0x14b6ec(0x180))/0x5+parseInt(_0x14b6ec(0x15c))/0x6*(-parseInt(_0x14b6ec(0x154))/0x7)+-parseInt(_0x14b6ec(0x176))/0x8*(-parseInt(_0x14b6ec(0x16d))/0x9)+-parseInt(_0x14b6ec(0x14f))/0xa*(-parseInt(_0x14b6ec(0x15d))/0xb)+-parseInt(_0x14b6ec(0x13c))/0xc*(-parseInt(_0x14b6ec(0x159))/0xd);if(_0xc6745e===_0x319949)break;else _0x510bba['push'](_0x510bba['shift']());}catch(_0x43a591){_0x510bba['push'](_0x510bba['shift']());}}}(a118_0x33c5,0xde47e));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';function a118_0x3d2e(_0x692393,_0x5d13b4){_0x692393=_0x692393-0x123;const _0x33c51c=a118_0x33c5();let _0x3d2e29=_0x33c51c[_0x692393];return _0x3d2e29;}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a118_0x2437e2(0x130),'path':a118_0x2437e2(0x12a)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a118_0x2437e2(0x13a),'command':'regroup-start','description':a118_0x2437e2(0x13b),'risk':'write','structuredErrors':!![],'flags':[{'name':'label','type':a118_0x2437e2(0x128),'required':!![],'description':a118_0x2437e2(0x152)},{'name':a118_0x2437e2(0x162),'type':a118_0x2437e2(0x128),'required':!![],'description':a118_0x2437e2(0x134)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3d1f93){validateRegroupInput(_0x3d1f93);},async 'dryRun'(_0x4264ed){const _0x57ee47=a118_0x2437e2;validateRegroupInput(_0x4264ed);const _0x28d742=await buildRegroupPlan(_0x4264ed,!![]);return menuDryRunResult(_0x28d742[_0x57ee47(0x181)],{'method':_0x57ee47(0x130),'url':_0x57ee47(0x12a),'body':_0x28d742['input'],'description':_0x57ee47(0x15b)+JSON[_0x57ee47(0x17d)](_0x28d742['label'])+'\x20and\x20regroup\x20menu\x20ids\x20'+_0x28d742[_0x57ee47(0x16c)][_0x57ee47(0x17b)](',\x20')+_0x57ee47(0x15a)});},async 'execute'(_0x1a7ff3){const _0xc96bb=a118_0x2437e2;validateRegroupInput(_0x1a7ff3);const _0x7c003c=await buildRegroupPlan(_0x1a7ff3,![]);await recheckMutationSnapshot(_0x1a7ff3,_0x7c003c[_0xc96bb(0x181)],_0xc96bb(0x170));const _0x8559a=buildMenuLookupCommand(_0x1a7ff3[_0xc96bb(0x172)]);let _0x4c82a0,_0x36dcbe;try{_0x4c82a0=await startMenuRegroup(_0x1a7ff3[_0xc96bb(0x165)],_0x7c003c[_0xc96bb(0x163)]),_0x36dcbe=normalizeAsyncTask(_0x4c82a0);}catch(_0x153590){const _0x3bd127=await inspectRegroupAfterFailure(_0x1a7ff3[_0xc96bb(0x172)],_0x1a7ff3[_0xc96bb(0x165)],_0x7c003c['label'],_0x7c003c[_0xc96bb(0x16c)]),_0x4cb328=typeof _0x4c82a0?.['taskId']===_0xc96bb(0x128)&&_0x4c82a0['taskId']['trim']()?_0x4c82a0[_0xc96bb(0x150)]['trim']():null,_0x1c3d89=_0x4cb328?{'command':buildAsyncTaskStatusCommand(_0x4cb328,_0x1a7ff3[_0xc96bb(0x172)])}:null,_0x1f7e0b=mapMenuApiError(_0x153590,_0xc96bb(0x13d));throw menuFailure(_0x1f7e0b,_0x7c003c['plan'],{'stage':_0xc96bb(0x12e),'failed':{'menuIds':_0x7c003c['menuIds'],'taskId':_0x4cb328,'groupingApplied':_0x3bd127['applied']?!![]:'unconfirmed'},'after':_0x3bd127[_0xc96bb(0x144)]??null,'warnings':['The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.',..._0x3bd127[_0xc96bb(0x149)]?[_0xc96bb(0x171)+_0x3bd127['readbackError']]:[],..._0x4cb328?[_0xc96bb(0x136)]:[]],'verification':{'status':_0xc96bb(0x133),'groupingApplied':_0x3bd127['applied']?!![]:_0xc96bb(0x161),'taskId':_0x4cb328,'query':_0x1c3d89,'lookupCommand':_0x8559a}});}const _0x2eb6b7=buildAsyncTaskStatusCommand(_0x36dcbe[_0xc96bb(0x150)],_0x1a7ff3['appCode']);let _0x2066ca=null,_0x5e016d=null,_0xb1ebed=null;try{_0x2066ca=await fetchMenuSnapshot(_0x1a7ff3['appCode'],_0x1a7ff3[_0xc96bb(0x165)]),_0x5e016d=findAppliedRegroup(_0x2066ca,_0x7c003c[_0xc96bb(0x139)],_0x7c003c[_0xc96bb(0x16c)]);}catch(_0x40f0de){_0xb1ebed=_0x40f0de instanceof Error?_0x40f0de[_0xc96bb(0x123)]:String(_0x40f0de);}const _0xd1fbde=mutationResult({..._0x7c003c[_0xc96bb(0x181)],'after':_0x5e016d??null,'dryRun':![],'succeeded':[{'groupId':_0x5e016d?.[_0xc96bb(0x158)]['id']??null,'menuIds':_0x7c003c['menuIds'],'taskId':_0x36dcbe['taskId'],'status':_0x36dcbe[_0xc96bb(0x145)],'groupingApplied':_0x5e016d?!![]:'unconfirmed'}],'verification':{'checkedBy':_0xc96bb(0x131),'snapshotHash':_0x2066ca?.[_0xc96bb(0x15f)]??null,'groupId':_0x5e016d?.[_0xc96bb(0x158)]['id']??null,'groupingApplied':_0x5e016d?!![]:_0xc96bb(0x161),'readbackError':_0xb1ebed,'lookupCommand':_0x8559a},'warnings':[..._0x7c003c[_0xc96bb(0x181)][_0xc96bb(0x156)],...!_0x5e016d?[unconfirmedRegroupWarning(_0x36dcbe)]:[],..._0xb1ebed?['Regroup\x20readback\x20failed:\x20'+_0xb1ebed]:[]]}),_0x51b4e3=_0x36dcbe[_0xc96bb(0x145)]===_0xc96bb(0x132)&&!_0x5e016d?'Regroup\x20task\x20'+_0x36dcbe['taskId']+_0xc96bb(0x124):_0xc96bb(0x178)+asyncTaskMessage(_0x36dcbe);return{'ok':!![],'message':_0x51b4e3,'data':{..._0xd1fbde,'task':_0x36dcbe,'query':_0x36dcbe['isTerminal']?null:{'command':_0x2eb6b7}}};}};function validateRegroupInput(_0x4aa80c){const _0x145f4f=a118_0x2437e2;if(!_0x4aa80c[_0x145f4f(0x14e)](_0x145f4f(0x139))[_0x145f4f(0x14a)]())throw CliErrors[_0x145f4f(0x135)](_0x145f4f(0x139));parseMenuIds(_0x4aa80c['str'](_0x145f4f(0x162)));}function parseMenuIds(_0x3de8ff){const _0x5f1fcd=a118_0x2437e2,_0x45b7bc=_0x3de8ff[_0x5f1fcd(0x151)](',')[_0x5f1fcd(0x14b)](_0x734859=>_0x734859[_0x5f1fcd(0x14a)]());if(_0x45b7bc[_0x5f1fcd(0x179)]===0x0||_0x45b7bc['some'](_0x70236=>!_0x70236))throw CliErrors[_0x5f1fcd(0x16a)](_0x5f1fcd(0x168));const _0x2ec2c4=_0x45b7bc[_0x5f1fcd(0x14b)](_0x2af77c=>{const _0x842586=_0x5f1fcd;if(!/^\d+$/[_0x842586(0x147)](_0x2af77c))throw CliErrors['validation'](_0x842586(0x168));const _0x1cd9ad=Number(_0x2af77c);if(!Number[_0x842586(0x16e)](_0x1cd9ad)||_0x1cd9ad<=0x0)throw CliErrors[_0x842586(0x16a)](_0x842586(0x168));return _0x1cd9ad;});if(new Set(_0x2ec2c4)['size']!==_0x2ec2c4[_0x5f1fcd(0x179)])throw CliErrors[_0x5f1fcd(0x16a)]('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x2ec2c4[_0x5f1fcd(0x179)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x5f1fcd(0x16a)](_0x5f1fcd(0x173)+MAX_REGROUP_MENU_COUNT+'\x20menus\x20per\x20regroup\x20request.');return _0x2ec2c4;}function buildMenuLookupCommand(_0x19d8ce){const _0x221eba=a118_0x2437e2,_0x3b6638='\x27'+_0x19d8ce[_0x221eba(0x142)](/'/g,_0x221eba(0x14d))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x3b6638+_0x221eba(0x175);}function unconfirmedRegroupWarning(_0x6546d0){const _0x27ca56=a118_0x2437e2;if(_0x6546d0[_0x27ca56(0x145)]===_0x27ca56(0x132))return _0x27ca56(0x125);if(_0x6546d0[_0x27ca56(0x145)]==='FAILED')return'The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x6546d0[_0x27ca56(0x153)])return _0x27ca56(0x143);return _0x27ca56(0x12d);}async function buildRegroupPlan(_0xb39605,_0x5c958c){const _0x5122eb=a118_0x2437e2,_0x169350=_0xb39605[_0x5122eb(0x14e)]('label')['trim'](),_0x2d8094=parseMenuIds(_0xb39605[_0x5122eb(0x14e)](_0x5122eb(0x162))),_0x28e42d=await fetchMutationSnapshot(_0xb39605,'plan\x20regroup'),_0x511431=_0x2d8094[_0x5122eb(0x14b)](_0x5dc91b=>requireMenu(_0x28e42d,_0x5dc91b));for(const _0x5032d3 of _0x511431){if(_0x5032d3['type'][_0x5122eb(0x14a)]()[_0x5122eb(0x138)]()===_0x5122eb(0x13e)||_0x5032d3[_0x5122eb(0x16b)]>0x0)throw menuError(_0x5122eb(0x17e),'Menu\x20'+_0x5032d3['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',_0x5122eb(0x148));if(!_0x5032d3['label'][_0x5122eb(0x14a)]())throw menuError(_0x5122eb(0x141),_0x5122eb(0x15e)+_0x5032d3['id']+_0x5122eb(0x129),'Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.');}const _0x4227bf=findAppliedRegroup(_0x28e42d,_0x169350,_0x2d8094);if(_0x4227bf)throw menuError(_0x5122eb(0x137),'Menus\x20'+_0x2d8094['join'](',\x20')+_0x5122eb(0x127)+_0x4227bf[_0x5122eb(0x158)]['id']+'\x20('+JSON[_0x5122eb(0x17d)](_0x169350)+').',_0x5122eb(0x167));const _0xd7f193=_0x28e42d[_0x5122eb(0x12c)]['filter'](_0x4c8e46=>_0x4c8e46[_0x5122eb(0x16f)]==null&&_0x4c8e46['type'][_0x5122eb(0x14a)]()[_0x5122eb(0x138)]()===_0x5122eb(0x13e)&&_0x4c8e46['label']===_0x169350);if(_0xd7f193[_0x5122eb(0x179)]>0x0)throw menuError(_0x5122eb(0x169),_0x5122eb(0x174)+JSON[_0x5122eb(0x17d)](_0x169350)+_0x5122eb(0x17a)+_0xd7f193[_0x5122eb(0x14b)](_0xdc250c=>_0xdc250c['id'])[_0x5122eb(0x17b)](',\x20')+'.',_0x5122eb(0x164));const _0x1badd6={'appCode':_0xb39605[_0x5122eb(0x172)],'menuGroups':[{'label':_0x169350,'type':_0x5122eb(0x13e),'children':_0x511431['map'](_0x461407=>({'id':_0x461407['id'],'label':_0x461407['label']}))}]},_0xc23822=mutationResult({'operation':'regroup-start','selector':{'label':_0x169350,'menuIds':_0x2d8094},'before':{'menus':_0x511431},'after':{'group':{'id':null,'parentId':null,'label':_0x169350,'path':_0x5122eb(0x157),'type':'folder','childrenIds':_0x2d8094},'children':_0x511431[_0x5122eb(0x14b)](_0x23520d=>({'id':_0x23520d['id'],'label':_0x23520d[_0x5122eb(0x139)],'beforeParentId':_0x23520d[_0x5122eb(0x16f)],'afterParentId':'<new-group-id>'}))},'dryRun':_0x5c958c,'backend':[...BACKEND],'plannedActions':[{'stage':_0x5122eb(0x160),'method':_0x5122eb(0x130),'path':'/smartapi/menu/regroup','body':_0x1badd6}],'snapshotHash':_0x28e42d[_0x5122eb(0x15f)],'warnings':[_0x5122eb(0x155),_0x5122eb(0x140)]});return{'label':_0x169350,'menuIds':_0x2d8094,'input':_0x1badd6,'plan':_0xc23822};}function a118_0x33c5(){const _0x4b38f8=['/smartapi/menu/regroup','type','menus','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','regroup-submit','byId','POST','menu\x20list','SUCCESS','failed','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','flagMissing','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','menu_regroup_already_applied','toLowerCase','label','menu','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','24TGlqUY','start\x20menu\x20regroup','folder','924791PVswBD','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','menu_regroup_target_label_missing','replace','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','applied','status','4DEMTdx','test','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','readbackError','trim','map','some','\x27\x5c\x27\x27','str','298730yoJSZP','taskId','split','Label\x20of\x20the\x20new\x20root\x20folder','knownStatus','1008MczwAE','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','warnings','<platform-generated>','group','8326903APckzU',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','25920tugboP','473cTpruM','Menu\x20','hash','submit-regroup-task','unconfirmed','menu-ids','input','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','cookie','childrenIds','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','menu_regroup_label_conflict','validation','childrenCount','menuIds','1719cKXnRH','isSafeInteger','parentId','start\x20regroup','Regroup\x20readback\x20also\x20failed:\x20','appCode','--menu-ids\x20supports\x20at\x20most\x20','Root\x20folder\x20label\x20','\x20--format\x20compress','49048nfUtFL','sort','Regroup\x20task\x20accepted.\x20','length','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','join','2CHecoh','stringify','menu_regroup_target_not_leaf','get','3260975MfdSPe','plan','message','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','1881282EysYst','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','string','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.'];a118_0x33c5=function(){return _0x4b38f8;};return a118_0x33c5();}function findAppliedRegroup(_0xa73eb3,_0x3c9433,_0x175b6c){const _0x2f8998=a118_0x2437e2,_0x4fe489=_0x175b6c['map'](_0x19833d=>_0xa73eb3[_0x2f8998(0x12f)][_0x2f8998(0x17f)](_0x19833d))['filter'](_0x2448f6=>Boolean(_0x2448f6));if(_0x4fe489['length']!==_0x175b6c[_0x2f8998(0x179)])return null;const _0x426d15=_0x4fe489[0x0]?.[_0x2f8998(0x16f)];if(_0x426d15==null||_0x4fe489[_0x2f8998(0x14c)](_0x156a55=>_0x156a55['parentId']!==_0x426d15))return null;const _0xdb50a6=_0xa73eb3[_0x2f8998(0x12f)][_0x2f8998(0x17f)](_0x426d15);if(!_0xdb50a6||_0xdb50a6[_0x2f8998(0x16f)]!=null||_0xdb50a6[_0x2f8998(0x12b)][_0x2f8998(0x14a)]()[_0x2f8998(0x138)]()!==_0x2f8998(0x13e)||_0xdb50a6[_0x2f8998(0x139)]!==_0x3c9433)return null;const _0x1346ba=[..._0x175b6c][_0x2f8998(0x177)]((_0x27cc9f,_0x22fbf9)=>_0x27cc9f-_0x22fbf9),_0x5c615f=[..._0xdb50a6[_0x2f8998(0x166)]][_0x2f8998(0x177)]((_0x477d21,_0x2af959)=>_0x477d21-_0x2af959);if(JSON['stringify'](_0x5c615f)!==JSON[_0x2f8998(0x17d)](_0x1346ba))return null;return{'group':_0xdb50a6,'children':_0x4fe489};}async function inspectRegroupAfterFailure(_0x19c0b6,_0x151d3e,_0x2f0e7e,_0x4ca2c0){try{const _0x5965b7=await fetchMenuSnapshot(_0x19c0b6,_0x151d3e);return{'applied':findAppliedRegroup(_0x5965b7,_0x2f0e7e,_0x4ca2c0),'readbackError':null};}catch(_0x23348e){return{'applied':null,'readbackError':_0x23348e instanceof Error?_0x23348e['message']:String(_0x23348e)};}}
|
|
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)};}}
|