@lovrabet/rabetbase-cli 2.4.6-beta.1 → 2.4.6-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/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.d.ts +8 -7
- 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/types.d.ts +17 -2
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.d.ts +2 -0
- package/lib/commands/menu/visibility-update.js +1 -0
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +3 -2
- package/skills/rabetbase/references/rabetbase-menu-list.md +3 -1
- package/skills/rabetbase/references/rabetbase-menu-visibility-update.md +59 -0
- package/skills/rabetbase.manifest.json +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const a120_0x38b6ad=a120_0x2cd0;(function(_0xcc1719,_0x5655cc){const _0x2a905c=a120_0x2cd0,_0x144997=_0xcc1719();while(!![]){try{const _0x266350=parseInt(_0x2a905c(0x100))/0x1+-parseInt(_0x2a905c(0x124))/0x2+parseInt(_0x2a905c(0xfe))/0x3+-parseInt(_0x2a905c(0xec))/0x4*(-parseInt(_0x2a905c(0x11e))/0x5)+parseInt(_0x2a905c(0x129))/0x6+parseInt(_0x2a905c(0xed))/0x7+-parseInt(_0x2a905c(0xf4))/0x8*(parseInt(_0x2a905c(0xf8))/0x9);if(_0x266350===_0x5655cc)break;else _0x144997['push'](_0x144997['shift']());}catch(_0x34ea4e){_0x144997['push'](_0x144997['shift']());}}}(a120_0x5192,0x1d189));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':a120_0x38b6ad(0xdc),'path':a120_0x38b6ad(0xdf)}];export const menuRename={'service':a120_0x38b6ad(0x10c),'command':a120_0x38b6ad(0x118),'description':a120_0x38b6ad(0xf6),'risk':a120_0x38b6ad(0xf3),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'label','type':a120_0x38b6ad(0xd3),'required':!![],'description':a120_0x38b6ad(0x111)},{'name':'expect-label','type':a120_0x38b6ad(0xd3),'required':!![],'description':a120_0x38b6ad(0xda)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4e9300){validateInput(_0x4e9300);},async 'dryRun'(_0xf843b5){const _0x5c7cac=a120_0x38b6ad;validateInput(_0xf843b5);const _0x4523ce=await buildPlan(_0xf843b5,!![]);return menuDryRunResult(_0x4523ce[_0x5c7cac(0x110)],{'method':_0x5c7cac(0xdc),'url':_0x5c7cac(0xdf),'body':_0x4523ce[_0x5c7cac(0xe3)],'description':'Would\x20rename\x20menu\x20'+_0x4523ce[_0x5c7cac(0xe3)]['id']+'.'});},async 'execute'(_0x31e1cf){const _0x2e8824=a120_0x38b6ad;validateInput(_0x31e1cf);const _0x2bec3a=await buildPlan(_0x31e1cf,![]),{plan:_0x3716ee,body:_0x35e535,before:_0x403b23,noChanges:_0x89088a}=_0x2bec3a,_0x34b4cd=_0x35e535['id'];if(_0x89088a)return renameSuccess(_0x3716ee,_0x2bec3a[_0x2e8824(0xdd)],_0x403b23,!![],![]);await recheckMutationSnapshot(_0x31e1cf,_0x3716ee,_0x2e8824(0xd1),_0x34b4cd);try{await updateMenuEntity(_0x31e1cf[_0x2e8824(0x104)],_0x31e1cf['cookie'],{'id':_0x34b4cd,'label':_0x35e535[_0x2e8824(0x127)]});}catch(_0x26e2f6){const _0x3f92b1=mapMenuApiError(_0x26e2f6,_0x2e8824(0x118),_0x34b4cd);if(isMenuResponseLoss(_0x26e2f6)&&_0x3f92b1[_0x2e8824(0x11d)]!==_0x2e8824(0xf7))return recoverAfterResponseLoss(_0x31e1cf,_0x2bec3a);throw menuFailure(_0x3f92b1,_0x3716ee,{'stage':_0x2e8824(0x121),'failed':{'id':_0x34b4cd},'warnings':[_0x2e8824(0xd4)],'verification':{'status':_0x2e8824(0x103),'targetId':_0x34b4cd,'lookupCommand':buildLookupCommand(_0x31e1cf[_0x2e8824(0x104)])}});}let _0x5a52df,_0xeb4a9f;try{_0x5a52df=await fetchMenuSnapshot(_0x31e1cf[_0x2e8824(0x104)],_0x31e1cf[_0x2e8824(0xe5)]),_0xeb4a9f=requireMenu(_0x5a52df,_0x34b4cd),verifyRenamedFact(_0x403b23,_0xeb4a9f,_0x35e535[_0x2e8824(0x127)]);}catch(_0x709ff7){const _0x145830=describeMenuErrorCause(_0x709ff7,_0x2e8824(0x123),_0x34b4cd),_0x161e23=asVerificationError(_0x709ff7,_0x2e8824(0x10a)+_0x34b4cd+_0x2e8824(0xd7));throw menuFailure(_0x161e23,_0x3716ee,{'stage':_0x2e8824(0xeb),'succeeded':[{'id':_0x34b4cd,'updateRequested':!![]}],'failed':{'id':_0x34b4cd,'requestedStateConfirmed':![],..._0x145830},'warnings':[_0x2e8824(0xe2)],'verification':{'status':'failed','targetId':_0x34b4cd,'lookupCommand':buildLookupCommand(_0x31e1cf['appCode'])}});}return renameSuccess(_0x3716ee,_0x5a52df,_0xeb4a9f,![],![]);}};function validateInput(_0x2a4d54){const _0x5ede61=a120_0x38b6ad;validateExactId(_0x2a4d54);if(!_0x2a4d54['str'](_0x5ede61(0x127))['trim']())throw CliErrors[_0x5ede61(0x116)](_0x5ede61(0x105));if(!_0x2a4d54[_0x5ede61(0x101)]('expect-label')['trim']())throw CliErrors[_0x5ede61(0x12a)](_0x5ede61(0xd8));}function a120_0x5192(){const _0x2b6a9d=['requestedLabelObserved','depth','plan','New\x20menu\x20label','datasetCode',',\x20current\x20','resources','path','validation','pageType','rename','\x20changed\x20during\x20the\x20label-only\x20rename.','resourcesValid','menu_state_drift','Response\x20was\x20lost\x20and\x20menu\x20','code','15vdqNnr','after','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','update','get','verify\x20menu\x20rename','160376cUFfna','datasetId','Menu\x20','label','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','1115070PETKjZ','flagMissing','rename\x20menu','\x20label\x20update\x20did\x20not\x20take\x20effect.','string','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','hash','replace','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','expect-label','url','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','menu_update_recovery_required','POST','snapshot','Renamed\x20menu\x20','/smartapi/menu/update','\x20label\x20changed:\x20expected\x20','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','body','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','cookie','\x20already\x20has\x20the\x20requested\x20label.','stringify','pageId','readbackFailed','\x27\x5c\x27\x27','verification','125808rbjuiq','1264403xqFRTg','modelType','childrenIds','parentId','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','isArray','write','24KvMJSj','Run\x20','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','menu_permission_denied','1520658VQsEDN','rename-menu','visible','update-recovery','type','rabetbase\x20menu\x20list\x20--appcode\x20','216204ldkbLb','byId','173353yyQrhE','str','\x20could\x20not\x20be\x20verified\x20safely','failed','appCode','--label\x20cannot\x20be\x20empty.','sort','menu\x20list','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','trim','Rename\x20request\x20for\x20menu\x20','childrenCount','menu','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.'];a120_0x5192=function(){return _0x2b6a9d;};return a120_0x5192();}function a120_0x2cd0(_0x2a5900,_0x22e4d4){_0x2a5900=_0x2a5900-0xd1;const _0x519220=a120_0x5192();let _0x2cd04a=_0x519220[_0x2a5900];return _0x2cd04a;}async function buildPlan(_0x5114ef,_0x52dfe9){const _0x250202=a120_0x38b6ad,_0x3c45eb=validateExactId(_0x5114ef),_0x9d95ea=_0x5114ef[_0x250202(0x101)](_0x250202(0x127))[_0x250202(0x109)](),_0x42433e=_0x5114ef[_0x250202(0x101)](_0x250202(0xd8)),_0x19b33e=await fetchMutationSnapshot(_0x5114ef,_0x250202(0xd1),_0x3c45eb),_0x487747=requireMenu(_0x19b33e,_0x3c45eb);if(_0x487747['label']!==_0x42433e)throw menuError(_0x250202(0x11b),_0x250202(0x126)+_0x3c45eb+_0x250202(0xe0)+JSON['stringify'](_0x42433e)+_0x250202(0x113)+JSON[_0x250202(0xe7)](_0x487747[_0x250202(0x127)])+'.',_0x250202(0x128));const _0x12487e={'id':_0x3c45eb,'appCode':_0x5114ef[_0x250202(0x104)],'label':_0x9d95ea},_0x480dbe={..._0x487747,'label':_0x9d95ea},_0xa003d7=_0x487747['label']===_0x9d95ea,_0x1cdb54=_0xa003d7?[]:[{'stage':_0x250202(0xf9),'method':_0x250202(0xdc),'path':_0x250202(0xdf),'body':_0x12487e}];return{'snapshot':_0x19b33e,'before':_0x487747,'body':_0x12487e,'noChanges':_0xa003d7,'plan':mutationResult({'operation':_0x250202(0x118),'selector':{'id':_0x3c45eb},'before':_0x487747,'after':_0x480dbe,'dryRun':_0x52dfe9,'backend':[...BACKEND],'plannedActions':_0x1cdb54,'snapshotHash':_0x19b33e['hash'],'warnings':_0xa003d7?[_0x250202(0x10d)]:[]})};}function verifyRenamedFact(_0x45be49,_0x3bb7ba,_0x3d359c){const _0x543d3d=a120_0x38b6ad,_0x377764=[['id',_0x3bb7ba['id'],_0x45be49['id']],[_0x543d3d(0xf0),_0x3bb7ba['parentId'],_0x45be49['parentId']],[_0x543d3d(0x10f),_0x3bb7ba[_0x543d3d(0x10f)],_0x45be49[_0x543d3d(0x10f)]],[_0x543d3d(0x115),_0x3bb7ba[_0x543d3d(0x115)],_0x45be49['path']],[_0x543d3d(0xd9),_0x3bb7ba[_0x543d3d(0xd9)],_0x45be49[_0x543d3d(0xd9)]],[_0x543d3d(0xfc),_0x3bb7ba[_0x543d3d(0xfc)],_0x45be49[_0x543d3d(0xfc)]],[_0x543d3d(0xfa),_0x3bb7ba[_0x543d3d(0xfa)],_0x45be49[_0x543d3d(0xfa)]],[_0x543d3d(0x106),_0x3bb7ba['sort'],_0x45be49['sort']],['resources',_0x3bb7ba[_0x543d3d(0x114)],_0x45be49[_0x543d3d(0x114)]],['resourcesValid',_0x3bb7ba[_0x543d3d(0x11a)],_0x45be49[_0x543d3d(0x11a)]],[_0x543d3d(0xef),_0x3bb7ba[_0x543d3d(0xef)],_0x45be49[_0x543d3d(0xef)]],[_0x543d3d(0x10b),_0x3bb7ba[_0x543d3d(0x10b)],_0x45be49['childrenCount']],['pageId',_0x3bb7ba[_0x543d3d(0xe8)],_0x45be49[_0x543d3d(0xe8)]],[_0x543d3d(0x117),_0x3bb7ba['pageType'],_0x45be49[_0x543d3d(0x117)]],[_0x543d3d(0xee),_0x3bb7ba[_0x543d3d(0xee)],_0x45be49[_0x543d3d(0xee)]],[_0x543d3d(0x125),_0x3bb7ba['datasetId'],_0x45be49['datasetId']],[_0x543d3d(0x112),_0x3bb7ba[_0x543d3d(0x112)],_0x45be49[_0x543d3d(0x112)]]];for(const [_0x561b8e,_0x2db150,_0x46fbe6]of _0x377764){assertVerified(sameValue(_0x2db150,_0x46fbe6),'Menu\x20'+_0x45be49['id']+'\x20'+_0x561b8e+_0x543d3d(0x119));}assertVerified(_0x3bb7ba[_0x543d3d(0x127)]===_0x3d359c,_0x543d3d(0x126)+_0x45be49['id']+_0x543d3d(0xd2));}function sameValue(_0x6f515f,_0x30e219){const _0x9a9e98=a120_0x38b6ad;if(Array[_0x9a9e98(0xf2)](_0x6f515f)||Array['isArray'](_0x30e219))return JSON[_0x9a9e98(0xe7)](_0x6f515f)===JSON[_0x9a9e98(0xe7)](_0x30e219);return _0x6f515f===_0x30e219;}function renameSuccess(_0x4932a9,_0x49ae92,_0x25091e,_0x4b4572,_0x55b110){const _0x76647=a120_0x38b6ad,_0x2f19bb=_0x25091e['id'],_0x38e5e7=mutationResult({..._0x4932a9,'after':_0x25091e,'dryRun':![],'succeeded':[{'id':_0x2f19bb,'updated':!_0x4b4572,'skipped':_0x4b4572,'recovered':_0x55b110}],'verification':{'checkedBy':_0x76647(0x107),'snapshotHash':_0x49ae92[_0x76647(0xd5)],'targetId':_0x2f19bb,'matchesRequestedState':!![],'recovered':_0x55b110}});return{'ok':!![],'message':_0x55b110?_0x76647(0xe4)+_0x2f19bb+'.':_0x4b4572?_0x76647(0x126)+_0x2f19bb+_0x76647(0xe6):_0x76647(0xde)+_0x2f19bb+'.','data':{..._0x38e5e7,'recovered':_0x55b110}};}async function recoverAfterResponseLoss(_0x172d4a,_0x5105ef){const _0x1d4274=a120_0x38b6ad,{plan:_0x11adfb,before:_0x161e9d,body:_0x4de7aa}=_0x5105ef;let _0x5af7c0;try{_0x5af7c0=await fetchMenuSnapshot(_0x172d4a[_0x1d4274(0x104)],_0x172d4a['cookie']);}catch{throw recoveryRequired(_0x11adfb,_0x172d4a[_0x1d4274(0x104)],{'id':_0x4de7aa['id'],'readbackFailed':!![]});}const _0xce79e0=_0x5af7c0[_0x1d4274(0xff)][_0x1d4274(0x122)](_0x4de7aa['id']);if(!_0xce79e0||_0xce79e0[_0x1d4274(0x127)]!==_0x4de7aa['label'])throw recoveryRequired(_0x11adfb,_0x172d4a[_0x1d4274(0x104)],{'id':_0x4de7aa['id'],'requestedLabelObserved':![],'after':_0xce79e0??null});try{verifyRenamedFact(_0x161e9d,_0xce79e0,_0x4de7aa[_0x1d4274(0x127)]);}catch(_0x346ca2){const _0x14c002=asVerificationError(_0x346ca2,_0x1d4274(0x11c)+_0x4de7aa['id']+_0x1d4274(0x102));throw menuFailure(_0x14c002,_0x11adfb,{'stage':_0x1d4274(0xfb),'succeeded':[{'id':_0x4de7aa['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x4de7aa['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0xce79e0,'warnings':[_0x1d4274(0x120)],'verification':{'status':_0x1d4274(0x103),'targetId':_0x4de7aa['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x172d4a[_0x1d4274(0x104)])}});}return renameSuccess(_0x11adfb,_0x5af7c0,_0xce79e0,![],!![]);}function recoveryRequired(_0x25af62,_0x41239e,_0x345d72){const _0x15807f=a120_0x38b6ad,_0x5ce2c0=menuError(_0x15807f(0xdb),_0x15807f(0xf1),_0x15807f(0xf5)+buildLookupCommand(_0x41239e)+_0x15807f(0x108));return menuFailure(_0x5ce2c0,_0x25af62,{'stage':_0x15807f(0xfb),'failed':{'id':_0x345d72['id'],..._0x345d72[_0x15807f(0x10e)]===undefined?{}:{'requestedLabelObserved':_0x345d72[_0x15807f(0x10e)]},..._0x345d72[_0x15807f(0xe9)]?{'readbackFailed':!![]}:{}},'after':_0x345d72[_0x15807f(0x11f)],'warnings':[_0x15807f(0xe1)],'verification':{'status':_0x15807f(0x103),'targetId':_0x345d72['id'],..._0x345d72['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x345d72['requestedLabelObserved']},..._0x345d72['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x41239e)}});}function buildLookupCommand(_0x4b6a6f){const _0x3e52b9=a120_0x38b6ad,_0x481ddc='\x27'+_0x4b6a6f[_0x3e52b9(0xd6)](/'/g,_0x3e52b9(0xea))+'\x27';return _0x3e52b9(0xfd)+_0x481ddc+'\x20--format\x20compress';}
|
|
1
|
+
const a120_0x329d64=a120_0x63c0;(function(_0x1ee0f6,_0x3175cd){const _0x1c9948=a120_0x63c0,_0x2bc445=_0x1ee0f6();while(!![]){try{const _0x58ba85=parseInt(_0x1c9948(0x1fa))/0x1+-parseInt(_0x1c9948(0x1df))/0x2*(-parseInt(_0x1c9948(0x210))/0x3)+parseInt(_0x1c9948(0x1d6))/0x4*(-parseInt(_0x1c9948(0x1f8))/0x5)+-parseInt(_0x1c9948(0x1d4))/0x6*(-parseInt(_0x1c9948(0x1f9))/0x7)+parseInt(_0x1c9948(0x1e1))/0x8+parseInt(_0x1c9948(0x1f0))/0x9*(parseInt(_0x1c9948(0x21a))/0xa)+-parseInt(_0x1c9948(0x1ee))/0xb*(parseInt(_0x1c9948(0x1e4))/0xc);if(_0x58ba85===_0x3175cd)break;else _0x2bc445['push'](_0x2bc445['shift']());}catch(_0x4d8c77){_0x2bc445['push'](_0x2bc445['shift']());}}}(a120_0x362a,0x9af0e));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';function a120_0x63c0(_0x887c62,_0xea195e){_0x887c62=_0x887c62-0x1d1;const _0x362a2c=a120_0x362a();let _0x63c090=_0x362a2c[_0x887c62];return _0x63c090;}import{updateMenuEntity}from'../../commands/menu/shared/service.js';function a120_0x362a(){const _0x3e8317=['snapshot','verification','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','menu\x20list','\x20label\x20update\x20did\x20not\x20take\x20effect.','url','cookie','6920uWSnUV','Would\x20rename\x20menu\x20','byId','datasetId','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','readbackFailed','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','96JqTZDQ','hash','28bNpeTl','after','body','pageId','expect-label','parentId','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','datasetCode','rename','18004iQAgoT','\x20--format\x20compress','8989072MxwqGW','string','replace','610956FwsXLg','POST','Menu\x20','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','sort','verify\x20menu\x20rename','requestedLabelObserved','resourcesValid','Renamed\x20menu\x20','get','935phYTrZ','Response\x20was\x20lost\x20and\x20menu\x20','11889cnpbwr','stringify','str','resources','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','label','failed','modelType','22370JPFqwa','479773zrtrqX','1148013tLpRKc','trim','\x27\x5c\x27\x27','childrenCount','type','flagMissing','--label\x20cannot\x20be\x20empty.','rename-menu','New\x20menu\x20label','appCode','isArray','pageType','/smartapi/menu/update','update-recovery','rabetbase\x20menu\x20list\x20--appcode\x20','visible','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','path','childrenIds','rename\x20menu',',\x20current\x20','237kfYcia','Rename\x20request\x20for\x20menu\x20','depth'];a120_0x362a=function(){return _0x3e8317;};return a120_0x362a();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a120_0x329d64(0x1e5),'path':a120_0x329d64(0x206)}];export const menuRename={'service':'menu','command':a120_0x329d64(0x1de),'description':a120_0x329d64(0x1f4),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a120_0x329d64(0x1f5),'type':'string','required':!![],'description':a120_0x329d64(0x202)},{'name':a120_0x329d64(0x1da),'type':a120_0x329d64(0x1e2),'required':!![],'description':a120_0x329d64(0x1d3)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x590b24){validateInput(_0x590b24);},async 'dryRun'(_0x3bdf3f){const _0x14a00d=a120_0x329d64;validateInput(_0x3bdf3f);const _0x5c6b89=await buildPlan(_0x3bdf3f,!![]);return menuDryRunResult(_0x5c6b89['plan'],{'method':_0x14a00d(0x1e5),'url':'/smartapi/menu/update','body':_0x5c6b89[_0x14a00d(0x1d8)],'description':_0x14a00d(0x21b)+_0x5c6b89[_0x14a00d(0x1d8)]['id']+'.'});},async 'execute'(_0x2d785c){const _0x15bf42=a120_0x329d64;validateInput(_0x2d785c);const _0x277ae6=await buildPlan(_0x2d785c,![]),{plan:_0xb03db6,body:_0x3fdbde,before:_0x217c4f,noChanges:_0x32a2cf}=_0x277ae6,_0x46abed=_0x3fdbde['id'];if(_0x32a2cf)return renameSuccess(_0xb03db6,_0x277ae6[_0x15bf42(0x213)],_0x217c4f,!![],![]);await recheckMutationSnapshot(_0x2d785c,_0xb03db6,'rename\x20menu',_0x46abed);try{await updateMenuEntity(_0x2d785c['appCode'],_0x2d785c[_0x15bf42(0x219)],{'id':_0x46abed,'label':_0x3fdbde[_0x15bf42(0x1f5)]});}catch(_0x208b7b){const _0x114bcb=mapMenuApiError(_0x208b7b,_0x15bf42(0x1de),_0x46abed);if(isMenuResponseLoss(_0x208b7b)&&_0x114bcb['code']!=='menu_permission_denied')return recoverAfterResponseLoss(_0x2d785c,_0x277ae6);throw menuFailure(_0x114bcb,_0xb03db6,{'stage':'update','failed':{'id':_0x46abed},'warnings':[_0x15bf42(0x20b)],'verification':{'status':'failed','targetId':_0x46abed,'lookupCommand':buildLookupCommand(_0x2d785c['appCode'])}});}let _0x14ffc6,_0x262bd7;try{_0x14ffc6=await fetchMenuSnapshot(_0x2d785c[_0x15bf42(0x203)],_0x2d785c[_0x15bf42(0x219)]),_0x262bd7=requireMenu(_0x14ffc6,_0x46abed),verifyRenamedFact(_0x217c4f,_0x262bd7,_0x3fdbde[_0x15bf42(0x1f5)]);}catch(_0x32e932){const _0x834be=describeMenuErrorCause(_0x32e932,_0x15bf42(0x1e9),_0x46abed),_0x14fb2f=asVerificationError(_0x32e932,_0x15bf42(0x211)+_0x46abed+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x14fb2f,_0xb03db6,{'stage':_0x15bf42(0x214),'succeeded':[{'id':_0x46abed,'updateRequested':!![]}],'failed':{'id':_0x46abed,'requestedStateConfirmed':![],..._0x834be},'warnings':['The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x15bf42(0x1f6),'targetId':_0x46abed,'lookupCommand':buildLookupCommand(_0x2d785c[_0x15bf42(0x203)])}});}return renameSuccess(_0xb03db6,_0x14ffc6,_0x262bd7,![],![]);}};function validateInput(_0x168a52){const _0x207ddf=a120_0x329d64;validateExactId(_0x168a52);if(!_0x168a52[_0x207ddf(0x1f2)](_0x207ddf(0x1f5))[_0x207ddf(0x1fb)]())throw CliErrors['validation'](_0x207ddf(0x200));if(!_0x168a52[_0x207ddf(0x1f2)](_0x207ddf(0x1da))[_0x207ddf(0x1fb)]())throw CliErrors[_0x207ddf(0x1ff)]('expect-label');}async function buildPlan(_0x47ddac,_0x235743){const _0x5c5600=a120_0x329d64,_0x420382=validateExactId(_0x47ddac),_0x2cf98b=_0x47ddac[_0x5c5600(0x1f2)](_0x5c5600(0x1f5))['trim'](),_0x4eb290=_0x47ddac[_0x5c5600(0x1f2)](_0x5c5600(0x1da)),_0x24c6d1=await fetchMutationSnapshot(_0x47ddac,_0x5c5600(0x20e),_0x420382),_0x947b2e=requireMenu(_0x24c6d1,_0x420382);if(_0x947b2e[_0x5c5600(0x1f5)]!==_0x4eb290)throw menuError('menu_state_drift',_0x5c5600(0x1e6)+_0x420382+'\x20label\x20changed:\x20expected\x20'+JSON['stringify'](_0x4eb290)+_0x5c5600(0x20f)+JSON[_0x5c5600(0x1f1)](_0x947b2e['label'])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.');const _0x3f75a1={'id':_0x420382,'appCode':_0x47ddac[_0x5c5600(0x203)],'label':_0x2cf98b},_0x20d4b2={..._0x947b2e,'label':_0x2cf98b},_0x430605=_0x947b2e[_0x5c5600(0x1f5)]===_0x2cf98b,_0x1b6c63=_0x430605?[]:[{'stage':_0x5c5600(0x201),'method':_0x5c5600(0x1e5),'path':_0x5c5600(0x206),'body':_0x3f75a1}];return{'snapshot':_0x24c6d1,'before':_0x947b2e,'body':_0x3f75a1,'noChanges':_0x430605,'plan':mutationResult({'operation':_0x5c5600(0x1de),'selector':{'id':_0x420382},'before':_0x947b2e,'after':_0x20d4b2,'dryRun':_0x235743,'backend':[...BACKEND],'plannedActions':_0x1b6c63,'snapshotHash':_0x24c6d1[_0x5c5600(0x1d5)],'warnings':_0x430605?[_0x5c5600(0x215)]:[]})};}function verifyRenamedFact(_0x122407,_0x4f8af9,_0x3b7834){const _0x33b8d4=a120_0x329d64,_0x2dc3be=[['id',_0x4f8af9['id'],_0x122407['id']],[_0x33b8d4(0x1db),_0x4f8af9[_0x33b8d4(0x1db)],_0x122407[_0x33b8d4(0x1db)]],[_0x33b8d4(0x212),_0x4f8af9['depth'],_0x122407['depth']],[_0x33b8d4(0x20c),_0x4f8af9[_0x33b8d4(0x20c)],_0x122407[_0x33b8d4(0x20c)]],[_0x33b8d4(0x218),_0x4f8af9[_0x33b8d4(0x218)],_0x122407[_0x33b8d4(0x218)]],[_0x33b8d4(0x1fe),_0x4f8af9[_0x33b8d4(0x1fe)],_0x122407[_0x33b8d4(0x1fe)]],['visible',_0x4f8af9[_0x33b8d4(0x209)],_0x122407[_0x33b8d4(0x209)]],[_0x33b8d4(0x1e8),_0x4f8af9['sort'],_0x122407['sort']],['resources',_0x4f8af9[_0x33b8d4(0x1f3)],_0x122407[_0x33b8d4(0x1f3)]],[_0x33b8d4(0x1eb),_0x4f8af9[_0x33b8d4(0x1eb)],_0x122407[_0x33b8d4(0x1eb)]],[_0x33b8d4(0x20d),_0x4f8af9[_0x33b8d4(0x20d)],_0x122407[_0x33b8d4(0x20d)]],[_0x33b8d4(0x1fd),_0x4f8af9[_0x33b8d4(0x1fd)],_0x122407['childrenCount']],[_0x33b8d4(0x1d9),_0x4f8af9[_0x33b8d4(0x1d9)],_0x122407['pageId']],[_0x33b8d4(0x205),_0x4f8af9['pageType'],_0x122407['pageType']],[_0x33b8d4(0x1f7),_0x4f8af9[_0x33b8d4(0x1f7)],_0x122407['modelType']],[_0x33b8d4(0x21d),_0x4f8af9[_0x33b8d4(0x21d)],_0x122407[_0x33b8d4(0x21d)]],[_0x33b8d4(0x1dd),_0x4f8af9[_0x33b8d4(0x1dd)],_0x122407['datasetCode']]];for(const [_0x1f6275,_0x1f998f,_0x458e09]of _0x2dc3be){assertVerified(sameValue(_0x1f998f,_0x458e09),_0x33b8d4(0x1e6)+_0x122407['id']+'\x20'+_0x1f6275+'\x20changed\x20during\x20the\x20label-only\x20rename.');}assertVerified(_0x4f8af9[_0x33b8d4(0x1f5)]===_0x3b7834,'Menu\x20'+_0x122407['id']+_0x33b8d4(0x217));}function sameValue(_0x588fe5,_0x4c16d2){const _0x439f3e=a120_0x329d64;if(Array['isArray'](_0x588fe5)||Array[_0x439f3e(0x204)](_0x4c16d2))return JSON[_0x439f3e(0x1f1)](_0x588fe5)===JSON[_0x439f3e(0x1f1)](_0x4c16d2);return _0x588fe5===_0x4c16d2;}function renameSuccess(_0x4c213c,_0x491316,_0x4c175c,_0xd3fa56,_0x4e68fb){const _0x2f135e=a120_0x329d64,_0x1d9817=_0x4c175c['id'],_0xbd0b5d=mutationResult({..._0x4c213c,'after':_0x4c175c,'dryRun':![],'succeeded':[{'id':_0x1d9817,'updated':!_0xd3fa56,'skipped':_0xd3fa56,'recovered':_0x4e68fb}],'verification':{'checkedBy':_0x2f135e(0x216),'snapshotHash':_0x491316['hash'],'targetId':_0x1d9817,'matchesRequestedState':!![],'recovered':_0x4e68fb}});return{'ok':!![],'message':_0x4e68fb?_0x2f135e(0x1e7)+_0x1d9817+'.':_0xd3fa56?'Menu\x20'+_0x1d9817+'\x20already\x20has\x20the\x20requested\x20label.':_0x2f135e(0x1ec)+_0x1d9817+'.','data':{..._0xbd0b5d,'recovered':_0x4e68fb}};}async function recoverAfterResponseLoss(_0x2f232f,_0x1c004e){const _0xbde4b4=a120_0x329d64,{plan:_0x4ee918,before:_0x35300a,body:_0x5121e0}=_0x1c004e;let _0x1cfa58;try{_0x1cfa58=await fetchMenuSnapshot(_0x2f232f['appCode'],_0x2f232f['cookie']);}catch{throw recoveryRequired(_0x4ee918,_0x2f232f['appCode'],{'id':_0x5121e0['id'],'readbackFailed':!![]});}const _0xdb822d=_0x1cfa58[_0xbde4b4(0x21c)][_0xbde4b4(0x1ed)](_0x5121e0['id']);if(!_0xdb822d||_0xdb822d['label']!==_0x5121e0[_0xbde4b4(0x1f5)])throw recoveryRequired(_0x4ee918,_0x2f232f[_0xbde4b4(0x203)],{'id':_0x5121e0['id'],'requestedLabelObserved':![],'after':_0xdb822d??null});try{verifyRenamedFact(_0x35300a,_0xdb822d,_0x5121e0[_0xbde4b4(0x1f5)]);}catch(_0x431b96){const _0x24c603=asVerificationError(_0x431b96,_0xbde4b4(0x1ef)+_0x5121e0['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x24c603,_0x4ee918,{'stage':_0xbde4b4(0x207),'succeeded':[{'id':_0x5121e0['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x5121e0['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0xdb822d,'warnings':['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':'failed','targetId':_0x5121e0['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x2f232f[_0xbde4b4(0x203)])}});}return renameSuccess(_0x4ee918,_0x1cfa58,_0xdb822d,![],!![]);}function recoveryRequired(_0x1ad4df,_0x26d241,_0x2a94ed){const _0x42119b=a120_0x329d64,_0x437ac9=menuError('menu_update_recovery_required',_0x42119b(0x1dc),'Run\x20'+buildLookupCommand(_0x26d241)+_0x42119b(0x1d1));return menuFailure(_0x437ac9,_0x1ad4df,{'stage':'update-recovery','failed':{'id':_0x2a94ed['id'],..._0x2a94ed[_0x42119b(0x1ea)]===undefined?{}:{'requestedLabelObserved':_0x2a94ed['requestedLabelObserved']},..._0x2a94ed['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x2a94ed[_0x42119b(0x1d7)],'warnings':[_0x42119b(0x20a)],'verification':{'status':_0x42119b(0x1f6),'targetId':_0x2a94ed['id'],..._0x2a94ed[_0x42119b(0x1ea)]===undefined?{}:{'requestedLabelObserved':_0x2a94ed[_0x42119b(0x1ea)]},..._0x2a94ed[_0x42119b(0x1d2)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x26d241)}});}function buildLookupCommand(_0x3fc0bc){const _0x97fa60=a120_0x329d64,_0x5f374c='\x27'+_0x3fc0bc[_0x97fa60(0x1e3)](/'/g,_0x97fa60(0x1fc))+'\x27';return _0x97fa60(0x208)+_0x5f374c+_0x97fa60(0x1e0);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x270b27,_0xa2e27a){const _0x19f476=a121_0x42b4,_0xa11ce4=_0x270b27();while(!![]){try{const _0x3c716a=parseInt(_0x19f476(0xe9))/0x1*(parseInt(_0x19f476(0xe7))/0x2)+-parseInt(_0x19f476(0xd7))/0x3*(parseInt(_0x19f476(0xcd))/0x4)+parseInt(_0x19f476(0xd9))/0x5+parseInt(_0x19f476(0xe1))/0x6*(-parseInt(_0x19f476(0xd5))/0x7)+-parseInt(_0x19f476(0xdc))/0x8*(parseInt(_0x19f476(0xcc))/0x9)+-parseInt(_0x19f476(0xcb))/0xa+-parseInt(_0x19f476(0xe8))/0xb*(-parseInt(_0x19f476(0xd4))/0xc);if(_0x3c716a===_0xa2e27a)break;else _0xa11ce4['push'](_0xa11ce4['shift']());}catch(_0xc64f52){_0xa11ce4['push'](_0xa11ce4['shift']());}}}(a121_0x4f7c,0x2774e));function a121_0x42b4(_0x44fcd9,_0xc2383d){_0x44fcd9=_0x44fcd9-0xca;const _0x4f7c8f=a121_0x4f7c();let _0x42b4b3=_0x4f7c8f[_0x44fcd9];return _0x42b4b3;}function strWidth(_0x29668a){const _0x2ec05b=a121_0x42b4;let _0x46e1a2=0x0;for(const _0x54e585 of _0x29668a){_0x46e1a2+=/[\u4e00-\u9fa5]/[_0x2ec05b(0xe6)](_0x54e585)?0x2:0x1;}return _0x46e1a2;}function padRight(_0x37edcb,_0x4d036e){const _0x2fae62=a121_0x42b4,_0x38bc7b=strWidth(_0x37edcb);return _0x37edcb+'\x20'[_0x2fae62(0xd8)](Math[_0x2fae62(0xdf)](0x0,_0x4d036e-_0x38bc7b));}function a121_0x4f7c(){const _0x213bcd=['test','55598OStIJc','873301aaSADe','11OSlLxL','map','length','2960360duhiEr','63RDaGwk','4956lCAmAh','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','Platform','label','\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','local','online','36NKaaLT','33313uGDGbf','\x20\x20\x20\x20JS:\x20\x20','522MABcwS','repeat','1337360uCyvJD','push','join','141624Ekeyoy','Menu\x20Name','Path','max','path','18NitlcO','\x20\x20Affected\x20menus:\x20','(unchanged)','showOnline','\x20\x20No\x20pages\x20to\x20sync.'];a121_0x4f7c=function(){return _0x213bcd;};return a121_0x4f7c();}export function renderCompareTable(_0x2b0795,_0x18a3f0={}){const _0x5f2d7c=a121_0x42b4;if(_0x2b0795[_0x5f2d7c(0xca)]===0x0)return'';const _0x40012c=_0x18a3f0[_0x5f2d7c(0xe4)]??!![],_0x547d5c=Math['max'](0x1e,..._0x2b0795['map'](_0x206881=>strWidth(_0x206881[_0x5f2d7c(0xd0)]))),_0x52c77a=Math['max'](0x18,..._0x2b0795[_0x5f2d7c(0xea)](_0x52f863=>strWidth(_0x52f863[_0x5f2d7c(0xe0)]))),_0x4866b7=0x4,_0x5f184b=[],_0x5ef9e8='\x20\x20'+padRight(_0x5f2d7c(0xdd),_0x547d5c),_0x5b489d=padRight(_0x5f2d7c(0xde),_0x52c77a),_0x92f5ee=padRight('Local',_0x4866b7),_0x2d1a4e=_0x40012c?'\x20\x20'+padRight(_0x5f2d7c(0xcf),_0x4866b7):'';_0x5f184b[_0x5f2d7c(0xda)](_0x5ef9e8+'\x20\x20'+_0x5b489d+'\x20\x20'+_0x92f5ee+(_0x40012c?_0x2d1a4e:'')),_0x5f184b['push']('\x20\x20'+'─'[_0x5f2d7c(0xd8)](_0x547d5c)+'\x20\x20'+'─'[_0x5f2d7c(0xd8)](_0x52c77a)+'\x20\x20'+'─'[_0x5f2d7c(0xd8)](_0x4866b7)+(_0x40012c?'\x20\x20'+'─'[_0x5f2d7c(0xd8)](_0x4866b7):''));for(const _0x4e199a of _0x2b0795){const _0x207821=padRight(_0x4e199a[_0x5f2d7c(0xd0)],_0x547d5c),_0x413809=padRight(_0x4e199a[_0x5f2d7c(0xe0)],_0x52c77a),_0x2778d8=_0x4e199a[_0x5f2d7c(0xd2)]?'✓':'✗',_0x2d3de6=padRight(_0x2778d8,_0x4866b7);let _0x104d54='\x20\x20'+_0x207821+'\x20\x20'+_0x413809+'\x20\x20'+_0x2d3de6;if(_0x40012c){const _0x476065=_0x4e199a[_0x5f2d7c(0xd3)]?'✓':'✗';_0x104d54+='\x20\x20'+padRight(_0x476065,_0x4866b7);}_0x5f184b['push'](_0x104d54);}return _0x5f184b[_0x5f2d7c(0xdb)]('\x0a');}export function renderSyncSummary(_0xaf2e8a,_0xfdc769){const _0x51648c=a121_0x42b4;if(_0xaf2e8a[_0x51648c(0xca)]===0x0)return _0xfdc769?'\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.':_0x51648c(0xe5);const _0xbef96c=['\x20\x20'+_0xaf2e8a['length']+_0x51648c(0xd1)];for(const _0x5972e8 of _0xaf2e8a){_0xbef96c[_0x51648c(0xda)]('\x20\x20\x20\x20•\x20'+_0x5972e8[_0x51648c(0xd0)]+'\x20('+_0x5972e8[_0x51648c(0xe0)]+')');}return _0xbef96c[_0x51648c(0xdb)]('\x0a');}export function renderUpdateSummary(_0x229c1b,_0x29010b){const _0x42c6b8=a121_0x42b4;if(_0x229c1b[_0x42c6b8(0xca)]===0x0)return _0x42c6b8(0xce);const _0x43e142=['\x20\x20'+_0x229c1b[_0x42c6b8(0xca)]+'\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:',_0x42c6b8(0xd6)+(_0x29010b[0x0]??'(unchanged)'),'\x20\x20\x20\x20CSS:\x20'+(_0x29010b[0x1]??_0x42c6b8(0xe3)),'',_0x42c6b8(0xe2)+_0x229c1b[_0x42c6b8(0xdb)](',\x20')];return _0x43e142['join']('\x0a');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a122_0x808c05=a122_0x3b06;function a122_0x30aa(){const _0x165691=['Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','utf8','type','7cIwheW','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','datasetCode','410296zccPfe','\x20requires\x20a\x20non-empty\x20file\x20path.','toISOString','command','expiresAt','updateUserId','1337118mRVNRZ','Menu\x20delete\x20plan\x20expired\x20at\x20','extendHash','every','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','appCode','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','57uscxgz','Planned\x20menu\x20','boolean',',\x20current\x20app\x20is\x20','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','object','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','sha256','pages','datasetId','map','12dRDoYX','menu_plan_expired','updateTime','resources','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','isInteger','POST','pageType','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','visible','parse','size','menu_plan_file_exists','target','extend','snapshotHash','\x20of\x20the\x20','depth','6000310vlaIbj','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','isArray','label','recursive','isSafeInteger','updateUserName','Menu\x20delete\x20plan\x20creation\x20time\x20','plan','resourcesHash','isFinite','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','EEXIST','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','\x20is\x20in\x20the\x20future.','childrenIds','path','15710CgGgBf','length','trim','Menu\x20delete\x20plan\x20targets\x20app\x20','menu\x20delete','targets','createdAt','cascade','delete','parentId','update','Cannot\x20read\x20menu\x20delete\x20plan\x20','deleteOrder','warnings','getTime','87850fgUgbQ','menu_state_drift','test','/smartapi/menu/batchDelete','hash','pageId','version','string','targetFingerprint','resourcesValid','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','before','728vHiLSg','batch-delete-menu','number','modelType','11UXpPjl','\x20contract.','662702gBbXzD','sort','selector','pageSchemaAffected','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','code','menu_plan_write_failed','menu_plan_invalid','28234115FaKXGP','childrenCount','targetFingerprints','stringify','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','99regPaF'];a122_0x30aa=function(){return _0x165691;};return a122_0x30aa();}(function(_0x198a80,_0x551d9d){const _0xb528fd=a122_0x3b06,_0x32184e=_0x198a80();while(!![]){try{const _0x282f6b=parseInt(_0xb528fd(0x132))/0x1+-parseInt(_0xb528fd(0x120))/0x2*(parseInt(_0xb528fd(0x153))/0x3)+-parseInt(_0xb528fd(0x12c))/0x4*(parseInt(_0xb528fd(0x111))/0x5)+-parseInt(_0xb528fd(0x14c))/0x6*(-parseInt(_0xb528fd(0x143))/0x7)+parseInt(_0xb528fd(0x146))/0x8*(-parseInt(_0xb528fd(0x13f))/0x9)+parseInt(_0xb528fd(0x100))/0xa*(-parseInt(_0xb528fd(0x130))/0xb)+parseInt(_0xb528fd(0xed))/0xc*(parseInt(_0xb528fd(0x13a))/0xd);if(_0x282f6b===_0x551d9d)break;else _0x32184e['push'](_0x32184e['shift']());}catch(_0x12bb72){_0x32184e['push'](_0x32184e['shift']());}}}(a122_0x30aa,0x76d93));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=a122_0x808c05(0x115),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x479415,_0x272735,_0x341616=new Date()){const _0x91fdef=a122_0x808c05;if(!_0x272735['before']||!isMenuFact(_0x272735[_0x91fdef(0x12b)]))throw menuError(_0x91fdef(0x139),_0x91fdef(0xf5));const _0x2b09c4=_0x272735[_0x91fdef(0x116)]?.[_0x91fdef(0x112)]?_0x272735[_0x91fdef(0x116)]:[_0x272735['before']],_0x5837a7=_0x272735[_0x91fdef(0x11d)]?.[_0x91fdef(0x112)]?_0x272735['deleteOrder']:_0x2b09c4['map'](_0x5b17df=>_0x5b17df['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x479415,'createdAt':_0x341616[_0x91fdef(0x148)](),'expiresAt':new Date(_0x341616[_0x91fdef(0x11f)]()+PLAN_TTL_MS)[_0x91fdef(0x148)](),'snapshotHash':_0x272735['snapshotHash'],'recursive':_0x272735[_0x91fdef(0x134)][_0x91fdef(0x104)]===!![],'target':_0x272735['before'],'targetFingerprint':fingerprint(_0x272735[_0x91fdef(0x12b)]),'targets':_0x2b09c4,'targetFingerprints':_0x2b09c4[_0x91fdef(0x15d)](fingerprint),'deleteOrder':_0x5837a7,'cascade':_0x272735[_0x91fdef(0x118)]??{'pages':_0x272735[_0x91fdef(0x12b)]['pageId']==null?[]:[_0x272735[_0x91fdef(0x12b)]['pageId']],'pageSchemaAffected':_0x272735[_0x91fdef(0x12b)][_0x91fdef(0x125)]!=null},'warnings':[..._0x272735[_0x91fdef(0x11e)]]};}export async function writeMenuDeletePlan(_0x276faa,_0x3f89c1){const _0x2d3af0=a122_0x808c05,_0x1316d2=resolvePlanPath(_0x276faa,'plan-out');await mkdir(dirname(_0x1316d2),{'recursive':!![]});try{await writeFile(_0x1316d2,JSON[_0x2d3af0(0x13d)](_0x3f89c1,null,0x2)+'\x0a',{'encoding':_0x2d3af0(0x141),'flag':'wx'});}catch(_0x2905c1){if(_0x2905c1[_0x2d3af0(0x137)]===_0x2d3af0(0x10c))throw menuError(_0x2d3af0(0xfa),_0x2d3af0(0x12a)+_0x1316d2,_0x2d3af0(0xf6));throw menuError(_0x2d3af0(0x138),'Failed\x20to\x20write\x20menu\x20delete\x20plan\x20'+_0x1316d2+':\x20'+errorMessage(_0x2905c1));}return _0x1316d2;}export async function readMenuDeletePlan(_0x404412){const _0x40eefe=a122_0x808c05,_0x449d0a=resolvePlanPath(_0x404412,_0x40eefe(0x108));let _0x1cc4d6;try{_0x1cc4d6=(await stat(_0x449d0a))[_0x40eefe(0xf9)];}catch(_0x743d9){throw menuError(_0x40eefe(0x139),_0x40eefe(0x11c)+_0x449d0a+':\x20'+errorMessage(_0x743d9));}if(_0x1cc4d6>MAX_PLAN_BYTES)throw menuError(_0x40eefe(0x139),_0x40eefe(0x140)+_0x1cc4d6+'\x20bytes.');let _0x406377;try{_0x406377=JSON[_0x40eefe(0xf8)](await readFile(_0x449d0a,_0x40eefe(0x141)));}catch(_0x4c9e1d){throw menuError(_0x40eefe(0x139),_0x40eefe(0x144)+errorMessage(_0x4c9e1d));}if(!isMenuDeletePlanFile(_0x406377))throw menuError(_0x40eefe(0x139),'Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20'+PLAN_VERSION+_0x40eefe(0xfe)+PLAN_COMMAND+_0x40eefe(0x131));if(!sameFingerprint(_0x406377[_0x40eefe(0x128)],fingerprint(_0x406377[_0x40eefe(0xfb)])))throw menuError('menu_plan_invalid','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.',_0x40eefe(0x13e));if(!_0x406377[_0x40eefe(0x116)]['every']((_0x4a63b8,_0x5c54b6)=>sameFingerprint(_0x406377[_0x40eefe(0x13c)][_0x5c54b6],fingerprint(_0x4a63b8)))||!sameFingerprint(_0x406377[_0x40eefe(0x128)],fingerprint(_0x406377['targets'][_0x406377[_0x40eefe(0x116)][_0x40eefe(0x112)]-0x1])))throw menuError('menu_plan_invalid',_0x40eefe(0x10b),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.');return{'path':_0x449d0a,'plan':_0x406377};}export function mutationPlanFromDeleteFile(_0x41f08a,_0x5d0257){const _0x501ede=a122_0x808c05;return mutationResult({'operation':_0x501ede(0x119),'selector':{'id':_0x41f08a[_0x501ede(0xfb)]['id'],'recursive':_0x41f08a['recursive']},'before':_0x41f08a[_0x501ede(0xfb)],'after':null,'dryRun':![],'backend':[{'method':_0x501ede(0xf3),'path':_0x501ede(0x123)}],'plannedActions':[{'stage':_0x501ede(0x12d),'method':'POST','path':_0x501ede(0x123),'body':{'idList':_0x41f08a[_0x501ede(0x11d)]}}],'targets':_0x41f08a[_0x501ede(0x116)],'deleteOrder':_0x41f08a[_0x501ede(0x11d)],'snapshotHash':_0x41f08a[_0x501ede(0xfd)],'cascade':_0x41f08a[_0x501ede(0x118)],'planFile':{'path':_0x5d0257,'createdAt':_0x41f08a[_0x501ede(0x117)],'expiresAt':_0x41f08a[_0x501ede(0x14a)]},'warnings':_0x41f08a[_0x501ede(0x11e)]});}export function assertMenuDeletePlanCurrent(_0x3244f2,_0x2a5d7e,_0x55ffe1,_0xdd28c1=new Date()){const _0x3e6ad8=a122_0x808c05;assertMenuDeletePlanExecutable(_0x3244f2,_0x2a5d7e,_0xdd28c1);if(_0x55ffe1[_0x3e6ad8(0x124)]!==_0x3244f2['snapshotHash'])throw menuError(_0x3e6ad8(0x121),_0x3e6ad8(0x157),_0x3e6ad8(0x101));return _0x3244f2[_0x3e6ad8(0x116)][_0x3e6ad8(0x15d)]((_0x9beffb,_0x5125e6)=>{const _0x259fd9=_0x3e6ad8,_0x3b0d1a=_0x55ffe1['byId']['get'](_0x9beffb['id']);if(!_0x3b0d1a)throw menuError(_0x259fd9(0x121),_0x259fd9(0x154)+_0x9beffb['id']+_0x259fd9(0x136));if(!sameFingerprint(_0x3244f2[_0x259fd9(0x13c)][_0x5125e6],fingerprint(_0x3b0d1a)))throw menuError(_0x259fd9(0x121),_0x259fd9(0x154)+_0x9beffb['id']+_0x259fd9(0x159),_0x259fd9(0xf1));return _0x3b0d1a;});}export function assertMenuDeletePlanExecutable(_0x4f36ef,_0x2e53ee,_0x57ae58=new Date()){const _0x4f2d27=a122_0x808c05;if(_0x4f36ef['appCode']!==_0x2e53ee)throw menuError('menu_plan_app_mismatch',_0x4f2d27(0x114)+JSON[_0x4f2d27(0x13d)](_0x4f36ef[_0x4f2d27(0x151)])+_0x4f2d27(0x156)+JSON[_0x4f2d27(0x13d)](_0x2e53ee)+'.');const _0x37811d=Date[_0x4f2d27(0xf8)](_0x4f36ef['createdAt']),_0x56efdd=Date[_0x4f2d27(0xf8)](_0x4f36ef[_0x4f2d27(0x14a)]);if(!Number[_0x4f2d27(0x10a)](_0x37811d)||!Number[_0x4f2d27(0x10a)](_0x56efdd)||_0x56efdd-_0x37811d!==PLAN_TTL_MS)throw menuError('menu_plan_invalid',_0x4f2d27(0x152));if(_0x37811d>_0x57ae58['getTime']())throw menuError(_0x4f2d27(0x139),_0x4f2d27(0x107)+_0x4f36ef[_0x4f2d27(0x117)]+_0x4f2d27(0x10e),_0x4f2d27(0x150));if(_0x57ae58[_0x4f2d27(0x11f)]()>_0x56efdd)throw menuError(_0x4f2d27(0xee),_0x4f2d27(0x14d)+_0x4f36ef[_0x4f2d27(0x14a)]+'.',_0x4f2d27(0x10d));}function a122_0x3b06(_0x205c49,_0x12f40a){_0x205c49=_0x205c49-0xed;const _0x30aa07=a122_0x30aa();let _0x3b0616=_0x30aa07[_0x205c49];return _0x3b0616;}function fingerprint(_0x591770){const _0x4c07ab=a122_0x808c05;return{'id':_0x591770['id'],'parentId':_0x591770[_0x4c07ab(0x11a)],'depth':_0x591770['depth'],'label':_0x591770[_0x4c07ab(0x103)],'path':_0x591770[_0x4c07ab(0x110)],'type':_0x591770[_0x4c07ab(0x142)],'visible':_0x591770[_0x4c07ab(0xf7)],'sort':_0x591770[_0x4c07ab(0x133)],'pageId':_0x591770[_0x4c07ab(0x125)],'pageType':_0x591770[_0x4c07ab(0xf4)],'modelType':_0x591770[_0x4c07ab(0x12f)],'datasetId':_0x591770['datasetId'],'datasetCode':_0x591770['datasetCode'],'childrenIds':[..._0x591770[_0x4c07ab(0x10f)]],'childrenCount':_0x591770[_0x4c07ab(0x13b)],'resourcesValid':_0x591770[_0x4c07ab(0x129)],'resourcesHash':hashValue(_0x591770[_0x4c07ab(0xf0)]),'extendHash':hashValue(_0x591770[_0x4c07ab(0xfc)]??null),'updateTime':_0x591770[_0x4c07ab(0xef)]};}function hashValue(_0x1d5b78){const _0x3b0099=a122_0x808c05;return createHash(_0x3b0099(0x15a))[_0x3b0099(0x11b)](JSON['stringify'](_0x1d5b78))['digest']('hex');}function sameFingerprint(_0x382d07,_0xcf2b15){const _0x5891ff=a122_0x808c05;return JSON[_0x5891ff(0x13d)](_0x382d07)===JSON[_0x5891ff(0x13d)](_0xcf2b15);}function resolvePlanPath(_0x3a7caf,_0x4ce713){const _0x1b2771=a122_0x808c05,_0x3a83c7=_0x3a7caf[_0x1b2771(0x113)]();if(!_0x3a83c7)throw menuError(_0x1b2771(0x139),'--'+_0x4ce713+_0x1b2771(0x147));return resolve(_0x3a83c7);}function isMenuDeletePlanFile(_0x1928f5){const _0x3294db=a122_0x808c05;if(!isRecord(_0x1928f5))return![];return _0x1928f5[_0x3294db(0x126)]===PLAN_VERSION&&_0x1928f5[_0x3294db(0x149)]===PLAN_COMMAND&&typeof _0x1928f5[_0x3294db(0x151)]===_0x3294db(0x127)&&_0x1928f5[_0x3294db(0x151)][_0x3294db(0x112)]>0x0&&typeof _0x1928f5['createdAt']===_0x3294db(0x127)&&typeof _0x1928f5[_0x3294db(0x14a)]===_0x3294db(0x127)&&typeof _0x1928f5['snapshotHash']===_0x3294db(0x127)&&/^sha256:[a-f0-9]{64}$/[_0x3294db(0x122)](_0x1928f5[_0x3294db(0xfd)])&&typeof _0x1928f5[_0x3294db(0x104)]===_0x3294db(0x155)&&isMenuFact(_0x1928f5['target'])&&isTargetFingerprint(_0x1928f5[_0x3294db(0x128)])&&Array[_0x3294db(0x102)](_0x1928f5[_0x3294db(0x116)])&&_0x1928f5['targets'][_0x3294db(0x112)]>0x0&&_0x1928f5[_0x3294db(0x116)][_0x3294db(0x14f)](isMenuFact)&&Array['isArray'](_0x1928f5[_0x3294db(0x13c)])&&_0x1928f5[_0x3294db(0x13c)]['length']===_0x1928f5[_0x3294db(0x116)]['length']&&_0x1928f5[_0x3294db(0x13c)][_0x3294db(0x14f)](isTargetFingerprint)&&Array[_0x3294db(0x102)](_0x1928f5[_0x3294db(0x11d)])&&_0x1928f5[_0x3294db(0x11d)]['length']===_0x1928f5[_0x3294db(0x116)][_0x3294db(0x112)]&&_0x1928f5[_0x3294db(0x11d)][_0x3294db(0x14f)](isPositiveInteger)&&new Set(_0x1928f5['deleteOrder'])[_0x3294db(0xf9)]===_0x1928f5['deleteOrder'][_0x3294db(0x112)]&&_0x1928f5['targets'][_0x3294db(0x14f)]((_0x8b979b,_0x1c1da3)=>_0x8b979b['id']===_0x1928f5[_0x3294db(0x11d)][_0x1c1da3])&&_0x1928f5[_0x3294db(0x116)][_0x1928f5[_0x3294db(0x116)][_0x3294db(0x112)]-0x1]?.['id']===_0x1928f5[_0x3294db(0xfb)]['id']&&isRecord(_0x1928f5['cascade'])&&Array[_0x3294db(0x102)](_0x1928f5[_0x3294db(0x118)][_0x3294db(0x15b)])&&_0x1928f5[_0x3294db(0x118)][_0x3294db(0x15b)][_0x3294db(0x14f)](isPositiveInteger)&&typeof _0x1928f5[_0x3294db(0x118)][_0x3294db(0x135)]===_0x3294db(0x155)&&Array[_0x3294db(0x102)](_0x1928f5['warnings'])&&_0x1928f5['warnings'][_0x3294db(0x14f)](_0x3a2bfc=>typeof _0x3a2bfc==='string');}function isMenuFact(_0x34d656){const _0x35815d=a122_0x808c05;if(!isRecord(_0x34d656))return![];return isPositiveInteger(_0x34d656['id'])&&(_0x34d656[_0x35815d(0x11a)]===null||isPositiveInteger(_0x34d656['parentId']))&&Number[_0x35815d(0xf2)](_0x34d656['depth'])&&_0x34d656[_0x35815d(0xff)]>=0x0&&typeof _0x34d656[_0x35815d(0x103)]===_0x35815d(0x127)&&typeof _0x34d656[_0x35815d(0x110)]===_0x35815d(0x127)&&typeof _0x34d656[_0x35815d(0x142)]===_0x35815d(0x127)&&(_0x34d656[_0x35815d(0xf7)]===null||typeof _0x34d656['visible']===_0x35815d(0x155))&&(_0x34d656[_0x35815d(0x133)]===null||Number[_0x35815d(0xf2)](_0x34d656[_0x35815d(0x133)]))&&Array[_0x35815d(0x102)](_0x34d656[_0x35815d(0xf0)])&&_0x34d656['resources'][_0x35815d(0x14f)](_0x44b722=>typeof _0x44b722===_0x35815d(0x127))&&typeof _0x34d656[_0x35815d(0x129)]==='boolean'&&Array[_0x35815d(0x102)](_0x34d656[_0x35815d(0x10f)])&&_0x34d656[_0x35815d(0x10f)][_0x35815d(0x14f)](isPositiveInteger)&&Number[_0x35815d(0xf2)](_0x34d656[_0x35815d(0x13b)])&&_0x34d656['childrenCount']>=0x0&&(_0x34d656[_0x35815d(0x125)]===null||isPositiveInteger(_0x34d656[_0x35815d(0x125)]))&&typeof _0x34d656[_0x35815d(0xf4)]===_0x35815d(0x127)&&typeof _0x34d656['modelType']===_0x35815d(0x127)&&(_0x34d656[_0x35815d(0x15c)]===null||isPositiveInteger(_0x34d656[_0x35815d(0x15c)]))&&typeof _0x34d656[_0x35815d(0x145)]===_0x35815d(0x127)&&(_0x34d656['updateUserId']===null||typeof _0x34d656[_0x35815d(0x14b)]==='string')&&(_0x34d656[_0x35815d(0x106)]===null||typeof _0x34d656[_0x35815d(0x106)]===_0x35815d(0x127))&&(_0x34d656['updateTime']===null||typeof _0x34d656[_0x35815d(0xef)]===_0x35815d(0x127)||typeof _0x34d656['updateTime']===_0x35815d(0x12e))&&(_0x34d656[_0x35815d(0xfc)]===undefined||_0x34d656[_0x35815d(0xfc)]===null||isRecord(_0x34d656[_0x35815d(0xfc)]));}function isTargetFingerprint(_0x2de35a){const _0x446dd8=a122_0x808c05;if(!isRecord(_0x2de35a))return![];return isPositiveInteger(_0x2de35a['id'])&&(_0x2de35a[_0x446dd8(0x11a)]===null||isPositiveInteger(_0x2de35a[_0x446dd8(0x11a)]))&&Number[_0x446dd8(0xf2)](_0x2de35a[_0x446dd8(0xff)])&&_0x2de35a['depth']>=0x0&&typeof _0x2de35a[_0x446dd8(0x103)]==='string'&&typeof _0x2de35a[_0x446dd8(0x110)]==='string'&&typeof _0x2de35a[_0x446dd8(0x142)]==='string'&&(_0x2de35a['visible']===null||typeof _0x2de35a[_0x446dd8(0xf7)]===_0x446dd8(0x155))&&(_0x2de35a[_0x446dd8(0x133)]===null||Number[_0x446dd8(0xf2)](_0x2de35a['sort']))&&(_0x2de35a[_0x446dd8(0x125)]===null||isPositiveInteger(_0x2de35a[_0x446dd8(0x125)]))&&typeof _0x2de35a[_0x446dd8(0xf4)]===_0x446dd8(0x127)&&typeof _0x2de35a[_0x446dd8(0x12f)]===_0x446dd8(0x127)&&(_0x2de35a['datasetId']===null||isPositiveInteger(_0x2de35a[_0x446dd8(0x15c)]))&&typeof _0x2de35a[_0x446dd8(0x145)]===_0x446dd8(0x127)&&Array[_0x446dd8(0x102)](_0x2de35a['childrenIds'])&&_0x2de35a['childrenIds'][_0x446dd8(0x14f)](isPositiveInteger)&&Number[_0x446dd8(0xf2)](_0x2de35a[_0x446dd8(0x13b)])&&_0x2de35a[_0x446dd8(0x13b)]>=0x0&&typeof _0x2de35a['resourcesValid']==='boolean'&&typeof _0x2de35a[_0x446dd8(0x109)]===_0x446dd8(0x127)&&/^[a-f0-9]{64}$/[_0x446dd8(0x122)](_0x2de35a['resourcesHash'])&&typeof _0x2de35a[_0x446dd8(0x14e)]===_0x446dd8(0x127)&&/^[a-f0-9]{64}$/[_0x446dd8(0x122)](_0x2de35a[_0x446dd8(0x14e)])&&(_0x2de35a[_0x446dd8(0xef)]===null||typeof _0x2de35a[_0x446dd8(0xef)]===_0x446dd8(0x127)||typeof _0x2de35a[_0x446dd8(0xef)]===_0x446dd8(0x12e));}function isRecord(_0x1393a6){const _0x291944=a122_0x808c05;return typeof _0x1393a6===_0x291944(0x158)&&_0x1393a6!==null&&!Array[_0x291944(0x102)](_0x1393a6);}function isPositiveInteger(_0xd865d9){const _0x185f03=a122_0x808c05;return Number[_0x185f03(0x105)](_0xd865d9)&&Number(_0xd865d9)>0x0;}function errorMessage(_0x592acb){return _0x592acb instanceof Error?_0x592acb['message']:String(_0x592acb);}
|
|
1
|
+
const a122_0x96013=a122_0x57c7;(function(_0x194574,_0x123d91){const _0x41fa00=a122_0x57c7,_0x347a29=_0x194574();while(!![]){try{const _0x5a3c98=-parseInt(_0x41fa00(0x119))/0x1+-parseInt(_0x41fa00(0x139))/0x2*(parseInt(_0x41fa00(0x12c))/0x3)+-parseInt(_0x41fa00(0x100))/0x4*(parseInt(_0x41fa00(0xfe))/0x5)+-parseInt(_0x41fa00(0x14c))/0x6*(-parseInt(_0x41fa00(0x11c))/0x7)+parseInt(_0x41fa00(0x13f))/0x8*(parseInt(_0x41fa00(0x14f))/0x9)+-parseInt(_0x41fa00(0x114))/0xa*(-parseInt(_0x41fa00(0x160))/0xb)+parseInt(_0x41fa00(0x14b))/0xc;if(_0x5a3c98===_0x123d91)break;else _0x347a29['push'](_0x347a29['shift']());}catch(_0x5d62f2){_0x347a29['push'](_0x347a29['shift']());}}}(a122_0x27e4,0x4bd5d));import{createHash}from'node:crypto';function a122_0x57c7(_0x71b031,_0x419390){_0x71b031=_0x71b031-0xfa;const _0x27e471=a122_0x27e4();let _0x57c774=_0x27e471[_0x71b031];return _0x57c774;}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=a122_0x96013(0x121),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x14b088,_0x2ff4ad,_0x3a39c6=new Date()){const _0xc9c6b7=a122_0x96013;if(!_0x2ff4ad['before']||!isMenuFact(_0x2ff4ad[_0xc9c6b7(0x142)]))throw menuError(_0xc9c6b7(0x110),_0xc9c6b7(0x116));const _0x38fd88=_0x2ff4ad['targets']?.['length']?_0x2ff4ad[_0xc9c6b7(0x148)]:[_0x2ff4ad['before']],_0x56f1d4=_0x2ff4ad[_0xc9c6b7(0x112)]?.[_0xc9c6b7(0xfb)]?_0x2ff4ad[_0xc9c6b7(0x112)]:_0x38fd88[_0xc9c6b7(0x129)](_0x5c93c0=>_0x5c93c0['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x14b088,'createdAt':_0x3a39c6[_0xc9c6b7(0x14a)](),'expiresAt':new Date(_0x3a39c6[_0xc9c6b7(0x134)]()+PLAN_TTL_MS)[_0xc9c6b7(0x14a)](),'snapshotHash':_0x2ff4ad[_0xc9c6b7(0x124)],'recursive':_0x2ff4ad[_0xc9c6b7(0x136)][_0xc9c6b7(0x11a)]===!![],'target':_0x2ff4ad[_0xc9c6b7(0x142)],'targetFingerprint':fingerprint(_0x2ff4ad[_0xc9c6b7(0x142)]),'targets':_0x38fd88,'targetFingerprints':_0x38fd88['map'](fingerprint),'deleteOrder':_0x56f1d4,'cascade':_0x2ff4ad[_0xc9c6b7(0x101)]??{'pages':_0x2ff4ad['before'][_0xc9c6b7(0x133)]==null?[]:[_0x2ff4ad[_0xc9c6b7(0x142)][_0xc9c6b7(0x133)]],'pageSchemaAffected':_0x2ff4ad['before'][_0xc9c6b7(0x133)]!=null},'warnings':[..._0x2ff4ad[_0xc9c6b7(0x15a)]]};}export async function writeMenuDeletePlan(_0x14adb7,_0x2d0c11){const _0x44d844=a122_0x96013,_0x12af7d=resolvePlanPath(_0x14adb7,'plan-out');await mkdir(dirname(_0x12af7d),{'recursive':!![]});try{await writeFile(_0x12af7d,JSON[_0x44d844(0x15d)](_0x2d0c11,null,0x2)+'\x0a',{'encoding':_0x44d844(0x138),'flag':'wx'});}catch(_0x54b34c){if(_0x54b34c[_0x44d844(0x15e)]==='EEXIST')throw menuError(_0x44d844(0x159),'Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20'+_0x12af7d,_0x44d844(0x15c));throw menuError('menu_plan_write_failed',_0x44d844(0x140)+_0x12af7d+':\x20'+errorMessage(_0x54b34c));}return _0x12af7d;}export async function readMenuDeletePlan(_0x40d2ea){const _0x2d2e29=a122_0x96013,_0x5b967b=resolvePlanPath(_0x40d2ea,_0x2d2e29(0x13a));let _0x604dec;try{_0x604dec=(await stat(_0x5b967b))[_0x2d2e29(0x157)];}catch(_0x48022d){throw menuError(_0x2d2e29(0x110),_0x2d2e29(0x158)+_0x5b967b+':\x20'+errorMessage(_0x48022d));}if(_0x604dec>MAX_PLAN_BYTES)throw menuError(_0x2d2e29(0x110),_0x2d2e29(0x115)+_0x604dec+_0x2d2e29(0x11b));let _0x8afcae;try{_0x8afcae=JSON[_0x2d2e29(0x149)](await readFile(_0x5b967b,_0x2d2e29(0x138)));}catch(_0x5641af){throw menuError(_0x2d2e29(0x110),_0x2d2e29(0x143)+errorMessage(_0x5641af));}if(!isMenuDeletePlanFile(_0x8afcae))throw menuError(_0x2d2e29(0x110),_0x2d2e29(0x146)+PLAN_VERSION+_0x2d2e29(0x117)+PLAN_COMMAND+_0x2d2e29(0x118));if(!sameFingerprint(_0x8afcae[_0x2d2e29(0x12e)],fingerprint(_0x8afcae['target'])))throw menuError(_0x2d2e29(0x110),_0x2d2e29(0x150),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.');if(!_0x8afcae['targets']['every']((_0x219c4d,_0x33508b)=>sameFingerprint(_0x8afcae['targetFingerprints'][_0x33508b],fingerprint(_0x219c4d)))||!sameFingerprint(_0x8afcae[_0x2d2e29(0x12e)],fingerprint(_0x8afcae[_0x2d2e29(0x148)][_0x8afcae[_0x2d2e29(0x148)][_0x2d2e29(0xfb)]-0x1])))throw menuError('menu_plan_invalid','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.',_0x2d2e29(0x12b));return{'path':_0x5b967b,'plan':_0x8afcae};}export function mutationPlanFromDeleteFile(_0x3fe055,_0x5d9022){const _0x122e4c=a122_0x96013;return mutationResult({'operation':_0x122e4c(0x10a),'selector':{'id':_0x3fe055['target']['id'],'recursive':_0x3fe055[_0x122e4c(0x11a)]},'before':_0x3fe055[_0x122e4c(0xff)],'after':null,'dryRun':![],'backend':[{'method':_0x122e4c(0x135),'path':_0x122e4c(0x111)}],'plannedActions':[{'stage':_0x122e4c(0x14d),'method':'POST','path':_0x122e4c(0x111),'body':{'idList':_0x3fe055[_0x122e4c(0x112)]}}],'targets':_0x3fe055['targets'],'deleteOrder':_0x3fe055[_0x122e4c(0x112)],'snapshotHash':_0x3fe055[_0x122e4c(0x124)],'cascade':_0x3fe055['cascade'],'planFile':{'path':_0x5d9022,'createdAt':_0x3fe055[_0x122e4c(0x10f)],'expiresAt':_0x3fe055[_0x122e4c(0x164)]},'warnings':_0x3fe055[_0x122e4c(0x15a)]});}export function assertMenuDeletePlanCurrent(_0xb25333,_0x3ff883,_0x4eeedf,_0x16b38a=new Date()){const _0x268617=a122_0x96013;assertMenuDeletePlanExecutable(_0xb25333,_0x3ff883,_0x16b38a);if(_0x4eeedf[_0x268617(0x12f)]!==_0xb25333['snapshotHash'])throw menuError('menu_state_drift','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.',_0x268617(0x10c));return _0xb25333[_0x268617(0x148)][_0x268617(0x129)]((_0x24c52d,_0x12401f)=>{const _0x3be6a5=_0x268617,_0x27033e=_0x4eeedf['byId'][_0x3be6a5(0x15f)](_0x24c52d['id']);if(!_0x27033e)throw menuError('menu_state_drift',_0x3be6a5(0x108)+_0x24c52d['id']+_0x3be6a5(0xfa));if(!sameFingerprint(_0xb25333['targetFingerprints'][_0x12401f],fingerprint(_0x27033e)))throw menuError(_0x3be6a5(0x10b),_0x3be6a5(0x108)+_0x24c52d['id']+_0x3be6a5(0xfd),_0x3be6a5(0x120));return _0x27033e;});}export function assertMenuDeletePlanExecutable(_0x5a31ec,_0x558f23,_0x51a544=new Date()){const _0x201a31=a122_0x96013;if(_0x5a31ec['appCode']!==_0x558f23)throw menuError(_0x201a31(0x137),'Menu\x20delete\x20plan\x20targets\x20app\x20'+JSON[_0x201a31(0x15d)](_0x5a31ec['appCode'])+',\x20current\x20app\x20is\x20'+JSON[_0x201a31(0x15d)](_0x558f23)+'.');const _0x543ca4=Date['parse'](_0x5a31ec['createdAt']),_0x42972a=Date[_0x201a31(0x149)](_0x5a31ec[_0x201a31(0x164)]);if(!Number[_0x201a31(0x161)](_0x543ca4)||!Number[_0x201a31(0x161)](_0x42972a)||_0x42972a-_0x543ca4!==PLAN_TTL_MS)throw menuError(_0x201a31(0x110),_0x201a31(0x106));if(_0x543ca4>_0x51a544[_0x201a31(0x134)]())throw menuError(_0x201a31(0x110),_0x201a31(0x155)+_0x5a31ec[_0x201a31(0x10f)]+_0x201a31(0x144),'Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.');if(_0x51a544[_0x201a31(0x134)]()>_0x42972a)throw menuError(_0x201a31(0x141),'Menu\x20delete\x20plan\x20expired\x20at\x20'+_0x5a31ec[_0x201a31(0x164)]+'.',_0x201a31(0x123));}function fingerprint(_0x54c524){const _0x1b9b6a=a122_0x96013;return{'id':_0x54c524['id'],'parentId':_0x54c524['parentId'],'depth':_0x54c524[_0x1b9b6a(0x11e)],'label':_0x54c524[_0x1b9b6a(0x132)],'path':_0x54c524[_0x1b9b6a(0x11f)],'type':_0x54c524[_0x1b9b6a(0x126)],'visible':_0x54c524[_0x1b9b6a(0x12a)],'sort':_0x54c524[_0x1b9b6a(0x11d)],'pageId':_0x54c524[_0x1b9b6a(0x133)],'pageType':_0x54c524['pageType'],'modelType':_0x54c524['modelType'],'datasetId':_0x54c524[_0x1b9b6a(0x152)],'datasetCode':_0x54c524['datasetCode'],'childrenIds':[..._0x54c524[_0x1b9b6a(0x127)]],'childrenCount':_0x54c524[_0x1b9b6a(0x13d)],'resourcesValid':_0x54c524[_0x1b9b6a(0x162)],'resourcesHash':hashValue(_0x54c524[_0x1b9b6a(0x128)]),'extendHash':hashValue(_0x54c524[_0x1b9b6a(0x10d)]??null),'updateTime':_0x54c524['updateTime']};}function a122_0x27e4(){const _0x4d69a0=['depth','path','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','menu\x20delete','pages','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','snapshotHash','resourcesHash','type','childrenIds','resources','map','visible','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','3OpoMqN','hex','targetFingerprint','hash','object','boolean','label','pageId','getTime','POST','selector','menu_plan_app_mismatch','utf8','987516WNxSGz','plan','command','isArray','childrenCount','isInteger','82624dJqMyM','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','menu_plan_expired','before','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','\x20is\x20in\x20the\x20future.','test','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','parentId','targets','parse','toISOString','5650212sJfIvD','724272oePcgH','batch-delete-menu','updateUserId','378ovSvjF','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','updateUserName','datasetId','trim','datasetCode','Menu\x20delete\x20plan\x20creation\x20time\x20','modelType','size','Cannot\x20read\x20menu\x20delete\x20plan\x20','menu_plan_file_exists','warnings','targetFingerprints','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','stringify','code','get','59576agjqWJ','isFinite','resourcesValid','extendHash','expiresAt','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','length','version','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','10eoTbcn','target','1212444VCNuTB','cascade','pageType','isSafeInteger','updateTime','number','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','string','Planned\x20menu\x20','every','delete','menu_state_drift','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','extend','appCode','createdAt','menu_plan_invalid','/smartapi/menu/batchDelete','deleteOrder','digest','430ZgVvjT','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','\x20of\x20the\x20','\x20contract.','89050kjisAN','recursive','\x20bytes.','21MahzEO','sort'];a122_0x27e4=function(){return _0x4d69a0;};return a122_0x27e4();}function hashValue(_0x2a10cb){const _0x4ba751=a122_0x96013;return createHash('sha256')['update'](JSON[_0x4ba751(0x15d)](_0x2a10cb))[_0x4ba751(0x113)](_0x4ba751(0x12d));}function sameFingerprint(_0x4bc8bd,_0x269332){const _0x51addc=a122_0x96013;return JSON[_0x51addc(0x15d)](_0x4bc8bd)===JSON[_0x51addc(0x15d)](_0x269332);}function resolvePlanPath(_0x26b31b,_0x3adc80){const _0x2a2c2c=a122_0x96013,_0x33b99f=_0x26b31b[_0x2a2c2c(0x153)]();if(!_0x33b99f)throw menuError(_0x2a2c2c(0x110),'--'+_0x3adc80+'\x20requires\x20a\x20non-empty\x20file\x20path.');return resolve(_0x33b99f);}function isMenuDeletePlanFile(_0x275c59){const _0x3748c9=a122_0x96013;if(!isRecord(_0x275c59))return![];return _0x275c59[_0x3748c9(0xfc)]===PLAN_VERSION&&_0x275c59[_0x3748c9(0x13b)]===PLAN_COMMAND&&typeof _0x275c59[_0x3748c9(0x10e)]===_0x3748c9(0x107)&&_0x275c59[_0x3748c9(0x10e)][_0x3748c9(0xfb)]>0x0&&typeof _0x275c59[_0x3748c9(0x10f)]==='string'&&typeof _0x275c59[_0x3748c9(0x164)]===_0x3748c9(0x107)&&typeof _0x275c59['snapshotHash']===_0x3748c9(0x107)&&/^sha256:[a-f0-9]{64}$/[_0x3748c9(0x145)](_0x275c59[_0x3748c9(0x124)])&&typeof _0x275c59['recursive']==='boolean'&&isMenuFact(_0x275c59['target'])&&isTargetFingerprint(_0x275c59[_0x3748c9(0x12e)])&&Array['isArray'](_0x275c59['targets'])&&_0x275c59[_0x3748c9(0x148)][_0x3748c9(0xfb)]>0x0&&_0x275c59['targets'][_0x3748c9(0x109)](isMenuFact)&&Array['isArray'](_0x275c59[_0x3748c9(0x15b)])&&_0x275c59[_0x3748c9(0x15b)][_0x3748c9(0xfb)]===_0x275c59['targets'][_0x3748c9(0xfb)]&&_0x275c59[_0x3748c9(0x15b)]['every'](isTargetFingerprint)&&Array[_0x3748c9(0x13c)](_0x275c59['deleteOrder'])&&_0x275c59[_0x3748c9(0x112)][_0x3748c9(0xfb)]===_0x275c59[_0x3748c9(0x148)][_0x3748c9(0xfb)]&&_0x275c59[_0x3748c9(0x112)]['every'](isPositiveInteger)&&new Set(_0x275c59[_0x3748c9(0x112)])[_0x3748c9(0x157)]===_0x275c59[_0x3748c9(0x112)][_0x3748c9(0xfb)]&&_0x275c59[_0x3748c9(0x148)][_0x3748c9(0x109)]((_0x144cca,_0x1a673d)=>_0x144cca['id']===_0x275c59['deleteOrder'][_0x1a673d])&&_0x275c59['targets'][_0x275c59[_0x3748c9(0x148)][_0x3748c9(0xfb)]-0x1]?.['id']===_0x275c59['target']['id']&&isRecord(_0x275c59[_0x3748c9(0x101)])&&Array[_0x3748c9(0x13c)](_0x275c59[_0x3748c9(0x101)][_0x3748c9(0x122)])&&_0x275c59[_0x3748c9(0x101)]['pages'][_0x3748c9(0x109)](isPositiveInteger)&&typeof _0x275c59[_0x3748c9(0x101)]['pageSchemaAffected']===_0x3748c9(0x131)&&Array[_0x3748c9(0x13c)](_0x275c59[_0x3748c9(0x15a)])&&_0x275c59[_0x3748c9(0x15a)]['every'](_0x219094=>typeof _0x219094===_0x3748c9(0x107));}function isMenuFact(_0xbcc99f){const _0x2ab60c=a122_0x96013;if(!isRecord(_0xbcc99f))return![];return isPositiveInteger(_0xbcc99f['id'])&&(_0xbcc99f['parentId']===null||isPositiveInteger(_0xbcc99f[_0x2ab60c(0x147)]))&&Number['isInteger'](_0xbcc99f['depth'])&&_0xbcc99f['depth']>=0x0&&typeof _0xbcc99f[_0x2ab60c(0x132)]===_0x2ab60c(0x107)&&typeof _0xbcc99f[_0x2ab60c(0x11f)]===_0x2ab60c(0x107)&&typeof _0xbcc99f[_0x2ab60c(0x126)]===_0x2ab60c(0x107)&&(_0xbcc99f['visible']===null||typeof _0xbcc99f[_0x2ab60c(0x12a)]==='boolean')&&(_0xbcc99f['sort']===null||Number[_0x2ab60c(0x13e)](_0xbcc99f[_0x2ab60c(0x11d)]))&&Array['isArray'](_0xbcc99f['resources'])&&_0xbcc99f[_0x2ab60c(0x128)][_0x2ab60c(0x109)](_0x8a3c3b=>typeof _0x8a3c3b===_0x2ab60c(0x107))&&typeof _0xbcc99f[_0x2ab60c(0x162)]===_0x2ab60c(0x131)&&Array[_0x2ab60c(0x13c)](_0xbcc99f['childrenIds'])&&_0xbcc99f[_0x2ab60c(0x127)]['every'](isPositiveInteger)&&Number[_0x2ab60c(0x13e)](_0xbcc99f[_0x2ab60c(0x13d)])&&_0xbcc99f[_0x2ab60c(0x13d)]>=0x0&&(_0xbcc99f[_0x2ab60c(0x133)]===null||isPositiveInteger(_0xbcc99f['pageId']))&&typeof _0xbcc99f[_0x2ab60c(0x102)]==='string'&&typeof _0xbcc99f['modelType']===_0x2ab60c(0x107)&&(_0xbcc99f[_0x2ab60c(0x152)]===null||isPositiveInteger(_0xbcc99f['datasetId']))&&typeof _0xbcc99f[_0x2ab60c(0x154)]==='string'&&(_0xbcc99f[_0x2ab60c(0x14e)]===null||typeof _0xbcc99f[_0x2ab60c(0x14e)]===_0x2ab60c(0x107))&&(_0xbcc99f[_0x2ab60c(0x151)]===null||typeof _0xbcc99f[_0x2ab60c(0x151)]===_0x2ab60c(0x107))&&(_0xbcc99f[_0x2ab60c(0x104)]===null||typeof _0xbcc99f['updateTime']===_0x2ab60c(0x107)||typeof _0xbcc99f[_0x2ab60c(0x104)]===_0x2ab60c(0x105))&&(_0xbcc99f[_0x2ab60c(0x10d)]===undefined||_0xbcc99f[_0x2ab60c(0x10d)]===null||isRecord(_0xbcc99f['extend']));}function isTargetFingerprint(_0x1e41b8){const _0x537de1=a122_0x96013;if(!isRecord(_0x1e41b8))return![];return isPositiveInteger(_0x1e41b8['id'])&&(_0x1e41b8[_0x537de1(0x147)]===null||isPositiveInteger(_0x1e41b8[_0x537de1(0x147)]))&&Number['isInteger'](_0x1e41b8['depth'])&&_0x1e41b8[_0x537de1(0x11e)]>=0x0&&typeof _0x1e41b8[_0x537de1(0x132)]==='string'&&typeof _0x1e41b8[_0x537de1(0x11f)]===_0x537de1(0x107)&&typeof _0x1e41b8[_0x537de1(0x126)]===_0x537de1(0x107)&&(_0x1e41b8[_0x537de1(0x12a)]===null||typeof _0x1e41b8['visible']===_0x537de1(0x131))&&(_0x1e41b8[_0x537de1(0x11d)]===null||Number[_0x537de1(0x13e)](_0x1e41b8['sort']))&&(_0x1e41b8[_0x537de1(0x133)]===null||isPositiveInteger(_0x1e41b8[_0x537de1(0x133)]))&&typeof _0x1e41b8[_0x537de1(0x102)]===_0x537de1(0x107)&&typeof _0x1e41b8[_0x537de1(0x156)]===_0x537de1(0x107)&&(_0x1e41b8['datasetId']===null||isPositiveInteger(_0x1e41b8['datasetId']))&&typeof _0x1e41b8[_0x537de1(0x154)]===_0x537de1(0x107)&&Array['isArray'](_0x1e41b8[_0x537de1(0x127)])&&_0x1e41b8[_0x537de1(0x127)][_0x537de1(0x109)](isPositiveInteger)&&Number[_0x537de1(0x13e)](_0x1e41b8[_0x537de1(0x13d)])&&_0x1e41b8[_0x537de1(0x13d)]>=0x0&&typeof _0x1e41b8[_0x537de1(0x162)]===_0x537de1(0x131)&&typeof _0x1e41b8[_0x537de1(0x125)]===_0x537de1(0x107)&&/^[a-f0-9]{64}$/[_0x537de1(0x145)](_0x1e41b8[_0x537de1(0x125)])&&typeof _0x1e41b8[_0x537de1(0x163)]===_0x537de1(0x107)&&/^[a-f0-9]{64}$/['test'](_0x1e41b8[_0x537de1(0x163)])&&(_0x1e41b8['updateTime']===null||typeof _0x1e41b8[_0x537de1(0x104)]===_0x537de1(0x107)||typeof _0x1e41b8['updateTime']==='number');}function isRecord(_0x356d88){const _0x316b15=a122_0x96013;return typeof _0x356d88===_0x316b15(0x130)&&_0x356d88!==null&&!Array[_0x316b15(0x13c)](_0x356d88);}function isPositiveInteger(_0x5092d6){const _0x238fb7=a122_0x96013;return Number[_0x238fb7(0x103)](_0x5092d6)&&Number(_0x5092d6)>0x0;}function errorMessage(_0x58a213){return _0x58a213 instanceof Error?_0x58a213['message']:String(_0x58a213);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x378820,_0x2fa57c){const _0x564a07=a123_0x409e,_0x58ffb8=_0x378820();while(!![]){try{const _0x844173=parseInt(_0x564a07(0x100))/0x1*(parseInt(_0x564a07(0xfd))/0x2)+-parseInt(_0x564a07(0xe3))/0x3+-parseInt(_0x564a07(0xde))/0x4*(-parseInt(_0x564a07(0xf0))/0x5)+parseInt(_0x564a07(0xf8))/0x6+parseInt(_0x564a07(0x105))/0x7+-parseInt(_0x564a07(0xe4))/0x8*(parseInt(_0x564a07(0xfa))/0x9)+parseInt(_0x564a07(0xeb))/0xa;if(_0x844173===_0x2fa57c)break;else _0x58ffb8['push'](_0x58ffb8['shift']());}catch(_0x4f0c80){_0x58ffb8['push'](_0x58ffb8['shift']());}}}(a123_0x40c0,0x66650));import{createHash}from'node:crypto';import{getMenuTree}from'../../../core/api-client.js';export async function fetchMenuSnapshot(_0x1897a1,_0x1332c8,_0x11adf3={}){const _0x5a3ca2=a123_0x409e,_0x6f0b9=await getMenuTree(_0x1897a1,_0x1332c8);return buildMenuSnapshot(Array[_0x5a3ca2(0x102)](_0x6f0b9)?_0x6f0b9:[],_0x11adf3);}export function buildMenuSnapshot(_0x50ec49,_0x316a3b={}){const _0x302e5a=a123_0x409e,_0x1d3ddd=flattenMenuItems(_0x50ec49,{'verbose':_0x316a3b['verbose']===!![],'parentId':null,'depth':0x0}),_0x58424c=new Map(_0x1d3ddd['map'](_0x360057=>[_0x360057['id'],_0x360057])),_0x44a7e0=createHash(_0x302e5a(0xe8))[_0x302e5a(0xe6)](JSON[_0x302e5a(0x109)](_0x1d3ddd[_0x302e5a(0xf6)](toHashInput)))[_0x302e5a(0x106)]('hex');return{'total':_0x1d3ddd[_0x302e5a(0xee)],'hash':_0x302e5a(0xe1)+_0x44a7e0,'menus':_0x1d3ddd,'byId':_0x58424c};}function a123_0x409e(_0x4706d4,_0x3a0bf6){_0x4706d4=_0x4706d4-0xde;const _0x40c08f=a123_0x40c0();let _0x409e50=_0x40c08f[_0x4706d4];return _0x409e50;}export function toProcessedMenuItem(_0x577878){const _0x1b0571=a123_0x409e;return{'id':_0x577878['id'],'path':_0x577878[_0x1b0571(0xf7)],'label':_0x577878[_0x1b0571(0x103)],'resources':[..._0x577878['resources']],'extend':_0x577878[_0x1b0571(0xfc)]??null};}function a123_0x40c0(){const _0x11e974=['3438678pnFDKK','sort','4734JOlTGJ','updateUserName','extend','5188iZuKFX','number','menus','116xnOZqr','type','isArray','label','string','794710QZqram','digest','datasetCode','verbose','stringify','visible','depth','item','childrenIds','292pJWEih','updateUserId','parentId','sha256:','resources','2021205FbcAjU','5656sUFgnw','resourcesValid','update','index','sha256','isFinite','values','186730lXHiCJ','modelType','boolean','length','pageId','31425qTlVQo','children','valid','updateTime','datasetId','filter','map','path'];a123_0x40c0=function(){return _0x11e974;};return a123_0x40c0();}export function toMenuListItem(_0x20b5e4){const {modelType:_0x23fcc0,datasetId:_0x4988d2,datasetCode:_0x1d12ce,resourcesValid:_0x39dae8,..._0x50158a}=_0x20b5e4;return _0x50158a;}export function getChildren(_0x50932f,_0x59dbc4){const _0xd8504=a123_0x409e;return _0x50932f[_0xd8504(0xff)][_0xd8504(0xf5)](_0xa9732e=>_0xa9732e['parentId']===_0x59dbc4);}function flattenMenuItems(_0x5466c9,_0x57a943){const _0x1632dc=a123_0x409e,_0x2276d7=sortMenuItems(_0x5466c9),_0x2e1686=[];for(const _0x9d0281 of _0x2276d7){const _0x5151f7=sortMenuItems(Array[_0x1632dc(0x102)](_0x9d0281[_0x1632dc(0xf1)])?_0x9d0281[_0x1632dc(0xf1)]:[]);_0x2e1686['push'](toMenuFact(_0x9d0281,_0x5151f7,_0x57a943)),_0x5151f7[_0x1632dc(0xee)]>0x0&&_0x2e1686['push'](...flattenMenuItems(_0x5151f7,{'verbose':_0x57a943['verbose'],'parentId':_0x9d0281['id'],'depth':_0x57a943[_0x1632dc(0x10b)]+0x1}));}return _0x2e1686;}function sortMenuItems(_0x1e34b0){const _0x54b48f=a123_0x409e;return _0x1e34b0['map']((_0x43b8a0,_0x3641d5)=>({'item':_0x43b8a0,'index':_0x3641d5}))[_0x54b48f(0xf9)]((_0x52569e,_0x20b76d)=>{const _0x42adbd=_0x54b48f,_0x2e63a3=normalizeSort(_0x52569e[_0x42adbd(0x10c)]['sort']),_0x375894=normalizeSort(_0x20b76d[_0x42adbd(0x10c)][_0x42adbd(0xf9)]);if(_0x2e63a3!==_0x375894)return _0x2e63a3-_0x375894;return _0x52569e['index']-_0x20b76d[_0x42adbd(0xe7)];})[_0x54b48f(0xf6)](({item:_0x274281})=>_0x274281);}function toMenuFact(_0x4dc22d,_0x50aab3,_0x345270){const _0x583fb4=a123_0x409e,_0x18428f=normalizeResourceValue(_0x4dc22d[_0x583fb4(0xfc)]?.[_0x583fb4(0xe2)]),_0x209d5d={'id':_0x4dc22d['id'],'parentId':_0x345270[_0x583fb4(0xe0)],'depth':_0x345270[_0x583fb4(0x10b)],'label':normalizeString(_0x4dc22d[_0x583fb4(0x103)]),'path':normalizeString(_0x4dc22d[_0x583fb4(0xf7)]),'url':normalizeString(_0x4dc22d['url']),'type':normalizeString(_0x4dc22d[_0x583fb4(0x101)]),'visible':typeof _0x4dc22d['visible']===_0x583fb4(0xed)?_0x4dc22d[_0x583fb4(0x10a)]:null,'sort':typeof _0x4dc22d[_0x583fb4(0xf9)]===_0x583fb4(0xfe)&&Number[_0x583fb4(0xe9)](_0x4dc22d[_0x583fb4(0xf9)])?_0x4dc22d['sort']:null,'resources':_0x18428f[_0x583fb4(0xea)],'resourcesValid':_0x18428f[_0x583fb4(0xf2)],'childrenIds':_0x50aab3[_0x583fb4(0xf6)](_0x238078=>_0x238078['id']),'childrenCount':_0x50aab3['length'],'pageId':normalizeNullableNumber(_0x4dc22d[_0x583fb4(0xef)]),'pageType':normalizeString(_0x4dc22d['pageType']),'modelType':normalizeString(_0x4dc22d[_0x583fb4(0xec)]),'datasetId':normalizeNullableNumber(_0x4dc22d[_0x583fb4(0xf4)]),'datasetCode':normalizeString(_0x4dc22d[_0x583fb4(0x107)]),'updateUserId':normalizeNullableString(_0x4dc22d['updateUserId']),'updateUserName':normalizeNullableString(_0x4dc22d[_0x583fb4(0xfb)]),'updateTime':normalizeNullableTimestamp(_0x4dc22d[_0x583fb4(0xf3)])};return _0x345270[_0x583fb4(0x108)]&&(_0x209d5d[_0x583fb4(0xfc)]=_0x4dc22d[_0x583fb4(0xfc)]??null),_0x209d5d;}function toHashInput(_0x1a7269){const _0x59ea10=a123_0x409e;return{'id':_0x1a7269['id'],'parentId':_0x1a7269[_0x59ea10(0xe0)],'label':_0x1a7269[_0x59ea10(0x103)],'path':_0x1a7269[_0x59ea10(0xf7)],'url':_0x1a7269['url'],'type':_0x1a7269[_0x59ea10(0x101)],'visible':_0x1a7269[_0x59ea10(0x10a)],'sort':_0x1a7269[_0x59ea10(0xf9)],'resources':_0x1a7269[_0x59ea10(0xe2)],'resourcesValid':_0x1a7269[_0x59ea10(0xe5)],'childrenIds':_0x1a7269[_0x59ea10(0x10d)],'pageId':_0x1a7269[_0x59ea10(0xef)],'pageType':_0x1a7269['pageType'],'modelType':_0x1a7269['modelType'],'datasetId':_0x1a7269['datasetId'],'datasetCode':_0x1a7269[_0x59ea10(0x107)],'updateUserId':_0x1a7269[_0x59ea10(0xdf)],'updateUserName':_0x1a7269[_0x59ea10(0xfb)],'updateTime':_0x1a7269[_0x59ea10(0xf3)]};}function normalizeSort(_0x5b4cab){const _0x3ec325=a123_0x409e;return typeof _0x5b4cab===_0x3ec325(0xfe)&&Number[_0x3ec325(0xe9)](_0x5b4cab)?_0x5b4cab:Number['POSITIVE_INFINITY'];}function normalizeString(_0x1feda5){const _0x1d8c13=a123_0x409e;return typeof _0x1feda5===_0x1d8c13(0x104)?_0x1feda5:'';}function normalizeNullableNumber(_0x125c14){const _0x2b2942=a123_0x409e;return typeof _0x125c14===_0x2b2942(0xfe)&&Number[_0x2b2942(0xe9)](_0x125c14)?_0x125c14:null;}function normalizeNullableString(_0x14e3e5){const _0x373f6f=a123_0x409e;return typeof _0x14e3e5===_0x373f6f(0x104)&&_0x14e3e5[_0x373f6f(0xee)]>0x0?_0x14e3e5:null;}function normalizeNullableTimestamp(_0xddc3e4){const _0x1e5a5a=a123_0x409e;if(typeof _0xddc3e4===_0x1e5a5a(0x104))return _0xddc3e4[_0x1e5a5a(0xee)]>0x0?_0xddc3e4:null;return typeof _0xddc3e4==='number'&&Number['isFinite'](_0xddc3e4)?_0xddc3e4:null;}export function normalizeResources(_0x42c5a1){const _0x2cd79b=a123_0x409e;return normalizeResourceValue(_0x42c5a1)[_0x2cd79b(0xea)];}function normalizeResourceValue(_0x3d0cab){const _0x138c07=a123_0x409e;if(_0x3d0cab==null)return{'values':[],'valid':!![]};if(Array[_0x138c07(0x102)](_0x3d0cab))return{'values':_0x3d0cab['map'](String),'valid':!![]};if(typeof _0x3d0cab!==_0x138c07(0x104))return{'values':[],'valid':![]};try{const _0x20feef=JSON['parse'](_0x3d0cab);return Array['isArray'](_0x20feef)?{'values':_0x20feef[_0x138c07(0xf6)](String),'valid':!![]}:{'values':[],'valid':![]};}catch{return{'values':[],'valid':![]};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x401881,_0x38e5f2){var _0x2e74de=a124_0x30cb,_0x533a73=_0x401881();while(!![]){try{var _0x2ae2c3=parseInt(_0x2e74de(0xff))/0x1*(parseInt(_0x2e74de(0x101))/0x2)+-parseInt(_0x2e74de(0x102))/0x3+parseInt(_0x2e74de(0x106))/0x4+-parseInt(_0x2e74de(0x108))/0x5+-parseInt(_0x2e74de(0x105))/0x6*(-parseInt(_0x2e74de(0x104))/0x7)+parseInt(_0x2e74de(0x103))/0x8*(parseInt(_0x2e74de(0x107))/0x9)+-parseInt(_0x2e74de(0x100))/0xa;if(_0x2ae2c3===_0x38e5f2)break;else _0x533a73['push'](_0x533a73['shift']());}catch(_0x4f885b){_0x533a73['push'](_0x533a73['shift']());}}}(a124_0x533a,0x4088a));function a124_0x533a(){var _0x5db750=['634225SJTXhZ','1zpwbdy','8273430BfiyFH','899086jsLNlz','748689vgOImq','258872UitmeS','1143751FqhYMc','12fYbdyt','825468pKvLJq','135bbfZDl'];a124_0x533a=function(){return _0x5db750;};return a124_0x533a();}export*from'../../../commands/menu/shared/types.js';export*from'../../../commands/menu/shared/logic.js';export*from'../../../commands/menu/shared/compare-table.js';export*from'../../../commands/menu/shared/inquirer.js';function a124_0x30cb(_0xe5f881,_0x8b332a){_0xe5f881=_0xe5f881-0xff;var _0x533a5a=a124_0x533a();var _0x30cb0b=_0x533a5a[_0xe5f881];return _0x30cb0b;}export*from'../../../commands/menu/shared/valid-url.js';export*from'../../../commands/menu/shared/local-pages.js';export*from'../../../commands/menu/shared/service.js';export*from'../../../commands/menu/shared/sync-core.js';export*from'../../../commands/menu/shared/update-core.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x39990b,_0xce8370){const _0x327961=a125_0x1ee6,_0x116395=_0x39990b();while(!![]){try{const _0x21f2e8=-parseInt(_0x327961(0x1d2))/0x1+parseInt(_0x327961(0x1be))/0x2*(parseInt(_0x327961(0x1c4))/0x3)+-parseInt(_0x327961(0x1d8))/0x4*(parseInt(_0x327961(0x1b5))/0x5)+-parseInt(_0x327961(0x1d7))/0x6*(parseInt(_0x327961(0x1bd))/0x7)+-parseInt(_0x327961(0x1ae))/0x8*(-parseInt(_0x327961(0x1c2))/0x9)+-parseInt(_0x327961(0x1ba))/0xa+parseInt(_0x327961(0x1ad))/0xb;if(_0x21f2e8===_0xce8370)break;else _0x116395['push'](_0x116395['shift']());}catch(_0x288c54){_0x116395['push'](_0x116395['shift']());}}}(a125_0xa26c,0x2f3f1));import a125_0x3b7312 from'chalk';function a125_0x1ee6(_0x420519,_0x39d3ea){_0x420519=_0x420519-0x1ad;const _0xa26c9d=a125_0xa26c();let _0x1ee644=_0xa26c9d[_0x420519];return _0x1ee644;}import{checkbox,input,confirm}from'@inquirer/prompts';import a125_0x259939 from'ora';import{isUrlReachable}from'../../../commands/menu/shared/valid-url.js';import{CliErrors}from'../../../errors.js';function onCancel(_0x3228f6){const _0x3b0eb8=a125_0x1ee6;return _0x3228f6[_0x3b0eb8(0x1b0)](_0x56321d=>{const _0x27a497=_0x3b0eb8;if(_0x56321d?.[_0x27a497(0x1c9)]===_0x27a497(0x1b3))throw CliErrors[_0x27a497(0x1d4)](_0x27a497(0x1af));throw _0x56321d;});}export function startSpinner(_0x42d594){const _0x42d9c5=a125_0x1ee6;return a125_0x259939({'text':_0x42d594,'color':_0x42d9c5(0x1d0)})['start']();}export function stopSpinner(_0xa4b279,_0x1c320e,_0x13092e){const _0x2a1d37=a125_0x1ee6;_0x13092e?_0xa4b279[_0x2a1d37(0x1d5)](_0x1c320e):_0xa4b279[_0x2a1d37(0x1b2)](_0x1c320e);}function a125_0xa26c(){const _0x75d78d=['\x20\x20CSS\x20URL:','gray','[already\x20on\x20platform]','name','No\x20menus\x20selected.','trim','\x20\x20JS\x20URL:','red','map','\x20\x20✗\x20CSS\x20URL\x20is\x20unreachable','cyan','includes','129688JAbcIa','green','cancelled','succeed','CSS\x20URL\x20check\x20failed','60cMctSc','157972rBwsZi','6073661pTtFpN','1979528bBLLsN','Cancelled.','catch','JS\x20URL\x20check\x20failed','fail','ExitPromptError','length','25JLeDfl','isTTY','stdin','error','\x20\x20Select\x20menus\x20to\x20sync\x20(space\x20to\x20toggle,\x20a=all,\x20i=invert):','2299960oLPzRX','has','Use\x20--yes\x20to\x20run\x20in\x20non-interactive\x20mode,\x20or\x20pipe\x20data\x20via\x20--params.','165760jtKIuY','2076LPdZSS','label','No\x20local\x20pages\x20found.','[new]','9GdBvro','\x20\x20✗\x20JS\x20URL\x20is\x20unreachable','543jCPMmX','path'];a125_0xa26c=function(){return _0x75d78d;};return a125_0xa26c();}export async function askConfirm(_0x22c338){return onCancel(confirm({'message':_0x22c338,'theme':{'prefix':''}}));}export async function askJsUrl(_0xef4b2e){const _0x436607=a125_0x1ee6;while(!![]){const _0x31cded=await onCancel(input({'message':_0x436607(0x1cc),'default':_0xef4b2e,'theme':{'prefix':''}}));if(_0x31cded['trim']()==='')throw CliErrors['cancelled']('Cancelled.');if(!/^https:\/\/.+\.js(\?.*)?$/['test'](_0x31cded['trim']())){console[_0x436607(0x1b8)](a125_0x3b7312[_0x436607(0x1cd)]('\x20\x20✗\x20JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL'));continue;}const _0x3c05f2=startSpinner('\x20\x20Checking\x20JS\x20URL\x20reachability...');try{const _0xb6fd10=await isUrlReachable(_0x31cded[_0x436607(0x1cb)]());stopSpinner(_0x3c05f2,'JS\x20URL\x20checked',_0xb6fd10);if(!_0xb6fd10){console[_0x436607(0x1b8)](a125_0x3b7312[_0x436607(0x1cd)](_0x436607(0x1c3)));continue;}return _0x31cded[_0x436607(0x1cb)]();}catch(_0x2c89da){stopSpinner(_0x3c05f2,_0x436607(0x1b1),![]);throw _0x2c89da;}}}export async function askCssUrl(_0x1012c3){const _0x40e1d5=a125_0x1ee6;while(!![]){const _0x8a7d84=await onCancel(input({'message':_0x40e1d5(0x1c6),'default':_0x1012c3,'theme':{'prefix':''}}));if(_0x8a7d84[_0x40e1d5(0x1cb)]()==='')throw CliErrors[_0x40e1d5(0x1d4)](_0x40e1d5(0x1af));if(!/^https:\/\/.+\.css(\?.*)?$/['test'](_0x8a7d84['trim']())){console[_0x40e1d5(0x1b8)](a125_0x3b7312[_0x40e1d5(0x1cd)]('\x20\x20✗\x20CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL'));continue;}const _0x4bfc05=startSpinner('\x20\x20Checking\x20CSS\x20URL\x20reachability...');try{const _0x265505=await isUrlReachable(_0x8a7d84[_0x40e1d5(0x1cb)]());stopSpinner(_0x4bfc05,'CSS\x20URL\x20checked',_0x265505);if(!_0x265505){console[_0x40e1d5(0x1b8)](a125_0x3b7312[_0x40e1d5(0x1cd)](_0x40e1d5(0x1cf)));continue;}return _0x8a7d84[_0x40e1d5(0x1cb)]();}catch(_0x554ecf){stopSpinner(_0x4bfc05,_0x40e1d5(0x1d6),![]);throw _0x554ecf;}}}export async function selectPages(_0x3bead7,_0x1d2d0a){const _0x5b17a4=a125_0x1ee6,_0x4d63fc=_0x3bead7[_0x5b17a4(0x1ce)](_0x5027af=>{const _0x7a2885=_0x5b17a4,_0x574c0d=_0x1d2d0a[_0x7a2885(0x1bb)](_0x5027af[_0x7a2885(0x1c5)]);return{'name':_0x5027af[_0x7a2885(0x1bf)]+'\x20\x20'+a125_0x3b7312[_0x7a2885(0x1c7)](_0x5027af['path'])+'\x20\x20'+(_0x574c0d?a125_0x3b7312[_0x7a2885(0x1c7)](_0x7a2885(0x1c8)):a125_0x3b7312[_0x7a2885(0x1d3)](_0x7a2885(0x1c1))),'value':_0x5027af['path'],'checked':!_0x574c0d,'disabled':_0x574c0d};});if(_0x4d63fc[_0x5b17a4(0x1b4)]===0x0)throw new Error(_0x5b17a4(0x1c0));const _0x2d0eb1=await onCancel(checkbox({'message':_0x5b17a4(0x1b9),'choices':_0x4d63fc,'loop':![],'theme':{'prefix':''}}));if(_0x2d0eb1[_0x5b17a4(0x1b4)]===0x0)throw new Error(_0x5b17a4(0x1ca));return _0x3bead7['filter'](_0x146330=>_0x2d0eb1[_0x5b17a4(0x1d1)](_0x146330['path']));}export function isInteractive(){const _0x5cece9=a125_0x1ee6;return process[_0x5cece9(0x1b7)][_0x5cece9(0x1b6)]===!![];}export function requireInteractive(){const _0x3ecd04=a125_0x1ee6;if(!isInteractive())throw new Error('This\x20command\x20requires\x20an\x20interactive\x20terminal.\x20'+_0x3ecd04(0x1bc));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a126_0x27d7d4=a126_0x4a30;(function(_0x1c7c36,_0x3ecbfc){const _0x3229ac=a126_0x4a30,_0x49c316=_0x1c7c36();while(!![]){try{const _0x298552=-parseInt(_0x3229ac(0x9b))/0x1+parseInt(_0x3229ac(0x93))/0x2*(parseInt(_0x3229ac(0x8c))/0x3)+parseInt(_0x3229ac(0x8b))/0x4+parseInt(_0x3229ac(0x96))/0x5*(parseInt(_0x3229ac(0x9a))/0x6)+parseInt(_0x3229ac(0xa2))/0x7*(parseInt(_0x3229ac(0xa3))/0x8)+-parseInt(_0x3229ac(0x9f))/0x9+parseInt(_0x3229ac(0x8a))/0xa*(-parseInt(_0x3229ac(0xa1))/0xb);if(_0x298552===_0x3ecbfc)break;else _0x49c316['push'](_0x49c316['shift']());}catch(_0x126630){_0x49c316['push'](_0x49c316['shift']());}}}(a126_0x3ac7,0x587cf));import{readdirSync,statSync,readFileSync}from'fs';import{join,relative,resolve,sep}from'path';function a126_0x3ac7(){const _0x3f240f=['.tsx','replace','840810tCmOHT','\x5c.displayName\x5cs*=\x5cs*[\x22\x27]([^\x22\x27]+)[\x22\x27]','replaceAll','src/pages','6cPqpFL','567904vxudFF','trim','match','utf-8','3311775SrNlBE','concat','20251VDpMBJ','224WpBVcl','45728pGoUSo','join','filter','1030nqqHkv','1898976gNeXEp','3NVKThX','path','endsWith','forEach','split','isDirectory','index.tsx','1324262tGixqD'];a126_0x3ac7=function(){return _0x3f240f;};return a126_0x3ac7();}function a126_0x4a30(_0x48614d,_0x448415){_0x48614d=_0x48614d-0x8a;const _0x3ac7ac=a126_0x3ac7();let _0x4a3079=_0x3ac7ac[_0x48614d];return _0x4a3079;}const pagesDir=resolve(process['cwd'](),a126_0x27d7d4(0x99));export function extractTitleFromComment(_0xd5ec03){const _0x4c3ea0=a126_0x27d7d4;try{const _0x1785bb=readFileSync(_0xd5ec03,_0x4c3ea0(0x9e)),_0x3a2962=_0x1785bb['match'](/^\s*\/\*\*?([\s\S]*?)\*\//);if(_0x3a2962&&_0x3a2962[0x1]){const _0x5ad94a=_0x3a2962[0x1],_0x45d1b0=_0x5ad94a['match'](/^\s*\*?\s*title\s*:\s*(.+)/im);if(_0x45d1b0&&_0x45d1b0[0x1])return _0x45d1b0[0x1][_0x4c3ea0(0x9c)]();}let _0x428176=null;const _0x359ce9=_0x1785bb[_0x4c3ea0(0x9d)](/export\s+default\s+([A-Z][a-zA-Z0-9]*)/);_0x359ce9&&_0x359ce9[0x1]&&(_0x428176=_0x359ce9[0x1]);if(!_0x428176){const _0x98cdcc=_0x1785bb[_0x4c3ea0(0x9d)](/export\s+default\s+function\s+([A-Z][a-zA-Z0-9]*)/);_0x98cdcc&&_0x98cdcc[0x1]&&(_0x428176=_0x98cdcc[0x1]);}if(_0x428176){const _0x8c6fd1=new RegExp('\x5cb'+_0x428176+_0x4c3ea0(0x97)),_0xeb6f2e=_0x1785bb[_0x4c3ea0(0x9d)](_0x8c6fd1);if(_0xeb6f2e&&_0xeb6f2e[0x1])return _0xeb6f2e[0x1];return _0x428176;}return null;}catch(_0x1e3f79){return null;}}export function getLocalPages(_0x16cbeb=pagesDir,_0x1cddf5=pagesDir){const _0x29e987=a126_0x27d7d4;let _0x46cfd8=[];const _0xd24e82=readdirSync(_0x16cbeb);return _0xd24e82[_0x29e987(0x8f)](_0x56491d=>{const _0x3187f9=_0x29e987,_0x4ca265=join(_0x16cbeb,_0x56491d),_0x8be01d=statSync(_0x4ca265);if(_0x8be01d&&_0x8be01d[_0x3187f9(0x91)]())_0x46cfd8=_0x46cfd8[_0x3187f9(0xa0)](getLocalPages(_0x4ca265,_0x1cddf5));else{if(_0x56491d['endsWith'](_0x3187f9(0x94))){let _0x5ba542=relative(_0x1cddf5,_0x4ca265);_0x5ba542[_0x3187f9(0x8e)](_0x3187f9(0x92))?_0x5ba542=_0x5ba542[_0x3187f9(0x95)](/index\.tsx$/,''):_0x5ba542=_0x5ba542[_0x3187f9(0x95)](/\.tsx$/,'');_0x5ba542[_0x3187f9(0x8e)](sep)&&(_0x5ba542=_0x5ba542['slice'](0x0,-0x1));const _0x5e1c4d=_0x5ba542[_0x3187f9(0x90)](sep)[_0x3187f9(0xa4)]('/'),_0x3d9f7b=extractTitleFromComment(_0x4ca265),_0x54bfae=_0x3d9f7b||_0x5e1c4d;_0x46cfd8['push']({'path':_0x5e1c4d[_0x3187f9(0x98)]('$',':'),'label':_0x54bfae});}}}),_0x46cfd8[_0x29e987(0xa5)](_0x41d7e6=>_0x41d7e6[_0x29e987(0x8d)]!=='');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1ea76c,_0x3091de){const _0x2b9a3a=a127_0x4ea1,_0x248d81=_0x1ea76c();while(!![]){try{const _0x514cc9=-parseInt(_0x2b9a3a(0x13f))/0x1+parseInt(_0x2b9a3a(0x142))/0x2+-parseInt(_0x2b9a3a(0x14d))/0x3+-parseInt(_0x2b9a3a(0x146))/0x4+-parseInt(_0x2b9a3a(0x150))/0x5+parseInt(_0x2b9a3a(0x145))/0x6+parseInt(_0x2b9a3a(0x140))/0x7*(parseInt(_0x2b9a3a(0x143))/0x8);if(_0x514cc9===_0x3091de)break;else _0x248d81['push'](_0x248d81['shift']());}catch(_0x11942b){_0x248d81['push'](_0x248d81['shift']());}}}(a127_0x6b62,0x46d76));import{getLocalPages}from'../../../commands/menu/shared/local-pages.js';import{getOnlineMenuList,createMenus}from'../../../commands/menu/shared/service.js';import{isUrlReachable,isValidCssHttpsUrl,isValidJsHttpsUrl}from'../../../commands/menu/shared/valid-url.js';export function validateJsUrl(_0x5f1a39){const _0x1a8f7d=a127_0x4ea1,_0x1c4986=[];return!isValidJsHttpsUrl(_0x5f1a39)&&_0x1c4986[_0x1a8f7d(0x148)](_0x1a8f7d(0x14a)),{'ok':_0x1c4986[_0x1a8f7d(0x14e)]===0x0,'errors':_0x1c4986};}export function validateCssUrl(_0x309f87){const _0x4c960c=a127_0x4ea1,_0x384373=[];return!isValidCssHttpsUrl(_0x309f87)&&_0x384373[_0x4c960c(0x148)](_0x4c960c(0x147)),{'ok':_0x384373[_0x4c960c(0x14e)]===0x0,'errors':_0x384373};}function a127_0x4ea1(_0x4d80b7,_0x3e2167){_0x4d80b7=_0x4d80b7-0x13e;const _0x6b62ce=a127_0x6b62();let _0x4ea1b9=_0x6b62ce[_0x4d80b7];return _0x4ea1b9;}export async function validateJsUrlReachable(_0x2632ec){const _0x377360=a127_0x4ea1,_0x2c361e=validateJsUrl(_0x2632ec);if(!_0x2c361e['ok'])return _0x2c361e;const _0x4e5325=await isUrlReachable(_0x2632ec);if(!_0x4e5325)_0x2c361e[_0x377360(0x149)][_0x377360(0x148)]('JS\x20URL\x20is\x20unreachable');return{'ok':_0x2c361e['errors'][_0x377360(0x14e)]===0x0,'errors':_0x2c361e[_0x377360(0x149)]};}export async function validateCssUrlReachable(_0x11e51a){const _0x52feb7=a127_0x4ea1,_0x561625=validateCssUrl(_0x11e51a);if(!_0x561625['ok'])return _0x561625;const _0x627b39=await isUrlReachable(_0x11e51a);if(!_0x627b39)_0x561625[_0x52feb7(0x149)]['push'](_0x52feb7(0x13e));return{'ok':_0x561625[_0x52feb7(0x149)][_0x52feb7(0x14e)]===0x0,'errors':_0x561625[_0x52feb7(0x149)]};}export function buildCompareRows(_0x2e9576,_0x538058){const _0x39da8e=a127_0x4ea1;return _0x2e9576[_0x39da8e(0x14b)](_0xa59ef1=>({'label':_0xa59ef1[_0x39da8e(0x14c)],'path':_0xa59ef1[_0x39da8e(0x141)],'local':!![],'online':_0x538058[_0x39da8e(0x14f)](_0xa59ef1['path'])}));}export async function doCreateMenus(_0x1500e1,_0x551a38,_0x16a58c,_0x49956a){const _0x258642=a127_0x4ea1,_0x250ee5=await createMenus(_0x1500e1,_0x551a38,_0x16a58c,_0x49956a);return{'created':_0x250ee5[_0x258642(0x14e)],'failed':0x0,'labels':_0x16a58c[_0x258642(0x14b)](_0x35579f=>_0x35579f[_0x258642(0x14c)]),'menus':_0x250ee5};}export function filterMenusWithResources(_0x25d0f6){const _0x54c74f=a127_0x4ea1;return _0x25d0f6[_0x54c74f(0x144)](_0xe46d19=>_0xe46d19['resources']['length']>0x0);}function a127_0x6b62(){const _0xd1e6fd=['label','1278225fceYoL','length','has','638855eBqqjz','CSS\x20URL\x20is\x20unreachable','354487GNSfpE','7nJlJtu','path','32198kCRQTr','10903408srQhJk','filter','372144CrZXth','970200jgBEQo','CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','push','errors','JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','map'];a127_0x6b62=function(){return _0xd1e6fd;};return a127_0x6b62();}export async function fetchMenuData(_0x59cff4,_0x155531){const _0x23e8ef=a127_0x4ea1,_0x5451f9=getLocalPages(),_0x111870=await getOnlineMenuList(_0x59cff4,_0x155531),_0xadf5d=new Set(_0x111870[_0x23e8ef(0x14b)](_0x294450=>_0x294450[_0x23e8ef(0x141)]));return{'localPages':_0x5451f9,'onlineMenuList':_0x111870,'onlinePaths':_0xadf5d};}export async function fetchOnlineMenuList(_0x4103f7,_0x26628e){return getOnlineMenuList(_0x4103f7,_0x26628e);}
|
|
@@ -16,10 +16,10 @@ export declare function fetchMutationSnapshot(ctx: RuntimeContext & {
|
|
|
16
16
|
appCode: string;
|
|
17
17
|
cookie: string;
|
|
18
18
|
}, operation: string, targetId?: number): Promise<MenuSnapshot>;
|
|
19
|
-
export declare function recheckMutationSnapshot(ctx: RuntimeContext & {
|
|
19
|
+
export declare function recheckMutationSnapshot<TTarget = MenuFact>(ctx: RuntimeContext & {
|
|
20
20
|
appCode: string;
|
|
21
21
|
cookie: string;
|
|
22
|
-
}, plan: MenuMutationResult
|
|
22
|
+
}, plan: MenuMutationResult<TTarget>, operation: string, targetId?: number): Promise<MenuSnapshot>;
|
|
23
23
|
export declare function parseParentId(ctx: RuntimeContext, flagName: string, options?: {
|
|
24
24
|
required?: boolean;
|
|
25
25
|
}): number | null | undefined;
|
|
@@ -27,7 +27,7 @@ export declare function requireMenu(snapshot: MenuSnapshot, id: number): MenuFac
|
|
|
27
27
|
export declare function requireFolder(snapshot: MenuSnapshot, id: number): MenuFact;
|
|
28
28
|
export declare function assertExpectedState(ctx: RuntimeContext, menu: MenuFact): void;
|
|
29
29
|
export declare function assertVerified(condition: boolean, message: string, hint?: string): asserts condition;
|
|
30
|
-
export declare function mutationResult(input: {
|
|
30
|
+
export declare function mutationResult<TTarget = MenuFact>(input: {
|
|
31
31
|
operation: string;
|
|
32
32
|
selector: Record<string, unknown>;
|
|
33
33
|
before: MenuMutationResult["before"];
|
|
@@ -35,7 +35,7 @@ export declare function mutationResult(input: {
|
|
|
35
35
|
dryRun: boolean;
|
|
36
36
|
backend: MenuMutationResult["backend"];
|
|
37
37
|
plannedActions?: MenuMutationResult["plannedActions"];
|
|
38
|
-
targets?: MenuMutationResult["targets"];
|
|
38
|
+
targets?: MenuMutationResult<TTarget>["targets"];
|
|
39
39
|
deleteOrder?: MenuMutationResult["deleteOrder"];
|
|
40
40
|
snapshotHash: string;
|
|
41
41
|
cascade?: MenuMutationResult["cascade"];
|
|
@@ -45,12 +45,13 @@ export declare function mutationResult(input: {
|
|
|
45
45
|
warnings?: string[];
|
|
46
46
|
verification?: Record<string, unknown>;
|
|
47
47
|
error?: MenuMutationError;
|
|
48
|
-
}): MenuMutationResult
|
|
49
|
-
export declare function menuDryRunResult(plan: MenuMutationResult
|
|
50
|
-
export declare function menuFailure(error: CliError, plan: MenuMutationResult
|
|
48
|
+
}): MenuMutationResult<TTarget>;
|
|
49
|
+
export declare function menuDryRunResult<TTarget = MenuFact>(plan: MenuMutationResult<TTarget>, request: DryRunResult): DryRunResult & MenuMutationResult<TTarget>;
|
|
50
|
+
export declare function menuFailure<TTarget = MenuFact>(error: CliError, plan: MenuMutationResult<TTarget>, input: {
|
|
51
51
|
stage: string;
|
|
52
52
|
succeeded?: Array<Record<string, unknown>>;
|
|
53
53
|
failed?: Record<string, unknown>;
|
|
54
|
+
failedRecords?: Array<Record<string, unknown>>;
|
|
54
55
|
warnings?: string[];
|
|
55
56
|
verification?: Record<string, unknown>;
|
|
56
57
|
after?: MenuMutationResult["after"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a128_0x2ae394=a128_0xb4fb;(function(_0x12c3a7,_0x20b8d6){const _0x1fb58c=a128_0xb4fb,_0x3a25e4=_0x12c3a7();while(!![]){try{const _0x632cf2=-parseInt(_0x1fb58c(0xe8))/0x1*(parseInt(_0x1fb58c(0xe2))/0x2)+parseInt(_0x1fb58c(0xc0))/0x3+-parseInt(_0x1fb58c(0xb4))/0x4+parseInt(_0x1fb58c(0xbc))/0x5*(parseInt(_0x1fb58c(0xca))/0x6)+parseInt(_0x1fb58c(0xcb))/0x7+parseInt(_0x1fb58c(0xad))/0x8*(parseInt(_0x1fb58c(0xda))/0x9)+parseInt(_0x1fb58c(0xd0))/0xa;if(_0x632cf2===_0x20b8d6)break;else _0x3a25e4['push'](_0x3a25e4['shift']());}catch(_0x4bcbe2){_0x3a25e4['push'](_0x3a25e4['shift']());}}}(a128_0x5e70,0xd64ba));function a128_0xb4fb(_0x1bd8d2,_0x590a93){_0x1bd8d2=_0x1bd8d2-0xad;const _0x5e70fe=a128_0x5e70();let _0xb4fb45=_0x5e70fe[_0x1bd8d2];return _0xb4fb45;}import{CliError,CliErrors}from'../../../errors.js';import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';export const MAX_MENU_SORT=0x7fffffff;export const MENU_ID_FLAG={'name':'id','type':a128_0x2ae394(0xb7),'required':!![],'description':a128_0x2ae394(0x10d)};export const MENU_SORT_FLAG={'name':'sort','type':a128_0x2ae394(0xb7),'description':'Sibling\x20sort\x20value\x20(non-negative\x20integer)'};export const MENU_PARENT_ID_FLAG={'name':a128_0x2ae394(0x10f),'type':a128_0x2ae394(0xb2),'description':a128_0x2ae394(0x106)};export const MENU_EXPECT_PARENT_ID_FLAG={'name':a128_0x2ae394(0xe1),'type':a128_0x2ae394(0xb2),'description':a128_0x2ae394(0xd8)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a128_0x2ae394(0x102),'type':a128_0x2ae394(0xb2),'description':a128_0x2ae394(0xee)},{'name':a128_0x2ae394(0x100),'type':a128_0x2ae394(0xb7),'description':'Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches'}];export function validateExactId(_0x334086){const _0x5e082e=a128_0x2ae394,_0x5251bc=_0x334086['num']('id');if(!Number[_0x5e082e(0xea)](_0x5251bc)||_0x5251bc<=0x0)throw CliErrors['validation'](_0x5e082e(0xd4));return _0x5251bc;}export function validateSort(_0x2a5c6a,_0x54798b='sort'){const _0x34fc56=a128_0x2ae394;if(!hasFlag(_0x2a5c6a,_0x54798b))return undefined;const _0x5cebda=_0x2a5c6a[_0x34fc56(0xf0)](_0x54798b);if(!Number[_0x34fc56(0xea)](_0x5cebda)||_0x5cebda<0x0||_0x5cebda>MAX_MENU_SORT)throw menuError(_0x34fc56(0xdc),'--'+_0x54798b+_0x34fc56(0xbb)+MAX_MENU_SORT+'.',_0x34fc56(0xf6));return _0x5cebda;}export function nextSiblingSort(_0x3003a6,_0x411a7e,_0x4089e6){const _0x3990a7=a128_0x2ae394,_0x58cf28=getChildren(_0x3003a6,_0x411a7e)[_0x3990a7(0xc1)](_0x151f46=>_0x151f46['sort'])['filter'](_0x1969e4=>typeof _0x1969e4===_0x3990a7(0xb7));if(_0x58cf28[_0x3990a7(0xbf)]===0x0)return 0x0;const _0x120307=Math['max'](..._0x58cf28);if(_0x120307>=MAX_MENU_SORT)throw menuError(_0x3990a7(0x108),_0x3990a7(0x104)+_0x4089e6+_0x3990a7(0xe0)+_0x120307+'.','Reorder\x20sibling\x20menus\x20below\x20'+MAX_MENU_SORT+_0x3990a7(0xc8));return _0x120307+0x1;}export function requireExplicitYes(_0x4f7282){const _0x139a74=a128_0x2ae394;if(_0x4f7282[_0x139a74(0xaf)](_0x139a74(0xe3)))return;if(!_0x4f7282[_0x139a74(0xaf)](_0x139a74(0xe9)))throw menuError(_0x139a74(0x107),_0x139a74(0xce),'Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.');}export async function fetchMutationSnapshot(_0xe28d76,_0x330d30,_0x180630){const _0x16b141=a128_0x2ae394;try{return await fetchMenuSnapshot(_0xe28d76['appCode'],_0xe28d76[_0x16b141(0xd9)]);}catch(_0xe3ba0c){throw mapMenuApiError(_0xe3ba0c,'read\x20online\x20menu\x20facts\x20before\x20'+_0x330d30,_0x180630);}}export async function recheckMutationSnapshot(_0x1498ca,_0x15950,_0x2883ad,_0x561d9a){const _0x411aed=a128_0x2ae394;let _0x5aeb39;try{_0x5aeb39=await fetchMenuSnapshot(_0x1498ca[_0x411aed(0xbd)],_0x1498ca[_0x411aed(0xd9)]);}catch(_0x32b5d3){const _0x2253ed=mapMenuApiError(_0x32b5d3,_0x411aed(0xf8)+_0x2883ad,_0x561d9a);throw menuFailure(_0x2253ed,_0x15950,{'stage':_0x411aed(0xfc),'failed':_0x561d9a==null?{}:{'id':_0x561d9a}});}if(_0x5aeb39[_0x411aed(0xf1)]!==_0x15950['snapshotHash']){const _0x655623=menuError(_0x411aed(0xfe),_0x411aed(0xf9)+_0x2883ad+';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.',_0x411aed(0xe5));throw menuFailure(_0x655623,_0x15950,{'stage':_0x411aed(0xfc),'failed':{..._0x561d9a==null?{}:{'id':_0x561d9a},'expectedSnapshotHash':_0x15950['snapshotHash'],'currentSnapshotHash':_0x5aeb39[_0x411aed(0xf1)]}});}return _0x5aeb39;}function a128_0x5e70(){const _0x47ba64=['childrenCount','before','Exact\x20online\x20menu\x20id','get','parent-id','dryRun','The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.','Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.','after','prototype','stringify','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','9561368HGKAwU','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.','bool','Menu\x20','trim','string','Permission\x20denied\x20while\x20attempting\x20to\x20','6871704OaTIOT','type','defineProperty','number','deleteOrder','rawFlags',',\x20current\x20','\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20','225945FsjWrh','appCode','operation','length','4241187gbpkGS','map','error','succeeded','--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.','selector','Online\x20menu\x20not\x20found:\x20','api_error',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','message','18jdgZkC','2869132CFRUGZ','menu_parent_not_folder','flagMissing','This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','plannedActions','1688820jsMhlf','code','test','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.','warnings','failed','Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','cookie','9kduyHi','stage','menu_sort_invalid','\x20menu\x20','required','menu_permission_denied','\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20','expect-parent-id','78QhbNgy','dry-run','\x20path\x20changed:\x20expected\x20','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.','parentId','menu_verification_failed','18655kINyyS','yes','isSafeInteger','backend','str','menu_not_found','Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches','byId','num','hash','planFile','hasOwnProperty','menu_mutation_failed','path','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','folder','recheck\x20online\x20menu\x20facts\x20before\x20','Online\x20menu\x20state\x20changed\x20before\x20','snapshotHash','cascade','pre-write-recheck','root','menu_state_drift','toLowerCase','expected-children-count','verification','expect-path','validation','Cannot\x20append\x20a\x20','hint','Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node','menu_confirmation_required','menu_sort_overflow','\x20parent\x20changed:\x20expected\x20','targets'];a128_0x5e70=function(){return _0x47ba64;};return a128_0x5e70();}export function parseParentId(_0x29d3e2,_0x389ab5,_0x3bc649={}){const _0x5438ae=a128_0x2ae394;if(!hasFlag(_0x29d3e2,_0x389ab5)){if(_0x3bc649[_0x5438ae(0xde)])throw CliErrors[_0x5438ae(0xcd)](_0x389ab5);return undefined;}const _0x3f9e6b=_0x29d3e2[_0x5438ae(0xec)](_0x389ab5)[_0x5438ae(0xb1)]();if(_0x3f9e6b[_0x5438ae(0xff)]()===_0x5438ae(0xfd))return null;if(!/^\d+$/['test'](_0x3f9e6b))throw CliErrors['validation']('--'+_0x389ab5+'\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.');const _0x51128d=Number(_0x3f9e6b);if(!Number[_0x5438ae(0xea)](_0x51128d)||_0x51128d<=0x0)throw CliErrors[_0x5438ae(0x103)]('--'+_0x389ab5+_0x5438ae(0x116));return _0x51128d;}export function requireMenu(_0x518661,_0x268000){const _0x50be39=a128_0x2ae394,_0x1ef188=_0x518661[_0x50be39(0xef)][_0x50be39(0x10e)](_0x268000);if(!_0x1ef188)throw menuError(_0x50be39(0xed),_0x50be39(0xc6)+_0x268000,_0x50be39(0xae));return _0x1ef188;}export function requireFolder(_0x457b9c,_0x3fd674){const _0x485880=a128_0x2ae394,_0x516b23=requireMenu(_0x457b9c,_0x3fd674);if(_0x516b23[_0x485880(0xb5)]!==_0x485880(0xf7))throw menuError(_0x485880(0xcc),_0x485880(0xb0)+_0x3fd674+'\x20is\x20type\x20\x22'+(_0x516b23[_0x485880(0xb5)]||'unknown')+'\x22,\x20not\x20folder.','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.');return _0x516b23;}export function assertExpectedState(_0x5a7470,_0x47b4cc){const _0x2c321c=a128_0x2ae394;if(hasFlag(_0x5a7470,_0x2c321c(0xe1))){const _0x5156ca=parseParentId(_0x5a7470,_0x2c321c(0xe1),{'required':!![]});if(_0x47b4cc[_0x2c321c(0xe6)]!==_0x5156ca)throw stateDrift(_0x2c321c(0xb0)+_0x47b4cc['id']+_0x2c321c(0x109)+formatParent(_0x5156ca)+_0x2c321c(0xba)+formatParent(_0x47b4cc[_0x2c321c(0xe6)])+'.');}if(hasFlag(_0x5a7470,'expect-path')){const _0x3a20da=_0x5a7470[_0x2c321c(0xec)](_0x2c321c(0x102));if(_0x47b4cc[_0x2c321c(0xf5)]!==_0x3a20da)throw stateDrift(_0x2c321c(0xb0)+_0x47b4cc['id']+_0x2c321c(0xe4)+JSON[_0x2c321c(0x115)](_0x3a20da)+_0x2c321c(0xba)+JSON[_0x2c321c(0x115)](_0x47b4cc[_0x2c321c(0xf5)])+'.');}if(hasFlag(_0x5a7470,_0x2c321c(0x100))){const _0x3e05da=_0x5a7470[_0x2c321c(0xf0)](_0x2c321c(0x100));if(!Number[_0x2c321c(0xea)](_0x3e05da)||_0x3e05da<0x0)throw CliErrors[_0x2c321c(0x103)](_0x2c321c(0xc4));if(_0x47b4cc[_0x2c321c(0x10b)]!==_0x3e05da)throw stateDrift(_0x2c321c(0xb0)+_0x47b4cc['id']+'\x20child\x20count\x20changed:\x20expected\x20'+_0x3e05da+_0x2c321c(0xba)+_0x47b4cc[_0x2c321c(0x10b)]+'.');}}export function assertVerified(_0x4bfd30,_0x2082cb,_0x4d1b9f=a128_0x2ae394(0xd3)){if(!_0x4bfd30)throw menuError('menu_verification_failed',_0x2082cb,_0x4d1b9f);}export function mutationResult(_0x1b75f9){const _0x4625dc=a128_0x2ae394;return{'operation':_0x1b75f9[_0x4625dc(0xbe)],'selector':_0x1b75f9[_0x4625dc(0xc5)],'before':_0x1b75f9[_0x4625dc(0x10c)],'after':_0x1b75f9[_0x4625dc(0x113)],'dryRun':_0x1b75f9[_0x4625dc(0x110)],'backend':_0x1b75f9[_0x4625dc(0xeb)],..._0x1b75f9['plannedActions']?{'plannedActions':_0x1b75f9[_0x4625dc(0xcf)]}:{},..._0x1b75f9[_0x4625dc(0x10a)]?{'targets':_0x1b75f9[_0x4625dc(0x10a)]}:{},..._0x1b75f9[_0x4625dc(0xb8)]?{'deleteOrder':_0x1b75f9[_0x4625dc(0xb8)]}:{},'snapshotHash':_0x1b75f9[_0x4625dc(0xfa)],..._0x1b75f9[_0x4625dc(0xfb)]?{'cascade':_0x1b75f9[_0x4625dc(0xfb)]}:{},..._0x1b75f9['planFile']?{'planFile':_0x1b75f9[_0x4625dc(0xf2)]}:{},'succeeded':_0x1b75f9[_0x4625dc(0xc3)]??[],'failed':_0x1b75f9[_0x4625dc(0xd6)]??[],'warnings':_0x1b75f9[_0x4625dc(0xd5)]??[],'verification':_0x1b75f9['verification'],'error':_0x1b75f9[_0x4625dc(0xc2)]};}export function menuDryRunResult(_0x49a6af,_0x3865dc){return{..._0x49a6af,..._0x3865dc};}export function menuFailure(_0x93f2f,_0xf5ba00,_0x39c066){const _0x5b756e=a128_0x2ae394,_0x3e43ee=mutationResult({..._0xf5ba00,'after':_0x39c066[_0x5b756e(0x113)]===undefined?_0xf5ba00[_0x5b756e(0x113)]:_0x39c066[_0x5b756e(0x113)],'backend':_0x39c066['backend']??_0xf5ba00[_0x5b756e(0xeb)],'dryRun':![],'succeeded':_0x39c066['succeeded']??[],'failed':[{..._0x39c066['failed']??{},'stage':_0x39c066[_0x5b756e(0xdb)],'code':_0x93f2f[_0x5b756e(0xd1)],'message':_0x93f2f[_0x5b756e(0xc9)]}],'warnings':[..._0xf5ba00[_0x5b756e(0xd5)],..._0x39c066[_0x5b756e(0xd5)]??[]],'verification':_0x39c066[_0x5b756e(0x101)],'error':{'code':_0x93f2f['code'],'message':_0x93f2f[_0x5b756e(0xc9)],..._0x93f2f[_0x5b756e(0x105)]?{'hint':_0x93f2f[_0x5b756e(0x105)]}:{}}});return Object[_0x5b756e(0xb6)](_0x93f2f,'data',{'value':_0x3e43ee,'enumerable':!![],'configurable':!![]}),_0x93f2f;}export function asVerificationError(_0xbd4cb4,_0x41b96a){const _0x32fafb=a128_0x2ae394;if(_0xbd4cb4 instanceof CliError&&_0xbd4cb4[_0x32fafb(0xd1)]==='menu_verification_failed')return _0xbd4cb4;const _0x2508c2=_0xbd4cb4 instanceof Error?_0xbd4cb4[_0x32fafb(0xc9)]:String(_0xbd4cb4);return menuError(_0x32fafb(0xe7),''+_0x41b96a+(_0x2508c2?':\x20'+_0x2508c2:''),_0x32fafb(0x111));}export function describeMenuErrorCause(_0x58c844,_0x4b6e74,_0x1a0c5c){const _0x1b9dc7=a128_0x2ae394,_0x4956a7=mapMenuApiError(_0x58c844,_0x4b6e74,_0x1a0c5c);return{'causeCode':_0x4956a7[_0x1b9dc7(0xd1)],'causeMessage':_0x4956a7[_0x1b9dc7(0xc9)]};}export function hasFlag(_0x3761c1,_0x743c12){const _0x17b69f=a128_0x2ae394;return Object[_0x17b69f(0x114)][_0x17b69f(0xf3)]['call'](_0x3761c1['rawFlags'],_0x743c12)&&_0x3761c1[_0x17b69f(0xb9)][_0x743c12]!==undefined;}export function toApiParentId(_0x59e32d){return _0x59e32d??0x0;}export function formatParent(_0x28cd87){return _0x28cd87==null?'root':String(_0x28cd87);}export function menuError(_0x5bdc92,_0x115729,_0x5b21a){return new CliError(_0x5bdc92,0x1,_0x115729,_0x5b21a);}export function mapMenuApiError(_0x76d954,_0x34888a,_0x2baabe){const _0x17a0df=a128_0x2ae394;if(_0x76d954 instanceof CliError&&_0x76d954[_0x17a0df(0xd1)]!==_0x17a0df(0xc7))return _0x76d954;const _0x1ec9e5=_0x76d954 instanceof Error?_0x76d954[_0x17a0df(0xc9)]:String(_0x76d954);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x17a0df(0xd2)](_0x1ec9e5))return menuError(_0x17a0df(0xdf),_0x17a0df(0xb3)+_0x34888a+(_0x2baabe?'\x20menu\x20'+_0x2baabe:'')+'.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');return menuError(_0x17a0df(0xf4),'Failed\x20to\x20'+_0x34888a+(_0x2baabe?_0x17a0df(0xdd)+_0x2baabe:'')+':\x20'+_0x1ec9e5,_0x17a0df(0x112));}export function isMenuResponseLoss(_0x4ceeed){const _0x4fac6a=a128_0x2ae394,_0x1b8e49=_0x4ceeed instanceof Error?_0x4ceeed[_0x4fac6a(0xc9)]:String(_0x4ceeed);if(_0x4ceeed instanceof CliError)return _0x4ceeed['code']===_0x4fac6a(0xc7)&&/^Request (?:failed|timeout):/i[_0x4fac6a(0xd2)](_0x1b8e49);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i[_0x4fac6a(0xd2)](_0x1b8e49);}function stateDrift(_0x7504d9){const _0x1f2c49=a128_0x2ae394;return menuError('menu_state_drift',_0x7504d9,_0x1f2c49(0xd7));}
|
|
1
|
+
const a128_0x1d50ab=a128_0x508c;(function(_0x15cc12,_0x343e84){const _0x288e8b=a128_0x508c,_0x3843a9=_0x15cc12();while(!![]){try{const _0xb9fd1c=-parseInt(_0x288e8b(0x1fc))/0x1+parseInt(_0x288e8b(0x21f))/0x2*(parseInt(_0x288e8b(0x1e3))/0x3)+parseInt(_0x288e8b(0x222))/0x4*(-parseInt(_0x288e8b(0x1f5))/0x5)+parseInt(_0x288e8b(0x22b))/0x6*(parseInt(_0x288e8b(0x210))/0x7)+parseInt(_0x288e8b(0x22f))/0x8+-parseInt(_0x288e8b(0x1de))/0x9+-parseInt(_0x288e8b(0x211))/0xa*(-parseInt(_0x288e8b(0x226))/0xb);if(_0xb9fd1c===_0x343e84)break;else _0x3843a9['push'](_0x3843a9['shift']());}catch(_0x4a9f5e){_0x3843a9['push'](_0x3843a9['shift']());}}}(a128_0x22ee,0x1b5be));import{CliError,CliErrors}from'../../../errors.js';import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';export const MAX_MENU_SORT=0x7fffffff;export const MENU_ID_FLAG={'name':'id','type':a128_0x1d50ab(0x1dd),'required':!![],'description':'Exact\x20online\x20menu\x20id'};export const MENU_SORT_FLAG={'name':a128_0x1d50ab(0x204),'type':a128_0x1d50ab(0x1dd),'description':a128_0x1d50ab(0x217)};export const MENU_PARENT_ID_FLAG={'name':a128_0x1d50ab(0x20c),'type':a128_0x1d50ab(0x218),'description':'Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node'};export const MENU_EXPECT_PARENT_ID_FLAG={'name':a128_0x1d50ab(0x1ee),'type':'string','description':a128_0x1d50ab(0x20b)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':'expect-path','type':a128_0x1d50ab(0x218),'description':a128_0x1d50ab(0x1e1)},{'name':a128_0x1d50ab(0x208),'type':a128_0x1d50ab(0x1dd),'description':'Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches'}];export function validateExactId(_0x1b994e){const _0x353516=a128_0x1d50ab,_0xe1254d=_0x1b994e[_0x353516(0x1f2)]('id');if(!Number['isSafeInteger'](_0xe1254d)||_0xe1254d<=0x0)throw CliErrors[_0x353516(0x1dc)](_0x353516(0x1f9));return _0xe1254d;}export function validateSort(_0x5272b5,_0x46d05c=a128_0x1d50ab(0x204)){const _0x6676bd=a128_0x1d50ab;if(!hasFlag(_0x5272b5,_0x46d05c))return undefined;const _0x51b80a=_0x5272b5['num'](_0x46d05c);if(!Number['isSafeInteger'](_0x51b80a)||_0x51b80a<0x0||_0x51b80a>MAX_MENU_SORT)throw menuError('menu_sort_invalid','--'+_0x46d05c+'\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20'+MAX_MENU_SORT+'.',_0x6676bd(0x203));return _0x51b80a;}export function nextSiblingSort(_0x1952af,_0x19146e,_0x16d3fe){const _0x155dfa=a128_0x1d50ab,_0x42e56b=getChildren(_0x1952af,_0x19146e)['map'](_0x18841b=>_0x18841b[_0x155dfa(0x204)])[_0x155dfa(0x1e7)](_0x5185ba=>typeof _0x5185ba===_0x155dfa(0x1dd));if(_0x42e56b[_0x155dfa(0x1e5)]===0x0)return 0x0;const _0x101fbb=Math[_0x155dfa(0x234)](..._0x42e56b);if(_0x101fbb>=MAX_MENU_SORT)throw menuError(_0x155dfa(0x202),'Cannot\x20append\x20a\x20'+_0x16d3fe+_0x155dfa(0x216)+_0x101fbb+'.',_0x155dfa(0x214)+MAX_MENU_SORT+_0x155dfa(0x233));return _0x101fbb+0x1;}export function requireExplicitYes(_0x12c4db){const _0x1db354=a128_0x1d50ab;if(_0x12c4db[_0x1db354(0x20f)](_0x1db354(0x1ed)))return;if(!_0x12c4db[_0x1db354(0x20f)](_0x1db354(0x1da)))throw menuError(_0x1db354(0x1e2),_0x1db354(0x220),'Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.');}export async function fetchMutationSnapshot(_0x283faa,_0x3457b5,_0x464e12){const _0x145a85=a128_0x1d50ab;try{return await fetchMenuSnapshot(_0x283faa[_0x145a85(0x215)],_0x283faa[_0x145a85(0x21b)]);}catch(_0x24ca25){throw mapMenuApiError(_0x24ca25,'read\x20online\x20menu\x20facts\x20before\x20'+_0x3457b5,_0x464e12);}}export async function recheckMutationSnapshot(_0x3b09e4,_0x2a10d4,_0x1c48a5,_0x5daca6){const _0x1df6bd=a128_0x1d50ab;let _0xa9f456;try{_0xa9f456=await fetchMenuSnapshot(_0x3b09e4[_0x1df6bd(0x215)],_0x3b09e4['cookie']);}catch(_0x5259f8){const _0x32f157=mapMenuApiError(_0x5259f8,_0x1df6bd(0x20a)+_0x1c48a5,_0x5daca6);throw menuFailure(_0x32f157,_0x2a10d4,{'stage':_0x1df6bd(0x1ec),'failed':_0x5daca6==null?{}:{'id':_0x5daca6}});}if(_0xa9f456['hash']!==_0x2a10d4['snapshotHash']){const _0x315408=menuError(_0x1df6bd(0x1d8),_0x1df6bd(0x1eb)+_0x1c48a5+_0x1df6bd(0x21a),_0x1df6bd(0x206));throw menuFailure(_0x315408,_0x2a10d4,{'stage':_0x1df6bd(0x1ec),'failed':{..._0x5daca6==null?{}:{'id':_0x5daca6},'expectedSnapshotHash':_0x2a10d4[_0x1df6bd(0x224)],'currentSnapshotHash':_0xa9f456['hash']}});}return _0xa9f456;}export function parseParentId(_0x5d91ab,_0x5108c5,_0x312f21={}){const _0x1db6d5=a128_0x1d50ab;if(!hasFlag(_0x5d91ab,_0x5108c5)){if(_0x312f21['required'])throw CliErrors['flagMissing'](_0x5108c5);return undefined;}const _0x5bc6f5=_0x5d91ab[_0x1db6d5(0x1d5)](_0x5108c5)[_0x1db6d5(0x1e0)]();if(_0x5bc6f5[_0x1db6d5(0x1d7)]()===_0x1db6d5(0x225))return null;if(!/^\d+$/[_0x1db6d5(0x22d)](_0x5bc6f5))throw CliErrors['validation']('--'+_0x5108c5+_0x1db6d5(0x232));const _0x4a0092=Number(_0x5bc6f5);if(!Number['isSafeInteger'](_0x4a0092)||_0x4a0092<=0x0)throw CliErrors[_0x1db6d5(0x1dc)]('--'+_0x5108c5+_0x1db6d5(0x232));return _0x4a0092;}export function requireMenu(_0x49382d,_0x123a36){const _0x517921=a128_0x1d50ab,_0x39c74c=_0x49382d[_0x517921(0x1f6)][_0x517921(0x1e9)](_0x123a36);if(!_0x39c74c)throw menuError(_0x517921(0x1e8),_0x517921(0x20d)+_0x123a36,'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.');return _0x39c74c;}export function requireFolder(_0x1cdde6,_0x2df865){const _0x237a5c=a128_0x1d50ab,_0x15a626=requireMenu(_0x1cdde6,_0x2df865);if(_0x15a626[_0x237a5c(0x21e)]!==_0x237a5c(0x201))throw menuError(_0x237a5c(0x236),'Menu\x20'+_0x2df865+_0x237a5c(0x1fd)+(_0x15a626[_0x237a5c(0x21e)]||_0x237a5c(0x1d4))+'\x22,\x20not\x20folder.',_0x237a5c(0x1f4));return _0x15a626;}export function assertExpectedState(_0xe94b36,_0x4a23f0){const _0x37673e=a128_0x1d50ab;if(hasFlag(_0xe94b36,_0x37673e(0x1ee))){const _0x1f0c2a=parseParentId(_0xe94b36,'expect-parent-id',{'required':!![]});if(_0x4a23f0['parentId']!==_0x1f0c2a)throw stateDrift(_0x37673e(0x21d)+_0x4a23f0['id']+_0x37673e(0x1f7)+formatParent(_0x1f0c2a)+_0x37673e(0x1f3)+formatParent(_0x4a23f0[_0x37673e(0x1e4)])+'.');}if(hasFlag(_0xe94b36,'expect-path')){const _0x199a30=_0xe94b36[_0x37673e(0x1d5)](_0x37673e(0x20e));if(_0x4a23f0[_0x37673e(0x1e6)]!==_0x199a30)throw stateDrift(_0x37673e(0x21d)+_0x4a23f0['id']+_0x37673e(0x212)+JSON[_0x37673e(0x227)](_0x199a30)+_0x37673e(0x1f3)+JSON[_0x37673e(0x227)](_0x4a23f0['path'])+'.');}if(hasFlag(_0xe94b36,_0x37673e(0x208))){const _0xe2e43e=_0xe94b36[_0x37673e(0x1f2)](_0x37673e(0x208));if(!Number[_0x37673e(0x1ef)](_0xe2e43e)||_0xe2e43e<0x0)throw CliErrors['validation'](_0x37673e(0x1f0));if(_0x4a23f0[_0x37673e(0x1df)]!==_0xe2e43e)throw stateDrift(_0x37673e(0x21d)+_0x4a23f0['id']+_0x37673e(0x221)+_0xe2e43e+_0x37673e(0x1f3)+_0x4a23f0[_0x37673e(0x1df)]+'.');}}function a128_0x508c(_0x3bc3a6,_0x30fd71){_0x3bc3a6=_0x3bc3a6-0x1d2;const _0x22ee33=a128_0x22ee();let _0x508cd1=_0x22ee33[_0x3bc3a6];return _0x508cd1;}export function assertVerified(_0x44d87a,_0x13ae56,_0x13e831=a128_0x1d50ab(0x1f8)){if(!_0x44d87a)throw menuError('menu_verification_failed',_0x13ae56,_0x13e831);}export function mutationResult(_0x156238){const _0x3f465d=a128_0x1d50ab;return{'operation':_0x156238['operation'],'selector':_0x156238[_0x3f465d(0x200)],'before':_0x156238['before'],'after':_0x156238[_0x3f465d(0x223)],'dryRun':_0x156238[_0x3f465d(0x1ea)],'backend':_0x156238['backend'],..._0x156238[_0x3f465d(0x231)]?{'plannedActions':_0x156238[_0x3f465d(0x231)]}:{},..._0x156238['targets']?{'targets':_0x156238['targets']}:{},..._0x156238[_0x3f465d(0x1f1)]?{'deleteOrder':_0x156238[_0x3f465d(0x1f1)]}:{},'snapshotHash':_0x156238['snapshotHash'],..._0x156238[_0x3f465d(0x213)]?{'cascade':_0x156238[_0x3f465d(0x213)]}:{},..._0x156238['planFile']?{'planFile':_0x156238['planFile']}:{},'succeeded':_0x156238[_0x3f465d(0x1ff)]??[],'failed':_0x156238[_0x3f465d(0x230)]??[],'warnings':_0x156238[_0x3f465d(0x1fe)]??[],'verification':_0x156238['verification'],'error':_0x156238[_0x3f465d(0x22a)]};}export function menuDryRunResult(_0x448ef7,_0x435eb3){return{..._0x448ef7,..._0x435eb3};}export function menuFailure(_0x3a6d78,_0x5d7bb5,_0x587306){const _0x5dfd26=a128_0x1d50ab,_0x382bf3=mutationResult({..._0x5d7bb5,'after':_0x587306[_0x5dfd26(0x223)]===undefined?_0x5d7bb5['after']:_0x587306['after'],'backend':_0x587306[_0x5dfd26(0x219)]??_0x5d7bb5[_0x5dfd26(0x219)],'dryRun':![],'succeeded':_0x587306[_0x5dfd26(0x1ff)]??[],'failed':_0x587306[_0x5dfd26(0x1d9)]??[{..._0x587306[_0x5dfd26(0x230)]??{},'stage':_0x587306['stage'],'code':_0x3a6d78[_0x5dfd26(0x1fb)],'message':_0x3a6d78[_0x5dfd26(0x229)]}],'warnings':[..._0x5d7bb5[_0x5dfd26(0x1fe)],..._0x587306['warnings']??[]],'verification':_0x587306['verification'],'error':{'code':_0x3a6d78[_0x5dfd26(0x1fb)],'message':_0x3a6d78[_0x5dfd26(0x229)],..._0x3a6d78['hint']?{'hint':_0x3a6d78[_0x5dfd26(0x1d2)]}:{}}});return Object[_0x5dfd26(0x1d6)](_0x3a6d78,_0x5dfd26(0x205),{'value':_0x382bf3,'enumerable':!![],'configurable':!![]}),_0x3a6d78;}export function asVerificationError(_0x17ee26,_0x4cc419){const _0x1f764a=a128_0x1d50ab;if(_0x17ee26 instanceof CliError&&_0x17ee26[_0x1f764a(0x1fb)]==='menu_verification_failed')return _0x17ee26;const _0x3dfe13=_0x17ee26 instanceof Error?_0x17ee26[_0x1f764a(0x229)]:String(_0x17ee26);return menuError('menu_verification_failed',''+_0x4cc419+(_0x3dfe13?':\x20'+_0x3dfe13:''),'The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.');}export function describeMenuErrorCause(_0x2c53b5,_0x4332d5,_0x36437c){const _0x561932=a128_0x1d50ab,_0x3c5ef7=mapMenuApiError(_0x2c53b5,_0x4332d5,_0x36437c);return{'causeCode':_0x3c5ef7['code'],'causeMessage':_0x3c5ef7[_0x561932(0x229)]};}export function hasFlag(_0x11f218,_0x3bc90f){const _0x3878c6=a128_0x1d50ab;return Object['prototype'][_0x3878c6(0x1db)][_0x3878c6(0x1fa)](_0x11f218[_0x3878c6(0x209)],_0x3bc90f)&&_0x11f218['rawFlags'][_0x3bc90f]!==undefined;}export function toApiParentId(_0x15e1b8){return _0x15e1b8??0x0;}export function formatParent(_0x4466cd){const _0x1f0334=a128_0x1d50ab;return _0x4466cd==null?_0x1f0334(0x225):String(_0x4466cd);}function a128_0x22ee(){const _0x4d270b=['menu_state_drift','failedRecords','yes','hasOwnProperty','validation','number','78381XNRJJp','childrenCount','trim','Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches','menu_confirmation_required','51eudWvr','parentId','length','path','filter','menu_not_found','get','dryRun','Online\x20menu\x20state\x20changed\x20before\x20','pre-write-recheck','dry-run','expect-parent-id','isSafeInteger','--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.','deleteOrder','num',',\x20current\x20','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','495EVzTLG','byId','\x20parent\x20changed:\x20expected\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.','call','code','186238gJdNrT','\x20is\x20type\x20\x22','warnings','succeeded','selector','folder','menu_sort_overflow','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','sort','data','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.','api_error','expected-children-count','rawFlags','recheck\x20online\x20menu\x20facts\x20before\x20','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','parent-id','Online\x20menu\x20not\x20found:\x20','expect-path','bool','2646vJvRxd','10xpEJyA','\x20path\x20changed:\x20expected\x20','cascade','Reorder\x20sibling\x20menus\x20below\x20','appCode','\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20','Sibling\x20sort\x20value\x20(non-negative\x20integer)','string','backend',';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.','cookie','menu_mutation_failed','Menu\x20','type','9066AHOICr','This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','\x20child\x20count\x20changed:\x20expected\x20','6124FgJrkE','after','snapshotHash','root','1948199eCzbQw','stringify','menu_permission_denied','message','error','1284eTogup','\x20menu\x20','test','Failed\x20to\x20','988128Tfmlrk','failed','plannedActions','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','max','Permission\x20denied\x20while\x20attempting\x20to\x20','menu_parent_not_folder','hint','Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.','unknown','str','defineProperty','toLowerCase'];a128_0x22ee=function(){return _0x4d270b;};return a128_0x22ee();}export function menuError(_0x32f0d7,_0x151716,_0x3e79fc){return new CliError(_0x32f0d7,0x1,_0x151716,_0x3e79fc);}export function mapMenuApiError(_0x4f4cef,_0x5f0a61,_0x432694){const _0xce9ae2=a128_0x1d50ab;if(_0x4f4cef instanceof CliError&&_0x4f4cef[_0xce9ae2(0x1fb)]!==_0xce9ae2(0x207))return _0x4f4cef;const _0x456b5a=_0x4f4cef instanceof Error?_0x4f4cef[_0xce9ae2(0x229)]:String(_0x4f4cef);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i['test'](_0x456b5a))return menuError(_0xce9ae2(0x228),_0xce9ae2(0x235)+_0x5f0a61+(_0x432694?'\x20menu\x20'+_0x432694:'')+'.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');return menuError(_0xce9ae2(0x21c),_0xce9ae2(0x22e)+_0x5f0a61+(_0x432694?_0xce9ae2(0x22c)+_0x432694:'')+':\x20'+_0x456b5a,'Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.');}export function isMenuResponseLoss(_0x2ffc05){const _0x2e2303=a128_0x1d50ab,_0x4c34a2=_0x2ffc05 instanceof Error?_0x2ffc05[_0x2e2303(0x229)]:String(_0x2ffc05);if(_0x2ffc05 instanceof CliError)return _0x2ffc05[_0x2e2303(0x1fb)]===_0x2e2303(0x207)&&/^Request (?:failed|timeout):/i[_0x2e2303(0x22d)](_0x4c34a2);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i[_0x2e2303(0x22d)](_0x4c34a2);}function stateDrift(_0x239fd4){const _0x2b60de=a128_0x1d50ab;return menuError('menu_state_drift',_0x239fd4,_0x2b60de(0x1d3));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2ad865,_0x19fd3b){const _0x430cef=a129_0x572e,_0x193bac=_0x2ad865();while(!![]){try{const _0x55c35c=-parseInt(_0x430cef(0x190))/0x1*(parseInt(_0x430cef(0x1a8))/0x2)+parseInt(_0x430cef(0x19c))/0x3*(-parseInt(_0x430cef(0x197))/0x4)+-parseInt(_0x430cef(0x1aa))/0x5+parseInt(_0x430cef(0x194))/0x6*(parseInt(_0x430cef(0x199))/0x7)+-parseInt(_0x430cef(0x189))/0x8+parseInt(_0x430cef(0x198))/0x9*(-parseInt(_0x430cef(0x18f))/0xa)+parseInt(_0x430cef(0x1a7))/0xb;if(_0x55c35c===_0x19fd3b)break;else _0x193bac['push'](_0x193bac['shift']());}catch(_0x58a922){_0x193bac['push'](_0x193bac['shift']());}}}(a129_0x3703,0xeecfb));import{getEnv,isProduction}from'../../../constant/env.js';import{logger}from'../../../utils/logger.js';import{fetchMenuSnapshot,toProcessedMenuItem}from'../../../commands/menu/shared/facts.js';import{batchDeleteMenuRecords,createMenuRecord,startMenuRegroup as a129_0x5ed98d,updateMenuRecord}from'../../../core/api-client.js';export async function getOnlineMenuList(_0x20e333,_0x4d7c15){const _0x15b13c=a129_0x572e,_0x1e521e=getEnv();logger[_0x15b13c(0x18b)]('get-online-menu-list',isProduction(_0x1e521e)?_0x15b13c(0x1ae)+_0x20e333+')':_0x15b13c(0x195)+_0x20e333+')');const _0x4464a9=await fetchMenuSnapshot(_0x20e333,_0x4d7c15,{'verbose':!![]});return logger[_0x15b13c(0x18b)](_0x15b13c(0x1a3),_0x15b13c(0x19d)+_0x4464a9['total']+_0x15b13c(0x1a4)),_0x4464a9['menus'][_0x15b13c(0x19a)](toProcessedMenuItem);}function a129_0x572e(_0x2a0deb,_0x337bb3){_0x2a0deb=_0x2a0deb-0x186;const _0x370339=a129_0x3703();let _0x572e07=_0x370339[_0x2a0deb];return _0x572e07;}function a129_0x3703(){const _0x3bcd72=['update-menu-cdn-url','Create\x20menu\x20\x22','Fetching\x20online\x20menu\x20list...\x20(appCode:\x20','Update\x20menu\x20','procode','resources','12378720EzBoET','Regroup\x20','info','Batch\x20menu\x20creation\x20completed,\x20total\x20','label','\x20menu','30wrDLHh','89867JIAilb','Delete\x20','Menu\x20created\x20successfully:\x20','create-menus','24uJATXO','Fetching\x20daily\x20menu\x20list...\x20(appCode:\x20','create-menu','40728FxSETk','5448519ludPAj','2030980xUeRYs','map','length','21pHhNfh','Fetched\x20','stringify','Update\x20menu\x20assets\x20\x22','\x20menu\x20group(s)','Updating\x20menu\x20asset\x20links:\x20','Creating\x20menu:\x20','get-online-menu-list','\x20online\x20menus\x20successfully','extend','loadScriptMode','43115787ySKOfg','6zFMedl','all','1988090MPpzkB','Start\x20batch\x20menu\x20creation,\x20total\x20'];a129_0x3703=function(){return _0x3bcd72;};return a129_0x3703();}export async function createMenu(_0xe50c,_0x1823a2,_0x20a81a){const _0x2dc34f=a129_0x572e;logger['info'](_0x2dc34f(0x196),_0x2dc34f(0x1a2)+_0x20a81a[_0x2dc34f(0x18d)]+'\x20('+_0x20a81a['path']+')');const _0x26b50={'appCode':_0xe50c,'type':_0x2dc34f(0x187),'sort':0x0,'extend':{'loadScriptMode':'import','resources':_0x20a81a[_0x2dc34f(0x188)]?JSON[_0x2dc34f(0x19e)](_0x20a81a['resources']):undefined},..._0x20a81a},_0x4d1587=await createMenuRecord(_0x26b50,_0x1823a2,_0x2dc34f(0x1ad)+_0x20a81a['label']+'\x22');return logger[_0x2dc34f(0x18b)](_0x2dc34f(0x196),_0x2dc34f(0x192)+_0x20a81a[_0x2dc34f(0x18d)]),_0x4d1587;}async function createSingleMenu(_0x7b619e,_0x3143c9,_0x4f2bcb,_0x12f319){const _0x486363=a129_0x572e,_0x1c02cc={'appCode':_0x7b619e,'type':_0x486363(0x187),'sort':0x0,'extend':{'loadScriptMode':'import','resources':_0x12f319?JSON[_0x486363(0x19e)](_0x12f319):undefined},'label':_0x4f2bcb['label'],'path':_0x4f2bcb['path']},_0x19a2b8=await createMenuRecord(_0x1c02cc,_0x3143c9,_0x486363(0x1ad)+_0x4f2bcb[_0x486363(0x18d)]+'\x22');return logger[_0x486363(0x18b)](_0x486363(0x196),_0x486363(0x192)+_0x4f2bcb[_0x486363(0x18d)]),_0x19a2b8;}export async function createMenus(_0x7cd3b8,_0x24717f,_0x1d5e94,_0x54f8f9){const _0x501aab=a129_0x572e;logger[_0x501aab(0x18b)]('create-menus',_0x501aab(0x1ab)+_0x1d5e94[_0x501aab(0x19b)]);const _0x38890f=await Promise[_0x501aab(0x1a9)](_0x1d5e94[_0x501aab(0x19a)](_0x21459b=>createSingleMenu(_0x7cd3b8,_0x24717f,_0x21459b,_0x54f8f9)));return logger[_0x501aab(0x18b)](_0x501aab(0x193),_0x501aab(0x18c)+_0x1d5e94[_0x501aab(0x19b)]),_0x38890f;}export async function updateMenuCdnUrl(_0x1541d1,_0x57ab98,_0x19e72f){const _0x2bb978=a129_0x572e;logger[_0x2bb978(0x18b)](_0x2bb978(0x1ac),_0x2bb978(0x1a1)+_0x19e72f[_0x2bb978(0x18d)]+'\x20('+_0x19e72f['path']+')');const _0x15d1e3={'id':_0x19e72f['id'],'appCode':_0x1541d1,'extend':{..._0x19e72f[_0x2bb978(0x1a5)]??{},..._0x19e72f[_0x2bb978(0x1a6)]?{'loadScriptMode':_0x19e72f[_0x2bb978(0x1a6)]}:{},'resources':_0x19e72f[_0x2bb978(0x188)]?JSON[_0x2bb978(0x19e)](_0x19e72f[_0x2bb978(0x188)]):undefined}},_0x17f2ae=await updateMenuRecord(_0x15d1e3,_0x57ab98,_0x2bb978(0x19f)+_0x19e72f[_0x2bb978(0x18d)]+'\x22');return logger[_0x2bb978(0x18b)](_0x2bb978(0x1ac),'Menu\x20assets\x20synced:\x20'+_0x19e72f[_0x2bb978(0x18d)],undefined),_0x17f2ae;}export async function createMenuEntity(_0x1a2ad7,_0x763b83,_0x524e6d){const _0x3a6952=a129_0x572e;return createMenuRecord({'appCode':_0x1a2ad7,..._0x524e6d},_0x763b83,_0x3a6952(0x1ad)+_0x524e6d['label']+'\x22');}export async function updateMenuEntity(_0x558da1,_0x32cc9c,_0x4861ce){const _0x4c6027=a129_0x572e;return updateMenuRecord({'appCode':_0x558da1,..._0x4861ce},_0x32cc9c,_0x4c6027(0x186)+_0x4861ce['id']);}export async function batchDeleteMenuEntities(_0x172e5a,_0x16ae27){const _0x3870d7=a129_0x572e;return batchDeleteMenuRecords(_0x16ae27,_0x172e5a,_0x3870d7(0x191)+_0x16ae27[_0x3870d7(0x19b)]+_0x3870d7(0x18e)+(_0x16ae27[_0x3870d7(0x19b)]===0x1?'':'s'));}export async function startMenuRegroup(_0x46e80a,_0x379577){const _0x39c856=a129_0x572e;return a129_0x5ed98d(_0x379577,_0x46e80a,_0x39c856(0x18a)+_0x379577['menuGroups']['length']+_0x39c856(0x1a0));}
|