@lovrabet/rabetbase-cli 2.3.15-beta.1 → 2.3.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/add.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -0
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/permit/index.js +1 -1
- package/lib/commands/permit/page-get.js +1 -1
- package/lib/commands/permit/page-set.js +1 -1
- package/lib/commands/permit/role-apis-set.js +1 -1
- package/lib/commands/permit/role-menus-set.js +1 -1
- package/lib/commands/permit/role-menus.js +1 -1
- package/lib/commands/permit/shared.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/init.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/create.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/save.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
function a103_0x285e(){const _0x3d774c=['\x20has\x20an\x20unexpected\x20','expectedPath','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','path','data','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','embedded','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','password','menu\x20list','3886197YjJtff','3023184FNrZej','fromEntries','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','menu_sort_invalid','hasOwnProperty','Created\x20menu\x20','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','menu_url_https_required','1049742IYXwgc','isSafeInteger','Create\x20an\x20external\x20website\x20link\x20menu','boolean','create\x20external\x20menu','after','plannedActions','object','replace','entries','1080JKVXpH','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','external-link-create','has','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','label','/smartapi/menu/create','flagMissing','1614CPzbHJ','length','POST','\x20has\x20an\x20unexpected\x20generated\x20path.','trim','type','open-mode','sort','menu_parent_not_folder','readbackerror','parent','str','4vaJRxy','rawerror','parentId','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','toLowerCase','link','causemessage','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','Whether\x20the\x20menu\x20is\x20visible','\x20after\x20response\x20loss.','2174595Rpxsyr','Provide\x20an\x20HTTPS\x20URL.','menu_url_credentials_forbidden','lookupCommand','menu_url_invalid','Created\x20external\x20menu\x20','cookie','expectedSnapshotHash','prototype','create-response-validation','string','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','new-window','How\x20to\x20open\x20the\x20external\x20website','selector','menu_create_response_invalid','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','URL','code','menu_create_recovery_required','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','username','Menu\x20','9745uDMbAg','url','filter','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','createdId','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','<redacted>','byId','\x20--format\x20compress','isArray','failed','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','menu_verification_failed','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','cause','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','External\x20menu\x20creation\x20failed.','menu','protocol','hash','menu_mutation_failed','appCode','call','visible','visibility','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Would\x20create\x20external\x20website\x20link\x20menu\x20','before','afterPlan','rabetbase\x20menu\x20list\x20--appcode\x20','menu_not_found','map','Run\x20','\x20failed\x20final\x20verification.','1702924YnGqas','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','Recovered\x20menu\x20','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','menu_open_mode_invalid','menu_permission_denied','currentSnapshotHash','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','create','31230VmIzBu','verification','menu_sort_overflow','Menu\x20label','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','pre-write-recheck','recovered','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.'];a103_0x285e=function(){return _0x3d774c;};return a103_0x285e();}const a103_0x4b13c1=a103_0x4042;(function(_0x2f1c6b,_0x373fac){const _0x3507cc=a103_0x4042,_0x1040f3=_0x2f1c6b();while(!![]){try{const _0x273588=parseInt(_0x3507cc(0x165))/0x1+-parseInt(_0x3507cc(0x140))/0x2+parseInt(_0x3507cc(0x105))/0x3*(parseInt(_0x3507cc(0xfb))/0x4)+-parseInt(_0x3507cc(0x11d))/0x5*(parseInt(_0x3507cc(0xef))/0x6)+-parseInt(_0x3507cc(0x15c))/0x7+parseInt(_0x3507cc(0x15d))/0x8+-parseInt(_0x3507cc(0x149))/0x9*(-parseInt(_0x3507cc(0x16f))/0xa);if(_0x273588===_0x373fac)break;else _0x1040f3['push'](_0x1040f3['shift']());}catch(_0x57ca4e){_0x1040f3['push'](_0x1040f3['shift']());}}}(a103_0x285e,0x9197f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':a103_0x4b13c1(0x100)};export function validateExternalMenuUrl(_0x376e30){const _0x33a3da=a103_0x4b13c1,_0x15b009=_0x376e30[_0x33a3da(0xf3)]();let _0x45c3d5;try{_0x45c3d5=new URL(_0x15b009);}catch{throw menuError(_0x33a3da(0x109),_0x33a3da(0x12a),_0x33a3da(0x173));}if(_0x45c3d5[_0x33a3da(0x130)]!=='https:')throw menuError(_0x33a3da(0x164),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0x33a3da(0x106));if(_0x45c3d5[_0x33a3da(0x11b)]||_0x45c3d5[_0x33a3da(0x15a)])throw menuError(_0x33a3da(0x107),'External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.',_0x33a3da(0x122));return _0x15b009;}export const menuExternalLinkCreate={'service':'menu','command':a103_0x4b13c1(0x171),'description':a103_0x4b13c1(0x167),'risk':'write','structuredErrors':!![],'flags':[{'name':a103_0x4b13c1(0x174),'type':a103_0x4b13c1(0x10f),'required':!![],'description':a103_0x4b13c1(0x14c)},{'name':a103_0x4b13c1(0xf5),'type':a103_0x4b13c1(0x10f),'required':!![],'enum':[a103_0x4b13c1(0x157),a103_0x4b13c1(0x112)],'description':a103_0x4b13c1(0x113)},{'name':'url','type':'string','required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a103_0x4b13c1(0x135),'type':a103_0x4b13c1(0x168),'default':!![],'description':a103_0x4b13c1(0x103)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2b7f01){validateAddInput(_0x2b7f01);},async 'dryRun'(_0x3d3958){const _0x7d9037=a103_0x4b13c1;validateAddInput(_0x3d3958);const {plan:_0x10acd2}=await buildSafeAddPlan(_0x3d3958,!![]),_0xf724c6=_0x10acd2['after'],_0x4c4789=createBody(_0xf724c6);return menuDryRunResult(_0x10acd2,{'method':_0x7d9037(0xf1),'url':_0x7d9037(0x175),'body':_0x4c4789,'description':_0x7d9037(0x138)+JSON['stringify'](_0xf724c6['label'])+'\x20with\x20'+_0x3d3958[_0x7d9037(0xfa)]('open-mode')+_0x7d9037(0x111)});},async 'execute'(_0x4954d4){const _0x20f722=a103_0x4b13c1;validateAddInput(_0x4954d4);const _0x571b56=await buildSafeAddPlan(_0x4954d4,![]),{plan:_0xed1373,snapshot:_0x467238}=_0x571b56,_0x30a59a=_0xed1373['after'],_0x590632=buildMenuLookupCommand(_0x4954d4[_0x20f722(0x133)]);await recheckAddSnapshot(_0x4954d4,_0xed1373);let _0x313ee6;try{_0x313ee6=await createMenuEntity(_0x4954d4['appCode'],_0x4954d4[_0x20f722(0x10b)],createBody(_0x30a59a));}catch(_0x27a356){const _0x581557=mapMenuApiError(_0x27a356,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x27a356)||_0x581557['code']===_0x20f722(0x145))throw externalLinkCreateFailure(_0x581557,_0xed1373,{'stage':_0x20f722(0x148),'failed':{},'verification':{'status':_0x20f722(0x127),'lookupCommand':_0x590632}});return recoverAfterResponseLoss(_0x4954d4,_0x571b56,_0x590632);}const _0x2e8991=Number(_0x313ee6?.['id']),_0xbbae58=typeof _0x313ee6?.['path']===_0x20f722(0x10f)?_0x313ee6[_0x20f722(0x154)]:'';if(!Number[_0x20f722(0x166)](_0x2e8991)||_0x2e8991<=0x0||!_0xbbae58['trim']()){const _0x5a473c=menuError(_0x20f722(0x115),_0x20f722(0x159),'Run\x20'+_0x590632+'\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.');throw externalLinkCreateFailure(_0x5a473c,_0xed1373,{'stage':_0x20f722(0x10e),'succeeded':Number[_0x20f722(0x166)](_0x2e8991)&&_0x2e8991>0x0?[{'id':_0x2e8991,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x2e8991)?_0x2e8991:null,'generatedPathConfirmed':Boolean(_0xbbae58[_0x20f722(0xf3)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number['isSafeInteger'](_0x2e8991)&&_0x2e8991>0x0?{..._0x30a59a,'id':_0x2e8991,'path':_0xbbae58}:_0x30a59a,'verification':{'status':_0x20f722(0x127),'lookupCommand':_0x590632,...Number['isSafeInteger'](_0x2e8991)&&_0x2e8991>0x0?{'targetId':_0x2e8991}:{}}});}const _0x1ed3f8=await readAndVerifyCreatedMenu({'appCode':_0x4954d4['appCode'],'cookie':_0x4954d4[_0x20f722(0x10b)],'plan':_0xed1373,'afterPlan':_0x30a59a,'createdId':_0x2e8991,'expectedPath':_0xbbae58,'lookupCommand':_0x590632,'recovered':![]});return creationSuccess(_0xed1373,_0x1ed3f8['snapshot'],_0x1ed3f8['fact'],![]);}};function validateAddInput(_0xfb3d5e){const _0x2cbec7=a103_0x4b13c1;if(!_0xfb3d5e[_0x2cbec7(0xfa)]('label')['trim']())throw CliErrors[_0x2cbec7(0xee)]('label');resolveExternalMenuType(_0xfb3d5e),validateExternalMenuUrl(_0xfb3d5e['str'](_0x2cbec7(0x11e))),parseParentId(_0xfb3d5e,'parent-id'),validateSort(_0xfb3d5e);}function resolveExternalMenuType(_0x4ddcfd){const _0xf7546f=a103_0x4b13c1,_0x5519bc=_0x4ddcfd[_0xf7546f(0xfa)]('open-mode')[_0xf7546f(0xf3)]();if(!_0x5519bc)throw CliErrors[_0xf7546f(0xee)](_0xf7546f(0xf5));const _0x49b8f9=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x5519bc];if(!_0x49b8f9)throw menuError(_0xf7546f(0x144),_0xf7546f(0x116),_0xf7546f(0x12b));return _0x49b8f9;}async function buildAddPlan(_0x415b5b,_0x72f14){const _0x2827b9=a103_0x4b13c1,_0x53e366=await fetchMutationSnapshot(_0x415b5b,'create\x20external\x20menu'),_0xe2692=parseParentId(_0x415b5b,'parent-id')??null;if(_0xe2692!=null)requireFolder(_0x53e366,_0xe2692);const _0x41d11b=validateSort(_0x415b5b),_0x18c972=_0x41d11b??nextSiblingSort(_0x53e366,_0xe2692,_0x2827b9(0x12f)),_0x1e2d44=_0x415b5b[_0x2827b9(0xfa)](_0x2827b9(0x174))['trim'](),_0x457ddd=resolveExternalMenuType(_0x415b5b),_0x4918e4=validateExternalMenuUrl(_0x415b5b[_0x2827b9(0xfa)](_0x2827b9(0x11e))),_0x57a4f5=Object[_0x2827b9(0x10d)][_0x2827b9(0x161)][_0x2827b9(0x134)](_0x415b5b['rawFlags'],'visible')?_0x415b5b['bool'](_0x2827b9(0x135)):!![],_0x566d21={'id':null,'parentId':_0xe2692,'label':_0x1e2d44,'path':'<platform-generated>','url':_0x4918e4,'type':_0x457ddd,'visible':_0x57a4f5,'sort':_0x18c972},_0x12af80=buildMenuLookupCommand(_0x415b5b[_0x2827b9(0x133)]),_0x391cce=mutationResult({'operation':'add','selector':{'parentId':_0xe2692,'type':_0x457ddd,'label':_0x1e2d44,'url':_0x4918e4},'before':null,'after':_0x566d21,'dryRun':_0x72f14,'backend':[{'method':'POST','path':'/smartapi/menu/create'}],'plannedActions':[{'stage':'create-menu','method':'POST','path':'/smartapi/menu/create','body':createBody(_0x566d21)}],'snapshotHash':_0x53e366[_0x2827b9(0x131)],'warnings':[_0x2827b9(0xfe)],'verification':{'lookupCommand':_0x12af80}});return{'plan':_0x391cce,'snapshot':_0x53e366};}async function buildSafeAddPlan(_0x79a078,_0x3d1c47){try{return await buildAddPlan(_0x79a078,_0x3d1c47);}catch(_0x2699fa){throw safeMenuAddError(_0x2699fa);}}async function recheckAddSnapshot(_0x127641,_0x3b1011){const _0x44eba1=a103_0x4b13c1;try{await recheckMutationSnapshot(_0x127641,_0x3b1011,_0x44eba1(0x169));}catch(_0x2626b6){const _0x1214a2=getFailureRecord(_0x2626b6);throw externalLinkCreateFailure(_0x2626b6,_0x3b1011,{'stage':_0x44eba1(0x14e),'failed':{..._0x1214a2?.[_0x44eba1(0x10c)]?{'expectedSnapshotHash':_0x1214a2[_0x44eba1(0x10c)]}:{},..._0x1214a2?.[_0x44eba1(0x146)]?{'currentSnapshotHash':_0x1214a2['currentSnapshotHash']}:{}}});}}function createBody(_0x251fa8){const _0x596677=a103_0x4b13c1;return{'parentId':toApiParentId(_0x251fa8['parentId']),'label':String(_0x251fa8['label']),'type':String(_0x251fa8[_0x596677(0xf4)]),'url':String(_0x251fa8['url']),'visible':Boolean(_0x251fa8[_0x596677(0x135)]),'sort':Number(_0x251fa8[_0x596677(0xf6)]),'extend':{}};}function buildMenuLookupCommand(_0x2138d6){const _0x28a0f6=a103_0x4b13c1,_0x375b2c='\x27'+_0x2138d6[_0x28a0f6(0x16d)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x28a0f6(0x13b)+_0x375b2c+_0x28a0f6(0x125);}async function recoverAfterResponseLoss(_0x5b1316,_0x468e63,_0x28f357){const _0x184ce5=a103_0x4b13c1,{plan:_0x3158e4,snapshot:_0x5be9b1}=_0x468e63,_0x3fcf5d=_0x3158e4['after'];let _0x19b90d;try{_0x19b90d=await fetchMenuSnapshot(_0x5b1316['appCode'],_0x5b1316[_0x184ce5(0x10b)]);}catch(_0x12132a){throw recoveryRequiredFailure(_0x3158e4,_0x28f357,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x542aee=_0x19b90d['menus'][_0x184ce5(0x11f)](_0xc303f6=>_0xc303f6[_0x184ce5(0xfd)]===_0x3fcf5d[_0x184ce5(0xfd)]&&_0xc303f6['type']===_0x3fcf5d['type']&&_0xc303f6['label']===_0x3fcf5d[_0x184ce5(0x174)]&&_0xc303f6[_0x184ce5(0x11e)]===_0x3fcf5d[_0x184ce5(0x11e)]),_0x36e466=_0x542aee[_0x184ce5(0x11f)](_0x203669=>!_0x5be9b1['byId'][_0x184ce5(0x172)](_0x203669['id'])),_0x3dff40=_0x542aee[_0x184ce5(0x11f)](_0x36180b=>_0x5be9b1[_0x184ce5(0x124)][_0x184ce5(0x172)](_0x36180b['id']));if(_0x542aee[_0x184ce5(0xf0)]!==0x1||_0x36e466[_0x184ce5(0xf0)]!==0x1)throw recoveryRequiredFailure(_0x3158e4,_0x28f357,{'matchCount':_0x542aee[_0x184ce5(0xf0)],'newMatchCount':_0x36e466[_0x184ce5(0xf0)],'preexistingMatchCount':_0x3dff40[_0x184ce5(0xf0)]});const _0x3ad215=_0x36e466[0x0];try{verifyCreatedFact(_0x3ad215,_0x3ad215['id'],_0x3fcf5d,null);}catch(_0x28e763){const _0x51457a=_0x28e763 instanceof Error&&_0x184ce5(0x118)in _0x28e763?_0x28e763:menuError(_0x184ce5(0x129),_0x184ce5(0x142)+_0x3ad215['id']+'\x20could\x20not\x20be\x20verified.','Run\x20'+_0x28f357+_0x184ce5(0x110));throw externalLinkCreateFailure(_0x51457a,_0x3158e4,{'stage':_0x184ce5(0x14a),'succeeded':[{'id':_0x3ad215['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x3ad215['id'],'finalFactsConfirmed':![]},'after':_0x3ad215,'warnings':[_0x184ce5(0x11c)+_0x3ad215['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':'failed','targetId':_0x3ad215['id'],'recovered':!![],'lookupCommand':_0x28f357}});}return creationSuccess(_0x3158e4,_0x19b90d,_0x3ad215,!![]);}function recoveryRequiredFailure(_0x4e9ce9,_0xbff8a1,_0x53011f){const _0x548c33=a103_0x4b13c1,_0x4cf618=menuError(_0x548c33(0x119),_0x548c33(0x147),_0x548c33(0x13e)+_0xbff8a1+_0x548c33(0x11a));return externalLinkCreateFailure(_0x4cf618,_0x4e9ce9,{'stage':'create-recovery','failed':_0x53011f,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':'failed',..._0x53011f,'lookupCommand':_0xbff8a1}});}async function readAndVerifyCreatedMenu(_0x3bb10a){const _0x268355=a103_0x4b13c1;let _0x3a6764;try{_0x3a6764=await fetchMenuSnapshot(_0x3bb10a['appCode'],_0x3bb10a[_0x268355(0x10b)]);}catch(_0x379533){const _0x473471=menuError(_0x268355(0x129),'Menu\x20'+_0x3bb10a[_0x268355(0x121)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x268355(0x13e)+_0x3bb10a[_0x268355(0x108)]+_0x268355(0x102));throw externalLinkCreateFailure(_0x473471,_0x3bb10a['plan'],{'stage':_0x268355(0x14a),'succeeded':[{'id':_0x3bb10a['createdId'],'created':!![]}],'failed':{'id':_0x3bb10a['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x3bb10a['afterPlan'],'id':_0x3bb10a[_0x268355(0x121)],'path':_0x3bb10a[_0x268355(0x152)]},'warnings':['Menu\x20'+_0x3bb10a[_0x268355(0x121)]+_0x268355(0x14d)],'verification':{'status':_0x268355(0x127),'targetId':_0x3bb10a[_0x268355(0x121)],'lookupCommand':_0x3bb10a[_0x268355(0x108)]}});}const _0x736f4=_0x3a6764[_0x268355(0x124)]['get'](_0x3bb10a[_0x268355(0x121)]);try{if(!_0x736f4)throw menuError(_0x268355(0x129),'Created\x20menu\x20'+_0x3bb10a[_0x268355(0x121)]+_0x268355(0x128),'Run\x20'+_0x3bb10a[_0x268355(0x108)]+_0x268355(0x102));verifyCreatedFact(_0x736f4,_0x3bb10a[_0x268355(0x121)],_0x3bb10a[_0x268355(0x13a)],_0x3bb10a[_0x268355(0x152)]);}catch(_0x5a1147){const _0x29f891=_0x5a1147 instanceof Error&&_0x268355(0x118)in _0x5a1147?_0x5a1147:menuError(_0x268355(0x129),_0x268355(0x162)+_0x3bb10a['createdId']+_0x268355(0x13f),_0x268355(0x13e)+_0x3bb10a[_0x268355(0x108)]+_0x268355(0x102));throw externalLinkCreateFailure(_0x29f891,_0x3bb10a['plan'],{'stage':_0x268355(0x14a),'succeeded':[{'id':_0x3bb10a[_0x268355(0x121)],'created':!![]}],'failed':{'id':_0x3bb10a[_0x268355(0x121)],'finalFactsConfirmed':![]},'after':_0x736f4??{..._0x3bb10a[_0x268355(0x13a)],'id':_0x3bb10a['createdId'],'path':_0x3bb10a[_0x268355(0x152)]},'warnings':[_0x268355(0x11c)+_0x3bb10a[_0x268355(0x121)]+_0x268355(0x153)],'verification':{'status':_0x268355(0x127),'targetId':_0x3bb10a[_0x268355(0x121)],'recovered':_0x3bb10a[_0x268355(0x14f)],'lookupCommand':_0x3bb10a[_0x268355(0x108)]}});}return{'snapshot':_0x3a6764,'fact':_0x736f4};}function a103_0x4042(_0x16b335,_0x379e46){_0x16b335=_0x16b335-0xee;const _0x285e51=a103_0x285e();let _0x4042ef=_0x285e51[_0x16b335];return _0x4042ef;}function verifyCreatedFact(_0x4016bf,_0x55bcb4,_0x5e39a5,_0x1391de){const _0x1bf576=a103_0x4b13c1;if(!Number[_0x1bf576(0x166)](_0x4016bf['id'])||_0x4016bf['id']<=0x0||_0x4016bf['id']!==_0x55bcb4)throw menuError(_0x1bf576(0x129),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x1bf576(0x150));const _0x7b02dc=[[_0x1bf576(0xf9),_0x4016bf[_0x1bf576(0xfd)],_0x5e39a5[_0x1bf576(0xfd)]],[_0x1bf576(0xf4),_0x4016bf[_0x1bf576(0xf4)],_0x5e39a5[_0x1bf576(0xf4)]],['label',_0x4016bf[_0x1bf576(0x174)],_0x5e39a5[_0x1bf576(0x174)]],[_0x1bf576(0x117),_0x4016bf[_0x1bf576(0x11e)],_0x5e39a5[_0x1bf576(0x11e)]],[_0x1bf576(0x136),_0x4016bf[_0x1bf576(0x135)],_0x5e39a5[_0x1bf576(0x135)]],[_0x1bf576(0xf6),_0x4016bf[_0x1bf576(0xf6)],_0x5e39a5[_0x1bf576(0xf6)]]];for(const [_0xf2daca,_0x3dc534,_0x26ebda]of _0x7b02dc){if(_0x3dc534!==_0x26ebda)throw menuError('menu_verification_failed',_0x1bf576(0x162)+_0x4016bf['id']+_0x1bf576(0x151)+_0xf2daca+'.',_0x1bf576(0x163));}if(!_0x4016bf[_0x1bf576(0x154)]['trim']()||_0x1391de!==null&&_0x4016bf['path']!==_0x1391de)throw menuError('menu_verification_failed',_0x1bf576(0x162)+_0x4016bf['id']+_0x1bf576(0xf2),_0x1bf576(0x163));}function creationSuccess(_0x2a0c44,_0x18f669,_0x37744c,_0x25ed64){const _0x4023bb=a103_0x4b13c1,_0x348d3a=mutationResult({..._0x2a0c44,'after':_0x37744c,'dryRun':![],'succeeded':[{'id':_0x37744c['id'],'created':!![],'recovered':_0x25ed64}],'verification':{'checkedBy':_0x4023bb(0x15b),'snapshotHash':_0x18f669['hash'],'targetId':_0x37744c['id'],'recovered':_0x25ed64,'path':_0x37744c[_0x4023bb(0x154)]}});return{'ok':!![],'message':_0x25ed64?'Recovered\x20created\x20external\x20menu\x20'+_0x37744c['id']+_0x4023bb(0x104):_0x4023bb(0x10a)+_0x37744c['id']+'.','data':{..._0x348d3a,'recovered':_0x25ed64}};}function externalLinkCreateFailure(_0x5a7ba9,_0x4fb603,_0x1c7880){const _0x28b031=a103_0x4b13c1;return menuFailure(safeMenuAddError(_0x5a7ba9),redactFailurePlan(_0x4fb603),{..._0x1c7880,'succeeded':_0x1c7880['succeeded']?.[_0x28b031(0x13d)](redactFailureRecord),'failed':_0x1c7880[_0x28b031(0x127)]?redactFailureRecord(_0x1c7880[_0x28b031(0x127)]):undefined,'verification':_0x1c7880[_0x28b031(0x14a)]?redactFailureRecord(_0x1c7880[_0x28b031(0x14a)]):undefined,'after':_0x1c7880['after']===undefined?undefined:redactFailureValue(_0x1c7880[_0x28b031(0x16a)])});}function redactFailurePlan(_0x49dd9d){const _0x54ef0e=a103_0x4b13c1;return{..._0x49dd9d,'selector':redactFailureRecord(_0x49dd9d[_0x54ef0e(0x114)]),'before':redactFailureValue(_0x49dd9d[_0x54ef0e(0x139)]),'after':redactFailureValue(_0x49dd9d[_0x54ef0e(0x16a)]),'plannedActions':_0x49dd9d[_0x54ef0e(0x16b)]?.[_0x54ef0e(0x13d)](_0x123cfa=>({..._0x123cfa,'body':redactFailureRecord(_0x123cfa['body'])})),'succeeded':_0x49dd9d['succeeded'][_0x54ef0e(0x13d)](redactFailureRecord),'failed':_0x49dd9d['failed'][_0x54ef0e(0x13d)](redactFailureRecord),'verification':_0x49dd9d[_0x54ef0e(0x14a)]?redactFailureRecord(_0x49dd9d[_0x54ef0e(0x14a)]):undefined};}function redactFailureRecord(_0x1cfef4){return redactFailureValue(_0x1cfef4);}function redactFailureValue(_0x49329a,_0x5a813a=''){const _0x568a94=a103_0x4b13c1,_0x2148da=_0x5a813a[_0x568a94(0xff)]()[_0x568a94(0x16d)](/[^a-z0-9]/g,'');if([_0x568a94(0x12c),_0x568a94(0x101),_0x568a94(0xf8),_0x568a94(0xfc)]['includes'](_0x2148da))return _0x568a94(0x123);if(Array[_0x568a94(0x126)](_0x49329a))return _0x49329a['map'](_0x1e9eaf=>redactFailureValue(_0x1e9eaf));if(_0x49329a&&typeof _0x49329a===_0x568a94(0x16c))return Object[_0x568a94(0x15e)](Object[_0x568a94(0x16e)](_0x49329a)[_0x568a94(0x13d)](([_0x474a7b,_0x4b76bd])=>[_0x474a7b,redactFailureValue(_0x4b76bd,_0x474a7b)]));return _0x49329a;}function safeMenuAddError(_0x64186a){const _0x524f1a=a103_0x4b13c1,_0x4e4a8e=_0x64186a instanceof CliError?_0x64186a['code']:_0x524f1a(0x132);switch(_0x4e4a8e){case'menu_state_drift':return menuError(_0x4e4a8e,_0x524f1a(0x12d),_0x524f1a(0x158));case _0x524f1a(0x145):return menuError(_0x4e4a8e,_0x524f1a(0x143),_0x524f1a(0x15f));case _0x524f1a(0x115):return menuError(_0x4e4a8e,_0x524f1a(0x156),_0x524f1a(0x170));case _0x524f1a(0x129):return menuError(_0x4e4a8e,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.',_0x524f1a(0x170));case _0x524f1a(0x119):return menuError(_0x4e4a8e,_0x524f1a(0x120),_0x524f1a(0x141));case _0x524f1a(0x132):case _0x524f1a(0x13c):case _0x524f1a(0xf7):case _0x524f1a(0x160):case _0x524f1a(0x14b):return menuError(_0x4e4a8e,_0x524f1a(0x12e),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0x524f1a(0x132),_0x524f1a(0x12e),_0x524f1a(0x137));}}function getFailureRecord(_0x1b37da){const _0x5db43c=a103_0x4b13c1;if(!(_0x1b37da instanceof Error)||!('data'in _0x1b37da))return undefined;const _0x16cfa8=_0x1b37da[_0x5db43c(0x155)];if(!_0x16cfa8||typeof _0x16cfa8!==_0x5db43c(0x16c))return undefined;const _0x47e0c5=_0x16cfa8[_0x5db43c(0x127)];if(!Array[_0x5db43c(0x126)](_0x47e0c5)||!_0x47e0c5[0x0]||typeof _0x47e0c5[0x0]!=='object')return undefined;return _0x47e0c5[0x0];}
|
|
1
|
+
const a103_0x24a2e7=a103_0x1e99;(function(_0x5f0df0,_0x10025e){const _0x449455=a103_0x1e99,_0x30e424=_0x5f0df0();while(!![]){try{const _0x7b7ac3=parseInt(_0x449455(0x1f9))/0x1*(-parseInt(_0x449455(0x21a))/0x2)+-parseInt(_0x449455(0x1c3))/0x3+parseInt(_0x449455(0x1f7))/0x4*(parseInt(_0x449455(0x1ab))/0x5)+-parseInt(_0x449455(0x1fe))/0x6*(parseInt(_0x449455(0x192))/0x7)+parseInt(_0x449455(0x1a0))/0x8+-parseInt(_0x449455(0x208))/0x9+parseInt(_0x449455(0x1ec))/0xa*(parseInt(_0x449455(0x1ed))/0xb);if(_0x7b7ac3===_0x10025e)break;else _0x30e424['push'](_0x30e424['shift']());}catch(_0x4259a7){_0x30e424['push'](_0x30e424['shift']());}}}(a103_0x4be3,0x693af));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a103_0x1e99(_0x145c61,_0x52a0f9){_0x145c61=_0x145c61-0x190;const _0x4be357=a103_0x4be3();let _0x1e9937=_0x4be357[_0x145c61];return _0x1e9937;}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':a103_0x24a2e7(0x1ba),'new-window':a103_0x24a2e7(0x1ad)};export function validateExternalMenuUrl(_0x5ca603){const _0x286709=a103_0x24a2e7,_0x4ff18f=_0x5ca603[_0x286709(0x1e4)]();let _0xda40c;try{_0xda40c=new URL(_0x4ff18f);}catch{throw menuError(_0x286709(0x1c0),_0x286709(0x1ce),_0x286709(0x1c6));}if(_0xda40c[_0x286709(0x1ca)]!==_0x286709(0x215))throw menuError(_0x286709(0x1bc),_0x286709(0x1fd),_0x286709(0x218));if(_0xda40c['username']||_0xda40c[_0x286709(0x1be)])throw menuError('menu_url_credentials_forbidden',_0x286709(0x200),_0x286709(0x1d1));return _0x4ff18f;}export const menuExternalLinkCreate={'service':a103_0x24a2e7(0x1a3),'command':a103_0x24a2e7(0x199),'description':a103_0x24a2e7(0x1e5),'risk':'write','structuredErrors':!![],'flags':[{'name':a103_0x24a2e7(0x1dc),'type':'string','required':!![],'description':a103_0x24a2e7(0x1fa)},{'name':'open-mode','type':a103_0x24a2e7(0x1c2),'required':!![],'enum':[a103_0x24a2e7(0x1b2),'new-window'],'description':a103_0x24a2e7(0x1dd)},{'name':'url','type':a103_0x24a2e7(0x1c2),'required':!![],'description':a103_0x24a2e7(0x1f3)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a103_0x24a2e7(0x1eb),'type':a103_0x24a2e7(0x1c8),'default':!![],'description':a103_0x24a2e7(0x1d8)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x550616){validateAddInput(_0x550616);},async 'dryRun'(_0x1cd8a1){const _0x544f1b=a103_0x24a2e7;validateAddInput(_0x1cd8a1);const {plan:_0x42a2bd}=await buildSafeAddPlan(_0x1cd8a1,!![]),_0x58474a=_0x42a2bd[_0x544f1b(0x1cd)],_0x545d88=createBody(_0x58474a);return menuDryRunResult(_0x42a2bd,{'method':'POST','url':_0x544f1b(0x1f0),'body':_0x545d88,'description':_0x544f1b(0x1a9)+JSON[_0x544f1b(0x1b5)](_0x58474a['label'])+_0x544f1b(0x213)+_0x1cd8a1['str'](_0x544f1b(0x1e3))+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x1b7dc8){const _0x19ef5d=a103_0x24a2e7;validateAddInput(_0x1b7dc8);const _0x8329f=await buildSafeAddPlan(_0x1b7dc8,![]),{plan:_0x9d7c41,snapshot:_0x1a12be}=_0x8329f,_0x34a62d=_0x9d7c41['after'],_0x63c74b=buildMenuLookupCommand(_0x1b7dc8['appCode']);await recheckAddSnapshot(_0x1b7dc8,_0x9d7c41);let _0x51b247;try{_0x51b247=await createMenuEntity(_0x1b7dc8[_0x19ef5d(0x1a6)],_0x1b7dc8[_0x19ef5d(0x21d)],createBody(_0x34a62d));}catch(_0xe7d756){const _0x3fcd73=mapMenuApiError(_0xe7d756,'create\x20external\x20menu');if(!isMenuResponseLoss(_0xe7d756)||_0x3fcd73[_0x19ef5d(0x1a4)]===_0x19ef5d(0x19c))throw externalLinkCreateFailure(_0x3fcd73,_0x9d7c41,{'stage':_0x19ef5d(0x1ef),'failed':{},'verification':{'status':_0x19ef5d(0x1c1),'lookupCommand':_0x63c74b}});return recoverAfterResponseLoss(_0x1b7dc8,_0x8329f,_0x63c74b);}const _0x55667c=Number(_0x51b247?.['id']),_0x456e39=typeof _0x51b247?.['path']===_0x19ef5d(0x1c2)?_0x51b247[_0x19ef5d(0x1a5)]:'';if(!Number['isSafeInteger'](_0x55667c)||_0x55667c<=0x0||!_0x456e39[_0x19ef5d(0x1e4)]()){const _0x451bce=menuError(_0x19ef5d(0x1b4),_0x19ef5d(0x207),_0x19ef5d(0x1e9)+_0x63c74b+_0x19ef5d(0x1e0));throw externalLinkCreateFailure(_0x451bce,_0x9d7c41,{'stage':_0x19ef5d(0x1fb),'succeeded':Number[_0x19ef5d(0x19d)](_0x55667c)&&_0x55667c>0x0?[{'id':_0x55667c,'created':!![]}]:[],'failed':{'createdId':Number[_0x19ef5d(0x19d)](_0x55667c)?_0x55667c:null,'generatedPathConfirmed':Boolean(_0x456e39[_0x19ef5d(0x1e4)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number[_0x19ef5d(0x19d)](_0x55667c)&&_0x55667c>0x0?{..._0x34a62d,'id':_0x55667c,'path':_0x456e39}:_0x34a62d,'verification':{'status':_0x19ef5d(0x1c1),'lookupCommand':_0x63c74b,...Number['isSafeInteger'](_0x55667c)&&_0x55667c>0x0?{'targetId':_0x55667c}:{}}});}const _0x2ce602=await readAndVerifyCreatedMenu({'appCode':_0x1b7dc8['appCode'],'cookie':_0x1b7dc8['cookie'],'plan':_0x9d7c41,'afterPlan':_0x34a62d,'createdId':_0x55667c,'expectedPath':_0x456e39,'lookupCommand':_0x63c74b,'recovered':![]});return creationSuccess(_0x9d7c41,_0x2ce602[_0x19ef5d(0x1d5)],_0x2ce602['fact'],![]);}};function validateAddInput(_0x5efac7){const _0x4d6c05=a103_0x24a2e7;if(!_0x5efac7[_0x4d6c05(0x1f1)](_0x4d6c05(0x1dc))['trim']())throw CliErrors[_0x4d6c05(0x1aa)](_0x4d6c05(0x1dc));resolveExternalMenuType(_0x5efac7),validateExternalMenuUrl(_0x5efac7[_0x4d6c05(0x1f1)]('url')),parseParentId(_0x5efac7,'parent-id'),validateSort(_0x5efac7);}function resolveExternalMenuType(_0x2e706b){const _0x3fd9e2=a103_0x24a2e7,_0x2263bc=_0x2e706b[_0x3fd9e2(0x1f1)](_0x3fd9e2(0x1e3))[_0x3fd9e2(0x1e4)]();if(!_0x2263bc)throw CliErrors['flagMissing']('open-mode');const _0x42d1a8=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x2263bc];if(!_0x42d1a8)throw menuError(_0x3fd9e2(0x1bf),_0x3fd9e2(0x1d2),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x42d1a8;}async function buildAddPlan(_0x403450,_0x227032){const _0x4a1706=a103_0x24a2e7,_0x2c6c5c=await fetchMutationSnapshot(_0x403450,_0x4a1706(0x1a2)),_0x59bbac=parseParentId(_0x403450,'parent-id')??null;if(_0x59bbac!=null)requireFolder(_0x2c6c5c,_0x59bbac);const _0x456fe0=validateSort(_0x403450),_0x517bba=_0x456fe0??nextSiblingSort(_0x2c6c5c,_0x59bbac,_0x4a1706(0x1a3)),_0x1007d2=_0x403450[_0x4a1706(0x1f1)](_0x4a1706(0x1dc))['trim'](),_0x361f33=resolveExternalMenuType(_0x403450),_0xb2ff9=validateExternalMenuUrl(_0x403450[_0x4a1706(0x1f1)]('url')),_0x15bdd3=Object[_0x4a1706(0x1b9)][_0x4a1706(0x190)][_0x4a1706(0x20e)](_0x403450[_0x4a1706(0x1f6)],_0x4a1706(0x1eb))?_0x403450[_0x4a1706(0x1f4)](_0x4a1706(0x1eb)):!![],_0xfbe2c4={'id':null,'parentId':_0x59bbac,'label':_0x1007d2,'path':'<platform-generated>','url':_0xb2ff9,'type':_0x361f33,'visible':_0x15bdd3,'sort':_0x517bba},_0x38cd45=buildMenuLookupCommand(_0x403450[_0x4a1706(0x1a6)]),_0x239bb1=mutationResult({'operation':_0x4a1706(0x1cc),'selector':{'parentId':_0x59bbac,'type':_0x361f33,'label':_0x1007d2,'url':_0xb2ff9},'before':null,'after':_0xfbe2c4,'dryRun':_0x227032,'backend':[{'method':_0x4a1706(0x214),'path':_0x4a1706(0x1f0)}],'plannedActions':[{'stage':'create-menu','method':_0x4a1706(0x214),'path':'/smartapi/menu/create','body':createBody(_0xfbe2c4)}],'snapshotHash':_0x2c6c5c['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x38cd45}});return{'plan':_0x239bb1,'snapshot':_0x2c6c5c};}async function buildSafeAddPlan(_0x47f329,_0x33b3cf){try{return await buildAddPlan(_0x47f329,_0x33b3cf);}catch(_0x43f56a){throw safeMenuAddError(_0x43f56a);}}async function recheckAddSnapshot(_0xaa71e9,_0x2afcd2){const _0x10b64f=a103_0x24a2e7;try{await recheckMutationSnapshot(_0xaa71e9,_0x2afcd2,_0x10b64f(0x1a2));}catch(_0x2258a9){const _0x288b87=getFailureRecord(_0x2258a9);throw externalLinkCreateFailure(_0x2258a9,_0x2afcd2,{'stage':_0x10b64f(0x19e),'failed':{..._0x288b87?.[_0x10b64f(0x19f)]?{'expectedSnapshotHash':_0x288b87[_0x10b64f(0x19f)]}:{},..._0x288b87?.[_0x10b64f(0x209)]?{'currentSnapshotHash':_0x288b87[_0x10b64f(0x209)]}:{}}});}}function createBody(_0xb7d27e){const _0x4dc85e=a103_0x24a2e7;return{'parentId':toApiParentId(_0xb7d27e[_0x4dc85e(0x21e)]),'label':String(_0xb7d27e[_0x4dc85e(0x1dc)]),'type':String(_0xb7d27e[_0x4dc85e(0x203)]),'url':String(_0xb7d27e[_0x4dc85e(0x1a7)]),'visible':Boolean(_0xb7d27e[_0x4dc85e(0x1eb)]),'sort':Number(_0xb7d27e[_0x4dc85e(0x205)]),'extend':{}};}function buildMenuLookupCommand(_0x2e75bd){const _0x2a32aa=a103_0x24a2e7,_0x104c1a='\x27'+_0x2e75bd['replace'](/'/g,_0x2a32aa(0x19b))+'\x27';return _0x2a32aa(0x1b3)+_0x104c1a+_0x2a32aa(0x1f8);}async function recoverAfterResponseLoss(_0x4eadf4,_0x1e9337,_0x1d6d61){const _0x2ac81d=a103_0x24a2e7,{plan:_0xf04a7,snapshot:_0x59e5c1}=_0x1e9337,_0x821bdc=_0xf04a7['after'];let _0x3dcefd;try{_0x3dcefd=await fetchMenuSnapshot(_0x4eadf4[_0x2ac81d(0x1a6)],_0x4eadf4['cookie']);}catch(_0x19a6b0){throw recoveryRequiredFailure(_0xf04a7,_0x1d6d61,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x9a1941=_0x3dcefd[_0x2ac81d(0x1c7)][_0x2ac81d(0x20f)](_0x432799=>_0x432799[_0x2ac81d(0x21e)]===_0x821bdc['parentId']&&_0x432799['type']===_0x821bdc[_0x2ac81d(0x203)]&&_0x432799[_0x2ac81d(0x1dc)]===_0x821bdc[_0x2ac81d(0x1dc)]&&_0x432799[_0x2ac81d(0x1a7)]===_0x821bdc[_0x2ac81d(0x1a7)]),_0x5444d3=_0x9a1941[_0x2ac81d(0x20f)](_0x112a53=>!_0x59e5c1[_0x2ac81d(0x1d0)][_0x2ac81d(0x1bb)](_0x112a53['id'])),_0x5f1f24=_0x9a1941[_0x2ac81d(0x20f)](_0x4a6b73=>_0x59e5c1[_0x2ac81d(0x1d0)]['has'](_0x4a6b73['id']));if(_0x9a1941[_0x2ac81d(0x1da)]!==0x1||_0x5444d3[_0x2ac81d(0x1da)]!==0x1)throw recoveryRequiredFailure(_0xf04a7,_0x1d6d61,{'matchCount':_0x9a1941[_0x2ac81d(0x1da)],'newMatchCount':_0x5444d3[_0x2ac81d(0x1da)],'preexistingMatchCount':_0x5f1f24['length']});const _0x318307=_0x5444d3[0x0];try{verifyCreatedFact(_0x318307,_0x318307['id'],_0x821bdc,null);}catch(_0x2c49bc){const _0x3a2359=_0x2c49bc instanceof Error&&_0x2ac81d(0x1a4)in _0x2c49bc?_0x2c49bc:menuError('menu_verification_failed','Recovered\x20menu\x20'+_0x318307['id']+'\x20could\x20not\x20be\x20verified.','Run\x20'+_0x1d6d61+_0x2ac81d(0x196));throw externalLinkCreateFailure(_0x3a2359,_0xf04a7,{'stage':_0x2ac81d(0x204),'succeeded':[{'id':_0x318307['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x318307['id'],'finalFactsConfirmed':![]},'after':_0x318307,'warnings':[_0x2ac81d(0x1f5)+_0x318307['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x2ac81d(0x1c1),'targetId':_0x318307['id'],'recovered':!![],'lookupCommand':_0x1d6d61}});}return creationSuccess(_0xf04a7,_0x3dcefd,_0x318307,!![]);}function a103_0x4be3(){const _0x4ec4fd=['appCode','url','create-recovery','Would\x20create\x20external\x20website\x20link\x20menu\x20','flagMissing','3616575EhdAvz','parent','link','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','menu_mutation_failed','menu_sort_overflow','createdId','embedded','rabetbase\x20menu\x20list\x20--appcode\x20','menu_create_response_invalid','stringify','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','plannedActions','prototype','iframe','has','menu_url_https_required','fromEntries','password','menu_open_mode_invalid','menu_url_invalid','failed','string','597807fPeOvi','recovered','\x20has\x20an\x20unexpected\x20','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','menus','boolean','entries','protocol','causemessage','add','after','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','byId','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','\x20failed\x20final\x20verification.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','snapshot','Created\x20external\x20menu\x20','toLowerCase','Whether\x20the\x20menu\x20is\x20visible','Created\x20menu\x20','length','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','label','How\x20to\x20open\x20the\x20external\x20website','rawerror','External\x20menu\x20creation\x20failed.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Recovered\x20created\x20external\x20menu\x20','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','open-mode','trim','Create\x20an\x20external\x20website\x20link\x20menu','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','visibility','menu_sort_invalid','Run\x20','selector','visible','530ENhZVH','103433TGCnZc','plan','create','/smartapi/menu/create','str','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','External\x20HTTPS\x20URL','bool','Menu\x20','rawFlags','4AbMEYe','\x20--format\x20compress','28KbMZFO','Menu\x20label','create-response-validation','isArray','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','6KYOhoy','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','readbackerror','menu_state_drift','type','verification','sort','map','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','1137798xiDzzZ','currentSnapshotHash','succeeded','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','includes','data','call','filter','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','expectedPath','menu\x20list','\x20with\x20','POST','https:','menu_create_recovery_required','lookupCommand','Provide\x20an\x20HTTPS\x20URL.','body','13868xjArOr','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','get','cookie','parentId','hasOwnProperty','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','2977562GFezDt','object','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','before','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','afterPlan','\x20has\x20an\x20unexpected\x20generated\x20path.','external-link-create','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','\x27\x5c\x27\x27','menu_permission_denied','isSafeInteger','pre-write-recheck','expectedSnapshotHash','1236464OZbxPy','menu_verification_failed','create\x20external\x20menu','menu','code','path'];a103_0x4be3=function(){return _0x4ec4fd;};return a103_0x4be3();}function recoveryRequiredFailure(_0xdbb054,_0xb34425,_0x4c799a){const _0x431fa6=a103_0x24a2e7,_0x2f819b=menuError('menu_create_recovery_required',_0x431fa6(0x20b),'Run\x20'+_0xb34425+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x2f819b,_0xdbb054,{'stage':_0x431fa6(0x1a8),'failed':_0x4c799a,'warnings':[_0x431fa6(0x1b6)],'verification':{'status':_0x431fa6(0x1c1),..._0x4c799a,'lookupCommand':_0xb34425}});}async function readAndVerifyCreatedMenu(_0x593bee){const _0x27e007=a103_0x24a2e7;let _0x50581f;try{_0x50581f=await fetchMenuSnapshot(_0x593bee[_0x27e007(0x1a6)],_0x593bee[_0x27e007(0x21d)]);}catch(_0x4ce838){const _0x159336=menuError(_0x27e007(0x1a1),_0x27e007(0x1f5)+_0x593bee[_0x27e007(0x1b1)]+_0x27e007(0x1db),_0x27e007(0x1e9)+_0x593bee['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x159336,_0x593bee[_0x27e007(0x1ee)],{'stage':_0x27e007(0x204),'succeeded':[{'id':_0x593bee[_0x27e007(0x1b1)],'created':!![]}],'failed':{'id':_0x593bee[_0x27e007(0x1b1)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x593bee['afterPlan'],'id':_0x593bee[_0x27e007(0x1b1)],'path':_0x593bee[_0x27e007(0x211)]},'warnings':[_0x27e007(0x1f5)+_0x593bee['createdId']+_0x27e007(0x1e6)],'verification':{'status':_0x27e007(0x1c1),'targetId':_0x593bee[_0x27e007(0x1b1)],'lookupCommand':_0x593bee[_0x27e007(0x217)]}});}const _0x3c47df=_0x50581f[_0x27e007(0x1d0)][_0x27e007(0x21c)](_0x593bee[_0x27e007(0x1b1)]);try{if(!_0x3c47df)throw menuError(_0x27e007(0x1a1),'Created\x20menu\x20'+_0x593bee[_0x27e007(0x1b1)]+_0x27e007(0x210),_0x27e007(0x1e9)+_0x593bee[_0x27e007(0x217)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x3c47df,_0x593bee[_0x27e007(0x1b1)],_0x593bee[_0x27e007(0x197)],_0x593bee[_0x27e007(0x211)]);}catch(_0x3904e0){const _0x3455f5=_0x3904e0 instanceof Error&&_0x27e007(0x1a4)in _0x3904e0?_0x3904e0:menuError('menu_verification_failed',_0x27e007(0x1d9)+_0x593bee[_0x27e007(0x1b1)]+_0x27e007(0x1d3),_0x27e007(0x1e9)+_0x593bee[_0x27e007(0x217)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x3455f5,_0x593bee[_0x27e007(0x1ee)],{'stage':_0x27e007(0x204),'succeeded':[{'id':_0x593bee['createdId'],'created':!![]}],'failed':{'id':_0x593bee[_0x27e007(0x1b1)],'finalFactsConfirmed':![]},'after':_0x3c47df??{..._0x593bee[_0x27e007(0x197)],'id':_0x593bee[_0x27e007(0x1b1)],'path':_0x593bee[_0x27e007(0x211)]},'warnings':['Menu\x20'+_0x593bee[_0x27e007(0x1b1)]+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x27e007(0x1c1),'targetId':_0x593bee[_0x27e007(0x1b1)],'recovered':_0x593bee[_0x27e007(0x1c4)],'lookupCommand':_0x593bee[_0x27e007(0x217)]}});}return{'snapshot':_0x50581f,'fact':_0x3c47df};}function verifyCreatedFact(_0x31f9ba,_0x3fc991,_0x207dab,_0x2bb349){const _0x5456df=a103_0x24a2e7;if(!Number[_0x5456df(0x19d)](_0x31f9ba['id'])||_0x31f9ba['id']<=0x0||_0x31f9ba['id']!==_0x3fc991)throw menuError(_0x5456df(0x1a1),_0x5456df(0x1b7),_0x5456df(0x1e2));const _0x2bd564=[[_0x5456df(0x1ac),_0x31f9ba[_0x5456df(0x21e)],_0x207dab['parentId']],['type',_0x31f9ba[_0x5456df(0x203)],_0x207dab[_0x5456df(0x203)]],[_0x5456df(0x1dc),_0x31f9ba['label'],_0x207dab[_0x5456df(0x1dc)]],['URL',_0x31f9ba[_0x5456df(0x1a7)],_0x207dab['url']],[_0x5456df(0x1e7),_0x31f9ba['visible'],_0x207dab['visible']],[_0x5456df(0x205),_0x31f9ba[_0x5456df(0x205)],_0x207dab[_0x5456df(0x205)]]];for(const [_0x2a8f13,_0x9f2a1b,_0x28a86e]of _0x2bd564){if(_0x9f2a1b!==_0x28a86e)throw menuError(_0x5456df(0x1a1),_0x5456df(0x1d9)+_0x31f9ba['id']+_0x5456df(0x1c5)+_0x2a8f13+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x31f9ba[_0x5456df(0x1a5)][_0x5456df(0x1e4)]()||_0x2bb349!==null&&_0x31f9ba[_0x5456df(0x1a5)]!==_0x2bb349)throw menuError(_0x5456df(0x1a1),_0x5456df(0x1d9)+_0x31f9ba['id']+_0x5456df(0x198),_0x5456df(0x191));}function creationSuccess(_0x98f24a,_0x3a54b7,_0x557c06,_0x5470b3){const _0x3c059d=a103_0x24a2e7,_0x1cf2ee=mutationResult({..._0x98f24a,'after':_0x557c06,'dryRun':![],'succeeded':[{'id':_0x557c06['id'],'created':!![],'recovered':_0x5470b3}],'verification':{'checkedBy':_0x3c059d(0x212),'snapshotHash':_0x3a54b7['hash'],'targetId':_0x557c06['id'],'recovered':_0x5470b3,'path':_0x557c06[_0x3c059d(0x1a5)]}});return{'ok':!![],'message':_0x5470b3?_0x3c059d(0x1e1)+_0x557c06['id']+'\x20after\x20response\x20loss.':_0x3c059d(0x1d6)+_0x557c06['id']+'.','data':{..._0x1cf2ee,'recovered':_0x5470b3}};}function externalLinkCreateFailure(_0xd0aeb,_0x210cab,_0x361ffa){const _0x4b9132=a103_0x24a2e7;return menuFailure(safeMenuAddError(_0xd0aeb),redactFailurePlan(_0x210cab),{..._0x361ffa,'succeeded':_0x361ffa[_0x4b9132(0x20a)]?.[_0x4b9132(0x206)](redactFailureRecord),'failed':_0x361ffa[_0x4b9132(0x1c1)]?redactFailureRecord(_0x361ffa[_0x4b9132(0x1c1)]):undefined,'verification':_0x361ffa[_0x4b9132(0x204)]?redactFailureRecord(_0x361ffa['verification']):undefined,'after':_0x361ffa[_0x4b9132(0x1cd)]===undefined?undefined:redactFailureValue(_0x361ffa['after'])});}function redactFailurePlan(_0x58bea2){const _0x35b1de=a103_0x24a2e7;return{..._0x58bea2,'selector':redactFailureRecord(_0x58bea2[_0x35b1de(0x1ea)]),'before':redactFailureValue(_0x58bea2[_0x35b1de(0x195)]),'after':redactFailureValue(_0x58bea2[_0x35b1de(0x1cd)]),'plannedActions':_0x58bea2[_0x35b1de(0x1b8)]?.[_0x35b1de(0x206)](_0x32a9ed=>({..._0x32a9ed,'body':redactFailureRecord(_0x32a9ed[_0x35b1de(0x219)])})),'succeeded':_0x58bea2[_0x35b1de(0x20a)]['map'](redactFailureRecord),'failed':_0x58bea2[_0x35b1de(0x1c1)][_0x35b1de(0x206)](redactFailureRecord),'verification':_0x58bea2[_0x35b1de(0x204)]?redactFailureRecord(_0x58bea2['verification']):undefined};}function redactFailureRecord(_0x15a124){return redactFailureValue(_0x15a124);}function redactFailureValue(_0xd3fe4f,_0x4a63cc=''){const _0x233079=a103_0x24a2e7,_0x240542=_0x4a63cc[_0x233079(0x1d7)]()['replace'](/[^a-z0-9]/g,'');if(['cause',_0x233079(0x1cb),_0x233079(0x201),_0x233079(0x1de)][_0x233079(0x20c)](_0x240542))return'<redacted>';if(Array[_0x233079(0x1fc)](_0xd3fe4f))return _0xd3fe4f[_0x233079(0x206)](_0x2b4019=>redactFailureValue(_0x2b4019));if(_0xd3fe4f&&typeof _0xd3fe4f===_0x233079(0x193))return Object[_0x233079(0x1bd)](Object[_0x233079(0x1c9)](_0xd3fe4f)['map'](([_0x5837bd,_0x1cab03])=>[_0x5837bd,redactFailureValue(_0x1cab03,_0x5837bd)]));return _0xd3fe4f;}function safeMenuAddError(_0x5e6a86){const _0x54ea92=a103_0x24a2e7,_0x377693=_0x5e6a86 instanceof CliError?_0x5e6a86[_0x54ea92(0x1a4)]:_0x54ea92(0x1af);switch(_0x377693){case _0x54ea92(0x202):return menuError(_0x377693,_0x54ea92(0x21b),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.');case'menu_permission_denied':return menuError(_0x377693,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.',_0x54ea92(0x194));case _0x54ea92(0x1b4):return menuError(_0x377693,_0x54ea92(0x1ae),_0x54ea92(0x19a));case'menu_verification_failed':return menuError(_0x377693,_0x54ea92(0x1ff),_0x54ea92(0x19a));case _0x54ea92(0x216):return menuError(_0x377693,_0x54ea92(0x1cf),_0x54ea92(0x1d4));case _0x54ea92(0x1af):case'menu_not_found':case'menu_parent_not_folder':case _0x54ea92(0x1e8):case _0x54ea92(0x1b0):return menuError(_0x377693,_0x54ea92(0x1df),_0x54ea92(0x1f2));default:return menuError(_0x54ea92(0x1af),_0x54ea92(0x1df),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x2ac17b){const _0x1bae35=a103_0x24a2e7;if(!(_0x2ac17b instanceof Error)||!(_0x1bae35(0x20d)in _0x2ac17b))return undefined;const _0x1247e6=_0x2ac17b[_0x1bae35(0x20d)];if(!_0x1247e6||typeof _0x1247e6!==_0x1bae35(0x193))return undefined;const _0x46ff84=_0x1247e6[_0x1bae35(0x1c1)];if(!Array[_0x1bae35(0x1fc)](_0x46ff84)||!_0x46ff84[0x0]||typeof _0x46ff84[0x0]!==_0x1bae35(0x193))return undefined;return _0x46ff84[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a104_0x2953(_0x22ea22,_0x47ba1f){_0x22ea22=_0x22ea22-0x83;const _0x368f56=a104_0x368f();let _0x295349=_0x368f56[_0x22ea22];return _0x295349;}const a104_0xcb1c43=a104_0x2953;(function(_0x182673,_0x217b6e){const _0x26f234=a104_0x2953,_0x35cbdb=_0x182673();while(!![]){try{const _0x19ed59=parseInt(_0x26f234(0xce))/0x1*(-parseInt(_0x26f234(0x8c))/0x2)+-parseInt(_0x26f234(0xb1))/0x3+-parseInt(_0x26f234(0xae))/0x4+parseInt(_0x26f234(0xa0))/0x5+-parseInt(_0x26f234(0xc4))/0x6*(-parseInt(_0x26f234(0x8e))/0x7)+parseInt(_0x26f234(0xc2))/0x8+parseInt(_0x26f234(0xc9))/0x9;if(_0x19ed59===_0x217b6e)break;else _0x35cbdb['push'](_0x35cbdb['shift']());}catch(_0x23ec1f){_0x35cbdb['push'](_0x35cbdb['shift']());}}}(a104_0x368f,0x85fc2));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a104_0xcb1c43(0x93),'path':a104_0xcb1c43(0x8b)}];export const menuExternalLinkUpdate={'service':'menu','command':'external-link-update','description':a104_0xcb1c43(0x8f),'risk':a104_0xcb1c43(0x92),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a104_0xcb1c43(0xbb),'type':a104_0xcb1c43(0x8a),'required':!![],'description':a104_0xcb1c43(0xab)},{'name':a104_0xcb1c43(0xc1),'type':a104_0xcb1c43(0x8a),'required':!![],'description':a104_0xcb1c43(0xb3)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2754d2){validateInput(_0x2754d2),requireExplicitYes(_0x2754d2);},async 'dryRun'(_0x57f3db){const _0x17af86=a104_0xcb1c43;validateInput(_0x57f3db);const _0x4a2ca6=await buildPlan(_0x57f3db,!![]);return menuDryRunResult(_0x4a2ca6['plan'],{'method':_0x17af86(0x93),'url':'/smartapi/menu/update','body':_0x4a2ca6[_0x17af86(0x97)],'description':_0x17af86(0xa2)+_0x4a2ca6[_0x17af86(0x97)]['id']+'.'});},async 'execute'(_0x177b02){const _0x45dc04=a104_0xcb1c43;validateInput(_0x177b02),requireExplicitYes(_0x177b02);const _0x525c45=await buildPlan(_0x177b02,![]),{plan:_0x166215,body:_0xef1de4,before:_0x5076ed,noChanges:_0x3f39a9}=_0x525c45,_0x8ccf6d=_0xef1de4['id'];if(_0x3f39a9)return updateSuccess(_0x166215,_0x525c45[_0x45dc04(0xb9)],_0x5076ed,!![],![]);await recheckMutationSnapshot(_0x177b02,_0x166215,_0x45dc04(0xbe),_0x8ccf6d);try{await updateMenuEntity(_0x177b02[_0x45dc04(0xb2)],_0x177b02[_0x45dc04(0x87)],{'id':_0xef1de4['id'],'url':_0xef1de4[_0x45dc04(0xbb)]});}catch(_0x184a1){const _0x3131dd=mapMenuApiError(_0x184a1,_0x45dc04(0xbe),_0x8ccf6d);if(isMenuResponseLoss(_0x184a1)&&_0x3131dd['code']!==_0x45dc04(0xa3))return recoverAfterResponseLoss(_0x177b02,_0x525c45);throw menuFailure(_0x3131dd,_0x166215,{'stage':_0x45dc04(0x96),'failed':{'id':_0x8ccf6d},'warnings':[_0x45dc04(0xb7)],'verification':{'status':'failed','targetId':_0x8ccf6d,'lookupCommand':buildLookupCommand(_0x177b02[_0x45dc04(0xb2)])}});}let _0x32abca,_0x3cfa89;try{_0x32abca=await fetchMenuSnapshot(_0x177b02[_0x45dc04(0xb2)],_0x177b02[_0x45dc04(0x87)]),_0x3cfa89=requireMenu(_0x32abca,_0x8ccf6d),verifyUpdatedFact(_0x5076ed,_0x3cfa89,_0xef1de4['url']);}catch(_0x4262c2){const _0x54691f=describeMenuErrorCause(_0x4262c2,_0x45dc04(0x85),_0x8ccf6d),_0x154c7c=asVerificationError(_0x4262c2,_0x45dc04(0xa7)+_0x8ccf6d+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x154c7c,_0x166215,{'stage':_0x45dc04(0xa4),'succeeded':[{'id':_0x8ccf6d,'updateRequested':!![]}],'failed':{'id':_0x8ccf6d,'requestedStateConfirmed':![],..._0x54691f},'warnings':[_0x45dc04(0xac)],'verification':{'status':_0x45dc04(0xb0),'targetId':_0x8ccf6d,'lookupCommand':buildLookupCommand(_0x177b02[_0x45dc04(0xb2)])}});}return updateSuccess(_0x166215,_0x32abca,_0x3cfa89,![],![]);}};function validateInput(_0x4b2e48){const _0x2fabf9=a104_0xcb1c43;validateExactId(_0x4b2e48),requiredUrl(_0x4b2e48,'url'),requiredExpectedUrl(_0x4b2e48),parseParentId(_0x4b2e48,_0x2fabf9(0xb5),{'required':!![]});}function requiredUrl(_0x53a49e,_0x174ec1){const _0x4f104b=a104_0xcb1c43;if(!hasFlag(_0x53a49e,_0x174ec1)||!_0x53a49e[_0x4f104b(0xca)](_0x174ec1)[_0x4f104b(0x9e)]())throw CliErrors[_0x4f104b(0xaf)](_0x174ec1);return validateExternalMenuUrl(_0x53a49e[_0x4f104b(0xca)](_0x174ec1));}function requiredExpectedUrl(_0x35d4b8){const _0x4a0c09=a104_0xcb1c43;if(!hasFlag(_0x35d4b8,_0x4a0c09(0xc1))||!_0x35d4b8[_0x4a0c09(0xca)](_0x4a0c09(0xc1))[_0x4a0c09(0x9e)]())throw CliErrors['flagMissing'](_0x4a0c09(0xc1));return _0x35d4b8[_0x4a0c09(0xca)](_0x4a0c09(0xc1))[_0x4a0c09(0x9e)]();}async function buildPlan(_0xa61075,_0x10f0b0){const _0x25995a=a104_0xcb1c43,_0x4323f0=validateExactId(_0xa61075),_0x15ff33=requiredUrl(_0xa61075,'url'),_0x1d01d2=requiredExpectedUrl(_0xa61075),_0xb7e9b5=parseParentId(_0xa61075,_0x25995a(0xb5),{'required':!![]}),_0x615362=await fetchMutationSnapshot(_0xa61075,'update\x20external\x20menu\x20URL',_0x4323f0),_0x47d772=requireMenu(_0x615362,_0x4323f0);assertExternalLinkLeaf(_0x47d772);if(_0x47d772['parentId']!==_0xb7e9b5)throw menuError(_0x25995a(0xba),_0x25995a(0x8d)+_0x4323f0+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0xb7e9b5)+_0x25995a(0xaa)+formatParent(_0x47d772[_0x25995a(0xc0)])+'.',_0x25995a(0xa9));const _0xc53440=_0x47d772[_0x25995a(0xbb)]===_0x15ff33;if(!_0xc53440&&_0x47d772['url']!==_0x1d01d2)throw menuError(_0x25995a(0xba),_0x25995a(0x8d)+_0x4323f0+_0x25995a(0xad),_0x25995a(0xbf));const _0x3c2371={'id':_0x4323f0,'appCode':_0xa61075[_0x25995a(0xb2)],'url':_0x15ff33},_0x5416c1={..._0x47d772,'url':_0x15ff33};return{'body':_0x3c2371,'before':_0x47d772,'noChanges':_0xc53440,'snapshot':_0x615362,'plan':mutationResult({'operation':_0x25995a(0xa8),'selector':{'id':_0x4323f0},'before':_0x47d772,'after':_0x5416c1,'dryRun':_0x10f0b0,'backend':[...BACKEND],'plannedActions':_0xc53440?[]:[{'stage':_0x25995a(0xc5),'method':_0x25995a(0x93),'path':_0x25995a(0x8b),'body':_0x3c2371}],'snapshotHash':_0x615362[_0x25995a(0xcd)],'warnings':_0xc53440?[_0x25995a(0xcc)]:[]})};}function assertExternalLinkLeaf(_0x5dafe1){const _0x289b22=a104_0xcb1c43;if(_0x5dafe1[_0x289b22(0x98)]!==_0x289b22(0xbd)&&_0x5dafe1['type']!=='link')throw menuError('menu_external_link_type_required',_0x289b22(0x8d)+_0x5dafe1['id']+_0x289b22(0x94)+(_0x5dafe1['type']||_0x289b22(0xa6))+_0x289b22(0x9b),'Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x5dafe1[_0x289b22(0xc3)]!==0x0)throw menuError(_0x289b22(0xb4),'Menu\x20'+_0x5dafe1['id']+_0x289b22(0xb6)+_0x5dafe1[_0x289b22(0xc3)]+_0x289b22(0x88),_0x289b22(0x99));if(!_0x5dafe1[_0x289b22(0xcf)][_0x289b22(0x9e)]())throw menuError(_0x289b22(0xc6),_0x289b22(0x8d)+_0x5dafe1['id']+'\x20has\x20an\x20empty\x20platform\x20path.','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x3f8ba9,_0x352aa5,_0x2df4b0){const _0x1dd2f6=a104_0xcb1c43;assertExternalLinkLeaf(_0x352aa5);const _0x495833=[['id',_0x352aa5['id'],_0x3f8ba9['id']],[_0x1dd2f6(0xcb),_0x352aa5[_0x1dd2f6(0xcb)],_0x3f8ba9[_0x1dd2f6(0xcb)]],[_0x1dd2f6(0x98),_0x352aa5[_0x1dd2f6(0x98)],_0x3f8ba9[_0x1dd2f6(0x98)]],[_0x1dd2f6(0xcf),_0x352aa5[_0x1dd2f6(0xcf)],_0x3f8ba9[_0x1dd2f6(0xcf)]],[_0x1dd2f6(0xc0),_0x352aa5['parentId'],_0x3f8ba9['parentId']],[_0x1dd2f6(0xc8),_0x352aa5['sort'],_0x3f8ba9[_0x1dd2f6(0xc8)]],[_0x1dd2f6(0xd1),_0x352aa5[_0x1dd2f6(0xd1)],_0x3f8ba9[_0x1dd2f6(0xd1)]]];for(const [_0x59638e,_0x5c2cee,_0x49bd3d]of _0x495833){assertVerified(_0x5c2cee===_0x49bd3d,_0x1dd2f6(0x8d)+_0x3f8ba9['id']+'\x20'+_0x59638e+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x352aa5[_0x1dd2f6(0xbb)]===_0x2df4b0,_0x1dd2f6(0x8d)+_0x3f8ba9['id']+_0x1dd2f6(0x9c));}function a104_0x368f(){const _0x45c7cc=['menu_external_link_not_leaf','expect-parent-id','\x20has\x20','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','requestedUrlObserved','snapshot','menu_state_drift','url','readbackFailed','iframe','update\x20external\x20menu\x20URL','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','parentId','expect-url','5467768oZEQaq','childrenCount','282meznnw','update-external-link-url','menu_external_link_path_missing','\x20--format\x20compress','sort','3176019MMfvsJ','str','label','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','hash','1HUMhLV','path','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','visible','\x27\x5c\x27\x27','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','\x20could\x20not\x20be\x20verified\x20safely','verify\x20external\x20menu\x20URL\x20update','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','cookie','\x20direct\x20child\x20menu(s).','byId','string','/smartapi/menu/update','71686EpiLpt','Menu\x20','61628owwTXf','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','update-recovery','high-risk-write','POST','\x20is\x20type\x20\x22','get','update','body','type','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','after','\x22,\x20not\x20iframe\x20or\x20link.','\x20URL\x20update\x20did\x20not\x20take\x20effect.','replace','trim','Updated\x20external\x20URL\x20for\x20menu\x20','304310sBOImh','Run\x20','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','menu_permission_denied','verification','\x20already\x20matches\x20the\x20requested\x20URL.','unknown','Update\x20request\x20for\x20menu\x20','external-link-update','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.',',\x20current\x20','New\x20external\x20HTTPS\x20URL','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','2848636cqcqiN','flagMissing','failed','642624OnMmsS','appCode','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'];a104_0x368f=function(){return _0x45c7cc;};return a104_0x368f();}function updateSuccess(_0x4ee049,_0xcebd5e,_0x3820de,_0x5e2e3a,_0xfbc57a){const _0xda769c=a104_0xcb1c43,_0x154ca8=_0x3820de['id'],_0xd7a0c9=mutationResult({..._0x4ee049,'after':_0x3820de,'dryRun':![],'succeeded':[{'id':_0x154ca8,'updated':!_0x5e2e3a,'skipped':_0x5e2e3a,'recovered':_0xfbc57a}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0xcebd5e[_0xda769c(0xcd)],'targetId':_0x154ca8,'matchesRequestedState':!![],'recovered':_0xfbc57a}});return{'ok':!![],'message':_0xfbc57a?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x154ca8+'.':_0x5e2e3a?_0xda769c(0x8d)+_0x154ca8+_0xda769c(0xa5):_0xda769c(0x9f)+_0x154ca8+'.','data':{..._0xd7a0c9,'recovered':_0xfbc57a}};}async function recoverAfterResponseLoss(_0x50db04,_0x2fdab1){const _0x43eaf6=a104_0xcb1c43,{plan:_0x3a62fa,before:_0xa28b88,body:_0x44e982}=_0x2fdab1;let _0x21104c;try{_0x21104c=await fetchMenuSnapshot(_0x50db04[_0x43eaf6(0xb2)],_0x50db04[_0x43eaf6(0x87)]);}catch{throw recoveryRequired(_0x3a62fa,_0x50db04[_0x43eaf6(0xb2)],{'id':_0x44e982['id'],'readbackFailed':!![]});}const _0x5f412d=_0x21104c[_0x43eaf6(0x89)][_0x43eaf6(0x95)](_0x44e982['id']);if(!_0x5f412d||_0x5f412d[_0x43eaf6(0xbb)]!==_0x44e982[_0x43eaf6(0xbb)])throw recoveryRequired(_0x3a62fa,_0x50db04[_0x43eaf6(0xb2)],{'id':_0x44e982['id'],'requestedUrlObserved':![],'after':_0x5f412d??null});try{verifyUpdatedFact(_0xa28b88,_0x5f412d,_0x44e982[_0x43eaf6(0xbb)]);}catch(_0x29cd93){const _0x49e17e=asVerificationError(_0x29cd93,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x44e982['id']+_0x43eaf6(0x84));throw menuFailure(_0x49e17e,_0x3a62fa,{'stage':_0x43eaf6(0x91),'succeeded':[{'id':_0x44e982['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x44e982['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x5f412d,'warnings':[_0x43eaf6(0xd0)],'verification':{'status':'failed','targetId':_0x44e982['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x50db04[_0x43eaf6(0xb2)])}});}return updateSuccess(_0x3a62fa,_0x21104c,_0x5f412d,![],!![]);}function recoveryRequired(_0x2911c5,_0x1ed35d,_0x4f680a){const _0x5dd4e8=a104_0xcb1c43,_0x2a51f3=menuError('menu_update_recovery_required',_0x5dd4e8(0x83),_0x5dd4e8(0xa1)+buildLookupCommand(_0x1ed35d)+_0x5dd4e8(0x86));return menuFailure(_0x2a51f3,_0x2911c5,{'stage':'update-recovery','failed':{'id':_0x4f680a['id'],..._0x4f680a[_0x5dd4e8(0xb8)]===undefined?{}:{'requestedUrlObserved':_0x4f680a['requestedUrlObserved']},..._0x4f680a[_0x5dd4e8(0xbc)]?{'readbackFailed':!![]}:{}},'after':_0x4f680a[_0x5dd4e8(0x9a)],'warnings':[_0x5dd4e8(0x90)],'verification':{'status':_0x5dd4e8(0xb0),'targetId':_0x4f680a['id'],..._0x4f680a[_0x5dd4e8(0xb8)]===undefined?{}:{'requestedUrlObserved':_0x4f680a[_0x5dd4e8(0xb8)]},..._0x4f680a[_0x5dd4e8(0xbc)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x1ed35d)}});}function buildLookupCommand(_0x4b72f8){const _0x443fca=a104_0xcb1c43,_0x55b2d4='\x27'+_0x4b72f8[_0x443fca(0x9d)](/'/g,_0x443fca(0xd2))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x55b2d4+_0x443fca(0xc7);}
|
|
1
|
+
const a104_0x2ce934=a104_0x1a7b;(function(_0x37494b,_0x47e3be){const _0x228318=a104_0x1a7b,_0x449a0f=_0x37494b();while(!![]){try{const _0x320815=parseInt(_0x228318(0x167))/0x1+parseInt(_0x228318(0x172))/0x2*(parseInt(_0x228318(0x152))/0x3)+parseInt(_0x228318(0x17b))/0x4+parseInt(_0x228318(0x175))/0x5*(parseInt(_0x228318(0x190))/0x6)+parseInt(_0x228318(0x191))/0x7*(parseInt(_0x228318(0x17a))/0x8)+parseInt(_0x228318(0x18c))/0x9+-parseInt(_0x228318(0x171))/0xa;if(_0x320815===_0x47e3be)break;else _0x449a0f['push'](_0x449a0f['shift']());}catch(_0x1edc4c){_0x449a0f['push'](_0x449a0f['shift']());}}}(a104_0x5d2a,0x923eb));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a104_0x2ce934(0x19d),'path':a104_0x2ce934(0x166)}];export const menuExternalLinkUpdate={'service':a104_0x2ce934(0x182),'command':a104_0x2ce934(0x187),'description':a104_0x2ce934(0x168),'risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a104_0x2ce934(0x16b),'type':a104_0x2ce934(0x194),'required':!![],'description':a104_0x2ce934(0x15a)},{'name':'expect-url','type':a104_0x2ce934(0x194),'required':!![],'description':a104_0x2ce934(0x18f)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x53699d){validateInput(_0x53699d),requireExplicitYes(_0x53699d);},async 'dryRun'(_0x495806){const _0x1056c0=a104_0x2ce934;validateInput(_0x495806);const _0x4ffb84=await buildPlan(_0x495806,!![]);return menuDryRunResult(_0x4ffb84[_0x1056c0(0x177)],{'method':_0x1056c0(0x19d),'url':_0x1056c0(0x166),'body':_0x4ffb84[_0x1056c0(0x19f)],'description':_0x1056c0(0x15f)+_0x4ffb84[_0x1056c0(0x19f)]['id']+'.'});},async 'execute'(_0x778b4c){const _0x2ff6a3=a104_0x2ce934;validateInput(_0x778b4c),requireExplicitYes(_0x778b4c);const _0x42d60f=await buildPlan(_0x778b4c,![]),{plan:_0x4b7f74,body:_0x563cf3,before:_0x222ecb,noChanges:_0x7dfdc4}=_0x42d60f,_0xd6f528=_0x563cf3['id'];if(_0x7dfdc4)return updateSuccess(_0x4b7f74,_0x42d60f['snapshot'],_0x222ecb,!![],![]);await recheckMutationSnapshot(_0x778b4c,_0x4b7f74,_0x2ff6a3(0x160),_0xd6f528);try{await updateMenuEntity(_0x778b4c[_0x2ff6a3(0x188)],_0x778b4c[_0x2ff6a3(0x198)],{'id':_0x563cf3['id'],'url':_0x563cf3['url']});}catch(_0x2d16df){const _0x1f7496=mapMenuApiError(_0x2d16df,_0x2ff6a3(0x160),_0xd6f528);if(isMenuResponseLoss(_0x2d16df)&&_0x1f7496[_0x2ff6a3(0x189)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x778b4c,_0x42d60f);throw menuFailure(_0x1f7496,_0x4b7f74,{'stage':_0x2ff6a3(0x161),'failed':{'id':_0xd6f528},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0xd6f528,'lookupCommand':buildLookupCommand(_0x778b4c[_0x2ff6a3(0x188)])}});}let _0x318384,_0x458a1a;try{_0x318384=await fetchMenuSnapshot(_0x778b4c[_0x2ff6a3(0x188)],_0x778b4c[_0x2ff6a3(0x198)]),_0x458a1a=requireMenu(_0x318384,_0xd6f528),verifyUpdatedFact(_0x222ecb,_0x458a1a,_0x563cf3[_0x2ff6a3(0x16b)]);}catch(_0x23a227){const _0x1dc6dc=describeMenuErrorCause(_0x23a227,_0x2ff6a3(0x16a),_0xd6f528),_0x3526cc=asVerificationError(_0x23a227,_0x2ff6a3(0x195)+_0xd6f528+_0x2ff6a3(0x174));throw menuFailure(_0x3526cc,_0x4b7f74,{'stage':_0x2ff6a3(0x183),'succeeded':[{'id':_0xd6f528,'updateRequested':!![]}],'failed':{'id':_0xd6f528,'requestedStateConfirmed':![],..._0x1dc6dc},'warnings':[_0x2ff6a3(0x181)],'verification':{'status':_0x2ff6a3(0x173),'targetId':_0xd6f528,'lookupCommand':buildLookupCommand(_0x778b4c['appCode'])}});}return updateSuccess(_0x4b7f74,_0x318384,_0x458a1a,![],![]);}};function validateInput(_0x5860e9){const _0x485201=a104_0x2ce934;validateExactId(_0x5860e9),requiredUrl(_0x5860e9,_0x485201(0x16b)),requiredExpectedUrl(_0x5860e9),parseParentId(_0x5860e9,_0x485201(0x192),{'required':!![]});}function requiredUrl(_0x2da712,_0x196b27){const _0x12f56c=a104_0x2ce934;if(!hasFlag(_0x2da712,_0x196b27)||!_0x2da712[_0x12f56c(0x18b)](_0x196b27)[_0x12f56c(0x19c)]())throw CliErrors[_0x12f56c(0x178)](_0x196b27);return validateExternalMenuUrl(_0x2da712[_0x12f56c(0x18b)](_0x196b27));}function requiredExpectedUrl(_0x20c746){const _0x480720=a104_0x2ce934;if(!hasFlag(_0x20c746,'expect-url')||!_0x20c746[_0x480720(0x18b)]('expect-url')[_0x480720(0x19c)]())throw CliErrors['flagMissing'](_0x480720(0x169));return _0x20c746['str'](_0x480720(0x169))[_0x480720(0x19c)]();}function a104_0x1a7b(_0xf756ea,_0x6fec8d){_0xf756ea=_0xf756ea-0x150;const _0x5d2aa3=a104_0x5d2a();let _0x1a7b7e=_0x5d2aa3[_0xf756ea];return _0x1a7b7e;}async function buildPlan(_0x26b89b,_0x18975c){const _0x238c87=a104_0x2ce934,_0xa5454=validateExactId(_0x26b89b),_0x4e2db0=requiredUrl(_0x26b89b,_0x238c87(0x16b)),_0x266432=requiredExpectedUrl(_0x26b89b),_0x4406cb=parseParentId(_0x26b89b,'expect-parent-id',{'required':!![]}),_0x2bfabb=await fetchMutationSnapshot(_0x26b89b,'update\x20external\x20menu\x20URL',_0xa5454),_0x1bc7a=requireMenu(_0x2bfabb,_0xa5454);assertExternalLinkLeaf(_0x1bc7a);if(_0x1bc7a[_0x238c87(0x196)]!==_0x4406cb)throw menuError('menu_state_drift',_0x238c87(0x180)+_0xa5454+_0x238c87(0x155)+formatParent(_0x4406cb)+_0x238c87(0x151)+formatParent(_0x1bc7a[_0x238c87(0x196)])+'.',_0x238c87(0x154));const _0x5e575e=_0x1bc7a[_0x238c87(0x16b)]===_0x4e2db0;if(!_0x5e575e&&_0x1bc7a[_0x238c87(0x16b)]!==_0x266432)throw menuError(_0x238c87(0x17f),'Menu\x20'+_0xa5454+_0x238c87(0x19b),_0x238c87(0x16f));const _0x9bf97c={'id':_0xa5454,'appCode':_0x26b89b[_0x238c87(0x188)],'url':_0x4e2db0},_0x42b31f={..._0x1bc7a,'url':_0x4e2db0};return{'body':_0x9bf97c,'before':_0x1bc7a,'noChanges':_0x5e575e,'snapshot':_0x2bfabb,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0xa5454},'before':_0x1bc7a,'after':_0x42b31f,'dryRun':_0x18975c,'backend':[...BACKEND],'plannedActions':_0x5e575e?[]:[{'stage':_0x238c87(0x18a),'method':_0x238c87(0x19d),'path':'/smartapi/menu/update','body':_0x9bf97c}],'snapshotHash':_0x2bfabb[_0x238c87(0x17e)],'warnings':_0x5e575e?[_0x238c87(0x185)]:[]})};}function assertExternalLinkLeaf(_0xb668ba){const _0x3b5133=a104_0x2ce934;if(_0xb668ba[_0x3b5133(0x165)]!==_0x3b5133(0x170)&&_0xb668ba[_0x3b5133(0x165)]!==_0x3b5133(0x162))throw menuError('menu_external_link_type_required',_0x3b5133(0x180)+_0xb668ba['id']+_0x3b5133(0x18e)+(_0xb668ba[_0x3b5133(0x165)]||_0x3b5133(0x184))+_0x3b5133(0x176),_0x3b5133(0x163));if(_0xb668ba[_0x3b5133(0x150)]!==0x0)throw menuError(_0x3b5133(0x15b),'Menu\x20'+_0xb668ba['id']+_0x3b5133(0x156)+_0xb668ba['childrenCount']+_0x3b5133(0x157),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0xb668ba[_0x3b5133(0x193)][_0x3b5133(0x19c)]())throw menuError(_0x3b5133(0x197),_0x3b5133(0x180)+_0xb668ba['id']+'\x20has\x20an\x20empty\x20platform\x20path.',_0x3b5133(0x159));}function verifyUpdatedFact(_0x7c32d0,_0x3d6eac,_0x14877d){const _0x4d5ca0=a104_0x2ce934;assertExternalLinkLeaf(_0x3d6eac);const _0x4c1b2f=[['id',_0x3d6eac['id'],_0x7c32d0['id']],[_0x4d5ca0(0x15e),_0x3d6eac[_0x4d5ca0(0x15e)],_0x7c32d0['label']],['type',_0x3d6eac[_0x4d5ca0(0x165)],_0x7c32d0['type']],[_0x4d5ca0(0x193),_0x3d6eac[_0x4d5ca0(0x193)],_0x7c32d0[_0x4d5ca0(0x193)]],[_0x4d5ca0(0x196),_0x3d6eac[_0x4d5ca0(0x196)],_0x7c32d0[_0x4d5ca0(0x196)]],[_0x4d5ca0(0x164),_0x3d6eac['sort'],_0x7c32d0[_0x4d5ca0(0x164)]],[_0x4d5ca0(0x19e),_0x3d6eac['visible'],_0x7c32d0[_0x4d5ca0(0x19e)]]];for(const [_0x199611,_0x4f41b1,_0x34fb40]of _0x4c1b2f){assertVerified(_0x4f41b1===_0x34fb40,_0x4d5ca0(0x180)+_0x7c32d0['id']+'\x20'+_0x199611+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x3d6eac[_0x4d5ca0(0x16b)]===_0x14877d,'Menu\x20'+_0x7c32d0['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x134a90,_0x2615f1,_0x4c957c,_0x20ffba,_0x491556){const _0x4f292c=a104_0x2ce934,_0x175732=_0x4c957c['id'],_0x3720a6=mutationResult({..._0x134a90,'after':_0x4c957c,'dryRun':![],'succeeded':[{'id':_0x175732,'updated':!_0x20ffba,'skipped':_0x20ffba,'recovered':_0x491556}],'verification':{'checkedBy':_0x4f292c(0x16d),'snapshotHash':_0x2615f1['hash'],'targetId':_0x175732,'matchesRequestedState':!![],'recovered':_0x491556}});return{'ok':!![],'message':_0x491556?_0x4f292c(0x158)+_0x175732+'.':_0x20ffba?_0x4f292c(0x180)+_0x175732+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x4f292c(0x18d)+_0x175732+'.','data':{..._0x3720a6,'recovered':_0x491556}};}async function recoverAfterResponseLoss(_0x1f653c,_0x37d65f){const _0xa8e0d4=a104_0x2ce934,{plan:_0x3dd915,before:_0x259a9c,body:_0x1acde5}=_0x37d65f;let _0x47a1b1;try{_0x47a1b1=await fetchMenuSnapshot(_0x1f653c[_0xa8e0d4(0x188)],_0x1f653c[_0xa8e0d4(0x198)]);}catch{throw recoveryRequired(_0x3dd915,_0x1f653c['appCode'],{'id':_0x1acde5['id'],'readbackFailed':!![]});}const _0x1b9744=_0x47a1b1['byId']['get'](_0x1acde5['id']);if(!_0x1b9744||_0x1b9744['url']!==_0x1acde5[_0xa8e0d4(0x16b)])throw recoveryRequired(_0x3dd915,_0x1f653c[_0xa8e0d4(0x188)],{'id':_0x1acde5['id'],'requestedUrlObserved':![],'after':_0x1b9744??null});try{verifyUpdatedFact(_0x259a9c,_0x1b9744,_0x1acde5['url']);}catch(_0x2d609f){const _0xd20e50=asVerificationError(_0x2d609f,_0xa8e0d4(0x153)+_0x1acde5['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0xd20e50,_0x3dd915,{'stage':_0xa8e0d4(0x19a),'succeeded':[{'id':_0x1acde5['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1acde5['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x1b9744,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0xa8e0d4(0x173),'targetId':_0x1acde5['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x1f653c['appCode'])}});}return updateSuccess(_0x3dd915,_0x47a1b1,_0x1b9744,![],!![]);}function recoveryRequired(_0x1ae1d4,_0x13d71b,_0x134cf5){const _0x4f5e77=a104_0x2ce934,_0x885e8e=menuError('menu_update_recovery_required','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x4f5e77(0x16c)+buildLookupCommand(_0x13d71b)+_0x4f5e77(0x15d));return menuFailure(_0x885e8e,_0x1ae1d4,{'stage':_0x4f5e77(0x19a),'failed':{'id':_0x134cf5['id'],..._0x134cf5[_0x4f5e77(0x179)]===undefined?{}:{'requestedUrlObserved':_0x134cf5[_0x4f5e77(0x179)]},..._0x134cf5[_0x4f5e77(0x17d)]?{'readbackFailed':!![]}:{}},'after':_0x134cf5['after'],'warnings':[_0x4f5e77(0x186)],'verification':{'status':_0x4f5e77(0x173),'targetId':_0x134cf5['id'],..._0x134cf5[_0x4f5e77(0x179)]===undefined?{}:{'requestedUrlObserved':_0x134cf5[_0x4f5e77(0x179)]},..._0x134cf5[_0x4f5e77(0x17d)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x13d71b)}});}function a104_0x5d2a(){const _0x135a29=['Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','iframe','37336380UgXzGR','2ApnzFK','failed','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','5NbkoMZ','\x22,\x20not\x20iframe\x20or\x20link.','plan','flagMissing','requestedUrlObserved','8MkKeMz','3754096QInNQl','rabetbase\x20menu\x20list\x20--appcode\x20','readbackFailed','hash','menu_state_drift','Menu\x20','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','menu','verification','unknown','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','external-link-update','appCode','code','update-external-link-url','str','6526566VWKmZv','Updated\x20external\x20URL\x20for\x20menu\x20','\x20is\x20type\x20\x22','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','5875950fyKXmj','2191966OkjSul','expect-parent-id','path','string','Update\x20request\x20for\x20menu\x20','parentId','menu_external_link_path_missing','cookie','\x27\x5c\x27\x27','update-recovery','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','trim','POST','visible','body','childrenCount',',\x20current\x20','3041586OMSKIb','Response\x20was\x20lost\x20and\x20menu\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','\x20parent\x20changed:\x20expected\x20','\x20has\x20','\x20direct\x20child\x20menu(s).','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','New\x20external\x20HTTPS\x20URL','menu_external_link_not_leaf','\x20--format\x20compress','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','label','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','update\x20external\x20menu\x20URL','update','link','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','sort','type','/smartapi/menu/update','362634ZchFZv','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','expect-url','verify\x20external\x20menu\x20URL\x20update','url','Run\x20','menu\x20list','replace'];a104_0x5d2a=function(){return _0x135a29;};return a104_0x5d2a();}function buildLookupCommand(_0x5b21f4){const _0x13927c=a104_0x2ce934,_0x18ee17='\x27'+_0x5b21f4[_0x13927c(0x16e)](/'/g,_0x13927c(0x199))+'\x27';return _0x13927c(0x17c)+_0x18ee17+_0x13927c(0x15c);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a105_0x2d2738=a105_0x2b96;(function(_0x64dfdb,_0x5169e5){const _0x74609c=a105_0x2b96,_0x3eb7a2=_0x64dfdb();while(!![]){try{const _0x39aa1d=parseInt(_0x74609c(0x1bf))/0x1+-parseInt(_0x74609c(0x1a5))/0x2*(-parseInt(_0x74609c(0x1c9))/0x3)+parseInt(_0x74609c(0x1ac))/0x4+parseInt(_0x74609c(0x192))/0x5*(parseInt(_0x74609c(0x19a))/0x6)+parseInt(_0x74609c(0x1b3))/0x7*(-parseInt(_0x74609c(0x1c0))/0x8)+-parseInt(_0x74609c(0x191))/0x9+-parseInt(_0x74609c(0x1ae))/0xa*(parseInt(_0x74609c(0x19d))/0xb);if(_0x39aa1d===_0x5169e5)break;else _0x3eb7a2['push'](_0x3eb7a2['shift']());}catch(_0x3c270f){_0x3eb7a2['push'](_0x3eb7a2['shift']());}}}(a105_0x5d9d,0xa56d2));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a105_0x2b96(_0x1ff38c,_0x3e149e){_0x1ff38c=_0x1ff38c-0x182;const _0x5d9da2=a105_0x5d9d();let _0x2b962b=_0x5d9da2[_0x1ff38c];return _0x2b962b;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a105_0x5d9d(){const _0x21d18b=['\x20has\x20an\x20unexpected\x20sort.','POST','path','Menu\x20create\x20response\x20for\x20folder\x20','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','menu_create_response_invalid','rabetbase\x20menu\x20list\x20--format\x20json','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','Created\x20menu\x20folder\x20','8485299DysuvL','5aGhTyK','create\x20folder','root','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','create-folder','get','appCode','verification','5841438ZOgJex','\x20is\x20missing\x20from\x20menu\x20list.','parentId','143gAnvTC','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','childrenCount','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20may\x20exist\x20online\x20at\x20path\x20','\x22\x20with\x20a\x20platform-generated\x20path.','menu','Folder\x20label','122BrFtZT','isSafeInteger','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','trim','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','402252xRWjbw','pageId','154090Rxcehi','depth','visible','\x20unexpectedly\x20owns\x20a\x20page.','parent-id','161drsVJh','Folder\x20','failed','after','menu\x20list','hash','Created\x20folder\x20','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','str','\x20is\x20not\x20type\x20folder.','byId','stringify','913504KFiVOc','77560Lwcpta','cookie','label','flagMissing','\x20has\x20unexpected\x20parent\x20','/smartapi/menu/create','create','sort','Would\x20create\x20empty\x20folder\x20\x22','2757QaNqtl','group-create','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','verify\x20folder\x20creation','create-response-validation','length','folder','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','Created\x20menu\x20'];a105_0x5d9d=function(){return _0x21d18b;};return a105_0x5d9d();}import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a105_0x2d2738(0x189),'path':a105_0x2d2738(0x1c5)}];export const menuGroupCreate={'service':a105_0x2d2738(0x1a3),'command':a105_0x2d2738(0x1ca),'description':a105_0x2d2738(0x1aa),'risk':'high-risk-write','structuredErrors':!![],'flags':[{'name':a105_0x2d2738(0x1c2),'type':'string','required':!![],'description':a105_0x2d2738(0x1a4)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1b1644){validateCreateInput(_0x1b1644),requireExplicitYes(_0x1b1644);},async 'dryRun'(_0x409a08){const _0x424d14=a105_0x2d2738,_0x573568=await buildCreatePlan(_0x409a08,!![]),_0x3edbe7=_0x573568[_0x424d14(0x1b6)];return menuDryRunResult(_0x573568,{'method':'POST','url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x3edbe7[_0x424d14(0x19c)]),'label':_0x3edbe7[_0x424d14(0x1c2)],'type':_0x424d14(0x185),'visible':!![],'sort':_0x3edbe7[_0x424d14(0x1c7)],'extend':{}},'description':_0x424d14(0x1c8)+String(_0x3edbe7[_0x424d14(0x1c2)])+_0x424d14(0x1a2)});},async 'execute'(_0x194159){const _0x3adacf=a105_0x2d2738;validateCreateInput(_0x194159),requireExplicitYes(_0x194159);const _0x3a9f27=await buildCreatePlan(_0x194159,![]),_0x348940=_0x3a9f27[_0x3adacf(0x1b6)];await recheckMutationSnapshot(_0x194159,_0x3a9f27,_0x3adacf(0x193));let _0x605a79;try{_0x605a79=await createMenuEntity(_0x194159[_0x3adacf(0x198)],_0x194159['cookie'],{'parentId':toApiParentId(_0x348940['parentId']),'label':String(_0x348940['label']),'type':'folder','visible':!![],'sort':Number(_0x348940[_0x3adacf(0x1c7)]),'extend':{}});}catch(_0x1ce4f0){const _0x4b37ff=mapMenuApiError(_0x1ce4f0,_0x3adacf(0x193));throw menuFailure(_0x4b37ff,_0x3a9f27,{'stage':_0x3adacf(0x1c6),'failed':{}});}const _0xea79ec=Number(_0x605a79['id']);if(!Number[_0x3adacf(0x1a6)](_0xea79ec)||_0xea79ec<=0x0){const _0x4fa091=menuError(_0x3adacf(0x18d),_0x3adacf(0x1a9),_0x3adacf(0x1ab));throw menuFailure(_0x4fa091,_0x3a9f27,{'stage':_0x3adacf(0x183),'failed':{'createdId':_0x605a79['id']??null},'warnings':[_0x3adacf(0x195)],'verification':{'status':_0x3adacf(0x1b5),'lookupCommand':_0x3adacf(0x18e)}});}const _0x37771e=typeof _0x605a79[_0x3adacf(0x18a)]==='string'?_0x605a79[_0x3adacf(0x18a)]:'';if(!_0x37771e[_0x3adacf(0x1a8)]()){const _0x2da2f3=menuError(_0x3adacf(0x18d),_0x3adacf(0x18b)+_0xea79ec+_0x3adacf(0x1cb),_0x3adacf(0x1a0));throw menuFailure(_0x2da2f3,_0x3a9f27,{'stage':'create-response-validation','succeeded':[{'id':_0xea79ec,'created':!![]}],'failed':{'id':_0xea79ec,'generatedPathConfirmed':![]},'warnings':[_0x3adacf(0x1b4)+_0xea79ec+_0x3adacf(0x18c)],'after':{..._0x348940,'id':_0xea79ec,'path':_0x37771e},'verification':{'status':'failed','lookupCommand':_0x3adacf(0x18e),'targetId':_0xea79ec}});}let _0x337bae;try{_0x337bae=await fetchMenuSnapshot(_0x194159[_0x3adacf(0x198)],_0x194159[_0x3adacf(0x1c1)]);}catch(_0x1567d9){const _0x4468e3=describeMenuErrorCause(_0x1567d9,_0x3adacf(0x182),_0xea79ec),_0x249b53=asVerificationError(_0x1567d9,'Folder\x20'+_0xea79ec+_0x3adacf(0x186));throw menuFailure(_0x249b53,_0x3a9f27,{'stage':_0x3adacf(0x199),'succeeded':[{'id':_0xea79ec,'created':!![],'path':_0x37771e}],'failed':{'id':_0xea79ec,'finalFactsConfirmed':![],..._0x4468e3},'warnings':['Folder\x20'+_0xea79ec+_0x3adacf(0x1a1)+JSON[_0x3adacf(0x1be)](_0x37771e)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x348940,'id':_0xea79ec,'path':_0x37771e},'verification':{'status':_0x3adacf(0x1b5),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0xea79ec}});}const _0x3aa069=_0x337bae[_0x3adacf(0x1bd)][_0x3adacf(0x197)](_0xea79ec);let _0x3f6c67;try{assertVerified(Boolean(_0x3aa069),_0x3adacf(0x1b9)+_0xea79ec+_0x3adacf(0x19b)),_0x3f6c67=_0x3aa069,assertVerified(_0x3f6c67['type']===_0x3adacf(0x185),_0x3adacf(0x187)+_0xea79ec+_0x3adacf(0x1bc)),assertVerified(_0x3f6c67[_0x3adacf(0x1c2)]===_0x348940[_0x3adacf(0x1c2)],_0x3adacf(0x1b9)+_0xea79ec+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x3f6c67['path']===_0x37771e&&Boolean(_0x3f6c67[_0x3adacf(0x18a)][_0x3adacf(0x1a8)]()),'Created\x20folder\x20'+_0xea79ec+_0x3adacf(0x18f)),assertVerified(_0x3f6c67[_0x3adacf(0x1b0)]===!![],'Created\x20folder\x20'+_0xea79ec+'\x20is\x20not\x20visible.'),assertVerified(_0x3f6c67['resources'][_0x3adacf(0x184)]===0x0,_0x3adacf(0x1b9)+_0xea79ec+'\x20has\x20resources.'),assertVerified(_0x3f6c67[_0x3adacf(0x19f)]===0x0,_0x3adacf(0x1b9)+_0xea79ec+'\x20is\x20not\x20empty.'),assertVerified(_0x3f6c67[_0x3adacf(0x1c7)]===_0x348940['sort'],_0x3adacf(0x1b9)+_0xea79ec+_0x3adacf(0x188)),assertVerified(_0x3f6c67[_0x3adacf(0x19c)]===_0x348940['parentId'],_0x3adacf(0x1b9)+_0xea79ec+_0x3adacf(0x1c4)+(_0x3f6c67[_0x3adacf(0x19c)]??_0x3adacf(0x194))+'.'),assertVerified(_0x3f6c67[_0x3adacf(0x1ad)]==null,_0x3adacf(0x1b9)+_0xea79ec+_0x3adacf(0x1b1));const _0x4bc01a=_0x3f6c67[_0x3adacf(0x19c)]==null?undefined:requireFolder(_0x337bae,_0x3f6c67[_0x3adacf(0x19c)]);assertVerified(_0x3f6c67[_0x3adacf(0x1af)]===(_0x4bc01a?_0x4bc01a[_0x3adacf(0x1af)]+0x1:0x0),_0x3adacf(0x1b9)+_0xea79ec+_0x3adacf(0x19e));}catch(_0x2f0c6e){const _0x25470e=describeMenuErrorCause(_0x2f0c6e,_0x3adacf(0x182),_0xea79ec),_0x542222=asVerificationError(_0x2f0c6e,_0x3adacf(0x1b4)+_0xea79ec+_0x3adacf(0x1cc));throw menuFailure(_0x542222,_0x3a9f27,{'stage':_0x3adacf(0x199),'succeeded':[{'id':_0xea79ec,'created':!![],'path':_0x37771e}],'failed':{'id':_0xea79ec,'finalFactsConfirmed':![],..._0x25470e},'warnings':['Folder\x20'+_0xea79ec+_0x3adacf(0x1ba)],'after':_0x3aa069??{..._0x348940,'id':_0xea79ec,'path':_0x37771e},'verification':{'status':_0x3adacf(0x1b5),'lookupCommand':_0x3adacf(0x18e),'targetId':_0xea79ec}});}const _0x296cdd=mutationResult({..._0x3a9f27,'after':_0x3f6c67,'dryRun':![],'succeeded':[{'id':_0xea79ec,'type':_0x3adacf(0x185),'path':_0x37771e}],'verification':{'checkedBy':_0x3adacf(0x1b7),'snapshotHash':_0x337bae['hash'],'folder':!![],'path':_0x37771e,'emptyResources':!![]}});return{'ok':!![],'data':_0x296cdd,'message':_0x3adacf(0x190)+_0xea79ec+'.'};}};function validateCreateInput(_0x43d82a){const _0x21d291=a105_0x2d2738,_0x289481=_0x43d82a[_0x21d291(0x1bb)]('label')[_0x21d291(0x1a8)]();if(!_0x289481)throw CliErrors[_0x21d291(0x1c3)](_0x21d291(0x1c2));parseParentId(_0x43d82a,_0x21d291(0x1b2)),validateSort(_0x43d82a);}async function buildCreatePlan(_0x12a55b,_0x1fc8b7){const _0x548a4e=a105_0x2d2738,_0xb16a33=await fetchMutationSnapshot(_0x12a55b,_0x548a4e(0x193)),_0x27537b=parseParentId(_0x12a55b,_0x548a4e(0x1b2))??null;if(_0x27537b!=null)requireFolder(_0xb16a33,_0x27537b);const _0x3e9bba=validateSort(_0x12a55b),_0x4a7a68=_0x3e9bba??nextSiblingSort(_0xb16a33,_0x27537b,_0x548a4e(0x185)),_0x40fb36=_0x12a55b['str']('label')[_0x548a4e(0x1a8)]();return mutationResult({'operation':'group-create','selector':{'label':_0x40fb36,'parentId':_0x27537b},'before':null,'after':{'id':null,'parentId':_0x27537b,'label':_0x40fb36,'path':'<platform-generated>','type':_0x548a4e(0x185),'visible':!![],'sort':_0x4a7a68,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x1fc8b7,'backend':[...BACKEND],'plannedActions':[{'stage':_0x548a4e(0x196),'method':_0x548a4e(0x189),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x27537b),'label':_0x40fb36,'type':_0x548a4e(0x185),'visible':!![],'sort':_0x4a7a68,'extend':{}}}],'snapshotHash':_0xb16a33[_0x548a4e(0x1b8)],'warnings':[_0x548a4e(0x1a7)]});}
|
|
1
|
+
const a105_0x26bdd6=a105_0x4a5d;(function(_0x73faba,_0x545869){const _0x5b2c54=a105_0x4a5d,_0x52a0f9=_0x73faba();while(!![]){try{const _0x443023=-parseInt(_0x5b2c54(0x159))/0x1*(-parseInt(_0x5b2c54(0x169))/0x2)+-parseInt(_0x5b2c54(0x18d))/0x3+-parseInt(_0x5b2c54(0x15c))/0x4+-parseInt(_0x5b2c54(0x181))/0x5+parseInt(_0x5b2c54(0x16c))/0x6*(parseInt(_0x5b2c54(0x173))/0x7)+parseInt(_0x5b2c54(0x183))/0x8+parseInt(_0x5b2c54(0x179))/0x9*(-parseInt(_0x5b2c54(0x17b))/0xa);if(_0x443023===_0x545869)break;else _0x52a0f9['push'](_0x52a0f9['shift']());}catch(_0x1f1e55){_0x52a0f9['push'](_0x52a0f9['shift']());}}}(a105_0x464f,0x55198));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a105_0x464f(){const _0x87f65=['flagMissing','create\x20folder','rabetbase\x20menu\x20list\x20--format\x20json','label','group-create','byId','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','folder','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','102VnjGVj','Created\x20folder\x20','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','433344MKrXLe','path','create-folder','sort','cookie','verification','hash','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','create-response-validation','\x20has\x20an\x20unexpected\x20label.','\x20is\x20not\x20visible.','\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.','9194nODHJR','high-risk-write','\x20has\x20resources.','377238BzBvlv','Created\x20menu\x20','\x20has\x20unexpected\x20parent\x20','\x20is\x20not\x20type\x20folder.','appCode','POST',';\x20verify\x20it\x20before\x20retrying.','70ASEsrY','Would\x20create\x20empty\x20folder\x20\x22','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','Created\x20menu\x20folder\x20','Folder\x20label','<platform-generated>','1836fTgDrN','\x20may\x20exist\x20online\x20at\x20path\x20','23370onhWEF','\x20is\x20missing\x20from\x20menu\x20list.','/smartapi/menu/create','after','trim','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','10995DIijgD','type','1079592VLNsCa','\x22\x20with\x20a\x20platform-generated\x20path.','\x20is\x20not\x20empty.','Folder\x20','verify\x20folder\x20creation','menu\x20list','str','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','length','parent-id','890166nblvlo','failed','create','isSafeInteger','resources','parentId','depth','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','get','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'];a105_0x464f=function(){return _0x87f65;};return a105_0x464f();}function a105_0x4a5d(_0x8117da,_0x4410f1){_0x8117da=_0x8117da-0x147;const _0x464f06=a105_0x464f();let _0x4a5d70=_0x464f06[_0x8117da];return _0x4a5d70;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a105_0x26bdd6(0x17d)}];export const menuGroupCreate={'service':'menu','command':a105_0x26bdd6(0x153),'description':a105_0x26bdd6(0x155),'risk':a105_0x26bdd6(0x16a),'structuredErrors':!![],'flags':[{'name':a105_0x26bdd6(0x152),'type':'string','required':!![],'description':a105_0x26bdd6(0x177)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2094a3){validateCreateInput(_0x2094a3),requireExplicitYes(_0x2094a3);},async 'dryRun'(_0x2a4966){const _0x2d12f9=a105_0x26bdd6,_0x1fd2b1=await buildCreatePlan(_0x2a4966,!![]),_0x82c171=_0x1fd2b1['after'];return menuDryRunResult(_0x1fd2b1,{'method':_0x2d12f9(0x171),'url':_0x2d12f9(0x17d),'body':{'parentId':toApiParentId(_0x82c171[_0x2d12f9(0x14a)]),'label':_0x82c171[_0x2d12f9(0x152)],'type':'folder','visible':!![],'sort':_0x82c171[_0x2d12f9(0x15f)],'extend':{}},'description':_0x2d12f9(0x174)+String(_0x82c171['label'])+_0x2d12f9(0x184)});},async 'execute'(_0x513708){const _0x408641=a105_0x26bdd6;validateCreateInput(_0x513708),requireExplicitYes(_0x513708);const _0x4834a6=await buildCreatePlan(_0x513708,![]),_0x4e4714=_0x4834a6[_0x408641(0x17e)];await recheckMutationSnapshot(_0x513708,_0x4834a6,_0x408641(0x150));let _0x12ff9f;try{_0x12ff9f=await createMenuEntity(_0x513708[_0x408641(0x170)],_0x513708[_0x408641(0x160)],{'parentId':toApiParentId(_0x4e4714['parentId']),'label':String(_0x4e4714[_0x408641(0x152)]),'type':'folder','visible':!![],'sort':Number(_0x4e4714[_0x408641(0x15f)]),'extend':{}});}catch(_0x12495b){const _0x55d911=mapMenuApiError(_0x12495b,_0x408641(0x150));throw menuFailure(_0x55d911,_0x4834a6,{'stage':_0x408641(0x147),'failed':{}});}const _0x2b389f=Number(_0x12ff9f['id']);if(!Number[_0x408641(0x148)](_0x2b389f)||_0x2b389f<=0x0){const _0x3f8d1f=menuError('menu_create_response_invalid',_0x408641(0x156),_0x408641(0x180));throw menuFailure(_0x3f8d1f,_0x4834a6,{'stage':_0x408641(0x164),'failed':{'createdId':_0x12ff9f['id']??null},'warnings':[_0x408641(0x175)],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0x15a1cb=typeof _0x12ff9f[_0x408641(0x15d)]==='string'?_0x12ff9f['path']:'';if(!_0x15a1cb[_0x408641(0x17f)]()){const _0x40972c=menuError('menu_create_response_invalid','Menu\x20create\x20response\x20for\x20folder\x20'+_0x2b389f+_0x408641(0x163),_0x408641(0x168));throw menuFailure(_0x40972c,_0x4834a6,{'stage':_0x408641(0x164),'succeeded':[{'id':_0x2b389f,'created':!![]}],'failed':{'id':_0x2b389f,'generatedPathConfirmed':![]},'warnings':[_0x408641(0x186)+_0x2b389f+_0x408641(0x14e)],'after':{..._0x4e4714,'id':_0x2b389f,'path':_0x15a1cb},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x2b389f}});}let _0x5992f0;try{_0x5992f0=await fetchMenuSnapshot(_0x513708[_0x408641(0x170)],_0x513708[_0x408641(0x160)]);}catch(_0x364719){const _0x338f74=describeMenuErrorCause(_0x364719,_0x408641(0x187),_0x2b389f),_0x34089a=asVerificationError(_0x364719,'Folder\x20'+_0x2b389f+'\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts');throw menuFailure(_0x34089a,_0x4834a6,{'stage':_0x408641(0x161),'succeeded':[{'id':_0x2b389f,'created':!![],'path':_0x15a1cb}],'failed':{'id':_0x2b389f,'finalFactsConfirmed':![],..._0x338f74},'warnings':['Folder\x20'+_0x2b389f+_0x408641(0x17a)+JSON['stringify'](_0x15a1cb)+_0x408641(0x172)],'after':{..._0x4e4714,'id':_0x2b389f,'path':_0x15a1cb},'verification':{'status':_0x408641(0x18e),'lookupCommand':_0x408641(0x151),'targetId':_0x2b389f}});}const _0x532ea0=_0x5992f0[_0x408641(0x154)][_0x408641(0x14d)](_0x2b389f);let _0x572116;try{assertVerified(Boolean(_0x532ea0),_0x408641(0x15a)+_0x2b389f+_0x408641(0x17c)),_0x572116=_0x532ea0,assertVerified(_0x572116[_0x408641(0x182)]===_0x408641(0x157),_0x408641(0x16d)+_0x2b389f+_0x408641(0x16f)),assertVerified(_0x572116[_0x408641(0x152)]===_0x4e4714['label'],'Created\x20folder\x20'+_0x2b389f+_0x408641(0x165)),assertVerified(_0x572116['path']===_0x15a1cb&&Boolean(_0x572116['path'][_0x408641(0x17f)]()),_0x408641(0x15a)+_0x2b389f+_0x408641(0x15b)),assertVerified(_0x572116['visible']===!![],_0x408641(0x15a)+_0x2b389f+_0x408641(0x166)),assertVerified(_0x572116[_0x408641(0x149)][_0x408641(0x18b)]===0x0,_0x408641(0x15a)+_0x2b389f+_0x408641(0x16b)),assertVerified(_0x572116['childrenCount']===0x0,_0x408641(0x15a)+_0x2b389f+_0x408641(0x185)),assertVerified(_0x572116['sort']===_0x4e4714[_0x408641(0x15f)],'Created\x20folder\x20'+_0x2b389f+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x572116[_0x408641(0x14a)]===_0x4e4714[_0x408641(0x14a)],_0x408641(0x15a)+_0x2b389f+_0x408641(0x16e)+(_0x572116[_0x408641(0x14a)]??'root')+'.'),assertVerified(_0x572116['pageId']==null,_0x408641(0x15a)+_0x2b389f+_0x408641(0x167));const _0x490095=_0x572116[_0x408641(0x14a)]==null?undefined:requireFolder(_0x5992f0,_0x572116['parentId']);assertVerified(_0x572116[_0x408641(0x14b)]===(_0x490095?_0x490095[_0x408641(0x14b)]+0x1:0x0),_0x408641(0x15a)+_0x2b389f+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x29b63a){const _0x22f07f=describeMenuErrorCause(_0x29b63a,'verify\x20folder\x20creation',_0x2b389f),_0x28feaa=asVerificationError(_0x29b63a,_0x408641(0x186)+_0x2b389f+_0x408641(0x18a));throw menuFailure(_0x28feaa,_0x4834a6,{'stage':_0x408641(0x161),'succeeded':[{'id':_0x2b389f,'created':!![],'path':_0x15a1cb}],'failed':{'id':_0x2b389f,'finalFactsConfirmed':![],..._0x22f07f},'warnings':[_0x408641(0x186)+_0x2b389f+_0x408641(0x14c)],'after':_0x532ea0??{..._0x4e4714,'id':_0x2b389f,'path':_0x15a1cb},'verification':{'status':_0x408641(0x18e),'lookupCommand':_0x408641(0x151),'targetId':_0x2b389f}});}const _0x2ea61c=mutationResult({..._0x4834a6,'after':_0x572116,'dryRun':![],'succeeded':[{'id':_0x2b389f,'type':_0x408641(0x157),'path':_0x15a1cb}],'verification':{'checkedBy':_0x408641(0x188),'snapshotHash':_0x5992f0[_0x408641(0x162)],'folder':!![],'path':_0x15a1cb,'emptyResources':!![]}});return{'ok':!![],'data':_0x2ea61c,'message':_0x408641(0x176)+_0x2b389f+'.'};}};function validateCreateInput(_0x46bd9c){const _0x2fe770=a105_0x26bdd6,_0x415c4d=_0x46bd9c[_0x2fe770(0x189)](_0x2fe770(0x152))[_0x2fe770(0x17f)]();if(!_0x415c4d)throw CliErrors[_0x2fe770(0x14f)](_0x2fe770(0x152));parseParentId(_0x46bd9c,'parent-id'),validateSort(_0x46bd9c);}async function buildCreatePlan(_0x14a5ad,_0x11468b){const _0x25df9f=a105_0x26bdd6,_0x40cc8a=await fetchMutationSnapshot(_0x14a5ad,_0x25df9f(0x150)),_0x21aad7=parseParentId(_0x14a5ad,_0x25df9f(0x18c))??null;if(_0x21aad7!=null)requireFolder(_0x40cc8a,_0x21aad7);const _0x230a60=validateSort(_0x14a5ad),_0x52b5dd=_0x230a60??nextSiblingSort(_0x40cc8a,_0x21aad7,'folder'),_0x1a8a53=_0x14a5ad['str'](_0x25df9f(0x152))[_0x25df9f(0x17f)]();return mutationResult({'operation':_0x25df9f(0x153),'selector':{'label':_0x1a8a53,'parentId':_0x21aad7},'before':null,'after':{'id':null,'parentId':_0x21aad7,'label':_0x1a8a53,'path':_0x25df9f(0x178),'type':'folder','visible':!![],'sort':_0x52b5dd,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x11468b,'backend':[...BACKEND],'plannedActions':[{'stage':_0x25df9f(0x15e),'method':'POST','path':_0x25df9f(0x17d),'body':{'parentId':toApiParentId(_0x21aad7),'label':_0x1a8a53,'type':_0x25df9f(0x157),'visible':!![],'sort':_0x52b5dd,'extend':{}}}],'snapshotHash':_0x40cc8a['hash'],'warnings':[_0x25df9f(0x158)]});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a106_0x1ae9(_0x374902,_0x3e8b9c){_0x374902=_0x374902-0xe3;const _0x890305=a106_0x8903();let _0x1ae930=_0x890305[_0x374902];return _0x1ae930;}const a106_0x1bffdc=a106_0x1ae9;(function(_0x34e938,_0x1751bf){const _0x21c635=a106_0x1ae9,_0x4daada=_0x34e938();while(!![]){try{const _0x752226=parseInt(_0x21c635(0x100))/0x1*(parseInt(_0x21c635(0xe8))/0x2)+-parseInt(_0x21c635(0x111))/0x3+parseInt(_0x21c635(0xfc))/0x4+parseInt(_0x21c635(0x102))/0x5+parseInt(_0x21c635(0xfa))/0x6*(parseInt(_0x21c635(0xf6))/0x7)+-parseInt(_0x21c635(0xe7))/0x8*(parseInt(_0x21c635(0x108))/0x9)+-parseInt(_0x21c635(0x10c))/0xa*(parseInt(_0x21c635(0xef))/0xb);if(_0x752226===_0x1751bf)break;else _0x4daada['push'](_0x4daada['shift']());}catch(_0x2676d7){_0x4daada['push'](_0x4daada['shift']());}}}(a106_0x8903,0x5993a));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a106_0x8903(){const _0x2dad9b=['1126ykdfKa','update','POST','Updated\x20folder\x20','label','trim','rabetbase\x20menu\x20list\x20--format\x20json','132ZJhPfH','Would\x20update\x20folder\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','menu_not_folder','\x22,\x20not\x20folder.','menu\x20list','hash','245IMljeL','/smartapi/menu/update','appCode','update\x20folder','67056kTUewj','group-update','1824580MRtFQJ','\x20label\x20update\x20did\x20not\x20take\x20effect.','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','sort','941ZuFxaO','folder','1408435KOnESI','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','type','No\x20online\x20fields\x20would\x20change.','str','447669uKobEW','high-risk-write','Folder\x20','Menu\x20','626570eUKUWS','string','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','\x20is\x20type\x20\x22','parentId','1023063RTMyJE','validation','verification','selector','--label\x20cannot\x20be\x20empty.','parent-id','32FfjvIg'];a106_0x8903=function(){return _0x2dad9b;};return a106_0x8903();}const BACKEND=[{'method':a106_0x1bffdc(0xea),'path':a106_0x1bffdc(0xf7)}];export const menuGroupUpdate={'service':'menu','command':a106_0x1bffdc(0xfb),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a106_0x1bffdc(0x109),'structuredErrors':!![],'rejectedFlags':[{'name':a106_0x1bffdc(0xe6),'message':a106_0x1bffdc(0xfe),'hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a106_0x1bffdc(0xec),'type':a106_0x1bffdc(0x10d),'description':'New\x20folder\x20label'},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xded1a5){validateUpdateInput(_0xded1a5),requireExplicitYes(_0xded1a5);},async 'dryRun'(_0x5d7fa3){const _0x5ea6d9=a106_0x1bffdc;validateUpdateInput(_0x5d7fa3);const {plan:_0x592ecf,patch:_0xf70fe0}=await buildUpdatePlan(_0x5d7fa3,!![]);return menuDryRunResult(_0x592ecf,{'method':_0x5ea6d9(0xea),'url':_0x5ea6d9(0xf7),'body':_0xf70fe0,'description':_0x5ea6d9(0xf0)+_0x592ecf['selector']['id']+'.'});},async 'execute'(_0x500f7a){const _0x301c81=a106_0x1bffdc;validateUpdateInput(_0x500f7a),requireExplicitYes(_0x500f7a);const {plan:_0x3c8ed6,patch:_0x2c2dc4,noChanges:_0x1f072d}=await buildUpdatePlan(_0x500f7a,![]),_0xe36c25=Number(_0x3c8ed6[_0x301c81(0xe4)]['id']),_0x2d2db6=await recheckMutationSnapshot(_0x500f7a,_0x3c8ed6,_0x301c81(0xf9),_0xe36c25);if(!_0x1f072d)try{await updateMenuEntity(_0x500f7a[_0x301c81(0xf8)],_0x500f7a['cookie'],_0x2c2dc4);}catch(_0x3bfacb){const _0x4f8de4=mapMenuApiError(_0x3bfacb,_0x301c81(0xf9),_0xe36c25);throw menuFailure(_0x4f8de4,_0x3c8ed6,{'stage':_0x301c81(0xe9),'failed':{'id':_0xe36c25}});}let _0x415274=_0x2d2db6,_0x2fa37a;try{!_0x1f072d&&(_0x415274=await fetchMenuSnapshot(_0x500f7a[_0x301c81(0xf8)],_0x500f7a['cookie'])),_0x2fa37a=requireMenu(_0x415274,_0xe36c25),verifyPatch(_0x2fa37a,_0x2c2dc4),_0x2fa37a[_0x301c81(0x110)]!=null&&requireFolder(_0x415274,_0x2fa37a['parentId']);}catch(_0x2e5811){const _0x1e126c=describeMenuErrorCause(_0x2e5811,'verify\x20folder\x20update',_0xe36c25),_0x3a8584=asVerificationError(_0x2e5811,'Update\x20request\x20for\x20folder\x20'+_0xe36c25+_0x301c81(0xf1));throw menuFailure(_0x3a8584,_0x3c8ed6,{'stage':_0x301c81(0xe3),'succeeded':[{'id':_0xe36c25,'updateRequested':!_0x1f072d,'skipped':_0x1f072d}],'failed':{'id':_0xe36c25,'requestedStateConfirmed':![],..._0x1e126c},'warnings':['The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':'failed','lookupCommand':_0x301c81(0xee),'targetId':_0xe36c25}});}const _0x3be197=mutationResult({..._0x3c8ed6,'after':_0x2fa37a,'dryRun':![],'succeeded':[{'id':_0xe36c25,'updated':!_0x1f072d,'skipped':_0x1f072d}],'verification':{'checkedBy':_0x301c81(0xf4),'snapshotHash':_0x415274[_0x301c81(0xf5)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x3be197,'message':_0x1f072d?_0x301c81(0x10a)+_0xe36c25+'\x20already\x20matches\x20the\x20requested\x20state.':_0x301c81(0xeb)+_0xe36c25+'.'};}};function validateUpdateInput(_0x5321be){const _0x2d6b84=a106_0x1bffdc;validateExactId(_0x5321be);if(hasFlag(_0x5321be,_0x2d6b84(0xe6)))throw CliErrors[_0x2d6b84(0x112)](_0x2d6b84(0xfe),_0x2d6b84(0x103));if(!hasFlag(_0x5321be,_0x2d6b84(0xec))&&!hasFlag(_0x5321be,'sort'))throw CliErrors[_0x2d6b84(0x112)](_0x2d6b84(0x104));if(hasFlag(_0x5321be,_0x2d6b84(0xec))&&!_0x5321be[_0x2d6b84(0x107)](_0x2d6b84(0xec))[_0x2d6b84(0xed)]())throw CliErrors[_0x2d6b84(0x112)](_0x2d6b84(0xe5));validateSort(_0x5321be);}async function buildUpdatePlan(_0x33c99f,_0xd59473){const _0x452d2a=a106_0x1bffdc,_0x10324a=validateExactId(_0x33c99f),_0x474002=await fetchMutationSnapshot(_0x33c99f,'update\x20folder',_0x10324a),_0x4fb5f9=requireMenu(_0x474002,_0x10324a);if(_0x4fb5f9['type']!==_0x452d2a(0x101))throw menuError(_0x452d2a(0xf2),_0x452d2a(0x10b)+_0x10324a+_0x452d2a(0x10f)+(_0x4fb5f9['type']||'unknown')+_0x452d2a(0xf3),_0x452d2a(0x10e));assertExpectedState(_0x33c99f,_0x4fb5f9);const _0x281286={'id':_0x10324a},_0x4d2a09={..._0x4fb5f9};if(hasFlag(_0x33c99f,_0x452d2a(0xec))){const _0x57142d=_0x33c99f[_0x452d2a(0x107)]('label')[_0x452d2a(0xed)]();_0x281286[_0x452d2a(0xec)]=_0x57142d,_0x4d2a09[_0x452d2a(0xec)]=_0x57142d;}if(hasFlag(_0x33c99f,_0x452d2a(0xff))){const _0x41901a=validateSort(_0x33c99f);_0x281286[_0x452d2a(0xff)]=_0x41901a,_0x4d2a09['sort']=_0x41901a;}const _0x4c4e96=sameRequestedState(_0x4fb5f9,_0x4d2a09),_0x10bfa8=_0x4c4e96?[_0x452d2a(0x106)]:[];return{'patch':_0x281286,'noChanges':_0x4c4e96,'plan':mutationResult({'operation':_0x452d2a(0xfb),'selector':{'id':_0x10324a},'before':_0x4fb5f9,'after':_0x4d2a09,'dryRun':_0xd59473,'backend':[...BACKEND],'snapshotHash':_0x474002[_0x452d2a(0xf5)],'warnings':_0x10bfa8})};}function sameRequestedState(_0x5c18e7,_0x58d595){const _0xa62c61=a106_0x1bffdc;return _0x5c18e7[_0xa62c61(0xec)]===_0x58d595[_0xa62c61(0xec)]&&_0x5c18e7['sort']===_0x58d595[_0xa62c61(0xff)];}function verifyPatch(_0x12a7ff,_0x24bb19){const _0x2ddd8d=a106_0x1bffdc;assertVerified(_0x12a7ff[_0x2ddd8d(0x105)]===_0x2ddd8d(0x101),'Menu\x20'+_0x12a7ff['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x24bb19[_0x2ddd8d(0xec)]!==undefined&&assertVerified(_0x12a7ff[_0x2ddd8d(0xec)]===_0x24bb19[_0x2ddd8d(0xec)],'Folder\x20'+_0x12a7ff['id']+_0x2ddd8d(0xfd)),_0x24bb19[_0x2ddd8d(0xff)]!==undefined&&assertVerified(_0x12a7ff[_0x2ddd8d(0xff)]===_0x24bb19[_0x2ddd8d(0xff)],_0x2ddd8d(0x10a)+_0x12a7ff['id']+'\x20sort\x20update\x20did\x20not\x20take\x20effect.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x36f357,_0x4b3042){const _0x2ad979=a107_0x3c4a,_0x2d294d=_0x36f357();while(!![]){try{const _0x424372=parseInt(_0x2ad979(0x1cb))/0x1*(parseInt(_0x2ad979(0x1c7))/0x2)+parseInt(_0x2ad979(0x1c8))/0x3+parseInt(_0x2ad979(0x1c4))/0x4+-parseInt(_0x2ad979(0x1ca))/0x5*(parseInt(_0x2ad979(0x1c9))/0x6)+parseInt(_0x2ad979(0x1c3))/0x7+parseInt(_0x2ad979(0x1c6))/0x8+-parseInt(_0x2ad979(0x1c5))/0x9;if(_0x424372===_0x4b3042)break;else _0x2d294d['push'](_0x2d294d['shift']());}catch(_0x2b2076){_0x2d294d['push'](_0x2d294d['shift']());}}}(a107_0x48a6,0xc4545));import{menuList}from'../../commands/menu/list.js';function a107_0x3c4a(_0x5338dd,_0x1b1f7d){_0x5338dd=_0x5338dd-0x1c3;const _0x48a60f=a107_0x48a6();let _0x3c4a58=_0x48a60f[_0x5338dd];return _0x3c4a58;}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';function a107_0x48a6(){const _0x588328=['14KZcvac','2215188gSojtD','30NcSIFi','700395XcEKnn','108411yMWJqt','9462887GwlCNz','1043772lXHkOy','22027725hikfaX','6736224QbWmnD'];a107_0x48a6=function(){return _0x588328;};return a107_0x48a6();}import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a108_0x594b6d=a108_0x1684;(function(_0x3784cb,_0x104b4e){const _0x5bdf48=a108_0x1684,_0x449631=_0x3784cb();while(!![]){try{const _0x51cd4f=parseInt(_0x5bdf48(0x150))/0x1+parseInt(_0x5bdf48(0x157))/0x2+parseInt(_0x5bdf48(0x148))/0x3+-parseInt(_0x5bdf48(0x145))/0x4+-parseInt(_0x5bdf48(0x14d))/0x5+parseInt(_0x5bdf48(0x158))/0x6*(parseInt(_0x5bdf48(0x14a))/0x7)+-parseInt(_0x5bdf48(0x14e))/0x8;if(_0x51cd4f===_0x104b4e)break;else _0x449631['push'](_0x449631['shift']());}catch(_0x907f26){_0x449631['push'](_0x449631['shift']());}}}(a108_0x4c77,0x98480));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a108_0x594b6d(0x156),'command':a108_0x594b6d(0x153),'description':a108_0x594b6d(0x146),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a108_0x594b6d(0x151),'type':'boolean','description':a108_0x594b6d(0x159)}],async 'execute'(_0x13ea62){const _0x47cb2a=a108_0x594b6d,_0x4a517e=_0x13ea62['bool'](_0x47cb2a(0x151)),_0x36873c=await fetchMenuSnapshot(_0x13ea62[_0x47cb2a(0x14c)],_0x13ea62[_0x47cb2a(0x154)],{'verbose':_0x4a517e});return{'ok':!![],'data':{'total':_0x36873c[_0x47cb2a(0x149)],'snapshotHash':_0x36873c[_0x47cb2a(0x152)],'menus':_0x36873c[_0x47cb2a(0x14f)][_0x47cb2a(0x147)](toMenuListItem)},'message':_0x36873c[_0x47cb2a(0x149)]===0x0?_0x47cb2a(0x155):_0x47cb2a(0x14b)+_0x36873c[_0x47cb2a(0x149)]+'\x20menu(s)'};}};function a108_0x1684(_0x25ea22,_0x250212){_0x25ea22=_0x25ea22-0x145;const _0x4c77b3=a108_0x4c77();let _0x168432=_0x4c77b3[_0x25ea22];return _0x168432;}function a108_0x4c77(){const _0x440704=['2992520IYOcuS','6020240dfRPlw','menus','716075xXuXQx','verbose','hash','list','cookie','No\x20menus\x20found.','menu','2013582VNyyEJ','282mwFRtI','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','4483580hTCIBu','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','map','3535668IWqbgN','total','28931aeQosC','Found\x20','appCode'];a108_0x4c77=function(){return _0x440704;};return a108_0x4c77();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a109_0xaa75ae=a109_0x13de;(function(_0x59f2f8,_0x24bea8){const _0x4e1a6e=a109_0x13de,_0x294f14=_0x59f2f8();while(!![]){try{const _0x583117=-parseInt(_0x4e1a6e(0x9c))/0x1+parseInt(_0x4e1a6e(0xa4))/0x2+parseInt(_0x4e1a6e(0x8b))/0x3*(-parseInt(_0x4e1a6e(0x8e))/0x4)+parseInt(_0x4e1a6e(0x8c))/0x5+parseInt(_0x4e1a6e(0x97))/0x6+parseInt(_0x4e1a6e(0x9e))/0x7*(-parseInt(_0x4e1a6e(0xad))/0x8)+parseInt(_0x4e1a6e(0xa0))/0x9*(parseInt(_0x4e1a6e(0x98))/0xa);if(_0x583117===_0x24bea8)break;else _0x294f14['push'](_0x294f14['shift']());}catch(_0x14b39b){_0x294f14['push'](_0x294f14['shift']());}}}(a109_0x5e39,0xa4b52));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,requireExplicitYes,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';function a109_0x13de(_0x3efd3a,_0x5e15d5){_0x3efd3a=_0x3efd3a-0x87;const _0x5e3931=a109_0x5e39();let _0x13de94=_0x5e3931[_0x3efd3a];return _0x13de94;}function a109_0x5e39(){const _0x354b4a=['5274810RUOvoA','1230KMGniN','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','sort','expect-parent-id','558523PZAXtR','menu_state_drift','7opeIZE','/smartapi/menu/update','61857ByRPkT','failed','parent-id','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','1744222iKxAau','move','\x20parent\x20changed:\x20expected\x20','folder','cookie','menu','childrenCount','move-menu','menu\x20list','5355624zPUcpk','POST','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','menu_move_source_not_leaf','high-risk-write',',\x20current\x20','appCode','Move\x20request\x20for\x20menu\x20','parentId','verification','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','Would\x20move\x20menu\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','287100acLvep','2271965JIJXPu','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','48nPTPVF','rabetbase\x20menu\x20list\x20--format\x20compress','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','move\x20menu','\x20is\x20now\x20type\x20folder.','Menu\x20','after','type','hash'];a109_0x5e39=function(){return _0x354b4a;};return a109_0x5e39();}const BACKEND=[{'method':'POST','path':'/smartapi/menu/update'}];export const menuMove={'service':a109_0xaa75ae(0xa9),'command':a109_0xaa75ae(0xa5),'description':a109_0xaa75ae(0x99),'risk':a109_0xaa75ae(0xb1),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x145b6b){validateMoveInput(_0x145b6b),requireExplicitYes(_0x145b6b);},async 'dryRun'(_0x129865){const _0x530ac9=a109_0xaa75ae,{plan:_0x11a526,patch:_0x39aa9a}=await buildMovePlan(_0x129865,!![]);return menuDryRunResult(_0x11a526,{'method':_0x530ac9(0xae),'url':'/smartapi/menu/update','body':{..._0x39aa9a,'appCode':_0x129865[_0x530ac9(0xb3)]},'description':_0x530ac9(0x87)+_0x39aa9a['id']+'.'});},async 'execute'(_0x1c2140){const _0x1703a6=a109_0xaa75ae;validateMoveInput(_0x1c2140),requireExplicitYes(_0x1c2140);const {plan:_0x1035bf,patch:_0x49267b,noChanges:_0x5f370f,snapshot:_0xd1caac}=await buildMovePlan(_0x1c2140,![]),_0x1c7382=_0x49267b['id'];if(!_0x5f370f)try{await updateMenuEntity(_0x1c2140['appCode'],_0x1c2140[_0x1703a6(0xa8)],_0x49267b);}catch(_0xe3d285){const _0xf58dbb=mapMenuApiError(_0xe3d285,'move',_0x1c7382);throw menuFailure(_0xf58dbb,_0x1035bf,{'stage':'update','failed':{'id':_0x1c7382},'warnings':[_0x1703a6(0x90)],'verification':{'status':_0x1703a6(0xa1),'targetId':_0x1c7382,'lookupCommand':_0x1703a6(0x8f)}});}let _0x3f0eba,_0x26ee82;try{_0x3f0eba=_0x5f370f?_0xd1caac:await fetchMenuSnapshot(_0x1c2140['appCode'],_0x1c2140[_0x1703a6(0xa8)]),_0x26ee82=requireMenu(_0x3f0eba,_0x1c7382),verifyMove(_0x26ee82,_0x1035bf[_0x1703a6(0x94)]),_0x26ee82[_0x1703a6(0xb5)]!==null&&requireFolder(_0x3f0eba,_0x26ee82['parentId']);}catch(_0x6a2636){const _0x42a93b=describeMenuErrorCause(_0x6a2636,'verify\x20menu\x20move',_0x1c7382),_0x12e159=asVerificationError(_0x6a2636,_0x1703a6(0xb4)+_0x1c7382+_0x1703a6(0x8a));throw menuFailure(_0x12e159,_0x1035bf,{'stage':_0x1703a6(0xb6),'succeeded':[{'id':_0x1c7382,'updateRequested':!_0x5f370f,'skipped':_0x5f370f}],'failed':{'id':_0x1c7382,'requestedStateConfirmed':![],..._0x42a93b},'warnings':[_0x1703a6(0xa3)],'verification':{'status':_0x1703a6(0xa1),'targetId':_0x1c7382,'lookupCommand':_0x1703a6(0x8f)}});}const _0x5f3180=mutationResult({..._0x1035bf,'after':_0x26ee82,'dryRun':![],'succeeded':[{'id':_0x1c7382,'updated':!_0x5f370f,'skipped':_0x5f370f}],'verification':{'checkedBy':_0x1703a6(0xac),'snapshotHash':_0x3f0eba[_0x1703a6(0x96)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x5f3180,'message':_0x5f370f?_0x1703a6(0x93)+_0x1c7382+_0x1703a6(0xaf):'Moved\x20menu\x20'+_0x1c7382+'.'};}};function validateMoveInput(_0x419157){const _0x1b52df=a109_0xaa75ae;validateExactId(_0x419157),parseParentId(_0x419157,_0x1b52df(0xa2),{'required':!![]}),parseParentId(_0x419157,_0x1b52df(0x9b),{'required':!![]}),validateSort(_0x419157);}async function buildMovePlan(_0x45d4df,_0x38f7cd){const _0xf78dc4=a109_0xaa75ae,_0x82ecd8=validateExactId(_0x45d4df),_0x4fddf6=parseParentId(_0x45d4df,_0xf78dc4(0xa2),{'required':!![]}),_0x300308=parseParentId(_0x45d4df,_0xf78dc4(0x9b),{'required':!![]}),_0x4dac87=validateSort(_0x45d4df),_0x4fa78e=await fetchMutationSnapshot(_0x45d4df,_0xf78dc4(0x91),_0x82ecd8),_0x1678f1=requireMenu(_0x4fa78e,_0x82ecd8);if(_0x1678f1[_0xf78dc4(0x95)]===_0xf78dc4(0xa7)||_0x1678f1[_0xf78dc4(0xaa)]!==0x0)throw menuError(_0xf78dc4(0xb0),'Menu\x20'+_0x82ecd8+_0xf78dc4(0x8d),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.');if(_0x1678f1[_0xf78dc4(0xb5)]!==_0x300308)throw menuError(_0xf78dc4(0x9d),_0xf78dc4(0x93)+_0x82ecd8+_0xf78dc4(0xa6)+formatParent(_0x300308)+_0xf78dc4(0xb2)+formatParent(_0x1678f1[_0xf78dc4(0xb5)])+'.',_0xf78dc4(0x88));_0x4fddf6!==null&&requireFolder(_0x4fa78e,_0x4fddf6);const _0x4ccb66=_0x4dac87??(_0x1678f1[_0xf78dc4(0xb5)]===_0x4fddf6?_0x1678f1[_0xf78dc4(0x9a)]??0x0:nextSiblingSort(_0x4fa78e,_0x4fddf6,_0xf78dc4(0xa9))),_0x34d3a9={..._0x1678f1,'parentId':_0x4fddf6,'sort':_0x4ccb66},_0x4b9e57={'id':_0x82ecd8,'parentId':toApiParentId(_0x4fddf6),'sort':_0x4ccb66},_0x10095f=_0x1678f1[_0xf78dc4(0xb5)]===_0x4fddf6&&_0x1678f1[_0xf78dc4(0x9a)]===_0x4ccb66;return{'patch':_0x4b9e57,'noChanges':_0x10095f,'snapshot':_0x4fa78e,'plan':mutationResult({'operation':_0xf78dc4(0xa5),'selector':{'id':_0x82ecd8,'parentId':_0x4fddf6},'before':_0x1678f1,'after':_0x34d3a9,'dryRun':_0x38f7cd,'backend':[...BACKEND],'plannedActions':[{'stage':_0xf78dc4(0xab),'method':_0xf78dc4(0xae),'path':_0xf78dc4(0x9f),'body':{..._0x4b9e57,'appCode':_0x45d4df[_0xf78dc4(0xb3)]}}],'snapshotHash':_0x4fa78e[_0xf78dc4(0x96)],'warnings':_0x10095f?[_0xf78dc4(0x89)]:[]})};}function verifyMove(_0x14716c,_0x211ee4){const _0x492b5a=a109_0xaa75ae;assertVerified(_0x14716c[_0x492b5a(0x95)]!=='folder',_0x492b5a(0x93)+_0x14716c['id']+_0x492b5a(0x92)),assertVerified(_0x14716c[_0x492b5a(0xaa)]===0x0,_0x492b5a(0x93)+_0x14716c['id']+'\x20is\x20no\x20longer\x20a\x20leaf.'),assertVerified(_0x14716c[_0x492b5a(0xb5)]===_0x211ee4[_0x492b5a(0xb5)],_0x492b5a(0x93)+_0x14716c['id']+'\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.'),assertVerified(_0x14716c[_0x492b5a(0x9a)]===_0x211ee4[_0x492b5a(0x9a)],_0x492b5a(0x93)+_0x14716c['id']+_0x492b5a(0xb7));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a110_0x4fbd33=a110_0x4ed2;(function(_0x31b97c,_0xd2e5f3){const _0x19ed2d=a110_0x4ed2,_0x30f15a=_0x31b97c();while(!![]){try{const _0x50f0ec=parseInt(_0x19ed2d(0x202))/0x1*(-parseInt(_0x19ed2d(0x20f))/0x2)+parseInt(_0x19ed2d(0x1d1))/0x3*(parseInt(_0x19ed2d(0x1ff))/0x4)+-parseInt(_0x19ed2d(0x1fa))/0x5*(-parseInt(_0x19ed2d(0x1dc))/0x6)+parseInt(_0x19ed2d(0x216))/0x7+parseInt(_0x19ed2d(0x1d5))/0x8+-parseInt(_0x19ed2d(0x1ea))/0x9*(parseInt(_0x19ed2d(0x1e6))/0xa)+-parseInt(_0x19ed2d(0x1fb))/0xb;if(_0x50f0ec===_0xd2e5f3)break;else _0x30f15a['push'](_0x30f15a['shift']());}catch(_0x449f8d){_0x30f15a['push'](_0x30f15a['shift']());}}}(a110_0x3f8d,0xf0f4f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a110_0x4ed2(_0x736af6,_0xc753e0){_0x736af6=_0x736af6-0x1d0;const _0x3f8d5c=a110_0x3f8d();let _0x4ed23c=_0x3f8d5c[_0x736af6];return _0x4ed23c;}import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a110_0x4fbd33(0x1e5),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a110_0x4fbd33(0x229),'command':a110_0x4fbd33(0x1f8),'description':'Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','risk':'high-risk-write','structuredErrors':!![],'flags':[{'name':a110_0x4fbd33(0x1e0),'type':a110_0x4fbd33(0x1dd),'required':!![],'description':a110_0x4fbd33(0x1ec)},{'name':a110_0x4fbd33(0x221),'type':a110_0x4fbd33(0x1dd),'required':!![],'description':a110_0x4fbd33(0x208)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x571389){validateRegroupInput(_0x571389),requireExplicitYes(_0x571389);},async 'dryRun'(_0x2b7a00){const _0x379faa=a110_0x4fbd33;validateRegroupInput(_0x2b7a00);const _0x289a6c=await buildRegroupPlan(_0x2b7a00,!![]);return menuDryRunResult(_0x289a6c[_0x379faa(0x20b)],{'method':'POST','url':_0x379faa(0x1de),'body':_0x289a6c['input'],'description':_0x379faa(0x219)+JSON['stringify'](_0x289a6c[_0x379faa(0x1e0)])+_0x379faa(0x205)+_0x289a6c['menuIds']['join'](',\x20')+';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.'});},async 'execute'(_0x2bcee6){const _0x42800a=a110_0x4fbd33;validateRegroupInput(_0x2bcee6),requireExplicitYes(_0x2bcee6);const _0x22dd5f=await buildRegroupPlan(_0x2bcee6,![]);await recheckMutationSnapshot(_0x2bcee6,_0x22dd5f[_0x42800a(0x20b)],_0x42800a(0x206));const _0x30d933=buildMenuLookupCommand(_0x2bcee6[_0x42800a(0x1d9)]);let _0x2b686c,_0x1e2aee;try{_0x2b686c=await startMenuRegroup(_0x2bcee6[_0x42800a(0x1d8)],_0x22dd5f[_0x42800a(0x1f2)]),_0x1e2aee=normalizeAsyncTask(_0x2b686c);}catch(_0x164dc1){const _0x4f1045=await inspectRegroupAfterFailure(_0x2bcee6[_0x42800a(0x1d9)],_0x2bcee6['cookie'],_0x22dd5f['label'],_0x22dd5f[_0x42800a(0x1e3)]),_0x541a49=typeof _0x2b686c?.['taskId']===_0x42800a(0x1dd)&&_0x2b686c[_0x42800a(0x207)][_0x42800a(0x1d2)]()?_0x2b686c['taskId'][_0x42800a(0x1d2)]():null,_0x4237b3=_0x541a49?{'command':buildAsyncTaskStatusCommand(_0x541a49,_0x2bcee6['appCode'])}:null,_0x426017=mapMenuApiError(_0x164dc1,_0x42800a(0x1f9));throw menuFailure(_0x426017,_0x22dd5f[_0x42800a(0x20b)],{'stage':_0x42800a(0x20c),'failed':{'menuIds':_0x22dd5f[_0x42800a(0x1e3)],'taskId':_0x541a49,'groupingApplied':_0x4f1045['applied']?!![]:_0x42800a(0x1e9)},'after':_0x4f1045[_0x42800a(0x21c)]??null,'warnings':[_0x42800a(0x1eb),..._0x4f1045['readbackError']?[_0x42800a(0x217)+_0x4f1045[_0x42800a(0x1da)]]:[],..._0x541a49?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':_0x42800a(0x228),'groupingApplied':_0x4f1045['applied']?!![]:_0x42800a(0x1e9),'taskId':_0x541a49,'query':_0x4237b3,'lookupCommand':_0x30d933}});}const _0x47ab65=buildAsyncTaskStatusCommand(_0x1e2aee['taskId'],_0x2bcee6[_0x42800a(0x1d9)]);let _0x292462=null,_0x26a1ed=null,_0xe412e9=null;try{_0x292462=await fetchMenuSnapshot(_0x2bcee6[_0x42800a(0x1d9)],_0x2bcee6[_0x42800a(0x1d8)]),_0x26a1ed=findAppliedRegroup(_0x292462,_0x22dd5f[_0x42800a(0x1e0)],_0x22dd5f[_0x42800a(0x1e3)]);}catch(_0x53cdb9){_0xe412e9=_0x53cdb9 instanceof Error?_0x53cdb9[_0x42800a(0x22a)]:String(_0x53cdb9);}const _0x2ae33a=mutationResult({..._0x22dd5f[_0x42800a(0x20b)],'after':_0x26a1ed??null,'dryRun':![],'succeeded':[{'groupId':_0x26a1ed?.[_0x42800a(0x1e7)]['id']??null,'menuIds':_0x22dd5f['menuIds'],'taskId':_0x1e2aee[_0x42800a(0x207)],'status':_0x1e2aee[_0x42800a(0x201)],'groupingApplied':_0x26a1ed?!![]:_0x42800a(0x1e9)}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x292462?.['hash']??null,'groupId':_0x26a1ed?.[_0x42800a(0x1e7)]['id']??null,'groupingApplied':_0x26a1ed?!![]:_0x42800a(0x1e9),'readbackError':_0xe412e9,'lookupCommand':_0x30d933},'warnings':[..._0x22dd5f[_0x42800a(0x20b)][_0x42800a(0x20d)],...!_0x26a1ed?[unconfirmedRegroupWarning(_0x1e2aee)]:[],..._0xe412e9?[_0x42800a(0x1d3)+_0xe412e9]:[]]}),_0x1a4445=_0x1e2aee[_0x42800a(0x201)]===_0x42800a(0x225)&&!_0x26a1ed?_0x42800a(0x222)+_0x1e2aee['taskId']+_0x42800a(0x21f):_0x42800a(0x1e2)+asyncTaskMessage(_0x1e2aee);return{'ok':!![],'message':_0x1a4445,'data':{..._0x2ae33a,'task':_0x1e2aee,'query':_0x1e2aee[_0x42800a(0x1f3)]?null:{'command':_0x47ab65}}};}};function validateRegroupInput(_0x12412f){const _0x7f863e=a110_0x4fbd33;if(!_0x12412f[_0x7f863e(0x218)]('label')['trim']())throw CliErrors[_0x7f863e(0x1f5)](_0x7f863e(0x1e0));parseMenuIds(_0x12412f[_0x7f863e(0x218)]('menu-ids'));}function parseMenuIds(_0x64da9f){const _0x1aabd6=a110_0x4fbd33,_0x9c7646=_0x64da9f[_0x1aabd6(0x1fd)](',')['map'](_0x15e967=>_0x15e967[_0x1aabd6(0x1d2)]());if(_0x9c7646[_0x1aabd6(0x223)]===0x0||_0x9c7646['some'](_0x46e69f=>!_0x46e69f))throw CliErrors[_0x1aabd6(0x1e8)](_0x1aabd6(0x1df));const _0x3e006a=_0x9c7646[_0x1aabd6(0x200)](_0x13c9dc=>{const _0x3c62a5=_0x1aabd6;if(!/^\d+$/[_0x3c62a5(0x20a)](_0x13c9dc))throw CliErrors[_0x3c62a5(0x1e8)](_0x3c62a5(0x1df));const _0x49947a=Number(_0x13c9dc);if(!Number['isSafeInteger'](_0x49947a)||_0x49947a<=0x0)throw CliErrors[_0x3c62a5(0x1e8)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x49947a;});if(new Set(_0x3e006a)['size']!==_0x3e006a[_0x1aabd6(0x223)])throw CliErrors[_0x1aabd6(0x1e8)](_0x1aabd6(0x1d6));if(_0x3e006a[_0x1aabd6(0x223)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x1aabd6(0x1e8)](_0x1aabd6(0x209)+MAX_REGROUP_MENU_COUNT+_0x1aabd6(0x215));return _0x3e006a;}function buildMenuLookupCommand(_0x50ee95){const _0x51f75a=a110_0x4fbd33,_0x4778ac='\x27'+_0x50ee95[_0x51f75a(0x224)](/'/g,_0x51f75a(0x220))+'\x27';return CLI_BIN_NAME+_0x51f75a(0x1f0)+_0x4778ac+_0x51f75a(0x22e);}function unconfirmedRegroupWarning(_0x17d8c7){const _0x194005=a110_0x4fbd33;if(_0x17d8c7[_0x194005(0x201)]===_0x194005(0x225))return _0x194005(0x1ed);if(_0x17d8c7[_0x194005(0x201)]===_0x194005(0x1f4))return'The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x17d8c7['knownStatus'])return _0x194005(0x22b);return _0x194005(0x1d4);}function a110_0x3f8d(){const _0x4e5012=['cookie','appCode','readbackError','filter','192pCoetC','string','/smartapi/menu/regroup','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','label','byId','Regroup\x20task\x20accepted.\x20','menuIds','folder','POST','70imHeXb','group','validation','unconfirmed','1959075qTyVQE','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','Label\x20of\x20the\x20new\x20root\x20folder','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','menu_regroup_label_conflict','Menu\x20','\x20menu\x20list\x20--appcode\x20','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','input','isTerminal','FAILED','flagMissing','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','regroup-start','start\x20menu\x20regroup','303300BIPqXc','5272333XWocai','menus','split','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','33236lyGblO','map','status','1obtAIC','hash','menu_regroup_already_applied','\x20and\x20regroup\x20menu\x20ids\x20','start\x20regroup','taskId','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','--menu-ids\x20supports\x20at\x20most\x20','test','plan','regroup-submit','warnings','join','2600170rZwtwS','plan\x20regroup','<platform-generated>','Menus\x20','toLowerCase','menu_regroup_target_label_missing','\x20menus\x20per\x20regroup\x20request.','7803355nVuZxE','Regroup\x20readback\x20also\x20failed:\x20','str','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','Root\x20folder\x20label\x20','parentId','applied','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','\x27\x5c\x27\x27','menu-ids','Regroup\x20task\x20','length','replace','SUCCESS','type','get','failed','menu','message','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','submit-regroup-task','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','\x20--format\x20compress','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','stringify','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','33fmqvlj','trim','Regroup\x20readback\x20failed:\x20','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.','9142304HLmXiR','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','<new-group-id>'];a110_0x3f8d=function(){return _0x4e5012;};return a110_0x3f8d();}async function buildRegroupPlan(_0x59da5f,_0x7d6b31){const _0x2cdb8c=a110_0x4fbd33,_0x4ae769=_0x59da5f[_0x2cdb8c(0x218)](_0x2cdb8c(0x1e0))['trim'](),_0x8ca74f=parseMenuIds(_0x59da5f[_0x2cdb8c(0x218)](_0x2cdb8c(0x221))),_0x37e824=await fetchMutationSnapshot(_0x59da5f,_0x2cdb8c(0x210)),_0x174078=_0x8ca74f[_0x2cdb8c(0x200)](_0x6da52e=>requireMenu(_0x37e824,_0x6da52e));for(const _0x23c890 of _0x174078){if(_0x23c890[_0x2cdb8c(0x226)][_0x2cdb8c(0x1d2)]()[_0x2cdb8c(0x213)]()==='folder'||_0x23c890['childrenCount']>0x0)throw menuError('menu_regroup_target_not_leaf',_0x2cdb8c(0x1ef)+_0x23c890['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',_0x2cdb8c(0x1fe));if(!_0x23c890[_0x2cdb8c(0x1e0)][_0x2cdb8c(0x1d2)]())throw menuError(_0x2cdb8c(0x214),_0x2cdb8c(0x1ef)+_0x23c890['id']+_0x2cdb8c(0x21d),_0x2cdb8c(0x1f1));}const _0x4944c7=findAppliedRegroup(_0x37e824,_0x4ae769,_0x8ca74f);if(_0x4944c7)throw menuError(_0x2cdb8c(0x204),_0x2cdb8c(0x212)+_0x8ca74f[_0x2cdb8c(0x20e)](',\x20')+_0x2cdb8c(0x1d0)+_0x4944c7[_0x2cdb8c(0x1e7)]['id']+'\x20('+JSON[_0x2cdb8c(0x230)](_0x4ae769)+').',_0x2cdb8c(0x22f));const _0x220a2c=_0x37e824[_0x2cdb8c(0x1fc)]['filter'](_0x37430f=>_0x37430f[_0x2cdb8c(0x21b)]==null&&_0x37430f[_0x2cdb8c(0x226)][_0x2cdb8c(0x1d2)]()[_0x2cdb8c(0x213)]()===_0x2cdb8c(0x1e4)&&_0x37430f['label']===_0x4ae769);if(_0x220a2c[_0x2cdb8c(0x223)]>0x0)throw menuError(_0x2cdb8c(0x1ee),_0x2cdb8c(0x21a)+JSON[_0x2cdb8c(0x230)](_0x4ae769)+_0x2cdb8c(0x21e)+_0x220a2c['map'](_0x2189fe=>_0x2189fe['id'])[_0x2cdb8c(0x20e)](',\x20')+'.',_0x2cdb8c(0x1f6));const _0x4678e9={'appCode':_0x59da5f['appCode'],'menuGroups':[{'label':_0x4ae769,'type':_0x2cdb8c(0x1e4),'children':_0x174078[_0x2cdb8c(0x200)](_0x14fa5a=>({'id':_0x14fa5a['id'],'label':_0x14fa5a[_0x2cdb8c(0x1e0)]}))}]},_0x577d01=mutationResult({'operation':_0x2cdb8c(0x1f8),'selector':{'label':_0x4ae769,'menuIds':_0x8ca74f},'before':{'menus':_0x174078},'after':{'group':{'id':null,'parentId':null,'label':_0x4ae769,'path':_0x2cdb8c(0x211),'type':_0x2cdb8c(0x1e4),'childrenIds':_0x8ca74f},'children':_0x174078['map'](_0x22fd32=>({'id':_0x22fd32['id'],'label':_0x22fd32[_0x2cdb8c(0x1e0)],'beforeParentId':_0x22fd32['parentId'],'afterParentId':_0x2cdb8c(0x1d7)}))},'dryRun':_0x7d6b31,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2cdb8c(0x22c),'method':'POST','path':'/smartapi/menu/regroup','body':_0x4678e9}],'snapshotHash':_0x37e824[_0x2cdb8c(0x203)],'warnings':[_0x2cdb8c(0x22d),_0x2cdb8c(0x1f7)]});return{'label':_0x4ae769,'menuIds':_0x8ca74f,'input':_0x4678e9,'plan':_0x577d01};}function findAppliedRegroup(_0x18e987,_0x11c928,_0x2f45cb){const _0x22d54a=a110_0x4fbd33,_0xdf11e6=_0x2f45cb[_0x22d54a(0x200)](_0x4460b2=>_0x18e987[_0x22d54a(0x1e1)][_0x22d54a(0x227)](_0x4460b2))[_0x22d54a(0x1db)](_0x1e41b7=>Boolean(_0x1e41b7));if(_0xdf11e6[_0x22d54a(0x223)]!==_0x2f45cb[_0x22d54a(0x223)])return null;const _0x4129f0=_0xdf11e6[0x0]?.[_0x22d54a(0x21b)];if(_0x4129f0==null||_0xdf11e6['some'](_0xd1f8bb=>_0xd1f8bb[_0x22d54a(0x21b)]!==_0x4129f0))return null;const _0x120b70=_0x18e987[_0x22d54a(0x1e1)]['get'](_0x4129f0);if(!_0x120b70||_0x120b70['parentId']!=null||_0x120b70['type'][_0x22d54a(0x1d2)]()['toLowerCase']()!==_0x22d54a(0x1e4)||_0x120b70[_0x22d54a(0x1e0)]!==_0x11c928)return null;const _0x569840=[..._0x2f45cb]['sort']((_0x93931e,_0x152e28)=>_0x93931e-_0x152e28),_0x138189=[..._0x120b70['childrenIds']]['sort']((_0x4cf610,_0x4edf0e)=>_0x4cf610-_0x4edf0e);if(JSON['stringify'](_0x138189)!==JSON['stringify'](_0x569840))return null;return{'group':_0x120b70,'children':_0xdf11e6};}async function inspectRegroupAfterFailure(_0x5cb7db,_0x5b421b,_0x48b495,_0x446e9a){try{const _0x13487c=await fetchMenuSnapshot(_0x5cb7db,_0x5b421b);return{'applied':findAppliedRegroup(_0x13487c,_0x48b495,_0x446e9a),'readbackError':null};}catch(_0x3d3d88){return{'applied':null,'readbackError':_0x3d3d88 instanceof Error?_0x3d3d88['message']:String(_0x3d3d88)};}}
|
|
1
|
+
const a110_0x278034=a110_0x31fe;(function(_0x258506,_0x57d8f2){const _0x48159f=a110_0x31fe,_0x35a3e9=_0x258506();while(!![]){try{const _0x53c257=parseInt(_0x48159f(0x99))/0x1+-parseInt(_0x48159f(0xbf))/0x2*(parseInt(_0x48159f(0xc0))/0x3)+-parseInt(_0x48159f(0x98))/0x4+-parseInt(_0x48159f(0x7c))/0x5*(parseInt(_0x48159f(0x8f))/0x6)+-parseInt(_0x48159f(0xc4))/0x7+parseInt(_0x48159f(0xc6))/0x8*(-parseInt(_0x48159f(0x6f))/0x9)+parseInt(_0x48159f(0x7b))/0xa*(parseInt(_0x48159f(0xa1))/0xb);if(_0x53c257===_0x57d8f2)break;else _0x35a3e9['push'](_0x35a3e9['shift']());}catch(_0x5e1e0a){_0x35a3e9['push'](_0x35a3e9['shift']());}}}(a110_0x1e30,0x44b10));function a110_0x1e30(){const _0x532012=['The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','toLowerCase','applied','<new-group-id>','FAILED','trim','childrenIds','appCode','type','70544KTuOyC','42pekNOz','<platform-generated>','readbackError','start\x20menu\x20regroup','1320830crzQLQ','menu_regroup_already_applied','10584LnrcPx','menu_regroup_label_conflict','get','label','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','324zkRNba','size','join','POST','split','input','SUCCESS','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','menu_regroup_target_label_missing','Root\x20folder\x20label\x20','12930yDyThY','5GDcMnz','group','str','unconfirmed','plan','string','plan\x20regroup','regroup-start','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','message','some','\x20and\x20regroup\x20menu\x20ids\x20','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','sort','/smartapi/menu/regroup','\x20menus\x20per\x20regroup\x20request.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','folder','--menu-ids\x20supports\x20at\x20most\x20','1661922myYTcc','\x27\x5c\x27\x27','Menu\x20','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','warnings','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','menus','menu-ids','stringify','225976BXEpRO','523912wYhupH','failed','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','parentId','Menus\x20','menuIds','Regroup\x20readback\x20failed:\x20','6985KipQmW','isTerminal','validation','taskId','submit-regroup-task',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','length','Regroup\x20task\x20accepted.\x20','map','byId','isSafeInteger','test','replace','start\x20regroup','status','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','regroup-submit','cookie','knownStatus','hash','menu'];a110_0x1e30=function(){return _0x532012;};return a110_0x1e30();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a110_0x278034(0x72),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a110_0x278034(0xb5),'command':a110_0x278034(0x83),'description':'Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','risk':'high-risk-write','structuredErrors':!![],'flags':[{'name':'label','type':'string','required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a110_0x278034(0x96),'type':a110_0x278034(0x81),'required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3f2e3b){validateRegroupInput(_0x3f2e3b),requireExplicitYes(_0x3f2e3b);},async 'dryRun'(_0x5a07a5){const _0x156ea3=a110_0x278034;validateRegroupInput(_0x5a07a5);const _0x1335b1=await buildRegroupPlan(_0x5a07a5,!![]);return menuDryRunResult(_0x1335b1['plan'],{'method':_0x156ea3(0x72),'url':_0x156ea3(0x8a),'body':_0x1335b1[_0x156ea3(0x74)],'description':_0x156ea3(0x9b)+JSON['stringify'](_0x1335b1[_0x156ea3(0x6d)])+_0x156ea3(0x87)+_0x1335b1[_0x156ea3(0x9f)][_0x156ea3(0x71)](',\x20')+_0x156ea3(0xa6)});},async 'execute'(_0x207be5){const _0x263611=a110_0x278034;validateRegroupInput(_0x207be5),requireExplicitYes(_0x207be5);const _0x483375=await buildRegroupPlan(_0x207be5,![]);await recheckMutationSnapshot(_0x207be5,_0x483375[_0x263611(0x80)],_0x263611(0xae));const _0x2c5307=buildMenuLookupCommand(_0x207be5[_0x263611(0xbd)]);let _0x423580,_0x5cbb7c;try{_0x423580=await startMenuRegroup(_0x207be5[_0x263611(0xb2)],_0x483375[_0x263611(0x74)]),_0x5cbb7c=normalizeAsyncTask(_0x423580);}catch(_0x5316f1){const _0x20fbc1=await inspectRegroupAfterFailure(_0x207be5[_0x263611(0xbd)],_0x207be5[_0x263611(0xb2)],_0x483375['label'],_0x483375[_0x263611(0x9f)]),_0x3a5e42=typeof _0x423580?.[_0x263611(0xa4)]===_0x263611(0x81)&&_0x423580[_0x263611(0xa4)][_0x263611(0xbb)]()?_0x423580[_0x263611(0xa4)][_0x263611(0xbb)]():null,_0x26b9be=_0x3a5e42?{'command':buildAsyncTaskStatusCommand(_0x3a5e42,_0x207be5[_0x263611(0xbd)])}:null,_0x2577d5=mapMenuApiError(_0x5316f1,_0x263611(0xc3));throw menuFailure(_0x2577d5,_0x483375[_0x263611(0x80)],{'stage':_0x263611(0xb1),'failed':{'menuIds':_0x483375[_0x263611(0x9f)],'taskId':_0x3a5e42,'groupingApplied':_0x20fbc1[_0x263611(0xb8)]?!![]:_0x263611(0x7f)},'after':_0x20fbc1[_0x263611(0xb8)]??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.',..._0x20fbc1[_0x263611(0xc2)]?['Regroup\x20readback\x20also\x20failed:\x20'+_0x20fbc1[_0x263611(0xc2)]]:[],..._0x3a5e42?[_0x263611(0x78)]:[]],'verification':{'status':_0x263611(0x9a),'groupingApplied':_0x20fbc1[_0x263611(0xb8)]?!![]:_0x263611(0x7f),'taskId':_0x3a5e42,'query':_0x26b9be,'lookupCommand':_0x2c5307}});}const _0x2e1c4e=buildAsyncTaskStatusCommand(_0x5cbb7c[_0x263611(0xa4)],_0x207be5[_0x263611(0xbd)]);let _0x5c2fde=null,_0x1a990d=null,_0x47efc2=null;try{_0x5c2fde=await fetchMenuSnapshot(_0x207be5[_0x263611(0xbd)],_0x207be5[_0x263611(0xb2)]),_0x1a990d=findAppliedRegroup(_0x5c2fde,_0x483375[_0x263611(0x6d)],_0x483375['menuIds']);}catch(_0x55ac7b){_0x47efc2=_0x55ac7b instanceof Error?_0x55ac7b[_0x263611(0x85)]:String(_0x55ac7b);}const _0x5133cc=mutationResult({..._0x483375[_0x263611(0x80)],'after':_0x1a990d??null,'dryRun':![],'succeeded':[{'groupId':_0x1a990d?.[_0x263611(0x7d)]['id']??null,'menuIds':_0x483375[_0x263611(0x9f)],'taskId':_0x5cbb7c['taskId'],'status':_0x5cbb7c['status'],'groupingApplied':_0x1a990d?!![]:_0x263611(0x7f)}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x5c2fde?.[_0x263611(0xb4)]??null,'groupId':_0x1a990d?.[_0x263611(0x7d)]['id']??null,'groupingApplied':_0x1a990d?!![]:'unconfirmed','readbackError':_0x47efc2,'lookupCommand':_0x2c5307},'warnings':[..._0x483375[_0x263611(0x80)][_0x263611(0x93)],...!_0x1a990d?[unconfirmedRegroupWarning(_0x5cbb7c)]:[],..._0x47efc2?[_0x263611(0xa0)+_0x47efc2]:[]]}),_0x468b77=_0x5cbb7c[_0x263611(0xaf)]===_0x263611(0x75)&&!_0x1a990d?'Regroup\x20task\x20'+_0x5cbb7c[_0x263611(0xa4)]+'\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.':_0x263611(0xa8)+asyncTaskMessage(_0x5cbb7c);return{'ok':!![],'message':_0x468b77,'data':{..._0x5133cc,'task':_0x5cbb7c,'query':_0x5cbb7c[_0x263611(0xa2)]?null:{'command':_0x2e1c4e}}};}};function validateRegroupInput(_0x4f3547){const _0x51fd87=a110_0x278034;if(!_0x4f3547[_0x51fd87(0x7e)](_0x51fd87(0x6d))[_0x51fd87(0xbb)]())throw CliErrors['flagMissing']('label');parseMenuIds(_0x4f3547['str'](_0x51fd87(0x96)));}function parseMenuIds(_0xe0546a){const _0x33288e=a110_0x278034,_0x5a69a9=_0xe0546a[_0x33288e(0x73)](',')[_0x33288e(0xa9)](_0x5f21b7=>_0x5f21b7[_0x33288e(0xbb)]());if(_0x5a69a9[_0x33288e(0xa7)]===0x0||_0x5a69a9[_0x33288e(0x86)](_0x544a1b=>!_0x544a1b))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x5f3d18=_0x5a69a9[_0x33288e(0xa9)](_0x2417ec=>{const _0x121f96=_0x33288e;if(!/^\d+$/[_0x121f96(0xac)](_0x2417ec))throw CliErrors[_0x121f96(0xa3)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x42f522=Number(_0x2417ec);if(!Number[_0x121f96(0xab)](_0x42f522)||_0x42f522<=0x0)throw CliErrors[_0x121f96(0xa3)](_0x121f96(0x77));return _0x42f522;});if(new Set(_0x5f3d18)[_0x33288e(0x70)]!==_0x5f3d18[_0x33288e(0xa7)])throw CliErrors['validation']('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x5f3d18[_0x33288e(0xa7)]>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x33288e(0x8e)+MAX_REGROUP_MENU_COUNT+_0x33288e(0x8b));return _0x5f3d18;}function buildMenuLookupCommand(_0xb9c69a){const _0xe5d5c7=a110_0x278034,_0x52e783='\x27'+_0xb9c69a[_0xe5d5c7(0xad)](/'/g,_0xe5d5c7(0x90))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x52e783+'\x20--format\x20compress';}function unconfirmedRegroupWarning(_0x501dee){const _0x22eb02=a110_0x278034;if(_0x501dee[_0x22eb02(0xaf)]==='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(_0x501dee[_0x22eb02(0xaf)]===_0x22eb02(0xba))return _0x22eb02(0xb6);if(_0x501dee[_0x22eb02(0xb3)])return _0x22eb02(0x84);return'The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';}function a110_0x31fe(_0x3192fc,_0x1b077c){_0x3192fc=_0x3192fc-0x6d;const _0x1e3040=a110_0x1e30();let _0x31fe1a=_0x1e3040[_0x3192fc];return _0x31fe1a;}async function buildRegroupPlan(_0x11b84d,_0x5ea498){const _0x1ecc45=a110_0x278034,_0x5636b2=_0x11b84d[_0x1ecc45(0x7e)](_0x1ecc45(0x6d))[_0x1ecc45(0xbb)](),_0x2fe956=parseMenuIds(_0x11b84d[_0x1ecc45(0x7e)](_0x1ecc45(0x96))),_0x1e8024=await fetchMutationSnapshot(_0x11b84d,_0x1ecc45(0x82)),_0x4d1370=_0x2fe956[_0x1ecc45(0xa9)](_0x3cc260=>requireMenu(_0x1e8024,_0x3cc260));for(const _0x17a251 of _0x4d1370){if(_0x17a251[_0x1ecc45(0xbe)][_0x1ecc45(0xbb)]()[_0x1ecc45(0xb7)]()===_0x1ecc45(0x8d)||_0x17a251['childrenCount']>0x0)throw menuError('menu_regroup_target_not_leaf',_0x1ecc45(0x91)+_0x17a251['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',_0x1ecc45(0xb0));if(!_0x17a251[_0x1ecc45(0x6d)][_0x1ecc45(0xbb)]())throw menuError(_0x1ecc45(0x79),'Menu\x20'+_0x17a251['id']+_0x1ecc45(0x6e),_0x1ecc45(0x88));}const _0x45fc15=findAppliedRegroup(_0x1e8024,_0x5636b2,_0x2fe956);if(_0x45fc15)throw menuError(_0x1ecc45(0xc5),_0x1ecc45(0x9e)+_0x2fe956[_0x1ecc45(0x71)](',\x20')+_0x1ecc45(0x94)+_0x45fc15['group']['id']+'\x20('+JSON[_0x1ecc45(0x97)](_0x5636b2)+').',_0x1ecc45(0x9c));const _0x450ea4=_0x1e8024[_0x1ecc45(0x95)]['filter'](_0x69cb14=>_0x69cb14[_0x1ecc45(0x9d)]==null&&_0x69cb14[_0x1ecc45(0xbe)][_0x1ecc45(0xbb)]()[_0x1ecc45(0xb7)]()==='folder'&&_0x69cb14[_0x1ecc45(0x6d)]===_0x5636b2);if(_0x450ea4[_0x1ecc45(0xa7)]>0x0)throw menuError(_0x1ecc45(0xc7),_0x1ecc45(0x7a)+JSON[_0x1ecc45(0x97)](_0x5636b2)+'\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'+_0x450ea4[_0x1ecc45(0xa9)](_0x4aef3b=>_0x4aef3b['id'])[_0x1ecc45(0x71)](',\x20')+'.',_0x1ecc45(0x8c));const _0x2f599e={'appCode':_0x11b84d[_0x1ecc45(0xbd)],'menuGroups':[{'label':_0x5636b2,'type':_0x1ecc45(0x8d),'children':_0x4d1370[_0x1ecc45(0xa9)](_0x46eb21=>({'id':_0x46eb21['id'],'label':_0x46eb21[_0x1ecc45(0x6d)]}))}]},_0x586f56=mutationResult({'operation':_0x1ecc45(0x83),'selector':{'label':_0x5636b2,'menuIds':_0x2fe956},'before':{'menus':_0x4d1370},'after':{'group':{'id':null,'parentId':null,'label':_0x5636b2,'path':_0x1ecc45(0xc1),'type':_0x1ecc45(0x8d),'childrenIds':_0x2fe956},'children':_0x4d1370[_0x1ecc45(0xa9)](_0x4f368e=>({'id':_0x4f368e['id'],'label':_0x4f368e[_0x1ecc45(0x6d)],'beforeParentId':_0x4f368e['parentId'],'afterParentId':_0x1ecc45(0xb9)}))},'dryRun':_0x5ea498,'backend':[...BACKEND],'plannedActions':[{'stage':_0x1ecc45(0xa5),'method':'POST','path':_0x1ecc45(0x8a),'body':_0x2f599e}],'snapshotHash':_0x1e8024[_0x1ecc45(0xb4)],'warnings':[_0x1ecc45(0x92),_0x1ecc45(0x76)]});return{'label':_0x5636b2,'menuIds':_0x2fe956,'input':_0x2f599e,'plan':_0x586f56};}function findAppliedRegroup(_0x3d7010,_0x2d39b1,_0x3c7c46){const _0x665f15=a110_0x278034,_0x1420b4=_0x3c7c46[_0x665f15(0xa9)](_0x315b21=>_0x3d7010[_0x665f15(0xaa)]['get'](_0x315b21))['filter'](_0x56e8be=>Boolean(_0x56e8be));if(_0x1420b4[_0x665f15(0xa7)]!==_0x3c7c46['length'])return null;const _0x250c94=_0x1420b4[0x0]?.['parentId'];if(_0x250c94==null||_0x1420b4['some'](_0x5477ee=>_0x5477ee[_0x665f15(0x9d)]!==_0x250c94))return null;const _0x51c315=_0x3d7010[_0x665f15(0xaa)][_0x665f15(0xc8)](_0x250c94);if(!_0x51c315||_0x51c315[_0x665f15(0x9d)]!=null||_0x51c315['type'][_0x665f15(0xbb)]()[_0x665f15(0xb7)]()!==_0x665f15(0x8d)||_0x51c315[_0x665f15(0x6d)]!==_0x2d39b1)return null;const _0x4303e7=[..._0x3c7c46][_0x665f15(0x89)]((_0x1cb31e,_0x1d44f4)=>_0x1cb31e-_0x1d44f4),_0x133fed=[..._0x51c315[_0x665f15(0xbc)]][_0x665f15(0x89)]((_0x161144,_0x285f60)=>_0x161144-_0x285f60);if(JSON[_0x665f15(0x97)](_0x133fed)!==JSON[_0x665f15(0x97)](_0x4303e7))return null;return{'group':_0x51c315,'children':_0x1420b4};}async function inspectRegroupAfterFailure(_0x3b1c0e,_0x17ccb6,_0x54b89f,_0x23cdba){const _0x4e5f70=a110_0x278034;try{const _0x55af0d=await fetchMenuSnapshot(_0x3b1c0e,_0x17ccb6);return{'applied':findAppliedRegroup(_0x55af0d,_0x54b89f,_0x23cdba),'readbackError':null};}catch(_0x257586){return{'applied':null,'readbackError':_0x257586 instanceof Error?_0x257586[_0x4e5f70(0x85)]:String(_0x257586)};}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const a111_0x578e2b=a111_0x2ecc;(function(_0x48a1ca,_0x1d15bf){const _0x570b95=a111_0x2ecc,_0x5d46b5=_0x48a1ca();while(!![]){try{const _0x2df1c4=parseInt(_0x570b95(0x1a5))/0x1*(parseInt(_0x570b95(0x18e))/0x2)+-parseInt(_0x570b95(0x182))/0x3+parseInt(_0x570b95(0x166))/0x4*(-parseInt(_0x570b95(0x17c))/0x5)+-parseInt(_0x570b95(0x186))/0x6*(parseInt(_0x570b95(0x19d))/0x7)+-parseInt(_0x570b95(0x175))/0x8*(parseInt(_0x570b95(0x1ad))/0x9)+-parseInt(_0x570b95(0x18a))/0xa+parseInt(_0x570b95(0x19e))/0xb;if(_0x2df1c4===_0x1d15bf)break;else _0x5d46b5['push'](_0x5d46b5['shift']());}catch(_0x2cec20){_0x5d46b5['push'](_0x5d46b5['shift']());}}}(a111_0x3041,0x20126));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a111_0x578e2b(0x1a1),'path':'/smartapi/menu/update'}];export const menuRename={'service':a111_0x578e2b(0x195),'command':a111_0x578e2b(0x1a6),'description':a111_0x578e2b(0x174),'risk':a111_0x578e2b(0x16a),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a111_0x578e2b(0x162),'type':a111_0x578e2b(0x168),'required':!![],'description':a111_0x578e2b(0x16f)},{'name':a111_0x578e2b(0x1b7),'type':'string','required':!![],'description':a111_0x578e2b(0x1b0)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5ba57f){validateInput(_0x5ba57f),requireExplicitYes(_0x5ba57f);},async 'dryRun'(_0x19d81e){const _0x518fbe=a111_0x578e2b;validateInput(_0x19d81e);const _0x2873e0=await buildPlan(_0x19d81e,!![]);return menuDryRunResult(_0x2873e0[_0x518fbe(0x178)],{'method':_0x518fbe(0x1a1),'url':_0x518fbe(0x1ac),'body':_0x2873e0[_0x518fbe(0x1af)],'description':_0x518fbe(0x19f)+_0x2873e0[_0x518fbe(0x1af)]['id']+'.'});},async 'execute'(_0x131e29){const _0x57cec9=a111_0x578e2b;validateInput(_0x131e29),requireExplicitYes(_0x131e29);const _0x70fe22=await buildPlan(_0x131e29,![]),{plan:_0x560aad,body:_0x20e621,before:_0x39a02f,noChanges:_0x2df9dd}=_0x70fe22,_0x183b78=_0x20e621['id'];if(_0x2df9dd)return renameSuccess(_0x560aad,_0x70fe22[_0x57cec9(0x193)],_0x39a02f,!![],![]);await recheckMutationSnapshot(_0x131e29,_0x560aad,_0x57cec9(0x190),_0x183b78);try{await updateMenuEntity(_0x131e29['appCode'],_0x131e29[_0x57cec9(0x1ae)],{'id':_0x183b78,'label':_0x20e621[_0x57cec9(0x162)]});}catch(_0x354dba){const _0x2060bb=mapMenuApiError(_0x354dba,_0x57cec9(0x1a6),_0x183b78);if(isMenuResponseLoss(_0x354dba)&&_0x2060bb['code']!==_0x57cec9(0x16e))return recoverAfterResponseLoss(_0x131e29,_0x70fe22);throw menuFailure(_0x2060bb,_0x560aad,{'stage':_0x57cec9(0x164),'failed':{'id':_0x183b78},'warnings':[_0x57cec9(0x1b3)],'verification':{'status':_0x57cec9(0x194),'targetId':_0x183b78,'lookupCommand':buildLookupCommand(_0x131e29[_0x57cec9(0x169)])}});}let _0x144a52,_0x6c0a54;try{_0x144a52=await fetchMenuSnapshot(_0x131e29['appCode'],_0x131e29['cookie']),_0x6c0a54=requireMenu(_0x144a52,_0x183b78),verifyRenamedFact(_0x39a02f,_0x6c0a54,_0x20e621[_0x57cec9(0x162)]);}catch(_0x8ba3e){const _0x230a64=describeMenuErrorCause(_0x8ba3e,_0x57cec9(0x17d),_0x183b78),_0x53cc38=asVerificationError(_0x8ba3e,'Rename\x20request\x20for\x20menu\x20'+_0x183b78+_0x57cec9(0x18c));throw menuFailure(_0x53cc38,_0x560aad,{'stage':_0x57cec9(0x1a8),'succeeded':[{'id':_0x183b78,'updateRequested':!![]}],'failed':{'id':_0x183b78,'requestedStateConfirmed':![],..._0x230a64},'warnings':[_0x57cec9(0x167)],'verification':{'status':_0x57cec9(0x194),'targetId':_0x183b78,'lookupCommand':buildLookupCommand(_0x131e29['appCode'])}});}return renameSuccess(_0x560aad,_0x144a52,_0x6c0a54,![],![]);}};function validateInput(_0x2cf62f){const _0x2c9e36=a111_0x578e2b;validateExactId(_0x2cf62f);if(!_0x2cf62f[_0x2c9e36(0x177)]('label')['trim']())throw CliErrors[_0x2c9e36(0x19b)](_0x2c9e36(0x197));if(!_0x2cf62f[_0x2c9e36(0x177)](_0x2c9e36(0x1b7))[_0x2c9e36(0x181)]())throw CliErrors['flagMissing'](_0x2c9e36(0x1b7));}function a111_0x2ecc(_0x24c8ad,_0x1139fb){_0x24c8ad=_0x24c8ad-0x162;const _0x304115=a111_0x3041();let _0x2ecc8d=_0x304115[_0x24c8ad];return _0x2ecc8d;}async function buildPlan(_0x53bbb3,_0x44f1be){const _0x12def3=a111_0x578e2b,_0x1b8904=validateExactId(_0x53bbb3),_0x1cf5a0=_0x53bbb3[_0x12def3(0x177)]('label')['trim'](),_0x3b2cd2=_0x53bbb3[_0x12def3(0x177)](_0x12def3(0x1b7)),_0x45183c=await fetchMutationSnapshot(_0x53bbb3,'rename\x20menu',_0x1b8904),_0x3d64c8=requireMenu(_0x45183c,_0x1b8904);if(_0x3d64c8['label']!==_0x3b2cd2)throw menuError('menu_state_drift',_0x12def3(0x172)+_0x1b8904+_0x12def3(0x165)+JSON[_0x12def3(0x17f)](_0x3b2cd2)+_0x12def3(0x189)+JSON[_0x12def3(0x17f)](_0x3d64c8[_0x12def3(0x162)])+'.',_0x12def3(0x1a7));const _0x546571={'id':_0x1b8904,'appCode':_0x53bbb3['appCode'],'label':_0x1cf5a0},_0x5596ee={..._0x3d64c8,'label':_0x1cf5a0},_0x598d83=_0x3d64c8[_0x12def3(0x162)]===_0x1cf5a0,_0x123ab2=_0x598d83?[]:[{'stage':_0x12def3(0x196),'method':_0x12def3(0x1a1),'path':_0x12def3(0x1ac),'body':_0x546571}];return{'snapshot':_0x45183c,'before':_0x3d64c8,'body':_0x546571,'noChanges':_0x598d83,'plan':mutationResult({'operation':_0x12def3(0x1a6),'selector':{'id':_0x1b8904},'before':_0x3d64c8,'after':_0x5596ee,'dryRun':_0x44f1be,'backend':[...BACKEND],'plannedActions':_0x123ab2,'snapshotHash':_0x45183c[_0x12def3(0x18d)],'warnings':_0x598d83?[_0x12def3(0x1ab)]:[]})};}function verifyRenamedFact(_0x27bdd6,_0x9d3de9,_0x5bb6b5){const _0xd7a5ba=a111_0x578e2b,_0x37b4a3=[['id',_0x9d3de9['id'],_0x27bdd6['id']],['parentId',_0x9d3de9['parentId'],_0x27bdd6[_0xd7a5ba(0x184)]],[_0xd7a5ba(0x17e),_0x9d3de9[_0xd7a5ba(0x17e)],_0x27bdd6[_0xd7a5ba(0x17e)]],[_0xd7a5ba(0x1a0),_0x9d3de9[_0xd7a5ba(0x1a0)],_0x27bdd6[_0xd7a5ba(0x1a0)]],[_0xd7a5ba(0x1b5),_0x9d3de9[_0xd7a5ba(0x1b5)],_0x27bdd6[_0xd7a5ba(0x1b5)]],['type',_0x9d3de9['type'],_0x27bdd6[_0xd7a5ba(0x17b)]],[_0xd7a5ba(0x19c),_0x9d3de9[_0xd7a5ba(0x19c)],_0x27bdd6[_0xd7a5ba(0x19c)]],[_0xd7a5ba(0x198),_0x9d3de9[_0xd7a5ba(0x198)],_0x27bdd6[_0xd7a5ba(0x198)]],['resources',_0x9d3de9['resources'],_0x27bdd6[_0xd7a5ba(0x1a2)]],[_0xd7a5ba(0x1a4),_0x9d3de9[_0xd7a5ba(0x1a4)],_0x27bdd6['resourcesValid']],['childrenIds',_0x9d3de9[_0xd7a5ba(0x179)],_0x27bdd6[_0xd7a5ba(0x179)]],['childrenCount',_0x9d3de9['childrenCount'],_0x27bdd6[_0xd7a5ba(0x192)]],[_0xd7a5ba(0x170),_0x9d3de9['pageId'],_0x27bdd6[_0xd7a5ba(0x170)]],['pageType',_0x9d3de9[_0xd7a5ba(0x16b)],_0x27bdd6[_0xd7a5ba(0x16b)]],[_0xd7a5ba(0x187),_0x9d3de9['modelType'],_0x27bdd6[_0xd7a5ba(0x187)]],[_0xd7a5ba(0x183),_0x9d3de9[_0xd7a5ba(0x183)],_0x27bdd6[_0xd7a5ba(0x183)]],[_0xd7a5ba(0x16c),_0x9d3de9[_0xd7a5ba(0x16c)],_0x27bdd6[_0xd7a5ba(0x16c)]]];for(const [_0x576b92,_0x54ec89,_0x459026]of _0x37b4a3){assertVerified(sameValue(_0x54ec89,_0x459026),_0xd7a5ba(0x172)+_0x27bdd6['id']+'\x20'+_0x576b92+_0xd7a5ba(0x19a));}assertVerified(_0x9d3de9[_0xd7a5ba(0x162)]===_0x5bb6b5,_0xd7a5ba(0x172)+_0x27bdd6['id']+'\x20label\x20update\x20did\x20not\x20take\x20effect.');}function sameValue(_0x34e600,_0xa27ea4){const _0x931c4a=a111_0x578e2b;if(Array[_0x931c4a(0x1b6)](_0x34e600)||Array['isArray'](_0xa27ea4))return JSON[_0x931c4a(0x17f)](_0x34e600)===JSON[_0x931c4a(0x17f)](_0xa27ea4);return _0x34e600===_0xa27ea4;}function renameSuccess(_0x409708,_0x7d0620,_0x309c6f,_0x1bbaff,_0x589cd3){const _0x578059=a111_0x578e2b,_0x25131b=_0x309c6f['id'],_0xd8b20e=mutationResult({..._0x409708,'after':_0x309c6f,'dryRun':![],'succeeded':[{'id':_0x25131b,'updated':!_0x1bbaff,'skipped':_0x1bbaff,'recovered':_0x589cd3}],'verification':{'checkedBy':_0x578059(0x188),'snapshotHash':_0x7d0620[_0x578059(0x18d)],'targetId':_0x25131b,'matchesRequestedState':!![],'recovered':_0x589cd3}});return{'ok':!![],'message':_0x589cd3?_0x578059(0x16d)+_0x25131b+'.':_0x1bbaff?'Menu\x20'+_0x25131b+'\x20already\x20has\x20the\x20requested\x20label.':_0x578059(0x1a9)+_0x25131b+'.','data':{..._0xd8b20e,'recovered':_0x589cd3}};}async function recoverAfterResponseLoss(_0x2aa059,_0xcb8a7e){const _0x2c8d12=a111_0x578e2b,{plan:_0x7295de,before:_0x328fbe,body:_0x2dbd7a}=_0xcb8a7e;let _0x24babf;try{_0x24babf=await fetchMenuSnapshot(_0x2aa059[_0x2c8d12(0x169)],_0x2aa059[_0x2c8d12(0x1ae)]);}catch{throw recoveryRequired(_0x7295de,_0x2aa059['appCode'],{'id':_0x2dbd7a['id'],'readbackFailed':!![]});}const _0x4c49df=_0x24babf[_0x2c8d12(0x18f)][_0x2c8d12(0x180)](_0x2dbd7a['id']);if(!_0x4c49df||_0x4c49df['label']!==_0x2dbd7a[_0x2c8d12(0x162)])throw recoveryRequired(_0x7295de,_0x2aa059['appCode'],{'id':_0x2dbd7a['id'],'requestedLabelObserved':![],'after':_0x4c49df??null});try{verifyRenamedFact(_0x328fbe,_0x4c49df,_0x2dbd7a[_0x2c8d12(0x162)]);}catch(_0x5aa5e6){const _0x2745f2=asVerificationError(_0x5aa5e6,_0x2c8d12(0x171)+_0x2dbd7a['id']+_0x2c8d12(0x1a3));throw menuFailure(_0x2745f2,_0x7295de,{'stage':_0x2c8d12(0x173),'succeeded':[{'id':_0x2dbd7a['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x2dbd7a['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x4c49df,'warnings':['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x2c8d12(0x194),'targetId':_0x2dbd7a['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x2aa059[_0x2c8d12(0x169)])}});}return renameSuccess(_0x7295de,_0x24babf,_0x4c49df,![],!![]);}function recoveryRequired(_0x391a8f,_0x4c04fb,_0x162d07){const _0x49c8ab=a111_0x578e2b,_0x5024e3=menuError(_0x49c8ab(0x17a),_0x49c8ab(0x1b2),'Run\x20'+buildLookupCommand(_0x4c04fb)+_0x49c8ab(0x185));return menuFailure(_0x5024e3,_0x391a8f,{'stage':_0x49c8ab(0x173),'failed':{'id':_0x162d07['id'],..._0x162d07['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x162d07['requestedLabelObserved']},..._0x162d07[_0x49c8ab(0x199)]?{'readbackFailed':!![]}:{}},'after':_0x162d07[_0x49c8ab(0x1b1)],'warnings':[_0x49c8ab(0x1aa)],'verification':{'status':'failed','targetId':_0x162d07['id'],..._0x162d07[_0x49c8ab(0x163)]===undefined?{}:{'requestedLabelObserved':_0x162d07[_0x49c8ab(0x163)]},..._0x162d07[_0x49c8ab(0x199)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x4c04fb)}});}function buildLookupCommand(_0x1dcabb){const _0x1ec9b5=a111_0x578e2b,_0x14fe84='\x27'+_0x1dcabb[_0x1ec9b5(0x18b)](/'/g,_0x1ec9b5(0x176))+'\x27';return _0x1ec9b5(0x191)+_0x14fe84+_0x1ec9b5(0x1b4);}function a111_0x3041(){const _0x512ee3=['byId','rename\x20menu','rabetbase\x20menu\x20list\x20--appcode\x20','childrenCount','snapshot','failed','menu','rename-menu','--label\x20cannot\x20be\x20empty.','sort','readbackFailed','\x20changed\x20during\x20the\x20label-only\x20rename.','validation','visible','910007AFtSVg','5237441zBWhsd','Would\x20rename\x20menu\x20','path','POST','resources','\x20could\x20not\x20be\x20verified\x20safely','resourcesValid','5794fOEzDW','rename','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','verification','Renamed\x20menu\x20','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','/smartapi/menu/update','9DyhyFU','cookie','body','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','after','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20--format\x20compress','url','isArray','expect-label','label','requestedLabelObserved','update','\x20label\x20changed:\x20expected\x20','75388yfAelM','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','string','appCode','high-risk-write','pageType','datasetCode','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','menu_permission_denied','New\x20menu\x20label','pageId','Response\x20was\x20lost\x20and\x20menu\x20','Menu\x20','update-recovery','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','143656KSuDpm','\x27\x5c\x27\x27','str','plan','childrenIds','menu_update_recovery_required','type','5VLTtub','verify\x20menu\x20rename','depth','stringify','get','trim','381891QzshZd','datasetId','parentId','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','12WfLDgj','modelType','menu\x20list',',\x20current\x20','1350400cNIFAZ','replace','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','hash','74xRYHbS'];a111_0x3041=function(){return _0x512ee3;};return a111_0x3041();}
|