@lovrabet/rabetbase-cli 2.3.15 → 2.3.16-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -2
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/add.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -0
- package/lib/commands/kb/delete.js +1 -0
- package/lib/commands/kb/detail.js +1 -0
- package/lib/commands/kb/index.js +1 -0
- package/lib/commands/kb/list.js +1 -0
- package/lib/commands/kb/shared.js +1 -0
- package/lib/commands/kb/update.js +1 -0
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/permit/index.js +1 -1
- package/lib/commands/permit/page-get.js +1 -1
- package/lib/commands/permit/page-set.js +1 -1
- package/lib/commands/permit/role-apis-set.js +1 -1
- package/lib/commands/permit/role-menus-set.js +1 -1
- package/lib/commands/permit/role-menus.js +1 -1
- package/lib/commands/permit/shared.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.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/init.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/create.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/save.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/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.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 -0
- 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/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a110_0x278034=a110_0x31fe;(function(_0x258506,_0x57d8f2){const _0x48159f=a110_0x31fe,_0x35a3e9=_0x258506();while(!![]){try{const _0x53c257=parseInt(_0x48159f(0x99))/0x1+-parseInt(_0x48159f(0xbf))/0x2*(parseInt(_0x48159f(0xc0))/0x3)+-parseInt(_0x48159f(0x98))/0x4+-parseInt(_0x48159f(0x7c))/0x5*(parseInt(_0x48159f(0x8f))/0x6)+-parseInt(_0x48159f(0xc4))/0x7+parseInt(_0x48159f(0xc6))/0x8*(-parseInt(_0x48159f(0x6f))/0x9)+parseInt(_0x48159f(0x7b))/0xa*(parseInt(_0x48159f(0xa1))/0xb);if(_0x53c257===_0x57d8f2)break;else _0x35a3e9['push'](_0x35a3e9['shift']());}catch(_0x5e1e0a){_0x35a3e9['push'](_0x35a3e9['shift']());}}}(a110_0x1e30,0x44b10));function a110_0x1e30(){const _0x532012=['The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','toLowerCase','applied','<new-group-id>','FAILED','trim','childrenIds','appCode','type','70544KTuOyC','42pekNOz','<platform-generated>','readbackError','start\x20menu\x20regroup','1320830crzQLQ','menu_regroup_already_applied','10584LnrcPx','menu_regroup_label_conflict','get','label','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','324zkRNba','size','join','POST','split','input','SUCCESS','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','menu_regroup_target_label_missing','Root\x20folder\x20label\x20','12930yDyThY','5GDcMnz','group','str','unconfirmed','plan','string','plan\x20regroup','regroup-start','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','message','some','\x20and\x20regroup\x20menu\x20ids\x20','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','sort','/smartapi/menu/regroup','\x20menus\x20per\x20regroup\x20request.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','folder','--menu-ids\x20supports\x20at\x20most\x20','1661922myYTcc','\x27\x5c\x27\x27','Menu\x20','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','warnings','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','menus','menu-ids','stringify','225976BXEpRO','523912wYhupH','failed','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','parentId','Menus\x20','menuIds','Regroup\x20readback\x20failed:\x20','6985KipQmW','isTerminal','validation','taskId','submit-regroup-task',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','length','Regroup\x20task\x20accepted.\x20','map','byId','isSafeInteger','test','replace','start\x20regroup','status','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','regroup-submit','cookie','knownStatus','hash','menu'];a110_0x1e30=function(){return _0x532012;};return a110_0x1e30();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a110_0x278034(0x72),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a110_0x278034(0xb5),'command':a110_0x278034(0x83),'description':'Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','risk':'high-risk-write','structuredErrors':!![],'flags':[{'name':'label','type':'string','required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a110_0x278034(0x96),'type':a110_0x278034(0x81),'required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3f2e3b){validateRegroupInput(_0x3f2e3b),requireExplicitYes(_0x3f2e3b);},async 'dryRun'(_0x5a07a5){const _0x156ea3=a110_0x278034;validateRegroupInput(_0x5a07a5);const _0x1335b1=await buildRegroupPlan(_0x5a07a5,!![]);return menuDryRunResult(_0x1335b1['plan'],{'method':_0x156ea3(0x72),'url':_0x156ea3(0x8a),'body':_0x1335b1[_0x156ea3(0x74)],'description':_0x156ea3(0x9b)+JSON['stringify'](_0x1335b1[_0x156ea3(0x6d)])+_0x156ea3(0x87)+_0x1335b1[_0x156ea3(0x9f)][_0x156ea3(0x71)](',\x20')+_0x156ea3(0xa6)});},async 'execute'(_0x207be5){const _0x263611=a110_0x278034;validateRegroupInput(_0x207be5),requireExplicitYes(_0x207be5);const _0x483375=await buildRegroupPlan(_0x207be5,![]);await recheckMutationSnapshot(_0x207be5,_0x483375[_0x263611(0x80)],_0x263611(0xae));const _0x2c5307=buildMenuLookupCommand(_0x207be5[_0x263611(0xbd)]);let _0x423580,_0x5cbb7c;try{_0x423580=await startMenuRegroup(_0x207be5[_0x263611(0xb2)],_0x483375[_0x263611(0x74)]),_0x5cbb7c=normalizeAsyncTask(_0x423580);}catch(_0x5316f1){const _0x20fbc1=await inspectRegroupAfterFailure(_0x207be5[_0x263611(0xbd)],_0x207be5[_0x263611(0xb2)],_0x483375['label'],_0x483375[_0x263611(0x9f)]),_0x3a5e42=typeof _0x423580?.[_0x263611(0xa4)]===_0x263611(0x81)&&_0x423580[_0x263611(0xa4)][_0x263611(0xbb)]()?_0x423580[_0x263611(0xa4)][_0x263611(0xbb)]():null,_0x26b9be=_0x3a5e42?{'command':buildAsyncTaskStatusCommand(_0x3a5e42,_0x207be5[_0x263611(0xbd)])}:null,_0x2577d5=mapMenuApiError(_0x5316f1,_0x263611(0xc3));throw menuFailure(_0x2577d5,_0x483375[_0x263611(0x80)],{'stage':_0x263611(0xb1),'failed':{'menuIds':_0x483375[_0x263611(0x9f)],'taskId':_0x3a5e42,'groupingApplied':_0x20fbc1[_0x263611(0xb8)]?!![]:_0x263611(0x7f)},'after':_0x20fbc1[_0x263611(0xb8)]??null,'warnings':['The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.',..._0x20fbc1[_0x263611(0xc2)]?['Regroup\x20readback\x20also\x20failed:\x20'+_0x20fbc1[_0x263611(0xc2)]]:[],..._0x3a5e42?[_0x263611(0x78)]:[]],'verification':{'status':_0x263611(0x9a),'groupingApplied':_0x20fbc1[_0x263611(0xb8)]?!![]:_0x263611(0x7f),'taskId':_0x3a5e42,'query':_0x26b9be,'lookupCommand':_0x2c5307}});}const _0x2e1c4e=buildAsyncTaskStatusCommand(_0x5cbb7c[_0x263611(0xa4)],_0x207be5[_0x263611(0xbd)]);let _0x5c2fde=null,_0x1a990d=null,_0x47efc2=null;try{_0x5c2fde=await fetchMenuSnapshot(_0x207be5[_0x263611(0xbd)],_0x207be5[_0x263611(0xb2)]),_0x1a990d=findAppliedRegroup(_0x5c2fde,_0x483375[_0x263611(0x6d)],_0x483375['menuIds']);}catch(_0x55ac7b){_0x47efc2=_0x55ac7b instanceof Error?_0x55ac7b[_0x263611(0x85)]:String(_0x55ac7b);}const _0x5133cc=mutationResult({..._0x483375[_0x263611(0x80)],'after':_0x1a990d??null,'dryRun':![],'succeeded':[{'groupId':_0x1a990d?.[_0x263611(0x7d)]['id']??null,'menuIds':_0x483375[_0x263611(0x9f)],'taskId':_0x5cbb7c['taskId'],'status':_0x5cbb7c['status'],'groupingApplied':_0x1a990d?!![]:_0x263611(0x7f)}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x5c2fde?.[_0x263611(0xb4)]??null,'groupId':_0x1a990d?.[_0x263611(0x7d)]['id']??null,'groupingApplied':_0x1a990d?!![]:'unconfirmed','readbackError':_0x47efc2,'lookupCommand':_0x2c5307},'warnings':[..._0x483375[_0x263611(0x80)][_0x263611(0x93)],...!_0x1a990d?[unconfirmedRegroupWarning(_0x5cbb7c)]:[],..._0x47efc2?[_0x263611(0xa0)+_0x47efc2]:[]]}),_0x468b77=_0x5cbb7c[_0x263611(0xaf)]===_0x263611(0x75)&&!_0x1a990d?'Regroup\x20task\x20'+_0x5cbb7c[_0x263611(0xa4)]+'\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.':_0x263611(0xa8)+asyncTaskMessage(_0x5cbb7c);return{'ok':!![],'message':_0x468b77,'data':{..._0x5133cc,'task':_0x5cbb7c,'query':_0x5cbb7c[_0x263611(0xa2)]?null:{'command':_0x2e1c4e}}};}};function validateRegroupInput(_0x4f3547){const _0x51fd87=a110_0x278034;if(!_0x4f3547[_0x51fd87(0x7e)](_0x51fd87(0x6d))[_0x51fd87(0xbb)]())throw CliErrors['flagMissing']('label');parseMenuIds(_0x4f3547['str'](_0x51fd87(0x96)));}function parseMenuIds(_0xe0546a){const _0x33288e=a110_0x278034,_0x5a69a9=_0xe0546a[_0x33288e(0x73)](',')[_0x33288e(0xa9)](_0x5f21b7=>_0x5f21b7[_0x33288e(0xbb)]());if(_0x5a69a9[_0x33288e(0xa7)]===0x0||_0x5a69a9[_0x33288e(0x86)](_0x544a1b=>!_0x544a1b))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x5f3d18=_0x5a69a9[_0x33288e(0xa9)](_0x2417ec=>{const _0x121f96=_0x33288e;if(!/^\d+$/[_0x121f96(0xac)](_0x2417ec))throw CliErrors[_0x121f96(0xa3)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x42f522=Number(_0x2417ec);if(!Number[_0x121f96(0xab)](_0x42f522)||_0x42f522<=0x0)throw CliErrors[_0x121f96(0xa3)](_0x121f96(0x77));return _0x42f522;});if(new Set(_0x5f3d18)[_0x33288e(0x70)]!==_0x5f3d18[_0x33288e(0xa7)])throw CliErrors['validation']('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x5f3d18[_0x33288e(0xa7)]>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x33288e(0x8e)+MAX_REGROUP_MENU_COUNT+_0x33288e(0x8b));return _0x5f3d18;}function buildMenuLookupCommand(_0xb9c69a){const _0xe5d5c7=a110_0x278034,_0x52e783='\x27'+_0xb9c69a[_0xe5d5c7(0xad)](/'/g,_0xe5d5c7(0x90))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x52e783+'\x20--format\x20compress';}function unconfirmedRegroupWarning(_0x501dee){const _0x22eb02=a110_0x278034;if(_0x501dee[_0x22eb02(0xaf)]==='SUCCESS')return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x501dee[_0x22eb02(0xaf)]===_0x22eb02(0xba))return _0x22eb02(0xb6);if(_0x501dee[_0x22eb02(0xb3)])return _0x22eb02(0x84);return'The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';}function a110_0x31fe(_0x3192fc,_0x1b077c){_0x3192fc=_0x3192fc-0x6d;const _0x1e3040=a110_0x1e30();let _0x31fe1a=_0x1e3040[_0x3192fc];return _0x31fe1a;}async function buildRegroupPlan(_0x11b84d,_0x5ea498){const _0x1ecc45=a110_0x278034,_0x5636b2=_0x11b84d[_0x1ecc45(0x7e)](_0x1ecc45(0x6d))[_0x1ecc45(0xbb)](),_0x2fe956=parseMenuIds(_0x11b84d[_0x1ecc45(0x7e)](_0x1ecc45(0x96))),_0x1e8024=await fetchMutationSnapshot(_0x11b84d,_0x1ecc45(0x82)),_0x4d1370=_0x2fe956[_0x1ecc45(0xa9)](_0x3cc260=>requireMenu(_0x1e8024,_0x3cc260));for(const _0x17a251 of _0x4d1370){if(_0x17a251[_0x1ecc45(0xbe)][_0x1ecc45(0xbb)]()[_0x1ecc45(0xb7)]()===_0x1ecc45(0x8d)||_0x17a251['childrenCount']>0x0)throw menuError('menu_regroup_target_not_leaf',_0x1ecc45(0x91)+_0x17a251['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',_0x1ecc45(0xb0));if(!_0x17a251[_0x1ecc45(0x6d)][_0x1ecc45(0xbb)]())throw menuError(_0x1ecc45(0x79),'Menu\x20'+_0x17a251['id']+_0x1ecc45(0x6e),_0x1ecc45(0x88));}const _0x45fc15=findAppliedRegroup(_0x1e8024,_0x5636b2,_0x2fe956);if(_0x45fc15)throw menuError(_0x1ecc45(0xc5),_0x1ecc45(0x9e)+_0x2fe956[_0x1ecc45(0x71)](',\x20')+_0x1ecc45(0x94)+_0x45fc15['group']['id']+'\x20('+JSON[_0x1ecc45(0x97)](_0x5636b2)+').',_0x1ecc45(0x9c));const _0x450ea4=_0x1e8024[_0x1ecc45(0x95)]['filter'](_0x69cb14=>_0x69cb14[_0x1ecc45(0x9d)]==null&&_0x69cb14[_0x1ecc45(0xbe)][_0x1ecc45(0xbb)]()[_0x1ecc45(0xb7)]()==='folder'&&_0x69cb14[_0x1ecc45(0x6d)]===_0x5636b2);if(_0x450ea4[_0x1ecc45(0xa7)]>0x0)throw menuError(_0x1ecc45(0xc7),_0x1ecc45(0x7a)+JSON[_0x1ecc45(0x97)](_0x5636b2)+'\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'+_0x450ea4[_0x1ecc45(0xa9)](_0x4aef3b=>_0x4aef3b['id'])[_0x1ecc45(0x71)](',\x20')+'.',_0x1ecc45(0x8c));const _0x2f599e={'appCode':_0x11b84d[_0x1ecc45(0xbd)],'menuGroups':[{'label':_0x5636b2,'type':_0x1ecc45(0x8d),'children':_0x4d1370[_0x1ecc45(0xa9)](_0x46eb21=>({'id':_0x46eb21['id'],'label':_0x46eb21[_0x1ecc45(0x6d)]}))}]},_0x586f56=mutationResult({'operation':_0x1ecc45(0x83),'selector':{'label':_0x5636b2,'menuIds':_0x2fe956},'before':{'menus':_0x4d1370},'after':{'group':{'id':null,'parentId':null,'label':_0x5636b2,'path':_0x1ecc45(0xc1),'type':_0x1ecc45(0x8d),'childrenIds':_0x2fe956},'children':_0x4d1370[_0x1ecc45(0xa9)](_0x4f368e=>({'id':_0x4f368e['id'],'label':_0x4f368e[_0x1ecc45(0x6d)],'beforeParentId':_0x4f368e['parentId'],'afterParentId':_0x1ecc45(0xb9)}))},'dryRun':_0x5ea498,'backend':[...BACKEND],'plannedActions':[{'stage':_0x1ecc45(0xa5),'method':'POST','path':_0x1ecc45(0x8a),'body':_0x2f599e}],'snapshotHash':_0x1e8024[_0x1ecc45(0xb4)],'warnings':[_0x1ecc45(0x92),_0x1ecc45(0x76)]});return{'label':_0x5636b2,'menuIds':_0x2fe956,'input':_0x2f599e,'plan':_0x586f56};}function findAppliedRegroup(_0x3d7010,_0x2d39b1,_0x3c7c46){const _0x665f15=a110_0x278034,_0x1420b4=_0x3c7c46[_0x665f15(0xa9)](_0x315b21=>_0x3d7010[_0x665f15(0xaa)]['get'](_0x315b21))['filter'](_0x56e8be=>Boolean(_0x56e8be));if(_0x1420b4[_0x665f15(0xa7)]!==_0x3c7c46['length'])return null;const _0x250c94=_0x1420b4[0x0]?.['parentId'];if(_0x250c94==null||_0x1420b4['some'](_0x5477ee=>_0x5477ee[_0x665f15(0x9d)]!==_0x250c94))return null;const _0x51c315=_0x3d7010[_0x665f15(0xaa)][_0x665f15(0xc8)](_0x250c94);if(!_0x51c315||_0x51c315[_0x665f15(0x9d)]!=null||_0x51c315['type'][_0x665f15(0xbb)]()[_0x665f15(0xb7)]()!==_0x665f15(0x8d)||_0x51c315[_0x665f15(0x6d)]!==_0x2d39b1)return null;const _0x4303e7=[..._0x3c7c46][_0x665f15(0x89)]((_0x1cb31e,_0x1d44f4)=>_0x1cb31e-_0x1d44f4),_0x133fed=[..._0x51c315[_0x665f15(0xbc)]][_0x665f15(0x89)]((_0x161144,_0x285f60)=>_0x161144-_0x285f60);if(JSON[_0x665f15(0x97)](_0x133fed)!==JSON[_0x665f15(0x97)](_0x4303e7))return null;return{'group':_0x51c315,'children':_0x1420b4};}async function inspectRegroupAfterFailure(_0x3b1c0e,_0x17ccb6,_0x54b89f,_0x23cdba){const _0x4e5f70=a110_0x278034;try{const _0x55af0d=await fetchMenuSnapshot(_0x3b1c0e,_0x17ccb6);return{'applied':findAppliedRegroup(_0x55af0d,_0x54b89f,_0x23cdba),'readbackError':null};}catch(_0x257586){return{'applied':null,'readbackError':_0x257586 instanceof Error?_0x257586[_0x4e5f70(0x85)]:String(_0x257586)};}}
|
|
1
|
+
const a117_0x28943b=a117_0x4b03;(function(_0x281992,_0x165f7c){const _0xa6cfd9=a117_0x4b03,_0x30da6b=_0x281992();while(!![]){try{const _0x223443=parseInt(_0xa6cfd9(0x146))/0x1+-parseInt(_0xa6cfd9(0x123))/0x2+-parseInt(_0xa6cfd9(0x147))/0x3+-parseInt(_0xa6cfd9(0x16b))/0x4+parseInt(_0xa6cfd9(0x164))/0x5*(-parseInt(_0xa6cfd9(0x152))/0x6)+-parseInt(_0xa6cfd9(0x177))/0x7+-parseInt(_0xa6cfd9(0x124))/0x8*(-parseInt(_0xa6cfd9(0x137))/0x9);if(_0x223443===_0x165f7c)break;else _0x30da6b['push'](_0x30da6b['shift']());}catch(_0x3c0add){_0x30da6b['push'](_0x30da6b['shift']());}}}(a117_0x218c,0x9ed29));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,requireMenu}from'../../commands/menu/shared/mutations.js';function a117_0x218c(){const _0x69c1f4=[';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','menu_regroup_already_applied','string','POST','menu','\x20--format\x20compress','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','status','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','str','970946lhxTBV','16288464pCUuFd','menuIds','menu_regroup_target_label_missing','isTerminal','filter','length','<new-group-id>','menus','failed','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','start\x20menu\x20regroup','menu_regroup_label_conflict','regroup-submit','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','byId','\x20and\x20regroup\x20menu\x20ids\x20','Menu\x20','9tyrZFM','cookie','--menu-ids\x20supports\x20at\x20most\x20','join','validation','appCode','hash','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','readbackError','SUCCESS','toLowerCase','menu\x20list','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','parentId','input','34897PQHECG','251892FrBhYm','stringify','\x20menus\x20per\x20regroup\x20request.','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','Menus\x20','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','trim','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','isSafeInteger','regroup-start','some','1323678zFfsoU','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','type','taskId','label','FAILED','Regroup\x20readback\x20also\x20failed:\x20','group','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','replace','plan','\x27\x5c\x27\x27','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','applied','map','Label\x20of\x20the\x20new\x20root\x20folder','get','submit-regroup-task','10nFZfBU','size','message','split','Regroup\x20task\x20accepted.\x20','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','1010972UTbKmT','unconfirmed','test','sort','menu-ids','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','flagMissing','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','menu_regroup_target_not_leaf','folder','high-risk-write','1099084TqkZks','<platform-generated>'];a117_0x218c=function(){return _0x69c1f4;};return a117_0x218c();}import{startMenuRegroup}from'../../commands/menu/shared/service.js';function a117_0x4b03(_0x3003f1,_0x45bd61){_0x3003f1=_0x3003f1-0x123;const _0x218c52=a117_0x218c();let _0x4b036c=_0x218c52[_0x3003f1];return _0x4b036c;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a117_0x28943b(0x17c),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a117_0x28943b(0x17d),'command':a117_0x28943b(0x150),'description':'Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','risk':a117_0x28943b(0x176),'structuredErrors':!![],'flags':[{'name':'label','type':a117_0x28943b(0x17b),'required':!![],'description':a117_0x28943b(0x161)},{'name':'menu-ids','type':a117_0x28943b(0x17b),'required':!![],'description':a117_0x28943b(0x12d)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x19be10){validateRegroupInput(_0x19be10),requireExplicitYes(_0x19be10);},async 'dryRun'(_0x30f771){const _0xafc587=a117_0x28943b;validateRegroupInput(_0x30f771);const _0x23f9d5=await buildRegroupPlan(_0x30f771,!![]);return menuDryRunResult(_0x23f9d5[_0xafc587(0x15c)],{'method':_0xafc587(0x17c),'url':'/smartapi/menu/regroup','body':_0x23f9d5['input'],'description':_0xafc587(0x173)+JSON[_0xafc587(0x148)](_0x23f9d5[_0xafc587(0x156)])+_0xafc587(0x135)+_0x23f9d5[_0xafc587(0x125)][_0xafc587(0x13a)](',\x20')+_0xafc587(0x179)});},async 'execute'(_0x4e5d74){const _0x4caaf3=a117_0x28943b;validateRegroupInput(_0x4e5d74),requireExplicitYes(_0x4e5d74);const _0x5b9f79=await buildRegroupPlan(_0x4e5d74,![]);await recheckMutationSnapshot(_0x4e5d74,_0x5b9f79[_0x4caaf3(0x15c)],'start\x20regroup');const _0x272068=buildMenuLookupCommand(_0x4e5d74['appCode']);let _0x410f25,_0x3cf428;try{_0x410f25=await startMenuRegroup(_0x4e5d74[_0x4caaf3(0x138)],_0x5b9f79[_0x4caaf3(0x145)]),_0x3cf428=normalizeAsyncTask(_0x410f25);}catch(_0x32fb4b){const _0x21cf8b=await inspectRegroupAfterFailure(_0x4e5d74[_0x4caaf3(0x13c)],_0x4e5d74[_0x4caaf3(0x138)],_0x5b9f79[_0x4caaf3(0x156)],_0x5b9f79[_0x4caaf3(0x125)]),_0x44cfaa=typeof _0x410f25?.[_0x4caaf3(0x155)]===_0x4caaf3(0x17b)&&_0x410f25[_0x4caaf3(0x155)][_0x4caaf3(0x14d)]()?_0x410f25[_0x4caaf3(0x155)][_0x4caaf3(0x14d)]():null,_0x20b1a6=_0x44cfaa?{'command':buildAsyncTaskStatusCommand(_0x44cfaa,_0x4e5d74[_0x4caaf3(0x13c)])}:null,_0xc645ce=mapMenuApiError(_0x32fb4b,_0x4caaf3(0x12f));throw menuFailure(_0xc645ce,_0x5b9f79['plan'],{'stage':_0x4caaf3(0x131),'failed':{'menuIds':_0x5b9f79[_0x4caaf3(0x125)],'taskId':_0x44cfaa,'groupingApplied':_0x21cf8b[_0x4caaf3(0x15f)]?!![]:_0x4caaf3(0x16c)},'after':_0x21cf8b[_0x4caaf3(0x15f)]??null,'warnings':[_0x4caaf3(0x15e),..._0x21cf8b[_0x4caaf3(0x13f)]?[_0x4caaf3(0x158)+_0x21cf8b[_0x4caaf3(0x13f)]]:[],..._0x44cfaa?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':_0x4caaf3(0x12c),'groupingApplied':_0x21cf8b[_0x4caaf3(0x15f)]?!![]:_0x4caaf3(0x16c),'taskId':_0x44cfaa,'query':_0x20b1a6,'lookupCommand':_0x272068}});}const _0x4ade90=buildAsyncTaskStatusCommand(_0x3cf428[_0x4caaf3(0x155)],_0x4e5d74[_0x4caaf3(0x13c)]);let _0x1e2bcc=null,_0x45e840=null,_0x571c83=null;try{_0x1e2bcc=await fetchMenuSnapshot(_0x4e5d74[_0x4caaf3(0x13c)],_0x4e5d74[_0x4caaf3(0x138)]),_0x45e840=findAppliedRegroup(_0x1e2bcc,_0x5b9f79['label'],_0x5b9f79['menuIds']);}catch(_0x5b9d28){_0x571c83=_0x5b9d28 instanceof Error?_0x5b9d28[_0x4caaf3(0x166)]:String(_0x5b9d28);}const _0x400b41=mutationResult({..._0x5b9f79[_0x4caaf3(0x15c)],'after':_0x45e840??null,'dryRun':![],'succeeded':[{'groupId':_0x45e840?.[_0x4caaf3(0x159)]['id']??null,'menuIds':_0x5b9f79[_0x4caaf3(0x125)],'taskId':_0x3cf428['taskId'],'status':_0x3cf428[_0x4caaf3(0x180)],'groupingApplied':_0x45e840?!![]:_0x4caaf3(0x16c)}],'verification':{'checkedBy':_0x4caaf3(0x142),'snapshotHash':_0x1e2bcc?.['hash']??null,'groupId':_0x45e840?.['group']['id']??null,'groupingApplied':_0x45e840?!![]:'unconfirmed','readbackError':_0x571c83,'lookupCommand':_0x272068},'warnings':[..._0x5b9f79[_0x4caaf3(0x15c)]['warnings'],...!_0x45e840?[unconfirmedRegroupWarning(_0x3cf428)]:[],..._0x571c83?['Regroup\x20readback\x20failed:\x20'+_0x571c83]:[]]}),_0x59c510=_0x3cf428[_0x4caaf3(0x180)]===_0x4caaf3(0x140)&&!_0x45e840?'Regroup\x20task\x20'+_0x3cf428[_0x4caaf3(0x155)]+_0x4caaf3(0x143):_0x4caaf3(0x168)+asyncTaskMessage(_0x3cf428);return{'ok':!![],'message':_0x59c510,'data':{..._0x400b41,'task':_0x3cf428,'query':_0x3cf428[_0x4caaf3(0x127)]?null:{'command':_0x4ade90}}};}};function validateRegroupInput(_0xb4d305){const _0x568bc6=a117_0x28943b;if(!_0xb4d305[_0x568bc6(0x182)]('label')[_0x568bc6(0x14d)]())throw CliErrors[_0x568bc6(0x172)]('label');parseMenuIds(_0xb4d305[_0x568bc6(0x182)]('menu-ids'));}function parseMenuIds(_0x3a728f){const _0x3c260f=a117_0x28943b,_0x537004=_0x3a728f[_0x3c260f(0x167)](',')[_0x3c260f(0x160)](_0x36c14a=>_0x36c14a[_0x3c260f(0x14d)]());if(_0x537004['length']===0x0||_0x537004[_0x3c260f(0x151)](_0x584cdb=>!_0x584cdb))throw CliErrors[_0x3c260f(0x13b)](_0x3c260f(0x171));const _0x219f5=_0x537004[_0x3c260f(0x160)](_0x1181f9=>{const _0x2a7c50=_0x3c260f;if(!/^\d+$/[_0x2a7c50(0x16d)](_0x1181f9))throw CliErrors[_0x2a7c50(0x13b)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x3acb54=Number(_0x1181f9);if(!Number[_0x2a7c50(0x14f)](_0x3acb54)||_0x3acb54<=0x0)throw CliErrors[_0x2a7c50(0x13b)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x3acb54;});if(new Set(_0x219f5)[_0x3c260f(0x165)]!==_0x219f5[_0x3c260f(0x129)])throw CliErrors[_0x3c260f(0x13b)](_0x3c260f(0x132));if(_0x219f5['length']>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x3c260f(0x139)+MAX_REGROUP_MENU_COUNT+_0x3c260f(0x149));return _0x219f5;}function buildMenuLookupCommand(_0x1511b7){const _0x4e933e=a117_0x28943b,_0x1076c3='\x27'+_0x1511b7[_0x4e933e(0x15b)](/'/g,_0x4e933e(0x15d))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x1076c3+_0x4e933e(0x17e);}function unconfirmedRegroupWarning(_0x4bc76a){const _0x3679a3=a117_0x28943b;if(_0x4bc76a[_0x3679a3(0x180)]===_0x3679a3(0x140))return _0x3679a3(0x13e);if(_0x4bc76a[_0x3679a3(0x180)]===_0x3679a3(0x157))return _0x3679a3(0x17f);if(_0x4bc76a['knownStatus'])return _0x3679a3(0x133);return'The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';}async function buildRegroupPlan(_0x10dc6d,_0x20de86){const _0x595dbb=a117_0x28943b,_0x4cf48e=_0x10dc6d[_0x595dbb(0x182)](_0x595dbb(0x156))[_0x595dbb(0x14d)](),_0x29f124=parseMenuIds(_0x10dc6d['str'](_0x595dbb(0x16f))),_0x49d63e=await fetchMutationSnapshot(_0x10dc6d,'plan\x20regroup'),_0x365d14=_0x29f124[_0x595dbb(0x160)](_0xbdfcb9=>requireMenu(_0x49d63e,_0xbdfcb9));for(const _0x365f7a of _0x365d14){if(_0x365f7a[_0x595dbb(0x154)][_0x595dbb(0x14d)]()[_0x595dbb(0x141)]()===_0x595dbb(0x175)||_0x365f7a['childrenCount']>0x0)throw menuError(_0x595dbb(0x174),'Menu\x20'+_0x365f7a['id']+_0x595dbb(0x15a),_0x595dbb(0x14e));if(!_0x365f7a[_0x595dbb(0x156)][_0x595dbb(0x14d)]())throw menuError(_0x595dbb(0x126),_0x595dbb(0x136)+_0x365f7a['id']+_0x595dbb(0x153),_0x595dbb(0x12e));}const _0x4466c8=findAppliedRegroup(_0x49d63e,_0x4cf48e,_0x29f124);if(_0x4466c8)throw menuError(_0x595dbb(0x17a),_0x595dbb(0x14b)+_0x29f124[_0x595dbb(0x13a)](',\x20')+_0x595dbb(0x170)+_0x4466c8[_0x595dbb(0x159)]['id']+'\x20('+JSON[_0x595dbb(0x148)](_0x4cf48e)+').',_0x595dbb(0x16a));const _0x4c5756=_0x49d63e[_0x595dbb(0x12b)]['filter'](_0x5d66c8=>_0x5d66c8[_0x595dbb(0x144)]==null&&_0x5d66c8[_0x595dbb(0x154)]['trim']()['toLowerCase']()===_0x595dbb(0x175)&&_0x5d66c8[_0x595dbb(0x156)]===_0x4cf48e);if(_0x4c5756[_0x595dbb(0x129)]>0x0)throw menuError(_0x595dbb(0x130),'Root\x20folder\x20label\x20'+JSON[_0x595dbb(0x148)](_0x4cf48e)+_0x595dbb(0x14c)+_0x4c5756[_0x595dbb(0x160)](_0x21450a=>_0x21450a['id'])['join'](',\x20')+'.',_0x595dbb(0x169));const _0x5c7ec1={'appCode':_0x10dc6d[_0x595dbb(0x13c)],'menuGroups':[{'label':_0x4cf48e,'type':'folder','children':_0x365d14['map'](_0x510298=>({'id':_0x510298['id'],'label':_0x510298['label']}))}]},_0x45ccd3=mutationResult({'operation':'regroup-start','selector':{'label':_0x4cf48e,'menuIds':_0x29f124},'before':{'menus':_0x365d14},'after':{'group':{'id':null,'parentId':null,'label':_0x4cf48e,'path':_0x595dbb(0x178),'type':'folder','childrenIds':_0x29f124},'children':_0x365d14[_0x595dbb(0x160)](_0x2d3e43=>({'id':_0x2d3e43['id'],'label':_0x2d3e43[_0x595dbb(0x156)],'beforeParentId':_0x2d3e43[_0x595dbb(0x144)],'afterParentId':_0x595dbb(0x12a)}))},'dryRun':_0x20de86,'backend':[...BACKEND],'plannedActions':[{'stage':_0x595dbb(0x163),'method':_0x595dbb(0x17c),'path':'/smartapi/menu/regroup','body':_0x5c7ec1}],'snapshotHash':_0x49d63e[_0x595dbb(0x13d)],'warnings':[_0x595dbb(0x181),_0x595dbb(0x14a)]});return{'label':_0x4cf48e,'menuIds':_0x29f124,'input':_0x5c7ec1,'plan':_0x45ccd3};}function findAppliedRegroup(_0x33d7a6,_0x2f0389,_0x398306){const _0x134edb=a117_0x28943b,_0x21a2a2=_0x398306['map'](_0x2ad49b=>_0x33d7a6[_0x134edb(0x134)][_0x134edb(0x162)](_0x2ad49b))[_0x134edb(0x128)](_0x3f72c6=>Boolean(_0x3f72c6));if(_0x21a2a2['length']!==_0x398306[_0x134edb(0x129)])return null;const _0x1412fa=_0x21a2a2[0x0]?.['parentId'];if(_0x1412fa==null||_0x21a2a2['some'](_0x1f388a=>_0x1f388a[_0x134edb(0x144)]!==_0x1412fa))return null;const _0xc399de=_0x33d7a6[_0x134edb(0x134)][_0x134edb(0x162)](_0x1412fa);if(!_0xc399de||_0xc399de[_0x134edb(0x144)]!=null||_0xc399de['type']['trim']()['toLowerCase']()!==_0x134edb(0x175)||_0xc399de[_0x134edb(0x156)]!==_0x2f0389)return null;const _0x2ea522=[..._0x398306][_0x134edb(0x16e)]((_0x25fd0d,_0x3adc0e)=>_0x25fd0d-_0x3adc0e),_0xcbde48=[..._0xc399de['childrenIds']]['sort']((_0x98630d,_0x3155b5)=>_0x98630d-_0x3155b5);if(JSON[_0x134edb(0x148)](_0xcbde48)!==JSON[_0x134edb(0x148)](_0x2ea522))return null;return{'group':_0xc399de,'children':_0x21a2a2};}async function inspectRegroupAfterFailure(_0x19e4c8,_0x370829,_0x2d36eb,_0x2ea01b){const _0x55d6fd=a117_0x28943b;try{const _0x5ac9f4=await fetchMenuSnapshot(_0x19e4c8,_0x370829);return{'applied':findAppliedRegroup(_0x5ac9f4,_0x2d36eb,_0x2ea01b),'readbackError':null};}catch(_0x3ca602){return{'applied':null,'readbackError':_0x3ca602 instanceof Error?_0x3ca602[_0x55d6fd(0x166)]:String(_0x3ca602)};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a111_0x578e2b=a111_0x2ecc;(function(_0x48a1ca,_0x1d15bf){const _0x570b95=a111_0x2ecc,_0x5d46b5=_0x48a1ca();while(!![]){try{const _0x2df1c4=parseInt(_0x570b95(0x1a5))/0x1*(parseInt(_0x570b95(0x18e))/0x2)+-parseInt(_0x570b95(0x182))/0x3+parseInt(_0x570b95(0x166))/0x4*(-parseInt(_0x570b95(0x17c))/0x5)+-parseInt(_0x570b95(0x186))/0x6*(parseInt(_0x570b95(0x19d))/0x7)+-parseInt(_0x570b95(0x175))/0x8*(parseInt(_0x570b95(0x1ad))/0x9)+-parseInt(_0x570b95(0x18a))/0xa+parseInt(_0x570b95(0x19e))/0xb;if(_0x2df1c4===_0x1d15bf)break;else _0x5d46b5['push'](_0x5d46b5['shift']());}catch(_0x2cec20){_0x5d46b5['push'](_0x5d46b5['shift']());}}}(a111_0x3041,0x20126));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,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a111_0x578e2b(0x1a1),'path':'/smartapi/menu/update'}];export const menuRename={'service':a111_0x578e2b(0x195),'command':a111_0x578e2b(0x1a6),'description':a111_0x578e2b(0x174),'risk':a111_0x578e2b(0x16a),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a111_0x578e2b(0x162),'type':a111_0x578e2b(0x168),'required':!![],'description':a111_0x578e2b(0x16f)},{'name':a111_0x578e2b(0x1b7),'type':'string','required':!![],'description':a111_0x578e2b(0x1b0)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5ba57f){validateInput(_0x5ba57f),requireExplicitYes(_0x5ba57f);},async 'dryRun'(_0x19d81e){const _0x518fbe=a111_0x578e2b;validateInput(_0x19d81e);const _0x2873e0=await buildPlan(_0x19d81e,!![]);return menuDryRunResult(_0x2873e0[_0x518fbe(0x178)],{'method':_0x518fbe(0x1a1),'url':_0x518fbe(0x1ac),'body':_0x2873e0[_0x518fbe(0x1af)],'description':_0x518fbe(0x19f)+_0x2873e0[_0x518fbe(0x1af)]['id']+'.'});},async 'execute'(_0x131e29){const _0x57cec9=a111_0x578e2b;validateInput(_0x131e29),requireExplicitYes(_0x131e29);const _0x70fe22=await buildPlan(_0x131e29,![]),{plan:_0x560aad,body:_0x20e621,before:_0x39a02f,noChanges:_0x2df9dd}=_0x70fe22,_0x183b78=_0x20e621['id'];if(_0x2df9dd)return renameSuccess(_0x560aad,_0x70fe22[_0x57cec9(0x193)],_0x39a02f,!![],![]);await recheckMutationSnapshot(_0x131e29,_0x560aad,_0x57cec9(0x190),_0x183b78);try{await updateMenuEntity(_0x131e29['appCode'],_0x131e29[_0x57cec9(0x1ae)],{'id':_0x183b78,'label':_0x20e621[_0x57cec9(0x162)]});}catch(_0x354dba){const _0x2060bb=mapMenuApiError(_0x354dba,_0x57cec9(0x1a6),_0x183b78);if(isMenuResponseLoss(_0x354dba)&&_0x2060bb['code']!==_0x57cec9(0x16e))return recoverAfterResponseLoss(_0x131e29,_0x70fe22);throw menuFailure(_0x2060bb,_0x560aad,{'stage':_0x57cec9(0x164),'failed':{'id':_0x183b78},'warnings':[_0x57cec9(0x1b3)],'verification':{'status':_0x57cec9(0x194),'targetId':_0x183b78,'lookupCommand':buildLookupCommand(_0x131e29[_0x57cec9(0x169)])}});}let _0x144a52,_0x6c0a54;try{_0x144a52=await fetchMenuSnapshot(_0x131e29['appCode'],_0x131e29['cookie']),_0x6c0a54=requireMenu(_0x144a52,_0x183b78),verifyRenamedFact(_0x39a02f,_0x6c0a54,_0x20e621[_0x57cec9(0x162)]);}catch(_0x8ba3e){const _0x230a64=describeMenuErrorCause(_0x8ba3e,_0x57cec9(0x17d),_0x183b78),_0x53cc38=asVerificationError(_0x8ba3e,'Rename\x20request\x20for\x20menu\x20'+_0x183b78+_0x57cec9(0x18c));throw menuFailure(_0x53cc38,_0x560aad,{'stage':_0x57cec9(0x1a8),'succeeded':[{'id':_0x183b78,'updateRequested':!![]}],'failed':{'id':_0x183b78,'requestedStateConfirmed':![],..._0x230a64},'warnings':[_0x57cec9(0x167)],'verification':{'status':_0x57cec9(0x194),'targetId':_0x183b78,'lookupCommand':buildLookupCommand(_0x131e29['appCode'])}});}return renameSuccess(_0x560aad,_0x144a52,_0x6c0a54,![],![]);}};function validateInput(_0x2cf62f){const _0x2c9e36=a111_0x578e2b;validateExactId(_0x2cf62f);if(!_0x2cf62f[_0x2c9e36(0x177)]('label')['trim']())throw CliErrors[_0x2c9e36(0x19b)](_0x2c9e36(0x197));if(!_0x2cf62f[_0x2c9e36(0x177)](_0x2c9e36(0x1b7))[_0x2c9e36(0x181)]())throw CliErrors['flagMissing'](_0x2c9e36(0x1b7));}function a111_0x2ecc(_0x24c8ad,_0x1139fb){_0x24c8ad=_0x24c8ad-0x162;const _0x304115=a111_0x3041();let _0x2ecc8d=_0x304115[_0x24c8ad];return _0x2ecc8d;}async function buildPlan(_0x53bbb3,_0x44f1be){const _0x12def3=a111_0x578e2b,_0x1b8904=validateExactId(_0x53bbb3),_0x1cf5a0=_0x53bbb3[_0x12def3(0x177)]('label')['trim'](),_0x3b2cd2=_0x53bbb3[_0x12def3(0x177)](_0x12def3(0x1b7)),_0x45183c=await fetchMutationSnapshot(_0x53bbb3,'rename\x20menu',_0x1b8904),_0x3d64c8=requireMenu(_0x45183c,_0x1b8904);if(_0x3d64c8['label']!==_0x3b2cd2)throw menuError('menu_state_drift',_0x12def3(0x172)+_0x1b8904+_0x12def3(0x165)+JSON[_0x12def3(0x17f)](_0x3b2cd2)+_0x12def3(0x189)+JSON[_0x12def3(0x17f)](_0x3d64c8[_0x12def3(0x162)])+'.',_0x12def3(0x1a7));const _0x546571={'id':_0x1b8904,'appCode':_0x53bbb3['appCode'],'label':_0x1cf5a0},_0x5596ee={..._0x3d64c8,'label':_0x1cf5a0},_0x598d83=_0x3d64c8[_0x12def3(0x162)]===_0x1cf5a0,_0x123ab2=_0x598d83?[]:[{'stage':_0x12def3(0x196),'method':_0x12def3(0x1a1),'path':_0x12def3(0x1ac),'body':_0x546571}];return{'snapshot':_0x45183c,'before':_0x3d64c8,'body':_0x546571,'noChanges':_0x598d83,'plan':mutationResult({'operation':_0x12def3(0x1a6),'selector':{'id':_0x1b8904},'before':_0x3d64c8,'after':_0x5596ee,'dryRun':_0x44f1be,'backend':[...BACKEND],'plannedActions':_0x123ab2,'snapshotHash':_0x45183c[_0x12def3(0x18d)],'warnings':_0x598d83?[_0x12def3(0x1ab)]:[]})};}function verifyRenamedFact(_0x27bdd6,_0x9d3de9,_0x5bb6b5){const _0xd7a5ba=a111_0x578e2b,_0x37b4a3=[['id',_0x9d3de9['id'],_0x27bdd6['id']],['parentId',_0x9d3de9['parentId'],_0x27bdd6[_0xd7a5ba(0x184)]],[_0xd7a5ba(0x17e),_0x9d3de9[_0xd7a5ba(0x17e)],_0x27bdd6[_0xd7a5ba(0x17e)]],[_0xd7a5ba(0x1a0),_0x9d3de9[_0xd7a5ba(0x1a0)],_0x27bdd6[_0xd7a5ba(0x1a0)]],[_0xd7a5ba(0x1b5),_0x9d3de9[_0xd7a5ba(0x1b5)],_0x27bdd6[_0xd7a5ba(0x1b5)]],['type',_0x9d3de9['type'],_0x27bdd6[_0xd7a5ba(0x17b)]],[_0xd7a5ba(0x19c),_0x9d3de9[_0xd7a5ba(0x19c)],_0x27bdd6[_0xd7a5ba(0x19c)]],[_0xd7a5ba(0x198),_0x9d3de9[_0xd7a5ba(0x198)],_0x27bdd6[_0xd7a5ba(0x198)]],['resources',_0x9d3de9['resources'],_0x27bdd6[_0xd7a5ba(0x1a2)]],[_0xd7a5ba(0x1a4),_0x9d3de9[_0xd7a5ba(0x1a4)],_0x27bdd6['resourcesValid']],['childrenIds',_0x9d3de9[_0xd7a5ba(0x179)],_0x27bdd6[_0xd7a5ba(0x179)]],['childrenCount',_0x9d3de9['childrenCount'],_0x27bdd6[_0xd7a5ba(0x192)]],[_0xd7a5ba(0x170),_0x9d3de9['pageId'],_0x27bdd6[_0xd7a5ba(0x170)]],['pageType',_0x9d3de9[_0xd7a5ba(0x16b)],_0x27bdd6[_0xd7a5ba(0x16b)]],[_0xd7a5ba(0x187),_0x9d3de9['modelType'],_0x27bdd6[_0xd7a5ba(0x187)]],[_0xd7a5ba(0x183),_0x9d3de9[_0xd7a5ba(0x183)],_0x27bdd6[_0xd7a5ba(0x183)]],[_0xd7a5ba(0x16c),_0x9d3de9[_0xd7a5ba(0x16c)],_0x27bdd6[_0xd7a5ba(0x16c)]]];for(const [_0x576b92,_0x54ec89,_0x459026]of _0x37b4a3){assertVerified(sameValue(_0x54ec89,_0x459026),_0xd7a5ba(0x172)+_0x27bdd6['id']+'\x20'+_0x576b92+_0xd7a5ba(0x19a));}assertVerified(_0x9d3de9[_0xd7a5ba(0x162)]===_0x5bb6b5,_0xd7a5ba(0x172)+_0x27bdd6['id']+'\x20label\x20update\x20did\x20not\x20take\x20effect.');}function sameValue(_0x34e600,_0xa27ea4){const _0x931c4a=a111_0x578e2b;if(Array[_0x931c4a(0x1b6)](_0x34e600)||Array['isArray'](_0xa27ea4))return JSON[_0x931c4a(0x17f)](_0x34e600)===JSON[_0x931c4a(0x17f)](_0xa27ea4);return _0x34e600===_0xa27ea4;}function renameSuccess(_0x409708,_0x7d0620,_0x309c6f,_0x1bbaff,_0x589cd3){const _0x578059=a111_0x578e2b,_0x25131b=_0x309c6f['id'],_0xd8b20e=mutationResult({..._0x409708,'after':_0x309c6f,'dryRun':![],'succeeded':[{'id':_0x25131b,'updated':!_0x1bbaff,'skipped':_0x1bbaff,'recovered':_0x589cd3}],'verification':{'checkedBy':_0x578059(0x188),'snapshotHash':_0x7d0620[_0x578059(0x18d)],'targetId':_0x25131b,'matchesRequestedState':!![],'recovered':_0x589cd3}});return{'ok':!![],'message':_0x589cd3?_0x578059(0x16d)+_0x25131b+'.':_0x1bbaff?'Menu\x20'+_0x25131b+'\x20already\x20has\x20the\x20requested\x20label.':_0x578059(0x1a9)+_0x25131b+'.','data':{..._0xd8b20e,'recovered':_0x589cd3}};}async function recoverAfterResponseLoss(_0x2aa059,_0xcb8a7e){const _0x2c8d12=a111_0x578e2b,{plan:_0x7295de,before:_0x328fbe,body:_0x2dbd7a}=_0xcb8a7e;let _0x24babf;try{_0x24babf=await fetchMenuSnapshot(_0x2aa059[_0x2c8d12(0x169)],_0x2aa059[_0x2c8d12(0x1ae)]);}catch{throw recoveryRequired(_0x7295de,_0x2aa059['appCode'],{'id':_0x2dbd7a['id'],'readbackFailed':!![]});}const _0x4c49df=_0x24babf[_0x2c8d12(0x18f)][_0x2c8d12(0x180)](_0x2dbd7a['id']);if(!_0x4c49df||_0x4c49df['label']!==_0x2dbd7a[_0x2c8d12(0x162)])throw recoveryRequired(_0x7295de,_0x2aa059['appCode'],{'id':_0x2dbd7a['id'],'requestedLabelObserved':![],'after':_0x4c49df??null});try{verifyRenamedFact(_0x328fbe,_0x4c49df,_0x2dbd7a[_0x2c8d12(0x162)]);}catch(_0x5aa5e6){const _0x2745f2=asVerificationError(_0x5aa5e6,_0x2c8d12(0x171)+_0x2dbd7a['id']+_0x2c8d12(0x1a3));throw menuFailure(_0x2745f2,_0x7295de,{'stage':_0x2c8d12(0x173),'succeeded':[{'id':_0x2dbd7a['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x2dbd7a['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x4c49df,'warnings':['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x2c8d12(0x194),'targetId':_0x2dbd7a['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x2aa059[_0x2c8d12(0x169)])}});}return renameSuccess(_0x7295de,_0x24babf,_0x4c49df,![],!![]);}function recoveryRequired(_0x391a8f,_0x4c04fb,_0x162d07){const _0x49c8ab=a111_0x578e2b,_0x5024e3=menuError(_0x49c8ab(0x17a),_0x49c8ab(0x1b2),'Run\x20'+buildLookupCommand(_0x4c04fb)+_0x49c8ab(0x185));return menuFailure(_0x5024e3,_0x391a8f,{'stage':_0x49c8ab(0x173),'failed':{'id':_0x162d07['id'],..._0x162d07['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x162d07['requestedLabelObserved']},..._0x162d07[_0x49c8ab(0x199)]?{'readbackFailed':!![]}:{}},'after':_0x162d07[_0x49c8ab(0x1b1)],'warnings':[_0x49c8ab(0x1aa)],'verification':{'status':'failed','targetId':_0x162d07['id'],..._0x162d07[_0x49c8ab(0x163)]===undefined?{}:{'requestedLabelObserved':_0x162d07[_0x49c8ab(0x163)]},..._0x162d07[_0x49c8ab(0x199)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x4c04fb)}});}function buildLookupCommand(_0x1dcabb){const _0x1ec9b5=a111_0x578e2b,_0x14fe84='\x27'+_0x1dcabb[_0x1ec9b5(0x18b)](/'/g,_0x1ec9b5(0x176))+'\x27';return _0x1ec9b5(0x191)+_0x14fe84+_0x1ec9b5(0x1b4);}function a111_0x3041(){const _0x512ee3=['byId','rename\x20menu','rabetbase\x20menu\x20list\x20--appcode\x20','childrenCount','snapshot','failed','menu','rename-menu','--label\x20cannot\x20be\x20empty.','sort','readbackFailed','\x20changed\x20during\x20the\x20label-only\x20rename.','validation','visible','910007AFtSVg','5237441zBWhsd','Would\x20rename\x20menu\x20','path','POST','resources','\x20could\x20not\x20be\x20verified\x20safely','resourcesValid','5794fOEzDW','rename','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','verification','Renamed\x20menu\x20','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','/smartapi/menu/update','9DyhyFU','cookie','body','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','after','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20--format\x20compress','url','isArray','expect-label','label','requestedLabelObserved','update','\x20label\x20changed:\x20expected\x20','75388yfAelM','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','string','appCode','high-risk-write','pageType','datasetCode','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','menu_permission_denied','New\x20menu\x20label','pageId','Response\x20was\x20lost\x20and\x20menu\x20','Menu\x20','update-recovery','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','143656KSuDpm','\x27\x5c\x27\x27','str','plan','childrenIds','menu_update_recovery_required','type','5VLTtub','verify\x20menu\x20rename','depth','stringify','get','trim','381891QzshZd','datasetId','parentId','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','12WfLDgj','modelType','menu\x20list',',\x20current\x20','1350400cNIFAZ','replace','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','hash','74xRYHbS'];a111_0x3041=function(){return _0x512ee3;};return a111_0x3041();}
|
|
1
|
+
const a118_0x5c93f5=a118_0x2ee6;(function(_0x5951f2,_0x597ce7){const _0xd13fcb=a118_0x2ee6,_0x34bf1d=_0x5951f2();while(!![]){try{const _0x19ffab=parseInt(_0xd13fcb(0xd5))/0x1+parseInt(_0xd13fcb(0x100))/0x2*(-parseInt(_0xd13fcb(0xe9))/0x3)+parseInt(_0xd13fcb(0xc3))/0x4+parseInt(_0xd13fcb(0xeb))/0x5+-parseInt(_0xd13fcb(0xe5))/0x6+parseInt(_0xd13fcb(0xee))/0x7+-parseInt(_0xd13fcb(0x101))/0x8*(-parseInt(_0xd13fcb(0xdc))/0x9);if(_0x19ffab===_0x597ce7)break;else _0x34bf1d['push'](_0x34bf1d['shift']());}catch(_0x20e0aa){_0x34bf1d['push'](_0x34bf1d['shift']());}}}(a118_0x20dd,0xdccaa));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,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';function a118_0x2ee6(_0x4e1030,_0x1c8d8a){_0x4e1030=_0x4e1030-0xb7;const _0x20ddf2=a118_0x20dd();let _0x2ee6eb=_0x20ddf2[_0x4e1030];return _0x2ee6eb;}function a118_0x20dd(){const _0x21ffb=['menu_update_recovery_required','1375815GrHCud','trim','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','update-recovery','datasetId','depth','label','visible','appCode','datasetCode','parentId','str','failed','POST','validation','\x20could\x20not\x20be\x20verified\x20safely','New\x20menu\x20label','rename','235226WBkGPw','8sbfnzG','menu_state_drift','type','cookie','childrenCount','update','--label\x20cannot\x20be\x20empty.','readbackFailed','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','\x20already\x20has\x20the\x20requested\x20label.','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','\x20label\x20changed:\x20expected\x20','\x20--format\x20compress','pageId','Renamed\x20menu\x20','code','stringify','3794216nLhfsW','Response\x20was\x20lost\x20and\x20menu\x20','menu\x20list','rename\x20menu','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','high-risk-write','replace','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','Menu\x20','\x20changed\x20during\x20the\x20label-only\x20rename.','url','snapshot','Would\x20rename\x20menu\x20','hash','verify\x20menu\x20rename','pageType','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','string','1235tAMBwF','path','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','modelType','verification','Rename\x20request\x20for\x20menu\x20','8620812eZeeLi','expect-label','Run\x20','rabetbase\x20menu\x20list\x20--appcode\x20',',\x20current\x20','body','\x20label\x20update\x20did\x20not\x20take\x20effect.','requestedLabelObserved','/smartapi/menu/update','5829918LSFdjH','sort','childrenIds','resourcesValid','12YhMQtz','resources','1211325UQpvwG','rename-menu'];a118_0x20dd=function(){return _0x21ffb;};return a118_0x20dd();}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a118_0x5c93f5(0xfb),'path':a118_0x5c93f5(0xe4)}];export const menuRename={'service':'menu','command':a118_0x5c93f5(0xff),'description':a118_0x5c93f5(0xd3),'risk':a118_0x5c93f5(0xc8),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a118_0x5c93f5(0xf4),'type':a118_0x5c93f5(0xd4),'required':!![],'description':a118_0x5c93f5(0xfe)},{'name':a118_0x5c93f5(0xdd),'type':'string','required':!![],'description':a118_0x5c93f5(0xbc)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x354fcb){validateInput(_0x354fcb),requireExplicitYes(_0x354fcb);},async 'dryRun'(_0x3d68db){const _0x5a00e5=a118_0x5c93f5;validateInput(_0x3d68db);const _0x11f516=await buildPlan(_0x3d68db,!![]);return menuDryRunResult(_0x11f516['plan'],{'method':_0x5a00e5(0xfb),'url':'/smartapi/menu/update','body':_0x11f516[_0x5a00e5(0xe1)],'description':_0x5a00e5(0xcf)+_0x11f516[_0x5a00e5(0xe1)]['id']+'.'});},async 'execute'(_0x2fa109){const _0x3e12ab=a118_0x5c93f5;validateInput(_0x2fa109),requireExplicitYes(_0x2fa109);const _0x30a271=await buildPlan(_0x2fa109,![]),{plan:_0x522eb0,body:_0x3e01d5,before:_0x40355f,noChanges:_0x38f11d}=_0x30a271,_0x186488=_0x3e01d5['id'];if(_0x38f11d)return renameSuccess(_0x522eb0,_0x30a271[_0x3e12ab(0xce)],_0x40355f,!![],![]);await recheckMutationSnapshot(_0x2fa109,_0x522eb0,_0x3e12ab(0xc6),_0x186488);try{await updateMenuEntity(_0x2fa109[_0x3e12ab(0xf6)],_0x2fa109['cookie'],{'id':_0x186488,'label':_0x3e01d5[_0x3e12ab(0xf4)]});}catch(_0x5cf8a8){const _0x4920ef=mapMenuApiError(_0x5cf8a8,'rename',_0x186488);if(isMenuResponseLoss(_0x5cf8a8)&&_0x4920ef[_0x3e12ab(0xc1)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x2fa109,_0x30a271);throw menuFailure(_0x4920ef,_0x522eb0,{'stage':_0x3e12ab(0xb7),'failed':{'id':_0x186488},'warnings':['The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x186488,'lookupCommand':buildLookupCommand(_0x2fa109['appCode'])}});}let _0x263550,_0x52541d;try{_0x263550=await fetchMenuSnapshot(_0x2fa109[_0x3e12ab(0xf6)],_0x2fa109[_0x3e12ab(0x104)]),_0x52541d=requireMenu(_0x263550,_0x186488),verifyRenamedFact(_0x40355f,_0x52541d,_0x3e01d5[_0x3e12ab(0xf4)]);}catch(_0x45de3f){const _0x51ecd2=describeMenuErrorCause(_0x45de3f,_0x3e12ab(0xd1),_0x186488),_0x339fcf=asVerificationError(_0x45de3f,_0x3e12ab(0xdb)+_0x186488+_0x3e12ab(0xba));throw menuFailure(_0x339fcf,_0x522eb0,{'stage':_0x3e12ab(0xda),'succeeded':[{'id':_0x186488,'updateRequested':!![]}],'failed':{'id':_0x186488,'requestedStateConfirmed':![],..._0x51ecd2},'warnings':['The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x3e12ab(0xfa),'targetId':_0x186488,'lookupCommand':buildLookupCommand(_0x2fa109[_0x3e12ab(0xf6)])}});}return renameSuccess(_0x522eb0,_0x263550,_0x52541d,![],![]);}};function validateInput(_0x4eb65a){const _0x53a8d4=a118_0x5c93f5;validateExactId(_0x4eb65a);if(!_0x4eb65a['str'](_0x53a8d4(0xf4))[_0x53a8d4(0xef)]())throw CliErrors[_0x53a8d4(0xfc)](_0x53a8d4(0xb8));if(!_0x4eb65a['str'](_0x53a8d4(0xdd))[_0x53a8d4(0xef)]())throw CliErrors['flagMissing'](_0x53a8d4(0xdd));}async function buildPlan(_0x366818,_0x23b9b4){const _0x1f43ae=a118_0x5c93f5,_0x189264=validateExactId(_0x366818),_0x4ef4e9=_0x366818[_0x1f43ae(0xf9)](_0x1f43ae(0xf4))['trim'](),_0x38a90f=_0x366818[_0x1f43ae(0xf9)]('expect-label'),_0x56da1e=await fetchMutationSnapshot(_0x366818,_0x1f43ae(0xc6),_0x189264),_0x268051=requireMenu(_0x56da1e,_0x189264);if(_0x268051['label']!==_0x38a90f)throw menuError(_0x1f43ae(0x102),_0x1f43ae(0xcb)+_0x189264+_0x1f43ae(0xbd)+JSON[_0x1f43ae(0xc2)](_0x38a90f)+_0x1f43ae(0xe0)+JSON[_0x1f43ae(0xc2)](_0x268051[_0x1f43ae(0xf4)])+'.',_0x1f43ae(0xc7));const _0x19fe7f={'id':_0x189264,'appCode':_0x366818[_0x1f43ae(0xf6)],'label':_0x4ef4e9},_0x2a1ba9={..._0x268051,'label':_0x4ef4e9},_0xb6b7e=_0x268051[_0x1f43ae(0xf4)]===_0x4ef4e9,_0x4b9407=_0xb6b7e?[]:[{'stage':_0x1f43ae(0xec),'method':'POST','path':_0x1f43ae(0xe4),'body':_0x19fe7f}];return{'snapshot':_0x56da1e,'before':_0x268051,'body':_0x19fe7f,'noChanges':_0xb6b7e,'plan':mutationResult({'operation':_0x1f43ae(0xff),'selector':{'id':_0x189264},'before':_0x268051,'after':_0x2a1ba9,'dryRun':_0x23b9b4,'backend':[...BACKEND],'plannedActions':_0x4b9407,'snapshotHash':_0x56da1e[_0x1f43ae(0xd0)],'warnings':_0xb6b7e?[_0x1f43ae(0xf0)]:[]})};}function verifyRenamedFact(_0x3bb1cc,_0x1cf599,_0xa87588){const _0x481ec8=a118_0x5c93f5,_0x5ec374=[['id',_0x1cf599['id'],_0x3bb1cc['id']],['parentId',_0x1cf599[_0x481ec8(0xf8)],_0x3bb1cc['parentId']],[_0x481ec8(0xf3),_0x1cf599[_0x481ec8(0xf3)],_0x3bb1cc[_0x481ec8(0xf3)]],[_0x481ec8(0xd6),_0x1cf599[_0x481ec8(0xd6)],_0x3bb1cc[_0x481ec8(0xd6)]],[_0x481ec8(0xcd),_0x1cf599[_0x481ec8(0xcd)],_0x3bb1cc[_0x481ec8(0xcd)]],[_0x481ec8(0x103),_0x1cf599['type'],_0x3bb1cc[_0x481ec8(0x103)]],[_0x481ec8(0xf5),_0x1cf599[_0x481ec8(0xf5)],_0x3bb1cc[_0x481ec8(0xf5)]],[_0x481ec8(0xe6),_0x1cf599['sort'],_0x3bb1cc[_0x481ec8(0xe6)]],[_0x481ec8(0xea),_0x1cf599['resources'],_0x3bb1cc[_0x481ec8(0xea)]],[_0x481ec8(0xe8),_0x1cf599[_0x481ec8(0xe8)],_0x3bb1cc['resourcesValid']],[_0x481ec8(0xe7),_0x1cf599[_0x481ec8(0xe7)],_0x3bb1cc['childrenIds']],[_0x481ec8(0x105),_0x1cf599[_0x481ec8(0x105)],_0x3bb1cc[_0x481ec8(0x105)]],[_0x481ec8(0xbf),_0x1cf599[_0x481ec8(0xbf)],_0x3bb1cc[_0x481ec8(0xbf)]],[_0x481ec8(0xd2),_0x1cf599[_0x481ec8(0xd2)],_0x3bb1cc[_0x481ec8(0xd2)]],[_0x481ec8(0xd9),_0x1cf599[_0x481ec8(0xd9)],_0x3bb1cc['modelType']],[_0x481ec8(0xf2),_0x1cf599['datasetId'],_0x3bb1cc[_0x481ec8(0xf2)]],['datasetCode',_0x1cf599[_0x481ec8(0xf7)],_0x3bb1cc['datasetCode']]];for(const [_0x3d94fc,_0x16c238,_0x35ba56]of _0x5ec374){assertVerified(sameValue(_0x16c238,_0x35ba56),'Menu\x20'+_0x3bb1cc['id']+'\x20'+_0x3d94fc+_0x481ec8(0xcc));}assertVerified(_0x1cf599[_0x481ec8(0xf4)]===_0xa87588,'Menu\x20'+_0x3bb1cc['id']+_0x481ec8(0xe2));}function sameValue(_0x4f537f,_0x2802c3){const _0x5956f0=a118_0x5c93f5;if(Array['isArray'](_0x4f537f)||Array['isArray'](_0x2802c3))return JSON[_0x5956f0(0xc2)](_0x4f537f)===JSON[_0x5956f0(0xc2)](_0x2802c3);return _0x4f537f===_0x2802c3;}function renameSuccess(_0x52b22d,_0x3fd49f,_0x55a1ba,_0x508f55,_0x2e8311){const _0x5110c6=a118_0x5c93f5,_0x14944a=_0x55a1ba['id'],_0x979a17=mutationResult({..._0x52b22d,'after':_0x55a1ba,'dryRun':![],'succeeded':[{'id':_0x14944a,'updated':!_0x508f55,'skipped':_0x508f55,'recovered':_0x2e8311}],'verification':{'checkedBy':_0x5110c6(0xc5),'snapshotHash':_0x3fd49f[_0x5110c6(0xd0)],'targetId':_0x14944a,'matchesRequestedState':!![],'recovered':_0x2e8311}});return{'ok':!![],'message':_0x2e8311?_0x5110c6(0xd8)+_0x14944a+'.':_0x508f55?'Menu\x20'+_0x14944a+_0x5110c6(0xbb):_0x5110c6(0xc0)+_0x14944a+'.','data':{..._0x979a17,'recovered':_0x2e8311}};}async function recoverAfterResponseLoss(_0x438861,_0xc239c0){const _0x51e650=a118_0x5c93f5,{plan:_0x2bcb5b,before:_0x201a88,body:_0x1ef7ba}=_0xc239c0;let _0x4f2729;try{_0x4f2729=await fetchMenuSnapshot(_0x438861[_0x51e650(0xf6)],_0x438861[_0x51e650(0x104)]);}catch{throw recoveryRequired(_0x2bcb5b,_0x438861[_0x51e650(0xf6)],{'id':_0x1ef7ba['id'],'readbackFailed':!![]});}const _0x51943b=_0x4f2729['byId']['get'](_0x1ef7ba['id']);if(!_0x51943b||_0x51943b[_0x51e650(0xf4)]!==_0x1ef7ba[_0x51e650(0xf4)])throw recoveryRequired(_0x2bcb5b,_0x438861['appCode'],{'id':_0x1ef7ba['id'],'requestedLabelObserved':![],'after':_0x51943b??null});try{verifyRenamedFact(_0x201a88,_0x51943b,_0x1ef7ba[_0x51e650(0xf4)]);}catch(_0x1a409f){const _0x2a33e2=asVerificationError(_0x1a409f,_0x51e650(0xc4)+_0x1ef7ba['id']+_0x51e650(0xfd));throw menuFailure(_0x2a33e2,_0x2bcb5b,{'stage':_0x51e650(0xf1),'succeeded':[{'id':_0x1ef7ba['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1ef7ba['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x51943b,'warnings':[_0x51e650(0xd7)],'verification':{'status':'failed','targetId':_0x1ef7ba['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x438861[_0x51e650(0xf6)])}});}return renameSuccess(_0x2bcb5b,_0x4f2729,_0x51943b,![],!![]);}function recoveryRequired(_0x3bcdfa,_0x43c088,_0x53d617){const _0x321698=a118_0x5c93f5,_0x7fc63b=menuError(_0x321698(0xed),'The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.',_0x321698(0xde)+buildLookupCommand(_0x43c088)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x7fc63b,_0x3bcdfa,{'stage':_0x321698(0xf1),'failed':{'id':_0x53d617['id'],..._0x53d617[_0x321698(0xe3)]===undefined?{}:{'requestedLabelObserved':_0x53d617['requestedLabelObserved']},..._0x53d617[_0x321698(0xb9)]?{'readbackFailed':!![]}:{}},'after':_0x53d617['after'],'warnings':[_0x321698(0xca)],'verification':{'status':_0x321698(0xfa),'targetId':_0x53d617['id'],..._0x53d617[_0x321698(0xe3)]===undefined?{}:{'requestedLabelObserved':_0x53d617['requestedLabelObserved']},..._0x53d617['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x43c088)}});}function buildLookupCommand(_0x370201){const _0x2c66bf=a118_0x5c93f5,_0x1e63a9='\x27'+_0x370201[_0x2c66bf(0xc9)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x2c66bf(0xdf)+_0x1e63a9+_0x2c66bf(0xbe);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1555cb,_0x4686cf){const _0x2d933a=a119_0x5404,_0x276974=_0x1555cb();while(!![]){try{const _0x58ffd4=parseInt(_0x2d933a(0x1c5))/0x1+parseInt(_0x2d933a(0x1c9))/0x2*(-parseInt(_0x2d933a(0x1e1))/0x3)+parseInt(_0x2d933a(0x1e0))/0x4+parseInt(_0x2d933a(0x1de))/0x5+-parseInt(_0x2d933a(0x1ca))/0x6*(parseInt(_0x2d933a(0x1d1))/0x7)+parseInt(_0x2d933a(0x1d7))/0x8*(parseInt(_0x2d933a(0x1cb))/0x9)+parseInt(_0x2d933a(0x1e5))/0xa;if(_0x58ffd4===_0x4686cf)break;else _0x276974['push'](_0x276974['shift']());}catch(_0x22e9e2){_0x276974['push'](_0x276974['shift']());}}}(a119_0x4740,0xb0c9c));function a119_0x5404(_0x2c1b74,_0x29e325){_0x2c1b74=_0x2c1b74-0x1c5;const _0x47409a=a119_0x4740();let _0x5404db=_0x47409a[_0x2c1b74];return _0x5404db;}function strWidth(_0x378f64){const _0x26bc8b=a119_0x5404;let _0xda86df=0x0;for(const _0x1d3be5 of _0x378f64){_0xda86df+=/[\u4e00-\u9fa5]/[_0x26bc8b(0x1d9)](_0x1d3be5)?0x2:0x1;}return _0xda86df;}function padRight(_0x329084,_0x21d860){const _0x24b994=a119_0x5404,_0x5c6185=strWidth(_0x329084);return _0x329084+'\x20'[_0x24b994(0x1d4)](Math[_0x24b994(0x1d3)](0x0,_0x21d860-_0x5c6185));}export function renderCompareTable(_0x5eef02,_0x3477d5={}){const _0xe969cf=a119_0x5404;if(_0x5eef02['length']===0x0)return'';const _0x20f6dc=_0x3477d5['showOnline']??!![],_0x45820e=Math[_0xe969cf(0x1d3)](0x1e,..._0x5eef02[_0xe969cf(0x1cd)](_0x533608=>strWidth(_0x533608[_0xe969cf(0x1dc)]))),_0x434ba1=Math[_0xe969cf(0x1d3)](0x18,..._0x5eef02[_0xe969cf(0x1cd)](_0x1ac6eb=>strWidth(_0x1ac6eb[_0xe969cf(0x1d6)]))),_0x4d59ee=0x4,_0x321895=[],_0x57cf5c='\x20\x20'+padRight(_0xe969cf(0x1db),_0x45820e),_0x736af2=padRight(_0xe969cf(0x1c8),_0x434ba1),_0x33928a=padRight(_0xe969cf(0x1d0),_0x4d59ee),_0x38f2b0=_0x20f6dc?'\x20\x20'+padRight(_0xe969cf(0x1e2),_0x4d59ee):'';_0x321895[_0xe969cf(0x1ce)](_0x57cf5c+'\x20\x20'+_0x736af2+'\x20\x20'+_0x33928a+(_0x20f6dc?_0x38f2b0:'')),_0x321895[_0xe969cf(0x1ce)]('\x20\x20'+'─'['repeat'](_0x45820e)+'\x20\x20'+'─'[_0xe969cf(0x1d4)](_0x434ba1)+'\x20\x20'+'─'[_0xe969cf(0x1d4)](_0x4d59ee)+(_0x20f6dc?'\x20\x20'+'─'['repeat'](_0x4d59ee):''));for(const _0x3b1c83 of _0x5eef02){const _0xada8c2=padRight(_0x3b1c83['label'],_0x45820e),_0x52496f=padRight(_0x3b1c83[_0xe969cf(0x1d6)],_0x434ba1),_0x717c8c=_0x3b1c83[_0xe969cf(0x1c7)]?'✓':'✗',_0x906f90=padRight(_0x717c8c,_0x4d59ee);let _0x9172c7='\x20\x20'+_0xada8c2+'\x20\x20'+_0x52496f+'\x20\x20'+_0x906f90;if(_0x20f6dc){const _0x3ad2d8=_0x3b1c83[_0xe969cf(0x1cc)]?'✓':'✗';_0x9172c7+='\x20\x20'+padRight(_0x3ad2d8,_0x4d59ee);}_0x321895['push'](_0x9172c7);}return _0x321895['join']('\x0a');}export function renderSyncSummary(_0x3c128e,_0x5397e9){const _0x47b5b8=a119_0x5404;if(_0x3c128e[_0x47b5b8(0x1cf)]===0x0)return _0x5397e9?_0x47b5b8(0x1d2):_0x47b5b8(0x1dd);const _0x82afe9=['\x20\x20'+_0x3c128e[_0x47b5b8(0x1cf)]+_0x47b5b8(0x1e4)];for(const _0x463a48 of _0x3c128e){_0x82afe9['push']('\x20\x20\x20\x20•\x20'+_0x463a48[_0x47b5b8(0x1dc)]+'\x20('+_0x463a48['path']+')');}return _0x82afe9[_0x47b5b8(0x1d8)]('\x0a');}function a119_0x4740(){const _0x27f59f=['online','map','push','length','Local','2870fLxbID','\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','max','repeat','(unchanged)','path','351352dKbaMP','join','test','\x20\x20\x20\x20JS:\x20\x20','Menu\x20Name','label','\x20\x20No\x20pages\x20to\x20sync.','1542735zYFobH','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','4198160IGTXJI','3615174tGTBcQ','Platform','\x20\x20Affected\x20menus:\x20','\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','2676320XLxdyd','288458TuGFtd','\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','local','Path','2gFVHif','2994palNJV','45UTxvuV'];a119_0x4740=function(){return _0x27f59f;};return a119_0x4740();}export function renderUpdateSummary(_0x33ed9f,_0x136ebf){const _0x1c115f=a119_0x5404;if(_0x33ed9f[_0x1c115f(0x1cf)]===0x0)return _0x1c115f(0x1df);const _0x21985a=['\x20\x20'+_0x33ed9f[_0x1c115f(0x1cf)]+_0x1c115f(0x1c6),_0x1c115f(0x1da)+(_0x136ebf[0x0]??_0x1c115f(0x1d5)),'\x20\x20\x20\x20CSS:\x20'+(_0x136ebf[0x1]??_0x1c115f(0x1d5)),'',_0x1c115f(0x1e3)+_0x33ed9f[_0x1c115f(0x1d8)](',\x20')];return _0x21985a[_0x1c115f(0x1d8)]('\x0a');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a113_0x172d4e=a113_0x236a;(function(_0x16b2a1,_0x56b538){const _0x16c8e7=a113_0x236a,_0x14fedb=_0x16b2a1();while(!![]){try{const _0x4ceda8=parseInt(_0x16c8e7(0x130))/0x1+parseInt(_0x16c8e7(0xea))/0x2+-parseInt(_0x16c8e7(0x146))/0x3*(-parseInt(_0x16c8e7(0x106))/0x4)+parseInt(_0x16c8e7(0x129))/0x5*(parseInt(_0x16c8e7(0x10d))/0x6)+-parseInt(_0x16c8e7(0x117))/0x7+parseInt(_0x16c8e7(0x135))/0x8*(-parseInt(_0x16c8e7(0x100))/0x9)+parseInt(_0x16c8e7(0x13c))/0xa;if(_0x4ceda8===_0x56b538)break;else _0x14fedb['push'](_0x14fedb['shift']());}catch(_0x407029){_0x14fedb['push'](_0x14fedb['shift']());}}}(a113_0x53f6,0x6133a));import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND=a113_0x172d4e(0xfa),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x144882,_0x21f9f6,_0x52e36e=new Date()){const _0xdb83dd=a113_0x172d4e;if(!_0x21f9f6[_0xdb83dd(0x13f)]||!isMenuFact(_0x21f9f6['before']))throw menuError(_0xdb83dd(0x140),_0xdb83dd(0x119));const _0x188fcf=_0x21f9f6[_0xdb83dd(0x112)]?.[_0xdb83dd(0xff)]?_0x21f9f6[_0xdb83dd(0x112)]:[_0x21f9f6[_0xdb83dd(0x13f)]],_0x35c060=_0x21f9f6[_0xdb83dd(0x111)]?.[_0xdb83dd(0xff)]?_0x21f9f6['deleteOrder']:_0x188fcf[_0xdb83dd(0x12d)](_0x421f0d=>_0x421f0d['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x144882,'createdAt':_0x52e36e[_0xdb83dd(0x141)](),'expiresAt':new Date(_0x52e36e[_0xdb83dd(0xef)]()+PLAN_TTL_MS)[_0xdb83dd(0x141)](),'snapshotHash':_0x21f9f6['snapshotHash'],'recursive':_0x21f9f6['selector'][_0xdb83dd(0x134)]===!![],'target':_0x21f9f6['before'],'targetFingerprint':fingerprint(_0x21f9f6[_0xdb83dd(0x13f)]),'targets':_0x188fcf,'targetFingerprints':_0x188fcf[_0xdb83dd(0x12d)](fingerprint),'deleteOrder':_0x35c060,'cascade':_0x21f9f6['cascade']??{'pages':_0x21f9f6[_0xdb83dd(0x13f)][_0xdb83dd(0x128)]==null?[]:[_0x21f9f6[_0xdb83dd(0x13f)]['pageId']],'pageSchemaAffected':_0x21f9f6[_0xdb83dd(0x13f)][_0xdb83dd(0x128)]!=null},'warnings':[..._0x21f9f6['warnings']]};}export async function writeMenuDeletePlan(_0x3d06e3,_0x4d5b26){const _0x2e18ce=a113_0x172d4e,_0x2e66af=resolvePlanPath(_0x3d06e3,_0x2e18ce(0x104));await mkdir(dirname(_0x2e66af),{'recursive':!![]});try{await writeFile(_0x2e66af,JSON[_0x2e18ce(0xed)](_0x4d5b26,null,0x2)+'\x0a',{'encoding':_0x2e18ce(0x103),'flag':'wx'});}catch(_0x5eb808){if(_0x5eb808[_0x2e18ce(0xf2)]===_0x2e18ce(0x132))throw menuError(_0x2e18ce(0xf8),_0x2e18ce(0x12b)+_0x2e66af,_0x2e18ce(0x14e));throw menuError(_0x2e18ce(0xfc),_0x2e18ce(0x126)+_0x2e66af+':\x20'+errorMessage(_0x5eb808));}return _0x2e66af;}export async function readMenuDeletePlan(_0x1fbb34){const _0x48fa61=a113_0x172d4e,_0x150f5d=resolvePlanPath(_0x1fbb34,_0x48fa61(0xeb));let _0xda06cd;try{_0xda06cd=(await stat(_0x150f5d))[_0x48fa61(0x102)];}catch(_0x2d60e6){throw menuError(_0x48fa61(0x140),_0x48fa61(0x149)+_0x150f5d+':\x20'+errorMessage(_0x2d60e6));}if(_0xda06cd>MAX_PLAN_BYTES)throw menuError(_0x48fa61(0x140),_0x48fa61(0x10a)+_0xda06cd+'\x20bytes.');let _0x2ebe05;try{_0x2ebe05=JSON[_0x48fa61(0x11d)](await readFile(_0x150f5d,_0x48fa61(0x103)));}catch(_0x243abe){throw menuError('menu_plan_invalid',_0x48fa61(0x10e)+errorMessage(_0x243abe));}if(!isMenuDeletePlanFile(_0x2ebe05))throw menuError(_0x48fa61(0x140),_0x48fa61(0x14d)+PLAN_VERSION+_0x48fa61(0x118)+PLAN_COMMAND+_0x48fa61(0x14b));if(!sameFingerprint(_0x2ebe05[_0x48fa61(0x138)],fingerprint(_0x2ebe05[_0x48fa61(0x10f)])))throw menuError(_0x48fa61(0x140),_0x48fa61(0x116),_0x48fa61(0x122));if(!_0x2ebe05['targets'][_0x48fa61(0x14f)]((_0x2cf33a,_0x2c4a33)=>sameFingerprint(_0x2ebe05[_0x48fa61(0xf5)][_0x2c4a33],fingerprint(_0x2cf33a)))||!sameFingerprint(_0x2ebe05[_0x48fa61(0x138)],fingerprint(_0x2ebe05[_0x48fa61(0x112)][_0x2ebe05[_0x48fa61(0x112)]['length']-0x1])))throw menuError('menu_plan_invalid','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.',_0x48fa61(0x122));return{'path':_0x150f5d,'plan':_0x2ebe05};}function a113_0x53f6(){const _0xea8ecc=['33534pDZQdE','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','target','warnings','deleteOrder','targets','\x20is\x20in\x20the\x20future.','isArray','path','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','4896605KEyLRk','\x20of\x20the\x20','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','childrenIds','depth','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','parse','expiresAt','delete','isInteger','snapshotHash','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','string','sha256','type','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','\x20requires\x20a\x20non-empty\x20file\x20path.','pageId','560BregZl','datasetId','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','Menu\x20delete\x20plan\x20targets\x20app\x20','map','number','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','275257IxDZmz','command','EEXIST','POST','recursive','32lrTrRA','childrenCount','menu_state_drift','targetFingerprint','batch-delete-menu','modelType',',\x20current\x20app\x20is\x20','1745610RhAvgJ','extend','message','before','menu_plan_invalid','toISOString','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','updateUserId','get','sort','665403hTTyCR','datasetCode','resources','Cannot\x20read\x20menu\x20delete\x20plan\x20','trim','\x20contract.','update','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','every','parentId','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','cascade','extendHash','updateTime','28106bfcPVp','plan','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','stringify','Planned\x20menu\x20','getTime','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','appCode','code','label','object','targetFingerprints','resourcesValid','resourcesHash','menu_plan_file_exists','pageSchemaAffected','menu\x20delete','pageType','menu_plan_write_failed','isFinite','byId','length','980523daMCaz','hash','size','utf8','plan-out','boolean','8viMyxP','createdAt','test','version','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','visible','updateUserName'];a113_0x53f6=function(){return _0xea8ecc;};return a113_0x53f6();}export function mutationPlanFromDeleteFile(_0xa0ec37,_0x2902f8){const _0x2bd90a=a113_0x172d4e;return mutationResult({'operation':_0x2bd90a(0x11f),'selector':{'id':_0xa0ec37['target']['id'],'recursive':_0xa0ec37[_0x2bd90a(0x134)]},'before':_0xa0ec37['target'],'after':null,'dryRun':![],'backend':[{'method':'POST','path':'/smartapi/menu/batchDelete'}],'plannedActions':[{'stage':_0x2bd90a(0x139),'method':_0x2bd90a(0x133),'path':'/smartapi/menu/batchDelete','body':{'idList':_0xa0ec37[_0x2bd90a(0x111)]}}],'targets':_0xa0ec37[_0x2bd90a(0x112)],'deleteOrder':_0xa0ec37['deleteOrder'],'snapshotHash':_0xa0ec37[_0x2bd90a(0x121)],'cascade':_0xa0ec37['cascade'],'planFile':{'path':_0x2902f8,'createdAt':_0xa0ec37['createdAt'],'expiresAt':_0xa0ec37[_0x2bd90a(0x11e)]},'warnings':_0xa0ec37['warnings']});}export function assertMenuDeletePlanCurrent(_0x1ee601,_0x1d2cea,_0x44b6fc,_0x5015d1=new Date()){const _0x26c466=a113_0x172d4e;assertMenuDeletePlanExecutable(_0x1ee601,_0x1d2cea,_0x5015d1);if(_0x44b6fc[_0x26c466(0x101)]!==_0x1ee601[_0x26c466(0x121)])throw menuError('menu_state_drift','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.',_0x26c466(0x11c));return _0x1ee601[_0x26c466(0x112)]['map']((_0x34128b,_0x2974a5)=>{const _0x1088b7=_0x26c466,_0x2729a9=_0x44b6fc[_0x1088b7(0xfe)][_0x1088b7(0x144)](_0x34128b['id']);if(!_0x2729a9)throw menuError(_0x1088b7(0x137),_0x1088b7(0xee)+_0x34128b['id']+_0x1088b7(0xf0));if(!sameFingerprint(_0x1ee601['targetFingerprints'][_0x2974a5],fingerprint(_0x2729a9)))throw menuError('menu_state_drift',_0x1088b7(0xee)+_0x34128b['id']+_0x1088b7(0x12f),_0x1088b7(0xec));return _0x2729a9;});}export function assertMenuDeletePlanExecutable(_0x4482c4,_0x548bc3,_0xbf0d7d=new Date()){const _0x10f5ad=a113_0x172d4e;if(_0x4482c4['appCode']!==_0x548bc3)throw menuError('menu_plan_app_mismatch',_0x10f5ad(0x12c)+JSON[_0x10f5ad(0xed)](_0x4482c4['appCode'])+_0x10f5ad(0x13b)+JSON[_0x10f5ad(0xed)](_0x548bc3)+'.');const _0x1a6847=Date['parse'](_0x4482c4[_0x10f5ad(0x107)]),_0x1b238b=Date['parse'](_0x4482c4['expiresAt']);if(!Number[_0x10f5ad(0xfd)](_0x1a6847)||!Number[_0x10f5ad(0xfd)](_0x1b238b)||_0x1b238b-_0x1a6847!==PLAN_TTL_MS)throw menuError(_0x10f5ad(0x140),'Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.');if(_0x1a6847>_0xbf0d7d[_0x10f5ad(0xef)]())throw menuError(_0x10f5ad(0x140),'Menu\x20delete\x20plan\x20creation\x20time\x20'+_0x4482c4[_0x10f5ad(0x107)]+_0x10f5ad(0x113),_0x10f5ad(0x151));if(_0xbf0d7d[_0x10f5ad(0xef)]()>_0x1b238b)throw menuError('menu_plan_expired','Menu\x20delete\x20plan\x20expired\x20at\x20'+_0x4482c4[_0x10f5ad(0x11e)]+'.',_0x10f5ad(0x142));}function fingerprint(_0x24fc5d){const _0x55fd99=a113_0x172d4e;return{'id':_0x24fc5d['id'],'parentId':_0x24fc5d[_0x55fd99(0x150)],'depth':_0x24fc5d[_0x55fd99(0x11b)],'label':_0x24fc5d[_0x55fd99(0xf3)],'path':_0x24fc5d['path'],'type':_0x24fc5d[_0x55fd99(0x125)],'visible':_0x24fc5d[_0x55fd99(0x10b)],'sort':_0x24fc5d[_0x55fd99(0x145)],'pageId':_0x24fc5d[_0x55fd99(0x128)],'pageType':_0x24fc5d[_0x55fd99(0xfb)],'modelType':_0x24fc5d['modelType'],'datasetId':_0x24fc5d['datasetId'],'datasetCode':_0x24fc5d[_0x55fd99(0x147)],'childrenIds':[..._0x24fc5d[_0x55fd99(0x11a)]],'childrenCount':_0x24fc5d[_0x55fd99(0x136)],'resourcesValid':_0x24fc5d[_0x55fd99(0xf6)],'resourcesHash':hashValue(_0x24fc5d[_0x55fd99(0x148)]),'extendHash':hashValue(_0x24fc5d['extend']??null),'updateTime':_0x24fc5d[_0x55fd99(0x154)]};}function hashValue(_0x522e6a){const _0x57b5d9=a113_0x172d4e;return createHash(_0x57b5d9(0x124))[_0x57b5d9(0x14c)](JSON[_0x57b5d9(0xed)](_0x522e6a))['digest']('hex');}function a113_0x236a(_0x51e629,_0xa0ac8a){_0x51e629=_0x51e629-0xea;const _0x53f6ad=a113_0x53f6();let _0x236a7d=_0x53f6ad[_0x51e629];return _0x236a7d;}function sameFingerprint(_0x2f88ad,_0x2b0696){const _0x4e4717=a113_0x172d4e;return JSON[_0x4e4717(0xed)](_0x2f88ad)===JSON['stringify'](_0x2b0696);}function resolvePlanPath(_0x4dbb41,_0xa802fb){const _0x33f654=a113_0x172d4e,_0x47ad22=_0x4dbb41[_0x33f654(0x14a)]();if(!_0x47ad22)throw menuError('menu_plan_invalid','--'+_0xa802fb+_0x33f654(0x127));return resolve(_0x47ad22);}function isMenuDeletePlanFile(_0x21f21b){const _0x146ced=a113_0x172d4e;if(!isRecord(_0x21f21b))return![];return _0x21f21b[_0x146ced(0x109)]===PLAN_VERSION&&_0x21f21b[_0x146ced(0x131)]===PLAN_COMMAND&&typeof _0x21f21b[_0x146ced(0xf1)]===_0x146ced(0x123)&&_0x21f21b[_0x146ced(0xf1)][_0x146ced(0xff)]>0x0&&typeof _0x21f21b[_0x146ced(0x107)]===_0x146ced(0x123)&&typeof _0x21f21b[_0x146ced(0x11e)]===_0x146ced(0x123)&&typeof _0x21f21b[_0x146ced(0x121)]===_0x146ced(0x123)&&/^sha256:[a-f0-9]{64}$/[_0x146ced(0x108)](_0x21f21b[_0x146ced(0x121)])&&typeof _0x21f21b[_0x146ced(0x134)]===_0x146ced(0x105)&&isMenuFact(_0x21f21b[_0x146ced(0x10f)])&&isTargetFingerprint(_0x21f21b[_0x146ced(0x138)])&&Array[_0x146ced(0x114)](_0x21f21b[_0x146ced(0x112)])&&_0x21f21b[_0x146ced(0x112)][_0x146ced(0xff)]>0x0&&_0x21f21b[_0x146ced(0x112)]['every'](isMenuFact)&&Array['isArray'](_0x21f21b[_0x146ced(0xf5)])&&_0x21f21b[_0x146ced(0xf5)][_0x146ced(0xff)]===_0x21f21b[_0x146ced(0x112)][_0x146ced(0xff)]&&_0x21f21b['targetFingerprints'][_0x146ced(0x14f)](isTargetFingerprint)&&Array[_0x146ced(0x114)](_0x21f21b[_0x146ced(0x111)])&&_0x21f21b[_0x146ced(0x111)][_0x146ced(0xff)]===_0x21f21b['targets'][_0x146ced(0xff)]&&_0x21f21b[_0x146ced(0x111)][_0x146ced(0x14f)](isPositiveInteger)&&new Set(_0x21f21b[_0x146ced(0x111)])['size']===_0x21f21b['deleteOrder']['length']&&_0x21f21b[_0x146ced(0x112)][_0x146ced(0x14f)]((_0x3f9352,_0x21039d)=>_0x3f9352['id']===_0x21f21b['deleteOrder'][_0x21039d])&&_0x21f21b[_0x146ced(0x112)][_0x21f21b[_0x146ced(0x112)][_0x146ced(0xff)]-0x1]?.['id']===_0x21f21b['target']['id']&&isRecord(_0x21f21b[_0x146ced(0x152)])&&Array['isArray'](_0x21f21b['cascade']['pages'])&&_0x21f21b[_0x146ced(0x152)]['pages'][_0x146ced(0x14f)](isPositiveInteger)&&typeof _0x21f21b[_0x146ced(0x152)][_0x146ced(0xf9)]===_0x146ced(0x105)&&Array[_0x146ced(0x114)](_0x21f21b[_0x146ced(0x110)])&&_0x21f21b['warnings'][_0x146ced(0x14f)](_0x198400=>typeof _0x198400===_0x146ced(0x123));}function isMenuFact(_0x327f07){const _0x42339e=a113_0x172d4e;if(!isRecord(_0x327f07))return![];return isPositiveInteger(_0x327f07['id'])&&(_0x327f07[_0x42339e(0x150)]===null||isPositiveInteger(_0x327f07[_0x42339e(0x150)]))&&Number['isInteger'](_0x327f07['depth'])&&_0x327f07['depth']>=0x0&&typeof _0x327f07[_0x42339e(0xf3)]===_0x42339e(0x123)&&typeof _0x327f07[_0x42339e(0x115)]===_0x42339e(0x123)&&typeof _0x327f07[_0x42339e(0x125)]==='string'&&(_0x327f07['visible']===null||typeof _0x327f07[_0x42339e(0x10b)]==='boolean')&&(_0x327f07[_0x42339e(0x145)]===null||Number[_0x42339e(0x120)](_0x327f07[_0x42339e(0x145)]))&&Array[_0x42339e(0x114)](_0x327f07[_0x42339e(0x148)])&&_0x327f07[_0x42339e(0x148)][_0x42339e(0x14f)](_0x894326=>typeof _0x894326===_0x42339e(0x123))&&typeof _0x327f07['resourcesValid']===_0x42339e(0x105)&&Array[_0x42339e(0x114)](_0x327f07[_0x42339e(0x11a)])&&_0x327f07[_0x42339e(0x11a)]['every'](isPositiveInteger)&&Number[_0x42339e(0x120)](_0x327f07[_0x42339e(0x136)])&&_0x327f07[_0x42339e(0x136)]>=0x0&&(_0x327f07[_0x42339e(0x128)]===null||isPositiveInteger(_0x327f07['pageId']))&&typeof _0x327f07[_0x42339e(0xfb)]===_0x42339e(0x123)&&typeof _0x327f07[_0x42339e(0x13a)]===_0x42339e(0x123)&&(_0x327f07['datasetId']===null||isPositiveInteger(_0x327f07[_0x42339e(0x12a)]))&&typeof _0x327f07[_0x42339e(0x147)]===_0x42339e(0x123)&&(_0x327f07[_0x42339e(0x143)]===null||typeof _0x327f07['updateUserId']===_0x42339e(0x123))&&(_0x327f07[_0x42339e(0x10c)]===null||typeof _0x327f07[_0x42339e(0x10c)]===_0x42339e(0x123))&&(_0x327f07[_0x42339e(0x154)]===null||typeof _0x327f07[_0x42339e(0x154)]===_0x42339e(0x123)||typeof _0x327f07['updateTime']===_0x42339e(0x12e))&&(_0x327f07['extend']===undefined||_0x327f07[_0x42339e(0x13d)]===null||isRecord(_0x327f07[_0x42339e(0x13d)]));}function isTargetFingerprint(_0x14b42a){const _0x1674a3=a113_0x172d4e;if(!isRecord(_0x14b42a))return![];return isPositiveInteger(_0x14b42a['id'])&&(_0x14b42a['parentId']===null||isPositiveInteger(_0x14b42a[_0x1674a3(0x150)]))&&Number[_0x1674a3(0x120)](_0x14b42a[_0x1674a3(0x11b)])&&_0x14b42a[_0x1674a3(0x11b)]>=0x0&&typeof _0x14b42a['label']===_0x1674a3(0x123)&&typeof _0x14b42a[_0x1674a3(0x115)]===_0x1674a3(0x123)&&typeof _0x14b42a[_0x1674a3(0x125)]===_0x1674a3(0x123)&&(_0x14b42a[_0x1674a3(0x10b)]===null||typeof _0x14b42a[_0x1674a3(0x10b)]===_0x1674a3(0x105))&&(_0x14b42a[_0x1674a3(0x145)]===null||Number['isInteger'](_0x14b42a[_0x1674a3(0x145)]))&&(_0x14b42a[_0x1674a3(0x128)]===null||isPositiveInteger(_0x14b42a[_0x1674a3(0x128)]))&&typeof _0x14b42a[_0x1674a3(0xfb)]===_0x1674a3(0x123)&&typeof _0x14b42a['modelType']==='string'&&(_0x14b42a[_0x1674a3(0x12a)]===null||isPositiveInteger(_0x14b42a['datasetId']))&&typeof _0x14b42a[_0x1674a3(0x147)]===_0x1674a3(0x123)&&Array[_0x1674a3(0x114)](_0x14b42a['childrenIds'])&&_0x14b42a[_0x1674a3(0x11a)][_0x1674a3(0x14f)](isPositiveInteger)&&Number[_0x1674a3(0x120)](_0x14b42a[_0x1674a3(0x136)])&&_0x14b42a['childrenCount']>=0x0&&typeof _0x14b42a[_0x1674a3(0xf6)]===_0x1674a3(0x105)&&typeof _0x14b42a[_0x1674a3(0xf7)]===_0x1674a3(0x123)&&/^[a-f0-9]{64}$/[_0x1674a3(0x108)](_0x14b42a[_0x1674a3(0xf7)])&&typeof _0x14b42a[_0x1674a3(0x153)]===_0x1674a3(0x123)&&/^[a-f0-9]{64}$/[_0x1674a3(0x108)](_0x14b42a[_0x1674a3(0x153)])&&(_0x14b42a['updateTime']===null||typeof _0x14b42a['updateTime']===_0x1674a3(0x123)||typeof _0x14b42a[_0x1674a3(0x154)]===_0x1674a3(0x12e));}function isRecord(_0x1ca5c7){const _0x508ac5=a113_0x172d4e;return typeof _0x1ca5c7===_0x508ac5(0xf4)&&_0x1ca5c7!==null&&!Array[_0x508ac5(0x114)](_0x1ca5c7);}function isPositiveInteger(_0x45f516){return Number['isSafeInteger'](_0x45f516)&&Number(_0x45f516)>0x0;}function errorMessage(_0x131582){const _0x3503bc=a113_0x172d4e;return _0x131582 instanceof Error?_0x131582[_0x3503bc(0x13e)]:String(_0x131582);}
|
|
1
|
+
(function(_0x45ee82,_0x2f91b9){const _0x9b94c4=a120_0xa9cf,_0x3bc91e=_0x45ee82();while(!![]){try{const _0xd57bb2=-parseInt(_0x9b94c4(0x23b))/0x1*(-parseInt(_0x9b94c4(0x20f))/0x2)+parseInt(_0x9b94c4(0x21a))/0x3*(parseInt(_0x9b94c4(0x1e9))/0x4)+-parseInt(_0x9b94c4(0x1f8))/0x5+parseInt(_0x9b94c4(0x226))/0x6+-parseInt(_0x9b94c4(0x201))/0x7+parseInt(_0x9b94c4(0x220))/0x8+-parseInt(_0x9b94c4(0x23f))/0x9;if(_0xd57bb2===_0x2f91b9)break;else _0x3bc91e['push'](_0x3bc91e['shift']());}catch(_0x3d5220){_0x3bc91e['push'](_0x3bc91e['shift']());}}}(a120_0x4e8d,0x4362f));import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND='menu\x20delete',PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x108466,_0x5a6d73,_0x2eb26d=new Date()){const _0x2201b1=a120_0xa9cf;if(!_0x5a6d73['before']||!isMenuFact(_0x5a6d73[_0x2201b1(0x202)]))throw menuError('menu_plan_invalid',_0x2201b1(0x1e2));const _0x5764f1=_0x5a6d73['targets']?.[_0x2201b1(0x221)]?_0x5a6d73[_0x2201b1(0x231)]:[_0x5a6d73[_0x2201b1(0x202)]],_0x31fc0d=_0x5a6d73['deleteOrder']?.[_0x2201b1(0x221)]?_0x5a6d73[_0x2201b1(0x22a)]:_0x5764f1[_0x2201b1(0x243)](_0x4fb36b=>_0x4fb36b['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x108466,'createdAt':_0x2eb26d['toISOString'](),'expiresAt':new Date(_0x2eb26d['getTime']()+PLAN_TTL_MS)[_0x2201b1(0x209)](),'snapshotHash':_0x5a6d73[_0x2201b1(0x208)],'recursive':_0x5a6d73['selector'][_0x2201b1(0x1ef)]===!![],'target':_0x5a6d73[_0x2201b1(0x202)],'targetFingerprint':fingerprint(_0x5a6d73[_0x2201b1(0x202)]),'targets':_0x5764f1,'targetFingerprints':_0x5764f1[_0x2201b1(0x243)](fingerprint),'deleteOrder':_0x31fc0d,'cascade':_0x5a6d73[_0x2201b1(0x1f0)]??{'pages':_0x5a6d73['before']['pageId']==null?[]:[_0x5a6d73['before']['pageId']],'pageSchemaAffected':_0x5a6d73[_0x2201b1(0x202)][_0x2201b1(0x242)]!=null},'warnings':[..._0x5a6d73[_0x2201b1(0x1e3)]]};}export async function writeMenuDeletePlan(_0x5accec,_0x546cb9){const _0x3d1b54=a120_0xa9cf,_0x550c6f=resolvePlanPath(_0x5accec,'plan-out');await mkdir(dirname(_0x550c6f),{'recursive':!![]});try{await writeFile(_0x550c6f,JSON[_0x3d1b54(0x206)](_0x546cb9,null,0x2)+'\x0a',{'encoding':_0x3d1b54(0x1e6),'flag':'wx'});}catch(_0x4338f9){if(_0x4338f9[_0x3d1b54(0x237)]===_0x3d1b54(0x22c))throw menuError('menu_plan_file_exists',_0x3d1b54(0x21c)+_0x550c6f,'Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.');throw menuError(_0x3d1b54(0x228),_0x3d1b54(0x20d)+_0x550c6f+':\x20'+errorMessage(_0x4338f9));}return _0x550c6f;}export async function readMenuDeletePlan(_0x3867f2){const _0x1385ac=a120_0xa9cf,_0x358864=resolvePlanPath(_0x3867f2,_0x1385ac(0x241));let _0x472974;try{_0x472974=(await stat(_0x358864))[_0x1385ac(0x21b)];}catch(_0xc24935){throw menuError('menu_plan_invalid',_0x1385ac(0x23d)+_0x358864+':\x20'+errorMessage(_0xc24935));}if(_0x472974>MAX_PLAN_BYTES)throw menuError('menu_plan_invalid',_0x1385ac(0x248)+_0x472974+_0x1385ac(0x22d));let _0x2fb434;try{_0x2fb434=JSON[_0x1385ac(0x235)](await readFile(_0x358864,_0x1385ac(0x1e6)));}catch(_0x2464a5){throw menuError(_0x1385ac(0x20c),'Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20'+errorMessage(_0x2464a5));}if(!isMenuDeletePlanFile(_0x2fb434))throw menuError(_0x1385ac(0x20c),_0x1385ac(0x1f2)+PLAN_VERSION+_0x1385ac(0x1fd)+PLAN_COMMAND+'\x20contract.');if(!sameFingerprint(_0x2fb434['targetFingerprint'],fingerprint(_0x2fb434[_0x1385ac(0x234)])))throw menuError(_0x1385ac(0x20c),_0x1385ac(0x224),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.');if(!_0x2fb434[_0x1385ac(0x231)]['every']((_0x1c3e6d,_0x5300f2)=>sameFingerprint(_0x2fb434['targetFingerprints'][_0x5300f2],fingerprint(_0x1c3e6d)))||!sameFingerprint(_0x2fb434['targetFingerprint'],fingerprint(_0x2fb434[_0x1385ac(0x231)][_0x2fb434[_0x1385ac(0x231)][_0x1385ac(0x221)]-0x1])))throw menuError(_0x1385ac(0x20c),'Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.');return{'path':_0x358864,'plan':_0x2fb434};}function a120_0xa9cf(_0x1fc3e9,_0x2ec706){_0x1fc3e9=_0x1fc3e9-0x1e2;const _0x4e8d1d=a120_0x4e8d();let _0xa9cf33=_0x4e8d1d[_0x1fc3e9];return _0xa9cf33;}function a120_0x4e8d(){const _0x1ac647=['modelType','createdAt','label','583583hZjwOq','before','datasetId','updateUserId','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','stringify','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','snapshotHash','toISOString','targetFingerprint','/smartapi/menu/batchDelete','menu_plan_invalid','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','updateTime','7796fvnLdG','datasetCode','menu_state_drift','menu_plan_app_mismatch','Menu\x20delete\x20plan\x20creation\x20time\x20','resourcesValid','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','parentId','sha256','object','childrenCount','175866TIaGzd','size','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','every','resourcesHash','extend','2112712ckoTiy','length','visible','type','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','963636zYwAKY','version','menu_plan_write_failed','get','deleteOrder','boolean','EEXIST','\x20bytes.','number','path','targetFingerprints','targets','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','isFinite','target','parse','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','code','message','childrenIds','appCode','5BMpxMQ','byId','Cannot\x20read\x20menu\x20delete\x20plan\x20','test','2727144wygTly','string','plan','pageId','map','resources','extendHash','hex','\x20requires\x20a\x20non-empty\x20file\x20path.','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','isInteger','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','warnings','expiresAt','digest','utf8','trim','isArray','36jTsvmr','Planned\x20menu\x20','sort','delete','batch-delete-menu','Menu\x20delete\x20plan\x20expired\x20at\x20','recursive','cascade','Menu\x20delete\x20plan\x20targets\x20app\x20','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','pageSchemaAffected','getTime','isSafeInteger','updateUserName','1546915KZNaAf','POST','command','depth','hash','\x20of\x20the\x20'];a120_0x4e8d=function(){return _0x1ac647;};return a120_0x4e8d();}export function mutationPlanFromDeleteFile(_0x59d5d7,_0x28b390){const _0x4c072e=a120_0xa9cf;return mutationResult({'operation':_0x4c072e(0x1ec),'selector':{'id':_0x59d5d7[_0x4c072e(0x234)]['id'],'recursive':_0x59d5d7[_0x4c072e(0x1ef)]},'before':_0x59d5d7['target'],'after':null,'dryRun':![],'backend':[{'method':'POST','path':_0x4c072e(0x20b)}],'plannedActions':[{'stage':_0x4c072e(0x1ed),'method':_0x4c072e(0x1f9),'path':_0x4c072e(0x20b),'body':{'idList':_0x59d5d7[_0x4c072e(0x22a)]}}],'targets':_0x59d5d7[_0x4c072e(0x231)],'deleteOrder':_0x59d5d7['deleteOrder'],'snapshotHash':_0x59d5d7[_0x4c072e(0x208)],'cascade':_0x59d5d7['cascade'],'planFile':{'path':_0x28b390,'createdAt':_0x59d5d7['createdAt'],'expiresAt':_0x59d5d7[_0x4c072e(0x1e4)]},'warnings':_0x59d5d7['warnings']});}export function assertMenuDeletePlanCurrent(_0x14e106,_0x515303,_0x583e95,_0x3e1b8d=new Date()){const _0x444232=a120_0xa9cf;assertMenuDeletePlanExecutable(_0x14e106,_0x515303,_0x3e1b8d);if(_0x583e95[_0x444232(0x1fc)]!==_0x14e106[_0x444232(0x208)])throw menuError(_0x444232(0x211),_0x444232(0x236),_0x444232(0x225));return _0x14e106[_0x444232(0x231)][_0x444232(0x243)]((_0x106b98,_0x12f997)=>{const _0x4b3546=_0x444232,_0xd51ebd=_0x583e95[_0x4b3546(0x23c)][_0x4b3546(0x229)](_0x106b98['id']);if(!_0xd51ebd)throw menuError(_0x4b3546(0x211),_0x4b3546(0x1ea)+_0x106b98['id']+'\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.');if(!sameFingerprint(_0x14e106['targetFingerprints'][_0x12f997],fingerprint(_0xd51ebd)))throw menuError(_0x4b3546(0x211),_0x4b3546(0x1ea)+_0x106b98['id']+_0x4b3546(0x1f3),_0x4b3546(0x232));return _0xd51ebd;});}export function assertMenuDeletePlanExecutable(_0x44ab5a,_0x243527,_0x1e2ce8=new Date()){const _0x357583=a120_0xa9cf;if(_0x44ab5a[_0x357583(0x23a)]!==_0x243527)throw menuError(_0x357583(0x212),_0x357583(0x1f1)+JSON[_0x357583(0x206)](_0x44ab5a[_0x357583(0x23a)])+',\x20current\x20app\x20is\x20'+JSON[_0x357583(0x206)](_0x243527)+'.');const _0x2eb60a=Date[_0x357583(0x235)](_0x44ab5a['createdAt']),_0xa14538=Date[_0x357583(0x235)](_0x44ab5a['expiresAt']);if(!Number[_0x357583(0x233)](_0x2eb60a)||!Number['isFinite'](_0xa14538)||_0xa14538-_0x2eb60a!==PLAN_TTL_MS)throw menuError(_0x357583(0x20c),_0x357583(0x207));if(_0x2eb60a>_0x1e2ce8['getTime']())throw menuError(_0x357583(0x20c),_0x357583(0x213)+_0x44ab5a['createdAt']+'\x20is\x20in\x20the\x20future.',_0x357583(0x215));if(_0x1e2ce8[_0x357583(0x1f5)]()>_0xa14538)throw menuError('menu_plan_expired',_0x357583(0x1ee)+_0x44ab5a[_0x357583(0x1e4)]+'.',_0x357583(0x205));}function fingerprint(_0x1fdd80){const _0x31b493=a120_0xa9cf;return{'id':_0x1fdd80['id'],'parentId':_0x1fdd80['parentId'],'depth':_0x1fdd80[_0x31b493(0x1fb)],'label':_0x1fdd80['label'],'path':_0x1fdd80[_0x31b493(0x22f)],'type':_0x1fdd80[_0x31b493(0x223)],'visible':_0x1fdd80[_0x31b493(0x222)],'sort':_0x1fdd80['sort'],'pageId':_0x1fdd80[_0x31b493(0x242)],'pageType':_0x1fdd80['pageType'],'modelType':_0x1fdd80[_0x31b493(0x1fe)],'datasetId':_0x1fdd80[_0x31b493(0x203)],'datasetCode':_0x1fdd80[_0x31b493(0x210)],'childrenIds':[..._0x1fdd80[_0x31b493(0x239)]],'childrenCount':_0x1fdd80[_0x31b493(0x219)],'resourcesValid':_0x1fdd80[_0x31b493(0x214)],'resourcesHash':hashValue(_0x1fdd80[_0x31b493(0x244)]),'extendHash':hashValue(_0x1fdd80[_0x31b493(0x21f)]??null),'updateTime':_0x1fdd80[_0x31b493(0x20e)]};}function hashValue(_0x2b924b){const _0x4242fe=a120_0xa9cf;return createHash(_0x4242fe(0x217))['update'](JSON['stringify'](_0x2b924b))[_0x4242fe(0x1e5)](_0x4242fe(0x246));}function sameFingerprint(_0x5a2645,_0x2d6eea){const _0x197e6c=a120_0xa9cf;return JSON['stringify'](_0x5a2645)===JSON[_0x197e6c(0x206)](_0x2d6eea);}function resolvePlanPath(_0x4c77f5,_0x341fcc){const _0x2be0dc=a120_0xa9cf,_0x5f25dd=_0x4c77f5[_0x2be0dc(0x1e7)]();if(!_0x5f25dd)throw menuError(_0x2be0dc(0x20c),'--'+_0x341fcc+_0x2be0dc(0x247));return resolve(_0x5f25dd);}function isMenuDeletePlanFile(_0x3969a8){const _0x2a3e01=a120_0xa9cf;if(!isRecord(_0x3969a8))return![];return _0x3969a8[_0x2a3e01(0x227)]===PLAN_VERSION&&_0x3969a8[_0x2a3e01(0x1fa)]===PLAN_COMMAND&&typeof _0x3969a8[_0x2a3e01(0x23a)]===_0x2a3e01(0x240)&&_0x3969a8['appCode'][_0x2a3e01(0x221)]>0x0&&typeof _0x3969a8[_0x2a3e01(0x1ff)]===_0x2a3e01(0x240)&&typeof _0x3969a8[_0x2a3e01(0x1e4)]===_0x2a3e01(0x240)&&typeof _0x3969a8[_0x2a3e01(0x208)]===_0x2a3e01(0x240)&&/^sha256:[a-f0-9]{64}$/['test'](_0x3969a8['snapshotHash'])&&typeof _0x3969a8[_0x2a3e01(0x1ef)]===_0x2a3e01(0x22b)&&isMenuFact(_0x3969a8['target'])&&isTargetFingerprint(_0x3969a8[_0x2a3e01(0x20a)])&&Array['isArray'](_0x3969a8['targets'])&&_0x3969a8[_0x2a3e01(0x231)][_0x2a3e01(0x221)]>0x0&&_0x3969a8[_0x2a3e01(0x231)][_0x2a3e01(0x21d)](isMenuFact)&&Array['isArray'](_0x3969a8[_0x2a3e01(0x230)])&&_0x3969a8[_0x2a3e01(0x230)][_0x2a3e01(0x221)]===_0x3969a8['targets'][_0x2a3e01(0x221)]&&_0x3969a8['targetFingerprints']['every'](isTargetFingerprint)&&Array['isArray'](_0x3969a8[_0x2a3e01(0x22a)])&&_0x3969a8[_0x2a3e01(0x22a)]['length']===_0x3969a8[_0x2a3e01(0x231)][_0x2a3e01(0x221)]&&_0x3969a8['deleteOrder'][_0x2a3e01(0x21d)](isPositiveInteger)&&new Set(_0x3969a8[_0x2a3e01(0x22a)])['size']===_0x3969a8[_0x2a3e01(0x22a)][_0x2a3e01(0x221)]&&_0x3969a8[_0x2a3e01(0x231)][_0x2a3e01(0x21d)]((_0xa355b7,_0x5c342d)=>_0xa355b7['id']===_0x3969a8['deleteOrder'][_0x5c342d])&&_0x3969a8[_0x2a3e01(0x231)][_0x3969a8[_0x2a3e01(0x231)][_0x2a3e01(0x221)]-0x1]?.['id']===_0x3969a8[_0x2a3e01(0x234)]['id']&&isRecord(_0x3969a8['cascade'])&&Array['isArray'](_0x3969a8[_0x2a3e01(0x1f0)]['pages'])&&_0x3969a8[_0x2a3e01(0x1f0)]['pages'][_0x2a3e01(0x21d)](isPositiveInteger)&&typeof _0x3969a8[_0x2a3e01(0x1f0)][_0x2a3e01(0x1f4)]==='boolean'&&Array[_0x2a3e01(0x1e8)](_0x3969a8[_0x2a3e01(0x1e3)])&&_0x3969a8[_0x2a3e01(0x1e3)][_0x2a3e01(0x21d)](_0x1890cf=>typeof _0x1890cf===_0x2a3e01(0x240));}function isMenuFact(_0x23ded2){const _0x2651cc=a120_0xa9cf;if(!isRecord(_0x23ded2))return![];return isPositiveInteger(_0x23ded2['id'])&&(_0x23ded2[_0x2651cc(0x216)]===null||isPositiveInteger(_0x23ded2[_0x2651cc(0x216)]))&&Number['isInteger'](_0x23ded2[_0x2651cc(0x1fb)])&&_0x23ded2[_0x2651cc(0x1fb)]>=0x0&&typeof _0x23ded2[_0x2651cc(0x200)]===_0x2651cc(0x240)&&typeof _0x23ded2[_0x2651cc(0x22f)]===_0x2651cc(0x240)&&typeof _0x23ded2[_0x2651cc(0x223)]==='string'&&(_0x23ded2[_0x2651cc(0x222)]===null||typeof _0x23ded2['visible']===_0x2651cc(0x22b))&&(_0x23ded2[_0x2651cc(0x1eb)]===null||Number[_0x2651cc(0x249)](_0x23ded2[_0x2651cc(0x1eb)]))&&Array[_0x2651cc(0x1e8)](_0x23ded2[_0x2651cc(0x244)])&&_0x23ded2['resources'][_0x2651cc(0x21d)](_0x2b33a2=>typeof _0x2b33a2===_0x2651cc(0x240))&&typeof _0x23ded2[_0x2651cc(0x214)]==='boolean'&&Array['isArray'](_0x23ded2['childrenIds'])&&_0x23ded2[_0x2651cc(0x239)][_0x2651cc(0x21d)](isPositiveInteger)&&Number[_0x2651cc(0x249)](_0x23ded2[_0x2651cc(0x219)])&&_0x23ded2['childrenCount']>=0x0&&(_0x23ded2[_0x2651cc(0x242)]===null||isPositiveInteger(_0x23ded2[_0x2651cc(0x242)]))&&typeof _0x23ded2['pageType']==='string'&&typeof _0x23ded2[_0x2651cc(0x1fe)]===_0x2651cc(0x240)&&(_0x23ded2[_0x2651cc(0x203)]===null||isPositiveInteger(_0x23ded2['datasetId']))&&typeof _0x23ded2[_0x2651cc(0x210)]===_0x2651cc(0x240)&&(_0x23ded2[_0x2651cc(0x204)]===null||typeof _0x23ded2['updateUserId']===_0x2651cc(0x240))&&(_0x23ded2[_0x2651cc(0x1f7)]===null||typeof _0x23ded2['updateUserName']===_0x2651cc(0x240))&&(_0x23ded2[_0x2651cc(0x20e)]===null||typeof _0x23ded2[_0x2651cc(0x20e)]===_0x2651cc(0x240)||typeof _0x23ded2[_0x2651cc(0x20e)]==='number')&&(_0x23ded2[_0x2651cc(0x21f)]===undefined||_0x23ded2[_0x2651cc(0x21f)]===null||isRecord(_0x23ded2[_0x2651cc(0x21f)]));}function isTargetFingerprint(_0x5e8bb7){const _0x287a81=a120_0xa9cf;if(!isRecord(_0x5e8bb7))return![];return isPositiveInteger(_0x5e8bb7['id'])&&(_0x5e8bb7['parentId']===null||isPositiveInteger(_0x5e8bb7[_0x287a81(0x216)]))&&Number['isInteger'](_0x5e8bb7[_0x287a81(0x1fb)])&&_0x5e8bb7[_0x287a81(0x1fb)]>=0x0&&typeof _0x5e8bb7[_0x287a81(0x200)]===_0x287a81(0x240)&&typeof _0x5e8bb7[_0x287a81(0x22f)]==='string'&&typeof _0x5e8bb7[_0x287a81(0x223)]===_0x287a81(0x240)&&(_0x5e8bb7[_0x287a81(0x222)]===null||typeof _0x5e8bb7[_0x287a81(0x222)]==='boolean')&&(_0x5e8bb7[_0x287a81(0x1eb)]===null||Number['isInteger'](_0x5e8bb7['sort']))&&(_0x5e8bb7['pageId']===null||isPositiveInteger(_0x5e8bb7[_0x287a81(0x242)]))&&typeof _0x5e8bb7['pageType']===_0x287a81(0x240)&&typeof _0x5e8bb7[_0x287a81(0x1fe)]===_0x287a81(0x240)&&(_0x5e8bb7[_0x287a81(0x203)]===null||isPositiveInteger(_0x5e8bb7[_0x287a81(0x203)]))&&typeof _0x5e8bb7[_0x287a81(0x210)]===_0x287a81(0x240)&&Array[_0x287a81(0x1e8)](_0x5e8bb7[_0x287a81(0x239)])&&_0x5e8bb7[_0x287a81(0x239)]['every'](isPositiveInteger)&&Number['isInteger'](_0x5e8bb7['childrenCount'])&&_0x5e8bb7[_0x287a81(0x219)]>=0x0&&typeof _0x5e8bb7['resourcesValid']===_0x287a81(0x22b)&&typeof _0x5e8bb7[_0x287a81(0x21e)]===_0x287a81(0x240)&&/^[a-f0-9]{64}$/['test'](_0x5e8bb7['resourcesHash'])&&typeof _0x5e8bb7[_0x287a81(0x245)]===_0x287a81(0x240)&&/^[a-f0-9]{64}$/[_0x287a81(0x23e)](_0x5e8bb7[_0x287a81(0x245)])&&(_0x5e8bb7[_0x287a81(0x20e)]===null||typeof _0x5e8bb7[_0x287a81(0x20e)]===_0x287a81(0x240)||typeof _0x5e8bb7[_0x287a81(0x20e)]===_0x287a81(0x22e));}function isRecord(_0xe8d10b){const _0x30bc07=a120_0xa9cf;return typeof _0xe8d10b===_0x30bc07(0x218)&&_0xe8d10b!==null&&!Array[_0x30bc07(0x1e8)](_0xe8d10b);}function isPositiveInteger(_0x15c01c){const _0x1236d7=a120_0xa9cf;return Number[_0x1236d7(0x1f6)](_0x15c01c)&&Number(_0x15c01c)>0x0;}function errorMessage(_0xa3e8a2){const _0x25beb6=a120_0xa9cf;return _0xa3e8a2 instanceof Error?_0xa3e8a2[_0x25beb6(0x238)]:String(_0xa3e8a2);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x280341,_0x2af5ae){const _0x1af9ad=a121_0x47b3,_0x3538e1=_0x280341();while(!![]){try{const _0x59a2a5=parseInt(_0x1af9ad(0xae))/0x1*(-parseInt(_0x1af9ad(0xcc))/0x2)+-parseInt(_0x1af9ad(0xb7))/0x3*(parseInt(_0x1af9ad(0xb0))/0x4)+-parseInt(_0x1af9ad(0xa5))/0x5+-parseInt(_0x1af9ad(0xa4))/0x6+-parseInt(_0x1af9ad(0xc8))/0x7+-parseInt(_0x1af9ad(0xca))/0x8*(parseInt(_0x1af9ad(0xad))/0x9)+parseInt(_0x1af9ad(0xbb))/0xa;if(_0x59a2a5===_0x2af5ae)break;else _0x3538e1['push'](_0x3538e1['shift']());}catch(_0x9d5729){_0x3538e1['push'](_0x3538e1['shift']());}}}(a121_0x84dd,0xe41f5));import{createHash}from'node:crypto';import{getMenuTree}from'../../../core/api-client.js';export async function fetchMenuSnapshot(_0x7da5f1,_0x4a2930,_0x3ba232={}){const _0x57e439=a121_0x47b3,_0x352a74=await getMenuTree(_0x7da5f1,_0x4a2930);return buildMenuSnapshot(Array[_0x57e439(0xc9)](_0x352a74)?_0x352a74:[],_0x3ba232);}export function buildMenuSnapshot(_0x3153a0,_0x1fab1e={}){const _0x5f13d4=a121_0x47b3,_0x117a66=flattenMenuItems(_0x3153a0,{'verbose':_0x1fab1e[_0x5f13d4(0xc7)]===!![],'parentId':null,'depth':0x0}),_0x5ecdb0=new Map(_0x117a66['map'](_0x157724=>[_0x157724['id'],_0x157724])),_0x3cd4f3=createHash(_0x5f13d4(0xa6))['update'](JSON[_0x5f13d4(0xa7)](_0x117a66[_0x5f13d4(0xc6)](toHashInput)))['digest'](_0x5f13d4(0xbf));return{'total':_0x117a66['length'],'hash':_0x5f13d4(0xb6)+_0x3cd4f3,'menus':_0x117a66,'byId':_0x5ecdb0};}export function toProcessedMenuItem(_0x1396a8){const _0x29a5e5=a121_0x47b3;return{'id':_0x1396a8['id'],'path':_0x1396a8[_0x29a5e5(0xbc)],'label':_0x1396a8[_0x29a5e5(0xab)],'resources':[..._0x1396a8[_0x29a5e5(0xcb)]],'extend':_0x1396a8['extend']??null};}export function toMenuListItem(_0x1af694){const {modelType:_0x2c4bee,datasetId:_0xd965c9,datasetCode:_0x590284,resourcesValid:_0x182cb9,..._0x5ee802}=_0x1af694;return _0x5ee802;}export function getChildren(_0x5d494c,_0x528a5c){const _0x6ce65a=a121_0x47b3;return _0x5d494c[_0x6ce65a(0xa9)][_0x6ce65a(0xb4)](_0x4d8cf2=>_0x4d8cf2[_0x6ce65a(0xa1)]===_0x528a5c);}function flattenMenuItems(_0x129569,_0x91a07e){const _0x2edcb6=a121_0x47b3,_0x32e6d9=sortMenuItems(_0x129569),_0x55a31c=[];for(const _0x26db52 of _0x32e6d9){const _0x4ff91c=sortMenuItems(Array[_0x2edcb6(0xc9)](_0x26db52['children'])?_0x26db52['children']:[]);_0x55a31c[_0x2edcb6(0xaa)](toMenuFact(_0x26db52,_0x4ff91c,_0x91a07e)),_0x4ff91c[_0x2edcb6(0xbe)]>0x0&&_0x55a31c[_0x2edcb6(0xaa)](...flattenMenuItems(_0x4ff91c,{'verbose':_0x91a07e[_0x2edcb6(0xc7)],'parentId':_0x26db52['id'],'depth':_0x91a07e[_0x2edcb6(0xc4)]+0x1}));}return _0x55a31c;}function a121_0x47b3(_0x37a539,_0x1902e8){_0x37a539=_0x37a539-0x9b;const _0x84dd74=a121_0x84dd();let _0x47b3cd=_0x84dd74[_0x37a539];return _0x47b3cd;}function sortMenuItems(_0x53ed15){const _0x106943=a121_0x47b3;return _0x53ed15[_0x106943(0xc6)]((_0x4b2a62,_0x29c30c)=>({'item':_0x4b2a62,'index':_0x29c30c}))[_0x106943(0xa2)]((_0x9c5fad,_0x1c1141)=>{const _0x575050=_0x106943,_0x338a3d=normalizeSort(_0x9c5fad[_0x575050(0xb2)][_0x575050(0xa2)]),_0x72d2d8=normalizeSort(_0x1c1141[_0x575050(0xb2)][_0x575050(0xa2)]);if(_0x338a3d!==_0x72d2d8)return _0x338a3d-_0x72d2d8;return _0x9c5fad[_0x575050(0x9e)]-_0x1c1141[_0x575050(0x9e)];})['map'](({item:_0x319388})=>_0x319388);}function toMenuFact(_0x5c0109,_0x44d8e6,_0x4ed889){const _0x4653ef=a121_0x47b3,_0x360e1e=normalizeResourceValue(_0x5c0109['extend']?.[_0x4653ef(0xcb)]),_0x117bf3={'id':_0x5c0109['id'],'parentId':_0x4ed889['parentId'],'depth':_0x4ed889[_0x4653ef(0xc4)],'label':normalizeString(_0x5c0109[_0x4653ef(0xab)]),'path':normalizeString(_0x5c0109[_0x4653ef(0xbc)]),'url':normalizeString(_0x5c0109[_0x4653ef(0xb8)]),'type':normalizeString(_0x5c0109['type']),'visible':typeof _0x5c0109['visible']===_0x4653ef(0xa8)?_0x5c0109[_0x4653ef(0xc2)]:null,'sort':typeof _0x5c0109['sort']===_0x4653ef(0xbd)&&Number[_0x4653ef(0xc3)](_0x5c0109[_0x4653ef(0xa2)])?_0x5c0109['sort']:null,'resources':_0x360e1e[_0x4653ef(0x9b)],'resourcesValid':_0x360e1e[_0x4653ef(0xc5)],'childrenIds':_0x44d8e6[_0x4653ef(0xc6)](_0x5a3134=>_0x5a3134['id']),'childrenCount':_0x44d8e6['length'],'pageId':normalizeNullableNumber(_0x5c0109[_0x4653ef(0x9d)]),'pageType':normalizeString(_0x5c0109[_0x4653ef(0xb9)]),'modelType':normalizeString(_0x5c0109[_0x4653ef(0xac)]),'datasetId':normalizeNullableNumber(_0x5c0109[_0x4653ef(0xb1)]),'datasetCode':normalizeString(_0x5c0109['datasetCode']),'updateUserId':normalizeNullableString(_0x5c0109['updateUserId']),'updateUserName':normalizeNullableString(_0x5c0109[_0x4653ef(0x9f)]),'updateTime':normalizeNullableTimestamp(_0x5c0109[_0x4653ef(0xc1)])};return _0x4ed889[_0x4653ef(0xc7)]&&(_0x117bf3[_0x4653ef(0xa0)]=_0x5c0109[_0x4653ef(0xa0)]??null),_0x117bf3;}function toHashInput(_0x2f919b){const _0x3868e8=a121_0x47b3;return{'id':_0x2f919b['id'],'parentId':_0x2f919b[_0x3868e8(0xa1)],'label':_0x2f919b[_0x3868e8(0xab)],'path':_0x2f919b[_0x3868e8(0xbc)],'url':_0x2f919b[_0x3868e8(0xb8)],'type':_0x2f919b[_0x3868e8(0xb5)],'visible':_0x2f919b['visible'],'sort':_0x2f919b[_0x3868e8(0xa2)],'resources':_0x2f919b[_0x3868e8(0xcb)],'resourcesValid':_0x2f919b[_0x3868e8(0x9c)],'childrenIds':_0x2f919b[_0x3868e8(0xa3)],'pageId':_0x2f919b['pageId'],'pageType':_0x2f919b['pageType'],'modelType':_0x2f919b['modelType'],'datasetId':_0x2f919b[_0x3868e8(0xb1)],'datasetCode':_0x2f919b[_0x3868e8(0xba)],'updateUserId':_0x2f919b[_0x3868e8(0xb3)],'updateUserName':_0x2f919b[_0x3868e8(0x9f)],'updateTime':_0x2f919b[_0x3868e8(0xc1)]};}function a121_0x84dd(){const _0x16057d=['verbose','12767251MVvwlS','isArray','4504SNfgDQ','resources','10budaUZ','parse','values','resourcesValid','pageId','index','updateUserName','extend','parentId','sort','childrenIds','4422228JlJJJw','8976550uVqGcJ','sha256','stringify','boolean','menus','push','label','modelType','2259oiLqpg','161566EJMaXb','POSITIVE_INFINITY','125564DJyeBH','datasetId','item','updateUserId','filter','type','sha256:','12hEMdwT','url','pageType','datasetCode','63653370bbqevS','path','number','length','hex','string','updateTime','visible','isFinite','depth','valid','map'];a121_0x84dd=function(){return _0x16057d;};return a121_0x84dd();}function normalizeSort(_0x25aa4e){const _0x1ed342=a121_0x47b3;return typeof _0x25aa4e===_0x1ed342(0xbd)&&Number['isFinite'](_0x25aa4e)?_0x25aa4e:Number[_0x1ed342(0xaf)];}function normalizeString(_0x35fcce){const _0x1a002e=a121_0x47b3;return typeof _0x35fcce===_0x1a002e(0xc0)?_0x35fcce:'';}function normalizeNullableNumber(_0x2f6e20){return typeof _0x2f6e20==='number'&&Number['isFinite'](_0x2f6e20)?_0x2f6e20:null;}function normalizeNullableString(_0x1a58dc){const _0x589bc4=a121_0x47b3;return typeof _0x1a58dc===_0x589bc4(0xc0)&&_0x1a58dc['length']>0x0?_0x1a58dc:null;}function normalizeNullableTimestamp(_0x217fb9){const _0x1f2557=a121_0x47b3;if(typeof _0x217fb9===_0x1f2557(0xc0))return _0x217fb9['length']>0x0?_0x217fb9:null;return typeof _0x217fb9===_0x1f2557(0xbd)&&Number[_0x1f2557(0xc3)](_0x217fb9)?_0x217fb9:null;}export function normalizeResources(_0x61255d){const _0xfb6626=a121_0x47b3;return normalizeResourceValue(_0x61255d)[_0xfb6626(0x9b)];}function normalizeResourceValue(_0x6ac002){const _0x20527d=a121_0x47b3;if(_0x6ac002==null)return{'values':[],'valid':!![]};if(Array[_0x20527d(0xc9)](_0x6ac002))return{'values':_0x6ac002[_0x20527d(0xc6)](String),'valid':!![]};if(typeof _0x6ac002!=='string')return{'values':[],'valid':![]};try{const _0xa31f11=JSON[_0x20527d(0xcd)](_0x6ac002);return Array[_0x20527d(0xc9)](_0xa31f11)?{'values':_0xa31f11[_0x20527d(0xc6)](String),'valid':!![]}:{'values':[],'valid':![]};}catch{return{'values':[],'valid':![]};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x19151b,_0x74b5d2){var _0x518858=a122_0xd38f,_0x26058e=_0x19151b();while(!![]){try{var _0x120fe7=parseInt(_0x518858(0xce))/0x1+-parseInt(_0x518858(0xd1))/0x2*(parseInt(_0x518858(0xd2))/0x3)+parseInt(_0x518858(0xcd))/0x4*(parseInt(_0x518858(0xd0))/0x5)+parseInt(_0x518858(0xcf))/0x6+parseInt(_0x518858(0xcb))/0x7+parseInt(_0x518858(0xcc))/0x8+-parseInt(_0x518858(0xca))/0x9;if(_0x120fe7===_0x74b5d2)break;else _0x26058e['push'](_0x26058e['shift']());}catch(_0x2ea9c1){_0x26058e['push'](_0x26058e['shift']());}}}(a122_0x436b,0x82aa6));export*from'../../../commands/menu/shared/types.js';export*from'../../../commands/menu/shared/logic.js';export*from'../../../commands/menu/shared/compare-table.js';export*from'../../../commands/menu/shared/inquirer.js';export*from'../../../commands/menu/shared/valid-url.js';export*from'../../../commands/menu/shared/local-pages.js';export*from'../../../commands/menu/shared/service.js';function a122_0xd38f(_0x14fcef,_0x1eaa3d){_0x14fcef=_0x14fcef-0xca;var _0x436b71=a122_0x436b();var _0xd38f34=_0x436b71[_0x14fcef];return _0xd38f34;}function a122_0x436b(){var _0x15d9ff=['8hqzAnO','786431ToyeXL','5212944jlRchX','78295FzSnRq','113634JaAjbD','27ThJQtt','21951882MHPPAI','6870829yUJrvD','6540296ijIqNr'];a122_0x436b=function(){return _0x15d9ff;};return a122_0x436b();}export*from'../../../commands/menu/shared/sync-core.js';export*from'../../../commands/menu/shared/update-core.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x20b211,_0xf37dd2){const _0x3a49c3=a123_0x3d35,_0x1546cc=_0x20b211();while(!![]){try{const _0xa1d65f=parseInt(_0x3a49c3(0x157))/0x1+-parseInt(_0x3a49c3(0x162))/0x2+parseInt(_0x3a49c3(0x160))/0x3*(-parseInt(_0x3a49c3(0x169))/0x4)+-parseInt(_0x3a49c3(0x178))/0x5*(-parseInt(_0x3a49c3(0x158))/0x6)+parseInt(_0x3a49c3(0x165))/0x7+-parseInt(_0x3a49c3(0x159))/0x8+-parseInt(_0x3a49c3(0x154))/0x9*(-parseInt(_0x3a49c3(0x168))/0xa);if(_0xa1d65f===_0xf37dd2)break;else _0x1546cc['push'](_0x1546cc['shift']());}catch(_0x2f40f9){_0x1546cc['push'](_0x1546cc['shift']());}}}(a123_0x46d4,0xb43dc));import a123_0x3e7cbc from'chalk';import{checkbox,input,confirm}from'@inquirer/prompts';import a123_0x2ec2c4 from'ora';import{isUrlReachable}from'../../../commands/menu/shared/valid-url.js';import{CliErrors}from'../../../errors.js';function onCancel(_0xd0a018){const _0x580284=a123_0x3d35;return _0xd0a018[_0x580284(0x15b)](_0x1b05d9=>{const _0x23a25d=_0x580284;if(_0x1b05d9?.[_0x23a25d(0x177)]===_0x23a25d(0x15c))throw CliErrors[_0x23a25d(0x152)](_0x23a25d(0x171));throw _0x1b05d9;});}export function startSpinner(_0x8f4998){return a123_0x2ec2c4({'text':_0x8f4998,'color':'cyan'})['start']();}export function stopSpinner(_0x128afd,_0x363ec7,_0x5003c7){const _0x5ec906=a123_0x3d35;_0x5003c7?_0x128afd[_0x5ec906(0x16a)](_0x363ec7):_0x128afd[_0x5ec906(0x170)](_0x363ec7);}function a123_0x46d4(){const _0x92490f=['This\x20command\x20requires\x20an\x20interactive\x20terminal.\x20','fail','Cancelled.','CSS\x20URL\x20checked','trim','\x20\x20Checking\x20CSS\x20URL\x20reachability...','JS\x20URL\x20checked','length','name','54025KQMeay','red','[new]','\x20\x20Checking\x20JS\x20URL\x20reachability...','\x20\x20✗\x20CSS\x20URL\x20is\x20unreachable','cancelled','label','1201734IQQQQi','error','map','124339glZAhf','54jCupNU','6047272tDygAW','No\x20local\x20pages\x20found.','catch','ExitPromptError','JS\x20URL\x20check\x20failed','test','green','93zVMPdz','\x20\x20CSS\x20URL:','677026gtKEMR','gray','Use\x20--yes\x20to\x20run\x20in\x20non-interactive\x20mode,\x20or\x20pipe\x20data\x20via\x20--params.','4610809eszHVh','has','No\x20menus\x20selected.','110DWnKjm','66628QOQJWx','succeed','CSS\x20URL\x20check\x20failed','\x20\x20JS\x20URL:','path','\x20\x20Select\x20menus\x20to\x20sync\x20(space\x20to\x20toggle,\x20a=all,\x20i=invert):'];a123_0x46d4=function(){return _0x92490f;};return a123_0x46d4();}export async function askConfirm(_0x3820ac){return onCancel(confirm({'message':_0x3820ac,'theme':{'prefix':''}}));}export async function askJsUrl(_0x5e7106){const _0x149ace=a123_0x3d35;while(!![]){const _0x35f739=await onCancel(input({'message':_0x149ace(0x16c),'default':_0x5e7106,'theme':{'prefix':''}}));if(_0x35f739['trim']()==='')throw CliErrors[_0x149ace(0x152)](_0x149ace(0x171));if(!/^https:\/\/.+\.js(\?.*)?$/[_0x149ace(0x15e)](_0x35f739[_0x149ace(0x173)]())){console[_0x149ace(0x155)](a123_0x3e7cbc[_0x149ace(0x179)]('\x20\x20✗\x20JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL'));continue;}const _0x33736d=startSpinner(_0x149ace(0x17b));try{const _0x3267c0=await isUrlReachable(_0x35f739[_0x149ace(0x173)]());stopSpinner(_0x33736d,_0x149ace(0x175),_0x3267c0);if(!_0x3267c0){console[_0x149ace(0x155)](a123_0x3e7cbc[_0x149ace(0x179)]('\x20\x20✗\x20JS\x20URL\x20is\x20unreachable'));continue;}return _0x35f739[_0x149ace(0x173)]();}catch(_0x48eb53){stopSpinner(_0x33736d,_0x149ace(0x15d),![]);throw _0x48eb53;}}}function a123_0x3d35(_0x41890c,_0x2e22bd){_0x41890c=_0x41890c-0x152;const _0x46d4d9=a123_0x46d4();let _0x3d3592=_0x46d4d9[_0x41890c];return _0x3d3592;}export async function askCssUrl(_0x28c915){const _0x598dad=a123_0x3d35;while(!![]){const _0x578462=await onCancel(input({'message':_0x598dad(0x161),'default':_0x28c915,'theme':{'prefix':''}}));if(_0x578462[_0x598dad(0x173)]()==='')throw CliErrors[_0x598dad(0x152)](_0x598dad(0x171));if(!/^https:\/\/.+\.css(\?.*)?$/[_0x598dad(0x15e)](_0x578462[_0x598dad(0x173)]())){console[_0x598dad(0x155)](a123_0x3e7cbc['red']('\x20\x20✗\x20CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL'));continue;}const _0xab5407=startSpinner(_0x598dad(0x174));try{const _0x1dbb7=await isUrlReachable(_0x578462['trim']());stopSpinner(_0xab5407,_0x598dad(0x172),_0x1dbb7);if(!_0x1dbb7){console[_0x598dad(0x155)](a123_0x3e7cbc['red'](_0x598dad(0x17c)));continue;}return _0x578462[_0x598dad(0x173)]();}catch(_0x5729ec){stopSpinner(_0xab5407,_0x598dad(0x16b),![]);throw _0x5729ec;}}}export async function selectPages(_0x22e8cf,_0x4def3e){const _0x225c07=a123_0x3d35,_0x19e5aa=_0x22e8cf[_0x225c07(0x156)](_0x1f8213=>{const _0x43964f=_0x225c07,_0x1a7bcb=_0x4def3e[_0x43964f(0x166)](_0x1f8213[_0x43964f(0x16d)]);return{'name':_0x1f8213[_0x43964f(0x153)]+'\x20\x20'+a123_0x3e7cbc[_0x43964f(0x163)](_0x1f8213[_0x43964f(0x16d)])+'\x20\x20'+(_0x1a7bcb?a123_0x3e7cbc['gray']('[already\x20on\x20platform]'):a123_0x3e7cbc[_0x43964f(0x15f)](_0x43964f(0x17a))),'value':_0x1f8213[_0x43964f(0x16d)],'checked':!_0x1a7bcb,'disabled':_0x1a7bcb};});if(_0x19e5aa[_0x225c07(0x176)]===0x0)throw new Error(_0x225c07(0x15a));const _0x2c0979=await onCancel(checkbox({'message':_0x225c07(0x16e),'choices':_0x19e5aa,'loop':![],'theme':{'prefix':''}}));if(_0x2c0979[_0x225c07(0x176)]===0x0)throw new Error(_0x225c07(0x167));return _0x22e8cf['filter'](_0x278693=>_0x2c0979['includes'](_0x278693[_0x225c07(0x16d)]));}export function isInteractive(){return process['stdin']['isTTY']===!![];}export function requireInteractive(){const _0x5cf945=a123_0x3d35;if(!isInteractive())throw new Error(_0x5cf945(0x16f)+_0x5cf945(0x164));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x211de7,_0x123771){const _0x4a0141=a124_0x46d3,_0x3eabef=_0x211de7();while(!![]){try{const _0x451468=-parseInt(_0x4a0141(0x171))/0x1*(-parseInt(_0x4a0141(0x173))/0x2)+parseInt(_0x4a0141(0x17c))/0x3+-parseInt(_0x4a0141(0x17f))/0x4*(parseInt(_0x4a0141(0x17e))/0x5)+parseInt(_0x4a0141(0x172))/0x6+-parseInt(_0x4a0141(0x183))/0x7*(parseInt(_0x4a0141(0x181))/0x8)+-parseInt(_0x4a0141(0x186))/0x9*(-parseInt(_0x4a0141(0x18b))/0xa)+parseInt(_0x4a0141(0x189))/0xb*(-parseInt(_0x4a0141(0x176))/0xc);if(_0x451468===_0x123771)break;else _0x3eabef['push'](_0x3eabef['shift']());}catch(_0x233cd7){_0x3eabef['push'](_0x3eabef['shift']());}}}(a124_0x1441,0xaf13f));import{readdirSync,statSync,readFileSync}from'fs';import{join,relative,resolve,sep}from'path';const pagesDir=resolve(process['cwd'](),'src/pages');function a124_0x46d3(_0x4fa402,_0x362938){_0x4fa402=_0x4fa402-0x170;const _0x144127=a124_0x1441();let _0x46d3a6=_0x144127[_0x4fa402];return _0x46d3a6;}export function extractTitleFromComment(_0x56f635){const _0x31f502=a124_0x46d3;try{const _0x443f8b=readFileSync(_0x56f635,_0x31f502(0x179)),_0x3c526f=_0x443f8b[_0x31f502(0x180)](/^\s*\/\*\*?([\s\S]*?)\*\//);if(_0x3c526f&&_0x3c526f[0x1]){const _0x25ddf4=_0x3c526f[0x1],_0x351fd=_0x25ddf4['match'](/^\s*\*?\s*title\s*:\s*(.+)/im);if(_0x351fd&&_0x351fd[0x1])return _0x351fd[0x1][_0x31f502(0x187)]();}let _0x239ec4=null;const _0x45115a=_0x443f8b[_0x31f502(0x180)](/export\s+default\s+([A-Z][a-zA-Z0-9]*)/);_0x45115a&&_0x45115a[0x1]&&(_0x239ec4=_0x45115a[0x1]);if(!_0x239ec4){const _0x3709e1=_0x443f8b[_0x31f502(0x180)](/export\s+default\s+function\s+([A-Z][a-zA-Z0-9]*)/);_0x3709e1&&_0x3709e1[0x1]&&(_0x239ec4=_0x3709e1[0x1]);}if(_0x239ec4){const _0x54b13e=new RegExp('\x5cb'+_0x239ec4+_0x31f502(0x178)),_0x237cee=_0x443f8b[_0x31f502(0x180)](_0x54b13e);if(_0x237cee&&_0x237cee[0x1])return _0x237cee[0x1];return _0x239ec4;}return null;}catch(_0x242f36){return null;}}export function getLocalPages(_0x4fc97b=pagesDir,_0x1cb0ec=pagesDir){const _0x10f511=a124_0x46d3;let _0x20463c=[];const _0xebfa9c=readdirSync(_0x4fc97b);return _0xebfa9c[_0x10f511(0x174)](_0x554d50=>{const _0x5640c9=_0x10f511,_0x421fab=join(_0x4fc97b,_0x554d50),_0x1378ce=statSync(_0x421fab);if(_0x1378ce&&_0x1378ce[_0x5640c9(0x18a)]())_0x20463c=_0x20463c['concat'](getLocalPages(_0x421fab,_0x1cb0ec));else{if(_0x554d50[_0x5640c9(0x184)](_0x5640c9(0x17b))){let _0x350dfa=relative(_0x1cb0ec,_0x421fab);_0x350dfa[_0x5640c9(0x184)](_0x5640c9(0x17d))?_0x350dfa=_0x350dfa[_0x5640c9(0x18c)](/index\.tsx$/,''):_0x350dfa=_0x350dfa[_0x5640c9(0x18c)](/\.tsx$/,'');_0x350dfa[_0x5640c9(0x184)](sep)&&(_0x350dfa=_0x350dfa[_0x5640c9(0x175)](0x0,-0x1));const _0x55e42b=_0x350dfa[_0x5640c9(0x188)](sep)[_0x5640c9(0x182)]('/'),_0x498174=extractTitleFromComment(_0x421fab),_0x170046=_0x498174||_0x55e42b;_0x20463c[_0x5640c9(0x185)]({'path':_0x55e42b[_0x5640c9(0x177)]('$',':'),'label':_0x170046});}}}),_0x20463c[_0x10f511(0x170)](_0x5940a2=>_0x5940a2[_0x10f511(0x17a)]!=='');}function a124_0x1441(){const _0x1920ad=['isDirectory','30kRmOiK','replace','filter','3eODMur','6358032LwGiru','479412eRKkOd','forEach','slice','411132QPzxEs','replaceAll','\x5c.displayName\x5cs*=\x5cs*[\x22\x27]([^\x22\x27]+)[\x22\x27]','utf-8','path','.tsx','3402261HysINi','index.tsx','4705XRsSIf','5032xtcIcN','match','64NHCvuq','join','623021STpaYh','endsWith','push','436311cVrVAd','trim','split','143zOAcnb'];a124_0x1441=function(){return _0x1920ad;};return a124_0x1441();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x184091,_0x1cd18d){const _0x28ec23=a125_0x2ae8,_0xa9ea01=_0x184091();while(!![]){try{const _0x49813e=parseInt(_0x28ec23(0x1ea))/0x1+-parseInt(_0x28ec23(0x1ed))/0x2+parseInt(_0x28ec23(0x1fb))/0x3*(-parseInt(_0x28ec23(0x1f0))/0x4)+-parseInt(_0x28ec23(0x1f9))/0x5*(parseInt(_0x28ec23(0x1e7))/0x6)+parseInt(_0x28ec23(0x1f8))/0x7*(parseInt(_0x28ec23(0x1ef))/0x8)+parseInt(_0x28ec23(0x1e9))/0x9*(parseInt(_0x28ec23(0x1f6))/0xa)+parseInt(_0x28ec23(0x1f3))/0xb*(parseInt(_0x28ec23(0x1f4))/0xc);if(_0x49813e===_0x1cd18d)break;else _0xa9ea01['push'](_0xa9ea01['shift']());}catch(_0x266d84){_0xa9ea01['push'](_0xa9ea01['shift']());}}}(a125_0x5976,0x3d464));import{getLocalPages}from'../../../commands/menu/shared/local-pages.js';import{getOnlineMenuList,createMenus}from'../../../commands/menu/shared/service.js';import{isUrlReachable,isValidCssHttpsUrl,isValidJsHttpsUrl}from'../../../commands/menu/shared/valid-url.js';function a125_0x5976(){const _0x9d8465=['errors','54387TZYWvD','148821jvNXIQ','path','has','191754umedRc','map','24EIMYmL','8rZDwEJ','push','JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','264hJdIXU','348444CPpbWJ','JS\x20URL\x20is\x20unreachable','10NZzqxh','resources','177254TAjSPw','5JNouxR','CSS\x20URL\x20is\x20unreachable','707259BlLPVV','filter','CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','label','length','656130EfdxhV'];a125_0x5976=function(){return _0x9d8465;};return a125_0x5976();}export function validateJsUrl(_0x4351e0){const _0x44984c=a125_0x2ae8,_0x42ce76=[];return!isValidJsHttpsUrl(_0x4351e0)&&_0x42ce76['push'](_0x44984c(0x1f2)),{'ok':_0x42ce76[_0x44984c(0x1e6)]===0x0,'errors':_0x42ce76};}export function validateCssUrl(_0x4a9c5e){const _0x5356f1=a125_0x2ae8,_0x5c7171=[];return!isValidCssHttpsUrl(_0x4a9c5e)&&_0x5c7171[_0x5356f1(0x1f1)](_0x5356f1(0x1fd)),{'ok':_0x5c7171['length']===0x0,'errors':_0x5c7171};}export async function validateJsUrlReachable(_0x41a49a){const _0xecb9ac=a125_0x2ae8,_0x38822b=validateJsUrl(_0x41a49a);if(!_0x38822b['ok'])return _0x38822b;const _0x2d28a9=await isUrlReachable(_0x41a49a);if(!_0x2d28a9)_0x38822b[_0xecb9ac(0x1e8)][_0xecb9ac(0x1f1)](_0xecb9ac(0x1f5));return{'ok':_0x38822b['errors']['length']===0x0,'errors':_0x38822b[_0xecb9ac(0x1e8)]};}export async function validateCssUrlReachable(_0x468ff1){const _0x1edcd9=a125_0x2ae8,_0x2b4d16=validateCssUrl(_0x468ff1);if(!_0x2b4d16['ok'])return _0x2b4d16;const _0x4991f4=await isUrlReachable(_0x468ff1);if(!_0x4991f4)_0x2b4d16[_0x1edcd9(0x1e8)][_0x1edcd9(0x1f1)](_0x1edcd9(0x1fa));return{'ok':_0x2b4d16[_0x1edcd9(0x1e8)][_0x1edcd9(0x1e6)]===0x0,'errors':_0x2b4d16[_0x1edcd9(0x1e8)]};}function a125_0x2ae8(_0x3d9925,_0x4040e1){_0x3d9925=_0x3d9925-0x1e5;const _0x5976f2=a125_0x5976();let _0x2ae87d=_0x5976f2[_0x3d9925];return _0x2ae87d;}export function buildCompareRows(_0x266052,_0x3c8cb1){const _0x356647=a125_0x2ae8;return _0x266052[_0x356647(0x1ee)](_0x35eb67=>({'label':_0x35eb67[_0x356647(0x1e5)],'path':_0x35eb67['path'],'local':!![],'online':_0x3c8cb1[_0x356647(0x1ec)](_0x35eb67['path'])}));}export async function doCreateMenus(_0x7c8911,_0x29182d,_0x3074b2,_0x277c80){const _0x4feb1a=a125_0x2ae8,_0x26cdcc=await createMenus(_0x7c8911,_0x29182d,_0x3074b2,_0x277c80);return{'created':_0x26cdcc['length'],'failed':0x0,'labels':_0x3074b2['map'](_0x5872b6=>_0x5872b6[_0x4feb1a(0x1e5)]),'menus':_0x26cdcc};}export function filterMenusWithResources(_0x375bc5){const _0x264505=a125_0x2ae8;return _0x375bc5[_0x264505(0x1fc)](_0x3791cf=>_0x3791cf[_0x264505(0x1f7)]['length']>0x0);}export async function fetchMenuData(_0x5edd9f,_0x493bd6){const _0x1437c8=a125_0x2ae8,_0x51a107=getLocalPages(),_0x30697c=await getOnlineMenuList(_0x5edd9f,_0x493bd6),_0x1e5e06=new Set(_0x30697c[_0x1437c8(0x1ee)](_0x4faa4b=>_0x4faa4b[_0x1437c8(0x1eb)]));return{'localPages':_0x51a107,'onlineMenuList':_0x30697c,'onlinePaths':_0x1e5e06};}export async function fetchOnlineMenuList(_0x8b5ce5,_0x539e3b){return getOnlineMenuList(_0x8b5ce5,_0x539e3b);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a119_0x34087a=a119_0x24aa;(function(_0x35d1f3,_0x41fb01){const _0x4a3982=a119_0x24aa,_0x1161b8=_0x35d1f3();while(!![]){try{const _0x19c6a6=parseInt(_0x4a3982(0x136))/0x1*(parseInt(_0x4a3982(0x148))/0x2)+parseInt(_0x4a3982(0x149))/0x3+-parseInt(_0x4a3982(0x157))/0x4+parseInt(_0x4a3982(0x16d))/0x5+-parseInt(_0x4a3982(0x15b))/0x6+-parseInt(_0x4a3982(0x16b))/0x7+parseInt(_0x4a3982(0x13b))/0x8;if(_0x19c6a6===_0x41fb01)break;else _0x1161b8['push'](_0x1161b8['shift']());}catch(_0x15a551){_0x1161b8['push'](_0x1161b8['shift']());}}}(a119_0x560c,0xad485));import{CliError,CliErrors}from'../../../errors.js';import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';export const MAX_MENU_SORT=0x7fffffff;export const MENU_ID_FLAG={'name':'id','type':a119_0x34087a(0x170),'required':!![],'description':a119_0x34087a(0x145)};export const MENU_SORT_FLAG={'name':'sort','type':a119_0x34087a(0x170),'description':'Sibling\x20sort\x20value\x20(non-negative\x20integer)'};export const MENU_PARENT_ID_FLAG={'name':a119_0x34087a(0x13d),'type':a119_0x34087a(0x12f),'description':a119_0x34087a(0x114)};export const MENU_EXPECT_PARENT_ID_FLAG={'name':a119_0x34087a(0x174),'type':a119_0x34087a(0x12f),'description':a119_0x34087a(0x15a)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a119_0x34087a(0x14e),'type':a119_0x34087a(0x12f),'description':a119_0x34087a(0x160)},{'name':a119_0x34087a(0x118),'type':a119_0x34087a(0x170),'description':a119_0x34087a(0x11c)}];export function validateExactId(_0x1764bf){const _0x58e594=a119_0x34087a,_0x20161d=_0x1764bf[_0x58e594(0x131)]('id');if(!Number['isSafeInteger'](_0x20161d)||_0x20161d<=0x0)throw CliErrors[_0x58e594(0x128)](_0x58e594(0x172));return _0x20161d;}export function validateSort(_0x59838f,_0x4999a4=a119_0x34087a(0x117)){const _0x506fde=a119_0x34087a;if(!hasFlag(_0x59838f,_0x4999a4))return undefined;const _0x3f09ed=_0x59838f[_0x506fde(0x131)](_0x4999a4);if(!Number[_0x506fde(0x12b)](_0x3f09ed)||_0x3f09ed<0x0||_0x3f09ed>MAX_MENU_SORT)throw menuError(_0x506fde(0x121),'--'+_0x4999a4+_0x506fde(0x171)+MAX_MENU_SORT+'.',_0x506fde(0x11f));return _0x3f09ed;}export function nextSiblingSort(_0x1025e7,_0x1db274,_0x518a8b){const _0x19fd37=a119_0x34087a,_0x22ffe0=getChildren(_0x1025e7,_0x1db274)[_0x19fd37(0x126)](_0x591e8=>_0x591e8[_0x19fd37(0x117)])[_0x19fd37(0x120)](_0x10f8be=>typeof _0x10f8be===_0x19fd37(0x170));if(_0x22ffe0['length']===0x0)return 0x0;const _0x254753=Math[_0x19fd37(0x177)](..._0x22ffe0);if(_0x254753>=MAX_MENU_SORT)throw menuError(_0x19fd37(0x11a),_0x19fd37(0x169)+_0x518a8b+'\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20'+_0x254753+'.','Reorder\x20sibling\x20menus\x20below\x20'+MAX_MENU_SORT+_0x19fd37(0x125));return _0x254753+0x1;}function a119_0x24aa(_0xe01bfd,_0x15d8d9){_0xe01bfd=_0xe01bfd-0x112;const _0x560c05=a119_0x560c();let _0x24aad1=_0x560c05[_0xe01bfd];return _0x24aad1;}export function requireExplicitYes(_0x2c0021){const _0x2f9dc1=a119_0x34087a;if(_0x2c0021[_0x2f9dc1(0x14a)](_0x2f9dc1(0x16e)))return;if(!_0x2c0021[_0x2f9dc1(0x14a)](_0x2f9dc1(0x138)))throw menuError(_0x2f9dc1(0x140),_0x2f9dc1(0x155),_0x2f9dc1(0x141));}export async function fetchMutationSnapshot(_0x2f82be,_0x2dac7e,_0x17c90b){const _0xc1c81e=a119_0x34087a;try{return await fetchMenuSnapshot(_0x2f82be['appCode'],_0x2f82be[_0xc1c81e(0x122)]);}catch(_0x10e6ef){throw mapMenuApiError(_0x10e6ef,_0xc1c81e(0x166)+_0x2dac7e,_0x17c90b);}}export async function recheckMutationSnapshot(_0x4991ad,_0x318af4,_0x199d77,_0x170022){const _0x1a9407=a119_0x34087a;let _0x1a1d8d;try{_0x1a1d8d=await fetchMenuSnapshot(_0x4991ad[_0x1a9407(0x178)],_0x4991ad[_0x1a9407(0x122)]);}catch(_0x506b4d){const _0x52ce31=mapMenuApiError(_0x506b4d,_0x1a9407(0x139)+_0x199d77,_0x170022);throw menuFailure(_0x52ce31,_0x318af4,{'stage':'pre-write-recheck','failed':_0x170022==null?{}:{'id':_0x170022}});}if(_0x1a1d8d['hash']!==_0x318af4[_0x1a9407(0x168)]){const _0x10353b=menuError('menu_state_drift',_0x1a9407(0x152)+_0x199d77+_0x1a9407(0x147),'Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.');throw menuFailure(_0x10353b,_0x318af4,{'stage':_0x1a9407(0x133),'failed':{..._0x170022==null?{}:{'id':_0x170022},'expectedSnapshotHash':_0x318af4[_0x1a9407(0x168)],'currentSnapshotHash':_0x1a1d8d['hash']}});}return _0x1a1d8d;}export function parseParentId(_0x1fadd4,_0x4900c2,_0x5dc223={}){const _0x5c8ca9=a119_0x34087a;if(!hasFlag(_0x1fadd4,_0x4900c2)){if(_0x5dc223[_0x5c8ca9(0x142)])throw CliErrors[_0x5c8ca9(0x115)](_0x4900c2);return undefined;}const _0x1d6a58=_0x1fadd4[_0x5c8ca9(0x179)](_0x4900c2)[_0x5c8ca9(0x119)]();if(_0x1d6a58[_0x5c8ca9(0x167)]()===_0x5c8ca9(0x123))return null;if(!/^\d+$/[_0x5c8ca9(0x164)](_0x1d6a58))throw CliErrors['validation']('--'+_0x4900c2+_0x5c8ca9(0x144));const _0x52654f=Number(_0x1d6a58);if(!Number[_0x5c8ca9(0x12b)](_0x52654f)||_0x52654f<=0x0)throw CliErrors[_0x5c8ca9(0x128)]('--'+_0x4900c2+_0x5c8ca9(0x144));return _0x52654f;}export function requireMenu(_0xacf6c0,_0x109daa){const _0x2c3f7b=a119_0x34087a,_0x41c4bb=_0xacf6c0[_0x2c3f7b(0x151)][_0x2c3f7b(0x161)](_0x109daa);if(!_0x41c4bb)throw menuError(_0x2c3f7b(0x124),_0x2c3f7b(0x15f)+_0x109daa,_0x2c3f7b(0x173));return _0x41c4bb;}export function requireFolder(_0x5f2ec5,_0x401d64){const _0x429d13=a119_0x34087a,_0x2f6679=requireMenu(_0x5f2ec5,_0x401d64);if(_0x2f6679[_0x429d13(0x113)]!==_0x429d13(0x154))throw menuError(_0x429d13(0x162),_0x429d13(0x153)+_0x401d64+_0x429d13(0x12d)+(_0x2f6679[_0x429d13(0x113)]||'unknown')+'\x22,\x20not\x20folder.',_0x429d13(0x16c));return _0x2f6679;}export function assertExpectedState(_0x171744,_0x243cee){const _0xd7656d=a119_0x34087a;if(hasFlag(_0x171744,'expect-parent-id')){const _0x6078f1=parseParentId(_0x171744,_0xd7656d(0x174),{'required':!![]});if(_0x243cee['parentId']!==_0x6078f1)throw stateDrift('Menu\x20'+_0x243cee['id']+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x6078f1)+_0xd7656d(0x143)+formatParent(_0x243cee['parentId'])+'.');}if(hasFlag(_0x171744,'expect-path')){const _0x3c8851=_0x171744[_0xd7656d(0x179)]('expect-path');if(_0x243cee[_0xd7656d(0x129)]!==_0x3c8851)throw stateDrift(_0xd7656d(0x153)+_0x243cee['id']+_0xd7656d(0x13e)+JSON['stringify'](_0x3c8851)+_0xd7656d(0x143)+JSON['stringify'](_0x243cee[_0xd7656d(0x129)])+'.');}if(hasFlag(_0x171744,_0xd7656d(0x118))){const _0x2cea1c=_0x171744[_0xd7656d(0x131)](_0xd7656d(0x118));if(!Number[_0xd7656d(0x12b)](_0x2cea1c)||_0x2cea1c<0x0)throw CliErrors[_0xd7656d(0x128)](_0xd7656d(0x130));if(_0x243cee['childrenCount']!==_0x2cea1c)throw stateDrift(_0xd7656d(0x153)+_0x243cee['id']+_0xd7656d(0x112)+_0x2cea1c+_0xd7656d(0x143)+_0x243cee[_0xd7656d(0x15c)]+'.');}}export function assertVerified(_0x464761,_0x57c7b9,_0x2be6c2='Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.'){if(!_0x464761)throw menuError('menu_verification_failed',_0x57c7b9,_0x2be6c2);}export function mutationResult(_0x5ce71e){const _0x374545=a119_0x34087a;return{'operation':_0x5ce71e[_0x374545(0x132)],'selector':_0x5ce71e[_0x374545(0x11d)],'before':_0x5ce71e[_0x374545(0x13f)],'after':_0x5ce71e['after'],'dryRun':_0x5ce71e['dryRun'],'backend':_0x5ce71e[_0x374545(0x16a)],..._0x5ce71e[_0x374545(0x163)]?{'plannedActions':_0x5ce71e[_0x374545(0x163)]}:{},..._0x5ce71e[_0x374545(0x134)]?{'targets':_0x5ce71e[_0x374545(0x134)]}:{},..._0x5ce71e[_0x374545(0x14d)]?{'deleteOrder':_0x5ce71e[_0x374545(0x14d)]}:{},'snapshotHash':_0x5ce71e[_0x374545(0x168)],..._0x5ce71e[_0x374545(0x156)]?{'cascade':_0x5ce71e['cascade']}:{},..._0x5ce71e[_0x374545(0x175)]?{'planFile':_0x5ce71e[_0x374545(0x175)]}:{},'succeeded':_0x5ce71e[_0x374545(0x176)]??[],'failed':_0x5ce71e[_0x374545(0x13c)]??[],'warnings':_0x5ce71e[_0x374545(0x150)]??[],'verification':_0x5ce71e[_0x374545(0x146)],'error':_0x5ce71e[_0x374545(0x135)]};}export function menuDryRunResult(_0x161ce6,_0x42d858){return{..._0x161ce6,..._0x42d858};}export function menuFailure(_0x3e3cd9,_0x1bcdbe,_0x507c56){const _0x3ca902=a119_0x34087a,_0xe56fdb=mutationResult({..._0x1bcdbe,'after':_0x507c56['after']===undefined?_0x1bcdbe['after']:_0x507c56[_0x3ca902(0x15e)],'backend':_0x507c56[_0x3ca902(0x16a)]??_0x1bcdbe[_0x3ca902(0x16a)],'dryRun':![],'succeeded':_0x507c56[_0x3ca902(0x176)]??[],'failed':[{..._0x507c56['failed']??{},'stage':_0x507c56['stage'],'code':_0x3e3cd9['code'],'message':_0x3e3cd9[_0x3ca902(0x14b)]}],'warnings':[..._0x1bcdbe[_0x3ca902(0x150)],..._0x507c56[_0x3ca902(0x150)]??[]],'verification':_0x507c56[_0x3ca902(0x146)],'error':{'code':_0x3e3cd9[_0x3ca902(0x127)],'message':_0x3e3cd9[_0x3ca902(0x14b)],..._0x3e3cd9[_0x3ca902(0x159)]?{'hint':_0x3e3cd9[_0x3ca902(0x159)]}:{}}});return Object[_0x3ca902(0x137)](_0x3e3cd9,_0x3ca902(0x12c),{'value':_0xe56fdb,'enumerable':!![],'configurable':!![]}),_0x3e3cd9;}function a119_0x560c(){const _0x59892e=['after','Online\x20menu\x20not\x20found:\x20','Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches','get','menu_parent_not_folder','plannedActions','test','api_error','read\x20online\x20menu\x20facts\x20before\x20','toLowerCase','snapshotHash','Cannot\x20append\x20a\x20','backend','9629410ydYmHn','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','504605YgPItT','dry-run','Permission\x20denied\x20while\x20attempting\x20to\x20','number','\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20','--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.','expect-parent-id','planFile','succeeded','max','appCode','str','\x20child\x20count\x20changed:\x20expected\x20','type','Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node','flagMissing','rawFlags','sort','expected-children-count','trim','menu_sort_overflow','hasOwnProperty','Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches','selector','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','filter','menu_sort_invalid','cookie','root','menu_not_found',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','map','code','validation','path','The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.','isSafeInteger','data','\x20is\x20type\x20\x22','menu_verification_failed','string','--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.','num','operation','pre-write-recheck','targets','error','646262DbUTUz','defineProperty','yes','recheck\x20online\x20menu\x20facts\x20before\x20','menu_permission_denied','10345360sOQolt','failed','parent-id','\x20path\x20changed:\x20expected\x20','before','menu_confirmation_required','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','required',',\x20current\x20','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','Exact\x20online\x20menu\x20id','verification',';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.','4lWpauf','1478382DXSKVd','bool','message','Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.','deleteOrder','expect-path','\x20menu\x20','warnings','byId','Online\x20menu\x20state\x20changed\x20before\x20','Menu\x20','folder','This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','cascade','1945268TWUciS','menu_mutation_failed','hint','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','3646182RiaPfv','childrenCount','prototype'];a119_0x560c=function(){return _0x59892e;};return a119_0x560c();}export function asVerificationError(_0x1c672e,_0x1e7bf1){const _0xc759b8=a119_0x34087a;if(_0x1c672e instanceof CliError&&_0x1c672e[_0xc759b8(0x127)]===_0xc759b8(0x12e))return _0x1c672e;const _0x23c498=_0x1c672e instanceof Error?_0x1c672e[_0xc759b8(0x14b)]:String(_0x1c672e);return menuError(_0xc759b8(0x12e),''+_0x1e7bf1+(_0x23c498?':\x20'+_0x23c498:''),_0xc759b8(0x12a));}export function describeMenuErrorCause(_0x4dc606,_0x38572f,_0x56b326){const _0x27a50b=a119_0x34087a,_0x68052e=mapMenuApiError(_0x4dc606,_0x38572f,_0x56b326);return{'causeCode':_0x68052e[_0x27a50b(0x127)],'causeMessage':_0x68052e[_0x27a50b(0x14b)]};}export function hasFlag(_0x4ba02a,_0x406dec){const _0x72a350=a119_0x34087a;return Object[_0x72a350(0x15d)][_0x72a350(0x11b)]['call'](_0x4ba02a[_0x72a350(0x116)],_0x406dec)&&_0x4ba02a[_0x72a350(0x116)][_0x406dec]!==undefined;}export function toApiParentId(_0x4dfe02){return _0x4dfe02??0x0;}export function formatParent(_0xb50186){const _0x4e6385=a119_0x34087a;return _0xb50186==null?_0x4e6385(0x123):String(_0xb50186);}export function menuError(_0x4dccae,_0x37998f,_0x29e65a){return new CliError(_0x4dccae,0x1,_0x37998f,_0x29e65a);}export function mapMenuApiError(_0x3bfb0a,_0x161d2f,_0x35b70f){const _0x4231c6=a119_0x34087a;if(_0x3bfb0a instanceof CliError&&_0x3bfb0a[_0x4231c6(0x127)]!=='api_error')return _0x3bfb0a;const _0x1f93b5=_0x3bfb0a instanceof Error?_0x3bfb0a[_0x4231c6(0x14b)]:String(_0x3bfb0a);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x4231c6(0x164)](_0x1f93b5))return menuError(_0x4231c6(0x13a),_0x4231c6(0x16f)+_0x161d2f+(_0x35b70f?_0x4231c6(0x14f)+_0x35b70f:'')+'.',_0x4231c6(0x11e));return menuError(_0x4231c6(0x158),'Failed\x20to\x20'+_0x161d2f+(_0x35b70f?_0x4231c6(0x14f)+_0x35b70f:'')+':\x20'+_0x1f93b5,_0x4231c6(0x14c));}export function isMenuResponseLoss(_0xa39705){const _0x4ee76d=a119_0x34087a,_0x2df891=_0xa39705 instanceof Error?_0xa39705[_0x4ee76d(0x14b)]:String(_0xa39705);if(_0xa39705 instanceof CliError)return _0xa39705['code']===_0x4ee76d(0x165)&&/^Request (?:failed|timeout):/i[_0x4ee76d(0x164)](_0x2df891);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i[_0x4ee76d(0x164)](_0x2df891);}function stateDrift(_0x4fe5b1){return menuError('menu_state_drift',_0x4fe5b1,'Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.');}
|
|
1
|
+
const a126_0xc1b8eb=a126_0x4ae9;function a126_0x1acc(){const _0x1f89b9=['parent-id','childrenCount','selector','warnings','rawFlags','number','map','message','4IApXtN','expected-children-count','hint','failed','cascade','cookie','stringify','\x20parent\x20changed:\x20expected\x20','Failed\x20to\x20','Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.','expect-path','call','length','menu_confirmation_required','menu_permission_denied','str','succeeded','Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node','isSafeInteger','Sibling\x20sort\x20value\x20(non-negative\x20integer)','num','Menu\x20','appCode','The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.','code','menu_verification_failed',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','planFile','flagMissing','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','read\x20online\x20menu\x20facts\x20before\x20','bool','\x20child\x20count\x20changed:\x20expected\x20','verification','toLowerCase','dryRun','3768950OeqpOZ','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','string','4306947CreWLN','sort','expect-parent-id','type','hasOwnProperty','menu_state_drift','Cannot\x20append\x20a\x20','9NEfyYj','snapshotHash','menu_mutation_failed','menu_not_found','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.','904fMrVuW','after','folder','menu_sort_overflow','recheck\x20online\x20menu\x20facts\x20before\x20','134235ZPZBTC','menu_sort_invalid','6zCpsTx','get','Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches','path','Online\x20menu\x20state\x20changed\x20before\x20','deleteOrder','\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20','This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','dry-run','68565GCvaHn','filter','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.',',\x20current\x20','data','required','14586242YhswBR','pre-write-recheck','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','root','894682JrmdvQ','parentId','api_error','validation','plannedActions','--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.','--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.','\x20path\x20changed:\x20expected\x20','hash','162530uWJvUg','\x20menu\x20','targets','\x20is\x20type\x20\x22','error','max','backend','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','Online\x20menu\x20not\x20found:\x20','test'];a126_0x1acc=function(){return _0x1f89b9;};return a126_0x1acc();}(function(_0x4d1885,_0x49f06b){const _0x1d5100=a126_0x4ae9,_0x31b544=_0x4d1885();while(!![]){try{const _0x37d1c0=-parseInt(_0x1d5100(0x10e))/0x1+-parseInt(_0x1d5100(0xba))/0x2+-parseInt(_0x1d5100(0xfc))/0x3*(-parseInt(_0x1d5100(0xd5))/0x4)+-parseInt(_0x1d5100(0xc3))/0x5*(-parseInt(_0x1d5100(0x110))/0x6)+-parseInt(_0x1d5100(0x11a))/0x7*(parseInt(_0x1d5100(0x109))/0x8)+-parseInt(_0x1d5100(0x103))/0x9*(parseInt(_0x1d5100(0xf9))/0xa)+parseInt(_0x1d5100(0xb6))/0xb;if(_0x37d1c0===_0x49f06b)break;else _0x31b544['push'](_0x31b544['shift']());}catch(_0x5c079f){_0x31b544['push'](_0x31b544['shift']());}}}(a126_0x1acc,0xb1f27));import{CliError,CliErrors}from'../../../errors.js';import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';export const MAX_MENU_SORT=0x7fffffff;export const MENU_ID_FLAG={'name':'id','type':a126_0xc1b8eb(0xd2),'required':!![],'description':'Exact\x20online\x20menu\x20id'};export const MENU_SORT_FLAG={'name':a126_0xc1b8eb(0xfd),'type':a126_0xc1b8eb(0xd2),'description':a126_0xc1b8eb(0xe8)};export const MENU_PARENT_ID_FLAG={'name':a126_0xc1b8eb(0xcd),'type':a126_0xc1b8eb(0xfb),'description':a126_0xc1b8eb(0xe6)};export const MENU_EXPECT_PARENT_ID_FLAG={'name':'expect-parent-id','type':'string','description':a126_0xc1b8eb(0x107)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a126_0xc1b8eb(0xdf),'type':a126_0xc1b8eb(0xfb),'description':a126_0xc1b8eb(0x112)},{'name':a126_0xc1b8eb(0xd6),'type':a126_0xc1b8eb(0xd2),'description':'Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches'}];export function validateExactId(_0x4174c5){const _0x293e16=a126_0xc1b8eb,_0x59d0da=_0x4174c5[_0x293e16(0xe9)]('id');if(!Number[_0x293e16(0xe7)](_0x59d0da)||_0x59d0da<=0x0)throw CliErrors['validation'](_0x293e16(0xbf));return _0x59d0da;}export function validateSort(_0x4893f0,_0x3f6c8a=a126_0xc1b8eb(0xfd)){const _0x4bafa5=a126_0xc1b8eb;if(!hasFlag(_0x4893f0,_0x3f6c8a))return undefined;const _0x32eeff=_0x4893f0[_0x4bafa5(0xe9)](_0x3f6c8a);if(!Number[_0x4bafa5(0xe7)](_0x32eeff)||_0x32eeff<0x0||_0x32eeff>MAX_MENU_SORT)throw menuError(_0x4bafa5(0x10f),'--'+_0x3f6c8a+'\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20'+MAX_MENU_SORT+'.',_0x4bafa5(0x118));return _0x32eeff;}export function nextSiblingSort(_0x592f98,_0x20a10f,_0x136492){const _0xc67db=a126_0xc1b8eb,_0x4539e2=getChildren(_0x592f98,_0x20a10f)[_0xc67db(0xd3)](_0xc22aef=>_0xc22aef['sort'])[_0xc67db(0x11b)](_0x2f0d63=>typeof _0x2f0d63==='number');if(_0x4539e2[_0xc67db(0xe1)]===0x0)return 0x0;const _0x4f6797=Math[_0xc67db(0xc8)](..._0x4539e2);if(_0x4f6797>=MAX_MENU_SORT)throw menuError(_0xc67db(0x10c),_0xc67db(0x102)+_0x136492+_0xc67db(0x116)+_0x4f6797+'.','Reorder\x20sibling\x20menus\x20below\x20'+MAX_MENU_SORT+_0xc67db(0xef));return _0x4f6797+0x1;}export function requireExplicitYes(_0x32715b){const _0x3938b3=a126_0xc1b8eb;if(_0x32715b[_0x3938b3(0xf4)](_0x3938b3(0x119)))return;if(!_0x32715b[_0x3938b3(0xf4)]('yes'))throw menuError(_0x3938b3(0xe2),_0x3938b3(0x117),_0x3938b3(0xf2));}export async function fetchMutationSnapshot(_0x2226c5,_0x5279fe,_0x5c5138){const _0x2226a5=a126_0xc1b8eb;try{return await fetchMenuSnapshot(_0x2226c5['appCode'],_0x2226c5[_0x2226a5(0xda)]);}catch(_0x15aadb){throw mapMenuApiError(_0x15aadb,_0x2226a5(0xf3)+_0x5279fe,_0x5c5138);}}export async function recheckMutationSnapshot(_0x32bcc7,_0x79f051,_0x51f878,_0x50fb28){const _0x1dd70d=a126_0xc1b8eb;let _0xe2c10f;try{_0xe2c10f=await fetchMenuSnapshot(_0x32bcc7[_0x1dd70d(0xeb)],_0x32bcc7[_0x1dd70d(0xda)]);}catch(_0x1fce94){const _0x1f5242=mapMenuApiError(_0x1fce94,_0x1dd70d(0x10d)+_0x51f878,_0x50fb28);throw menuFailure(_0x1f5242,_0x79f051,{'stage':'pre-write-recheck','failed':_0x50fb28==null?{}:{'id':_0x50fb28}});}if(_0xe2c10f[_0x1dd70d(0xc2)]!==_0x79f051[_0x1dd70d(0x104)]){const _0x295b84=menuError(_0x1dd70d(0x101),_0x1dd70d(0x114)+_0x51f878+';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.',_0x1dd70d(0x11c));throw menuFailure(_0x295b84,_0x79f051,{'stage':_0x1dd70d(0xb7),'failed':{..._0x50fb28==null?{}:{'id':_0x50fb28},'expectedSnapshotHash':_0x79f051[_0x1dd70d(0x104)],'currentSnapshotHash':_0xe2c10f['hash']}});}return _0xe2c10f;}export function parseParentId(_0x46417f,_0x109a83,_0x24170c={}){const _0x49c6c7=a126_0xc1b8eb;if(!hasFlag(_0x46417f,_0x109a83)){if(_0x24170c[_0x49c6c7(0xb5)])throw CliErrors[_0x49c6c7(0xf1)](_0x109a83);return undefined;}const _0x5405d4=_0x46417f['str'](_0x109a83)['trim']();if(_0x5405d4[_0x49c6c7(0xf7)]()===_0x49c6c7(0xb9))return null;if(!/^\d+$/[_0x49c6c7(0xcc)](_0x5405d4))throw CliErrors['validation']('--'+_0x109a83+_0x49c6c7(0xb8));const _0x59f25c=Number(_0x5405d4);if(!Number['isSafeInteger'](_0x59f25c)||_0x59f25c<=0x0)throw CliErrors[_0x49c6c7(0xbd)]('--'+_0x109a83+_0x49c6c7(0xb8));return _0x59f25c;}export function requireMenu(_0x3f7993,_0x4feaeb){const _0x2481b7=a126_0xc1b8eb,_0x5d4cfb=_0x3f7993['byId'][_0x2481b7(0x111)](_0x4feaeb);if(!_0x5d4cfb)throw menuError(_0x2481b7(0x106),_0x2481b7(0xcb)+_0x4feaeb,_0x2481b7(0x108));return _0x5d4cfb;}export function requireFolder(_0xc8443d,_0xf40d9e){const _0x1f9a4a=a126_0xc1b8eb,_0x3311e0=requireMenu(_0xc8443d,_0xf40d9e);if(_0x3311e0[_0x1f9a4a(0xff)]!==_0x1f9a4a(0x10b))throw menuError('menu_parent_not_folder',_0x1f9a4a(0xea)+_0xf40d9e+_0x1f9a4a(0xc6)+(_0x3311e0[_0x1f9a4a(0xff)]||'unknown')+'\x22,\x20not\x20folder.',_0x1f9a4a(0xfa));return _0x3311e0;}export function assertExpectedState(_0x472d23,_0x3c3df2){const _0x1f180b=a126_0xc1b8eb;if(hasFlag(_0x472d23,_0x1f180b(0xfe))){const _0x16db60=parseParentId(_0x472d23,_0x1f180b(0xfe),{'required':!![]});if(_0x3c3df2[_0x1f180b(0xbb)]!==_0x16db60)throw stateDrift(_0x1f180b(0xea)+_0x3c3df2['id']+_0x1f180b(0xdc)+formatParent(_0x16db60)+',\x20current\x20'+formatParent(_0x3c3df2[_0x1f180b(0xbb)])+'.');}if(hasFlag(_0x472d23,_0x1f180b(0xdf))){const _0x32e2fd=_0x472d23[_0x1f180b(0xe4)](_0x1f180b(0xdf));if(_0x3c3df2[_0x1f180b(0x113)]!==_0x32e2fd)throw stateDrift(_0x1f180b(0xea)+_0x3c3df2['id']+_0x1f180b(0xc1)+JSON[_0x1f180b(0xdb)](_0x32e2fd)+_0x1f180b(0xb3)+JSON[_0x1f180b(0xdb)](_0x3c3df2[_0x1f180b(0x113)])+'.');}if(hasFlag(_0x472d23,_0x1f180b(0xd6))){const _0x269d8d=_0x472d23['num'](_0x1f180b(0xd6));if(!Number[_0x1f180b(0xe7)](_0x269d8d)||_0x269d8d<0x0)throw CliErrors['validation'](_0x1f180b(0xc0));if(_0x3c3df2[_0x1f180b(0xce)]!==_0x269d8d)throw stateDrift(_0x1f180b(0xea)+_0x3c3df2['id']+_0x1f180b(0xf5)+_0x269d8d+',\x20current\x20'+_0x3c3df2['childrenCount']+'.');}}export function assertVerified(_0x3ceacb,_0x42425f,_0x404929=a126_0xc1b8eb(0xca)){const _0x292c27=a126_0xc1b8eb;if(!_0x3ceacb)throw menuError(_0x292c27(0xee),_0x42425f,_0x404929);}export function mutationResult(_0x58c5d2){const _0x215d92=a126_0xc1b8eb;return{'operation':_0x58c5d2['operation'],'selector':_0x58c5d2[_0x215d92(0xcf)],'before':_0x58c5d2['before'],'after':_0x58c5d2['after'],'dryRun':_0x58c5d2[_0x215d92(0xf8)],'backend':_0x58c5d2[_0x215d92(0xc9)],..._0x58c5d2[_0x215d92(0xbe)]?{'plannedActions':_0x58c5d2[_0x215d92(0xbe)]}:{},..._0x58c5d2[_0x215d92(0xc5)]?{'targets':_0x58c5d2[_0x215d92(0xc5)]}:{},..._0x58c5d2[_0x215d92(0x115)]?{'deleteOrder':_0x58c5d2[_0x215d92(0x115)]}:{},'snapshotHash':_0x58c5d2[_0x215d92(0x104)],..._0x58c5d2[_0x215d92(0xd9)]?{'cascade':_0x58c5d2[_0x215d92(0xd9)]}:{},..._0x58c5d2['planFile']?{'planFile':_0x58c5d2[_0x215d92(0xf0)]}:{},'succeeded':_0x58c5d2[_0x215d92(0xe5)]??[],'failed':_0x58c5d2[_0x215d92(0xd8)]??[],'warnings':_0x58c5d2[_0x215d92(0xd0)]??[],'verification':_0x58c5d2[_0x215d92(0xf6)],'error':_0x58c5d2[_0x215d92(0xc7)]};}export function menuDryRunResult(_0x453e66,_0x5854c9){return{..._0x453e66,..._0x5854c9};}export function menuFailure(_0x5502fd,_0x19aee4,_0x4869ab){const _0x9fff3=a126_0xc1b8eb,_0x551855=mutationResult({..._0x19aee4,'after':_0x4869ab[_0x9fff3(0x10a)]===undefined?_0x19aee4[_0x9fff3(0x10a)]:_0x4869ab[_0x9fff3(0x10a)],'backend':_0x4869ab['backend']??_0x19aee4[_0x9fff3(0xc9)],'dryRun':![],'succeeded':_0x4869ab[_0x9fff3(0xe5)]??[],'failed':[{..._0x4869ab['failed']??{},'stage':_0x4869ab['stage'],'code':_0x5502fd[_0x9fff3(0xed)],'message':_0x5502fd[_0x9fff3(0xd4)]}],'warnings':[..._0x19aee4[_0x9fff3(0xd0)],..._0x4869ab[_0x9fff3(0xd0)]??[]],'verification':_0x4869ab[_0x9fff3(0xf6)],'error':{'code':_0x5502fd[_0x9fff3(0xed)],'message':_0x5502fd['message'],..._0x5502fd[_0x9fff3(0xd7)]?{'hint':_0x5502fd[_0x9fff3(0xd7)]}:{}}});return Object['defineProperty'](_0x5502fd,_0x9fff3(0xb4),{'value':_0x551855,'enumerable':!![],'configurable':!![]}),_0x5502fd;}export function asVerificationError(_0xd42bf1,_0x4481be){const _0x534d5f=a126_0xc1b8eb;if(_0xd42bf1 instanceof CliError&&_0xd42bf1['code']===_0x534d5f(0xee))return _0xd42bf1;const _0x3e9e27=_0xd42bf1 instanceof Error?_0xd42bf1[_0x534d5f(0xd4)]:String(_0xd42bf1);return menuError('menu_verification_failed',''+_0x4481be+(_0x3e9e27?':\x20'+_0x3e9e27:''),_0x534d5f(0xec));}export function describeMenuErrorCause(_0x45c8a9,_0x4d06c9,_0xfbcab){const _0x753e81=a126_0xc1b8eb,_0x557d98=mapMenuApiError(_0x45c8a9,_0x4d06c9,_0xfbcab);return{'causeCode':_0x557d98[_0x753e81(0xed)],'causeMessage':_0x557d98[_0x753e81(0xd4)]};}export function hasFlag(_0x114803,_0x37f2d8){const _0x4f8003=a126_0xc1b8eb;return Object['prototype'][_0x4f8003(0x100)][_0x4f8003(0xe0)](_0x114803[_0x4f8003(0xd1)],_0x37f2d8)&&_0x114803[_0x4f8003(0xd1)][_0x37f2d8]!==undefined;}export function toApiParentId(_0xa6bc7d){return _0xa6bc7d??0x0;}export function formatParent(_0x51d2e3){const _0x4b2b11=a126_0xc1b8eb;return _0x51d2e3==null?_0x4b2b11(0xb9):String(_0x51d2e3);}function a126_0x4ae9(_0x3be091,_0x358d15){_0x3be091=_0x3be091-0xb3;const _0x1acc47=a126_0x1acc();let _0x4ae998=_0x1acc47[_0x3be091];return _0x4ae998;}export function menuError(_0x5bff77,_0x20f9c8,_0x44126a){return new CliError(_0x5bff77,0x1,_0x20f9c8,_0x44126a);}export function mapMenuApiError(_0x3c5158,_0x12f329,_0x33335a){const _0x29e49a=a126_0xc1b8eb;if(_0x3c5158 instanceof CliError&&_0x3c5158[_0x29e49a(0xed)]!==_0x29e49a(0xbc))return _0x3c5158;const _0x370058=_0x3c5158 instanceof Error?_0x3c5158['message']:String(_0x3c5158);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x29e49a(0xcc)](_0x370058))return menuError(_0x29e49a(0xe3),'Permission\x20denied\x20while\x20attempting\x20to\x20'+_0x12f329+(_0x33335a?'\x20menu\x20'+_0x33335a:'')+'.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');return menuError(_0x29e49a(0x105),_0x29e49a(0xdd)+_0x12f329+(_0x33335a?_0x29e49a(0xc4)+_0x33335a:'')+':\x20'+_0x370058,'Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.');}export function isMenuResponseLoss(_0x367f0d){const _0x557cfd=a126_0xc1b8eb,_0x4b0688=_0x367f0d instanceof Error?_0x367f0d['message']:String(_0x367f0d);if(_0x367f0d instanceof CliError)return _0x367f0d[_0x557cfd(0xed)]===_0x557cfd(0xbc)&&/^Request (?:failed|timeout):/i[_0x557cfd(0xcc)](_0x4b0688);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'](_0x4b0688);}function stateDrift(_0x4c9e2c){const _0x3f74b4=a126_0xc1b8eb;return menuError('menu_state_drift',_0x4c9e2c,_0x3f74b4(0xde));}
|