@lovrabet/rabetbase-cli 2.4.7-beta.2 → 2.4.7
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.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +1 -1
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const a113_0x5ccb5e=a113_0x5dc1;(function(_0x10896e,_0x44f0f4){const _0x34264b=a113_0x5dc1,_0xc9ef7a=_0x10896e();while(!![]){try{const _0x5dec81=-parseInt(_0x34264b(0x184))/0x1*(parseInt(_0x34264b(0x1b9))/0x2)+parseInt(_0x34264b(0x168))/0x3*(-parseInt(_0x34264b(0x1a4))/0x4)+-parseInt(_0x34264b(0x16b))/0x5+-parseInt(_0x34264b(0x1ba))/0x6*(parseInt(_0x34264b(0x187))/0x7)+-parseInt(_0x34264b(0x1bd))/0x8+parseInt(_0x34264b(0x1c4))/0x9*(-parseInt(_0x34264b(0x183))/0xa)+parseInt(_0x34264b(0x15e))/0xb;if(_0x5dec81===_0x44f0f4)break;else _0xc9ef7a['push'](_0xc9ef7a['shift']());}catch(_0x5f1b8d){_0xc9ef7a['push'](_0xc9ef7a['shift']());}}}(a113_0x3514,0x8a998));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':a113_0x5ccb5e(0x1e0),'new-window':a113_0x5ccb5e(0x1dc)};export function validateExternalMenuUrl(_0x12f2f3){const _0x459a96=a113_0x5ccb5e,_0x5aae9d=_0x12f2f3[_0x459a96(0x194)]();let _0xb847e2;try{_0xb847e2=new URL(_0x5aae9d);}catch{throw menuError('menu_url_invalid',_0x459a96(0x157),'Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0xb847e2[_0x459a96(0x1be)]!==_0x459a96(0x14e))throw menuError(_0x459a96(0x15c),_0x459a96(0x18f),_0x459a96(0x1c6));if(_0xb847e2[_0x459a96(0x151)]||_0xb847e2[_0x459a96(0x173)])throw menuError('menu_url_credentials_forbidden',_0x459a96(0x1ae),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x5aae9d;}export const menuExternalLinkCreate={'service':a113_0x5ccb5e(0x166),'command':a113_0x5ccb5e(0x190),'description':a113_0x5ccb5e(0x158),'risk':a113_0x5ccb5e(0x1ad),'structuredErrors':!![],'flags':[{'name':a113_0x5ccb5e(0x186),'type':a113_0x5ccb5e(0x162),'required':!![],'description':a113_0x5ccb5e(0x181)},{'name':'open-mode','type':'string','required':!![],'enum':[a113_0x5ccb5e(0x1a5),a113_0x5ccb5e(0x1cd)],'description':a113_0x5ccb5e(0x19a)},{'name':a113_0x5ccb5e(0x156),'type':'string','required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':'boolean','default':!![],'description':a113_0x5ccb5e(0x1c1)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x15c367){validateAddInput(_0x15c367);},async 'dryRun'(_0x5ed1e2){const _0x22ee1a=a113_0x5ccb5e;validateAddInput(_0x5ed1e2);const {plan:_0x55c320}=await buildSafeAddPlan(_0x5ed1e2,!![]),_0x34fefe=_0x55c320[_0x22ee1a(0x17c)],_0x2aeec5=createBody(_0x34fefe);return menuDryRunResult(_0x55c320,{'method':_0x22ee1a(0x1d7),'url':_0x22ee1a(0x1d4),'body':_0x2aeec5,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON['stringify'](_0x34fefe[_0x22ee1a(0x186)])+_0x22ee1a(0x189)+_0x5ed1e2[_0x22ee1a(0x15d)](_0x22ee1a(0x197))+_0x22ee1a(0x1bb)});},async 'execute'(_0x180a41){const _0x2d8ef3=a113_0x5ccb5e;validateAddInput(_0x180a41);const _0x99d334=await buildSafeAddPlan(_0x180a41,![]),{plan:_0x3736d3,snapshot:_0x5bcbf4}=_0x99d334,_0x57f5a2=_0x3736d3['after'],_0x36c251=buildMenuLookupCommand(_0x180a41[_0x2d8ef3(0x19f)]);await recheckAddSnapshot(_0x180a41,_0x3736d3);let _0x105a76;try{_0x105a76=await createMenuEntity(_0x180a41[_0x2d8ef3(0x19f)],_0x180a41[_0x2d8ef3(0x16f)],createBody(_0x57f5a2));}catch(_0x236347){const _0x2c4441=mapMenuApiError(_0x236347,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x236347)||_0x2c4441[_0x2d8ef3(0x1d3)]===_0x2d8ef3(0x1d9))throw externalLinkCreateFailure(_0x2c4441,_0x3736d3,{'stage':_0x2d8ef3(0x18d),'failed':{},'verification':{'status':_0x2d8ef3(0x1a1),'lookupCommand':_0x36c251}});return recoverAfterResponseLoss(_0x180a41,_0x99d334,_0x36c251);}const _0xac216=Number(_0x105a76?.['id']),_0x21c452=typeof _0x105a76?.[_0x2d8ef3(0x1c9)]===_0x2d8ef3(0x162)?_0x105a76['path']:'';if(!Number['isSafeInteger'](_0xac216)||_0xac216<=0x0||!_0x21c452[_0x2d8ef3(0x194)]()){const _0xa0e48b=menuError(_0x2d8ef3(0x160),_0x2d8ef3(0x18b),'Run\x20'+_0x36c251+_0x2d8ef3(0x153));throw externalLinkCreateFailure(_0xa0e48b,_0x3736d3,{'stage':_0x2d8ef3(0x182),'succeeded':Number[_0x2d8ef3(0x174)](_0xac216)&&_0xac216>0x0?[{'id':_0xac216,'created':!![]}]:[],'failed':{'createdId':Number[_0x2d8ef3(0x174)](_0xac216)?_0xac216:null,'generatedPathConfirmed':Boolean(_0x21c452[_0x2d8ef3(0x194)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number['isSafeInteger'](_0xac216)&&_0xac216>0x0?{..._0x57f5a2,'id':_0xac216,'path':_0x21c452}:_0x57f5a2,'verification':{'status':_0x2d8ef3(0x1a1),'lookupCommand':_0x36c251,...Number[_0x2d8ef3(0x174)](_0xac216)&&_0xac216>0x0?{'targetId':_0xac216}:{}}});}const _0x2c2055=await readAndVerifyCreatedMenu({'appCode':_0x180a41[_0x2d8ef3(0x19f)],'cookie':_0x180a41[_0x2d8ef3(0x16f)],'plan':_0x3736d3,'afterPlan':_0x57f5a2,'createdId':_0xac216,'expectedPath':_0x21c452,'lookupCommand':_0x36c251,'recovered':![]});return creationSuccess(_0x3736d3,_0x2c2055[_0x2d8ef3(0x1d8)],_0x2c2055['fact'],![]);}};function validateAddInput(_0x4ad396){const _0x475668=a113_0x5ccb5e;if(!_0x4ad396[_0x475668(0x15d)](_0x475668(0x186))[_0x475668(0x194)]())throw CliErrors['flagMissing'](_0x475668(0x186));resolveExternalMenuType(_0x4ad396),validateExternalMenuUrl(_0x4ad396[_0x475668(0x15d)](_0x475668(0x156))),parseParentId(_0x4ad396,_0x475668(0x1aa)),validateSort(_0x4ad396);}function resolveExternalMenuType(_0x6ea0){const _0x1d44bf=a113_0x5ccb5e,_0x241e9c=_0x6ea0[_0x1d44bf(0x15d)]('open-mode')[_0x1d44bf(0x194)]();if(!_0x241e9c)throw CliErrors[_0x1d44bf(0x19d)](_0x1d44bf(0x197));const _0x12bc9c=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x241e9c];if(!_0x12bc9c)throw menuError(_0x1d44bf(0x19b),_0x1d44bf(0x150),_0x1d44bf(0x17d));return _0x12bc9c;}async function buildAddPlan(_0x3c2e9a,_0x5a7fb4){const _0x101468=a113_0x5ccb5e,_0x38a707=await fetchMutationSnapshot(_0x3c2e9a,_0x101468(0x1a3)),_0x576437=parseParentId(_0x3c2e9a,_0x101468(0x1aa))??null;if(_0x576437!=null)requireFolder(_0x38a707,_0x576437);const _0x45798b=validateSort(_0x3c2e9a),_0x228244=_0x45798b??nextSiblingSort(_0x38a707,_0x576437,_0x101468(0x166)),_0x185276=_0x3c2e9a['str']('label')['trim'](),_0x2bb3ca=resolveExternalMenuType(_0x3c2e9a),_0x177dab=validateExternalMenuUrl(_0x3c2e9a[_0x101468(0x15d)]('url')),_0x354f94=Object[_0x101468(0x1a8)][_0x101468(0x1a9)][_0x101468(0x167)](_0x3c2e9a[_0x101468(0x152)],_0x101468(0x1de))?_0x3c2e9a[_0x101468(0x1ab)](_0x101468(0x1de)):!![],_0x563e25={'id':null,'parentId':_0x576437,'label':_0x185276,'path':_0x101468(0x1c7),'url':_0x177dab,'type':_0x2bb3ca,'visible':_0x354f94,'sort':_0x228244},_0x550d06=buildMenuLookupCommand(_0x3c2e9a[_0x101468(0x19f)]),_0x45f70d=mutationResult({'operation':_0x101468(0x1d6),'selector':{'parentId':_0x576437,'type':_0x2bb3ca,'label':_0x185276,'url':_0x177dab},'before':null,'after':_0x563e25,'dryRun':_0x5a7fb4,'backend':[{'method':'POST','path':_0x101468(0x1d4)}],'plannedActions':[{'stage':_0x101468(0x19c),'method':_0x101468(0x1d7),'path':'/smartapi/menu/create','body':createBody(_0x563e25)}],'snapshotHash':_0x38a707['hash'],'warnings':[_0x101468(0x1cf)],'verification':{'lookupCommand':_0x550d06}});return{'plan':_0x45f70d,'snapshot':_0x38a707};}async function buildSafeAddPlan(_0x36a821,_0x49428a){try{return await buildAddPlan(_0x36a821,_0x49428a);}catch(_0x336e3a){throw safeMenuAddError(_0x336e3a);}}async function recheckAddSnapshot(_0x4e3a20,_0x53e856){const _0x1b188d=a113_0x5ccb5e;try{await recheckMutationSnapshot(_0x4e3a20,_0x53e856,'create\x20external\x20menu');}catch(_0x484113){const _0x1987a0=getFailureRecord(_0x484113);throw externalLinkCreateFailure(_0x484113,_0x53e856,{'stage':_0x1b188d(0x188),'failed':{..._0x1987a0?.[_0x1b188d(0x1db)]?{'expectedSnapshotHash':_0x1987a0['expectedSnapshotHash']}:{},..._0x1987a0?.[_0x1b188d(0x196)]?{'currentSnapshotHash':_0x1987a0[_0x1b188d(0x196)]}:{}}});}}function createBody(_0x27221a){const _0x3969ff=a113_0x5ccb5e;return{'parentId':toApiParentId(_0x27221a['parentId']),'label':String(_0x27221a[_0x3969ff(0x186)]),'type':String(_0x27221a[_0x3969ff(0x169)]),'url':String(_0x27221a[_0x3969ff(0x156)]),'visible':Boolean(_0x27221a[_0x3969ff(0x1de)]),'sort':Number(_0x27221a['sort']),'extend':{}};}function buildMenuLookupCommand(_0x3aa7b9){const _0x3bc76b=a113_0x5ccb5e,_0x436c92='\x27'+_0x3aa7b9[_0x3bc76b(0x1c2)](/'/g,_0x3bc76b(0x15a))+'\x27';return _0x3bc76b(0x161)+_0x436c92+_0x3bc76b(0x19e);}async function recoverAfterResponseLoss(_0xcff84,_0x53509d,_0x513547){const _0x2a438f=a113_0x5ccb5e,{plan:_0x250efc,snapshot:_0xbfdee3}=_0x53509d,_0x5c5861=_0x250efc[_0x2a438f(0x17c)];let _0x3feed8;try{_0x3feed8=await fetchMenuSnapshot(_0xcff84[_0x2a438f(0x19f)],_0xcff84['cookie']);}catch(_0x28258d){throw recoveryRequiredFailure(_0x250efc,_0x513547,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x4b0e82=_0x3feed8[_0x2a438f(0x192)][_0x2a438f(0x191)](_0x2acae2=>_0x2acae2[_0x2a438f(0x1c8)]===_0x5c5861[_0x2a438f(0x1c8)]&&_0x2acae2[_0x2a438f(0x169)]===_0x5c5861[_0x2a438f(0x169)]&&_0x2acae2[_0x2a438f(0x186)]===_0x5c5861[_0x2a438f(0x186)]&&_0x2acae2['url']===_0x5c5861[_0x2a438f(0x156)]),_0x5200ef=_0x4b0e82[_0x2a438f(0x191)](_0x2aa6c8=>!_0xbfdee3[_0x2a438f(0x1b6)]['has'](_0x2aa6c8['id'])),_0x510b70=_0x4b0e82[_0x2a438f(0x191)](_0x48f458=>_0xbfdee3[_0x2a438f(0x1b6)][_0x2a438f(0x1dd)](_0x48f458['id']));if(_0x4b0e82[_0x2a438f(0x1d5)]!==0x1||_0x5200ef[_0x2a438f(0x1d5)]!==0x1)throw recoveryRequiredFailure(_0x250efc,_0x513547,{'matchCount':_0x4b0e82[_0x2a438f(0x1d5)],'newMatchCount':_0x5200ef['length'],'preexistingMatchCount':_0x510b70['length']});const _0x425fb5=_0x5200ef[0x0];try{verifyCreatedFact(_0x425fb5,_0x425fb5['id'],_0x5c5861,null);}catch(_0x5da7b4){const _0x3e14e0=_0x5da7b4 instanceof Error&&_0x2a438f(0x1d3)in _0x5da7b4?_0x5da7b4:menuError(_0x2a438f(0x17a),_0x2a438f(0x1b8)+_0x425fb5['id']+_0x2a438f(0x155),_0x2a438f(0x163)+_0x513547+_0x2a438f(0x1ce));throw externalLinkCreateFailure(_0x3e14e0,_0x250efc,{'stage':_0x2a438f(0x1b2),'succeeded':[{'id':_0x425fb5['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x425fb5['id'],'finalFactsConfirmed':![]},'after':_0x425fb5,'warnings':[_0x2a438f(0x16e)+_0x425fb5['id']+_0x2a438f(0x1c5)],'verification':{'status':_0x2a438f(0x1a1),'targetId':_0x425fb5['id'],'recovered':!![],'lookupCommand':_0x513547}});}return creationSuccess(_0x250efc,_0x3feed8,_0x425fb5,!![]);}function recoveryRequiredFailure(_0x1c27d2,_0x44f6e5,_0x486983){const _0x176eee=a113_0x5ccb5e,_0x115e21=menuError('menu_create_recovery_required',_0x176eee(0x18e),_0x176eee(0x163)+_0x44f6e5+_0x176eee(0x164));return externalLinkCreateFailure(_0x115e21,_0x1c27d2,{'stage':_0x176eee(0x193),'failed':_0x486983,'warnings':[_0x176eee(0x1b4)],'verification':{'status':_0x176eee(0x1a1),..._0x486983,'lookupCommand':_0x44f6e5}});}function a113_0x3514(){const _0x7d1792=['<platform-generated>','parentId','path','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','selector','new-window','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','isArray','lookupCommand','sort','code','/smartapi/menu/create','length','add','POST','snapshot','menu_permission_denied','object','expectedSnapshotHash','link','has','visible','\x20failed\x20final\x20verification.','iframe','parent','https:','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','username','rawFlags','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20could\x20not\x20be\x20verified.','url','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Create\x20an\x20external\x20website\x20link\x20menu','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','\x27\x5c\x27\x27','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','menu_url_https_required','str','36839528tQakDH','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','menu_create_response_invalid','rabetbase\x20menu\x20list\x20--appcode\x20','string','Run\x20','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','data','menu','call','147JtWQrU','type','body','4889345avowuG','menu_mutation_failed','External\x20menu\x20creation\x20failed.','Menu\x20','cookie','succeeded','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','causemessage','password','isSafeInteger','expectedPath','URL','cause','afterPlan','hash','menu_verification_failed','get','after','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','menu_parent_not_folder','createdId','Recovered\x20created\x20external\x20menu\x20','Menu\x20label','create-response-validation','4650TTXFin','2958xarxpe','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','label','1923586fLDgky','pre-write-recheck','\x20with\x20','plannedActions','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','create','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','external-link-create','filter','menus','create-recovery','trim','plan','currentSnapshotHash','open-mode','before','fromEntries','How\x20to\x20open\x20the\x20external\x20website','menu_open_mode_invalid','create-menu','flagMissing','\x20--format\x20compress','appCode','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','failed','toLowerCase','create\x20external\x20menu','21652KdcqPx','embedded','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','prototype','hasOwnProperty','parent-id','bool','menu\x20list','write','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','\x20after\x20response\x20loss.','Created\x20external\x20menu\x20','\x20has\x20an\x20unexpected\x20','verification','Created\x20menu\x20','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','menu_create_recovery_required','byId','map','Recovered\x20menu\x20','326WsJytR','18pIoMor','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','recovered','1753080BvmnhS','protocol','menu_not_found','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Whether\x20the\x20menu\x20is\x20visible','replace','includes','243HzwwWU','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','Provide\x20an\x20HTTPS\x20URL.'];a113_0x3514=function(){return _0x7d1792;};return a113_0x3514();}function a113_0x5dc1(_0x56b465,_0x19e8eb){_0x56b465=_0x56b465-0x14d;const _0x35144a=a113_0x3514();let _0x5dc18d=_0x35144a[_0x56b465];return _0x5dc18d;}async function readAndVerifyCreatedMenu(_0xd3a823){const _0x4a341c=a113_0x5ccb5e;let _0x3f8447;try{_0x3f8447=await fetchMenuSnapshot(_0xd3a823['appCode'],_0xd3a823['cookie']);}catch(_0x5745c5){const _0x27944a=menuError('menu_verification_failed',_0x4a341c(0x16e)+_0xd3a823[_0x4a341c(0x17f)]+_0x4a341c(0x1cb),_0x4a341c(0x163)+_0xd3a823['lookupCommand']+_0x4a341c(0x185));throw externalLinkCreateFailure(_0x27944a,_0xd3a823[_0x4a341c(0x195)],{'stage':_0x4a341c(0x1b2),'succeeded':[{'id':_0xd3a823[_0x4a341c(0x17f)],'created':!![]}],'failed':{'id':_0xd3a823['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0xd3a823['afterPlan'],'id':_0xd3a823[_0x4a341c(0x17f)],'path':_0xd3a823[_0x4a341c(0x175)]},'warnings':['Menu\x20'+_0xd3a823[_0x4a341c(0x17f)]+_0x4a341c(0x14f)],'verification':{'status':_0x4a341c(0x1a1),'targetId':_0xd3a823[_0x4a341c(0x17f)],'lookupCommand':_0xd3a823[_0x4a341c(0x1d1)]}});}const _0x5046be=_0x3f8447[_0x4a341c(0x1b6)][_0x4a341c(0x17b)](_0xd3a823[_0x4a341c(0x17f)]);try{if(!_0x5046be)throw menuError(_0x4a341c(0x17a),_0x4a341c(0x1b3)+_0xd3a823['createdId']+_0x4a341c(0x1a7),_0x4a341c(0x163)+_0xd3a823[_0x4a341c(0x1d1)]+_0x4a341c(0x185));verifyCreatedFact(_0x5046be,_0xd3a823[_0x4a341c(0x17f)],_0xd3a823[_0x4a341c(0x178)],_0xd3a823[_0x4a341c(0x175)]);}catch(_0x5781f4){const _0x27ed31=_0x5781f4 instanceof Error&&_0x4a341c(0x1d3)in _0x5781f4?_0x5781f4:menuError(_0x4a341c(0x17a),_0x4a341c(0x1b3)+_0xd3a823[_0x4a341c(0x17f)]+_0x4a341c(0x1df),_0x4a341c(0x163)+_0xd3a823['lookupCommand']+_0x4a341c(0x185));throw externalLinkCreateFailure(_0x27ed31,_0xd3a823['plan'],{'stage':_0x4a341c(0x1b2),'succeeded':[{'id':_0xd3a823[_0x4a341c(0x17f)],'created':!![]}],'failed':{'id':_0xd3a823[_0x4a341c(0x17f)],'finalFactsConfirmed':![]},'after':_0x5046be??{..._0xd3a823[_0x4a341c(0x178)],'id':_0xd3a823[_0x4a341c(0x17f)],'path':_0xd3a823[_0x4a341c(0x175)]},'warnings':[_0x4a341c(0x16e)+_0xd3a823[_0x4a341c(0x17f)]+_0x4a341c(0x159)],'verification':{'status':_0x4a341c(0x1a1),'targetId':_0xd3a823[_0x4a341c(0x17f)],'recovered':_0xd3a823[_0x4a341c(0x1bc)],'lookupCommand':_0xd3a823['lookupCommand']}});}return{'snapshot':_0x3f8447,'fact':_0x5046be};}function verifyCreatedFact(_0x2d9ee5,_0x1ba822,_0x50a7cb,_0x1be2d1){const _0x366be9=a113_0x5ccb5e;if(!Number[_0x366be9(0x174)](_0x2d9ee5['id'])||_0x2d9ee5['id']<=0x0||_0x2d9ee5['id']!==_0x1ba822)throw menuError(_0x366be9(0x17a),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x366be9(0x1a0));const _0x2e2724=[[_0x366be9(0x14d),_0x2d9ee5[_0x366be9(0x1c8)],_0x50a7cb[_0x366be9(0x1c8)]],[_0x366be9(0x169),_0x2d9ee5[_0x366be9(0x169)],_0x50a7cb[_0x366be9(0x169)]],[_0x366be9(0x186),_0x2d9ee5[_0x366be9(0x186)],_0x50a7cb[_0x366be9(0x186)]],[_0x366be9(0x176),_0x2d9ee5[_0x366be9(0x156)],_0x50a7cb['url']],['visibility',_0x2d9ee5[_0x366be9(0x1de)],_0x50a7cb[_0x366be9(0x1de)]],['sort',_0x2d9ee5[_0x366be9(0x1d2)],_0x50a7cb[_0x366be9(0x1d2)]]];for(const [_0x41c3c1,_0x4d8f64,_0x4b90d6]of _0x2e2724){if(_0x4d8f64!==_0x4b90d6)throw menuError('menu_verification_failed',_0x366be9(0x1b3)+_0x2d9ee5['id']+_0x366be9(0x1b1)+_0x41c3c1+'.',_0x366be9(0x171));}if(!_0x2d9ee5[_0x366be9(0x1c9)][_0x366be9(0x194)]()||_0x1be2d1!==null&&_0x2d9ee5[_0x366be9(0x1c9)]!==_0x1be2d1)throw menuError(_0x366be9(0x17a),_0x366be9(0x1b3)+_0x2d9ee5['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x366be9(0x171));}function creationSuccess(_0x1785f8,_0x525fea,_0x2ab380,_0x3836fa){const _0x45eaab=a113_0x5ccb5e,_0x410e68=mutationResult({..._0x1785f8,'after':_0x2ab380,'dryRun':![],'succeeded':[{'id':_0x2ab380['id'],'created':!![],'recovered':_0x3836fa}],'verification':{'checkedBy':_0x45eaab(0x1ac),'snapshotHash':_0x525fea[_0x45eaab(0x179)],'targetId':_0x2ab380['id'],'recovered':_0x3836fa,'path':_0x2ab380[_0x45eaab(0x1c9)]}});return{'ok':!![],'message':_0x3836fa?_0x45eaab(0x180)+_0x2ab380['id']+_0x45eaab(0x1af):_0x45eaab(0x1b0)+_0x2ab380['id']+'.','data':{..._0x410e68,'recovered':_0x3836fa}};}function externalLinkCreateFailure(_0x31343c,_0x371db1,_0xb8022f){const _0x4e67d4=a113_0x5ccb5e;return menuFailure(safeMenuAddError(_0x31343c),redactFailurePlan(_0x371db1),{..._0xb8022f,'succeeded':_0xb8022f[_0x4e67d4(0x170)]?.['map'](redactFailureRecord),'failed':_0xb8022f[_0x4e67d4(0x1a1)]?redactFailureRecord(_0xb8022f[_0x4e67d4(0x1a1)]):undefined,'verification':_0xb8022f[_0x4e67d4(0x1b2)]?redactFailureRecord(_0xb8022f[_0x4e67d4(0x1b2)]):undefined,'after':_0xb8022f[_0x4e67d4(0x17c)]===undefined?undefined:redactFailureValue(_0xb8022f[_0x4e67d4(0x17c)])});}function redactFailurePlan(_0x101afc){const _0x250620=a113_0x5ccb5e;return{..._0x101afc,'selector':redactFailureRecord(_0x101afc[_0x250620(0x1cc)]),'before':redactFailureValue(_0x101afc[_0x250620(0x198)]),'after':redactFailureValue(_0x101afc[_0x250620(0x17c)]),'plannedActions':_0x101afc[_0x250620(0x18a)]?.[_0x250620(0x1b7)](_0x4244c4=>({..._0x4244c4,'body':redactFailureRecord(_0x4244c4[_0x250620(0x16a)])})),'succeeded':_0x101afc[_0x250620(0x170)][_0x250620(0x1b7)](redactFailureRecord),'failed':_0x101afc['failed'][_0x250620(0x1b7)](redactFailureRecord),'verification':_0x101afc['verification']?redactFailureRecord(_0x101afc[_0x250620(0x1b2)]):undefined};}function redactFailureRecord(_0x55aa21){return redactFailureValue(_0x55aa21);}function redactFailureValue(_0x1dd2a1,_0x331cc4=''){const _0x167221=a113_0x5ccb5e,_0x2b4176=_0x331cc4[_0x167221(0x1a2)]()[_0x167221(0x1c2)](/[^a-z0-9]/g,'');if([_0x167221(0x177),_0x167221(0x172),'readbackerror','rawerror'][_0x167221(0x1c3)](_0x2b4176))return'<redacted>';if(Array[_0x167221(0x1d0)](_0x1dd2a1))return _0x1dd2a1[_0x167221(0x1b7)](_0x3158e3=>redactFailureValue(_0x3158e3));if(_0x1dd2a1&&typeof _0x1dd2a1===_0x167221(0x1da))return Object[_0x167221(0x199)](Object['entries'](_0x1dd2a1)[_0x167221(0x1b7)](([_0x38f925,_0x185abb])=>[_0x38f925,redactFailureValue(_0x185abb,_0x38f925)]));return _0x1dd2a1;}function safeMenuAddError(_0x30994b){const _0x13f574=a113_0x5ccb5e,_0x4e7493=_0x30994b instanceof CliError?_0x30994b[_0x13f574(0x1d3)]:_0x13f574(0x16c);switch(_0x4e7493){case'menu_state_drift':return menuError(_0x4e7493,_0x13f574(0x1c0),_0x13f574(0x1ca));case'menu_permission_denied':return menuError(_0x4e7493,_0x13f574(0x15b),_0x13f574(0x18c));case _0x13f574(0x160):return menuError(_0x4e7493,_0x13f574(0x15f),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_verification_failed':return menuError(_0x4e7493,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.',_0x13f574(0x1a6));case _0x13f574(0x1b5):return menuError(_0x4e7493,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x13f574(0x16c):case _0x13f574(0x1bf):case _0x13f574(0x17e):case'menu_sort_invalid':case'menu_sort_overflow':return menuError(_0x4e7493,_0x13f574(0x16d),_0x13f574(0x154));default:return menuError('menu_mutation_failed',_0x13f574(0x16d),_0x13f574(0x154));}}function getFailureRecord(_0x281388){const _0x5b65c7=a113_0x5ccb5e;if(!(_0x281388 instanceof Error)||!(_0x5b65c7(0x165)in _0x281388))return undefined;const _0x3a9f51=_0x281388[_0x5b65c7(0x165)];if(!_0x3a9f51||typeof _0x3a9f51!==_0x5b65c7(0x1da))return undefined;const _0x1e8e9a=_0x3a9f51[_0x5b65c7(0x1a1)];if(!Array[_0x5b65c7(0x1d0)](_0x1e8e9a)||!_0x1e8e9a[0x0]||typeof _0x1e8e9a[0x0]!==_0x5b65c7(0x1da))return undefined;return _0x1e8e9a[0x0];}
|
|
1
|
+
const a113_0x3efa9d=a113_0x1c5b;(function(_0x1de3ca,_0x46fa77){const _0x2227c3=a113_0x1c5b,_0x5ceb2d=_0x1de3ca();while(!![]){try{const _0x1b4079=-parseInt(_0x2227c3(0xbd))/0x1*(-parseInt(_0x2227c3(0xa1))/0x2)+-parseInt(_0x2227c3(0x9f))/0x3*(parseInt(_0x2227c3(0x8a))/0x4)+-parseInt(_0x2227c3(0xe9))/0x5+-parseInt(_0x2227c3(0xb4))/0x6+parseInt(_0x2227c3(0xb3))/0x7*(parseInt(_0x2227c3(0xaa))/0x8)+-parseInt(_0x2227c3(0xef))/0x9+parseInt(_0x2227c3(0xd0))/0xa*(parseInt(_0x2227c3(0xe4))/0xb);if(_0x1b4079===_0x46fa77)break;else _0x5ceb2d['push'](_0x5ceb2d['shift']());}catch(_0x1d2108){_0x5ceb2d['push'](_0x5ceb2d['shift']());}}}(a113_0x86c5,0x5782b));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a113_0x1c5b(_0xa52fc5,_0x2b4cb5){_0xa52fc5=_0xa52fc5-0x85;const _0x86c593=a113_0x86c5();let _0x1c5ba2=_0x86c593[_0xa52fc5];return _0x1c5ba2;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';function a113_0x86c5(){const _0x4a725b=['menu_permission_denied','10203XPJzUd','length','5634PYFZdp','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','succeeded','isSafeInteger','password','cause','entries','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','8nNGYeP','Provide\x20an\x20HTTPS\x20URL.','menu_open_mode_invalid','rawFlags','verification','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','cookie','prototype','code','4580051PVGaSB','3799176CYGsdy','\x27\x5c\x27\x27','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','isArray','causemessage','plannedActions','\x20could\x20not\x20be\x20verified.','hash','\x20after\x20response\x20loss.','35hNaPUe','POST','menu_parent_not_folder','boolean','afterPlan','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','URL','/smartapi/menu/create','<platform-generated>','link','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','External\x20menu\x20creation\x20failed.','lookupCommand','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','write','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Created\x20menu\x20','username','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','4490GfpqRp','\x20with\x20','filter','fact','menu_url_invalid','after','Menu\x20','string','includes','failed','byId','Menu\x20label','menu\x20list','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','visible','https:','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','visibility','\x20failed\x20final\x20verification.','add','50171mIlyJG','menu','embedded','create-recovery','menus','3404730ePZyzk','create\x20external\x20menu','before','call','object','readbackerror','4980807HlIFQY','menu_create_response_invalid','menu_state_drift','External\x20HTTPS\x20URL','menu_not_found','create-menu','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','parent','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Whether\x20the\x20menu\x20is\x20visible','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','str','expectedSnapshotHash','menu_sort_overflow','get','has','create-response-validation','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','rabetbase\x20menu\x20list\x20--appcode\x20','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','menu_url_credentials_forbidden','Create\x20an\x20external\x20website\x20link\x20menu','\x20--format\x20compress','toLowerCase','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','parent-id','<redacted>','replace','url','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','recovered','external-link-create','open-mode','sort','new-window','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','menu_create_recovery_required','Run\x20','label','676pOPXRl','createdId','parentId','trim','appCode','type','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','menu_mutation_failed','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','menu_verification_failed','flagMissing','path','plan','data','expectedPath','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','map','currentSnapshotHash','menu_sort_invalid'];a113_0x86c5=function(){return _0x4a725b;};return a113_0x86c5();}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':a113_0x3efa9d(0xc6)};export function validateExternalMenuUrl(_0x831ad7){const _0xe47334=a113_0x3efa9d,_0x535641=_0x831ad7[_0xe47334(0x8d)]();let _0x4b24e2;try{_0x4b24e2=new URL(_0x535641);}catch{throw menuError(_0xe47334(0xd4),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0xe47334(0xdd));}if(_0x4b24e2['protocol']!==_0xe47334(0xdf))throw menuError('menu_url_https_required',_0xe47334(0x107),_0xe47334(0xab));if(_0x4b24e2[_0xe47334(0xce)]||_0x4b24e2[_0xe47334(0xa5)])throw menuError(_0xe47334(0x103),_0xe47334(0xf9),_0xe47334(0x9a));return _0x535641;}export const menuExternalLinkCreate={'service':'menu','command':a113_0x3efa9d(0x110),'description':a113_0x3efa9d(0x104),'risk':a113_0x3efa9d(0xcb),'structuredErrors':!![],'flags':[{'name':a113_0x3efa9d(0x89),'type':'string','required':!![],'description':a113_0x3efa9d(0xdb)},{'name':a113_0x3efa9d(0x111),'type':a113_0x3efa9d(0xd7),'required':!![],'enum':[a113_0x3efa9d(0xe6),a113_0x3efa9d(0x85)],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a113_0x3efa9d(0x10d),'type':'string','required':!![],'description':a113_0x3efa9d(0xf2)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a113_0x3efa9d(0xde),'type':a113_0x3efa9d(0xc0),'default':!![],'description':a113_0x3efa9d(0xf8)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4e5a8e){validateAddInput(_0x4e5a8e);},async 'dryRun'(_0x6bdf6f){const _0x576f74=a113_0x3efa9d;validateAddInput(_0x6bdf6f);const {plan:_0x571034}=await buildSafeAddPlan(_0x6bdf6f,!![]),_0x2c8635=_0x571034[_0x576f74(0xd5)],_0x243e75=createBody(_0x2c8635);return menuDryRunResult(_0x571034,{'method':'POST','url':_0x576f74(0xc4),'body':_0x243e75,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON['stringify'](_0x2c8635[_0x576f74(0x89)])+_0x576f74(0xd1)+_0x6bdf6f[_0x576f74(0xfa)](_0x576f74(0x111))+_0x576f74(0xa8)});},async 'execute'(_0x1b0ca0){const _0x555af2=a113_0x3efa9d;validateAddInput(_0x1b0ca0);const _0x2bd89a=await buildSafeAddPlan(_0x1b0ca0,![]),{plan:_0x45d886,snapshot:_0x33b6a4}=_0x2bd89a,_0x1ca6de=_0x45d886[_0x555af2(0xd5)],_0x4ce33c=buildMenuLookupCommand(_0x1b0ca0[_0x555af2(0x8e)]);await recheckAddSnapshot(_0x1b0ca0,_0x45d886);let _0x388544;try{_0x388544=await createMenuEntity(_0x1b0ca0[_0x555af2(0x8e)],_0x1b0ca0[_0x555af2(0xb0)],createBody(_0x1ca6de));}catch(_0x2332b6){const _0x2a4258=mapMenuApiError(_0x2332b6,_0x555af2(0xea));if(!isMenuResponseLoss(_0x2332b6)||_0x2a4258[_0x555af2(0xb2)]===_0x555af2(0x9e))throw externalLinkCreateFailure(_0x2a4258,_0x45d886,{'stage':'create','failed':{},'verification':{'status':_0x555af2(0xd9),'lookupCommand':_0x4ce33c}});return recoverAfterResponseLoss(_0x1b0ca0,_0x2bd89a,_0x4ce33c);}const _0x196d68=Number(_0x388544?.['id']),_0xb87d0a=typeof _0x388544?.[_0x555af2(0x95)]===_0x555af2(0xd7)?_0x388544['path']:'';if(!Number['isSafeInteger'](_0x196d68)||_0x196d68<=0x0||!_0xb87d0a[_0x555af2(0x8d)]()){const _0x400827=menuError(_0x555af2(0xf0),_0x555af2(0x86),_0x555af2(0x88)+_0x4ce33c+'\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.');throw externalLinkCreateFailure(_0x400827,_0x45d886,{'stage':_0x555af2(0xff),'succeeded':Number[_0x555af2(0xa4)](_0x196d68)&&_0x196d68>0x0?[{'id':_0x196d68,'created':!![]}]:[],'failed':{'createdId':Number[_0x555af2(0xa4)](_0x196d68)?_0x196d68:null,'generatedPathConfirmed':Boolean(_0xb87d0a[_0x555af2(0x8d)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number[_0x555af2(0xa4)](_0x196d68)&&_0x196d68>0x0?{..._0x1ca6de,'id':_0x196d68,'path':_0xb87d0a}:_0x1ca6de,'verification':{'status':'failed','lookupCommand':_0x4ce33c,...Number['isSafeInteger'](_0x196d68)&&_0x196d68>0x0?{'targetId':_0x196d68}:{}}});}const _0x2acff3=await readAndVerifyCreatedMenu({'appCode':_0x1b0ca0[_0x555af2(0x8e)],'cookie':_0x1b0ca0[_0x555af2(0xb0)],'plan':_0x45d886,'afterPlan':_0x1ca6de,'createdId':_0x196d68,'expectedPath':_0xb87d0a,'lookupCommand':_0x4ce33c,'recovered':![]});return creationSuccess(_0x45d886,_0x2acff3['snapshot'],_0x2acff3[_0x555af2(0xd3)],![]);}};function validateAddInput(_0x3cf082){const _0x4f1383=a113_0x3efa9d;if(!_0x3cf082[_0x4f1383(0xfa)](_0x4f1383(0x89))[_0x4f1383(0x8d)]())throw CliErrors[_0x4f1383(0x94)]('label');resolveExternalMenuType(_0x3cf082),validateExternalMenuUrl(_0x3cf082['str'](_0x4f1383(0x10d))),parseParentId(_0x3cf082,_0x4f1383(0x10a)),validateSort(_0x3cf082);}function resolveExternalMenuType(_0x1acffe){const _0xf0c28d=a113_0x3efa9d,_0xd20de0=_0x1acffe[_0xf0c28d(0xfa)](_0xf0c28d(0x111))[_0xf0c28d(0x8d)]();if(!_0xd20de0)throw CliErrors[_0xf0c28d(0x94)](_0xf0c28d(0x111));const _0x59cd3f=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0xd20de0];if(!_0x59cd3f)throw menuError(_0xf0c28d(0xac),'--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x59cd3f;}async function buildAddPlan(_0x1384c5,_0xbfff46){const _0x14a529=a113_0x3efa9d,_0x34e7fb=await fetchMutationSnapshot(_0x1384c5,_0x14a529(0xea)),_0x3fc0a4=parseParentId(_0x1384c5,_0x14a529(0x10a))??null;if(_0x3fc0a4!=null)requireFolder(_0x34e7fb,_0x3fc0a4);const _0x460387=validateSort(_0x1384c5),_0x213d49=_0x460387??nextSiblingSort(_0x34e7fb,_0x3fc0a4,_0x14a529(0xe5)),_0x4ad1d6=_0x1384c5['str']('label')[_0x14a529(0x8d)](),_0x225193=resolveExternalMenuType(_0x1384c5),_0xb1e8b3=validateExternalMenuUrl(_0x1384c5['str'](_0x14a529(0x10d))),_0x4bfe6e=Object[_0x14a529(0xb1)]['hasOwnProperty'][_0x14a529(0xec)](_0x1384c5[_0x14a529(0xad)],_0x14a529(0xde))?_0x1384c5['bool'](_0x14a529(0xde)):!![],_0x53399f={'id':null,'parentId':_0x3fc0a4,'label':_0x4ad1d6,'path':_0x14a529(0xc5),'url':_0xb1e8b3,'type':_0x225193,'visible':_0x4bfe6e,'sort':_0x213d49},_0x4f926d=buildMenuLookupCommand(_0x1384c5[_0x14a529(0x8e)]),_0x379795=mutationResult({'operation':_0x14a529(0xe3),'selector':{'parentId':_0x3fc0a4,'type':_0x225193,'label':_0x4ad1d6,'url':_0xb1e8b3},'before':null,'after':_0x53399f,'dryRun':_0xbfff46,'backend':[{'method':_0x14a529(0xbe),'path':_0x14a529(0xc4)}],'plannedActions':[{'stage':_0x14a529(0xf4),'method':_0x14a529(0xbe),'path':'/smartapi/menu/create','body':createBody(_0x53399f)}],'snapshotHash':_0x34e7fb[_0x14a529(0xbb)],'warnings':[_0x14a529(0xc7)],'verification':{'lookupCommand':_0x4f926d}});return{'plan':_0x379795,'snapshot':_0x34e7fb};}async function buildSafeAddPlan(_0x5f4de4,_0x27aeb3){try{return await buildAddPlan(_0x5f4de4,_0x27aeb3);}catch(_0x53349a){throw safeMenuAddError(_0x53349a);}}async function recheckAddSnapshot(_0x5549dc,_0x43a4f8){const _0x4dde93=a113_0x3efa9d;try{await recheckMutationSnapshot(_0x5549dc,_0x43a4f8,_0x4dde93(0xea));}catch(_0x1f3f41){const _0x14be15=getFailureRecord(_0x1f3f41);throw externalLinkCreateFailure(_0x1f3f41,_0x43a4f8,{'stage':'pre-write-recheck','failed':{..._0x14be15?.[_0x4dde93(0xfb)]?{'expectedSnapshotHash':_0x14be15[_0x4dde93(0xfb)]}:{},..._0x14be15?.[_0x4dde93(0x9c)]?{'currentSnapshotHash':_0x14be15[_0x4dde93(0x9c)]}:{}}});}}function createBody(_0x4fb938){const _0x295028=a113_0x3efa9d;return{'parentId':toApiParentId(_0x4fb938[_0x295028(0x8c)]),'label':String(_0x4fb938[_0x295028(0x89)]),'type':String(_0x4fb938[_0x295028(0x8f)]),'url':String(_0x4fb938['url']),'visible':Boolean(_0x4fb938[_0x295028(0xde)]),'sort':Number(_0x4fb938[_0x295028(0x112)]),'extend':{}};}function buildMenuLookupCommand(_0x5586e5){const _0x34a38b=a113_0x3efa9d,_0x2c045f='\x27'+_0x5586e5[_0x34a38b(0x10c)](/'/g,_0x34a38b(0xb5))+'\x27';return _0x34a38b(0x101)+_0x2c045f+_0x34a38b(0x105);}async function recoverAfterResponseLoss(_0x245a61,_0x583ca0,_0x4c1452){const _0xf5ff56=a113_0x3efa9d,{plan:_0x499cc0,snapshot:_0x4985c1}=_0x583ca0,_0x2936dd=_0x499cc0[_0xf5ff56(0xd5)];let _0x158e09;try{_0x158e09=await fetchMenuSnapshot(_0x245a61[_0xf5ff56(0x8e)],_0x245a61['cookie']);}catch(_0x315d9e){throw recoveryRequiredFailure(_0x499cc0,_0x4c1452,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x15ed0c=_0x158e09[_0xf5ff56(0xe8)]['filter'](_0x203b2b=>_0x203b2b[_0xf5ff56(0x8c)]===_0x2936dd[_0xf5ff56(0x8c)]&&_0x203b2b[_0xf5ff56(0x8f)]===_0x2936dd[_0xf5ff56(0x8f)]&&_0x203b2b[_0xf5ff56(0x89)]===_0x2936dd[_0xf5ff56(0x89)]&&_0x203b2b['url']===_0x2936dd[_0xf5ff56(0x10d)]),_0x319af4=_0x15ed0c[_0xf5ff56(0xd2)](_0x1a0073=>!_0x4985c1['byId']['has'](_0x1a0073['id'])),_0x25568d=_0x15ed0c['filter'](_0x13f250=>_0x4985c1[_0xf5ff56(0xda)][_0xf5ff56(0xfe)](_0x13f250['id']));if(_0x15ed0c[_0xf5ff56(0xa0)]!==0x1||_0x319af4[_0xf5ff56(0xa0)]!==0x1)throw recoveryRequiredFailure(_0x499cc0,_0x4c1452,{'matchCount':_0x15ed0c[_0xf5ff56(0xa0)],'newMatchCount':_0x319af4['length'],'preexistingMatchCount':_0x25568d['length']});const _0x4425a7=_0x319af4[0x0];try{verifyCreatedFact(_0x4425a7,_0x4425a7['id'],_0x2936dd,null);}catch(_0x1fca58){const _0x522521=_0x1fca58 instanceof Error&&'code'in _0x1fca58?_0x1fca58:menuError(_0xf5ff56(0x93),'Recovered\x20menu\x20'+_0x4425a7['id']+_0xf5ff56(0xba),'Run\x20'+_0x4c1452+_0xf5ff56(0xaf));throw externalLinkCreateFailure(_0x522521,_0x499cc0,{'stage':'verification','succeeded':[{'id':_0x4425a7['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x4425a7['id'],'finalFactsConfirmed':![]},'after':_0x4425a7,'warnings':[_0xf5ff56(0xd6)+_0x4425a7['id']+_0xf5ff56(0xcf)],'verification':{'status':_0xf5ff56(0xd9),'targetId':_0x4425a7['id'],'recovered':!![],'lookupCommand':_0x4c1452}});}return creationSuccess(_0x499cc0,_0x158e09,_0x4425a7,!![]);}function recoveryRequiredFailure(_0x18c335,_0x461ae1,_0x45ae58){const _0x2eeaed=a113_0x3efa9d,_0x56ee91=menuError(_0x2eeaed(0x87),_0x2eeaed(0x108),_0x2eeaed(0x88)+_0x461ae1+_0x2eeaed(0xf5));return externalLinkCreateFailure(_0x56ee91,_0x18c335,{'stage':_0x2eeaed(0xe7),'failed':_0x45ae58,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x2eeaed(0xd9),..._0x45ae58,'lookupCommand':_0x461ae1}});}async function readAndVerifyCreatedMenu(_0x1e453e){const _0x383ea5=a113_0x3efa9d;let _0x1eef54;try{_0x1eef54=await fetchMenuSnapshot(_0x1e453e[_0x383ea5(0x8e)],_0x1e453e[_0x383ea5(0xb0)]);}catch(_0x1580c8){const _0x3ede94=menuError(_0x383ea5(0x93),'Menu\x20'+_0x1e453e[_0x383ea5(0x8b)]+_0x383ea5(0x90),'Run\x20'+_0x1e453e[_0x383ea5(0xc9)]+_0x383ea5(0x100));throw externalLinkCreateFailure(_0x3ede94,_0x1e453e[_0x383ea5(0x96)],{'stage':_0x383ea5(0xae),'succeeded':[{'id':_0x1e453e[_0x383ea5(0x8b)],'created':!![]}],'failed':{'id':_0x1e453e['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x1e453e[_0x383ea5(0xc1)],'id':_0x1e453e['createdId'],'path':_0x1e453e[_0x383ea5(0x98)]},'warnings':[_0x383ea5(0xd6)+_0x1e453e[_0x383ea5(0x8b)]+_0x383ea5(0xc2)],'verification':{'status':_0x383ea5(0xd9),'targetId':_0x1e453e['createdId'],'lookupCommand':_0x1e453e[_0x383ea5(0xc9)]}});}const _0x71de18=_0x1eef54['byId'][_0x383ea5(0xfd)](_0x1e453e[_0x383ea5(0x8b)]);try{if(!_0x71de18)throw menuError(_0x383ea5(0x93),_0x383ea5(0xcd)+_0x1e453e[_0x383ea5(0x8b)]+_0x383ea5(0x92),'Run\x20'+_0x1e453e[_0x383ea5(0xc9)]+_0x383ea5(0x100));verifyCreatedFact(_0x71de18,_0x1e453e[_0x383ea5(0x8b)],_0x1e453e[_0x383ea5(0xc1)],_0x1e453e[_0x383ea5(0x98)]);}catch(_0x545fc2){const _0x549b12=_0x545fc2 instanceof Error&&'code'in _0x545fc2?_0x545fc2:menuError(_0x383ea5(0x93),'Created\x20menu\x20'+_0x1e453e['createdId']+_0x383ea5(0xe2),_0x383ea5(0x88)+_0x1e453e[_0x383ea5(0xc9)]+_0x383ea5(0x100));throw externalLinkCreateFailure(_0x549b12,_0x1e453e['plan'],{'stage':_0x383ea5(0xae),'succeeded':[{'id':_0x1e453e[_0x383ea5(0x8b)],'created':!![]}],'failed':{'id':_0x1e453e['createdId'],'finalFactsConfirmed':![]},'after':_0x71de18??{..._0x1e453e['afterPlan'],'id':_0x1e453e[_0x383ea5(0x8b)],'path':_0x1e453e['expectedPath']},'warnings':[_0x383ea5(0xd6)+_0x1e453e[_0x383ea5(0x8b)]+_0x383ea5(0x99)],'verification':{'status':'failed','targetId':_0x1e453e['createdId'],'recovered':_0x1e453e[_0x383ea5(0x10f)],'lookupCommand':_0x1e453e['lookupCommand']}});}return{'snapshot':_0x1eef54,'fact':_0x71de18};}function verifyCreatedFact(_0x1ae4cf,_0x39236c,_0x174c40,_0x604e8c){const _0x14634c=a113_0x3efa9d;if(!Number[_0x14634c(0xa4)](_0x1ae4cf['id'])||_0x1ae4cf['id']<=0x0||_0x1ae4cf['id']!==_0x39236c)throw menuError(_0x14634c(0x93),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x14634c(0xa2));const _0x4e242a=[[_0x14634c(0xf6),_0x1ae4cf['parentId'],_0x174c40[_0x14634c(0x8c)]],[_0x14634c(0x8f),_0x1ae4cf['type'],_0x174c40[_0x14634c(0x8f)]],['label',_0x1ae4cf[_0x14634c(0x89)],_0x174c40['label']],[_0x14634c(0xc3),_0x1ae4cf[_0x14634c(0x10d)],_0x174c40['url']],[_0x14634c(0xe1),_0x1ae4cf[_0x14634c(0xde)],_0x174c40[_0x14634c(0xde)]],[_0x14634c(0x112),_0x1ae4cf[_0x14634c(0x112)],_0x174c40[_0x14634c(0x112)]]];for(const [_0xd0dae5,_0x150563,_0x5ba3bc]of _0x4e242a){if(_0x150563!==_0x5ba3bc)throw menuError(_0x14634c(0x93),_0x14634c(0xcd)+_0x1ae4cf['id']+'\x20has\x20an\x20unexpected\x20'+_0xd0dae5+'.',_0x14634c(0x109));}if(!_0x1ae4cf[_0x14634c(0x95)]['trim']()||_0x604e8c!==null&&_0x1ae4cf[_0x14634c(0x95)]!==_0x604e8c)throw menuError(_0x14634c(0x93),_0x14634c(0xcd)+_0x1ae4cf['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x14634c(0x109));}function creationSuccess(_0x4fc31a,_0x2dcdbc,_0x3b8607,_0x48b937){const _0x517451=a113_0x3efa9d,_0x8d4df0=mutationResult({..._0x4fc31a,'after':_0x3b8607,'dryRun':![],'succeeded':[{'id':_0x3b8607['id'],'created':!![],'recovered':_0x48b937}],'verification':{'checkedBy':_0x517451(0xdc),'snapshotHash':_0x2dcdbc[_0x517451(0xbb)],'targetId':_0x3b8607['id'],'recovered':_0x48b937,'path':_0x3b8607[_0x517451(0x95)]}});return{'ok':!![],'message':_0x48b937?'Recovered\x20created\x20external\x20menu\x20'+_0x3b8607['id']+_0x517451(0xbc):'Created\x20external\x20menu\x20'+_0x3b8607['id']+'.','data':{..._0x8d4df0,'recovered':_0x48b937}};}function externalLinkCreateFailure(_0x2b61dc,_0x57e4e8,_0x28467b){const _0x4789f7=a113_0x3efa9d;return menuFailure(safeMenuAddError(_0x2b61dc),redactFailurePlan(_0x57e4e8),{..._0x28467b,'succeeded':_0x28467b[_0x4789f7(0xa3)]?.['map'](redactFailureRecord),'failed':_0x28467b[_0x4789f7(0xd9)]?redactFailureRecord(_0x28467b[_0x4789f7(0xd9)]):undefined,'verification':_0x28467b[_0x4789f7(0xae)]?redactFailureRecord(_0x28467b[_0x4789f7(0xae)]):undefined,'after':_0x28467b[_0x4789f7(0xd5)]===undefined?undefined:redactFailureValue(_0x28467b['after'])});}function redactFailurePlan(_0x45861a){const _0x1a1d8a=a113_0x3efa9d;return{..._0x45861a,'selector':redactFailureRecord(_0x45861a['selector']),'before':redactFailureValue(_0x45861a[_0x1a1d8a(0xeb)]),'after':redactFailureValue(_0x45861a[_0x1a1d8a(0xd5)]),'plannedActions':_0x45861a[_0x1a1d8a(0xb9)]?.[_0x1a1d8a(0x9b)](_0x1c02a2=>({..._0x1c02a2,'body':redactFailureRecord(_0x1c02a2['body'])})),'succeeded':_0x45861a['succeeded'][_0x1a1d8a(0x9b)](redactFailureRecord),'failed':_0x45861a[_0x1a1d8a(0xd9)][_0x1a1d8a(0x9b)](redactFailureRecord),'verification':_0x45861a[_0x1a1d8a(0xae)]?redactFailureRecord(_0x45861a[_0x1a1d8a(0xae)]):undefined};}function redactFailureRecord(_0x25cb91){return redactFailureValue(_0x25cb91);}function redactFailureValue(_0x386cce,_0xff4575=''){const _0x3187e8=a113_0x3efa9d,_0x6f6a01=_0xff4575[_0x3187e8(0x106)]()[_0x3187e8(0x10c)](/[^a-z0-9]/g,'');if([_0x3187e8(0xa6),_0x3187e8(0xb8),_0x3187e8(0xee),'rawerror'][_0x3187e8(0xd8)](_0x6f6a01))return _0x3187e8(0x10b);if(Array[_0x3187e8(0xb7)](_0x386cce))return _0x386cce[_0x3187e8(0x9b)](_0x1d9f53=>redactFailureValue(_0x1d9f53));if(_0x386cce&&typeof _0x386cce===_0x3187e8(0xed))return Object['fromEntries'](Object[_0x3187e8(0xa7)](_0x386cce)[_0x3187e8(0x9b)](([_0x208d07,_0x4ce072])=>[_0x208d07,redactFailureValue(_0x4ce072,_0x208d07)]));return _0x386cce;}function safeMenuAddError(_0x557e9a){const _0x164db4=a113_0x3efa9d,_0x521b27=_0x557e9a instanceof CliError?_0x557e9a[_0x164db4(0xb2)]:_0x164db4(0x91);switch(_0x521b27){case _0x164db4(0xf1):return menuError(_0x521b27,_0x164db4(0xcc),_0x164db4(0xf7));case _0x164db4(0x9e):return menuError(_0x521b27,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.',_0x164db4(0xa9));case'menu_create_response_invalid':return menuError(_0x521b27,_0x164db4(0x102),_0x164db4(0x10e));case _0x164db4(0x93):return menuError(_0x521b27,_0x164db4(0xb6),_0x164db4(0x10e));case _0x164db4(0x87):return menuError(_0x521b27,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x164db4(0xe0));case _0x164db4(0x91):case _0x164db4(0xf3):case _0x164db4(0xbf):case _0x164db4(0x9d):case _0x164db4(0xfc):return menuError(_0x521b27,_0x164db4(0xc8),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0x164db4(0x91),_0x164db4(0xc8),_0x164db4(0xca));}}function getFailureRecord(_0x1c9885){const _0x47379a=a113_0x3efa9d;if(!(_0x1c9885 instanceof Error)||!(_0x47379a(0x97)in _0x1c9885))return undefined;const _0x129526=_0x1c9885[_0x47379a(0x97)];if(!_0x129526||typeof _0x129526!==_0x47379a(0xed))return undefined;const _0x1c10c0=_0x129526[_0x47379a(0xd9)];if(!Array[_0x47379a(0xb7)](_0x1c10c0)||!_0x1c10c0[0x0]||typeof _0x1c10c0[0x0]!==_0x47379a(0xed))return undefined;return _0x1c10c0[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a114_0x1ee332=a114_0x3b27;(function(_0x51c42a,_0x3024c2){const _0x3ffea1=a114_0x3b27,_0x4960d4=_0x51c42a();while(!![]){try{const _0x9d83bb=parseInt(_0x3ffea1(0x145))/0x1+parseInt(_0x3ffea1(0x15c))/0x2+-parseInt(_0x3ffea1(0x158))/0x3+parseInt(_0x3ffea1(0x17a))/0x4*(parseInt(_0x3ffea1(0x157))/0x5)+-parseInt(_0x3ffea1(0x159))/0x6*(parseInt(_0x3ffea1(0x13f))/0x7)+-parseInt(_0x3ffea1(0x136))/0x8+parseInt(_0x3ffea1(0x17f))/0x9;if(_0x9d83bb===_0x3024c2)break;else _0x4960d4['push'](_0x4960d4['shift']());}catch(_0x11a1be){_0x4960d4['push'](_0x4960d4['shift']());}}}(a114_0x3c3f,0xaac2a));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';function a114_0x3b27(_0x2ca464,_0x3db5b1){_0x2ca464=_0x2ca464-0x130;const _0x3c3fd7=a114_0x3c3f();let _0x3b2775=_0x3c3fd7[_0x2ca464];return _0x3b2775;}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':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':'menu','command':a114_0x1ee332(0x146),'description':a114_0x1ee332(0x15e),'risk':a114_0x1ee332(0x132),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a114_0x1ee332(0x13d),'type':a114_0x1ee332(0x16f),'required':!![],'description':a114_0x1ee332(0x178)},{'name':a114_0x1ee332(0x14a),'type':a114_0x1ee332(0x16f),'required':!![],'description':a114_0x1ee332(0x139)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2d6665){validateInput(_0x2d6665);},async 'dryRun'(_0x295720){const _0x1de613=a114_0x1ee332;validateInput(_0x295720);const _0x418859=await buildPlan(_0x295720,!![]);return menuDryRunResult(_0x418859[_0x1de613(0x148)],{'method':_0x1de613(0x144),'url':_0x1de613(0x181),'body':_0x418859[_0x1de613(0x152)],'description':_0x1de613(0x169)+_0x418859[_0x1de613(0x152)]['id']+'.'});},async 'execute'(_0x4cea35){const _0x521072=a114_0x1ee332;validateInput(_0x4cea35);const _0x155211=await buildPlan(_0x4cea35,![]),{plan:_0x56a1c3,body:_0x20ac3a,before:_0x5c470b,noChanges:_0x3ea89b}=_0x155211,_0x3071de=_0x20ac3a['id'];if(_0x3ea89b)return updateSuccess(_0x56a1c3,_0x155211[_0x521072(0x154)],_0x5c470b,!![],![]);await recheckMutationSnapshot(_0x4cea35,_0x56a1c3,'update\x20external\x20menu\x20URL',_0x3071de);try{await updateMenuEntity(_0x4cea35[_0x521072(0x182)],_0x4cea35[_0x521072(0x17c)],{'id':_0x20ac3a['id'],'url':_0x20ac3a['url']});}catch(_0x4036b2){const _0x5dfef9=mapMenuApiError(_0x4036b2,_0x521072(0x135),_0x3071de);if(isMenuResponseLoss(_0x4036b2)&&_0x5dfef9[_0x521072(0x162)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x4cea35,_0x155211);throw menuFailure(_0x5dfef9,_0x56a1c3,{'stage':_0x521072(0x14e),'failed':{'id':_0x3071de},'warnings':[_0x521072(0x13b)],'verification':{'status':_0x521072(0x138),'targetId':_0x3071de,'lookupCommand':buildLookupCommand(_0x4cea35[_0x521072(0x182)])}});}let _0x4a2561,_0x596157;try{_0x4a2561=await fetchMenuSnapshot(_0x4cea35[_0x521072(0x182)],_0x4cea35[_0x521072(0x17c)]),_0x596157=requireMenu(_0x4a2561,_0x3071de),verifyUpdatedFact(_0x5c470b,_0x596157,_0x20ac3a[_0x521072(0x13d)]);}catch(_0x4a5ac5){const _0x5ea1ac=describeMenuErrorCause(_0x4a5ac5,_0x521072(0x16b),_0x3071de),_0x525556=asVerificationError(_0x4a5ac5,_0x521072(0x13a)+_0x3071de+_0x521072(0x17e));throw menuFailure(_0x525556,_0x56a1c3,{'stage':'verification','succeeded':[{'id':_0x3071de,'updateRequested':!![]}],'failed':{'id':_0x3071de,'requestedStateConfirmed':![],..._0x5ea1ac},'warnings':[_0x521072(0x16e)],'verification':{'status':'failed','targetId':_0x3071de,'lookupCommand':buildLookupCommand(_0x4cea35[_0x521072(0x182)])}});}return updateSuccess(_0x56a1c3,_0x4a2561,_0x596157,![],![]);}};function validateInput(_0x34ff51){const _0x13a800=a114_0x1ee332;validateExactId(_0x34ff51),requiredUrl(_0x34ff51,_0x13a800(0x13d)),requiredExpectedUrl(_0x34ff51),parseParentId(_0x34ff51,_0x13a800(0x13e),{'required':!![]});}function requiredUrl(_0x20e77d,_0x182c96){const _0x30dab6=a114_0x1ee332;if(!hasFlag(_0x20e77d,_0x182c96)||!_0x20e77d[_0x30dab6(0x151)](_0x182c96)['trim']())throw CliErrors[_0x30dab6(0x15d)](_0x182c96);return validateExternalMenuUrl(_0x20e77d[_0x30dab6(0x151)](_0x182c96));}function requiredExpectedUrl(_0x48178b){const _0x3c77e5=a114_0x1ee332;if(!hasFlag(_0x48178b,'expect-url')||!_0x48178b[_0x3c77e5(0x151)]('expect-url')[_0x3c77e5(0x16d)]())throw CliErrors[_0x3c77e5(0x15d)](_0x3c77e5(0x14a));return _0x48178b[_0x3c77e5(0x151)](_0x3c77e5(0x14a))['trim']();}async function buildPlan(_0x23c409,_0x448bf3){const _0x43c5fa=a114_0x1ee332,_0xce8e0c=validateExactId(_0x23c409),_0x2ff8e8=requiredUrl(_0x23c409,_0x43c5fa(0x13d)),_0x4902d1=requiredExpectedUrl(_0x23c409),_0xebe30a=parseParentId(_0x23c409,_0x43c5fa(0x13e),{'required':!![]}),_0x4938d6=await fetchMutationSnapshot(_0x23c409,_0x43c5fa(0x135),_0xce8e0c),_0x5cdddb=requireMenu(_0x4938d6,_0xce8e0c);assertExternalLinkLeaf(_0x5cdddb);if(_0x5cdddb[_0x43c5fa(0x14d)]!==_0xebe30a)throw menuError('menu_state_drift',_0x43c5fa(0x156)+_0xce8e0c+_0x43c5fa(0x15f)+formatParent(_0xebe30a)+_0x43c5fa(0x131)+formatParent(_0x5cdddb[_0x43c5fa(0x14d)])+'.',_0x43c5fa(0x171));const _0xdb20cc=_0x5cdddb[_0x43c5fa(0x13d)]===_0x2ff8e8;if(!_0xdb20cc&&_0x5cdddb['url']!==_0x4902d1)throw menuError(_0x43c5fa(0x160),_0x43c5fa(0x156)+_0xce8e0c+_0x43c5fa(0x17b),_0x43c5fa(0x155));const _0x40de8e={'id':_0xce8e0c,'appCode':_0x23c409[_0x43c5fa(0x182)],'url':_0x2ff8e8},_0x54dfbf={..._0x5cdddb,'url':_0x2ff8e8};return{'body':_0x40de8e,'before':_0x5cdddb,'noChanges':_0xdb20cc,'snapshot':_0x4938d6,'plan':mutationResult({'operation':_0x43c5fa(0x146),'selector':{'id':_0xce8e0c},'before':_0x5cdddb,'after':_0x54dfbf,'dryRun':_0x448bf3,'backend':[...BACKEND],'plannedActions':_0xdb20cc?[]:[{'stage':_0x43c5fa(0x134),'method':_0x43c5fa(0x144),'path':_0x43c5fa(0x181),'body':_0x40de8e}],'snapshotHash':_0x4938d6[_0x43c5fa(0x140)],'warnings':_0xdb20cc?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x224591){const _0x397561=a114_0x1ee332;if(_0x224591[_0x397561(0x153)]!==_0x397561(0x167)&&_0x224591[_0x397561(0x153)]!==_0x397561(0x137))throw menuError('menu_external_link_type_required',_0x397561(0x156)+_0x224591['id']+_0x397561(0x14f)+(_0x224591['type']||'unknown')+_0x397561(0x168),_0x397561(0x172));if(_0x224591[_0x397561(0x142)]!==0x0)throw menuError(_0x397561(0x143),_0x397561(0x156)+_0x224591['id']+_0x397561(0x184)+_0x224591[_0x397561(0x142)]+_0x397561(0x177),_0x397561(0x13c));if(!_0x224591[_0x397561(0x15a)][_0x397561(0x16d)]())throw menuError(_0x397561(0x165),_0x397561(0x156)+_0x224591['id']+_0x397561(0x176),_0x397561(0x14c));}function verifyUpdatedFact(_0xd971ca,_0x9790b3,_0x46854e){const _0x1370b5=a114_0x1ee332;assertExternalLinkLeaf(_0x9790b3);const _0x479381=[['id',_0x9790b3['id'],_0xd971ca['id']],[_0x1370b5(0x150),_0x9790b3['label'],_0xd971ca[_0x1370b5(0x150)]],[_0x1370b5(0x153),_0x9790b3[_0x1370b5(0x153)],_0xd971ca[_0x1370b5(0x153)]],[_0x1370b5(0x15a),_0x9790b3[_0x1370b5(0x15a)],_0xd971ca[_0x1370b5(0x15a)]],[_0x1370b5(0x14d),_0x9790b3['parentId'],_0xd971ca[_0x1370b5(0x14d)]],[_0x1370b5(0x130),_0x9790b3[_0x1370b5(0x130)],_0xd971ca[_0x1370b5(0x130)]],[_0x1370b5(0x147),_0x9790b3['visible'],_0xd971ca[_0x1370b5(0x147)]]];for(const [_0x2f2fe0,_0x1c431d,_0x2fbec7]of _0x479381){assertVerified(_0x1c431d===_0x2fbec7,_0x1370b5(0x156)+_0xd971ca['id']+'\x20'+_0x2f2fe0+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x9790b3[_0x1370b5(0x13d)]===_0x46854e,_0x1370b5(0x156)+_0xd971ca['id']+_0x1370b5(0x161));}function updateSuccess(_0x2c7c7c,_0x198960,_0xddd69a,_0x16beff,_0x34d37a){const _0x58a316=a114_0x1ee332,_0x5dbe91=_0xddd69a['id'],_0x560cd6=mutationResult({..._0x2c7c7c,'after':_0xddd69a,'dryRun':![],'succeeded':[{'id':_0x5dbe91,'updated':!_0x16beff,'skipped':_0x16beff,'recovered':_0x34d37a}],'verification':{'checkedBy':_0x58a316(0x163),'snapshotHash':_0x198960[_0x58a316(0x140)],'targetId':_0x5dbe91,'matchesRequestedState':!![],'recovered':_0x34d37a}});return{'ok':!![],'message':_0x34d37a?_0x58a316(0x133)+_0x5dbe91+'.':_0x16beff?_0x58a316(0x156)+_0x5dbe91+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x58a316(0x175)+_0x5dbe91+'.','data':{..._0x560cd6,'recovered':_0x34d37a}};}function a114_0x3c3f(){const _0x34bd94=['external-link-update','visible','plan','byId','expect-url','rabetbase\x20menu\x20list\x20--appcode\x20','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','parentId','update','\x20is\x20type\x20\x22','label','str','body','type','snapshot','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','Menu\x20','313210VLVRfc','1735053grrdyc','6jmUhHV','path','readbackFailed','1352460HFPlGb','flagMissing','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20parent\x20changed:\x20expected\x20','menu_state_drift','\x20URL\x20update\x20did\x20not\x20take\x20effect.','code','menu\x20list','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','menu_external_link_path_missing','menu_update_recovery_required','iframe','\x22,\x20not\x20iframe\x20or\x20link.','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','update-recovery','verify\x20external\x20menu\x20URL\x20update','requestedUrlObserved','trim','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','string','\x20could\x20not\x20be\x20verified\x20safely','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','\x20--format\x20compress','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','Updated\x20external\x20URL\x20for\x20menu\x20','\x20has\x20an\x20empty\x20platform\x20path.','\x20direct\x20child\x20menu(s).','New\x20external\x20HTTPS\x20URL','after','12Turjny','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','cookie','\x27\x5c\x27\x27','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','15376410VwhuhP','Response\x20was\x20lost\x20and\x20menu\x20','/smartapi/menu/update','appCode','get','\x20has\x20','sort',',\x20current\x20','write','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','update-external-link-url','update\x20external\x20menu\x20URL','10189104KGEOBv','link','failed','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','Update\x20request\x20for\x20menu\x20','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','url','expect-parent-id','2455614ylGOpn','hash','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','childrenCount','menu_external_link_not_leaf','POST','329579ysoXkB'];a114_0x3c3f=function(){return _0x34bd94;};return a114_0x3c3f();}async function recoverAfterResponseLoss(_0x5e7318,_0xf799f1){const _0x3f14b5=a114_0x1ee332,{plan:_0xb29f4a,before:_0xa2162a,body:_0x3c4e42}=_0xf799f1;let _0x1158c4;try{_0x1158c4=await fetchMenuSnapshot(_0x5e7318['appCode'],_0x5e7318['cookie']);}catch{throw recoveryRequired(_0xb29f4a,_0x5e7318[_0x3f14b5(0x182)],{'id':_0x3c4e42['id'],'readbackFailed':!![]});}const _0x2eb648=_0x1158c4[_0x3f14b5(0x149)][_0x3f14b5(0x183)](_0x3c4e42['id']);if(!_0x2eb648||_0x2eb648[_0x3f14b5(0x13d)]!==_0x3c4e42[_0x3f14b5(0x13d)])throw recoveryRequired(_0xb29f4a,_0x5e7318[_0x3f14b5(0x182)],{'id':_0x3c4e42['id'],'requestedUrlObserved':![],'after':_0x2eb648??null});try{verifyUpdatedFact(_0xa2162a,_0x2eb648,_0x3c4e42[_0x3f14b5(0x13d)]);}catch(_0x5d0ce1){const _0x21fba2=asVerificationError(_0x5d0ce1,_0x3f14b5(0x180)+_0x3c4e42['id']+_0x3f14b5(0x170));throw menuFailure(_0x21fba2,_0xb29f4a,{'stage':'update-recovery','succeeded':[{'id':_0x3c4e42['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x3c4e42['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x2eb648,'warnings':[_0x3f14b5(0x174)],'verification':{'status':_0x3f14b5(0x138),'targetId':_0x3c4e42['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5e7318['appCode'])}});}return updateSuccess(_0xb29f4a,_0x1158c4,_0x2eb648,![],!![]);}function recoveryRequired(_0x381eba,_0xf6f4f6,_0x4f2ec4){const _0x3fd560=a114_0x1ee332,_0x935b17=menuError(_0x3fd560(0x166),_0x3fd560(0x164),'Run\x20'+buildLookupCommand(_0xf6f4f6)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x935b17,_0x381eba,{'stage':_0x3fd560(0x16a),'failed':{'id':_0x4f2ec4['id'],..._0x4f2ec4['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x4f2ec4[_0x3fd560(0x16c)]},..._0x4f2ec4['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x4f2ec4[_0x3fd560(0x179)],'warnings':[_0x3fd560(0x141)],'verification':{'status':_0x3fd560(0x138),'targetId':_0x4f2ec4['id'],..._0x4f2ec4[_0x3fd560(0x16c)]===undefined?{}:{'requestedUrlObserved':_0x4f2ec4[_0x3fd560(0x16c)]},..._0x4f2ec4[_0x3fd560(0x15b)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0xf6f4f6)}});}function buildLookupCommand(_0x5b3704){const _0x71f021=a114_0x1ee332,_0x5207c5='\x27'+_0x5b3704['replace'](/'/g,_0x71f021(0x17d))+'\x27';return _0x71f021(0x14b)+_0x5207c5+_0x71f021(0x173);}
|
|
1
|
+
const a114_0x3f3d21=a114_0x2560;(function(_0x159154,_0x1db1d6){const _0x21de83=a114_0x2560,_0x4ed5a6=_0x159154();while(!![]){try{const _0x5c1503=parseInt(_0x21de83(0x20e))/0x1+parseInt(_0x21de83(0x21e))/0x2+parseInt(_0x21de83(0x21d))/0x3*(parseInt(_0x21de83(0x23d))/0x4)+parseInt(_0x21de83(0x219))/0x5*(-parseInt(_0x21de83(0x20b))/0x6)+parseInt(_0x21de83(0x1ff))/0x7*(-parseInt(_0x21de83(0x230))/0x8)+-parseInt(_0x21de83(0x206))/0x9*(parseInt(_0x21de83(0x200))/0xa)+parseInt(_0x21de83(0x23b))/0xb;if(_0x5c1503===_0x1db1d6)break;else _0x4ed5a6['push'](_0x4ed5a6['shift']());}catch(_0x56a25c){_0x4ed5a6['push'](_0x4ed5a6['shift']());}}}(a114_0x2e5e,0x2ffdc));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';function a114_0x2560(_0x2f0377,_0x1063a9){_0x2f0377=_0x2f0377-0x1f3;const _0x2e5e70=a114_0x2e5e();let _0x256093=_0x2e5e70[_0x2f0377];return _0x256093;}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a114_0x3f3d21(0x232),'command':a114_0x3f3d21(0x1fd),'description':a114_0x3f3d21(0x229),'risk':a114_0x3f3d21(0x23e),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a114_0x3f3d21(0x212),'type':a114_0x3f3d21(0x225),'required':!![],'description':a114_0x3f3d21(0x208)},{'name':a114_0x3f3d21(0x1fb),'type':a114_0x3f3d21(0x225),'required':!![],'description':a114_0x3f3d21(0x236)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x179e8b){validateInput(_0x179e8b);},async 'dryRun'(_0x13de4e){const _0x166b87=a114_0x3f3d21;validateInput(_0x13de4e);const _0x1f27a4=await buildPlan(_0x13de4e,!![]);return menuDryRunResult(_0x1f27a4['plan'],{'method':_0x166b87(0x205),'url':_0x166b87(0x216),'body':_0x1f27a4['body'],'description':_0x166b87(0x235)+_0x1f27a4[_0x166b87(0x204)]['id']+'.'});},async 'execute'(_0x124932){const _0x1a7a35=a114_0x3f3d21;validateInput(_0x124932);const _0x1d8be3=await buildPlan(_0x124932,![]),{plan:_0x1f424b,body:_0x33ecb2,before:_0x266a01,noChanges:_0x17fc24}=_0x1d8be3,_0x3f094c=_0x33ecb2['id'];if(_0x17fc24)return updateSuccess(_0x1f424b,_0x1d8be3[_0x1a7a35(0x239)],_0x266a01,!![],![]);await recheckMutationSnapshot(_0x124932,_0x1f424b,_0x1a7a35(0x23c),_0x3f094c);try{await updateMenuEntity(_0x124932[_0x1a7a35(0x1fc)],_0x124932[_0x1a7a35(0x214)],{'id':_0x33ecb2['id'],'url':_0x33ecb2['url']});}catch(_0x14d169){const _0x225edf=mapMenuApiError(_0x14d169,'update\x20external\x20menu\x20URL',_0x3f094c);if(isMenuResponseLoss(_0x14d169)&&_0x225edf['code']!=='menu_permission_denied')return recoverAfterResponseLoss(_0x124932,_0x1d8be3);throw menuFailure(_0x225edf,_0x1f424b,{'stage':_0x1a7a35(0x1f4),'failed':{'id':_0x3f094c},'warnings':[_0x1a7a35(0x1fa)],'verification':{'status':_0x1a7a35(0x222),'targetId':_0x3f094c,'lookupCommand':buildLookupCommand(_0x124932[_0x1a7a35(0x1fc)])}});}let _0x2a9fa1,_0x1f56ad;try{_0x2a9fa1=await fetchMenuSnapshot(_0x124932[_0x1a7a35(0x1fc)],_0x124932[_0x1a7a35(0x214)]),_0x1f56ad=requireMenu(_0x2a9fa1,_0x3f094c),verifyUpdatedFact(_0x266a01,_0x1f56ad,_0x33ecb2[_0x1a7a35(0x212)]);}catch(_0x187784){const _0x5b8c23=describeMenuErrorCause(_0x187784,_0x1a7a35(0x21a),_0x3f094c),_0x515c7b=asVerificationError(_0x187784,_0x1a7a35(0x221)+_0x3f094c+_0x1a7a35(0x22d));throw menuFailure(_0x515c7b,_0x1f424b,{'stage':'verification','succeeded':[{'id':_0x3f094c,'updateRequested':!![]}],'failed':{'id':_0x3f094c,'requestedStateConfirmed':![],..._0x5b8c23},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x1a7a35(0x222),'targetId':_0x3f094c,'lookupCommand':buildLookupCommand(_0x124932[_0x1a7a35(0x1fc)])}});}return updateSuccess(_0x1f424b,_0x2a9fa1,_0x1f56ad,![],![]);}};function validateInput(_0x40c4ee){const _0x39bac4=a114_0x3f3d21;validateExactId(_0x40c4ee),requiredUrl(_0x40c4ee,_0x39bac4(0x212)),requiredExpectedUrl(_0x40c4ee),parseParentId(_0x40c4ee,_0x39bac4(0x215),{'required':!![]});}function requiredUrl(_0x3edfd4,_0x194811){const _0x383b45=a114_0x3f3d21;if(!hasFlag(_0x3edfd4,_0x194811)||!_0x3edfd4[_0x383b45(0x203)](_0x194811)[_0x383b45(0x207)]())throw CliErrors['flagMissing'](_0x194811);return validateExternalMenuUrl(_0x3edfd4['str'](_0x194811));}function a114_0x2e5e(){const _0x372cf6=['\x20has\x20an\x20empty\x20platform\x20path.','315JAQeyX','verify\x20external\x20menu\x20URL\x20update','menu_state_drift','\x20direct\x20child\x20menu(s).','6CUChTM','574012Wioruj','menu_update_recovery_required','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','Update\x20request\x20for\x20menu\x20','failed','\x20parent\x20changed:\x20expected\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','string','Run\x20','\x20changed\x20during\x20the\x20URL-only\x20update.','Response\x20was\x20lost\x20and\x20menu\x20','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','menu\x20list','link','parentId','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','requestedUrlObserved','menu_external_link_not_leaf','2342888WqAotG','label','menu','\x20URL\x20update\x20did\x20not\x20take\x20effect.','replace','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','visible','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','snapshot','\x20has\x20','240097rBhzQE','update\x20external\x20menu\x20URL','292244AfZJRh','write','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','byId','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','update','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','\x27\x5c\x27\x27','update-recovery','type','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','expect-url','appCode','external-link-update','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','7mylMTW','25320SCMKZr','childrenCount','\x20is\x20type\x20\x22','str','body','POST','909RvkmbT','trim','New\x20external\x20HTTPS\x20URL','sort','readbackFailed','4668bHYYsE','\x20--format\x20compress','Menu\x20','339224ddEYTY','rabetbase\x20menu\x20list\x20--appcode\x20','\x20already\x20matches\x20the\x20requested\x20URL.','iframe','url','path','cookie','expect-parent-id','/smartapi/menu/update','flagMissing'];a114_0x2e5e=function(){return _0x372cf6;};return a114_0x2e5e();}function requiredExpectedUrl(_0x369967){const _0x5c2889=a114_0x3f3d21;if(!hasFlag(_0x369967,'expect-url')||!_0x369967[_0x5c2889(0x203)](_0x5c2889(0x1fb))[_0x5c2889(0x207)]())throw CliErrors[_0x5c2889(0x217)](_0x5c2889(0x1fb));return _0x369967['str'](_0x5c2889(0x1fb))[_0x5c2889(0x207)]();}async function buildPlan(_0x22dbb0,_0x3ff6ff){const _0x5de181=a114_0x3f3d21,_0x2209f6=validateExactId(_0x22dbb0),_0x52a193=requiredUrl(_0x22dbb0,_0x5de181(0x212)),_0x3bd6af=requiredExpectedUrl(_0x22dbb0),_0x15ad5f=parseParentId(_0x22dbb0,_0x5de181(0x215),{'required':!![]}),_0x45bcd2=await fetchMutationSnapshot(_0x22dbb0,_0x5de181(0x23c),_0x2209f6),_0x5ab033=requireMenu(_0x45bcd2,_0x2209f6);assertExternalLinkLeaf(_0x5ab033);if(_0x5ab033[_0x5de181(0x22c)]!==_0x15ad5f)throw menuError(_0x5de181(0x21b),'Menu\x20'+_0x2209f6+_0x5de181(0x223)+formatParent(_0x15ad5f)+',\x20current\x20'+formatParent(_0x5ab033[_0x5de181(0x22c)])+'.',_0x5de181(0x224));const _0x518713=_0x5ab033[_0x5de181(0x212)]===_0x52a193;if(!_0x518713&&_0x5ab033[_0x5de181(0x212)]!==_0x3bd6af)throw menuError(_0x5de181(0x21b),_0x5de181(0x20d)+_0x2209f6+_0x5de181(0x1f5),_0x5de181(0x1f3));const _0x9b251a={'id':_0x2209f6,'appCode':_0x22dbb0[_0x5de181(0x1fc)],'url':_0x52a193},_0x4f8e08={..._0x5ab033,'url':_0x52a193};return{'body':_0x9b251a,'before':_0x5ab033,'noChanges':_0x518713,'snapshot':_0x45bcd2,'plan':mutationResult({'operation':_0x5de181(0x1fd),'selector':{'id':_0x2209f6},'before':_0x5ab033,'after':_0x4f8e08,'dryRun':_0x3ff6ff,'backend':[...BACKEND],'plannedActions':_0x518713?[]:[{'stage':'update-external-link-url','method':_0x5de181(0x205),'path':_0x5de181(0x216),'body':_0x9b251a}],'snapshotHash':_0x45bcd2['hash'],'warnings':_0x518713?[_0x5de181(0x23f)]:[]})};}function assertExternalLinkLeaf(_0x5b3ab4){const _0x1832a6=a114_0x3f3d21;if(_0x5b3ab4['type']!==_0x1832a6(0x211)&&_0x5b3ab4[_0x1832a6(0x1f8)]!==_0x1832a6(0x22b))throw menuError('menu_external_link_type_required','Menu\x20'+_0x5b3ab4['id']+_0x1832a6(0x202)+(_0x5b3ab4[_0x1832a6(0x1f8)]||'unknown')+'\x22,\x20not\x20iframe\x20or\x20link.','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x5b3ab4[_0x1832a6(0x201)]!==0x0)throw menuError(_0x1832a6(0x22f),'Menu\x20'+_0x5b3ab4['id']+_0x1832a6(0x23a)+_0x5b3ab4[_0x1832a6(0x201)]+_0x1832a6(0x21c),_0x1832a6(0x1f9));if(!_0x5b3ab4[_0x1832a6(0x213)][_0x1832a6(0x207)]())throw menuError('menu_external_link_path_missing','Menu\x20'+_0x5b3ab4['id']+_0x1832a6(0x218),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x48bc85,_0x4afab3,_0x41dd79){const _0xcd074d=a114_0x3f3d21;assertExternalLinkLeaf(_0x4afab3);const _0x3f5493=[['id',_0x4afab3['id'],_0x48bc85['id']],[_0xcd074d(0x231),_0x4afab3['label'],_0x48bc85[_0xcd074d(0x231)]],[_0xcd074d(0x1f8),_0x4afab3[_0xcd074d(0x1f8)],_0x48bc85['type']],[_0xcd074d(0x213),_0x4afab3['path'],_0x48bc85['path']],[_0xcd074d(0x22c),_0x4afab3[_0xcd074d(0x22c)],_0x48bc85[_0xcd074d(0x22c)]],[_0xcd074d(0x209),_0x4afab3[_0xcd074d(0x209)],_0x48bc85['sort']],['visible',_0x4afab3[_0xcd074d(0x237)],_0x48bc85[_0xcd074d(0x237)]]];for(const [_0x5aee2b,_0x1ec125,_0x47302c]of _0x3f5493){assertVerified(_0x1ec125===_0x47302c,_0xcd074d(0x20d)+_0x48bc85['id']+'\x20'+_0x5aee2b+_0xcd074d(0x227));}assertVerified(_0x4afab3[_0xcd074d(0x212)]===_0x41dd79,_0xcd074d(0x20d)+_0x48bc85['id']+_0xcd074d(0x233));}function updateSuccess(_0x160c0b,_0x326102,_0x4422a7,_0x3d4d8d,_0x254afc){const _0x4e5a26=a114_0x3f3d21,_0x3cdf05=_0x4422a7['id'],_0x1a051f=mutationResult({..._0x160c0b,'after':_0x4422a7,'dryRun':![],'succeeded':[{'id':_0x3cdf05,'updated':!_0x3d4d8d,'skipped':_0x3d4d8d,'recovered':_0x254afc}],'verification':{'checkedBy':_0x4e5a26(0x22a),'snapshotHash':_0x326102['hash'],'targetId':_0x3cdf05,'matchesRequestedState':!![],'recovered':_0x254afc}});return{'ok':!![],'message':_0x254afc?_0x4e5a26(0x1fe)+_0x3cdf05+'.':_0x3d4d8d?_0x4e5a26(0x20d)+_0x3cdf05+_0x4e5a26(0x210):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x3cdf05+'.','data':{..._0x1a051f,'recovered':_0x254afc}};}async function recoverAfterResponseLoss(_0x2f1399,_0x3815ad){const _0x265bf5=a114_0x3f3d21,{plan:_0x2ba2aa,before:_0x3b9d83,body:_0x566f4d}=_0x3815ad;let _0x4197b8;try{_0x4197b8=await fetchMenuSnapshot(_0x2f1399[_0x265bf5(0x1fc)],_0x2f1399['cookie']);}catch{throw recoveryRequired(_0x2ba2aa,_0x2f1399[_0x265bf5(0x1fc)],{'id':_0x566f4d['id'],'readbackFailed':!![]});}const _0x1702b5=_0x4197b8[_0x265bf5(0x240)]['get'](_0x566f4d['id']);if(!_0x1702b5||_0x1702b5['url']!==_0x566f4d[_0x265bf5(0x212)])throw recoveryRequired(_0x2ba2aa,_0x2f1399[_0x265bf5(0x1fc)],{'id':_0x566f4d['id'],'requestedUrlObserved':![],'after':_0x1702b5??null});try{verifyUpdatedFact(_0x3b9d83,_0x1702b5,_0x566f4d[_0x265bf5(0x212)]);}catch(_0x186dee){const _0x51f8f0=asVerificationError(_0x186dee,_0x265bf5(0x228)+_0x566f4d['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x51f8f0,_0x2ba2aa,{'stage':'update-recovery','succeeded':[{'id':_0x566f4d['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x566f4d['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x1702b5,'warnings':[_0x265bf5(0x220)],'verification':{'status':'failed','targetId':_0x566f4d['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x2f1399[_0x265bf5(0x1fc)])}});}return updateSuccess(_0x2ba2aa,_0x4197b8,_0x1702b5,![],!![]);}function recoveryRequired(_0x281f15,_0x322b31,_0x38359e){const _0x301fd3=a114_0x3f3d21,_0x532ab5=menuError(_0x301fd3(0x21f),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x301fd3(0x226)+buildLookupCommand(_0x322b31)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x532ab5,_0x281f15,{'stage':_0x301fd3(0x1f7),'failed':{'id':_0x38359e['id'],..._0x38359e[_0x301fd3(0x22e)]===undefined?{}:{'requestedUrlObserved':_0x38359e['requestedUrlObserved']},..._0x38359e['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x38359e['after'],'warnings':[_0x301fd3(0x238)],'verification':{'status':_0x301fd3(0x222),'targetId':_0x38359e['id'],..._0x38359e[_0x301fd3(0x22e)]===undefined?{}:{'requestedUrlObserved':_0x38359e[_0x301fd3(0x22e)]},..._0x38359e[_0x301fd3(0x20a)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x322b31)}});}function buildLookupCommand(_0x47e11){const _0x28de37=a114_0x3f3d21,_0x1b28e8='\x27'+_0x47e11[_0x28de37(0x234)](/'/g,_0x28de37(0x1f6))+'\x27';return _0x28de37(0x20f)+_0x1b28e8+_0x28de37(0x20c);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a115_0x56f868=a115_0x22b2;function a115_0x22b2(_0x4562d0,_0x378b3f){_0x4562d0=_0x4562d0-0xe6;const _0x2ae1ec=a115_0x2ae1();let _0x22b272=_0x2ae1ec[_0x4562d0];return _0x22b272;}(function(_0x3f8341,_0x4b2fef){const _0xaa9dc2=a115_0x22b2,_0x3bebeb=_0x3f8341();while(!![]){try{const _0x38d26a=parseInt(_0xaa9dc2(0x12e))/0x1+parseInt(_0xaa9dc2(0x10c))/0x2*(parseInt(_0xaa9dc2(0x114))/0x3)+parseInt(_0xaa9dc2(0x10e))/0x4*(parseInt(_0xaa9dc2(0x109))/0x5)+-parseInt(_0xaa9dc2(0x100))/0x6+-parseInt(_0xaa9dc2(0xf5))/0x7+-parseInt(_0xaa9dc2(0x105))/0x8+-parseInt(_0xaa9dc2(0x117))/0x9*(-parseInt(_0xaa9dc2(0xfc))/0xa);if(_0x38d26a===_0x4b2fef)break;else _0x3bebeb['push'](_0x3bebeb['shift']());}catch(_0x5c22b5){_0x3bebeb['push'](_0x3bebeb['shift']());}}}(a115_0x2ae1,0x4dbc8));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a115_0x56f868(0xec),'path':a115_0x56f868(0x113)}];export const menuGroupCreate={'service':'menu','command':a115_0x56f868(0x124),'description':a115_0x56f868(0x126),'risk':a115_0x56f868(0x110),'structuredErrors':!![],'flags':[{'name':'label','type':a115_0x56f868(0xf8),'required':!![],'description':a115_0x56f868(0x115)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x28967b){validateCreateInput(_0x28967b);},async 'dryRun'(_0x505d0b){const _0x45ec43=a115_0x56f868,_0x384c13=await buildCreatePlan(_0x505d0b,!![]),_0x287cce=_0x384c13[_0x45ec43(0xf1)];return menuDryRunResult(_0x384c13,{'method':_0x45ec43(0xec),'url':_0x45ec43(0x113),'body':{'parentId':toApiParentId(_0x287cce[_0x45ec43(0xe8)]),'label':_0x287cce['label'],'type':_0x45ec43(0x12f),'visible':!![],'sort':_0x287cce[_0x45ec43(0x125)],'extend':{}},'description':_0x45ec43(0xf9)+String(_0x287cce[_0x45ec43(0xe9)])+_0x45ec43(0x107)});},async 'execute'(_0x59a315){const _0x2fd281=a115_0x56f868;validateCreateInput(_0x59a315);const _0x354a99=await buildCreatePlan(_0x59a315,![]),_0x21b274=_0x354a99[_0x2fd281(0xf1)];await recheckMutationSnapshot(_0x59a315,_0x354a99,'create\x20folder');let _0x2f7ebc;try{_0x2f7ebc=await createMenuEntity(_0x59a315[_0x2fd281(0xf6)],_0x59a315[_0x2fd281(0x11d)],{'parentId':toApiParentId(_0x21b274[_0x2fd281(0xe8)]),'label':String(_0x21b274['label']),'type':_0x2fd281(0x12f),'visible':!![],'sort':Number(_0x21b274[_0x2fd281(0x125)]),'extend':{}});}catch(_0x1f4554){const _0x2f4a18=mapMenuApiError(_0x1f4554,_0x2fd281(0xf2));throw menuFailure(_0x2f4a18,_0x354a99,{'stage':'create','failed':{}});}const _0x4696ec=Number(_0x2f7ebc['id']);if(!Number[_0x2fd281(0xfb)](_0x4696ec)||_0x4696ec<=0x0){const _0x46110b=menuError(_0x2fd281(0xf3),_0x2fd281(0xfd),_0x2fd281(0xea));throw menuFailure(_0x46110b,_0x354a99,{'stage':_0x2fd281(0x12a),'failed':{'createdId':_0x2f7ebc['id']??null},'warnings':[_0x2fd281(0x106)],'verification':{'status':_0x2fd281(0x10a),'lookupCommand':_0x2fd281(0x118)}});}const _0x24e486=typeof _0x2f7ebc['path']==='string'?_0x2f7ebc[_0x2fd281(0x11f)]:'';if(!_0x24e486[_0x2fd281(0x102)]()){const _0x3e1c3b=menuError(_0x2fd281(0xf3),_0x2fd281(0x119)+_0x4696ec+_0x2fd281(0x10d),_0x2fd281(0x12b));throw menuFailure(_0x3e1c3b,_0x354a99,{'stage':'create-response-validation','succeeded':[{'id':_0x4696ec,'created':!![]}],'failed':{'id':_0x4696ec,'generatedPathConfirmed':![]},'warnings':['Folder\x20'+_0x4696ec+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x21b274,'id':_0x4696ec,'path':_0x24e486},'verification':{'status':'failed','lookupCommand':_0x2fd281(0x118),'targetId':_0x4696ec}});}let _0xf429df;try{_0xf429df=await fetchMenuSnapshot(_0x59a315[_0x2fd281(0xf6)],_0x59a315[_0x2fd281(0x11d)]);}catch(_0xeb5a06){const _0x129626=describeMenuErrorCause(_0xeb5a06,_0x2fd281(0x128),_0x4696ec),_0x16e2bc=asVerificationError(_0xeb5a06,_0x2fd281(0xf7)+_0x4696ec+_0x2fd281(0xe6));throw menuFailure(_0x16e2bc,_0x354a99,{'stage':_0x2fd281(0xef),'succeeded':[{'id':_0x4696ec,'created':!![],'path':_0x24e486}],'failed':{'id':_0x4696ec,'finalFactsConfirmed':![],..._0x129626},'warnings':[_0x2fd281(0xf7)+_0x4696ec+_0x2fd281(0xfe)+JSON[_0x2fd281(0xee)](_0x24e486)+_0x2fd281(0xeb)],'after':{..._0x21b274,'id':_0x4696ec,'path':_0x24e486},'verification':{'status':'failed','lookupCommand':_0x2fd281(0x118),'targetId':_0x4696ec}});}const _0x15729b=_0xf429df['byId']['get'](_0x4696ec);let _0x2ddf68;try{assertVerified(Boolean(_0x15729b),_0x2fd281(0xed)+_0x4696ec+_0x2fd281(0x108)),_0x2ddf68=_0x15729b,assertVerified(_0x2ddf68[_0x2fd281(0x11c)]===_0x2fd281(0x12f),_0x2fd281(0x129)+_0x4696ec+_0x2fd281(0x101)),assertVerified(_0x2ddf68[_0x2fd281(0xe9)]===_0x21b274[_0x2fd281(0xe9)],_0x2fd281(0xed)+_0x4696ec+_0x2fd281(0xff)),assertVerified(_0x2ddf68[_0x2fd281(0x11f)]===_0x24e486&&Boolean(_0x2ddf68[_0x2fd281(0x11f)][_0x2fd281(0x102)]()),'Created\x20folder\x20'+_0x4696ec+_0x2fd281(0x12c)),assertVerified(_0x2ddf68[_0x2fd281(0x111)]===!![],_0x2fd281(0xed)+_0x4696ec+'\x20is\x20not\x20visible.'),assertVerified(_0x2ddf68[_0x2fd281(0x11b)]['length']===0x0,'Created\x20folder\x20'+_0x4696ec+_0x2fd281(0x10b)),assertVerified(_0x2ddf68[_0x2fd281(0x116)]===0x0,_0x2fd281(0xed)+_0x4696ec+_0x2fd281(0x122)),assertVerified(_0x2ddf68[_0x2fd281(0x125)]===_0x21b274[_0x2fd281(0x125)],_0x2fd281(0xed)+_0x4696ec+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x2ddf68[_0x2fd281(0xe8)]===_0x21b274[_0x2fd281(0xe8)],'Created\x20folder\x20'+_0x4696ec+'\x20has\x20unexpected\x20parent\x20'+(_0x2ddf68[_0x2fd281(0xe8)]??_0x2fd281(0x120))+'.'),assertVerified(_0x2ddf68[_0x2fd281(0x103)]==null,'Created\x20folder\x20'+_0x4696ec+_0x2fd281(0xfa));const _0x129ed3=_0x2ddf68[_0x2fd281(0xe8)]==null?undefined:requireFolder(_0xf429df,_0x2ddf68[_0x2fd281(0xe8)]);assertVerified(_0x2ddf68[_0x2fd281(0x127)]===(_0x129ed3?_0x129ed3[_0x2fd281(0x127)]+0x1:0x0),'Created\x20folder\x20'+_0x4696ec+_0x2fd281(0xf0));}catch(_0x1d2a92){const _0x35e6f8=describeMenuErrorCause(_0x1d2a92,'verify\x20folder\x20creation',_0x4696ec),_0x2838eb=asVerificationError(_0x1d2a92,_0x2fd281(0xf7)+_0x4696ec+_0x2fd281(0x12d));throw menuFailure(_0x2838eb,_0x354a99,{'stage':_0x2fd281(0xef),'succeeded':[{'id':_0x4696ec,'created':!![],'path':_0x24e486}],'failed':{'id':_0x4696ec,'finalFactsConfirmed':![],..._0x35e6f8},'warnings':[_0x2fd281(0xf7)+_0x4696ec+_0x2fd281(0xf4)],'after':_0x15729b??{..._0x21b274,'id':_0x4696ec,'path':_0x24e486},'verification':{'status':_0x2fd281(0x10a),'lookupCommand':_0x2fd281(0x118),'targetId':_0x4696ec}});}const _0x25247a=mutationResult({..._0x354a99,'after':_0x2ddf68,'dryRun':![],'succeeded':[{'id':_0x4696ec,'type':'folder','path':_0x24e486}],'verification':{'checkedBy':_0x2fd281(0x11a),'snapshotHash':_0xf429df[_0x2fd281(0xe7)],'folder':!![],'path':_0x24e486,'emptyResources':!![]}});return{'ok':!![],'data':_0x25247a,'message':_0x2fd281(0x10f)+_0x4696ec+'.'};}};function validateCreateInput(_0xcaaf52){const _0x160d9c=a115_0x56f868,_0x132326=_0xcaaf52[_0x160d9c(0x121)](_0x160d9c(0xe9))[_0x160d9c(0x102)]();if(!_0x132326)throw CliErrors[_0x160d9c(0x11e)]('label');parseParentId(_0xcaaf52,_0x160d9c(0x104)),validateSort(_0xcaaf52);}async function buildCreatePlan(_0x5d70f6,_0x3361ff){const _0x2ef230=a115_0x56f868,_0x1bca84=await fetchMutationSnapshot(_0x5d70f6,_0x2ef230(0xf2)),_0x226e64=parseParentId(_0x5d70f6,_0x2ef230(0x104))??null;if(_0x226e64!=null)requireFolder(_0x1bca84,_0x226e64);const _0x28f644=validateSort(_0x5d70f6),_0x27ff9b=_0x28f644??nextSiblingSort(_0x1bca84,_0x226e64,_0x2ef230(0x12f)),_0x3cf8e3=_0x5d70f6[_0x2ef230(0x121)](_0x2ef230(0xe9))['trim']();return mutationResult({'operation':_0x2ef230(0x124),'selector':{'label':_0x3cf8e3,'parentId':_0x226e64},'before':null,'after':{'id':null,'parentId':_0x226e64,'label':_0x3cf8e3,'path':_0x2ef230(0x112),'type':'folder','visible':!![],'sort':_0x27ff9b,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x3361ff,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2ef230(0x123),'method':_0x2ef230(0xec),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x226e64),'label':_0x3cf8e3,'type':_0x2ef230(0x12f),'visible':!![],'sort':_0x27ff9b,'extend':{}}}],'snapshotHash':_0x1bca84[_0x2ef230(0xe7)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}function a115_0x2ae1(){const _0xc4f6e4=['POST','Created\x20folder\x20','stringify','verification','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','after','create\x20folder','menu_create_response_invalid','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','3069521iwErBp','appCode','Folder\x20','string','Would\x20create\x20empty\x20folder\x20\x22','\x20unexpectedly\x20owns\x20a\x20page.','isSafeInteger','13250340JAsHKt','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','\x20may\x20exist\x20online\x20at\x20path\x20','\x20has\x20an\x20unexpected\x20label.','3777672lmxDWD','\x20is\x20not\x20type\x20folder.','trim','pageId','parent-id','1029680yHQWpM','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x22\x20with\x20a\x20platform-generated\x20path.','\x20is\x20missing\x20from\x20menu\x20list.','98995ixUhvw','failed','\x20has\x20resources.','430ZwkHph','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','4xoojrt','Created\x20menu\x20folder\x20','write','visible','<platform-generated>','/smartapi/menu/create','597VfbIzU','Folder\x20label','childrenCount','9JmxnvX','rabetbase\x20menu\x20list\x20--format\x20json','Menu\x20create\x20response\x20for\x20folder\x20','menu\x20list','resources','type','cookie','flagMissing','path','root','str','\x20is\x20not\x20empty.','create-folder','group-create','sort','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','depth','verify\x20folder\x20creation','Created\x20menu\x20','create-response-validation','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','127615bQDnHl','folder','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','hash','parentId','label','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.',';\x20verify\x20it\x20before\x20retrying.'];a115_0x2ae1=function(){return _0xc4f6e4;};return a115_0x2ae1();}
|
|
1
|
+
const a115_0x1e8e95=a115_0x1924;(function(_0x5162c7,_0x199f12){const _0x4300f1=a115_0x1924,_0x5be2dd=_0x5162c7();while(!![]){try{const _0x7740d=-parseInt(_0x4300f1(0x173))/0x1*(parseInt(_0x4300f1(0x16e))/0x2)+-parseInt(_0x4300f1(0x193))/0x3+-parseInt(_0x4300f1(0x186))/0x4*(parseInt(_0x4300f1(0x199))/0x5)+parseInt(_0x4300f1(0x196))/0x6+parseInt(_0x4300f1(0x19a))/0x7+-parseInt(_0x4300f1(0x194))/0x8+parseInt(_0x4300f1(0x198))/0x9;if(_0x7740d===_0x199f12)break;else _0x5be2dd['push'](_0x5be2dd['shift']());}catch(_0x41a837){_0x5be2dd['push'](_0x5be2dd['shift']());}}}(a115_0x1779,0xdfb5e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a115_0x1779(){const _0x434b6f=['trim','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','\x20may\x20exist\x20online\x20at\x20path\x20','childrenCount','\x20is\x20not\x20visible.','\x20unexpectedly\x20owns\x20a\x20page.','verification','sort','resources','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','create-folder','failed','Folder\x20','create\x20folder','cookie','Menu\x20create\x20response\x20for\x20folder\x20','1738586hGvjxa','\x20has\x20an\x20unexpected\x20sort.',';\x20verify\x20it\x20before\x20retrying.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','parentId','1EqeaTp','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','/smartapi/menu/create','pageId','length','Would\x20create\x20empty\x20folder\x20\x22','Folder\x20label','\x20is\x20not\x20empty.','group-create','create-response-validation','\x22\x20with\x20a\x20platform-generated\x20path.','folder','rabetbase\x20menu\x20list\x20--format\x20json','string','menu','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','POST','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20is\x20not\x20type\x20folder.','576060hEzzrb','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20is\x20missing\x20from\x20menu\x20list.','depth','\x20has\x20resources.','parent-id','str','get','Created\x20folder\x20','byId','hash','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','stringify','2947539RoezIV','1035224mLJFQz','menu_create_response_invalid','3221460jCsfBx','type','22803165sCanLc','15LvmeSL','1812839RxfGQA','root','label','verify\x20folder\x20creation','Created\x20menu\x20','appCode','Created\x20menu\x20folder\x20','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','isSafeInteger','path'];a115_0x1779=function(){return _0x434b6f;};return a115_0x1779();}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_0x1e8e95(0x183),'path':a115_0x1e8e95(0x175)}];export const menuGroupCreate={'service':a115_0x1e8e95(0x181),'command':'group-create','description':a115_0x1e8e95(0x1a1),'risk':'write','structuredErrors':!![],'flags':[{'name':a115_0x1e8e95(0x19c),'type':a115_0x1e8e95(0x180),'required':!![],'description':a115_0x1e8e95(0x179)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x58680b){validateCreateInput(_0x58680b);},async 'dryRun'(_0x34d5e2){const _0x1aec2e=a115_0x1e8e95,_0xa40a66=await buildCreatePlan(_0x34d5e2,!![]),_0x389e2a=_0xa40a66['after'];return menuDryRunResult(_0xa40a66,{'method':_0x1aec2e(0x183),'url':_0x1aec2e(0x175),'body':{'parentId':toApiParentId(_0x389e2a['parentId']),'label':_0x389e2a[_0x1aec2e(0x19c)],'type':_0x1aec2e(0x17e),'visible':!![],'sort':_0x389e2a[_0x1aec2e(0x164)],'extend':{}},'description':_0x1aec2e(0x178)+String(_0x389e2a[_0x1aec2e(0x19c)])+_0x1aec2e(0x17d)});},async 'execute'(_0x235e45){const _0x48c861=a115_0x1e8e95;validateCreateInput(_0x235e45);const _0x5353c1=await buildCreatePlan(_0x235e45,![]),_0x2b8d01=_0x5353c1['after'];await recheckMutationSnapshot(_0x235e45,_0x5353c1,_0x48c861(0x16b));let _0x24cf7f;try{_0x24cf7f=await createMenuEntity(_0x235e45[_0x48c861(0x19f)],_0x235e45[_0x48c861(0x16c)],{'parentId':toApiParentId(_0x2b8d01[_0x48c861(0x172)]),'label':String(_0x2b8d01[_0x48c861(0x19c)]),'type':'folder','visible':!![],'sort':Number(_0x2b8d01[_0x48c861(0x164)]),'extend':{}});}catch(_0x1aafdf){const _0x3d9f3d=mapMenuApiError(_0x1aafdf,_0x48c861(0x16b));throw menuFailure(_0x3d9f3d,_0x5353c1,{'stage':'create','failed':{}});}const _0x4ffd7f=Number(_0x24cf7f['id']);if(!Number[_0x48c861(0x15b)](_0x4ffd7f)||_0x4ffd7f<=0x0){const _0x30b118=menuError(_0x48c861(0x195),_0x48c861(0x174),_0x48c861(0x187));throw menuFailure(_0x30b118,_0x5353c1,{'stage':_0x48c861(0x17c),'failed':{'createdId':_0x24cf7f['id']??null},'warnings':[_0x48c861(0x171)],'verification':{'status':_0x48c861(0x169),'lookupCommand':_0x48c861(0x17f)}});}const _0x4c48f1=typeof _0x24cf7f[_0x48c861(0x15c)]===_0x48c861(0x180)?_0x24cf7f[_0x48c861(0x15c)]:'';if(!_0x4c48f1[_0x48c861(0x15d)]()){const _0x5e1909=menuError('menu_create_response_invalid',_0x48c861(0x16d)+_0x4ffd7f+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x48c861(0x182));throw menuFailure(_0x5e1909,_0x5353c1,{'stage':'create-response-validation','succeeded':[{'id':_0x4ffd7f,'created':!![]}],'failed':{'id':_0x4ffd7f,'generatedPathConfirmed':![]},'warnings':[_0x48c861(0x16a)+_0x4ffd7f+_0x48c861(0x167)],'after':{..._0x2b8d01,'id':_0x4ffd7f,'path':_0x4c48f1},'verification':{'status':_0x48c861(0x169),'lookupCommand':_0x48c861(0x17f),'targetId':_0x4ffd7f}});}let _0x20a729;try{_0x20a729=await fetchMenuSnapshot(_0x235e45['appCode'],_0x235e45[_0x48c861(0x16c)]);}catch(_0x3dd6e4){const _0x34473f=describeMenuErrorCause(_0x3dd6e4,_0x48c861(0x19d),_0x4ffd7f),_0x3d7733=asVerificationError(_0x3dd6e4,_0x48c861(0x16a)+_0x4ffd7f+_0x48c861(0x15e));throw menuFailure(_0x3d7733,_0x5353c1,{'stage':_0x48c861(0x163),'succeeded':[{'id':_0x4ffd7f,'created':!![],'path':_0x4c48f1}],'failed':{'id':_0x4ffd7f,'finalFactsConfirmed':![],..._0x34473f},'warnings':['Folder\x20'+_0x4ffd7f+_0x48c861(0x15f)+JSON[_0x48c861(0x192)](_0x4c48f1)+_0x48c861(0x170)],'after':{..._0x2b8d01,'id':_0x4ffd7f,'path':_0x4c48f1},'verification':{'status':_0x48c861(0x169),'lookupCommand':_0x48c861(0x17f),'targetId':_0x4ffd7f}});}const _0x4b986a=_0x20a729[_0x48c861(0x18f)][_0x48c861(0x18d)](_0x4ffd7f);let _0x2e49aa;try{assertVerified(Boolean(_0x4b986a),_0x48c861(0x18e)+_0x4ffd7f+_0x48c861(0x188)),_0x2e49aa=_0x4b986a,assertVerified(_0x2e49aa[_0x48c861(0x197)]===_0x48c861(0x17e),_0x48c861(0x19e)+_0x4ffd7f+_0x48c861(0x185)),assertVerified(_0x2e49aa[_0x48c861(0x19c)]===_0x2b8d01[_0x48c861(0x19c)],_0x48c861(0x18e)+_0x4ffd7f+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x2e49aa['path']===_0x4c48f1&&Boolean(_0x2e49aa['path'][_0x48c861(0x15d)]()),'Created\x20folder\x20'+_0x4ffd7f+_0x48c861(0x184)),assertVerified(_0x2e49aa['visible']===!![],'Created\x20folder\x20'+_0x4ffd7f+_0x48c861(0x161)),assertVerified(_0x2e49aa[_0x48c861(0x165)][_0x48c861(0x177)]===0x0,_0x48c861(0x18e)+_0x4ffd7f+_0x48c861(0x18a)),assertVerified(_0x2e49aa[_0x48c861(0x160)]===0x0,_0x48c861(0x18e)+_0x4ffd7f+_0x48c861(0x17a)),assertVerified(_0x2e49aa[_0x48c861(0x164)]===_0x2b8d01[_0x48c861(0x164)],_0x48c861(0x18e)+_0x4ffd7f+_0x48c861(0x16f)),assertVerified(_0x2e49aa['parentId']===_0x2b8d01[_0x48c861(0x172)],_0x48c861(0x18e)+_0x4ffd7f+'\x20has\x20unexpected\x20parent\x20'+(_0x2e49aa[_0x48c861(0x172)]??_0x48c861(0x19b))+'.'),assertVerified(_0x2e49aa[_0x48c861(0x176)]==null,_0x48c861(0x18e)+_0x4ffd7f+_0x48c861(0x162));const _0x38bd0d=_0x2e49aa[_0x48c861(0x172)]==null?undefined:requireFolder(_0x20a729,_0x2e49aa[_0x48c861(0x172)]);assertVerified(_0x2e49aa[_0x48c861(0x189)]===(_0x38bd0d?_0x38bd0d['depth']+0x1:0x0),_0x48c861(0x18e)+_0x4ffd7f+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x24cc1f){const _0x8e4344=describeMenuErrorCause(_0x24cc1f,_0x48c861(0x19d),_0x4ffd7f),_0x491b2b=asVerificationError(_0x24cc1f,_0x48c861(0x16a)+_0x4ffd7f+_0x48c861(0x166));throw menuFailure(_0x491b2b,_0x5353c1,{'stage':_0x48c861(0x163),'succeeded':[{'id':_0x4ffd7f,'created':!![],'path':_0x4c48f1}],'failed':{'id':_0x4ffd7f,'finalFactsConfirmed':![],..._0x8e4344},'warnings':[_0x48c861(0x16a)+_0x4ffd7f+_0x48c861(0x191)],'after':_0x4b986a??{..._0x2b8d01,'id':_0x4ffd7f,'path':_0x4c48f1},'verification':{'status':_0x48c861(0x169),'lookupCommand':_0x48c861(0x17f),'targetId':_0x4ffd7f}});}const _0x3e95a9=mutationResult({..._0x5353c1,'after':_0x2e49aa,'dryRun':![],'succeeded':[{'id':_0x4ffd7f,'type':'folder','path':_0x4c48f1}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x20a729['hash'],'folder':!![],'path':_0x4c48f1,'emptyResources':!![]}});return{'ok':!![],'data':_0x3e95a9,'message':_0x48c861(0x1a0)+_0x4ffd7f+'.'};}};function a115_0x1924(_0x48b504,_0x2da9d2){_0x48b504=_0x48b504-0x15b;const _0x177956=a115_0x1779();let _0x19249b=_0x177956[_0x48b504];return _0x19249b;}function validateCreateInput(_0x1dd150){const _0x4e905c=a115_0x1e8e95,_0x4d68c1=_0x1dd150[_0x4e905c(0x18c)]('label')['trim']();if(!_0x4d68c1)throw CliErrors['flagMissing'](_0x4e905c(0x19c));parseParentId(_0x1dd150,_0x4e905c(0x18b)),validateSort(_0x1dd150);}async function buildCreatePlan(_0x3a406a,_0x57267e){const _0x4a173a=a115_0x1e8e95,_0x75ac7c=await fetchMutationSnapshot(_0x3a406a,_0x4a173a(0x16b)),_0x43cbc2=parseParentId(_0x3a406a,'parent-id')??null;if(_0x43cbc2!=null)requireFolder(_0x75ac7c,_0x43cbc2);const _0x3d168f=validateSort(_0x3a406a),_0x4ac060=_0x3d168f??nextSiblingSort(_0x75ac7c,_0x43cbc2,'folder'),_0x55ab8b=_0x3a406a['str'](_0x4a173a(0x19c))[_0x4a173a(0x15d)]();return mutationResult({'operation':_0x4a173a(0x17b),'selector':{'label':_0x55ab8b,'parentId':_0x43cbc2},'before':null,'after':{'id':null,'parentId':_0x43cbc2,'label':_0x55ab8b,'path':'<platform-generated>','type':_0x4a173a(0x17e),'visible':!![],'sort':_0x4ac060,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x57267e,'backend':[...BACKEND],'plannedActions':[{'stage':_0x4a173a(0x168),'method':'POST','path':_0x4a173a(0x175),'body':{'parentId':toApiParentId(_0x43cbc2),'label':_0x55ab8b,'type':_0x4a173a(0x17e),'visible':!![],'sort':_0x4ac060,'extend':{}}}],'snapshotHash':_0x75ac7c[_0x4a173a(0x190)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a116_0x111219=a116_0x3b07;(function(_0x5974fd,_0x4a1c7c){const _0x2498e2=a116_0x3b07,_0x4690b6=_0x5974fd();while(!![]){try{const _0x4236cb=-parseInt(_0x2498e2(0x19e))/0x1*(parseInt(_0x2498e2(0x190))/0x2)+-parseInt(_0x2498e2(0x1a2))/0x3+parseInt(_0x2498e2(0x189))/0x4+-parseInt(_0x2498e2(0x19d))/0x5+parseInt(_0x2498e2(0x18b))/0x6*(parseInt(_0x2498e2(0x194))/0x7)+parseInt(_0x2498e2(0x186))/0x8+parseInt(_0x2498e2(0x1a5))/0x9*(-parseInt(_0x2498e2(0x193))/0xa);if(_0x4236cb===_0x4a1c7c)break;else _0x4690b6['push'](_0x4690b6['shift']());}catch(_0x16102b){_0x4690b6['push'](_0x4690b6['shift']());}}}(a116_0x295e,0xb52c2));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';function a116_0x3b07(_0x5b94a4,_0x971801){_0x5b94a4=_0x5b94a4-0x180;const _0x295ed3=a116_0x295e();let _0x3b071d=_0x295ed3[_0x5b94a4];return _0x3b071d;}function a116_0x295e(){const _0xf81dc4=['string','parent-id','Would\x20update\x20folder\x20','folder','menu\x20list','unknown','str','Update\x20request\x20for\x20folder\x20','trim','hash','validation','\x20sort\x20update\x20did\x20not\x20take\x20effect.','--label\x20cannot\x20be\x20empty.','684632QwYYAj','cookie','New\x20folder\x20label','2354288pLfCmx','type','1728sqjJZT','update\x20folder','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','\x20label\x20update\x20did\x20not\x20take\x20effect.','verification','89758uljkwa','label','sort','956030zMBPpm','35707hisJdp','/smartapi/menu/update','\x20already\x20matches\x20the\x20requested\x20state.','failed','selector','menu','\x22,\x20not\x20folder.','appCode','parentId','1976330MwpriK','4zXUYSo','group-update','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','Updated\x20folder\x20','2192316vxGrQu','Folder\x20','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','9MDURqZ','write','\x20is\x20type\x20\x22','POST','menu_not_folder'];a116_0x295e=function(){return _0xf81dc4;};return a116_0x295e();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a116_0x111219(0x195)}];export const menuGroupUpdate={'service':a116_0x111219(0x199),'command':'group-update','description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a116_0x111219(0x1a6),'structuredErrors':!![],'rejectedFlags':[{'name':'parent-id','message':a116_0x111219(0x1a0),'hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a116_0x111219(0x191),'type':a116_0x111219(0x1aa),'description':a116_0x111219(0x188)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x22eb2c){validateUpdateInput(_0x22eb2c);},async 'dryRun'(_0x4970e9){const _0x25d3c3=a116_0x111219;validateUpdateInput(_0x4970e9);const {plan:_0x90ecb2,patch:_0x1bb33a}=await buildUpdatePlan(_0x4970e9,!![]);return menuDryRunResult(_0x90ecb2,{'method':_0x25d3c3(0x1a8),'url':_0x25d3c3(0x195),'body':_0x1bb33a,'description':_0x25d3c3(0x1ac)+_0x90ecb2[_0x25d3c3(0x198)]['id']+'.'});},async 'execute'(_0x14f1e6){const _0x381da1=a116_0x111219;validateUpdateInput(_0x14f1e6);const {plan:_0x3b4217,patch:_0x2bbc5a,noChanges:_0x2e74a9}=await buildUpdatePlan(_0x14f1e6,![]),_0x3213b2=Number(_0x3b4217[_0x381da1(0x198)]['id']),_0x298254=await recheckMutationSnapshot(_0x14f1e6,_0x3b4217,_0x381da1(0x18c),_0x3213b2);if(!_0x2e74a9)try{await updateMenuEntity(_0x14f1e6[_0x381da1(0x19b)],_0x14f1e6[_0x381da1(0x187)],_0x2bbc5a);}catch(_0x3d3b68){const _0x36906e=mapMenuApiError(_0x3d3b68,'update\x20folder',_0x3213b2);throw menuFailure(_0x36906e,_0x3b4217,{'stage':'update','failed':{'id':_0x3213b2}});}let _0x3f7dc0=_0x298254,_0x23cfee;try{!_0x2e74a9&&(_0x3f7dc0=await fetchMenuSnapshot(_0x14f1e6['appCode'],_0x14f1e6[_0x381da1(0x187)])),_0x23cfee=requireMenu(_0x3f7dc0,_0x3213b2),verifyPatch(_0x23cfee,_0x2bbc5a),_0x23cfee[_0x381da1(0x19c)]!=null&&requireFolder(_0x3f7dc0,_0x23cfee[_0x381da1(0x19c)]);}catch(_0x1be6be){const _0x2fd6f3=describeMenuErrorCause(_0x1be6be,'verify\x20folder\x20update',_0x3213b2),_0x4967b5=asVerificationError(_0x1be6be,_0x381da1(0x180)+_0x3213b2+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x4967b5,_0x3b4217,{'stage':_0x381da1(0x18f),'succeeded':[{'id':_0x3213b2,'updateRequested':!_0x2e74a9,'skipped':_0x2e74a9}],'failed':{'id':_0x3213b2,'requestedStateConfirmed':![],..._0x2fd6f3},'warnings':[_0x381da1(0x18d)],'verification':{'status':_0x381da1(0x197),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x3213b2}});}const _0x3e15b6=mutationResult({..._0x3b4217,'after':_0x23cfee,'dryRun':![],'succeeded':[{'id':_0x3213b2,'updated':!_0x2e74a9,'skipped':_0x2e74a9}],'verification':{'checkedBy':_0x381da1(0x1ae),'snapshotHash':_0x3f7dc0[_0x381da1(0x182)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x3e15b6,'message':_0x2e74a9?'Folder\x20'+_0x3213b2+_0x381da1(0x196):_0x381da1(0x1a1)+_0x3213b2+'.'};}};function validateUpdateInput(_0x462bac){const _0x32a164=a116_0x111219;validateExactId(_0x462bac);if(hasFlag(_0x462bac,_0x32a164(0x1ab)))throw CliErrors[_0x32a164(0x183)](_0x32a164(0x1a0),_0x32a164(0x1a4));if(!hasFlag(_0x462bac,_0x32a164(0x191))&&!hasFlag(_0x462bac,_0x32a164(0x192)))throw CliErrors['validation']('At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.');if(hasFlag(_0x462bac,'label')&&!_0x462bac[_0x32a164(0x1b0)]('label')[_0x32a164(0x181)]())throw CliErrors['validation'](_0x32a164(0x185));validateSort(_0x462bac);}async function buildUpdatePlan(_0x4c4da1,_0x2f5111){const _0x36a158=a116_0x111219,_0x54ffd6=validateExactId(_0x4c4da1),_0x49abce=await fetchMutationSnapshot(_0x4c4da1,_0x36a158(0x18c),_0x54ffd6),_0x1d97d1=requireMenu(_0x49abce,_0x54ffd6);if(_0x1d97d1['type']!==_0x36a158(0x1ad))throw menuError(_0x36a158(0x1a9),'Menu\x20'+_0x54ffd6+_0x36a158(0x1a7)+(_0x1d97d1[_0x36a158(0x18a)]||_0x36a158(0x1af))+_0x36a158(0x19a),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.');assertExpectedState(_0x4c4da1,_0x1d97d1);const _0x47dad1={'id':_0x54ffd6},_0x5f1f9c={..._0x1d97d1};if(hasFlag(_0x4c4da1,_0x36a158(0x191))){const _0x149b45=_0x4c4da1[_0x36a158(0x1b0)](_0x36a158(0x191))[_0x36a158(0x181)]();_0x47dad1[_0x36a158(0x191)]=_0x149b45,_0x5f1f9c[_0x36a158(0x191)]=_0x149b45;}if(hasFlag(_0x4c4da1,_0x36a158(0x192))){const _0x530e1d=validateSort(_0x4c4da1);_0x47dad1[_0x36a158(0x192)]=_0x530e1d,_0x5f1f9c['sort']=_0x530e1d;}const _0x140872=sameRequestedState(_0x1d97d1,_0x5f1f9c),_0x4572d0=_0x140872?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x47dad1,'noChanges':_0x140872,'plan':mutationResult({'operation':_0x36a158(0x19f),'selector':{'id':_0x54ffd6},'before':_0x1d97d1,'after':_0x5f1f9c,'dryRun':_0x2f5111,'backend':[...BACKEND],'snapshotHash':_0x49abce[_0x36a158(0x182)],'warnings':_0x4572d0})};}function sameRequestedState(_0x57a45f,_0x359076){const _0xe6513d=a116_0x111219;return _0x57a45f['label']===_0x359076['label']&&_0x57a45f[_0xe6513d(0x192)]===_0x359076['sort'];}function verifyPatch(_0x3cc4f5,_0x3825bb){const _0x1e54a3=a116_0x111219;assertVerified(_0x3cc4f5[_0x1e54a3(0x18a)]===_0x1e54a3(0x1ad),'Menu\x20'+_0x3cc4f5['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x3825bb[_0x1e54a3(0x191)]!==undefined&&assertVerified(_0x3cc4f5[_0x1e54a3(0x191)]===_0x3825bb['label'],_0x1e54a3(0x1a3)+_0x3cc4f5['id']+_0x1e54a3(0x18e)),_0x3825bb[_0x1e54a3(0x192)]!==undefined&&assertVerified(_0x3cc4f5[_0x1e54a3(0x192)]===_0x3825bb[_0x1e54a3(0x192)],'Folder\x20'+_0x3cc4f5['id']+_0x1e54a3(0x184));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x283e29,_0x4990a5){const _0x120dde=a117_0x3720,_0x249453=_0x283e29();while(!![]){try{const _0x2604c8=-parseInt(_0x120dde(0xe1))/0x1+parseInt(_0x120dde(0xe2))/0x2*(-parseInt(_0x120dde(0xe0))/0x3)+parseInt(_0x120dde(0xea))/0x4*(parseInt(_0x120dde(0xe7))/0x5)+parseInt(_0x120dde(0xe4))/0x6*(parseInt(_0x120dde(0xe3))/0x7)+-parseInt(_0x120dde(0xdf))/0x8*(parseInt(_0x120dde(0xe8))/0x9)+parseInt(_0x120dde(0xe6))/0xa*(parseInt(_0x120dde(0xe9))/0xb)+parseInt(_0x120dde(0xe5))/0xc;if(_0x2604c8===_0x4990a5)break;else _0x249453['push'](_0x249453['shift']());}catch(_0x3c8aae){_0x249453['push'](_0x249453['shift']());}}}(a117_0x221c,0x3847e));import{menuList}from'../../commands/menu/list.js';function a117_0x3720(_0x4533bd,_0x4103fb){_0x4533bd=_0x4533bd-0xdf;const _0x221cd2=a117_0x221c();let _0x3720d1=_0x221cd2[_0x4533bd];return _0x3720d1;}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';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';function a117_0x221c(){const _0x1bcd5c=['26248cpYVds','3mlHucu','141268YyastF','296216IMQhzn','689563jRPyVa','6eTWGrQ','1104156XwArgE','879110BiclzT','1745TUQmPO','45xnkRnh','22eNGTaX','1948OukOks'];a117_0x221c=function(){return _0x1bcd5c;};return a117_0x221c();}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_0x2319b8=a118_0x50cb;(function(_0x186e85,_0x31a812){const _0x53cb09=a118_0x50cb,_0x5f1244=_0x186e85();while(!![]){try{const _0x13ec74=parseInt(_0x53cb09(0xd1))/0x1+-parseInt(_0x53cb09(0xd0))/0x2*(-parseInt(_0x53cb09(0xd9))/0x3)+-parseInt(_0x53cb09(0xcd))/0x4*(-parseInt(_0x53cb09(0xd6))/0x5)+-parseInt(_0x53cb09(0xd4))/0x6*(parseInt(_0x53cb09(0xd8))/0x7)+parseInt(_0x53cb09(0xdc))/0x8+-parseInt(_0x53cb09(0xcc))/0x9+parseInt(_0x53cb09(0xd5))/0xa*(-parseInt(_0x53cb09(0xd3))/0xb);if(_0x13ec74===_0x31a812)break;else _0x5f1244['push'](_0x5f1244['shift']());}catch(_0x40bdbb){_0x5f1244['push'](_0x5f1244['shift']());}}}(a118_0x1263,0x7ed50));function a118_0x50cb(_0x48794a,_0x56a4f2){_0x48794a=_0x48794a-0xcb;const _0x1263dc=a118_0x1263();let _0x50cb77=_0x1263dc[_0x48794a];return _0x50cb77;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';function a118_0x1263(){const _0x747d27=['Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','2524768xVtHvA','menus','map','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','read','8647326RwTUiA','10428doYcmn','hash','menu','2LfXYoB','682780NGuFAd','cookie','132AGwRON','54kTKtuW','363130onOgEf','1410LvIuJG','verbose','536249uCCfiT','2615961WahdEL','total'];a118_0x1263=function(){return _0x747d27;};return a118_0x1263();}export const menuList={'service':a118_0x2319b8(0xcf),'command':'list','description':a118_0x2319b8(0xdf),'risk':a118_0x2319b8(0xcb),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a118_0x2319b8(0xd7),'type':'boolean','description':a118_0x2319b8(0xdb)}],async 'execute'(_0x14d84c){const _0x1ae12e=a118_0x2319b8,_0x335875=_0x14d84c['bool']('verbose'),_0x16c11a=await fetchMenuSnapshot(_0x14d84c['appCode'],_0x14d84c[_0x1ae12e(0xd2)],{'verbose':_0x335875});return{'ok':!![],'data':{'total':_0x16c11a[_0x1ae12e(0xda)],'snapshotHash':_0x16c11a[_0x1ae12e(0xce)],'menus':_0x16c11a[_0x1ae12e(0xdd)][_0x1ae12e(0xde)](toMenuListItem)},'message':_0x16c11a[_0x1ae12e(0xda)]===0x0?'No\x20menus\x20found.':'Found\x20'+_0x16c11a[_0x1ae12e(0xda)]+'\x20menu(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a119_0x3b58bf=a119_0x2ffa;function a119_0x28a0(){const _0x266a2c=['\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','1473170ZsCYMr','appCode','write','334172vnEgbW','verification','type','after','POST','364086RXFIIh','move-menu','/smartapi/menu/update','update','sort','\x20parent\x20changed:\x20expected\x20','move','120nxdbMc','Menu\x20','hash','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','menu','failed','192YbmyKh','7612472EUKzKE','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','expect-parent-id','2464902xnkgUv','menu_move_source_not_leaf','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','verify\x20menu\x20move','5861135USbTWb','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','parentId','Would\x20move\x20menu\x20','parent-id','menu\x20list','20357FgvZOG','11oszsdh','folder','rabetbase\x20menu\x20list\x20--format\x20compress','6eMtEgJ','move\x20menu','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'];a119_0x28a0=function(){return _0x266a2c;};return a119_0x28a0();}function a119_0x2ffa(_0x6d8be0,_0x56b4b8){_0x6d8be0=_0x6d8be0-0x8b;const _0x28a083=a119_0x28a0();let _0x2ffabe=_0x28a083[_0x6d8be0];return _0x2ffabe;}(function(_0x1c144f,_0x5e3232){const _0x2191a4=a119_0x2ffa,_0x337b5d=_0x1c144f();while(!![]){try{const _0x34b25c=-parseInt(_0x2191a4(0x8e))/0x1*(parseInt(_0x2191a4(0xa5))/0x2)+parseInt(_0x2191a4(0xaf))/0x3+-parseInt(_0x2191a4(0x99))/0x4+-parseInt(_0x2191a4(0xb3))/0x5*(-parseInt(_0x2191a4(0x92))/0x6)+-parseInt(_0x2191a4(0xac))/0x7+parseInt(_0x2191a4(0xab))/0x8*(parseInt(_0x2191a4(0x9e))/0x9)+parseInt(_0x2191a4(0x96))/0xa*(parseInt(_0x2191a4(0x8f))/0xb);if(_0x34b25c===_0x5e3232)break;else _0x337b5d['push'](_0x337b5d['shift']());}catch(_0x2a02bf){_0x337b5d['push'](_0x337b5d['shift']());}}}(a119_0x28a0,0xafaff));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':'POST','path':a119_0x3b58bf(0xa0)}];export const menuMove={'service':a119_0x3b58bf(0xa9),'command':'move','description':a119_0x3b58bf(0xb5),'risk':a119_0x3b58bf(0x98),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x522c82){validateMoveInput(_0x522c82);},async 'dryRun'(_0x46b0fe){const _0x2d16bb=a119_0x3b58bf,{plan:_0x152e11,patch:_0x18c5d6}=await buildMovePlan(_0x46b0fe,!![]);return menuDryRunResult(_0x152e11,{'method':_0x2d16bb(0x9d),'url':_0x2d16bb(0xa0),'body':{..._0x18c5d6,'appCode':_0x46b0fe['appCode']},'description':_0x2d16bb(0x8b)+_0x18c5d6['id']+'.'});},async 'execute'(_0x3eb78f){const _0x5f24b4=a119_0x3b58bf;validateMoveInput(_0x3eb78f);const {plan:_0x383502,patch:_0x76f467,noChanges:_0x146e3d,snapshot:_0x286f85}=await buildMovePlan(_0x3eb78f,![]),_0xbffc6a=_0x76f467['id'];if(!_0x146e3d)try{await updateMenuEntity(_0x3eb78f['appCode'],_0x3eb78f['cookie'],_0x76f467);}catch(_0x154d32){const _0x2bc97f=mapMenuApiError(_0x154d32,_0x5f24b4(0xa4),_0xbffc6a);throw menuFailure(_0x2bc97f,_0x383502,{'stage':_0x5f24b4(0xa1),'failed':{'id':_0xbffc6a},'warnings':[_0x5f24b4(0xad)],'verification':{'status':_0x5f24b4(0xaa),'targetId':_0xbffc6a,'lookupCommand':_0x5f24b4(0x91)}});}let _0x288a3,_0x45db76;try{_0x288a3=_0x146e3d?_0x286f85:await fetchMenuSnapshot(_0x3eb78f[_0x5f24b4(0x97)],_0x3eb78f['cookie']),_0x45db76=requireMenu(_0x288a3,_0xbffc6a),verifyMove(_0x45db76,_0x383502[_0x5f24b4(0x9c)]),_0x45db76[_0x5f24b4(0xb6)]!==null&&requireFolder(_0x288a3,_0x45db76[_0x5f24b4(0xb6)]);}catch(_0x2e2cd1){const _0x4fa694=describeMenuErrorCause(_0x2e2cd1,_0x5f24b4(0xb2),_0xbffc6a),_0x43b61e=asVerificationError(_0x2e2cd1,'Move\x20request\x20for\x20menu\x20'+_0xbffc6a+_0x5f24b4(0xb4));throw menuFailure(_0x43b61e,_0x383502,{'stage':_0x5f24b4(0x9a),'succeeded':[{'id':_0xbffc6a,'updateRequested':!_0x146e3d,'skipped':_0x146e3d}],'failed':{'id':_0xbffc6a,'requestedStateConfirmed':![],..._0x4fa694},'warnings':[_0x5f24b4(0x94)],'verification':{'status':_0x5f24b4(0xaa),'targetId':_0xbffc6a,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x36cbc0=mutationResult({..._0x383502,'after':_0x45db76,'dryRun':![],'succeeded':[{'id':_0xbffc6a,'updated':!_0x146e3d,'skipped':_0x146e3d}],'verification':{'checkedBy':_0x5f24b4(0x8d),'snapshotHash':_0x288a3[_0x5f24b4(0xa7)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x36cbc0,'message':_0x146e3d?_0x5f24b4(0xa6)+_0xbffc6a+'\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.':'Moved\x20menu\x20'+_0xbffc6a+'.'};}};function validateMoveInput(_0x9d76d3){const _0x3f3fa8=a119_0x3b58bf;validateExactId(_0x9d76d3),parseParentId(_0x9d76d3,_0x3f3fa8(0x8c),{'required':!![]}),parseParentId(_0x9d76d3,'expect-parent-id',{'required':!![]}),validateSort(_0x9d76d3);}async function buildMovePlan(_0x3caa07,_0x4e266c){const _0x31739f=a119_0x3b58bf,_0x452b21=validateExactId(_0x3caa07),_0x194834=parseParentId(_0x3caa07,_0x31739f(0x8c),{'required':!![]}),_0x5946be=parseParentId(_0x3caa07,_0x31739f(0xae),{'required':!![]}),_0x8bbdb1=validateSort(_0x3caa07),_0x34ed54=await fetchMutationSnapshot(_0x3caa07,_0x31739f(0x93),_0x452b21),_0x1a45ff=requireMenu(_0x34ed54,_0x452b21);if(_0x1a45ff['type']===_0x31739f(0x90)||_0x1a45ff['childrenCount']!==0x0)throw menuError(_0x31739f(0xb0),'Menu\x20'+_0x452b21+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.',_0x31739f(0xa8));if(_0x1a45ff['parentId']!==_0x5946be)throw menuError('menu_state_drift','Menu\x20'+_0x452b21+_0x31739f(0xa3)+formatParent(_0x5946be)+',\x20current\x20'+formatParent(_0x1a45ff[_0x31739f(0xb6)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');_0x194834!==null&&requireFolder(_0x34ed54,_0x194834);const _0x52bbc4=_0x8bbdb1??(_0x1a45ff[_0x31739f(0xb6)]===_0x194834?_0x1a45ff[_0x31739f(0xa2)]??0x0:nextSiblingSort(_0x34ed54,_0x194834,_0x31739f(0xa9))),_0x23ebce={..._0x1a45ff,'parentId':_0x194834,'sort':_0x52bbc4},_0x8ce288={'id':_0x452b21,'parentId':toApiParentId(_0x194834),'sort':_0x52bbc4},_0x24f9a8=_0x1a45ff[_0x31739f(0xb6)]===_0x194834&&_0x1a45ff['sort']===_0x52bbc4;return{'patch':_0x8ce288,'noChanges':_0x24f9a8,'snapshot':_0x34ed54,'plan':mutationResult({'operation':_0x31739f(0xa4),'selector':{'id':_0x452b21,'parentId':_0x194834},'before':_0x1a45ff,'after':_0x23ebce,'dryRun':_0x4e266c,'backend':[...BACKEND],'plannedActions':[{'stage':_0x31739f(0x9f),'method':_0x31739f(0x9d),'path':_0x31739f(0xa0),'body':{..._0x8ce288,'appCode':_0x3caa07['appCode']}}],'snapshotHash':_0x34ed54['hash'],'warnings':_0x24f9a8?[_0x31739f(0xb1)]:[]})};}function verifyMove(_0x234ec0,_0x301d97){const _0x271ef1=a119_0x3b58bf;assertVerified(_0x234ec0[_0x271ef1(0x9b)]!==_0x271ef1(0x90),'Menu\x20'+_0x234ec0['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x234ec0['childrenCount']===0x0,_0x271ef1(0xa6)+_0x234ec0['id']+'\x20is\x20no\x20longer\x20a\x20leaf.'),assertVerified(_0x234ec0[_0x271ef1(0xb6)]===_0x301d97['parentId'],_0x271ef1(0xa6)+_0x234ec0['id']+_0x271ef1(0x95)),assertVerified(_0x234ec0[_0x271ef1(0xa2)]===_0x301d97[_0x271ef1(0xa2)],_0x271ef1(0xa6)+_0x234ec0['id']+'\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a120_0x326f8e=a120_0x48a6;(function(_0x1a67c0,_0x38a443){const _0x59e0d7=a120_0x48a6,_0x52053d=_0x1a67c0();while(!![]){try{const _0x38c2ac=-parseInt(_0x59e0d7(0x84))/0x1*(parseInt(_0x59e0d7(0x6f))/0x2)+parseInt(_0x59e0d7(0x92))/0x3+parseInt(_0x59e0d7(0x76))/0x4+parseInt(_0x59e0d7(0x7e))/0x5+parseInt(_0x59e0d7(0x97))/0x6+-parseInt(_0x59e0d7(0xc6))/0x7*(-parseInt(_0x59e0d7(0xa5))/0x8)+parseInt(_0x59e0d7(0x82))/0x9*(-parseInt(_0x59e0d7(0x91))/0xa);if(_0x38c2ac===_0x38a443)break;else _0x52053d['push'](_0x52053d['shift']());}catch(_0x2a9aad){_0x52053d['push'](_0x52053d['shift']());}}}(a120_0x3c95,0x8409e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a120_0x326f8e(0x72),'path':a120_0x326f8e(0x78)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a120_0x326f8e(0xa4),'command':a120_0x326f8e(0xb2),'description':a120_0x326f8e(0xb8),'risk':a120_0x326f8e(0xc7),'structuredErrors':!![],'flags':[{'name':a120_0x326f8e(0x93),'type':'string','required':!![],'description':a120_0x326f8e(0xa8)},{'name':a120_0x326f8e(0x8f),'type':a120_0x326f8e(0x6a),'required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x53116b){validateRegroupInput(_0x53116b);},async 'dryRun'(_0x51ca21){const _0xfd759f=a120_0x326f8e;validateRegroupInput(_0x51ca21);const _0x2c5d13=await buildRegroupPlan(_0x51ca21,!![]);return menuDryRunResult(_0x2c5d13[_0xfd759f(0x9c)],{'method':_0xfd759f(0x72),'url':'/smartapi/menu/regroup','body':_0x2c5d13[_0xfd759f(0x94)],'description':_0xfd759f(0x77)+JSON[_0xfd759f(0x95)](_0x2c5d13[_0xfd759f(0x93)])+_0xfd759f(0xb4)+_0x2c5d13[_0xfd759f(0x9a)][_0xfd759f(0x7a)](',\x20')+_0xfd759f(0xa9)});},async 'execute'(_0x534fd8){const _0x1aaa90=a120_0x326f8e;validateRegroupInput(_0x534fd8);const _0x45871d=await buildRegroupPlan(_0x534fd8,![]);await recheckMutationSnapshot(_0x534fd8,_0x45871d[_0x1aaa90(0x9c)],'start\x20regroup');const _0x5d49d3=buildMenuLookupCommand(_0x534fd8['appCode']);let _0x382220,_0x1285bb;try{_0x382220=await startMenuRegroup(_0x534fd8[_0x1aaa90(0xab)],_0x45871d[_0x1aaa90(0x94)]),_0x1285bb=normalizeAsyncTask(_0x382220);}catch(_0xc1fdc9){const _0x180d91=await inspectRegroupAfterFailure(_0x534fd8[_0x1aaa90(0x79)],_0x534fd8[_0x1aaa90(0xab)],_0x45871d[_0x1aaa90(0x93)],_0x45871d[_0x1aaa90(0x9a)]),_0x1da6bd=typeof _0x382220?.[_0x1aaa90(0xb6)]==='string'&&_0x382220[_0x1aaa90(0xb6)][_0x1aaa90(0xa7)]()?_0x382220[_0x1aaa90(0xb6)][_0x1aaa90(0xa7)]():null,_0x315db1=_0x1da6bd?{'command':buildAsyncTaskStatusCommand(_0x1da6bd,_0x534fd8['appCode'])}:null,_0x38bb1b=mapMenuApiError(_0xc1fdc9,_0x1aaa90(0x8a));throw menuFailure(_0x38bb1b,_0x45871d[_0x1aaa90(0x9c)],{'stage':'regroup-submit','failed':{'menuIds':_0x45871d[_0x1aaa90(0x9a)],'taskId':_0x1da6bd,'groupingApplied':_0x180d91[_0x1aaa90(0xae)]?!![]:_0x1aaa90(0x74)},'after':_0x180d91[_0x1aaa90(0xae)]??null,'warnings':[_0x1aaa90(0xad),..._0x180d91['readbackError']?['Regroup\x20readback\x20also\x20failed:\x20'+_0x180d91[_0x1aaa90(0xac)]]:[],..._0x1da6bd?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':'failed','groupingApplied':_0x180d91['applied']?!![]:_0x1aaa90(0x74),'taskId':_0x1da6bd,'query':_0x315db1,'lookupCommand':_0x5d49d3}});}const _0xc6060b=buildAsyncTaskStatusCommand(_0x1285bb[_0x1aaa90(0xb6)],_0x534fd8[_0x1aaa90(0x79)]);let _0x573db0=null,_0x2d058c=null,_0x580461=null;try{_0x573db0=await fetchMenuSnapshot(_0x534fd8['appCode'],_0x534fd8[_0x1aaa90(0xab)]),_0x2d058c=findAppliedRegroup(_0x573db0,_0x45871d[_0x1aaa90(0x93)],_0x45871d['menuIds']);}catch(_0x248989){_0x580461=_0x248989 instanceof Error?_0x248989[_0x1aaa90(0xb0)]:String(_0x248989);}const _0x55399d=mutationResult({..._0x45871d[_0x1aaa90(0x9c)],'after':_0x2d058c??null,'dryRun':![],'succeeded':[{'groupId':_0x2d058c?.[_0x1aaa90(0xa0)]['id']??null,'menuIds':_0x45871d[_0x1aaa90(0x9a)],'taskId':_0x1285bb['taskId'],'status':_0x1285bb[_0x1aaa90(0x9d)],'groupingApplied':_0x2d058c?!![]:'unconfirmed'}],'verification':{'checkedBy':_0x1aaa90(0xbd),'snapshotHash':_0x573db0?.[_0x1aaa90(0x9b)]??null,'groupId':_0x2d058c?.['group']['id']??null,'groupingApplied':_0x2d058c?!![]:_0x1aaa90(0x74),'readbackError':_0x580461,'lookupCommand':_0x5d49d3},'warnings':[..._0x45871d['plan'][_0x1aaa90(0x70)],...!_0x2d058c?[unconfirmedRegroupWarning(_0x1285bb)]:[],..._0x580461?[_0x1aaa90(0x69)+_0x580461]:[]]}),_0x114b7b=_0x1285bb[_0x1aaa90(0x9d)]===_0x1aaa90(0xa6)&&!_0x2d058c?_0x1aaa90(0x7c)+_0x1285bb[_0x1aaa90(0xb6)]+_0x1aaa90(0xb3):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x1285bb);return{'ok':!![],'message':_0x114b7b,'data':{..._0x55399d,'task':_0x1285bb,'query':_0x1285bb[_0x1aaa90(0xb1)]?null:{'command':_0xc6060b}}};}};function validateRegroupInput(_0x2c2556){const _0x54d851=a120_0x326f8e;if(!_0x2c2556[_0x54d851(0xc1)](_0x54d851(0x93))[_0x54d851(0xa7)]())throw CliErrors['flagMissing'](_0x54d851(0x93));parseMenuIds(_0x2c2556[_0x54d851(0xc1)](_0x54d851(0x8f)));}function parseMenuIds(_0x4ab32f){const _0x4de010=a120_0x326f8e,_0x1a0e3c=_0x4ab32f[_0x4de010(0x8e)](',')['map'](_0x4ea599=>_0x4ea599['trim']());if(_0x1a0e3c[_0x4de010(0xaa)]===0x0||_0x1a0e3c[_0x4de010(0x83)](_0x47bcda=>!_0x47bcda))throw CliErrors[_0x4de010(0x7b)](_0x4de010(0x8d));const _0x3b4e31=_0x1a0e3c[_0x4de010(0x7f)](_0x59457f=>{const _0x2327b9=_0x4de010;if(!/^\d+$/[_0x2327b9(0x73)](_0x59457f))throw CliErrors['validation'](_0x2327b9(0x8d));const _0x592c8d=Number(_0x59457f);if(!Number['isSafeInteger'](_0x592c8d)||_0x592c8d<=0x0)throw CliErrors[_0x2327b9(0x7b)](_0x2327b9(0x8d));return _0x592c8d;});if(new Set(_0x3b4e31)[_0x4de010(0x6e)]!==_0x3b4e31[_0x4de010(0xaa)])throw CliErrors[_0x4de010(0x7b)](_0x4de010(0xbe));if(_0x3b4e31[_0x4de010(0xaa)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x4de010(0x7b)](_0x4de010(0xc5)+MAX_REGROUP_MENU_COUNT+_0x4de010(0xc4));return _0x3b4e31;}function a120_0x3c95(){const _0x4e75b1=['\x20menu\x20list\x20--appcode\x20','byId','<new-group-id>','menu\x20list','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','type','menu_regroup_target_not_leaf','str','submit-regroup-task','folder','\x20menus\x20per\x20regroup\x20request.','--menu-ids\x20supports\x20at\x20most\x20','7nBoMng','write','FAILED','menu_regroup_label_conflict','Regroup\x20readback\x20failed:\x20','string','Root\x20folder\x20label\x20','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','<platform-generated>','size','2xpNbyo','warnings','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','POST','test','unconfirmed','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','1218452vkZQDK','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','/smartapi/menu/regroup','appCode','join','validation','Regroup\x20task\x20','replace','4248950VJQMmA','map','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','menu_regroup_already_applied','2629998GVSbnE','some','593220XtGdIX','menus','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','Menu\x20','sort','filter','start\x20menu\x20regroup','get','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','split','menu-ids','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','70VfkNzD','282018ougPci','label','input','stringify','childrenCount','6362928sNwkKD','toLowerCase','menu_regroup_target_label_missing','menuIds','hash','plan','status','plan\x20regroup','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','group','knownStatus','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','menu','6965656RNTEJu','SUCCESS','trim','Label\x20of\x20the\x20new\x20root\x20folder',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','length','cookie','readbackError','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','applied','parentId','message','isTerminal','regroup-start','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','\x20and\x20regroup\x20menu\x20ids\x20','\x20--format\x20compress','taskId','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','\x27\x5c\x27\x27'];a120_0x3c95=function(){return _0x4e75b1;};return a120_0x3c95();}function buildMenuLookupCommand(_0x963c00){const _0xbe3137=a120_0x326f8e,_0xceb294='\x27'+_0x963c00[_0xbe3137(0x7d)](/'/g,_0xbe3137(0xb9))+'\x27';return CLI_BIN_NAME+_0xbe3137(0xba)+_0xceb294+_0xbe3137(0xb5);}function unconfirmedRegroupWarning(_0x5cf846){const _0x3f1621=a120_0x326f8e;if(_0x5cf846[_0x3f1621(0x9d)]==='SUCCESS')return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x5cf846[_0x3f1621(0x9d)]===_0x3f1621(0x67))return _0x3f1621(0x86);if(_0x5cf846[_0x3f1621(0xa1)])return _0x3f1621(0x9f);return _0x3f1621(0x8c);}async function buildRegroupPlan(_0x3b75b6,_0x3d95b1){const _0x3e9d4a=a120_0x326f8e,_0x3a2e57=_0x3b75b6[_0x3e9d4a(0xc1)](_0x3e9d4a(0x93))['trim'](),_0x50949e=parseMenuIds(_0x3b75b6[_0x3e9d4a(0xc1)](_0x3e9d4a(0x8f))),_0x2264aa=await fetchMutationSnapshot(_0x3b75b6,_0x3e9d4a(0x9e)),_0x33f6ea=_0x50949e['map'](_0x59ce0a=>requireMenu(_0x2264aa,_0x59ce0a));for(const _0x519c3c of _0x33f6ea){if(_0x519c3c[_0x3e9d4a(0xbf)][_0x3e9d4a(0xa7)]()[_0x3e9d4a(0x98)]()==='folder'||_0x519c3c[_0x3e9d4a(0x96)]>0x0)throw menuError(_0x3e9d4a(0xc0),'Menu\x20'+_0x519c3c['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',_0x3e9d4a(0x6c));if(!_0x519c3c[_0x3e9d4a(0x93)]['trim']())throw menuError(_0x3e9d4a(0x99),_0x3e9d4a(0x87)+_0x519c3c['id']+_0x3e9d4a(0x80),_0x3e9d4a(0xa2));}const _0x44e898=findAppliedRegroup(_0x2264aa,_0x3a2e57,_0x50949e);if(_0x44e898)throw menuError(_0x3e9d4a(0x81),'Menus\x20'+_0x50949e[_0x3e9d4a(0x7a)](',\x20')+_0x3e9d4a(0x75)+_0x44e898[_0x3e9d4a(0xa0)]['id']+'\x20('+JSON[_0x3e9d4a(0x95)](_0x3a2e57)+').',_0x3e9d4a(0x71));const _0x2e87b2=_0x2264aa[_0x3e9d4a(0x85)]['filter'](_0xc95839=>_0xc95839['parentId']==null&&_0xc95839['type']['trim']()[_0x3e9d4a(0x98)]()===_0x3e9d4a(0xc3)&&_0xc95839[_0x3e9d4a(0x93)]===_0x3a2e57);if(_0x2e87b2[_0x3e9d4a(0xaa)]>0x0)throw menuError(_0x3e9d4a(0x68),_0x3e9d4a(0x6b)+JSON[_0x3e9d4a(0x95)](_0x3a2e57)+'\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'+_0x2e87b2[_0x3e9d4a(0x7f)](_0xe0066e=>_0xe0066e['id'])[_0x3e9d4a(0x7a)](',\x20')+'.',_0x3e9d4a(0x90));const _0x55500f={'appCode':_0x3b75b6[_0x3e9d4a(0x79)],'menuGroups':[{'label':_0x3a2e57,'type':'folder','children':_0x33f6ea[_0x3e9d4a(0x7f)](_0x102940=>({'id':_0x102940['id'],'label':_0x102940[_0x3e9d4a(0x93)]}))}]},_0x128785=mutationResult({'operation':_0x3e9d4a(0xb2),'selector':{'label':_0x3a2e57,'menuIds':_0x50949e},'before':{'menus':_0x33f6ea},'after':{'group':{'id':null,'parentId':null,'label':_0x3a2e57,'path':_0x3e9d4a(0x6d),'type':_0x3e9d4a(0xc3),'childrenIds':_0x50949e},'children':_0x33f6ea[_0x3e9d4a(0x7f)](_0xfe8a35=>({'id':_0xfe8a35['id'],'label':_0xfe8a35['label'],'beforeParentId':_0xfe8a35[_0x3e9d4a(0xaf)],'afterParentId':_0x3e9d4a(0xbc)}))},'dryRun':_0x3d95b1,'backend':[...BACKEND],'plannedActions':[{'stage':_0x3e9d4a(0xc2),'method':'POST','path':'/smartapi/menu/regroup','body':_0x55500f}],'snapshotHash':_0x2264aa['hash'],'warnings':[_0x3e9d4a(0xa3),_0x3e9d4a(0xb7)]});return{'label':_0x3a2e57,'menuIds':_0x50949e,'input':_0x55500f,'plan':_0x128785};}function findAppliedRegroup(_0x54237a,_0x22f938,_0x1d1213){const _0x3765ec=a120_0x326f8e,_0x50c0ba=_0x1d1213[_0x3765ec(0x7f)](_0x4b51c8=>_0x54237a[_0x3765ec(0xbb)][_0x3765ec(0x8b)](_0x4b51c8))[_0x3765ec(0x89)](_0x49cad8=>Boolean(_0x49cad8));if(_0x50c0ba['length']!==_0x1d1213['length'])return null;const _0x2310bb=_0x50c0ba[0x0]?.[_0x3765ec(0xaf)];if(_0x2310bb==null||_0x50c0ba[_0x3765ec(0x83)](_0x113321=>_0x113321[_0x3765ec(0xaf)]!==_0x2310bb))return null;const _0x4be397=_0x54237a[_0x3765ec(0xbb)][_0x3765ec(0x8b)](_0x2310bb);if(!_0x4be397||_0x4be397[_0x3765ec(0xaf)]!=null||_0x4be397[_0x3765ec(0xbf)][_0x3765ec(0xa7)]()[_0x3765ec(0x98)]()!==_0x3765ec(0xc3)||_0x4be397[_0x3765ec(0x93)]!==_0x22f938)return null;const _0x5b6d29=[..._0x1d1213][_0x3765ec(0x88)]((_0x5bf3be,_0x25b5d3)=>_0x5bf3be-_0x25b5d3),_0x5eb16a=[..._0x4be397['childrenIds']][_0x3765ec(0x88)]((_0x8a6526,_0x8f93cd)=>_0x8a6526-_0x8f93cd);if(JSON[_0x3765ec(0x95)](_0x5eb16a)!==JSON[_0x3765ec(0x95)](_0x5b6d29))return null;return{'group':_0x4be397,'children':_0x50c0ba};}function a120_0x48a6(_0x58aea5,_0x2a7ac2){_0x58aea5=_0x58aea5-0x67;const _0x3c9563=a120_0x3c95();let _0x48a69d=_0x3c9563[_0x58aea5];return _0x48a69d;}async function inspectRegroupAfterFailure(_0xad9be8,_0xab355b,_0x29ea87,_0x464d5b){const _0x2a792c=a120_0x326f8e;try{const _0x50e1ef=await fetchMenuSnapshot(_0xad9be8,_0xab355b);return{'applied':findAppliedRegroup(_0x50e1ef,_0x29ea87,_0x464d5b),'readbackError':null};}catch(_0x49ecd3){return{'applied':null,'readbackError':_0x49ecd3 instanceof Error?_0x49ecd3[_0x2a792c(0xb0)]:String(_0x49ecd3)};}}
|
|
1
|
+
const a120_0xe34305=a120_0x3665;(function(_0x2b3425,_0xb2ceb9){const _0x5bf201=a120_0x3665,_0x417eaa=_0x2b3425();while(!![]){try{const _0x5dc900=-parseInt(_0x5bf201(0x1d5))/0x1*(-parseInt(_0x5bf201(0x1ed))/0x2)+parseInt(_0x5bf201(0x1ca))/0x3+-parseInt(_0x5bf201(0x1a1))/0x4+parseInt(_0x5bf201(0x1ee))/0x5+parseInt(_0x5bf201(0x1be))/0x6+parseInt(_0x5bf201(0x1b3))/0x7+-parseInt(_0x5bf201(0x1a3))/0x8;if(_0x5dc900===_0xb2ceb9)break;else _0x417eaa['push'](_0x417eaa['shift']());}catch(_0xd41fd5){_0x417eaa['push'](_0x417eaa['shift']());}}}(a120_0x263f,0xba3c6));function a120_0x263f(){const _0x7f965a=['6132834cUyEbu','taskId','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','cookie','toLowerCase','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','flagMissing','menu-ids','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','menuIds','knownStatus','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','2566437gTkhxM','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','<platform-generated>','get','stringify','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','some','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','readbackError','\x20menu\x20list\x20--appcode\x20','1282205JMhycY','applied','start\x20regroup','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','label','Regroup\x20task\x20','sort','childrenIds','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','isSafeInteger','\x20--format\x20compress','group','byId','plan','appCode','message','Regroup\x20task\x20accepted.\x20','menu_regroup_target_not_leaf','replace','write','string','input','SUCCESS','split','2ugFdgl','4567085yoHaXJ','plan\x20regroup','status','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','menu_regroup_already_applied','join','/smartapi/menu/regroup','length','test','390728ERIOYS','failed','33401448huCuAM','parentId','folder','validation','map','unconfirmed','POST','warnings','type','start\x20menu\x20regroup','size','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','str','menu',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','regroup-start','6737115RvRagn','Menu\x20','hash','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','Regroup\x20readback\x20failed:\x20','\x20menus\x20per\x20regroup\x20request.','filter','\x20and\x20regroup\x20menu\x20ids\x20','trim','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','menu_regroup_target_label_missing'];a120_0x263f=function(){return _0x7f965a;};return a120_0x263f();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a120_0xe34305(0x1a9),'path':a120_0xe34305(0x19e)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a120_0xe34305(0x1b0),'command':a120_0xe34305(0x1b2),'description':a120_0xe34305(0x1d8),'risk':a120_0xe34305(0x1e8),'structuredErrors':!![],'flags':[{'name':a120_0xe34305(0x1d9),'type':a120_0xe34305(0x1e9),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a120_0xe34305(0x1c5),'type':a120_0xe34305(0x1e9),'required':!![],'description':a120_0xe34305(0x1cb)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x53da00){validateRegroupInput(_0x53da00);},async 'dryRun'(_0xa8c3){const _0x422d9d=a120_0xe34305;validateRegroupInput(_0xa8c3);const _0x3279d3=await buildRegroupPlan(_0xa8c3,!![]);return menuDryRunResult(_0x3279d3[_0x422d9d(0x1e2)],{'method':_0x422d9d(0x1a9),'url':_0x422d9d(0x19e),'body':_0x3279d3[_0x422d9d(0x1ea)],'description':_0x422d9d(0x1ae)+JSON[_0x422d9d(0x1cf)](_0x3279d3[_0x422d9d(0x1d9)])+_0x422d9d(0x1ba)+_0x3279d3[_0x422d9d(0x1c7)][_0x422d9d(0x19d)](',\x20')+_0x422d9d(0x1b1)});},async 'execute'(_0x32c5bb){const _0x556675=a120_0xe34305;validateRegroupInput(_0x32c5bb);const _0x450967=await buildRegroupPlan(_0x32c5bb,![]);await recheckMutationSnapshot(_0x32c5bb,_0x450967[_0x556675(0x1e2)],_0x556675(0x1d7));const _0x24bb32=buildMenuLookupCommand(_0x32c5bb[_0x556675(0x1e3)]);let _0x42e5d6,_0x3d452b;try{_0x42e5d6=await startMenuRegroup(_0x32c5bb[_0x556675(0x1c1)],_0x450967[_0x556675(0x1ea)]),_0x3d452b=normalizeAsyncTask(_0x42e5d6);}catch(_0x2a8cea){const _0x2ba301=await inspectRegroupAfterFailure(_0x32c5bb[_0x556675(0x1e3)],_0x32c5bb[_0x556675(0x1c1)],_0x450967[_0x556675(0x1d9)],_0x450967[_0x556675(0x1c7)]),_0x493205=typeof _0x42e5d6?.[_0x556675(0x1bf)]===_0x556675(0x1e9)&&_0x42e5d6[_0x556675(0x1bf)][_0x556675(0x1bb)]()?_0x42e5d6[_0x556675(0x1bf)][_0x556675(0x1bb)]():null,_0x513ea3=_0x493205?{'command':buildAsyncTaskStatusCommand(_0x493205,_0x32c5bb['appCode'])}:null,_0x45c647=mapMenuApiError(_0x2a8cea,_0x556675(0x1ac));throw menuFailure(_0x45c647,_0x450967[_0x556675(0x1e2)],{'stage':'regroup-submit','failed':{'menuIds':_0x450967[_0x556675(0x1c7)],'taskId':_0x493205,'groupingApplied':_0x2ba301[_0x556675(0x1d6)]?!![]:_0x556675(0x1a8)},'after':_0x2ba301[_0x556675(0x1d6)]??null,'warnings':[_0x556675(0x1c9),..._0x2ba301[_0x556675(0x1d3)]?['Regroup\x20readback\x20also\x20failed:\x20'+_0x2ba301[_0x556675(0x1d3)]]:[],..._0x493205?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':_0x556675(0x1a2),'groupingApplied':_0x2ba301[_0x556675(0x1d6)]?!![]:_0x556675(0x1a8),'taskId':_0x493205,'query':_0x513ea3,'lookupCommand':_0x24bb32}});}const _0x5558be=buildAsyncTaskStatusCommand(_0x3d452b[_0x556675(0x1bf)],_0x32c5bb[_0x556675(0x1e3)]);let _0x19aee7=null,_0x4322b3=null,_0x1c0d0a=null;try{_0x19aee7=await fetchMenuSnapshot(_0x32c5bb['appCode'],_0x32c5bb[_0x556675(0x1c1)]),_0x4322b3=findAppliedRegroup(_0x19aee7,_0x450967[_0x556675(0x1d9)],_0x450967['menuIds']);}catch(_0x274ebb){_0x1c0d0a=_0x274ebb instanceof Error?_0x274ebb[_0x556675(0x1e4)]:String(_0x274ebb);}const _0x1969ac=mutationResult({..._0x450967[_0x556675(0x1e2)],'after':_0x4322b3??null,'dryRun':![],'succeeded':[{'groupId':_0x4322b3?.[_0x556675(0x1e0)]['id']??null,'menuIds':_0x450967[_0x556675(0x1c7)],'taskId':_0x3d452b['taskId'],'status':_0x3d452b['status'],'groupingApplied':_0x4322b3?!![]:_0x556675(0x1a8)}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x19aee7?.['hash']??null,'groupId':_0x4322b3?.['group']['id']??null,'groupingApplied':_0x4322b3?!![]:_0x556675(0x1a8),'readbackError':_0x1c0d0a,'lookupCommand':_0x24bb32},'warnings':[..._0x450967[_0x556675(0x1e2)][_0x556675(0x1aa)],...!_0x4322b3?[unconfirmedRegroupWarning(_0x3d452b)]:[],..._0x1c0d0a?[_0x556675(0x1b7)+_0x1c0d0a]:[]]}),_0x530023=_0x3d452b[_0x556675(0x19a)]==='SUCCESS'&&!_0x4322b3?_0x556675(0x1da)+_0x3d452b[_0x556675(0x1bf)]+_0x556675(0x1dd):_0x556675(0x1e5)+asyncTaskMessage(_0x3d452b);return{'ok':!![],'message':_0x530023,'data':{..._0x1969ac,'task':_0x3d452b,'query':_0x3d452b['isTerminal']?null:{'command':_0x5558be}}};}};function validateRegroupInput(_0x2cdbbf){const _0x166536=a120_0xe34305;if(!_0x2cdbbf[_0x166536(0x1af)](_0x166536(0x1d9))[_0x166536(0x1bb)]())throw CliErrors[_0x166536(0x1c4)](_0x166536(0x1d9));parseMenuIds(_0x2cdbbf['str'](_0x166536(0x1c5)));}function parseMenuIds(_0x25bf2d){const _0x5282c8=a120_0xe34305,_0x2b2abc=_0x25bf2d[_0x5282c8(0x1ec)](',')[_0x5282c8(0x1a7)](_0x5d14d4=>_0x5d14d4['trim']());if(_0x2b2abc['length']===0x0||_0x2b2abc[_0x5282c8(0x1d1)](_0x197072=>!_0x197072))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x1515c7=_0x2b2abc[_0x5282c8(0x1a7)](_0x407e63=>{const _0x34c036=_0x5282c8;if(!/^\d+$/[_0x34c036(0x1a0)](_0x407e63))throw CliErrors[_0x34c036(0x1a6)](_0x34c036(0x19b));const _0x45a429=Number(_0x407e63);if(!Number[_0x34c036(0x1de)](_0x45a429)||_0x45a429<=0x0)throw CliErrors[_0x34c036(0x1a6)](_0x34c036(0x19b));return _0x45a429;});if(new Set(_0x1515c7)[_0x5282c8(0x1ad)]!==_0x1515c7[_0x5282c8(0x19f)])throw CliErrors[_0x5282c8(0x1a6)]('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x1515c7['length']>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x5282c8(0x1a6)]('--menu-ids\x20supports\x20at\x20most\x20'+MAX_REGROUP_MENU_COUNT+_0x5282c8(0x1b8));return _0x1515c7;}function a120_0x3665(_0x370780,_0x3da60e){_0x370780=_0x370780-0x19a;const _0x263f65=a120_0x263f();let _0x3665c6=_0x263f65[_0x370780];return _0x3665c6;}function buildMenuLookupCommand(_0x126ab0){const _0x521ad1=a120_0xe34305,_0x1b148b='\x27'+_0x126ab0[_0x521ad1(0x1e7)](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+_0x521ad1(0x1d4)+_0x1b148b+_0x521ad1(0x1df);}function unconfirmedRegroupWarning(_0x112d3f){const _0x43ccc5=a120_0xe34305;if(_0x112d3f['status']===_0x43ccc5(0x1eb))return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x112d3f[_0x43ccc5(0x19a)]==='FAILED')return'The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x112d3f[_0x43ccc5(0x1c8)])return _0x43ccc5(0x1c3);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(_0x57228e,_0x555bbd){const _0x1a02f7=a120_0xe34305,_0x1fcf9a=_0x57228e[_0x1a02f7(0x1af)](_0x1a02f7(0x1d9))[_0x1a02f7(0x1bb)](),_0x24955f=parseMenuIds(_0x57228e[_0x1a02f7(0x1af)]('menu-ids')),_0x1348b1=await fetchMutationSnapshot(_0x57228e,_0x1a02f7(0x1ef)),_0x215702=_0x24955f['map'](_0x2be73f=>requireMenu(_0x1348b1,_0x2be73f));for(const _0x20f977 of _0x215702){if(_0x20f977['type'][_0x1a02f7(0x1bb)]()[_0x1a02f7(0x1c2)]()===_0x1a02f7(0x1a5)||_0x20f977['childrenCount']>0x0)throw menuError(_0x1a02f7(0x1e6),_0x1a02f7(0x1b4)+_0x20f977['id']+_0x1a02f7(0x1b6),'Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.');if(!_0x20f977[_0x1a02f7(0x1d9)]['trim']())throw menuError(_0x1a02f7(0x1bd),_0x1a02f7(0x1b4)+_0x20f977['id']+'\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.',_0x1a02f7(0x1d0));}const _0x2df38c=findAppliedRegroup(_0x1348b1,_0x1fcf9a,_0x24955f);if(_0x2df38c)throw menuError(_0x1a02f7(0x19c),'Menus\x20'+_0x24955f[_0x1a02f7(0x19d)](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0x2df38c[_0x1a02f7(0x1e0)]['id']+'\x20('+JSON[_0x1a02f7(0x1cf)](_0x1fcf9a)+').',_0x1a02f7(0x1cc));const _0x1011ea=_0x1348b1['menus'][_0x1a02f7(0x1b9)](_0xc3e688=>_0xc3e688[_0x1a02f7(0x1a4)]==null&&_0xc3e688[_0x1a02f7(0x1ab)]['trim']()[_0x1a02f7(0x1c2)]()==='folder'&&_0xc3e688[_0x1a02f7(0x1d9)]===_0x1fcf9a);if(_0x1011ea[_0x1a02f7(0x19f)]>0x0)throw menuError('menu_regroup_label_conflict','Root\x20folder\x20label\x20'+JSON[_0x1a02f7(0x1cf)](_0x1fcf9a)+_0x1a02f7(0x1bc)+_0x1011ea['map'](_0x1b8fae=>_0x1b8fae['id'])[_0x1a02f7(0x19d)](',\x20')+'.',_0x1a02f7(0x1c0));const _0xb6c1af={'appCode':_0x57228e[_0x1a02f7(0x1e3)],'menuGroups':[{'label':_0x1fcf9a,'type':'folder','children':_0x215702[_0x1a02f7(0x1a7)](_0x164fbe=>({'id':_0x164fbe['id'],'label':_0x164fbe[_0x1a02f7(0x1d9)]}))}]},_0x1f3c7d=mutationResult({'operation':_0x1a02f7(0x1b2),'selector':{'label':_0x1fcf9a,'menuIds':_0x24955f},'before':{'menus':_0x215702},'after':{'group':{'id':null,'parentId':null,'label':_0x1fcf9a,'path':_0x1a02f7(0x1cd),'type':_0x1a02f7(0x1a5),'childrenIds':_0x24955f},'children':_0x215702[_0x1a02f7(0x1a7)](_0x5dd3c3=>({'id':_0x5dd3c3['id'],'label':_0x5dd3c3['label'],'beforeParentId':_0x5dd3c3[_0x1a02f7(0x1a4)],'afterParentId':'<new-group-id>'}))},'dryRun':_0x555bbd,'backend':[...BACKEND],'plannedActions':[{'stage':'submit-regroup-task','method':_0x1a02f7(0x1a9),'path':'/smartapi/menu/regroup','body':_0xb6c1af}],'snapshotHash':_0x1348b1[_0x1a02f7(0x1b5)],'warnings':[_0x1a02f7(0x1c6),_0x1a02f7(0x1d2)]});return{'label':_0x1fcf9a,'menuIds':_0x24955f,'input':_0xb6c1af,'plan':_0x1f3c7d};}function findAppliedRegroup(_0x21ae7a,_0x4ad45f,_0x398834){const _0x451156=a120_0xe34305,_0x21f537=_0x398834['map'](_0x62ceb7=>_0x21ae7a[_0x451156(0x1e1)][_0x451156(0x1ce)](_0x62ceb7))['filter'](_0xaaf861=>Boolean(_0xaaf861));if(_0x21f537[_0x451156(0x19f)]!==_0x398834[_0x451156(0x19f)])return null;const _0x19cddd=_0x21f537[0x0]?.[_0x451156(0x1a4)];if(_0x19cddd==null||_0x21f537[_0x451156(0x1d1)](_0x2e699f=>_0x2e699f[_0x451156(0x1a4)]!==_0x19cddd))return null;const _0x270fc2=_0x21ae7a['byId'][_0x451156(0x1ce)](_0x19cddd);if(!_0x270fc2||_0x270fc2[_0x451156(0x1a4)]!=null||_0x270fc2[_0x451156(0x1ab)][_0x451156(0x1bb)]()[_0x451156(0x1c2)]()!==_0x451156(0x1a5)||_0x270fc2[_0x451156(0x1d9)]!==_0x4ad45f)return null;const _0x40607b=[..._0x398834][_0x451156(0x1db)]((_0x26cc21,_0x4217ec)=>_0x26cc21-_0x4217ec),_0x11b5b3=[..._0x270fc2[_0x451156(0x1dc)]]['sort']((_0x3f1e38,_0x3c002c)=>_0x3f1e38-_0x3c002c);if(JSON[_0x451156(0x1cf)](_0x11b5b3)!==JSON[_0x451156(0x1cf)](_0x40607b))return null;return{'group':_0x270fc2,'children':_0x21f537};}async function inspectRegroupAfterFailure(_0xfaa8a5,_0x5d0370,_0x39465f,_0x449e8a){const _0x3b9223=a120_0xe34305;try{const _0x5498b5=await fetchMenuSnapshot(_0xfaa8a5,_0x5d0370);return{'applied':findAppliedRegroup(_0x5498b5,_0x39465f,_0x449e8a),'readbackError':null};}catch(_0x6aa5ee){return{'applied':null,'readbackError':_0x6aa5ee instanceof Error?_0x6aa5ee[_0x3b9223(0x1e4)]:String(_0x6aa5ee)};}}
|