@lovrabet/rabetbase-cli 2.3.16-beta.2 → 2.3.16-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.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/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 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -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 +1 -1
- 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/project/init.js +0 -1
- package/lib/commands/sql/save.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a105_0x32a7be=a105_0x3725;function a105_0x3ace(){const _0xb8980b=['push','expected-version','--title\x20cannot\x20be\x20empty.','version','title','before','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','5530938oThEfL','kb_expected_version_invalid','91DWdaOf','5fQAsgc','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','file','New\x20knowledge-base\x20title','1381750tBxADR','replacement','kb_update_empty','/admin/knowledge-base/update','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','\x20--format\x20compress','20917941FPHdXl','beforeRecord','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','cookie','flag','kb_title_invalid','kb_update_outcome_unknown','update','isSafeInteger','8599IoUKXV','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','26gXLjhA','kb_verification_failed','2140636Rxxnpn','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','appCode','--file\x20cannot\x20be\x20empty.','content','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','patch','2403969ScWoWH','9rZFiGu','contentHash','company','POST','587768LWKAUj','expectedVersion','Company\x20knowledge-base\x20id','rabetbase\x20kb\x20detail\x20--id\x20','Company\x20knowledge\x20base\x20','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','trim'];a105_0x3ace=function(){return _0xb8980b;};return a105_0x3ace();}(function(_0x14ebc5,_0x1b8d78){const _0x95f6f0=a105_0x3725,_0x449ed6=_0x14ebc5();while(!![]){try{const _0x2f0269=-parseInt(_0x95f6f0(0x108))/0x1*(-parseInt(_0x95f6f0(0x10a))/0x2)+parseInt(_0x95f6f0(0x114))/0x3+-parseInt(_0x95f6f0(0x10c))/0x4*(parseInt(_0x95f6f0(0x12a))/0x5)+parseInt(_0x95f6f0(0x127))/0x6+-parseInt(_0x95f6f0(0x129))/0x7*(-parseInt(_0x95f6f0(0x119))/0x8)+-parseInt(_0x95f6f0(0x115))/0x9*(-parseInt(_0x95f6f0(0x12e))/0xa)+-parseInt(_0x95f6f0(0x134))/0xb;if(_0x2f0269===_0x1b8d78)break;else _0x449ed6['push'](_0x449ed6['shift']());}catch(_0x1fe02d){_0x449ed6['push'](_0x449ed6['shift']());}}}(a105_0x3ace,0x77fb1));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_0x32a7be(0x131),NON_ATOMIC_WARNING=a105_0x32a7be(0x132);function a105_0x3725(_0x3017b8,_0x5845ba){_0x3017b8=_0x3017b8-0x102;const _0x3acef7=a105_0x3ace();let _0x3725cf=_0x3acef7[_0x3017b8];return _0x3725cf;}function readUpdatePatch(_0x2797fc){const _0x1a63df=a105_0x32a7be,_0x7dd45b=readKbId(_0x2797fc),_0x4cb6fc=_0x2797fc[_0x1a63df(0x103)](_0x1a63df(0x124)),_0x316809=_0x2797fc[_0x1a63df(0x103)]('file'),_0x25c325=_0x2797fc['flag'](_0x1a63df(0x121)),_0x14a525=_0x4cb6fc===undefined?undefined:String(_0x4cb6fc)[_0x1a63df(0x11f)]();if(_0x4cb6fc!==undefined&&!_0x14a525)throw kbError(_0x1a63df(0x104),_0x1a63df(0x122));const _0x380b6a=_0x316809===undefined?undefined:String(_0x316809)[_0x1a63df(0x11f)]();if(_0x316809!==undefined&&!_0x380b6a)throw kbError('kb_file_required',_0x1a63df(0x10f));if(_0x14a525===undefined&&_0x380b6a===undefined)throw kbError(_0x1a63df(0x130),'Nothing\x20to\x20update.',_0x1a63df(0x136));let _0x2940ff;if(_0x25c325!==undefined){_0x2940ff=Number(_0x25c325);if(!Number[_0x1a63df(0x107)](_0x2940ff)||_0x2940ff<0x0)throw kbError(_0x1a63df(0x128),_0x1a63df(0x112));}return{'id':_0x7dd45b,'title':_0x14a525,'file':_0x380b6a,'expectedVersion':_0x2940ff};}async function prepareUpdate(_0x3932cf){const _0x322b9b=a105_0x32a7be,_0x1940d2=readUpdatePatch(_0x3932cf),_0x10725b=await requireKb(_0x3932cf,_0x1940d2['id']);assertExpectedKbVersion(_0x10725b,_0x1940d2['expectedVersion']);const _0x2d0ac6=_0x1940d2['file']?await readKbFile(_0x1940d2[_0x322b9b(0x12c)]):undefined,_0x2b8eb3=projectKb(_0x10725b),_0x5ddb94=projectKb({..._0x10725b,..._0x1940d2[_0x322b9b(0x124)]!==undefined?{'title':_0x1940d2['title']}:{},..._0x2d0ac6?{'content':_0x2d0ac6['content']}:{}});return{'patch':_0x1940d2,'beforeRecord':_0x10725b,'before':_0x2b8eb3,'planned':_0x5ddb94,'replacement':_0x2d0ac6};}export const kbUpdate={'service':'kb','command':a105_0x32a7be(0x106),'description':a105_0x32a7be(0x109),'risk':'high-risk-write','requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':'number','required':!![],'description':a105_0x32a7be(0x11b)},{'name':a105_0x32a7be(0x124),'type':'string','required':![],'description':a105_0x32a7be(0x12d)},{'name':a105_0x32a7be(0x12c),'type':'string','required':![],'description':a105_0x32a7be(0x126)},{'name':a105_0x32a7be(0x121),'type':'number','required':![],'description':a105_0x32a7be(0x12b)}],async 'validate'(_0x3c41cd){readUpdatePatch(_0x3c41cd),requireKbExplicitYes(_0x3c41cd);},async 'dryRun'(_0x4a8ebc){const _0x26cf77=a105_0x32a7be,_0x1f895c=await prepareUpdate(_0x4a8ebc),_0xcb14bf=_0x1f895c[_0x26cf77(0x113)][_0x26cf77(0x11a)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x26cf77(0x106),'selector':{'id':_0x1f895c[_0x26cf77(0x125)]['id'],'scope':_0x26cf77(0x117),'appCode':_0x1f895c[_0x26cf77(0x125)][_0x26cf77(0x10e)]},'before':_0x1f895c[_0x26cf77(0x125)],'after':_0x1f895c['planned'],'dryRun':!![],'backend':{'method':_0x26cf77(0x118),'path':UPDATE_PATH},'warnings':_0xcb14bf,'verification':{'expectedVersion':_0x1f895c[_0x26cf77(0x113)][_0x26cf77(0x11a)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x1f895c['before']['snapshotHash'],'lookupCommand':'rabetbase\x20kb\x20detail\x20--id\x20'+_0x1f895c[_0x26cf77(0x125)]['id']+'\x20--format\x20compress'}},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x3e6854){const _0x5a5913=a105_0x32a7be;requireKbExplicitYes(_0x3e6854);const _0x145a19=await prepareUpdate(_0x3e6854),_0x4e4e61={'id':_0x145a19['patch']['id'],..._0x145a19[_0x5a5913(0x113)][_0x5a5913(0x124)]!==undefined?{'title':_0x145a19[_0x5a5913(0x113)]['title']}:{},..._0x145a19['replacement']?{'content':_0x145a19[_0x5a5913(0x12f)]['content']}:{}};let _0x467a9d=![];try{const _0x57bfdb=await updateEnterpriseKnowledgeBase(_0x3e6854[_0x5a5913(0x102)],_0x4e4e61);assertCompanyKnowledgeBase(_0x57bfdb,_0x3e6854[_0x5a5913(0x10e)],_0x145a19[_0x5a5913(0x113)]['id']);}catch(_0x27778e){if(!isPlatformTransportFailure(_0x27778e))throw _0x27778e;_0x467a9d=!![];}const _0x2abcdd=await verifyKbMutationReadback(_0x5a5913(0x106),_0x467a9d,()=>requireKb(_0x3e6854,_0x145a19[_0x5a5913(0x113)]['id'])),_0x247425=projectKb(_0x2abcdd),_0x16bcdc=_0x145a19[_0x5a5913(0x113)][_0x5a5913(0x124)]===undefined||_0x2abcdd[_0x5a5913(0x124)]===_0x145a19[_0x5a5913(0x113)]['title'],_0x1be268=!_0x145a19[_0x5a5913(0x12f)]||inspectKbContent(_0x2abcdd[_0x5a5913(0x110)])[_0x5a5913(0x116)]===_0x145a19[_0x5a5913(0x12f)]['contentHash'],_0x31218a=!_0x145a19[_0x5a5913(0x12f)]||_0x2abcdd[_0x5a5913(0x123)]>_0x145a19[_0x5a5913(0x135)][_0x5a5913(0x123)],_0x1568b0=!_0x467a9d||_0x145a19['replacement']!==undefined||_0x145a19[_0x5a5913(0x113)][_0x5a5913(0x124)]===undefined||_0x145a19[_0x5a5913(0x135)][_0x5a5913(0x124)]!==_0x145a19[_0x5a5913(0x113)][_0x5a5913(0x124)];if(!_0x16bcdc||!_0x1be268||!_0x31218a||!_0x1568b0)throw kbError(_0x467a9d?_0x5a5913(0x105):_0x5a5913(0x10b),_0x5a5913(0x11d)+_0x145a19[_0x5a5913(0x113)]['id']+_0x5a5913(0x10d),'Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20'+_0x145a19[_0x5a5913(0x113)]['id']+_0x5a5913(0x111));const _0x392377=[];return _0x145a19[_0x5a5913(0x113)][_0x5a5913(0x11a)]!==undefined&&_0x392377[_0x5a5913(0x120)](NON_ATOMIC_WARNING),_0x467a9d&&_0x392377['push'](_0x5a5913(0x11e)),{'ok':!![],'data':{'operation':_0x5a5913(0x106),'selector':{'id':_0x247425['id'],'scope':_0x5a5913(0x117),'appCode':_0x247425[_0x5a5913(0x10e)]},'before':_0x145a19[_0x5a5913(0x125)],'after':_0x247425,'dryRun':![],'backend':{'method':_0x5a5913(0x118),'path':UPDATE_PATH},'warnings':_0x392377,'verification':{'status':'verified','recoveredAfterUnknownResponse':_0x467a9d,'expectedVersion':_0x145a19[_0x5a5913(0x113)][_0x5a5913(0x11a)]??null,'atomicCompareAndSet':![],'lookupCommand':_0x5a5913(0x11c)+_0x247425['id']+_0x5a5913(0x133)}},'message':'Updated\x20company\x20knowledge\x20base\x20'+_0x247425['id']};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a106_0x5d94(_0x465a5d,_0x15fbf6){_0x465a5d=_0x465a5d-0x1a4;const _0x5ba1ad=a106_0x5ba1();let _0x5d9442=_0x5ba1ad[_0x465a5d];return _0x5d9442;}const a106_0x56460d=a106_0x5d94;(function(_0x3b8c35,_0x1c6b66){const _0x23e85d=a106_0x5d94,_0x2cbe9b=_0x3b8c35();while(!![]){try{const _0x125e8e=-parseInt(_0x23e85d(0x1b1))/0x1*(parseInt(_0x23e85d(0x1ad))/0x2)+-parseInt(_0x23e85d(0x1b0))/0x3*(-parseInt(_0x23e85d(0x1a4))/0x4)+parseInt(_0x23e85d(0x1c1))/0x5+parseInt(_0x23e85d(0x1b8))/0x6*(parseInt(_0x23e85d(0x1c6))/0x7)+-parseInt(_0x23e85d(0x1aa))/0x8*(parseInt(_0x23e85d(0x1bc))/0x9)+parseInt(_0x23e85d(0x1c5))/0xa+-parseInt(_0x23e85d(0x1a9))/0xb;if(_0x125e8e===_0x1c6b66)break;else _0x2cbe9b['push'](_0x2cbe9b['shift']());}catch(_0x2fff71){_0x2cbe9b['push'](_0x2cbe9b['shift']());}}}(a106_0x5ba1,0xa2397));function a106_0x5ba1(){const _0x367c00=['9997296vkIOPA','logs','\x20\x20\x20Details:\x20','12422RdSphi','\x20\x20\x20Time:\x20','details','15dbGuHV','61ZenjBe','clear','en-US','*\x20Logs\x20cleared','toLocaleString','timestamp','show','12QVrpuZ','clearLogs','*\x20Lovrabet\x20CLI\x20logs:\x0a','length','9JTctno','level','\x20\x20\x20Duration:\x20','warn','write','5860450sSXfJh','*\x20No\x20logs\x20found','log','View\x20command\x20history\x20logs','12293870YsiWfO','1196097nfZZKW','708252bptELm','Clear\x20command\x20history\x20logs','duration','success','message','14690830BwMjND'];a106_0x5ba1=function(){return _0x367c00;};return a106_0x5ba1();}import{logger}from'../../utils/logger.js';function printLogs(_0x39d56e){const _0x1223ef=a106_0x5d94;if(_0x39d56e[_0x1223ef(0x1bb)]===0x0){console['log'](_0x1223ef(0x1c2));return;}console['log'](_0x1223ef(0x1ba)),_0x39d56e['forEach']((_0x93b44a,_0x582ec8)=>{const _0x305da3=_0x1223ef,_0x39aa48=new Date(_0x93b44a[_0x305da3(0x1b6)])[_0x305da3(0x1b5)](_0x305da3(0x1b3)),_0x3f49f8=_0x93b44a[_0x305da3(0x1bd)]===_0x305da3(0x1a7)?'√':_0x93b44a[_0x305da3(0x1bd)]==='error'?'×':_0x93b44a[_0x305da3(0x1bd)]===_0x305da3(0x1bf)?'!':'i';console['log'](_0x582ec8+0x1+'.\x20'+_0x3f49f8+'\x20['+_0x93b44a['command']+']\x20'+_0x93b44a[_0x305da3(0x1a8)]),console[_0x305da3(0x1c3)](_0x305da3(0x1ae)+_0x39aa48),_0x93b44a[_0x305da3(0x1a6)]&&console[_0x305da3(0x1c3)](_0x305da3(0x1be)+_0x93b44a[_0x305da3(0x1a6)]+'ms'),_0x93b44a[_0x305da3(0x1af)]&&Object['keys'](_0x93b44a['details'])[_0x305da3(0x1bb)]>0x0&&console[_0x305da3(0x1c3)](_0x305da3(0x1ac)+JSON['stringify'](_0x93b44a['details'],null,0x2)),console['log']('');});}export const logsDefinitions=[{'service':a106_0x56460d(0x1ab),'command':a106_0x56460d(0x1b7),'description':a106_0x56460d(0x1c4),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x2eb16d){return printLogs(logger['readLogs']()),{'ok':!![]};}},{'service':a106_0x56460d(0x1ab),'command':a106_0x56460d(0x1b2),'description':a106_0x56460d(0x1a5),'risk':a106_0x56460d(0x1c0),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4210bf){const _0x26d487=a106_0x56460d;return logger[_0x26d487(0x1b9)](),console[_0x26d487(0x1c3)](_0x26d487(0x1b4)),{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a107_0x12cdc0=a107_0x2c77;(function(_0x2cf202,_0x176f1a){const _0x726c59=a107_0x2c77,_0x3dc651=_0x2cf202();while(!![]){try{const _0x2e5f68=parseInt(_0x726c59(0x99))/0x1+parseInt(_0x726c59(0x8d))/0x2+parseInt(_0x726c59(0xa1))/0x3*(parseInt(_0x726c59(0x9e))/0x4)+parseInt(_0x726c59(0xc0))/0x5*(parseInt(_0x726c59(0xa7))/0x6)+parseInt(_0x726c59(0xab))/0x7+-parseInt(_0x726c59(0x98))/0x8*(parseInt(_0x726c59(0xa9))/0x9)+-parseInt(_0x726c59(0x87))/0xa;if(_0x2e5f68===_0x176f1a)break;else _0x3dc651['push'](_0x3dc651['shift']());}catch(_0x38e913){_0x3dc651['push'](_0x3dc651['shift']());}}}(a107_0x3b44,0xaa1d8));import a107_0x11491b from'chalk';import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,isInteractive,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';function a107_0x2c77(_0x222626,_0x1749b0){_0x222626=_0x222626-0x75;const _0x3b443e=a107_0x3b44();let _0x2c77af=_0x3b443e[_0x222626];return _0x2c77af;}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':a107_0x12cdc0(0x8e),'description':a107_0x12cdc0(0xb7),'risk':a107_0x12cdc0(0x86),'flags':[{'name':a107_0x12cdc0(0x90),'type':a107_0x12cdc0(0x88),'description':a107_0x12cdc0(0x7a)+a107_0x12cdc0(0x9d)},{'name':a107_0x12cdc0(0xc8),'type':'string','description':a107_0x12cdc0(0x8a)+'patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','enum':[a107_0x12cdc0(0x91),a107_0x12cdc0(0xca)],'default':'patch'},{'name':a107_0x12cdc0(0xa2),'type':a107_0x12cdc0(0x8b),'description':a107_0x12cdc0(0xbb)},{'name':a107_0x12cdc0(0x84),'type':a107_0x12cdc0(0x88),'description':a107_0x12cdc0(0x93)},{'name':a107_0x12cdc0(0xb6),'type':a107_0x12cdc0(0x88),'description':a107_0x12cdc0(0x89)},{'name':a107_0x12cdc0(0xc7),'type':'boolean','description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':a107_0x12cdc0(0xaf),'type':'string','enum':['import',a107_0x12cdc0(0xb5),a107_0x12cdc0(0xaa)],'description':a107_0x12cdc0(0xa0)}],async 'dryRun'(_0x348c74){const _0x529ef0=a107_0x12cdc0;ensureRunnableContext(_0x348c74['rawFlags'],_0x348c74[_0x529ef0(0xc2)]);const _0x4af60f=await runMenuUpdateCore(_0x348c74[_0x529ef0(0xb3)],_0x348c74[_0x529ef0(0xb2)],_0x348c74[_0x529ef0(0x7e)]('params'),{'mode':parseMode(_0x348c74[_0x529ef0(0x7e)](_0x529ef0(0xc8))),'dryRun':!![],'force':_0x348c74[_0x529ef0(0xa5)]('force'),'selection':parseSelection(_0x348c74),'loadScriptMode':parseLoadScriptMode(_0x348c74[_0x529ef0(0x7e)](_0x529ef0(0xaf)))});return{'method':_0x529ef0(0xba),'url':_0x529ef0(0xc5),'body':_0x4af60f,'description':_0x4af60f['skipped']?_0x529ef0(0x77):'Would\x20update\x20'+(_0x4af60f[_0x529ef0(0xb9)]?.[_0x529ef0(0x82)]??0x0)+_0x529ef0(0xcb)};},async 'execute'(_0x5504ff){const _0x409782=a107_0x12cdc0;ensureRunnableContext(_0x5504ff[_0x409782(0x7f)],_0x5504ff[_0x409782(0xc2)]);const _0x4683e0=_0x5504ff[_0x409782(0x94)](_0x409782(0xc9)),_0x5be815=_0x5504ff['str'](_0x409782(0x90)),_0x27411f=parseMode(_0x5504ff[_0x409782(0x7e)](_0x409782(0xc8))),_0x4d48fd=_0x5504ff[_0x409782(0xa5)](_0x409782(0xa2)),_0x3433fb=parseLoadScriptMode(_0x5504ff['str'](_0x409782(0xaf))),_0x50817c=parseParams(_0x5be815),_0x548442=!!(_0x50817c[_0x409782(0xcc)]||_0x50817c['cssUrl']);if(_0x4683e0||_0x548442&&!isInteractive()){const _0x57e7d7=await runMenuUpdateCore(_0x5504ff[_0x409782(0xb3)],_0x5504ff['cookie'],_0x5be815,{'mode':_0x27411f,'force':_0x4d48fd,'selection':parseSelection(_0x5504ff),'loadScriptMode':_0x3433fb});return _0x57e7d7[_0x409782(0xc4)]?writeCliSideChannelLine(_0x409782(0x83)):(writeCliSideChannelLine(_0x409782(0xc1)+_0x57e7d7[_0x409782(0x7d)]+_0x409782(0xc6)),_0x57e7d7[_0x409782(0x78)]>0x0&&writeCliSideChannelLine('!\x20'+_0x57e7d7[_0x409782(0x78)]+'\x20menu(s)\x20failed')),{'ok':_0x57e7d7[_0x409782(0x78)]===0x0,'data':_0x57e7d7,'message':_0x57e7d7[_0x409782(0xc4)]?_0x409782(0xb1):_0x409782(0xa4)+_0x57e7d7[_0x409782(0x7d)]+_0x409782(0xbd)+_0x57e7d7[_0x409782(0x78)]+_0x409782(0xa3)};}requireInteractive();const _0x2ad29a=startSpinner(_0x409782(0x81));let _0x1d87c4;try{_0x1d87c4=await fetchOnlineMenuList(_0x5504ff[_0x409782(0xb3)],_0x5504ff[_0x409782(0xb2)]),stopSpinner(_0x2ad29a,'Online\x20menu\x20list\x20fetched',!![]);}catch(_0xe73eb){stopSpinner(_0x2ad29a,_0x409782(0x85),![]);throw CliErrors['validation'](_0xe73eb instanceof Error?_0xe73eb[_0x409782(0xb4)]:_0x409782(0x85));}const _0x49a7f4=filterMenusWithResources(_0x1d87c4),_0x5db03a=parseSelection(_0x5504ff,![]),_0x51482f=_0x5db03a?selectMenusForUpdate(_0x49a7f4,_0x5db03a):_0x49a7f4;if(_0x51482f['length']===0x0)return writeCliSideChannelLine(a107_0x11491b[_0x409782(0x7b)]('\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found')),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a107_0x11491b[_0x409782(0x95)](_0x409782(0x9c)+_0x51482f['length']+'\x20menu(s)\x20with\x20existing\x20resources')),writeCliSideChannelLine(renderUpdateSummary(_0x51482f[_0x409782(0xb8)](_0x8c44ca=>_0x8c44ca['label']),[_0x50817c['jsUrl'],_0x50817c[_0x409782(0xae)]])),writeCliSideChannelLine('');let _0x14ea0f=_0x50817c['jsUrl'],_0x414f07=_0x50817c[_0x409782(0xae)];!_0x14ea0f&&(_0x14ea0f=await askJsUrl());!_0x414f07&&(_0x414f07=await askCssUrl());const _0x5764e9=await askConfirm(_0x409782(0xad)+_0x51482f[_0x409782(0x82)]+_0x409782(0x76)+_0x14ea0f+'\x20and\x20CSS:\x20'+_0x414f07+'?');if(!_0x5764e9)return writeCliSideChannelLine(a107_0x11491b['gray'](_0x409782(0xa8))),{'ok':!![]};const _0x118df0=startSpinner('Updating\x20'+_0x51482f[_0x409782(0x82)]+_0x409782(0xbf));try{const _0x402d4d=await runMenuUpdateCore(_0x5504ff[_0x409782(0xb3)],_0x5504ff['cookie'],JSON['stringify']({'jsUrl':_0x14ea0f,'cssUrl':_0x414f07}),{'mode':_0x27411f,'force':_0x4d48fd,'selection':{'all':![],'menuIds':_0x51482f[_0x409782(0xb8)](_0x2f62be=>_0x2f62be['id']),'paths':[]},'loadScriptMode':_0x3433fb});return stopSpinner(_0x118df0,'Updated\x20'+_0x402d4d[_0x409782(0x7d)]+_0x409782(0x8f),_0x402d4d[_0x409782(0x78)]===0x0),{'ok':_0x402d4d['failed']===0x0,'data':_0x402d4d,'message':_0x402d4d[_0x409782(0x78)]>0x0?_0x409782(0xa4)+_0x402d4d[_0x409782(0x7d)]+_0x409782(0xbd)+_0x402d4d[_0x409782(0x78)]+_0x409782(0xa3):'Menu\x20asset\x20update\x20completed:\x20'+_0x402d4d[_0x409782(0x7d)]+_0x409782(0xbc)};}catch(_0x349b36){stopSpinner(_0x118df0,_0x409782(0x80),![]);throw CliErrors[_0x409782(0x7c)](_0x349b36 instanceof Error?_0x349b36['message']:_0x409782(0x80));}}};function ensureRunnableContext(_0x5012fe,_0x1069be){const _0x4ee043=a107_0x12cdc0,_0x2a57bc=_0x5012fe['appcode']?String(_0x5012fe[_0x4ee043(0x9b)])['trim']():'';if(!isInProject()&&!_0x1069be&&!_0x2a57bc)throw CliErrors[_0x4ee043(0x7c)](_0x4ee043(0x8c)+_0x4ee043(0x9a));}function parseMode(_0xf8fbf6){const _0x5e7ead=a107_0x12cdc0;if(!_0xf8fbf6)return _0x5e7ead(0xca);if(_0xf8fbf6===_0x5e7ead(0x91)||_0xf8fbf6==='patch')return _0xf8fbf6;throw CliErrors[_0x5e7ead(0x7c)](_0x5e7ead(0xc3));}function a107_0x3b44(){const _0x178e12=['params','replace','filter','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','flag','cyan','isArray','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','18744shjahF','1391355kJpSgr','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','appcode','\x20\x20Found\x20','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','48276bLQiiZ','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','150TnarcU','force','\x20failed.','Menu\x20asset\x20update\x20completed:\x20','bool','isSafeInteger','6318Qwrscg','\x20\x20Cancelled.','2052bUOkGm','fetch','3054954WqITbg','trim','\x20\x20Update\x20','cssUrl','load-mode','import','Menu\x20asset\x20update\x20skipped','cookie','appCode','message','script','paths','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','map','diffs','POST','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','\x20updated.','\x20updated,\x20','some','\x20menu(s)...','4595WccBpT','✓\x20Menu\x20asset\x20update\x20completed:\x20','selectedAppName','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','skipped','/smartapi/menu/update','\x20menu(s)\x20updated','all','mode','yes','patch','\x20menu\x20resource\x20set(s).','jsUrl','split','\x20menu(s)\x20with\x20JS:\x20','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','failed','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','yellow','validation','updated','str','rawFlags','Menu\x20asset\x20update\x20failed','Fetching\x20online\x20menu\x20list...','length','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','menu-ids','Failed\x20to\x20fetch\x20online\x20menu\x20list','high-risk-write','24998830aStDrW','string','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','boolean','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','663890kgURbu','asset-update','\x20menu(s)'];a107_0x3b44=function(){return _0x178e12;};return a107_0x3b44();}function parseSelection(_0x1dd558,_0x555bd6=!![]){const _0x4f6b94=a107_0x12cdc0,_0x24e1fb=_0x1dd558[_0x4f6b94(0xa5)](_0x4f6b94(0xc7)),_0x4884e6=parseMenuIds(_0x1dd558[_0x4f6b94(0x7e)](_0x4f6b94(0x84))),_0xa25cb8=parseCsv(_0x1dd558[_0x4f6b94(0x7e)](_0x4f6b94(0xb6))),_0x697d90=_0x4884e6['length']>0x0||_0xa25cb8[_0x4f6b94(0x82)]>0x0;if(_0x24e1fb&&_0x697d90)throw CliErrors[_0x4f6b94(0x7c)](_0x4f6b94(0x97));if(!_0x24e1fb&&!_0x697d90){if(!_0x555bd6)return undefined;throw CliErrors[_0x4f6b94(0x7c)](_0x4f6b94(0x79));}return{'all':_0x24e1fb,'menuIds':_0x4884e6,'paths':_0xa25cb8};}function parseMenuIds(_0x2c8f1b){const _0xb93671=a107_0x12cdc0,_0x5b0a83=parseCsv(_0x2c8f1b),_0x47c56a=_0x5b0a83[_0xb93671(0xb8)](Number);if(_0x47c56a[_0xb93671(0xbe)](_0x5e95ca=>!Number[_0xb93671(0xa6)](_0x5e95ca)||_0x5e95ca<=0x0))throw CliErrors[_0xb93671(0x7c)]('--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.');return[...new Set(_0x47c56a)];}function parseCsv(_0x2b282f){const _0x1a361a=a107_0x12cdc0;return[...new Set(_0x2b282f[_0x1a361a(0x75)](',')[_0x1a361a(0xb8)](_0x329b3c=>_0x329b3c[_0x1a361a(0xac)]())[_0x1a361a(0x92)](Boolean))];}function parseLoadScriptMode(_0xbf6e06){const _0x2167e8=a107_0x12cdc0;if(!_0xbf6e06)return undefined;if(_0xbf6e06===_0x2167e8(0xb0)||_0xbf6e06===_0x2167e8(0xb5)||_0xbf6e06===_0x2167e8(0xaa))return _0xbf6e06;throw CliErrors[_0x2167e8(0x7c)](_0x2167e8(0x9f));}function parseParams(_0x357238){const _0x139146=a107_0x12cdc0;if(!_0x357238)return{};try{const _0x272f5e=JSON['parse'](_0x357238);if(typeof _0x272f5e!=='object'||_0x272f5e===null||Array[_0x139146(0x96)](_0x272f5e))return{};return{'jsUrl':typeof _0x272f5e[_0x139146(0xcc)]==='string'?_0x272f5e['jsUrl'][_0x139146(0xac)]():undefined,'cssUrl':typeof _0x272f5e[_0x139146(0xae)]===_0x139146(0x88)?_0x272f5e[_0x139146(0xae)][_0x139146(0xac)]():undefined};}catch{return{};}}
|
|
1
|
+
const a107_0x127c55=a107_0x5bec;(function(_0xda4147,_0x5bcb12){const _0x5e8200=a107_0x5bec,_0x5a4402=_0xda4147();while(!![]){try{const _0x51a21d=parseInt(_0x5e8200(0x183))/0x1*(-parseInt(_0x5e8200(0x1a9))/0x2)+-parseInt(_0x5e8200(0x19d))/0x3+parseInt(_0x5e8200(0x1b5))/0x4+parseInt(_0x5e8200(0x1a4))/0x5+-parseInt(_0x5e8200(0x19f))/0x6*(-parseInt(_0x5e8200(0x182))/0x7)+parseInt(_0x5e8200(0x18c))/0x8*(-parseInt(_0x5e8200(0x18e))/0x9)+-parseInt(_0x5e8200(0x198))/0xa*(-parseInt(_0x5e8200(0x16a))/0xb);if(_0x51a21d===_0x5bcb12)break;else _0x5a4402['push'](_0x5a4402['shift']());}catch(_0x27f0fe){_0x5a4402['push'](_0x5a4402['shift']());}}}(a107_0x513c,0x2b9e1));import a107_0x1772e9 from'chalk';import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,isInteractive,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';function a107_0x513c(){const _0x26b117=['191424NautnO','yes','trim','filter','Menu\x20asset\x20update\x20completed:\x20','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','params','yellow','/smartapi/menu/update','Fetching\x20online\x20menu\x20list...','message','selectedAppName','length','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','110zfLjlY','\x20\x20Found\x20','\x20\x20Update\x20','validation','asset-update','isSafeInteger','replace','\x20menu(s)\x20failed','split','load-mode','failed','cyan','skipped','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','\x20updated,\x20','import','mode','updated','appcode','string','diffs','appCode','map','746599cOCcrt','4AWQqVa','bool','POST','\x20menu(s)...','Failed\x20to\x20fetch\x20online\x20menu\x20list','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','str','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','8zXCogu','label','2970162tZJnNh','paths','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','Menu\x20asset\x20update\x20failed','high-risk-write','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','jsUrl','isArray','\x20updated.','207430fXXuvw','menu-ids','Updating\x20','flag','patch','483663vNgALz','force','18FRVJue','Updated\x20','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','766255SOktRT','✓\x20Menu\x20asset\x20update\x20completed:\x20','menu','some','boolean','29306OACZMP','cssUrl','cookie','\x20menu(s)\x20updated','stringify','Menu\x20asset\x20update\x20skipped','fetch','\x20failed.','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','rawFlags','!\x20No\x20menus\x20with\x20existing\x20resources\x20found'];a107_0x513c=function(){return _0x26b117;};return a107_0x513c();}import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':a107_0x127c55(0x1a6),'command':a107_0x127c55(0x16e),'description':a107_0x127c55(0x1a1),'risk':a107_0x127c55(0x193),'flags':[{'name':a107_0x127c55(0x1bb),'type':a107_0x127c55(0x17e),'description':'Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20'+a107_0x127c55(0x18b)},{'name':a107_0x127c55(0x17b),'type':a107_0x127c55(0x17e),'description':a107_0x127c55(0x190)+a107_0x127c55(0x18a),'enum':[a107_0x127c55(0x170),'patch'],'default':a107_0x127c55(0x19c)},{'name':'force','type':'boolean','description':a107_0x127c55(0x169)},{'name':a107_0x127c55(0x199),'type':a107_0x127c55(0x17e),'description':a107_0x127c55(0x188)},{'name':a107_0x127c55(0x18f),'type':a107_0x127c55(0x17e),'description':a107_0x127c55(0x191)},{'name':'all','type':a107_0x127c55(0x1a8),'description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':a107_0x127c55(0x173),'type':'string','enum':[a107_0x127c55(0x17a),'script',a107_0x127c55(0x1af)],'description':a107_0x127c55(0x177)}],async 'dryRun'(_0x229109){const _0xdb4002=a107_0x127c55;ensureRunnableContext(_0x229109['rawFlags'],_0x229109[_0xdb4002(0x167)]);const _0x213987=await runMenuUpdateCore(_0x229109[_0xdb4002(0x180)],_0x229109[_0xdb4002(0x1ab)],_0x229109[_0xdb4002(0x189)](_0xdb4002(0x1bb)),{'mode':parseMode(_0x229109[_0xdb4002(0x189)]('mode')),'dryRun':!![],'force':_0x229109[_0xdb4002(0x184)](_0xdb4002(0x19e)),'selection':parseSelection(_0x229109),'loadScriptMode':parseLoadScriptMode(_0x229109[_0xdb4002(0x189)](_0xdb4002(0x173)))});return{'method':_0xdb4002(0x185),'url':_0xdb4002(0x1bd),'body':_0x213987,'description':_0x213987['skipped']?_0xdb4002(0x1a3):'Would\x20update\x20'+(_0x213987[_0xdb4002(0x17f)]?.[_0xdb4002(0x168)]??0x0)+'\x20menu\x20resource\x20set(s).'};},async 'execute'(_0x443b58){const _0x455908=a107_0x127c55;ensureRunnableContext(_0x443b58[_0x455908(0x1b3)],_0x443b58[_0x455908(0x167)]);const _0x404fbc=_0x443b58[_0x455908(0x19b)](_0x455908(0x1b6)),_0x3f6dd9=_0x443b58['str'](_0x455908(0x1bb)),_0x306474=parseMode(_0x443b58[_0x455908(0x189)](_0x455908(0x17b))),_0x458838=_0x443b58['bool'](_0x455908(0x19e)),_0x1258ef=parseLoadScriptMode(_0x443b58[_0x455908(0x189)](_0x455908(0x173))),_0x119fc1=parseParams(_0x3f6dd9),_0x58b0f8=!!(_0x119fc1[_0x455908(0x195)]||_0x119fc1['cssUrl']);if(_0x404fbc||_0x58b0f8&&!isInteractive()){const _0xcd7b31=await runMenuUpdateCore(_0x443b58[_0x455908(0x180)],_0x443b58[_0x455908(0x1ab)],_0x3f6dd9,{'mode':_0x306474,'force':_0x458838,'selection':parseSelection(_0x443b58),'loadScriptMode':_0x1258ef});return _0xcd7b31['skipped']?writeCliSideChannelLine(_0x455908(0x1b4)):(writeCliSideChannelLine(_0x455908(0x1a5)+_0xcd7b31[_0x455908(0x17c)]+_0x455908(0x1ac)),_0xcd7b31[_0x455908(0x174)]>0x0&&writeCliSideChannelLine('!\x20'+_0xcd7b31[_0x455908(0x174)]+_0x455908(0x171))),{'ok':_0xcd7b31[_0x455908(0x174)]===0x0,'data':_0xcd7b31,'message':_0xcd7b31[_0x455908(0x176)]?_0x455908(0x1ae):_0x455908(0x1b9)+_0xcd7b31[_0x455908(0x17c)]+_0x455908(0x179)+_0xcd7b31['failed']+_0x455908(0x1b0)};}requireInteractive();const _0x5202b9=startSpinner(_0x455908(0x1be));let _0x1fef31;try{_0x1fef31=await fetchOnlineMenuList(_0x443b58[_0x455908(0x180)],_0x443b58[_0x455908(0x1ab)]),stopSpinner(_0x5202b9,'Online\x20menu\x20list\x20fetched',!![]);}catch(_0x4d982b){stopSpinner(_0x5202b9,_0x455908(0x187),![]);throw CliErrors['validation'](_0x4d982b instanceof Error?_0x4d982b[_0x455908(0x1bf)]:'Failed\x20to\x20fetch\x20online\x20menu\x20list');}const _0x28b48e=filterMenusWithResources(_0x1fef31),_0x17ffb7=parseSelection(_0x443b58,![]),_0x35bc6b=_0x17ffb7?selectMenusForUpdate(_0x28b48e,_0x17ffb7):_0x28b48e;if(_0x35bc6b[_0x455908(0x168)]===0x0)return writeCliSideChannelLine(a107_0x1772e9[_0x455908(0x1bc)](_0x455908(0x1a2))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a107_0x1772e9[_0x455908(0x175)](_0x455908(0x16b)+_0x35bc6b[_0x455908(0x168)]+'\x20menu(s)\x20with\x20existing\x20resources')),writeCliSideChannelLine(renderUpdateSummary(_0x35bc6b[_0x455908(0x181)](_0x398f40=>_0x398f40[_0x455908(0x18d)]),[_0x119fc1[_0x455908(0x195)],_0x119fc1[_0x455908(0x1aa)]])),writeCliSideChannelLine('');let _0x269e12=_0x119fc1[_0x455908(0x195)],_0x3a9d69=_0x119fc1[_0x455908(0x1aa)];!_0x269e12&&(_0x269e12=await askJsUrl());!_0x3a9d69&&(_0x3a9d69=await askCssUrl());const _0xab2a4d=await askConfirm(_0x455908(0x16c)+_0x35bc6b[_0x455908(0x168)]+'\x20menu(s)\x20with\x20JS:\x20'+_0x269e12+'\x20and\x20CSS:\x20'+_0x3a9d69+'?');if(!_0xab2a4d)return writeCliSideChannelLine(a107_0x1772e9['gray']('\x20\x20Cancelled.')),{'ok':!![]};const _0x4ebd61=startSpinner(_0x455908(0x19a)+_0x35bc6b[_0x455908(0x168)]+_0x455908(0x186));try{const _0x127f8b=await runMenuUpdateCore(_0x443b58[_0x455908(0x180)],_0x443b58[_0x455908(0x1ab)],JSON[_0x455908(0x1ad)]({'jsUrl':_0x269e12,'cssUrl':_0x3a9d69}),{'mode':_0x306474,'force':_0x458838,'selection':{'all':![],'menuIds':_0x35bc6b[_0x455908(0x181)](_0x9bacea=>_0x9bacea['id']),'paths':[]},'loadScriptMode':_0x1258ef});return stopSpinner(_0x4ebd61,_0x455908(0x1a0)+_0x127f8b[_0x455908(0x17c)]+'\x20menu(s)',_0x127f8b[_0x455908(0x174)]===0x0),{'ok':_0x127f8b[_0x455908(0x174)]===0x0,'data':_0x127f8b,'message':_0x127f8b[_0x455908(0x174)]>0x0?_0x455908(0x1b9)+_0x127f8b[_0x455908(0x17c)]+_0x455908(0x179)+_0x127f8b['failed']+'\x20failed.':_0x455908(0x1b9)+_0x127f8b['updated']+_0x455908(0x197)};}catch(_0x4e7db1){stopSpinner(_0x4ebd61,_0x455908(0x192),![]);throw CliErrors[_0x455908(0x16d)](_0x4e7db1 instanceof Error?_0x4e7db1[_0x455908(0x1bf)]:_0x455908(0x192));}}};function ensureRunnableContext(_0x5741b3,_0x18868d){const _0x238aa1=a107_0x127c55,_0x635274=_0x5741b3[_0x238aa1(0x17d)]?String(_0x5741b3[_0x238aa1(0x17d)])[_0x238aa1(0x1b7)]():'';if(!isInProject()&&!_0x18868d&&!_0x635274)throw CliErrors[_0x238aa1(0x16d)]('menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20'+_0x238aa1(0x1b2));}function a107_0x5bec(_0x55afb0,_0xd9710){_0x55afb0=_0x55afb0-0x167;const _0x513cd2=a107_0x513c();let _0x5bec80=_0x513cd2[_0x55afb0];return _0x5bec80;}function parseMode(_0x39f0a5){const _0xd85c06=a107_0x127c55;if(!_0x39f0a5)return _0xd85c06(0x19c);if(_0x39f0a5===_0xd85c06(0x170)||_0x39f0a5===_0xd85c06(0x19c))return _0x39f0a5;throw CliErrors['validation'](_0xd85c06(0x1b1));}function parseSelection(_0x8caaac,_0x238921=!![]){const _0x2966af=a107_0x127c55,_0x6bae5b=_0x8caaac[_0x2966af(0x184)]('all'),_0x30f1ac=parseMenuIds(_0x8caaac[_0x2966af(0x189)](_0x2966af(0x199))),_0x3e0260=parseCsv(_0x8caaac[_0x2966af(0x189)](_0x2966af(0x18f))),_0x1c26b0=_0x30f1ac[_0x2966af(0x168)]>0x0||_0x3e0260[_0x2966af(0x168)]>0x0;if(_0x6bae5b&&_0x1c26b0)throw CliErrors['validation']('--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.');if(!_0x6bae5b&&!_0x1c26b0){if(!_0x238921)return undefined;throw CliErrors[_0x2966af(0x16d)](_0x2966af(0x178));}return{'all':_0x6bae5b,'menuIds':_0x30f1ac,'paths':_0x3e0260};}function parseMenuIds(_0x32f133){const _0x56000b=a107_0x127c55,_0x22b503=parseCsv(_0x32f133),_0x46c1e0=_0x22b503[_0x56000b(0x181)](Number);if(_0x46c1e0[_0x56000b(0x1a7)](_0x59473d=>!Number[_0x56000b(0x16f)](_0x59473d)||_0x59473d<=0x0))throw CliErrors[_0x56000b(0x16d)](_0x56000b(0x194));return[...new Set(_0x46c1e0)];}function parseCsv(_0x47b8a8){const _0xdd02ad=a107_0x127c55;return[...new Set(_0x47b8a8[_0xdd02ad(0x172)](',')[_0xdd02ad(0x181)](_0x4bccbc=>_0x4bccbc[_0xdd02ad(0x1b7)]())[_0xdd02ad(0x1b8)](Boolean))];}function parseLoadScriptMode(_0x510b83){const _0xf912e=a107_0x127c55;if(!_0x510b83)return undefined;if(_0x510b83===_0xf912e(0x17a)||_0x510b83==='script'||_0x510b83===_0xf912e(0x1af))return _0x510b83;throw CliErrors[_0xf912e(0x16d)](_0xf912e(0x1ba));}function parseParams(_0x7cffe5){const _0x4a7b6d=a107_0x127c55;if(!_0x7cffe5)return{};try{const _0x19a831=JSON['parse'](_0x7cffe5);if(typeof _0x19a831!=='object'||_0x19a831===null||Array[_0x4a7b6d(0x196)](_0x19a831))return{};return{'jsUrl':typeof _0x19a831[_0x4a7b6d(0x195)]===_0x4a7b6d(0x17e)?_0x19a831[_0x4a7b6d(0x195)][_0x4a7b6d(0x1b7)]():undefined,'cssUrl':typeof _0x19a831[_0x4a7b6d(0x1aa)]==='string'?_0x19a831[_0x4a7b6d(0x1aa)][_0x4a7b6d(0x1b7)]():undefined};}catch{return{};}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a108_0x540d58=a108_0xed94;(function(_0x16cdba,_0x41176a){const _0x43ded8=a108_0xed94,_0x11a8b6=_0x16cdba();while(!![]){try{const _0x2ca8a8=-parseInt(_0x43ded8(0x144))/0x1+-parseInt(_0x43ded8(0x198))/0x2+-parseInt(_0x43ded8(0x181))/0x3+-parseInt(_0x43ded8(0x13e))/0x4+parseInt(_0x43ded8(0x176))/0x5*(-parseInt(_0x43ded8(0x184))/0x6)+parseInt(_0x43ded8(0x174))/0x7+parseInt(_0x43ded8(0x12f))/0x8*(parseInt(_0x43ded8(0x13f))/0x9);if(_0x2ca8a8===_0x41176a)break;else _0x11a8b6['push'](_0x11a8b6['shift']());}catch(_0x1b7f70){_0x11a8b6['push'](_0x11a8b6['shift']());}}}(a108_0x4f5d,0xd0dd4));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';function a108_0xed94(_0x29a17c,_0x2f56ff){_0x29a17c=_0x29a17c-0x12d;const _0x4f5ddf=a108_0x4f5d();let _0xed94b8=_0x4f5ddf[_0x29a17c];return _0xed94b8;}import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a108_0x540d58(0x19c),'path':a108_0x540d58(0x1a3)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':a108_0x540d58(0x194),'type':a108_0x540d58(0x141),'description':'Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first'},MENU_DELETE_PLAN_OUT_FLAG={'name':a108_0x540d58(0x170),'type':'string','description':a108_0x540d58(0x13b)},MENU_DELETE_PLAN_FLAG={'name':a108_0x540d58(0x1a1),'type':'string','description':a108_0x540d58(0x189)};export const menuDelete={'service':a108_0x540d58(0x12d),'command':a108_0x540d58(0x186),'description':a108_0x540d58(0x187),'risk':a108_0x540d58(0x165),'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'(_0xf7dbb){const _0x57f050=a108_0x540d58;_0xf7dbb[_0x57f050(0x16a)](_0x57f050(0x19f))?validateDeleteDryRunInput(_0xf7dbb):validateDeleteExecuteInput(_0xf7dbb),requireExplicitYes(_0xf7dbb);},async 'dryRun'(_0x53de4d){const _0x4dfe44=a108_0x540d58;validateDeleteDryRunInput(_0x53de4d);const _0x421d9a=await buildDeletePlan(_0x53de4d),_0xf63690=createMenuDeletePlanFile(_0x53de4d['appCode'],_0x421d9a),_0x515c94=await writeMenuDeletePlan(_0x53de4d[_0x4dfe44(0x157)](_0x4dfe44(0x170)),_0xf63690),_0x55c42d=mutationResult({..._0x421d9a,'planFile':{'path':_0x515c94,'createdAt':_0xf63690['createdAt'],'expiresAt':_0xf63690['expiresAt']}});return menuDryRunResult(_0x55c42d,{'method':'POST','url':'/smartapi/menu/batchDelete','body':{'idList':_0x55c42d[_0x4dfe44(0x180)]},'description':_0x4dfe44(0x177)+(_0x55c42d[_0x4dfe44(0x180)]?.[_0x4dfe44(0x159)]??0x1)+_0x4dfe44(0x147)+_0x55c42d[_0x4dfe44(0x18b)]['id']+_0x4dfe44(0x14c)+_0x515c94+'.'});},async 'execute'(_0x2962b8){const _0x15e82d=a108_0x540d58;requireExplicitYes(_0x2962b8),validateDeleteExecuteInput(_0x2962b8);const _0x6b7daf=await readMenuDeletePlan(_0x2962b8['str']('plan')),_0x512c91=mutationPlanFromDeleteFile(_0x6b7daf['plan'],_0x6b7daf[_0x15e82d(0x196)]),_0x2e7188=_0x6b7daf[_0x15e82d(0x1a1)][_0x15e82d(0x1a2)]['id'];try{assertMenuDeletePlanExecutable(_0x6b7daf[_0x15e82d(0x1a1)],_0x2962b8[_0x15e82d(0x14b)]);}catch(_0x2b9eac){throw menuFailure(asMenuError(_0x2b9eac),_0x512c91,{'stage':_0x15e82d(0x19d),'failed':{'id':_0x2e7188}});}let _0x5c11c8,_0xaf3d22;try{_0x5c11c8=await fetchMutationSnapshot(_0x2962b8,_0x15e82d(0x146),_0x2e7188),_0xaf3d22=assertMenuDeletePlanCurrent(_0x6b7daf['plan'],_0x2962b8[_0x15e82d(0x14b)],_0x5c11c8),assertDeleteTargetsComplete(_0x6b7daf[_0x15e82d(0x1a1)],_0x5c11c8),_0xaf3d22['forEach'](_0x9b7637=>assertDeleteSafety(_0x9b7637,_0x6b7daf['plan']['recursive'])),assertNoSharedPages(_0x5c11c8,_0xaf3d22),assertCascadeMatchesPlan(_0x512c91,_0xaf3d22);}catch(_0x149097){throw menuFailure(asMenuError(_0x149097),_0x512c91,{'stage':_0x15e82d(0x193),'failed':{'id':_0x2e7188}});}const _0x43bd70=_0x6b7daf[_0x15e82d(0x1a1)][_0x15e82d(0x180)];let _0x989c5c;try{_0x989c5c=await batchDeleteMenuEntities(_0x2962b8[_0x15e82d(0x1a0)],_0x43bd70);}catch(_0x1112cd){const _0x45cbea=mapMenuApiError(_0x1112cd,'batch\x20delete'),_0x4f81b6=[_0x15e82d(0x135)];let _0xad6e04;try{_0xad6e04=await readDeleteOutcome(_0x2962b8,_0x43bd70);}catch(_0x4bc605){const _0x5b96ec=describeMenuErrorCause(_0x4bc605,_0x15e82d(0x188),_0x2e7188);_0x4f81b6[_0x15e82d(0x139)](_0x15e82d(0x15e)+_0x5b96ec[_0x15e82d(0x171)]+_0x15e82d(0x130)+_0x5b96ec['causeMessage']);throw menuFailure(_0x45cbea,_0x512c91,{'stage':'batch-delete','failed':{'targetIds':_0x43bd70,'targetIdsAbsent':_0x15e82d(0x14d),..._0x5b96ec},'warnings':_0x4f81b6,'verification':{'status':_0x15e82d(0x192),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x43bd70}});}throw menuFailure(_0x45cbea,_0x512c91,{'stage':_0x15e82d(0x15f),'succeeded':_0xad6e04[_0x15e82d(0x162)][_0x15e82d(0x140)](_0x57a40a=>({'id':_0x57a40a,'deleted':!![]})),'failed':{'targetIds':_0x43bd70,'absentIds':_0xad6e04[_0x15e82d(0x162)],'remainingIds':_0xad6e04[_0x15e82d(0x167)]},'warnings':_0x4f81b6,'verification':verificationFromOutcome(_0xad6e04)});}if(_0x989c5c!==_0x43bd70[_0x15e82d(0x159)]){const _0x219318=menuError(_0x15e82d(0x15d),_0x15e82d(0x17d)+_0x989c5c+_0x15e82d(0x191)+_0x43bd70[_0x15e82d(0x159)]+'.',_0x15e82d(0x1a4)),_0x8e827=[_0x15e82d(0x155)];let _0x21d17e;try{_0x21d17e=await readDeleteOutcome(_0x2962b8,_0x43bd70);}catch(_0x5d5c5f){const _0x2a4de3=describeMenuErrorCause(_0x5d5c5f,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x2e7188);_0x8e827[_0x15e82d(0x139)](_0x15e82d(0x153)+_0x2a4de3[_0x15e82d(0x171)]+_0x15e82d(0x130)+_0x2a4de3[_0x15e82d(0x143)]);throw menuFailure(_0x219318,_0x512c91,{'stage':_0x15e82d(0x15f),'failed':{'targetIds':_0x43bd70,'expectedCount':_0x43bd70[_0x15e82d(0x159)],'reportedDeletedCount':_0x989c5c,'targetIdsAbsent':_0x15e82d(0x14d),..._0x2a4de3},'warnings':_0x8e827,'verification':{'status':_0x15e82d(0x192),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x43bd70}});}throw menuFailure(_0x219318,_0x512c91,{'stage':_0x15e82d(0x15f),'succeeded':_0x21d17e[_0x15e82d(0x162)][_0x15e82d(0x140)](_0x25b8e8=>({'id':_0x25b8e8,'deleted':!![]})),'failed':{'targetIds':_0x43bd70,'expectedCount':_0x43bd70[_0x15e82d(0x159)],'reportedDeletedCount':_0x989c5c,'absentIds':_0x21d17e[_0x15e82d(0x162)],'remainingIds':_0x21d17e[_0x15e82d(0x167)]},'warnings':_0x8e827,'verification':verificationFromOutcome(_0x21d17e)});}let _0x5eb52f;try{_0x5eb52f=await readDeleteOutcome(_0x2962b8,_0x43bd70);}catch(_0x1fd709){const _0x40c25d=describeMenuErrorCause(_0x1fd709,_0x15e82d(0x19b),_0x2e7188),_0x304a5b=asVerificationError(_0x1fd709,'Batch\x20delete\x20request\x20for\x20menu\x20'+_0x2e7188+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x304a5b,_0x512c91,{'stage':_0x15e82d(0x183),'succeeded':_0x43bd70[_0x15e82d(0x140)](_0x117571=>({'id':_0x117571,'deleteRequested':!![]})),'failed':{'id':_0x2e7188,'targetIds':_0x43bd70,'targetIdsAbsent':_0x15e82d(0x14d),..._0x40c25d},'warnings':[_0x15e82d(0x137)],'verification':{'status':_0x15e82d(0x192),'lookupCommand':_0x15e82d(0x19a),'targetIds':_0x43bd70}});}if(_0x5eb52f['remainingIds'][_0x15e82d(0x159)]>0x0){const _0x153d59=menuError('menu_verification_failed',_0x15e82d(0x13c)+_0x5eb52f[_0x15e82d(0x167)][_0x15e82d(0x178)](',\x20')+'.',_0x15e82d(0x1a4));throw menuFailure(_0x153d59,_0x512c91,{'stage':_0x15e82d(0x183),'succeeded':_0x43bd70[_0x15e82d(0x140)](_0x44e5b6=>({'id':_0x44e5b6,'deleteRequested':!![]})),'failed':{'id':_0x2e7188,'targetIds':_0x43bd70,'absentIds':_0x5eb52f[_0x15e82d(0x162)],'remainingIds':_0x5eb52f['remainingIds']},'warnings':[_0x15e82d(0x133)],'verification':verificationFromOutcome(_0x5eb52f)});}const _0x4871f3=_0x43bd70[_0x15e82d(0x140)](_0x57aa9c=>({'id':_0x57aa9c,'deleted':!![]})),_0x202f11=mutationResult({..._0x512c91,'dryRun':![],'succeeded':_0x4871f3,'verification':{'checkedBy':_0x15e82d(0x1a5),'plannedSnapshotHash':_0x512c91['snapshotHash'],'finalSnapshotHash':_0x5eb52f[_0x15e82d(0x16c)][_0x15e82d(0x13d)],'reportedDeletedCount':_0x989c5c,'targetAbsent':!_0x5eb52f['snapshot'][_0x15e82d(0x18a)][_0x15e82d(0x168)](_0x2e7188),'allTargetsAbsent':!![],'targetIds':_0x43bd70}});return{'ok':!![],'data':_0x202f11,'message':_0x15e82d(0x161)+_0x4871f3[_0x15e82d(0x159)]+_0x15e82d(0x147)+_0x2e7188+'.'};}};async function readDeleteOutcome(_0x2106f9,_0x45fb73){const _0x33a05=a108_0x540d58,_0x2dcb7d=await fetchMenuSnapshot(_0x2106f9[_0x33a05(0x14b)],_0x2106f9[_0x33a05(0x1a0)]);return{'snapshot':_0x2dcb7d,'absentIds':_0x45fb73[_0x33a05(0x18d)](_0x2a395c=>!_0x2dcb7d['byId'][_0x33a05(0x168)](_0x2a395c)),'remainingIds':_0x45fb73['filter'](_0x365798=>_0x2dcb7d['byId']['has'](_0x365798))};}function verificationFromOutcome(_0x3b9e4d){const _0xcb661=a108_0x540d58;return{'checkedBy':'menu\x20list','absentIds':_0x3b9e4d[_0xcb661(0x162)],'remainingIds':_0x3b9e4d[_0xcb661(0x167)]};}function validateDeleteDryRunInput(_0x480982){const _0x313c63=a108_0x540d58;validateExactId(_0x480982);if(!hasFlag(_0x480982,'plan-out')||!_0x480982['str']('plan-out')['trim']())throw CliErrors['flagMissing'](_0x313c63(0x170),_0x313c63(0x15a));if(hasFlag(_0x480982,_0x313c63(0x1a1)))throw CliErrors[_0x313c63(0x18e)](_0x313c63(0x136));}function validateDeleteExecuteInput(_0x1e5248){const _0x288713=a108_0x540d58;if(!hasFlag(_0x1e5248,'plan')||!_0x1e5248['str'](_0x288713(0x1a1))['trim']())throw CliErrors[_0x288713(0x197)](_0x288713(0x1a1),_0x288713(0x17e));const _0x1b857e=['id',_0x288713(0x194),'plan-out','expect-parent-id',_0x288713(0x185),_0x288713(0x142)]['filter'](_0x327707=>hasFlag(_0x1e5248,_0x327707));if(_0x1b857e[_0x288713(0x159)]>0x0)throw CliErrors['validation'](_0x288713(0x134)+_0x1b857e[_0x288713(0x140)](_0x333c6e=>'--'+_0x333c6e)[_0x288713(0x178)](',\x20')+'.');}async function buildDeletePlan(_0x4d6fab){const _0x1a711e=a108_0x540d58,_0x5ba247=validateExactId(_0x4d6fab),_0x26c62d=await fetchMutationSnapshot(_0x4d6fab,_0x1a711e(0x145),_0x5ba247),_0x1b15e3=requireMenu(_0x26c62d,_0x5ba247);assertExpectedState(_0x4d6fab,_0x1b15e3);const _0x3898ac=_0x4d6fab[_0x1a711e(0x16a)](_0x1a711e(0x194));let _0x3c2156;if(_0x3898ac){if(_0x1b15e3[_0x1a711e(0x19e)][_0x1a711e(0x179)]()[_0x1a711e(0x148)]()!==_0x1a711e(0x199))throw menuError('menu_recursive_requires_folder','Menu\x20'+_0x1b15e3['id']+'\x20is\x20type\x20\x22'+(_0x1b15e3['type']||_0x1a711e(0x132))+_0x1a711e(0x173));_0x3c2156=collectDeleteTargets(_0x26c62d,_0x1b15e3),_0x3c2156['forEach'](_0x4835ca=>assertDeleteSafety(_0x4835ca,!![]));}else assertDeleteSafety(_0x1b15e3),_0x3c2156=[_0x1b15e3];assertNoSharedPages(_0x26c62d,_0x3c2156);const _0x3d3bf6=_0x3c2156[_0x1a711e(0x140)](_0x27695b=>_0x27695b['id']),_0x21979b=cascadeForTargets(_0x3c2156),_0x2a24f4=_0x21979b[_0x1a711e(0x14f)][_0x1a711e(0x159)]>0x0?['Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.']:[];return mutationResult({'operation':_0x1a711e(0x186),'selector':{'id':_0x5ba247,'recursive':_0x3898ac},'before':_0x1b15e3,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x1a711e(0x19c),'path':_0x1a711e(0x1a3),'body':{'idList':_0x3d3bf6}}],'targets':_0x3c2156,'deleteOrder':_0x3d3bf6,'snapshotHash':_0x26c62d[_0x1a711e(0x13d)],'cascade':_0x21979b,'warnings':_0x2a24f4});}function assertDeleteSafety(_0x1dda3e,_0x2201b1=![]){const _0x31761b=a108_0x540d58,_0x3cf9c9=_0x1dda3e[_0x31761b(0x19e)]['trim']()['toLowerCase']()===_0x31761b(0x199);if(_0x1dda3e[_0x31761b(0x17c)]>0x0&&(!_0x2201b1||!_0x3cf9c9))throw menuError('menu_non_empty',_0x31761b(0x17a)+_0x1dda3e['id']+'\x20has\x20'+_0x1dda3e['childrenCount']+_0x31761b(0x166),_0x31761b(0x195)+_0x1dda3e[_0x31761b(0x158)]['join'](',\x20'));if(_0x3cf9c9&&_0x1dda3e[_0x31761b(0x172)]!=null)throw menuError('menu_delete_page_bound',_0x31761b(0x190)+_0x1dda3e['id']+_0x31761b(0x182)+_0x1dda3e[_0x31761b(0x172)]+_0x31761b(0x16f),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x3cf9c9)return;if(!_0x1dda3e[_0x31761b(0x16e)])throw menuError(_0x31761b(0x152),'Folder\x20'+_0x1dda3e['id']+_0x31761b(0x18c),_0x31761b(0x14a));if(_0x1dda3e[_0x31761b(0x131)][_0x31761b(0x159)]>0x0)throw menuError(_0x31761b(0x12e),'Folder\x20'+_0x1dda3e['id']+_0x31761b(0x156)+_0x1dda3e[_0x31761b(0x131)]['length']+_0x31761b(0x149),_0x31761b(0x15c));}function collectDeleteTargets(_0x6ccacb,_0x4b1b51){const _0x5e42a1=[],_0xb7f228=new Set(),_0x45add8=new Set(),_0x25f0fc=_0x494514=>{const _0x149b61=a108_0xed94;if(_0xb7f228[_0x149b61(0x168)](_0x494514['id']))throw menuError(_0x149b61(0x18f),_0x149b61(0x150)+_0x494514['id']+'.');if(_0x45add8[_0x149b61(0x168)](_0x494514['id']))return;_0xb7f228[_0x149b61(0x169)](_0x494514['id']);for(const _0x2537ef of _0x494514[_0x149b61(0x158)]){const _0x53fa15=_0x6ccacb[_0x149b61(0x18a)]['get'](_0x2537ef);if(!_0x53fa15)throw menuError('menu_tree_invalid',_0x149b61(0x17a)+_0x494514['id']+_0x149b61(0x17b)+_0x2537ef+'.');_0x25f0fc(_0x53fa15);}_0xb7f228['delete'](_0x494514['id']),_0x45add8[_0x149b61(0x169)](_0x494514['id']),_0x5e42a1[_0x149b61(0x139)](_0x494514);};return _0x25f0fc(_0x4b1b51),_0x5e42a1;}function assertDeleteTargetsComplete(_0x121e29,_0x4d4096){const _0x2fef07=a108_0x540d58,_0x2ea699=requireMenu(_0x4d4096,_0x121e29['target']['id']);if(_0x121e29['recursive']&&_0x2ea699[_0x2fef07(0x19e)][_0x2fef07(0x179)]()['toLowerCase']()!=='folder')throw menuError(_0x2fef07(0x175),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x2ea699['id']+_0x2fef07(0x163));const _0x43cdab=_0x121e29['recursive']?collectDeleteTargets(_0x4d4096,_0x2ea699)[_0x2fef07(0x140)](_0x55c3a3=>_0x55c3a3['id']):[_0x2ea699['id']];if(JSON[_0x2fef07(0x17f)](_0x121e29['deleteOrder'])!==JSON['stringify'](_0x43cdab))throw menuError(_0x2fef07(0x175),_0x2fef07(0x16b),_0x2fef07(0x15b));}function assertNoSharedPages(_0x30c9d9,_0x6b183c){const _0x14b82a=a108_0x540d58,_0x15bb8b=new Set(_0x6b183c[_0x14b82a(0x140)](_0x3e167a=>_0x3e167a['id'])),_0x1d5ee6=new Set(_0x6b183c[_0x14b82a(0x140)](_0x470150=>_0x470150[_0x14b82a(0x172)])[_0x14b82a(0x18d)](_0x2b6268=>_0x2b6268!=null));if(_0x1d5ee6['size']===0x0)return;const _0x2ff4f8=_0x30c9d9['menus'][_0x14b82a(0x18d)](_0x56cd89=>!_0x15bb8b['has'](_0x56cd89['id'])&&_0x56cd89[_0x14b82a(0x172)]!=null&&_0x1d5ee6[_0x14b82a(0x168)](_0x56cd89[_0x14b82a(0x172)]));if(_0x2ff4f8[_0x14b82a(0x159)]===0x0)return;const _0x3f2c86=_0x2ff4f8['map'](_0x2cadb5=>_0x14b82a(0x138)+_0x2cadb5[_0x14b82a(0x172)]+_0x14b82a(0x151)+_0x2cadb5['id'])[_0x14b82a(0x178)](',\x20');throw menuError(_0x14b82a(0x164),_0x14b82a(0x16d)+_0x3f2c86+'.',_0x14b82a(0x160));}function assertCascadeMatchesPlan(_0x5b253f,_0x5cc5b5){const _0x27c1bd=a108_0x540d58,_0xce8229=cascadeForTargets(_0x5cc5b5);if(JSON[_0x27c1bd(0x17f)](_0x5b253f[_0x27c1bd(0x154)])!==JSON[_0x27c1bd(0x17f)](_0xce8229))throw menuError(_0x27c1bd(0x175),_0x27c1bd(0x14e));}function a108_0x4f5d(){const _0x3a7520=['has','add','bool','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','snapshot','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','resourcesValid','\x20and\x20cannot\x20be\x20deleted\x20safely.','plan-out','causeCode','pageId','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','1467445GRgdaH','menu_plan_invalid','187075SxObcx','Would\x20batch\x20delete\x20','join','trim','Menu\x20','\x20references\x20missing\x20child\x20','childrenCount','Backend\x20reported\x20','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','stringify','deleteOrder','18957akLMjJ','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','verification','108UhxMxr','expect-path','delete','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','byId','selector','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','filter','validation','menu_tree_invalid','Folder\x20','\x20deleted\x20menus;\x20expected\x20','failed','pre-write-plan-validation','recursive','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','path','flagMissing','1919192bInWtK','folder','rabetbase\x20menu\x20list\x20--format\x20json','verify\x20batch\x20delete','POST','plan-validation','type','dry-run','cookie','plan','target','/smartapi/menu/batchDelete','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','menu\x20list','menu','menu_folder_has_resources','118808nHfXYj','):\x20','resources','unknown','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','page\x20','push','indexOf','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','hash','3800148dtQDUl','2259PIvhFQ','map','boolean','expected-children-count','causeMessage','492306UefGAL','plan\x20delete','execute\x20reviewed\x20delete\x20plan','\x20menu(s)\x20under\x20exact\x20id\x20','toLowerCase','\x20resource\x20URL(s).','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','appCode',';\x20execution\x20must\x20consume\x20','unconfirmed','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','pages','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','\x20->\x20menu\x20','menu_folder_resources_invalid','Post-mismatch\x20menu\x20readback\x20failed\x20(','cascade','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','\x20still\x20references\x20','str','childrenIds','length','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','menu_batch_delete_count_mismatch','Post-failure\x20menu\x20readback\x20failed\x20(','batch-delete','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','Deleted\x20','absentIds','\x20is\x20not\x20a\x20folder.','menu_page_shared','high-risk-write','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','remainingIds'];a108_0x4f5d=function(){return _0x3a7520;};return a108_0x4f5d();}function cascadeForTargets(_0x21792d){const _0x2956ea=a108_0x540d58,_0x150e56=_0x21792d[_0x2956ea(0x140)](_0x1cc727=>_0x1cc727[_0x2956ea(0x172)])[_0x2956ea(0x18d)](_0xa6e6d7=>_0xa6e6d7!=null)[_0x2956ea(0x18d)]((_0x3ccece,_0x3a4325,_0x22ddaf)=>_0x22ddaf[_0x2956ea(0x13a)](_0x3ccece)===_0x3a4325);return{'pages':_0x150e56,'pageSchemaAffected':_0x150e56[_0x2956ea(0x159)]>0x0};}function asMenuError(_0xa60734){const _0x13e02e=a108_0x540d58;return _0xa60734 instanceof CliError?_0xa60734:menuError(_0x13e02e(0x175),_0xa60734 instanceof Error?_0xa60734['message']:String(_0xa60734));}
|
|
1
|
+
function a108_0x4b3f(){const _0x1e0a43=['Deleted\x20','stringify','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','pageId','resources','plan\x20delete','cookie','causeCode','menu_verification_failed','pre-write-plan-validation','length','expect-path','menu_recursive_requires_folder','failed','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','rabetbase\x20menu\x20list\x20--format\x20json','map','indexOf','path','snapshot','verification','filter','expiresAt','cascade','high-risk-write','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','menu\x20list','173745RUnvUz','str','\x20deleted\x20menus;\x20expected\x20','Recursive\x20menu\x20delete\x20plan\x20root\x20','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','592956BVzQdn','push','385TgJpOt','4665knzlmB','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','flagMissing','join','target','Folder\x20','Batch\x20delete\x20request\x20for\x20menu\x20','appCode','bool','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','plan-validation','menus','107581UnafLb','Menu\x20','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','unknown','string','createdAt','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','causeMessage','add','44IwFOIP','POST','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','absentIds','\x20->\x20menu\x20','remainingIds','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','delete','809868rhICec','2KBWdHw','menu_batch_delete_count_mismatch','Post-mismatch\x20menu\x20readback\x20failed\x20(','menu_delete_page_bound','forEach','snapshotHash','menu_plan_invalid','17919UGuKls','deleteOrder','batch\x20delete','16984ovTjhr','\x20resource\x20URL(s).','batch-delete','plan','childrenCount','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','dry-run','unconfirmed','childrenIds','recursive','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','\x20references\x20missing\x20child\x20','message','menu_folder_resources_invalid','pages','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','execute\x20reviewed\x20delete\x20plan','trim','hash','Would\x20batch\x20delete\x20','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','menu_tree_invalid','menu_folder_has_resources','\x20menu(s)\x20under\x20exact\x20id\x20','plan-out','batch-delete-menu','selector','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','validation','resourcesValid','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','folder','260pFRQbB','page\x20','byId',';\x20execution\x20must\x20consume\x20','\x20is\x20not\x20a\x20folder.','toLowerCase','type','has','/smartapi/menu/batchDelete','\x20and\x20cannot\x20be\x20deleted\x20safely.','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file'];a108_0x4b3f=function(){return _0x1e0a43;};return a108_0x4b3f();}const a108_0x5d4f38=a108_0x1873;(function(_0x2702af,_0x4ddbc4){const _0x2d4804=a108_0x1873,_0x36145e=_0x2702af();while(!![]){try{const _0x7ef509=parseInt(_0x2d4804(0x115))/0x1*(-parseInt(_0x2d4804(0x128))/0x2)+parseInt(_0x2d4804(0x101))/0x3+-parseInt(_0x2d4804(0x11f))/0x4*(-parseInt(_0x2d4804(0x109))/0x5)+parseInt(_0x2d4804(0x127))/0x6+parseInt(_0x2d4804(0x108))/0x7*(parseInt(_0x2d4804(0xb9))/0x8)+-parseInt(_0x2d4804(0x106))/0x9+parseInt(_0x2d4804(0xdb))/0xa*(-parseInt(_0x2d4804(0xb6))/0xb);if(_0x7ef509===_0x4ddbc4)break;else _0x36145e['push'](_0x36145e['shift']());}catch(_0x1d3c20){_0x36145e['push'](_0x36145e['shift']());}}}(a108_0x4b3f,0x196a6));function a108_0x1873(_0x390073,_0x59ad0a){_0x390073=_0x390073-0xb1;const _0x4b3fd9=a108_0x4b3f();let _0x187323=_0x4b3fd9[_0x390073];return _0x187323;}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_0x5d4f38(0xe3)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a108_0x5d4f38(0xff)},MENU_DELETE_RECURSIVE_FLAG={'name':a108_0x5d4f38(0xc2),'type':'boolean','description':a108_0x5d4f38(0xc4)},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':a108_0x5d4f38(0x11a),'description':a108_0x5d4f38(0xe5)},MENU_DELETE_PLAN_FLAG={'name':a108_0x5d4f38(0xbc),'type':a108_0x5d4f38(0x11a),'description':a108_0x5d4f38(0xce)};export const menuDelete={'service':'menu','command':a108_0x5d4f38(0x126),'description':a108_0x5d4f38(0xd5),'risk':a108_0x5d4f38(0xfe),'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'(_0x143fdf){const _0x32c0a1=a108_0x5d4f38;_0x143fdf[_0x32c0a1(0x111)](_0x32c0a1(0xbf))?validateDeleteDryRunInput(_0x143fdf):validateDeleteExecuteInput(_0x143fdf),requireExplicitYes(_0x143fdf);},async 'dryRun'(_0x21d2f2){const _0x29ea87=a108_0x5d4f38;validateDeleteDryRunInput(_0x21d2f2);const _0x2da480=await buildDeletePlan(_0x21d2f2),_0x1f2257=createMenuDeletePlanFile(_0x21d2f2['appCode'],_0x2da480),_0x1424d3=await writeMenuDeletePlan(_0x21d2f2[_0x29ea87(0x102)](_0x29ea87(0xd2)),_0x1f2257),_0x1ff235=mutationResult({..._0x2da480,'planFile':{'path':_0x1424d3,'createdAt':_0x1f2257[_0x29ea87(0x11b)],'expiresAt':_0x1f2257[_0x29ea87(0xfc)]}});return menuDryRunResult(_0x1ff235,{'method':_0x29ea87(0x120),'url':'/smartapi/menu/batchDelete','body':{'idList':_0x1ff235[_0x29ea87(0xb7)]},'description':_0x29ea87(0xcd)+(_0x1ff235[_0x29ea87(0xb7)]?.['length']??0x1)+_0x29ea87(0xd1)+_0x1ff235[_0x29ea87(0xd4)]['id']+_0x29ea87(0xde)+_0x1424d3+'.'});},async 'execute'(_0x333608){const _0x700c4d=a108_0x5d4f38;requireExplicitYes(_0x333608),validateDeleteExecuteInput(_0x333608);const _0x5d68fb=await readMenuDeletePlan(_0x333608[_0x700c4d(0x102)](_0x700c4d(0xbc))),_0x1315f1=mutationPlanFromDeleteFile(_0x5d68fb['plan'],_0x5d68fb[_0x700c4d(0xf8)]),_0x42e785=_0x5d68fb[_0x700c4d(0xbc)][_0x700c4d(0x10d)]['id'];try{assertMenuDeletePlanExecutable(_0x5d68fb['plan'],_0x333608['appCode']);}catch(_0x4c9303){throw menuFailure(asMenuError(_0x4c9303),_0x1315f1,{'stage':_0x700c4d(0x113),'failed':{'id':_0x42e785}});}let _0x2756be,_0x24e750;try{_0x2756be=await fetchMutationSnapshot(_0x333608,_0x700c4d(0xca),_0x42e785),_0x24e750=assertMenuDeletePlanCurrent(_0x5d68fb['plan'],_0x333608[_0x700c4d(0x110)],_0x2756be),assertDeleteTargetsComplete(_0x5d68fb[_0x700c4d(0xbc)],_0x2756be),_0x24e750['forEach'](_0x25b79e=>assertDeleteSafety(_0x25b79e,_0x5d68fb[_0x700c4d(0xbc)][_0x700c4d(0xc2)])),assertNoSharedPages(_0x2756be,_0x24e750),assertCascadeMatchesPlan(_0x1315f1,_0x24e750);}catch(_0x12b263){throw menuFailure(asMenuError(_0x12b263),_0x1315f1,{'stage':_0x700c4d(0xef),'failed':{'id':_0x42e785}});}const _0xdfb15d=_0x5d68fb['plan'][_0x700c4d(0xb7)];let _0x4d8699;try{_0x4d8699=await batchDeleteMenuEntities(_0x333608[_0x700c4d(0xec)],_0xdfb15d);}catch(_0x509ed8){const _0x4d6d80=mapMenuApiError(_0x509ed8,_0x700c4d(0xb8)),_0x3497da=[_0x700c4d(0xc3)];let _0x39416d;try{_0x39416d=await readDeleteOutcome(_0x333608,_0xdfb15d);}catch(_0x17ac4c){const _0x2a2b98=describeMenuErrorCause(_0x17ac4c,_0x700c4d(0x118),_0x42e785);_0x3497da['push']('Post-failure\x20menu\x20readback\x20failed\x20('+_0x2a2b98[_0x700c4d(0xed)]+'):\x20'+_0x2a2b98[_0x700c4d(0x11d)]);throw menuFailure(_0x4d6d80,_0x1315f1,{'stage':_0x700c4d(0xbb),'failed':{'targetIds':_0xdfb15d,'targetIdsAbsent':_0x700c4d(0xc0),..._0x2a2b98},'warnings':_0x3497da,'verification':{'status':'failed','lookupCommand':_0x700c4d(0xf5),'targetIds':_0xdfb15d}});}throw menuFailure(_0x4d6d80,_0x1315f1,{'stage':_0x700c4d(0xbb),'succeeded':_0x39416d[_0x700c4d(0x122)][_0x700c4d(0xf6)](_0xd4a1e4=>({'id':_0xd4a1e4,'deleted':!![]})),'failed':{'targetIds':_0xdfb15d,'absentIds':_0x39416d[_0x700c4d(0x122)],'remainingIds':_0x39416d[_0x700c4d(0x124)]},'warnings':_0x3497da,'verification':verificationFromOutcome(_0x39416d)});}if(_0x4d8699!==_0xdfb15d[_0x700c4d(0xf0)]){const _0x3ad6a5=menuError(_0x700c4d(0x129),'Backend\x20reported\x20'+_0x4d8699+_0x700c4d(0x103)+_0xdfb15d['length']+'.',_0x700c4d(0xf4)),_0x2ef97c=['The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.'];let _0x15ccac;try{_0x15ccac=await readDeleteOutcome(_0x333608,_0xdfb15d);}catch(_0x23fac0){const _0x134598=describeMenuErrorCause(_0x23fac0,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x42e785);_0x2ef97c[_0x700c4d(0x107)](_0x700c4d(0xb1)+_0x134598['causeCode']+'):\x20'+_0x134598[_0x700c4d(0x11d)]);throw menuFailure(_0x3ad6a5,_0x1315f1,{'stage':_0x700c4d(0xbb),'failed':{'targetIds':_0xdfb15d,'expectedCount':_0xdfb15d[_0x700c4d(0xf0)],'reportedDeletedCount':_0x4d8699,'targetIdsAbsent':_0x700c4d(0xc0),..._0x134598},'warnings':_0x2ef97c,'verification':{'status':_0x700c4d(0xf3),'lookupCommand':_0x700c4d(0xf5),'targetIds':_0xdfb15d}});}throw menuFailure(_0x3ad6a5,_0x1315f1,{'stage':_0x700c4d(0xbb),'succeeded':_0x15ccac[_0x700c4d(0x122)][_0x700c4d(0xf6)](_0x25335b=>({'id':_0x25335b,'deleted':!![]})),'failed':{'targetIds':_0xdfb15d,'expectedCount':_0xdfb15d['length'],'reportedDeletedCount':_0x4d8699,'absentIds':_0x15ccac[_0x700c4d(0x122)],'remainingIds':_0x15ccac[_0x700c4d(0x124)]},'warnings':_0x2ef97c,'verification':verificationFromOutcome(_0x15ccac)});}let _0x3abca3;try{_0x3abca3=await readDeleteOutcome(_0x333608,_0xdfb15d);}catch(_0x5ba47f){const _0x121900=describeMenuErrorCause(_0x5ba47f,'verify\x20batch\x20delete',_0x42e785),_0x17b09b=asVerificationError(_0x5ba47f,_0x700c4d(0x10f)+_0x42e785+_0x700c4d(0xe8));throw menuFailure(_0x17b09b,_0x1315f1,{'stage':_0x700c4d(0xfa),'succeeded':_0xdfb15d['map'](_0x1a9912=>({'id':_0x1a9912,'deleteRequested':!![]})),'failed':{'id':_0x42e785,'targetIds':_0xdfb15d,'targetIdsAbsent':_0x700c4d(0xc0),..._0x121900},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0xdfb15d}});}if(_0x3abca3['remainingIds'][_0x700c4d(0xf0)]>0x0){const _0x749441=menuError(_0x700c4d(0xee),'One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20'+_0x3abca3['remainingIds'][_0x700c4d(0x10c)](',\x20')+'.',_0x700c4d(0xf4));throw menuFailure(_0x749441,_0x1315f1,{'stage':_0x700c4d(0xfa),'succeeded':_0xdfb15d[_0x700c4d(0xf6)](_0x3fab2e=>({'id':_0x3fab2e,'deleteRequested':!![]})),'failed':{'id':_0x42e785,'targetIds':_0xdfb15d,'absentIds':_0x3abca3['absentIds'],'remainingIds':_0x3abca3[_0x700c4d(0x124)]},'warnings':['The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.'],'verification':verificationFromOutcome(_0x3abca3)});}const _0x37ebac=_0xdfb15d[_0x700c4d(0xf6)](_0x28c959=>({'id':_0x28c959,'deleted':!![]})),_0x1c7c81=mutationResult({..._0x1315f1,'dryRun':![],'succeeded':_0x37ebac,'verification':{'checkedBy':_0x700c4d(0x100),'plannedSnapshotHash':_0x1315f1[_0x700c4d(0xb4)],'finalSnapshotHash':_0x3abca3[_0x700c4d(0xf9)][_0x700c4d(0xcc)],'reportedDeletedCount':_0x4d8699,'targetAbsent':!_0x3abca3[_0x700c4d(0xf9)][_0x700c4d(0xdd)][_0x700c4d(0xe2)](_0x42e785),'allTargetsAbsent':!![],'targetIds':_0xdfb15d}});return{'ok':!![],'data':_0x1c7c81,'message':_0x700c4d(0xe6)+_0x37ebac['length']+_0x700c4d(0xd1)+_0x42e785+'.'};}};async function readDeleteOutcome(_0x484576,_0xa9ac67){const _0x4aeea6=a108_0x5d4f38,_0x173526=await fetchMenuSnapshot(_0x484576[_0x4aeea6(0x110)],_0x484576[_0x4aeea6(0xec)]);return{'snapshot':_0x173526,'absentIds':_0xa9ac67[_0x4aeea6(0xfb)](_0x24d329=>!_0x173526[_0x4aeea6(0xdd)][_0x4aeea6(0xe2)](_0x24d329)),'remainingIds':_0xa9ac67[_0x4aeea6(0xfb)](_0x4d02e9=>_0x173526[_0x4aeea6(0xdd)][_0x4aeea6(0xe2)](_0x4d02e9))};}function verificationFromOutcome(_0x25667b){const _0x272819=a108_0x5d4f38;return{'checkedBy':_0x272819(0x100),'absentIds':_0x25667b[_0x272819(0x122)],'remainingIds':_0x25667b[_0x272819(0x124)]};}function validateDeleteDryRunInput(_0x4158d0){const _0x314957=a108_0x5d4f38;validateExactId(_0x4158d0);if(!hasFlag(_0x4158d0,_0x314957(0xd2))||!_0x4158d0[_0x314957(0x102)](_0x314957(0xd2))[_0x314957(0xcb)]())throw CliErrors[_0x314957(0x10b)](_0x314957(0xd2),_0x314957(0x117));if(hasFlag(_0x4158d0,_0x314957(0xbc)))throw CliErrors[_0x314957(0xd7)](_0x314957(0x112));}function validateDeleteExecuteInput(_0x1893c3){const _0x4ad3dc=a108_0x5d4f38;if(!hasFlag(_0x1893c3,_0x4ad3dc(0xbc))||!_0x1893c3[_0x4ad3dc(0x102)](_0x4ad3dc(0xbc))[_0x4ad3dc(0xcb)]())throw CliErrors['flagMissing']('plan',_0x4ad3dc(0x125));const _0x4c8ecc=['id',_0x4ad3dc(0xc2),'plan-out','expect-parent-id',_0x4ad3dc(0xf1),'expected-children-count']['filter'](_0xd1672e=>hasFlag(_0x1893c3,_0xd1672e));if(_0x4c8ecc[_0x4ad3dc(0xf0)]>0x0)throw CliErrors[_0x4ad3dc(0xd7)]('Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20'+_0x4c8ecc[_0x4ad3dc(0xf6)](_0x4e45d8=>'--'+_0x4e45d8)[_0x4ad3dc(0x10c)](',\x20')+'.');}async function buildDeletePlan(_0x47134b){const _0x14b525=a108_0x5d4f38,_0x540461=validateExactId(_0x47134b),_0x117291=await fetchMutationSnapshot(_0x47134b,_0x14b525(0xeb),_0x540461),_0x3ede5c=requireMenu(_0x117291,_0x540461);assertExpectedState(_0x47134b,_0x3ede5c);const _0xb5b40a=_0x47134b[_0x14b525(0x111)](_0x14b525(0xc2));let _0x38a288;if(_0xb5b40a){if(_0x3ede5c[_0x14b525(0xe1)][_0x14b525(0xcb)]()[_0x14b525(0xe0)]()!==_0x14b525(0xda))throw menuError(_0x14b525(0xf2),_0x14b525(0x116)+_0x3ede5c['id']+'\x20is\x20type\x20\x22'+(_0x3ede5c[_0x14b525(0xe1)]||_0x14b525(0x119))+_0x14b525(0x10a));_0x38a288=collectDeleteTargets(_0x117291,_0x3ede5c),_0x38a288[_0x14b525(0xb3)](_0x5182c7=>assertDeleteSafety(_0x5182c7,!![]));}else assertDeleteSafety(_0x3ede5c),_0x38a288=[_0x3ede5c];assertNoSharedPages(_0x117291,_0x38a288);const _0x4a6470=_0x38a288[_0x14b525(0xf6)](_0x6869da=>_0x6869da['id']),_0x4f90fd=cascadeForTargets(_0x38a288),_0x5eb811=_0x4f90fd[_0x14b525(0xc8)][_0x14b525(0xf0)]>0x0?[_0x14b525(0xd6)]:[];return mutationResult({'operation':'delete','selector':{'id':_0x540461,'recursive':_0xb5b40a},'before':_0x3ede5c,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x14b525(0xd3),'method':_0x14b525(0x120),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x4a6470}}],'targets':_0x38a288,'deleteOrder':_0x4a6470,'snapshotHash':_0x117291['hash'],'cascade':_0x4f90fd,'warnings':_0x5eb811});}function assertDeleteSafety(_0x209410,_0x4ce334=![]){const _0x4a228e=a108_0x5d4f38,_0x21bd81=_0x209410['type'][_0x4a228e(0xcb)]()[_0x4a228e(0xe0)]()===_0x4a228e(0xda);if(_0x209410[_0x4a228e(0xbd)]>0x0&&(!_0x4ce334||!_0x21bd81))throw menuError('menu_non_empty',_0x4a228e(0x116)+_0x209410['id']+'\x20has\x20'+_0x209410['childrenCount']+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0x4a228e(0xd9)+_0x209410[_0x4a228e(0xc1)][_0x4a228e(0x10c)](',\x20'));if(_0x21bd81&&_0x209410[_0x4a228e(0xe9)]!=null)throw menuError(_0x4a228e(0xb2),_0x4a228e(0x10e)+_0x209410['id']+'\x20is\x20unexpectedly\x20bound\x20to\x20page\x20'+_0x209410['pageId']+_0x4a228e(0xe4),_0x4a228e(0xbe));if(!_0x21bd81)return;if(!_0x209410[_0x4a228e(0xd8)])throw menuError(_0x4a228e(0xc7),'Folder\x20'+_0x209410['id']+'\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.',_0x4a228e(0x11c));if(_0x209410[_0x4a228e(0xea)][_0x4a228e(0xf0)]>0x0)throw menuError(_0x4a228e(0xd0),_0x4a228e(0x10e)+_0x209410['id']+'\x20still\x20references\x20'+_0x209410[_0x4a228e(0xea)][_0x4a228e(0xf0)]+_0x4a228e(0xba),'Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function collectDeleteTargets(_0x96977e,_0x236051){const _0x4e7a68=[],_0x5448a4=new Set(),_0x91dac2=new Set(),_0x4f3360=_0x38cc52=>{const _0x2618e1=a108_0x1873;if(_0x5448a4[_0x2618e1(0xe2)](_0x38cc52['id']))throw menuError(_0x2618e1(0xcf),_0x2618e1(0xc9)+_0x38cc52['id']+'.');if(_0x91dac2[_0x2618e1(0xe2)](_0x38cc52['id']))return;_0x5448a4[_0x2618e1(0x11e)](_0x38cc52['id']);for(const _0x5343f5 of _0x38cc52['childrenIds']){const _0x54506b=_0x96977e[_0x2618e1(0xdd)]['get'](_0x5343f5);if(!_0x54506b)throw menuError(_0x2618e1(0xcf),_0x2618e1(0x116)+_0x38cc52['id']+_0x2618e1(0xc5)+_0x5343f5+'.');_0x4f3360(_0x54506b);}_0x5448a4[_0x2618e1(0x126)](_0x38cc52['id']),_0x91dac2[_0x2618e1(0x11e)](_0x38cc52['id']),_0x4e7a68[_0x2618e1(0x107)](_0x38cc52);};return _0x4f3360(_0x236051),_0x4e7a68;}function assertDeleteTargetsComplete(_0x366b58,_0x283915){const _0x5eea8c=a108_0x5d4f38,_0x1ba40a=requireMenu(_0x283915,_0x366b58[_0x5eea8c(0x10d)]['id']);if(_0x366b58['recursive']&&_0x1ba40a['type']['trim']()[_0x5eea8c(0xe0)]()!=='folder')throw menuError('menu_plan_invalid',_0x5eea8c(0x104)+_0x1ba40a['id']+_0x5eea8c(0xdf));const _0x4607bb=_0x366b58[_0x5eea8c(0xc2)]?collectDeleteTargets(_0x283915,_0x1ba40a)[_0x5eea8c(0xf6)](_0x3aac41=>_0x3aac41['id']):[_0x1ba40a['id']];if(JSON[_0x5eea8c(0xe7)](_0x366b58['deleteOrder'])!==JSON[_0x5eea8c(0xe7)](_0x4607bb))throw menuError(_0x5eea8c(0xb5),'Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.',_0x5eea8c(0x121));}function assertNoSharedPages(_0x2a81eb,_0x13266){const _0x21d8de=a108_0x5d4f38,_0x2999f8=new Set(_0x13266['map'](_0x57c8d7=>_0x57c8d7['id'])),_0x846a72=new Set(_0x13266[_0x21d8de(0xf6)](_0x50c8dc=>_0x50c8dc[_0x21d8de(0xe9)])['filter'](_0x37e258=>_0x37e258!=null));if(_0x846a72['size']===0x0)return;const _0x42749a=_0x2a81eb[_0x21d8de(0x114)][_0x21d8de(0xfb)](_0x4ef7a1=>!_0x2999f8[_0x21d8de(0xe2)](_0x4ef7a1['id'])&&_0x4ef7a1[_0x21d8de(0xe9)]!=null&&_0x846a72[_0x21d8de(0xe2)](_0x4ef7a1['pageId']));if(_0x42749a[_0x21d8de(0xf0)]===0x0)return;const _0x4ceaf2=_0x42749a[_0x21d8de(0xf6)](_0x364fb8=>_0x21d8de(0xdc)+_0x364fb8['pageId']+_0x21d8de(0x123)+_0x364fb8['id'])[_0x21d8de(0x10c)](',\x20');throw menuError('menu_page_shared',_0x21d8de(0x105)+_0x4ceaf2+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x27e078,_0x292e20){const _0x49de34=a108_0x5d4f38,_0x54608b=cascadeForTargets(_0x292e20);if(JSON[_0x49de34(0xe7)](_0x27e078[_0x49de34(0xfd)])!==JSON['stringify'](_0x54608b))throw menuError(_0x49de34(0xb5),'Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.');}function cascadeForTargets(_0x385b43){const _0x3b63b9=a108_0x5d4f38,_0x28a563=_0x385b43[_0x3b63b9(0xf6)](_0x2d173c=>_0x2d173c[_0x3b63b9(0xe9)])[_0x3b63b9(0xfb)](_0x28798f=>_0x28798f!=null)[_0x3b63b9(0xfb)]((_0x18cfbb,_0x383a10,_0xc233b2)=>_0xc233b2[_0x3b63b9(0xf7)](_0x18cfbb)===_0x383a10);return{'pages':_0x28a563,'pageSchemaAffected':_0x28a563[_0x3b63b9(0xf0)]>0x0};}function asMenuError(_0x32ae18){const _0x23bfc2=a108_0x5d4f38;return _0x32ae18 instanceof CliError?_0x32ae18:menuError(_0x23bfc2(0xb5),_0x32ae18 instanceof Error?_0x32ae18[_0x23bfc2(0xc6)]:String(_0x32ae18));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a109_0x4864dc=a109_0x5158;(function(_0x2f542d,_0x5e7480){const _0x22df4c=a109_0x5158,_0x8eb710=_0x2f542d();while(!![]){try{const _0x24eed0=-parseInt(_0x22df4c(0x11c))/0x1+parseInt(_0x22df4c(0xfd))/0x2*(parseInt(_0x22df4c(0x133))/0x3)+parseInt(_0x22df4c(0x120))/0x4*(parseInt(_0x22df4c(0x103))/0x5)+parseInt(_0x22df4c(0x158))/0x6*(-parseInt(_0x22df4c(0x123))/0x7)+parseInt(_0x22df4c(0x10d))/0x8+parseInt(_0x22df4c(0x10f))/0x9+parseInt(_0x22df4c(0x154))/0xa*(parseInt(_0x22df4c(0x15f))/0xb);if(_0x24eed0===_0x5e7480)break;else _0x8eb710['push'](_0x8eb710['shift']());}catch(_0x517dbf){_0x8eb710['push'](_0x8eb710['shift']());}}}(a109_0x4186,0x552ad));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_0x4864dc(0xe9),'new-window':a109_0x4864dc(0x146)};export function validateExternalMenuUrl(_0x25c2a5){const _0x375042=a109_0x4864dc,_0x1c46a3=_0x25c2a5[_0x375042(0x12c)]();let _0x8c368;try{_0x8c368=new URL(_0x1c46a3);}catch{throw menuError(_0x375042(0xfb),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x375042(0x151));}if(_0x8c368[_0x375042(0x163)]!==_0x375042(0x124))throw menuError(_0x375042(0xee),_0x375042(0x132),'Provide\x20an\x20HTTPS\x20URL.');if(_0x8c368[_0x375042(0xed)]||_0x8c368[_0x375042(0x109)])throw menuError(_0x375042(0xde),_0x375042(0x148),_0x375042(0x116));return _0x1c46a3;}export const menuExternalLinkCreate={'service':a109_0x4864dc(0x13f),'command':'external-link-create','description':a109_0x4864dc(0x155),'risk':'write','structuredErrors':!![],'flags':[{'name':a109_0x4864dc(0xd6),'type':'string','required':!![],'description':'Menu\x20label'},{'name':a109_0x4864dc(0x105),'type':a109_0x4864dc(0x13a),'required':!![],'enum':[a109_0x4864dc(0xdf),a109_0x4864dc(0x14f)],'description':a109_0x4864dc(0x102)},{'name':a109_0x4864dc(0x11f),'type':a109_0x4864dc(0x13a),'required':!![],'description':a109_0x4864dc(0x145)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a109_0x4864dc(0x12d),'type':a109_0x4864dc(0x14c),'default':!![],'description':a109_0x4864dc(0x117)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x228a15){validateAddInput(_0x228a15);},async 'dryRun'(_0xd5ec8){const _0xd37394=a109_0x4864dc;validateAddInput(_0xd5ec8);const {plan:_0x544cb4}=await buildSafeAddPlan(_0xd5ec8,!![]),_0x4e7e13=_0x544cb4[_0xd37394(0xeb)],_0x143db1=createBody(_0x4e7e13);return menuDryRunResult(_0x544cb4,{'method':_0xd37394(0x127),'url':_0xd37394(0x141),'body':_0x143db1,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON[_0xd37394(0x121)](_0x4e7e13['label'])+_0xd37394(0xe3)+_0xd5ec8[_0xd37394(0xe2)](_0xd37394(0x105))+_0xd37394(0xff)});},async 'execute'(_0xf2b1e6){const _0x45183e=a109_0x4864dc;validateAddInput(_0xf2b1e6);const _0x13cd8b=await buildSafeAddPlan(_0xf2b1e6,![]),{plan:_0x219288,snapshot:_0x42bb08}=_0x13cd8b,_0xa55ce0=_0x219288[_0x45183e(0xeb)],_0x4ff76b=buildMenuLookupCommand(_0xf2b1e6[_0x45183e(0x150)]);await recheckAddSnapshot(_0xf2b1e6,_0x219288);let _0x21f18b;try{_0x21f18b=await createMenuEntity(_0xf2b1e6[_0x45183e(0x150)],_0xf2b1e6[_0x45183e(0x15c)],createBody(_0xa55ce0));}catch(_0xd7821){const _0x29913a=mapMenuApiError(_0xd7821,_0x45183e(0x135));if(!isMenuResponseLoss(_0xd7821)||_0x29913a[_0x45183e(0x110)]===_0x45183e(0x140))throw externalLinkCreateFailure(_0x29913a,_0x219288,{'stage':_0x45183e(0xf3),'failed':{},'verification':{'status':'failed','lookupCommand':_0x4ff76b}});return recoverAfterResponseLoss(_0xf2b1e6,_0x13cd8b,_0x4ff76b);}const _0x80e49d=Number(_0x21f18b?.['id']),_0x4673ff=typeof _0x21f18b?.[_0x45183e(0x108)]===_0x45183e(0x13a)?_0x21f18b['path']:'';if(!Number['isSafeInteger'](_0x80e49d)||_0x80e49d<=0x0||!_0x4673ff[_0x45183e(0x12c)]()){const _0x5d934c=menuError(_0x45183e(0x159),_0x45183e(0x138),'Run\x20'+_0x4ff76b+_0x45183e(0x115));throw externalLinkCreateFailure(_0x5d934c,_0x219288,{'stage':_0x45183e(0x130),'succeeded':Number[_0x45183e(0x152)](_0x80e49d)&&_0x80e49d>0x0?[{'id':_0x80e49d,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x80e49d)?_0x80e49d:null,'generatedPathConfirmed':Boolean(_0x4673ff[_0x45183e(0x12c)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number[_0x45183e(0x152)](_0x80e49d)&&_0x80e49d>0x0?{..._0xa55ce0,'id':_0x80e49d,'path':_0x4673ff}:_0xa55ce0,'verification':{'status':_0x45183e(0xfe),'lookupCommand':_0x4ff76b,...Number['isSafeInteger'](_0x80e49d)&&_0x80e49d>0x0?{'targetId':_0x80e49d}:{}}});}const _0x1ba48c=await readAndVerifyCreatedMenu({'appCode':_0xf2b1e6['appCode'],'cookie':_0xf2b1e6['cookie'],'plan':_0x219288,'afterPlan':_0xa55ce0,'createdId':_0x80e49d,'expectedPath':_0x4673ff,'lookupCommand':_0x4ff76b,'recovered':![]});return creationSuccess(_0x219288,_0x1ba48c[_0x45183e(0x111)],_0x1ba48c[_0x45183e(0x164)],![]);}};function validateAddInput(_0x3947da){const _0x43cc6d=a109_0x4864dc;if(!_0x3947da['str'](_0x43cc6d(0xd6))[_0x43cc6d(0x12c)]())throw CliErrors[_0x43cc6d(0x12b)](_0x43cc6d(0xd6));resolveExternalMenuType(_0x3947da),validateExternalMenuUrl(_0x3947da[_0x43cc6d(0xe2)](_0x43cc6d(0x11f))),parseParentId(_0x3947da,_0x43cc6d(0x15d)),validateSort(_0x3947da);}function resolveExternalMenuType(_0x3633a3){const _0x45e452=a109_0x4864dc,_0x50a14c=_0x3633a3[_0x45e452(0xe2)]('open-mode')[_0x45e452(0x12c)]();if(!_0x50a14c)throw CliErrors[_0x45e452(0x12b)](_0x45e452(0x105));const _0x29ee76=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x50a14c];if(!_0x29ee76)throw menuError(_0x45e452(0x107),_0x45e452(0xd7),_0x45e452(0x12e));return _0x29ee76;}async function buildAddPlan(_0x22fa20,_0x226be6){const _0x2958e2=a109_0x4864dc,_0x15c685=await fetchMutationSnapshot(_0x22fa20,_0x2958e2(0x135)),_0x367ea7=parseParentId(_0x22fa20,_0x2958e2(0x15d))??null;if(_0x367ea7!=null)requireFolder(_0x15c685,_0x367ea7);const _0x1e732f=validateSort(_0x22fa20),_0x3ddd35=_0x1e732f??nextSiblingSort(_0x15c685,_0x367ea7,'menu'),_0x37a95e=_0x22fa20['str'](_0x2958e2(0xd6))['trim'](),_0x5be8c3=resolveExternalMenuType(_0x22fa20),_0x5fe1d1=validateExternalMenuUrl(_0x22fa20['str']('url')),_0x567c05=Object[_0x2958e2(0x14e)]['hasOwnProperty'][_0x2958e2(0xdc)](_0x22fa20['rawFlags'],_0x2958e2(0x12d))?_0x22fa20['bool']('visible'):!![],_0x1abcb6={'id':null,'parentId':_0x367ea7,'label':_0x37a95e,'path':_0x2958e2(0xf6),'url':_0x5fe1d1,'type':_0x5be8c3,'visible':_0x567c05,'sort':_0x3ddd35},_0x358032=buildMenuLookupCommand(_0x22fa20[_0x2958e2(0x150)]),_0x49b10e=mutationResult({'operation':_0x2958e2(0x14d),'selector':{'parentId':_0x367ea7,'type':_0x5be8c3,'label':_0x37a95e,'url':_0x5fe1d1},'before':null,'after':_0x1abcb6,'dryRun':_0x226be6,'backend':[{'method':_0x2958e2(0x127),'path':_0x2958e2(0x141)}],'plannedActions':[{'stage':_0x2958e2(0xd8),'method':_0x2958e2(0x127),'path':_0x2958e2(0x141),'body':createBody(_0x1abcb6)}],'snapshotHash':_0x15c685[_0x2958e2(0x10e)],'warnings':[_0x2958e2(0x11b)],'verification':{'lookupCommand':_0x358032}});return{'plan':_0x49b10e,'snapshot':_0x15c685};}async function buildSafeAddPlan(_0x4f77eb,_0x4624cb){try{return await buildAddPlan(_0x4f77eb,_0x4624cb);}catch(_0xe46995){throw safeMenuAddError(_0xe46995);}}function a109_0x5158(_0x294ddb,_0x34c5b6){_0x294ddb=_0x294ddb-0xd5;const _0x4186b0=a109_0x4186();let _0x51587a=_0x4186b0[_0x294ddb];return _0x51587a;}async function recheckAddSnapshot(_0x45d269,_0x43d7ea){const _0x36ed26=a109_0x4864dc;try{await recheckMutationSnapshot(_0x45d269,_0x43d7ea,_0x36ed26(0x135));}catch(_0x11cff1){const _0x2c622c=getFailureRecord(_0x11cff1);throw externalLinkCreateFailure(_0x11cff1,_0x43d7ea,{'stage':_0x36ed26(0xf4),'failed':{..._0x2c622c?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0x2c622c['expectedSnapshotHash']}:{},..._0x2c622c?.['currentSnapshotHash']?{'currentSnapshotHash':_0x2c622c['currentSnapshotHash']}:{}}});}}function createBody(_0x29d3c4){const _0x3c16e7=a109_0x4864dc;return{'parentId':toApiParentId(_0x29d3c4[_0x3c16e7(0xdd)]),'label':String(_0x29d3c4[_0x3c16e7(0xd6)]),'type':String(_0x29d3c4[_0x3c16e7(0xf9)]),'url':String(_0x29d3c4[_0x3c16e7(0x11f)]),'visible':Boolean(_0x29d3c4[_0x3c16e7(0x12d)]),'sort':Number(_0x29d3c4[_0x3c16e7(0x10a)]),'extend':{}};}function buildMenuLookupCommand(_0x526e6a){const _0x3aa5e6=a109_0x4864dc,_0x314a2e='\x27'+_0x526e6a[_0x3aa5e6(0xe7)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x3aa5e6(0x143)+_0x314a2e+_0x3aa5e6(0xe8);}function a109_0x4186(){const _0x20535a=['protocol','fact','menu_sort_overflow','rawerror','label','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','create-menu','parent','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','plan','call','parentId','menu_url_credentials_forbidden','embedded','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','create-recovery','str','\x20with\x20','createdId','External\x20menu\x20creation\x20failed.','get','replace','\x20--format\x20compress','iframe','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','after','selector','username','menu_url_https_required','length','afterPlan','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','toLowerCase','create','pre-write-recheck','byId','<platform-generated>','filter','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','type','includes','menu_url_invalid','isArray','2XngpXW','failed','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','expectedPath','lookupCommand','How\x20to\x20open\x20the\x20external\x20website','15ETzycW','data','open-mode','has','menu_open_mode_invalid','path','password','sort','map','menu_verification_failed','2792704aqonhk','hash','4882113gkJpwH','code','snapshot','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','Created\x20external\x20menu\x20','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','Whether\x20the\x20menu\x20is\x20visible','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','visibility','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','616347TOwFhz','\x20could\x20not\x20be\x20verified.','verification','url','119492ZIMYex','stringify','menu\x20list','413945zKEYRA','https:','readbackerror','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','POST','cause','\x20after\x20response\x20loss.','object','flagMissing','trim','visible','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Recovered\x20menu\x20','create-response-validation','Created\x20menu\x20','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','51873uDsuPB','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','create\x20external\x20menu','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','menu_create_recovery_required','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','fromEntries','string','recovered','menu_sort_invalid','Menu\x20','\x20has\x20an\x20unexpected\x20','menu','menu_permission_denied','/smartapi/menu/create','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','rabetbase\x20menu\x20list\x20--appcode\x20','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','External\x20HTTPS\x20URL','link','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Run\x20','entries','causemessage','boolean','add','prototype','new-window','appCode','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','isSafeInteger','menu_parent_not_folder','680hvcPUS','Create\x20an\x20external\x20website\x20link\x20menu','\x20has\x20an\x20unexpected\x20generated\x20path.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','30HvaYmJ','menu_create_response_invalid','succeeded','plannedActions','cookie','parent-id','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','42449gbTxJV','menu_mutation_failed','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Recovered\x20created\x20external\x20menu\x20'];a109_0x4186=function(){return _0x20535a;};return a109_0x4186();}async function recoverAfterResponseLoss(_0x1f84de,_0x212592,_0x131d8a){const _0x20212f=a109_0x4864dc,{plan:_0x4b8b9b,snapshot:_0x59352b}=_0x212592,_0x4a218d=_0x4b8b9b[_0x20212f(0xeb)];let _0x5ef15e;try{_0x5ef15e=await fetchMenuSnapshot(_0x1f84de[_0x20212f(0x150)],_0x1f84de[_0x20212f(0x15c)]);}catch(_0x4ccc03){throw recoveryRequiredFailure(_0x4b8b9b,_0x131d8a,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x239deb=_0x5ef15e['menus'][_0x20212f(0xf7)](_0x16f4fc=>_0x16f4fc[_0x20212f(0xdd)]===_0x4a218d['parentId']&&_0x16f4fc[_0x20212f(0xf9)]===_0x4a218d[_0x20212f(0xf9)]&&_0x16f4fc[_0x20212f(0xd6)]===_0x4a218d[_0x20212f(0xd6)]&&_0x16f4fc['url']===_0x4a218d['url']),_0x4c7514=_0x239deb[_0x20212f(0xf7)](_0x387270=>!_0x59352b[_0x20212f(0xf5)]['has'](_0x387270['id'])),_0x1fed18=_0x239deb[_0x20212f(0xf7)](_0x781f34=>_0x59352b['byId'][_0x20212f(0x106)](_0x781f34['id']));if(_0x239deb[_0x20212f(0xef)]!==0x1||_0x4c7514[_0x20212f(0xef)]!==0x1)throw recoveryRequiredFailure(_0x4b8b9b,_0x131d8a,{'matchCount':_0x239deb['length'],'newMatchCount':_0x4c7514[_0x20212f(0xef)],'preexistingMatchCount':_0x1fed18['length']});const _0x189642=_0x4c7514[0x0];try{verifyCreatedFact(_0x189642,_0x189642['id'],_0x4a218d,null);}catch(_0x323d74){const _0x4b0168=_0x323d74 instanceof Error&&_0x20212f(0x110)in _0x323d74?_0x323d74:menuError('menu_verification_failed',_0x20212f(0x12f)+_0x189642['id']+_0x20212f(0x11d),_0x20212f(0x149)+_0x131d8a+_0x20212f(0x147));throw externalLinkCreateFailure(_0x4b0168,_0x4b8b9b,{'stage':_0x20212f(0x11e),'succeeded':[{'id':_0x189642['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x189642['id'],'finalFactsConfirmed':![]},'after':_0x189642,'warnings':[_0x20212f(0x13d)+_0x189642['id']+_0x20212f(0x126)],'verification':{'status':_0x20212f(0xfe),'targetId':_0x189642['id'],'recovered':!![],'lookupCommand':_0x131d8a}});}return creationSuccess(_0x4b8b9b,_0x5ef15e,_0x189642,!![]);}function recoveryRequiredFailure(_0x1eda32,_0x564fe8,_0x2d490e){const _0x3ed107=a109_0x4864dc,_0x4108d5=menuError(_0x3ed107(0x137),_0x3ed107(0x114),'Run\x20'+_0x564fe8+_0x3ed107(0x119));return externalLinkCreateFailure(_0x4108d5,_0x1eda32,{'stage':_0x3ed107(0xe1),'failed':_0x2d490e,'warnings':[_0x3ed107(0x112)],'verification':{'status':_0x3ed107(0xfe),..._0x2d490e,'lookupCommand':_0x564fe8}});}async function readAndVerifyCreatedMenu(_0xdef9df){const _0x891247=a109_0x4864dc;let _0x26c3dd;try{_0x26c3dd=await fetchMenuSnapshot(_0xdef9df[_0x891247(0x150)],_0xdef9df[_0x891247(0x15c)]);}catch(_0x455727){const _0x236f33=menuError(_0x891247(0x10c),_0x891247(0x13d)+_0xdef9df['createdId']+_0x891247(0xda),_0x891247(0x149)+_0xdef9df['lookupCommand']+_0x891247(0xea));throw externalLinkCreateFailure(_0x236f33,_0xdef9df[_0x891247(0xdb)],{'stage':_0x891247(0x11e),'succeeded':[{'id':_0xdef9df['createdId'],'created':!![]}],'failed':{'id':_0xdef9df[_0x891247(0xe4)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0xdef9df[_0x891247(0xf0)],'id':_0xdef9df[_0x891247(0xe4)],'path':_0xdef9df['expectedPath']},'warnings':[_0x891247(0x13d)+_0xdef9df[_0x891247(0xe4)]+_0x891247(0xf1)],'verification':{'status':'failed','targetId':_0xdef9df[_0x891247(0xe4)],'lookupCommand':_0xdef9df['lookupCommand']}});}const _0x435433=_0x26c3dd[_0x891247(0xf5)][_0x891247(0xe6)](_0xdef9df[_0x891247(0xe4)]);try{if(!_0x435433)throw menuError('menu_verification_failed',_0x891247(0x131)+_0xdef9df['createdId']+_0x891247(0x15e),_0x891247(0x149)+_0xdef9df[_0x891247(0x101)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x435433,_0xdef9df[_0x891247(0xe4)],_0xdef9df[_0x891247(0xf0)],_0xdef9df[_0x891247(0x100)]);}catch(_0x257cbb){const _0x3b75bc=_0x257cbb instanceof Error&&_0x891247(0x110)in _0x257cbb?_0x257cbb:menuError(_0x891247(0x10c),_0x891247(0x131)+_0xdef9df[_0x891247(0xe4)]+'\x20failed\x20final\x20verification.',_0x891247(0x149)+_0xdef9df[_0x891247(0x101)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x3b75bc,_0xdef9df[_0x891247(0xdb)],{'stage':'verification','succeeded':[{'id':_0xdef9df[_0x891247(0xe4)],'created':!![]}],'failed':{'id':_0xdef9df['createdId'],'finalFactsConfirmed':![]},'after':_0x435433??{..._0xdef9df[_0x891247(0xf0)],'id':_0xdef9df['createdId'],'path':_0xdef9df['expectedPath']},'warnings':['Menu\x20'+_0xdef9df[_0x891247(0xe4)]+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x891247(0xfe),'targetId':_0xdef9df['createdId'],'recovered':_0xdef9df[_0x891247(0x13b)],'lookupCommand':_0xdef9df[_0x891247(0x101)]}});}return{'snapshot':_0x26c3dd,'fact':_0x435433};}function verifyCreatedFact(_0x4c6c90,_0x44c6e6,_0x2d117a,_0x2628f4){const _0x3ed332=a109_0x4864dc;if(!Number[_0x3ed332(0x152)](_0x4c6c90['id'])||_0x4c6c90['id']<=0x0||_0x4c6c90['id']!==_0x44c6e6)throw menuError(_0x3ed332(0x10c),_0x3ed332(0x134),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x141a1a=[[_0x3ed332(0xd9),_0x4c6c90['parentId'],_0x2d117a['parentId']],['type',_0x4c6c90[_0x3ed332(0xf9)],_0x2d117a[_0x3ed332(0xf9)]],['label',_0x4c6c90[_0x3ed332(0xd6)],_0x2d117a[_0x3ed332(0xd6)]],['URL',_0x4c6c90[_0x3ed332(0x11f)],_0x2d117a[_0x3ed332(0x11f)]],[_0x3ed332(0x11a),_0x4c6c90[_0x3ed332(0x12d)],_0x2d117a[_0x3ed332(0x12d)]],[_0x3ed332(0x10a),_0x4c6c90[_0x3ed332(0x10a)],_0x2d117a[_0x3ed332(0x10a)]]];for(const [_0xe45adb,_0x28e33c,_0x5ea319]of _0x141a1a){if(_0x28e33c!==_0x5ea319)throw menuError(_0x3ed332(0x10c),'Created\x20menu\x20'+_0x4c6c90['id']+_0x3ed332(0x13e)+_0xe45adb+'.',_0x3ed332(0x144));}if(!_0x4c6c90[_0x3ed332(0x108)]['trim']()||_0x2628f4!==null&&_0x4c6c90[_0x3ed332(0x108)]!==_0x2628f4)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x4c6c90['id']+_0x3ed332(0x156),_0x3ed332(0x144));}function creationSuccess(_0x25593c,_0x54fb48,_0x2d0347,_0x2ffb30){const _0x11fbc8=a109_0x4864dc,_0x1e63e6=mutationResult({..._0x25593c,'after':_0x2d0347,'dryRun':![],'succeeded':[{'id':_0x2d0347['id'],'created':!![],'recovered':_0x2ffb30}],'verification':{'checkedBy':_0x11fbc8(0x122),'snapshotHash':_0x54fb48[_0x11fbc8(0x10e)],'targetId':_0x2d0347['id'],'recovered':_0x2ffb30,'path':_0x2d0347['path']}});return{'ok':!![],'message':_0x2ffb30?_0x11fbc8(0x162)+_0x2d0347['id']+_0x11fbc8(0x129):_0x11fbc8(0x113)+_0x2d0347['id']+'.','data':{..._0x1e63e6,'recovered':_0x2ffb30}};}function externalLinkCreateFailure(_0x43c486,_0x364737,_0x338465){const _0x50f6e2=a109_0x4864dc;return menuFailure(safeMenuAddError(_0x43c486),redactFailurePlan(_0x364737),{..._0x338465,'succeeded':_0x338465['succeeded']?.[_0x50f6e2(0x10b)](redactFailureRecord),'failed':_0x338465['failed']?redactFailureRecord(_0x338465[_0x50f6e2(0xfe)]):undefined,'verification':_0x338465[_0x50f6e2(0x11e)]?redactFailureRecord(_0x338465[_0x50f6e2(0x11e)]):undefined,'after':_0x338465[_0x50f6e2(0xeb)]===undefined?undefined:redactFailureValue(_0x338465['after'])});}function redactFailurePlan(_0x4da5ae){const _0x5431c9=a109_0x4864dc;return{..._0x4da5ae,'selector':redactFailureRecord(_0x4da5ae[_0x5431c9(0xec)]),'before':redactFailureValue(_0x4da5ae['before']),'after':redactFailureValue(_0x4da5ae[_0x5431c9(0xeb)]),'plannedActions':_0x4da5ae[_0x5431c9(0x15b)]?.[_0x5431c9(0x10b)](_0x22092f=>({..._0x22092f,'body':redactFailureRecord(_0x22092f['body'])})),'succeeded':_0x4da5ae[_0x5431c9(0x15a)][_0x5431c9(0x10b)](redactFailureRecord),'failed':_0x4da5ae[_0x5431c9(0xfe)][_0x5431c9(0x10b)](redactFailureRecord),'verification':_0x4da5ae[_0x5431c9(0x11e)]?redactFailureRecord(_0x4da5ae[_0x5431c9(0x11e)]):undefined};}function redactFailureRecord(_0x595e3a){return redactFailureValue(_0x595e3a);}function redactFailureValue(_0x49c2cb,_0x132697=''){const _0x59d13f=a109_0x4864dc,_0x1edf18=_0x132697[_0x59d13f(0xf2)]()['replace'](/[^a-z0-9]/g,'');if([_0x59d13f(0x128),_0x59d13f(0x14b),_0x59d13f(0x125),_0x59d13f(0xd5)][_0x59d13f(0xfa)](_0x1edf18))return'<redacted>';if(Array[_0x59d13f(0xfc)](_0x49c2cb))return _0x49c2cb[_0x59d13f(0x10b)](_0x20173a=>redactFailureValue(_0x20173a));if(_0x49c2cb&&typeof _0x49c2cb==='object')return Object[_0x59d13f(0x139)](Object[_0x59d13f(0x14a)](_0x49c2cb)[_0x59d13f(0x10b)](([_0x4acae7,_0x115b32])=>[_0x4acae7,redactFailureValue(_0x115b32,_0x4acae7)]));return _0x49c2cb;}function safeMenuAddError(_0x4f9dbd){const _0x26757e=a109_0x4864dc,_0x50394a=_0x4f9dbd instanceof CliError?_0x4f9dbd[_0x26757e(0x110)]:_0x26757e(0x160);switch(_0x50394a){case'menu_state_drift':return menuError(_0x50394a,_0x26757e(0x142),_0x26757e(0x136));case _0x26757e(0x140):return menuError(_0x50394a,_0x26757e(0x157),_0x26757e(0xf8));case _0x26757e(0x159):return menuError(_0x50394a,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_verification_failed':return menuError(_0x50394a,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.',_0x26757e(0x118));case _0x26757e(0x137):return menuError(_0x50394a,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x26757e(0xe0));case'menu_mutation_failed':case'menu_not_found':case _0x26757e(0x153):case _0x26757e(0x13c):case _0x26757e(0x165):return menuError(_0x50394a,_0x26757e(0xe5),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError('menu_mutation_failed',_0x26757e(0xe5),_0x26757e(0x161));}}function getFailureRecord(_0x58a408){const _0x55f6f6=a109_0x4864dc;if(!(_0x58a408 instanceof Error)||!(_0x55f6f6(0x104)in _0x58a408))return undefined;const _0x54fbb9=_0x58a408[_0x55f6f6(0x104)];if(!_0x54fbb9||typeof _0x54fbb9!==_0x55f6f6(0x12a))return undefined;const _0x5a1cae=_0x54fbb9[_0x55f6f6(0xfe)];if(!Array[_0x55f6f6(0xfc)](_0x5a1cae)||!_0x5a1cae[0x0]||typeof _0x5a1cae[0x0]!=='object')return undefined;return _0x5a1cae[0x0];}
|
|
1
|
+
const a109_0x543840=a109_0x1f11;function a109_0x1e91(){const _0x4d4f1f=['Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','path','menu_create_response_invalid','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','\x27\x5c\x27\x27','str','code','string','add','failed','selector','appCode','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','create-menu','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','data','type','How\x20to\x20open\x20the\x20external\x20website','stringify','create','currentSnapshotHash','Created\x20menu\x20','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','external-link-create','<platform-generated>','open-mode','Created\x20external\x20menu\x20','cause','766926lNTTHd','map','hasOwnProperty','visible','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','trim','replace','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','hash','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','menu_url_invalid','1915775QTJjVH','Menu\x20','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','create\x20external\x20menu','fact','lookupCommand','\x20has\x20an\x20unexpected\x20','bool','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','plannedActions','https:','<redacted>','isSafeInteger','\x20failed\x20final\x20verification.','verification','menu_sort_overflow','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','byId','Create\x20an\x20external\x20website\x20link\x20menu','Would\x20create\x20external\x20website\x20link\x20menu\x20','entries','menu_state_drift','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','External\x20HTTPS\x20URL','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','menus','succeeded','menu_mutation_failed','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','Whether\x20the\x20menu\x20is\x20visible','Run\x20','label','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','menu','parent-id','expectedPath','662553UvjBYS','fromEntries','toLowerCase','prototype','expectedSnapshotHash','new-window','2908010BYMtMP','create-response-validation','after','filter','username','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Provide\x20an\x20HTTPS\x20URL.','\x20has\x20an\x20unexpected\x20generated\x20path.','\x20--format\x20compress','link','\x20after\x20response\x20loss.','recovered','createdId','menu_not_found','menu_open_mode_invalid','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','2030556ODPvTC','menu_permission_denied','2249220oNYdbX','has','snapshot','menu_create_recovery_required','get','Recovered\x20created\x20external\x20menu\x20','visibility','before','cookie','write','External\x20menu\x20creation\x20failed.','menu_sort_invalid','url','length','217644fBkraq','object','rawFlags','/smartapi/menu/create','menu_verification_failed','menu_parent_not_folder','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','flagMissing','parentId','menu\x20list','POST','sort','embedded','\x20with\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','protocol','boolean','rawerror','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','afterPlan','plan','menu_url_https_required','Recovered\x20menu\x20','parent','causemessage'];a109_0x1e91=function(){return _0x4d4f1f;};return a109_0x1e91();}(function(_0x38bc74,_0x33a2f3){const _0xb6db5b=a109_0x1f11,_0x4be77a=_0x38bc74();while(!![]){try{const _0x1e50c6=parseInt(_0xb6db5b(0x1ed))/0x1+parseInt(_0xb6db5b(0x1ba))/0x2+parseInt(_0xb6db5b(0x203))/0x3+parseInt(_0xb6db5b(0x184))/0x4+-parseInt(_0xb6db5b(0x1c6))/0x5+-parseInt(_0xb6db5b(0x205))/0x6+-parseInt(_0xb6db5b(0x1f3))/0x7;if(_0x1e50c6===_0x33a2f3)break;else _0x4be77a['push'](_0x4be77a['shift']());}catch(_0x386c60){_0x4be77a['push'](_0x4be77a['shift']());}}}(a109_0x1e91,0x936b0));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':a109_0x543840(0x1fc)};export function validateExternalMenuUrl(_0x3fc3a0){const _0x15c8a9=a109_0x543840,_0x1cfdc8=_0x3fc3a0[_0x15c8a9(0x1bf)]();let _0x5e7fcb;try{_0x5e7fcb=new URL(_0x1cfdc8);}catch{throw menuError(_0x15c8a9(0x1c5),_0x15c8a9(0x18a),_0x15c8a9(0x1c1));}if(_0x5e7fcb[_0x15c8a9(0x194)]!==_0x15c8a9(0x1d3))throw menuError(_0x15c8a9(0x19a),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0x15c8a9(0x1f9));if(_0x5e7fcb[_0x15c8a9(0x1f7)]||_0x5e7fcb['password'])throw menuError('menu_url_credentials_forbidden','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.',_0x15c8a9(0x1a1));return _0x1cfdc8;}export const menuExternalLinkCreate={'service':a109_0x543840(0x1ea),'command':a109_0x543840(0x1b5),'description':a109_0x543840(0x1db),'risk':a109_0x543840(0x17f),'structuredErrors':!![],'flags':[{'name':'label','type':a109_0x543840(0x1a5),'required':!![],'description':'Menu\x20label'},{'name':a109_0x543840(0x1b7),'type':a109_0x543840(0x1a5),'required':!![],'enum':[a109_0x543840(0x191),a109_0x543840(0x1f2)],'description':a109_0x543840(0x1af)},{'name':'url','type':a109_0x543840(0x1a5),'required':!![],'description':a109_0x543840(0x1e0)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a109_0x543840(0x1bd),'type':a109_0x543840(0x195),'default':!![],'description':a109_0x543840(0x1e6)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5787cb){validateAddInput(_0x5787cb);},async 'dryRun'(_0x61d83f){const _0x492705=a109_0x543840;validateAddInput(_0x61d83f);const {plan:_0x529111}=await buildSafeAddPlan(_0x61d83f,!![]),_0x38ba38=_0x529111[_0x492705(0x1f5)],_0x268a74=createBody(_0x38ba38);return menuDryRunResult(_0x529111,{'method':'POST','url':_0x492705(0x187),'body':_0x268a74,'description':_0x492705(0x1dc)+JSON[_0x492705(0x1b0)](_0x38ba38[_0x492705(0x1e8)])+_0x492705(0x192)+_0x61d83f[_0x492705(0x1a3)](_0x492705(0x1b7))+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x2b0361){const _0x20db89=a109_0x543840;validateAddInput(_0x2b0361);const _0xda376e=await buildSafeAddPlan(_0x2b0361,![]),{plan:_0x29ea56,snapshot:_0x57ee37}=_0xda376e,_0x4336e0=_0x29ea56['after'],_0x25d842=buildMenuLookupCommand(_0x2b0361[_0x20db89(0x1a9)]);await recheckAddSnapshot(_0x2b0361,_0x29ea56);let _0x4fdabb;try{_0x4fdabb=await createMenuEntity(_0x2b0361[_0x20db89(0x1a9)],_0x2b0361['cookie'],createBody(_0x4336e0));}catch(_0xa254b8){const _0x343a0b=mapMenuApiError(_0xa254b8,'create\x20external\x20menu');if(!isMenuResponseLoss(_0xa254b8)||_0x343a0b[_0x20db89(0x1a4)]===_0x20db89(0x204))throw externalLinkCreateFailure(_0x343a0b,_0x29ea56,{'stage':_0x20db89(0x1b1),'failed':{},'verification':{'status':_0x20db89(0x1a7),'lookupCommand':_0x25d842}});return recoverAfterResponseLoss(_0x2b0361,_0xda376e,_0x25d842);}const _0x1a8980=Number(_0x4fdabb?.['id']),_0x1e8c89=typeof _0x4fdabb?.['path']==='string'?_0x4fdabb[_0x20db89(0x19f)]:'';if(!Number[_0x20db89(0x1d5)](_0x1a8980)||_0x1a8980<=0x0||!_0x1e8c89[_0x20db89(0x1bf)]()){const _0x3643d2=menuError(_0x20db89(0x1a0),_0x20db89(0x1c9),'Run\x20'+_0x25d842+_0x20db89(0x1c4));throw externalLinkCreateFailure(_0x3643d2,_0x29ea56,{'stage':_0x20db89(0x1f4),'succeeded':Number[_0x20db89(0x1d5)](_0x1a8980)&&_0x1a8980>0x0?[{'id':_0x1a8980,'created':!![]}]:[],'failed':{'createdId':Number[_0x20db89(0x1d5)](_0x1a8980)?_0x1a8980:null,'generatedPathConfirmed':Boolean(_0x1e8c89['trim']())},'warnings':[_0x20db89(0x1d1)],'after':Number[_0x20db89(0x1d5)](_0x1a8980)&&_0x1a8980>0x0?{..._0x4336e0,'id':_0x1a8980,'path':_0x1e8c89}:_0x4336e0,'verification':{'status':_0x20db89(0x1a7),'lookupCommand':_0x25d842,...Number[_0x20db89(0x1d5)](_0x1a8980)&&_0x1a8980>0x0?{'targetId':_0x1a8980}:{}}});}const _0x4bfd0c=await readAndVerifyCreatedMenu({'appCode':_0x2b0361['appCode'],'cookie':_0x2b0361[_0x20db89(0x20d)],'plan':_0x29ea56,'afterPlan':_0x4336e0,'createdId':_0x1a8980,'expectedPath':_0x1e8c89,'lookupCommand':_0x25d842,'recovered':![]});return creationSuccess(_0x29ea56,_0x4bfd0c[_0x20db89(0x207)],_0x4bfd0c[_0x20db89(0x1cd)],![]);}};function validateAddInput(_0x412fb3){const _0x1ae4ba=a109_0x543840;if(!_0x412fb3['str'](_0x1ae4ba(0x1e8))[_0x1ae4ba(0x1bf)]())throw CliErrors[_0x1ae4ba(0x18c)](_0x1ae4ba(0x1e8));resolveExternalMenuType(_0x412fb3),validateExternalMenuUrl(_0x412fb3[_0x1ae4ba(0x1a3)](_0x1ae4ba(0x182))),parseParentId(_0x412fb3,_0x1ae4ba(0x1eb)),validateSort(_0x412fb3);}function resolveExternalMenuType(_0x5b9457){const _0x206a7e=a109_0x543840,_0x5f2714=_0x5b9457['str']('open-mode')[_0x206a7e(0x1bf)]();if(!_0x5f2714)throw CliErrors[_0x206a7e(0x18c)]('open-mode');const _0x51718b=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x5f2714];if(!_0x51718b)throw menuError(_0x206a7e(0x201),_0x206a7e(0x1ca),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x51718b;}async function buildAddPlan(_0x5ea5ae,_0x7f57df){const _0xf59efc=a109_0x543840,_0xdc4e14=await fetchMutationSnapshot(_0x5ea5ae,_0xf59efc(0x1cc)),_0x158291=parseParentId(_0x5ea5ae,_0xf59efc(0x1eb))??null;if(_0x158291!=null)requireFolder(_0xdc4e14,_0x158291);const _0x1df611=validateSort(_0x5ea5ae),_0x3bc296=_0x1df611??nextSiblingSort(_0xdc4e14,_0x158291,_0xf59efc(0x1ea)),_0x5028fa=_0x5ea5ae['str'](_0xf59efc(0x1e8))[_0xf59efc(0x1bf)](),_0x4ff5fe=resolveExternalMenuType(_0x5ea5ae),_0x4a47e6=validateExternalMenuUrl(_0x5ea5ae[_0xf59efc(0x1a3)](_0xf59efc(0x182))),_0x32e88b=Object[_0xf59efc(0x1f0)][_0xf59efc(0x1bc)]['call'](_0x5ea5ae[_0xf59efc(0x186)],_0xf59efc(0x1bd))?_0x5ea5ae[_0xf59efc(0x1d0)]('visible'):!![],_0x288020={'id':null,'parentId':_0x158291,'label':_0x5028fa,'path':_0xf59efc(0x1b6),'url':_0x4a47e6,'type':_0x4ff5fe,'visible':_0x32e88b,'sort':_0x3bc296},_0x59d745=buildMenuLookupCommand(_0x5ea5ae[_0xf59efc(0x1a9)]),_0xd4d8c7=mutationResult({'operation':_0xf59efc(0x1a6),'selector':{'parentId':_0x158291,'type':_0x4ff5fe,'label':_0x5028fa,'url':_0x4a47e6},'before':null,'after':_0x288020,'dryRun':_0x7f57df,'backend':[{'method':_0xf59efc(0x18f),'path':_0xf59efc(0x187)}],'plannedActions':[{'stage':_0xf59efc(0x1ab),'method':'POST','path':_0xf59efc(0x187),'body':createBody(_0x288020)}],'snapshotHash':_0xdc4e14[_0xf59efc(0x1c3)],'warnings':[_0xf59efc(0x1aa)],'verification':{'lookupCommand':_0x59d745}});return{'plan':_0xd4d8c7,'snapshot':_0xdc4e14};}function a109_0x1f11(_0xad282f,_0x1a2246){_0xad282f=_0xad282f-0x17f;const _0x1e918a=a109_0x1e91();let _0x1f1134=_0x1e918a[_0xad282f];return _0x1f1134;}async function buildSafeAddPlan(_0x26bf62,_0x2675d9){try{return await buildAddPlan(_0x26bf62,_0x2675d9);}catch(_0x4df0ec){throw safeMenuAddError(_0x4df0ec);}}async function recheckAddSnapshot(_0x2e5afd,_0x456e2b){const _0x29c08b=a109_0x543840;try{await recheckMutationSnapshot(_0x2e5afd,_0x456e2b,'create\x20external\x20menu');}catch(_0x7ca8c0){const _0x5374a8=getFailureRecord(_0x7ca8c0);throw externalLinkCreateFailure(_0x7ca8c0,_0x456e2b,{'stage':'pre-write-recheck','failed':{..._0x5374a8?.[_0x29c08b(0x1f1)]?{'expectedSnapshotHash':_0x5374a8['expectedSnapshotHash']}:{},..._0x5374a8?.[_0x29c08b(0x1b2)]?{'currentSnapshotHash':_0x5374a8[_0x29c08b(0x1b2)]}:{}}});}}function createBody(_0x5235d8){const _0x207495=a109_0x543840;return{'parentId':toApiParentId(_0x5235d8[_0x207495(0x18d)]),'label':String(_0x5235d8[_0x207495(0x1e8)]),'type':String(_0x5235d8[_0x207495(0x1ae)]),'url':String(_0x5235d8[_0x207495(0x182)]),'visible':Boolean(_0x5235d8[_0x207495(0x1bd)]),'sort':Number(_0x5235d8[_0x207495(0x190)]),'extend':{}};}function buildMenuLookupCommand(_0x42f055){const _0x3862bb=a109_0x543840,_0x3bac97='\x27'+_0x42f055[_0x3862bb(0x1c0)](/'/g,_0x3862bb(0x1a2))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x3bac97+_0x3862bb(0x1fb);}async function recoverAfterResponseLoss(_0x69c073,_0x3b2540,_0x1aec42){const _0x51d484=a109_0x543840,{plan:_0x346d08,snapshot:_0xbef92a}=_0x3b2540,_0x4cfeea=_0x346d08[_0x51d484(0x1f5)];let _0x41d75c;try{_0x41d75c=await fetchMenuSnapshot(_0x69c073['appCode'],_0x69c073[_0x51d484(0x20d)]);}catch(_0x3f2080){throw recoveryRequiredFailure(_0x346d08,_0x1aec42,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x50cd93=_0x41d75c[_0x51d484(0x1e2)][_0x51d484(0x1f6)](_0x27944b=>_0x27944b[_0x51d484(0x18d)]===_0x4cfeea[_0x51d484(0x18d)]&&_0x27944b[_0x51d484(0x1ae)]===_0x4cfeea[_0x51d484(0x1ae)]&&_0x27944b[_0x51d484(0x1e8)]===_0x4cfeea[_0x51d484(0x1e8)]&&_0x27944b[_0x51d484(0x182)]===_0x4cfeea[_0x51d484(0x182)]),_0x4ecedd=_0x50cd93['filter'](_0x196654=>!_0xbef92a['byId'][_0x51d484(0x206)](_0x196654['id'])),_0x30cb93=_0x50cd93['filter'](_0x47e2be=>_0xbef92a[_0x51d484(0x1da)][_0x51d484(0x206)](_0x47e2be['id']));if(_0x50cd93['length']!==0x1||_0x4ecedd[_0x51d484(0x183)]!==0x1)throw recoveryRequiredFailure(_0x346d08,_0x1aec42,{'matchCount':_0x50cd93['length'],'newMatchCount':_0x4ecedd[_0x51d484(0x183)],'preexistingMatchCount':_0x30cb93[_0x51d484(0x183)]});const _0x192f17=_0x4ecedd[0x0];try{verifyCreatedFact(_0x192f17,_0x192f17['id'],_0x4cfeea,null);}catch(_0x545c9e){const _0x304edf=_0x545c9e instanceof Error&&_0x51d484(0x1a4)in _0x545c9e?_0x545c9e:menuError(_0x51d484(0x188),_0x51d484(0x19b)+_0x192f17['id']+'\x20could\x20not\x20be\x20verified.',_0x51d484(0x1e7)+_0x1aec42+_0x51d484(0x1df));throw externalLinkCreateFailure(_0x304edf,_0x346d08,{'stage':_0x51d484(0x1d7),'succeeded':[{'id':_0x192f17['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x192f17['id'],'finalFactsConfirmed':![]},'after':_0x192f17,'warnings':[_0x51d484(0x1c7)+_0x192f17['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':'failed','targetId':_0x192f17['id'],'recovered':!![],'lookupCommand':_0x1aec42}});}return creationSuccess(_0x346d08,_0x41d75c,_0x192f17,!![]);}function recoveryRequiredFailure(_0x52b927,_0x147d65,_0x1a8b54){const _0x3740bb=a109_0x543840,_0x2aecc7=menuError(_0x3740bb(0x208),_0x3740bb(0x197),_0x3740bb(0x1e7)+_0x147d65+_0x3740bb(0x1e1));return externalLinkCreateFailure(_0x2aecc7,_0x52b927,{'stage':'create-recovery','failed':_0x1a8b54,'warnings':[_0x3740bb(0x1d9)],'verification':{'status':_0x3740bb(0x1a7),..._0x1a8b54,'lookupCommand':_0x147d65}});}async function readAndVerifyCreatedMenu(_0x4c34ce){const _0x502352=a109_0x543840;let _0x3bccfa;try{_0x3bccfa=await fetchMenuSnapshot(_0x4c34ce[_0x502352(0x1a9)],_0x4c34ce[_0x502352(0x20d)]);}catch(_0x119526){const _0x484204=menuError('menu_verification_failed',_0x502352(0x1c7)+_0x4c34ce[_0x502352(0x1ff)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x502352(0x1e7)+_0x4c34ce['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x484204,_0x4c34ce['plan'],{'stage':_0x502352(0x1d7),'succeeded':[{'id':_0x4c34ce['createdId'],'created':!![]}],'failed':{'id':_0x4c34ce[_0x502352(0x1ff)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x4c34ce[_0x502352(0x198)],'id':_0x4c34ce['createdId'],'path':_0x4c34ce['expectedPath']},'warnings':[_0x502352(0x1c7)+_0x4c34ce['createdId']+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':'failed','targetId':_0x4c34ce[_0x502352(0x1ff)],'lookupCommand':_0x4c34ce[_0x502352(0x1ce)]}});}const _0x280e38=_0x3bccfa[_0x502352(0x1da)][_0x502352(0x209)](_0x4c34ce[_0x502352(0x1ff)]);try{if(!_0x280e38)throw menuError(_0x502352(0x188),'Created\x20menu\x20'+_0x4c34ce[_0x502352(0x1ff)]+_0x502352(0x1e5),_0x502352(0x1e7)+_0x4c34ce['lookupCommand']+_0x502352(0x1ac));verifyCreatedFact(_0x280e38,_0x4c34ce['createdId'],_0x4c34ce[_0x502352(0x198)],_0x4c34ce[_0x502352(0x1ec)]);}catch(_0x512d55){const _0x27fcc5=_0x512d55 instanceof Error&&_0x502352(0x1a4)in _0x512d55?_0x512d55:menuError(_0x502352(0x188),_0x502352(0x1b3)+_0x4c34ce[_0x502352(0x1ff)]+_0x502352(0x1d6),_0x502352(0x1e7)+_0x4c34ce[_0x502352(0x1ce)]+_0x502352(0x1ac));throw externalLinkCreateFailure(_0x27fcc5,_0x4c34ce[_0x502352(0x199)],{'stage':_0x502352(0x1d7),'succeeded':[{'id':_0x4c34ce['createdId'],'created':!![]}],'failed':{'id':_0x4c34ce[_0x502352(0x1ff)],'finalFactsConfirmed':![]},'after':_0x280e38??{..._0x4c34ce[_0x502352(0x198)],'id':_0x4c34ce[_0x502352(0x1ff)],'path':_0x4c34ce['expectedPath']},'warnings':[_0x502352(0x1c7)+_0x4c34ce['createdId']+_0x502352(0x1be)],'verification':{'status':_0x502352(0x1a7),'targetId':_0x4c34ce[_0x502352(0x1ff)],'recovered':_0x4c34ce[_0x502352(0x1fe)],'lookupCommand':_0x4c34ce[_0x502352(0x1ce)]}});}return{'snapshot':_0x3bccfa,'fact':_0x280e38};}function verifyCreatedFact(_0x161305,_0x4584c1,_0x928e67,_0x5569ef){const _0x4af1fd=a109_0x543840;if(!Number[_0x4af1fd(0x1d5)](_0x161305['id'])||_0x161305['id']<=0x0||_0x161305['id']!==_0x4584c1)throw menuError('menu_verification_failed',_0x4af1fd(0x1c8),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x2ec50a=[[_0x4af1fd(0x19c),_0x161305[_0x4af1fd(0x18d)],_0x928e67['parentId']],[_0x4af1fd(0x1ae),_0x161305[_0x4af1fd(0x1ae)],_0x928e67[_0x4af1fd(0x1ae)]],[_0x4af1fd(0x1e8),_0x161305[_0x4af1fd(0x1e8)],_0x928e67[_0x4af1fd(0x1e8)]],['URL',_0x161305['url'],_0x928e67[_0x4af1fd(0x182)]],[_0x4af1fd(0x20b),_0x161305[_0x4af1fd(0x1bd)],_0x928e67[_0x4af1fd(0x1bd)]],[_0x4af1fd(0x190),_0x161305[_0x4af1fd(0x190)],_0x928e67[_0x4af1fd(0x190)]]];for(const [_0x170044,_0x35a6b7,_0x5dad65]of _0x2ec50a){if(_0x35a6b7!==_0x5dad65)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x161305['id']+_0x4af1fd(0x1cf)+_0x170044+'.',_0x4af1fd(0x1cb));}if(!_0x161305[_0x4af1fd(0x19f)][_0x4af1fd(0x1bf)]()||_0x5569ef!==null&&_0x161305[_0x4af1fd(0x19f)]!==_0x5569ef)throw menuError(_0x4af1fd(0x188),'Created\x20menu\x20'+_0x161305['id']+_0x4af1fd(0x1fa),_0x4af1fd(0x1cb));}function creationSuccess(_0x1003cc,_0x45c1e8,_0x6b7bf8,_0x4b5bb6){const _0x11ac60=a109_0x543840,_0xbd8cc6=mutationResult({..._0x1003cc,'after':_0x6b7bf8,'dryRun':![],'succeeded':[{'id':_0x6b7bf8['id'],'created':!![],'recovered':_0x4b5bb6}],'verification':{'checkedBy':_0x11ac60(0x18e),'snapshotHash':_0x45c1e8[_0x11ac60(0x1c3)],'targetId':_0x6b7bf8['id'],'recovered':_0x4b5bb6,'path':_0x6b7bf8[_0x11ac60(0x19f)]}});return{'ok':!![],'message':_0x4b5bb6?_0x11ac60(0x20a)+_0x6b7bf8['id']+_0x11ac60(0x1fd):_0x11ac60(0x1b8)+_0x6b7bf8['id']+'.','data':{..._0xbd8cc6,'recovered':_0x4b5bb6}};}function externalLinkCreateFailure(_0x1b5827,_0x3cafad,_0x4ce25a){const _0x49ba98=a109_0x543840;return menuFailure(safeMenuAddError(_0x1b5827),redactFailurePlan(_0x3cafad),{..._0x4ce25a,'succeeded':_0x4ce25a[_0x49ba98(0x1e3)]?.['map'](redactFailureRecord),'failed':_0x4ce25a[_0x49ba98(0x1a7)]?redactFailureRecord(_0x4ce25a[_0x49ba98(0x1a7)]):undefined,'verification':_0x4ce25a[_0x49ba98(0x1d7)]?redactFailureRecord(_0x4ce25a[_0x49ba98(0x1d7)]):undefined,'after':_0x4ce25a['after']===undefined?undefined:redactFailureValue(_0x4ce25a['after'])});}function redactFailurePlan(_0x8587c0){const _0x1bb521=a109_0x543840;return{..._0x8587c0,'selector':redactFailureRecord(_0x8587c0[_0x1bb521(0x1a8)]),'before':redactFailureValue(_0x8587c0[_0x1bb521(0x20c)]),'after':redactFailureValue(_0x8587c0['after']),'plannedActions':_0x8587c0[_0x1bb521(0x1d2)]?.[_0x1bb521(0x1bb)](_0xd4ae35=>({..._0xd4ae35,'body':redactFailureRecord(_0xd4ae35['body'])})),'succeeded':_0x8587c0[_0x1bb521(0x1e3)][_0x1bb521(0x1bb)](redactFailureRecord),'failed':_0x8587c0['failed'][_0x1bb521(0x1bb)](redactFailureRecord),'verification':_0x8587c0[_0x1bb521(0x1d7)]?redactFailureRecord(_0x8587c0['verification']):undefined};}function redactFailureRecord(_0x486b12){return redactFailureValue(_0x486b12);}function redactFailureValue(_0x27bd17,_0x23ae01=''){const _0x584ff1=a109_0x543840,_0x725ec3=_0x23ae01[_0x584ff1(0x1ef)]()[_0x584ff1(0x1c0)](/[^a-z0-9]/g,'');if([_0x584ff1(0x1b9),_0x584ff1(0x19d),'readbackerror',_0x584ff1(0x196)]['includes'](_0x725ec3))return _0x584ff1(0x1d4);if(Array['isArray'](_0x27bd17))return _0x27bd17[_0x584ff1(0x1bb)](_0x2ae210=>redactFailureValue(_0x2ae210));if(_0x27bd17&&typeof _0x27bd17===_0x584ff1(0x185))return Object[_0x584ff1(0x1ee)](Object[_0x584ff1(0x1dd)](_0x27bd17)[_0x584ff1(0x1bb)](([_0x44667c,_0x4cb95e])=>[_0x44667c,redactFailureValue(_0x4cb95e,_0x44667c)]));return _0x27bd17;}function safeMenuAddError(_0x3f11fa){const _0x6bf590=a109_0x543840,_0x49c15f=_0x3f11fa instanceof CliError?_0x3f11fa['code']:'menu_mutation_failed';switch(_0x49c15f){case _0x6bf590(0x1de):return menuError(_0x49c15f,_0x6bf590(0x1f8),_0x6bf590(0x202));case _0x6bf590(0x204):return menuError(_0x49c15f,_0x6bf590(0x1b4),_0x6bf590(0x18b));case _0x6bf590(0x1a0):return menuError(_0x49c15f,_0x6bf590(0x1e9),_0x6bf590(0x193));case'menu_verification_failed':return menuError(_0x49c15f,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x6bf590(0x208):return menuError(_0x49c15f,_0x6bf590(0x1c2),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x6bf590(0x1e4):case _0x6bf590(0x200):case _0x6bf590(0x189):case _0x6bf590(0x181):case _0x6bf590(0x1d8):return menuError(_0x49c15f,'External\x20menu\x20creation\x20failed.',_0x6bf590(0x19e));default:return menuError(_0x6bf590(0x1e4),_0x6bf590(0x180),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x1a7196){const _0x2eaf87=a109_0x543840;if(!(_0x1a7196 instanceof Error)||!('data'in _0x1a7196))return undefined;const _0x2b6124=_0x1a7196[_0x2eaf87(0x1ad)];if(!_0x2b6124||typeof _0x2b6124!==_0x2eaf87(0x185))return undefined;const _0x2ba9ae=_0x2b6124[_0x2eaf87(0x1a7)];if(!Array['isArray'](_0x2ba9ae)||!_0x2ba9ae[0x0]||typeof _0x2ba9ae[0x0]!==_0x2eaf87(0x185))return undefined;return _0x2ba9ae[0x0];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a110_0x1d413b=a110_0x2e5f;(function(_0x12351d,_0x3f88cf){const _0x821ebf=a110_0x2e5f,_0x45d750=_0x12351d();while(!![]){try{const _0x1f025d=-parseInt(_0x821ebf(0x11a))/0x1*(parseInt(_0x821ebf(0xe8))/0x2)+-parseInt(_0x821ebf(0xff))/0x3+parseInt(_0x821ebf(0xf9))/0x4+-parseInt(_0x821ebf(0xd6))/0x5*(-parseInt(_0x821ebf(0xf4))/0x6)+-parseInt(_0x821ebf(0xf2))/0x7+parseInt(_0x821ebf(0xe5))/0x8+parseInt(_0x821ebf(0xd4))/0x9;if(_0x1f025d===_0x3f88cf)break;else _0x45d750['push'](_0x45d750['shift']());}catch(_0x4d3eb7){_0x45d750['push'](_0x45d750['shift']());}}}(a110_0x22e3,0x6af5e));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';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a110_0x1d413b(0xe9),'path':'/smartapi/menu/update'}];function a110_0x22e3(){const _0x284292=['trim','snapshot','Updated\x20external\x20URL\x20for\x20menu\x20','unknown','code','5421899nVlbGk','label','25698SDYLVj','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','menu','str','menu_external_link_path_missing','2961224YmIztW','high-risk-write','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','path','\x20already\x20matches\x20the\x20requested\x20URL.','798591YncKyH','menu_permission_denied','iframe','\x20parent\x20changed:\x20expected\x20','failed','parentId','\x20--format\x20compress','replace','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','plan','Menu\x20','Response\x20was\x20lost\x20and\x20menu\x20','string','hash','readbackFailed','childrenCount','expect-parent-id','link','visible','body','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','\x27\x5c\x27\x27','\x20could\x20not\x20be\x20verified\x20safely','\x20is\x20type\x20\x22','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','New\x20external\x20HTTPS\x20URL','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','4Sdfjyj','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','expect-url','menu_external_link_not_leaf','requestedUrlObserved','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','update-recovery','sort','\x20has\x20an\x20empty\x20platform\x20path.','menu\x20list','7902063qxnYxN','appCode','175KERhbp',',\x20current\x20','type','external-link-update','byId','update','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','menu_update_recovery_required','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','cookie','url','menu_state_drift','flagMissing','Update\x20request\x20for\x20menu\x20','\x20has\x20','4306704DSgydP','\x20direct\x20child\x20menu(s).','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','413846XMktcj','POST','update\x20external\x20menu\x20URL','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu_external_link_type_required'];a110_0x22e3=function(){return _0x284292;};return a110_0x22e3();}export const menuExternalLinkUpdate={'service':a110_0x1d413b(0xf6),'command':a110_0x1d413b(0xd9),'description':a110_0x1d413b(0xfb),'risk':a110_0x1d413b(0xfa),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a110_0x1d413b(0xe0),'type':'string','required':!![],'description':a110_0x1d413b(0x118)},{'name':a110_0x1d413b(0x11c),'type':a110_0x1d413b(0x10b),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x41fa5e){validateInput(_0x41fa5e),requireExplicitYes(_0x41fa5e);},async 'dryRun'(_0x2ebce9){const _0x3171d1=a110_0x1d413b;validateInput(_0x2ebce9);const _0x1f9968=await buildPlan(_0x2ebce9,!![]);return menuDryRunResult(_0x1f9968[_0x3171d1(0x108)],{'method':_0x3171d1(0xe9),'url':'/smartapi/menu/update','body':_0x1f9968[_0x3171d1(0x112)],'description':_0x3171d1(0xde)+_0x1f9968['body']['id']+'.'});},async 'execute'(_0x1e2236){const _0x5be5e8=a110_0x1d413b;validateInput(_0x1e2236),requireExplicitYes(_0x1e2236);const _0x293702=await buildPlan(_0x1e2236,![]),{plan:_0x52e4cd,body:_0x4b304d,before:_0x516d14,noChanges:_0x3c8732}=_0x293702,_0x5752d8=_0x4b304d['id'];if(_0x3c8732)return updateSuccess(_0x52e4cd,_0x293702[_0x5be5e8(0xee)],_0x516d14,!![],![]);await recheckMutationSnapshot(_0x1e2236,_0x52e4cd,_0x5be5e8(0xea),_0x5752d8);try{await updateMenuEntity(_0x1e2236['appCode'],_0x1e2236['cookie'],{'id':_0x4b304d['id'],'url':_0x4b304d[_0x5be5e8(0xe0)]});}catch(_0x26ab7f){const _0x3ea0e4=mapMenuApiError(_0x26ab7f,_0x5be5e8(0xea),_0x5752d8);if(isMenuResponseLoss(_0x26ab7f)&&_0x3ea0e4[_0x5be5e8(0xf1)]!==_0x5be5e8(0x100))return recoverAfterResponseLoss(_0x1e2236,_0x293702);throw menuFailure(_0x3ea0e4,_0x52e4cd,{'stage':_0x5be5e8(0xdb),'failed':{'id':_0x5752d8},'warnings':[_0x5be5e8(0xeb)],'verification':{'status':_0x5be5e8(0x103),'targetId':_0x5752d8,'lookupCommand':buildLookupCommand(_0x1e2236[_0x5be5e8(0xd5)])}});}let _0xffaa57,_0x26c400;try{_0xffaa57=await fetchMenuSnapshot(_0x1e2236[_0x5be5e8(0xd5)],_0x1e2236[_0x5be5e8(0xdf)]),_0x26c400=requireMenu(_0xffaa57,_0x5752d8),verifyUpdatedFact(_0x516d14,_0x26c400,_0x4b304d[_0x5be5e8(0xe0)]);}catch(_0x5708e8){const _0x1da1c5=describeMenuErrorCause(_0x5708e8,'verify\x20external\x20menu\x20URL\x20update',_0x5752d8),_0x4ddae8=asVerificationError(_0x5708e8,_0x5be5e8(0xe3)+_0x5752d8+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x4ddae8,_0x52e4cd,{'stage':'verification','succeeded':[{'id':_0x5752d8,'updateRequested':!![]}],'failed':{'id':_0x5752d8,'requestedStateConfirmed':![],..._0x1da1c5},'warnings':[_0x5be5e8(0x119)],'verification':{'status':_0x5be5e8(0x103),'targetId':_0x5752d8,'lookupCommand':buildLookupCommand(_0x1e2236['appCode'])}});}return updateSuccess(_0x52e4cd,_0xffaa57,_0x26c400,![],![]);}};function validateInput(_0x15ff56){const _0x143cab=a110_0x1d413b;validateExactId(_0x15ff56),requiredUrl(_0x15ff56,_0x143cab(0xe0)),requiredExpectedUrl(_0x15ff56),parseParentId(_0x15ff56,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x3a1229,_0x5eaa91){const _0x14579d=a110_0x1d413b;if(!hasFlag(_0x3a1229,_0x5eaa91)||!_0x3a1229[_0x14579d(0xf7)](_0x5eaa91)[_0x14579d(0xed)]())throw CliErrors['flagMissing'](_0x5eaa91);return validateExternalMenuUrl(_0x3a1229[_0x14579d(0xf7)](_0x5eaa91));}function requiredExpectedUrl(_0x402620){const _0x115f86=a110_0x1d413b;if(!hasFlag(_0x402620,_0x115f86(0x11c))||!_0x402620[_0x115f86(0xf7)](_0x115f86(0x11c))[_0x115f86(0xed)]())throw CliErrors[_0x115f86(0xe2)](_0x115f86(0x11c));return _0x402620[_0x115f86(0xf7)](_0x115f86(0x11c))[_0x115f86(0xed)]();}async function buildPlan(_0xf81fd,_0x26ed9a){const _0x333d06=a110_0x1d413b,_0x2bc100=validateExactId(_0xf81fd),_0x5c6ab1=requiredUrl(_0xf81fd,_0x333d06(0xe0)),_0x3e9b29=requiredExpectedUrl(_0xf81fd),_0x504752=parseParentId(_0xf81fd,_0x333d06(0x10f),{'required':!![]}),_0x4ebc28=await fetchMutationSnapshot(_0xf81fd,_0x333d06(0xea),_0x2bc100),_0x13c281=requireMenu(_0x4ebc28,_0x2bc100);assertExternalLinkLeaf(_0x13c281);if(_0x13c281[_0x333d06(0x104)]!==_0x504752)throw menuError(_0x333d06(0xe1),_0x333d06(0x109)+_0x2bc100+_0x333d06(0x102)+formatParent(_0x504752)+_0x333d06(0xd7)+formatParent(_0x13c281[_0x333d06(0x104)])+'.',_0x333d06(0xf5));const _0x302974=_0x13c281[_0x333d06(0xe0)]===_0x5c6ab1;if(!_0x302974&&_0x13c281[_0x333d06(0xe0)]!==_0x3e9b29)throw menuError(_0x333d06(0xe1),'Menu\x20'+_0x2bc100+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x4898f0={'id':_0x2bc100,'appCode':_0xf81fd[_0x333d06(0xd5)],'url':_0x5c6ab1},_0x44ef5d={..._0x13c281,'url':_0x5c6ab1};return{'body':_0x4898f0,'before':_0x13c281,'noChanges':_0x302974,'snapshot':_0x4ebc28,'plan':mutationResult({'operation':_0x333d06(0xd9),'selector':{'id':_0x2bc100},'before':_0x13c281,'after':_0x44ef5d,'dryRun':_0x26ed9a,'backend':[...BACKEND],'plannedActions':_0x302974?[]:[{'stage':'update-external-link-url','method':_0x333d06(0xe9),'path':'/smartapi/menu/update','body':_0x4898f0}],'snapshotHash':_0x4ebc28[_0x333d06(0x10c)],'warnings':_0x302974?[_0x333d06(0x117)]:[]})};}function assertExternalLinkLeaf(_0x4b256d){const _0x23b8d6=a110_0x1d413b;if(_0x4b256d['type']!==_0x23b8d6(0x101)&&_0x4b256d[_0x23b8d6(0xd8)]!==_0x23b8d6(0x110))throw menuError(_0x23b8d6(0xec),_0x23b8d6(0x109)+_0x4b256d['id']+_0x23b8d6(0x116)+(_0x4b256d[_0x23b8d6(0xd8)]||_0x23b8d6(0xf0))+'\x22,\x20not\x20iframe\x20or\x20link.','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x4b256d[_0x23b8d6(0x10e)]!==0x0)throw menuError(_0x23b8d6(0x11d),'Menu\x20'+_0x4b256d['id']+_0x23b8d6(0xe4)+_0x4b256d['childrenCount']+_0x23b8d6(0xe6),_0x23b8d6(0xfc));if(!_0x4b256d[_0x23b8d6(0xfd)][_0x23b8d6(0xed)]())throw menuError(_0x23b8d6(0xf8),_0x23b8d6(0x109)+_0x4b256d['id']+_0x23b8d6(0xd2),_0x23b8d6(0xe7));}function verifyUpdatedFact(_0x3f029b,_0x365e0a,_0x1cc620){const _0x474aca=a110_0x1d413b;assertExternalLinkLeaf(_0x365e0a);const _0x1fc291=[['id',_0x365e0a['id'],_0x3f029b['id']],[_0x474aca(0xf3),_0x365e0a[_0x474aca(0xf3)],_0x3f029b[_0x474aca(0xf3)]],[_0x474aca(0xd8),_0x365e0a[_0x474aca(0xd8)],_0x3f029b[_0x474aca(0xd8)]],[_0x474aca(0xfd),_0x365e0a['path'],_0x3f029b['path']],[_0x474aca(0x104),_0x365e0a['parentId'],_0x3f029b['parentId']],[_0x474aca(0xd1),_0x365e0a['sort'],_0x3f029b[_0x474aca(0xd1)]],[_0x474aca(0x111),_0x365e0a[_0x474aca(0x111)],_0x3f029b[_0x474aca(0x111)]]];for(const [_0xa99a38,_0x840182,_0xd96676]of _0x1fc291){assertVerified(_0x840182===_0xd96676,_0x474aca(0x109)+_0x3f029b['id']+'\x20'+_0xa99a38+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x365e0a[_0x474aca(0xe0)]===_0x1cc620,_0x474aca(0x109)+_0x3f029b['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x11e9b8,_0x12c1d9,_0x2e0e12,_0x52cc8e,_0x4ad721){const _0x19cdcf=a110_0x1d413b,_0x3d1f08=_0x2e0e12['id'],_0x3d157e=mutationResult({..._0x11e9b8,'after':_0x2e0e12,'dryRun':![],'succeeded':[{'id':_0x3d1f08,'updated':!_0x52cc8e,'skipped':_0x52cc8e,'recovered':_0x4ad721}],'verification':{'checkedBy':_0x19cdcf(0xd3),'snapshotHash':_0x12c1d9[_0x19cdcf(0x10c)],'targetId':_0x3d1f08,'matchesRequestedState':!![],'recovered':_0x4ad721}});return{'ok':!![],'message':_0x4ad721?_0x19cdcf(0x107)+_0x3d1f08+'.':_0x52cc8e?_0x19cdcf(0x109)+_0x3d1f08+_0x19cdcf(0xfe):_0x19cdcf(0xef)+_0x3d1f08+'.','data':{..._0x3d157e,'recovered':_0x4ad721}};}async function recoverAfterResponseLoss(_0xaa6b93,_0x2aeb02){const _0x282de5=a110_0x1d413b,{plan:_0x19d212,before:_0x2a4fd7,body:_0xb86d34}=_0x2aeb02;let _0x301c1a;try{_0x301c1a=await fetchMenuSnapshot(_0xaa6b93['appCode'],_0xaa6b93['cookie']);}catch{throw recoveryRequired(_0x19d212,_0xaa6b93[_0x282de5(0xd5)],{'id':_0xb86d34['id'],'readbackFailed':!![]});}const _0x27bb0e=_0x301c1a[_0x282de5(0xda)]['get'](_0xb86d34['id']);if(!_0x27bb0e||_0x27bb0e['url']!==_0xb86d34[_0x282de5(0xe0)])throw recoveryRequired(_0x19d212,_0xaa6b93[_0x282de5(0xd5)],{'id':_0xb86d34['id'],'requestedUrlObserved':![],'after':_0x27bb0e??null});try{verifyUpdatedFact(_0x2a4fd7,_0x27bb0e,_0xb86d34[_0x282de5(0xe0)]);}catch(_0xe7b31f){const _0x415954=asVerificationError(_0xe7b31f,_0x282de5(0x10a)+_0xb86d34['id']+_0x282de5(0x115));throw menuFailure(_0x415954,_0x19d212,{'stage':'update-recovery','succeeded':[{'id':_0xb86d34['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0xb86d34['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x27bb0e,'warnings':[_0x282de5(0x11b)],'verification':{'status':'failed','targetId':_0xb86d34['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0xaa6b93[_0x282de5(0xd5)])}});}return updateSuccess(_0x19d212,_0x301c1a,_0x27bb0e,![],!![]);}function a110_0x2e5f(_0x5d6768,_0x5dec3a){_0x5d6768=_0x5d6768-0xd0;const _0x22e335=a110_0x22e3();let _0x2e5fa2=_0x22e335[_0x5d6768];return _0x2e5fa2;}function recoveryRequired(_0xd34340,_0x12eb63,_0xf654b8){const _0x3f8751=a110_0x1d413b,_0xfb4f88=menuError(_0x3f8751(0xdd),_0x3f8751(0x113),'Run\x20'+buildLookupCommand(_0x12eb63)+_0x3f8751(0xdc));return menuFailure(_0xfb4f88,_0xd34340,{'stage':_0x3f8751(0xd0),'failed':{'id':_0xf654b8['id'],..._0xf654b8[_0x3f8751(0x11e)]===undefined?{}:{'requestedUrlObserved':_0xf654b8[_0x3f8751(0x11e)]},..._0xf654b8[_0x3f8751(0x10d)]?{'readbackFailed':!![]}:{}},'after':_0xf654b8['after'],'warnings':[_0x3f8751(0x11f)],'verification':{'status':_0x3f8751(0x103),'targetId':_0xf654b8['id'],..._0xf654b8[_0x3f8751(0x11e)]===undefined?{}:{'requestedUrlObserved':_0xf654b8[_0x3f8751(0x11e)]},..._0xf654b8[_0x3f8751(0x10d)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x12eb63)}});}function buildLookupCommand(_0x413c66){const _0x3aa7f5=a110_0x1d413b,_0x1b35cd='\x27'+_0x413c66[_0x3aa7f5(0x106)](/'/g,_0x3aa7f5(0x114))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x1b35cd+_0x3aa7f5(0x105);}
|
|
1
|
+
const a110_0x4e0331=a110_0x5a2c;(function(_0x268864,_0x2e0304){const _0x5d145e=a110_0x5a2c,_0xae043=_0x268864();while(!![]){try{const _0xe8758=-parseInt(_0x5d145e(0x14d))/0x1*(-parseInt(_0x5d145e(0x159))/0x2)+-parseInt(_0x5d145e(0x14e))/0x3*(parseInt(_0x5d145e(0x125))/0x4)+parseInt(_0x5d145e(0x134))/0x5+-parseInt(_0x5d145e(0x142))/0x6+-parseInt(_0x5d145e(0x169))/0x7*(-parseInt(_0x5d145e(0x164))/0x8)+parseInt(_0x5d145e(0x121))/0x9*(-parseInt(_0x5d145e(0x13c))/0xa)+parseInt(_0x5d145e(0x139))/0xb;if(_0xe8758===_0x2e0304)break;else _0xae043['push'](_0xae043['shift']());}catch(_0x150336){_0xae043['push'](_0xae043['shift']());}}}(a110_0x5bc2,0x5a7db));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_0x5bc2(){const _0x59637c=['Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','verify\x20external\x20menu\x20URL\x20update','appCode','319670fZYnoD','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','POST','body','\x20already\x20matches\x20the\x20requested\x20URL.','8490097CkoAdn','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','parentId','10oSMHQI','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','cookie','childrenCount','\x20parent\x20changed:\x20expected\x20','high-risk-write','2921136EkBwiE','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','menu_permission_denied','visible','type','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','update-recovery','\x20has\x20an\x20empty\x20platform\x20path.','New\x20external\x20HTTPS\x20URL','plan','link','1zQZpoi','79551jAQFfX','iframe','str','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20is\x20type\x20\x22','Response\x20was\x20lost\x20and\x20menu\x20','menu_update_recovery_required','sort','verification','menu_external_link_type_required','byId','702198YEvWrF','after','label','menu\x20list','failed','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','\x20could\x20not\x20be\x20verified\x20safely','flagMissing','Menu\x20','Update\x20request\x20for\x20menu\x20','8408HEdqMc','\x20changed\x20during\x20the\x20URL-only\x20update.','string','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','expect-parent-id','1218mIetIG','\x20--format\x20compress','replace','\x20direct\x20child\x20menu(s).','\x20has\x20','menu_state_drift',',\x20current\x20','Updated\x20external\x20URL\x20for\x20menu\x20','readbackFailed','external-link-update','url','code','1268901PbRdwV','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','requestedUrlObserved','update\x20external\x20menu\x20URL','56nGUNRt','expect-url','path','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','hash','trim','menu_external_link_path_missing','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','menu_external_link_not_leaf','update','\x27\x5c\x27\x27'];a110_0x5bc2=function(){return _0x59637c;};return a110_0x5bc2();}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':'menu','command':'external-link-update','description':a110_0x4e0331(0x151),'risk':a110_0x4e0331(0x141),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':a110_0x4e0331(0x166),'required':!![],'description':a110_0x4e0331(0x14a)},{'name':'expect-url','type':a110_0x4e0331(0x166),'required':!![],'description':a110_0x4e0331(0x135)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1d6db6){validateInput(_0x1d6db6),requireExplicitYes(_0x1d6db6);},async 'dryRun'(_0x1758b1){const _0x59e1ec=a110_0x4e0331;validateInput(_0x1758b1);const _0x2e62a6=await buildPlan(_0x1758b1,!![]);return menuDryRunResult(_0x2e62a6[_0x59e1ec(0x14b)],{'method':'POST','url':'/smartapi/menu/update','body':_0x2e62a6[_0x59e1ec(0x137)],'description':_0x59e1ec(0x131)+_0x2e62a6[_0x59e1ec(0x137)]['id']+'.'});},async 'execute'(_0x3a9734){const _0x140a76=a110_0x4e0331;validateInput(_0x3a9734),requireExplicitYes(_0x3a9734);const _0x4c7103=await buildPlan(_0x3a9734,![]),{plan:_0x31da21,body:_0x5a17e6,before:_0x3b2154,noChanges:_0x543643}=_0x4c7103,_0xc7b17a=_0x5a17e6['id'];if(_0x543643)return updateSuccess(_0x31da21,_0x4c7103['snapshot'],_0x3b2154,!![],![]);await recheckMutationSnapshot(_0x3a9734,_0x31da21,_0x140a76(0x124),_0xc7b17a);try{await updateMenuEntity(_0x3a9734[_0x140a76(0x133)],_0x3a9734[_0x140a76(0x13e)],{'id':_0x5a17e6['id'],'url':_0x5a17e6[_0x140a76(0x11f)]});}catch(_0x3c168f){const _0x52359e=mapMenuApiError(_0x3c168f,_0x140a76(0x124),_0xc7b17a);if(isMenuResponseLoss(_0x3c168f)&&_0x52359e[_0x140a76(0x120)]!==_0x140a76(0x144))return recoverAfterResponseLoss(_0x3a9734,_0x4c7103);throw menuFailure(_0x52359e,_0x31da21,{'stage':_0x140a76(0x12f),'failed':{'id':_0xc7b17a},'warnings':[_0x140a76(0x13d)],'verification':{'status':_0x140a76(0x15d),'targetId':_0xc7b17a,'lookupCommand':buildLookupCommand(_0x3a9734[_0x140a76(0x133)])}});}let _0x574503,_0x15aff6;try{_0x574503=await fetchMenuSnapshot(_0x3a9734['appCode'],_0x3a9734[_0x140a76(0x13e)]),_0x15aff6=requireMenu(_0x574503,_0xc7b17a),verifyUpdatedFact(_0x3b2154,_0x15aff6,_0x5a17e6['url']);}catch(_0x3f3202){const _0x13a5c8=describeMenuErrorCause(_0x3f3202,_0x140a76(0x132),_0xc7b17a),_0x48c631=asVerificationError(_0x3f3202,_0x140a76(0x163)+_0xc7b17a+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x48c631,_0x31da21,{'stage':_0x140a76(0x156),'succeeded':[{'id':_0xc7b17a,'updateRequested':!![]}],'failed':{'id':_0xc7b17a,'requestedStateConfirmed':![],..._0x13a5c8},'warnings':[_0x140a76(0x15e)],'verification':{'status':'failed','targetId':_0xc7b17a,'lookupCommand':buildLookupCommand(_0x3a9734[_0x140a76(0x133)])}});}return updateSuccess(_0x31da21,_0x574503,_0x15aff6,![],![]);}};function validateInput(_0x45b035){const _0x1ea7ef=a110_0x4e0331;validateExactId(_0x45b035),requiredUrl(_0x45b035,'url'),requiredExpectedUrl(_0x45b035),parseParentId(_0x45b035,_0x1ea7ef(0x168),{'required':!![]});}function requiredUrl(_0x2a89f1,_0x49957d){const _0x46a8c6=a110_0x4e0331;if(!hasFlag(_0x2a89f1,_0x49957d)||!_0x2a89f1[_0x46a8c6(0x150)](_0x49957d)[_0x46a8c6(0x12a)]())throw CliErrors[_0x46a8c6(0x161)](_0x49957d);return validateExternalMenuUrl(_0x2a89f1[_0x46a8c6(0x150)](_0x49957d));}function requiredExpectedUrl(_0x255dcd){const _0x148403=a110_0x4e0331;if(!hasFlag(_0x255dcd,_0x148403(0x126))||!_0x255dcd[_0x148403(0x150)](_0x148403(0x126))[_0x148403(0x12a)]())throw CliErrors['flagMissing']('expect-url');return _0x255dcd[_0x148403(0x150)]('expect-url')['trim']();}async function buildPlan(_0x346f0d,_0x1028ba){const _0x5b381f=a110_0x4e0331,_0x19dcd0=validateExactId(_0x346f0d),_0x41ebf7=requiredUrl(_0x346f0d,_0x5b381f(0x11f)),_0x436eb6=requiredExpectedUrl(_0x346f0d),_0x1de46f=parseParentId(_0x346f0d,'expect-parent-id',{'required':!![]}),_0xb0f5f4=await fetchMutationSnapshot(_0x346f0d,_0x5b381f(0x124),_0x19dcd0),_0x40b4d2=requireMenu(_0xb0f5f4,_0x19dcd0);assertExternalLinkLeaf(_0x40b4d2);if(_0x40b4d2[_0x5b381f(0x13b)]!==_0x1de46f)throw menuError(_0x5b381f(0x11a),_0x5b381f(0x162)+_0x19dcd0+_0x5b381f(0x140)+formatParent(_0x1de46f)+_0x5b381f(0x11b)+formatParent(_0x40b4d2['parentId'])+'.',_0x5b381f(0x167));const _0xe9f54=_0x40b4d2[_0x5b381f(0x11f)]===_0x41ebf7;if(!_0xe9f54&&_0x40b4d2[_0x5b381f(0x11f)]!==_0x436eb6)throw menuError('menu_state_drift','Menu\x20'+_0x19dcd0+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0x5b381f(0x128));const _0x4aa680={'id':_0x19dcd0,'appCode':_0x346f0d[_0x5b381f(0x133)],'url':_0x41ebf7},_0x22af29={..._0x40b4d2,'url':_0x41ebf7};return{'body':_0x4aa680,'before':_0x40b4d2,'noChanges':_0xe9f54,'snapshot':_0xb0f5f4,'plan':mutationResult({'operation':_0x5b381f(0x11e),'selector':{'id':_0x19dcd0},'before':_0x40b4d2,'after':_0x22af29,'dryRun':_0x1028ba,'backend':[...BACKEND],'plannedActions':_0xe9f54?[]:[{'stage':'update-external-link-url','method':_0x5b381f(0x136),'path':'/smartapi/menu/update','body':_0x4aa680}],'snapshotHash':_0xb0f5f4[_0x5b381f(0x129)],'warnings':_0xe9f54?[_0x5b381f(0x12d)]:[]})};}function assertExternalLinkLeaf(_0x6ab52){const _0x88d98=a110_0x4e0331;if(_0x6ab52['type']!==_0x88d98(0x14f)&&_0x6ab52[_0x88d98(0x146)]!==_0x88d98(0x14c))throw menuError(_0x88d98(0x157),'Menu\x20'+_0x6ab52['id']+_0x88d98(0x152)+(_0x6ab52[_0x88d98(0x146)]||'unknown')+'\x22,\x20not\x20iframe\x20or\x20link.',_0x88d98(0x147));if(_0x6ab52[_0x88d98(0x13f)]!==0x0)throw menuError(_0x88d98(0x12e),_0x88d98(0x162)+_0x6ab52['id']+_0x88d98(0x119)+_0x6ab52[_0x88d98(0x13f)]+_0x88d98(0x16c),_0x88d98(0x12c));if(!_0x6ab52[_0x88d98(0x127)][_0x88d98(0x12a)]())throw menuError(_0x88d98(0x12b),_0x88d98(0x162)+_0x6ab52['id']+_0x88d98(0x149),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function a110_0x5a2c(_0x456d7f,_0x45cd24){_0x456d7f=_0x456d7f-0x119;const _0x5bc26d=a110_0x5bc2();let _0x5a2c2a=_0x5bc26d[_0x456d7f];return _0x5a2c2a;}function verifyUpdatedFact(_0x5ba128,_0x1f8d2e,_0x43141a){const _0x4420f3=a110_0x4e0331;assertExternalLinkLeaf(_0x1f8d2e);const _0x6ecb9f=[['id',_0x1f8d2e['id'],_0x5ba128['id']],[_0x4420f3(0x15b),_0x1f8d2e['label'],_0x5ba128[_0x4420f3(0x15b)]],[_0x4420f3(0x146),_0x1f8d2e['type'],_0x5ba128[_0x4420f3(0x146)]],[_0x4420f3(0x127),_0x1f8d2e[_0x4420f3(0x127)],_0x5ba128[_0x4420f3(0x127)]],[_0x4420f3(0x13b),_0x1f8d2e[_0x4420f3(0x13b)],_0x5ba128[_0x4420f3(0x13b)]],[_0x4420f3(0x155),_0x1f8d2e['sort'],_0x5ba128[_0x4420f3(0x155)]],['visible',_0x1f8d2e[_0x4420f3(0x145)],_0x5ba128['visible']]];for(const [_0xabedb1,_0x293f57,_0x1426ed]of _0x6ecb9f){assertVerified(_0x293f57===_0x1426ed,_0x4420f3(0x162)+_0x5ba128['id']+'\x20'+_0xabedb1+_0x4420f3(0x165));}assertVerified(_0x1f8d2e[_0x4420f3(0x11f)]===_0x43141a,_0x4420f3(0x162)+_0x5ba128['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x2ebe8a,_0x47feb9,_0x5619c5,_0x4fe58d,_0x40ab47){const _0x5f1f4c=a110_0x4e0331,_0x4c7734=_0x5619c5['id'],_0xb74b54=mutationResult({..._0x2ebe8a,'after':_0x5619c5,'dryRun':![],'succeeded':[{'id':_0x4c7734,'updated':!_0x4fe58d,'skipped':_0x4fe58d,'recovered':_0x40ab47}],'verification':{'checkedBy':_0x5f1f4c(0x15c),'snapshotHash':_0x47feb9[_0x5f1f4c(0x129)],'targetId':_0x4c7734,'matchesRequestedState':!![],'recovered':_0x40ab47}});return{'ok':!![],'message':_0x40ab47?_0x5f1f4c(0x13a)+_0x4c7734+'.':_0x4fe58d?'Menu\x20'+_0x4c7734+_0x5f1f4c(0x138):_0x5f1f4c(0x11c)+_0x4c7734+'.','data':{..._0xb74b54,'recovered':_0x40ab47}};}async function recoverAfterResponseLoss(_0x5b4bbb,_0x59744e){const _0x3d5029=a110_0x4e0331,{plan:_0x3cfa53,before:_0xf2921f,body:_0x4c2ad5}=_0x59744e;let _0x332515;try{_0x332515=await fetchMenuSnapshot(_0x5b4bbb[_0x3d5029(0x133)],_0x5b4bbb[_0x3d5029(0x13e)]);}catch{throw recoveryRequired(_0x3cfa53,_0x5b4bbb['appCode'],{'id':_0x4c2ad5['id'],'readbackFailed':!![]});}const _0x3bad90=_0x332515[_0x3d5029(0x158)]['get'](_0x4c2ad5['id']);if(!_0x3bad90||_0x3bad90[_0x3d5029(0x11f)]!==_0x4c2ad5[_0x3d5029(0x11f)])throw recoveryRequired(_0x3cfa53,_0x5b4bbb[_0x3d5029(0x133)],{'id':_0x4c2ad5['id'],'requestedUrlObserved':![],'after':_0x3bad90??null});try{verifyUpdatedFact(_0xf2921f,_0x3bad90,_0x4c2ad5[_0x3d5029(0x11f)]);}catch(_0x82cc0b){const _0x4895de=asVerificationError(_0x82cc0b,_0x3d5029(0x153)+_0x4c2ad5['id']+_0x3d5029(0x160));throw menuFailure(_0x4895de,_0x3cfa53,{'stage':_0x3d5029(0x148),'succeeded':[{'id':_0x4c2ad5['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x4c2ad5['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x3bad90,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':'failed','targetId':_0x4c2ad5['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5b4bbb[_0x3d5029(0x133)])}});}return updateSuccess(_0x3cfa53,_0x332515,_0x3bad90,![],!![]);}function recoveryRequired(_0x44ca22,_0x188cbd,_0x5d67e1){const _0x534b1a=a110_0x4e0331,_0x1daded=menuError(_0x534b1a(0x154),_0x534b1a(0x122),'Run\x20'+buildLookupCommand(_0x188cbd)+_0x534b1a(0x15f));return menuFailure(_0x1daded,_0x44ca22,{'stage':'update-recovery','failed':{'id':_0x5d67e1['id'],..._0x5d67e1[_0x534b1a(0x123)]===undefined?{}:{'requestedUrlObserved':_0x5d67e1[_0x534b1a(0x123)]},..._0x5d67e1[_0x534b1a(0x11d)]?{'readbackFailed':!![]}:{}},'after':_0x5d67e1[_0x534b1a(0x15a)],'warnings':[_0x534b1a(0x143)],'verification':{'status':_0x534b1a(0x15d),'targetId':_0x5d67e1['id'],..._0x5d67e1[_0x534b1a(0x123)]===undefined?{}:{'requestedUrlObserved':_0x5d67e1[_0x534b1a(0x123)]},..._0x5d67e1['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x188cbd)}});}function buildLookupCommand(_0x15d14a){const _0x497205=a110_0x4e0331,_0x2a51f3='\x27'+_0x15d14a[_0x497205(0x16b)](/'/g,_0x497205(0x130))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x2a51f3+_0x497205(0x16a);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a111_0x1299c7=a111_0x2223;(function(_0x13f5b0,_0x4361da){const _0x52a235=a111_0x2223,_0x4a93e9=_0x13f5b0();while(!![]){try{const _0x433875=parseInt(_0x52a235(0xf2))/0x1*(-parseInt(_0x52a235(0xf6))/0x2)+parseInt(_0x52a235(0x10f))/0x3+parseInt(_0x52a235(0x111))/0x4*(parseInt(_0x52a235(0x101))/0x5)+parseInt(_0x52a235(0xf0))/0x6*(-parseInt(_0x52a235(0x10c))/0x7)+parseInt(_0x52a235(0xec))/0x8*(parseInt(_0x52a235(0x118))/0x9)+parseInt(_0x52a235(0x11d))/0xa+-parseInt(_0x52a235(0xe0))/0xb*(-parseInt(_0x52a235(0x108))/0xc);if(_0x433875===_0x4361da)break;else _0x4a93e9['push'](_0x4a93e9['shift']());}catch(_0x5e3cf9){_0x4a93e9['push'](_0x4a93e9['shift']());}}}(a111_0x3377,0x42e16));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_0x1299c7(0xf5)}];function a111_0x2223(_0x2ec1e8,_0x2ac72e){_0x2ec1e8=_0x2ec1e8-0xdc;const _0x337710=a111_0x3377();let _0x22230f=_0x337710[_0x2ec1e8];return _0x22230f;}export const menuGroupCreate={'service':a111_0x1299c7(0xed),'command':a111_0x1299c7(0xe2),'description':a111_0x1299c7(0x112),'risk':a111_0x1299c7(0xdd),'structuredErrors':!![],'flags':[{'name':a111_0x1299c7(0x110),'type':'string','required':!![],'description':a111_0x1299c7(0x10b)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x463354){validateCreateInput(_0x463354),requireExplicitYes(_0x463354);},async 'dryRun'(_0x2a4785){const _0x580753=a111_0x1299c7,_0x1ac57d=await buildCreatePlan(_0x2a4785,!![]),_0x521ce1=_0x1ac57d[_0x580753(0x122)];return menuDryRunResult(_0x1ac57d,{'method':_0x580753(0x109),'url':_0x580753(0xf5),'body':{'parentId':toApiParentId(_0x521ce1[_0x580753(0xe7)]),'label':_0x521ce1[_0x580753(0x110)],'type':'folder','visible':!![],'sort':_0x521ce1['sort'],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x521ce1[_0x580753(0x110)])+_0x580753(0x10e)});},async 'execute'(_0x2e6f79){const _0x3b3ba1=a111_0x1299c7;validateCreateInput(_0x2e6f79),requireExplicitYes(_0x2e6f79);const _0x2d1a01=await buildCreatePlan(_0x2e6f79,![]),_0x20d367=_0x2d1a01[_0x3b3ba1(0x122)];await recheckMutationSnapshot(_0x2e6f79,_0x2d1a01,_0x3b3ba1(0xf3));let _0x54158f;try{_0x54158f=await createMenuEntity(_0x2e6f79[_0x3b3ba1(0x121)],_0x2e6f79[_0x3b3ba1(0xeb)],{'parentId':toApiParentId(_0x20d367[_0x3b3ba1(0xe7)]),'label':String(_0x20d367[_0x3b3ba1(0x110)]),'type':_0x3b3ba1(0xfd),'visible':!![],'sort':Number(_0x20d367[_0x3b3ba1(0xe3)]),'extend':{}});}catch(_0x22087d){const _0x1434f2=mapMenuApiError(_0x22087d,'create\x20folder');throw menuFailure(_0x1434f2,_0x2d1a01,{'stage':_0x3b3ba1(0x100),'failed':{}});}const _0x2d74d4=Number(_0x54158f['id']);if(!Number[_0x3b3ba1(0xf4)](_0x2d74d4)||_0x2d74d4<=0x0){const _0x588f8d=menuError(_0x3b3ba1(0xfe),_0x3b3ba1(0xe6),_0x3b3ba1(0x10d));throw menuFailure(_0x588f8d,_0x2d1a01,{'stage':_0x3b3ba1(0x107),'failed':{'createdId':_0x54158f['id']??null},'warnings':[_0x3b3ba1(0xf7)],'verification':{'status':_0x3b3ba1(0xe1),'lookupCommand':_0x3b3ba1(0x102)}});}const _0x30dc87=typeof _0x54158f[_0x3b3ba1(0xe4)]===_0x3b3ba1(0xe8)?_0x54158f[_0x3b3ba1(0xe4)]:'';if(!_0x30dc87['trim']()){const _0x12e331=menuError(_0x3b3ba1(0xfe),_0x3b3ba1(0xde)+_0x2d74d4+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x3b3ba1(0xe5));throw menuFailure(_0x12e331,_0x2d1a01,{'stage':_0x3b3ba1(0x107),'succeeded':[{'id':_0x2d74d4,'created':!![]}],'failed':{'id':_0x2d74d4,'generatedPathConfirmed':![]},'warnings':[_0x3b3ba1(0xdc)+_0x2d74d4+_0x3b3ba1(0x124)],'after':{..._0x20d367,'id':_0x2d74d4,'path':_0x30dc87},'verification':{'status':_0x3b3ba1(0xe1),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x2d74d4}});}let _0x38ee74;try{_0x38ee74=await fetchMenuSnapshot(_0x2e6f79[_0x3b3ba1(0x121)],_0x2e6f79[_0x3b3ba1(0xeb)]);}catch(_0x3cd576){const _0x2f56b7=describeMenuErrorCause(_0x3cd576,_0x3b3ba1(0xfa),_0x2d74d4),_0x1c77ef=asVerificationError(_0x3cd576,_0x3b3ba1(0xdc)+_0x2d74d4+_0x3b3ba1(0x119));throw menuFailure(_0x1c77ef,_0x2d1a01,{'stage':_0x3b3ba1(0xea),'succeeded':[{'id':_0x2d74d4,'created':!![],'path':_0x30dc87}],'failed':{'id':_0x2d74d4,'finalFactsConfirmed':![],..._0x2f56b7},'warnings':['Folder\x20'+_0x2d74d4+_0x3b3ba1(0x11e)+JSON[_0x3b3ba1(0xff)](_0x30dc87)+_0x3b3ba1(0xdf)],'after':{..._0x20d367,'id':_0x2d74d4,'path':_0x30dc87},'verification':{'status':_0x3b3ba1(0xe1),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x2d74d4}});}const _0x2d6a6c=_0x38ee74[_0x3b3ba1(0x11b)][_0x3b3ba1(0xfb)](_0x2d74d4);let _0x59786c;try{assertVerified(Boolean(_0x2d6a6c),_0x3b3ba1(0x11f)+_0x2d74d4+'\x20is\x20missing\x20from\x20menu\x20list.'),_0x59786c=_0x2d6a6c,assertVerified(_0x59786c[_0x3b3ba1(0x11a)]===_0x3b3ba1(0xfd),_0x3b3ba1(0x114)+_0x2d74d4+_0x3b3ba1(0xfc)),assertVerified(_0x59786c['label']===_0x20d367[_0x3b3ba1(0x110)],_0x3b3ba1(0x11f)+_0x2d74d4+_0x3b3ba1(0x103)),assertVerified(_0x59786c[_0x3b3ba1(0xe4)]===_0x30dc87&&Boolean(_0x59786c['path'][_0x3b3ba1(0x10a)]()),_0x3b3ba1(0x11f)+_0x2d74d4+_0x3b3ba1(0x123)),assertVerified(_0x59786c['visible']===!![],'Created\x20folder\x20'+_0x2d74d4+_0x3b3ba1(0x106)),assertVerified(_0x59786c['resources'][_0x3b3ba1(0x120)]===0x0,_0x3b3ba1(0x11f)+_0x2d74d4+_0x3b3ba1(0x125)),assertVerified(_0x59786c[_0x3b3ba1(0x128)]===0x0,_0x3b3ba1(0x11f)+_0x2d74d4+_0x3b3ba1(0xf8)),assertVerified(_0x59786c['sort']===_0x20d367[_0x3b3ba1(0xe3)],'Created\x20folder\x20'+_0x2d74d4+_0x3b3ba1(0x104)),assertVerified(_0x59786c[_0x3b3ba1(0xe7)]===_0x20d367[_0x3b3ba1(0xe7)],_0x3b3ba1(0x11f)+_0x2d74d4+'\x20has\x20unexpected\x20parent\x20'+(_0x59786c[_0x3b3ba1(0xe7)]??'root')+'.'),assertVerified(_0x59786c[_0x3b3ba1(0xee)]==null,_0x3b3ba1(0x11f)+_0x2d74d4+_0x3b3ba1(0x115));const _0x19e464=_0x59786c[_0x3b3ba1(0xe7)]==null?undefined:requireFolder(_0x38ee74,_0x59786c['parentId']);assertVerified(_0x59786c[_0x3b3ba1(0x117)]===(_0x19e464?_0x19e464[_0x3b3ba1(0x117)]+0x1:0x0),_0x3b3ba1(0x11f)+_0x2d74d4+_0x3b3ba1(0x127));}catch(_0x1ec9cc){const _0x3b7e84=describeMenuErrorCause(_0x1ec9cc,_0x3b3ba1(0xfa),_0x2d74d4),_0x2e076b=asVerificationError(_0x1ec9cc,'Folder\x20'+_0x2d74d4+_0x3b3ba1(0xf9));throw menuFailure(_0x2e076b,_0x2d1a01,{'stage':_0x3b3ba1(0xea),'succeeded':[{'id':_0x2d74d4,'created':!![],'path':_0x30dc87}],'failed':{'id':_0x2d74d4,'finalFactsConfirmed':![],..._0x3b7e84},'warnings':[_0x3b3ba1(0xdc)+_0x2d74d4+_0x3b3ba1(0xf1)],'after':_0x2d6a6c??{..._0x20d367,'id':_0x2d74d4,'path':_0x30dc87},'verification':{'status':_0x3b3ba1(0xe1),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x2d74d4}});}const _0x53b032=mutationResult({..._0x2d1a01,'after':_0x59786c,'dryRun':![],'succeeded':[{'id':_0x2d74d4,'type':_0x3b3ba1(0xfd),'path':_0x30dc87}],'verification':{'checkedBy':_0x3b3ba1(0x126),'snapshotHash':_0x38ee74['hash'],'folder':!![],'path':_0x30dc87,'emptyResources':!![]}});return{'ok':!![],'data':_0x53b032,'message':'Created\x20menu\x20folder\x20'+_0x2d74d4+'.'};}};function validateCreateInput(_0x2b5ba4){const _0x5898c4=a111_0x1299c7,_0x3aa513=_0x2b5ba4[_0x5898c4(0x11c)](_0x5898c4(0x110))[_0x5898c4(0x10a)]();if(!_0x3aa513)throw CliErrors['flagMissing'](_0x5898c4(0x110));parseParentId(_0x2b5ba4,_0x5898c4(0x113)),validateSort(_0x2b5ba4);}async function buildCreatePlan(_0x548207,_0x43c513){const _0x1879ca=a111_0x1299c7,_0x1b7b5a=await fetchMutationSnapshot(_0x548207,_0x1879ca(0xf3)),_0x47d988=parseParentId(_0x548207,'parent-id')??null;if(_0x47d988!=null)requireFolder(_0x1b7b5a,_0x47d988);const _0x28fa46=validateSort(_0x548207),_0x48506a=_0x28fa46??nextSiblingSort(_0x1b7b5a,_0x47d988,_0x1879ca(0xfd)),_0x16aadd=_0x548207[_0x1879ca(0x11c)](_0x1879ca(0x110))['trim']();return mutationResult({'operation':_0x1879ca(0xe2),'selector':{'label':_0x16aadd,'parentId':_0x47d988},'before':null,'after':{'id':null,'parentId':_0x47d988,'label':_0x16aadd,'path':_0x1879ca(0xef),'type':_0x1879ca(0xfd),'visible':!![],'sort':_0x48506a,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x43c513,'backend':[...BACKEND],'plannedActions':[{'stage':_0x1879ca(0x116),'method':_0x1879ca(0x109),'path':_0x1879ca(0xf5),'body':{'parentId':toApiParentId(_0x47d988),'label':_0x16aadd,'type':'folder','visible':!![],'sort':_0x48506a,'extend':{}}}],'snapshotHash':_0x1b7b5a[_0x1879ca(0xe9)],'warnings':[_0x1879ca(0x105)]});}function a111_0x3377(){const _0x14d791=['Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','parent-id','Created\x20menu\x20','\x20unexpectedly\x20owns\x20a\x20page.','create-folder','depth','568431RfEAYl','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','type','byId','str','2444150nYoaGB','\x20may\x20exist\x20online\x20at\x20path\x20','Created\x20folder\x20','length','appCode','after','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','\x20has\x20resources.','menu\x20list','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','childrenCount','Folder\x20','high-risk-write','Menu\x20create\x20response\x20for\x20folder\x20',';\x20verify\x20it\x20before\x20retrying.','36487FXxqzm','failed','group-create','sort','path','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','parentId','string','hash','verification','cookie','16PBGtBn','menu','pageId','<platform-generated>','370866RTvvEW','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','13TjjGrf','create\x20folder','isSafeInteger','/smartapi/menu/create','12522aMSghL','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x20is\x20not\x20empty.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','verify\x20folder\x20creation','get','\x20is\x20not\x20type\x20folder.','folder','menu_create_response_invalid','stringify','create','2975ccxAMF','rabetbase\x20menu\x20list\x20--format\x20json','\x20has\x20an\x20unexpected\x20label.','\x20has\x20an\x20unexpected\x20sort.','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','\x20is\x20not\x20visible.','create-response-validation','348TlMlDW','POST','trim','Folder\x20label','49rHQzKo','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x22\x20with\x20a\x20platform-generated\x20path.','902568QQYUYx','label','136txSQQZ'];a111_0x3377=function(){return _0x14d791;};return a111_0x3377();}
|
|
1
|
+
const a111_0xb46083=a111_0x4822;(function(_0x2cfb2b,_0xaa5f4d){const _0x5b01e2=a111_0x4822,_0x39fccb=_0x2cfb2b();while(!![]){try{const _0x436a9d=parseInt(_0x5b01e2(0x217))/0x1*(parseInt(_0x5b01e2(0x21d))/0x2)+parseInt(_0x5b01e2(0x213))/0x3+parseInt(_0x5b01e2(0x1e4))/0x4*(-parseInt(_0x5b01e2(0x1ee))/0x5)+parseInt(_0x5b01e2(0x1fd))/0x6*(-parseInt(_0x5b01e2(0x202))/0x7)+parseInt(_0x5b01e2(0x214))/0x8+parseInt(_0x5b01e2(0x205))/0x9*(-parseInt(_0x5b01e2(0x209))/0xa)+parseInt(_0x5b01e2(0x208))/0xb;if(_0x436a9d===_0xaa5f4d)break;else _0x39fccb['push'](_0x39fccb['shift']());}catch(_0x2c7090){_0x39fccb['push'](_0x39fccb['shift']());}}}(a111_0x4c7d,0x41f83));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,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';function a111_0x4822(_0x25f21e,_0x52f1ce){_0x25f21e=_0x25f21e-0x1e4;const _0x4c7da9=a111_0x4c7d();let _0x482205=_0x4c7da9[_0x25f21e];return _0x482205;}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a111_0xb46083(0x1fb),'path':a111_0xb46083(0x1f6)}];export const menuGroupCreate={'service':a111_0xb46083(0x1e9),'command':a111_0xb46083(0x201),'description':a111_0xb46083(0x225),'risk':'write','structuredErrors':!![],'flags':[{'name':a111_0xb46083(0x1fe),'type':a111_0xb46083(0x20c),'required':!![],'description':a111_0xb46083(0x1f7)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x59d762){validateCreateInput(_0x59d762);},async 'dryRun'(_0x19eb0a){const _0x266d01=a111_0xb46083,_0x194d7b=await buildCreatePlan(_0x19eb0a,!![]),_0x442313=_0x194d7b['after'];return menuDryRunResult(_0x194d7b,{'method':_0x266d01(0x1fb),'url':_0x266d01(0x1f6),'body':{'parentId':toApiParentId(_0x442313[_0x266d01(0x1fc)]),'label':_0x442313[_0x266d01(0x1fe)],'type':_0x266d01(0x20d),'visible':!![],'sort':_0x442313[_0x266d01(0x1ea)],'extend':{}},'description':_0x266d01(0x1e8)+String(_0x442313[_0x266d01(0x1fe)])+_0x266d01(0x21f)});},async 'execute'(_0x53b6d9){const _0x2c8677=a111_0xb46083;validateCreateInput(_0x53b6d9);const _0x160fdb=await buildCreatePlan(_0x53b6d9,![]),_0x22fbbc=_0x160fdb[_0x2c8677(0x1f4)];await recheckMutationSnapshot(_0x53b6d9,_0x160fdb,'create\x20folder');let _0x455663;try{_0x455663=await createMenuEntity(_0x53b6d9[_0x2c8677(0x1f5)],_0x53b6d9['cookie'],{'parentId':toApiParentId(_0x22fbbc[_0x2c8677(0x1fc)]),'label':String(_0x22fbbc[_0x2c8677(0x1fe)]),'type':_0x2c8677(0x20d),'visible':!![],'sort':Number(_0x22fbbc[_0x2c8677(0x1ea)]),'extend':{}});}catch(_0x481606){const _0x545607=mapMenuApiError(_0x481606,_0x2c8677(0x204));throw menuFailure(_0x545607,_0x160fdb,{'stage':'create','failed':{}});}const _0x57dbda=Number(_0x455663['id']);if(!Number['isSafeInteger'](_0x57dbda)||_0x57dbda<=0x0){const _0x4e2507=menuError(_0x2c8677(0x211),_0x2c8677(0x210),_0x2c8677(0x220));throw menuFailure(_0x4e2507,_0x160fdb,{'stage':'create-response-validation','failed':{'createdId':_0x455663['id']??null},'warnings':[_0x2c8677(0x1ec)],'verification':{'status':'failed','lookupCommand':_0x2c8677(0x20b)}});}const _0x3ec36b=typeof _0x455663[_0x2c8677(0x20a)]===_0x2c8677(0x20c)?_0x455663[_0x2c8677(0x20a)]:'';if(!_0x3ec36b[_0x2c8677(0x20e)]()){const _0x225293=menuError(_0x2c8677(0x211),_0x2c8677(0x1fa)+_0x57dbda+_0x2c8677(0x1e7),_0x2c8677(0x223));throw menuFailure(_0x225293,_0x160fdb,{'stage':_0x2c8677(0x215),'succeeded':[{'id':_0x57dbda,'created':!![]}],'failed':{'id':_0x57dbda,'generatedPathConfirmed':![]},'warnings':['Folder\x20'+_0x57dbda+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x22fbbc,'id':_0x57dbda,'path':_0x3ec36b},'verification':{'status':_0x2c8677(0x1f8),'lookupCommand':_0x2c8677(0x20b),'targetId':_0x57dbda}});}let _0x34548a;try{_0x34548a=await fetchMenuSnapshot(_0x53b6d9[_0x2c8677(0x1f5)],_0x53b6d9[_0x2c8677(0x218)]);}catch(_0x1ed610){const _0x4af90f=describeMenuErrorCause(_0x1ed610,_0x2c8677(0x1eb),_0x57dbda),_0x1ba1ae=asVerificationError(_0x1ed610,_0x2c8677(0x1f9)+_0x57dbda+'\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts');throw menuFailure(_0x1ba1ae,_0x160fdb,{'stage':'verification','succeeded':[{'id':_0x57dbda,'created':!![],'path':_0x3ec36b}],'failed':{'id':_0x57dbda,'finalFactsConfirmed':![],..._0x4af90f},'warnings':[_0x2c8677(0x1f9)+_0x57dbda+_0x2c8677(0x1e5)+JSON['stringify'](_0x3ec36b)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x22fbbc,'id':_0x57dbda,'path':_0x3ec36b},'verification':{'status':_0x2c8677(0x1f8),'lookupCommand':_0x2c8677(0x20b),'targetId':_0x57dbda}});}const _0x452a99=_0x34548a[_0x2c8677(0x20f)]['get'](_0x57dbda);let _0x116f8f;try{assertVerified(Boolean(_0x452a99),'Created\x20folder\x20'+_0x57dbda+_0x2c8677(0x203)),_0x116f8f=_0x452a99,assertVerified(_0x116f8f[_0x2c8677(0x1f0)]===_0x2c8677(0x20d),'Created\x20menu\x20'+_0x57dbda+_0x2c8677(0x21e)),assertVerified(_0x116f8f[_0x2c8677(0x1fe)]===_0x22fbbc[_0x2c8677(0x1fe)],'Created\x20folder\x20'+_0x57dbda+_0x2c8677(0x1f3)),assertVerified(_0x116f8f[_0x2c8677(0x20a)]===_0x3ec36b&&Boolean(_0x116f8f[_0x2c8677(0x20a)][_0x2c8677(0x20e)]()),_0x2c8677(0x221)+_0x57dbda+_0x2c8677(0x1ff)),assertVerified(_0x116f8f[_0x2c8677(0x1ed)]===!![],_0x2c8677(0x221)+_0x57dbda+'\x20is\x20not\x20visible.'),assertVerified(_0x116f8f[_0x2c8677(0x206)]['length']===0x0,_0x2c8677(0x221)+_0x57dbda+_0x2c8677(0x200)),assertVerified(_0x116f8f[_0x2c8677(0x207)]===0x0,_0x2c8677(0x221)+_0x57dbda+'\x20is\x20not\x20empty.'),assertVerified(_0x116f8f[_0x2c8677(0x1ea)]===_0x22fbbc[_0x2c8677(0x1ea)],_0x2c8677(0x221)+_0x57dbda+_0x2c8677(0x224)),assertVerified(_0x116f8f[_0x2c8677(0x1fc)]===_0x22fbbc['parentId'],_0x2c8677(0x221)+_0x57dbda+'\x20has\x20unexpected\x20parent\x20'+(_0x116f8f[_0x2c8677(0x1fc)]??'root')+'.'),assertVerified(_0x116f8f['pageId']==null,_0x2c8677(0x221)+_0x57dbda+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x241bb8=_0x116f8f['parentId']==null?undefined:requireFolder(_0x34548a,_0x116f8f[_0x2c8677(0x1fc)]);assertVerified(_0x116f8f[_0x2c8677(0x1e6)]===(_0x241bb8?_0x241bb8[_0x2c8677(0x1e6)]+0x1:0x0),_0x2c8677(0x221)+_0x57dbda+_0x2c8677(0x21a));}catch(_0x572ef6){const _0x143ffe=describeMenuErrorCause(_0x572ef6,'verify\x20folder\x20creation',_0x57dbda),_0x3df297=asVerificationError(_0x572ef6,_0x2c8677(0x1f9)+_0x57dbda+_0x2c8677(0x219));throw menuFailure(_0x3df297,_0x160fdb,{'stage':'verification','succeeded':[{'id':_0x57dbda,'created':!![],'path':_0x3ec36b}],'failed':{'id':_0x57dbda,'finalFactsConfirmed':![],..._0x143ffe},'warnings':[_0x2c8677(0x1f9)+_0x57dbda+_0x2c8677(0x21c)],'after':_0x452a99??{..._0x22fbbc,'id':_0x57dbda,'path':_0x3ec36b},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x57dbda}});}const _0x21dd3f=mutationResult({..._0x160fdb,'after':_0x116f8f,'dryRun':![],'succeeded':[{'id':_0x57dbda,'type':_0x2c8677(0x20d),'path':_0x3ec36b}],'verification':{'checkedBy':_0x2c8677(0x1f2),'snapshotHash':_0x34548a[_0x2c8677(0x222)],'folder':!![],'path':_0x3ec36b,'emptyResources':!![]}});return{'ok':!![],'data':_0x21dd3f,'message':_0x2c8677(0x1f1)+_0x57dbda+'.'};}};function validateCreateInput(_0x5937ea){const _0x40b9e6=a111_0xb46083,_0x2e7328=_0x5937ea[_0x40b9e6(0x21b)](_0x40b9e6(0x1fe))[_0x40b9e6(0x20e)]();if(!_0x2e7328)throw CliErrors[_0x40b9e6(0x1ef)](_0x40b9e6(0x1fe));parseParentId(_0x5937ea,_0x40b9e6(0x216)),validateSort(_0x5937ea);}async function buildCreatePlan(_0x500f0b,_0x2e9ab0){const _0x4ffaf9=a111_0xb46083,_0x5f3401=await fetchMutationSnapshot(_0x500f0b,_0x4ffaf9(0x204)),_0x480bde=parseParentId(_0x500f0b,_0x4ffaf9(0x216))??null;if(_0x480bde!=null)requireFolder(_0x5f3401,_0x480bde);const _0x24c43a=validateSort(_0x500f0b),_0x21fbbd=_0x24c43a??nextSiblingSort(_0x5f3401,_0x480bde,_0x4ffaf9(0x20d)),_0xd75379=_0x500f0b[_0x4ffaf9(0x21b)]('label')['trim']();return mutationResult({'operation':'group-create','selector':{'label':_0xd75379,'parentId':_0x480bde},'before':null,'after':{'id':null,'parentId':_0x480bde,'label':_0xd75379,'path':'<platform-generated>','type':_0x4ffaf9(0x20d),'visible':!![],'sort':_0x21fbbd,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x2e9ab0,'backend':[...BACKEND],'plannedActions':[{'stage':_0x4ffaf9(0x226),'method':_0x4ffaf9(0x1fb),'path':_0x4ffaf9(0x1f6),'body':{'parentId':toApiParentId(_0x480bde),'label':_0xd75379,'type':_0x4ffaf9(0x20d),'visible':!![],'sort':_0x21fbbd,'extend':{}}}],'snapshotHash':_0x5f3401[_0x4ffaf9(0x222)],'warnings':[_0x4ffaf9(0x212)]});}function a111_0x4c7d(){const _0x3dd040=['type','Created\x20menu\x20folder\x20','menu\x20list','\x20has\x20an\x20unexpected\x20label.','after','appCode','/smartapi/menu/create','Folder\x20label','failed','Folder\x20','Menu\x20create\x20response\x20for\x20folder\x20','POST','parentId','137292lBwJrZ','label','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20has\x20resources.','group-create','77oqiXjr','\x20is\x20missing\x20from\x20menu\x20list.','create\x20folder','29907GNQCSH','resources','childrenCount','4499902HowIUU','1510ibvDVV','path','rabetbase\x20menu\x20list\x20--format\x20json','string','folder','trim','byId','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','menu_create_response_invalid','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','411357CLNPyH','3373024UQwpVc','create-response-validation','parent-id','88343mwafHu','cookie','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','str','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','8zFIDpx','\x20is\x20not\x20type\x20folder.','\x22\x20with\x20a\x20platform-generated\x20path.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','Created\x20folder\x20','hash','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20has\x20an\x20unexpected\x20sort.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','create-folder','1516pAyfBQ','\x20may\x20exist\x20online\x20at\x20path\x20','depth','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','Would\x20create\x20empty\x20folder\x20\x22','menu','sort','verify\x20folder\x20creation','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','visible','3925mxOLuf','flagMissing'];a111_0x4c7d=function(){return _0x3dd040;};return a111_0x4c7d();}
|