@lovrabet/rabetbase-cli 2.5.0-beta.3 → 2.5.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.d.ts +13 -0
- package/lib/commands/db/table-diff-shared.js +1 -0
- 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/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +1 -7
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +6 -6
- package/skills/rabetbase/guides/database-connection-workflow.md +9 -9
- package/skills/rabetbase/references/rabetbase-config.md +2 -3
- package/skills/rabetbase/references/rabetbase-db-analyze.md +2 -2
- package/skills/rabetbase/references/rabetbase-db-diff-refresh.md +4 -3
- package/skills/rabetbase/references/rabetbase-db-diff.md +7 -22
- package/skills/rabetbase/references/rabetbase-db-tables.md +14 -2
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
function a119_0x419d(_0x33bb03,_0x5aa35c){_0x33bb03=_0x33bb03-0xe8;const _0x20d338=a119_0x20d3();let _0x419dd0=_0x20d338[_0x33bb03];return _0x419dd0;}const a119_0x3f3325=a119_0x419d;(function(_0x20c672,_0x18af03){const _0x5a5780=a119_0x419d,_0x56ea0b=_0x20c672();while(!![]){try{const _0x42e6d1=parseInt(_0x5a5780(0x11e))/0x1+parseInt(_0x5a5780(0xf6))/0x2+parseInt(_0x5a5780(0x134))/0x3*(-parseInt(_0x5a5780(0x10f))/0x4)+parseInt(_0x5a5780(0x101))/0x5*(-parseInt(_0x5a5780(0x12c))/0x6)+-parseInt(_0x5a5780(0x127))/0x7+parseInt(_0x5a5780(0x126))/0x8*(-parseInt(_0x5a5780(0xfb))/0x9)+parseInt(_0x5a5780(0xf7))/0xa;if(_0x42e6d1===_0x18af03)break;else _0x56ea0b['push'](_0x56ea0b['shift']());}catch(_0x36565b){_0x56ea0b['push'](_0x56ea0b['shift']());}}}(a119_0x20d3,0x28720));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a119_0x20d3(){const _0x76631c=['pageId','isArray','childrenCount','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','menu_state_drift','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','pageType','plan','resources','verify\x20menu\x20rename','label','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','validation','replace','410494XOukJY','7913420pnoVuv','depth','\x20label\x20update\x20did\x20not\x20take\x20effect.','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','251541HkdNJM','string','Rename\x20request\x20for\x20menu\x20','--label\x20cannot\x20be\x20empty.','New\x20menu\x20label','verification','7115cYTcMs','\x20label\x20changed:\x20expected\x20','type','requestedLabelObserved','resourcesValid','menu_permission_denied','url','Renamed\x20menu\x20','get','Menu\x20','menu_update_recovery_required','str','rabetbase\x20menu\x20list\x20--appcode\x20','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','12oKfTpF','rename-menu','modelType','write','failed','rename\x20menu','rename','readbackFailed','\x20could\x20not\x20be\x20verified\x20safely','update','trim','datasetCode','childrenIds','POST','snapshot','311874QelMko','Would\x20rename\x20menu\x20','\x20changed\x20during\x20the\x20label-only\x20rename.','\x20--format\x20compress','byId','cookie','body','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','88xIbmLO','1867628XmJfdY','visible','code','datasetId','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','1362bSAGNQ','path','/smartapi/menu/update','parentId','appCode','menu','\x20already\x20has\x20the\x20requested\x20label.','sort','245535CLMyhP','update-recovery','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','stringify','menu\x20list','expect-label','hash'];a119_0x20d3=function(){return _0x76631c;};return a119_0x20d3();}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a119_0x3f3325(0x11c),'path':'/smartapi/menu/update'}];export const menuRename={'service':a119_0x3f3325(0x131),'command':a119_0x3f3325(0x115),'description':'Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','risk':a119_0x3f3325(0x112),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'label','type':a119_0x3f3325(0xfc),'required':!![],'description':a119_0x3f3325(0xff)},{'name':a119_0x3f3325(0x139),'type':'string','required':!![],'description':a119_0x3f3325(0x10e)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4a6ef4){validateInput(_0x4a6ef4);},async 'dryRun'(_0x167d57){const _0x320049=a119_0x3f3325;validateInput(_0x167d57);const _0x20ae2f=await buildPlan(_0x167d57,!![]);return menuDryRunResult(_0x20ae2f[_0x320049(0xef)],{'method':_0x320049(0x11c),'url':_0x320049(0x12e),'body':_0x20ae2f[_0x320049(0x124)],'description':_0x320049(0x11f)+_0x20ae2f[_0x320049(0x124)]['id']+'.'});},async 'execute'(_0x19adc9){const _0x1d11c4=a119_0x3f3325;validateInput(_0x19adc9);const _0x1b2911=await buildPlan(_0x19adc9,![]),{plan:_0x80a316,body:_0x162ac7,before:_0x2b83b0,noChanges:_0x1d3721}=_0x1b2911,_0x86985a=_0x162ac7['id'];if(_0x1d3721)return renameSuccess(_0x80a316,_0x1b2911[_0x1d11c4(0x11d)],_0x2b83b0,!![],![]);await recheckMutationSnapshot(_0x19adc9,_0x80a316,_0x1d11c4(0x114),_0x86985a);try{await updateMenuEntity(_0x19adc9['appCode'],_0x19adc9[_0x1d11c4(0x123)],{'id':_0x86985a,'label':_0x162ac7[_0x1d11c4(0xf2)]});}catch(_0xaa5905){const _0x151e57=mapMenuApiError(_0xaa5905,_0x1d11c4(0x115),_0x86985a);if(isMenuResponseLoss(_0xaa5905)&&_0x151e57[_0x1d11c4(0x129)]!==_0x1d11c4(0x106))return recoverAfterResponseLoss(_0x19adc9,_0x1b2911);throw menuFailure(_0x151e57,_0x80a316,{'stage':_0x1d11c4(0x118),'failed':{'id':_0x86985a},'warnings':[_0x1d11c4(0xfa)],'verification':{'status':_0x1d11c4(0x113),'targetId':_0x86985a,'lookupCommand':buildLookupCommand(_0x19adc9[_0x1d11c4(0x130)])}});}let _0x551e45,_0x4db9af;try{_0x551e45=await fetchMenuSnapshot(_0x19adc9[_0x1d11c4(0x130)],_0x19adc9[_0x1d11c4(0x123)]),_0x4db9af=requireMenu(_0x551e45,_0x86985a),verifyRenamedFact(_0x2b83b0,_0x4db9af,_0x162ac7[_0x1d11c4(0xf2)]);}catch(_0x3c4837){const _0x4b4e9e=describeMenuErrorCause(_0x3c4837,_0x1d11c4(0xf1),_0x86985a),_0x35cd5b=asVerificationError(_0x3c4837,_0x1d11c4(0xfd)+_0x86985a+_0x1d11c4(0xed));throw menuFailure(_0x35cd5b,_0x80a316,{'stage':_0x1d11c4(0x100),'succeeded':[{'id':_0x86985a,'updateRequested':!![]}],'failed':{'id':_0x86985a,'requestedStateConfirmed':![],..._0x4b4e9e},'warnings':[_0x1d11c4(0xf3)],'verification':{'status':'failed','targetId':_0x86985a,'lookupCommand':buildLookupCommand(_0x19adc9['appCode'])}});}return renameSuccess(_0x80a316,_0x551e45,_0x4db9af,![],![]);}};function validateInput(_0x122538){const _0x224853=a119_0x3f3325;validateExactId(_0x122538);if(!_0x122538[_0x224853(0x10c)](_0x224853(0xf2))[_0x224853(0x119)]())throw CliErrors[_0x224853(0xf4)](_0x224853(0xfe));if(!_0x122538[_0x224853(0x10c)](_0x224853(0x139))[_0x224853(0x119)]())throw CliErrors['flagMissing'](_0x224853(0x139));}async function buildPlan(_0x2d2dd7,_0x4b4e9b){const _0x5d17bc=a119_0x3f3325,_0x230019=validateExactId(_0x2d2dd7),_0x580bcb=_0x2d2dd7['str'](_0x5d17bc(0xf2))[_0x5d17bc(0x119)](),_0x2e63e7=_0x2d2dd7[_0x5d17bc(0x10c)](_0x5d17bc(0x139)),_0x4a3e5b=await fetchMutationSnapshot(_0x2d2dd7,'rename\x20menu',_0x230019),_0x513640=requireMenu(_0x4a3e5b,_0x230019);if(_0x513640[_0x5d17bc(0xf2)]!==_0x2e63e7)throw menuError(_0x5d17bc(0xec),_0x5d17bc(0x10a)+_0x230019+_0x5d17bc(0x102)+JSON[_0x5d17bc(0x137)](_0x2e63e7)+',\x20current\x20'+JSON['stringify'](_0x513640[_0x5d17bc(0xf2)])+'.',_0x5d17bc(0xeb));const _0x5bb91b={'id':_0x230019,'appCode':_0x2d2dd7['appCode'],'label':_0x580bcb},_0x4a62a8={..._0x513640,'label':_0x580bcb},_0x16a20a=_0x513640['label']===_0x580bcb,_0x577e95=_0x16a20a?[]:[{'stage':_0x5d17bc(0x110),'method':_0x5d17bc(0x11c),'path':_0x5d17bc(0x12e),'body':_0x5bb91b}];return{'snapshot':_0x4a3e5b,'before':_0x513640,'body':_0x5bb91b,'noChanges':_0x16a20a,'plan':mutationResult({'operation':_0x5d17bc(0x115),'selector':{'id':_0x230019},'before':_0x513640,'after':_0x4a62a8,'dryRun':_0x4b4e9b,'backend':[...BACKEND],'plannedActions':_0x577e95,'snapshotHash':_0x4a3e5b[_0x5d17bc(0x13a)],'warnings':_0x16a20a?['The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.']:[]})};}function verifyRenamedFact(_0xce738c,_0x5d55c0,_0x549cc1){const _0x30831b=a119_0x3f3325,_0x125d53=[['id',_0x5d55c0['id'],_0xce738c['id']],[_0x30831b(0x12f),_0x5d55c0['parentId'],_0xce738c[_0x30831b(0x12f)]],[_0x30831b(0xf8),_0x5d55c0['depth'],_0xce738c['depth']],['path',_0x5d55c0['path'],_0xce738c[_0x30831b(0x12d)]],['url',_0x5d55c0[_0x30831b(0x107)],_0xce738c[_0x30831b(0x107)]],[_0x30831b(0x103),_0x5d55c0[_0x30831b(0x103)],_0xce738c['type']],[_0x30831b(0x128),_0x5d55c0[_0x30831b(0x128)],_0xce738c[_0x30831b(0x128)]],['sort',_0x5d55c0['sort'],_0xce738c[_0x30831b(0x133)]],['resources',_0x5d55c0[_0x30831b(0xf0)],_0xce738c[_0x30831b(0xf0)]],[_0x30831b(0x105),_0x5d55c0[_0x30831b(0x105)],_0xce738c[_0x30831b(0x105)]],[_0x30831b(0x11b),_0x5d55c0[_0x30831b(0x11b)],_0xce738c[_0x30831b(0x11b)]],['childrenCount',_0x5d55c0[_0x30831b(0xea)],_0xce738c[_0x30831b(0xea)]],[_0x30831b(0xe8),_0x5d55c0[_0x30831b(0xe8)],_0xce738c[_0x30831b(0xe8)]],[_0x30831b(0xee),_0x5d55c0[_0x30831b(0xee)],_0xce738c[_0x30831b(0xee)]],[_0x30831b(0x111),_0x5d55c0[_0x30831b(0x111)],_0xce738c[_0x30831b(0x111)]],[_0x30831b(0x12a),_0x5d55c0[_0x30831b(0x12a)],_0xce738c['datasetId']],[_0x30831b(0x11a),_0x5d55c0[_0x30831b(0x11a)],_0xce738c[_0x30831b(0x11a)]]];for(const [_0x5792a1,_0x1c2502,_0x635c30]of _0x125d53){assertVerified(sameValue(_0x1c2502,_0x635c30),'Menu\x20'+_0xce738c['id']+'\x20'+_0x5792a1+_0x30831b(0x120));}assertVerified(_0x5d55c0['label']===_0x549cc1,_0x30831b(0x10a)+_0xce738c['id']+_0x30831b(0xf9));}function sameValue(_0x50b447,_0x2fa7ad){const _0x39745=a119_0x3f3325;if(Array[_0x39745(0xe9)](_0x50b447)||Array[_0x39745(0xe9)](_0x2fa7ad))return JSON[_0x39745(0x137)](_0x50b447)===JSON[_0x39745(0x137)](_0x2fa7ad);return _0x50b447===_0x2fa7ad;}function renameSuccess(_0x963f40,_0x5455dc,_0x66d95a,_0x242f3a,_0x50dd41){const _0x4ea3bf=a119_0x3f3325,_0x803d35=_0x66d95a['id'],_0x44ee88=mutationResult({..._0x963f40,'after':_0x66d95a,'dryRun':![],'succeeded':[{'id':_0x803d35,'updated':!_0x242f3a,'skipped':_0x242f3a,'recovered':_0x50dd41}],'verification':{'checkedBy':_0x4ea3bf(0x138),'snapshotHash':_0x5455dc[_0x4ea3bf(0x13a)],'targetId':_0x803d35,'matchesRequestedState':!![],'recovered':_0x50dd41}});return{'ok':!![],'message':_0x50dd41?'Recovered\x20confirmed\x20rename\x20for\x20menu\x20'+_0x803d35+'.':_0x242f3a?_0x4ea3bf(0x10a)+_0x803d35+_0x4ea3bf(0x132):_0x4ea3bf(0x108)+_0x803d35+'.','data':{..._0x44ee88,'recovered':_0x50dd41}};}async function recoverAfterResponseLoss(_0x2d9ea1,_0x967497){const _0x3a4617=a119_0x3f3325,{plan:_0x20bd55,before:_0x2da4de,body:_0x53b107}=_0x967497;let _0x20ad85;try{_0x20ad85=await fetchMenuSnapshot(_0x2d9ea1[_0x3a4617(0x130)],_0x2d9ea1['cookie']);}catch{throw recoveryRequired(_0x20bd55,_0x2d9ea1[_0x3a4617(0x130)],{'id':_0x53b107['id'],'readbackFailed':!![]});}const _0x427adf=_0x20ad85[_0x3a4617(0x122)][_0x3a4617(0x109)](_0x53b107['id']);if(!_0x427adf||_0x427adf[_0x3a4617(0xf2)]!==_0x53b107[_0x3a4617(0xf2)])throw recoveryRequired(_0x20bd55,_0x2d9ea1[_0x3a4617(0x130)],{'id':_0x53b107['id'],'requestedLabelObserved':![],'after':_0x427adf??null});try{verifyRenamedFact(_0x2da4de,_0x427adf,_0x53b107[_0x3a4617(0xf2)]);}catch(_0xf5f737){const _0x58a794=asVerificationError(_0xf5f737,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x53b107['id']+_0x3a4617(0x117));throw menuFailure(_0x58a794,_0x20bd55,{'stage':_0x3a4617(0x135),'succeeded':[{'id':_0x53b107['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x53b107['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x427adf,'warnings':[_0x3a4617(0x125)],'verification':{'status':_0x3a4617(0x113),'targetId':_0x53b107['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x2d9ea1[_0x3a4617(0x130)])}});}return renameSuccess(_0x20bd55,_0x20ad85,_0x427adf,![],!![]);}function recoveryRequired(_0x4f299d,_0x10ce57,_0x37026c){const _0x288e69=a119_0x3f3325,_0x3ae1bd=menuError(_0x288e69(0x10b),'The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','Run\x20'+buildLookupCommand(_0x10ce57)+_0x288e69(0x12b));return menuFailure(_0x3ae1bd,_0x4f299d,{'stage':_0x288e69(0x135),'failed':{'id':_0x37026c['id'],..._0x37026c['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x37026c[_0x288e69(0x104)]},..._0x37026c[_0x288e69(0x116)]?{'readbackFailed':!![]}:{}},'after':_0x37026c['after'],'warnings':[_0x288e69(0x136)],'verification':{'status':_0x288e69(0x113),'targetId':_0x37026c['id'],..._0x37026c[_0x288e69(0x104)]===undefined?{}:{'requestedLabelObserved':_0x37026c['requestedLabelObserved']},..._0x37026c['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x10ce57)}});}function buildLookupCommand(_0x3bae09){const _0x22142d=a119_0x3f3325,_0x4cadea='\x27'+_0x3bae09[_0x22142d(0xf5)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x22142d(0x10d)+_0x4cadea+_0x22142d(0x121);}
|
|
1
|
+
const a120_0x5096df=a120_0x556b;(function(_0x48ffdc,_0x4459b9){const _0x333246=a120_0x556b,_0x308e31=_0x48ffdc();while(!![]){try{const _0x34b58a=-parseInt(_0x333246(0xa2))/0x1+parseInt(_0x333246(0xb3))/0x2*(-parseInt(_0x333246(0xb9))/0x3)+parseInt(_0x333246(0x9b))/0x4*(-parseInt(_0x333246(0x7d))/0x5)+-parseInt(_0x333246(0xa4))/0x6+-parseInt(_0x333246(0x97))/0x7+parseInt(_0x333246(0x72))/0x8*(-parseInt(_0x333246(0xa6))/0x9)+-parseInt(_0x333246(0xbf))/0xa*(-parseInt(_0x333246(0x94))/0xb);if(_0x34b58a===_0x4459b9)break;else _0x308e31['push'](_0x308e31['shift']());}catch(_0x59f290){_0x308e31['push'](_0x308e31['shift']());}}}(a120_0x2c55,0x61d2c));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';function a120_0x556b(_0x46f2da,_0xbfa3d0){_0x46f2da=_0x46f2da-0x6b;const _0x2c55b8=a120_0x2c55();let _0x556b3e=_0x2c55b8[_0x46f2da];return _0x556b3e;}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a120_0x5096df(0x81),'path':a120_0x5096df(0x80)}];export const menuRename={'service':'menu','command':a120_0x5096df(0x73),'description':a120_0x5096df(0xb2),'risk':a120_0x5096df(0x92),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a120_0x5096df(0xad),'type':a120_0x5096df(0xa9),'required':!![],'description':a120_0x5096df(0xbc)},{'name':a120_0x5096df(0xb1),'type':a120_0x5096df(0xa9),'required':!![],'description':a120_0x5096df(0xbe)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2b2ec7){validateInput(_0x2b2ec7);},async 'dryRun'(_0x9af3ab){const _0x4df7d3=a120_0x5096df;validateInput(_0x9af3ab);const _0x13508c=await buildPlan(_0x9af3ab,!![]);return menuDryRunResult(_0x13508c[_0x4df7d3(0xb0)],{'method':'POST','url':'/smartapi/menu/update','body':_0x13508c[_0x4df7d3(0xb5)],'description':_0x4df7d3(0xba)+_0x13508c[_0x4df7d3(0xb5)]['id']+'.'});},async 'execute'(_0x4fd93a){const _0x3bda90=a120_0x5096df;validateInput(_0x4fd93a);const _0x22640e=await buildPlan(_0x4fd93a,![]),{plan:_0x1a6e0e,body:_0x19a449,before:_0x4ed7d2,noChanges:_0x11af6e}=_0x22640e,_0x1996d4=_0x19a449['id'];if(_0x11af6e)return renameSuccess(_0x1a6e0e,_0x22640e[_0x3bda90(0x87)],_0x4ed7d2,!![],![]);await recheckMutationSnapshot(_0x4fd93a,_0x1a6e0e,_0x3bda90(0x6f),_0x1996d4);try{await updateMenuEntity(_0x4fd93a[_0x3bda90(0x79)],_0x4fd93a[_0x3bda90(0xa7)],{'id':_0x1996d4,'label':_0x19a449[_0x3bda90(0xad)]});}catch(_0x32de64){const _0x19936c=mapMenuApiError(_0x32de64,'rename',_0x1996d4);if(isMenuResponseLoss(_0x32de64)&&_0x19936c[_0x3bda90(0x6c)]!==_0x3bda90(0xa8))return recoverAfterResponseLoss(_0x4fd93a,_0x22640e);throw menuFailure(_0x19936c,_0x1a6e0e,{'stage':'update','failed':{'id':_0x1996d4},'warnings':[_0x3bda90(0x91)],'verification':{'status':'failed','targetId':_0x1996d4,'lookupCommand':buildLookupCommand(_0x4fd93a[_0x3bda90(0x79)])}});}let _0x5b79cd,_0x10549c;try{_0x5b79cd=await fetchMenuSnapshot(_0x4fd93a[_0x3bda90(0x79)],_0x4fd93a[_0x3bda90(0xa7)]),_0x10549c=requireMenu(_0x5b79cd,_0x1996d4),verifyRenamedFact(_0x4ed7d2,_0x10549c,_0x19a449[_0x3bda90(0xad)]);}catch(_0x453e85){const _0x3bab7f=describeMenuErrorCause(_0x453e85,_0x3bda90(0x89),_0x1996d4),_0x311439=asVerificationError(_0x453e85,_0x3bda90(0x9a)+_0x1996d4+_0x3bda90(0xa1));throw menuFailure(_0x311439,_0x1a6e0e,{'stage':'verification','succeeded':[{'id':_0x1996d4,'updateRequested':!![]}],'failed':{'id':_0x1996d4,'requestedStateConfirmed':![],..._0x3bab7f},'warnings':[_0x3bda90(0xb8)],'verification':{'status':_0x3bda90(0x76),'targetId':_0x1996d4,'lookupCommand':buildLookupCommand(_0x4fd93a['appCode'])}});}return renameSuccess(_0x1a6e0e,_0x5b79cd,_0x10549c,![],![]);}};function validateInput(_0x247e80){const _0x32006e=a120_0x5096df;validateExactId(_0x247e80);if(!_0x247e80['str'](_0x32006e(0xad))[_0x32006e(0x9f)]())throw CliErrors[_0x32006e(0x93)](_0x32006e(0x95));if(!_0x247e80[_0x32006e(0x8d)](_0x32006e(0xb1))[_0x32006e(0x9f)]())throw CliErrors[_0x32006e(0xaa)](_0x32006e(0xb1));}async function buildPlan(_0x16e17c,_0x14a109){const _0x167875=a120_0x5096df,_0x3ae40f=validateExactId(_0x16e17c),_0x34fbc9=_0x16e17c[_0x167875(0x8d)](_0x167875(0xad))[_0x167875(0x9f)](),_0x1c3d98=_0x16e17c['str'](_0x167875(0xb1)),_0x3fd9dc=await fetchMutationSnapshot(_0x16e17c,_0x167875(0x6f),_0x3ae40f),_0x5a0ba4=requireMenu(_0x3fd9dc,_0x3ae40f);if(_0x5a0ba4[_0x167875(0xad)]!==_0x1c3d98)throw menuError(_0x167875(0xc0),'Menu\x20'+_0x3ae40f+_0x167875(0x8e)+JSON[_0x167875(0xab)](_0x1c3d98)+_0x167875(0xa0)+JSON[_0x167875(0xab)](_0x5a0ba4[_0x167875(0xad)])+'.',_0x167875(0xae));const _0x4acea1={'id':_0x3ae40f,'appCode':_0x16e17c[_0x167875(0x79)],'label':_0x34fbc9},_0x4c0ab3={..._0x5a0ba4,'label':_0x34fbc9},_0x1527fd=_0x5a0ba4[_0x167875(0xad)]===_0x34fbc9,_0x487100=_0x1527fd?[]:[{'stage':_0x167875(0x71),'method':'POST','path':_0x167875(0x80),'body':_0x4acea1}];return{'snapshot':_0x3fd9dc,'before':_0x5a0ba4,'body':_0x4acea1,'noChanges':_0x1527fd,'plan':mutationResult({'operation':'rename','selector':{'id':_0x3ae40f},'before':_0x5a0ba4,'after':_0x4c0ab3,'dryRun':_0x14a109,'backend':[...BACKEND],'plannedActions':_0x487100,'snapshotHash':_0x3fd9dc[_0x167875(0x6e)],'warnings':_0x1527fd?[_0x167875(0xaf)]:[]})};}function verifyRenamedFact(_0x4b216d,_0x3e7563,_0x483a4b){const _0x21d3d1=a120_0x5096df,_0x186c40=[['id',_0x3e7563['id'],_0x4b216d['id']],[_0x21d3d1(0x70),_0x3e7563[_0x21d3d1(0x70)],_0x4b216d['parentId']],[_0x21d3d1(0x84),_0x3e7563['depth'],_0x4b216d[_0x21d3d1(0x84)]],[_0x21d3d1(0x9e),_0x3e7563['path'],_0x4b216d['path']],[_0x21d3d1(0x8c),_0x3e7563[_0x21d3d1(0x8c)],_0x4b216d[_0x21d3d1(0x8c)]],[_0x21d3d1(0x7b),_0x3e7563['type'],_0x4b216d[_0x21d3d1(0x7b)]],[_0x21d3d1(0x98),_0x3e7563[_0x21d3d1(0x98)],_0x4b216d[_0x21d3d1(0x98)]],[_0x21d3d1(0x85),_0x3e7563[_0x21d3d1(0x85)],_0x4b216d['sort']],[_0x21d3d1(0x8f),_0x3e7563[_0x21d3d1(0x8f)],_0x4b216d[_0x21d3d1(0x8f)]],['resourcesValid',_0x3e7563[_0x21d3d1(0x78)],_0x4b216d['resourcesValid']],[_0x21d3d1(0xbd),_0x3e7563[_0x21d3d1(0xbd)],_0x4b216d[_0x21d3d1(0xbd)]],[_0x21d3d1(0x82),_0x3e7563[_0x21d3d1(0x82)],_0x4b216d[_0x21d3d1(0x82)]],[_0x21d3d1(0xa3),_0x3e7563[_0x21d3d1(0xa3)],_0x4b216d['pageId']],[_0x21d3d1(0x9c),_0x3e7563['pageType'],_0x4b216d[_0x21d3d1(0x9c)]],[_0x21d3d1(0x74),_0x3e7563['modelType'],_0x4b216d[_0x21d3d1(0x74)]],['datasetId',_0x3e7563[_0x21d3d1(0xb7)],_0x4b216d[_0x21d3d1(0xb7)]],[_0x21d3d1(0xbb),_0x3e7563[_0x21d3d1(0xbb)],_0x4b216d[_0x21d3d1(0xbb)]]];for(const [_0x2398f5,_0x1bf80a,_0x585642]of _0x186c40){assertVerified(sameValue(_0x1bf80a,_0x585642),_0x21d3d1(0x77)+_0x4b216d['id']+'\x20'+_0x2398f5+_0x21d3d1(0x86));}assertVerified(_0x3e7563[_0x21d3d1(0xad)]===_0x483a4b,_0x21d3d1(0x77)+_0x4b216d['id']+'\x20label\x20update\x20did\x20not\x20take\x20effect.');}function sameValue(_0x58e42d,_0x1b10e6){const _0xee8b0c=a120_0x5096df;if(Array[_0xee8b0c(0x88)](_0x58e42d)||Array[_0xee8b0c(0x88)](_0x1b10e6))return JSON[_0xee8b0c(0xab)](_0x58e42d)===JSON[_0xee8b0c(0xab)](_0x1b10e6);return _0x58e42d===_0x1b10e6;}function renameSuccess(_0x41c84c,_0x2f5c59,_0x2ba8e5,_0x480ee1,_0x126a6e){const _0x52c15e=a120_0x5096df,_0x5242e6=_0x2ba8e5['id'],_0x1b407c=mutationResult({..._0x41c84c,'after':_0x2ba8e5,'dryRun':![],'succeeded':[{'id':_0x5242e6,'updated':!_0x480ee1,'skipped':_0x480ee1,'recovered':_0x126a6e}],'verification':{'checkedBy':_0x52c15e(0x90),'snapshotHash':_0x2f5c59[_0x52c15e(0x6e)],'targetId':_0x5242e6,'matchesRequestedState':!![],'recovered':_0x126a6e}});return{'ok':!![],'message':_0x126a6e?_0x52c15e(0x6b)+_0x5242e6+'.':_0x480ee1?'Menu\x20'+_0x5242e6+_0x52c15e(0x8b):_0x52c15e(0x96)+_0x5242e6+'.','data':{..._0x1b407c,'recovered':_0x126a6e}};}function a120_0x2c55(){const _0x3bd1b8=['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','\x20already\x20has\x20the\x20requested\x20label.','url','str','\x20label\x20changed:\x20expected\x20','resources','menu\x20list','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','write','validation','319pVPsSx','--label\x20cannot\x20be\x20empty.','Renamed\x20menu\x20','920969kjHIGx','visible','\x20--format\x20compress','Rename\x20request\x20for\x20menu\x20','168052sBMZDv','pageType','requestedLabelObserved','path','trim',',\x20current\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','789667SlOXZq','pageId','337308eNBXTU','update-recovery','1089VrHbOA','cookie','menu_permission_denied','string','flagMissing','stringify','Response\x20was\x20lost\x20and\x20menu\x20','label','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','plan','expect-label','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','2vJABty','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','body','get','datasetId','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','1867101jJWAPV','Would\x20rename\x20menu\x20','datasetCode','New\x20menu\x20label','childrenIds','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','715790DMwnZj','menu_state_drift','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','code','rabetbase\x20menu\x20list\x20--appcode\x20','hash','rename\x20menu','parentId','rename-menu','2200dATXAk','rename','modelType','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','failed','Menu\x20','resourcesValid','appCode','byId','type','\x27\x5c\x27\x27','5NbIqvO','menu_update_recovery_required','readbackFailed','/smartapi/menu/update','POST','childrenCount','\x20could\x20not\x20be\x20verified\x20safely','depth','sort','\x20changed\x20during\x20the\x20label-only\x20rename.','snapshot','isArray','verify\x20menu\x20rename'];a120_0x2c55=function(){return _0x3bd1b8;};return a120_0x2c55();}async function recoverAfterResponseLoss(_0x4e0e00,_0x288db1){const _0x209a78=a120_0x5096df,{plan:_0x2458dc,before:_0x27c840,body:_0x368e1d}=_0x288db1;let _0x514f01;try{_0x514f01=await fetchMenuSnapshot(_0x4e0e00['appCode'],_0x4e0e00[_0x209a78(0xa7)]);}catch{throw recoveryRequired(_0x2458dc,_0x4e0e00[_0x209a78(0x79)],{'id':_0x368e1d['id'],'readbackFailed':!![]});}const _0x5eb396=_0x514f01[_0x209a78(0x7a)][_0x209a78(0xb6)](_0x368e1d['id']);if(!_0x5eb396||_0x5eb396[_0x209a78(0xad)]!==_0x368e1d[_0x209a78(0xad)])throw recoveryRequired(_0x2458dc,_0x4e0e00[_0x209a78(0x79)],{'id':_0x368e1d['id'],'requestedLabelObserved':![],'after':_0x5eb396??null});try{verifyRenamedFact(_0x27c840,_0x5eb396,_0x368e1d[_0x209a78(0xad)]);}catch(_0x216dc5){const _0x50461a=asVerificationError(_0x216dc5,_0x209a78(0xac)+_0x368e1d['id']+_0x209a78(0x83));throw menuFailure(_0x50461a,_0x2458dc,{'stage':_0x209a78(0xa5),'succeeded':[{'id':_0x368e1d['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x368e1d['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x5eb396,'warnings':[_0x209a78(0x8a)],'verification':{'status':_0x209a78(0x76),'targetId':_0x368e1d['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x4e0e00[_0x209a78(0x79)])}});}return renameSuccess(_0x2458dc,_0x514f01,_0x5eb396,![],!![]);}function recoveryRequired(_0x7117db,_0x460358,_0x4b0ef7){const _0x18ab72=a120_0x5096df,_0x3bea35=menuError(_0x18ab72(0x7e),_0x18ab72(0x75),'Run\x20'+buildLookupCommand(_0x460358)+_0x18ab72(0xb4));return menuFailure(_0x3bea35,_0x7117db,{'stage':_0x18ab72(0xa5),'failed':{'id':_0x4b0ef7['id'],..._0x4b0ef7[_0x18ab72(0x9d)]===undefined?{}:{'requestedLabelObserved':_0x4b0ef7[_0x18ab72(0x9d)]},..._0x4b0ef7[_0x18ab72(0x7f)]?{'readbackFailed':!![]}:{}},'after':_0x4b0ef7['after'],'warnings':['The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x18ab72(0x76),'targetId':_0x4b0ef7['id'],..._0x4b0ef7['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x4b0ef7[_0x18ab72(0x9d)]},..._0x4b0ef7[_0x18ab72(0x7f)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x460358)}});}function buildLookupCommand(_0x59fe3d){const _0x469759=a120_0x5096df,_0x4569fb='\x27'+_0x59fe3d['replace'](/'/g,_0x469759(0x7c))+'\x27';return _0x469759(0x6d)+_0x4569fb+_0x469759(0x99);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0xed8536,_0x39e19e){const _0x4bba21=a121_0x25ae,_0x2e84af=_0xed8536();while(!![]){try{const _0x558b90=parseInt(_0x4bba21(0x1dd))/0x1+-parseInt(_0x4bba21(0x1c6))/0x2*(parseInt(_0x4bba21(0x1d8))/0x3)+parseInt(_0x4bba21(0x1e3))/0x4*(-parseInt(_0x4bba21(0x1cc))/0x5)+-parseInt(_0x4bba21(0x1d9))/0x6*(parseInt(_0x4bba21(0x1d1))/0x7)+parseInt(_0x4bba21(0x1e2))/0x8*(-parseInt(_0x4bba21(0x1d0))/0x9)+-parseInt(_0x4bba21(0x1d5))/0xa+parseInt(_0x4bba21(0x1e1))/0xb*(parseInt(_0x4bba21(0x1d2))/0xc);if(_0x558b90===_0x39e19e)break;else _0x2e84af['push'](_0x2e84af['shift']());}catch(_0x334664){_0x2e84af['push'](_0x2e84af['shift']());}}}(a121_0x63d9,0x33bf4));function strWidth(_0x26825e){const _0x17da48=a121_0x25ae;let _0x19649f=0x0;for(const _0x3e96b0 of _0x26825e){_0x19649f+=/[\u4e00-\u9fa5]/[_0x17da48(0x1e0)](_0x3e96b0)?0x2:0x1;}return _0x19649f;}function padRight(_0x42808d,_0x5ed2d3){const _0x1c4915=a121_0x25ae,_0x3c52ac=strWidth(_0x42808d);return _0x42808d+'\x20'[_0x1c4915(0x1dc)](Math[_0x1c4915(0x1c8)](0x0,_0x5ed2d3-_0x3c52ac));}function a121_0x25ae(_0x435c76,_0x34246d){_0x435c76=_0x435c76-0x1c6;const _0x63d953=a121_0x63d9();let _0x25ae2e=_0x63d953[_0x435c76];return _0x25ae2e;}export function renderCompareTable(_0x469ba4,_0x16f68e={}){const _0x198639=a121_0x25ae;if(_0x469ba4[_0x198639(0x1d4)]===0x0)return'';const _0x3d60f0=_0x16f68e['showOnline']??!![],_0x29ab75=Math[_0x198639(0x1c8)](0x1e,..._0x469ba4[_0x198639(0x1db)](_0x1c320c=>strWidth(_0x1c320c['label']))),_0x2589e0=Math[_0x198639(0x1c8)](0x18,..._0x469ba4[_0x198639(0x1db)](_0x4912d9=>strWidth(_0x4912d9[_0x198639(0x1ca)]))),_0x4bbf5e=0x4,_0x3cf573=[],_0x34b57c='\x20\x20'+padRight(_0x198639(0x1ce),_0x29ab75),_0x3cd429=padRight(_0x198639(0x1d3),_0x2589e0),_0x270ed4=padRight('Local',_0x4bbf5e),_0x26a057=_0x3d60f0?'\x20\x20'+padRight('Platform',_0x4bbf5e):'';_0x3cf573[_0x198639(0x1d6)](_0x34b57c+'\x20\x20'+_0x3cd429+'\x20\x20'+_0x270ed4+(_0x3d60f0?_0x26a057:'')),_0x3cf573[_0x198639(0x1d6)]('\x20\x20'+'─'['repeat'](_0x29ab75)+'\x20\x20'+'─'[_0x198639(0x1dc)](_0x2589e0)+'\x20\x20'+'─'[_0x198639(0x1dc)](_0x4bbf5e)+(_0x3d60f0?'\x20\x20'+'─'['repeat'](_0x4bbf5e):''));for(const _0x36e822 of _0x469ba4){const _0x131935=padRight(_0x36e822[_0x198639(0x1df)],_0x29ab75),_0x4a9a76=padRight(_0x36e822['path'],_0x2589e0),_0xd71202=_0x36e822['local']?'✓':'✗',_0x1b2ad4=padRight(_0xd71202,_0x4bbf5e);let _0x3bdcaf='\x20\x20'+_0x131935+'\x20\x20'+_0x4a9a76+'\x20\x20'+_0x1b2ad4;if(_0x3d60f0){const _0x4e1f09=_0x36e822['online']?'✓':'✗';_0x3bdcaf+='\x20\x20'+padRight(_0x4e1f09,_0x4bbf5e);}_0x3cf573['push'](_0x3bdcaf);}return _0x3cf573[_0x198639(0x1de)]('\x0a');}function a121_0x63d9(){const _0x47d421=['push','(unchanged)','30RjtMPs','40416ObLhOQ','\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','map','repeat','294587fxepso','join','label','test','4180UYbjLQ','8RlXeHJ','36CDoVgn','50926AENfkF','\x20\x20No\x20pages\x20to\x20sync.','max','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','path','\x20\x20\x20\x20CSS:\x20','184735VLNLjK','\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','Menu\x20Name','\x20\x20\x20\x20JS:\x20\x20','2538117iPtpJj','406meJtiW','40212xbeSnh','Path','length','961570bNfOEa'];a121_0x63d9=function(){return _0x47d421;};return a121_0x63d9();}export function renderSyncSummary(_0x117e4f,_0x1bde5d){const _0x49052a=a121_0x25ae;if(_0x117e4f[_0x49052a(0x1d4)]===0x0)return _0x1bde5d?_0x49052a(0x1da):_0x49052a(0x1c7);const _0x5c3e8b=['\x20\x20'+_0x117e4f[_0x49052a(0x1d4)]+'\x20page(s)\x20will\x20be\x20created\x20on\x20platform:'];for(const _0x3fef47 of _0x117e4f){_0x5c3e8b[_0x49052a(0x1d6)]('\x20\x20\x20\x20•\x20'+_0x3fef47[_0x49052a(0x1df)]+'\x20('+_0x3fef47[_0x49052a(0x1ca)]+')');}return _0x5c3e8b['join']('\x0a');}export function renderUpdateSummary(_0x5ca3b6,_0xf2ad91){const _0x3671c9=a121_0x25ae;if(_0x5ca3b6[_0x3671c9(0x1d4)]===0x0)return _0x3671c9(0x1c9);const _0x4a917a=['\x20\x20'+_0x5ca3b6[_0x3671c9(0x1d4)]+_0x3671c9(0x1cd),_0x3671c9(0x1cf)+(_0xf2ad91[0x0]??_0x3671c9(0x1d7)),_0x3671c9(0x1cb)+(_0xf2ad91[0x1]??_0x3671c9(0x1d7)),'','\x20\x20Affected\x20menus:\x20'+_0x5ca3b6[_0x3671c9(0x1de)](',\x20')];return _0x4a917a['join']('\x0a');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a121_0x5dd925=a121_0x3911;(function(_0xd278df,_0x40a600){const _0xe056af=a121_0x3911,_0xe4cc62=_0xd278df();while(!![]){try{const _0x3142b4=-parseInt(_0xe056af(0x21f))/0x1+parseInt(_0xe056af(0x1ed))/0x2+parseInt(_0xe056af(0x203))/0x3*(-parseInt(_0xe056af(0x1de))/0x4)+-parseInt(_0xe056af(0x221))/0x5+parseInt(_0xe056af(0x21d))/0x6*(parseInt(_0xe056af(0x1fa))/0x7)+parseInt(_0xe056af(0x1e0))/0x8+-parseInt(_0xe056af(0x1fe))/0x9;if(_0x3142b4===_0x40a600)break;else _0xe4cc62['push'](_0xe4cc62['shift']());}catch(_0x299c66){_0xe4cc62['push'](_0xe4cc62['shift']());}}}(a121_0x1ec2,0x4b4d8));import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';function a121_0x1ec2(){const _0x371e24=['batch-delete-menu','type','pageType','digest','every','\x20of\x20the\x20','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','visible','childrenIds','string','version','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','parentId','\x20bytes.','menu_state_drift','pages','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','sort','boolean','resourcesHash','798236mmwLDL','targetFingerprints','4675304uPJiiV','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','\x20contract.','length','command','toISOString','warnings','test','updateUserName','targets','depth','object','menu_plan_write_failed','828406ZgEsNw','before','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','isArray','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','resourcesValid','Cannot\x20read\x20menu\x20delete\x20plan\x20','EEXIST','menu_plan_app_mismatch','update','getTime','size','/smartapi/menu/batchDelete','722302MMeTYg','get','sha256','map','3505914tOzWhB','deleteOrder','label','utf8','menu_plan_expired','3waoTjq','hash','byId','isFinite','target','datasetId','pageId','targetFingerprint','cascade','message','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','hex','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','parse','createdAt','menu_plan_file_exists','updateUserId','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','updateTime','datasetCode','delete','stringify','POST','menu\x20delete',',\x20current\x20app\x20is\x20','30rYwtdS','code','106833zWLoft','recursive','2550840ZYcEvR','trim','Planned\x20menu\x20','appCode','isInteger','expiresAt','snapshotHash','pageSchemaAffected','resources','\x20is\x20in\x20the\x20future.','extend','menu_plan_invalid','childrenCount','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','modelType','number','selector'];a121_0x1ec2=function(){return _0x371e24;};return a121_0x1ec2();}import{dirname,resolve}from'node:path';function a121_0x3911(_0x5555f8,_0x598499){_0x5555f8=_0x5555f8-0x1dc;const _0x1ec289=a121_0x1ec2();let _0x3911d7=_0x1ec289[_0x5555f8];return _0x3911d7;}import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND=a121_0x5dd925(0x21b),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x450b6c,_0x27d251,_0x52c9d0=new Date()){const _0x48dfcb=a121_0x5dd925;if(!_0x27d251[_0x48dfcb(0x1ee)]||!isMenuFact(_0x27d251[_0x48dfcb(0x1ee)]))throw menuError('menu_plan_invalid',_0x48dfcb(0x22f));const _0x41938c=_0x27d251[_0x48dfcb(0x1e9)]?.[_0x48dfcb(0x1e3)]?_0x27d251[_0x48dfcb(0x1e9)]:[_0x27d251['before']],_0x1c2a52=_0x27d251[_0x48dfcb(0x1ff)]?.[_0x48dfcb(0x1e3)]?_0x27d251['deleteOrder']:_0x41938c['map'](_0x39ddc4=>_0x39ddc4['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x450b6c,'createdAt':_0x52c9d0['toISOString'](),'expiresAt':new Date(_0x52c9d0[_0x48dfcb(0x1f7)]()+PLAN_TTL_MS)[_0x48dfcb(0x1e5)](),'snapshotHash':_0x27d251[_0x48dfcb(0x227)],'recursive':_0x27d251[_0x48dfcb(0x232)][_0x48dfcb(0x220)]===!![],'target':_0x27d251[_0x48dfcb(0x1ee)],'targetFingerprint':fingerprint(_0x27d251[_0x48dfcb(0x1ee)]),'targets':_0x41938c,'targetFingerprints':_0x41938c[_0x48dfcb(0x1fd)](fingerprint),'deleteOrder':_0x1c2a52,'cascade':_0x27d251['cascade']??{'pages':_0x27d251[_0x48dfcb(0x1ee)][_0x48dfcb(0x209)]==null?[]:[_0x27d251['before'][_0x48dfcb(0x209)]],'pageSchemaAffected':_0x27d251[_0x48dfcb(0x1ee)][_0x48dfcb(0x209)]!=null},'warnings':[..._0x27d251[_0x48dfcb(0x1e6)]]};}export async function writeMenuDeletePlan(_0x4aa967,_0x3338fa){const _0x3c21f6=a121_0x5dd925,_0x400f13=resolvePlanPath(_0x4aa967,'plan-out');await mkdir(dirname(_0x400f13),{'recursive':!![]});try{await writeFile(_0x400f13,JSON[_0x3c21f6(0x219)](_0x3338fa,null,0x2)+'\x0a',{'encoding':_0x3c21f6(0x201),'flag':'wx'});}catch(_0x372faa){if(_0x372faa[_0x3c21f6(0x21e)]===_0x3c21f6(0x1f4))throw menuError(_0x3c21f6(0x213),_0x3c21f6(0x1e1)+_0x400f13,_0x3c21f6(0x20d));throw menuError(_0x3c21f6(0x1ec),_0x3c21f6(0x20f)+_0x400f13+':\x20'+errorMessage(_0x372faa));}return _0x400f13;}export async function readMenuDeletePlan(_0x35e0be){const _0x26e315=a121_0x5dd925,_0x283ce1=resolvePlanPath(_0x35e0be,'plan');let _0x2c31de;try{_0x2c31de=(await stat(_0x283ce1))[_0x26e315(0x1f8)];}catch(_0x5b6338){throw menuError(_0x26e315(0x22c),_0x26e315(0x1f3)+_0x283ce1+':\x20'+errorMessage(_0x5b6338));}if(_0x2c31de>MAX_PLAN_BYTES)throw menuError(_0x26e315(0x22c),_0x26e315(0x22e)+_0x2c31de+_0x26e315(0x241));let _0xe1d84f;try{_0xe1d84f=JSON[_0x26e315(0x211)](await readFile(_0x283ce1,_0x26e315(0x201)));}catch(_0x1d7743){throw menuError(_0x26e315(0x22c),_0x26e315(0x23e)+errorMessage(_0x1d7743));}if(!isMenuDeletePlanFile(_0xe1d84f))throw menuError(_0x26e315(0x22c),_0x26e315(0x1f1)+PLAN_VERSION+_0x26e315(0x238)+PLAN_COMMAND+_0x26e315(0x1e2));if(!sameFingerprint(_0xe1d84f['targetFingerprint'],fingerprint(_0xe1d84f[_0x26e315(0x207)])))throw menuError(_0x26e315(0x22c),_0x26e315(0x1ef),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.');if(!_0xe1d84f[_0x26e315(0x1e9)]['every']((_0x3a1fbf,_0x363f45)=>sameFingerprint(_0xe1d84f[_0x26e315(0x1df)][_0x363f45],fingerprint(_0x3a1fbf)))||!sameFingerprint(_0xe1d84f[_0x26e315(0x20a)],fingerprint(_0xe1d84f[_0x26e315(0x1e9)][_0xe1d84f[_0x26e315(0x1e9)][_0x26e315(0x1e3)]-0x1])))throw menuError(_0x26e315(0x22c),_0x26e315(0x215),_0x26e315(0x210));return{'path':_0x283ce1,'plan':_0xe1d84f};}export function mutationPlanFromDeleteFile(_0x41dbc0,_0x8b633d){const _0x4c9096=a121_0x5dd925;return mutationResult({'operation':_0x4c9096(0x218),'selector':{'id':_0x41dbc0['target']['id'],'recursive':_0x41dbc0[_0x4c9096(0x220)]},'before':_0x41dbc0[_0x4c9096(0x207)],'after':null,'dryRun':![],'backend':[{'method':_0x4c9096(0x21a),'path':_0x4c9096(0x1f9)}],'plannedActions':[{'stage':_0x4c9096(0x233),'method':'POST','path':_0x4c9096(0x1f9),'body':{'idList':_0x41dbc0[_0x4c9096(0x1ff)]}}],'targets':_0x41dbc0[_0x4c9096(0x1e9)],'deleteOrder':_0x41dbc0[_0x4c9096(0x1ff)],'snapshotHash':_0x41dbc0[_0x4c9096(0x227)],'cascade':_0x41dbc0[_0x4c9096(0x20b)],'planFile':{'path':_0x8b633d,'createdAt':_0x41dbc0['createdAt'],'expiresAt':_0x41dbc0['expiresAt']},'warnings':_0x41dbc0[_0x4c9096(0x1e6)]});}export function assertMenuDeletePlanCurrent(_0x4a4ade,_0x167e29,_0x27dfaa,_0x370ee7=new Date()){const _0x4de2e8=a121_0x5dd925;assertMenuDeletePlanExecutable(_0x4a4ade,_0x167e29,_0x370ee7);if(_0x27dfaa[_0x4de2e8(0x204)]!==_0x4a4ade[_0x4de2e8(0x227)])throw menuError(_0x4de2e8(0x242),'Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.',_0x4de2e8(0x23f));return _0x4a4ade[_0x4de2e8(0x1e9)][_0x4de2e8(0x1fd)]((_0x4bf822,_0x58b5dd)=>{const _0x5d654f=_0x4de2e8,_0x4e80e4=_0x27dfaa[_0x5d654f(0x205)][_0x5d654f(0x1fb)](_0x4bf822['id']);if(!_0x4e80e4)throw menuError('menu_state_drift','Planned\x20menu\x20'+_0x4bf822['id']+'\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.');if(!sameFingerprint(_0x4a4ade[_0x5d654f(0x1df)][_0x58b5dd],fingerprint(_0x4e80e4)))throw menuError(_0x5d654f(0x242),_0x5d654f(0x223)+_0x4bf822['id']+'\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.',_0x5d654f(0x239));return _0x4e80e4;});}export function assertMenuDeletePlanExecutable(_0x1072d9,_0x4482de,_0x20779c=new Date()){const _0x320585=a121_0x5dd925;if(_0x1072d9[_0x320585(0x224)]!==_0x4482de)throw menuError(_0x320585(0x1f5),'Menu\x20delete\x20plan\x20targets\x20app\x20'+JSON['stringify'](_0x1072d9['appCode'])+_0x320585(0x21c)+JSON[_0x320585(0x219)](_0x4482de)+'.');const _0x49640a=Date[_0x320585(0x211)](_0x1072d9[_0x320585(0x212)]),_0x5c0344=Date['parse'](_0x1072d9[_0x320585(0x226)]);if(!Number[_0x320585(0x206)](_0x49640a)||!Number['isFinite'](_0x5c0344)||_0x5c0344-_0x49640a!==PLAN_TTL_MS)throw menuError(_0x320585(0x22c),_0x320585(0x244));if(_0x49640a>_0x20779c[_0x320585(0x1f7)]())throw menuError(_0x320585(0x22c),'Menu\x20delete\x20plan\x20creation\x20time\x20'+_0x1072d9[_0x320585(0x212)]+_0x320585(0x22a),'Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.');if(_0x20779c[_0x320585(0x1f7)]()>_0x5c0344)throw menuError(_0x320585(0x202),'Menu\x20delete\x20plan\x20expired\x20at\x20'+_0x1072d9[_0x320585(0x226)]+'.','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.');}function fingerprint(_0x40ae60){const _0x3d4821=a121_0x5dd925;return{'id':_0x40ae60['id'],'parentId':_0x40ae60[_0x3d4821(0x240)],'depth':_0x40ae60['depth'],'label':_0x40ae60[_0x3d4821(0x200)],'path':_0x40ae60['path'],'type':_0x40ae60[_0x3d4821(0x234)],'visible':_0x40ae60[_0x3d4821(0x23a)],'sort':_0x40ae60['sort'],'pageId':_0x40ae60['pageId'],'pageType':_0x40ae60[_0x3d4821(0x235)],'modelType':_0x40ae60[_0x3d4821(0x230)],'datasetId':_0x40ae60[_0x3d4821(0x208)],'datasetCode':_0x40ae60[_0x3d4821(0x217)],'childrenIds':[..._0x40ae60[_0x3d4821(0x23b)]],'childrenCount':_0x40ae60[_0x3d4821(0x22d)],'resourcesValid':_0x40ae60['resourcesValid'],'resourcesHash':hashValue(_0x40ae60['resources']),'extendHash':hashValue(_0x40ae60[_0x3d4821(0x22b)]??null),'updateTime':_0x40ae60[_0x3d4821(0x216)]};}function hashValue(_0x35cb59){const _0x500d82=a121_0x5dd925;return createHash(_0x500d82(0x1fc))[_0x500d82(0x1f6)](JSON[_0x500d82(0x219)](_0x35cb59))[_0x500d82(0x236)](_0x500d82(0x20e));}function sameFingerprint(_0x33d54b,_0xa6e5ee){return JSON['stringify'](_0x33d54b)===JSON['stringify'](_0xa6e5ee);}function resolvePlanPath(_0x5e5477,_0x1cc96a){const _0x58b880=a121_0x5dd925,_0x2c15d4=_0x5e5477[_0x58b880(0x222)]();if(!_0x2c15d4)throw menuError(_0x58b880(0x22c),'--'+_0x1cc96a+'\x20requires\x20a\x20non-empty\x20file\x20path.');return resolve(_0x2c15d4);}function isMenuDeletePlanFile(_0x8291bd){const _0x52dd95=a121_0x5dd925;if(!isRecord(_0x8291bd))return![];return _0x8291bd[_0x52dd95(0x23d)]===PLAN_VERSION&&_0x8291bd[_0x52dd95(0x1e4)]===PLAN_COMMAND&&typeof _0x8291bd[_0x52dd95(0x224)]===_0x52dd95(0x23c)&&_0x8291bd['appCode'][_0x52dd95(0x1e3)]>0x0&&typeof _0x8291bd['createdAt']===_0x52dd95(0x23c)&&typeof _0x8291bd[_0x52dd95(0x226)]===_0x52dd95(0x23c)&&typeof _0x8291bd[_0x52dd95(0x227)]===_0x52dd95(0x23c)&&/^sha256:[a-f0-9]{64}$/['test'](_0x8291bd[_0x52dd95(0x227)])&&typeof _0x8291bd['recursive']===_0x52dd95(0x1dc)&&isMenuFact(_0x8291bd['target'])&&isTargetFingerprint(_0x8291bd[_0x52dd95(0x20a)])&&Array[_0x52dd95(0x1f0)](_0x8291bd[_0x52dd95(0x1e9)])&&_0x8291bd['targets'][_0x52dd95(0x1e3)]>0x0&&_0x8291bd[_0x52dd95(0x1e9)]['every'](isMenuFact)&&Array[_0x52dd95(0x1f0)](_0x8291bd['targetFingerprints'])&&_0x8291bd[_0x52dd95(0x1df)][_0x52dd95(0x1e3)]===_0x8291bd['targets']['length']&&_0x8291bd[_0x52dd95(0x1df)][_0x52dd95(0x237)](isTargetFingerprint)&&Array['isArray'](_0x8291bd[_0x52dd95(0x1ff)])&&_0x8291bd[_0x52dd95(0x1ff)][_0x52dd95(0x1e3)]===_0x8291bd['targets'][_0x52dd95(0x1e3)]&&_0x8291bd[_0x52dd95(0x1ff)][_0x52dd95(0x237)](isPositiveInteger)&&new Set(_0x8291bd[_0x52dd95(0x1ff)])[_0x52dd95(0x1f8)]===_0x8291bd[_0x52dd95(0x1ff)]['length']&&_0x8291bd['targets']['every']((_0x5b8e71,_0x8a1996)=>_0x5b8e71['id']===_0x8291bd[_0x52dd95(0x1ff)][_0x8a1996])&&_0x8291bd[_0x52dd95(0x1e9)][_0x8291bd[_0x52dd95(0x1e9)][_0x52dd95(0x1e3)]-0x1]?.['id']===_0x8291bd[_0x52dd95(0x207)]['id']&&isRecord(_0x8291bd['cascade'])&&Array[_0x52dd95(0x1f0)](_0x8291bd[_0x52dd95(0x20b)][_0x52dd95(0x243)])&&_0x8291bd[_0x52dd95(0x20b)][_0x52dd95(0x243)][_0x52dd95(0x237)](isPositiveInteger)&&typeof _0x8291bd['cascade'][_0x52dd95(0x228)]===_0x52dd95(0x1dc)&&Array[_0x52dd95(0x1f0)](_0x8291bd['warnings'])&&_0x8291bd[_0x52dd95(0x1e6)][_0x52dd95(0x237)](_0x95a523=>typeof _0x95a523===_0x52dd95(0x23c));}function isMenuFact(_0x3fa039){const _0x469d18=a121_0x5dd925;if(!isRecord(_0x3fa039))return![];return isPositiveInteger(_0x3fa039['id'])&&(_0x3fa039[_0x469d18(0x240)]===null||isPositiveInteger(_0x3fa039[_0x469d18(0x240)]))&&Number['isInteger'](_0x3fa039[_0x469d18(0x1ea)])&&_0x3fa039['depth']>=0x0&&typeof _0x3fa039[_0x469d18(0x200)]==='string'&&typeof _0x3fa039['path']==='string'&&typeof _0x3fa039[_0x469d18(0x234)]===_0x469d18(0x23c)&&(_0x3fa039[_0x469d18(0x23a)]===null||typeof _0x3fa039['visible']===_0x469d18(0x1dc))&&(_0x3fa039[_0x469d18(0x245)]===null||Number[_0x469d18(0x225)](_0x3fa039[_0x469d18(0x245)]))&&Array[_0x469d18(0x1f0)](_0x3fa039[_0x469d18(0x229)])&&_0x3fa039[_0x469d18(0x229)][_0x469d18(0x237)](_0x307da3=>typeof _0x307da3===_0x469d18(0x23c))&&typeof _0x3fa039[_0x469d18(0x1f2)]==='boolean'&&Array[_0x469d18(0x1f0)](_0x3fa039[_0x469d18(0x23b)])&&_0x3fa039[_0x469d18(0x23b)][_0x469d18(0x237)](isPositiveInteger)&&Number[_0x469d18(0x225)](_0x3fa039['childrenCount'])&&_0x3fa039[_0x469d18(0x22d)]>=0x0&&(_0x3fa039[_0x469d18(0x209)]===null||isPositiveInteger(_0x3fa039[_0x469d18(0x209)]))&&typeof _0x3fa039[_0x469d18(0x235)]===_0x469d18(0x23c)&&typeof _0x3fa039[_0x469d18(0x230)]==='string'&&(_0x3fa039['datasetId']===null||isPositiveInteger(_0x3fa039['datasetId']))&&typeof _0x3fa039[_0x469d18(0x217)]==='string'&&(_0x3fa039[_0x469d18(0x214)]===null||typeof _0x3fa039[_0x469d18(0x214)]==='string')&&(_0x3fa039[_0x469d18(0x1e8)]===null||typeof _0x3fa039['updateUserName']==='string')&&(_0x3fa039[_0x469d18(0x216)]===null||typeof _0x3fa039[_0x469d18(0x216)]===_0x469d18(0x23c)||typeof _0x3fa039['updateTime']===_0x469d18(0x231))&&(_0x3fa039[_0x469d18(0x22b)]===undefined||_0x3fa039['extend']===null||isRecord(_0x3fa039['extend']));}function isTargetFingerprint(_0x297e36){const _0x2bc848=a121_0x5dd925;if(!isRecord(_0x297e36))return![];return isPositiveInteger(_0x297e36['id'])&&(_0x297e36['parentId']===null||isPositiveInteger(_0x297e36[_0x2bc848(0x240)]))&&Number['isInteger'](_0x297e36['depth'])&&_0x297e36[_0x2bc848(0x1ea)]>=0x0&&typeof _0x297e36[_0x2bc848(0x200)]===_0x2bc848(0x23c)&&typeof _0x297e36['path']===_0x2bc848(0x23c)&&typeof _0x297e36['type']===_0x2bc848(0x23c)&&(_0x297e36[_0x2bc848(0x23a)]===null||typeof _0x297e36[_0x2bc848(0x23a)]==='boolean')&&(_0x297e36['sort']===null||Number[_0x2bc848(0x225)](_0x297e36[_0x2bc848(0x245)]))&&(_0x297e36[_0x2bc848(0x209)]===null||isPositiveInteger(_0x297e36[_0x2bc848(0x209)]))&&typeof _0x297e36[_0x2bc848(0x235)]===_0x2bc848(0x23c)&&typeof _0x297e36['modelType']===_0x2bc848(0x23c)&&(_0x297e36[_0x2bc848(0x208)]===null||isPositiveInteger(_0x297e36[_0x2bc848(0x208)]))&&typeof _0x297e36[_0x2bc848(0x217)]===_0x2bc848(0x23c)&&Array[_0x2bc848(0x1f0)](_0x297e36[_0x2bc848(0x23b)])&&_0x297e36[_0x2bc848(0x23b)][_0x2bc848(0x237)](isPositiveInteger)&&Number['isInteger'](_0x297e36[_0x2bc848(0x22d)])&&_0x297e36[_0x2bc848(0x22d)]>=0x0&&typeof _0x297e36[_0x2bc848(0x1f2)]===_0x2bc848(0x1dc)&&typeof _0x297e36[_0x2bc848(0x1dd)]===_0x2bc848(0x23c)&&/^[a-f0-9]{64}$/[_0x2bc848(0x1e7)](_0x297e36[_0x2bc848(0x1dd)])&&typeof _0x297e36['extendHash']===_0x2bc848(0x23c)&&/^[a-f0-9]{64}$/[_0x2bc848(0x1e7)](_0x297e36['extendHash'])&&(_0x297e36[_0x2bc848(0x216)]===null||typeof _0x297e36[_0x2bc848(0x216)]==='string'||typeof _0x297e36['updateTime']===_0x2bc848(0x231));}function isRecord(_0x6b24ae){const _0x248e7e=a121_0x5dd925;return typeof _0x6b24ae===_0x248e7e(0x1eb)&&_0x6b24ae!==null&&!Array[_0x248e7e(0x1f0)](_0x6b24ae);}function isPositiveInteger(_0x20187a){return Number['isSafeInteger'](_0x20187a)&&Number(_0x20187a)>0x0;}function errorMessage(_0x2f1bb2){const _0x4dacaa=a121_0x5dd925;return _0x2f1bb2 instanceof Error?_0x2f1bb2[_0x4dacaa(0x20c)]:String(_0x2f1bb2);}
|
|
1
|
+
(function(_0x46d0be,_0x23f9ac){const _0x5aee05=a122_0x36fd,_0x1bb26e=_0x46d0be();while(!![]){try{const _0x495b79=-parseInt(_0x5aee05(0x142))/0x1+-parseInt(_0x5aee05(0x159))/0x2*(parseInt(_0x5aee05(0x146))/0x3)+-parseInt(_0x5aee05(0x167))/0x4*(parseInt(_0x5aee05(0x188))/0x5)+parseInt(_0x5aee05(0x180))/0x6+-parseInt(_0x5aee05(0x160))/0x7+-parseInt(_0x5aee05(0x189))/0x8+parseInt(_0x5aee05(0x14c))/0x9;if(_0x495b79===_0x23f9ac)break;else _0x1bb26e['push'](_0x1bb26e['shift']());}catch(_0xb3146d){_0x1bb26e['push'](_0x1bb26e['shift']());}}}(a122_0x4607,0xab190));import{createHash}from'node:crypto';function a122_0x36fd(_0x2b17cb,_0x2c67d1){_0x2b17cb=_0x2b17cb-0x141;const _0x460728=a122_0x4607();let _0x36fd4c=_0x460728[_0x2b17cb];return _0x36fd4c;}import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND='menu\x20delete',PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x1f08d0,_0x4d0a10,_0x3172ed=new Date()){const _0xc75e24=a122_0x36fd;if(!_0x4d0a10[_0xc75e24(0x19f)]||!isMenuFact(_0x4d0a10[_0xc75e24(0x19f)]))throw menuError(_0xc75e24(0x161),'Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.');const _0x2f4c3a=_0x4d0a10[_0xc75e24(0x1a6)]?.['length']?_0x4d0a10[_0xc75e24(0x1a6)]:[_0x4d0a10[_0xc75e24(0x19f)]],_0x1c136f=_0x4d0a10[_0xc75e24(0x15e)]?.['length']?_0x4d0a10[_0xc75e24(0x15e)]:_0x2f4c3a[_0xc75e24(0x145)](_0x2833bc=>_0x2833bc['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x1f08d0,'createdAt':_0x3172ed[_0xc75e24(0x141)](),'expiresAt':new Date(_0x3172ed[_0xc75e24(0x181)]()+PLAN_TTL_MS)[_0xc75e24(0x141)](),'snapshotHash':_0x4d0a10[_0xc75e24(0x18c)],'recursive':_0x4d0a10['selector']['recursive']===!![],'target':_0x4d0a10[_0xc75e24(0x19f)],'targetFingerprint':fingerprint(_0x4d0a10[_0xc75e24(0x19f)]),'targets':_0x2f4c3a,'targetFingerprints':_0x2f4c3a[_0xc75e24(0x145)](fingerprint),'deleteOrder':_0x1c136f,'cascade':_0x4d0a10[_0xc75e24(0x17b)]??{'pages':_0x4d0a10[_0xc75e24(0x19f)][_0xc75e24(0x15f)]==null?[]:[_0x4d0a10[_0xc75e24(0x19f)]['pageId']],'pageSchemaAffected':_0x4d0a10['before']['pageId']!=null},'warnings':[..._0x4d0a10[_0xc75e24(0x14f)]]};}export async function writeMenuDeletePlan(_0x3f58e,_0x3c37c6){const _0x597fc3=a122_0x36fd,_0x5bcc2a=resolvePlanPath(_0x3f58e,_0x597fc3(0x19e));await mkdir(dirname(_0x5bcc2a),{'recursive':!![]});try{await writeFile(_0x5bcc2a,JSON['stringify'](_0x3c37c6,null,0x2)+'\x0a',{'encoding':_0x597fc3(0x18f),'flag':'wx'});}catch(_0x141063){if(_0x141063[_0x597fc3(0x173)]===_0x597fc3(0x165))throw menuError(_0x597fc3(0x19a),'Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20'+_0x5bcc2a,_0x597fc3(0x15a));throw menuError(_0x597fc3(0x177),_0x597fc3(0x14e)+_0x5bcc2a+':\x20'+errorMessage(_0x141063));}return _0x5bcc2a;}export async function readMenuDeletePlan(_0x1a7c0e){const _0x2e8b65=a122_0x36fd,_0x56f056=resolvePlanPath(_0x1a7c0e,_0x2e8b65(0x1a0));let _0x2467f2;try{_0x2467f2=(await stat(_0x56f056))[_0x2e8b65(0x192)];}catch(_0x22bb79){throw menuError('menu_plan_invalid',_0x2e8b65(0x1a5)+_0x56f056+':\x20'+errorMessage(_0x22bb79));}if(_0x2467f2>MAX_PLAN_BYTES)throw menuError(_0x2e8b65(0x161),'Menu\x20delete\x20plan\x20is\x20too\x20large:\x20'+_0x2467f2+_0x2e8b65(0x191));let _0x539fb6;try{_0x539fb6=JSON['parse'](await readFile(_0x56f056,_0x2e8b65(0x18f)));}catch(_0x4a048d){throw menuError(_0x2e8b65(0x161),_0x2e8b65(0x1a7)+errorMessage(_0x4a048d));}if(!isMenuDeletePlanFile(_0x539fb6))throw menuError(_0x2e8b65(0x161),_0x2e8b65(0x19d)+PLAN_VERSION+_0x2e8b65(0x194)+PLAN_COMMAND+_0x2e8b65(0x149));if(!sameFingerprint(_0x539fb6[_0x2e8b65(0x18e)],fingerprint(_0x539fb6['target'])))throw menuError(_0x2e8b65(0x161),_0x2e8b65(0x154),_0x2e8b65(0x150));if(!_0x539fb6['targets'][_0x2e8b65(0x198)]((_0x16e807,_0x50bca7)=>sameFingerprint(_0x539fb6[_0x2e8b65(0x163)][_0x50bca7],fingerprint(_0x16e807)))||!sameFingerprint(_0x539fb6[_0x2e8b65(0x18e)],fingerprint(_0x539fb6[_0x2e8b65(0x1a6)][_0x539fb6[_0x2e8b65(0x1a6)][_0x2e8b65(0x17d)]-0x1])))throw menuError(_0x2e8b65(0x161),_0x2e8b65(0x14a),_0x2e8b65(0x150));return{'path':_0x56f056,'plan':_0x539fb6};}export function mutationPlanFromDeleteFile(_0x2b649a,_0xe1e395){const _0x531c75=a122_0x36fd;return mutationResult({'operation':'delete','selector':{'id':_0x2b649a[_0x531c75(0x14d)]['id'],'recursive':_0x2b649a[_0x531c75(0x17e)]},'before':_0x2b649a['target'],'after':null,'dryRun':![],'backend':[{'method':_0x531c75(0x172),'path':_0x531c75(0x144)}],'plannedActions':[{'stage':_0x531c75(0x15b),'method':_0x531c75(0x172),'path':_0x531c75(0x144),'body':{'idList':_0x2b649a[_0x531c75(0x15e)]}}],'targets':_0x2b649a[_0x531c75(0x1a6)],'deleteOrder':_0x2b649a[_0x531c75(0x15e)],'snapshotHash':_0x2b649a[_0x531c75(0x18c)],'cascade':_0x2b649a['cascade'],'planFile':{'path':_0xe1e395,'createdAt':_0x2b649a[_0x531c75(0x176)],'expiresAt':_0x2b649a[_0x531c75(0x175)]},'warnings':_0x2b649a[_0x531c75(0x14f)]});}export function assertMenuDeletePlanCurrent(_0x2cab2c,_0x385d4b,_0x24ab5a,_0x247a69=new Date()){const _0x490c22=a122_0x36fd;assertMenuDeletePlanExecutable(_0x2cab2c,_0x385d4b,_0x247a69);if(_0x24ab5a['hash']!==_0x2cab2c[_0x490c22(0x18c)])throw menuError('menu_state_drift','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.');return _0x2cab2c[_0x490c22(0x1a6)][_0x490c22(0x145)]((_0x47bc39,_0x1d7cdd)=>{const _0x32278f=_0x490c22,_0x56be0f=_0x24ab5a[_0x32278f(0x158)][_0x32278f(0x152)](_0x47bc39['id']);if(!_0x56be0f)throw menuError(_0x32278f(0x162),_0x32278f(0x195)+_0x47bc39['id']+_0x32278f(0x170));if(!sameFingerprint(_0x2cab2c['targetFingerprints'][_0x1d7cdd],fingerprint(_0x56be0f)))throw menuError(_0x32278f(0x162),'Planned\x20menu\x20'+_0x47bc39['id']+'\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.',_0x32278f(0x184));return _0x56be0f;});}export function assertMenuDeletePlanExecutable(_0x3cbe81,_0x16772d,_0x4c695a=new Date()){const _0x4a8322=a122_0x36fd;if(_0x3cbe81[_0x4a8322(0x196)]!==_0x16772d)throw menuError(_0x4a8322(0x18d),_0x4a8322(0x1a2)+JSON[_0x4a8322(0x187)](_0x3cbe81['appCode'])+',\x20current\x20app\x20is\x20'+JSON[_0x4a8322(0x187)](_0x16772d)+'.');const _0x3175d2=Date['parse'](_0x3cbe81['createdAt']),_0x4db99f=Date[_0x4a8322(0x185)](_0x3cbe81[_0x4a8322(0x175)]);if(!Number['isFinite'](_0x3175d2)||!Number[_0x4a8322(0x193)](_0x4db99f)||_0x4db99f-_0x3175d2!==PLAN_TTL_MS)throw menuError(_0x4a8322(0x161),'Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.');if(_0x3175d2>_0x4c695a[_0x4a8322(0x181)]())throw menuError(_0x4a8322(0x161),_0x4a8322(0x155)+_0x3cbe81['createdAt']+_0x4a8322(0x157),_0x4a8322(0x18a));if(_0x4c695a['getTime']()>_0x4db99f)throw menuError(_0x4a8322(0x164),_0x4a8322(0x19c)+_0x3cbe81['expiresAt']+'.',_0x4a8322(0x15d));}function fingerprint(_0x5370e0){const _0x465322=a122_0x36fd;return{'id':_0x5370e0['id'],'parentId':_0x5370e0['parentId'],'depth':_0x5370e0[_0x465322(0x17c)],'label':_0x5370e0['label'],'path':_0x5370e0[_0x465322(0x16d)],'type':_0x5370e0[_0x465322(0x153)],'visible':_0x5370e0['visible'],'sort':_0x5370e0['sort'],'pageId':_0x5370e0[_0x465322(0x15f)],'pageType':_0x5370e0[_0x465322(0x1a4)],'modelType':_0x5370e0[_0x465322(0x178)],'datasetId':_0x5370e0[_0x465322(0x1a1)],'datasetCode':_0x5370e0['datasetCode'],'childrenIds':[..._0x5370e0[_0x465322(0x168)]],'childrenCount':_0x5370e0[_0x465322(0x148)],'resourcesValid':_0x5370e0[_0x465322(0x182)],'resourcesHash':hashValue(_0x5370e0[_0x465322(0x147)]),'extendHash':hashValue(_0x5370e0['extend']??null),'updateTime':_0x5370e0[_0x465322(0x18b)]};}function hashValue(_0x7dac6f){const _0x56b835=a122_0x36fd;return createHash(_0x56b835(0x1a3))[_0x56b835(0x179)](JSON[_0x56b835(0x187)](_0x7dac6f))['digest'](_0x56b835(0x16f));}function sameFingerprint(_0x7cf0c5,_0x4a4cc6){const _0x315f49=a122_0x36fd;return JSON[_0x315f49(0x187)](_0x7cf0c5)===JSON[_0x315f49(0x187)](_0x4a4cc6);}function resolvePlanPath(_0x271e04,_0x2331e1){const _0x55a3cf=a122_0x36fd,_0x1f02e5=_0x271e04['trim']();if(!_0x1f02e5)throw menuError(_0x55a3cf(0x161),'--'+_0x2331e1+'\x20requires\x20a\x20non-empty\x20file\x20path.');return resolve(_0x1f02e5);}function isMenuDeletePlanFile(_0x2da2e1){const _0x7a85b6=a122_0x36fd;if(!isRecord(_0x2da2e1))return![];return _0x2da2e1[_0x7a85b6(0x171)]===PLAN_VERSION&&_0x2da2e1[_0x7a85b6(0x19b)]===PLAN_COMMAND&&typeof _0x2da2e1['appCode']===_0x7a85b6(0x15c)&&_0x2da2e1[_0x7a85b6(0x196)][_0x7a85b6(0x17d)]>0x0&&typeof _0x2da2e1['createdAt']==='string'&&typeof _0x2da2e1['expiresAt']===_0x7a85b6(0x15c)&&typeof _0x2da2e1[_0x7a85b6(0x18c)]===_0x7a85b6(0x15c)&&/^sha256:[a-f0-9]{64}$/[_0x7a85b6(0x151)](_0x2da2e1[_0x7a85b6(0x18c)])&&typeof _0x2da2e1[_0x7a85b6(0x17e)]===_0x7a85b6(0x14b)&&isMenuFact(_0x2da2e1[_0x7a85b6(0x14d)])&&isTargetFingerprint(_0x2da2e1[_0x7a85b6(0x18e)])&&Array[_0x7a85b6(0x186)](_0x2da2e1['targets'])&&_0x2da2e1['targets'][_0x7a85b6(0x17d)]>0x0&&_0x2da2e1[_0x7a85b6(0x1a6)][_0x7a85b6(0x198)](isMenuFact)&&Array[_0x7a85b6(0x186)](_0x2da2e1['targetFingerprints'])&&_0x2da2e1['targetFingerprints']['length']===_0x2da2e1['targets']['length']&&_0x2da2e1[_0x7a85b6(0x163)][_0x7a85b6(0x198)](isTargetFingerprint)&&Array[_0x7a85b6(0x186)](_0x2da2e1[_0x7a85b6(0x15e)])&&_0x2da2e1[_0x7a85b6(0x15e)]['length']===_0x2da2e1['targets'][_0x7a85b6(0x17d)]&&_0x2da2e1[_0x7a85b6(0x15e)][_0x7a85b6(0x198)](isPositiveInteger)&&new Set(_0x2da2e1[_0x7a85b6(0x15e)])['size']===_0x2da2e1[_0x7a85b6(0x15e)][_0x7a85b6(0x17d)]&&_0x2da2e1[_0x7a85b6(0x1a6)][_0x7a85b6(0x198)]((_0x245375,_0x41b1cc)=>_0x245375['id']===_0x2da2e1['deleteOrder'][_0x41b1cc])&&_0x2da2e1[_0x7a85b6(0x1a6)][_0x2da2e1[_0x7a85b6(0x1a6)][_0x7a85b6(0x17d)]-0x1]?.['id']===_0x2da2e1[_0x7a85b6(0x14d)]['id']&&isRecord(_0x2da2e1[_0x7a85b6(0x17b)])&&Array[_0x7a85b6(0x186)](_0x2da2e1[_0x7a85b6(0x17b)][_0x7a85b6(0x16a)])&&_0x2da2e1['cascade']['pages']['every'](isPositiveInteger)&&typeof _0x2da2e1[_0x7a85b6(0x17b)][_0x7a85b6(0x169)]===_0x7a85b6(0x14b)&&Array[_0x7a85b6(0x186)](_0x2da2e1[_0x7a85b6(0x14f)])&&_0x2da2e1[_0x7a85b6(0x14f)][_0x7a85b6(0x198)](_0x37dba3=>typeof _0x37dba3===_0x7a85b6(0x15c));}function isMenuFact(_0x2cf4f0){const _0x268763=a122_0x36fd;if(!isRecord(_0x2cf4f0))return![];return isPositiveInteger(_0x2cf4f0['id'])&&(_0x2cf4f0['parentId']===null||isPositiveInteger(_0x2cf4f0[_0x268763(0x16e)]))&&Number['isInteger'](_0x2cf4f0[_0x268763(0x17c)])&&_0x2cf4f0[_0x268763(0x17c)]>=0x0&&typeof _0x2cf4f0[_0x268763(0x166)]===_0x268763(0x15c)&&typeof _0x2cf4f0['path']===_0x268763(0x15c)&&typeof _0x2cf4f0[_0x268763(0x153)]===_0x268763(0x15c)&&(_0x2cf4f0[_0x268763(0x156)]===null||typeof _0x2cf4f0['visible']===_0x268763(0x14b))&&(_0x2cf4f0[_0x268763(0x16c)]===null||Number[_0x268763(0x190)](_0x2cf4f0[_0x268763(0x16c)]))&&Array[_0x268763(0x186)](_0x2cf4f0[_0x268763(0x147)])&&_0x2cf4f0[_0x268763(0x147)][_0x268763(0x198)](_0x4074f8=>typeof _0x4074f8==='string')&&typeof _0x2cf4f0[_0x268763(0x182)]===_0x268763(0x14b)&&Array[_0x268763(0x186)](_0x2cf4f0[_0x268763(0x168)])&&_0x2cf4f0[_0x268763(0x168)][_0x268763(0x198)](isPositiveInteger)&&Number['isInteger'](_0x2cf4f0[_0x268763(0x148)])&&_0x2cf4f0[_0x268763(0x148)]>=0x0&&(_0x2cf4f0[_0x268763(0x15f)]===null||isPositiveInteger(_0x2cf4f0[_0x268763(0x15f)]))&&typeof _0x2cf4f0['pageType']==='string'&&typeof _0x2cf4f0[_0x268763(0x178)]===_0x268763(0x15c)&&(_0x2cf4f0[_0x268763(0x1a1)]===null||isPositiveInteger(_0x2cf4f0[_0x268763(0x1a1)]))&&typeof _0x2cf4f0[_0x268763(0x199)]===_0x268763(0x15c)&&(_0x2cf4f0['updateUserId']===null||typeof _0x2cf4f0[_0x268763(0x16b)]===_0x268763(0x15c))&&(_0x2cf4f0['updateUserName']===null||typeof _0x2cf4f0['updateUserName']===_0x268763(0x15c))&&(_0x2cf4f0[_0x268763(0x18b)]===null||typeof _0x2cf4f0[_0x268763(0x18b)]===_0x268763(0x15c)||typeof _0x2cf4f0['updateTime']===_0x268763(0x17a))&&(_0x2cf4f0[_0x268763(0x174)]===undefined||_0x2cf4f0[_0x268763(0x174)]===null||isRecord(_0x2cf4f0[_0x268763(0x174)]));}function a122_0x4607(){const _0x5e82eb=['\x20bytes.','size','isFinite','\x20of\x20the\x20','Planned\x20menu\x20','appCode','extendHash','every','datasetCode','menu_plan_file_exists','command','Menu\x20delete\x20plan\x20expired\x20at\x20','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','plan-out','before','plan','datasetId','Menu\x20delete\x20plan\x20targets\x20app\x20','sha256','pageType','Cannot\x20read\x20menu\x20delete\x20plan\x20','targets','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','toISOString','389131aaakea','message','/smartapi/menu/batchDelete','map','183XPmWRa','resources','childrenCount','\x20contract.','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','boolean','26359668CdvhVx','target','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','warnings','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','test','get','type','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','Menu\x20delete\x20plan\x20creation\x20time\x20','visible','\x20is\x20in\x20the\x20future.','byId','19886YvYATa','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','batch-delete-menu','string','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','deleteOrder','pageId','7639100DrZKye','menu_plan_invalid','menu_state_drift','targetFingerprints','menu_plan_expired','EEXIST','label','8DvkyLD','childrenIds','pageSchemaAffected','pages','updateUserId','sort','path','parentId','hex','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','version','POST','code','extend','expiresAt','createdAt','menu_plan_write_failed','modelType','update','number','cascade','depth','length','recursive','isSafeInteger','4510884DGMwQq','getTime','resourcesValid','resourcesHash','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','parse','isArray','stringify','2033230mYqdmC','636832AckAPo','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','updateTime','snapshotHash','menu_plan_app_mismatch','targetFingerprint','utf8','isInteger'];a122_0x4607=function(){return _0x5e82eb;};return a122_0x4607();}function isTargetFingerprint(_0x5a89e8){const _0x192345=a122_0x36fd;if(!isRecord(_0x5a89e8))return![];return isPositiveInteger(_0x5a89e8['id'])&&(_0x5a89e8[_0x192345(0x16e)]===null||isPositiveInteger(_0x5a89e8['parentId']))&&Number[_0x192345(0x190)](_0x5a89e8[_0x192345(0x17c)])&&_0x5a89e8[_0x192345(0x17c)]>=0x0&&typeof _0x5a89e8[_0x192345(0x166)]===_0x192345(0x15c)&&typeof _0x5a89e8[_0x192345(0x16d)]===_0x192345(0x15c)&&typeof _0x5a89e8[_0x192345(0x153)]===_0x192345(0x15c)&&(_0x5a89e8['visible']===null||typeof _0x5a89e8[_0x192345(0x156)]===_0x192345(0x14b))&&(_0x5a89e8[_0x192345(0x16c)]===null||Number[_0x192345(0x190)](_0x5a89e8['sort']))&&(_0x5a89e8[_0x192345(0x15f)]===null||isPositiveInteger(_0x5a89e8[_0x192345(0x15f)]))&&typeof _0x5a89e8['pageType']===_0x192345(0x15c)&&typeof _0x5a89e8[_0x192345(0x178)]===_0x192345(0x15c)&&(_0x5a89e8[_0x192345(0x1a1)]===null||isPositiveInteger(_0x5a89e8[_0x192345(0x1a1)]))&&typeof _0x5a89e8['datasetCode']===_0x192345(0x15c)&&Array[_0x192345(0x186)](_0x5a89e8[_0x192345(0x168)])&&_0x5a89e8[_0x192345(0x168)][_0x192345(0x198)](isPositiveInteger)&&Number[_0x192345(0x190)](_0x5a89e8[_0x192345(0x148)])&&_0x5a89e8[_0x192345(0x148)]>=0x0&&typeof _0x5a89e8[_0x192345(0x182)]==='boolean'&&typeof _0x5a89e8[_0x192345(0x183)]===_0x192345(0x15c)&&/^[a-f0-9]{64}$/[_0x192345(0x151)](_0x5a89e8['resourcesHash'])&&typeof _0x5a89e8[_0x192345(0x197)]==='string'&&/^[a-f0-9]{64}$/['test'](_0x5a89e8[_0x192345(0x197)])&&(_0x5a89e8[_0x192345(0x18b)]===null||typeof _0x5a89e8[_0x192345(0x18b)]==='string'||typeof _0x5a89e8[_0x192345(0x18b)]==='number');}function isRecord(_0x21edbc){const _0x2bc260=a122_0x36fd;return typeof _0x21edbc==='object'&&_0x21edbc!==null&&!Array[_0x2bc260(0x186)](_0x21edbc);}function isPositiveInteger(_0x3bf779){const _0x3e1425=a122_0x36fd;return Number[_0x3e1425(0x17f)](_0x3bf779)&&Number(_0x3bf779)>0x0;}function errorMessage(_0x1e7b3d){const _0x2593f0=a122_0x36fd;return _0x1e7b3d instanceof Error?_0x1e7b3d[_0x2593f0(0x143)]:String(_0x1e7b3d);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x396ef0,_0x5d7062){const _0x28420b=a123_0x40d1,_0x35efbf=_0x396ef0();while(!![]){try{const _0x594cff=parseInt(_0x28420b(0x167))/0x1*(-parseInt(_0x28420b(0x17c))/0x2)+parseInt(_0x28420b(0x154))/0x3*(-parseInt(_0x28420b(0x152))/0x4)+parseInt(_0x28420b(0x172))/0x5*(-parseInt(_0x28420b(0x17d))/0x6)+-parseInt(_0x28420b(0x165))/0x7*(-parseInt(_0x28420b(0x157))/0x8)+-parseInt(_0x28420b(0x156))/0x9*(parseInt(_0x28420b(0x179))/0xa)+-parseInt(_0x28420b(0x16a))/0xb+parseInt(_0x28420b(0x17b))/0xc;if(_0x594cff===_0x5d7062)break;else _0x35efbf['push'](_0x35efbf['shift']());}catch(_0x177473){_0x35efbf['push'](_0x35efbf['shift']());}}}(a123_0x5de5,0xbbbc0));import{createHash}from'node:crypto';import{getMenuTree}from'../../../core/api-client.js';export async function fetchMenuSnapshot(_0x27118b,_0x54451f,_0x3d80d0={}){const _0x312d9c=a123_0x40d1,_0x518d3a=await getMenuTree(_0x27118b,_0x54451f);return buildMenuSnapshot(Array[_0x312d9c(0x169)](_0x518d3a)?_0x518d3a:[],_0x3d80d0);}export function buildMenuSnapshot(_0x3a9810,_0x4e938a={}){const _0x27c450=a123_0x40d1,_0x3ae13d=flattenMenuItems(_0x3a9810,{'verbose':_0x4e938a[_0x27c450(0x15a)]===!![],'parentId':null,'depth':0x0}),_0x4ce6cc=new Map(_0x3ae13d[_0x27c450(0x159)](_0x582fe8=>[_0x582fe8['id'],_0x582fe8])),_0x50535e=createHash('sha256')['update'](JSON[_0x27c450(0x16c)](_0x3ae13d['map'](toHashInput)))[_0x27c450(0x160)](_0x27c450(0x151));return{'total':_0x3ae13d[_0x27c450(0x16d)],'hash':'sha256:'+_0x50535e,'menus':_0x3ae13d,'byId':_0x4ce6cc};}function a123_0x40d1(_0x3f9f13,_0x3ef766){_0x3f9f13=_0x3f9f13-0x14e;const _0x5de54f=a123_0x5de5();let _0x40d11e=_0x5de54f[_0x3f9f13];return _0x40d11e;}export function toProcessedMenuItem(_0x4ef46c){const _0x4ebde3=a123_0x40d1;return{'id':_0x4ef46c['id'],'path':_0x4ef46c[_0x4ebde3(0x158)],'label':_0x4ef46c['label'],'resources':[..._0x4ef46c['resources']],'extend':_0x4ef46c[_0x4ebde3(0x163)]??null};}function a123_0x5de5(){const _0x1abdef=['valid','sort','modelType','parentId','hex','136FLVnSV','datasetCode','99507zlscLG','filter','5424345UumiEL','28816Frhwql','path','map','verbose','pageType','item','depth','label','updateUserId','digest','index','resourcesValid','extend','updateUserName','469ppApyZ','url','14hQIFCz','updateTime','isArray','6274279vYOzOu','menus','stringify','length','isFinite','pageId','values','string','281185EelBgr','type','datasetId','visible','POSITIVE_INFINITY','boolean','push','10vfsIin','children','64183500SlhOmj','175244DNhOHP','138XrrORQ','resources','number'];a123_0x5de5=function(){return _0x1abdef;};return a123_0x5de5();}export function toMenuListItem(_0x475e81){const {modelType:_0x1711af,datasetId:_0x49f31b,datasetCode:_0x2a5553,resourcesValid:_0x47cc5a,..._0x23786f}=_0x475e81;return _0x23786f;}export function getChildren(_0x55c174,_0x185457){const _0x22eedd=a123_0x40d1;return _0x55c174[_0x22eedd(0x16b)][_0x22eedd(0x155)](_0x349063=>_0x349063[_0x22eedd(0x150)]===_0x185457);}function flattenMenuItems(_0x36947f,_0xb7e707){const _0x4e851d=a123_0x40d1,_0xf04be9=sortMenuItems(_0x36947f),_0x2d034=[];for(const _0x41102e of _0xf04be9){const _0x17cd14=sortMenuItems(Array[_0x4e851d(0x169)](_0x41102e[_0x4e851d(0x17a)])?_0x41102e[_0x4e851d(0x17a)]:[]);_0x2d034[_0x4e851d(0x178)](toMenuFact(_0x41102e,_0x17cd14,_0xb7e707)),_0x17cd14[_0x4e851d(0x16d)]>0x0&&_0x2d034[_0x4e851d(0x178)](...flattenMenuItems(_0x17cd14,{'verbose':_0xb7e707[_0x4e851d(0x15a)],'parentId':_0x41102e['id'],'depth':_0xb7e707[_0x4e851d(0x15d)]+0x1}));}return _0x2d034;}function sortMenuItems(_0xd9246c){const _0x21b8af=a123_0x40d1;return _0xd9246c[_0x21b8af(0x159)]((_0xddb020,_0x2e9a3a)=>({'item':_0xddb020,'index':_0x2e9a3a}))[_0x21b8af(0x14e)]((_0x520976,_0xc680a9)=>{const _0x55e90f=_0x21b8af,_0x498f08=normalizeSort(_0x520976[_0x55e90f(0x15c)][_0x55e90f(0x14e)]),_0xe96a9e=normalizeSort(_0xc680a9['item']['sort']);if(_0x498f08!==_0xe96a9e)return _0x498f08-_0xe96a9e;return _0x520976[_0x55e90f(0x161)]-_0xc680a9[_0x55e90f(0x161)];})[_0x21b8af(0x159)](({item:_0x44ec2b})=>_0x44ec2b);}function toMenuFact(_0x1231aa,_0xae9ad1,_0x29cd86){const _0x553600=a123_0x40d1,_0x23025c=normalizeResourceValue(_0x1231aa[_0x553600(0x163)]?.[_0x553600(0x17e)]),_0x1849ab={'id':_0x1231aa['id'],'parentId':_0x29cd86[_0x553600(0x150)],'depth':_0x29cd86[_0x553600(0x15d)],'label':normalizeString(_0x1231aa[_0x553600(0x15e)]),'path':normalizeString(_0x1231aa[_0x553600(0x158)]),'url':normalizeString(_0x1231aa[_0x553600(0x166)]),'type':normalizeString(_0x1231aa[_0x553600(0x173)]),'visible':typeof _0x1231aa['visible']===_0x553600(0x177)?_0x1231aa[_0x553600(0x175)]:null,'sort':typeof _0x1231aa[_0x553600(0x14e)]===_0x553600(0x17f)&&Number['isFinite'](_0x1231aa[_0x553600(0x14e)])?_0x1231aa[_0x553600(0x14e)]:null,'resources':_0x23025c[_0x553600(0x170)],'resourcesValid':_0x23025c[_0x553600(0x180)],'childrenIds':_0xae9ad1[_0x553600(0x159)](_0x325fb5=>_0x325fb5['id']),'childrenCount':_0xae9ad1[_0x553600(0x16d)],'pageId':normalizeNullableNumber(_0x1231aa['pageId']),'pageType':normalizeString(_0x1231aa[_0x553600(0x15b)]),'modelType':normalizeString(_0x1231aa[_0x553600(0x14f)]),'datasetId':normalizeNullableNumber(_0x1231aa[_0x553600(0x174)]),'datasetCode':normalizeString(_0x1231aa[_0x553600(0x153)]),'updateUserId':normalizeNullableString(_0x1231aa[_0x553600(0x15f)]),'updateUserName':normalizeNullableString(_0x1231aa[_0x553600(0x164)]),'updateTime':normalizeNullableTimestamp(_0x1231aa[_0x553600(0x168)])};return _0x29cd86[_0x553600(0x15a)]&&(_0x1849ab[_0x553600(0x163)]=_0x1231aa[_0x553600(0x163)]??null),_0x1849ab;}function toHashInput(_0x3d9ba6){const _0x5f4293=a123_0x40d1;return{'id':_0x3d9ba6['id'],'parentId':_0x3d9ba6[_0x5f4293(0x150)],'label':_0x3d9ba6[_0x5f4293(0x15e)],'path':_0x3d9ba6[_0x5f4293(0x158)],'url':_0x3d9ba6['url'],'type':_0x3d9ba6[_0x5f4293(0x173)],'visible':_0x3d9ba6[_0x5f4293(0x175)],'sort':_0x3d9ba6[_0x5f4293(0x14e)],'resources':_0x3d9ba6[_0x5f4293(0x17e)],'resourcesValid':_0x3d9ba6[_0x5f4293(0x162)],'childrenIds':_0x3d9ba6['childrenIds'],'pageId':_0x3d9ba6[_0x5f4293(0x16f)],'pageType':_0x3d9ba6[_0x5f4293(0x15b)],'modelType':_0x3d9ba6['modelType'],'datasetId':_0x3d9ba6[_0x5f4293(0x174)],'datasetCode':_0x3d9ba6[_0x5f4293(0x153)],'updateUserId':_0x3d9ba6['updateUserId'],'updateUserName':_0x3d9ba6[_0x5f4293(0x164)],'updateTime':_0x3d9ba6[_0x5f4293(0x168)]};}function normalizeSort(_0x464d18){const _0x59d725=a123_0x40d1;return typeof _0x464d18===_0x59d725(0x17f)&&Number[_0x59d725(0x16e)](_0x464d18)?_0x464d18:Number[_0x59d725(0x176)];}function normalizeString(_0x2ee010){const _0x40f6a0=a123_0x40d1;return typeof _0x2ee010===_0x40f6a0(0x171)?_0x2ee010:'';}function normalizeNullableNumber(_0x57d85e){const _0x2494f4=a123_0x40d1;return typeof _0x57d85e===_0x2494f4(0x17f)&&Number[_0x2494f4(0x16e)](_0x57d85e)?_0x57d85e:null;}function normalizeNullableString(_0x3afb86){const _0x55a256=a123_0x40d1;return typeof _0x3afb86===_0x55a256(0x171)&&_0x3afb86['length']>0x0?_0x3afb86:null;}function normalizeNullableTimestamp(_0x7919e9){const _0x703951=a123_0x40d1;if(typeof _0x7919e9===_0x703951(0x171))return _0x7919e9[_0x703951(0x16d)]>0x0?_0x7919e9:null;return typeof _0x7919e9===_0x703951(0x17f)&&Number[_0x703951(0x16e)](_0x7919e9)?_0x7919e9:null;}export function normalizeResources(_0x10e3ce){const _0x34fd47=a123_0x40d1;return normalizeResourceValue(_0x10e3ce)[_0x34fd47(0x170)];}function normalizeResourceValue(_0x59badc){const _0x3719de=a123_0x40d1;if(_0x59badc==null)return{'values':[],'valid':!![]};if(Array[_0x3719de(0x169)](_0x59badc))return{'values':_0x59badc['map'](String),'valid':!![]};if(typeof _0x59badc!=='string')return{'values':[],'valid':![]};try{const _0x769979=JSON['parse'](_0x59badc);return Array[_0x3719de(0x169)](_0x769979)?{'values':_0x769979[_0x3719de(0x159)](String),'valid':!![]}:{'values':[],'valid':![]};}catch{return{'values':[],'valid':![]};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x231aaa,_0x2b5b9c){var _0x4250d3=a124_0x3cdb,_0x2eea7f=_0x231aaa();while(!![]){try{var _0xfacf2a=-parseInt(_0x4250d3(0xfc))/0x1*(-parseInt(_0x4250d3(0xfa))/0x2)+parseInt(_0x4250d3(0xfb))/0x3*(-parseInt(_0x4250d3(0xff))/0x4)+-parseInt(_0x4250d3(0xfe))/0x5+parseInt(_0x4250d3(0xfd))/0x6*(-parseInt(_0x4250d3(0xf9))/0x7)+parseInt(_0x4250d3(0xf6))/0x8*(-parseInt(_0x4250d3(0xf7))/0x9)+parseInt(_0x4250d3(0xf3))/0xa*(parseInt(_0x4250d3(0xf4))/0xb)+parseInt(_0x4250d3(0xf5))/0xc*(parseInt(_0x4250d3(0xf8))/0xd);if(_0xfacf2a===_0x2b5b9c)break;else _0x2eea7f['push'](_0x2eea7f['shift']());}catch(_0x4d1fbd){_0x2eea7f['push'](_0x2eea7f['shift']());}}}(a124_0x4cb1,0x27c69));export*from'../../../commands/menu/shared/types.js';export*from'../../../commands/menu/shared/logic.js';export*from'../../../commands/menu/shared/compare-table.js';function a124_0x4cb1(){var _0x4d1212=['2248iDYRkY','639yXYyRB','26zjOlAY','7PhTkch','184270BOymwi','73257eJPKFX','2CPTEMo','420828VyGsyA','413570ZvaOGo','36UJOvHq','10IHYnyB','1617803ZvpuEm','1344912tjIlit'];a124_0x4cb1=function(){return _0x4d1212;};return a124_0x4cb1();}export*from'../../../commands/menu/shared/inquirer.js';export*from'../../../commands/menu/shared/valid-url.js';function a124_0x3cdb(_0x16ecc3,_0x5ed6a8){_0x16ecc3=_0x16ecc3-0xf3;var _0x4cb170=a124_0x4cb1();var _0x3cdb95=_0x4cb170[_0x16ecc3];return _0x3cdb95;}export*from'../../../commands/menu/shared/local-pages.js';export*from'../../../commands/menu/shared/service.js';export*from'../../../commands/menu/shared/sync-core.js';export*from'../../../commands/menu/shared/update-core.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x12d9b2,_0x4f98f7){const _0x236b57=a125_0x4e89,_0x427290=_0x12d9b2();while(!![]){try{const _0x2b0089=parseInt(_0x236b57(0xaf))/0x1*(-parseInt(_0x236b57(0x9f))/0x2)+-parseInt(_0x236b57(0x8c))/0x3*(parseInt(_0x236b57(0x86))/0x4)+-parseInt(_0x236b57(0x93))/0x5*(-parseInt(_0x236b57(0x84))/0x6)+-parseInt(_0x236b57(0x8d))/0x7+-parseInt(_0x236b57(0x94))/0x8*(parseInt(_0x236b57(0x98))/0x9)+-parseInt(_0x236b57(0x95))/0xa*(-parseInt(_0x236b57(0xaa))/0xb)+parseInt(_0x236b57(0x8a))/0xc*(parseInt(_0x236b57(0xab))/0xd);if(_0x2b0089===_0x4f98f7)break;else _0x427290['push'](_0x427290['shift']());}catch(_0x15bbc8){_0x427290['push'](_0x427290['shift']());}}}(a125_0x1ad0,0xa393e));import a125_0x34bfa6 from'chalk';import{checkbox,input,confirm}from'@inquirer/prompts';import a125_0x199eb6 from'ora';import{isUrlReachable}from'../../../commands/menu/shared/valid-url.js';import{CliErrors}from'../../../errors.js';function a125_0x4e89(_0x2d806f,_0x381254){_0x2d806f=_0x2d806f-0x7c;const _0x1ad0c2=a125_0x1ad0();let _0x4e8966=_0x1ad0c2[_0x2d806f];return _0x4e8966;}function onCancel(_0x100dbc){const _0x372525=a125_0x4e89;return _0x100dbc[_0x372525(0x9a)](_0x50aea8=>{const _0x2ec8f8=_0x372525;if(_0x50aea8?.[_0x2ec8f8(0x9b)]===_0x2ec8f8(0xa0))throw CliErrors[_0x2ec8f8(0x80)](_0x2ec8f8(0xa3));throw _0x50aea8;});}export function startSpinner(_0x166cb5){const _0xd66be3=a125_0x4e89;return a125_0x199eb6({'text':_0x166cb5,'color':_0xd66be3(0x97)})[_0xd66be3(0x81)]();}export function stopSpinner(_0x2c6c8a,_0x581d1d,_0x5139c9){const _0x37a299=a125_0x4e89;_0x5139c9?_0x2c6c8a[_0x37a299(0x88)](_0x581d1d):_0x2c6c8a[_0x37a299(0x8f)](_0x581d1d);}export async function askConfirm(_0x19b0a1){return onCancel(confirm({'message':_0x19b0a1,'theme':{'prefix':''}}));}export async function askJsUrl(_0x4b9680){const _0x3ac4f2=a125_0x4e89;while(!![]){const _0x51edc6=await onCancel(input({'message':_0x3ac4f2(0x8e),'default':_0x4b9680,'theme':{'prefix':''}}));if(_0x51edc6[_0x3ac4f2(0xa5)]()==='')throw CliErrors[_0x3ac4f2(0x80)](_0x3ac4f2(0xa3));if(!/^https:\/\/.+\.js(\?.*)?$/[_0x3ac4f2(0x9c)](_0x51edc6[_0x3ac4f2(0xa5)]())){console[_0x3ac4f2(0x8b)](a125_0x34bfa6[_0x3ac4f2(0x89)](_0x3ac4f2(0x7f)));continue;}const _0x29c634=startSpinner(_0x3ac4f2(0xa1));try{const _0x6d1111=await isUrlReachable(_0x51edc6[_0x3ac4f2(0xa5)]());stopSpinner(_0x29c634,'JS\x20URL\x20checked',_0x6d1111);if(!_0x6d1111){console[_0x3ac4f2(0x8b)](a125_0x34bfa6['red'](_0x3ac4f2(0x9d)));continue;}return _0x51edc6[_0x3ac4f2(0xa5)]();}catch(_0x5e5d05){stopSpinner(_0x29c634,_0x3ac4f2(0x99),![]);throw _0x5e5d05;}}}function a125_0x1ad0(){const _0x3e8c61=['CSS\x20URL\x20check\x20failed','stdin','filter','includes','220lTfOCB','98215inNKZd','[already\x20on\x20platform]','green','[new]','98029qblmzd','\x20\x20Select\x20menus\x20to\x20sync\x20(space\x20to\x20toggle,\x20a=all,\x20i=invert):','length','Use\x20--yes\x20to\x20run\x20in\x20non-interactive\x20mode,\x20or\x20pipe\x20data\x20via\x20--params.','\x20\x20✗\x20JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','cancelled','start','gray','\x20\x20✗\x20CSS\x20URL\x20is\x20unreachable','1436406egWBfB','isTTY','116pqNgOD','\x20\x20CSS\x20URL:','succeed','red','4308QbsMVg','error','55068xYhiRq','8121813IeWTkY','\x20\x20JS\x20URL:','fail','path','\x20\x20Checking\x20CSS\x20URL\x20reachability...','has','15YRGWMX','5033504fSWfOz','123770QxBWTi','label','cyan','9vTtOTc','JS\x20URL\x20check\x20failed','catch','name','test','\x20\x20✗\x20JS\x20URL\x20is\x20unreachable','No\x20local\x20pages\x20found.','14dYOWYv','ExitPromptError','\x20\x20Checking\x20JS\x20URL\x20reachability...','No\x20menus\x20selected.','Cancelled.','This\x20command\x20requires\x20an\x20interactive\x20terminal.\x20','trim'];a125_0x1ad0=function(){return _0x3e8c61;};return a125_0x1ad0();}export async function askCssUrl(_0x4a3386){const _0x108618=a125_0x4e89;while(!![]){const _0x3254d0=await onCancel(input({'message':_0x108618(0x87),'default':_0x4a3386,'theme':{'prefix':''}}));if(_0x3254d0[_0x108618(0xa5)]()==='')throw CliErrors[_0x108618(0x80)]('Cancelled.');if(!/^https:\/\/.+\.css(\?.*)?$/[_0x108618(0x9c)](_0x3254d0[_0x108618(0xa5)]())){console[_0x108618(0x8b)](a125_0x34bfa6[_0x108618(0x89)]('\x20\x20✗\x20CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL'));continue;}const _0x5422d9=startSpinner(_0x108618(0x91));try{const _0x53e7d0=await isUrlReachable(_0x3254d0[_0x108618(0xa5)]());stopSpinner(_0x5422d9,'CSS\x20URL\x20checked',_0x53e7d0);if(!_0x53e7d0){console[_0x108618(0x8b)](a125_0x34bfa6[_0x108618(0x89)](_0x108618(0x83)));continue;}return _0x3254d0[_0x108618(0xa5)]();}catch(_0x5c4360){stopSpinner(_0x5422d9,_0x108618(0xa6),![]);throw _0x5c4360;}}}export async function selectPages(_0x423dec,_0x501596){const _0x319fdb=a125_0x4e89,_0x3e664a=_0x423dec['map'](_0x1b594a=>{const _0x358aec=a125_0x4e89,_0x2d0746=_0x501596[_0x358aec(0x92)](_0x1b594a[_0x358aec(0x90)]);return{'name':_0x1b594a[_0x358aec(0x96)]+'\x20\x20'+a125_0x34bfa6[_0x358aec(0x82)](_0x1b594a[_0x358aec(0x90)])+'\x20\x20'+(_0x2d0746?a125_0x34bfa6['gray'](_0x358aec(0xac)):a125_0x34bfa6[_0x358aec(0xad)](_0x358aec(0xae))),'value':_0x1b594a[_0x358aec(0x90)],'checked':!_0x2d0746,'disabled':_0x2d0746};});if(_0x3e664a[_0x319fdb(0x7d)]===0x0)throw new Error(_0x319fdb(0x9e));const _0x4bebdf=await onCancel(checkbox({'message':_0x319fdb(0x7c),'choices':_0x3e664a,'loop':![],'theme':{'prefix':''}}));if(_0x4bebdf[_0x319fdb(0x7d)]===0x0)throw new Error(_0x319fdb(0xa2));return _0x423dec[_0x319fdb(0xa8)](_0x523189=>_0x4bebdf[_0x319fdb(0xa9)](_0x523189[_0x319fdb(0x90)]));}export function isInteractive(){const _0x4d678e=a125_0x4e89;return process[_0x4d678e(0xa7)][_0x4d678e(0x85)]===!![];}export function requireInteractive(){const _0x418a8e=a125_0x4e89;if(!isInteractive())throw new Error(_0x418a8e(0xa4)+_0x418a8e(0x7e));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const a126_0x42413b=a126_0x225e;function a126_0x1b8a(){const _0x395b22=['replaceAll','match','4KAwbuo','join','71351SWQpxs','5658939OtUNUg','forEach','cwd','366BHHkOS','isDirectory','index.tsx','endsWith','682000XRRVHv','split','push','\x5c.displayName\x5cs*=\x5cs*[\x22\x27]([^\x22\x27]+)[\x22\x27]','6289545fsoxBa','replace','trim','10989126LqvPaJ','1926466EtmUyN','1315614NxjDnx'];a126_0x1b8a=function(){return _0x395b22;};return a126_0x1b8a();}(function(_0x56576d,_0x17d457){const _0x1e1e8a=a126_0x225e,_0x8c4fb9=_0x56576d();while(!![]){try{const _0x445d04=-parseInt(_0x1e1e8a(0x117))/0x1+parseInt(_0x1e1e8a(0x116))/0x2+-parseInt(_0x1e1e8a(0x11d))/0x3+-parseInt(_0x1e1e8a(0x11a))/0x4*(-parseInt(_0x1e1e8a(0x112))/0x5)+-parseInt(_0x1e1e8a(0x10a))/0x6*(-parseInt(_0x1e1e8a(0x11c))/0x7)+parseInt(_0x1e1e8a(0x10e))/0x8+parseInt(_0x1e1e8a(0x115))/0x9;if(_0x445d04===_0x17d457)break;else _0x8c4fb9['push'](_0x8c4fb9['shift']());}catch(_0x4495ac){_0x8c4fb9['push'](_0x8c4fb9['shift']());}}}(a126_0x1b8a,0xe7434));import{readdirSync,statSync,readFileSync}from'fs';import{join,relative,resolve,sep}from'path';const pagesDir=resolve(process[a126_0x42413b(0x11f)](),'src/pages');function a126_0x225e(_0xac635c,_0x462a83){_0xac635c=_0xac635c-0x10a;const _0x1b8a3e=a126_0x1b8a();let _0x225ee3=_0x1b8a3e[_0xac635c];return _0x225ee3;}export function extractTitleFromComment(_0x451130){const _0xd5adcb=a126_0x42413b;try{const _0x226d61=readFileSync(_0x451130,'utf-8'),_0x49c886=_0x226d61['match'](/^\s*\/\*\*?([\s\S]*?)\*\//);if(_0x49c886&&_0x49c886[0x1]){const _0x3df689=_0x49c886[0x1],_0x40be32=_0x3df689[_0xd5adcb(0x119)](/^\s*\*?\s*title\s*:\s*(.+)/im);if(_0x40be32&&_0x40be32[0x1])return _0x40be32[0x1][_0xd5adcb(0x114)]();}let _0x64dc72=null;const _0x1c3e4d=_0x226d61[_0xd5adcb(0x119)](/export\s+default\s+([A-Z][a-zA-Z0-9]*)/);_0x1c3e4d&&_0x1c3e4d[0x1]&&(_0x64dc72=_0x1c3e4d[0x1]);if(!_0x64dc72){const _0x3865e6=_0x226d61['match'](/export\s+default\s+function\s+([A-Z][a-zA-Z0-9]*)/);_0x3865e6&&_0x3865e6[0x1]&&(_0x64dc72=_0x3865e6[0x1]);}if(_0x64dc72){const _0x48e3da=new RegExp('\x5cb'+_0x64dc72+_0xd5adcb(0x111)),_0x12185f=_0x226d61[_0xd5adcb(0x119)](_0x48e3da);if(_0x12185f&&_0x12185f[0x1])return _0x12185f[0x1];return _0x64dc72;}return null;}catch(_0x2f28cb){return null;}}export function getLocalPages(_0xd40b99=pagesDir,_0x518dec=pagesDir){const _0x4dac77=a126_0x42413b;let _0x579ef1=[];const _0x1c2c20=readdirSync(_0xd40b99);return _0x1c2c20[_0x4dac77(0x11e)](_0x3db55a=>{const _0x5116b6=_0x4dac77,_0x2ba38d=join(_0xd40b99,_0x3db55a),_0x331961=statSync(_0x2ba38d);if(_0x331961&&_0x331961[_0x5116b6(0x10b)]())_0x579ef1=_0x579ef1['concat'](getLocalPages(_0x2ba38d,_0x518dec));else{if(_0x3db55a[_0x5116b6(0x10d)]('.tsx')){let _0x59ad9b=relative(_0x518dec,_0x2ba38d);_0x59ad9b['endsWith'](_0x5116b6(0x10c))?_0x59ad9b=_0x59ad9b['replace'](/index\.tsx$/,''):_0x59ad9b=_0x59ad9b[_0x5116b6(0x113)](/\.tsx$/,'');_0x59ad9b[_0x5116b6(0x10d)](sep)&&(_0x59ad9b=_0x59ad9b['slice'](0x0,-0x1));const _0x51efc8=_0x59ad9b[_0x5116b6(0x10f)](sep)[_0x5116b6(0x11b)]('/'),_0x29026e=extractTitleFromComment(_0x2ba38d),_0x495cee=_0x29026e||_0x51efc8;_0x579ef1[_0x5116b6(0x110)]({'path':_0x51efc8[_0x5116b6(0x118)]('$',':'),'label':_0x495cee});}}}),_0x579ef1['filter'](_0x5a13d7=>_0x5a13d7['path']!=='');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a127_0x6e27(){const _0x4d3044=['label','errors','path','1928IsEuMg','1359960ewIeFq','15jfeTbN','114473KvFlrw','JS\x20URL\x20is\x20unreachable','117186MzWdPv','length','4188maMJbl','has','map','112653PMGiXZ','5258323FlTVGv','534794kIARVa','JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','push','584goMcEB','CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL'];a127_0x6e27=function(){return _0x4d3044;};return a127_0x6e27();}(function(_0x115f89,_0x3d492b){const _0x468acc=a127_0x298c,_0x44a56d=_0x115f89();while(!![]){try{const _0xb88640=-parseInt(_0x468acc(0x196))/0x1+parseInt(_0x468acc(0x19f))/0x2+-parseInt(_0x468acc(0x19a))/0x3*(-parseInt(_0x468acc(0x193))/0x4)+-parseInt(_0x468acc(0x195))/0x5*(parseInt(_0x468acc(0x198))/0x6)+parseInt(_0x468acc(0x19e))/0x7+parseInt(_0x468acc(0x1a2))/0x8*(-parseInt(_0x468acc(0x19d))/0x9)+parseInt(_0x468acc(0x194))/0xa;if(_0xb88640===_0x3d492b)break;else _0x44a56d['push'](_0x44a56d['shift']());}catch(_0x4a6b11){_0x44a56d['push'](_0x44a56d['shift']());}}}(a127_0x6e27,0xb4d27));import{getLocalPages}from'../../../commands/menu/shared/local-pages.js';import{getOnlineMenuList,createMenus}from'../../../commands/menu/shared/service.js';import{isUrlReachable,isValidCssHttpsUrl,isValidJsHttpsUrl}from'../../../commands/menu/shared/valid-url.js';export function validateJsUrl(_0x8d62f9){const _0x288769=a127_0x298c,_0x59e2e1=[];return!isValidJsHttpsUrl(_0x8d62f9)&&_0x59e2e1[_0x288769(0x1a1)](_0x288769(0x1a0)),{'ok':_0x59e2e1[_0x288769(0x199)]===0x0,'errors':_0x59e2e1};}function a127_0x298c(_0x3e62de,_0x31979f){_0x3e62de=_0x3e62de-0x193;const _0x6e27ba=a127_0x6e27();let _0x298c54=_0x6e27ba[_0x3e62de];return _0x298c54;}export function validateCssUrl(_0x329ce4){const _0x40f487=a127_0x298c,_0x3c79f9=[];return!isValidCssHttpsUrl(_0x329ce4)&&_0x3c79f9['push'](_0x40f487(0x1a3)),{'ok':_0x3c79f9[_0x40f487(0x199)]===0x0,'errors':_0x3c79f9};}export async function validateJsUrlReachable(_0x48bff9){const _0x14fbcf=a127_0x298c,_0x4d334a=validateJsUrl(_0x48bff9);if(!_0x4d334a['ok'])return _0x4d334a;const _0x1420da=await isUrlReachable(_0x48bff9);if(!_0x1420da)_0x4d334a[_0x14fbcf(0x1a5)][_0x14fbcf(0x1a1)](_0x14fbcf(0x197));return{'ok':_0x4d334a['errors'][_0x14fbcf(0x199)]===0x0,'errors':_0x4d334a['errors']};}export async function validateCssUrlReachable(_0x27258e){const _0x28c366=a127_0x298c,_0x3e697c=validateCssUrl(_0x27258e);if(!_0x3e697c['ok'])return _0x3e697c;const _0x5a10ea=await isUrlReachable(_0x27258e);if(!_0x5a10ea)_0x3e697c['errors'][_0x28c366(0x1a1)]('CSS\x20URL\x20is\x20unreachable');return{'ok':_0x3e697c[_0x28c366(0x1a5)][_0x28c366(0x199)]===0x0,'errors':_0x3e697c[_0x28c366(0x1a5)]};}export function buildCompareRows(_0x1e0b96,_0x472213){const _0x459c09=a127_0x298c;return _0x1e0b96[_0x459c09(0x19c)](_0x3234ed=>({'label':_0x3234ed[_0x459c09(0x1a4)],'path':_0x3234ed[_0x459c09(0x1a6)],'local':!![],'online':_0x472213[_0x459c09(0x19b)](_0x3234ed['path'])}));}export async function doCreateMenus(_0x5cd763,_0x1c2249,_0x3bb7ce,_0x318097){const _0x2e531b=a127_0x298c,_0x12e3f8=await createMenus(_0x5cd763,_0x1c2249,_0x3bb7ce,_0x318097);return{'created':_0x12e3f8[_0x2e531b(0x199)],'failed':0x0,'labels':_0x3bb7ce[_0x2e531b(0x19c)](_0x53782c=>_0x53782c[_0x2e531b(0x1a4)]),'menus':_0x12e3f8};}export function filterMenusWithResources(_0x3d020c){return _0x3d020c['filter'](_0x15cba3=>_0x15cba3['resources']['length']>0x0);}export async function fetchMenuData(_0x5355fa,_0x48bdba){const _0x48731e=a127_0x298c,_0x5e10e1=getLocalPages(),_0xdb44e3=await getOnlineMenuList(_0x5355fa,_0x48bdba),_0x293d66=new Set(_0xdb44e3[_0x48731e(0x19c)](_0x26ef25=>_0x26ef25[_0x48731e(0x1a6)]));return{'localPages':_0x5e10e1,'onlineMenuList':_0xdb44e3,'onlinePaths':_0x293d66};}export async function fetchOnlineMenuList(_0x53f3a7,_0x2402aa){return getOnlineMenuList(_0x53f3a7,_0x2402aa);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a127_0x25fb42=a127_0x27ed;(function(_0x590d7a,_0x1f4e33){const _0x3b6a0b=a127_0x27ed,_0x1af382=_0x590d7a();while(!![]){try{const _0x37df9d=parseInt(_0x3b6a0b(0x160))/0x1*(-parseInt(_0x3b6a0b(0x183))/0x2)+-parseInt(_0x3b6a0b(0x178))/0x3*(-parseInt(_0x3b6a0b(0x143))/0x4)+parseInt(_0x3b6a0b(0x14a))/0x5*(-parseInt(_0x3b6a0b(0x156))/0x6)+-parseInt(_0x3b6a0b(0x181))/0x7+parseInt(_0x3b6a0b(0x15b))/0x8+-parseInt(_0x3b6a0b(0x13e))/0x9+parseInt(_0x3b6a0b(0x173))/0xa*(parseInt(_0x3b6a0b(0x12d))/0xb);if(_0x37df9d===_0x1f4e33)break;else _0x1af382['push'](_0x1af382['shift']());}catch(_0x181e45){_0x1af382['push'](_0x1af382['shift']());}}}(a127_0x4638,0x375af));import{CliError,CliErrors}from'../../../errors.js';function a127_0x27ed(_0x560cb7,_0x416e00){_0x560cb7=_0x560cb7-0x120;const _0x463890=a127_0x4638();let _0x27ed65=_0x463890[_0x560cb7];return _0x27ed65;}import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';export const MAX_MENU_SORT=0x7fffffff;export const MENU_ID_FLAG={'name':'id','type':a127_0x25fb42(0x12b),'required':!![],'description':a127_0x25fb42(0x17b)};export const MENU_SORT_FLAG={'name':a127_0x25fb42(0x171),'type':'number','description':a127_0x25fb42(0x153)};export const MENU_PARENT_ID_FLAG={'name':'parent-id','type':'string','description':a127_0x25fb42(0x13b)};export const MENU_EXPECT_PARENT_ID_FLAG={'name':'expect-parent-id','type':a127_0x25fb42(0x175),'description':a127_0x25fb42(0x162)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a127_0x25fb42(0x122),'type':a127_0x25fb42(0x175),'description':a127_0x25fb42(0x13a)},{'name':a127_0x25fb42(0x163),'type':a127_0x25fb42(0x12b),'description':a127_0x25fb42(0x151)}];export function validateExactId(_0x3bf7eb){const _0x216dba=a127_0x25fb42,_0x43fac0=_0x3bf7eb['num']('id');if(!Number[_0x216dba(0x16d)](_0x43fac0)||_0x43fac0<=0x0)throw CliErrors['validation'](_0x216dba(0x169));return _0x43fac0;}export function validateSort(_0x1c8e48,_0x958453=a127_0x25fb42(0x171)){const _0x4fc893=a127_0x25fb42;if(!hasFlag(_0x1c8e48,_0x958453))return undefined;const _0x439672=_0x1c8e48[_0x4fc893(0x179)](_0x958453);if(!Number[_0x4fc893(0x16d)](_0x439672)||_0x439672<0x0||_0x439672>MAX_MENU_SORT)throw menuError(_0x4fc893(0x16b),'--'+_0x958453+'\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20'+MAX_MENU_SORT+'.',_0x4fc893(0x159));return _0x439672;}export function nextSiblingSort(_0x866bc0,_0x145735,_0xe9bc3a){const _0x188fd5=a127_0x25fb42,_0x146036=getChildren(_0x866bc0,_0x145735)[_0x188fd5(0x154)](_0x471bf9=>_0x471bf9[_0x188fd5(0x171)])[_0x188fd5(0x134)](_0x37e0b9=>typeof _0x37e0b9===_0x188fd5(0x12b));if(_0x146036['length']===0x0)return 0x0;const _0x2f94bc=Math[_0x188fd5(0x125)](..._0x146036);if(_0x2f94bc>=MAX_MENU_SORT)throw menuError('menu_sort_overflow',_0x188fd5(0x170)+_0xe9bc3a+'\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20'+_0x2f94bc+'.',_0x188fd5(0x135)+MAX_MENU_SORT+_0x188fd5(0x141));return _0x2f94bc+0x1;}export function requireExplicitYes(_0x17fe2c){const _0x3332b4=a127_0x25fb42;if(_0x17fe2c['bool']('dry-run'))return;if(!_0x17fe2c[_0x3332b4(0x152)](_0x3332b4(0x16f)))throw menuError(_0x3332b4(0x130),_0x3332b4(0x186),_0x3332b4(0x180));}export async function fetchMutationSnapshot(_0x2bb8c8,_0x2bc095,_0x12055f){const _0x4003a0=a127_0x25fb42;try{return await fetchMenuSnapshot(_0x2bb8c8[_0x4003a0(0x17a)],_0x2bb8c8[_0x4003a0(0x12f)]);}catch(_0x2a4c9d){throw mapMenuApiError(_0x2a4c9d,_0x4003a0(0x174)+_0x2bc095,_0x12055f);}}export async function recheckMutationSnapshot(_0x48225d,_0x2bbe80,_0x34fe7c,_0x33e380){const _0xfb229b=a127_0x25fb42;let _0x37a847;try{_0x37a847=await fetchMenuSnapshot(_0x48225d[_0xfb229b(0x17a)],_0x48225d[_0xfb229b(0x12f)]);}catch(_0x57bfba){const _0x48a64e=mapMenuApiError(_0x57bfba,_0xfb229b(0x15f)+_0x34fe7c,_0x33e380);throw menuFailure(_0x48a64e,_0x2bbe80,{'stage':_0xfb229b(0x13f),'failed':_0x33e380==null?{}:{'id':_0x33e380}});}if(_0x37a847['hash']!==_0x2bbe80[_0xfb229b(0x123)]){const _0x3b9bf8=menuError(_0xfb229b(0x14e),_0xfb229b(0x132)+_0x34fe7c+_0xfb229b(0x140),_0xfb229b(0x137));throw menuFailure(_0x3b9bf8,_0x2bbe80,{'stage':_0xfb229b(0x13f),'failed':{..._0x33e380==null?{}:{'id':_0x33e380},'expectedSnapshotHash':_0x2bbe80[_0xfb229b(0x123)],'currentSnapshotHash':_0x37a847[_0xfb229b(0x13c)]}});}return _0x37a847;}export function parseParentId(_0x3f8ee6,_0x5b88f0,_0x34cb5a={}){const _0x42e065=a127_0x25fb42;if(!hasFlag(_0x3f8ee6,_0x5b88f0)){if(_0x34cb5a[_0x42e065(0x124)])throw CliErrors[_0x42e065(0x172)](_0x5b88f0);return undefined;}const _0x32f6c3=_0x3f8ee6['str'](_0x5b88f0)[_0x42e065(0x16c)]();if(_0x32f6c3[_0x42e065(0x14c)]()===_0x42e065(0x149))return null;if(!/^\d+$/[_0x42e065(0x14b)](_0x32f6c3))throw CliErrors[_0x42e065(0x15c)]('--'+_0x5b88f0+_0x42e065(0x167));const _0x1675b4=Number(_0x32f6c3);if(!Number[_0x42e065(0x16d)](_0x1675b4)||_0x1675b4<=0x0)throw CliErrors[_0x42e065(0x15c)]('--'+_0x5b88f0+_0x42e065(0x167));return _0x1675b4;}export function requireMenu(_0x7f877d,_0x185d9d){const _0x55e3ae=a127_0x25fb42,_0x4906b3=_0x7f877d[_0x55e3ae(0x17f)][_0x55e3ae(0x182)](_0x185d9d);if(!_0x4906b3)throw menuError('menu_not_found','Online\x20menu\x20not\x20found:\x20'+_0x185d9d,'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.');return _0x4906b3;}export function requireFolder(_0x3c53a7,_0x2693e7){const _0x47bbed=a127_0x25fb42,_0x37cd9d=requireMenu(_0x3c53a7,_0x2693e7);if(_0x37cd9d[_0x47bbed(0x128)]!=='folder')throw menuError(_0x47bbed(0x176),_0x47bbed(0x166)+_0x2693e7+_0x47bbed(0x157)+(_0x37cd9d[_0x47bbed(0x128)]||_0x47bbed(0x164))+_0x47bbed(0x161),_0x47bbed(0x14d));return _0x37cd9d;}export function assertExpectedState(_0x4db12c,_0x5aa05a){const _0x29dbdd=a127_0x25fb42;if(hasFlag(_0x4db12c,'expect-parent-id')){const _0x4a3a0d=parseParentId(_0x4db12c,_0x29dbdd(0x16a),{'required':!![]});if(_0x5aa05a[_0x29dbdd(0x12a)]!==_0x4a3a0d)throw stateDrift('Menu\x20'+_0x5aa05a['id']+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x4a3a0d)+_0x29dbdd(0x184)+formatParent(_0x5aa05a['parentId'])+'.');}if(hasFlag(_0x4db12c,_0x29dbdd(0x122))){const _0x79e366=_0x4db12c[_0x29dbdd(0x146)](_0x29dbdd(0x122));if(_0x5aa05a[_0x29dbdd(0x126)]!==_0x79e366)throw stateDrift('Menu\x20'+_0x5aa05a['id']+_0x29dbdd(0x136)+JSON[_0x29dbdd(0x133)](_0x79e366)+_0x29dbdd(0x184)+JSON[_0x29dbdd(0x133)](_0x5aa05a[_0x29dbdd(0x126)])+'.');}if(hasFlag(_0x4db12c,_0x29dbdd(0x163))){const _0x4fc27f=_0x4db12c[_0x29dbdd(0x179)](_0x29dbdd(0x163));if(!Number[_0x29dbdd(0x16d)](_0x4fc27f)||_0x4fc27f<0x0)throw CliErrors[_0x29dbdd(0x15c)]('--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.');if(_0x5aa05a[_0x29dbdd(0x121)]!==_0x4fc27f)throw stateDrift(_0x29dbdd(0x166)+_0x5aa05a['id']+'\x20child\x20count\x20changed:\x20expected\x20'+_0x4fc27f+_0x29dbdd(0x184)+_0x5aa05a[_0x29dbdd(0x121)]+'.');}}export function assertVerified(_0x312d55,_0x34a9b4,_0x52bc26=a127_0x25fb42(0x131)){const _0x4dcffa=a127_0x25fb42;if(!_0x312d55)throw menuError(_0x4dcffa(0x129),_0x34a9b4,_0x52bc26);}export function mutationResult(_0x33df5c){const _0x7cc8df=a127_0x25fb42;return{'operation':_0x33df5c['operation'],'selector':_0x33df5c['selector'],'before':_0x33df5c['before'],'after':_0x33df5c[_0x7cc8df(0x177)],'dryRun':_0x33df5c[_0x7cc8df(0x144)],'backend':_0x33df5c['backend'],..._0x33df5c[_0x7cc8df(0x165)]?{'plannedActions':_0x33df5c['plannedActions']}:{},..._0x33df5c[_0x7cc8df(0x15a)]?{'targets':_0x33df5c['targets']}:{},..._0x33df5c[_0x7cc8df(0x142)]?{'deleteOrder':_0x33df5c[_0x7cc8df(0x142)]}:{},'snapshotHash':_0x33df5c['snapshotHash'],..._0x33df5c['cascade']?{'cascade':_0x33df5c[_0x7cc8df(0x15e)]}:{},..._0x33df5c[_0x7cc8df(0x12c)]?{'planFile':_0x33df5c[_0x7cc8df(0x12c)]}:{},'succeeded':_0x33df5c['succeeded']??[],'failed':_0x33df5c[_0x7cc8df(0x16e)]??[],'warnings':_0x33df5c[_0x7cc8df(0x145)]??[],'verification':_0x33df5c['verification'],'error':_0x33df5c[_0x7cc8df(0x155)]};}export function menuDryRunResult(_0x38d7a3,_0x5d7dfd){return{..._0x38d7a3,..._0x5d7dfd};}export function menuFailure(_0x474392,_0x4bc7bf,_0x4bdbc6){const _0x4177f9=a127_0x25fb42,_0x4d1699=mutationResult({..._0x4bc7bf,'after':_0x4bdbc6[_0x4177f9(0x177)]===undefined?_0x4bc7bf[_0x4177f9(0x177)]:_0x4bdbc6['after'],'backend':_0x4bdbc6[_0x4177f9(0x148)]??_0x4bc7bf[_0x4177f9(0x148)],'dryRun':![],'succeeded':_0x4bdbc6['succeeded']??[],'failed':_0x4bdbc6[_0x4177f9(0x120)]??[{..._0x4bdbc6[_0x4177f9(0x16e)]??{},'stage':_0x4bdbc6[_0x4177f9(0x150)],'code':_0x474392['code'],'message':_0x474392[_0x4177f9(0x139)]}],'warnings':[..._0x4bc7bf[_0x4177f9(0x145)],..._0x4bdbc6[_0x4177f9(0x145)]??[]],'verification':_0x4bdbc6[_0x4177f9(0x17d)],'error':{'code':_0x474392[_0x4177f9(0x185)],'message':_0x474392[_0x4177f9(0x139)],..._0x474392[_0x4177f9(0x127)]?{'hint':_0x474392[_0x4177f9(0x127)]}:{}}});return Object[_0x4177f9(0x168)](_0x474392,_0x4177f9(0x15d),{'value':_0x4d1699,'enumerable':!![],'configurable':!![]}),_0x474392;}export function asVerificationError(_0x2760ba,_0x48ad1a){const _0x24f463=a127_0x25fb42;if(_0x2760ba instanceof CliError&&_0x2760ba[_0x24f463(0x185)]==='menu_verification_failed')return _0x2760ba;const _0x32b2c2=_0x2760ba instanceof Error?_0x2760ba[_0x24f463(0x139)]:String(_0x2760ba);return menuError(_0x24f463(0x129),''+_0x48ad1a+(_0x32b2c2?':\x20'+_0x32b2c2:''),'The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.');}export function describeMenuErrorCause(_0x13b3cc,_0x44b4e1,_0x550f9a){const _0x576cbf=a127_0x25fb42,_0x51fcfb=mapMenuApiError(_0x13b3cc,_0x44b4e1,_0x550f9a);return{'causeCode':_0x51fcfb['code'],'causeMessage':_0x51fcfb[_0x576cbf(0x139)]};}export function hasFlag(_0xb3e770,_0x44bf4d){const _0x4bcd18=a127_0x25fb42;return Object['prototype'][_0x4bcd18(0x12e)][_0x4bcd18(0x14f)](_0xb3e770['rawFlags'],_0x44bf4d)&&_0xb3e770[_0x4bcd18(0x17c)][_0x44bf4d]!==undefined;}export function toApiParentId(_0x5031fe){return _0x5031fe??0x0;}function a127_0x4638(){const _0x5d016a=['menu_permission_denied','byId','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','1524348PsAVZI','get','12KODwjl',',\x20current\x20','code','This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','failedRecords','childrenCount','expect-path','snapshotHash','required','max','path','hint','type','menu_verification_failed','parentId','number','planFile','77SecXhc','hasOwnProperty','cookie','menu_confirmation_required','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','Online\x20menu\x20state\x20changed\x20before\x20','stringify','filter','Reorder\x20sibling\x20menus\x20below\x20','\x20path\x20changed:\x20expected\x20','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.','api_error','message','Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches','Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node','hash','\x20menu\x20','3471660BNTuEA','pre-write-recheck',';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','deleteOrder','3308odFBWa','dryRun','warnings','str','Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.','backend','root','5GUiyVy','test','toLowerCase','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','menu_state_drift','call','stage','Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches','bool','Sibling\x20sort\x20value\x20(non-negative\x20integer)','map','error','151446RKbEbb','\x20is\x20type\x20\x22','menu_mutation_failed','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','targets','3212912GvbgsE','validation','data','cascade','recheck\x20online\x20menu\x20facts\x20before\x20','26883uOJJxf','\x22,\x20not\x20folder.','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','expected-children-count','unknown','plannedActions','Menu\x20','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','defineProperty','--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.','expect-parent-id','menu_sort_invalid','trim','isSafeInteger','failed','yes','Cannot\x20append\x20a\x20','sort','flagMissing','865810SJEMMY','read\x20online\x20menu\x20facts\x20before\x20','string','menu_parent_not_folder','after','33iNOWBF','num','appCode','Exact\x20online\x20menu\x20id','rawFlags','verification'];a127_0x4638=function(){return _0x5d016a;};return a127_0x4638();}export function formatParent(_0xd2db5){const _0x2c6408=a127_0x25fb42;return _0xd2db5==null?_0x2c6408(0x149):String(_0xd2db5);}export function menuError(_0x5be75a,_0x39e244,_0x26d2bb){return new CliError(_0x5be75a,0x1,_0x39e244,_0x26d2bb);}export function mapMenuApiError(_0x35b2dd,_0x3613d2,_0xac27a6){const _0x158478=a127_0x25fb42;if(_0x35b2dd instanceof CliError&&_0x35b2dd['code']!==_0x158478(0x138))return _0x35b2dd;const _0x5112fb=_0x35b2dd instanceof Error?_0x35b2dd[_0x158478(0x139)]:String(_0x35b2dd);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x158478(0x14b)](_0x5112fb))return menuError(_0x158478(0x17e),'Permission\x20denied\x20while\x20attempting\x20to\x20'+_0x3613d2+(_0xac27a6?_0x158478(0x13d)+_0xac27a6:'')+'.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');return menuError(_0x158478(0x158),'Failed\x20to\x20'+_0x3613d2+(_0xac27a6?_0x158478(0x13d)+_0xac27a6:'')+':\x20'+_0x5112fb,_0x158478(0x147));}export function isMenuResponseLoss(_0x406e6f){const _0x29aa90=a127_0x25fb42,_0x329e82=_0x406e6f instanceof Error?_0x406e6f['message']:String(_0x406e6f);if(_0x406e6f instanceof CliError)return _0x406e6f[_0x29aa90(0x185)]===_0x29aa90(0x138)&&/^Request (?:failed|timeout):/i[_0x29aa90(0x14b)](_0x329e82);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i['test'](_0x329e82);}function stateDrift(_0x30f64d){const _0x26964a=a127_0x25fb42;return menuError(_0x26964a(0x14e),_0x30f64d,'Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.');}
|
|
1
|
+
const a128_0x41c297=a128_0x2afa;(function(_0x2fbd9d,_0x4b02c3){const _0x26bb0d=a128_0x2afa,_0x4957c7=_0x2fbd9d();while(!![]){try{const _0x41decb=parseInt(_0x26bb0d(0x136))/0x1+-parseInt(_0x26bb0d(0x144))/0x2+-parseInt(_0x26bb0d(0x142))/0x3+-parseInt(_0x26bb0d(0x147))/0x4*(parseInt(_0x26bb0d(0x16c))/0x5)+parseInt(_0x26bb0d(0x137))/0x6*(-parseInt(_0x26bb0d(0x112))/0x7)+-parseInt(_0x26bb0d(0x16d))/0x8*(-parseInt(_0x26bb0d(0x11f))/0x9)+parseInt(_0x26bb0d(0x10c))/0xa;if(_0x41decb===_0x4b02c3)break;else _0x4957c7['push'](_0x4957c7['shift']());}catch(_0x1880f5){_0x4957c7['push'](_0x4957c7['shift']());}}}(a128_0x44d8,0x71dee));import{CliError,CliErrors}from'../../../errors.js';import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';function a128_0x2afa(_0x146532,_0x47f22c){_0x146532=_0x146532-0x10a;const _0x44d8bf=a128_0x44d8();let _0x2afa3a=_0x44d8bf[_0x146532];return _0x2afa3a;}export const MAX_MENU_SORT=0x7fffffff;export const MENU_ID_FLAG={'name':'id','type':a128_0x41c297(0x15d),'required':!![],'description':'Exact\x20online\x20menu\x20id'};export const MENU_SORT_FLAG={'name':'sort','type':a128_0x41c297(0x15d),'description':'Sibling\x20sort\x20value\x20(non-negative\x20integer)'};export const MENU_PARENT_ID_FLAG={'name':a128_0x41c297(0x13e),'type':'string','description':a128_0x41c297(0x15f)};export const MENU_EXPECT_PARENT_ID_FLAG={'name':'expect-parent-id','type':a128_0x41c297(0x141),'description':a128_0x41c297(0x115)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a128_0x41c297(0x10b),'type':a128_0x41c297(0x141),'description':a128_0x41c297(0x10f)},{'name':a128_0x41c297(0x16f),'type':a128_0x41c297(0x15d),'description':a128_0x41c297(0x12b)}];export function validateExactId(_0x488dca){const _0x45d10d=a128_0x41c297,_0x1d6d62=_0x488dca[_0x45d10d(0x14e)]('id');if(!Number[_0x45d10d(0x13f)](_0x1d6d62)||_0x1d6d62<=0x0)throw CliErrors['validation']('--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.');return _0x1d6d62;}export function validateSort(_0x170e0d,_0x1a65da=a128_0x41c297(0x118)){const _0x2e082b=a128_0x41c297;if(!hasFlag(_0x170e0d,_0x1a65da))return undefined;const _0x10f77f=_0x170e0d[_0x2e082b(0x14e)](_0x1a65da);if(!Number[_0x2e082b(0x13f)](_0x10f77f)||_0x10f77f<0x0||_0x10f77f>MAX_MENU_SORT)throw menuError(_0x2e082b(0x120),'--'+_0x1a65da+_0x2e082b(0x16b)+MAX_MENU_SORT+'.',_0x2e082b(0x16a));return _0x10f77f;}export function nextSiblingSort(_0xb45043,_0x40b355,_0x2fae1b){const _0x5d7fd7=a128_0x41c297,_0x1726f9=getChildren(_0xb45043,_0x40b355)[_0x5d7fd7(0x12f)](_0x144e9b=>_0x144e9b[_0x5d7fd7(0x118)])[_0x5d7fd7(0x173)](_0x105ab8=>typeof _0x105ab8===_0x5d7fd7(0x15d));if(_0x1726f9[_0x5d7fd7(0x158)]===0x0)return 0x0;const _0x2fd1b2=Math['max'](..._0x1726f9);if(_0x2fd1b2>=MAX_MENU_SORT)throw menuError(_0x5d7fd7(0x13a),_0x5d7fd7(0x11d)+_0x2fae1b+'\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20'+_0x2fd1b2+'.',_0x5d7fd7(0x14f)+MAX_MENU_SORT+_0x5d7fd7(0x110));return _0x2fd1b2+0x1;}export function requireExplicitYes(_0x5052ac){const _0x3ad82e=a128_0x41c297;if(_0x5052ac[_0x3ad82e(0x139)](_0x3ad82e(0x111)))return;if(!_0x5052ac[_0x3ad82e(0x139)](_0x3ad82e(0x14a)))throw menuError(_0x3ad82e(0x116),'This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.');}export async function fetchMutationSnapshot(_0x276eb3,_0x41c3e8,_0x1b7512){const _0x3d3d17=a128_0x41c297;try{return await fetchMenuSnapshot(_0x276eb3[_0x3d3d17(0x121)],_0x276eb3[_0x3d3d17(0x148)]);}catch(_0x131b1e){throw mapMenuApiError(_0x131b1e,_0x3d3d17(0x164)+_0x41c3e8,_0x1b7512);}}export async function recheckMutationSnapshot(_0x30e484,_0x5f3402,_0x129a30,_0x18d288){const _0x2bb42f=a128_0x41c297;let _0x496a87;try{_0x496a87=await fetchMenuSnapshot(_0x30e484[_0x2bb42f(0x121)],_0x30e484[_0x2bb42f(0x148)]);}catch(_0x310c99){const _0x4bf388=mapMenuApiError(_0x310c99,_0x2bb42f(0x11e)+_0x129a30,_0x18d288);throw menuFailure(_0x4bf388,_0x5f3402,{'stage':'pre-write-recheck','failed':_0x18d288==null?{}:{'id':_0x18d288}});}if(_0x496a87[_0x2bb42f(0x12a)]!==_0x5f3402[_0x2bb42f(0x129)]){const _0x43f58a=menuError(_0x2bb42f(0x11c),_0x2bb42f(0x122)+_0x129a30+';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.',_0x2bb42f(0x166));throw menuFailure(_0x43f58a,_0x5f3402,{'stage':_0x2bb42f(0x146),'failed':{..._0x18d288==null?{}:{'id':_0x18d288},'expectedSnapshotHash':_0x5f3402[_0x2bb42f(0x129)],'currentSnapshotHash':_0x496a87[_0x2bb42f(0x12a)]}});}return _0x496a87;}export function parseParentId(_0xa720fe,_0x3068e8,_0x5e1077={}){const _0x2003f4=a128_0x41c297;if(!hasFlag(_0xa720fe,_0x3068e8)){if(_0x5e1077['required'])throw CliErrors[_0x2003f4(0x157)](_0x3068e8);return undefined;}const _0xcdcb83=_0xa720fe['str'](_0x3068e8)[_0x2003f4(0x143)]();if(_0xcdcb83[_0x2003f4(0x153)]()===_0x2003f4(0x15a))return null;if(!/^\d+$/[_0x2003f4(0x172)](_0xcdcb83))throw CliErrors['validation']('--'+_0x3068e8+'\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.');const _0x568aa8=Number(_0xcdcb83);if(!Number[_0x2003f4(0x13f)](_0x568aa8)||_0x568aa8<=0x0)throw CliErrors['validation']('--'+_0x3068e8+_0x2003f4(0x14b));return _0x568aa8;}export function requireMenu(_0x3018c9,_0x4f5b52){const _0xa04caf=a128_0x41c297,_0x3ea391=_0x3018c9[_0xa04caf(0x123)][_0xa04caf(0x13b)](_0x4f5b52);if(!_0x3ea391)throw menuError(_0xa04caf(0x162),_0xa04caf(0x14c)+_0x4f5b52,_0xa04caf(0x12e));return _0x3ea391;}export function requireFolder(_0x2df739,_0x153bdc){const _0x4ff1fc=a128_0x41c297,_0x32a74e=requireMenu(_0x2df739,_0x153bdc);if(_0x32a74e[_0x4ff1fc(0x150)]!==_0x4ff1fc(0x133))throw menuError(_0x4ff1fc(0x160),'Menu\x20'+_0x153bdc+'\x20is\x20type\x20\x22'+(_0x32a74e[_0x4ff1fc(0x150)]||'unknown')+_0x4ff1fc(0x171),_0x4ff1fc(0x135));return _0x32a74e;}export function assertExpectedState(_0x376d76,_0x14d9da){const _0x543acd=a128_0x41c297;if(hasFlag(_0x376d76,_0x543acd(0x10a))){const _0x3d3af0=parseParentId(_0x376d76,_0x543acd(0x10a),{'required':!![]});if(_0x14d9da['parentId']!==_0x3d3af0)throw stateDrift('Menu\x20'+_0x14d9da['id']+_0x543acd(0x140)+formatParent(_0x3d3af0)+_0x543acd(0x165)+formatParent(_0x14d9da[_0x543acd(0x152)])+'.');}if(hasFlag(_0x376d76,'expect-path')){const _0x3d8118=_0x376d76['str'](_0x543acd(0x10b));if(_0x14d9da[_0x543acd(0x163)]!==_0x3d8118)throw stateDrift(_0x543acd(0x125)+_0x14d9da['id']+_0x543acd(0x168)+JSON['stringify'](_0x3d8118)+_0x543acd(0x165)+JSON[_0x543acd(0x16e)](_0x14d9da[_0x543acd(0x163)])+'.');}if(hasFlag(_0x376d76,'expected-children-count')){const _0xb3a4c4=_0x376d76['num']('expected-children-count');if(!Number[_0x543acd(0x13f)](_0xb3a4c4)||_0xb3a4c4<0x0)throw CliErrors[_0x543acd(0x130)](_0x543acd(0x169));if(_0x14d9da[_0x543acd(0x170)]!==_0xb3a4c4)throw stateDrift('Menu\x20'+_0x14d9da['id']+'\x20child\x20count\x20changed:\x20expected\x20'+_0xb3a4c4+',\x20current\x20'+_0x14d9da[_0x543acd(0x170)]+'.');}}export function assertVerified(_0x3b56a1,_0x470bc8,_0x4a6852=a128_0x41c297(0x114)){const _0x1e16e4=a128_0x41c297;if(!_0x3b56a1)throw menuError(_0x1e16e4(0x132),_0x470bc8,_0x4a6852);}export function mutationResult(_0x290b40){const _0x18b175=a128_0x41c297;return{'operation':_0x290b40[_0x18b175(0x134)],'selector':_0x290b40[_0x18b175(0x128)],'before':_0x290b40[_0x18b175(0x10e)],'after':_0x290b40[_0x18b175(0x11b)],'dryRun':_0x290b40[_0x18b175(0x15c)],'backend':_0x290b40[_0x18b175(0x145)],..._0x290b40[_0x18b175(0x117)]?{'plannedActions':_0x290b40[_0x18b175(0x117)]}:{},..._0x290b40[_0x18b175(0x127)]?{'targets':_0x290b40[_0x18b175(0x127)]}:{},..._0x290b40[_0x18b175(0x15e)]?{'deleteOrder':_0x290b40[_0x18b175(0x15e)]}:{},'snapshotHash':_0x290b40[_0x18b175(0x129)],..._0x290b40[_0x18b175(0x10d)]?{'cascade':_0x290b40['cascade']}:{},..._0x290b40[_0x18b175(0x131)]?{'planFile':_0x290b40['planFile']}:{},'succeeded':_0x290b40[_0x18b175(0x126)]??[],'failed':_0x290b40[_0x18b175(0x11a)]??[],'warnings':_0x290b40['warnings']??[],'verification':_0x290b40[_0x18b175(0x113)],'error':_0x290b40[_0x18b175(0x156)]};}export function menuDryRunResult(_0xe9d0d0,_0x296041){return{..._0xe9d0d0,..._0x296041};}export function menuFailure(_0x98010,_0x47108f,_0x182176){const _0x518fe3=a128_0x41c297,_0x4855c3=mutationResult({..._0x47108f,'after':_0x182176[_0x518fe3(0x11b)]===undefined?_0x47108f[_0x518fe3(0x11b)]:_0x182176[_0x518fe3(0x11b)],'backend':_0x182176[_0x518fe3(0x145)]??_0x47108f['backend'],'dryRun':![],'succeeded':_0x182176[_0x518fe3(0x126)]??[],'failed':_0x182176[_0x518fe3(0x15b)]??[{..._0x182176[_0x518fe3(0x11a)]??{},'stage':_0x182176[_0x518fe3(0x154)],'code':_0x98010[_0x518fe3(0x167)],'message':_0x98010[_0x518fe3(0x12d)]}],'warnings':[..._0x47108f['warnings'],..._0x182176[_0x518fe3(0x149)]??[]],'verification':_0x182176[_0x518fe3(0x113)],'error':{'code':_0x98010[_0x518fe3(0x167)],'message':_0x98010[_0x518fe3(0x12d)],..._0x98010[_0x518fe3(0x13d)]?{'hint':_0x98010[_0x518fe3(0x13d)]}:{}}});return Object[_0x518fe3(0x155)](_0x98010,_0x518fe3(0x12c),{'value':_0x4855c3,'enumerable':!![],'configurable':!![]}),_0x98010;}export function asVerificationError(_0x33cd73,_0x5c5aed){const _0x340fdf=a128_0x41c297;if(_0x33cd73 instanceof CliError&&_0x33cd73[_0x340fdf(0x167)]===_0x340fdf(0x132))return _0x33cd73;const _0x5d5269=_0x33cd73 instanceof Error?_0x33cd73[_0x340fdf(0x12d)]:String(_0x33cd73);return menuError(_0x340fdf(0x132),''+_0x5c5aed+(_0x5d5269?':\x20'+_0x5d5269:''),'The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.');}export function describeMenuErrorCause(_0x24d5b3,_0x47250d,_0x28e2d7){const _0x4ac9c7=a128_0x41c297,_0x5bf493=mapMenuApiError(_0x24d5b3,_0x47250d,_0x28e2d7);return{'causeCode':_0x5bf493[_0x4ac9c7(0x167)],'causeMessage':_0x5bf493['message']};}export function hasFlag(_0x1e9702,_0x453390){const _0x50d664=a128_0x41c297;return Object['prototype'][_0x50d664(0x13c)][_0x50d664(0x159)](_0x1e9702[_0x50d664(0x14d)],_0x453390)&&_0x1e9702['rawFlags'][_0x453390]!==undefined;}export function toApiParentId(_0x23ef7d){return _0x23ef7d??0x0;}export function formatParent(_0x16b240){return _0x16b240==null?'root':String(_0x16b240);}export function menuError(_0x354dc4,_0x349507,_0xe2ef54){return new CliError(_0x354dc4,0x1,_0x349507,_0xe2ef54);}export function mapMenuApiError(_0x2f0ef9,_0x3e8758,_0x1d3f1d){const _0x1356b2=a128_0x41c297;if(_0x2f0ef9 instanceof CliError&&_0x2f0ef9[_0x1356b2(0x167)]!=='api_error')return _0x2f0ef9;const _0x18a1ea=_0x2f0ef9 instanceof Error?_0x2f0ef9[_0x1356b2(0x12d)]:String(_0x2f0ef9);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x1356b2(0x172)](_0x18a1ea))return menuError(_0x1356b2(0x119),'Permission\x20denied\x20while\x20attempting\x20to\x20'+_0x3e8758+(_0x1d3f1d?_0x1356b2(0x124)+_0x1d3f1d:'')+'.',_0x1356b2(0x161));return menuError(_0x1356b2(0x151),_0x1356b2(0x138)+_0x3e8758+(_0x1d3f1d?_0x1356b2(0x124)+_0x1d3f1d:'')+':\x20'+_0x18a1ea,'Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.');}export function isMenuResponseLoss(_0x3de55b){const _0x4dfdfd=a128_0x41c297,_0x4769da=_0x3de55b instanceof Error?_0x3de55b[_0x4dfdfd(0x12d)]:String(_0x3de55b);if(_0x3de55b instanceof CliError)return _0x3de55b[_0x4dfdfd(0x167)]==='api_error'&&/^Request (?:failed|timeout):/i[_0x4dfdfd(0x172)](_0x4769da);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i[_0x4dfdfd(0x172)](_0x4769da);}function a128_0x44d8(){const _0x17fd7d=['Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','menu_not_found','path','read\x20online\x20menu\x20facts\x20before\x20',',\x20current\x20','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.','code','\x20path\x20changed:\x20expected\x20','--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20','5bDTkUP','6520kaaByb','stringify','expected-children-count','childrenCount','\x22,\x20not\x20folder.','test','filter','expect-parent-id','expect-path','13653610dDQglP','cascade','before','Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','dry-run','1211kcoJQT','verification','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','menu_confirmation_required','plannedActions','sort','menu_permission_denied','failed','after','menu_state_drift','Cannot\x20append\x20a\x20','recheck\x20online\x20menu\x20facts\x20before\x20','3006zjxVzz','menu_sort_invalid','appCode','Online\x20menu\x20state\x20changed\x20before\x20','byId','\x20menu\x20','Menu\x20','succeeded','targets','selector','snapshotHash','hash','Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches','data','message','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.','map','validation','planFile','menu_verification_failed','folder','operation','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','510295PVnewH','20778AzNcHP','Failed\x20to\x20','bool','menu_sort_overflow','get','hasOwnProperty','hint','parent-id','isSafeInteger','\x20parent\x20changed:\x20expected\x20','string','963408rGXcXv','trim','760238AbyvKI','backend','pre-write-recheck','1524392hsxYNj','cookie','warnings','yes','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','Online\x20menu\x20not\x20found:\x20','rawFlags','num','Reorder\x20sibling\x20menus\x20below\x20','type','menu_mutation_failed','parentId','toLowerCase','stage','defineProperty','error','flagMissing','length','call','root','failedRecords','dryRun','number','deleteOrder','Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node','menu_parent_not_folder'];a128_0x44d8=function(){return _0x17fd7d;};return a128_0x44d8();}function stateDrift(_0x589e5a){return menuError('menu_state_drift',_0x589e5a,'Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x25766b,_0x3eae81){const _0x57e0f6=a129_0x1526,_0x1db362=_0x25766b();while(!![]){try{const _0x234a4d=-parseInt(_0x57e0f6(0x13b))/0x1*(parseInt(_0x57e0f6(0x13c))/0x2)+-parseInt(_0x57e0f6(0x144))/0x3+-parseInt(_0x57e0f6(0x147))/0x4+parseInt(_0x57e0f6(0x140))/0x5*(parseInt(_0x57e0f6(0x139))/0x6)+-parseInt(_0x57e0f6(0x143))/0x7+-parseInt(_0x57e0f6(0x133))/0x8+parseInt(_0x57e0f6(0x13d))/0x9;if(_0x234a4d===_0x3eae81)break;else _0x1db362['push'](_0x1db362['shift']());}catch(_0x596bc7){_0x1db362['push'](_0x1db362['shift']());}}}(a129_0x39e5,0xc6282));import{getEnv,isProduction}from'../../../constant/env.js';import{logger}from'../../../utils/logger.js';import{fetchMenuSnapshot,toProcessedMenuItem}from'../../../commands/menu/shared/facts.js';import{batchDeleteMenuRecords,createMenuRecord,startMenuRegroup as a129_0x36c37a,updateMenuRecord}from'../../../core/api-client.js';export async function getOnlineMenuList(_0x169919,_0x314746){const _0x551422=a129_0x1526,_0x536880=getEnv();logger[_0x551422(0x148)](_0x551422(0x12d),isProduction(_0x536880)?_0x551422(0x128)+_0x169919+')':_0x551422(0x145)+_0x169919+')');const _0x35d1e3=await fetchMenuSnapshot(_0x169919,_0x314746,{'verbose':!![]});return logger['info']('get-online-menu-list',_0x551422(0x130)+_0x35d1e3[_0x551422(0x138)]+'\x20online\x20menus\x20successfully'),_0x35d1e3[_0x551422(0x13f)][_0x551422(0x14b)](toProcessedMenuItem);}export async function createMenu(_0x5912cb,_0x1fbd76,_0x51f027){const _0x56b30a=a129_0x1526;logger[_0x56b30a(0x148)](_0x56b30a(0x129),_0x56b30a(0x14a)+_0x51f027['label']+'\x20('+_0x51f027['path']+')');const _0x254c13={'appCode':_0x5912cb,'type':_0x56b30a(0x135),'sort':0x0,'extend':{'loadScriptMode':_0x56b30a(0x12f),'resources':_0x51f027[_0x56b30a(0x127)]?JSON[_0x56b30a(0x131)](_0x51f027[_0x56b30a(0x127)]):undefined},..._0x51f027},_0x9d9abd=await createMenuRecord(_0x254c13,_0x1fbd76,_0x56b30a(0x141)+_0x51f027[_0x56b30a(0x134)]+'\x22');return logger[_0x56b30a(0x148)]('create-menu',_0x56b30a(0x136)+_0x51f027[_0x56b30a(0x134)]),_0x9d9abd;}async function createSingleMenu(_0x103156,_0x1e5937,_0x33e598,_0x33545d){const _0x291074=a129_0x1526,_0x3eb854={'appCode':_0x103156,'type':'procode','sort':0x0,'extend':{'loadScriptMode':_0x291074(0x12f),'resources':_0x33545d?JSON['stringify'](_0x33545d):undefined},'label':_0x33e598['label'],'path':_0x33e598[_0x291074(0x149)]},_0x8edc6a=await createMenuRecord(_0x3eb854,_0x1e5937,_0x291074(0x141)+_0x33e598[_0x291074(0x134)]+'\x22');return logger[_0x291074(0x148)]('create-menu',_0x291074(0x136)+_0x33e598[_0x291074(0x134)]),_0x8edc6a;}export async function createMenus(_0x3cb359,_0x9c2556,_0x4fe77b,_0xd9fa02){const _0x59619c=a129_0x1526;logger[_0x59619c(0x148)]('create-menus','Start\x20batch\x20menu\x20creation,\x20total\x20'+_0x4fe77b[_0x59619c(0x126)]);const _0x5bd52f=await Promise['all'](_0x4fe77b['map'](_0x4d4ff4=>createSingleMenu(_0x3cb359,_0x9c2556,_0x4d4ff4,_0xd9fa02)));return logger[_0x59619c(0x148)]('create-menus',_0x59619c(0x12a)+_0x4fe77b[_0x59619c(0x126)]),_0x5bd52f;}export async function updateMenuCdnUrl(_0x11555b,_0x250f18,_0x3bf42e){const _0x3c6457=a129_0x1526;logger[_0x3c6457(0x148)]('update-menu-cdn-url','Updating\x20menu\x20asset\x20links:\x20'+_0x3bf42e['label']+'\x20('+_0x3bf42e[_0x3c6457(0x149)]+')');const _0x4fd850={'id':_0x3bf42e['id'],'appCode':_0x11555b,'extend':{..._0x3bf42e[_0x3c6457(0x13a)]??{},..._0x3bf42e[_0x3c6457(0x142)]?{'loadScriptMode':_0x3bf42e[_0x3c6457(0x142)]}:{},'resources':_0x3bf42e['resources']?JSON[_0x3c6457(0x131)](_0x3bf42e[_0x3c6457(0x127)]):undefined}},_0x40cdf4=await updateMenuRecord(_0x4fd850,_0x250f18,_0x3c6457(0x12b)+_0x3bf42e[_0x3c6457(0x134)]+'\x22');return logger['info'](_0x3c6457(0x12c),_0x3c6457(0x12e)+_0x3bf42e[_0x3c6457(0x134)],undefined),_0x40cdf4;}export async function createMenuEntity(_0x1026d4,_0x297d45,_0x2527f0){const _0x4f265d=a129_0x1526;return createMenuRecord({'appCode':_0x1026d4,..._0x2527f0},_0x297d45,_0x4f265d(0x141)+_0x2527f0[_0x4f265d(0x134)]+'\x22');}export async function updateMenuEntity(_0x5b6dbb,_0x25a7b4,_0x117ffa){return updateMenuRecord({'appCode':_0x5b6dbb,..._0x117ffa},_0x25a7b4,'Update\x20menu\x20'+_0x117ffa['id']);}function a129_0x1526(_0x4ac347,_0x4e2d23){_0x4ac347=_0x4ac347-0x126;const _0x39e532=a129_0x39e5();let _0x152648=_0x39e532[_0x4ac347];return _0x152648;}export async function batchDeleteMenuEntities(_0x253e61,_0x1719bb){const _0x849312=a129_0x1526;return batchDeleteMenuRecords(_0x1719bb,_0x253e61,_0x849312(0x132)+_0x1719bb[_0x849312(0x126)]+_0x849312(0x146)+(_0x1719bb[_0x849312(0x126)]===0x1?'':'s'));}function a129_0x39e5(){const _0x17b963=['resources','Fetching\x20online\x20menu\x20list...\x20(appCode:\x20','create-menu','Batch\x20menu\x20creation\x20completed,\x20total\x20','Update\x20menu\x20assets\x20\x22','update-menu-cdn-url','get-online-menu-list','Menu\x20assets\x20synced:\x20','import','Fetched\x20','stringify','Delete\x20','10045528uroXVW','label','procode','Menu\x20created\x20successfully:\x20','\x20menu\x20group(s)','total','18144VEYpIy','extend','3NfCqUq','929644PyZUbs','41914656WhvBxb','menuGroups','menus','490OYTddc','Create\x20menu\x20\x22','loadScriptMode','968681kIkRYy','18873NcZWMB','Fetching\x20daily\x20menu\x20list...\x20(appCode:\x20','\x20menu','5388220WquPQX','info','path','Creating\x20menu:\x20','map','length'];a129_0x39e5=function(){return _0x17b963;};return a129_0x39e5();}export async function startMenuRegroup(_0x28b004,_0x1f3ffb){const _0x3e2183=a129_0x1526;return a129_0x36c37a(_0x1f3ffb,_0x28b004,'Regroup\x20'+_0x1f3ffb[_0x3e2183(0x13e)][_0x3e2183(0x126)]+_0x3e2183(0x137));}
|