@lovrabet/rabetbase-cli 2.3.14 → 2.3.15-beta.2
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/add.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/remove.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/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.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/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 -0
- 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/notification/config-list.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/ocr/index.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/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/permit/index.js +1 -1
- package/lib/commands/permit/page-get.js +1 -1
- package/lib/commands/permit/page-set.js +1 -1
- package/lib/commands/permit/role-apis-set.js +1 -1
- package/lib/commands/permit/role-menus-set.js +1 -1
- package/lib/commands/permit/role-menus.js +1 -1
- package/lib/commands/permit/shared.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/non-interactive.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/init.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/create.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/save.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/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.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/copy-directory.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
|
@@ -1 +1 @@
|
|
|
1
|
-
const a103_0x4bd9f8=a103_0x9329;(function(_0x1ace1f,_0x91bd92){const _0x1b35f0=a103_0x9329,_0x32c8f7=_0x1ace1f();while(!![]){try{const _0x3e1044=parseInt(_0x1b35f0(0x12b))/0x1*(parseInt(_0x1b35f0(0x10d))/0x2)+-parseInt(_0x1b35f0(0x146))/0x3+parseInt(_0x1b35f0(0x16c))/0x4*(parseInt(_0x1b35f0(0x131))/0x5)+parseInt(_0x1b35f0(0x107))/0x6*(-parseInt(_0x1b35f0(0x15b))/0x7)+parseInt(_0x1b35f0(0x188))/0x8*(parseInt(_0x1b35f0(0x192))/0x9)+-parseInt(_0x1b35f0(0x161))/0xa+-parseInt(_0x1b35f0(0x174))/0xb*(-parseInt(_0x1b35f0(0x17b))/0xc);if(_0x3e1044===_0x91bd92)break;else _0x32c8f7['push'](_0x32c8f7['shift']());}catch(_0x33a5aa){_0x32c8f7['push'](_0x32c8f7['shift']());}}}(a103_0x5e33,0xbed56));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a103_0x9329(_0x1922fd,_0x2ab572){_0x1922fd=_0x1922fd-0x104;const _0x5e33ba=a103_0x5e33();let _0x932936=_0x5e33ba[_0x1922fd];return _0x932936;}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':a103_0x4bd9f8(0x15c)};export function validateExternalMenuUrl(_0x5c648d){const _0x5a429f=a103_0x4bd9f8,_0x1f20eb=_0x5c648d['trim']();let _0x543d5f;try{_0x543d5f=new URL(_0x1f20eb);}catch{throw menuError(_0x5a429f(0x155),_0x5a429f(0x128),'Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x543d5f[_0x5a429f(0x13d)]!=='https:')throw menuError(_0x5a429f(0x189),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.','Provide\x20an\x20HTTPS\x20URL.');if(_0x543d5f['username']||_0x543d5f['password'])throw menuError(_0x5a429f(0x16b),_0x5a429f(0x15a),_0x5a429f(0x154));return _0x1f20eb;}export const menuExternalLinkCreate={'service':a103_0x4bd9f8(0x105),'command':a103_0x4bd9f8(0x16a),'description':a103_0x4bd9f8(0x164),'risk':a103_0x4bd9f8(0x183),'structuredErrors':!![],'flags':[{'name':a103_0x4bd9f8(0x10e),'type':'string','required':!![],'description':'Menu\x20label'},{'name':'open-mode','type':a103_0x4bd9f8(0x16f),'required':!![],'enum':[a103_0x4bd9f8(0x18f),a103_0x4bd9f8(0x156)],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a103_0x4bd9f8(0x130),'type':'string','required':!![],'description':a103_0x4bd9f8(0x186)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a103_0x4bd9f8(0x112),'type':a103_0x4bd9f8(0x177),'default':!![],'description':a103_0x4bd9f8(0x190)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4ddba9){validateAddInput(_0x4ddba9);},async 'dryRun'(_0x528efe){const _0x2b41a7=a103_0x4bd9f8;validateAddInput(_0x528efe);const {plan:_0x3e00c6}=await buildSafeAddPlan(_0x528efe,!![]),_0x43b038=_0x3e00c6[_0x2b41a7(0x110)],_0x4287c9=createBody(_0x43b038);return menuDryRunResult(_0x3e00c6,{'method':'POST','url':_0x2b41a7(0x160),'body':_0x4287c9,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON[_0x2b41a7(0x16d)](_0x43b038[_0x2b41a7(0x10e)])+_0x2b41a7(0x147)+_0x528efe[_0x2b41a7(0x149)](_0x2b41a7(0x138))+_0x2b41a7(0x13a)});},async 'execute'(_0x1ea73b){const _0x33d5b0=a103_0x4bd9f8;validateAddInput(_0x1ea73b);const _0x2f7aae=await buildSafeAddPlan(_0x1ea73b,![]),{plan:_0x7816d,snapshot:_0x3fa632}=_0x2f7aae,_0x3efcb0=_0x7816d[_0x33d5b0(0x110)],_0x159fb6=buildMenuLookupCommand(_0x1ea73b['appCode']);await recheckAddSnapshot(_0x1ea73b,_0x7816d);let _0x3bc635;try{_0x3bc635=await createMenuEntity(_0x1ea73b[_0x33d5b0(0x108)],_0x1ea73b[_0x33d5b0(0x11d)],createBody(_0x3efcb0));}catch(_0x2e123b){const _0x313c2e=mapMenuApiError(_0x2e123b,_0x33d5b0(0x158));if(!isMenuResponseLoss(_0x2e123b)||_0x313c2e[_0x33d5b0(0x11a)]===_0x33d5b0(0x15f))throw externalLinkCreateFailure(_0x313c2e,_0x7816d,{'stage':_0x33d5b0(0x120),'failed':{},'verification':{'status':_0x33d5b0(0x18c),'lookupCommand':_0x159fb6}});return recoverAfterResponseLoss(_0x1ea73b,_0x2f7aae,_0x159fb6);}const _0x473889=Number(_0x3bc635?.['id']),_0xa08a25=typeof _0x3bc635?.[_0x33d5b0(0x194)]==='string'?_0x3bc635[_0x33d5b0(0x194)]:'';if(!Number[_0x33d5b0(0x134)](_0x473889)||_0x473889<=0x0||!_0xa08a25[_0x33d5b0(0x143)]()){const _0x13c9e2=menuError(_0x33d5b0(0x11b),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Run\x20'+_0x159fb6+_0x33d5b0(0x11c));throw externalLinkCreateFailure(_0x13c9e2,_0x7816d,{'stage':'create-response-validation','succeeded':Number[_0x33d5b0(0x134)](_0x473889)&&_0x473889>0x0?[{'id':_0x473889,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x473889)?_0x473889:null,'generatedPathConfirmed':Boolean(_0xa08a25['trim']())},'warnings':[_0x33d5b0(0x181)],'after':Number[_0x33d5b0(0x134)](_0x473889)&&_0x473889>0x0?{..._0x3efcb0,'id':_0x473889,'path':_0xa08a25}:_0x3efcb0,'verification':{'status':'failed','lookupCommand':_0x159fb6,...Number[_0x33d5b0(0x134)](_0x473889)&&_0x473889>0x0?{'targetId':_0x473889}:{}}});}const _0x34ad87=await readAndVerifyCreatedMenu({'appCode':_0x1ea73b[_0x33d5b0(0x108)],'cookie':_0x1ea73b[_0x33d5b0(0x11d)],'plan':_0x7816d,'afterPlan':_0x3efcb0,'createdId':_0x473889,'expectedPath':_0xa08a25,'lookupCommand':_0x159fb6,'recovered':![]});return creationSuccess(_0x7816d,_0x34ad87[_0x33d5b0(0x17a)],_0x34ad87['fact'],![]);}};function validateAddInput(_0x19dcbf){const _0x3fc30a=a103_0x4bd9f8;if(!_0x19dcbf[_0x3fc30a(0x149)]('label')[_0x3fc30a(0x143)]())throw CliErrors[_0x3fc30a(0x124)](_0x3fc30a(0x10e));resolveExternalMenuType(_0x19dcbf),validateExternalMenuUrl(_0x19dcbf['str']('url')),parseParentId(_0x19dcbf,'parent-id'),validateSort(_0x19dcbf);}function resolveExternalMenuType(_0x4536e3){const _0x1157eb=a103_0x4bd9f8,_0x5a23b6=_0x4536e3['str']('open-mode')[_0x1157eb(0x143)]();if(!_0x5a23b6)throw CliErrors[_0x1157eb(0x124)](_0x1157eb(0x138));const _0x39b7d0=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x5a23b6];if(!_0x39b7d0)throw menuError(_0x1157eb(0x127),_0x1157eb(0x14c),_0x1157eb(0x145));return _0x39b7d0;}function a103_0x5e33(){const _0xba2112=['object','call','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','bool','write','menu_state_drift','\x27\x5c\x27\x27','External\x20HTTPS\x20URL','replace','8AdnsAx','menu_url_https_required','verification','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','failed','add','toLowerCase','embedded','Whether\x20the\x20menu\x20is\x20visible','create-recovery','2591181pynzOB','rawFlags','path','selector','menu','menu_verification_failed','6mVtvqH','appCode','fromEntries','URL','menu_parent_not_folder','Run\x20','12704NxSqZE','label','map','after','menu_not_found','visible','data','sort','\x20failed\x20final\x20verification.','menu_mutation_failed','Created\x20menu\x20','cause','filter','code','menu_create_response_invalid','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','cookie','Recovered\x20created\x20external\x20menu\x20','External\x20menu\x20creation\x20failed.','create','get','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','menu_sort_overflow','flagMissing','currentSnapshotHash','visibility','menu_open_mode_invalid','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','afterPlan','POST','29HsZFmO','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','createdId','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','entries','url','1123140CNhmDq','\x20has\x20an\x20unexpected\x20','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','isSafeInteger','pre-write-recheck','Menu\x20','plan','open-mode','length','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','lookupCommand','<redacted>','protocol','succeeded','has','hash','expectedPath','menu_sort_invalid','trim','body','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','401877LFFrRn','\x20with\x20','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','str','isArray','parent-id','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','type','menu\x20list','before','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','prototype','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','menu_url_invalid','new-window','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','create\x20external\x20menu','\x20--format\x20compress','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','7762363tMJfNu','link','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','parent','menu_permission_denied','/smartapi/menu/create','4527330MryZtI','byId','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Create\x20an\x20external\x20website\x20link\x20menu','expectedSnapshotHash','create-menu','\x20after\x20response\x20loss.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','external-link-create','menu_url_credentials_forbidden','16OoFsug','stringify','Recovered\x20menu\x20','string','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','plannedActions','recovered','menus','1958uYOcPc','causemessage','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','boolean','parentId','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','snapshot','74604gKmGBb','includes','<platform-generated>','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.'];a103_0x5e33=function(){return _0xba2112;};return a103_0x5e33();}async function buildAddPlan(_0x307d26,_0x2cd89e){const _0x41ccdb=a103_0x4bd9f8,_0x403c9c=await fetchMutationSnapshot(_0x307d26,_0x41ccdb(0x158)),_0x39edd2=parseParentId(_0x307d26,_0x41ccdb(0x14b))??null;if(_0x39edd2!=null)requireFolder(_0x403c9c,_0x39edd2);const _0x43212a=validateSort(_0x307d26),_0x103e6c=_0x43212a??nextSiblingSort(_0x403c9c,_0x39edd2,_0x41ccdb(0x105)),_0x3739b3=_0x307d26[_0x41ccdb(0x149)](_0x41ccdb(0x10e))[_0x41ccdb(0x143)](),_0x1ed430=resolveExternalMenuType(_0x307d26),_0x437c04=validateExternalMenuUrl(_0x307d26[_0x41ccdb(0x149)](_0x41ccdb(0x130))),_0x27cc23=Object[_0x41ccdb(0x152)]['hasOwnProperty'][_0x41ccdb(0x180)](_0x307d26[_0x41ccdb(0x193)],_0x41ccdb(0x112))?_0x307d26[_0x41ccdb(0x182)](_0x41ccdb(0x112)):!![],_0x112e5a={'id':null,'parentId':_0x39edd2,'label':_0x3739b3,'path':_0x41ccdb(0x17d),'url':_0x437c04,'type':_0x1ed430,'visible':_0x27cc23,'sort':_0x103e6c},_0xf1424b=buildMenuLookupCommand(_0x307d26[_0x41ccdb(0x108)]),_0x55314c=mutationResult({'operation':_0x41ccdb(0x18d),'selector':{'parentId':_0x39edd2,'type':_0x1ed430,'label':_0x3739b3,'url':_0x437c04},'before':null,'after':_0x112e5a,'dryRun':_0x2cd89e,'backend':[{'method':_0x41ccdb(0x12a),'path':_0x41ccdb(0x160)}],'plannedActions':[{'stage':_0x41ccdb(0x166),'method':_0x41ccdb(0x12a),'path':_0x41ccdb(0x160),'body':createBody(_0x112e5a)}],'snapshotHash':_0x403c9c['hash'],'warnings':[_0x41ccdb(0x169)],'verification':{'lookupCommand':_0xf1424b}});return{'plan':_0x55314c,'snapshot':_0x403c9c};}async function buildSafeAddPlan(_0x3e71fc,_0x1b6542){try{return await buildAddPlan(_0x3e71fc,_0x1b6542);}catch(_0x4ac308){throw safeMenuAddError(_0x4ac308);}}async function recheckAddSnapshot(_0x37653d,_0x10a732){const _0x4f73a3=a103_0x4bd9f8;try{await recheckMutationSnapshot(_0x37653d,_0x10a732,_0x4f73a3(0x158));}catch(_0x4a50fd){const _0x3af394=getFailureRecord(_0x4a50fd);throw externalLinkCreateFailure(_0x4a50fd,_0x10a732,{'stage':_0x4f73a3(0x135),'failed':{..._0x3af394?.[_0x4f73a3(0x165)]?{'expectedSnapshotHash':_0x3af394[_0x4f73a3(0x165)]}:{},..._0x3af394?.[_0x4f73a3(0x125)]?{'currentSnapshotHash':_0x3af394[_0x4f73a3(0x125)]}:{}}});}}function createBody(_0x142001){const _0x3df55a=a103_0x4bd9f8;return{'parentId':toApiParentId(_0x142001[_0x3df55a(0x178)]),'label':String(_0x142001[_0x3df55a(0x10e)]),'type':String(_0x142001[_0x3df55a(0x14d)]),'url':String(_0x142001[_0x3df55a(0x130)]),'visible':Boolean(_0x142001['visible']),'sort':Number(_0x142001[_0x3df55a(0x114)]),'extend':{}};}function buildMenuLookupCommand(_0x320280){const _0xc0af62=a103_0x4bd9f8,_0x204261='\x27'+_0x320280[_0xc0af62(0x187)](/'/g,_0xc0af62(0x185))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x204261+_0xc0af62(0x159);}async function recoverAfterResponseLoss(_0x10b79b,_0x5cea54,_0x2efef1){const _0x53b0b3=a103_0x4bd9f8,{plan:_0x5e79eb,snapshot:_0x2506d4}=_0x5cea54,_0x16ab9c=_0x5e79eb[_0x53b0b3(0x110)];let _0x552e9b;try{_0x552e9b=await fetchMenuSnapshot(_0x10b79b[_0x53b0b3(0x108)],_0x10b79b[_0x53b0b3(0x11d)]);}catch(_0x45918b){throw recoveryRequiredFailure(_0x5e79eb,_0x2efef1,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0xc4a454=_0x552e9b[_0x53b0b3(0x173)][_0x53b0b3(0x119)](_0x46f021=>_0x46f021[_0x53b0b3(0x178)]===_0x16ab9c[_0x53b0b3(0x178)]&&_0x46f021[_0x53b0b3(0x14d)]===_0x16ab9c[_0x53b0b3(0x14d)]&&_0x46f021[_0x53b0b3(0x10e)]===_0x16ab9c['label']&&_0x46f021[_0x53b0b3(0x130)]===_0x16ab9c[_0x53b0b3(0x130)]),_0x294883=_0xc4a454[_0x53b0b3(0x119)](_0x320a64=>!_0x2506d4['byId'][_0x53b0b3(0x13f)](_0x320a64['id'])),_0x4b2a35=_0xc4a454[_0x53b0b3(0x119)](_0xb856df=>_0x2506d4[_0x53b0b3(0x162)][_0x53b0b3(0x13f)](_0xb856df['id']));if(_0xc4a454[_0x53b0b3(0x139)]!==0x1||_0x294883[_0x53b0b3(0x139)]!==0x1)throw recoveryRequiredFailure(_0x5e79eb,_0x2efef1,{'matchCount':_0xc4a454[_0x53b0b3(0x139)],'newMatchCount':_0x294883[_0x53b0b3(0x139)],'preexistingMatchCount':_0x4b2a35[_0x53b0b3(0x139)]});const _0x13cda9=_0x294883[0x0];try{verifyCreatedFact(_0x13cda9,_0x13cda9['id'],_0x16ab9c,null);}catch(_0x3dcef6){const _0xba5e73=_0x3dcef6 instanceof Error&&_0x53b0b3(0x11a)in _0x3dcef6?_0x3dcef6:menuError(_0x53b0b3(0x106),_0x53b0b3(0x16e)+_0x13cda9['id']+'\x20could\x20not\x20be\x20verified.',_0x53b0b3(0x10c)+_0x2efef1+_0x53b0b3(0x148));throw externalLinkCreateFailure(_0xba5e73,_0x5e79eb,{'stage':_0x53b0b3(0x18a),'succeeded':[{'id':_0x13cda9['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x13cda9['id'],'finalFactsConfirmed':![]},'after':_0x13cda9,'warnings':[_0x53b0b3(0x136)+_0x13cda9['id']+_0x53b0b3(0x151)],'verification':{'status':_0x53b0b3(0x18c),'targetId':_0x13cda9['id'],'recovered':!![],'lookupCommand':_0x2efef1}});}return creationSuccess(_0x5e79eb,_0x552e9b,_0x13cda9,!![]);}function recoveryRequiredFailure(_0x3a6da7,_0x4008ed,_0x67f503){const _0x3f95b2=a103_0x4bd9f8,_0x47412c=menuError('menu_create_recovery_required',_0x3f95b2(0x12e),_0x3f95b2(0x10c)+_0x4008ed+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x47412c,_0x3a6da7,{'stage':_0x3f95b2(0x191),'failed':_0x67f503,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x3f95b2(0x18c),..._0x67f503,'lookupCommand':_0x4008ed}});}async function readAndVerifyCreatedMenu(_0x5ba478){const _0x50ab87=a103_0x4bd9f8;let _0x2fbb92;try{_0x2fbb92=await fetchMenuSnapshot(_0x5ba478[_0x50ab87(0x108)],_0x5ba478[_0x50ab87(0x11d)]);}catch(_0x32de7c){const _0xb54318=menuError(_0x50ab87(0x106),'Menu\x20'+_0x5ba478['createdId']+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x50ab87(0x10c)+_0x5ba478[_0x50ab87(0x13b)]+_0x50ab87(0x168));throw externalLinkCreateFailure(_0xb54318,_0x5ba478[_0x50ab87(0x137)],{'stage':_0x50ab87(0x18a),'succeeded':[{'id':_0x5ba478[_0x50ab87(0x12d)],'created':!![]}],'failed':{'id':_0x5ba478[_0x50ab87(0x12d)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x5ba478[_0x50ab87(0x129)],'id':_0x5ba478['createdId'],'path':_0x5ba478[_0x50ab87(0x141)]},'warnings':[_0x50ab87(0x136)+_0x5ba478[_0x50ab87(0x12d)]+_0x50ab87(0x170)],'verification':{'status':_0x50ab87(0x18c),'targetId':_0x5ba478[_0x50ab87(0x12d)],'lookupCommand':_0x5ba478[_0x50ab87(0x13b)]}});}const _0x4de985=_0x2fbb92[_0x50ab87(0x162)][_0x50ab87(0x121)](_0x5ba478[_0x50ab87(0x12d)]);try{if(!_0x4de985)throw menuError(_0x50ab87(0x106),_0x50ab87(0x117)+_0x5ba478[_0x50ab87(0x12d)]+_0x50ab87(0x133),_0x50ab87(0x10c)+_0x5ba478[_0x50ab87(0x13b)]+_0x50ab87(0x168));verifyCreatedFact(_0x4de985,_0x5ba478['createdId'],_0x5ba478[_0x50ab87(0x129)],_0x5ba478[_0x50ab87(0x141)]);}catch(_0x85f87){const _0x3b4bc4=_0x85f87 instanceof Error&&_0x50ab87(0x11a)in _0x85f87?_0x85f87:menuError(_0x50ab87(0x106),_0x50ab87(0x117)+_0x5ba478[_0x50ab87(0x12d)]+_0x50ab87(0x115),_0x50ab87(0x10c)+_0x5ba478[_0x50ab87(0x13b)]+_0x50ab87(0x168));throw externalLinkCreateFailure(_0x3b4bc4,_0x5ba478[_0x50ab87(0x137)],{'stage':'verification','succeeded':[{'id':_0x5ba478[_0x50ab87(0x12d)],'created':!![]}],'failed':{'id':_0x5ba478[_0x50ab87(0x12d)],'finalFactsConfirmed':![]},'after':_0x4de985??{..._0x5ba478[_0x50ab87(0x129)],'id':_0x5ba478['createdId'],'path':_0x5ba478[_0x50ab87(0x141)]},'warnings':[_0x50ab87(0x136)+_0x5ba478['createdId']+_0x50ab87(0x176)],'verification':{'status':'failed','targetId':_0x5ba478[_0x50ab87(0x12d)],'recovered':_0x5ba478[_0x50ab87(0x172)],'lookupCommand':_0x5ba478[_0x50ab87(0x13b)]}});}return{'snapshot':_0x2fbb92,'fact':_0x4de985};}function verifyCreatedFact(_0x5a4e83,_0x4df80b,_0x5aab10,_0x6521ba){const _0x5aaf42=a103_0x4bd9f8;if(!Number[_0x5aaf42(0x134)](_0x5a4e83['id'])||_0x5a4e83['id']<=0x0||_0x5a4e83['id']!==_0x4df80b)throw menuError(_0x5aaf42(0x106),_0x5aaf42(0x150),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x3f3a55=[[_0x5aaf42(0x15e),_0x5a4e83[_0x5aaf42(0x178)],_0x5aab10[_0x5aaf42(0x178)]],[_0x5aaf42(0x14d),_0x5a4e83[_0x5aaf42(0x14d)],_0x5aab10[_0x5aaf42(0x14d)]],[_0x5aaf42(0x10e),_0x5a4e83['label'],_0x5aab10['label']],[_0x5aaf42(0x10a),_0x5a4e83[_0x5aaf42(0x130)],_0x5aab10[_0x5aaf42(0x130)]],[_0x5aaf42(0x126),_0x5a4e83[_0x5aaf42(0x112)],_0x5aab10[_0x5aaf42(0x112)]],[_0x5aaf42(0x114),_0x5a4e83[_0x5aaf42(0x114)],_0x5aab10[_0x5aaf42(0x114)]]];for(const [_0x186463,_0x448a96,_0x5e60ea]of _0x3f3a55){if(_0x448a96!==_0x5e60ea)throw menuError(_0x5aaf42(0x106),_0x5aaf42(0x117)+_0x5a4e83['id']+_0x5aaf42(0x132)+_0x186463+'.',_0x5aaf42(0x12c));}if(!_0x5a4e83[_0x5aaf42(0x194)][_0x5aaf42(0x143)]()||_0x6521ba!==null&&_0x5a4e83['path']!==_0x6521ba)throw menuError(_0x5aaf42(0x106),_0x5aaf42(0x117)+_0x5a4e83['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x5aaf42(0x12c));}function creationSuccess(_0x542446,_0x53698f,_0x45861f,_0x4d594e){const _0x35f9c3=a103_0x4bd9f8,_0x476d79=mutationResult({..._0x542446,'after':_0x45861f,'dryRun':![],'succeeded':[{'id':_0x45861f['id'],'created':!![],'recovered':_0x4d594e}],'verification':{'checkedBy':_0x35f9c3(0x14e),'snapshotHash':_0x53698f[_0x35f9c3(0x140)],'targetId':_0x45861f['id'],'recovered':_0x4d594e,'path':_0x45861f['path']}});return{'ok':!![],'message':_0x4d594e?_0x35f9c3(0x11e)+_0x45861f['id']+_0x35f9c3(0x167):'Created\x20external\x20menu\x20'+_0x45861f['id']+'.','data':{..._0x476d79,'recovered':_0x4d594e}};}function externalLinkCreateFailure(_0x443101,_0x53d115,_0x1e9afb){const _0x298b5d=a103_0x4bd9f8;return menuFailure(safeMenuAddError(_0x443101),redactFailurePlan(_0x53d115),{..._0x1e9afb,'succeeded':_0x1e9afb[_0x298b5d(0x13e)]?.[_0x298b5d(0x10f)](redactFailureRecord),'failed':_0x1e9afb[_0x298b5d(0x18c)]?redactFailureRecord(_0x1e9afb[_0x298b5d(0x18c)]):undefined,'verification':_0x1e9afb['verification']?redactFailureRecord(_0x1e9afb[_0x298b5d(0x18a)]):undefined,'after':_0x1e9afb[_0x298b5d(0x110)]===undefined?undefined:redactFailureValue(_0x1e9afb[_0x298b5d(0x110)])});}function redactFailurePlan(_0x3d2e3e){const _0x5741a9=a103_0x4bd9f8;return{..._0x3d2e3e,'selector':redactFailureRecord(_0x3d2e3e[_0x5741a9(0x104)]),'before':redactFailureValue(_0x3d2e3e[_0x5741a9(0x14f)]),'after':redactFailureValue(_0x3d2e3e[_0x5741a9(0x110)]),'plannedActions':_0x3d2e3e[_0x5741a9(0x171)]?.[_0x5741a9(0x10f)](_0x56ded7=>({..._0x56ded7,'body':redactFailureRecord(_0x56ded7[_0x5741a9(0x144)])})),'succeeded':_0x3d2e3e[_0x5741a9(0x13e)][_0x5741a9(0x10f)](redactFailureRecord),'failed':_0x3d2e3e[_0x5741a9(0x18c)][_0x5741a9(0x10f)](redactFailureRecord),'verification':_0x3d2e3e['verification']?redactFailureRecord(_0x3d2e3e['verification']):undefined};}function redactFailureRecord(_0x1e2250){return redactFailureValue(_0x1e2250);}function redactFailureValue(_0x1b02c2,_0x563ef0=''){const _0x6e0e88=a103_0x4bd9f8,_0x4fec51=_0x563ef0[_0x6e0e88(0x18e)]()[_0x6e0e88(0x187)](/[^a-z0-9]/g,'');if([_0x6e0e88(0x118),_0x6e0e88(0x175),'readbackerror','rawerror'][_0x6e0e88(0x17c)](_0x4fec51))return _0x6e0e88(0x13c);if(Array[_0x6e0e88(0x14a)](_0x1b02c2))return _0x1b02c2[_0x6e0e88(0x10f)](_0x25ea58=>redactFailureValue(_0x25ea58));if(_0x1b02c2&&typeof _0x1b02c2===_0x6e0e88(0x17f))return Object[_0x6e0e88(0x109)](Object[_0x6e0e88(0x12f)](_0x1b02c2)[_0x6e0e88(0x10f)](([_0x4ce2fe,_0x31a73f])=>[_0x4ce2fe,redactFailureValue(_0x31a73f,_0x4ce2fe)]));return _0x1b02c2;}function safeMenuAddError(_0x8358d3){const _0x35f80d=a103_0x4bd9f8,_0x5b5d4e=_0x8358d3 instanceof CliError?_0x8358d3[_0x35f80d(0x11a)]:_0x35f80d(0x116);switch(_0x5b5d4e){case _0x35f80d(0x184):return menuError(_0x5b5d4e,_0x35f80d(0x163),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.');case _0x35f80d(0x15f):return menuError(_0x5b5d4e,_0x35f80d(0x17e),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case'menu_create_response_invalid':return menuError(_0x5b5d4e,_0x35f80d(0x122),_0x35f80d(0x153));case'menu_verification_failed':return menuError(_0x5b5d4e,_0x35f80d(0x179),_0x35f80d(0x153));case'menu_create_recovery_required':return menuError(_0x5b5d4e,_0x35f80d(0x18b),_0x35f80d(0x157));case _0x35f80d(0x116):case _0x35f80d(0x111):case _0x35f80d(0x10b):case _0x35f80d(0x142):case _0x35f80d(0x123):return menuError(_0x5b5d4e,'External\x20menu\x20creation\x20failed.',_0x35f80d(0x15d));default:return menuError(_0x35f80d(0x116),_0x35f80d(0x11f),_0x35f80d(0x15d));}}function getFailureRecord(_0x2b4e77){const _0x4bdd90=a103_0x4bd9f8;if(!(_0x2b4e77 instanceof Error)||!(_0x4bdd90(0x113)in _0x2b4e77))return undefined;const _0x550f1a=_0x2b4e77[_0x4bdd90(0x113)];if(!_0x550f1a||typeof _0x550f1a!==_0x4bdd90(0x17f))return undefined;const _0x20cb1c=_0x550f1a[_0x4bdd90(0x18c)];if(!Array['isArray'](_0x20cb1c)||!_0x20cb1c[0x0]||typeof _0x20cb1c[0x0]!==_0x4bdd90(0x17f))return undefined;return _0x20cb1c[0x0];}
|
|
1
|
+
const a103_0xfd785a=a103_0x2de3;(function(_0x3426e9,_0x2dd360){const _0x32c62e=a103_0x2de3,_0x23474c=_0x3426e9();while(!![]){try{const _0x410127=parseInt(_0x32c62e(0x194))/0x1*(parseInt(_0x32c62e(0x1c0))/0x2)+parseInt(_0x32c62e(0x188))/0x3+-parseInt(_0x32c62e(0x1a2))/0x4+parseInt(_0x32c62e(0x137))/0x5*(parseInt(_0x32c62e(0x174))/0x6)+parseInt(_0x32c62e(0x19b))/0x7*(-parseInt(_0x32c62e(0x1b0))/0x8)+parseInt(_0x32c62e(0x147))/0x9*(-parseInt(_0x32c62e(0x14d))/0xa)+parseInt(_0x32c62e(0x1c1))/0xb*(parseInt(_0x32c62e(0x1b7))/0xc);if(_0x410127===_0x2dd360)break;else _0x23474c['push'](_0x23474c['shift']());}catch(_0x2d8dfc){_0x23474c['push'](_0x23474c['shift']());}}}(a103_0x53a7,0xa6e31));function a103_0x53a7(){const _0x23be59=['write','visibility','selector','causemessage','username','External\x20HTTPS\x20URL','menu_url_credentials_forbidden','call','\x20could\x20not\x20be\x20verified.','byId','toLowerCase','create','object','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','code','add','expectedPath','\x20--format\x20compress','stringify','342kisuPS','hasOwnProperty','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','fromEntries','/smartapi/menu/create','rawFlags','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','pre-write-recheck','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','lookupCommand','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','POST','after','password','Created\x20external\x20menu\x20','rawerror','Created\x20menu\x20','succeeded','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','2754891FkpsWC','length','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','appCode','expectedSnapshotHash','menu_open_mode_invalid','external-link-create','menu_state_drift','verification','Recovered\x20menu\x20','sort','createdId','158uEHDdq','get','prototype','includes','<redacted>','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu_mutation_failed','37331FSHnPh','menu_sort_invalid','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','\x20failed\x20final\x20verification.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','has','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','2212296kwGivC','isSafeInteger','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','rabetbase\x20menu\x20list\x20--appcode\x20','Create\x20an\x20external\x20website\x20link\x20menu','str','string','open-mode','create\x20external\x20menu','menu','Menu\x20label','bool','URL','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','560KPVxaM','Recovered\x20created\x20external\x20menu\x20','menu_parent_not_folder','https:','hash','entries','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','19046988UHoKNH','url','snapshot','label','plan','failed','Menu\x20','menu_not_found','replace','3554WhfLrN','11yUphOl','External\x20menu\x20creation\x20failed.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','Run\x20','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','parent','flagMissing','9255StEvso','fact','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','menu_verification_failed','menu_url_invalid','\x20with\x20','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','isArray','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','afterPlan','How\x20to\x20open\x20the\x20external\x20website','Whether\x20the\x20menu\x20is\x20visible','before','create-recovery','18BvYlSN','menu_create_response_invalid','filter','protocol','parent-id','\x20has\x20an\x20unexpected\x20generated\x20path.','6409330GSVcVL','menu_create_recovery_required','visible','type','parentId','boolean','trim','new-window','readbackerror','body','<platform-generated>','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','cookie','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','link','plannedActions','map','path','data'];a103_0x53a7=function(){return _0x23be59;};return a103_0x53a7();}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':a103_0xfd785a(0x15c)};export function validateExternalMenuUrl(_0x185fb1){const _0x4ec2f9=a103_0xfd785a,_0xf96798=_0x185fb1['trim']();let _0x4da0bf;try{_0x4da0bf=new URL(_0xf96798);}catch{throw menuError(_0x4ec2f9(0x13b),_0x4ec2f9(0x140),_0x4ec2f9(0x19d));}if(_0x4da0bf[_0x4ec2f9(0x14a)]!==_0x4ec2f9(0x1b3))throw menuError('menu_url_https_required',_0x4ec2f9(0x159),'Provide\x20an\x20HTTPS\x20URL.');if(_0x4da0bf[_0x4ec2f9(0x165)]||_0x4da0bf[_0x4ec2f9(0x182)])throw menuError(_0x4ec2f9(0x167),_0x4ec2f9(0x17d),_0x4ec2f9(0x17b));return _0xf96798;}export const menuExternalLinkCreate={'service':a103_0xfd785a(0x1ab),'command':a103_0xfd785a(0x18e),'description':a103_0xfd785a(0x1a6),'risk':a103_0xfd785a(0x161),'structuredErrors':!![],'flags':[{'name':a103_0xfd785a(0x1ba),'type':a103_0xfd785a(0x1a8),'required':!![],'description':a103_0xfd785a(0x1ac)},{'name':a103_0xfd785a(0x1a9),'type':'string','required':!![],'enum':['embedded',a103_0xfd785a(0x154)],'description':a103_0xfd785a(0x143)},{'name':a103_0xfd785a(0x1b8),'type':'string','required':!![],'description':a103_0xfd785a(0x166)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a103_0xfd785a(0x14f),'type':a103_0xfd785a(0x152),'default':!![],'description':a103_0xfd785a(0x144)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x473dad){validateAddInput(_0x473dad);},async 'dryRun'(_0xf6d9da){const _0x3630ec=a103_0xfd785a;validateAddInput(_0xf6d9da);const {plan:_0x2292f0}=await buildSafeAddPlan(_0xf6d9da,!![]),_0x446944=_0x2292f0[_0x3630ec(0x181)],_0x10506d=createBody(_0x446944);return menuDryRunResult(_0x2292f0,{'method':_0x3630ec(0x180),'url':'/smartapi/menu/create','body':_0x10506d,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON[_0x3630ec(0x173)](_0x446944['label'])+_0x3630ec(0x13c)+_0xf6d9da[_0x3630ec(0x1a7)](_0x3630ec(0x1a9))+_0x3630ec(0x134)});},async 'execute'(_0x1e600a){const _0x4b3607=a103_0xfd785a;validateAddInput(_0x1e600a);const _0x4a1768=await buildSafeAddPlan(_0x1e600a,![]),{plan:_0x32932c,snapshot:_0x4cd039}=_0x4a1768,_0x440a6d=_0x32932c['after'],_0x5a9e0c=buildMenuLookupCommand(_0x1e600a['appCode']);await recheckAddSnapshot(_0x1e600a,_0x32932c);let _0x327753;try{_0x327753=await createMenuEntity(_0x1e600a[_0x4b3607(0x18b)],_0x1e600a[_0x4b3607(0x15a)],createBody(_0x440a6d));}catch(_0x4ca57d){const _0x1c2c36=mapMenuApiError(_0x4ca57d,_0x4b3607(0x1aa));if(!isMenuResponseLoss(_0x4ca57d)||_0x1c2c36['code']==='menu_permission_denied')throw externalLinkCreateFailure(_0x1c2c36,_0x32932c,{'stage':_0x4b3607(0x16c),'failed':{},'verification':{'status':_0x4b3607(0x1bc),'lookupCommand':_0x5a9e0c}});return recoverAfterResponseLoss(_0x1e600a,_0x4a1768,_0x5a9e0c);}const _0x1d9002=Number(_0x327753?.['id']),_0x3bb111=typeof _0x327753?.[_0x4b3607(0x15f)]===_0x4b3607(0x1a8)?_0x327753['path']:'';if(!Number[_0x4b3607(0x1a3)](_0x1d9002)||_0x1d9002<=0x0||!_0x3bb111[_0x4b3607(0x153)]()){const _0x3670ad=menuError(_0x4b3607(0x148),_0x4b3607(0x1a1),'Run\x20'+_0x5a9e0c+'\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.');throw externalLinkCreateFailure(_0x3670ad,_0x32932c,{'stage':'create-response-validation','succeeded':Number[_0x4b3607(0x1a3)](_0x1d9002)&&_0x1d9002>0x0?[{'id':_0x1d9002,'created':!![]}]:[],'failed':{'createdId':Number[_0x4b3607(0x1a3)](_0x1d9002)?_0x1d9002:null,'generatedPathConfirmed':Boolean(_0x3bb111[_0x4b3607(0x153)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number[_0x4b3607(0x1a3)](_0x1d9002)&&_0x1d9002>0x0?{..._0x440a6d,'id':_0x1d9002,'path':_0x3bb111}:_0x440a6d,'verification':{'status':_0x4b3607(0x1bc),'lookupCommand':_0x5a9e0c,...Number[_0x4b3607(0x1a3)](_0x1d9002)&&_0x1d9002>0x0?{'targetId':_0x1d9002}:{}}});}const _0x17cbdb=await readAndVerifyCreatedMenu({'appCode':_0x1e600a[_0x4b3607(0x18b)],'cookie':_0x1e600a['cookie'],'plan':_0x32932c,'afterPlan':_0x440a6d,'createdId':_0x1d9002,'expectedPath':_0x3bb111,'lookupCommand':_0x5a9e0c,'recovered':![]});return creationSuccess(_0x32932c,_0x17cbdb[_0x4b3607(0x1b9)],_0x17cbdb[_0x4b3607(0x138)],![]);}};function validateAddInput(_0x510a93){const _0x209ab8=a103_0xfd785a;if(!_0x510a93[_0x209ab8(0x1a7)](_0x209ab8(0x1ba))['trim']())throw CliErrors[_0x209ab8(0x136)](_0x209ab8(0x1ba));resolveExternalMenuType(_0x510a93),validateExternalMenuUrl(_0x510a93[_0x209ab8(0x1a7)](_0x209ab8(0x1b8))),parseParentId(_0x510a93,_0x209ab8(0x14b)),validateSort(_0x510a93);}function resolveExternalMenuType(_0x114df1){const _0x389ac8=a103_0xfd785a,_0x18e411=_0x114df1[_0x389ac8(0x1a7)](_0x389ac8(0x1a9))[_0x389ac8(0x153)]();if(!_0x18e411)throw CliErrors[_0x389ac8(0x136)](_0x389ac8(0x1a9));const _0x38a706=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x18e411];if(!_0x38a706)throw menuError(_0x389ac8(0x18d),_0x389ac8(0x15b),_0x389ac8(0x17f));return _0x38a706;}async function buildAddPlan(_0x5b148f,_0x55e79c){const _0x5b84c7=a103_0xfd785a,_0x22e075=await fetchMutationSnapshot(_0x5b148f,_0x5b84c7(0x1aa)),_0x592df5=parseParentId(_0x5b148f,_0x5b84c7(0x14b))??null;if(_0x592df5!=null)requireFolder(_0x22e075,_0x592df5);const _0x11cb4e=validateSort(_0x5b148f),_0x17da7f=_0x11cb4e??nextSiblingSort(_0x22e075,_0x592df5,'menu'),_0x940905=_0x5b148f[_0x5b84c7(0x1a7)](_0x5b84c7(0x1ba))[_0x5b84c7(0x153)](),_0x375319=resolveExternalMenuType(_0x5b148f),_0x2a7ae8=validateExternalMenuUrl(_0x5b148f[_0x5b84c7(0x1a7)]('url')),_0x29d79b=Object[_0x5b84c7(0x196)][_0x5b84c7(0x175)][_0x5b84c7(0x168)](_0x5b148f[_0x5b84c7(0x17a)],_0x5b84c7(0x14f))?_0x5b148f[_0x5b84c7(0x1ad)](_0x5b84c7(0x14f)):!![],_0x378bf8={'id':null,'parentId':_0x592df5,'label':_0x940905,'path':_0x5b84c7(0x157),'url':_0x2a7ae8,'type':_0x375319,'visible':_0x29d79b,'sort':_0x17da7f},_0x244466=buildMenuLookupCommand(_0x5b148f[_0x5b84c7(0x18b)]),_0x3e6069=mutationResult({'operation':_0x5b84c7(0x170),'selector':{'parentId':_0x592df5,'type':_0x375319,'label':_0x940905,'url':_0x2a7ae8},'before':null,'after':_0x378bf8,'dryRun':_0x55e79c,'backend':[{'method':_0x5b84c7(0x180),'path':_0x5b84c7(0x179)}],'plannedActions':[{'stage':'create-menu','method':_0x5b84c7(0x180),'path':_0x5b84c7(0x179),'body':createBody(_0x378bf8)}],'snapshotHash':_0x22e075[_0x5b84c7(0x1b4)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x244466}});return{'plan':_0x3e6069,'snapshot':_0x22e075};}async function buildSafeAddPlan(_0x617b03,_0x3c4188){try{return await buildAddPlan(_0x617b03,_0x3c4188);}catch(_0x2387d4){throw safeMenuAddError(_0x2387d4);}}async function recheckAddSnapshot(_0x4c9066,_0x287c08){const _0xf58eca=a103_0xfd785a;try{await recheckMutationSnapshot(_0x4c9066,_0x287c08,_0xf58eca(0x1aa));}catch(_0x2db666){const _0x2a3a69=getFailureRecord(_0x2db666);throw externalLinkCreateFailure(_0x2db666,_0x287c08,{'stage':_0xf58eca(0x17c),'failed':{..._0x2a3a69?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0x2a3a69[_0xf58eca(0x18c)]}:{},..._0x2a3a69?.['currentSnapshotHash']?{'currentSnapshotHash':_0x2a3a69['currentSnapshotHash']}:{}}});}}function createBody(_0x2b648d){const _0x2f394d=a103_0xfd785a;return{'parentId':toApiParentId(_0x2b648d['parentId']),'label':String(_0x2b648d[_0x2f394d(0x1ba)]),'type':String(_0x2b648d[_0x2f394d(0x150)]),'url':String(_0x2b648d[_0x2f394d(0x1b8)]),'visible':Boolean(_0x2b648d['visible']),'sort':Number(_0x2b648d['sort']),'extend':{}};}function buildMenuLookupCommand(_0x36816e){const _0x3c6539=a103_0xfd785a,_0x4ef33c='\x27'+_0x36816e[_0x3c6539(0x1bf)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x3c6539(0x1a5)+_0x4ef33c+_0x3c6539(0x172);}async function recoverAfterResponseLoss(_0xb0be0f,_0x5e8bbb,_0x4951d5){const _0x5671a0=a103_0xfd785a,{plan:_0x3293a1,snapshot:_0x31dd40}=_0x5e8bbb,_0x28f55a=_0x3293a1['after'];let _0x2d1eff;try{_0x2d1eff=await fetchMenuSnapshot(_0xb0be0f[_0x5671a0(0x18b)],_0xb0be0f[_0x5671a0(0x15a)]);}catch(_0x529609){throw recoveryRequiredFailure(_0x3293a1,_0x4951d5,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x57dc99=_0x2d1eff['menus'][_0x5671a0(0x149)](_0x589583=>_0x589583[_0x5671a0(0x151)]===_0x28f55a[_0x5671a0(0x151)]&&_0x589583[_0x5671a0(0x150)]===_0x28f55a[_0x5671a0(0x150)]&&_0x589583[_0x5671a0(0x1ba)]===_0x28f55a[_0x5671a0(0x1ba)]&&_0x589583[_0x5671a0(0x1b8)]===_0x28f55a['url']),_0x361181=_0x57dc99[_0x5671a0(0x149)](_0x199c7e=>!_0x31dd40[_0x5671a0(0x16a)][_0x5671a0(0x1a0)](_0x199c7e['id'])),_0x34ba0d=_0x57dc99[_0x5671a0(0x149)](_0x35107b=>_0x31dd40[_0x5671a0(0x16a)][_0x5671a0(0x1a0)](_0x35107b['id']));if(_0x57dc99[_0x5671a0(0x189)]!==0x1||_0x361181['length']!==0x1)throw recoveryRequiredFailure(_0x3293a1,_0x4951d5,{'matchCount':_0x57dc99['length'],'newMatchCount':_0x361181[_0x5671a0(0x189)],'preexistingMatchCount':_0x34ba0d[_0x5671a0(0x189)]});const _0x3b7902=_0x361181[0x0];try{verifyCreatedFact(_0x3b7902,_0x3b7902['id'],_0x28f55a,null);}catch(_0x30d334){const _0x27fc83=_0x30d334 instanceof Error&&'code'in _0x30d334?_0x30d334:menuError(_0x5671a0(0x13a),_0x5671a0(0x191)+_0x3b7902['id']+_0x5671a0(0x169),'Run\x20'+_0x4951d5+_0x5671a0(0x1af));throw externalLinkCreateFailure(_0x27fc83,_0x3293a1,{'stage':_0x5671a0(0x190),'succeeded':[{'id':_0x3b7902['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x3b7902['id'],'finalFactsConfirmed':![]},'after':_0x3b7902,'warnings':[_0x5671a0(0x1bd)+_0x3b7902['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x5671a0(0x1bc),'targetId':_0x3b7902['id'],'recovered':!![],'lookupCommand':_0x4951d5}});}return creationSuccess(_0x3293a1,_0x2d1eff,_0x3b7902,!![]);}function recoveryRequiredFailure(_0x3d70de,_0x54c54c,_0x8a0269){const _0xe2a10c=a103_0xfd785a,_0x473623=menuError(_0xe2a10c(0x14e),_0xe2a10c(0x13f),_0xe2a10c(0x133)+_0x54c54c+_0xe2a10c(0x139));return externalLinkCreateFailure(_0x473623,_0x3d70de,{'stage':_0xe2a10c(0x146),'failed':_0x8a0269,'warnings':[_0xe2a10c(0x1b6)],'verification':{'status':_0xe2a10c(0x1bc),..._0x8a0269,'lookupCommand':_0x54c54c}});}async function readAndVerifyCreatedMenu(_0x80f5a4){const _0x5542c3=a103_0xfd785a;let _0x35551b;try{_0x35551b=await fetchMenuSnapshot(_0x80f5a4[_0x5542c3(0x18b)],_0x80f5a4[_0x5542c3(0x15a)]);}catch(_0x41ec53){const _0x4c7d79=menuError(_0x5542c3(0x13a),_0x5542c3(0x1bd)+_0x80f5a4[_0x5542c3(0x193)]+_0x5542c3(0x187),_0x5542c3(0x133)+_0x80f5a4[_0x5542c3(0x17e)]+_0x5542c3(0x176));throw externalLinkCreateFailure(_0x4c7d79,_0x80f5a4[_0x5542c3(0x1bb)],{'stage':'verification','succeeded':[{'id':_0x80f5a4[_0x5542c3(0x193)],'created':!![]}],'failed':{'id':_0x80f5a4[_0x5542c3(0x193)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x80f5a4[_0x5542c3(0x142)],'id':_0x80f5a4['createdId'],'path':_0x80f5a4[_0x5542c3(0x171)]},'warnings':[_0x5542c3(0x1bd)+_0x80f5a4['createdId']+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':'failed','targetId':_0x80f5a4[_0x5542c3(0x193)],'lookupCommand':_0x80f5a4[_0x5542c3(0x17e)]}});}const _0x34bf29=_0x35551b[_0x5542c3(0x16a)][_0x5542c3(0x195)](_0x80f5a4[_0x5542c3(0x193)]);try{if(!_0x34bf29)throw menuError('menu_verification_failed',_0x5542c3(0x185)+_0x80f5a4[_0x5542c3(0x193)]+_0x5542c3(0x177),_0x5542c3(0x133)+_0x80f5a4[_0x5542c3(0x17e)]+_0x5542c3(0x176));verifyCreatedFact(_0x34bf29,_0x80f5a4[_0x5542c3(0x193)],_0x80f5a4[_0x5542c3(0x142)],_0x80f5a4[_0x5542c3(0x171)]);}catch(_0x5e90a4){const _0x367464=_0x5e90a4 instanceof Error&&_0x5542c3(0x16f)in _0x5e90a4?_0x5e90a4:menuError(_0x5542c3(0x13a),'Created\x20menu\x20'+_0x80f5a4[_0x5542c3(0x193)]+_0x5542c3(0x19e),_0x5542c3(0x133)+_0x80f5a4[_0x5542c3(0x17e)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x367464,_0x80f5a4['plan'],{'stage':'verification','succeeded':[{'id':_0x80f5a4['createdId'],'created':!![]}],'failed':{'id':_0x80f5a4[_0x5542c3(0x193)],'finalFactsConfirmed':![]},'after':_0x34bf29??{..._0x80f5a4['afterPlan'],'id':_0x80f5a4[_0x5542c3(0x193)],'path':_0x80f5a4[_0x5542c3(0x171)]},'warnings':[_0x5542c3(0x1bd)+_0x80f5a4['createdId']+_0x5542c3(0x16e)],'verification':{'status':_0x5542c3(0x1bc),'targetId':_0x80f5a4['createdId'],'recovered':_0x80f5a4['recovered'],'lookupCommand':_0x80f5a4['lookupCommand']}});}return{'snapshot':_0x35551b,'fact':_0x34bf29};}function verifyCreatedFact(_0x3c5553,_0x251bd7,_0x5d1a3c,_0x2f0e9d){const _0x147825=a103_0xfd785a;if(!Number['isSafeInteger'](_0x3c5553['id'])||_0x3c5553['id']<=0x0||_0x3c5553['id']!==_0x251bd7)throw menuError(_0x147825(0x13a),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x147825(0x13d));const _0x29eb18=[[_0x147825(0x135),_0x3c5553[_0x147825(0x151)],_0x5d1a3c[_0x147825(0x151)]],['type',_0x3c5553[_0x147825(0x150)],_0x5d1a3c['type']],['label',_0x3c5553['label'],_0x5d1a3c['label']],[_0x147825(0x1ae),_0x3c5553[_0x147825(0x1b8)],_0x5d1a3c['url']],[_0x147825(0x162),_0x3c5553['visible'],_0x5d1a3c['visible']],[_0x147825(0x192),_0x3c5553['sort'],_0x5d1a3c['sort']]];for(const [_0x32b547,_0x240376,_0x3d824f]of _0x29eb18){if(_0x240376!==_0x3d824f)throw menuError(_0x147825(0x13a),_0x147825(0x185)+_0x3c5553['id']+'\x20has\x20an\x20unexpected\x20'+_0x32b547+'.',_0x147825(0x18a));}if(!_0x3c5553[_0x147825(0x15f)][_0x147825(0x153)]()||_0x2f0e9d!==null&&_0x3c5553[_0x147825(0x15f)]!==_0x2f0e9d)throw menuError(_0x147825(0x13a),_0x147825(0x185)+_0x3c5553['id']+_0x147825(0x14c),'Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function a103_0x2de3(_0x2c9294,_0x3e337b){_0x2c9294=_0x2c9294-0x133;const _0x53a75f=a103_0x53a7();let _0x2de36c=_0x53a75f[_0x2c9294];return _0x2de36c;}function creationSuccess(_0x2dfa7c,_0x25e666,_0x531252,_0x2cb1c7){const _0x3bd172=a103_0xfd785a,_0x47eef7=mutationResult({..._0x2dfa7c,'after':_0x531252,'dryRun':![],'succeeded':[{'id':_0x531252['id'],'created':!![],'recovered':_0x2cb1c7}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x25e666[_0x3bd172(0x1b4)],'targetId':_0x531252['id'],'recovered':_0x2cb1c7,'path':_0x531252[_0x3bd172(0x15f)]}});return{'ok':!![],'message':_0x2cb1c7?_0x3bd172(0x1b1)+_0x531252['id']+'\x20after\x20response\x20loss.':_0x3bd172(0x183)+_0x531252['id']+'.','data':{..._0x47eef7,'recovered':_0x2cb1c7}};}function externalLinkCreateFailure(_0xce61c1,_0x52fbd4,_0x130543){const _0x387767=a103_0xfd785a;return menuFailure(safeMenuAddError(_0xce61c1),redactFailurePlan(_0x52fbd4),{..._0x130543,'succeeded':_0x130543[_0x387767(0x186)]?.[_0x387767(0x15e)](redactFailureRecord),'failed':_0x130543[_0x387767(0x1bc)]?redactFailureRecord(_0x130543['failed']):undefined,'verification':_0x130543['verification']?redactFailureRecord(_0x130543[_0x387767(0x190)]):undefined,'after':_0x130543[_0x387767(0x181)]===undefined?undefined:redactFailureValue(_0x130543[_0x387767(0x181)])});}function redactFailurePlan(_0x1b65c6){const _0x92d72=a103_0xfd785a;return{..._0x1b65c6,'selector':redactFailureRecord(_0x1b65c6[_0x92d72(0x163)]),'before':redactFailureValue(_0x1b65c6[_0x92d72(0x145)]),'after':redactFailureValue(_0x1b65c6[_0x92d72(0x181)]),'plannedActions':_0x1b65c6[_0x92d72(0x15d)]?.[_0x92d72(0x15e)](_0x3eb2a7=>({..._0x3eb2a7,'body':redactFailureRecord(_0x3eb2a7[_0x92d72(0x156)])})),'succeeded':_0x1b65c6['succeeded']['map'](redactFailureRecord),'failed':_0x1b65c6[_0x92d72(0x1bc)][_0x92d72(0x15e)](redactFailureRecord),'verification':_0x1b65c6[_0x92d72(0x190)]?redactFailureRecord(_0x1b65c6[_0x92d72(0x190)]):undefined};}function redactFailureRecord(_0x1f06f5){return redactFailureValue(_0x1f06f5);}function redactFailureValue(_0xaba0ba,_0x29afb2=''){const _0x511b68=a103_0xfd785a,_0x19c7e6=_0x29afb2[_0x511b68(0x16b)]()[_0x511b68(0x1bf)](/[^a-z0-9]/g,'');if(['cause',_0x511b68(0x164),_0x511b68(0x155),_0x511b68(0x184)][_0x511b68(0x197)](_0x19c7e6))return _0x511b68(0x198);if(Array[_0x511b68(0x13e)](_0xaba0ba))return _0xaba0ba['map'](_0x4abc3e=>redactFailureValue(_0x4abc3e));if(_0xaba0ba&&typeof _0xaba0ba===_0x511b68(0x16d))return Object[_0x511b68(0x178)](Object[_0x511b68(0x1b5)](_0xaba0ba)['map'](([_0x2e04a9,_0x27250d])=>[_0x2e04a9,redactFailureValue(_0x27250d,_0x2e04a9)]));return _0xaba0ba;}function safeMenuAddError(_0x3f161a){const _0x4c97ed=a103_0xfd785a,_0x5129da=_0x3f161a instanceof CliError?_0x3f161a[_0x4c97ed(0x16f)]:_0x4c97ed(0x19a);switch(_0x5129da){case _0x4c97ed(0x18f):return menuError(_0x5129da,_0x4c97ed(0x1a4),_0x4c97ed(0x141));case'menu_permission_denied':return menuError(_0x5129da,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x4c97ed(0x148):return menuError(_0x5129da,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x4c97ed(0x19f));case _0x4c97ed(0x13a):return menuError(_0x5129da,_0x4c97ed(0x158),_0x4c97ed(0x19f));case'menu_create_recovery_required':return menuError(_0x5129da,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x4c97ed(0x1c3));case _0x4c97ed(0x19a):case _0x4c97ed(0x1be):case _0x4c97ed(0x1b2):case _0x4c97ed(0x19c):case'menu_sort_overflow':return menuError(_0x5129da,'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0x4c97ed(0x19a),_0x4c97ed(0x1c2),_0x4c97ed(0x199));}}function getFailureRecord(_0x5c9d7f){const _0x23968b=a103_0xfd785a;if(!(_0x5c9d7f instanceof Error)||!('data'in _0x5c9d7f))return undefined;const _0x2dc7c5=_0x5c9d7f[_0x23968b(0x160)];if(!_0x2dc7c5||typeof _0x2dc7c5!==_0x23968b(0x16d))return undefined;const _0xe3bb6b=_0x2dc7c5[_0x23968b(0x1bc)];if(!Array[_0x23968b(0x13e)](_0xe3bb6b)||!_0xe3bb6b[0x0]||typeof _0xe3bb6b[0x0]!==_0x23968b(0x16d))return undefined;return _0xe3bb6b[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a104_0x57ee28=a104_0x179a;function a104_0x179a(_0xd95456,_0x1d3f20){_0xd95456=_0xd95456-0xf9;const _0x70a283=a104_0x70a2();let _0x179a76=_0x70a283[_0xd95456];return _0x179a76;}(function(_0xa128c0,_0x20b8d9){const _0x1cf7c4=a104_0x179a,_0x27f23d=_0xa128c0();while(!![]){try{const _0x1432cf=-parseInt(_0x1cf7c4(0x10b))/0x1*(-parseInt(_0x1cf7c4(0x138))/0x2)+parseInt(_0x1cf7c4(0x104))/0x3+parseInt(_0x1cf7c4(0x10d))/0x4+parseInt(_0x1cf7c4(0x119))/0x5+-parseInt(_0x1cf7c4(0x12e))/0x6+-parseInt(_0x1cf7c4(0x101))/0x7*(parseInt(_0x1cf7c4(0x146))/0x8)+-parseInt(_0x1cf7c4(0xfc))/0x9;if(_0x1432cf===_0x20b8d9)break;else _0x27f23d['push'](_0x27f23d['shift']());}catch(_0x478823){_0x27f23d['push'](_0x27f23d['shift']());}}}(a104_0x70a2,0x427d4));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,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a104_0x57ee28(0x105),'path':a104_0x57ee28(0x13f)}];export const menuExternalLinkUpdate={'service':a104_0x57ee28(0x148),'command':a104_0x57ee28(0x131),'description':a104_0x57ee28(0x114),'risk':a104_0x57ee28(0x134),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a104_0x57ee28(0xfe),'type':a104_0x57ee28(0xfb),'required':!![],'description':a104_0x57ee28(0x118)},{'name':'expect-url','type':a104_0x57ee28(0xfb),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3bd117){validateInput(_0x3bd117),requireExplicitYes(_0x3bd117);},async 'dryRun'(_0x268b28){const _0x203b6c=a104_0x57ee28;validateInput(_0x268b28);const _0x4a3a31=await buildPlan(_0x268b28,!![]);return menuDryRunResult(_0x4a3a31[_0x203b6c(0x103)],{'method':_0x203b6c(0x105),'url':_0x203b6c(0x13f),'body':_0x4a3a31[_0x203b6c(0x10e)],'description':_0x203b6c(0x11e)+_0x4a3a31[_0x203b6c(0x10e)]['id']+'.'});},async 'execute'(_0x28f0bd){const _0x385975=a104_0x57ee28;validateInput(_0x28f0bd),requireExplicitYes(_0x28f0bd);const _0x5c9994=await buildPlan(_0x28f0bd,![]),{plan:_0x1ec652,body:_0xc60869,before:_0x4211c6,noChanges:_0x198ac5}=_0x5c9994,_0x2f97d4=_0xc60869['id'];if(_0x198ac5)return updateSuccess(_0x1ec652,_0x5c9994['snapshot'],_0x4211c6,!![],![]);await recheckMutationSnapshot(_0x28f0bd,_0x1ec652,_0x385975(0x100),_0x2f97d4);try{await updateMenuEntity(_0x28f0bd['appCode'],_0x28f0bd[_0x385975(0x117)],{'id':_0xc60869['id'],'url':_0xc60869[_0x385975(0xfe)]});}catch(_0x364eea){const _0x5ab23d=mapMenuApiError(_0x364eea,_0x385975(0x100),_0x2f97d4);if(isMenuResponseLoss(_0x364eea)&&_0x5ab23d['code']!=='menu_permission_denied')return recoverAfterResponseLoss(_0x28f0bd,_0x5c9994);throw menuFailure(_0x5ab23d,_0x1ec652,{'stage':_0x385975(0x10c),'failed':{'id':_0x2f97d4},'warnings':[_0x385975(0x128)],'verification':{'status':_0x385975(0x122),'targetId':_0x2f97d4,'lookupCommand':buildLookupCommand(_0x28f0bd[_0x385975(0x113)])}});}let _0x1fe018,_0x239a19;try{_0x1fe018=await fetchMenuSnapshot(_0x28f0bd[_0x385975(0x113)],_0x28f0bd[_0x385975(0x117)]),_0x239a19=requireMenu(_0x1fe018,_0x2f97d4),verifyUpdatedFact(_0x4211c6,_0x239a19,_0xc60869[_0x385975(0xfe)]);}catch(_0x50587d){const _0x512173=describeMenuErrorCause(_0x50587d,_0x385975(0x112),_0x2f97d4),_0x7c7db9=asVerificationError(_0x50587d,_0x385975(0x108)+_0x2f97d4+_0x385975(0x141));throw menuFailure(_0x7c7db9,_0x1ec652,{'stage':_0x385975(0x142),'succeeded':[{'id':_0x2f97d4,'updateRequested':!![]}],'failed':{'id':_0x2f97d4,'requestedStateConfirmed':![],..._0x512173},'warnings':[_0x385975(0x11a)],'verification':{'status':_0x385975(0x122),'targetId':_0x2f97d4,'lookupCommand':buildLookupCommand(_0x28f0bd['appCode'])}});}return updateSuccess(_0x1ec652,_0x1fe018,_0x239a19,![],![]);}};function validateInput(_0x5e1fd8){const _0x479320=a104_0x57ee28;validateExactId(_0x5e1fd8),requiredUrl(_0x5e1fd8,_0x479320(0xfe)),requiredExpectedUrl(_0x5e1fd8),parseParentId(_0x5e1fd8,_0x479320(0x107),{'required':!![]});}function requiredUrl(_0x21e382,_0xde5756){const _0x506982=a104_0x57ee28;if(!hasFlag(_0x21e382,_0xde5756)||!_0x21e382['str'](_0xde5756)[_0x506982(0x11c)]())throw CliErrors['flagMissing'](_0xde5756);return validateExternalMenuUrl(_0x21e382['str'](_0xde5756));}function requiredExpectedUrl(_0xc556af){const _0x149784=a104_0x57ee28;if(!hasFlag(_0xc556af,_0x149784(0x12a))||!_0xc556af['str'](_0x149784(0x12a))[_0x149784(0x11c)]())throw CliErrors[_0x149784(0x13a)](_0x149784(0x12a));return _0xc556af['str'](_0x149784(0x12a))[_0x149784(0x11c)]();}async function buildPlan(_0x53badf,_0x423eb1){const _0x4615b8=a104_0x57ee28,_0x132944=validateExactId(_0x53badf),_0x58853a=requiredUrl(_0x53badf,_0x4615b8(0xfe)),_0xb9afa8=requiredExpectedUrl(_0x53badf),_0x17459e=parseParentId(_0x53badf,'expect-parent-id',{'required':!![]}),_0x5251ed=await fetchMutationSnapshot(_0x53badf,_0x4615b8(0x100),_0x132944),_0x5df4d3=requireMenu(_0x5251ed,_0x132944);assertExternalLinkLeaf(_0x5df4d3);if(_0x5df4d3[_0x4615b8(0x124)]!==_0x17459e)throw menuError(_0x4615b8(0xf9),'Menu\x20'+_0x132944+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x17459e)+_0x4615b8(0x110)+formatParent(_0x5df4d3[_0x4615b8(0x124)])+'.',_0x4615b8(0x133));const _0x3feefb=_0x5df4d3['url']===_0x58853a;if(!_0x3feefb&&_0x5df4d3[_0x4615b8(0xfe)]!==_0xb9afa8)throw menuError(_0x4615b8(0xf9),_0x4615b8(0x106)+_0x132944+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0x4615b8(0xfa));const _0x5a6e20={'id':_0x132944,'appCode':_0x53badf[_0x4615b8(0x113)],'url':_0x58853a},_0x109830={..._0x5df4d3,'url':_0x58853a};return{'body':_0x5a6e20,'before':_0x5df4d3,'noChanges':_0x3feefb,'snapshot':_0x5251ed,'plan':mutationResult({'operation':_0x4615b8(0x131),'selector':{'id':_0x132944},'before':_0x5df4d3,'after':_0x109830,'dryRun':_0x423eb1,'backend':[...BACKEND],'plannedActions':_0x3feefb?[]:[{'stage':_0x4615b8(0x127),'method':_0x4615b8(0x105),'path':_0x4615b8(0x13f),'body':_0x5a6e20}],'snapshotHash':_0x5251ed[_0x4615b8(0x137)],'warnings':_0x3feefb?[_0x4615b8(0x125)]:[]})};}function assertExternalLinkLeaf(_0x462236){const _0x4326d9=a104_0x57ee28;if(_0x462236[_0x4326d9(0x120)]!==_0x4326d9(0x13d)&&_0x462236[_0x4326d9(0x120)]!=='link')throw menuError('menu_external_link_type_required',_0x4326d9(0x106)+_0x462236['id']+_0x4326d9(0x13e)+(_0x462236[_0x4326d9(0x120)]||'unknown')+'\x22,\x20not\x20iframe\x20or\x20link.',_0x4326d9(0x121));if(_0x462236[_0x4326d9(0x12c)]!==0x0)throw menuError(_0x4326d9(0xff),_0x4326d9(0x106)+_0x462236['id']+_0x4326d9(0x12d)+_0x462236['childrenCount']+_0x4326d9(0x11b),_0x4326d9(0x132));if(!_0x462236[_0x4326d9(0xfd)][_0x4326d9(0x11c)]())throw menuError('menu_external_link_path_missing','Menu\x20'+_0x462236['id']+_0x4326d9(0x111),_0x4326d9(0x130));}function verifyUpdatedFact(_0x2a347b,_0x15c827,_0x5c44e0){const _0x28e925=a104_0x57ee28;assertExternalLinkLeaf(_0x15c827);const _0x3a3e64=[['id',_0x15c827['id'],_0x2a347b['id']],[_0x28e925(0x13c),_0x15c827[_0x28e925(0x13c)],_0x2a347b[_0x28e925(0x13c)]],[_0x28e925(0x120),_0x15c827[_0x28e925(0x120)],_0x2a347b[_0x28e925(0x120)]],['path',_0x15c827['path'],_0x2a347b[_0x28e925(0xfd)]],['parentId',_0x15c827['parentId'],_0x2a347b['parentId']],[_0x28e925(0x149),_0x15c827[_0x28e925(0x149)],_0x2a347b[_0x28e925(0x149)]],[_0x28e925(0x123),_0x15c827[_0x28e925(0x123)],_0x2a347b[_0x28e925(0x123)]]];for(const [_0xea0716,_0x5c791c,_0xa6844c]of _0x3a3e64){assertVerified(_0x5c791c===_0xa6844c,_0x28e925(0x106)+_0x2a347b['id']+'\x20'+_0xea0716+_0x28e925(0x10a));}assertVerified(_0x15c827['url']===_0x5c44e0,'Menu\x20'+_0x2a347b['id']+_0x28e925(0x12b));}function updateSuccess(_0x3a65a7,_0x27cfcc,_0x7a4a45,_0xdda4d2,_0x155ec7){const _0x42e273=a104_0x57ee28,_0x413fcf=_0x7a4a45['id'],_0x44d0c9=mutationResult({..._0x3a65a7,'after':_0x7a4a45,'dryRun':![],'succeeded':[{'id':_0x413fcf,'updated':!_0xdda4d2,'skipped':_0xdda4d2,'recovered':_0x155ec7}],'verification':{'checkedBy':_0x42e273(0x139),'snapshotHash':_0x27cfcc[_0x42e273(0x137)],'targetId':_0x413fcf,'matchesRequestedState':!![],'recovered':_0x155ec7}});return{'ok':!![],'message':_0x155ec7?_0x42e273(0x136)+_0x413fcf+'.':_0xdda4d2?_0x42e273(0x106)+_0x413fcf+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x42e273(0x10f)+_0x413fcf+'.','data':{..._0x44d0c9,'recovered':_0x155ec7}};}async function recoverAfterResponseLoss(_0x3aa0d1,_0x5c86ab){const _0x362a2e=a104_0x57ee28,{plan:_0x350df1,before:_0x767b57,body:_0x4a6ce7}=_0x5c86ab;let _0x233c99;try{_0x233c99=await fetchMenuSnapshot(_0x3aa0d1['appCode'],_0x3aa0d1[_0x362a2e(0x117)]);}catch{throw recoveryRequired(_0x350df1,_0x3aa0d1[_0x362a2e(0x113)],{'id':_0x4a6ce7['id'],'readbackFailed':!![]});}const _0x4621ea=_0x233c99[_0x362a2e(0x11d)][_0x362a2e(0x143)](_0x4a6ce7['id']);if(!_0x4621ea||_0x4621ea['url']!==_0x4a6ce7[_0x362a2e(0xfe)])throw recoveryRequired(_0x350df1,_0x3aa0d1['appCode'],{'id':_0x4a6ce7['id'],'requestedUrlObserved':![],'after':_0x4621ea??null});try{verifyUpdatedFact(_0x767b57,_0x4621ea,_0x4a6ce7[_0x362a2e(0xfe)]);}catch(_0x35a22e){const _0x4fd564=asVerificationError(_0x35a22e,_0x362a2e(0x129)+_0x4a6ce7['id']+_0x362a2e(0x135));throw menuFailure(_0x4fd564,_0x350df1,{'stage':'update-recovery','succeeded':[{'id':_0x4a6ce7['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x4a6ce7['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x4621ea,'warnings':[_0x362a2e(0x11f)],'verification':{'status':'failed','targetId':_0x4a6ce7['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x3aa0d1['appCode'])}});}return updateSuccess(_0x350df1,_0x233c99,_0x4621ea,![],!![]);}function recoveryRequired(_0x4bd3c4,_0x5ce005,_0x2ee917){const _0x250d4a=a104_0x57ee28,_0x2cafed=menuError(_0x250d4a(0x13b),_0x250d4a(0x109),'Run\x20'+buildLookupCommand(_0x5ce005)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x2cafed,_0x4bd3c4,{'stage':_0x250d4a(0x147),'failed':{'id':_0x2ee917['id'],..._0x2ee917[_0x250d4a(0x140)]===undefined?{}:{'requestedUrlObserved':_0x2ee917[_0x250d4a(0x140)]},..._0x2ee917[_0x250d4a(0x115)]?{'readbackFailed':!![]}:{}},'after':_0x2ee917[_0x250d4a(0x12f)],'warnings':[_0x250d4a(0x145)],'verification':{'status':'failed','targetId':_0x2ee917['id'],..._0x2ee917['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x2ee917[_0x250d4a(0x140)]},..._0x2ee917[_0x250d4a(0x115)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x5ce005)}});}function buildLookupCommand(_0x1d69ee){const _0x1d9edc=a104_0x57ee28,_0x5ee82d='\x27'+_0x1d69ee[_0x1d9edc(0x102)](/'/g,_0x1d9edc(0x144))+'\x27';return _0x1d9edc(0x126)+_0x5ee82d+_0x1d9edc(0x116);}function a104_0x70a2(){const _0x5bc7b0=['string','1028871Xuqrzw','path','url','menu_external_link_not_leaf','update\x20external\x20menu\x20URL','21PMCtKJ','replace','plan','1114548uVsrQr','POST','Menu\x20','expect-parent-id','Update\x20request\x20for\x20menu\x20','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','\x20changed\x20during\x20the\x20URL-only\x20update.','219413ldamjB','update','343268pryfuJ','body','Updated\x20external\x20URL\x20for\x20menu\x20',',\x20current\x20','\x20has\x20an\x20empty\x20platform\x20path.','verify\x20external\x20menu\x20URL\x20update','appCode','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','readbackFailed','\x20--format\x20compress','cookie','New\x20external\x20HTTPS\x20URL','1642625pgTQRf','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','\x20direct\x20child\x20menu(s).','trim','byId','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','type','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','failed','visible','parentId','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','rabetbase\x20menu\x20list\x20--appcode\x20','update-external-link-url','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Response\x20was\x20lost\x20and\x20menu\x20','expect-url','\x20URL\x20update\x20did\x20not\x20take\x20effect.','childrenCount','\x20has\x20','3066312FLEMJY','after','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','external-link-update','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','high-risk-write','\x20could\x20not\x20be\x20verified\x20safely','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','hash','4AjvHSK','menu\x20list','flagMissing','menu_update_recovery_required','label','iframe','\x20is\x20type\x20\x22','/smartapi/menu/update','requestedUrlObserved','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','verification','get','\x27\x5c\x27\x27','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','871928ijisJD','update-recovery','menu','sort','menu_state_drift','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.'];a104_0x70a2=function(){return _0x5bc7b0;};return a104_0x70a2();}
|
|
1
|
+
const a104_0x207846=a104_0x58bd;(function(_0x39a5af,_0x267339){const _0x15b68f=a104_0x58bd,_0x4d5112=_0x39a5af();while(!![]){try{const _0x3819cc=-parseInt(_0x15b68f(0x1e6))/0x1*(parseInt(_0x15b68f(0x1eb))/0x2)+parseInt(_0x15b68f(0x1e5))/0x3+parseInt(_0x15b68f(0x1ed))/0x4+-parseInt(_0x15b68f(0x223))/0x5*(-parseInt(_0x15b68f(0x21c))/0x6)+-parseInt(_0x15b68f(0x1e3))/0x7+parseInt(_0x15b68f(0x21d))/0x8+-parseInt(_0x15b68f(0x1df))/0x9*(parseInt(_0x15b68f(0x216))/0xa);if(_0x3819cc===_0x267339)break;else _0x4d5112['push'](_0x4d5112['shift']());}catch(_0x5af209){_0x4d5112['push'](_0x4d5112['shift']());}}}(a104_0xc46a,0xb4fde));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,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';function a104_0x58bd(_0x5df637,_0x574b08){_0x5df637=_0x5df637-0x1db;const _0xc46ac4=a104_0xc46a();let _0x58bd87=_0xc46ac4[_0x5df637];return _0x58bd87;}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a104_0x207846(0x227)}];export const menuExternalLinkUpdate={'service':a104_0x207846(0x1f7),'command':a104_0x207846(0x1dc),'description':'Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a104_0x207846(0x20c),'type':a104_0x207846(0x1fc),'required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a104_0x207846(0x1f4),'type':'string','required':!![],'description':a104_0x207846(0x207)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x28b4f6){validateInput(_0x28b4f6),requireExplicitYes(_0x28b4f6);},async 'dryRun'(_0x1a9205){const _0x4e9d74=a104_0x207846;validateInput(_0x1a9205);const _0x125800=await buildPlan(_0x1a9205,!![]);return menuDryRunResult(_0x125800[_0x4e9d74(0x217)],{'method':_0x4e9d74(0x1e7),'url':_0x4e9d74(0x227),'body':_0x125800[_0x4e9d74(0x1e0)],'description':_0x4e9d74(0x1ea)+_0x125800[_0x4e9d74(0x1e0)]['id']+'.'});},async 'execute'(_0x6a71f3){const _0x2879cb=a104_0x207846;validateInput(_0x6a71f3),requireExplicitYes(_0x6a71f3);const _0x205139=await buildPlan(_0x6a71f3,![]),{plan:_0x33be45,body:_0x201fd6,before:_0x2db3eb,noChanges:_0x1e0606}=_0x205139,_0x2686e4=_0x201fd6['id'];if(_0x1e0606)return updateSuccess(_0x33be45,_0x205139['snapshot'],_0x2db3eb,!![],![]);await recheckMutationSnapshot(_0x6a71f3,_0x33be45,_0x2879cb(0x20a),_0x2686e4);try{await updateMenuEntity(_0x6a71f3[_0x2879cb(0x1fb)],_0x6a71f3[_0x2879cb(0x228)],{'id':_0x201fd6['id'],'url':_0x201fd6['url']});}catch(_0x5f2c05){const _0x5a3cbe=mapMenuApiError(_0x5f2c05,_0x2879cb(0x20a),_0x2686e4);if(isMenuResponseLoss(_0x5f2c05)&&_0x5a3cbe[_0x2879cb(0x222)]!==_0x2879cb(0x1e8))return recoverAfterResponseLoss(_0x6a71f3,_0x205139);throw menuFailure(_0x5a3cbe,_0x33be45,{'stage':_0x2879cb(0x201),'failed':{'id':_0x2686e4},'warnings':[_0x2879cb(0x21a)],'verification':{'status':_0x2879cb(0x1f5),'targetId':_0x2686e4,'lookupCommand':buildLookupCommand(_0x6a71f3[_0x2879cb(0x1fb)])}});}let _0x3ed50c,_0x371958;try{_0x3ed50c=await fetchMenuSnapshot(_0x6a71f3[_0x2879cb(0x1fb)],_0x6a71f3[_0x2879cb(0x228)]),_0x371958=requireMenu(_0x3ed50c,_0x2686e4),verifyUpdatedFact(_0x2db3eb,_0x371958,_0x201fd6[_0x2879cb(0x20c)]);}catch(_0x5a6451){const _0x41aae6=describeMenuErrorCause(_0x5a6451,'verify\x20external\x20menu\x20URL\x20update',_0x2686e4),_0x4bb1b8=asVerificationError(_0x5a6451,'Update\x20request\x20for\x20menu\x20'+_0x2686e4+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x4bb1b8,_0x33be45,{'stage':_0x2879cb(0x21e),'succeeded':[{'id':_0x2686e4,'updateRequested':!![]}],'failed':{'id':_0x2686e4,'requestedStateConfirmed':![],..._0x41aae6},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x2879cb(0x1f5),'targetId':_0x2686e4,'lookupCommand':buildLookupCommand(_0x6a71f3[_0x2879cb(0x1fb)])}});}return updateSuccess(_0x33be45,_0x3ed50c,_0x371958,![],![]);}};function validateInput(_0x421943){const _0x43c313=a104_0x207846;validateExactId(_0x421943),requiredUrl(_0x421943,_0x43c313(0x20c)),requiredExpectedUrl(_0x421943),parseParentId(_0x421943,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x4de4f1,_0x42fdba){const _0xb31423=a104_0x207846;if(!hasFlag(_0x4de4f1,_0x42fdba)||!_0x4de4f1[_0xb31423(0x1db)](_0x42fdba)[_0xb31423(0x1fd)]())throw CliErrors[_0xb31423(0x214)](_0x42fdba);return validateExternalMenuUrl(_0x4de4f1[_0xb31423(0x1db)](_0x42fdba));}function requiredExpectedUrl(_0x126de4){const _0x1f591b=a104_0x207846;if(!hasFlag(_0x126de4,_0x1f591b(0x1f4))||!_0x126de4[_0x1f591b(0x1db)](_0x1f591b(0x1f4))[_0x1f591b(0x1fd)]())throw CliErrors[_0x1f591b(0x214)](_0x1f591b(0x1f4));return _0x126de4[_0x1f591b(0x1db)](_0x1f591b(0x1f4))[_0x1f591b(0x1fd)]();}async function buildPlan(_0x42e50e,_0x4c250f){const _0x4fd0c5=a104_0x207846,_0x93e13b=validateExactId(_0x42e50e),_0x2a9484=requiredUrl(_0x42e50e,'url'),_0x1614b2=requiredExpectedUrl(_0x42e50e),_0x70fe6c=parseParentId(_0x42e50e,_0x4fd0c5(0x1de),{'required':!![]}),_0x5c1d19=await fetchMutationSnapshot(_0x42e50e,'update\x20external\x20menu\x20URL',_0x93e13b),_0x3b4195=requireMenu(_0x5c1d19,_0x93e13b);assertExternalLinkLeaf(_0x3b4195);if(_0x3b4195[_0x4fd0c5(0x229)]!==_0x70fe6c)throw menuError(_0x4fd0c5(0x1ff),'Menu\x20'+_0x93e13b+_0x4fd0c5(0x1e1)+formatParent(_0x70fe6c)+',\x20current\x20'+formatParent(_0x3b4195[_0x4fd0c5(0x229)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x98cbf1=_0x3b4195[_0x4fd0c5(0x20c)]===_0x2a9484;if(!_0x98cbf1&&_0x3b4195['url']!==_0x1614b2)throw menuError(_0x4fd0c5(0x1ff),_0x4fd0c5(0x20d)+_0x93e13b+_0x4fd0c5(0x215),_0x4fd0c5(0x21f));const _0x452cb4={'id':_0x93e13b,'appCode':_0x42e50e['appCode'],'url':_0x2a9484},_0x5a9467={..._0x3b4195,'url':_0x2a9484};return{'body':_0x452cb4,'before':_0x3b4195,'noChanges':_0x98cbf1,'snapshot':_0x5c1d19,'plan':mutationResult({'operation':_0x4fd0c5(0x1dc),'selector':{'id':_0x93e13b},'before':_0x3b4195,'after':_0x5a9467,'dryRun':_0x4c250f,'backend':[...BACKEND],'plannedActions':_0x98cbf1?[]:[{'stage':_0x4fd0c5(0x20f),'method':_0x4fd0c5(0x1e7),'path':'/smartapi/menu/update','body':_0x452cb4}],'snapshotHash':_0x5c1d19[_0x4fd0c5(0x210)],'warnings':_0x98cbf1?[_0x4fd0c5(0x202)]:[]})};}function assertExternalLinkLeaf(_0x373592){const _0x54df35=a104_0x207846;if(_0x373592['type']!==_0x54df35(0x1ec)&&_0x373592[_0x54df35(0x1f1)]!==_0x54df35(0x1f2))throw menuError(_0x54df35(0x206),_0x54df35(0x20d)+_0x373592['id']+'\x20is\x20type\x20\x22'+(_0x373592['type']||'unknown')+_0x54df35(0x1f0),_0x54df35(0x1f6));if(_0x373592['childrenCount']!==0x0)throw menuError(_0x54df35(0x200),_0x54df35(0x20d)+_0x373592['id']+_0x54df35(0x225)+_0x373592['childrenCount']+_0x54df35(0x21b),_0x54df35(0x1f3));if(!_0x373592['path'][_0x54df35(0x1fd)]())throw menuError(_0x54df35(0x211),'Menu\x20'+_0x373592['id']+_0x54df35(0x22a),_0x54df35(0x218));}function verifyUpdatedFact(_0x53afc9,_0x36f557,_0x80690a){const _0x4da46b=a104_0x207846;assertExternalLinkLeaf(_0x36f557);const _0x1b6e29=[['id',_0x36f557['id'],_0x53afc9['id']],[_0x4da46b(0x1e2),_0x36f557['label'],_0x53afc9[_0x4da46b(0x1e2)]],[_0x4da46b(0x1f1),_0x36f557[_0x4da46b(0x1f1)],_0x53afc9['type']],['path',_0x36f557[_0x4da46b(0x220)],_0x53afc9[_0x4da46b(0x220)]],[_0x4da46b(0x229),_0x36f557[_0x4da46b(0x229)],_0x53afc9[_0x4da46b(0x229)]],[_0x4da46b(0x212),_0x36f557['sort'],_0x53afc9[_0x4da46b(0x212)]],['visible',_0x36f557[_0x4da46b(0x209)],_0x53afc9[_0x4da46b(0x209)]]];for(const [_0x645856,_0x31cc1a,_0x9e0033]of _0x1b6e29){assertVerified(_0x31cc1a===_0x9e0033,'Menu\x20'+_0x53afc9['id']+'\x20'+_0x645856+_0x4da46b(0x1fa));}assertVerified(_0x36f557[_0x4da46b(0x20c)]===_0x80690a,_0x4da46b(0x20d)+_0x53afc9['id']+_0x4da46b(0x213));}function updateSuccess(_0x459e4c,_0x58049f,_0x2dc43c,_0x1a9107,_0x5d4873){const _0x3dba75=a104_0x207846,_0x5f24e2=_0x2dc43c['id'],_0x22cdea=mutationResult({..._0x459e4c,'after':_0x2dc43c,'dryRun':![],'succeeded':[{'id':_0x5f24e2,'updated':!_0x1a9107,'skipped':_0x1a9107,'recovered':_0x5d4873}],'verification':{'checkedBy':_0x3dba75(0x1ef),'snapshotHash':_0x58049f['hash'],'targetId':_0x5f24e2,'matchesRequestedState':!![],'recovered':_0x5d4873}});return{'ok':!![],'message':_0x5d4873?_0x3dba75(0x1e9)+_0x5f24e2+'.':_0x1a9107?'Menu\x20'+_0x5f24e2+_0x3dba75(0x1fe):_0x3dba75(0x20e)+_0x5f24e2+'.','data':{..._0x22cdea,'recovered':_0x5d4873}};}async function recoverAfterResponseLoss(_0x8e6346,_0x2693bb){const _0x1d3a0d=a104_0x207846,{plan:_0x4cb1c2,before:_0x58d9d1,body:_0x31089a}=_0x2693bb;let _0x335365;try{_0x335365=await fetchMenuSnapshot(_0x8e6346[_0x1d3a0d(0x1fb)],_0x8e6346['cookie']);}catch{throw recoveryRequired(_0x4cb1c2,_0x8e6346['appCode'],{'id':_0x31089a['id'],'readbackFailed':!![]});}const _0x10cade=_0x335365[_0x1d3a0d(0x20b)][_0x1d3a0d(0x221)](_0x31089a['id']);if(!_0x10cade||_0x10cade['url']!==_0x31089a['url'])throw recoveryRequired(_0x4cb1c2,_0x8e6346[_0x1d3a0d(0x1fb)],{'id':_0x31089a['id'],'requestedUrlObserved':![],'after':_0x10cade??null});try{verifyUpdatedFact(_0x58d9d1,_0x10cade,_0x31089a[_0x1d3a0d(0x20c)]);}catch(_0x575f80){const _0x56746a=asVerificationError(_0x575f80,_0x1d3a0d(0x226)+_0x31089a['id']+_0x1d3a0d(0x205));throw menuFailure(_0x56746a,_0x4cb1c2,{'stage':_0x1d3a0d(0x1f8),'succeeded':[{'id':_0x31089a['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x31089a['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x10cade,'warnings':[_0x1d3a0d(0x1f9)],'verification':{'status':_0x1d3a0d(0x1f5),'targetId':_0x31089a['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x8e6346[_0x1d3a0d(0x1fb)])}});}return updateSuccess(_0x4cb1c2,_0x335365,_0x10cade,![],!![]);}function recoveryRequired(_0x44f0f5,_0x5dd753,_0x550615){const _0x453d23=a104_0x207846,_0x584d87=menuError(_0x453d23(0x204),_0x453d23(0x208),'Run\x20'+buildLookupCommand(_0x5dd753)+_0x453d23(0x1e4));return menuFailure(_0x584d87,_0x44f0f5,{'stage':_0x453d23(0x1f8),'failed':{'id':_0x550615['id'],..._0x550615[_0x453d23(0x1dd)]===undefined?{}:{'requestedUrlObserved':_0x550615[_0x453d23(0x1dd)]},..._0x550615[_0x453d23(0x1ee)]?{'readbackFailed':!![]}:{}},'after':_0x550615['after'],'warnings':[_0x453d23(0x219)],'verification':{'status':_0x453d23(0x1f5),'targetId':_0x550615['id'],..._0x550615['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x550615[_0x453d23(0x1dd)]},..._0x550615['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x5dd753)}});}function a104_0xc46a(){const _0x23039f=['string','trim','\x20already\x20matches\x20the\x20requested\x20URL.','menu_state_drift','menu_external_link_not_leaf','update','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','replace','menu_update_recovery_required','\x20could\x20not\x20be\x20verified\x20safely','menu_external_link_type_required','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','visible','update\x20external\x20menu\x20URL','byId','url','Menu\x20','Updated\x20external\x20URL\x20for\x20menu\x20','update-external-link-url','hash','menu_external_link_path_missing','sort','\x20URL\x20update\x20did\x20not\x20take\x20effect.','flagMissing','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','21711210AfXtoa','plan','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20direct\x20child\x20menu(s).','2922fGxwNf','6520136XFXwYH','verification','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','path','get','code','11265aeTciZ','rabetbase\x20menu\x20list\x20--appcode\x20','\x20has\x20','Response\x20was\x20lost\x20and\x20menu\x20','/smartapi/menu/update','cookie','parentId','\x20has\x20an\x20empty\x20platform\x20path.','str','external-link-update','requestedUrlObserved','expect-parent-id','9ngAwcD','body','\x20parent\x20changed:\x20expected\x20','label','1088234XbVliO','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','3908013ZYvoLS','5KGmgur','POST','menu_permission_denied','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','195678LVcGrT','iframe','1368884PJnxPI','readbackFailed','menu\x20list','\x22,\x20not\x20iframe\x20or\x20link.','type','link','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','expect-url','failed','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','menu','update-recovery','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','\x20changed\x20during\x20the\x20URL-only\x20update.','appCode'];a104_0xc46a=function(){return _0x23039f;};return a104_0xc46a();}function buildLookupCommand(_0x196050){const _0x5c2ffd=a104_0x207846,_0xc3f94e='\x27'+_0x196050[_0x5c2ffd(0x203)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x5c2ffd(0x224)+_0xc3f94e+'\x20--format\x20compress';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a105_0x40d072=a105_0x5d05;(function(_0xa505f3,_0x4788cb){const _0x4a70ab=a105_0x5d05,_0x3468c4=_0xa505f3();while(!![]){try{const _0x38cb08=-parseInt(_0x4a70ab(0xbd))/0x1*(parseInt(_0x4a70ab(0x9e))/0x2)+parseInt(_0x4a70ab(0xc5))/0x3*(-parseInt(_0x4a70ab(0xcf))/0x4)+parseInt(_0x4a70ab(0xad))/0x5+parseInt(_0x4a70ab(0x8d))/0x6+-parseInt(_0x4a70ab(0xa3))/0x7+-parseInt(_0x4a70ab(0xcd))/0x8+-parseInt(_0x4a70ab(0xd0))/0x9*(-parseInt(_0x4a70ab(0xb3))/0xa);if(_0x38cb08===_0x4788cb)break;else _0x3468c4['push'](_0x3468c4['shift']());}catch(_0x52edec){_0x3468c4['push'](_0x3468c4['shift']());}}}(a105_0x1fb0,0x8427e));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,requireExplicitYes,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a105_0x1fb0(){const _0x3f93b4=['Menu\x20create\x20response\x20for\x20folder\x20','visible','\x22\x20with\x20a\x20platform-generated\x20path.','string','menu_create_response_invalid','byId','4748024yIwema','\x20may\x20exist\x20online\x20at\x20path\x20','2090388uYIFkE','64161qcpXSf','3492132FHCaJf','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','path','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','type','failed','label','Folder\x20label','isSafeInteger','trim',';\x20verify\x20it\x20before\x20retrying.','\x20has\x20an\x20unexpected\x20label.','cookie','length','rabetbase\x20menu\x20list\x20--format\x20json','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','create','30434bykHMx','depth','Folder\x20','appCode','root','6642895yQdCeM','str','parent-id','\x20unexpectedly\x20owns\x20a\x20page.','Created\x20menu\x20folder\x20','parentId','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','/smartapi/menu/create','pageId','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','2754845sJhhQJ','<platform-generated>','Created\x20menu\x20','verification','Created\x20folder\x20','\x20is\x20not\x20empty.','3070dyMjCp','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','sort','after','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','\x20is\x20not\x20type\x20folder.','create-response-validation','Would\x20create\x20empty\x20folder\x20\x22','47XRJnEM','stringify','\x20is\x20not\x20visible.','\x20has\x20resources.','verify\x20folder\x20creation','folder','resources','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','3IDfVMT','POST'];a105_0x1fb0=function(){return _0x3f93b4;};return a105_0x1fb0();}const BACKEND=[{'method':a105_0x40d072(0xc6),'path':'/smartapi/menu/create'}];export const menuGroupCreate={'service':'menu','command':'group-create','description':a105_0x40d072(0xb4),'risk':'high-risk-write','structuredErrors':!![],'flags':[{'name':'label','type':a105_0x40d072(0xca),'required':!![],'description':a105_0x40d072(0x94)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x58df67){validateCreateInput(_0x58df67),requireExplicitYes(_0x58df67);},async 'dryRun'(_0x258d19){const _0x1a58d2=a105_0x40d072,_0x32ce65=await buildCreatePlan(_0x258d19,!![]),_0x1a656e=_0x32ce65['after'];return menuDryRunResult(_0x32ce65,{'method':'POST','url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x1a656e['parentId']),'label':_0x1a656e[_0x1a58d2(0x93)],'type':_0x1a58d2(0xc2),'visible':!![],'sort':_0x1a656e[_0x1a58d2(0xb6)],'extend':{}},'description':_0x1a58d2(0xbc)+String(_0x1a656e[_0x1a58d2(0x93)])+_0x1a58d2(0xc9)});},async 'execute'(_0x172095){const _0x26ba36=a105_0x40d072;validateCreateInput(_0x172095),requireExplicitYes(_0x172095);const _0x22aaf2=await buildCreatePlan(_0x172095,![]),_0x11f9f6=_0x22aaf2[_0x26ba36(0xb7)];await recheckMutationSnapshot(_0x172095,_0x22aaf2,'create\x20folder');let _0x220b0b;try{_0x220b0b=await createMenuEntity(_0x172095[_0x26ba36(0xa1)],_0x172095[_0x26ba36(0x99)],{'parentId':toApiParentId(_0x11f9f6['parentId']),'label':String(_0x11f9f6[_0x26ba36(0x93)]),'type':_0x26ba36(0xc2),'visible':!![],'sort':Number(_0x11f9f6[_0x26ba36(0xb6)]),'extend':{}});}catch(_0x192a1f){const _0x42c449=mapMenuApiError(_0x192a1f,'create\x20folder');throw menuFailure(_0x42c449,_0x22aaf2,{'stage':_0x26ba36(0x9d),'failed':{}});}const _0x46f798=Number(_0x220b0b['id']);if(!Number[_0x26ba36(0x95)](_0x46f798)||_0x46f798<=0x0){const _0x45fd23=menuError(_0x26ba36(0xcb),_0x26ba36(0x9c),_0x26ba36(0x90));throw menuFailure(_0x45fd23,_0x22aaf2,{'stage':_0x26ba36(0xbb),'failed':{'createdId':_0x220b0b['id']??null},'warnings':[_0x26ba36(0xb8)],'verification':{'status':_0x26ba36(0x92),'lookupCommand':_0x26ba36(0x9b)}});}const _0x1e3880=typeof _0x220b0b[_0x26ba36(0x8f)]===_0x26ba36(0xca)?_0x220b0b[_0x26ba36(0x8f)]:'';if(!_0x1e3880[_0x26ba36(0x96)]()){const _0x5ee672=menuError(_0x26ba36(0xcb),_0x26ba36(0xc7)+_0x46f798+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x26ba36(0xac));throw menuFailure(_0x5ee672,_0x22aaf2,{'stage':_0x26ba36(0xbb),'succeeded':[{'id':_0x46f798,'created':!![]}],'failed':{'id':_0x46f798,'generatedPathConfirmed':![]},'warnings':['Folder\x20'+_0x46f798+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x11f9f6,'id':_0x46f798,'path':_0x1e3880},'verification':{'status':_0x26ba36(0x92),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x46f798}});}let _0x289991;try{_0x289991=await fetchMenuSnapshot(_0x172095[_0x26ba36(0xa1)],_0x172095[_0x26ba36(0x99)]);}catch(_0x5afc7a){const _0x3ab407=describeMenuErrorCause(_0x5afc7a,_0x26ba36(0xc1),_0x46f798),_0x3a8b1e=asVerificationError(_0x5afc7a,'Folder\x20'+_0x46f798+_0x26ba36(0xb5));throw menuFailure(_0x3a8b1e,_0x22aaf2,{'stage':_0x26ba36(0xb0),'succeeded':[{'id':_0x46f798,'created':!![],'path':_0x1e3880}],'failed':{'id':_0x46f798,'finalFactsConfirmed':![],..._0x3ab407},'warnings':[_0x26ba36(0xa0)+_0x46f798+_0x26ba36(0xce)+JSON[_0x26ba36(0xbe)](_0x1e3880)+_0x26ba36(0x97)],'after':{..._0x11f9f6,'id':_0x46f798,'path':_0x1e3880},'verification':{'status':_0x26ba36(0x92),'lookupCommand':_0x26ba36(0x9b),'targetId':_0x46f798}});}const _0x8de359=_0x289991[_0x26ba36(0xcc)]['get'](_0x46f798);let _0x740f54;try{assertVerified(Boolean(_0x8de359),_0x26ba36(0xb1)+_0x46f798+'\x20is\x20missing\x20from\x20menu\x20list.'),_0x740f54=_0x8de359,assertVerified(_0x740f54[_0x26ba36(0x91)]===_0x26ba36(0xc2),_0x26ba36(0xaf)+_0x46f798+_0x26ba36(0xba)),assertVerified(_0x740f54[_0x26ba36(0x93)]===_0x11f9f6[_0x26ba36(0x93)],_0x26ba36(0xb1)+_0x46f798+_0x26ba36(0x98)),assertVerified(_0x740f54['path']===_0x1e3880&&Boolean(_0x740f54[_0x26ba36(0x8f)]['trim']()),_0x26ba36(0xb1)+_0x46f798+_0x26ba36(0xa9)),assertVerified(_0x740f54[_0x26ba36(0xc8)]===!![],_0x26ba36(0xb1)+_0x46f798+_0x26ba36(0xbf)),assertVerified(_0x740f54[_0x26ba36(0xc3)][_0x26ba36(0x9a)]===0x0,'Created\x20folder\x20'+_0x46f798+_0x26ba36(0xc0)),assertVerified(_0x740f54['childrenCount']===0x0,_0x26ba36(0xb1)+_0x46f798+_0x26ba36(0xb2)),assertVerified(_0x740f54[_0x26ba36(0xb6)]===_0x11f9f6[_0x26ba36(0xb6)],'Created\x20folder\x20'+_0x46f798+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x740f54[_0x26ba36(0xa8)]===_0x11f9f6[_0x26ba36(0xa8)],'Created\x20folder\x20'+_0x46f798+'\x20has\x20unexpected\x20parent\x20'+(_0x740f54[_0x26ba36(0xa8)]??_0x26ba36(0xa2))+'.'),assertVerified(_0x740f54[_0x26ba36(0xab)]==null,_0x26ba36(0xb1)+_0x46f798+_0x26ba36(0xa6));const _0x5ce5cc=_0x740f54[_0x26ba36(0xa8)]==null?undefined:requireFolder(_0x289991,_0x740f54['parentId']);assertVerified(_0x740f54[_0x26ba36(0x9f)]===(_0x5ce5cc?_0x5ce5cc['depth']+0x1:0x0),_0x26ba36(0xb1)+_0x46f798+_0x26ba36(0xb9));}catch(_0x1e00a8){const _0x464465=describeMenuErrorCause(_0x1e00a8,_0x26ba36(0xc1),_0x46f798),_0x3f6616=asVerificationError(_0x1e00a8,_0x26ba36(0xa0)+_0x46f798+_0x26ba36(0x8e));throw menuFailure(_0x3f6616,_0x22aaf2,{'stage':_0x26ba36(0xb0),'succeeded':[{'id':_0x46f798,'created':!![],'path':_0x1e3880}],'failed':{'id':_0x46f798,'finalFactsConfirmed':![],..._0x464465},'warnings':[_0x26ba36(0xa0)+_0x46f798+_0x26ba36(0xc4)],'after':_0x8de359??{..._0x11f9f6,'id':_0x46f798,'path':_0x1e3880},'verification':{'status':_0x26ba36(0x92),'lookupCommand':_0x26ba36(0x9b),'targetId':_0x46f798}});}const _0xaf357a=mutationResult({..._0x22aaf2,'after':_0x740f54,'dryRun':![],'succeeded':[{'id':_0x46f798,'type':_0x26ba36(0xc2),'path':_0x1e3880}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x289991['hash'],'folder':!![],'path':_0x1e3880,'emptyResources':!![]}});return{'ok':!![],'data':_0xaf357a,'message':_0x26ba36(0xa7)+_0x46f798+'.'};}};function validateCreateInput(_0x3905b4){const _0x17adac=a105_0x40d072,_0x6f1272=_0x3905b4['str'](_0x17adac(0x93))['trim']();if(!_0x6f1272)throw CliErrors['flagMissing'](_0x17adac(0x93));parseParentId(_0x3905b4,'parent-id'),validateSort(_0x3905b4);}function a105_0x5d05(_0x4fb6f5,_0x544853){_0x4fb6f5=_0x4fb6f5-0x8d;const _0x1fb00c=a105_0x1fb0();let _0x5d05b5=_0x1fb00c[_0x4fb6f5];return _0x5d05b5;}async function buildCreatePlan(_0x391566,_0x267b82){const _0x15e1d4=a105_0x40d072,_0x5def12=await fetchMutationSnapshot(_0x391566,'create\x20folder'),_0x4ca6d7=parseParentId(_0x391566,_0x15e1d4(0xa5))??null;if(_0x4ca6d7!=null)requireFolder(_0x5def12,_0x4ca6d7);const _0x429f7e=validateSort(_0x391566),_0x441a49=_0x429f7e??nextSiblingSort(_0x5def12,_0x4ca6d7,_0x15e1d4(0xc2)),_0x3bd57d=_0x391566[_0x15e1d4(0xa4)](_0x15e1d4(0x93))[_0x15e1d4(0x96)]();return mutationResult({'operation':'group-create','selector':{'label':_0x3bd57d,'parentId':_0x4ca6d7},'before':null,'after':{'id':null,'parentId':_0x4ca6d7,'label':_0x3bd57d,'path':_0x15e1d4(0xae),'type':_0x15e1d4(0xc2),'visible':!![],'sort':_0x441a49,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x267b82,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':_0x15e1d4(0xc6),'path':_0x15e1d4(0xaa),'body':{'parentId':toApiParentId(_0x4ca6d7),'label':_0x3bd57d,'type':_0x15e1d4(0xc2),'visible':!![],'sort':_0x441a49,'extend':{}}}],'snapshotHash':_0x5def12['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|
|
1
|
+
const a105_0x5702c3=a105_0x2535;(function(_0x265d34,_0x1021d9){const _0x1eb654=a105_0x2535,_0x47db29=_0x265d34();while(!![]){try{const _0xe8d70e=parseInt(_0x1eb654(0x171))/0x1*(-parseInt(_0x1eb654(0x182))/0x2)+parseInt(_0x1eb654(0x186))/0x3+-parseInt(_0x1eb654(0x15b))/0x4*(parseInt(_0x1eb654(0x173))/0x5)+parseInt(_0x1eb654(0x185))/0x6*(-parseInt(_0x1eb654(0x16d))/0x7)+-parseInt(_0x1eb654(0x18e))/0x8*(parseInt(_0x1eb654(0x15e))/0x9)+parseInt(_0x1eb654(0x177))/0xa+parseInt(_0x1eb654(0x19b))/0xb;if(_0xe8d70e===_0x1021d9)break;else _0x47db29['push'](_0x47db29['shift']());}catch(_0x4afa8c){_0x47db29['push'](_0x47db29['shift']());}}}(a105_0x2d51,0x468e3));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a105_0x2535(_0x996814,_0x4f0a15){_0x996814=_0x996814-0x15a;const _0x2d51dd=a105_0x2d51();let _0x2535a8=_0x2d51dd[_0x996814];return _0x2535a8;}import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';function a105_0x2d51(){const _0x2688af=['root','verify\x20folder\x20creation','menu_create_response_invalid','stringify','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','Menu\x20create\x20response\x20for\x20folder\x20','6684MBiJsx','Folder\x20label','pageId','24rMRcLH','865467HgIWCN','trim',';\x20verify\x20it\x20before\x20retrying.','resources','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','menu','path','depth','446664njpBMZ','string','\x20has\x20resources.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','str','group-create','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','failed','childrenCount','appCode','Created\x20folder\x20','verification','<platform-generated>','15285215QAxewY','length','\x22\x20with\x20a\x20platform-generated\x20path.','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','Created\x20menu\x20folder\x20','/smartapi/menu/create','parent-id','Created\x20menu\x20','4cIaxWk','byId','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','81aIjyLg','after','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','rabetbase\x20menu\x20list\x20--format\x20json','parentId','create-folder','isSafeInteger','\x20is\x20missing\x20from\x20menu\x20list.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20is\x20not\x20empty.','hash','sort','high-risk-write','Folder\x20','\x20has\x20an\x20unexpected\x20label.','586145viBZYP','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','create-response-validation','POST','79qkeexZ','menu\x20list','2366615rbcFFl','create\x20folder','\x20may\x20exist\x20online\x20at\x20path\x20','get','1857190CoWTYw','cookie','visible','folder','label'];a105_0x2d51=function(){return _0x2688af;};return a105_0x2d51();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a105_0x5702c3(0x1a1)}];export const menuGroupCreate={'service':a105_0x5702c3(0x18b),'command':a105_0x5702c3(0x193),'description':a105_0x5702c3(0x18a),'risk':a105_0x5702c3(0x16a),'structuredErrors':!![],'flags':[{'name':a105_0x5702c3(0x17b),'type':a105_0x5702c3(0x18f),'required':!![],'description':a105_0x5702c3(0x183)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xe34e8){validateCreateInput(_0xe34e8),requireExplicitYes(_0xe34e8);},async 'dryRun'(_0x3474e6){const _0x16dd68=a105_0x5702c3,_0x1a6cbf=await buildCreatePlan(_0x3474e6,!![]),_0x574b8a=_0x1a6cbf[_0x16dd68(0x15f)];return menuDryRunResult(_0x1a6cbf,{'method':_0x16dd68(0x170),'url':_0x16dd68(0x1a1),'body':{'parentId':toApiParentId(_0x574b8a['parentId']),'label':_0x574b8a['label'],'type':_0x16dd68(0x17a),'visible':!![],'sort':_0x574b8a['sort'],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x574b8a[_0x16dd68(0x17b)])+_0x16dd68(0x19d)});},async 'execute'(_0x56ed25){const _0x34c0b6=a105_0x5702c3;validateCreateInput(_0x56ed25),requireExplicitYes(_0x56ed25);const _0x4e492f=await buildCreatePlan(_0x56ed25,![]),_0x4a8835=_0x4e492f[_0x34c0b6(0x15f)];await recheckMutationSnapshot(_0x56ed25,_0x4e492f,_0x34c0b6(0x174));let _0x24cf83;try{_0x24cf83=await createMenuEntity(_0x56ed25[_0x34c0b6(0x197)],_0x56ed25[_0x34c0b6(0x178)],{'parentId':toApiParentId(_0x4a8835[_0x34c0b6(0x162)]),'label':String(_0x4a8835[_0x34c0b6(0x17b)]),'type':'folder','visible':!![],'sort':Number(_0x4a8835['sort']),'extend':{}});}catch(_0x4d15f9){const _0x50d165=mapMenuApiError(_0x4d15f9,_0x34c0b6(0x174));throw menuFailure(_0x50d165,_0x4e492f,{'stage':'create','failed':{}});}const _0x538055=Number(_0x24cf83['id']);if(!Number[_0x34c0b6(0x164)](_0x538055)||_0x538055<=0x0){const _0x29b305=menuError(_0x34c0b6(0x17e),_0x34c0b6(0x191),_0x34c0b6(0x166));throw menuFailure(_0x29b305,_0x4e492f,{'stage':_0x34c0b6(0x16f),'failed':{'createdId':_0x24cf83['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':_0x34c0b6(0x195),'lookupCommand':_0x34c0b6(0x161)}});}const _0x36389f=typeof _0x24cf83[_0x34c0b6(0x18c)]===_0x34c0b6(0x18f)?_0x24cf83[_0x34c0b6(0x18c)]:'';if(!_0x36389f[_0x34c0b6(0x187)]()){const _0x3d5fae=menuError(_0x34c0b6(0x17e),_0x34c0b6(0x181)+_0x538055+_0x34c0b6(0x16e),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x3d5fae,_0x4e492f,{'stage':_0x34c0b6(0x16f),'succeeded':[{'id':_0x538055,'created':!![]}],'failed':{'id':_0x538055,'generatedPathConfirmed':![]},'warnings':[_0x34c0b6(0x16b)+_0x538055+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x4a8835,'id':_0x538055,'path':_0x36389f},'verification':{'status':_0x34c0b6(0x195),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x538055}});}let _0x46a121;try{_0x46a121=await fetchMenuSnapshot(_0x56ed25[_0x34c0b6(0x197)],_0x56ed25[_0x34c0b6(0x178)]);}catch(_0x14ae72){const _0x28ad8b=describeMenuErrorCause(_0x14ae72,_0x34c0b6(0x17d),_0x538055),_0x489ab9=asVerificationError(_0x14ae72,'Folder\x20'+_0x538055+_0x34c0b6(0x160));throw menuFailure(_0x489ab9,_0x4e492f,{'stage':_0x34c0b6(0x199),'succeeded':[{'id':_0x538055,'created':!![],'path':_0x36389f}],'failed':{'id':_0x538055,'finalFactsConfirmed':![],..._0x28ad8b},'warnings':[_0x34c0b6(0x16b)+_0x538055+_0x34c0b6(0x175)+JSON[_0x34c0b6(0x17f)](_0x36389f)+_0x34c0b6(0x188)],'after':{..._0x4a8835,'id':_0x538055,'path':_0x36389f},'verification':{'status':'failed','lookupCommand':_0x34c0b6(0x161),'targetId':_0x538055}});}const _0x53a42e=_0x46a121[_0x34c0b6(0x15c)][_0x34c0b6(0x176)](_0x538055);let _0x230edb;try{assertVerified(Boolean(_0x53a42e),_0x34c0b6(0x198)+_0x538055+_0x34c0b6(0x165)),_0x230edb=_0x53a42e,assertVerified(_0x230edb['type']===_0x34c0b6(0x17a),_0x34c0b6(0x15a)+_0x538055+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x230edb[_0x34c0b6(0x17b)]===_0x4a8835['label'],_0x34c0b6(0x198)+_0x538055+_0x34c0b6(0x16c)),assertVerified(_0x230edb['path']===_0x36389f&&Boolean(_0x230edb[_0x34c0b6(0x18c)][_0x34c0b6(0x187)]()),'Created\x20folder\x20'+_0x538055+_0x34c0b6(0x180)),assertVerified(_0x230edb[_0x34c0b6(0x179)]===!![],'Created\x20folder\x20'+_0x538055+'\x20is\x20not\x20visible.'),assertVerified(_0x230edb[_0x34c0b6(0x189)][_0x34c0b6(0x19c)]===0x0,_0x34c0b6(0x198)+_0x538055+_0x34c0b6(0x190)),assertVerified(_0x230edb[_0x34c0b6(0x196)]===0x0,'Created\x20folder\x20'+_0x538055+_0x34c0b6(0x167)),assertVerified(_0x230edb['sort']===_0x4a8835[_0x34c0b6(0x169)],_0x34c0b6(0x198)+_0x538055+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x230edb[_0x34c0b6(0x162)]===_0x4a8835['parentId'],'Created\x20folder\x20'+_0x538055+'\x20has\x20unexpected\x20parent\x20'+(_0x230edb[_0x34c0b6(0x162)]??_0x34c0b6(0x17c))+'.'),assertVerified(_0x230edb[_0x34c0b6(0x184)]==null,_0x34c0b6(0x198)+_0x538055+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x5b674b=_0x230edb[_0x34c0b6(0x162)]==null?undefined:requireFolder(_0x46a121,_0x230edb[_0x34c0b6(0x162)]);assertVerified(_0x230edb[_0x34c0b6(0x18d)]===(_0x5b674b?_0x5b674b['depth']+0x1:0x0),_0x34c0b6(0x198)+_0x538055+_0x34c0b6(0x19e));}catch(_0x4d6596){const _0x5276f1=describeMenuErrorCause(_0x4d6596,_0x34c0b6(0x17d),_0x538055),_0x12e9c1=asVerificationError(_0x4d6596,_0x34c0b6(0x16b)+_0x538055+_0x34c0b6(0x19f));throw menuFailure(_0x12e9c1,_0x4e492f,{'stage':_0x34c0b6(0x199),'succeeded':[{'id':_0x538055,'created':!![],'path':_0x36389f}],'failed':{'id':_0x538055,'finalFactsConfirmed':![],..._0x5276f1},'warnings':['Folder\x20'+_0x538055+_0x34c0b6(0x194)],'after':_0x53a42e??{..._0x4a8835,'id':_0x538055,'path':_0x36389f},'verification':{'status':_0x34c0b6(0x195),'lookupCommand':_0x34c0b6(0x161),'targetId':_0x538055}});}const _0xcb4efd=mutationResult({..._0x4e492f,'after':_0x230edb,'dryRun':![],'succeeded':[{'id':_0x538055,'type':_0x34c0b6(0x17a),'path':_0x36389f}],'verification':{'checkedBy':_0x34c0b6(0x172),'snapshotHash':_0x46a121[_0x34c0b6(0x168)],'folder':!![],'path':_0x36389f,'emptyResources':!![]}});return{'ok':!![],'data':_0xcb4efd,'message':_0x34c0b6(0x1a0)+_0x538055+'.'};}};function validateCreateInput(_0x10fd83){const _0x1ba66e=a105_0x5702c3,_0x3bf8f5=_0x10fd83[_0x1ba66e(0x192)](_0x1ba66e(0x17b))[_0x1ba66e(0x187)]();if(!_0x3bf8f5)throw CliErrors['flagMissing'](_0x1ba66e(0x17b));parseParentId(_0x10fd83,'parent-id'),validateSort(_0x10fd83);}async function buildCreatePlan(_0x235f12,_0x5eeb82){const _0x56743f=a105_0x5702c3,_0x560596=await fetchMutationSnapshot(_0x235f12,'create\x20folder'),_0x29d44f=parseParentId(_0x235f12,_0x56743f(0x1a2))??null;if(_0x29d44f!=null)requireFolder(_0x560596,_0x29d44f);const _0x5566d9=validateSort(_0x235f12),_0x1f45c3=_0x5566d9??nextSiblingSort(_0x560596,_0x29d44f,_0x56743f(0x17a)),_0x79ca2=_0x235f12[_0x56743f(0x192)](_0x56743f(0x17b))[_0x56743f(0x187)]();return mutationResult({'operation':'group-create','selector':{'label':_0x79ca2,'parentId':_0x29d44f},'before':null,'after':{'id':null,'parentId':_0x29d44f,'label':_0x79ca2,'path':_0x56743f(0x19a),'type':_0x56743f(0x17a),'visible':!![],'sort':_0x1f45c3,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x5eeb82,'backend':[...BACKEND],'plannedActions':[{'stage':_0x56743f(0x163),'method':_0x56743f(0x170),'path':_0x56743f(0x1a1),'body':{'parentId':toApiParentId(_0x29d44f),'label':_0x79ca2,'type':'folder','visible':!![],'sort':_0x1f45c3,'extend':{}}}],'snapshotHash':_0x560596[_0x56743f(0x168)],'warnings':[_0x56743f(0x15d)]});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a106_0x29d433=a106_0x17b8;(function(_0x19e58f,_0x2dd068){const _0x5a0f46=a106_0x17b8,_0x3c05cc=_0x19e58f();while(!![]){try{const _0x3f8eab=parseInt(_0x5a0f46(0x8c))/0x1*(-parseInt(_0x5a0f46(0x8e))/0x2)+-parseInt(_0x5a0f46(0x91))/0x3+parseInt(_0x5a0f46(0x9d))/0x4+parseInt(_0x5a0f46(0x96))/0x5*(parseInt(_0x5a0f46(0x76))/0x6)+-parseInt(_0x5a0f46(0x84))/0x7+parseInt(_0x5a0f46(0x82))/0x8+parseInt(_0x5a0f46(0x7a))/0x9*(parseInt(_0x5a0f46(0x90))/0xa);if(_0x3f8eab===_0x2dd068)break;else _0x3c05cc['push'](_0x3c05cc['shift']());}catch(_0x2d8fdc){_0x3c05cc['push'](_0x3c05cc['shift']());}}}(a106_0x1bd1,0xdef95));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,requireExplicitYes,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':a106_0x29d433(0xa4),'path':'/smartapi/menu/update'}];export const menuGroupUpdate={'service':a106_0x29d433(0x95),'command':a106_0x29d433(0x7b),'description':a106_0x29d433(0x79),'risk':a106_0x29d433(0xa5),'structuredErrors':!![],'rejectedFlags':[{'name':'parent-id','message':a106_0x29d433(0x93),'hint':a106_0x29d433(0xa1)}],'flags':[MENU_ID_FLAG,{'name':a106_0x29d433(0x77),'type':'string','description':a106_0x29d433(0x9f)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5a8ce2){validateUpdateInput(_0x5a8ce2),requireExplicitYes(_0x5a8ce2);},async 'dryRun'(_0x11029f){const _0x2719f3=a106_0x29d433;validateUpdateInput(_0x11029f);const {plan:_0x2c3d44,patch:_0x4bf62c}=await buildUpdatePlan(_0x11029f,!![]);return menuDryRunResult(_0x2c3d44,{'method':'POST','url':'/smartapi/menu/update','body':_0x4bf62c,'description':'Would\x20update\x20folder\x20'+_0x2c3d44[_0x2719f3(0x9e)]['id']+'.'});},async 'execute'(_0x3e72bb){const _0x483c7e=a106_0x29d433;validateUpdateInput(_0x3e72bb),requireExplicitYes(_0x3e72bb);const {plan:_0xb876ac,patch:_0xa694eb,noChanges:_0x35636a}=await buildUpdatePlan(_0x3e72bb,![]),_0x28e7f3=Number(_0xb876ac['selector']['id']),_0x2c8f55=await recheckMutationSnapshot(_0x3e72bb,_0xb876ac,_0x483c7e(0x7f),_0x28e7f3);if(!_0x35636a)try{await updateMenuEntity(_0x3e72bb['appCode'],_0x3e72bb['cookie'],_0xa694eb);}catch(_0x3755d){const _0xe6502b=mapMenuApiError(_0x3755d,'update\x20folder',_0x28e7f3);throw menuFailure(_0xe6502b,_0xb876ac,{'stage':_0x483c7e(0x9c),'failed':{'id':_0x28e7f3}});}let _0x54a054=_0x2c8f55,_0x228464;try{!_0x35636a&&(_0x54a054=await fetchMenuSnapshot(_0x3e72bb[_0x483c7e(0xa0)],_0x3e72bb[_0x483c7e(0x88)])),_0x228464=requireMenu(_0x54a054,_0x28e7f3),verifyPatch(_0x228464,_0xa694eb),_0x228464[_0x483c7e(0x94)]!=null&&requireFolder(_0x54a054,_0x228464[_0x483c7e(0x94)]);}catch(_0x402c77){const _0x6d88e5=describeMenuErrorCause(_0x402c77,_0x483c7e(0x7d),_0x28e7f3),_0x327fff=asVerificationError(_0x402c77,_0x483c7e(0x8d)+_0x28e7f3+_0x483c7e(0x87));throw menuFailure(_0x327fff,_0xb876ac,{'stage':_0x483c7e(0x9b),'succeeded':[{'id':_0x28e7f3,'updateRequested':!_0x35636a,'skipped':_0x35636a}],'failed':{'id':_0x28e7f3,'requestedStateConfirmed':![],..._0x6d88e5},'warnings':['The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x483c7e(0x74),'lookupCommand':_0x483c7e(0x80),'targetId':_0x28e7f3}});}const _0x3bbc1e=mutationResult({..._0xb876ac,'after':_0x228464,'dryRun':![],'succeeded':[{'id':_0x28e7f3,'updated':!_0x35636a,'skipped':_0x35636a}],'verification':{'checkedBy':_0x483c7e(0x98),'snapshotHash':_0x54a054['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x3bbc1e,'message':_0x35636a?'Folder\x20'+_0x28e7f3+_0x483c7e(0x75):_0x483c7e(0x92)+_0x28e7f3+'.'};}};function validateUpdateInput(_0x26e969){const _0x233d0d=a106_0x29d433;validateExactId(_0x26e969);if(hasFlag(_0x26e969,_0x233d0d(0x7e)))throw CliErrors[_0x233d0d(0x97)](_0x233d0d(0x93),_0x233d0d(0xa1));if(!hasFlag(_0x26e969,_0x233d0d(0x77))&&!hasFlag(_0x26e969,'sort'))throw CliErrors['validation'](_0x233d0d(0x99));if(hasFlag(_0x26e969,_0x233d0d(0x77))&&!_0x26e969[_0x233d0d(0x85)](_0x233d0d(0x77))[_0x233d0d(0x8f)]())throw CliErrors['validation'](_0x233d0d(0x78));validateSort(_0x26e969);}async function buildUpdatePlan(_0x1b9652,_0x156b47){const _0x3c4a11=a106_0x29d433,_0x46e63d=validateExactId(_0x1b9652),_0x4baa78=await fetchMutationSnapshot(_0x1b9652,'update\x20folder',_0x46e63d),_0x10874b=requireMenu(_0x4baa78,_0x46e63d);if(_0x10874b[_0x3c4a11(0xa2)]!==_0x3c4a11(0x7c))throw menuError(_0x3c4a11(0xa3),'Menu\x20'+_0x46e63d+_0x3c4a11(0x9a)+(_0x10874b['type']||_0x3c4a11(0x86))+'\x22,\x20not\x20folder.',_0x3c4a11(0x8a));assertExpectedState(_0x1b9652,_0x10874b);const _0x50b58a={'id':_0x46e63d},_0xe1f5e={..._0x10874b};if(hasFlag(_0x1b9652,_0x3c4a11(0x77))){const _0x3ab322=_0x1b9652['str'](_0x3c4a11(0x77))[_0x3c4a11(0x8f)]();_0x50b58a['label']=_0x3ab322,_0xe1f5e['label']=_0x3ab322;}if(hasFlag(_0x1b9652,_0x3c4a11(0x83))){const _0x5405a0=validateSort(_0x1b9652);_0x50b58a[_0x3c4a11(0x83)]=_0x5405a0,_0xe1f5e[_0x3c4a11(0x83)]=_0x5405a0;}const _0x24a203=sameRequestedState(_0x10874b,_0xe1f5e),_0x2d9847=_0x24a203?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x50b58a,'noChanges':_0x24a203,'plan':mutationResult({'operation':_0x3c4a11(0x7b),'selector':{'id':_0x46e63d},'before':_0x10874b,'after':_0xe1f5e,'dryRun':_0x156b47,'backend':[...BACKEND],'snapshotHash':_0x4baa78['hash'],'warnings':_0x2d9847})};}function a106_0x1bd1(){const _0x46885d=['\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','cookie','\x20sort\x20update\x20did\x20not\x20take\x20effect.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','\x20label\x20update\x20did\x20not\x20take\x20effect.','567529WbRmDi','Update\x20request\x20for\x20folder\x20','4upiqea','trim','159010Zswyng','3797418eEpfKC','Updated\x20folder\x20','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','parentId','menu','45TSdlpZ','validation','menu\x20list','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','\x20is\x20type\x20\x22','verification','update','2998200ECgHTb','selector','New\x20folder\x20label','appCode','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','type','menu_not_folder','POST','high-risk-write','Menu\x20','failed','\x20already\x20matches\x20the\x20requested\x20state.','767508DrPInX','label','--label\x20cannot\x20be\x20empty.','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','1044CdhSHz','group-update','folder','verify\x20folder\x20update','parent-id','update\x20folder','rabetbase\x20menu\x20list\x20--format\x20json','Folder\x20','2092760ZIyrhI','sort','4849306rhOMxp','str','unknown'];a106_0x1bd1=function(){return _0x46885d;};return a106_0x1bd1();}function a106_0x17b8(_0x2310e7,_0x50b600){_0x2310e7=_0x2310e7-0x73;const _0x1bd177=a106_0x1bd1();let _0x17b8aa=_0x1bd177[_0x2310e7];return _0x17b8aa;}function sameRequestedState(_0x4cd9e8,_0x238eaa){return _0x4cd9e8['label']===_0x238eaa['label']&&_0x4cd9e8['sort']===_0x238eaa['sort'];}function verifyPatch(_0x35d8d3,_0x292038){const _0x2b10ad=a106_0x29d433;assertVerified(_0x35d8d3['type']===_0x2b10ad(0x7c),_0x2b10ad(0x73)+_0x35d8d3['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x292038[_0x2b10ad(0x77)]!==undefined&&assertVerified(_0x35d8d3['label']===_0x292038[_0x2b10ad(0x77)],_0x2b10ad(0x81)+_0x35d8d3['id']+_0x2b10ad(0x8b)),_0x292038[_0x2b10ad(0x83)]!==undefined&&assertVerified(_0x35d8d3['sort']===_0x292038[_0x2b10ad(0x83)],_0x2b10ad(0x81)+_0x35d8d3['id']+_0x2b10ad(0x89));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5e75ef,_0x48bfaa){const _0x540546=a107_0x13ac,_0x1b6595=_0x5e75ef();while(!![]){try{const _0x3540e6=parseInt(_0x540546(0x1f6))/0x1+-parseInt(_0x540546(0x1f9))/0x2+-parseInt(_0x540546(0x1f4))/0x3*(parseInt(_0x540546(0x1fa))/0x4)+parseInt(_0x540546(0x1f5))/0x5*(-parseInt(_0x540546(0x1f2))/0x6)+-parseInt(_0x540546(0x1f3))/0x7+-parseInt(_0x540546(0x1f1))/0x8+parseInt(_0x540546(0x1f8))/0x9*(parseInt(_0x540546(0x1f7))/0xa);if(_0x3540e6===_0x48bfaa)break;else _0x1b6595['push'](_0x1b6595['shift']());}catch(_0x280970){_0x1b6595['push'](_0x1b6595['shift']());}}}(a107_0x4fc3,0xd37d7));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';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';function a107_0x4fc3(){const _0x1c8ffb=['3668184SiRauD','6816KitMxk','8547469MEoZQI','351QzjHlR','3805Swzveh','173980yMRGqT','10BYlYpK','34861707EOnasG','536038tEKLoa','12620rjDVoQ'];a107_0x4fc3=function(){return _0x1c8ffb;};return a107_0x4fc3();}import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';function a107_0x13ac(_0x5b2af7,_0x4ef574){_0x5b2af7=_0x5b2af7-0x1f1;const _0x4fc39b=a107_0x4fc3();let _0x13ac57=_0x4fc39b[_0x5b2af7];return _0x13ac57;}import{menuRename}from'../../commands/menu/rename.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a108_0x4949b5=a108_0x449f;(function(_0x10cf8e,_0x29937d){const _0x75a4a=a108_0x449f,_0x1de5b2=_0x10cf8e();while(!![]){try{const _0x5e690b=parseInt(_0x75a4a(0x148))/0x1*(parseInt(_0x75a4a(0x149))/0x2)+parseInt(_0x75a4a(0x14f))/0x3+-parseInt(_0x75a4a(0x13f))/0x4+-parseInt(_0x75a4a(0x153))/0x5+parseInt(_0x75a4a(0x14a))/0x6*(parseInt(_0x75a4a(0x157))/0x7)+-parseInt(_0x75a4a(0x14c))/0x8*(parseInt(_0x75a4a(0x147))/0x9)+parseInt(_0x75a4a(0x142))/0xa;if(_0x5e690b===_0x29937d)break;else _0x1de5b2['push'](_0x1de5b2['shift']());}catch(_0x2683f7){_0x1de5b2['push'](_0x1de5b2['shift']());}}}(a108_0x38b7,0xb6bb3));function a108_0x38b7(){const _0x3c71b3=['verbose','17402430PiuXoe','read','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','boolean','total','5410503dvKcYd','189851rESjYq','8NgCLtC','974196NBmpMy','\x20menu(s)','16cwVnld','No\x20menus\x20found.','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','2320761yvyDOw','bool','appCode','menus','3985880eAjZtO','map','cookie','hash','35qicDzA','list','5348348uFDQKS','Found\x20'];a108_0x38b7=function(){return _0x3c71b3;};return a108_0x38b7();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a108_0x449f(_0x2778bd,_0x1cb369){_0x2778bd=_0x2778bd-0x13f;const _0x38b749=a108_0x38b7();let _0x449f30=_0x38b749[_0x2778bd];return _0x449f30;}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':'menu','command':a108_0x4949b5(0x158),'description':a108_0x4949b5(0x14e),'risk':a108_0x4949b5(0x143),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a108_0x4949b5(0x141),'type':a108_0x4949b5(0x145),'description':a108_0x4949b5(0x144)}],async 'execute'(_0x28d52d){const _0x33d52e=a108_0x4949b5,_0x129753=_0x28d52d[_0x33d52e(0x150)](_0x33d52e(0x141)),_0x5c7fbb=await fetchMenuSnapshot(_0x28d52d[_0x33d52e(0x151)],_0x28d52d[_0x33d52e(0x155)],{'verbose':_0x129753});return{'ok':!![],'data':{'total':_0x5c7fbb[_0x33d52e(0x146)],'snapshotHash':_0x5c7fbb[_0x33d52e(0x156)],'menus':_0x5c7fbb[_0x33d52e(0x152)][_0x33d52e(0x154)](toMenuListItem)},'message':_0x5c7fbb[_0x33d52e(0x146)]===0x0?_0x33d52e(0x14d):_0x33d52e(0x140)+_0x5c7fbb['total']+_0x33d52e(0x14b)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a109_0xdef934=a109_0xd36c;(function(_0x2eb931,_0x2444aa){const _0x2e6bc5=a109_0xd36c,_0x161a4f=_0x2eb931();while(!![]){try{const _0x18c522=parseInt(_0x2e6bc5(0x1e4))/0x1+-parseInt(_0x2e6bc5(0x208))/0x2*(-parseInt(_0x2e6bc5(0x213))/0x3)+parseInt(_0x2e6bc5(0x1f3))/0x4+parseInt(_0x2e6bc5(0x1e7))/0x5+parseInt(_0x2e6bc5(0x1ee))/0x6+parseInt(_0x2e6bc5(0x1ef))/0x7+-parseInt(_0x2e6bc5(0x1ff))/0x8;if(_0x18c522===_0x2444aa)break;else _0x161a4f['push'](_0x161a4f['shift']());}catch(_0x8e0726){_0x161a4f['push'](_0x161a4f['shift']());}}}(a109_0x539e,0xa9693));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a109_0x539e(){const _0x3edc14=['\x20parent\x20changed:\x20expected\x20','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','15grrNoh','menu','411197BcAUmc','Would\x20move\x20menu\x20','\x20is\x20now\x20type\x20folder.','4162835rpDIQU','menu_move_source_not_leaf','parentId','\x20is\x20no\x20longer\x20a\x20leaf.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','verification','parent-id','607902lqAFIq','2331175HTVkcJ','folder','Menu\x20','rabetbase\x20menu\x20list\x20--format\x20compress','139984cXLVmN','high-risk-write','Move\x20request\x20for\x20menu\x20','childrenCount','move','verify\x20menu\x20move','expect-parent-id','sort','POST','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','11016320XRMcaL','update',',\x20current\x20','hash','cookie','appCode','Moved\x20menu\x20','after','move-menu','143138mGhHEy','failed','type','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','/smartapi/menu/update'];a109_0x539e=function(){return _0x3edc14;};return a109_0x539e();}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,requireExplicitYes,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':a109_0xdef934(0x1fb),'path':a109_0xdef934(0x20f)}];export const menuMove={'service':a109_0xdef934(0x1e3),'command':a109_0xdef934(0x1f7),'description':a109_0xdef934(0x211),'risk':a109_0xdef934(0x1f4),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x288cf7){validateMoveInput(_0x288cf7),requireExplicitYes(_0x288cf7);},async 'dryRun'(_0x4e81ac){const _0x893967=a109_0xdef934,{plan:_0x2a20d8,patch:_0x1d5921}=await buildMovePlan(_0x4e81ac,!![]);return menuDryRunResult(_0x2a20d8,{'method':_0x893967(0x1fb),'url':_0x893967(0x20f),'body':{..._0x1d5921,'appCode':_0x4e81ac[_0x893967(0x204)]},'description':_0x893967(0x1e5)+_0x1d5921['id']+'.'});},async 'execute'(_0x48cc2b){const _0x3d5a89=a109_0xdef934;validateMoveInput(_0x48cc2b),requireExplicitYes(_0x48cc2b);const {plan:_0x3686ac,patch:_0x239c7d,noChanges:_0x543654,snapshot:_0x16ffef}=await buildMovePlan(_0x48cc2b,![]),_0x57909a=_0x239c7d['id'];if(!_0x543654)try{await updateMenuEntity(_0x48cc2b[_0x3d5a89(0x204)],_0x48cc2b[_0x3d5a89(0x203)],_0x239c7d);}catch(_0x612fbd){const _0x210723=mapMenuApiError(_0x612fbd,_0x3d5a89(0x1f7),_0x57909a);throw menuFailure(_0x210723,_0x3686ac,{'stage':_0x3d5a89(0x200),'failed':{'id':_0x57909a},'warnings':[_0x3d5a89(0x20c)],'verification':{'status':_0x3d5a89(0x209),'targetId':_0x57909a,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0x576273,_0x5aec15;try{_0x576273=_0x543654?_0x16ffef:await fetchMenuSnapshot(_0x48cc2b[_0x3d5a89(0x204)],_0x48cc2b[_0x3d5a89(0x203)]),_0x5aec15=requireMenu(_0x576273,_0x57909a),verifyMove(_0x5aec15,_0x3686ac[_0x3d5a89(0x206)]),_0x5aec15[_0x3d5a89(0x1e9)]!==null&&requireFolder(_0x576273,_0x5aec15['parentId']);}catch(_0x424de2){const _0x14b447=describeMenuErrorCause(_0x424de2,_0x3d5a89(0x1f8),_0x57909a),_0x47ceca=asVerificationError(_0x424de2,_0x3d5a89(0x1f5)+_0x57909a+_0x3d5a89(0x1eb));throw menuFailure(_0x47ceca,_0x3686ac,{'stage':_0x3d5a89(0x1ec),'succeeded':[{'id':_0x57909a,'updateRequested':!_0x543654,'skipped':_0x543654}],'failed':{'id':_0x57909a,'requestedStateConfirmed':![],..._0x14b447},'warnings':[_0x3d5a89(0x20d)],'verification':{'status':'failed','targetId':_0x57909a,'lookupCommand':_0x3d5a89(0x1f2)}});}const _0x2f49db=mutationResult({..._0x3686ac,'after':_0x5aec15,'dryRun':![],'succeeded':[{'id':_0x57909a,'updated':!_0x543654,'skipped':_0x543654}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x576273[_0x3d5a89(0x202)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x2f49db,'message':_0x543654?_0x3d5a89(0x1f1)+_0x57909a+_0x3d5a89(0x20b):_0x3d5a89(0x205)+_0x57909a+'.'};}};function a109_0xd36c(_0x44740a,_0x20fd64){_0x44740a=_0x44740a-0x1e3;const _0x539e64=a109_0x539e();let _0xd36cf6=_0x539e64[_0x44740a];return _0xd36cf6;}function validateMoveInput(_0x2e3f36){const _0x5f1249=a109_0xdef934;validateExactId(_0x2e3f36),parseParentId(_0x2e3f36,_0x5f1249(0x1ed),{'required':!![]}),parseParentId(_0x2e3f36,_0x5f1249(0x1f9),{'required':!![]}),validateSort(_0x2e3f36);}async function buildMovePlan(_0x1bfee9,_0xf12a13){const _0x4ce8fb=a109_0xdef934,_0x47f1dd=validateExactId(_0x1bfee9),_0xd2ff85=parseParentId(_0x1bfee9,_0x4ce8fb(0x1ed),{'required':!![]}),_0x52f0c6=parseParentId(_0x1bfee9,_0x4ce8fb(0x1f9),{'required':!![]}),_0x412e65=validateSort(_0x1bfee9),_0x5cdbbb=await fetchMutationSnapshot(_0x1bfee9,'move\x20menu',_0x47f1dd),_0x534070=requireMenu(_0x5cdbbb,_0x47f1dd);if(_0x534070[_0x4ce8fb(0x20a)]===_0x4ce8fb(0x1f0)||_0x534070[_0x4ce8fb(0x1f6)]!==0x0)throw menuError(_0x4ce8fb(0x1e8),'Menu\x20'+_0x47f1dd+_0x4ce8fb(0x1fc),_0x4ce8fb(0x20e));if(_0x534070[_0x4ce8fb(0x1e9)]!==_0x52f0c6)throw menuError('menu_state_drift',_0x4ce8fb(0x1f1)+_0x47f1dd+_0x4ce8fb(0x210)+formatParent(_0x52f0c6)+_0x4ce8fb(0x201)+formatParent(_0x534070[_0x4ce8fb(0x1e9)])+'.',_0x4ce8fb(0x1fe));_0xd2ff85!==null&&requireFolder(_0x5cdbbb,_0xd2ff85);const _0x577f7a=_0x412e65??(_0x534070['parentId']===_0xd2ff85?_0x534070[_0x4ce8fb(0x1fa)]??0x0:nextSiblingSort(_0x5cdbbb,_0xd2ff85,_0x4ce8fb(0x1e3))),_0x17d671={..._0x534070,'parentId':_0xd2ff85,'sort':_0x577f7a},_0x4e356f={'id':_0x47f1dd,'parentId':toApiParentId(_0xd2ff85),'sort':_0x577f7a},_0x50a64f=_0x534070[_0x4ce8fb(0x1e9)]===_0xd2ff85&&_0x534070[_0x4ce8fb(0x1fa)]===_0x577f7a;return{'patch':_0x4e356f,'noChanges':_0x50a64f,'snapshot':_0x5cdbbb,'plan':mutationResult({'operation':_0x4ce8fb(0x1f7),'selector':{'id':_0x47f1dd,'parentId':_0xd2ff85},'before':_0x534070,'after':_0x17d671,'dryRun':_0xf12a13,'backend':[...BACKEND],'plannedActions':[{'stage':_0x4ce8fb(0x207),'method':_0x4ce8fb(0x1fb),'path':_0x4ce8fb(0x20f),'body':{..._0x4e356f,'appCode':_0x1bfee9[_0x4ce8fb(0x204)]}}],'snapshotHash':_0x5cdbbb[_0x4ce8fb(0x202)],'warnings':_0x50a64f?['Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.']:[]})};}function verifyMove(_0x21f019,_0x3ec089){const _0x29ed15=a109_0xdef934;assertVerified(_0x21f019[_0x29ed15(0x20a)]!==_0x29ed15(0x1f0),'Menu\x20'+_0x21f019['id']+_0x29ed15(0x1e6)),assertVerified(_0x21f019[_0x29ed15(0x1f6)]===0x0,_0x29ed15(0x1f1)+_0x21f019['id']+_0x29ed15(0x1ea)),assertVerified(_0x21f019[_0x29ed15(0x1e9)]===_0x3ec089['parentId'],_0x29ed15(0x1f1)+_0x21f019['id']+_0x29ed15(0x212)),assertVerified(_0x21f019[_0x29ed15(0x1fa)]===_0x3ec089['sort'],_0x29ed15(0x1f1)+_0x21f019['id']+_0x29ed15(0x1fd));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a110_0x806217=a110_0xd04b;function a110_0xd04b(_0x590320,_0x11bacc){_0x590320=_0x590320-0xd9;const _0x54aa13=a110_0x54aa();let _0xd04b8d=_0x54aa13[_0x590320];return _0xd04b8d;}(function(_0x4f72db,_0x2903db){const _0x89f0ce=a110_0xd04b,_0x9c35f8=_0x4f72db();while(!![]){try{const _0x44a2c1=parseInt(_0x89f0ce(0xdf))/0x1+parseInt(_0x89f0ce(0xe7))/0x2*(-parseInt(_0x89f0ce(0x102))/0x3)+parseInt(_0x89f0ce(0xf4))/0x4+-parseInt(_0x89f0ce(0x11e))/0x5*(parseInt(_0x89f0ce(0x114))/0x6)+-parseInt(_0x89f0ce(0x120))/0x7+-parseInt(_0x89f0ce(0xe0))/0x8+parseInt(_0x89f0ce(0x10b))/0x9;if(_0x44a2c1===_0x2903db)break;else _0x9c35f8['push'](_0x9c35f8['shift']());}catch(_0x89ac0b){_0x9c35f8['push'](_0x9c35f8['shift']());}}}(a110_0x54aa,0xef45f));function a110_0x54aa(){const _0x293f5b=['test','split','applied','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','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.','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','48QnEpwI','label','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','flagMissing','POST','group','status','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','folder','351930jfvNgc','menu\x20list','5731369DJtccD',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','appCode','filter','string','plan','menu-ids','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','Regroup\x20task\x20','message','\x20and\x20regroup\x20menu\x20ids\x20','taskId','Regroup\x20readback\x20failed:\x20','sort','hash','trim','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','menu_regroup_target_not_leaf','toLowerCase','input','\x27\x5c\x27\x27','Regroup\x20readback\x20also\x20failed:\x20','menu_regroup_already_applied','some','menu_regroup_target_label_missing','menu_regroup_label_conflict','readbackError','menuIds','parentId','309050daSVZX','10996688ZakWrJ','type','\x20--format\x20compress','--menu-ids\x20supports\x20at\x20most\x20','map','unconfirmed','/smartapi/menu/regroup','14414wALvZZ','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','length','regroup-start','warnings','get','<platform-generated>','high-risk-write','start\x20menu\x20regroup','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','validation','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','plan\x20regroup','6514496FgtXlb','submit-regroup-task','<new-group-id>','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','FAILED','size','knownStatus','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','Root\x20folder\x20label\x20','str','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','Label\x20of\x20the\x20new\x20root\x20folder','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','Menu\x20','630qHxCcb','childrenIds','regroup-submit','cookie','menu','SUCCESS','byId','stringify','join','29810700nAAzWv','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'];a110_0x54aa=function(){return _0x293f5b;};return a110_0x54aa();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,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':a110_0x806217(0x119),'path':a110_0x806217(0xe6)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a110_0x806217(0x106),'command':a110_0x806217(0xea),'description':a110_0x806217(0x116),'risk':a110_0x806217(0xee),'structuredErrors':!![],'flags':[{'name':a110_0x806217(0x115),'type':a110_0x806217(0x124),'required':!![],'description':a110_0x806217(0xff)},{'name':a110_0x806217(0x126),'type':a110_0x806217(0x124),'required':!![],'description':a110_0x806217(0xfe)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5c8732){validateRegroupInput(_0x5c8732),requireExplicitYes(_0x5c8732);},async 'dryRun'(_0x2645b4){const _0x490993=a110_0x806217;validateRegroupInput(_0x2645b4);const _0x571cdd=await buildRegroupPlan(_0x2645b4,!![]);return menuDryRunResult(_0x571cdd[_0x490993(0x125)],{'method':_0x490993(0x119),'url':_0x490993(0xe6),'body':_0x571cdd['input'],'description':_0x490993(0xe8)+JSON[_0x490993(0x109)](_0x571cdd[_0x490993(0x115)])+_0x490993(0x12a)+_0x571cdd[_0x490993(0xdd)][_0x490993(0x10a)](',\x20')+_0x490993(0x121)});},async 'execute'(_0x8910bf){const _0x11bb4d=a110_0x806217;validateRegroupInput(_0x8910bf),requireExplicitYes(_0x8910bf);const _0x5c50bd=await buildRegroupPlan(_0x8910bf,![]);await recheckMutationSnapshot(_0x8910bf,_0x5c50bd[_0x11bb4d(0x125)],'start\x20regroup');const _0x59b1e6=buildMenuLookupCommand(_0x8910bf[_0x11bb4d(0x122)]);let _0x41fda1,_0x44b406;try{_0x41fda1=await startMenuRegroup(_0x8910bf[_0x11bb4d(0x105)],_0x5c50bd[_0x11bb4d(0x133)]),_0x44b406=normalizeAsyncTask(_0x41fda1);}catch(_0x59d19c){const _0x465296=await inspectRegroupAfterFailure(_0x8910bf[_0x11bb4d(0x122)],_0x8910bf[_0x11bb4d(0x105)],_0x5c50bd[_0x11bb4d(0x115)],_0x5c50bd[_0x11bb4d(0xdd)]),_0x3a9edd=typeof _0x41fda1?.[_0x11bb4d(0x12b)]===_0x11bb4d(0x124)&&_0x41fda1[_0x11bb4d(0x12b)][_0x11bb4d(0x12f)]()?_0x41fda1[_0x11bb4d(0x12b)]['trim']():null,_0x43f899=_0x3a9edd?{'command':buildAsyncTaskStatusCommand(_0x3a9edd,_0x8910bf[_0x11bb4d(0x122)])}:null,_0x4e8924=mapMenuApiError(_0x59d19c,_0x11bb4d(0xef));throw menuFailure(_0x4e8924,_0x5c50bd['plan'],{'stage':_0x11bb4d(0x104),'failed':{'menuIds':_0x5c50bd['menuIds'],'taskId':_0x3a9edd,'groupingApplied':_0x465296[_0x11bb4d(0x10f)]?!![]:_0x11bb4d(0xe5)},'after':_0x465296[_0x11bb4d(0x10f)]??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.',..._0x465296[_0x11bb4d(0xdc)]?[_0x11bb4d(0x135)+_0x465296['readbackError']]:[],..._0x3a9edd?[_0x11bb4d(0xf7)]:[]],'verification':{'status':'failed','groupingApplied':_0x465296['applied']?!![]:'unconfirmed','taskId':_0x3a9edd,'query':_0x43f899,'lookupCommand':_0x59b1e6}});}const _0x31d97f=buildAsyncTaskStatusCommand(_0x44b406[_0x11bb4d(0x12b)],_0x8910bf[_0x11bb4d(0x122)]);let _0x2450c0=null,_0x2733a4=null,_0x4d5474=null;try{_0x2450c0=await fetchMenuSnapshot(_0x8910bf['appCode'],_0x8910bf[_0x11bb4d(0x105)]),_0x2733a4=findAppliedRegroup(_0x2450c0,_0x5c50bd[_0x11bb4d(0x115)],_0x5c50bd[_0x11bb4d(0xdd)]);}catch(_0x45cee3){_0x4d5474=_0x45cee3 instanceof Error?_0x45cee3[_0x11bb4d(0x129)]:String(_0x45cee3);}const _0x4a9bf7=mutationResult({..._0x5c50bd[_0x11bb4d(0x125)],'after':_0x2733a4??null,'dryRun':![],'succeeded':[{'groupId':_0x2733a4?.[_0x11bb4d(0x11a)]['id']??null,'menuIds':_0x5c50bd[_0x11bb4d(0xdd)],'taskId':_0x44b406[_0x11bb4d(0x12b)],'status':_0x44b406['status'],'groupingApplied':_0x2733a4?!![]:_0x11bb4d(0xe5)}],'verification':{'checkedBy':_0x11bb4d(0x11f),'snapshotHash':_0x2450c0?.[_0x11bb4d(0x12e)]??null,'groupId':_0x2733a4?.['group']['id']??null,'groupingApplied':_0x2733a4?!![]:'unconfirmed','readbackError':_0x4d5474,'lookupCommand':_0x59b1e6},'warnings':[..._0x5c50bd[_0x11bb4d(0x125)][_0x11bb4d(0xeb)],...!_0x2733a4?[unconfirmedRegroupWarning(_0x44b406)]:[],..._0x4d5474?[_0x11bb4d(0x12c)+_0x4d5474]:[]]}),_0x377aa8=_0x44b406['status']===_0x11bb4d(0x107)&&!_0x2733a4?_0x11bb4d(0x128)+_0x44b406[_0x11bb4d(0x12b)]+_0x11bb4d(0x127):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x44b406);return{'ok':!![],'message':_0x377aa8,'data':{..._0x4a9bf7,'task':_0x44b406,'query':_0x44b406['isTerminal']?null:{'command':_0x31d97f}}};}};function validateRegroupInput(_0x129581){const _0x5aa2ca=a110_0x806217;if(!_0x129581[_0x5aa2ca(0xfd)](_0x5aa2ca(0x115))[_0x5aa2ca(0x12f)]())throw CliErrors[_0x5aa2ca(0x118)]('label');parseMenuIds(_0x129581[_0x5aa2ca(0xfd)](_0x5aa2ca(0x126)));}function parseMenuIds(_0x1a1ad1){const _0x262c7d=a110_0x806217,_0x204f60=_0x1a1ad1[_0x262c7d(0x10e)](',')[_0x262c7d(0xe4)](_0x2efb90=>_0x2efb90[_0x262c7d(0x12f)]());if(_0x204f60[_0x262c7d(0xe9)]===0x0||_0x204f60[_0x262c7d(0xd9)](_0x4367be=>!_0x4367be))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x205aef=_0x204f60[_0x262c7d(0xe4)](_0x124ff2=>{const _0x68953=_0x262c7d;if(!/^\d+$/[_0x68953(0x10d)](_0x124ff2))throw CliErrors[_0x68953(0xf1)](_0x68953(0xf2));const _0xc613a5=Number(_0x124ff2);if(!Number['isSafeInteger'](_0xc613a5)||_0xc613a5<=0x0)throw CliErrors[_0x68953(0xf1)](_0x68953(0xf2));return _0xc613a5;});if(new Set(_0x205aef)[_0x262c7d(0xf9)]!==_0x205aef[_0x262c7d(0xe9)])throw CliErrors[_0x262c7d(0xf1)](_0x262c7d(0x130));if(_0x205aef[_0x262c7d(0xe9)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x262c7d(0xf1)](_0x262c7d(0xe3)+MAX_REGROUP_MENU_COUNT+_0x262c7d(0x112));return _0x205aef;}function buildMenuLookupCommand(_0x5158c2){const _0x41a15c=a110_0x806217,_0x449525='\x27'+_0x5158c2['replace'](/'/g,_0x41a15c(0x134))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x449525+_0x41a15c(0xe2);}function unconfirmedRegroupWarning(_0x5abe39){const _0x18e411=a110_0x806217;if(_0x5abe39[_0x18e411(0x11b)]===_0x18e411(0x107))return _0x18e411(0x111);if(_0x5abe39[_0x18e411(0x11b)]===_0x18e411(0xf8))return _0x18e411(0x11c);if(_0x5abe39[_0x18e411(0xfa)])return'The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';return'The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';}async function buildRegroupPlan(_0x932471,_0x3dbf98){const _0x3971bc=a110_0x806217,_0x3bf3a3=_0x932471['str']('label')[_0x3971bc(0x12f)](),_0x54c5f5=parseMenuIds(_0x932471[_0x3971bc(0xfd)]('menu-ids')),_0x72e6eb=await fetchMutationSnapshot(_0x932471,_0x3971bc(0xf3)),_0x36e6fc=_0x54c5f5['map'](_0x97619=>requireMenu(_0x72e6eb,_0x97619));for(const _0x3b0a2d of _0x36e6fc){if(_0x3b0a2d['type'][_0x3971bc(0x12f)]()[_0x3971bc(0x132)]()==='folder'||_0x3b0a2d['childrenCount']>0x0)throw menuError(_0x3971bc(0x131),_0x3971bc(0x101)+_0x3b0a2d['id']+_0x3971bc(0x100),_0x3971bc(0x113));if(!_0x3b0a2d[_0x3971bc(0x115)][_0x3971bc(0x12f)]())throw menuError(_0x3971bc(0xda),'Menu\x20'+_0x3b0a2d['id']+_0x3971bc(0xf0),_0x3971bc(0xfb));}const _0x23a13f=findAppliedRegroup(_0x72e6eb,_0x3bf3a3,_0x54c5f5);if(_0x23a13f)throw menuError(_0x3971bc(0x136),'Menus\x20'+_0x54c5f5[_0x3971bc(0x10a)](',\x20')+_0x3971bc(0x10c)+_0x23a13f['group']['id']+'\x20('+JSON[_0x3971bc(0x109)](_0x3bf3a3)+').','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.');const _0x2e22c7=_0x72e6eb['menus'][_0x3971bc(0x123)](_0x18c185=>_0x18c185[_0x3971bc(0xde)]==null&&_0x18c185[_0x3971bc(0xe1)][_0x3971bc(0x12f)]()[_0x3971bc(0x132)]()===_0x3971bc(0x11d)&&_0x18c185['label']===_0x3bf3a3);if(_0x2e22c7[_0x3971bc(0xe9)]>0x0)throw menuError(_0x3971bc(0xdb),_0x3971bc(0xfc)+JSON['stringify'](_0x3bf3a3)+_0x3971bc(0x110)+_0x2e22c7[_0x3971bc(0xe4)](_0xbd5c1e=>_0xbd5c1e['id'])[_0x3971bc(0x10a)](',\x20')+'.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.');const _0x3d80cf={'appCode':_0x932471[_0x3971bc(0x122)],'menuGroups':[{'label':_0x3bf3a3,'type':_0x3971bc(0x11d),'children':_0x36e6fc['map'](_0x2fdf8a=>({'id':_0x2fdf8a['id'],'label':_0x2fdf8a[_0x3971bc(0x115)]}))}]},_0x51aca7=mutationResult({'operation':_0x3971bc(0xea),'selector':{'label':_0x3bf3a3,'menuIds':_0x54c5f5},'before':{'menus':_0x36e6fc},'after':{'group':{'id':null,'parentId':null,'label':_0x3bf3a3,'path':_0x3971bc(0xed),'type':_0x3971bc(0x11d),'childrenIds':_0x54c5f5},'children':_0x36e6fc['map'](_0x1aaec3=>({'id':_0x1aaec3['id'],'label':_0x1aaec3[_0x3971bc(0x115)],'beforeParentId':_0x1aaec3[_0x3971bc(0xde)],'afterParentId':_0x3971bc(0xf6)}))},'dryRun':_0x3dbf98,'backend':[...BACKEND],'plannedActions':[{'stage':_0x3971bc(0xf5),'method':_0x3971bc(0x119),'path':_0x3971bc(0xe6),'body':_0x3d80cf}],'snapshotHash':_0x72e6eb['hash'],'warnings':[_0x3971bc(0x117),'The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.']});return{'label':_0x3bf3a3,'menuIds':_0x54c5f5,'input':_0x3d80cf,'plan':_0x51aca7};}function findAppliedRegroup(_0x2be7c7,_0x53228c,_0x262af2){const _0x31a9aa=a110_0x806217,_0x51090b=_0x262af2[_0x31a9aa(0xe4)](_0x20b878=>_0x2be7c7[_0x31a9aa(0x108)][_0x31a9aa(0xec)](_0x20b878))[_0x31a9aa(0x123)](_0x491316=>Boolean(_0x491316));if(_0x51090b[_0x31a9aa(0xe9)]!==_0x262af2[_0x31a9aa(0xe9)])return null;const _0xa1a5e8=_0x51090b[0x0]?.[_0x31a9aa(0xde)];if(_0xa1a5e8==null||_0x51090b[_0x31a9aa(0xd9)](_0x18fe08=>_0x18fe08['parentId']!==_0xa1a5e8))return null;const _0x24d13b=_0x2be7c7['byId'][_0x31a9aa(0xec)](_0xa1a5e8);if(!_0x24d13b||_0x24d13b[_0x31a9aa(0xde)]!=null||_0x24d13b[_0x31a9aa(0xe1)]['trim']()[_0x31a9aa(0x132)]()!==_0x31a9aa(0x11d)||_0x24d13b[_0x31a9aa(0x115)]!==_0x53228c)return null;const _0x34f9f3=[..._0x262af2][_0x31a9aa(0x12d)]((_0x39b22e,_0x31bb7f)=>_0x39b22e-_0x31bb7f),_0x2cff08=[..._0x24d13b[_0x31a9aa(0x103)]][_0x31a9aa(0x12d)]((_0x4ee246,_0x335ee6)=>_0x4ee246-_0x335ee6);if(JSON['stringify'](_0x2cff08)!==JSON[_0x31a9aa(0x109)](_0x34f9f3))return null;return{'group':_0x24d13b,'children':_0x51090b};}async function inspectRegroupAfterFailure(_0x43c972,_0x4b9c2f,_0x5089db,_0x1fe366){const _0x2b64aa=a110_0x806217;try{const _0x1ac90d=await fetchMenuSnapshot(_0x43c972,_0x4b9c2f);return{'applied':findAppliedRegroup(_0x1ac90d,_0x5089db,_0x1fe366),'readbackError':null};}catch(_0x2e74d3){return{'applied':null,'readbackError':_0x2e74d3 instanceof Error?_0x2e74d3[_0x2b64aa(0x129)]:String(_0x2e74d3)};}}
|
|
1
|
+
const a110_0x1d8d37=a110_0x3753;(function(_0x1290ad,_0x3233c2){const _0x1cba54=a110_0x3753,_0x2f632e=_0x1290ad();while(!![]){try{const _0x3d0880=parseInt(_0x1cba54(0x1f7))/0x1+-parseInt(_0x1cba54(0x1eb))/0x2*(-parseInt(_0x1cba54(0x227))/0x3)+parseInt(_0x1cba54(0x217))/0x4*(-parseInt(_0x1cba54(0x1f0))/0x5)+-parseInt(_0x1cba54(0x22e))/0x6+parseInt(_0x1cba54(0x1ec))/0x7+parseInt(_0x1cba54(0x238))/0x8*(-parseInt(_0x1cba54(0x21b))/0x9)+parseInt(_0x1cba54(0x206))/0xa;if(_0x3d0880===_0x3233c2)break;else _0x2f632e['push'](_0x2f632e['shift']());}catch(_0x5bc506){_0x2f632e['push'](_0x2f632e['shift']());}}}(a110_0x262f,0xec411));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';function a110_0x262f(){const _0xd7c52d=['The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','size','<platform-generated>','appCode','validation','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','\x20menu\x20list\x20--appcode\x20','144344Bbwskh','some','readbackError','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','status','get','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','toLowerCase','menu-ids','parentId','unconfirmed','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','byId','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','Regroup\x20task\x20','Regroup\x20readback\x20also\x20failed:\x20','hash','menu_regroup_target_label_missing','map','Regroup\x20task\x20accepted.\x20','<new-group-id>','str','412mOfByS','6159783oNPvZl','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','warnings','1698390dqAPzJ','folder','failed','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','menus','Regroup\x20readback\x20failed:\x20','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','689003iLNHdp','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.','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','start\x20menu\x20regroup','cookie','isSafeInteger','taskId',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','/smartapi/menu/regroup','childrenCount','\x20and\x20regroup\x20menu\x20ids\x20','join','stringify','regroup-start','applied','635770vEPVQO','menu\x20list','\x20menus\x20per\x20regroup\x20request.','SUCCESS','knownStatus','flagMissing','menu','message','start\x20regroup','group','menuIds','\x27\x5c\x27\x27','Root\x20folder\x20label\x20','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','sort','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','string','12NggFMm','plan\x20regroup','split','length','621qynjVQ','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','plan','trim','submit-regroup-task','menu_regroup_label_conflict','Menus\x20','label','Label\x20of\x20the\x20new\x20root\x20folder','filter','--menu-ids\x20supports\x20at\x20most\x20','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','25302ZIyCzY','type','POST','childrenIds','Menu\x20','menu_regroup_already_applied','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','829530MizweI','high-risk-write'];a110_0x262f=function(){return _0xd7c52d;};return a110_0x262f();}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,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':a110_0x1d8d37(0x229),'path':a110_0x1d8d37(0x1ff)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a110_0x1d8d37(0x20c),'command':a110_0x1d8d37(0x204),'description':a110_0x1d8d37(0x236),'risk':a110_0x1d8d37(0x22f),'structuredErrors':!![],'flags':[{'name':a110_0x1d8d37(0x222),'type':a110_0x1d8d37(0x216),'required':!![],'description':a110_0x1d8d37(0x223)},{'name':'menu-ids','type':'string','required':!![],'description':a110_0x1d8d37(0x213)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4fad1e){validateRegroupInput(_0x4fad1e),requireExplicitYes(_0x4fad1e);},async 'dryRun'(_0x2f9444){const _0x3ab76d=a110_0x1d8d37;validateRegroupInput(_0x2f9444);const _0x500f14=await buildRegroupPlan(_0x2f9444,!![]);return menuDryRunResult(_0x500f14['plan'],{'method':_0x3ab76d(0x229),'url':_0x3ab76d(0x1ff),'body':_0x500f14['input'],'description':'Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20'+JSON[_0x3ab76d(0x203)](_0x500f14['label'])+_0x3ab76d(0x201)+_0x500f14[_0x3ab76d(0x210)][_0x3ab76d(0x202)](',\x20')+_0x3ab76d(0x1fe)});},async 'execute'(_0x16dc0c){const _0x529aeb=a110_0x1d8d37;validateRegroupInput(_0x16dc0c),requireExplicitYes(_0x16dc0c);const _0x4c6b57=await buildRegroupPlan(_0x16dc0c,![]);await recheckMutationSnapshot(_0x16dc0c,_0x4c6b57['plan'],_0x529aeb(0x20e));const _0x17f87e=buildMenuLookupCommand(_0x16dc0c['appCode']);let _0x5ecbce,_0x339e02;try{_0x5ecbce=await startMenuRegroup(_0x16dc0c[_0x529aeb(0x1fb)],_0x4c6b57['input']),_0x339e02=normalizeAsyncTask(_0x5ecbce);}catch(_0x482d4a){const _0xe60bfa=await inspectRegroupAfterFailure(_0x16dc0c[_0x529aeb(0x233)],_0x16dc0c[_0x529aeb(0x1fb)],_0x4c6b57[_0x529aeb(0x222)],_0x4c6b57[_0x529aeb(0x210)]),_0x3f7b48=typeof _0x5ecbce?.[_0x529aeb(0x1fd)]==='string'&&_0x5ecbce[_0x529aeb(0x1fd)]['trim']()?_0x5ecbce[_0x529aeb(0x1fd)][_0x529aeb(0x21e)]():null,_0x561d79=_0x3f7b48?{'command':buildAsyncTaskStatusCommand(_0x3f7b48,_0x16dc0c['appCode'])}:null,_0x3ecceb=mapMenuApiError(_0x482d4a,_0x529aeb(0x1fa));throw menuFailure(_0x3ecceb,_0x4c6b57[_0x529aeb(0x21d)],{'stage':'regroup-submit','failed':{'menuIds':_0x4c6b57[_0x529aeb(0x210)],'taskId':_0x3f7b48,'groupingApplied':_0xe60bfa[_0x529aeb(0x205)]?!![]:_0x529aeb(0x1df)},'after':_0xe60bfa[_0x529aeb(0x205)]??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.',..._0xe60bfa[_0x529aeb(0x23a)]?[_0x529aeb(0x1e4)+_0xe60bfa[_0x529aeb(0x23a)]]:[],..._0x3f7b48?[_0x529aeb(0x23e)]:[]],'verification':{'status':_0x529aeb(0x1f2),'groupingApplied':_0xe60bfa[_0x529aeb(0x205)]?!![]:'unconfirmed','taskId':_0x3f7b48,'query':_0x561d79,'lookupCommand':_0x17f87e}});}const _0x4d9a47=buildAsyncTaskStatusCommand(_0x339e02[_0x529aeb(0x1fd)],_0x16dc0c[_0x529aeb(0x233)]);let _0x1bef7c=null,_0x57cc03=null,_0x2c955d=null;try{_0x1bef7c=await fetchMenuSnapshot(_0x16dc0c['appCode'],_0x16dc0c[_0x529aeb(0x1fb)]),_0x57cc03=findAppliedRegroup(_0x1bef7c,_0x4c6b57[_0x529aeb(0x222)],_0x4c6b57[_0x529aeb(0x210)]);}catch(_0x32fa22){_0x2c955d=_0x32fa22 instanceof Error?_0x32fa22[_0x529aeb(0x20d)]:String(_0x32fa22);}const _0x51d0bf=mutationResult({..._0x4c6b57[_0x529aeb(0x21d)],'after':_0x57cc03??null,'dryRun':![],'succeeded':[{'groupId':_0x57cc03?.['group']['id']??null,'menuIds':_0x4c6b57[_0x529aeb(0x210)],'taskId':_0x339e02[_0x529aeb(0x1fd)],'status':_0x339e02['status'],'groupingApplied':_0x57cc03?!![]:_0x529aeb(0x1df)}],'verification':{'checkedBy':_0x529aeb(0x207),'snapshotHash':_0x1bef7c?.[_0x529aeb(0x1e5)]??null,'groupId':_0x57cc03?.[_0x529aeb(0x20f)]['id']??null,'groupingApplied':_0x57cc03?!![]:_0x529aeb(0x1df),'readbackError':_0x2c955d,'lookupCommand':_0x17f87e},'warnings':[..._0x4c6b57[_0x529aeb(0x21d)][_0x529aeb(0x1ef)],...!_0x57cc03?[unconfirmedRegroupWarning(_0x339e02)]:[],..._0x2c955d?[_0x529aeb(0x1f5)+_0x2c955d]:[]]}),_0x242fa0=_0x339e02[_0x529aeb(0x23c)]==='SUCCESS'&&!_0x57cc03?_0x529aeb(0x1e3)+_0x339e02['taskId']+_0x529aeb(0x1ee):_0x529aeb(0x1e8)+asyncTaskMessage(_0x339e02);return{'ok':!![],'message':_0x242fa0,'data':{..._0x51d0bf,'task':_0x339e02,'query':_0x339e02['isTerminal']?null:{'command':_0x4d9a47}}};}};function validateRegroupInput(_0xcdde04){const _0x59e5c2=a110_0x1d8d37;if(!_0xcdde04[_0x59e5c2(0x1ea)]('label')[_0x59e5c2(0x21e)]())throw CliErrors[_0x59e5c2(0x20b)](_0x59e5c2(0x222));parseMenuIds(_0xcdde04['str'](_0x59e5c2(0x1dd)));}function parseMenuIds(_0xb746c){const _0x5eb245=a110_0x1d8d37,_0x47180f=_0xb746c[_0x5eb245(0x219)](',')[_0x5eb245(0x1e7)](_0x1bf6df=>_0x1bf6df[_0x5eb245(0x21e)]());if(_0x47180f[_0x5eb245(0x21a)]===0x0||_0x47180f['some'](_0x9afe34=>!_0x9afe34))throw CliErrors[_0x5eb245(0x234)](_0x5eb245(0x1e2));const _0x15fdc0=_0x47180f[_0x5eb245(0x1e7)](_0x285540=>{const _0x1e873f=_0x5eb245;if(!/^\d+$/['test'](_0x285540))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x78b61e=Number(_0x285540);if(!Number[_0x1e873f(0x1fc)](_0x78b61e)||_0x78b61e<=0x0)throw CliErrors['validation'](_0x1e873f(0x1e2));return _0x78b61e;});if(new Set(_0x15fdc0)[_0x5eb245(0x231)]!==_0x15fdc0['length'])throw CliErrors['validation'](_0x5eb245(0x1ed));if(_0x15fdc0[_0x5eb245(0x21a)]>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x5eb245(0x225)+MAX_REGROUP_MENU_COUNT+_0x5eb245(0x208));return _0x15fdc0;}function buildMenuLookupCommand(_0x2ab157){const _0x282760=a110_0x1d8d37,_0x301d18='\x27'+_0x2ab157['replace'](/'/g,_0x282760(0x211))+'\x27';return CLI_BIN_NAME+_0x282760(0x237)+_0x301d18+'\x20--format\x20compress';}function unconfirmedRegroupWarning(_0x4df6ac){const _0x3d10df=a110_0x1d8d37;if(_0x4df6ac[_0x3d10df(0x23c)]===_0x3d10df(0x209))return _0x3d10df(0x230);if(_0x4df6ac[_0x3d10df(0x23c)]==='FAILED')return'The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x4df6ac[_0x3d10df(0x20a)])return _0x3d10df(0x1f9);return _0x3d10df(0x1f8);}async function buildRegroupPlan(_0x3d1f4a,_0x5331f9){const _0x3b1824=a110_0x1d8d37,_0x347b40=_0x3d1f4a[_0x3b1824(0x1ea)](_0x3b1824(0x222))['trim'](),_0x4bb3bd=parseMenuIds(_0x3d1f4a[_0x3b1824(0x1ea)]('menu-ids')),_0x58e1ed=await fetchMutationSnapshot(_0x3d1f4a,_0x3b1824(0x218)),_0x5336aa=_0x4bb3bd[_0x3b1824(0x1e7)](_0x221e0d=>requireMenu(_0x58e1ed,_0x221e0d));for(const _0x26f5fa of _0x5336aa){if(_0x26f5fa['type']['trim']()[_0x3b1824(0x1dc)]()===_0x3b1824(0x1f1)||_0x26f5fa[_0x3b1824(0x200)]>0x0)throw menuError('menu_regroup_target_not_leaf','Menu\x20'+_0x26f5fa['id']+_0x3b1824(0x1e0),_0x3b1824(0x21c));if(!_0x26f5fa[_0x3b1824(0x222)][_0x3b1824(0x21e)]())throw menuError(_0x3b1824(0x1e6),_0x3b1824(0x22b)+_0x26f5fa['id']+_0x3b1824(0x1f3),_0x3b1824(0x226));}const _0x96831a=findAppliedRegroup(_0x58e1ed,_0x347b40,_0x4bb3bd);if(_0x96831a)throw menuError(_0x3b1824(0x22c),_0x3b1824(0x221)+_0x4bb3bd[_0x3b1824(0x202)](',\x20')+_0x3b1824(0x22d)+_0x96831a[_0x3b1824(0x20f)]['id']+'\x20('+JSON['stringify'](_0x347b40)+').','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.');const _0x3693f3=_0x58e1ed[_0x3b1824(0x1f4)][_0x3b1824(0x224)](_0x4b3565=>_0x4b3565['parentId']==null&&_0x4b3565[_0x3b1824(0x228)][_0x3b1824(0x21e)]()[_0x3b1824(0x1dc)]()===_0x3b1824(0x1f1)&&_0x4b3565[_0x3b1824(0x222)]===_0x347b40);if(_0x3693f3[_0x3b1824(0x21a)]>0x0)throw menuError(_0x3b1824(0x220),_0x3b1824(0x212)+JSON[_0x3b1824(0x203)](_0x347b40)+_0x3b1824(0x235)+_0x3693f3[_0x3b1824(0x1e7)](_0x42de73=>_0x42de73['id'])['join'](',\x20')+'.',_0x3b1824(0x1f6));const _0x438ce3={'appCode':_0x3d1f4a[_0x3b1824(0x233)],'menuGroups':[{'label':_0x347b40,'type':'folder','children':_0x5336aa[_0x3b1824(0x1e7)](_0x867f60=>({'id':_0x867f60['id'],'label':_0x867f60[_0x3b1824(0x222)]}))}]},_0x381076=mutationResult({'operation':'regroup-start','selector':{'label':_0x347b40,'menuIds':_0x4bb3bd},'before':{'menus':_0x5336aa},'after':{'group':{'id':null,'parentId':null,'label':_0x347b40,'path':_0x3b1824(0x232),'type':'folder','childrenIds':_0x4bb3bd},'children':_0x5336aa[_0x3b1824(0x1e7)](_0x594240=>({'id':_0x594240['id'],'label':_0x594240[_0x3b1824(0x222)],'beforeParentId':_0x594240[_0x3b1824(0x1de)],'afterParentId':_0x3b1824(0x1e9)}))},'dryRun':_0x5331f9,'backend':[...BACKEND],'plannedActions':[{'stage':_0x3b1824(0x21f),'method':_0x3b1824(0x229),'path':'/smartapi/menu/regroup','body':_0x438ce3}],'snapshotHash':_0x58e1ed['hash'],'warnings':[_0x3b1824(0x215),_0x3b1824(0x23b)]});return{'label':_0x347b40,'menuIds':_0x4bb3bd,'input':_0x438ce3,'plan':_0x381076};}function a110_0x3753(_0x35d93c,_0x2e646d){_0x35d93c=_0x35d93c-0x1dc;const _0x262f86=a110_0x262f();let _0x3753a1=_0x262f86[_0x35d93c];return _0x3753a1;}function findAppliedRegroup(_0x439a06,_0x5cc37a,_0xe3c13d){const _0x39c581=a110_0x1d8d37,_0x3bd8e4=_0xe3c13d[_0x39c581(0x1e7)](_0x56efea=>_0x439a06[_0x39c581(0x1e1)][_0x39c581(0x23d)](_0x56efea))[_0x39c581(0x224)](_0x2ac8d1=>Boolean(_0x2ac8d1));if(_0x3bd8e4['length']!==_0xe3c13d[_0x39c581(0x21a)])return null;const _0x54891c=_0x3bd8e4[0x0]?.[_0x39c581(0x1de)];if(_0x54891c==null||_0x3bd8e4[_0x39c581(0x239)](_0x42f691=>_0x42f691[_0x39c581(0x1de)]!==_0x54891c))return null;const _0x159546=_0x439a06[_0x39c581(0x1e1)][_0x39c581(0x23d)](_0x54891c);if(!_0x159546||_0x159546['parentId']!=null||_0x159546['type'][_0x39c581(0x21e)]()[_0x39c581(0x1dc)]()!==_0x39c581(0x1f1)||_0x159546[_0x39c581(0x222)]!==_0x5cc37a)return null;const _0x22afe0=[..._0xe3c13d]['sort']((_0x598c3a,_0x554670)=>_0x598c3a-_0x554670),_0x211e43=[..._0x159546[_0x39c581(0x22a)]][_0x39c581(0x214)]((_0x204f99,_0xff86c8)=>_0x204f99-_0xff86c8);if(JSON[_0x39c581(0x203)](_0x211e43)!==JSON['stringify'](_0x22afe0))return null;return{'group':_0x159546,'children':_0x3bd8e4};}async function inspectRegroupAfterFailure(_0x2a93bc,_0x56d427,_0xaed632,_0x166602){try{const _0x423263=await fetchMenuSnapshot(_0x2a93bc,_0x56d427);return{'applied':findAppliedRegroup(_0x423263,_0xaed632,_0x166602),'readbackError':null};}catch(_0x197977){return{'applied':null,'readbackError':_0x197977 instanceof Error?_0x197977['message']:String(_0x197977)};}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const a111_0x4c64d6=a111_0xddc7;(function(_0x423388,_0x592bdd){const _0x25a3fe=a111_0xddc7,_0x46648=_0x423388();while(!![]){try{const _0xe8f087=parseInt(_0x25a3fe(0x110))/0x1+parseInt(_0x25a3fe(0x115))/0x2*(parseInt(_0x25a3fe(0xd3))/0x3)+parseInt(_0x25a3fe(0xff))/0x4+parseInt(_0x25a3fe(0xc9))/0x5*(parseInt(_0x25a3fe(0xf4))/0x6)+parseInt(_0x25a3fe(0x10c))/0x7*(-parseInt(_0x25a3fe(0xcc))/0x8)+parseInt(_0x25a3fe(0x100))/0x9*(-parseInt(_0x25a3fe(0x113))/0xa)+-parseInt(_0x25a3fe(0xfb))/0xb;if(_0xe8f087===_0x592bdd)break;else _0x46648['push'](_0x46648['shift']());}catch(_0x300bf1){_0x46648['push'](_0x46648['shift']());}}}(a111_0x241d,0x312d3));function a111_0xddc7(_0x20c6e9,_0x55c3d5){_0x20c6e9=_0x20c6e9-0xc9;const _0x241d90=a111_0x241d();let _0xddc72d=_0x241d90[_0x20c6e9];return _0xddc72d;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a111_0x4c64d6(0xe2),'path':a111_0x4c64d6(0xed)}];export const menuRename={'service':a111_0x4c64d6(0xef),'command':'rename','description':'Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','risk':a111_0x4c64d6(0x106),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a111_0x4c64d6(0xec),'type':a111_0x4c64d6(0xe7),'required':!![],'description':a111_0x4c64d6(0xf0)},{'name':'expect-label','type':a111_0x4c64d6(0xe7),'required':!![],'description':a111_0x4c64d6(0x114)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x926a0){validateInput(_0x926a0),requireExplicitYes(_0x926a0);},async 'dryRun'(_0x1af7e4){const _0x3a634f=a111_0x4c64d6;validateInput(_0x1af7e4);const _0x3e229f=await buildPlan(_0x1af7e4,!![]);return menuDryRunResult(_0x3e229f[_0x3a634f(0xfd)],{'method':_0x3a634f(0xe2),'url':_0x3a634f(0xed),'body':_0x3e229f['body'],'description':_0x3a634f(0xe6)+_0x3e229f[_0x3a634f(0xf1)]['id']+'.'});},async 'execute'(_0x405b6b){const _0x5aae9b=a111_0x4c64d6;validateInput(_0x405b6b),requireExplicitYes(_0x405b6b);const _0x1a42fd=await buildPlan(_0x405b6b,![]),{plan:_0x1f40e0,body:_0x350200,before:_0x27fc84,noChanges:_0xdbfc09}=_0x1a42fd,_0x3777f2=_0x350200['id'];if(_0xdbfc09)return renameSuccess(_0x1f40e0,_0x1a42fd['snapshot'],_0x27fc84,!![],![]);await recheckMutationSnapshot(_0x405b6b,_0x1f40e0,_0x5aae9b(0xfe),_0x3777f2);try{await updateMenuEntity(_0x405b6b['appCode'],_0x405b6b[_0x5aae9b(0xf8)],{'id':_0x3777f2,'label':_0x350200['label']});}catch(_0x5ac3f3){const _0x21245b=mapMenuApiError(_0x5ac3f3,_0x5aae9b(0x102),_0x3777f2);if(isMenuResponseLoss(_0x5ac3f3)&&_0x21245b[_0x5aae9b(0xd2)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x405b6b,_0x1a42fd);throw menuFailure(_0x21245b,_0x1f40e0,{'stage':_0x5aae9b(0xf5),'failed':{'id':_0x3777f2},'warnings':[_0x5aae9b(0xe4)],'verification':{'status':_0x5aae9b(0xe1),'targetId':_0x3777f2,'lookupCommand':buildLookupCommand(_0x405b6b[_0x5aae9b(0xd0)])}});}let _0x23c0a5,_0x299a00;try{_0x23c0a5=await fetchMenuSnapshot(_0x405b6b[_0x5aae9b(0xd0)],_0x405b6b[_0x5aae9b(0xf8)]),_0x299a00=requireMenu(_0x23c0a5,_0x3777f2),verifyRenamedFact(_0x27fc84,_0x299a00,_0x350200[_0x5aae9b(0xec)]);}catch(_0xcebf7b){const _0x4b6d4d=describeMenuErrorCause(_0xcebf7b,_0x5aae9b(0xeb),_0x3777f2),_0x1fda5c=asVerificationError(_0xcebf7b,_0x5aae9b(0xf3)+_0x3777f2+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x1fda5c,_0x1f40e0,{'stage':_0x5aae9b(0xe3),'succeeded':[{'id':_0x3777f2,'updateRequested':!![]}],'failed':{'id':_0x3777f2,'requestedStateConfirmed':![],..._0x4b6d4d},'warnings':[_0x5aae9b(0x10e)],'verification':{'status':_0x5aae9b(0xe1),'targetId':_0x3777f2,'lookupCommand':buildLookupCommand(_0x405b6b[_0x5aae9b(0xd0)])}});}return renameSuccess(_0x1f40e0,_0x23c0a5,_0x299a00,![],![]);}};function validateInput(_0x28296b){const _0x3324d4=a111_0x4c64d6;validateExactId(_0x28296b);if(!_0x28296b[_0x3324d4(0x105)](_0x3324d4(0xec))[_0x3324d4(0xea)]())throw CliErrors['validation']('--label\x20cannot\x20be\x20empty.');if(!_0x28296b[_0x3324d4(0x105)]('expect-label')['trim']())throw CliErrors[_0x3324d4(0xdf)]('expect-label');}async function buildPlan(_0x36e986,_0x24573b){const _0x2abbda=a111_0x4c64d6,_0x5b73f5=validateExactId(_0x36e986),_0x16c708=_0x36e986['str'](_0x2abbda(0xec))[_0x2abbda(0xea)](),_0x4ff8c2=_0x36e986['str'](_0x2abbda(0xd1)),_0x242bc8=await fetchMutationSnapshot(_0x36e986,_0x2abbda(0xfe),_0x5b73f5),_0x111514=requireMenu(_0x242bc8,_0x5b73f5);if(_0x111514['label']!==_0x4ff8c2)throw menuError(_0x2abbda(0x119),_0x2abbda(0xca)+_0x5b73f5+_0x2abbda(0xf7)+JSON['stringify'](_0x4ff8c2)+_0x2abbda(0x107)+JSON[_0x2abbda(0x10a)](_0x111514['label'])+'.',_0x2abbda(0x104));const _0xee6dcd={'id':_0x5b73f5,'appCode':_0x36e986[_0x2abbda(0xd0)],'label':_0x16c708},_0x36355f={..._0x111514,'label':_0x16c708},_0x155ee0=_0x111514[_0x2abbda(0xec)]===_0x16c708,_0xa4bc33=_0x155ee0?[]:[{'stage':_0x2abbda(0xcb),'method':_0x2abbda(0xe2),'path':'/smartapi/menu/update','body':_0xee6dcd}];return{'snapshot':_0x242bc8,'before':_0x111514,'body':_0xee6dcd,'noChanges':_0x155ee0,'plan':mutationResult({'operation':'rename','selector':{'id':_0x5b73f5},'before':_0x111514,'after':_0x36355f,'dryRun':_0x24573b,'backend':[...BACKEND],'plannedActions':_0xa4bc33,'snapshotHash':_0x242bc8[_0x2abbda(0x118)],'warnings':_0x155ee0?[_0x2abbda(0x101)]:[]})};}function verifyRenamedFact(_0x5e221b,_0x44d1a9,_0x2a1fc7){const _0xf8c040=a111_0x4c64d6,_0x1e2922=[['id',_0x44d1a9['id'],_0x5e221b['id']],[_0xf8c040(0xe0),_0x44d1a9[_0xf8c040(0xe0)],_0x5e221b[_0xf8c040(0xe0)]],[_0xf8c040(0xf6),_0x44d1a9[_0xf8c040(0xf6)],_0x5e221b[_0xf8c040(0xf6)]],[_0xf8c040(0xcf),_0x44d1a9['path'],_0x5e221b[_0xf8c040(0xcf)]],[_0xf8c040(0xe9),_0x44d1a9[_0xf8c040(0xe9)],_0x5e221b[_0xf8c040(0xe9)]],[_0xf8c040(0x10b),_0x44d1a9[_0xf8c040(0x10b)],_0x5e221b[_0xf8c040(0x10b)]],[_0xf8c040(0xee),_0x44d1a9[_0xf8c040(0xee)],_0x5e221b[_0xf8c040(0xee)]],['sort',_0x44d1a9[_0xf8c040(0xfa)],_0x5e221b['sort']],[_0xf8c040(0x116),_0x44d1a9['resources'],_0x5e221b[_0xf8c040(0x116)]],[_0xf8c040(0xfc),_0x44d1a9[_0xf8c040(0xfc)],_0x5e221b[_0xf8c040(0xfc)]],[_0xf8c040(0x112),_0x44d1a9[_0xf8c040(0x112)],_0x5e221b[_0xf8c040(0x112)]],['childrenCount',_0x44d1a9[_0xf8c040(0xe5)],_0x5e221b[_0xf8c040(0xe5)]],[_0xf8c040(0xdb),_0x44d1a9['pageId'],_0x5e221b['pageId']],['pageType',_0x44d1a9[_0xf8c040(0xd4)],_0x5e221b['pageType']],['modelType',_0x44d1a9[_0xf8c040(0xd6)],_0x5e221b[_0xf8c040(0xd6)]],[_0xf8c040(0xd5),_0x44d1a9['datasetId'],_0x5e221b[_0xf8c040(0xd5)]],[_0xf8c040(0x10d),_0x44d1a9[_0xf8c040(0x10d)],_0x5e221b[_0xf8c040(0x10d)]]];for(const [_0x19654f,_0x13936c,_0x2e1238]of _0x1e2922){assertVerified(sameValue(_0x13936c,_0x2e1238),_0xf8c040(0xca)+_0x5e221b['id']+'\x20'+_0x19654f+_0xf8c040(0xe8));}assertVerified(_0x44d1a9[_0xf8c040(0xec)]===_0x2a1fc7,'Menu\x20'+_0x5e221b['id']+_0xf8c040(0x109));}function sameValue(_0x8daa0,_0x176972){const _0x9aa440=a111_0x4c64d6;if(Array[_0x9aa440(0x117)](_0x8daa0)||Array['isArray'](_0x176972))return JSON[_0x9aa440(0x10a)](_0x8daa0)===JSON[_0x9aa440(0x10a)](_0x176972);return _0x8daa0===_0x176972;}function a111_0x241d(){const _0x27222e=['type','98bsPIkn','datasetCode','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','requestedLabelObserved','341378SROgFy','after','childrenIds','1455490JXGXXo','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','11922mEDPLW','resources','isArray','hash','menu_state_drift','menu_update_recovery_required','menu\x20list','585GJxkrp','Menu\x20','rename-menu','49144QKfHOX','rabetbase\x20menu\x20list\x20--appcode\x20','Response\x20was\x20lost\x20and\x20menu\x20','path','appCode','expect-label','code','87GxIYxu','pageType','datasetId','modelType','Run\x20','byId','Renamed\x20menu\x20','\x20could\x20not\x20be\x20verified\x20safely','pageId','\x20already\x20has\x20the\x20requested\x20label.','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','update-recovery','flagMissing','parentId','failed','POST','verification','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','childrenCount','Would\x20rename\x20menu\x20','string','\x20changed\x20during\x20the\x20label-only\x20rename.','url','trim','verify\x20menu\x20rename','label','/smartapi/menu/update','visible','menu','New\x20menu\x20label','body','\x20--format\x20compress','Rename\x20request\x20for\x20menu\x20','19806AdPALM','update','depth','\x20label\x20changed:\x20expected\x20','cookie','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','sort','6734409CPhbeF','resourcesValid','plan','rename\x20menu','578932BgzgRv','9qKhsUQ','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','rename','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','str','high-risk-write',',\x20current\x20','replace','\x20label\x20update\x20did\x20not\x20take\x20effect.','stringify'];a111_0x241d=function(){return _0x27222e;};return a111_0x241d();}function renameSuccess(_0x43d63a,_0x5ee3ec,_0x350efa,_0x3537f7,_0x5e79e2){const _0x199418=a111_0x4c64d6,_0x3d51ff=_0x350efa['id'],_0x52f966=mutationResult({..._0x43d63a,'after':_0x350efa,'dryRun':![],'succeeded':[{'id':_0x3d51ff,'updated':!_0x3537f7,'skipped':_0x3537f7,'recovered':_0x5e79e2}],'verification':{'checkedBy':_0x199418(0x11b),'snapshotHash':_0x5ee3ec['hash'],'targetId':_0x3d51ff,'matchesRequestedState':!![],'recovered':_0x5e79e2}});return{'ok':!![],'message':_0x5e79e2?'Recovered\x20confirmed\x20rename\x20for\x20menu\x20'+_0x3d51ff+'.':_0x3537f7?'Menu\x20'+_0x3d51ff+_0x199418(0xdc):_0x199418(0xd9)+_0x3d51ff+'.','data':{..._0x52f966,'recovered':_0x5e79e2}};}async function recoverAfterResponseLoss(_0x54310c,_0x54a060){const _0x607d40=a111_0x4c64d6,{plan:_0x531dc8,before:_0x2708cb,body:_0x83373c}=_0x54a060;let _0x391fb1;try{_0x391fb1=await fetchMenuSnapshot(_0x54310c['appCode'],_0x54310c[_0x607d40(0xf8)]);}catch{throw recoveryRequired(_0x531dc8,_0x54310c[_0x607d40(0xd0)],{'id':_0x83373c['id'],'readbackFailed':!![]});}const _0x1d33c9=_0x391fb1[_0x607d40(0xd8)]['get'](_0x83373c['id']);if(!_0x1d33c9||_0x1d33c9[_0x607d40(0xec)]!==_0x83373c[_0x607d40(0xec)])throw recoveryRequired(_0x531dc8,_0x54310c[_0x607d40(0xd0)],{'id':_0x83373c['id'],'requestedLabelObserved':![],'after':_0x1d33c9??null});try{verifyRenamedFact(_0x2708cb,_0x1d33c9,_0x83373c['label']);}catch(_0x2d5d0c){const _0x5d0fd8=asVerificationError(_0x2d5d0c,_0x607d40(0xce)+_0x83373c['id']+_0x607d40(0xda));throw menuFailure(_0x5d0fd8,_0x531dc8,{'stage':'update-recovery','succeeded':[{'id':_0x83373c['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x83373c['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x1d33c9,'warnings':['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x607d40(0xe1),'targetId':_0x83373c['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x54310c[_0x607d40(0xd0)])}});}return renameSuccess(_0x531dc8,_0x391fb1,_0x1d33c9,![],!![]);}function recoveryRequired(_0x323064,_0x447a85,_0x4f8e74){const _0x49f68c=a111_0x4c64d6,_0x48287c=menuError(_0x49f68c(0x11a),_0x49f68c(0xdd),_0x49f68c(0xd7)+buildLookupCommand(_0x447a85)+_0x49f68c(0x103));return menuFailure(_0x48287c,_0x323064,{'stage':_0x49f68c(0xde),'failed':{'id':_0x4f8e74['id'],..._0x4f8e74[_0x49f68c(0x10f)]===undefined?{}:{'requestedLabelObserved':_0x4f8e74[_0x49f68c(0x10f)]},..._0x4f8e74['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x4f8e74[_0x49f68c(0x111)],'warnings':[_0x49f68c(0xf9)],'verification':{'status':'failed','targetId':_0x4f8e74['id'],..._0x4f8e74[_0x49f68c(0x10f)]===undefined?{}:{'requestedLabelObserved':_0x4f8e74[_0x49f68c(0x10f)]},..._0x4f8e74['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x447a85)}});}function buildLookupCommand(_0x53e64f){const _0x4f081b=a111_0x4c64d6,_0x515dd9='\x27'+_0x53e64f[_0x4f081b(0x108)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x4f081b(0xcd)+_0x515dd9+_0x4f081b(0xf2);}
|