@lovrabet/rabetbase-cli 2.5.2-beta.5 → 2.5.2-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-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/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/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.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.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.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 -17
- 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.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.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +5 -6
- package/skills/rabetbase/references/rabetbase-deployment-sync-all.md +56 -0
- package/skills/rabetbase.manifest.json +4 -4
- package/lib/commands/deployment/auto-sync.d.ts +0 -20
- package/lib/commands/deployment/auto-sync.js +0 -1
- package/lib/commands/deployment/sync.d.ts +0 -2
- package/lib/commands/deployment/sync.js +0 -1
- package/skills/rabetbase/references/rabetbase-deployment-sync.md +0 -100
|
@@ -1 +1 @@
|
|
|
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
|
+
const a135_0xbe0233=a135_0x3117;(function(_0x282a7e,_0x43db5f){const _0x54fc41=a135_0x3117,_0x33185c=_0x282a7e();while(!![]){try{const _0x1fa47f=-parseInt(_0x54fc41(0x1cf))/0x1*(-parseInt(_0x54fc41(0x1bb))/0x2)+-parseInt(_0x54fc41(0x1c0))/0x3*(parseInt(_0x54fc41(0x1ad))/0x4)+-parseInt(_0x54fc41(0x1da))/0x5*(parseInt(_0x54fc41(0x1e0))/0x6)+-parseInt(_0x54fc41(0x1b8))/0x7+-parseInt(_0x54fc41(0x1a5))/0x8+-parseInt(_0x54fc41(0x1c7))/0x9*(parseInt(_0x54fc41(0x194))/0xa)+parseInt(_0x54fc41(0x193))/0xb;if(_0x1fa47f===_0x43db5f)break;else _0x33185c['push'](_0x33185c['shift']());}catch(_0x2a4df2){_0x33185c['push'](_0x33185c['shift']());}}}(a135_0x1f90,0xc674c));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';function a135_0x1f90(){const _0x2207a7=['\x20menus\x20per\x20regroup\x20request.','start\x20menu\x20regroup','warnings','FAILED','label','\x20and\x20regroup\x20menu\x20ids\x20','Regroup\x20readback\x20failed:\x20','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','\x20menu\x20list\x20--appcode\x20','menu','/smartapi/menu/regroup','isSafeInteger','menu\x20list','childrenIds','2256576MqVOOi','applied','knownStatus','write','parentId','length','cookie','--menu-ids\x20supports\x20at\x20most\x20','2972fJcMbu','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','map','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.','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','toLowerCase','get','input','string','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','plan\x20regroup','10977617eamAsP','message','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','1134SKUZoU','type','taskId','Menu\x20',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','5958GPiRVU','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','menus','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','\x20--format\x20compress','group','join','401166bUhzuZ','Regroup\x20readback\x20also\x20failed:\x20','SUCCESS','isTerminal','readbackError','test','appCode','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','1202WTWsvK','str','menuIds','filter','folder','status','sort','menu-ids','failed','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','regroup-start','265hscNEL','menu_regroup_target_not_leaf','unconfirmed','\x27\x5c\x27\x27','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','plan','98676vZyXuB','stringify','POST','Regroup\x20task\x20','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','validation','trim','byId','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','childrenCount','58894913reThZU','230uMcfVD','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','some'];a135_0x1f90=function(){return _0x2207a7;};return a135_0x1f90();}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':a135_0xbe0233(0x1e2),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a135_0xbe0233(0x1a0),'command':a135_0xbe0233(0x1d9),'description':a135_0xbe0233(0x1ae),'risk':a135_0xbe0233(0x1a8),'structuredErrors':!![],'flags':[{'name':a135_0xbe0233(0x19b),'type':a135_0xbe0233(0x1b5),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a135_0xbe0233(0x1d6),'type':a135_0xbe0233(0x1b5),'required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x33de59){validateRegroupInput(_0x33de59);},async 'dryRun'(_0x1ba676){const _0xdd02c7=a135_0xbe0233;validateRegroupInput(_0x1ba676);const _0x1fc0fa=await buildRegroupPlan(_0x1ba676,!![]);return menuDryRunResult(_0x1fc0fa[_0xdd02c7(0x1df)],{'method':'POST','url':_0xdd02c7(0x1a1),'body':_0x1fc0fa[_0xdd02c7(0x1b4)],'description':_0xdd02c7(0x1c1)+JSON[_0xdd02c7(0x1e1)](_0x1fc0fa[_0xdd02c7(0x19b)])+_0xdd02c7(0x19c)+_0x1fc0fa[_0xdd02c7(0x1d1)]['join'](',\x20')+_0xdd02c7(0x1bf)});},async 'execute'(_0x1f1633){const _0xdb0a0c=a135_0xbe0233;validateRegroupInput(_0x1f1633);const _0x516449=await buildRegroupPlan(_0x1f1633,![]);await recheckMutationSnapshot(_0x1f1633,_0x516449['plan'],'start\x20regroup');const _0x25e53a=buildMenuLookupCommand(_0x1f1633[_0xdb0a0c(0x1cd)]);let _0x339ee6,_0xd7609a;try{_0x339ee6=await startMenuRegroup(_0x1f1633[_0xdb0a0c(0x1ab)],_0x516449[_0xdb0a0c(0x1b4)]),_0xd7609a=normalizeAsyncTask(_0x339ee6);}catch(_0x36229c){const _0x118102=await inspectRegroupAfterFailure(_0x1f1633[_0xdb0a0c(0x1cd)],_0x1f1633['cookie'],_0x516449[_0xdb0a0c(0x19b)],_0x516449['menuIds']),_0x3e8523=typeof _0x339ee6?.[_0xdb0a0c(0x1bd)]===_0xdb0a0c(0x1b5)&&_0x339ee6[_0xdb0a0c(0x1bd)][_0xdb0a0c(0x18f)]()?_0x339ee6[_0xdb0a0c(0x1bd)][_0xdb0a0c(0x18f)]():null,_0x2acacc=_0x3e8523?{'command':buildAsyncTaskStatusCommand(_0x3e8523,_0x1f1633[_0xdb0a0c(0x1cd)])}:null,_0x23a6e2=mapMenuApiError(_0x36229c,_0xdb0a0c(0x198));throw menuFailure(_0x23a6e2,_0x516449['plan'],{'stage':'regroup-submit','failed':{'menuIds':_0x516449['menuIds'],'taskId':_0x3e8523,'groupingApplied':_0x118102['applied']?!![]:_0xdb0a0c(0x1dc)},'after':_0x118102[_0xdb0a0c(0x1a6)]??null,'warnings':[_0xdb0a0c(0x1d8),..._0x118102['readbackError']?[_0xdb0a0c(0x1c8)+_0x118102[_0xdb0a0c(0x1cb)]]:[],..._0x3e8523?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':_0xdb0a0c(0x1d7),'groupingApplied':_0x118102['applied']?!![]:_0xdb0a0c(0x1dc),'taskId':_0x3e8523,'query':_0x2acacc,'lookupCommand':_0x25e53a}});}const _0x8a82=buildAsyncTaskStatusCommand(_0xd7609a[_0xdb0a0c(0x1bd)],_0x1f1633[_0xdb0a0c(0x1cd)]);let _0x508470=null,_0xf0f429=null,_0x12cb8e=null;try{_0x508470=await fetchMenuSnapshot(_0x1f1633['appCode'],_0x1f1633[_0xdb0a0c(0x1ab)]),_0xf0f429=findAppliedRegroup(_0x508470,_0x516449[_0xdb0a0c(0x19b)],_0x516449['menuIds']);}catch(_0x42d463){_0x12cb8e=_0x42d463 instanceof Error?_0x42d463[_0xdb0a0c(0x1b9)]:String(_0x42d463);}const _0x3cc9a1=mutationResult({..._0x516449['plan'],'after':_0xf0f429??null,'dryRun':![],'succeeded':[{'groupId':_0xf0f429?.[_0xdb0a0c(0x1c5)]['id']??null,'menuIds':_0x516449[_0xdb0a0c(0x1d1)],'taskId':_0xd7609a[_0xdb0a0c(0x1bd)],'status':_0xd7609a['status'],'groupingApplied':_0xf0f429?!![]:_0xdb0a0c(0x1dc)}],'verification':{'checkedBy':_0xdb0a0c(0x1a3),'snapshotHash':_0x508470?.['hash']??null,'groupId':_0xf0f429?.[_0xdb0a0c(0x1c5)]['id']??null,'groupingApplied':_0xf0f429?!![]:_0xdb0a0c(0x1dc),'readbackError':_0x12cb8e,'lookupCommand':_0x25e53a},'warnings':[..._0x516449['plan'][_0xdb0a0c(0x199)],...!_0xf0f429?[unconfirmedRegroupWarning(_0xd7609a)]:[],..._0x12cb8e?[_0xdb0a0c(0x19d)+_0x12cb8e]:[]]}),_0x1c70a2=_0xd7609a['status']===_0xdb0a0c(0x1c9)&&!_0xf0f429?_0xdb0a0c(0x1e3)+_0xd7609a[_0xdb0a0c(0x1bd)]+_0xdb0a0c(0x1e4):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0xd7609a);return{'ok':!![],'message':_0x1c70a2,'data':{..._0x3cc9a1,'task':_0xd7609a,'query':_0xd7609a[_0xdb0a0c(0x1ca)]?null:{'command':_0x8a82}}};}};function validateRegroupInput(_0x2df297){const _0xbb11c4=a135_0xbe0233;if(!_0x2df297['str'](_0xbb11c4(0x19b))[_0xbb11c4(0x18f)]())throw CliErrors['flagMissing'](_0xbb11c4(0x19b));parseMenuIds(_0x2df297['str']('menu-ids'));}function a135_0x3117(_0x50147b,_0x3601d7){_0x50147b=_0x50147b-0x18f;const _0x1f90d0=a135_0x1f90();let _0x311712=_0x1f90d0[_0x50147b];return _0x311712;}function parseMenuIds(_0x53ee00){const _0x27b49c=a135_0xbe0233,_0x17d23b=_0x53ee00['split'](',')[_0x27b49c(0x1af)](_0x543bce=>_0x543bce[_0x27b49c(0x18f)]());if(_0x17d23b[_0x27b49c(0x1aa)]===0x0||_0x17d23b[_0x27b49c(0x196)](_0x33f421=>!_0x33f421))throw CliErrors[_0x27b49c(0x1e6)](_0x27b49c(0x1ce));const _0x4c40cc=_0x17d23b[_0x27b49c(0x1af)](_0x4268c4=>{const _0x2ddef7=_0x27b49c;if(!/^\d+$/[_0x2ddef7(0x1cc)](_0x4268c4))throw CliErrors[_0x2ddef7(0x1e6)](_0x2ddef7(0x1ce));const _0x509561=Number(_0x4268c4);if(!Number[_0x2ddef7(0x1a2)](_0x509561)||_0x509561<=0x0)throw CliErrors[_0x2ddef7(0x1e6)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x509561;});if(new Set(_0x4c40cc)['size']!==_0x4c40cc[_0x27b49c(0x1aa)])throw CliErrors['validation'](_0x27b49c(0x1de));if(_0x4c40cc[_0x27b49c(0x1aa)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x27b49c(0x1e6)](_0x27b49c(0x1ac)+MAX_REGROUP_MENU_COUNT+_0x27b49c(0x197));return _0x4c40cc;}function buildMenuLookupCommand(_0x7e9693){const _0x260543=a135_0xbe0233,_0xf6d96f='\x27'+_0x7e9693['replace'](/'/g,_0x260543(0x1dd))+'\x27';return CLI_BIN_NAME+_0x260543(0x19f)+_0xf6d96f+_0x260543(0x1c4);}function unconfirmedRegroupWarning(_0x9d44e3){const _0x86aa22=a135_0xbe0233;if(_0x9d44e3[_0x86aa22(0x1d4)]===_0x86aa22(0x1c9))return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x9d44e3[_0x86aa22(0x1d4)]===_0x86aa22(0x19a))return'The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x9d44e3[_0x86aa22(0x1a7)])return _0x86aa22(0x191);return _0x86aa22(0x1b0);}async function buildRegroupPlan(_0x482b5f,_0x552576){const _0x357e00=a135_0xbe0233,_0x35e095=_0x482b5f[_0x357e00(0x1d0)](_0x357e00(0x19b))[_0x357e00(0x18f)](),_0x4b3a2e=parseMenuIds(_0x482b5f[_0x357e00(0x1d0)](_0x357e00(0x1d6))),_0x4be093=await fetchMutationSnapshot(_0x482b5f,_0x357e00(0x1b7)),_0x1e04b0=_0x4b3a2e[_0x357e00(0x1af)](_0x5e0512=>requireMenu(_0x4be093,_0x5e0512));for(const _0x2d0aa8 of _0x1e04b0){if(_0x2d0aa8['type']['trim']()['toLowerCase']()===_0x357e00(0x1d3)||_0x2d0aa8[_0x357e00(0x192)]>0x0)throw menuError(_0x357e00(0x1db),_0x357e00(0x1be)+_0x2d0aa8['id']+_0x357e00(0x1ba),'Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.');if(!_0x2d0aa8['label'][_0x357e00(0x18f)]())throw menuError('menu_regroup_target_label_missing',_0x357e00(0x1be)+_0x2d0aa8['id']+_0x357e00(0x1b1),'Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.');}const _0x12dcc7=findAppliedRegroup(_0x4be093,_0x35e095,_0x4b3a2e);if(_0x12dcc7)throw menuError('menu_regroup_already_applied','Menus\x20'+_0x4b3a2e['join'](',\x20')+_0x357e00(0x195)+_0x12dcc7[_0x357e00(0x1c5)]['id']+'\x20('+JSON[_0x357e00(0x1e1)](_0x35e095)+').',_0x357e00(0x1e5));const _0x584867=_0x4be093[_0x357e00(0x1c2)][_0x357e00(0x1d2)](_0x438589=>_0x438589[_0x357e00(0x1a9)]==null&&_0x438589[_0x357e00(0x1bc)][_0x357e00(0x18f)]()[_0x357e00(0x1b2)]()==='folder'&&_0x438589[_0x357e00(0x19b)]===_0x35e095);if(_0x584867['length']>0x0)throw menuError('menu_regroup_label_conflict','Root\x20folder\x20label\x20'+JSON[_0x357e00(0x1e1)](_0x35e095)+_0x357e00(0x19e)+_0x584867[_0x357e00(0x1af)](_0x31fe81=>_0x31fe81['id'])[_0x357e00(0x1c6)](',\x20')+'.',_0x357e00(0x1c3));const _0x326bfc={'appCode':_0x482b5f[_0x357e00(0x1cd)],'menuGroups':[{'label':_0x35e095,'type':_0x357e00(0x1d3),'children':_0x1e04b0[_0x357e00(0x1af)](_0x5cf5f7=>({'id':_0x5cf5f7['id'],'label':_0x5cf5f7[_0x357e00(0x19b)]}))}]},_0x562f94=mutationResult({'operation':_0x357e00(0x1d9),'selector':{'label':_0x35e095,'menuIds':_0x4b3a2e},'before':{'menus':_0x1e04b0},'after':{'group':{'id':null,'parentId':null,'label':_0x35e095,'path':'<platform-generated>','type':'folder','childrenIds':_0x4b3a2e},'children':_0x1e04b0['map'](_0x2a125e=>({'id':_0x2a125e['id'],'label':_0x2a125e['label'],'beforeParentId':_0x2a125e[_0x357e00(0x1a9)],'afterParentId':'<new-group-id>'}))},'dryRun':_0x552576,'backend':[...BACKEND],'plannedActions':[{'stage':'submit-regroup-task','method':_0x357e00(0x1e2),'path':'/smartapi/menu/regroup','body':_0x326bfc}],'snapshotHash':_0x4be093['hash'],'warnings':['The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.',_0x357e00(0x1b6)]});return{'label':_0x35e095,'menuIds':_0x4b3a2e,'input':_0x326bfc,'plan':_0x562f94};}function findAppliedRegroup(_0x107a69,_0x538555,_0x222e86){const _0x396aac=a135_0xbe0233,_0x3815d7=_0x222e86[_0x396aac(0x1af)](_0x1c97f3=>_0x107a69[_0x396aac(0x190)][_0x396aac(0x1b3)](_0x1c97f3))[_0x396aac(0x1d2)](_0x4514c1=>Boolean(_0x4514c1));if(_0x3815d7[_0x396aac(0x1aa)]!==_0x222e86[_0x396aac(0x1aa)])return null;const _0x540d09=_0x3815d7[0x0]?.[_0x396aac(0x1a9)];if(_0x540d09==null||_0x3815d7[_0x396aac(0x196)](_0x1c5a73=>_0x1c5a73[_0x396aac(0x1a9)]!==_0x540d09))return null;const _0x287924=_0x107a69['byId'][_0x396aac(0x1b3)](_0x540d09);if(!_0x287924||_0x287924[_0x396aac(0x1a9)]!=null||_0x287924[_0x396aac(0x1bc)][_0x396aac(0x18f)]()['toLowerCase']()!=='folder'||_0x287924['label']!==_0x538555)return null;const _0x481366=[..._0x222e86][_0x396aac(0x1d5)]((_0x3730b3,_0x3bc6c9)=>_0x3730b3-_0x3bc6c9),_0x383eba=[..._0x287924[_0x396aac(0x1a4)]][_0x396aac(0x1d5)]((_0x3fc8b5,_0x39fdb6)=>_0x3fc8b5-_0x39fdb6);if(JSON[_0x396aac(0x1e1)](_0x383eba)!==JSON[_0x396aac(0x1e1)](_0x481366))return null;return{'group':_0x287924,'children':_0x3815d7};}async function inspectRegroupAfterFailure(_0x1ce89e,_0x1b2400,_0x305690,_0x264cfe){try{const _0x2f8900=await fetchMenuSnapshot(_0x1ce89e,_0x1b2400);return{'applied':findAppliedRegroup(_0x2f8900,_0x305690,_0x264cfe),'readbackError':null};}catch(_0x26e5f9){return{'applied':null,'readbackError':_0x26e5f9 instanceof Error?_0x26e5f9['message']:String(_0x26e5f9)};}}
|
|
@@ -1 +1 @@
|
|
|
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
|
+
const a136_0x343151=a136_0x1258;(function(_0x214117,_0x507b66){const _0x26befe=a136_0x1258,_0x4f5107=_0x214117();while(!![]){try{const _0x24670a=-parseInt(_0x26befe(0x1f2))/0x1+parseInt(_0x26befe(0x1ef))/0x2+-parseInt(_0x26befe(0x1da))/0x3+-parseInt(_0x26befe(0x1d2))/0x4*(parseInt(_0x26befe(0x1e9))/0x5)+-parseInt(_0x26befe(0x1c7))/0x6+parseInt(_0x26befe(0x1b6))/0x7+-parseInt(_0x26befe(0x1e0))/0x8*(-parseInt(_0x26befe(0x1dc))/0x9);if(_0x24670a===_0x507b66)break;else _0x4f5107['push'](_0x4f5107['shift']());}catch(_0x342f58){_0x4f5107['push'](_0x4f5107['shift']());}}}(a136_0x3b6f,0xd86d2));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a136_0x1258(_0x454ed0,_0x3560cc){_0x454ed0=_0x454ed0-0x1b4;const _0x3b6f2f=a136_0x3b6f();let _0x1258ba=_0x3b6f2f[_0x454ed0];return _0x1258ba;}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':a136_0x343151(0x1d5),'path':'/smartapi/menu/update'}];export const menuRename={'service':a136_0x343151(0x1d9),'command':a136_0x343151(0x1e5),'description':a136_0x343151(0x1ee),'risk':a136_0x343151(0x1ce),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a136_0x343151(0x1df),'type':a136_0x343151(0x1b5),'required':!![],'description':'New\x20menu\x20label'},{'name':'expect-label','type':a136_0x343151(0x1b5),'required':!![],'description':a136_0x343151(0x1f5)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4080a3){validateInput(_0x4080a3);},async 'dryRun'(_0x1852c7){const _0x3e7399=a136_0x343151;validateInput(_0x1852c7);const _0x490df4=await buildPlan(_0x1852c7,!![]);return menuDryRunResult(_0x490df4[_0x3e7399(0x1c8)],{'method':'POST','url':'/smartapi/menu/update','body':_0x490df4[_0x3e7399(0x1f7)],'description':_0x3e7399(0x202)+_0x490df4['body']['id']+'.'});},async 'execute'(_0x158423){const _0x90674d=a136_0x343151;validateInput(_0x158423);const _0x556207=await buildPlan(_0x158423,![]),{plan:_0x6f3851,body:_0x24d83b,before:_0x56d74c,noChanges:_0x3d9996}=_0x556207,_0x419908=_0x24d83b['id'];if(_0x3d9996)return renameSuccess(_0x6f3851,_0x556207['snapshot'],_0x56d74c,!![],![]);await recheckMutationSnapshot(_0x158423,_0x6f3851,_0x90674d(0x1d0),_0x419908);try{await updateMenuEntity(_0x158423[_0x90674d(0x1b7)],_0x158423[_0x90674d(0x203)],{'id':_0x419908,'label':_0x24d83b[_0x90674d(0x1df)]});}catch(_0xd0ffb2){const _0x5881ba=mapMenuApiError(_0xd0ffb2,'rename',_0x419908);if(isMenuResponseLoss(_0xd0ffb2)&&_0x5881ba[_0x90674d(0x1d7)]!==_0x90674d(0x1c1))return recoverAfterResponseLoss(_0x158423,_0x556207);throw menuFailure(_0x5881ba,_0x6f3851,{'stage':_0x90674d(0x1bf),'failed':{'id':_0x419908},'warnings':[_0x90674d(0x1d4)],'verification':{'status':_0x90674d(0x1c9),'targetId':_0x419908,'lookupCommand':buildLookupCommand(_0x158423['appCode'])}});}let _0x3ab3f0,_0x1c32c0;try{_0x3ab3f0=await fetchMenuSnapshot(_0x158423['appCode'],_0x158423[_0x90674d(0x203)]),_0x1c32c0=requireMenu(_0x3ab3f0,_0x419908),verifyRenamedFact(_0x56d74c,_0x1c32c0,_0x24d83b[_0x90674d(0x1df)]);}catch(_0x6a1926){const _0x334063=describeMenuErrorCause(_0x6a1926,_0x90674d(0x1bd),_0x419908),_0x364273=asVerificationError(_0x6a1926,'Rename\x20request\x20for\x20menu\x20'+_0x419908+_0x90674d(0x1f3));throw menuFailure(_0x364273,_0x6f3851,{'stage':_0x90674d(0x1e3),'succeeded':[{'id':_0x419908,'updateRequested':!![]}],'failed':{'id':_0x419908,'requestedStateConfirmed':![],..._0x334063},'warnings':['The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x90674d(0x1c9),'targetId':_0x419908,'lookupCommand':buildLookupCommand(_0x158423[_0x90674d(0x1b7)])}});}return renameSuccess(_0x6f3851,_0x3ab3f0,_0x1c32c0,![],![]);}};function validateInput(_0x4c8e28){const _0x124ffa=a136_0x343151;validateExactId(_0x4c8e28);if(!_0x4c8e28[_0x124ffa(0x1f8)](_0x124ffa(0x1df))[_0x124ffa(0x1f0)]())throw CliErrors[_0x124ffa(0x1f9)](_0x124ffa(0x1bc));if(!_0x4c8e28[_0x124ffa(0x1f8)](_0x124ffa(0x1ea))[_0x124ffa(0x1f0)]())throw CliErrors['flagMissing'](_0x124ffa(0x1ea));}async function buildPlan(_0x5ef733,_0x525c16){const _0x54447e=a136_0x343151,_0x86de22=validateExactId(_0x5ef733),_0x4a1cab=_0x5ef733['str'](_0x54447e(0x1df))['trim'](),_0x53b934=_0x5ef733[_0x54447e(0x1f8)]('expect-label'),_0x1086be=await fetchMutationSnapshot(_0x5ef733,_0x54447e(0x1d0),_0x86de22),_0x1f27f8=requireMenu(_0x1086be,_0x86de22);if(_0x1f27f8[_0x54447e(0x1df)]!==_0x53b934)throw menuError(_0x54447e(0x1be),_0x54447e(0x1cf)+_0x86de22+_0x54447e(0x1fe)+JSON[_0x54447e(0x1f6)](_0x53b934)+_0x54447e(0x1eb)+JSON[_0x54447e(0x1f6)](_0x1f27f8[_0x54447e(0x1df)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.');const _0x2c0a03={'id':_0x86de22,'appCode':_0x5ef733[_0x54447e(0x1b7)],'label':_0x4a1cab},_0x44540c={..._0x1f27f8,'label':_0x4a1cab},_0x4a8d70=_0x1f27f8[_0x54447e(0x1df)]===_0x4a1cab,_0x15ef74=_0x4a8d70?[]:[{'stage':_0x54447e(0x1d8),'method':_0x54447e(0x1d5),'path':_0x54447e(0x1fc),'body':_0x2c0a03}];return{'snapshot':_0x1086be,'before':_0x1f27f8,'body':_0x2c0a03,'noChanges':_0x4a8d70,'plan':mutationResult({'operation':_0x54447e(0x1e5),'selector':{'id':_0x86de22},'before':_0x1f27f8,'after':_0x44540c,'dryRun':_0x525c16,'backend':[...BACKEND],'plannedActions':_0x15ef74,'snapshotHash':_0x1086be['hash'],'warnings':_0x4a8d70?[_0x54447e(0x1dd)]:[]})};}function a136_0x3b6f(){const _0x5a9012=['childrenIds','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','POST','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','code','rename-menu','menu','3628782ofjkZX','\x27\x5c\x27\x27','3790359ZxrUBF','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','label','96IWDBki','after','readbackFailed','verification','update-recovery','rename','childrenCount','depth','\x20already\x20has\x20the\x20requested\x20label.','702220FakOmz','expect-label',',\x20current\x20','visible','\x20could\x20not\x20be\x20verified\x20safely','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','1579330AkiQbt','trim','Response\x20was\x20lost\x20and\x20menu\x20','1627418IXLCZh','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','requestedLabelObserved','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','stringify','body','str','validation','path','datasetId','/smartapi/menu/update','hash','\x20label\x20changed:\x20expected\x20','resources','\x20changed\x20during\x20the\x20label-only\x20rename.','modelType','Would\x20rename\x20menu\x20','cookie','menu_update_recovery_required','replace','\x20--format\x20compress','string','1669220eKwKIx','appCode','Renamed\x20menu\x20','pageType','url','get','--label\x20cannot\x20be\x20empty.','verify\x20menu\x20rename','menu_state_drift','update','menu\x20list','menu_permission_denied','Run\x20','sort','type','resourcesValid','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','8252010XYfhvu','plan','failed','isArray','datasetCode','pageId','parentId','write','Menu\x20','rename\x20menu','byId','28ZPrwnD'];a136_0x3b6f=function(){return _0x5a9012;};return a136_0x3b6f();}function verifyRenamedFact(_0xf39a8,_0x39a3f0,_0x534b5b){const _0x6010c5=a136_0x343151,_0x37a9d2=[['id',_0x39a3f0['id'],_0xf39a8['id']],[_0x6010c5(0x1cd),_0x39a3f0[_0x6010c5(0x1cd)],_0xf39a8[_0x6010c5(0x1cd)]],[_0x6010c5(0x1e7),_0x39a3f0[_0x6010c5(0x1e7)],_0xf39a8[_0x6010c5(0x1e7)]],['path',_0x39a3f0[_0x6010c5(0x1fa)],_0xf39a8[_0x6010c5(0x1fa)]],['url',_0x39a3f0[_0x6010c5(0x1ba)],_0xf39a8['url']],['type',_0x39a3f0[_0x6010c5(0x1c4)],_0xf39a8['type']],['visible',_0x39a3f0['visible'],_0xf39a8[_0x6010c5(0x1ec)]],[_0x6010c5(0x1c3),_0x39a3f0[_0x6010c5(0x1c3)],_0xf39a8['sort']],[_0x6010c5(0x1ff),_0x39a3f0[_0x6010c5(0x1ff)],_0xf39a8['resources']],[_0x6010c5(0x1c5),_0x39a3f0[_0x6010c5(0x1c5)],_0xf39a8['resourcesValid']],['childrenIds',_0x39a3f0[_0x6010c5(0x1d3)],_0xf39a8[_0x6010c5(0x1d3)]],[_0x6010c5(0x1e6),_0x39a3f0[_0x6010c5(0x1e6)],_0xf39a8[_0x6010c5(0x1e6)]],[_0x6010c5(0x1cc),_0x39a3f0[_0x6010c5(0x1cc)],_0xf39a8[_0x6010c5(0x1cc)]],[_0x6010c5(0x1b9),_0x39a3f0[_0x6010c5(0x1b9)],_0xf39a8[_0x6010c5(0x1b9)]],[_0x6010c5(0x201),_0x39a3f0[_0x6010c5(0x201)],_0xf39a8[_0x6010c5(0x201)]],[_0x6010c5(0x1fb),_0x39a3f0[_0x6010c5(0x1fb)],_0xf39a8[_0x6010c5(0x1fb)]],['datasetCode',_0x39a3f0['datasetCode'],_0xf39a8[_0x6010c5(0x1cb)]]];for(const [_0x27aec9,_0x357f9b,_0x4a012b]of _0x37a9d2){assertVerified(sameValue(_0x357f9b,_0x4a012b),'Menu\x20'+_0xf39a8['id']+'\x20'+_0x27aec9+_0x6010c5(0x200));}assertVerified(_0x39a3f0[_0x6010c5(0x1df)]===_0x534b5b,'Menu\x20'+_0xf39a8['id']+'\x20label\x20update\x20did\x20not\x20take\x20effect.');}function sameValue(_0x383e75,_0x1dabc6){const _0x55604e=a136_0x343151;if(Array[_0x55604e(0x1ca)](_0x383e75)||Array['isArray'](_0x1dabc6))return JSON[_0x55604e(0x1f6)](_0x383e75)===JSON[_0x55604e(0x1f6)](_0x1dabc6);return _0x383e75===_0x1dabc6;}function renameSuccess(_0x35a660,_0x2d7045,_0x3c4bc5,_0x30ee0c,_0x37e8f){const _0x374400=a136_0x343151,_0x59c537=_0x3c4bc5['id'],_0x3bd5c7=mutationResult({..._0x35a660,'after':_0x3c4bc5,'dryRun':![],'succeeded':[{'id':_0x59c537,'updated':!_0x30ee0c,'skipped':_0x30ee0c,'recovered':_0x37e8f}],'verification':{'checkedBy':_0x374400(0x1c0),'snapshotHash':_0x2d7045[_0x374400(0x1fd)],'targetId':_0x59c537,'matchesRequestedState':!![],'recovered':_0x37e8f}});return{'ok':!![],'message':_0x37e8f?_0x374400(0x1c6)+_0x59c537+'.':_0x30ee0c?_0x374400(0x1cf)+_0x59c537+_0x374400(0x1e8):_0x374400(0x1b8)+_0x59c537+'.','data':{..._0x3bd5c7,'recovered':_0x37e8f}};}async function recoverAfterResponseLoss(_0x125410,_0x41c031){const _0x301431=a136_0x343151,{plan:_0x45db9e,before:_0x46585c,body:_0x2f8b0a}=_0x41c031;let _0x3b5368;try{_0x3b5368=await fetchMenuSnapshot(_0x125410[_0x301431(0x1b7)],_0x125410[_0x301431(0x203)]);}catch{throw recoveryRequired(_0x45db9e,_0x125410[_0x301431(0x1b7)],{'id':_0x2f8b0a['id'],'readbackFailed':!![]});}const _0x4f37ca=_0x3b5368[_0x301431(0x1d1)][_0x301431(0x1bb)](_0x2f8b0a['id']);if(!_0x4f37ca||_0x4f37ca['label']!==_0x2f8b0a['label'])throw recoveryRequired(_0x45db9e,_0x125410['appCode'],{'id':_0x2f8b0a['id'],'requestedLabelObserved':![],'after':_0x4f37ca??null});try{verifyRenamedFact(_0x46585c,_0x4f37ca,_0x2f8b0a[_0x301431(0x1df)]);}catch(_0x8502e4){const _0x1eda80=asVerificationError(_0x8502e4,_0x301431(0x1f1)+_0x2f8b0a['id']+_0x301431(0x1ed));throw menuFailure(_0x1eda80,_0x45db9e,{'stage':'update-recovery','succeeded':[{'id':_0x2f8b0a['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x2f8b0a['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x4f37ca,'warnings':[_0x301431(0x1de)],'verification':{'status':_0x301431(0x1c9),'targetId':_0x2f8b0a['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x125410[_0x301431(0x1b7)])}});}return renameSuccess(_0x45db9e,_0x3b5368,_0x4f37ca,![],!![]);}function recoveryRequired(_0x1667ce,_0xb7cfbc,_0x4c0ba0){const _0x599e16=a136_0x343151,_0x3027ad=menuError(_0x599e16(0x204),'The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.',_0x599e16(0x1c2)+buildLookupCommand(_0xb7cfbc)+_0x599e16(0x1d6));return menuFailure(_0x3027ad,_0x1667ce,{'stage':_0x599e16(0x1e4),'failed':{'id':_0x4c0ba0['id'],..._0x4c0ba0[_0x599e16(0x1f4)]===undefined?{}:{'requestedLabelObserved':_0x4c0ba0['requestedLabelObserved']},..._0x4c0ba0[_0x599e16(0x1e2)]?{'readbackFailed':!![]}:{}},'after':_0x4c0ba0[_0x599e16(0x1e1)],'warnings':['The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x599e16(0x1c9),'targetId':_0x4c0ba0['id'],..._0x4c0ba0[_0x599e16(0x1f4)]===undefined?{}:{'requestedLabelObserved':_0x4c0ba0['requestedLabelObserved']},..._0x4c0ba0[_0x599e16(0x1e2)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0xb7cfbc)}});}function buildLookupCommand(_0xfdb369){const _0x1547e6=a136_0x343151,_0x34ab6a='\x27'+_0xfdb369[_0x1547e6(0x205)](/'/g,_0x1547e6(0x1db))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x34ab6a+_0x1547e6(0x1b4);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a137_0x2964(_0x416721,_0x703eff){_0x416721=_0x416721-0x1a6;const _0x555f1b=a137_0x555f();let _0x296405=_0x555f1b[_0x416721];return _0x296405;}(function(_0x20346d,_0x17347a){const _0x225c3d=a137_0x2964,_0x11961c=_0x20346d();while(!![]){try{const _0x5582eb=parseInt(_0x225c3d(0x1b1))/0x1+parseInt(_0x225c3d(0x1c0))/0x2+parseInt(_0x225c3d(0x1b8))/0x3+parseInt(_0x225c3d(0x1ae))/0x4*(-parseInt(_0x225c3d(0x1b6))/0x5)+parseInt(_0x225c3d(0x1ac))/0x6*(-parseInt(_0x225c3d(0x1c3))/0x7)+-parseInt(_0x225c3d(0x1b9))/0x8+parseInt(_0x225c3d(0x1ad))/0x9;if(_0x5582eb===_0x17347a)break;else _0x11961c['push'](_0x11961c['shift']());}catch(_0x153c21){_0x11961c['push'](_0x11961c['shift']());}}}(a137_0x555f,0x8a3f1));function strWidth(_0x5c68cf){const _0x5a9d87=a137_0x2964;let _0x3295cf=0x0;for(const _0x1d9c2f of _0x5c68cf){_0x3295cf+=/[\u4e00-\u9fa5]/[_0x5a9d87(0x1af)](_0x1d9c2f)?0x2:0x1;}return _0x3295cf;}function a137_0x555f(){const _0x4e8c2f=['6925936sRDzEy','Menu\x20Name','path','\x20\x20Affected\x20menus:\x20','\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','repeat','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','1280316SFuHbz','join','Local','153818NYnGGS','\x20\x20\x20\x20JS:\x20\x20','\x20\x20\x20\x20•\x20','\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','push','max','Platform','(unchanged)','online','42RaWPWk','10617696BPwyvS','1457048sIlKxF','test','label','371192YkhkBC','length','\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','\x20\x20No\x20pages\x20to\x20sync.','showOnline','10ypwxme','map','369741mbARKo'];a137_0x555f=function(){return _0x4e8c2f;};return a137_0x555f();}function padRight(_0x3e742f,_0x4b5742){const _0x3b0145=a137_0x2964,_0x52b179=strWidth(_0x3e742f);return _0x3e742f+'\x20'[_0x3b0145(0x1be)](Math['max'](0x0,_0x4b5742-_0x52b179));}export function renderCompareTable(_0x3fcff7,_0x281f9e={}){const _0x27d700=a137_0x2964;if(_0x3fcff7[_0x27d700(0x1b2)]===0x0)return'';const _0x236d88=_0x281f9e[_0x27d700(0x1b5)]??!![],_0x2771d2=Math['max'](0x1e,..._0x3fcff7[_0x27d700(0x1b7)](_0x1cb0c5=>strWidth(_0x1cb0c5[_0x27d700(0x1b0)]))),_0x315edf=Math[_0x27d700(0x1a8)](0x18,..._0x3fcff7[_0x27d700(0x1b7)](_0x2faf54=>strWidth(_0x2faf54['path']))),_0x271e08=0x4,_0x48f521=[],_0x425427='\x20\x20'+padRight(_0x27d700(0x1ba),_0x2771d2),_0x1db1b4=padRight('Path',_0x315edf),_0x20fa89=padRight(_0x27d700(0x1c2),_0x271e08),_0x381afb=_0x236d88?'\x20\x20'+padRight(_0x27d700(0x1a9),_0x271e08):'';_0x48f521['push'](_0x425427+'\x20\x20'+_0x1db1b4+'\x20\x20'+_0x20fa89+(_0x236d88?_0x381afb:'')),_0x48f521[_0x27d700(0x1a7)]('\x20\x20'+'─'['repeat'](_0x2771d2)+'\x20\x20'+'─'[_0x27d700(0x1be)](_0x315edf)+'\x20\x20'+'─'[_0x27d700(0x1be)](_0x271e08)+(_0x236d88?'\x20\x20'+'─'['repeat'](_0x271e08):''));for(const _0x4b1100 of _0x3fcff7){const _0x5730e4=padRight(_0x4b1100[_0x27d700(0x1b0)],_0x2771d2),_0x19800f=padRight(_0x4b1100[_0x27d700(0x1bb)],_0x315edf),_0x5314e6=_0x4b1100['local']?'✓':'✗',_0x4224f3=padRight(_0x5314e6,_0x271e08);let _0x307fe6='\x20\x20'+_0x5730e4+'\x20\x20'+_0x19800f+'\x20\x20'+_0x4224f3;if(_0x236d88){const _0x2c985b=_0x4b1100[_0x27d700(0x1ab)]?'✓':'✗';_0x307fe6+='\x20\x20'+padRight(_0x2c985b,_0x271e08);}_0x48f521['push'](_0x307fe6);}return _0x48f521['join']('\x0a');}export function renderSyncSummary(_0x2cdff9,_0x40ebca){const _0x52fec6=a137_0x2964;if(_0x2cdff9[_0x52fec6(0x1b2)]===0x0)return _0x40ebca?_0x52fec6(0x1bd):_0x52fec6(0x1b4);const _0x49c777=['\x20\x20'+_0x2cdff9[_0x52fec6(0x1b2)]+_0x52fec6(0x1b3)];for(const _0xac4401 of _0x2cdff9){_0x49c777[_0x52fec6(0x1a7)](_0x52fec6(0x1c5)+_0xac4401[_0x52fec6(0x1b0)]+'\x20('+_0xac4401[_0x52fec6(0x1bb)]+')');}return _0x49c777[_0x52fec6(0x1c1)]('\x0a');}export function renderUpdateSummary(_0x4a34bf,_0x817466){const _0x20766b=a137_0x2964;if(_0x4a34bf[_0x20766b(0x1b2)]===0x0)return _0x20766b(0x1bf);const _0x1c4825=['\x20\x20'+_0x4a34bf[_0x20766b(0x1b2)]+_0x20766b(0x1a6),_0x20766b(0x1c4)+(_0x817466[0x0]??'(unchanged)'),'\x20\x20\x20\x20CSS:\x20'+(_0x817466[0x1]??_0x20766b(0x1aa)),'',_0x20766b(0x1bc)+_0x4a34bf[_0x20766b(0x1c1)](',\x20')];return _0x1c4825['join']('\x0a');}
|
|
@@ -1 +1 @@
|
|
|
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
|
+
function a138_0x4b2a(_0x25cafd,_0x386072){_0x25cafd=_0x25cafd-0x117;const _0x2819e6=a138_0x2819();let _0x4b2ab8=_0x2819e6[_0x25cafd];return _0x4b2ab8;}const a138_0x2653e2=a138_0x4b2a;(function(_0x4b821c,_0x492fa5){const _0xc1834a=a138_0x4b2a,_0x1d9ebd=_0x4b821c();while(!![]){try{const _0x43168a=-parseInt(_0xc1834a(0x119))/0x1*(parseInt(_0xc1834a(0x12a))/0x2)+-parseInt(_0xc1834a(0x135))/0x3+parseInt(_0xc1834a(0x12c))/0x4+parseInt(_0xc1834a(0x152))/0x5*(parseInt(_0xc1834a(0x128))/0x6)+parseInt(_0xc1834a(0x120))/0x7*(parseInt(_0xc1834a(0x155))/0x8)+-parseInt(_0xc1834a(0x12b))/0x9+parseInt(_0xc1834a(0x177))/0xa*(parseInt(_0xc1834a(0x11d))/0xb);if(_0x43168a===_0x492fa5)break;else _0x1d9ebd['push'](_0x1d9ebd['shift']());}catch(_0x22df6d){_0x1d9ebd['push'](_0x1d9ebd['shift']());}}}(a138_0x2819,0xc590a));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=a138_0x2653e2(0x161),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x18356a,_0x333072,_0x76b6b2=new Date()){const _0x1981d6=a138_0x2653e2;if(!_0x333072[_0x1981d6(0x12d)]||!isMenuFact(_0x333072['before']))throw menuError(_0x1981d6(0x124),_0x1981d6(0x134));const _0x5f22d8=_0x333072[_0x1981d6(0x15e)]?.[_0x1981d6(0x14a)]?_0x333072[_0x1981d6(0x15e)]:[_0x333072[_0x1981d6(0x12d)]],_0x47f1ad=_0x333072[_0x1981d6(0x173)]?.['length']?_0x333072[_0x1981d6(0x173)]:_0x5f22d8[_0x1981d6(0x13e)](_0xfa30e0=>_0xfa30e0['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x18356a,'createdAt':_0x76b6b2[_0x1981d6(0x130)](),'expiresAt':new Date(_0x76b6b2[_0x1981d6(0x17c)]()+PLAN_TTL_MS)['toISOString'](),'snapshotHash':_0x333072['snapshotHash'],'recursive':_0x333072['selector'][_0x1981d6(0x16a)]===!![],'target':_0x333072['before'],'targetFingerprint':fingerprint(_0x333072['before']),'targets':_0x5f22d8,'targetFingerprints':_0x5f22d8[_0x1981d6(0x13e)](fingerprint),'deleteOrder':_0x47f1ad,'cascade':_0x333072['cascade']??{'pages':_0x333072[_0x1981d6(0x12d)][_0x1981d6(0x147)]==null?[]:[_0x333072[_0x1981d6(0x12d)][_0x1981d6(0x147)]],'pageSchemaAffected':_0x333072[_0x1981d6(0x12d)][_0x1981d6(0x147)]!=null},'warnings':[..._0x333072[_0x1981d6(0x142)]]};}function a138_0x2819(){const _0x17f456=['pageId','menu_plan_expired','EEXIST','length','visible','snapshotHash','POST','childrenCount','appCode','Planned\x20menu\x20','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','237155sKnQHu','isArray','code','872FeKOHY','object','digest','every','string','resourcesValid','\x20bytes.','\x20of\x20the\x20','extend','targets','isSafeInteger','Menu\x20delete\x20plan\x20expired\x20at\x20','menu\x20delete','updateUserName','parentId','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','label','modelType','hash','number','resourcesHash','recursive','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','pages','/smartapi/menu/batchDelete','type','menu_plan_write_failed','resources','target','pageType','deleteOrder','cascade','updateTime','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','20lZEzkc','depth','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','datasetCode','test','getTime','childrenIds','path','Menu\x20delete\x20plan\x20creation\x20time\x20','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','sha256','extendHash','300EBdCJv','isInteger','isFinite','stringify','7624507azVfnN','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','datasetId','58177SBcDVD','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','menu_state_drift','createdAt','menu_plan_invalid','parse','expiresAt','trim','6KLRDnU','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','10060EDeImg','8926002iQifpJ','5246420CiNWNz','before','pageSchemaAffected','get','toISOString','boolean','batch-delete-menu','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','1023615ZKwjMP',',\x20current\x20app\x20is\x20','utf8','sort','plan','plan-out','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','menu_plan_file_exists','updateUserId','map','targetFingerprints','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','menu_plan_app_mismatch','warnings','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','targetFingerprint','\x20requires\x20a\x20non-empty\x20file\x20path.','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.'];a138_0x2819=function(){return _0x17f456;};return a138_0x2819();}export async function writeMenuDeletePlan(_0x2875b1,_0x5d5c25){const _0x316a21=a138_0x2653e2,_0x5ad119=resolvePlanPath(_0x2875b1,_0x316a21(0x13a));await mkdir(dirname(_0x5ad119),{'recursive':!![]});try{await writeFile(_0x5ad119,JSON[_0x316a21(0x11c)](_0x5d5c25,null,0x2)+'\x0a',{'encoding':_0x316a21(0x137),'flag':'wx'});}catch(_0x227ab9){if(_0x227ab9[_0x316a21(0x154)]===_0x316a21(0x149))throw menuError(_0x316a21(0x13c),_0x316a21(0x179)+_0x5ad119,_0x316a21(0x180));throw menuError(_0x316a21(0x16f),_0x316a21(0x11e)+_0x5ad119+':\x20'+errorMessage(_0x227ab9));}return _0x5ad119;}export async function readMenuDeletePlan(_0x5c3f1f){const _0x175215=a138_0x2653e2,_0xe86b1c=resolvePlanPath(_0x5c3f1f,_0x175215(0x139));let _0x413464;try{_0x413464=(await stat(_0xe86b1c))['size'];}catch(_0x2d4a38){throw menuError(_0x175215(0x124),'Cannot\x20read\x20menu\x20delete\x20plan\x20'+_0xe86b1c+':\x20'+errorMessage(_0x2d4a38));}if(_0x413464>MAX_PLAN_BYTES)throw menuError('menu_plan_invalid',_0x175215(0x13b)+_0x413464+_0x175215(0x15b));let _0xcf2a2d;try{_0xcf2a2d=JSON[_0x175215(0x125)](await readFile(_0xe86b1c,'utf8'));}catch(_0x1509b3){throw menuError(_0x175215(0x124),_0x175215(0x151)+errorMessage(_0x1509b3));}if(!isMenuDeletePlanFile(_0xcf2a2d))throw menuError(_0x175215(0x124),_0x175215(0x164)+PLAN_VERSION+_0x175215(0x15c)+PLAN_COMMAND+'\x20contract.');if(!sameFingerprint(_0xcf2a2d['targetFingerprint'],fingerprint(_0xcf2a2d[_0x175215(0x171)])))throw menuError('menu_plan_invalid',_0x175215(0x143),_0x175215(0x121));if(!_0xcf2a2d[_0x175215(0x15e)]['every']((_0x76fd24,_0x2aabea)=>sameFingerprint(_0xcf2a2d[_0x175215(0x13f)][_0x2aabea],fingerprint(_0x76fd24)))||!sameFingerprint(_0xcf2a2d[_0x175215(0x144)],fingerprint(_0xcf2a2d[_0x175215(0x15e)][_0xcf2a2d[_0x175215(0x15e)]['length']-0x1])))throw menuError(_0x175215(0x124),'Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.',_0x175215(0x121));return{'path':_0xe86b1c,'plan':_0xcf2a2d};}export function mutationPlanFromDeleteFile(_0xbfa18,_0x4755b7){const _0x2644e2=a138_0x2653e2;return mutationResult({'operation':'delete','selector':{'id':_0xbfa18['target']['id'],'recursive':_0xbfa18[_0x2644e2(0x16a)]},'before':_0xbfa18[_0x2644e2(0x171)],'after':null,'dryRun':![],'backend':[{'method':_0x2644e2(0x14d),'path':_0x2644e2(0x16d)}],'plannedActions':[{'stage':_0x2644e2(0x132),'method':_0x2644e2(0x14d),'path':'/smartapi/menu/batchDelete','body':{'idList':_0xbfa18[_0x2644e2(0x173)]}}],'targets':_0xbfa18[_0x2644e2(0x15e)],'deleteOrder':_0xbfa18[_0x2644e2(0x173)],'snapshotHash':_0xbfa18[_0x2644e2(0x14c)],'cascade':_0xbfa18[_0x2644e2(0x174)],'planFile':{'path':_0x4755b7,'createdAt':_0xbfa18[_0x2644e2(0x123)],'expiresAt':_0xbfa18[_0x2644e2(0x126)]},'warnings':_0xbfa18[_0x2644e2(0x142)]});}export function assertMenuDeletePlanCurrent(_0x2f7a74,_0x5688fa,_0x5b5818,_0x212e5f=new Date()){const _0x59de26=a138_0x2653e2;assertMenuDeletePlanExecutable(_0x2f7a74,_0x5688fa,_0x212e5f);if(_0x5b5818[_0x59de26(0x167)]!==_0x2f7a74[_0x59de26(0x14c)])throw menuError('menu_state_drift',_0x59de26(0x176),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.');return _0x2f7a74[_0x59de26(0x15e)][_0x59de26(0x13e)]((_0x560864,_0x53bda3)=>{const _0x4c61ce=_0x59de26,_0x21d041=_0x5b5818['byId'][_0x4c61ce(0x12f)](_0x560864['id']);if(!_0x21d041)throw menuError(_0x4c61ce(0x122),_0x4c61ce(0x150)+_0x560864['id']+_0x4c61ce(0x140));if(!sameFingerprint(_0x2f7a74['targetFingerprints'][_0x53bda3],fingerprint(_0x21d041)))throw menuError(_0x4c61ce(0x122),_0x4c61ce(0x150)+_0x560864['id']+_0x4c61ce(0x146),_0x4c61ce(0x129));return _0x21d041;});}export function assertMenuDeletePlanExecutable(_0x1438fd,_0x18f738,_0x2537aa=new Date()){const _0x1833c1=a138_0x2653e2;if(_0x1438fd[_0x1833c1(0x14f)]!==_0x18f738)throw menuError(_0x1833c1(0x141),'Menu\x20delete\x20plan\x20targets\x20app\x20'+JSON[_0x1833c1(0x11c)](_0x1438fd[_0x1833c1(0x14f)])+_0x1833c1(0x136)+JSON[_0x1833c1(0x11c)](_0x18f738)+'.');const _0x56cbeb=Date['parse'](_0x1438fd['createdAt']),_0xd04e0=Date[_0x1833c1(0x125)](_0x1438fd[_0x1833c1(0x126)]);if(!Number[_0x1833c1(0x11b)](_0x56cbeb)||!Number['isFinite'](_0xd04e0)||_0xd04e0-_0x56cbeb!==PLAN_TTL_MS)throw menuError('menu_plan_invalid','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.');if(_0x56cbeb>_0x2537aa[_0x1833c1(0x17c)]())throw menuError('menu_plan_invalid',_0x1833c1(0x17f)+_0x1438fd['createdAt']+'\x20is\x20in\x20the\x20future.',_0x1833c1(0x133));if(_0x2537aa[_0x1833c1(0x17c)]()>_0xd04e0)throw menuError(_0x1833c1(0x148),_0x1833c1(0x160)+_0x1438fd[_0x1833c1(0x126)]+'.',_0x1833c1(0x16b));}function fingerprint(_0x1590b6){const _0x5c5e54=a138_0x2653e2;return{'id':_0x1590b6['id'],'parentId':_0x1590b6['parentId'],'depth':_0x1590b6[_0x5c5e54(0x178)],'label':_0x1590b6[_0x5c5e54(0x165)],'path':_0x1590b6[_0x5c5e54(0x17e)],'type':_0x1590b6[_0x5c5e54(0x16e)],'visible':_0x1590b6[_0x5c5e54(0x14b)],'sort':_0x1590b6['sort'],'pageId':_0x1590b6[_0x5c5e54(0x147)],'pageType':_0x1590b6[_0x5c5e54(0x172)],'modelType':_0x1590b6[_0x5c5e54(0x166)],'datasetId':_0x1590b6[_0x5c5e54(0x11f)],'datasetCode':_0x1590b6[_0x5c5e54(0x17a)],'childrenIds':[..._0x1590b6['childrenIds']],'childrenCount':_0x1590b6['childrenCount'],'resourcesValid':_0x1590b6[_0x5c5e54(0x15a)],'resourcesHash':hashValue(_0x1590b6[_0x5c5e54(0x170)]),'extendHash':hashValue(_0x1590b6[_0x5c5e54(0x15d)]??null),'updateTime':_0x1590b6[_0x5c5e54(0x175)]};}function hashValue(_0x543905){const _0x18ccb4=a138_0x2653e2;return createHash(_0x18ccb4(0x117))['update'](JSON[_0x18ccb4(0x11c)](_0x543905))[_0x18ccb4(0x157)]('hex');}function sameFingerprint(_0x46ded6,_0x3eab5a){const _0x22fb8d=a138_0x2653e2;return JSON[_0x22fb8d(0x11c)](_0x46ded6)===JSON[_0x22fb8d(0x11c)](_0x3eab5a);}function resolvePlanPath(_0x4dc4e1,_0x489160){const _0x8a04d9=a138_0x2653e2,_0x213f1f=_0x4dc4e1[_0x8a04d9(0x127)]();if(!_0x213f1f)throw menuError(_0x8a04d9(0x124),'--'+_0x489160+_0x8a04d9(0x145));return resolve(_0x213f1f);}function isMenuDeletePlanFile(_0x2baf19){const _0x50509c=a138_0x2653e2;if(!isRecord(_0x2baf19))return![];return _0x2baf19['version']===PLAN_VERSION&&_0x2baf19['command']===PLAN_COMMAND&&typeof _0x2baf19['appCode']===_0x50509c(0x159)&&_0x2baf19[_0x50509c(0x14f)][_0x50509c(0x14a)]>0x0&&typeof _0x2baf19[_0x50509c(0x123)]===_0x50509c(0x159)&&typeof _0x2baf19[_0x50509c(0x126)]===_0x50509c(0x159)&&typeof _0x2baf19['snapshotHash']===_0x50509c(0x159)&&/^sha256:[a-f0-9]{64}$/[_0x50509c(0x17b)](_0x2baf19['snapshotHash'])&&typeof _0x2baf19[_0x50509c(0x16a)]===_0x50509c(0x131)&&isMenuFact(_0x2baf19[_0x50509c(0x171)])&&isTargetFingerprint(_0x2baf19[_0x50509c(0x144)])&&Array[_0x50509c(0x153)](_0x2baf19[_0x50509c(0x15e)])&&_0x2baf19[_0x50509c(0x15e)][_0x50509c(0x14a)]>0x0&&_0x2baf19[_0x50509c(0x15e)]['every'](isMenuFact)&&Array['isArray'](_0x2baf19[_0x50509c(0x13f)])&&_0x2baf19[_0x50509c(0x13f)]['length']===_0x2baf19[_0x50509c(0x15e)][_0x50509c(0x14a)]&&_0x2baf19[_0x50509c(0x13f)]['every'](isTargetFingerprint)&&Array[_0x50509c(0x153)](_0x2baf19['deleteOrder'])&&_0x2baf19[_0x50509c(0x173)]['length']===_0x2baf19[_0x50509c(0x15e)][_0x50509c(0x14a)]&&_0x2baf19[_0x50509c(0x173)][_0x50509c(0x158)](isPositiveInteger)&&new Set(_0x2baf19[_0x50509c(0x173)])['size']===_0x2baf19[_0x50509c(0x173)]['length']&&_0x2baf19[_0x50509c(0x15e)][_0x50509c(0x158)]((_0x1e0ae2,_0x1a88aa)=>_0x1e0ae2['id']===_0x2baf19[_0x50509c(0x173)][_0x1a88aa])&&_0x2baf19['targets'][_0x2baf19[_0x50509c(0x15e)]['length']-0x1]?.['id']===_0x2baf19[_0x50509c(0x171)]['id']&&isRecord(_0x2baf19['cascade'])&&Array[_0x50509c(0x153)](_0x2baf19[_0x50509c(0x174)][_0x50509c(0x16c)])&&_0x2baf19[_0x50509c(0x174)][_0x50509c(0x16c)][_0x50509c(0x158)](isPositiveInteger)&&typeof _0x2baf19[_0x50509c(0x174)][_0x50509c(0x12e)]===_0x50509c(0x131)&&Array[_0x50509c(0x153)](_0x2baf19[_0x50509c(0x142)])&&_0x2baf19[_0x50509c(0x142)][_0x50509c(0x158)](_0x45f810=>typeof _0x45f810===_0x50509c(0x159));}function isMenuFact(_0x28cf31){const _0x29cc0c=a138_0x2653e2;if(!isRecord(_0x28cf31))return![];return isPositiveInteger(_0x28cf31['id'])&&(_0x28cf31['parentId']===null||isPositiveInteger(_0x28cf31[_0x29cc0c(0x163)]))&&Number[_0x29cc0c(0x11a)](_0x28cf31[_0x29cc0c(0x178)])&&_0x28cf31['depth']>=0x0&&typeof _0x28cf31['label']===_0x29cc0c(0x159)&&typeof _0x28cf31[_0x29cc0c(0x17e)]==='string'&&typeof _0x28cf31[_0x29cc0c(0x16e)]===_0x29cc0c(0x159)&&(_0x28cf31[_0x29cc0c(0x14b)]===null||typeof _0x28cf31[_0x29cc0c(0x14b)]===_0x29cc0c(0x131))&&(_0x28cf31[_0x29cc0c(0x138)]===null||Number[_0x29cc0c(0x11a)](_0x28cf31['sort']))&&Array[_0x29cc0c(0x153)](_0x28cf31[_0x29cc0c(0x170)])&&_0x28cf31[_0x29cc0c(0x170)][_0x29cc0c(0x158)](_0xa7dd53=>typeof _0xa7dd53===_0x29cc0c(0x159))&&typeof _0x28cf31[_0x29cc0c(0x15a)]===_0x29cc0c(0x131)&&Array[_0x29cc0c(0x153)](_0x28cf31[_0x29cc0c(0x17d)])&&_0x28cf31[_0x29cc0c(0x17d)][_0x29cc0c(0x158)](isPositiveInteger)&&Number[_0x29cc0c(0x11a)](_0x28cf31['childrenCount'])&&_0x28cf31[_0x29cc0c(0x14e)]>=0x0&&(_0x28cf31['pageId']===null||isPositiveInteger(_0x28cf31[_0x29cc0c(0x147)]))&&typeof _0x28cf31['pageType']===_0x29cc0c(0x159)&&typeof _0x28cf31[_0x29cc0c(0x166)]===_0x29cc0c(0x159)&&(_0x28cf31[_0x29cc0c(0x11f)]===null||isPositiveInteger(_0x28cf31[_0x29cc0c(0x11f)]))&&typeof _0x28cf31[_0x29cc0c(0x17a)]==='string'&&(_0x28cf31[_0x29cc0c(0x13d)]===null||typeof _0x28cf31[_0x29cc0c(0x13d)]===_0x29cc0c(0x159))&&(_0x28cf31[_0x29cc0c(0x162)]===null||typeof _0x28cf31[_0x29cc0c(0x162)]===_0x29cc0c(0x159))&&(_0x28cf31[_0x29cc0c(0x175)]===null||typeof _0x28cf31[_0x29cc0c(0x175)]===_0x29cc0c(0x159)||typeof _0x28cf31[_0x29cc0c(0x175)]==='number')&&(_0x28cf31['extend']===undefined||_0x28cf31['extend']===null||isRecord(_0x28cf31[_0x29cc0c(0x15d)]));}function isTargetFingerprint(_0x45eca0){const _0x1c9c6a=a138_0x2653e2;if(!isRecord(_0x45eca0))return![];return isPositiveInteger(_0x45eca0['id'])&&(_0x45eca0[_0x1c9c6a(0x163)]===null||isPositiveInteger(_0x45eca0[_0x1c9c6a(0x163)]))&&Number['isInteger'](_0x45eca0[_0x1c9c6a(0x178)])&&_0x45eca0[_0x1c9c6a(0x178)]>=0x0&&typeof _0x45eca0[_0x1c9c6a(0x165)]===_0x1c9c6a(0x159)&&typeof _0x45eca0[_0x1c9c6a(0x17e)]===_0x1c9c6a(0x159)&&typeof _0x45eca0['type']==='string'&&(_0x45eca0[_0x1c9c6a(0x14b)]===null||typeof _0x45eca0[_0x1c9c6a(0x14b)]==='boolean')&&(_0x45eca0['sort']===null||Number['isInteger'](_0x45eca0['sort']))&&(_0x45eca0[_0x1c9c6a(0x147)]===null||isPositiveInteger(_0x45eca0[_0x1c9c6a(0x147)]))&&typeof _0x45eca0[_0x1c9c6a(0x172)]===_0x1c9c6a(0x159)&&typeof _0x45eca0[_0x1c9c6a(0x166)]===_0x1c9c6a(0x159)&&(_0x45eca0[_0x1c9c6a(0x11f)]===null||isPositiveInteger(_0x45eca0['datasetId']))&&typeof _0x45eca0[_0x1c9c6a(0x17a)]==='string'&&Array[_0x1c9c6a(0x153)](_0x45eca0[_0x1c9c6a(0x17d)])&&_0x45eca0[_0x1c9c6a(0x17d)][_0x1c9c6a(0x158)](isPositiveInteger)&&Number['isInteger'](_0x45eca0[_0x1c9c6a(0x14e)])&&_0x45eca0[_0x1c9c6a(0x14e)]>=0x0&&typeof _0x45eca0[_0x1c9c6a(0x15a)]===_0x1c9c6a(0x131)&&typeof _0x45eca0[_0x1c9c6a(0x169)]==='string'&&/^[a-f0-9]{64}$/[_0x1c9c6a(0x17b)](_0x45eca0['resourcesHash'])&&typeof _0x45eca0[_0x1c9c6a(0x118)]===_0x1c9c6a(0x159)&&/^[a-f0-9]{64}$/[_0x1c9c6a(0x17b)](_0x45eca0[_0x1c9c6a(0x118)])&&(_0x45eca0['updateTime']===null||typeof _0x45eca0['updateTime']===_0x1c9c6a(0x159)||typeof _0x45eca0[_0x1c9c6a(0x175)]===_0x1c9c6a(0x168));}function isRecord(_0x2dba3d){const _0x5c1e29=a138_0x2653e2;return typeof _0x2dba3d===_0x5c1e29(0x156)&&_0x2dba3d!==null&&!Array['isArray'](_0x2dba3d);}function isPositiveInteger(_0x1deacb){const _0x5d9fe5=a138_0x2653e2;return Number[_0x5d9fe5(0x15f)](_0x1deacb)&&Number(_0x1deacb)>0x0;}function errorMessage(_0xbd2218){return _0xbd2218 instanceof Error?_0xbd2218['message']:String(_0xbd2218);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5b15fc,_0x4dca6e){const _0x3363e4=a139_0x3e08,_0x1b0c75=_0x5b15fc();while(!![]){try{const _0x552f88=-parseInt(_0x3363e4(0xa1))/0x1+-parseInt(_0x3363e4(0x9c))/0x2*(-parseInt(_0x3363e4(0x98))/0x3)+parseInt(_0x3363e4(0x8e))/0x4+-parseInt(_0x3363e4(0x81))/0x5+-parseInt(_0x3363e4(0xa7))/0x6+-parseInt(_0x3363e4(0xac))/0x7*(-parseInt(_0x3363e4(0xa2))/0x8)+parseInt(_0x3363e4(0x83))/0x9*(parseInt(_0x3363e4(0x97))/0xa);if(_0x552f88===_0x4dca6e)break;else _0x1b0c75['push'](_0x1b0c75['shift']());}catch(_0x1fd715){_0x1b0c75['push'](_0x1b0c75['shift']());}}}(a139_0x131d,0x20809));import{createHash}from'node:crypto';function a139_0x3e08(_0x1d9b70,_0x10a6b1){_0x1d9b70=_0x1d9b70-0x7d;const _0x131de4=a139_0x131d();let _0x3e0805=_0x131de4[_0x1d9b70];return _0x3e0805;}import{getMenuTree}from'../../../core/api-client.js';export async function fetchMenuSnapshot(_0x2806e1,_0x946553,_0x40c66b={}){const _0x3c6e0b=await getMenuTree(_0x2806e1,_0x946553);return buildMenuSnapshot(Array['isArray'](_0x3c6e0b)?_0x3c6e0b:[],_0x40c66b);}export function buildMenuSnapshot(_0x210ef1,_0x1f710c={}){const _0x10c41d=a139_0x3e08,_0xbfb19e=flattenMenuItems(_0x210ef1,{'verbose':_0x1f710c[_0x10c41d(0x90)]===!![],'parentId':null,'depth':0x0}),_0x57c3f6=new Map(_0xbfb19e[_0x10c41d(0x9e)](_0x30aee6=>[_0x30aee6['id'],_0x30aee6])),_0x153695=createHash(_0x10c41d(0xab))[_0x10c41d(0xaa)](JSON[_0x10c41d(0x85)](_0xbfb19e[_0x10c41d(0x9e)](toHashInput)))[_0x10c41d(0x95)]('hex');return{'total':_0xbfb19e['length'],'hash':'sha256:'+_0x153695,'menus':_0xbfb19e,'byId':_0x57c3f6};}export function toProcessedMenuItem(_0x1d43ed){const _0x16fa59=a139_0x3e08;return{'id':_0x1d43ed['id'],'path':_0x1d43ed['path'],'label':_0x1d43ed[_0x16fa59(0x8c)],'resources':[..._0x1d43ed[_0x16fa59(0x8b)]],'extend':_0x1d43ed[_0x16fa59(0x8d)]??null};}export function toMenuListItem(_0x35dfc6){const {modelType:_0x3a1c9c,datasetId:_0x1f3e40,datasetCode:_0x55d2d2,resourcesValid:_0x33960a,..._0x315f4b}=_0x35dfc6;return _0x315f4b;}export function getChildren(_0x4829c5,_0x57d84f){const _0x4a5ec1=a139_0x3e08;return _0x4829c5[_0x4a5ec1(0x87)][_0x4a5ec1(0x9f)](_0x2e0e9a=>_0x2e0e9a['parentId']===_0x57d84f);}function flattenMenuItems(_0x5c2efa,_0x4dae89){const _0x2bb178=a139_0x3e08,_0x24455f=sortMenuItems(_0x5c2efa),_0x5ede1f=[];for(const _0x1d55ee of _0x24455f){const _0x47ef29=sortMenuItems(Array[_0x2bb178(0x92)](_0x1d55ee[_0x2bb178(0xa3)])?_0x1d55ee[_0x2bb178(0xa3)]:[]);_0x5ede1f['push'](toMenuFact(_0x1d55ee,_0x47ef29,_0x4dae89)),_0x47ef29[_0x2bb178(0xa6)]>0x0&&_0x5ede1f['push'](...flattenMenuItems(_0x47ef29,{'verbose':_0x4dae89[_0x2bb178(0x90)],'parentId':_0x1d55ee['id'],'depth':_0x4dae89[_0x2bb178(0x94)]+0x1}));}return _0x5ede1f;}function sortMenuItems(_0x21bb21){const _0x49f0b9=a139_0x3e08;return _0x21bb21[_0x49f0b9(0x9e)]((_0x14376e,_0x51ea6a)=>({'item':_0x14376e,'index':_0x51ea6a}))['sort']((_0x4db301,_0x4b1835)=>{const _0x435368=_0x49f0b9,_0x37212a=normalizeSort(_0x4db301[_0x435368(0x86)][_0x435368(0x9b)]),_0x226b54=normalizeSort(_0x4b1835[_0x435368(0x86)][_0x435368(0x9b)]);if(_0x37212a!==_0x226b54)return _0x37212a-_0x226b54;return _0x4db301[_0x435368(0x8f)]-_0x4b1835[_0x435368(0x8f)];})[_0x49f0b9(0x9e)](({item:_0x326ad0})=>_0x326ad0);}function toMenuFact(_0xd75ebf,_0x341ecb,_0x4c5fd3){const _0x2c504f=a139_0x3e08,_0x48c84c=normalizeResourceValue(_0xd75ebf[_0x2c504f(0x8d)]?.[_0x2c504f(0x8b)]),_0x2b0e5d={'id':_0xd75ebf['id'],'parentId':_0x4c5fd3[_0x2c504f(0x9a)],'depth':_0x4c5fd3[_0x2c504f(0x94)],'label':normalizeString(_0xd75ebf['label']),'path':normalizeString(_0xd75ebf[_0x2c504f(0x96)]),'url':normalizeString(_0xd75ebf[_0x2c504f(0x80)]),'type':normalizeString(_0xd75ebf['type']),'visible':typeof _0xd75ebf[_0x2c504f(0xa0)]===_0x2c504f(0x99)?_0xd75ebf[_0x2c504f(0xa0)]:null,'sort':typeof _0xd75ebf['sort']===_0x2c504f(0x7e)&&Number[_0x2c504f(0xa9)](_0xd75ebf['sort'])?_0xd75ebf[_0x2c504f(0x9b)]:null,'resources':_0x48c84c[_0x2c504f(0x88)],'resourcesValid':_0x48c84c[_0x2c504f(0xa8)],'childrenIds':_0x341ecb[_0x2c504f(0x9e)](_0x24dfad=>_0x24dfad['id']),'childrenCount':_0x341ecb[_0x2c504f(0xa6)],'pageId':normalizeNullableNumber(_0xd75ebf[_0x2c504f(0x9d)]),'pageType':normalizeString(_0xd75ebf[_0x2c504f(0x93)]),'modelType':normalizeString(_0xd75ebf[_0x2c504f(0xa4)]),'datasetId':normalizeNullableNumber(_0xd75ebf['datasetId']),'datasetCode':normalizeString(_0xd75ebf[_0x2c504f(0x84)]),'updateUserId':normalizeNullableString(_0xd75ebf[_0x2c504f(0x82)]),'updateUserName':normalizeNullableString(_0xd75ebf[_0x2c504f(0xa5)]),'updateTime':normalizeNullableTimestamp(_0xd75ebf[_0x2c504f(0x7f)])};return _0x4c5fd3['verbose']&&(_0x2b0e5d['extend']=_0xd75ebf[_0x2c504f(0x8d)]??null),_0x2b0e5d;}function toHashInput(_0x5d18ff){const _0x40abae=a139_0x3e08;return{'id':_0x5d18ff['id'],'parentId':_0x5d18ff[_0x40abae(0x9a)],'label':_0x5d18ff[_0x40abae(0x8c)],'path':_0x5d18ff[_0x40abae(0x96)],'url':_0x5d18ff[_0x40abae(0x80)],'type':_0x5d18ff[_0x40abae(0x7d)],'visible':_0x5d18ff[_0x40abae(0xa0)],'sort':_0x5d18ff[_0x40abae(0x9b)],'resources':_0x5d18ff['resources'],'resourcesValid':_0x5d18ff[_0x40abae(0x89)],'childrenIds':_0x5d18ff['childrenIds'],'pageId':_0x5d18ff[_0x40abae(0x9d)],'pageType':_0x5d18ff[_0x40abae(0x93)],'modelType':_0x5d18ff[_0x40abae(0xa4)],'datasetId':_0x5d18ff[_0x40abae(0x8a)],'datasetCode':_0x5d18ff['datasetCode'],'updateUserId':_0x5d18ff['updateUserId'],'updateUserName':_0x5d18ff[_0x40abae(0xa5)],'updateTime':_0x5d18ff[_0x40abae(0x7f)]};}function normalizeSort(_0x586be5){const _0x1d6920=a139_0x3e08;return typeof _0x586be5==='number'&&Number[_0x1d6920(0xa9)](_0x586be5)?_0x586be5:Number['POSITIVE_INFINITY'];}function a139_0x131d(){const _0x1aa840=['children','modelType','updateUserName','length','224922zraOsA','valid','isFinite','update','sha256','7Sdzusq','type','number','updateTime','url','300590mjASZh','updateUserId','767592nMCFaX','datasetCode','stringify','item','menus','values','resourcesValid','datasetId','resources','label','extend','115092NScSAv','index','verbose','string','isArray','pageType','depth','digest','path','10rPulve','14988YHkSzR','boolean','parentId','sort','2kTlhul','pageId','map','filter','visible','40854QGiEVF','1220248YhWIOl'];a139_0x131d=function(){return _0x1aa840;};return a139_0x131d();}function normalizeString(_0x56aad6){const _0x420c4d=a139_0x3e08;return typeof _0x56aad6===_0x420c4d(0x91)?_0x56aad6:'';}function normalizeNullableNumber(_0x4d42f1){const _0x3f0eb5=a139_0x3e08;return typeof _0x4d42f1==='number'&&Number[_0x3f0eb5(0xa9)](_0x4d42f1)?_0x4d42f1:null;}function normalizeNullableString(_0x2e4a37){const _0x2b06d5=a139_0x3e08;return typeof _0x2e4a37==='string'&&_0x2e4a37[_0x2b06d5(0xa6)]>0x0?_0x2e4a37:null;}function normalizeNullableTimestamp(_0x5cff4a){const _0x59350f=a139_0x3e08;if(typeof _0x5cff4a==='string')return _0x5cff4a[_0x59350f(0xa6)]>0x0?_0x5cff4a:null;return typeof _0x5cff4a===_0x59350f(0x7e)&&Number[_0x59350f(0xa9)](_0x5cff4a)?_0x5cff4a:null;}export function normalizeResources(_0xb14013){const _0x17c052=a139_0x3e08;return normalizeResourceValue(_0xb14013)[_0x17c052(0x88)];}function normalizeResourceValue(_0x412193){const _0xc7b339=a139_0x3e08;if(_0x412193==null)return{'values':[],'valid':!![]};if(Array[_0xc7b339(0x92)](_0x412193))return{'values':_0x412193[_0xc7b339(0x9e)](String),'valid':!![]};if(typeof _0x412193!==_0xc7b339(0x91))return{'values':[],'valid':![]};try{const _0x202324=JSON['parse'](_0x412193);return Array[_0xc7b339(0x92)](_0x202324)?{'values':_0x202324[_0xc7b339(0x9e)](String),'valid':!![]}:{'values':[],'valid':![]};}catch{return{'values':[],'valid':![]};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x406b66,_0x3b232f){var _0x5e70e3=a140_0x1ef9,_0x3ec349=_0x406b66();while(!![]){try{var _0x1ec765=-parseInt(_0x5e70e3(0x17c))/0x1*(parseInt(_0x5e70e3(0x174))/0x2)+parseInt(_0x5e70e3(0x17a))/0x3+parseInt(_0x5e70e3(0x17d))/0x4+parseInt(_0x5e70e3(0x17b))/0x5*(-parseInt(_0x5e70e3(0x176))/0x6)+parseInt(_0x5e70e3(0x177))/0x7*(parseInt(_0x5e70e3(0x178))/0x8)+parseInt(_0x5e70e3(0x175))/0x9+-parseInt(_0x5e70e3(0x179))/0xa;if(_0x1ec765===_0x3b232f)break;else _0x3ec349['push'](_0x3ec349['shift']());}catch(_0x431b3b){_0x3ec349['push'](_0x3ec349['shift']());}}}(a140_0x5cf8,0xd45cd));export*from'../../../commands/menu/shared/types.js';export*from'../../../commands/menu/shared/logic.js';export*from'../../../commands/menu/shared/compare-table.js';export*from'../../../commands/menu/shared/inquirer.js';export*from'../../../commands/menu/shared/valid-url.js';export*from'../../../commands/menu/shared/local-pages.js';function a140_0x1ef9(_0x8d4d5f,_0x473901){_0x8d4d5f=_0x8d4d5f-0x174;var _0x5cf8a0=a140_0x5cf8();var _0x1ef9d5=_0x5cf8a0[_0x8d4d5f];return _0x1ef9d5;}function a140_0x5cf8(){var _0x3716ff=['2Alaihp','6833100tCAzdC','1386912ZeSMGa','4695228lmAUhl','3400914dfVdOi','1091041aQNiuD','64JmDbfb','9276150hqkEql','822936ckTuGb','5MylVxp'];a140_0x5cf8=function(){return _0x3716ff;};return a140_0x5cf8();}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(_0x1b4b32,_0x90455c){const _0xd32bfe=a141_0x535c,_0x36acf2=_0x1b4b32();while(!![]){try{const _0x4e5ef6=-parseInt(_0xd32bfe(0xe1))/0x1+-parseInt(_0xd32bfe(0xf9))/0x2+-parseInt(_0xd32bfe(0xfb))/0x3+-parseInt(_0xd32bfe(0xec))/0x4+-parseInt(_0xd32bfe(0xf5))/0x5+parseInt(_0xd32bfe(0x100))/0x6+parseInt(_0xd32bfe(0xfe))/0x7;if(_0x4e5ef6===_0x90455c)break;else _0x36acf2['push'](_0x36acf2['shift']());}catch(_0x55c303){_0x36acf2['push'](_0x36acf2['shift']());}}}(a141_0x5d15,0x7520b));import a141_0x1a73a8 from'chalk';import{checkbox,input,confirm}from'@inquirer/prompts';import a141_0x3b6fc1 from'ora';function a141_0x5d15(){const _0x33b667=['[new]','\x20\x20CSS\x20URL:','catch','513616KQOpgJ','fail','cancelled','red','\x20\x20✗\x20CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','\x20\x20Checking\x20CSS\x20URL\x20reachability...','\x20\x20Checking\x20JS\x20URL\x20reachability...','JS\x20URL\x20checked','isTTY','map','cyan','745976SYiDAe','ExitPromptError','test','\x20\x20✗\x20CSS\x20URL\x20is\x20unreachable','path','No\x20menus\x20selected.','\x20\x20Select\x20menus\x20to\x20sync\x20(space\x20to\x20toggle,\x20a=all,\x20i=invert):','stdin','JS\x20URL\x20check\x20failed','1946950nYeKio','CSS\x20URL\x20checked','This\x20command\x20requires\x20an\x20interactive\x20terminal.\x20','length','1112742MKYwyt','\x20\x20JS\x20URL:','2512953wYnAhg','trim','\x20\x20✗\x20JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','14624232BYQUil','Cancelled.','5244606jdNiVg','label','[already\x20on\x20platform]','error'];a141_0x5d15=function(){return _0x33b667;};return a141_0x5d15();}import{isUrlReachable}from'../../../commands/menu/shared/valid-url.js';function a141_0x535c(_0x2e9035,_0x580770){_0x2e9035=_0x2e9035-0xe1;const _0x5d15fc=a141_0x5d15();let _0x535c56=_0x5d15fc[_0x2e9035];return _0x535c56;}import{CliErrors}from'../../../errors.js';function onCancel(_0x46901c){const _0x2bd7e1=a141_0x535c;return _0x46901c[_0x2bd7e1(0x106)](_0x4f5373=>{const _0x5d1cf9=_0x2bd7e1;if(_0x4f5373?.['name']===_0x5d1cf9(0xed))throw CliErrors['cancelled']('Cancelled.');throw _0x4f5373;});}export function startSpinner(_0x3bf96c){const _0x1355a9=a141_0x535c;return a141_0x3b6fc1({'text':_0x3bf96c,'color':_0x1355a9(0xeb)})['start']();}export function stopSpinner(_0x148722,_0x5d9913,_0x152eae){const _0x5215f7=a141_0x535c;_0x152eae?_0x148722['succeed'](_0x5d9913):_0x148722[_0x5215f7(0xe2)](_0x5d9913);}export async function askConfirm(_0x4b0157){return onCancel(confirm({'message':_0x4b0157,'theme':{'prefix':''}}));}export async function askJsUrl(_0x44bbe9){const _0x53625b=a141_0x535c;while(!![]){const _0x44594c=await onCancel(input({'message':_0x53625b(0xfa),'default':_0x44bbe9,'theme':{'prefix':''}}));if(_0x44594c[_0x53625b(0xfc)]()==='')throw CliErrors[_0x53625b(0xe3)](_0x53625b(0xff));if(!/^https:\/\/.+\.js(\?.*)?$/[_0x53625b(0xee)](_0x44594c[_0x53625b(0xfc)]())){console[_0x53625b(0x103)](a141_0x1a73a8['red'](_0x53625b(0xfd)));continue;}const _0x21a40f=startSpinner(_0x53625b(0xe7));try{const _0xfabba3=await isUrlReachable(_0x44594c[_0x53625b(0xfc)]());stopSpinner(_0x21a40f,_0x53625b(0xe8),_0xfabba3);if(!_0xfabba3){console[_0x53625b(0x103)](a141_0x1a73a8[_0x53625b(0xe4)]('\x20\x20✗\x20JS\x20URL\x20is\x20unreachable'));continue;}return _0x44594c[_0x53625b(0xfc)]();}catch(_0x580500){stopSpinner(_0x21a40f,_0x53625b(0xf4),![]);throw _0x580500;}}}export async function askCssUrl(_0x39175c){const _0x261485=a141_0x535c;while(!![]){const _0x4fb3cf=await onCancel(input({'message':_0x261485(0x105),'default':_0x39175c,'theme':{'prefix':''}}));if(_0x4fb3cf[_0x261485(0xfc)]()==='')throw CliErrors[_0x261485(0xe3)](_0x261485(0xff));if(!/^https:\/\/.+\.css(\?.*)?$/[_0x261485(0xee)](_0x4fb3cf['trim']())){console[_0x261485(0x103)](a141_0x1a73a8[_0x261485(0xe4)](_0x261485(0xe5)));continue;}const _0x207bbc=startSpinner(_0x261485(0xe6));try{const _0x3a156c=await isUrlReachable(_0x4fb3cf[_0x261485(0xfc)]());stopSpinner(_0x207bbc,_0x261485(0xf6),_0x3a156c);if(!_0x3a156c){console['error'](a141_0x1a73a8[_0x261485(0xe4)](_0x261485(0xef)));continue;}return _0x4fb3cf['trim']();}catch(_0x89349e){stopSpinner(_0x207bbc,'CSS\x20URL\x20check\x20failed',![]);throw _0x89349e;}}}export async function selectPages(_0x43a5b5,_0x4c2013){const _0x480955=a141_0x535c,_0x14b507=_0x43a5b5[_0x480955(0xea)](_0xf0717f=>{const _0x379509=_0x480955,_0x3ffbdd=_0x4c2013['has'](_0xf0717f['path']);return{'name':_0xf0717f[_0x379509(0x101)]+'\x20\x20'+a141_0x1a73a8['gray'](_0xf0717f[_0x379509(0xf0)])+'\x20\x20'+(_0x3ffbdd?a141_0x1a73a8['gray'](_0x379509(0x102)):a141_0x1a73a8['green'](_0x379509(0x104))),'value':_0xf0717f[_0x379509(0xf0)],'checked':!_0x3ffbdd,'disabled':_0x3ffbdd};});if(_0x14b507[_0x480955(0xf8)]===0x0)throw new Error('No\x20local\x20pages\x20found.');const _0x5a4fa8=await onCancel(checkbox({'message':_0x480955(0xf2),'choices':_0x14b507,'loop':![],'theme':{'prefix':''}}));if(_0x5a4fa8[_0x480955(0xf8)]===0x0)throw new Error(_0x480955(0xf1));return _0x43a5b5['filter'](_0x337572=>_0x5a4fa8['includes'](_0x337572[_0x480955(0xf0)]));}export function isInteractive(){const _0x22cf86=a141_0x535c;return process[_0x22cf86(0xf3)][_0x22cf86(0xe9)]===!![];}export function requireInteractive(){const _0x4b4879=a141_0x535c;if(!isInteractive())throw new Error(_0x4b4879(0xf7)+'Use\x20--yes\x20to\x20run\x20in\x20non-interactive\x20mode,\x20or\x20pipe\x20data\x20via\x20--params.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x4d662d,_0x1bbc66){const _0x5e5197=a142_0x4f0e,_0x482634=_0x4d662d();while(!![]){try{const _0x10c886=-parseInt(_0x5e5197(0xc0))/0x1*(parseInt(_0x5e5197(0xc2))/0x2)+parseInt(_0x5e5197(0xc5))/0x3+-parseInt(_0x5e5197(0xc1))/0x4*(parseInt(_0x5e5197(0xc4))/0x5)+-parseInt(_0x5e5197(0xcf))/0x6*(parseInt(_0x5e5197(0xb8))/0x7)+parseInt(_0x5e5197(0xca))/0x8+-parseInt(_0x5e5197(0xc7))/0x9+parseInt(_0x5e5197(0xbd))/0xa*(parseInt(_0x5e5197(0xb9))/0xb);if(_0x10c886===_0x1bbc66)break;else _0x482634['push'](_0x482634['shift']());}catch(_0x2b5644){_0x482634['push'](_0x482634['shift']());}}}(a142_0x4fd0,0x200a7));import{readdirSync,statSync,readFileSync}from'fs';import{join,relative,resolve,sep}from'path';const pagesDir=resolve(process['cwd'](),'src/pages');function a142_0x4fd0(){const _0x40cc4b=['134868JREiDK','157614sipxxk','push','15CTqYfj','254523BsNyDr','filter','1455435wPdPgx','slice','path','721384baCjwL','\x5c.displayName\x5cs*=\x5cs*[\x22\x27]([^\x22\x27]+)[\x22\x27]','isDirectory','forEach','concat','6jjFTFx','replace','endsWith','374171wtFONq','11cpvFxc','match','split','join','5089650MFMhZW','replaceAll','.tsx','3lRNaDE'];a142_0x4fd0=function(){return _0x40cc4b;};return a142_0x4fd0();}export function extractTitleFromComment(_0x52bd95){const _0x311bb6=a142_0x4f0e;try{const _0xf7754d=readFileSync(_0x52bd95,'utf-8'),_0x5b32cb=_0xf7754d[_0x311bb6(0xba)](/^\s*\/\*\*?([\s\S]*?)\*\//);if(_0x5b32cb&&_0x5b32cb[0x1]){const _0x4a0f19=_0x5b32cb[0x1],_0x468260=_0x4a0f19[_0x311bb6(0xba)](/^\s*\*?\s*title\s*:\s*(.+)/im);if(_0x468260&&_0x468260[0x1])return _0x468260[0x1]['trim']();}let _0x1e3576=null;const _0x1a5f33=_0xf7754d[_0x311bb6(0xba)](/export\s+default\s+([A-Z][a-zA-Z0-9]*)/);_0x1a5f33&&_0x1a5f33[0x1]&&(_0x1e3576=_0x1a5f33[0x1]);if(!_0x1e3576){const _0x33ec78=_0xf7754d[_0x311bb6(0xba)](/export\s+default\s+function\s+([A-Z][a-zA-Z0-9]*)/);_0x33ec78&&_0x33ec78[0x1]&&(_0x1e3576=_0x33ec78[0x1]);}if(_0x1e3576){const _0xb9fed=new RegExp('\x5cb'+_0x1e3576+_0x311bb6(0xcb)),_0x5bb513=_0xf7754d[_0x311bb6(0xba)](_0xb9fed);if(_0x5bb513&&_0x5bb513[0x1])return _0x5bb513[0x1];return _0x1e3576;}return null;}catch(_0x1cbe8c){return null;}}function a142_0x4f0e(_0x4bae51,_0x2ae8b1){_0x4bae51=_0x4bae51-0xb7;const _0x4fd0cd=a142_0x4fd0();let _0x4f0e73=_0x4fd0cd[_0x4bae51];return _0x4f0e73;}export function getLocalPages(_0x56ed08=pagesDir,_0x1a55ff=pagesDir){const _0x3edcd7=a142_0x4f0e;let _0x9b1a32=[];const _0x188788=readdirSync(_0x56ed08);return _0x188788[_0x3edcd7(0xcd)](_0x328a36=>{const _0x7811ee=_0x3edcd7,_0x2b4835=join(_0x56ed08,_0x328a36),_0x1c0c4a=statSync(_0x2b4835);if(_0x1c0c4a&&_0x1c0c4a[_0x7811ee(0xcc)]())_0x9b1a32=_0x9b1a32[_0x7811ee(0xce)](getLocalPages(_0x2b4835,_0x1a55ff));else{if(_0x328a36['endsWith'](_0x7811ee(0xbf))){let _0x54add2=relative(_0x1a55ff,_0x2b4835);_0x54add2['endsWith']('index.tsx')?_0x54add2=_0x54add2[_0x7811ee(0xd0)](/index\.tsx$/,''):_0x54add2=_0x54add2[_0x7811ee(0xd0)](/\.tsx$/,'');_0x54add2[_0x7811ee(0xb7)](sep)&&(_0x54add2=_0x54add2[_0x7811ee(0xc8)](0x0,-0x1));const _0xb6bcaa=_0x54add2[_0x7811ee(0xbb)](sep)[_0x7811ee(0xbc)]('/'),_0x2fb8c6=extractTitleFromComment(_0x2b4835),_0x20a4c5=_0x2fb8c6||_0xb6bcaa;_0x9b1a32[_0x7811ee(0xc3)]({'path':_0xb6bcaa[_0x7811ee(0xbe)]('$',':'),'label':_0x20a4c5});}}}),_0x9b1a32[_0x3edcd7(0xc6)](_0x137cba=>_0x137cba[_0x3edcd7(0xc9)]!=='');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2bd8ca,_0x20558f){const _0x3b4e7a=a143_0x1500,_0x2df507=_0x2bd8ca();while(!![]){try{const _0x3caa23=parseInt(_0x3b4e7a(0x1e6))/0x1+parseInt(_0x3b4e7a(0x1e7))/0x2+-parseInt(_0x3b4e7a(0x1ec))/0x3+parseInt(_0x3b4e7a(0x1ed))/0x4*(-parseInt(_0x3b4e7a(0x1db))/0x5)+-parseInt(_0x3b4e7a(0x1e4))/0x6*(parseInt(_0x3b4e7a(0x1ee))/0x7)+parseInt(_0x3b4e7a(0x1dc))/0x8+parseInt(_0x3b4e7a(0x1eb))/0x9;if(_0x3caa23===_0x20558f)break;else _0x2df507['push'](_0x2df507['shift']());}catch(_0x4230fa){_0x2df507['push'](_0x2df507['shift']());}}}(a143_0x5e7f,0xf21cb));import{getLocalPages}from'../../../commands/menu/shared/local-pages.js';import{getOnlineMenuList,createMenus}from'../../../commands/menu/shared/service.js';import{isUrlReachable,isValidCssHttpsUrl,isValidJsHttpsUrl}from'../../../commands/menu/shared/valid-url.js';function a143_0x1500(_0x257f87,_0x4a0dd4){_0x257f87=_0x257f87-0x1db;const _0x5e7f69=a143_0x5e7f();let _0x150085=_0x5e7f69[_0x257f87];return _0x150085;}export function validateJsUrl(_0x1b7ba7){const _0xf07814=a143_0x1500,_0x14da88=[];return!isValidJsHttpsUrl(_0x1b7ba7)&&_0x14da88[_0xf07814(0x1df)](_0xf07814(0x1de)),{'ok':_0x14da88['length']===0x0,'errors':_0x14da88};}export function validateCssUrl(_0x41d77e){const _0x221ab8=a143_0x1500,_0xb9d9=[];return!isValidCssHttpsUrl(_0x41d77e)&&_0xb9d9[_0x221ab8(0x1df)](_0x221ab8(0x1e3)),{'ok':_0xb9d9[_0x221ab8(0x1ef)]===0x0,'errors':_0xb9d9};}export async function validateJsUrlReachable(_0x4c1ac0){const _0x2a3b70=a143_0x1500,_0x5a1e2a=validateJsUrl(_0x4c1ac0);if(!_0x5a1e2a['ok'])return _0x5a1e2a;const _0x4fe8fd=await isUrlReachable(_0x4c1ac0);if(!_0x4fe8fd)_0x5a1e2a['errors'][_0x2a3b70(0x1df)](_0x2a3b70(0x1f0));return{'ok':_0x5a1e2a[_0x2a3b70(0x1ea)][_0x2a3b70(0x1ef)]===0x0,'errors':_0x5a1e2a[_0x2a3b70(0x1ea)]};}export async function validateCssUrlReachable(_0x622dd6){const _0x48824d=a143_0x1500,_0x5aa3c2=validateCssUrl(_0x622dd6);if(!_0x5aa3c2['ok'])return _0x5aa3c2;const _0x1b0bce=await isUrlReachable(_0x622dd6);if(!_0x1b0bce)_0x5aa3c2[_0x48824d(0x1ea)]['push'](_0x48824d(0x1e9));return{'ok':_0x5aa3c2[_0x48824d(0x1ea)]['length']===0x0,'errors':_0x5aa3c2[_0x48824d(0x1ea)]};}export function buildCompareRows(_0x1a306d,_0x2a74df){const _0x55d62c=a143_0x1500;return _0x1a306d[_0x55d62c(0x1dd)](_0x27b0c9=>({'label':_0x27b0c9[_0x55d62c(0x1e1)],'path':_0x27b0c9[_0x55d62c(0x1e5)],'local':!![],'online':_0x2a74df[_0x55d62c(0x1e8)](_0x27b0c9[_0x55d62c(0x1e5)])}));}export async function doCreateMenus(_0x5806f4,_0x52436a,_0x509e94,_0x11dfbe){const _0x5b2e8d=a143_0x1500,_0x5e501c=await createMenus(_0x5806f4,_0x52436a,_0x509e94,_0x11dfbe);return{'created':_0x5e501c['length'],'failed':0x0,'labels':_0x509e94[_0x5b2e8d(0x1dd)](_0xbdd760=>_0xbdd760[_0x5b2e8d(0x1e1)]),'menus':_0x5e501c};}function a143_0x5e7f(){const _0x2ce790=['30CyZnrb','2537168bMtlBT','map','JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','push','filter','label','resources','CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','672648jRFGwp','path','1881546eDjoyv','211088SkgYwZ','has','CSS\x20URL\x20is\x20unreachable','errors','19102464tCSVii','2480793iWUqLm','1290308czzQbG','42yvyCWM','length','JS\x20URL\x20is\x20unreachable'];a143_0x5e7f=function(){return _0x2ce790;};return a143_0x5e7f();}export function filterMenusWithResources(_0x3c3512){const _0x5020de=a143_0x1500;return _0x3c3512[_0x5020de(0x1e0)](_0x42b45b=>_0x42b45b[_0x5020de(0x1e2)][_0x5020de(0x1ef)]>0x0);}export async function fetchMenuData(_0xc9ef83,_0x3d4738){const _0x7dd9ab=a143_0x1500,_0x4aa51d=getLocalPages(),_0x18fd45=await getOnlineMenuList(_0xc9ef83,_0x3d4738),_0x3b5c51=new Set(_0x18fd45[_0x7dd9ab(0x1dd)](_0x5e8b1a=>_0x5e8b1a['path']));return{'localPages':_0x4aa51d,'onlineMenuList':_0x18fd45,'onlinePaths':_0x3b5c51};}export async function fetchOnlineMenuList(_0x14f823,_0x109aef){return getOnlineMenuList(_0x14f823,_0x109aef);}
|
|
@@ -1 +1 @@
|
|
|
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.');}
|
|
1
|
+
const a144_0x3e120c=a144_0x7572;(function(_0x2a0f4b,_0x507bdb){const _0x4a9944=a144_0x7572,_0x3f861c=_0x2a0f4b();while(!![]){try{const _0x5652d3=parseInt(_0x4a9944(0x112))/0x1+-parseInt(_0x4a9944(0xf8))/0x2+-parseInt(_0x4a9944(0x11a))/0x3+-parseInt(_0x4a9944(0x11d))/0x4+parseInt(_0x4a9944(0xf5))/0x5*(-parseInt(_0x4a9944(0x11b))/0x6)+parseInt(_0x4a9944(0xed))/0x7+parseInt(_0x4a9944(0x12b))/0x8;if(_0x5652d3===_0x507bdb)break;else _0x3f861c['push'](_0x3f861c['shift']());}catch(_0x5542b0){_0x3f861c['push'](_0x3f861c['shift']());}}}(a144_0x5829,0xa0dca));import{CliError,CliErrors}from'../../../errors.js';import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';export const MAX_MENU_SORT=0x7fffffff;function a144_0x7572(_0x296a6b,_0x53751d){_0x296a6b=_0x296a6b-0xe9;const _0x5829fb=a144_0x5829();let _0x75726=_0x5829fb[_0x296a6b];return _0x75726;}export const MENU_ID_FLAG={'name':'id','type':'number','required':!![],'description':a144_0x3e120c(0x108)};export const MENU_SORT_FLAG={'name':'sort','type':a144_0x3e120c(0x135),'description':a144_0x3e120c(0x129)};export const MENU_PARENT_ID_FLAG={'name':'parent-id','type':a144_0x3e120c(0xf9),'description':'Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node'};export const MENU_EXPECT_PARENT_ID_FLAG={'name':a144_0x3e120c(0x10b),'type':a144_0x3e120c(0xf9),'description':a144_0x3e120c(0xe9)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a144_0x3e120c(0x110),'type':a144_0x3e120c(0xf9),'description':'Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches'},{'name':a144_0x3e120c(0x144),'type':a144_0x3e120c(0x135),'description':a144_0x3e120c(0x131)}];export function validateExactId(_0x1eb29){const _0x249880=a144_0x3e120c,_0x5412cf=_0x1eb29[_0x249880(0x101)]('id');if(!Number[_0x249880(0x115)](_0x5412cf)||_0x5412cf<=0x0)throw CliErrors[_0x249880(0x12c)](_0x249880(0xea));return _0x5412cf;}export function validateSort(_0xaae954,_0x3886f0=a144_0x3e120c(0xf3)){const _0xb6fca2=a144_0x3e120c;if(!hasFlag(_0xaae954,_0x3886f0))return undefined;const _0x1168e8=_0xaae954[_0xb6fca2(0x101)](_0x3886f0);if(!Number[_0xb6fca2(0x115)](_0x1168e8)||_0x1168e8<0x0||_0x1168e8>MAX_MENU_SORT)throw menuError(_0xb6fca2(0x137),'--'+_0x3886f0+_0xb6fca2(0xfa)+MAX_MENU_SORT+'.',_0xb6fca2(0x10a));return _0x1168e8;}export function nextSiblingSort(_0x2c5cf6,_0xdf3681,_0x353369){const _0x3cb94a=a144_0x3e120c,_0x45188e=getChildren(_0x2c5cf6,_0xdf3681)['map'](_0x1bace3=>_0x1bace3[_0x3cb94a(0xf3)])[_0x3cb94a(0x105)](_0x4b88e6=>typeof _0x4b88e6===_0x3cb94a(0x135));if(_0x45188e['length']===0x0)return 0x0;const _0x4e8ace=Math[_0x3cb94a(0x139)](..._0x45188e);if(_0x4e8ace>=MAX_MENU_SORT)throw menuError('menu_sort_overflow','Cannot\x20append\x20a\x20'+_0x353369+'\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20'+_0x4e8ace+'.',_0x3cb94a(0x103)+MAX_MENU_SORT+_0x3cb94a(0x121));return _0x4e8ace+0x1;}export function requireExplicitYes(_0x52b043){const _0xca2813=a144_0x3e120c;if(_0x52b043[_0xca2813(0x143)](_0xca2813(0x10d)))return;if(!_0x52b043['bool'](_0xca2813(0x13d)))throw menuError(_0xca2813(0x100),_0xca2813(0x138),_0xca2813(0x130));}export async function fetchMutationSnapshot(_0x528afd,_0x5c2486,_0x4f0db2){const _0x94d366=a144_0x3e120c;try{return await fetchMenuSnapshot(_0x528afd['appCode'],_0x528afd['cookie']);}catch(_0xe0dc2b){throw mapMenuApiError(_0xe0dc2b,_0x94d366(0x11f)+_0x5c2486,_0x4f0db2);}}export async function recheckMutationSnapshot(_0x17f4bb,_0xc830b7,_0x97ca44,_0x29290b){const _0x494ff7=a144_0x3e120c;let _0x4719ab;try{_0x4719ab=await fetchMenuSnapshot(_0x17f4bb['appCode'],_0x17f4bb[_0x494ff7(0x134)]);}catch(_0x483e99){const _0x2eb67f=mapMenuApiError(_0x483e99,_0x494ff7(0x149)+_0x97ca44,_0x29290b);throw menuFailure(_0x2eb67f,_0xc830b7,{'stage':'pre-write-recheck','failed':_0x29290b==null?{}:{'id':_0x29290b}});}if(_0x4719ab[_0x494ff7(0x125)]!==_0xc830b7['snapshotHash']){const _0x142194=menuError(_0x494ff7(0x122),_0x494ff7(0x124)+_0x97ca44+';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.');throw menuFailure(_0x142194,_0xc830b7,{'stage':_0x494ff7(0xfc),'failed':{..._0x29290b==null?{}:{'id':_0x29290b},'expectedSnapshotHash':_0xc830b7[_0x494ff7(0x106)],'currentSnapshotHash':_0x4719ab['hash']}});}return _0x4719ab;}export function parseParentId(_0x1f2c22,_0xfa7b75,_0xec1b96={}){const _0x3a9d46=a144_0x3e120c;if(!hasFlag(_0x1f2c22,_0xfa7b75)){if(_0xec1b96['required'])throw CliErrors[_0x3a9d46(0xf1)](_0xfa7b75);return undefined;}const _0x409cdf=_0x1f2c22['str'](_0xfa7b75)[_0x3a9d46(0x128)]();if(_0x409cdf['toLowerCase']()===_0x3a9d46(0x12d))return null;if(!/^\d+$/[_0x3a9d46(0xeb)](_0x409cdf))throw CliErrors['validation']('--'+_0xfa7b75+_0x3a9d46(0xf4));const _0x774c8f=Number(_0x409cdf);if(!Number[_0x3a9d46(0x115)](_0x774c8f)||_0x774c8f<=0x0)throw CliErrors['validation']('--'+_0xfa7b75+_0x3a9d46(0xf4));return _0x774c8f;}export function requireMenu(_0x53a269,_0x2b3578){const _0x707159=a144_0x3e120c,_0x1f3178=_0x53a269[_0x707159(0x107)]['get'](_0x2b3578);if(!_0x1f3178)throw menuError(_0x707159(0x13b),_0x707159(0xff)+_0x2b3578,_0x707159(0x119));return _0x1f3178;}export function requireFolder(_0xa9701a,_0x2f8699){const _0x1f37f8=a144_0x3e120c,_0x583a06=requireMenu(_0xa9701a,_0x2f8699);if(_0x583a06[_0x1f37f8(0x10f)]!==_0x1f37f8(0xec))throw menuError(_0x1f37f8(0x104),'Menu\x20'+_0x2f8699+_0x1f37f8(0x113)+(_0x583a06[_0x1f37f8(0x10f)]||_0x1f37f8(0x118))+_0x1f37f8(0xf7),_0x1f37f8(0x133));return _0x583a06;}export function assertExpectedState(_0xd758,_0x64d308){const _0x3f0256=a144_0x3e120c;if(hasFlag(_0xd758,'expect-parent-id')){const _0xf66008=parseParentId(_0xd758,'expect-parent-id',{'required':!![]});if(_0x64d308['parentId']!==_0xf66008)throw stateDrift('Menu\x20'+_0x64d308['id']+_0x3f0256(0x146)+formatParent(_0xf66008)+_0x3f0256(0x109)+formatParent(_0x64d308[_0x3f0256(0xf6)])+'.');}if(hasFlag(_0xd758,'expect-path')){const _0xf3d231=_0xd758[_0x3f0256(0xf0)]('expect-path');if(_0x64d308[_0x3f0256(0x13e)]!==_0xf3d231)throw stateDrift('Menu\x20'+_0x64d308['id']+'\x20path\x20changed:\x20expected\x20'+JSON[_0x3f0256(0x126)](_0xf3d231)+',\x20current\x20'+JSON['stringify'](_0x64d308[_0x3f0256(0x13e)])+'.');}if(hasFlag(_0xd758,_0x3f0256(0x144))){const _0xb0860d=_0xd758['num']('expected-children-count');if(!Number[_0x3f0256(0x115)](_0xb0860d)||_0xb0860d<0x0)throw CliErrors[_0x3f0256(0x12c)]('--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.');if(_0x64d308[_0x3f0256(0x14a)]!==_0xb0860d)throw stateDrift(_0x3f0256(0xf2)+_0x64d308['id']+_0x3f0256(0x141)+_0xb0860d+_0x3f0256(0x109)+_0x64d308[_0x3f0256(0x14a)]+'.');}}export function assertVerified(_0x1262be,_0x31db06,_0x393226=a144_0x3e120c(0x142)){if(!_0x1262be)throw menuError('menu_verification_failed',_0x31db06,_0x393226);}export function mutationResult(_0x2b52ad){const _0x5a80e8=a144_0x3e120c;return{'operation':_0x2b52ad[_0x5a80e8(0x114)],'selector':_0x2b52ad['selector'],'before':_0x2b52ad[_0x5a80e8(0x111)],'after':_0x2b52ad[_0x5a80e8(0x132)],'dryRun':_0x2b52ad['dryRun'],'backend':_0x2b52ad['backend'],..._0x2b52ad['plannedActions']?{'plannedActions':_0x2b52ad[_0x5a80e8(0xee)]}:{},..._0x2b52ad[_0x5a80e8(0x136)]?{'targets':_0x2b52ad['targets']}:{},..._0x2b52ad[_0x5a80e8(0x11c)]?{'deleteOrder':_0x2b52ad[_0x5a80e8(0x11c)]}:{},'snapshotHash':_0x2b52ad[_0x5a80e8(0x106)],..._0x2b52ad[_0x5a80e8(0x117)]?{'cascade':_0x2b52ad[_0x5a80e8(0x117)]}:{},..._0x2b52ad[_0x5a80e8(0x13f)]?{'planFile':_0x2b52ad[_0x5a80e8(0x13f)]}:{},'succeeded':_0x2b52ad['succeeded']??[],'failed':_0x2b52ad[_0x5a80e8(0x102)]??[],'warnings':_0x2b52ad[_0x5a80e8(0xfe)]??[],'verification':_0x2b52ad[_0x5a80e8(0x10e)],'error':_0x2b52ad['error']};}export function menuDryRunResult(_0x3baf5d,_0x26e76e){return{..._0x3baf5d,..._0x26e76e};}export function menuFailure(_0x4e0b56,_0x181eae,_0x560be3){const _0x55a644=a144_0x3e120c,_0x121d9f=mutationResult({..._0x181eae,'after':_0x560be3['after']===undefined?_0x181eae[_0x55a644(0x132)]:_0x560be3[_0x55a644(0x132)],'backend':_0x560be3[_0x55a644(0xfb)]??_0x181eae['backend'],'dryRun':![],'succeeded':_0x560be3['succeeded']??[],'failed':_0x560be3[_0x55a644(0x140)]??[{..._0x560be3[_0x55a644(0x102)]??{},'stage':_0x560be3['stage'],'code':_0x4e0b56['code'],'message':_0x4e0b56['message']}],'warnings':[..._0x181eae['warnings'],..._0x560be3['warnings']??[]],'verification':_0x560be3[_0x55a644(0x10e)],'error':{'code':_0x4e0b56[_0x55a644(0x11e)],'message':_0x4e0b56['message'],..._0x4e0b56[_0x55a644(0x147)]?{'hint':_0x4e0b56[_0x55a644(0x147)]}:{}}});return Object[_0x55a644(0x145)](_0x4e0b56,_0x55a644(0x123),{'value':_0x121d9f,'enumerable':!![],'configurable':!![]}),_0x4e0b56;}export function asVerificationError(_0x2613d5,_0x4e41c9){const _0x5e0ad2=a144_0x3e120c;if(_0x2613d5 instanceof CliError&&_0x2613d5[_0x5e0ad2(0x11e)]===_0x5e0ad2(0x12e))return _0x2613d5;const _0x401250=_0x2613d5 instanceof Error?_0x2613d5[_0x5e0ad2(0xef)]:String(_0x2613d5);return menuError(_0x5e0ad2(0x12e),''+_0x4e41c9+(_0x401250?':\x20'+_0x401250:''),_0x5e0ad2(0x127));}export function describeMenuErrorCause(_0x2fcc4b,_0x4a2330,_0x3fc4de){const _0x2d332c=a144_0x3e120c,_0xa7d191=mapMenuApiError(_0x2fcc4b,_0x4a2330,_0x3fc4de);return{'causeCode':_0xa7d191[_0x2d332c(0x11e)],'causeMessage':_0xa7d191[_0x2d332c(0xef)]};}export function hasFlag(_0xe3bb8a,_0x53a47e){const _0x1ef48b=a144_0x3e120c;return Object[_0x1ef48b(0x13a)]['hasOwnProperty'][_0x1ef48b(0x116)](_0xe3bb8a['rawFlags'],_0x53a47e)&&_0xe3bb8a['rawFlags'][_0x53a47e]!==undefined;}export function toApiParentId(_0x3d289a){return _0x3d289a??0x0;}export function formatParent(_0x1ef5ae){const _0x20d88e=a144_0x3e120c;return _0x1ef5ae==null?_0x20d88e(0x12d):String(_0x1ef5ae);}function a144_0x5829(){const _0x322bb0=['expect-parent-id','Failed\x20to\x20','dry-run','verification','type','expect-path','before','157317jSDYqK','\x20is\x20type\x20\x22','operation','isSafeInteger','call','cascade','unknown','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.','1718607sPuqtm','12ZJFllS','deleteOrder','2188360CccpHX','code','read\x20online\x20menu\x20facts\x20before\x20','\x20menu\x20',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','menu_state_drift','data','Online\x20menu\x20state\x20changed\x20before\x20','hash','stringify','The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.','trim','Sibling\x20sort\x20value\x20(non-negative\x20integer)','api_error','15294240GUbpUA','validation','root','menu_verification_failed','Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches','after','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','cookie','number','targets','menu_sort_invalid','This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','max','prototype','menu_not_found','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','yes','path','planFile','failedRecords','\x20child\x20count\x20changed:\x20expected\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','bool','expected-children-count','defineProperty','\x20parent\x20changed:\x20expected\x20','hint','Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.','recheck\x20online\x20menu\x20facts\x20before\x20','childrenCount','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.','test','folder','7993860xTKOIu','plannedActions','message','str','flagMissing','Menu\x20','sort','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','1750305oVgGSu','parentId','\x22,\x20not\x20folder.','1464212zWfzWc','string','\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20','backend','pre-write-recheck','Permission\x20denied\x20while\x20attempting\x20to\x20','warnings','Online\x20menu\x20not\x20found:\x20','menu_confirmation_required','num','failed','Reorder\x20sibling\x20menus\x20below\x20','menu_parent_not_folder','filter','snapshotHash','byId','Exact\x20online\x20menu\x20id',',\x20current\x20','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.'];a144_0x5829=function(){return _0x322bb0;};return a144_0x5829();}export function menuError(_0x1d5c80,_0x50266a,_0x57c388){return new CliError(_0x1d5c80,0x1,_0x50266a,_0x57c388);}export function mapMenuApiError(_0x2c44cd,_0x3a89f2,_0x3686e2){const _0x4ed1b0=a144_0x3e120c;if(_0x2c44cd instanceof CliError&&_0x2c44cd[_0x4ed1b0(0x11e)]!==_0x4ed1b0(0x12a))return _0x2c44cd;const _0x1610a3=_0x2c44cd instanceof Error?_0x2c44cd[_0x4ed1b0(0xef)]:String(_0x2c44cd);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x4ed1b0(0xeb)](_0x1610a3))return menuError('menu_permission_denied',_0x4ed1b0(0xfd)+_0x3a89f2+(_0x3686e2?_0x4ed1b0(0x120)+_0x3686e2:'')+'.',_0x4ed1b0(0x13c));return menuError('menu_mutation_failed',_0x4ed1b0(0x10c)+_0x3a89f2+(_0x3686e2?_0x4ed1b0(0x120)+_0x3686e2:'')+':\x20'+_0x1610a3,_0x4ed1b0(0x12f));}export function isMenuResponseLoss(_0x4c270e){const _0x240e56=a144_0x3e120c,_0x1f18e6=_0x4c270e instanceof Error?_0x4c270e[_0x240e56(0xef)]:String(_0x4c270e);if(_0x4c270e instanceof CliError)return _0x4c270e[_0x240e56(0x11e)]==='api_error'&&/^Request (?:failed|timeout):/i[_0x240e56(0xeb)](_0x1f18e6);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i[_0x240e56(0xeb)](_0x1f18e6);}function stateDrift(_0x225631){const _0x445458=a144_0x3e120c;return menuError(_0x445458(0x122),_0x225631,_0x445458(0x148));}
|