@lovrabet/rabetbase-cli 2.4.1-beta.1 → 2.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/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/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/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/react/create.js +1 -1
- package/lib/commands/page/react/detail.js +1 -1
- package/lib/commands/page/react/list.js +1 -1
- package/lib/commands/page/react/publish.js +1 -1
- package/lib/commands/page/react/shared.js +1 -1
- package/lib/commands/page/react/syntax.js +1 -1
- package/lib/commands/page/react/template.js +1 -1
- package/lib/commands/page/react/update.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/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/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/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
- package/skills/rabetbase/SKILL.md +1 -1
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const a111_0xa4d45f=a111_0x50e8;function a111_0x4655(){const _0x45d119=['hash','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','verification','\x20has\x20an\x20unexpected\x20sort.','menu_create_response_invalid','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','depth','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','67998WCcVVb','string','menu','trim','\x20has\x20resources.','sort','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','root','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','<platform-generated>','create-folder','Created\x20menu\x20folder\x20','path','parentId','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','group-create','\x20is\x20not\x20visible.','991136aGShiN','verify\x20folder\x20creation','Menu\x20create\x20response\x20for\x20folder\x20','create-response-validation','cookie','56CvEnwS','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','label','Created\x20menu\x20','Created\x20folder\x20','flagMissing','parent-id','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','create','create\x20folder','\x20is\x20not\x20type\x20folder.','2390760TlKUaS','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','Folder\x20label','menu\x20list','\x22\x20with\x20a\x20platform-generated\x20path.','2505084eXfOez','10869aqaQDl','11652750UIOdnq','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder',';\x20verify\x20it\x20before\x20retrying.','type','rabetbase\x20menu\x20list\x20--format\x20json','appCode','length','POST','Folder\x20','failed','folder','\x20unexpectedly\x20owns\x20a\x20page.','296xnajhc','isSafeInteger','str','6769QvUHts','byId','resources'];a111_0x4655=function(){return _0x45d119;};return a111_0x4655();}function a111_0x50e8(_0x5c9989,_0x480f37){_0x5c9989=_0x5c9989-0xc7;const _0x4655b6=a111_0x4655();let _0x50e822=_0x4655b6[_0x5c9989];return _0x50e822;}(function(_0x33d2ad,_0x2cf19c){const _0x14ee6d=a111_0x50e8,_0x626e=_0x33d2ad();while(!![]){try{const _0x593b3e=-parseInt(_0x14ee6d(0xcc))/0x1*(parseInt(_0x14ee6d(0xed))/0x2)+parseInt(_0x14ee6d(0xfe))/0x3+-parseInt(_0x14ee6d(0xe8))/0x4+-parseInt(_0x14ee6d(0xf8))/0x5+-parseInt(_0x14ee6d(0xfd))/0x6+parseInt(_0x14ee6d(0xd7))/0x7*(parseInt(_0x14ee6d(0xc9))/0x8)+parseInt(_0x14ee6d(0xff))/0x9;if(_0x593b3e===_0x2cf19c)break;else _0x626e['push'](_0x626e['shift']());}catch(_0x334a68){_0x626e['push'](_0x626e['shift']());}}}(a111_0x4655,0x4f4c9));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':'/smartapi/menu/create'}];export const menuGroupCreate={'service':a111_0xa4d45f(0xd9),'command':a111_0xa4d45f(0xe6),'description':a111_0xa4d45f(0x100),'risk':'write','structuredErrors':!![],'flags':[{'name':a111_0xa4d45f(0xef),'type':a111_0xa4d45f(0xd8),'required':!![],'description':a111_0xa4d45f(0xfa)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4142fd){validateCreateInput(_0x4142fd);},async 'dryRun'(_0x3e609a){const _0x185a62=a111_0xa4d45f,_0xb96f7d=await buildCreatePlan(_0x3e609a,!![]),_0x4c2083=_0xb96f7d['after'];return menuDryRunResult(_0xb96f7d,{'method':_0x185a62(0x106),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x4c2083[_0x185a62(0xe4)]),'label':_0x4c2083[_0x185a62(0xef)],'type':_0x185a62(0xc7),'visible':!![],'sort':_0x4c2083['sort'],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x4c2083['label'])+_0x185a62(0xfc)});},async 'execute'(_0x430aac){const _0x838a7a=a111_0xa4d45f;validateCreateInput(_0x430aac);const _0x46e597=await buildCreatePlan(_0x430aac,![]),_0x2d1c29=_0x46e597['after'];await recheckMutationSnapshot(_0x430aac,_0x46e597,_0x838a7a(0xf6));let _0x56e794;try{_0x56e794=await createMenuEntity(_0x430aac[_0x838a7a(0x104)],_0x430aac['cookie'],{'parentId':toApiParentId(_0x2d1c29[_0x838a7a(0xe4)]),'label':String(_0x2d1c29[_0x838a7a(0xef)]),'type':_0x838a7a(0xc7),'visible':!![],'sort':Number(_0x2d1c29[_0x838a7a(0xdc)]),'extend':{}});}catch(_0x5840bb){const _0x4a0ca6=mapMenuApiError(_0x5840bb,_0x838a7a(0xf6));throw menuFailure(_0x4a0ca6,_0x46e597,{'stage':_0x838a7a(0xf5),'failed':{}});}const _0x57e842=Number(_0x56e794['id']);if(!Number[_0x838a7a(0xca)](_0x57e842)||_0x57e842<=0x0){const _0xca4256=menuError(_0x838a7a(0xd3),_0x838a7a(0xdd),_0x838a7a(0xe5));throw menuFailure(_0xca4256,_0x46e597,{'stage':_0x838a7a(0xeb),'failed':{'createdId':_0x56e794['id']??null},'warnings':[_0x838a7a(0xee)],'verification':{'status':_0x838a7a(0x108),'lookupCommand':_0x838a7a(0x103)}});}const _0x282ab5=typeof _0x56e794['path']==='string'?_0x56e794[_0x838a7a(0xe3)]:'';if(!_0x282ab5[_0x838a7a(0xda)]()){const _0x26448a=menuError(_0x838a7a(0xd3),_0x838a7a(0xea)+_0x57e842+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x26448a,_0x46e597,{'stage':_0x838a7a(0xeb),'succeeded':[{'id':_0x57e842,'created':!![]}],'failed':{'id':_0x57e842,'generatedPathConfirmed':![]},'warnings':[_0x838a7a(0x107)+_0x57e842+_0x838a7a(0xd6)],'after':{..._0x2d1c29,'id':_0x57e842,'path':_0x282ab5},'verification':{'status':'failed','lookupCommand':_0x838a7a(0x103),'targetId':_0x57e842}});}let _0x4358cb;try{_0x4358cb=await fetchMenuSnapshot(_0x430aac[_0x838a7a(0x104)],_0x430aac[_0x838a7a(0xec)]);}catch(_0x454085){const _0x21218d=describeMenuErrorCause(_0x454085,'verify\x20folder\x20creation',_0x57e842),_0x44292e=asVerificationError(_0x454085,_0x838a7a(0x107)+_0x57e842+_0x838a7a(0xdf));throw menuFailure(_0x44292e,_0x46e597,{'stage':_0x838a7a(0xd1),'succeeded':[{'id':_0x57e842,'created':!![],'path':_0x282ab5}],'failed':{'id':_0x57e842,'finalFactsConfirmed':![],..._0x21218d},'warnings':['Folder\x20'+_0x57e842+'\x20may\x20exist\x20online\x20at\x20path\x20'+JSON['stringify'](_0x282ab5)+_0x838a7a(0x101)],'after':{..._0x2d1c29,'id':_0x57e842,'path':_0x282ab5},'verification':{'status':_0x838a7a(0x108),'lookupCommand':_0x838a7a(0x103),'targetId':_0x57e842}});}const _0x167e5b=_0x4358cb[_0x838a7a(0xcd)]['get'](_0x57e842);let _0x526d7b;try{assertVerified(Boolean(_0x167e5b),'Created\x20folder\x20'+_0x57e842+'\x20is\x20missing\x20from\x20menu\x20list.'),_0x526d7b=_0x167e5b,assertVerified(_0x526d7b[_0x838a7a(0x102)]==='folder',_0x838a7a(0xf0)+_0x57e842+_0x838a7a(0xf7)),assertVerified(_0x526d7b[_0x838a7a(0xef)]===_0x2d1c29[_0x838a7a(0xef)],_0x838a7a(0xf1)+_0x57e842+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x526d7b[_0x838a7a(0xe3)]===_0x282ab5&&Boolean(_0x526d7b[_0x838a7a(0xe3)]['trim']()),_0x838a7a(0xf1)+_0x57e842+_0x838a7a(0xf9)),assertVerified(_0x526d7b['visible']===!![],_0x838a7a(0xf1)+_0x57e842+_0x838a7a(0xe7)),assertVerified(_0x526d7b[_0x838a7a(0xce)][_0x838a7a(0x105)]===0x0,'Created\x20folder\x20'+_0x57e842+_0x838a7a(0xdb)),assertVerified(_0x526d7b['childrenCount']===0x0,_0x838a7a(0xf1)+_0x57e842+'\x20is\x20not\x20empty.'),assertVerified(_0x526d7b[_0x838a7a(0xdc)]===_0x2d1c29['sort'],'Created\x20folder\x20'+_0x57e842+_0x838a7a(0xd2)),assertVerified(_0x526d7b[_0x838a7a(0xe4)]===_0x2d1c29['parentId'],_0x838a7a(0xf1)+_0x57e842+'\x20has\x20unexpected\x20parent\x20'+(_0x526d7b[_0x838a7a(0xe4)]??_0x838a7a(0xde))+'.'),assertVerified(_0x526d7b['pageId']==null,_0x838a7a(0xf1)+_0x57e842+_0x838a7a(0xc8));const _0x2272a9=_0x526d7b[_0x838a7a(0xe4)]==null?undefined:requireFolder(_0x4358cb,_0x526d7b[_0x838a7a(0xe4)]);assertVerified(_0x526d7b[_0x838a7a(0xd5)]===(_0x2272a9?_0x2272a9['depth']+0x1:0x0),_0x838a7a(0xf1)+_0x57e842+_0x838a7a(0xd4));}catch(_0x4e71f5){const _0x7e9472=describeMenuErrorCause(_0x4e71f5,_0x838a7a(0xe9),_0x57e842),_0x30eb77=asVerificationError(_0x4e71f5,'Folder\x20'+_0x57e842+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0x30eb77,_0x46e597,{'stage':_0x838a7a(0xd1),'succeeded':[{'id':_0x57e842,'created':!![],'path':_0x282ab5}],'failed':{'id':_0x57e842,'finalFactsConfirmed':![],..._0x7e9472},'warnings':[_0x838a7a(0x107)+_0x57e842+_0x838a7a(0xd0)],'after':_0x167e5b??{..._0x2d1c29,'id':_0x57e842,'path':_0x282ab5},'verification':{'status':_0x838a7a(0x108),'lookupCommand':_0x838a7a(0x103),'targetId':_0x57e842}});}const _0x36ab7d=mutationResult({..._0x46e597,'after':_0x526d7b,'dryRun':![],'succeeded':[{'id':_0x57e842,'type':_0x838a7a(0xc7),'path':_0x282ab5}],'verification':{'checkedBy':_0x838a7a(0xfb),'snapshotHash':_0x4358cb['hash'],'folder':!![],'path':_0x282ab5,'emptyResources':!![]}});return{'ok':!![],'data':_0x36ab7d,'message':_0x838a7a(0xe2)+_0x57e842+'.'};}};function validateCreateInput(_0x391f45){const _0x3f5a9a=a111_0xa4d45f,_0x1ea0e0=_0x391f45['str'](_0x3f5a9a(0xef))[_0x3f5a9a(0xda)]();if(!_0x1ea0e0)throw CliErrors[_0x3f5a9a(0xf2)](_0x3f5a9a(0xef));parseParentId(_0x391f45,'parent-id'),validateSort(_0x391f45);}async function buildCreatePlan(_0x2e2857,_0xa2943a){const _0x136b77=a111_0xa4d45f,_0x50564b=await fetchMutationSnapshot(_0x2e2857,_0x136b77(0xf6)),_0x4fa938=parseParentId(_0x2e2857,_0x136b77(0xf3))??null;if(_0x4fa938!=null)requireFolder(_0x50564b,_0x4fa938);const _0x4a515d=validateSort(_0x2e2857),_0x512b41=_0x4a515d??nextSiblingSort(_0x50564b,_0x4fa938,_0x136b77(0xc7)),_0xcefb07=_0x2e2857[_0x136b77(0xcb)](_0x136b77(0xef))[_0x136b77(0xda)]();return mutationResult({'operation':'group-create','selector':{'label':_0xcefb07,'parentId':_0x4fa938},'before':null,'after':{'id':null,'parentId':_0x4fa938,'label':_0xcefb07,'path':_0x136b77(0xe0),'type':_0x136b77(0xc7),'visible':!![],'sort':_0x512b41,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0xa2943a,'backend':[...BACKEND],'plannedActions':[{'stage':_0x136b77(0xe1),'method':_0x136b77(0x106),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x4fa938),'label':_0xcefb07,'type':_0x136b77(0xc7),'visible':!![],'sort':_0x512b41,'extend':{}}}],'snapshotHash':_0x50564b[_0x136b77(0xcf)],'warnings':[_0x136b77(0xf4)]});}
|
|
1
|
+
const a111_0x1e4bd9=a111_0x2d0f;(function(_0xb21717,_0x34ba37){const _0x56740e=a111_0x2d0f,_0x2a1900=_0xb21717();while(!![]){try{const _0x2dc0e2=-parseInt(_0x56740e(0x12b))/0x1*(parseInt(_0x56740e(0x105))/0x2)+-parseInt(_0x56740e(0x11b))/0x3+-parseInt(_0x56740e(0x12c))/0x4*(parseInt(_0x56740e(0x10b))/0x5)+parseInt(_0x56740e(0xf4))/0x6+-parseInt(_0x56740e(0x122))/0x7+-parseInt(_0x56740e(0xf2))/0x8+parseInt(_0x56740e(0x111))/0x9;if(_0x2dc0e2===_0x34ba37)break;else _0x2a1900['push'](_0x2a1900['shift']());}catch(_0x4254f1){_0x2a1900['push'](_0x2a1900['shift']());}}}(a111_0x5d01,0x65053));function a111_0x5d01(){const _0x51676a=['\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','visible','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','menu\x20list','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','appCode','verify\x20folder\x20creation','sort','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','menu','<platform-generated>','group-create','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','2335800HHCpWt',';\x20verify\x20it\x20before\x20retrying.','2958366nVeSFX','resources','parent-id','\x20is\x20not\x20visible.','string','\x20has\x20an\x20unexpected\x20label.','hash','byId','POST','\x22\x20with\x20a\x20platform-generated\x20path.','create','\x20has\x20an\x20unexpected\x20sort.','\x20has\x20resources.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','cookie','/smartapi/menu/create','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','8lFDyjd','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','trim','after','write','folder','3665WhxkjG','type','create-response-validation','failed','Would\x20create\x20empty\x20folder\x20\x22','Created\x20menu\x20folder\x20','16715916UwOaJs','Created\x20menu\x20','create-folder','get','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20is\x20missing\x20from\x20menu\x20list.','create\x20folder','pageId','rabetbase\x20menu\x20list\x20--format\x20json','Created\x20folder\x20','2425200RPoNGK','Folder\x20','menu_create_response_invalid','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','\x20has\x20unexpected\x20parent\x20','parentId','Menu\x20create\x20response\x20for\x20folder\x20','4142936toIZVo','verification','root','stringify','path','\x20unexpectedly\x20owns\x20a\x20page.','\x20may\x20exist\x20online\x20at\x20path\x20','\x20is\x20not\x20type\x20folder.','label','57614BWUzjg','76dIulGP'];a111_0x5d01=function(){return _0x51676a;};return a111_0x5d01();}function a111_0x2d0f(_0xe35ad9,_0x5ca4e2){_0xe35ad9=_0xe35ad9-0xf2;const _0x5d012a=a111_0x5d01();let _0x2d0fca=_0x5d012a[_0xe35ad9];return _0x2d0fca;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a111_0x1e4bd9(0xfc),'path':a111_0x1e4bd9(0x103)}];export const menuGroupCreate={'service':a111_0x1e4bd9(0x138),'command':a111_0x1e4bd9(0x13a),'description':a111_0x1e4bd9(0x104),'risk':a111_0x1e4bd9(0x109),'structuredErrors':!![],'flags':[{'name':a111_0x1e4bd9(0x12a),'type':a111_0x1e4bd9(0xf8),'required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x26b858){validateCreateInput(_0x26b858);},async 'dryRun'(_0x449817){const _0x5efa52=a111_0x1e4bd9,_0x3527f8=await buildCreatePlan(_0x449817,!![]),_0x20f853=_0x3527f8['after'];return menuDryRunResult(_0x3527f8,{'method':_0x5efa52(0xfc),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x20f853[_0x5efa52(0x120)]),'label':_0x20f853[_0x5efa52(0x12a)],'type':_0x5efa52(0x10a),'visible':!![],'sort':_0x20f853['sort'],'extend':{}},'description':_0x5efa52(0x10f)+String(_0x20f853['label'])+_0x5efa52(0xfd)});},async 'execute'(_0x1b19ac){const _0x347ab5=a111_0x1e4bd9;validateCreateInput(_0x1b19ac);const _0x5016b5=await buildCreatePlan(_0x1b19ac,![]),_0x558166=_0x5016b5[_0x347ab5(0x108)];await recheckMutationSnapshot(_0x1b19ac,_0x5016b5,_0x347ab5(0x117));let _0xb0064c;try{_0xb0064c=await createMenuEntity(_0x1b19ac[_0x347ab5(0x134)],_0x1b19ac['cookie'],{'parentId':toApiParentId(_0x558166['parentId']),'label':String(_0x558166[_0x347ab5(0x12a)]),'type':'folder','visible':!![],'sort':Number(_0x558166[_0x347ab5(0x136)]),'extend':{}});}catch(_0x141b95){const _0xc363a6=mapMenuApiError(_0x141b95,_0x347ab5(0x117));throw menuFailure(_0xc363a6,_0x5016b5,{'stage':_0x347ab5(0xfe),'failed':{}});}const _0x251388=Number(_0xb0064c['id']);if(!Number['isSafeInteger'](_0x251388)||_0x251388<=0x0){const _0xe84da=menuError(_0x347ab5(0x11d),_0x347ab5(0x12f),_0x347ab5(0x115));throw menuFailure(_0xe84da,_0x5016b5,{'stage':_0x347ab5(0x10d),'failed':{'createdId':_0xb0064c['id']??null},'warnings':[_0x347ab5(0x101)],'verification':{'status':_0x347ab5(0x10e),'lookupCommand':_0x347ab5(0x119)}});}const _0x2d8257=typeof _0xb0064c['path']===_0x347ab5(0xf8)?_0xb0064c[_0x347ab5(0x126)]:'';if(!_0x2d8257[_0x347ab5(0x107)]()){const _0x53611b=menuError(_0x347ab5(0x11d),_0x347ab5(0x121)+_0x251388+_0x347ab5(0x131),_0x347ab5(0x106));throw menuFailure(_0x53611b,_0x5016b5,{'stage':_0x347ab5(0x10d),'succeeded':[{'id':_0x251388,'created':!![]}],'failed':{'id':_0x251388,'generatedPathConfirmed':![]},'warnings':[_0x347ab5(0x11c)+_0x251388+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x558166,'id':_0x251388,'path':_0x2d8257},'verification':{'status':_0x347ab5(0x10e),'lookupCommand':_0x347ab5(0x119),'targetId':_0x251388}});}let _0x1a06a6;try{_0x1a06a6=await fetchMenuSnapshot(_0x1b19ac[_0x347ab5(0x134)],_0x1b19ac[_0x347ab5(0x102)]);}catch(_0x4d033d){const _0x23d9d0=describeMenuErrorCause(_0x4d033d,_0x347ab5(0x135),_0x251388),_0x3fecfe=asVerificationError(_0x4d033d,'Folder\x20'+_0x251388+_0x347ab5(0x12e));throw menuFailure(_0x3fecfe,_0x5016b5,{'stage':'verification','succeeded':[{'id':_0x251388,'created':!![],'path':_0x2d8257}],'failed':{'id':_0x251388,'finalFactsConfirmed':![],..._0x23d9d0},'warnings':[_0x347ab5(0x11c)+_0x251388+_0x347ab5(0x128)+JSON[_0x347ab5(0x125)](_0x2d8257)+_0x347ab5(0xf3)],'after':{..._0x558166,'id':_0x251388,'path':_0x2d8257},'verification':{'status':'failed','lookupCommand':_0x347ab5(0x119),'targetId':_0x251388}});}const _0x43c340=_0x1a06a6[_0x347ab5(0xfb)][_0x347ab5(0x114)](_0x251388);let _0x497a57;try{assertVerified(Boolean(_0x43c340),'Created\x20folder\x20'+_0x251388+_0x347ab5(0x116)),_0x497a57=_0x43c340,assertVerified(_0x497a57[_0x347ab5(0x10c)]==='folder',_0x347ab5(0x112)+_0x251388+_0x347ab5(0x129)),assertVerified(_0x497a57[_0x347ab5(0x12a)]===_0x558166[_0x347ab5(0x12a)],'Created\x20folder\x20'+_0x251388+_0x347ab5(0xf9)),assertVerified(_0x497a57[_0x347ab5(0x126)]===_0x2d8257&&Boolean(_0x497a57[_0x347ab5(0x126)]['trim']()),_0x347ab5(0x11a)+_0x251388+_0x347ab5(0x12d)),assertVerified(_0x497a57[_0x347ab5(0x130)]===!![],_0x347ab5(0x11a)+_0x251388+_0x347ab5(0xf7)),assertVerified(_0x497a57[_0x347ab5(0xf5)]['length']===0x0,_0x347ab5(0x11a)+_0x251388+_0x347ab5(0x100)),assertVerified(_0x497a57['childrenCount']===0x0,_0x347ab5(0x11a)+_0x251388+'\x20is\x20not\x20empty.'),assertVerified(_0x497a57['sort']===_0x558166[_0x347ab5(0x136)],_0x347ab5(0x11a)+_0x251388+_0x347ab5(0xff)),assertVerified(_0x497a57['parentId']===_0x558166['parentId'],_0x347ab5(0x11a)+_0x251388+_0x347ab5(0x11f)+(_0x497a57[_0x347ab5(0x120)]??_0x347ab5(0x124))+'.'),assertVerified(_0x497a57[_0x347ab5(0x118)]==null,_0x347ab5(0x11a)+_0x251388+_0x347ab5(0x127));const _0x852a88=_0x497a57[_0x347ab5(0x120)]==null?undefined:requireFolder(_0x1a06a6,_0x497a57['parentId']);assertVerified(_0x497a57['depth']===(_0x852a88?_0x852a88['depth']+0x1:0x0),_0x347ab5(0x11a)+_0x251388+_0x347ab5(0x133));}catch(_0x356eaa){const _0x39c41b=describeMenuErrorCause(_0x356eaa,_0x347ab5(0x135),_0x251388),_0x147a98=asVerificationError(_0x356eaa,_0x347ab5(0x11c)+_0x251388+_0x347ab5(0x137));throw menuFailure(_0x147a98,_0x5016b5,{'stage':_0x347ab5(0x123),'succeeded':[{'id':_0x251388,'created':!![],'path':_0x2d8257}],'failed':{'id':_0x251388,'finalFactsConfirmed':![],..._0x39c41b},'warnings':['Folder\x20'+_0x251388+_0x347ab5(0x11e)],'after':_0x43c340??{..._0x558166,'id':_0x251388,'path':_0x2d8257},'verification':{'status':_0x347ab5(0x10e),'lookupCommand':_0x347ab5(0x119),'targetId':_0x251388}});}const _0x4e4e2d=mutationResult({..._0x5016b5,'after':_0x497a57,'dryRun':![],'succeeded':[{'id':_0x251388,'type':_0x347ab5(0x10a),'path':_0x2d8257}],'verification':{'checkedBy':_0x347ab5(0x132),'snapshotHash':_0x1a06a6[_0x347ab5(0xfa)],'folder':!![],'path':_0x2d8257,'emptyResources':!![]}});return{'ok':!![],'data':_0x4e4e2d,'message':_0x347ab5(0x110)+_0x251388+'.'};}};function validateCreateInput(_0xa9491){const _0xe253ad=a111_0x1e4bd9,_0x4c8dd7=_0xa9491['str'](_0xe253ad(0x12a))[_0xe253ad(0x107)]();if(!_0x4c8dd7)throw CliErrors['flagMissing'](_0xe253ad(0x12a));parseParentId(_0xa9491,_0xe253ad(0xf6)),validateSort(_0xa9491);}async function buildCreatePlan(_0x4453cd,_0x340ac6){const _0x3f2a94=a111_0x1e4bd9,_0x119ab6=await fetchMutationSnapshot(_0x4453cd,_0x3f2a94(0x117)),_0x162a3e=parseParentId(_0x4453cd,_0x3f2a94(0xf6))??null;if(_0x162a3e!=null)requireFolder(_0x119ab6,_0x162a3e);const _0xffc058=validateSort(_0x4453cd),_0xac22df=_0xffc058??nextSiblingSort(_0x119ab6,_0x162a3e,_0x3f2a94(0x10a)),_0x1f0cb0=_0x4453cd['str']('label')[_0x3f2a94(0x107)]();return mutationResult({'operation':_0x3f2a94(0x13a),'selector':{'label':_0x1f0cb0,'parentId':_0x162a3e},'before':null,'after':{'id':null,'parentId':_0x162a3e,'label':_0x1f0cb0,'path':_0x3f2a94(0x139),'type':_0x3f2a94(0x10a),'visible':!![],'sort':_0xac22df,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x340ac6,'backend':[...BACKEND],'plannedActions':[{'stage':_0x3f2a94(0x113),'method':_0x3f2a94(0xfc),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x162a3e),'label':_0x1f0cb0,'type':_0x3f2a94(0x10a),'visible':!![],'sort':_0xac22df,'extend':{}}}],'snapshotHash':_0x119ab6['hash'],'warnings':[_0x3f2a94(0x13b)]});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a112_0x3cfe(){const _0x9a0091=['Would\x20update\x20folder\x20','120MnAZqE','361510TyDYpB','Updated\x20folder\x20','update\x20folder','17131130iYxxLp','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','update','sort','/smartapi/menu/update','Update\x20request\x20for\x20folder\x20','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','verification','type','str','parent-id','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','menu','1rZKooI','hash','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','No\x20online\x20fields\x20would\x20change.','validation','14XJUpCL','288wDNNnQ','588969qMArHE','cookie','failed','POST','862428wWQKRG','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','\x20sort\x20update\x20did\x20not\x20take\x20effect.','parentId','group-update','2566398sPGKIQ','appCode','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','trim','menu_not_folder','77HnwhcV','selector','unknown','Folder\x20','\x20already\x20matches\x20the\x20requested\x20state.','New\x20folder\x20label','write','label','\x20label\x20update\x20did\x20not\x20take\x20effect.','string','Menu\x20','2839008WTBkMm','37505zLiLMD'];a112_0x3cfe=function(){return _0x9a0091;};return a112_0x3cfe();}const a112_0x1368af=a112_0x51b9;(function(_0x5a5ea5,_0xb61a1b){const _0x4b46db=a112_0x51b9,_0x30aa31=_0x5a5ea5();while(!![]){try{const _0x331f15=-parseInt(_0x4b46db(0x137))/0x1*(parseInt(_0x4b46db(0x127))/0x2)+parseInt(_0x4b46db(0x157))/0x3+-parseInt(_0x4b46db(0x13d))/0x4*(-parseInt(_0x4b46db(0x158))/0x5)+-parseInt(_0x4b46db(0x147))/0x6*(-parseInt(_0x4b46db(0x13c))/0x7)+-parseInt(_0x4b46db(0x126))/0x8*(-parseInt(_0x4b46db(0x13e))/0x9)+-parseInt(_0x4b46db(0x12a))/0xa+-parseInt(_0x4b46db(0x14c))/0xb*(parseInt(_0x4b46db(0x142))/0xc);if(_0x331f15===_0xb61a1b)break;else _0x30aa31['push'](_0x30aa31['shift']());}catch(_0x231da5){_0x30aa31['push'](_0x30aa31['shift']());}}}(a112_0x3cfe,0xe234a));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a112_0x1368af(0x141),'path':'/smartapi/menu/update'}];export const menuGroupUpdate={'service':a112_0x1368af(0x136),'command':a112_0x1368af(0x146),'description':a112_0x1368af(0x139),'risk':a112_0x1368af(0x152),'structuredErrors':!![],'rejectedFlags':[{'name':a112_0x1368af(0x134),'message':'Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','hint':a112_0x1368af(0x130)}],'flags':[MENU_ID_FLAG,{'name':'label','type':a112_0x1368af(0x155),'description':a112_0x1368af(0x151)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5f0de0){validateUpdateInput(_0x5f0de0);},async 'dryRun'(_0x378a10){const _0x50f652=a112_0x1368af;validateUpdateInput(_0x378a10);const {plan:_0x168da7,patch:_0x168ae}=await buildUpdatePlan(_0x378a10,!![]);return menuDryRunResult(_0x168da7,{'method':_0x50f652(0x141),'url':_0x50f652(0x12e),'body':_0x168ae,'description':_0x50f652(0x159)+_0x168da7['selector']['id']+'.'});},async 'execute'(_0x378ba7){const _0x48c732=a112_0x1368af;validateUpdateInput(_0x378ba7);const {plan:_0x2de3f0,patch:_0x1c31e1,noChanges:_0x50e301}=await buildUpdatePlan(_0x378ba7,![]),_0x594064=Number(_0x2de3f0[_0x48c732(0x14d)]['id']),_0x54c965=await recheckMutationSnapshot(_0x378ba7,_0x2de3f0,_0x48c732(0x129),_0x594064);if(!_0x50e301)try{await updateMenuEntity(_0x378ba7[_0x48c732(0x148)],_0x378ba7[_0x48c732(0x13f)],_0x1c31e1);}catch(_0x3ddc43){const _0x30cbcd=mapMenuApiError(_0x3ddc43,_0x48c732(0x129),_0x594064);throw menuFailure(_0x30cbcd,_0x2de3f0,{'stage':_0x48c732(0x12c),'failed':{'id':_0x594064}});}let _0x50ba57=_0x54c965,_0x4fae6f;try{!_0x50e301&&(_0x50ba57=await fetchMenuSnapshot(_0x378ba7[_0x48c732(0x148)],_0x378ba7[_0x48c732(0x13f)])),_0x4fae6f=requireMenu(_0x50ba57,_0x594064),verifyPatch(_0x4fae6f,_0x1c31e1),_0x4fae6f[_0x48c732(0x145)]!=null&&requireFolder(_0x50ba57,_0x4fae6f[_0x48c732(0x145)]);}catch(_0x1b668a){const _0x492c5c=describeMenuErrorCause(_0x1b668a,'verify\x20folder\x20update',_0x594064),_0x549643=asVerificationError(_0x1b668a,_0x48c732(0x12f)+_0x594064+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x549643,_0x2de3f0,{'stage':_0x48c732(0x131),'succeeded':[{'id':_0x594064,'updateRequested':!_0x50e301,'skipped':_0x50e301}],'failed':{'id':_0x594064,'requestedStateConfirmed':![],..._0x492c5c},'warnings':[_0x48c732(0x12b)],'verification':{'status':_0x48c732(0x140),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x594064}});}const _0x193081=mutationResult({..._0x2de3f0,'after':_0x4fae6f,'dryRun':![],'succeeded':[{'id':_0x594064,'updated':!_0x50e301,'skipped':_0x50e301}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x50ba57[_0x48c732(0x138)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x193081,'message':_0x50e301?_0x48c732(0x14f)+_0x594064+_0x48c732(0x150):_0x48c732(0x128)+_0x594064+'.'};}};function validateUpdateInput(_0x3002b7){const _0x5a9254=a112_0x1368af;validateExactId(_0x3002b7);if(hasFlag(_0x3002b7,_0x5a9254(0x134)))throw CliErrors['validation'](_0x5a9254(0x135),_0x5a9254(0x130));if(!hasFlag(_0x3002b7,_0x5a9254(0x153))&&!hasFlag(_0x3002b7,_0x5a9254(0x12d)))throw CliErrors[_0x5a9254(0x13b)](_0x5a9254(0x143));if(hasFlag(_0x3002b7,_0x5a9254(0x153))&&!_0x3002b7[_0x5a9254(0x133)](_0x5a9254(0x153))[_0x5a9254(0x14a)]())throw CliErrors['validation']('--label\x20cannot\x20be\x20empty.');validateSort(_0x3002b7);}async function buildUpdatePlan(_0x22c038,_0x1f00ce){const _0x4bcacb=a112_0x1368af,_0x32827d=validateExactId(_0x22c038),_0x3df373=await fetchMutationSnapshot(_0x22c038,_0x4bcacb(0x129),_0x32827d),_0x1b748a=requireMenu(_0x3df373,_0x32827d);if(_0x1b748a['type']!=='folder')throw menuError(_0x4bcacb(0x14b),_0x4bcacb(0x156)+_0x32827d+'\x20is\x20type\x20\x22'+(_0x1b748a[_0x4bcacb(0x132)]||_0x4bcacb(0x14e))+'\x22,\x20not\x20folder.',_0x4bcacb(0x149));assertExpectedState(_0x22c038,_0x1b748a);const _0x114506={'id':_0x32827d},_0x2a614f={..._0x1b748a};if(hasFlag(_0x22c038,_0x4bcacb(0x153))){const _0x555c3b=_0x22c038[_0x4bcacb(0x133)](_0x4bcacb(0x153))[_0x4bcacb(0x14a)]();_0x114506[_0x4bcacb(0x153)]=_0x555c3b,_0x2a614f[_0x4bcacb(0x153)]=_0x555c3b;}if(hasFlag(_0x22c038,_0x4bcacb(0x12d))){const _0x4aa43d=validateSort(_0x22c038);_0x114506[_0x4bcacb(0x12d)]=_0x4aa43d,_0x2a614f['sort']=_0x4aa43d;}const _0xf09ba1=sameRequestedState(_0x1b748a,_0x2a614f),_0x226520=_0xf09ba1?[_0x4bcacb(0x13a)]:[];return{'patch':_0x114506,'noChanges':_0xf09ba1,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x32827d},'before':_0x1b748a,'after':_0x2a614f,'dryRun':_0x1f00ce,'backend':[...BACKEND],'snapshotHash':_0x3df373[_0x4bcacb(0x138)],'warnings':_0x226520})};}function sameRequestedState(_0x9aa6d8,_0xb7b193){const _0x1133ea=a112_0x1368af;return _0x9aa6d8[_0x1133ea(0x153)]===_0xb7b193['label']&&_0x9aa6d8[_0x1133ea(0x12d)]===_0xb7b193[_0x1133ea(0x12d)];}function a112_0x51b9(_0x492a4d,_0x52e793){_0x492a4d=_0x492a4d-0x126;const _0x3cfe37=a112_0x3cfe();let _0x51b960=_0x3cfe37[_0x492a4d];return _0x51b960;}function verifyPatch(_0x222e84,_0x2505df){const _0x226c3f=a112_0x1368af;assertVerified(_0x222e84[_0x226c3f(0x132)]==='folder',_0x226c3f(0x156)+_0x222e84['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x2505df['label']!==undefined&&assertVerified(_0x222e84['label']===_0x2505df['label'],_0x226c3f(0x14f)+_0x222e84['id']+_0x226c3f(0x154)),_0x2505df['sort']!==undefined&&assertVerified(_0x222e84[_0x226c3f(0x12d)]===_0x2505df['sort'],_0x226c3f(0x14f)+_0x222e84['id']+_0x226c3f(0x144));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x388c26,_0x48598c){const _0x1c5c7d=a113_0x1178,_0x399fc8=_0x388c26();while(!![]){try{const _0x2b9d65=-parseInt(_0x1c5c7d(0xd3))/0x1*(parseInt(_0x1c5c7d(0xcb))/0x2)+parseInt(_0x1c5c7d(0xcf))/0x3+-parseInt(_0x1c5c7d(0xd0))/0x4*(parseInt(_0x1c5c7d(0xd2))/0x5)+parseInt(_0x1c5c7d(0xcd))/0x6+-parseInt(_0x1c5c7d(0xd4))/0x7*(-parseInt(_0x1c5c7d(0xcc))/0x8)+-parseInt(_0x1c5c7d(0xce))/0x9+parseInt(_0x1c5c7d(0xd1))/0xa;if(_0x2b9d65===_0x48598c)break;else _0x399fc8['push'](_0x399fc8['shift']());}catch(_0x1b0857){_0x399fc8['push'](_0x399fc8['shift']());}}}(a113_0x2e0c,0xc1d9c));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';function a113_0x1178(_0x19ab66,_0x31037b){_0x19ab66=_0x19ab66-0xcb;const _0x2e0c15=a113_0x2e0c();let _0x1178e7=_0x2e0c15[_0x19ab66];return _0x1178e7;}function a113_0x2e0c(){const _0x1862b6=['7BQxnSe','52282pmyJov','9110568eOUMNv','4463316LoehsU','13391955Ffvnck','2916936TmZWBL','4PMbTsw','11661460aXpbeR','2814065nyOdNf','45WjCdCp'];a113_0x2e0c=function(){return _0x1862b6;};return a113_0x2e0c();}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
|
-
function
|
|
1
|
+
const a114_0xa1ce6c=a114_0x3cc7;function a114_0x3cc7(_0x6f193b,_0x4b6b90){_0x6f193b=_0x6f193b-0xfb;const _0x187876=a114_0x1878();let _0x3cc701=_0x187876[_0x6f193b];return _0x3cc701;}(function(_0x5edc27,_0x136bb4){const _0x2db87e=a114_0x3cc7,_0x11c1f8=_0x5edc27();while(!![]){try{const _0x4430bc=-parseInt(_0x2db87e(0x100))/0x1+-parseInt(_0x2db87e(0x106))/0x2*(parseInt(_0x2db87e(0x104))/0x3)+-parseInt(_0x2db87e(0x10c))/0x4*(-parseInt(_0x2db87e(0x10f))/0x5)+-parseInt(_0x2db87e(0xfd))/0x6+parseInt(_0x2db87e(0xff))/0x7*(-parseInt(_0x2db87e(0x108))/0x8)+-parseInt(_0x2db87e(0x10a))/0x9*(parseInt(_0x2db87e(0x10e))/0xa)+parseInt(_0x2db87e(0x105))/0xb*(parseInt(_0x2db87e(0x111))/0xc);if(_0x4430bc===_0x136bb4)break;else _0x11c1f8['push'](_0x11c1f8['shift']());}catch(_0x1b934b){_0x11c1f8['push'](_0x11c1f8['shift']());}}}(a114_0x1878,0xf195c));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a114_0x1878(){const _0x326222=['Found\x20','63cmunMA','cookie','3464516zUCkOd','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','676370VLrkgC','10qzuZaf','total','36FksKQU','No\x20menus\x20found.','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','menus','8001264UryiPl','read','7021AcvifV','570393yfOvMf','map','appCode','list','789rXnCmH','17211942IfMDRL','14426rzKjYF','bool','9272lkEkjO'];a114_0x1878=function(){return _0x326222;};return a114_0x1878();}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':'menu','command':a114_0xa1ce6c(0x103),'description':a114_0xa1ce6c(0x10d),'risk':a114_0xa1ce6c(0xfe),'flags':[APPCODE_FLAG_OPTIONAL,{'name':'verbose','type':'boolean','description':a114_0xa1ce6c(0xfb)}],async 'execute'(_0x269115){const _0x52ee16=a114_0xa1ce6c,_0x51b72a=_0x269115[_0x52ee16(0x107)]('verbose'),_0x1b905e=await fetchMenuSnapshot(_0x269115[_0x52ee16(0x102)],_0x269115[_0x52ee16(0x10b)],{'verbose':_0x51b72a});return{'ok':!![],'data':{'total':_0x1b905e[_0x52ee16(0x110)],'snapshotHash':_0x1b905e['hash'],'menus':_0x1b905e[_0x52ee16(0xfc)][_0x52ee16(0x101)](toMenuListItem)},'message':_0x1b905e[_0x52ee16(0x110)]===0x0?_0x52ee16(0x112):_0x52ee16(0x109)+_0x1b905e[_0x52ee16(0x110)]+'\x20menu(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a115_0x5eea7a=a115_0x1d4b;(function(_0xcf67bb,_0xcca73d){const _0x53908e=a115_0x1d4b,_0x34a2b0=_0xcf67bb();while(!![]){try{const _0x57f7dd=parseInt(_0x53908e(0xaf))/0x1*(-parseInt(_0x53908e(0xc0))/0x2)+parseInt(_0x53908e(0xb5))/0x3+-parseInt(_0x53908e(0xb1))/0x4+-parseInt(_0x53908e(0xc8))/0x5+parseInt(_0x53908e(0xae))/0x6*(-parseInt(_0x53908e(0xd8))/0x7)+parseInt(_0x53908e(0xd7))/0x8+-parseInt(_0x53908e(0xc6))/0x9*(-parseInt(_0x53908e(0xcf))/0xa);if(_0x57f7dd===_0xcca73d)break;else _0x34a2b0['push'](_0x34a2b0['shift']());}catch(_0x40463e){_0x34a2b0['push'](_0x34a2b0['shift']());}}}(a115_0x5326,0x7e55f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';function a115_0x5326(){const _0x3b42b6=['Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','3175016MZRGXI','verification','parentId','sort','2230422hucxAi','move\x20menu','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','menu','cookie','parent-id','hash','Menu\x20','/smartapi/menu/update','POST','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','294614ekIhIv','move-menu','after','update','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','827721mZybbF',',\x20current\x20','4343515Sojpkf','\x20is\x20no\x20longer\x20a\x20leaf.','failed','appCode','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Moved\x20menu\x20','move','240aYOUPW','\x20parent\x20changed:\x20expected\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','expect-parent-id','childrenCount','Move\x20request\x20for\x20menu\x20','Would\x20move\x20menu\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','2069744DlzHpp','2572171RpQRGQ','verify\x20menu\x20move','folder','rabetbase\x20menu\x20list\x20--format\x20compress','write','type','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','12XvKFbZ','2odHZEp'];a115_0x5326=function(){return _0x3b42b6;};return a115_0x5326();}const BACKEND=[{'method':a115_0x5eea7a(0xbe),'path':'/smartapi/menu/update'}];function a115_0x1d4b(_0x1a4eb1,_0x4c7789){_0x1a4eb1=_0x1a4eb1-0xab;const _0x53264e=a115_0x5326();let _0x1d4b88=_0x53264e[_0x1a4eb1];return _0x1d4b88;}export const menuMove={'service':a115_0x5eea7a(0xb8),'command':a115_0x5eea7a(0xce),'description':a115_0x5eea7a(0xb0),'risk':a115_0x5eea7a(0xab),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3349c4){validateMoveInput(_0x3349c4);},async 'dryRun'(_0x28840f){const _0x55ccb3=a115_0x5eea7a,{plan:_0x297dea,patch:_0x5a00e6}=await buildMovePlan(_0x28840f,!![]);return menuDryRunResult(_0x297dea,{'method':_0x55ccb3(0xbe),'url':_0x55ccb3(0xbd),'body':{..._0x5a00e6,'appCode':_0x28840f[_0x55ccb3(0xcb)]},'description':_0x55ccb3(0xd5)+_0x5a00e6['id']+'.'});},async 'execute'(_0x4100b3){const _0x103f21=a115_0x5eea7a;validateMoveInput(_0x4100b3);const {plan:_0x24cfad,patch:_0x37ff64,noChanges:_0x5bf7cd,snapshot:_0x533b19}=await buildMovePlan(_0x4100b3,![]),_0x3249c7=_0x37ff64['id'];if(!_0x5bf7cd)try{await updateMenuEntity(_0x4100b3[_0x103f21(0xcb)],_0x4100b3[_0x103f21(0xb9)],_0x37ff64);}catch(_0x24f8f3){const _0x5b17eb=mapMenuApiError(_0x24f8f3,_0x103f21(0xce),_0x3249c7);throw menuFailure(_0x5b17eb,_0x24cfad,{'stage':_0x103f21(0xc3),'failed':{'id':_0x3249c7},'warnings':[_0x103f21(0xcc)],'verification':{'status':'failed','targetId':_0x3249c7,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0x3b5763,_0x4ec8ce;try{_0x3b5763=_0x5bf7cd?_0x533b19:await fetchMenuSnapshot(_0x4100b3[_0x103f21(0xcb)],_0x4100b3[_0x103f21(0xb9)]),_0x4ec8ce=requireMenu(_0x3b5763,_0x3249c7),verifyMove(_0x4ec8ce,_0x24cfad[_0x103f21(0xc2)]),_0x4ec8ce[_0x103f21(0xb3)]!==null&&requireFolder(_0x3b5763,_0x4ec8ce['parentId']);}catch(_0x6dc16a){const _0x5381a1=describeMenuErrorCause(_0x6dc16a,_0x103f21(0xd9),_0x3249c7),_0x5d04b2=asVerificationError(_0x6dc16a,_0x103f21(0xd4)+_0x3249c7+_0x103f21(0xd6));throw menuFailure(_0x5d04b2,_0x24cfad,{'stage':_0x103f21(0xb2),'succeeded':[{'id':_0x3249c7,'updateRequested':!_0x5bf7cd,'skipped':_0x5bf7cd}],'failed':{'id':_0x3249c7,'requestedStateConfirmed':![],..._0x5381a1},'warnings':[_0x103f21(0xc5)],'verification':{'status':_0x103f21(0xca),'targetId':_0x3249c7,'lookupCommand':_0x103f21(0xdb)}});}const _0x18a36a=mutationResult({..._0x24cfad,'after':_0x4ec8ce,'dryRun':![],'succeeded':[{'id':_0x3249c7,'updated':!_0x5bf7cd,'skipped':_0x5bf7cd}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x3b5763[_0x103f21(0xbb)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x18a36a,'message':_0x5bf7cd?_0x103f21(0xbc)+_0x3249c7+'\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.':_0x103f21(0xcd)+_0x3249c7+'.'};}};function validateMoveInput(_0x25f5a9){const _0x4cc53d=a115_0x5eea7a;validateExactId(_0x25f5a9),parseParentId(_0x25f5a9,_0x4cc53d(0xba),{'required':!![]}),parseParentId(_0x25f5a9,'expect-parent-id',{'required':!![]}),validateSort(_0x25f5a9);}async function buildMovePlan(_0x3ba4f1,_0x570cc5){const _0x25516d=a115_0x5eea7a,_0x41ac40=validateExactId(_0x3ba4f1),_0x348607=parseParentId(_0x3ba4f1,_0x25516d(0xba),{'required':!![]}),_0x23296c=parseParentId(_0x3ba4f1,_0x25516d(0xd2),{'required':!![]}),_0x3dcc26=validateSort(_0x3ba4f1),_0x40b419=await fetchMutationSnapshot(_0x3ba4f1,_0x25516d(0xb6),_0x41ac40),_0x4226e5=requireMenu(_0x40b419,_0x41ac40);if(_0x4226e5['type']===_0x25516d(0xda)||_0x4226e5[_0x25516d(0xd3)]!==0x0)throw menuError('menu_move_source_not_leaf','Menu\x20'+_0x41ac40+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.',_0x25516d(0xb7));if(_0x4226e5[_0x25516d(0xb3)]!==_0x23296c)throw menuError('menu_state_drift',_0x25516d(0xbc)+_0x41ac40+_0x25516d(0xd0)+formatParent(_0x23296c)+_0x25516d(0xc7)+formatParent(_0x4226e5[_0x25516d(0xb3)])+'.',_0x25516d(0xd1));_0x348607!==null&&requireFolder(_0x40b419,_0x348607);const _0x3ea85d=_0x3dcc26??(_0x4226e5[_0x25516d(0xb3)]===_0x348607?_0x4226e5[_0x25516d(0xb4)]??0x0:nextSiblingSort(_0x40b419,_0x348607,'menu')),_0x442baf={..._0x4226e5,'parentId':_0x348607,'sort':_0x3ea85d},_0x2cdf7c={'id':_0x41ac40,'parentId':toApiParentId(_0x348607),'sort':_0x3ea85d},_0x39dc19=_0x4226e5[_0x25516d(0xb3)]===_0x348607&&_0x4226e5[_0x25516d(0xb4)]===_0x3ea85d;return{'patch':_0x2cdf7c,'noChanges':_0x39dc19,'snapshot':_0x40b419,'plan':mutationResult({'operation':_0x25516d(0xce),'selector':{'id':_0x41ac40,'parentId':_0x348607},'before':_0x4226e5,'after':_0x442baf,'dryRun':_0x570cc5,'backend':[...BACKEND],'plannedActions':[{'stage':_0x25516d(0xc1),'method':_0x25516d(0xbe),'path':_0x25516d(0xbd),'body':{..._0x2cdf7c,'appCode':_0x3ba4f1[_0x25516d(0xcb)]}}],'snapshotHash':_0x40b419[_0x25516d(0xbb)],'warnings':_0x39dc19?[_0x25516d(0xad)]:[]})};}function verifyMove(_0x373372,_0x92e3ce){const _0x563982=a115_0x5eea7a;assertVerified(_0x373372[_0x563982(0xac)]!==_0x563982(0xda),'Menu\x20'+_0x373372['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x373372[_0x563982(0xd3)]===0x0,_0x563982(0xbc)+_0x373372['id']+_0x563982(0xc9)),assertVerified(_0x373372[_0x563982(0xb3)]===_0x92e3ce[_0x563982(0xb3)],'Menu\x20'+_0x373372['id']+_0x563982(0xc4)),assertVerified(_0x373372[_0x563982(0xb4)]===_0x92e3ce[_0x563982(0xb4)],_0x563982(0xbc)+_0x373372['id']+_0x563982(0xbf));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a116_0x4ca9dc=a116_0x12f7;(function(_0x1e5b1f,_0x4abf12){const _0x185cdb=a116_0x12f7,_0x24fafd=_0x1e5b1f();while(!![]){try{const _0x399f63=parseInt(_0x185cdb(0x227))/0x1*(-parseInt(_0x185cdb(0x1f3))/0x2)+parseInt(_0x185cdb(0x23a))/0x3+parseInt(_0x185cdb(0x22e))/0x4+parseInt(_0x185cdb(0x1fd))/0x5+-parseInt(_0x185cdb(0x1ef))/0x6*(parseInt(_0x185cdb(0x228))/0x7)+-parseInt(_0x185cdb(0x230))/0x8+-parseInt(_0x185cdb(0x1e6))/0x9*(-parseInt(_0x185cdb(0x217))/0xa);if(_0x399f63===_0x4abf12)break;else _0x24fafd['push'](_0x24fafd['shift']());}catch(_0x54ef6d){_0x24fafd['push'](_0x24fafd['shift']());}}}(a116_0x3d6d,0x3bec8));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';function a116_0x12f7(_0x27acb2,_0x1ef412){_0x27acb2=_0x27acb2-0x1d8;const _0x3d6d2a=a116_0x3d6d();let _0x12f78a=_0x3d6d2a[_0x27acb2];return _0x12f78a;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a116_0x4ca9dc(0x229),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a116_0x4ca9dc(0x214),'command':'regroup-start','description':a116_0x4ca9dc(0x232),'risk':'high-risk-write','structuredErrors':!![],'flags':[{'name':a116_0x4ca9dc(0x1fa),'type':a116_0x4ca9dc(0x1f6),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a116_0x4ca9dc(0x1df),'type':a116_0x4ca9dc(0x1f6),'required':!![],'description':a116_0x4ca9dc(0x1ff)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1ebf6d){validateRegroupInput(_0x1ebf6d),requireExplicitYes(_0x1ebf6d);},async 'dryRun'(_0x4acf0e){const _0x24f03b=a116_0x4ca9dc;validateRegroupInput(_0x4acf0e);const _0x3ea82e=await buildRegroupPlan(_0x4acf0e,!![]);return menuDryRunResult(_0x3ea82e[_0x24f03b(0x20e)],{'method':_0x24f03b(0x229),'url':_0x24f03b(0x20f),'body':_0x3ea82e[_0x24f03b(0x22d)],'description':'Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20'+JSON['stringify'](_0x3ea82e[_0x24f03b(0x1fa)])+'\x20and\x20regroup\x20menu\x20ids\x20'+_0x3ea82e[_0x24f03b(0x1e3)][_0x24f03b(0x239)](',\x20')+_0x24f03b(0x207)});},async 'execute'(_0x183ad6){const _0x35a5ce=a116_0x4ca9dc;validateRegroupInput(_0x183ad6),requireExplicitYes(_0x183ad6);const _0x2ea2f9=await buildRegroupPlan(_0x183ad6,![]);await recheckMutationSnapshot(_0x183ad6,_0x2ea2f9[_0x35a5ce(0x20e)],_0x35a5ce(0x233));const _0x45b431=buildMenuLookupCommand(_0x183ad6['appCode']);let _0x274416,_0x12ad4b;try{_0x274416=await startMenuRegroup(_0x183ad6['cookie'],_0x2ea2f9['input']),_0x12ad4b=normalizeAsyncTask(_0x274416);}catch(_0x4586c6){const _0x56f21c=await inspectRegroupAfterFailure(_0x183ad6[_0x35a5ce(0x22b)],_0x183ad6[_0x35a5ce(0x20c)],_0x2ea2f9[_0x35a5ce(0x1fa)],_0x2ea2f9[_0x35a5ce(0x1e3)]),_0x2a07d5=typeof _0x274416?.[_0x35a5ce(0x1fb)]===_0x35a5ce(0x1f6)&&_0x274416[_0x35a5ce(0x1fb)]['trim']()?_0x274416['taskId'][_0x35a5ce(0x1eb)]():null,_0x40a83a=_0x2a07d5?{'command':buildAsyncTaskStatusCommand(_0x2a07d5,_0x183ad6[_0x35a5ce(0x22b)])}:null,_0x4cc30c=mapMenuApiError(_0x4586c6,_0x35a5ce(0x221));throw menuFailure(_0x4cc30c,_0x2ea2f9[_0x35a5ce(0x20e)],{'stage':_0x35a5ce(0x206),'failed':{'menuIds':_0x2ea2f9[_0x35a5ce(0x1e3)],'taskId':_0x2a07d5,'groupingApplied':_0x56f21c[_0x35a5ce(0x1fe)]?!![]:_0x35a5ce(0x1f7)},'after':_0x56f21c[_0x35a5ce(0x1fe)]??null,'warnings':[_0x35a5ce(0x21f),..._0x56f21c[_0x35a5ce(0x21a)]?[_0x35a5ce(0x235)+_0x56f21c['readbackError']]:[],..._0x2a07d5?[_0x35a5ce(0x226)]:[]],'verification':{'status':_0x35a5ce(0x1e5),'groupingApplied':_0x56f21c[_0x35a5ce(0x1fe)]?!![]:_0x35a5ce(0x1f7),'taskId':_0x2a07d5,'query':_0x40a83a,'lookupCommand':_0x45b431}});}const _0xe6b2d9=buildAsyncTaskStatusCommand(_0x12ad4b['taskId'],_0x183ad6[_0x35a5ce(0x22b)]);let _0x405bea=null,_0x3b39b2=null,_0x4c855d=null;try{_0x405bea=await fetchMenuSnapshot(_0x183ad6['appCode'],_0x183ad6['cookie']),_0x3b39b2=findAppliedRegroup(_0x405bea,_0x2ea2f9[_0x35a5ce(0x1fa)],_0x2ea2f9[_0x35a5ce(0x1e3)]);}catch(_0x3c588d){_0x4c855d=_0x3c588d instanceof Error?_0x3c588d[_0x35a5ce(0x1f8)]:String(_0x3c588d);}const _0x4467e1=mutationResult({..._0x2ea2f9['plan'],'after':_0x3b39b2??null,'dryRun':![],'succeeded':[{'groupId':_0x3b39b2?.['group']['id']??null,'menuIds':_0x2ea2f9[_0x35a5ce(0x1e3)],'taskId':_0x12ad4b[_0x35a5ce(0x1fb)],'status':_0x12ad4b['status'],'groupingApplied':_0x3b39b2?!![]:'unconfirmed'}],'verification':{'checkedBy':_0x35a5ce(0x1f5),'snapshotHash':_0x405bea?.['hash']??null,'groupId':_0x3b39b2?.[_0x35a5ce(0x1f1)]['id']??null,'groupingApplied':_0x3b39b2?!![]:_0x35a5ce(0x1f7),'readbackError':_0x4c855d,'lookupCommand':_0x45b431},'warnings':[..._0x2ea2f9[_0x35a5ce(0x20e)][_0x35a5ce(0x1e8)],...!_0x3b39b2?[unconfirmedRegroupWarning(_0x12ad4b)]:[],..._0x4c855d?['Regroup\x20readback\x20failed:\x20'+_0x4c855d]:[]]}),_0x46c383=_0x12ad4b['status']==='SUCCESS'&&!_0x3b39b2?_0x35a5ce(0x218)+_0x12ad4b[_0x35a5ce(0x1fb)]+_0x35a5ce(0x1ea):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x12ad4b);return{'ok':!![],'message':_0x46c383,'data':{..._0x4467e1,'task':_0x12ad4b,'query':_0x12ad4b[_0x35a5ce(0x1e4)]?null:{'command':_0xe6b2d9}}};}};function validateRegroupInput(_0x1b2e8c){const _0x3a74bb=a116_0x4ca9dc;if(!_0x1b2e8c['str'](_0x3a74bb(0x1fa))[_0x3a74bb(0x1eb)]())throw CliErrors[_0x3a74bb(0x202)](_0x3a74bb(0x1fa));parseMenuIds(_0x1b2e8c['str'](_0x3a74bb(0x1df)));}function parseMenuIds(_0x1f5eff){const _0x36f3f4=a116_0x4ca9dc,_0x3086d5=_0x1f5eff[_0x36f3f4(0x208)](',')['map'](_0x671997=>_0x671997[_0x36f3f4(0x1eb)]());if(_0x3086d5[_0x36f3f4(0x1e2)]===0x0||_0x3086d5['some'](_0x504f7e=>!_0x504f7e))throw CliErrors[_0x36f3f4(0x216)](_0x36f3f4(0x223));const _0x407ee0=_0x3086d5[_0x36f3f4(0x20d)](_0x4a380f=>{const _0x4d5f4b=_0x36f3f4;if(!/^\d+$/[_0x4d5f4b(0x21b)](_0x4a380f))throw CliErrors[_0x4d5f4b(0x216)](_0x4d5f4b(0x223));const _0x25c1de=Number(_0x4a380f);if(!Number[_0x4d5f4b(0x204)](_0x25c1de)||_0x25c1de<=0x0)throw CliErrors['validation'](_0x4d5f4b(0x223));return _0x25c1de;});if(new Set(_0x407ee0)[_0x36f3f4(0x1e1)]!==_0x407ee0[_0x36f3f4(0x1e2)])throw CliErrors[_0x36f3f4(0x216)](_0x36f3f4(0x209));if(_0x407ee0[_0x36f3f4(0x1e2)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x36f3f4(0x216)](_0x36f3f4(0x20a)+MAX_REGROUP_MENU_COUNT+_0x36f3f4(0x1e7));return _0x407ee0;}function buildMenuLookupCommand(_0x1d7009){const _0x211928=a116_0x4ca9dc,_0x996cc8='\x27'+_0x1d7009[_0x211928(0x213)](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+_0x211928(0x1f0)+_0x996cc8+'\x20--format\x20compress';}function a116_0x3d6d(){const _0x2346b7=['cookie','map','plan','/smartapi/menu/regroup','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','replace','menu','Menus\x20','validation','22450dmWXFm','Regroup\x20task\x20','Root\x20folder\x20label\x20','readbackError','test','menu_regroup_target_label_missing','menu_regroup_label_conflict','stringify','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','menus','start\x20menu\x20regroup','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','FAILED','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','80bwzyuj','7lRTJST','POST','submit-regroup-task','appCode','status','input','640576JvJYuY','hash','3876016RUwoAD','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','start\x20regroup','regroup-start','Regroup\x20readback\x20also\x20failed:\x20','menu_regroup_already_applied','type','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.','join','2220dvFagr','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','byId','parentId','filter','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','childrenIds','menu-ids','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','size','length','menuIds','isTerminal','failed','4401NLFlTh','\x20menus\x20per\x20regroup\x20request.','warnings','<new-group-id>','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','trim','sort','some','folder','1100058txCWCP','\x20menu\x20list\x20--appcode\x20','group','SUCCESS','11056cOPNDY','menu_regroup_target_not_leaf','menu\x20list','string','unconfirmed','message','childrenCount','label','taskId','Menu\x20','484220MYUhEe','applied','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','toLowerCase','str','flagMissing','<platform-generated>','isSafeInteger','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','regroup-submit',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','split','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','--menu-ids\x20supports\x20at\x20most\x20','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.'];a116_0x3d6d=function(){return _0x2346b7;};return a116_0x3d6d();}function unconfirmedRegroupWarning(_0xbd586e){const _0x37c16c=a116_0x4ca9dc;if(_0xbd586e[_0x37c16c(0x22c)]===_0x37c16c(0x1f2))return _0x37c16c(0x1e0);if(_0xbd586e['status']===_0x37c16c(0x224))return _0x37c16c(0x225);if(_0xbd586e['knownStatus'])return _0x37c16c(0x1dc);return _0x37c16c(0x238);}async function buildRegroupPlan(_0x4a6352,_0x29234e){const _0xfe1d97=a116_0x4ca9dc,_0x38a19f=_0x4a6352['str'](_0xfe1d97(0x1fa))[_0xfe1d97(0x1eb)](),_0x9bd506=parseMenuIds(_0x4a6352[_0xfe1d97(0x201)]('menu-ids')),_0xdfcd96=await fetchMutationSnapshot(_0x4a6352,'plan\x20regroup'),_0x423cb3=_0x9bd506[_0xfe1d97(0x20d)](_0x2d5f09=>requireMenu(_0xdfcd96,_0x2d5f09));for(const _0x55aed5 of _0x423cb3){if(_0x55aed5[_0xfe1d97(0x237)][_0xfe1d97(0x1eb)]()['toLowerCase']()==='folder'||_0x55aed5[_0xfe1d97(0x1f9)]>0x0)throw menuError(_0xfe1d97(0x1f4),_0xfe1d97(0x1fc)+_0x55aed5['id']+_0xfe1d97(0x222),_0xfe1d97(0x20b));if(!_0x55aed5['label'][_0xfe1d97(0x1eb)]())throw menuError(_0xfe1d97(0x21c),_0xfe1d97(0x1fc)+_0x55aed5['id']+_0xfe1d97(0x205),_0xfe1d97(0x1d8));}const _0xf3f83a=findAppliedRegroup(_0xdfcd96,_0x38a19f,_0x9bd506);if(_0xf3f83a)throw menuError(_0xfe1d97(0x236),_0xfe1d97(0x215)+_0x9bd506[_0xfe1d97(0x239)](',\x20')+_0xfe1d97(0x231)+_0xf3f83a['group']['id']+'\x20('+JSON[_0xfe1d97(0x21e)](_0x38a19f)+').',_0xfe1d97(0x1dd));const _0x2ab449=_0xdfcd96[_0xfe1d97(0x220)][_0xfe1d97(0x1db)](_0x231f7d=>_0x231f7d[_0xfe1d97(0x1da)]==null&&_0x231f7d[_0xfe1d97(0x237)][_0xfe1d97(0x1eb)]()[_0xfe1d97(0x200)]()===_0xfe1d97(0x1ee)&&_0x231f7d[_0xfe1d97(0x1fa)]===_0x38a19f);if(_0x2ab449[_0xfe1d97(0x1e2)]>0x0)throw menuError(_0xfe1d97(0x21d),_0xfe1d97(0x219)+JSON[_0xfe1d97(0x21e)](_0x38a19f)+_0xfe1d97(0x212)+_0x2ab449[_0xfe1d97(0x20d)](_0x4aac9c=>_0x4aac9c['id'])[_0xfe1d97(0x239)](',\x20')+'.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.');const _0x1e894e={'appCode':_0x4a6352[_0xfe1d97(0x22b)],'menuGroups':[{'label':_0x38a19f,'type':_0xfe1d97(0x1ee),'children':_0x423cb3[_0xfe1d97(0x20d)](_0xc78420=>({'id':_0xc78420['id'],'label':_0xc78420['label']}))}]},_0x42224f=mutationResult({'operation':_0xfe1d97(0x234),'selector':{'label':_0x38a19f,'menuIds':_0x9bd506},'before':{'menus':_0x423cb3},'after':{'group':{'id':null,'parentId':null,'label':_0x38a19f,'path':_0xfe1d97(0x203),'type':_0xfe1d97(0x1ee),'childrenIds':_0x9bd506},'children':_0x423cb3[_0xfe1d97(0x20d)](_0x287492=>({'id':_0x287492['id'],'label':_0x287492[_0xfe1d97(0x1fa)],'beforeParentId':_0x287492[_0xfe1d97(0x1da)],'afterParentId':_0xfe1d97(0x1e9)}))},'dryRun':_0x29234e,'backend':[...BACKEND],'plannedActions':[{'stage':_0xfe1d97(0x22a),'method':'POST','path':_0xfe1d97(0x20f),'body':_0x1e894e}],'snapshotHash':_0xdfcd96[_0xfe1d97(0x22f)],'warnings':[_0xfe1d97(0x211),_0xfe1d97(0x210)]});return{'label':_0x38a19f,'menuIds':_0x9bd506,'input':_0x1e894e,'plan':_0x42224f};}function findAppliedRegroup(_0x6c1ecf,_0x3bed95,_0x177a3a){const _0x51e6ba=a116_0x4ca9dc,_0x58920f=_0x177a3a[_0x51e6ba(0x20d)](_0x532ed1=>_0x6c1ecf[_0x51e6ba(0x1d9)]['get'](_0x532ed1))[_0x51e6ba(0x1db)](_0xd4f05e=>Boolean(_0xd4f05e));if(_0x58920f[_0x51e6ba(0x1e2)]!==_0x177a3a['length'])return null;const _0x42307b=_0x58920f[0x0]?.['parentId'];if(_0x42307b==null||_0x58920f[_0x51e6ba(0x1ed)](_0x5a56b6=>_0x5a56b6[_0x51e6ba(0x1da)]!==_0x42307b))return null;const _0x21ff30=_0x6c1ecf[_0x51e6ba(0x1d9)]['get'](_0x42307b);if(!_0x21ff30||_0x21ff30[_0x51e6ba(0x1da)]!=null||_0x21ff30[_0x51e6ba(0x237)][_0x51e6ba(0x1eb)]()[_0x51e6ba(0x200)]()!=='folder'||_0x21ff30[_0x51e6ba(0x1fa)]!==_0x3bed95)return null;const _0x53454e=[..._0x177a3a][_0x51e6ba(0x1ec)]((_0x42abea,_0x249ba1)=>_0x42abea-_0x249ba1),_0x5e027c=[..._0x21ff30[_0x51e6ba(0x1de)]]['sort']((_0x12f440,_0x3c16bf)=>_0x12f440-_0x3c16bf);if(JSON[_0x51e6ba(0x21e)](_0x5e027c)!==JSON[_0x51e6ba(0x21e)](_0x53454e))return null;return{'group':_0x21ff30,'children':_0x58920f};}async function inspectRegroupAfterFailure(_0x179eae,_0x25f491,_0x5d8887,_0x380047){try{const _0x2c9ec1=await fetchMenuSnapshot(_0x179eae,_0x25f491);return{'applied':findAppliedRegroup(_0x2c9ec1,_0x5d8887,_0x380047),'readbackError':null};}catch(_0x1eef2f){return{'applied':null,'readbackError':_0x1eef2f instanceof Error?_0x1eef2f['message']:String(_0x1eef2f)};}}
|
|
1
|
+
const a116_0x52e0cb=a116_0x25bf;(function(_0x436048,_0x1d3973){const _0x5e049f=a116_0x25bf,_0x57af35=_0x436048();while(!![]){try{const _0x522605=parseInt(_0x5e049f(0xd7))/0x1*(parseInt(_0x5e049f(0xd0))/0x2)+parseInt(_0x5e049f(0x107))/0x3*(-parseInt(_0x5e049f(0xb2))/0x4)+-parseInt(_0x5e049f(0xfb))/0x5+parseInt(_0x5e049f(0xe8))/0x6+-parseInt(_0x5e049f(0xb4))/0x7*(parseInt(_0x5e049f(0xdc))/0x8)+parseInt(_0x5e049f(0xf2))/0x9*(parseInt(_0x5e049f(0xf6))/0xa)+parseInt(_0x5e049f(0xe5))/0xb;if(_0x522605===_0x1d3973)break;else _0x57af35['push'](_0x57af35['shift']());}catch(_0x3332f6){_0x57af35['push'](_0x57af35['shift']());}}}(a116_0x22e1,0x9c0a0));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';function a116_0x25bf(_0x5eca5c,_0x5ee3f7){_0x5eca5c=_0x5eca5c-0xa4;const _0x22e144=a116_0x22e1();let _0x25bf4b=_0x22e144[_0x5eca5c];return _0x25bf4b;}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a116_0x52e0cb(0xc3)}],MAX_REGROUP_MENU_COUNT=0x64;function a116_0x22e1(){const _0x149dff=['label','--menu-ids\x20supports\x20at\x20most\x20','menu\x20list','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','\x20--format\x20compress','flagMissing','1029669yghYXr','high-risk-write','Label\x20of\x20the\x20new\x20root\x20folder','readbackError','isSafeInteger','480WHAhjC','\x27\x5c\x27\x27','start\x20menu\x20regroup','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','submit-regroup-task','childrenIds','validation','status','FAILED','439890fHmIiV','cookie','applied','6842724YwceeV','POST','byId','taskId','str','<new-group-id>','join','Regroup\x20task\x20accepted.\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.','Regroup\x20readback\x20also\x20failed:\x20','370908NdQkFV','some','\x20menus\x20per\x20regroup\x20request.','folder','30NdjhWQ','menus','Menu\x20','filter','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','1165410MgTkEa','unconfirmed','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','warnings','message','SUCCESS',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','split','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','get','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','9qoponK','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','plan\x20regroup','map','knownStatus','Regroup\x20task\x20','replace','Menus\x20','group','Regroup\x20readback\x20failed:\x20','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','regroup-submit','menuIds','type','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','878228juugkC','menu_regroup_already_applied','93667sZlHUF','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','<platform-generated>','\x20menu\x20list\x20--appcode\x20','\x20and\x20regroup\x20menu\x20ids\x20','parentId','plan','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','menu-ids','trim','hash','start\x20regroup','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','/smartapi/menu/regroup','length','input','toLowerCase','menu_regroup_target_not_leaf','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','Root\x20folder\x20label\x20','test','sort','size','string','appCode','stringify','2dCPwVM'];a116_0x22e1=function(){return _0x149dff;};return a116_0x22e1();}export const menuRegroupStart={'service':'menu','command':'regroup-start','description':a116_0x52e0cb(0xa4),'risk':a116_0x52e0cb(0xd8),'structuredErrors':!![],'flags':[{'name':a116_0x52e0cb(0xd1),'type':a116_0x52e0cb(0xcd),'required':!![],'description':a116_0x52e0cb(0xd9)},{'name':'menu-ids','type':'string','required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x31fb60){validateRegroupInput(_0x31fb60),requireExplicitYes(_0x31fb60);},async 'dryRun'(_0x22ccd4){const _0x4e29d9=a116_0x52e0cb;validateRegroupInput(_0x22ccd4);const _0x15ed41=await buildRegroupPlan(_0x22ccd4,!![]);return menuDryRunResult(_0x15ed41['plan'],{'method':_0x4e29d9(0xe9),'url':_0x4e29d9(0xc3),'body':_0x15ed41[_0x4e29d9(0xc5)],'description':_0x4e29d9(0xb5)+JSON[_0x4e29d9(0xcf)](_0x15ed41['label'])+_0x4e29d9(0xb8)+_0x15ed41[_0x4e29d9(0xaf)][_0x4e29d9(0xee)](',\x20')+_0x4e29d9(0x101)});},async 'execute'(_0x43039a){const _0x204a0e=a116_0x52e0cb;validateRegroupInput(_0x43039a),requireExplicitYes(_0x43039a);const _0x5a63bc=await buildRegroupPlan(_0x43039a,![]);await recheckMutationSnapshot(_0x43039a,_0x5a63bc[_0x204a0e(0xba)],_0x204a0e(0xbf));const _0x2ff096=buildMenuLookupCommand(_0x43039a[_0x204a0e(0xce)]);let _0x1610c9,_0xe9a074;try{_0x1610c9=await startMenuRegroup(_0x43039a[_0x204a0e(0xe6)],_0x5a63bc[_0x204a0e(0xc5)]),_0xe9a074=normalizeAsyncTask(_0x1610c9);}catch(_0x1af135){const _0x19777c=await inspectRegroupAfterFailure(_0x43039a[_0x204a0e(0xce)],_0x43039a[_0x204a0e(0xe6)],_0x5a63bc[_0x204a0e(0xd1)],_0x5a63bc[_0x204a0e(0xaf)]),_0x34c8dd=typeof _0x1610c9?.['taskId']===_0x204a0e(0xcd)&&_0x1610c9[_0x204a0e(0xeb)][_0x204a0e(0xbd)]()?_0x1610c9[_0x204a0e(0xeb)]['trim']():null,_0x2aa572=_0x34c8dd?{'command':buildAsyncTaskStatusCommand(_0x34c8dd,_0x43039a[_0x204a0e(0xce)])}:null,_0x428b61=mapMenuApiError(_0x1af135,_0x204a0e(0xde));throw menuFailure(_0x428b61,_0x5a63bc[_0x204a0e(0xba)],{'stage':_0x204a0e(0xae),'failed':{'menuIds':_0x5a63bc[_0x204a0e(0xaf)],'taskId':_0x34c8dd,'groupingApplied':_0x19777c[_0x204a0e(0xe7)]?!![]:_0x204a0e(0xfc)},'after':_0x19777c[_0x204a0e(0xe7)]??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.',..._0x19777c[_0x204a0e(0xda)]?[_0x204a0e(0xf1)+_0x19777c['readbackError']]:[],..._0x34c8dd?[_0x204a0e(0xc8)]:[]],'verification':{'status':'failed','groupingApplied':_0x19777c[_0x204a0e(0xe7)]?!![]:_0x204a0e(0xfc),'taskId':_0x34c8dd,'query':_0x2aa572,'lookupCommand':_0x2ff096}});}const _0x4901e2=buildAsyncTaskStatusCommand(_0xe9a074['taskId'],_0x43039a[_0x204a0e(0xce)]);let _0x1f2690=null,_0x2e0084=null,_0x182bd2=null;try{_0x1f2690=await fetchMenuSnapshot(_0x43039a[_0x204a0e(0xce)],_0x43039a['cookie']),_0x2e0084=findAppliedRegroup(_0x1f2690,_0x5a63bc[_0x204a0e(0xd1)],_0x5a63bc[_0x204a0e(0xaf)]);}catch(_0xfab4e3){_0x182bd2=_0xfab4e3 instanceof Error?_0xfab4e3[_0x204a0e(0xff)]:String(_0xfab4e3);}const _0x4c4a4e=mutationResult({..._0x5a63bc[_0x204a0e(0xba)],'after':_0x2e0084??null,'dryRun':![],'succeeded':[{'groupId':_0x2e0084?.[_0x204a0e(0xab)]['id']??null,'menuIds':_0x5a63bc[_0x204a0e(0xaf)],'taskId':_0xe9a074[_0x204a0e(0xeb)],'status':_0xe9a074[_0x204a0e(0xe3)],'groupingApplied':_0x2e0084?!![]:_0x204a0e(0xfc)}],'verification':{'checkedBy':_0x204a0e(0xd3),'snapshotHash':_0x1f2690?.[_0x204a0e(0xbe)]??null,'groupId':_0x2e0084?.['group']['id']??null,'groupingApplied':_0x2e0084?!![]:'unconfirmed','readbackError':_0x182bd2,'lookupCommand':_0x2ff096},'warnings':[..._0x5a63bc[_0x204a0e(0xba)][_0x204a0e(0xfe)],...!_0x2e0084?[unconfirmedRegroupWarning(_0xe9a074)]:[],..._0x182bd2?[_0x204a0e(0xac)+_0x182bd2]:[]]}),_0x97d4f6=_0xe9a074[_0x204a0e(0xe3)]===_0x204a0e(0x100)&&!_0x2e0084?_0x204a0e(0xa8)+_0xe9a074[_0x204a0e(0xeb)]+_0x204a0e(0xfd):_0x204a0e(0xef)+asyncTaskMessage(_0xe9a074);return{'ok':!![],'message':_0x97d4f6,'data':{..._0x4c4a4e,'task':_0xe9a074,'query':_0xe9a074['isTerminal']?null:{'command':_0x4901e2}}};}};function validateRegroupInput(_0x37f788){const _0x2eb27b=a116_0x52e0cb;if(!_0x37f788[_0x2eb27b(0xec)](_0x2eb27b(0xd1))[_0x2eb27b(0xbd)]())throw CliErrors[_0x2eb27b(0xd6)](_0x2eb27b(0xd1));parseMenuIds(_0x37f788[_0x2eb27b(0xec)]('menu-ids'));}function parseMenuIds(_0x299858){const _0x509180=a116_0x52e0cb,_0x42faa0=_0x299858[_0x509180(0x102)](',')[_0x509180(0xa6)](_0x5ca29e=>_0x5ca29e[_0x509180(0xbd)]());if(_0x42faa0['length']===0x0||_0x42faa0[_0x509180(0xf3)](_0x4385b9=>!_0x4385b9))throw CliErrors[_0x509180(0xe2)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x3230b9=_0x42faa0[_0x509180(0xa6)](_0x53679c=>{const _0xffd8d6=_0x509180;if(!/^\d+$/[_0xffd8d6(0xca)](_0x53679c))throw CliErrors[_0xffd8d6(0xe2)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x33d589=Number(_0x53679c);if(!Number[_0xffd8d6(0xdb)](_0x33d589)||_0x33d589<=0x0)throw CliErrors[_0xffd8d6(0xe2)](_0xffd8d6(0xc1));return _0x33d589;});if(new Set(_0x3230b9)[_0x509180(0xcc)]!==_0x3230b9[_0x509180(0xc4)])throw CliErrors['validation'](_0x509180(0xfa));if(_0x3230b9[_0x509180(0xc4)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x509180(0xe2)](_0x509180(0xd2)+MAX_REGROUP_MENU_COUNT+_0x509180(0xf4));return _0x3230b9;}function buildMenuLookupCommand(_0x1f0b42){const _0xcf5f9b=a116_0x52e0cb,_0x37d32a='\x27'+_0x1f0b42[_0xcf5f9b(0xa9)](/'/g,_0xcf5f9b(0xdd))+'\x27';return CLI_BIN_NAME+_0xcf5f9b(0xb7)+_0x37d32a+_0xcf5f9b(0xd5);}function unconfirmedRegroupWarning(_0x2a18f1){const _0x5982fb=a116_0x52e0cb;if(_0x2a18f1[_0x5982fb(0xe3)]===_0x5982fb(0x100))return _0x5982fb(0x106);if(_0x2a18f1[_0x5982fb(0xe3)]===_0x5982fb(0xe4))return _0x5982fb(0xc2);if(_0x2a18f1[_0x5982fb(0xa7)])return _0x5982fb(0xad);return _0x5982fb(0xf0);}async function buildRegroupPlan(_0x1f9f77,_0x267058){const _0x36e91d=a116_0x52e0cb,_0x2d1799=_0x1f9f77['str'](_0x36e91d(0xd1))[_0x36e91d(0xbd)](),_0x2436fd=parseMenuIds(_0x1f9f77[_0x36e91d(0xec)](_0x36e91d(0xbc))),_0x53f882=await fetchMutationSnapshot(_0x1f9f77,_0x36e91d(0xa5)),_0x5a147f=_0x2436fd[_0x36e91d(0xa6)](_0x432c1f=>requireMenu(_0x53f882,_0x432c1f));for(const _0x2ebeba of _0x5a147f){if(_0x2ebeba[_0x36e91d(0xb0)]['trim']()[_0x36e91d(0xc6)]()===_0x36e91d(0xf5)||_0x2ebeba['childrenCount']>0x0)throw menuError(_0x36e91d(0xc7),_0x36e91d(0xf8)+_0x2ebeba['id']+_0x36e91d(0xbb),_0x36e91d(0xd4));if(!_0x2ebeba[_0x36e91d(0xd1)]['trim']())throw menuError('menu_regroup_target_label_missing',_0x36e91d(0xf8)+_0x2ebeba['id']+_0x36e91d(0xb1),'Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.');}const _0x3206a4=findAppliedRegroup(_0x53f882,_0x2d1799,_0x2436fd);if(_0x3206a4)throw menuError(_0x36e91d(0xb3),_0x36e91d(0xaa)+_0x2436fd['join'](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0x3206a4['group']['id']+'\x20('+JSON[_0x36e91d(0xcf)](_0x2d1799)+').',_0x36e91d(0x105));const _0x5c4950=_0x53f882[_0x36e91d(0xf7)][_0x36e91d(0xf9)](_0x59ab82=>_0x59ab82[_0x36e91d(0xb9)]==null&&_0x59ab82[_0x36e91d(0xb0)][_0x36e91d(0xbd)]()['toLowerCase']()===_0x36e91d(0xf5)&&_0x59ab82[_0x36e91d(0xd1)]===_0x2d1799);if(_0x5c4950[_0x36e91d(0xc4)]>0x0)throw menuError('menu_regroup_label_conflict',_0x36e91d(0xc9)+JSON[_0x36e91d(0xcf)](_0x2d1799)+_0x36e91d(0xdf)+_0x5c4950['map'](_0x37d845=>_0x37d845['id'])['join'](',\x20')+'.',_0x36e91d(0xc0));const _0x2a5d76={'appCode':_0x1f9f77[_0x36e91d(0xce)],'menuGroups':[{'label':_0x2d1799,'type':'folder','children':_0x5a147f[_0x36e91d(0xa6)](_0x32c94a=>({'id':_0x32c94a['id'],'label':_0x32c94a[_0x36e91d(0xd1)]}))}]},_0x538a80=mutationResult({'operation':'regroup-start','selector':{'label':_0x2d1799,'menuIds':_0x2436fd},'before':{'menus':_0x5a147f},'after':{'group':{'id':null,'parentId':null,'label':_0x2d1799,'path':_0x36e91d(0xb6),'type':_0x36e91d(0xf5),'childrenIds':_0x2436fd},'children':_0x5a147f['map'](_0x52ffcb=>({'id':_0x52ffcb['id'],'label':_0x52ffcb[_0x36e91d(0xd1)],'beforeParentId':_0x52ffcb[_0x36e91d(0xb9)],'afterParentId':_0x36e91d(0xed)}))},'dryRun':_0x267058,'backend':[...BACKEND],'plannedActions':[{'stage':_0x36e91d(0xe0),'method':_0x36e91d(0xe9),'path':_0x36e91d(0xc3),'body':_0x2a5d76}],'snapshotHash':_0x53f882[_0x36e91d(0xbe)],'warnings':[_0x36e91d(0x103),'The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.']});return{'label':_0x2d1799,'menuIds':_0x2436fd,'input':_0x2a5d76,'plan':_0x538a80};}function findAppliedRegroup(_0xf5a629,_0x42c4ac,_0x3df623){const _0x3497e3=a116_0x52e0cb,_0x1b9c1e=_0x3df623[_0x3497e3(0xa6)](_0x4037c1=>_0xf5a629['byId'][_0x3497e3(0x104)](_0x4037c1))[_0x3497e3(0xf9)](_0x25f2e0=>Boolean(_0x25f2e0));if(_0x1b9c1e['length']!==_0x3df623[_0x3497e3(0xc4)])return null;const _0x237043=_0x1b9c1e[0x0]?.[_0x3497e3(0xb9)];if(_0x237043==null||_0x1b9c1e[_0x3497e3(0xf3)](_0x2b6199=>_0x2b6199[_0x3497e3(0xb9)]!==_0x237043))return null;const _0x134378=_0xf5a629[_0x3497e3(0xea)]['get'](_0x237043);if(!_0x134378||_0x134378['parentId']!=null||_0x134378[_0x3497e3(0xb0)][_0x3497e3(0xbd)]()['toLowerCase']()!==_0x3497e3(0xf5)||_0x134378[_0x3497e3(0xd1)]!==_0x42c4ac)return null;const _0x207541=[..._0x3df623][_0x3497e3(0xcb)]((_0x50d206,_0x4a2644)=>_0x50d206-_0x4a2644),_0x12931c=[..._0x134378[_0x3497e3(0xe1)]]['sort']((_0x4b82c6,_0x3a4b40)=>_0x4b82c6-_0x3a4b40);if(JSON[_0x3497e3(0xcf)](_0x12931c)!==JSON[_0x3497e3(0xcf)](_0x207541))return null;return{'group':_0x134378,'children':_0x1b9c1e};}async function inspectRegroupAfterFailure(_0x16bf10,_0x2cde37,_0x25a302,_0x199f3c){try{const _0x1d70a0=await fetchMenuSnapshot(_0x16bf10,_0x2cde37);return{'applied':findAppliedRegroup(_0x1d70a0,_0x25a302,_0x199f3c),'readbackError':null};}catch(_0x1d1c7d){return{'applied':null,'readbackError':_0x1d1c7d instanceof Error?_0x1d1c7d['message']:String(_0x1d1c7d)};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a117_0x42f6(_0x497201,_0x58b6ce){_0x497201=_0x497201-0x1ca;const _0x46e02b=a117_0x46e0();let _0x42f67f=_0x46e02b[_0x497201];return _0x42f67f;}const a117_0x47e04c=a117_0x42f6;(function(_0x3aebfd,_0x4d7a08){const _0x4c93d8=a117_0x42f6,_0x535a63=_0x3aebfd();while(!![]){try{const _0x12ec42=parseInt(_0x4c93d8(0x1d8))/0x1*(parseInt(_0x4c93d8(0x21c))/0x2)+parseInt(_0x4c93d8(0x1eb))/0x3*(parseInt(_0x4c93d8(0x203))/0x4)+parseInt(_0x4c93d8(0x20e))/0x5*(parseInt(_0x4c93d8(0x1de))/0x6)+-parseInt(_0x4c93d8(0x217))/0x7*(parseInt(_0x4c93d8(0x1d6))/0x8)+parseInt(_0x4c93d8(0x1f5))/0x9+parseInt(_0x4c93d8(0x210))/0xa*(parseInt(_0x4c93d8(0x1d4))/0xb)+-parseInt(_0x4c93d8(0x1ca))/0xc;if(_0x12ec42===_0x4d7a08)break;else _0x535a63['push'](_0x535a63['shift']());}catch(_0x15f081){_0x535a63['push'](_0x535a63['shift']());}}}(a117_0x46e0,0x463b7));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,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a117_0x47e04c(0x204),'path':a117_0x47e04c(0x212)}];export const menuRename={'service':'menu','command':'rename','description':a117_0x47e04c(0x211),'risk':a117_0x47e04c(0x218),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a117_0x47e04c(0x1ea),'type':a117_0x47e04c(0x1f3),'required':!![],'description':a117_0x47e04c(0x1d1)},{'name':'expect-label','type':'string','required':!![],'description':'Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x430541){validateInput(_0x430541);},async 'dryRun'(_0xb824ad){const _0x5e7877=a117_0x47e04c;validateInput(_0xb824ad);const _0x10e18b=await buildPlan(_0xb824ad,!![]);return menuDryRunResult(_0x10e18b[_0x5e7877(0x21e)],{'method':_0x5e7877(0x204),'url':'/smartapi/menu/update','body':_0x10e18b[_0x5e7877(0x215)],'description':_0x5e7877(0x1d2)+_0x10e18b[_0x5e7877(0x215)]['id']+'.'});},async 'execute'(_0x2acc43){const _0x5b33ae=a117_0x47e04c;validateInput(_0x2acc43);const _0x3a5859=await buildPlan(_0x2acc43,![]),{plan:_0x1ba1a8,body:_0x3c09fc,before:_0x4000c8,noChanges:_0x36df5a}=_0x3a5859,_0xaabef1=_0x3c09fc['id'];if(_0x36df5a)return renameSuccess(_0x1ba1a8,_0x3a5859['snapshot'],_0x4000c8,!![],![]);await recheckMutationSnapshot(_0x2acc43,_0x1ba1a8,_0x5b33ae(0x1ff),_0xaabef1);try{await updateMenuEntity(_0x2acc43[_0x5b33ae(0x1f0)],_0x2acc43[_0x5b33ae(0x1cd)],{'id':_0xaabef1,'label':_0x3c09fc[_0x5b33ae(0x1ea)]});}catch(_0x176138){const _0x5f349a=mapMenuApiError(_0x176138,_0x5b33ae(0x1e3),_0xaabef1);if(isMenuResponseLoss(_0x176138)&&_0x5f349a[_0x5b33ae(0x1f1)]!==_0x5b33ae(0x1e6))return recoverAfterResponseLoss(_0x2acc43,_0x3a5859);throw menuFailure(_0x5f349a,_0x1ba1a8,{'stage':'update','failed':{'id':_0xaabef1},'warnings':[_0x5b33ae(0x206)],'verification':{'status':_0x5b33ae(0x1fc),'targetId':_0xaabef1,'lookupCommand':buildLookupCommand(_0x2acc43['appCode'])}});}let _0x4bc86b,_0x171717;try{_0x4bc86b=await fetchMenuSnapshot(_0x2acc43[_0x5b33ae(0x1f0)],_0x2acc43[_0x5b33ae(0x1cd)]),_0x171717=requireMenu(_0x4bc86b,_0xaabef1),verifyRenamedFact(_0x4000c8,_0x171717,_0x3c09fc[_0x5b33ae(0x1ea)]);}catch(_0x2e5e8c){const _0xc54d9d=describeMenuErrorCause(_0x2e5e8c,_0x5b33ae(0x20f),_0xaabef1),_0x431209=asVerificationError(_0x2e5e8c,_0x5b33ae(0x1ef)+_0xaabef1+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x431209,_0x1ba1a8,{'stage':_0x5b33ae(0x1d9),'succeeded':[{'id':_0xaabef1,'updateRequested':!![]}],'failed':{'id':_0xaabef1,'requestedStateConfirmed':![],..._0xc54d9d},'warnings':[_0x5b33ae(0x1cb)],'verification':{'status':_0x5b33ae(0x1fc),'targetId':_0xaabef1,'lookupCommand':buildLookupCommand(_0x2acc43[_0x5b33ae(0x1f0)])}});}return renameSuccess(_0x1ba1a8,_0x4bc86b,_0x171717,![],![]);}};function validateInput(_0x53101c){const _0x3bfab0=a117_0x47e04c;validateExactId(_0x53101c);if(!_0x53101c['str'](_0x3bfab0(0x1ea))['trim']())throw CliErrors[_0x3bfab0(0x1e9)](_0x3bfab0(0x1f8));if(!_0x53101c[_0x3bfab0(0x1e4)](_0x3bfab0(0x1dc))[_0x3bfab0(0x20c)]())throw CliErrors[_0x3bfab0(0x20b)](_0x3bfab0(0x1dc));}async function buildPlan(_0x5f7ce1,_0x513f67){const _0x199695=a117_0x47e04c,_0x334417=validateExactId(_0x5f7ce1),_0x4af833=_0x5f7ce1[_0x199695(0x1e4)](_0x199695(0x1ea))[_0x199695(0x20c)](),_0x2a116d=_0x5f7ce1[_0x199695(0x1e4)](_0x199695(0x1dc)),_0x59a898=await fetchMutationSnapshot(_0x5f7ce1,_0x199695(0x1ff),_0x334417),_0x473eed=requireMenu(_0x59a898,_0x334417);if(_0x473eed[_0x199695(0x1ea)]!==_0x2a116d)throw menuError(_0x199695(0x207),'Menu\x20'+_0x334417+_0x199695(0x1ee)+JSON[_0x199695(0x21f)](_0x2a116d)+_0x199695(0x205)+JSON[_0x199695(0x21f)](_0x473eed[_0x199695(0x1ea)])+'.',_0x199695(0x219));const _0x24103b={'id':_0x334417,'appCode':_0x5f7ce1['appCode'],'label':_0x4af833},_0x3433d2={..._0x473eed,'label':_0x4af833},_0x3ca197=_0x473eed[_0x199695(0x1ea)]===_0x4af833,_0x4e5abf=_0x3ca197?[]:[{'stage':'rename-menu','method':'POST','path':_0x199695(0x212),'body':_0x24103b}];return{'snapshot':_0x59a898,'before':_0x473eed,'body':_0x24103b,'noChanges':_0x3ca197,'plan':mutationResult({'operation':'rename','selector':{'id':_0x334417},'before':_0x473eed,'after':_0x3433d2,'dryRun':_0x513f67,'backend':[...BACKEND],'plannedActions':_0x4e5abf,'snapshotHash':_0x59a898[_0x199695(0x21d)],'warnings':_0x3ca197?[_0x199695(0x1fa)]:[]})};}function verifyRenamedFact(_0x412033,_0x11e143,_0x25df83){const _0x380305=a117_0x47e04c,_0x25f271=[['id',_0x11e143['id'],_0x412033['id']],[_0x380305(0x1d7),_0x11e143[_0x380305(0x1d7)],_0x412033[_0x380305(0x1d7)]],[_0x380305(0x1d5),_0x11e143[_0x380305(0x1d5)],_0x412033[_0x380305(0x1d5)]],['path',_0x11e143[_0x380305(0x1e8)],_0x412033[_0x380305(0x1e8)]],['url',_0x11e143[_0x380305(0x21a)],_0x412033[_0x380305(0x21a)]],[_0x380305(0x1f4),_0x11e143[_0x380305(0x1f4)],_0x412033[_0x380305(0x1f4)]],[_0x380305(0x1e0),_0x11e143[_0x380305(0x1e0)],_0x412033[_0x380305(0x1e0)]],['sort',_0x11e143[_0x380305(0x1ed)],_0x412033[_0x380305(0x1ed)]],[_0x380305(0x214),_0x11e143[_0x380305(0x214)],_0x412033[_0x380305(0x214)]],[_0x380305(0x20d),_0x11e143['resourcesValid'],_0x412033['resourcesValid']],[_0x380305(0x1d0),_0x11e143['childrenIds'],_0x412033[_0x380305(0x1d0)]],[_0x380305(0x1d3),_0x11e143[_0x380305(0x1d3)],_0x412033[_0x380305(0x1d3)]],['pageId',_0x11e143[_0x380305(0x1e1)],_0x412033[_0x380305(0x1e1)]],['pageType',_0x11e143[_0x380305(0x213)],_0x412033[_0x380305(0x213)]],['modelType',_0x11e143['modelType'],_0x412033[_0x380305(0x1cf)]],[_0x380305(0x202),_0x11e143[_0x380305(0x202)],_0x412033[_0x380305(0x202)]],['datasetCode',_0x11e143[_0x380305(0x1e2)],_0x412033[_0x380305(0x1e2)]]];for(const [_0x15e28e,_0x22dc09,_0x4d8377]of _0x25f271){assertVerified(sameValue(_0x22dc09,_0x4d8377),_0x380305(0x1ce)+_0x412033['id']+'\x20'+_0x15e28e+_0x380305(0x1fd));}assertVerified(_0x11e143[_0x380305(0x1ea)]===_0x25df83,_0x380305(0x1ce)+_0x412033['id']+_0x380305(0x1f2));}function sameValue(_0x57304e,_0x43f665){const _0x32a47b=a117_0x47e04c;if(Array['isArray'](_0x57304e)||Array['isArray'](_0x43f665))return JSON[_0x32a47b(0x21f)](_0x57304e)===JSON[_0x32a47b(0x21f)](_0x43f665);return _0x57304e===_0x43f665;}function renameSuccess(_0xb0edbe,_0x87d6f6,_0x46d8bd,_0x2cce96,_0x224ff1){const _0x16ca47=a117_0x47e04c,_0x12ee89=_0x46d8bd['id'],_0x1bbd0f=mutationResult({..._0xb0edbe,'after':_0x46d8bd,'dryRun':![],'succeeded':[{'id':_0x12ee89,'updated':!_0x2cce96,'skipped':_0x2cce96,'recovered':_0x224ff1}],'verification':{'checkedBy':_0x16ca47(0x1e7),'snapshotHash':_0x87d6f6['hash'],'targetId':_0x12ee89,'matchesRequestedState':!![],'recovered':_0x224ff1}});return{'ok':!![],'message':_0x224ff1?_0x16ca47(0x209)+_0x12ee89+'.':_0x2cce96?_0x16ca47(0x1ce)+_0x12ee89+_0x16ca47(0x1f9):_0x16ca47(0x216)+_0x12ee89+'.','data':{..._0x1bbd0f,'recovered':_0x224ff1}};}async function recoverAfterResponseLoss(_0x12deca,_0x136132){const _0x1b6deb=a117_0x47e04c,{plan:_0x26e0b9,before:_0x507ec3,body:_0x50f00c}=_0x136132;let _0x560929;try{_0x560929=await fetchMenuSnapshot(_0x12deca[_0x1b6deb(0x1f0)],_0x12deca[_0x1b6deb(0x1cd)]);}catch{throw recoveryRequired(_0x26e0b9,_0x12deca[_0x1b6deb(0x1f0)],{'id':_0x50f00c['id'],'readbackFailed':!![]});}const _0x59517c=_0x560929[_0x1b6deb(0x1e5)][_0x1b6deb(0x1cc)](_0x50f00c['id']);if(!_0x59517c||_0x59517c[_0x1b6deb(0x1ea)]!==_0x50f00c[_0x1b6deb(0x1ea)])throw recoveryRequired(_0x26e0b9,_0x12deca[_0x1b6deb(0x1f0)],{'id':_0x50f00c['id'],'requestedLabelObserved':![],'after':_0x59517c??null});try{verifyRenamedFact(_0x507ec3,_0x59517c,_0x50f00c[_0x1b6deb(0x1ea)]);}catch(_0x338e28){const _0xc42a86=asVerificationError(_0x338e28,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x50f00c['id']+_0x1b6deb(0x200));throw menuFailure(_0xc42a86,_0x26e0b9,{'stage':_0x1b6deb(0x1dd),'succeeded':[{'id':_0x50f00c['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x50f00c['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x59517c,'warnings':['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x1b6deb(0x1fc),'targetId':_0x50f00c['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x12deca['appCode'])}});}return renameSuccess(_0x26e0b9,_0x560929,_0x59517c,![],!![]);}function recoveryRequired(_0x25014d,_0x40223e,_0x10fb5e){const _0x290bef=a117_0x47e04c,_0x478934=menuError(_0x290bef(0x1ec),_0x290bef(0x1fe),_0x290bef(0x1db)+buildLookupCommand(_0x40223e)+_0x290bef(0x208));return menuFailure(_0x478934,_0x25014d,{'stage':_0x290bef(0x1dd),'failed':{'id':_0x10fb5e['id'],..._0x10fb5e[_0x290bef(0x1fb)]===undefined?{}:{'requestedLabelObserved':_0x10fb5e[_0x290bef(0x1fb)]},..._0x10fb5e[_0x290bef(0x20a)]?{'readbackFailed':!![]}:{}},'after':_0x10fb5e[_0x290bef(0x1da)],'warnings':[_0x290bef(0x21b)],'verification':{'status':_0x290bef(0x1fc),'targetId':_0x10fb5e['id'],..._0x10fb5e['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x10fb5e[_0x290bef(0x1fb)]},..._0x10fb5e[_0x290bef(0x20a)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x40223e)}});}function a117_0x46e0(){const _0x4beddc=['byId','menu_permission_denied','menu\x20list','path','validation','label','3OyCCkc','menu_update_recovery_required','sort','\x20label\x20changed:\x20expected\x20','Rename\x20request\x20for\x20menu\x20','appCode','code','\x20label\x20update\x20did\x20not\x20take\x20effect.','string','type','2167146ZGBltN','\x27\x5c\x27\x27','\x20--format\x20compress','--label\x20cannot\x20be\x20empty.','\x20already\x20has\x20the\x20requested\x20label.','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','requestedLabelObserved','failed','\x20changed\x20during\x20the\x20label-only\x20rename.','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','rename\x20menu','\x20could\x20not\x20be\x20verified\x20safely','replace','datasetId','806948NwwohR','POST',',\x20current\x20','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu_state_drift','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','readbackFailed','flagMissing','trim','resourcesValid','5VvWUOX','verify\x20menu\x20rename','10SkeCvj','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','/smartapi/menu/update','pageType','resources','body','Renamed\x20menu\x20','1644524eoFLFm','write','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','url','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','202478lWfrvF','hash','plan','stringify','7883424rkUIOl','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','get','cookie','Menu\x20','modelType','childrenIds','New\x20menu\x20label','Would\x20rename\x20menu\x20','childrenCount','4726469AwdcfB','depth','16iGOfal','parentId','2yvGjsT','verification','after','Run\x20','expect-label','update-recovery','2038794oyzYGw','rabetbase\x20menu\x20list\x20--appcode\x20','visible','pageId','datasetCode','rename','str'];a117_0x46e0=function(){return _0x4beddc;};return a117_0x46e0();}function buildLookupCommand(_0x75538b){const _0x41fc4f=a117_0x47e04c,_0x35c1e6='\x27'+_0x75538b[_0x41fc4f(0x201)](/'/g,_0x41fc4f(0x1f6))+'\x27';return _0x41fc4f(0x1df)+_0x35c1e6+_0x41fc4f(0x1f7);}
|
|
1
|
+
const a117_0x194fbb=a117_0x2199;(function(_0x5bd5c0,_0x30ebf4){const _0x45a4=a117_0x2199,_0x4316e1=_0x5bd5c0();while(!![]){try{const _0x4a080e=parseInt(_0x45a4(0x175))/0x1*(parseInt(_0x45a4(0x17f))/0x2)+-parseInt(_0x45a4(0x18c))/0x3*(parseInt(_0x45a4(0x176))/0x4)+parseInt(_0x45a4(0x154))/0x5+-parseInt(_0x45a4(0x149))/0x6+-parseInt(_0x45a4(0x15f))/0x7*(parseInt(_0x45a4(0x159))/0x8)+-parseInt(_0x45a4(0x173))/0x9*(-parseInt(_0x45a4(0x151))/0xa)+-parseInt(_0x45a4(0x18a))/0xb;if(_0x4a080e===_0x30ebf4)break;else _0x4316e1['push'](_0x4316e1['shift']());}catch(_0x4f9d52){_0x4316e1['push'](_0x4316e1['shift']());}}}(a117_0x2603,0x8dc9e));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,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a117_0x194fbb(0x16d),'path':a117_0x194fbb(0x194)}];export const menuRename={'service':a117_0x194fbb(0x150),'command':a117_0x194fbb(0x14a),'description':a117_0x194fbb(0x18e),'risk':a117_0x194fbb(0x18d),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a117_0x194fbb(0x17e),'type':a117_0x194fbb(0x18f),'required':!![],'description':a117_0x194fbb(0x162)},{'name':a117_0x194fbb(0x195),'type':a117_0x194fbb(0x18f),'required':!![],'description':a117_0x194fbb(0x178)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x10bd5d){validateInput(_0x10bd5d);},async 'dryRun'(_0x3cbeb8){const _0x1aad16=a117_0x194fbb;validateInput(_0x3cbeb8);const _0x41a728=await buildPlan(_0x3cbeb8,!![]);return menuDryRunResult(_0x41a728[_0x1aad16(0x15d)],{'method':_0x1aad16(0x16d),'url':_0x1aad16(0x194),'body':_0x41a728['body'],'description':_0x1aad16(0x188)+_0x41a728[_0x1aad16(0x199)]['id']+'.'});},async 'execute'(_0xb0606e){const _0x312331=a117_0x194fbb;validateInput(_0xb0606e);const _0x2e41e7=await buildPlan(_0xb0606e,![]),{plan:_0x32c889,body:_0x12fbc7,before:_0x212207,noChanges:_0x57a9b1}=_0x2e41e7,_0x2e3da5=_0x12fbc7['id'];if(_0x57a9b1)return renameSuccess(_0x32c889,_0x2e41e7[_0x312331(0x189)],_0x212207,!![],![]);await recheckMutationSnapshot(_0xb0606e,_0x32c889,'rename\x20menu',_0x2e3da5);try{await updateMenuEntity(_0xb0606e[_0x312331(0x184)],_0xb0606e[_0x312331(0x153)],{'id':_0x2e3da5,'label':_0x12fbc7[_0x312331(0x17e)]});}catch(_0xdc244a){const _0xf83b44=mapMenuApiError(_0xdc244a,'rename',_0x2e3da5);if(isMenuResponseLoss(_0xdc244a)&&_0xf83b44['code']!==_0x312331(0x16e))return recoverAfterResponseLoss(_0xb0606e,_0x2e41e7);throw menuFailure(_0xf83b44,_0x32c889,{'stage':_0x312331(0x17b),'failed':{'id':_0x2e3da5},'warnings':[_0x312331(0x183)],'verification':{'status':'failed','targetId':_0x2e3da5,'lookupCommand':buildLookupCommand(_0xb0606e[_0x312331(0x184)])}});}let _0x2e5b0d,_0x551fb1;try{_0x2e5b0d=await fetchMenuSnapshot(_0xb0606e[_0x312331(0x184)],_0xb0606e[_0x312331(0x153)]),_0x551fb1=requireMenu(_0x2e5b0d,_0x2e3da5),verifyRenamedFact(_0x212207,_0x551fb1,_0x12fbc7['label']);}catch(_0x26ff33){const _0x519281=describeMenuErrorCause(_0x26ff33,'verify\x20menu\x20rename',_0x2e3da5),_0x58a03e=asVerificationError(_0x26ff33,_0x312331(0x16a)+_0x2e3da5+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x58a03e,_0x32c889,{'stage':_0x312331(0x187),'succeeded':[{'id':_0x2e3da5,'updateRequested':!![]}],'failed':{'id':_0x2e3da5,'requestedStateConfirmed':![],..._0x519281},'warnings':[_0x312331(0x146)],'verification':{'status':_0x312331(0x160),'targetId':_0x2e3da5,'lookupCommand':buildLookupCommand(_0xb0606e[_0x312331(0x184)])}});}return renameSuccess(_0x32c889,_0x2e5b0d,_0x551fb1,![],![]);}};function validateInput(_0x2f3085){const _0x28450d=a117_0x194fbb;validateExactId(_0x2f3085);if(!_0x2f3085['str'](_0x28450d(0x17e))['trim']())throw CliErrors[_0x28450d(0x14f)](_0x28450d(0x14c));if(!_0x2f3085[_0x28450d(0x169)](_0x28450d(0x195))[_0x28450d(0x181)]())throw CliErrors['flagMissing']('expect-label');}function a117_0x2199(_0x385bd2,_0x4c325e){_0x385bd2=_0x385bd2-0x146;const _0x26039e=a117_0x2603();let _0x219952=_0x26039e[_0x385bd2];return _0x219952;}async function buildPlan(_0x3bb85f,_0x564952){const _0x4a7029=a117_0x194fbb,_0x3e1e68=validateExactId(_0x3bb85f),_0xb25229=_0x3bb85f['str'](_0x4a7029(0x17e))[_0x4a7029(0x181)](),_0x38a479=_0x3bb85f[_0x4a7029(0x169)](_0x4a7029(0x195)),_0x11883f=await fetchMutationSnapshot(_0x3bb85f,_0x4a7029(0x14b),_0x3e1e68),_0x161595=requireMenu(_0x11883f,_0x3e1e68);if(_0x161595['label']!==_0x38a479)throw menuError(_0x4a7029(0x174),'Menu\x20'+_0x3e1e68+_0x4a7029(0x16c)+JSON[_0x4a7029(0x185)](_0x38a479)+_0x4a7029(0x166)+JSON['stringify'](_0x161595['label'])+'.',_0x4a7029(0x197));const _0x4c24c2={'id':_0x3e1e68,'appCode':_0x3bb85f[_0x4a7029(0x184)],'label':_0xb25229},_0x5ee3bb={..._0x161595,'label':_0xb25229},_0x4fed73=_0x161595[_0x4a7029(0x17e)]===_0xb25229,_0x439b52=_0x4fed73?[]:[{'stage':_0x4a7029(0x182),'method':_0x4a7029(0x16d),'path':_0x4a7029(0x194),'body':_0x4c24c2}];return{'snapshot':_0x11883f,'before':_0x161595,'body':_0x4c24c2,'noChanges':_0x4fed73,'plan':mutationResult({'operation':_0x4a7029(0x14a),'selector':{'id':_0x3e1e68},'before':_0x161595,'after':_0x5ee3bb,'dryRun':_0x564952,'backend':[...BACKEND],'plannedActions':_0x439b52,'snapshotHash':_0x11883f[_0x4a7029(0x16f)],'warnings':_0x4fed73?[_0x4a7029(0x17a)]:[]})};}function verifyRenamedFact(_0xa1f603,_0x9384ac,_0x2e03c1){const _0x2ca233=a117_0x194fbb,_0x28c7a5=[['id',_0x9384ac['id'],_0xa1f603['id']],[_0x2ca233(0x15e),_0x9384ac[_0x2ca233(0x15e)],_0xa1f603[_0x2ca233(0x15e)]],[_0x2ca233(0x177),_0x9384ac[_0x2ca233(0x177)],_0xa1f603[_0x2ca233(0x177)]],['path',_0x9384ac['path'],_0xa1f603[_0x2ca233(0x198)]],[_0x2ca233(0x167),_0x9384ac['url'],_0xa1f603[_0x2ca233(0x167)]],['type',_0x9384ac[_0x2ca233(0x148)],_0xa1f603[_0x2ca233(0x148)]],[_0x2ca233(0x191),_0x9384ac[_0x2ca233(0x191)],_0xa1f603[_0x2ca233(0x191)]],[_0x2ca233(0x15a),_0x9384ac[_0x2ca233(0x15a)],_0xa1f603[_0x2ca233(0x15a)]],[_0x2ca233(0x14d),_0x9384ac[_0x2ca233(0x14d)],_0xa1f603['resources']],[_0x2ca233(0x193),_0x9384ac[_0x2ca233(0x193)],_0xa1f603[_0x2ca233(0x193)]],['childrenIds',_0x9384ac[_0x2ca233(0x156)],_0xa1f603[_0x2ca233(0x156)]],[_0x2ca233(0x19a),_0x9384ac['childrenCount'],_0xa1f603[_0x2ca233(0x19a)]],['pageId',_0x9384ac['pageId'],_0xa1f603[_0x2ca233(0x15b)]],['pageType',_0x9384ac[_0x2ca233(0x172)],_0xa1f603['pageType']],[_0x2ca233(0x155),_0x9384ac['modelType'],_0xa1f603[_0x2ca233(0x155)]],[_0x2ca233(0x171),_0x9384ac[_0x2ca233(0x171)],_0xa1f603[_0x2ca233(0x171)]],[_0x2ca233(0x152),_0x9384ac[_0x2ca233(0x152)],_0xa1f603['datasetCode']]];for(const [_0x2a799b,_0x150165,_0x30ce65]of _0x28c7a5){assertVerified(sameValue(_0x150165,_0x30ce65),_0x2ca233(0x163)+_0xa1f603['id']+'\x20'+_0x2a799b+_0x2ca233(0x168));}assertVerified(_0x9384ac[_0x2ca233(0x17e)]===_0x2e03c1,'Menu\x20'+_0xa1f603['id']+_0x2ca233(0x157));}function sameValue(_0x26b422,_0x5a7d6d){const _0x7b5939=a117_0x194fbb;if(Array['isArray'](_0x26b422)||Array[_0x7b5939(0x196)](_0x5a7d6d))return JSON[_0x7b5939(0x185)](_0x26b422)===JSON[_0x7b5939(0x185)](_0x5a7d6d);return _0x26b422===_0x5a7d6d;}function renameSuccess(_0x487ed0,_0x51bf44,_0x11fd9e,_0x57d24d,_0x1938b5){const _0x1d7a38=a117_0x194fbb,_0x2b7bfd=_0x11fd9e['id'],_0x3e3d20=mutationResult({..._0x487ed0,'after':_0x11fd9e,'dryRun':![],'succeeded':[{'id':_0x2b7bfd,'updated':!_0x57d24d,'skipped':_0x57d24d,'recovered':_0x1938b5}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x51bf44['hash'],'targetId':_0x2b7bfd,'matchesRequestedState':!![],'recovered':_0x1938b5}});return{'ok':!![],'message':_0x1938b5?_0x1d7a38(0x16b)+_0x2b7bfd+'.':_0x57d24d?'Menu\x20'+_0x2b7bfd+_0x1d7a38(0x18b):'Renamed\x20menu\x20'+_0x2b7bfd+'.','data':{..._0x3e3d20,'recovered':_0x1938b5}};}async function recoverAfterResponseLoss(_0x9a470e,_0x12e368){const _0x3ae0b7=a117_0x194fbb,{plan:_0x1f66ce,before:_0x18da10,body:_0x5c7f53}=_0x12e368;let _0x1c4c5a;try{_0x1c4c5a=await fetchMenuSnapshot(_0x9a470e['appCode'],_0x9a470e[_0x3ae0b7(0x153)]);}catch{throw recoveryRequired(_0x1f66ce,_0x9a470e[_0x3ae0b7(0x184)],{'id':_0x5c7f53['id'],'readbackFailed':!![]});}const _0x555729=_0x1c4c5a[_0x3ae0b7(0x170)][_0x3ae0b7(0x147)](_0x5c7f53['id']);if(!_0x555729||_0x555729[_0x3ae0b7(0x17e)]!==_0x5c7f53[_0x3ae0b7(0x17e)])throw recoveryRequired(_0x1f66ce,_0x9a470e[_0x3ae0b7(0x184)],{'id':_0x5c7f53['id'],'requestedLabelObserved':![],'after':_0x555729??null});try{verifyRenamedFact(_0x18da10,_0x555729,_0x5c7f53['label']);}catch(_0x13e2fb){const _0x50183e=asVerificationError(_0x13e2fb,_0x3ae0b7(0x164)+_0x5c7f53['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x50183e,_0x1f66ce,{'stage':_0x3ae0b7(0x179),'succeeded':[{'id':_0x5c7f53['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x5c7f53['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x555729,'warnings':[_0x3ae0b7(0x158)],'verification':{'status':'failed','targetId':_0x5c7f53['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x9a470e[_0x3ae0b7(0x184)])}});}return renameSuccess(_0x1f66ce,_0x1c4c5a,_0x555729,![],!![]);}function a117_0x2603(){const _0x15fe5a=['\x20label\x20update\x20did\x20not\x20take\x20effect.','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','910208cDnTaq','sort','pageId','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','plan','parentId','14KaMWJB','failed','menu_update_recovery_required','New\x20menu\x20label','Menu\x20','Response\x20was\x20lost\x20and\x20menu\x20','readbackFailed',',\x20current\x20','url','\x20changed\x20during\x20the\x20label-only\x20rename.','str','Rename\x20request\x20for\x20menu\x20','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','\x20label\x20changed:\x20expected\x20','POST','menu_permission_denied','hash','byId','datasetId','pageType','2502JSVMNB','menu_state_drift','24519GtUuPq','276psixBt','depth','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','update-recovery','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','update','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','requestedLabelObserved','label','46sUUfhU','\x27\x5c\x27\x27','trim','rename-menu','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','appCode','stringify','after','verification','Would\x20rename\x20menu\x20','snapshot','1411619HydbWI','\x20already\x20has\x20the\x20requested\x20label.','20484dPnCZi','write','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','string','\x20--format\x20compress','visible','replace','resourcesValid','/smartapi/menu/update','expect-label','isArray','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','path','body','childrenCount','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','get','type','2535834kgXpvl','rename','rename\x20menu','--label\x20cannot\x20be\x20empty.','resources','Run\x20','validation','menu','32810fxwNtw','datasetCode','cookie','1771815xsTQMM','modelType','childrenIds'];a117_0x2603=function(){return _0x15fe5a;};return a117_0x2603();}function recoveryRequired(_0x14db7c,_0x156940,_0x198d3a){const _0x4831a8=a117_0x194fbb,_0x505648=menuError(_0x4831a8(0x161),'The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.',_0x4831a8(0x14e)+buildLookupCommand(_0x156940)+_0x4831a8(0x17c));return menuFailure(_0x505648,_0x14db7c,{'stage':'update-recovery','failed':{'id':_0x198d3a['id'],..._0x198d3a[_0x4831a8(0x17d)]===undefined?{}:{'requestedLabelObserved':_0x198d3a['requestedLabelObserved']},..._0x198d3a[_0x4831a8(0x165)]?{'readbackFailed':!![]}:{}},'after':_0x198d3a[_0x4831a8(0x186)],'warnings':[_0x4831a8(0x15c)],'verification':{'status':_0x4831a8(0x160),'targetId':_0x198d3a['id'],..._0x198d3a['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x198d3a[_0x4831a8(0x17d)]},..._0x198d3a[_0x4831a8(0x165)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x156940)}});}function buildLookupCommand(_0x497616){const _0x424898=a117_0x194fbb,_0x443e3f='\x27'+_0x497616[_0x424898(0x192)](/'/g,_0x424898(0x180))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x443e3f+_0x424898(0x190);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x180790,_0x2b07a0){const _0x2beb03=a118_0x4f07,_0x6beed4=_0x180790();while(!![]){try{const _0x2dbd51=-parseInt(_0x2beb03(0x11e))/0x1*(parseInt(_0x2beb03(0x122))/0x2)+parseInt(_0x2beb03(0x119))/0x3+-parseInt(_0x2beb03(0x121))/0x4*(parseInt(_0x2beb03(0x118))/0x5)+parseInt(_0x2beb03(0x116))/0x6*(-parseInt(_0x2beb03(0x11f))/0x7)+parseInt(_0x2beb03(0x117))/0x8+parseInt(_0x2beb03(0x129))/0x9*(parseInt(_0x2beb03(0x11c))/0xa)+parseInt(_0x2beb03(0x12e))/0xb;if(_0x2dbd51===_0x2b07a0)break;else _0x6beed4['push'](_0x6beed4['shift']());}catch(_0x152f83){_0x6beed4['push'](_0x6beed4['shift']());}}}(a118_0x2735,0x2a3b7));function strWidth(_0x47a39e){const _0x14ad93=a118_0x4f07;let _0x1d255c=0x0;for(const _0x1e3358 of _0x47a39e){_0x1d255c+=/[\u4e00-\u9fa5]/[_0x14ad93(0x110)](_0x1e3358)?0x2:0x1;}return _0x1d255c;}function padRight(_0x1da83c,_0x99f86f){const _0xb40b04=a118_0x4f07,_0x13d7dc=strWidth(_0x1da83c);return _0x1da83c+'\x20'[_0xb40b04(0x12c)](Math[_0xb40b04(0x128)](0x0,_0x99f86f-_0x13d7dc));}export function renderCompareTable(_0x251366,_0x107b8e={}){const _0x2f4710=a118_0x4f07;if(_0x251366[_0x2f4710(0x112)]===0x0)return'';const _0x48d690=_0x107b8e[_0x2f4710(0x123)]??!![],_0x3abf9f=Math[_0x2f4710(0x128)](0x1e,..._0x251366[_0x2f4710(0x120)](_0x171de1=>strWidth(_0x171de1[_0x2f4710(0x115)]))),_0x5837a9=Math[_0x2f4710(0x128)](0x18,..._0x251366[_0x2f4710(0x120)](_0x367784=>strWidth(_0x367784[_0x2f4710(0x114)]))),_0xc6d58d=0x4,_0x3dee37=[],_0x3de13b='\x20\x20'+padRight('Menu\x20Name',_0x3abf9f),_0x1c9ef8=padRight('Path',_0x5837a9),_0x6c70cb=padRight('Local',_0xc6d58d),_0x26537d=_0x48d690?'\x20\x20'+padRight(_0x2f4710(0x11a),_0xc6d58d):'';_0x3dee37[_0x2f4710(0x125)](_0x3de13b+'\x20\x20'+_0x1c9ef8+'\x20\x20'+_0x6c70cb+(_0x48d690?_0x26537d:'')),_0x3dee37['push']('\x20\x20'+'─'[_0x2f4710(0x12c)](_0x3abf9f)+'\x20\x20'+'─'['repeat'](_0x5837a9)+'\x20\x20'+'─'[_0x2f4710(0x12c)](_0xc6d58d)+(_0x48d690?'\x20\x20'+'─'['repeat'](_0xc6d58d):''));for(const _0x309c28 of _0x251366){const _0x573bff=padRight(_0x309c28[_0x2f4710(0x115)],_0x3abf9f),_0x4fe463=padRight(_0x309c28[_0x2f4710(0x114)],_0x5837a9),_0x46ba07=_0x309c28[_0x2f4710(0x12b)]?'✓':'✗',_0x304cd1=padRight(_0x46ba07,_0xc6d58d);let _0x2ff158='\x20\x20'+_0x573bff+'\x20\x20'+_0x4fe463+'\x20\x20'+_0x304cd1;if(_0x48d690){const _0x4f5423=_0x309c28[_0x2f4710(0x11b)]?'✓':'✗';_0x2ff158+='\x20\x20'+padRight(_0x4f5423,_0xc6d58d);}_0x3dee37[_0x2f4710(0x125)](_0x2ff158);}return _0x3dee37['join']('\x0a');}export function renderSyncSummary(_0x25a577,_0x398ffd){const _0x96cc53=a118_0x4f07;if(_0x25a577[_0x96cc53(0x112)]===0x0)return _0x398ffd?_0x96cc53(0x126):_0x96cc53(0x127);const _0x2d271d=['\x20\x20'+_0x25a577[_0x96cc53(0x112)]+_0x96cc53(0x12d)];for(const _0x2e9f4d of _0x25a577){_0x2d271d[_0x96cc53(0x125)](_0x96cc53(0x113)+_0x2e9f4d[_0x96cc53(0x115)]+'\x20('+_0x2e9f4d[_0x96cc53(0x114)]+')');}return _0x2d271d[_0x96cc53(0x111)]('\x0a');}function a118_0x4f07(_0x208797,_0x3efdd2){_0x208797=_0x208797-0x110;const _0x2735a3=a118_0x2735();let _0x4f0794=_0x2735a3[_0x208797];return _0x4f0794;}function a118_0x2735(){const _0x57c23c=['\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','\x20\x20No\x20pages\x20to\x20sync.','max','104643qXAxcM','\x20\x20\x20\x20CSS:\x20','local','repeat','\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','4267615ITlvPB','test','join','length','\x20\x20\x20\x20•\x20','path','label','66OApqlf','2215800YeCKLa','25fSEQZg','187218gNvNTK','Platform','online','180uhxunx','(unchanged)','4711ONtYgy','120232uaUCJi','map','184648ojTtEx','146VQtZFs','showOnline','\x20\x20\x20\x20JS:\x20\x20','push'];a118_0x2735=function(){return _0x57c23c;};return a118_0x2735();}export function renderUpdateSummary(_0x397f0e,_0x27ac35){const _0xb813e1=a118_0x4f07;if(_0x397f0e[_0xb813e1(0x112)]===0x0)return'\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.';const _0x3a3b94=['\x20\x20'+_0x397f0e[_0xb813e1(0x112)]+'\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:',_0xb813e1(0x124)+(_0x27ac35[0x0]??_0xb813e1(0x11d)),_0xb813e1(0x12a)+(_0x27ac35[0x1]??_0xb813e1(0x11d)),'','\x20\x20Affected\x20menus:\x20'+_0x397f0e[_0xb813e1(0x111)](',\x20')];return _0x3a3b94['join']('\x0a');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a119_0x2e1f(_0x165d89,_0x2b61c0){_0x165d89=_0x165d89-0x90;const _0x4b6b30=a119_0x4b6b();let _0x2e1f88=_0x4b6b30[_0x165d89];return _0x2e1f88;}const a119_0x3414f8=a119_0x2e1f;(function(_0x4200de,_0xf8eb48){const _0x7f1329=a119_0x2e1f,_0x6d37d8=_0x4200de();while(!![]){try{const _0x21d103=-parseInt(_0x7f1329(0x92))/0x1+-parseInt(_0x7f1329(0xc5))/0x2*(-parseInt(_0x7f1329(0xb0))/0x3)+parseInt(_0x7f1329(0xb2))/0x4*(parseInt(_0x7f1329(0x95))/0x5)+-parseInt(_0x7f1329(0xd2))/0x6*(parseInt(_0x7f1329(0xf4))/0x7)+-parseInt(_0x7f1329(0xed))/0x8*(parseInt(_0x7f1329(0xa7))/0x9)+parseInt(_0x7f1329(0x91))/0xa+parseInt(_0x7f1329(0xbc))/0xb*(parseInt(_0x7f1329(0xd0))/0xc);if(_0x21d103===_0xf8eb48)break;else _0x6d37d8['push'](_0x6d37d8['shift']());}catch(_0x2af288){_0x6d37d8['push'](_0x6d37d8['shift']());}}}(a119_0x4b6b,0xdb89b));import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND=a119_0x3414f8(0xbb),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x132840,_0x502449,_0x29a9b0=new Date()){const _0x231839=a119_0x3414f8;if(!_0x502449['before']||!isMenuFact(_0x502449['before']))throw menuError('menu_plan_invalid','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.');const _0x5aac32=_0x502449[_0x231839(0xbd)]?.[_0x231839(0xa6)]?_0x502449[_0x231839(0xbd)]:[_0x502449[_0x231839(0xae)]],_0x31ec1e=_0x502449['deleteOrder']?.[_0x231839(0xa6)]?_0x502449[_0x231839(0x96)]:_0x5aac32[_0x231839(0xdc)](_0x11a4a4=>_0x11a4a4['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x132840,'createdAt':_0x29a9b0[_0x231839(0xbf)](),'expiresAt':new Date(_0x29a9b0[_0x231839(0xad)]()+PLAN_TTL_MS)['toISOString'](),'snapshotHash':_0x502449['snapshotHash'],'recursive':_0x502449['selector'][_0x231839(0xeb)]===!![],'target':_0x502449[_0x231839(0xae)],'targetFingerprint':fingerprint(_0x502449['before']),'targets':_0x5aac32,'targetFingerprints':_0x5aac32['map'](fingerprint),'deleteOrder':_0x31ec1e,'cascade':_0x502449[_0x231839(0xde)]??{'pages':_0x502449[_0x231839(0xae)][_0x231839(0xa1)]==null?[]:[_0x502449[_0x231839(0xae)]['pageId']],'pageSchemaAffected':_0x502449[_0x231839(0xae)][_0x231839(0xa1)]!=null},'warnings':[..._0x502449[_0x231839(0xaf)]]};}export async function writeMenuDeletePlan(_0x48a63b,_0x55ea03){const _0x154dd6=a119_0x3414f8,_0x57aac3=resolvePlanPath(_0x48a63b,'plan-out');await mkdir(dirname(_0x57aac3),{'recursive':!![]});try{await writeFile(_0x57aac3,JSON[_0x154dd6(0xf1)](_0x55ea03,null,0x2)+'\x0a',{'encoding':_0x154dd6(0xa0),'flag':'wx'});}catch(_0x861815){if(_0x861815[_0x154dd6(0xa5)]===_0x154dd6(0x9b))throw menuError(_0x154dd6(0x9f),'Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20'+_0x57aac3,'Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.');throw menuError(_0x154dd6(0xd4),'Failed\x20to\x20write\x20menu\x20delete\x20plan\x20'+_0x57aac3+':\x20'+errorMessage(_0x861815));}return _0x57aac3;}export async function readMenuDeletePlan(_0x409625){const _0x39fb38=a119_0x3414f8,_0x200b54=resolvePlanPath(_0x409625,_0x39fb38(0xd8));let _0x83ee4e;try{_0x83ee4e=(await stat(_0x200b54))['size'];}catch(_0x15cfa5){throw menuError(_0x39fb38(0x97),_0x39fb38(0xd9)+_0x200b54+':\x20'+errorMessage(_0x15cfa5));}if(_0x83ee4e>MAX_PLAN_BYTES)throw menuError(_0x39fb38(0x97),_0x39fb38(0xcb)+_0x83ee4e+_0x39fb38(0xf2));let _0x2942be;try{_0x2942be=JSON[_0x39fb38(0xe7)](await readFile(_0x200b54,'utf8'));}catch(_0x15c837){throw menuError(_0x39fb38(0x97),'Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20'+errorMessage(_0x15c837));}if(!isMenuDeletePlanFile(_0x2942be))throw menuError(_0x39fb38(0x97),_0x39fb38(0x9d)+PLAN_VERSION+'\x20of\x20the\x20'+PLAN_COMMAND+_0x39fb38(0xca));if(!sameFingerprint(_0x2942be[_0x39fb38(0xb7)],fingerprint(_0x2942be['target'])))throw menuError(_0x39fb38(0x97),_0x39fb38(0x93),_0x39fb38(0x94));if(!_0x2942be[_0x39fb38(0xbd)][_0x39fb38(0xe0)]((_0xb9ff96,_0x5a07b0)=>sameFingerprint(_0x2942be[_0x39fb38(0xcc)][_0x5a07b0],fingerprint(_0xb9ff96)))||!sameFingerprint(_0x2942be[_0x39fb38(0xb7)],fingerprint(_0x2942be[_0x39fb38(0xbd)][_0x2942be['targets'][_0x39fb38(0xa6)]-0x1])))throw menuError('menu_plan_invalid',_0x39fb38(0xa3),_0x39fb38(0x94));return{'path':_0x200b54,'plan':_0x2942be};}export function mutationPlanFromDeleteFile(_0x8febc4,_0x1c3779){const _0x270aed=a119_0x3414f8;return mutationResult({'operation':'delete','selector':{'id':_0x8febc4[_0x270aed(0xb6)]['id'],'recursive':_0x8febc4[_0x270aed(0xeb)]},'before':_0x8febc4[_0x270aed(0xb6)],'after':null,'dryRun':![],'backend':[{'method':_0x270aed(0xef),'path':'/smartapi/menu/batchDelete'}],'plannedActions':[{'stage':_0x270aed(0xb3),'method':_0x270aed(0xef),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x8febc4[_0x270aed(0x96)]}}],'targets':_0x8febc4['targets'],'deleteOrder':_0x8febc4[_0x270aed(0x96)],'snapshotHash':_0x8febc4['snapshotHash'],'cascade':_0x8febc4['cascade'],'planFile':{'path':_0x1c3779,'createdAt':_0x8febc4[_0x270aed(0xdb)],'expiresAt':_0x8febc4[_0x270aed(0x9a)]},'warnings':_0x8febc4['warnings']});}export function assertMenuDeletePlanCurrent(_0x28dae6,_0x1c94d3,_0x5ca77c,_0x584bac=new Date()){const _0x44e3bd=a119_0x3414f8;assertMenuDeletePlanExecutable(_0x28dae6,_0x1c94d3,_0x584bac);if(_0x5ca77c['hash']!==_0x28dae6[_0x44e3bd(0xc1)])throw menuError(_0x44e3bd(0xb8),_0x44e3bd(0xa4),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.');return _0x28dae6[_0x44e3bd(0xbd)]['map']((_0x2fc6a3,_0x242ec1)=>{const _0x2824cc=_0x44e3bd,_0x2189f1=_0x5ca77c['byId']['get'](_0x2fc6a3['id']);if(!_0x2189f1)throw menuError(_0x2824cc(0xb8),_0x2824cc(0xa9)+_0x2fc6a3['id']+'\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.');if(!sameFingerprint(_0x28dae6[_0x2824cc(0xcc)][_0x242ec1],fingerprint(_0x2189f1)))throw menuError(_0x2824cc(0xb8),'Planned\x20menu\x20'+_0x2fc6a3['id']+_0x2824cc(0xe1),_0x2824cc(0xe4));return _0x2189f1;});}export function assertMenuDeletePlanExecutable(_0x4b7f73,_0x305b8f,_0x2135f5=new Date()){const _0x562bec=a119_0x3414f8;if(_0x4b7f73[_0x562bec(0xe9)]!==_0x305b8f)throw menuError(_0x562bec(0x9c),_0x562bec(0xc2)+JSON[_0x562bec(0xf1)](_0x4b7f73['appCode'])+_0x562bec(0xea)+JSON[_0x562bec(0xf1)](_0x305b8f)+'.');const _0x2a266d=Date[_0x562bec(0xe7)](_0x4b7f73[_0x562bec(0xdb)]),_0x28bdcc=Date[_0x562bec(0xe7)](_0x4b7f73[_0x562bec(0x9a)]);if(!Number[_0x562bec(0xac)](_0x2a266d)||!Number[_0x562bec(0xac)](_0x28bdcc)||_0x28bdcc-_0x2a266d!==PLAN_TTL_MS)throw menuError(_0x562bec(0x97),_0x562bec(0xec));if(_0x2a266d>_0x2135f5[_0x562bec(0xad)]())throw menuError('menu_plan_invalid',_0x562bec(0xdf)+_0x4b7f73[_0x562bec(0xdb)]+_0x562bec(0xb4),_0x562bec(0xa2));if(_0x2135f5[_0x562bec(0xad)]()>_0x28bdcc)throw menuError(_0x562bec(0xda),_0x562bec(0xaa)+_0x4b7f73[_0x562bec(0x9a)]+'.',_0x562bec(0xc9));}function fingerprint(_0x3e0bb0){const _0x33357c=a119_0x3414f8;return{'id':_0x3e0bb0['id'],'parentId':_0x3e0bb0[_0x33357c(0xdd)],'depth':_0x3e0bb0['depth'],'label':_0x3e0bb0['label'],'path':_0x3e0bb0[_0x33357c(0xe2)],'type':_0x3e0bb0[_0x33357c(0x98)],'visible':_0x3e0bb0[_0x33357c(0xd7)],'sort':_0x3e0bb0[_0x33357c(0xf5)],'pageId':_0x3e0bb0['pageId'],'pageType':_0x3e0bb0[_0x33357c(0x90)],'modelType':_0x3e0bb0[_0x33357c(0xe8)],'datasetId':_0x3e0bb0[_0x33357c(0xe6)],'datasetCode':_0x3e0bb0[_0x33357c(0xb9)],'childrenIds':[..._0x3e0bb0[_0x33357c(0xc7)]],'childrenCount':_0x3e0bb0[_0x33357c(0xcf)],'resourcesValid':_0x3e0bb0['resourcesValid'],'resourcesHash':hashValue(_0x3e0bb0[_0x33357c(0xab)]),'extendHash':hashValue(_0x3e0bb0[_0x33357c(0xce)]??null),'updateTime':_0x3e0bb0[_0x33357c(0xd5)]};}function hashValue(_0x42752f){const _0x397c92=a119_0x3414f8;return createHash(_0x397c92(0xc0))[_0x397c92(0xc8)](JSON[_0x397c92(0xf1)](_0x42752f))[_0x397c92(0xf6)](_0x397c92(0xf3));}function sameFingerprint(_0x567efb,_0x1bed5b){const _0x459c90=a119_0x3414f8;return JSON[_0x459c90(0xf1)](_0x567efb)===JSON[_0x459c90(0xf1)](_0x1bed5b);}function resolvePlanPath(_0x207bef,_0x35687a){const _0x2f0ede=a119_0x3414f8,_0x52e100=_0x207bef[_0x2f0ede(0xe5)]();if(!_0x52e100)throw menuError(_0x2f0ede(0x97),'--'+_0x35687a+'\x20requires\x20a\x20non-empty\x20file\x20path.');return resolve(_0x52e100);}function isMenuDeletePlanFile(_0x5485a0){const _0x1723ae=a119_0x3414f8;if(!isRecord(_0x5485a0))return![];return _0x5485a0['version']===PLAN_VERSION&&_0x5485a0['command']===PLAN_COMMAND&&typeof _0x5485a0[_0x1723ae(0xe9)]==='string'&&_0x5485a0[_0x1723ae(0xe9)][_0x1723ae(0xa6)]>0x0&&typeof _0x5485a0[_0x1723ae(0xdb)]==='string'&&typeof _0x5485a0[_0x1723ae(0x9a)]===_0x1723ae(0xba)&&typeof _0x5485a0['snapshotHash']===_0x1723ae(0xba)&&/^sha256:[a-f0-9]{64}$/[_0x1723ae(0xc4)](_0x5485a0[_0x1723ae(0xc1)])&&typeof _0x5485a0['recursive']===_0x1723ae(0xd1)&&isMenuFact(_0x5485a0['target'])&&isTargetFingerprint(_0x5485a0[_0x1723ae(0xb7)])&&Array[_0x1723ae(0x99)](_0x5485a0[_0x1723ae(0xbd)])&&_0x5485a0[_0x1723ae(0xbd)][_0x1723ae(0xa6)]>0x0&&_0x5485a0[_0x1723ae(0xbd)][_0x1723ae(0xe0)](isMenuFact)&&Array[_0x1723ae(0x99)](_0x5485a0[_0x1723ae(0xcc)])&&_0x5485a0['targetFingerprints'][_0x1723ae(0xa6)]===_0x5485a0[_0x1723ae(0xbd)]['length']&&_0x5485a0[_0x1723ae(0xcc)][_0x1723ae(0xe0)](isTargetFingerprint)&&Array['isArray'](_0x5485a0[_0x1723ae(0x96)])&&_0x5485a0[_0x1723ae(0x96)]['length']===_0x5485a0[_0x1723ae(0xbd)]['length']&&_0x5485a0[_0x1723ae(0x96)][_0x1723ae(0xe0)](isPositiveInteger)&&new Set(_0x5485a0[_0x1723ae(0x96)])[_0x1723ae(0xf0)]===_0x5485a0[_0x1723ae(0x96)][_0x1723ae(0xa6)]&&_0x5485a0[_0x1723ae(0xbd)]['every']((_0x1f8560,_0x11d23f)=>_0x1f8560['id']===_0x5485a0['deleteOrder'][_0x11d23f])&&_0x5485a0[_0x1723ae(0xbd)][_0x5485a0[_0x1723ae(0xbd)][_0x1723ae(0xa6)]-0x1]?.['id']===_0x5485a0[_0x1723ae(0xb6)]['id']&&isRecord(_0x5485a0[_0x1723ae(0xde)])&&Array[_0x1723ae(0x99)](_0x5485a0[_0x1723ae(0xde)][_0x1723ae(0xc6)])&&_0x5485a0['cascade']['pages']['every'](isPositiveInteger)&&typeof _0x5485a0['cascade'][_0x1723ae(0x9e)]===_0x1723ae(0xd1)&&Array[_0x1723ae(0x99)](_0x5485a0[_0x1723ae(0xaf)])&&_0x5485a0['warnings'][_0x1723ae(0xe0)](_0x16caa6=>typeof _0x16caa6===_0x1723ae(0xba));}function isMenuFact(_0x18c156){const _0x1c0277=a119_0x3414f8;if(!isRecord(_0x18c156))return![];return isPositiveInteger(_0x18c156['id'])&&(_0x18c156[_0x1c0277(0xdd)]===null||isPositiveInteger(_0x18c156['parentId']))&&Number[_0x1c0277(0xa8)](_0x18c156[_0x1c0277(0xee)])&&_0x18c156[_0x1c0277(0xee)]>=0x0&&typeof _0x18c156[_0x1c0277(0xb5)]===_0x1c0277(0xba)&&typeof _0x18c156['path']==='string'&&typeof _0x18c156[_0x1c0277(0x98)]===_0x1c0277(0xba)&&(_0x18c156[_0x1c0277(0xd7)]===null||typeof _0x18c156[_0x1c0277(0xd7)]===_0x1c0277(0xd1))&&(_0x18c156[_0x1c0277(0xf5)]===null||Number[_0x1c0277(0xa8)](_0x18c156['sort']))&&Array[_0x1c0277(0x99)](_0x18c156[_0x1c0277(0xab)])&&_0x18c156[_0x1c0277(0xab)][_0x1c0277(0xe0)](_0x573e9e=>typeof _0x573e9e===_0x1c0277(0xba))&&typeof _0x18c156['resourcesValid']===_0x1c0277(0xd1)&&Array[_0x1c0277(0x99)](_0x18c156[_0x1c0277(0xc7)])&&_0x18c156[_0x1c0277(0xc7)][_0x1c0277(0xe0)](isPositiveInteger)&&Number['isInteger'](_0x18c156[_0x1c0277(0xcf)])&&_0x18c156[_0x1c0277(0xcf)]>=0x0&&(_0x18c156[_0x1c0277(0xa1)]===null||isPositiveInteger(_0x18c156[_0x1c0277(0xa1)]))&&typeof _0x18c156[_0x1c0277(0x90)]==='string'&&typeof _0x18c156[_0x1c0277(0xe8)]===_0x1c0277(0xba)&&(_0x18c156['datasetId']===null||isPositiveInteger(_0x18c156[_0x1c0277(0xe6)]))&&typeof _0x18c156['datasetCode']==='string'&&(_0x18c156['updateUserId']===null||typeof _0x18c156[_0x1c0277(0xd3)]===_0x1c0277(0xba))&&(_0x18c156['updateUserName']===null||typeof _0x18c156['updateUserName']===_0x1c0277(0xba))&&(_0x18c156['updateTime']===null||typeof _0x18c156[_0x1c0277(0xd5)]===_0x1c0277(0xba)||typeof _0x18c156[_0x1c0277(0xd5)]===_0x1c0277(0xcd))&&(_0x18c156[_0x1c0277(0xce)]===undefined||_0x18c156[_0x1c0277(0xce)]===null||isRecord(_0x18c156[_0x1c0277(0xce)]));}function a119_0x4b6b(){const _0x1bf375=['68cCdYIN','batch-delete-menu','\x20is\x20in\x20the\x20future.','label','target','targetFingerprint','menu_state_drift','datasetCode','string','menu\x20delete','11770957wIEVrY','targets','extendHash','toISOString','sha256','snapshotHash','Menu\x20delete\x20plan\x20targets\x20app\x20','resourcesHash','test','68bvhZzw','pages','childrenIds','update','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','\x20contract.','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','targetFingerprints','number','extend','childrenCount','12dlbLAm','boolean','36KoDpmj','updateUserId','menu_plan_write_failed','updateTime','resourcesValid','visible','plan','Cannot\x20read\x20menu\x20delete\x20plan\x20','menu_plan_expired','createdAt','map','parentId','cascade','Menu\x20delete\x20plan\x20creation\x20time\x20','every','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','path','message','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','trim','datasetId','parse','modelType','appCode',',\x20current\x20app\x20is\x20','recursive','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','117016bezRpW','depth','POST','size','stringify','\x20bytes.','hex','1214381QJBInJ','sort','digest','pageType','14486710aTyaYv','1315180JmNeOz','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','270935mYGkRn','deleteOrder','menu_plan_invalid','type','isArray','expiresAt','EEXIST','menu_plan_app_mismatch','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','pageSchemaAffected','menu_plan_file_exists','utf8','pageId','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','code','length','234cmHJHM','isInteger','Planned\x20menu\x20','Menu\x20delete\x20plan\x20expired\x20at\x20','resources','isFinite','getTime','before','warnings','17265QRtfse','object'];a119_0x4b6b=function(){return _0x1bf375;};return a119_0x4b6b();}function isTargetFingerprint(_0x24e897){const _0x104d6a=a119_0x3414f8;if(!isRecord(_0x24e897))return![];return isPositiveInteger(_0x24e897['id'])&&(_0x24e897[_0x104d6a(0xdd)]===null||isPositiveInteger(_0x24e897[_0x104d6a(0xdd)]))&&Number[_0x104d6a(0xa8)](_0x24e897[_0x104d6a(0xee)])&&_0x24e897[_0x104d6a(0xee)]>=0x0&&typeof _0x24e897[_0x104d6a(0xb5)]===_0x104d6a(0xba)&&typeof _0x24e897['path']==='string'&&typeof _0x24e897[_0x104d6a(0x98)]===_0x104d6a(0xba)&&(_0x24e897['visible']===null||typeof _0x24e897[_0x104d6a(0xd7)]===_0x104d6a(0xd1))&&(_0x24e897['sort']===null||Number[_0x104d6a(0xa8)](_0x24e897[_0x104d6a(0xf5)]))&&(_0x24e897[_0x104d6a(0xa1)]===null||isPositiveInteger(_0x24e897[_0x104d6a(0xa1)]))&&typeof _0x24e897['pageType']===_0x104d6a(0xba)&&typeof _0x24e897['modelType']===_0x104d6a(0xba)&&(_0x24e897[_0x104d6a(0xe6)]===null||isPositiveInteger(_0x24e897[_0x104d6a(0xe6)]))&&typeof _0x24e897['datasetCode']===_0x104d6a(0xba)&&Array[_0x104d6a(0x99)](_0x24e897[_0x104d6a(0xc7)])&&_0x24e897[_0x104d6a(0xc7)][_0x104d6a(0xe0)](isPositiveInteger)&&Number['isInteger'](_0x24e897[_0x104d6a(0xcf)])&&_0x24e897[_0x104d6a(0xcf)]>=0x0&&typeof _0x24e897[_0x104d6a(0xd6)]===_0x104d6a(0xd1)&&typeof _0x24e897['resourcesHash']===_0x104d6a(0xba)&&/^[a-f0-9]{64}$/[_0x104d6a(0xc4)](_0x24e897[_0x104d6a(0xc3)])&&typeof _0x24e897[_0x104d6a(0xbe)]===_0x104d6a(0xba)&&/^[a-f0-9]{64}$/[_0x104d6a(0xc4)](_0x24e897[_0x104d6a(0xbe)])&&(_0x24e897[_0x104d6a(0xd5)]===null||typeof _0x24e897[_0x104d6a(0xd5)]==='string'||typeof _0x24e897[_0x104d6a(0xd5)]==='number');}function isRecord(_0x389d6d){const _0x637d98=a119_0x3414f8;return typeof _0x389d6d===_0x637d98(0xb1)&&_0x389d6d!==null&&!Array[_0x637d98(0x99)](_0x389d6d);}function isPositiveInteger(_0x45886d){return Number['isSafeInteger'](_0x45886d)&&Number(_0x45886d)>0x0;}function errorMessage(_0x31615a){const _0x429115=a119_0x3414f8;return _0x31615a instanceof Error?_0x31615a[_0x429115(0xe3)]:String(_0x31615a);}
|
|
1
|
+
(function(_0x2b3fa9,_0x1bd9e2){const _0x313c90=a119_0x91c5,_0x4342b0=_0x2b3fa9();while(!![]){try{const _0x83845d=parseInt(_0x313c90(0x20c))/0x1+parseInt(_0x313c90(0x1d0))/0x2+parseInt(_0x313c90(0x219))/0x3*(parseInt(_0x313c90(0x208))/0x4)+parseInt(_0x313c90(0x1fe))/0x5+parseInt(_0x313c90(0x200))/0x6+parseInt(_0x313c90(0x1eb))/0x7+-parseInt(_0x313c90(0x1ce))/0x8*(parseInt(_0x313c90(0x1ed))/0x9);if(_0x83845d===_0x1bd9e2)break;else _0x4342b0['push'](_0x4342b0['shift']());}catch(_0x5afc7e){_0x4342b0['push'](_0x4342b0['shift']());}}}(a119_0x1da2,0xed9d8));function a119_0x1da2(){const _0x21b727=['\x20of\x20the\x20','Cannot\x20read\x20menu\x20delete\x20plan\x20','menu_plan_write_failed','message','size','menu_plan_file_exists','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','extendHash','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','childrenIds','pageId','appCode','datasetCode','test','isSafeInteger','map','isArray','sort','parentId','updateUserName','boolean','digest','7374857PxwReg','update','9VKDYMs','targets','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','isFinite','batch-delete-menu','resourcesHash','toISOString','before','object','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','delete','string','\x20contract.','visible','target','number','targetFingerprint','9469360vvGVlk','stringify','2422974CXtvCS','label','Menu\x20delete\x20plan\x20creation\x20time\x20','createdAt','type','depth','path','snapshotHash','932SAKXAL','menu_plan_invalid','resources','isInteger','130926bTQEXq','every','menu_state_drift','/smartapi/menu/batchDelete','menu_plan_app_mismatch','pages','trim','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','version','Planned\x20menu\x20','pageSchemaAffected','utf8','pageType','16782jaDidF','recursive','command','deleteOrder',',\x20current\x20app\x20is\x20','POST','extend','resourcesValid','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','code','updateUserId','targetFingerprints','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','childrenCount','\x20requires\x20a\x20non-empty\x20file\x20path.','expiresAt','cascade','updateTime','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','warnings','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','35463640xmWKVv','modelType','1241294TzHvRw','getTime','length','datasetId'];a119_0x1da2=function(){return _0x21b727;};return a119_0x1da2();}import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND='menu\x20delete',PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x5b2a85,_0x34b916,_0x3d9cb1=new Date()){const _0xc3b16d=a119_0x91c5;if(!_0x34b916['before']||!isMenuFact(_0x34b916['before']))throw menuError('menu_plan_invalid','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.');const _0x30b9d0=_0x34b916['targets']?.[_0xc3b16d(0x1d2)]?_0x34b916['targets']:[_0x34b916[_0xc3b16d(0x1f4)]],_0x5e2946=_0x34b916[_0xc3b16d(0x21c)]?.[_0xc3b16d(0x1d2)]?_0x34b916[_0xc3b16d(0x21c)]:_0x30b9d0['map'](_0x346176=>_0x346176['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x5b2a85,'createdAt':_0x3d9cb1['toISOString'](),'expiresAt':new Date(_0x3d9cb1[_0xc3b16d(0x1d1)]()+PLAN_TTL_MS)[_0xc3b16d(0x1f3)](),'snapshotHash':_0x34b916['snapshotHash'],'recursive':_0x34b916['selector'][_0xc3b16d(0x21a)]===!![],'target':_0x34b916[_0xc3b16d(0x1f4)],'targetFingerprint':fingerprint(_0x34b916[_0xc3b16d(0x1f4)]),'targets':_0x30b9d0,'targetFingerprints':_0x30b9d0[_0xc3b16d(0x1e4)](fingerprint),'deleteOrder':_0x5e2946,'cascade':_0x34b916['cascade']??{'pages':_0x34b916[_0xc3b16d(0x1f4)][_0xc3b16d(0x1df)]==null?[]:[_0x34b916[_0xc3b16d(0x1f4)][_0xc3b16d(0x1df)]],'pageSchemaAffected':_0x34b916[_0xc3b16d(0x1f4)][_0xc3b16d(0x1df)]!=null},'warnings':[..._0x34b916['warnings']]};}function a119_0x91c5(_0x413a6b,_0x3bdd6c){_0x413a6b=_0x413a6b-0x1cd;const _0x1da294=a119_0x1da2();let _0x91c53a=_0x1da294[_0x413a6b];return _0x91c53a;}export async function writeMenuDeletePlan(_0x45631b,_0x698c73){const _0x4106c5=a119_0x91c5,_0x229bfb=resolvePlanPath(_0x45631b,'plan-out');await mkdir(dirname(_0x229bfb),{'recursive':!![]});try{await writeFile(_0x229bfb,JSON[_0x4106c5(0x1ff)](_0x698c73,null,0x2)+'\x0a',{'encoding':_0x4106c5(0x217),'flag':'wx'});}catch(_0x28a636){if(_0x28a636[_0x4106c5(0x223)]==='EEXIST')throw menuError(_0x4106c5(0x1d9),_0x4106c5(0x22d)+_0x229bfb,_0x4106c5(0x213));throw menuError(_0x4106c5(0x1d6),'Failed\x20to\x20write\x20menu\x20delete\x20plan\x20'+_0x229bfb+':\x20'+errorMessage(_0x28a636));}return _0x229bfb;}export async function readMenuDeletePlan(_0x15c4e7){const _0x1d7957=a119_0x91c5,_0xad06c=resolvePlanPath(_0x15c4e7,'plan');let _0x1cf0ce;try{_0x1cf0ce=(await stat(_0xad06c))[_0x1d7957(0x1d8)];}catch(_0x17dbd0){throw menuError(_0x1d7957(0x209),_0x1d7957(0x1d5)+_0xad06c+':\x20'+errorMessage(_0x17dbd0));}if(_0x1cf0ce>MAX_PLAN_BYTES)throw menuError('menu_plan_invalid',_0x1d7957(0x1db)+_0x1cf0ce+'\x20bytes.');let _0x20c581;try{_0x20c581=JSON['parse'](await readFile(_0xad06c,'utf8'));}catch(_0x1ef463){throw menuError(_0x1d7957(0x209),_0x1d7957(0x1dd)+errorMessage(_0x1ef463));}if(!isMenuDeletePlanFile(_0x20c581))throw menuError(_0x1d7957(0x209),_0x1d7957(0x1ef)+PLAN_VERSION+_0x1d7957(0x1d4)+PLAN_COMMAND+_0x1d7957(0x1f9));if(!sameFingerprint(_0x20c581[_0x1d7957(0x1fd)],fingerprint(_0x20c581['target'])))throw menuError('menu_plan_invalid','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.',_0x1d7957(0x226));if(!_0x20c581[_0x1d7957(0x1ee)][_0x1d7957(0x20d)]((_0x5d0386,_0x2c1113)=>sameFingerprint(_0x20c581[_0x1d7957(0x225)][_0x2c1113],fingerprint(_0x5d0386)))||!sameFingerprint(_0x20c581['targetFingerprint'],fingerprint(_0x20c581[_0x1d7957(0x1ee)][_0x20c581[_0x1d7957(0x1ee)][_0x1d7957(0x1d2)]-0x1])))throw menuError(_0x1d7957(0x209),'Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.',_0x1d7957(0x226));return{'path':_0xad06c,'plan':_0x20c581};}export function mutationPlanFromDeleteFile(_0x4a0886,_0x5f233c){const _0x2a5856=a119_0x91c5;return mutationResult({'operation':_0x2a5856(0x1f7),'selector':{'id':_0x4a0886[_0x2a5856(0x1fb)]['id'],'recursive':_0x4a0886['recursive']},'before':_0x4a0886[_0x2a5856(0x1fb)],'after':null,'dryRun':![],'backend':[{'method':'POST','path':'/smartapi/menu/batchDelete'}],'plannedActions':[{'stage':_0x2a5856(0x1f1),'method':_0x2a5856(0x21e),'path':_0x2a5856(0x20f),'body':{'idList':_0x4a0886[_0x2a5856(0x21c)]}}],'targets':_0x4a0886[_0x2a5856(0x1ee)],'deleteOrder':_0x4a0886[_0x2a5856(0x21c)],'snapshotHash':_0x4a0886[_0x2a5856(0x207)],'cascade':_0x4a0886[_0x2a5856(0x22b)],'planFile':{'path':_0x5f233c,'createdAt':_0x4a0886[_0x2a5856(0x203)],'expiresAt':_0x4a0886[_0x2a5856(0x22a)]},'warnings':_0x4a0886[_0x2a5856(0x22e)]});}export function assertMenuDeletePlanCurrent(_0x16d6fd,_0x41a15e,_0x1efa3d,_0x124e67=new Date()){const _0x268c68=a119_0x91c5;assertMenuDeletePlanExecutable(_0x16d6fd,_0x41a15e,_0x124e67);if(_0x1efa3d['hash']!==_0x16d6fd[_0x268c68(0x207)])throw menuError(_0x268c68(0x20e),_0x268c68(0x227),_0x268c68(0x221));return _0x16d6fd['targets']['map']((_0x1d7aa0,_0x1f2bd2)=>{const _0x3b3f64=_0x268c68,_0x211803=_0x1efa3d['byId']['get'](_0x1d7aa0['id']);if(!_0x211803)throw menuError(_0x3b3f64(0x20e),_0x3b3f64(0x215)+_0x1d7aa0['id']+_0x3b3f64(0x1da));if(!sameFingerprint(_0x16d6fd[_0x3b3f64(0x225)][_0x1f2bd2],fingerprint(_0x211803)))throw menuError('menu_state_drift',_0x3b3f64(0x215)+_0x1d7aa0['id']+'\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.',_0x3b3f64(0x1cd));return _0x211803;});}export function assertMenuDeletePlanExecutable(_0x54380b,_0x57d20b,_0x106d65=new Date()){const _0x1b7f10=a119_0x91c5;if(_0x54380b[_0x1b7f10(0x1e0)]!==_0x57d20b)throw menuError(_0x1b7f10(0x210),'Menu\x20delete\x20plan\x20targets\x20app\x20'+JSON[_0x1b7f10(0x1ff)](_0x54380b[_0x1b7f10(0x1e0)])+_0x1b7f10(0x21d)+JSON[_0x1b7f10(0x1ff)](_0x57d20b)+'.');const _0x2e356a=Date['parse'](_0x54380b[_0x1b7f10(0x203)]),_0xad509e=Date['parse'](_0x54380b['expiresAt']);if(!Number[_0x1b7f10(0x1f0)](_0x2e356a)||!Number['isFinite'](_0xad509e)||_0xad509e-_0x2e356a!==PLAN_TTL_MS)throw menuError(_0x1b7f10(0x209),_0x1b7f10(0x222));if(_0x2e356a>_0x106d65[_0x1b7f10(0x1d1)]())throw menuError(_0x1b7f10(0x209),_0x1b7f10(0x202)+_0x54380b[_0x1b7f10(0x203)]+'\x20is\x20in\x20the\x20future.','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.');if(_0x106d65[_0x1b7f10(0x1d1)]()>_0xad509e)throw menuError('menu_plan_expired','Menu\x20delete\x20plan\x20expired\x20at\x20'+_0x54380b[_0x1b7f10(0x22a)]+'.',_0x1b7f10(0x1f6));}function fingerprint(_0x335754){const _0x2dc356=a119_0x91c5;return{'id':_0x335754['id'],'parentId':_0x335754[_0x2dc356(0x1e7)],'depth':_0x335754[_0x2dc356(0x205)],'label':_0x335754[_0x2dc356(0x201)],'path':_0x335754[_0x2dc356(0x206)],'type':_0x335754[_0x2dc356(0x204)],'visible':_0x335754['visible'],'sort':_0x335754[_0x2dc356(0x1e6)],'pageId':_0x335754[_0x2dc356(0x1df)],'pageType':_0x335754[_0x2dc356(0x218)],'modelType':_0x335754[_0x2dc356(0x1cf)],'datasetId':_0x335754['datasetId'],'datasetCode':_0x335754[_0x2dc356(0x1e1)],'childrenIds':[..._0x335754[_0x2dc356(0x1de)]],'childrenCount':_0x335754[_0x2dc356(0x228)],'resourcesValid':_0x335754[_0x2dc356(0x220)],'resourcesHash':hashValue(_0x335754[_0x2dc356(0x20a)]),'extendHash':hashValue(_0x335754[_0x2dc356(0x21f)]??null),'updateTime':_0x335754['updateTime']};}function hashValue(_0x43f261){const _0x2956cc=a119_0x91c5;return createHash('sha256')[_0x2956cc(0x1ec)](JSON[_0x2956cc(0x1ff)](_0x43f261))[_0x2956cc(0x1ea)]('hex');}function sameFingerprint(_0x1c49e7,_0x3678ac){const _0x5e20be=a119_0x91c5;return JSON['stringify'](_0x1c49e7)===JSON[_0x5e20be(0x1ff)](_0x3678ac);}function resolvePlanPath(_0x55c742,_0x304e43){const _0x2cf22a=a119_0x91c5,_0x139dd1=_0x55c742[_0x2cf22a(0x212)]();if(!_0x139dd1)throw menuError('menu_plan_invalid','--'+_0x304e43+_0x2cf22a(0x229));return resolve(_0x139dd1);}function isMenuDeletePlanFile(_0x40681a){const _0x3a0365=a119_0x91c5;if(!isRecord(_0x40681a))return![];return _0x40681a[_0x3a0365(0x214)]===PLAN_VERSION&&_0x40681a[_0x3a0365(0x21b)]===PLAN_COMMAND&&typeof _0x40681a[_0x3a0365(0x1e0)]===_0x3a0365(0x1f8)&&_0x40681a['appCode'][_0x3a0365(0x1d2)]>0x0&&typeof _0x40681a[_0x3a0365(0x203)]===_0x3a0365(0x1f8)&&typeof _0x40681a[_0x3a0365(0x22a)]===_0x3a0365(0x1f8)&&typeof _0x40681a[_0x3a0365(0x207)]===_0x3a0365(0x1f8)&&/^sha256:[a-f0-9]{64}$/[_0x3a0365(0x1e2)](_0x40681a[_0x3a0365(0x207)])&&typeof _0x40681a[_0x3a0365(0x21a)]===_0x3a0365(0x1e9)&&isMenuFact(_0x40681a[_0x3a0365(0x1fb)])&&isTargetFingerprint(_0x40681a[_0x3a0365(0x1fd)])&&Array[_0x3a0365(0x1e5)](_0x40681a[_0x3a0365(0x1ee)])&&_0x40681a[_0x3a0365(0x1ee)]['length']>0x0&&_0x40681a['targets'][_0x3a0365(0x20d)](isMenuFact)&&Array[_0x3a0365(0x1e5)](_0x40681a[_0x3a0365(0x225)])&&_0x40681a['targetFingerprints'][_0x3a0365(0x1d2)]===_0x40681a[_0x3a0365(0x1ee)][_0x3a0365(0x1d2)]&&_0x40681a[_0x3a0365(0x225)][_0x3a0365(0x20d)](isTargetFingerprint)&&Array[_0x3a0365(0x1e5)](_0x40681a['deleteOrder'])&&_0x40681a[_0x3a0365(0x21c)][_0x3a0365(0x1d2)]===_0x40681a[_0x3a0365(0x1ee)][_0x3a0365(0x1d2)]&&_0x40681a['deleteOrder']['every'](isPositiveInteger)&&new Set(_0x40681a[_0x3a0365(0x21c)])['size']===_0x40681a[_0x3a0365(0x21c)][_0x3a0365(0x1d2)]&&_0x40681a[_0x3a0365(0x1ee)][_0x3a0365(0x20d)]((_0x2fc7b6,_0x1cb3f2)=>_0x2fc7b6['id']===_0x40681a[_0x3a0365(0x21c)][_0x1cb3f2])&&_0x40681a[_0x3a0365(0x1ee)][_0x40681a[_0x3a0365(0x1ee)][_0x3a0365(0x1d2)]-0x1]?.['id']===_0x40681a[_0x3a0365(0x1fb)]['id']&&isRecord(_0x40681a[_0x3a0365(0x22b)])&&Array['isArray'](_0x40681a[_0x3a0365(0x22b)]['pages'])&&_0x40681a[_0x3a0365(0x22b)][_0x3a0365(0x211)][_0x3a0365(0x20d)](isPositiveInteger)&&typeof _0x40681a[_0x3a0365(0x22b)][_0x3a0365(0x216)]===_0x3a0365(0x1e9)&&Array[_0x3a0365(0x1e5)](_0x40681a['warnings'])&&_0x40681a[_0x3a0365(0x22e)][_0x3a0365(0x20d)](_0x4ed362=>typeof _0x4ed362===_0x3a0365(0x1f8));}function isMenuFact(_0x20904f){const _0x10ae7c=a119_0x91c5;if(!isRecord(_0x20904f))return![];return isPositiveInteger(_0x20904f['id'])&&(_0x20904f[_0x10ae7c(0x1e7)]===null||isPositiveInteger(_0x20904f['parentId']))&&Number[_0x10ae7c(0x20b)](_0x20904f[_0x10ae7c(0x205)])&&_0x20904f[_0x10ae7c(0x205)]>=0x0&&typeof _0x20904f[_0x10ae7c(0x201)]==='string'&&typeof _0x20904f[_0x10ae7c(0x206)]===_0x10ae7c(0x1f8)&&typeof _0x20904f[_0x10ae7c(0x204)]===_0x10ae7c(0x1f8)&&(_0x20904f[_0x10ae7c(0x1fa)]===null||typeof _0x20904f[_0x10ae7c(0x1fa)]===_0x10ae7c(0x1e9))&&(_0x20904f['sort']===null||Number[_0x10ae7c(0x20b)](_0x20904f['sort']))&&Array['isArray'](_0x20904f['resources'])&&_0x20904f['resources'][_0x10ae7c(0x20d)](_0x426a1a=>typeof _0x426a1a===_0x10ae7c(0x1f8))&&typeof _0x20904f['resourcesValid']===_0x10ae7c(0x1e9)&&Array[_0x10ae7c(0x1e5)](_0x20904f[_0x10ae7c(0x1de)])&&_0x20904f[_0x10ae7c(0x1de)][_0x10ae7c(0x20d)](isPositiveInteger)&&Number[_0x10ae7c(0x20b)](_0x20904f[_0x10ae7c(0x228)])&&_0x20904f[_0x10ae7c(0x228)]>=0x0&&(_0x20904f[_0x10ae7c(0x1df)]===null||isPositiveInteger(_0x20904f['pageId']))&&typeof _0x20904f[_0x10ae7c(0x218)]==='string'&&typeof _0x20904f['modelType']===_0x10ae7c(0x1f8)&&(_0x20904f[_0x10ae7c(0x1d3)]===null||isPositiveInteger(_0x20904f[_0x10ae7c(0x1d3)]))&&typeof _0x20904f[_0x10ae7c(0x1e1)]===_0x10ae7c(0x1f8)&&(_0x20904f[_0x10ae7c(0x224)]===null||typeof _0x20904f['updateUserId']==='string')&&(_0x20904f[_0x10ae7c(0x1e8)]===null||typeof _0x20904f['updateUserName']===_0x10ae7c(0x1f8))&&(_0x20904f[_0x10ae7c(0x22c)]===null||typeof _0x20904f[_0x10ae7c(0x22c)]==='string'||typeof _0x20904f[_0x10ae7c(0x22c)]===_0x10ae7c(0x1fc))&&(_0x20904f[_0x10ae7c(0x21f)]===undefined||_0x20904f[_0x10ae7c(0x21f)]===null||isRecord(_0x20904f[_0x10ae7c(0x21f)]));}function isTargetFingerprint(_0x2a6d96){const _0x3c494b=a119_0x91c5;if(!isRecord(_0x2a6d96))return![];return isPositiveInteger(_0x2a6d96['id'])&&(_0x2a6d96[_0x3c494b(0x1e7)]===null||isPositiveInteger(_0x2a6d96['parentId']))&&Number[_0x3c494b(0x20b)](_0x2a6d96['depth'])&&_0x2a6d96[_0x3c494b(0x205)]>=0x0&&typeof _0x2a6d96['label']==='string'&&typeof _0x2a6d96[_0x3c494b(0x206)]===_0x3c494b(0x1f8)&&typeof _0x2a6d96['type']===_0x3c494b(0x1f8)&&(_0x2a6d96['visible']===null||typeof _0x2a6d96['visible']===_0x3c494b(0x1e9))&&(_0x2a6d96[_0x3c494b(0x1e6)]===null||Number[_0x3c494b(0x20b)](_0x2a6d96[_0x3c494b(0x1e6)]))&&(_0x2a6d96[_0x3c494b(0x1df)]===null||isPositiveInteger(_0x2a6d96[_0x3c494b(0x1df)]))&&typeof _0x2a6d96[_0x3c494b(0x218)]===_0x3c494b(0x1f8)&&typeof _0x2a6d96[_0x3c494b(0x1cf)]==='string'&&(_0x2a6d96[_0x3c494b(0x1d3)]===null||isPositiveInteger(_0x2a6d96[_0x3c494b(0x1d3)]))&&typeof _0x2a6d96['datasetCode']==='string'&&Array[_0x3c494b(0x1e5)](_0x2a6d96['childrenIds'])&&_0x2a6d96['childrenIds'][_0x3c494b(0x20d)](isPositiveInteger)&&Number[_0x3c494b(0x20b)](_0x2a6d96[_0x3c494b(0x228)])&&_0x2a6d96[_0x3c494b(0x228)]>=0x0&&typeof _0x2a6d96[_0x3c494b(0x220)]===_0x3c494b(0x1e9)&&typeof _0x2a6d96[_0x3c494b(0x1f2)]===_0x3c494b(0x1f8)&&/^[a-f0-9]{64}$/[_0x3c494b(0x1e2)](_0x2a6d96[_0x3c494b(0x1f2)])&&typeof _0x2a6d96[_0x3c494b(0x1dc)]===_0x3c494b(0x1f8)&&/^[a-f0-9]{64}$/['test'](_0x2a6d96['extendHash'])&&(_0x2a6d96['updateTime']===null||typeof _0x2a6d96[_0x3c494b(0x22c)]===_0x3c494b(0x1f8)||typeof _0x2a6d96[_0x3c494b(0x22c)]==='number');}function isRecord(_0x6e5974){const _0x5792bc=a119_0x91c5;return typeof _0x6e5974===_0x5792bc(0x1f5)&&_0x6e5974!==null&&!Array[_0x5792bc(0x1e5)](_0x6e5974);}function isPositiveInteger(_0xa634e3){const _0x164a9b=a119_0x91c5;return Number[_0x164a9b(0x1e3)](_0xa634e3)&&Number(_0xa634e3)>0x0;}function errorMessage(_0x3bb332){const _0x94907f=a119_0x91c5;return _0x3bb332 instanceof Error?_0x3bb332[_0x94907f(0x1d7)]:String(_0x3bb332);}
|