@lovrabet/rabetbase-cli 2.3.16-beta.1 → 2.3.16-beta.3
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 +2 -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/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -0
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/notification/config-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/react/create.js +1 -0
- package/lib/commands/page/react/detail.js +1 -0
- package/lib/commands/page/react/list.js +1 -0
- package/lib/commands/page/react/publish.js +1 -0
- package/lib/commands/page/react/shared.js +1 -0
- package/lib/commands/page/react/syntax.js +1 -0
- package/lib/commands/page/react/template.js +1 -0
- package/lib/commands/page/react/update.js +1 -0
- 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/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/create.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -0
- package/lib/commands/tenant/members-list.js +1 -0
- package/lib/commands/tenant/shared.js +1 -0
- 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 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/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 +2 -2
- package/templates/projects/sub-app-react-demo/CHANGELOG.md +1 -1
- package/templates/projects/sub-app-react-demo/README.md +1 -1
- package/templates/projects/sub-app-react-demo/docs/quick-start.md +1 -1
- package/templates/projects/sub-app-react-demo/src/pages/index.tsx +1 -1
- package/lib/commands/app/add.js +0 -1
- package/lib/commands/app/remove.js +0 -1
- package/lib/commands/project/init.js +0 -1
- package/lib/commands/sql/save.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a105_0x5e14(_0x272a12,_0x50246b){_0x272a12=_0x272a12-0x1a7;const _0x423365=a105_0x4233();let _0x5e14a0=_0x423365[_0x272a12];return _0x5e14a0;}const a105_0x52d19f=a105_0x5e14;(function(_0x3a1747,_0x2aa0b5){const _0x13cdfd=a105_0x5e14,_0x2e25dc=_0x3a1747();while(!![]){try{const _0x1753cc=-parseInt(_0x13cdfd(0x1c2))/0x1+-parseInt(_0x13cdfd(0x1da))/0x2*(-parseInt(_0x13cdfd(0x1bb))/0x3)+parseInt(_0x13cdfd(0x1e2))/0x4+-parseInt(_0x13cdfd(0x1c3))/0x5*(-parseInt(_0x13cdfd(0x1dd))/0x6)+parseInt(_0x13cdfd(0x1d5))/0x7*(parseInt(_0x13cdfd(0x1a9))/0x8)+parseInt(_0x13cdfd(0x1d8))/0x9*(parseInt(_0x13cdfd(0x1d2))/0xa)+parseInt(_0x13cdfd(0x1b5))/0xb*(-parseInt(_0x13cdfd(0x1b3))/0xc);if(_0x1753cc===_0x2aa0b5)break;else _0x2e25dc['push'](_0x2e25dc['shift']());}catch(_0x2798cd){_0x2e25dc['push'](_0x2e25dc['shift']());}}}(a105_0x4233,0x2acce));import{isPlatformTransportFailure,updateEnterpriseKnowledgeBase}from'../../core/api-client.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCompanyKnowledgeBase,assertExpectedKbVersion,inspectKbContent,kbError,projectKb,readKbFile,readKbId,requireKb,requireKbExplicitYes,verifyKbMutationReadback}from'../../commands/kb/shared.js';const UPDATE_PATH=a105_0x52d19f(0x1d1),NON_ATOMIC_WARNING=a105_0x52d19f(0x1be);function readUpdatePatch(_0x1b59d9){const _0xce21c5=a105_0x52d19f,_0x36b75b=readKbId(_0x1b59d9),_0x55143f=_0x1b59d9['flag'](_0xce21c5(0x1cd)),_0x12614d=_0x1b59d9['flag'](_0xce21c5(0x1cb)),_0x177163=_0x1b59d9[_0xce21c5(0x1d0)](_0xce21c5(0x1c0)),_0x35b1e1=_0x55143f===undefined?undefined:String(_0x55143f)['trim']();if(_0x55143f!==undefined&&!_0x35b1e1)throw kbError(_0xce21c5(0x1b1),'--title\x20cannot\x20be\x20empty.');const _0x1d4ece=_0x12614d===undefined?undefined:String(_0x12614d)[_0xce21c5(0x1e0)]();if(_0x12614d!==undefined&&!_0x1d4ece)throw kbError('kb_file_required',_0xce21c5(0x1b6));if(_0x35b1e1===undefined&&_0x1d4ece===undefined)throw kbError(_0xce21c5(0x1c5),_0xce21c5(0x1d4),_0xce21c5(0x1c8));let _0x5744e0;if(_0x177163!==undefined){_0x5744e0=Number(_0x177163);if(!Number['isSafeInteger'](_0x5744e0)||_0x5744e0<0x0)throw kbError(_0xce21c5(0x1de),_0xce21c5(0x1d6));}return{'id':_0x36b75b,'title':_0x35b1e1,'file':_0x1d4ece,'expectedVersion':_0x5744e0};}function a105_0x4233(){const _0x218af2=['POST','51MjyzMc','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','update','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','version','expected-version','kb_update_outcome_unknown','259454osidMU','5QXQASm','planned','kb_update_empty','replacement','verified','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','cookie','high-risk-write','file','kb_verification_failed','title','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','\x20--format\x20compress','flag','/admin/knowledge-base/update','1445930OMMVMH','Company\x20knowledge\x20base\x20','Nothing\x20to\x20update.','7AJHhfK','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','content','9pmLTTe','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','35202hTFcpu','patch','before','311502SzJlMj','kb_expected_version_invalid','contentHash','trim','Updated\x20company\x20knowledge\x20base\x20','836608KOwhOO','rabetbase\x20kb\x20detail\x20--id\x20','snapshotHash','31576epPvUC','number','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','expectedVersion','beforeRecord','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','company','kb_title_invalid','push','72ehpgMH','appCode','502447WSapCM','--file\x20cannot\x20be\x20empty.','Company\x20knowledge-base\x20id','New\x20knowledge-base\x20title','string'];a105_0x4233=function(){return _0x218af2;};return a105_0x4233();}async function prepareUpdate(_0x4fc1dc){const _0x51a9be=a105_0x52d19f,_0x21195c=readUpdatePatch(_0x4fc1dc),_0x5c4821=await requireKb(_0x4fc1dc,_0x21195c['id']);assertExpectedKbVersion(_0x5c4821,_0x21195c[_0x51a9be(0x1ac)]);const _0x56b05b=_0x21195c[_0x51a9be(0x1cb)]?await readKbFile(_0x21195c['file']):undefined,_0x597c37=projectKb(_0x5c4821),_0x97e8c4=projectKb({..._0x5c4821,..._0x21195c[_0x51a9be(0x1cd)]!==undefined?{'title':_0x21195c[_0x51a9be(0x1cd)]}:{},..._0x56b05b?{'content':_0x56b05b[_0x51a9be(0x1d7)]}:{}});return{'patch':_0x21195c,'beforeRecord':_0x5c4821,'before':_0x597c37,'planned':_0x97e8c4,'replacement':_0x56b05b};}export const kbUpdate={'service':'kb','command':a105_0x52d19f(0x1bd),'description':a105_0x52d19f(0x1ab),'risk':a105_0x52d19f(0x1ca),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':a105_0x52d19f(0x1aa),'required':!![],'description':a105_0x52d19f(0x1b7)},{'name':a105_0x52d19f(0x1cd),'type':a105_0x52d19f(0x1b9),'required':![],'description':a105_0x52d19f(0x1b8)},{'name':a105_0x52d19f(0x1cb),'type':'string','required':![],'description':a105_0x52d19f(0x1d9)},{'name':a105_0x52d19f(0x1c0),'type':'number','required':![],'description':'Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version'}],async 'validate'(_0x454240){readUpdatePatch(_0x454240),requireKbExplicitYes(_0x454240);},async 'dryRun'(_0x342d20){const _0x2defd4=a105_0x52d19f,_0x452312=await prepareUpdate(_0x342d20),_0x23de64=_0x452312[_0x2defd4(0x1db)][_0x2defd4(0x1ac)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x2defd4(0x1bd),'selector':{'id':_0x452312[_0x2defd4(0x1dc)]['id'],'scope':_0x2defd4(0x1b0),'appCode':_0x452312['before'][_0x2defd4(0x1b4)]},'before':_0x452312['before'],'after':_0x452312[_0x2defd4(0x1c4)],'dryRun':!![],'backend':{'method':_0x2defd4(0x1ba),'path':UPDATE_PATH},'warnings':_0x23de64,'verification':{'expectedVersion':_0x452312[_0x2defd4(0x1db)][_0x2defd4(0x1ac)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x452312[_0x2defd4(0x1dc)][_0x2defd4(0x1a8)],'lookupCommand':_0x2defd4(0x1a7)+_0x452312[_0x2defd4(0x1dc)]['id']+'\x20--format\x20compress'}},{'method':_0x2defd4(0x1ba),'url':UPDATE_PATH});},async 'execute'(_0x2b20ee){const _0x2c8e9c=a105_0x52d19f;requireKbExplicitYes(_0x2b20ee);const _0x137e16=await prepareUpdate(_0x2b20ee),_0x1230a0={'id':_0x137e16[_0x2c8e9c(0x1db)]['id'],..._0x137e16[_0x2c8e9c(0x1db)][_0x2c8e9c(0x1cd)]!==undefined?{'title':_0x137e16['patch'][_0x2c8e9c(0x1cd)]}:{},..._0x137e16[_0x2c8e9c(0x1c6)]?{'content':_0x137e16['replacement']['content']}:{}};let _0x2f4eaa=![];try{const _0x14af7c=await updateEnterpriseKnowledgeBase(_0x2b20ee[_0x2c8e9c(0x1c9)],_0x1230a0);assertCompanyKnowledgeBase(_0x14af7c,_0x2b20ee[_0x2c8e9c(0x1b4)],_0x137e16[_0x2c8e9c(0x1db)]['id']);}catch(_0xf093c0){if(!isPlatformTransportFailure(_0xf093c0))throw _0xf093c0;_0x2f4eaa=!![];}const _0x5596a6=await verifyKbMutationReadback('update',_0x2f4eaa,()=>requireKb(_0x2b20ee,_0x137e16[_0x2c8e9c(0x1db)]['id'])),_0x4f0509=projectKb(_0x5596a6),_0x6461e6=_0x137e16[_0x2c8e9c(0x1db)][_0x2c8e9c(0x1cd)]===undefined||_0x5596a6[_0x2c8e9c(0x1cd)]===_0x137e16[_0x2c8e9c(0x1db)][_0x2c8e9c(0x1cd)],_0x5f4a96=!_0x137e16[_0x2c8e9c(0x1c6)]||inspectKbContent(_0x5596a6[_0x2c8e9c(0x1d7)])[_0x2c8e9c(0x1df)]===_0x137e16[_0x2c8e9c(0x1c6)]['contentHash'],_0x5baab1=!_0x137e16[_0x2c8e9c(0x1c6)]||_0x5596a6[_0x2c8e9c(0x1bf)]>_0x137e16[_0x2c8e9c(0x1ad)]['version'],_0x57b76e=!_0x2f4eaa||_0x137e16[_0x2c8e9c(0x1c6)]!==undefined||_0x137e16['patch']['title']===undefined||_0x137e16[_0x2c8e9c(0x1ad)][_0x2c8e9c(0x1cd)]!==_0x137e16['patch']['title'];if(!_0x6461e6||!_0x5f4a96||!_0x5baab1||!_0x57b76e)throw kbError(_0x2f4eaa?_0x2c8e9c(0x1c1):_0x2c8e9c(0x1cc),_0x2c8e9c(0x1d3)+_0x137e16['patch']['id']+_0x2c8e9c(0x1ae),_0x2c8e9c(0x1af)+_0x137e16[_0x2c8e9c(0x1db)]['id']+_0x2c8e9c(0x1ce));const _0xf2dbed=[];return _0x137e16[_0x2c8e9c(0x1db)][_0x2c8e9c(0x1ac)]!==undefined&&_0xf2dbed[_0x2c8e9c(0x1b2)](NON_ATOMIC_WARNING),_0x2f4eaa&&_0xf2dbed[_0x2c8e9c(0x1b2)](_0x2c8e9c(0x1bc)),{'ok':!![],'data':{'operation':_0x2c8e9c(0x1bd),'selector':{'id':_0x4f0509['id'],'scope':_0x2c8e9c(0x1b0),'appCode':_0x4f0509['appCode']},'before':_0x137e16['before'],'after':_0x4f0509,'dryRun':![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0xf2dbed,'verification':{'status':_0x2c8e9c(0x1c7),'recoveredAfterUnknownResponse':_0x2f4eaa,'expectedVersion':_0x137e16[_0x2c8e9c(0x1db)]['expectedVersion']??null,'atomicCompareAndSet':![],'lookupCommand':_0x2c8e9c(0x1a7)+_0x4f0509['id']+_0x2c8e9c(0x1cf)}},'message':_0x2c8e9c(0x1e1)+_0x4f0509['id']};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a106_0x4a88(_0x4c173b,_0x5ba601){_0x4c173b=_0x4c173b-0x81;const _0x5ce72a=a106_0x5ce7();let _0x4a886b=_0x5ce72a[_0x4c173b];return _0x4a886b;}function a106_0x5ce7(){const _0x11014c=['clearLogs','read','message','log','Clear\x20command\x20history\x20logs','103409wstLEX','en-US','command','success','10NPLhqb','length','*\x20No\x20logs\x20found','4dgxxMX','2848389gVcwxp','\x20\x20\x20Duration:\x20','timestamp','540oUrXeg','*\x20Lovrabet\x20CLI\x20logs:\x0a','*\x20Logs\x20cleared','14803613kEfmDj','\x20\x20\x20Time:\x20','write','2802635eOHoYB','477256gYapiV','show','level','keys','details','stringify','error','9lKNwnH','readLogs','59626kSOVRK','forEach','logs','13061870GXSyae','duration'];a106_0x5ce7=function(){return _0x11014c;};return a106_0x5ce7();}const a106_0xe31495=a106_0x4a88;(function(_0x5df85d,_0x45f965){const _0x3afec0=a106_0x4a88,_0x4be830=_0x5df85d();while(!![]){try{const _0x51d51c=parseInt(_0x3afec0(0x93))/0x1*(-parseInt(_0x3afec0(0x97))/0x2)+-parseInt(_0x3afec0(0x9b))/0x3*(-parseInt(_0x3afec0(0x9a))/0x4)+-parseInt(_0x3afec0(0xa4))/0x5+parseInt(_0x3afec0(0x9e))/0x6*(parseInt(_0x3afec0(0x89))/0x7)+parseInt(_0x3afec0(0xa5))/0x8+-parseInt(_0x3afec0(0x87))/0x9*(-parseInt(_0x3afec0(0x8c))/0xa)+-parseInt(_0x3afec0(0xa1))/0xb;if(_0x51d51c===_0x45f965)break;else _0x4be830['push'](_0x4be830['shift']());}catch(_0x488d46){_0x4be830['push'](_0x4be830['shift']());}}}(a106_0x5ce7,0xa0c8c));import{logger}from'../../utils/logger.js';function printLogs(_0x351ff8){const _0x3d4351=a106_0x4a88;if(_0x351ff8[_0x3d4351(0x98)]===0x0){console[_0x3d4351(0x91)](_0x3d4351(0x99));return;}console[_0x3d4351(0x91)](_0x3d4351(0x9f)),_0x351ff8[_0x3d4351(0x8a)]((_0x32a48a,_0x1c22c1)=>{const _0x24ae9c=_0x3d4351,_0x3c2ddb=new Date(_0x32a48a[_0x24ae9c(0x9d)])['toLocaleString'](_0x24ae9c(0x94)),_0x33e667=_0x32a48a[_0x24ae9c(0x82)]===_0x24ae9c(0x96)?'√':_0x32a48a[_0x24ae9c(0x82)]===_0x24ae9c(0x86)?'×':_0x32a48a[_0x24ae9c(0x82)]==='warn'?'!':'i';console[_0x24ae9c(0x91)](_0x1c22c1+0x1+'.\x20'+_0x33e667+'\x20['+_0x32a48a[_0x24ae9c(0x95)]+']\x20'+_0x32a48a[_0x24ae9c(0x90)]),console[_0x24ae9c(0x91)](_0x24ae9c(0xa2)+_0x3c2ddb),_0x32a48a[_0x24ae9c(0x8d)]&&console['log'](_0x24ae9c(0x9c)+_0x32a48a['duration']+'ms'),_0x32a48a[_0x24ae9c(0x84)]&&Object[_0x24ae9c(0x83)](_0x32a48a[_0x24ae9c(0x84)])[_0x24ae9c(0x98)]>0x0&&console[_0x24ae9c(0x91)]('\x20\x20\x20Details:\x20'+JSON[_0x24ae9c(0x85)](_0x32a48a[_0x24ae9c(0x84)],null,0x2)),console[_0x24ae9c(0x91)]('');});}export const logsDefinitions=[{'service':'logs','command':a106_0xe31495(0x81),'description':'View\x20command\x20history\x20logs','risk':a106_0xe31495(0x8f),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x464d7f){const _0x351f47=a106_0xe31495;return printLogs(logger[_0x351f47(0x88)]()),{'ok':!![]};}},{'service':a106_0xe31495(0x8b),'command':'clear','description':a106_0xe31495(0x92),'risk':a106_0xe31495(0xa3),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x123a06){const _0x51d311=a106_0xe31495;return logger[_0x51d311(0x8e)](),console[_0x51d311(0x91)](_0x51d311(0xa0)),{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a108_0x37a3ad=a108_0x524f;(function(_0x19969d,_0x527a7a){const _0x136a7b=a108_0x524f,_0x4dd3a9=_0x19969d();while(!![]){try{const _0x165f82=parseInt(_0x136a7b(0x18f))/0x1*(-parseInt(_0x136a7b(0x161))/0x2)+-parseInt(_0x136a7b(0x14d))/0x3*(-parseInt(_0x136a7b(0x19b))/0x4)+parseInt(_0x136a7b(0x1a2))/0x5*(-parseInt(_0x136a7b(0x189))/0x6)+parseInt(_0x136a7b(0x1aa))/0x7+parseInt(_0x136a7b(0x15f))/0x8*(parseInt(_0x136a7b(0x180))/0x9)+parseInt(_0x136a7b(0x1a7))/0xa*(-parseInt(_0x136a7b(0x154))/0xb)+-parseInt(_0x136a7b(0x179))/0xc*(parseInt(_0x136a7b(0x15e))/0xd);if(_0x165f82===_0x527a7a)break;else _0x4dd3a9['push'](_0x4dd3a9['shift']());}catch(_0x2d7bcf){_0x4dd3a9['push'](_0x4dd3a9['shift']());}}}(a108_0x32ac,0x97358));import a108_0x373b89 from'chalk';function a108_0x32ac(){const _0x26f401=['✓\x20Menu\x20asset\x20update\x20completed:\x20','gray','flag','30mqgOqf','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','Online\x20menu\x20list\x20fetched','6271944mxhoki','3rtRVmm','stringify','map','\x20menu(s)...','script','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','3417249CSmmvc','str','trim','\x20menu(s)','failed','Updated\x20','\x20and\x20CSS:\x20','bool','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','jsUrl','615979BKndSw','1616GcROqZ','all','436ChFzQj','params','cssUrl','Menu\x20asset\x20update\x20failed','\x20\x20Cancelled.','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','patch','message','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','Menu\x20asset\x20update\x20completed:\x20','\x20\x20Found\x20','replace','filter','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','Fetching\x20online\x20menu\x20list...','isSafeInteger','mode','yes','fetch','/smartapi/menu/update','string','paths','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','\x20failed.','84LSzmqv','isArray','validation','updated','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','diffs','menu-ids','55071pvYuHi','yellow','appcode','Failed\x20to\x20fetch\x20online\x20menu\x20list','length','POST','object','\x20updated,\x20','\x20menu(s)\x20failed','30FzLJMX','cyan','rawFlags','split','asset-update','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','709deWzqs','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','appCode','Would\x20update\x20','boolean','label','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','cookie','selectedAppName','load-mode','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','force','4051588UEQato','\x20updated.','parse','import','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','\x20menu(s)\x20with\x20existing\x20resources','1107355qVeKfR','some'];a108_0x32ac=function(){return _0x26f401;};return a108_0x32ac();}import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';function a108_0x524f(_0x9364dd,_0x1bbca0){_0x9364dd=_0x9364dd-0x14d;const _0x32acd3=a108_0x32ac();let _0x524f4f=_0x32acd3[_0x9364dd];return _0x524f4f;}import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,isInteractive,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':'menu','command':a108_0x37a3ad(0x18d),'description':a108_0x37a3ad(0x153),'risk':'high-risk-write','flags':[{'name':a108_0x37a3ad(0x162),'type':'string','description':a108_0x37a3ad(0x1a0)+a108_0x37a3ad(0x169)},{'name':a108_0x37a3ad(0x171),'type':a108_0x37a3ad(0x175),'description':a108_0x37a3ad(0x17d)+a108_0x37a3ad(0x199),'enum':[a108_0x37a3ad(0x16c),a108_0x37a3ad(0x167)],'default':'patch'},{'name':'force','type':'boolean','description':a108_0x37a3ad(0x18e)},{'name':a108_0x37a3ad(0x17f),'type':'string','description':'Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update'},{'name':a108_0x37a3ad(0x176),'type':'string','description':a108_0x37a3ad(0x190)},{'name':a108_0x37a3ad(0x160),'type':a108_0x37a3ad(0x193),'description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':'load-mode','type':a108_0x37a3ad(0x175),'enum':[a108_0x37a3ad(0x19e),a108_0x37a3ad(0x151),a108_0x37a3ad(0x173)],'description':a108_0x37a3ad(0x19f)}],async 'dryRun'(_0x216519){const _0x19e9d0=a108_0x37a3ad;ensureRunnableContext(_0x216519[_0x19e9d0(0x18b)],_0x216519[_0x19e9d0(0x197)]);const _0x383771=await runMenuUpdateCore(_0x216519[_0x19e9d0(0x191)],_0x216519[_0x19e9d0(0x196)],_0x216519[_0x19e9d0(0x155)](_0x19e9d0(0x162)),{'mode':parseMode(_0x216519[_0x19e9d0(0x155)](_0x19e9d0(0x171))),'dryRun':!![],'force':_0x216519[_0x19e9d0(0x15b)](_0x19e9d0(0x19a)),'selection':parseSelection(_0x216519),'loadScriptMode':parseLoadScriptMode(_0x216519['str']('load-mode'))});return{'method':_0x19e9d0(0x185),'url':_0x19e9d0(0x174),'body':_0x383771,'description':_0x383771['skipped']?_0x19e9d0(0x15c):_0x19e9d0(0x192)+(_0x383771[_0x19e9d0(0x17e)]?.[_0x19e9d0(0x184)]??0x0)+'\x20menu\x20resource\x20set(s).'};},async 'execute'(_0x3f8a37){const _0x59ca0e=a108_0x37a3ad;ensureRunnableContext(_0x3f8a37[_0x59ca0e(0x18b)],_0x3f8a37[_0x59ca0e(0x197)]);const _0x3da54a=_0x3f8a37[_0x59ca0e(0x1a6)](_0x59ca0e(0x172)),_0x20e5d5=_0x3f8a37[_0x59ca0e(0x155)](_0x59ca0e(0x162)),_0x19f4e9=parseMode(_0x3f8a37[_0x59ca0e(0x155)]('mode')),_0x1f3165=_0x3f8a37[_0x59ca0e(0x15b)]('force'),_0x5a02da=parseLoadScriptMode(_0x3f8a37[_0x59ca0e(0x155)](_0x59ca0e(0x198))),_0x2f49ad=parseParams(_0x20e5d5),_0x3c541a=!!(_0x2f49ad['jsUrl']||_0x2f49ad['cssUrl']);if(_0x3da54a||_0x3c541a&&!isInteractive()){const _0xa34036=await runMenuUpdateCore(_0x3f8a37[_0x59ca0e(0x191)],_0x3f8a37[_0x59ca0e(0x196)],_0x20e5d5,{'mode':_0x19f4e9,'force':_0x1f3165,'selection':parseSelection(_0x3f8a37),'loadScriptMode':_0x5a02da});return _0xa34036['skipped']?writeCliSideChannelLine('!\x20No\x20menus\x20with\x20existing\x20resources\x20found'):(writeCliSideChannelLine(_0x59ca0e(0x1a4)+_0xa34036[_0x59ca0e(0x17c)]+'\x20menu(s)\x20updated'),_0xa34036['failed']>0x0&&writeCliSideChannelLine('!\x20'+_0xa34036[_0x59ca0e(0x158)]+_0x59ca0e(0x188))),{'ok':_0xa34036[_0x59ca0e(0x158)]===0x0,'data':_0xa34036,'message':_0xa34036['skipped']?'Menu\x20asset\x20update\x20skipped':_0x59ca0e(0x16a)+_0xa34036['updated']+_0x59ca0e(0x187)+_0xa34036[_0x59ca0e(0x158)]+_0x59ca0e(0x178)};}requireInteractive();const _0x2a098e=startSpinner(_0x59ca0e(0x16f));let _0x1ca4e6;try{_0x1ca4e6=await fetchOnlineMenuList(_0x3f8a37[_0x59ca0e(0x191)],_0x3f8a37[_0x59ca0e(0x196)]),stopSpinner(_0x2a098e,_0x59ca0e(0x1a9),!![]);}catch(_0x5adf69){stopSpinner(_0x2a098e,'Failed\x20to\x20fetch\x20online\x20menu\x20list',![]);throw CliErrors['validation'](_0x5adf69 instanceof Error?_0x5adf69[_0x59ca0e(0x168)]:_0x59ca0e(0x183));}const _0x3f400e=filterMenusWithResources(_0x1ca4e6),_0x197320=parseSelection(_0x3f8a37,![]),_0x57d76f=_0x197320?selectMenusForUpdate(_0x3f400e,_0x197320):_0x3f400e;if(_0x57d76f['length']===0x0)return writeCliSideChannelLine(a108_0x373b89[_0x59ca0e(0x181)](_0x59ca0e(0x195))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a108_0x373b89[_0x59ca0e(0x18a)](_0x59ca0e(0x16b)+_0x57d76f['length']+_0x59ca0e(0x1a1))),writeCliSideChannelLine(renderUpdateSummary(_0x57d76f[_0x59ca0e(0x14f)](_0x4f455b=>_0x4f455b[_0x59ca0e(0x194)]),[_0x2f49ad['jsUrl'],_0x2f49ad[_0x59ca0e(0x163)]])),writeCliSideChannelLine('');let _0x4ea9dc=_0x2f49ad[_0x59ca0e(0x15d)],_0x4fe8d1=_0x2f49ad[_0x59ca0e(0x163)];!_0x4ea9dc&&(_0x4ea9dc=await askJsUrl());!_0x4fe8d1&&(_0x4fe8d1=await askCssUrl());const _0x22a048=await askConfirm('\x20\x20Update\x20'+_0x57d76f[_0x59ca0e(0x184)]+'\x20menu(s)\x20with\x20JS:\x20'+_0x4ea9dc+_0x59ca0e(0x15a)+_0x4fe8d1+'?');if(!_0x22a048)return writeCliSideChannelLine(a108_0x373b89[_0x59ca0e(0x1a5)](_0x59ca0e(0x165))),{'ok':!![]};const _0x403ffb=startSpinner('Updating\x20'+_0x57d76f[_0x59ca0e(0x184)]+_0x59ca0e(0x150));try{const _0x5941ef=await runMenuUpdateCore(_0x3f8a37[_0x59ca0e(0x191)],_0x3f8a37[_0x59ca0e(0x196)],JSON[_0x59ca0e(0x14e)]({'jsUrl':_0x4ea9dc,'cssUrl':_0x4fe8d1}),{'mode':_0x19f4e9,'force':_0x1f3165,'selection':{'all':![],'menuIds':_0x57d76f[_0x59ca0e(0x14f)](_0x4f4ecb=>_0x4f4ecb['id']),'paths':[]},'loadScriptMode':_0x5a02da});return stopSpinner(_0x403ffb,_0x59ca0e(0x159)+_0x5941ef['updated']+_0x59ca0e(0x157),_0x5941ef[_0x59ca0e(0x158)]===0x0),{'ok':_0x5941ef[_0x59ca0e(0x158)]===0x0,'data':_0x5941ef,'message':_0x5941ef[_0x59ca0e(0x158)]>0x0?_0x59ca0e(0x16a)+_0x5941ef['updated']+'\x20updated,\x20'+_0x5941ef[_0x59ca0e(0x158)]+_0x59ca0e(0x178):_0x59ca0e(0x16a)+_0x5941ef[_0x59ca0e(0x17c)]+_0x59ca0e(0x19c)};}catch(_0x15dd86){stopSpinner(_0x403ffb,_0x59ca0e(0x164),![]);throw CliErrors['validation'](_0x15dd86 instanceof Error?_0x15dd86[_0x59ca0e(0x168)]:'Menu\x20asset\x20update\x20failed');}}};function ensureRunnableContext(_0x1e2019,_0x4b4bcd){const _0xebe9a3=a108_0x37a3ad,_0x1d60b3=_0x1e2019[_0xebe9a3(0x182)]?String(_0x1e2019[_0xebe9a3(0x182)])['trim']():'';if(!isInProject()&&!_0x4b4bcd&&!_0x1d60b3)throw CliErrors[_0xebe9a3(0x17b)](_0xebe9a3(0x177)+_0xebe9a3(0x1a8));}function parseMode(_0x456af4){const _0x539270=a108_0x37a3ad;if(!_0x456af4)return _0x539270(0x167);if(_0x456af4===_0x539270(0x16c)||_0x456af4===_0x539270(0x167))return _0x456af4;throw CliErrors[_0x539270(0x17b)](_0x539270(0x152));}function parseSelection(_0x712f64,_0x4488c7=!![]){const _0x58dd1c=a108_0x37a3ad,_0x39af55=_0x712f64['bool'](_0x58dd1c(0x160)),_0x504f79=parseMenuIds(_0x712f64[_0x58dd1c(0x155)](_0x58dd1c(0x17f))),_0x3e0602=parseCsv(_0x712f64[_0x58dd1c(0x155)]('paths')),_0x3ba406=_0x504f79[_0x58dd1c(0x184)]>0x0||_0x3e0602[_0x58dd1c(0x184)]>0x0;if(_0x39af55&&_0x3ba406)throw CliErrors['validation']('--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.');if(!_0x39af55&&!_0x3ba406){if(!_0x4488c7)return undefined;throw CliErrors[_0x58dd1c(0x17b)](_0x58dd1c(0x16e));}return{'all':_0x39af55,'menuIds':_0x504f79,'paths':_0x3e0602};}function parseMenuIds(_0x4edae3){const _0x467382=a108_0x37a3ad,_0x4ac775=parseCsv(_0x4edae3),_0x5f4def=_0x4ac775[_0x467382(0x14f)](Number);if(_0x5f4def[_0x467382(0x1a3)](_0x1f0714=>!Number[_0x467382(0x170)](_0x1f0714)||_0x1f0714<=0x0))throw CliErrors[_0x467382(0x17b)](_0x467382(0x166));return[...new Set(_0x5f4def)];}function parseCsv(_0x2f2488){const _0x38ccb7=a108_0x37a3ad;return[...new Set(_0x2f2488[_0x38ccb7(0x18c)](',')[_0x38ccb7(0x14f)](_0x8cea06=>_0x8cea06[_0x38ccb7(0x156)]())[_0x38ccb7(0x16d)](Boolean))];}function parseLoadScriptMode(_0x34b832){const _0x26f308=a108_0x37a3ad;if(!_0x34b832)return undefined;if(_0x34b832===_0x26f308(0x19e)||_0x34b832===_0x26f308(0x151)||_0x34b832==='fetch')return _0x34b832;throw CliErrors['validation']('Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch');}function parseParams(_0x429eaa){const _0x26111a=a108_0x37a3ad;if(!_0x429eaa)return{};try{const _0x3d68d7=JSON[_0x26111a(0x19d)](_0x429eaa);if(typeof _0x3d68d7!==_0x26111a(0x186)||_0x3d68d7===null||Array[_0x26111a(0x17a)](_0x3d68d7))return{};return{'jsUrl':typeof _0x3d68d7[_0x26111a(0x15d)]===_0x26111a(0x175)?_0x3d68d7[_0x26111a(0x15d)][_0x26111a(0x156)]():undefined,'cssUrl':typeof _0x3d68d7[_0x26111a(0x163)]===_0x26111a(0x175)?_0x3d68d7['cssUrl']['trim']():undefined};}catch{return{};}}
|
|
1
|
+
const a107_0x46491=a107_0x2eb1;(function(_0x34cf8f,_0x42d039){const _0x5a63ee=a107_0x2eb1,_0x4cbcd6=_0x34cf8f();while(!![]){try{const _0x40dce5=parseInt(_0x5a63ee(0xb2))/0x1*(parseInt(_0x5a63ee(0xb7))/0x2)+-parseInt(_0x5a63ee(0xaa))/0x3+-parseInt(_0x5a63ee(0x84))/0x4+-parseInt(_0x5a63ee(0x73))/0x5+-parseInt(_0x5a63ee(0x80))/0x6*(parseInt(_0x5a63ee(0x77))/0x7)+-parseInt(_0x5a63ee(0x91))/0x8+parseInt(_0x5a63ee(0xbf))/0x9;if(_0x40dce5===_0x42d039)break;else _0x4cbcd6['push'](_0x4cbcd6['shift']());}catch(_0x1c5b03){_0x4cbcd6['push'](_0x4cbcd6['shift']());}}}(a107_0x3393,0xc0594));import a107_0x311947 from'chalk';import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,isInteractive,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';function a107_0x2eb1(_0x5dfd17,_0x3d32e1){_0x5dfd17=_0x5dfd17-0x6f;const _0x339326=a107_0x3393();let _0x2eb1b0=_0x339326[_0x5dfd17];return _0x2eb1b0;}import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';function a107_0x3393(){const _0x485593=['\x20menu(s)\x20with\x20JS:\x20','\x20\x20Found\x20','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','map','trim','Menu\x20asset\x20update\x20skipped','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','mode','rawFlags','replace','isArray','\x20\x20Cancelled.','bool','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','flag','import','3232458BdcCpM','validation','\x20menu(s)...','Online\x20menu\x20list\x20fetched','failed','all','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','\x20menu(s)\x20failed','2apORFQ','isSafeInteger','Menu\x20asset\x20update\x20completed:\x20','\x20menu(s)','Menu\x20asset\x20update\x20failed','46538OQqrPl','string','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','cookie','skipped','/smartapi/menu/update','patch','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','61083639RTsBzG','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','Updating\x20','split','appcode','diffs','updated','jsUrl','yes','str','selectedAppName','POST','cssUrl','yellow','appCode','menu','6425370bZgZms','\x20and\x20CSS:\x20','paths','length','2394juasCI','\x20updated.','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','force','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','fetch','boolean','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','stringify','14988KGzrdS','\x20\x20Update\x20','\x20menu\x20resource\x20set(s).','\x20failed.','5453716uqCjXf','some','\x20menu(s)\x20with\x20existing\x20resources','menu-ids','Failed\x20to\x20fetch\x20online\x20menu\x20list','\x20menu(s)\x20updated','load-mode','cyan','\x20updated,\x20','asset-update','script','params','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','11723552ovsppK','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','message','high-risk-write','filter','gray','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.'];a107_0x3393=function(){return _0x485593;};return a107_0x3393();}import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':a107_0x46491(0x72),'command':a107_0x46491(0x8d),'description':a107_0x46491(0x9c),'risk':a107_0x46491(0x96),'flags':[{'name':a107_0x46491(0x8f),'type':a107_0x46491(0xb8),'description':a107_0x46491(0xa0)+a107_0x46491(0xb9)},{'name':a107_0x46491(0xa1),'type':a107_0x46491(0xb8),'description':a107_0x46491(0x92)+a107_0x46491(0xa7),'enum':['replace',a107_0x46491(0xbd)],'default':a107_0x46491(0xbd)},{'name':a107_0x46491(0x7a),'type':a107_0x46491(0x7d),'description':a107_0x46491(0xb0)},{'name':'menu-ids','type':'string','description':'Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update'},{'name':a107_0x46491(0x75),'type':a107_0x46491(0xb8),'description':a107_0x46491(0xc0)},{'name':a107_0x46491(0xaf),'type':a107_0x46491(0x7d),'description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':'load-mode','type':a107_0x46491(0xb8),'enum':[a107_0x46491(0xa9),'script',a107_0x46491(0x7c)],'description':a107_0x46491(0x93)}],async 'dryRun'(_0x145395){const _0x3f0d9e=a107_0x46491;ensureRunnableContext(_0x145395[_0x3f0d9e(0xa2)],_0x145395[_0x3f0d9e(0xc9)]);const _0x2a6ba4=await runMenuUpdateCore(_0x145395[_0x3f0d9e(0x71)],_0x145395['cookie'],_0x145395[_0x3f0d9e(0xc8)](_0x3f0d9e(0x8f)),{'mode':parseMode(_0x145395[_0x3f0d9e(0xc8)](_0x3f0d9e(0xa1))),'dryRun':!![],'force':_0x145395[_0x3f0d9e(0xa6)]('force'),'selection':parseSelection(_0x145395),'loadScriptMode':parseLoadScriptMode(_0x145395[_0x3f0d9e(0xc8)](_0x3f0d9e(0x8a)))});return{'method':_0x3f0d9e(0xca),'url':_0x3f0d9e(0xbc),'body':_0x2a6ba4,'description':_0x2a6ba4['skipped']?_0x3f0d9e(0x7b):'Would\x20update\x20'+(_0x2a6ba4[_0x3f0d9e(0xc4)]?.[_0x3f0d9e(0x76)]??0x0)+_0x3f0d9e(0x82)};},async 'execute'(_0x1d9ed0){const _0x88a0b5=a107_0x46491;ensureRunnableContext(_0x1d9ed0[_0x88a0b5(0xa2)],_0x1d9ed0[_0x88a0b5(0xc9)]);const _0x3e52a7=_0x1d9ed0[_0x88a0b5(0xa8)](_0x88a0b5(0xc7)),_0x32d484=_0x1d9ed0[_0x88a0b5(0xc8)](_0x88a0b5(0x8f)),_0x415abe=parseMode(_0x1d9ed0[_0x88a0b5(0xc8)](_0x88a0b5(0xa1))),_0xd5a9ad=_0x1d9ed0[_0x88a0b5(0xa6)]('force'),_0x38b0d3=parseLoadScriptMode(_0x1d9ed0[_0x88a0b5(0xc8)]('load-mode')),_0x20ae5a=parseParams(_0x32d484),_0x58d20a=!!(_0x20ae5a[_0x88a0b5(0xc6)]||_0x20ae5a[_0x88a0b5(0x6f)]);if(_0x3e52a7||_0x58d20a&&!isInteractive()){const _0xf5ecc7=await runMenuUpdateCore(_0x1d9ed0[_0x88a0b5(0x71)],_0x1d9ed0[_0x88a0b5(0xba)],_0x32d484,{'mode':_0x415abe,'force':_0xd5a9ad,'selection':parseSelection(_0x1d9ed0),'loadScriptMode':_0x38b0d3});return _0xf5ecc7[_0x88a0b5(0xbb)]?writeCliSideChannelLine('!\x20No\x20menus\x20with\x20existing\x20resources\x20found'):(writeCliSideChannelLine('✓\x20Menu\x20asset\x20update\x20completed:\x20'+_0xf5ecc7[_0x88a0b5(0xc5)]+_0x88a0b5(0x89)),_0xf5ecc7[_0x88a0b5(0xae)]>0x0&&writeCliSideChannelLine('!\x20'+_0xf5ecc7['failed']+_0x88a0b5(0xb1))),{'ok':_0xf5ecc7['failed']===0x0,'data':_0xf5ecc7,'message':_0xf5ecc7[_0x88a0b5(0xbb)]?_0x88a0b5(0x9f):_0x88a0b5(0xb4)+_0xf5ecc7[_0x88a0b5(0xc5)]+_0x88a0b5(0x8c)+_0xf5ecc7[_0x88a0b5(0xae)]+_0x88a0b5(0x83)};}requireInteractive();const _0x6623d=startSpinner('Fetching\x20online\x20menu\x20list...');let _0x58a841;try{_0x58a841=await fetchOnlineMenuList(_0x1d9ed0[_0x88a0b5(0x71)],_0x1d9ed0[_0x88a0b5(0xba)]),stopSpinner(_0x6623d,_0x88a0b5(0xad),!![]);}catch(_0x285d98){stopSpinner(_0x6623d,_0x88a0b5(0x88),![]);throw CliErrors[_0x88a0b5(0xab)](_0x285d98 instanceof Error?_0x285d98['message']:_0x88a0b5(0x88));}const _0x49869a=filterMenusWithResources(_0x58a841),_0x5fff78=parseSelection(_0x1d9ed0,![]),_0x2576a9=_0x5fff78?selectMenusForUpdate(_0x49869a,_0x5fff78):_0x49869a;if(_0x2576a9[_0x88a0b5(0x76)]===0x0)return writeCliSideChannelLine(a107_0x311947[_0x88a0b5(0x70)](_0x88a0b5(0x7e))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a107_0x311947[_0x88a0b5(0x8b)](_0x88a0b5(0x9b)+_0x2576a9[_0x88a0b5(0x76)]+_0x88a0b5(0x86))),writeCliSideChannelLine(renderUpdateSummary(_0x2576a9[_0x88a0b5(0x9d)](_0x2f3343=>_0x2f3343['label']),[_0x20ae5a['jsUrl'],_0x20ae5a[_0x88a0b5(0x6f)]])),writeCliSideChannelLine('');let _0x3bf7e3=_0x20ae5a[_0x88a0b5(0xc6)],_0xbd2313=_0x20ae5a[_0x88a0b5(0x6f)];!_0x3bf7e3&&(_0x3bf7e3=await askJsUrl());!_0xbd2313&&(_0xbd2313=await askCssUrl());const _0x2777d3=await askConfirm(_0x88a0b5(0x81)+_0x2576a9['length']+_0x88a0b5(0x9a)+_0x3bf7e3+_0x88a0b5(0x74)+_0xbd2313+'?');if(!_0x2777d3)return writeCliSideChannelLine(a107_0x311947[_0x88a0b5(0x98)](_0x88a0b5(0xa5))),{'ok':!![]};const _0x263e09=startSpinner(_0x88a0b5(0xc1)+_0x2576a9[_0x88a0b5(0x76)]+_0x88a0b5(0xac));try{const _0x41f2f2=await runMenuUpdateCore(_0x1d9ed0[_0x88a0b5(0x71)],_0x1d9ed0[_0x88a0b5(0xba)],JSON[_0x88a0b5(0x7f)]({'jsUrl':_0x3bf7e3,'cssUrl':_0xbd2313}),{'mode':_0x415abe,'force':_0xd5a9ad,'selection':{'all':![],'menuIds':_0x2576a9[_0x88a0b5(0x9d)](_0x4f301c=>_0x4f301c['id']),'paths':[]},'loadScriptMode':_0x38b0d3});return stopSpinner(_0x263e09,'Updated\x20'+_0x41f2f2['updated']+_0x88a0b5(0xb5),_0x41f2f2[_0x88a0b5(0xae)]===0x0),{'ok':_0x41f2f2[_0x88a0b5(0xae)]===0x0,'data':_0x41f2f2,'message':_0x41f2f2['failed']>0x0?_0x88a0b5(0xb4)+_0x41f2f2[_0x88a0b5(0xc5)]+_0x88a0b5(0x8c)+_0x41f2f2[_0x88a0b5(0xae)]+_0x88a0b5(0x83):_0x88a0b5(0xb4)+_0x41f2f2[_0x88a0b5(0xc5)]+_0x88a0b5(0x78)};}catch(_0x4faae7){stopSpinner(_0x263e09,_0x88a0b5(0xb6),![]);throw CliErrors[_0x88a0b5(0xab)](_0x4faae7 instanceof Error?_0x4faae7[_0x88a0b5(0x95)]:_0x88a0b5(0xb6));}}};function ensureRunnableContext(_0xb6fb75,_0x37f9e1){const _0x2128fb=a107_0x46491,_0x31021d=_0xb6fb75[_0x2128fb(0xc3)]?String(_0xb6fb75[_0x2128fb(0xc3)])[_0x2128fb(0x9e)]():'';if(!isInProject()&&!_0x37f9e1&&!_0x31021d)throw CliErrors[_0x2128fb(0xab)](_0x2128fb(0x90)+'Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.');}function parseMode(_0x3574c0){const _0x10f92d=a107_0x46491;if(!_0x3574c0)return _0x10f92d(0xbd);if(_0x3574c0===_0x10f92d(0xa3)||_0x3574c0===_0x10f92d(0xbd))return _0x3574c0;throw CliErrors[_0x10f92d(0xab)](_0x10f92d(0x94));}function parseSelection(_0x3174a1,_0x528b9c=!![]){const _0x5394aa=a107_0x46491,_0x2ee37f=_0x3174a1[_0x5394aa(0xa6)]('all'),_0x207588=parseMenuIds(_0x3174a1[_0x5394aa(0xc8)](_0x5394aa(0x87))),_0x3e1c27=parseCsv(_0x3174a1[_0x5394aa(0xc8)](_0x5394aa(0x75))),_0x102eeb=_0x207588[_0x5394aa(0x76)]>0x0||_0x3e1c27['length']>0x0;if(_0x2ee37f&&_0x102eeb)throw CliErrors[_0x5394aa(0xab)](_0x5394aa(0xbe));if(!_0x2ee37f&&!_0x102eeb){if(!_0x528b9c)return undefined;throw CliErrors['validation'](_0x5394aa(0x99));}return{'all':_0x2ee37f,'menuIds':_0x207588,'paths':_0x3e1c27};}function parseMenuIds(_0x57ecec){const _0x3de636=a107_0x46491,_0x57db36=parseCsv(_0x57ecec),_0x416f81=_0x57db36[_0x3de636(0x9d)](Number);if(_0x416f81[_0x3de636(0x85)](_0x4f4be9=>!Number[_0x3de636(0xb3)](_0x4f4be9)||_0x4f4be9<=0x0))throw CliErrors[_0x3de636(0xab)]('--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.');return[...new Set(_0x416f81)];}function parseCsv(_0x4decfc){const _0xcbde10=a107_0x46491;return[...new Set(_0x4decfc[_0xcbde10(0xc2)](',')[_0xcbde10(0x9d)](_0x7afc32=>_0x7afc32[_0xcbde10(0x9e)]())[_0xcbde10(0x97)](Boolean))];}function parseLoadScriptMode(_0x227e49){const _0x1b109b=a107_0x46491;if(!_0x227e49)return undefined;if(_0x227e49===_0x1b109b(0xa9)||_0x227e49===_0x1b109b(0x8e)||_0x227e49==='fetch')return _0x227e49;throw CliErrors[_0x1b109b(0xab)](_0x1b109b(0x79));}function parseParams(_0x1f3700){const _0x48cb5a=a107_0x46491;if(!_0x1f3700)return{};try{const _0x602f4b=JSON['parse'](_0x1f3700);if(typeof _0x602f4b!=='object'||_0x602f4b===null||Array[_0x48cb5a(0xa4)](_0x602f4b))return{};return{'jsUrl':typeof _0x602f4b['jsUrl']===_0x48cb5a(0xb8)?_0x602f4b[_0x48cb5a(0xc6)][_0x48cb5a(0x9e)]():undefined,'cssUrl':typeof _0x602f4b[_0x48cb5a(0x6f)]===_0x48cb5a(0xb8)?_0x602f4b[_0x48cb5a(0x6f)][_0x48cb5a(0x9e)]():undefined};}catch{return{};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a109_0x9c4da3=a109_0x47b4;(function(_0x56565a,_0x7bbb16){const _0x23dd69=a109_0x47b4,_0x39207b=_0x56565a();while(!![]){try{const _0x28a037=parseInt(_0x23dd69(0x15c))/0x1*(-parseInt(_0x23dd69(0x139))/0x2)+parseInt(_0x23dd69(0x131))/0x3+-parseInt(_0x23dd69(0x10f))/0x4+-parseInt(_0x23dd69(0x10c))/0x5+-parseInt(_0x23dd69(0x133))/0x6*(parseInt(_0x23dd69(0x15b))/0x7)+parseInt(_0x23dd69(0x111))/0x8*(-parseInt(_0x23dd69(0x147))/0x9)+parseInt(_0x23dd69(0x116))/0xa*(parseInt(_0x23dd69(0x13a))/0xb);if(_0x28a037===_0x7bbb16)break;else _0x39207b['push'](_0x39207b['shift']());}catch(_0x207e9f){_0x39207b['push'](_0x39207b['shift']());}}}(a109_0xe133,0xca240));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a109_0x9c4da3(0x165),'path':a109_0x9c4da3(0x167)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a109_0x9c4da3(0x15f)},MENU_DELETE_RECURSIVE_FLAG={'name':a109_0x9c4da3(0x12d),'type':'boolean','description':a109_0x9c4da3(0x173)},MENU_DELETE_PLAN_OUT_FLAG={'name':a109_0x9c4da3(0x16e),'type':a109_0x9c4da3(0x11a),'description':a109_0x9c4da3(0x118)},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a109_0x9c4da3(0x11a),'description':a109_0x9c4da3(0x164)};export const menuDelete={'service':a109_0x9c4da3(0x14e),'command':a109_0x9c4da3(0x120),'description':'Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3d8e24){const _0x12c6ec=a109_0x9c4da3;_0x3d8e24[_0x12c6ec(0x148)]('dry-run')?validateDeleteDryRunInput(_0x3d8e24):validateDeleteExecuteInput(_0x3d8e24),requireExplicitYes(_0x3d8e24);},async 'dryRun'(_0x35118b){const _0x2720bd=a109_0x9c4da3;validateDeleteDryRunInput(_0x35118b);const _0x1a6646=await buildDeletePlan(_0x35118b),_0x2b76cf=createMenuDeletePlanFile(_0x35118b[_0x2720bd(0x107)],_0x1a6646),_0x4fdf39=await writeMenuDeletePlan(_0x35118b[_0x2720bd(0x16d)](_0x2720bd(0x16e)),_0x2b76cf),_0x3b0853=mutationResult({..._0x1a6646,'planFile':{'path':_0x4fdf39,'createdAt':_0x2b76cf['createdAt'],'expiresAt':_0x2b76cf[_0x2720bd(0x14c)]}});return menuDryRunResult(_0x3b0853,{'method':_0x2720bd(0x165),'url':_0x2720bd(0x167),'body':{'idList':_0x3b0853['deleteOrder']},'description':_0x2720bd(0x125)+(_0x3b0853[_0x2720bd(0x16c)]?.['length']??0x1)+_0x2720bd(0x146)+_0x3b0853[_0x2720bd(0x149)]['id']+';\x20execution\x20must\x20consume\x20'+_0x4fdf39+'.'});},async 'execute'(_0x25b70a){const _0x507ab3=a109_0x9c4da3;requireExplicitYes(_0x25b70a),validateDeleteExecuteInput(_0x25b70a);const _0x16da04=await readMenuDeletePlan(_0x25b70a[_0x507ab3(0x16d)](_0x507ab3(0x162))),_0x2ac0a5=mutationPlanFromDeleteFile(_0x16da04[_0x507ab3(0x162)],_0x16da04[_0x507ab3(0x16b)]),_0x3c6021=_0x16da04[_0x507ab3(0x162)][_0x507ab3(0x174)]['id'];try{assertMenuDeletePlanExecutable(_0x16da04[_0x507ab3(0x162)],_0x25b70a[_0x507ab3(0x107)]);}catch(_0x5b93a8){throw menuFailure(asMenuError(_0x5b93a8),_0x2ac0a5,{'stage':_0x507ab3(0x158),'failed':{'id':_0x3c6021}});}let _0x347934,_0x51d1c7;try{_0x347934=await fetchMutationSnapshot(_0x25b70a,_0x507ab3(0x129),_0x3c6021),_0x51d1c7=assertMenuDeletePlanCurrent(_0x16da04[_0x507ab3(0x162)],_0x25b70a['appCode'],_0x347934),assertDeleteTargetsComplete(_0x16da04[_0x507ab3(0x162)],_0x347934),_0x51d1c7['forEach'](_0x402661=>assertDeleteSafety(_0x402661,_0x16da04[_0x507ab3(0x162)][_0x507ab3(0x12d)])),assertNoSharedPages(_0x347934,_0x51d1c7),assertCascadeMatchesPlan(_0x2ac0a5,_0x51d1c7);}catch(_0x349974){throw menuFailure(asMenuError(_0x349974),_0x2ac0a5,{'stage':_0x507ab3(0x117),'failed':{'id':_0x3c6021}});}const _0xc6be7a=_0x16da04[_0x507ab3(0x162)][_0x507ab3(0x16c)];let _0x5e4599;try{_0x5e4599=await batchDeleteMenuEntities(_0x25b70a[_0x507ab3(0x105)],_0xc6be7a);}catch(_0x577c1a){const _0x1b3905=mapMenuApiError(_0x577c1a,_0x507ab3(0x126)),_0x24f4bf=[_0x507ab3(0x150)];let _0x42e19c;try{_0x42e19c=await readDeleteOutcome(_0x25b70a,_0xc6be7a);}catch(_0x200bd4){const _0xa0883f=describeMenuErrorCause(_0x200bd4,'read\x20menu\x20state\x20after\x20batch\x20delete\x20failure',_0x3c6021);_0x24f4bf[_0x507ab3(0x121)]('Post-failure\x20menu\x20readback\x20failed\x20('+_0xa0883f[_0x507ab3(0x140)]+_0x507ab3(0x157)+_0xa0883f[_0x507ab3(0x123)]);throw menuFailure(_0x1b3905,_0x2ac0a5,{'stage':_0x507ab3(0x156),'failed':{'targetIds':_0xc6be7a,'targetIdsAbsent':'unconfirmed',..._0xa0883f},'warnings':_0x24f4bf,'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0xc6be7a}});}throw menuFailure(_0x1b3905,_0x2ac0a5,{'stage':_0x507ab3(0x156),'succeeded':_0x42e19c[_0x507ab3(0x12b)][_0x507ab3(0x108)](_0x445b5b=>({'id':_0x445b5b,'deleted':!![]})),'failed':{'targetIds':_0xc6be7a,'absentIds':_0x42e19c[_0x507ab3(0x12b)],'remainingIds':_0x42e19c['remainingIds']},'warnings':_0x24f4bf,'verification':verificationFromOutcome(_0x42e19c)});}if(_0x5e4599!==_0xc6be7a['length']){const _0x38a015=menuError(_0x507ab3(0x14d),_0x507ab3(0x168)+_0x5e4599+_0x507ab3(0x137)+_0xc6be7a[_0x507ab3(0x141)]+'.',_0x507ab3(0x14b)),_0xa9774a=[_0x507ab3(0x10a)];let _0x5a6a52;try{_0x5a6a52=await readDeleteOutcome(_0x25b70a,_0xc6be7a);}catch(_0x1f390f){const _0x13d599=describeMenuErrorCause(_0x1f390f,_0x507ab3(0x124),_0x3c6021);_0xa9774a[_0x507ab3(0x121)](_0x507ab3(0x11d)+_0x13d599[_0x507ab3(0x140)]+_0x507ab3(0x157)+_0x13d599[_0x507ab3(0x123)]);throw menuFailure(_0x38a015,_0x2ac0a5,{'stage':_0x507ab3(0x156),'failed':{'targetIds':_0xc6be7a,'expectedCount':_0xc6be7a[_0x507ab3(0x141)],'reportedDeletedCount':_0x5e4599,'targetIdsAbsent':_0x507ab3(0x109),..._0x13d599},'warnings':_0xa9774a,'verification':{'status':_0x507ab3(0x15a),'lookupCommand':_0x507ab3(0x11f),'targetIds':_0xc6be7a}});}throw menuFailure(_0x38a015,_0x2ac0a5,{'stage':_0x507ab3(0x156),'succeeded':_0x5a6a52[_0x507ab3(0x12b)][_0x507ab3(0x108)](_0x29d2dc=>({'id':_0x29d2dc,'deleted':!![]})),'failed':{'targetIds':_0xc6be7a,'expectedCount':_0xc6be7a[_0x507ab3(0x141)],'reportedDeletedCount':_0x5e4599,'absentIds':_0x5a6a52[_0x507ab3(0x12b)],'remainingIds':_0x5a6a52[_0x507ab3(0x114)]},'warnings':_0xa9774a,'verification':verificationFromOutcome(_0x5a6a52)});}let _0x40e82c;try{_0x40e82c=await readDeleteOutcome(_0x25b70a,_0xc6be7a);}catch(_0x45b77e){const _0x20fa7c=describeMenuErrorCause(_0x45b77e,'verify\x20batch\x20delete',_0x3c6021),_0x3dd61a=asVerificationError(_0x45b77e,_0x507ab3(0x14a)+_0x3c6021+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x3dd61a,_0x2ac0a5,{'stage':_0x507ab3(0x128),'succeeded':_0xc6be7a[_0x507ab3(0x108)](_0x27eef3=>({'id':_0x27eef3,'deleteRequested':!![]})),'failed':{'id':_0x3c6021,'targetIds':_0xc6be7a,'targetIdsAbsent':'unconfirmed',..._0x20fa7c},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':'failed','lookupCommand':_0x507ab3(0x11f),'targetIds':_0xc6be7a}});}if(_0x40e82c[_0x507ab3(0x114)]['length']>0x0){const _0x29d200=menuError(_0x507ab3(0x11b),_0x507ab3(0x130)+_0x40e82c[_0x507ab3(0x114)][_0x507ab3(0x127)](',\x20')+'.',_0x507ab3(0x14b));throw menuFailure(_0x29d200,_0x2ac0a5,{'stage':_0x507ab3(0x128),'succeeded':_0xc6be7a[_0x507ab3(0x108)](_0x24b877=>({'id':_0x24b877,'deleteRequested':!![]})),'failed':{'id':_0x3c6021,'targetIds':_0xc6be7a,'absentIds':_0x40e82c[_0x507ab3(0x12b)],'remainingIds':_0x40e82c[_0x507ab3(0x114)]},'warnings':[_0x507ab3(0x12f)],'verification':verificationFromOutcome(_0x40e82c)});}const _0x105a45=_0xc6be7a['map'](_0x11c788=>({'id':_0x11c788,'deleted':!![]})),_0x1c3539=mutationResult({..._0x2ac0a5,'dryRun':![],'succeeded':_0x105a45,'verification':{'checkedBy':_0x507ab3(0x135),'plannedSnapshotHash':_0x2ac0a5[_0x507ab3(0x16a)],'finalSnapshotHash':_0x40e82c[_0x507ab3(0x155)]['hash'],'reportedDeletedCount':_0x5e4599,'targetAbsent':!_0x40e82c[_0x507ab3(0x155)][_0x507ab3(0x112)][_0x507ab3(0x143)](_0x3c6021),'allTargetsAbsent':!![],'targetIds':_0xc6be7a}});return{'ok':!![],'data':_0x1c3539,'message':'Deleted\x20'+_0x105a45[_0x507ab3(0x141)]+_0x507ab3(0x146)+_0x3c6021+'.'};}};async function readDeleteOutcome(_0x10aa6b,_0x266cf8){const _0x310981=a109_0x9c4da3,_0x2c2df5=await fetchMenuSnapshot(_0x10aa6b[_0x310981(0x107)],_0x10aa6b[_0x310981(0x105)]);return{'snapshot':_0x2c2df5,'absentIds':_0x266cf8[_0x310981(0x15e)](_0x38f5f7=>!_0x2c2df5['byId'][_0x310981(0x143)](_0x38f5f7)),'remainingIds':_0x266cf8[_0x310981(0x15e)](_0x3bf1d5=>_0x2c2df5['byId']['has'](_0x3bf1d5))};}function verificationFromOutcome(_0x23e02e){const _0x260f7c=a109_0x9c4da3;return{'checkedBy':_0x260f7c(0x135),'absentIds':_0x23e02e[_0x260f7c(0x12b)],'remainingIds':_0x23e02e[_0x260f7c(0x114)]};}function validateDeleteDryRunInput(_0x4ec56b){const _0x5ae69c=a109_0x9c4da3;validateExactId(_0x4ec56b);if(!hasFlag(_0x4ec56b,_0x5ae69c(0x16e))||!_0x4ec56b[_0x5ae69c(0x16d)](_0x5ae69c(0x16e))['trim']())throw CliErrors['flagMissing']('plan-out',_0x5ae69c(0x16f));if(hasFlag(_0x4ec56b,_0x5ae69c(0x162)))throw CliErrors[_0x5ae69c(0x176)]('--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.');}function validateDeleteExecuteInput(_0x28be2c){const _0x78be13=a109_0x9c4da3;if(!hasFlag(_0x28be2c,_0x78be13(0x162))||!_0x28be2c[_0x78be13(0x16d)]('plan')[_0x78be13(0x103)]())throw CliErrors[_0x78be13(0x134)](_0x78be13(0x162),_0x78be13(0x160));const _0x119919=['id',_0x78be13(0x12d),'plan-out',_0x78be13(0x132),'expect-path',_0x78be13(0x136)][_0x78be13(0x15e)](_0x31cd78=>hasFlag(_0x28be2c,_0x31cd78));if(_0x119919[_0x78be13(0x141)]>0x0)throw CliErrors[_0x78be13(0x176)](_0x78be13(0x177)+_0x119919[_0x78be13(0x108)](_0x22929c=>'--'+_0x22929c)[_0x78be13(0x127)](',\x20')+'.');}function a109_0x47b4(_0x2d93fe,_0x1db424){_0x2d93fe=_0x2d93fe-0x103;const _0xe133e4=a109_0xe133();let _0x47b494=_0xe133e4[_0x2d93fe];return _0x47b494;}async function buildDeletePlan(_0x388948){const _0x5c78ec=a109_0x9c4da3,_0x1e63b5=validateExactId(_0x388948),_0x248773=await fetchMutationSnapshot(_0x388948,'plan\x20delete',_0x1e63b5),_0x58208b=requireMenu(_0x248773,_0x1e63b5);assertExpectedState(_0x388948,_0x58208b);const _0x5c3f86=_0x388948[_0x5c78ec(0x148)](_0x5c78ec(0x12d));let _0x20017e;if(_0x5c3f86){if(_0x58208b[_0x5c78ec(0x178)][_0x5c78ec(0x103)]()[_0x5c78ec(0x170)]()!==_0x5c78ec(0x138))throw menuError('menu_recursive_requires_folder',_0x5c78ec(0x13b)+_0x58208b['id']+'\x20is\x20type\x20\x22'+(_0x58208b[_0x5c78ec(0x178)]||_0x5c78ec(0x159))+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x20017e=collectDeleteTargets(_0x248773,_0x58208b),_0x20017e[_0x5c78ec(0x144)](_0xea9e6=>assertDeleteSafety(_0xea9e6,!![]));}else assertDeleteSafety(_0x58208b),_0x20017e=[_0x58208b];assertNoSharedPages(_0x248773,_0x20017e);const _0x3b7718=_0x20017e['map'](_0x50f579=>_0x50f579['id']),_0x5ab81e=cascadeForTargets(_0x20017e),_0xe02f4b=_0x5ab81e[_0x5c78ec(0x161)][_0x5c78ec(0x141)]>0x0?['Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.']:[];return mutationResult({'operation':_0x5c78ec(0x120),'selector':{'id':_0x1e63b5,'recursive':_0x5c3f86},'before':_0x58208b,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x5c78ec(0x12c),'method':'POST','path':_0x5c78ec(0x167),'body':{'idList':_0x3b7718}}],'targets':_0x20017e,'deleteOrder':_0x3b7718,'snapshotHash':_0x248773[_0x5c78ec(0x153)],'cascade':_0x5ab81e,'warnings':_0xe02f4b});}function assertDeleteSafety(_0x71aeab,_0x396f32=![]){const _0x282fb6=a109_0x9c4da3,_0x425ce6=_0x71aeab[_0x282fb6(0x178)][_0x282fb6(0x103)]()[_0x282fb6(0x170)]()===_0x282fb6(0x138);if(_0x71aeab[_0x282fb6(0x10e)]>0x0&&(!_0x396f32||!_0x425ce6))throw menuError(_0x282fb6(0x175),_0x282fb6(0x13b)+_0x71aeab['id']+_0x282fb6(0x11c)+_0x71aeab[_0x282fb6(0x10e)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20'+_0x71aeab[_0x282fb6(0x13c)]['join'](',\x20'));if(_0x425ce6&&_0x71aeab[_0x282fb6(0x151)]!=null)throw menuError('menu_delete_page_bound','Folder\x20'+_0x71aeab['id']+_0x282fb6(0x145)+_0x71aeab[_0x282fb6(0x151)]+_0x282fb6(0x13e),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x425ce6)return;if(!_0x71aeab['resourcesValid'])throw menuError(_0x282fb6(0x14f),_0x282fb6(0x115)+_0x71aeab['id']+_0x282fb6(0x166),'Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(_0x71aeab[_0x282fb6(0x163)][_0x282fb6(0x141)]>0x0)throw menuError(_0x282fb6(0x152),_0x282fb6(0x115)+_0x71aeab['id']+_0x282fb6(0x169)+_0x71aeab[_0x282fb6(0x163)][_0x282fb6(0x141)]+_0x282fb6(0x172),_0x282fb6(0x11e));}function collectDeleteTargets(_0x5475eb,_0x45e754){const _0x56a6cb=[],_0x1b43b8=new Set(),_0x4537cd=new Set(),_0x40d120=_0x4f0c8e=>{const _0x316372=a109_0x47b4;if(_0x1b43b8[_0x316372(0x143)](_0x4f0c8e['id']))throw menuError(_0x316372(0x122),_0x316372(0x106)+_0x4f0c8e['id']+'.');if(_0x4537cd[_0x316372(0x143)](_0x4f0c8e['id']))return;_0x1b43b8[_0x316372(0x13d)](_0x4f0c8e['id']);for(const _0x39a2e4 of _0x4f0c8e[_0x316372(0x13c)]){const _0x2118ab=_0x5475eb[_0x316372(0x112)][_0x316372(0x154)](_0x39a2e4);if(!_0x2118ab)throw menuError('menu_tree_invalid',_0x316372(0x13b)+_0x4f0c8e['id']+_0x316372(0x119)+_0x39a2e4+'.');_0x40d120(_0x2118ab);}_0x1b43b8[_0x316372(0x120)](_0x4f0c8e['id']),_0x4537cd['add'](_0x4f0c8e['id']),_0x56a6cb['push'](_0x4f0c8e);};return _0x40d120(_0x45e754),_0x56a6cb;}function assertDeleteTargetsComplete(_0x5b238a,_0x490712){const _0x4d5db1=a109_0x9c4da3,_0xe69ef=requireMenu(_0x490712,_0x5b238a[_0x4d5db1(0x174)]['id']);if(_0x5b238a[_0x4d5db1(0x12d)]&&_0xe69ef[_0x4d5db1(0x178)][_0x4d5db1(0x103)]()[_0x4d5db1(0x170)]()!==_0x4d5db1(0x138))throw menuError('menu_plan_invalid','Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0xe69ef['id']+_0x4d5db1(0x104));const _0x3ca80b=_0x5b238a['recursive']?collectDeleteTargets(_0x490712,_0xe69ef)['map'](_0x2ecc28=>_0x2ecc28['id']):[_0xe69ef['id']];if(JSON[_0x4d5db1(0x10b)](_0x5b238a[_0x4d5db1(0x16c)])!==JSON[_0x4d5db1(0x10b)](_0x3ca80b))throw menuError(_0x4d5db1(0x142),_0x4d5db1(0x12e),_0x4d5db1(0x110));}function assertNoSharedPages(_0x181973,_0x5d75db){const _0x1dd6fe=a109_0x9c4da3,_0xed27c5=new Set(_0x5d75db['map'](_0x1fee87=>_0x1fee87['id'])),_0x460b4c=new Set(_0x5d75db[_0x1dd6fe(0x108)](_0x5c1822=>_0x5c1822[_0x1dd6fe(0x151)])[_0x1dd6fe(0x15e)](_0x39c274=>_0x39c274!=null));if(_0x460b4c[_0x1dd6fe(0x13f)]===0x0)return;const _0x3d87cc=_0x181973['menus'][_0x1dd6fe(0x15e)](_0x5df7a3=>!_0xed27c5[_0x1dd6fe(0x143)](_0x5df7a3['id'])&&_0x5df7a3['pageId']!=null&&_0x460b4c[_0x1dd6fe(0x143)](_0x5df7a3[_0x1dd6fe(0x151)]));if(_0x3d87cc[_0x1dd6fe(0x141)]===0x0)return;const _0x4e79b1=_0x3d87cc['map'](_0x4545a4=>'page\x20'+_0x4545a4['pageId']+_0x1dd6fe(0x15d)+_0x4545a4['id'])[_0x1dd6fe(0x127)](',\x20');throw menuError(_0x1dd6fe(0x113),_0x1dd6fe(0x171)+_0x4e79b1+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x5e6fe2,_0xb1795c){const _0xe30d69=a109_0x9c4da3,_0x51c5f7=cascadeForTargets(_0xb1795c);if(JSON[_0xe30d69(0x10b)](_0x5e6fe2[_0xe30d69(0x12a)])!==JSON['stringify'](_0x51c5f7))throw menuError(_0xe30d69(0x142),_0xe30d69(0x10d));}function cascadeForTargets(_0x357a60){const _0x1dc852=a109_0x9c4da3,_0x51de0f=_0x357a60['map'](_0x59dd53=>_0x59dd53['pageId'])['filter'](_0x392feb=>_0x392feb!=null)[_0x1dc852(0x15e)]((_0x19d041,_0x5b6ba4,_0x4586c9)=>_0x4586c9['indexOf'](_0x19d041)===_0x5b6ba4);return{'pages':_0x51de0f,'pageSchemaAffected':_0x51de0f['length']>0x0};}function asMenuError(_0x2b7915){const _0x2c2596=a109_0x9c4da3;return _0x2b7915 instanceof CliError?_0x2b7915:menuError(_0x2c2596(0x142),_0x2b7915 instanceof Error?_0x2b7915['message']:String(_0x2b7915));}function a109_0xe133(){const _0x4ee932=['\x20menu(s)\x20under\x20exact\x20id\x20','14805477bGunAj','bool','selector','Batch\x20delete\x20request\x20for\x20menu\x20','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','expiresAt','menu_batch_delete_count_mismatch','menu','menu_folder_resources_invalid','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','pageId','menu_folder_has_resources','hash','get','snapshot','batch-delete','):\x20','plan-validation','unknown','failed','21fCgwHH','12POeecP','\x20->\x20menu\x20','filter','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','pages','plan','resources','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','POST','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','/smartapi/menu/batchDelete','Backend\x20reported\x20','\x20still\x20references\x20','snapshotHash','path','deleteOrder','str','plan-out','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','toLowerCase','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','\x20resource\x20URL(s).','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','target','menu_non_empty','validation','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','type','trim','\x20is\x20not\x20a\x20folder.','cookie','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','appCode','map','unconfirmed','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','stringify','7100710wGlzjU','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','childrenCount','3145244cuvZkN','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','8gIyZSU','byId','menu_page_shared','remainingIds','Folder\x20','22771380zilonc','pre-write-plan-validation','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','\x20references\x20missing\x20child\x20','string','menu_verification_failed','\x20has\x20','Post-mismatch\x20menu\x20readback\x20failed\x20(','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','rabetbase\x20menu\x20list\x20--format\x20json','delete','push','menu_tree_invalid','causeMessage','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','Would\x20batch\x20delete\x20','batch\x20delete','join','verification','execute\x20reviewed\x20delete\x20plan','cascade','absentIds','batch-delete-menu','recursive','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','628845pEajMv','expect-parent-id','2019174dwCpKT','flagMissing','menu\x20list','expected-children-count','\x20deleted\x20menus;\x20expected\x20','folder','225328OUzWIC','33PYSPFL','Menu\x20','childrenIds','add','\x20and\x20cannot\x20be\x20deleted\x20safely.','size','causeCode','length','menu_plan_invalid','has','forEach','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20'];a109_0xe133=function(){return _0x4ee932;};return a109_0xe133();}
|
|
1
|
+
const a108_0x16679c=a108_0x282c;(function(_0x556c21,_0x582bcd){const _0x1844d6=a108_0x282c,_0x138e95=_0x556c21();while(!![]){try{const _0x768054=-parseInt(_0x1844d6(0x222))/0x1*(parseInt(_0x1844d6(0x1ec))/0x2)+parseInt(_0x1844d6(0x23e))/0x3*(-parseInt(_0x1844d6(0x228))/0x4)+parseInt(_0x1844d6(0x216))/0x5+parseInt(_0x1844d6(0x1e2))/0x6*(parseInt(_0x1844d6(0x247))/0x7)+-parseInt(_0x1844d6(0x22c))/0x8*(-parseInt(_0x1844d6(0x21c))/0x9)+parseInt(_0x1844d6(0x249))/0xa+parseInt(_0x1844d6(0x1e3))/0xb;if(_0x768054===_0x582bcd)break;else _0x138e95['push'](_0x138e95['shift']());}catch(_0x1df05b){_0x138e95['push'](_0x138e95['shift']());}}}(a108_0x2727,0xdf387));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a108_0x16679c(0x200)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a108_0x16679c(0x23f)},MENU_DELETE_RECURSIVE_FLAG={'name':a108_0x16679c(0x24b),'type':a108_0x16679c(0x23d),'description':a108_0x16679c(0x1f2)},MENU_DELETE_PLAN_OUT_FLAG={'name':a108_0x16679c(0x24c),'type':a108_0x16679c(0x242),'description':a108_0x16679c(0x1dd)},MENU_DELETE_PLAN_FLAG={'name':a108_0x16679c(0x220),'type':a108_0x16679c(0x242),'description':a108_0x16679c(0x1de)};export const menuDelete={'service':'menu','command':a108_0x16679c(0x224),'description':a108_0x16679c(0x23c),'risk':a108_0x16679c(0x244),'structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5bc527){const _0x202b1b=a108_0x16679c;_0x5bc527[_0x202b1b(0x1fc)](_0x202b1b(0x22e))?validateDeleteDryRunInput(_0x5bc527):validateDeleteExecuteInput(_0x5bc527),requireExplicitYes(_0x5bc527);},async 'dryRun'(_0x4f2d00){const _0xbf2a03=a108_0x16679c;validateDeleteDryRunInput(_0x4f2d00);const _0x41eecd=await buildDeletePlan(_0x4f2d00),_0x20ddc8=createMenuDeletePlanFile(_0x4f2d00[_0xbf2a03(0x20a)],_0x41eecd),_0x2a2e5f=await writeMenuDeletePlan(_0x4f2d00[_0xbf2a03(0x202)](_0xbf2a03(0x24c)),_0x20ddc8),_0x5ba834=mutationResult({..._0x41eecd,'planFile':{'path':_0x2a2e5f,'createdAt':_0x20ddc8[_0xbf2a03(0x1ee)],'expiresAt':_0x20ddc8[_0xbf2a03(0x203)]}});return menuDryRunResult(_0x5ba834,{'method':'POST','url':_0xbf2a03(0x200),'body':{'idList':_0x5ba834[_0xbf2a03(0x253)]},'description':_0xbf2a03(0x204)+(_0x5ba834[_0xbf2a03(0x253)]?.['length']??0x1)+_0xbf2a03(0x1f9)+_0x5ba834['selector']['id']+_0xbf2a03(0x1df)+_0x2a2e5f+'.'});},async 'execute'(_0x392175){const _0x387183=a108_0x16679c;requireExplicitYes(_0x392175),validateDeleteExecuteInput(_0x392175);const _0x2dabf7=await readMenuDeletePlan(_0x392175[_0x387183(0x202)](_0x387183(0x220))),_0x4f62cb=mutationPlanFromDeleteFile(_0x2dabf7[_0x387183(0x220)],_0x2dabf7[_0x387183(0x24e)]),_0x3b42be=_0x2dabf7[_0x387183(0x220)][_0x387183(0x1e9)]['id'];try{assertMenuDeletePlanExecutable(_0x2dabf7[_0x387183(0x220)],_0x392175[_0x387183(0x20a)]);}catch(_0x3c32b3){throw menuFailure(asMenuError(_0x3c32b3),_0x4f62cb,{'stage':_0x387183(0x1e1),'failed':{'id':_0x3b42be}});}let _0x55d26b,_0x38c79d;try{_0x55d26b=await fetchMutationSnapshot(_0x392175,'execute\x20reviewed\x20delete\x20plan',_0x3b42be),_0x38c79d=assertMenuDeletePlanCurrent(_0x2dabf7['plan'],_0x392175[_0x387183(0x20a)],_0x55d26b),assertDeleteTargetsComplete(_0x2dabf7[_0x387183(0x220)],_0x55d26b),_0x38c79d[_0x387183(0x21d)](_0x5ecf97=>assertDeleteSafety(_0x5ecf97,_0x2dabf7['plan'][_0x387183(0x24b)])),assertNoSharedPages(_0x55d26b,_0x38c79d),assertCascadeMatchesPlan(_0x4f62cb,_0x38c79d);}catch(_0x180b24){throw menuFailure(asMenuError(_0x180b24),_0x4f62cb,{'stage':_0x387183(0x21b),'failed':{'id':_0x3b42be}});}const _0x3419fe=_0x2dabf7[_0x387183(0x220)]['deleteOrder'];let _0x4deebf;try{_0x4deebf=await batchDeleteMenuEntities(_0x392175[_0x387183(0x1db)],_0x3419fe);}catch(_0x4403c4){const _0x4ce909=mapMenuApiError(_0x4403c4,_0x387183(0x22d)),_0x5efeec=[_0x387183(0x1e5)];let _0x308eed;try{_0x308eed=await readDeleteOutcome(_0x392175,_0x3419fe);}catch(_0xa88762){const _0x17122d=describeMenuErrorCause(_0xa88762,_0x387183(0x231),_0x3b42be);_0x5efeec[_0x387183(0x230)](_0x387183(0x255)+_0x17122d['causeCode']+'):\x20'+_0x17122d[_0x387183(0x208)]);throw menuFailure(_0x4ce909,_0x4f62cb,{'stage':'batch-delete','failed':{'targetIds':_0x3419fe,'targetIdsAbsent':_0x387183(0x24a),..._0x17122d},'warnings':_0x5efeec,'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x3419fe}});}throw menuFailure(_0x4ce909,_0x4f62cb,{'stage':_0x387183(0x234),'succeeded':_0x308eed[_0x387183(0x1ff)][_0x387183(0x229)](_0x541279=>({'id':_0x541279,'deleted':!![]})),'failed':{'targetIds':_0x3419fe,'absentIds':_0x308eed[_0x387183(0x1ff)],'remainingIds':_0x308eed['remainingIds']},'warnings':_0x5efeec,'verification':verificationFromOutcome(_0x308eed)});}if(_0x4deebf!==_0x3419fe[_0x387183(0x1da)]){const _0x405251=menuError(_0x387183(0x233),_0x387183(0x21f)+_0x4deebf+_0x387183(0x212)+_0x3419fe['length']+'.',_0x387183(0x214)),_0x59b61f=[_0x387183(0x226)];let _0x352ade;try{_0x352ade=await readDeleteOutcome(_0x392175,_0x3419fe);}catch(_0xe03e05){const _0x3fe553=describeMenuErrorCause(_0xe03e05,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x3b42be);_0x59b61f[_0x387183(0x230)](_0x387183(0x1e8)+_0x3fe553[_0x387183(0x205)]+_0x387183(0x227)+_0x3fe553[_0x387183(0x208)]);throw menuFailure(_0x405251,_0x4f62cb,{'stage':_0x387183(0x234),'failed':{'targetIds':_0x3419fe,'expectedCount':_0x3419fe['length'],'reportedDeletedCount':_0x4deebf,'targetIdsAbsent':_0x387183(0x24a),..._0x3fe553},'warnings':_0x59b61f,'verification':{'status':'failed','lookupCommand':_0x387183(0x20c),'targetIds':_0x3419fe}});}throw menuFailure(_0x405251,_0x4f62cb,{'stage':_0x387183(0x234),'succeeded':_0x352ade[_0x387183(0x1ff)][_0x387183(0x229)](_0x223226=>({'id':_0x223226,'deleted':!![]})),'failed':{'targetIds':_0x3419fe,'expectedCount':_0x3419fe[_0x387183(0x1da)],'reportedDeletedCount':_0x4deebf,'absentIds':_0x352ade[_0x387183(0x1ff)],'remainingIds':_0x352ade[_0x387183(0x1ea)]},'warnings':_0x59b61f,'verification':verificationFromOutcome(_0x352ade)});}let _0xdfbe65;try{_0xdfbe65=await readDeleteOutcome(_0x392175,_0x3419fe);}catch(_0x5b3cce){const _0x6a2dbe=describeMenuErrorCause(_0x5b3cce,'verify\x20batch\x20delete',_0x3b42be),_0x462211=asVerificationError(_0x5b3cce,_0x387183(0x1f6)+_0x3b42be+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x462211,_0x4f62cb,{'stage':'verification','succeeded':_0x3419fe[_0x387183(0x229)](_0x3968fd=>({'id':_0x3968fd,'deleteRequested':!![]})),'failed':{'id':_0x3b42be,'targetIds':_0x3419fe,'targetIdsAbsent':_0x387183(0x24a),..._0x6a2dbe},'warnings':[_0x387183(0x207)],'verification':{'status':_0x387183(0x243),'lookupCommand':_0x387183(0x20c),'targetIds':_0x3419fe}});}if(_0xdfbe65['remainingIds']['length']>0x0){const _0x469e04=menuError(_0x387183(0x24f),_0x387183(0x1e4)+_0xdfbe65[_0x387183(0x1ea)][_0x387183(0x1ed)](',\x20')+'.',_0x387183(0x214));throw menuFailure(_0x469e04,_0x4f62cb,{'stage':_0x387183(0x1e6),'succeeded':_0x3419fe[_0x387183(0x229)](_0x9ec955=>({'id':_0x9ec955,'deleteRequested':!![]})),'failed':{'id':_0x3b42be,'targetIds':_0x3419fe,'absentIds':_0xdfbe65[_0x387183(0x1ff)],'remainingIds':_0xdfbe65['remainingIds']},'warnings':[_0x387183(0x20d)],'verification':verificationFromOutcome(_0xdfbe65)});}const _0x273f97=_0x3419fe[_0x387183(0x229)](_0x4c2a44=>({'id':_0x4c2a44,'deleted':!![]})),_0x2bd590=mutationResult({..._0x4f62cb,'dryRun':![],'succeeded':_0x273f97,'verification':{'checkedBy':_0x387183(0x218),'plannedSnapshotHash':_0x4f62cb[_0x387183(0x20b)],'finalSnapshotHash':_0xdfbe65['snapshot'][_0x387183(0x239)],'reportedDeletedCount':_0x4deebf,'targetAbsent':!_0xdfbe65[_0x387183(0x252)][_0x387183(0x1e7)][_0x387183(0x1f7)](_0x3b42be),'allTargetsAbsent':!![],'targetIds':_0x3419fe}});return{'ok':!![],'data':_0x2bd590,'message':'Deleted\x20'+_0x273f97[_0x387183(0x1da)]+_0x387183(0x1f9)+_0x3b42be+'.'};}};async function readDeleteOutcome(_0x390c1a,_0x532a64){const _0x3b9ce6=a108_0x16679c,_0x3cc287=await fetchMenuSnapshot(_0x390c1a['appCode'],_0x390c1a[_0x3b9ce6(0x1db)]);return{'snapshot':_0x3cc287,'absentIds':_0x532a64[_0x3b9ce6(0x23a)](_0x1542c1=>!_0x3cc287['byId'][_0x3b9ce6(0x1f7)](_0x1542c1)),'remainingIds':_0x532a64['filter'](_0x1bd474=>_0x3cc287['byId'][_0x3b9ce6(0x1f7)](_0x1bd474))};}function verificationFromOutcome(_0x1e9ccd){const _0x480b04=a108_0x16679c;return{'checkedBy':_0x480b04(0x218),'absentIds':_0x1e9ccd['absentIds'],'remainingIds':_0x1e9ccd[_0x480b04(0x1ea)]};}function validateDeleteDryRunInput(_0x4aa6ef){const _0x440a57=a108_0x16679c;validateExactId(_0x4aa6ef);if(!hasFlag(_0x4aa6ef,_0x440a57(0x24c))||!_0x4aa6ef[_0x440a57(0x202)]('plan-out')[_0x440a57(0x210)]())throw CliErrors[_0x440a57(0x223)](_0x440a57(0x24c),_0x440a57(0x1eb));if(hasFlag(_0x4aa6ef,_0x440a57(0x220)))throw CliErrors[_0x440a57(0x24d)](_0x440a57(0x22a));}function validateDeleteExecuteInput(_0x506594){const _0x3ceec4=a108_0x16679c;if(!hasFlag(_0x506594,_0x3ceec4(0x220))||!_0x506594[_0x3ceec4(0x202)]('plan')[_0x3ceec4(0x210)]())throw CliErrors['flagMissing'](_0x3ceec4(0x220),_0x3ceec4(0x20f));const _0x49594e=['id',_0x3ceec4(0x24b),_0x3ceec4(0x24c),'expect-parent-id','expect-path','expected-children-count']['filter'](_0x54a818=>hasFlag(_0x506594,_0x54a818));if(_0x49594e[_0x3ceec4(0x1da)]>0x0)throw CliErrors['validation'](_0x3ceec4(0x236)+_0x49594e['map'](_0x4662a2=>'--'+_0x4662a2)['join'](',\x20')+'.');}async function buildDeletePlan(_0x34ec27){const _0x396d89=a108_0x16679c,_0xbd0e13=validateExactId(_0x34ec27),_0x21bee6=await fetchMutationSnapshot(_0x34ec27,_0x396d89(0x1fa),_0xbd0e13),_0x2c6b60=requireMenu(_0x21bee6,_0xbd0e13);assertExpectedState(_0x34ec27,_0x2c6b60);const _0x48e9c9=_0x34ec27[_0x396d89(0x1fc)](_0x396d89(0x24b));let _0x4c554f;if(_0x48e9c9){if(_0x2c6b60['type'][_0x396d89(0x210)]()[_0x396d89(0x1f8)]()!==_0x396d89(0x1f3))throw menuError(_0x396d89(0x238),_0x396d89(0x1fe)+_0x2c6b60['id']+_0x396d89(0x23b)+(_0x2c6b60['type']||_0x396d89(0x240))+_0x396d89(0x22b));_0x4c554f=collectDeleteTargets(_0x21bee6,_0x2c6b60),_0x4c554f[_0x396d89(0x21d)](_0x1ffbc9=>assertDeleteSafety(_0x1ffbc9,!![]));}else assertDeleteSafety(_0x2c6b60),_0x4c554f=[_0x2c6b60];assertNoSharedPages(_0x21bee6,_0x4c554f);const _0x383cb9=_0x4c554f[_0x396d89(0x229)](_0x53871b=>_0x53871b['id']),_0x1f1ed2=cascadeForTargets(_0x4c554f),_0x5e25d5=_0x1f1ed2['pages'][_0x396d89(0x1da)]>0x0?[_0x396d89(0x241)]:[];return mutationResult({'operation':'delete','selector':{'id':_0xbd0e13,'recursive':_0x48e9c9},'before':_0x2c6b60,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x396d89(0x20e),'method':_0x396d89(0x245),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x383cb9}}],'targets':_0x4c554f,'deleteOrder':_0x383cb9,'snapshotHash':_0x21bee6['hash'],'cascade':_0x1f1ed2,'warnings':_0x5e25d5});}function a108_0x282c(_0x23c2c2,_0x581e9b){_0x23c2c2=_0x23c2c2-0x1da;const _0x2727e2=a108_0x2727();let _0x282c46=_0x2727e2[_0x23c2c2];return _0x282c46;}function a108_0x2727(){const _0x597f0a=['toLowerCase','\x20menu(s)\x20under\x20exact\x20id\x20','plan\x20delete','pageId','bool','message','Menu\x20','absentIds','/smartapi/menu/batchDelete','\x20still\x20references\x20','str','expiresAt','Would\x20batch\x20delete\x20','causeCode','add','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','causeMessage','cascade','appCode','snapshotHash','rabetbase\x20menu\x20list\x20--format\x20json','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','batch-delete-menu','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','trim','resources','\x20deleted\x20menus;\x20expected\x20','menu_non_empty','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','page\x20','3532490TaThlG','\x20resource\x20URL(s).','menu\x20list','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','\x20->\x20menu\x20','pre-write-plan-validation','1143qgkEGT','forEach','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','Backend\x20reported\x20','plan','menu_tree_invalid','293GzrAhe','flagMissing','delete','Recursive\x20menu\x20delete\x20plan\x20root\x20','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','):\x20','7006388vPWjwO','map','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','92896BAfgjo','batch\x20delete','dry-run','menu_page_shared','push','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','\x20references\x20missing\x20child\x20','menu_batch_delete_count_mismatch','batch-delete','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','resourcesValid','menu_recursive_requires_folder','hash','filter','\x20is\x20type\x20\x22','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','boolean','3KNVRxt','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','unknown','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','string','failed','high-risk-write','POST','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','7rMCLTb','childrenIds','7572310ypBzKL','unconfirmed','recursive','plan-out','validation','path','menu_verification_failed','menu_folder_resources_invalid','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','snapshot','deleteOrder','type','Post-failure\x20menu\x20readback\x20failed\x20(','length','cookie','childrenCount','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out',';\x20execution\x20must\x20consume\x20','Folder\x20','plan-validation','3798852GpHYLs','2861760VrspDN','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','verification','byId','Post-mismatch\x20menu\x20readback\x20failed\x20(','target','remainingIds','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','7958djrsrV','join','createdAt','menu_plan_invalid','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','get','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','folder','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','stringify','Batch\x20delete\x20request\x20for\x20menu\x20','has'];a108_0x2727=function(){return _0x597f0a;};return a108_0x2727();}function assertDeleteSafety(_0x2fb44e,_0x2d8d00=![]){const _0x554f72=a108_0x16679c,_0x19eed7=_0x2fb44e[_0x554f72(0x254)]['trim']()[_0x554f72(0x1f8)]()===_0x554f72(0x1f3);if(_0x2fb44e[_0x554f72(0x1dc)]>0x0&&(!_0x2d8d00||!_0x19eed7))throw menuError(_0x554f72(0x213),_0x554f72(0x1fe)+_0x2fb44e['id']+'\x20has\x20'+_0x2fb44e[_0x554f72(0x1dc)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0x554f72(0x21e)+_0x2fb44e[_0x554f72(0x248)][_0x554f72(0x1ed)](',\x20'));if(_0x19eed7&&_0x2fb44e[_0x554f72(0x1fb)]!=null)throw menuError('menu_delete_page_bound',_0x554f72(0x1e0)+_0x2fb44e['id']+_0x554f72(0x235)+_0x2fb44e['pageId']+'\x20and\x20cannot\x20be\x20deleted\x20safely.','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x19eed7)return;if(!_0x2fb44e[_0x554f72(0x237)])throw menuError(_0x554f72(0x250),_0x554f72(0x1e0)+_0x2fb44e['id']+_0x554f72(0x251),'Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(_0x2fb44e[_0x554f72(0x211)]['length']>0x0)throw menuError('menu_folder_has_resources',_0x554f72(0x1e0)+_0x2fb44e['id']+_0x554f72(0x201)+_0x2fb44e['resources']['length']+_0x554f72(0x217),_0x554f72(0x246));}function collectDeleteTargets(_0x22a02b,_0x349514){const _0x2b96e8=[],_0x4b68a9=new Set(),_0x570876=new Set(),_0xbd2b72=_0x536962=>{const _0x348898=a108_0x282c;if(_0x4b68a9[_0x348898(0x1f7)](_0x536962['id']))throw menuError(_0x348898(0x221),_0x348898(0x1f4)+_0x536962['id']+'.');if(_0x570876[_0x348898(0x1f7)](_0x536962['id']))return;_0x4b68a9['add'](_0x536962['id']);for(const _0x491835 of _0x536962[_0x348898(0x248)]){const _0x443b58=_0x22a02b[_0x348898(0x1e7)][_0x348898(0x1f1)](_0x491835);if(!_0x443b58)throw menuError(_0x348898(0x221),'Menu\x20'+_0x536962['id']+_0x348898(0x232)+_0x491835+'.');_0xbd2b72(_0x443b58);}_0x4b68a9[_0x348898(0x224)](_0x536962['id']),_0x570876[_0x348898(0x206)](_0x536962['id']),_0x2b96e8[_0x348898(0x230)](_0x536962);};return _0xbd2b72(_0x349514),_0x2b96e8;}function assertDeleteTargetsComplete(_0xf5361,_0x49317a){const _0x4e0f43=a108_0x16679c,_0x1a5359=requireMenu(_0x49317a,_0xf5361[_0x4e0f43(0x1e9)]['id']);if(_0xf5361[_0x4e0f43(0x24b)]&&_0x1a5359[_0x4e0f43(0x254)][_0x4e0f43(0x210)]()[_0x4e0f43(0x1f8)]()!==_0x4e0f43(0x1f3))throw menuError(_0x4e0f43(0x1ef),_0x4e0f43(0x225)+_0x1a5359['id']+'\x20is\x20not\x20a\x20folder.');const _0x14d0cd=_0xf5361[_0x4e0f43(0x24b)]?collectDeleteTargets(_0x49317a,_0x1a5359)[_0x4e0f43(0x229)](_0x5d19b1=>_0x5d19b1['id']):[_0x1a5359['id']];if(JSON['stringify'](_0xf5361['deleteOrder'])!==JSON[_0x4e0f43(0x1f5)](_0x14d0cd))throw menuError('menu_plan_invalid',_0x4e0f43(0x219),_0x4e0f43(0x1f0));}function assertNoSharedPages(_0x26292a,_0x8c2986){const _0xd2c2c2=a108_0x16679c,_0x1cf0fe=new Set(_0x8c2986[_0xd2c2c2(0x229)](_0x1b1fa0=>_0x1b1fa0['id'])),_0x2b7624=new Set(_0x8c2986[_0xd2c2c2(0x229)](_0x4c14fd=>_0x4c14fd[_0xd2c2c2(0x1fb)])[_0xd2c2c2(0x23a)](_0x18fd3a=>_0x18fd3a!=null));if(_0x2b7624['size']===0x0)return;const _0x545120=_0x26292a['menus'][_0xd2c2c2(0x23a)](_0x36eaf8=>!_0x1cf0fe[_0xd2c2c2(0x1f7)](_0x36eaf8['id'])&&_0x36eaf8[_0xd2c2c2(0x1fb)]!=null&&_0x2b7624[_0xd2c2c2(0x1f7)](_0x36eaf8[_0xd2c2c2(0x1fb)]));if(_0x545120[_0xd2c2c2(0x1da)]===0x0)return;const _0x55aa23=_0x545120[_0xd2c2c2(0x229)](_0x225a7f=>_0xd2c2c2(0x215)+_0x225a7f['pageId']+_0xd2c2c2(0x21a)+_0x225a7f['id'])[_0xd2c2c2(0x1ed)](',\x20');throw menuError(_0xd2c2c2(0x22f),'Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x55aa23+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x3877e0,_0x353992){const _0x579872=a108_0x16679c,_0x53b463=cascadeForTargets(_0x353992);if(JSON['stringify'](_0x3877e0[_0x579872(0x209)])!==JSON[_0x579872(0x1f5)](_0x53b463))throw menuError(_0x579872(0x1ef),'Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.');}function cascadeForTargets(_0x31a49c){const _0x204491=a108_0x16679c,_0xac9d0a=_0x31a49c[_0x204491(0x229)](_0x3cf0e1=>_0x3cf0e1[_0x204491(0x1fb)])[_0x204491(0x23a)](_0x2eac3c=>_0x2eac3c!=null)[_0x204491(0x23a)]((_0x3c19b2,_0x518446,_0x390be4)=>_0x390be4['indexOf'](_0x3c19b2)===_0x518446);return{'pages':_0xac9d0a,'pageSchemaAffected':_0xac9d0a[_0x204491(0x1da)]>0x0};}function asMenuError(_0x1550b6){const _0x5ad449=a108_0x16679c;return _0x1550b6 instanceof CliError?_0x1550b6:menuError(_0x5ad449(0x1ef),_0x1550b6 instanceof Error?_0x1550b6[_0x5ad449(0x1fd)]:String(_0x1550b6));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a110_0x33f959=a110_0xa1a7;(function(_0x5e0579,_0x1362c9){const _0x2b6185=a110_0xa1a7,_0x28fdb3=_0x5e0579();while(!![]){try{const _0x1d2fe=parseInt(_0x2b6185(0x186))/0x1*(parseInt(_0x2b6185(0x175))/0x2)+-parseInt(_0x2b6185(0x147))/0x3*(-parseInt(_0x2b6185(0x15b))/0x4)+parseInt(_0x2b6185(0x17b))/0x5*(-parseInt(_0x2b6185(0x16e))/0x6)+parseInt(_0x2b6185(0x148))/0x7*(parseInt(_0x2b6185(0x18a))/0x8)+parseInt(_0x2b6185(0x17d))/0x9+-parseInt(_0x2b6185(0x125))/0xa+-parseInt(_0x2b6185(0x185))/0xb;if(_0x1d2fe===_0x1362c9)break;else _0x28fdb3['push'](_0x28fdb3['shift']());}catch(_0x3bb080){_0x28fdb3['push'](_0x28fdb3['shift']());}}}(a110_0x3753,0xa6c23));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a110_0x33f959(0x116),'new-window':a110_0x33f959(0x13b)};export function validateExternalMenuUrl(_0x2f6689){const _0x3ef9ce=a110_0x33f959,_0x1fa6dd=_0x2f6689[_0x3ef9ce(0x17f)]();let _0x1f2562;try{_0x1f2562=new URL(_0x1fa6dd);}catch{throw menuError(_0x3ef9ce(0x182),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x3ef9ce(0x18b));}if(_0x1f2562[_0x3ef9ce(0x168)]!==_0x3ef9ce(0x176))throw menuError('menu_url_https_required',_0x3ef9ce(0x11f),'Provide\x20an\x20HTTPS\x20URL.');if(_0x1f2562['username']||_0x1f2562[_0x3ef9ce(0x13d)])throw menuError(_0x3ef9ce(0x143),_0x3ef9ce(0x132),_0x3ef9ce(0x18d));return _0x1fa6dd;}export const menuExternalLinkCreate={'service':'menu','command':a110_0x33f959(0x14a),'description':a110_0x33f959(0x16c),'risk':a110_0x33f959(0x190),'structuredErrors':!![],'flags':[{'name':a110_0x33f959(0x159),'type':a110_0x33f959(0x12b),'required':!![],'description':a110_0x33f959(0x137)},{'name':a110_0x33f959(0x18c),'type':a110_0x33f959(0x12b),'required':!![],'enum':[a110_0x33f959(0x150),a110_0x33f959(0x195)],'description':a110_0x33f959(0x118)},{'name':a110_0x33f959(0x171),'type':a110_0x33f959(0x12b),'required':!![],'description':a110_0x33f959(0x142)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a110_0x33f959(0x165),'type':'boolean','default':!![],'description':a110_0x33f959(0x18f)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5cdd83){validateAddInput(_0x5cdd83);},async 'dryRun'(_0x5d4326){const _0x179262=a110_0x33f959;validateAddInput(_0x5d4326);const {plan:_0x55beab}=await buildSafeAddPlan(_0x5d4326,!![]),_0x3484d4=_0x55beab[_0x179262(0x117)],_0x52ad08=createBody(_0x3484d4);return menuDryRunResult(_0x55beab,{'method':_0x179262(0x13a),'url':_0x179262(0x196),'body':_0x52ad08,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON['stringify'](_0x3484d4['label'])+'\x20with\x20'+_0x5d4326[_0x179262(0x160)](_0x179262(0x18c))+_0x179262(0x177)});},async 'execute'(_0x21a55e){const _0x243478=a110_0x33f959;validateAddInput(_0x21a55e);const _0x25cc4f=await buildSafeAddPlan(_0x21a55e,![]),{plan:_0x199edc,snapshot:_0x13a579}=_0x25cc4f,_0x22a3fa=_0x199edc[_0x243478(0x117)],_0x2a7b11=buildMenuLookupCommand(_0x21a55e['appCode']);await recheckAddSnapshot(_0x21a55e,_0x199edc);let _0x1f4daf;try{_0x1f4daf=await createMenuEntity(_0x21a55e[_0x243478(0x146)],_0x21a55e['cookie'],createBody(_0x22a3fa));}catch(_0x98d2ed){const _0x30ebd3=mapMenuApiError(_0x98d2ed,_0x243478(0x17a));if(!isMenuResponseLoss(_0x98d2ed)||_0x30ebd3[_0x243478(0x199)]===_0x243478(0x179))throw externalLinkCreateFailure(_0x30ebd3,_0x199edc,{'stage':_0x243478(0x11c),'failed':{},'verification':{'status':_0x243478(0x16b),'lookupCommand':_0x2a7b11}});return recoverAfterResponseLoss(_0x21a55e,_0x25cc4f,_0x2a7b11);}const _0x3d145e=Number(_0x1f4daf?.['id']),_0x445e01=typeof _0x1f4daf?.[_0x243478(0x158)]===_0x243478(0x12b)?_0x1f4daf[_0x243478(0x158)]:'';if(!Number['isSafeInteger'](_0x3d145e)||_0x3d145e<=0x0||!_0x445e01[_0x243478(0x17f)]()){const _0x426378=menuError(_0x243478(0x112),_0x243478(0x184),_0x243478(0x121)+_0x2a7b11+_0x243478(0x161));throw externalLinkCreateFailure(_0x426378,_0x199edc,{'stage':'create-response-validation','succeeded':Number[_0x243478(0x166)](_0x3d145e)&&_0x3d145e>0x0?[{'id':_0x3d145e,'created':!![]}]:[],'failed':{'createdId':Number[_0x243478(0x166)](_0x3d145e)?_0x3d145e:null,'generatedPathConfirmed':Boolean(_0x445e01[_0x243478(0x17f)]())},'warnings':[_0x243478(0x19b)],'after':Number['isSafeInteger'](_0x3d145e)&&_0x3d145e>0x0?{..._0x22a3fa,'id':_0x3d145e,'path':_0x445e01}:_0x22a3fa,'verification':{'status':_0x243478(0x16b),'lookupCommand':_0x2a7b11,...Number['isSafeInteger'](_0x3d145e)&&_0x3d145e>0x0?{'targetId':_0x3d145e}:{}}});}const _0x2c0a7e=await readAndVerifyCreatedMenu({'appCode':_0x21a55e[_0x243478(0x146)],'cookie':_0x21a55e[_0x243478(0x16f)],'plan':_0x199edc,'afterPlan':_0x22a3fa,'createdId':_0x3d145e,'expectedPath':_0x445e01,'lookupCommand':_0x2a7b11,'recovered':![]});return creationSuccess(_0x199edc,_0x2c0a7e[_0x243478(0x113)],_0x2c0a7e[_0x243478(0x194)],![]);}};function validateAddInput(_0x993d5c){const _0x30e418=a110_0x33f959;if(!_0x993d5c['str'](_0x30e418(0x159))[_0x30e418(0x17f)]())throw CliErrors[_0x30e418(0x131)](_0x30e418(0x159));resolveExternalMenuType(_0x993d5c),validateExternalMenuUrl(_0x993d5c['str']('url')),parseParentId(_0x993d5c,_0x30e418(0x110)),validateSort(_0x993d5c);}function resolveExternalMenuType(_0x26984b){const _0x5440e9=a110_0x33f959,_0x7e941d=_0x26984b[_0x5440e9(0x160)]('open-mode')[_0x5440e9(0x17f)]();if(!_0x7e941d)throw CliErrors[_0x5440e9(0x131)](_0x5440e9(0x18c));const _0x30d757=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x7e941d];if(!_0x30d757)throw menuError('menu_open_mode_invalid',_0x5440e9(0x13e),_0x5440e9(0x170));return _0x30d757;}async function buildAddPlan(_0x382015,_0x28b1c7){const _0x3d6d29=a110_0x33f959,_0x4228e4=await fetchMutationSnapshot(_0x382015,_0x3d6d29(0x17a)),_0x4898f9=parseParentId(_0x382015,'parent-id')??null;if(_0x4898f9!=null)requireFolder(_0x4228e4,_0x4898f9);const _0x16b602=validateSort(_0x382015),_0x41d474=_0x16b602??nextSiblingSort(_0x4228e4,_0x4898f9,_0x3d6d29(0x174)),_0x6d5a8f=_0x382015[_0x3d6d29(0x160)]('label')['trim'](),_0x4dd6b8=resolveExternalMenuType(_0x382015),_0x3b10aa=validateExternalMenuUrl(_0x382015[_0x3d6d29(0x160)]('url')),_0x3f2d11=Object[_0x3d6d29(0x172)]['hasOwnProperty'][_0x3d6d29(0x134)](_0x382015[_0x3d6d29(0x16d)],_0x3d6d29(0x165))?_0x382015[_0x3d6d29(0x141)](_0x3d6d29(0x165)):!![],_0x303239={'id':null,'parentId':_0x4898f9,'label':_0x6d5a8f,'path':_0x3d6d29(0x188),'url':_0x3b10aa,'type':_0x4dd6b8,'visible':_0x3f2d11,'sort':_0x41d474},_0x45506e=buildMenuLookupCommand(_0x382015['appCode']),_0x2d0c07=mutationResult({'operation':'add','selector':{'parentId':_0x4898f9,'type':_0x4dd6b8,'label':_0x6d5a8f,'url':_0x3b10aa},'before':null,'after':_0x303239,'dryRun':_0x28b1c7,'backend':[{'method':'POST','path':_0x3d6d29(0x196)}],'plannedActions':[{'stage':_0x3d6d29(0x111),'method':_0x3d6d29(0x13a),'path':_0x3d6d29(0x196),'body':createBody(_0x303239)}],'snapshotHash':_0x4228e4[_0x3d6d29(0x119)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x45506e}});return{'plan':_0x2d0c07,'snapshot':_0x4228e4};}async function buildSafeAddPlan(_0x1174c4,_0x247951){try{return await buildAddPlan(_0x1174c4,_0x247951);}catch(_0x3a98d){throw safeMenuAddError(_0x3a98d);}}async function recheckAddSnapshot(_0x26dcc5,_0x1467b2){const _0x297c01=a110_0x33f959;try{await recheckMutationSnapshot(_0x26dcc5,_0x1467b2,_0x297c01(0x17a));}catch(_0x9de12a){const _0x52aff5=getFailureRecord(_0x9de12a);throw externalLinkCreateFailure(_0x9de12a,_0x1467b2,{'stage':_0x297c01(0x129),'failed':{..._0x52aff5?.[_0x297c01(0x15d)]?{'expectedSnapshotHash':_0x52aff5[_0x297c01(0x15d)]}:{},..._0x52aff5?.['currentSnapshotHash']?{'currentSnapshotHash':_0x52aff5[_0x297c01(0x153)]}:{}}});}}function createBody(_0x674be1){const _0x471ba8=a110_0x33f959;return{'parentId':toApiParentId(_0x674be1[_0x471ba8(0x14f)]),'label':String(_0x674be1[_0x471ba8(0x159)]),'type':String(_0x674be1['type']),'url':String(_0x674be1[_0x471ba8(0x171)]),'visible':Boolean(_0x674be1[_0x471ba8(0x165)]),'sort':Number(_0x674be1[_0x471ba8(0x15a)]),'extend':{}};}function buildMenuLookupCommand(_0x4b70af){const _0x26efb9=a110_0x33f959,_0x1effd1='\x27'+_0x4b70af[_0x26efb9(0x189)](/'/g,_0x26efb9(0x133))+'\x27';return _0x26efb9(0x180)+_0x1effd1+_0x26efb9(0x135);}async function recoverAfterResponseLoss(_0x43aba0,_0x32d7fd,_0x11498d){const _0x34cb1f=a110_0x33f959,{plan:_0x1a9e8d,snapshot:_0x131e7e}=_0x32d7fd,_0x2ce19c=_0x1a9e8d['after'];let _0x148090;try{_0x148090=await fetchMenuSnapshot(_0x43aba0[_0x34cb1f(0x146)],_0x43aba0[_0x34cb1f(0x16f)]);}catch(_0x57a95a){throw recoveryRequiredFailure(_0x1a9e8d,_0x11498d,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x28feb2=_0x148090[_0x34cb1f(0x167)][_0x34cb1f(0x11e)](_0x3a858=>_0x3a858[_0x34cb1f(0x14f)]===_0x2ce19c[_0x34cb1f(0x14f)]&&_0x3a858['type']===_0x2ce19c[_0x34cb1f(0x114)]&&_0x3a858[_0x34cb1f(0x159)]===_0x2ce19c[_0x34cb1f(0x159)]&&_0x3a858['url']===_0x2ce19c[_0x34cb1f(0x171)]),_0x3527eb=_0x28feb2[_0x34cb1f(0x11e)](_0x2f2710=>!_0x131e7e[_0x34cb1f(0x191)][_0x34cb1f(0x163)](_0x2f2710['id'])),_0x3065b6=_0x28feb2['filter'](_0x57fde8=>_0x131e7e[_0x34cb1f(0x191)]['has'](_0x57fde8['id']));if(_0x28feb2[_0x34cb1f(0x11a)]!==0x1||_0x3527eb[_0x34cb1f(0x11a)]!==0x1)throw recoveryRequiredFailure(_0x1a9e8d,_0x11498d,{'matchCount':_0x28feb2['length'],'newMatchCount':_0x3527eb[_0x34cb1f(0x11a)],'preexistingMatchCount':_0x3065b6['length']});const _0x5d6462=_0x3527eb[0x0];try{verifyCreatedFact(_0x5d6462,_0x5d6462['id'],_0x2ce19c,null);}catch(_0x1a1ca3){const _0x3dcd6c=_0x1a1ca3 instanceof Error&&_0x34cb1f(0x199)in _0x1a1ca3?_0x1a1ca3:menuError(_0x34cb1f(0x192),'Recovered\x20menu\x20'+_0x5d6462['id']+_0x34cb1f(0x136),'Run\x20'+_0x11498d+_0x34cb1f(0x12c));throw externalLinkCreateFailure(_0x3dcd6c,_0x1a9e8d,{'stage':'verification','succeeded':[{'id':_0x5d6462['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x5d6462['id'],'finalFactsConfirmed':![]},'after':_0x5d6462,'warnings':['Menu\x20'+_0x5d6462['id']+_0x34cb1f(0x140)],'verification':{'status':_0x34cb1f(0x16b),'targetId':_0x5d6462['id'],'recovered':!![],'lookupCommand':_0x11498d}});}return creationSuccess(_0x1a9e8d,_0x148090,_0x5d6462,!![]);}function recoveryRequiredFailure(_0x40d947,_0x29c77e,_0xa4f044){const _0x453d3e=a110_0x33f959,_0x263d82=menuError(_0x453d3e(0x120),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.',_0x453d3e(0x121)+_0x29c77e+_0x453d3e(0x145));return externalLinkCreateFailure(_0x263d82,_0x40d947,{'stage':'create-recovery','failed':_0xa4f044,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x453d3e(0x16b),..._0xa4f044,'lookupCommand':_0x29c77e}});}function a110_0xa1a7(_0xa22189,_0x5a101b){_0xa22189=_0xa22189-0x110;const _0x375321=a110_0x3753();let _0xa1a786=_0x375321[_0xa22189];return _0xa1a786;}async function readAndVerifyCreatedMenu(_0x55a4c6){const _0x14d500=a110_0x33f959;let _0x3ba25c;try{_0x3ba25c=await fetchMenuSnapshot(_0x55a4c6['appCode'],_0x55a4c6['cookie']);}catch(_0x263a59){const _0x38212c=menuError('menu_verification_failed',_0x14d500(0x11b)+_0x55a4c6[_0x14d500(0x128)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x14d500(0x121)+_0x55a4c6['lookupCommand']+_0x14d500(0x178));throw externalLinkCreateFailure(_0x38212c,_0x55a4c6['plan'],{'stage':_0x14d500(0x12a),'succeeded':[{'id':_0x55a4c6[_0x14d500(0x128)],'created':!![]}],'failed':{'id':_0x55a4c6[_0x14d500(0x128)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x55a4c6['afterPlan'],'id':_0x55a4c6['createdId'],'path':_0x55a4c6[_0x14d500(0x198)]},'warnings':[_0x14d500(0x11b)+_0x55a4c6['createdId']+_0x14d500(0x152)],'verification':{'status':_0x14d500(0x16b),'targetId':_0x55a4c6[_0x14d500(0x128)],'lookupCommand':_0x55a4c6['lookupCommand']}});}const _0x2779b8=_0x3ba25c[_0x14d500(0x191)][_0x14d500(0x130)](_0x55a4c6['createdId']);try{if(!_0x2779b8)throw menuError(_0x14d500(0x192),_0x14d500(0x18e)+_0x55a4c6['createdId']+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x14d500(0x121)+_0x55a4c6['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x2779b8,_0x55a4c6[_0x14d500(0x128)],_0x55a4c6[_0x14d500(0x157)],_0x55a4c6[_0x14d500(0x198)]);}catch(_0x1dd132){const _0x53fdab=_0x1dd132 instanceof Error&&_0x14d500(0x199)in _0x1dd132?_0x1dd132:menuError(_0x14d500(0x192),_0x14d500(0x18e)+_0x55a4c6[_0x14d500(0x128)]+_0x14d500(0x12d),_0x14d500(0x121)+_0x55a4c6[_0x14d500(0x139)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x53fdab,_0x55a4c6[_0x14d500(0x156)],{'stage':_0x14d500(0x12a),'succeeded':[{'id':_0x55a4c6[_0x14d500(0x128)],'created':!![]}],'failed':{'id':_0x55a4c6['createdId'],'finalFactsConfirmed':![]},'after':_0x2779b8??{..._0x55a4c6[_0x14d500(0x157)],'id':_0x55a4c6[_0x14d500(0x128)],'path':_0x55a4c6[_0x14d500(0x198)]},'warnings':['Menu\x20'+_0x55a4c6[_0x14d500(0x128)]+_0x14d500(0x12f)],'verification':{'status':_0x14d500(0x16b),'targetId':_0x55a4c6[_0x14d500(0x128)],'recovered':_0x55a4c6['recovered'],'lookupCommand':_0x55a4c6[_0x14d500(0x139)]}});}return{'snapshot':_0x3ba25c,'fact':_0x2779b8};}function verifyCreatedFact(_0x5e620d,_0x247f95,_0x5b7497,_0x550099){const _0x14e829=a110_0x33f959;if(!Number['isSafeInteger'](_0x5e620d['id'])||_0x5e620d['id']<=0x0||_0x5e620d['id']!==_0x247f95)throw menuError(_0x14e829(0x192),_0x14e829(0x193),_0x14e829(0x122));const _0x2a0b92=[[_0x14e829(0x151),_0x5e620d[_0x14e829(0x14f)],_0x5b7497['parentId']],['type',_0x5e620d[_0x14e829(0x114)],_0x5b7497[_0x14e829(0x114)]],[_0x14e829(0x159),_0x5e620d[_0x14e829(0x159)],_0x5b7497['label']],['URL',_0x5e620d['url'],_0x5b7497[_0x14e829(0x171)]],[_0x14e829(0x127),_0x5e620d['visible'],_0x5b7497[_0x14e829(0x165)]],[_0x14e829(0x15a),_0x5e620d[_0x14e829(0x15a)],_0x5b7497[_0x14e829(0x15a)]]];for(const [_0x3e534d,_0x45c25e,_0x34e817]of _0x2a0b92){if(_0x45c25e!==_0x34e817)throw menuError('menu_verification_failed',_0x14e829(0x18e)+_0x5e620d['id']+'\x20has\x20an\x20unexpected\x20'+_0x3e534d+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x5e620d[_0x14e829(0x158)][_0x14e829(0x17f)]()||_0x550099!==null&&_0x5e620d[_0x14e829(0x158)]!==_0x550099)throw menuError(_0x14e829(0x192),'Created\x20menu\x20'+_0x5e620d['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function creationSuccess(_0x123c46,_0x4540de,_0xfc6a75,_0x5852ca){const _0x2fbab4=a110_0x33f959,_0x47f275=mutationResult({..._0x123c46,'after':_0xfc6a75,'dryRun':![],'succeeded':[{'id':_0xfc6a75['id'],'created':!![],'recovered':_0x5852ca}],'verification':{'checkedBy':_0x2fbab4(0x17c),'snapshotHash':_0x4540de[_0x2fbab4(0x119)],'targetId':_0xfc6a75['id'],'recovered':_0x5852ca,'path':_0xfc6a75['path']}});return{'ok':!![],'message':_0x5852ca?_0x2fbab4(0x164)+_0xfc6a75['id']+_0x2fbab4(0x115):_0x2fbab4(0x15c)+_0xfc6a75['id']+'.','data':{..._0x47f275,'recovered':_0x5852ca}};}function externalLinkCreateFailure(_0x4ca3cf,_0x4a5bce,_0x485754){const _0x42e023=a110_0x33f959;return menuFailure(safeMenuAddError(_0x4ca3cf),redactFailurePlan(_0x4a5bce),{..._0x485754,'succeeded':_0x485754['succeeded']?.[_0x42e023(0x14b)](redactFailureRecord),'failed':_0x485754[_0x42e023(0x16b)]?redactFailureRecord(_0x485754[_0x42e023(0x16b)]):undefined,'verification':_0x485754[_0x42e023(0x12a)]?redactFailureRecord(_0x485754[_0x42e023(0x12a)]):undefined,'after':_0x485754[_0x42e023(0x117)]===undefined?undefined:redactFailureValue(_0x485754[_0x42e023(0x117)])});}function redactFailurePlan(_0xef2e9){const _0x2a241e=a110_0x33f959;return{..._0xef2e9,'selector':redactFailureRecord(_0xef2e9[_0x2a241e(0x154)]),'before':redactFailureValue(_0xef2e9[_0x2a241e(0x181)]),'after':redactFailureValue(_0xef2e9[_0x2a241e(0x117)]),'plannedActions':_0xef2e9[_0x2a241e(0x149)]?.['map'](_0x514397=>({..._0x514397,'body':redactFailureRecord(_0x514397['body'])})),'succeeded':_0xef2e9[_0x2a241e(0x162)]['map'](redactFailureRecord),'failed':_0xef2e9[_0x2a241e(0x16b)][_0x2a241e(0x14b)](redactFailureRecord),'verification':_0xef2e9[_0x2a241e(0x12a)]?redactFailureRecord(_0xef2e9[_0x2a241e(0x12a)]):undefined};}function redactFailureRecord(_0x205e74){return redactFailureValue(_0x205e74);}function redactFailureValue(_0x106e4e,_0x2b6b2a=''){const _0x4bec0f=a110_0x33f959,_0xa6855c=_0x2b6b2a['toLowerCase']()[_0x4bec0f(0x189)](/[^a-z0-9]/g,'');if([_0x4bec0f(0x138),'causemessage',_0x4bec0f(0x15f),_0x4bec0f(0x187)][_0x4bec0f(0x17e)](_0xa6855c))return _0x4bec0f(0x155);if(Array[_0x4bec0f(0x169)](_0x106e4e))return _0x106e4e['map'](_0x388e5d=>redactFailureValue(_0x388e5d));if(_0x106e4e&&typeof _0x106e4e===_0x4bec0f(0x124))return Object[_0x4bec0f(0x12e)](Object[_0x4bec0f(0x11d)](_0x106e4e)[_0x4bec0f(0x14b)](([_0xb2f73d,_0x491d85])=>[_0xb2f73d,redactFailureValue(_0x491d85,_0xb2f73d)]));return _0x106e4e;}function safeMenuAddError(_0x5f8e97){const _0x57fb69=a110_0x33f959,_0x44334b=_0x5f8e97 instanceof CliError?_0x5f8e97['code']:_0x57fb69(0x13f);switch(_0x44334b){case _0x57fb69(0x19a):return menuError(_0x44334b,_0x57fb69(0x15e),_0x57fb69(0x19c));case _0x57fb69(0x179):return menuError(_0x44334b,_0x57fb69(0x126),_0x57fb69(0x183));case _0x57fb69(0x112):return menuError(_0x44334b,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x57fb69(0x13c));case _0x57fb69(0x192):return menuError(_0x44334b,_0x57fb69(0x14c),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_create_recovery_required':return menuError(_0x44334b,_0x57fb69(0x14d),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x57fb69(0x13f):case _0x57fb69(0x144):case _0x57fb69(0x16a):case _0x57fb69(0x123):case'menu_sort_overflow':return menuError(_0x44334b,'External\x20menu\x20creation\x20failed.',_0x57fb69(0x14e));default:return menuError('menu_mutation_failed',_0x57fb69(0x197),_0x57fb69(0x14e));}}function a110_0x3753(){const _0x2313d1=['code','menu_state_drift','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','parent-id','create-menu','menu_create_response_invalid','snapshot','type','\x20after\x20response\x20loss.','iframe','after','How\x20to\x20open\x20the\x20external\x20website','hash','length','Menu\x20','create','entries','filter','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','menu_create_recovery_required','Run\x20','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','menu_sort_invalid','object','2322360qGMMOh','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','visibility','createdId','pre-write-recheck','verification','string','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','\x20failed\x20final\x20verification.','fromEntries','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','get','flagMissing','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','\x27\x5c\x27\x27','call','\x20--format\x20compress','\x20could\x20not\x20be\x20verified.','Menu\x20label','cause','lookupCommand','POST','link','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','password','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','menu_mutation_failed','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','bool','External\x20HTTPS\x20URL','menu_url_credentials_forbidden','menu_not_found','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','appCode','3uEUhIA','2818333gcFuhS','plannedActions','external-link-create','map','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','parentId','embedded','parent','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','currentSnapshotHash','selector','<redacted>','plan','afterPlan','path','label','sort','1252536QqFldC','Created\x20external\x20menu\x20','expectedSnapshotHash','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','readbackerror','str','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','succeeded','has','Recovered\x20created\x20external\x20menu\x20','visible','isSafeInteger','menus','protocol','isArray','menu_parent_not_folder','failed','Create\x20an\x20external\x20website\x20link\x20menu','rawFlags','6AMsICn','cookie','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','url','prototype','data','menu','1176XdQNHd','https:','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','menu_permission_denied','create\x20external\x20menu','1841685HMbEFi','menu\x20list','4616055SZxbPt','includes','trim','rabetbase\x20menu\x20list\x20--appcode\x20','before','menu_url_invalid','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','2739308poBTTs','517xhtSNk','rawerror','<platform-generated>','replace','8KvrMIV','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','open-mode','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','Created\x20menu\x20','Whether\x20the\x20menu\x20is\x20visible','write','byId','menu_verification_failed','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','fact','new-window','/smartapi/menu/create','External\x20menu\x20creation\x20failed.','expectedPath'];a110_0x3753=function(){return _0x2313d1;};return a110_0x3753();}function getFailureRecord(_0x31440e){const _0x56b0db=a110_0x33f959;if(!(_0x31440e instanceof Error)||!(_0x56b0db(0x173)in _0x31440e))return undefined;const _0x69b7ec=_0x31440e[_0x56b0db(0x173)];if(!_0x69b7ec||typeof _0x69b7ec!==_0x56b0db(0x124))return undefined;const _0x97889e=_0x69b7ec['failed'];if(!Array[_0x56b0db(0x169)](_0x97889e)||!_0x97889e[0x0]||typeof _0x97889e[0x0]!==_0x56b0db(0x124))return undefined;return _0x97889e[0x0];}
|
|
1
|
+
const a109_0x3ae066=a109_0x8c18;(function(_0x5667d5,_0x4f32d8){const _0x532058=a109_0x8c18,_0x50a9d7=_0x5667d5();while(!![]){try{const _0x79c140=parseInt(_0x532058(0x1fb))/0x1+-parseInt(_0x532058(0x1f0))/0x2*(parseInt(_0x532058(0x1e8))/0x3)+parseInt(_0x532058(0x228))/0x4+-parseInt(_0x532058(0x22f))/0x5*(-parseInt(_0x532058(0x205))/0x6)+-parseInt(_0x532058(0x211))/0x7+-parseInt(_0x532058(0x241))/0x8*(-parseInt(_0x532058(0x22d))/0x9)+-parseInt(_0x532058(0x20d))/0xa;if(_0x79c140===_0x4f32d8)break;else _0x50a9d7['push'](_0x50a9d7['shift']());}catch(_0x4b95a5){_0x50a9d7['push'](_0x50a9d7['shift']());}}}(a109_0x5e4f,0x22d3d));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a109_0x3ae066(0x24d),'new-window':a109_0x3ae066(0x234)};export function validateExternalMenuUrl(_0x18f0fc){const _0xabcb3f=a109_0x3ae066,_0xc27202=_0x18f0fc['trim']();let _0x537d4b;try{_0x537d4b=new URL(_0xc27202);}catch{throw menuError(_0xabcb3f(0x247),_0xabcb3f(0x20f),_0xabcb3f(0x23b));}if(_0x537d4b[_0xabcb3f(0x21f)]!==_0xabcb3f(0x1f7))throw menuError(_0xabcb3f(0x244),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0xabcb3f(0x25c));if(_0x537d4b[_0xabcb3f(0x243)]||_0x537d4b[_0xabcb3f(0x264)])throw menuError(_0xabcb3f(0x1f2),'External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0xc27202;}export const menuExternalLinkCreate={'service':a109_0x3ae066(0x255),'command':a109_0x3ae066(0x1f6),'description':a109_0x3ae066(0x206),'risk':a109_0x3ae066(0x222),'structuredErrors':!![],'flags':[{'name':a109_0x3ae066(0x22a),'type':a109_0x3ae066(0x1ed),'required':!![],'description':a109_0x3ae066(0x223)},{'name':'open-mode','type':'string','required':!![],'enum':['embedded',a109_0x3ae066(0x1e6)],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a109_0x3ae066(0x1ef),'type':a109_0x3ae066(0x1ed),'required':!![],'description':a109_0x3ae066(0x214)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a109_0x3ae066(0x258),'type':a109_0x3ae066(0x238),'default':!![],'description':a109_0x3ae066(0x231)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2b99c7){validateAddInput(_0x2b99c7);},async 'dryRun'(_0x454f15){const _0x145ed1=a109_0x3ae066;validateAddInput(_0x454f15);const {plan:_0x59dd1b}=await buildSafeAddPlan(_0x454f15,!![]),_0x2573ec=_0x59dd1b[_0x145ed1(0x21a)],_0xfa80e=createBody(_0x2573ec);return menuDryRunResult(_0x59dd1b,{'method':_0x145ed1(0x265),'url':_0x145ed1(0x256),'body':_0xfa80e,'description':_0x145ed1(0x25a)+JSON['stringify'](_0x2573ec['label'])+'\x20with\x20'+_0x454f15[_0x145ed1(0x20e)](_0x145ed1(0x260))+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x522a06){const _0xe135a5=a109_0x3ae066;validateAddInput(_0x522a06);const _0x88a8d5=await buildSafeAddPlan(_0x522a06,![]),{plan:_0x24aef6,snapshot:_0x51376c}=_0x88a8d5,_0x47bc0e=_0x24aef6[_0xe135a5(0x21a)],_0x256074=buildMenuLookupCommand(_0x522a06[_0xe135a5(0x26a)]);await recheckAddSnapshot(_0x522a06,_0x24aef6);let _0x5ae111;try{_0x5ae111=await createMenuEntity(_0x522a06[_0xe135a5(0x26a)],_0x522a06[_0xe135a5(0x25d)],createBody(_0x47bc0e));}catch(_0x4764f0){const _0x44c21b=mapMenuApiError(_0x4764f0,_0xe135a5(0x219));if(!isMenuResponseLoss(_0x4764f0)||_0x44c21b[_0xe135a5(0x20b)]===_0xe135a5(0x254))throw externalLinkCreateFailure(_0x44c21b,_0x24aef6,{'stage':_0xe135a5(0x239),'failed':{},'verification':{'status':_0xe135a5(0x209),'lookupCommand':_0x256074}});return recoverAfterResponseLoss(_0x522a06,_0x88a8d5,_0x256074);}const _0x2cbeef=Number(_0x5ae111?.['id']),_0x447d50=typeof _0x5ae111?.[_0xe135a5(0x230)]===_0xe135a5(0x1ed)?_0x5ae111[_0xe135a5(0x230)]:'';if(!Number[_0xe135a5(0x1f1)](_0x2cbeef)||_0x2cbeef<=0x0||!_0x447d50[_0xe135a5(0x24a)]()){const _0x3ae90f=menuError('menu_create_response_invalid',_0xe135a5(0x218),_0xe135a5(0x232)+_0x256074+_0xe135a5(0x237));throw externalLinkCreateFailure(_0x3ae90f,_0x24aef6,{'stage':_0xe135a5(0x1f5),'succeeded':Number['isSafeInteger'](_0x2cbeef)&&_0x2cbeef>0x0?[{'id':_0x2cbeef,'created':!![]}]:[],'failed':{'createdId':Number[_0xe135a5(0x1f1)](_0x2cbeef)?_0x2cbeef:null,'generatedPathConfirmed':Boolean(_0x447d50[_0xe135a5(0x24a)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number[_0xe135a5(0x1f1)](_0x2cbeef)&&_0x2cbeef>0x0?{..._0x47bc0e,'id':_0x2cbeef,'path':_0x447d50}:_0x47bc0e,'verification':{'status':_0xe135a5(0x209),'lookupCommand':_0x256074,...Number['isSafeInteger'](_0x2cbeef)&&_0x2cbeef>0x0?{'targetId':_0x2cbeef}:{}}});}const _0x605a81=await readAndVerifyCreatedMenu({'appCode':_0x522a06[_0xe135a5(0x26a)],'cookie':_0x522a06[_0xe135a5(0x25d)],'plan':_0x24aef6,'afterPlan':_0x47bc0e,'createdId':_0x2cbeef,'expectedPath':_0x447d50,'lookupCommand':_0x256074,'recovered':![]});return creationSuccess(_0x24aef6,_0x605a81['snapshot'],_0x605a81['fact'],![]);}};function validateAddInput(_0x3d35ee){const _0x5bce4a=a109_0x3ae066;if(!_0x3d35ee['str'](_0x5bce4a(0x22a))[_0x5bce4a(0x24a)]())throw CliErrors[_0x5bce4a(0x262)]('label');resolveExternalMenuType(_0x3d35ee),validateExternalMenuUrl(_0x3d35ee['str'](_0x5bce4a(0x1ef))),parseParentId(_0x3d35ee,_0x5bce4a(0x213)),validateSort(_0x3d35ee);}function resolveExternalMenuType(_0x1d23af){const _0x1ee0ed=a109_0x3ae066,_0x369706=_0x1d23af[_0x1ee0ed(0x20e)]('open-mode')['trim']();if(!_0x369706)throw CliErrors[_0x1ee0ed(0x262)](_0x1ee0ed(0x260));const _0x343014=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x369706];if(!_0x343014)throw menuError(_0x1ee0ed(0x21d),_0x1ee0ed(0x235),_0x1ee0ed(0x21c));return _0x343014;}function a109_0x8c18(_0x9b225a,_0x39d25f){_0x9b225a=_0x9b225a-0x1e5;const _0x5e4f13=a109_0x5e4f();let _0x8c1885=_0x5e4f13[_0x9b225a];return _0x8c1885;}async function buildAddPlan(_0x3ca8ff,_0x4ebabc){const _0x1e8da6=a109_0x3ae066,_0x508c4f=await fetchMutationSnapshot(_0x3ca8ff,_0x1e8da6(0x219)),_0x122b16=parseParentId(_0x3ca8ff,_0x1e8da6(0x213))??null;if(_0x122b16!=null)requireFolder(_0x508c4f,_0x122b16);const _0x5755f7=validateSort(_0x3ca8ff),_0x30eeff=_0x5755f7??nextSiblingSort(_0x508c4f,_0x122b16,_0x1e8da6(0x255)),_0x232d85=_0x3ca8ff[_0x1e8da6(0x20e)](_0x1e8da6(0x22a))[_0x1e8da6(0x24a)](),_0x297791=resolveExternalMenuType(_0x3ca8ff),_0x191ca4=validateExternalMenuUrl(_0x3ca8ff['str'](_0x1e8da6(0x1ef))),_0x142baa=Object[_0x1e8da6(0x207)][_0x1e8da6(0x22c)][_0x1e8da6(0x1ea)](_0x3ca8ff['rawFlags'],_0x1e8da6(0x258))?_0x3ca8ff[_0x1e8da6(0x24c)](_0x1e8da6(0x258)):!![],_0xc8450={'id':null,'parentId':_0x122b16,'label':_0x232d85,'path':_0x1e8da6(0x224),'url':_0x191ca4,'type':_0x297791,'visible':_0x142baa,'sort':_0x30eeff},_0x56481a=buildMenuLookupCommand(_0x3ca8ff[_0x1e8da6(0x26a)]),_0x5be3f9=mutationResult({'operation':_0x1e8da6(0x242),'selector':{'parentId':_0x122b16,'type':_0x297791,'label':_0x232d85,'url':_0x191ca4},'before':null,'after':_0xc8450,'dryRun':_0x4ebabc,'backend':[{'method':_0x1e8da6(0x265),'path':_0x1e8da6(0x256)}],'plannedActions':[{'stage':_0x1e8da6(0x216),'method':_0x1e8da6(0x265),'path':_0x1e8da6(0x256),'body':createBody(_0xc8450)}],'snapshotHash':_0x508c4f[_0x1e8da6(0x20a)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x56481a}});return{'plan':_0x5be3f9,'snapshot':_0x508c4f};}async function buildSafeAddPlan(_0x623ecc,_0x3f663c){try{return await buildAddPlan(_0x623ecc,_0x3f663c);}catch(_0x14a2f6){throw safeMenuAddError(_0x14a2f6);}}async function recheckAddSnapshot(_0xf7ac02,_0x420278){const _0x1667c3=a109_0x3ae066;try{await recheckMutationSnapshot(_0xf7ac02,_0x420278,'create\x20external\x20menu');}catch(_0x50d2cc){const _0x45899a=getFailureRecord(_0x50d2cc);throw externalLinkCreateFailure(_0x50d2cc,_0x420278,{'stage':_0x1667c3(0x1ff),'failed':{..._0x45899a?.[_0x1667c3(0x266)]?{'expectedSnapshotHash':_0x45899a[_0x1667c3(0x266)]}:{},..._0x45899a?.[_0x1667c3(0x268)]?{'currentSnapshotHash':_0x45899a[_0x1667c3(0x268)]}:{}}});}}function createBody(_0x100f63){const _0x468dc6=a109_0x3ae066;return{'parentId':toApiParentId(_0x100f63[_0x468dc6(0x263)]),'label':String(_0x100f63[_0x468dc6(0x22a)]),'type':String(_0x100f63['type']),'url':String(_0x100f63[_0x468dc6(0x1ef)]),'visible':Boolean(_0x100f63[_0x468dc6(0x258)]),'sort':Number(_0x100f63[_0x468dc6(0x252)]),'extend':{}};}function buildMenuLookupCommand(_0x46b303){const _0x31acd3=a109_0x3ae066,_0x2994f5='\x27'+_0x46b303[_0x31acd3(0x1f9)](/'/g,'\x27\x5c\x27\x27')+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x2994f5+_0x31acd3(0x1fe);}async function recoverAfterResponseLoss(_0x4ad96d,_0x2b7d63,_0x17e403){const _0x5ac770=a109_0x3ae066,{plan:_0x583c50,snapshot:_0x485008}=_0x2b7d63,_0x32193a=_0x583c50[_0x5ac770(0x21a)];let _0x17257a;try{_0x17257a=await fetchMenuSnapshot(_0x4ad96d[_0x5ac770(0x26a)],_0x4ad96d['cookie']);}catch(_0x211d26){throw recoveryRequiredFailure(_0x583c50,_0x17e403,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x41b458=_0x17257a[_0x5ac770(0x253)][_0x5ac770(0x24e)](_0x1f5e80=>_0x1f5e80[_0x5ac770(0x263)]===_0x32193a['parentId']&&_0x1f5e80[_0x5ac770(0x261)]===_0x32193a['type']&&_0x1f5e80[_0x5ac770(0x22a)]===_0x32193a['label']&&_0x1f5e80[_0x5ac770(0x1ef)]===_0x32193a[_0x5ac770(0x1ef)]),_0x4fea0a=_0x41b458[_0x5ac770(0x24e)](_0xfcc3a0=>!_0x485008[_0x5ac770(0x217)]['has'](_0xfcc3a0['id'])),_0x16013c=_0x41b458[_0x5ac770(0x24e)](_0x4bd549=>_0x485008['byId']['has'](_0x4bd549['id']));if(_0x41b458[_0x5ac770(0x23c)]!==0x1||_0x4fea0a[_0x5ac770(0x23c)]!==0x1)throw recoveryRequiredFailure(_0x583c50,_0x17e403,{'matchCount':_0x41b458['length'],'newMatchCount':_0x4fea0a[_0x5ac770(0x23c)],'preexistingMatchCount':_0x16013c['length']});const _0x516270=_0x4fea0a[0x0];try{verifyCreatedFact(_0x516270,_0x516270['id'],_0x32193a,null);}catch(_0x42ef11){const _0x3e39ac=_0x42ef11 instanceof Error&&_0x5ac770(0x20b)in _0x42ef11?_0x42ef11:menuError(_0x5ac770(0x24f),_0x5ac770(0x1ee)+_0x516270['id']+_0x5ac770(0x25f),'Run\x20'+_0x17e403+_0x5ac770(0x1fd));throw externalLinkCreateFailure(_0x3e39ac,_0x583c50,{'stage':_0x5ac770(0x233),'succeeded':[{'id':_0x516270['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x516270['id'],'finalFactsConfirmed':![]},'after':_0x516270,'warnings':['Menu\x20'+_0x516270['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x5ac770(0x209),'targetId':_0x516270['id'],'recovered':!![],'lookupCommand':_0x17e403}});}return creationSuccess(_0x583c50,_0x17257a,_0x516270,!![]);}function recoveryRequiredFailure(_0x3a2163,_0x48662c,_0x21fc3b){const _0x80a418=a109_0x3ae066,_0x4e185a=menuError(_0x80a418(0x1fa),_0x80a418(0x212),_0x80a418(0x232)+_0x48662c+_0x80a418(0x236));return externalLinkCreateFailure(_0x4e185a,_0x3a2163,{'stage':_0x80a418(0x221),'failed':_0x21fc3b,'warnings':[_0x80a418(0x1f3)],'verification':{'status':_0x80a418(0x209),..._0x21fc3b,'lookupCommand':_0x48662c}});}async function readAndVerifyCreatedMenu(_0x3e517f){const _0x14402c=a109_0x3ae066;let _0x878cc8;try{_0x878cc8=await fetchMenuSnapshot(_0x3e517f[_0x14402c(0x26a)],_0x3e517f[_0x14402c(0x25d)]);}catch(_0x3e1a34){const _0x33491f=menuError(_0x14402c(0x24f),_0x14402c(0x245)+_0x3e517f['createdId']+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x14402c(0x232)+_0x3e517f[_0x14402c(0x22b)]+_0x14402c(0x24b));throw externalLinkCreateFailure(_0x33491f,_0x3e517f[_0x14402c(0x23d)],{'stage':'verification','succeeded':[{'id':_0x3e517f['createdId'],'created':!![]}],'failed':{'id':_0x3e517f['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x3e517f[_0x14402c(0x229)],'id':_0x3e517f[_0x14402c(0x227)],'path':_0x3e517f[_0x14402c(0x215)]},'warnings':['Menu\x20'+_0x3e517f[_0x14402c(0x227)]+_0x14402c(0x1e5)],'verification':{'status':_0x14402c(0x209),'targetId':_0x3e517f[_0x14402c(0x227)],'lookupCommand':_0x3e517f[_0x14402c(0x22b)]}});}const _0x5ad4f2=_0x878cc8[_0x14402c(0x217)][_0x14402c(0x210)](_0x3e517f[_0x14402c(0x227)]);try{if(!_0x5ad4f2)throw menuError('menu_verification_failed',_0x14402c(0x26d)+_0x3e517f[_0x14402c(0x227)]+_0x14402c(0x246),_0x14402c(0x232)+_0x3e517f[_0x14402c(0x22b)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x5ad4f2,_0x3e517f['createdId'],_0x3e517f['afterPlan'],_0x3e517f[_0x14402c(0x215)]);}catch(_0x431324){const _0x2ec2a2=_0x431324 instanceof Error&&_0x14402c(0x20b)in _0x431324?_0x431324:menuError('menu_verification_failed',_0x14402c(0x26d)+_0x3e517f[_0x14402c(0x227)]+'\x20failed\x20final\x20verification.','Run\x20'+_0x3e517f[_0x14402c(0x22b)]+_0x14402c(0x24b));throw externalLinkCreateFailure(_0x2ec2a2,_0x3e517f[_0x14402c(0x23d)],{'stage':_0x14402c(0x233),'succeeded':[{'id':_0x3e517f['createdId'],'created':!![]}],'failed':{'id':_0x3e517f[_0x14402c(0x227)],'finalFactsConfirmed':![]},'after':_0x5ad4f2??{..._0x3e517f['afterPlan'],'id':_0x3e517f[_0x14402c(0x227)],'path':_0x3e517f[_0x14402c(0x215)]},'warnings':['Menu\x20'+_0x3e517f[_0x14402c(0x227)]+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x14402c(0x209),'targetId':_0x3e517f[_0x14402c(0x227)],'recovered':_0x3e517f[_0x14402c(0x1f4)],'lookupCommand':_0x3e517f[_0x14402c(0x22b)]}});}return{'snapshot':_0x878cc8,'fact':_0x5ad4f2};}function verifyCreatedFact(_0x210eb3,_0x3348d9,_0x8893f6,_0x3b3dc7){const _0x3399a1=a109_0x3ae066;if(!Number[_0x3399a1(0x1f1)](_0x210eb3['id'])||_0x210eb3['id']<=0x0||_0x210eb3['id']!==_0x3348d9)throw menuError(_0x3399a1(0x24f),_0x3399a1(0x22e),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x19d18d=[['parent',_0x210eb3[_0x3399a1(0x263)],_0x8893f6[_0x3399a1(0x263)]],[_0x3399a1(0x261),_0x210eb3['type'],_0x8893f6[_0x3399a1(0x261)]],['label',_0x210eb3[_0x3399a1(0x22a)],_0x8893f6[_0x3399a1(0x22a)]],['URL',_0x210eb3[_0x3399a1(0x1ef)],_0x8893f6[_0x3399a1(0x1ef)]],[_0x3399a1(0x202),_0x210eb3[_0x3399a1(0x258)],_0x8893f6['visible']],[_0x3399a1(0x252),_0x210eb3[_0x3399a1(0x252)],_0x8893f6['sort']]];for(const [_0x573143,_0x3661ca,_0x4255d3]of _0x19d18d){if(_0x3661ca!==_0x4255d3)throw menuError(_0x3399a1(0x24f),_0x3399a1(0x26d)+_0x210eb3['id']+'\x20has\x20an\x20unexpected\x20'+_0x573143+'.',_0x3399a1(0x1ec));}if(!_0x210eb3[_0x3399a1(0x230)][_0x3399a1(0x24a)]()||_0x3b3dc7!==null&&_0x210eb3[_0x3399a1(0x230)]!==_0x3b3dc7)throw menuError(_0x3399a1(0x24f),_0x3399a1(0x26d)+_0x210eb3['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x3399a1(0x1ec));}function creationSuccess(_0x5430ac,_0x51a74b,_0xea256,_0x1f4602){const _0x3b8bc5=a109_0x3ae066,_0x53cdf5=mutationResult({..._0x5430ac,'after':_0xea256,'dryRun':![],'succeeded':[{'id':_0xea256['id'],'created':!![],'recovered':_0x1f4602}],'verification':{'checkedBy':_0x3b8bc5(0x257),'snapshotHash':_0x51a74b[_0x3b8bc5(0x20a)],'targetId':_0xea256['id'],'recovered':_0x1f4602,'path':_0xea256[_0x3b8bc5(0x230)]}});return{'ok':!![],'message':_0x1f4602?'Recovered\x20created\x20external\x20menu\x20'+_0xea256['id']+_0x3b8bc5(0x25e):'Created\x20external\x20menu\x20'+_0xea256['id']+'.','data':{..._0x53cdf5,'recovered':_0x1f4602}};}function externalLinkCreateFailure(_0x19a289,_0x3edee0,_0xcfccc){const _0x59baa7=a109_0x3ae066;return menuFailure(safeMenuAddError(_0x19a289),redactFailurePlan(_0x3edee0),{..._0xcfccc,'succeeded':_0xcfccc[_0x59baa7(0x21e)]?.[_0x59baa7(0x1e7)](redactFailureRecord),'failed':_0xcfccc[_0x59baa7(0x209)]?redactFailureRecord(_0xcfccc['failed']):undefined,'verification':_0xcfccc[_0x59baa7(0x233)]?redactFailureRecord(_0xcfccc[_0x59baa7(0x233)]):undefined,'after':_0xcfccc[_0x59baa7(0x21a)]===undefined?undefined:redactFailureValue(_0xcfccc['after'])});}function redactFailurePlan(_0x6f2e8a){const _0x5f448a=a109_0x3ae066;return{..._0x6f2e8a,'selector':redactFailureRecord(_0x6f2e8a['selector']),'before':redactFailureValue(_0x6f2e8a[_0x5f448a(0x23e)]),'after':redactFailureValue(_0x6f2e8a[_0x5f448a(0x21a)]),'plannedActions':_0x6f2e8a['plannedActions']?.[_0x5f448a(0x1e7)](_0x313272=>({..._0x313272,'body':redactFailureRecord(_0x313272[_0x5f448a(0x1f8)])})),'succeeded':_0x6f2e8a[_0x5f448a(0x21e)][_0x5f448a(0x1e7)](redactFailureRecord),'failed':_0x6f2e8a[_0x5f448a(0x209)]['map'](redactFailureRecord),'verification':_0x6f2e8a[_0x5f448a(0x233)]?redactFailureRecord(_0x6f2e8a[_0x5f448a(0x233)]):undefined};}function redactFailureRecord(_0x45467d){return redactFailureValue(_0x45467d);}function redactFailureValue(_0xb3d2aa,_0x50aca6=''){const _0x1c82b7=a109_0x3ae066,_0x46f245=_0x50aca6[_0x1c82b7(0x25b)]()[_0x1c82b7(0x1f9)](/[^a-z0-9]/g,'');if([_0x1c82b7(0x26b),'causemessage',_0x1c82b7(0x208),_0x1c82b7(0x203)][_0x1c82b7(0x1fc)](_0x46f245))return _0x1c82b7(0x204);if(Array[_0x1c82b7(0x21b)](_0xb3d2aa))return _0xb3d2aa['map'](_0x1adaa1=>redactFailureValue(_0x1adaa1));if(_0xb3d2aa&&typeof _0xb3d2aa===_0x1c82b7(0x20c))return Object[_0x1c82b7(0x249)](Object['entries'](_0xb3d2aa)[_0x1c82b7(0x1e7)](([_0x618cda,_0x356563])=>[_0x618cda,redactFailureValue(_0x356563,_0x618cda)]));return _0xb3d2aa;}function safeMenuAddError(_0x5c8776){const _0x36795a=a109_0x3ae066,_0x4db445=_0x5c8776 instanceof CliError?_0x5c8776['code']:_0x36795a(0x250);switch(_0x4db445){case _0x36795a(0x225):return menuError(_0x4db445,_0x36795a(0x240),_0x36795a(0x201));case'menu_permission_denied':return menuError(_0x4db445,_0x36795a(0x267),_0x36795a(0x251));case'menu_create_response_invalid':return menuError(_0x4db445,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_verification_failed':return menuError(_0x4db445,_0x36795a(0x259),_0x36795a(0x23a));case _0x36795a(0x1fa):return menuError(_0x4db445,_0x36795a(0x26c),_0x36795a(0x23f));case'menu_mutation_failed':case _0x36795a(0x1eb):case _0x36795a(0x200):case _0x36795a(0x269):case _0x36795a(0x1e9):return menuError(_0x4db445,_0x36795a(0x226),_0x36795a(0x220));default:return menuError('menu_mutation_failed',_0x36795a(0x226),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function a109_0x5e4f(){const _0x4ea372=['hasOwnProperty','821178muvoOu','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','5OtEsbP','path','Whether\x20the\x20menu\x20is\x20visible','Run\x20','verification','link','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','boolean','create','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','length','plan','before','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','8iPziXh','add','username','menu_url_https_required','Menu\x20','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','menu_url_invalid','data','fromEntries','trim','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','bool','iframe','filter','menu_verification_failed','menu_mutation_failed','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','sort','menus','menu_permission_denied','menu','/smartapi/menu/create','menu\x20list','visible','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','Would\x20create\x20external\x20website\x20link\x20menu\x20','toLowerCase','Provide\x20an\x20HTTPS\x20URL.','cookie','\x20after\x20response\x20loss.','\x20could\x20not\x20be\x20verified.','open-mode','type','flagMissing','parentId','password','POST','expectedSnapshotHash','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','currentSnapshotHash','menu_sort_invalid','appCode','cause','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Created\x20menu\x20','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','new-window','map','41295khzXVb','menu_sort_overflow','call','menu_not_found','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','string','Recovered\x20menu\x20','url','10DGHEzJ','isSafeInteger','menu_url_credentials_forbidden','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','recovered','create-response-validation','external-link-create','https:','body','replace','menu_create_recovery_required','158456FwOvvy','includes','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','\x20--format\x20compress','pre-write-recheck','menu_parent_not_folder','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','visibility','rawerror','<redacted>','1181646nOUYaf','Create\x20an\x20external\x20website\x20link\x20menu','prototype','readbackerror','failed','hash','code','object','2062190eBHNyl','str','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','get','799288jqoLXc','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','parent-id','External\x20HTTPS\x20URL','expectedPath','create-menu','byId','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','create\x20external\x20menu','after','isArray','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','menu_open_mode_invalid','succeeded','protocol','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','create-recovery','write','Menu\x20label','<platform-generated>','menu_state_drift','External\x20menu\x20creation\x20failed.','createdId','340968ycmUFT','afterPlan','label','lookupCommand'];a109_0x5e4f=function(){return _0x4ea372;};return a109_0x5e4f();}function getFailureRecord(_0x4f2a76){const _0x4050ab=a109_0x3ae066;if(!(_0x4f2a76 instanceof Error)||!(_0x4050ab(0x248)in _0x4f2a76))return undefined;const _0x4b69c3=_0x4f2a76[_0x4050ab(0x248)];if(!_0x4b69c3||typeof _0x4b69c3!==_0x4050ab(0x20c))return undefined;const _0x490092=_0x4b69c3['failed'];if(!Array['isArray'](_0x490092)||!_0x490092[0x0]||typeof _0x490092[0x0]!=='object')return undefined;return _0x490092[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a111_0x2a4d8a=a111_0x72ea;(function(_0x4ee6ab,_0x2ab118){const _0x176c52=a111_0x72ea,_0x828985=_0x4ee6ab();while(!![]){try{const _0x572979=-parseInt(_0x176c52(0x118))/0x1*(parseInt(_0x176c52(0x143))/0x2)+parseInt(_0x176c52(0x11d))/0x3*(parseInt(_0x176c52(0x110))/0x4)+-parseInt(_0x176c52(0x116))/0x5*(parseInt(_0x176c52(0xfa))/0x6)+parseInt(_0x176c52(0x105))/0x7*(-parseInt(_0x176c52(0x108))/0x8)+parseInt(_0x176c52(0x11f))/0x9*(-parseInt(_0x176c52(0x145))/0xa)+parseInt(_0x176c52(0x13f))/0xb*(-parseInt(_0x176c52(0x139))/0xc)+parseInt(_0x176c52(0x12a))/0xd*(parseInt(_0x176c52(0x129))/0xe);if(_0x572979===_0x2ab118)break;else _0x828985['push'](_0x828985['shift']());}catch(_0x265bad){_0x828985['push'](_0x828985['shift']());}}}(a111_0x54a3,0x9eef7));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a111_0x54a3(){const _0x45aff8=['Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','Run\x20','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','appCode','228JOhthR','parentId','\x20changed\x20during\x20the\x20URL-only\x20update.','\x20is\x20type\x20\x22','menu_external_link_type_required','path','\x20parent\x20changed:\x20expected\x20','menu','expect-url','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','POST','5337038afjjug','expect-parent-id','str','8cKtxCt','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','update\x20external\x20menu\x20URL','visible','update-recovery','\x20could\x20not\x20be\x20verified\x20safely','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','readbackFailed','368srFnnq','url','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','\x22,\x20not\x20iframe\x20or\x20link.',',\x20current\x20','unknown','161765MqwhDz','requestedUrlObserved','395180cFsRls','childrenCount','label','verification','external-link-update','4941JdAbIK','byId','6042789WfpSdP','verify\x20external\x20menu\x20URL\x20update','flagMissing','body','iframe','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','/smartapi/menu/update','update-external-link-url','Menu\x20','menu_external_link_not_leaf','33500866kMmtuK','26cLxAMS','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','menu_permission_denied','sort','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','\x20direct\x20child\x20menu(s).','\x20--format\x20compress','trim','cookie','Response\x20was\x20lost\x20and\x20menu\x20','plan','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','link','high-risk-write','\x20URL\x20update\x20did\x20not\x20take\x20effect.','24fTsvVy','type','failed','\x27\x5c\x27\x27','menu_update_recovery_required','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','6753527fQFzHL','Update\x20request\x20for\x20menu\x20','code','\x20already\x20matches\x20the\x20requested\x20URL.','2ibZRDU','string','10lSydkH'];a111_0x54a3=function(){return _0x45aff8;};return a111_0x54a3();}import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a111_0x2a4d8a(0x104),'path':a111_0x2a4d8a(0x125)}];export const menuExternalLinkUpdate={'service':a111_0x2a4d8a(0x101),'command':a111_0x2a4d8a(0x11c),'description':a111_0x2a4d8a(0x13e),'risk':a111_0x2a4d8a(0x137),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a111_0x2a4d8a(0x111),'type':a111_0x2a4d8a(0x144),'required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a111_0x2a4d8a(0x102),'type':a111_0x2a4d8a(0x144),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1a18c1){validateInput(_0x1a18c1),requireExplicitYes(_0x1a18c1);},async 'dryRun'(_0x6452d){const _0x1f0895=a111_0x2a4d8a;validateInput(_0x6452d);const _0x4f6be4=await buildPlan(_0x6452d,!![]);return menuDryRunResult(_0x4f6be4[_0x1f0895(0x134)],{'method':_0x1f0895(0x104),'url':_0x1f0895(0x125),'body':_0x4f6be4[_0x1f0895(0x122)],'description':_0x1f0895(0x135)+_0x4f6be4[_0x1f0895(0x122)]['id']+'.'});},async 'execute'(_0x3ee889){const _0x486b66=a111_0x2a4d8a;validateInput(_0x3ee889),requireExplicitYes(_0x3ee889);const _0x89f589=await buildPlan(_0x3ee889,![]),{plan:_0x3f86be,body:_0x2f8dd8,before:_0x544541,noChanges:_0xe711b3}=_0x89f589,_0x1ce4d5=_0x2f8dd8['id'];if(_0xe711b3)return updateSuccess(_0x3f86be,_0x89f589['snapshot'],_0x544541,!![],![]);await recheckMutationSnapshot(_0x3ee889,_0x3f86be,_0x486b66(0x10a),_0x1ce4d5);try{await updateMenuEntity(_0x3ee889['appCode'],_0x3ee889[_0x486b66(0x132)],{'id':_0x2f8dd8['id'],'url':_0x2f8dd8[_0x486b66(0x111)]});}catch(_0x340d76){const _0x3af33b=mapMenuApiError(_0x340d76,'update\x20external\x20menu\x20URL',_0x1ce4d5);if(isMenuResponseLoss(_0x340d76)&&_0x3af33b[_0x486b66(0x141)]!==_0x486b66(0x12c))return recoverAfterResponseLoss(_0x3ee889,_0x89f589);throw menuFailure(_0x3af33b,_0x3f86be,{'stage':'update','failed':{'id':_0x1ce4d5},'warnings':[_0x486b66(0x103)],'verification':{'status':'failed','targetId':_0x1ce4d5,'lookupCommand':buildLookupCommand(_0x3ee889[_0x486b66(0xf9)])}});}let _0x1cf4be,_0x22ca84;try{_0x1cf4be=await fetchMenuSnapshot(_0x3ee889[_0x486b66(0xf9)],_0x3ee889['cookie']),_0x22ca84=requireMenu(_0x1cf4be,_0x1ce4d5),verifyUpdatedFact(_0x544541,_0x22ca84,_0x2f8dd8[_0x486b66(0x111)]);}catch(_0x1c6105){const _0x1da1de=describeMenuErrorCause(_0x1c6105,_0x486b66(0x120),_0x1ce4d5),_0x2d258c=asVerificationError(_0x1c6105,_0x486b66(0x140)+_0x1ce4d5+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x2d258c,_0x3f86be,{'stage':_0x486b66(0x11b),'succeeded':[{'id':_0x1ce4d5,'updateRequested':!![]}],'failed':{'id':_0x1ce4d5,'requestedStateConfirmed':![],..._0x1da1de},'warnings':[_0x486b66(0x112)],'verification':{'status':_0x486b66(0x13b),'targetId':_0x1ce4d5,'lookupCommand':buildLookupCommand(_0x3ee889[_0x486b66(0xf9)])}});}return updateSuccess(_0x3f86be,_0x1cf4be,_0x22ca84,![],![]);}};function validateInput(_0x41e422){const _0x1ab466=a111_0x2a4d8a;validateExactId(_0x41e422),requiredUrl(_0x41e422,_0x1ab466(0x111)),requiredExpectedUrl(_0x41e422),parseParentId(_0x41e422,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x2d6e69,_0x45f88d){const _0x21bcdd=a111_0x2a4d8a;if(!hasFlag(_0x2d6e69,_0x45f88d)||!_0x2d6e69[_0x21bcdd(0x107)](_0x45f88d)['trim']())throw CliErrors['flagMissing'](_0x45f88d);return validateExternalMenuUrl(_0x2d6e69[_0x21bcdd(0x107)](_0x45f88d));}function requiredExpectedUrl(_0x3e89b9){const _0x2ab213=a111_0x2a4d8a;if(!hasFlag(_0x3e89b9,'expect-url')||!_0x3e89b9[_0x2ab213(0x107)]('expect-url')[_0x2ab213(0x131)]())throw CliErrors[_0x2ab213(0x121)](_0x2ab213(0x102));return _0x3e89b9[_0x2ab213(0x107)]('expect-url')[_0x2ab213(0x131)]();}function a111_0x72ea(_0x59f822,_0x2477a4){_0x59f822=_0x59f822-0xf8;const _0x54a393=a111_0x54a3();let _0x72ea63=_0x54a393[_0x59f822];return _0x72ea63;}async function buildPlan(_0x37cc26,_0x2b1481){const _0x130061=a111_0x2a4d8a,_0xff35c=validateExactId(_0x37cc26),_0x45128d=requiredUrl(_0x37cc26,_0x130061(0x111)),_0x524466=requiredExpectedUrl(_0x37cc26),_0x4dbc18=parseParentId(_0x37cc26,_0x130061(0x106),{'required':!![]}),_0x525e3f=await fetchMutationSnapshot(_0x37cc26,_0x130061(0x10a),_0xff35c),_0x2598f0=requireMenu(_0x525e3f,_0xff35c);assertExternalLinkLeaf(_0x2598f0);if(_0x2598f0[_0x130061(0xfb)]!==_0x4dbc18)throw menuError('menu_state_drift','Menu\x20'+_0xff35c+_0x130061(0x100)+formatParent(_0x4dbc18)+_0x130061(0x114)+formatParent(_0x2598f0[_0x130061(0xfb)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x2506e0=_0x2598f0[_0x130061(0x111)]===_0x45128d;if(!_0x2506e0&&_0x2598f0['url']!==_0x524466)throw menuError('menu_state_drift','Menu\x20'+_0xff35c+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x21e643={'id':_0xff35c,'appCode':_0x37cc26[_0x130061(0xf9)],'url':_0x45128d},_0x4dc9f7={..._0x2598f0,'url':_0x45128d};return{'body':_0x21e643,'before':_0x2598f0,'noChanges':_0x2506e0,'snapshot':_0x525e3f,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0xff35c},'before':_0x2598f0,'after':_0x4dc9f7,'dryRun':_0x2b1481,'backend':[...BACKEND],'plannedActions':_0x2506e0?[]:[{'stage':_0x130061(0x126),'method':_0x130061(0x104),'path':_0x130061(0x125),'body':_0x21e643}],'snapshotHash':_0x525e3f['hash'],'warnings':_0x2506e0?[_0x130061(0x124)]:[]})};}function assertExternalLinkLeaf(_0x278db5){const _0x4b5076=a111_0x2a4d8a;if(_0x278db5[_0x4b5076(0x13a)]!==_0x4b5076(0x123)&&_0x278db5[_0x4b5076(0x13a)]!==_0x4b5076(0x136))throw menuError(_0x4b5076(0xfe),_0x4b5076(0x127)+_0x278db5['id']+_0x4b5076(0xfd)+(_0x278db5[_0x4b5076(0x13a)]||_0x4b5076(0x115))+_0x4b5076(0x113),_0x4b5076(0x109));if(_0x278db5[_0x4b5076(0x119)]!==0x0)throw menuError(_0x4b5076(0x128),'Menu\x20'+_0x278db5['id']+'\x20has\x20'+_0x278db5[_0x4b5076(0x119)]+_0x4b5076(0x12f),_0x4b5076(0x10e));if(!_0x278db5[_0x4b5076(0xff)][_0x4b5076(0x131)]())throw menuError('menu_external_link_path_missing',_0x4b5076(0x127)+_0x278db5['id']+'\x20has\x20an\x20empty\x20platform\x20path.',_0x4b5076(0x12b));}function verifyUpdatedFact(_0xa7238c,_0x5db225,_0x3a40fc){const _0x2c1ec0=a111_0x2a4d8a;assertExternalLinkLeaf(_0x5db225);const _0x46bc3c=[['id',_0x5db225['id'],_0xa7238c['id']],[_0x2c1ec0(0x11a),_0x5db225[_0x2c1ec0(0x11a)],_0xa7238c[_0x2c1ec0(0x11a)]],['type',_0x5db225[_0x2c1ec0(0x13a)],_0xa7238c[_0x2c1ec0(0x13a)]],[_0x2c1ec0(0xff),_0x5db225[_0x2c1ec0(0xff)],_0xa7238c[_0x2c1ec0(0xff)]],[_0x2c1ec0(0xfb),_0x5db225[_0x2c1ec0(0xfb)],_0xa7238c[_0x2c1ec0(0xfb)]],[_0x2c1ec0(0x12d),_0x5db225['sort'],_0xa7238c[_0x2c1ec0(0x12d)]],[_0x2c1ec0(0x10b),_0x5db225['visible'],_0xa7238c[_0x2c1ec0(0x10b)]]];for(const [_0x1d63ff,_0x465f9d,_0x227f12]of _0x46bc3c){assertVerified(_0x465f9d===_0x227f12,'Menu\x20'+_0xa7238c['id']+'\x20'+_0x1d63ff+_0x2c1ec0(0xfc));}assertVerified(_0x5db225[_0x2c1ec0(0x111)]===_0x3a40fc,_0x2c1ec0(0x127)+_0xa7238c['id']+_0x2c1ec0(0x138));}function updateSuccess(_0x63fa6,_0x236214,_0x414b0d,_0x36227f,_0x233e1f){const _0x2f030c=a111_0x2a4d8a,_0x58056d=_0x414b0d['id'],_0x568ced=mutationResult({..._0x63fa6,'after':_0x414b0d,'dryRun':![],'succeeded':[{'id':_0x58056d,'updated':!_0x36227f,'skipped':_0x36227f,'recovered':_0x233e1f}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x236214['hash'],'targetId':_0x58056d,'matchesRequestedState':!![],'recovered':_0x233e1f}});return{'ok':!![],'message':_0x233e1f?_0x2f030c(0x146)+_0x58056d+'.':_0x36227f?_0x2f030c(0x127)+_0x58056d+_0x2f030c(0x142):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x58056d+'.','data':{..._0x568ced,'recovered':_0x233e1f}};}async function recoverAfterResponseLoss(_0xe220bd,_0x415b9f){const _0x44e626=a111_0x2a4d8a,{plan:_0x5a2b36,before:_0x5c64da,body:_0x3ec6b9}=_0x415b9f;let _0x12006c;try{_0x12006c=await fetchMenuSnapshot(_0xe220bd[_0x44e626(0xf9)],_0xe220bd[_0x44e626(0x132)]);}catch{throw recoveryRequired(_0x5a2b36,_0xe220bd['appCode'],{'id':_0x3ec6b9['id'],'readbackFailed':!![]});}const _0x1b3afd=_0x12006c[_0x44e626(0x11e)]['get'](_0x3ec6b9['id']);if(!_0x1b3afd||_0x1b3afd[_0x44e626(0x111)]!==_0x3ec6b9['url'])throw recoveryRequired(_0x5a2b36,_0xe220bd[_0x44e626(0xf9)],{'id':_0x3ec6b9['id'],'requestedUrlObserved':![],'after':_0x1b3afd??null});try{verifyUpdatedFact(_0x5c64da,_0x1b3afd,_0x3ec6b9[_0x44e626(0x111)]);}catch(_0x452bb9){const _0x45d033=asVerificationError(_0x452bb9,_0x44e626(0x133)+_0x3ec6b9['id']+_0x44e626(0x10d));throw menuFailure(_0x45d033,_0x5a2b36,{'stage':_0x44e626(0x10c),'succeeded':[{'id':_0x3ec6b9['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x3ec6b9['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x1b3afd,'warnings':[_0x44e626(0x12e)],'verification':{'status':_0x44e626(0x13b),'targetId':_0x3ec6b9['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0xe220bd['appCode'])}});}return updateSuccess(_0x5a2b36,_0x12006c,_0x1b3afd,![],!![]);}function recoveryRequired(_0x2d5562,_0x450f29,_0x281dfe){const _0x4c30c8=a111_0x2a4d8a,_0x4ceddb=menuError(_0x4c30c8(0x13d),_0x4c30c8(0xf8),_0x4c30c8(0x147)+buildLookupCommand(_0x450f29)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x4ceddb,_0x2d5562,{'stage':'update-recovery','failed':{'id':_0x281dfe['id'],..._0x281dfe[_0x4c30c8(0x117)]===undefined?{}:{'requestedUrlObserved':_0x281dfe[_0x4c30c8(0x117)]},..._0x281dfe[_0x4c30c8(0x10f)]?{'readbackFailed':!![]}:{}},'after':_0x281dfe['after'],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x4c30c8(0x13b),'targetId':_0x281dfe['id'],..._0x281dfe[_0x4c30c8(0x117)]===undefined?{}:{'requestedUrlObserved':_0x281dfe[_0x4c30c8(0x117)]},..._0x281dfe['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x450f29)}});}function buildLookupCommand(_0x117146){const _0x306583=a111_0x2a4d8a,_0x18a49a='\x27'+_0x117146['replace'](/'/g,_0x306583(0x13c))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x18a49a+_0x306583(0x130);}
|
|
1
|
+
const a110_0x5af245=a110_0x361c;(function(_0x4e19ff,_0x51ab84){const _0x5c7e3e=a110_0x361c,_0x2fc156=_0x4e19ff();while(!![]){try{const _0x34905a=parseInt(_0x5c7e3e(0x16f))/0x1*(parseInt(_0x5c7e3e(0x138))/0x2)+-parseInt(_0x5c7e3e(0x17a))/0x3+parseInt(_0x5c7e3e(0x142))/0x4+-parseInt(_0x5c7e3e(0x152))/0x5*(-parseInt(_0x5c7e3e(0x17e))/0x6)+-parseInt(_0x5c7e3e(0x174))/0x7+-parseInt(_0x5c7e3e(0x139))/0x8+parseInt(_0x5c7e3e(0x177))/0x9*(-parseInt(_0x5c7e3e(0x14a))/0xa);if(_0x34905a===_0x51ab84)break;else _0x2fc156['push'](_0x2fc156['shift']());}catch(_0x34f3a8){_0x2fc156['push'](_0x2fc156['shift']());}}}(a110_0x561a,0x7ee00));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';function a110_0x361c(_0x4c295d,_0x56121b){_0x4c295d=_0x4c295d-0x138;const _0x561a6e=a110_0x561a();let _0x361c00=_0x561a6e[_0x4c295d];return _0x361c00;}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a110_0x5af245(0x178),'path':a110_0x5af245(0x15f)}];export const menuExternalLinkUpdate={'service':a110_0x5af245(0x175),'command':'external-link-update','description':a110_0x5af245(0x172),'risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':'string','required':!![],'description':a110_0x5af245(0x169)},{'name':a110_0x5af245(0x167),'type':a110_0x5af245(0x165),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x50fd59){validateInput(_0x50fd59),requireExplicitYes(_0x50fd59);},async 'dryRun'(_0x468cc4){const _0x15dc63=a110_0x5af245;validateInput(_0x468cc4);const _0x16fa73=await buildPlan(_0x468cc4,!![]);return menuDryRunResult(_0x16fa73['plan'],{'method':_0x15dc63(0x178),'url':_0x15dc63(0x15f),'body':_0x16fa73[_0x15dc63(0x158)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x16fa73['body']['id']+'.'});},async 'execute'(_0x4371d4){const _0xd691c3=a110_0x5af245;validateInput(_0x4371d4),requireExplicitYes(_0x4371d4);const _0x1eb399=await buildPlan(_0x4371d4,![]),{plan:_0x4ee0b1,body:_0x34642f,before:_0x2066f4,noChanges:_0x41f727}=_0x1eb399,_0xbbee3a=_0x34642f['id'];if(_0x41f727)return updateSuccess(_0x4ee0b1,_0x1eb399['snapshot'],_0x2066f4,!![],![]);await recheckMutationSnapshot(_0x4371d4,_0x4ee0b1,_0xd691c3(0x13d),_0xbbee3a);try{await updateMenuEntity(_0x4371d4['appCode'],_0x4371d4[_0xd691c3(0x153)],{'id':_0x34642f['id'],'url':_0x34642f['url']});}catch(_0x27d11d){const _0xcd843b=mapMenuApiError(_0x27d11d,_0xd691c3(0x13d),_0xbbee3a);if(isMenuResponseLoss(_0x27d11d)&&_0xcd843b['code']!==_0xd691c3(0x161))return recoverAfterResponseLoss(_0x4371d4,_0x1eb399);throw menuFailure(_0xcd843b,_0x4ee0b1,{'stage':_0xd691c3(0x151),'failed':{'id':_0xbbee3a},'warnings':[_0xd691c3(0x13a)],'verification':{'status':'failed','targetId':_0xbbee3a,'lookupCommand':buildLookupCommand(_0x4371d4['appCode'])}});}let _0x5b2d41,_0xb85cd6;try{_0x5b2d41=await fetchMenuSnapshot(_0x4371d4['appCode'],_0x4371d4[_0xd691c3(0x153)]),_0xb85cd6=requireMenu(_0x5b2d41,_0xbbee3a),verifyUpdatedFact(_0x2066f4,_0xb85cd6,_0x34642f[_0xd691c3(0x148)]);}catch(_0x59921b){const _0x30ad34=describeMenuErrorCause(_0x59921b,_0xd691c3(0x13e),_0xbbee3a),_0x47d8c3=asVerificationError(_0x59921b,_0xd691c3(0x15e)+_0xbbee3a+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x47d8c3,_0x4ee0b1,{'stage':_0xd691c3(0x13f),'succeeded':[{'id':_0xbbee3a,'updateRequested':!![]}],'failed':{'id':_0xbbee3a,'requestedStateConfirmed':![],..._0x30ad34},'warnings':[_0xd691c3(0x17b)],'verification':{'status':'failed','targetId':_0xbbee3a,'lookupCommand':buildLookupCommand(_0x4371d4['appCode'])}});}return updateSuccess(_0x4ee0b1,_0x5b2d41,_0xb85cd6,![],![]);}};function validateInput(_0x3430ec){const _0x3b8768=a110_0x5af245;validateExactId(_0x3430ec),requiredUrl(_0x3430ec,_0x3b8768(0x148)),requiredExpectedUrl(_0x3430ec),parseParentId(_0x3430ec,_0x3b8768(0x17f),{'required':!![]});}function requiredUrl(_0x19c0b9,_0x32e4db){const _0x1b1996=a110_0x5af245;if(!hasFlag(_0x19c0b9,_0x32e4db)||!_0x19c0b9[_0x1b1996(0x176)](_0x32e4db)[_0x1b1996(0x141)]())throw CliErrors['flagMissing'](_0x32e4db);return validateExternalMenuUrl(_0x19c0b9[_0x1b1996(0x176)](_0x32e4db));}function requiredExpectedUrl(_0x48841e){const _0x2e61e0=a110_0x5af245;if(!hasFlag(_0x48841e,_0x2e61e0(0x167))||!_0x48841e[_0x2e61e0(0x176)]('expect-url')['trim']())throw CliErrors[_0x2e61e0(0x184)](_0x2e61e0(0x167));return _0x48841e[_0x2e61e0(0x176)](_0x2e61e0(0x167))[_0x2e61e0(0x141)]();}function a110_0x561a(){const _0x5ed9df=['\x20direct\x20child\x20menu(s).','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','4hqGBAI','Response\x20was\x20lost\x20and\x20menu\x20','menu_external_link_type_required','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','replace','1017562vOVKrs','menu','str','9Aeyeiu','POST','Updated\x20external\x20URL\x20for\x20menu\x20','1382469gQASOX','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','update-recovery','after','4472106yodUpi','expect-parent-id','\x27\x5c\x27\x27','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','Menu\x20','label','flagMissing','visible','failed','\x20changed\x20during\x20the\x20URL-only\x20update.','269744yYfWqZ','3081720cTYkQO','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20already\x20matches\x20the\x20requested\x20URL.','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','update\x20external\x20menu\x20URL','verify\x20external\x20menu\x20URL\x20update','verification','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','trim','3032904JhdLmZ',',\x20current\x20','path','\x20has\x20','external-link-update','\x20URL\x20update\x20did\x20not\x20take\x20effect.','url','menu_update_recovery_required','5319810HhgOlt','\x20parent\x20changed:\x20expected\x20','\x20--format\x20compress','\x22,\x20not\x20iframe\x20or\x20link.','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','menu_state_drift','hash','update','5WSeAky','cookie','byId','appCode','readbackFailed','link','body','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','requestedUrlObserved','sort','Run\x20','menu_external_link_not_leaf','Update\x20request\x20for\x20menu\x20','/smartapi/menu/update','type','menu_permission_denied','get','menu_external_link_path_missing','childrenCount','string','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','expect-url','parentId','New\x20external\x20HTTPS\x20URL'];a110_0x561a=function(){return _0x5ed9df;};return a110_0x561a();}async function buildPlan(_0x2cf0b0,_0x185e58){const _0x1440af=a110_0x5af245,_0x4bb48c=validateExactId(_0x2cf0b0),_0x18813a=requiredUrl(_0x2cf0b0,'url'),_0x296cd3=requiredExpectedUrl(_0x2cf0b0),_0x22b1ca=parseParentId(_0x2cf0b0,_0x1440af(0x17f),{'required':!![]}),_0x225263=await fetchMutationSnapshot(_0x2cf0b0,_0x1440af(0x13d),_0x4bb48c),_0x1cd5af=requireMenu(_0x225263,_0x4bb48c);assertExternalLinkLeaf(_0x1cd5af);if(_0x1cd5af[_0x1440af(0x168)]!==_0x22b1ca)throw menuError(_0x1440af(0x14f),_0x1440af(0x182)+_0x4bb48c+_0x1440af(0x14b)+formatParent(_0x22b1ca)+_0x1440af(0x143)+formatParent(_0x1cd5af['parentId'])+'.',_0x1440af(0x140));const _0x3f7849=_0x1cd5af['url']===_0x18813a;if(!_0x3f7849&&_0x1cd5af[_0x1440af(0x148)]!==_0x296cd3)throw menuError(_0x1440af(0x14f),_0x1440af(0x182)+_0x4bb48c+_0x1440af(0x14e),_0x1440af(0x16e));const _0x25d12c={'id':_0x4bb48c,'appCode':_0x2cf0b0[_0x1440af(0x155)],'url':_0x18813a},_0x26192a={..._0x1cd5af,'url':_0x18813a};return{'body':_0x25d12c,'before':_0x1cd5af,'noChanges':_0x3f7849,'snapshot':_0x225263,'plan':mutationResult({'operation':_0x1440af(0x146),'selector':{'id':_0x4bb48c},'before':_0x1cd5af,'after':_0x26192a,'dryRun':_0x185e58,'backend':[...BACKEND],'plannedActions':_0x3f7849?[]:[{'stage':'update-external-link-url','method':_0x1440af(0x178),'path':'/smartapi/menu/update','body':_0x25d12c}],'snapshotHash':_0x225263[_0x1440af(0x150)],'warnings':_0x3f7849?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x11be88){const _0x2701ca=a110_0x5af245;if(_0x11be88[_0x2701ca(0x160)]!=='iframe'&&_0x11be88[_0x2701ca(0x160)]!==_0x2701ca(0x157))throw menuError(_0x2701ca(0x171),'Menu\x20'+_0x11be88['id']+'\x20is\x20type\x20\x22'+(_0x11be88[_0x2701ca(0x160)]||'unknown')+_0x2701ca(0x14d),_0x2701ca(0x166));if(_0x11be88['childrenCount']!==0x0)throw menuError(_0x2701ca(0x15d),_0x2701ca(0x182)+_0x11be88['id']+_0x2701ca(0x145)+_0x11be88[_0x2701ca(0x164)]+_0x2701ca(0x16a),_0x2701ca(0x16c));if(!_0x11be88[_0x2701ca(0x144)][_0x2701ca(0x141)]())throw menuError(_0x2701ca(0x163),'Menu\x20'+_0x11be88['id']+'\x20has\x20an\x20empty\x20platform\x20path.',_0x2701ca(0x13c));}function verifyUpdatedFact(_0x9ea5e9,_0x17cded,_0x28cc99){const _0x290090=a110_0x5af245;assertExternalLinkLeaf(_0x17cded);const _0x5131b3=[['id',_0x17cded['id'],_0x9ea5e9['id']],[_0x290090(0x183),_0x17cded['label'],_0x9ea5e9[_0x290090(0x183)]],[_0x290090(0x160),_0x17cded['type'],_0x9ea5e9[_0x290090(0x160)]],['path',_0x17cded['path'],_0x9ea5e9[_0x290090(0x144)]],['parentId',_0x17cded['parentId'],_0x9ea5e9[_0x290090(0x168)]],['sort',_0x17cded[_0x290090(0x15b)],_0x9ea5e9[_0x290090(0x15b)]],['visible',_0x17cded[_0x290090(0x185)],_0x9ea5e9[_0x290090(0x185)]]];for(const [_0x97c16b,_0x45fb82,_0x41a89a]of _0x5131b3){assertVerified(_0x45fb82===_0x41a89a,_0x290090(0x182)+_0x9ea5e9['id']+'\x20'+_0x97c16b+_0x290090(0x187));}assertVerified(_0x17cded['url']===_0x28cc99,'Menu\x20'+_0x9ea5e9['id']+_0x290090(0x147));}function updateSuccess(_0x15458f,_0x39df23,_0x1bf38b,_0x2246e4,_0x57541e){const _0x5b0be9=a110_0x5af245,_0x1eb5be=_0x1bf38b['id'],_0x118860=mutationResult({..._0x15458f,'after':_0x1bf38b,'dryRun':![],'succeeded':[{'id':_0x1eb5be,'updated':!_0x2246e4,'skipped':_0x2246e4,'recovered':_0x57541e}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x39df23[_0x5b0be9(0x150)],'targetId':_0x1eb5be,'matchesRequestedState':!![],'recovered':_0x57541e}});return{'ok':!![],'message':_0x57541e?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x1eb5be+'.':_0x2246e4?'Menu\x20'+_0x1eb5be+_0x5b0be9(0x13b):_0x5b0be9(0x179)+_0x1eb5be+'.','data':{..._0x118860,'recovered':_0x57541e}};}async function recoverAfterResponseLoss(_0xfbe19e,_0x49e774){const _0x5f26ac=a110_0x5af245,{plan:_0x14a96d,before:_0x5b426e,body:_0x6357a3}=_0x49e774;let _0x116a8f;try{_0x116a8f=await fetchMenuSnapshot(_0xfbe19e['appCode'],_0xfbe19e[_0x5f26ac(0x153)]);}catch{throw recoveryRequired(_0x14a96d,_0xfbe19e[_0x5f26ac(0x155)],{'id':_0x6357a3['id'],'readbackFailed':!![]});}const _0x52fd20=_0x116a8f[_0x5f26ac(0x154)][_0x5f26ac(0x162)](_0x6357a3['id']);if(!_0x52fd20||_0x52fd20[_0x5f26ac(0x148)]!==_0x6357a3[_0x5f26ac(0x148)])throw recoveryRequired(_0x14a96d,_0xfbe19e['appCode'],{'id':_0x6357a3['id'],'requestedUrlObserved':![],'after':_0x52fd20??null});try{verifyUpdatedFact(_0x5b426e,_0x52fd20,_0x6357a3['url']);}catch(_0x34e7af){const _0x414a15=asVerificationError(_0x34e7af,_0x5f26ac(0x170)+_0x6357a3['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x414a15,_0x14a96d,{'stage':_0x5f26ac(0x17c),'succeeded':[{'id':_0x6357a3['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x6357a3['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x52fd20,'warnings':[_0x5f26ac(0x16b)],'verification':{'status':_0x5f26ac(0x186),'targetId':_0x6357a3['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0xfbe19e['appCode'])}});}return updateSuccess(_0x14a96d,_0x116a8f,_0x52fd20,![],!![]);}function recoveryRequired(_0x4e75db,_0x20df06,_0x2167b4){const _0x1fddf6=a110_0x5af245,_0x13d3fc=menuError(_0x1fddf6(0x149),_0x1fddf6(0x181),_0x1fddf6(0x15c)+buildLookupCommand(_0x20df06)+_0x1fddf6(0x16d));return menuFailure(_0x13d3fc,_0x4e75db,{'stage':'update-recovery','failed':{'id':_0x2167b4['id'],..._0x2167b4[_0x1fddf6(0x15a)]===undefined?{}:{'requestedUrlObserved':_0x2167b4[_0x1fddf6(0x15a)]},..._0x2167b4[_0x1fddf6(0x156)]?{'readbackFailed':!![]}:{}},'after':_0x2167b4[_0x1fddf6(0x17d)],'warnings':[_0x1fddf6(0x159)],'verification':{'status':'failed','targetId':_0x2167b4['id'],..._0x2167b4[_0x1fddf6(0x15a)]===undefined?{}:{'requestedUrlObserved':_0x2167b4[_0x1fddf6(0x15a)]},..._0x2167b4[_0x1fddf6(0x156)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x20df06)}});}function buildLookupCommand(_0x4df8eb){const _0x45f6ab=a110_0x5af245,_0x83fa21='\x27'+_0x4df8eb[_0x45f6ab(0x173)](/'/g,_0x45f6ab(0x180))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x83fa21+_0x45f6ab(0x14c);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a112_0x2edcdf=a112_0x5f24;(function(_0x3272a4,_0x4af549){const _0x36ddfc=a112_0x5f24,_0x282dd4=_0x3272a4();while(!![]){try{const _0x1f4939=parseInt(_0x36ddfc(0xe1))/0x1+-parseInt(_0x36ddfc(0xe3))/0x2+-parseInt(_0x36ddfc(0xb4))/0x3+parseInt(_0x36ddfc(0xd1))/0x4*(parseInt(_0x36ddfc(0xb0))/0x5)+-parseInt(_0x36ddfc(0xe7))/0x6*(-parseInt(_0x36ddfc(0xea))/0x7)+-parseInt(_0x36ddfc(0xd5))/0x8*(parseInt(_0x36ddfc(0xe4))/0x9)+-parseInt(_0x36ddfc(0xba))/0xa;if(_0x1f4939===_0x4af549)break;else _0x282dd4['push'](_0x282dd4['shift']());}catch(_0x4f724c){_0x282dd4['push'](_0x282dd4['shift']());}}}(a112_0x50e7,0x50b2a));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';function a112_0x50e7(){const _0x570b75=['sort','\x20has\x20an\x20unexpected\x20sort.','Created\x20folder\x20','path','610iAUXEi','str','create-folder','create','410892BILYgV','\x22\x20with\x20a\x20platform-generated\x20path.','appCode','verification','type','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','762600QZAswn','\x20is\x20not\x20visible.','Folder\x20label','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x20is\x20not\x20empty.','\x20has\x20unexpected\x20parent\x20','create\x20folder','Created\x20menu\x20folder\x20','pageId','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','resources','menu\x20list','menu','high-risk-write','Created\x20menu\x20','create-response-validation','root','childrenCount','after','/smartapi/menu/create','Menu\x20create\x20response\x20for\x20folder\x20','parentId','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','8348QAsOeq','hash','visible','flagMissing','376WZfldL','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','verify\x20folder\x20creation','\x20unexpectedly\x20owns\x20a\x20page.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','folder','Would\x20create\x20empty\x20folder\x20\x22','POST','rabetbase\x20menu\x20list\x20--format\x20json','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','trim','326020ILtFDw','menu_create_response_invalid','463242FcgYzz','78237MFOHmo','Folder\x20','string','1809960XxSMWQ','\x20is\x20not\x20type\x20folder.','parent-id','14hKnMqq','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','get','length','stringify','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','failed','cookie','depth','label','group-create'];a112_0x50e7=function(){return _0x570b75;};return a112_0x50e7();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a112_0x2edcdf(0xdd),'path':a112_0x2edcdf(0xcd)}];function a112_0x5f24(_0x873929,_0x2599c9){_0x873929=_0x873929-0xa5;const _0x50e742=a112_0x50e7();let _0x5f241b=_0x50e742[_0x873929];return _0x5f241b;}export const menuGroupCreate={'service':a112_0x2edcdf(0xc6),'command':a112_0x2edcdf(0xab),'description':'Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','risk':a112_0x2edcdf(0xc7),'structuredErrors':!![],'flags':[{'name':'label','type':a112_0x2edcdf(0xe6),'required':!![],'description':a112_0x2edcdf(0xbc)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4204c5){validateCreateInput(_0x4204c5),requireExplicitYes(_0x4204c5);},async 'dryRun'(_0x3d50b0){const _0x29e7a4=a112_0x2edcdf,_0x5e28c5=await buildCreatePlan(_0x3d50b0,!![]),_0x39bda2=_0x5e28c5[_0x29e7a4(0xcc)];return menuDryRunResult(_0x5e28c5,{'method':_0x29e7a4(0xdd),'url':_0x29e7a4(0xcd),'body':{'parentId':toApiParentId(_0x39bda2[_0x29e7a4(0xcf)]),'label':_0x39bda2[_0x29e7a4(0xaa)],'type':_0x29e7a4(0xdb),'visible':!![],'sort':_0x39bda2['sort'],'extend':{}},'description':_0x29e7a4(0xdc)+String(_0x39bda2[_0x29e7a4(0xaa)])+_0x29e7a4(0xb5)});},async 'execute'(_0x320153){const _0x1ec1f0=a112_0x2edcdf;validateCreateInput(_0x320153),requireExplicitYes(_0x320153);const _0xc92fd3=await buildCreatePlan(_0x320153,![]),_0x1ce52a=_0xc92fd3[_0x1ec1f0(0xcc)];await recheckMutationSnapshot(_0x320153,_0xc92fd3,_0x1ec1f0(0xc0));let _0xf40012;try{_0xf40012=await createMenuEntity(_0x320153[_0x1ec1f0(0xb6)],_0x320153[_0x1ec1f0(0xa8)],{'parentId':toApiParentId(_0x1ce52a['parentId']),'label':String(_0x1ce52a[_0x1ec1f0(0xaa)]),'type':_0x1ec1f0(0xdb),'visible':!![],'sort':Number(_0x1ce52a[_0x1ec1f0(0xac)]),'extend':{}});}catch(_0xac252c){const _0x5bd958=mapMenuApiError(_0xac252c,_0x1ec1f0(0xc0));throw menuFailure(_0x5bd958,_0xc92fd3,{'stage':_0x1ec1f0(0xb3),'failed':{}});}const _0x884dc1=Number(_0xf40012['id']);if(!Number['isSafeInteger'](_0x884dc1)||_0x884dc1<=0x0){const _0x38d274=menuError(_0x1ec1f0(0xe2),_0x1ec1f0(0xa6),_0x1ec1f0(0xdf));throw menuFailure(_0x38d274,_0xc92fd3,{'stage':_0x1ec1f0(0xc9),'failed':{'createdId':_0xf40012['id']??null},'warnings':[_0x1ec1f0(0xbd)],'verification':{'status':_0x1ec1f0(0xa7),'lookupCommand':_0x1ec1f0(0xde)}});}const _0x504bc5=typeof _0xf40012[_0x1ec1f0(0xaf)]===_0x1ec1f0(0xe6)?_0xf40012['path']:'';if(!_0x504bc5[_0x1ec1f0(0xe0)]()){const _0x50c4fa=menuError('menu_create_response_invalid',_0x1ec1f0(0xce)+_0x884dc1+_0x1ec1f0(0xb9),_0x1ec1f0(0xd7));throw menuFailure(_0x50c4fa,_0xc92fd3,{'stage':'create-response-validation','succeeded':[{'id':_0x884dc1,'created':!![]}],'failed':{'id':_0x884dc1,'generatedPathConfirmed':![]},'warnings':[_0x1ec1f0(0xe5)+_0x884dc1+_0x1ec1f0(0xa5)],'after':{..._0x1ce52a,'id':_0x884dc1,'path':_0x504bc5},'verification':{'status':_0x1ec1f0(0xa7),'lookupCommand':_0x1ec1f0(0xde),'targetId':_0x884dc1}});}let _0x2bd6ec;try{_0x2bd6ec=await fetchMenuSnapshot(_0x320153[_0x1ec1f0(0xb6)],_0x320153['cookie']);}catch(_0x1fc9fb){const _0xfe985f=describeMenuErrorCause(_0x1fc9fb,_0x1ec1f0(0xd8),_0x884dc1),_0x2c729d=asVerificationError(_0x1fc9fb,'Folder\x20'+_0x884dc1+'\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts');throw menuFailure(_0x2c729d,_0xc92fd3,{'stage':_0x1ec1f0(0xb7),'succeeded':[{'id':_0x884dc1,'created':!![],'path':_0x504bc5}],'failed':{'id':_0x884dc1,'finalFactsConfirmed':![],..._0xfe985f},'warnings':[_0x1ec1f0(0xe5)+_0x884dc1+'\x20may\x20exist\x20online\x20at\x20path\x20'+JSON[_0x1ec1f0(0xee)](_0x504bc5)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x1ce52a,'id':_0x884dc1,'path':_0x504bc5},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x884dc1}});}const _0x4db289=_0x2bd6ec['byId'][_0x1ec1f0(0xec)](_0x884dc1);let _0x58f01e;try{assertVerified(Boolean(_0x4db289),_0x1ec1f0(0xae)+_0x884dc1+'\x20is\x20missing\x20from\x20menu\x20list.'),_0x58f01e=_0x4db289,assertVerified(_0x58f01e[_0x1ec1f0(0xb8)]===_0x1ec1f0(0xdb),_0x1ec1f0(0xc8)+_0x884dc1+_0x1ec1f0(0xe8)),assertVerified(_0x58f01e[_0x1ec1f0(0xaa)]===_0x1ce52a['label'],'Created\x20folder\x20'+_0x884dc1+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x58f01e[_0x1ec1f0(0xaf)]===_0x504bc5&&Boolean(_0x58f01e['path'][_0x1ec1f0(0xe0)]()),_0x1ec1f0(0xae)+_0x884dc1+_0x1ec1f0(0xda)),assertVerified(_0x58f01e[_0x1ec1f0(0xd3)]===!![],_0x1ec1f0(0xae)+_0x884dc1+_0x1ec1f0(0xbb)),assertVerified(_0x58f01e[_0x1ec1f0(0xc4)][_0x1ec1f0(0xed)]===0x0,_0x1ec1f0(0xae)+_0x884dc1+'\x20has\x20resources.'),assertVerified(_0x58f01e[_0x1ec1f0(0xcb)]===0x0,_0x1ec1f0(0xae)+_0x884dc1+_0x1ec1f0(0xbe)),assertVerified(_0x58f01e['sort']===_0x1ce52a[_0x1ec1f0(0xac)],'Created\x20folder\x20'+_0x884dc1+_0x1ec1f0(0xad)),assertVerified(_0x58f01e[_0x1ec1f0(0xcf)]===_0x1ce52a[_0x1ec1f0(0xcf)],_0x1ec1f0(0xae)+_0x884dc1+_0x1ec1f0(0xbf)+(_0x58f01e[_0x1ec1f0(0xcf)]??_0x1ec1f0(0xca))+'.'),assertVerified(_0x58f01e[_0x1ec1f0(0xc2)]==null,_0x1ec1f0(0xae)+_0x884dc1+_0x1ec1f0(0xd9));const _0x3297a2=_0x58f01e[_0x1ec1f0(0xcf)]==null?undefined:requireFolder(_0x2bd6ec,_0x58f01e[_0x1ec1f0(0xcf)]);assertVerified(_0x58f01e[_0x1ec1f0(0xa9)]===(_0x3297a2?_0x3297a2['depth']+0x1:0x0),_0x1ec1f0(0xae)+_0x884dc1+_0x1ec1f0(0xeb));}catch(_0x45972e){const _0x54f237=describeMenuErrorCause(_0x45972e,_0x1ec1f0(0xd8),_0x884dc1),_0x517eff=asVerificationError(_0x45972e,'Folder\x20'+_0x884dc1+_0x1ec1f0(0xd6));throw menuFailure(_0x517eff,_0xc92fd3,{'stage':'verification','succeeded':[{'id':_0x884dc1,'created':!![],'path':_0x504bc5}],'failed':{'id':_0x884dc1,'finalFactsConfirmed':![],..._0x54f237},'warnings':[_0x1ec1f0(0xe5)+_0x884dc1+_0x1ec1f0(0xd0)],'after':_0x4db289??{..._0x1ce52a,'id':_0x884dc1,'path':_0x504bc5},'verification':{'status':_0x1ec1f0(0xa7),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x884dc1}});}const _0x452699=mutationResult({..._0xc92fd3,'after':_0x58f01e,'dryRun':![],'succeeded':[{'id':_0x884dc1,'type':_0x1ec1f0(0xdb),'path':_0x504bc5}],'verification':{'checkedBy':_0x1ec1f0(0xc5),'snapshotHash':_0x2bd6ec[_0x1ec1f0(0xd2)],'folder':!![],'path':_0x504bc5,'emptyResources':!![]}});return{'ok':!![],'data':_0x452699,'message':_0x1ec1f0(0xc1)+_0x884dc1+'.'};}};function validateCreateInput(_0x30b560){const _0x4c2872=a112_0x2edcdf,_0x383075=_0x30b560[_0x4c2872(0xb1)](_0x4c2872(0xaa))[_0x4c2872(0xe0)]();if(!_0x383075)throw CliErrors[_0x4c2872(0xd4)](_0x4c2872(0xaa));parseParentId(_0x30b560,_0x4c2872(0xe9)),validateSort(_0x30b560);}async function buildCreatePlan(_0x59780f,_0x2c9e72){const _0x4e48f1=a112_0x2edcdf,_0x322435=await fetchMutationSnapshot(_0x59780f,'create\x20folder'),_0x8d671c=parseParentId(_0x59780f,'parent-id')??null;if(_0x8d671c!=null)requireFolder(_0x322435,_0x8d671c);const _0x4dcde7=validateSort(_0x59780f),_0x25c17f=_0x4dcde7??nextSiblingSort(_0x322435,_0x8d671c,'folder'),_0x1d237d=_0x59780f[_0x4e48f1(0xb1)](_0x4e48f1(0xaa))[_0x4e48f1(0xe0)]();return mutationResult({'operation':'group-create','selector':{'label':_0x1d237d,'parentId':_0x8d671c},'before':null,'after':{'id':null,'parentId':_0x8d671c,'label':_0x1d237d,'path':'<platform-generated>','type':_0x4e48f1(0xdb),'visible':!![],'sort':_0x25c17f,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x2c9e72,'backend':[...BACKEND],'plannedActions':[{'stage':_0x4e48f1(0xb2),'method':_0x4e48f1(0xdd),'path':_0x4e48f1(0xcd),'body':{'parentId':toApiParentId(_0x8d671c),'label':_0x1d237d,'type':_0x4e48f1(0xdb),'visible':!![],'sort':_0x25c17f,'extend':{}}}],'snapshotHash':_0x322435['hash'],'warnings':[_0x4e48f1(0xc3)]});}
|
|
1
|
+
function a111_0x29ec(){const _0x341362=['create-folder','path','8flrTaU','Created\x20folder\x20','menu_create_response_invalid','30CHRnCK','verification','653360vGBgWP','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','hash','\x20unexpectedly\x20owns\x20a\x20page.','type','parent-id','\x20has\x20unexpected\x20parent\x20','\x20is\x20missing\x20from\x20menu\x20list.','1340218cbszJk','Folder\x20','\x20has\x20an\x20unexpected\x20sort.','836703YJVIbM','failed','\x22\x20with\x20a\x20platform-generated\x20path.','Created\x20menu\x20','label','cookie','create','\x20may\x20exist\x20online\x20at\x20path\x20','\x20has\x20resources.','appCode','12cYsjXw','str',';\x20verify\x20it\x20before\x20retrying.','71048kJbWxF','3UCNYKW','1793197bcNmXP','get','5119nERDva','<platform-generated>','\x20is\x20not\x20visible.','parentId','menu','after','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','group-create','childrenCount','206DGIqVX','rabetbase\x20menu\x20list\x20--format\x20json','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','stringify','resources','isSafeInteger','Created\x20menu\x20folder\x20','/smartapi/menu/create','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','\x20is\x20not\x20type\x20folder.','visible','depth','create-response-validation','verify\x20folder\x20creation','\x20has\x20an\x20unexpected\x20label.','folder','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','sort','Would\x20create\x20empty\x20folder\x20\x22','high-risk-write','trim','flagMissing','create\x20folder','string','Menu\x20create\x20response\x20for\x20folder\x20','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','12290184oaOdOm'];a111_0x29ec=function(){return _0x341362;};return a111_0x29ec();}const a111_0x2ca678=a111_0xf964;function a111_0xf964(_0x543de7,_0x5ed797){_0x543de7=_0x543de7-0x16b;const _0x29ec0e=a111_0x29ec();let _0xf9648d=_0x29ec0e[_0x543de7];return _0xf9648d;}(function(_0x338e39,_0x3accb0){const _0x2c1f3f=a111_0xf964,_0x476104=_0x338e39();while(!![]){try{const _0x3eae0f=-parseInt(_0x2c1f3f(0x1af))/0x1*(parseInt(_0x2c1f3f(0x16e))/0x2)+parseInt(_0x2c1f3f(0x1ac))/0x3*(parseInt(_0x2c1f3f(0x1ab))/0x4)+-parseInt(_0x2c1f3f(0x193))/0x5*(parseInt(_0x2c1f3f(0x1a8))/0x6)+parseInt(_0x2c1f3f(0x1ad))/0x7*(-parseInt(_0x2c1f3f(0x18e))/0x8)+-parseInt(_0x2c1f3f(0x19e))/0x9+parseInt(_0x2c1f3f(0x191))/0xa*(parseInt(_0x2c1f3f(0x19b))/0xb)+parseInt(_0x2c1f3f(0x18b))/0xc;if(_0x3eae0f===_0x3accb0)break;else _0x476104['push'](_0x476104['shift']());}catch(_0x6542bc){_0x476104['push'](_0x476104['shift']());}}}(a111_0x29ec,0x41d97));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a111_0x2ca678(0x176)}];export const menuGroupCreate={'service':a111_0x2ca678(0x1b3),'command':a111_0x2ca678(0x16c),'description':a111_0x2ca678(0x17f),'risk':a111_0x2ca678(0x183),'structuredErrors':!![],'flags':[{'name':'label','type':a111_0x2ca678(0x187),'required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x9cc8b6){validateCreateInput(_0x9cc8b6),requireExplicitYes(_0x9cc8b6);},async 'dryRun'(_0x2f4667){const _0x553cf3=a111_0x2ca678,_0x2f8360=await buildCreatePlan(_0x2f4667,!![]),_0x40ee60=_0x2f8360[_0x553cf3(0x1b4)];return menuDryRunResult(_0x2f8360,{'method':'POST','url':_0x553cf3(0x176),'body':{'parentId':toApiParentId(_0x40ee60['parentId']),'label':_0x40ee60['label'],'type':_0x553cf3(0x17e),'visible':!![],'sort':_0x40ee60['sort'],'extend':{}},'description':_0x553cf3(0x182)+String(_0x40ee60['label'])+_0x553cf3(0x1a0)});},async 'execute'(_0x425b9e){const _0x1e5218=a111_0x2ca678;validateCreateInput(_0x425b9e),requireExplicitYes(_0x425b9e);const _0x4f5798=await buildCreatePlan(_0x425b9e,![]),_0x4b3346=_0x4f5798[_0x1e5218(0x1b4)];await recheckMutationSnapshot(_0x425b9e,_0x4f5798,'create\x20folder');let _0xdc7891;try{_0xdc7891=await createMenuEntity(_0x425b9e[_0x1e5218(0x1a7)],_0x425b9e['cookie'],{'parentId':toApiParentId(_0x4b3346[_0x1e5218(0x1b2)]),'label':String(_0x4b3346['label']),'type':'folder','visible':!![],'sort':Number(_0x4b3346[_0x1e5218(0x181)]),'extend':{}});}catch(_0x564f4c){const _0x3e2260=mapMenuApiError(_0x564f4c,_0x1e5218(0x186));throw menuFailure(_0x3e2260,_0x4f5798,{'stage':_0x1e5218(0x1a4),'failed':{}});}const _0x49345d=Number(_0xdc7891['id']);if(!Number[_0x1e5218(0x174)](_0x49345d)||_0x49345d<=0x0){const _0x5d9a58=menuError(_0x1e5218(0x190),_0x1e5218(0x177),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.');throw menuFailure(_0x5d9a58,_0x4f5798,{'stage':_0x1e5218(0x17b),'failed':{'createdId':_0xdc7891['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':_0x1e5218(0x19f),'lookupCommand':_0x1e5218(0x16f)}});}const _0x49a516=typeof _0xdc7891[_0x1e5218(0x18d)]===_0x1e5218(0x187)?_0xdc7891[_0x1e5218(0x18d)]:'';if(!_0x49a516['trim']()){const _0x4e8609=menuError(_0x1e5218(0x190),_0x1e5218(0x188)+_0x49345d+_0x1e5218(0x18a),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x4e8609,_0x4f5798,{'stage':_0x1e5218(0x17b),'succeeded':[{'id':_0x49345d,'created':!![]}],'failed':{'id':_0x49345d,'generatedPathConfirmed':![]},'warnings':[_0x1e5218(0x19c)+_0x49345d+_0x1e5218(0x171)],'after':{..._0x4b3346,'id':_0x49345d,'path':_0x49a516},'verification':{'status':_0x1e5218(0x19f),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x49345d}});}let _0x365022;try{_0x365022=await fetchMenuSnapshot(_0x425b9e[_0x1e5218(0x1a7)],_0x425b9e[_0x1e5218(0x1a3)]);}catch(_0x34722b){const _0x4d7f76=describeMenuErrorCause(_0x34722b,'verify\x20folder\x20creation',_0x49345d),_0x5c3711=asVerificationError(_0x34722b,_0x1e5218(0x19c)+_0x49345d+_0x1e5218(0x194));throw menuFailure(_0x5c3711,_0x4f5798,{'stage':_0x1e5218(0x192),'succeeded':[{'id':_0x49345d,'created':!![],'path':_0x49a516}],'failed':{'id':_0x49345d,'finalFactsConfirmed':![],..._0x4d7f76},'warnings':['Folder\x20'+_0x49345d+_0x1e5218(0x1a5)+JSON[_0x1e5218(0x172)](_0x49a516)+_0x1e5218(0x1aa)],'after':{..._0x4b3346,'id':_0x49345d,'path':_0x49a516},'verification':{'status':_0x1e5218(0x19f),'lookupCommand':_0x1e5218(0x16f),'targetId':_0x49345d}});}const _0x4eea2c=_0x365022['byId'][_0x1e5218(0x1ae)](_0x49345d);let _0x5e13b6;try{assertVerified(Boolean(_0x4eea2c),_0x1e5218(0x18f)+_0x49345d+_0x1e5218(0x19a)),_0x5e13b6=_0x4eea2c,assertVerified(_0x5e13b6[_0x1e5218(0x197)]===_0x1e5218(0x17e),_0x1e5218(0x1a1)+_0x49345d+_0x1e5218(0x178)),assertVerified(_0x5e13b6[_0x1e5218(0x1a2)]===_0x4b3346['label'],_0x1e5218(0x18f)+_0x49345d+_0x1e5218(0x17d)),assertVerified(_0x5e13b6[_0x1e5218(0x18d)]===_0x49a516&&Boolean(_0x5e13b6[_0x1e5218(0x18d)][_0x1e5218(0x184)]()),_0x1e5218(0x18f)+_0x49345d+_0x1e5218(0x16b)),assertVerified(_0x5e13b6[_0x1e5218(0x179)]===!![],_0x1e5218(0x18f)+_0x49345d+_0x1e5218(0x1b1)),assertVerified(_0x5e13b6[_0x1e5218(0x173)]['length']===0x0,_0x1e5218(0x18f)+_0x49345d+_0x1e5218(0x1a6)),assertVerified(_0x5e13b6[_0x1e5218(0x16d)]===0x0,_0x1e5218(0x18f)+_0x49345d+'\x20is\x20not\x20empty.'),assertVerified(_0x5e13b6['sort']===_0x4b3346['sort'],_0x1e5218(0x18f)+_0x49345d+_0x1e5218(0x19d)),assertVerified(_0x5e13b6[_0x1e5218(0x1b2)]===_0x4b3346[_0x1e5218(0x1b2)],_0x1e5218(0x18f)+_0x49345d+_0x1e5218(0x199)+(_0x5e13b6[_0x1e5218(0x1b2)]??'root')+'.'),assertVerified(_0x5e13b6['pageId']==null,_0x1e5218(0x18f)+_0x49345d+_0x1e5218(0x196));const _0x39a43e=_0x5e13b6[_0x1e5218(0x1b2)]==null?undefined:requireFolder(_0x365022,_0x5e13b6[_0x1e5218(0x1b2)]);assertVerified(_0x5e13b6['depth']===(_0x39a43e?_0x39a43e[_0x1e5218(0x17a)]+0x1:0x0),_0x1e5218(0x18f)+_0x49345d+_0x1e5218(0x170));}catch(_0x44d66f){const _0x5172fa=describeMenuErrorCause(_0x44d66f,_0x1e5218(0x17c),_0x49345d),_0x1c3c21=asVerificationError(_0x44d66f,_0x1e5218(0x19c)+_0x49345d+_0x1e5218(0x180));throw menuFailure(_0x1c3c21,_0x4f5798,{'stage':_0x1e5218(0x192),'succeeded':[{'id':_0x49345d,'created':!![],'path':_0x49a516}],'failed':{'id':_0x49345d,'finalFactsConfirmed':![],..._0x5172fa},'warnings':[_0x1e5218(0x19c)+_0x49345d+_0x1e5218(0x189)],'after':_0x4eea2c??{..._0x4b3346,'id':_0x49345d,'path':_0x49a516},'verification':{'status':_0x1e5218(0x19f),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x49345d}});}const _0x25136c=mutationResult({..._0x4f5798,'after':_0x5e13b6,'dryRun':![],'succeeded':[{'id':_0x49345d,'type':_0x1e5218(0x17e),'path':_0x49a516}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x365022[_0x1e5218(0x195)],'folder':!![],'path':_0x49a516,'emptyResources':!![]}});return{'ok':!![],'data':_0x25136c,'message':_0x1e5218(0x175)+_0x49345d+'.'};}};function validateCreateInput(_0x2832c4){const _0x200a53=a111_0x2ca678,_0x501c17=_0x2832c4[_0x200a53(0x1a9)](_0x200a53(0x1a2))[_0x200a53(0x184)]();if(!_0x501c17)throw CliErrors[_0x200a53(0x185)]('label');parseParentId(_0x2832c4,_0x200a53(0x198)),validateSort(_0x2832c4);}async function buildCreatePlan(_0x17ba37,_0x477c2c){const _0x5cce39=a111_0x2ca678,_0x3752df=await fetchMutationSnapshot(_0x17ba37,_0x5cce39(0x186)),_0x599b1e=parseParentId(_0x17ba37,'parent-id')??null;if(_0x599b1e!=null)requireFolder(_0x3752df,_0x599b1e);const _0x1fa939=validateSort(_0x17ba37),_0x2bd330=_0x1fa939??nextSiblingSort(_0x3752df,_0x599b1e,_0x5cce39(0x17e)),_0x2a9e35=_0x17ba37[_0x5cce39(0x1a9)](_0x5cce39(0x1a2))[_0x5cce39(0x184)]();return mutationResult({'operation':_0x5cce39(0x16c),'selector':{'label':_0x2a9e35,'parentId':_0x599b1e},'before':null,'after':{'id':null,'parentId':_0x599b1e,'label':_0x2a9e35,'path':_0x5cce39(0x1b0),'type':_0x5cce39(0x17e),'visible':!![],'sort':_0x2bd330,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x477c2c,'backend':[...BACKEND],'plannedActions':[{'stage':_0x5cce39(0x18c),'method':'POST','path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x599b1e),'label':_0x2a9e35,'type':_0x5cce39(0x17e),'visible':!![],'sort':_0x2bd330,'extend':{}}}],'snapshotHash':_0x3752df[_0x5cce39(0x195)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
|