@lovrabet/rabetbase-cli 2.4.6 → 2.4.7-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.d.ts +2 -0
- package/lib/commands/kb/search.js +1 -0
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +16 -0
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +4 -4
- package/skills/rabetbase/references/rabetbase-kb.md +13 -3
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
function a112_0x1107(_0xf3b362,_0x135f63){_0xf3b362=_0xf3b362-0x19e;const _0xd308a0=a112_0xd308();let _0x1107df=_0xd308a0[_0xf3b362];return _0x1107df;}const a112_0x214841=a112_0x1107;(function(_0x2295a9,_0x109104){const _0x392b66=a112_0x1107,_0x5f018d=_0x2295a9();while(!![]){try{const _0x5c319a=parseInt(_0x392b66(0x1a2))/0x1+-parseInt(_0x392b66(0x21f))/0x2+parseInt(_0x392b66(0x1a0))/0x3*(parseInt(_0x392b66(0x1bd))/0x4)+-parseInt(_0x392b66(0x1ec))/0x5+-parseInt(_0x392b66(0x1ee))/0x6+-parseInt(_0x392b66(0x1aa))/0x7*(parseInt(_0x392b66(0x1b7))/0x8)+parseInt(_0x392b66(0x21d))/0x9;if(_0x5c319a===_0x109104)break;else _0x5f018d['push'](_0x5f018d['shift']());}catch(_0x577e3b){_0x5f018d['push'](_0x5f018d['shift']());}}}(a112_0xd308,0x1af92));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':a112_0x214841(0x219)};export function validateExternalMenuUrl(_0x4f22aa){const _0x33c9a0=a112_0x214841,_0x1b4cfd=_0x4f22aa[_0x33c9a0(0x1a9)]();let _0x3a50e7;try{_0x3a50e7=new URL(_0x1b4cfd);}catch{throw menuError(_0x33c9a0(0x201),_0x33c9a0(0x19f),'Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x3a50e7[_0x33c9a0(0x1b6)]!==_0x33c9a0(0x19e))throw menuError(_0x33c9a0(0x1e3),_0x33c9a0(0x1f9),'Provide\x20an\x20HTTPS\x20URL.');if(_0x3a50e7['username']||_0x3a50e7['password'])throw menuError(_0x33c9a0(0x21b),_0x33c9a0(0x1de),_0x33c9a0(0x1d3));return _0x1b4cfd;}export const menuExternalLinkCreate={'service':'menu','command':a112_0x214841(0x1b1),'description':a112_0x214841(0x1be),'risk':a112_0x214841(0x1a5),'structuredErrors':!![],'flags':[{'name':a112_0x214841(0x1e5),'type':a112_0x214841(0x1cb),'required':!![],'description':'Menu\x20label'},{'name':'open-mode','type':'string','required':!![],'enum':['embedded',a112_0x214841(0x20b)],'description':a112_0x214841(0x1b4)},{'name':'url','type':a112_0x214841(0x1cb),'required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a112_0x214841(0x225),'type':a112_0x214841(0x1f3),'default':!![],'description':a112_0x214841(0x20d)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x57318b){validateAddInput(_0x57318b);},async 'dryRun'(_0x237aa7){const _0x24ed3c=a112_0x214841;validateAddInput(_0x237aa7);const {plan:_0x3dd574}=await buildSafeAddPlan(_0x237aa7,!![]),_0x9d95a4=_0x3dd574[_0x24ed3c(0x204)],_0x38003b=createBody(_0x9d95a4);return menuDryRunResult(_0x3dd574,{'method':_0x24ed3c(0x203),'url':_0x24ed3c(0x1b3),'body':_0x38003b,'description':_0x24ed3c(0x1af)+JSON['stringify'](_0x9d95a4[_0x24ed3c(0x1e5)])+_0x24ed3c(0x1fd)+_0x237aa7['str'](_0x24ed3c(0x1e6))+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x1b5979){const _0x45bd3b=a112_0x214841;validateAddInput(_0x1b5979);const _0x4f65de=await buildSafeAddPlan(_0x1b5979,![]),{plan:_0x188422,snapshot:_0x1189ef}=_0x4f65de,_0x47a5b9=_0x188422[_0x45bd3b(0x204)],_0xfea3a5=buildMenuLookupCommand(_0x1b5979[_0x45bd3b(0x215)]);await recheckAddSnapshot(_0x1b5979,_0x188422);let _0x1b9016;try{_0x1b9016=await createMenuEntity(_0x1b5979[_0x45bd3b(0x215)],_0x1b5979[_0x45bd3b(0x21a)],createBody(_0x47a5b9));}catch(_0x535412){const _0x5760ac=mapMenuApiError(_0x535412,_0x45bd3b(0x210));if(!isMenuResponseLoss(_0x535412)||_0x5760ac['code']===_0x45bd3b(0x200))throw externalLinkCreateFailure(_0x5760ac,_0x188422,{'stage':_0x45bd3b(0x1e1),'failed':{},'verification':{'status':_0x45bd3b(0x1f6),'lookupCommand':_0xfea3a5}});return recoverAfterResponseLoss(_0x1b5979,_0x4f65de,_0xfea3a5);}const _0x46f801=Number(_0x1b9016?.['id']),_0x4b9474=typeof _0x1b9016?.[_0x45bd3b(0x213)]===_0x45bd3b(0x1cb)?_0x1b9016[_0x45bd3b(0x213)]:'';if(!Number['isSafeInteger'](_0x46f801)||_0x46f801<=0x0||!_0x4b9474['trim']()){const _0x49771b=menuError(_0x45bd3b(0x1bf),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.',_0x45bd3b(0x1d1)+_0xfea3a5+_0x45bd3b(0x1d0));throw externalLinkCreateFailure(_0x49771b,_0x188422,{'stage':_0x45bd3b(0x20f),'succeeded':Number[_0x45bd3b(0x20c)](_0x46f801)&&_0x46f801>0x0?[{'id':_0x46f801,'created':!![]}]:[],'failed':{'createdId':Number[_0x45bd3b(0x20c)](_0x46f801)?_0x46f801:null,'generatedPathConfirmed':Boolean(_0x4b9474[_0x45bd3b(0x1a9)]())},'warnings':[_0x45bd3b(0x1a1)],'after':Number['isSafeInteger'](_0x46f801)&&_0x46f801>0x0?{..._0x47a5b9,'id':_0x46f801,'path':_0x4b9474}:_0x47a5b9,'verification':{'status':_0x45bd3b(0x1f6),'lookupCommand':_0xfea3a5,...Number['isSafeInteger'](_0x46f801)&&_0x46f801>0x0?{'targetId':_0x46f801}:{}}});}const _0xdccb83=await readAndVerifyCreatedMenu({'appCode':_0x1b5979[_0x45bd3b(0x215)],'cookie':_0x1b5979[_0x45bd3b(0x21a)],'plan':_0x188422,'afterPlan':_0x47a5b9,'createdId':_0x46f801,'expectedPath':_0x4b9474,'lookupCommand':_0xfea3a5,'recovered':![]});return creationSuccess(_0x188422,_0xdccb83['snapshot'],_0xdccb83[_0x45bd3b(0x1ef)],![]);}};function validateAddInput(_0x307026){const _0x37d1a1=a112_0x214841;if(!_0x307026[_0x37d1a1(0x20a)](_0x37d1a1(0x1e5))['trim']())throw CliErrors[_0x37d1a1(0x214)](_0x37d1a1(0x1e5));resolveExternalMenuType(_0x307026),validateExternalMenuUrl(_0x307026[_0x37d1a1(0x20a)]('url')),parseParentId(_0x307026,'parent-id'),validateSort(_0x307026);}function resolveExternalMenuType(_0x4c2b1f){const _0x791153=a112_0x214841,_0x2bbba2=_0x4c2b1f[_0x791153(0x20a)](_0x791153(0x1e6))[_0x791153(0x1a9)]();if(!_0x2bbba2)throw CliErrors[_0x791153(0x214)](_0x791153(0x1e6));const _0x5bd0dc=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x2bbba2];if(!_0x5bd0dc)throw menuError('menu_open_mode_invalid',_0x791153(0x221),_0x791153(0x1ba));return _0x5bd0dc;}async function buildAddPlan(_0x13a56d,_0x410ce8){const _0x14e70b=a112_0x214841,_0xa5655e=await fetchMutationSnapshot(_0x13a56d,_0x14e70b(0x210)),_0x48da9b=parseParentId(_0x13a56d,_0x14e70b(0x1f7))??null;if(_0x48da9b!=null)requireFolder(_0xa5655e,_0x48da9b);const _0x1ad4e0=validateSort(_0x13a56d),_0x2b477f=_0x1ad4e0??nextSiblingSort(_0xa5655e,_0x48da9b,_0x14e70b(0x1b2)),_0x1c971c=_0x13a56d[_0x14e70b(0x20a)]('label')[_0x14e70b(0x1a9)](),_0x1668fa=resolveExternalMenuType(_0x13a56d),_0x17558a=validateExternalMenuUrl(_0x13a56d['str'](_0x14e70b(0x1b0))),_0x31826c=Object[_0x14e70b(0x1b9)][_0x14e70b(0x1c5)][_0x14e70b(0x1c0)](_0x13a56d[_0x14e70b(0x1ea)],_0x14e70b(0x225))?_0x13a56d[_0x14e70b(0x211)](_0x14e70b(0x225)):!![],_0x5272d6={'id':null,'parentId':_0x48da9b,'label':_0x1c971c,'path':_0x14e70b(0x1f4),'url':_0x17558a,'type':_0x1668fa,'visible':_0x31826c,'sort':_0x2b477f},_0x463d38=buildMenuLookupCommand(_0x13a56d[_0x14e70b(0x215)]),_0x3cefe0=mutationResult({'operation':'add','selector':{'parentId':_0x48da9b,'type':_0x1668fa,'label':_0x1c971c,'url':_0x17558a},'before':null,'after':_0x5272d6,'dryRun':_0x410ce8,'backend':[{'method':_0x14e70b(0x203),'path':_0x14e70b(0x1b3)}],'plannedActions':[{'stage':_0x14e70b(0x1ff),'method':_0x14e70b(0x203),'path':'/smartapi/menu/create','body':createBody(_0x5272d6)}],'snapshotHash':_0xa5655e[_0x14e70b(0x21e)],'warnings':[_0x14e70b(0x1f1)],'verification':{'lookupCommand':_0x463d38}});return{'plan':_0x3cefe0,'snapshot':_0xa5655e};}async function buildSafeAddPlan(_0x1915ef,_0xea6a7c){try{return await buildAddPlan(_0x1915ef,_0xea6a7c);}catch(_0x5569c3){throw safeMenuAddError(_0x5569c3);}}async function recheckAddSnapshot(_0x3e13a7,_0x468c87){const _0xdd8d27=a112_0x214841;try{await recheckMutationSnapshot(_0x3e13a7,_0x468c87,'create\x20external\x20menu');}catch(_0x67720f){const _0x376110=getFailureRecord(_0x67720f);throw externalLinkCreateFailure(_0x67720f,_0x468c87,{'stage':_0xdd8d27(0x218),'failed':{..._0x376110?.[_0xdd8d27(0x21c)]?{'expectedSnapshotHash':_0x376110[_0xdd8d27(0x21c)]}:{},..._0x376110?.['currentSnapshotHash']?{'currentSnapshotHash':_0x376110['currentSnapshotHash']}:{}}});}}function createBody(_0x37dc0f){const _0xbecfdf=a112_0x214841;return{'parentId':toApiParentId(_0x37dc0f[_0xbecfdf(0x1ab)]),'label':String(_0x37dc0f[_0xbecfdf(0x1e5)]),'type':String(_0x37dc0f[_0xbecfdf(0x1a4)]),'url':String(_0x37dc0f['url']),'visible':Boolean(_0x37dc0f[_0xbecfdf(0x225)]),'sort':Number(_0x37dc0f[_0xbecfdf(0x1eb)]),'extend':{}};}function buildMenuLookupCommand(_0x2f547f){const _0x5d6b3d=a112_0x214841,_0x563006='\x27'+_0x2f547f[_0x5d6b3d(0x209)](/'/g,_0x5d6b3d(0x1fb))+'\x27';return _0x5d6b3d(0x1e4)+_0x563006+_0x5d6b3d(0x1d7);}async function recoverAfterResponseLoss(_0x363b77,_0x41c738,_0x29e62d){const _0x5f4617=a112_0x214841,{plan:_0x820d85,snapshot:_0x1203d0}=_0x41c738,_0x33de8c=_0x820d85[_0x5f4617(0x204)];let _0x554d6a;try{_0x554d6a=await fetchMenuSnapshot(_0x363b77[_0x5f4617(0x215)],_0x363b77[_0x5f4617(0x21a)]);}catch(_0x3d6518){throw recoveryRequiredFailure(_0x820d85,_0x29e62d,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x3a4881=_0x554d6a['menus']['filter'](_0x179338=>_0x179338[_0x5f4617(0x1ab)]===_0x33de8c[_0x5f4617(0x1ab)]&&_0x179338[_0x5f4617(0x1a4)]===_0x33de8c['type']&&_0x179338[_0x5f4617(0x1e5)]===_0x33de8c['label']&&_0x179338['url']===_0x33de8c['url']),_0x25e1fd=_0x3a4881[_0x5f4617(0x1f8)](_0x5c3aff=>!_0x1203d0[_0x5f4617(0x1c6)][_0x5f4617(0x207)](_0x5c3aff['id'])),_0x97548c=_0x3a4881[_0x5f4617(0x1f8)](_0x5e4aa0=>_0x1203d0[_0x5f4617(0x1c6)]['has'](_0x5e4aa0['id']));if(_0x3a4881['length']!==0x1||_0x25e1fd['length']!==0x1)throw recoveryRequiredFailure(_0x820d85,_0x29e62d,{'matchCount':_0x3a4881[_0x5f4617(0x1e0)],'newMatchCount':_0x25e1fd[_0x5f4617(0x1e0)],'preexistingMatchCount':_0x97548c['length']});const _0x1d5b74=_0x25e1fd[0x0];try{verifyCreatedFact(_0x1d5b74,_0x1d5b74['id'],_0x33de8c,null);}catch(_0x9ace7f){const _0x6799f7=_0x9ace7f instanceof Error&&'code'in _0x9ace7f?_0x9ace7f:menuError('menu_verification_failed','Recovered\x20menu\x20'+_0x1d5b74['id']+_0x5f4617(0x216),_0x5f4617(0x1d1)+_0x29e62d+_0x5f4617(0x206));throw externalLinkCreateFailure(_0x6799f7,_0x820d85,{'stage':_0x5f4617(0x20e),'succeeded':[{'id':_0x1d5b74['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x1d5b74['id'],'finalFactsConfirmed':![]},'after':_0x1d5b74,'warnings':[_0x5f4617(0x1a3)+_0x1d5b74['id']+_0x5f4617(0x1fc)],'verification':{'status':'failed','targetId':_0x1d5b74['id'],'recovered':!![],'lookupCommand':_0x29e62d}});}return creationSuccess(_0x820d85,_0x554d6a,_0x1d5b74,!![]);}function recoveryRequiredFailure(_0x383e4a,_0x490bc0,_0x449758){const _0x83e57=a112_0x214841,_0x831e86=menuError(_0x83e57(0x220),_0x83e57(0x1db),_0x83e57(0x1d1)+_0x490bc0+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x831e86,_0x383e4a,{'stage':_0x83e57(0x1ca),'failed':_0x449758,'warnings':[_0x83e57(0x1f5)],'verification':{'status':_0x83e57(0x1f6),..._0x449758,'lookupCommand':_0x490bc0}});}async function readAndVerifyCreatedMenu(_0x48b387){const _0x4b07c6=a112_0x214841;let _0x5e6070;try{_0x5e6070=await fetchMenuSnapshot(_0x48b387[_0x4b07c6(0x215)],_0x48b387[_0x4b07c6(0x21a)]);}catch(_0x288b84){const _0x1ff4ec=menuError(_0x4b07c6(0x1b5),_0x4b07c6(0x1a3)+_0x48b387[_0x4b07c6(0x202)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x4b07c6(0x1d1)+_0x48b387[_0x4b07c6(0x1ae)]+_0x4b07c6(0x1d5));throw externalLinkCreateFailure(_0x1ff4ec,_0x48b387[_0x4b07c6(0x1c4)],{'stage':_0x4b07c6(0x20e),'succeeded':[{'id':_0x48b387[_0x4b07c6(0x202)],'created':!![]}],'failed':{'id':_0x48b387[_0x4b07c6(0x202)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x48b387[_0x4b07c6(0x1c7)],'id':_0x48b387[_0x4b07c6(0x202)],'path':_0x48b387[_0x4b07c6(0x208)]},'warnings':['Menu\x20'+_0x48b387[_0x4b07c6(0x202)]+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x4b07c6(0x1f6),'targetId':_0x48b387['createdId'],'lookupCommand':_0x48b387['lookupCommand']}});}const _0x5530ad=_0x5e6070[_0x4b07c6(0x1c6)][_0x4b07c6(0x1e8)](_0x48b387[_0x4b07c6(0x202)]);try{if(!_0x5530ad)throw menuError(_0x4b07c6(0x1b5),_0x4b07c6(0x1cf)+_0x48b387['createdId']+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x4b07c6(0x1d1)+_0x48b387[_0x4b07c6(0x1ae)]+_0x4b07c6(0x1d5));verifyCreatedFact(_0x5530ad,_0x48b387['createdId'],_0x48b387[_0x4b07c6(0x1c7)],_0x48b387[_0x4b07c6(0x208)]);}catch(_0x5c4104){const _0x191bd7=_0x5c4104 instanceof Error&&_0x4b07c6(0x224)in _0x5c4104?_0x5c4104:menuError(_0x4b07c6(0x1b5),_0x4b07c6(0x1cf)+_0x48b387[_0x4b07c6(0x202)]+_0x4b07c6(0x1cc),_0x4b07c6(0x1d1)+_0x48b387[_0x4b07c6(0x1ae)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x191bd7,_0x48b387['plan'],{'stage':_0x4b07c6(0x20e),'succeeded':[{'id':_0x48b387[_0x4b07c6(0x202)],'created':!![]}],'failed':{'id':_0x48b387['createdId'],'finalFactsConfirmed':![]},'after':_0x5530ad??{..._0x48b387['afterPlan'],'id':_0x48b387[_0x4b07c6(0x202)],'path':_0x48b387[_0x4b07c6(0x208)]},'warnings':[_0x4b07c6(0x1a3)+_0x48b387[_0x4b07c6(0x202)]+_0x4b07c6(0x1e2)],'verification':{'status':_0x4b07c6(0x1f6),'targetId':_0x48b387[_0x4b07c6(0x202)],'recovered':_0x48b387[_0x4b07c6(0x1c8)],'lookupCommand':_0x48b387[_0x4b07c6(0x1ae)]}});}return{'snapshot':_0x5e6070,'fact':_0x5530ad};}function verifyCreatedFact(_0x446b5d,_0x3f8c5c,_0x1ce01b,_0x179a88){const _0x325302=a112_0x214841;if(!Number[_0x325302(0x20c)](_0x446b5d['id'])||_0x446b5d['id']<=0x0||_0x446b5d['id']!==_0x3f8c5c)throw menuError(_0x325302(0x1b5),_0x325302(0x1bc),_0x325302(0x1d9));const _0x25c5c3=[['parent',_0x446b5d[_0x325302(0x1ab)],_0x1ce01b[_0x325302(0x1ab)]],[_0x325302(0x1a4),_0x446b5d[_0x325302(0x1a4)],_0x1ce01b[_0x325302(0x1a4)]],[_0x325302(0x1e5),_0x446b5d[_0x325302(0x1e5)],_0x1ce01b[_0x325302(0x1e5)]],[_0x325302(0x1b8),_0x446b5d[_0x325302(0x1b0)],_0x1ce01b[_0x325302(0x1b0)]],[_0x325302(0x217),_0x446b5d[_0x325302(0x225)],_0x1ce01b[_0x325302(0x225)]],[_0x325302(0x1eb),_0x446b5d[_0x325302(0x1eb)],_0x1ce01b[_0x325302(0x1eb)]]];for(const [_0x5ce117,_0x3eb518,_0x5d2f0a]of _0x25c5c3){if(_0x3eb518!==_0x5d2f0a)throw menuError('menu_verification_failed',_0x325302(0x1cf)+_0x446b5d['id']+'\x20has\x20an\x20unexpected\x20'+_0x5ce117+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x446b5d[_0x325302(0x213)][_0x325302(0x1a9)]()||_0x179a88!==null&&_0x446b5d['path']!==_0x179a88)throw menuError(_0x325302(0x1b5),_0x325302(0x1cf)+_0x446b5d['id']+_0x325302(0x205),_0x325302(0x1a6));}function creationSuccess(_0x24de61,_0x3ceef5,_0x29721f,_0x52a119){const _0x151da5=a112_0x214841,_0x20ba27=mutationResult({..._0x24de61,'after':_0x29721f,'dryRun':![],'succeeded':[{'id':_0x29721f['id'],'created':!![],'recovered':_0x52a119}],'verification':{'checkedBy':_0x151da5(0x223),'snapshotHash':_0x3ceef5[_0x151da5(0x21e)],'targetId':_0x29721f['id'],'recovered':_0x52a119,'path':_0x29721f[_0x151da5(0x213)]}});return{'ok':!![],'message':_0x52a119?'Recovered\x20created\x20external\x20menu\x20'+_0x29721f['id']+_0x151da5(0x1dd):_0x151da5(0x1e9)+_0x29721f['id']+'.','data':{..._0x20ba27,'recovered':_0x52a119}};}function externalLinkCreateFailure(_0x18014a,_0xb683b3,_0x5122b0){const _0x1e2639=a112_0x214841;return menuFailure(safeMenuAddError(_0x18014a),redactFailurePlan(_0xb683b3),{..._0x5122b0,'succeeded':_0x5122b0[_0x1e2639(0x1d6)]?.['map'](redactFailureRecord),'failed':_0x5122b0[_0x1e2639(0x1f6)]?redactFailureRecord(_0x5122b0[_0x1e2639(0x1f6)]):undefined,'verification':_0x5122b0[_0x1e2639(0x20e)]?redactFailureRecord(_0x5122b0[_0x1e2639(0x20e)]):undefined,'after':_0x5122b0[_0x1e2639(0x204)]===undefined?undefined:redactFailureValue(_0x5122b0[_0x1e2639(0x204)])});}function redactFailurePlan(_0x306884){const _0x6ed367=a112_0x214841;return{..._0x306884,'selector':redactFailureRecord(_0x306884['selector']),'before':redactFailureValue(_0x306884[_0x6ed367(0x1dc)]),'after':redactFailureValue(_0x306884[_0x6ed367(0x204)]),'plannedActions':_0x306884[_0x6ed367(0x1c1)]?.[_0x6ed367(0x1fa)](_0x253bc0=>({..._0x253bc0,'body':redactFailureRecord(_0x253bc0[_0x6ed367(0x1cd)])})),'succeeded':_0x306884[_0x6ed367(0x1d6)][_0x6ed367(0x1fa)](redactFailureRecord),'failed':_0x306884[_0x6ed367(0x1f6)][_0x6ed367(0x1fa)](redactFailureRecord),'verification':_0x306884['verification']?redactFailureRecord(_0x306884[_0x6ed367(0x20e)]):undefined};}function redactFailureRecord(_0x3ab6f4){return redactFailureValue(_0x3ab6f4);}function redactFailureValue(_0xbed235,_0x31e591=''){const _0x490202=a112_0x214841,_0x85b51d=_0x31e591['toLowerCase']()[_0x490202(0x209)](/[^a-z0-9]/g,'');if([_0x490202(0x1c3),_0x490202(0x1d8),_0x490202(0x1ed),_0x490202(0x1a7)]['includes'](_0x85b51d))return'<redacted>';if(Array[_0x490202(0x222)](_0xbed235))return _0xbed235[_0x490202(0x1fa)](_0x35b2ba=>redactFailureValue(_0x35b2ba));if(_0xbed235&&typeof _0xbed235===_0x490202(0x1c2))return Object[_0x490202(0x1ad)](Object[_0x490202(0x1ac)](_0xbed235)[_0x490202(0x1fa)](([_0x2f459a,_0x1554cd])=>[_0x2f459a,redactFailureValue(_0x1554cd,_0x2f459a)]));return _0xbed235;}function safeMenuAddError(_0x3e79a7){const _0x372943=a112_0x214841,_0x121a3b=_0x3e79a7 instanceof CliError?_0x3e79a7[_0x372943(0x224)]:'menu_mutation_failed';switch(_0x121a3b){case'menu_state_drift':return menuError(_0x121a3b,_0x372943(0x1ce),_0x372943(0x1bb));case _0x372943(0x200):return menuError(_0x121a3b,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x372943(0x1bf):return menuError(_0x121a3b,_0x372943(0x1df),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x372943(0x1b5):return menuError(_0x121a3b,_0x372943(0x212),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_create_recovery_required':return menuError(_0x121a3b,_0x372943(0x1d2),_0x372943(0x1f2));case'menu_mutation_failed':case _0x372943(0x1c9):case _0x372943(0x1d4):case _0x372943(0x1a8):case'menu_sort_overflow':return menuError(_0x121a3b,_0x372943(0x1da),_0x372943(0x1fe));default:return menuError(_0x372943(0x1f0),_0x372943(0x1da),_0x372943(0x1fe));}}function a112_0xd308(){const _0x262daf=['createdId','POST','after','\x20has\x20an\x20unexpected\x20generated\x20path.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','has','expectedPath','replace','str','new-window','isSafeInteger','Whether\x20the\x20menu\x20is\x20visible','verification','create-response-validation','create\x20external\x20menu','bool','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','path','flagMissing','appCode','\x20could\x20not\x20be\x20verified.','visibility','pre-write-recheck','link','cookie','menu_url_credentials_forbidden','expectedSnapshotHash','3025818hVqBjJ','hash','302358pvnWKY','menu_create_recovery_required','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','isArray','menu\x20list','code','visible','https:','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','30uofqZE','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','95770xeDnlI','Menu\x20','type','write','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','rawerror','menu_sort_invalid','trim','417711bkhoNX','parentId','entries','fromEntries','lookupCommand','Would\x20create\x20external\x20website\x20link\x20menu\x20','url','external-link-create','menu','/smartapi/menu/create','How\x20to\x20open\x20the\x20external\x20website','menu_verification_failed','protocol','8kzCbkA','URL','prototype','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','58148nrybPN','Create\x20an\x20external\x20website\x20link\x20menu','menu_create_response_invalid','call','plannedActions','object','cause','plan','hasOwnProperty','byId','afterPlan','recovered','menu_not_found','create-recovery','string','\x20failed\x20final\x20verification.','body','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Created\x20menu\x20','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Run\x20','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','menu_parent_not_folder','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','succeeded','\x20--format\x20compress','causemessage','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','External\x20menu\x20creation\x20failed.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','before','\x20after\x20response\x20loss.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','length','create','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','menu_url_https_required','rabetbase\x20menu\x20list\x20--appcode\x20','label','open-mode','data','get','Created\x20external\x20menu\x20','rawFlags','sort','854105lolMcU','readbackerror','511122iXntpa','fact','menu_mutation_failed','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','boolean','<platform-generated>','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','failed','parent-id','filter','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','map','\x27\x5c\x27\x27','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','\x20with\x20','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','create-menu','menu_permission_denied','menu_url_invalid'];a112_0xd308=function(){return _0x262daf;};return a112_0xd308();}function getFailureRecord(_0x559f5d){const _0x460fac=a112_0x214841;if(!(_0x559f5d instanceof Error)||!(_0x460fac(0x1e7)in _0x559f5d))return undefined;const _0xd9a78=_0x559f5d['data'];if(!_0xd9a78||typeof _0xd9a78!=='object')return undefined;const _0x26825c=_0xd9a78[_0x460fac(0x1f6)];if(!Array['isArray'](_0x26825c)||!_0x26825c[0x0]||typeof _0x26825c[0x0]!==_0x460fac(0x1c2))return undefined;return _0x26825c[0x0];}
|
|
1
|
+
const a113_0x373abf=a113_0x56f7;function a113_0x56f7(_0x27fe22,_0x11076d){_0x27fe22=_0x27fe22-0xe6;const _0x5af359=a113_0x5af3();let _0x56f7f2=_0x5af359[_0x27fe22];return _0x56f7f2;}(function(_0x284e00,_0x5c5c77){const _0x28f6bd=a113_0x56f7,_0x351d89=_0x284e00();while(!![]){try{const _0xb7e4c2=parseInt(_0x28f6bd(0x106))/0x1+parseInt(_0x28f6bd(0x12b))/0x2*(-parseInt(_0x28f6bd(0x156))/0x3)+parseInt(_0x28f6bd(0x16b))/0x4*(-parseInt(_0x28f6bd(0x134))/0x5)+-parseInt(_0x28f6bd(0xfa))/0x6*(-parseInt(_0x28f6bd(0x141))/0x7)+parseInt(_0x28f6bd(0xfe))/0x8*(-parseInt(_0x28f6bd(0xfb))/0x9)+parseInt(_0x28f6bd(0xf7))/0xa+parseInt(_0x28f6bd(0x169))/0xb;if(_0xb7e4c2===_0x5c5c77)break;else _0x351d89['push'](_0x351d89['shift']());}catch(_0x4bf146){_0x351d89['push'](_0x351d89['shift']());}}}(a113_0x5af3,0xdb640));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';function a113_0x5af3(){const _0x3c0855=['selector','succeeded','isSafeInteger','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','plannedActions','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','POST','create-menu','byId','label','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','code','menu\x20list','length','menu_not_found','13077097xXFDVW','menu','8HcoTKm','expectedPath','flagMissing','menu_create_response_invalid','rawerror','\x20could\x20not\x20be\x20verified.','visibility','add','iframe','menu_sort_invalid','expectedSnapshotHash','create\x20external\x20menu','bool','parentId','/smartapi/menu/create','causemessage','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Menu\x20','hash','prototype','menu_permission_denied','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','1814980GToLEH','Menu\x20label','<redacted>','105306tgizue','90450zYEHQY','rawFlags','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','40VtfQGr','\x20--format\x20compress','\x20has\x20an\x20unexpected\x20','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','get','username','verification','cookie','838172PqNlej','body','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','entries','parent-id','string','menu_mutation_failed','after','path','currentSnapshotHash','lookupCommand','has','str','readbackerror','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','trim','replace','https:','plan','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','link','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','failed','sort','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','createdId','menu_verification_failed','pre-write-recheck','create','stringify','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','External\x20HTTPS\x20URL','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','\x20with\x20','How\x20to\x20open\x20the\x20external\x20website','filter','123082uksgGP','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','external-link-create','open-mode','afterPlan','Create\x20an\x20external\x20website\x20link\x20menu','visible','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','menu_create_recovery_required','2990705YsgmhJ','snapshot','isArray','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','embedded','menu_url_https_required','Whether\x20the\x20menu\x20is\x20visible','fact','hasOwnProperty','data','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','includes','type','392tEWRlu','Created\x20menu\x20','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','create-response-validation','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','menu_url_credentials_forbidden','appCode','boolean','parent','\x27\x5c\x27\x27','menu_open_mode_invalid','Run\x20','URL','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','toLowerCase','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Would\x20create\x20external\x20website\x20link\x20menu\x20','recovered','object','51MqgGZX','map','url'];a113_0x5af3=function(){return _0x3c0855;};return a113_0x5af3();}import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a113_0x373abf(0xe8),'new-window':a113_0x373abf(0x11a)};export function validateExternalMenuUrl(_0x419e55){const _0xdc4dc9=a113_0x373abf,_0x427df1=_0x419e55[_0xdc4dc9(0x115)]();let _0xdc69a7;try{_0xdc69a7=new URL(_0x427df1);}catch{throw menuError('menu_url_invalid',_0xdc4dc9(0x127),_0xdc4dc9(0x12c));}if(_0xdc69a7['protocol']!==_0xdc4dc9(0x117))throw menuError(_0xdc4dc9(0x139),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.','Provide\x20an\x20HTTPS\x20URL.');if(_0xdc69a7[_0xdc4dc9(0x103)]||_0xdc69a7['password'])throw menuError(_0xdc4dc9(0x147),_0xdc4dc9(0x150),_0xdc4dc9(0x146));return _0x427df1;}export const menuExternalLinkCreate={'service':'menu','command':a113_0x373abf(0x12d),'description':a113_0x373abf(0x130),'risk':'write','structuredErrors':!![],'flags':[{'name':a113_0x373abf(0x163),'type':a113_0x373abf(0x10b),'required':!![],'description':a113_0x373abf(0xf8)},{'name':a113_0x373abf(0x12e),'type':a113_0x373abf(0x10b),'required':!![],'enum':[a113_0x373abf(0x138),'new-window'],'description':a113_0x373abf(0x129)},{'name':'url','type':'string','required':!![],'description':a113_0x373abf(0x126)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a113_0x373abf(0x131),'type':a113_0x373abf(0x149),'default':!![],'description':a113_0x373abf(0x13a)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x26344a){validateAddInput(_0x26344a);},async 'dryRun'(_0x550b55){const _0x16be9c=a113_0x373abf;validateAddInput(_0x550b55);const {plan:_0x484d37}=await buildSafeAddPlan(_0x550b55,!![]),_0x29c892=_0x484d37[_0x16be9c(0x10d)],_0x56cbbc=createBody(_0x29c892);return menuDryRunResult(_0x484d37,{'method':'POST','url':_0x16be9c(0xee),'body':_0x56cbbc,'description':_0x16be9c(0x153)+JSON[_0x16be9c(0x124)](_0x29c892[_0x16be9c(0x163)])+_0x16be9c(0x128)+_0x550b55[_0x16be9c(0x112)](_0x16be9c(0x12e))+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x1e21d9){const _0x13b922=a113_0x373abf;validateAddInput(_0x1e21d9);const _0x4a16e5=await buildSafeAddPlan(_0x1e21d9,![]),{plan:_0x4873c8,snapshot:_0x50c8a8}=_0x4a16e5,_0x2027e9=_0x4873c8[_0x13b922(0x10d)],_0x191554=buildMenuLookupCommand(_0x1e21d9[_0x13b922(0x148)]);await recheckAddSnapshot(_0x1e21d9,_0x4873c8);let _0x18d747;try{_0x18d747=await createMenuEntity(_0x1e21d9[_0x13b922(0x148)],_0x1e21d9[_0x13b922(0x105)],createBody(_0x2027e9));}catch(_0x3a63b2){const _0x128892=mapMenuApiError(_0x3a63b2,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x3a63b2)||_0x128892[_0x13b922(0x165)]===_0x13b922(0xf4))throw externalLinkCreateFailure(_0x128892,_0x4873c8,{'stage':_0x13b922(0x123),'failed':{},'verification':{'status':_0x13b922(0x11d),'lookupCommand':_0x191554}});return recoverAfterResponseLoss(_0x1e21d9,_0x4a16e5,_0x191554);}const _0x12d84c=Number(_0x18d747?.['id']),_0x4c8f1a=typeof _0x18d747?.[_0x13b922(0x10e)]==='string'?_0x18d747['path']:'';if(!Number['isSafeInteger'](_0x12d84c)||_0x12d84c<=0x0||!_0x4c8f1a['trim']()){const _0x1b019f=menuError(_0x13b922(0x16e),_0x13b922(0x11b),'Run\x20'+_0x191554+_0x13b922(0x137));throw externalLinkCreateFailure(_0x1b019f,_0x4873c8,{'stage':_0x13b922(0x144),'succeeded':Number[_0x13b922(0x15b)](_0x12d84c)&&_0x12d84c>0x0?[{'id':_0x12d84c,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x12d84c)?_0x12d84c:null,'generatedPathConfirmed':Boolean(_0x4c8f1a['trim']())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number[_0x13b922(0x15b)](_0x12d84c)&&_0x12d84c>0x0?{..._0x2027e9,'id':_0x12d84c,'path':_0x4c8f1a}:_0x2027e9,'verification':{'status':_0x13b922(0x11d),'lookupCommand':_0x191554,...Number[_0x13b922(0x15b)](_0x12d84c)&&_0x12d84c>0x0?{'targetId':_0x12d84c}:{}}});}const _0x142c62=await readAndVerifyCreatedMenu({'appCode':_0x1e21d9[_0x13b922(0x148)],'cookie':_0x1e21d9['cookie'],'plan':_0x4873c8,'afterPlan':_0x2027e9,'createdId':_0x12d84c,'expectedPath':_0x4c8f1a,'lookupCommand':_0x191554,'recovered':![]});return creationSuccess(_0x4873c8,_0x142c62[_0x13b922(0x135)],_0x142c62[_0x13b922(0x13b)],![]);}};function validateAddInput(_0x136853){const _0x52f591=a113_0x373abf;if(!_0x136853['str']('label')[_0x52f591(0x115)]())throw CliErrors[_0x52f591(0x16d)](_0x52f591(0x163));resolveExternalMenuType(_0x136853),validateExternalMenuUrl(_0x136853[_0x52f591(0x112)](_0x52f591(0x158))),parseParentId(_0x136853,_0x52f591(0x10a)),validateSort(_0x136853);}function resolveExternalMenuType(_0x5b4f91){const _0x320ec3=a113_0x373abf,_0x3b304e=_0x5b4f91[_0x320ec3(0x112)](_0x320ec3(0x12e))[_0x320ec3(0x115)]();if(!_0x3b304e)throw CliErrors[_0x320ec3(0x16d)](_0x320ec3(0x12e));const _0x1f77a8=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x3b304e];if(!_0x1f77a8)throw menuError(_0x320ec3(0x14c),_0x320ec3(0x11f),_0x320ec3(0xf0));return _0x1f77a8;}async function buildAddPlan(_0x1bb592,_0xe4d360){const _0x44b2ff=a113_0x373abf,_0x529b7a=await fetchMutationSnapshot(_0x1bb592,_0x44b2ff(0xeb)),_0x7aed16=parseParentId(_0x1bb592,'parent-id')??null;if(_0x7aed16!=null)requireFolder(_0x529b7a,_0x7aed16);const _0x290986=validateSort(_0x1bb592),_0x4d7047=_0x290986??nextSiblingSort(_0x529b7a,_0x7aed16,_0x44b2ff(0x16a)),_0x333f21=_0x1bb592['str'](_0x44b2ff(0x163))[_0x44b2ff(0x115)](),_0x57e029=resolveExternalMenuType(_0x1bb592),_0x58b6ff=validateExternalMenuUrl(_0x1bb592['str']('url')),_0x592b1e=Object[_0x44b2ff(0xf3)][_0x44b2ff(0x13c)]['call'](_0x1bb592[_0x44b2ff(0xfc)],_0x44b2ff(0x131))?_0x1bb592[_0x44b2ff(0xec)](_0x44b2ff(0x131)):!![],_0x448d03={'id':null,'parentId':_0x7aed16,'label':_0x333f21,'path':'<platform-generated>','url':_0x58b6ff,'type':_0x57e029,'visible':_0x592b1e,'sort':_0x4d7047},_0x47f129=buildMenuLookupCommand(_0x1bb592['appCode']),_0x27740a=mutationResult({'operation':_0x44b2ff(0xe7),'selector':{'parentId':_0x7aed16,'type':_0x57e029,'label':_0x333f21,'url':_0x58b6ff},'before':null,'after':_0x448d03,'dryRun':_0xe4d360,'backend':[{'method':_0x44b2ff(0x160),'path':_0x44b2ff(0xee)}],'plannedActions':[{'stage':_0x44b2ff(0x161),'method':_0x44b2ff(0x160),'path':_0x44b2ff(0xee),'body':createBody(_0x448d03)}],'snapshotHash':_0x529b7a[_0x44b2ff(0xf2)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x47f129}});return{'plan':_0x27740a,'snapshot':_0x529b7a};}async function buildSafeAddPlan(_0x1aaefe,_0x781416){try{return await buildAddPlan(_0x1aaefe,_0x781416);}catch(_0x419771){throw safeMenuAddError(_0x419771);}}async function recheckAddSnapshot(_0x10b9b7,_0x747bfc){const _0x45530a=a113_0x373abf;try{await recheckMutationSnapshot(_0x10b9b7,_0x747bfc,_0x45530a(0xeb));}catch(_0x33de9b){const _0x263894=getFailureRecord(_0x33de9b);throw externalLinkCreateFailure(_0x33de9b,_0x747bfc,{'stage':_0x45530a(0x122),'failed':{..._0x263894?.[_0x45530a(0xea)]?{'expectedSnapshotHash':_0x263894[_0x45530a(0xea)]}:{},..._0x263894?.[_0x45530a(0x10f)]?{'currentSnapshotHash':_0x263894[_0x45530a(0x10f)]}:{}}});}}function createBody(_0x4eab29){const _0x368918=a113_0x373abf;return{'parentId':toApiParentId(_0x4eab29[_0x368918(0xed)]),'label':String(_0x4eab29[_0x368918(0x163)]),'type':String(_0x4eab29[_0x368918(0x140)]),'url':String(_0x4eab29[_0x368918(0x158)]),'visible':Boolean(_0x4eab29[_0x368918(0x131)]),'sort':Number(_0x4eab29[_0x368918(0x11e)]),'extend':{}};}function buildMenuLookupCommand(_0x55eae9){const _0x1a5a6a=a113_0x373abf,_0x4a2fcc='\x27'+_0x55eae9[_0x1a5a6a(0x116)](/'/g,_0x1a5a6a(0x14b))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x4a2fcc+_0x1a5a6a(0xff);}async function recoverAfterResponseLoss(_0x53e6ee,_0x231460,_0x99563){const _0x5c22b3=a113_0x373abf,{plan:_0x7fe9db,snapshot:_0x55ec45}=_0x231460,_0xf42bc7=_0x7fe9db[_0x5c22b3(0x10d)];let _0x31a1e5;try{_0x31a1e5=await fetchMenuSnapshot(_0x53e6ee[_0x5c22b3(0x148)],_0x53e6ee[_0x5c22b3(0x105)]);}catch(_0x4f5acb){throw recoveryRequiredFailure(_0x7fe9db,_0x99563,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x42ffda=_0x31a1e5['menus'][_0x5c22b3(0x12a)](_0x4b71f5=>_0x4b71f5['parentId']===_0xf42bc7[_0x5c22b3(0xed)]&&_0x4b71f5['type']===_0xf42bc7['type']&&_0x4b71f5[_0x5c22b3(0x163)]===_0xf42bc7[_0x5c22b3(0x163)]&&_0x4b71f5[_0x5c22b3(0x158)]===_0xf42bc7[_0x5c22b3(0x158)]),_0x11f182=_0x42ffda[_0x5c22b3(0x12a)](_0x2189a3=>!_0x55ec45[_0x5c22b3(0x162)][_0x5c22b3(0x111)](_0x2189a3['id'])),_0x20804d=_0x42ffda['filter'](_0x5a1377=>_0x55ec45[_0x5c22b3(0x162)]['has'](_0x5a1377['id']));if(_0x42ffda['length']!==0x1||_0x11f182[_0x5c22b3(0x167)]!==0x1)throw recoveryRequiredFailure(_0x7fe9db,_0x99563,{'matchCount':_0x42ffda[_0x5c22b3(0x167)],'newMatchCount':_0x11f182[_0x5c22b3(0x167)],'preexistingMatchCount':_0x20804d[_0x5c22b3(0x167)]});const _0x48eded=_0x11f182[0x0];try{verifyCreatedFact(_0x48eded,_0x48eded['id'],_0xf42bc7,null);}catch(_0x3a64c7){const _0x403181=_0x3a64c7 instanceof Error&&'code'in _0x3a64c7?_0x3a64c7:menuError(_0x5c22b3(0x121),'Recovered\x20menu\x20'+_0x48eded['id']+_0x5c22b3(0x170),_0x5c22b3(0x14d)+_0x99563+_0x5c22b3(0xf6));throw externalLinkCreateFailure(_0x403181,_0x7fe9db,{'stage':_0x5c22b3(0x104),'succeeded':[{'id':_0x48eded['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x48eded['id'],'finalFactsConfirmed':![]},'after':_0x48eded,'warnings':[_0x5c22b3(0xf1)+_0x48eded['id']+_0x5c22b3(0x125)],'verification':{'status':_0x5c22b3(0x11d),'targetId':_0x48eded['id'],'recovered':!![],'lookupCommand':_0x99563}});}return creationSuccess(_0x7fe9db,_0x31a1e5,_0x48eded,!![]);}function recoveryRequiredFailure(_0x8d4b15,_0x4d4f8f,_0x3ec6da){const _0x32f4b2=a113_0x373abf,_0x29bf3b=menuError(_0x32f4b2(0x133),_0x32f4b2(0x114),_0x32f4b2(0x14d)+_0x4d4f8f+_0x32f4b2(0x14f));return externalLinkCreateFailure(_0x29bf3b,_0x8d4b15,{'stage':'create-recovery','failed':_0x3ec6da,'warnings':[_0x32f4b2(0x143)],'verification':{'status':'failed',..._0x3ec6da,'lookupCommand':_0x4d4f8f}});}async function readAndVerifyCreatedMenu(_0x55fc1a){const _0x3eb0aa=a113_0x373abf;let _0x9b925d;try{_0x9b925d=await fetchMenuSnapshot(_0x55fc1a[_0x3eb0aa(0x148)],_0x55fc1a['cookie']);}catch(_0x1ca9c5){const _0x188462=menuError(_0x3eb0aa(0x121),_0x3eb0aa(0xf1)+_0x55fc1a[_0x3eb0aa(0x120)]+_0x3eb0aa(0x11c),'Run\x20'+_0x55fc1a['lookupCommand']+_0x3eb0aa(0x15c));throw externalLinkCreateFailure(_0x188462,_0x55fc1a[_0x3eb0aa(0x118)],{'stage':_0x3eb0aa(0x104),'succeeded':[{'id':_0x55fc1a[_0x3eb0aa(0x120)],'created':!![]}],'failed':{'id':_0x55fc1a['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x55fc1a[_0x3eb0aa(0x12f)],'id':_0x55fc1a[_0x3eb0aa(0x120)],'path':_0x55fc1a[_0x3eb0aa(0x16c)]},'warnings':[_0x3eb0aa(0xf1)+_0x55fc1a[_0x3eb0aa(0x120)]+_0x3eb0aa(0x13e)],'verification':{'status':_0x3eb0aa(0x11d),'targetId':_0x55fc1a[_0x3eb0aa(0x120)],'lookupCommand':_0x55fc1a[_0x3eb0aa(0x110)]}});}const _0xb06fd0=_0x9b925d[_0x3eb0aa(0x162)][_0x3eb0aa(0x102)](_0x55fc1a[_0x3eb0aa(0x120)]);try{if(!_0xb06fd0)throw menuError(_0x3eb0aa(0x121),'Created\x20menu\x20'+_0x55fc1a['createdId']+_0x3eb0aa(0x132),'Run\x20'+_0x55fc1a[_0x3eb0aa(0x110)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0xb06fd0,_0x55fc1a['createdId'],_0x55fc1a['afterPlan'],_0x55fc1a[_0x3eb0aa(0x16c)]);}catch(_0x3d69ad){const _0x503f73=_0x3d69ad instanceof Error&&_0x3eb0aa(0x165)in _0x3d69ad?_0x3d69ad:menuError(_0x3eb0aa(0x121),'Created\x20menu\x20'+_0x55fc1a['createdId']+'\x20failed\x20final\x20verification.',_0x3eb0aa(0x14d)+_0x55fc1a['lookupCommand']+_0x3eb0aa(0x15c));throw externalLinkCreateFailure(_0x503f73,_0x55fc1a[_0x3eb0aa(0x118)],{'stage':'verification','succeeded':[{'id':_0x55fc1a[_0x3eb0aa(0x120)],'created':!![]}],'failed':{'id':_0x55fc1a['createdId'],'finalFactsConfirmed':![]},'after':_0xb06fd0??{..._0x55fc1a[_0x3eb0aa(0x12f)],'id':_0x55fc1a[_0x3eb0aa(0x120)],'path':_0x55fc1a[_0x3eb0aa(0x16c)]},'warnings':['Menu\x20'+_0x55fc1a['createdId']+_0x3eb0aa(0x101)],'verification':{'status':_0x3eb0aa(0x11d),'targetId':_0x55fc1a[_0x3eb0aa(0x120)],'recovered':_0x55fc1a[_0x3eb0aa(0x154)],'lookupCommand':_0x55fc1a[_0x3eb0aa(0x110)]}});}return{'snapshot':_0x9b925d,'fact':_0xb06fd0};}function verifyCreatedFact(_0x510a7d,_0x2bfcf,_0x4a110e,_0x295753){const _0x740194=a113_0x373abf;if(!Number[_0x740194(0x15b)](_0x510a7d['id'])||_0x510a7d['id']<=0x0||_0x510a7d['id']!==_0x2bfcf)throw menuError(_0x740194(0x121),_0x740194(0x152),_0x740194(0x108));const _0x120b02=[[_0x740194(0x14a),_0x510a7d[_0x740194(0xed)],_0x4a110e[_0x740194(0xed)]],[_0x740194(0x140),_0x510a7d['type'],_0x4a110e[_0x740194(0x140)]],[_0x740194(0x163),_0x510a7d[_0x740194(0x163)],_0x4a110e[_0x740194(0x163)]],[_0x740194(0x14e),_0x510a7d[_0x740194(0x158)],_0x4a110e[_0x740194(0x158)]],[_0x740194(0xe6),_0x510a7d[_0x740194(0x131)],_0x4a110e[_0x740194(0x131)]],[_0x740194(0x11e),_0x510a7d['sort'],_0x4a110e[_0x740194(0x11e)]]];for(const [_0x30a9bf,_0x40bdb7,_0x5040cb]of _0x120b02){if(_0x40bdb7!==_0x5040cb)throw menuError(_0x740194(0x121),_0x740194(0x142)+_0x510a7d['id']+_0x740194(0x100)+_0x30a9bf+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x510a7d[_0x740194(0x10e)][_0x740194(0x115)]()||_0x295753!==null&&_0x510a7d['path']!==_0x295753)throw menuError(_0x740194(0x121),_0x740194(0x142)+_0x510a7d['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x740194(0x15d));}function creationSuccess(_0x15bd58,_0x5522c2,_0x283138,_0x27df9f){const _0x2b5809=a113_0x373abf,_0x12a3cb=mutationResult({..._0x15bd58,'after':_0x283138,'dryRun':![],'succeeded':[{'id':_0x283138['id'],'created':!![],'recovered':_0x27df9f}],'verification':{'checkedBy':_0x2b5809(0x166),'snapshotHash':_0x5522c2[_0x2b5809(0xf2)],'targetId':_0x283138['id'],'recovered':_0x27df9f,'path':_0x283138[_0x2b5809(0x10e)]}});return{'ok':!![],'message':_0x27df9f?'Recovered\x20created\x20external\x20menu\x20'+_0x283138['id']+'\x20after\x20response\x20loss.':'Created\x20external\x20menu\x20'+_0x283138['id']+'.','data':{..._0x12a3cb,'recovered':_0x27df9f}};}function externalLinkCreateFailure(_0xd1ae64,_0x24d5c1,_0x31f1bc){const _0x474db3=a113_0x373abf;return menuFailure(safeMenuAddError(_0xd1ae64),redactFailurePlan(_0x24d5c1),{..._0x31f1bc,'succeeded':_0x31f1bc[_0x474db3(0x15a)]?.[_0x474db3(0x157)](redactFailureRecord),'failed':_0x31f1bc[_0x474db3(0x11d)]?redactFailureRecord(_0x31f1bc[_0x474db3(0x11d)]):undefined,'verification':_0x31f1bc['verification']?redactFailureRecord(_0x31f1bc[_0x474db3(0x104)]):undefined,'after':_0x31f1bc[_0x474db3(0x10d)]===undefined?undefined:redactFailureValue(_0x31f1bc[_0x474db3(0x10d)])});}function redactFailurePlan(_0x19c74f){const _0x1a31aa=a113_0x373abf;return{..._0x19c74f,'selector':redactFailureRecord(_0x19c74f[_0x1a31aa(0x159)]),'before':redactFailureValue(_0x19c74f['before']),'after':redactFailureValue(_0x19c74f[_0x1a31aa(0x10d)]),'plannedActions':_0x19c74f[_0x1a31aa(0x15e)]?.[_0x1a31aa(0x157)](_0x199b9f=>({..._0x199b9f,'body':redactFailureRecord(_0x199b9f[_0x1a31aa(0x107)])})),'succeeded':_0x19c74f['succeeded'][_0x1a31aa(0x157)](redactFailureRecord),'failed':_0x19c74f['failed'][_0x1a31aa(0x157)](redactFailureRecord),'verification':_0x19c74f[_0x1a31aa(0x104)]?redactFailureRecord(_0x19c74f[_0x1a31aa(0x104)]):undefined};}function redactFailureRecord(_0x63c076){return redactFailureValue(_0x63c076);}function redactFailureValue(_0x483849,_0x3ecfb8=''){const _0x42afde=a113_0x373abf,_0x505fa3=_0x3ecfb8[_0x42afde(0x151)]()[_0x42afde(0x116)](/[^a-z0-9]/g,'');if(['cause',_0x42afde(0xef),_0x42afde(0x113),_0x42afde(0x16f)][_0x42afde(0x13f)](_0x505fa3))return _0x42afde(0xf9);if(Array[_0x42afde(0x136)](_0x483849))return _0x483849[_0x42afde(0x157)](_0x45cfef=>redactFailureValue(_0x45cfef));if(_0x483849&&typeof _0x483849===_0x42afde(0x155))return Object['fromEntries'](Object[_0x42afde(0x109)](_0x483849)[_0x42afde(0x157)](([_0x78f744,_0x298036])=>[_0x78f744,redactFailureValue(_0x298036,_0x78f744)]));return _0x483849;}function safeMenuAddError(_0x388d65){const _0x23ca12=a113_0x373abf,_0x23eb24=_0x388d65 instanceof CliError?_0x388d65[_0x23ca12(0x165)]:_0x23ca12(0x10c);switch(_0x23eb24){case'menu_state_drift':return menuError(_0x23eb24,_0x23ca12(0xfd),_0x23ca12(0x15f));case _0x23ca12(0xf4):return menuError(_0x23eb24,_0x23ca12(0x119),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x23ca12(0x16e):return menuError(_0x23eb24,_0x23ca12(0x145),_0x23ca12(0xf5));case _0x23ca12(0x121):return menuError(_0x23eb24,_0x23ca12(0x164),_0x23ca12(0xf5));case _0x23ca12(0x133):return menuError(_0x23eb24,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x23ca12(0x10c):case _0x23ca12(0x168):case'menu_parent_not_folder':case _0x23ca12(0xe9):case'menu_sort_overflow':return menuError(_0x23eb24,'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0x23ca12(0x10c),'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x3a5623){const _0x1e7b63=a113_0x373abf;if(!(_0x3a5623 instanceof Error)||!('data'in _0x3a5623))return undefined;const _0x20eabc=_0x3a5623[_0x1e7b63(0x13d)];if(!_0x20eabc||typeof _0x20eabc!==_0x1e7b63(0x155))return undefined;const _0x395ec3=_0x20eabc[_0x1e7b63(0x11d)];if(!Array[_0x1e7b63(0x136)](_0x395ec3)||!_0x395ec3[0x0]||typeof _0x395ec3[0x0]!==_0x1e7b63(0x155))return undefined;return _0x395ec3[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a113_0xb3161=a113_0x37bd;(function(_0x11f9a1,_0x3196a8){const _0xce7f24=a113_0x37bd,_0x5603d3=_0x11f9a1();while(!![]){try{const _0x3afee9=-parseInt(_0xce7f24(0x103))/0x1*(-parseInt(_0xce7f24(0xf8))/0x2)+parseInt(_0xce7f24(0xd2))/0x3*(-parseInt(_0xce7f24(0xf2))/0x4)+parseInt(_0xce7f24(0xda))/0x5*(parseInt(_0xce7f24(0xd3))/0x6)+-parseInt(_0xce7f24(0xc8))/0x7*(parseInt(_0xce7f24(0xd0))/0x8)+parseInt(_0xce7f24(0xf3))/0x9*(-parseInt(_0xce7f24(0xf1))/0xa)+-parseInt(_0xce7f24(0xea))/0xb+parseInt(_0xce7f24(0x10e))/0xc;if(_0x3afee9===_0x3196a8)break;else _0x5603d3['push'](_0x5603d3['shift']());}catch(_0x1d49c6){_0x5603d3['push'](_0x5603d3['shift']());}}}(a113_0x1415,0x88954));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a113_0x1415(){const _0x111472=['\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','flagMissing','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','code','New\x20external\x20HTTPS\x20URL','menu_update_recovery_required','after','readbackFailed','iframe','trim','snapshot','Updated\x20external\x20URL\x20for\x20menu\x20','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','\x20has\x20an\x20empty\x20platform\x20path.','7433393zfczaa','plan','menu_external_link_not_leaf','string','Update\x20request\x20for\x20menu\x20','cookie','/smartapi/menu/update','78870Bjajbs','4bvUBll','351QCriUM','unknown','verification','visible','\x20changed\x20during\x20the\x20URL-only\x20update.','152660lKIkEj','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','path','Response\x20was\x20lost\x20and\x20menu\x20','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','update\x20external\x20menu\x20URL','menu','\x22,\x20not\x20iframe\x20or\x20link.','label','childrenCount','update','13dLugUr','\x20parent\x20changed:\x20expected\x20','POST','type','expect-parent-id',',\x20current\x20','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','menu_state_drift','requestedUrlObserved','menu_external_link_type_required','18489588yDHuif','url','sort','menu_external_link_path_missing','hash','expect-url','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','replace','\x20URL\x20update\x20did\x20not\x20take\x20effect.','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','body','Run\x20','failed','11137oUVfRO','\x27\x5c\x27\x27','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','update-external-link-url','\x20could\x20not\x20be\x20verified\x20safely','parentId','Menu\x20','3272TYzKTP','appCode','2135394KdqzqZ','744456wzlDsY','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','\x20already\x20matches\x20the\x20requested\x20URL.','\x20direct\x20child\x20menu(s).','\x20is\x20type\x20\x22','\x20has\x20','str','15qkHCiI','update-recovery'];a113_0x1415=function(){return _0x111472;};return a113_0x1415();}function a113_0x37bd(_0x525434,_0x3f7b26){_0x525434=_0x525434-0xbf;const _0x141501=a113_0x1415();let _0x37bd6c=_0x141501[_0x525434];return _0x37bd6c;}const BACKEND=[{'method':a113_0xb3161(0x105),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a113_0xb3161(0xfe),'command':'external-link-update','description':'Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a113_0xb3161(0x10f),'type':a113_0xb3161(0xed),'required':!![],'description':a113_0xb3161(0xe0)},{'name':a113_0xb3161(0xc0),'type':a113_0xb3161(0xed),'required':!![],'description':a113_0xb3161(0xc4)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xdac02){validateInput(_0xdac02);},async 'dryRun'(_0x11278a){const _0x1ae362=a113_0xb3161;validateInput(_0x11278a);const _0x286637=await buildPlan(_0x11278a,!![]);return menuDryRunResult(_0x286637[_0x1ae362(0xeb)],{'method':_0x1ae362(0x105),'url':_0x1ae362(0xf0),'body':_0x286637['body'],'description':_0x1ae362(0xc1)+_0x286637[_0x1ae362(0xc5)]['id']+'.'});},async 'execute'(_0x279f7c){const _0xeb6768=a113_0xb3161;validateInput(_0x279f7c);const _0x40e439=await buildPlan(_0x279f7c,![]),{plan:_0x19a529,body:_0xbba786,before:_0x332238,noChanges:_0x49995d}=_0x40e439,_0x1b85ab=_0xbba786['id'];if(_0x49995d)return updateSuccess(_0x19a529,_0x40e439[_0xeb6768(0xe6)],_0x332238,!![],![]);await recheckMutationSnapshot(_0x279f7c,_0x19a529,'update\x20external\x20menu\x20URL',_0x1b85ab);try{await updateMenuEntity(_0x279f7c['appCode'],_0x279f7c[_0xeb6768(0xef)],{'id':_0xbba786['id'],'url':_0xbba786[_0xeb6768(0x10f)]});}catch(_0x1ddb2b){const _0x17a60b=mapMenuApiError(_0x1ddb2b,'update\x20external\x20menu\x20URL',_0x1b85ab);if(isMenuResponseLoss(_0x1ddb2b)&&_0x17a60b[_0xeb6768(0xdf)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x279f7c,_0x40e439);throw menuFailure(_0x17a60b,_0x19a529,{'stage':_0xeb6768(0x102),'failed':{'id':_0x1b85ab},'warnings':[_0xeb6768(0xca)],'verification':{'status':'failed','targetId':_0x1b85ab,'lookupCommand':buildLookupCommand(_0x279f7c[_0xeb6768(0xd1)])}});}let _0x284fe8,_0x529bc1;try{_0x284fe8=await fetchMenuSnapshot(_0x279f7c[_0xeb6768(0xd1)],_0x279f7c[_0xeb6768(0xef)]),_0x529bc1=requireMenu(_0x284fe8,_0x1b85ab),verifyUpdatedFact(_0x332238,_0x529bc1,_0xbba786[_0xeb6768(0x10f)]);}catch(_0x4b067c){const _0x24f696=describeMenuErrorCause(_0x4b067c,'verify\x20external\x20menu\x20URL\x20update',_0x1b85ab),_0x10d6b7=asVerificationError(_0x4b067c,_0xeb6768(0xee)+_0x1b85ab+_0xeb6768(0xdc));throw menuFailure(_0x10d6b7,_0x19a529,{'stage':_0xeb6768(0xf5),'succeeded':[{'id':_0x1b85ab,'updateRequested':!![]}],'failed':{'id':_0x1b85ab,'requestedStateConfirmed':![],..._0x24f696},'warnings':[_0xeb6768(0x10a)],'verification':{'status':_0xeb6768(0xc7),'targetId':_0x1b85ab,'lookupCommand':buildLookupCommand(_0x279f7c[_0xeb6768(0xd1)])}});}return updateSuccess(_0x19a529,_0x284fe8,_0x529bc1,![],![]);}};function validateInput(_0x15bbb3){const _0x13631f=a113_0xb3161;validateExactId(_0x15bbb3),requiredUrl(_0x15bbb3,_0x13631f(0x10f)),requiredExpectedUrl(_0x15bbb3),parseParentId(_0x15bbb3,_0x13631f(0x107),{'required':!![]});}function requiredUrl(_0x32be9a,_0x446aff){const _0x41a86c=a113_0xb3161;if(!hasFlag(_0x32be9a,_0x446aff)||!_0x32be9a[_0x41a86c(0xd9)](_0x446aff)[_0x41a86c(0xe5)]())throw CliErrors[_0x41a86c(0xdd)](_0x446aff);return validateExternalMenuUrl(_0x32be9a[_0x41a86c(0xd9)](_0x446aff));}function requiredExpectedUrl(_0x105932){const _0x18ae39=a113_0xb3161;if(!hasFlag(_0x105932,_0x18ae39(0xc0))||!_0x105932[_0x18ae39(0xd9)](_0x18ae39(0xc0))[_0x18ae39(0xe5)]())throw CliErrors[_0x18ae39(0xdd)](_0x18ae39(0xc0));return _0x105932[_0x18ae39(0xd9)]('expect-url')['trim']();}async function buildPlan(_0x309498,_0x8f98c0){const _0x26fc82=a113_0xb3161,_0x59a869=validateExactId(_0x309498),_0x28f00c=requiredUrl(_0x309498,_0x26fc82(0x10f)),_0x14c5d1=requiredExpectedUrl(_0x309498),_0x5ec85b=parseParentId(_0x309498,_0x26fc82(0x107),{'required':!![]}),_0x36262d=await fetchMutationSnapshot(_0x309498,_0x26fc82(0xfd),_0x59a869),_0x239d65=requireMenu(_0x36262d,_0x59a869);assertExternalLinkLeaf(_0x239d65);if(_0x239d65[_0x26fc82(0xce)]!==_0x5ec85b)throw menuError(_0x26fc82(0x10b),_0x26fc82(0xcf)+_0x59a869+_0x26fc82(0x104)+formatParent(_0x5ec85b)+_0x26fc82(0x108)+formatParent(_0x239d65[_0x26fc82(0xce)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x220890=_0x239d65[_0x26fc82(0x10f)]===_0x28f00c;if(!_0x220890&&_0x239d65['url']!==_0x14c5d1)throw menuError('menu_state_drift','Menu\x20'+_0x59a869+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0x26fc82(0xcb));const _0x57ad51={'id':_0x59a869,'appCode':_0x309498[_0x26fc82(0xd1)],'url':_0x28f00c},_0x1894b1={..._0x239d65,'url':_0x28f00c};return{'body':_0x57ad51,'before':_0x239d65,'noChanges':_0x220890,'snapshot':_0x36262d,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x59a869},'before':_0x239d65,'after':_0x1894b1,'dryRun':_0x8f98c0,'backend':[...BACKEND],'plannedActions':_0x220890?[]:[{'stage':_0x26fc82(0xcc),'method':_0x26fc82(0x105),'path':'/smartapi/menu/update','body':_0x57ad51}],'snapshotHash':_0x36262d[_0x26fc82(0xbf)],'warnings':_0x220890?[_0x26fc82(0xe8)]:[]})};}function assertExternalLinkLeaf(_0x5a0e08){const _0x13f43e=a113_0xb3161;if(_0x5a0e08['type']!==_0x13f43e(0xe4)&&_0x5a0e08[_0x13f43e(0x106)]!=='link')throw menuError(_0x13f43e(0x10d),'Menu\x20'+_0x5a0e08['id']+_0x13f43e(0xd7)+(_0x5a0e08[_0x13f43e(0x106)]||_0x13f43e(0xf4))+_0x13f43e(0xff),_0x13f43e(0xde));if(_0x5a0e08[_0x13f43e(0x101)]!==0x0)throw menuError(_0x13f43e(0xec),'Menu\x20'+_0x5a0e08['id']+_0x13f43e(0xd8)+_0x5a0e08[_0x13f43e(0x101)]+_0x13f43e(0xd6),_0x13f43e(0x109));if(!_0x5a0e08[_0x13f43e(0xfa)][_0x13f43e(0xe5)]())throw menuError(_0x13f43e(0x111),_0x13f43e(0xcf)+_0x5a0e08['id']+_0x13f43e(0xe9),_0x13f43e(0xd4));}function verifyUpdatedFact(_0x2d4bf2,_0x591fac,_0x30a505){const _0x2a3e72=a113_0xb3161;assertExternalLinkLeaf(_0x591fac);const _0x2ff366=[['id',_0x591fac['id'],_0x2d4bf2['id']],[_0x2a3e72(0x100),_0x591fac[_0x2a3e72(0x100)],_0x2d4bf2['label']],[_0x2a3e72(0x106),_0x591fac[_0x2a3e72(0x106)],_0x2d4bf2[_0x2a3e72(0x106)]],['path',_0x591fac[_0x2a3e72(0xfa)],_0x2d4bf2['path']],[_0x2a3e72(0xce),_0x591fac[_0x2a3e72(0xce)],_0x2d4bf2[_0x2a3e72(0xce)]],[_0x2a3e72(0x110),_0x591fac[_0x2a3e72(0x110)],_0x2d4bf2['sort']],[_0x2a3e72(0xf6),_0x591fac['visible'],_0x2d4bf2[_0x2a3e72(0xf6)]]];for(const [_0x513e09,_0x1baa15,_0xe5eee6]of _0x2ff366){assertVerified(_0x1baa15===_0xe5eee6,_0x2a3e72(0xcf)+_0x2d4bf2['id']+'\x20'+_0x513e09+_0x2a3e72(0xf7));}assertVerified(_0x591fac[_0x2a3e72(0x10f)]===_0x30a505,'Menu\x20'+_0x2d4bf2['id']+_0x2a3e72(0xc3));}function updateSuccess(_0x4510d3,_0x1d171e,_0x1a3bc0,_0x3e175d,_0xbf248e){const _0x3223bd=a113_0xb3161,_0xa2f1f0=_0x1a3bc0['id'],_0x2c5024=mutationResult({..._0x4510d3,'after':_0x1a3bc0,'dryRun':![],'succeeded':[{'id':_0xa2f1f0,'updated':!_0x3e175d,'skipped':_0x3e175d,'recovered':_0xbf248e}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x1d171e[_0x3223bd(0xbf)],'targetId':_0xa2f1f0,'matchesRequestedState':!![],'recovered':_0xbf248e}});return{'ok':!![],'message':_0xbf248e?_0x3223bd(0xf9)+_0xa2f1f0+'.':_0x3e175d?_0x3223bd(0xcf)+_0xa2f1f0+_0x3223bd(0xd5):_0x3223bd(0xe7)+_0xa2f1f0+'.','data':{..._0x2c5024,'recovered':_0xbf248e}};}async function recoverAfterResponseLoss(_0x58f12c,_0x206613){const _0x444077=a113_0xb3161,{plan:_0x5d769e,before:_0x322fe5,body:_0x3e3d3c}=_0x206613;let _0x13ed5d;try{_0x13ed5d=await fetchMenuSnapshot(_0x58f12c['appCode'],_0x58f12c[_0x444077(0xef)]);}catch{throw recoveryRequired(_0x5d769e,_0x58f12c[_0x444077(0xd1)],{'id':_0x3e3d3c['id'],'readbackFailed':!![]});}const _0x254ba7=_0x13ed5d['byId']['get'](_0x3e3d3c['id']);if(!_0x254ba7||_0x254ba7[_0x444077(0x10f)]!==_0x3e3d3c[_0x444077(0x10f)])throw recoveryRequired(_0x5d769e,_0x58f12c[_0x444077(0xd1)],{'id':_0x3e3d3c['id'],'requestedUrlObserved':![],'after':_0x254ba7??null});try{verifyUpdatedFact(_0x322fe5,_0x254ba7,_0x3e3d3c[_0x444077(0x10f)]);}catch(_0x592c64){const _0x1ec699=asVerificationError(_0x592c64,_0x444077(0xfb)+_0x3e3d3c['id']+_0x444077(0xcd));throw menuFailure(_0x1ec699,_0x5d769e,{'stage':_0x444077(0xdb),'succeeded':[{'id':_0x3e3d3c['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x3e3d3c['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x254ba7,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':'failed','targetId':_0x3e3d3c['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x58f12c[_0x444077(0xd1)])}});}return updateSuccess(_0x5d769e,_0x13ed5d,_0x254ba7,![],!![]);}function recoveryRequired(_0x2b2242,_0x60009,_0x236549){const _0xedd84c=a113_0xb3161,_0x26c005=menuError(_0xedd84c(0xe1),_0xedd84c(0xfc),_0xedd84c(0xc6)+buildLookupCommand(_0x60009)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x26c005,_0x2b2242,{'stage':_0xedd84c(0xdb),'failed':{'id':_0x236549['id'],..._0x236549['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x236549['requestedUrlObserved']},..._0x236549[_0xedd84c(0xe3)]?{'readbackFailed':!![]}:{}},'after':_0x236549[_0xedd84c(0xe2)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0xedd84c(0xc7),'targetId':_0x236549['id'],..._0x236549['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x236549[_0xedd84c(0x10c)]},..._0x236549['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x60009)}});}function buildLookupCommand(_0x113112){const _0x3efd8f=a113_0xb3161,_0x3f8ffa='\x27'+_0x113112[_0x3efd8f(0xc2)](/'/g,_0x3efd8f(0xc9))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x3f8ffa+'\x20--format\x20compress';}
|
|
1
|
+
const a114_0x59c925=a114_0x54a1;(function(_0x4f66fe,_0x575556){const _0x324064=a114_0x54a1,_0x3b9078=_0x4f66fe();while(!![]){try{const _0x3b3607=parseInt(_0x324064(0x1e0))/0x1*(parseInt(_0x324064(0x1bb))/0x2)+parseInt(_0x324064(0x1c0))/0x3+parseInt(_0x324064(0x1d6))/0x4*(-parseInt(_0x324064(0x1ce))/0x5)+-parseInt(_0x324064(0x1b7))/0x6+-parseInt(_0x324064(0x1e3))/0x7*(parseInt(_0x324064(0x1c7))/0x8)+-parseInt(_0x324064(0x1f2))/0x9+-parseInt(_0x324064(0x1c4))/0xa*(-parseInt(_0x324064(0x1b4))/0xb);if(_0x3b3607===_0x575556)break;else _0x3b9078['push'](_0x3b9078['shift']());}catch(_0x20956a){_0x3b9078['push'](_0x3b9078['shift']());}}}(a114_0x2039,0x34cc3));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a114_0x59c925(0x1f8)}];function a114_0x2039(){const _0x56cf7b=['External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','\x20parent\x20changed:\x20expected\x20','/smartapi/menu/update','menu','rabetbase\x20menu\x20list\x20--appcode\x20','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','cookie','menu\x20list','Response\x20was\x20lost\x20and\x20menu\x20','menu_external_link_type_required','\x20changed\x20during\x20the\x20URL-only\x20update.','plan','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','11LqmrPn','\x20--format\x20compress','code','2343960YoguMl','\x20has\x20','\x20could\x20not\x20be\x20verified\x20safely','parentId','194018LoBPew','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','failed','expect-parent-id','\x27\x5c\x27\x27','1103499OwpZNJ','replace','readbackFailed','menu_state_drift','8615530mNiusN','New\x20external\x20HTTPS\x20URL','\x20already\x20matches\x20the\x20requested\x20URL.','6968cQhezX','body','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','url','expect-url','childrenCount','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','5595HJEYbS','update-external-link-url','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','link','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','appCode','type','update-recovery','1420MnjIoy','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','update\x20external\x20menu\x20URL','verification','unknown','verify\x20external\x20menu\x20URL\x20update','write','\x22,\x20not\x20iframe\x20or\x20link.','hash','requestedUrlObserved','1zBVtiX','string','update','2268zPCpCM','Menu\x20','trim','sort','snapshot','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','Updated\x20external\x20URL\x20for\x20menu\x20','after','visible','label','menu_external_link_not_leaf','\x20direct\x20child\x20menu(s).','\x20is\x20type\x20\x22','str','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','360243JLxSbg','flagMissing','external-link-update','path'];a114_0x2039=function(){return _0x56cf7b;};return a114_0x2039();}export const menuExternalLinkUpdate={'service':a114_0x59c925(0x1f9),'command':a114_0x59c925(0x1f4),'description':a114_0x59c925(0x1d0),'risk':a114_0x59c925(0x1dc),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a114_0x59c925(0x1ca),'type':a114_0x59c925(0x1e1),'required':!![],'description':a114_0x59c925(0x1c5)},{'name':a114_0x59c925(0x1cb),'type':'string','required':!![],'description':a114_0x59c925(0x1d7)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xe8144){validateInput(_0xe8144);},async 'dryRun'(_0x2769a3){const _0x51be30=a114_0x59c925;validateInput(_0x2769a3);const _0x58a247=await buildPlan(_0x2769a3,!![]);return menuDryRunResult(_0x58a247[_0x51be30(0x1b1)],{'method':'POST','url':_0x51be30(0x1f8),'body':_0x58a247['body'],'description':_0x51be30(0x1e8)+_0x58a247[_0x51be30(0x1c8)]['id']+'.'});},async 'execute'(_0x30520c){const _0x4874bc=a114_0x59c925;validateInput(_0x30520c);const _0xb36e76=await buildPlan(_0x30520c,![]),{plan:_0x43acb0,body:_0x216f7e,before:_0x286318,noChanges:_0x475d5a}=_0xb36e76,_0xdcf0a8=_0x216f7e['id'];if(_0x475d5a)return updateSuccess(_0x43acb0,_0xb36e76[_0x4874bc(0x1e7)],_0x286318,!![],![]);await recheckMutationSnapshot(_0x30520c,_0x43acb0,_0x4874bc(0x1d8),_0xdcf0a8);try{await updateMenuEntity(_0x30520c['appCode'],_0x30520c[_0x4874bc(0x1fd)],{'id':_0x216f7e['id'],'url':_0x216f7e[_0x4874bc(0x1ca)]});}catch(_0x798910){const _0x1e6e84=mapMenuApiError(_0x798910,_0x4874bc(0x1d8),_0xdcf0a8);if(isMenuResponseLoss(_0x798910)&&_0x1e6e84[_0x4874bc(0x1b6)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x30520c,_0xb36e76);throw menuFailure(_0x1e6e84,_0x43acb0,{'stage':_0x4874bc(0x1e2),'failed':{'id':_0xdcf0a8},'warnings':[_0x4874bc(0x1fb)],'verification':{'status':_0x4874bc(0x1bd),'targetId':_0xdcf0a8,'lookupCommand':buildLookupCommand(_0x30520c[_0x4874bc(0x1d3)])}});}let _0x49d045,_0x5f037f;try{_0x49d045=await fetchMenuSnapshot(_0x30520c[_0x4874bc(0x1d3)],_0x30520c['cookie']),_0x5f037f=requireMenu(_0x49d045,_0xdcf0a8),verifyUpdatedFact(_0x286318,_0x5f037f,_0x216f7e[_0x4874bc(0x1ca)]);}catch(_0x51169f){const _0x30f890=describeMenuErrorCause(_0x51169f,_0x4874bc(0x1db),_0xdcf0a8),_0x3547ca=asVerificationError(_0x51169f,'Update\x20request\x20for\x20menu\x20'+_0xdcf0a8+_0x4874bc(0x1b3));throw menuFailure(_0x3547ca,_0x43acb0,{'stage':_0x4874bc(0x1d9),'succeeded':[{'id':_0xdcf0a8,'updateRequested':!![]}],'failed':{'id':_0xdcf0a8,'requestedStateConfirmed':![],..._0x30f890},'warnings':[_0x4874bc(0x1bc)],'verification':{'status':_0x4874bc(0x1bd),'targetId':_0xdcf0a8,'lookupCommand':buildLookupCommand(_0x30520c[_0x4874bc(0x1d3)])}});}return updateSuccess(_0x43acb0,_0x49d045,_0x5f037f,![],![]);}};function a114_0x54a1(_0x37fcdd,_0x312086){_0x37fcdd=_0x37fcdd-0x1ad;const _0x203989=a114_0x2039();let _0x54a14e=_0x203989[_0x37fcdd];return _0x54a14e;}function validateInput(_0x5feb0e){const _0xfe214f=a114_0x59c925;validateExactId(_0x5feb0e),requiredUrl(_0x5feb0e,'url'),requiredExpectedUrl(_0x5feb0e),parseParentId(_0x5feb0e,_0xfe214f(0x1be),{'required':!![]});}function requiredUrl(_0xb1586b,_0x5cc7b6){const _0x5c502c=a114_0x59c925;if(!hasFlag(_0xb1586b,_0x5cc7b6)||!_0xb1586b[_0x5c502c(0x1f0)](_0x5cc7b6)[_0x5c502c(0x1e5)]())throw CliErrors[_0x5c502c(0x1f3)](_0x5cc7b6);return validateExternalMenuUrl(_0xb1586b[_0x5c502c(0x1f0)](_0x5cc7b6));}function requiredExpectedUrl(_0x540f12){const _0x200492=a114_0x59c925;if(!hasFlag(_0x540f12,_0x200492(0x1cb))||!_0x540f12[_0x200492(0x1f0)]('expect-url')[_0x200492(0x1e5)]())throw CliErrors[_0x200492(0x1f3)](_0x200492(0x1cb));return _0x540f12[_0x200492(0x1f0)]('expect-url')[_0x200492(0x1e5)]();}async function buildPlan(_0x26f722,_0x3bf6d0){const _0x222186=a114_0x59c925,_0x29e6d5=validateExactId(_0x26f722),_0x24d2f5=requiredUrl(_0x26f722,_0x222186(0x1ca)),_0x31d6c9=requiredExpectedUrl(_0x26f722),_0x1fc681=parseParentId(_0x26f722,_0x222186(0x1be),{'required':!![]}),_0x42f76e=await fetchMutationSnapshot(_0x26f722,_0x222186(0x1d8),_0x29e6d5),_0x5a1549=requireMenu(_0x42f76e,_0x29e6d5);assertExternalLinkLeaf(_0x5a1549);if(_0x5a1549['parentId']!==_0x1fc681)throw menuError(_0x222186(0x1c3),'Menu\x20'+_0x29e6d5+_0x222186(0x1f7)+formatParent(_0x1fc681)+',\x20current\x20'+formatParent(_0x5a1549['parentId'])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x537a9b=_0x5a1549[_0x222186(0x1ca)]===_0x24d2f5;if(!_0x537a9b&&_0x5a1549[_0x222186(0x1ca)]!==_0x31d6c9)throw menuError('menu_state_drift',_0x222186(0x1e4)+_0x29e6d5+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x4fd7e2={'id':_0x29e6d5,'appCode':_0x26f722[_0x222186(0x1d3)],'url':_0x24d2f5},_0x2e049c={..._0x5a1549,'url':_0x24d2f5};return{'body':_0x4fd7e2,'before':_0x5a1549,'noChanges':_0x537a9b,'snapshot':_0x42f76e,'plan':mutationResult({'operation':_0x222186(0x1f4),'selector':{'id':_0x29e6d5},'before':_0x5a1549,'after':_0x2e049c,'dryRun':_0x3bf6d0,'backend':[...BACKEND],'plannedActions':_0x537a9b?[]:[{'stage':_0x222186(0x1cf),'method':'POST','path':_0x222186(0x1f8),'body':_0x4fd7e2}],'snapshotHash':_0x42f76e[_0x222186(0x1de)],'warnings':_0x537a9b?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x5a4ca7){const _0x330e13=a114_0x59c925;if(_0x5a4ca7[_0x330e13(0x1d4)]!=='iframe'&&_0x5a4ca7['type']!==_0x330e13(0x1d1))throw menuError(_0x330e13(0x1af),_0x330e13(0x1e4)+_0x5a4ca7['id']+_0x330e13(0x1ef)+(_0x5a4ca7[_0x330e13(0x1d4)]||_0x330e13(0x1da))+_0x330e13(0x1dd),_0x330e13(0x1b2));if(_0x5a4ca7[_0x330e13(0x1cc)]!==0x0)throw menuError(_0x330e13(0x1ed),_0x330e13(0x1e4)+_0x5a4ca7['id']+_0x330e13(0x1b8)+_0x5a4ca7[_0x330e13(0x1cc)]+_0x330e13(0x1ee),_0x330e13(0x1f6));if(!_0x5a4ca7['path'][_0x330e13(0x1e5)]())throw menuError('menu_external_link_path_missing','Menu\x20'+_0x5a4ca7['id']+'\x20has\x20an\x20empty\x20platform\x20path.',_0x330e13(0x1f1));}function verifyUpdatedFact(_0x508ca4,_0x378633,_0x315836){const _0x1d50c6=a114_0x59c925;assertExternalLinkLeaf(_0x378633);const _0x2a8031=[['id',_0x378633['id'],_0x508ca4['id']],[_0x1d50c6(0x1ec),_0x378633[_0x1d50c6(0x1ec)],_0x508ca4['label']],[_0x1d50c6(0x1d4),_0x378633[_0x1d50c6(0x1d4)],_0x508ca4['type']],[_0x1d50c6(0x1f5),_0x378633['path'],_0x508ca4[_0x1d50c6(0x1f5)]],[_0x1d50c6(0x1ba),_0x378633[_0x1d50c6(0x1ba)],_0x508ca4['parentId']],['sort',_0x378633[_0x1d50c6(0x1e6)],_0x508ca4[_0x1d50c6(0x1e6)]],[_0x1d50c6(0x1eb),_0x378633['visible'],_0x508ca4[_0x1d50c6(0x1eb)]]];for(const [_0x56f131,_0xed60f5,_0x7fa8cb]of _0x2a8031){assertVerified(_0xed60f5===_0x7fa8cb,'Menu\x20'+_0x508ca4['id']+'\x20'+_0x56f131+_0x1d50c6(0x1b0));}assertVerified(_0x378633[_0x1d50c6(0x1ca)]===_0x315836,_0x1d50c6(0x1e4)+_0x508ca4['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x47017b,_0x373325,_0x15f27b,_0x4c3a47,_0x9873f6){const _0x1d9803=a114_0x59c925,_0x31f2d0=_0x15f27b['id'],_0x418fe7=mutationResult({..._0x47017b,'after':_0x15f27b,'dryRun':![],'succeeded':[{'id':_0x31f2d0,'updated':!_0x4c3a47,'skipped':_0x4c3a47,'recovered':_0x9873f6}],'verification':{'checkedBy':_0x1d9803(0x1ad),'snapshotHash':_0x373325[_0x1d9803(0x1de)],'targetId':_0x31f2d0,'matchesRequestedState':!![],'recovered':_0x9873f6}});return{'ok':!![],'message':_0x9873f6?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x31f2d0+'.':_0x4c3a47?'Menu\x20'+_0x31f2d0+_0x1d9803(0x1c6):_0x1d9803(0x1e9)+_0x31f2d0+'.','data':{..._0x418fe7,'recovered':_0x9873f6}};}async function recoverAfterResponseLoss(_0x6389b3,_0x5e5f98){const _0x11133d=a114_0x59c925,{plan:_0x2c3f7a,before:_0x1338d0,body:_0x492cf6}=_0x5e5f98;let _0x340f16;try{_0x340f16=await fetchMenuSnapshot(_0x6389b3['appCode'],_0x6389b3['cookie']);}catch{throw recoveryRequired(_0x2c3f7a,_0x6389b3[_0x11133d(0x1d3)],{'id':_0x492cf6['id'],'readbackFailed':!![]});}const _0x10ea0e=_0x340f16['byId']['get'](_0x492cf6['id']);if(!_0x10ea0e||_0x10ea0e[_0x11133d(0x1ca)]!==_0x492cf6['url'])throw recoveryRequired(_0x2c3f7a,_0x6389b3['appCode'],{'id':_0x492cf6['id'],'requestedUrlObserved':![],'after':_0x10ea0e??null});try{verifyUpdatedFact(_0x1338d0,_0x10ea0e,_0x492cf6[_0x11133d(0x1ca)]);}catch(_0x30f545){const _0x29812f=asVerificationError(_0x30f545,_0x11133d(0x1ae)+_0x492cf6['id']+_0x11133d(0x1b9));throw menuFailure(_0x29812f,_0x2c3f7a,{'stage':_0x11133d(0x1d5),'succeeded':[{'id':_0x492cf6['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x492cf6['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x10ea0e,'warnings':[_0x11133d(0x1d2)],'verification':{'status':_0x11133d(0x1bd),'targetId':_0x492cf6['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x6389b3[_0x11133d(0x1d3)])}});}return updateSuccess(_0x2c3f7a,_0x340f16,_0x10ea0e,![],!![]);}function recoveryRequired(_0x50c7b0,_0x149451,_0x33222f){const _0xcde5c7=a114_0x59c925,_0x482be2=menuError('menu_update_recovery_required',_0xcde5c7(0x1cd),'Run\x20'+buildLookupCommand(_0x149451)+_0xcde5c7(0x1fc));return menuFailure(_0x482be2,_0x50c7b0,{'stage':_0xcde5c7(0x1d5),'failed':{'id':_0x33222f['id'],..._0x33222f[_0xcde5c7(0x1df)]===undefined?{}:{'requestedUrlObserved':_0x33222f[_0xcde5c7(0x1df)]},..._0x33222f['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x33222f[_0xcde5c7(0x1ea)],'warnings':[_0xcde5c7(0x1c9)],'verification':{'status':_0xcde5c7(0x1bd),'targetId':_0x33222f['id'],..._0x33222f[_0xcde5c7(0x1df)]===undefined?{}:{'requestedUrlObserved':_0x33222f['requestedUrlObserved']},..._0x33222f[_0xcde5c7(0x1c2)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x149451)}});}function buildLookupCommand(_0x524841){const _0x12bb30=a114_0x59c925,_0x1ce081='\x27'+_0x524841[_0x12bb30(0x1c1)](/'/g,_0x12bb30(0x1bf))+'\x27';return _0x12bb30(0x1fa)+_0x1ce081+_0x12bb30(0x1b5);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a114_0x97dc(_0x3352aa,_0xb33b9a){_0x3352aa=_0x3352aa-0x193;const _0x20d1ca=a114_0x20d1();let _0x97dc83=_0x20d1ca[_0x3352aa];return _0x97dc83;}const a114_0x567416=a114_0x97dc;(function(_0x53f418,_0x8240fa){const _0x40153a=a114_0x97dc,_0x25bfd4=_0x53f418();while(!![]){try{const _0x153928=parseInt(_0x40153a(0x19c))/0x1+-parseInt(_0x40153a(0x1b5))/0x2+parseInt(_0x40153a(0x1c4))/0x3*(-parseInt(_0x40153a(0x1be))/0x4)+-parseInt(_0x40153a(0x1a4))/0x5+parseInt(_0x40153a(0x19f))/0x6*(-parseInt(_0x40153a(0x197))/0x7)+parseInt(_0x40153a(0x1b4))/0x8*(-parseInt(_0x40153a(0x1a8))/0x9)+parseInt(_0x40153a(0x1c3))/0xa;if(_0x153928===_0x8240fa)break;else _0x25bfd4['push'](_0x25bfd4['shift']());}catch(_0x499b03){_0x25bfd4['push'](_0x25bfd4['shift']());}}}(a114_0x20d1,0x24211));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';function a114_0x20d1(){const _0x534d7c=['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','folder','54AlbOil','verify\x20folder\x20creation','\x20is\x20missing\x20from\x20menu\x20list.','failed','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','string','Folder\x20label','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','verification','childrenCount','Created\x20menu\x20','flagMissing','64024DWNYLS','165784TmMuMx','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','get','\x20has\x20unexpected\x20parent\x20','\x20is\x20not\x20type\x20folder.','Menu\x20create\x20response\x20for\x20folder\x20','create-response-validation','str','\x20has\x20resources.','4MrtSeO','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','trim','Folder\x20','menu_create_response_invalid','5048280AXSmeV','75261KUlxaj','length','write','after','pageId','Created\x20folder\x20','\x20has\x20an\x20unexpected\x20sort.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','sort','\x20is\x20not\x20empty.','create','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','<platform-generated>','root','cookie','menu','/smartapi/menu/create','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','isSafeInteger','appCode','label','path','parentId',';\x20verify\x20it\x20before\x20retrying.','\x20is\x20not\x20visible.','rabetbase\x20menu\x20list\x20--format\x20json','21zVUpBc','create\x20folder','POST','\x20has\x20an\x20unexpected\x20label.','Created\x20menu\x20folder\x20','60819ixpxHh','\x22\x20with\x20a\x20platform-generated\x20path.','byId','442758LfCBRc','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','\x20may\x20exist\x20online\x20at\x20path\x20','hash','depth','201430qkdOLC','visible'];a114_0x20d1=function(){return _0x534d7c;};return a114_0x20d1();}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a114_0x567416(0x199),'path':a114_0x567416(0x1d4)}];export const menuGroupCreate={'service':a114_0x567416(0x1d3),'command':'group-create','description':a114_0x567416(0x1cb),'risk':a114_0x567416(0x1c6),'structuredErrors':!![],'flags':[{'name':a114_0x567416(0x1d8),'type':a114_0x567416(0x1ad),'required':!![],'description':a114_0x567416(0x1ae)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1721a4){validateCreateInput(_0x1721a4);},async 'dryRun'(_0x2b29db){const _0x4ad536=a114_0x567416,_0x115540=await buildCreatePlan(_0x2b29db,!![]),_0x14b242=_0x115540[_0x4ad536(0x1c7)];return menuDryRunResult(_0x115540,{'method':_0x4ad536(0x199),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x14b242[_0x4ad536(0x193)]),'label':_0x14b242[_0x4ad536(0x1d8)],'type':_0x4ad536(0x1a7),'visible':!![],'sort':_0x14b242[_0x4ad536(0x1cc)],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x14b242[_0x4ad536(0x1d8)])+_0x4ad536(0x19d)});},async 'execute'(_0x46f89d){const _0xb0040=a114_0x567416;validateCreateInput(_0x46f89d);const _0xba10c2=await buildCreatePlan(_0x46f89d,![]),_0x95bc41=_0xba10c2[_0xb0040(0x1c7)];await recheckMutationSnapshot(_0x46f89d,_0xba10c2,_0xb0040(0x198));let _0x2c9528;try{_0x2c9528=await createMenuEntity(_0x46f89d[_0xb0040(0x1d7)],_0x46f89d[_0xb0040(0x1d2)],{'parentId':toApiParentId(_0x95bc41['parentId']),'label':String(_0x95bc41['label']),'type':_0xb0040(0x1a7),'visible':!![],'sort':Number(_0x95bc41[_0xb0040(0x1cc)]),'extend':{}});}catch(_0x2eb517){const _0x217de0=mapMenuApiError(_0x2eb517,'create\x20folder');throw menuFailure(_0x217de0,_0xba10c2,{'stage':_0xb0040(0x1ce),'failed':{}});}const _0x23a727=Number(_0x2c9528['id']);if(!Number[_0xb0040(0x1d6)](_0x23a727)||_0x23a727<=0x0){const _0x3e12ed=menuError(_0xb0040(0x1c2),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0xb0040(0x1ac));throw menuFailure(_0x3e12ed,_0xba10c2,{'stage':_0xb0040(0x1bb),'failed':{'createdId':_0x2c9528['id']??null},'warnings':[_0xb0040(0x1a6)],'verification':{'status':'failed','lookupCommand':_0xb0040(0x196)}});}const _0x17f3fe=typeof _0x2c9528[_0xb0040(0x1d9)]===_0xb0040(0x1ad)?_0x2c9528[_0xb0040(0x1d9)]:'';if(!_0x17f3fe[_0xb0040(0x1c0)]()){const _0x37b799=menuError(_0xb0040(0x1c2),_0xb0040(0x1ba)+_0x23a727+_0xb0040(0x1bf),_0xb0040(0x1cf));throw menuFailure(_0x37b799,_0xba10c2,{'stage':_0xb0040(0x1bb),'succeeded':[{'id':_0x23a727,'created':!![]}],'failed':{'id':_0x23a727,'generatedPathConfirmed':![]},'warnings':[_0xb0040(0x1c1)+_0x23a727+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x95bc41,'id':_0x23a727,'path':_0x17f3fe},'verification':{'status':_0xb0040(0x1ab),'lookupCommand':_0xb0040(0x196),'targetId':_0x23a727}});}let _0x23fe26;try{_0x23fe26=await fetchMenuSnapshot(_0x46f89d[_0xb0040(0x1d7)],_0x46f89d[_0xb0040(0x1d2)]);}catch(_0x4e8adc){const _0x51ea86=describeMenuErrorCause(_0x4e8adc,_0xb0040(0x1a9),_0x23a727),_0x3710c6=asVerificationError(_0x4e8adc,'Folder\x20'+_0x23a727+_0xb0040(0x1a0));throw menuFailure(_0x3710c6,_0xba10c2,{'stage':_0xb0040(0x1b0),'succeeded':[{'id':_0x23a727,'created':!![],'path':_0x17f3fe}],'failed':{'id':_0x23a727,'finalFactsConfirmed':![],..._0x51ea86},'warnings':['Folder\x20'+_0x23a727+_0xb0040(0x1a1)+JSON['stringify'](_0x17f3fe)+_0xb0040(0x194)],'after':{..._0x95bc41,'id':_0x23a727,'path':_0x17f3fe},'verification':{'status':_0xb0040(0x1ab),'lookupCommand':_0xb0040(0x196),'targetId':_0x23a727}});}const _0x1b9218=_0x23fe26[_0xb0040(0x19e)][_0xb0040(0x1b7)](_0x23a727);let _0x5e66b3;try{assertVerified(Boolean(_0x1b9218),_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x1aa)),_0x5e66b3=_0x1b9218,assertVerified(_0x5e66b3['type']===_0xb0040(0x1a7),_0xb0040(0x1b2)+_0x23a727+_0xb0040(0x1b9)),assertVerified(_0x5e66b3['label']===_0x95bc41[_0xb0040(0x1d8)],_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x19a)),assertVerified(_0x5e66b3[_0xb0040(0x1d9)]===_0x17f3fe&&Boolean(_0x5e66b3[_0xb0040(0x1d9)][_0xb0040(0x1c0)]()),'Created\x20folder\x20'+_0x23a727+_0xb0040(0x1d5)),assertVerified(_0x5e66b3[_0xb0040(0x1a5)]===!![],_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x195)),assertVerified(_0x5e66b3['resources'][_0xb0040(0x1c5)]===0x0,_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x1bd)),assertVerified(_0x5e66b3[_0xb0040(0x1b1)]===0x0,'Created\x20folder\x20'+_0x23a727+_0xb0040(0x1cd)),assertVerified(_0x5e66b3[_0xb0040(0x1cc)]===_0x95bc41[_0xb0040(0x1cc)],_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x1ca)),assertVerified(_0x5e66b3[_0xb0040(0x193)]===_0x95bc41[_0xb0040(0x193)],'Created\x20folder\x20'+_0x23a727+_0xb0040(0x1b8)+(_0x5e66b3[_0xb0040(0x193)]??_0xb0040(0x1d1))+'.'),assertVerified(_0x5e66b3[_0xb0040(0x1c8)]==null,'Created\x20folder\x20'+_0x23a727+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x1fc140=_0x5e66b3['parentId']==null?undefined:requireFolder(_0x23fe26,_0x5e66b3[_0xb0040(0x193)]);assertVerified(_0x5e66b3[_0xb0040(0x1a3)]===(_0x1fc140?_0x1fc140[_0xb0040(0x1a3)]+0x1:0x0),_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x1af));}catch(_0x145013){const _0x9d5d5=describeMenuErrorCause(_0x145013,_0xb0040(0x1a9),_0x23a727),_0xd8f97d=asVerificationError(_0x145013,_0xb0040(0x1c1)+_0x23a727+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0xd8f97d,_0xba10c2,{'stage':'verification','succeeded':[{'id':_0x23a727,'created':!![],'path':_0x17f3fe}],'failed':{'id':_0x23a727,'finalFactsConfirmed':![],..._0x9d5d5},'warnings':[_0xb0040(0x1c1)+_0x23a727+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x1b9218??{..._0x95bc41,'id':_0x23a727,'path':_0x17f3fe},'verification':{'status':'failed','lookupCommand':_0xb0040(0x196),'targetId':_0x23a727}});}const _0x5b6486=mutationResult({..._0xba10c2,'after':_0x5e66b3,'dryRun':![],'succeeded':[{'id':_0x23a727,'type':_0xb0040(0x1a7),'path':_0x17f3fe}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x23fe26[_0xb0040(0x1a2)],'folder':!![],'path':_0x17f3fe,'emptyResources':!![]}});return{'ok':!![],'data':_0x5b6486,'message':_0xb0040(0x19b)+_0x23a727+'.'};}};function validateCreateInput(_0xd9d132){const _0x994266=a114_0x567416,_0x34412a=_0xd9d132[_0x994266(0x1bc)](_0x994266(0x1d8))[_0x994266(0x1c0)]();if(!_0x34412a)throw CliErrors[_0x994266(0x1b3)](_0x994266(0x1d8));parseParentId(_0xd9d132,'parent-id'),validateSort(_0xd9d132);}async function buildCreatePlan(_0x30b83c,_0x3dd8f8){const _0xae1ea6=a114_0x567416,_0x1e1231=await fetchMutationSnapshot(_0x30b83c,_0xae1ea6(0x198)),_0x5565c0=parseParentId(_0x30b83c,'parent-id')??null;if(_0x5565c0!=null)requireFolder(_0x1e1231,_0x5565c0);const _0x44dad3=validateSort(_0x30b83c),_0x583509=_0x44dad3??nextSiblingSort(_0x1e1231,_0x5565c0,_0xae1ea6(0x1a7)),_0x4600c1=_0x30b83c['str'](_0xae1ea6(0x1d8))[_0xae1ea6(0x1c0)]();return mutationResult({'operation':'group-create','selector':{'label':_0x4600c1,'parentId':_0x5565c0},'before':null,'after':{'id':null,'parentId':_0x5565c0,'label':_0x4600c1,'path':_0xae1ea6(0x1d0),'type':_0xae1ea6(0x1a7),'visible':!![],'sort':_0x583509,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x3dd8f8,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':'POST','path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x5565c0),'label':_0x4600c1,'type':_0xae1ea6(0x1a7),'visible':!![],'sort':_0x583509,'extend':{}}}],'snapshotHash':_0x1e1231[_0xae1ea6(0x1a2)],'warnings':[_0xae1ea6(0x1b6)]});}
|
|
1
|
+
const a115_0x41cfdc=a115_0xdc0c;(function(_0x34e95b,_0x434936){const _0x44c7e6=a115_0xdc0c,_0x1d614c=_0x34e95b();while(!![]){try{const _0x66b546=parseInt(_0x44c7e6(0x155))/0x1*(-parseInt(_0x44c7e6(0x14a))/0x2)+parseInt(_0x44c7e6(0x128))/0x3*(-parseInt(_0x44c7e6(0x145))/0x4)+parseInt(_0x44c7e6(0x135))/0x5+-parseInt(_0x44c7e6(0x144))/0x6+parseInt(_0x44c7e6(0x14d))/0x7+-parseInt(_0x44c7e6(0x12c))/0x8+parseInt(_0x44c7e6(0x153))/0x9;if(_0x66b546===_0x434936)break;else _0x1d614c['push'](_0x1d614c['shift']());}catch(_0x5250c7){_0x1d614c['push'](_0x1d614c['shift']());}}}(a115_0x2b13,0xd039b));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a115_0x2b13(){const _0x4b38d2=['1047140FWDXWA','Created\x20menu\x20folder\x20','<platform-generated>','menu','verification','isSafeInteger','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','get','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','Folder\x20','trim','\x22\x20with\x20a\x20platform-generated\x20path.','group-create','create-response-validation','appCode','8331348jfcTVG','3908SOUQGP','create\x20folder','menu_create_response_invalid','parent-id','\x20may\x20exist\x20online\x20at\x20path\x20','3361318RLrMUY','folder','resources','7702093EyCYVs','Menu\x20create\x20response\x20for\x20folder\x20','hash','create','visible','pageId','28593936zzZXOQ','Folder\x20label','1qxaFaA','/smartapi/menu/create','write','str','sort','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','path','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','after','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','\x20has\x20unexpected\x20parent\x20','\x20is\x20not\x20visible.','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','verify\x20folder\x20creation','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','rabetbase\x20menu\x20list\x20--format\x20json','depth','cookie','parentId','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','create-folder','Created\x20folder\x20','1563uWvOvf','POST','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','menu\x20list','445648quTBbg','\x20has\x20resources.','label','\x20is\x20not\x20type\x20folder.','byId','string','childrenCount','failed','\x20has\x20an\x20unexpected\x20sort.'];a115_0x2b13=function(){return _0x4b38d2;};return a115_0x2b13();}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':a115_0x41cfdc(0x129),'path':'/smartapi/menu/create'}];function a115_0xdc0c(_0x3d567e,_0x577801){_0x3d567e=_0x3d567e-0x128;const _0x2b1362=a115_0x2b13();let _0xdc0c70=_0x2b1362[_0x3d567e];return _0xdc0c70;}export const menuGroupCreate={'service':a115_0x41cfdc(0x138),'command':'group-create','description':a115_0x41cfdc(0x12a),'risk':a115_0x41cfdc(0x157),'structuredErrors':!![],'flags':[{'name':a115_0x41cfdc(0x12e),'type':'string','required':!![],'description':a115_0x41cfdc(0x154)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x51b225){validateCreateInput(_0x51b225);},async 'dryRun'(_0x157b68){const _0x113601=a115_0x41cfdc,_0x24399d=await buildCreatePlan(_0x157b68,!![]),_0x102b5e=_0x24399d[_0x113601(0x15d)];return menuDryRunResult(_0x24399d,{'method':'POST','url':_0x113601(0x156),'body':{'parentId':toApiParentId(_0x102b5e[_0x113601(0x167)]),'label':_0x102b5e[_0x113601(0x12e)],'type':'folder','visible':!![],'sort':_0x102b5e['sort'],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x102b5e[_0x113601(0x12e)])+_0x113601(0x140)});},async 'execute'(_0x406caf){const _0x1c433d=a115_0x41cfdc;validateCreateInput(_0x406caf);const _0x15f83d=await buildCreatePlan(_0x406caf,![]),_0x15146d=_0x15f83d['after'];await recheckMutationSnapshot(_0x406caf,_0x15f83d,_0x1c433d(0x146));let _0x41c169;try{_0x41c169=await createMenuEntity(_0x406caf[_0x1c433d(0x143)],_0x406caf[_0x1c433d(0x166)],{'parentId':toApiParentId(_0x15146d['parentId']),'label':String(_0x15146d['label']),'type':_0x1c433d(0x14b),'visible':!![],'sort':Number(_0x15146d[_0x1c433d(0x159)]),'extend':{}});}catch(_0x3abd3a){const _0x1955fe=mapMenuApiError(_0x3abd3a,_0x1c433d(0x146));throw menuFailure(_0x1955fe,_0x15f83d,{'stage':_0x1c433d(0x150),'failed':{}});}const _0x3e2cb5=Number(_0x41c169['id']);if(!Number[_0x1c433d(0x13a)](_0x3e2cb5)||_0x3e2cb5<=0x0){const _0x31d926=menuError(_0x1c433d(0x147),_0x1c433d(0x15e),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.');throw menuFailure(_0x31d926,_0x15f83d,{'stage':_0x1c433d(0x142),'failed':{'createdId':_0x41c169['id']??null},'warnings':[_0x1c433d(0x13d)],'verification':{'status':_0x1c433d(0x133),'lookupCommand':_0x1c433d(0x164)}});}const _0x34b70b=typeof _0x41c169[_0x1c433d(0x15b)]===_0x1c433d(0x131)?_0x41c169[_0x1c433d(0x15b)]:'';if(!_0x34b70b[_0x1c433d(0x13f)]()){const _0x6e089f=menuError('menu_create_response_invalid',_0x1c433d(0x14e)+_0x3e2cb5+_0x1c433d(0x168),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x6e089f,_0x15f83d,{'stage':'create-response-validation','succeeded':[{'id':_0x3e2cb5,'created':!![]}],'failed':{'id':_0x3e2cb5,'generatedPathConfirmed':![]},'warnings':[_0x1c433d(0x13e)+_0x3e2cb5+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x15146d,'id':_0x3e2cb5,'path':_0x34b70b},'verification':{'status':'failed','lookupCommand':_0x1c433d(0x164),'targetId':_0x3e2cb5}});}let _0x11fac7;try{_0x11fac7=await fetchMenuSnapshot(_0x406caf['appCode'],_0x406caf[_0x1c433d(0x166)]);}catch(_0x3f9da6){const _0xfc83d6=describeMenuErrorCause(_0x3f9da6,_0x1c433d(0x162),_0x3e2cb5),_0x46c7ec=asVerificationError(_0x3f9da6,'Folder\x20'+_0x3e2cb5+_0x1c433d(0x15a));throw menuFailure(_0x46c7ec,_0x15f83d,{'stage':_0x1c433d(0x139),'succeeded':[{'id':_0x3e2cb5,'created':!![],'path':_0x34b70b}],'failed':{'id':_0x3e2cb5,'finalFactsConfirmed':![],..._0xfc83d6},'warnings':[_0x1c433d(0x13e)+_0x3e2cb5+_0x1c433d(0x149)+JSON['stringify'](_0x34b70b)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x15146d,'id':_0x3e2cb5,'path':_0x34b70b},'verification':{'status':_0x1c433d(0x133),'lookupCommand':_0x1c433d(0x164),'targetId':_0x3e2cb5}});}const _0x3551ee=_0x11fac7[_0x1c433d(0x130)][_0x1c433d(0x13c)](_0x3e2cb5);let _0x4d7bdf;try{assertVerified(Boolean(_0x3551ee),_0x1c433d(0x16a)+_0x3e2cb5+'\x20is\x20missing\x20from\x20menu\x20list.'),_0x4d7bdf=_0x3551ee,assertVerified(_0x4d7bdf['type']===_0x1c433d(0x14b),'Created\x20menu\x20'+_0x3e2cb5+_0x1c433d(0x12f)),assertVerified(_0x4d7bdf[_0x1c433d(0x12e)]===_0x15146d[_0x1c433d(0x12e)],'Created\x20folder\x20'+_0x3e2cb5+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x4d7bdf[_0x1c433d(0x15b)]===_0x34b70b&&Boolean(_0x4d7bdf[_0x1c433d(0x15b)]['trim']()),'Created\x20folder\x20'+_0x3e2cb5+_0x1c433d(0x15c)),assertVerified(_0x4d7bdf[_0x1c433d(0x151)]===!![],_0x1c433d(0x16a)+_0x3e2cb5+_0x1c433d(0x160)),assertVerified(_0x4d7bdf[_0x1c433d(0x14c)]['length']===0x0,_0x1c433d(0x16a)+_0x3e2cb5+_0x1c433d(0x12d)),assertVerified(_0x4d7bdf[_0x1c433d(0x132)]===0x0,_0x1c433d(0x16a)+_0x3e2cb5+'\x20is\x20not\x20empty.'),assertVerified(_0x4d7bdf[_0x1c433d(0x159)]===_0x15146d[_0x1c433d(0x159)],_0x1c433d(0x16a)+_0x3e2cb5+_0x1c433d(0x134)),assertVerified(_0x4d7bdf[_0x1c433d(0x167)]===_0x15146d[_0x1c433d(0x167)],_0x1c433d(0x16a)+_0x3e2cb5+_0x1c433d(0x15f)+(_0x4d7bdf['parentId']??'root')+'.'),assertVerified(_0x4d7bdf[_0x1c433d(0x152)]==null,_0x1c433d(0x16a)+_0x3e2cb5+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x6b64fd=_0x4d7bdf[_0x1c433d(0x167)]==null?undefined:requireFolder(_0x11fac7,_0x4d7bdf[_0x1c433d(0x167)]);assertVerified(_0x4d7bdf['depth']===(_0x6b64fd?_0x6b64fd[_0x1c433d(0x165)]+0x1:0x0),_0x1c433d(0x16a)+_0x3e2cb5+_0x1c433d(0x13b));}catch(_0x1ce64d){const _0x42bbba=describeMenuErrorCause(_0x1ce64d,_0x1c433d(0x162),_0x3e2cb5),_0x445b81=asVerificationError(_0x1ce64d,_0x1c433d(0x13e)+_0x3e2cb5+_0x1c433d(0x163));throw menuFailure(_0x445b81,_0x15f83d,{'stage':_0x1c433d(0x139),'succeeded':[{'id':_0x3e2cb5,'created':!![],'path':_0x34b70b}],'failed':{'id':_0x3e2cb5,'finalFactsConfirmed':![],..._0x42bbba},'warnings':[_0x1c433d(0x13e)+_0x3e2cb5+_0x1c433d(0x161)],'after':_0x3551ee??{..._0x15146d,'id':_0x3e2cb5,'path':_0x34b70b},'verification':{'status':_0x1c433d(0x133),'lookupCommand':_0x1c433d(0x164),'targetId':_0x3e2cb5}});}const _0x100249=mutationResult({..._0x15f83d,'after':_0x4d7bdf,'dryRun':![],'succeeded':[{'id':_0x3e2cb5,'type':_0x1c433d(0x14b),'path':_0x34b70b}],'verification':{'checkedBy':_0x1c433d(0x12b),'snapshotHash':_0x11fac7[_0x1c433d(0x14f)],'folder':!![],'path':_0x34b70b,'emptyResources':!![]}});return{'ok':!![],'data':_0x100249,'message':_0x1c433d(0x136)+_0x3e2cb5+'.'};}};function validateCreateInput(_0x5e3e7f){const _0x369120=a115_0x41cfdc,_0x2dd31c=_0x5e3e7f['str'](_0x369120(0x12e))[_0x369120(0x13f)]();if(!_0x2dd31c)throw CliErrors['flagMissing'](_0x369120(0x12e));parseParentId(_0x5e3e7f,_0x369120(0x148)),validateSort(_0x5e3e7f);}async function buildCreatePlan(_0x4fc29d,_0x1ab121){const _0x2a445d=a115_0x41cfdc,_0x146eee=await fetchMutationSnapshot(_0x4fc29d,'create\x20folder'),_0x533b76=parseParentId(_0x4fc29d,_0x2a445d(0x148))??null;if(_0x533b76!=null)requireFolder(_0x146eee,_0x533b76);const _0x48028e=validateSort(_0x4fc29d),_0x4bcedc=_0x48028e??nextSiblingSort(_0x146eee,_0x533b76,_0x2a445d(0x14b)),_0x2ac695=_0x4fc29d[_0x2a445d(0x158)](_0x2a445d(0x12e))[_0x2a445d(0x13f)]();return mutationResult({'operation':_0x2a445d(0x141),'selector':{'label':_0x2ac695,'parentId':_0x533b76},'before':null,'after':{'id':null,'parentId':_0x533b76,'label':_0x2ac695,'path':_0x2a445d(0x137),'type':_0x2a445d(0x14b),'visible':!![],'sort':_0x4bcedc,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x1ab121,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2a445d(0x169),'method':_0x2a445d(0x129),'path':_0x2a445d(0x156),'body':{'parentId':toApiParentId(_0x533b76),'label':_0x2ac695,'type':'folder','visible':!![],'sort':_0x4bcedc,'extend':{}}}],'snapshotHash':_0x146eee['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a116_0x2b5a(_0x45f214,_0x5dbbfe){_0x45f214=_0x45f214-0x14c;const _0x57d906=a116_0x57d9();let _0x2b5abe=_0x57d906[_0x45f214];return _0x2b5abe;}const a116_0x5a40b6=a116_0x2b5a;(function(_0x2ac608,_0x5080b3){const _0x531de6=a116_0x2b5a,_0x476639=_0x2ac608();while(!![]){try{const _0x5cdb98=-parseInt(_0x531de6(0x16c))/0x1*(parseInt(_0x531de6(0x182))/0x2)+parseInt(_0x531de6(0x175))/0x3+parseInt(_0x531de6(0x174))/0x4+parseInt(_0x531de6(0x171))/0x5*(-parseInt(_0x531de6(0x177))/0x6)+parseInt(_0x531de6(0x14d))/0x7*(parseInt(_0x531de6(0x150))/0x8)+-parseInt(_0x531de6(0x163))/0x9*(-parseInt(_0x531de6(0x14f))/0xa)+-parseInt(_0x531de6(0x164))/0xb*(parseInt(_0x531de6(0x156))/0xc);if(_0x5cdb98===_0x5080b3)break;else _0x476639['push'](_0x476639['shift']());}catch(_0x2a8390){_0x476639['push'](_0x476639['shift']());}}}(a116_0x57d9,0x74f29));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a116_0x5a40b6(0x166),'path':a116_0x5a40b6(0x179)}];export const menuGroupUpdate={'service':a116_0x5a40b6(0x15f),'command':a116_0x5a40b6(0x16d),'description':a116_0x5a40b6(0x168),'risk':a116_0x5a40b6(0x16f),'structuredErrors':!![],'rejectedFlags':[{'name':a116_0x5a40b6(0x16e),'message':a116_0x5a40b6(0x17f),'hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a116_0x5a40b6(0x162),'type':a116_0x5a40b6(0x167),'description':a116_0x5a40b6(0x157)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x392d8d){validateUpdateInput(_0x392d8d);},async 'dryRun'(_0x464086){const _0x465db7=a116_0x5a40b6;validateUpdateInput(_0x464086);const {plan:_0x425caa,patch:_0x853b0e}=await buildUpdatePlan(_0x464086,!![]);return menuDryRunResult(_0x425caa,{'method':_0x465db7(0x166),'url':_0x465db7(0x179),'body':_0x853b0e,'description':'Would\x20update\x20folder\x20'+_0x425caa[_0x465db7(0x17a)]['id']+'.'});},async 'execute'(_0x434730){const _0x4aac4a=a116_0x5a40b6;validateUpdateInput(_0x434730);const {plan:_0x477874,patch:_0x5f4998,noChanges:_0x3a14e8}=await buildUpdatePlan(_0x434730,![]),_0x3a55ba=Number(_0x477874[_0x4aac4a(0x17a)]['id']),_0x39612b=await recheckMutationSnapshot(_0x434730,_0x477874,_0x4aac4a(0x16a),_0x3a55ba);if(!_0x3a14e8)try{await updateMenuEntity(_0x434730['appCode'],_0x434730['cookie'],_0x5f4998);}catch(_0x1f3cf7){const _0x32abfd=mapMenuApiError(_0x1f3cf7,_0x4aac4a(0x16a),_0x3a55ba);throw menuFailure(_0x32abfd,_0x477874,{'stage':_0x4aac4a(0x180),'failed':{'id':_0x3a55ba}});}let _0x779064=_0x39612b,_0x3ba156;try{!_0x3a14e8&&(_0x779064=await fetchMenuSnapshot(_0x434730[_0x4aac4a(0x152)],_0x434730['cookie'])),_0x3ba156=requireMenu(_0x779064,_0x3a55ba),verifyPatch(_0x3ba156,_0x5f4998),_0x3ba156[_0x4aac4a(0x160)]!=null&&requireFolder(_0x779064,_0x3ba156[_0x4aac4a(0x160)]);}catch(_0x4c8f6b){const _0x2ea23e=describeMenuErrorCause(_0x4c8f6b,_0x4aac4a(0x17c),_0x3a55ba),_0x3d1cbf=asVerificationError(_0x4c8f6b,_0x4aac4a(0x161)+_0x3a55ba+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x3d1cbf,_0x477874,{'stage':_0x4aac4a(0x170),'succeeded':[{'id':_0x3a55ba,'updateRequested':!_0x3a14e8,'skipped':_0x3a14e8}],'failed':{'id':_0x3a55ba,'requestedStateConfirmed':![],..._0x2ea23e},'warnings':[_0x4aac4a(0x155)],'verification':{'status':'failed','lookupCommand':_0x4aac4a(0x181),'targetId':_0x3a55ba}});}const _0xe31d90=mutationResult({..._0x477874,'after':_0x3ba156,'dryRun':![],'succeeded':[{'id':_0x3a55ba,'updated':!_0x3a14e8,'skipped':_0x3a14e8}],'verification':{'checkedBy':_0x4aac4a(0x165),'snapshotHash':_0x779064[_0x4aac4a(0x16b)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0xe31d90,'message':_0x3a14e8?'Folder\x20'+_0x3a55ba+_0x4aac4a(0x15a):_0x4aac4a(0x173)+_0x3a55ba+'.'};}};function a116_0x57d9(){const _0x562acc=['Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','No\x20online\x20fields\x20would\x20change.','update\x20folder','hash','67nOUxtz','group-update','parent-id','write','verification','35755XFWoqQ','validation','Updated\x20folder\x20','1349728VmQemL','2547057knKiJA','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','660RzieqJ','\x20label\x20update\x20did\x20not\x20take\x20effect.','/smartapi/menu/update','selector','menu_not_folder','verify\x20folder\x20update','--label\x20cannot\x20be\x20empty.','str','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','update','rabetbase\x20menu\x20list\x20--format\x20json','22686gutfPQ','Menu\x20','483NNKxWO','trim','190IBXtzC','82504cYYzaa','Folder\x20','appCode','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','\x22,\x20not\x20folder.','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','5811564EpdJhw','New\x20folder\x20label','\x20sort\x20update\x20did\x20not\x20take\x20effect.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','\x20already\x20matches\x20the\x20requested\x20state.','folder','type','sort','\x20is\x20type\x20\x22','menu','parentId','Update\x20request\x20for\x20folder\x20','label','289827JqjEnt','11ByOkzD','menu\x20list','POST','string'];a116_0x57d9=function(){return _0x562acc;};return a116_0x57d9();}function validateUpdateInput(_0x19dda0){const _0x6ff5aa=a116_0x5a40b6;validateExactId(_0x19dda0);if(hasFlag(_0x19dda0,_0x6ff5aa(0x16e)))throw CliErrors['validation'](_0x6ff5aa(0x17f),_0x6ff5aa(0x176));if(!hasFlag(_0x19dda0,_0x6ff5aa(0x162))&&!hasFlag(_0x19dda0,_0x6ff5aa(0x15d)))throw CliErrors[_0x6ff5aa(0x172)](_0x6ff5aa(0x153));if(hasFlag(_0x19dda0,_0x6ff5aa(0x162))&&!_0x19dda0['str'](_0x6ff5aa(0x162))[_0x6ff5aa(0x14e)]())throw CliErrors['validation'](_0x6ff5aa(0x17d));validateSort(_0x19dda0);}async function buildUpdatePlan(_0x5a14be,_0x312c31){const _0x567236=a116_0x5a40b6,_0x118848=validateExactId(_0x5a14be),_0xea2ab8=await fetchMutationSnapshot(_0x5a14be,'update\x20folder',_0x118848),_0x42bb2e=requireMenu(_0xea2ab8,_0x118848);if(_0x42bb2e['type']!==_0x567236(0x15b))throw menuError(_0x567236(0x17b),_0x567236(0x14c)+_0x118848+_0x567236(0x15e)+(_0x42bb2e['type']||'unknown')+_0x567236(0x154),_0x567236(0x159));assertExpectedState(_0x5a14be,_0x42bb2e);const _0x1b7d7a={'id':_0x118848},_0x2e6bfa={..._0x42bb2e};if(hasFlag(_0x5a14be,_0x567236(0x162))){const _0x3181ca=_0x5a14be[_0x567236(0x17e)](_0x567236(0x162))[_0x567236(0x14e)]();_0x1b7d7a[_0x567236(0x162)]=_0x3181ca,_0x2e6bfa[_0x567236(0x162)]=_0x3181ca;}if(hasFlag(_0x5a14be,_0x567236(0x15d))){const _0xe14a43=validateSort(_0x5a14be);_0x1b7d7a[_0x567236(0x15d)]=_0xe14a43,_0x2e6bfa[_0x567236(0x15d)]=_0xe14a43;}const _0x1d4a7c=sameRequestedState(_0x42bb2e,_0x2e6bfa),_0xc7ef75=_0x1d4a7c?[_0x567236(0x169)]:[];return{'patch':_0x1b7d7a,'noChanges':_0x1d4a7c,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x118848},'before':_0x42bb2e,'after':_0x2e6bfa,'dryRun':_0x312c31,'backend':[...BACKEND],'snapshotHash':_0xea2ab8[_0x567236(0x16b)],'warnings':_0xc7ef75})};}function sameRequestedState(_0x23fd6f,_0x183ab2){const _0x16c514=a116_0x5a40b6;return _0x23fd6f[_0x16c514(0x162)]===_0x183ab2['label']&&_0x23fd6f[_0x16c514(0x15d)]===_0x183ab2[_0x16c514(0x15d)];}function verifyPatch(_0x4f07a3,_0x507b68){const _0x2e36fe=a116_0x5a40b6;assertVerified(_0x4f07a3[_0x2e36fe(0x15c)]==='folder',_0x2e36fe(0x14c)+_0x4f07a3['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x507b68['label']!==undefined&&assertVerified(_0x4f07a3['label']===_0x507b68[_0x2e36fe(0x162)],'Folder\x20'+_0x4f07a3['id']+_0x2e36fe(0x178)),_0x507b68[_0x2e36fe(0x15d)]!==undefined&&assertVerified(_0x4f07a3[_0x2e36fe(0x15d)]===_0x507b68[_0x2e36fe(0x15d)],_0x2e36fe(0x151)+_0x4f07a3['id']+_0x2e36fe(0x158));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x478ba9,_0x7299aa){const _0x4a6df5=a117_0x13a5,_0x3087c2=_0x478ba9();while(!![]){try{const _0x554cf7=-parseInt(_0x4a6df5(0x19a))/0x1+-parseInt(_0x4a6df5(0x193))/0x2*(-parseInt(_0x4a6df5(0x190))/0x3)+-parseInt(_0x4a6df5(0x192))/0x4+-parseInt(_0x4a6df5(0x196))/0x5*(-parseInt(_0x4a6df5(0x194))/0x6)+parseInt(_0x4a6df5(0x195))/0x7*(-parseInt(_0x4a6df5(0x198))/0x8)+parseInt(_0x4a6df5(0x197))/0x9*(parseInt(_0x4a6df5(0x19b))/0xa)+parseInt(_0x4a6df5(0x191))/0xb*(parseInt(_0x4a6df5(0x199))/0xc);if(_0x554cf7===_0x7299aa)break;else _0x3087c2['push'](_0x3087c2['shift']());}catch(_0x19144){_0x3087c2['push'](_0x3087c2['shift']());}}}(a117_0x228a,0x6a8d2));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';function a117_0x13a5(_0xdebec2,_0x2883b4){_0xdebec2=_0xdebec2-0x190;const _0x228a91=a117_0x228a();let _0x13a5fa=_0x228a91[_0xdebec2];return _0x13a5fa;}import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';function a117_0x228a(){const _0x4d5de1=['1094XmEZDh','6HExYVH','13713djEUVW','1815805fCypXf','279iIACFP','8zbukKm','319272FZjUhK','32862RhAFPb','28090FBwCvE','2547RnHKQg','55OubXVZ','2305672KEexye'];a117_0x228a=function(){return _0x4d5de1;};return a117_0x228a();}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 a118_0x201db1=a118_0x12bf;(function(_0x35014b,_0x37c7df){const _0x26699e=a118_0x12bf,_0x3f32ec=_0x35014b();while(!![]){try{const _0x205607=parseInt(_0x26699e(0x1ed))/0x1+parseInt(_0x26699e(0x201))/0x2*(parseInt(_0x26699e(0x1fd))/0x3)+parseInt(_0x26699e(0x1f9))/0x4*(-parseInt(_0x26699e(0x1f1))/0x5)+-parseInt(_0x26699e(0x1fb))/0x6*(-parseInt(_0x26699e(0x1fc))/0x7)+-parseInt(_0x26699e(0x1f4))/0x8+parseInt(_0x26699e(0x1f7))/0x9+-parseInt(_0x26699e(0x1f0))/0xa;if(_0x205607===_0x37c7df)break;else _0x3f32ec['push'](_0x3f32ec['shift']());}catch(_0x531d7c){_0x3f32ec['push'](_0x3f32ec['shift']());}}}(a118_0x1acf,0xd0366));function a118_0x12bf(_0xe28ea6,_0x44dc82){_0xe28ea6=_0xe28ea6-0x1ec;const _0x1acfc8=a118_0x1acf();let _0x12bffc=_0x1acfc8[_0xe28ea6];return _0x12bffc;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a118_0x1acf(){const _0x2cfb48=['70987Rzfndu','6ncXEQR','bool','cookie','map','1595292yjDLYu','menu','1386229DCsbKX','boolean','total','28589570geXRMs','255ybjNMF','No\x20menus\x20found.','read','3618984IfMoyJ','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','hash','5884425CkJMZU','Found\x20','84988zJanKn','verbose','954nKkEYy'];a118_0x1acf=function(){return _0x2cfb48;};return a118_0x1acf();}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a118_0x201db1(0x1ec),'command':'list','description':'List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','risk':a118_0x201db1(0x1f3),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a118_0x201db1(0x1fa),'type':a118_0x201db1(0x1ee),'description':a118_0x201db1(0x1f5)}],async 'execute'(_0xad6ce5){const _0x148885=a118_0x201db1,_0x5b9a10=_0xad6ce5[_0x148885(0x1fe)](_0x148885(0x1fa)),_0x2d3091=await fetchMenuSnapshot(_0xad6ce5['appCode'],_0xad6ce5[_0x148885(0x1ff)],{'verbose':_0x5b9a10});return{'ok':!![],'data':{'total':_0x2d3091['total'],'snapshotHash':_0x2d3091[_0x148885(0x1f6)],'menus':_0x2d3091['menus'][_0x148885(0x200)](toMenuListItem)},'message':_0x2d3091[_0x148885(0x1ef)]===0x0?_0x148885(0x1f2):_0x148885(0x1f8)+_0x2d3091[_0x148885(0x1ef)]+'\x20menu(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a119_0xccd01e=a119_0x3ca6;function a119_0xab61(){const _0x10f2e1=['3551545fgKatv','menu\x20list',',\x20current\x20','menu_state_drift','Menu\x20','parent-id','hash','cookie','folder','4WFrDHk','924390mNPytW','rabetbase\x20menu\x20list\x20--format\x20compress','POST','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','/smartapi/menu/update','\x20parent\x20changed:\x20expected\x20','44466JIuQrb','menu_move_source_not_leaf','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','update','2QoeUWZ','156478vjQUFD','menu','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','parentId','1558149MsFowB','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','11SMzQyW','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','9385790HZEtPa','write','appCode','type','move','sort','verify\x20menu\x20move','after','378sdqWkC','Moved\x20menu\x20','childrenCount','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','70352wTIcoU','expect-parent-id'];a119_0xab61=function(){return _0x10f2e1;};return a119_0xab61();}(function(_0x12feaf,_0x332338){const _0x4d536b=a119_0x3ca6,_0x71f774=_0x12feaf();while(!![]){try{const _0x47cc18=parseInt(_0x4d536b(0x13b))/0x1*(parseInt(_0x4d536b(0x13c))/0x2)+-parseInt(_0x4d536b(0x140))/0x3*(parseInt(_0x4d536b(0x130))/0x4)+-parseInt(_0x4d536b(0x127))/0x5+parseInt(_0x4d536b(0x137))/0x6*(parseInt(_0x4d536b(0x14d))/0x7)+-parseInt(_0x4d536b(0x125))/0x8+parseInt(_0x4d536b(0x131))/0x9+parseInt(_0x4d536b(0x145))/0xa*(parseInt(_0x4d536b(0x143))/0xb);if(_0x47cc18===_0x332338)break;else _0x71f774['push'](_0x71f774['shift']());}catch(_0x974ee7){_0x71f774['push'](_0x71f774['shift']());}}}(a119_0xab61,0x57c33));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a119_0x3ca6(_0x3c9aa5,_0x4d76aa){_0x3c9aa5=_0x3c9aa5-0x123;const _0xab6188=a119_0xab61();let _0x3ca648=_0xab6188[_0x3c9aa5];return _0x3ca648;}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':a119_0xccd01e(0x133),'path':a119_0xccd01e(0x135)}];export const menuMove={'service':a119_0xccd01e(0x13d),'command':'move','description':'Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','risk':a119_0xccd01e(0x146),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x104008){validateMoveInput(_0x104008);},async 'dryRun'(_0x49e137){const _0x473a2c=a119_0xccd01e,{plan:_0xd3151b,patch:_0x47ae8f}=await buildMovePlan(_0x49e137,!![]);return menuDryRunResult(_0xd3151b,{'method':_0x473a2c(0x133),'url':_0x473a2c(0x135),'body':{..._0x47ae8f,'appCode':_0x49e137[_0x473a2c(0x147)]},'description':'Would\x20move\x20menu\x20'+_0x47ae8f['id']+'.'});},async 'execute'(_0x6bb21){const _0x364ce8=a119_0xccd01e;validateMoveInput(_0x6bb21);const {plan:_0x4f74c1,patch:_0xb60328,noChanges:_0x358ae8,snapshot:_0x4a4738}=await buildMovePlan(_0x6bb21,![]),_0x234f70=_0xb60328['id'];if(!_0x358ae8)try{await updateMenuEntity(_0x6bb21[_0x364ce8(0x147)],_0x6bb21[_0x364ce8(0x12e)],_0xb60328);}catch(_0x2a581b){const _0x932c3e=mapMenuApiError(_0x2a581b,'move',_0x234f70);throw menuFailure(_0x932c3e,_0x4f74c1,{'stage':_0x364ce8(0x13a),'failed':{'id':_0x234f70},'warnings':[_0x364ce8(0x139)],'verification':{'status':'failed','targetId':_0x234f70,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0xbd255e,_0xf524c6;try{_0xbd255e=_0x358ae8?_0x4a4738:await fetchMenuSnapshot(_0x6bb21[_0x364ce8(0x147)],_0x6bb21[_0x364ce8(0x12e)]),_0xf524c6=requireMenu(_0xbd255e,_0x234f70),verifyMove(_0xf524c6,_0x4f74c1[_0x364ce8(0x14c)]),_0xf524c6[_0x364ce8(0x13f)]!==null&&requireFolder(_0xbd255e,_0xf524c6[_0x364ce8(0x13f)]);}catch(_0x15b1ba){const _0xf7c567=describeMenuErrorCause(_0x15b1ba,_0x364ce8(0x14b),_0x234f70),_0x36de68=asVerificationError(_0x15b1ba,'Move\x20request\x20for\x20menu\x20'+_0x234f70+_0x364ce8(0x13e));throw menuFailure(_0x36de68,_0x4f74c1,{'stage':'verification','succeeded':[{'id':_0x234f70,'updateRequested':!_0x358ae8,'skipped':_0x358ae8}],'failed':{'id':_0x234f70,'requestedStateConfirmed':![],..._0xf7c567},'warnings':[_0x364ce8(0x134)],'verification':{'status':'failed','targetId':_0x234f70,'lookupCommand':_0x364ce8(0x132)}});}const _0x3b3582=mutationResult({..._0x4f74c1,'after':_0xf524c6,'dryRun':![],'succeeded':[{'id':_0x234f70,'updated':!_0x358ae8,'skipped':_0x358ae8}],'verification':{'checkedBy':_0x364ce8(0x128),'snapshotHash':_0xbd255e['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x3b3582,'message':_0x358ae8?'Menu\x20'+_0x234f70+'\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.':_0x364ce8(0x14e)+_0x234f70+'.'};}};function validateMoveInput(_0x296782){const _0x2fd5cb=a119_0xccd01e;validateExactId(_0x296782),parseParentId(_0x296782,_0x2fd5cb(0x12c),{'required':!![]}),parseParentId(_0x296782,_0x2fd5cb(0x126),{'required':!![]}),validateSort(_0x296782);}async function buildMovePlan(_0x1cdb60,_0x1dcd9a){const _0x1d9b79=a119_0xccd01e,_0x108418=validateExactId(_0x1cdb60),_0x25f660=parseParentId(_0x1cdb60,_0x1d9b79(0x12c),{'required':!![]}),_0x5a58f=parseParentId(_0x1cdb60,_0x1d9b79(0x126),{'required':!![]}),_0xf206ba=validateSort(_0x1cdb60),_0x15d881=await fetchMutationSnapshot(_0x1cdb60,'move\x20menu',_0x108418),_0x1a039d=requireMenu(_0x15d881,_0x108418);if(_0x1a039d[_0x1d9b79(0x148)]===_0x1d9b79(0x12f)||_0x1a039d[_0x1d9b79(0x123)]!==0x0)throw menuError(_0x1d9b79(0x138),_0x1d9b79(0x12b)+_0x108418+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.',_0x1d9b79(0x144));if(_0x1a039d[_0x1d9b79(0x13f)]!==_0x5a58f)throw menuError(_0x1d9b79(0x12a),_0x1d9b79(0x12b)+_0x108418+_0x1d9b79(0x136)+formatParent(_0x5a58f)+_0x1d9b79(0x129)+formatParent(_0x1a039d[_0x1d9b79(0x13f)])+'.',_0x1d9b79(0x124));_0x25f660!==null&&requireFolder(_0x15d881,_0x25f660);const _0x59d8b7=_0xf206ba??(_0x1a039d['parentId']===_0x25f660?_0x1a039d[_0x1d9b79(0x14a)]??0x0:nextSiblingSort(_0x15d881,_0x25f660,_0x1d9b79(0x13d))),_0x4390ae={..._0x1a039d,'parentId':_0x25f660,'sort':_0x59d8b7},_0x10e403={'id':_0x108418,'parentId':toApiParentId(_0x25f660),'sort':_0x59d8b7},_0x4c4922=_0x1a039d[_0x1d9b79(0x13f)]===_0x25f660&&_0x1a039d[_0x1d9b79(0x14a)]===_0x59d8b7;return{'patch':_0x10e403,'noChanges':_0x4c4922,'snapshot':_0x15d881,'plan':mutationResult({'operation':_0x1d9b79(0x149),'selector':{'id':_0x108418,'parentId':_0x25f660},'before':_0x1a039d,'after':_0x4390ae,'dryRun':_0x1dcd9a,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':_0x1d9b79(0x133),'path':_0x1d9b79(0x135),'body':{..._0x10e403,'appCode':_0x1cdb60[_0x1d9b79(0x147)]}}],'snapshotHash':_0x15d881[_0x1d9b79(0x12d)],'warnings':_0x4c4922?['Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.']:[]})};}function verifyMove(_0x14fd9e,_0x48d159){const _0x23a70d=a119_0xccd01e;assertVerified(_0x14fd9e[_0x23a70d(0x148)]!==_0x23a70d(0x12f),'Menu\x20'+_0x14fd9e['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x14fd9e[_0x23a70d(0x123)]===0x0,_0x23a70d(0x12b)+_0x14fd9e['id']+'\x20is\x20no\x20longer\x20a\x20leaf.'),assertVerified(_0x14fd9e[_0x23a70d(0x13f)]===_0x48d159[_0x23a70d(0x13f)],_0x23a70d(0x12b)+_0x14fd9e['id']+_0x23a70d(0x142)),assertVerified(_0x14fd9e[_0x23a70d(0x14a)]===_0x48d159[_0x23a70d(0x14a)],_0x23a70d(0x12b)+_0x14fd9e['id']+_0x23a70d(0x141));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a119_0x2b905f=a119_0x4eb4;(function(_0x2f71d1,_0x84b318){const _0x52a9ab=a119_0x4eb4,_0x48eaa6=_0x2f71d1();while(!![]){try{const _0x39fc6b=parseInt(_0x52a9ab(0x120))/0x1+parseInt(_0x52a9ab(0x101))/0x2+-parseInt(_0x52a9ab(0xfb))/0x3+parseInt(_0x52a9ab(0xf7))/0x4+parseInt(_0x52a9ab(0x119))/0x5+parseInt(_0x52a9ab(0xeb))/0x6*(parseInt(_0x52a9ab(0x113))/0x7)+-parseInt(_0x52a9ab(0x127))/0x8;if(_0x39fc6b===_0x84b318)break;else _0x48eaa6['push'](_0x48eaa6['shift']());}catch(_0x4ac6f2){_0x48eaa6['push'](_0x48eaa6['shift']());}}}(a119_0xa802,0x5465d));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';function a119_0x4eb4(_0x4132d3,_0x578fe7){_0x4132d3=_0x4132d3-0xe5;const _0xa802f=a119_0xa802();let _0x4eb4b3=_0xa802f[_0x4132d3];return _0x4eb4b3;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';function a119_0xa802(){const _0x56a689=['stringify','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','POST','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','size','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','replace','submit-regroup-task','type','\x20--format\x20compress','<platform-generated>','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','start\x20menu\x20regroup','unconfirmed','get','menu','label','menuIds','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','\x20menu\x20list\x20--appcode\x20','plan','toLowerCase','readbackError','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','menus','menu\x20list','501846RfFKEP','menu-ids','<new-group-id>','menu_regroup_target_not_leaf','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','sort','Regroup\x20readback\x20also\x20failed:\x20','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','test','cookie','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','write','762376TylnyU','--menu-ids\x20supports\x20at\x20most\x20','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','filter','1313823lkOwcm','warnings','regroup-submit','Regroup\x20readback\x20failed:\x20','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','status','699644CCWIFO','knownStatus','str','failed','/smartapi/menu/regroup','length','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','Regroup\x20task\x20accepted.\x20','map','FAILED','folder','validation','split','string','appCode','regroup-start','trim','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','7OKmMRn','parentId','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','join','group','some','2496845ZSxhlR','childrenIds','\x20menus\x20per\x20regroup\x20request.','menu_regroup_target_label_missing','plan\x20regroup','SUCCESS','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','242036twpKbi','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','taskId','applied','hash','Regroup\x20task\x20','message','4654624hdzefW','isTerminal','Menu\x20','input'];a119_0xa802=function(){return _0x56a689;};return a119_0xa802();}import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a119_0x2b905f(0x12d),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a119_0x2b905f(0x13a),'command':a119_0x2b905f(0x110),'description':a119_0x2b905f(0xff),'risk':a119_0x2b905f(0xf6),'structuredErrors':!![],'flags':[{'name':a119_0x2b905f(0x13b),'type':a119_0x2b905f(0x10e),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a119_0x2b905f(0xec),'type':'string','required':!![],'description':a119_0x2b905f(0x121)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3eef2b){validateRegroupInput(_0x3eef2b);},async 'dryRun'(_0x42d857){const _0x4f5b94=a119_0x2b905f;validateRegroupInput(_0x42d857);const _0x164dc9=await buildRegroupPlan(_0x42d857,!![]);return menuDryRunResult(_0x164dc9[_0x4f5b94(0xe5)],{'method':'POST','url':_0x4f5b94(0x105),'body':_0x164dc9['input'],'description':_0x4f5b94(0x107)+JSON[_0x4f5b94(0x12b)](_0x164dc9[_0x4f5b94(0x13b)])+'\x20and\x20regroup\x20menu\x20ids\x20'+_0x164dc9[_0x4f5b94(0x13c)][_0x4f5b94(0x116)](',\x20')+';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.'});},async 'execute'(_0x446107){const _0x4b0f96=a119_0x2b905f;validateRegroupInput(_0x446107);const _0x5a9161=await buildRegroupPlan(_0x446107,![]);await recheckMutationSnapshot(_0x446107,_0x5a9161['plan'],'start\x20regroup');const _0x1735fe=buildMenuLookupCommand(_0x446107[_0x4b0f96(0x10f)]);let _0x243e35,_0x5b8f8c;try{_0x243e35=await startMenuRegroup(_0x446107[_0x4b0f96(0xf4)],_0x5a9161[_0x4b0f96(0x12a)]),_0x5b8f8c=normalizeAsyncTask(_0x243e35);}catch(_0x46011b){const _0x485e67=await inspectRegroupAfterFailure(_0x446107[_0x4b0f96(0x10f)],_0x446107[_0x4b0f96(0xf4)],_0x5a9161[_0x4b0f96(0x13b)],_0x5a9161[_0x4b0f96(0x13c)]),_0x219b38=typeof _0x243e35?.[_0x4b0f96(0x122)]==='string'&&_0x243e35[_0x4b0f96(0x122)][_0x4b0f96(0x111)]()?_0x243e35[_0x4b0f96(0x122)][_0x4b0f96(0x111)]():null,_0xd22345=_0x219b38?{'command':buildAsyncTaskStatusCommand(_0x219b38,_0x446107[_0x4b0f96(0x10f)])}:null,_0x381ca9=mapMenuApiError(_0x46011b,_0x4b0f96(0x137));throw menuFailure(_0x381ca9,_0x5a9161[_0x4b0f96(0xe5)],{'stage':_0x4b0f96(0xfd),'failed':{'menuIds':_0x5a9161[_0x4b0f96(0x13c)],'taskId':_0x219b38,'groupingApplied':_0x485e67[_0x4b0f96(0x123)]?!![]:_0x4b0f96(0x138)},'after':_0x485e67[_0x4b0f96(0x123)]??null,'warnings':[_0x4b0f96(0xf5),..._0x485e67['readbackError']?[_0x4b0f96(0xf1)+_0x485e67[_0x4b0f96(0xe7)]]:[],..._0x219b38?[_0x4b0f96(0xe8)]:[]],'verification':{'status':_0x4b0f96(0x104),'groupingApplied':_0x485e67[_0x4b0f96(0x123)]?!![]:_0x4b0f96(0x138),'taskId':_0x219b38,'query':_0xd22345,'lookupCommand':_0x1735fe}});}const _0x2d36a1=buildAsyncTaskStatusCommand(_0x5b8f8c[_0x4b0f96(0x122)],_0x446107['appCode']);let _0x4fca63=null,_0x3ba4ec=null,_0x5bead4=null;try{_0x4fca63=await fetchMenuSnapshot(_0x446107[_0x4b0f96(0x10f)],_0x446107[_0x4b0f96(0xf4)]),_0x3ba4ec=findAppliedRegroup(_0x4fca63,_0x5a9161[_0x4b0f96(0x13b)],_0x5a9161[_0x4b0f96(0x13c)]);}catch(_0x424e99){_0x5bead4=_0x424e99 instanceof Error?_0x424e99['message']:String(_0x424e99);}const _0x6708f4=mutationResult({..._0x5a9161[_0x4b0f96(0xe5)],'after':_0x3ba4ec??null,'dryRun':![],'succeeded':[{'groupId':_0x3ba4ec?.[_0x4b0f96(0x117)]['id']??null,'menuIds':_0x5a9161[_0x4b0f96(0x13c)],'taskId':_0x5b8f8c[_0x4b0f96(0x122)],'status':_0x5b8f8c[_0x4b0f96(0x100)],'groupingApplied':_0x3ba4ec?!![]:_0x4b0f96(0x138)}],'verification':{'checkedBy':_0x4b0f96(0xea),'snapshotHash':_0x4fca63?.[_0x4b0f96(0x124)]??null,'groupId':_0x3ba4ec?.[_0x4b0f96(0x117)]['id']??null,'groupingApplied':_0x3ba4ec?!![]:_0x4b0f96(0x138),'readbackError':_0x5bead4,'lookupCommand':_0x1735fe},'warnings':[..._0x5a9161[_0x4b0f96(0xe5)][_0x4b0f96(0xfc)],...!_0x3ba4ec?[unconfirmedRegroupWarning(_0x5b8f8c)]:[],..._0x5bead4?[_0x4b0f96(0xfe)+_0x5bead4]:[]]}),_0x351260=_0x5b8f8c[_0x4b0f96(0x100)]===_0x4b0f96(0x11e)&&!_0x3ba4ec?_0x4b0f96(0x125)+_0x5b8f8c['taskId']+_0x4b0f96(0x12c):_0x4b0f96(0x108)+asyncTaskMessage(_0x5b8f8c);return{'ok':!![],'message':_0x351260,'data':{..._0x6708f4,'task':_0x5b8f8c,'query':_0x5b8f8c[_0x4b0f96(0x128)]?null:{'command':_0x2d36a1}}};}};function validateRegroupInput(_0x53d16d){const _0x3e7388=a119_0x2b905f;if(!_0x53d16d['str'](_0x3e7388(0x13b))[_0x3e7388(0x111)]())throw CliErrors['flagMissing'](_0x3e7388(0x13b));parseMenuIds(_0x53d16d[_0x3e7388(0x103)](_0x3e7388(0xec)));}function parseMenuIds(_0x5c6365){const _0x164f37=a119_0x2b905f,_0x321750=_0x5c6365[_0x164f37(0x10d)](',')[_0x164f37(0x109)](_0x19e7e5=>_0x19e7e5[_0x164f37(0x111)]());if(_0x321750['length']===0x0||_0x321750[_0x164f37(0x118)](_0x325acb=>!_0x325acb))throw CliErrors[_0x164f37(0x10c)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x243647=_0x321750[_0x164f37(0x109)](_0x7549dd=>{const _0xcb78ed=_0x164f37;if(!/^\d+$/[_0xcb78ed(0xf3)](_0x7549dd))throw CliErrors['validation'](_0xcb78ed(0x130));const _0x51c0d7=Number(_0x7549dd);if(!Number['isSafeInteger'](_0x51c0d7)||_0x51c0d7<=0x0)throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x51c0d7;});if(new Set(_0x243647)[_0x164f37(0x12f)]!==_0x243647[_0x164f37(0x106)])throw CliErrors[_0x164f37(0x10c)]('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x243647[_0x164f37(0x106)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x164f37(0x10c)](_0x164f37(0xf8)+MAX_REGROUP_MENU_COUNT+_0x164f37(0x11b));return _0x243647;}function buildMenuLookupCommand(_0x50adf7){const _0xd21f25=a119_0x2b905f,_0x511354='\x27'+_0x50adf7[_0xd21f25(0x131)](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+_0xd21f25(0x13e)+_0x511354+_0xd21f25(0x134);}function unconfirmedRegroupWarning(_0x3c5c36){const _0x236858=a119_0x2b905f;if(_0x3c5c36[_0x236858(0x100)]===_0x236858(0x11e))return _0x236858(0x115);if(_0x3c5c36[_0x236858(0x100)]===_0x236858(0x10a))return _0x236858(0xf2);if(_0x3c5c36[_0x236858(0x102)])return _0x236858(0x136);return'The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';}async function buildRegroupPlan(_0x179793,_0x2d2dbc){const _0x253a98=a119_0x2b905f,_0x35d1b8=_0x179793[_0x253a98(0x103)]('label')[_0x253a98(0x111)](),_0x5b3e4e=parseMenuIds(_0x179793[_0x253a98(0x103)](_0x253a98(0xec))),_0x39b90e=await fetchMutationSnapshot(_0x179793,_0x253a98(0x11d)),_0x40036f=_0x5b3e4e['map'](_0x44d41d=>requireMenu(_0x39b90e,_0x44d41d));for(const _0x549d61 of _0x40036f){if(_0x549d61['type'][_0x253a98(0x111)]()[_0x253a98(0xe6)]()===_0x253a98(0x10b)||_0x549d61['childrenCount']>0x0)throw menuError(_0x253a98(0xee),_0x253a98(0x129)+_0x549d61['id']+_0x253a98(0xef),_0x253a98(0x13d));if(!_0x549d61[_0x253a98(0x13b)][_0x253a98(0x111)]())throw menuError(_0x253a98(0x11c),'Menu\x20'+_0x549d61['id']+'\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.');}const _0x5e9826=findAppliedRegroup(_0x39b90e,_0x35d1b8,_0x5b3e4e);if(_0x5e9826)throw menuError('menu_regroup_already_applied','Menus\x20'+_0x5b3e4e[_0x253a98(0x116)](',\x20')+_0x253a98(0x11f)+_0x5e9826[_0x253a98(0x117)]['id']+'\x20('+JSON[_0x253a98(0x12b)](_0x35d1b8)+').','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.');const _0x2cd896=_0x39b90e[_0x253a98(0xe9)][_0x253a98(0xfa)](_0x4c7ea4=>_0x4c7ea4[_0x253a98(0x114)]==null&&_0x4c7ea4[_0x253a98(0x133)][_0x253a98(0x111)]()[_0x253a98(0xe6)]()===_0x253a98(0x10b)&&_0x4c7ea4[_0x253a98(0x13b)]===_0x35d1b8);if(_0x2cd896[_0x253a98(0x106)]>0x0)throw menuError('menu_regroup_label_conflict','Root\x20folder\x20label\x20'+JSON[_0x253a98(0x12b)](_0x35d1b8)+_0x253a98(0xf9)+_0x2cd896[_0x253a98(0x109)](_0x4a19d5=>_0x4a19d5['id'])['join'](',\x20')+'.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.');const _0x1751b6={'appCode':_0x179793[_0x253a98(0x10f)],'menuGroups':[{'label':_0x35d1b8,'type':_0x253a98(0x10b),'children':_0x40036f['map'](_0x4434c2=>({'id':_0x4434c2['id'],'label':_0x4434c2[_0x253a98(0x13b)]}))}]},_0x4c2589=mutationResult({'operation':_0x253a98(0x110),'selector':{'label':_0x35d1b8,'menuIds':_0x5b3e4e},'before':{'menus':_0x40036f},'after':{'group':{'id':null,'parentId':null,'label':_0x35d1b8,'path':_0x253a98(0x135),'type':_0x253a98(0x10b),'childrenIds':_0x5b3e4e},'children':_0x40036f[_0x253a98(0x109)](_0x149a89=>({'id':_0x149a89['id'],'label':_0x149a89['label'],'beforeParentId':_0x149a89[_0x253a98(0x114)],'afterParentId':_0x253a98(0xed)}))},'dryRun':_0x2d2dbc,'backend':[...BACKEND],'plannedActions':[{'stage':_0x253a98(0x132),'method':_0x253a98(0x12d),'path':_0x253a98(0x105),'body':_0x1751b6}],'snapshotHash':_0x39b90e[_0x253a98(0x124)],'warnings':[_0x253a98(0x112),_0x253a98(0x12e)]});return{'label':_0x35d1b8,'menuIds':_0x5b3e4e,'input':_0x1751b6,'plan':_0x4c2589};}function findAppliedRegroup(_0x16ffee,_0x127f02,_0x1aed3d){const _0x5478e5=a119_0x2b905f,_0x164ea9=_0x1aed3d[_0x5478e5(0x109)](_0x25b923=>_0x16ffee['byId'][_0x5478e5(0x139)](_0x25b923))['filter'](_0x540bd0=>Boolean(_0x540bd0));if(_0x164ea9[_0x5478e5(0x106)]!==_0x1aed3d[_0x5478e5(0x106)])return null;const _0x5370a5=_0x164ea9[0x0]?.[_0x5478e5(0x114)];if(_0x5370a5==null||_0x164ea9[_0x5478e5(0x118)](_0x108a6a=>_0x108a6a['parentId']!==_0x5370a5))return null;const _0x3dd4ce=_0x16ffee['byId'][_0x5478e5(0x139)](_0x5370a5);if(!_0x3dd4ce||_0x3dd4ce[_0x5478e5(0x114)]!=null||_0x3dd4ce[_0x5478e5(0x133)][_0x5478e5(0x111)]()[_0x5478e5(0xe6)]()!=='folder'||_0x3dd4ce[_0x5478e5(0x13b)]!==_0x127f02)return null;const _0x2f1d6d=[..._0x1aed3d][_0x5478e5(0xf0)]((_0x4f1422,_0x42d60a)=>_0x4f1422-_0x42d60a),_0x3b0ccf=[..._0x3dd4ce[_0x5478e5(0x11a)]]['sort']((_0x47df58,_0x6c0598)=>_0x47df58-_0x6c0598);if(JSON['stringify'](_0x3b0ccf)!==JSON[_0x5478e5(0x12b)](_0x2f1d6d))return null;return{'group':_0x3dd4ce,'children':_0x164ea9};}async function inspectRegroupAfterFailure(_0x63c0be,_0x5e9f65,_0x8e042d,_0x3ce5a8){const _0x1027e0=a119_0x2b905f;try{const _0x372283=await fetchMenuSnapshot(_0x63c0be,_0x5e9f65);return{'applied':findAppliedRegroup(_0x372283,_0x8e042d,_0x3ce5a8),'readbackError':null};}catch(_0x3929ef){return{'applied':null,'readbackError':_0x3929ef instanceof Error?_0x3929ef[_0x1027e0(0x126)]:String(_0x3929ef)};}}
|
|
1
|
+
const a120_0x76860c=a120_0x3e85;(function(_0x22f195,_0xd36517){const _0x4980a1=a120_0x3e85,_0x14e558=_0x22f195();while(!![]){try{const _0x34d27d=-parseInt(_0x4980a1(0x18c))/0x1+parseInt(_0x4980a1(0x194))/0x2*(parseInt(_0x4980a1(0x184))/0x3)+-parseInt(_0x4980a1(0x190))/0x4+-parseInt(_0x4980a1(0x18b))/0x5*(parseInt(_0x4980a1(0x18d))/0x6)+-parseInt(_0x4980a1(0x165))/0x7*(-parseInt(_0x4980a1(0x17d))/0x8)+-parseInt(_0x4980a1(0x143))/0x9+parseInt(_0x4980a1(0x197))/0xa;if(_0x34d27d===_0xd36517)break;else _0x14e558['push'](_0x14e558['shift']());}catch(_0x18f7a7){_0x14e558['push'](_0x14e558['shift']());}}}(a120_0x19a0,0x3adde));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';function a120_0x19a0(){const _0x6458f3=['Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','string','hash','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','\x20menus\x20per\x20regroup\x20request.','menus','menu\x20list','message','--menu-ids\x20supports\x20at\x20most\x20','toLowerCase','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','Menus\x20','validation','get','type','map','menu-ids','\x20menu\x20list\x20--appcode\x20','menu','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','input','161JdHQbW','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','\x20and\x20regroup\x20menu\x20ids\x20','label',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','plan\x20regroup','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','size','readbackError','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','taskId','childrenCount','sort','filter','group','failed','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','parentId','Regroup\x20readback\x20failed:\x20','length','Regroup\x20readback\x20also\x20failed:\x20','isTerminal','plan','45048CKZBrN','isSafeInteger','/smartapi/menu/regroup','Regroup\x20task\x20','byId','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-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','2328UdbtZu','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','childrenIds','Regroup\x20task\x20accepted.\x20','some','applied','Menu\x20','53855eMbveH','182891OWWLTs','66jUDuFv','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','split','1361684QKjCGz','cookie','write','stringify','1096JmgsKF','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','trim','3854160MUxxmI','folder','POST','<platform-generated>','test','FAILED','submit-regroup-task','appCode','SUCCESS','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','515394upSYsd','regroup-start','warnings','menuIds','unconfirmed','replace','start\x20regroup','Root\x20folder\x20label\x20','menu_regroup_target_not_leaf','start\x20menu\x20regroup','str','status','join'];a120_0x19a0=function(){return _0x6458f3;};return a120_0x19a0();}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a120_0x76860c(0x139),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a120_0x76860c(0x162),'command':a120_0x76860c(0x144),'description':a120_0x76860c(0x150),'risk':a120_0x76860c(0x192),'structuredErrors':!![],'flags':[{'name':a120_0x76860c(0x168),'type':a120_0x76860c(0x151),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a120_0x76860c(0x160),'type':a120_0x76860c(0x151),'required':!![],'description':a120_0x76860c(0x15a)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2bf8be){validateRegroupInput(_0x2bf8be);},async 'dryRun'(_0x5e1852){const _0x4f4180=a120_0x76860c;validateRegroupInput(_0x5e1852);const _0x51a623=await buildRegroupPlan(_0x5e1852,!![]);return menuDryRunResult(_0x51a623[_0x4f4180(0x17c)],{'method':_0x4f4180(0x139),'url':_0x4f4180(0x17f),'body':_0x51a623[_0x4f4180(0x164)],'description':_0x4f4180(0x166)+JSON[_0x4f4180(0x193)](_0x51a623[_0x4f4180(0x168)])+_0x4f4180(0x167)+_0x51a623['menuIds'][_0x4f4180(0x14f)](',\x20')+_0x4f4180(0x169)});},async 'execute'(_0x2ccb19){const _0x44312b=a120_0x76860c;validateRegroupInput(_0x2ccb19);const _0x587371=await buildRegroupPlan(_0x2ccb19,![]);await recheckMutationSnapshot(_0x2ccb19,_0x587371[_0x44312b(0x17c)],_0x44312b(0x149));const _0x5492ee=buildMenuLookupCommand(_0x2ccb19[_0x44312b(0x13e)]);let _0x4d8695,_0xd7a171;try{_0x4d8695=await startMenuRegroup(_0x2ccb19[_0x44312b(0x191)],_0x587371[_0x44312b(0x164)]),_0xd7a171=normalizeAsyncTask(_0x4d8695);}catch(_0x42105f){const _0x173f1e=await inspectRegroupAfterFailure(_0x2ccb19['appCode'],_0x2ccb19[_0x44312b(0x191)],_0x587371['label'],_0x587371['menuIds']),_0x3609e8=typeof _0x4d8695?.['taskId']==='string'&&_0x4d8695[_0x44312b(0x170)][_0x44312b(0x196)]()?_0x4d8695[_0x44312b(0x170)][_0x44312b(0x196)]():null,_0x559a1c=_0x3609e8?{'command':buildAsyncTaskStatusCommand(_0x3609e8,_0x2ccb19[_0x44312b(0x13e)])}:null,_0x3fd32b=mapMenuApiError(_0x42105f,_0x44312b(0x14c));throw menuFailure(_0x3fd32b,_0x587371[_0x44312b(0x17c)],{'stage':'regroup-submit','failed':{'menuIds':_0x587371[_0x44312b(0x146)],'taskId':_0x3609e8,'groupingApplied':_0x173f1e[_0x44312b(0x189)]?!![]:'unconfirmed'},'after':_0x173f1e[_0x44312b(0x189)]??null,'warnings':[_0x44312b(0x163),..._0x173f1e[_0x44312b(0x16e)]?[_0x44312b(0x17a)+_0x173f1e[_0x44312b(0x16e)]]:[],..._0x3609e8?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':_0x44312b(0x175),'groupingApplied':_0x173f1e['applied']?!![]:_0x44312b(0x147),'taskId':_0x3609e8,'query':_0x559a1c,'lookupCommand':_0x5492ee}});}const _0xc0968d=buildAsyncTaskStatusCommand(_0xd7a171[_0x44312b(0x170)],_0x2ccb19[_0x44312b(0x13e)]);let _0x3a0513=null,_0x3db27d=null,_0x157f79=null;try{_0x3a0513=await fetchMenuSnapshot(_0x2ccb19['appCode'],_0x2ccb19[_0x44312b(0x191)]),_0x3db27d=findAppliedRegroup(_0x3a0513,_0x587371[_0x44312b(0x168)],_0x587371['menuIds']);}catch(_0x23593f){_0x157f79=_0x23593f instanceof Error?_0x23593f['message']:String(_0x23593f);}const _0x1509b1=mutationResult({..._0x587371[_0x44312b(0x17c)],'after':_0x3db27d??null,'dryRun':![],'succeeded':[{'groupId':_0x3db27d?.[_0x44312b(0x174)]['id']??null,'menuIds':_0x587371[_0x44312b(0x146)],'taskId':_0xd7a171['taskId'],'status':_0xd7a171[_0x44312b(0x14e)],'groupingApplied':_0x3db27d?!![]:_0x44312b(0x147)}],'verification':{'checkedBy':_0x44312b(0x156),'snapshotHash':_0x3a0513?.[_0x44312b(0x152)]??null,'groupId':_0x3db27d?.['group']['id']??null,'groupingApplied':_0x3db27d?!![]:_0x44312b(0x147),'readbackError':_0x157f79,'lookupCommand':_0x5492ee},'warnings':[..._0x587371[_0x44312b(0x17c)][_0x44312b(0x145)],...!_0x3db27d?[unconfirmedRegroupWarning(_0xd7a171)]:[],..._0x157f79?[_0x44312b(0x178)+_0x157f79]:[]]}),_0xcc3295=_0xd7a171['status']===_0x44312b(0x13f)&&!_0x3db27d?_0x44312b(0x180)+_0xd7a171[_0x44312b(0x170)]+_0x44312b(0x176):_0x44312b(0x187)+asyncTaskMessage(_0xd7a171);return{'ok':!![],'message':_0xcc3295,'data':{..._0x1509b1,'task':_0xd7a171,'query':_0xd7a171[_0x44312b(0x17b)]?null:{'command':_0xc0968d}}};}};function validateRegroupInput(_0x1edba6){const _0x830692=a120_0x76860c;if(!_0x1edba6[_0x830692(0x14d)]('label')[_0x830692(0x196)]())throw CliErrors['flagMissing']('label');parseMenuIds(_0x1edba6[_0x830692(0x14d)](_0x830692(0x160)));}function parseMenuIds(_0x4916e9){const _0x2de49a=a120_0x76860c,_0x3d7695=_0x4916e9[_0x2de49a(0x18f)](',')[_0x2de49a(0x15f)](_0x35ee79=>_0x35ee79[_0x2de49a(0x196)]());if(_0x3d7695[_0x2de49a(0x179)]===0x0||_0x3d7695[_0x2de49a(0x188)](_0x2d7d20=>!_0x2d7d20))throw CliErrors[_0x2de49a(0x15c)](_0x2de49a(0x183));const _0x44ad4a=_0x3d7695[_0x2de49a(0x15f)](_0xa5e5dd=>{const _0x57b81b=_0x2de49a;if(!/^\d+$/[_0x57b81b(0x13b)](_0xa5e5dd))throw CliErrors['validation'](_0x57b81b(0x183));const _0x56407b=Number(_0xa5e5dd);if(!Number[_0x57b81b(0x17e)](_0x56407b)||_0x56407b<=0x0)throw CliErrors[_0x57b81b(0x15c)](_0x57b81b(0x183));return _0x56407b;});if(new Set(_0x44ad4a)[_0x2de49a(0x16d)]!==_0x44ad4a['length'])throw CliErrors['validation']('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x44ad4a['length']>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x2de49a(0x158)+MAX_REGROUP_MENU_COUNT+_0x2de49a(0x154));return _0x44ad4a;}function buildMenuLookupCommand(_0x1569a0){const _0x267b4e=a120_0x76860c,_0x17cace='\x27'+_0x1569a0[_0x267b4e(0x148)](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+_0x267b4e(0x161)+_0x17cace+'\x20--format\x20compress';}function a120_0x3e85(_0x50a5ac,_0x2030a7){_0x50a5ac=_0x50a5ac-0x138;const _0x19a02b=a120_0x19a0();let _0x3e852d=_0x19a02b[_0x50a5ac];return _0x3e852d;}function unconfirmedRegroupWarning(_0x392922){const _0x10a414=a120_0x76860c;if(_0x392922[_0x10a414(0x14e)]===_0x10a414(0x13f))return _0x10a414(0x153);if(_0x392922[_0x10a414(0x14e)]===_0x10a414(0x13c))return _0x10a414(0x140);if(_0x392922['knownStatus'])return _0x10a414(0x141);return _0x10a414(0x182);}async function buildRegroupPlan(_0x4494a5,_0x59bb06){const _0x24a4e9=a120_0x76860c,_0x2b3912=_0x4494a5[_0x24a4e9(0x14d)](_0x24a4e9(0x168))[_0x24a4e9(0x196)](),_0x3fbd24=parseMenuIds(_0x4494a5[_0x24a4e9(0x14d)](_0x24a4e9(0x160))),_0x3fd8d3=await fetchMutationSnapshot(_0x4494a5,_0x24a4e9(0x16b)),_0x1873fb=_0x3fbd24['map'](_0x579f67=>requireMenu(_0x3fd8d3,_0x579f67));for(const _0x2a5f0d of _0x1873fb){if(_0x2a5f0d['type']['trim']()[_0x24a4e9(0x159)]()===_0x24a4e9(0x138)||_0x2a5f0d[_0x24a4e9(0x171)]>0x0)throw menuError(_0x24a4e9(0x14b),_0x24a4e9(0x18a)+_0x2a5f0d['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',_0x24a4e9(0x18e));if(!_0x2a5f0d[_0x24a4e9(0x168)]['trim']())throw menuError('menu_regroup_target_label_missing',_0x24a4e9(0x18a)+_0x2a5f0d['id']+_0x24a4e9(0x16c),_0x24a4e9(0x185));}const _0x418ffc=findAppliedRegroup(_0x3fd8d3,_0x2b3912,_0x3fbd24);if(_0x418ffc)throw menuError('menu_regroup_already_applied',_0x24a4e9(0x15b)+_0x3fbd24[_0x24a4e9(0x14f)](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0x418ffc[_0x24a4e9(0x174)]['id']+'\x20('+JSON[_0x24a4e9(0x193)](_0x2b3912)+').','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.');const _0x5efd97=_0x3fd8d3[_0x24a4e9(0x155)]['filter'](_0x20e4f6=>_0x20e4f6[_0x24a4e9(0x177)]==null&&_0x20e4f6[_0x24a4e9(0x15e)][_0x24a4e9(0x196)]()[_0x24a4e9(0x159)]()==='folder'&&_0x20e4f6[_0x24a4e9(0x168)]===_0x2b3912);if(_0x5efd97[_0x24a4e9(0x179)]>0x0)throw menuError('menu_regroup_label_conflict',_0x24a4e9(0x14a)+JSON[_0x24a4e9(0x193)](_0x2b3912)+_0x24a4e9(0x142)+_0x5efd97['map'](_0x2039ef=>_0x2039ef['id'])['join'](',\x20')+'.',_0x24a4e9(0x195));const _0x323612={'appCode':_0x4494a5[_0x24a4e9(0x13e)],'menuGroups':[{'label':_0x2b3912,'type':_0x24a4e9(0x138),'children':_0x1873fb[_0x24a4e9(0x15f)](_0x3abc01=>({'id':_0x3abc01['id'],'label':_0x3abc01[_0x24a4e9(0x168)]}))}]},_0x4f790b=mutationResult({'operation':_0x24a4e9(0x144),'selector':{'label':_0x2b3912,'menuIds':_0x3fbd24},'before':{'menus':_0x1873fb},'after':{'group':{'id':null,'parentId':null,'label':_0x2b3912,'path':_0x24a4e9(0x13a),'type':'folder','childrenIds':_0x3fbd24},'children':_0x1873fb[_0x24a4e9(0x15f)](_0x11a74e=>({'id':_0x11a74e['id'],'label':_0x11a74e[_0x24a4e9(0x168)],'beforeParentId':_0x11a74e['parentId'],'afterParentId':'<new-group-id>'}))},'dryRun':_0x59bb06,'backend':[...BACKEND],'plannedActions':[{'stage':_0x24a4e9(0x13d),'method':_0x24a4e9(0x139),'path':_0x24a4e9(0x17f),'body':_0x323612}],'snapshotHash':_0x3fd8d3['hash'],'warnings':[_0x24a4e9(0x16f),_0x24a4e9(0x16a)]});return{'label':_0x2b3912,'menuIds':_0x3fbd24,'input':_0x323612,'plan':_0x4f790b};}function findAppliedRegroup(_0x3fc1f2,_0x12316d,_0x45f185){const _0x53d698=a120_0x76860c,_0x8cdf17=_0x45f185[_0x53d698(0x15f)](_0x45a9f8=>_0x3fc1f2[_0x53d698(0x181)][_0x53d698(0x15d)](_0x45a9f8))[_0x53d698(0x173)](_0x34a6c5=>Boolean(_0x34a6c5));if(_0x8cdf17['length']!==_0x45f185[_0x53d698(0x179)])return null;const _0x2557ba=_0x8cdf17[0x0]?.[_0x53d698(0x177)];if(_0x2557ba==null||_0x8cdf17[_0x53d698(0x188)](_0x597d80=>_0x597d80['parentId']!==_0x2557ba))return null;const _0xbc8096=_0x3fc1f2[_0x53d698(0x181)][_0x53d698(0x15d)](_0x2557ba);if(!_0xbc8096||_0xbc8096[_0x53d698(0x177)]!=null||_0xbc8096[_0x53d698(0x15e)][_0x53d698(0x196)]()[_0x53d698(0x159)]()!==_0x53d698(0x138)||_0xbc8096[_0x53d698(0x168)]!==_0x12316d)return null;const _0x31d0af=[..._0x45f185][_0x53d698(0x172)]((_0x12f883,_0x550056)=>_0x12f883-_0x550056),_0x257ddb=[..._0xbc8096[_0x53d698(0x186)]][_0x53d698(0x172)]((_0x403f43,_0x3f151a)=>_0x403f43-_0x3f151a);if(JSON[_0x53d698(0x193)](_0x257ddb)!==JSON[_0x53d698(0x193)](_0x31d0af))return null;return{'group':_0xbc8096,'children':_0x8cdf17};}async function inspectRegroupAfterFailure(_0xd77cf1,_0xda282,_0x42916a,_0x302865){const _0x549341=a120_0x76860c;try{const _0x5d6e3e=await fetchMenuSnapshot(_0xd77cf1,_0xda282);return{'applied':findAppliedRegroup(_0x5d6e3e,_0x42916a,_0x302865),'readbackError':null};}catch(_0x54d457){return{'applied':null,'readbackError':_0x54d457 instanceof Error?_0x54d457[_0x549341(0x157)]:String(_0x54d457)};}}
|