@lovrabet/rabetbase-cli 2.4.6-beta.3 → 2.4.7-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.d.ts +2 -0
- package/lib/commands/kb/search.js +1 -0
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +16 -0
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +4 -4
- package/skills/rabetbase/references/rabetbase-kb.md +13 -3
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const a112_0x200298=a112_0x1ddc;(function(_0x4c8798,_0x346fc5){const _0x8a4422=a112_0x1ddc,_0x14292a=_0x4c8798();while(!![]){try{const _0x274289=parseInt(_0x8a4422(0x154))/0x1*(-parseInt(_0x8a4422(0x177))/0x2)+parseInt(_0x8a4422(0x18f))/0x3*(-parseInt(_0x8a4422(0x19d))/0x4)+-parseInt(_0x8a4422(0x158))/0x5+-parseInt(_0x8a4422(0x169))/0x6*(-parseInt(_0x8a4422(0x16c))/0x7)+-parseInt(_0x8a4422(0x1c2))/0x8*(-parseInt(_0x8a4422(0x14a))/0x9)+-parseInt(_0x8a4422(0x1d4))/0xa+-parseInt(_0x8a4422(0x1ce))/0xb*(-parseInt(_0x8a4422(0x170))/0xc);if(_0x274289===_0x346fc5)break;else _0x14292a['push'](_0x14292a['shift']());}catch(_0xbb2f7e){_0x14292a['push'](_0x14292a['shift']());}}}(a112_0xfff1,0x951d8));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':'link'};export function validateExternalMenuUrl(_0x40cb2b){const _0x47713b=a112_0x1ddc,_0x1298c7=_0x40cb2b[_0x47713b(0x1bc)]();let _0x1b59d2;try{_0x1b59d2=new URL(_0x1298c7);}catch{throw menuError('menu_url_invalid','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x1b59d2[_0x47713b(0x157)]!==_0x47713b(0x14c))throw menuError('menu_url_https_required',_0x47713b(0x19a),'Provide\x20an\x20HTTPS\x20URL.');if(_0x1b59d2['username']||_0x1b59d2[_0x47713b(0x174)])throw menuError(_0x47713b(0x179),_0x47713b(0x155),_0x47713b(0x152));return _0x1298c7;}export const menuExternalLinkCreate={'service':'menu','command':a112_0x200298(0x16b),'description':a112_0x200298(0x178),'risk':'write','structuredErrors':!![],'flags':[{'name':'label','type':a112_0x200298(0x151),'required':!![],'description':a112_0x200298(0x193)},{'name':'open-mode','type':a112_0x200298(0x151),'required':!![],'enum':[a112_0x200298(0x1c0),a112_0x200298(0x18a)],'description':a112_0x200298(0x1b5)},{'name':'url','type':a112_0x200298(0x151),'required':!![],'description':a112_0x200298(0x191)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a112_0x200298(0x17b),'type':a112_0x200298(0x153),'default':!![],'description':a112_0x200298(0x14f)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x59b41a){validateAddInput(_0x59b41a);},async 'dryRun'(_0x21d6ac){const _0x13bd9c=a112_0x200298;validateAddInput(_0x21d6ac);const {plan:_0x48f2a1}=await buildSafeAddPlan(_0x21d6ac,!![]),_0x76f2e2=_0x48f2a1[_0x13bd9c(0x183)],_0x45afa6=createBody(_0x76f2e2);return menuDryRunResult(_0x48f2a1,{'method':'POST','url':_0x13bd9c(0x16a),'body':_0x45afa6,'description':_0x13bd9c(0x19e)+JSON['stringify'](_0x76f2e2['label'])+_0x13bd9c(0x19c)+_0x21d6ac[_0x13bd9c(0x17e)]('open-mode')+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x53d785){const _0x1f3be4=a112_0x200298;validateAddInput(_0x53d785);const _0x11f673=await buildSafeAddPlan(_0x53d785,![]),{plan:_0x495fe5,snapshot:_0x4698cf}=_0x11f673,_0x19388b=_0x495fe5[_0x1f3be4(0x183)],_0x2f76c0=buildMenuLookupCommand(_0x53d785['appCode']);await recheckAddSnapshot(_0x53d785,_0x495fe5);let _0x10f463;try{_0x10f463=await createMenuEntity(_0x53d785['appCode'],_0x53d785[_0x1f3be4(0x163)],createBody(_0x19388b));}catch(_0x28f00c){const _0x139b03=mapMenuApiError(_0x28f00c,_0x1f3be4(0x1aa));if(!isMenuResponseLoss(_0x28f00c)||_0x139b03[_0x1f3be4(0x1b4)]===_0x1f3be4(0x189))throw externalLinkCreateFailure(_0x139b03,_0x495fe5,{'stage':_0x1f3be4(0x1af),'failed':{},'verification':{'status':'failed','lookupCommand':_0x2f76c0}});return recoverAfterResponseLoss(_0x53d785,_0x11f673,_0x2f76c0);}const _0x119582=Number(_0x10f463?.['id']),_0x1906fa=typeof _0x10f463?.['path']===_0x1f3be4(0x151)?_0x10f463['path']:'';if(!Number[_0x1f3be4(0x1bb)](_0x119582)||_0x119582<=0x0||!_0x1906fa[_0x1f3be4(0x1bc)]()){const _0x414be0=menuError(_0x1f3be4(0x1a7),_0x1f3be4(0x1cd),_0x1f3be4(0x16e)+_0x2f76c0+_0x1f3be4(0x15f));throw externalLinkCreateFailure(_0x414be0,_0x495fe5,{'stage':'create-response-validation','succeeded':Number[_0x1f3be4(0x1bb)](_0x119582)&&_0x119582>0x0?[{'id':_0x119582,'created':!![]}]:[],'failed':{'createdId':Number[_0x1f3be4(0x1bb)](_0x119582)?_0x119582:null,'generatedPathConfirmed':Boolean(_0x1906fa[_0x1f3be4(0x1bc)]())},'warnings':[_0x1f3be4(0x15e)],'after':Number[_0x1f3be4(0x1bb)](_0x119582)&&_0x119582>0x0?{..._0x19388b,'id':_0x119582,'path':_0x1906fa}:_0x19388b,'verification':{'status':_0x1f3be4(0x1ca),'lookupCommand':_0x2f76c0,...Number[_0x1f3be4(0x1bb)](_0x119582)&&_0x119582>0x0?{'targetId':_0x119582}:{}}});}const _0x2ef580=await readAndVerifyCreatedMenu({'appCode':_0x53d785[_0x1f3be4(0x199)],'cookie':_0x53d785[_0x1f3be4(0x163)],'plan':_0x495fe5,'afterPlan':_0x19388b,'createdId':_0x119582,'expectedPath':_0x1906fa,'lookupCommand':_0x2f76c0,'recovered':![]});return creationSuccess(_0x495fe5,_0x2ef580['snapshot'],_0x2ef580[_0x1f3be4(0x1d1)],![]);}};function validateAddInput(_0x32cd1d){const _0xf3d8af=a112_0x200298;if(!_0x32cd1d[_0xf3d8af(0x17e)](_0xf3d8af(0x18d))[_0xf3d8af(0x1bc)]())throw CliErrors['flagMissing']('label');resolveExternalMenuType(_0x32cd1d),validateExternalMenuUrl(_0x32cd1d[_0xf3d8af(0x17e)](_0xf3d8af(0x198))),parseParentId(_0x32cd1d,_0xf3d8af(0x15b)),validateSort(_0x32cd1d);}function resolveExternalMenuType(_0x1a60b4){const _0xdfc218=a112_0x200298,_0x19c228=_0x1a60b4[_0xdfc218(0x17e)]('open-mode')['trim']();if(!_0x19c228)throw CliErrors[_0xdfc218(0x194)](_0xdfc218(0x1a8));const _0x2c4721=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x19c228];if(!_0x2c4721)throw menuError(_0xdfc218(0x1c8),_0xdfc218(0x1bd),_0xdfc218(0x187));return _0x2c4721;}async function buildAddPlan(_0x3840bf,_0x22a5b3){const _0x14c3e8=a112_0x200298,_0x13e450=await fetchMutationSnapshot(_0x3840bf,_0x14c3e8(0x1aa)),_0x331237=parseParentId(_0x3840bf,_0x14c3e8(0x15b))??null;if(_0x331237!=null)requireFolder(_0x13e450,_0x331237);const _0x3009a1=validateSort(_0x3840bf),_0x39db84=_0x3009a1??nextSiblingSort(_0x13e450,_0x331237,_0x14c3e8(0x17d)),_0x110c50=_0x3840bf[_0x14c3e8(0x17e)](_0x14c3e8(0x18d))[_0x14c3e8(0x1bc)](),_0x427ca1=resolveExternalMenuType(_0x3840bf),_0x15a3d3=validateExternalMenuUrl(_0x3840bf[_0x14c3e8(0x17e)](_0x14c3e8(0x198))),_0x2a6827=Object[_0x14c3e8(0x14b)]['hasOwnProperty'][_0x14c3e8(0x1b1)](_0x3840bf[_0x14c3e8(0x182)],_0x14c3e8(0x17b))?_0x3840bf[_0x14c3e8(0x15c)]('visible'):!![],_0x450aaf={'id':null,'parentId':_0x331237,'label':_0x110c50,'path':_0x14c3e8(0x175),'url':_0x15a3d3,'type':_0x427ca1,'visible':_0x2a6827,'sort':_0x39db84},_0x1f74f2=buildMenuLookupCommand(_0x3840bf[_0x14c3e8(0x199)]),_0x1cf253=mutationResult({'operation':_0x14c3e8(0x1cc),'selector':{'parentId':_0x331237,'type':_0x427ca1,'label':_0x110c50,'url':_0x15a3d3},'before':null,'after':_0x450aaf,'dryRun':_0x22a5b3,'backend':[{'method':_0x14c3e8(0x184),'path':_0x14c3e8(0x16a)}],'plannedActions':[{'stage':_0x14c3e8(0x186),'method':_0x14c3e8(0x184),'path':_0x14c3e8(0x16a),'body':createBody(_0x450aaf)}],'snapshotHash':_0x13e450[_0x14c3e8(0x1c7)],'warnings':[_0x14c3e8(0x160)],'verification':{'lookupCommand':_0x1f74f2}});return{'plan':_0x1cf253,'snapshot':_0x13e450};}async function buildSafeAddPlan(_0x57b91b,_0x630308){try{return await buildAddPlan(_0x57b91b,_0x630308);}catch(_0x1e7bc2){throw safeMenuAddError(_0x1e7bc2);}}async function recheckAddSnapshot(_0x2457cd,_0x47838b){const _0x12a86e=a112_0x200298;try{await recheckMutationSnapshot(_0x2457cd,_0x47838b,_0x12a86e(0x1aa));}catch(_0x44f684){const _0xde3a00=getFailureRecord(_0x44f684);throw externalLinkCreateFailure(_0x44f684,_0x47838b,{'stage':_0x12a86e(0x1d0),'failed':{..._0xde3a00?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0xde3a00[_0x12a86e(0x165)]}:{},..._0xde3a00?.['currentSnapshotHash']?{'currentSnapshotHash':_0xde3a00[_0x12a86e(0x1a2)]}:{}}});}}function createBody(_0x11e82b){const _0x291158=a112_0x200298;return{'parentId':toApiParentId(_0x11e82b[_0x291158(0x1b8)]),'label':String(_0x11e82b[_0x291158(0x18d)]),'type':String(_0x11e82b[_0x291158(0x188)]),'url':String(_0x11e82b['url']),'visible':Boolean(_0x11e82b['visible']),'sort':Number(_0x11e82b['sort']),'extend':{}};}function a112_0xfff1(){const _0x585f53=['2919470uETJTh','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','1773hKcSqB','prototype','https:','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','Whether\x20the\x20menu\x20is\x20visible','parent','string','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','boolean','5766ULQkIo','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','recovered','protocol','5964070oYYQUN','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','causemessage','parent-id','bool','succeeded','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','menu\x20list','Created\x20menu\x20','cookie','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','expectedSnapshotHash','length','selector','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','6rUkuRe','/smartapi/menu/create','external-link-create','7558229bBMSlY','Created\x20external\x20menu\x20','Run\x20','\x20failed\x20final\x20verification.','8764164cRJkig','expectedPath','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','lookupCommand','password','<platform-generated>','menu_create_recovery_required','174tOvgzV','Create\x20an\x20external\x20website\x20link\x20menu','menu_url_credentials_forbidden','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','visible','menu_parent_not_folder','menu','str','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','menu_mutation_failed','rawFlags','after','POST','plan','create-menu','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','type','menu_permission_denied','new-window','\x20has\x20an\x20unexpected\x20','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','label','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','3ydluwV','afterPlan','External\x20HTTPS\x20URL','sort','Menu\x20label','flagMissing','menu_verification_failed','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','URL','url','appCode','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','cause','\x20with\x20','3038792yWnJTZ','Would\x20create\x20external\x20website\x20link\x20menu\x20','\x20after\x20response\x20loss.','\x20could\x20not\x20be\x20verified.','object','currentSnapshotHash','before','replace','\x27\x5c\x27\x27','verification','menu_create_response_invalid','open-mode','map','create\x20external\x20menu','\x20--format\x20compress','includes','Menu\x20','byId','create','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','call','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','code','How\x20to\x20open\x20the\x20external\x20website','create-recovery','Recovered\x20menu\x20','parentId','menus','menu_sort_invalid','isSafeInteger','trim','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','menu_not_found','data','embedded','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','3496negnir','visibility','filter','Recovered\x20created\x20external\x20menu\x20','createdId','hash','menu_open_mode_invalid','get','failed','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','add','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','33gelljH','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','pre-write-recheck','fact','<redacted>','path'];a112_0xfff1=function(){return _0x585f53;};return a112_0xfff1();}function buildMenuLookupCommand(_0x394618){const _0x137944=a112_0x200298,_0x36985c='\x27'+_0x394618[_0x137944(0x1a4)](/'/g,_0x137944(0x1a5))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x36985c+_0x137944(0x1ab);}async function recoverAfterResponseLoss(_0x3978cb,_0x38bb0a,_0x3fd560){const _0x4edd1b=a112_0x200298,{plan:_0x2fce7a,snapshot:_0x1a8aa8}=_0x38bb0a,_0x373c32=_0x2fce7a['after'];let _0x2d6cc8;try{_0x2d6cc8=await fetchMenuSnapshot(_0x3978cb[_0x4edd1b(0x199)],_0x3978cb[_0x4edd1b(0x163)]);}catch(_0x2df1d8){throw recoveryRequiredFailure(_0x2fce7a,_0x3fd560,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x5479d8=_0x2d6cc8[_0x4edd1b(0x1b9)][_0x4edd1b(0x1c4)](_0x2baa33=>_0x2baa33[_0x4edd1b(0x1b8)]===_0x373c32[_0x4edd1b(0x1b8)]&&_0x2baa33[_0x4edd1b(0x188)]===_0x373c32[_0x4edd1b(0x188)]&&_0x2baa33['label']===_0x373c32[_0x4edd1b(0x18d)]&&_0x2baa33['url']===_0x373c32[_0x4edd1b(0x198)]),_0x119c23=_0x5479d8['filter'](_0x52445c=>!_0x1a8aa8['byId']['has'](_0x52445c['id'])),_0x38d9a0=_0x5479d8['filter'](_0x559492=>_0x1a8aa8['byId']['has'](_0x559492['id']));if(_0x5479d8['length']!==0x1||_0x119c23[_0x4edd1b(0x166)]!==0x1)throw recoveryRequiredFailure(_0x2fce7a,_0x3fd560,{'matchCount':_0x5479d8[_0x4edd1b(0x166)],'newMatchCount':_0x119c23[_0x4edd1b(0x166)],'preexistingMatchCount':_0x38d9a0[_0x4edd1b(0x166)]});const _0x29224e=_0x119c23[0x0];try{verifyCreatedFact(_0x29224e,_0x29224e['id'],_0x373c32,null);}catch(_0xcd213a){const _0x16dbf1=_0xcd213a instanceof Error&&_0x4edd1b(0x1b4)in _0xcd213a?_0xcd213a:menuError(_0x4edd1b(0x195),_0x4edd1b(0x1b7)+_0x29224e['id']+_0x4edd1b(0x1a0),'Run\x20'+_0x3fd560+_0x4edd1b(0x159));throw externalLinkCreateFailure(_0x16dbf1,_0x2fce7a,{'stage':'verification','succeeded':[{'id':_0x29224e['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x29224e['id'],'finalFactsConfirmed':![]},'after':_0x29224e,'warnings':[_0x4edd1b(0x1ad)+_0x29224e['id']+_0x4edd1b(0x164)],'verification':{'status':_0x4edd1b(0x1ca),'targetId':_0x29224e['id'],'recovered':!![],'lookupCommand':_0x3fd560}});}return creationSuccess(_0x2fce7a,_0x2d6cc8,_0x29224e,!![]);}function recoveryRequiredFailure(_0x141908,_0x1124a3,_0x1e6e45){const _0x219ac8=a112_0x200298,_0x1e22d8=menuError(_0x219ac8(0x176),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.',_0x219ac8(0x16e)+_0x1124a3+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x1e22d8,_0x141908,{'stage':_0x219ac8(0x1b6),'failed':_0x1e6e45,'warnings':[_0x219ac8(0x1b2)],'verification':{'status':'failed',..._0x1e6e45,'lookupCommand':_0x1124a3}});}async function readAndVerifyCreatedMenu(_0x414b43){const _0x52ffde=a112_0x200298;let _0x14f261;try{_0x14f261=await fetchMenuSnapshot(_0x414b43[_0x52ffde(0x199)],_0x414b43[_0x52ffde(0x163)]);}catch(_0x54b113){const _0x482d57=menuError('menu_verification_failed',_0x52ffde(0x1ad)+_0x414b43[_0x52ffde(0x1c6)]+_0x52ffde(0x149),_0x52ffde(0x16e)+_0x414b43[_0x52ffde(0x173)]+_0x52ffde(0x14e));throw externalLinkCreateFailure(_0x482d57,_0x414b43[_0x52ffde(0x185)],{'stage':_0x52ffde(0x1a6),'succeeded':[{'id':_0x414b43[_0x52ffde(0x1c6)],'created':!![]}],'failed':{'id':_0x414b43[_0x52ffde(0x1c6)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x414b43[_0x52ffde(0x190)],'id':_0x414b43[_0x52ffde(0x1c6)],'path':_0x414b43[_0x52ffde(0x171)]},'warnings':[_0x52ffde(0x1ad)+_0x414b43['createdId']+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x52ffde(0x1ca),'targetId':_0x414b43[_0x52ffde(0x1c6)],'lookupCommand':_0x414b43[_0x52ffde(0x173)]}});}const _0x22d884=_0x14f261[_0x52ffde(0x1ae)][_0x52ffde(0x1c9)](_0x414b43[_0x52ffde(0x1c6)]);try{if(!_0x22d884)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x414b43[_0x52ffde(0x1c6)]+_0x52ffde(0x14d),_0x52ffde(0x16e)+_0x414b43['lookupCommand']+_0x52ffde(0x14e));verifyCreatedFact(_0x22d884,_0x414b43['createdId'],_0x414b43['afterPlan'],_0x414b43[_0x52ffde(0x171)]);}catch(_0x28e3e5){const _0x55e27d=_0x28e3e5 instanceof Error&&_0x52ffde(0x1b4)in _0x28e3e5?_0x28e3e5:menuError(_0x52ffde(0x195),'Created\x20menu\x20'+_0x414b43[_0x52ffde(0x1c6)]+_0x52ffde(0x16f),_0x52ffde(0x16e)+_0x414b43[_0x52ffde(0x173)]+_0x52ffde(0x14e));throw externalLinkCreateFailure(_0x55e27d,_0x414b43[_0x52ffde(0x185)],{'stage':_0x52ffde(0x1a6),'succeeded':[{'id':_0x414b43['createdId'],'created':!![]}],'failed':{'id':_0x414b43[_0x52ffde(0x1c6)],'finalFactsConfirmed':![]},'after':_0x22d884??{..._0x414b43[_0x52ffde(0x190)],'id':_0x414b43[_0x52ffde(0x1c6)],'path':_0x414b43['expectedPath']},'warnings':[_0x52ffde(0x1ad)+_0x414b43['createdId']+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':'failed','targetId':_0x414b43[_0x52ffde(0x1c6)],'recovered':_0x414b43[_0x52ffde(0x156)],'lookupCommand':_0x414b43[_0x52ffde(0x173)]}});}return{'snapshot':_0x14f261,'fact':_0x22d884};}function verifyCreatedFact(_0x18da91,_0x1699da,_0x4b3d5f,_0x3adcad){const _0x45b120=a112_0x200298;if(!Number[_0x45b120(0x1bb)](_0x18da91['id'])||_0x18da91['id']<=0x0||_0x18da91['id']!==_0x1699da)throw menuError('menu_verification_failed',_0x45b120(0x168),_0x45b120(0x1b3));const _0x5a256c=[[_0x45b120(0x150),_0x18da91[_0x45b120(0x1b8)],_0x4b3d5f[_0x45b120(0x1b8)]],[_0x45b120(0x188),_0x18da91[_0x45b120(0x188)],_0x4b3d5f[_0x45b120(0x188)]],['label',_0x18da91['label'],_0x4b3d5f[_0x45b120(0x18d)]],[_0x45b120(0x197),_0x18da91['url'],_0x4b3d5f[_0x45b120(0x198)]],[_0x45b120(0x1c3),_0x18da91[_0x45b120(0x17b)],_0x4b3d5f['visible']],[_0x45b120(0x192),_0x18da91[_0x45b120(0x192)],_0x4b3d5f['sort']]];for(const [_0x355c5c,_0x27722c,_0x3df3a8]of _0x5a256c){if(_0x27722c!==_0x3df3a8)throw menuError(_0x45b120(0x195),_0x45b120(0x162)+_0x18da91['id']+_0x45b120(0x18b)+_0x355c5c+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x18da91['path'][_0x45b120(0x1bc)]()||_0x3adcad!==null&&_0x18da91[_0x45b120(0x1d3)]!==_0x3adcad)throw menuError(_0x45b120(0x195),_0x45b120(0x162)+_0x18da91['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x45b120(0x196));}function creationSuccess(_0x23f902,_0x19e1a3,_0x521ce4,_0x5d0634){const _0x6871=a112_0x200298,_0x3b73ff=mutationResult({..._0x23f902,'after':_0x521ce4,'dryRun':![],'succeeded':[{'id':_0x521ce4['id'],'created':!![],'recovered':_0x5d0634}],'verification':{'checkedBy':_0x6871(0x161),'snapshotHash':_0x19e1a3[_0x6871(0x1c7)],'targetId':_0x521ce4['id'],'recovered':_0x5d0634,'path':_0x521ce4[_0x6871(0x1d3)]}});return{'ok':!![],'message':_0x5d0634?_0x6871(0x1c5)+_0x521ce4['id']+_0x6871(0x19f):_0x6871(0x16d)+_0x521ce4['id']+'.','data':{..._0x3b73ff,'recovered':_0x5d0634}};}function externalLinkCreateFailure(_0x58e342,_0x139efa,_0x28bd3a){const _0x3c94ed=a112_0x200298;return menuFailure(safeMenuAddError(_0x58e342),redactFailurePlan(_0x139efa),{..._0x28bd3a,'succeeded':_0x28bd3a[_0x3c94ed(0x15d)]?.[_0x3c94ed(0x1a9)](redactFailureRecord),'failed':_0x28bd3a[_0x3c94ed(0x1ca)]?redactFailureRecord(_0x28bd3a[_0x3c94ed(0x1ca)]):undefined,'verification':_0x28bd3a[_0x3c94ed(0x1a6)]?redactFailureRecord(_0x28bd3a['verification']):undefined,'after':_0x28bd3a[_0x3c94ed(0x183)]===undefined?undefined:redactFailureValue(_0x28bd3a[_0x3c94ed(0x183)])});}function redactFailurePlan(_0x2219c7){const _0x10d124=a112_0x200298;return{..._0x2219c7,'selector':redactFailureRecord(_0x2219c7[_0x10d124(0x167)]),'before':redactFailureValue(_0x2219c7[_0x10d124(0x1a3)]),'after':redactFailureValue(_0x2219c7[_0x10d124(0x183)]),'plannedActions':_0x2219c7['plannedActions']?.[_0x10d124(0x1a9)](_0x4b17f4=>({..._0x4b17f4,'body':redactFailureRecord(_0x4b17f4['body'])})),'succeeded':_0x2219c7[_0x10d124(0x15d)][_0x10d124(0x1a9)](redactFailureRecord),'failed':_0x2219c7[_0x10d124(0x1ca)][_0x10d124(0x1a9)](redactFailureRecord),'verification':_0x2219c7[_0x10d124(0x1a6)]?redactFailureRecord(_0x2219c7[_0x10d124(0x1a6)]):undefined};}function redactFailureRecord(_0x13d3fc){return redactFailureValue(_0x13d3fc);}function a112_0x1ddc(_0x447a18,_0x3dad81){_0x447a18=_0x447a18-0x149;const _0xfff171=a112_0xfff1();let _0x1ddcd3=_0xfff171[_0x447a18];return _0x1ddcd3;}function redactFailureValue(_0x3cd225,_0x29a1ca=''){const _0x252454=a112_0x200298,_0x443954=_0x29a1ca['toLowerCase']()[_0x252454(0x1a4)](/[^a-z0-9]/g,'');if([_0x252454(0x19b),_0x252454(0x15a),'readbackerror','rawerror'][_0x252454(0x1ac)](_0x443954))return _0x252454(0x1d2);if(Array['isArray'](_0x3cd225))return _0x3cd225[_0x252454(0x1a9)](_0x305b61=>redactFailureValue(_0x305b61));if(_0x3cd225&&typeof _0x3cd225===_0x252454(0x1a1))return Object['fromEntries'](Object['entries'](_0x3cd225)[_0x252454(0x1a9)](([_0x47e080,_0xf45131])=>[_0x47e080,redactFailureValue(_0xf45131,_0x47e080)]));return _0x3cd225;}function safeMenuAddError(_0x3e06d8){const _0x437530=a112_0x200298,_0xc16add=_0x3e06d8 instanceof CliError?_0x3e06d8[_0x437530(0x1b4)]:_0x437530(0x181);switch(_0xc16add){case'menu_state_drift':return menuError(_0xc16add,_0x437530(0x172),_0x437530(0x1c1));case _0x437530(0x189):return menuError(_0xc16add,_0x437530(0x180),_0x437530(0x17f));case _0x437530(0x1a7):return menuError(_0xc16add,_0x437530(0x1cf),_0x437530(0x17a));case _0x437530(0x195):return menuError(_0xc16add,_0x437530(0x18c),_0x437530(0x17a));case'menu_create_recovery_required':return menuError(_0xc16add,_0x437530(0x18e),_0x437530(0x1b0));case'menu_mutation_failed':case _0x437530(0x1be):case _0x437530(0x17c):case _0x437530(0x1ba):case'menu_sort_overflow':return menuError(_0xc16add,'External\x20menu\x20creation\x20failed.',_0x437530(0x1cb));default:return menuError(_0x437530(0x181),'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x14dc30){const _0x101a10=a112_0x200298;if(!(_0x14dc30 instanceof Error)||!(_0x101a10(0x1bf)in _0x14dc30))return undefined;const _0x19200a=_0x14dc30[_0x101a10(0x1bf)];if(!_0x19200a||typeof _0x19200a!==_0x101a10(0x1a1))return undefined;const _0x1fb1d6=_0x19200a[_0x101a10(0x1ca)];if(!Array['isArray'](_0x1fb1d6)||!_0x1fb1d6[0x0]||typeof _0x1fb1d6[0x0]!==_0x101a10(0x1a1))return undefined;return _0x1fb1d6[0x0];}
|
|
1
|
+
const a113_0x373abf=a113_0x56f7;function a113_0x56f7(_0x27fe22,_0x11076d){_0x27fe22=_0x27fe22-0xe6;const _0x5af359=a113_0x5af3();let _0x56f7f2=_0x5af359[_0x27fe22];return _0x56f7f2;}(function(_0x284e00,_0x5c5c77){const _0x28f6bd=a113_0x56f7,_0x351d89=_0x284e00();while(!![]){try{const _0xb7e4c2=parseInt(_0x28f6bd(0x106))/0x1+parseInt(_0x28f6bd(0x12b))/0x2*(-parseInt(_0x28f6bd(0x156))/0x3)+parseInt(_0x28f6bd(0x16b))/0x4*(-parseInt(_0x28f6bd(0x134))/0x5)+-parseInt(_0x28f6bd(0xfa))/0x6*(-parseInt(_0x28f6bd(0x141))/0x7)+parseInt(_0x28f6bd(0xfe))/0x8*(-parseInt(_0x28f6bd(0xfb))/0x9)+parseInt(_0x28f6bd(0xf7))/0xa+parseInt(_0x28f6bd(0x169))/0xb;if(_0xb7e4c2===_0x5c5c77)break;else _0x351d89['push'](_0x351d89['shift']());}catch(_0x4bf146){_0x351d89['push'](_0x351d89['shift']());}}}(a113_0x5af3,0xdb640));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';function a113_0x5af3(){const _0x3c0855=['selector','succeeded','isSafeInteger','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','plannedActions','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','POST','create-menu','byId','label','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','code','menu\x20list','length','menu_not_found','13077097xXFDVW','menu','8HcoTKm','expectedPath','flagMissing','menu_create_response_invalid','rawerror','\x20could\x20not\x20be\x20verified.','visibility','add','iframe','menu_sort_invalid','expectedSnapshotHash','create\x20external\x20menu','bool','parentId','/smartapi/menu/create','causemessage','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Menu\x20','hash','prototype','menu_permission_denied','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','1814980GToLEH','Menu\x20label','<redacted>','105306tgizue','90450zYEHQY','rawFlags','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','40VtfQGr','\x20--format\x20compress','\x20has\x20an\x20unexpected\x20','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','get','username','verification','cookie','838172PqNlej','body','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','entries','parent-id','string','menu_mutation_failed','after','path','currentSnapshotHash','lookupCommand','has','str','readbackerror','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','trim','replace','https:','plan','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','link','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','failed','sort','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','createdId','menu_verification_failed','pre-write-recheck','create','stringify','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','External\x20HTTPS\x20URL','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','\x20with\x20','How\x20to\x20open\x20the\x20external\x20website','filter','123082uksgGP','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','external-link-create','open-mode','afterPlan','Create\x20an\x20external\x20website\x20link\x20menu','visible','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','menu_create_recovery_required','2990705YsgmhJ','snapshot','isArray','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','embedded','menu_url_https_required','Whether\x20the\x20menu\x20is\x20visible','fact','hasOwnProperty','data','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','includes','type','392tEWRlu','Created\x20menu\x20','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','create-response-validation','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','menu_url_credentials_forbidden','appCode','boolean','parent','\x27\x5c\x27\x27','menu_open_mode_invalid','Run\x20','URL','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','toLowerCase','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Would\x20create\x20external\x20website\x20link\x20menu\x20','recovered','object','51MqgGZX','map','url'];a113_0x5af3=function(){return _0x3c0855;};return a113_0x5af3();}import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a113_0x373abf(0xe8),'new-window':a113_0x373abf(0x11a)};export function validateExternalMenuUrl(_0x419e55){const _0xdc4dc9=a113_0x373abf,_0x427df1=_0x419e55[_0xdc4dc9(0x115)]();let _0xdc69a7;try{_0xdc69a7=new URL(_0x427df1);}catch{throw menuError('menu_url_invalid',_0xdc4dc9(0x127),_0xdc4dc9(0x12c));}if(_0xdc69a7['protocol']!==_0xdc4dc9(0x117))throw menuError(_0xdc4dc9(0x139),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.','Provide\x20an\x20HTTPS\x20URL.');if(_0xdc69a7[_0xdc4dc9(0x103)]||_0xdc69a7['password'])throw menuError(_0xdc4dc9(0x147),_0xdc4dc9(0x150),_0xdc4dc9(0x146));return _0x427df1;}export const menuExternalLinkCreate={'service':'menu','command':a113_0x373abf(0x12d),'description':a113_0x373abf(0x130),'risk':'write','structuredErrors':!![],'flags':[{'name':a113_0x373abf(0x163),'type':a113_0x373abf(0x10b),'required':!![],'description':a113_0x373abf(0xf8)},{'name':a113_0x373abf(0x12e),'type':a113_0x373abf(0x10b),'required':!![],'enum':[a113_0x373abf(0x138),'new-window'],'description':a113_0x373abf(0x129)},{'name':'url','type':'string','required':!![],'description':a113_0x373abf(0x126)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a113_0x373abf(0x131),'type':a113_0x373abf(0x149),'default':!![],'description':a113_0x373abf(0x13a)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x26344a){validateAddInput(_0x26344a);},async 'dryRun'(_0x550b55){const _0x16be9c=a113_0x373abf;validateAddInput(_0x550b55);const {plan:_0x484d37}=await buildSafeAddPlan(_0x550b55,!![]),_0x29c892=_0x484d37[_0x16be9c(0x10d)],_0x56cbbc=createBody(_0x29c892);return menuDryRunResult(_0x484d37,{'method':'POST','url':_0x16be9c(0xee),'body':_0x56cbbc,'description':_0x16be9c(0x153)+JSON[_0x16be9c(0x124)](_0x29c892[_0x16be9c(0x163)])+_0x16be9c(0x128)+_0x550b55[_0x16be9c(0x112)](_0x16be9c(0x12e))+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x1e21d9){const _0x13b922=a113_0x373abf;validateAddInput(_0x1e21d9);const _0x4a16e5=await buildSafeAddPlan(_0x1e21d9,![]),{plan:_0x4873c8,snapshot:_0x50c8a8}=_0x4a16e5,_0x2027e9=_0x4873c8[_0x13b922(0x10d)],_0x191554=buildMenuLookupCommand(_0x1e21d9[_0x13b922(0x148)]);await recheckAddSnapshot(_0x1e21d9,_0x4873c8);let _0x18d747;try{_0x18d747=await createMenuEntity(_0x1e21d9[_0x13b922(0x148)],_0x1e21d9[_0x13b922(0x105)],createBody(_0x2027e9));}catch(_0x3a63b2){const _0x128892=mapMenuApiError(_0x3a63b2,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x3a63b2)||_0x128892[_0x13b922(0x165)]===_0x13b922(0xf4))throw externalLinkCreateFailure(_0x128892,_0x4873c8,{'stage':_0x13b922(0x123),'failed':{},'verification':{'status':_0x13b922(0x11d),'lookupCommand':_0x191554}});return recoverAfterResponseLoss(_0x1e21d9,_0x4a16e5,_0x191554);}const _0x12d84c=Number(_0x18d747?.['id']),_0x4c8f1a=typeof _0x18d747?.[_0x13b922(0x10e)]==='string'?_0x18d747['path']:'';if(!Number['isSafeInteger'](_0x12d84c)||_0x12d84c<=0x0||!_0x4c8f1a['trim']()){const _0x1b019f=menuError(_0x13b922(0x16e),_0x13b922(0x11b),'Run\x20'+_0x191554+_0x13b922(0x137));throw externalLinkCreateFailure(_0x1b019f,_0x4873c8,{'stage':_0x13b922(0x144),'succeeded':Number[_0x13b922(0x15b)](_0x12d84c)&&_0x12d84c>0x0?[{'id':_0x12d84c,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x12d84c)?_0x12d84c:null,'generatedPathConfirmed':Boolean(_0x4c8f1a['trim']())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number[_0x13b922(0x15b)](_0x12d84c)&&_0x12d84c>0x0?{..._0x2027e9,'id':_0x12d84c,'path':_0x4c8f1a}:_0x2027e9,'verification':{'status':_0x13b922(0x11d),'lookupCommand':_0x191554,...Number[_0x13b922(0x15b)](_0x12d84c)&&_0x12d84c>0x0?{'targetId':_0x12d84c}:{}}});}const _0x142c62=await readAndVerifyCreatedMenu({'appCode':_0x1e21d9[_0x13b922(0x148)],'cookie':_0x1e21d9['cookie'],'plan':_0x4873c8,'afterPlan':_0x2027e9,'createdId':_0x12d84c,'expectedPath':_0x4c8f1a,'lookupCommand':_0x191554,'recovered':![]});return creationSuccess(_0x4873c8,_0x142c62[_0x13b922(0x135)],_0x142c62[_0x13b922(0x13b)],![]);}};function validateAddInput(_0x136853){const _0x52f591=a113_0x373abf;if(!_0x136853['str']('label')[_0x52f591(0x115)]())throw CliErrors[_0x52f591(0x16d)](_0x52f591(0x163));resolveExternalMenuType(_0x136853),validateExternalMenuUrl(_0x136853[_0x52f591(0x112)](_0x52f591(0x158))),parseParentId(_0x136853,_0x52f591(0x10a)),validateSort(_0x136853);}function resolveExternalMenuType(_0x5b4f91){const _0x320ec3=a113_0x373abf,_0x3b304e=_0x5b4f91[_0x320ec3(0x112)](_0x320ec3(0x12e))[_0x320ec3(0x115)]();if(!_0x3b304e)throw CliErrors[_0x320ec3(0x16d)](_0x320ec3(0x12e));const _0x1f77a8=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x3b304e];if(!_0x1f77a8)throw menuError(_0x320ec3(0x14c),_0x320ec3(0x11f),_0x320ec3(0xf0));return _0x1f77a8;}async function buildAddPlan(_0x1bb592,_0xe4d360){const _0x44b2ff=a113_0x373abf,_0x529b7a=await fetchMutationSnapshot(_0x1bb592,_0x44b2ff(0xeb)),_0x7aed16=parseParentId(_0x1bb592,'parent-id')??null;if(_0x7aed16!=null)requireFolder(_0x529b7a,_0x7aed16);const _0x290986=validateSort(_0x1bb592),_0x4d7047=_0x290986??nextSiblingSort(_0x529b7a,_0x7aed16,_0x44b2ff(0x16a)),_0x333f21=_0x1bb592['str'](_0x44b2ff(0x163))[_0x44b2ff(0x115)](),_0x57e029=resolveExternalMenuType(_0x1bb592),_0x58b6ff=validateExternalMenuUrl(_0x1bb592['str']('url')),_0x592b1e=Object[_0x44b2ff(0xf3)][_0x44b2ff(0x13c)]['call'](_0x1bb592[_0x44b2ff(0xfc)],_0x44b2ff(0x131))?_0x1bb592[_0x44b2ff(0xec)](_0x44b2ff(0x131)):!![],_0x448d03={'id':null,'parentId':_0x7aed16,'label':_0x333f21,'path':'<platform-generated>','url':_0x58b6ff,'type':_0x57e029,'visible':_0x592b1e,'sort':_0x4d7047},_0x47f129=buildMenuLookupCommand(_0x1bb592['appCode']),_0x27740a=mutationResult({'operation':_0x44b2ff(0xe7),'selector':{'parentId':_0x7aed16,'type':_0x57e029,'label':_0x333f21,'url':_0x58b6ff},'before':null,'after':_0x448d03,'dryRun':_0xe4d360,'backend':[{'method':_0x44b2ff(0x160),'path':_0x44b2ff(0xee)}],'plannedActions':[{'stage':_0x44b2ff(0x161),'method':_0x44b2ff(0x160),'path':_0x44b2ff(0xee),'body':createBody(_0x448d03)}],'snapshotHash':_0x529b7a[_0x44b2ff(0xf2)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x47f129}});return{'plan':_0x27740a,'snapshot':_0x529b7a};}async function buildSafeAddPlan(_0x1aaefe,_0x781416){try{return await buildAddPlan(_0x1aaefe,_0x781416);}catch(_0x419771){throw safeMenuAddError(_0x419771);}}async function recheckAddSnapshot(_0x10b9b7,_0x747bfc){const _0x45530a=a113_0x373abf;try{await recheckMutationSnapshot(_0x10b9b7,_0x747bfc,_0x45530a(0xeb));}catch(_0x33de9b){const _0x263894=getFailureRecord(_0x33de9b);throw externalLinkCreateFailure(_0x33de9b,_0x747bfc,{'stage':_0x45530a(0x122),'failed':{..._0x263894?.[_0x45530a(0xea)]?{'expectedSnapshotHash':_0x263894[_0x45530a(0xea)]}:{},..._0x263894?.[_0x45530a(0x10f)]?{'currentSnapshotHash':_0x263894[_0x45530a(0x10f)]}:{}}});}}function createBody(_0x4eab29){const _0x368918=a113_0x373abf;return{'parentId':toApiParentId(_0x4eab29[_0x368918(0xed)]),'label':String(_0x4eab29[_0x368918(0x163)]),'type':String(_0x4eab29[_0x368918(0x140)]),'url':String(_0x4eab29[_0x368918(0x158)]),'visible':Boolean(_0x4eab29[_0x368918(0x131)]),'sort':Number(_0x4eab29[_0x368918(0x11e)]),'extend':{}};}function buildMenuLookupCommand(_0x55eae9){const _0x1a5a6a=a113_0x373abf,_0x4a2fcc='\x27'+_0x55eae9[_0x1a5a6a(0x116)](/'/g,_0x1a5a6a(0x14b))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x4a2fcc+_0x1a5a6a(0xff);}async function recoverAfterResponseLoss(_0x53e6ee,_0x231460,_0x99563){const _0x5c22b3=a113_0x373abf,{plan:_0x7fe9db,snapshot:_0x55ec45}=_0x231460,_0xf42bc7=_0x7fe9db[_0x5c22b3(0x10d)];let _0x31a1e5;try{_0x31a1e5=await fetchMenuSnapshot(_0x53e6ee[_0x5c22b3(0x148)],_0x53e6ee[_0x5c22b3(0x105)]);}catch(_0x4f5acb){throw recoveryRequiredFailure(_0x7fe9db,_0x99563,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x42ffda=_0x31a1e5['menus'][_0x5c22b3(0x12a)](_0x4b71f5=>_0x4b71f5['parentId']===_0xf42bc7[_0x5c22b3(0xed)]&&_0x4b71f5['type']===_0xf42bc7['type']&&_0x4b71f5[_0x5c22b3(0x163)]===_0xf42bc7[_0x5c22b3(0x163)]&&_0x4b71f5[_0x5c22b3(0x158)]===_0xf42bc7[_0x5c22b3(0x158)]),_0x11f182=_0x42ffda[_0x5c22b3(0x12a)](_0x2189a3=>!_0x55ec45[_0x5c22b3(0x162)][_0x5c22b3(0x111)](_0x2189a3['id'])),_0x20804d=_0x42ffda['filter'](_0x5a1377=>_0x55ec45[_0x5c22b3(0x162)]['has'](_0x5a1377['id']));if(_0x42ffda['length']!==0x1||_0x11f182[_0x5c22b3(0x167)]!==0x1)throw recoveryRequiredFailure(_0x7fe9db,_0x99563,{'matchCount':_0x42ffda[_0x5c22b3(0x167)],'newMatchCount':_0x11f182[_0x5c22b3(0x167)],'preexistingMatchCount':_0x20804d[_0x5c22b3(0x167)]});const _0x48eded=_0x11f182[0x0];try{verifyCreatedFact(_0x48eded,_0x48eded['id'],_0xf42bc7,null);}catch(_0x3a64c7){const _0x403181=_0x3a64c7 instanceof Error&&'code'in _0x3a64c7?_0x3a64c7:menuError(_0x5c22b3(0x121),'Recovered\x20menu\x20'+_0x48eded['id']+_0x5c22b3(0x170),_0x5c22b3(0x14d)+_0x99563+_0x5c22b3(0xf6));throw externalLinkCreateFailure(_0x403181,_0x7fe9db,{'stage':_0x5c22b3(0x104),'succeeded':[{'id':_0x48eded['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x48eded['id'],'finalFactsConfirmed':![]},'after':_0x48eded,'warnings':[_0x5c22b3(0xf1)+_0x48eded['id']+_0x5c22b3(0x125)],'verification':{'status':_0x5c22b3(0x11d),'targetId':_0x48eded['id'],'recovered':!![],'lookupCommand':_0x99563}});}return creationSuccess(_0x7fe9db,_0x31a1e5,_0x48eded,!![]);}function recoveryRequiredFailure(_0x8d4b15,_0x4d4f8f,_0x3ec6da){const _0x32f4b2=a113_0x373abf,_0x29bf3b=menuError(_0x32f4b2(0x133),_0x32f4b2(0x114),_0x32f4b2(0x14d)+_0x4d4f8f+_0x32f4b2(0x14f));return externalLinkCreateFailure(_0x29bf3b,_0x8d4b15,{'stage':'create-recovery','failed':_0x3ec6da,'warnings':[_0x32f4b2(0x143)],'verification':{'status':'failed',..._0x3ec6da,'lookupCommand':_0x4d4f8f}});}async function readAndVerifyCreatedMenu(_0x55fc1a){const _0x3eb0aa=a113_0x373abf;let _0x9b925d;try{_0x9b925d=await fetchMenuSnapshot(_0x55fc1a[_0x3eb0aa(0x148)],_0x55fc1a['cookie']);}catch(_0x1ca9c5){const _0x188462=menuError(_0x3eb0aa(0x121),_0x3eb0aa(0xf1)+_0x55fc1a[_0x3eb0aa(0x120)]+_0x3eb0aa(0x11c),'Run\x20'+_0x55fc1a['lookupCommand']+_0x3eb0aa(0x15c));throw externalLinkCreateFailure(_0x188462,_0x55fc1a[_0x3eb0aa(0x118)],{'stage':_0x3eb0aa(0x104),'succeeded':[{'id':_0x55fc1a[_0x3eb0aa(0x120)],'created':!![]}],'failed':{'id':_0x55fc1a['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x55fc1a[_0x3eb0aa(0x12f)],'id':_0x55fc1a[_0x3eb0aa(0x120)],'path':_0x55fc1a[_0x3eb0aa(0x16c)]},'warnings':[_0x3eb0aa(0xf1)+_0x55fc1a[_0x3eb0aa(0x120)]+_0x3eb0aa(0x13e)],'verification':{'status':_0x3eb0aa(0x11d),'targetId':_0x55fc1a[_0x3eb0aa(0x120)],'lookupCommand':_0x55fc1a[_0x3eb0aa(0x110)]}});}const _0xb06fd0=_0x9b925d[_0x3eb0aa(0x162)][_0x3eb0aa(0x102)](_0x55fc1a[_0x3eb0aa(0x120)]);try{if(!_0xb06fd0)throw menuError(_0x3eb0aa(0x121),'Created\x20menu\x20'+_0x55fc1a['createdId']+_0x3eb0aa(0x132),'Run\x20'+_0x55fc1a[_0x3eb0aa(0x110)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0xb06fd0,_0x55fc1a['createdId'],_0x55fc1a['afterPlan'],_0x55fc1a[_0x3eb0aa(0x16c)]);}catch(_0x3d69ad){const _0x503f73=_0x3d69ad instanceof Error&&_0x3eb0aa(0x165)in _0x3d69ad?_0x3d69ad:menuError(_0x3eb0aa(0x121),'Created\x20menu\x20'+_0x55fc1a['createdId']+'\x20failed\x20final\x20verification.',_0x3eb0aa(0x14d)+_0x55fc1a['lookupCommand']+_0x3eb0aa(0x15c));throw externalLinkCreateFailure(_0x503f73,_0x55fc1a[_0x3eb0aa(0x118)],{'stage':'verification','succeeded':[{'id':_0x55fc1a[_0x3eb0aa(0x120)],'created':!![]}],'failed':{'id':_0x55fc1a['createdId'],'finalFactsConfirmed':![]},'after':_0xb06fd0??{..._0x55fc1a[_0x3eb0aa(0x12f)],'id':_0x55fc1a[_0x3eb0aa(0x120)],'path':_0x55fc1a[_0x3eb0aa(0x16c)]},'warnings':['Menu\x20'+_0x55fc1a['createdId']+_0x3eb0aa(0x101)],'verification':{'status':_0x3eb0aa(0x11d),'targetId':_0x55fc1a[_0x3eb0aa(0x120)],'recovered':_0x55fc1a[_0x3eb0aa(0x154)],'lookupCommand':_0x55fc1a[_0x3eb0aa(0x110)]}});}return{'snapshot':_0x9b925d,'fact':_0xb06fd0};}function verifyCreatedFact(_0x510a7d,_0x2bfcf,_0x4a110e,_0x295753){const _0x740194=a113_0x373abf;if(!Number[_0x740194(0x15b)](_0x510a7d['id'])||_0x510a7d['id']<=0x0||_0x510a7d['id']!==_0x2bfcf)throw menuError(_0x740194(0x121),_0x740194(0x152),_0x740194(0x108));const _0x120b02=[[_0x740194(0x14a),_0x510a7d[_0x740194(0xed)],_0x4a110e[_0x740194(0xed)]],[_0x740194(0x140),_0x510a7d['type'],_0x4a110e[_0x740194(0x140)]],[_0x740194(0x163),_0x510a7d[_0x740194(0x163)],_0x4a110e[_0x740194(0x163)]],[_0x740194(0x14e),_0x510a7d[_0x740194(0x158)],_0x4a110e[_0x740194(0x158)]],[_0x740194(0xe6),_0x510a7d[_0x740194(0x131)],_0x4a110e[_0x740194(0x131)]],[_0x740194(0x11e),_0x510a7d['sort'],_0x4a110e[_0x740194(0x11e)]]];for(const [_0x30a9bf,_0x40bdb7,_0x5040cb]of _0x120b02){if(_0x40bdb7!==_0x5040cb)throw menuError(_0x740194(0x121),_0x740194(0x142)+_0x510a7d['id']+_0x740194(0x100)+_0x30a9bf+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x510a7d[_0x740194(0x10e)][_0x740194(0x115)]()||_0x295753!==null&&_0x510a7d['path']!==_0x295753)throw menuError(_0x740194(0x121),_0x740194(0x142)+_0x510a7d['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x740194(0x15d));}function creationSuccess(_0x15bd58,_0x5522c2,_0x283138,_0x27df9f){const _0x2b5809=a113_0x373abf,_0x12a3cb=mutationResult({..._0x15bd58,'after':_0x283138,'dryRun':![],'succeeded':[{'id':_0x283138['id'],'created':!![],'recovered':_0x27df9f}],'verification':{'checkedBy':_0x2b5809(0x166),'snapshotHash':_0x5522c2[_0x2b5809(0xf2)],'targetId':_0x283138['id'],'recovered':_0x27df9f,'path':_0x283138[_0x2b5809(0x10e)]}});return{'ok':!![],'message':_0x27df9f?'Recovered\x20created\x20external\x20menu\x20'+_0x283138['id']+'\x20after\x20response\x20loss.':'Created\x20external\x20menu\x20'+_0x283138['id']+'.','data':{..._0x12a3cb,'recovered':_0x27df9f}};}function externalLinkCreateFailure(_0xd1ae64,_0x24d5c1,_0x31f1bc){const _0x474db3=a113_0x373abf;return menuFailure(safeMenuAddError(_0xd1ae64),redactFailurePlan(_0x24d5c1),{..._0x31f1bc,'succeeded':_0x31f1bc[_0x474db3(0x15a)]?.[_0x474db3(0x157)](redactFailureRecord),'failed':_0x31f1bc[_0x474db3(0x11d)]?redactFailureRecord(_0x31f1bc[_0x474db3(0x11d)]):undefined,'verification':_0x31f1bc['verification']?redactFailureRecord(_0x31f1bc[_0x474db3(0x104)]):undefined,'after':_0x31f1bc[_0x474db3(0x10d)]===undefined?undefined:redactFailureValue(_0x31f1bc[_0x474db3(0x10d)])});}function redactFailurePlan(_0x19c74f){const _0x1a31aa=a113_0x373abf;return{..._0x19c74f,'selector':redactFailureRecord(_0x19c74f[_0x1a31aa(0x159)]),'before':redactFailureValue(_0x19c74f['before']),'after':redactFailureValue(_0x19c74f[_0x1a31aa(0x10d)]),'plannedActions':_0x19c74f[_0x1a31aa(0x15e)]?.[_0x1a31aa(0x157)](_0x199b9f=>({..._0x199b9f,'body':redactFailureRecord(_0x199b9f[_0x1a31aa(0x107)])})),'succeeded':_0x19c74f['succeeded'][_0x1a31aa(0x157)](redactFailureRecord),'failed':_0x19c74f['failed'][_0x1a31aa(0x157)](redactFailureRecord),'verification':_0x19c74f[_0x1a31aa(0x104)]?redactFailureRecord(_0x19c74f[_0x1a31aa(0x104)]):undefined};}function redactFailureRecord(_0x63c076){return redactFailureValue(_0x63c076);}function redactFailureValue(_0x483849,_0x3ecfb8=''){const _0x42afde=a113_0x373abf,_0x505fa3=_0x3ecfb8[_0x42afde(0x151)]()[_0x42afde(0x116)](/[^a-z0-9]/g,'');if(['cause',_0x42afde(0xef),_0x42afde(0x113),_0x42afde(0x16f)][_0x42afde(0x13f)](_0x505fa3))return _0x42afde(0xf9);if(Array[_0x42afde(0x136)](_0x483849))return _0x483849[_0x42afde(0x157)](_0x45cfef=>redactFailureValue(_0x45cfef));if(_0x483849&&typeof _0x483849===_0x42afde(0x155))return Object['fromEntries'](Object[_0x42afde(0x109)](_0x483849)[_0x42afde(0x157)](([_0x78f744,_0x298036])=>[_0x78f744,redactFailureValue(_0x298036,_0x78f744)]));return _0x483849;}function safeMenuAddError(_0x388d65){const _0x23ca12=a113_0x373abf,_0x23eb24=_0x388d65 instanceof CliError?_0x388d65[_0x23ca12(0x165)]:_0x23ca12(0x10c);switch(_0x23eb24){case'menu_state_drift':return menuError(_0x23eb24,_0x23ca12(0xfd),_0x23ca12(0x15f));case _0x23ca12(0xf4):return menuError(_0x23eb24,_0x23ca12(0x119),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x23ca12(0x16e):return menuError(_0x23eb24,_0x23ca12(0x145),_0x23ca12(0xf5));case _0x23ca12(0x121):return menuError(_0x23eb24,_0x23ca12(0x164),_0x23ca12(0xf5));case _0x23ca12(0x133):return menuError(_0x23eb24,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x23ca12(0x10c):case _0x23ca12(0x168):case'menu_parent_not_folder':case _0x23ca12(0xe9):case'menu_sort_overflow':return menuError(_0x23eb24,'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0x23ca12(0x10c),'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x3a5623){const _0x1e7b63=a113_0x373abf;if(!(_0x3a5623 instanceof Error)||!('data'in _0x3a5623))return undefined;const _0x20eabc=_0x3a5623[_0x1e7b63(0x13d)];if(!_0x20eabc||typeof _0x20eabc!==_0x1e7b63(0x155))return undefined;const _0x395ec3=_0x20eabc[_0x1e7b63(0x11d)];if(!Array[_0x1e7b63(0x136)](_0x395ec3)||!_0x395ec3[0x0]||typeof _0x395ec3[0x0]!==_0x1e7b63(0x155))return undefined;return _0x395ec3[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a113_0x49a34f=a113_0x604c;(function(_0x1ec5b1,_0x3a3e84){const _0x8b10db=a113_0x604c,_0x279fe9=_0x1ec5b1();while(!![]){try{const _0x27f828=parseInt(_0x8b10db(0xf9))/0x1+parseInt(_0x8b10db(0xc9))/0x2+-parseInt(_0x8b10db(0xd1))/0x3+-parseInt(_0x8b10db(0xfe))/0x4+-parseInt(_0x8b10db(0xe1))/0x5+-parseInt(_0x8b10db(0xb3))/0x6*(parseInt(_0x8b10db(0xcb))/0x7)+-parseInt(_0x8b10db(0xc6))/0x8*(-parseInt(_0x8b10db(0xdf))/0x9);if(_0x27f828===_0x3a3e84)break;else _0x279fe9['push'](_0x279fe9['shift']());}catch(_0x56bb2c){_0x279fe9['push'](_0x279fe9['shift']());}}}(a113_0x4d87,0x99dd0));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a113_0x49a34f(0xad)}];export const menuExternalLinkUpdate={'service':a113_0x49a34f(0xe4),'command':a113_0x49a34f(0xf0),'description':a113_0x49a34f(0xd0),'risk':a113_0x49a34f(0xbf),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a113_0x49a34f(0xf8),'type':a113_0x49a34f(0xec),'required':!![],'description':a113_0x49a34f(0xac)},{'name':a113_0x49a34f(0xc0),'type':a113_0x49a34f(0xec),'required':!![],'description':a113_0x49a34f(0xbd)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5acb0c){validateInput(_0x5acb0c);},async 'dryRun'(_0x372aa2){const _0xb4f57c=a113_0x49a34f;validateInput(_0x372aa2);const _0x5732ab=await buildPlan(_0x372aa2,!![]);return menuDryRunResult(_0x5732ab['plan'],{'method':'POST','url':_0xb4f57c(0xad),'body':_0x5732ab[_0xb4f57c(0xed)],'description':_0xb4f57c(0xea)+_0x5732ab['body']['id']+'.'});},async 'execute'(_0x420590){const _0x3ca2f0=a113_0x49a34f;validateInput(_0x420590);const _0xdb9366=await buildPlan(_0x420590,![]),{plan:_0xc7a937,body:_0x24522f,before:_0x323fe6,noChanges:_0x34a3ac}=_0xdb9366,_0x38f0e1=_0x24522f['id'];if(_0x34a3ac)return updateSuccess(_0xc7a937,_0xdb9366[_0x3ca2f0(0xd9)],_0x323fe6,!![],![]);await recheckMutationSnapshot(_0x420590,_0xc7a937,_0x3ca2f0(0xcc),_0x38f0e1);try{await updateMenuEntity(_0x420590[_0x3ca2f0(0xb5)],_0x420590[_0x3ca2f0(0xae)],{'id':_0x24522f['id'],'url':_0x24522f[_0x3ca2f0(0xf8)]});}catch(_0xd51c5c){const _0x62927a=mapMenuApiError(_0xd51c5c,_0x3ca2f0(0xcc),_0x38f0e1);if(isMenuResponseLoss(_0xd51c5c)&&_0x62927a[_0x3ca2f0(0xde)]!==_0x3ca2f0(0xc3))return recoverAfterResponseLoss(_0x420590,_0xdb9366);throw menuFailure(_0x62927a,_0xc7a937,{'stage':_0x3ca2f0(0xda),'failed':{'id':_0x38f0e1},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x3ca2f0(0xbb),'targetId':_0x38f0e1,'lookupCommand':buildLookupCommand(_0x420590['appCode'])}});}let _0x525b9e,_0x3dcfb2;try{_0x525b9e=await fetchMenuSnapshot(_0x420590[_0x3ca2f0(0xb5)],_0x420590['cookie']),_0x3dcfb2=requireMenu(_0x525b9e,_0x38f0e1),verifyUpdatedFact(_0x323fe6,_0x3dcfb2,_0x24522f[_0x3ca2f0(0xf8)]);}catch(_0x1c2e14){const _0x2eec2e=describeMenuErrorCause(_0x1c2e14,_0x3ca2f0(0xbe),_0x38f0e1),_0x21bdf3=asVerificationError(_0x1c2e14,_0x3ca2f0(0xef)+_0x38f0e1+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x21bdf3,_0xc7a937,{'stage':_0x3ca2f0(0xdc),'succeeded':[{'id':_0x38f0e1,'updateRequested':!![]}],'failed':{'id':_0x38f0e1,'requestedStateConfirmed':![],..._0x2eec2e},'warnings':[_0x3ca2f0(0xdb)],'verification':{'status':_0x3ca2f0(0xbb),'targetId':_0x38f0e1,'lookupCommand':buildLookupCommand(_0x420590[_0x3ca2f0(0xb5)])}});}return updateSuccess(_0xc7a937,_0x525b9e,_0x3dcfb2,![],![]);}};function validateInput(_0x3e8d78){const _0xcc530d=a113_0x49a34f;validateExactId(_0x3e8d78),requiredUrl(_0x3e8d78,_0xcc530d(0xf8)),requiredExpectedUrl(_0x3e8d78),parseParentId(_0x3e8d78,_0xcc530d(0xe3),{'required':!![]});}function requiredUrl(_0x1a153f,_0x386f28){const _0x153e95=a113_0x49a34f;if(!hasFlag(_0x1a153f,_0x386f28)||!_0x1a153f[_0x153e95(0xcf)](_0x386f28)[_0x153e95(0xc4)]())throw CliErrors[_0x153e95(0xc1)](_0x386f28);return validateExternalMenuUrl(_0x1a153f[_0x153e95(0xcf)](_0x386f28));}function requiredExpectedUrl(_0x4cdf0d){const _0x2645ea=a113_0x49a34f;if(!hasFlag(_0x4cdf0d,_0x2645ea(0xc0))||!_0x4cdf0d[_0x2645ea(0xcf)](_0x2645ea(0xc0))[_0x2645ea(0xc4)]())throw CliErrors[_0x2645ea(0xc1)](_0x2645ea(0xc0));return _0x4cdf0d[_0x2645ea(0xcf)](_0x2645ea(0xc0))[_0x2645ea(0xc4)]();}function a113_0x604c(_0x427c82,_0x55cb58){_0x427c82=_0x427c82-0xac;const _0x4d87af=a113_0x4d87();let _0x604c45=_0x4d87af[_0x427c82];return _0x604c45;}async function buildPlan(_0x3af5b2,_0x3abe90){const _0x4baa48=a113_0x49a34f,_0x37a560=validateExactId(_0x3af5b2),_0x5626cb=requiredUrl(_0x3af5b2,_0x4baa48(0xf8)),_0x1b3dc9=requiredExpectedUrl(_0x3af5b2),_0x4ff344=parseParentId(_0x3af5b2,_0x4baa48(0xe3),{'required':!![]}),_0x2bb287=await fetchMutationSnapshot(_0x3af5b2,_0x4baa48(0xcc),_0x37a560),_0x918b92=requireMenu(_0x2bb287,_0x37a560);assertExternalLinkLeaf(_0x918b92);if(_0x918b92[_0x4baa48(0xcd)]!==_0x4ff344)throw menuError(_0x4baa48(0xe2),_0x4baa48(0xdd)+_0x37a560+_0x4baa48(0xee)+formatParent(_0x4ff344)+_0x4baa48(0xfc)+formatParent(_0x918b92[_0x4baa48(0xcd)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x299222=_0x918b92[_0x4baa48(0xf8)]===_0x5626cb;if(!_0x299222&&_0x918b92[_0x4baa48(0xf8)]!==_0x1b3dc9)throw menuError(_0x4baa48(0xe2),_0x4baa48(0xdd)+_0x37a560+_0x4baa48(0xe7),_0x4baa48(0xe8));const _0x5e7513={'id':_0x37a560,'appCode':_0x3af5b2[_0x4baa48(0xb5)],'url':_0x5626cb},_0xdf83c0={..._0x918b92,'url':_0x5626cb};return{'body':_0x5e7513,'before':_0x918b92,'noChanges':_0x299222,'snapshot':_0x2bb287,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x37a560},'before':_0x918b92,'after':_0xdf83c0,'dryRun':_0x3abe90,'backend':[...BACKEND],'plannedActions':_0x299222?[]:[{'stage':_0x4baa48(0xd4),'method':_0x4baa48(0xeb),'path':_0x4baa48(0xad),'body':_0x5e7513}],'snapshotHash':_0x2bb287[_0x4baa48(0xb8)],'warnings':_0x299222?[_0x4baa48(0xd6)]:[]})};}function assertExternalLinkLeaf(_0xc91bf3){const _0x549040=a113_0x49a34f;if(_0xc91bf3[_0x549040(0xb6)]!==_0x549040(0xb1)&&_0xc91bf3[_0x549040(0xb6)]!==_0x549040(0xd8))throw menuError(_0x549040(0xe6),_0x549040(0xdd)+_0xc91bf3['id']+_0x549040(0xf5)+(_0xc91bf3[_0x549040(0xb6)]||_0x549040(0xd2))+'\x22,\x20not\x20iframe\x20or\x20link.',_0x549040(0xf3));if(_0xc91bf3[_0x549040(0xc2)]!==0x0)throw menuError(_0x549040(0xf4),_0x549040(0xdd)+_0xc91bf3['id']+_0x549040(0xb0)+_0xc91bf3['childrenCount']+_0x549040(0xb2),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0xc91bf3[_0x549040(0xd7)][_0x549040(0xc4)]())throw menuError(_0x549040(0xe9),'Menu\x20'+_0xc91bf3['id']+_0x549040(0xb9),_0x549040(0xd3));}function verifyUpdatedFact(_0x19a7e2,_0x1ca2c5,_0x129965){const _0x16e5b7=a113_0x49a34f;assertExternalLinkLeaf(_0x1ca2c5);const _0xa068e9=[['id',_0x1ca2c5['id'],_0x19a7e2['id']],[_0x16e5b7(0xf6),_0x1ca2c5[_0x16e5b7(0xf6)],_0x19a7e2[_0x16e5b7(0xf6)]],[_0x16e5b7(0xb6),_0x1ca2c5[_0x16e5b7(0xb6)],_0x19a7e2['type']],[_0x16e5b7(0xd7),_0x1ca2c5['path'],_0x19a7e2[_0x16e5b7(0xd7)]],[_0x16e5b7(0xcd),_0x1ca2c5[_0x16e5b7(0xcd)],_0x19a7e2['parentId']],[_0x16e5b7(0xfd),_0x1ca2c5[_0x16e5b7(0xfd)],_0x19a7e2[_0x16e5b7(0xfd)]],[_0x16e5b7(0xf2),_0x1ca2c5[_0x16e5b7(0xf2)],_0x19a7e2['visible']]];for(const [_0x41e1d5,_0x53d860,_0x22fab0]of _0xa068e9){assertVerified(_0x53d860===_0x22fab0,'Menu\x20'+_0x19a7e2['id']+'\x20'+_0x41e1d5+_0x16e5b7(0xc7));}assertVerified(_0x1ca2c5[_0x16e5b7(0xf8)]===_0x129965,_0x16e5b7(0xdd)+_0x19a7e2['id']+_0x16e5b7(0xe0));}function updateSuccess(_0x2c3245,_0x1297b4,_0x60970a,_0x5479f9,_0x43a84f){const _0x45b3f1=a113_0x49a34f,_0x3ffce8=_0x60970a['id'],_0x416549=mutationResult({..._0x2c3245,'after':_0x60970a,'dryRun':![],'succeeded':[{'id':_0x3ffce8,'updated':!_0x5479f9,'skipped':_0x5479f9,'recovered':_0x43a84f}],'verification':{'checkedBy':_0x45b3f1(0xd5),'snapshotHash':_0x1297b4[_0x45b3f1(0xb8)],'targetId':_0x3ffce8,'matchesRequestedState':!![],'recovered':_0x43a84f}});return{'ok':!![],'message':_0x43a84f?_0x45b3f1(0xba)+_0x3ffce8+'.':_0x5479f9?_0x45b3f1(0xdd)+_0x3ffce8+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x45b3f1(0xff)+_0x3ffce8+'.','data':{..._0x416549,'recovered':_0x43a84f}};}function a113_0x4d87(){const _0x386e8a=['requestedUrlObserved','url','933219DdWWJL','\x27\x5c\x27\x27','readbackFailed',',\x20current\x20','sort','3760536zWhrOD','Updated\x20external\x20URL\x20for\x20menu\x20','New\x20external\x20HTTPS\x20URL','/smartapi/menu/update','cookie','\x20could\x20not\x20be\x20verified\x20safely','\x20has\x20','iframe','\x20direct\x20child\x20menu(s).','271806MUmtck','replace','appCode','type','Run\x20','hash','\x20has\x20an\x20empty\x20platform\x20path.','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','failed','update-recovery','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','verify\x20external\x20menu\x20URL\x20update','write','expect-url','flagMissing','childrenCount','menu_permission_denied','trim','menu_update_recovery_required','32DjscsJ','\x20changed\x20during\x20the\x20URL-only\x20update.','get','1396302cTOfDr','rabetbase\x20menu\x20list\x20--appcode\x20','161tyMmfI','update\x20external\x20menu\x20URL','parentId','Response\x20was\x20lost\x20and\x20menu\x20','str','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','1528557quKDyu','unknown','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','update-external-link-url','menu\x20list','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','path','link','snapshot','update','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','verification','Menu\x20','code','4982193Dcvfjy','\x20URL\x20update\x20did\x20not\x20take\x20effect.','3619390qVCRFk','menu_state_drift','expect-parent-id','menu','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','menu_external_link_type_required','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','menu_external_link_path_missing','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','POST','string','body','\x20parent\x20changed:\x20expected\x20','Update\x20request\x20for\x20menu\x20','external-link-update','byId','visible','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','menu_external_link_not_leaf','\x20is\x20type\x20\x22','label'];a113_0x4d87=function(){return _0x386e8a;};return a113_0x4d87();}async function recoverAfterResponseLoss(_0x129f15,_0x3fb961){const _0x2e0a73=a113_0x49a34f,{plan:_0x12100b,before:_0x145c6a,body:_0x20f1f9}=_0x3fb961;let _0x3b9d21;try{_0x3b9d21=await fetchMenuSnapshot(_0x129f15[_0x2e0a73(0xb5)],_0x129f15['cookie']);}catch{throw recoveryRequired(_0x12100b,_0x129f15[_0x2e0a73(0xb5)],{'id':_0x20f1f9['id'],'readbackFailed':!![]});}const _0x4be19c=_0x3b9d21[_0x2e0a73(0xf1)][_0x2e0a73(0xc8)](_0x20f1f9['id']);if(!_0x4be19c||_0x4be19c[_0x2e0a73(0xf8)]!==_0x20f1f9['url'])throw recoveryRequired(_0x12100b,_0x129f15[_0x2e0a73(0xb5)],{'id':_0x20f1f9['id'],'requestedUrlObserved':![],'after':_0x4be19c??null});try{verifyUpdatedFact(_0x145c6a,_0x4be19c,_0x20f1f9['url']);}catch(_0x383645){const _0x21f3e8=asVerificationError(_0x383645,_0x2e0a73(0xce)+_0x20f1f9['id']+_0x2e0a73(0xaf));throw menuFailure(_0x21f3e8,_0x12100b,{'stage':'update-recovery','succeeded':[{'id':_0x20f1f9['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x20f1f9['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x4be19c,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':'failed','targetId':_0x20f1f9['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x129f15[_0x2e0a73(0xb5)])}});}return updateSuccess(_0x12100b,_0x3b9d21,_0x4be19c,![],!![]);}function recoveryRequired(_0xe587ea,_0x1c9488,_0x17e461){const _0x586c88=a113_0x49a34f,_0x48422a=menuError(_0x586c88(0xc5),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x586c88(0xb7)+buildLookupCommand(_0x1c9488)+_0x586c88(0xe5));return menuFailure(_0x48422a,_0xe587ea,{'stage':_0x586c88(0xbc),'failed':{'id':_0x17e461['id'],..._0x17e461[_0x586c88(0xf7)]===undefined?{}:{'requestedUrlObserved':_0x17e461[_0x586c88(0xf7)]},..._0x17e461[_0x586c88(0xfb)]?{'readbackFailed':!![]}:{}},'after':_0x17e461['after'],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x586c88(0xbb),'targetId':_0x17e461['id'],..._0x17e461['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x17e461[_0x586c88(0xf7)]},..._0x17e461[_0x586c88(0xfb)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x1c9488)}});}function buildLookupCommand(_0x47f9fc){const _0x42e5ce=a113_0x49a34f,_0x246229='\x27'+_0x47f9fc[_0x42e5ce(0xb4)](/'/g,_0x42e5ce(0xfa))+'\x27';return _0x42e5ce(0xca)+_0x246229+'\x20--format\x20compress';}
|
|
1
|
+
const a114_0x59c925=a114_0x54a1;(function(_0x4f66fe,_0x575556){const _0x324064=a114_0x54a1,_0x3b9078=_0x4f66fe();while(!![]){try{const _0x3b3607=parseInt(_0x324064(0x1e0))/0x1*(parseInt(_0x324064(0x1bb))/0x2)+parseInt(_0x324064(0x1c0))/0x3+parseInt(_0x324064(0x1d6))/0x4*(-parseInt(_0x324064(0x1ce))/0x5)+-parseInt(_0x324064(0x1b7))/0x6+-parseInt(_0x324064(0x1e3))/0x7*(parseInt(_0x324064(0x1c7))/0x8)+-parseInt(_0x324064(0x1f2))/0x9+-parseInt(_0x324064(0x1c4))/0xa*(-parseInt(_0x324064(0x1b4))/0xb);if(_0x3b3607===_0x575556)break;else _0x3b9078['push'](_0x3b9078['shift']());}catch(_0x20956a){_0x3b9078['push'](_0x3b9078['shift']());}}}(a114_0x2039,0x34cc3));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a114_0x59c925(0x1f8)}];function a114_0x2039(){const _0x56cf7b=['External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','\x20parent\x20changed:\x20expected\x20','/smartapi/menu/update','menu','rabetbase\x20menu\x20list\x20--appcode\x20','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','cookie','menu\x20list','Response\x20was\x20lost\x20and\x20menu\x20','menu_external_link_type_required','\x20changed\x20during\x20the\x20URL-only\x20update.','plan','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','11LqmrPn','\x20--format\x20compress','code','2343960YoguMl','\x20has\x20','\x20could\x20not\x20be\x20verified\x20safely','parentId','194018LoBPew','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','failed','expect-parent-id','\x27\x5c\x27\x27','1103499OwpZNJ','replace','readbackFailed','menu_state_drift','8615530mNiusN','New\x20external\x20HTTPS\x20URL','\x20already\x20matches\x20the\x20requested\x20URL.','6968cQhezX','body','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','url','expect-url','childrenCount','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','5595HJEYbS','update-external-link-url','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','link','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','appCode','type','update-recovery','1420MnjIoy','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','update\x20external\x20menu\x20URL','verification','unknown','verify\x20external\x20menu\x20URL\x20update','write','\x22,\x20not\x20iframe\x20or\x20link.','hash','requestedUrlObserved','1zBVtiX','string','update','2268zPCpCM','Menu\x20','trim','sort','snapshot','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','Updated\x20external\x20URL\x20for\x20menu\x20','after','visible','label','menu_external_link_not_leaf','\x20direct\x20child\x20menu(s).','\x20is\x20type\x20\x22','str','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','360243JLxSbg','flagMissing','external-link-update','path'];a114_0x2039=function(){return _0x56cf7b;};return a114_0x2039();}export const menuExternalLinkUpdate={'service':a114_0x59c925(0x1f9),'command':a114_0x59c925(0x1f4),'description':a114_0x59c925(0x1d0),'risk':a114_0x59c925(0x1dc),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a114_0x59c925(0x1ca),'type':a114_0x59c925(0x1e1),'required':!![],'description':a114_0x59c925(0x1c5)},{'name':a114_0x59c925(0x1cb),'type':'string','required':!![],'description':a114_0x59c925(0x1d7)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xe8144){validateInput(_0xe8144);},async 'dryRun'(_0x2769a3){const _0x51be30=a114_0x59c925;validateInput(_0x2769a3);const _0x58a247=await buildPlan(_0x2769a3,!![]);return menuDryRunResult(_0x58a247[_0x51be30(0x1b1)],{'method':'POST','url':_0x51be30(0x1f8),'body':_0x58a247['body'],'description':_0x51be30(0x1e8)+_0x58a247[_0x51be30(0x1c8)]['id']+'.'});},async 'execute'(_0x30520c){const _0x4874bc=a114_0x59c925;validateInput(_0x30520c);const _0xb36e76=await buildPlan(_0x30520c,![]),{plan:_0x43acb0,body:_0x216f7e,before:_0x286318,noChanges:_0x475d5a}=_0xb36e76,_0xdcf0a8=_0x216f7e['id'];if(_0x475d5a)return updateSuccess(_0x43acb0,_0xb36e76[_0x4874bc(0x1e7)],_0x286318,!![],![]);await recheckMutationSnapshot(_0x30520c,_0x43acb0,_0x4874bc(0x1d8),_0xdcf0a8);try{await updateMenuEntity(_0x30520c['appCode'],_0x30520c[_0x4874bc(0x1fd)],{'id':_0x216f7e['id'],'url':_0x216f7e[_0x4874bc(0x1ca)]});}catch(_0x798910){const _0x1e6e84=mapMenuApiError(_0x798910,_0x4874bc(0x1d8),_0xdcf0a8);if(isMenuResponseLoss(_0x798910)&&_0x1e6e84[_0x4874bc(0x1b6)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x30520c,_0xb36e76);throw menuFailure(_0x1e6e84,_0x43acb0,{'stage':_0x4874bc(0x1e2),'failed':{'id':_0xdcf0a8},'warnings':[_0x4874bc(0x1fb)],'verification':{'status':_0x4874bc(0x1bd),'targetId':_0xdcf0a8,'lookupCommand':buildLookupCommand(_0x30520c[_0x4874bc(0x1d3)])}});}let _0x49d045,_0x5f037f;try{_0x49d045=await fetchMenuSnapshot(_0x30520c[_0x4874bc(0x1d3)],_0x30520c['cookie']),_0x5f037f=requireMenu(_0x49d045,_0xdcf0a8),verifyUpdatedFact(_0x286318,_0x5f037f,_0x216f7e[_0x4874bc(0x1ca)]);}catch(_0x51169f){const _0x30f890=describeMenuErrorCause(_0x51169f,_0x4874bc(0x1db),_0xdcf0a8),_0x3547ca=asVerificationError(_0x51169f,'Update\x20request\x20for\x20menu\x20'+_0xdcf0a8+_0x4874bc(0x1b3));throw menuFailure(_0x3547ca,_0x43acb0,{'stage':_0x4874bc(0x1d9),'succeeded':[{'id':_0xdcf0a8,'updateRequested':!![]}],'failed':{'id':_0xdcf0a8,'requestedStateConfirmed':![],..._0x30f890},'warnings':[_0x4874bc(0x1bc)],'verification':{'status':_0x4874bc(0x1bd),'targetId':_0xdcf0a8,'lookupCommand':buildLookupCommand(_0x30520c[_0x4874bc(0x1d3)])}});}return updateSuccess(_0x43acb0,_0x49d045,_0x5f037f,![],![]);}};function a114_0x54a1(_0x37fcdd,_0x312086){_0x37fcdd=_0x37fcdd-0x1ad;const _0x203989=a114_0x2039();let _0x54a14e=_0x203989[_0x37fcdd];return _0x54a14e;}function validateInput(_0x5feb0e){const _0xfe214f=a114_0x59c925;validateExactId(_0x5feb0e),requiredUrl(_0x5feb0e,'url'),requiredExpectedUrl(_0x5feb0e),parseParentId(_0x5feb0e,_0xfe214f(0x1be),{'required':!![]});}function requiredUrl(_0xb1586b,_0x5cc7b6){const _0x5c502c=a114_0x59c925;if(!hasFlag(_0xb1586b,_0x5cc7b6)||!_0xb1586b[_0x5c502c(0x1f0)](_0x5cc7b6)[_0x5c502c(0x1e5)]())throw CliErrors[_0x5c502c(0x1f3)](_0x5cc7b6);return validateExternalMenuUrl(_0xb1586b[_0x5c502c(0x1f0)](_0x5cc7b6));}function requiredExpectedUrl(_0x540f12){const _0x200492=a114_0x59c925;if(!hasFlag(_0x540f12,_0x200492(0x1cb))||!_0x540f12[_0x200492(0x1f0)]('expect-url')[_0x200492(0x1e5)]())throw CliErrors[_0x200492(0x1f3)](_0x200492(0x1cb));return _0x540f12[_0x200492(0x1f0)]('expect-url')[_0x200492(0x1e5)]();}async function buildPlan(_0x26f722,_0x3bf6d0){const _0x222186=a114_0x59c925,_0x29e6d5=validateExactId(_0x26f722),_0x24d2f5=requiredUrl(_0x26f722,_0x222186(0x1ca)),_0x31d6c9=requiredExpectedUrl(_0x26f722),_0x1fc681=parseParentId(_0x26f722,_0x222186(0x1be),{'required':!![]}),_0x42f76e=await fetchMutationSnapshot(_0x26f722,_0x222186(0x1d8),_0x29e6d5),_0x5a1549=requireMenu(_0x42f76e,_0x29e6d5);assertExternalLinkLeaf(_0x5a1549);if(_0x5a1549['parentId']!==_0x1fc681)throw menuError(_0x222186(0x1c3),'Menu\x20'+_0x29e6d5+_0x222186(0x1f7)+formatParent(_0x1fc681)+',\x20current\x20'+formatParent(_0x5a1549['parentId'])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x537a9b=_0x5a1549[_0x222186(0x1ca)]===_0x24d2f5;if(!_0x537a9b&&_0x5a1549[_0x222186(0x1ca)]!==_0x31d6c9)throw menuError('menu_state_drift',_0x222186(0x1e4)+_0x29e6d5+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x4fd7e2={'id':_0x29e6d5,'appCode':_0x26f722[_0x222186(0x1d3)],'url':_0x24d2f5},_0x2e049c={..._0x5a1549,'url':_0x24d2f5};return{'body':_0x4fd7e2,'before':_0x5a1549,'noChanges':_0x537a9b,'snapshot':_0x42f76e,'plan':mutationResult({'operation':_0x222186(0x1f4),'selector':{'id':_0x29e6d5},'before':_0x5a1549,'after':_0x2e049c,'dryRun':_0x3bf6d0,'backend':[...BACKEND],'plannedActions':_0x537a9b?[]:[{'stage':_0x222186(0x1cf),'method':'POST','path':_0x222186(0x1f8),'body':_0x4fd7e2}],'snapshotHash':_0x42f76e[_0x222186(0x1de)],'warnings':_0x537a9b?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x5a4ca7){const _0x330e13=a114_0x59c925;if(_0x5a4ca7[_0x330e13(0x1d4)]!=='iframe'&&_0x5a4ca7['type']!==_0x330e13(0x1d1))throw menuError(_0x330e13(0x1af),_0x330e13(0x1e4)+_0x5a4ca7['id']+_0x330e13(0x1ef)+(_0x5a4ca7[_0x330e13(0x1d4)]||_0x330e13(0x1da))+_0x330e13(0x1dd),_0x330e13(0x1b2));if(_0x5a4ca7[_0x330e13(0x1cc)]!==0x0)throw menuError(_0x330e13(0x1ed),_0x330e13(0x1e4)+_0x5a4ca7['id']+_0x330e13(0x1b8)+_0x5a4ca7[_0x330e13(0x1cc)]+_0x330e13(0x1ee),_0x330e13(0x1f6));if(!_0x5a4ca7['path'][_0x330e13(0x1e5)]())throw menuError('menu_external_link_path_missing','Menu\x20'+_0x5a4ca7['id']+'\x20has\x20an\x20empty\x20platform\x20path.',_0x330e13(0x1f1));}function verifyUpdatedFact(_0x508ca4,_0x378633,_0x315836){const _0x1d50c6=a114_0x59c925;assertExternalLinkLeaf(_0x378633);const _0x2a8031=[['id',_0x378633['id'],_0x508ca4['id']],[_0x1d50c6(0x1ec),_0x378633[_0x1d50c6(0x1ec)],_0x508ca4['label']],[_0x1d50c6(0x1d4),_0x378633[_0x1d50c6(0x1d4)],_0x508ca4['type']],[_0x1d50c6(0x1f5),_0x378633['path'],_0x508ca4[_0x1d50c6(0x1f5)]],[_0x1d50c6(0x1ba),_0x378633[_0x1d50c6(0x1ba)],_0x508ca4['parentId']],['sort',_0x378633[_0x1d50c6(0x1e6)],_0x508ca4[_0x1d50c6(0x1e6)]],[_0x1d50c6(0x1eb),_0x378633['visible'],_0x508ca4[_0x1d50c6(0x1eb)]]];for(const [_0x56f131,_0xed60f5,_0x7fa8cb]of _0x2a8031){assertVerified(_0xed60f5===_0x7fa8cb,'Menu\x20'+_0x508ca4['id']+'\x20'+_0x56f131+_0x1d50c6(0x1b0));}assertVerified(_0x378633[_0x1d50c6(0x1ca)]===_0x315836,_0x1d50c6(0x1e4)+_0x508ca4['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x47017b,_0x373325,_0x15f27b,_0x4c3a47,_0x9873f6){const _0x1d9803=a114_0x59c925,_0x31f2d0=_0x15f27b['id'],_0x418fe7=mutationResult({..._0x47017b,'after':_0x15f27b,'dryRun':![],'succeeded':[{'id':_0x31f2d0,'updated':!_0x4c3a47,'skipped':_0x4c3a47,'recovered':_0x9873f6}],'verification':{'checkedBy':_0x1d9803(0x1ad),'snapshotHash':_0x373325[_0x1d9803(0x1de)],'targetId':_0x31f2d0,'matchesRequestedState':!![],'recovered':_0x9873f6}});return{'ok':!![],'message':_0x9873f6?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x31f2d0+'.':_0x4c3a47?'Menu\x20'+_0x31f2d0+_0x1d9803(0x1c6):_0x1d9803(0x1e9)+_0x31f2d0+'.','data':{..._0x418fe7,'recovered':_0x9873f6}};}async function recoverAfterResponseLoss(_0x6389b3,_0x5e5f98){const _0x11133d=a114_0x59c925,{plan:_0x2c3f7a,before:_0x1338d0,body:_0x492cf6}=_0x5e5f98;let _0x340f16;try{_0x340f16=await fetchMenuSnapshot(_0x6389b3['appCode'],_0x6389b3['cookie']);}catch{throw recoveryRequired(_0x2c3f7a,_0x6389b3[_0x11133d(0x1d3)],{'id':_0x492cf6['id'],'readbackFailed':!![]});}const _0x10ea0e=_0x340f16['byId']['get'](_0x492cf6['id']);if(!_0x10ea0e||_0x10ea0e[_0x11133d(0x1ca)]!==_0x492cf6['url'])throw recoveryRequired(_0x2c3f7a,_0x6389b3['appCode'],{'id':_0x492cf6['id'],'requestedUrlObserved':![],'after':_0x10ea0e??null});try{verifyUpdatedFact(_0x1338d0,_0x10ea0e,_0x492cf6[_0x11133d(0x1ca)]);}catch(_0x30f545){const _0x29812f=asVerificationError(_0x30f545,_0x11133d(0x1ae)+_0x492cf6['id']+_0x11133d(0x1b9));throw menuFailure(_0x29812f,_0x2c3f7a,{'stage':_0x11133d(0x1d5),'succeeded':[{'id':_0x492cf6['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x492cf6['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x10ea0e,'warnings':[_0x11133d(0x1d2)],'verification':{'status':_0x11133d(0x1bd),'targetId':_0x492cf6['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x6389b3[_0x11133d(0x1d3)])}});}return updateSuccess(_0x2c3f7a,_0x340f16,_0x10ea0e,![],!![]);}function recoveryRequired(_0x50c7b0,_0x149451,_0x33222f){const _0xcde5c7=a114_0x59c925,_0x482be2=menuError('menu_update_recovery_required',_0xcde5c7(0x1cd),'Run\x20'+buildLookupCommand(_0x149451)+_0xcde5c7(0x1fc));return menuFailure(_0x482be2,_0x50c7b0,{'stage':_0xcde5c7(0x1d5),'failed':{'id':_0x33222f['id'],..._0x33222f[_0xcde5c7(0x1df)]===undefined?{}:{'requestedUrlObserved':_0x33222f[_0xcde5c7(0x1df)]},..._0x33222f['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x33222f[_0xcde5c7(0x1ea)],'warnings':[_0xcde5c7(0x1c9)],'verification':{'status':_0xcde5c7(0x1bd),'targetId':_0x33222f['id'],..._0x33222f[_0xcde5c7(0x1df)]===undefined?{}:{'requestedUrlObserved':_0x33222f['requestedUrlObserved']},..._0x33222f[_0xcde5c7(0x1c2)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x149451)}});}function buildLookupCommand(_0x524841){const _0x12bb30=a114_0x59c925,_0x1ce081='\x27'+_0x524841[_0x12bb30(0x1c1)](/'/g,_0x12bb30(0x1bf))+'\x27';return _0x12bb30(0x1fa)+_0x1ce081+_0x12bb30(0x1b5);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a114_0x5a4c(){const _0x17060b=['cookie','length','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','group-create','Folder\x20','35564yIQRsK','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','<platform-generated>','isSafeInteger','Created\x20folder\x20','create-response-validation','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20may\x20exist\x20online\x20at\x20path\x20','\x22\x20with\x20a\x20platform-generated\x20path.','8ZlnAON','\x20is\x20not\x20empty.','appCode','byId','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','menu_create_response_invalid','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','string','4HIxmBx','\x20has\x20resources.','path','parentId','14728470dqwhiK','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x20has\x20an\x20unexpected\x20label.','\x20is\x20missing\x20from\x20menu\x20list.','resources','label','rabetbase\x20menu\x20list\x20--format\x20json','25ANRkaO','verification','create\x20folder','6381255FUYdBN','verify\x20folder\x20creation','trim','\x20is\x20not\x20visible.','failed','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','create-folder','depth','\x20is\x20not\x20type\x20folder.','4970778zZkfWd','POST','/smartapi/menu/create','11SbwVNL','flagMissing','3397368ZjyEMf','str','Created\x20menu\x20','menu\x20list','3546504pyVvLQ','stringify','sort','folder','parent-id','Created\x20menu\x20folder\x20','childrenCount','root','after','type','7IQFLbU','Folder\x20label','9297513EIwYkz','menu'];a114_0x5a4c=function(){return _0x17060b;};return a114_0x5a4c();}const a114_0x47c9f1=a114_0x3d2b;(function(_0x531842,_0x4420e1){const _0x5642b3=a114_0x3d2b,_0x31e5dc=_0x531842();while(!![]){try{const _0x252c25=-parseInt(_0x5642b3(0xbc))/0x1*(parseInt(_0x5642b3(0x9f))/0x2)+parseInt(_0x5642b3(0xd1))/0x3+-parseInt(_0x5642b3(0xb1))/0x4*(parseInt(_0x5642b3(0xbf))/0x5)+-parseInt(_0x5642b3(0xc8))/0x6*(parseInt(_0x5642b3(0x96))/0x7)+-parseInt(_0x5642b3(0xa8))/0x8*(-parseInt(_0x5642b3(0x98))/0x9)+parseInt(_0x5642b3(0xb5))/0xa*(parseInt(_0x5642b3(0xcb))/0xb)+-parseInt(_0x5642b3(0xcd))/0xc;if(_0x252c25===_0x4420e1)break;else _0x31e5dc['push'](_0x31e5dc['shift']());}catch(_0x1f43a3){_0x31e5dc['push'](_0x31e5dc['shift']());}}}(a114_0x5a4c,0xd0e8e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a114_0x3d2b(_0x35aac3,_0x5ed2f4){_0x35aac3=_0x35aac3-0x94;const _0x5a4c4a=a114_0x5a4c();let _0x3d2b1b=_0x5a4c4a[_0x35aac3];return _0x3d2b1b;}const BACKEND=[{'method':a114_0x47c9f1(0xc9),'path':a114_0x47c9f1(0xca)}];export const menuGroupCreate={'service':a114_0x47c9f1(0x99),'command':'group-create','description':a114_0x47c9f1(0xac),'risk':'write','structuredErrors':!![],'flags':[{'name':a114_0x47c9f1(0xba),'type':a114_0x47c9f1(0xb0),'required':!![],'description':a114_0x47c9f1(0x97)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x228683){validateCreateInput(_0x228683);},async 'dryRun'(_0x538d44){const _0x280d41=a114_0x47c9f1,_0x478f67=await buildCreatePlan(_0x538d44,!![]),_0x41fc50=_0x478f67[_0x280d41(0x94)];return menuDryRunResult(_0x478f67,{'method':_0x280d41(0xc9),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x41fc50[_0x280d41(0xb4)]),'label':_0x41fc50[_0x280d41(0xba)],'type':'folder','visible':!![],'sort':_0x41fc50[_0x280d41(0xd3)],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x41fc50[_0x280d41(0xba)])+_0x280d41(0xa7)});},async 'execute'(_0x369b99){const _0x2ac687=a114_0x47c9f1;validateCreateInput(_0x369b99);const _0x1d3e17=await buildCreatePlan(_0x369b99,![]),_0x226939=_0x1d3e17[_0x2ac687(0x94)];await recheckMutationSnapshot(_0x369b99,_0x1d3e17,_0x2ac687(0xbe));let _0x13e673;try{_0x13e673=await createMenuEntity(_0x369b99[_0x2ac687(0xaa)],_0x369b99[_0x2ac687(0x9a)],{'parentId':toApiParentId(_0x226939[_0x2ac687(0xb4)]),'label':String(_0x226939[_0x2ac687(0xba)]),'type':_0x2ac687(0xd4),'visible':!![],'sort':Number(_0x226939[_0x2ac687(0xd3)]),'extend':{}});}catch(_0x39fa48){const _0x285073=mapMenuApiError(_0x39fa48,_0x2ac687(0xbe));throw menuFailure(_0x285073,_0x1d3e17,{'stage':'create','failed':{}});}const _0xc9147f=Number(_0x13e673['id']);if(!Number[_0x2ac687(0xa2)](_0xc9147f)||_0xc9147f<=0x0){const _0x2f6509=menuError(_0x2ac687(0xae),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0x2ac687(0xa5));throw menuFailure(_0x2f6509,_0x1d3e17,{'stage':'create-response-validation','failed':{'createdId':_0x13e673['id']??null},'warnings':[_0x2ac687(0xb6)],'verification':{'status':_0x2ac687(0xc3),'lookupCommand':_0x2ac687(0xbb)}});}const _0x639f37=typeof _0x13e673['path']===_0x2ac687(0xb0)?_0x13e673[_0x2ac687(0xb3)]:'';if(!_0x639f37[_0x2ac687(0xc1)]()){const _0x394416=menuError(_0x2ac687(0xae),'Menu\x20create\x20response\x20for\x20folder\x20'+_0xc9147f+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x394416,_0x1d3e17,{'stage':_0x2ac687(0xa4),'succeeded':[{'id':_0xc9147f,'created':!![]}],'failed':{'id':_0xc9147f,'generatedPathConfirmed':![]},'warnings':[_0x2ac687(0x9e)+_0xc9147f+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x226939,'id':_0xc9147f,'path':_0x639f37},'verification':{'status':_0x2ac687(0xc3),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0xc9147f}});}let _0x1ab926;try{_0x1ab926=await fetchMenuSnapshot(_0x369b99['appCode'],_0x369b99[_0x2ac687(0x9a)]);}catch(_0x5a017a){const _0x34c68d=describeMenuErrorCause(_0x5a017a,_0x2ac687(0xc0),_0xc9147f),_0x2b7eb5=asVerificationError(_0x5a017a,_0x2ac687(0x9e)+_0xc9147f+_0x2ac687(0xa0));throw menuFailure(_0x2b7eb5,_0x1d3e17,{'stage':_0x2ac687(0xbd),'succeeded':[{'id':_0xc9147f,'created':!![],'path':_0x639f37}],'failed':{'id':_0xc9147f,'finalFactsConfirmed':![],..._0x34c68d},'warnings':[_0x2ac687(0x9e)+_0xc9147f+_0x2ac687(0xa6)+JSON[_0x2ac687(0xd2)](_0x639f37)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x226939,'id':_0xc9147f,'path':_0x639f37},'verification':{'status':_0x2ac687(0xc3),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0xc9147f}});}const _0x55fb44=_0x1ab926[_0x2ac687(0xab)]['get'](_0xc9147f);let _0x33b3c7;try{assertVerified(Boolean(_0x55fb44),_0x2ac687(0xa3)+_0xc9147f+_0x2ac687(0xb8)),_0x33b3c7=_0x55fb44,assertVerified(_0x33b3c7[_0x2ac687(0x95)]===_0x2ac687(0xd4),_0x2ac687(0xcf)+_0xc9147f+_0x2ac687(0xc7)),assertVerified(_0x33b3c7[_0x2ac687(0xba)]===_0x226939[_0x2ac687(0xba)],_0x2ac687(0xa3)+_0xc9147f+_0x2ac687(0xb7)),assertVerified(_0x33b3c7[_0x2ac687(0xb3)]===_0x639f37&&Boolean(_0x33b3c7[_0x2ac687(0xb3)][_0x2ac687(0xc1)]()),_0x2ac687(0xa3)+_0xc9147f+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x33b3c7['visible']===!![],_0x2ac687(0xa3)+_0xc9147f+_0x2ac687(0xc2)),assertVerified(_0x33b3c7[_0x2ac687(0xb9)][_0x2ac687(0x9b)]===0x0,_0x2ac687(0xa3)+_0xc9147f+_0x2ac687(0xb2)),assertVerified(_0x33b3c7[_0x2ac687(0xd7)]===0x0,_0x2ac687(0xa3)+_0xc9147f+_0x2ac687(0xa9)),assertVerified(_0x33b3c7[_0x2ac687(0xd3)]===_0x226939[_0x2ac687(0xd3)],'Created\x20folder\x20'+_0xc9147f+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x33b3c7[_0x2ac687(0xb4)]===_0x226939[_0x2ac687(0xb4)],_0x2ac687(0xa3)+_0xc9147f+'\x20has\x20unexpected\x20parent\x20'+(_0x33b3c7['parentId']??_0x2ac687(0xd8))+'.'),assertVerified(_0x33b3c7['pageId']==null,_0x2ac687(0xa3)+_0xc9147f+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x4087b9=_0x33b3c7[_0x2ac687(0xb4)]==null?undefined:requireFolder(_0x1ab926,_0x33b3c7['parentId']);assertVerified(_0x33b3c7['depth']===(_0x4087b9?_0x4087b9[_0x2ac687(0xc6)]+0x1:0x0),'Created\x20folder\x20'+_0xc9147f+_0x2ac687(0xc4));}catch(_0x22719f){const _0x4bddb9=describeMenuErrorCause(_0x22719f,_0x2ac687(0xc0),_0xc9147f),_0x3f4e52=asVerificationError(_0x22719f,'Folder\x20'+_0xc9147f+_0x2ac687(0x9c));throw menuFailure(_0x3f4e52,_0x1d3e17,{'stage':_0x2ac687(0xbd),'succeeded':[{'id':_0xc9147f,'created':!![],'path':_0x639f37}],'failed':{'id':_0xc9147f,'finalFactsConfirmed':![],..._0x4bddb9},'warnings':[_0x2ac687(0x9e)+_0xc9147f+_0x2ac687(0xad)],'after':_0x55fb44??{..._0x226939,'id':_0xc9147f,'path':_0x639f37},'verification':{'status':_0x2ac687(0xc3),'lookupCommand':_0x2ac687(0xbb),'targetId':_0xc9147f}});}const _0x2b90f5=mutationResult({..._0x1d3e17,'after':_0x33b3c7,'dryRun':![],'succeeded':[{'id':_0xc9147f,'type':'folder','path':_0x639f37}],'verification':{'checkedBy':_0x2ac687(0xd0),'snapshotHash':_0x1ab926['hash'],'folder':!![],'path':_0x639f37,'emptyResources':!![]}});return{'ok':!![],'data':_0x2b90f5,'message':_0x2ac687(0xd6)+_0xc9147f+'.'};}};function validateCreateInput(_0x2fcc6f){const _0x5321fa=a114_0x47c9f1,_0x11568b=_0x2fcc6f[_0x5321fa(0xce)](_0x5321fa(0xba))[_0x5321fa(0xc1)]();if(!_0x11568b)throw CliErrors[_0x5321fa(0xcc)](_0x5321fa(0xba));parseParentId(_0x2fcc6f,_0x5321fa(0xd5)),validateSort(_0x2fcc6f);}async function buildCreatePlan(_0x221d21,_0x332c51){const _0x57bee5=a114_0x47c9f1,_0x4bfa42=await fetchMutationSnapshot(_0x221d21,'create\x20folder'),_0x298fcd=parseParentId(_0x221d21,_0x57bee5(0xd5))??null;if(_0x298fcd!=null)requireFolder(_0x4bfa42,_0x298fcd);const _0x458218=validateSort(_0x221d21),_0x5affa7=_0x458218??nextSiblingSort(_0x4bfa42,_0x298fcd,_0x57bee5(0xd4)),_0x2cd2d2=_0x221d21[_0x57bee5(0xce)](_0x57bee5(0xba))[_0x57bee5(0xc1)]();return mutationResult({'operation':_0x57bee5(0x9d),'selector':{'label':_0x2cd2d2,'parentId':_0x298fcd},'before':null,'after':{'id':null,'parentId':_0x298fcd,'label':_0x2cd2d2,'path':_0x57bee5(0xa1),'type':_0x57bee5(0xd4),'visible':!![],'sort':_0x5affa7,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x332c51,'backend':[...BACKEND],'plannedActions':[{'stage':_0x57bee5(0xc5),'method':_0x57bee5(0xc9),'path':_0x57bee5(0xca),'body':{'parentId':toApiParentId(_0x298fcd),'label':_0x2cd2d2,'type':'folder','visible':!![],'sort':_0x5affa7,'extend':{}}}],'snapshotHash':_0x4bfa42['hash'],'warnings':[_0x57bee5(0xaf)]});}
|
|
1
|
+
const a115_0x41cfdc=a115_0xdc0c;(function(_0x34e95b,_0x434936){const _0x44c7e6=a115_0xdc0c,_0x1d614c=_0x34e95b();while(!![]){try{const _0x66b546=parseInt(_0x44c7e6(0x155))/0x1*(-parseInt(_0x44c7e6(0x14a))/0x2)+parseInt(_0x44c7e6(0x128))/0x3*(-parseInt(_0x44c7e6(0x145))/0x4)+parseInt(_0x44c7e6(0x135))/0x5+-parseInt(_0x44c7e6(0x144))/0x6+parseInt(_0x44c7e6(0x14d))/0x7+-parseInt(_0x44c7e6(0x12c))/0x8+parseInt(_0x44c7e6(0x153))/0x9;if(_0x66b546===_0x434936)break;else _0x1d614c['push'](_0x1d614c['shift']());}catch(_0x5250c7){_0x1d614c['push'](_0x1d614c['shift']());}}}(a115_0x2b13,0xd039b));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a115_0x2b13(){const _0x4b38d2=['1047140FWDXWA','Created\x20menu\x20folder\x20','<platform-generated>','menu','verification','isSafeInteger','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','get','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','Folder\x20','trim','\x22\x20with\x20a\x20platform-generated\x20path.','group-create','create-response-validation','appCode','8331348jfcTVG','3908SOUQGP','create\x20folder','menu_create_response_invalid','parent-id','\x20may\x20exist\x20online\x20at\x20path\x20','3361318RLrMUY','folder','resources','7702093EyCYVs','Menu\x20create\x20response\x20for\x20folder\x20','hash','create','visible','pageId','28593936zzZXOQ','Folder\x20label','1qxaFaA','/smartapi/menu/create','write','str','sort','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','path','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','after','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','\x20has\x20unexpected\x20parent\x20','\x20is\x20not\x20visible.','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','verify\x20folder\x20creation','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','rabetbase\x20menu\x20list\x20--format\x20json','depth','cookie','parentId','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','create-folder','Created\x20folder\x20','1563uWvOvf','POST','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','menu\x20list','445648quTBbg','\x20has\x20resources.','label','\x20is\x20not\x20type\x20folder.','byId','string','childrenCount','failed','\x20has\x20an\x20unexpected\x20sort.'];a115_0x2b13=function(){return _0x4b38d2;};return a115_0x2b13();}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a115_0x41cfdc(0x129),'path':'/smartapi/menu/create'}];function a115_0xdc0c(_0x3d567e,_0x577801){_0x3d567e=_0x3d567e-0x128;const _0x2b1362=a115_0x2b13();let _0xdc0c70=_0x2b1362[_0x3d567e];return _0xdc0c70;}export const menuGroupCreate={'service':a115_0x41cfdc(0x138),'command':'group-create','description':a115_0x41cfdc(0x12a),'risk':a115_0x41cfdc(0x157),'structuredErrors':!![],'flags':[{'name':a115_0x41cfdc(0x12e),'type':'string','required':!![],'description':a115_0x41cfdc(0x154)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x51b225){validateCreateInput(_0x51b225);},async 'dryRun'(_0x157b68){const _0x113601=a115_0x41cfdc,_0x24399d=await buildCreatePlan(_0x157b68,!![]),_0x102b5e=_0x24399d[_0x113601(0x15d)];return menuDryRunResult(_0x24399d,{'method':'POST','url':_0x113601(0x156),'body':{'parentId':toApiParentId(_0x102b5e[_0x113601(0x167)]),'label':_0x102b5e[_0x113601(0x12e)],'type':'folder','visible':!![],'sort':_0x102b5e['sort'],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x102b5e[_0x113601(0x12e)])+_0x113601(0x140)});},async 'execute'(_0x406caf){const _0x1c433d=a115_0x41cfdc;validateCreateInput(_0x406caf);const _0x15f83d=await buildCreatePlan(_0x406caf,![]),_0x15146d=_0x15f83d['after'];await recheckMutationSnapshot(_0x406caf,_0x15f83d,_0x1c433d(0x146));let _0x41c169;try{_0x41c169=await createMenuEntity(_0x406caf[_0x1c433d(0x143)],_0x406caf[_0x1c433d(0x166)],{'parentId':toApiParentId(_0x15146d['parentId']),'label':String(_0x15146d['label']),'type':_0x1c433d(0x14b),'visible':!![],'sort':Number(_0x15146d[_0x1c433d(0x159)]),'extend':{}});}catch(_0x3abd3a){const _0x1955fe=mapMenuApiError(_0x3abd3a,_0x1c433d(0x146));throw menuFailure(_0x1955fe,_0x15f83d,{'stage':_0x1c433d(0x150),'failed':{}});}const _0x3e2cb5=Number(_0x41c169['id']);if(!Number[_0x1c433d(0x13a)](_0x3e2cb5)||_0x3e2cb5<=0x0){const _0x31d926=menuError(_0x1c433d(0x147),_0x1c433d(0x15e),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.');throw menuFailure(_0x31d926,_0x15f83d,{'stage':_0x1c433d(0x142),'failed':{'createdId':_0x41c169['id']??null},'warnings':[_0x1c433d(0x13d)],'verification':{'status':_0x1c433d(0x133),'lookupCommand':_0x1c433d(0x164)}});}const _0x34b70b=typeof _0x41c169[_0x1c433d(0x15b)]===_0x1c433d(0x131)?_0x41c169[_0x1c433d(0x15b)]:'';if(!_0x34b70b[_0x1c433d(0x13f)]()){const _0x6e089f=menuError('menu_create_response_invalid',_0x1c433d(0x14e)+_0x3e2cb5+_0x1c433d(0x168),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x6e089f,_0x15f83d,{'stage':'create-response-validation','succeeded':[{'id':_0x3e2cb5,'created':!![]}],'failed':{'id':_0x3e2cb5,'generatedPathConfirmed':![]},'warnings':[_0x1c433d(0x13e)+_0x3e2cb5+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x15146d,'id':_0x3e2cb5,'path':_0x34b70b},'verification':{'status':'failed','lookupCommand':_0x1c433d(0x164),'targetId':_0x3e2cb5}});}let _0x11fac7;try{_0x11fac7=await fetchMenuSnapshot(_0x406caf['appCode'],_0x406caf[_0x1c433d(0x166)]);}catch(_0x3f9da6){const _0xfc83d6=describeMenuErrorCause(_0x3f9da6,_0x1c433d(0x162),_0x3e2cb5),_0x46c7ec=asVerificationError(_0x3f9da6,'Folder\x20'+_0x3e2cb5+_0x1c433d(0x15a));throw menuFailure(_0x46c7ec,_0x15f83d,{'stage':_0x1c433d(0x139),'succeeded':[{'id':_0x3e2cb5,'created':!![],'path':_0x34b70b}],'failed':{'id':_0x3e2cb5,'finalFactsConfirmed':![],..._0xfc83d6},'warnings':[_0x1c433d(0x13e)+_0x3e2cb5+_0x1c433d(0x149)+JSON['stringify'](_0x34b70b)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x15146d,'id':_0x3e2cb5,'path':_0x34b70b},'verification':{'status':_0x1c433d(0x133),'lookupCommand':_0x1c433d(0x164),'targetId':_0x3e2cb5}});}const _0x3551ee=_0x11fac7[_0x1c433d(0x130)][_0x1c433d(0x13c)](_0x3e2cb5);let _0x4d7bdf;try{assertVerified(Boolean(_0x3551ee),_0x1c433d(0x16a)+_0x3e2cb5+'\x20is\x20missing\x20from\x20menu\x20list.'),_0x4d7bdf=_0x3551ee,assertVerified(_0x4d7bdf['type']===_0x1c433d(0x14b),'Created\x20menu\x20'+_0x3e2cb5+_0x1c433d(0x12f)),assertVerified(_0x4d7bdf[_0x1c433d(0x12e)]===_0x15146d[_0x1c433d(0x12e)],'Created\x20folder\x20'+_0x3e2cb5+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x4d7bdf[_0x1c433d(0x15b)]===_0x34b70b&&Boolean(_0x4d7bdf[_0x1c433d(0x15b)]['trim']()),'Created\x20folder\x20'+_0x3e2cb5+_0x1c433d(0x15c)),assertVerified(_0x4d7bdf[_0x1c433d(0x151)]===!![],_0x1c433d(0x16a)+_0x3e2cb5+_0x1c433d(0x160)),assertVerified(_0x4d7bdf[_0x1c433d(0x14c)]['length']===0x0,_0x1c433d(0x16a)+_0x3e2cb5+_0x1c433d(0x12d)),assertVerified(_0x4d7bdf[_0x1c433d(0x132)]===0x0,_0x1c433d(0x16a)+_0x3e2cb5+'\x20is\x20not\x20empty.'),assertVerified(_0x4d7bdf[_0x1c433d(0x159)]===_0x15146d[_0x1c433d(0x159)],_0x1c433d(0x16a)+_0x3e2cb5+_0x1c433d(0x134)),assertVerified(_0x4d7bdf[_0x1c433d(0x167)]===_0x15146d[_0x1c433d(0x167)],_0x1c433d(0x16a)+_0x3e2cb5+_0x1c433d(0x15f)+(_0x4d7bdf['parentId']??'root')+'.'),assertVerified(_0x4d7bdf[_0x1c433d(0x152)]==null,_0x1c433d(0x16a)+_0x3e2cb5+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x6b64fd=_0x4d7bdf[_0x1c433d(0x167)]==null?undefined:requireFolder(_0x11fac7,_0x4d7bdf[_0x1c433d(0x167)]);assertVerified(_0x4d7bdf['depth']===(_0x6b64fd?_0x6b64fd[_0x1c433d(0x165)]+0x1:0x0),_0x1c433d(0x16a)+_0x3e2cb5+_0x1c433d(0x13b));}catch(_0x1ce64d){const _0x42bbba=describeMenuErrorCause(_0x1ce64d,_0x1c433d(0x162),_0x3e2cb5),_0x445b81=asVerificationError(_0x1ce64d,_0x1c433d(0x13e)+_0x3e2cb5+_0x1c433d(0x163));throw menuFailure(_0x445b81,_0x15f83d,{'stage':_0x1c433d(0x139),'succeeded':[{'id':_0x3e2cb5,'created':!![],'path':_0x34b70b}],'failed':{'id':_0x3e2cb5,'finalFactsConfirmed':![],..._0x42bbba},'warnings':[_0x1c433d(0x13e)+_0x3e2cb5+_0x1c433d(0x161)],'after':_0x3551ee??{..._0x15146d,'id':_0x3e2cb5,'path':_0x34b70b},'verification':{'status':_0x1c433d(0x133),'lookupCommand':_0x1c433d(0x164),'targetId':_0x3e2cb5}});}const _0x100249=mutationResult({..._0x15f83d,'after':_0x4d7bdf,'dryRun':![],'succeeded':[{'id':_0x3e2cb5,'type':_0x1c433d(0x14b),'path':_0x34b70b}],'verification':{'checkedBy':_0x1c433d(0x12b),'snapshotHash':_0x11fac7[_0x1c433d(0x14f)],'folder':!![],'path':_0x34b70b,'emptyResources':!![]}});return{'ok':!![],'data':_0x100249,'message':_0x1c433d(0x136)+_0x3e2cb5+'.'};}};function validateCreateInput(_0x5e3e7f){const _0x369120=a115_0x41cfdc,_0x2dd31c=_0x5e3e7f['str'](_0x369120(0x12e))[_0x369120(0x13f)]();if(!_0x2dd31c)throw CliErrors['flagMissing'](_0x369120(0x12e));parseParentId(_0x5e3e7f,_0x369120(0x148)),validateSort(_0x5e3e7f);}async function buildCreatePlan(_0x4fc29d,_0x1ab121){const _0x2a445d=a115_0x41cfdc,_0x146eee=await fetchMutationSnapshot(_0x4fc29d,'create\x20folder'),_0x533b76=parseParentId(_0x4fc29d,_0x2a445d(0x148))??null;if(_0x533b76!=null)requireFolder(_0x146eee,_0x533b76);const _0x48028e=validateSort(_0x4fc29d),_0x4bcedc=_0x48028e??nextSiblingSort(_0x146eee,_0x533b76,_0x2a445d(0x14b)),_0x2ac695=_0x4fc29d[_0x2a445d(0x158)](_0x2a445d(0x12e))[_0x2a445d(0x13f)]();return mutationResult({'operation':_0x2a445d(0x141),'selector':{'label':_0x2ac695,'parentId':_0x533b76},'before':null,'after':{'id':null,'parentId':_0x533b76,'label':_0x2ac695,'path':_0x2a445d(0x137),'type':_0x2a445d(0x14b),'visible':!![],'sort':_0x4bcedc,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x1ab121,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2a445d(0x169),'method':_0x2a445d(0x129),'path':_0x2a445d(0x156),'body':{'parentId':toApiParentId(_0x533b76),'label':_0x2ac695,'type':'folder','visible':!![],'sort':_0x4bcedc,'extend':{}}}],'snapshotHash':_0x146eee['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a116_0x2b5a(_0x45f214,_0x5dbbfe){_0x45f214=_0x45f214-0x14c;const _0x57d906=a116_0x57d9();let _0x2b5abe=_0x57d906[_0x45f214];return _0x2b5abe;}const a116_0x5a40b6=a116_0x2b5a;(function(_0x2ac608,_0x5080b3){const _0x531de6=a116_0x2b5a,_0x476639=_0x2ac608();while(!![]){try{const _0x5cdb98=-parseInt(_0x531de6(0x16c))/0x1*(parseInt(_0x531de6(0x182))/0x2)+parseInt(_0x531de6(0x175))/0x3+parseInt(_0x531de6(0x174))/0x4+parseInt(_0x531de6(0x171))/0x5*(-parseInt(_0x531de6(0x177))/0x6)+parseInt(_0x531de6(0x14d))/0x7*(parseInt(_0x531de6(0x150))/0x8)+-parseInt(_0x531de6(0x163))/0x9*(-parseInt(_0x531de6(0x14f))/0xa)+-parseInt(_0x531de6(0x164))/0xb*(parseInt(_0x531de6(0x156))/0xc);if(_0x5cdb98===_0x5080b3)break;else _0x476639['push'](_0x476639['shift']());}catch(_0x2a8390){_0x476639['push'](_0x476639['shift']());}}}(a116_0x57d9,0x74f29));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a116_0x5a40b6(0x166),'path':a116_0x5a40b6(0x179)}];export const menuGroupUpdate={'service':a116_0x5a40b6(0x15f),'command':a116_0x5a40b6(0x16d),'description':a116_0x5a40b6(0x168),'risk':a116_0x5a40b6(0x16f),'structuredErrors':!![],'rejectedFlags':[{'name':a116_0x5a40b6(0x16e),'message':a116_0x5a40b6(0x17f),'hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a116_0x5a40b6(0x162),'type':a116_0x5a40b6(0x167),'description':a116_0x5a40b6(0x157)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x392d8d){validateUpdateInput(_0x392d8d);},async 'dryRun'(_0x464086){const _0x465db7=a116_0x5a40b6;validateUpdateInput(_0x464086);const {plan:_0x425caa,patch:_0x853b0e}=await buildUpdatePlan(_0x464086,!![]);return menuDryRunResult(_0x425caa,{'method':_0x465db7(0x166),'url':_0x465db7(0x179),'body':_0x853b0e,'description':'Would\x20update\x20folder\x20'+_0x425caa[_0x465db7(0x17a)]['id']+'.'});},async 'execute'(_0x434730){const _0x4aac4a=a116_0x5a40b6;validateUpdateInput(_0x434730);const {plan:_0x477874,patch:_0x5f4998,noChanges:_0x3a14e8}=await buildUpdatePlan(_0x434730,![]),_0x3a55ba=Number(_0x477874[_0x4aac4a(0x17a)]['id']),_0x39612b=await recheckMutationSnapshot(_0x434730,_0x477874,_0x4aac4a(0x16a),_0x3a55ba);if(!_0x3a14e8)try{await updateMenuEntity(_0x434730['appCode'],_0x434730['cookie'],_0x5f4998);}catch(_0x1f3cf7){const _0x32abfd=mapMenuApiError(_0x1f3cf7,_0x4aac4a(0x16a),_0x3a55ba);throw menuFailure(_0x32abfd,_0x477874,{'stage':_0x4aac4a(0x180),'failed':{'id':_0x3a55ba}});}let _0x779064=_0x39612b,_0x3ba156;try{!_0x3a14e8&&(_0x779064=await fetchMenuSnapshot(_0x434730[_0x4aac4a(0x152)],_0x434730['cookie'])),_0x3ba156=requireMenu(_0x779064,_0x3a55ba),verifyPatch(_0x3ba156,_0x5f4998),_0x3ba156[_0x4aac4a(0x160)]!=null&&requireFolder(_0x779064,_0x3ba156[_0x4aac4a(0x160)]);}catch(_0x4c8f6b){const _0x2ea23e=describeMenuErrorCause(_0x4c8f6b,_0x4aac4a(0x17c),_0x3a55ba),_0x3d1cbf=asVerificationError(_0x4c8f6b,_0x4aac4a(0x161)+_0x3a55ba+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x3d1cbf,_0x477874,{'stage':_0x4aac4a(0x170),'succeeded':[{'id':_0x3a55ba,'updateRequested':!_0x3a14e8,'skipped':_0x3a14e8}],'failed':{'id':_0x3a55ba,'requestedStateConfirmed':![],..._0x2ea23e},'warnings':[_0x4aac4a(0x155)],'verification':{'status':'failed','lookupCommand':_0x4aac4a(0x181),'targetId':_0x3a55ba}});}const _0xe31d90=mutationResult({..._0x477874,'after':_0x3ba156,'dryRun':![],'succeeded':[{'id':_0x3a55ba,'updated':!_0x3a14e8,'skipped':_0x3a14e8}],'verification':{'checkedBy':_0x4aac4a(0x165),'snapshotHash':_0x779064[_0x4aac4a(0x16b)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0xe31d90,'message':_0x3a14e8?'Folder\x20'+_0x3a55ba+_0x4aac4a(0x15a):_0x4aac4a(0x173)+_0x3a55ba+'.'};}};function a116_0x57d9(){const _0x562acc=['Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','No\x20online\x20fields\x20would\x20change.','update\x20folder','hash','67nOUxtz','group-update','parent-id','write','verification','35755XFWoqQ','validation','Updated\x20folder\x20','1349728VmQemL','2547057knKiJA','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','660RzieqJ','\x20label\x20update\x20did\x20not\x20take\x20effect.','/smartapi/menu/update','selector','menu_not_folder','verify\x20folder\x20update','--label\x20cannot\x20be\x20empty.','str','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','update','rabetbase\x20menu\x20list\x20--format\x20json','22686gutfPQ','Menu\x20','483NNKxWO','trim','190IBXtzC','82504cYYzaa','Folder\x20','appCode','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','\x22,\x20not\x20folder.','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','5811564EpdJhw','New\x20folder\x20label','\x20sort\x20update\x20did\x20not\x20take\x20effect.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','\x20already\x20matches\x20the\x20requested\x20state.','folder','type','sort','\x20is\x20type\x20\x22','menu','parentId','Update\x20request\x20for\x20folder\x20','label','289827JqjEnt','11ByOkzD','menu\x20list','POST','string'];a116_0x57d9=function(){return _0x562acc;};return a116_0x57d9();}function validateUpdateInput(_0x19dda0){const _0x6ff5aa=a116_0x5a40b6;validateExactId(_0x19dda0);if(hasFlag(_0x19dda0,_0x6ff5aa(0x16e)))throw CliErrors['validation'](_0x6ff5aa(0x17f),_0x6ff5aa(0x176));if(!hasFlag(_0x19dda0,_0x6ff5aa(0x162))&&!hasFlag(_0x19dda0,_0x6ff5aa(0x15d)))throw CliErrors[_0x6ff5aa(0x172)](_0x6ff5aa(0x153));if(hasFlag(_0x19dda0,_0x6ff5aa(0x162))&&!_0x19dda0['str'](_0x6ff5aa(0x162))[_0x6ff5aa(0x14e)]())throw CliErrors['validation'](_0x6ff5aa(0x17d));validateSort(_0x19dda0);}async function buildUpdatePlan(_0x5a14be,_0x312c31){const _0x567236=a116_0x5a40b6,_0x118848=validateExactId(_0x5a14be),_0xea2ab8=await fetchMutationSnapshot(_0x5a14be,'update\x20folder',_0x118848),_0x42bb2e=requireMenu(_0xea2ab8,_0x118848);if(_0x42bb2e['type']!==_0x567236(0x15b))throw menuError(_0x567236(0x17b),_0x567236(0x14c)+_0x118848+_0x567236(0x15e)+(_0x42bb2e['type']||'unknown')+_0x567236(0x154),_0x567236(0x159));assertExpectedState(_0x5a14be,_0x42bb2e);const _0x1b7d7a={'id':_0x118848},_0x2e6bfa={..._0x42bb2e};if(hasFlag(_0x5a14be,_0x567236(0x162))){const _0x3181ca=_0x5a14be[_0x567236(0x17e)](_0x567236(0x162))[_0x567236(0x14e)]();_0x1b7d7a[_0x567236(0x162)]=_0x3181ca,_0x2e6bfa[_0x567236(0x162)]=_0x3181ca;}if(hasFlag(_0x5a14be,_0x567236(0x15d))){const _0xe14a43=validateSort(_0x5a14be);_0x1b7d7a[_0x567236(0x15d)]=_0xe14a43,_0x2e6bfa[_0x567236(0x15d)]=_0xe14a43;}const _0x1d4a7c=sameRequestedState(_0x42bb2e,_0x2e6bfa),_0xc7ef75=_0x1d4a7c?[_0x567236(0x169)]:[];return{'patch':_0x1b7d7a,'noChanges':_0x1d4a7c,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x118848},'before':_0x42bb2e,'after':_0x2e6bfa,'dryRun':_0x312c31,'backend':[...BACKEND],'snapshotHash':_0xea2ab8[_0x567236(0x16b)],'warnings':_0xc7ef75})};}function sameRequestedState(_0x23fd6f,_0x183ab2){const _0x16c514=a116_0x5a40b6;return _0x23fd6f[_0x16c514(0x162)]===_0x183ab2['label']&&_0x23fd6f[_0x16c514(0x15d)]===_0x183ab2[_0x16c514(0x15d)];}function verifyPatch(_0x4f07a3,_0x507b68){const _0x2e36fe=a116_0x5a40b6;assertVerified(_0x4f07a3[_0x2e36fe(0x15c)]==='folder',_0x2e36fe(0x14c)+_0x4f07a3['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x507b68['label']!==undefined&&assertVerified(_0x4f07a3['label']===_0x507b68[_0x2e36fe(0x162)],'Folder\x20'+_0x4f07a3['id']+_0x2e36fe(0x178)),_0x507b68[_0x2e36fe(0x15d)]!==undefined&&assertVerified(_0x4f07a3[_0x2e36fe(0x15d)]===_0x507b68[_0x2e36fe(0x15d)],_0x2e36fe(0x151)+_0x4f07a3['id']+_0x2e36fe(0x158));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x478ba9,_0x7299aa){const _0x4a6df5=a117_0x13a5,_0x3087c2=_0x478ba9();while(!![]){try{const _0x554cf7=-parseInt(_0x4a6df5(0x19a))/0x1+-parseInt(_0x4a6df5(0x193))/0x2*(-parseInt(_0x4a6df5(0x190))/0x3)+-parseInt(_0x4a6df5(0x192))/0x4+-parseInt(_0x4a6df5(0x196))/0x5*(-parseInt(_0x4a6df5(0x194))/0x6)+parseInt(_0x4a6df5(0x195))/0x7*(-parseInt(_0x4a6df5(0x198))/0x8)+parseInt(_0x4a6df5(0x197))/0x9*(parseInt(_0x4a6df5(0x19b))/0xa)+parseInt(_0x4a6df5(0x191))/0xb*(parseInt(_0x4a6df5(0x199))/0xc);if(_0x554cf7===_0x7299aa)break;else _0x3087c2['push'](_0x3087c2['shift']());}catch(_0x19144){_0x3087c2['push'](_0x3087c2['shift']());}}}(a117_0x228a,0x6a8d2));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';function a117_0x13a5(_0xdebec2,_0x2883b4){_0xdebec2=_0xdebec2-0x190;const _0x228a91=a117_0x228a();let _0x13a5fa=_0x228a91[_0xdebec2];return _0x13a5fa;}import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';function a117_0x228a(){const _0x4d5de1=['1094XmEZDh','6HExYVH','13713djEUVW','1815805fCypXf','279iIACFP','8zbukKm','319272FZjUhK','32862RhAFPb','28090FBwCvE','2547RnHKQg','55OubXVZ','2305672KEexye'];a117_0x228a=function(){return _0x4d5de1;};return a117_0x228a();}import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a118_0x201db1=a118_0x12bf;(function(_0x35014b,_0x37c7df){const _0x26699e=a118_0x12bf,_0x3f32ec=_0x35014b();while(!![]){try{const _0x205607=parseInt(_0x26699e(0x1ed))/0x1+parseInt(_0x26699e(0x201))/0x2*(parseInt(_0x26699e(0x1fd))/0x3)+parseInt(_0x26699e(0x1f9))/0x4*(-parseInt(_0x26699e(0x1f1))/0x5)+-parseInt(_0x26699e(0x1fb))/0x6*(-parseInt(_0x26699e(0x1fc))/0x7)+-parseInt(_0x26699e(0x1f4))/0x8+parseInt(_0x26699e(0x1f7))/0x9+-parseInt(_0x26699e(0x1f0))/0xa;if(_0x205607===_0x37c7df)break;else _0x3f32ec['push'](_0x3f32ec['shift']());}catch(_0x531d7c){_0x3f32ec['push'](_0x3f32ec['shift']());}}}(a118_0x1acf,0xd0366));function a118_0x12bf(_0xe28ea6,_0x44dc82){_0xe28ea6=_0xe28ea6-0x1ec;const _0x1acfc8=a118_0x1acf();let _0x12bffc=_0x1acfc8[_0xe28ea6];return _0x12bffc;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a118_0x1acf(){const _0x2cfb48=['70987Rzfndu','6ncXEQR','bool','cookie','map','1595292yjDLYu','menu','1386229DCsbKX','boolean','total','28589570geXRMs','255ybjNMF','No\x20menus\x20found.','read','3618984IfMoyJ','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','hash','5884425CkJMZU','Found\x20','84988zJanKn','verbose','954nKkEYy'];a118_0x1acf=function(){return _0x2cfb48;};return a118_0x1acf();}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a118_0x201db1(0x1ec),'command':'list','description':'List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','risk':a118_0x201db1(0x1f3),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a118_0x201db1(0x1fa),'type':a118_0x201db1(0x1ee),'description':a118_0x201db1(0x1f5)}],async 'execute'(_0xad6ce5){const _0x148885=a118_0x201db1,_0x5b9a10=_0xad6ce5[_0x148885(0x1fe)](_0x148885(0x1fa)),_0x2d3091=await fetchMenuSnapshot(_0xad6ce5['appCode'],_0xad6ce5[_0x148885(0x1ff)],{'verbose':_0x5b9a10});return{'ok':!![],'data':{'total':_0x2d3091['total'],'snapshotHash':_0x2d3091[_0x148885(0x1f6)],'menus':_0x2d3091['menus'][_0x148885(0x200)](toMenuListItem)},'message':_0x2d3091[_0x148885(0x1ef)]===0x0?_0x148885(0x1f2):_0x148885(0x1f8)+_0x2d3091[_0x148885(0x1ef)]+'\x20menu(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a119_0xccd01e=a119_0x3ca6;function a119_0xab61(){const _0x10f2e1=['3551545fgKatv','menu\x20list',',\x20current\x20','menu_state_drift','Menu\x20','parent-id','hash','cookie','folder','4WFrDHk','924390mNPytW','rabetbase\x20menu\x20list\x20--format\x20compress','POST','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','/smartapi/menu/update','\x20parent\x20changed:\x20expected\x20','44466JIuQrb','menu_move_source_not_leaf','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','update','2QoeUWZ','156478vjQUFD','menu','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','parentId','1558149MsFowB','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','11SMzQyW','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','9385790HZEtPa','write','appCode','type','move','sort','verify\x20menu\x20move','after','378sdqWkC','Moved\x20menu\x20','childrenCount','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','70352wTIcoU','expect-parent-id'];a119_0xab61=function(){return _0x10f2e1;};return a119_0xab61();}(function(_0x12feaf,_0x332338){const _0x4d536b=a119_0x3ca6,_0x71f774=_0x12feaf();while(!![]){try{const _0x47cc18=parseInt(_0x4d536b(0x13b))/0x1*(parseInt(_0x4d536b(0x13c))/0x2)+-parseInt(_0x4d536b(0x140))/0x3*(parseInt(_0x4d536b(0x130))/0x4)+-parseInt(_0x4d536b(0x127))/0x5+parseInt(_0x4d536b(0x137))/0x6*(parseInt(_0x4d536b(0x14d))/0x7)+-parseInt(_0x4d536b(0x125))/0x8+parseInt(_0x4d536b(0x131))/0x9+parseInt(_0x4d536b(0x145))/0xa*(parseInt(_0x4d536b(0x143))/0xb);if(_0x47cc18===_0x332338)break;else _0x71f774['push'](_0x71f774['shift']());}catch(_0x974ee7){_0x71f774['push'](_0x71f774['shift']());}}}(a119_0xab61,0x57c33));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a119_0x3ca6(_0x3c9aa5,_0x4d76aa){_0x3c9aa5=_0x3c9aa5-0x123;const _0xab6188=a119_0xab61();let _0x3ca648=_0xab6188[_0x3c9aa5];return _0x3ca648;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':a119_0xccd01e(0x133),'path':a119_0xccd01e(0x135)}];export const menuMove={'service':a119_0xccd01e(0x13d),'command':'move','description':'Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','risk':a119_0xccd01e(0x146),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x104008){validateMoveInput(_0x104008);},async 'dryRun'(_0x49e137){const _0x473a2c=a119_0xccd01e,{plan:_0xd3151b,patch:_0x47ae8f}=await buildMovePlan(_0x49e137,!![]);return menuDryRunResult(_0xd3151b,{'method':_0x473a2c(0x133),'url':_0x473a2c(0x135),'body':{..._0x47ae8f,'appCode':_0x49e137[_0x473a2c(0x147)]},'description':'Would\x20move\x20menu\x20'+_0x47ae8f['id']+'.'});},async 'execute'(_0x6bb21){const _0x364ce8=a119_0xccd01e;validateMoveInput(_0x6bb21);const {plan:_0x4f74c1,patch:_0xb60328,noChanges:_0x358ae8,snapshot:_0x4a4738}=await buildMovePlan(_0x6bb21,![]),_0x234f70=_0xb60328['id'];if(!_0x358ae8)try{await updateMenuEntity(_0x6bb21[_0x364ce8(0x147)],_0x6bb21[_0x364ce8(0x12e)],_0xb60328);}catch(_0x2a581b){const _0x932c3e=mapMenuApiError(_0x2a581b,'move',_0x234f70);throw menuFailure(_0x932c3e,_0x4f74c1,{'stage':_0x364ce8(0x13a),'failed':{'id':_0x234f70},'warnings':[_0x364ce8(0x139)],'verification':{'status':'failed','targetId':_0x234f70,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0xbd255e,_0xf524c6;try{_0xbd255e=_0x358ae8?_0x4a4738:await fetchMenuSnapshot(_0x6bb21[_0x364ce8(0x147)],_0x6bb21[_0x364ce8(0x12e)]),_0xf524c6=requireMenu(_0xbd255e,_0x234f70),verifyMove(_0xf524c6,_0x4f74c1[_0x364ce8(0x14c)]),_0xf524c6[_0x364ce8(0x13f)]!==null&&requireFolder(_0xbd255e,_0xf524c6[_0x364ce8(0x13f)]);}catch(_0x15b1ba){const _0xf7c567=describeMenuErrorCause(_0x15b1ba,_0x364ce8(0x14b),_0x234f70),_0x36de68=asVerificationError(_0x15b1ba,'Move\x20request\x20for\x20menu\x20'+_0x234f70+_0x364ce8(0x13e));throw menuFailure(_0x36de68,_0x4f74c1,{'stage':'verification','succeeded':[{'id':_0x234f70,'updateRequested':!_0x358ae8,'skipped':_0x358ae8}],'failed':{'id':_0x234f70,'requestedStateConfirmed':![],..._0xf7c567},'warnings':[_0x364ce8(0x134)],'verification':{'status':'failed','targetId':_0x234f70,'lookupCommand':_0x364ce8(0x132)}});}const _0x3b3582=mutationResult({..._0x4f74c1,'after':_0xf524c6,'dryRun':![],'succeeded':[{'id':_0x234f70,'updated':!_0x358ae8,'skipped':_0x358ae8}],'verification':{'checkedBy':_0x364ce8(0x128),'snapshotHash':_0xbd255e['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x3b3582,'message':_0x358ae8?'Menu\x20'+_0x234f70+'\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.':_0x364ce8(0x14e)+_0x234f70+'.'};}};function validateMoveInput(_0x296782){const _0x2fd5cb=a119_0xccd01e;validateExactId(_0x296782),parseParentId(_0x296782,_0x2fd5cb(0x12c),{'required':!![]}),parseParentId(_0x296782,_0x2fd5cb(0x126),{'required':!![]}),validateSort(_0x296782);}async function buildMovePlan(_0x1cdb60,_0x1dcd9a){const _0x1d9b79=a119_0xccd01e,_0x108418=validateExactId(_0x1cdb60),_0x25f660=parseParentId(_0x1cdb60,_0x1d9b79(0x12c),{'required':!![]}),_0x5a58f=parseParentId(_0x1cdb60,_0x1d9b79(0x126),{'required':!![]}),_0xf206ba=validateSort(_0x1cdb60),_0x15d881=await fetchMutationSnapshot(_0x1cdb60,'move\x20menu',_0x108418),_0x1a039d=requireMenu(_0x15d881,_0x108418);if(_0x1a039d[_0x1d9b79(0x148)]===_0x1d9b79(0x12f)||_0x1a039d[_0x1d9b79(0x123)]!==0x0)throw menuError(_0x1d9b79(0x138),_0x1d9b79(0x12b)+_0x108418+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.',_0x1d9b79(0x144));if(_0x1a039d[_0x1d9b79(0x13f)]!==_0x5a58f)throw menuError(_0x1d9b79(0x12a),_0x1d9b79(0x12b)+_0x108418+_0x1d9b79(0x136)+formatParent(_0x5a58f)+_0x1d9b79(0x129)+formatParent(_0x1a039d[_0x1d9b79(0x13f)])+'.',_0x1d9b79(0x124));_0x25f660!==null&&requireFolder(_0x15d881,_0x25f660);const _0x59d8b7=_0xf206ba??(_0x1a039d['parentId']===_0x25f660?_0x1a039d[_0x1d9b79(0x14a)]??0x0:nextSiblingSort(_0x15d881,_0x25f660,_0x1d9b79(0x13d))),_0x4390ae={..._0x1a039d,'parentId':_0x25f660,'sort':_0x59d8b7},_0x10e403={'id':_0x108418,'parentId':toApiParentId(_0x25f660),'sort':_0x59d8b7},_0x4c4922=_0x1a039d[_0x1d9b79(0x13f)]===_0x25f660&&_0x1a039d[_0x1d9b79(0x14a)]===_0x59d8b7;return{'patch':_0x10e403,'noChanges':_0x4c4922,'snapshot':_0x15d881,'plan':mutationResult({'operation':_0x1d9b79(0x149),'selector':{'id':_0x108418,'parentId':_0x25f660},'before':_0x1a039d,'after':_0x4390ae,'dryRun':_0x1dcd9a,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':_0x1d9b79(0x133),'path':_0x1d9b79(0x135),'body':{..._0x10e403,'appCode':_0x1cdb60[_0x1d9b79(0x147)]}}],'snapshotHash':_0x15d881[_0x1d9b79(0x12d)],'warnings':_0x4c4922?['Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.']:[]})};}function verifyMove(_0x14fd9e,_0x48d159){const _0x23a70d=a119_0xccd01e;assertVerified(_0x14fd9e[_0x23a70d(0x148)]!==_0x23a70d(0x12f),'Menu\x20'+_0x14fd9e['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x14fd9e[_0x23a70d(0x123)]===0x0,_0x23a70d(0x12b)+_0x14fd9e['id']+'\x20is\x20no\x20longer\x20a\x20leaf.'),assertVerified(_0x14fd9e[_0x23a70d(0x13f)]===_0x48d159[_0x23a70d(0x13f)],_0x23a70d(0x12b)+_0x14fd9e['id']+_0x23a70d(0x142)),assertVerified(_0x14fd9e[_0x23a70d(0x14a)]===_0x48d159[_0x23a70d(0x14a)],_0x23a70d(0x12b)+_0x14fd9e['id']+_0x23a70d(0x141));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a119_0x51f180=a119_0x2a2d;(function(_0x5b9631,_0x2fac43){const _0x2f4026=a119_0x2a2d,_0x4fe6f5=_0x5b9631();while(!![]){try{const _0x2797a1=parseInt(_0x2f4026(0xf7))/0x1*(parseInt(_0x2f4026(0xee))/0x2)+-parseInt(_0x2f4026(0x10f))/0x3+parseInt(_0x2f4026(0x11a))/0x4*(parseInt(_0x2f4026(0xf4))/0x5)+parseInt(_0x2f4026(0xfe))/0x6*(-parseInt(_0x2f4026(0x127))/0x7)+parseInt(_0x2f4026(0x120))/0x8+parseInt(_0x2f4026(0x10a))/0x9+-parseInt(_0x2f4026(0x110))/0xa;if(_0x2797a1===_0x2fac43)break;else _0x4fe6f5['push'](_0x4fe6f5['shift']());}catch(_0xd22506){_0x4fe6f5['push'](_0x4fe6f5['shift']());}}}(a119_0x20a5,0xe6204));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a119_0x2a2d(_0x650550,_0x26e4a5){_0x650550=_0x650550-0xdd;const _0x20a536=a119_0x20a5();let _0x2a2dee=_0x20a536[_0x650550];return _0x2a2dee;}import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a119_0x20a5(){const _0x4c92e1=['menu','menu\x20list','Menus\x20','byId','length','replace','isTerminal','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','parentId','menuIds','44COTdkN','applied','Root\x20folder\x20label\x20','map','Menu\x20','get','2142465LjZhIX','Regroup\x20task\x20accepted.\x20','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','25778TgeDWi','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','sort','submit-regroup-task','SUCCESS','\x20menus\x20per\x20regroup\x20request.','validation','12228pONGpR','\x20--format\x20compress','some','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','--menu-ids\x20supports\x20at\x20most\x20','str','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','menu_regroup_label_conflict','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','label','15742800fXyeaB','\x27\x5c\x27\x27','start\x20menu\x20regroup','knownStatus','POST','1696107rfrHnP','31718460xPQuHu','group','size','stringify','regroup-submit','isSafeInteger','childrenCount','plan','failed','string','16XizDXn','join',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','hash','Regroup\x20task\x20','8636328RWRxJx','appCode','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','Regroup\x20readback\x20failed:\x20','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','status','<platform-generated>','1477NdJoEY','folder','taskId','FAILED','split','unconfirmed','message','/smartapi/menu/regroup','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','type','trim','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','Regroup\x20readback\x20also\x20failed:\x20','\x20and\x20regroup\x20menu\x20ids\x20','warnings','cookie','menu_regroup_already_applied','menu-ids','test','toLowerCase','regroup-start','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','input','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED'];a119_0x20a5=function(){return _0x4c92e1;};return a119_0x20a5();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a119_0x51f180(0x10e),'path':a119_0x51f180(0x12e)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a119_0x51f180(0xe2),'command':a119_0x51f180(0xde),'description':a119_0x51f180(0xe1),'risk':'write','structuredErrors':!![],'flags':[{'name':'label','type':a119_0x51f180(0x119),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':'menu-ids','type':'string','required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5c93e6){validateRegroupInput(_0x5c93e6);},async 'dryRun'(_0x4d3416){const _0x2d19c2=a119_0x51f180;validateRegroupInput(_0x4d3416);const _0x5251c2=await buildRegroupPlan(_0x4d3416,!![]);return menuDryRunResult(_0x5251c2[_0x2d19c2(0x117)],{'method':_0x2d19c2(0x10e),'url':_0x2d19c2(0x12e),'body':_0x5251c2[_0x2d19c2(0xe0)],'description':_0x2d19c2(0x101)+JSON[_0x2d19c2(0x113)](_0x5251c2[_0x2d19c2(0x109)])+_0x2d19c2(0x134)+_0x5251c2[_0x2d19c2(0xed)][_0x2d19c2(0x11b)](',\x20')+_0x2d19c2(0x11c)});},async 'execute'(_0x26c2e0){const _0x2f1efd=a119_0x51f180;validateRegroupInput(_0x26c2e0);const _0x1bf8fd=await buildRegroupPlan(_0x26c2e0,![]);await recheckMutationSnapshot(_0x26c2e0,_0x1bf8fd[_0x2f1efd(0x117)],'start\x20regroup');const _0x515f5d=buildMenuLookupCommand(_0x26c2e0[_0x2f1efd(0x121)]);let _0x4e61b7,_0x1f9a31;try{_0x4e61b7=await startMenuRegroup(_0x26c2e0[_0x2f1efd(0x136)],_0x1bf8fd['input']),_0x1f9a31=normalizeAsyncTask(_0x4e61b7);}catch(_0x59c1ab){const _0x525dcc=await inspectRegroupAfterFailure(_0x26c2e0['appCode'],_0x26c2e0[_0x2f1efd(0x136)],_0x1bf8fd[_0x2f1efd(0x109)],_0x1bf8fd[_0x2f1efd(0xed)]),_0x183271=typeof _0x4e61b7?.[_0x2f1efd(0x129)]===_0x2f1efd(0x119)&&_0x4e61b7[_0x2f1efd(0x129)][_0x2f1efd(0x131)]()?_0x4e61b7[_0x2f1efd(0x129)][_0x2f1efd(0x131)]():null,_0x3960d2=_0x183271?{'command':buildAsyncTaskStatusCommand(_0x183271,_0x26c2e0[_0x2f1efd(0x121)])}:null,_0x17d214=mapMenuApiError(_0x59c1ab,_0x2f1efd(0x10c));throw menuFailure(_0x17d214,_0x1bf8fd[_0x2f1efd(0x117)],{'stage':_0x2f1efd(0x114),'failed':{'menuIds':_0x1bf8fd[_0x2f1efd(0xed)],'taskId':_0x183271,'groupingApplied':_0x525dcc[_0x2f1efd(0xef)]?!![]:_0x2f1efd(0x12c)},'after':_0x525dcc[_0x2f1efd(0xef)]??null,'warnings':['The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.',..._0x525dcc['readbackError']?[_0x2f1efd(0x133)+_0x525dcc['readbackError']]:[],..._0x183271?[_0x2f1efd(0xdf)]:[]],'verification':{'status':_0x2f1efd(0x118),'groupingApplied':_0x525dcc[_0x2f1efd(0xef)]?!![]:_0x2f1efd(0x12c),'taskId':_0x183271,'query':_0x3960d2,'lookupCommand':_0x515f5d}});}const _0x5df9e6=buildAsyncTaskStatusCommand(_0x1f9a31[_0x2f1efd(0x129)],_0x26c2e0[_0x2f1efd(0x121)]);let _0x43a9c2=null,_0x342b0d=null,_0x13d57a=null;try{_0x43a9c2=await fetchMenuSnapshot(_0x26c2e0[_0x2f1efd(0x121)],_0x26c2e0[_0x2f1efd(0x136)]),_0x342b0d=findAppliedRegroup(_0x43a9c2,_0x1bf8fd[_0x2f1efd(0x109)],_0x1bf8fd[_0x2f1efd(0xed)]);}catch(_0x26f4e0){_0x13d57a=_0x26f4e0 instanceof Error?_0x26f4e0[_0x2f1efd(0x12d)]:String(_0x26f4e0);}const _0x1fa521=mutationResult({..._0x1bf8fd[_0x2f1efd(0x117)],'after':_0x342b0d??null,'dryRun':![],'succeeded':[{'groupId':_0x342b0d?.['group']['id']??null,'menuIds':_0x1bf8fd[_0x2f1efd(0xed)],'taskId':_0x1f9a31[_0x2f1efd(0x129)],'status':_0x1f9a31['status'],'groupingApplied':_0x342b0d?!![]:'unconfirmed'}],'verification':{'checkedBy':_0x2f1efd(0xe3),'snapshotHash':_0x43a9c2?.[_0x2f1efd(0x11e)]??null,'groupId':_0x342b0d?.['group']['id']??null,'groupingApplied':_0x342b0d?!![]:_0x2f1efd(0x12c),'readbackError':_0x13d57a,'lookupCommand':_0x515f5d},'warnings':[..._0x1bf8fd[_0x2f1efd(0x117)][_0x2f1efd(0x135)],...!_0x342b0d?[unconfirmedRegroupWarning(_0x1f9a31)]:[],..._0x13d57a?[_0x2f1efd(0x123)+_0x13d57a]:[]]}),_0x4c39f8=_0x1f9a31[_0x2f1efd(0x125)]==='SUCCESS'&&!_0x342b0d?_0x2f1efd(0x11f)+_0x1f9a31['taskId']+_0x2f1efd(0xeb):_0x2f1efd(0xf5)+asyncTaskMessage(_0x1f9a31);return{'ok':!![],'message':_0x4c39f8,'data':{..._0x1fa521,'task':_0x1f9a31,'query':_0x1f9a31[_0x2f1efd(0xe8)]?null:{'command':_0x5df9e6}}};}};function validateRegroupInput(_0x1e3918){const _0x57791a=a119_0x51f180;if(!_0x1e3918['str'](_0x57791a(0x109))[_0x57791a(0x131)]())throw CliErrors['flagMissing'](_0x57791a(0x109));parseMenuIds(_0x1e3918[_0x57791a(0x105)](_0x57791a(0x138)));}function parseMenuIds(_0x5b729e){const _0x287274=a119_0x51f180,_0x13de01=_0x5b729e[_0x287274(0x12b)](',')[_0x287274(0xf1)](_0x20d6f4=>_0x20d6f4[_0x287274(0x131)]());if(_0x13de01[_0x287274(0xe6)]===0x0||_0x13de01[_0x287274(0x100)](_0x813dec=>!_0x813dec))throw CliErrors[_0x287274(0xfd)](_0x287274(0x132));const _0x542438=_0x13de01[_0x287274(0xf1)](_0xde1b6f=>{const _0xa1d8a3=_0x287274;if(!/^\d+$/[_0xa1d8a3(0x139)](_0xde1b6f))throw CliErrors[_0xa1d8a3(0xfd)](_0xa1d8a3(0x132));const _0x392979=Number(_0xde1b6f);if(!Number[_0xa1d8a3(0x115)](_0x392979)||_0x392979<=0x0)throw CliErrors[_0xa1d8a3(0xfd)](_0xa1d8a3(0x132));return _0x392979;});if(new Set(_0x542438)[_0x287274(0x112)]!==_0x542438['length'])throw CliErrors[_0x287274(0xfd)]('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x542438[_0x287274(0xe6)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x287274(0xfd)](_0x287274(0x104)+MAX_REGROUP_MENU_COUNT+_0x287274(0xfc));return _0x542438;}function buildMenuLookupCommand(_0xec7bb2){const _0x1452de=a119_0x51f180,_0x3f6655='\x27'+_0xec7bb2[_0x1452de(0xe7)](/'/g,_0x1452de(0x10b))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x3f6655+_0x1452de(0xff);}function unconfirmedRegroupWarning(_0x79a3e0){const _0x2672a9=a119_0x51f180;if(_0x79a3e0['status']===_0x2672a9(0xfb))return _0x2672a9(0xf8);if(_0x79a3e0[_0x2672a9(0x125)]===_0x2672a9(0x12a))return _0x2672a9(0xf6);if(_0x79a3e0[_0x2672a9(0x10d)])return _0x2672a9(0x124);return _0x2672a9(0x122);}async function buildRegroupPlan(_0xcaad00,_0x424da4){const _0x2daf94=a119_0x51f180,_0x2c3b0d=_0xcaad00['str'](_0x2daf94(0x109))[_0x2daf94(0x131)](),_0x4a4f24=parseMenuIds(_0xcaad00[_0x2daf94(0x105)]('menu-ids')),_0x453c6c=await fetchMutationSnapshot(_0xcaad00,'plan\x20regroup'),_0x250199=_0x4a4f24['map'](_0xc54fcc=>requireMenu(_0x453c6c,_0xc54fcc));for(const _0x54150d of _0x250199){if(_0x54150d[_0x2daf94(0x130)][_0x2daf94(0x131)]()[_0x2daf94(0xdd)]()==='folder'||_0x54150d[_0x2daf94(0x116)]>0x0)throw menuError('menu_regroup_target_not_leaf','Menu\x20'+_0x54150d['id']+_0x2daf94(0x108),_0x2daf94(0x106));if(!_0x54150d[_0x2daf94(0x109)][_0x2daf94(0x131)]())throw menuError('menu_regroup_target_label_missing',_0x2daf94(0xf2)+_0x54150d['id']+'\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.',_0x2daf94(0x103));}const _0x3fad55=findAppliedRegroup(_0x453c6c,_0x2c3b0d,_0x4a4f24);if(_0x3fad55)throw menuError(_0x2daf94(0x137),_0x2daf94(0xe4)+_0x4a4f24['join'](',\x20')+_0x2daf94(0x11d)+_0x3fad55[_0x2daf94(0x111)]['id']+'\x20('+JSON['stringify'](_0x2c3b0d)+').',_0x2daf94(0xe9));const _0xd0aabd=_0x453c6c['menus']['filter'](_0xec417f=>_0xec417f['parentId']==null&&_0xec417f[_0x2daf94(0x130)][_0x2daf94(0x131)]()['toLowerCase']()===_0x2daf94(0x128)&&_0xec417f[_0x2daf94(0x109)]===_0x2c3b0d);if(_0xd0aabd[_0x2daf94(0xe6)]>0x0)throw menuError(_0x2daf94(0x107),_0x2daf94(0xf0)+JSON['stringify'](_0x2c3b0d)+_0x2daf94(0x102)+_0xd0aabd[_0x2daf94(0xf1)](_0x47d846=>_0x47d846['id'])['join'](',\x20')+'.',_0x2daf94(0xea));const _0x560ba4={'appCode':_0xcaad00['appCode'],'menuGroups':[{'label':_0x2c3b0d,'type':_0x2daf94(0x128),'children':_0x250199['map'](_0x4b896c=>({'id':_0x4b896c['id'],'label':_0x4b896c[_0x2daf94(0x109)]}))}]},_0x454f89=mutationResult({'operation':'regroup-start','selector':{'label':_0x2c3b0d,'menuIds':_0x4a4f24},'before':{'menus':_0x250199},'after':{'group':{'id':null,'parentId':null,'label':_0x2c3b0d,'path':_0x2daf94(0x126),'type':_0x2daf94(0x128),'childrenIds':_0x4a4f24},'children':_0x250199[_0x2daf94(0xf1)](_0x3cf075=>({'id':_0x3cf075['id'],'label':_0x3cf075[_0x2daf94(0x109)],'beforeParentId':_0x3cf075[_0x2daf94(0xec)],'afterParentId':'<new-group-id>'}))},'dryRun':_0x424da4,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2daf94(0xfa),'method':_0x2daf94(0x10e),'path':_0x2daf94(0x12e),'body':_0x560ba4}],'snapshotHash':_0x453c6c[_0x2daf94(0x11e)],'warnings':[_0x2daf94(0x12f),'The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.']});return{'label':_0x2c3b0d,'menuIds':_0x4a4f24,'input':_0x560ba4,'plan':_0x454f89};}function findAppliedRegroup(_0x36de4b,_0x2a5b34,_0x4c4a4a){const _0x318ac6=a119_0x51f180,_0x13f4b2=_0x4c4a4a[_0x318ac6(0xf1)](_0x13cb6d=>_0x36de4b['byId'][_0x318ac6(0xf3)](_0x13cb6d))['filter'](_0x8c2721=>Boolean(_0x8c2721));if(_0x13f4b2[_0x318ac6(0xe6)]!==_0x4c4a4a[_0x318ac6(0xe6)])return null;const _0x4c211a=_0x13f4b2[0x0]?.[_0x318ac6(0xec)];if(_0x4c211a==null||_0x13f4b2['some'](_0x179a46=>_0x179a46[_0x318ac6(0xec)]!==_0x4c211a))return null;const _0x2d1c7a=_0x36de4b[_0x318ac6(0xe5)]['get'](_0x4c211a);if(!_0x2d1c7a||_0x2d1c7a['parentId']!=null||_0x2d1c7a[_0x318ac6(0x130)][_0x318ac6(0x131)]()[_0x318ac6(0xdd)]()!==_0x318ac6(0x128)||_0x2d1c7a[_0x318ac6(0x109)]!==_0x2a5b34)return null;const _0x2879e2=[..._0x4c4a4a]['sort']((_0x38157c,_0x1dece5)=>_0x38157c-_0x1dece5),_0x325264=[..._0x2d1c7a['childrenIds']][_0x318ac6(0xf9)]((_0x405eff,_0x4de9ab)=>_0x405eff-_0x4de9ab);if(JSON[_0x318ac6(0x113)](_0x325264)!==JSON[_0x318ac6(0x113)](_0x2879e2))return null;return{'group':_0x2d1c7a,'children':_0x13f4b2};}async function inspectRegroupAfterFailure(_0x51e5f5,_0x511b85,_0x252e3a,_0xfa3306){const _0x8e79ac=a119_0x51f180;try{const _0x194df6=await fetchMenuSnapshot(_0x51e5f5,_0x511b85);return{'applied':findAppliedRegroup(_0x194df6,_0x252e3a,_0xfa3306),'readbackError':null};}catch(_0x2b1cba){return{'applied':null,'readbackError':_0x2b1cba instanceof Error?_0x2b1cba[_0x8e79ac(0x12d)]:String(_0x2b1cba)};}}
|
|
1
|
+
const a120_0x76860c=a120_0x3e85;(function(_0x22f195,_0xd36517){const _0x4980a1=a120_0x3e85,_0x14e558=_0x22f195();while(!![]){try{const _0x34d27d=-parseInt(_0x4980a1(0x18c))/0x1+parseInt(_0x4980a1(0x194))/0x2*(parseInt(_0x4980a1(0x184))/0x3)+-parseInt(_0x4980a1(0x190))/0x4+-parseInt(_0x4980a1(0x18b))/0x5*(parseInt(_0x4980a1(0x18d))/0x6)+-parseInt(_0x4980a1(0x165))/0x7*(-parseInt(_0x4980a1(0x17d))/0x8)+-parseInt(_0x4980a1(0x143))/0x9+parseInt(_0x4980a1(0x197))/0xa;if(_0x34d27d===_0xd36517)break;else _0x14e558['push'](_0x14e558['shift']());}catch(_0x18f7a7){_0x14e558['push'](_0x14e558['shift']());}}}(a120_0x19a0,0x3adde));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';function a120_0x19a0(){const _0x6458f3=['Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','string','hash','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','\x20menus\x20per\x20regroup\x20request.','menus','menu\x20list','message','--menu-ids\x20supports\x20at\x20most\x20','toLowerCase','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','Menus\x20','validation','get','type','map','menu-ids','\x20menu\x20list\x20--appcode\x20','menu','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','input','161JdHQbW','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','\x20and\x20regroup\x20menu\x20ids\x20','label',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','plan\x20regroup','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','size','readbackError','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','taskId','childrenCount','sort','filter','group','failed','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','parentId','Regroup\x20readback\x20failed:\x20','length','Regroup\x20readback\x20also\x20failed:\x20','isTerminal','plan','45048CKZBrN','isSafeInteger','/smartapi/menu/regroup','Regroup\x20task\x20','byId','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','2328UdbtZu','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','childrenIds','Regroup\x20task\x20accepted.\x20','some','applied','Menu\x20','53855eMbveH','182891OWWLTs','66jUDuFv','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','split','1361684QKjCGz','cookie','write','stringify','1096JmgsKF','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','trim','3854160MUxxmI','folder','POST','<platform-generated>','test','FAILED','submit-regroup-task','appCode','SUCCESS','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','515394upSYsd','regroup-start','warnings','menuIds','unconfirmed','replace','start\x20regroup','Root\x20folder\x20label\x20','menu_regroup_target_not_leaf','start\x20menu\x20regroup','str','status','join'];a120_0x19a0=function(){return _0x6458f3;};return a120_0x19a0();}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a120_0x76860c(0x139),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a120_0x76860c(0x162),'command':a120_0x76860c(0x144),'description':a120_0x76860c(0x150),'risk':a120_0x76860c(0x192),'structuredErrors':!![],'flags':[{'name':a120_0x76860c(0x168),'type':a120_0x76860c(0x151),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a120_0x76860c(0x160),'type':a120_0x76860c(0x151),'required':!![],'description':a120_0x76860c(0x15a)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2bf8be){validateRegroupInput(_0x2bf8be);},async 'dryRun'(_0x5e1852){const _0x4f4180=a120_0x76860c;validateRegroupInput(_0x5e1852);const _0x51a623=await buildRegroupPlan(_0x5e1852,!![]);return menuDryRunResult(_0x51a623[_0x4f4180(0x17c)],{'method':_0x4f4180(0x139),'url':_0x4f4180(0x17f),'body':_0x51a623[_0x4f4180(0x164)],'description':_0x4f4180(0x166)+JSON[_0x4f4180(0x193)](_0x51a623[_0x4f4180(0x168)])+_0x4f4180(0x167)+_0x51a623['menuIds'][_0x4f4180(0x14f)](',\x20')+_0x4f4180(0x169)});},async 'execute'(_0x2ccb19){const _0x44312b=a120_0x76860c;validateRegroupInput(_0x2ccb19);const _0x587371=await buildRegroupPlan(_0x2ccb19,![]);await recheckMutationSnapshot(_0x2ccb19,_0x587371[_0x44312b(0x17c)],_0x44312b(0x149));const _0x5492ee=buildMenuLookupCommand(_0x2ccb19[_0x44312b(0x13e)]);let _0x4d8695,_0xd7a171;try{_0x4d8695=await startMenuRegroup(_0x2ccb19[_0x44312b(0x191)],_0x587371[_0x44312b(0x164)]),_0xd7a171=normalizeAsyncTask(_0x4d8695);}catch(_0x42105f){const _0x173f1e=await inspectRegroupAfterFailure(_0x2ccb19['appCode'],_0x2ccb19[_0x44312b(0x191)],_0x587371['label'],_0x587371['menuIds']),_0x3609e8=typeof _0x4d8695?.['taskId']==='string'&&_0x4d8695[_0x44312b(0x170)][_0x44312b(0x196)]()?_0x4d8695[_0x44312b(0x170)][_0x44312b(0x196)]():null,_0x559a1c=_0x3609e8?{'command':buildAsyncTaskStatusCommand(_0x3609e8,_0x2ccb19[_0x44312b(0x13e)])}:null,_0x3fd32b=mapMenuApiError(_0x42105f,_0x44312b(0x14c));throw menuFailure(_0x3fd32b,_0x587371[_0x44312b(0x17c)],{'stage':'regroup-submit','failed':{'menuIds':_0x587371[_0x44312b(0x146)],'taskId':_0x3609e8,'groupingApplied':_0x173f1e[_0x44312b(0x189)]?!![]:'unconfirmed'},'after':_0x173f1e[_0x44312b(0x189)]??null,'warnings':[_0x44312b(0x163),..._0x173f1e[_0x44312b(0x16e)]?[_0x44312b(0x17a)+_0x173f1e[_0x44312b(0x16e)]]:[],..._0x3609e8?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':_0x44312b(0x175),'groupingApplied':_0x173f1e['applied']?!![]:_0x44312b(0x147),'taskId':_0x3609e8,'query':_0x559a1c,'lookupCommand':_0x5492ee}});}const _0xc0968d=buildAsyncTaskStatusCommand(_0xd7a171[_0x44312b(0x170)],_0x2ccb19[_0x44312b(0x13e)]);let _0x3a0513=null,_0x3db27d=null,_0x157f79=null;try{_0x3a0513=await fetchMenuSnapshot(_0x2ccb19['appCode'],_0x2ccb19[_0x44312b(0x191)]),_0x3db27d=findAppliedRegroup(_0x3a0513,_0x587371[_0x44312b(0x168)],_0x587371['menuIds']);}catch(_0x23593f){_0x157f79=_0x23593f instanceof Error?_0x23593f['message']:String(_0x23593f);}const _0x1509b1=mutationResult({..._0x587371[_0x44312b(0x17c)],'after':_0x3db27d??null,'dryRun':![],'succeeded':[{'groupId':_0x3db27d?.[_0x44312b(0x174)]['id']??null,'menuIds':_0x587371[_0x44312b(0x146)],'taskId':_0xd7a171['taskId'],'status':_0xd7a171[_0x44312b(0x14e)],'groupingApplied':_0x3db27d?!![]:_0x44312b(0x147)}],'verification':{'checkedBy':_0x44312b(0x156),'snapshotHash':_0x3a0513?.[_0x44312b(0x152)]??null,'groupId':_0x3db27d?.['group']['id']??null,'groupingApplied':_0x3db27d?!![]:_0x44312b(0x147),'readbackError':_0x157f79,'lookupCommand':_0x5492ee},'warnings':[..._0x587371[_0x44312b(0x17c)][_0x44312b(0x145)],...!_0x3db27d?[unconfirmedRegroupWarning(_0xd7a171)]:[],..._0x157f79?[_0x44312b(0x178)+_0x157f79]:[]]}),_0xcc3295=_0xd7a171['status']===_0x44312b(0x13f)&&!_0x3db27d?_0x44312b(0x180)+_0xd7a171[_0x44312b(0x170)]+_0x44312b(0x176):_0x44312b(0x187)+asyncTaskMessage(_0xd7a171);return{'ok':!![],'message':_0xcc3295,'data':{..._0x1509b1,'task':_0xd7a171,'query':_0xd7a171[_0x44312b(0x17b)]?null:{'command':_0xc0968d}}};}};function validateRegroupInput(_0x1edba6){const _0x830692=a120_0x76860c;if(!_0x1edba6[_0x830692(0x14d)]('label')[_0x830692(0x196)]())throw CliErrors['flagMissing']('label');parseMenuIds(_0x1edba6[_0x830692(0x14d)](_0x830692(0x160)));}function parseMenuIds(_0x4916e9){const _0x2de49a=a120_0x76860c,_0x3d7695=_0x4916e9[_0x2de49a(0x18f)](',')[_0x2de49a(0x15f)](_0x35ee79=>_0x35ee79[_0x2de49a(0x196)]());if(_0x3d7695[_0x2de49a(0x179)]===0x0||_0x3d7695[_0x2de49a(0x188)](_0x2d7d20=>!_0x2d7d20))throw CliErrors[_0x2de49a(0x15c)](_0x2de49a(0x183));const _0x44ad4a=_0x3d7695[_0x2de49a(0x15f)](_0xa5e5dd=>{const _0x57b81b=_0x2de49a;if(!/^\d+$/[_0x57b81b(0x13b)](_0xa5e5dd))throw CliErrors['validation'](_0x57b81b(0x183));const _0x56407b=Number(_0xa5e5dd);if(!Number[_0x57b81b(0x17e)](_0x56407b)||_0x56407b<=0x0)throw CliErrors[_0x57b81b(0x15c)](_0x57b81b(0x183));return _0x56407b;});if(new Set(_0x44ad4a)[_0x2de49a(0x16d)]!==_0x44ad4a['length'])throw CliErrors['validation']('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x44ad4a['length']>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x2de49a(0x158)+MAX_REGROUP_MENU_COUNT+_0x2de49a(0x154));return _0x44ad4a;}function buildMenuLookupCommand(_0x1569a0){const _0x267b4e=a120_0x76860c,_0x17cace='\x27'+_0x1569a0[_0x267b4e(0x148)](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+_0x267b4e(0x161)+_0x17cace+'\x20--format\x20compress';}function a120_0x3e85(_0x50a5ac,_0x2030a7){_0x50a5ac=_0x50a5ac-0x138;const _0x19a02b=a120_0x19a0();let _0x3e852d=_0x19a02b[_0x50a5ac];return _0x3e852d;}function unconfirmedRegroupWarning(_0x392922){const _0x10a414=a120_0x76860c;if(_0x392922[_0x10a414(0x14e)]===_0x10a414(0x13f))return _0x10a414(0x153);if(_0x392922[_0x10a414(0x14e)]===_0x10a414(0x13c))return _0x10a414(0x140);if(_0x392922['knownStatus'])return _0x10a414(0x141);return _0x10a414(0x182);}async function buildRegroupPlan(_0x4494a5,_0x59bb06){const _0x24a4e9=a120_0x76860c,_0x2b3912=_0x4494a5[_0x24a4e9(0x14d)](_0x24a4e9(0x168))[_0x24a4e9(0x196)](),_0x3fbd24=parseMenuIds(_0x4494a5[_0x24a4e9(0x14d)](_0x24a4e9(0x160))),_0x3fd8d3=await fetchMutationSnapshot(_0x4494a5,_0x24a4e9(0x16b)),_0x1873fb=_0x3fbd24['map'](_0x579f67=>requireMenu(_0x3fd8d3,_0x579f67));for(const _0x2a5f0d of _0x1873fb){if(_0x2a5f0d['type']['trim']()[_0x24a4e9(0x159)]()===_0x24a4e9(0x138)||_0x2a5f0d[_0x24a4e9(0x171)]>0x0)throw menuError(_0x24a4e9(0x14b),_0x24a4e9(0x18a)+_0x2a5f0d['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',_0x24a4e9(0x18e));if(!_0x2a5f0d[_0x24a4e9(0x168)]['trim']())throw menuError('menu_regroup_target_label_missing',_0x24a4e9(0x18a)+_0x2a5f0d['id']+_0x24a4e9(0x16c),_0x24a4e9(0x185));}const _0x418ffc=findAppliedRegroup(_0x3fd8d3,_0x2b3912,_0x3fbd24);if(_0x418ffc)throw menuError('menu_regroup_already_applied',_0x24a4e9(0x15b)+_0x3fbd24[_0x24a4e9(0x14f)](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0x418ffc[_0x24a4e9(0x174)]['id']+'\x20('+JSON[_0x24a4e9(0x193)](_0x2b3912)+').','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.');const _0x5efd97=_0x3fd8d3[_0x24a4e9(0x155)]['filter'](_0x20e4f6=>_0x20e4f6[_0x24a4e9(0x177)]==null&&_0x20e4f6[_0x24a4e9(0x15e)][_0x24a4e9(0x196)]()[_0x24a4e9(0x159)]()==='folder'&&_0x20e4f6[_0x24a4e9(0x168)]===_0x2b3912);if(_0x5efd97[_0x24a4e9(0x179)]>0x0)throw menuError('menu_regroup_label_conflict',_0x24a4e9(0x14a)+JSON[_0x24a4e9(0x193)](_0x2b3912)+_0x24a4e9(0x142)+_0x5efd97['map'](_0x2039ef=>_0x2039ef['id'])['join'](',\x20')+'.',_0x24a4e9(0x195));const _0x323612={'appCode':_0x4494a5[_0x24a4e9(0x13e)],'menuGroups':[{'label':_0x2b3912,'type':_0x24a4e9(0x138),'children':_0x1873fb[_0x24a4e9(0x15f)](_0x3abc01=>({'id':_0x3abc01['id'],'label':_0x3abc01[_0x24a4e9(0x168)]}))}]},_0x4f790b=mutationResult({'operation':_0x24a4e9(0x144),'selector':{'label':_0x2b3912,'menuIds':_0x3fbd24},'before':{'menus':_0x1873fb},'after':{'group':{'id':null,'parentId':null,'label':_0x2b3912,'path':_0x24a4e9(0x13a),'type':'folder','childrenIds':_0x3fbd24},'children':_0x1873fb[_0x24a4e9(0x15f)](_0x11a74e=>({'id':_0x11a74e['id'],'label':_0x11a74e[_0x24a4e9(0x168)],'beforeParentId':_0x11a74e['parentId'],'afterParentId':'<new-group-id>'}))},'dryRun':_0x59bb06,'backend':[...BACKEND],'plannedActions':[{'stage':_0x24a4e9(0x13d),'method':_0x24a4e9(0x139),'path':_0x24a4e9(0x17f),'body':_0x323612}],'snapshotHash':_0x3fd8d3['hash'],'warnings':[_0x24a4e9(0x16f),_0x24a4e9(0x16a)]});return{'label':_0x2b3912,'menuIds':_0x3fbd24,'input':_0x323612,'plan':_0x4f790b};}function findAppliedRegroup(_0x3fc1f2,_0x12316d,_0x45f185){const _0x53d698=a120_0x76860c,_0x8cdf17=_0x45f185[_0x53d698(0x15f)](_0x45a9f8=>_0x3fc1f2[_0x53d698(0x181)][_0x53d698(0x15d)](_0x45a9f8))[_0x53d698(0x173)](_0x34a6c5=>Boolean(_0x34a6c5));if(_0x8cdf17['length']!==_0x45f185[_0x53d698(0x179)])return null;const _0x2557ba=_0x8cdf17[0x0]?.[_0x53d698(0x177)];if(_0x2557ba==null||_0x8cdf17[_0x53d698(0x188)](_0x597d80=>_0x597d80['parentId']!==_0x2557ba))return null;const _0xbc8096=_0x3fc1f2[_0x53d698(0x181)][_0x53d698(0x15d)](_0x2557ba);if(!_0xbc8096||_0xbc8096[_0x53d698(0x177)]!=null||_0xbc8096[_0x53d698(0x15e)][_0x53d698(0x196)]()[_0x53d698(0x159)]()!==_0x53d698(0x138)||_0xbc8096[_0x53d698(0x168)]!==_0x12316d)return null;const _0x31d0af=[..._0x45f185][_0x53d698(0x172)]((_0x12f883,_0x550056)=>_0x12f883-_0x550056),_0x257ddb=[..._0xbc8096[_0x53d698(0x186)]][_0x53d698(0x172)]((_0x403f43,_0x3f151a)=>_0x403f43-_0x3f151a);if(JSON[_0x53d698(0x193)](_0x257ddb)!==JSON[_0x53d698(0x193)](_0x31d0af))return null;return{'group':_0xbc8096,'children':_0x8cdf17};}async function inspectRegroupAfterFailure(_0xd77cf1,_0xda282,_0x42916a,_0x302865){const _0x549341=a120_0x76860c;try{const _0x5d6e3e=await fetchMenuSnapshot(_0xd77cf1,_0xda282);return{'applied':findAppliedRegroup(_0x5d6e3e,_0x42916a,_0x302865),'readbackError':null};}catch(_0x54d457){return{'applied':null,'readbackError':_0x54d457 instanceof Error?_0x54d457[_0x549341(0x157)]:String(_0x54d457)};}}
|