@lovrabet/rabetbase-cli 2.5.0-beta.6 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +1 -1
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const a112_0x423ef5=a112_0x46d1;function a112_0x46d1(_0x3c2762,_0x35351b){_0x3c2762=_0x3c2762-0xdd;const _0x3a8dff=a112_0x3a8d();let _0x46d187=_0x3a8dff[_0x3c2762];return _0x46d187;}(function(_0x5d9312,_0x385f88){const _0x223b57=a112_0x46d1,_0x3ff561=_0x5d9312();while(!![]){try{const _0x115003=-parseInt(_0x223b57(0x128))/0x1*(parseInt(_0x223b57(0x126))/0x2)+-parseInt(_0x223b57(0x10e))/0x3*(parseInt(_0x223b57(0x118))/0x4)+parseInt(_0x223b57(0xfd))/0x5*(-parseInt(_0x223b57(0xde))/0x6)+parseInt(_0x223b57(0x151))/0x7*(-parseInt(_0x223b57(0x14a))/0x8)+-parseInt(_0x223b57(0x10f))/0x9*(-parseInt(_0x223b57(0x165))/0xa)+parseInt(_0x223b57(0xe2))/0xb+-parseInt(_0x223b57(0xdf))/0xc*(-parseInt(_0x223b57(0x155))/0xd);if(_0x115003===_0x385f88)break;else _0x3ff561['push'](_0x3ff561['shift']());}catch(_0x876415){_0x3ff561['push'](_0x3ff561['shift']());}}}(a112_0x3a8d,0x6dfde));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':a112_0x423ef5(0x11a),'new-window':a112_0x423ef5(0xeb)};export function validateExternalMenuUrl(_0x1d7eb7){const _0x85aaab=a112_0x423ef5,_0x22f8ee=_0x1d7eb7[_0x85aaab(0xfc)]();let _0x1b0045;try{_0x1b0045=new URL(_0x22f8ee);}catch{throw menuError('menu_url_invalid',_0x85aaab(0xf0),_0x85aaab(0x123));}if(_0x1b0045['protocol']!==_0x85aaab(0x15a))throw menuError('menu_url_https_required',_0x85aaab(0x12b),_0x85aaab(0xf9));if(_0x1b0045['username']||_0x1b0045['password'])throw menuError(_0x85aaab(0xea),_0x85aaab(0x11f),_0x85aaab(0xe5));return _0x22f8ee;}export const menuExternalLinkCreate={'service':'menu','command':a112_0x423ef5(0x142),'description':a112_0x423ef5(0xee),'risk':a112_0x423ef5(0x143),'structuredErrors':!![],'flags':[{'name':a112_0x423ef5(0x11c),'type':a112_0x423ef5(0x13d),'required':!![],'description':a112_0x423ef5(0xf6)},{'name':a112_0x423ef5(0x140),'type':a112_0x423ef5(0x13d),'required':!![],'enum':[a112_0x423ef5(0xff),a112_0x423ef5(0x108)],'description':a112_0x423ef5(0x113)},{'name':a112_0x423ef5(0x154),'type':a112_0x423ef5(0x13d),'required':!![],'description':a112_0x423ef5(0xec)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a112_0x423ef5(0xfa),'type':a112_0x423ef5(0x163),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x260cca){validateAddInput(_0x260cca);},async 'dryRun'(_0x157a49){const _0x26f9e7=a112_0x423ef5;validateAddInput(_0x157a49);const {plan:_0x1d57ad}=await buildSafeAddPlan(_0x157a49,!![]),_0x4ddcac=_0x1d57ad[_0x26f9e7(0x16a)],_0x2f46d7=createBody(_0x4ddcac);return menuDryRunResult(_0x1d57ad,{'method':'POST','url':'/smartapi/menu/create','body':_0x2f46d7,'description':_0x26f9e7(0x15e)+JSON[_0x26f9e7(0x125)](_0x4ddcac['label'])+_0x26f9e7(0xef)+_0x157a49[_0x26f9e7(0x161)](_0x26f9e7(0x140))+_0x26f9e7(0x141)});},async 'execute'(_0x92801e){const _0x380339=a112_0x423ef5;validateAddInput(_0x92801e);const _0x31fcea=await buildSafeAddPlan(_0x92801e,![]),{plan:_0x351344,snapshot:_0x5803f8}=_0x31fcea,_0x33107f=_0x351344['after'],_0x2c8d82=buildMenuLookupCommand(_0x92801e['appCode']);await recheckAddSnapshot(_0x92801e,_0x351344);let _0x4fb676;try{_0x4fb676=await createMenuEntity(_0x92801e[_0x380339(0x14f)],_0x92801e[_0x380339(0x110)],createBody(_0x33107f));}catch(_0x2a0923){const _0x4c02ab=mapMenuApiError(_0x2a0923,_0x380339(0x111));if(!isMenuResponseLoss(_0x2a0923)||_0x4c02ab[_0x380339(0x13a)]==='menu_permission_denied')throw externalLinkCreateFailure(_0x4c02ab,_0x351344,{'stage':_0x380339(0x160),'failed':{},'verification':{'status':_0x380339(0x12f),'lookupCommand':_0x2c8d82}});return recoverAfterResponseLoss(_0x92801e,_0x31fcea,_0x2c8d82);}const _0xe00d56=Number(_0x4fb676?.['id']),_0x367efd=typeof _0x4fb676?.['path']===_0x380339(0x13d)?_0x4fb676[_0x380339(0x152)]:'';if(!Number[_0x380339(0x16b)](_0xe00d56)||_0xe00d56<=0x0||!_0x367efd[_0x380339(0xfc)]()){const _0x2e8de8=menuError(_0x380339(0x109),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Run\x20'+_0x2c8d82+_0x380339(0x133));throw externalLinkCreateFailure(_0x2e8de8,_0x351344,{'stage':_0x380339(0x132),'succeeded':Number[_0x380339(0x16b)](_0xe00d56)&&_0xe00d56>0x0?[{'id':_0xe00d56,'created':!![]}]:[],'failed':{'createdId':Number[_0x380339(0x16b)](_0xe00d56)?_0xe00d56:null,'generatedPathConfirmed':Boolean(_0x367efd[_0x380339(0xfc)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number['isSafeInteger'](_0xe00d56)&&_0xe00d56>0x0?{..._0x33107f,'id':_0xe00d56,'path':_0x367efd}:_0x33107f,'verification':{'status':_0x380339(0x12f),'lookupCommand':_0x2c8d82,...Number['isSafeInteger'](_0xe00d56)&&_0xe00d56>0x0?{'targetId':_0xe00d56}:{}}});}const _0x3ab9d0=await readAndVerifyCreatedMenu({'appCode':_0x92801e[_0x380339(0x14f)],'cookie':_0x92801e[_0x380339(0x110)],'plan':_0x351344,'afterPlan':_0x33107f,'createdId':_0xe00d56,'expectedPath':_0x367efd,'lookupCommand':_0x2c8d82,'recovered':![]});return creationSuccess(_0x351344,_0x3ab9d0['snapshot'],_0x3ab9d0[_0x380339(0x166)],![]);}};function validateAddInput(_0x3b426f){const _0x21c283=a112_0x423ef5;if(!_0x3b426f[_0x21c283(0x161)](_0x21c283(0x11c))[_0x21c283(0xfc)]())throw CliErrors[_0x21c283(0x12c)](_0x21c283(0x11c));resolveExternalMenuType(_0x3b426f),validateExternalMenuUrl(_0x3b426f['str']('url')),parseParentId(_0x3b426f,_0x21c283(0x10d)),validateSort(_0x3b426f);}function resolveExternalMenuType(_0x14f800){const _0x3781af=a112_0x423ef5,_0x6615b4=_0x14f800['str'](_0x3781af(0x140))[_0x3781af(0xfc)]();if(!_0x6615b4)throw CliErrors[_0x3781af(0x12c)](_0x3781af(0x140));const _0x505e07=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x6615b4];if(!_0x505e07)throw menuError(_0x3781af(0x119),'--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.',_0x3781af(0xe0));return _0x505e07;}async function buildAddPlan(_0x2e56db,_0x3c10a8){const _0x236ad5=a112_0x423ef5,_0x254f6e=await fetchMutationSnapshot(_0x2e56db,_0x236ad5(0x111)),_0x2a3d77=parseParentId(_0x2e56db,_0x236ad5(0x10d))??null;if(_0x2a3d77!=null)requireFolder(_0x254f6e,_0x2a3d77);const _0xbaf5c0=validateSort(_0x2e56db),_0x284dd5=_0xbaf5c0??nextSiblingSort(_0x254f6e,_0x2a3d77,_0x236ad5(0x149)),_0x462064=_0x2e56db[_0x236ad5(0x161)]('label')[_0x236ad5(0xfc)](),_0x267b1b=resolveExternalMenuType(_0x2e56db),_0x26bdc1=validateExternalMenuUrl(_0x2e56db['str'](_0x236ad5(0x154))),_0x30b3c0=Object[_0x236ad5(0x12e)]['hasOwnProperty'][_0x236ad5(0x11e)](_0x2e56db[_0x236ad5(0x16d)],_0x236ad5(0xfa))?_0x2e56db[_0x236ad5(0x112)](_0x236ad5(0xfa)):!![],_0x52877e={'id':null,'parentId':_0x2a3d77,'label':_0x462064,'path':'<platform-generated>','url':_0x26bdc1,'type':_0x267b1b,'visible':_0x30b3c0,'sort':_0x284dd5},_0x4812a1=buildMenuLookupCommand(_0x2e56db[_0x236ad5(0x14f)]),_0x2dd484=mutationResult({'operation':_0x236ad5(0x12d),'selector':{'parentId':_0x2a3d77,'type':_0x267b1b,'label':_0x462064,'url':_0x26bdc1},'before':null,'after':_0x52877e,'dryRun':_0x3c10a8,'backend':[{'method':_0x236ad5(0x115),'path':_0x236ad5(0x162)}],'plannedActions':[{'stage':'create-menu','method':_0x236ad5(0x115),'path':'/smartapi/menu/create','body':createBody(_0x52877e)}],'snapshotHash':_0x254f6e[_0x236ad5(0x11d)],'warnings':[_0x236ad5(0x144)],'verification':{'lookupCommand':_0x4812a1}});return{'plan':_0x2dd484,'snapshot':_0x254f6e};}async function buildSafeAddPlan(_0x8a62b3,_0x1f60aa){try{return await buildAddPlan(_0x8a62b3,_0x1f60aa);}catch(_0x4b96b8){throw safeMenuAddError(_0x4b96b8);}}function a112_0x3a8d(){const _0x512a36=['642282QVYFTt','9564xsDBWQ','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Menu\x20','2047089UjOAoB','succeeded','menu_state_drift','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','Created\x20external\x20menu\x20','selector','menus','Run\x20','menu_url_credentials_forbidden','link','External\x20HTTPS\x20URL','data','Create\x20an\x20external\x20website\x20link\x20menu','\x20with\x20','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','External\x20menu\x20creation\x20failed.','currentSnapshotHash','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Created\x20menu\x20','Menu\x20label','menu_mutation_failed','readbackerror','Provide\x20an\x20HTTPS\x20URL.','visible','\x20has\x20an\x20unexpected\x20generated\x20path.','trim','35wlIUqH','entries','embedded','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','plannedActions','createdId','\x27\x5c\x27\x27','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','expectedSnapshotHash','body','new-window','menu_create_response_invalid','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','\x20has\x20an\x20unexpected\x20','parent-id','3cULAeA','45pJXhvE','cookie','create\x20external\x20menu','bool','How\x20to\x20open\x20the\x20external\x20website','Recovered\x20menu\x20','POST','filter','menu_create_recovery_required','371660NngNxi','menu_open_mode_invalid','iframe','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','label','hash','call','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','menu_permission_denied','has','\x20--format\x20compress','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','map','stringify','10498VdEmnY','menu_parent_not_folder','170cXZxeP','before','pre-write-recheck','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','flagMissing','add','prototype','failed','recovered','rabetbase\x20menu\x20list\x20--appcode\x20','create-response-validation','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','isArray','create-recovery','visibility','expectedPath','parent','afterPlan','code','replace','rawerror','string','fromEntries','lookupCommand','open-mode','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','external-link-create','write','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','parentId','menu_sort_invalid','byId','includes','menu','1096EUChYB','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','plan','\x20could\x20not\x20be\x20verified.','menu_sort_overflow','appCode','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','19103HMeEZj','path','type','url','25961YDlCnC','sort','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','menu\x20list','verification','https:','object','menu_not_found','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Would\x20create\x20external\x20website\x20link\x20menu\x20','\x20after\x20response\x20loss.','create','str','/smartapi/menu/create','boolean','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','1562530lSItZn','fact','<redacted>','menu_verification_failed','length','after','isSafeInteger','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','rawFlags','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.'];a112_0x3a8d=function(){return _0x512a36;};return a112_0x3a8d();}async function recheckAddSnapshot(_0x146316,_0x42f50b){const _0x28874e=a112_0x423ef5;try{await recheckMutationSnapshot(_0x146316,_0x42f50b,_0x28874e(0x111));}catch(_0x127196){const _0x103621=getFailureRecord(_0x127196);throw externalLinkCreateFailure(_0x127196,_0x42f50b,{'stage':_0x28874e(0x12a),'failed':{..._0x103621?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0x103621[_0x28874e(0x106)]}:{},..._0x103621?.[_0x28874e(0xf3)]?{'currentSnapshotHash':_0x103621[_0x28874e(0xf3)]}:{}}});}}function createBody(_0x543fdc){const _0x297483=a112_0x423ef5;return{'parentId':toApiParentId(_0x543fdc[_0x297483(0x145)]),'label':String(_0x543fdc[_0x297483(0x11c)]),'type':String(_0x543fdc[_0x297483(0x153)]),'url':String(_0x543fdc[_0x297483(0x154)]),'visible':Boolean(_0x543fdc[_0x297483(0xfa)]),'sort':Number(_0x543fdc[_0x297483(0x156)]),'extend':{}};}function buildMenuLookupCommand(_0x1b7f56){const _0x158e55=a112_0x423ef5,_0x1078a8='\x27'+_0x1b7f56[_0x158e55(0x13b)](/'/g,_0x158e55(0x104))+'\x27';return _0x158e55(0x131)+_0x1078a8+_0x158e55(0x122);}async function recoverAfterResponseLoss(_0x4211d5,_0x2124ff,_0x20bee4){const _0x559852=a112_0x423ef5,{plan:_0x4432e9,snapshot:_0x1adfeb}=_0x2124ff,_0x3361c9=_0x4432e9['after'];let _0x3e6b4f;try{_0x3e6b4f=await fetchMenuSnapshot(_0x4211d5[_0x559852(0x14f)],_0x4211d5[_0x559852(0x110)]);}catch(_0x5720aa){throw recoveryRequiredFailure(_0x4432e9,_0x20bee4,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x2fc164=_0x3e6b4f[_0x559852(0xe8)][_0x559852(0x116)](_0x104090=>_0x104090[_0x559852(0x145)]===_0x3361c9[_0x559852(0x145)]&&_0x104090[_0x559852(0x153)]===_0x3361c9['type']&&_0x104090[_0x559852(0x11c)]===_0x3361c9[_0x559852(0x11c)]&&_0x104090[_0x559852(0x154)]===_0x3361c9[_0x559852(0x154)]),_0x273c99=_0x2fc164[_0x559852(0x116)](_0x2a5bce=>!_0x1adfeb['byId'][_0x559852(0x121)](_0x2a5bce['id'])),_0x4e309a=_0x2fc164['filter'](_0x426a2b=>_0x1adfeb[_0x559852(0x147)][_0x559852(0x121)](_0x426a2b['id']));if(_0x2fc164[_0x559852(0x169)]!==0x1||_0x273c99['length']!==0x1)throw recoveryRequiredFailure(_0x4432e9,_0x20bee4,{'matchCount':_0x2fc164[_0x559852(0x169)],'newMatchCount':_0x273c99[_0x559852(0x169)],'preexistingMatchCount':_0x4e309a[_0x559852(0x169)]});const _0x3322ab=_0x273c99[0x0];try{verifyCreatedFact(_0x3322ab,_0x3322ab['id'],_0x3361c9,null);}catch(_0x11dbe8){const _0x161670=_0x11dbe8 instanceof Error&&_0x559852(0x13a)in _0x11dbe8?_0x11dbe8:menuError(_0x559852(0x168),_0x559852(0x114)+_0x3322ab['id']+_0x559852(0x14d),_0x559852(0xe9)+_0x20bee4+_0x559852(0x16c));throw externalLinkCreateFailure(_0x161670,_0x4432e9,{'stage':_0x559852(0x159),'succeeded':[{'id':_0x3322ab['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x3322ab['id'],'finalFactsConfirmed':![]},'after':_0x3322ab,'warnings':[_0x559852(0xe1)+_0x3322ab['id']+_0x559852(0x14b)],'verification':{'status':_0x559852(0x12f),'targetId':_0x3322ab['id'],'recovered':!![],'lookupCommand':_0x20bee4}});}return creationSuccess(_0x4432e9,_0x3e6b4f,_0x3322ab,!![]);}function recoveryRequiredFailure(_0x32a7ad,_0x49c3a9,_0x35d1ba){const _0x3a14bf=a112_0x423ef5,_0x24af3f=menuError(_0x3a14bf(0x117),_0x3a14bf(0x150),_0x3a14bf(0xe9)+_0x49c3a9+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x24af3f,_0x32a7ad,{'stage':_0x3a14bf(0x135),'failed':_0x35d1ba,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':'failed',..._0x35d1ba,'lookupCommand':_0x49c3a9}});}async function readAndVerifyCreatedMenu(_0x3c359c){const _0x4d4de0=a112_0x423ef5;let _0x20b2c5;try{_0x20b2c5=await fetchMenuSnapshot(_0x3c359c[_0x4d4de0(0x14f)],_0x3c359c[_0x4d4de0(0x110)]);}catch(_0x137da5){const _0x484722=menuError('menu_verification_failed',_0x4d4de0(0xe1)+_0x3c359c[_0x4d4de0(0x103)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x4d4de0(0xe9)+_0x3c359c['lookupCommand']+_0x4d4de0(0x101));throw externalLinkCreateFailure(_0x484722,_0x3c359c[_0x4d4de0(0x14c)],{'stage':'verification','succeeded':[{'id':_0x3c359c[_0x4d4de0(0x103)],'created':!![]}],'failed':{'id':_0x3c359c[_0x4d4de0(0x103)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x3c359c['afterPlan'],'id':_0x3c359c['createdId'],'path':_0x3c359c[_0x4d4de0(0x137)]},'warnings':[_0x4d4de0(0xe1)+_0x3c359c[_0x4d4de0(0x103)]+_0x4d4de0(0x105)],'verification':{'status':_0x4d4de0(0x12f),'targetId':_0x3c359c[_0x4d4de0(0x103)],'lookupCommand':_0x3c359c['lookupCommand']}});}const _0x2a6fd8=_0x20b2c5['byId']['get'](_0x3c359c['createdId']);try{if(!_0x2a6fd8)throw menuError('menu_verification_failed',_0x4d4de0(0xf5)+_0x3c359c[_0x4d4de0(0x103)]+_0x4d4de0(0x164),'Run\x20'+_0x3c359c[_0x4d4de0(0x13f)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x2a6fd8,_0x3c359c['createdId'],_0x3c359c[_0x4d4de0(0x139)],_0x3c359c[_0x4d4de0(0x137)]);}catch(_0x35b81e){const _0x2d6e05=_0x35b81e instanceof Error&&_0x4d4de0(0x13a)in _0x35b81e?_0x35b81e:menuError(_0x4d4de0(0x168),'Created\x20menu\x20'+_0x3c359c[_0x4d4de0(0x103)]+'\x20failed\x20final\x20verification.',_0x4d4de0(0xe9)+_0x3c359c[_0x4d4de0(0x13f)]+_0x4d4de0(0x101));throw externalLinkCreateFailure(_0x2d6e05,_0x3c359c[_0x4d4de0(0x14c)],{'stage':_0x4d4de0(0x159),'succeeded':[{'id':_0x3c359c[_0x4d4de0(0x103)],'created':!![]}],'failed':{'id':_0x3c359c['createdId'],'finalFactsConfirmed':![]},'after':_0x2a6fd8??{..._0x3c359c[_0x4d4de0(0x139)],'id':_0x3c359c['createdId'],'path':_0x3c359c[_0x4d4de0(0x137)]},'warnings':['Menu\x20'+_0x3c359c[_0x4d4de0(0x103)]+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x4d4de0(0x12f),'targetId':_0x3c359c['createdId'],'recovered':_0x3c359c[_0x4d4de0(0x130)],'lookupCommand':_0x3c359c[_0x4d4de0(0x13f)]}});}return{'snapshot':_0x20b2c5,'fact':_0x2a6fd8};}function verifyCreatedFact(_0x56efde,_0x245b27,_0x5ea43e,_0x5713e8){const _0x5e57b4=a112_0x423ef5;if(!Number[_0x5e57b4(0x16b)](_0x56efde['id'])||_0x56efde['id']<=0x0||_0x56efde['id']!==_0x245b27)throw menuError(_0x5e57b4(0x168),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x42cf7a=[[_0x5e57b4(0x138),_0x56efde['parentId'],_0x5ea43e[_0x5e57b4(0x145)]],['type',_0x56efde[_0x5e57b4(0x153)],_0x5ea43e[_0x5e57b4(0x153)]],[_0x5e57b4(0x11c),_0x56efde[_0x5e57b4(0x11c)],_0x5ea43e['label']],['URL',_0x56efde[_0x5e57b4(0x154)],_0x5ea43e['url']],[_0x5e57b4(0x136),_0x56efde[_0x5e57b4(0xfa)],_0x5ea43e[_0x5e57b4(0xfa)]],['sort',_0x56efde['sort'],_0x5ea43e[_0x5e57b4(0x156)]]];for(const [_0x213b30,_0x5e7052,_0x2e5bfa]of _0x42cf7a){if(_0x5e7052!==_0x2e5bfa)throw menuError(_0x5e57b4(0x168),_0x5e57b4(0xf5)+_0x56efde['id']+_0x5e57b4(0x10c)+_0x213b30+'.',_0x5e57b4(0x157));}if(!_0x56efde[_0x5e57b4(0x152)][_0x5e57b4(0xfc)]()||_0x5713e8!==null&&_0x56efde[_0x5e57b4(0x152)]!==_0x5713e8)throw menuError(_0x5e57b4(0x168),'Created\x20menu\x20'+_0x56efde['id']+_0x5e57b4(0xfb),_0x5e57b4(0x157));}function creationSuccess(_0x15fdf7,_0x371a07,_0x342286,_0x5a18d0){const _0x2f98fa=a112_0x423ef5,_0x1c9cb0=mutationResult({..._0x15fdf7,'after':_0x342286,'dryRun':![],'succeeded':[{'id':_0x342286['id'],'created':!![],'recovered':_0x5a18d0}],'verification':{'checkedBy':_0x2f98fa(0x158),'snapshotHash':_0x371a07[_0x2f98fa(0x11d)],'targetId':_0x342286['id'],'recovered':_0x5a18d0,'path':_0x342286[_0x2f98fa(0x152)]}});return{'ok':!![],'message':_0x5a18d0?'Recovered\x20created\x20external\x20menu\x20'+_0x342286['id']+_0x2f98fa(0x15f):_0x2f98fa(0xe6)+_0x342286['id']+'.','data':{..._0x1c9cb0,'recovered':_0x5a18d0}};}function externalLinkCreateFailure(_0x33fa97,_0x3688d7,_0x56edc6){const _0x4c32c2=a112_0x423ef5;return menuFailure(safeMenuAddError(_0x33fa97),redactFailurePlan(_0x3688d7),{..._0x56edc6,'succeeded':_0x56edc6[_0x4c32c2(0xe3)]?.[_0x4c32c2(0x124)](redactFailureRecord),'failed':_0x56edc6[_0x4c32c2(0x12f)]?redactFailureRecord(_0x56edc6['failed']):undefined,'verification':_0x56edc6[_0x4c32c2(0x159)]?redactFailureRecord(_0x56edc6['verification']):undefined,'after':_0x56edc6[_0x4c32c2(0x16a)]===undefined?undefined:redactFailureValue(_0x56edc6[_0x4c32c2(0x16a)])});}function redactFailurePlan(_0x4683cb){const _0x50b376=a112_0x423ef5;return{..._0x4683cb,'selector':redactFailureRecord(_0x4683cb[_0x50b376(0xe7)]),'before':redactFailureValue(_0x4683cb[_0x50b376(0x129)]),'after':redactFailureValue(_0x4683cb[_0x50b376(0x16a)]),'plannedActions':_0x4683cb[_0x50b376(0x102)]?.['map'](_0x44a0c6=>({..._0x44a0c6,'body':redactFailureRecord(_0x44a0c6[_0x50b376(0x107)])})),'succeeded':_0x4683cb[_0x50b376(0xe3)][_0x50b376(0x124)](redactFailureRecord),'failed':_0x4683cb[_0x50b376(0x12f)][_0x50b376(0x124)](redactFailureRecord),'verification':_0x4683cb['verification']?redactFailureRecord(_0x4683cb['verification']):undefined};}function redactFailureRecord(_0x4345b4){return redactFailureValue(_0x4345b4);}function redactFailureValue(_0x31ace7,_0x34b660=''){const _0x3dea67=a112_0x423ef5,_0x559667=_0x34b660['toLowerCase']()[_0x3dea67(0x13b)](/[^a-z0-9]/g,'');if(['cause','causemessage',_0x3dea67(0xf8),_0x3dea67(0x13c)][_0x3dea67(0x148)](_0x559667))return _0x3dea67(0x167);if(Array[_0x3dea67(0x134)](_0x31ace7))return _0x31ace7[_0x3dea67(0x124)](_0x1c56e9=>redactFailureValue(_0x1c56e9));if(_0x31ace7&&typeof _0x31ace7==='object')return Object[_0x3dea67(0x13e)](Object[_0x3dea67(0xfe)](_0x31ace7)[_0x3dea67(0x124)](([_0x95b226,_0x2f1a7a])=>[_0x95b226,redactFailureValue(_0x2f1a7a,_0x95b226)]));return _0x31ace7;}function safeMenuAddError(_0x2e63e9){const _0x61ffdc=a112_0x423ef5,_0x8c732d=_0x2e63e9 instanceof CliError?_0x2e63e9[_0x61ffdc(0x13a)]:_0x61ffdc(0xf7);switch(_0x8c732d){case _0x61ffdc(0xe4):return menuError(_0x8c732d,_0x61ffdc(0x100),_0x61ffdc(0xf4));case _0x61ffdc(0x120):return menuError(_0x8c732d,_0x61ffdc(0x10a),_0x61ffdc(0x15d));case _0x61ffdc(0x109):return menuError(_0x8c732d,_0x61ffdc(0x10b),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x61ffdc(0x168):return menuError(_0x8c732d,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x61ffdc(0x117):return menuError(_0x8c732d,_0x61ffdc(0xdd),_0x61ffdc(0x11b));case _0x61ffdc(0xf7):case _0x61ffdc(0x15c):case _0x61ffdc(0x127):case _0x61ffdc(0x146):case _0x61ffdc(0x14e):return menuError(_0x8c732d,_0x61ffdc(0xf2),_0x61ffdc(0xf1));default:return menuError(_0x61ffdc(0xf7),_0x61ffdc(0xf2),_0x61ffdc(0xf1));}}function getFailureRecord(_0x1a0b5d){const _0x5986e2=a112_0x423ef5;if(!(_0x1a0b5d instanceof Error)||!('data'in _0x1a0b5d))return undefined;const _0x2e05c3=_0x1a0b5d[_0x5986e2(0xed)];if(!_0x2e05c3||typeof _0x2e05c3!==_0x5986e2(0x15b))return undefined;const _0x692618=_0x2e05c3[_0x5986e2(0x12f)];if(!Array[_0x5986e2(0x134)](_0x692618)||!_0x692618[0x0]||typeof _0x692618[0x0]!==_0x5986e2(0x15b))return undefined;return _0x692618[0x0];}
|
|
1
|
+
const a112_0x1c6442=a112_0x147d;(function(_0x4d4626,_0x32a31a){const _0x212547=a112_0x147d,_0x2b00be=_0x4d4626();while(!![]){try{const _0x382897=parseInt(_0x212547(0x1b1))/0x1+-parseInt(_0x212547(0x1a6))/0x2*(-parseInt(_0x212547(0x17d))/0x3)+parseInt(_0x212547(0x1b3))/0x4+parseInt(_0x212547(0x13b))/0x5*(-parseInt(_0x212547(0x1a4))/0x6)+parseInt(_0x212547(0x1b4))/0x7+parseInt(_0x212547(0x179))/0x8+-parseInt(_0x212547(0x177))/0x9;if(_0x382897===_0x32a31a)break;else _0x2b00be['push'](_0x2b00be['shift']());}catch(_0x20577d){_0x2b00be['push'](_0x2b00be['shift']());}}}(a112_0x51c1,0x900e0));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':a112_0x1c6442(0x143),'new-window':'link'};export function validateExternalMenuUrl(_0x32b754){const _0x474b31=a112_0x1c6442,_0x5591ec=_0x32b754[_0x474b31(0x150)]();let _0x190ad7;try{_0x190ad7=new URL(_0x5591ec);}catch{throw menuError(_0x474b31(0x18e),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x474b31(0x1aa));}if(_0x190ad7[_0x474b31(0x13f)]!==_0x474b31(0x195))throw menuError('menu_url_https_required',_0x474b31(0x14d),_0x474b31(0x15b));if(_0x190ad7[_0x474b31(0x16f)]||_0x190ad7[_0x474b31(0x193)])throw menuError('menu_url_credentials_forbidden','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.',_0x474b31(0x14b));return _0x5591ec;}export const menuExternalLinkCreate={'service':'menu','command':a112_0x1c6442(0x1a5),'description':a112_0x1c6442(0x173),'risk':'write','structuredErrors':!![],'flags':[{'name':'label','type':'string','required':!![],'description':a112_0x1c6442(0x198)},{'name':a112_0x1c6442(0x151),'type':a112_0x1c6442(0x192),'required':!![],'enum':['embedded',a112_0x1c6442(0x180)],'description':a112_0x1c6442(0x1ad)},{'name':a112_0x1c6442(0x186),'type':'string','required':!![],'description':a112_0x1c6442(0x199)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':a112_0x1c6442(0x12e),'default':!![],'description':a112_0x1c6442(0x134)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x171d45){validateAddInput(_0x171d45);},async 'dryRun'(_0x2a8e5f){const _0x217cbc=a112_0x1c6442;validateAddInput(_0x2a8e5f);const {plan:_0x39ac40}=await buildSafeAddPlan(_0x2a8e5f,!![]),_0x9a8e54=_0x39ac40[_0x217cbc(0x154)],_0x7be26f=createBody(_0x9a8e54);return menuDryRunResult(_0x39ac40,{'method':_0x217cbc(0x176),'url':_0x217cbc(0x1a1),'body':_0x7be26f,'description':_0x217cbc(0x136)+JSON['stringify'](_0x9a8e54[_0x217cbc(0x196)])+_0x217cbc(0x15d)+_0x2a8e5f[_0x217cbc(0x141)]('open-mode')+_0x217cbc(0x1a7)});},async 'execute'(_0x51371d){const _0xf6c55b=a112_0x1c6442;validateAddInput(_0x51371d);const _0x152823=await buildSafeAddPlan(_0x51371d,![]),{plan:_0x592646,snapshot:_0x16c8ea}=_0x152823,_0x118a4c=_0x592646[_0xf6c55b(0x154)],_0xe920a5=buildMenuLookupCommand(_0x51371d[_0xf6c55b(0x19e)]);await recheckAddSnapshot(_0x51371d,_0x592646);let _0x31827f;try{_0x31827f=await createMenuEntity(_0x51371d[_0xf6c55b(0x19e)],_0x51371d['cookie'],createBody(_0x118a4c));}catch(_0x34793f){const _0x1e4dda=mapMenuApiError(_0x34793f,_0xf6c55b(0x140));if(!isMenuResponseLoss(_0x34793f)||_0x1e4dda[_0xf6c55b(0x168)]==='menu_permission_denied')throw externalLinkCreateFailure(_0x1e4dda,_0x592646,{'stage':_0xf6c55b(0x1af),'failed':{},'verification':{'status':_0xf6c55b(0x158),'lookupCommand':_0xe920a5}});return recoverAfterResponseLoss(_0x51371d,_0x152823,_0xe920a5);}const _0x1c2f39=Number(_0x31827f?.['id']),_0x4dcbb3=typeof _0x31827f?.['path']===_0xf6c55b(0x192)?_0x31827f[_0xf6c55b(0x16e)]:'';if(!Number[_0xf6c55b(0x152)](_0x1c2f39)||_0x1c2f39<=0x0||!_0x4dcbb3[_0xf6c55b(0x150)]()){const _0x2f50d6=menuError(_0xf6c55b(0x148),_0xf6c55b(0x155),_0xf6c55b(0x190)+_0xe920a5+_0xf6c55b(0x17a));throw externalLinkCreateFailure(_0x2f50d6,_0x592646,{'stage':'create-response-validation','succeeded':Number['isSafeInteger'](_0x1c2f39)&&_0x1c2f39>0x0?[{'id':_0x1c2f39,'created':!![]}]:[],'failed':{'createdId':Number[_0xf6c55b(0x152)](_0x1c2f39)?_0x1c2f39:null,'generatedPathConfirmed':Boolean(_0x4dcbb3[_0xf6c55b(0x150)]())},'warnings':[_0xf6c55b(0x181)],'after':Number[_0xf6c55b(0x152)](_0x1c2f39)&&_0x1c2f39>0x0?{..._0x118a4c,'id':_0x1c2f39,'path':_0x4dcbb3}:_0x118a4c,'verification':{'status':_0xf6c55b(0x158),'lookupCommand':_0xe920a5,...Number[_0xf6c55b(0x152)](_0x1c2f39)&&_0x1c2f39>0x0?{'targetId':_0x1c2f39}:{}}});}const _0x5b677a=await readAndVerifyCreatedMenu({'appCode':_0x51371d[_0xf6c55b(0x19e)],'cookie':_0x51371d[_0xf6c55b(0x16d)],'plan':_0x592646,'afterPlan':_0x118a4c,'createdId':_0x1c2f39,'expectedPath':_0x4dcbb3,'lookupCommand':_0xe920a5,'recovered':![]});return creationSuccess(_0x592646,_0x5b677a['snapshot'],_0x5b677a['fact'],![]);}};function validateAddInput(_0x376fb1){const _0x51f5ca=a112_0x1c6442;if(!_0x376fb1['str']('label')[_0x51f5ca(0x150)]())throw CliErrors[_0x51f5ca(0x19c)](_0x51f5ca(0x196));resolveExternalMenuType(_0x376fb1),validateExternalMenuUrl(_0x376fb1['str'](_0x51f5ca(0x186))),parseParentId(_0x376fb1,_0x51f5ca(0x172)),validateSort(_0x376fb1);}function resolveExternalMenuType(_0x1e693c){const _0x5245c0=a112_0x1c6442,_0x28ad13=_0x1e693c[_0x5245c0(0x141)]('open-mode')[_0x5245c0(0x150)]();if(!_0x28ad13)throw CliErrors[_0x5245c0(0x19c)]('open-mode');const _0x50024e=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x28ad13];if(!_0x50024e)throw menuError(_0x5245c0(0x19d),_0x5245c0(0x189),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x50024e;}async function buildAddPlan(_0x58a34a,_0x810a35){const _0x407246=a112_0x1c6442,_0x30702e=await fetchMutationSnapshot(_0x58a34a,_0x407246(0x140)),_0xe6499b=parseParentId(_0x58a34a,'parent-id')??null;if(_0xe6499b!=null)requireFolder(_0x30702e,_0xe6499b);const _0x121e43=validateSort(_0x58a34a),_0x27b827=_0x121e43??nextSiblingSort(_0x30702e,_0xe6499b,_0x407246(0x1a8)),_0x5de947=_0x58a34a['str']('label')[_0x407246(0x150)](),_0x4de980=resolveExternalMenuType(_0x58a34a),_0x40ae74=validateExternalMenuUrl(_0x58a34a[_0x407246(0x141)](_0x407246(0x186))),_0x16316f=Object[_0x407246(0x1ac)]['hasOwnProperty'][_0x407246(0x1b0)](_0x58a34a['rawFlags'],_0x407246(0x171))?_0x58a34a['bool'](_0x407246(0x171)):!![],_0x51d568={'id':null,'parentId':_0xe6499b,'label':_0x5de947,'path':_0x407246(0x163),'url':_0x40ae74,'type':_0x4de980,'visible':_0x16316f,'sort':_0x27b827},_0x3603e6=buildMenuLookupCommand(_0x58a34a[_0x407246(0x19e)]),_0x5d53af=mutationResult({'operation':_0x407246(0x147),'selector':{'parentId':_0xe6499b,'type':_0x4de980,'label':_0x5de947,'url':_0x40ae74},'before':null,'after':_0x51d568,'dryRun':_0x810a35,'backend':[{'method':_0x407246(0x176),'path':_0x407246(0x1a1)}],'plannedActions':[{'stage':'create-menu','method':'POST','path':'/smartapi/menu/create','body':createBody(_0x51d568)}],'snapshotHash':_0x30702e[_0x407246(0x18c)],'warnings':[_0x407246(0x187)],'verification':{'lookupCommand':_0x3603e6}});return{'plan':_0x5d53af,'snapshot':_0x30702e};}async function buildSafeAddPlan(_0xe0cefb,_0x4b3f7c){try{return await buildAddPlan(_0xe0cefb,_0x4b3f7c);}catch(_0x48c7b4){throw safeMenuAddError(_0x48c7b4);}}async function recheckAddSnapshot(_0x4fa6a4,_0x32f121){const _0x52a342=a112_0x1c6442;try{await recheckMutationSnapshot(_0x4fa6a4,_0x32f121,_0x52a342(0x140));}catch(_0x21f589){const _0x5523a6=getFailureRecord(_0x21f589);throw externalLinkCreateFailure(_0x21f589,_0x32f121,{'stage':'pre-write-recheck','failed':{..._0x5523a6?.[_0x52a342(0x167)]?{'expectedSnapshotHash':_0x5523a6[_0x52a342(0x167)]}:{},..._0x5523a6?.[_0x52a342(0x13d)]?{'currentSnapshotHash':_0x5523a6[_0x52a342(0x13d)]}:{}}});}}function createBody(_0x532272){const _0x4a8838=a112_0x1c6442;return{'parentId':toApiParentId(_0x532272['parentId']),'label':String(_0x532272[_0x4a8838(0x196)]),'type':String(_0x532272['type']),'url':String(_0x532272[_0x4a8838(0x186)]),'visible':Boolean(_0x532272['visible']),'sort':Number(_0x532272[_0x4a8838(0x130)]),'extend':{}};}function a112_0x51c1(){const _0x434c20=['expectedPath','Created\x20menu\x20','lookupCommand','<redacted>','cookie','path','username','rabetbase\x20menu\x20list\x20--appcode\x20','visible','parent-id','Create\x20an\x20external\x20website\x20link\x20menu','includes','Recovered\x20created\x20external\x20menu\x20','POST','15442704JxnmXg','fromEntries','6310720GlonIH','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','length','Recovered\x20menu\x20','258294DKysFS','data','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','new-window','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','create-recovery','url','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','causemessage','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','menu_mutation_failed','\x20failed\x20final\x20verification.','hash','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','menu_url_invalid','get','Run\x20','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','string','password','map','https:','label','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','Menu\x20label','External\x20HTTPS\x20URL','type','object','flagMissing','menu_open_mode_invalid','appCode','menu_parent_not_folder','readbackerror','/smartapi/menu/create','plannedActions','verification','24JBQaGQ','external-link-create','2AvmGbM','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','menu','afterPlan','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','prototype','How\x20to\x20open\x20the\x20external\x20website','\x20has\x20an\x20unexpected\x20generated\x20path.','create','call','646737pneSZS','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','4349524HVogCa','1427608ORwjCF','plan','filter','boolean','Menu\x20','sort','selector','cause','has','Whether\x20the\x20menu\x20is\x20visible','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','Would\x20create\x20external\x20website\x20link\x20menu\x20','menu_create_recovery_required','parentId','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','replace','633870MbsRtu','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','currentSnapshotHash','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','protocol','create\x20external\x20menu','str','body','iframe','\x27\x5c\x27\x27','External\x20menu\x20creation\x20failed.','byId','add','menu_create_response_invalid','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','createdId','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','menu_sort_overflow','succeeded','trim','open-mode','isSafeInteger','rawerror','after','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','menu\x20list','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','failed','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','before','Provide\x20an\x20HTTPS\x20URL.','recovered','\x20with\x20','menu_not_found','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','menu_verification_failed','visibility','menu_state_drift','<platform-generated>','\x20after\x20response\x20loss.','menu_sort_invalid','isArray','expectedSnapshotHash','code'];a112_0x51c1=function(){return _0x434c20;};return a112_0x51c1();}function buildMenuLookupCommand(_0x1ea7f8){const _0x32cc41=a112_0x1c6442,_0x427973='\x27'+_0x1ea7f8[_0x32cc41(0x13a)](/'/g,_0x32cc41(0x144))+'\x27';return _0x32cc41(0x170)+_0x427973+'\x20--format\x20compress';}async function recoverAfterResponseLoss(_0x10bc09,_0x26af34,_0x5dd4ec){const _0x6f5776=a112_0x1c6442,{plan:_0x55fb58,snapshot:_0x163d44}=_0x26af34,_0x48ba9c=_0x55fb58['after'];let _0x4e80a6;try{_0x4e80a6=await fetchMenuSnapshot(_0x10bc09[_0x6f5776(0x19e)],_0x10bc09[_0x6f5776(0x16d)]);}catch(_0x752a74){throw recoveryRequiredFailure(_0x55fb58,_0x5dd4ec,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x18b886=_0x4e80a6['menus'][_0x6f5776(0x12d)](_0x16bfa0=>_0x16bfa0['parentId']===_0x48ba9c[_0x6f5776(0x138)]&&_0x16bfa0[_0x6f5776(0x19a)]===_0x48ba9c[_0x6f5776(0x19a)]&&_0x16bfa0['label']===_0x48ba9c[_0x6f5776(0x196)]&&_0x16bfa0[_0x6f5776(0x186)]===_0x48ba9c[_0x6f5776(0x186)]),_0x671d82=_0x18b886[_0x6f5776(0x12d)](_0x4563aa=>!_0x163d44[_0x6f5776(0x146)][_0x6f5776(0x133)](_0x4563aa['id'])),_0x20dc5c=_0x18b886[_0x6f5776(0x12d)](_0x4e5332=>_0x163d44[_0x6f5776(0x146)]['has'](_0x4e5332['id']));if(_0x18b886[_0x6f5776(0x17b)]!==0x1||_0x671d82[_0x6f5776(0x17b)]!==0x1)throw recoveryRequiredFailure(_0x55fb58,_0x5dd4ec,{'matchCount':_0x18b886[_0x6f5776(0x17b)],'newMatchCount':_0x671d82[_0x6f5776(0x17b)],'preexistingMatchCount':_0x20dc5c[_0x6f5776(0x17b)]});const _0x56e023=_0x671d82[0x0];try{verifyCreatedFact(_0x56e023,_0x56e023['id'],_0x48ba9c,null);}catch(_0x1ce8e5){const _0x32f9b5=_0x1ce8e5 instanceof Error&&_0x6f5776(0x168)in _0x1ce8e5?_0x1ce8e5:menuError(_0x6f5776(0x160),_0x6f5776(0x17c)+_0x56e023['id']+'\x20could\x20not\x20be\x20verified.',_0x6f5776(0x190)+_0x5dd4ec+_0x6f5776(0x183));throw externalLinkCreateFailure(_0x32f9b5,_0x55fb58,{'stage':_0x6f5776(0x1a3),'succeeded':[{'id':_0x56e023['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x56e023['id'],'finalFactsConfirmed':![]},'after':_0x56e023,'warnings':[_0x6f5776(0x12f)+_0x56e023['id']+_0x6f5776(0x197)],'verification':{'status':'failed','targetId':_0x56e023['id'],'recovered':!![],'lookupCommand':_0x5dd4ec}});}return creationSuccess(_0x55fb58,_0x4e80a6,_0x56e023,!![]);}function recoveryRequiredFailure(_0x580e21,_0x27843b,_0x4c2ea7){const _0x5ced52=a112_0x1c6442,_0x5b12cb=menuError(_0x5ced52(0x137),_0x5ced52(0x139),_0x5ced52(0x190)+_0x27843b+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x5b12cb,_0x580e21,{'stage':_0x5ced52(0x185),'failed':_0x4c2ea7,'warnings':[_0x5ced52(0x18d)],'verification':{'status':_0x5ced52(0x158),..._0x4c2ea7,'lookupCommand':_0x27843b}});}async function readAndVerifyCreatedMenu(_0x23866b){const _0x4f117e=a112_0x1c6442;let _0x56ed73;try{_0x56ed73=await fetchMenuSnapshot(_0x23866b[_0x4f117e(0x19e)],_0x23866b[_0x4f117e(0x16d)]);}catch(_0x697206){const _0xe30a2b=menuError('menu_verification_failed','Menu\x20'+_0x23866b[_0x4f117e(0x14a)]+_0x4f117e(0x159),'Run\x20'+_0x23866b[_0x4f117e(0x16b)]+_0x4f117e(0x135));throw externalLinkCreateFailure(_0xe30a2b,_0x23866b[_0x4f117e(0x12c)],{'stage':_0x4f117e(0x1a3),'succeeded':[{'id':_0x23866b['createdId'],'created':!![]}],'failed':{'id':_0x23866b[_0x4f117e(0x14a)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x23866b[_0x4f117e(0x1a9)],'id':_0x23866b[_0x4f117e(0x14a)],'path':_0x23866b[_0x4f117e(0x169)]},'warnings':[_0x4f117e(0x12f)+_0x23866b['createdId']+_0x4f117e(0x184)],'verification':{'status':_0x4f117e(0x158),'targetId':_0x23866b['createdId'],'lookupCommand':_0x23866b[_0x4f117e(0x16b)]}});}const _0xd6e408=_0x56ed73[_0x4f117e(0x146)][_0x4f117e(0x18f)](_0x23866b[_0x4f117e(0x14a)]);try{if(!_0xd6e408)throw menuError(_0x4f117e(0x160),_0x4f117e(0x16a)+_0x23866b[_0x4f117e(0x14a)]+_0x4f117e(0x149),_0x4f117e(0x190)+_0x23866b['lookupCommand']+_0x4f117e(0x135));verifyCreatedFact(_0xd6e408,_0x23866b['createdId'],_0x23866b['afterPlan'],_0x23866b['expectedPath']);}catch(_0x4eb25e){const _0x845358=_0x4eb25e instanceof Error&&_0x4f117e(0x168)in _0x4eb25e?_0x4eb25e:menuError(_0x4f117e(0x160),_0x4f117e(0x16a)+_0x23866b[_0x4f117e(0x14a)]+_0x4f117e(0x18b),'Run\x20'+_0x23866b[_0x4f117e(0x16b)]+_0x4f117e(0x135));throw externalLinkCreateFailure(_0x845358,_0x23866b[_0x4f117e(0x12c)],{'stage':_0x4f117e(0x1a3),'succeeded':[{'id':_0x23866b[_0x4f117e(0x14a)],'created':!![]}],'failed':{'id':_0x23866b[_0x4f117e(0x14a)],'finalFactsConfirmed':![]},'after':_0xd6e408??{..._0x23866b[_0x4f117e(0x1a9)],'id':_0x23866b[_0x4f117e(0x14a)],'path':_0x23866b[_0x4f117e(0x169)]},'warnings':[_0x4f117e(0x12f)+_0x23866b['createdId']+_0x4f117e(0x14c)],'verification':{'status':_0x4f117e(0x158),'targetId':_0x23866b[_0x4f117e(0x14a)],'recovered':_0x23866b[_0x4f117e(0x15c)],'lookupCommand':_0x23866b['lookupCommand']}});}return{'snapshot':_0x56ed73,'fact':_0xd6e408};}function a112_0x147d(_0x477663,_0x263e4b){_0x477663=_0x477663-0x12c;const _0x51c1ae=a112_0x51c1();let _0x147d17=_0x51c1ae[_0x477663];return _0x147d17;}function verifyCreatedFact(_0x398438,_0x210d1e,_0x39d2b9,_0x1aa139){const _0x29cc41=a112_0x1c6442;if(!Number['isSafeInteger'](_0x398438['id'])||_0x398438['id']<=0x0||_0x398438['id']!==_0x210d1e)throw menuError(_0x29cc41(0x160),_0x29cc41(0x13e),_0x29cc41(0x157));const _0x2ea1d0=[['parent',_0x398438[_0x29cc41(0x138)],_0x39d2b9['parentId']],['type',_0x398438[_0x29cc41(0x19a)],_0x39d2b9['type']],[_0x29cc41(0x196),_0x398438[_0x29cc41(0x196)],_0x39d2b9[_0x29cc41(0x196)]],['URL',_0x398438[_0x29cc41(0x186)],_0x39d2b9[_0x29cc41(0x186)]],[_0x29cc41(0x161),_0x398438[_0x29cc41(0x171)],_0x39d2b9['visible']],[_0x29cc41(0x130),_0x398438[_0x29cc41(0x130)],_0x39d2b9[_0x29cc41(0x130)]]];for(const [_0x4f9961,_0x1d9326,_0x39f23f]of _0x2ea1d0){if(_0x1d9326!==_0x39f23f)throw menuError(_0x29cc41(0x160),_0x29cc41(0x16a)+_0x398438['id']+'\x20has\x20an\x20unexpected\x20'+_0x4f9961+'.',_0x29cc41(0x13c));}if(!_0x398438[_0x29cc41(0x16e)][_0x29cc41(0x150)]()||_0x1aa139!==null&&_0x398438[_0x29cc41(0x16e)]!==_0x1aa139)throw menuError(_0x29cc41(0x160),_0x29cc41(0x16a)+_0x398438['id']+_0x29cc41(0x1ae),_0x29cc41(0x13c));}function creationSuccess(_0x189db1,_0x17ad26,_0x5599e2,_0x14407f){const _0x39436f=a112_0x1c6442,_0x3212a6=mutationResult({..._0x189db1,'after':_0x5599e2,'dryRun':![],'succeeded':[{'id':_0x5599e2['id'],'created':!![],'recovered':_0x14407f}],'verification':{'checkedBy':_0x39436f(0x156),'snapshotHash':_0x17ad26[_0x39436f(0x18c)],'targetId':_0x5599e2['id'],'recovered':_0x14407f,'path':_0x5599e2[_0x39436f(0x16e)]}});return{'ok':!![],'message':_0x14407f?_0x39436f(0x175)+_0x5599e2['id']+_0x39436f(0x164):'Created\x20external\x20menu\x20'+_0x5599e2['id']+'.','data':{..._0x3212a6,'recovered':_0x14407f}};}function externalLinkCreateFailure(_0x44a4f3,_0x5dc55f,_0x533f8f){const _0x4641ac=a112_0x1c6442;return menuFailure(safeMenuAddError(_0x44a4f3),redactFailurePlan(_0x5dc55f),{..._0x533f8f,'succeeded':_0x533f8f[_0x4641ac(0x14f)]?.[_0x4641ac(0x194)](redactFailureRecord),'failed':_0x533f8f['failed']?redactFailureRecord(_0x533f8f[_0x4641ac(0x158)]):undefined,'verification':_0x533f8f[_0x4641ac(0x1a3)]?redactFailureRecord(_0x533f8f[_0x4641ac(0x1a3)]):undefined,'after':_0x533f8f[_0x4641ac(0x154)]===undefined?undefined:redactFailureValue(_0x533f8f['after'])});}function redactFailurePlan(_0x4d296d){const _0x424c0f=a112_0x1c6442;return{..._0x4d296d,'selector':redactFailureRecord(_0x4d296d[_0x424c0f(0x131)]),'before':redactFailureValue(_0x4d296d[_0x424c0f(0x15a)]),'after':redactFailureValue(_0x4d296d['after']),'plannedActions':_0x4d296d[_0x424c0f(0x1a2)]?.['map'](_0x5eb707=>({..._0x5eb707,'body':redactFailureRecord(_0x5eb707[_0x424c0f(0x142)])})),'succeeded':_0x4d296d[_0x424c0f(0x14f)][_0x424c0f(0x194)](redactFailureRecord),'failed':_0x4d296d[_0x424c0f(0x158)][_0x424c0f(0x194)](redactFailureRecord),'verification':_0x4d296d[_0x424c0f(0x1a3)]?redactFailureRecord(_0x4d296d[_0x424c0f(0x1a3)]):undefined};}function redactFailureRecord(_0x1677c1){return redactFailureValue(_0x1677c1);}function redactFailureValue(_0x1b7745,_0x2c3ee4=''){const _0x9236d1=a112_0x1c6442,_0x58b06f=_0x2c3ee4['toLowerCase']()['replace'](/[^a-z0-9]/g,'');if([_0x9236d1(0x132),_0x9236d1(0x188),_0x9236d1(0x1a0),_0x9236d1(0x153)][_0x9236d1(0x174)](_0x58b06f))return _0x9236d1(0x16c);if(Array[_0x9236d1(0x166)](_0x1b7745))return _0x1b7745[_0x9236d1(0x194)](_0xf80af0=>redactFailureValue(_0xf80af0));if(_0x1b7745&&typeof _0x1b7745===_0x9236d1(0x19b))return Object[_0x9236d1(0x178)](Object['entries'](_0x1b7745)['map'](([_0x32af94,_0x4f2ff4])=>[_0x32af94,redactFailureValue(_0x4f2ff4,_0x32af94)]));return _0x1b7745;}function safeMenuAddError(_0x50af21){const _0x589322=a112_0x1c6442,_0x55eba9=_0x50af21 instanceof CliError?_0x50af21['code']:_0x589322(0x18a);switch(_0x55eba9){case _0x589322(0x162):return menuError(_0x55eba9,_0x589322(0x15f),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.');case'menu_permission_denied':return menuError(_0x55eba9,_0x589322(0x191),_0x589322(0x182));case _0x589322(0x148):return menuError(_0x55eba9,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x589322(0x17f));case _0x589322(0x160):return menuError(_0x55eba9,_0x589322(0x1b2),_0x589322(0x17f));case _0x589322(0x137):return menuError(_0x55eba9,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case'menu_mutation_failed':case _0x589322(0x15e):case _0x589322(0x19f):case _0x589322(0x165):case _0x589322(0x14e):return menuError(_0x55eba9,_0x589322(0x145),_0x589322(0x1ab));default:return menuError(_0x589322(0x18a),_0x589322(0x145),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x1df411){const _0x4fa56e=a112_0x1c6442;if(!(_0x1df411 instanceof Error)||!(_0x4fa56e(0x17e)in _0x1df411))return undefined;const _0x87541a=_0x1df411['data'];if(!_0x87541a||typeof _0x87541a!==_0x4fa56e(0x19b))return undefined;const _0x2c7659=_0x87541a[_0x4fa56e(0x158)];if(!Array[_0x4fa56e(0x166)](_0x2c7659)||!_0x2c7659[0x0]||typeof _0x2c7659[0x0]!==_0x4fa56e(0x19b))return undefined;return _0x2c7659[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a113_0x3fbd8b=a113_0x56b2;(function(_0xeb03c4,_0x3089a0){const _0x5353cf=a113_0x56b2,_0x1d2e5c=_0xeb03c4();while(!![]){try{const _0x18d2b4=-parseInt(_0x5353cf(0xd1))/0x1+-parseInt(_0x5353cf(0xbd))/0x2+parseInt(_0x5353cf(0xd0))/0x3+-parseInt(_0x5353cf(0xc4))/0x4+parseInt(_0x5353cf(0xca))/0x5+parseInt(_0x5353cf(0xa4))/0x6*(parseInt(_0x5353cf(0xc8))/0x7)+-parseInt(_0x5353cf(0xdf))/0x8;if(_0x18d2b4===_0x3089a0)break;else _0x1d2e5c['push'](_0x1d2e5c['shift']());}catch(_0x581a72){_0x1d2e5c['push'](_0x1d2e5c['shift']());}}}(a113_0x3a7e,0x19849));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a113_0x3fbd8b(0xc6)}];export const menuExternalLinkUpdate={'service':a113_0x3fbd8b(0xb3),'command':a113_0x3fbd8b(0xaf),'description':'Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','risk':a113_0x3fbd8b(0xcd),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':a113_0x3fbd8b(0xb9),'required':!![],'description':a113_0x3fbd8b(0xb2)},{'name':'expect-url','type':a113_0x3fbd8b(0xb9),'required':!![],'description':a113_0x3fbd8b(0xb6)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1673de){validateInput(_0x1673de);},async 'dryRun'(_0x32e1cb){const _0x16bd80=a113_0x3fbd8b;validateInput(_0x32e1cb);const _0x204051=await buildPlan(_0x32e1cb,!![]);return menuDryRunResult(_0x204051['plan'],{'method':'POST','url':'/smartapi/menu/update','body':_0x204051[_0x16bd80(0x9a)],'description':_0x16bd80(0xc0)+_0x204051[_0x16bd80(0x9a)]['id']+'.'});},async 'execute'(_0x3e67ed){const _0x151b4c=a113_0x3fbd8b;validateInput(_0x3e67ed);const _0x31ad07=await buildPlan(_0x3e67ed,![]),{plan:_0x43a0d8,body:_0x28b0c5,before:_0x1e1a84,noChanges:_0x3a2dc4}=_0x31ad07,_0x51c147=_0x28b0c5['id'];if(_0x3a2dc4)return updateSuccess(_0x43a0d8,_0x31ad07[_0x151b4c(0xdc)],_0x1e1a84,!![],![]);await recheckMutationSnapshot(_0x3e67ed,_0x43a0d8,'update\x20external\x20menu\x20URL',_0x51c147);try{await updateMenuEntity(_0x3e67ed['appCode'],_0x3e67ed[_0x151b4c(0xcf)],{'id':_0x28b0c5['id'],'url':_0x28b0c5['url']});}catch(_0x56a75f){const _0x38f002=mapMenuApiError(_0x56a75f,'update\x20external\x20menu\x20URL',_0x51c147);if(isMenuResponseLoss(_0x56a75f)&&_0x38f002[_0x151b4c(0x9b)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x3e67ed,_0x31ad07);throw menuFailure(_0x38f002,_0x43a0d8,{'stage':'update','failed':{'id':_0x51c147},'warnings':[_0x151b4c(0xae)],'verification':{'status':_0x151b4c(0xcb),'targetId':_0x51c147,'lookupCommand':buildLookupCommand(_0x3e67ed['appCode'])}});}let _0xa6a3c7,_0x376009;try{_0xa6a3c7=await fetchMenuSnapshot(_0x3e67ed['appCode'],_0x3e67ed[_0x151b4c(0xcf)]),_0x376009=requireMenu(_0xa6a3c7,_0x51c147),verifyUpdatedFact(_0x1e1a84,_0x376009,_0x28b0c5[_0x151b4c(0xa0)]);}catch(_0xab1f27){const _0x30dffd=describeMenuErrorCause(_0xab1f27,_0x151b4c(0xd7),_0x51c147),_0x32e998=asVerificationError(_0xab1f27,_0x151b4c(0x9e)+_0x51c147+_0x151b4c(0xab));throw menuFailure(_0x32e998,_0x43a0d8,{'stage':_0x151b4c(0xa6),'succeeded':[{'id':_0x51c147,'updateRequested':!![]}],'failed':{'id':_0x51c147,'requestedStateConfirmed':![],..._0x30dffd},'warnings':[_0x151b4c(0xd4)],'verification':{'status':_0x151b4c(0xcb),'targetId':_0x51c147,'lookupCommand':buildLookupCommand(_0x3e67ed['appCode'])}});}return updateSuccess(_0x43a0d8,_0xa6a3c7,_0x376009,![],![]);}};function a113_0x3a7e(){const _0x5d204e=['\x20already\x20matches\x20the\x20requested\x20URL.','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','\x22,\x20not\x20iframe\x20or\x20link.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','byId','label','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','external-link-update','menu_state_drift','\x20--format\x20compress','New\x20external\x20HTTPS\x20URL','menu','after','readbackFailed','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','update-external-link-url','Menu\x20','string','sort','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','\x27\x5c\x27\x27','139164yTTNnc','link','hash','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','iframe','update-recovery','123548CgOcrj','type','/smartapi/menu/update','expect-parent-id','105BjFcwh','update\x20external\x20menu\x20URL','1030860eCCllM','failed','path','write','appCode','cookie','594909wTQTeh','58673HUvwwc','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','\x20has\x20an\x20empty\x20platform\x20path.','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','\x20is\x20type\x20\x22','\x20direct\x20child\x20menu(s).','verify\x20external\x20menu\x20URL\x20update','menu_external_link_path_missing','visible','\x20URL\x20update\x20did\x20not\x20take\x20effect.','menu_update_recovery_required','snapshot','childrenCount','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','2679896ytutSZ','menu\x20list','trim','\x20changed\x20during\x20the\x20URL-only\x20update.','unknown','requestedUrlObserved','menu_external_link_type_required','body','code','parentId','\x20could\x20not\x20be\x20verified\x20safely','Update\x20request\x20for\x20menu\x20','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','url','expect-url','str','flagMissing','77670vscIHY','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','verification','Response\x20was\x20lost\x20and\x20menu\x20'];a113_0x3a7e=function(){return _0x5d204e;};return a113_0x3a7e();}function validateInput(_0x21d5cf){const _0x59b840=a113_0x3fbd8b;validateExactId(_0x21d5cf),requiredUrl(_0x21d5cf,_0x59b840(0xa0)),requiredExpectedUrl(_0x21d5cf),parseParentId(_0x21d5cf,_0x59b840(0xc7),{'required':!![]});}function a113_0x56b2(_0x23be7f,_0x92fbd8){_0x23be7f=_0x23be7f-0x94;const _0x3a7ef2=a113_0x3a7e();let _0x56b243=_0x3a7ef2[_0x23be7f];return _0x56b243;}function requiredUrl(_0x4887c8,_0x51e56b){const _0x54e9b2=a113_0x3fbd8b;if(!hasFlag(_0x4887c8,_0x51e56b)||!_0x4887c8[_0x54e9b2(0xa2)](_0x51e56b)['trim']())throw CliErrors[_0x54e9b2(0xa3)](_0x51e56b);return validateExternalMenuUrl(_0x4887c8[_0x54e9b2(0xa2)](_0x51e56b));}function requiredExpectedUrl(_0x45caf5){const _0x44bcef=a113_0x3fbd8b;if(!hasFlag(_0x45caf5,_0x44bcef(0xa1))||!_0x45caf5[_0x44bcef(0xa2)](_0x44bcef(0xa1))[_0x44bcef(0x95)]())throw CliErrors[_0x44bcef(0xa3)](_0x44bcef(0xa1));return _0x45caf5[_0x44bcef(0xa2)]('expect-url')['trim']();}async function buildPlan(_0x55e6bb,_0x4da94e){const _0x1f47c3=a113_0x3fbd8b,_0x401ac3=validateExactId(_0x55e6bb),_0x4f54ac=requiredUrl(_0x55e6bb,_0x1f47c3(0xa0)),_0x288ed1=requiredExpectedUrl(_0x55e6bb),_0x5a3f19=parseParentId(_0x55e6bb,_0x1f47c3(0xc7),{'required':!![]}),_0x5150f4=await fetchMutationSnapshot(_0x55e6bb,_0x1f47c3(0xc9),_0x401ac3),_0x4754f6=requireMenu(_0x5150f4,_0x401ac3);assertExternalLinkLeaf(_0x4754f6);if(_0x4754f6['parentId']!==_0x5a3f19)throw menuError('menu_state_drift',_0x1f47c3(0xb8)+_0x401ac3+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x5a3f19)+',\x20current\x20'+formatParent(_0x4754f6[_0x1f47c3(0x9c)])+'.',_0x1f47c3(0xbb));const _0x4950f8=_0x4754f6[_0x1f47c3(0xa0)]===_0x4f54ac;if(!_0x4950f8&&_0x4754f6[_0x1f47c3(0xa0)]!==_0x288ed1)throw menuError(_0x1f47c3(0xb0),_0x1f47c3(0xb8)+_0x401ac3+_0x1f47c3(0xa5),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x5cd0db={'id':_0x401ac3,'appCode':_0x55e6bb[_0x1f47c3(0xce)],'url':_0x4f54ac},_0x20bc7b={..._0x4754f6,'url':_0x4f54ac};return{'body':_0x5cd0db,'before':_0x4754f6,'noChanges':_0x4950f8,'snapshot':_0x5150f4,'plan':mutationResult({'operation':_0x1f47c3(0xaf),'selector':{'id':_0x401ac3},'before':_0x4754f6,'after':_0x20bc7b,'dryRun':_0x4da94e,'backend':[...BACKEND],'plannedActions':_0x4950f8?[]:[{'stage':_0x1f47c3(0xb7),'method':'POST','path':_0x1f47c3(0xc6),'body':_0x5cd0db}],'snapshotHash':_0x5150f4[_0x1f47c3(0xbf)],'warnings':_0x4950f8?[_0x1f47c3(0x9f)]:[]})};}function assertExternalLinkLeaf(_0x2927f5){const _0x218b04=a113_0x3fbd8b;if(_0x2927f5['type']!==_0x218b04(0xc2)&&_0x2927f5[_0x218b04(0xc5)]!==_0x218b04(0xbe))throw menuError(_0x218b04(0x99),'Menu\x20'+_0x2927f5['id']+_0x218b04(0xd5)+(_0x2927f5[_0x218b04(0xc5)]||_0x218b04(0x97))+_0x218b04(0xaa),'Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x2927f5[_0x218b04(0xdd)]!==0x0)throw menuError('menu_external_link_not_leaf','Menu\x20'+_0x2927f5['id']+'\x20has\x20'+_0x2927f5[_0x218b04(0xdd)]+_0x218b04(0xd6),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x2927f5[_0x218b04(0xcc)][_0x218b04(0x95)]())throw menuError(_0x218b04(0xd8),'Menu\x20'+_0x2927f5['id']+_0x218b04(0xd3),_0x218b04(0xd2));}function verifyUpdatedFact(_0x528ad0,_0x1362e1,_0x4a4f3b){const _0x1c9e93=a113_0x3fbd8b;assertExternalLinkLeaf(_0x1362e1);const _0x2e96ee=[['id',_0x1362e1['id'],_0x528ad0['id']],['label',_0x1362e1[_0x1c9e93(0xad)],_0x528ad0[_0x1c9e93(0xad)]],[_0x1c9e93(0xc5),_0x1362e1[_0x1c9e93(0xc5)],_0x528ad0[_0x1c9e93(0xc5)]],[_0x1c9e93(0xcc),_0x1362e1[_0x1c9e93(0xcc)],_0x528ad0[_0x1c9e93(0xcc)]],['parentId',_0x1362e1[_0x1c9e93(0x9c)],_0x528ad0[_0x1c9e93(0x9c)]],[_0x1c9e93(0xba),_0x1362e1[_0x1c9e93(0xba)],_0x528ad0[_0x1c9e93(0xba)]],[_0x1c9e93(0xd9),_0x1362e1['visible'],_0x528ad0[_0x1c9e93(0xd9)]]];for(const [_0x5d0772,_0x1c039e,_0x8b7ad2]of _0x2e96ee){assertVerified(_0x1c039e===_0x8b7ad2,_0x1c9e93(0xb8)+_0x528ad0['id']+'\x20'+_0x5d0772+_0x1c9e93(0x96));}assertVerified(_0x1362e1[_0x1c9e93(0xa0)]===_0x4a4f3b,_0x1c9e93(0xb8)+_0x528ad0['id']+_0x1c9e93(0xda));}function updateSuccess(_0x4a14f7,_0x429193,_0x3643df,_0x4cc1ce,_0x1518e6){const _0x4d8479=a113_0x3fbd8b,_0x2f1017=_0x3643df['id'],_0x4abdd3=mutationResult({..._0x4a14f7,'after':_0x3643df,'dryRun':![],'succeeded':[{'id':_0x2f1017,'updated':!_0x4cc1ce,'skipped':_0x4cc1ce,'recovered':_0x1518e6}],'verification':{'checkedBy':_0x4d8479(0x94),'snapshotHash':_0x429193['hash'],'targetId':_0x2f1017,'matchesRequestedState':!![],'recovered':_0x1518e6}});return{'ok':!![],'message':_0x1518e6?_0x4d8479(0xde)+_0x2f1017+'.':_0x4cc1ce?'Menu\x20'+_0x2f1017+_0x4d8479(0xa8):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x2f1017+'.','data':{..._0x4abdd3,'recovered':_0x1518e6}};}async function recoverAfterResponseLoss(_0x112894,_0x24fc09){const _0x282989=a113_0x3fbd8b,{plan:_0x4414c0,before:_0x13fcad,body:_0x28ab02}=_0x24fc09;let _0x5c4586;try{_0x5c4586=await fetchMenuSnapshot(_0x112894[_0x282989(0xce)],_0x112894[_0x282989(0xcf)]);}catch{throw recoveryRequired(_0x4414c0,_0x112894[_0x282989(0xce)],{'id':_0x28ab02['id'],'readbackFailed':!![]});}const _0x5e3c7a=_0x5c4586[_0x282989(0xac)]['get'](_0x28ab02['id']);if(!_0x5e3c7a||_0x5e3c7a[_0x282989(0xa0)]!==_0x28ab02[_0x282989(0xa0)])throw recoveryRequired(_0x4414c0,_0x112894[_0x282989(0xce)],{'id':_0x28ab02['id'],'requestedUrlObserved':![],'after':_0x5e3c7a??null});try{verifyUpdatedFact(_0x13fcad,_0x5e3c7a,_0x28ab02[_0x282989(0xa0)]);}catch(_0xf76a5b){const _0x171959=asVerificationError(_0xf76a5b,_0x282989(0xa7)+_0x28ab02['id']+_0x282989(0x9d));throw menuFailure(_0x171959,_0x4414c0,{'stage':'update-recovery','succeeded':[{'id':_0x28ab02['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x28ab02['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x5e3c7a,'warnings':[_0x282989(0xc1)],'verification':{'status':'failed','targetId':_0x28ab02['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x112894[_0x282989(0xce)])}});}return updateSuccess(_0x4414c0,_0x5c4586,_0x5e3c7a,![],!![]);}function recoveryRequired(_0x4872c7,_0x37b370,_0x26f992){const _0x137fa0=a113_0x3fbd8b,_0x4bf3be=menuError(_0x137fa0(0xdb),_0x137fa0(0xa9),'Run\x20'+buildLookupCommand(_0x37b370)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x4bf3be,_0x4872c7,{'stage':_0x137fa0(0xc3),'failed':{'id':_0x26f992['id'],..._0x26f992[_0x137fa0(0x98)]===undefined?{}:{'requestedUrlObserved':_0x26f992['requestedUrlObserved']},..._0x26f992[_0x137fa0(0xb5)]?{'readbackFailed':!![]}:{}},'after':_0x26f992[_0x137fa0(0xb4)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x137fa0(0xcb),'targetId':_0x26f992['id'],..._0x26f992[_0x137fa0(0x98)]===undefined?{}:{'requestedUrlObserved':_0x26f992[_0x137fa0(0x98)]},..._0x26f992[_0x137fa0(0xb5)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x37b370)}});}function buildLookupCommand(_0x1a2bd1){const _0x1aaf87=a113_0x3fbd8b,_0x261579='\x27'+_0x1a2bd1['replace'](/'/g,_0x1aaf87(0xbc))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x261579+_0x1aaf87(0xb1);}
|
|
1
|
+
const a113_0x12ddee=a113_0x22b9;(function(_0x1ff847,_0x4012ff){const _0x2cd48a=a113_0x22b9,_0x5949c5=_0x1ff847();while(!![]){try{const _0x28bd81=parseInt(_0x2cd48a(0x14d))/0x1+-parseInt(_0x2cd48a(0x131))/0x2+parseInt(_0x2cd48a(0x118))/0x3*(-parseInt(_0x2cd48a(0x152))/0x4)+-parseInt(_0x2cd48a(0x159))/0x5+parseInt(_0x2cd48a(0x157))/0x6*(-parseInt(_0x2cd48a(0x11e))/0x7)+-parseInt(_0x2cd48a(0x125))/0x8+parseInt(_0x2cd48a(0x132))/0x9;if(_0x28bd81===_0x4012ff)break;else _0x5949c5['push'](_0x5949c5['shift']());}catch(_0x2be05e){_0x5949c5['push'](_0x5949c5['shift']());}}}(a113_0x3e00,0x76f39));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a113_0x12ddee(0x121),'path':a113_0x12ddee(0x138)}];export const menuExternalLinkUpdate={'service':a113_0x12ddee(0x12f),'command':a113_0x12ddee(0x156),'description':a113_0x12ddee(0x148),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a113_0x12ddee(0x130),'type':a113_0x12ddee(0x12e),'required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a113_0x12ddee(0x145),'type':'string','required':!![],'description':a113_0x12ddee(0x13b)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x13702c){validateInput(_0x13702c);},async 'dryRun'(_0x499480){const _0x2bb843=a113_0x12ddee;validateInput(_0x499480);const _0x413bff=await buildPlan(_0x499480,!![]);return menuDryRunResult(_0x413bff[_0x2bb843(0x13a)],{'method':_0x2bb843(0x121),'url':_0x2bb843(0x138),'body':_0x413bff[_0x2bb843(0x119)],'description':_0x2bb843(0x144)+_0x413bff['body']['id']+'.'});},async 'execute'(_0x382408){const _0x3da156=a113_0x12ddee;validateInput(_0x382408);const _0x1b8802=await buildPlan(_0x382408,![]),{plan:_0x5b2e0c,body:_0x1fc9de,before:_0xecd80a,noChanges:_0x37ba50}=_0x1b8802,_0x51afde=_0x1fc9de['id'];if(_0x37ba50)return updateSuccess(_0x5b2e0c,_0x1b8802[_0x3da156(0x14c)],_0xecd80a,!![],![]);await recheckMutationSnapshot(_0x382408,_0x5b2e0c,'update\x20external\x20menu\x20URL',_0x51afde);try{await updateMenuEntity(_0x382408[_0x3da156(0x12a)],_0x382408[_0x3da156(0x120)],{'id':_0x1fc9de['id'],'url':_0x1fc9de[_0x3da156(0x130)]});}catch(_0x1877fc){const _0xcc9584=mapMenuApiError(_0x1877fc,_0x3da156(0x11b),_0x51afde);if(isMenuResponseLoss(_0x1877fc)&&_0xcc9584[_0x3da156(0x129)]!==_0x3da156(0x122))return recoverAfterResponseLoss(_0x382408,_0x1b8802);throw menuFailure(_0xcc9584,_0x5b2e0c,{'stage':_0x3da156(0x128),'failed':{'id':_0x51afde},'warnings':[_0x3da156(0x146)],'verification':{'status':'failed','targetId':_0x51afde,'lookupCommand':buildLookupCommand(_0x382408['appCode'])}});}let _0x25c3fb,_0x520123;try{_0x25c3fb=await fetchMenuSnapshot(_0x382408[_0x3da156(0x12a)],_0x382408[_0x3da156(0x120)]),_0x520123=requireMenu(_0x25c3fb,_0x51afde),verifyUpdatedFact(_0xecd80a,_0x520123,_0x1fc9de[_0x3da156(0x130)]);}catch(_0x59963f){const _0x1ae810=describeMenuErrorCause(_0x59963f,_0x3da156(0x141),_0x51afde),_0x2714e0=asVerificationError(_0x59963f,'Update\x20request\x20for\x20menu\x20'+_0x51afde+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x2714e0,_0x5b2e0c,{'stage':_0x3da156(0x15a),'succeeded':[{'id':_0x51afde,'updateRequested':!![]}],'failed':{'id':_0x51afde,'requestedStateConfirmed':![],..._0x1ae810},'warnings':[_0x3da156(0x142)],'verification':{'status':_0x3da156(0x139),'targetId':_0x51afde,'lookupCommand':buildLookupCommand(_0x382408[_0x3da156(0x12a)])}});}return updateSuccess(_0x5b2e0c,_0x25c3fb,_0x520123,![],![]);}};function validateInput(_0x4df0bf){const _0x3e0f05=a113_0x12ddee;validateExactId(_0x4df0bf),requiredUrl(_0x4df0bf,_0x3e0f05(0x130)),requiredExpectedUrl(_0x4df0bf),parseParentId(_0x4df0bf,_0x3e0f05(0x13e),{'required':!![]});}function a113_0x22b9(_0x367c87,_0x1c0f19){_0x367c87=_0x367c87-0x112;const _0x3e00f3=a113_0x3e00();let _0x22b967=_0x3e00f3[_0x367c87];return _0x22b967;}function requiredUrl(_0x25398f,_0x5e2f8a){const _0x5014d9=a113_0x12ddee;if(!hasFlag(_0x25398f,_0x5e2f8a)||!_0x25398f[_0x5014d9(0x14b)](_0x5e2f8a)[_0x5014d9(0x151)]())throw CliErrors['flagMissing'](_0x5e2f8a);return validateExternalMenuUrl(_0x25398f['str'](_0x5e2f8a));}function requiredExpectedUrl(_0x11ee7b){const _0x444b7d=a113_0x12ddee;if(!hasFlag(_0x11ee7b,_0x444b7d(0x145))||!_0x11ee7b[_0x444b7d(0x14b)](_0x444b7d(0x145))[_0x444b7d(0x151)]())throw CliErrors[_0x444b7d(0x136)](_0x444b7d(0x145));return _0x11ee7b[_0x444b7d(0x14b)](_0x444b7d(0x145))[_0x444b7d(0x151)]();}async function buildPlan(_0x5487be,_0x4aa3a4){const _0x49e480=a113_0x12ddee,_0x85daf7=validateExactId(_0x5487be),_0x50aa1a=requiredUrl(_0x5487be,_0x49e480(0x130)),_0x15355c=requiredExpectedUrl(_0x5487be),_0x2ca024=parseParentId(_0x5487be,_0x49e480(0x13e),{'required':!![]}),_0x507eab=await fetchMutationSnapshot(_0x5487be,'update\x20external\x20menu\x20URL',_0x85daf7),_0x4ad5e2=requireMenu(_0x507eab,_0x85daf7);assertExternalLinkLeaf(_0x4ad5e2);if(_0x4ad5e2[_0x49e480(0x147)]!==_0x2ca024)throw menuError(_0x49e480(0x123),_0x49e480(0x112)+_0x85daf7+_0x49e480(0x155)+formatParent(_0x2ca024)+',\x20current\x20'+formatParent(_0x4ad5e2[_0x49e480(0x147)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x458458=_0x4ad5e2[_0x49e480(0x130)]===_0x50aa1a;if(!_0x458458&&_0x4ad5e2[_0x49e480(0x130)]!==_0x15355c)throw menuError(_0x49e480(0x123),_0x49e480(0x112)+_0x85daf7+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x2a5a39={'id':_0x85daf7,'appCode':_0x5487be['appCode'],'url':_0x50aa1a},_0x3eca07={..._0x4ad5e2,'url':_0x50aa1a};return{'body':_0x2a5a39,'before':_0x4ad5e2,'noChanges':_0x458458,'snapshot':_0x507eab,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x85daf7},'before':_0x4ad5e2,'after':_0x3eca07,'dryRun':_0x4aa3a4,'backend':[...BACKEND],'plannedActions':_0x458458?[]:[{'stage':_0x49e480(0x143),'method':_0x49e480(0x121),'path':_0x49e480(0x138),'body':_0x2a5a39}],'snapshotHash':_0x507eab[_0x49e480(0x135)],'warnings':_0x458458?[_0x49e480(0x14f)]:[]})};}function assertExternalLinkLeaf(_0x36557a){const _0x5666eb=a113_0x12ddee;if(_0x36557a[_0x5666eb(0x11d)]!==_0x5666eb(0x13c)&&_0x36557a['type']!==_0x5666eb(0x113))throw menuError(_0x5666eb(0x13d),_0x5666eb(0x112)+_0x36557a['id']+'\x20is\x20type\x20\x22'+(_0x36557a[_0x5666eb(0x11d)]||'unknown')+_0x5666eb(0x127),'Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x36557a[_0x5666eb(0x11f)]!==0x0)throw menuError(_0x5666eb(0x11c),'Menu\x20'+_0x36557a['id']+_0x5666eb(0x126)+_0x36557a['childrenCount']+'\x20direct\x20child\x20menu(s).',_0x5666eb(0x150));if(!_0x36557a[_0x5666eb(0x149)][_0x5666eb(0x151)]())throw menuError('menu_external_link_path_missing',_0x5666eb(0x112)+_0x36557a['id']+'\x20has\x20an\x20empty\x20platform\x20path.','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x5100a5,_0x104d84,_0x2faf15){const _0x52e1fd=a113_0x12ddee;assertExternalLinkLeaf(_0x104d84);const _0x49333e=[['id',_0x104d84['id'],_0x5100a5['id']],[_0x52e1fd(0x117),_0x104d84[_0x52e1fd(0x117)],_0x5100a5[_0x52e1fd(0x117)]],['type',_0x104d84[_0x52e1fd(0x11d)],_0x5100a5[_0x52e1fd(0x11d)]],['path',_0x104d84[_0x52e1fd(0x149)],_0x5100a5[_0x52e1fd(0x149)]],[_0x52e1fd(0x147),_0x104d84['parentId'],_0x5100a5[_0x52e1fd(0x147)]],['sort',_0x104d84[_0x52e1fd(0x115)],_0x5100a5[_0x52e1fd(0x115)]],['visible',_0x104d84[_0x52e1fd(0x137)],_0x5100a5[_0x52e1fd(0x137)]]];for(const [_0x1fa492,_0x825bd5,_0x532eaf]of _0x49333e){assertVerified(_0x825bd5===_0x532eaf,'Menu\x20'+_0x5100a5['id']+'\x20'+_0x1fa492+_0x52e1fd(0x114));}assertVerified(_0x104d84[_0x52e1fd(0x130)]===_0x2faf15,_0x52e1fd(0x112)+_0x5100a5['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x2eca4b,_0x53d9b7,_0x1f5f3f,_0x767af5,_0x4d3dcb){const _0x289971=a113_0x12ddee,_0x12b15c=_0x1f5f3f['id'],_0x4e51ef=mutationResult({..._0x2eca4b,'after':_0x1f5f3f,'dryRun':![],'succeeded':[{'id':_0x12b15c,'updated':!_0x767af5,'skipped':_0x767af5,'recovered':_0x4d3dcb}],'verification':{'checkedBy':_0x289971(0x14a),'snapshotHash':_0x53d9b7[_0x289971(0x135)],'targetId':_0x12b15c,'matchesRequestedState':!![],'recovered':_0x4d3dcb}});return{'ok':!![],'message':_0x4d3dcb?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x12b15c+'.':_0x767af5?'Menu\x20'+_0x12b15c+_0x289971(0x124):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x12b15c+'.','data':{..._0x4e51ef,'recovered':_0x4d3dcb}};}async function recoverAfterResponseLoss(_0x3bc07e,_0x400225){const _0xa9872c=a113_0x12ddee,{plan:_0x407f9c,before:_0x4a202f,body:_0x536313}=_0x400225;let _0x1aab84;try{_0x1aab84=await fetchMenuSnapshot(_0x3bc07e[_0xa9872c(0x12a)],_0x3bc07e['cookie']);}catch{throw recoveryRequired(_0x407f9c,_0x3bc07e[_0xa9872c(0x12a)],{'id':_0x536313['id'],'readbackFailed':!![]});}const _0x1081f0=_0x1aab84[_0xa9872c(0x158)][_0xa9872c(0x140)](_0x536313['id']);if(!_0x1081f0||_0x1081f0[_0xa9872c(0x130)]!==_0x536313[_0xa9872c(0x130)])throw recoveryRequired(_0x407f9c,_0x3bc07e[_0xa9872c(0x12a)],{'id':_0x536313['id'],'requestedUrlObserved':![],'after':_0x1081f0??null});try{verifyUpdatedFact(_0x4a202f,_0x1081f0,_0x536313['url']);}catch(_0x51de54){const _0x269779=asVerificationError(_0x51de54,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x536313['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x269779,_0x407f9c,{'stage':_0xa9872c(0x11a),'succeeded':[{'id':_0x536313['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x536313['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x1081f0,'warnings':[_0xa9872c(0x133)],'verification':{'status':'failed','targetId':_0x536313['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x3bc07e[_0xa9872c(0x12a)])}});}return updateSuccess(_0x407f9c,_0x1aab84,_0x1081f0,![],!![]);}function recoveryRequired(_0x1246b0,_0x3203ac,_0x4715c0){const _0x43070c=a113_0x12ddee,_0x2912bf=menuError(_0x43070c(0x153),_0x43070c(0x134),_0x43070c(0x12b)+buildLookupCommand(_0x3203ac)+_0x43070c(0x14e));return menuFailure(_0x2912bf,_0x1246b0,{'stage':_0x43070c(0x11a),'failed':{'id':_0x4715c0['id'],..._0x4715c0[_0x43070c(0x116)]===undefined?{}:{'requestedUrlObserved':_0x4715c0[_0x43070c(0x116)]},..._0x4715c0[_0x43070c(0x12c)]?{'readbackFailed':!![]}:{}},'after':_0x4715c0[_0x43070c(0x154)],'warnings':[_0x43070c(0x12d)],'verification':{'status':'failed','targetId':_0x4715c0['id'],..._0x4715c0['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x4715c0[_0x43070c(0x116)]},..._0x4715c0[_0x43070c(0x12c)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x3203ac)}});}function buildLookupCommand(_0x185990){const _0x35d300=a113_0x12ddee,_0x3fc136='\x27'+_0x185990['replace'](/'/g,'\x27\x5c\x27\x27')+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x3fc136+_0x35d300(0x13f);}function a113_0x3e00(){const _0x16e432=['url','1020814hHrLVz','21046635bkSUMO','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','hash','flagMissing','visible','/smartapi/menu/update','failed','plan','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','iframe','menu_external_link_type_required','expect-parent-id','\x20--format\x20compress','get','verify\x20external\x20menu\x20URL\x20update','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','update-external-link-url','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','expect-url','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','parentId','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','path','menu\x20list','str','snapshot','572398pjBLnx','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','trim','4VBcKGJ','menu_update_recovery_required','after','\x20parent\x20changed:\x20expected\x20','external-link-update','204lKVnGY','byId','2980545ZAQlhe','verification','Menu\x20','link','\x20changed\x20during\x20the\x20URL-only\x20update.','sort','requestedUrlObserved','label','1281129OnYCjB','body','update-recovery','update\x20external\x20menu\x20URL','menu_external_link_not_leaf','type','143885anLoIx','childrenCount','cookie','POST','menu_permission_denied','menu_state_drift','\x20already\x20matches\x20the\x20requested\x20URL.','1530072aMnxMc','\x20has\x20','\x22,\x20not\x20iframe\x20or\x20link.','update','code','appCode','Run\x20','readbackFailed','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','string','menu'];a113_0x3e00=function(){return _0x16e432;};return a113_0x3e00();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a114_0x5dcd7f=a114_0x4794;(function(_0x5c0297,_0x5cac01){const _0x36ca62=a114_0x4794,_0x5bcb23=_0x5c0297();while(!![]){try{const _0x46b210=-parseInt(_0x36ca62(0x1e1))/0x1+-parseInt(_0x36ca62(0x1e5))/0x2*(-parseInt(_0x36ca62(0x200))/0x3)+-parseInt(_0x36ca62(0x214))/0x4*(-parseInt(_0x36ca62(0x20b))/0x5)+parseInt(_0x36ca62(0x1e8))/0x6+parseInt(_0x36ca62(0x1f9))/0x7*(parseInt(_0x36ca62(0x202))/0x8)+-parseInt(_0x36ca62(0x1fa))/0x9*(-parseInt(_0x36ca62(0x1f7))/0xa)+parseInt(_0x36ca62(0x1ed))/0xb*(-parseInt(_0x36ca62(0x20d))/0xc);if(_0x46b210===_0x5cac01)break;else _0x5bcb23['push'](_0x5bcb23['shift']());}catch(_0xec33e1){_0x5bcb23['push'](_0x5bcb23['shift']());}}}(a114_0x57f1,0x778a3));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a114_0x57f1(){const _0x2f1cd9=['menu','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','type','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','530272nOCXRI','length','parentId','verification','76sWDcxu','Created\x20menu\x20','sort','3884052lxFBlC','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','visible','create','\x20is\x20missing\x20from\x20menu\x20list.','179993RFitcH','Folder\x20','\x20has\x20an\x20unexpected\x20sort.','create\x20folder','pageId','childrenCount','group-create','/smartapi/menu/create','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','parent-id','906820NffZhT','folder','21196vFSTMb','54QdPpgj','\x20may\x20exist\x20online\x20at\x20path\x20','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','str','\x20is\x20not\x20visible.','cookie','22029JIFgeZ','path','1088zAEEPW','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','rabetbase\x20menu\x20list\x20--format\x20json','resources','root','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','flagMissing','write','5825CBYdBm','hash','1116YcWeol','menu\x20list','Created\x20folder\x20','trim','string','Folder\x20label','label','2264KdkdxJ','menu_create_response_invalid','Created\x20menu\x20folder\x20','create-response-validation','create-folder','\x20is\x20not\x20type\x20folder.','depth','failed','get','\x20unexpectedly\x20owns\x20a\x20page.','after','POST','Would\x20create\x20empty\x20folder\x20\x22','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','verify\x20folder\x20creation'];a114_0x57f1=function(){return _0x2f1cd9;};return a114_0x57f1();}import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a114_0x5dcd7f(0x21f),'path':a114_0x5dcd7f(0x1f4)}];export const menuGroupCreate={'service':a114_0x5dcd7f(0x223),'command':'group-create','description':a114_0x5dcd7f(0x1e9),'risk':a114_0x5dcd7f(0x20a),'structuredErrors':!![],'flags':[{'name':a114_0x5dcd7f(0x213),'type':a114_0x5dcd7f(0x211),'required':!![],'description':a114_0x5dcd7f(0x212)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x38a381){validateCreateInput(_0x38a381);},async 'dryRun'(_0x49f08b){const _0x3e101e=a114_0x5dcd7f,_0x486b47=await buildCreatePlan(_0x49f08b,!![]),_0x2b491e=_0x486b47['after'];return menuDryRunResult(_0x486b47,{'method':_0x3e101e(0x21f),'url':_0x3e101e(0x1f4),'body':{'parentId':toApiParentId(_0x2b491e[_0x3e101e(0x1e3)]),'label':_0x2b491e[_0x3e101e(0x213)],'type':_0x3e101e(0x1f8),'visible':!![],'sort':_0x2b491e[_0x3e101e(0x1e7)],'extend':{}},'description':_0x3e101e(0x220)+String(_0x2b491e[_0x3e101e(0x213)])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x5f0f8a){const _0x403362=a114_0x5dcd7f;validateCreateInput(_0x5f0f8a);const _0x31f103=await buildCreatePlan(_0x5f0f8a,![]),_0x5ba765=_0x31f103[_0x403362(0x21e)];await recheckMutationSnapshot(_0x5f0f8a,_0x31f103,_0x403362(0x1f0));let _0x15b81c;try{_0x15b81c=await createMenuEntity(_0x5f0f8a['appCode'],_0x5f0f8a[_0x403362(0x1ff)],{'parentId':toApiParentId(_0x5ba765[_0x403362(0x1e3)]),'label':String(_0x5ba765[_0x403362(0x213)]),'type':_0x403362(0x1f8),'visible':!![],'sort':Number(_0x5ba765[_0x403362(0x1e7)]),'extend':{}});}catch(_0x3095ea){const _0x42c918=mapMenuApiError(_0x3095ea,_0x403362(0x1f0));throw menuFailure(_0x42c918,_0x31f103,{'stage':_0x403362(0x1eb),'failed':{}});}const _0x55210b=Number(_0x15b81c['id']);if(!Number['isSafeInteger'](_0x55210b)||_0x55210b<=0x0){const _0x88e509=menuError(_0x403362(0x215),_0x403362(0x1fc),_0x403362(0x1de));throw menuFailure(_0x88e509,_0x31f103,{'stage':_0x403362(0x217),'failed':{'createdId':_0x15b81c['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':_0x403362(0x21b),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0x2e36a4=typeof _0x15b81c[_0x403362(0x201)]===_0x403362(0x211)?_0x15b81c[_0x403362(0x201)]:'';if(!_0x2e36a4[_0x403362(0x210)]()){const _0x13929e=menuError(_0x403362(0x215),'Menu\x20create\x20response\x20for\x20folder\x20'+_0x55210b+_0x403362(0x207),_0x403362(0x1dd));throw menuFailure(_0x13929e,_0x31f103,{'stage':_0x403362(0x217),'succeeded':[{'id':_0x55210b,'created':!![]}],'failed':{'id':_0x55210b,'generatedPathConfirmed':![]},'warnings':[_0x403362(0x1ee)+_0x55210b+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x5ba765,'id':_0x55210b,'path':_0x2e36a4},'verification':{'status':'failed','lookupCommand':_0x403362(0x204),'targetId':_0x55210b}});}let _0x5993c0;try{_0x5993c0=await fetchMenuSnapshot(_0x5f0f8a['appCode'],_0x5f0f8a['cookie']);}catch(_0x3d3b98){const _0x487179=describeMenuErrorCause(_0x3d3b98,'verify\x20folder\x20creation',_0x55210b),_0xa16871=asVerificationError(_0x3d3b98,_0x403362(0x1ee)+_0x55210b+'\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts');throw menuFailure(_0xa16871,_0x31f103,{'stage':_0x403362(0x1e4),'succeeded':[{'id':_0x55210b,'created':!![],'path':_0x2e36a4}],'failed':{'id':_0x55210b,'finalFactsConfirmed':![],..._0x487179},'warnings':[_0x403362(0x1ee)+_0x55210b+_0x403362(0x1fb)+JSON['stringify'](_0x2e36a4)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x5ba765,'id':_0x55210b,'path':_0x2e36a4},'verification':{'status':'failed','lookupCommand':_0x403362(0x204),'targetId':_0x55210b}});}const _0x4ef323=_0x5993c0['byId'][_0x403362(0x21c)](_0x55210b);let _0x2a6e2e;try{assertVerified(Boolean(_0x4ef323),_0x403362(0x20f)+_0x55210b+_0x403362(0x1ec)),_0x2a6e2e=_0x4ef323,assertVerified(_0x2a6e2e[_0x403362(0x1df)]===_0x403362(0x1f8),_0x403362(0x1e6)+_0x55210b+_0x403362(0x219)),assertVerified(_0x2a6e2e['label']===_0x5ba765[_0x403362(0x213)],_0x403362(0x20f)+_0x55210b+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x2a6e2e[_0x403362(0x201)]===_0x2e36a4&&Boolean(_0x2a6e2e['path'][_0x403362(0x210)]()),_0x403362(0x20f)+_0x55210b+_0x403362(0x1e0)),assertVerified(_0x2a6e2e[_0x403362(0x1ea)]===!![],_0x403362(0x20f)+_0x55210b+_0x403362(0x1fe)),assertVerified(_0x2a6e2e[_0x403362(0x205)][_0x403362(0x1e2)]===0x0,_0x403362(0x20f)+_0x55210b+'\x20has\x20resources.'),assertVerified(_0x2a6e2e[_0x403362(0x1f2)]===0x0,_0x403362(0x20f)+_0x55210b+'\x20is\x20not\x20empty.'),assertVerified(_0x2a6e2e['sort']===_0x5ba765[_0x403362(0x1e7)],_0x403362(0x20f)+_0x55210b+_0x403362(0x1ef)),assertVerified(_0x2a6e2e['parentId']===_0x5ba765['parentId'],_0x403362(0x20f)+_0x55210b+'\x20has\x20unexpected\x20parent\x20'+(_0x2a6e2e[_0x403362(0x1e3)]??_0x403362(0x206))+'.'),assertVerified(_0x2a6e2e[_0x403362(0x1f1)]==null,_0x403362(0x20f)+_0x55210b+_0x403362(0x21d));const _0x3bc938=_0x2a6e2e[_0x403362(0x1e3)]==null?undefined:requireFolder(_0x5993c0,_0x2a6e2e['parentId']);assertVerified(_0x2a6e2e[_0x403362(0x21a)]===(_0x3bc938?_0x3bc938[_0x403362(0x21a)]+0x1:0x0),_0x403362(0x20f)+_0x55210b+_0x403362(0x221));}catch(_0x18ad83){const _0x14ed33=describeMenuErrorCause(_0x18ad83,_0x403362(0x222),_0x55210b),_0x124112=asVerificationError(_0x18ad83,_0x403362(0x1ee)+_0x55210b+_0x403362(0x208));throw menuFailure(_0x124112,_0x31f103,{'stage':_0x403362(0x1e4),'succeeded':[{'id':_0x55210b,'created':!![],'path':_0x2e36a4}],'failed':{'id':_0x55210b,'finalFactsConfirmed':![],..._0x14ed33},'warnings':['Folder\x20'+_0x55210b+_0x403362(0x203)],'after':_0x4ef323??{..._0x5ba765,'id':_0x55210b,'path':_0x2e36a4},'verification':{'status':'failed','lookupCommand':_0x403362(0x204),'targetId':_0x55210b}});}const _0x4ff727=mutationResult({..._0x31f103,'after':_0x2a6e2e,'dryRun':![],'succeeded':[{'id':_0x55210b,'type':'folder','path':_0x2e36a4}],'verification':{'checkedBy':_0x403362(0x20e),'snapshotHash':_0x5993c0[_0x403362(0x20c)],'folder':!![],'path':_0x2e36a4,'emptyResources':!![]}});return{'ok':!![],'data':_0x4ff727,'message':_0x403362(0x216)+_0x55210b+'.'};}};function a114_0x4794(_0x45b58b,_0x4a6cf5){_0x45b58b=_0x45b58b-0x1dd;const _0x57f1b3=a114_0x57f1();let _0x479498=_0x57f1b3[_0x45b58b];return _0x479498;}function validateCreateInput(_0x24701d){const _0x403aca=a114_0x5dcd7f,_0x523619=_0x24701d[_0x403aca(0x1fd)](_0x403aca(0x213))[_0x403aca(0x210)]();if(!_0x523619)throw CliErrors[_0x403aca(0x209)](_0x403aca(0x213));parseParentId(_0x24701d,_0x403aca(0x1f6)),validateSort(_0x24701d);}async function buildCreatePlan(_0x196da9,_0x404992){const _0x127164=a114_0x5dcd7f,_0x1950d2=await fetchMutationSnapshot(_0x196da9,_0x127164(0x1f0)),_0x532298=parseParentId(_0x196da9,_0x127164(0x1f6))??null;if(_0x532298!=null)requireFolder(_0x1950d2,_0x532298);const _0x1148f0=validateSort(_0x196da9),_0x2cdc69=_0x1148f0??nextSiblingSort(_0x1950d2,_0x532298,'folder'),_0xd3213d=_0x196da9['str'](_0x127164(0x213))[_0x127164(0x210)]();return mutationResult({'operation':_0x127164(0x1f3),'selector':{'label':_0xd3213d,'parentId':_0x532298},'before':null,'after':{'id':null,'parentId':_0x532298,'label':_0xd3213d,'path':'<platform-generated>','type':_0x127164(0x1f8),'visible':!![],'sort':_0x2cdc69,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x404992,'backend':[...BACKEND],'plannedActions':[{'stage':_0x127164(0x218),'method':_0x127164(0x21f),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x532298),'label':_0xd3213d,'type':'folder','visible':!![],'sort':_0x2cdc69,'extend':{}}}],'snapshotHash':_0x1950d2[_0x127164(0x20c)],'warnings':[_0x127164(0x1f5)]});}
|
|
1
|
+
const a114_0x38c12f=a114_0x4d78;(function(_0x24e7ff,_0x2f0ebb){const _0x3e8a70=a114_0x4d78,_0x3dcc49=_0x24e7ff();while(!![]){try{const _0x400a53=parseInt(_0x3e8a70(0x160))/0x1+-parseInt(_0x3e8a70(0x131))/0x2+-parseInt(_0x3e8a70(0x168))/0x3*(parseInt(_0x3e8a70(0x144))/0x4)+-parseInt(_0x3e8a70(0x164))/0x5*(-parseInt(_0x3e8a70(0x14c))/0x6)+-parseInt(_0x3e8a70(0x133))/0x7*(-parseInt(_0x3e8a70(0x14a))/0x8)+parseInt(_0x3e8a70(0x143))/0x9+-parseInt(_0x3e8a70(0x15d))/0xa*(-parseInt(_0x3e8a70(0x158))/0xb);if(_0x400a53===_0x2f0ebb)break;else _0x3dcc49['push'](_0x3dcc49['shift']());}catch(_0x2ecf52){_0x3dcc49['push'](_0x3dcc49['shift']());}}}(a114_0x2431,0x39c1f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';function a114_0x4d78(_0x493f1e,_0xc32a69){_0x493f1e=_0x493f1e-0x12d;const _0x24315e=a114_0x2431();let _0x4d784f=_0x24315e[_0x493f1e];return _0x4d784f;}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a114_0x38c12f(0x167),'path':a114_0x38c12f(0x16c)}];export const menuGroupCreate={'service':'menu','command':a114_0x38c12f(0x142),'description':'Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','risk':'write','structuredErrors':!![],'flags':[{'name':a114_0x38c12f(0x140),'type':a114_0x38c12f(0x169),'required':!![],'description':a114_0x38c12f(0x13b)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x17b504){validateCreateInput(_0x17b504);},async 'dryRun'(_0x3aa57d){const _0x38df5f=a114_0x38c12f,_0x119eaa=await buildCreatePlan(_0x3aa57d,!![]),_0x137c1f=_0x119eaa['after'];return menuDryRunResult(_0x119eaa,{'method':_0x38df5f(0x167),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x137c1f[_0x38df5f(0x150)]),'label':_0x137c1f[_0x38df5f(0x140)],'type':_0x38df5f(0x136),'visible':!![],'sort':_0x137c1f[_0x38df5f(0x161)],'extend':{}},'description':_0x38df5f(0x159)+String(_0x137c1f[_0x38df5f(0x140)])+_0x38df5f(0x162)});},async 'execute'(_0x2da3fc){const _0x5cb090=a114_0x38c12f;validateCreateInput(_0x2da3fc);const _0x3228ff=await buildCreatePlan(_0x2da3fc,![]),_0x421a23=_0x3228ff[_0x5cb090(0x12e)];await recheckMutationSnapshot(_0x2da3fc,_0x3228ff,_0x5cb090(0x139));let _0x241f9f;try{_0x241f9f=await createMenuEntity(_0x2da3fc[_0x5cb090(0x14b)],_0x2da3fc[_0x5cb090(0x15b)],{'parentId':toApiParentId(_0x421a23[_0x5cb090(0x150)]),'label':String(_0x421a23['label']),'type':_0x5cb090(0x136),'visible':!![],'sort':Number(_0x421a23[_0x5cb090(0x161)]),'extend':{}});}catch(_0x4e2178){const _0xdbb51b=mapMenuApiError(_0x4e2178,_0x5cb090(0x139));throw menuFailure(_0xdbb51b,_0x3228ff,{'stage':'create','failed':{}});}const _0x596dd9=Number(_0x241f9f['id']);if(!Number[_0x5cb090(0x15c)](_0x596dd9)||_0x596dd9<=0x0){const _0x4afc5d=menuError(_0x5cb090(0x152),_0x5cb090(0x13e),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.');throw menuFailure(_0x4afc5d,_0x3228ff,{'stage':_0x5cb090(0x149),'failed':{'createdId':_0x241f9f['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':_0x5cb090(0x13c),'lookupCommand':_0x5cb090(0x16a)}});}const _0x1423ae=typeof _0x241f9f[_0x5cb090(0x13f)]==='string'?_0x241f9f[_0x5cb090(0x13f)]:'';if(!_0x1423ae[_0x5cb090(0x157)]()){const _0x198bcf=menuError('menu_create_response_invalid',_0x5cb090(0x156)+_0x596dd9+_0x5cb090(0x132),_0x5cb090(0x135));throw menuFailure(_0x198bcf,_0x3228ff,{'stage':_0x5cb090(0x149),'succeeded':[{'id':_0x596dd9,'created':!![]}],'failed':{'id':_0x596dd9,'generatedPathConfirmed':![]},'warnings':[_0x5cb090(0x151)+_0x596dd9+_0x5cb090(0x16b)],'after':{..._0x421a23,'id':_0x596dd9,'path':_0x1423ae},'verification':{'status':'failed','lookupCommand':_0x5cb090(0x16a),'targetId':_0x596dd9}});}let _0x19ea04;try{_0x19ea04=await fetchMenuSnapshot(_0x2da3fc[_0x5cb090(0x14b)],_0x2da3fc['cookie']);}catch(_0xee8fbe){const _0x2ea079=describeMenuErrorCause(_0xee8fbe,_0x5cb090(0x16e),_0x596dd9),_0x1708f9=asVerificationError(_0xee8fbe,_0x5cb090(0x151)+_0x596dd9+_0x5cb090(0x137));throw menuFailure(_0x1708f9,_0x3228ff,{'stage':'verification','succeeded':[{'id':_0x596dd9,'created':!![],'path':_0x1423ae}],'failed':{'id':_0x596dd9,'finalFactsConfirmed':![],..._0x2ea079},'warnings':['Folder\x20'+_0x596dd9+_0x5cb090(0x130)+JSON[_0x5cb090(0x146)](_0x1423ae)+_0x5cb090(0x166)],'after':{..._0x421a23,'id':_0x596dd9,'path':_0x1423ae},'verification':{'status':_0x5cb090(0x13c),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x596dd9}});}const _0x485fd4=_0x19ea04[_0x5cb090(0x138)]['get'](_0x596dd9);let _0x578745;try{assertVerified(Boolean(_0x485fd4),_0x5cb090(0x147)+_0x596dd9+_0x5cb090(0x145)),_0x578745=_0x485fd4,assertVerified(_0x578745[_0x5cb090(0x15a)]===_0x5cb090(0x136),_0x5cb090(0x163)+_0x596dd9+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x578745[_0x5cb090(0x140)]===_0x421a23['label'],'Created\x20folder\x20'+_0x596dd9+_0x5cb090(0x13a)),assertVerified(_0x578745['path']===_0x1423ae&&Boolean(_0x578745[_0x5cb090(0x13f)]['trim']()),_0x5cb090(0x147)+_0x596dd9+_0x5cb090(0x12f)),assertVerified(_0x578745['visible']===!![],_0x5cb090(0x147)+_0x596dd9+_0x5cb090(0x141)),assertVerified(_0x578745['resources'][_0x5cb090(0x16f)]===0x0,_0x5cb090(0x147)+_0x596dd9+'\x20has\x20resources.'),assertVerified(_0x578745['childrenCount']===0x0,_0x5cb090(0x147)+_0x596dd9+_0x5cb090(0x15e)),assertVerified(_0x578745[_0x5cb090(0x161)]===_0x421a23[_0x5cb090(0x161)],'Created\x20folder\x20'+_0x596dd9+_0x5cb090(0x155)),assertVerified(_0x578745[_0x5cb090(0x150)]===_0x421a23[_0x5cb090(0x150)],_0x5cb090(0x147)+_0x596dd9+'\x20has\x20unexpected\x20parent\x20'+(_0x578745[_0x5cb090(0x150)]??_0x5cb090(0x15f))+'.'),assertVerified(_0x578745['pageId']==null,_0x5cb090(0x147)+_0x596dd9+_0x5cb090(0x134));const _0x2e48a9=_0x578745['parentId']==null?undefined:requireFolder(_0x19ea04,_0x578745['parentId']);assertVerified(_0x578745[_0x5cb090(0x14d)]===(_0x2e48a9?_0x2e48a9[_0x5cb090(0x14d)]+0x1:0x0),_0x5cb090(0x147)+_0x596dd9+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x156915){const _0x4009e4=describeMenuErrorCause(_0x156915,_0x5cb090(0x16e),_0x596dd9),_0xa41a35=asVerificationError(_0x156915,'Folder\x20'+_0x596dd9+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0xa41a35,_0x3228ff,{'stage':'verification','succeeded':[{'id':_0x596dd9,'created':!![],'path':_0x1423ae}],'failed':{'id':_0x596dd9,'finalFactsConfirmed':![],..._0x4009e4},'warnings':[_0x5cb090(0x151)+_0x596dd9+_0x5cb090(0x12d)],'after':_0x485fd4??{..._0x421a23,'id':_0x596dd9,'path':_0x1423ae},'verification':{'status':_0x5cb090(0x13c),'lookupCommand':_0x5cb090(0x16a),'targetId':_0x596dd9}});}const _0x1e1697=mutationResult({..._0x3228ff,'after':_0x578745,'dryRun':![],'succeeded':[{'id':_0x596dd9,'type':_0x5cb090(0x136),'path':_0x1423ae}],'verification':{'checkedBy':_0x5cb090(0x16d),'snapshotHash':_0x19ea04[_0x5cb090(0x165)],'folder':!![],'path':_0x1423ae,'emptyResources':!![]}});return{'ok':!![],'data':_0x1e1697,'message':_0x5cb090(0x148)+_0x596dd9+'.'};}};function validateCreateInput(_0x4f5b71){const _0x407e50=a114_0x38c12f,_0x2fd401=_0x4f5b71[_0x407e50(0x14f)](_0x407e50(0x140))[_0x407e50(0x157)]();if(!_0x2fd401)throw CliErrors[_0x407e50(0x153)](_0x407e50(0x140));parseParentId(_0x4f5b71,_0x407e50(0x154)),validateSort(_0x4f5b71);}async function buildCreatePlan(_0x139cf0,_0x5317c4){const _0x3c964a=a114_0x38c12f,_0x3eb12d=await fetchMutationSnapshot(_0x139cf0,_0x3c964a(0x139)),_0x237a39=parseParentId(_0x139cf0,_0x3c964a(0x154))??null;if(_0x237a39!=null)requireFolder(_0x3eb12d,_0x237a39);const _0x14286b=validateSort(_0x139cf0),_0x586b2f=_0x14286b??nextSiblingSort(_0x3eb12d,_0x237a39,'folder'),_0x4aa3a1=_0x139cf0[_0x3c964a(0x14f)](_0x3c964a(0x140))[_0x3c964a(0x157)]();return mutationResult({'operation':_0x3c964a(0x142),'selector':{'label':_0x4aa3a1,'parentId':_0x237a39},'before':null,'after':{'id':null,'parentId':_0x237a39,'label':_0x4aa3a1,'path':_0x3c964a(0x14e),'type':_0x3c964a(0x136),'visible':!![],'sort':_0x586b2f,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x5317c4,'backend':[...BACKEND],'plannedActions':[{'stage':_0x3c964a(0x13d),'method':'POST','path':_0x3c964a(0x16c),'body':{'parentId':toApiParentId(_0x237a39),'label':_0x4aa3a1,'type':_0x3c964a(0x136),'visible':!![],'sort':_0x586b2f,'extend':{}}}],'snapshotHash':_0x3eb12d['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}function a114_0x2431(){const _0x43f69a=['8RHseAF','appCode','1686XIeaek','depth','<platform-generated>','str','parentId','Folder\x20','menu_create_response_invalid','flagMissing','parent-id','\x20has\x20an\x20unexpected\x20sort.','Menu\x20create\x20response\x20for\x20folder\x20','trim','11xQniJh','Would\x20create\x20empty\x20folder\x20\x22','type','cookie','isSafeInteger','2761790GvqTDt','\x20is\x20not\x20empty.','root','69013tAiSUd','sort','\x22\x20with\x20a\x20platform-generated\x20path.','Created\x20menu\x20','335JHJMWF','hash',';\x20verify\x20it\x20before\x20retrying.','POST','438411NGiuRC','string','rabetbase\x20menu\x20list\x20--format\x20json','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','/smartapi/menu/create','menu\x20list','verify\x20folder\x20creation','length','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','after','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20may\x20exist\x20online\x20at\x20path\x20','498490naFuWh','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','343483thAMTM','\x20unexpectedly\x20owns\x20a\x20page.','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','folder','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','byId','create\x20folder','\x20has\x20an\x20unexpected\x20label.','Folder\x20label','failed','create-folder','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','path','label','\x20is\x20not\x20visible.','group-create','3285054cNEdbb','8SCmDcF','\x20is\x20missing\x20from\x20menu\x20list.','stringify','Created\x20folder\x20','Created\x20menu\x20folder\x20','create-response-validation'];a114_0x2431=function(){return _0x43f69a;};return a114_0x2431();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a115_0x2f76a8=a115_0x48c5;(function(_0x3981b6,_0xd3ce74){const _0xfa531e=a115_0x48c5,_0x506e3c=_0x3981b6();while(!![]){try{const _0x101b0e=-parseInt(_0xfa531e(0x7d))/0x1*(parseInt(_0xfa531e(0x90))/0x2)+-parseInt(_0xfa531e(0x76))/0x3+parseInt(_0xfa531e(0xab))/0x4*(-parseInt(_0xfa531e(0x8d))/0x5)+parseInt(_0xfa531e(0x98))/0x6+parseInt(_0xfa531e(0x89))/0x7*(-parseInt(_0xfa531e(0x9b))/0x8)+-parseInt(_0xfa531e(0x7f))/0x9+parseInt(_0xfa531e(0x9e))/0xa;if(_0x101b0e===_0xd3ce74)break;else _0x506e3c['push'](_0x506e3c['shift']());}catch(_0x5cab73){_0x506e3c['push'](_0x506e3c['shift']());}}}(a115_0x4f67,0x86de4));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';function a115_0x4f67(){const _0x281005=['13367710xQRpin','validation','folder','Menu\x20','sort','rabetbase\x20menu\x20list\x20--format\x20json','cookie','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','\x20is\x20type\x20\x22','\x22,\x20not\x20folder.','parent-id','menu\x20list','appCode','4dIZLlj','1503051YSaJyO','\x20label\x20update\x20did\x20not\x20take\x20effect.','label','\x20sort\x20update\x20did\x20not\x20take\x20effect.','update\x20folder','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','parentId','22918LHGEAZ','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','385749BbhtZZ','/smartapi/menu/update','POST','\x20already\x20matches\x20the\x20requested\x20state.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','selector','Updated\x20folder\x20','unknown','hash','7yCHAHS','Would\x20update\x20folder\x20','\x20is\x20no\x20longer\x20type\x20folder.','failed','2791535BegHiL','Folder\x20','type','4EuUmke','verification','Update\x20request\x20for\x20folder\x20','menu_not_folder','string','group-update','--label\x20cannot\x20be\x20empty.','write','6149574nNwOGF','verify\x20folder\x20update','trim','5290072FhcGSk','menu','str'];a115_0x4f67=function(){return _0x281005;};return a115_0x4f67();}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a115_0x2f76a8(0x80)}];function a115_0x48c5(_0x43e6fe,_0x48055d){_0x43e6fe=_0x43e6fe-0x76;const _0x4f67d6=a115_0x4f67();let _0x48c5a7=_0x4f67d6[_0x43e6fe];return _0x48c5a7;}export const menuGroupUpdate={'service':a115_0x2f76a8(0x9c),'command':a115_0x2f76a8(0x95),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a115_0x2f76a8(0x97),'structuredErrors':!![],'rejectedFlags':[{'name':a115_0x2f76a8(0xa8),'message':a115_0x2f76a8(0x7b),'hint':a115_0x2f76a8(0x84)}],'flags':[MENU_ID_FLAG,{'name':a115_0x2f76a8(0x78),'type':a115_0x2f76a8(0x94),'description':'New\x20folder\x20label'},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x143e24){validateUpdateInput(_0x143e24);},async 'dryRun'(_0xc76949){const _0x298a77=a115_0x2f76a8;validateUpdateInput(_0xc76949);const {plan:_0x561ecb,patch:_0x100647}=await buildUpdatePlan(_0xc76949,!![]);return menuDryRunResult(_0x561ecb,{'method':_0x298a77(0x81),'url':_0x298a77(0x80),'body':_0x100647,'description':_0x298a77(0x8a)+_0x561ecb[_0x298a77(0x85)]['id']+'.'});},async 'execute'(_0x4c614b){const _0x21a6d1=a115_0x2f76a8;validateUpdateInput(_0x4c614b);const {plan:_0x3cb8cf,patch:_0x5525ee,noChanges:_0x1a6107}=await buildUpdatePlan(_0x4c614b,![]),_0x4cffa3=Number(_0x3cb8cf[_0x21a6d1(0x85)]['id']),_0x9bca86=await recheckMutationSnapshot(_0x4c614b,_0x3cb8cf,_0x21a6d1(0x7a),_0x4cffa3);if(!_0x1a6107)try{await updateMenuEntity(_0x4c614b[_0x21a6d1(0xaa)],_0x4c614b[_0x21a6d1(0xa4)],_0x5525ee);}catch(_0x5da324){const _0x125564=mapMenuApiError(_0x5da324,_0x21a6d1(0x7a),_0x4cffa3);throw menuFailure(_0x125564,_0x3cb8cf,{'stage':'update','failed':{'id':_0x4cffa3}});}let _0x2d077b=_0x9bca86,_0x4451c7;try{!_0x1a6107&&(_0x2d077b=await fetchMenuSnapshot(_0x4c614b[_0x21a6d1(0xaa)],_0x4c614b['cookie'])),_0x4451c7=requireMenu(_0x2d077b,_0x4cffa3),verifyPatch(_0x4451c7,_0x5525ee),_0x4451c7[_0x21a6d1(0x7c)]!=null&&requireFolder(_0x2d077b,_0x4451c7[_0x21a6d1(0x7c)]);}catch(_0x401396){const _0x41dfdc=describeMenuErrorCause(_0x401396,_0x21a6d1(0x99),_0x4cffa3),_0x1ffbb9=asVerificationError(_0x401396,_0x21a6d1(0x92)+_0x4cffa3+_0x21a6d1(0x83));throw menuFailure(_0x1ffbb9,_0x3cb8cf,{'stage':_0x21a6d1(0x91),'succeeded':[{'id':_0x4cffa3,'updateRequested':!_0x1a6107,'skipped':_0x1a6107}],'failed':{'id':_0x4cffa3,'requestedStateConfirmed':![],..._0x41dfdc},'warnings':['The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x21a6d1(0x8c),'lookupCommand':_0x21a6d1(0xa3),'targetId':_0x4cffa3}});}const _0xc0bfa6=mutationResult({..._0x3cb8cf,'after':_0x4451c7,'dryRun':![],'succeeded':[{'id':_0x4cffa3,'updated':!_0x1a6107,'skipped':_0x1a6107}],'verification':{'checkedBy':_0x21a6d1(0xa9),'snapshotHash':_0x2d077b[_0x21a6d1(0x88)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0xc0bfa6,'message':_0x1a6107?_0x21a6d1(0x8e)+_0x4cffa3+_0x21a6d1(0x82):_0x21a6d1(0x86)+_0x4cffa3+'.'};}};function validateUpdateInput(_0x42b6f7){const _0xb79441=a115_0x2f76a8;validateExactId(_0x42b6f7);if(hasFlag(_0x42b6f7,'parent-id'))throw CliErrors['validation'](_0xb79441(0x7b),_0xb79441(0x84));if(!hasFlag(_0x42b6f7,'label')&&!hasFlag(_0x42b6f7,_0xb79441(0xa2)))throw CliErrors[_0xb79441(0x9f)](_0xb79441(0xa5));if(hasFlag(_0x42b6f7,_0xb79441(0x78))&&!_0x42b6f7['str']('label')['trim']())throw CliErrors[_0xb79441(0x9f)](_0xb79441(0x96));validateSort(_0x42b6f7);}async function buildUpdatePlan(_0x3a4e4f,_0x382ece){const _0x489233=a115_0x2f76a8,_0x1db60f=validateExactId(_0x3a4e4f),_0xa65522=await fetchMutationSnapshot(_0x3a4e4f,_0x489233(0x7a),_0x1db60f),_0x138e53=requireMenu(_0xa65522,_0x1db60f);if(_0x138e53['type']!==_0x489233(0xa0))throw menuError(_0x489233(0x93),_0x489233(0xa1)+_0x1db60f+_0x489233(0xa6)+(_0x138e53['type']||_0x489233(0x87))+_0x489233(0xa7),_0x489233(0x7e));assertExpectedState(_0x3a4e4f,_0x138e53);const _0x2c0445={'id':_0x1db60f},_0x4f1920={..._0x138e53};if(hasFlag(_0x3a4e4f,'label')){const _0x4c4c51=_0x3a4e4f[_0x489233(0x9d)](_0x489233(0x78))[_0x489233(0x9a)]();_0x2c0445[_0x489233(0x78)]=_0x4c4c51,_0x4f1920[_0x489233(0x78)]=_0x4c4c51;}if(hasFlag(_0x3a4e4f,_0x489233(0xa2))){const _0x1f83fa=validateSort(_0x3a4e4f);_0x2c0445['sort']=_0x1f83fa,_0x4f1920[_0x489233(0xa2)]=_0x1f83fa;}const _0x48a3b4=sameRequestedState(_0x138e53,_0x4f1920),_0x354725=_0x48a3b4?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x2c0445,'noChanges':_0x48a3b4,'plan':mutationResult({'operation':_0x489233(0x95),'selector':{'id':_0x1db60f},'before':_0x138e53,'after':_0x4f1920,'dryRun':_0x382ece,'backend':[...BACKEND],'snapshotHash':_0xa65522['hash'],'warnings':_0x354725})};}function sameRequestedState(_0x2002cc,_0x529943){const _0x250e7e=a115_0x2f76a8;return _0x2002cc[_0x250e7e(0x78)]===_0x529943[_0x250e7e(0x78)]&&_0x2002cc[_0x250e7e(0xa2)]===_0x529943[_0x250e7e(0xa2)];}function verifyPatch(_0x2cacf5,_0xca9387){const _0x584026=a115_0x2f76a8;assertVerified(_0x2cacf5[_0x584026(0x8f)]===_0x584026(0xa0),_0x584026(0xa1)+_0x2cacf5['id']+_0x584026(0x8b)),_0xca9387[_0x584026(0x78)]!==undefined&&assertVerified(_0x2cacf5[_0x584026(0x78)]===_0xca9387['label'],'Folder\x20'+_0x2cacf5['id']+_0x584026(0x77)),_0xca9387[_0x584026(0xa2)]!==undefined&&assertVerified(_0x2cacf5[_0x584026(0xa2)]===_0xca9387['sort'],_0x584026(0x8e)+_0x2cacf5['id']+_0x584026(0x79));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x29df5e,_0x2abc9c){const _0x133436=a116_0x1219,_0xbbb53e=_0x29df5e();while(!![]){try{const _0x225b5d=-parseInt(_0x133436(0x1a9))/0x1+parseInt(_0x133436(0x1a7))/0x2+parseInt(_0x133436(0x1a8))/0x3+parseInt(_0x133436(0x1a3))/0x4*(parseInt(_0x133436(0x1ac))/0x5)+parseInt(_0x133436(0x1a6))/0x6+-parseInt(_0x133436(0x1ab))/0x7*(parseInt(_0x133436(0x1aa))/0x8)+-parseInt(_0x133436(0x1a5))/0x9*(parseInt(_0x133436(0x1a4))/0xa);if(_0x225b5d===_0x2abc9c)break;else _0xbbb53e['push'](_0xbbb53e['shift']());}catch(_0x30a126){_0xbbb53e['push'](_0xbbb53e['shift']());}}}(a116_0xe319,0xd5292));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';function a116_0xe319(){const _0xdacf71=['1803182ZTXTdk','2405646WgQNDi','696571mSjTyq','1566424qwoOzX','7QgmHar','6694125kvrUSy','4qfSDiB','185120ktaJnW','1395RxNfEN','9555252JcuWjS'];a116_0xe319=function(){return _0xdacf71;};return a116_0xe319();}import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';function a116_0x1219(_0x34c757,_0x27e4ef){_0x34c757=_0x34c757-0x1a3;const _0xe319da=a116_0xe319();let _0x1219b2=_0xe319da[_0x34c757];return _0x1219b2;}import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a117_0xc708fe=a117_0x5e98;function a117_0x57e0(){const _0x3747d4=['40nXXSxY','menus','hash','appCode','1lRoeik','163595kEAIwn','52088WkNCfj','\x20menu(s)','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','819096dCYgeT','Found\x20','verbose','cookie','No\x20menus\x20found.','map','248730ovdkHg','118152FZjQYv','105ciWbCB','bool','read','total','645462JFNriy','275096agBYDE'];a117_0x57e0=function(){return _0x3747d4;};return a117_0x57e0();}(function(_0x6755f0,_0x2ae107){const _0x30ac2f=a117_0x5e98,_0x48edc8=_0x6755f0();while(!![]){try{const _0x391697=-parseInt(_0x30ac2f(0x84))/0x1*(parseInt(_0x30ac2f(0x8f))/0x2)+-parseInt(_0x30ac2f(0x90))/0x3+parseInt(_0x30ac2f(0x96))/0x4+-parseInt(_0x30ac2f(0x85))/0x5+-parseInt(_0x30ac2f(0x89))/0x6+parseInt(_0x30ac2f(0x91))/0x7*(parseInt(_0x30ac2f(0x86))/0x8)+parseInt(_0x30ac2f(0x95))/0x9*(parseInt(_0x30ac2f(0x97))/0xa);if(_0x391697===_0x2ae107)break;else _0x48edc8['push'](_0x48edc8['shift']());}catch(_0x516326){_0x48edc8['push'](_0x48edc8['shift']());}}}(a117_0x57e0,0x1d607));function a117_0x5e98(_0x5d0655,_0x38bb24){_0x5d0655=_0x5d0655-0x83;const _0x57e05f=a117_0x57e0();let _0x5e982a=_0x57e05f[_0x5d0655];return _0x5e982a;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':'menu','command':'list','description':a117_0xc708fe(0x88),'risk':a117_0xc708fe(0x93),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a117_0xc708fe(0x8b),'type':'boolean','description':'Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing'}],async 'execute'(_0x433457){const _0xf6e604=a117_0xc708fe,_0x4dc8b9=_0x433457[_0xf6e604(0x92)](_0xf6e604(0x8b)),_0xa00d45=await fetchMenuSnapshot(_0x433457[_0xf6e604(0x83)],_0x433457[_0xf6e604(0x8c)],{'verbose':_0x4dc8b9});return{'ok':!![],'data':{'total':_0xa00d45[_0xf6e604(0x94)],'snapshotHash':_0xa00d45[_0xf6e604(0x99)],'menus':_0xa00d45[_0xf6e604(0x98)][_0xf6e604(0x8e)](toMenuListItem)},'message':_0xa00d45['total']===0x0?_0xf6e604(0x8d):_0xf6e604(0x8a)+_0xa00d45[_0xf6e604(0x94)]+_0xf6e604(0x87)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a118_0x134907=a118_0x150a;(function(_0x593c8e,_0x586603){const _0xc1d4c6=a118_0x150a,_0x3cbdd6=_0x593c8e();while(!![]){try{const _0x59da27=-parseInt(_0xc1d4c6(0x1bb))/0x1+-parseInt(_0xc1d4c6(0x1c8))/0x2+parseInt(_0xc1d4c6(0x1b7))/0x3*(parseInt(_0xc1d4c6(0x1c6))/0x4)+parseInt(_0xc1d4c6(0x1be))/0x5*(-parseInt(_0xc1d4c6(0x1ca))/0x6)+parseInt(_0xc1d4c6(0x1cd))/0x7+-parseInt(_0xc1d4c6(0x1c9))/0x8+parseInt(_0xc1d4c6(0x1b5))/0x9*(parseInt(_0xc1d4c6(0x1bf))/0xa);if(_0x59da27===_0x586603)break;else _0x3cbdd6['push'](_0x3cbdd6['shift']());}catch(_0x58c6d4){_0x3cbdd6['push'](_0x3cbdd6['shift']());}}}(a118_0x80a8,0x89cb4));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':a118_0x134907(0x1cc),'path':a118_0x134907(0x1aa)}];function a118_0x150a(_0xa4e0d5,_0x97697d){_0xa4e0d5=_0xa4e0d5-0x1a6;const _0x80a81b=a118_0x80a8();let _0x150a7b=_0x80a81b[_0xa4e0d5];return _0x150a7b;}export const menuMove={'service':a118_0x134907(0x1b9),'command':a118_0x134907(0x1d2),'description':a118_0x134907(0x1d3),'risk':a118_0x134907(0x1cb),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x366242){validateMoveInput(_0x366242);},async 'dryRun'(_0x25e716){const _0x20b950=a118_0x134907,{plan:_0x5840f6,patch:_0x4019f4}=await buildMovePlan(_0x25e716,!![]);return menuDryRunResult(_0x5840f6,{'method':_0x20b950(0x1cc),'url':_0x20b950(0x1aa),'body':{..._0x4019f4,'appCode':_0x25e716[_0x20b950(0x1c3)]},'description':_0x20b950(0x1d1)+_0x4019f4['id']+'.'});},async 'execute'(_0x1d25c0){const _0x4e31c9=a118_0x134907;validateMoveInput(_0x1d25c0);const {plan:_0x3a5ce6,patch:_0x32e84c,noChanges:_0x4138df,snapshot:_0x5158d9}=await buildMovePlan(_0x1d25c0,![]),_0x7916c0=_0x32e84c['id'];if(!_0x4138df)try{await updateMenuEntity(_0x1d25c0[_0x4e31c9(0x1c3)],_0x1d25c0['cookie'],_0x32e84c);}catch(_0xafa2d5){const _0x99f6a=mapMenuApiError(_0xafa2d5,_0x4e31c9(0x1d2),_0x7916c0);throw menuFailure(_0x99f6a,_0x3a5ce6,{'stage':_0x4e31c9(0x1c5),'failed':{'id':_0x7916c0},'warnings':[_0x4e31c9(0x1a8)],'verification':{'status':_0x4e31c9(0x1a9),'targetId':_0x7916c0,'lookupCommand':_0x4e31c9(0x1d5)}});}let _0x4ba72d,_0x59dac8;try{_0x4ba72d=_0x4138df?_0x5158d9:await fetchMenuSnapshot(_0x1d25c0[_0x4e31c9(0x1c3)],_0x1d25c0['cookie']),_0x59dac8=requireMenu(_0x4ba72d,_0x7916c0),verifyMove(_0x59dac8,_0x3a5ce6[_0x4e31c9(0x1cf)]),_0x59dac8[_0x4e31c9(0x1b8)]!==null&&requireFolder(_0x4ba72d,_0x59dac8[_0x4e31c9(0x1b8)]);}catch(_0x1aac3b){const _0x5371a8=describeMenuErrorCause(_0x1aac3b,_0x4e31c9(0x1b2),_0x7916c0),_0x40bb3f=asVerificationError(_0x1aac3b,'Move\x20request\x20for\x20menu\x20'+_0x7916c0+_0x4e31c9(0x1ab));throw menuFailure(_0x40bb3f,_0x3a5ce6,{'stage':_0x4e31c9(0x1ce),'succeeded':[{'id':_0x7916c0,'updateRequested':!_0x4138df,'skipped':_0x4138df}],'failed':{'id':_0x7916c0,'requestedStateConfirmed':![],..._0x5371a8},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x4e31c9(0x1a9),'targetId':_0x7916c0,'lookupCommand':_0x4e31c9(0x1d5)}});}const _0x296883=mutationResult({..._0x3a5ce6,'after':_0x59dac8,'dryRun':![],'succeeded':[{'id':_0x7916c0,'updated':!_0x4138df,'skipped':_0x4138df}],'verification':{'checkedBy':_0x4e31c9(0x1a7),'snapshotHash':_0x4ba72d[_0x4e31c9(0x1af)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x296883,'message':_0x4138df?_0x4e31c9(0x1c1)+_0x7916c0+_0x4e31c9(0x1c4):_0x4e31c9(0x1d4)+_0x7916c0+'.'};}};function validateMoveInput(_0x5b4508){const _0x27518a=a118_0x134907;validateExactId(_0x5b4508),parseParentId(_0x5b4508,_0x27518a(0x1ac),{'required':!![]}),parseParentId(_0x5b4508,_0x27518a(0x1bc),{'required':!![]}),validateSort(_0x5b4508);}function a118_0x80a8(){const _0x3512ce=['childrenCount','566307yTBNjn','expect-parent-id','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','25805kIqHPl','40aPMIEv','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','Menu\x20','menu_move_source_not_leaf','appCode','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','update','144244TmyOJC','folder','2147242tgalgz','3004416tQkuIU','120SdfHcY','write','POST','1424955ICVKwA','verification','after','\x20parent\x20changed:\x20expected\x20','Would\x20move\x20menu\x20','move','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','Moved\x20menu\x20','rabetbase\x20menu\x20list\x20--format\x20compress','sort','menu_state_drift','menu\x20list','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','failed','/smartapi/menu/update','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','parent-id','move\x20menu','type','hash','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','move-menu','verify\x20menu\x20move','\x20is\x20now\x20type\x20folder.',',\x20current\x20','3712806PBQYVq','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','69teJZlo','parentId','menu'];a118_0x80a8=function(){return _0x3512ce;};return a118_0x80a8();}async function buildMovePlan(_0x43c7a1,_0x1d5cdf){const _0x143ba7=a118_0x134907,_0x5a9f72=validateExactId(_0x43c7a1),_0x234bb9=parseParentId(_0x43c7a1,'parent-id',{'required':!![]}),_0x26343d=parseParentId(_0x43c7a1,_0x143ba7(0x1bc),{'required':!![]}),_0x2f30e8=validateSort(_0x43c7a1),_0x371e10=await fetchMutationSnapshot(_0x43c7a1,_0x143ba7(0x1ad),_0x5a9f72),_0x49e4b8=requireMenu(_0x371e10,_0x5a9f72);if(_0x49e4b8['type']==='folder'||_0x49e4b8[_0x143ba7(0x1ba)]!==0x0)throw menuError(_0x143ba7(0x1c2),_0x143ba7(0x1c1)+_0x5a9f72+_0x143ba7(0x1b6),_0x143ba7(0x1c0));if(_0x49e4b8[_0x143ba7(0x1b8)]!==_0x26343d)throw menuError(_0x143ba7(0x1a6),'Menu\x20'+_0x5a9f72+_0x143ba7(0x1d0)+formatParent(_0x26343d)+_0x143ba7(0x1b4)+formatParent(_0x49e4b8[_0x143ba7(0x1b8)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');_0x234bb9!==null&&requireFolder(_0x371e10,_0x234bb9);const _0x47d55b=_0x2f30e8??(_0x49e4b8[_0x143ba7(0x1b8)]===_0x234bb9?_0x49e4b8[_0x143ba7(0x1d6)]??0x0:nextSiblingSort(_0x371e10,_0x234bb9,_0x143ba7(0x1b9))),_0x2c9ea2={..._0x49e4b8,'parentId':_0x234bb9,'sort':_0x47d55b},_0x5521fd={'id':_0x5a9f72,'parentId':toApiParentId(_0x234bb9),'sort':_0x47d55b},_0x17fa1d=_0x49e4b8[_0x143ba7(0x1b8)]===_0x234bb9&&_0x49e4b8['sort']===_0x47d55b;return{'patch':_0x5521fd,'noChanges':_0x17fa1d,'snapshot':_0x371e10,'plan':mutationResult({'operation':_0x143ba7(0x1d2),'selector':{'id':_0x5a9f72,'parentId':_0x234bb9},'before':_0x49e4b8,'after':_0x2c9ea2,'dryRun':_0x1d5cdf,'backend':[...BACKEND],'plannedActions':[{'stage':_0x143ba7(0x1b1),'method':_0x143ba7(0x1cc),'path':_0x143ba7(0x1aa),'body':{..._0x5521fd,'appCode':_0x43c7a1[_0x143ba7(0x1c3)]}}],'snapshotHash':_0x371e10['hash'],'warnings':_0x17fa1d?[_0x143ba7(0x1b0)]:[]})};}function verifyMove(_0x41b875,_0x3246ba){const _0x84647e=a118_0x134907;assertVerified(_0x41b875[_0x84647e(0x1ae)]!==_0x84647e(0x1c7),'Menu\x20'+_0x41b875['id']+_0x84647e(0x1b3)),assertVerified(_0x41b875[_0x84647e(0x1ba)]===0x0,_0x84647e(0x1c1)+_0x41b875['id']+'\x20is\x20no\x20longer\x20a\x20leaf.'),assertVerified(_0x41b875[_0x84647e(0x1b8)]===_0x3246ba['parentId'],_0x84647e(0x1c1)+_0x41b875['id']+'\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.'),assertVerified(_0x41b875['sort']===_0x3246ba['sort'],_0x84647e(0x1c1)+_0x41b875['id']+_0x84647e(0x1bd));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a119_0x216f27=a119_0x53c4;(function(_0x5b97be,_0x358a31){const _0xd8dba3=a119_0x53c4,_0x27673d=_0x5b97be();while(!![]){try{const _0x39395b=parseInt(_0xd8dba3(0x15c))/0x1+parseInt(_0xd8dba3(0x170))/0x2*(-parseInt(_0xd8dba3(0x1a8))/0x3)+parseInt(_0xd8dba3(0x184))/0x4*(parseInt(_0xd8dba3(0x187))/0x5)+parseInt(_0xd8dba3(0x152))/0x6+parseInt(_0xd8dba3(0x169))/0x7*(parseInt(_0xd8dba3(0x18f))/0x8)+parseInt(_0xd8dba3(0x175))/0x9*(-parseInt(_0xd8dba3(0x166))/0xa)+-parseInt(_0xd8dba3(0x1a3))/0xb;if(_0x39395b===_0x358a31)break;else _0x27673d['push'](_0x27673d['shift']());}catch(_0x30c368){_0x27673d['push'](_0x27673d['shift']());}}}(a119_0x466d,0xa3a5a));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a119_0x216f27(0x153),'path':a119_0x216f27(0x1a6)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a119_0x216f27(0x16d),'command':a119_0x216f27(0x186),'description':'Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','risk':a119_0x216f27(0x19d),'structuredErrors':!![],'flags':[{'name':a119_0x216f27(0x190),'type':a119_0x216f27(0x199),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a119_0x216f27(0x161),'type':a119_0x216f27(0x199),'required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x14224e){validateRegroupInput(_0x14224e);},async 'dryRun'(_0x374d8a){const _0x1a4ff4=a119_0x216f27;validateRegroupInput(_0x374d8a);const _0x32adf8=await buildRegroupPlan(_0x374d8a,!![]);return menuDryRunResult(_0x32adf8[_0x1a4ff4(0x17f)],{'method':'POST','url':'/smartapi/menu/regroup','body':_0x32adf8[_0x1a4ff4(0x14f)],'description':_0x1a4ff4(0x15f)+JSON[_0x1a4ff4(0x1a5)](_0x32adf8['label'])+_0x1a4ff4(0x157)+_0x32adf8[_0x1a4ff4(0x197)]['join'](',\x20')+_0x1a4ff4(0x168)});},async 'execute'(_0x45749e){const _0x4282bd=a119_0x216f27;validateRegroupInput(_0x45749e);const _0x10aabe=await buildRegroupPlan(_0x45749e,![]);await recheckMutationSnapshot(_0x45749e,_0x10aabe[_0x4282bd(0x17f)],_0x4282bd(0x14e));const _0x35f102=buildMenuLookupCommand(_0x45749e[_0x4282bd(0x177)]);let _0x4165d3,_0x2e2fe5;try{_0x4165d3=await startMenuRegroup(_0x45749e['cookie'],_0x10aabe[_0x4282bd(0x14f)]),_0x2e2fe5=normalizeAsyncTask(_0x4165d3);}catch(_0x21246d){const _0x5da271=await inspectRegroupAfterFailure(_0x45749e[_0x4282bd(0x177)],_0x45749e[_0x4282bd(0x193)],_0x10aabe['label'],_0x10aabe[_0x4282bd(0x197)]),_0x34f980=typeof _0x4165d3?.[_0x4282bd(0x17d)]===_0x4282bd(0x199)&&_0x4165d3[_0x4282bd(0x17d)][_0x4282bd(0x156)]()?_0x4165d3[_0x4282bd(0x17d)][_0x4282bd(0x156)]():null,_0x1813e7=_0x34f980?{'command':buildAsyncTaskStatusCommand(_0x34f980,_0x45749e['appCode'])}:null,_0x431fac=mapMenuApiError(_0x21246d,_0x4282bd(0x1a2));throw menuFailure(_0x431fac,_0x10aabe[_0x4282bd(0x17f)],{'stage':_0x4282bd(0x17e),'failed':{'menuIds':_0x10aabe[_0x4282bd(0x197)],'taskId':_0x34f980,'groupingApplied':_0x5da271[_0x4282bd(0x15b)]?!![]:_0x4282bd(0x18d)},'after':_0x5da271[_0x4282bd(0x15b)]??null,'warnings':[_0x4282bd(0x181),..._0x5da271['readbackError']?[_0x4282bd(0x16b)+_0x5da271[_0x4282bd(0x189)]]:[],..._0x34f980?[_0x4282bd(0x1a4)]:[]],'verification':{'status':'failed','groupingApplied':_0x5da271[_0x4282bd(0x15b)]?!![]:_0x4282bd(0x18d),'taskId':_0x34f980,'query':_0x1813e7,'lookupCommand':_0x35f102}});}const _0x1aaf15=buildAsyncTaskStatusCommand(_0x2e2fe5[_0x4282bd(0x17d)],_0x45749e[_0x4282bd(0x177)]);let _0x3b1dc5=null,_0x37f48c=null,_0x1e5d83=null;try{_0x3b1dc5=await fetchMenuSnapshot(_0x45749e[_0x4282bd(0x177)],_0x45749e[_0x4282bd(0x193)]),_0x37f48c=findAppliedRegroup(_0x3b1dc5,_0x10aabe[_0x4282bd(0x190)],_0x10aabe[_0x4282bd(0x197)]);}catch(_0x4ac198){_0x1e5d83=_0x4ac198 instanceof Error?_0x4ac198['message']:String(_0x4ac198);}const _0x4dbb6d=mutationResult({..._0x10aabe['plan'],'after':_0x37f48c??null,'dryRun':![],'succeeded':[{'groupId':_0x37f48c?.[_0x4282bd(0x160)]['id']??null,'menuIds':_0x10aabe[_0x4282bd(0x197)],'taskId':_0x2e2fe5[_0x4282bd(0x17d)],'status':_0x2e2fe5['status'],'groupingApplied':_0x37f48c?!![]:_0x4282bd(0x18d)}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x3b1dc5?.[_0x4282bd(0x1a1)]??null,'groupId':_0x37f48c?.[_0x4282bd(0x160)]['id']??null,'groupingApplied':_0x37f48c?!![]:_0x4282bd(0x18d),'readbackError':_0x1e5d83,'lookupCommand':_0x35f102},'warnings':[..._0x10aabe[_0x4282bd(0x17f)][_0x4282bd(0x155)],...!_0x37f48c?[unconfirmedRegroupWarning(_0x2e2fe5)]:[],..._0x1e5d83?['Regroup\x20readback\x20failed:\x20'+_0x1e5d83]:[]]}),_0xd4ff74=_0x2e2fe5[_0x4282bd(0x179)]===_0x4282bd(0x1a7)&&!_0x37f48c?_0x4282bd(0x16a)+_0x2e2fe5['taskId']+_0x4282bd(0x178):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x2e2fe5);return{'ok':!![],'message':_0xd4ff74,'data':{..._0x4dbb6d,'task':_0x2e2fe5,'query':_0x2e2fe5['isTerminal']?null:{'command':_0x1aaf15}}};}};function validateRegroupInput(_0x450bd5){const _0x437760=a119_0x216f27;if(!_0x450bd5[_0x437760(0x174)]('label')[_0x437760(0x156)]())throw CliErrors[_0x437760(0x194)]('label');parseMenuIds(_0x450bd5[_0x437760(0x174)](_0x437760(0x161)));}function parseMenuIds(_0x5d5d63){const _0x27d504=a119_0x216f27,_0x36347b=_0x5d5d63['split'](',')[_0x27d504(0x154)](_0x15c3f0=>_0x15c3f0[_0x27d504(0x156)]());if(_0x36347b[_0x27d504(0x162)]===0x0||_0x36347b[_0x27d504(0x164)](_0x451d9f=>!_0x451d9f))throw CliErrors[_0x27d504(0x16e)](_0x27d504(0x158));const _0x36495f=_0x36347b[_0x27d504(0x154)](_0x3f3bed=>{const _0x2dd6bc=_0x27d504;if(!/^\d+$/['test'](_0x3f3bed))throw CliErrors[_0x2dd6bc(0x16e)](_0x2dd6bc(0x158));const _0x3f7ce3=Number(_0x3f3bed);if(!Number[_0x2dd6bc(0x1a9)](_0x3f7ce3)||_0x3f7ce3<=0x0)throw CliErrors[_0x2dd6bc(0x16e)](_0x2dd6bc(0x158));return _0x3f7ce3;});if(new Set(_0x36495f)[_0x27d504(0x159)]!==_0x36495f['length'])throw CliErrors['validation'](_0x27d504(0x198));if(_0x36495f['length']>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation']('--menu-ids\x20supports\x20at\x20most\x20'+MAX_REGROUP_MENU_COUNT+_0x27d504(0x18c));return _0x36495f;}function buildMenuLookupCommand(_0x3cde95){const _0x51ce52=a119_0x216f27,_0x52beb0='\x27'+_0x3cde95[_0x51ce52(0x185)](/'/g,_0x51ce52(0x18b))+'\x27';return CLI_BIN_NAME+_0x51ce52(0x19b)+_0x52beb0+_0x51ce52(0x192);}function unconfirmedRegroupWarning(_0x20d6b7){const _0x1c17e9=a119_0x216f27;if(_0x20d6b7[_0x1c17e9(0x179)]===_0x1c17e9(0x1a7))return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x20d6b7[_0x1c17e9(0x179)]===_0x1c17e9(0x15e))return _0x1c17e9(0x14d);if(_0x20d6b7[_0x1c17e9(0x183)])return _0x1c17e9(0x150);return _0x1c17e9(0x182);}async function buildRegroupPlan(_0x8fb666,_0x493722){const _0x596730=a119_0x216f27,_0x247ec9=_0x8fb666[_0x596730(0x174)](_0x596730(0x190))['trim'](),_0x514119=parseMenuIds(_0x8fb666['str'](_0x596730(0x161))),_0x1f7a2d=await fetchMutationSnapshot(_0x8fb666,_0x596730(0x19f)),_0x184eda=_0x514119['map'](_0x1d0692=>requireMenu(_0x1f7a2d,_0x1d0692));for(const _0xf06e9a of _0x184eda){if(_0xf06e9a[_0x596730(0x195)]['trim']()[_0x596730(0x165)]()===_0x596730(0x17b)||_0xf06e9a[_0x596730(0x14c)]>0x0)throw menuError(_0x596730(0x16f),_0x596730(0x17c)+_0xf06e9a['id']+_0x596730(0x196),_0x596730(0x176));if(!_0xf06e9a[_0x596730(0x190)][_0x596730(0x156)]())throw menuError(_0x596730(0x167),_0x596730(0x17c)+_0xf06e9a['id']+_0x596730(0x16c),_0x596730(0x191));}const _0xd3194e=findAppliedRegroup(_0x1f7a2d,_0x247ec9,_0x514119);if(_0xd3194e)throw menuError(_0x596730(0x19a),'Menus\x20'+_0x514119[_0x596730(0x18a)](',\x20')+_0x596730(0x180)+_0xd3194e['group']['id']+'\x20('+JSON[_0x596730(0x1a5)](_0x247ec9)+').',_0x596730(0x151));const _0x5f5403=_0x1f7a2d['menus'][_0x596730(0x171)](_0x5e61d3=>_0x5e61d3[_0x596730(0x163)]==null&&_0x5e61d3['type']['trim']()[_0x596730(0x165)]()===_0x596730(0x17b)&&_0x5e61d3[_0x596730(0x190)]===_0x247ec9);if(_0x5f5403['length']>0x0)throw menuError(_0x596730(0x173),_0x596730(0x172)+JSON[_0x596730(0x1a5)](_0x247ec9)+'\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'+_0x5f5403[_0x596730(0x154)](_0x1b854d=>_0x1b854d['id'])[_0x596730(0x18a)](',\x20')+'.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.');const _0x14ea00={'appCode':_0x8fb666['appCode'],'menuGroups':[{'label':_0x247ec9,'type':_0x596730(0x17b),'children':_0x184eda[_0x596730(0x154)](_0xab56e1=>({'id':_0xab56e1['id'],'label':_0xab56e1[_0x596730(0x190)]}))}]},_0x188fa1=mutationResult({'operation':_0x596730(0x186),'selector':{'label':_0x247ec9,'menuIds':_0x514119},'before':{'menus':_0x184eda},'after':{'group':{'id':null,'parentId':null,'label':_0x247ec9,'path':_0x596730(0x18e),'type':_0x596730(0x17b),'childrenIds':_0x514119},'children':_0x184eda['map'](_0x398d44=>({'id':_0x398d44['id'],'label':_0x398d44[_0x596730(0x190)],'beforeParentId':_0x398d44['parentId'],'afterParentId':_0x596730(0x19e)}))},'dryRun':_0x493722,'backend':[...BACKEND],'plannedActions':[{'stage':_0x596730(0x17a),'method':_0x596730(0x153),'path':_0x596730(0x1a6),'body':_0x14ea00}],'snapshotHash':_0x1f7a2d['hash'],'warnings':['The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.',_0x596730(0x188)]});return{'label':_0x247ec9,'menuIds':_0x514119,'input':_0x14ea00,'plan':_0x188fa1};}function a119_0x53c4(_0xd41f03,_0x498fc0){_0xd41f03=_0xd41f03-0x14c;const _0x466db0=a119_0x466d();let _0x53c4c3=_0x466db0[_0xd41f03];return _0x53c4c3;}function findAppliedRegroup(_0x4e7449,_0x2ea141,_0x451adb){const _0x14db77=a119_0x216f27,_0x235752=_0x451adb[_0x14db77(0x154)](_0x30c1aa=>_0x4e7449['byId'][_0x14db77(0x1a0)](_0x30c1aa))[_0x14db77(0x171)](_0x34074f=>Boolean(_0x34074f));if(_0x235752['length']!==_0x451adb[_0x14db77(0x162)])return null;const _0x4d0ebb=_0x235752[0x0]?.[_0x14db77(0x163)];if(_0x4d0ebb==null||_0x235752[_0x14db77(0x164)](_0x115b28=>_0x115b28['parentId']!==_0x4d0ebb))return null;const _0x784343=_0x4e7449['byId'][_0x14db77(0x1a0)](_0x4d0ebb);if(!_0x784343||_0x784343[_0x14db77(0x163)]!=null||_0x784343['type']['trim']()[_0x14db77(0x165)]()!==_0x14db77(0x17b)||_0x784343['label']!==_0x2ea141)return null;const _0x56b556=[..._0x451adb][_0x14db77(0x15a)]((_0x32b9fe,_0xf96440)=>_0x32b9fe-_0xf96440),_0x149cbe=[..._0x784343[_0x14db77(0x15d)]][_0x14db77(0x15a)]((_0x10e222,_0x3c107b)=>_0x10e222-_0x3c107b);if(JSON['stringify'](_0x149cbe)!==JSON[_0x14db77(0x1a5)](_0x56b556))return null;return{'group':_0x784343,'children':_0x235752};}async function inspectRegroupAfterFailure(_0x148807,_0x1497c2,_0xdfbad3,_0x42d2f9){const _0x25dfc2=a119_0x216f27;try{const _0x573b42=await fetchMenuSnapshot(_0x148807,_0x1497c2);return{'applied':findAppliedRegroup(_0x573b42,_0xdfbad3,_0x42d2f9),'readbackError':null};}catch(_0x5f3ffb){return{'applied':null,'readbackError':_0x5f3ffb instanceof Error?_0x5f3ffb[_0x25dfc2(0x19c)]:String(_0x5f3ffb)};}}function a119_0x466d(){const _0x24e908=['input','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','4475346RJfeuL','POST','map','warnings','trim','\x20and\x20regroup\x20menu\x20ids\x20','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','size','sort','applied','261243FYAEAN','childrenIds','FAILED','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','group','menu-ids','length','parentId','some','toLowerCase','220nUeMfK','menu_regroup_target_label_missing',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','7uMsjGY','Regroup\x20task\x20','Regroup\x20readback\x20also\x20failed:\x20','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','menu','validation','menu_regroup_target_not_leaf','107290KWLKAc','filter','Root\x20folder\x20label\x20','menu_regroup_label_conflict','str','104778cTgnrk','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','appCode','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','status','submit-regroup-task','folder','Menu\x20','taskId','regroup-submit','plan','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','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.','knownStatus','15384LPkcMy','replace','regroup-start','505lTJosa','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','readbackError','join','\x27\x5c\x27\x27','\x20menus\x20per\x20regroup\x20request.','unconfirmed','<platform-generated>','1355824LuhexB','label','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','\x20--format\x20compress','cookie','flagMissing','type','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','menuIds','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','string','menu_regroup_already_applied','\x20menu\x20list\x20--appcode\x20','message','write','<new-group-id>','plan\x20regroup','get','hash','start\x20menu\x20regroup','2304236FAzzAD','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','stringify','/smartapi/menu/regroup','SUCCESS','24fSlraM','isSafeInteger','childrenCount','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','start\x20regroup'];a119_0x466d=function(){return _0x24e908;};return a119_0x466d();}
|
|
1
|
+
const a119_0x2bff58=a119_0x3cc3;(function(_0x437eb7,_0x515cfe){const _0x2ebc86=a119_0x3cc3,_0x3b1196=_0x437eb7();while(!![]){try{const _0x104e09=-parseInt(_0x2ebc86(0x1f1))/0x1*(parseInt(_0x2ebc86(0x1b1))/0x2)+parseInt(_0x2ebc86(0x1f2))/0x3+parseInt(_0x2ebc86(0x1d4))/0x4+parseInt(_0x2ebc86(0x1af))/0x5*(-parseInt(_0x2ebc86(0x1d7))/0x6)+parseInt(_0x2ebc86(0x1ca))/0x7*(parseInt(_0x2ebc86(0x1e1))/0x8)+-parseInt(_0x2ebc86(0x1ad))/0x9*(parseInt(_0x2ebc86(0x1a9))/0xa)+-parseInt(_0x2ebc86(0x1c3))/0xb*(-parseInt(_0x2ebc86(0x1c1))/0xc);if(_0x104e09===_0x515cfe)break;else _0x3b1196['push'](_0x3b1196['shift']());}catch(_0x564501){_0x3b1196['push'](_0x3b1196['shift']());}}}(a119_0x212e,0xeed73));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';function a119_0x3cc3(_0x43ad56,_0x332529){_0x43ad56=_0x43ad56-0x1a1;const _0x212e38=a119_0x212e();let _0x3cc314=_0x212e38[_0x43ad56];return _0x3cc314;}import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a119_0x212e(){const _0xf6f524=['The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','menuIds','regroup-start','input','length','taskId','20iKVaUk','applied','isSafeInteger','cookie','3549357ISUMAk','childrenCount','185sxSpJA','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','2837896VYndaY','menus','hash','childrenIds','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','regroup-submit','get','size','POST','menu\x20list','message','Regroup\x20readback\x20failed:\x20','sort','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','\x20and\x20regroup\x20menu\x20ids\x20','split','6084cyidaq','\x27\x5c\x27\x27','25036PfDPJA','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','menu-ids','SUCCESS','filter','parentId','appCode','10643437lRUqNS','unconfirmed','write','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','Regroup\x20readback\x20also\x20failed:\x20','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','stringify','\x20--format\x20compress','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','label','5166972JinRCx','status','/smartapi/menu/regroup','191628LbMNLO','group','menu','Root\x20folder\x20label\x20','start\x20regroup','Label\x20of\x20the\x20new\x20root\x20folder','start\x20menu\x20regroup','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','byId','8sEUnKB','readbackError','trim','plan','submit-regroup-task','menu_regroup_already_applied','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','flagMissing','some','toLowerCase','<new-group-id>','<platform-generated>','type','menu_regroup_target_not_leaf','str','map','1ghOmsD','1204575prLiIz','--menu-ids\x20supports\x20at\x20most\x20','isTerminal','Regroup\x20task\x20','FAILED','validation','string','replace','Menus\x20','warnings','test','\x20menus\x20per\x20regroup\x20request.','folder','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.'];a119_0x212e=function(){return _0xf6f524;};return a119_0x212e();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a119_0x2bff58(0x1b9),'path':a119_0x2bff58(0x1d6)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a119_0x2bff58(0x1d9),'command':a119_0x2bff58(0x1a5),'description':'Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','risk':a119_0x2bff58(0x1cc),'structuredErrors':!![],'flags':[{'name':'label','type':a119_0x2bff58(0x1f8),'required':!![],'description':a119_0x2bff58(0x1dc)},{'name':a119_0x2bff58(0x1c5),'type':'string','required':!![],'description':a119_0x2bff58(0x1b0)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x296c4a){validateRegroupInput(_0x296c4a);},async 'dryRun'(_0x55602d){const _0x5f5dae=a119_0x2bff58;validateRegroupInput(_0x55602d);const _0x585220=await buildRegroupPlan(_0x55602d,!![]);return menuDryRunResult(_0x585220[_0x5f5dae(0x1e4)],{'method':'POST','url':_0x5f5dae(0x1d6),'body':_0x585220[_0x5f5dae(0x1a6)],'description':'Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20'+JSON[_0x5f5dae(0x1d0)](_0x585220['label'])+_0x5f5dae(0x1bf)+_0x585220[_0x5f5dae(0x1a4)]['join'](',\x20')+';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.'});},async 'execute'(_0x4e8609){const _0x460aee=a119_0x2bff58;validateRegroupInput(_0x4e8609);const _0x6ec119=await buildRegroupPlan(_0x4e8609,![]);await recheckMutationSnapshot(_0x4e8609,_0x6ec119[_0x460aee(0x1e4)],_0x460aee(0x1db));const _0x379ce2=buildMenuLookupCommand(_0x4e8609['appCode']);let _0x12c892,_0x5c48b3;try{_0x12c892=await startMenuRegroup(_0x4e8609[_0x460aee(0x1ac)],_0x6ec119[_0x460aee(0x1a6)]),_0x5c48b3=normalizeAsyncTask(_0x12c892);}catch(_0x47a7e2){const _0x4a8578=await inspectRegroupAfterFailure(_0x4e8609[_0x460aee(0x1c9)],_0x4e8609[_0x460aee(0x1ac)],_0x6ec119[_0x460aee(0x1d3)],_0x6ec119[_0x460aee(0x1a4)]),_0x4adade=typeof _0x12c892?.[_0x460aee(0x1a8)]==='string'&&_0x12c892['taskId'][_0x460aee(0x1e3)]()?_0x12c892['taskId'][_0x460aee(0x1e3)]():null,_0x3bb64e=_0x4adade?{'command':buildAsyncTaskStatusCommand(_0x4adade,_0x4e8609[_0x460aee(0x1c9)])}:null,_0x123ca=mapMenuApiError(_0x47a7e2,_0x460aee(0x1dd));throw menuFailure(_0x123ca,_0x6ec119['plan'],{'stage':_0x460aee(0x1b6),'failed':{'menuIds':_0x6ec119[_0x460aee(0x1a4)],'taskId':_0x4adade,'groupingApplied':_0x4a8578['applied']?!![]:_0x460aee(0x1cb)},'after':_0x4a8578[_0x460aee(0x1aa)]??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.',..._0x4a8578[_0x460aee(0x1e2)]?[_0x460aee(0x1ce)+_0x4a8578[_0x460aee(0x1e2)]]:[],..._0x4adade?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':'failed','groupingApplied':_0x4a8578[_0x460aee(0x1aa)]?!![]:_0x460aee(0x1cb),'taskId':_0x4adade,'query':_0x3bb64e,'lookupCommand':_0x379ce2}});}const _0x2773b2=buildAsyncTaskStatusCommand(_0x5c48b3[_0x460aee(0x1a8)],_0x4e8609['appCode']);let _0x26bf5c=null,_0x18beac=null,_0x4fc1bd=null;try{_0x26bf5c=await fetchMenuSnapshot(_0x4e8609[_0x460aee(0x1c9)],_0x4e8609[_0x460aee(0x1ac)]),_0x18beac=findAppliedRegroup(_0x26bf5c,_0x6ec119[_0x460aee(0x1d3)],_0x6ec119['menuIds']);}catch(_0x8f466e){_0x4fc1bd=_0x8f466e instanceof Error?_0x8f466e[_0x460aee(0x1bb)]:String(_0x8f466e);}const _0x4b3880=mutationResult({..._0x6ec119[_0x460aee(0x1e4)],'after':_0x18beac??null,'dryRun':![],'succeeded':[{'groupId':_0x18beac?.[_0x460aee(0x1d8)]['id']??null,'menuIds':_0x6ec119[_0x460aee(0x1a4)],'taskId':_0x5c48b3[_0x460aee(0x1a8)],'status':_0x5c48b3[_0x460aee(0x1d5)],'groupingApplied':_0x18beac?!![]:_0x460aee(0x1cb)}],'verification':{'checkedBy':_0x460aee(0x1ba),'snapshotHash':_0x26bf5c?.[_0x460aee(0x1b3)]??null,'groupId':_0x18beac?.[_0x460aee(0x1d8)]['id']??null,'groupingApplied':_0x18beac?!![]:'unconfirmed','readbackError':_0x4fc1bd,'lookupCommand':_0x379ce2},'warnings':[..._0x6ec119[_0x460aee(0x1e4)][_0x460aee(0x1fb)],...!_0x18beac?[unconfirmedRegroupWarning(_0x5c48b3)]:[],..._0x4fc1bd?[_0x460aee(0x1bc)+_0x4fc1bd]:[]]}),_0x115251=_0x5c48b3[_0x460aee(0x1d5)]===_0x460aee(0x1c6)&&!_0x18beac?_0x460aee(0x1f5)+_0x5c48b3[_0x460aee(0x1a8)]+'\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.':'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x5c48b3);return{'ok':!![],'message':_0x115251,'data':{..._0x4b3880,'task':_0x5c48b3,'query':_0x5c48b3[_0x460aee(0x1f4)]?null:{'command':_0x2773b2}}};}};function validateRegroupInput(_0x34a9ad){const _0xe9078f=a119_0x2bff58;if(!_0x34a9ad[_0xe9078f(0x1ef)](_0xe9078f(0x1d3))[_0xe9078f(0x1e3)]())throw CliErrors[_0xe9078f(0x1e8)](_0xe9078f(0x1d3));parseMenuIds(_0x34a9ad['str'](_0xe9078f(0x1c5)));}function parseMenuIds(_0x3373aa){const _0x249eb2=a119_0x2bff58,_0x55e288=_0x3373aa[_0x249eb2(0x1c0)](',')[_0x249eb2(0x1f0)](_0x11808d=>_0x11808d[_0x249eb2(0x1e3)]());if(_0x55e288[_0x249eb2(0x1a7)]===0x0||_0x55e288[_0x249eb2(0x1e9)](_0xc55200=>!_0xc55200))throw CliErrors[_0x249eb2(0x1f7)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x13eed8=_0x55e288[_0x249eb2(0x1f0)](_0x6cbe05=>{const _0x39c99c=_0x249eb2;if(!/^\d+$/[_0x39c99c(0x1fc)](_0x6cbe05))throw CliErrors[_0x39c99c(0x1f7)](_0x39c99c(0x1e7));const _0x15e5b7=Number(_0x6cbe05);if(!Number[_0x39c99c(0x1ab)](_0x15e5b7)||_0x15e5b7<=0x0)throw CliErrors[_0x39c99c(0x1f7)](_0x39c99c(0x1e7));return _0x15e5b7;});if(new Set(_0x13eed8)[_0x249eb2(0x1b8)]!==_0x13eed8[_0x249eb2(0x1a7)])throw CliErrors[_0x249eb2(0x1f7)](_0x249eb2(0x1b5));if(_0x13eed8[_0x249eb2(0x1a7)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x249eb2(0x1f7)](_0x249eb2(0x1f3)+MAX_REGROUP_MENU_COUNT+_0x249eb2(0x1fd));return _0x13eed8;}function buildMenuLookupCommand(_0x2a9622){const _0x4d47ef=a119_0x2bff58,_0x5010f9='\x27'+_0x2a9622[_0x4d47ef(0x1f9)](/'/g,_0x4d47ef(0x1c2))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x5010f9+_0x4d47ef(0x1d1);}function unconfirmedRegroupWarning(_0x4b742c){const _0x118ba3=a119_0x2bff58;if(_0x4b742c[_0x118ba3(0x1d5)]==='SUCCESS')return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x4b742c[_0x118ba3(0x1d5)]===_0x118ba3(0x1f6))return _0x118ba3(0x1a3);if(_0x4b742c['knownStatus'])return _0x118ba3(0x1df);return _0x118ba3(0x1cd);}async function buildRegroupPlan(_0x5a32be,_0x1fff8b){const _0xecadba=a119_0x2bff58,_0x3f7f0e=_0x5a32be[_0xecadba(0x1ef)]('label')['trim'](),_0x5a8e77=parseMenuIds(_0x5a32be[_0xecadba(0x1ef)](_0xecadba(0x1c5))),_0x1e1473=await fetchMutationSnapshot(_0x5a32be,'plan\x20regroup'),_0x44c6f6=_0x5a8e77['map'](_0x25049b=>requireMenu(_0x1e1473,_0x25049b));for(const _0x3bbba6 of _0x44c6f6){if(_0x3bbba6['type'][_0xecadba(0x1e3)]()[_0xecadba(0x1ea)]()===_0xecadba(0x1a1)||_0x3bbba6[_0xecadba(0x1ae)]>0x0)throw menuError(_0xecadba(0x1ee),'Menu\x20'+_0x3bbba6['id']+_0xecadba(0x1a2),'Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.');if(!_0x3bbba6[_0xecadba(0x1d3)][_0xecadba(0x1e3)]())throw menuError('menu_regroup_target_label_missing','Menu\x20'+_0x3bbba6['id']+_0xecadba(0x1cf),'Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.');}const _0x5891f6=findAppliedRegroup(_0x1e1473,_0x3f7f0e,_0x5a8e77);if(_0x5891f6)throw menuError(_0xecadba(0x1e6),_0xecadba(0x1fa)+_0x5a8e77['join'](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0x5891f6[_0xecadba(0x1d8)]['id']+'\x20('+JSON[_0xecadba(0x1d0)](_0x3f7f0e)+').',_0xecadba(0x1be));const _0x349d11=_0x1e1473[_0xecadba(0x1b2)][_0xecadba(0x1c7)](_0x53b8a3=>_0x53b8a3[_0xecadba(0x1c8)]==null&&_0x53b8a3[_0xecadba(0x1ed)][_0xecadba(0x1e3)]()[_0xecadba(0x1ea)]()===_0xecadba(0x1a1)&&_0x53b8a3[_0xecadba(0x1d3)]===_0x3f7f0e);if(_0x349d11['length']>0x0)throw menuError('menu_regroup_label_conflict',_0xecadba(0x1da)+JSON[_0xecadba(0x1d0)](_0x3f7f0e)+_0xecadba(0x1de)+_0x349d11[_0xecadba(0x1f0)](_0x2aca0b=>_0x2aca0b['id'])['join'](',\x20')+'.',_0xecadba(0x1c4));const _0x36effe={'appCode':_0x5a32be[_0xecadba(0x1c9)],'menuGroups':[{'label':_0x3f7f0e,'type':_0xecadba(0x1a1),'children':_0x44c6f6[_0xecadba(0x1f0)](_0xd92843=>({'id':_0xd92843['id'],'label':_0xd92843[_0xecadba(0x1d3)]}))}]},_0x32aa38=mutationResult({'operation':_0xecadba(0x1a5),'selector':{'label':_0x3f7f0e,'menuIds':_0x5a8e77},'before':{'menus':_0x44c6f6},'after':{'group':{'id':null,'parentId':null,'label':_0x3f7f0e,'path':_0xecadba(0x1ec),'type':_0xecadba(0x1a1),'childrenIds':_0x5a8e77},'children':_0x44c6f6[_0xecadba(0x1f0)](_0x588122=>({'id':_0x588122['id'],'label':_0x588122[_0xecadba(0x1d3)],'beforeParentId':_0x588122[_0xecadba(0x1c8)],'afterParentId':_0xecadba(0x1eb)}))},'dryRun':_0x1fff8b,'backend':[...BACKEND],'plannedActions':[{'stage':_0xecadba(0x1e5),'method':_0xecadba(0x1b9),'path':_0xecadba(0x1d6),'body':_0x36effe}],'snapshotHash':_0x1e1473[_0xecadba(0x1b3)],'warnings':['The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.',_0xecadba(0x1d2)]});return{'label':_0x3f7f0e,'menuIds':_0x5a8e77,'input':_0x36effe,'plan':_0x32aa38};}function findAppliedRegroup(_0x4999f0,_0x252f8a,_0xea117d){const _0x741318=a119_0x2bff58,_0xee4925=_0xea117d[_0x741318(0x1f0)](_0x11f978=>_0x4999f0[_0x741318(0x1e0)][_0x741318(0x1b7)](_0x11f978))[_0x741318(0x1c7)](_0x2eec31=>Boolean(_0x2eec31));if(_0xee4925[_0x741318(0x1a7)]!==_0xea117d['length'])return null;const _0xc6e13=_0xee4925[0x0]?.[_0x741318(0x1c8)];if(_0xc6e13==null||_0xee4925[_0x741318(0x1e9)](_0x3de5fc=>_0x3de5fc[_0x741318(0x1c8)]!==_0xc6e13))return null;const _0x3b3a7f=_0x4999f0[_0x741318(0x1e0)][_0x741318(0x1b7)](_0xc6e13);if(!_0x3b3a7f||_0x3b3a7f[_0x741318(0x1c8)]!=null||_0x3b3a7f[_0x741318(0x1ed)][_0x741318(0x1e3)]()[_0x741318(0x1ea)]()!==_0x741318(0x1a1)||_0x3b3a7f[_0x741318(0x1d3)]!==_0x252f8a)return null;const _0x27bea3=[..._0xea117d][_0x741318(0x1bd)]((_0x14947c,_0x243904)=>_0x14947c-_0x243904),_0x55f59b=[..._0x3b3a7f[_0x741318(0x1b4)]][_0x741318(0x1bd)]((_0x585bf7,_0x5a0d2d)=>_0x585bf7-_0x5a0d2d);if(JSON[_0x741318(0x1d0)](_0x55f59b)!==JSON[_0x741318(0x1d0)](_0x27bea3))return null;return{'group':_0x3b3a7f,'children':_0xee4925};}async function inspectRegroupAfterFailure(_0x47bf37,_0x33695c,_0x1ae0dc,_0x2a6854){try{const _0x3094f7=await fetchMenuSnapshot(_0x47bf37,_0x33695c);return{'applied':findAppliedRegroup(_0x3094f7,_0x1ae0dc,_0x2a6854),'readbackError':null};}catch(_0x525183){return{'applied':null,'readbackError':_0x525183 instanceof Error?_0x525183['message']:String(_0x525183)};}}
|