@lovrabet/rabetbase-cli 2.4.3 → 2.4.4-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.d.ts +2 -0
- package/lib/commands/db/diff-refresh-start.js +1 -0
- package/lib/commands/db/diff-refresh-status.d.ts +2 -0
- package/lib/commands/db/diff-refresh-status.js +1 -0
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/notification/config-create.d.ts +2 -0
- package/lib/commands/notification/config-create.js +1 -0
- package/lib/commands/notification/config-delete.d.ts +2 -0
- package/lib/commands/notification/config-delete.js +1 -0
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.d.ts +2 -0
- package/lib/commands/notification/config-update.js +1 -0
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.d.ts +97 -0
- package/lib/commands/notification/shared.js +1 -0
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/react/create.js +1 -1
- package/lib/commands/page/react/detail.js +1 -1
- package/lib/commands/page/react/list.js +1 -1
- package/lib/commands/page/react/publish.js +1 -1
- package/lib/commands/page/react/shared.js +1 -1
- package/lib/commands/page/react/syntax.js +1 -1
- package/lib/commands/page/react/template.js +1 -1
- package/lib/commands/page/react/update.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/permit/index.js +1 -1
- package/lib/commands/permit/page-get.js +1 -1
- package/lib/commands/permit/page-set.js +1 -1
- package/lib/commands/permit/role-apis-set.js +1 -1
- package/lib/commands/permit/role-menus-set.js +1 -1
- package/lib/commands/permit/role-menus.js +1 -1
- package/lib/commands/permit/shared.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.d.ts +1 -0
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.d.ts +11 -0
- package/lib/commands/project/create/materialize-project-template.js +1 -0
- package/lib/commands/project/create/project-name.d.ts +2 -0
- package/lib/commands/project/create/project-name.js +1 -0
- package/lib/commands/project/create/project-template-archive.d.ts +6 -0
- package/lib/commands/project/create/project-template-archive.js +1 -0
- package/lib/commands/project/create/project-template-path.d.ts +1 -3
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.d.ts +2 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/create.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.d.ts +2 -0
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.d.ts +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +29 -2
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.d.ts +13 -0
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +9 -4
- package/skills/rabetbase/SKILL.md +33 -22
- package/skills/rabetbase/guides/backend-function.md +5 -3
- package/skills/rabetbase/guides/bff-creation-workflow.md +2 -2
- package/skills/rabetbase/guides/conflict-detection.md +2 -2
- package/skills/rabetbase/guides/database-connection-workflow.md +39 -5
- package/skills/rabetbase/guides/react-custom-page-workflow.md +16 -4
- package/skills/rabetbase/guides/sql-creation-workflow.md +4 -2
- package/skills/rabetbase/guides/sql-mybatis.md +2 -2
- package/skills/rabetbase/knowledge/page-schema/YtPage.md +3 -37
- package/skills/rabetbase/knowledge/react-page/generation-standards.md +14 -3
- package/skills/rabetbase/references/rabetbase-app-config.md +2 -2
- package/skills/rabetbase/references/rabetbase-bff-push.md +4 -5
- package/skills/rabetbase/references/rabetbase-bff-save.md +3 -3
- package/skills/rabetbase/references/rabetbase-config.md +2 -2
- package/skills/rabetbase/references/rabetbase-db-analyze.md +2 -2
- package/skills/rabetbase/references/rabetbase-db-detail.md +3 -0
- package/skills/rabetbase/references/rabetbase-db-diff-refresh.md +53 -0
- package/skills/rabetbase/references/rabetbase-db-diff.md +40 -21
- package/skills/rabetbase/references/rabetbase-db-list.md +1 -1
- package/skills/rabetbase/references/rabetbase-kb.md +5 -3
- package/skills/rabetbase/references/rabetbase-menu-asset-update.md +9 -10
- package/skills/rabetbase/references/rabetbase-menu-external-link-update.md +1 -3
- package/skills/rabetbase/references/rabetbase-menu-regroup-start.md +2 -3
- package/skills/rabetbase/references/rabetbase-notification-config-list.md +2 -2
- package/skills/rabetbase/references/rabetbase-notification-config-mutations.md +56 -0
- package/skills/rabetbase/references/rabetbase-page-react-detail.md +1 -1
- package/skills/rabetbase/references/rabetbase-page-react-list.md +1 -1
- package/skills/rabetbase/references/rabetbase-page-react-publish.md +2 -2
- package/skills/rabetbase/references/rabetbase-project-create.md +3 -0
- package/skills/rabetbase/references/rabetbase-run.md +1 -1
- package/skills/rabetbase/references/rabetbase-sql-create.md +1 -1
- package/skills/rabetbase/references/rabetbase-sql-push.md +3 -4
- package/skills/rabetbase/references/rabetbase-user-account.md +0 -1
- package/skills/rabetbase.manifest.json +5 -5
- package/templates/README.md +14 -2
- package/lib/commands/project/create/non-interactive.d.ts +0 -9
- package/lib/commands/project/create/non-interactive.js +0 -1
- package/lib/utils/copy-directory.d.ts +0 -1
- package/lib/utils/copy-directory.js +0 -1
- package/skills/rabetbase/knowledge/page-schema/LrSmartEcharts.md +0 -291
- package/skills/rabetbase/knowledge/page-schema/LrSmartStatistic.md +0 -223
- package/templates/projects/sub-app-react-demo/.prettierrc +0 -1
- package/templates/projects/sub-app-react-demo/CHANGELOG.md +0 -67
- package/templates/projects/sub-app-react-demo/README.md +0 -246
- package/templates/projects/sub-app-react-demo/docs/quick-start.md +0 -245
- package/templates/projects/sub-app-react-demo/index.html +0 -27
- package/templates/projects/sub-app-react-demo/package.json +0 -34
- package/templates/projects/sub-app-react-demo/public/logo.svg +0 -1
- package/templates/projects/sub-app-react-demo/public/vite.svg +0 -1
- package/templates/projects/sub-app-react-demo/src/api/api.ts +0 -26
- package/templates/projects/sub-app-react-demo/src/api/client.ts +0 -32
- package/templates/projects/sub-app-react-demo/src/components/demo-page-container/DemoPageContainer.module.css +0 -28
- package/templates/projects/sub-app-react-demo/src/components/demo-page-container/DemoPageContainer.tsx +0 -55
- package/templates/projects/sub-app-react-demo/src/layouts/MainLayout.tsx +0 -308
- package/templates/projects/sub-app-react-demo/src/main.tsx +0 -52
- package/templates/projects/sub-app-react-demo/src/pages/dashboard/index.tsx +0 -570
- package/templates/projects/sub-app-react-demo/src/pages/data-screen/index.tsx +0 -531
- package/templates/projects/sub-app-react-demo/src/pages/index.module.css +0 -500
- package/templates/projects/sub-app-react-demo/src/pages/index.tsx +0 -641
- package/templates/projects/sub-app-react-demo/src/pages/sdk-demo/index.tsx +0 -536
- package/templates/projects/sub-app-react-demo/src/pages/workbench/index.module.css +0 -295
- package/templates/projects/sub-app-react-demo/src/pages/workbench/index.tsx +0 -242
- package/templates/projects/sub-app-react-demo/src/router/index.tsx +0 -30
- package/templates/projects/sub-app-react-demo/src/style.css +0 -108
- package/templates/projects/sub-app-react-demo/src/utils/api.ts +0 -12
- package/templates/projects/sub-app-react-demo/src/vite-env.d.ts +0 -2
- package/templates/projects/sub-app-react-demo/tsconfig.json +0 -26
- package/templates/projects/sub-app-react-demo/vite.config.ts +0 -111
package/lib/commands/kb/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a105_0x501d93=a105_0x6a4e;(function(_0x202c8a,_0x2074b3){const _0x207ab4=a105_0x6a4e,_0x3f57d5=_0x202c8a();while(!![]){try{const _0x333b4f=-parseInt(_0x207ab4(0x6d))/0x1+parseInt(_0x207ab4(0x69))/0x2+parseInt(_0x207ab4(0x6e))/0x3+parseInt(_0x207ab4(0x67))/0x4+parseInt(_0x207ab4(0x68))/0x5*(-parseInt(_0x207ab4(0x6f))/0x6)+parseInt(_0x207ab4(0x6c))/0x7+-parseInt(_0x207ab4(0x74))/0x8;if(_0x333b4f===_0x2074b3)break;else _0x3f57d5['push'](_0x3f57d5['shift']());}catch(_0x366a01){_0x3f57d5['push'](_0x3f57d5['shift']());}}}(a105_0x1f94,0xcf6e3));function a105_0x6a4e(_0x329713,_0x5d13bf){_0x329713=_0x329713-0x67;const _0x1f945a=a105_0x1f94();let _0x6a4e15=_0x1f945a[_0x329713];return _0x6a4e15;}import{fetchAllCompanyKnowledgeBases,projectKb}from'../../commands/kb/shared.js';export const kbList={'service':'kb','command':'list','description':a105_0x501d93(0x71),'risk':'read','requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'title','type':a105_0x501d93(0x70),'required':![],'description':a105_0x501d93(0x6a)}],async 'execute'(_0x2d8e7f){const _0x55b208=a105_0x501d93,_0x20f63c=_0x2d8e7f[_0x55b208(0x75)]('title')[_0x55b208(0x73)](),_0x216607=await fetchAllCompanyKnowledgeBases(_0x2d8e7f,{..._0x20f63c?{'title':_0x20f63c}:{}}),_0x163445=_0x216607['map'](projectKb);return{'ok':!![],'data':{'total':_0x163445[_0x55b208(0x6b)],'knowledgeBases':_0x163445},'message':'Found\x20'+_0x163445[_0x55b208(0x6b)]+_0x55b208(0x72)+_0x2d8e7f['appCode']};}};function a105_0x1f94(){const _0x2da284=['str','6077416wDuQZr','10muQrxX','780810HfVsaW','Filter\x20by\x20knowledge-base\x20title','length','1963458xBPRfr','748321GxeXKy','4869240vkHFLk','2416242PhxYEy','string','List\x20company\x20knowledge\x20bases\x20for\x20the\x20resolved\x20app','\x20company\x20knowledge\x20base(s)\x20for\x20','trim','11279704ZeQlpw'];a105_0x1f94=function(){return _0x2da284;};return a105_0x1f94();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a104_0x1474cf=a104_0xf323;(function(_0x362bed,_0x411a0c){const _0x46ffa7=a104_0xf323,_0x2d7987=_0x362bed();while(!![]){try{const _0x2d085f=-parseInt(_0x46ffa7(0x1f4))/0x1*(parseInt(_0x46ffa7(0x1fc))/0x2)+-parseInt(_0x46ffa7(0x1b1))/0x3*(-parseInt(_0x46ffa7(0x202))/0x4)+parseInt(_0x46ffa7(0x1ab))/0x5+parseInt(_0x46ffa7(0x1ee))/0x6*(parseInt(_0x46ffa7(0x1fa))/0x7)+-parseInt(_0x46ffa7(0x1b9))/0x8+-parseInt(_0x46ffa7(0x1e0))/0x9*(parseInt(_0x46ffa7(0x1c2))/0xa)+parseInt(_0x46ffa7(0x1e8))/0xb;if(_0x2d085f===_0x411a0c)break;else _0x2d7987['push'](_0x2d7987['shift']());}catch(_0x453425){_0x2d7987['push'](_0x2d7987['shift']());}}}(a104_0xf45a,0x24b18));import{createHash}from'node:crypto';import{readFile,stat}from'node:fs/promises';import{resolve}from'node:path';import{TextDecoder}from'node:util';import{getEnterpriseKnowledgeBase,getPlatformErrorCode,listEnterpriseKnowledgeBases}from'../../core/api-client.js';import{CliError}from'../../errors.js';const LIST_PAGE_SIZE=0x32,DATA_NOT_EXIST_ERROR_CODE=a104_0x1474cf(0x1d0);export function kbError(_0x428675,_0x197526,_0x2b85f2){return new CliError(_0x428675,0x1,_0x197526,_0x2b85f2);}export function readKbId(_0x43a99b){const _0x1e24b5=a104_0x1474cf,_0x15635b=_0x43a99b['num']('id');if(!Number[_0x1e24b5(0x1e5)](_0x15635b)||_0x15635b<=0x0)throw kbError(_0x1e24b5(0x1c5),_0x1e24b5(0x201));return _0x15635b;}export function requireKbExplicitYes(_0x194eb3){const _0x481123=a104_0x1474cf;if(_0x194eb3[_0x481123(0x1c8)](_0x481123(0x1d9))||_0x194eb3['bool'](_0x481123(0x1b8)))return;throw kbError(_0x481123(0x1dd),_0x481123(0x1e2),_0x481123(0x1fb));}function sha256(_0x357327){const _0x40f2ae=a104_0x1474cf;return _0x40f2ae(0x1ff)+createHash('sha256')[_0x40f2ae(0x1df)](_0x357327)[_0x40f2ae(0x1ad)]('hex');}function a104_0xf323(_0x113531,_0x3a735d){_0x113531=_0x113531-0x1a8;const _0xf45a7a=a104_0xf45a();let _0xf3234c=_0xf45a7a[_0x113531];return _0xf3234c;}export function inspectKbContent(_0x1ab1ea){const _0x190ea7=a104_0x1474cf,_0x46f752=Buffer[_0x190ea7(0x1c1)](_0x1ab1ea,_0x190ea7(0x1b2));return{'content':_0x1ab1ea,'byteSize':_0x46f752['byteLength'],'contentHash':sha256(_0x46f752)};}export async function readKbFile(_0x258fc6){const _0x394970=a104_0x1474cf,_0xb0d18=_0x258fc6['trim']();if(!_0xb0d18)throw kbError(_0x394970(0x1b4),_0x394970(0x1ea),_0x394970(0x1e9));const _0xe7f0b9=resolve(_0xb0d18);let _0x4a8bb3;try{_0x4a8bb3=await stat(_0xe7f0b9);}catch(_0x4e286d){throw kbError(_0x394970(0x1b7),_0x394970(0x1d4)+_0xb0d18,_0x4e286d instanceof Error?_0x4e286d[_0x394970(0x203)]:String(_0x4e286d));}if(!_0x4a8bb3['isFile']())throw kbError(_0x394970(0x1c0),_0x394970(0x1e7)+_0xb0d18);let _0x2b5584;try{_0x2b5584=await readFile(_0xe7f0b9);}catch(_0x295f34){throw kbError(_0x394970(0x1b7),_0x394970(0x1fd)+_0xb0d18,_0x295f34 instanceof Error?_0x295f34[_0x394970(0x203)]:String(_0x295f34));}let _0x14559b;try{_0x14559b=new TextDecoder('utf-8',{'fatal':!![],'ignoreBOM':!![]})[_0x394970(0x200)](_0x2b5584);}catch{throw kbError(_0x394970(0x1bb),_0x394970(0x1c6)+_0xb0d18);}if(!_0x14559b[_0x394970(0x1e4)]())throw kbError(_0x394970(0x1bb),_0x394970(0x1c4)+_0xb0d18);return inspectKbContent(_0x14559b);}function a104_0xf45a(){const _0x3c7c8b=['cause','trim','isSafeInteger','Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.','Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','2299869QXBfCy','Pass\x20--file\x20<knowledge.md>.','Knowledge-base\x20content\x20file\x20path\x20is\x20required.','kb_not_found','Knowledge-base\x20get-one\x20returned\x20id\x20','add','6KyMlGw','Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.','length','\x20response\x20is\x20missing\x20','\x20during\x20paging.',',\x20current\x20','1EyoMBV','\x20while\x20page\x20','\x20is\x20not\x20company-scoped.','company','kb_','items','1448559DzJipd','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','494334UTXKzX','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','\x20version\x20changed:\x20expected\x20','sha256:','decode','--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.','4owuFGG','message','outcome_unknown','version','Knowledge\x20base\x20','title','Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.','verification_unavailable','paging','1468170XxljAa','appCode','digest','\x20of\x20','kb_response_invalid','\x20response\x20contains\x20an\x20invalid\x20version.','413121nStSld','utf8','kb_scope_mismatch','kb_file_required','createTime','\x20was\x20requested.','kb_file_unreadable','yes','1881248ketyHz','has','kb_content_invalid','content','contentHash','The\x20','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','kb_file_invalid','from','20qApleH','scope','Knowledge-base\x20content\x20file\x20is\x20blank:\x20','kb_id_invalid','Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','filter','bool','\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20','totalCount','\x20while\x20id\x20','\x20to\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.','\x20records.','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','306','kb_list_contract_invalid','kb_state_drift','defineProperty','Cannot\x20access\x20knowledge-base\x20content\x20file:\x20','cookie','Knowledge-base\x20list\x20stopped\x20at\x20','Company\x20knowledge\x20base\x20not\x20found:\x20','updateTime','dry-run','Knowledge-base\x20list\x20total\x20changed\x20from\x20','currentPage','number','kb_confirmation_required','stringify','update','966321QzEhxJ','Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20','This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.'];a104_0xf45a=function(){return _0x3c7c8b;};return a104_0xf45a();}export async function verifyKbMutationReadback(_0x1a554f,_0x29c75c,_0x2e1a35){const _0x48a109=a104_0x1474cf;try{return await _0x2e1a35();}catch(_0x3a72cc){const _0x4c0b04=kbError(_0x48a109(0x1f8)+_0x1a554f+'_'+(_0x29c75c?_0x48a109(0x204):_0x48a109(0x1a9)),_0x48a109(0x1be)+_0x1a554f+_0x48a109(0x1cf),_0x48a109(0x1bf));Object[_0x48a109(0x1d3)](_0x4c0b04,_0x48a109(0x1e3),{'value':_0x3a72cc,'enumerable':![]});throw _0x4c0b04;}}function requireRecordText(_0x499a47,_0x6e733e,_0x302408,_0x3db817={}){const _0x23e4b5=a104_0x1474cf;if(typeof _0x499a47==='string'&&(_0x3db817['allowEmpty']||_0x499a47[_0x23e4b5(0x1e4)]()))return _0x499a47;throw kbError('kb_response_invalid',_0x23e4b5(0x206)+String(_0x302408)+_0x23e4b5(0x1f1)+_0x6e733e+'.');}export function projectKb(_0x49ab1f){const _0x20146d=a104_0x1474cf;if(!Number[_0x20146d(0x1e5)](_0x49ab1f['id'])||_0x49ab1f['id']<=0x0)throw kbError(_0x20146d(0x1af),_0x20146d(0x1e6));if(!Number[_0x20146d(0x1e5)](_0x49ab1f[_0x20146d(0x205)])||_0x49ab1f['version']<0x0)throw kbError(_0x20146d(0x1af),'Knowledge\x20base\x20'+_0x49ab1f['id']+_0x20146d(0x1b0));if(_0x49ab1f[_0x20146d(0x1c3)]!==_0x20146d(0x1f7))throw kbError(_0x20146d(0x1b3),_0x20146d(0x206)+_0x49ab1f['id']+_0x20146d(0x1f6));const _0x1fb8bc=requireRecordText(_0x49ab1f[_0x20146d(0x1ac)],'appCode',_0x49ab1f['id']),_0x1cbec1=requireRecordText(_0x49ab1f[_0x20146d(0x207)],_0x20146d(0x207),_0x49ab1f['id']),_0xc8b0be=inspectKbContent(requireRecordText(_0x49ab1f[_0x20146d(0x1bc)],_0x20146d(0x1bc),_0x49ab1f['id'],{'allowEmpty':!![]})),_0x2a7d0b=typeof _0x49ab1f['createTime']==='string'||typeof _0x49ab1f[_0x20146d(0x1b5)]===_0x20146d(0x1dc)?_0x49ab1f[_0x20146d(0x1b5)]:undefined,_0x530c51=typeof _0x49ab1f[_0x20146d(0x1d8)]==='string'||typeof _0x49ab1f[_0x20146d(0x1d8)]===_0x20146d(0x1dc)?_0x49ab1f[_0x20146d(0x1d8)]:undefined,_0x13ebe8=sha256(JSON[_0x20146d(0x1de)]({'id':_0x49ab1f['id'],'scope':_0x49ab1f[_0x20146d(0x1c3)],'appCode':_0x1fb8bc,'title':_0x1cbec1,'version':_0x49ab1f['version'],'contentHash':_0xc8b0be[_0x20146d(0x1bd)],'createTime':_0x2a7d0b,'updateTime':_0x530c51}));return{'id':_0x49ab1f['id'],'scope':'company','appCode':_0x1fb8bc,'title':_0x1cbec1,'version':_0x49ab1f['version'],'contentByteSize':_0xc8b0be['byteSize'],'contentHash':_0xc8b0be[_0x20146d(0x1bd)],'snapshotHash':_0x13ebe8,..._0x2a7d0b!==undefined?{'createTime':_0x2a7d0b}:{},..._0x530c51!==undefined?{'updateTime':_0x530c51}:{}};}export function assertCompanyKnowledgeBase(_0x483e2b,_0x4a1a04,_0x3cf04a){const _0x2914f8=a104_0x1474cf;if(_0x3cf04a!==undefined&&_0x483e2b['id']!==_0x3cf04a)throw kbError(_0x2914f8(0x1af),_0x2914f8(0x1ec)+_0x483e2b['id']+_0x2914f8(0x1cb)+_0x3cf04a+_0x2914f8(0x1b6));if(_0x483e2b['scope']!==_0x2914f8(0x1f7)||_0x483e2b[_0x2914f8(0x1ac)]!==_0x4a1a04)throw kbError(_0x2914f8(0x1b3),'Knowledge\x20base\x20'+_0x483e2b['id']+_0x2914f8(0x1c9)+_0x4a1a04+'.');}export async function fetchAllCompanyKnowledgeBases(_0x451595,_0x767a11){const _0x90c883=a104_0x1474cf,_0x4aaaaf=[],_0x5580c3=new Set();let _0x327b77=0x1,_0x5432d7=0x0,_0x3ad5b9;while(!![]){const _0x22fc69=await listEnterpriseKnowledgeBases(_0x451595['cookie'],{'currentPage':_0x327b77,'pageSize':LIST_PAGE_SIZE,'appCode':_0x451595[_0x90c883(0x1ac)],..._0x767a11}),_0x46c382=_0x22fc69[_0x90c883(0x1aa)]?.[_0x90c883(0x1ca)];if(_0x22fc69[_0x90c883(0x1aa)]?.[_0x90c883(0x1db)]!==undefined&&_0x22fc69[_0x90c883(0x1aa)][_0x90c883(0x1db)]!==_0x327b77)throw kbError(_0x90c883(0x1d1),'Knowledge-base\x20list\x20returned\x20page\x20'+_0x22fc69[_0x90c883(0x1aa)][_0x90c883(0x1db)]+_0x90c883(0x1f5)+_0x327b77+_0x90c883(0x1b6));if(_0x46c382!==undefined){if(_0x3ad5b9!==undefined&&_0x46c382!==_0x3ad5b9)throw kbError(_0x90c883(0x1d1),_0x90c883(0x1da)+_0x3ad5b9+_0x90c883(0x1cc)+_0x46c382+_0x90c883(0x1f2),_0x90c883(0x1ef));_0x3ad5b9=_0x46c382;}for(const _0x53b8cf of _0x22fc69[_0x90c883(0x1f9)]){if(!Number['isSafeInteger'](_0x53b8cf['id'])||_0x5580c3[_0x90c883(0x1ba)](_0x53b8cf['id']))throw kbError('kb_list_contract_invalid',_0x90c883(0x1e1)+String(_0x53b8cf['id'])+'.');_0x5580c3[_0x90c883(0x1ed)](_0x53b8cf['id']),_0x53b8cf[_0x90c883(0x1c3)]==='company'&&_0x53b8cf['appCode']===_0x451595[_0x90c883(0x1ac)]&&_0x4aaaaf['push'](_0x53b8cf);}_0x5432d7+=_0x22fc69[_0x90c883(0x1f9)][_0x90c883(0x1f0)];if(_0x46c382!==undefined&&_0x5432d7>=_0x46c382)break;if(_0x22fc69[_0x90c883(0x1f9)]['length']<LIST_PAGE_SIZE){if(_0x46c382!==undefined&&_0x5432d7<_0x46c382)throw kbError(_0x90c883(0x1d1),_0x90c883(0x1d6)+_0x5432d7+_0x90c883(0x1ae)+_0x46c382+_0x90c883(0x1ce));break;}_0x327b77+=0x1;}return _0x4aaaaf;}export function findExactCompanyKnowledgeBases(_0x1b2770,_0x58668d,_0x39733a){const _0x162c14=a104_0x1474cf;return _0x1b2770[_0x162c14(0x1c7)](_0x7d7f84=>_0x7d7f84['scope']===_0x162c14(0x1f7)&&_0x7d7f84[_0x162c14(0x1ac)]===_0x58668d&&_0x7d7f84[_0x162c14(0x207)]===_0x39733a);}export async function getKbOrNull(_0xf3fe02,_0x150d6b){const _0x4343f1=a104_0x1474cf;try{const _0x243579=await getEnterpriseKnowledgeBase(_0xf3fe02[_0x4343f1(0x1d5)],_0x150d6b);return assertCompanyKnowledgeBase(_0x243579,_0xf3fe02[_0x4343f1(0x1ac)],_0x150d6b),_0x243579;}catch(_0x54cef9){if(getPlatformErrorCode(_0x54cef9)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x54cef9;}}export async function requireKb(_0x12a732,_0x3623de){const _0x488c04=a104_0x1474cf,_0x4c9cab=await getKbOrNull(_0x12a732,_0x3623de);if(!_0x4c9cab)throw kbError(_0x488c04(0x1eb),_0x488c04(0x1d7)+_0x3623de,_0x488c04(0x1a8));return _0x4c9cab;}export function assertExpectedKbVersion(_0x143761,_0x45ed48){const _0x505550=a104_0x1474cf;if(_0x45ed48===undefined||_0x143761[_0x505550(0x205)]===_0x45ed48)return;throw kbError(_0x505550(0x1d2),'Knowledge\x20base\x20'+_0x143761['id']+_0x505550(0x1fe)+_0x45ed48+_0x505550(0x1f3)+_0x143761['version']+'.',_0x505550(0x1cd));}
|
|
1
|
+
(function(_0x33e3ef,_0x3bce1b){const _0x2e3bf1=a106_0x3a25,_0x4af8a6=_0x33e3ef();while(!![]){try{const _0x3a4f56=-parseInt(_0x2e3bf1(0x16f))/0x1+parseInt(_0x2e3bf1(0x15c))/0x2*(-parseInt(_0x2e3bf1(0x19a))/0x3)+-parseInt(_0x2e3bf1(0x17f))/0x4*(parseInt(_0x2e3bf1(0x195))/0x5)+parseInt(_0x2e3bf1(0x155))/0x6*(parseInt(_0x2e3bf1(0x171))/0x7)+parseInt(_0x2e3bf1(0x170))/0x8+-parseInt(_0x2e3bf1(0x184))/0x9+-parseInt(_0x2e3bf1(0x168))/0xa*(-parseInt(_0x2e3bf1(0x159))/0xb);if(_0x3a4f56===_0x3bce1b)break;else _0x4af8a6['push'](_0x4af8a6['shift']());}catch(_0x9a0989){_0x4af8a6['push'](_0x4af8a6['shift']());}}}(a106_0x257a,0xa6750));import{createHash}from'node:crypto';function a106_0x3a25(_0x2f764a,_0x4b9352){_0x2f764a=_0x2f764a-0x14c;const _0x257a7b=a106_0x257a();let _0x3a2549=_0x257a7b[_0x2f764a];return _0x3a2549;}import{readFile,stat}from'node:fs/promises';import{resolve}from'node:path';import{TextDecoder}from'node:util';import{getEnterpriseKnowledgeBase,getPlatformErrorCode,listEnterpriseKnowledgeBases}from'../../core/api-client.js';import{CliError}from'../../errors.js';const LIST_PAGE_SIZE=0x32,DATA_NOT_EXIST_ERROR_CODE='306';export function kbError(_0x1ac8c1,_0x380253,_0x19d77c){return new CliError(_0x1ac8c1,0x1,_0x380253,_0x19d77c);}export function readKbId(_0x1c3e6a){const _0x3d697d=a106_0x3a25,_0x2ce805=_0x1c3e6a[_0x3d697d(0x173)]('id');if(!Number[_0x3d697d(0x197)](_0x2ce805)||_0x2ce805<=0x0)throw kbError('kb_id_invalid','--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.');return _0x2ce805;}function a106_0x257a(){const _0x5aee74=['kb_state_drift','3721825sSxOeT','kb_not_found','isSafeInteger','content','message','3718317EehUWQ','byteSize','sha256','\x20response\x20is\x20missing\x20','filter','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.','length','Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','isFile','contentHash','\x20was\x20requested.','Pass\x20--file\x20<knowledge.md>.','yes','company','\x20is\x20not\x20company-scoped.','trim','utf-8','Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.','This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.','updateTime','kb_content_invalid','18mltVEm','Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','currentPage','Knowledge-base\x20content\x20file\x20is\x20blank:\x20','46264801LOSMtn',',\x20current\x20','string','2eTHNKy','Knowledge-base\x20list\x20total\x20changed\x20from\x20','version','decode','kb_list_contract_invalid','The\x20','totalCount','title','defineProperty','scope','Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.','Knowledge-base\x20content\x20file\x20path\x20is\x20required.','10zEecql','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','Company\x20knowledge\x20base\x20not\x20found:\x20','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','items','cookie','digest','1349968KCyowE','4866952ePyNIo','661458cDVreJ','\x20records.','num','number','\x20while\x20id\x20','utf8','kb_file_unreadable','\x20of\x20','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','paging','verification_unavailable','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','kb_','\x20while\x20page\x20','4DiaKXv','kb_response_invalid','from','Knowledge\x20base\x20','outcome_unknown','9739458ctKisT','kb_scope_mismatch','createTime','\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20','byteLength','has','\x20during\x20paging.','Knowledge-base\x20list\x20returned\x20page\x20','bool','stringify','update','sha256:','appCode','\x20version\x20changed:\x20expected\x20','\x20response\x20contains\x20an\x20invalid\x20version.','kb_confirmation_required'];a106_0x257a=function(){return _0x5aee74;};return a106_0x257a();}export function requireKbExplicitYes(_0x3fc4f5){const _0x2ee6c9=a106_0x3a25;if(_0x3fc4f5[_0x2ee6c9(0x18c)]('dry-run')||_0x3fc4f5['bool'](_0x2ee6c9(0x14c)))return;throw kbError(_0x2ee6c9(0x193),_0x2ee6c9(0x152),_0x2ee6c9(0x169));}function sha256(_0x65541){const _0x35e1e2=a106_0x3a25;return _0x35e1e2(0x18f)+createHash(_0x35e1e2(0x19c))[_0x35e1e2(0x18e)](_0x65541)[_0x35e1e2(0x16e)]('hex');}export function inspectKbContent(_0x2160b9){const _0x41876a=a106_0x3a25,_0x1122dd=Buffer[_0x41876a(0x181)](_0x2160b9,_0x41876a(0x176));return{'content':_0x2160b9,'byteSize':_0x1122dd[_0x41876a(0x188)],'contentHash':sha256(_0x1122dd)};}export async function readKbFile(_0x3db5ae){const _0x5d847a=a106_0x3a25,_0x23f28e=_0x3db5ae['trim']();if(!_0x23f28e)throw kbError('kb_file_required',_0x5d847a(0x167),_0x5d847a(0x1a5));const _0x47cf9d=resolve(_0x23f28e);let _0x26ede6;try{_0x26ede6=await stat(_0x47cf9d);}catch(_0x354a76){throw kbError(_0x5d847a(0x177),'Cannot\x20access\x20knowledge-base\x20content\x20file:\x20'+_0x23f28e,_0x354a76 instanceof Error?_0x354a76[_0x5d847a(0x199)]:String(_0x354a76));}if(!_0x26ede6[_0x5d847a(0x1a2)]())throw kbError('kb_file_invalid',_0x5d847a(0x1a1)+_0x23f28e);let _0x3e24fb;try{_0x3e24fb=await readFile(_0x47cf9d);}catch(_0x105a7b){throw kbError(_0x5d847a(0x177),_0x5d847a(0x16b)+_0x23f28e,_0x105a7b instanceof Error?_0x105a7b[_0x5d847a(0x199)]:String(_0x105a7b));}let _0x46f40e;try{_0x46f40e=new TextDecoder(_0x5d847a(0x150),{'fatal':!![],'ignoreBOM':!![]})[_0x5d847a(0x15f)](_0x3e24fb);}catch{throw kbError(_0x5d847a(0x154),_0x5d847a(0x156)+_0x23f28e);}if(!_0x46f40e[_0x5d847a(0x14f)]())throw kbError('kb_content_invalid',_0x5d847a(0x158)+_0x23f28e);return inspectKbContent(_0x46f40e);}export async function verifyKbMutationReadback(_0x1ea251,_0x44397a,_0x4fb60d){const _0x55d1bd=a106_0x3a25;try{return await _0x4fb60d();}catch(_0x27fc43){const _0x526d01=kbError(_0x55d1bd(0x17d)+_0x1ea251+'_'+(_0x44397a?_0x55d1bd(0x183):_0x55d1bd(0x17b)),_0x55d1bd(0x161)+_0x1ea251+_0x55d1bd(0x17c),_0x55d1bd(0x179));Object[_0x55d1bd(0x164)](_0x526d01,'cause',{'value':_0x27fc43,'enumerable':![]});throw _0x526d01;}}function requireRecordText(_0x3d8640,_0x516703,_0x3b8a3f,_0x1d8181={}){const _0xdb67ff=a106_0x3a25;if(typeof _0x3d8640===_0xdb67ff(0x15b)&&(_0x1d8181['allowEmpty']||_0x3d8640[_0xdb67ff(0x14f)]()))return _0x3d8640;throw kbError(_0xdb67ff(0x180),_0xdb67ff(0x182)+String(_0x3b8a3f)+_0xdb67ff(0x19d)+_0x516703+'.');}export function projectKb(_0x51caf0){const _0x5dcf96=a106_0x3a25;if(!Number[_0x5dcf96(0x197)](_0x51caf0['id'])||_0x51caf0['id']<=0x0)throw kbError(_0x5dcf96(0x180),'Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.');if(!Number[_0x5dcf96(0x197)](_0x51caf0[_0x5dcf96(0x15e)])||_0x51caf0['version']<0x0)throw kbError(_0x5dcf96(0x180),'Knowledge\x20base\x20'+_0x51caf0['id']+_0x5dcf96(0x192));if(_0x51caf0[_0x5dcf96(0x165)]!==_0x5dcf96(0x14d))throw kbError(_0x5dcf96(0x185),_0x5dcf96(0x182)+_0x51caf0['id']+_0x5dcf96(0x14e));const _0x561668=requireRecordText(_0x51caf0[_0x5dcf96(0x190)],_0x5dcf96(0x190),_0x51caf0['id']),_0x2c1648=requireRecordText(_0x51caf0[_0x5dcf96(0x163)],'title',_0x51caf0['id']),_0x36eed8=inspectKbContent(requireRecordText(_0x51caf0[_0x5dcf96(0x198)],'content',_0x51caf0['id'],{'allowEmpty':!![]})),_0x10416d=typeof _0x51caf0[_0x5dcf96(0x186)]===_0x5dcf96(0x15b)||typeof _0x51caf0[_0x5dcf96(0x186)]===_0x5dcf96(0x174)?_0x51caf0[_0x5dcf96(0x186)]:undefined,_0x4b56f0=typeof _0x51caf0[_0x5dcf96(0x153)]===_0x5dcf96(0x15b)||typeof _0x51caf0[_0x5dcf96(0x153)]===_0x5dcf96(0x174)?_0x51caf0['updateTime']:undefined,_0x4f1a5f=sha256(JSON[_0x5dcf96(0x18d)]({'id':_0x51caf0['id'],'scope':_0x51caf0[_0x5dcf96(0x165)],'appCode':_0x561668,'title':_0x2c1648,'version':_0x51caf0[_0x5dcf96(0x15e)],'contentHash':_0x36eed8['contentHash'],'createTime':_0x10416d,'updateTime':_0x4b56f0}));return{'id':_0x51caf0['id'],'scope':_0x5dcf96(0x14d),'appCode':_0x561668,'title':_0x2c1648,'version':_0x51caf0['version'],'contentByteSize':_0x36eed8[_0x5dcf96(0x19b)],'contentHash':_0x36eed8[_0x5dcf96(0x1a3)],'snapshotHash':_0x4f1a5f,..._0x10416d!==undefined?{'createTime':_0x10416d}:{},..._0x4b56f0!==undefined?{'updateTime':_0x4b56f0}:{}};}export function assertCompanyKnowledgeBase(_0x2b0edc,_0x310102,_0x532759){const _0x55867f=a106_0x3a25;if(_0x532759!==undefined&&_0x2b0edc['id']!==_0x532759)throw kbError(_0x55867f(0x180),'Knowledge-base\x20get-one\x20returned\x20id\x20'+_0x2b0edc['id']+_0x55867f(0x175)+_0x532759+'\x20was\x20requested.');if(_0x2b0edc[_0x55867f(0x165)]!==_0x55867f(0x14d)||_0x2b0edc[_0x55867f(0x190)]!==_0x310102)throw kbError(_0x55867f(0x185),'Knowledge\x20base\x20'+_0x2b0edc['id']+_0x55867f(0x187)+_0x310102+'.');}export async function fetchAllCompanyKnowledgeBases(_0xadf2f5,_0x1e79da){const _0xe548e3=a106_0x3a25,_0x57c553=[],_0x2ce487=new Set();let _0x2e1d64=0x1,_0x14598a=0x0,_0xcea4ba;while(!![]){const _0x3b7a8d=await listEnterpriseKnowledgeBases(_0xadf2f5[_0xe548e3(0x16d)],{'currentPage':_0x2e1d64,'pageSize':LIST_PAGE_SIZE,'appCode':_0xadf2f5[_0xe548e3(0x190)],..._0x1e79da}),_0x97f5eb=_0x3b7a8d[_0xe548e3(0x17a)]?.[_0xe548e3(0x162)];if(_0x3b7a8d[_0xe548e3(0x17a)]?.[_0xe548e3(0x157)]!==undefined&&_0x3b7a8d[_0xe548e3(0x17a)][_0xe548e3(0x157)]!==_0x2e1d64)throw kbError(_0xe548e3(0x160),_0xe548e3(0x18b)+_0x3b7a8d['paging'][_0xe548e3(0x157)]+_0xe548e3(0x17e)+_0x2e1d64+_0xe548e3(0x1a4));if(_0x97f5eb!==undefined){if(_0xcea4ba!==undefined&&_0x97f5eb!==_0xcea4ba)throw kbError(_0xe548e3(0x160),_0xe548e3(0x15d)+_0xcea4ba+'\x20to\x20'+_0x97f5eb+_0xe548e3(0x18a),_0xe548e3(0x166));_0xcea4ba=_0x97f5eb;}for(const _0x58eb13 of _0x3b7a8d[_0xe548e3(0x16c)]){if(!Number[_0xe548e3(0x197)](_0x58eb13['id'])||_0x2ce487[_0xe548e3(0x189)](_0x58eb13['id']))throw kbError(_0xe548e3(0x160),'Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20'+String(_0x58eb13['id'])+'.');_0x2ce487['add'](_0x58eb13['id']),_0x58eb13[_0xe548e3(0x165)]==='company'&&_0x58eb13[_0xe548e3(0x190)]===_0xadf2f5[_0xe548e3(0x190)]&&_0x57c553['push'](_0x58eb13);}_0x14598a+=_0x3b7a8d[_0xe548e3(0x16c)]['length'];if(_0x97f5eb!==undefined&&_0x14598a>=_0x97f5eb)break;if(_0x3b7a8d[_0xe548e3(0x16c)][_0xe548e3(0x1a0)]<LIST_PAGE_SIZE){if(_0x97f5eb!==undefined&&_0x14598a<_0x97f5eb)throw kbError(_0xe548e3(0x160),'Knowledge-base\x20list\x20stopped\x20at\x20'+_0x14598a+_0xe548e3(0x178)+_0x97f5eb+_0xe548e3(0x172));break;}_0x2e1d64+=0x1;}return _0x57c553;}export function findExactCompanyKnowledgeBases(_0x419566,_0x210cc8,_0x518a3f){const _0x24e101=a106_0x3a25;return _0x419566[_0x24e101(0x19e)](_0x4924f0=>_0x4924f0[_0x24e101(0x165)]===_0x24e101(0x14d)&&_0x4924f0['appCode']===_0x210cc8&&_0x4924f0[_0x24e101(0x163)]===_0x518a3f);}export async function getKbOrNull(_0x49e4b3,_0x2f853a){const _0x30cefe=a106_0x3a25;try{const _0x580d53=await getEnterpriseKnowledgeBase(_0x49e4b3['cookie'],_0x2f853a);return assertCompanyKnowledgeBase(_0x580d53,_0x49e4b3[_0x30cefe(0x190)],_0x2f853a),_0x580d53;}catch(_0x443cf7){if(getPlatformErrorCode(_0x443cf7)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x443cf7;}}export async function requireKb(_0x396392,_0xc51af7){const _0x410a47=a106_0x3a25,_0x5712b0=await getKbOrNull(_0x396392,_0xc51af7);if(!_0x5712b0)throw kbError(_0x410a47(0x196),_0x410a47(0x16a)+_0xc51af7,_0x410a47(0x151));return _0x5712b0;}export function assertExpectedKbVersion(_0x27438b,_0x34144b){const _0x13f8b0=a106_0x3a25;if(_0x34144b===undefined||_0x27438b[_0x13f8b0(0x15e)]===_0x34144b)return;throw kbError(_0x13f8b0(0x194),_0x13f8b0(0x182)+_0x27438b['id']+_0x13f8b0(0x191)+_0x34144b+_0x13f8b0(0x15a)+_0x27438b[_0x13f8b0(0x15e)]+'.',_0x13f8b0(0x19f));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a107_0x352c9d=a107_0x2138;(function(_0x5c9bc6,_0x15a422){const _0x296b80=a107_0x2138,_0x248aae=_0x5c9bc6();while(!![]){try{const _0x32af2b=parseInt(_0x296b80(0x1be))/0x1*(parseInt(_0x296b80(0x1dc))/0x2)+-parseInt(_0x296b80(0x1d7))/0x3*(-parseInt(_0x296b80(0x1df))/0x4)+-parseInt(_0x296b80(0x1c3))/0x5*(parseInt(_0x296b80(0x1d1))/0x6)+parseInt(_0x296b80(0x1c0))/0x7*(-parseInt(_0x296b80(0x1e6))/0x8)+parseInt(_0x296b80(0x1de))/0x9*(parseInt(_0x296b80(0x1bd))/0xa)+-parseInt(_0x296b80(0x1f1))/0xb*(-parseInt(_0x296b80(0x1e4))/0xc)+parseInt(_0x296b80(0x1cd))/0xd*(-parseInt(_0x296b80(0x1e7))/0xe);if(_0x32af2b===_0x15a422)break;else _0x248aae['push'](_0x248aae['shift']());}catch(_0x3f2c43){_0x248aae['push'](_0x248aae['shift']());}}}(a107_0x38aa,0x6fc3d));function a107_0x38aa(){const _0x30d64b=['88986DDkRlB','trim','18PXQvVj','12OoqDxM','file','planned','/admin/knowledge-base/update','cookie','2147292hTNBxX','Company\x20knowledge-base\x20id','2854480UdWsJb','42iPhiXU','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','kb_title_invalid','verified','kb_verification_failed','POST','--file\x20cannot\x20be\x20empty.','flag','beforeRecord','Company\x20knowledge\x20base\x20','44cQEReU','title','830570ROvVjA','13ValPEP','snapshotHash','7otgSvK','kb_expected_version_invalid','patch','3385130NAzRlB','string','kb_update_outcome_unknown','update','appCode','version','expectedVersion','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','expected-version','\x20--format\x20compress','1642589EbuPbX','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','New\x20knowledge-base\x20title','replacement','6Bksrlw','number','company','content','before','isSafeInteger','410397ZqTUUa','write','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','rabetbase\x20kb\x20detail\x20--id\x20','push'];a107_0x38aa=function(){return _0x30d64b;};return a107_0x38aa();}import{isPlatformTransportFailure,updateEnterpriseKnowledgeBase}from'../../core/api-client.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCompanyKnowledgeBase,assertExpectedKbVersion,inspectKbContent,kbError,projectKb,readKbFile,readKbId,requireKb,verifyKbMutationReadback}from'../../commands/kb/shared.js';const UPDATE_PATH=a107_0x352c9d(0x1e2),NON_ATOMIC_WARNING='--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.';function readUpdatePatch(_0x4ae771){const _0x26a18f=a107_0x352c9d,_0x18838c=readKbId(_0x4ae771),_0x1f6ed2=_0x4ae771[_0x26a18f(0x1ee)]('title'),_0x38c91a=_0x4ae771[_0x26a18f(0x1ee)](_0x26a18f(0x1e0)),_0x5d4571=_0x4ae771[_0x26a18f(0x1ee)]('expected-version'),_0x329239=_0x1f6ed2===undefined?undefined:String(_0x1f6ed2)[_0x26a18f(0x1dd)]();if(_0x1f6ed2!==undefined&&!_0x329239)throw kbError(_0x26a18f(0x1e9),'--title\x20cannot\x20be\x20empty.');const _0x468093=_0x38c91a===undefined?undefined:String(_0x38c91a)[_0x26a18f(0x1dd)]();if(_0x38c91a!==undefined&&!_0x468093)throw kbError('kb_file_required',_0x26a18f(0x1ed));if(_0x329239===undefined&&_0x468093===undefined)throw kbError('kb_update_empty','Nothing\x20to\x20update.',_0x26a18f(0x1d9));let _0x46723d;if(_0x5d4571!==undefined){_0x46723d=Number(_0x5d4571);if(!Number[_0x26a18f(0x1d6)](_0x46723d)||_0x46723d<0x0)throw kbError(_0x26a18f(0x1c1),'--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.');}return{'id':_0x18838c,'title':_0x329239,'file':_0x468093,'expectedVersion':_0x46723d};}async function prepareUpdate(_0x50276b){const _0x31724c=a107_0x352c9d,_0x526164=readUpdatePatch(_0x50276b),_0x1051da=await requireKb(_0x50276b,_0x526164['id']);assertExpectedKbVersion(_0x1051da,_0x526164[_0x31724c(0x1c9)]);const _0x51526c=_0x526164['file']?await readKbFile(_0x526164['file']):undefined,_0x42313c=projectKb(_0x1051da),_0x501d95=projectKb({..._0x1051da,..._0x526164['title']!==undefined?{'title':_0x526164[_0x31724c(0x1f2)]}:{},..._0x51526c?{'content':_0x51526c[_0x31724c(0x1d4)]}:{}});return{'patch':_0x526164,'beforeRecord':_0x1051da,'before':_0x42313c,'planned':_0x501d95,'replacement':_0x51526c};}function a107_0x2138(_0x3646fa,_0x4a7357){_0x3646fa=_0x3646fa-0x1bd;const _0x38aa6f=a107_0x38aa();let _0x2138bc=_0x38aa6f[_0x3646fa];return _0x2138bc;}export const kbUpdate={'service':'kb','command':'update','description':'Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','risk':a107_0x352c9d(0x1d8),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':a107_0x352c9d(0x1d2),'required':!![],'description':a107_0x352c9d(0x1e5)},{'name':'title','type':a107_0x352c9d(0x1c4),'required':![],'description':a107_0x352c9d(0x1cf)},{'name':a107_0x352c9d(0x1e0),'type':a107_0x352c9d(0x1c4),'required':![],'description':a107_0x352c9d(0x1ce)},{'name':a107_0x352c9d(0x1cb),'type':a107_0x352c9d(0x1d2),'required':![],'description':'Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version'}],async 'validate'(_0x229b89){readUpdatePatch(_0x229b89);},async 'dryRun'(_0x3fac07){const _0x4f927a=a107_0x352c9d,_0x1b77f0=await prepareUpdate(_0x3fac07),_0x2834d3=_0x1b77f0[_0x4f927a(0x1c2)][_0x4f927a(0x1c9)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x4f927a(0x1c6),'selector':{'id':_0x1b77f0[_0x4f927a(0x1d5)]['id'],'scope':'company','appCode':_0x1b77f0[_0x4f927a(0x1d5)][_0x4f927a(0x1c7)]},'before':_0x1b77f0[_0x4f927a(0x1d5)],'after':_0x1b77f0[_0x4f927a(0x1e1)],'dryRun':!![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0x2834d3,'verification':{'expectedVersion':_0x1b77f0['patch']['expectedVersion']??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x1b77f0[_0x4f927a(0x1d5)][_0x4f927a(0x1bf)],'lookupCommand':'rabetbase\x20kb\x20detail\x20--id\x20'+_0x1b77f0[_0x4f927a(0x1d5)]['id']+_0x4f927a(0x1cc)}},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x53fe09){const _0x4c8f20=a107_0x352c9d,_0x525ce4=await prepareUpdate(_0x53fe09),_0x246ed9={'id':_0x525ce4[_0x4c8f20(0x1c2)]['id'],..._0x525ce4[_0x4c8f20(0x1c2)]['title']!==undefined?{'title':_0x525ce4[_0x4c8f20(0x1c2)][_0x4c8f20(0x1f2)]}:{},..._0x525ce4['replacement']?{'content':_0x525ce4[_0x4c8f20(0x1d0)]['content']}:{}};let _0x5587f7=![];try{const _0x3e077a=await updateEnterpriseKnowledgeBase(_0x53fe09[_0x4c8f20(0x1e3)],_0x246ed9);assertCompanyKnowledgeBase(_0x3e077a,_0x53fe09[_0x4c8f20(0x1c7)],_0x525ce4[_0x4c8f20(0x1c2)]['id']);}catch(_0xa485be){if(!isPlatformTransportFailure(_0xa485be))throw _0xa485be;_0x5587f7=!![];}const _0xf8f38c=await verifyKbMutationReadback(_0x4c8f20(0x1c6),_0x5587f7,()=>requireKb(_0x53fe09,_0x525ce4[_0x4c8f20(0x1c2)]['id'])),_0x57bc04=projectKb(_0xf8f38c),_0x832998=_0x525ce4[_0x4c8f20(0x1c2)][_0x4c8f20(0x1f2)]===undefined||_0xf8f38c[_0x4c8f20(0x1f2)]===_0x525ce4[_0x4c8f20(0x1c2)][_0x4c8f20(0x1f2)],_0x1c830c=!_0x525ce4[_0x4c8f20(0x1d0)]||inspectKbContent(_0xf8f38c['content'])['contentHash']===_0x525ce4[_0x4c8f20(0x1d0)]['contentHash'],_0x398ce7=!_0x525ce4[_0x4c8f20(0x1d0)]||_0xf8f38c[_0x4c8f20(0x1c8)]>_0x525ce4[_0x4c8f20(0x1ef)][_0x4c8f20(0x1c8)],_0xcc4108=!_0x5587f7||_0x525ce4[_0x4c8f20(0x1d0)]!==undefined||_0x525ce4[_0x4c8f20(0x1c2)][_0x4c8f20(0x1f2)]===undefined||_0x525ce4[_0x4c8f20(0x1ef)][_0x4c8f20(0x1f2)]!==_0x525ce4['patch']['title'];if(!_0x832998||!_0x1c830c||!_0x398ce7||!_0xcc4108)throw kbError(_0x5587f7?_0x4c8f20(0x1c5):_0x4c8f20(0x1eb),_0x4c8f20(0x1f0)+_0x525ce4['patch']['id']+'\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20'+_0x525ce4['patch']['id']+_0x4c8f20(0x1e8));const _0x3f2584=[];return _0x525ce4[_0x4c8f20(0x1c2)][_0x4c8f20(0x1c9)]!==undefined&&_0x3f2584[_0x4c8f20(0x1db)](NON_ATOMIC_WARNING),_0x5587f7&&_0x3f2584['push'](_0x4c8f20(0x1ca)),{'ok':!![],'data':{'operation':_0x4c8f20(0x1c6),'selector':{'id':_0x57bc04['id'],'scope':_0x4c8f20(0x1d3),'appCode':_0x57bc04['appCode']},'before':_0x525ce4[_0x4c8f20(0x1d5)],'after':_0x57bc04,'dryRun':![],'backend':{'method':_0x4c8f20(0x1ec),'path':UPDATE_PATH},'warnings':_0x3f2584,'verification':{'status':_0x4c8f20(0x1ea),'recoveredAfterUnknownResponse':_0x5587f7,'expectedVersion':_0x525ce4[_0x4c8f20(0x1c2)]['expectedVersion']??null,'atomicCompareAndSet':![],'lookupCommand':_0x4c8f20(0x1da)+_0x57bc04['id']+_0x4c8f20(0x1cc)}},'message':'Updated\x20company\x20knowledge\x20base\x20'+_0x57bc04['id']};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a108_0x538e(_0x1a1f48,_0x3f22fe){_0x1a1f48=_0x1a1f48-0x1b7;const _0xa45eef=a108_0xa45e();let _0x538e61=_0xa45eef[_0x1a1f48];return _0x538e61;}const a108_0x381e04=a108_0x538e;(function(_0x1c2d28,_0xf547a2){const _0x5741cb=a108_0x538e,_0x1aeaf3=_0x1c2d28();while(!![]){try{const _0x1e96b3=-parseInt(_0x5741cb(0x1c2))/0x1*(parseInt(_0x5741cb(0x1b9))/0x2)+-parseInt(_0x5741cb(0x1dc))/0x3*(-parseInt(_0x5741cb(0x1d6))/0x4)+parseInt(_0x5741cb(0x1d5))/0x5+parseInt(_0x5741cb(0x1d8))/0x6*(parseInt(_0x5741cb(0x1c5))/0x7)+parseInt(_0x5741cb(0x1bc))/0x8*(parseInt(_0x5741cb(0x1bb))/0x9)+-parseInt(_0x5741cb(0x1c1))/0xa+parseInt(_0x5741cb(0x1cf))/0xb;if(_0x1e96b3===_0xf547a2)break;else _0x1aeaf3['push'](_0x1aeaf3['shift']());}catch(_0x3b8b84){_0x1aeaf3['push'](_0x1aeaf3['shift']());}}}(a108_0xa45e,0xdec75));import{logger}from'../../utils/logger.js';function printLogs(_0x1ac141){const _0x3bb7e8=a108_0x538e;if(_0x1ac141['length']===0x0){console[_0x3bb7e8(0x1be)](_0x3bb7e8(0x1c8));return;}console[_0x3bb7e8(0x1be)](_0x3bb7e8(0x1d0)),_0x1ac141[_0x3bb7e8(0x1b7)]((_0x1c86ef,_0x3c5e5d)=>{const _0x3b6274=_0x3bb7e8,_0x436728=new Date(_0x1c86ef['timestamp'])['toLocaleString'](_0x3b6274(0x1d3)),_0x23b840=_0x1c86ef[_0x3b6274(0x1ba)]===_0x3b6274(0x1cc)?'√':_0x1c86ef[_0x3b6274(0x1ba)]===_0x3b6274(0x1d2)?'×':_0x1c86ef['level']===_0x3b6274(0x1d7)?'!':'i';console[_0x3b6274(0x1be)](_0x3c5e5d+0x1+'.\x20'+_0x23b840+'\x20['+_0x1c86ef['command']+']\x20'+_0x1c86ef[_0x3b6274(0x1da)]),console[_0x3b6274(0x1be)](_0x3b6274(0x1b8)+_0x436728),_0x1c86ef[_0x3b6274(0x1d9)]&&console[_0x3b6274(0x1be)](_0x3b6274(0x1dd)+_0x1c86ef[_0x3b6274(0x1d9)]+'ms'),_0x1c86ef['details']&&Object[_0x3b6274(0x1c6)](_0x1c86ef[_0x3b6274(0x1c3)])[_0x3b6274(0x1ce)]>0x0&&console[_0x3b6274(0x1be)](_0x3b6274(0x1db)+JSON[_0x3b6274(0x1d4)](_0x1c86ef[_0x3b6274(0x1c3)],null,0x2)),console['log']('');});}export const logsDefinitions=[{'service':a108_0x381e04(0x1cd),'command':a108_0x381e04(0x1c9),'description':a108_0x381e04(0x1c7),'risk':a108_0x381e04(0x1ca),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x3ccbfc){const _0x56716b=a108_0x381e04;return printLogs(logger[_0x56716b(0x1bf)]()),{'ok':!![]};}},{'service':'logs','command':a108_0x381e04(0x1c0),'description':a108_0x381e04(0x1d1),'risk':a108_0x381e04(0x1c4),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x246a60){const _0x2f5bfd=a108_0x381e04;return logger[_0x2f5bfd(0x1bd)](),console['log'](_0x2f5bfd(0x1cb)),{'ok':!![]};}}];function a108_0xa45e(){const _0x2840ca=['details','write','42YqiEhX','keys','View\x20command\x20history\x20logs','*\x20No\x20logs\x20found','show','read','*\x20Logs\x20cleared','success','logs','length','157256Farjqx','*\x20Lovrabet\x20CLI\x20logs:\x0a','Clear\x20command\x20history\x20logs','error','en-US','stringify','615985RxtJSA','5688392SmjIXl','warn','262134UGcspR','duration','message','\x20\x20\x20Details:\x20','3HLTtrK','\x20\x20\x20Duration:\x20','forEach','\x20\x20\x20Time:\x20','215374RDvPeI','level','94797PQBCWu','232Bvbzdr','clearLogs','log','readLogs','clear','9993070CeTJVl','2gERjXU'];a108_0xa45e=function(){return _0x2840ca;};return a108_0xa45e();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a107_0x1f4477=a107_0x1bba;(function(_0x5d57a2,_0x1612e6){const _0x56976c=a107_0x1bba,_0x1eb9a7=_0x5d57a2();while(!![]){try{const _0x5c34e7=-parseInt(_0x56976c(0x172))/0x1+-parseInt(_0x56976c(0x179))/0x2+-parseInt(_0x56976c(0x197))/0x3*(-parseInt(_0x56976c(0x19c))/0x4)+parseInt(_0x56976c(0x192))/0x5+parseInt(_0x56976c(0x1b1))/0x6*(-parseInt(_0x56976c(0x18f))/0x7)+parseInt(_0x56976c(0x173))/0x8+-parseInt(_0x56976c(0x175))/0x9*(-parseInt(_0x56976c(0x178))/0xa);if(_0x5c34e7===_0x1612e6)break;else _0x1eb9a7['push'](_0x1eb9a7['shift']());}catch(_0x1d9808){_0x1eb9a7['push'](_0x1eb9a7['shift']());}}}(a107_0x553d,0x25c65));import a107_0x39ddea from'chalk';import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,isInteractive,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';function a107_0x553d(){const _0x5e8664=['Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','\x20\x20Cancelled.','patch','params','paths','menu','diffs','\x20menu(s)\x20with\x20existing\x20resources','\x20menu(s)\x20with\x20JS:\x20','isSafeInteger','parse','144LKBGUz','yes','stringify','appCode','✓\x20Menu\x20asset\x20update\x20completed:\x20','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','trim','Updated\x20','force','\x20updated,\x20','yellow','replace','\x20failed.','load-mode','\x20and\x20CSS:\x20','filter','script','rawFlags','boolean','isArray','skipped','split','\x20menu(s)\x20updated','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','string','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','failed','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','Online\x20menu\x20list\x20fetched','cssUrl','length','246068EmTgCU','1982504LDJYTp','fetch','1440HplvNR','POST','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','5910BWIMnv','3500REtGuM','selectedAppName','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','Fetching\x20online\x20menu\x20list...','Menu\x20asset\x20update\x20completed:\x20','/smartapi/menu/update','jsUrl','flag','updated','map','cyan','appcode','Would\x20update\x20','asset-update','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','mode','\x20menu(s)','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','validation','object','\x20\x20Update\x20','Menu\x20asset\x20update\x20failed','30548wAzGEr','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','Menu\x20asset\x20update\x20skipped','656660nHLsgj','menu-ids','Failed\x20to\x20fetch\x20online\x20menu\x20list','bool','message','100722PDjLdQ','all','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','Updating\x20','some','4bWvgWk','str','high-risk-write','\x20menu(s)...','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','cookie','\x20\x20Found\x20','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update'];a107_0x553d=function(){return _0x5e8664;};return a107_0x553d();}import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':a107_0x1f4477(0x1ab),'command':a107_0x1f4477(0x186),'description':a107_0x1f4477(0x199),'risk':a107_0x1f4477(0x19e),'flags':[{'name':a107_0x1f4477(0x1a9),'type':a107_0x1f4477(0x16b),'description':a107_0x1f4477(0x17b)+a107_0x1f4477(0x190)},{'name':a107_0x1f4477(0x188),'type':a107_0x1f4477(0x16b),'description':a107_0x1f4477(0x16c)+a107_0x1f4477(0x1a2),'enum':[a107_0x1f4477(0x15d),a107_0x1f4477(0x1a8)],'default':a107_0x1f4477(0x1a8)},{'name':a107_0x1f4477(0x1b9),'type':'boolean','description':a107_0x1f4477(0x187)},{'name':a107_0x1f4477(0x193),'type':a107_0x1f4477(0x16b),'description':'Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update'},{'name':a107_0x1f4477(0x1aa),'type':a107_0x1f4477(0x16b),'description':a107_0x1f4477(0x1a5)},{'name':a107_0x1f4477(0x198),'type':a107_0x1f4477(0x164),'description':a107_0x1f4477(0x1a1)},{'name':a107_0x1f4477(0x15f),'type':a107_0x1f4477(0x16b),'enum':['import','script','fetch'],'description':a107_0x1f4477(0x1b6)}],async 'dryRun'(_0x198236){const _0x3dcfb5=a107_0x1f4477;ensureRunnableContext(_0x198236[_0x3dcfb5(0x163)],_0x198236[_0x3dcfb5(0x17a)]);const _0x474743=await runMenuUpdateCore(_0x198236[_0x3dcfb5(0x1b4)],_0x198236[_0x3dcfb5(0x1a3)],_0x198236[_0x3dcfb5(0x19d)](_0x3dcfb5(0x1a9)),{'mode':parseMode(_0x198236['str'](_0x3dcfb5(0x188))),'dryRun':!![],'force':_0x198236[_0x3dcfb5(0x195)](_0x3dcfb5(0x1b9)),'selection':parseSelection(_0x198236),'loadScriptMode':parseLoadScriptMode(_0x198236[_0x3dcfb5(0x19d)](_0x3dcfb5(0x15f)))});return{'method':_0x3dcfb5(0x176),'url':_0x3dcfb5(0x17e),'body':_0x474743,'description':_0x474743[_0x3dcfb5(0x166)]?_0x3dcfb5(0x169):_0x3dcfb5(0x185)+(_0x474743[_0x3dcfb5(0x1ac)]?.[_0x3dcfb5(0x171)]??0x0)+'\x20menu\x20resource\x20set(s).'};},async 'execute'(_0x1b652b){const _0xeae68d=a107_0x1f4477;ensureRunnableContext(_0x1b652b[_0xeae68d(0x163)],_0x1b652b[_0xeae68d(0x17a)]);const _0x4ff0da=_0x1b652b[_0xeae68d(0x180)](_0xeae68d(0x1b2)),_0x3edc7b=_0x1b652b[_0xeae68d(0x19d)](_0xeae68d(0x1a9)),_0x315188=parseMode(_0x1b652b['str'](_0xeae68d(0x188))),_0x2e3d0b=_0x1b652b[_0xeae68d(0x195)](_0xeae68d(0x1b9)),_0x22fcdd=parseLoadScriptMode(_0x1b652b[_0xeae68d(0x19d)](_0xeae68d(0x15f))),_0x43d5c1=parseParams(_0x3edc7b),_0x39c7e8=!!(_0x43d5c1[_0xeae68d(0x17f)]||_0x43d5c1[_0xeae68d(0x170)]);if(_0x4ff0da||_0x39c7e8&&!isInteractive()){const _0x1b0a84=await runMenuUpdateCore(_0x1b652b[_0xeae68d(0x1b4)],_0x1b652b['cookie'],_0x3edc7b,{'mode':_0x315188,'force':_0x2e3d0b,'selection':parseSelection(_0x1b652b),'loadScriptMode':_0x22fcdd});return _0x1b0a84[_0xeae68d(0x166)]?writeCliSideChannelLine(_0xeae68d(0x18a)):(writeCliSideChannelLine(_0xeae68d(0x1b5)+_0x1b0a84[_0xeae68d(0x181)]+_0xeae68d(0x168)),_0x1b0a84['failed']>0x0&&writeCliSideChannelLine('!\x20'+_0x1b0a84[_0xeae68d(0x16d)]+'\x20menu(s)\x20failed')),{'ok':_0x1b0a84[_0xeae68d(0x16d)]===0x0,'data':_0x1b0a84,'message':_0x1b0a84[_0xeae68d(0x166)]?_0xeae68d(0x191):_0xeae68d(0x17d)+_0x1b0a84[_0xeae68d(0x181)]+'\x20updated,\x20'+_0x1b0a84[_0xeae68d(0x16d)]+_0xeae68d(0x15e)};}requireInteractive();const _0x12cf00=startSpinner(_0xeae68d(0x17c));let _0x5693e0;try{_0x5693e0=await fetchOnlineMenuList(_0x1b652b['appCode'],_0x1b652b[_0xeae68d(0x1a3)]),stopSpinner(_0x12cf00,_0xeae68d(0x16f),!![]);}catch(_0x235c75){stopSpinner(_0x12cf00,_0xeae68d(0x194),![]);throw CliErrors[_0xeae68d(0x18b)](_0x235c75 instanceof Error?_0x235c75[_0xeae68d(0x196)]:'Failed\x20to\x20fetch\x20online\x20menu\x20list');}const _0x2faca0=filterMenusWithResources(_0x5693e0),_0x1e33b8=parseSelection(_0x1b652b,![]),_0xf8ee69=_0x1e33b8?selectMenusForUpdate(_0x2faca0,_0x1e33b8):_0x2faca0;if(_0xf8ee69[_0xeae68d(0x171)]===0x0)return writeCliSideChannelLine(a107_0x39ddea[_0xeae68d(0x15c)](_0xeae68d(0x1a0))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a107_0x39ddea[_0xeae68d(0x183)](_0xeae68d(0x1a4)+_0xf8ee69['length']+_0xeae68d(0x1ad))),writeCliSideChannelLine(renderUpdateSummary(_0xf8ee69['map'](_0x435afc=>_0x435afc['label']),[_0x43d5c1[_0xeae68d(0x17f)],_0x43d5c1[_0xeae68d(0x170)]])),writeCliSideChannelLine('');let _0x2b197a=_0x43d5c1[_0xeae68d(0x17f)],_0x49fdc0=_0x43d5c1['cssUrl'];!_0x2b197a&&(_0x2b197a=await askJsUrl());!_0x49fdc0&&(_0x49fdc0=await askCssUrl());const _0x361899=await askConfirm(_0xeae68d(0x18d)+_0xf8ee69['length']+_0xeae68d(0x1ae)+_0x2b197a+_0xeae68d(0x160)+_0x49fdc0+'?');if(!_0x361899)return writeCliSideChannelLine(a107_0x39ddea['gray'](_0xeae68d(0x1a7))),{'ok':!![]};const _0x3cf43a=startSpinner(_0xeae68d(0x19a)+_0xf8ee69['length']+_0xeae68d(0x19f));try{const _0x16b7c4=await runMenuUpdateCore(_0x1b652b[_0xeae68d(0x1b4)],_0x1b652b['cookie'],JSON[_0xeae68d(0x1b3)]({'jsUrl':_0x2b197a,'cssUrl':_0x49fdc0}),{'mode':_0x315188,'force':_0x2e3d0b,'selection':{'all':![],'menuIds':_0xf8ee69[_0xeae68d(0x182)](_0xd79bdf=>_0xd79bdf['id']),'paths':[]},'loadScriptMode':_0x22fcdd});return stopSpinner(_0x3cf43a,_0xeae68d(0x1b8)+_0x16b7c4['updated']+_0xeae68d(0x189),_0x16b7c4[_0xeae68d(0x16d)]===0x0),{'ok':_0x16b7c4[_0xeae68d(0x16d)]===0x0,'data':_0x16b7c4,'message':_0x16b7c4[_0xeae68d(0x16d)]>0x0?_0xeae68d(0x17d)+_0x16b7c4[_0xeae68d(0x181)]+_0xeae68d(0x1ba)+_0x16b7c4[_0xeae68d(0x16d)]+_0xeae68d(0x15e):_0xeae68d(0x17d)+_0x16b7c4[_0xeae68d(0x181)]+'\x20updated.'};}catch(_0x5c684a){stopSpinner(_0x3cf43a,'Menu\x20asset\x20update\x20failed',![]);throw CliErrors[_0xeae68d(0x18b)](_0x5c684a instanceof Error?_0x5c684a['message']:_0xeae68d(0x18e));}}};function ensureRunnableContext(_0x1ad19c,_0x8d4b8d){const _0x22215f=a107_0x1f4477,_0x572ec1=_0x1ad19c[_0x22215f(0x184)]?String(_0x1ad19c[_0x22215f(0x184)])[_0x22215f(0x1b7)]():'';if(!isInProject()&&!_0x8d4b8d&&!_0x572ec1)throw CliErrors[_0x22215f(0x18b)]('menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20'+_0x22215f(0x16e));}function parseMode(_0x542fac){const _0x430f66=a107_0x1f4477;if(!_0x542fac)return _0x430f66(0x1a8);if(_0x542fac===_0x430f66(0x15d)||_0x542fac==='patch')return _0x542fac;throw CliErrors[_0x430f66(0x18b)](_0x430f66(0x1a6));}function parseSelection(_0x2186be,_0x124b12=!![]){const _0x145562=a107_0x1f4477,_0x190eb9=_0x2186be[_0x145562(0x195)](_0x145562(0x198)),_0x14b18e=parseMenuIds(_0x2186be['str'](_0x145562(0x193))),_0x647da4=parseCsv(_0x2186be[_0x145562(0x19d)](_0x145562(0x1aa))),_0x28555f=_0x14b18e[_0x145562(0x171)]>0x0||_0x647da4['length']>0x0;if(_0x190eb9&&_0x28555f)throw CliErrors['validation'](_0x145562(0x16a));if(!_0x190eb9&&!_0x28555f){if(!_0x124b12)return undefined;throw CliErrors[_0x145562(0x18b)]('menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.');}return{'all':_0x190eb9,'menuIds':_0x14b18e,'paths':_0x647da4};}function a107_0x1bba(_0x4c2e0a,_0x4e474c){_0x4c2e0a=_0x4c2e0a-0x15c;const _0x553d66=a107_0x553d();let _0x1bba72=_0x553d66[_0x4c2e0a];return _0x1bba72;}function parseMenuIds(_0x17027d){const _0x4ea63d=a107_0x1f4477,_0x495a35=parseCsv(_0x17027d),_0x24e5bb=_0x495a35[_0x4ea63d(0x182)](Number);if(_0x24e5bb[_0x4ea63d(0x19b)](_0x22c9f1=>!Number[_0x4ea63d(0x1af)](_0x22c9f1)||_0x22c9f1<=0x0))throw CliErrors[_0x4ea63d(0x18b)]('--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.');return[...new Set(_0x24e5bb)];}function parseCsv(_0x5aef22){const _0x2f7d63=a107_0x1f4477;return[...new Set(_0x5aef22[_0x2f7d63(0x167)](',')[_0x2f7d63(0x182)](_0x25b091=>_0x25b091[_0x2f7d63(0x1b7)]())[_0x2f7d63(0x161)](Boolean))];}function parseLoadScriptMode(_0x5c836b){const _0x2b651a=a107_0x1f4477;if(!_0x5c836b)return undefined;if(_0x5c836b==='import'||_0x5c836b===_0x2b651a(0x162)||_0x5c836b===_0x2b651a(0x174))return _0x5c836b;throw CliErrors[_0x2b651a(0x18b)](_0x2b651a(0x177));}function parseParams(_0x2f4da2){const _0xefbe48=a107_0x1f4477;if(!_0x2f4da2)return{};try{const _0x5c5334=JSON[_0xefbe48(0x1b0)](_0x2f4da2);if(typeof _0x5c5334!==_0xefbe48(0x18c)||_0x5c5334===null||Array[_0xefbe48(0x165)](_0x5c5334))return{};return{'jsUrl':typeof _0x5c5334[_0xefbe48(0x17f)]===_0xefbe48(0x16b)?_0x5c5334[_0xefbe48(0x17f)][_0xefbe48(0x1b7)]():undefined,'cssUrl':typeof _0x5c5334['cssUrl']===_0xefbe48(0x16b)?_0x5c5334[_0xefbe48(0x170)]['trim']():undefined};}catch{return{};}}
|
|
1
|
+
const a109_0x54615c=a109_0x3475;(function(_0x510297,_0x863b33){const _0x57ff02=a109_0x3475,_0x338159=_0x510297();while(!![]){try{const _0x590a22=parseInt(_0x57ff02(0x1d4))/0x1*(-parseInt(_0x57ff02(0x1c5))/0x2)+parseInt(_0x57ff02(0x1c2))/0x3*(-parseInt(_0x57ff02(0x1d2))/0x4)+-parseInt(_0x57ff02(0x1dc))/0x5*(-parseInt(_0x57ff02(0x1f6))/0x6)+parseInt(_0x57ff02(0x1d0))/0x7*(parseInt(_0x57ff02(0x1f2))/0x8)+parseInt(_0x57ff02(0x1af))/0x9*(-parseInt(_0x57ff02(0x1d3))/0xa)+parseInt(_0x57ff02(0x1b6))/0xb*(-parseInt(_0x57ff02(0x1cc))/0xc)+-parseInt(_0x57ff02(0x1a5))/0xd*(-parseInt(_0x57ff02(0x1ea))/0xe);if(_0x590a22===_0x863b33)break;else _0x338159['push'](_0x338159['shift']());}catch(_0x574d5d){_0x338159['push'](_0x338159['shift']());}}}(a109_0x4f5e,0x9e378));import a109_0x416806 from'chalk';import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':'menu','command':a109_0x54615c(0x1f3),'description':a109_0x54615c(0x1c7),'risk':a109_0x54615c(0x1d1),'flags':[{'name':a109_0x54615c(0x1fc),'type':a109_0x54615c(0x1b2),'description':a109_0x54615c(0x1de)+a109_0x54615c(0x1fd)},{'name':'mode','type':a109_0x54615c(0x1b2),'description':a109_0x54615c(0x1dd)+'patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','enum':['replace','patch'],'default':a109_0x54615c(0x1be)},{'name':a109_0x54615c(0x1aa),'type':a109_0x54615c(0x1cd),'description':a109_0x54615c(0x1b4)},{'name':'menu-ids','type':a109_0x54615c(0x1b2),'description':'Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update'},{'name':a109_0x54615c(0x1ed),'type':'string','description':'Exact\x20comma-separated\x20menu\x20paths\x20to\x20update'},{'name':a109_0x54615c(0x1b8),'type':a109_0x54615c(0x1cd),'description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':a109_0x54615c(0x1e2),'type':a109_0x54615c(0x1b2),'enum':['import',a109_0x54615c(0x1d6),a109_0x54615c(0x1bf)],'description':a109_0x54615c(0x1c1)}],async 'dryRun'(_0x5f5bca){const _0x4059b7=a109_0x54615c;ensureRunnableContext(_0x5f5bca[_0x4059b7(0x1e0)],_0x5f5bca[_0x4059b7(0x1b1)]);const _0x25d43c=await runMenuUpdateCore(_0x5f5bca[_0x4059b7(0x1ca)],_0x5f5bca[_0x4059b7(0x1b5)],_0x5f5bca[_0x4059b7(0x1f8)]('params'),{'mode':parseMode(_0x5f5bca['str']('mode')),'dryRun':!![],'force':_0x5f5bca[_0x4059b7(0x1d5)](_0x4059b7(0x1aa)),'selection':parseSelection(_0x5f5bca),'loadScriptMode':parseLoadScriptMode(_0x5f5bca[_0x4059b7(0x1f8)](_0x4059b7(0x1e2)))});return{'method':_0x4059b7(0x1f1),'url':_0x4059b7(0x1ab),'body':_0x25d43c,'description':_0x25d43c[_0x4059b7(0x1a9)]?_0x4059b7(0x1ec):_0x4059b7(0x1e8)+(_0x25d43c[_0x4059b7(0x1a8)]?.[_0x4059b7(0x1f5)]??0x0)+_0x4059b7(0x1b9)};},async 'execute'(_0x4e992e){const _0x1df26c=a109_0x54615c;ensureRunnableContext(_0x4e992e[_0x1df26c(0x1e0)],_0x4e992e[_0x1df26c(0x1b1)]);const _0xbfa5b=_0x4e992e['str']('params'),_0x855909=parseMode(_0x4e992e['str'](_0x1df26c(0x1b7))),_0x4ca2ec=_0x4e992e['bool'](_0x1df26c(0x1aa)),_0x5aae70=parseLoadScriptMode(_0x4e992e[_0x1df26c(0x1f8)](_0x1df26c(0x1e2))),_0x300a19=parseParams(_0xbfa5b),_0x52c5c7=!!(_0x300a19[_0x1df26c(0x1ce)]||_0x300a19['cssUrl']);if(_0x52c5c7){const _0x69ee1b=await runMenuUpdateCore(_0x4e992e['appCode'],_0x4e992e[_0x1df26c(0x1b5)],_0xbfa5b,{'mode':_0x855909,'force':_0x4ca2ec,'selection':parseSelection(_0x4e992e),'loadScriptMode':_0x5aae70});return _0x69ee1b[_0x1df26c(0x1a9)]?writeCliSideChannelLine(_0x1df26c(0x1d7)):(writeCliSideChannelLine(_0x1df26c(0x1ef)+_0x69ee1b[_0x1df26c(0x1d8)]+_0x1df26c(0x1cb)),_0x69ee1b[_0x1df26c(0x1cf)]>0x0&&writeCliSideChannelLine('!\x20'+_0x69ee1b[_0x1df26c(0x1cf)]+'\x20menu(s)\x20failed')),{'ok':_0x69ee1b[_0x1df26c(0x1cf)]===0x0,'data':_0x69ee1b,'message':_0x69ee1b[_0x1df26c(0x1a9)]?_0x1df26c(0x1da):_0x1df26c(0x1e9)+_0x69ee1b[_0x1df26c(0x1d8)]+_0x1df26c(0x1b0)+_0x69ee1b[_0x1df26c(0x1cf)]+_0x1df26c(0x1f4)};}requireInteractive();const _0x45980c=startSpinner(_0x1df26c(0x1fa));let _0x503e6b;try{_0x503e6b=await fetchOnlineMenuList(_0x4e992e['appCode'],_0x4e992e[_0x1df26c(0x1b5)]),stopSpinner(_0x45980c,_0x1df26c(0x1f0),!![]);}catch(_0x5cff03){stopSpinner(_0x45980c,_0x1df26c(0x1e5),![]);throw CliErrors[_0x1df26c(0x1c9)](_0x5cff03 instanceof Error?_0x5cff03[_0x1df26c(0x1a7)]:_0x1df26c(0x1e5));}const _0x106e77=filterMenusWithResources(_0x503e6b),_0x4ea8e8=parseSelection(_0x4e992e,![]),_0x2a4469=_0x4ea8e8?selectMenusForUpdate(_0x106e77,_0x4ea8e8):_0x106e77;if(_0x2a4469[_0x1df26c(0x1f5)]===0x0)return writeCliSideChannelLine(a109_0x416806['yellow'](_0x1df26c(0x1fe))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a109_0x416806['cyan'](_0x1df26c(0x1d9)+_0x2a4469[_0x1df26c(0x1f5)]+_0x1df26c(0x1c0))),writeCliSideChannelLine(renderUpdateSummary(_0x2a4469[_0x1df26c(0x1ae)](_0x12678f=>_0x12678f[_0x1df26c(0x1eb)]),[_0x300a19['jsUrl'],_0x300a19[_0x1df26c(0x1e3)]])),writeCliSideChannelLine('');let _0x222a33=_0x300a19[_0x1df26c(0x1ce)],_0x497e90=_0x300a19[_0x1df26c(0x1e3)];!_0x222a33&&(_0x222a33=await askJsUrl());!_0x497e90&&(_0x497e90=await askCssUrl());const _0x2b3a3f=await askConfirm(_0x1df26c(0x1e1)+_0x2a4469[_0x1df26c(0x1f5)]+_0x1df26c(0x1c3)+_0x222a33+_0x1df26c(0x1fb)+_0x497e90+'?');if(!_0x2b3a3f)return writeCliSideChannelLine(a109_0x416806['gray'](_0x1df26c(0x1c4))),{'ok':!![]};const _0x1a1a14=startSpinner(_0x1df26c(0x1db)+_0x2a4469[_0x1df26c(0x1f5)]+'\x20menu(s)...');try{const _0x5263dd=await runMenuUpdateCore(_0x4e992e['appCode'],_0x4e992e['cookie'],JSON['stringify']({'jsUrl':_0x222a33,'cssUrl':_0x497e90}),{'mode':_0x855909,'force':_0x4ca2ec,'selection':{'all':![],'menuIds':_0x2a4469[_0x1df26c(0x1ae)](_0x14fa92=>_0x14fa92['id']),'paths':[]},'loadScriptMode':_0x5aae70});return stopSpinner(_0x1a1a14,_0x1df26c(0x1f7)+_0x5263dd[_0x1df26c(0x1d8)]+_0x1df26c(0x1bd),_0x5263dd[_0x1df26c(0x1cf)]===0x0),{'ok':_0x5263dd['failed']===0x0,'data':_0x5263dd,'message':_0x5263dd[_0x1df26c(0x1cf)]>0x0?_0x1df26c(0x1e9)+_0x5263dd['updated']+_0x1df26c(0x1b0)+_0x5263dd[_0x1df26c(0x1cf)]+_0x1df26c(0x1f4):_0x1df26c(0x1e9)+_0x5263dd[_0x1df26c(0x1d8)]+'\x20updated.'};}catch(_0x1dcdce){stopSpinner(_0x1a1a14,_0x1df26c(0x1e6),![]);throw CliErrors[_0x1df26c(0x1c9)](_0x1dcdce instanceof Error?_0x1dcdce[_0x1df26c(0x1a7)]:_0x1df26c(0x1e6));}}};function a109_0x3475(_0x529440,_0x2f1034){_0x529440=_0x529440-0x1a5;const _0x4f5ea6=a109_0x4f5e();let _0x34759c=_0x4f5ea6[_0x529440];return _0x34759c;}function ensureRunnableContext(_0x30be47,_0x58ff71){const _0x5bc6c8=a109_0x54615c,_0x36eea7=_0x30be47['appcode']?String(_0x30be47[_0x5bc6c8(0x1ad)])[_0x5bc6c8(0x1ee)]():'';if(!isInProject()&&!_0x58ff71&&!_0x36eea7)throw CliErrors['validation'](_0x5bc6c8(0x1f9)+_0x5bc6c8(0x1ac));}function parseMode(_0x30b808){const _0x4e4599=a109_0x54615c;if(!_0x30b808)return _0x4e4599(0x1be);if(_0x30b808===_0x4e4599(0x1b3)||_0x30b808===_0x4e4599(0x1be))return _0x30b808;throw CliErrors['validation']('Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch');}function parseSelection(_0x3bfb5a,_0x23f70b=!![]){const _0x408249=a109_0x54615c,_0x21b84a=_0x3bfb5a[_0x408249(0x1d5)](_0x408249(0x1b8)),_0x4fa05b=parseMenuIds(_0x3bfb5a[_0x408249(0x1f8)](_0x408249(0x1a6))),_0x287577=parseCsv(_0x3bfb5a['str'](_0x408249(0x1ed))),_0x5658b4=_0x4fa05b[_0x408249(0x1f5)]>0x0||_0x287577[_0x408249(0x1f5)]>0x0;if(_0x21b84a&&_0x5658b4)throw CliErrors['validation'](_0x408249(0x1df));if(!_0x21b84a&&!_0x5658b4){if(!_0x23f70b)return undefined;throw CliErrors['validation']('menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.');}return{'all':_0x21b84a,'menuIds':_0x4fa05b,'paths':_0x287577};}function a109_0x4f5e(){const _0x456d30=['Updated\x20','str','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','Fetching\x20online\x20menu\x20list...','\x20and\x20CSS:\x20','params','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','12636uAfPVk','menu-ids','message','diffs','skipped','force','/smartapi/menu/update','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','appcode','map','7005717WeXPPU','\x20updated,\x20','selectedAppName','string','replace','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','cookie','22VegYyW','mode','all','\x20menu\x20resource\x20set(s).','object','split','parse','\x20menu(s)','patch','fetch','\x20menu(s)\x20with\x20existing\x20resources','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','9EePOgJ','\x20menu(s)\x20with\x20JS:\x20','\x20\x20Cancelled.','4BWdyVQ','some','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','filter','validation','appCode','\x20menu(s)\x20updated','6539628VJMbST','boolean','jsUrl','failed','250859UTwSef','write','485308xEQtkH','10ABunTg','83522CemLZf','bool','script','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','updated','\x20\x20Found\x20','Menu\x20asset\x20update\x20skipped','Updating\x20','2071525rQDAIX','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','rawFlags','\x20\x20Update\x20','load-mode','cssUrl','isArray','Failed\x20to\x20fetch\x20online\x20menu\x20list','Menu\x20asset\x20update\x20failed','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','Would\x20update\x20','Menu\x20asset\x20update\x20completed:\x20','30926LqwkpK','label','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','paths','trim','✓\x20Menu\x20asset\x20update\x20completed:\x20','Online\x20menu\x20list\x20fetched','POST','16fMHPyC','asset-update','\x20failed.','length','12PlQjAM'];a109_0x4f5e=function(){return _0x456d30;};return a109_0x4f5e();}function parseMenuIds(_0x32ee8e){const _0x41c962=a109_0x54615c,_0xde1895=parseCsv(_0x32ee8e),_0x3c0ed5=_0xde1895['map'](Number);if(_0x3c0ed5[_0x41c962(0x1c6)](_0x161895=>!Number['isSafeInteger'](_0x161895)||_0x161895<=0x0))throw CliErrors[_0x41c962(0x1c9)](_0x41c962(0x1e7));return[...new Set(_0x3c0ed5)];}function parseCsv(_0x14b4ff){const _0x1b92f1=a109_0x54615c;return[...new Set(_0x14b4ff[_0x1b92f1(0x1bb)](',')[_0x1b92f1(0x1ae)](_0x2ad514=>_0x2ad514[_0x1b92f1(0x1ee)]())[_0x1b92f1(0x1c8)](Boolean))];}function parseLoadScriptMode(_0x46a50a){const _0x1e9e35=a109_0x54615c;if(!_0x46a50a)return undefined;if(_0x46a50a==='import'||_0x46a50a===_0x1e9e35(0x1d6)||_0x46a50a===_0x1e9e35(0x1bf))return _0x46a50a;throw CliErrors[_0x1e9e35(0x1c9)]('Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch');}function parseParams(_0x455a0c){const _0x4e10a5=a109_0x54615c;if(!_0x455a0c)return{};try{const _0x1e02fb=JSON[_0x4e10a5(0x1bc)](_0x455a0c);if(typeof _0x1e02fb!==_0x4e10a5(0x1ba)||_0x1e02fb===null||Array[_0x4e10a5(0x1e4)](_0x1e02fb))return{};return{'jsUrl':typeof _0x1e02fb['jsUrl']===_0x4e10a5(0x1b2)?_0x1e02fb['jsUrl'][_0x4e10a5(0x1ee)]():undefined,'cssUrl':typeof _0x1e02fb[_0x4e10a5(0x1e3)]===_0x4e10a5(0x1b2)?_0x1e02fb[_0x4e10a5(0x1e3)][_0x4e10a5(0x1ee)]():undefined};}catch{return{};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a108_0xffa8(_0xc270d1,_0x31d89f){_0xc270d1=_0xc270d1-0x133;const _0x4be481=a108_0x4be4();let _0xffa8c7=_0x4be481[_0xc270d1];return _0xffa8c7;}const a108_0xf501f1=a108_0xffa8;(function(_0x462e7d,_0x3740ae){const _0xaa2c63=a108_0xffa8,_0x1d863d=_0x462e7d();while(!![]){try{const _0x57cbd1=-parseInt(_0xaa2c63(0x19f))/0x1*(-parseInt(_0xaa2c63(0x188))/0x2)+-parseInt(_0xaa2c63(0x14f))/0x3*(-parseInt(_0xaa2c63(0x166))/0x4)+-parseInt(_0xaa2c63(0x161))/0x5+-parseInt(_0xaa2c63(0x17b))/0x6+-parseInt(_0xaa2c63(0x13a))/0x7*(-parseInt(_0xaa2c63(0x147))/0x8)+parseInt(_0xaa2c63(0x174))/0x9+-parseInt(_0xaa2c63(0x149))/0xa;if(_0x57cbd1===_0x3740ae)break;else _0x1d863d['push'](_0x1d863d['shift']());}catch(_0xd9a6b9){_0x1d863d['push'](_0x1d863d['shift']());}}}(a108_0x4be4,0xc5643));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a108_0xf501f1(0x19c),'path':'/smartapi/menu/batchDelete'}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a108_0xf501f1(0x18c)},MENU_DELETE_RECURSIVE_FLAG={'name':'recursive','type':a108_0xf501f1(0x13e),'description':a108_0xf501f1(0x196)},MENU_DELETE_PLAN_OUT_FLAG={'name':a108_0xf501f1(0x16c),'type':'string','description':'Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file'},MENU_DELETE_PLAN_FLAG={'name':a108_0xf501f1(0x140),'type':a108_0xf501f1(0x187),'description':a108_0xf501f1(0x18e)};export const menuDelete={'service':a108_0xf501f1(0x165),'command':a108_0xf501f1(0x184),'description':a108_0xf501f1(0x14d),'risk':a108_0xf501f1(0x1a0),'structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x205b03){const _0x2d9048=a108_0xf501f1;_0x205b03[_0x2d9048(0x175)](_0x2d9048(0x1a5))?validateDeleteDryRunInput(_0x205b03):validateDeleteExecuteInput(_0x205b03),requireExplicitYes(_0x205b03);},async 'dryRun'(_0x55ff76){const _0x810a49=a108_0xf501f1;validateDeleteDryRunInput(_0x55ff76);const _0x543ea7=await buildDeletePlan(_0x55ff76),_0x80fe7f=createMenuDeletePlanFile(_0x55ff76['appCode'],_0x543ea7),_0x1b7f4f=await writeMenuDeletePlan(_0x55ff76['str'](_0x810a49(0x16c)),_0x80fe7f),_0x4b0954=mutationResult({..._0x543ea7,'planFile':{'path':_0x1b7f4f,'createdAt':_0x80fe7f[_0x810a49(0x194)],'expiresAt':_0x80fe7f['expiresAt']}});return menuDryRunResult(_0x4b0954,{'method':'POST','url':_0x810a49(0x18d),'body':{'idList':_0x4b0954[_0x810a49(0x19d)]},'description':_0x810a49(0x172)+(_0x4b0954[_0x810a49(0x19d)]?.[_0x810a49(0x190)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x4b0954[_0x810a49(0x156)]['id']+_0x810a49(0x15c)+_0x1b7f4f+'.'});},async 'execute'(_0x457046){const _0x3f942e=a108_0xf501f1;requireExplicitYes(_0x457046),validateDeleteExecuteInput(_0x457046);const _0x3baf2f=await readMenuDeletePlan(_0x457046[_0x3f942e(0x16e)](_0x3f942e(0x140))),_0x45e541=mutationPlanFromDeleteFile(_0x3baf2f[_0x3f942e(0x140)],_0x3baf2f[_0x3f942e(0x18b)]),_0x1e9694=_0x3baf2f[_0x3f942e(0x140)][_0x3f942e(0x139)]['id'];try{assertMenuDeletePlanExecutable(_0x3baf2f['plan'],_0x457046[_0x3f942e(0x1a8)]);}catch(_0x28ec44){throw menuFailure(asMenuError(_0x28ec44),_0x45e541,{'stage':_0x3f942e(0x183),'failed':{'id':_0x1e9694}});}let _0x1ef1bc,_0xc42b6b;try{_0x1ef1bc=await fetchMutationSnapshot(_0x457046,_0x3f942e(0x19a),_0x1e9694),_0xc42b6b=assertMenuDeletePlanCurrent(_0x3baf2f[_0x3f942e(0x140)],_0x457046[_0x3f942e(0x1a8)],_0x1ef1bc),assertDeleteTargetsComplete(_0x3baf2f[_0x3f942e(0x140)],_0x1ef1bc),_0xc42b6b[_0x3f942e(0x191)](_0x19d734=>assertDeleteSafety(_0x19d734,_0x3baf2f[_0x3f942e(0x140)]['recursive'])),assertNoSharedPages(_0x1ef1bc,_0xc42b6b),assertCascadeMatchesPlan(_0x45e541,_0xc42b6b);}catch(_0x4e6490){throw menuFailure(asMenuError(_0x4e6490),_0x45e541,{'stage':_0x3f942e(0x18f),'failed':{'id':_0x1e9694}});}const _0x522ff7=_0x3baf2f[_0x3f942e(0x140)][_0x3f942e(0x19d)];let _0x438295;try{_0x438295=await batchDeleteMenuEntities(_0x457046[_0x3f942e(0x193)],_0x522ff7);}catch(_0x2ad158){const _0x40fab0=mapMenuApiError(_0x2ad158,_0x3f942e(0x13c)),_0x4096a0=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0x3d3d63;try{_0x3d3d63=await readDeleteOutcome(_0x457046,_0x522ff7);}catch(_0x3f17eb){const _0x3d9b44=describeMenuErrorCause(_0x3f17eb,'read\x20menu\x20state\x20after\x20batch\x20delete\x20failure',_0x1e9694);_0x4096a0[_0x3f942e(0x1a6)](_0x3f942e(0x17f)+_0x3d9b44[_0x3f942e(0x16f)]+_0x3f942e(0x144)+_0x3d9b44[_0x3f942e(0x178)]);throw menuFailure(_0x40fab0,_0x45e541,{'stage':'batch-delete','failed':{'targetIds':_0x522ff7,'targetIdsAbsent':_0x3f942e(0x180),..._0x3d9b44},'warnings':_0x4096a0,'verification':{'status':_0x3f942e(0x158),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x522ff7}});}throw menuFailure(_0x40fab0,_0x45e541,{'stage':_0x3f942e(0x142),'succeeded':_0x3d3d63[_0x3f942e(0x176)][_0x3f942e(0x154)](_0xa4cca8=>({'id':_0xa4cca8,'deleted':!![]})),'failed':{'targetIds':_0x522ff7,'absentIds':_0x3d3d63[_0x3f942e(0x176)],'remainingIds':_0x3d3d63[_0x3f942e(0x197)]},'warnings':_0x4096a0,'verification':verificationFromOutcome(_0x3d3d63)});}if(_0x438295!==_0x522ff7['length']){const _0x6d844d=menuError('menu_batch_delete_count_mismatch',_0x3f942e(0x15a)+_0x438295+_0x3f942e(0x141)+_0x522ff7[_0x3f942e(0x190)]+'.',_0x3f942e(0x14b)),_0x59d6e6=[_0x3f942e(0x148)];let _0x415187;try{_0x415187=await readDeleteOutcome(_0x457046,_0x522ff7);}catch(_0x2a5be0){const _0x203e08=describeMenuErrorCause(_0x2a5be0,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x1e9694);_0x59d6e6['push'](_0x3f942e(0x15b)+_0x203e08[_0x3f942e(0x16f)]+_0x3f942e(0x144)+_0x203e08[_0x3f942e(0x178)]);throw menuFailure(_0x6d844d,_0x45e541,{'stage':_0x3f942e(0x142),'failed':{'targetIds':_0x522ff7,'expectedCount':_0x522ff7[_0x3f942e(0x190)],'reportedDeletedCount':_0x438295,'targetIdsAbsent':'unconfirmed',..._0x203e08},'warnings':_0x59d6e6,'verification':{'status':'failed','lookupCommand':_0x3f942e(0x177),'targetIds':_0x522ff7}});}throw menuFailure(_0x6d844d,_0x45e541,{'stage':_0x3f942e(0x142),'succeeded':_0x415187['absentIds'][_0x3f942e(0x154)](_0x250c3e=>({'id':_0x250c3e,'deleted':!![]})),'failed':{'targetIds':_0x522ff7,'expectedCount':_0x522ff7['length'],'reportedDeletedCount':_0x438295,'absentIds':_0x415187[_0x3f942e(0x176)],'remainingIds':_0x415187[_0x3f942e(0x197)]},'warnings':_0x59d6e6,'verification':verificationFromOutcome(_0x415187)});}let _0x56dc5e;try{_0x56dc5e=await readDeleteOutcome(_0x457046,_0x522ff7);}catch(_0x1323b9){const _0x157f43=describeMenuErrorCause(_0x1323b9,_0x3f942e(0x155),_0x1e9694),_0x437f8f=asVerificationError(_0x1323b9,_0x3f942e(0x168)+_0x1e9694+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x437f8f,_0x45e541,{'stage':_0x3f942e(0x15f),'succeeded':_0x522ff7['map'](_0x55bf2d=>({'id':_0x55bf2d,'deleteRequested':!![]})),'failed':{'id':_0x1e9694,'targetIds':_0x522ff7,'targetIdsAbsent':_0x3f942e(0x180),..._0x157f43},'warnings':[_0x3f942e(0x16a)],'verification':{'status':_0x3f942e(0x158),'lookupCommand':_0x3f942e(0x177),'targetIds':_0x522ff7}});}if(_0x56dc5e['remainingIds'][_0x3f942e(0x190)]>0x0){const _0x29de64=menuError(_0x3f942e(0x19b),'One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20'+_0x56dc5e[_0x3f942e(0x197)][_0x3f942e(0x1a2)](',\x20')+'.',_0x3f942e(0x14b));throw menuFailure(_0x29de64,_0x45e541,{'stage':_0x3f942e(0x15f),'succeeded':_0x522ff7['map'](_0x48c802=>({'id':_0x48c802,'deleteRequested':!![]})),'failed':{'id':_0x1e9694,'targetIds':_0x522ff7,'absentIds':_0x56dc5e[_0x3f942e(0x176)],'remainingIds':_0x56dc5e[_0x3f942e(0x197)]},'warnings':[_0x3f942e(0x1a1)],'verification':verificationFromOutcome(_0x56dc5e)});}const _0x2a7304=_0x522ff7[_0x3f942e(0x154)](_0x592861=>({'id':_0x592861,'deleted':!![]})),_0x470630=mutationResult({..._0x45e541,'dryRun':![],'succeeded':_0x2a7304,'verification':{'checkedBy':_0x3f942e(0x185),'plannedSnapshotHash':_0x45e541['snapshotHash'],'finalSnapshotHash':_0x56dc5e['snapshot']['hash'],'reportedDeletedCount':_0x438295,'targetAbsent':!_0x56dc5e[_0x3f942e(0x181)][_0x3f942e(0x143)][_0x3f942e(0x17e)](_0x1e9694),'allTargetsAbsent':!![],'targetIds':_0x522ff7}});return{'ok':!![],'data':_0x470630,'message':_0x3f942e(0x15d)+_0x2a7304['length']+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x1e9694+'.'};}};async function readDeleteOutcome(_0x3a2c69,_0x4e5cbe){const _0x12772c=a108_0xf501f1,_0x31f2bd=await fetchMenuSnapshot(_0x3a2c69[_0x12772c(0x1a8)],_0x3a2c69[_0x12772c(0x193)]);return{'snapshot':_0x31f2bd,'absentIds':_0x4e5cbe['filter'](_0x40981f=>!_0x31f2bd[_0x12772c(0x143)][_0x12772c(0x17e)](_0x40981f)),'remainingIds':_0x4e5cbe['filter'](_0x1c8a0d=>_0x31f2bd[_0x12772c(0x143)][_0x12772c(0x17e)](_0x1c8a0d))};}function verificationFromOutcome(_0x5bd62b){const _0x221248=a108_0xf501f1;return{'checkedBy':_0x221248(0x185),'absentIds':_0x5bd62b[_0x221248(0x176)],'remainingIds':_0x5bd62b['remainingIds']};}function validateDeleteDryRunInput(_0x51b64c){const _0x14ffeb=a108_0xf501f1;validateExactId(_0x51b64c);if(!hasFlag(_0x51b64c,'plan-out')||!_0x51b64c['str']('plan-out')[_0x14ffeb(0x13d)]())throw CliErrors[_0x14ffeb(0x146)](_0x14ffeb(0x16c),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x51b64c,_0x14ffeb(0x140)))throw CliErrors[_0x14ffeb(0x164)](_0x14ffeb(0x1a4));}function validateDeleteExecuteInput(_0x58581a){const _0x2a46f9=a108_0xf501f1;if(!hasFlag(_0x58581a,_0x2a46f9(0x140))||!_0x58581a[_0x2a46f9(0x16e)](_0x2a46f9(0x140))['trim']())throw CliErrors[_0x2a46f9(0x146)]('plan',_0x2a46f9(0x1aa));const _0x192334=['id','recursive',_0x2a46f9(0x16c),_0x2a46f9(0x17a),_0x2a46f9(0x1a9),_0x2a46f9(0x169)][_0x2a46f9(0x189)](_0x419c48=>hasFlag(_0x58581a,_0x419c48));if(_0x192334[_0x2a46f9(0x190)]>0x0)throw CliErrors[_0x2a46f9(0x164)](_0x2a46f9(0x179)+_0x192334['map'](_0xdf4395=>'--'+_0xdf4395)[_0x2a46f9(0x1a2)](',\x20')+'.');}async function buildDeletePlan(_0x4a06fa){const _0x33c34f=a108_0xf501f1,_0x3b49fc=validateExactId(_0x4a06fa),_0x12049b=await fetchMutationSnapshot(_0x4a06fa,_0x33c34f(0x14c),_0x3b49fc),_0x1f92c8=requireMenu(_0x12049b,_0x3b49fc);assertExpectedState(_0x4a06fa,_0x1f92c8);const _0x4a34a9=_0x4a06fa[_0x33c34f(0x175)]('recursive');let _0x44cc81;if(_0x4a34a9){if(_0x1f92c8[_0x33c34f(0x151)]['trim']()[_0x33c34f(0x171)]()!==_0x33c34f(0x173))throw menuError(_0x33c34f(0x136),_0x33c34f(0x162)+_0x1f92c8['id']+_0x33c34f(0x137)+(_0x1f92c8[_0x33c34f(0x151)]||_0x33c34f(0x133))+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x44cc81=collectDeleteTargets(_0x12049b,_0x1f92c8),_0x44cc81[_0x33c34f(0x191)](_0x75fefc=>assertDeleteSafety(_0x75fefc,!![]));}else assertDeleteSafety(_0x1f92c8),_0x44cc81=[_0x1f92c8];assertNoSharedPages(_0x12049b,_0x44cc81);const _0x2ef047=_0x44cc81[_0x33c34f(0x154)](_0x3be4ab=>_0x3be4ab['id']),_0x3e0e78=cascadeForTargets(_0x44cc81),_0x2cb326=_0x3e0e78[_0x33c34f(0x186)][_0x33c34f(0x190)]>0x0?[_0x33c34f(0x1ab)]:[];return mutationResult({'operation':_0x33c34f(0x184),'selector':{'id':_0x3b49fc,'recursive':_0x4a34a9},'before':_0x1f92c8,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x33c34f(0x19c),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x2ef047}}],'targets':_0x44cc81,'deleteOrder':_0x2ef047,'snapshotHash':_0x12049b['hash'],'cascade':_0x3e0e78,'warnings':_0x2cb326});}function assertDeleteSafety(_0xc4aea9,_0x4186a8=![]){const _0x3ae274=a108_0xf501f1,_0x167e72=_0xc4aea9[_0x3ae274(0x151)][_0x3ae274(0x13d)]()[_0x3ae274(0x171)]()===_0x3ae274(0x173);if(_0xc4aea9[_0x3ae274(0x153)]>0x0&&(!_0x4186a8||!_0x167e72))throw menuError('menu_non_empty',_0x3ae274(0x162)+_0xc4aea9['id']+_0x3ae274(0x135)+_0xc4aea9['childrenCount']+_0x3ae274(0x170),_0x3ae274(0x17d)+_0xc4aea9[_0x3ae274(0x160)][_0x3ae274(0x1a2)](',\x20'));if(_0x167e72&&_0xc4aea9[_0x3ae274(0x16b)]!=null)throw menuError(_0x3ae274(0x163),_0x3ae274(0x198)+_0xc4aea9['id']+'\x20is\x20unexpectedly\x20bound\x20to\x20page\x20'+_0xc4aea9[_0x3ae274(0x16b)]+_0x3ae274(0x13b),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x167e72)return;if(!_0xc4aea9['resourcesValid'])throw menuError(_0x3ae274(0x167),_0x3ae274(0x198)+_0xc4aea9['id']+_0x3ae274(0x152),_0x3ae274(0x1ac));if(_0xc4aea9[_0x3ae274(0x159)][_0x3ae274(0x190)]>0x0)throw menuError(_0x3ae274(0x14a),'Folder\x20'+_0xc4aea9['id']+'\x20still\x20references\x20'+_0xc4aea9[_0x3ae274(0x159)][_0x3ae274(0x190)]+'\x20resource\x20URL(s).',_0x3ae274(0x195));}function collectDeleteTargets(_0x45db57,_0x1e5bcb){const _0x1d465a=[],_0x280752=new Set(),_0x4d766a=new Set(),_0x3f0ffc=_0x4877a4=>{const _0x56fc94=a108_0xffa8;if(_0x280752[_0x56fc94(0x17e)](_0x4877a4['id']))throw menuError(_0x56fc94(0x192),'Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20'+_0x4877a4['id']+'.');if(_0x4d766a[_0x56fc94(0x17e)](_0x4877a4['id']))return;_0x280752['add'](_0x4877a4['id']);for(const _0x3e1988 of _0x4877a4[_0x56fc94(0x160)]){const _0x28e79b=_0x45db57[_0x56fc94(0x143)][_0x56fc94(0x138)](_0x3e1988);if(!_0x28e79b)throw menuError('menu_tree_invalid','Menu\x20'+_0x4877a4['id']+_0x56fc94(0x13f)+_0x3e1988+'.');_0x3f0ffc(_0x28e79b);}_0x280752[_0x56fc94(0x184)](_0x4877a4['id']),_0x4d766a[_0x56fc94(0x18a)](_0x4877a4['id']),_0x1d465a[_0x56fc94(0x1a6)](_0x4877a4);};return _0x3f0ffc(_0x1e5bcb),_0x1d465a;}function assertDeleteTargetsComplete(_0x3a69d9,_0x2c0893){const _0x5dc129=a108_0xf501f1,_0x532566=requireMenu(_0x2c0893,_0x3a69d9[_0x5dc129(0x139)]['id']);if(_0x3a69d9[_0x5dc129(0x157)]&&_0x532566[_0x5dc129(0x151)][_0x5dc129(0x13d)]()['toLowerCase']()!==_0x5dc129(0x173))throw menuError(_0x5dc129(0x19e),_0x5dc129(0x182)+_0x532566['id']+_0x5dc129(0x14e));const _0x12e44f=_0x3a69d9[_0x5dc129(0x157)]?collectDeleteTargets(_0x2c0893,_0x532566)[_0x5dc129(0x154)](_0x33d4be=>_0x33d4be['id']):[_0x532566['id']];if(JSON[_0x5dc129(0x15e)](_0x3a69d9[_0x5dc129(0x19d)])!==JSON['stringify'](_0x12e44f))throw menuError(_0x5dc129(0x19e),'Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.',_0x5dc129(0x134));}function assertNoSharedPages(_0x11a100,_0x5936a2){const _0xcb09a2=a108_0xf501f1,_0x477d88=new Set(_0x5936a2[_0xcb09a2(0x154)](_0x31ddea=>_0x31ddea['id'])),_0x28f254=new Set(_0x5936a2['map'](_0xe2d32f=>_0xe2d32f['pageId'])[_0xcb09a2(0x189)](_0x46af71=>_0x46af71!=null));if(_0x28f254['size']===0x0)return;const _0x314999=_0x11a100[_0xcb09a2(0x17c)][_0xcb09a2(0x189)](_0x55475d=>!_0x477d88[_0xcb09a2(0x17e)](_0x55475d['id'])&&_0x55475d['pageId']!=null&&_0x28f254[_0xcb09a2(0x17e)](_0x55475d[_0xcb09a2(0x16b)]));if(_0x314999[_0xcb09a2(0x190)]===0x0)return;const _0x191fb8=_0x314999[_0xcb09a2(0x154)](_0x43eb37=>_0xcb09a2(0x16d)+_0x43eb37[_0xcb09a2(0x16b)]+'\x20->\x20menu\x20'+_0x43eb37['id'])[_0xcb09a2(0x1a2)](',\x20');throw menuError(_0xcb09a2(0x150),'Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x191fb8+'.',_0xcb09a2(0x1a3));}function assertCascadeMatchesPlan(_0x3f3126,_0x2074dd){const _0x2fb311=a108_0xf501f1,_0x228651=cascadeForTargets(_0x2074dd);if(JSON['stringify'](_0x3f3126['cascade'])!==JSON[_0x2fb311(0x15e)](_0x228651))throw menuError(_0x2fb311(0x19e),_0x2fb311(0x1a7));}function cascadeForTargets(_0x5db98f){const _0x45feb0=a108_0xf501f1,_0x368ce6=_0x5db98f[_0x45feb0(0x154)](_0x2e9622=>_0x2e9622[_0x45feb0(0x16b)])[_0x45feb0(0x189)](_0x50cfb9=>_0x50cfb9!=null)['filter']((_0x361a10,_0x77381a,_0x28fb12)=>_0x28fb12[_0x45feb0(0x145)](_0x361a10)===_0x77381a);return{'pages':_0x368ce6,'pageSchemaAffected':_0x368ce6['length']>0x0};}function a108_0x4be4(){const _0x4eacaf=['):\x20','indexOf','flagMissing','3592zPxIBC','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','12843140RLjjyk','menu_folder_has_resources','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','plan\x20delete','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','\x20is\x20not\x20a\x20folder.','3032664xDKJpH','menu_page_shared','type','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','childrenCount','map','verify\x20batch\x20delete','selector','recursive','failed','resources','Backend\x20reported\x20','Post-mismatch\x20menu\x20readback\x20failed\x20(',';\x20execution\x20must\x20consume\x20','Deleted\x20','stringify','verification','childrenIds','4990475ITRchj','Menu\x20','menu_delete_page_bound','validation','menu','4lftMlg','menu_folder_resources_invalid','Batch\x20delete\x20request\x20for\x20menu\x20','expected-children-count','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','pageId','plan-out','page\x20','str','causeCode','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','toLowerCase','Would\x20batch\x20delete\x20','folder','5315040aQoHMu','bool','absentIds','rabetbase\x20menu\x20list\x20--format\x20json','causeMessage','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','expect-parent-id','2377548ioKEuB','menus','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','has','Post-failure\x20menu\x20readback\x20failed\x20(','unconfirmed','snapshot','Recursive\x20menu\x20delete\x20plan\x20root\x20','plan-validation','delete','menu\x20list','pages','string','2zdzdAA','filter','add','path','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','/smartapi/menu/batchDelete','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','pre-write-plan-validation','length','forEach','menu_tree_invalid','cookie','createdAt','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','remainingIds','Folder\x20','message','execute\x20reviewed\x20delete\x20plan','menu_verification_failed','POST','deleteOrder','menu_plan_invalid','1269257DJRzdj','high-risk-write','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','join','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','dry-run','push','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','appCode','expect-path','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','unknown','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','\x20has\x20','menu_recursive_requires_folder','\x20is\x20type\x20\x22','get','target','9611JBOYpd','\x20and\x20cannot\x20be\x20deleted\x20safely.','batch\x20delete','trim','boolean','\x20references\x20missing\x20child\x20','plan','\x20deleted\x20menus;\x20expected\x20','batch-delete','byId'];a108_0x4be4=function(){return _0x4eacaf;};return a108_0x4be4();}function asMenuError(_0x4c3c6c){const _0x391e27=a108_0xf501f1;return _0x4c3c6c instanceof CliError?_0x4c3c6c:menuError(_0x391e27(0x19e),_0x4c3c6c instanceof Error?_0x4c3c6c[_0x391e27(0x199)]:String(_0x4c3c6c));}
|
|
1
|
+
const a110_0x46b9ee=a110_0xaee6;(function(_0x310c50,_0x15633c){const _0xdd4660=a110_0xaee6,_0x11293a=_0x310c50();while(!![]){try{const _0x1881e7=-parseInt(_0xdd4660(0x187))/0x1+-parseInt(_0xdd4660(0x1c4))/0x2*(-parseInt(_0xdd4660(0x178))/0x3)+-parseInt(_0xdd4660(0x1bc))/0x4+parseInt(_0xdd4660(0x185))/0x5+parseInt(_0xdd4660(0x1b3))/0x6*(-parseInt(_0xdd4660(0x188))/0x7)+parseInt(_0xdd4660(0x176))/0x8+parseInt(_0xdd4660(0x1b2))/0x9;if(_0x1881e7===_0x15633c)break;else _0x11293a['push'](_0x11293a['shift']());}catch(_0x13db90){_0x11293a['push'](_0x11293a['shift']());}}}(a110_0x3e31,0x653ea));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';function a110_0xaee6(_0x2f93b1,_0x4f30ac){_0x2f93b1=_0x2f93b1-0x14e;const _0x3e315c=a110_0x3e31();let _0xaee6af=_0x3e315c[_0x2f93b1];return _0xaee6af;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';function a110_0x3e31(){const _0x2673e7=['Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','deleteOrder','menu_plan_invalid','type','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','map','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','join','menu_batch_delete_count_mismatch','hash','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','pages','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','\x20has\x20','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','expect-parent-id','\x20still\x20references\x20','menu_verification_failed','snapshotHash','has','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','string','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','childrenIds','Batch\x20delete\x20request\x20for\x20menu\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','delete','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','plan','Recursive\x20menu\x20delete\x20plan\x20root\x20','absentIds','menu\x20list','rabetbase\x20menu\x20list\x20--format\x20json','resources','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','expect-path','POST','indexOf','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','folder','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','menu_folder_has_resources','\x20is\x20type\x20\x22','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','createdAt','336632rSMVHj',';\x20execution\x20must\x20consume\x20','7491JiBQMB','verification','):\x20','byId','filter','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','resourcesValid','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','selector','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','pageId','\x20deleted\x20menus;\x20expected\x20','\x20is\x20not\x20a\x20folder.','1523170txTcFW','batch-delete-menu','794304WVaRic','9653HqsPWZ','forEach','Folder\x20','batch\x20delete','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','recursive','\x20menu(s)\x20under\x20exact\x20id\x20','length','menu','stringify','\x20->\x20menu\x20','str','flagMissing','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','failed','high-risk-write','menu_delete_page_bound','Deleted\x20','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','target','appCode','path','push','causeCode','dry-run','menus','causeMessage','menu_page_shared','menu_non_empty','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','Menu\x20','unconfirmed','remainingIds','batch-delete','pre-write-plan-validation','menu_recursive_requires_folder','expected-children-count','/smartapi/menu/batchDelete','trim','cookie','9754047Qgjrxf','168yxxLyw','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','validation','cascade','childrenCount','menu_tree_invalid','snapshot','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','verify\x20batch\x20delete','2809032YmiYId','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','add','\x20resource\x20URL(s).','boolean','plan\x20delete','page\x20','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','416uWNEkt','\x20references\x20missing\x20child\x20','plan-out','expiresAt'];a110_0x3e31=function(){return _0x2673e7;};return a110_0x3e31();}const BACKEND=[{'method':a110_0x46b9ee(0x16d),'path':a110_0x46b9ee(0x1af)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a110_0x46b9ee(0x14e)},MENU_DELETE_RECURSIVE_FLAG={'name':a110_0x46b9ee(0x18e),'type':a110_0x46b9ee(0x1c0),'description':a110_0x46b9ee(0x174)},MENU_DELETE_PLAN_OUT_FLAG={'name':a110_0x46b9ee(0x1c6),'type':a110_0x46b9ee(0x15e),'description':a110_0x46b9ee(0x16b)},MENU_DELETE_PLAN_FLAG={'name':a110_0x46b9ee(0x165),'type':a110_0x46b9ee(0x15e),'description':a110_0x46b9ee(0x19b)};export const menuDelete={'service':a110_0x46b9ee(0x191),'command':a110_0x46b9ee(0x163),'description':a110_0x46b9ee(0x164),'risk':a110_0x46b9ee(0x198),'structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5e3529){const _0x2f9f81=a110_0x46b9ee;_0x5e3529['bool'](_0x2f9f81(0x1a1))?validateDeleteDryRunInput(_0x5e3529):validateDeleteExecuteInput(_0x5e3529),requireExplicitYes(_0x5e3529);},async 'dryRun'(_0x667b39){const _0x4f4d00=a110_0x46b9ee;validateDeleteDryRunInput(_0x667b39);const _0x5e0b67=await buildDeletePlan(_0x667b39),_0x5f04a3=createMenuDeletePlanFile(_0x667b39[_0x4f4d00(0x19d)],_0x5e0b67),_0x5e274b=await writeMenuDeletePlan(_0x667b39[_0x4f4d00(0x194)]('plan-out'),_0x5f04a3),_0x1c9898=mutationResult({..._0x5e0b67,'planFile':{'path':_0x5e274b,'createdAt':_0x5f04a3[_0x4f4d00(0x175)],'expiresAt':_0x5f04a3[_0x4f4d00(0x1c7)]}});return menuDryRunResult(_0x1c9898,{'method':_0x4f4d00(0x16d),'url':_0x4f4d00(0x1af),'body':{'idList':_0x1c9898[_0x4f4d00(0x1c9)]},'description':'Would\x20batch\x20delete\x20'+(_0x1c9898['deleteOrder']?.['length']??0x1)+_0x4f4d00(0x18f)+_0x1c9898[_0x4f4d00(0x180)]['id']+_0x4f4d00(0x177)+_0x5e274b+'.'});},async 'execute'(_0x28da80){const _0xa1d8df=a110_0x46b9ee;requireExplicitYes(_0x28da80),validateDeleteExecuteInput(_0x28da80);const _0x30b2b8=await readMenuDeletePlan(_0x28da80[_0xa1d8df(0x194)](_0xa1d8df(0x165))),_0xa5b19d=mutationPlanFromDeleteFile(_0x30b2b8[_0xa1d8df(0x165)],_0x30b2b8[_0xa1d8df(0x19e)]),_0x3679c9=_0x30b2b8['plan'][_0xa1d8df(0x19c)]['id'];try{assertMenuDeletePlanExecutable(_0x30b2b8[_0xa1d8df(0x165)],_0x28da80[_0xa1d8df(0x19d)]);}catch(_0x1c3636){throw menuFailure(asMenuError(_0x1c3636),_0xa5b19d,{'stage':'plan-validation','failed':{'id':_0x3679c9}});}let _0x247573,_0xfdcb1b;try{_0x247573=await fetchMutationSnapshot(_0x28da80,'execute\x20reviewed\x20delete\x20plan',_0x3679c9),_0xfdcb1b=assertMenuDeletePlanCurrent(_0x30b2b8[_0xa1d8df(0x165)],_0x28da80[_0xa1d8df(0x19d)],_0x247573),assertDeleteTargetsComplete(_0x30b2b8[_0xa1d8df(0x165)],_0x247573),_0xfdcb1b[_0xa1d8df(0x189)](_0x4aab66=>assertDeleteSafety(_0x4aab66,_0x30b2b8[_0xa1d8df(0x165)]['recursive'])),assertNoSharedPages(_0x247573,_0xfdcb1b),assertCascadeMatchesPlan(_0xa5b19d,_0xfdcb1b);}catch(_0x3c10e5){throw menuFailure(asMenuError(_0x3c10e5),_0xa5b19d,{'stage':_0xa1d8df(0x1ac),'failed':{'id':_0x3679c9}});}const _0x50b64a=_0x30b2b8[_0xa1d8df(0x165)][_0xa1d8df(0x1c9)];let _0x28963c;try{_0x28963c=await batchDeleteMenuEntities(_0x28da80[_0xa1d8df(0x1b1)],_0x50b64a);}catch(_0x3d1a72){const _0x3520aa=mapMenuApiError(_0x3d1a72,_0xa1d8df(0x18b)),_0xf4bfd0=[_0xa1d8df(0x1bd)];let _0x1ff316;try{_0x1ff316=await readDeleteOutcome(_0x28da80,_0x50b64a);}catch(_0x42d094){const _0x25467d=describeMenuErrorCause(_0x42d094,_0xa1d8df(0x171),_0x3679c9);_0xf4bfd0[_0xa1d8df(0x19f)]('Post-failure\x20menu\x20readback\x20failed\x20('+_0x25467d['causeCode']+_0xa1d8df(0x17a)+_0x25467d[_0xa1d8df(0x1a3)]);throw menuFailure(_0x3520aa,_0xa5b19d,{'stage':_0xa1d8df(0x1ab),'failed':{'targetIds':_0x50b64a,'targetIdsAbsent':'unconfirmed',..._0x25467d},'warnings':_0xf4bfd0,'verification':{'status':_0xa1d8df(0x197),'lookupCommand':_0xa1d8df(0x169),'targetIds':_0x50b64a}});}throw menuFailure(_0x3520aa,_0xa5b19d,{'stage':_0xa1d8df(0x1ab),'succeeded':_0x1ff316[_0xa1d8df(0x167)][_0xa1d8df(0x1cd)](_0x5347ef=>({'id':_0x5347ef,'deleted':!![]})),'failed':{'targetIds':_0x50b64a,'absentIds':_0x1ff316[_0xa1d8df(0x167)],'remainingIds':_0x1ff316[_0xa1d8df(0x1aa)]},'warnings':_0xf4bfd0,'verification':verificationFromOutcome(_0x1ff316)});}if(_0x28963c!==_0x50b64a[_0xa1d8df(0x190)]){const _0x345df8=menuError(_0xa1d8df(0x150),'Backend\x20reported\x20'+_0x28963c+_0xa1d8df(0x183)+_0x50b64a[_0xa1d8df(0x190)]+'.',_0xa1d8df(0x15d)),_0x300ebb=[_0xa1d8df(0x18c)];let _0x4e9157;try{_0x4e9157=await readDeleteOutcome(_0x28da80,_0x50b64a);}catch(_0x379029){const _0x1441f5=describeMenuErrorCause(_0x379029,_0xa1d8df(0x17f),_0x3679c9);_0x300ebb[_0xa1d8df(0x19f)]('Post-mismatch\x20menu\x20readback\x20failed\x20('+_0x1441f5[_0xa1d8df(0x1a0)]+_0xa1d8df(0x17a)+_0x1441f5['causeMessage']);throw menuFailure(_0x345df8,_0xa5b19d,{'stage':'batch-delete','failed':{'targetIds':_0x50b64a,'expectedCount':_0x50b64a['length'],'reportedDeletedCount':_0x28963c,'targetIdsAbsent':_0xa1d8df(0x1a9),..._0x1441f5},'warnings':_0x300ebb,'verification':{'status':_0xa1d8df(0x197),'lookupCommand':_0xa1d8df(0x169),'targetIds':_0x50b64a}});}throw menuFailure(_0x345df8,_0xa5b19d,{'stage':_0xa1d8df(0x1ab),'succeeded':_0x4e9157['absentIds'][_0xa1d8df(0x1cd)](_0x495800=>({'id':_0x495800,'deleted':!![]})),'failed':{'targetIds':_0x50b64a,'expectedCount':_0x50b64a['length'],'reportedDeletedCount':_0x28963c,'absentIds':_0x4e9157[_0xa1d8df(0x167)],'remainingIds':_0x4e9157['remainingIds']},'warnings':_0x300ebb,'verification':verificationFromOutcome(_0x4e9157)});}let _0xd5fbad;try{_0xd5fbad=await readDeleteOutcome(_0x28da80,_0x50b64a);}catch(_0x498106){const _0x116d28=describeMenuErrorCause(_0x498106,_0xa1d8df(0x1bb),_0x3679c9),_0x1bc8b7=asVerificationError(_0x498106,_0xa1d8df(0x161)+_0x3679c9+_0xa1d8df(0x162));throw menuFailure(_0x1bc8b7,_0xa5b19d,{'stage':'verification','succeeded':_0x50b64a[_0xa1d8df(0x1cd)](_0x4badeb=>({'id':_0x4badeb,'deleteRequested':!![]})),'failed':{'id':_0x3679c9,'targetIds':_0x50b64a,'targetIdsAbsent':_0xa1d8df(0x1a9),..._0x116d28},'warnings':[_0xa1d8df(0x152)],'verification':{'status':_0xa1d8df(0x197),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x50b64a}});}if(_0xd5fbad['remainingIds'][_0xa1d8df(0x190)]>0x0){const _0x1a638d=menuError(_0xa1d8df(0x15a),_0xa1d8df(0x1ce)+_0xd5fbad[_0xa1d8df(0x1aa)]['join'](',\x20')+'.',_0xa1d8df(0x15d));throw menuFailure(_0x1a638d,_0xa5b19d,{'stage':_0xa1d8df(0x179),'succeeded':_0x50b64a[_0xa1d8df(0x1cd)](_0x3233df=>({'id':_0x3233df,'deleteRequested':!![]})),'failed':{'id':_0x3679c9,'targetIds':_0x50b64a,'absentIds':_0xd5fbad[_0xa1d8df(0x167)],'remainingIds':_0xd5fbad[_0xa1d8df(0x1aa)]},'warnings':[_0xa1d8df(0x16f)],'verification':verificationFromOutcome(_0xd5fbad)});}const _0x2a4f40=_0x50b64a[_0xa1d8df(0x1cd)](_0x4eb08b=>({'id':_0x4eb08b,'deleted':!![]})),_0x742e3c=mutationResult({..._0xa5b19d,'dryRun':![],'succeeded':_0x2a4f40,'verification':{'checkedBy':_0xa1d8df(0x168),'plannedSnapshotHash':_0xa5b19d[_0xa1d8df(0x15b)],'finalSnapshotHash':_0xd5fbad[_0xa1d8df(0x1b9)][_0xa1d8df(0x151)],'reportedDeletedCount':_0x28963c,'targetAbsent':!_0xd5fbad[_0xa1d8df(0x1b9)][_0xa1d8df(0x17b)]['has'](_0x3679c9),'allTargetsAbsent':!![],'targetIds':_0x50b64a}});return{'ok':!![],'data':_0x742e3c,'message':_0xa1d8df(0x19a)+_0x2a4f40['length']+_0xa1d8df(0x18f)+_0x3679c9+'.'};}};async function readDeleteOutcome(_0x145df0,_0x1f5305){const _0x3e4c52=a110_0x46b9ee,_0x5945c3=await fetchMenuSnapshot(_0x145df0[_0x3e4c52(0x19d)],_0x145df0[_0x3e4c52(0x1b1)]);return{'snapshot':_0x5945c3,'absentIds':_0x1f5305[_0x3e4c52(0x17c)](_0xc361ab=>!_0x5945c3[_0x3e4c52(0x17b)][_0x3e4c52(0x15c)](_0xc361ab)),'remainingIds':_0x1f5305['filter'](_0x10485f=>_0x5945c3[_0x3e4c52(0x17b)][_0x3e4c52(0x15c)](_0x10485f))};}function verificationFromOutcome(_0x558bf8){const _0x37b8f7=a110_0x46b9ee;return{'checkedBy':_0x37b8f7(0x168),'absentIds':_0x558bf8[_0x37b8f7(0x167)],'remainingIds':_0x558bf8[_0x37b8f7(0x1aa)]};}function validateDeleteDryRunInput(_0x12c288){const _0x48956b=a110_0x46b9ee;validateExactId(_0x12c288);if(!hasFlag(_0x12c288,_0x48956b(0x1c6))||!_0x12c288[_0x48956b(0x194)](_0x48956b(0x1c6))[_0x48956b(0x1b0)]())throw CliErrors['flagMissing'](_0x48956b(0x1c6),_0x48956b(0x1a6));if(hasFlag(_0x12c288,_0x48956b(0x165)))throw CliErrors[_0x48956b(0x1b5)]('--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.');}function validateDeleteExecuteInput(_0xe0d62e){const _0x150511=a110_0x46b9ee;if(!hasFlag(_0xe0d62e,'plan')||!_0xe0d62e['str']('plan')['trim']())throw CliErrors[_0x150511(0x195)](_0x150511(0x165),_0x150511(0x1cc));const _0x57e979=['id',_0x150511(0x18e),_0x150511(0x1c6),_0x150511(0x158),_0x150511(0x16c),_0x150511(0x1ae)][_0x150511(0x17c)](_0xb47725=>hasFlag(_0xe0d62e,_0xb47725));if(_0x57e979[_0x150511(0x190)]>0x0)throw CliErrors['validation']('Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20'+_0x57e979[_0x150511(0x1cd)](_0x462e79=>'--'+_0x462e79)[_0x150511(0x14f)](',\x20')+'.');}async function buildDeletePlan(_0x165f1b){const _0x229b5c=a110_0x46b9ee,_0x3e1923=validateExactId(_0x165f1b),_0x368529=await fetchMutationSnapshot(_0x165f1b,_0x229b5c(0x1c1),_0x3e1923),_0x1ac166=requireMenu(_0x368529,_0x3e1923);assertExpectedState(_0x165f1b,_0x1ac166);const _0x2de3d0=_0x165f1b['bool'](_0x229b5c(0x18e));let _0x1b9f12;if(_0x2de3d0){if(_0x1ac166['type'][_0x229b5c(0x1b0)]()['toLowerCase']()!==_0x229b5c(0x170))throw menuError(_0x229b5c(0x1ad),_0x229b5c(0x1a8)+_0x1ac166['id']+_0x229b5c(0x173)+(_0x1ac166[_0x229b5c(0x1cb)]||'unknown')+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x1b9f12=collectDeleteTargets(_0x368529,_0x1ac166),_0x1b9f12[_0x229b5c(0x189)](_0x343d4a=>assertDeleteSafety(_0x343d4a,!![]));}else assertDeleteSafety(_0x1ac166),_0x1b9f12=[_0x1ac166];assertNoSharedPages(_0x368529,_0x1b9f12);const _0x5a70ee=_0x1b9f12[_0x229b5c(0x1cd)](_0xab8d86=>_0xab8d86['id']),_0x3e27db=cascadeForTargets(_0x1b9f12),_0xcd4512=_0x3e27db[_0x229b5c(0x153)][_0x229b5c(0x190)]>0x0?[_0x229b5c(0x18d)]:[];return mutationResult({'operation':_0x229b5c(0x163),'selector':{'id':_0x3e1923,'recursive':_0x2de3d0},'before':_0x1ac166,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x229b5c(0x186),'method':_0x229b5c(0x16d),'path':_0x229b5c(0x1af),'body':{'idList':_0x5a70ee}}],'targets':_0x1b9f12,'deleteOrder':_0x5a70ee,'snapshotHash':_0x368529[_0x229b5c(0x151)],'cascade':_0x3e27db,'warnings':_0xcd4512});}function assertDeleteSafety(_0x15a3a6,_0x298f25=![]){const _0x25b5a4=a110_0x46b9ee,_0x170efc=_0x15a3a6[_0x25b5a4(0x1cb)][_0x25b5a4(0x1b0)]()['toLowerCase']()==='folder';if(_0x15a3a6[_0x25b5a4(0x1b7)]>0x0&&(!_0x298f25||!_0x170efc))throw menuError(_0x25b5a4(0x1a5),_0x25b5a4(0x1a8)+_0x15a3a6['id']+_0x25b5a4(0x156)+_0x15a3a6[_0x25b5a4(0x1b7)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0x25b5a4(0x196)+_0x15a3a6[_0x25b5a4(0x160)][_0x25b5a4(0x14f)](',\x20'));if(_0x170efc&&_0x15a3a6[_0x25b5a4(0x182)]!=null)throw menuError(_0x25b5a4(0x199),_0x25b5a4(0x18a)+_0x15a3a6['id']+_0x25b5a4(0x157)+_0x15a3a6[_0x25b5a4(0x182)]+'\x20and\x20cannot\x20be\x20deleted\x20safely.',_0x25b5a4(0x17d));if(!_0x170efc)return;if(!_0x15a3a6[_0x25b5a4(0x17e)])throw menuError('menu_folder_resources_invalid','Folder\x20'+_0x15a3a6['id']+_0x25b5a4(0x155),_0x25b5a4(0x181));if(_0x15a3a6[_0x25b5a4(0x16a)][_0x25b5a4(0x190)]>0x0)throw menuError(_0x25b5a4(0x172),_0x25b5a4(0x18a)+_0x15a3a6['id']+_0x25b5a4(0x159)+_0x15a3a6[_0x25b5a4(0x16a)][_0x25b5a4(0x190)]+_0x25b5a4(0x1bf),_0x25b5a4(0x1c8));}function collectDeleteTargets(_0xef6c46,_0x544046){const _0x1f0bc2=[],_0x38c8a9=new Set(),_0x44337a=new Set(),_0x5b7d57=_0x19f91e=>{const _0x4b8b10=a110_0xaee6;if(_0x38c8a9[_0x4b8b10(0x15c)](_0x19f91e['id']))throw menuError('menu_tree_invalid',_0x4b8b10(0x1ba)+_0x19f91e['id']+'.');if(_0x44337a[_0x4b8b10(0x15c)](_0x19f91e['id']))return;_0x38c8a9[_0x4b8b10(0x1be)](_0x19f91e['id']);for(const _0x12b29b of _0x19f91e[_0x4b8b10(0x160)]){const _0x1cb532=_0xef6c46[_0x4b8b10(0x17b)]['get'](_0x12b29b);if(!_0x1cb532)throw menuError(_0x4b8b10(0x1b8),_0x4b8b10(0x1a8)+_0x19f91e['id']+_0x4b8b10(0x1c5)+_0x12b29b+'.');_0x5b7d57(_0x1cb532);}_0x38c8a9['delete'](_0x19f91e['id']),_0x44337a[_0x4b8b10(0x1be)](_0x19f91e['id']),_0x1f0bc2[_0x4b8b10(0x19f)](_0x19f91e);};return _0x5b7d57(_0x544046),_0x1f0bc2;}function assertDeleteTargetsComplete(_0x24a54f,_0xee7264){const _0x18fc63=a110_0x46b9ee,_0x278567=requireMenu(_0xee7264,_0x24a54f[_0x18fc63(0x19c)]['id']);if(_0x24a54f[_0x18fc63(0x18e)]&&_0x278567[_0x18fc63(0x1cb)]['trim']()['toLowerCase']()!==_0x18fc63(0x170))throw menuError(_0x18fc63(0x1ca),_0x18fc63(0x166)+_0x278567['id']+_0x18fc63(0x184));const _0x1e6597=_0x24a54f[_0x18fc63(0x18e)]?collectDeleteTargets(_0xee7264,_0x278567)[_0x18fc63(0x1cd)](_0x4b5291=>_0x4b5291['id']):[_0x278567['id']];if(JSON[_0x18fc63(0x192)](_0x24a54f[_0x18fc63(0x1c9)])!==JSON[_0x18fc63(0x192)](_0x1e6597))throw menuError(_0x18fc63(0x1ca),_0x18fc63(0x1c3),_0x18fc63(0x1a7));}function assertNoSharedPages(_0x52aa31,_0x507fd8){const _0x475a7e=a110_0x46b9ee,_0x88b1d9=new Set(_0x507fd8['map'](_0x2e9553=>_0x2e9553['id'])),_0x92d799=new Set(_0x507fd8[_0x475a7e(0x1cd)](_0x12d654=>_0x12d654[_0x475a7e(0x182)])[_0x475a7e(0x17c)](_0x4c5828=>_0x4c5828!=null));if(_0x92d799['size']===0x0)return;const _0x477fe2=_0x52aa31[_0x475a7e(0x1a2)][_0x475a7e(0x17c)](_0x5e682a=>!_0x88b1d9[_0x475a7e(0x15c)](_0x5e682a['id'])&&_0x5e682a[_0x475a7e(0x182)]!=null&&_0x92d799[_0x475a7e(0x15c)](_0x5e682a['pageId']));if(_0x477fe2['length']===0x0)return;const _0x286a28=_0x477fe2[_0x475a7e(0x1cd)](_0xc266f5=>_0x475a7e(0x1c2)+_0xc266f5[_0x475a7e(0x182)]+_0x475a7e(0x193)+_0xc266f5['id'])['join'](',\x20');throw menuError(_0x475a7e(0x1a4),_0x475a7e(0x15f)+_0x286a28+'.',_0x475a7e(0x154));}function assertCascadeMatchesPlan(_0x45810e,_0x17a4f9){const _0x5dcac8=a110_0x46b9ee,_0x41ac9c=cascadeForTargets(_0x17a4f9);if(JSON['stringify'](_0x45810e[_0x5dcac8(0x1b6)])!==JSON['stringify'](_0x41ac9c))throw menuError('menu_plan_invalid',_0x5dcac8(0x1b4));}function cascadeForTargets(_0x1d01b3){const _0x11782b=a110_0x46b9ee,_0x216122=_0x1d01b3['map'](_0x560d54=>_0x560d54[_0x11782b(0x182)])[_0x11782b(0x17c)](_0x12dbe5=>_0x12dbe5!=null)[_0x11782b(0x17c)]((_0x48e61c,_0x750cca,_0x3cd90d)=>_0x3cd90d[_0x11782b(0x16e)](_0x48e61c)===_0x750cca);return{'pages':_0x216122,'pageSchemaAffected':_0x216122[_0x11782b(0x190)]>0x0};}function asMenuError(_0x5497ea){const _0x1869f8=a110_0x46b9ee;return _0x5497ea instanceof CliError?_0x5497ea:menuError(_0x1869f8(0x1ca),_0x5497ea instanceof Error?_0x5497ea['message']:String(_0x5497ea));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a109_0x4ada2a=a109_0x1042;(function(_0x282be5,_0x8eeb8){const _0x39fe17=a109_0x1042,_0x1616bc=_0x282be5();while(!![]){try{const _0x45e73a=parseInt(_0x39fe17(0x1e7))/0x1+parseInt(_0x39fe17(0x1b5))/0x2*(-parseInt(_0x39fe17(0x221))/0x3)+-parseInt(_0x39fe17(0x1cd))/0x4+parseInt(_0x39fe17(0x1cc))/0x5*(-parseInt(_0x39fe17(0x1f3))/0x6)+parseInt(_0x39fe17(0x1a1))/0x7*(-parseInt(_0x39fe17(0x19b))/0x8)+parseInt(_0x39fe17(0x1b3))/0x9+-parseInt(_0x39fe17(0x209))/0xa*(-parseInt(_0x39fe17(0x1a7))/0xb);if(_0x45e73a===_0x8eeb8)break;else _0x1616bc['push'](_0x1616bc['shift']());}catch(_0x300673){_0x1616bc['push'](_0x1616bc['shift']());}}}(a109_0x1a48,0xe33f1));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a109_0x4ada2a(0x210),'new-window':a109_0x4ada2a(0x1fa)};export function validateExternalMenuUrl(_0x27a6a3){const _0x137419=a109_0x4ada2a,_0x3029d3=_0x27a6a3[_0x137419(0x1e9)]();let _0x19e6a9;try{_0x19e6a9=new URL(_0x3029d3);}catch{throw menuError(_0x137419(0x214),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x137419(0x1eb));}if(_0x19e6a9['protocol']!==_0x137419(0x216))throw menuError(_0x137419(0x1c7),_0x137419(0x1ab),_0x137419(0x1f5));if(_0x19e6a9[_0x137419(0x22c)]||_0x19e6a9['password'])throw menuError(_0x137419(0x1ad),'External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.',_0x137419(0x21b));return _0x3029d3;}export const menuExternalLinkCreate={'service':a109_0x4ada2a(0x206),'command':'external-link-create','description':a109_0x4ada2a(0x208),'risk':a109_0x4ada2a(0x1f1),'structuredErrors':!![],'flags':[{'name':'label','type':a109_0x4ada2a(0x222),'required':!![],'description':a109_0x4ada2a(0x20b)},{'name':'open-mode','type':a109_0x4ada2a(0x222),'required':!![],'enum':[a109_0x4ada2a(0x201),a109_0x4ada2a(0x1da)],'description':a109_0x4ada2a(0x1d7)},{'name':'url','type':a109_0x4ada2a(0x222),'required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a109_0x4ada2a(0x1f9),'type':'boolean','default':!![],'description':a109_0x4ada2a(0x1a0)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x348fca){validateAddInput(_0x348fca);},async 'dryRun'(_0xb1015b){const _0x2655ac=a109_0x4ada2a;validateAddInput(_0xb1015b);const {plan:_0x52dc73}=await buildSafeAddPlan(_0xb1015b,!![]),_0x429c8a=_0x52dc73[_0x2655ac(0x1c9)],_0x3ddb69=createBody(_0x429c8a);return menuDryRunResult(_0x52dc73,{'method':_0x2655ac(0x223),'url':'/smartapi/menu/create','body':_0x3ddb69,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON['stringify'](_0x429c8a[_0x2655ac(0x1d2)])+_0x2655ac(0x1be)+_0xb1015b[_0x2655ac(0x1cb)](_0x2655ac(0x1a6))+_0x2655ac(0x226)});},async 'execute'(_0x36f804){const _0x285da4=a109_0x4ada2a;validateAddInput(_0x36f804);const _0xb63931=await buildSafeAddPlan(_0x36f804,![]),{plan:_0x3a035e,snapshot:_0x3c153f}=_0xb63931,_0x3c72bc=_0x3a035e[_0x285da4(0x1c9)],_0x58ef03=buildMenuLookupCommand(_0x36f804['appCode']);await recheckAddSnapshot(_0x36f804,_0x3a035e);let _0x2d2645;try{_0x2d2645=await createMenuEntity(_0x36f804[_0x285da4(0x1b2)],_0x36f804[_0x285da4(0x200)],createBody(_0x3c72bc));}catch(_0x159881){const _0x8bf05f=mapMenuApiError(_0x159881,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x159881)||_0x8bf05f[_0x285da4(0x1c2)]===_0x285da4(0x202))throw externalLinkCreateFailure(_0x8bf05f,_0x3a035e,{'stage':'create','failed':{},'verification':{'status':_0x285da4(0x19d),'lookupCommand':_0x58ef03}});return recoverAfterResponseLoss(_0x36f804,_0xb63931,_0x58ef03);}const _0x5cdb5a=Number(_0x2d2645?.['id']),_0x3d7eb7=typeof _0x2d2645?.['path']===_0x285da4(0x222)?_0x2d2645[_0x285da4(0x1a9)]:'';if(!Number['isSafeInteger'](_0x5cdb5a)||_0x5cdb5a<=0x0||!_0x3d7eb7['trim']()){const _0x157e02=menuError('menu_create_response_invalid',_0x285da4(0x1ba),_0x285da4(0x1b4)+_0x58ef03+_0x285da4(0x1ac));throw externalLinkCreateFailure(_0x157e02,_0x3a035e,{'stage':'create-response-validation','succeeded':Number['isSafeInteger'](_0x5cdb5a)&&_0x5cdb5a>0x0?[{'id':_0x5cdb5a,'created':!![]}]:[],'failed':{'createdId':Number[_0x285da4(0x1d6)](_0x5cdb5a)?_0x5cdb5a:null,'generatedPathConfirmed':Boolean(_0x3d7eb7['trim']())},'warnings':[_0x285da4(0x1c5)],'after':Number['isSafeInteger'](_0x5cdb5a)&&_0x5cdb5a>0x0?{..._0x3c72bc,'id':_0x5cdb5a,'path':_0x3d7eb7}:_0x3c72bc,'verification':{'status':_0x285da4(0x19d),'lookupCommand':_0x58ef03,...Number[_0x285da4(0x1d6)](_0x5cdb5a)&&_0x5cdb5a>0x0?{'targetId':_0x5cdb5a}:{}}});}const _0x481ef4=await readAndVerifyCreatedMenu({'appCode':_0x36f804[_0x285da4(0x1b2)],'cookie':_0x36f804['cookie'],'plan':_0x3a035e,'afterPlan':_0x3c72bc,'createdId':_0x5cdb5a,'expectedPath':_0x3d7eb7,'lookupCommand':_0x58ef03,'recovered':![]});return creationSuccess(_0x3a035e,_0x481ef4[_0x285da4(0x1ed)],_0x481ef4[_0x285da4(0x1c3)],![]);}};function validateAddInput(_0xcb295b){const _0x14fe11=a109_0x4ada2a;if(!_0xcb295b[_0x14fe11(0x1cb)]('label')[_0x14fe11(0x1e9)]())throw CliErrors[_0x14fe11(0x203)](_0x14fe11(0x1d2));resolveExternalMenuType(_0xcb295b),validateExternalMenuUrl(_0xcb295b[_0x14fe11(0x1cb)](_0x14fe11(0x1c0))),parseParentId(_0xcb295b,'parent-id'),validateSort(_0xcb295b);}function resolveExternalMenuType(_0x32adbc){const _0x87c69f=a109_0x4ada2a,_0x1c87a4=_0x32adbc[_0x87c69f(0x1cb)](_0x87c69f(0x1a6))[_0x87c69f(0x1e9)]();if(!_0x1c87a4)throw CliErrors['flagMissing'](_0x87c69f(0x1a6));const _0x43c54c=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x1c87a4];if(!_0x43c54c)throw menuError(_0x87c69f(0x1e6),_0x87c69f(0x1f7),_0x87c69f(0x1e2));return _0x43c54c;}async function buildAddPlan(_0x3779dd,_0x9efc41){const _0x33bb6a=a109_0x4ada2a,_0xea63e8=await fetchMutationSnapshot(_0x3779dd,_0x33bb6a(0x205)),_0x1ded47=parseParentId(_0x3779dd,_0x33bb6a(0x19e))??null;if(_0x1ded47!=null)requireFolder(_0xea63e8,_0x1ded47);const _0x1bb3c2=validateSort(_0x3779dd),_0x24609b=_0x1bb3c2??nextSiblingSort(_0xea63e8,_0x1ded47,_0x33bb6a(0x206)),_0x54cc6f=_0x3779dd[_0x33bb6a(0x1cb)]('label')[_0x33bb6a(0x1e9)](),_0x491cad=resolveExternalMenuType(_0x3779dd),_0x26d267=validateExternalMenuUrl(_0x3779dd[_0x33bb6a(0x1cb)](_0x33bb6a(0x1c0))),_0x46a3c4=Object[_0x33bb6a(0x1b8)][_0x33bb6a(0x1d1)][_0x33bb6a(0x1f0)](_0x3779dd[_0x33bb6a(0x1f8)],_0x33bb6a(0x1f9))?_0x3779dd[_0x33bb6a(0x217)](_0x33bb6a(0x1f9)):!![],_0x24140f={'id':null,'parentId':_0x1ded47,'label':_0x54cc6f,'path':_0x33bb6a(0x1d0),'url':_0x26d267,'type':_0x491cad,'visible':_0x46a3c4,'sort':_0x24609b},_0x2629c7=buildMenuLookupCommand(_0x3779dd[_0x33bb6a(0x1b2)]),_0x5479fc=mutationResult({'operation':_0x33bb6a(0x1b6),'selector':{'parentId':_0x1ded47,'type':_0x491cad,'label':_0x54cc6f,'url':_0x26d267},'before':null,'after':_0x24140f,'dryRun':_0x9efc41,'backend':[{'method':'POST','path':'/smartapi/menu/create'}],'plannedActions':[{'stage':_0x33bb6a(0x20f),'method':_0x33bb6a(0x223),'path':'/smartapi/menu/create','body':createBody(_0x24140f)}],'snapshotHash':_0xea63e8[_0x33bb6a(0x1de)],'warnings':[_0x33bb6a(0x1cf)],'verification':{'lookupCommand':_0x2629c7}});return{'plan':_0x5479fc,'snapshot':_0xea63e8};}async function buildSafeAddPlan(_0xf1d1e3,_0x548dfe){try{return await buildAddPlan(_0xf1d1e3,_0x548dfe);}catch(_0x47ea96){throw safeMenuAddError(_0x47ea96);}}async function recheckAddSnapshot(_0x11c67c,_0x21f881){const _0xbd0f34=a109_0x4ada2a;try{await recheckMutationSnapshot(_0x11c67c,_0x21f881,'create\x20external\x20menu');}catch(_0x17d6d5){const _0xae396a=getFailureRecord(_0x17d6d5);throw externalLinkCreateFailure(_0x17d6d5,_0x21f881,{'stage':_0xbd0f34(0x1f4),'failed':{..._0xae396a?.[_0xbd0f34(0x211)]?{'expectedSnapshotHash':_0xae396a[_0xbd0f34(0x211)]}:{},..._0xae396a?.[_0xbd0f34(0x207)]?{'currentSnapshotHash':_0xae396a[_0xbd0f34(0x207)]}:{}}});}}function createBody(_0x525414){const _0x2d0f2b=a109_0x4ada2a;return{'parentId':toApiParentId(_0x525414[_0x2d0f2b(0x1df)]),'label':String(_0x525414[_0x2d0f2b(0x1d2)]),'type':String(_0x525414[_0x2d0f2b(0x20c)]),'url':String(_0x525414['url']),'visible':Boolean(_0x525414[_0x2d0f2b(0x1f9)]),'sort':Number(_0x525414[_0x2d0f2b(0x1a8)]),'extend':{}};}function a109_0x1042(_0x267bc1,_0x321e41){_0x267bc1=_0x267bc1-0x19a;const _0x1a4823=a109_0x1a48();let _0x1042c4=_0x1a4823[_0x267bc1];return _0x1042c4;}function buildMenuLookupCommand(_0x1978fc){const _0x2e1f84=a109_0x4ada2a,_0x3dbc30='\x27'+_0x1978fc[_0x2e1f84(0x1f2)](/'/g,_0x2e1f84(0x1ca))+'\x27';return _0x2e1f84(0x1d5)+_0x3dbc30+_0x2e1f84(0x1f6);}async function recoverAfterResponseLoss(_0x1a8834,_0x2868a4,_0xf25cc5){const _0x3ddee0=a109_0x4ada2a,{plan:_0x303e65,snapshot:_0x33d3be}=_0x2868a4,_0x89f30f=_0x303e65[_0x3ddee0(0x1c9)];let _0x222ddd;try{_0x222ddd=await fetchMenuSnapshot(_0x1a8834[_0x3ddee0(0x1b2)],_0x1a8834['cookie']);}catch(_0x5cb267){throw recoveryRequiredFailure(_0x303e65,_0xf25cc5,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x2c9f1f=_0x222ddd[_0x3ddee0(0x224)][_0x3ddee0(0x1fb)](_0x228ad1=>_0x228ad1['parentId']===_0x89f30f['parentId']&&_0x228ad1[_0x3ddee0(0x20c)]===_0x89f30f[_0x3ddee0(0x20c)]&&_0x228ad1[_0x3ddee0(0x1d2)]===_0x89f30f[_0x3ddee0(0x1d2)]&&_0x228ad1[_0x3ddee0(0x1c0)]===_0x89f30f[_0x3ddee0(0x1c0)]),_0x27c1d8=_0x2c9f1f['filter'](_0x190fc0=>!_0x33d3be['byId'][_0x3ddee0(0x20a)](_0x190fc0['id'])),_0x4ffb35=_0x2c9f1f[_0x3ddee0(0x1fb)](_0x1a9304=>_0x33d3be[_0x3ddee0(0x21c)][_0x3ddee0(0x20a)](_0x1a9304['id']));if(_0x2c9f1f[_0x3ddee0(0x212)]!==0x1||_0x27c1d8['length']!==0x1)throw recoveryRequiredFailure(_0x303e65,_0xf25cc5,{'matchCount':_0x2c9f1f[_0x3ddee0(0x212)],'newMatchCount':_0x27c1d8[_0x3ddee0(0x212)],'preexistingMatchCount':_0x4ffb35[_0x3ddee0(0x212)]});const _0x40f25e=_0x27c1d8[0x0];try{verifyCreatedFact(_0x40f25e,_0x40f25e['id'],_0x89f30f,null);}catch(_0x1fde8b){const _0x13d86d=_0x1fde8b instanceof Error&&_0x3ddee0(0x1c2)in _0x1fde8b?_0x1fde8b:menuError(_0x3ddee0(0x19c),_0x3ddee0(0x1c8)+_0x40f25e['id']+_0x3ddee0(0x228),_0x3ddee0(0x1b4)+_0xf25cc5+_0x3ddee0(0x1e0));throw externalLinkCreateFailure(_0x13d86d,_0x303e65,{'stage':_0x3ddee0(0x1bd),'succeeded':[{'id':_0x40f25e['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x40f25e['id'],'finalFactsConfirmed':![]},'after':_0x40f25e,'warnings':[_0x3ddee0(0x22b)+_0x40f25e['id']+_0x3ddee0(0x1ee)],'verification':{'status':_0x3ddee0(0x19d),'targetId':_0x40f25e['id'],'recovered':!![],'lookupCommand':_0xf25cc5}});}return creationSuccess(_0x303e65,_0x222ddd,_0x40f25e,!![]);}function recoveryRequiredFailure(_0x363e98,_0x484213,_0x3eaa85){const _0x31e94c=a109_0x4ada2a,_0x39f578=menuError('menu_create_recovery_required',_0x31e94c(0x225),'Run\x20'+_0x484213+_0x31e94c(0x1ea));return externalLinkCreateFailure(_0x39f578,_0x363e98,{'stage':_0x31e94c(0x1af),'failed':_0x3eaa85,'warnings':[_0x31e94c(0x1fd)],'verification':{'status':'failed',..._0x3eaa85,'lookupCommand':_0x484213}});}async function readAndVerifyCreatedMenu(_0x39cedb){const _0x553c00=a109_0x4ada2a;let _0x3193f8;try{_0x3193f8=await fetchMenuSnapshot(_0x39cedb[_0x553c00(0x1b2)],_0x39cedb[_0x553c00(0x200)]);}catch(_0x453d08){const _0x1d49a7=menuError(_0x553c00(0x19c),_0x553c00(0x22b)+_0x39cedb[_0x553c00(0x22a)]+_0x553c00(0x1db),'Run\x20'+_0x39cedb['lookupCommand']+_0x553c00(0x1c1));throw externalLinkCreateFailure(_0x1d49a7,_0x39cedb[_0x553c00(0x1ec)],{'stage':_0x553c00(0x1bd),'succeeded':[{'id':_0x39cedb[_0x553c00(0x22a)],'created':!![]}],'failed':{'id':_0x39cedb[_0x553c00(0x22a)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x39cedb[_0x553c00(0x1e3)],'id':_0x39cedb[_0x553c00(0x22a)],'path':_0x39cedb[_0x553c00(0x21e)]},'warnings':['Menu\x20'+_0x39cedb[_0x553c00(0x22a)]+_0x553c00(0x1d3)],'verification':{'status':'failed','targetId':_0x39cedb['createdId'],'lookupCommand':_0x39cedb[_0x553c00(0x1aa)]}});}const _0x1c043e=_0x3193f8['byId'][_0x553c00(0x1ae)](_0x39cedb[_0x553c00(0x22a)]);try{if(!_0x1c043e)throw menuError(_0x553c00(0x19c),'Created\x20menu\x20'+_0x39cedb[_0x553c00(0x22a)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.','Run\x20'+_0x39cedb[_0x553c00(0x1aa)]+_0x553c00(0x1c1));verifyCreatedFact(_0x1c043e,_0x39cedb[_0x553c00(0x22a)],_0x39cedb['afterPlan'],_0x39cedb[_0x553c00(0x21e)]);}catch(_0x40aca4){const _0x193010=_0x40aca4 instanceof Error&&_0x553c00(0x1c2)in _0x40aca4?_0x40aca4:menuError(_0x553c00(0x19c),_0x553c00(0x1e5)+_0x39cedb[_0x553c00(0x22a)]+_0x553c00(0x1ff),'Run\x20'+_0x39cedb[_0x553c00(0x1aa)]+_0x553c00(0x1c1));throw externalLinkCreateFailure(_0x193010,_0x39cedb[_0x553c00(0x1ec)],{'stage':'verification','succeeded':[{'id':_0x39cedb[_0x553c00(0x22a)],'created':!![]}],'failed':{'id':_0x39cedb[_0x553c00(0x22a)],'finalFactsConfirmed':![]},'after':_0x1c043e??{..._0x39cedb['afterPlan'],'id':_0x39cedb[_0x553c00(0x22a)],'path':_0x39cedb[_0x553c00(0x21e)]},'warnings':[_0x553c00(0x22b)+_0x39cedb['createdId']+_0x553c00(0x20d)],'verification':{'status':_0x553c00(0x19d),'targetId':_0x39cedb['createdId'],'recovered':_0x39cedb[_0x553c00(0x1d8)],'lookupCommand':_0x39cedb['lookupCommand']}});}return{'snapshot':_0x3193f8,'fact':_0x1c043e};}function verifyCreatedFact(_0x4149cf,_0x911f55,_0x34ba3e,_0x30542a){const _0x3fc069=a109_0x4ada2a;if(!Number['isSafeInteger'](_0x4149cf['id'])||_0x4149cf['id']<=0x0||_0x4149cf['id']!==_0x911f55)throw menuError(_0x3fc069(0x19c),_0x3fc069(0x22d),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x3a03b9=[[_0x3fc069(0x21a),_0x4149cf[_0x3fc069(0x1df)],_0x34ba3e['parentId']],[_0x3fc069(0x20c),_0x4149cf[_0x3fc069(0x20c)],_0x34ba3e[_0x3fc069(0x20c)]],[_0x3fc069(0x1d2),_0x4149cf[_0x3fc069(0x1d2)],_0x34ba3e[_0x3fc069(0x1d2)]],[_0x3fc069(0x227),_0x4149cf[_0x3fc069(0x1c0)],_0x34ba3e[_0x3fc069(0x1c0)]],[_0x3fc069(0x1bf),_0x4149cf[_0x3fc069(0x1f9)],_0x34ba3e[_0x3fc069(0x1f9)]],[_0x3fc069(0x1a8),_0x4149cf[_0x3fc069(0x1a8)],_0x34ba3e[_0x3fc069(0x1a8)]]];for(const [_0x457bf8,_0x38ba7a,_0x37a510]of _0x3a03b9){if(_0x38ba7a!==_0x37a510)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x4149cf['id']+_0x3fc069(0x1b9)+_0x457bf8+'.',_0x3fc069(0x19a));}if(!_0x4149cf[_0x3fc069(0x1a9)]['trim']()||_0x30542a!==null&&_0x4149cf[_0x3fc069(0x1a9)]!==_0x30542a)throw menuError(_0x3fc069(0x19c),_0x3fc069(0x1e5)+_0x4149cf['id']+_0x3fc069(0x215),_0x3fc069(0x19a));}function a109_0x1a48(){const _0x21a817=['toLowerCase','create-menu','iframe','expectedSnapshotHash','length','isArray','menu_url_invalid','\x20has\x20an\x20unexpected\x20generated\x20path.','https:','bool','entries','selector','parent','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','byId','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','expectedPath','fromEntries','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','984jHyacs','string','POST','menus','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','URL','\x20could\x20not\x20be\x20verified.','rawerror','createdId','Menu\x20','username','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','8KULnCJ','menu_verification_failed','failed','parent-id','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','Whether\x20the\x20menu\x20is\x20visible','4430251jpFssC','menu_mutation_failed','readbackerror','includes','before','open-mode','4093914hofyNM','sort','path','lookupCommand','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','menu_url_credentials_forbidden','get','create-recovery','data','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','appCode','771021OOawkI','Run\x20','1580MTnFVe','add','External\x20menu\x20creation\x20failed.','prototype','\x20has\x20an\x20unexpected\x20','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20after\x20response\x20loss.','Recovered\x20created\x20external\x20menu\x20','verification','\x20with\x20','visibility','url','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','code','fact','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','menu_create_response_invalid','menu_url_https_required','Recovered\x20menu\x20','after','\x27\x5c\x27\x27','str','2941655OJxgyx','1145184WxLcwu','succeeded','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','<platform-generated>','hasOwnProperty','label','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','menu_sort_overflow','rabetbase\x20menu\x20list\x20--appcode\x20','isSafeInteger','How\x20to\x20open\x20the\x20external\x20website','recovered','body','new-window','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','<redacted>','menu\x20list','hash','parentId','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','causemessage','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','afterPlan','menu_create_recovery_required','Created\x20menu\x20','menu_open_mode_invalid','438868WiVMJa','plannedActions','trim','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','plan','snapshot','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','object','call','write','replace','18gDhDog','pre-write-recheck','Provide\x20an\x20HTTPS\x20URL.','\x20--format\x20compress','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','rawFlags','visible','link','filter','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','menu_not_found','\x20failed\x20final\x20verification.','cookie','embedded','menu_permission_denied','flagMissing','map','create\x20external\x20menu','menu','currentSnapshotHash','Create\x20an\x20external\x20website\x20link\x20menu','90xsIuar','has','Menu\x20label','type','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'];a109_0x1a48=function(){return _0x21a817;};return a109_0x1a48();}function creationSuccess(_0xecc78b,_0x286f10,_0x34063a,_0x701684){const _0x5ab9d5=a109_0x4ada2a,_0x6028d1=mutationResult({..._0xecc78b,'after':_0x34063a,'dryRun':![],'succeeded':[{'id':_0x34063a['id'],'created':!![],'recovered':_0x701684}],'verification':{'checkedBy':_0x5ab9d5(0x1dd),'snapshotHash':_0x286f10['hash'],'targetId':_0x34063a['id'],'recovered':_0x701684,'path':_0x34063a['path']}});return{'ok':!![],'message':_0x701684?_0x5ab9d5(0x1bc)+_0x34063a['id']+_0x5ab9d5(0x1bb):'Created\x20external\x20menu\x20'+_0x34063a['id']+'.','data':{..._0x6028d1,'recovered':_0x701684}};}function externalLinkCreateFailure(_0x14b21f,_0x30dcc1,_0x4cf53b){const _0x314ad2=a109_0x4ada2a;return menuFailure(safeMenuAddError(_0x14b21f),redactFailurePlan(_0x30dcc1),{..._0x4cf53b,'succeeded':_0x4cf53b[_0x314ad2(0x1ce)]?.[_0x314ad2(0x204)](redactFailureRecord),'failed':_0x4cf53b['failed']?redactFailureRecord(_0x4cf53b[_0x314ad2(0x19d)]):undefined,'verification':_0x4cf53b['verification']?redactFailureRecord(_0x4cf53b['verification']):undefined,'after':_0x4cf53b['after']===undefined?undefined:redactFailureValue(_0x4cf53b[_0x314ad2(0x1c9)])});}function redactFailurePlan(_0x12167d){const _0x22a17e=a109_0x4ada2a;return{..._0x12167d,'selector':redactFailureRecord(_0x12167d[_0x22a17e(0x219)]),'before':redactFailureValue(_0x12167d[_0x22a17e(0x1a5)]),'after':redactFailureValue(_0x12167d['after']),'plannedActions':_0x12167d[_0x22a17e(0x1e8)]?.[_0x22a17e(0x204)](_0x5ee569=>({..._0x5ee569,'body':redactFailureRecord(_0x5ee569[_0x22a17e(0x1d9)])})),'succeeded':_0x12167d['succeeded'][_0x22a17e(0x204)](redactFailureRecord),'failed':_0x12167d[_0x22a17e(0x19d)][_0x22a17e(0x204)](redactFailureRecord),'verification':_0x12167d[_0x22a17e(0x1bd)]?redactFailureRecord(_0x12167d[_0x22a17e(0x1bd)]):undefined};}function redactFailureRecord(_0x32f84a){return redactFailureValue(_0x32f84a);}function redactFailureValue(_0x485d23,_0x565a8d=''){const _0x4dc58b=a109_0x4ada2a,_0x2a1008=_0x565a8d[_0x4dc58b(0x20e)]()[_0x4dc58b(0x1f2)](/[^a-z0-9]/g,'');if(['cause',_0x4dc58b(0x1e1),_0x4dc58b(0x1a3),_0x4dc58b(0x229)][_0x4dc58b(0x1a4)](_0x2a1008))return _0x4dc58b(0x1dc);if(Array[_0x4dc58b(0x213)](_0x485d23))return _0x485d23[_0x4dc58b(0x204)](_0x2a9a4b=>redactFailureValue(_0x2a9a4b));if(_0x485d23&&typeof _0x485d23===_0x4dc58b(0x1ef))return Object[_0x4dc58b(0x21f)](Object[_0x4dc58b(0x218)](_0x485d23)['map'](([_0x54a7db,_0x2c918f])=>[_0x54a7db,redactFailureValue(_0x2c918f,_0x54a7db)]));return _0x485d23;}function safeMenuAddError(_0x32b5e1){const _0x47142b=a109_0x4ada2a,_0x37c2e8=_0x32b5e1 instanceof CliError?_0x32b5e1[_0x47142b(0x1c2)]:_0x47142b(0x1a2);switch(_0x37c2e8){case'menu_state_drift':return menuError(_0x37c2e8,_0x47142b(0x1c4),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.');case _0x47142b(0x202):return menuError(_0x37c2e8,_0x47142b(0x21d),_0x47142b(0x1b1));case _0x47142b(0x1c6):return menuError(_0x37c2e8,_0x47142b(0x220),_0x47142b(0x1fc));case _0x47142b(0x19c):return menuError(_0x37c2e8,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x47142b(0x1e4):return menuError(_0x37c2e8,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x47142b(0x19f));case'menu_mutation_failed':case _0x47142b(0x1fe):case'menu_parent_not_folder':case'menu_sort_invalid':case _0x47142b(0x1d4):return menuError(_0x37c2e8,_0x47142b(0x1b7),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0x47142b(0x1a2),'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x156d68){const _0x5cb189=a109_0x4ada2a;if(!(_0x156d68 instanceof Error)||!(_0x5cb189(0x1b0)in _0x156d68))return undefined;const _0x55c9e2=_0x156d68[_0x5cb189(0x1b0)];if(!_0x55c9e2||typeof _0x55c9e2!==_0x5cb189(0x1ef))return undefined;const _0x18ef72=_0x55c9e2[_0x5cb189(0x19d)];if(!Array[_0x5cb189(0x213)](_0x18ef72)||!_0x18ef72[0x0]||typeof _0x18ef72[0x0]!==_0x5cb189(0x1ef))return undefined;return _0x18ef72[0x0];}
|
|
1
|
+
const a111_0x534039=a111_0x5455;(function(_0x1e1598,_0x426129){const _0xe8951e=a111_0x5455,_0x37a282=_0x1e1598();while(!![]){try{const _0x301c56=-parseInt(_0xe8951e(0x93))/0x1*(parseInt(_0xe8951e(0xbf))/0x2)+parseInt(_0xe8951e(0xf5))/0x3*(parseInt(_0xe8951e(0x7d))/0x4)+parseInt(_0xe8951e(0xdf))/0x5+parseInt(_0xe8951e(0x8d))/0x6*(parseInt(_0xe8951e(0xca))/0x7)+-parseInt(_0xe8951e(0x6e))/0x8*(-parseInt(_0xe8951e(0xdb))/0x9)+parseInt(_0xe8951e(0xa5))/0xa+parseInt(_0xe8951e(0xb1))/0xb*(-parseInt(_0xe8951e(0xe2))/0xc);if(_0x301c56===_0x426129)break;else _0x37a282['push'](_0x37a282['shift']());}catch(_0x174ab8){_0x37a282['push'](_0x37a282['shift']());}}}(a111_0x505a,0xd2290));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':'link'};export function validateExternalMenuUrl(_0x796253){const _0x8c1ebe=a111_0x5455,_0x213afc=_0x796253[_0x8c1ebe(0x77)]();let _0x769eec;try{_0x769eec=new URL(_0x213afc);}catch{throw menuError(_0x8c1ebe(0xf6),_0x8c1ebe(0x99),_0x8c1ebe(0x78));}if(_0x769eec[_0x8c1ebe(0xd4)]!==_0x8c1ebe(0xc5))throw menuError(_0x8c1ebe(0xf9),_0x8c1ebe(0xd1),_0x8c1ebe(0x84));if(_0x769eec[_0x8c1ebe(0xb8)]||_0x769eec[_0x8c1ebe(0x91)])throw menuError(_0x8c1ebe(0x96),_0x8c1ebe(0xb5),_0x8c1ebe(0x92));return _0x213afc;}export const menuExternalLinkCreate={'service':a111_0x534039(0xb6),'command':a111_0x534039(0xd3),'description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':a111_0x534039(0xa4),'structuredErrors':!![],'flags':[{'name':a111_0x534039(0xdc),'type':'string','required':!![],'description':'Menu\x20label'},{'name':a111_0x534039(0xa8),'type':a111_0x534039(0xbb),'required':!![],'enum':['embedded',a111_0x534039(0xd7)],'description':a111_0x534039(0xa0)},{'name':'url','type':a111_0x534039(0xbb),'required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':'boolean','default':!![],'description':a111_0x534039(0x76)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x63672c){validateAddInput(_0x63672c);},async 'dryRun'(_0x469cc9){const _0x4a5717=a111_0x534039;validateAddInput(_0x469cc9);const {plan:_0x3298b2}=await buildSafeAddPlan(_0x469cc9,!![]),_0x4f28d4=_0x3298b2[_0x4a5717(0x79)],_0x4c4c80=createBody(_0x4f28d4);return menuDryRunResult(_0x3298b2,{'method':_0x4a5717(0x90),'url':_0x4a5717(0x85),'body':_0x4c4c80,'description':_0x4a5717(0xc6)+JSON[_0x4a5717(0x8a)](_0x4f28d4[_0x4a5717(0xdc)])+_0x4a5717(0xbe)+_0x469cc9[_0x4a5717(0xeb)]('open-mode')+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x1e9f96){const _0x32ee72=a111_0x534039;validateAddInput(_0x1e9f96);const _0x920636=await buildSafeAddPlan(_0x1e9f96,![]),{plan:_0x49ef5e,snapshot:_0x5603d1}=_0x920636,_0x1c5995=_0x49ef5e['after'],_0x2e10d4=buildMenuLookupCommand(_0x1e9f96[_0x32ee72(0xc1)]);await recheckAddSnapshot(_0x1e9f96,_0x49ef5e);let _0xf72338;try{_0xf72338=await createMenuEntity(_0x1e9f96[_0x32ee72(0xc1)],_0x1e9f96[_0x32ee72(0xaf)],createBody(_0x1c5995));}catch(_0x5e1296){const _0x58c529=mapMenuApiError(_0x5e1296,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x5e1296)||_0x58c529[_0x32ee72(0xef)]===_0x32ee72(0xd0))throw externalLinkCreateFailure(_0x58c529,_0x49ef5e,{'stage':_0x32ee72(0xda),'failed':{},'verification':{'status':_0x32ee72(0x95),'lookupCommand':_0x2e10d4}});return recoverAfterResponseLoss(_0x1e9f96,_0x920636,_0x2e10d4);}const _0x26fe87=Number(_0xf72338?.['id']),_0x20bb46=typeof _0xf72338?.[_0x32ee72(0x86)]===_0x32ee72(0xbb)?_0xf72338['path']:'';if(!Number[_0x32ee72(0xec)](_0x26fe87)||_0x26fe87<=0x0||!_0x20bb46[_0x32ee72(0x77)]()){const _0x53798e=menuError('menu_create_response_invalid',_0x32ee72(0xad),_0x32ee72(0xe4)+_0x2e10d4+_0x32ee72(0xb0));throw externalLinkCreateFailure(_0x53798e,_0x49ef5e,{'stage':_0x32ee72(0x8c),'succeeded':Number['isSafeInteger'](_0x26fe87)&&_0x26fe87>0x0?[{'id':_0x26fe87,'created':!![]}]:[],'failed':{'createdId':Number[_0x32ee72(0xec)](_0x26fe87)?_0x26fe87:null,'generatedPathConfirmed':Boolean(_0x20bb46[_0x32ee72(0x77)]())},'warnings':[_0x32ee72(0xa3)],'after':Number[_0x32ee72(0xec)](_0x26fe87)&&_0x26fe87>0x0?{..._0x1c5995,'id':_0x26fe87,'path':_0x20bb46}:_0x1c5995,'verification':{'status':_0x32ee72(0x95),'lookupCommand':_0x2e10d4,...Number[_0x32ee72(0xec)](_0x26fe87)&&_0x26fe87>0x0?{'targetId':_0x26fe87}:{}}});}const _0x4feee0=await readAndVerifyCreatedMenu({'appCode':_0x1e9f96[_0x32ee72(0xc1)],'cookie':_0x1e9f96[_0x32ee72(0xaf)],'plan':_0x49ef5e,'afterPlan':_0x1c5995,'createdId':_0x26fe87,'expectedPath':_0x20bb46,'lookupCommand':_0x2e10d4,'recovered':![]});return creationSuccess(_0x49ef5e,_0x4feee0[_0x32ee72(0x97)],_0x4feee0['fact'],![]);}};function validateAddInput(_0x578203){const _0x31fd3e=a111_0x534039;if(!_0x578203[_0x31fd3e(0xeb)](_0x31fd3e(0xdc))['trim']())throw CliErrors[_0x31fd3e(0xdd)](_0x31fd3e(0xdc));resolveExternalMenuType(_0x578203),validateExternalMenuUrl(_0x578203['str'](_0x31fd3e(0x73))),parseParentId(_0x578203,_0x31fd3e(0x75)),validateSort(_0x578203);}function resolveExternalMenuType(_0x5ddaae){const _0x11d597=a111_0x534039,_0x290b9b=_0x5ddaae[_0x11d597(0xeb)](_0x11d597(0xa8))['trim']();if(!_0x290b9b)throw CliErrors[_0x11d597(0xdd)](_0x11d597(0xa8));const _0x2706c8=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x290b9b];if(!_0x2706c8)throw menuError(_0x11d597(0x7c),_0x11d597(0xcd),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x2706c8;}async function buildAddPlan(_0x34a844,_0x59cfd3){const _0x57b5c6=a111_0x534039,_0x1bfc4a=await fetchMutationSnapshot(_0x34a844,_0x57b5c6(0xcc)),_0x6174a9=parseParentId(_0x34a844,'parent-id')??null;if(_0x6174a9!=null)requireFolder(_0x1bfc4a,_0x6174a9);const _0x389f43=validateSort(_0x34a844),_0x299600=_0x389f43??nextSiblingSort(_0x1bfc4a,_0x6174a9,_0x57b5c6(0xb6)),_0x10d409=_0x34a844[_0x57b5c6(0xeb)](_0x57b5c6(0xdc))[_0x57b5c6(0x77)](),_0x14ae43=resolveExternalMenuType(_0x34a844),_0x5ac9a7=validateExternalMenuUrl(_0x34a844[_0x57b5c6(0xeb)](_0x57b5c6(0x73))),_0x59492f=Object[_0x57b5c6(0x9a)]['hasOwnProperty'][_0x57b5c6(0xc3)](_0x34a844[_0x57b5c6(0x9d)],'visible')?_0x34a844['bool']('visible'):!![],_0x31506a={'id':null,'parentId':_0x6174a9,'label':_0x10d409,'path':_0x57b5c6(0xe5),'url':_0x5ac9a7,'type':_0x14ae43,'visible':_0x59492f,'sort':_0x299600},_0x3f45f1=buildMenuLookupCommand(_0x34a844[_0x57b5c6(0xc1)]),_0x372c33=mutationResult({'operation':'add','selector':{'parentId':_0x6174a9,'type':_0x14ae43,'label':_0x10d409,'url':_0x5ac9a7},'before':null,'after':_0x31506a,'dryRun':_0x59cfd3,'backend':[{'method':_0x57b5c6(0x90),'path':'/smartapi/menu/create'}],'plannedActions':[{'stage':_0x57b5c6(0x98),'method':_0x57b5c6(0x90),'path':'/smartapi/menu/create','body':createBody(_0x31506a)}],'snapshotHash':_0x1bfc4a[_0x57b5c6(0xa7)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x3f45f1}});return{'plan':_0x372c33,'snapshot':_0x1bfc4a};}function a111_0x5455(_0x3de04c,_0x6d7e96){_0x3de04c=_0x3de04c-0x6e;const _0x505ada=a111_0x505a();let _0x545575=_0x505ada[_0x3de04c];return _0x545575;}async function buildSafeAddPlan(_0x4b9451,_0x5d6541){try{return await buildAddPlan(_0x4b9451,_0x5d6541);}catch(_0x8854ef){throw safeMenuAddError(_0x8854ef);}}async function recheckAddSnapshot(_0x2e5d67,_0x2822c1){const _0xf15bdf=a111_0x534039;try{await recheckMutationSnapshot(_0x2e5d67,_0x2822c1,_0xf15bdf(0xcc));}catch(_0x41f541){const _0x4a19ef=getFailureRecord(_0x41f541);throw externalLinkCreateFailure(_0x41f541,_0x2822c1,{'stage':_0xf15bdf(0xb9),'failed':{..._0x4a19ef?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0x4a19ef[_0xf15bdf(0xf2)]}:{},..._0x4a19ef?.[_0xf15bdf(0xde)]?{'currentSnapshotHash':_0x4a19ef[_0xf15bdf(0xde)]}:{}}});}}function createBody(_0x1d548f){const _0x2d1288=a111_0x534039;return{'parentId':toApiParentId(_0x1d548f[_0x2d1288(0xc0)]),'label':String(_0x1d548f['label']),'type':String(_0x1d548f['type']),'url':String(_0x1d548f[_0x2d1288(0x73)]),'visible':Boolean(_0x1d548f[_0x2d1288(0xc2)]),'sort':Number(_0x1d548f[_0x2d1288(0x7a)]),'extend':{}};}function buildMenuLookupCommand(_0x379414){const _0x2d7615=a111_0x534039,_0x21c920='\x27'+_0x379414[_0x2d7615(0x82)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x2d7615(0x71)+_0x21c920+'\x20--format\x20compress';}async function recoverAfterResponseLoss(_0x1e8493,_0xb0039,_0x4368bc){const _0xd217a4=a111_0x534039,{plan:_0x261d3e,snapshot:_0x497e98}=_0xb0039,_0x42e179=_0x261d3e[_0xd217a4(0x79)];let _0x35826a;try{_0x35826a=await fetchMenuSnapshot(_0x1e8493[_0xd217a4(0xc1)],_0x1e8493[_0xd217a4(0xaf)]);}catch(_0x6485ee){throw recoveryRequiredFailure(_0x261d3e,_0x4368bc,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x4eda94=_0x35826a['menus'][_0xd217a4(0x7e)](_0x3a8b79=>_0x3a8b79['parentId']===_0x42e179['parentId']&&_0x3a8b79['type']===_0x42e179['type']&&_0x3a8b79[_0xd217a4(0xdc)]===_0x42e179[_0xd217a4(0xdc)]&&_0x3a8b79[_0xd217a4(0x73)]===_0x42e179[_0xd217a4(0x73)]),_0x16c3ab=_0x4eda94['filter'](_0x4ac0e6=>!_0x497e98['byId']['has'](_0x4ac0e6['id'])),_0x160766=_0x4eda94[_0xd217a4(0x7e)](_0x4b7946=>_0x497e98['byId'][_0xd217a4(0x6f)](_0x4b7946['id']));if(_0x4eda94['length']!==0x1||_0x16c3ab[_0xd217a4(0x74)]!==0x1)throw recoveryRequiredFailure(_0x261d3e,_0x4368bc,{'matchCount':_0x4eda94[_0xd217a4(0x74)],'newMatchCount':_0x16c3ab['length'],'preexistingMatchCount':_0x160766[_0xd217a4(0x74)]});const _0x497408=_0x16c3ab[0x0];try{verifyCreatedFact(_0x497408,_0x497408['id'],_0x42e179,null);}catch(_0x3a6104){const _0x380514=_0x3a6104 instanceof Error&&'code'in _0x3a6104?_0x3a6104:menuError(_0xd217a4(0xbd),_0xd217a4(0xe3)+_0x497408['id']+'\x20could\x20not\x20be\x20verified.',_0xd217a4(0xe4)+_0x4368bc+_0xd217a4(0x9b));throw externalLinkCreateFailure(_0x380514,_0x261d3e,{'stage':_0xd217a4(0x70),'succeeded':[{'id':_0x497408['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x497408['id'],'finalFactsConfirmed':![]},'after':_0x497408,'warnings':[_0xd217a4(0xa2)+_0x497408['id']+_0xd217a4(0xea)],'verification':{'status':_0xd217a4(0x95),'targetId':_0x497408['id'],'recovered':!![],'lookupCommand':_0x4368bc}});}return creationSuccess(_0x261d3e,_0x35826a,_0x497408,!![]);}function recoveryRequiredFailure(_0x101484,_0x2629a8,_0x26da46){const _0x5d4703=a111_0x534039,_0x31c55f=menuError(_0x5d4703(0xc7),_0x5d4703(0xa1),_0x5d4703(0xe4)+_0x2629a8+_0x5d4703(0xb7));return externalLinkCreateFailure(_0x31c55f,_0x101484,{'stage':_0x5d4703(0xf1),'failed':_0x26da46,'warnings':[_0x5d4703(0xe6)],'verification':{'status':_0x5d4703(0x95),..._0x26da46,'lookupCommand':_0x2629a8}});}async function readAndVerifyCreatedMenu(_0x4f9fb8){const _0x1c0215=a111_0x534039;let _0x2bd5a7;try{_0x2bd5a7=await fetchMenuSnapshot(_0x4f9fb8[_0x1c0215(0xc1)],_0x4f9fb8[_0x1c0215(0xaf)]);}catch(_0x25cf8a){const _0x595d48=menuError(_0x1c0215(0xbd),_0x1c0215(0xa2)+_0x4f9fb8[_0x1c0215(0x80)]+_0x1c0215(0x7b),'Run\x20'+_0x4f9fb8['lookupCommand']+_0x1c0215(0xf0));throw externalLinkCreateFailure(_0x595d48,_0x4f9fb8[_0x1c0215(0xcb)],{'stage':_0x1c0215(0x70),'succeeded':[{'id':_0x4f9fb8[_0x1c0215(0x80)],'created':!![]}],'failed':{'id':_0x4f9fb8[_0x1c0215(0x80)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x4f9fb8[_0x1c0215(0xb3)],'id':_0x4f9fb8[_0x1c0215(0x80)],'path':_0x4f9fb8['expectedPath']},'warnings':[_0x1c0215(0xa2)+_0x4f9fb8[_0x1c0215(0x80)]+_0x1c0215(0x9c)],'verification':{'status':'failed','targetId':_0x4f9fb8['createdId'],'lookupCommand':_0x4f9fb8[_0x1c0215(0xac)]}});}const _0x422e11=_0x2bd5a7[_0x1c0215(0xf4)][_0x1c0215(0xd8)](_0x4f9fb8[_0x1c0215(0x80)]);try{if(!_0x422e11)throw menuError(_0x1c0215(0xbd),_0x1c0215(0xed)+_0x4f9fb8[_0x1c0215(0x80)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x1c0215(0xe4)+_0x4f9fb8[_0x1c0215(0xac)]+_0x1c0215(0xf0));verifyCreatedFact(_0x422e11,_0x4f9fb8[_0x1c0215(0x80)],_0x4f9fb8[_0x1c0215(0xb3)],_0x4f9fb8['expectedPath']);}catch(_0x48e620){const _0x4d755f=_0x48e620 instanceof Error&&_0x1c0215(0xef)in _0x48e620?_0x48e620:menuError(_0x1c0215(0xbd),_0x1c0215(0xed)+_0x4f9fb8['createdId']+'\x20failed\x20final\x20verification.',_0x1c0215(0xe4)+_0x4f9fb8[_0x1c0215(0xac)]+_0x1c0215(0xf0));throw externalLinkCreateFailure(_0x4d755f,_0x4f9fb8[_0x1c0215(0xcb)],{'stage':_0x1c0215(0x70),'succeeded':[{'id':_0x4f9fb8[_0x1c0215(0x80)],'created':!![]}],'failed':{'id':_0x4f9fb8[_0x1c0215(0x80)],'finalFactsConfirmed':![]},'after':_0x422e11??{..._0x4f9fb8[_0x1c0215(0xb3)],'id':_0x4f9fb8[_0x1c0215(0x80)],'path':_0x4f9fb8[_0x1c0215(0x8b)]},'warnings':[_0x1c0215(0xa2)+_0x4f9fb8[_0x1c0215(0x80)]+_0x1c0215(0xaa)],'verification':{'status':_0x1c0215(0x95),'targetId':_0x4f9fb8['createdId'],'recovered':_0x4f9fb8[_0x1c0215(0x9e)],'lookupCommand':_0x4f9fb8[_0x1c0215(0xac)]}});}return{'snapshot':_0x2bd5a7,'fact':_0x422e11};}function verifyCreatedFact(_0x5c15bc,_0x3840af,_0x4599b0,_0x4d597b){const _0x1f8b35=a111_0x534039;if(!Number[_0x1f8b35(0xec)](_0x5c15bc['id'])||_0x5c15bc['id']<=0x0||_0x5c15bc['id']!==_0x3840af)throw menuError(_0x1f8b35(0xbd),_0x1f8b35(0xc4),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x41b5e3=[[_0x1f8b35(0x94),_0x5c15bc[_0x1f8b35(0xc0)],_0x4599b0['parentId']],[_0x1f8b35(0x8f),_0x5c15bc['type'],_0x4599b0[_0x1f8b35(0x8f)]],[_0x1f8b35(0xdc),_0x5c15bc[_0x1f8b35(0xdc)],_0x4599b0[_0x1f8b35(0xdc)]],['URL',_0x5c15bc[_0x1f8b35(0x73)],_0x4599b0[_0x1f8b35(0x73)]],[_0x1f8b35(0xb2),_0x5c15bc[_0x1f8b35(0xc2)],_0x4599b0['visible']],[_0x1f8b35(0x7a),_0x5c15bc['sort'],_0x4599b0[_0x1f8b35(0x7a)]]];for(const [_0x4091f5,_0x268c67,_0x18ebae]of _0x41b5e3){if(_0x268c67!==_0x18ebae)throw menuError(_0x1f8b35(0xbd),'Created\x20menu\x20'+_0x5c15bc['id']+'\x20has\x20an\x20unexpected\x20'+_0x4091f5+'.',_0x1f8b35(0xe9));}if(!_0x5c15bc[_0x1f8b35(0x86)][_0x1f8b35(0x77)]()||_0x4d597b!==null&&_0x5c15bc['path']!==_0x4d597b)throw menuError(_0x1f8b35(0xbd),'Created\x20menu\x20'+_0x5c15bc['id']+_0x1f8b35(0xbc),'Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function creationSuccess(_0x2f5317,_0x25ae42,_0x585fab,_0xb943e7){const _0x2cb1fb=a111_0x534039,_0x550d48=mutationResult({..._0x2f5317,'after':_0x585fab,'dryRun':![],'succeeded':[{'id':_0x585fab['id'],'created':!![],'recovered':_0xb943e7}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x25ae42['hash'],'targetId':_0x585fab['id'],'recovered':_0xb943e7,'path':_0x585fab[_0x2cb1fb(0x86)]}});return{'ok':!![],'message':_0xb943e7?_0x2cb1fb(0xb4)+_0x585fab['id']+_0x2cb1fb(0xba):_0x2cb1fb(0xf8)+_0x585fab['id']+'.','data':{..._0x550d48,'recovered':_0xb943e7}};}function externalLinkCreateFailure(_0x1f9eb7,_0x5900b3,_0x5ae216){const _0x493889=a111_0x534039;return menuFailure(safeMenuAddError(_0x1f9eb7),redactFailurePlan(_0x5900b3),{..._0x5ae216,'succeeded':_0x5ae216[_0x493889(0xce)]?.[_0x493889(0xc8)](redactFailureRecord),'failed':_0x5ae216[_0x493889(0x95)]?redactFailureRecord(_0x5ae216['failed']):undefined,'verification':_0x5ae216['verification']?redactFailureRecord(_0x5ae216['verification']):undefined,'after':_0x5ae216[_0x493889(0x79)]===undefined?undefined:redactFailureValue(_0x5ae216[_0x493889(0x79)])});}function redactFailurePlan(_0x291a08){const _0x5859a6=a111_0x534039;return{..._0x291a08,'selector':redactFailureRecord(_0x291a08[_0x5859a6(0xe8)]),'before':redactFailureValue(_0x291a08[_0x5859a6(0xf7)]),'after':redactFailureValue(_0x291a08[_0x5859a6(0x79)]),'plannedActions':_0x291a08[_0x5859a6(0xe1)]?.[_0x5859a6(0xc8)](_0x4cc2a2=>({..._0x4cc2a2,'body':redactFailureRecord(_0x4cc2a2[_0x5859a6(0xa9)])})),'succeeded':_0x291a08[_0x5859a6(0xce)][_0x5859a6(0xc8)](redactFailureRecord),'failed':_0x291a08[_0x5859a6(0x95)][_0x5859a6(0xc8)](redactFailureRecord),'verification':_0x291a08[_0x5859a6(0x70)]?redactFailureRecord(_0x291a08['verification']):undefined};}function a111_0x505a(){const _0x3c6917=['\x20has\x20an\x20unexpected\x20generated\x20path.','menu_verification_failed','\x20with\x20','4286kIHCwO','parentId','appCode','visible','call','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','https:','Would\x20create\x20external\x20website\x20link\x20menu\x20','menu_create_recovery_required','map','toLowerCase','50813QpUwyp','plan','create\x20external\x20menu','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','succeeded','menu_not_found','menu_permission_denied','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','entries','external-link-create','protocol','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','rawerror','new-window','get','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','create','49563USiRJq','label','flagMissing','currentSnapshotHash','4208170yGjwFa','menu_parent_not_folder','plannedActions','108jMagae','Recovered\x20menu\x20','Run\x20','<platform-generated>','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','selector','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','str','isSafeInteger','Created\x20menu\x20','menu_sort_invalid','code','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','create-recovery','expectedSnapshotHash','menu_create_response_invalid','byId','3429UJKsLC','menu_url_invalid','before','Created\x20external\x20menu\x20','menu_url_https_required','1528PtSrIC','has','verification','rabetbase\x20menu\x20list\x20--appcode\x20','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','url','length','parent-id','Whether\x20the\x20menu\x20is\x20visible','trim','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','after','sort','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','menu_open_mode_invalid','2852DHqQJK','filter','causemessage','createdId','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','replace','fromEntries','Provide\x20an\x20HTTPS\x20URL.','/smartapi/menu/create','path','data','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','External\x20menu\x20creation\x20failed.','stringify','expectedPath','create-response-validation','534KJqyMq','<redacted>','type','POST','password','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','124SWhDjG','parent','failed','menu_url_credentials_forbidden','snapshot','create-menu','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','prototype','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','rawFlags','recovered','menu_mutation_failed','How\x20to\x20open\x20the\x20external\x20website','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Menu\x20','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','write','11059280DIMHxb','readbackerror','hash','open-mode','body','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','isArray','lookupCommand','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','object','cookie','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','4074719kLqwQS','visibility','afterPlan','Recovered\x20created\x20external\x20menu\x20','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','menu','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','username','pre-write-recheck','\x20after\x20response\x20loss.','string'];a111_0x505a=function(){return _0x3c6917;};return a111_0x505a();}function redactFailureRecord(_0x1899bd){return redactFailureValue(_0x1899bd);}function redactFailureValue(_0x446d2a,_0x52072a=''){const _0xa0e89d=a111_0x534039,_0xd22fbf=_0x52072a[_0xa0e89d(0xc9)]()[_0xa0e89d(0x82)](/[^a-z0-9]/g,'');if(['cause',_0xa0e89d(0x7f),_0xa0e89d(0xa6),_0xa0e89d(0xd6)]['includes'](_0xd22fbf))return _0xa0e89d(0x8e);if(Array[_0xa0e89d(0xab)](_0x446d2a))return _0x446d2a[_0xa0e89d(0xc8)](_0x1de17d=>redactFailureValue(_0x1de17d));if(_0x446d2a&&typeof _0x446d2a===_0xa0e89d(0xae))return Object[_0xa0e89d(0x83)](Object[_0xa0e89d(0xd2)](_0x446d2a)[_0xa0e89d(0xc8)](([_0x500a01,_0x4a9896])=>[_0x500a01,redactFailureValue(_0x4a9896,_0x500a01)]));return _0x446d2a;}function safeMenuAddError(_0x1056e3){const _0x22a634=a111_0x534039,_0x433d31=_0x1056e3 instanceof CliError?_0x1056e3[_0x22a634(0xef)]:_0x22a634(0x9f);switch(_0x433d31){case'menu_state_drift':return menuError(_0x433d31,'Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.',_0x22a634(0xe7));case'menu_permission_denied':return menuError(_0x433d31,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.',_0x22a634(0x88));case _0x22a634(0xf3):return menuError(_0x433d31,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x22a634(0xbd):return menuError(_0x433d31,_0x22a634(0xd9),_0x22a634(0x81));case _0x22a634(0xc7):return menuError(_0x433d31,_0x22a634(0x72),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case'menu_mutation_failed':case _0x22a634(0xcf):case _0x22a634(0xe0):case _0x22a634(0xee):case'menu_sort_overflow':return menuError(_0x433d31,_0x22a634(0x89),_0x22a634(0xd5));default:return menuError(_0x22a634(0x9f),_0x22a634(0x89),_0x22a634(0xd5));}}function getFailureRecord(_0x2c4363){const _0x2ad69e=a111_0x534039;if(!(_0x2c4363 instanceof Error)||!(_0x2ad69e(0x87)in _0x2c4363))return undefined;const _0x1f8fbf=_0x2c4363[_0x2ad69e(0x87)];if(!_0x1f8fbf||typeof _0x1f8fbf!=='object')return undefined;const _0x4b6758=_0x1f8fbf['failed'];if(!Array[_0x2ad69e(0xab)](_0x4b6758)||!_0x4b6758[0x0]||typeof _0x4b6758[0x0]!==_0x2ad69e(0xae))return undefined;return _0x4b6758[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a110_0x5766(_0x3ae0dd,_0xc4a7c5){_0x3ae0dd=_0x3ae0dd-0xa1;const _0x5931e9=a110_0x5931();let _0x5766a8=_0x5931e9[_0x3ae0dd];return _0x5766a8;}const a110_0x4fb22b=a110_0x5766;(function(_0x54d100,_0x14260f){const _0x2e5bbd=a110_0x5766,_0x4c58f9=_0x54d100();while(!![]){try{const _0x24d478=parseInt(_0x2e5bbd(0xd7))/0x1*(-parseInt(_0x2e5bbd(0xa6))/0x2)+parseInt(_0x2e5bbd(0xbf))/0x3+-parseInt(_0x2e5bbd(0xcd))/0x4*(-parseInt(_0x2e5bbd(0xd5))/0x5)+-parseInt(_0x2e5bbd(0xdf))/0x6+-parseInt(_0x2e5bbd(0xa3))/0x7*(parseInt(_0x2e5bbd(0xcf))/0x8)+-parseInt(_0x2e5bbd(0xd2))/0x9*(parseInt(_0x2e5bbd(0xe8))/0xa)+-parseInt(_0x2e5bbd(0xce))/0xb*(-parseInt(_0x2e5bbd(0xc9))/0xc);if(_0x24d478===_0x14260f)break;else _0x4c58f9['push'](_0x4c58f9['shift']());}catch(_0x2ee5b7){_0x4c58f9['push'](_0x4c58f9['shift']());}}}(a110_0x5931,0xe0609));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a110_0x5931(){const _0x2757ee=['Run\x20','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','menu','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','failed','menu_update_recovery_required','\x20has\x20an\x20empty\x20platform\x20path.','menu_external_link_not_leaf','sort','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','byId','update-recovery','update\x20external\x20menu\x20URL','high-risk-write','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','1133991ITLbZr','menu_external_link_path_missing','\x20already\x20matches\x20the\x20requested\x20URL.','/smartapi/menu/update','update-external-link-url','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','appCode','\x20URL\x20update\x20did\x20not\x20take\x20effect.','visible','15536520WcCVBU','code','after','verify\x20external\x20menu\x20URL\x20update','3375436ZAolHH','11TJnRTZ','8BFpEAw','replace','cookie','212049UMbBWm','requestedUrlObserved','menu\x20list','5MklRwv','type','251nbISPw','parentId','string','expect-url','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','link','flagMissing','snapshot','3114822NYgZYI','url','\x20could\x20not\x20be\x20verified\x20safely','POST','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','menu_external_link_type_required','hash','path','iframe','10bfMpOl','menu_state_drift','readbackFailed','\x20parent\x20changed:\x20expected\x20','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','body','rabetbase\x20menu\x20list\x20--appcode\x20','\x27\x5c\x27\x27','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','trim','external-link-update','\x20changed\x20during\x20the\x20URL-only\x20update.','6347103OQfNMo','childrenCount','\x22,\x20not\x20iframe\x20or\x20link.','1180VsCpWv','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','verification','str','Menu\x20','Updated\x20external\x20URL\x20for\x20menu\x20','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','label'];a110_0x5931=function(){return _0x2757ee;};return a110_0x5931();}import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a110_0x4fb22b(0xc2)}];export const menuExternalLinkUpdate={'service':a110_0x4fb22b(0xb1),'command':'external-link-update','description':a110_0x4fb22b(0xbe),'risk':a110_0x4fb22b(0xbd),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a110_0x4fb22b(0xe0),'type':a110_0x4fb22b(0xd9),'required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a110_0x4fb22b(0xda),'type':a110_0x4fb22b(0xd9),'required':!![],'description':a110_0x4fb22b(0xad)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1b0bd6){validateInput(_0x1b0bd6),requireExplicitYes(_0x1b0bd6);},async 'dryRun'(_0x3e6cc0){const _0x28652d=a110_0x4fb22b;validateInput(_0x3e6cc0);const _0xc907aa=await buildPlan(_0x3e6cc0,!![]);return menuDryRunResult(_0xc907aa['plan'],{'method':_0x28652d(0xe2),'url':_0x28652d(0xc2),'body':_0xc907aa['body'],'description':_0x28652d(0xf0)+_0xc907aa[_0x28652d(0xed)]['id']+'.'});},async 'execute'(_0xc083d2){const _0x5d9395=a110_0x4fb22b;validateInput(_0xc083d2),requireExplicitYes(_0xc083d2);const _0x1a533d=await buildPlan(_0xc083d2,![]),{plan:_0x3da595,body:_0x5ed68b,before:_0x2cdc5c,noChanges:_0x5d6f32}=_0x1a533d,_0x214e13=_0x5ed68b['id'];if(_0x5d6f32)return updateSuccess(_0x3da595,_0x1a533d[_0x5d9395(0xde)],_0x2cdc5c,!![],![]);await recheckMutationSnapshot(_0xc083d2,_0x3da595,_0x5d9395(0xbc),_0x214e13);try{await updateMenuEntity(_0xc083d2[_0x5d9395(0xc6)],_0xc083d2[_0x5d9395(0xd1)],{'id':_0x5ed68b['id'],'url':_0x5ed68b[_0x5d9395(0xe0)]});}catch(_0x2235cf){const _0x34bc6a=mapMenuApiError(_0x2235cf,'update\x20external\x20menu\x20URL',_0x214e13);if(isMenuResponseLoss(_0x2235cf)&&_0x34bc6a[_0x5d9395(0xca)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0xc083d2,_0x1a533d);throw menuFailure(_0x34bc6a,_0x3da595,{'stage':'update','failed':{'id':_0x214e13},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x214e13,'lookupCommand':buildLookupCommand(_0xc083d2[_0x5d9395(0xc6)])}});}let _0x2fdea3,_0x5990c5;try{_0x2fdea3=await fetchMenuSnapshot(_0xc083d2[_0x5d9395(0xc6)],_0xc083d2[_0x5d9395(0xd1)]),_0x5990c5=requireMenu(_0x2fdea3,_0x214e13),verifyUpdatedFact(_0x2cdc5c,_0x5990c5,_0x5ed68b['url']);}catch(_0x47ae4f){const _0x4227a1=describeMenuErrorCause(_0x47ae4f,_0x5d9395(0xcc),_0x214e13),_0x4b146f=asVerificationError(_0x47ae4f,'Update\x20request\x20for\x20menu\x20'+_0x214e13+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x4b146f,_0x3da595,{'stage':_0x5d9395(0xa8),'succeeded':[{'id':_0x214e13,'updateRequested':!![]}],'failed':{'id':_0x214e13,'requestedStateConfirmed':![],..._0x4227a1},'warnings':[_0x5d9395(0xac)],'verification':{'status':'failed','targetId':_0x214e13,'lookupCommand':buildLookupCommand(_0xc083d2[_0x5d9395(0xc6)])}});}return updateSuccess(_0x3da595,_0x2fdea3,_0x5990c5,![],![]);}};function validateInput(_0x26b874){validateExactId(_0x26b874),requiredUrl(_0x26b874,'url'),requiredExpectedUrl(_0x26b874),parseParentId(_0x26b874,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x149fec,_0x45d92e){const _0x5f0c53=a110_0x4fb22b;if(!hasFlag(_0x149fec,_0x45d92e)||!_0x149fec[_0x5f0c53(0xa9)](_0x45d92e)[_0x5f0c53(0xf1)]())throw CliErrors[_0x5f0c53(0xdd)](_0x45d92e);return validateExternalMenuUrl(_0x149fec[_0x5f0c53(0xa9)](_0x45d92e));}function requiredExpectedUrl(_0x4fb4f5){const _0x128313=a110_0x4fb22b;if(!hasFlag(_0x4fb4f5,_0x128313(0xda))||!_0x4fb4f5[_0x128313(0xa9)](_0x128313(0xda))[_0x128313(0xf1)]())throw CliErrors['flagMissing'](_0x128313(0xda));return _0x4fb4f5[_0x128313(0xa9)]('expect-url')[_0x128313(0xf1)]();}async function buildPlan(_0x592ea2,_0x8fa15a){const _0x32168f=a110_0x4fb22b,_0x4fabc4=validateExactId(_0x592ea2),_0x5370a8=requiredUrl(_0x592ea2,_0x32168f(0xe0)),_0x440a10=requiredExpectedUrl(_0x592ea2),_0x1aee73=parseParentId(_0x592ea2,'expect-parent-id',{'required':!![]}),_0x145c43=await fetchMutationSnapshot(_0x592ea2,_0x32168f(0xbc),_0x4fabc4),_0x21367d=requireMenu(_0x145c43,_0x4fabc4);assertExternalLinkLeaf(_0x21367d);if(_0x21367d[_0x32168f(0xd8)]!==_0x1aee73)throw menuError(_0x32168f(0xe9),'Menu\x20'+_0x4fabc4+_0x32168f(0xeb)+formatParent(_0x1aee73)+',\x20current\x20'+formatParent(_0x21367d['parentId'])+'.',_0x32168f(0xe3));const _0x448bf4=_0x21367d[_0x32168f(0xe0)]===_0x5370a8;if(!_0x448bf4&&_0x21367d[_0x32168f(0xe0)]!==_0x440a10)throw menuError(_0x32168f(0xe9),_0x32168f(0xaa)+_0x4fabc4+_0x32168f(0xb9),_0x32168f(0xb3));const _0x947996={'id':_0x4fabc4,'appCode':_0x592ea2[_0x32168f(0xc6)],'url':_0x5370a8},_0x30cd9b={..._0x21367d,'url':_0x5370a8};return{'body':_0x947996,'before':_0x21367d,'noChanges':_0x448bf4,'snapshot':_0x145c43,'plan':mutationResult({'operation':_0x32168f(0xa1),'selector':{'id':_0x4fabc4},'before':_0x21367d,'after':_0x30cd9b,'dryRun':_0x8fa15a,'backend':[...BACKEND],'plannedActions':_0x448bf4?[]:[{'stage':_0x32168f(0xc3),'method':'POST','path':_0x32168f(0xc2),'body':_0x947996}],'snapshotHash':_0x145c43[_0x32168f(0xe5)],'warnings':_0x448bf4?[_0x32168f(0xdb)]:[]})};}function assertExternalLinkLeaf(_0x1d09b2){const _0x5491f4=a110_0x4fb22b;if(_0x1d09b2[_0x5491f4(0xd6)]!==_0x5491f4(0xe7)&&_0x1d09b2['type']!==_0x5491f4(0xdc))throw menuError(_0x5491f4(0xe4),'Menu\x20'+_0x1d09b2['id']+'\x20is\x20type\x20\x22'+(_0x1d09b2[_0x5491f4(0xd6)]||'unknown')+_0x5491f4(0xa5),_0x5491f4(0xec));if(_0x1d09b2[_0x5491f4(0xa4)]!==0x0)throw menuError(_0x5491f4(0xb7),'Menu\x20'+_0x1d09b2['id']+'\x20has\x20'+_0x1d09b2['childrenCount']+'\x20direct\x20child\x20menu(s).',_0x5491f4(0xb2));if(!_0x1d09b2[_0x5491f4(0xe6)][_0x5491f4(0xf1)]())throw menuError(_0x5491f4(0xc0),'Menu\x20'+_0x1d09b2['id']+_0x5491f4(0xb6),_0x5491f4(0xc4));}function verifyUpdatedFact(_0xb72e73,_0x373d2e,_0x544888){const _0x5478c0=a110_0x4fb22b;assertExternalLinkLeaf(_0x373d2e);const _0x5ec7a8=[['id',_0x373d2e['id'],_0xb72e73['id']],[_0x5478c0(0xae),_0x373d2e[_0x5478c0(0xae)],_0xb72e73['label']],['type',_0x373d2e['type'],_0xb72e73[_0x5478c0(0xd6)]],[_0x5478c0(0xe6),_0x373d2e[_0x5478c0(0xe6)],_0xb72e73['path']],[_0x5478c0(0xd8),_0x373d2e[_0x5478c0(0xd8)],_0xb72e73['parentId']],[_0x5478c0(0xb8),_0x373d2e[_0x5478c0(0xb8)],_0xb72e73[_0x5478c0(0xb8)]],[_0x5478c0(0xc8),_0x373d2e[_0x5478c0(0xc8)],_0xb72e73[_0x5478c0(0xc8)]]];for(const [_0x675c2e,_0x22fd03,_0x215ea7]of _0x5ec7a8){assertVerified(_0x22fd03===_0x215ea7,_0x5478c0(0xaa)+_0xb72e73['id']+'\x20'+_0x675c2e+_0x5478c0(0xa2));}assertVerified(_0x373d2e['url']===_0x544888,_0x5478c0(0xaa)+_0xb72e73['id']+_0x5478c0(0xc7));}function updateSuccess(_0x441fb2,_0x3659b1,_0x3d83a0,_0x817f38,_0x20538b){const _0x566714=a110_0x4fb22b,_0x45acfb=_0x3d83a0['id'],_0x3e4a47=mutationResult({..._0x441fb2,'after':_0x3d83a0,'dryRun':![],'succeeded':[{'id':_0x45acfb,'updated':!_0x817f38,'skipped':_0x817f38,'recovered':_0x20538b}],'verification':{'checkedBy':_0x566714(0xd4),'snapshotHash':_0x3659b1[_0x566714(0xe5)],'targetId':_0x45acfb,'matchesRequestedState':!![],'recovered':_0x20538b}});return{'ok':!![],'message':_0x20538b?_0x566714(0xb0)+_0x45acfb+'.':_0x817f38?_0x566714(0xaa)+_0x45acfb+_0x566714(0xc1):_0x566714(0xab)+_0x45acfb+'.','data':{..._0x3e4a47,'recovered':_0x20538b}};}async function recoverAfterResponseLoss(_0x285248,_0x1ee122){const _0x4f0f74=a110_0x4fb22b,{plan:_0x50de7f,before:_0x108822,body:_0x520a7e}=_0x1ee122;let _0x315ef4;try{_0x315ef4=await fetchMenuSnapshot(_0x285248[_0x4f0f74(0xc6)],_0x285248[_0x4f0f74(0xd1)]);}catch{throw recoveryRequired(_0x50de7f,_0x285248[_0x4f0f74(0xc6)],{'id':_0x520a7e['id'],'readbackFailed':!![]});}const _0x33b0e6=_0x315ef4[_0x4f0f74(0xba)]['get'](_0x520a7e['id']);if(!_0x33b0e6||_0x33b0e6[_0x4f0f74(0xe0)]!==_0x520a7e[_0x4f0f74(0xe0)])throw recoveryRequired(_0x50de7f,_0x285248[_0x4f0f74(0xc6)],{'id':_0x520a7e['id'],'requestedUrlObserved':![],'after':_0x33b0e6??null});try{verifyUpdatedFact(_0x108822,_0x33b0e6,_0x520a7e['url']);}catch(_0x2da299){const _0x19d9db=asVerificationError(_0x2da299,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x520a7e['id']+_0x4f0f74(0xe1));throw menuFailure(_0x19d9db,_0x50de7f,{'stage':_0x4f0f74(0xbb),'succeeded':[{'id':_0x520a7e['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x520a7e['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x33b0e6,'warnings':[_0x4f0f74(0xa7)],'verification':{'status':'failed','targetId':_0x520a7e['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x285248[_0x4f0f74(0xc6)])}});}return updateSuccess(_0x50de7f,_0x315ef4,_0x33b0e6,![],!![]);}function recoveryRequired(_0x4b817c,_0x5bc728,_0x524084){const _0x454399=a110_0x4fb22b,_0x281134=menuError(_0x454399(0xb5),_0x454399(0xc5),_0x454399(0xaf)+buildLookupCommand(_0x5bc728)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x281134,_0x4b817c,{'stage':_0x454399(0xbb),'failed':{'id':_0x524084['id'],..._0x524084[_0x454399(0xd3)]===undefined?{}:{'requestedUrlObserved':_0x524084[_0x454399(0xd3)]},..._0x524084['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x524084[_0x454399(0xcb)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x454399(0xb4),'targetId':_0x524084['id'],..._0x524084[_0x454399(0xd3)]===undefined?{}:{'requestedUrlObserved':_0x524084['requestedUrlObserved']},..._0x524084[_0x454399(0xea)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x5bc728)}});}function buildLookupCommand(_0x464b6e){const _0x582f8c=a110_0x4fb22b,_0x533b7c='\x27'+_0x464b6e[_0x582f8c(0xd0)](/'/g,_0x582f8c(0xef))+'\x27';return _0x582f8c(0xee)+_0x533b7c+'\x20--format\x20compress';}
|
|
1
|
+
function a112_0x24df(){const _0x58a703=['\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','New\x20external\x20HTTPS\x20URL','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','14gYdaht','968PADXvE','hash','appCode','link','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','sort','1952856oneafR','\x20has\x20','url','rabetbase\x20menu\x20list\x20--appcode\x20','/smartapi/menu/update','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','POST','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','\x20URL\x20update\x20did\x20not\x20take\x20effect.','failed',',\x20current\x20','get','36aGzjAf','Updated\x20external\x20URL\x20for\x20menu\x20','unknown','flagMissing','\x20changed\x20during\x20the\x20URL-only\x20update.','Response\x20was\x20lost\x20and\x20menu\x20','\x20has\x20an\x20empty\x20platform\x20path.','menu_permission_denied','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','5828604xwaAdG','cookie','expect-url','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','9968292DrsrlQ','Run\x20','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','update\x20external\x20menu\x20URL','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','\x20is\x20type\x20\x22','str','trim','path','Menu\x20','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','\x20direct\x20child\x20menu(s).','readbackFailed','body','type','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','708030dEEzit','\x20--format\x20compress','plan','iframe','replace','menu_state_drift','label','childrenCount','verify\x20external\x20menu\x20URL\x20update','\x20already\x20matches\x20the\x20requested\x20URL.','code','requestedUrlObserved','parentId','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','87026qbGEmT','1848152rODpgB','string','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','menu_external_link_path_missing','\x22,\x20not\x20iframe\x20or\x20link.','\x20parent\x20changed:\x20expected\x20','snapshot','23GGkIfc','menu_external_link_type_required','external-link-update','menu\x20list','update-recovery','286930nokaVg','visible','write','\x20could\x20not\x20be\x20verified\x20safely'];a112_0x24df=function(){return _0x58a703;};return a112_0x24df();}const a112_0x2e204d=a112_0xbb5a;(function(_0x3a6fb1,_0x87383f){const _0x26fb5f=a112_0xbb5a,_0x4031cc=_0x3a6fb1();while(!![]){try{const _0x238246=parseInt(_0x26fb5f(0x149))/0x1*(parseInt(_0x26fb5f(0x141))/0x2)+parseInt(_0x26fb5f(0x15c))/0x3+parseInt(_0x26fb5f(0x168))/0x4*(parseInt(_0x26fb5f(0x133))/0x5)+parseInt(_0x26fb5f(0x11e))/0x6+-parseInt(_0x26fb5f(0x155))/0x7*(-parseInt(_0x26fb5f(0x142))/0x8)+-parseInt(_0x26fb5f(0x122))/0x9+parseInt(_0x26fb5f(0x14e))/0xa*(-parseInt(_0x26fb5f(0x156))/0xb);if(_0x238246===_0x87383f)break;else _0x4031cc['push'](_0x4031cc['shift']());}catch(_0x13773a){_0x4031cc['push'](_0x4031cc['shift']());}}}(a112_0x24df,0xb1841));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a112_0x2e204d(0x162),'path':a112_0x2e204d(0x160)}];export const menuExternalLinkUpdate={'service':'menu','command':a112_0x2e204d(0x14b),'description':a112_0x2e204d(0x124),'risk':a112_0x2e204d(0x150),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':'string','required':!![],'description':a112_0x2e204d(0x153)},{'name':'expect-url','type':a112_0x2e204d(0x143),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x405d6a){validateInput(_0x405d6a);},async 'dryRun'(_0x56ae2d){const _0x3a61e5=a112_0x2e204d;validateInput(_0x56ae2d);const _0x2b8424=await buildPlan(_0x56ae2d,!![]);return menuDryRunResult(_0x2b8424[_0x3a61e5(0x135)],{'method':_0x3a61e5(0x162),'url':_0x3a61e5(0x160),'body':_0x2b8424[_0x3a61e5(0x130)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x2b8424['body']['id']+'.'});},async 'execute'(_0x105d71){const _0x94ce=a112_0x2e204d;validateInput(_0x105d71);const _0xe87263=await buildPlan(_0x105d71,![]),{plan:_0x2807fb,body:_0x125ca2,before:_0x4f7b28,noChanges:_0x25d6af}=_0xe87263,_0x20d3d1=_0x125ca2['id'];if(_0x25d6af)return updateSuccess(_0x2807fb,_0xe87263[_0x94ce(0x148)],_0x4f7b28,!![],![]);await recheckMutationSnapshot(_0x105d71,_0x2807fb,_0x94ce(0x125),_0x20d3d1);try{await updateMenuEntity(_0x105d71['appCode'],_0x105d71[_0x94ce(0x11f)],{'id':_0x125ca2['id'],'url':_0x125ca2['url']});}catch(_0x49ff3d){const _0x2cf1bb=mapMenuApiError(_0x49ff3d,_0x94ce(0x125),_0x20d3d1);if(isMenuResponseLoss(_0x49ff3d)&&_0x2cf1bb[_0x94ce(0x13d)]!==_0x94ce(0x11c))return recoverAfterResponseLoss(_0x105d71,_0xe87263);throw menuFailure(_0x2cf1bb,_0x2807fb,{'stage':'update','failed':{'id':_0x20d3d1},'warnings':[_0x94ce(0x15a)],'verification':{'status':_0x94ce(0x165),'targetId':_0x20d3d1,'lookupCommand':buildLookupCommand(_0x105d71[_0x94ce(0x158)])}});}let _0x510c2e,_0x4f2a37;try{_0x510c2e=await fetchMenuSnapshot(_0x105d71[_0x94ce(0x158)],_0x105d71[_0x94ce(0x11f)]),_0x4f2a37=requireMenu(_0x510c2e,_0x20d3d1),verifyUpdatedFact(_0x4f7b28,_0x4f2a37,_0x125ca2[_0x94ce(0x15e)]);}catch(_0xe05306){const _0x1a8592=describeMenuErrorCause(_0xe05306,_0x94ce(0x13b),_0x20d3d1),_0x4841b8=asVerificationError(_0xe05306,'Update\x20request\x20for\x20menu\x20'+_0x20d3d1+_0x94ce(0x144));throw menuFailure(_0x4841b8,_0x2807fb,{'stage':'verification','succeeded':[{'id':_0x20d3d1,'updateRequested':!![]}],'failed':{'id':_0x20d3d1,'requestedStateConfirmed':![],..._0x1a8592},'warnings':[_0x94ce(0x121)],'verification':{'status':_0x94ce(0x165),'targetId':_0x20d3d1,'lookupCommand':buildLookupCommand(_0x105d71['appCode'])}});}return updateSuccess(_0x2807fb,_0x510c2e,_0x4f2a37,![],![]);}};function validateInput(_0xd4c03){const _0x3a69b6=a112_0x2e204d;validateExactId(_0xd4c03),requiredUrl(_0xd4c03,_0x3a69b6(0x15e)),requiredExpectedUrl(_0xd4c03),parseParentId(_0xd4c03,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x2e06c1,_0x37e0cb){const _0x53164a=a112_0x2e204d;if(!hasFlag(_0x2e06c1,_0x37e0cb)||!_0x2e06c1[_0x53164a(0x129)](_0x37e0cb)['trim']())throw CliErrors[_0x53164a(0x16b)](_0x37e0cb);return validateExternalMenuUrl(_0x2e06c1[_0x53164a(0x129)](_0x37e0cb));}function requiredExpectedUrl(_0x35ed4a){const _0x36c951=a112_0x2e204d;if(!hasFlag(_0x35ed4a,_0x36c951(0x120))||!_0x35ed4a[_0x36c951(0x129)](_0x36c951(0x120))[_0x36c951(0x12a)]())throw CliErrors[_0x36c951(0x16b)](_0x36c951(0x120));return _0x35ed4a[_0x36c951(0x129)](_0x36c951(0x120))['trim']();}async function buildPlan(_0x1feacb,_0x5363bd){const _0x21fdf6=a112_0x2e204d,_0x17be42=validateExactId(_0x1feacb),_0x10ac23=requiredUrl(_0x1feacb,'url'),_0x549b1a=requiredExpectedUrl(_0x1feacb),_0x29b8ac=parseParentId(_0x1feacb,'expect-parent-id',{'required':!![]}),_0x225506=await fetchMutationSnapshot(_0x1feacb,_0x21fdf6(0x125),_0x17be42),_0x9b1699=requireMenu(_0x225506,_0x17be42);assertExternalLinkLeaf(_0x9b1699);if(_0x9b1699[_0x21fdf6(0x13f)]!==_0x29b8ac)throw menuError(_0x21fdf6(0x138),_0x21fdf6(0x12c)+_0x17be42+_0x21fdf6(0x147)+formatParent(_0x29b8ac)+_0x21fdf6(0x166)+formatParent(_0x9b1699['parentId'])+'.',_0x21fdf6(0x154));const _0x477073=_0x9b1699['url']===_0x10ac23;if(!_0x477073&&_0x9b1699[_0x21fdf6(0x15e)]!==_0x549b1a)throw menuError(_0x21fdf6(0x138),_0x21fdf6(0x12c)+_0x17be42+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0x21fdf6(0x132));const _0xb5ae78={'id':_0x17be42,'appCode':_0x1feacb[_0x21fdf6(0x158)],'url':_0x10ac23},_0x2b0eec={..._0x9b1699,'url':_0x10ac23};return{'body':_0xb5ae78,'before':_0x9b1699,'noChanges':_0x477073,'snapshot':_0x225506,'plan':mutationResult({'operation':_0x21fdf6(0x14b),'selector':{'id':_0x17be42},'before':_0x9b1699,'after':_0x2b0eec,'dryRun':_0x5363bd,'backend':[...BACKEND],'plannedActions':_0x477073?[]:[{'stage':'update-external-link-url','method':'POST','path':_0x21fdf6(0x160),'body':_0xb5ae78}],'snapshotHash':_0x225506[_0x21fdf6(0x157)],'warnings':_0x477073?[_0x21fdf6(0x140)]:[]})};}function assertExternalLinkLeaf(_0x395b97){const _0x25cfea=a112_0x2e204d;if(_0x395b97[_0x25cfea(0x131)]!==_0x25cfea(0x136)&&_0x395b97[_0x25cfea(0x131)]!==_0x25cfea(0x159))throw menuError(_0x25cfea(0x14a),_0x25cfea(0x12c)+_0x395b97['id']+_0x25cfea(0x128)+(_0x395b97[_0x25cfea(0x131)]||_0x25cfea(0x16a))+_0x25cfea(0x146),_0x25cfea(0x11d));if(_0x395b97[_0x25cfea(0x13a)]!==0x0)throw menuError('menu_external_link_not_leaf','Menu\x20'+_0x395b97['id']+_0x25cfea(0x15d)+_0x395b97['childrenCount']+_0x25cfea(0x12e),_0x25cfea(0x12d));if(!_0x395b97[_0x25cfea(0x12b)]['trim']())throw menuError(_0x25cfea(0x145),'Menu\x20'+_0x395b97['id']+_0x25cfea(0x16e),_0x25cfea(0x163));}function a112_0xbb5a(_0x28a639,_0x5e2fcd){_0x28a639=_0x28a639-0x11c;const _0x24df18=a112_0x24df();let _0xbb5a74=_0x24df18[_0x28a639];return _0xbb5a74;}function verifyUpdatedFact(_0x44872b,_0x676720,_0x35b5b6){const _0x4726f4=a112_0x2e204d;assertExternalLinkLeaf(_0x676720);const _0x2c5652=[['id',_0x676720['id'],_0x44872b['id']],[_0x4726f4(0x139),_0x676720[_0x4726f4(0x139)],_0x44872b['label']],['type',_0x676720['type'],_0x44872b[_0x4726f4(0x131)]],['path',_0x676720['path'],_0x44872b['path']],[_0x4726f4(0x13f),_0x676720[_0x4726f4(0x13f)],_0x44872b[_0x4726f4(0x13f)]],['sort',_0x676720[_0x4726f4(0x15b)],_0x44872b[_0x4726f4(0x15b)]],[_0x4726f4(0x14f),_0x676720['visible'],_0x44872b[_0x4726f4(0x14f)]]];for(const [_0x1155cc,_0x5723ea,_0x4448fe]of _0x2c5652){assertVerified(_0x5723ea===_0x4448fe,'Menu\x20'+_0x44872b['id']+'\x20'+_0x1155cc+_0x4726f4(0x16c));}assertVerified(_0x676720[_0x4726f4(0x15e)]===_0x35b5b6,_0x4726f4(0x12c)+_0x44872b['id']+_0x4726f4(0x164));}function updateSuccess(_0xb47ae9,_0x5a1fe7,_0x4691c8,_0x56ac39,_0x3d21b6){const _0x91a190=a112_0x2e204d,_0x14c87c=_0x4691c8['id'],_0x45e5a3=mutationResult({..._0xb47ae9,'after':_0x4691c8,'dryRun':![],'succeeded':[{'id':_0x14c87c,'updated':!_0x56ac39,'skipped':_0x56ac39,'recovered':_0x3d21b6}],'verification':{'checkedBy':_0x91a190(0x14c),'snapshotHash':_0x5a1fe7[_0x91a190(0x157)],'targetId':_0x14c87c,'matchesRequestedState':!![],'recovered':_0x3d21b6}});return{'ok':!![],'message':_0x3d21b6?_0x91a190(0x126)+_0x14c87c+'.':_0x56ac39?_0x91a190(0x12c)+_0x14c87c+_0x91a190(0x13c):_0x91a190(0x169)+_0x14c87c+'.','data':{..._0x45e5a3,'recovered':_0x3d21b6}};}async function recoverAfterResponseLoss(_0x5a5931,_0xd3a415){const _0x50247b=a112_0x2e204d,{plan:_0x11c15a,before:_0x2aba0e,body:_0x153463}=_0xd3a415;let _0x48ba0d;try{_0x48ba0d=await fetchMenuSnapshot(_0x5a5931['appCode'],_0x5a5931['cookie']);}catch{throw recoveryRequired(_0x11c15a,_0x5a5931['appCode'],{'id':_0x153463['id'],'readbackFailed':!![]});}const _0x44f6b9=_0x48ba0d['byId'][_0x50247b(0x167)](_0x153463['id']);if(!_0x44f6b9||_0x44f6b9['url']!==_0x153463[_0x50247b(0x15e)])throw recoveryRequired(_0x11c15a,_0x5a5931['appCode'],{'id':_0x153463['id'],'requestedUrlObserved':![],'after':_0x44f6b9??null});try{verifyUpdatedFact(_0x2aba0e,_0x44f6b9,_0x153463[_0x50247b(0x15e)]);}catch(_0x258e6e){const _0x3dac60=asVerificationError(_0x258e6e,_0x50247b(0x16d)+_0x153463['id']+_0x50247b(0x151));throw menuFailure(_0x3dac60,_0x11c15a,{'stage':_0x50247b(0x14d),'succeeded':[{'id':_0x153463['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x153463['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x44f6b9,'warnings':[_0x50247b(0x127)],'verification':{'status':_0x50247b(0x165),'targetId':_0x153463['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5a5931[_0x50247b(0x158)])}});}return updateSuccess(_0x11c15a,_0x48ba0d,_0x44f6b9,![],!![]);}function recoveryRequired(_0x4f6f8b,_0x56fd1f,_0x138661){const _0x3bbbae=a112_0x2e204d,_0x440f9b=menuError('menu_update_recovery_required','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x3bbbae(0x123)+buildLookupCommand(_0x56fd1f)+_0x3bbbae(0x152));return menuFailure(_0x440f9b,_0x4f6f8b,{'stage':_0x3bbbae(0x14d),'failed':{'id':_0x138661['id'],..._0x138661['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x138661['requestedUrlObserved']},..._0x138661['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x138661['after'],'warnings':[_0x3bbbae(0x161)],'verification':{'status':_0x3bbbae(0x165),'targetId':_0x138661['id'],..._0x138661[_0x3bbbae(0x13e)]===undefined?{}:{'requestedUrlObserved':_0x138661[_0x3bbbae(0x13e)]},..._0x138661[_0x3bbbae(0x12f)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x56fd1f)}});}function buildLookupCommand(_0x3fac38){const _0x1fa3d6=a112_0x2e204d,_0x23bbba='\x27'+_0x3fac38[_0x1fa3d6(0x137)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x1fa3d6(0x15f)+_0x23bbba+_0x1fa3d6(0x134);}
|