@lovrabet/rabetbase-cli 2.5.2-beta.3 → 2.5.2-beta.5
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/README.md +1 -1
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-restore.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/dataset/user-deleted-field-list.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/deployment/auto-sync.js +1 -1
- package/lib/commands/deployment/index.js +1 -1
- package/lib/commands/deployment/sync-all.js +1 -1
- package/lib/commands/deployment/sync-jobs.js +1 -1
- package/lib/commands/deployment/sync-status.js +1 -1
- package/lib/commands/deployment/sync.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/instant-api-policy/current.js +1 -1
- package/lib/commands/instant-api-policy/index.js +1 -1
- package/lib/commands/instant-api-policy/init.js +1 -1
- package/lib/commands/instant-api-policy/publish.js +1 -1
- package/lib/commands/instant-api-policy/pull.js +1 -1
- package/lib/commands/instant-api-policy/revision.js +1 -1
- package/lib/commands/instant-api-policy/revisions.js +1 -1
- package/lib/commands/instant-api-policy/rollback.js +1 -1
- package/lib/commands/instant-api-policy/shared.js +1 -1
- package/lib/commands/instant-api-policy/validate.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.d.ts +0 -8
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.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/domain-routing-sync.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/rule/get.js +1 -1
- package/lib/commands/rule/index.js +1 -1
- package/lib/commands/rule/list.js +1 -1
- package/lib/commands/rule/set.js +1 -1
- package/lib/commands/rule/shared.js +1 -1
- package/lib/commands/run/index.d.ts +4 -0
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-domain-routing.d.ts +5 -1
- package/lib/config/project-domain-routing.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.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.d.ts +0 -26
- 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/instant-api-policy/config.js +1 -1
- package/lib/core/kb-search-client.js +1 -1
- package/lib/core/page/file-system.d.ts +43 -0
- 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/supported-flags.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/generated/official-routing.js +1 -1
- package/lib/generated/routing-contract.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.d.ts +6 -5
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +2 -1
- package/skills/rabetbase/SKILL.md +5 -5
- package/skills/rabetbase/guides/custom-page-workflow.md +35 -17
- package/skills/rabetbase/guides/page-development-workflow.md +1 -1
- package/skills/rabetbase/knowledge/components.md +292 -0
- package/skills/rabetbase/knowledge/custom-page/generation-standards.md +74 -4
- package/skills/rabetbase/knowledge/custom-page/page-templates.md +68 -0
- package/skills/rabetbase/references/rabetbase-page-create.md +21 -9
- package/skills/rabetbase/references/rabetbase-page-custom-detail.md +1 -1
- package/skills/rabetbase/references/rabetbase-page-custom-update.md +13 -9
- package/skills/rabetbase/references/rabetbase-project-create.md +5 -2
- package/skills/rabetbase/references/rabetbase-project-domain-routing-sync.md +2 -2
- package/skills/rabetbase/references/rabetbase-run.md +1 -0
- package/skills/rabetbase.manifest.json +5 -4
- package/templates/README.md +10 -4
- package/templates/custom-pages/blank.json +5 -0
- package/templates/custom-pages/dashboard.json +5 -0
- package/templates/custom-pages/onepage.json +5 -0
- package/templates/generate-api/api.ts.tpl +1 -1
- package/lib/commands/page/custom/template.d.ts +0 -8
- package/lib/commands/page/custom/template.js +0 -1
- package/skills/rabetbase/knowledge/custom-page/components.md +0 -225
|
@@ -1 +1 @@
|
|
|
1
|
-
const a137_0x105710=a137_0x1e71;(function(_0x2bbd73,_0x572be2){const _0x205fbe=a137_0x1e71,_0x1561d2=_0x2bbd73();while(!![]){try{const _0x50baab=parseInt(_0x205fbe(0x106))/0x1+-parseInt(_0x205fbe(0xf2))/0x2*(parseInt(_0x205fbe(0xcb))/0x3)+-parseInt(_0x205fbe(0xde))/0x4+-parseInt(_0x205fbe(0xf6))/0x5+parseInt(_0x205fbe(0x102))/0x6*(-parseInt(_0x205fbe(0x100))/0x7)+-parseInt(_0x205fbe(0xe3))/0x8+parseInt(_0x205fbe(0xe6))/0x9;if(_0x50baab===_0x572be2)break;else _0x1561d2['push'](_0x1561d2['shift']());}catch(_0x4c73ec){_0x1561d2['push'](_0x1561d2['shift']());}}}(a137_0x52b8,0x29367));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a137_0x1e71(_0x5569e3,_0x2b8ada){_0x5569e3=_0x5569e3-0xcb;const _0x52b85a=a137_0x52b8();let _0x1e71a2=_0x52b85a[_0x5569e3];return _0x1e71a2;}import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a137_0x105710(0xf3)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a137_0x105710(0x12a),'command':a137_0x105710(0x10d),'description':a137_0x105710(0xd1),'risk':a137_0x105710(0xd3),'structuredErrors':!![],'flags':[{'name':a137_0x105710(0xec),'type':'string','required':!![],'description':a137_0x105710(0xf1)},{'name':a137_0x105710(0xfc),'type':a137_0x105710(0xd9),'required':!![],'description':a137_0x105710(0x10a)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2e740a){validateRegroupInput(_0x2e740a);},async 'dryRun'(_0x5b0df7){const _0x289f42=a137_0x105710;validateRegroupInput(_0x5b0df7);const _0x1b7729=await buildRegroupPlan(_0x5b0df7,!![]);return menuDryRunResult(_0x1b7729['plan'],{'method':_0x289f42(0x12c),'url':_0x289f42(0xf3),'body':_0x1b7729[_0x289f42(0xe9)],'description':_0x289f42(0x11b)+JSON[_0x289f42(0xe5)](_0x1b7729[_0x289f42(0xec)])+_0x289f42(0x123)+_0x1b7729['menuIds']['join'](',\x20')+_0x289f42(0x127)});},async 'execute'(_0x2bbbbb){const _0x2a9adb=a137_0x105710;validateRegroupInput(_0x2bbbbb);const _0x5daee1=await buildRegroupPlan(_0x2bbbbb,![]);await recheckMutationSnapshot(_0x2bbbbb,_0x5daee1[_0x2a9adb(0xf9)],_0x2a9adb(0x111));const _0x2e11ab=buildMenuLookupCommand(_0x2bbbbb[_0x2a9adb(0x10f)]);let _0x6c6b6c,_0x311143;try{_0x6c6b6c=await startMenuRegroup(_0x2bbbbb[_0x2a9adb(0x117)],_0x5daee1[_0x2a9adb(0xe9)]),_0x311143=normalizeAsyncTask(_0x6c6b6c);}catch(_0x5bd55b){const _0x465d27=await inspectRegroupAfterFailure(_0x2bbbbb[_0x2a9adb(0x10f)],_0x2bbbbb[_0x2a9adb(0x117)],_0x5daee1[_0x2a9adb(0xec)],_0x5daee1['menuIds']),_0x3e1317=typeof _0x6c6b6c?.[_0x2a9adb(0xdd)]===_0x2a9adb(0xd9)&&_0x6c6b6c['taskId']['trim']()?_0x6c6b6c[_0x2a9adb(0xdd)][_0x2a9adb(0xe7)]():null,_0x3abd2a=_0x3e1317?{'command':buildAsyncTaskStatusCommand(_0x3e1317,_0x2bbbbb[_0x2a9adb(0x10f)])}:null,_0x1172b0=mapMenuApiError(_0x5bd55b,_0x2a9adb(0x120));throw menuFailure(_0x1172b0,_0x5daee1[_0x2a9adb(0xf9)],{'stage':'regroup-submit','failed':{'menuIds':_0x5daee1[_0x2a9adb(0x107)],'taskId':_0x3e1317,'groupingApplied':_0x465d27[_0x2a9adb(0x118)]?!![]:_0x2a9adb(0xed)},'after':_0x465d27['applied']??null,'warnings':['The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.',..._0x465d27['readbackError']?[_0x2a9adb(0x10c)+_0x465d27[_0x2a9adb(0xfd)]]:[],..._0x3e1317?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':'failed','groupingApplied':_0x465d27[_0x2a9adb(0x118)]?!![]:_0x2a9adb(0xed),'taskId':_0x3e1317,'query':_0x3abd2a,'lookupCommand':_0x2e11ab}});}const _0x51affc=buildAsyncTaskStatusCommand(_0x311143[_0x2a9adb(0xdd)],_0x2bbbbb[_0x2a9adb(0x10f)]);let _0x29264f=null,_0x5c2522=null,_0x224f8f=null;try{_0x29264f=await fetchMenuSnapshot(_0x2bbbbb[_0x2a9adb(0x10f)],_0x2bbbbb['cookie']),_0x5c2522=findAppliedRegroup(_0x29264f,_0x5daee1[_0x2a9adb(0xec)],_0x5daee1['menuIds']);}catch(_0x201f7b){_0x224f8f=_0x201f7b instanceof Error?_0x201f7b[_0x2a9adb(0x12b)]:String(_0x201f7b);}const _0x441ae2=mutationResult({..._0x5daee1['plan'],'after':_0x5c2522??null,'dryRun':![],'succeeded':[{'groupId':_0x5c2522?.[_0x2a9adb(0xda)]['id']??null,'menuIds':_0x5daee1['menuIds'],'taskId':_0x311143[_0x2a9adb(0xdd)],'status':_0x311143[_0x2a9adb(0xea)],'groupingApplied':_0x5c2522?!![]:'unconfirmed'}],'verification':{'checkedBy':_0x2a9adb(0xd5),'snapshotHash':_0x29264f?.[_0x2a9adb(0x108)]??null,'groupId':_0x5c2522?.[_0x2a9adb(0xda)]['id']??null,'groupingApplied':_0x5c2522?!![]:_0x2a9adb(0xed),'readbackError':_0x224f8f,'lookupCommand':_0x2e11ab},'warnings':[..._0x5daee1[_0x2a9adb(0xf9)][_0x2a9adb(0x115)],...!_0x5c2522?[unconfirmedRegroupWarning(_0x311143)]:[],..._0x224f8f?[_0x2a9adb(0x104)+_0x224f8f]:[]]}),_0x17b11=_0x311143[_0x2a9adb(0xea)]===_0x2a9adb(0x121)&&!_0x5c2522?_0x2a9adb(0x109)+_0x311143[_0x2a9adb(0xdd)]+_0x2a9adb(0xd2):_0x2a9adb(0xe8)+asyncTaskMessage(_0x311143);return{'ok':!![],'message':_0x17b11,'data':{..._0x441ae2,'task':_0x311143,'query':_0x311143[_0x2a9adb(0xd8)]?null:{'command':_0x51affc}}};}};function validateRegroupInput(_0x371e81){const _0x395d5c=a137_0x105710;if(!_0x371e81[_0x395d5c(0xd7)]('label')['trim']())throw CliErrors['flagMissing'](_0x395d5c(0xec));parseMenuIds(_0x371e81[_0x395d5c(0xd7)](_0x395d5c(0xfc)));}function parseMenuIds(_0x49597a){const _0x56b824=a137_0x105710,_0x4f0342=_0x49597a[_0x56b824(0xe2)](',')['map'](_0x1445ff=>_0x1445ff[_0x56b824(0xe7)]());if(_0x4f0342[_0x56b824(0x124)]===0x0||_0x4f0342[_0x56b824(0xdf)](_0xd4baa3=>!_0xd4baa3))throw CliErrors['validation'](_0x56b824(0x112));const _0x106a76=_0x4f0342['map'](_0x1d4447=>{const _0x4205f7=_0x56b824;if(!/^\d+$/[_0x4205f7(0xdc)](_0x1d4447))throw CliErrors['validation'](_0x4205f7(0x112));const _0x5895f=Number(_0x1d4447);if(!Number[_0x4205f7(0x105)](_0x5895f)||_0x5895f<=0x0)throw CliErrors[_0x4205f7(0xf8)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x5895f;});if(new Set(_0x106a76)[_0x56b824(0x11a)]!==_0x106a76['length'])throw CliErrors['validation']('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x106a76[_0x56b824(0x124)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x56b824(0xf8)](_0x56b824(0xf7)+MAX_REGROUP_MENU_COUNT+_0x56b824(0xd4));return _0x106a76;}function buildMenuLookupCommand(_0x1ae66b){const _0x20d6c0=a137_0x105710,_0x31052e='\x27'+_0x1ae66b[_0x20d6c0(0x113)](/'/g,_0x20d6c0(0xf4))+'\x27';return CLI_BIN_NAME+_0x20d6c0(0xfb)+_0x31052e+'\x20--format\x20compress';}function unconfirmedRegroupWarning(_0x21b715){const _0x11d415=a137_0x105710;if(_0x21b715[_0x11d415(0xea)]==='SUCCESS')return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x21b715[_0x11d415(0xea)]===_0x11d415(0xe1))return _0x11d415(0xff);if(_0x21b715[_0x11d415(0x110)])return _0x11d415(0xfa);return _0x11d415(0xcf);}async function buildRegroupPlan(_0x3ee6c7,_0x4af2f1){const _0x152ac0=a137_0x105710,_0x573b25=_0x3ee6c7[_0x152ac0(0xd7)](_0x152ac0(0xec))[_0x152ac0(0xe7)](),_0x542865=parseMenuIds(_0x3ee6c7[_0x152ac0(0xd7)](_0x152ac0(0xfc))),_0x5efa75=await fetchMutationSnapshot(_0x3ee6c7,_0x152ac0(0xce)),_0x23aee4=_0x542865[_0x152ac0(0xcc)](_0x58fc2b=>requireMenu(_0x5efa75,_0x58fc2b));for(const _0x4b4f52 of _0x23aee4){if(_0x4b4f52[_0x152ac0(0x126)][_0x152ac0(0xe7)]()[_0x152ac0(0xe4)]()===_0x152ac0(0xcd)||_0x4b4f52[_0x152ac0(0xf0)]>0x0)throw menuError(_0x152ac0(0x119),_0x152ac0(0x10b)+_0x4b4f52['id']+_0x152ac0(0xf5),_0x152ac0(0x114));if(!_0x4b4f52[_0x152ac0(0xec)][_0x152ac0(0xe7)]())throw menuError(_0x152ac0(0x101),_0x152ac0(0x10b)+_0x4b4f52['id']+_0x152ac0(0x128),_0x152ac0(0xe0));}const _0x458646=findAppliedRegroup(_0x5efa75,_0x573b25,_0x542865);if(_0x458646)throw menuError(_0x152ac0(0xeb),'Menus\x20'+_0x542865[_0x152ac0(0xee)](',\x20')+_0x152ac0(0x103)+_0x458646[_0x152ac0(0xda)]['id']+'\x20('+JSON[_0x152ac0(0xe5)](_0x573b25)+').',_0x152ac0(0x10e));const _0x5244f6=_0x5efa75[_0x152ac0(0x129)][_0x152ac0(0xfe)](_0x4bcd5c=>_0x4bcd5c[_0x152ac0(0x125)]==null&&_0x4bcd5c[_0x152ac0(0x126)][_0x152ac0(0xe7)]()[_0x152ac0(0xe4)]()===_0x152ac0(0xcd)&&_0x4bcd5c[_0x152ac0(0xec)]===_0x573b25);if(_0x5244f6[_0x152ac0(0x124)]>0x0)throw menuError(_0x152ac0(0x11e),_0x152ac0(0x122)+JSON['stringify'](_0x573b25)+'\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'+_0x5244f6[_0x152ac0(0xcc)](_0x3071a8=>_0x3071a8['id'])[_0x152ac0(0xee)](',\x20')+'.',_0x152ac0(0x11c));const _0x454802={'appCode':_0x3ee6c7[_0x152ac0(0x10f)],'menuGroups':[{'label':_0x573b25,'type':'folder','children':_0x23aee4[_0x152ac0(0xcc)](_0x4a79ee=>({'id':_0x4a79ee['id'],'label':_0x4a79ee[_0x152ac0(0xec)]}))}]},_0x9427=mutationResult({'operation':_0x152ac0(0x10d),'selector':{'label':_0x573b25,'menuIds':_0x542865},'before':{'menus':_0x23aee4},'after':{'group':{'id':null,'parentId':null,'label':_0x573b25,'path':_0x152ac0(0x11d),'type':'folder','childrenIds':_0x542865},'children':_0x23aee4[_0x152ac0(0xcc)](_0x5a7502=>({'id':_0x5a7502['id'],'label':_0x5a7502[_0x152ac0(0xec)],'beforeParentId':_0x5a7502[_0x152ac0(0x125)],'afterParentId':'<new-group-id>'}))},'dryRun':_0x4af2f1,'backend':[...BACKEND],'plannedActions':[{'stage':_0x152ac0(0xd6),'method':_0x152ac0(0x12c),'path':_0x152ac0(0xf3),'body':_0x454802}],'snapshotHash':_0x5efa75[_0x152ac0(0x108)],'warnings':[_0x152ac0(0xd0),_0x152ac0(0xdb)]});return{'label':_0x573b25,'menuIds':_0x542865,'input':_0x454802,'plan':_0x9427};}function a137_0x52b8(){const _0x4355e2=['parentId','type',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','menus','menu','message','POST','743973LKWLKL','map','folder','plan\x20regroup','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','write','\x20menus\x20per\x20regroup\x20request.','menu\x20list','submit-regroup-task','str','isTerminal','string','group','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','test','taskId','61288QDFeJD','some','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','FAILED','split','169992hJFAsM','toLowerCase','stringify','8906661cXWwIN','trim','Regroup\x20task\x20accepted.\x20','input','status','menu_regroup_already_applied','label','unconfirmed','join','byId','childrenCount','Label\x20of\x20the\x20new\x20root\x20folder','2sZxCdn','/smartapi/menu/regroup','\x27\x5c\x27\x27','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','1239580tidHGD','--menu-ids\x20supports\x20at\x20most\x20','validation','plan','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','\x20menu\x20list\x20--appcode\x20','menu-ids','readbackError','filter','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','217sOWFaB','menu_regroup_target_label_missing','59898FLPViC','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','Regroup\x20readback\x20failed:\x20','isSafeInteger','21129rmovsy','menuIds','hash','Regroup\x20task\x20','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','Menu\x20','Regroup\x20readback\x20also\x20failed:\x20','regroup-start','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','appCode','knownStatus','start\x20regroup','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','replace','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','warnings','get','cookie','applied','menu_regroup_target_not_leaf','size','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','<platform-generated>','menu_regroup_label_conflict','sort','start\x20menu\x20regroup','SUCCESS','Root\x20folder\x20label\x20','\x20and\x20regroup\x20menu\x20ids\x20','length'];a137_0x52b8=function(){return _0x4355e2;};return a137_0x52b8();}function findAppliedRegroup(_0x28f00f,_0x5bd278,_0x541f52){const _0x2ac035=a137_0x105710,_0x34304c=_0x541f52[_0x2ac035(0xcc)](_0x2dfc46=>_0x28f00f[_0x2ac035(0xef)][_0x2ac035(0x116)](_0x2dfc46))[_0x2ac035(0xfe)](_0xaf1047=>Boolean(_0xaf1047));if(_0x34304c[_0x2ac035(0x124)]!==_0x541f52['length'])return null;const _0x212925=_0x34304c[0x0]?.[_0x2ac035(0x125)];if(_0x212925==null||_0x34304c[_0x2ac035(0xdf)](_0x3ac214=>_0x3ac214['parentId']!==_0x212925))return null;const _0x3c1023=_0x28f00f['byId'][_0x2ac035(0x116)](_0x212925);if(!_0x3c1023||_0x3c1023[_0x2ac035(0x125)]!=null||_0x3c1023[_0x2ac035(0x126)]['trim']()['toLowerCase']()!=='folder'||_0x3c1023['label']!==_0x5bd278)return null;const _0x4bbc9c=[..._0x541f52][_0x2ac035(0x11f)]((_0x42b8eb,_0x2bb899)=>_0x42b8eb-_0x2bb899),_0x56bea9=[..._0x3c1023['childrenIds']][_0x2ac035(0x11f)]((_0x5aad72,_0x368cfb)=>_0x5aad72-_0x368cfb);if(JSON[_0x2ac035(0xe5)](_0x56bea9)!==JSON['stringify'](_0x4bbc9c))return null;return{'group':_0x3c1023,'children':_0x34304c};}async function inspectRegroupAfterFailure(_0x5cf750,_0x1f6e90,_0x67613d,_0x2822d0){const _0x36be2f=a137_0x105710;try{const _0x25dcb5=await fetchMenuSnapshot(_0x5cf750,_0x1f6e90);return{'applied':findAppliedRegroup(_0x25dcb5,_0x67613d,_0x2822d0),'readbackError':null};}catch(_0x5a25b5){return{'applied':null,'readbackError':_0x5a25b5 instanceof Error?_0x5a25b5[_0x36be2f(0x12b)]:String(_0x5a25b5)};}}
|
|
1
|
+
const a137_0x4c8563=a137_0x223d;(function(_0x139c5c,_0x4eafdf){const _0x1d911c=a137_0x223d,_0x32d585=_0x139c5c();while(!![]){try{const _0x99ed72=parseInt(_0x1d911c(0x95))/0x1*(parseInt(_0x1d911c(0xb7))/0x2)+parseInt(_0x1d911c(0xc1))/0x3*(-parseInt(_0x1d911c(0x91))/0x4)+parseInt(_0x1d911c(0xc0))/0x5*(parseInt(_0x1d911c(0xa4))/0x6)+-parseInt(_0x1d911c(0xd5))/0x7+-parseInt(_0x1d911c(0xbe))/0x8*(-parseInt(_0x1d911c(0xe8))/0x9)+-parseInt(_0x1d911c(0x9f))/0xa+-parseInt(_0x1d911c(0xa7))/0xb*(-parseInt(_0x1d911c(0xdd))/0xc);if(_0x99ed72===_0x4eafdf)break;else _0x32d585['push'](_0x32d585['shift']());}catch(_0x3651c9){_0x32d585['push'](_0x32d585['shift']());}}}(a137_0x22f9,0xba675));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a137_0x4c8563(0xa0)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':'menu','command':a137_0x4c8563(0xd1),'description':a137_0x4c8563(0xcf),'risk':a137_0x4c8563(0xe9),'structuredErrors':!![],'flags':[{'name':a137_0x4c8563(0xda),'type':a137_0x4c8563(0xac),'required':!![],'description':a137_0x4c8563(0x94)},{'name':a137_0x4c8563(0xab),'type':a137_0x4c8563(0xac),'required':!![],'description':a137_0x4c8563(0xce)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x212d4c){validateRegroupInput(_0x212d4c);},async 'dryRun'(_0x21aabb){const _0x7eb75c=a137_0x4c8563;validateRegroupInput(_0x21aabb);const _0x175412=await buildRegroupPlan(_0x21aabb,!![]);return menuDryRunResult(_0x175412[_0x7eb75c(0xba)],{'method':_0x7eb75c(0xbf),'url':_0x7eb75c(0xa0),'body':_0x175412[_0x7eb75c(0xed)],'description':'Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20'+JSON[_0x7eb75c(0xbd)](_0x175412[_0x7eb75c(0xda)])+_0x7eb75c(0xea)+_0x175412['menuIds'][_0x7eb75c(0xae)](',\x20')+_0x7eb75c(0xb8)});},async 'execute'(_0xe5b941){const _0xc5066c=a137_0x4c8563;validateRegroupInput(_0xe5b941);const _0x47603f=await buildRegroupPlan(_0xe5b941,![]);await recheckMutationSnapshot(_0xe5b941,_0x47603f[_0xc5066c(0xba)],_0xc5066c(0x98));const _0x953dbe=buildMenuLookupCommand(_0xe5b941['appCode']);let _0xc1a61c,_0x2307f1;try{_0xc1a61c=await startMenuRegroup(_0xe5b941[_0xc5066c(0xb2)],_0x47603f[_0xc5066c(0xed)]),_0x2307f1=normalizeAsyncTask(_0xc1a61c);}catch(_0x1d91e5){const _0x43d4e2=await inspectRegroupAfterFailure(_0xe5b941[_0xc5066c(0xe1)],_0xe5b941[_0xc5066c(0xb2)],_0x47603f['label'],_0x47603f[_0xc5066c(0xc7)]),_0x5bdde6=typeof _0xc1a61c?.[_0xc5066c(0xb0)]===_0xc5066c(0xac)&&_0xc1a61c[_0xc5066c(0xb0)]['trim']()?_0xc1a61c[_0xc5066c(0xb0)][_0xc5066c(0xb9)]():null,_0x5be789=_0x5bdde6?{'command':buildAsyncTaskStatusCommand(_0x5bdde6,_0xe5b941[_0xc5066c(0xe1)])}:null,_0x4ba915=mapMenuApiError(_0x1d91e5,_0xc5066c(0x96));throw menuFailure(_0x4ba915,_0x47603f[_0xc5066c(0xba)],{'stage':_0xc5066c(0xcb),'failed':{'menuIds':_0x47603f[_0xc5066c(0xc7)],'taskId':_0x5bdde6,'groupingApplied':_0x43d4e2[_0xc5066c(0xe0)]?!![]:'unconfirmed'},'after':_0x43d4e2['applied']??null,'warnings':[_0xc5066c(0xe2),..._0x43d4e2[_0xc5066c(0xc4)]?['Regroup\x20readback\x20also\x20failed:\x20'+_0x43d4e2['readbackError']]:[],..._0x5bdde6?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':_0xc5066c(0x99),'groupingApplied':_0x43d4e2[_0xc5066c(0xe0)]?!![]:'unconfirmed','taskId':_0x5bdde6,'query':_0x5be789,'lookupCommand':_0x953dbe}});}const _0x2d2fca=buildAsyncTaskStatusCommand(_0x2307f1['taskId'],_0xe5b941[_0xc5066c(0xe1)]);let _0x4a8cda=null,_0x4f2bbe=null,_0x29f403=null;try{_0x4a8cda=await fetchMenuSnapshot(_0xe5b941[_0xc5066c(0xe1)],_0xe5b941[_0xc5066c(0xb2)]),_0x4f2bbe=findAppliedRegroup(_0x4a8cda,_0x47603f[_0xc5066c(0xda)],_0x47603f[_0xc5066c(0xc7)]);}catch(_0x5b76e3){_0x29f403=_0x5b76e3 instanceof Error?_0x5b76e3[_0xc5066c(0xe5)]:String(_0x5b76e3);}const _0x1392fc=mutationResult({..._0x47603f['plan'],'after':_0x4f2bbe??null,'dryRun':![],'succeeded':[{'groupId':_0x4f2bbe?.[_0xc5066c(0x9d)]['id']??null,'menuIds':_0x47603f[_0xc5066c(0xc7)],'taskId':_0x2307f1[_0xc5066c(0xb0)],'status':_0x2307f1[_0xc5066c(0xa8)],'groupingApplied':_0x4f2bbe?!![]:_0xc5066c(0xec)}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x4a8cda?.['hash']??null,'groupId':_0x4f2bbe?.['group']['id']??null,'groupingApplied':_0x4f2bbe?!![]:'unconfirmed','readbackError':_0x29f403,'lookupCommand':_0x953dbe},'warnings':[..._0x47603f[_0xc5066c(0xba)][_0xc5066c(0xcd)],...!_0x4f2bbe?[unconfirmedRegroupWarning(_0x2307f1)]:[],..._0x29f403?[_0xc5066c(0xdb)+_0x29f403]:[]]}),_0x468aed=_0x2307f1[_0xc5066c(0xa8)]===_0xc5066c(0xaa)&&!_0x4f2bbe?_0xc5066c(0xc6)+_0x2307f1[_0xc5066c(0xb0)]+_0xc5066c(0xde):_0xc5066c(0xcc)+asyncTaskMessage(_0x2307f1);return{'ok':!![],'message':_0x468aed,'data':{..._0x1392fc,'task':_0x2307f1,'query':_0x2307f1['isTerminal']?null:{'command':_0x2d2fca}}};}};function validateRegroupInput(_0x1524be){const _0x5e668a=a137_0x4c8563;if(!_0x1524be[_0x5e668a(0xe6)](_0x5e668a(0xda))['trim']())throw CliErrors[_0x5e668a(0xc9)](_0x5e668a(0xda));parseMenuIds(_0x1524be['str']('menu-ids'));}function parseMenuIds(_0x131d8a){const _0x2dac4c=a137_0x4c8563,_0x5886e8=_0x131d8a[_0x2dac4c(0xd8)](',')['map'](_0x146368=>_0x146368[_0x2dac4c(0xb9)]());if(_0x5886e8[_0x2dac4c(0xd6)]===0x0||_0x5886e8[_0x2dac4c(0xb1)](_0x281c93=>!_0x281c93))throw CliErrors['validation'](_0x2dac4c(0xbb));const _0x23c743=_0x5886e8['map'](_0x5df6e0=>{const _0x2b79bf=_0x2dac4c;if(!/^\d+$/[_0x2b79bf(0xa5)](_0x5df6e0))throw CliErrors[_0x2b79bf(0xdf)](_0x2b79bf(0xbb));const _0x2c5b06=Number(_0x5df6e0);if(!Number['isSafeInteger'](_0x2c5b06)||_0x2c5b06<=0x0)throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x2c5b06;});if(new Set(_0x23c743)[_0x2dac4c(0xd2)]!==_0x23c743[_0x2dac4c(0xd6)])throw CliErrors[_0x2dac4c(0xdf)](_0x2dac4c(0xad));if(_0x23c743['length']>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x2dac4c(0xdf)](_0x2dac4c(0xd9)+MAX_REGROUP_MENU_COUNT+_0x2dac4c(0xee));return _0x23c743;}function buildMenuLookupCommand(_0x2fe852){const _0x174e43=a137_0x4c8563,_0x3dab0d='\x27'+_0x2fe852[_0x174e43(0xd3)](/'/g,_0x174e43(0x92))+'\x27';return CLI_BIN_NAME+_0x174e43(0xa9)+_0x3dab0d+_0x174e43(0xe7);}function unconfirmedRegroupWarning(_0x2e2458){const _0x1cf410=a137_0x4c8563;if(_0x2e2458['status']==='SUCCESS')return _0x1cf410(0x90);if(_0x2e2458[_0x1cf410(0xa8)]===_0x1cf410(0xd4))return _0x1cf410(0xc2);if(_0x2e2458[_0x1cf410(0xb4)])return _0x1cf410(0xd0);return _0x1cf410(0xa3);}function a137_0x22f9(){const _0x1f05d6=['7520457RATRRb','length','map','split','--menu-ids\x20supports\x20at\x20most\x20','label','Regroup\x20readback\x20failed:\x20','<new-group-id>','3803004OdlLrj','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','validation','applied','appCode','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','byId','<platform-generated>','message','str','\x20--format\x20compress','621nNuObB','write','\x20and\x20regroup\x20menu\x20ids\x20','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','unconfirmed','input','\x20menus\x20per\x20regroup\x20request.','filter','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','1613316jxgjri','\x27\x5c\x27\x27','menu_regroup_target_not_leaf','Label\x20of\x20the\x20new\x20root\x20folder','47cmJheh','start\x20menu\x20regroup','plan\x20regroup','start\x20regroup','failed','type','menu_regroup_target_label_missing','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','group','childrenCount','12706100XwSEwN','/smartapi/menu/regroup','folder','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','934122OFWlwh','test','childrenIds','77vegeBm','status','\x20menu\x20list\x20--appcode\x20','SUCCESS','menu-ids','string','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','join','menu_regroup_label_conflict','taskId','some','cookie','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','knownStatus','Menu\x20','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','7678zAoscK',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','trim','plan','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','get','stringify','92936TLQKxS','POST','10henAWn','3FyqnXS','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','toLowerCase','readbackError','parentId','Regroup\x20task\x20','menuIds','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','flagMissing','menus','regroup-submit','Regroup\x20task\x20accepted.\x20','warnings','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','regroup-start','size','replace','FAILED'];a137_0x22f9=function(){return _0x1f05d6;};return a137_0x22f9();}async function buildRegroupPlan(_0x4d8c50,_0x294900){const _0x2ce290=a137_0x4c8563,_0x48d09f=_0x4d8c50[_0x2ce290(0xe6)]('label')[_0x2ce290(0xb9)](),_0xfe4131=parseMenuIds(_0x4d8c50[_0x2ce290(0xe6)]('menu-ids')),_0x1c3a89=await fetchMutationSnapshot(_0x4d8c50,_0x2ce290(0x97)),_0x2b7e05=_0xfe4131[_0x2ce290(0xd7)](_0x3e5737=>requireMenu(_0x1c3a89,_0x3e5737));for(const _0x5a250e of _0x2b7e05){if(_0x5a250e['type'][_0x2ce290(0xb9)]()[_0x2ce290(0xc3)]()===_0x2ce290(0xa1)||_0x5a250e[_0x2ce290(0x9e)]>0x0)throw menuError(_0x2ce290(0x93),'Menu\x20'+_0x5a250e['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.');if(!_0x5a250e['label'][_0x2ce290(0xb9)]())throw menuError(_0x2ce290(0x9b),_0x2ce290(0xb5)+_0x5a250e['id']+_0x2ce290(0x9c),_0x2ce290(0xb3));}const _0x568cd5=findAppliedRegroup(_0x1c3a89,_0x48d09f,_0xfe4131);if(_0x568cd5)throw menuError('menu_regroup_already_applied','Menus\x20'+_0xfe4131['join'](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0x568cd5[_0x2ce290(0x9d)]['id']+'\x20('+JSON[_0x2ce290(0xbd)](_0x48d09f)+').',_0x2ce290(0xeb));const _0x30ec51=_0x1c3a89[_0x2ce290(0xca)][_0x2ce290(0x8f)](_0x1780cf=>_0x1780cf[_0x2ce290(0xc5)]==null&&_0x1780cf[_0x2ce290(0x9a)][_0x2ce290(0xb9)]()['toLowerCase']()==='folder'&&_0x1780cf[_0x2ce290(0xda)]===_0x48d09f);if(_0x30ec51[_0x2ce290(0xd6)]>0x0)throw menuError(_0x2ce290(0xaf),'Root\x20folder\x20label\x20'+JSON[_0x2ce290(0xbd)](_0x48d09f)+_0x2ce290(0xb6)+_0x30ec51[_0x2ce290(0xd7)](_0x34b7ab=>_0x34b7ab['id'])[_0x2ce290(0xae)](',\x20')+'.',_0x2ce290(0xa2));const _0x5be18f={'appCode':_0x4d8c50[_0x2ce290(0xe1)],'menuGroups':[{'label':_0x48d09f,'type':_0x2ce290(0xa1),'children':_0x2b7e05[_0x2ce290(0xd7)](_0x2c3adc=>({'id':_0x2c3adc['id'],'label':_0x2c3adc[_0x2ce290(0xda)]}))}]},_0x54311d=mutationResult({'operation':_0x2ce290(0xd1),'selector':{'label':_0x48d09f,'menuIds':_0xfe4131},'before':{'menus':_0x2b7e05},'after':{'group':{'id':null,'parentId':null,'label':_0x48d09f,'path':_0x2ce290(0xe4),'type':_0x2ce290(0xa1),'childrenIds':_0xfe4131},'children':_0x2b7e05[_0x2ce290(0xd7)](_0x435a03=>({'id':_0x435a03['id'],'label':_0x435a03[_0x2ce290(0xda)],'beforeParentId':_0x435a03[_0x2ce290(0xc5)],'afterParentId':_0x2ce290(0xdc)}))},'dryRun':_0x294900,'backend':[...BACKEND],'plannedActions':[{'stage':'submit-regroup-task','method':_0x2ce290(0xbf),'path':_0x2ce290(0xa0),'body':_0x5be18f}],'snapshotHash':_0x1c3a89['hash'],'warnings':['The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.',_0x2ce290(0xc8)]});return{'label':_0x48d09f,'menuIds':_0xfe4131,'input':_0x5be18f,'plan':_0x54311d};}function findAppliedRegroup(_0x133233,_0x471029,_0x4f33c5){const _0xedc8fa=a137_0x4c8563,_0x37fa62=_0x4f33c5[_0xedc8fa(0xd7)](_0x3a8481=>_0x133233[_0xedc8fa(0xe3)][_0xedc8fa(0xbc)](_0x3a8481))['filter'](_0x425e35=>Boolean(_0x425e35));if(_0x37fa62[_0xedc8fa(0xd6)]!==_0x4f33c5['length'])return null;const _0x47d1c3=_0x37fa62[0x0]?.[_0xedc8fa(0xc5)];if(_0x47d1c3==null||_0x37fa62['some'](_0x513b8b=>_0x513b8b[_0xedc8fa(0xc5)]!==_0x47d1c3))return null;const _0x1d5903=_0x133233[_0xedc8fa(0xe3)][_0xedc8fa(0xbc)](_0x47d1c3);if(!_0x1d5903||_0x1d5903[_0xedc8fa(0xc5)]!=null||_0x1d5903[_0xedc8fa(0x9a)][_0xedc8fa(0xb9)]()[_0xedc8fa(0xc3)]()!==_0xedc8fa(0xa1)||_0x1d5903[_0xedc8fa(0xda)]!==_0x471029)return null;const _0xa038d6=[..._0x4f33c5]['sort']((_0x7eb6f1,_0xd5c9ae)=>_0x7eb6f1-_0xd5c9ae),_0x5830e6=[..._0x1d5903[_0xedc8fa(0xa6)]]['sort']((_0x527360,_0x3b8b7a)=>_0x527360-_0x3b8b7a);if(JSON['stringify'](_0x5830e6)!==JSON[_0xedc8fa(0xbd)](_0xa038d6))return null;return{'group':_0x1d5903,'children':_0x37fa62};}function a137_0x223d(_0x24d38e,_0x526273){_0x24d38e=_0x24d38e-0x8f;const _0x22f947=a137_0x22f9();let _0x223d14=_0x22f947[_0x24d38e];return _0x223d14;}async function inspectRegroupAfterFailure(_0x22dc6a,_0x3e22fa,_0x2563c0,_0x4da4cb){const _0x2c6c50=a137_0x4c8563;try{const _0x42b0ff=await fetchMenuSnapshot(_0x22dc6a,_0x3e22fa);return{'applied':findAppliedRegroup(_0x42b0ff,_0x2563c0,_0x4da4cb),'readbackError':null};}catch(_0x107aaf){return{'applied':null,'readbackError':_0x107aaf instanceof Error?_0x107aaf[_0x2c6c50(0xe5)]:String(_0x107aaf)};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a138_0x12aeee=a138_0x2014;(function(_0x33b102,_0x1f316b){const _0x25a571=a138_0x2014,_0x5a8a8a=_0x33b102();while(!![]){try{const _0x2e46ce=-parseInt(_0x25a571(0x206))/0x1+-parseInt(_0x25a571(0x210))/0x2*(parseInt(_0x25a571(0x230))/0x3)+parseInt(_0x25a571(0x203))/0x4*(parseInt(_0x25a571(0x1f3))/0x5)+parseInt(_0x25a571(0x21a))/0x6+-parseInt(_0x25a571(0x213))/0x7+-parseInt(_0x25a571(0x21c))/0x8*(parseInt(_0x25a571(0x1ef))/0x9)+parseInt(_0x25a571(0x236))/0xa*(parseInt(_0x25a571(0x209))/0xb);if(_0x2e46ce===_0x1f316b)break;else _0x5a8a8a['push'](_0x5a8a8a['shift']());}catch(_0x134620){_0x5a8a8a['push'](_0x5a8a8a['shift']());}}}(a138_0x6be1,0x2d03b));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':'POST','path':'/smartapi/menu/update'}];export const menuRename={'service':'menu','command':a138_0x12aeee(0x233),'description':a138_0x12aeee(0x20c),'risk':a138_0x12aeee(0x1ff),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a138_0x12aeee(0x211),'type':a138_0x12aeee(0x1f2),'required':!![],'description':a138_0x12aeee(0x1f5)},{'name':a138_0x12aeee(0x223),'type':a138_0x12aeee(0x1f2),'required':!![],'description':a138_0x12aeee(0x208)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x29bd54){validateInput(_0x29bd54);},async 'dryRun'(_0x2250d4){const _0x321a4d=a138_0x12aeee;validateInput(_0x2250d4);const _0x40650a=await buildPlan(_0x2250d4,!![]);return menuDryRunResult(_0x40650a[_0x321a4d(0x207)],{'method':_0x321a4d(0x219),'url':_0x321a4d(0x20e),'body':_0x40650a[_0x321a4d(0x202)],'description':_0x321a4d(0x212)+_0x40650a[_0x321a4d(0x202)]['id']+'.'});},async 'execute'(_0x550787){const _0x5bc5c9=a138_0x12aeee;validateInput(_0x550787);const _0x1c7896=await buildPlan(_0x550787,![]),{plan:_0x119a26,body:_0x388a40,before:_0x67cce0,noChanges:_0x3b4b22}=_0x1c7896,_0x5e1cad=_0x388a40['id'];if(_0x3b4b22)return renameSuccess(_0x119a26,_0x1c7896[_0x5bc5c9(0x1ee)],_0x67cce0,!![],![]);await recheckMutationSnapshot(_0x550787,_0x119a26,'rename\x20menu',_0x5e1cad);try{await updateMenuEntity(_0x550787[_0x5bc5c9(0x1fe)],_0x550787[_0x5bc5c9(0x1fc)],{'id':_0x5e1cad,'label':_0x388a40[_0x5bc5c9(0x211)]});}catch(_0x295da2){const _0x4c5d6a=mapMenuApiError(_0x295da2,_0x5bc5c9(0x233),_0x5e1cad);if(isMenuResponseLoss(_0x295da2)&&_0x4c5d6a['code']!==_0x5bc5c9(0x229))return recoverAfterResponseLoss(_0x550787,_0x1c7896);throw menuFailure(_0x4c5d6a,_0x119a26,{'stage':_0x5bc5c9(0x21e),'failed':{'id':_0x5e1cad},'warnings':[_0x5bc5c9(0x21f)],'verification':{'status':_0x5bc5c9(0x234),'targetId':_0x5e1cad,'lookupCommand':buildLookupCommand(_0x550787['appCode'])}});}let _0x4e3069,_0x9e6b13;try{_0x4e3069=await fetchMenuSnapshot(_0x550787['appCode'],_0x550787[_0x5bc5c9(0x1fc)]),_0x9e6b13=requireMenu(_0x4e3069,_0x5e1cad),verifyRenamedFact(_0x67cce0,_0x9e6b13,_0x388a40[_0x5bc5c9(0x211)]);}catch(_0x191f52){const _0x3b0acd=describeMenuErrorCause(_0x191f52,'verify\x20menu\x20rename',_0x5e1cad),_0xc604dd=asVerificationError(_0x191f52,_0x5bc5c9(0x1fd)+_0x5e1cad+_0x5bc5c9(0x20f));throw menuFailure(_0xc604dd,_0x119a26,{'stage':_0x5bc5c9(0x200),'succeeded':[{'id':_0x5e1cad,'updateRequested':!![]}],'failed':{'id':_0x5e1cad,'requestedStateConfirmed':![],..._0x3b0acd},'warnings':[_0x5bc5c9(0x215)],'verification':{'status':'failed','targetId':_0x5e1cad,'lookupCommand':buildLookupCommand(_0x550787[_0x5bc5c9(0x1fe)])}});}return renameSuccess(_0x119a26,_0x4e3069,_0x9e6b13,![],![]);}};function validateInput(_0x25652c){const _0x429e7e=a138_0x12aeee;validateExactId(_0x25652c);if(!_0x25652c['str'](_0x429e7e(0x211))[_0x429e7e(0x1f9)]())throw CliErrors[_0x429e7e(0x220)](_0x429e7e(0x218));if(!_0x25652c[_0x429e7e(0x20a)](_0x429e7e(0x223))['trim']())throw CliErrors['flagMissing']('expect-label');}function a138_0x6be1(){const _0x5b6fd5=['validation','type','url','expect-label','update-recovery','datasetId','pageId','childrenCount','\x20label\x20update\x20did\x20not\x20take\x20effect.','menu_permission_denied',',\x20current\x20','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','\x20could\x20not\x20be\x20verified\x20safely','childrenIds','pageType','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','2271FtXbie','modelType','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','rename','failed','visible','40PZqoKT','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','path','\x20--format\x20compress','datasetCode','Menu\x20','snapshot','9pXwTwC','replace','rename-menu','string','5GIlmth','\x27\x5c\x27\x27','New\x20menu\x20label','hash','\x20already\x20has\x20the\x20requested\x20label.','parentId','trim','Response\x20was\x20lost\x20and\x20menu\x20','rabetbase\x20menu\x20list\x20--appcode\x20','cookie','Rename\x20request\x20for\x20menu\x20','appCode','write','verification','depth','body','1327044UGSmoO','resourcesValid','byId','82677BAoqiz','plan','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','1031899HcAKha','str','resources','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','sort','/smartapi/menu/update','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','542PGFGrh','label','Would\x20rename\x20menu\x20','222159wZSryB','readbackFailed','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','isArray','stringify','--label\x20cannot\x20be\x20empty.','POST','313356mCkOff','requestedLabelObserved','2042264iKFYTU','menu\x20list','update','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'];a138_0x6be1=function(){return _0x5b6fd5;};return a138_0x6be1();}async function buildPlan(_0x4b047d,_0x4aba03){const _0x48a485=a138_0x12aeee,_0x6f7ad6=validateExactId(_0x4b047d),_0x2b9c25=_0x4b047d[_0x48a485(0x20a)](_0x48a485(0x211))['trim'](),_0x1a1f52=_0x4b047d[_0x48a485(0x20a)](_0x48a485(0x223)),_0x2e6e64=await fetchMutationSnapshot(_0x4b047d,'rename\x20menu',_0x6f7ad6),_0x16ed5f=requireMenu(_0x2e6e64,_0x6f7ad6);if(_0x16ed5f[_0x48a485(0x211)]!==_0x1a1f52)throw menuError('menu_state_drift',_0x48a485(0x1ed)+_0x6f7ad6+'\x20label\x20changed:\x20expected\x20'+JSON[_0x48a485(0x217)](_0x1a1f52)+_0x48a485(0x22a)+JSON['stringify'](_0x16ed5f[_0x48a485(0x211)])+'.',_0x48a485(0x22f));const _0x262d28={'id':_0x6f7ad6,'appCode':_0x4b047d['appCode'],'label':_0x2b9c25},_0xbf35a6={..._0x16ed5f,'label':_0x2b9c25},_0x3c3242=_0x16ed5f[_0x48a485(0x211)]===_0x2b9c25,_0x1ab016=_0x3c3242?[]:[{'stage':_0x48a485(0x1f1),'method':_0x48a485(0x219),'path':_0x48a485(0x20e),'body':_0x262d28}];return{'snapshot':_0x2e6e64,'before':_0x16ed5f,'body':_0x262d28,'noChanges':_0x3c3242,'plan':mutationResult({'operation':'rename','selector':{'id':_0x6f7ad6},'before':_0x16ed5f,'after':_0xbf35a6,'dryRun':_0x4aba03,'backend':[...BACKEND],'plannedActions':_0x1ab016,'snapshotHash':_0x2e6e64[_0x48a485(0x1f6)],'warnings':_0x3c3242?['The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.']:[]})};}function verifyRenamedFact(_0x491c74,_0x428154,_0x235bac){const _0x3e7ba2=a138_0x12aeee,_0x426ad6=[['id',_0x428154['id'],_0x491c74['id']],[_0x3e7ba2(0x1f8),_0x428154[_0x3e7ba2(0x1f8)],_0x491c74[_0x3e7ba2(0x1f8)]],[_0x3e7ba2(0x201),_0x428154[_0x3e7ba2(0x201)],_0x491c74[_0x3e7ba2(0x201)]],[_0x3e7ba2(0x238),_0x428154[_0x3e7ba2(0x238)],_0x491c74[_0x3e7ba2(0x238)]],[_0x3e7ba2(0x222),_0x428154[_0x3e7ba2(0x222)],_0x491c74[_0x3e7ba2(0x222)]],[_0x3e7ba2(0x221),_0x428154[_0x3e7ba2(0x221)],_0x491c74['type']],[_0x3e7ba2(0x235),_0x428154['visible'],_0x491c74[_0x3e7ba2(0x235)]],[_0x3e7ba2(0x20d),_0x428154[_0x3e7ba2(0x20d)],_0x491c74[_0x3e7ba2(0x20d)]],[_0x3e7ba2(0x20b),_0x428154[_0x3e7ba2(0x20b)],_0x491c74['resources']],[_0x3e7ba2(0x204),_0x428154[_0x3e7ba2(0x204)],_0x491c74[_0x3e7ba2(0x204)]],[_0x3e7ba2(0x22d),_0x428154[_0x3e7ba2(0x22d)],_0x491c74['childrenIds']],[_0x3e7ba2(0x227),_0x428154[_0x3e7ba2(0x227)],_0x491c74['childrenCount']],[_0x3e7ba2(0x226),_0x428154['pageId'],_0x491c74[_0x3e7ba2(0x226)]],['pageType',_0x428154[_0x3e7ba2(0x22e)],_0x491c74[_0x3e7ba2(0x22e)]],['modelType',_0x428154[_0x3e7ba2(0x231)],_0x491c74[_0x3e7ba2(0x231)]],[_0x3e7ba2(0x225),_0x428154['datasetId'],_0x491c74['datasetId']],[_0x3e7ba2(0x1ec),_0x428154[_0x3e7ba2(0x1ec)],_0x491c74[_0x3e7ba2(0x1ec)]]];for(const [_0x2d6be6,_0x6706c0,_0x174a06]of _0x426ad6){assertVerified(sameValue(_0x6706c0,_0x174a06),_0x3e7ba2(0x1ed)+_0x491c74['id']+'\x20'+_0x2d6be6+'\x20changed\x20during\x20the\x20label-only\x20rename.');}assertVerified(_0x428154[_0x3e7ba2(0x211)]===_0x235bac,_0x3e7ba2(0x1ed)+_0x491c74['id']+_0x3e7ba2(0x228));}function sameValue(_0x53402b,_0x51f4e6){const _0x3d126c=a138_0x12aeee;if(Array[_0x3d126c(0x216)](_0x53402b)||Array[_0x3d126c(0x216)](_0x51f4e6))return JSON[_0x3d126c(0x217)](_0x53402b)===JSON['stringify'](_0x51f4e6);return _0x53402b===_0x51f4e6;}function renameSuccess(_0x3629c0,_0x3faa13,_0x8c7a9,_0x28a21e,_0x2611c9){const _0x268b28=a138_0x12aeee,_0x4a5f90=_0x8c7a9['id'],_0x35496c=mutationResult({..._0x3629c0,'after':_0x8c7a9,'dryRun':![],'succeeded':[{'id':_0x4a5f90,'updated':!_0x28a21e,'skipped':_0x28a21e,'recovered':_0x2611c9}],'verification':{'checkedBy':_0x268b28(0x21d),'snapshotHash':_0x3faa13[_0x268b28(0x1f6)],'targetId':_0x4a5f90,'matchesRequestedState':!![],'recovered':_0x2611c9}});return{'ok':!![],'message':_0x2611c9?_0x268b28(0x22b)+_0x4a5f90+'.':_0x28a21e?_0x268b28(0x1ed)+_0x4a5f90+_0x268b28(0x1f7):'Renamed\x20menu\x20'+_0x4a5f90+'.','data':{..._0x35496c,'recovered':_0x2611c9}};}async function recoverAfterResponseLoss(_0x1c062e,_0x31ae8e){const _0x137025=a138_0x12aeee,{plan:_0x232e5d,before:_0x30508e,body:_0x4e0702}=_0x31ae8e;let _0x50c403;try{_0x50c403=await fetchMenuSnapshot(_0x1c062e[_0x137025(0x1fe)],_0x1c062e[_0x137025(0x1fc)]);}catch{throw recoveryRequired(_0x232e5d,_0x1c062e[_0x137025(0x1fe)],{'id':_0x4e0702['id'],'readbackFailed':!![]});}const _0xf7d4c2=_0x50c403[_0x137025(0x205)]['get'](_0x4e0702['id']);if(!_0xf7d4c2||_0xf7d4c2[_0x137025(0x211)]!==_0x4e0702[_0x137025(0x211)])throw recoveryRequired(_0x232e5d,_0x1c062e['appCode'],{'id':_0x4e0702['id'],'requestedLabelObserved':![],'after':_0xf7d4c2??null});try{verifyRenamedFact(_0x30508e,_0xf7d4c2,_0x4e0702[_0x137025(0x211)]);}catch(_0x361541){const _0xd784a1=asVerificationError(_0x361541,_0x137025(0x1fa)+_0x4e0702['id']+_0x137025(0x22c));throw menuFailure(_0xd784a1,_0x232e5d,{'stage':_0x137025(0x224),'succeeded':[{'id':_0x4e0702['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x4e0702['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0xf7d4c2,'warnings':['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x137025(0x234),'targetId':_0x4e0702['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x1c062e[_0x137025(0x1fe)])}});}return renameSuccess(_0x232e5d,_0x50c403,_0xf7d4c2,![],!![]);}function a138_0x2014(_0x272950,_0x2c0448){_0x272950=_0x272950-0x1eb;const _0x6be1b0=a138_0x6be1();let _0x201405=_0x6be1b0[_0x272950];return _0x201405;}function recoveryRequired(_0x5a5a7e,_0x38c800,_0x10fd06){const _0x2c3e9c=a138_0x12aeee,_0x54743e=menuError('menu_update_recovery_required','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','Run\x20'+buildLookupCommand(_0x38c800)+_0x2c3e9c(0x232));return menuFailure(_0x54743e,_0x5a5a7e,{'stage':_0x2c3e9c(0x224),'failed':{'id':_0x10fd06['id'],..._0x10fd06[_0x2c3e9c(0x21b)]===undefined?{}:{'requestedLabelObserved':_0x10fd06['requestedLabelObserved']},..._0x10fd06['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x10fd06['after'],'warnings':[_0x2c3e9c(0x237)],'verification':{'status':_0x2c3e9c(0x234),'targetId':_0x10fd06['id'],..._0x10fd06[_0x2c3e9c(0x21b)]===undefined?{}:{'requestedLabelObserved':_0x10fd06[_0x2c3e9c(0x21b)]},..._0x10fd06[_0x2c3e9c(0x214)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x38c800)}});}function buildLookupCommand(_0x5ead05){const _0xe5ef31=a138_0x12aeee,_0x1980c9='\x27'+_0x5ead05[_0xe5ef31(0x1f0)](/'/g,_0xe5ef31(0x1f4))+'\x27';return _0xe5ef31(0x1fb)+_0x1980c9+_0xe5ef31(0x1eb);}
|
|
1
|
+
const a138_0xd5ce9e=a138_0xeafb;function a138_0x5609(){const _0x5e5e0c=['appCode','body','childrenCount','\x20changed\x20during\x20the\x20label-only\x20rename.','Would\x20rename\x20menu\x20','menu','type','rename\x20menu','613155DJVRbf','path','verify\x20menu\x20rename','get','hash','14780268cjxlAC','parentId','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','requestedLabelObserved','\x20label\x20update\x20did\x20not\x20take\x20effect.','depth','childrenIds','url','failed','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','\x20already\x20has\x20the\x20requested\x20label.','rename-menu','5308275eFsTRP','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','655421EXqZKw','274360YdoLWJ','update-recovery','visible','New\x20menu\x20label','/smartapi/menu/update','modelType','label','trim','resourcesValid','menu\x20list','rename','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','str','cookie','verification','6WZkMAi','pageId','pageType','Menu\x20','123iYopad','readbackFailed','stringify','menu_permission_denied','\x20could\x20not\x20be\x20verified\x20safely','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','\x20label\x20changed:\x20expected\x20','Renamed\x20menu\x20','datasetCode','plan','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','--label\x20cannot\x20be\x20empty.','Response\x20was\x20lost\x20and\x20menu\x20','string','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.',',\x20current\x20','sort','snapshot','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','POST','replace','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','expect-label','4624sYkuiL','menu_state_drift','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','isArray','Rename\x20request\x20for\x20menu\x20','update','95556eZBKQv','datasetId','menu_update_recovery_required','byId','code'];a138_0x5609=function(){return _0x5e5e0c;};return a138_0x5609();}(function(_0x3b881d,_0x547f42){const _0x359adb=a138_0xeafb,_0x5326ec=_0x3b881d();while(!![]){try{const _0x4b5085=parseInt(_0x359adb(0x1a6))/0x1+-parseInt(_0x359adb(0x180))/0x2+-parseInt(_0x359adb(0x168))/0x3*(parseInt(_0x359adb(0x186))/0x4)+parseInt(_0x359adb(0x193))/0x5*(parseInt(_0x359adb(0x164))/0x6)+-parseInt(_0x359adb(0x1a4))/0x7+-parseInt(_0x359adb(0x1a7))/0x8+parseInt(_0x359adb(0x198))/0x9;if(_0x4b5085===_0x547f42)break;else _0x5326ec['push'](_0x5326ec['shift']());}catch(_0x1075fa){_0x5326ec['push'](_0x5326ec['shift']());}}}(a138_0x5609,0x9db23));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';function a138_0xeafb(_0x18de41,_0x2f67ad){_0x18de41=_0x18de41-0x160;const _0x56091f=a138_0x5609();let _0xeafb5b=_0x56091f[_0x18de41];return _0xeafb5b;}const BACKEND=[{'method':a138_0xd5ce9e(0x17c),'path':a138_0xd5ce9e(0x1ab)}];export const menuRename={'service':a138_0xd5ce9e(0x190),'command':a138_0xd5ce9e(0x1b1),'description':a138_0xd5ce9e(0x17b),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a138_0xd5ce9e(0x1ad),'type':a138_0xd5ce9e(0x176),'required':!![],'description':a138_0xd5ce9e(0x1aa)},{'name':a138_0xd5ce9e(0x17f),'type':a138_0xd5ce9e(0x176),'required':!![],'description':a138_0xd5ce9e(0x182)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x382570){validateInput(_0x382570);},async 'dryRun'(_0x3706f5){const _0x59fe10=a138_0xd5ce9e;validateInput(_0x3706f5);const _0x552471=await buildPlan(_0x3706f5,!![]);return menuDryRunResult(_0x552471[_0x59fe10(0x171)],{'method':'POST','url':_0x59fe10(0x1ab),'body':_0x552471['body'],'description':_0x59fe10(0x18f)+_0x552471[_0x59fe10(0x18c)]['id']+'.'});},async 'execute'(_0x22077c){const _0x28eb57=a138_0xd5ce9e;validateInput(_0x22077c);const _0x2beb34=await buildPlan(_0x22077c,![]),{plan:_0xc989cf,body:_0x1be5a6,before:_0x572308,noChanges:_0x2e88b9}=_0x2beb34,_0xfef948=_0x1be5a6['id'];if(_0x2e88b9)return renameSuccess(_0xc989cf,_0x2beb34[_0x28eb57(0x17a)],_0x572308,!![],![]);await recheckMutationSnapshot(_0x22077c,_0xc989cf,_0x28eb57(0x192),_0xfef948);try{await updateMenuEntity(_0x22077c[_0x28eb57(0x18b)],_0x22077c[_0x28eb57(0x162)],{'id':_0xfef948,'label':_0x1be5a6[_0x28eb57(0x1ad)]});}catch(_0x58b908){const _0x1137fb=mapMenuApiError(_0x58b908,'rename',_0xfef948);if(isMenuResponseLoss(_0x58b908)&&_0x1137fb[_0x28eb57(0x18a)]!==_0x28eb57(0x16b))return recoverAfterResponseLoss(_0x22077c,_0x2beb34);throw menuFailure(_0x1137fb,_0xc989cf,{'stage':_0x28eb57(0x185),'failed':{'id':_0xfef948},'warnings':['The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x28eb57(0x1a0),'targetId':_0xfef948,'lookupCommand':buildLookupCommand(_0x22077c[_0x28eb57(0x18b)])}});}let _0x597078,_0x38aacd;try{_0x597078=await fetchMenuSnapshot(_0x22077c[_0x28eb57(0x18b)],_0x22077c[_0x28eb57(0x162)]),_0x38aacd=requireMenu(_0x597078,_0xfef948),verifyRenamedFact(_0x572308,_0x38aacd,_0x1be5a6[_0x28eb57(0x1ad)]);}catch(_0x303433){const _0x4723f7=describeMenuErrorCause(_0x303433,_0x28eb57(0x195),_0xfef948),_0x9be529=asVerificationError(_0x303433,_0x28eb57(0x184)+_0xfef948+_0x28eb57(0x17e));throw menuFailure(_0x9be529,_0xc989cf,{'stage':_0x28eb57(0x163),'succeeded':[{'id':_0xfef948,'updateRequested':!![]}],'failed':{'id':_0xfef948,'requestedStateConfirmed':![],..._0x4723f7},'warnings':[_0x28eb57(0x19a)],'verification':{'status':_0x28eb57(0x1a0),'targetId':_0xfef948,'lookupCommand':buildLookupCommand(_0x22077c['appCode'])}});}return renameSuccess(_0xc989cf,_0x597078,_0x38aacd,![],![]);}};function validateInput(_0x3fb6da){const _0x4da544=a138_0xd5ce9e;validateExactId(_0x3fb6da);if(!_0x3fb6da[_0x4da544(0x161)](_0x4da544(0x1ad))[_0x4da544(0x1ae)]())throw CliErrors['validation'](_0x4da544(0x174));if(!_0x3fb6da['str'](_0x4da544(0x17f))[_0x4da544(0x1ae)]())throw CliErrors['flagMissing'](_0x4da544(0x17f));}async function buildPlan(_0x5d9384,_0x5cef95){const _0x5b816a=a138_0xd5ce9e,_0xd418a3=validateExactId(_0x5d9384),_0x36fbd7=_0x5d9384['str'](_0x5b816a(0x1ad))[_0x5b816a(0x1ae)](),_0x262174=_0x5d9384[_0x5b816a(0x161)](_0x5b816a(0x17f)),_0x81a4ed=await fetchMutationSnapshot(_0x5d9384,_0x5b816a(0x192),_0xd418a3),_0x229a02=requireMenu(_0x81a4ed,_0xd418a3);if(_0x229a02['label']!==_0x262174)throw menuError(_0x5b816a(0x181),'Menu\x20'+_0xd418a3+_0x5b816a(0x16e)+JSON[_0x5b816a(0x16a)](_0x262174)+_0x5b816a(0x178)+JSON[_0x5b816a(0x16a)](_0x229a02[_0x5b816a(0x1ad)])+'.',_0x5b816a(0x1a1));const _0x1442c4={'id':_0xd418a3,'appCode':_0x5d9384['appCode'],'label':_0x36fbd7},_0x2577c9={..._0x229a02,'label':_0x36fbd7},_0x4270d0=_0x229a02[_0x5b816a(0x1ad)]===_0x36fbd7,_0x5bfb5f=_0x4270d0?[]:[{'stage':_0x5b816a(0x1a3),'method':_0x5b816a(0x17c),'path':'/smartapi/menu/update','body':_0x1442c4}];return{'snapshot':_0x81a4ed,'before':_0x229a02,'body':_0x1442c4,'noChanges':_0x4270d0,'plan':mutationResult({'operation':_0x5b816a(0x1b1),'selector':{'id':_0xd418a3},'before':_0x229a02,'after':_0x2577c9,'dryRun':_0x5cef95,'backend':[...BACKEND],'plannedActions':_0x5bfb5f,'snapshotHash':_0x81a4ed[_0x5b816a(0x197)],'warnings':_0x4270d0?[_0x5b816a(0x1a5)]:[]})};}function verifyRenamedFact(_0x534c2a,_0x2fde35,_0x530f5a){const _0xb41159=a138_0xd5ce9e,_0x4781ce=[['id',_0x2fde35['id'],_0x534c2a['id']],[_0xb41159(0x199),_0x2fde35['parentId'],_0x534c2a['parentId']],[_0xb41159(0x19d),_0x2fde35[_0xb41159(0x19d)],_0x534c2a[_0xb41159(0x19d)]],[_0xb41159(0x194),_0x2fde35['path'],_0x534c2a[_0xb41159(0x194)]],['url',_0x2fde35[_0xb41159(0x19f)],_0x534c2a[_0xb41159(0x19f)]],[_0xb41159(0x191),_0x2fde35[_0xb41159(0x191)],_0x534c2a[_0xb41159(0x191)]],[_0xb41159(0x1a9),_0x2fde35['visible'],_0x534c2a['visible']],[_0xb41159(0x179),_0x2fde35['sort'],_0x534c2a[_0xb41159(0x179)]],['resources',_0x2fde35['resources'],_0x534c2a['resources']],['resourcesValid',_0x2fde35[_0xb41159(0x1af)],_0x534c2a[_0xb41159(0x1af)]],[_0xb41159(0x19e),_0x2fde35[_0xb41159(0x19e)],_0x534c2a[_0xb41159(0x19e)]],[_0xb41159(0x18d),_0x2fde35[_0xb41159(0x18d)],_0x534c2a[_0xb41159(0x18d)]],[_0xb41159(0x165),_0x2fde35[_0xb41159(0x165)],_0x534c2a[_0xb41159(0x165)]],['pageType',_0x2fde35[_0xb41159(0x166)],_0x534c2a[_0xb41159(0x166)]],['modelType',_0x2fde35[_0xb41159(0x1ac)],_0x534c2a['modelType']],[_0xb41159(0x187),_0x2fde35[_0xb41159(0x187)],_0x534c2a[_0xb41159(0x187)]],[_0xb41159(0x170),_0x2fde35['datasetCode'],_0x534c2a[_0xb41159(0x170)]]];for(const [_0x379275,_0x2c9b06,_0x2b404e]of _0x4781ce){assertVerified(sameValue(_0x2c9b06,_0x2b404e),_0xb41159(0x167)+_0x534c2a['id']+'\x20'+_0x379275+_0xb41159(0x18e));}assertVerified(_0x2fde35[_0xb41159(0x1ad)]===_0x530f5a,_0xb41159(0x167)+_0x534c2a['id']+_0xb41159(0x19c));}function sameValue(_0x241003,_0x4c353c){const _0x3f440e=a138_0xd5ce9e;if(Array[_0x3f440e(0x183)](_0x241003)||Array['isArray'](_0x4c353c))return JSON[_0x3f440e(0x16a)](_0x241003)===JSON[_0x3f440e(0x16a)](_0x4c353c);return _0x241003===_0x4c353c;}function renameSuccess(_0x2c0dbf,_0x562739,_0x5c6e12,_0x50e1e8,_0x3c6f06){const _0x35d564=a138_0xd5ce9e,_0x3f7d7e=_0x5c6e12['id'],_0x3cf59f=mutationResult({..._0x2c0dbf,'after':_0x5c6e12,'dryRun':![],'succeeded':[{'id':_0x3f7d7e,'updated':!_0x50e1e8,'skipped':_0x50e1e8,'recovered':_0x3c6f06}],'verification':{'checkedBy':_0x35d564(0x1b0),'snapshotHash':_0x562739[_0x35d564(0x197)],'targetId':_0x3f7d7e,'matchesRequestedState':!![],'recovered':_0x3c6f06}});return{'ok':!![],'message':_0x3c6f06?_0x35d564(0x172)+_0x3f7d7e+'.':_0x50e1e8?_0x35d564(0x167)+_0x3f7d7e+_0x35d564(0x1a2):_0x35d564(0x16f)+_0x3f7d7e+'.','data':{..._0x3cf59f,'recovered':_0x3c6f06}};}async function recoverAfterResponseLoss(_0x2a4b4a,_0x533450){const _0x4cf3bf=a138_0xd5ce9e,{plan:_0x550877,before:_0x4b72fd,body:_0x11745b}=_0x533450;let _0xa9387d;try{_0xa9387d=await fetchMenuSnapshot(_0x2a4b4a[_0x4cf3bf(0x18b)],_0x2a4b4a[_0x4cf3bf(0x162)]);}catch{throw recoveryRequired(_0x550877,_0x2a4b4a[_0x4cf3bf(0x18b)],{'id':_0x11745b['id'],'readbackFailed':!![]});}const _0x44f01b=_0xa9387d[_0x4cf3bf(0x189)][_0x4cf3bf(0x196)](_0x11745b['id']);if(!_0x44f01b||_0x44f01b[_0x4cf3bf(0x1ad)]!==_0x11745b[_0x4cf3bf(0x1ad)])throw recoveryRequired(_0x550877,_0x2a4b4a[_0x4cf3bf(0x18b)],{'id':_0x11745b['id'],'requestedLabelObserved':![],'after':_0x44f01b??null});try{verifyRenamedFact(_0x4b72fd,_0x44f01b,_0x11745b[_0x4cf3bf(0x1ad)]);}catch(_0x1902e5){const _0x384798=asVerificationError(_0x1902e5,_0x4cf3bf(0x175)+_0x11745b['id']+_0x4cf3bf(0x16c));throw menuFailure(_0x384798,_0x550877,{'stage':_0x4cf3bf(0x1a8),'succeeded':[{'id':_0x11745b['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x11745b['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x44f01b,'warnings':[_0x4cf3bf(0x173)],'verification':{'status':'failed','targetId':_0x11745b['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x2a4b4a[_0x4cf3bf(0x18b)])}});}return renameSuccess(_0x550877,_0xa9387d,_0x44f01b,![],!![]);}function recoveryRequired(_0x3db25c,_0x3c4067,_0x102625){const _0x58dac1=a138_0xd5ce9e,_0x2e68a3=menuError(_0x58dac1(0x188),_0x58dac1(0x160),'Run\x20'+buildLookupCommand(_0x3c4067)+_0x58dac1(0x177));return menuFailure(_0x2e68a3,_0x3db25c,{'stage':_0x58dac1(0x1a8),'failed':{'id':_0x102625['id'],..._0x102625[_0x58dac1(0x19b)]===undefined?{}:{'requestedLabelObserved':_0x102625['requestedLabelObserved']},..._0x102625[_0x58dac1(0x169)]?{'readbackFailed':!![]}:{}},'after':_0x102625['after'],'warnings':[_0x58dac1(0x16d)],'verification':{'status':'failed','targetId':_0x102625['id'],..._0x102625[_0x58dac1(0x19b)]===undefined?{}:{'requestedLabelObserved':_0x102625['requestedLabelObserved']},..._0x102625[_0x58dac1(0x169)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x3c4067)}});}function buildLookupCommand(_0x3b7a9c){const _0x5671b3=a138_0xd5ce9e,_0x38625a='\x27'+_0x3b7a9c[_0x5671b3(0x17d)](/'/g,'\x27\x5c\x27\x27')+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x38625a+'\x20--format\x20compress';}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a139_0x74a1(_0xbace1,_0x2e91f5){_0xbace1=_0xbace1-0x101;const _0x20c508=a139_0x20c5();let _0x74a1c6=_0x20c508[_0xbace1];return _0x74a1c6;}(function(_0x4ad285,_0x3e1c11){const _0x33305b=a139_0x74a1,_0x1a1981=_0x4ad285();while(!![]){try{const _0x5d23f0=-parseInt(_0x33305b(0x11a))/0x1*(parseInt(_0x33305b(0x11b))/0x2)+parseInt(_0x33305b(0x10a))/0x3+parseInt(_0x33305b(0x120))/0x4*(-parseInt(_0x33305b(0x108))/0x5)+-parseInt(_0x33305b(0x10b))/0x6+-parseInt(_0x33305b(0x11e))/0x7*(parseInt(_0x33305b(0x105))/0x8)+-parseInt(_0x33305b(0x111))/0x9+parseInt(_0x33305b(0x117))/0xa;if(_0x5d23f0===_0x3e1c11)break;else _0x1a1981['push'](_0x1a1981['shift']());}catch(_0x3d5a15){_0x1a1981['push'](_0x1a1981['shift']());}}}(a139_0x20c5,0x5779b));function strWidth(_0x28ab9a){const _0x433a0c=a139_0x74a1;let _0x39b784=0x0;for(const _0xa9ba48 of _0x28ab9a){_0x39b784+=/[\u4e00-\u9fa5]/[_0x433a0c(0x109)](_0xa9ba48)?0x2:0x1;}return _0x39b784;}function a139_0x20c5(){const _0x1788b8=['59030gwgozN','test','294402TxDzNh','3648636MfdTGD','Path','push','\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','showOnline','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','1094211UZrYrB','label','local','repeat','max','join','16386240eqDiIl','path','\x20\x20No\x20pages\x20to\x20sync.','179rXysIW','2138QWuOoA','(unchanged)','\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','7hxxqIw','Platform','148EmGzyd','\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','Local','length','Menu\x20Name','\x20\x20Affected\x20menus:\x20','164808niLNpH','\x20\x20\x20\x20JS:\x20\x20','map'];a139_0x20c5=function(){return _0x1788b8;};return a139_0x20c5();}function padRight(_0x2a8fa4,_0x17b1f7){const _0xa74b63=a139_0x74a1,_0x5c96a7=strWidth(_0x2a8fa4);return _0x2a8fa4+'\x20'[_0xa74b63(0x114)](Math[_0xa74b63(0x115)](0x0,_0x17b1f7-_0x5c96a7));}export function renderCompareTable(_0x6b8205,_0x2e2340={}){const _0x3534af=a139_0x74a1;if(_0x6b8205[_0x3534af(0x102)]===0x0)return'';const _0x16301f=_0x2e2340[_0x3534af(0x10f)]??!![],_0x9184da=Math[_0x3534af(0x115)](0x1e,..._0x6b8205[_0x3534af(0x107)](_0x953290=>strWidth(_0x953290[_0x3534af(0x112)]))),_0x152f52=Math['max'](0x18,..._0x6b8205[_0x3534af(0x107)](_0x1c5f1f=>strWidth(_0x1c5f1f[_0x3534af(0x118)]))),_0x1b8283=0x4,_0x558646=[],_0x42f9c2='\x20\x20'+padRight(_0x3534af(0x103),_0x9184da),_0x395f5f=padRight(_0x3534af(0x10c),_0x152f52),_0x201c54=padRight(_0x3534af(0x101),_0x1b8283),_0x5fcfd6=_0x16301f?'\x20\x20'+padRight(_0x3534af(0x11f),_0x1b8283):'';_0x558646['push'](_0x42f9c2+'\x20\x20'+_0x395f5f+'\x20\x20'+_0x201c54+(_0x16301f?_0x5fcfd6:'')),_0x558646[_0x3534af(0x10d)]('\x20\x20'+'─'['repeat'](_0x9184da)+'\x20\x20'+'─'[_0x3534af(0x114)](_0x152f52)+'\x20\x20'+'─'[_0x3534af(0x114)](_0x1b8283)+(_0x16301f?'\x20\x20'+'─'[_0x3534af(0x114)](_0x1b8283):''));for(const _0xe9006b of _0x6b8205){const _0x4080a2=padRight(_0xe9006b[_0x3534af(0x112)],_0x9184da),_0x4d6066=padRight(_0xe9006b[_0x3534af(0x118)],_0x152f52),_0x562b5e=_0xe9006b[_0x3534af(0x113)]?'✓':'✗',_0x47b30b=padRight(_0x562b5e,_0x1b8283);let _0x12b069='\x20\x20'+_0x4080a2+'\x20\x20'+_0x4d6066+'\x20\x20'+_0x47b30b;if(_0x16301f){const _0xab87b8=_0xe9006b['online']?'✓':'✗';_0x12b069+='\x20\x20'+padRight(_0xab87b8,_0x1b8283);}_0x558646[_0x3534af(0x10d)](_0x12b069);}return _0x558646[_0x3534af(0x116)]('\x0a');}export function renderSyncSummary(_0x29fd5c,_0x321d85){const _0x4230e0=a139_0x74a1;if(_0x29fd5c[_0x4230e0(0x102)]===0x0)return _0x321d85?_0x4230e0(0x10e):_0x4230e0(0x119);const _0x5adf87=['\x20\x20'+_0x29fd5c[_0x4230e0(0x102)]+_0x4230e0(0x121)];for(const _0x117381 of _0x29fd5c){_0x5adf87[_0x4230e0(0x10d)]('\x20\x20\x20\x20•\x20'+_0x117381[_0x4230e0(0x112)]+'\x20('+_0x117381[_0x4230e0(0x118)]+')');}return _0x5adf87[_0x4230e0(0x116)]('\x0a');}export function renderUpdateSummary(_0x399470,_0x71ad43){const _0x1ae920=a139_0x74a1;if(_0x399470[_0x1ae920(0x102)]===0x0)return _0x1ae920(0x110);const _0x3fb6c7=['\x20\x20'+_0x399470[_0x1ae920(0x102)]+_0x1ae920(0x11d),_0x1ae920(0x106)+(_0x71ad43[0x0]??_0x1ae920(0x11c)),'\x20\x20\x20\x20CSS:\x20'+(_0x71ad43[0x1]??_0x1ae920(0x11c)),'',_0x1ae920(0x104)+_0x399470[_0x1ae920(0x116)](',\x20')];return _0x3fb6c7['join']('\x0a');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a140_0x59bc79=a140_0x48b3;function a140_0x48b3(_0x49decf,_0x1688d4){_0x49decf=_0x49decf-0x1c2;const _0xd30319=a140_0xd303();let _0x48b3df=_0xd30319[_0x49decf];return _0x48b3df;}function a140_0xd303(){const _0x167209=['stringify','isArray','resourcesHash','resources','hex','childrenIds','childrenCount','target','batch-delete-menu','version','utf8','extendHash','visible','every','targets','\x20contract.',',\x20current\x20app\x20is\x20','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','menu_plan_expired','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','byId','updateTime','expiresAt','pageSchemaAffected','menu_plan_invalid','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','updateUserId','sort','modelType','before','get','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','sha256','pages','command','2983386iGdwcx','/smartapi/menu/batchDelete','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','\x20is\x20in\x20the\x20future.','746711qyMHuO','message','pageType','object','POST','plan-out','getTime','12fwoBKs','delete','createdAt','pageId','toISOString','142LGeEuU','Planned\x20menu\x20','cascade','deleteOrder','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','25233456Hjlddx','updateUserName','hash','menu_plan_app_mismatch','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','boolean','depth','targetFingerprint','size','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','isSafeInteger','isInteger','digest','27009MJWyNo','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','menu\x20delete','recursive','resourcesValid','parse','extend','menu_plan_write_failed','snapshotHash','datasetCode','1937885Imstdc','path','number','length','56GOUqiC','11FsdeBB','test','1780xbNNlk','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','targetFingerprints','menu_state_drift','parentId','appCode','selector','datasetId','type','\x20bytes.','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','menu_plan_file_exists','string','warnings','5553mIazpi','Menu\x20delete\x20plan\x20targets\x20app\x20','Cannot\x20read\x20menu\x20delete\x20plan\x20','map','isFinite','label','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','4209453flLxZg'];a140_0xd303=function(){return _0x167209;};return a140_0xd303();}(function(_0x56bae6,_0x2bf8da){const _0x3b3bd5=a140_0x48b3,_0x1eefec=_0x56bae6();while(!![]){try{const _0x2e420f=-parseInt(_0x3b3bd5(0x1de))/0x1*(-parseInt(_0x3b3bd5(0x21a))/0x2)+-parseInt(_0x3b3bd5(0x1e5))/0x3+-parseInt(_0x3b3bd5(0x215))/0x4*(parseInt(_0x3b3bd5(0x1c9))/0x5)+-parseInt(_0x3b3bd5(0x209))/0x6+parseInt(_0x3b3bd5(0x20e))/0x7*(parseInt(_0x3b3bd5(0x1cd))/0x8)+parseInt(_0x3b3bd5(0x22d))/0x9*(parseInt(_0x3b3bd5(0x1d0))/0xa)+parseInt(_0x3b3bd5(0x1ce))/0xb*(parseInt(_0x3b3bd5(0x220))/0xc);if(_0x2e420f===_0x2bf8da)break;else _0x1eefec['push'](_0x1eefec['shift']());}catch(_0x3d1d6b){_0x1eefec['push'](_0x1eefec['shift']());}}}(a140_0xd303,0xae84b));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=a140_0x59bc79(0x22f),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x347226,_0x3d14d3,_0x2e0e09=new Date()){const _0x4e321b=a140_0x59bc79;if(!_0x3d14d3[_0x4e321b(0x203)]||!isMenuFact(_0x3d14d3['before']))throw menuError('menu_plan_invalid',_0x4e321b(0x1d1));const _0x2f5e5e=_0x3d14d3[_0x4e321b(0x1f4)]?.[_0x4e321b(0x1cc)]?_0x3d14d3[_0x4e321b(0x1f4)]:[_0x3d14d3[_0x4e321b(0x203)]],_0x42cb61=_0x3d14d3[_0x4e321b(0x21d)]?.[_0x4e321b(0x1cc)]?_0x3d14d3['deleteOrder']:_0x2f5e5e[_0x4e321b(0x1e1)](_0x4d7ddd=>_0x4d7ddd['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x347226,'createdAt':_0x2e0e09[_0x4e321b(0x219)](),'expiresAt':new Date(_0x2e0e09[_0x4e321b(0x214)]()+PLAN_TTL_MS)[_0x4e321b(0x219)](),'snapshotHash':_0x3d14d3[_0x4e321b(0x1c7)],'recursive':_0x3d14d3[_0x4e321b(0x1d6)][_0x4e321b(0x1c2)]===!![],'target':_0x3d14d3[_0x4e321b(0x203)],'targetFingerprint':fingerprint(_0x3d14d3[_0x4e321b(0x203)]),'targets':_0x2f5e5e,'targetFingerprints':_0x2f5e5e['map'](fingerprint),'deleteOrder':_0x42cb61,'cascade':_0x3d14d3['cascade']??{'pages':_0x3d14d3[_0x4e321b(0x203)][_0x4e321b(0x218)]==null?[]:[_0x3d14d3['before'][_0x4e321b(0x218)]],'pageSchemaAffected':_0x3d14d3[_0x4e321b(0x203)][_0x4e321b(0x218)]!=null},'warnings':[..._0x3d14d3['warnings']]};}export async function writeMenuDeletePlan(_0x5bba9a,_0x112955){const _0x41ae5a=a140_0x59bc79,_0x291855=resolvePlanPath(_0x5bba9a,_0x41ae5a(0x213));await mkdir(dirname(_0x291855),{'recursive':!![]});try{await writeFile(_0x291855,JSON[_0x41ae5a(0x1e6)](_0x112955,null,0x2)+'\x0a',{'encoding':_0x41ae5a(0x1f0),'flag':'wx'});}catch(_0x5b4b8e){if(_0x5b4b8e['code']==='EEXIST')throw menuError(_0x41ae5a(0x1db),'Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20'+_0x291855,_0x41ae5a(0x22e));throw menuError(_0x41ae5a(0x1c6),_0x41ae5a(0x1e4)+_0x291855+':\x20'+errorMessage(_0x5b4b8e));}return _0x291855;}export async function readMenuDeletePlan(_0x5022fd){const _0x3e8abe=a140_0x59bc79,_0xec11ce=resolvePlanPath(_0x5022fd,'plan');let _0x57f5c7;try{_0x57f5c7=(await stat(_0xec11ce))[_0x3e8abe(0x228)];}catch(_0x1fb090){throw menuError('menu_plan_invalid',_0x3e8abe(0x1e0)+_0xec11ce+':\x20'+errorMessage(_0x1fb090));}if(_0x57f5c7>MAX_PLAN_BYTES)throw menuError(_0x3e8abe(0x1fe),_0x3e8abe(0x1f7)+_0x57f5c7+_0x3e8abe(0x1d9));let _0x488fd8;try{_0x488fd8=JSON['parse'](await readFile(_0xec11ce,_0x3e8abe(0x1f0)));}catch(_0x117f9a){throw menuError(_0x3e8abe(0x1fe),_0x3e8abe(0x1da)+errorMessage(_0x117f9a));}if(!isMenuDeletePlanFile(_0x488fd8))throw menuError(_0x3e8abe(0x1fe),'Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20'+PLAN_VERSION+'\x20of\x20the\x20'+PLAN_COMMAND+_0x3e8abe(0x1f5));if(!sameFingerprint(_0x488fd8[_0x3e8abe(0x227)],fingerprint(_0x488fd8[_0x3e8abe(0x1ed)])))throw menuError(_0x3e8abe(0x1fe),'Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.',_0x3e8abe(0x21f));if(!_0x488fd8[_0x3e8abe(0x1f4)][_0x3e8abe(0x1f3)]((_0x4b305f,_0x1975ba)=>sameFingerprint(_0x488fd8[_0x3e8abe(0x1d2)][_0x1975ba],fingerprint(_0x4b305f)))||!sameFingerprint(_0x488fd8[_0x3e8abe(0x227)],fingerprint(_0x488fd8[_0x3e8abe(0x1f4)][_0x488fd8['targets']['length']-0x1])))throw menuError(_0x3e8abe(0x1fe),_0x3e8abe(0x20b),_0x3e8abe(0x21f));return{'path':_0xec11ce,'plan':_0x488fd8};}export function mutationPlanFromDeleteFile(_0x35c3f3,_0x17df09){const _0xc2506d=a140_0x59bc79;return mutationResult({'operation':_0xc2506d(0x216),'selector':{'id':_0x35c3f3[_0xc2506d(0x1ed)]['id'],'recursive':_0x35c3f3['recursive']},'before':_0x35c3f3[_0xc2506d(0x1ed)],'after':null,'dryRun':![],'backend':[{'method':_0xc2506d(0x212),'path':_0xc2506d(0x20a)}],'plannedActions':[{'stage':_0xc2506d(0x1ee),'method':'POST','path':_0xc2506d(0x20a),'body':{'idList':_0x35c3f3[_0xc2506d(0x21d)]}}],'targets':_0x35c3f3[_0xc2506d(0x1f4)],'deleteOrder':_0x35c3f3[_0xc2506d(0x21d)],'snapshotHash':_0x35c3f3[_0xc2506d(0x1c7)],'cascade':_0x35c3f3[_0xc2506d(0x21c)],'planFile':{'path':_0x17df09,'createdAt':_0x35c3f3[_0xc2506d(0x217)],'expiresAt':_0x35c3f3[_0xc2506d(0x1fc)]},'warnings':_0x35c3f3[_0xc2506d(0x1dd)]});}export function assertMenuDeletePlanCurrent(_0x5cf26b,_0x3c3a6e,_0x53339e,_0x9c720e=new Date()){const _0x17431a=a140_0x59bc79;assertMenuDeletePlanExecutable(_0x5cf26b,_0x3c3a6e,_0x9c720e);if(_0x53339e[_0x17431a(0x222)]!==_0x5cf26b[_0x17431a(0x1c7)])throw menuError('menu_state_drift',_0x17431a(0x20c),_0x17431a(0x205));return _0x5cf26b[_0x17431a(0x1f4)][_0x17431a(0x1e1)]((_0x5ea582,_0x411a95)=>{const _0x383512=_0x17431a,_0xa141ba=_0x53339e[_0x383512(0x1fa)][_0x383512(0x204)](_0x5ea582['id']);if(!_0xa141ba)throw menuError(_0x383512(0x1d3),_0x383512(0x21b)+_0x5ea582['id']+_0x383512(0x224));if(!sameFingerprint(_0x5cf26b[_0x383512(0x1d2)][_0x411a95],fingerprint(_0xa141ba)))throw menuError(_0x383512(0x1d3),_0x383512(0x21b)+_0x5ea582['id']+'\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.',_0x383512(0x1ff));return _0xa141ba;});}export function assertMenuDeletePlanExecutable(_0x2be19a,_0x9e51f1,_0x8710a1=new Date()){const _0x10a987=a140_0x59bc79;if(_0x2be19a[_0x10a987(0x1d5)]!==_0x9e51f1)throw menuError(_0x10a987(0x223),_0x10a987(0x1df)+JSON['stringify'](_0x2be19a[_0x10a987(0x1d5)])+_0x10a987(0x1f6)+JSON[_0x10a987(0x1e6)](_0x9e51f1)+'.');const _0x879894=Date['parse'](_0x2be19a[_0x10a987(0x217)]),_0x18648b=Date[_0x10a987(0x1c4)](_0x2be19a['expiresAt']);if(!Number[_0x10a987(0x1e2)](_0x879894)||!Number[_0x10a987(0x1e2)](_0x18648b)||_0x18648b-_0x879894!==PLAN_TTL_MS)throw menuError(_0x10a987(0x1fe),_0x10a987(0x229));if(_0x879894>_0x8710a1[_0x10a987(0x214)]())throw menuError(_0x10a987(0x1fe),'Menu\x20delete\x20plan\x20creation\x20time\x20'+_0x2be19a['createdAt']+_0x10a987(0x20d),_0x10a987(0x21e));if(_0x8710a1[_0x10a987(0x214)]()>_0x18648b)throw menuError(_0x10a987(0x1f8),'Menu\x20delete\x20plan\x20expired\x20at\x20'+_0x2be19a[_0x10a987(0x1fc)]+'.',_0x10a987(0x1f9));}function fingerprint(_0x3ecac0){const _0x28bc3b=a140_0x59bc79;return{'id':_0x3ecac0['id'],'parentId':_0x3ecac0['parentId'],'depth':_0x3ecac0[_0x28bc3b(0x226)],'label':_0x3ecac0[_0x28bc3b(0x1e3)],'path':_0x3ecac0[_0x28bc3b(0x1ca)],'type':_0x3ecac0['type'],'visible':_0x3ecac0[_0x28bc3b(0x1f2)],'sort':_0x3ecac0[_0x28bc3b(0x201)],'pageId':_0x3ecac0['pageId'],'pageType':_0x3ecac0[_0x28bc3b(0x210)],'modelType':_0x3ecac0[_0x28bc3b(0x202)],'datasetId':_0x3ecac0[_0x28bc3b(0x1d7)],'datasetCode':_0x3ecac0[_0x28bc3b(0x1c8)],'childrenIds':[..._0x3ecac0[_0x28bc3b(0x1eb)]],'childrenCount':_0x3ecac0[_0x28bc3b(0x1ec)],'resourcesValid':_0x3ecac0['resourcesValid'],'resourcesHash':hashValue(_0x3ecac0[_0x28bc3b(0x1e9)]),'extendHash':hashValue(_0x3ecac0[_0x28bc3b(0x1c5)]??null),'updateTime':_0x3ecac0['updateTime']};}function hashValue(_0x297931){const _0x50e368=a140_0x59bc79;return createHash(_0x50e368(0x206))['update'](JSON['stringify'](_0x297931))[_0x50e368(0x22c)](_0x50e368(0x1ea));}function sameFingerprint(_0x4b7b78,_0x274d3a){const _0x549bdd=a140_0x59bc79;return JSON[_0x549bdd(0x1e6)](_0x4b7b78)===JSON['stringify'](_0x274d3a);}function resolvePlanPath(_0x473807,_0x25bfe7){const _0x5146ad=a140_0x59bc79,_0x55f606=_0x473807['trim']();if(!_0x55f606)throw menuError(_0x5146ad(0x1fe),'--'+_0x25bfe7+'\x20requires\x20a\x20non-empty\x20file\x20path.');return resolve(_0x55f606);}function isMenuDeletePlanFile(_0x306782){const _0x5abb2f=a140_0x59bc79;if(!isRecord(_0x306782))return![];return _0x306782[_0x5abb2f(0x1ef)]===PLAN_VERSION&&_0x306782[_0x5abb2f(0x208)]===PLAN_COMMAND&&typeof _0x306782[_0x5abb2f(0x1d5)]===_0x5abb2f(0x1dc)&&_0x306782['appCode'][_0x5abb2f(0x1cc)]>0x0&&typeof _0x306782[_0x5abb2f(0x217)]===_0x5abb2f(0x1dc)&&typeof _0x306782['expiresAt']===_0x5abb2f(0x1dc)&&typeof _0x306782[_0x5abb2f(0x1c7)]===_0x5abb2f(0x1dc)&&/^sha256:[a-f0-9]{64}$/[_0x5abb2f(0x1cf)](_0x306782[_0x5abb2f(0x1c7)])&&typeof _0x306782['recursive']==='boolean'&&isMenuFact(_0x306782[_0x5abb2f(0x1ed)])&&isTargetFingerprint(_0x306782['targetFingerprint'])&&Array['isArray'](_0x306782[_0x5abb2f(0x1f4)])&&_0x306782[_0x5abb2f(0x1f4)][_0x5abb2f(0x1cc)]>0x0&&_0x306782[_0x5abb2f(0x1f4)][_0x5abb2f(0x1f3)](isMenuFact)&&Array[_0x5abb2f(0x1e7)](_0x306782['targetFingerprints'])&&_0x306782[_0x5abb2f(0x1d2)][_0x5abb2f(0x1cc)]===_0x306782[_0x5abb2f(0x1f4)][_0x5abb2f(0x1cc)]&&_0x306782[_0x5abb2f(0x1d2)]['every'](isTargetFingerprint)&&Array[_0x5abb2f(0x1e7)](_0x306782[_0x5abb2f(0x21d)])&&_0x306782[_0x5abb2f(0x21d)][_0x5abb2f(0x1cc)]===_0x306782[_0x5abb2f(0x1f4)][_0x5abb2f(0x1cc)]&&_0x306782['deleteOrder'][_0x5abb2f(0x1f3)](isPositiveInteger)&&new Set(_0x306782[_0x5abb2f(0x21d)])[_0x5abb2f(0x228)]===_0x306782[_0x5abb2f(0x21d)][_0x5abb2f(0x1cc)]&&_0x306782[_0x5abb2f(0x1f4)]['every']((_0x530799,_0x4f338f)=>_0x530799['id']===_0x306782['deleteOrder'][_0x4f338f])&&_0x306782['targets'][_0x306782[_0x5abb2f(0x1f4)][_0x5abb2f(0x1cc)]-0x1]?.['id']===_0x306782[_0x5abb2f(0x1ed)]['id']&&isRecord(_0x306782[_0x5abb2f(0x21c)])&&Array[_0x5abb2f(0x1e7)](_0x306782[_0x5abb2f(0x21c)]['pages'])&&_0x306782['cascade'][_0x5abb2f(0x207)][_0x5abb2f(0x1f3)](isPositiveInteger)&&typeof _0x306782['cascade'][_0x5abb2f(0x1fd)]===_0x5abb2f(0x225)&&Array['isArray'](_0x306782[_0x5abb2f(0x1dd)])&&_0x306782[_0x5abb2f(0x1dd)][_0x5abb2f(0x1f3)](_0x9686fb=>typeof _0x9686fb===_0x5abb2f(0x1dc));}function isMenuFact(_0x3886e6){const _0x5688e7=a140_0x59bc79;if(!isRecord(_0x3886e6))return![];return isPositiveInteger(_0x3886e6['id'])&&(_0x3886e6['parentId']===null||isPositiveInteger(_0x3886e6['parentId']))&&Number[_0x5688e7(0x22b)](_0x3886e6['depth'])&&_0x3886e6[_0x5688e7(0x226)]>=0x0&&typeof _0x3886e6[_0x5688e7(0x1e3)]===_0x5688e7(0x1dc)&&typeof _0x3886e6[_0x5688e7(0x1ca)]==='string'&&typeof _0x3886e6[_0x5688e7(0x1d8)]===_0x5688e7(0x1dc)&&(_0x3886e6['visible']===null||typeof _0x3886e6[_0x5688e7(0x1f2)]===_0x5688e7(0x225))&&(_0x3886e6[_0x5688e7(0x201)]===null||Number[_0x5688e7(0x22b)](_0x3886e6[_0x5688e7(0x201)]))&&Array[_0x5688e7(0x1e7)](_0x3886e6[_0x5688e7(0x1e9)])&&_0x3886e6[_0x5688e7(0x1e9)][_0x5688e7(0x1f3)](_0x4efd2c=>typeof _0x4efd2c==='string')&&typeof _0x3886e6['resourcesValid']===_0x5688e7(0x225)&&Array[_0x5688e7(0x1e7)](_0x3886e6[_0x5688e7(0x1eb)])&&_0x3886e6[_0x5688e7(0x1eb)][_0x5688e7(0x1f3)](isPositiveInteger)&&Number[_0x5688e7(0x22b)](_0x3886e6[_0x5688e7(0x1ec)])&&_0x3886e6['childrenCount']>=0x0&&(_0x3886e6['pageId']===null||isPositiveInteger(_0x3886e6[_0x5688e7(0x218)]))&&typeof _0x3886e6[_0x5688e7(0x210)]===_0x5688e7(0x1dc)&&typeof _0x3886e6[_0x5688e7(0x202)]===_0x5688e7(0x1dc)&&(_0x3886e6['datasetId']===null||isPositiveInteger(_0x3886e6[_0x5688e7(0x1d7)]))&&typeof _0x3886e6['datasetCode']===_0x5688e7(0x1dc)&&(_0x3886e6[_0x5688e7(0x200)]===null||typeof _0x3886e6['updateUserId']===_0x5688e7(0x1dc))&&(_0x3886e6[_0x5688e7(0x221)]===null||typeof _0x3886e6[_0x5688e7(0x221)]===_0x5688e7(0x1dc))&&(_0x3886e6[_0x5688e7(0x1fb)]===null||typeof _0x3886e6[_0x5688e7(0x1fb)]===_0x5688e7(0x1dc)||typeof _0x3886e6[_0x5688e7(0x1fb)]===_0x5688e7(0x1cb))&&(_0x3886e6[_0x5688e7(0x1c5)]===undefined||_0x3886e6[_0x5688e7(0x1c5)]===null||isRecord(_0x3886e6[_0x5688e7(0x1c5)]));}function isTargetFingerprint(_0x5c8c5e){const _0x586ebc=a140_0x59bc79;if(!isRecord(_0x5c8c5e))return![];return isPositiveInteger(_0x5c8c5e['id'])&&(_0x5c8c5e['parentId']===null||isPositiveInteger(_0x5c8c5e[_0x586ebc(0x1d4)]))&&Number['isInteger'](_0x5c8c5e['depth'])&&_0x5c8c5e[_0x586ebc(0x226)]>=0x0&&typeof _0x5c8c5e[_0x586ebc(0x1e3)]===_0x586ebc(0x1dc)&&typeof _0x5c8c5e[_0x586ebc(0x1ca)]===_0x586ebc(0x1dc)&&typeof _0x5c8c5e[_0x586ebc(0x1d8)]===_0x586ebc(0x1dc)&&(_0x5c8c5e[_0x586ebc(0x1f2)]===null||typeof _0x5c8c5e[_0x586ebc(0x1f2)]===_0x586ebc(0x225))&&(_0x5c8c5e['sort']===null||Number['isInteger'](_0x5c8c5e['sort']))&&(_0x5c8c5e[_0x586ebc(0x218)]===null||isPositiveInteger(_0x5c8c5e[_0x586ebc(0x218)]))&&typeof _0x5c8c5e[_0x586ebc(0x210)]===_0x586ebc(0x1dc)&&typeof _0x5c8c5e[_0x586ebc(0x202)]===_0x586ebc(0x1dc)&&(_0x5c8c5e[_0x586ebc(0x1d7)]===null||isPositiveInteger(_0x5c8c5e['datasetId']))&&typeof _0x5c8c5e[_0x586ebc(0x1c8)]===_0x586ebc(0x1dc)&&Array[_0x586ebc(0x1e7)](_0x5c8c5e[_0x586ebc(0x1eb)])&&_0x5c8c5e[_0x586ebc(0x1eb)][_0x586ebc(0x1f3)](isPositiveInteger)&&Number[_0x586ebc(0x22b)](_0x5c8c5e['childrenCount'])&&_0x5c8c5e['childrenCount']>=0x0&&typeof _0x5c8c5e[_0x586ebc(0x1c3)]==='boolean'&&typeof _0x5c8c5e[_0x586ebc(0x1e8)]===_0x586ebc(0x1dc)&&/^[a-f0-9]{64}$/[_0x586ebc(0x1cf)](_0x5c8c5e[_0x586ebc(0x1e8)])&&typeof _0x5c8c5e['extendHash']===_0x586ebc(0x1dc)&&/^[a-f0-9]{64}$/[_0x586ebc(0x1cf)](_0x5c8c5e[_0x586ebc(0x1f1)])&&(_0x5c8c5e['updateTime']===null||typeof _0x5c8c5e[_0x586ebc(0x1fb)]===_0x586ebc(0x1dc)||typeof _0x5c8c5e[_0x586ebc(0x1fb)]===_0x586ebc(0x1cb));}function isRecord(_0x203227){const _0x3e9c24=a140_0x59bc79;return typeof _0x203227===_0x3e9c24(0x211)&&_0x203227!==null&&!Array[_0x3e9c24(0x1e7)](_0x203227);}function isPositiveInteger(_0x343469){const _0x251f96=a140_0x59bc79;return Number[_0x251f96(0x22a)](_0x343469)&&Number(_0x343469)>0x0;}function errorMessage(_0x3ac241){const _0x5e9d0e=a140_0x59bc79;return _0x3ac241 instanceof Error?_0x3ac241[_0x5e9d0e(0x20f)]:String(_0x3ac241);}
|
|
1
|
+
function a140_0x208c(_0x236210,_0xcd4ace){_0x236210=_0x236210-0xb9;const _0x4345d0=a140_0x4345();let _0x208c78=_0x4345d0[_0x236210];return _0x208c78;}const a140_0x3dae72=a140_0x208c;(function(_0x458536,_0x12ef75){const _0x447709=a140_0x208c,_0x5aa450=_0x458536();while(!![]){try{const _0x528467=-parseInt(_0x447709(0x10f))/0x1+parseInt(_0x447709(0xe2))/0x2*(-parseInt(_0x447709(0xc7))/0x3)+-parseInt(_0x447709(0xf2))/0x4*(parseInt(_0x447709(0xc8))/0x5)+parseInt(_0x447709(0xce))/0x6*(-parseInt(_0x447709(0xcc))/0x7)+-parseInt(_0x447709(0x103))/0x8*(-parseInt(_0x447709(0xff))/0x9)+-parseInt(_0x447709(0xde))/0xa+parseInt(_0x447709(0x121))/0xb*(parseInt(_0x447709(0xd8))/0xc);if(_0x528467===_0x12ef75)break;else _0x5aa450['push'](_0x5aa450['shift']());}catch(_0x161c41){_0x5aa450['push'](_0x5aa450['shift']());}}}(a140_0x4345,0xc7647));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=a140_0x3dae72(0xe3),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x3d4caa,_0x3cac8e,_0x212242=new Date()){const _0x4fa1f4=a140_0x3dae72;if(!_0x3cac8e[_0x4fa1f4(0xf0)]||!isMenuFact(_0x3cac8e[_0x4fa1f4(0xf0)]))throw menuError(_0x4fa1f4(0x11e),_0x4fa1f4(0xfc));const _0x286c15=_0x3cac8e['targets']?.[_0x4fa1f4(0x125)]?_0x3cac8e[_0x4fa1f4(0xf8)]:[_0x3cac8e['before']],_0x252b33=_0x3cac8e[_0x4fa1f4(0xf7)]?.['length']?_0x3cac8e[_0x4fa1f4(0xf7)]:_0x286c15['map'](_0xc87de5=>_0xc87de5['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x3d4caa,'createdAt':_0x212242['toISOString'](),'expiresAt':new Date(_0x212242[_0x4fa1f4(0x10c)]()+PLAN_TTL_MS)[_0x4fa1f4(0x104)](),'snapshotHash':_0x3cac8e[_0x4fa1f4(0x114)],'recursive':_0x3cac8e['selector'][_0x4fa1f4(0x119)]===!![],'target':_0x3cac8e['before'],'targetFingerprint':fingerprint(_0x3cac8e[_0x4fa1f4(0xf0)]),'targets':_0x286c15,'targetFingerprints':_0x286c15[_0x4fa1f4(0x10d)](fingerprint),'deleteOrder':_0x252b33,'cascade':_0x3cac8e[_0x4fa1f4(0x106)]??{'pages':_0x3cac8e['before']['pageId']==null?[]:[_0x3cac8e['before']['pageId']],'pageSchemaAffected':_0x3cac8e['before'][_0x4fa1f4(0x111)]!=null},'warnings':[..._0x3cac8e[_0x4fa1f4(0xf1)]]};}export async function writeMenuDeletePlan(_0x352177,_0x447b50){const _0x10a4a1=a140_0x3dae72,_0x179615=resolvePlanPath(_0x352177,_0x10a4a1(0xbb));await mkdir(dirname(_0x179615),{'recursive':!![]});try{await writeFile(_0x179615,JSON[_0x10a4a1(0xdd)](_0x447b50,null,0x2)+'\x0a',{'encoding':_0x10a4a1(0x112),'flag':'wx'});}catch(_0x18043b){if(_0x18043b['code']===_0x10a4a1(0xed))throw menuError(_0x10a4a1(0x102),_0x10a4a1(0x116)+_0x179615,_0x10a4a1(0xfa));throw menuError(_0x10a4a1(0xd7),_0x10a4a1(0xe6)+_0x179615+':\x20'+errorMessage(_0x18043b));}return _0x179615;}export async function readMenuDeletePlan(_0x5b0d9d){const _0x3a5cdf=a140_0x3dae72,_0x439d86=resolvePlanPath(_0x5b0d9d,_0x3a5cdf(0xef));let _0xcc7d9a;try{_0xcc7d9a=(await stat(_0x439d86))['size'];}catch(_0x156a50){throw menuError(_0x3a5cdf(0x11e),_0x3a5cdf(0xd9)+_0x439d86+':\x20'+errorMessage(_0x156a50));}if(_0xcc7d9a>MAX_PLAN_BYTES)throw menuError(_0x3a5cdf(0x11e),'Menu\x20delete\x20plan\x20is\x20too\x20large:\x20'+_0xcc7d9a+_0x3a5cdf(0xcb));let _0x24e2fe;try{_0x24e2fe=JSON[_0x3a5cdf(0xca)](await readFile(_0x439d86,_0x3a5cdf(0x112)));}catch(_0x5bb66d){throw menuError(_0x3a5cdf(0x11e),_0x3a5cdf(0xd0)+errorMessage(_0x5bb66d));}if(!isMenuDeletePlanFile(_0x24e2fe))throw menuError(_0x3a5cdf(0x11e),_0x3a5cdf(0xd1)+PLAN_VERSION+_0x3a5cdf(0xd6)+PLAN_COMMAND+'\x20contract.');if(!sameFingerprint(_0x24e2fe[_0x3a5cdf(0xe7)],fingerprint(_0x24e2fe[_0x3a5cdf(0x10a)])))throw menuError('menu_plan_invalid','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.',_0x3a5cdf(0xbf));if(!_0x24e2fe['targets'][_0x3a5cdf(0xda)]((_0x17ebc2,_0x490e3c)=>sameFingerprint(_0x24e2fe['targetFingerprints'][_0x490e3c],fingerprint(_0x17ebc2)))||!sameFingerprint(_0x24e2fe['targetFingerprint'],fingerprint(_0x24e2fe['targets'][_0x24e2fe[_0x3a5cdf(0xf8)][_0x3a5cdf(0x125)]-0x1])))throw menuError(_0x3a5cdf(0x11e),_0x3a5cdf(0xdc),_0x3a5cdf(0xbf));return{'path':_0x439d86,'plan':_0x24e2fe};}export function mutationPlanFromDeleteFile(_0x3dcaec,_0x116678){const _0x6ddaca=a140_0x3dae72;return mutationResult({'operation':_0x6ddaca(0xfd),'selector':{'id':_0x3dcaec['target']['id'],'recursive':_0x3dcaec[_0x6ddaca(0x119)]},'before':_0x3dcaec[_0x6ddaca(0x10a)],'after':null,'dryRun':![],'backend':[{'method':_0x6ddaca(0xf5),'path':_0x6ddaca(0xd2)}],'plannedActions':[{'stage':'batch-delete-menu','method':_0x6ddaca(0xf5),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x3dcaec[_0x6ddaca(0xf7)]}}],'targets':_0x3dcaec['targets'],'deleteOrder':_0x3dcaec[_0x6ddaca(0xf7)],'snapshotHash':_0x3dcaec['snapshotHash'],'cascade':_0x3dcaec[_0x6ddaca(0x106)],'planFile':{'path':_0x116678,'createdAt':_0x3dcaec[_0x6ddaca(0x11a)],'expiresAt':_0x3dcaec['expiresAt']},'warnings':_0x3dcaec[_0x6ddaca(0xf1)]});}export function assertMenuDeletePlanCurrent(_0x4764e2,_0x28b52f,_0x20e3f7,_0x2b55ca=new Date()){const _0x27d6b8=a140_0x3dae72;assertMenuDeletePlanExecutable(_0x4764e2,_0x28b52f,_0x2b55ca);if(_0x20e3f7[_0x27d6b8(0xe8)]!==_0x4764e2[_0x27d6b8(0x114)])throw menuError(_0x27d6b8(0xd5),_0x27d6b8(0xfe),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.');return _0x4764e2[_0x27d6b8(0xf8)][_0x27d6b8(0x10d)]((_0x111b03,_0x13a0c1)=>{const _0x4fe406=_0x27d6b8,_0x2928dd=_0x20e3f7[_0x4fe406(0x11f)][_0x4fe406(0x11d)](_0x111b03['id']);if(!_0x2928dd)throw menuError('menu_state_drift','Planned\x20menu\x20'+_0x111b03['id']+_0x4fe406(0x108));if(!sameFingerprint(_0x4764e2[_0x4fe406(0x123)][_0x13a0c1],fingerprint(_0x2928dd)))throw menuError(_0x4fe406(0xd5),_0x4fe406(0xdf)+_0x111b03['id']+_0x4fe406(0x109),_0x4fe406(0xe0));return _0x2928dd;});}export function assertMenuDeletePlanExecutable(_0x1108f8,_0x44c0bd,_0xa74f34=new Date()){const _0x2d6b3c=a140_0x3dae72;if(_0x1108f8[_0x2d6b3c(0x100)]!==_0x44c0bd)throw menuError('menu_plan_app_mismatch',_0x2d6b3c(0xc2)+JSON[_0x2d6b3c(0xdd)](_0x1108f8[_0x2d6b3c(0x100)])+_0x2d6b3c(0xec)+JSON['stringify'](_0x44c0bd)+'.');const _0x1b7fa0=Date[_0x2d6b3c(0xca)](_0x1108f8['createdAt']),_0x28c4e0=Date[_0x2d6b3c(0xca)](_0x1108f8[_0x2d6b3c(0x107)]);if(!Number[_0x2d6b3c(0xbc)](_0x1b7fa0)||!Number['isFinite'](_0x28c4e0)||_0x28c4e0-_0x1b7fa0!==PLAN_TTL_MS)throw menuError(_0x2d6b3c(0x11e),_0x2d6b3c(0x124));if(_0x1b7fa0>_0xa74f34['getTime']())throw menuError(_0x2d6b3c(0x11e),'Menu\x20delete\x20plan\x20creation\x20time\x20'+_0x1108f8[_0x2d6b3c(0x11a)]+'\x20is\x20in\x20the\x20future.','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.');if(_0xa74f34['getTime']()>_0x28c4e0)throw menuError(_0x2d6b3c(0x118),'Menu\x20delete\x20plan\x20expired\x20at\x20'+_0x1108f8[_0x2d6b3c(0x107)]+'.',_0x2d6b3c(0xee));}function fingerprint(_0x4161fc){const _0x178aa9=a140_0x3dae72;return{'id':_0x4161fc['id'],'parentId':_0x4161fc[_0x178aa9(0x10e)],'depth':_0x4161fc[_0x178aa9(0xf9)],'label':_0x4161fc[_0x178aa9(0xd3)],'path':_0x4161fc[_0x178aa9(0xe4)],'type':_0x4161fc['type'],'visible':_0x4161fc[_0x178aa9(0xd4)],'sort':_0x4161fc['sort'],'pageId':_0x4161fc['pageId'],'pageType':_0x4161fc['pageType'],'modelType':_0x4161fc[_0x178aa9(0xf4)],'datasetId':_0x4161fc[_0x178aa9(0xc4)],'datasetCode':_0x4161fc[_0x178aa9(0x113)],'childrenIds':[..._0x4161fc['childrenIds']],'childrenCount':_0x4161fc[_0x178aa9(0xe9)],'resourcesValid':_0x4161fc[_0x178aa9(0x115)],'resourcesHash':hashValue(_0x4161fc['resources']),'extendHash':hashValue(_0x4161fc[_0x178aa9(0xfb)]??null),'updateTime':_0x4161fc[_0x178aa9(0x11b)]};}function a140_0x4345(){const _0x291cf3=['EEXIST','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','plan','before','warnings','4ugVvnM','pageType','modelType','POST','isSafeInteger','deleteOrder','targets','depth','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','extend','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','delete','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','9kMGdxI','appCode','test','menu_plan_file_exists','5636296PxwDTq','toISOString','trim','cascade','expiresAt','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','target','childrenIds','getTime','map','parentId','486521RwwpTR','isInteger','pageId','utf8','datasetCode','snapshotHash','resourcesValid','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','type','menu_plan_expired','recursive','createdAt','updateTime','extendHash','get','menu_plan_invalid','byId','size','4466803ltSKSm','updateUserName','targetFingerprints','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','length','version','sort','plan-out','isFinite','updateUserId','hex','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','object','pageSchemaAffected','Menu\x20delete\x20plan\x20targets\x20app\x20','number','datasetId','command','pages','42Jcxgwe','3638435ycFwYU','resources','parse','\x20bytes.','10318rliNyt','digest','1578VeLbUi','string','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','/smartapi/menu/batchDelete','label','visible','menu_state_drift','\x20of\x20the\x20','menu_plan_write_failed','96leWkLp','Cannot\x20read\x20menu\x20delete\x20plan\x20','every','resourcesHash','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','stringify','11910500qeQVkd','Planned\x20menu\x20','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','isArray','49070CZVfWc','menu\x20delete','path','\x20requires\x20a\x20non-empty\x20file\x20path.','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','targetFingerprint','hash','childrenCount','boolean','sha256',',\x20current\x20app\x20is\x20'];a140_0x4345=function(){return _0x291cf3;};return a140_0x4345();}function hashValue(_0xffabbf){const _0x380f06=a140_0x3dae72;return createHash(_0x380f06(0xeb))['update'](JSON[_0x380f06(0xdd)](_0xffabbf))[_0x380f06(0xcd)](_0x380f06(0xbe));}function sameFingerprint(_0x36798b,_0x2273ba){const _0x202832=a140_0x3dae72;return JSON['stringify'](_0x36798b)===JSON[_0x202832(0xdd)](_0x2273ba);}function resolvePlanPath(_0x89d360,_0x415a04){const _0x3cf570=a140_0x3dae72,_0x574dbe=_0x89d360[_0x3cf570(0x105)]();if(!_0x574dbe)throw menuError('menu_plan_invalid','--'+_0x415a04+_0x3cf570(0xe5));return resolve(_0x574dbe);}function isMenuDeletePlanFile(_0x420faa){const _0x5a911d=a140_0x3dae72;if(!isRecord(_0x420faa))return![];return _0x420faa[_0x5a911d(0xb9)]===PLAN_VERSION&&_0x420faa[_0x5a911d(0xc5)]===PLAN_COMMAND&&typeof _0x420faa['appCode']===_0x5a911d(0xcf)&&_0x420faa[_0x5a911d(0x100)]['length']>0x0&&typeof _0x420faa[_0x5a911d(0x11a)]===_0x5a911d(0xcf)&&typeof _0x420faa[_0x5a911d(0x107)]==='string'&&typeof _0x420faa[_0x5a911d(0x114)]==='string'&&/^sha256:[a-f0-9]{64}$/[_0x5a911d(0x101)](_0x420faa['snapshotHash'])&&typeof _0x420faa[_0x5a911d(0x119)]===_0x5a911d(0xea)&&isMenuFact(_0x420faa[_0x5a911d(0x10a)])&&isTargetFingerprint(_0x420faa[_0x5a911d(0xe7)])&&Array[_0x5a911d(0xe1)](_0x420faa['targets'])&&_0x420faa['targets'][_0x5a911d(0x125)]>0x0&&_0x420faa['targets'][_0x5a911d(0xda)](isMenuFact)&&Array['isArray'](_0x420faa['targetFingerprints'])&&_0x420faa[_0x5a911d(0x123)][_0x5a911d(0x125)]===_0x420faa[_0x5a911d(0xf8)]['length']&&_0x420faa[_0x5a911d(0x123)][_0x5a911d(0xda)](isTargetFingerprint)&&Array[_0x5a911d(0xe1)](_0x420faa['deleteOrder'])&&_0x420faa['deleteOrder'][_0x5a911d(0x125)]===_0x420faa['targets'][_0x5a911d(0x125)]&&_0x420faa[_0x5a911d(0xf7)][_0x5a911d(0xda)](isPositiveInteger)&&new Set(_0x420faa[_0x5a911d(0xf7)])[_0x5a911d(0x120)]===_0x420faa[_0x5a911d(0xf7)][_0x5a911d(0x125)]&&_0x420faa[_0x5a911d(0xf8)]['every']((_0x1c743f,_0xdba335)=>_0x1c743f['id']===_0x420faa[_0x5a911d(0xf7)][_0xdba335])&&_0x420faa[_0x5a911d(0xf8)][_0x420faa[_0x5a911d(0xf8)][_0x5a911d(0x125)]-0x1]?.['id']===_0x420faa[_0x5a911d(0x10a)]['id']&&isRecord(_0x420faa['cascade'])&&Array[_0x5a911d(0xe1)](_0x420faa['cascade'][_0x5a911d(0xc6)])&&_0x420faa['cascade'][_0x5a911d(0xc6)][_0x5a911d(0xda)](isPositiveInteger)&&typeof _0x420faa[_0x5a911d(0x106)][_0x5a911d(0xc1)]==='boolean'&&Array[_0x5a911d(0xe1)](_0x420faa[_0x5a911d(0xf1)])&&_0x420faa[_0x5a911d(0xf1)][_0x5a911d(0xda)](_0x165e6e=>typeof _0x165e6e===_0x5a911d(0xcf));}function isMenuFact(_0x46a054){const _0x1bbc04=a140_0x3dae72;if(!isRecord(_0x46a054))return![];return isPositiveInteger(_0x46a054['id'])&&(_0x46a054[_0x1bbc04(0x10e)]===null||isPositiveInteger(_0x46a054[_0x1bbc04(0x10e)]))&&Number[_0x1bbc04(0x110)](_0x46a054[_0x1bbc04(0xf9)])&&_0x46a054[_0x1bbc04(0xf9)]>=0x0&&typeof _0x46a054[_0x1bbc04(0xd3)]==='string'&&typeof _0x46a054[_0x1bbc04(0xe4)]===_0x1bbc04(0xcf)&&typeof _0x46a054[_0x1bbc04(0x117)]===_0x1bbc04(0xcf)&&(_0x46a054[_0x1bbc04(0xd4)]===null||typeof _0x46a054[_0x1bbc04(0xd4)]==='boolean')&&(_0x46a054[_0x1bbc04(0xba)]===null||Number[_0x1bbc04(0x110)](_0x46a054[_0x1bbc04(0xba)]))&&Array['isArray'](_0x46a054[_0x1bbc04(0xc9)])&&_0x46a054[_0x1bbc04(0xc9)][_0x1bbc04(0xda)](_0x4c82a5=>typeof _0x4c82a5===_0x1bbc04(0xcf))&&typeof _0x46a054['resourcesValid']===_0x1bbc04(0xea)&&Array['isArray'](_0x46a054[_0x1bbc04(0x10b)])&&_0x46a054['childrenIds'][_0x1bbc04(0xda)](isPositiveInteger)&&Number[_0x1bbc04(0x110)](_0x46a054[_0x1bbc04(0xe9)])&&_0x46a054[_0x1bbc04(0xe9)]>=0x0&&(_0x46a054[_0x1bbc04(0x111)]===null||isPositiveInteger(_0x46a054[_0x1bbc04(0x111)]))&&typeof _0x46a054[_0x1bbc04(0xf3)]===_0x1bbc04(0xcf)&&typeof _0x46a054['modelType']===_0x1bbc04(0xcf)&&(_0x46a054['datasetId']===null||isPositiveInteger(_0x46a054[_0x1bbc04(0xc4)]))&&typeof _0x46a054[_0x1bbc04(0x113)]===_0x1bbc04(0xcf)&&(_0x46a054[_0x1bbc04(0xbd)]===null||typeof _0x46a054[_0x1bbc04(0xbd)]===_0x1bbc04(0xcf))&&(_0x46a054[_0x1bbc04(0x122)]===null||typeof _0x46a054[_0x1bbc04(0x122)]==='string')&&(_0x46a054['updateTime']===null||typeof _0x46a054['updateTime']===_0x1bbc04(0xcf)||typeof _0x46a054['updateTime']===_0x1bbc04(0xc3))&&(_0x46a054[_0x1bbc04(0xfb)]===undefined||_0x46a054[_0x1bbc04(0xfb)]===null||isRecord(_0x46a054[_0x1bbc04(0xfb)]));}function isTargetFingerprint(_0xbca2c2){const _0x510f88=a140_0x3dae72;if(!isRecord(_0xbca2c2))return![];return isPositiveInteger(_0xbca2c2['id'])&&(_0xbca2c2[_0x510f88(0x10e)]===null||isPositiveInteger(_0xbca2c2[_0x510f88(0x10e)]))&&Number['isInteger'](_0xbca2c2[_0x510f88(0xf9)])&&_0xbca2c2['depth']>=0x0&&typeof _0xbca2c2[_0x510f88(0xd3)]==='string'&&typeof _0xbca2c2['path']===_0x510f88(0xcf)&&typeof _0xbca2c2[_0x510f88(0x117)]==='string'&&(_0xbca2c2[_0x510f88(0xd4)]===null||typeof _0xbca2c2['visible']===_0x510f88(0xea))&&(_0xbca2c2[_0x510f88(0xba)]===null||Number[_0x510f88(0x110)](_0xbca2c2[_0x510f88(0xba)]))&&(_0xbca2c2['pageId']===null||isPositiveInteger(_0xbca2c2[_0x510f88(0x111)]))&&typeof _0xbca2c2['pageType']===_0x510f88(0xcf)&&typeof _0xbca2c2[_0x510f88(0xf4)]===_0x510f88(0xcf)&&(_0xbca2c2[_0x510f88(0xc4)]===null||isPositiveInteger(_0xbca2c2['datasetId']))&&typeof _0xbca2c2[_0x510f88(0x113)]===_0x510f88(0xcf)&&Array[_0x510f88(0xe1)](_0xbca2c2[_0x510f88(0x10b)])&&_0xbca2c2[_0x510f88(0x10b)][_0x510f88(0xda)](isPositiveInteger)&&Number['isInteger'](_0xbca2c2[_0x510f88(0xe9)])&&_0xbca2c2[_0x510f88(0xe9)]>=0x0&&typeof _0xbca2c2[_0x510f88(0x115)]===_0x510f88(0xea)&&typeof _0xbca2c2['resourcesHash']===_0x510f88(0xcf)&&/^[a-f0-9]{64}$/[_0x510f88(0x101)](_0xbca2c2[_0x510f88(0xdb)])&&typeof _0xbca2c2[_0x510f88(0x11c)]===_0x510f88(0xcf)&&/^[a-f0-9]{64}$/[_0x510f88(0x101)](_0xbca2c2[_0x510f88(0x11c)])&&(_0xbca2c2[_0x510f88(0x11b)]===null||typeof _0xbca2c2[_0x510f88(0x11b)]===_0x510f88(0xcf)||typeof _0xbca2c2['updateTime']==='number');}function isRecord(_0x520064){const _0x5026c1=a140_0x3dae72;return typeof _0x520064===_0x5026c1(0xc0)&&_0x520064!==null&&!Array['isArray'](_0x520064);}function isPositiveInteger(_0x586b16){const _0x573a93=a140_0x3dae72;return Number[_0x573a93(0xf6)](_0x586b16)&&Number(_0x586b16)>0x0;}function errorMessage(_0x11b43b){return _0x11b43b instanceof Error?_0x11b43b['message']:String(_0x11b43b);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4b2bcc,_0x4f0061){const _0x19e5c2=a141_0x449c,_0x228ec2=_0x4b2bcc();while(!![]){try{const _0xbd57d0=parseInt(_0x19e5c2(0x14b))/0x1*(-parseInt(_0x19e5c2(0x15c))/0x2)+-parseInt(_0x19e5c2(0x16a))/0x3*(-parseInt(_0x19e5c2(0x14f))/0x4)+parseInt(_0x19e5c2(0x170))/0x5*(parseInt(_0x19e5c2(0x151))/0x6)+parseInt(_0x19e5c2(0x153))/0x7*(-parseInt(_0x19e5c2(0x174))/0x8)+parseInt(_0x19e5c2(0x16e))/0x9+parseInt(_0x19e5c2(0x154))/0xa+-parseInt(_0x19e5c2(0x15d))/0xb*(-parseInt(_0x19e5c2(0x165))/0xc);if(_0xbd57d0===_0x4f0061)break;else _0x228ec2['push'](_0x228ec2['shift']());}catch(_0x337261){_0x228ec2['push'](_0x228ec2['shift']());}}}(a141_0x40b4,0x326df));import{createHash}from'node:crypto';import{getMenuTree}from'../../../core/api-client.js';export async function fetchMenuSnapshot(_0x57c4b5,_0x6e878b,_0x1b5c83={}){const _0x3fdc8e=a141_0x449c,_0x4fbbe6=await getMenuTree(_0x57c4b5,_0x6e878b);return buildMenuSnapshot(Array[_0x3fdc8e(0x178)](_0x4fbbe6)?_0x4fbbe6:[],_0x1b5c83);}export function buildMenuSnapshot(_0x2b2f78,_0x1826c1={}){const _0x5dd524=a141_0x449c,_0x274b03=flattenMenuItems(_0x2b2f78,{'verbose':_0x1826c1['verbose']===!![],'parentId':null,'depth':0x0}),_0x77da0a=new Map(_0x274b03['map'](_0x38ee87=>[_0x38ee87['id'],_0x38ee87])),_0x2f8fe3=createHash(_0x5dd524(0x17c))['update'](JSON['stringify'](_0x274b03[_0x5dd524(0x15a)](toHashInput)))[_0x5dd524(0x16b)](_0x5dd524(0x14a));return{'total':_0x274b03[_0x5dd524(0x164)],'hash':'sha256:'+_0x2f8fe3,'menus':_0x274b03,'byId':_0x77da0a};}export function toProcessedMenuItem(_0x4e0c94){const _0x3d6546=a141_0x449c;return{'id':_0x4e0c94['id'],'path':_0x4e0c94['path'],'label':_0x4e0c94[_0x3d6546(0x15e)],'resources':[..._0x4e0c94[_0x3d6546(0x15b)]],'extend':_0x4e0c94[_0x3d6546(0x176)]??null};}export function toMenuListItem(_0x1eb247){const {modelType:_0x24a01c,datasetId:_0x9734a,datasetCode:_0x159ea7,resourcesValid:_0x32e57d,..._0x410aa2}=_0x1eb247;return _0x410aa2;}export function getChildren(_0x4a820d,_0x558346){const _0x52c536=a141_0x449c;return _0x4a820d[_0x52c536(0x163)][_0x52c536(0x16c)](_0x2793a4=>_0x2793a4[_0x52c536(0x160)]===_0x558346);}function flattenMenuItems(_0x4c28db,_0x2aaf7a){const _0x3f6847=a141_0x449c,_0x12fa06=sortMenuItems(_0x4c28db),_0x14aee1=[];for(const _0x824603 of _0x12fa06){const _0x6e76cd=sortMenuItems(Array[_0x3f6847(0x178)](_0x824603[_0x3f6847(0x166)])?_0x824603['children']:[]);_0x14aee1[_0x3f6847(0x179)](toMenuFact(_0x824603,_0x6e76cd,_0x2aaf7a)),_0x6e76cd[_0x3f6847(0x164)]>0x0&&_0x14aee1[_0x3f6847(0x179)](...flattenMenuItems(_0x6e76cd,{'verbose':_0x2aaf7a[_0x3f6847(0x16d)],'parentId':_0x824603['id'],'depth':_0x2aaf7a['depth']+0x1}));}return _0x14aee1;}function sortMenuItems(_0x5e005c){const _0x5a8242=a141_0x449c;return _0x5e005c[_0x5a8242(0x15a)]((_0x122d7e,_0x40f66a)=>({'item':_0x122d7e,'index':_0x40f66a}))[_0x5a8242(0x149)]((_0x2d0a84,_0x136cd9)=>{const _0xb9b883=_0x5a8242,_0x213cc7=normalizeSort(_0x2d0a84['item']['sort']),_0x24bd07=normalizeSort(_0x136cd9[_0xb9b883(0x14e)][_0xb9b883(0x149)]);if(_0x213cc7!==_0x24bd07)return _0x213cc7-_0x24bd07;return _0x2d0a84['index']-_0x136cd9[_0xb9b883(0x177)];})['map'](({item:_0xe50fd3})=>_0xe50fd3);}function toMenuFact(_0x1fdf2a,_0x3742b3,_0x254d8b){const _0x1eb37e=a141_0x449c,_0x305348=normalizeResourceValue(_0x1fdf2a[_0x1eb37e(0x176)]?.['resources']),_0x3fc62c={'id':_0x1fdf2a['id'],'parentId':_0x254d8b[_0x1eb37e(0x160)],'depth':_0x254d8b['depth'],'label':normalizeString(_0x1fdf2a[_0x1eb37e(0x15e)]),'path':normalizeString(_0x1fdf2a['path']),'url':normalizeString(_0x1fdf2a[_0x1eb37e(0x161)]),'type':normalizeString(_0x1fdf2a[_0x1eb37e(0x172)]),'visible':typeof _0x1fdf2a[_0x1eb37e(0x152)]===_0x1eb37e(0x14c)?_0x1fdf2a[_0x1eb37e(0x152)]:null,'sort':typeof _0x1fdf2a[_0x1eb37e(0x149)]===_0x1eb37e(0x17b)&&Number[_0x1eb37e(0x15f)](_0x1fdf2a['sort'])?_0x1fdf2a[_0x1eb37e(0x149)]:null,'resources':_0x305348[_0x1eb37e(0x14d)],'resourcesValid':_0x305348[_0x1eb37e(0x156)],'childrenIds':_0x3742b3[_0x1eb37e(0x15a)](_0x23d2cf=>_0x23d2cf['id']),'childrenCount':_0x3742b3[_0x1eb37e(0x164)],'pageId':normalizeNullableNumber(_0x1fdf2a[_0x1eb37e(0x169)]),'pageType':normalizeString(_0x1fdf2a[_0x1eb37e(0x16f)]),'modelType':normalizeString(_0x1fdf2a[_0x1eb37e(0x168)]),'datasetId':normalizeNullableNumber(_0x1fdf2a['datasetId']),'datasetCode':normalizeString(_0x1fdf2a[_0x1eb37e(0x17a)]),'updateUserId':normalizeNullableString(_0x1fdf2a['updateUserId']),'updateUserName':normalizeNullableString(_0x1fdf2a['updateUserName']),'updateTime':normalizeNullableTimestamp(_0x1fdf2a[_0x1eb37e(0x175)])};return _0x254d8b[_0x1eb37e(0x16d)]&&(_0x3fc62c[_0x1eb37e(0x176)]=_0x1fdf2a[_0x1eb37e(0x176)]??null),_0x3fc62c;}function toHashInput(_0x539f28){const _0x1f24ef=a141_0x449c;return{'id':_0x539f28['id'],'parentId':_0x539f28['parentId'],'label':_0x539f28[_0x1f24ef(0x15e)],'path':_0x539f28[_0x1f24ef(0x173)],'url':_0x539f28[_0x1f24ef(0x161)],'type':_0x539f28[_0x1f24ef(0x172)],'visible':_0x539f28[_0x1f24ef(0x152)],'sort':_0x539f28[_0x1f24ef(0x149)],'resources':_0x539f28[_0x1f24ef(0x15b)],'resourcesValid':_0x539f28[_0x1f24ef(0x167)],'childrenIds':_0x539f28[_0x1f24ef(0x155)],'pageId':_0x539f28[_0x1f24ef(0x169)],'pageType':_0x539f28['pageType'],'modelType':_0x539f28[_0x1f24ef(0x168)],'datasetId':_0x539f28[_0x1f24ef(0x150)],'datasetCode':_0x539f28[_0x1f24ef(0x17a)],'updateUserId':_0x539f28[_0x1f24ef(0x158)],'updateUserName':_0x539f28[_0x1f24ef(0x171)],'updateTime':_0x539f28[_0x1f24ef(0x175)]};}function normalizeSort(_0x2ac5b1){const _0x4be6f0=a141_0x449c;return typeof _0x2ac5b1==='number'&&Number[_0x4be6f0(0x15f)](_0x2ac5b1)?_0x2ac5b1:Number[_0x4be6f0(0x162)];}function a141_0x449c(_0x52766a,_0x409e51){_0x52766a=_0x52766a-0x149;const _0x40b4fc=a141_0x40b4();let _0x449c93=_0x40b4fc[_0x52766a];return _0x449c93;}function normalizeString(_0x4944f4){const _0x5b500f=a141_0x449c;return typeof _0x4944f4===_0x5b500f(0x159)?_0x4944f4:'';}function normalizeNullableNumber(_0xbc3f54){const _0x5d2e0=a141_0x449c;return typeof _0xbc3f54===_0x5d2e0(0x17b)&&Number[_0x5d2e0(0x15f)](_0xbc3f54)?_0xbc3f54:null;}function normalizeNullableString(_0x30b023){const _0x2f0348=a141_0x449c;return typeof _0x30b023==='string'&&_0x30b023[_0x2f0348(0x164)]>0x0?_0x30b023:null;}function normalizeNullableTimestamp(_0x191af9){const _0x23705f=a141_0x449c;if(typeof _0x191af9===_0x23705f(0x159))return _0x191af9['length']>0x0?_0x191af9:null;return typeof _0x191af9==='number'&&Number[_0x23705f(0x15f)](_0x191af9)?_0x191af9:null;}export function normalizeResources(_0x581eec){const _0x5d1fca=a141_0x449c;return normalizeResourceValue(_0x581eec)[_0x5d1fca(0x14d)];}function a141_0x40b4(){const _0x54316c=['1055169Tpwgwx','digest','filter','verbose','735444KRFoRT','pageType','805UVTdjD','updateUserName','type','path','64lYBvln','updateTime','extend','index','isArray','push','datasetCode','number','sha256','sort','hex','60869pNsuze','boolean','values','item','4lkPfKZ','datasetId','1758tyRneZ','visible','341999fljarr','1897680UzjmGW','childrenIds','valid','parse','updateUserId','string','map','resources','6wOzNeJ','92774DzHiza','label','isFinite','parentId','url','POSITIVE_INFINITY','menus','length','156FpEowY','children','resourcesValid','modelType','pageId'];a141_0x40b4=function(){return _0x54316c;};return a141_0x40b4();}function normalizeResourceValue(_0x309729){const _0x3f163a=a141_0x449c;if(_0x309729==null)return{'values':[],'valid':!![]};if(Array['isArray'](_0x309729))return{'values':_0x309729[_0x3f163a(0x15a)](String),'valid':!![]};if(typeof _0x309729!==_0x3f163a(0x159))return{'values':[],'valid':![]};try{const _0x45732f=JSON[_0x3f163a(0x157)](_0x309729);return Array[_0x3f163a(0x178)](_0x45732f)?{'values':_0x45732f['map'](String),'valid':!![]}:{'values':[],'valid':![]};}catch{return{'values':[],'valid':![]};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x48617d,_0x4b8885){var _0x3d7ece=a142_0x2265,_0x6124cb=_0x48617d();while(!![]){try{var _0x587952=-parseInt(_0x3d7ece(0x1b3))/0x1+parseInt(_0x3d7ece(0x1b7))/0x2+parseInt(_0x3d7ece(0x1ba))/0x3*(parseInt(_0x3d7ece(0x1b9))/0x4)+parseInt(_0x3d7ece(0x1b8))/0x5+parseInt(_0x3d7ece(0x1b5))/0x6*(-parseInt(_0x3d7ece(0x1bb))/0x7)+parseInt(_0x3d7ece(0x1b6))/0x8*(parseInt(_0x3d7ece(0x1b4))/0x9)+-parseInt(_0x3d7ece(0x1b2))/0xa;if(_0x587952===_0x4b8885)break;else _0x6124cb['push'](_0x6124cb['shift']());}catch(_0x4bf797){_0x6124cb['push'](_0x6124cb['shift']());}}}(a142_0x1153,0xae412));export*from'../../../commands/menu/shared/types.js';export*from'../../../commands/menu/shared/logic.js';export*from'../../../commands/menu/shared/compare-table.js';function a142_0x2265(_0x1be6d1,_0x1d6036){_0x1be6d1=_0x1be6d1-0x1b2;var _0x115370=a142_0x1153();var _0x2265e6=_0x115370[_0x1be6d1];return _0x2265e6;}export*from'../../../commands/menu/shared/inquirer.js';export*from'../../../commands/menu/shared/valid-url.js';function a142_0x1153(){var _0x29f780=['672626xnffBw','4480795niWeoZ','2813236BshFIC','3UXFslr','18823oQhENz','6997420KEbIrg','861839cmWreJ','9qZBcPF','474dXeDmC','4415816RDUTSQ'];a142_0x1153=function(){return _0x29f780;};return a142_0x1153();}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(_0x1b634f,_0x222af2){const _0x47738a=a143_0x71a2,_0x210bdf=_0x1b634f();while(!![]){try{const _0x5a3d92=parseInt(_0x47738a(0x76))/0x1*(-parseInt(_0x47738a(0x79))/0x2)+parseInt(_0x47738a(0x90))/0x3*(-parseInt(_0x47738a(0x92))/0x4)+-parseInt(_0x47738a(0x8e))/0x5+-parseInt(_0x47738a(0x94))/0x6+-parseInt(_0x47738a(0x9a))/0x7*(-parseInt(_0x47738a(0x89))/0x8)+parseInt(_0x47738a(0x80))/0x9*(-parseInt(_0x47738a(0x8d))/0xa)+parseInt(_0x47738a(0x6f))/0xb;if(_0x5a3d92===_0x222af2)break;else _0x210bdf['push'](_0x210bdf['shift']());}catch(_0x17d2c7){_0x210bdf['push'](_0x210bdf['shift']());}}}(a143_0x11d9,0xa5bec));function a143_0x11d9(){const _0x2113dd=['red','No\x20local\x20pages\x20found.','\x20\x20✗\x20CSS\x20URL\x20is\x20unreachable','\x20\x20✗\x20JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','includes','203693CjdQwd','length','trim','6PSIlaW','cancelled','cyan','start','filter','name','catch','9mZnYjs','fail','\x20\x20JS\x20URL:','succeed','Cancelled.','\x20\x20✗\x20CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','\x20\x20Checking\x20CSS\x20URL\x20reachability...','[new]','[already\x20on\x20platform]','2798816pQzdxt','\x20\x20Select\x20menus\x20to\x20sync\x20(space\x20to\x20toggle,\x20a=all,\x20i=invert):','gray','green','13299410JkqKAm','5476735tDvOpd','error','3DEAOhQ','isTTY','1054364tIVZoa','ExitPromptError','796110ATfbIX','path','JS\x20URL\x20checked','\x20\x20✗\x20JS\x20URL\x20is\x20unreachable','test','stdin','14srrcPc','No\x20menus\x20selected.','\x20\x20CSS\x20URL:','37530141vjFixS','This\x20command\x20requires\x20an\x20interactive\x20terminal.\x20'];a143_0x11d9=function(){return _0x2113dd;};return a143_0x11d9();}import a143_0x5e03f0 from'chalk';import{checkbox,input,confirm}from'@inquirer/prompts';import a143_0x38de5c from'ora';import{isUrlReachable}from'../../../commands/menu/shared/valid-url.js';import{CliErrors}from'../../../errors.js';function onCancel(_0x134d4f){const _0x4da375=a143_0x71a2;return _0x134d4f[_0x4da375(0x7f)](_0x5c72c9=>{const _0x1f854b=_0x4da375;if(_0x5c72c9?.[_0x1f854b(0x7e)]===_0x1f854b(0x93))throw CliErrors['cancelled']('Cancelled.');throw _0x5c72c9;});}export function startSpinner(_0x96d773){const _0x1c18cb=a143_0x71a2;return a143_0x38de5c({'text':_0x96d773,'color':_0x1c18cb(0x7b)})[_0x1c18cb(0x7c)]();}export function stopSpinner(_0x5c8502,_0x15be6e,_0x30104e){const _0x5f0110=a143_0x71a2;_0x30104e?_0x5c8502[_0x5f0110(0x83)](_0x15be6e):_0x5c8502[_0x5f0110(0x81)](_0x15be6e);}export async function askConfirm(_0x11f15c){return onCancel(confirm({'message':_0x11f15c,'theme':{'prefix':''}}));}export async function askJsUrl(_0x67ed64){const _0x5c75a5=a143_0x71a2;while(!![]){const _0x248e70=await onCancel(input({'message':_0x5c75a5(0x82),'default':_0x67ed64,'theme':{'prefix':''}}));if(_0x248e70[_0x5c75a5(0x78)]()==='')throw CliErrors[_0x5c75a5(0x7a)]('Cancelled.');if(!/^https:\/\/.+\.js(\?.*)?$/[_0x5c75a5(0x98)](_0x248e70['trim']())){console['error'](a143_0x5e03f0[_0x5c75a5(0x71)](_0x5c75a5(0x74)));continue;}const _0x3ef2ac=startSpinner('\x20\x20Checking\x20JS\x20URL\x20reachability...');try{const _0x1a3efd=await isUrlReachable(_0x248e70[_0x5c75a5(0x78)]());stopSpinner(_0x3ef2ac,_0x5c75a5(0x96),_0x1a3efd);if(!_0x1a3efd){console[_0x5c75a5(0x8f)](a143_0x5e03f0['red'](_0x5c75a5(0x97)));continue;}return _0x248e70[_0x5c75a5(0x78)]();}catch(_0x28a209){stopSpinner(_0x3ef2ac,'JS\x20URL\x20check\x20failed',![]);throw _0x28a209;}}}export async function askCssUrl(_0x5ea95e){const _0x15f73a=a143_0x71a2;while(!![]){const _0x249e14=await onCancel(input({'message':_0x15f73a(0x6e),'default':_0x5ea95e,'theme':{'prefix':''}}));if(_0x249e14[_0x15f73a(0x78)]()==='')throw CliErrors[_0x15f73a(0x7a)](_0x15f73a(0x84));if(!/^https:\/\/.+\.css(\?.*)?$/[_0x15f73a(0x98)](_0x249e14[_0x15f73a(0x78)]())){console['error'](a143_0x5e03f0[_0x15f73a(0x71)](_0x15f73a(0x85)));continue;}const _0x277418=startSpinner(_0x15f73a(0x86));try{const _0x304d7c=await isUrlReachable(_0x249e14[_0x15f73a(0x78)]());stopSpinner(_0x277418,'CSS\x20URL\x20checked',_0x304d7c);if(!_0x304d7c){console[_0x15f73a(0x8f)](a143_0x5e03f0['red'](_0x15f73a(0x73)));continue;}return _0x249e14[_0x15f73a(0x78)]();}catch(_0x530473){stopSpinner(_0x277418,'CSS\x20URL\x20check\x20failed',![]);throw _0x530473;}}}export async function selectPages(_0x20c287,_0x14f98b){const _0x56129d=a143_0x71a2,_0xfdb30d=_0x20c287['map'](_0x569980=>{const _0x1e4f7a=a143_0x71a2,_0x42e021=_0x14f98b['has'](_0x569980[_0x1e4f7a(0x95)]);return{'name':_0x569980['label']+'\x20\x20'+a143_0x5e03f0['gray'](_0x569980[_0x1e4f7a(0x95)])+'\x20\x20'+(_0x42e021?a143_0x5e03f0[_0x1e4f7a(0x8b)](_0x1e4f7a(0x88)):a143_0x5e03f0[_0x1e4f7a(0x8c)](_0x1e4f7a(0x87))),'value':_0x569980['path'],'checked':!_0x42e021,'disabled':_0x42e021};});if(_0xfdb30d['length']===0x0)throw new Error(_0x56129d(0x72));const _0x5cf52b=await onCancel(checkbox({'message':_0x56129d(0x8a),'choices':_0xfdb30d,'loop':![],'theme':{'prefix':''}}));if(_0x5cf52b[_0x56129d(0x77)]===0x0)throw new Error(_0x56129d(0x6d));return _0x20c287[_0x56129d(0x7d)](_0x296a4c=>_0x5cf52b[_0x56129d(0x75)](_0x296a4c['path']));}function a143_0x71a2(_0x1528cc,_0x1d5a73){_0x1528cc=_0x1528cc-0x6d;const _0x11d9c4=a143_0x11d9();let _0x71a284=_0x11d9c4[_0x1528cc];return _0x71a284;}export function isInteractive(){const _0x16e847=a143_0x71a2;return process[_0x16e847(0x99)][_0x16e847(0x91)]===!![];}export function requireInteractive(){const _0x105bc0=a143_0x71a2;if(!isInteractive())throw new Error(_0x105bc0(0x70)+'Use\x20--yes\x20to\x20run\x20in\x20non-interactive\x20mode,\x20or\x20pipe\x20data\x20via\x20--params.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a144_0x47c5a3=a144_0x3a6f;(function(_0x2493c8,_0x11d4c5){const _0x56125c=a144_0x3a6f,_0x48f557=_0x2493c8();while(!![]){try{const _0x489bef=parseInt(_0x56125c(0xa3))/0x1*(-parseInt(_0x56125c(0x9d))/0x2)+-parseInt(_0x56125c(0xa4))/0x3*(-parseInt(_0x56125c(0xb0))/0x4)+-parseInt(_0x56125c(0x9a))/0x5*(parseInt(_0x56125c(0xa0))/0x6)+-parseInt(_0x56125c(0x9e))/0x7+parseInt(_0x56125c(0xad))/0x8*(-parseInt(_0x56125c(0x9f))/0x9)+parseInt(_0x56125c(0xa6))/0xa+parseInt(_0x56125c(0xa7))/0xb;if(_0x489bef===_0x11d4c5)break;else _0x48f557['push'](_0x48f557['shift']());}catch(_0xa11966){_0x48f557['push'](_0x48f557['shift']());}}}(a144_0x402c,0xc013c));function a144_0x3a6f(_0x110992,_0x26a8d9){_0x110992=_0x110992-0x9a;const _0x402cd9=a144_0x402c();let _0x3a6f49=_0x402cd9[_0x110992];return _0x3a6f49;}import{readdirSync,statSync,readFileSync}from'fs';import{join,relative,resolve,sep}from'path';const pagesDir=resolve(process[a144_0x47c5a3(0x9c)](),a144_0x47c5a3(0xa8));export function extractTitleFromComment(_0x48fc9b){const _0xc2540d=a144_0x47c5a3;try{const _0x194200=readFileSync(_0x48fc9b,_0xc2540d(0x9b)),_0x41f3f5=_0x194200[_0xc2540d(0xaf)](/^\s*\/\*\*?([\s\S]*?)\*\//);if(_0x41f3f5&&_0x41f3f5[0x1]){const _0x31c5e6=_0x41f3f5[0x1],_0x4f746a=_0x31c5e6[_0xc2540d(0xaf)](/^\s*\*?\s*title\s*:\s*(.+)/im);if(_0x4f746a&&_0x4f746a[0x1])return _0x4f746a[0x1][_0xc2540d(0xae)]();}let _0x55feb7=null;const _0x3021f4=_0x194200[_0xc2540d(0xaf)](/export\s+default\s+([A-Z][a-zA-Z0-9]*)/);_0x3021f4&&_0x3021f4[0x1]&&(_0x55feb7=_0x3021f4[0x1]);if(!_0x55feb7){const _0xcf4d77=_0x194200[_0xc2540d(0xaf)](/export\s+default\s+function\s+([A-Z][a-zA-Z0-9]*)/);_0xcf4d77&&_0xcf4d77[0x1]&&(_0x55feb7=_0xcf4d77[0x1]);}if(_0x55feb7){const _0x228135=new RegExp('\x5cb'+_0x55feb7+'\x5c.displayName\x5cs*=\x5cs*[\x22\x27]([^\x22\x27]+)[\x22\x27]'),_0x29bf6b=_0x194200[_0xc2540d(0xaf)](_0x228135);if(_0x29bf6b&&_0x29bf6b[0x1])return _0x29bf6b[0x1];return _0x55feb7;}return null;}catch(_0x248982){return null;}}function a144_0x402c(){const _0x5278f2=['5552oqlQOd','trim','match','2243348HDzVLV','replace','concat','push','index.tsx','35sJYNLB','utf-8','cwd','718276JjAZQI','2007600DdkSKi','18180pgucdd','836844BPUYkp','path','join','1pssxCX','3jhPvCG','.tsx','1845930THGyXd','33719994LwtPWW','src/pages','filter','endsWith','forEach','replaceAll'];a144_0x402c=function(){return _0x5278f2;};return a144_0x402c();}export function getLocalPages(_0x24c005=pagesDir,_0x5b1306=pagesDir){const _0x257e8a=a144_0x47c5a3;let _0x1fa436=[];const _0x473a0e=readdirSync(_0x24c005);return _0x473a0e[_0x257e8a(0xab)](_0x47c676=>{const _0x3fe7b4=_0x257e8a,_0x2b09d2=join(_0x24c005,_0x47c676),_0x36617a=statSync(_0x2b09d2);if(_0x36617a&&_0x36617a['isDirectory']())_0x1fa436=_0x1fa436[_0x3fe7b4(0xb2)](getLocalPages(_0x2b09d2,_0x5b1306));else{if(_0x47c676[_0x3fe7b4(0xaa)](_0x3fe7b4(0xa5))){let _0x59cb4a=relative(_0x5b1306,_0x2b09d2);_0x59cb4a[_0x3fe7b4(0xaa)](_0x3fe7b4(0xb4))?_0x59cb4a=_0x59cb4a[_0x3fe7b4(0xb1)](/index\.tsx$/,''):_0x59cb4a=_0x59cb4a['replace'](/\.tsx$/,'');_0x59cb4a[_0x3fe7b4(0xaa)](sep)&&(_0x59cb4a=_0x59cb4a['slice'](0x0,-0x1));const _0x37ad4c=_0x59cb4a['split'](sep)[_0x3fe7b4(0xa2)]('/'),_0x4aa90b=extractTitleFromComment(_0x2b09d2),_0x38955d=_0x4aa90b||_0x37ad4c;_0x1fa436[_0x3fe7b4(0xb3)]({'path':_0x37ad4c[_0x3fe7b4(0xac)]('$',':'),'label':_0x38955d});}}}),_0x1fa436[_0x257e8a(0xa9)](_0x3eaeee=>_0x3eaeee[_0x257e8a(0xa1)]!=='');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x5c000b,_0x4de305){const _0x280e24=a145_0x4191,_0x137d72=_0x5c000b();while(!![]){try{const _0x5adf3c=-parseInt(_0x280e24(0x1d7))/0x1+-parseInt(_0x280e24(0x1de))/0x2+-parseInt(_0x280e24(0x1e1))/0x3+-parseInt(_0x280e24(0x1e4))/0x4*(-parseInt(_0x280e24(0x1df))/0x5)+-parseInt(_0x280e24(0x1da))/0x6+parseInt(_0x280e24(0x1e3))/0x7+parseInt(_0x280e24(0x1db))/0x8;if(_0x5adf3c===_0x4de305)break;else _0x137d72['push'](_0x137d72['shift']());}catch(_0x46d835){_0x137d72['push'](_0x137d72['shift']());}}}(a145_0x2a1f,0xe3219));import{getLocalPages}from'../../../commands/menu/shared/local-pages.js';function a145_0x2a1f(){const _0x2cf71d=['8561232fUTGYf','16434008oWwung','JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','filter','2777544BRrige','105855kqqsyw','path','1558134pBhwkg','CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','11452203pSYoqt','136BKJDzd','errors','length','push','map','resources','label','144743ChAMjf','JS\x20URL\x20is\x20unreachable','has'];a145_0x2a1f=function(){return _0x2cf71d;};return a145_0x2a1f();}import{getOnlineMenuList,createMenus}from'../../../commands/menu/shared/service.js';import{isUrlReachable,isValidCssHttpsUrl,isValidJsHttpsUrl}from'../../../commands/menu/shared/valid-url.js';export function validateJsUrl(_0x4dbb7f){const _0x19be98=a145_0x4191,_0x3a70c3=[];return!isValidJsHttpsUrl(_0x4dbb7f)&&_0x3a70c3[_0x19be98(0x1e7)](_0x19be98(0x1dc)),{'ok':_0x3a70c3['length']===0x0,'errors':_0x3a70c3};}export function validateCssUrl(_0x3955ec){const _0x574dc9=a145_0x4191,_0x5a3ee9=[];return!isValidCssHttpsUrl(_0x3955ec)&&_0x5a3ee9[_0x574dc9(0x1e7)](_0x574dc9(0x1e2)),{'ok':_0x5a3ee9[_0x574dc9(0x1e6)]===0x0,'errors':_0x5a3ee9};}export async function validateJsUrlReachable(_0x287c40){const _0x29544a=a145_0x4191,_0xaa3449=validateJsUrl(_0x287c40);if(!_0xaa3449['ok'])return _0xaa3449;const _0x34b71b=await isUrlReachable(_0x287c40);if(!_0x34b71b)_0xaa3449[_0x29544a(0x1e5)][_0x29544a(0x1e7)](_0x29544a(0x1d8));return{'ok':_0xaa3449[_0x29544a(0x1e5)][_0x29544a(0x1e6)]===0x0,'errors':_0xaa3449[_0x29544a(0x1e5)]};}export async function validateCssUrlReachable(_0x160285){const _0x23f024=a145_0x4191,_0x3a4fe8=validateCssUrl(_0x160285);if(!_0x3a4fe8['ok'])return _0x3a4fe8;const _0x21bb87=await isUrlReachable(_0x160285);if(!_0x21bb87)_0x3a4fe8['errors'][_0x23f024(0x1e7)]('CSS\x20URL\x20is\x20unreachable');return{'ok':_0x3a4fe8[_0x23f024(0x1e5)]['length']===0x0,'errors':_0x3a4fe8[_0x23f024(0x1e5)]};}function a145_0x4191(_0x5add01,_0x2440b4){_0x5add01=_0x5add01-0x1d5;const _0x2a1f51=a145_0x2a1f();let _0x41915e=_0x2a1f51[_0x5add01];return _0x41915e;}export function buildCompareRows(_0x19b552,_0x245d08){const _0x326fd6=a145_0x4191;return _0x19b552[_0x326fd6(0x1e8)](_0x23f483=>({'label':_0x23f483['label'],'path':_0x23f483[_0x326fd6(0x1e0)],'local':!![],'online':_0x245d08[_0x326fd6(0x1d9)](_0x23f483[_0x326fd6(0x1e0)])}));}export async function doCreateMenus(_0x409b56,_0x244f7b,_0x27e0aa,_0x5db2d3){const _0x3a4cd5=a145_0x4191,_0x55eca3=await createMenus(_0x409b56,_0x244f7b,_0x27e0aa,_0x5db2d3);return{'created':_0x55eca3[_0x3a4cd5(0x1e6)],'failed':0x0,'labels':_0x27e0aa[_0x3a4cd5(0x1e8)](_0x474bc9=>_0x474bc9[_0x3a4cd5(0x1d6)]),'menus':_0x55eca3};}export function filterMenusWithResources(_0x5aa425){const _0x221a39=a145_0x4191;return _0x5aa425[_0x221a39(0x1dd)](_0x4dd4e8=>_0x4dd4e8[_0x221a39(0x1d5)]['length']>0x0);}export async function fetchMenuData(_0x526472,_0x5bd767){const _0x14f070=a145_0x4191,_0x464ade=getLocalPages(),_0x59b30e=await getOnlineMenuList(_0x526472,_0x5bd767),_0x24ab9e=new Set(_0x59b30e[_0x14f070(0x1e8)](_0x3c150e=>_0x3c150e[_0x14f070(0x1e0)]));return{'localPages':_0x464ade,'onlineMenuList':_0x59b30e,'onlinePaths':_0x24ab9e};}export async function fetchOnlineMenuList(_0x502ce5,_0x2354b6){return getOnlineMenuList(_0x502ce5,_0x2354b6);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a146_0x539bf5=a146_0x29a7;(function(_0x5c0f0e,_0x3e1741){const _0x2199d8=a146_0x29a7,_0x8a48fc=_0x5c0f0e();while(!![]){try{const _0x36abe2=-parseInt(_0x2199d8(0x155))/0x1*(parseInt(_0x2199d8(0x16c))/0x2)+parseInt(_0x2199d8(0x164))/0x3*(parseInt(_0x2199d8(0x133))/0x4)+-parseInt(_0x2199d8(0x16d))/0x5*(-parseInt(_0x2199d8(0x14c))/0x6)+-parseInt(_0x2199d8(0x119))/0x7*(parseInt(_0x2199d8(0x135))/0x8)+-parseInt(_0x2199d8(0x10d))/0x9+-parseInt(_0x2199d8(0x12c))/0xa+parseInt(_0x2199d8(0x162))/0xb;if(_0x36abe2===_0x3e1741)break;else _0x8a48fc['push'](_0x8a48fc['shift']());}catch(_0x9043d2){_0x8a48fc['push'](_0x8a48fc['shift']());}}}(a146_0x2975,0x7ea13));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':a146_0x539bf5(0x15c),'required':!![],'description':a146_0x539bf5(0x117)};export const MENU_SORT_FLAG={'name':a146_0x539bf5(0x145),'type':a146_0x539bf5(0x15c),'description':'Sibling\x20sort\x20value\x20(non-negative\x20integer)'};export const MENU_PARENT_ID_FLAG={'name':a146_0x539bf5(0x156),'type':a146_0x539bf5(0x14f),'description':'Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node'};export const MENU_EXPECT_PARENT_ID_FLAG={'name':a146_0x539bf5(0x14d),'type':a146_0x539bf5(0x14f),'description':'Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level'};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a146_0x539bf5(0x15e),'type':a146_0x539bf5(0x14f),'description':a146_0x539bf5(0x12e)},{'name':'expected-children-count','type':a146_0x539bf5(0x15c),'description':a146_0x539bf5(0x165)}];export function validateExactId(_0x3a1371){const _0x263f8f=a146_0x539bf5,_0x3067e3=_0x3a1371['num']('id');if(!Number[_0x263f8f(0x128)](_0x3067e3)||_0x3067e3<=0x0)throw CliErrors[_0x263f8f(0x132)]('--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.');return _0x3067e3;}export function validateSort(_0x4d212f,_0x2ae64d=a146_0x539bf5(0x145)){const _0x2c8dc9=a146_0x539bf5;if(!hasFlag(_0x4d212f,_0x2ae64d))return undefined;const _0x112538=_0x4d212f[_0x2c8dc9(0x11c)](_0x2ae64d);if(!Number[_0x2c8dc9(0x128)](_0x112538)||_0x112538<0x0||_0x112538>MAX_MENU_SORT)throw menuError(_0x2c8dc9(0x16a),'--'+_0x2ae64d+_0x2c8dc9(0x138)+MAX_MENU_SORT+'.',_0x2c8dc9(0x14e));return _0x112538;}export function nextSiblingSort(_0x3d0a61,_0x2b54e,_0x80614){const _0x401cdf=a146_0x539bf5,_0x216d25=getChildren(_0x3d0a61,_0x2b54e)[_0x401cdf(0x10e)](_0xafe1bc=>_0xafe1bc[_0x401cdf(0x145)])['filter'](_0x39f531=>typeof _0x39f531==='number');if(_0x216d25[_0x401cdf(0x10c)]===0x0)return 0x0;const _0x31a53f=Math[_0x401cdf(0x114)](..._0x216d25);if(_0x31a53f>=MAX_MENU_SORT)throw menuError('menu_sort_overflow',_0x401cdf(0x161)+_0x80614+'\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20'+_0x31a53f+'.',_0x401cdf(0x10f)+MAX_MENU_SORT+_0x401cdf(0x122));return _0x31a53f+0x1;}export function requireExplicitYes(_0x40b82a){const _0x5dce6f=a146_0x539bf5;if(_0x40b82a['bool'](_0x5dce6f(0x118)))return;if(!_0x40b82a[_0x5dce6f(0x116)]('yes'))throw menuError(_0x5dce6f(0x14a),_0x5dce6f(0x113),'Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.');}export async function fetchMutationSnapshot(_0x38acdf,_0x3b33b9,_0x4b70ad){const _0x296d51=a146_0x539bf5;try{return await fetchMenuSnapshot(_0x38acdf[_0x296d51(0x11d)],_0x38acdf['cookie']);}catch(_0x566edc){throw mapMenuApiError(_0x566edc,_0x296d51(0x144)+_0x3b33b9,_0x4b70ad);}}export async function recheckMutationSnapshot(_0x2fa273,_0x5ed7eb,_0x5c030f,_0x26ddb6){const _0x31ae31=a146_0x539bf5;let _0xa1f5;try{_0xa1f5=await fetchMenuSnapshot(_0x2fa273[_0x31ae31(0x11d)],_0x2fa273[_0x31ae31(0x10a)]);}catch(_0x33eb5b){const _0x17490b=mapMenuApiError(_0x33eb5b,'recheck\x20online\x20menu\x20facts\x20before\x20'+_0x5c030f,_0x26ddb6);throw menuFailure(_0x17490b,_0x5ed7eb,{'stage':_0x31ae31(0x120),'failed':_0x26ddb6==null?{}:{'id':_0x26ddb6}});}if(_0xa1f5[_0x31ae31(0x13c)]!==_0x5ed7eb[_0x31ae31(0x143)]){const _0x2c7e09=menuError(_0x31ae31(0x139),_0x31ae31(0x15d)+_0x5c030f+_0x31ae31(0x151),_0x31ae31(0x146));throw menuFailure(_0x2c7e09,_0x5ed7eb,{'stage':_0x31ae31(0x120),'failed':{..._0x26ddb6==null?{}:{'id':_0x26ddb6},'expectedSnapshotHash':_0x5ed7eb[_0x31ae31(0x143)],'currentSnapshotHash':_0xa1f5[_0x31ae31(0x13c)]}});}return _0xa1f5;}export function parseParentId(_0x55964e,_0x294a09,_0x5174db={}){const _0x4f0dda=a146_0x539bf5;if(!hasFlag(_0x55964e,_0x294a09)){if(_0x5174db['required'])throw CliErrors['flagMissing'](_0x294a09);return undefined;}const _0x154b38=_0x55964e[_0x4f0dda(0x166)](_0x294a09)['trim']();if(_0x154b38['toLowerCase']()==='root')return null;if(!/^\d+$/[_0x4f0dda(0x129)](_0x154b38))throw CliErrors[_0x4f0dda(0x132)]('--'+_0x294a09+_0x4f0dda(0x11a));const _0x798d68=Number(_0x154b38);if(!Number['isSafeInteger'](_0x798d68)||_0x798d68<=0x0)throw CliErrors['validation']('--'+_0x294a09+_0x4f0dda(0x11a));return _0x798d68;}export function requireMenu(_0x11e6e2,_0x293fed){const _0x1330f6=a146_0x539bf5,_0xa4fe5b=_0x11e6e2[_0x1330f6(0x170)][_0x1330f6(0x140)](_0x293fed);if(!_0xa4fe5b)throw menuError(_0x1330f6(0x149),_0x1330f6(0x123)+_0x293fed,'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.');return _0xa4fe5b;}export function requireFolder(_0x4d26ec,_0x148857){const _0x419e21=a146_0x539bf5,_0x31838c=requireMenu(_0x4d26ec,_0x148857);if(_0x31838c[_0x419e21(0x15b)]!==_0x419e21(0x127))throw menuError(_0x419e21(0x11b),_0x419e21(0x16e)+_0x148857+_0x419e21(0x148)+(_0x31838c[_0x419e21(0x15b)]||'unknown')+_0x419e21(0x130),_0x419e21(0x10b));return _0x31838c;}export function assertExpectedState(_0x379039,_0x3d824f){const _0x1dd322=a146_0x539bf5;if(hasFlag(_0x379039,_0x1dd322(0x14d))){const _0x416899=parseParentId(_0x379039,'expect-parent-id',{'required':!![]});if(_0x3d824f[_0x1dd322(0x152)]!==_0x416899)throw stateDrift(_0x1dd322(0x16e)+_0x3d824f['id']+_0x1dd322(0x136)+formatParent(_0x416899)+',\x20current\x20'+formatParent(_0x3d824f[_0x1dd322(0x152)])+'.');}if(hasFlag(_0x379039,_0x1dd322(0x15e))){const _0x4cc5f6=_0x379039[_0x1dd322(0x166)](_0x1dd322(0x15e));if(_0x3d824f[_0x1dd322(0x11e)]!==_0x4cc5f6)throw stateDrift('Menu\x20'+_0x3d824f['id']+_0x1dd322(0x13f)+JSON[_0x1dd322(0x153)](_0x4cc5f6)+_0x1dd322(0x15f)+JSON[_0x1dd322(0x153)](_0x3d824f['path'])+'.');}if(hasFlag(_0x379039,_0x1dd322(0x169))){const _0x802318=_0x379039[_0x1dd322(0x11c)]('expected-children-count');if(!Number[_0x1dd322(0x128)](_0x802318)||_0x802318<0x0)throw CliErrors[_0x1dd322(0x132)](_0x1dd322(0x125));if(_0x3d824f['childrenCount']!==_0x802318)throw stateDrift('Menu\x20'+_0x3d824f['id']+'\x20child\x20count\x20changed:\x20expected\x20'+_0x802318+_0x1dd322(0x15f)+_0x3d824f[_0x1dd322(0x110)]+'.');}}export function assertVerified(_0x55cebd,_0x155ead,_0x254685=a146_0x539bf5(0x147)){const _0x164ad7=a146_0x539bf5;if(!_0x55cebd)throw menuError(_0x164ad7(0x158),_0x155ead,_0x254685);}export function mutationResult(_0x20f431){const _0x3a7afc=a146_0x539bf5;return{'operation':_0x20f431[_0x3a7afc(0x168)],'selector':_0x20f431[_0x3a7afc(0x115)],'before':_0x20f431[_0x3a7afc(0x124)],'after':_0x20f431[_0x3a7afc(0x121)],'dryRun':_0x20f431[_0x3a7afc(0x111)],'backend':_0x20f431[_0x3a7afc(0x112)],..._0x20f431['plannedActions']?{'plannedActions':_0x20f431[_0x3a7afc(0x163)]}:{},..._0x20f431[_0x3a7afc(0x137)]?{'targets':_0x20f431[_0x3a7afc(0x137)]}:{},..._0x20f431[_0x3a7afc(0x13b)]?{'deleteOrder':_0x20f431[_0x3a7afc(0x13b)]}:{},'snapshotHash':_0x20f431[_0x3a7afc(0x143)],..._0x20f431[_0x3a7afc(0x11f)]?{'cascade':_0x20f431['cascade']}:{},..._0x20f431[_0x3a7afc(0x150)]?{'planFile':_0x20f431['planFile']}:{},'succeeded':_0x20f431[_0x3a7afc(0x13d)]??[],'failed':_0x20f431[_0x3a7afc(0x131)]??[],'warnings':_0x20f431['warnings']??[],'verification':_0x20f431['verification'],'error':_0x20f431[_0x3a7afc(0x141)]};}export function menuDryRunResult(_0x46af94,_0xeeccc9){return{..._0x46af94,..._0xeeccc9};}export function menuFailure(_0x1872db,_0x4326f9,_0x12fb99){const _0x25eae9=a146_0x539bf5,_0x535e6e=mutationResult({..._0x4326f9,'after':_0x12fb99[_0x25eae9(0x121)]===undefined?_0x4326f9[_0x25eae9(0x121)]:_0x12fb99['after'],'backend':_0x12fb99[_0x25eae9(0x112)]??_0x4326f9['backend'],'dryRun':![],'succeeded':_0x12fb99['succeeded']??[],'failed':_0x12fb99[_0x25eae9(0x142)]??[{..._0x12fb99[_0x25eae9(0x131)]??{},'stage':_0x12fb99['stage'],'code':_0x1872db[_0x25eae9(0x126)],'message':_0x1872db[_0x25eae9(0x157)]}],'warnings':[..._0x4326f9['warnings'],..._0x12fb99[_0x25eae9(0x12a)]??[]],'verification':_0x12fb99[_0x25eae9(0x16b)],'error':{'code':_0x1872db[_0x25eae9(0x126)],'message':_0x1872db[_0x25eae9(0x157)],..._0x1872db[_0x25eae9(0x134)]?{'hint':_0x1872db[_0x25eae9(0x134)]}:{}}});return Object[_0x25eae9(0x167)](_0x1872db,'data',{'value':_0x535e6e,'enumerable':!![],'configurable':!![]}),_0x1872db;}export function asVerificationError(_0x5b0d6d,_0x35b67f){const _0x29b6fb=a146_0x539bf5;if(_0x5b0d6d instanceof CliError&&_0x5b0d6d[_0x29b6fb(0x126)]===_0x29b6fb(0x158))return _0x5b0d6d;const _0x2aba9e=_0x5b0d6d instanceof Error?_0x5b0d6d[_0x29b6fb(0x157)]:String(_0x5b0d6d);return menuError(_0x29b6fb(0x158),''+_0x35b67f+(_0x2aba9e?':\x20'+_0x2aba9e:''),_0x29b6fb(0x12f));}export function describeMenuErrorCause(_0x4c21f2,_0x295412,_0x203b5b){const _0x3e2cf8=a146_0x539bf5,_0x39c1b7=mapMenuApiError(_0x4c21f2,_0x295412,_0x203b5b);return{'causeCode':_0x39c1b7[_0x3e2cf8(0x126)],'causeMessage':_0x39c1b7[_0x3e2cf8(0x157)]};}export function hasFlag(_0x59dab3,_0x10320f){const _0x3a802b=a146_0x539bf5;return Object['prototype'][_0x3a802b(0x159)][_0x3a802b(0x160)](_0x59dab3['rawFlags'],_0x10320f)&&_0x59dab3[_0x3a802b(0x12b)][_0x10320f]!==undefined;}export function toApiParentId(_0x11d0d7){return _0x11d0d7??0x0;}export function formatParent(_0x369f50){const _0x48ed7f=a146_0x539bf5;return _0x369f50==null?_0x48ed7f(0x12d):String(_0x369f50);}function a146_0x29a7(_0xfe4af3,_0x1aad0c){_0xfe4af3=_0xfe4af3-0x10a;const _0x297591=a146_0x2975();let _0x29a79f=_0x297591[_0xfe4af3];return _0x29a79f;}function a146_0x2975(){const _0x5862f1=['Reorder\x20sibling\x20menus\x20below\x20','childrenCount','dryRun','backend','This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','max','selector','bool','Exact\x20online\x20menu\x20id','dry-run','5579qIkJyy','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','menu_parent_not_folder','num','appCode','path','cascade','pre-write-recheck','after',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','Online\x20menu\x20not\x20found:\x20','before','--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.','code','folder','isSafeInteger','test','warnings','rawFlags','4267700xhSpXU','root','Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches','The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.','\x22,\x20not\x20folder.','failed','validation','2780980XOlvne','hint','5864ecrdWX','\x20parent\x20changed:\x20expected\x20','targets','\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20','menu_state_drift','menu_permission_denied','deleteOrder','hash','succeeded','Permission\x20denied\x20while\x20attempting\x20to\x20','\x20path\x20changed:\x20expected\x20','get','error','failedRecords','snapshotHash','read\x20online\x20menu\x20facts\x20before\x20','sort','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','\x20is\x20type\x20\x22','menu_not_found','menu_confirmation_required','menu_mutation_failed','494526nnOjCc','expect-parent-id','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','string','planFile',';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.','parentId','stringify','Failed\x20to\x20','546307tgupWm','parent-id','message','menu_verification_failed','hasOwnProperty','\x20menu\x20','type','number','Online\x20menu\x20state\x20changed\x20before\x20','expect-path',',\x20current\x20','call','Cannot\x20append\x20a\x20','18370605zESBoD','plannedActions','3LqJvWp','Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches','str','defineProperty','operation','expected-children-count','menu_sort_invalid','verification','2lXKQBw','25ohZtmz','Menu\x20','api_error','byId','cookie','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','length','6313068bDKVXJ','map'];a146_0x2975=function(){return _0x5862f1;};return a146_0x2975();}export function menuError(_0xe1aea7,_0x4af46f,_0x2c99a1){return new CliError(_0xe1aea7,0x1,_0x4af46f,_0x2c99a1);}export function mapMenuApiError(_0x11246e,_0x2021ac,_0x4061cd){const _0x2dde09=a146_0x539bf5;if(_0x11246e instanceof CliError&&_0x11246e[_0x2dde09(0x126)]!=='api_error')return _0x11246e;const _0x1de539=_0x11246e instanceof Error?_0x11246e[_0x2dde09(0x157)]:String(_0x11246e);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x2dde09(0x129)](_0x1de539))return menuError(_0x2dde09(0x13a),_0x2dde09(0x13e)+_0x2021ac+(_0x4061cd?_0x2dde09(0x15a)+_0x4061cd:'')+'.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');return menuError(_0x2dde09(0x14b),_0x2dde09(0x154)+_0x2021ac+(_0x4061cd?_0x2dde09(0x15a)+_0x4061cd:'')+':\x20'+_0x1de539,'Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.');}export function isMenuResponseLoss(_0x59e784){const _0x58fdc8=a146_0x539bf5,_0xba0b49=_0x59e784 instanceof Error?_0x59e784[_0x58fdc8(0x157)]:String(_0x59e784);if(_0x59e784 instanceof CliError)return _0x59e784['code']===_0x58fdc8(0x16f)&&/^Request (?:failed|timeout):/i[_0x58fdc8(0x129)](_0xba0b49);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i[_0x58fdc8(0x129)](_0xba0b49);}function stateDrift(_0x287e57){const _0x676c86=a146_0x539bf5;return menuError(_0x676c86(0x139),_0x287e57,'Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.');}
|
|
1
|
+
const a146_0x11c8b9=a146_0x5161;(function(_0x34a1c3,_0x38e6d9){const _0x3d96f6=a146_0x5161,_0x2d9c74=_0x34a1c3();while(!![]){try{const _0x15d375=-parseInt(_0x3d96f6(0x18f))/0x1*(parseInt(_0x3d96f6(0x1a7))/0x2)+parseInt(_0x3d96f6(0x159))/0x3+-parseInt(_0x3d96f6(0x198))/0x4*(-parseInt(_0x3d96f6(0x171))/0x5)+parseInt(_0x3d96f6(0x17c))/0x6+-parseInt(_0x3d96f6(0x195))/0x7*(-parseInt(_0x3d96f6(0x18e))/0x8)+-parseInt(_0x3d96f6(0x17a))/0x9+parseInt(_0x3d96f6(0x1a9))/0xa*(parseInt(_0x3d96f6(0x1b0))/0xb);if(_0x15d375===_0x38e6d9)break;else _0x2d9c74['push'](_0x2d9c74['shift']());}catch(_0x45f32f){_0x2d9c74['push'](_0x2d9c74['shift']());}}}(a146_0x3807,0xc9596));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':'number','required':!![],'description':a146_0x11c8b9(0x169)};export const MENU_SORT_FLAG={'name':'sort','type':'number','description':a146_0x11c8b9(0x19d)};export const MENU_PARENT_ID_FLAG={'name':a146_0x11c8b9(0x196),'type':'string','description':a146_0x11c8b9(0x15a)};export const MENU_EXPECT_PARENT_ID_FLAG={'name':a146_0x11c8b9(0x15b),'type':a146_0x11c8b9(0x1a1),'description':a146_0x11c8b9(0x1bb)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a146_0x11c8b9(0x186),'type':a146_0x11c8b9(0x1a1),'description':'Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches'},{'name':a146_0x11c8b9(0x1a6),'type':a146_0x11c8b9(0x183),'description':a146_0x11c8b9(0x199)}];export function validateExactId(_0x948559){const _0xaefe38=a146_0x11c8b9,_0x816870=_0x948559[_0xaefe38(0x1b4)]('id');if(!Number[_0xaefe38(0x188)](_0x816870)||_0x816870<=0x0)throw CliErrors[_0xaefe38(0x17b)](_0xaefe38(0x1aa));return _0x816870;}export function validateSort(_0x1b2d1d,_0x4540ce=a146_0x11c8b9(0x180)){const _0x73cbab=a146_0x11c8b9;if(!hasFlag(_0x1b2d1d,_0x4540ce))return undefined;const _0x2f0da4=_0x1b2d1d[_0x73cbab(0x1b4)](_0x4540ce);if(!Number[_0x73cbab(0x188)](_0x2f0da4)||_0x2f0da4<0x0||_0x2f0da4>MAX_MENU_SORT)throw menuError(_0x73cbab(0x19f),'--'+_0x4540ce+_0x73cbab(0x157)+MAX_MENU_SORT+'.',_0x73cbab(0x155));return _0x2f0da4;}export function nextSiblingSort(_0x11266c,_0x559ccd,_0xa91452){const _0x373d74=a146_0x11c8b9,_0x4efae6=getChildren(_0x11266c,_0x559ccd)[_0x373d74(0x191)](_0x375cf6=>_0x375cf6[_0x373d74(0x180)])[_0x373d74(0x1b3)](_0x3ef04e=>typeof _0x3ef04e===_0x373d74(0x183));if(_0x4efae6['length']===0x0)return 0x0;const _0x3213dc=Math[_0x373d74(0x164)](..._0x4efae6);if(_0x3213dc>=MAX_MENU_SORT)throw menuError(_0x373d74(0x154),_0x373d74(0x173)+_0xa91452+_0x373d74(0x1b7)+_0x3213dc+'.','Reorder\x20sibling\x20menus\x20below\x20'+MAX_MENU_SORT+_0x373d74(0x163));return _0x3213dc+0x1;}export function requireExplicitYes(_0x13fa95){const _0x33ae37=a146_0x11c8b9;if(_0x13fa95[_0x33ae37(0x16a)](_0x33ae37(0x17d)))return;if(!_0x13fa95[_0x33ae37(0x16a)]('yes'))throw menuError(_0x33ae37(0x166),_0x33ae37(0x1ac),_0x33ae37(0x1bf));}export async function fetchMutationSnapshot(_0x9ce643,_0x14785b,_0x4905ca){const _0x1c3a18=a146_0x11c8b9;try{return await fetchMenuSnapshot(_0x9ce643[_0x1c3a18(0x1ab)],_0x9ce643[_0x1c3a18(0x19e)]);}catch(_0x4099e3){throw mapMenuApiError(_0x4099e3,_0x1c3a18(0x1a3)+_0x14785b,_0x4905ca);}}export async function recheckMutationSnapshot(_0x2b4f52,_0x40f7a8,_0x38facf,_0x185d67){const _0x3aa316=a146_0x11c8b9;let _0x1dec9a;try{_0x1dec9a=await fetchMenuSnapshot(_0x2b4f52[_0x3aa316(0x1ab)],_0x2b4f52[_0x3aa316(0x19e)]);}catch(_0xa2918b){const _0x481f0c=mapMenuApiError(_0xa2918b,_0x3aa316(0x1b5)+_0x38facf,_0x185d67);throw menuFailure(_0x481f0c,_0x40f7a8,{'stage':_0x3aa316(0x1bd),'failed':_0x185d67==null?{}:{'id':_0x185d67}});}if(_0x1dec9a[_0x3aa316(0x189)]!==_0x40f7a8[_0x3aa316(0x15d)]){const _0x30adba=menuError(_0x3aa316(0x1ae),_0x3aa316(0x1ba)+_0x38facf+_0x3aa316(0x176),_0x3aa316(0x18a));throw menuFailure(_0x30adba,_0x40f7a8,{'stage':'pre-write-recheck','failed':{..._0x185d67==null?{}:{'id':_0x185d67},'expectedSnapshotHash':_0x40f7a8[_0x3aa316(0x15d)],'currentSnapshotHash':_0x1dec9a[_0x3aa316(0x189)]}});}return _0x1dec9a;}export function parseParentId(_0x1e088,_0x2a3e23,_0x3dc361={}){const _0x556e24=a146_0x11c8b9;if(!hasFlag(_0x1e088,_0x2a3e23)){if(_0x3dc361['required'])throw CliErrors[_0x556e24(0x15e)](_0x2a3e23);return undefined;}const _0x4eccdf=_0x1e088[_0x556e24(0x190)](_0x2a3e23)[_0x556e24(0x165)]();if(_0x4eccdf[_0x556e24(0x18d)]()==='root')return null;if(!/^\d+$/[_0x556e24(0x1a4)](_0x4eccdf))throw CliErrors[_0x556e24(0x17b)]('--'+_0x2a3e23+'\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.');const _0x23efe2=Number(_0x4eccdf);if(!Number[_0x556e24(0x188)](_0x23efe2)||_0x23efe2<=0x0)throw CliErrors[_0x556e24(0x17b)]('--'+_0x2a3e23+_0x556e24(0x1ad));return _0x23efe2;}export function requireMenu(_0x4a1fd9,_0x4d9c85){const _0x5ea653=a146_0x11c8b9,_0x1c613e=_0x4a1fd9['byId'][_0x5ea653(0x194)](_0x4d9c85);if(!_0x1c613e)throw menuError('menu_not_found',_0x5ea653(0x15f)+_0x4d9c85,'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.');return _0x1c613e;}export function requireFolder(_0x2981cd,_0x1b8729){const _0xa01380=a146_0x11c8b9,_0x103b8b=requireMenu(_0x2981cd,_0x1b8729);if(_0x103b8b[_0xa01380(0x19c)]!==_0xa01380(0x1b2))throw menuError('menu_parent_not_folder',_0xa01380(0x174)+_0x1b8729+'\x20is\x20type\x20\x22'+(_0x103b8b['type']||_0xa01380(0x172))+_0xa01380(0x193),_0xa01380(0x16b));return _0x103b8b;}export function assertExpectedState(_0x5ad4c6,_0x193ccb){const _0x330b75=a146_0x11c8b9;if(hasFlag(_0x5ad4c6,_0x330b75(0x15b))){const _0x28f755=parseParentId(_0x5ad4c6,_0x330b75(0x15b),{'required':!![]});if(_0x193ccb[_0x330b75(0x185)]!==_0x28f755)throw stateDrift(_0x330b75(0x174)+_0x193ccb['id']+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x28f755)+',\x20current\x20'+formatParent(_0x193ccb[_0x330b75(0x185)])+'.');}if(hasFlag(_0x5ad4c6,'expect-path')){const _0x423615=_0x5ad4c6[_0x330b75(0x190)](_0x330b75(0x186));if(_0x193ccb['path']!==_0x423615)throw stateDrift(_0x330b75(0x174)+_0x193ccb['id']+_0x330b75(0x16f)+JSON[_0x330b75(0x1af)](_0x423615)+',\x20current\x20'+JSON[_0x330b75(0x1af)](_0x193ccb[_0x330b75(0x179)])+'.');}if(hasFlag(_0x5ad4c6,_0x330b75(0x1a6))){const _0x261f6f=_0x5ad4c6[_0x330b75(0x1b4)]('expected-children-count');if(!Number['isSafeInteger'](_0x261f6f)||_0x261f6f<0x0)throw CliErrors[_0x330b75(0x17b)](_0x330b75(0x16e));if(_0x193ccb[_0x330b75(0x18c)]!==_0x261f6f)throw stateDrift(_0x330b75(0x174)+_0x193ccb['id']+_0x330b75(0x17f)+_0x261f6f+_0x330b75(0x168)+_0x193ccb['childrenCount']+'.');}}export function assertVerified(_0x15e705,_0x4f2287,_0x3d1d05=a146_0x11c8b9(0x197)){const _0x3be1a9=a146_0x11c8b9;if(!_0x15e705)throw menuError(_0x3be1a9(0x187),_0x4f2287,_0x3d1d05);}export function mutationResult(_0x5dbf04){const _0x225ef7=a146_0x11c8b9;return{'operation':_0x5dbf04['operation'],'selector':_0x5dbf04[_0x225ef7(0x178)],'before':_0x5dbf04[_0x225ef7(0x177)],'after':_0x5dbf04['after'],'dryRun':_0x5dbf04[_0x225ef7(0x1bc)],'backend':_0x5dbf04[_0x225ef7(0x16c)],..._0x5dbf04[_0x225ef7(0x1be)]?{'plannedActions':_0x5dbf04['plannedActions']}:{},..._0x5dbf04['targets']?{'targets':_0x5dbf04[_0x225ef7(0x18b)]}:{},..._0x5dbf04[_0x225ef7(0x182)]?{'deleteOrder':_0x5dbf04[_0x225ef7(0x182)]}:{},'snapshotHash':_0x5dbf04[_0x225ef7(0x15d)],..._0x5dbf04[_0x225ef7(0x158)]?{'cascade':_0x5dbf04[_0x225ef7(0x158)]}:{},..._0x5dbf04[_0x225ef7(0x1a0)]?{'planFile':_0x5dbf04['planFile']}:{},'succeeded':_0x5dbf04[_0x225ef7(0x1a5)]??[],'failed':_0x5dbf04[_0x225ef7(0x181)]??[],'warnings':_0x5dbf04[_0x225ef7(0x170)]??[],'verification':_0x5dbf04[_0x225ef7(0x192)],'error':_0x5dbf04[_0x225ef7(0x1b6)]};}export function menuDryRunResult(_0xd316c1,_0x4f02b8){return{..._0xd316c1,..._0x4f02b8};}export function menuFailure(_0x2131a4,_0x438d2a,_0x3cc0a1){const _0x359a22=a146_0x11c8b9,_0x268be8=mutationResult({..._0x438d2a,'after':_0x3cc0a1['after']===undefined?_0x438d2a[_0x359a22(0x16d)]:_0x3cc0a1[_0x359a22(0x16d)],'backend':_0x3cc0a1['backend']??_0x438d2a['backend'],'dryRun':![],'succeeded':_0x3cc0a1[_0x359a22(0x1a5)]??[],'failed':_0x3cc0a1[_0x359a22(0x156)]??[{..._0x3cc0a1['failed']??{},'stage':_0x3cc0a1[_0x359a22(0x161)],'code':_0x2131a4['code'],'message':_0x2131a4['message']}],'warnings':[..._0x438d2a[_0x359a22(0x170)],..._0x3cc0a1[_0x359a22(0x170)]??[]],'verification':_0x3cc0a1[_0x359a22(0x192)],'error':{'code':_0x2131a4[_0x359a22(0x15c)],'message':_0x2131a4[_0x359a22(0x19a)],..._0x2131a4[_0x359a22(0x1b9)]?{'hint':_0x2131a4[_0x359a22(0x1b9)]}:{}}});return Object[_0x359a22(0x1a2)](_0x2131a4,_0x359a22(0x167),{'value':_0x268be8,'enumerable':!![],'configurable':!![]}),_0x2131a4;}export function asVerificationError(_0x31ae17,_0x1c3c73){const _0x58816b=a146_0x11c8b9;if(_0x31ae17 instanceof CliError&&_0x31ae17[_0x58816b(0x15c)]===_0x58816b(0x187))return _0x31ae17;const _0xe3d124=_0x31ae17 instanceof Error?_0x31ae17['message']:String(_0x31ae17);return menuError(_0x58816b(0x187),''+_0x1c3c73+(_0xe3d124?':\x20'+_0xe3d124:''),'The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.');}function a146_0x3807(){const _0x3b5cb3=['This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','menu_state_drift','stringify','11DiXrSB','hasOwnProperty','folder','filter','num','recheck\x20online\x20menu\x20facts\x20before\x20','error','\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20','prototype','hint','Online\x20menu\x20state\x20changed\x20before\x20','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','dryRun','pre-write-recheck','plannedActions','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','menu_sort_overflow','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','failedRecords','\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20','cascade','2155485EDkNNm','Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node','expect-parent-id','code','snapshotHash','flagMissing','Online\x20menu\x20not\x20found:\x20','menu_permission_denied','stage','Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','max','trim','menu_confirmation_required','data',',\x20current\x20','Exact\x20online\x20menu\x20id','bool','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','backend','after','--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.','\x20path\x20changed:\x20expected\x20','warnings','332205WaWgAZ','unknown','Cannot\x20append\x20a\x20','Menu\x20','\x20menu\x20',';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.','before','selector','path','1245276XzlMdW','validation','6953508hrvxFD','dry-run','Failed\x20to\x20','\x20child\x20count\x20changed:\x20expected\x20','sort','failed','deleteOrder','number','rawFlags','parentId','expect-path','menu_verification_failed','isSafeInteger','hash','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.','targets','childrenCount','toLowerCase','8qYFarq','655693NuQckP','str','map','verification','\x22,\x20not\x20folder.','get','919541SjAprB','parent-id','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','12AGqJUL','Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches','message','menu_mutation_failed','type','Sibling\x20sort\x20value\x20(non-negative\x20integer)','cookie','menu_sort_invalid','planFile','string','defineProperty','read\x20online\x20menu\x20facts\x20before\x20','test','succeeded','expected-children-count','4vfjwpn','root','663770Xohaad','--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.','appCode'];a146_0x3807=function(){return _0x3b5cb3;};return a146_0x3807();}export function describeMenuErrorCause(_0x3765d2,_0x418f59,_0xbc0fa9){const _0x656151=a146_0x11c8b9,_0xd8b1a2=mapMenuApiError(_0x3765d2,_0x418f59,_0xbc0fa9);return{'causeCode':_0xd8b1a2['code'],'causeMessage':_0xd8b1a2[_0x656151(0x19a)]};}export function hasFlag(_0xf33986,_0x2f5876){const _0x29e002=a146_0x11c8b9;return Object[_0x29e002(0x1b8)][_0x29e002(0x1b1)]['call'](_0xf33986[_0x29e002(0x184)],_0x2f5876)&&_0xf33986[_0x29e002(0x184)][_0x2f5876]!==undefined;}export function toApiParentId(_0x3b2e6e){return _0x3b2e6e??0x0;}export function formatParent(_0x5ad7af){const _0x23ed06=a146_0x11c8b9;return _0x5ad7af==null?_0x23ed06(0x1a8):String(_0x5ad7af);}export function menuError(_0x379b46,_0x29a400,_0x356fbd){return new CliError(_0x379b46,0x1,_0x29a400,_0x356fbd);}export function mapMenuApiError(_0x338cd9,_0x280e83,_0x1941b8){const _0x2ab664=a146_0x11c8b9;if(_0x338cd9 instanceof CliError&&_0x338cd9[_0x2ab664(0x15c)]!=='api_error')return _0x338cd9;const _0x3384a4=_0x338cd9 instanceof Error?_0x338cd9['message']:String(_0x338cd9);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x2ab664(0x1a4)](_0x3384a4))return menuError(_0x2ab664(0x160),'Permission\x20denied\x20while\x20attempting\x20to\x20'+_0x280e83+(_0x1941b8?_0x2ab664(0x175)+_0x1941b8:'')+'.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');return menuError(_0x2ab664(0x19b),_0x2ab664(0x17e)+_0x280e83+(_0x1941b8?_0x2ab664(0x175)+_0x1941b8:'')+':\x20'+_0x3384a4,_0x2ab664(0x162));}function a146_0x5161(_0x59551f,_0x37508c){_0x59551f=_0x59551f-0x154;const _0x3807ec=a146_0x3807();let _0x516190=_0x3807ec[_0x59551f];return _0x516190;}export function isMenuResponseLoss(_0x2c2b9e){const _0xd0bf68=a146_0x11c8b9,_0x2224dc=_0x2c2b9e instanceof Error?_0x2c2b9e['message']:String(_0x2c2b9e);if(_0x2c2b9e instanceof CliError)return _0x2c2b9e[_0xd0bf68(0x15c)]==='api_error'&&/^Request (?:failed|timeout):/i[_0xd0bf68(0x1a4)](_0x2224dc);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i[_0xd0bf68(0x1a4)](_0x2224dc);}function stateDrift(_0x58a012){return menuError('menu_state_drift',_0x58a012,'Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.');}
|