@lovrabet/rabetbase-cli 2.3.16-beta.1 → 2.3.16-beta.2

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.
Files changed (277) hide show
  1. package/README.md +1 -1
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.js +1 -1
  11. package/lib/auth/login-success-html.js +1 -1
  12. package/lib/auth/logout.js +1 -1
  13. package/lib/cli-flags.js +1 -1
  14. package/lib/cli.js +1 -1
  15. package/lib/commands/api/generate.js +1 -1
  16. package/lib/commands/api/index.js +1 -1
  17. package/lib/commands/api/list.js +1 -1
  18. package/lib/commands/api/pull.js +1 -1
  19. package/lib/commands/api/shared.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/members-list.js +1 -0
  23. package/lib/commands/app/remote-directory.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/get.js +1 -1
  53. package/lib/commands/config/index.js +1 -1
  54. package/lib/commands/config/list.js +1 -1
  55. package/lib/commands/config/set.js +1 -1
  56. package/lib/commands/config/shared.js +1 -1
  57. package/lib/commands/data/filter.js +1 -1
  58. package/lib/commands/data/getOne.js +1 -1
  59. package/lib/commands/data/index.js +1 -1
  60. package/lib/commands/data/shared.js +1 -1
  61. package/lib/commands/dataset/business-group-update.js +1 -1
  62. package/lib/commands/dataset/capability.js +1 -1
  63. package/lib/commands/dataset/delete.js +1 -1
  64. package/lib/commands/dataset/detail.js +1 -1
  65. package/lib/commands/dataset/extend-update.js +1 -1
  66. package/lib/commands/dataset/field-update.js +1 -1
  67. package/lib/commands/dataset/generate.js +1 -1
  68. package/lib/commands/dataset/index.js +1 -1
  69. package/lib/commands/dataset/list.js +1 -1
  70. package/lib/commands/dataset/operations.js +1 -1
  71. package/lib/commands/dataset/relation-audit.js +1 -1
  72. package/lib/commands/dataset/relation-create.js +1 -1
  73. package/lib/commands/dataset/relation-delete.js +1 -1
  74. package/lib/commands/dataset/relation-shared.js +1 -1
  75. package/lib/commands/dataset/relation-update.js +1 -1
  76. package/lib/commands/dataset/relations.js +1 -1
  77. package/lib/commands/dataset/rename.js +1 -1
  78. package/lib/commands/dataset/restore.js +1 -1
  79. package/lib/commands/db/analysis-batching.js +1 -1
  80. package/lib/commands/db/analyze-batch-plan.js +1 -1
  81. package/lib/commands/db/analyze-cancel.js +1 -1
  82. package/lib/commands/db/analyze-start.js +1 -1
  83. package/lib/commands/db/analyze-status.js +1 -1
  84. package/lib/commands/db/create.js +1 -1
  85. package/lib/commands/db/delete.js +1 -1
  86. package/lib/commands/db/detail.js +1 -1
  87. package/lib/commands/db/diff.js +1 -1
  88. package/lib/commands/db/index.js +1 -1
  89. package/lib/commands/db/list.js +1 -1
  90. package/lib/commands/db/shared.js +1 -1
  91. package/lib/commands/db/tables.js +1 -1
  92. package/lib/commands/db/test.js +1 -1
  93. package/lib/commands/db/update.js +1 -1
  94. package/lib/commands/doctor.js +1 -1
  95. package/lib/commands/file/index.js +1 -1
  96. package/lib/commands/init/index.js +1 -1
  97. package/lib/commands/issue/index.js +1 -1
  98. package/lib/commands/issue/nudge.js +1 -1
  99. package/lib/commands/issue/report.js +1 -1
  100. package/lib/commands/issue/shared.js +1 -1
  101. package/lib/commands/kb/create.js +1 -1
  102. package/lib/commands/kb/delete.js +1 -1
  103. package/lib/commands/kb/detail.js +1 -1
  104. package/lib/commands/kb/index.js +1 -1
  105. package/lib/commands/kb/list.js +1 -1
  106. package/lib/commands/kb/shared.js +1 -1
  107. package/lib/commands/kb/update.js +1 -1
  108. package/lib/commands/logs/index.js +1 -1
  109. package/lib/commands/menu/asset-update.js +1 -1
  110. package/lib/commands/menu/delete.js +1 -1
  111. package/lib/commands/menu/external-link-create.js +1 -1
  112. package/lib/commands/menu/external-link-update.js +1 -1
  113. package/lib/commands/menu/group-create.js +1 -1
  114. package/lib/commands/menu/group-update.js +1 -1
  115. package/lib/commands/menu/index.js +1 -1
  116. package/lib/commands/menu/list.js +1 -1
  117. package/lib/commands/menu/move.js +1 -1
  118. package/lib/commands/menu/regroup-start.js +1 -1
  119. package/lib/commands/menu/rename.js +1 -1
  120. package/lib/commands/menu/shared/compare-table.js +1 -1
  121. package/lib/commands/menu/shared/delete-plan.js +1 -1
  122. package/lib/commands/menu/shared/facts.js +1 -1
  123. package/lib/commands/menu/shared/index.js +1 -1
  124. package/lib/commands/menu/shared/inquirer.js +1 -1
  125. package/lib/commands/menu/shared/local-pages.js +1 -1
  126. package/lib/commands/menu/shared/logic.js +1 -1
  127. package/lib/commands/menu/shared/mutations.js +1 -1
  128. package/lib/commands/menu/shared/service.js +1 -1
  129. package/lib/commands/menu/shared/sync-core.js +1 -1
  130. package/lib/commands/menu/shared/update-core.js +1 -1
  131. package/lib/commands/menu/shared/valid-url.js +1 -1
  132. package/lib/commands/menu/sync.js +1 -1
  133. package/lib/commands/notification/config-list.js +1 -1
  134. package/lib/commands/notification/index.js +1 -1
  135. package/lib/commands/ocr/index.js +1 -1
  136. package/lib/commands/page/generate-start.js +1 -1
  137. package/lib/commands/page/generate-status.js +1 -1
  138. package/lib/commands/page/index.js +1 -1
  139. package/lib/commands/page/pull.js +1 -1
  140. package/lib/commands/page/push.js +1 -1
  141. package/lib/commands/page/relation-audit.js +1 -1
  142. package/lib/commands/page/restore.js +1 -1
  143. package/lib/commands/page/shared.js +1 -1
  144. package/lib/commands/page/standard-page-status.js +1 -1
  145. package/lib/commands/page/sync.js +1 -1
  146. package/lib/commands/permit/index.js +1 -1
  147. package/lib/commands/permit/page-get.js +1 -1
  148. package/lib/commands/permit/page-set.js +1 -1
  149. package/lib/commands/permit/role-apis-set.js +1 -1
  150. package/lib/commands/permit/role-menus-set.js +1 -1
  151. package/lib/commands/permit/role-menus.js +1 -1
  152. package/lib/commands/permit/shared.js +1 -1
  153. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  154. package/lib/commands/project/create/format-elapsed.js +1 -1
  155. package/lib/commands/project/create/main.js +1 -1
  156. package/lib/commands/project/create/non-interactive.js +1 -1
  157. package/lib/commands/project/create/project-template-path.js +1 -1
  158. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  159. package/lib/commands/project/create/use-format-code.js +1 -1
  160. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  161. package/lib/commands/project/index.js +1 -1
  162. package/lib/commands/project/init.js +1 -1
  163. package/lib/commands/project/upgrade.js +1 -1
  164. package/lib/commands/registry.js +1 -1
  165. package/lib/commands/role/create.js +1 -1
  166. package/lib/commands/role/delete.js +1 -1
  167. package/lib/commands/role/detail.js +1 -1
  168. package/lib/commands/role/index.js +1 -1
  169. package/lib/commands/role/list.js +1 -1
  170. package/lib/commands/role/shared.js +1 -1
  171. package/lib/commands/role/update.js +1 -1
  172. package/lib/commands/role/user-add.js +1 -1
  173. package/lib/commands/role/user-remove.js +1 -1
  174. package/lib/commands/role/user-resolve.js +1 -1
  175. package/lib/commands/run/index.js +1 -1
  176. package/lib/commands/schema.js +1 -1
  177. package/lib/commands/sql/create.js +1 -1
  178. package/lib/commands/sql/delete.js +1 -1
  179. package/lib/commands/sql/detail.js +1 -1
  180. package/lib/commands/sql/exec.js +1 -1
  181. package/lib/commands/sql/index.js +1 -1
  182. package/lib/commands/sql/list.js +1 -1
  183. package/lib/commands/sql/pull.js +1 -1
  184. package/lib/commands/sql/push.js +1 -1
  185. package/lib/commands/sql/save.js +1 -1
  186. package/lib/commands/sql/shared.js +1 -1
  187. package/lib/commands/sql/status.js +1 -1
  188. package/lib/commands/sql/validate.js +1 -1
  189. package/lib/commands/task/index.js +1 -1
  190. package/lib/commands/task/status.js +1 -1
  191. package/lib/commands/tenant/index.js +1 -0
  192. package/lib/commands/tenant/members-list.js +1 -0
  193. package/lib/commands/tenant/shared.js +1 -0
  194. package/lib/commands/workspace/add.js +1 -1
  195. package/lib/commands/workspace/index.js +1 -1
  196. package/lib/commands/workspace/remove.js +1 -1
  197. package/lib/config/schema.js +1 -1
  198. package/lib/constant/cdn.js +1 -1
  199. package/lib/constant/cli.js +1 -1
  200. package/lib/constant/defaults.js +1 -1
  201. package/lib/constant/domain.js +1 -1
  202. package/lib/constant/env.js +1 -1
  203. package/lib/constant/output.js +1 -1
  204. package/lib/constant/paths.js +1 -1
  205. package/lib/constant/risk.js +1 -1
  206. package/lib/context/app-resolver.js +1 -1
  207. package/lib/context/auth-resolver.js +1 -1
  208. package/lib/context/config-loader.js +1 -1
  209. package/lib/context.js +1 -1
  210. package/lib/core/alias-resolver.js +1 -1
  211. package/lib/core/api-client.js +1 -1
  212. package/lib/core/bff/config.js +1 -1
  213. package/lib/core/bff/file-system.js +1 -1
  214. package/lib/core/bff/hash.js +1 -1
  215. package/lib/core/bff/lock.js +1 -1
  216. package/lib/core/bff/utils.js +1 -1
  217. package/lib/core/db-resolver.js +1 -1
  218. package/lib/core/page/file-system.js +1 -1
  219. package/lib/core/page/hash.js +1 -1
  220. package/lib/core/page/lock.js +1 -1
  221. package/lib/core/sql-index-auditor.js +1 -1
  222. package/lib/core/sql-sync/config.js +1 -1
  223. package/lib/core/sql-sync/file-system.js +1 -1
  224. package/lib/core/sql-sync/hash.js +1 -1
  225. package/lib/core/sql-sync/lock.js +1 -1
  226. package/lib/core/sql-sync/utils.js +1 -1
  227. package/lib/core/sql-validator.js +1 -1
  228. package/lib/errors.js +1 -1
  229. package/lib/framework/build-all-flags.js +1 -1
  230. package/lib/framework/error-output.js +1 -1
  231. package/lib/framework/explicit-yes.js +1 -1
  232. package/lib/framework/flags.js +1 -1
  233. package/lib/framework/help.js +1 -1
  234. package/lib/framework/index.js +1 -1
  235. package/lib/framework/output.js +1 -1
  236. package/lib/framework/response.js +1 -1
  237. package/lib/framework/runner-alias.js +1 -1
  238. package/lib/framework/runner.js +1 -1
  239. package/lib/framework/schema-export.js +1 -1
  240. package/lib/framework/types.js +1 -1
  241. package/lib/generated/build-info.js +1 -1
  242. package/lib/help.js +1 -1
  243. package/lib/skills/main.js +1 -1
  244. package/lib/skills/npx-skills-add.js +1 -1
  245. package/lib/skills/skill-presence.js +1 -1
  246. package/lib/telemetry/cli-command-trace.js +1 -1
  247. package/lib/telemetry/cli-help-trace.js +1 -1
  248. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  249. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  250. package/lib/telemetry/send-cli-trace-log.js +1 -1
  251. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  252. package/lib/utils/ai_config.js +1 -1
  253. package/lib/utils/apply-jq-filter.js +1 -1
  254. package/lib/utils/cdn-config.js +1 -1
  255. package/lib/utils/check-sdk-version.js +1 -1
  256. package/lib/utils/cli-version-check.js +1 -1
  257. package/lib/utils/cli-version-policy.js +1 -1
  258. package/lib/utils/config.js +1 -1
  259. package/lib/utils/copy-directory.js +1 -1
  260. package/lib/utils/entity-with-id.js +1 -1
  261. package/lib/utils/file-utils.js +1 -1
  262. package/lib/utils/guides-cdn.js +1 -1
  263. package/lib/utils/http-client.js +1 -1
  264. package/lib/utils/is-non-interactive.js +1 -1
  265. package/lib/utils/logger.js +1 -1
  266. package/lib/utils/params.js +1 -1
  267. package/lib/utils/platform.js +1 -1
  268. package/lib/utils/rules-cdn.js +1 -1
  269. package/lib/utils/sleep.js +1 -1
  270. package/lib/utils/template-replacer.js +1 -1
  271. package/lib/utils/update-notice.js +1 -1
  272. package/lib/utils/version.js +1 -1
  273. package/lib/utils/with-active-cookie.js +1 -1
  274. package/lib/utils/write-cli-side-channel.js +1 -1
  275. package/package.json +2 -2
  276. package/lib/commands/app/add.js +0 -1
  277. package/lib/commands/app/remove.js +0 -1
@@ -1 +1 @@
1
- const a105_0x5718d8=a105_0x2b92;(function(_0x41cc24,_0x17e3bf){const _0x1e4560=a105_0x2b92,_0x5b0cf5=_0x41cc24();while(!![]){try{const _0x405af4=parseInt(_0x1e4560(0x204))/0x1+parseInt(_0x1e4560(0x23c))/0x2*(-parseInt(_0x1e4560(0x231))/0x3)+parseInt(_0x1e4560(0x203))/0x4+parseInt(_0x1e4560(0x227))/0x5+parseInt(_0x1e4560(0x23b))/0x6*(-parseInt(_0x1e4560(0x1f2))/0x7)+-parseInt(_0x1e4560(0x1f1))/0x8+parseInt(_0x1e4560(0x22d))/0x9;if(_0x405af4===_0x17e3bf)break;else _0x5b0cf5['push'](_0x5b0cf5['shift']());}catch(_0x5e9fc1){_0x5b0cf5['push'](_0x5b0cf5['shift']());}}}(a105_0x1542,0xc5253));function a105_0x1542(){const _0x7e09dd=['appCode','Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','totalCount','length','dry-run','kb_response_invalid','Knowledge-base\x20content\x20file\x20is\x20blank:\x20','push','defineProperty','string','1692335ivtfWF','byteLength','cause','Company\x20knowledge\x20base\x20not\x20found:\x20','paging','\x20version\x20changed:\x20expected\x20','16192368YJpBMh','Knowledge\x20base\x20','The\x20','filter','808398GTwnbZ','currentPage','sha256:','\x20was\x20requested.','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','content','kb_scope_mismatch','updateTime','kb_file_required','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','6NmZAZz','4SjbNHi','This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.','bool','Knowledge-base\x20list\x20stopped\x20at\x20','kb_file_unreadable','\x20response\x20is\x20missing\x20','Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','utf-8',',\x20current\x20','cookie','12802856NBQhCM','6887013VLepXB','Pass\x20--file\x20<knowledge.md>.','Knowledge-base\x20list\x20total\x20changed\x20from\x20','isFile','\x20to\x20','kb_not_found','digest','outcome_unknown','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','\x20records.','306','isSafeInteger','\x20response\x20contains\x20an\x20invalid\x20version.','kb_file_invalid','decode','number','company','3626904xssvYB','886310fjbVPa','kb_id_invalid','Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.','createTime','scope','Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','items','kb_confirmation_required','stringify','Knowledge-base\x20content\x20file\x20path\x20is\x20required.','Knowledge-base\x20list\x20returned\x20page\x20','Cannot\x20access\x20knowledge-base\x20content\x20file:\x20','trim','verification_unavailable','from','kb_list_contract_invalid','add','title','kb_content_invalid','\x20while\x20page\x20','has','yes','version','contentHash'];a105_0x1542=function(){return _0x7e09dd;};return a105_0x1542();}function a105_0x2b92(_0x4a22b9,_0x10b3be){_0x4a22b9=_0x4a22b9-0x1ee;const _0x15420c=a105_0x1542();let _0x2b9290=_0x15420c[_0x4a22b9];return _0x2b9290;}import{createHash}from'node:crypto';import{readFile,stat}from'node:fs/promises';import{resolve}from'node:path';import{TextDecoder}from'node:util';import{getEnterpriseKnowledgeBase,getPlatformErrorCode,listEnterpriseKnowledgeBases}from'../../core/api-client.js';import{CliError}from'../../errors.js';const LIST_PAGE_SIZE=0x32,DATA_NOT_EXIST_ERROR_CODE=a105_0x5718d8(0x1fc);export function kbError(_0x21583d,_0x10df82,_0x5c23b3){return new CliError(_0x21583d,0x1,_0x10df82,_0x5c23b3);}export function readKbId(_0x338c6b){const _0x17e995=a105_0x5718d8,_0x207032=_0x338c6b['num']('id');if(!Number[_0x17e995(0x1fd)](_0x207032)||_0x207032<=0x0)throw kbError(_0x17e995(0x205),'--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.');return _0x207032;}export function requireKbExplicitYes(_0x1b79c4){const _0x4dff30=a105_0x5718d8;if(_0x1b79c4['bool'](_0x4dff30(0x221))||_0x1b79c4[_0x4dff30(0x23e)](_0x4dff30(0x219)))return;throw kbError(_0x4dff30(0x20b),_0x4dff30(0x23d),_0x4dff30(0x23a));}function sha256(_0xacbac6){const _0x1a6564=a105_0x5718d8;return _0x1a6564(0x233)+createHash('sha256')['update'](_0xacbac6)[_0x1a6564(0x1f8)]('hex');}export function inspectKbContent(_0x7aef9d){const _0xcaf824=a105_0x5718d8,_0x311f9=Buffer[_0xcaf824(0x212)](_0x7aef9d,'utf8');return{'content':_0x7aef9d,'byteSize':_0x311f9[_0xcaf824(0x228)],'contentHash':sha256(_0x311f9)};}export async function readKbFile(_0x47a07f){const _0x4a0f90=a105_0x5718d8,_0x70a782=_0x47a07f[_0x4a0f90(0x210)]();if(!_0x70a782)throw kbError(_0x4a0f90(0x239),_0x4a0f90(0x20d),_0x4a0f90(0x1f3));const _0x3975a0=resolve(_0x70a782);let _0x54498b;try{_0x54498b=await stat(_0x3975a0);}catch(_0x3f0a3a){throw kbError(_0x4a0f90(0x240),_0x4a0f90(0x20f)+_0x70a782,_0x3f0a3a instanceof Error?_0x3f0a3a['message']:String(_0x3f0a3a));}if(!_0x54498b[_0x4a0f90(0x1f5)]())throw kbError(_0x4a0f90(0x1ff),_0x4a0f90(0x209)+_0x70a782);let _0x5c2d5d;try{_0x5c2d5d=await readFile(_0x3975a0);}catch(_0x1867c7){throw kbError(_0x4a0f90(0x240),_0x4a0f90(0x21e)+_0x70a782,_0x1867c7 instanceof Error?_0x1867c7['message']:String(_0x1867c7));}let _0x3d3c9c;try{_0x3d3c9c=new TextDecoder(_0x4a0f90(0x1ee),{'fatal':!![],'ignoreBOM':!![]})[_0x4a0f90(0x200)](_0x5c2d5d);}catch{throw kbError(_0x4a0f90(0x216),_0x4a0f90(0x242)+_0x70a782);}if(!_0x3d3c9c[_0x4a0f90(0x210)]())throw kbError(_0x4a0f90(0x216),_0x4a0f90(0x223)+_0x70a782);return inspectKbContent(_0x3d3c9c);}export async function verifyKbMutationReadback(_0x64c60,_0xf49dc4,_0x305828){const _0x23fea1=a105_0x5718d8;try{return await _0x305828();}catch(_0x546b1f){const _0x5b272f=kbError('kb_'+_0x64c60+'_'+(_0xf49dc4?_0x23fea1(0x1f9):_0x23fea1(0x211)),_0x23fea1(0x22f)+_0x64c60+_0x23fea1(0x1fa),_0x23fea1(0x235));Object[_0x23fea1(0x225)](_0x5b272f,_0x23fea1(0x229),{'value':_0x546b1f,'enumerable':![]});throw _0x5b272f;}}function requireRecordText(_0x511c00,_0x250c6e,_0x4fef39,_0x13513f={}){const _0x4892c3=a105_0x5718d8;if(typeof _0x511c00===_0x4892c3(0x226)&&(_0x13513f['allowEmpty']||_0x511c00[_0x4892c3(0x210)]()))return _0x511c00;throw kbError(_0x4892c3(0x222),_0x4892c3(0x22e)+String(_0x4fef39)+_0x4892c3(0x241)+_0x250c6e+'.');}export function projectKb(_0x61c2e3){const _0x1a1065=a105_0x5718d8;if(!Number[_0x1a1065(0x1fd)](_0x61c2e3['id'])||_0x61c2e3['id']<=0x0)throw kbError(_0x1a1065(0x222),_0x1a1065(0x21d));if(!Number['isSafeInteger'](_0x61c2e3[_0x1a1065(0x21a)])||_0x61c2e3['version']<0x0)throw kbError('kb_response_invalid','Knowledge\x20base\x20'+_0x61c2e3['id']+_0x1a1065(0x1fe));if(_0x61c2e3[_0x1a1065(0x208)]!==_0x1a1065(0x202))throw kbError(_0x1a1065(0x237),'Knowledge\x20base\x20'+_0x61c2e3['id']+'\x20is\x20not\x20company-scoped.');const _0x1fcfc1=requireRecordText(_0x61c2e3[_0x1a1065(0x21c)],_0x1a1065(0x21c),_0x61c2e3['id']),_0x3875d0=requireRecordText(_0x61c2e3['title'],_0x1a1065(0x215),_0x61c2e3['id']),_0x12c14e=inspectKbContent(requireRecordText(_0x61c2e3[_0x1a1065(0x236)],'content',_0x61c2e3['id'],{'allowEmpty':!![]})),_0x3f86d2=typeof _0x61c2e3[_0x1a1065(0x207)]===_0x1a1065(0x226)||typeof _0x61c2e3[_0x1a1065(0x207)]===_0x1a1065(0x201)?_0x61c2e3[_0x1a1065(0x207)]:undefined,_0x2032a5=typeof _0x61c2e3['updateTime']===_0x1a1065(0x226)||typeof _0x61c2e3[_0x1a1065(0x238)]===_0x1a1065(0x201)?_0x61c2e3['updateTime']:undefined,_0x265d27=sha256(JSON[_0x1a1065(0x20c)]({'id':_0x61c2e3['id'],'scope':_0x61c2e3[_0x1a1065(0x208)],'appCode':_0x1fcfc1,'title':_0x3875d0,'version':_0x61c2e3[_0x1a1065(0x21a)],'contentHash':_0x12c14e['contentHash'],'createTime':_0x3f86d2,'updateTime':_0x2032a5}));return{'id':_0x61c2e3['id'],'scope':_0x1a1065(0x202),'appCode':_0x1fcfc1,'title':_0x3875d0,'version':_0x61c2e3[_0x1a1065(0x21a)],'contentByteSize':_0x12c14e['byteSize'],'contentHash':_0x12c14e[_0x1a1065(0x21b)],'snapshotHash':_0x265d27,..._0x3f86d2!==undefined?{'createTime':_0x3f86d2}:{},..._0x2032a5!==undefined?{'updateTime':_0x2032a5}:{}};}export function assertCompanyKnowledgeBase(_0x61bca7,_0x712c8c,_0x227db4){const _0x4417b2=a105_0x5718d8;if(_0x227db4!==undefined&&_0x61bca7['id']!==_0x227db4)throw kbError('kb_response_invalid','Knowledge-base\x20get-one\x20returned\x20id\x20'+_0x61bca7['id']+'\x20while\x20id\x20'+_0x227db4+_0x4417b2(0x234));if(_0x61bca7['scope']!==_0x4417b2(0x202)||_0x61bca7[_0x4417b2(0x21c)]!==_0x712c8c)throw kbError('kb_scope_mismatch','Knowledge\x20base\x20'+_0x61bca7['id']+'\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20'+_0x712c8c+'.');}export async function fetchAllCompanyKnowledgeBases(_0x2a609f,_0x1dc04f){const _0x2e0769=a105_0x5718d8,_0x373a6d=[],_0x199d5b=new Set();let _0x4c62ca=0x1,_0x54d8d7=0x0,_0x2ff8a7;while(!![]){const _0x131c69=await listEnterpriseKnowledgeBases(_0x2a609f[_0x2e0769(0x1f0)],{'currentPage':_0x4c62ca,'pageSize':LIST_PAGE_SIZE,'appCode':_0x2a609f[_0x2e0769(0x21c)],..._0x1dc04f}),_0x140729=_0x131c69['paging']?.[_0x2e0769(0x21f)];if(_0x131c69[_0x2e0769(0x22b)]?.['currentPage']!==undefined&&_0x131c69[_0x2e0769(0x22b)][_0x2e0769(0x232)]!==_0x4c62ca)throw kbError(_0x2e0769(0x213),_0x2e0769(0x20e)+_0x131c69[_0x2e0769(0x22b)][_0x2e0769(0x232)]+_0x2e0769(0x217)+_0x4c62ca+_0x2e0769(0x234));if(_0x140729!==undefined){if(_0x2ff8a7!==undefined&&_0x140729!==_0x2ff8a7)throw kbError('kb_list_contract_invalid',_0x2e0769(0x1f4)+_0x2ff8a7+_0x2e0769(0x1f6)+_0x140729+'\x20during\x20paging.','Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.');_0x2ff8a7=_0x140729;}for(const _0x409f36 of _0x131c69[_0x2e0769(0x20a)]){if(!Number[_0x2e0769(0x1fd)](_0x409f36['id'])||_0x199d5b[_0x2e0769(0x218)](_0x409f36['id']))throw kbError(_0x2e0769(0x213),'Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20'+String(_0x409f36['id'])+'.');_0x199d5b[_0x2e0769(0x214)](_0x409f36['id']),_0x409f36[_0x2e0769(0x208)]==='company'&&_0x409f36['appCode']===_0x2a609f['appCode']&&_0x373a6d[_0x2e0769(0x224)](_0x409f36);}_0x54d8d7+=_0x131c69[_0x2e0769(0x20a)]['length'];if(_0x140729!==undefined&&_0x54d8d7>=_0x140729)break;if(_0x131c69[_0x2e0769(0x20a)][_0x2e0769(0x220)]<LIST_PAGE_SIZE){if(_0x140729!==undefined&&_0x54d8d7<_0x140729)throw kbError('kb_list_contract_invalid',_0x2e0769(0x23f)+_0x54d8d7+'\x20of\x20'+_0x140729+_0x2e0769(0x1fb));break;}_0x4c62ca+=0x1;}return _0x373a6d;}export function findExactCompanyKnowledgeBases(_0x37060d,_0x19a331,_0x3a8d76){const _0x4b733c=a105_0x5718d8;return _0x37060d[_0x4b733c(0x230)](_0xf6ea47=>_0xf6ea47[_0x4b733c(0x208)]===_0x4b733c(0x202)&&_0xf6ea47['appCode']===_0x19a331&&_0xf6ea47['title']===_0x3a8d76);}export async function getKbOrNull(_0x3462a3,_0x1ce5d4){const _0xc2928d=a105_0x5718d8;try{const _0xb8fb64=await getEnterpriseKnowledgeBase(_0x3462a3['cookie'],_0x1ce5d4);return assertCompanyKnowledgeBase(_0xb8fb64,_0x3462a3[_0xc2928d(0x21c)],_0x1ce5d4),_0xb8fb64;}catch(_0x341b39){if(getPlatformErrorCode(_0x341b39)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x341b39;}}export async function requireKb(_0x12edd4,_0x42a608){const _0x434696=a105_0x5718d8,_0x418f2e=await getKbOrNull(_0x12edd4,_0x42a608);if(!_0x418f2e)throw kbError(_0x434696(0x1f7),_0x434696(0x22a)+_0x42a608,_0x434696(0x206));return _0x418f2e;}export function assertExpectedKbVersion(_0x10592d,_0x3df168){const _0x1561a7=a105_0x5718d8;if(_0x3df168===undefined||_0x10592d[_0x1561a7(0x21a)]===_0x3df168)return;throw kbError('kb_state_drift',_0x1561a7(0x22e)+_0x10592d['id']+_0x1561a7(0x22c)+_0x3df168+_0x1561a7(0x1ef)+_0x10592d[_0x1561a7(0x21a)]+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.');}
1
+ const a104_0x4115e2=a104_0x4e77;(function(_0x5726e6,_0x20621c){const _0x19b385=a104_0x4e77,_0xbd89df=_0x5726e6();while(!![]){try{const _0x5a1a83=parseInt(_0x19b385(0xd4))/0x1*(parseInt(_0x19b385(0x126))/0x2)+parseInt(_0x19b385(0xe3))/0x3*(parseInt(_0x19b385(0xd2))/0x4)+-parseInt(_0x19b385(0xf3))/0x5+parseInt(_0x19b385(0xf2))/0x6*(parseInt(_0x19b385(0xfc))/0x7)+-parseInt(_0x19b385(0x100))/0x8+parseInt(_0x19b385(0xe9))/0x9+parseInt(_0x19b385(0xf7))/0xa*(-parseInt(_0x19b385(0x115))/0xb);if(_0x5a1a83===_0x20621c)break;else _0xbd89df['push'](_0xbd89df['shift']());}catch(_0x5042a7){_0xbd89df['push'](_0xbd89df['shift']());}}}(a104_0x2552,0xee963));import{createHash}from'node:crypto';import{readFile,stat}from'node:fs/promises';import{resolve}from'node:path';import{TextDecoder}from'node:util';import{getEnterpriseKnowledgeBase,getPlatformErrorCode,listEnterpriseKnowledgeBases}from'../../core/api-client.js';import{CliError}from'../../errors.js';const LIST_PAGE_SIZE=0x32,DATA_NOT_EXIST_ERROR_CODE=a104_0x4115e2(0xe6);export function kbError(_0xbf5de3,_0x4db1a9,_0x86ade3){return new CliError(_0xbf5de3,0x1,_0x4db1a9,_0x86ade3);}export function readKbId(_0x5ef6c6){const _0xc31e7=a104_0x4115e2,_0xf220e5=_0x5ef6c6[_0xc31e7(0x122)]('id');if(!Number[_0xc31e7(0xe5)](_0xf220e5)||_0xf220e5<=0x0)throw kbError(_0xc31e7(0x114),'--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.');return _0xf220e5;}export function requireKbExplicitYes(_0x313a92){const _0x55c6b4=a104_0x4115e2;if(_0x313a92[_0x55c6b4(0x10b)](_0x55c6b4(0x11e))||_0x313a92['bool'](_0x55c6b4(0xfb)))return;throw kbError(_0x55c6b4(0xec),_0x55c6b4(0x117),'Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.');}function sha256(_0xdb81ac){const _0x1db00d=a104_0x4115e2;return'sha256:'+createHash('sha256')[_0x1db00d(0x11a)](_0xdb81ac)[_0x1db00d(0xdb)](_0x1db00d(0x107));}export function inspectKbContent(_0x1022d7){const _0x33e5b6=a104_0x4115e2,_0x16100f=Buffer[_0x33e5b6(0xe7)](_0x1022d7,_0x33e5b6(0xed));return{'content':_0x1022d7,'byteSize':_0x16100f[_0x33e5b6(0x106)],'contentHash':sha256(_0x16100f)};}export async function readKbFile(_0x2d5f09){const _0xd9f441=a104_0x4115e2,_0x14b2c4=_0x2d5f09[_0xd9f441(0x118)]();if(!_0x14b2c4)throw kbError(_0xd9f441(0xeb),'Knowledge-base\x20content\x20file\x20path\x20is\x20required.',_0xd9f441(0x116));const _0x2af149=resolve(_0x14b2c4);let _0x5eed44;try{_0x5eed44=await stat(_0x2af149);}catch(_0x36c659){throw kbError(_0xd9f441(0x101),_0xd9f441(0x103)+_0x14b2c4,_0x36c659 instanceof Error?_0x36c659[_0xd9f441(0x109)]:String(_0x36c659));}if(!_0x5eed44[_0xd9f441(0xd3)]())throw kbError(_0xd9f441(0x110),'Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20'+_0x14b2c4);let _0x2b0ce6;try{_0x2b0ce6=await readFile(_0x2af149);}catch(_0x4aef3f){throw kbError(_0xd9f441(0x101),_0xd9f441(0xe8)+_0x14b2c4,_0x4aef3f instanceof Error?_0x4aef3f[_0xd9f441(0x109)]:String(_0x4aef3f));}let _0x297d4d;try{_0x297d4d=new TextDecoder(_0xd9f441(0x120),{'fatal':!![],'ignoreBOM':!![]})['decode'](_0x2b0ce6);}catch{throw kbError('kb_content_invalid',_0xd9f441(0x111)+_0x14b2c4);}if(!_0x297d4d[_0xd9f441(0x118)]())throw kbError(_0xd9f441(0xfe),_0xd9f441(0x112)+_0x14b2c4);return inspectKbContent(_0x297d4d);}export async function verifyKbMutationReadback(_0x3abbb6,_0x2fd88a,_0x59597f){const _0x33bb96=a104_0x4115e2;try{return await _0x59597f();}catch(_0x559916){const _0xddccc6=kbError(_0x33bb96(0x10c)+_0x3abbb6+'_'+(_0x2fd88a?_0x33bb96(0xf0):_0x33bb96(0xd9)),'The\x20'+_0x3abbb6+_0x33bb96(0x129),_0x33bb96(0xe2));Object[_0x33bb96(0x10d)](_0xddccc6,_0x33bb96(0xf5),{'value':_0x559916,'enumerable':![]});throw _0xddccc6;}}function requireRecordText(_0x3a2656,_0x1bd1ad,_0x3bf039,_0x3118f3={}){const _0x1649bd=a104_0x4115e2;if(typeof _0x3a2656==='string'&&(_0x3118f3['allowEmpty']||_0x3a2656['trim']()))return _0x3a2656;throw kbError(_0x1649bd(0x128),_0x1649bd(0x108)+String(_0x3bf039)+'\x20response\x20is\x20missing\x20'+_0x1bd1ad+'.');}function a104_0x2552(){const _0x2eba5e=['kb_confirmation_required','utf8','Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.','paging','outcome_unknown','string','12niOJvN','3450065CNTWYS','\x20was\x20requested.','cause','createTime','70hnladk','number','Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20','\x20while\x20page\x20','yes','1704955GpHYhw','stringify','kb_content_invalid','totalCount','10809760VtPNdh','kb_file_unreadable','has','Cannot\x20access\x20knowledge-base\x20content\x20file:\x20','\x20response\x20contains\x20an\x20invalid\x20version.','length','byteLength','hex','Knowledge\x20base\x20','message','content','bool','kb_','defineProperty','\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20','add','kb_file_invalid','Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','Knowledge-base\x20content\x20file\x20is\x20blank:\x20','scope','kb_id_invalid','1024782YyxxBm','Pass\x20--file\x20<knowledge.md>.','This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.','trim','company','update','\x20records.','appCode','Knowledge-base\x20list\x20stopped\x20at\x20','dry-run','byteSize','utf-8','version','num','currentPage','kb_list_contract_invalid','updateTime','2ovOsLd','\x20of\x20','kb_response_invalid','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.','cookie','4uVIWqS','isFile','16271UBnKty','Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.','\x20while\x20id\x20','title','\x20during\x20paging.','verification_unavailable','filter','digest','kb_not_found','kb_state_drift',',\x20current\x20','\x20to\x20','contentHash','Knowledge-base\x20list\x20returned\x20page\x20','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','5297817dgHJRX','Knowledge-base\x20list\x20total\x20changed\x20from\x20','isSafeInteger','306','from','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','12611502MTzOyZ','items','kb_file_required'];a104_0x2552=function(){return _0x2eba5e;};return a104_0x2552();}export function projectKb(_0x4c234f){const _0x49adaf=a104_0x4115e2;if(!Number[_0x49adaf(0xe5)](_0x4c234f['id'])||_0x4c234f['id']<=0x0)throw kbError(_0x49adaf(0x128),_0x49adaf(0xee));if(!Number[_0x49adaf(0xe5)](_0x4c234f[_0x49adaf(0x121)])||_0x4c234f[_0x49adaf(0x121)]<0x0)throw kbError(_0x49adaf(0x128),_0x49adaf(0x108)+_0x4c234f['id']+_0x49adaf(0x104));if(_0x4c234f[_0x49adaf(0x113)]!==_0x49adaf(0x119))throw kbError('kb_scope_mismatch',_0x49adaf(0x108)+_0x4c234f['id']+'\x20is\x20not\x20company-scoped.');const _0x10cb70=requireRecordText(_0x4c234f[_0x49adaf(0x11c)],_0x49adaf(0x11c),_0x4c234f['id']),_0x30a6e3=requireRecordText(_0x4c234f[_0x49adaf(0xd7)],_0x49adaf(0xd7),_0x4c234f['id']),_0x4deb1d=inspectKbContent(requireRecordText(_0x4c234f[_0x49adaf(0x10a)],'content',_0x4c234f['id'],{'allowEmpty':!![]})),_0x106422=typeof _0x4c234f[_0x49adaf(0xf6)]===_0x49adaf(0xf1)||typeof _0x4c234f['createTime']==='number'?_0x4c234f[_0x49adaf(0xf6)]:undefined,_0x4479fc=typeof _0x4c234f[_0x49adaf(0x125)]===_0x49adaf(0xf1)||typeof _0x4c234f['updateTime']===_0x49adaf(0xf8)?_0x4c234f[_0x49adaf(0x125)]:undefined,_0x2684bf=sha256(JSON[_0x49adaf(0xfd)]({'id':_0x4c234f['id'],'scope':_0x4c234f[_0x49adaf(0x113)],'appCode':_0x10cb70,'title':_0x30a6e3,'version':_0x4c234f[_0x49adaf(0x121)],'contentHash':_0x4deb1d[_0x49adaf(0xe0)],'createTime':_0x106422,'updateTime':_0x4479fc}));return{'id':_0x4c234f['id'],'scope':_0x49adaf(0x119),'appCode':_0x10cb70,'title':_0x30a6e3,'version':_0x4c234f['version'],'contentByteSize':_0x4deb1d[_0x49adaf(0x11f)],'contentHash':_0x4deb1d[_0x49adaf(0xe0)],'snapshotHash':_0x2684bf,..._0x106422!==undefined?{'createTime':_0x106422}:{},..._0x4479fc!==undefined?{'updateTime':_0x4479fc}:{}};}export function assertCompanyKnowledgeBase(_0x2b32bd,_0x1083ff,_0x220487){const _0x4ab3b1=a104_0x4115e2;if(_0x220487!==undefined&&_0x2b32bd['id']!==_0x220487)throw kbError(_0x4ab3b1(0x128),'Knowledge-base\x20get-one\x20returned\x20id\x20'+_0x2b32bd['id']+_0x4ab3b1(0xd6)+_0x220487+_0x4ab3b1(0xf4));if(_0x2b32bd['scope']!=='company'||_0x2b32bd[_0x4ab3b1(0x11c)]!==_0x1083ff)throw kbError('kb_scope_mismatch',_0x4ab3b1(0x108)+_0x2b32bd['id']+_0x4ab3b1(0x10e)+_0x1083ff+'.');}export async function fetchAllCompanyKnowledgeBases(_0x379f85,_0x599a09){const _0x108895=a104_0x4115e2,_0x3c45c3=[],_0x4903f8=new Set();let _0xdb33a=0x1,_0x320bc5=0x0,_0x18a22c;while(!![]){const _0x570faa=await listEnterpriseKnowledgeBases(_0x379f85[_0x108895(0x12b)],{'currentPage':_0xdb33a,'pageSize':LIST_PAGE_SIZE,'appCode':_0x379f85[_0x108895(0x11c)],..._0x599a09}),_0x57185d=_0x570faa[_0x108895(0xef)]?.[_0x108895(0xff)];if(_0x570faa[_0x108895(0xef)]?.[_0x108895(0x123)]!==undefined&&_0x570faa[_0x108895(0xef)][_0x108895(0x123)]!==_0xdb33a)throw kbError('kb_list_contract_invalid',_0x108895(0xe1)+_0x570faa[_0x108895(0xef)][_0x108895(0x123)]+_0x108895(0xfa)+_0xdb33a+_0x108895(0xf4));if(_0x57185d!==undefined){if(_0x18a22c!==undefined&&_0x57185d!==_0x18a22c)throw kbError(_0x108895(0x124),_0x108895(0xe4)+_0x18a22c+_0x108895(0xdf)+_0x57185d+_0x108895(0xd8),_0x108895(0xd5));_0x18a22c=_0x57185d;}for(const _0x59c04d of _0x570faa[_0x108895(0xea)]){if(!Number[_0x108895(0xe5)](_0x59c04d['id'])||_0x4903f8[_0x108895(0x102)](_0x59c04d['id']))throw kbError(_0x108895(0x124),_0x108895(0xf9)+String(_0x59c04d['id'])+'.');_0x4903f8[_0x108895(0x10f)](_0x59c04d['id']),_0x59c04d[_0x108895(0x113)]===_0x108895(0x119)&&_0x59c04d[_0x108895(0x11c)]===_0x379f85[_0x108895(0x11c)]&&_0x3c45c3['push'](_0x59c04d);}_0x320bc5+=_0x570faa[_0x108895(0xea)][_0x108895(0x105)];if(_0x57185d!==undefined&&_0x320bc5>=_0x57185d)break;if(_0x570faa[_0x108895(0xea)][_0x108895(0x105)]<LIST_PAGE_SIZE){if(_0x57185d!==undefined&&_0x320bc5<_0x57185d)throw kbError(_0x108895(0x124),_0x108895(0x11d)+_0x320bc5+_0x108895(0x127)+_0x57185d+_0x108895(0x11b));break;}_0xdb33a+=0x1;}return _0x3c45c3;}export function findExactCompanyKnowledgeBases(_0x452b26,_0x2ae0a3,_0x52e578){const _0x335c9b=a104_0x4115e2;return _0x452b26[_0x335c9b(0xda)](_0x478b72=>_0x478b72[_0x335c9b(0x113)]==='company'&&_0x478b72[_0x335c9b(0x11c)]===_0x2ae0a3&&_0x478b72[_0x335c9b(0xd7)]===_0x52e578);}export async function getKbOrNull(_0x53f259,_0x202d6a){const _0x343c15=a104_0x4115e2;try{const _0x25b3a1=await getEnterpriseKnowledgeBase(_0x53f259[_0x343c15(0x12b)],_0x202d6a);return assertCompanyKnowledgeBase(_0x25b3a1,_0x53f259[_0x343c15(0x11c)],_0x202d6a),_0x25b3a1;}catch(_0xe534a1){if(getPlatformErrorCode(_0xe534a1)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0xe534a1;}}function a104_0x4e77(_0x4d03f7,_0x5d5ca2){_0x4d03f7=_0x4d03f7-0xd2;const _0x255211=a104_0x2552();let _0x4e77da=_0x255211[_0x4d03f7];return _0x4e77da;}export async function requireKb(_0xcf9614,_0x3eb062){const _0x2e2c3e=a104_0x4115e2,_0x30376b=await getKbOrNull(_0xcf9614,_0x3eb062);if(!_0x30376b)throw kbError(_0x2e2c3e(0xdc),'Company\x20knowledge\x20base\x20not\x20found:\x20'+_0x3eb062,'Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.');return _0x30376b;}export function assertExpectedKbVersion(_0x2a358f,_0x195163){const _0x3d2e89=a104_0x4115e2;if(_0x195163===undefined||_0x2a358f['version']===_0x195163)return;throw kbError(_0x3d2e89(0xdd),_0x3d2e89(0x108)+_0x2a358f['id']+'\x20version\x20changed:\x20expected\x20'+_0x195163+_0x3d2e89(0xde)+_0x2a358f[_0x3d2e89(0x121)]+'.',_0x3d2e89(0x12a));}
@@ -1 +1 @@
1
- const a106_0x47f6ff=a106_0x74ce;(function(_0x2bbac9,_0x533cf1){const _0xb2426b=a106_0x74ce,_0x3cd630=_0x2bbac9();while(!![]){try{const _0xebdcc4=-parseInt(_0xb2426b(0x1f7))/0x1+-parseInt(_0xb2426b(0x1ec))/0x2*(-parseInt(_0xb2426b(0x1f3))/0x3)+parseInt(_0xb2426b(0x1fb))/0x4+parseInt(_0xb2426b(0x205))/0x5*(-parseInt(_0xb2426b(0x1e1))/0x6)+parseInt(_0xb2426b(0x1e6))/0x7*(-parseInt(_0xb2426b(0x214))/0x8)+-parseInt(_0xb2426b(0x20a))/0x9+-parseInt(_0xb2426b(0x1ea))/0xa*(-parseInt(_0xb2426b(0x1f2))/0xb);if(_0xebdcc4===_0x533cf1)break;else _0x3cd630['push'](_0x3cd630['shift']());}catch(_0x5969e4){_0x3cd630['push'](_0x3cd630['shift']());}}}(a106_0x1274,0xcd03f));function a106_0x74ce(_0x1ca18d,_0x848acf){_0x1ca18d=_0x1ca18d-0x1e1;const _0x127493=a106_0x1274();let _0x74ce9d=_0x127493[_0x1ca18d];return _0x74ce9d;}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=a106_0x47f6ff(0x212),NON_ATOMIC_WARNING=a106_0x47f6ff(0x1f9);function readUpdatePatch(_0x33e776){const _0x3a47e7=a106_0x47f6ff,_0x1153ad=readKbId(_0x33e776),_0x500fea=_0x33e776[_0x3a47e7(0x20e)](_0x3a47e7(0x1f1)),_0x3ba35d=_0x33e776['flag'](_0x3a47e7(0x1fe)),_0x5392a4=_0x33e776[_0x3a47e7(0x20e)](_0x3a47e7(0x1e7)),_0x585576=_0x500fea===undefined?undefined:String(_0x500fea)['trim']();if(_0x500fea!==undefined&&!_0x585576)throw kbError(_0x3a47e7(0x201),_0x3a47e7(0x1e5));const _0x5a3728=_0x3ba35d===undefined?undefined:String(_0x3ba35d)[_0x3a47e7(0x213)]();if(_0x3ba35d!==undefined&&!_0x5a3728)throw kbError(_0x3a47e7(0x1f8),'--file\x20cannot\x20be\x20empty.');if(_0x585576===undefined&&_0x5a3728===undefined)throw kbError(_0x3a47e7(0x1fc),_0x3a47e7(0x1fa),_0x3a47e7(0x20c));let _0x5c5ab3;if(_0x5392a4!==undefined){_0x5c5ab3=Number(_0x5392a4);if(!Number[_0x3a47e7(0x1f0)](_0x5c5ab3)||_0x5c5ab3<0x0)throw kbError(_0x3a47e7(0x204),_0x3a47e7(0x1eb));}return{'id':_0x1153ad,'title':_0x585576,'file':_0x5a3728,'expectedVersion':_0x5c5ab3};}function a106_0x1274(){const _0x293d67=['--title\x20cannot\x20be\x20empty.','5151412QVVeYP','expected-version','beforeRecord','cookie','286160yJysMj','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','1218502OPpDfD','\x20--format\x20compress','appCode','contentHash','isSafeInteger','title','1001Yxllsd','3gVLvZY','POST','company','Company\x20knowledge\x20base\x20','1170547gzOgWO','kb_file_required','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','Nothing\x20to\x20update.','3742912NYKIKj','kb_update_empty','planned','file','string','replacement','kb_title_invalid','Updated\x20company\x20knowledge\x20base\x20','update','kb_expected_version_invalid','315tGokoh','content','kb_update_outcome_unknown','snapshotHash','number','3771072NmaItK','before','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','expectedVersion','flag','high-risk-write','version','rabetbase\x20kb\x20detail\x20--id\x20','/admin/knowledge-base/update','trim','16CHyOOm','patch','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','23610gLIAYc','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','push','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20'];a106_0x1274=function(){return _0x293d67;};return a106_0x1274();}async function prepareUpdate(_0x266359){const _0x4ac7ab=a106_0x47f6ff,_0x95ef1e=readUpdatePatch(_0x266359),_0x1bb586=await requireKb(_0x266359,_0x95ef1e['id']);assertExpectedKbVersion(_0x1bb586,_0x95ef1e[_0x4ac7ab(0x20d)]);const _0x1d51c8=_0x95ef1e[_0x4ac7ab(0x1fe)]?await readKbFile(_0x95ef1e[_0x4ac7ab(0x1fe)]):undefined,_0x3ba61d=projectKb(_0x1bb586),_0x395c5e=projectKb({..._0x1bb586,..._0x95ef1e['title']!==undefined?{'title':_0x95ef1e[_0x4ac7ab(0x1f1)]}:{},..._0x1d51c8?{'content':_0x1d51c8['content']}:{}});return{'patch':_0x95ef1e,'beforeRecord':_0x1bb586,'before':_0x3ba61d,'planned':_0x395c5e,'replacement':_0x1d51c8};}export const kbUpdate={'service':'kb','command':a106_0x47f6ff(0x203),'description':a106_0x47f6ff(0x1e2),'risk':a106_0x47f6ff(0x20f),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':'number','required':!![],'description':'Company\x20knowledge-base\x20id'},{'name':a106_0x47f6ff(0x1f1),'type':'string','required':![],'description':'New\x20knowledge-base\x20title'},{'name':a106_0x47f6ff(0x1fe),'type':a106_0x47f6ff(0x1ff),'required':![],'description':'Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file'},{'name':'expected-version','type':a106_0x47f6ff(0x209),'required':![],'description':'Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version'}],async 'validate'(_0x338deb){readUpdatePatch(_0x338deb),requireKbExplicitYes(_0x338deb);},async 'dryRun'(_0xabf390){const _0x116c32=a106_0x47f6ff,_0x8aca34=await prepareUpdate(_0xabf390),_0x1b632d=_0x8aca34[_0x116c32(0x215)][_0x116c32(0x20d)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x116c32(0x203),'selector':{'id':_0x8aca34[_0x116c32(0x20b)]['id'],'scope':_0x116c32(0x1f5),'appCode':_0x8aca34[_0x116c32(0x20b)][_0x116c32(0x1ee)]},'before':_0x8aca34[_0x116c32(0x20b)],'after':_0x8aca34[_0x116c32(0x1fd)],'dryRun':!![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0x1b632d,'verification':{'expectedVersion':_0x8aca34[_0x116c32(0x215)][_0x116c32(0x20d)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x8aca34['before'][_0x116c32(0x208)],'lookupCommand':_0x116c32(0x211)+_0x8aca34[_0x116c32(0x20b)]['id']+_0x116c32(0x1ed)}},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x48d142){const _0x5917e2=a106_0x47f6ff;requireKbExplicitYes(_0x48d142);const _0x1b27b2=await prepareUpdate(_0x48d142),_0x361626={'id':_0x1b27b2[_0x5917e2(0x215)]['id'],..._0x1b27b2['patch']['title']!==undefined?{'title':_0x1b27b2[_0x5917e2(0x215)]['title']}:{},..._0x1b27b2['replacement']?{'content':_0x1b27b2[_0x5917e2(0x200)][_0x5917e2(0x206)]}:{}};let _0x3390e9=![];try{const _0x211e41=await updateEnterpriseKnowledgeBase(_0x48d142[_0x5917e2(0x1e9)],_0x361626);assertCompanyKnowledgeBase(_0x211e41,_0x48d142['appCode'],_0x1b27b2[_0x5917e2(0x215)]['id']);}catch(_0x115f99){if(!isPlatformTransportFailure(_0x115f99))throw _0x115f99;_0x3390e9=!![];}const _0x367d3a=await verifyKbMutationReadback(_0x5917e2(0x203),_0x3390e9,()=>requireKb(_0x48d142,_0x1b27b2['patch']['id'])),_0x5caa3a=projectKb(_0x367d3a),_0x4becc6=_0x1b27b2[_0x5917e2(0x215)][_0x5917e2(0x1f1)]===undefined||_0x367d3a[_0x5917e2(0x1f1)]===_0x1b27b2[_0x5917e2(0x215)]['title'],_0xd52493=!_0x1b27b2[_0x5917e2(0x200)]||inspectKbContent(_0x367d3a[_0x5917e2(0x206)])[_0x5917e2(0x1ef)]===_0x1b27b2[_0x5917e2(0x200)]['contentHash'],_0x3cf1ce=!_0x1b27b2[_0x5917e2(0x200)]||_0x367d3a[_0x5917e2(0x210)]>_0x1b27b2[_0x5917e2(0x1e8)][_0x5917e2(0x210)],_0xbb3817=!_0x3390e9||_0x1b27b2['replacement']!==undefined||_0x1b27b2['patch'][_0x5917e2(0x1f1)]===undefined||_0x1b27b2[_0x5917e2(0x1e8)]['title']!==_0x1b27b2[_0x5917e2(0x215)]['title'];if(!_0x4becc6||!_0xd52493||!_0x3cf1ce||!_0xbb3817)throw kbError(_0x3390e9?_0x5917e2(0x207):'kb_verification_failed',_0x5917e2(0x1f6)+_0x1b27b2[_0x5917e2(0x215)]['id']+_0x5917e2(0x217),_0x5917e2(0x1e4)+_0x1b27b2[_0x5917e2(0x215)]['id']+'\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.');const _0x4cef5c=[];return _0x1b27b2[_0x5917e2(0x215)]['expectedVersion']!==undefined&&_0x4cef5c['push'](NON_ATOMIC_WARNING),_0x3390e9&&_0x4cef5c[_0x5917e2(0x1e3)](_0x5917e2(0x216)),{'ok':!![],'data':{'operation':'update','selector':{'id':_0x5caa3a['id'],'scope':_0x5917e2(0x1f5),'appCode':_0x5caa3a[_0x5917e2(0x1ee)]},'before':_0x1b27b2[_0x5917e2(0x20b)],'after':_0x5caa3a,'dryRun':![],'backend':{'method':_0x5917e2(0x1f4),'path':UPDATE_PATH},'warnings':_0x4cef5c,'verification':{'status':'verified','recoveredAfterUnknownResponse':_0x3390e9,'expectedVersion':_0x1b27b2[_0x5917e2(0x215)]['expectedVersion']??null,'atomicCompareAndSet':![],'lookupCommand':_0x5917e2(0x211)+_0x5caa3a['id']+_0x5917e2(0x1ed)}},'message':_0x5917e2(0x202)+_0x5caa3a['id']};}};
1
+ const a105_0x4f7c8b=a105_0x1549;(function(_0x1c3f07,_0x575933){const _0x940a47=a105_0x1549,_0x511eed=_0x1c3f07();while(!![]){try{const _0x4284c0=-parseInt(_0x940a47(0xef))/0x1+-parseInt(_0x940a47(0x112))/0x2*(parseInt(_0x940a47(0x111))/0x3)+parseInt(_0x940a47(0x102))/0x4*(parseInt(_0x940a47(0xe1))/0x5)+parseInt(_0x940a47(0xf7))/0x6+-parseInt(_0x940a47(0x101))/0x7*(-parseInt(_0x940a47(0xdd))/0x8)+parseInt(_0x940a47(0xe0))/0x9*(-parseInt(_0x940a47(0xf4))/0xa)+parseInt(_0x940a47(0xe5))/0xb;if(_0x4284c0===_0x575933)break;else _0x511eed['push'](_0x511eed['shift']());}catch(_0x4df33f){_0x511eed['push'](_0x511eed['shift']());}}}(a105_0x23c1,0x1be34));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';function a105_0x1549(_0x5a0c03,_0x295aae){_0x5a0c03=_0x5a0c03-0xdd;const _0x23c1e6=a105_0x23c1();let _0x1549ef=_0x23c1e6[_0x5a0c03];return _0x1549ef;}function a105_0x23c1(){const _0xeef417=['kb_verification_failed','expectedVersion','2198CxunBg','268uNFMWm','appCode','--file\x20cannot\x20be\x20empty.','isSafeInteger','number','flag','trim','version','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','patch','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','replacement','Company\x20knowledge-base\x20id','rabetbase\x20kb\x20detail\x20--id\x20','3918BAcHNY','256ztTeDT','kb_file_required','beforeRecord','POST','4280eQwdsl','expected-version','Company\x20knowledge\x20base\x20','63iHLGkq','4235NefqIG','/admin/knowledge-base/update','Updated\x20company\x20knowledge\x20base\x20','kb_update_empty','796928DAAiTU','kb_title_invalid','update','push','verified','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','content','company','cookie','--title\x20cannot\x20be\x20empty.','168125oxwGsS','file','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','kb_expected_version_invalid','Nothing\x20to\x20update.','74480cRiIEK','string','high-risk-write','1226820mwJhxL','kb_update_outcome_unknown','\x20--format\x20compress','title','contentHash','before','snapshotHash','New\x20knowledge-base\x20title'];a105_0x23c1=function(){return _0xeef417;};return a105_0x23c1();}const UPDATE_PATH=a105_0x4f7c8b(0xe2),NON_ATOMIC_WARNING=a105_0x4f7c8b(0xea);function readUpdatePatch(_0x8f4f2a){const _0x3d0190=a105_0x4f7c8b,_0x2139da=readKbId(_0x8f4f2a),_0x233502=_0x8f4f2a['flag'](_0x3d0190(0xfa)),_0x3d75ac=_0x8f4f2a[_0x3d0190(0x107)](_0x3d0190(0xf0)),_0x5262d1=_0x8f4f2a[_0x3d0190(0x107)](_0x3d0190(0xde)),_0x135fa8=_0x233502===undefined?undefined:String(_0x233502)[_0x3d0190(0x108)]();if(_0x233502!==undefined&&!_0x135fa8)throw kbError(_0x3d0190(0xe6),_0x3d0190(0xee));const _0x2d0bc5=_0x3d75ac===undefined?undefined:String(_0x3d75ac)[_0x3d0190(0x108)]();if(_0x3d75ac!==undefined&&!_0x2d0bc5)throw kbError(_0x3d0190(0x113),_0x3d0190(0x104));if(_0x135fa8===undefined&&_0x2d0bc5===undefined)throw kbError(_0x3d0190(0xe4),_0x3d0190(0xf3),_0x3d0190(0x10d));let _0x2035d6;if(_0x5262d1!==undefined){_0x2035d6=Number(_0x5262d1);if(!Number[_0x3d0190(0x105)](_0x2035d6)||_0x2035d6<0x0)throw kbError(_0x3d0190(0xf2),'--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.');}return{'id':_0x2139da,'title':_0x135fa8,'file':_0x2d0bc5,'expectedVersion':_0x2035d6};}async function prepareUpdate(_0x309e3d){const _0x569a4f=a105_0x4f7c8b,_0x448f3d=readUpdatePatch(_0x309e3d),_0x5482f1=await requireKb(_0x309e3d,_0x448f3d['id']);assertExpectedKbVersion(_0x5482f1,_0x448f3d['expectedVersion']);const _0x10370a=_0x448f3d[_0x569a4f(0xf0)]?await readKbFile(_0x448f3d[_0x569a4f(0xf0)]):undefined,_0x384843=projectKb(_0x5482f1),_0x37b959=projectKb({..._0x5482f1,..._0x448f3d[_0x569a4f(0xfa)]!==undefined?{'title':_0x448f3d[_0x569a4f(0xfa)]}:{},..._0x10370a?{'content':_0x10370a[_0x569a4f(0xeb)]}:{}});return{'patch':_0x448f3d,'beforeRecord':_0x5482f1,'before':_0x384843,'planned':_0x37b959,'replacement':_0x10370a};}export const kbUpdate={'service':'kb','command':a105_0x4f7c8b(0xe7),'description':a105_0x4f7c8b(0x10c),'risk':a105_0x4f7c8b(0xf6),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':a105_0x4f7c8b(0x106),'required':!![],'description':a105_0x4f7c8b(0x10f)},{'name':a105_0x4f7c8b(0xfa),'type':a105_0x4f7c8b(0xf5),'required':![],'description':a105_0x4f7c8b(0xfe)},{'name':'file','type':a105_0x4f7c8b(0xf5),'required':![],'description':'Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file'},{'name':'expected-version','type':a105_0x4f7c8b(0x106),'required':![],'description':'Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version'}],async 'validate'(_0x14a339){readUpdatePatch(_0x14a339),requireKbExplicitYes(_0x14a339);},async 'dryRun'(_0x12a0f6){const _0x590644=a105_0x4f7c8b,_0xefc889=await prepareUpdate(_0x12a0f6),_0x2d3e68=_0xefc889['patch'][_0x590644(0x100)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':'update','selector':{'id':_0xefc889[_0x590644(0xfc)]['id'],'scope':'company','appCode':_0xefc889['before']['appCode']},'before':_0xefc889['before'],'after':_0xefc889['planned'],'dryRun':!![],'backend':{'method':_0x590644(0x115),'path':UPDATE_PATH},'warnings':_0x2d3e68,'verification':{'expectedVersion':_0xefc889['patch'][_0x590644(0x100)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0xefc889['before'][_0x590644(0xfd)],'lookupCommand':_0x590644(0x110)+_0xefc889[_0x590644(0xfc)]['id']+_0x590644(0xf9)}},{'method':_0x590644(0x115),'url':UPDATE_PATH});},async 'execute'(_0x193ffa){const _0x432259=a105_0x4f7c8b;requireKbExplicitYes(_0x193ffa);const _0x2e81fa=await prepareUpdate(_0x193ffa),_0xeb604e={'id':_0x2e81fa['patch']['id'],..._0x2e81fa[_0x432259(0x10b)][_0x432259(0xfa)]!==undefined?{'title':_0x2e81fa[_0x432259(0x10b)][_0x432259(0xfa)]}:{},..._0x2e81fa[_0x432259(0x10e)]?{'content':_0x2e81fa[_0x432259(0x10e)][_0x432259(0xeb)]}:{}};let _0x331938=![];try{const _0x5d8521=await updateEnterpriseKnowledgeBase(_0x193ffa[_0x432259(0xed)],_0xeb604e);assertCompanyKnowledgeBase(_0x5d8521,_0x193ffa[_0x432259(0x103)],_0x2e81fa[_0x432259(0x10b)]['id']);}catch(_0x5330f3){if(!isPlatformTransportFailure(_0x5330f3))throw _0x5330f3;_0x331938=!![];}const _0x28b35=await verifyKbMutationReadback(_0x432259(0xe7),_0x331938,()=>requireKb(_0x193ffa,_0x2e81fa[_0x432259(0x10b)]['id'])),_0x4ff130=projectKb(_0x28b35),_0x4e001f=_0x2e81fa[_0x432259(0x10b)][_0x432259(0xfa)]===undefined||_0x28b35[_0x432259(0xfa)]===_0x2e81fa[_0x432259(0x10b)]['title'],_0x2f0603=!_0x2e81fa[_0x432259(0x10e)]||inspectKbContent(_0x28b35['content'])[_0x432259(0xfb)]===_0x2e81fa[_0x432259(0x10e)]['contentHash'],_0x597277=!_0x2e81fa[_0x432259(0x10e)]||_0x28b35[_0x432259(0x109)]>_0x2e81fa[_0x432259(0x114)][_0x432259(0x109)],_0x4a08b4=!_0x331938||_0x2e81fa['replacement']!==undefined||_0x2e81fa[_0x432259(0x10b)][_0x432259(0xfa)]===undefined||_0x2e81fa['beforeRecord']['title']!==_0x2e81fa['patch']['title'];if(!_0x4e001f||!_0x2f0603||!_0x597277||!_0x4a08b4)throw kbError(_0x331938?_0x432259(0xf8):_0x432259(0xff),_0x432259(0xdf)+_0x2e81fa[_0x432259(0x10b)]['id']+_0x432259(0xf1),'Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20'+_0x2e81fa[_0x432259(0x10b)]['id']+'\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.');const _0x36e72f=[];return _0x2e81fa[_0x432259(0x10b)]['expectedVersion']!==undefined&&_0x36e72f[_0x432259(0xe8)](NON_ATOMIC_WARNING),_0x331938&&_0x36e72f['push'](_0x432259(0x10a)),{'ok':!![],'data':{'operation':_0x432259(0xe7),'selector':{'id':_0x4ff130['id'],'scope':_0x432259(0xec),'appCode':_0x4ff130['appCode']},'before':_0x2e81fa[_0x432259(0xfc)],'after':_0x4ff130,'dryRun':![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0x36e72f,'verification':{'status':_0x432259(0xe9),'recoveredAfterUnknownResponse':_0x331938,'expectedVersion':_0x2e81fa[_0x432259(0x10b)][_0x432259(0x100)]??null,'atomicCompareAndSet':![],'lookupCommand':_0x432259(0x110)+_0x4ff130['id']+_0x432259(0xf9)}},'message':_0x432259(0xe3)+_0x4ff130['id']};}};
@@ -1 +1 @@
1
- const a107_0x422d2f=a107_0x1e3e;(function(_0x500a7b,_0x4deddd){const _0x3f62ea=a107_0x1e3e,_0x3b5f28=_0x500a7b();while(!![]){try{const _0x777772=-parseInt(_0x3f62ea(0x1ca))/0x1+parseInt(_0x3f62ea(0x1c8))/0x2+parseInt(_0x3f62ea(0x1c9))/0x3+parseInt(_0x3f62ea(0x1d8))/0x4*(parseInt(_0x3f62ea(0x1c0))/0x5)+-parseInt(_0x3f62ea(0x1d9))/0x6+parseInt(_0x3f62ea(0x1b7))/0x7+-parseInt(_0x3f62ea(0x1d7))/0x8;if(_0x777772===_0x4deddd)break;else _0x3b5f28['push'](_0x3b5f28['shift']());}catch(_0x3cf8fa){_0x3b5f28['push'](_0x3b5f28['shift']());}}}(a107_0x2dee,0xf1416));function a107_0x2dee(){const _0x3cce51=['readLogs','logs','read','clearLogs','success','Clear\x20command\x20history\x20logs','966614jJzkOD','936069bMkgOk','195745DMjrQH','en-US','command','log','\x20\x20\x20Duration:\x20','message','level','duration','error','toLocaleString','\x20\x20\x20Details:\x20','stringify','details','3978472anhzqF','128vqfPbM','9598800fIwznV','*\x20Logs\x20cleared','3973830cEmgXE','warn','length','View\x20command\x20history\x20logs','*\x20Lovrabet\x20CLI\x20logs:\x0a','*\x20No\x20logs\x20found','show','keys','\x20\x20\x20Time:\x20','299690xqDUyR','forEach'];a107_0x2dee=function(){return _0x3cce51;};return a107_0x2dee();}function a107_0x1e3e(_0x2e61a2,_0x7cd6ae){_0x2e61a2=_0x2e61a2-0x1b7;const _0x2dee9b=a107_0x2dee();let _0x1e3e23=_0x2dee9b[_0x2e61a2];return _0x1e3e23;}import{logger}from'../../utils/logger.js';function printLogs(_0xc1743b){const _0x85d4eb=a107_0x1e3e;if(_0xc1743b['length']===0x0){console[_0x85d4eb(0x1cd)](_0x85d4eb(0x1bc));return;}console[_0x85d4eb(0x1cd)](_0x85d4eb(0x1bb)),_0xc1743b[_0x85d4eb(0x1c1)]((_0x345850,_0x1df20f)=>{const _0x2e9d98=_0x85d4eb,_0x309c5a=new Date(_0x345850['timestamp'])[_0x2e9d98(0x1d3)](_0x2e9d98(0x1cb)),_0x526bca=_0x345850[_0x2e9d98(0x1d0)]===_0x2e9d98(0x1c6)?'√':_0x345850[_0x2e9d98(0x1d0)]===_0x2e9d98(0x1d2)?'×':_0x345850[_0x2e9d98(0x1d0)]===_0x2e9d98(0x1b8)?'!':'i';console[_0x2e9d98(0x1cd)](_0x1df20f+0x1+'.\x20'+_0x526bca+'\x20['+_0x345850[_0x2e9d98(0x1cc)]+']\x20'+_0x345850[_0x2e9d98(0x1cf)]),console[_0x2e9d98(0x1cd)](_0x2e9d98(0x1bf)+_0x309c5a),_0x345850[_0x2e9d98(0x1d1)]&&console[_0x2e9d98(0x1cd)](_0x2e9d98(0x1ce)+_0x345850['duration']+'ms'),_0x345850[_0x2e9d98(0x1d6)]&&Object[_0x2e9d98(0x1be)](_0x345850[_0x2e9d98(0x1d6)])[_0x2e9d98(0x1b9)]>0x0&&console[_0x2e9d98(0x1cd)](_0x2e9d98(0x1d4)+JSON[_0x2e9d98(0x1d5)](_0x345850[_0x2e9d98(0x1d6)],null,0x2)),console[_0x2e9d98(0x1cd)]('');});}export const logsDefinitions=[{'service':a107_0x422d2f(0x1c3),'command':a107_0x422d2f(0x1bd),'description':a107_0x422d2f(0x1ba),'risk':a107_0x422d2f(0x1c4),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x5b6921){const _0x22e6b4=a107_0x422d2f;return printLogs(logger[_0x22e6b4(0x1c2)]()),{'ok':!![]};}},{'service':'logs','command':'clear','description':a107_0x422d2f(0x1c7),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0xf77e5c){const _0x17db82=a107_0x422d2f;return logger[_0x17db82(0x1c5)](),console[_0x17db82(0x1cd)](_0x17db82(0x1da)),{'ok':!![]};}}];
1
+ const a106_0x40f04c=a106_0x384c;(function(_0x55a29a,_0x18b1a8){const _0x1560f3=a106_0x384c,_0x2d4255=_0x55a29a();while(!![]){try{const _0x2afe43=-parseInt(_0x1560f3(0xf9))/0x1*(-parseInt(_0x1560f3(0xfe))/0x2)+-parseInt(_0x1560f3(0xfb))/0x3+parseInt(_0x1560f3(0x100))/0x4*(-parseInt(_0x1560f3(0xff))/0x5)+-parseInt(_0x1560f3(0x10f))/0x6*(parseInt(_0x1560f3(0xf7))/0x7)+parseInt(_0x1560f3(0xf6))/0x8+parseInt(_0x1560f3(0x101))/0x9+-parseInt(_0x1560f3(0x102))/0xa*(-parseInt(_0x1560f3(0x10e))/0xb);if(_0x2afe43===_0x18b1a8)break;else _0x2d4255['push'](_0x2d4255['shift']());}catch(_0x62472a){_0x2d4255['push'](_0x2d4255['shift']());}}}(a106_0xcdee,0xd91ae));function a106_0x384c(_0x453e76,_0x17e91e){_0x453e76=_0x453e76-0xf3;const _0xcdee92=a106_0xcdee();let _0x384cc1=_0xcdee92[_0x453e76];return _0x384cc1;}function a106_0xcdee(){const _0x5d0a62=['level','clear','3765952xfZRLa','1205022hxNTPZ','write','46154BsfySl','error','2262252PhAPIn','details','keys','28Yxxgbz','75550zHhElC','448XEmjQB','6517944BhBnZY','4166740rNWGrH','warn','*\x20Logs\x20cleared','length','show','success','View\x20command\x20history\x20logs','timestamp','duration','stringify','en-US','\x20\x20\x20Time:\x20','44TfGOyk','6pGhZFB','Clear\x20command\x20history\x20logs','log','logs'];a106_0xcdee=function(){return _0x5d0a62;};return a106_0xcdee();}import{logger}from'../../utils/logger.js';function printLogs(_0x1fb304){const _0x36d7b0=a106_0x384c;if(_0x1fb304[_0x36d7b0(0x105)]===0x0){console[_0x36d7b0(0x111)]('*\x20No\x20logs\x20found');return;}console[_0x36d7b0(0x111)]('*\x20Lovrabet\x20CLI\x20logs:\x0a'),_0x1fb304['forEach']((_0x1d46d0,_0x171b79)=>{const _0x5cc0dd=_0x36d7b0,_0x98cfc2=new Date(_0x1d46d0[_0x5cc0dd(0x109)])['toLocaleString'](_0x5cc0dd(0x10c)),_0x48ff5f=_0x1d46d0[_0x5cc0dd(0xf4)]===_0x5cc0dd(0x107)?'√':_0x1d46d0['level']===_0x5cc0dd(0xfa)?'×':_0x1d46d0[_0x5cc0dd(0xf4)]===_0x5cc0dd(0x103)?'!':'i';console[_0x5cc0dd(0x111)](_0x171b79+0x1+'.\x20'+_0x48ff5f+'\x20['+_0x1d46d0['command']+']\x20'+_0x1d46d0['message']),console[_0x5cc0dd(0x111)](_0x5cc0dd(0x10d)+_0x98cfc2),_0x1d46d0['duration']&&console[_0x5cc0dd(0x111)]('\x20\x20\x20Duration:\x20'+_0x1d46d0[_0x5cc0dd(0x10a)]+'ms'),_0x1d46d0['details']&&Object[_0x5cc0dd(0xfd)](_0x1d46d0[_0x5cc0dd(0xfc)])[_0x5cc0dd(0x105)]>0x0&&console[_0x5cc0dd(0x111)]('\x20\x20\x20Details:\x20'+JSON[_0x5cc0dd(0x10b)](_0x1d46d0[_0x5cc0dd(0xfc)],null,0x2)),console[_0x5cc0dd(0x111)]('');});}export const logsDefinitions=[{'service':a106_0x40f04c(0xf3),'command':a106_0x40f04c(0x106),'description':a106_0x40f04c(0x108),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x54e33d){return printLogs(logger['readLogs']()),{'ok':!![]};}},{'service':'logs','command':a106_0x40f04c(0xf5),'description':a106_0x40f04c(0x110),'risk':a106_0x40f04c(0xf8),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x1f53d2){const _0x1d2e62=a106_0x40f04c;return logger['clearLogs'](),console[_0x1d2e62(0x111)](_0x1d2e62(0x104)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a108_0x37a3ad=a108_0x524f;(function(_0x19969d,_0x527a7a){const _0x136a7b=a108_0x524f,_0x4dd3a9=_0x19969d();while(!![]){try{const _0x165f82=parseInt(_0x136a7b(0x18f))/0x1*(-parseInt(_0x136a7b(0x161))/0x2)+-parseInt(_0x136a7b(0x14d))/0x3*(-parseInt(_0x136a7b(0x19b))/0x4)+parseInt(_0x136a7b(0x1a2))/0x5*(-parseInt(_0x136a7b(0x189))/0x6)+parseInt(_0x136a7b(0x1aa))/0x7+parseInt(_0x136a7b(0x15f))/0x8*(parseInt(_0x136a7b(0x180))/0x9)+parseInt(_0x136a7b(0x1a7))/0xa*(-parseInt(_0x136a7b(0x154))/0xb)+-parseInt(_0x136a7b(0x179))/0xc*(parseInt(_0x136a7b(0x15e))/0xd);if(_0x165f82===_0x527a7a)break;else _0x4dd3a9['push'](_0x4dd3a9['shift']());}catch(_0x2d7bcf){_0x4dd3a9['push'](_0x4dd3a9['shift']());}}}(a108_0x32ac,0x97358));import a108_0x373b89 from'chalk';function a108_0x32ac(){const _0x26f401=['✓\x20Menu\x20asset\x20update\x20completed:\x20','gray','flag','30mqgOqf','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','Online\x20menu\x20list\x20fetched','6271944mxhoki','3rtRVmm','stringify','map','\x20menu(s)...','script','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','3417249CSmmvc','str','trim','\x20menu(s)','failed','Updated\x20','\x20and\x20CSS:\x20','bool','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','jsUrl','615979BKndSw','1616GcROqZ','all','436ChFzQj','params','cssUrl','Menu\x20asset\x20update\x20failed','\x20\x20Cancelled.','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','patch','message','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','Menu\x20asset\x20update\x20completed:\x20','\x20\x20Found\x20','replace','filter','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','Fetching\x20online\x20menu\x20list...','isSafeInteger','mode','yes','fetch','/smartapi/menu/update','string','paths','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','\x20failed.','84LSzmqv','isArray','validation','updated','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','diffs','menu-ids','55071pvYuHi','yellow','appcode','Failed\x20to\x20fetch\x20online\x20menu\x20list','length','POST','object','\x20updated,\x20','\x20menu(s)\x20failed','30FzLJMX','cyan','rawFlags','split','asset-update','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','709deWzqs','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','appCode','Would\x20update\x20','boolean','label','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','cookie','selectedAppName','load-mode','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','force','4051588UEQato','\x20updated.','parse','import','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','\x20menu(s)\x20with\x20existing\x20resources','1107355qVeKfR','some'];a108_0x32ac=function(){return _0x26f401;};return a108_0x32ac();}import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';function a108_0x524f(_0x9364dd,_0x1bbca0){_0x9364dd=_0x9364dd-0x14d;const _0x32acd3=a108_0x32ac();let _0x524f4f=_0x32acd3[_0x9364dd];return _0x524f4f;}import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,isInteractive,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':'menu','command':a108_0x37a3ad(0x18d),'description':a108_0x37a3ad(0x153),'risk':'high-risk-write','flags':[{'name':a108_0x37a3ad(0x162),'type':'string','description':a108_0x37a3ad(0x1a0)+a108_0x37a3ad(0x169)},{'name':a108_0x37a3ad(0x171),'type':a108_0x37a3ad(0x175),'description':a108_0x37a3ad(0x17d)+a108_0x37a3ad(0x199),'enum':[a108_0x37a3ad(0x16c),a108_0x37a3ad(0x167)],'default':'patch'},{'name':'force','type':'boolean','description':a108_0x37a3ad(0x18e)},{'name':a108_0x37a3ad(0x17f),'type':'string','description':'Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update'},{'name':a108_0x37a3ad(0x176),'type':'string','description':a108_0x37a3ad(0x190)},{'name':a108_0x37a3ad(0x160),'type':a108_0x37a3ad(0x193),'description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':'load-mode','type':a108_0x37a3ad(0x175),'enum':[a108_0x37a3ad(0x19e),a108_0x37a3ad(0x151),a108_0x37a3ad(0x173)],'description':a108_0x37a3ad(0x19f)}],async 'dryRun'(_0x216519){const _0x19e9d0=a108_0x37a3ad;ensureRunnableContext(_0x216519[_0x19e9d0(0x18b)],_0x216519[_0x19e9d0(0x197)]);const _0x383771=await runMenuUpdateCore(_0x216519[_0x19e9d0(0x191)],_0x216519[_0x19e9d0(0x196)],_0x216519[_0x19e9d0(0x155)](_0x19e9d0(0x162)),{'mode':parseMode(_0x216519[_0x19e9d0(0x155)](_0x19e9d0(0x171))),'dryRun':!![],'force':_0x216519[_0x19e9d0(0x15b)](_0x19e9d0(0x19a)),'selection':parseSelection(_0x216519),'loadScriptMode':parseLoadScriptMode(_0x216519['str']('load-mode'))});return{'method':_0x19e9d0(0x185),'url':_0x19e9d0(0x174),'body':_0x383771,'description':_0x383771['skipped']?_0x19e9d0(0x15c):_0x19e9d0(0x192)+(_0x383771[_0x19e9d0(0x17e)]?.[_0x19e9d0(0x184)]??0x0)+'\x20menu\x20resource\x20set(s).'};},async 'execute'(_0x3f8a37){const _0x59ca0e=a108_0x37a3ad;ensureRunnableContext(_0x3f8a37[_0x59ca0e(0x18b)],_0x3f8a37[_0x59ca0e(0x197)]);const _0x3da54a=_0x3f8a37[_0x59ca0e(0x1a6)](_0x59ca0e(0x172)),_0x20e5d5=_0x3f8a37[_0x59ca0e(0x155)](_0x59ca0e(0x162)),_0x19f4e9=parseMode(_0x3f8a37[_0x59ca0e(0x155)]('mode')),_0x1f3165=_0x3f8a37[_0x59ca0e(0x15b)]('force'),_0x5a02da=parseLoadScriptMode(_0x3f8a37[_0x59ca0e(0x155)](_0x59ca0e(0x198))),_0x2f49ad=parseParams(_0x20e5d5),_0x3c541a=!!(_0x2f49ad['jsUrl']||_0x2f49ad['cssUrl']);if(_0x3da54a||_0x3c541a&&!isInteractive()){const _0xa34036=await runMenuUpdateCore(_0x3f8a37[_0x59ca0e(0x191)],_0x3f8a37[_0x59ca0e(0x196)],_0x20e5d5,{'mode':_0x19f4e9,'force':_0x1f3165,'selection':parseSelection(_0x3f8a37),'loadScriptMode':_0x5a02da});return _0xa34036['skipped']?writeCliSideChannelLine('!\x20No\x20menus\x20with\x20existing\x20resources\x20found'):(writeCliSideChannelLine(_0x59ca0e(0x1a4)+_0xa34036[_0x59ca0e(0x17c)]+'\x20menu(s)\x20updated'),_0xa34036['failed']>0x0&&writeCliSideChannelLine('!\x20'+_0xa34036[_0x59ca0e(0x158)]+_0x59ca0e(0x188))),{'ok':_0xa34036[_0x59ca0e(0x158)]===0x0,'data':_0xa34036,'message':_0xa34036['skipped']?'Menu\x20asset\x20update\x20skipped':_0x59ca0e(0x16a)+_0xa34036['updated']+_0x59ca0e(0x187)+_0xa34036[_0x59ca0e(0x158)]+_0x59ca0e(0x178)};}requireInteractive();const _0x2a098e=startSpinner(_0x59ca0e(0x16f));let _0x1ca4e6;try{_0x1ca4e6=await fetchOnlineMenuList(_0x3f8a37[_0x59ca0e(0x191)],_0x3f8a37[_0x59ca0e(0x196)]),stopSpinner(_0x2a098e,_0x59ca0e(0x1a9),!![]);}catch(_0x5adf69){stopSpinner(_0x2a098e,'Failed\x20to\x20fetch\x20online\x20menu\x20list',![]);throw CliErrors['validation'](_0x5adf69 instanceof Error?_0x5adf69[_0x59ca0e(0x168)]:_0x59ca0e(0x183));}const _0x3f400e=filterMenusWithResources(_0x1ca4e6),_0x197320=parseSelection(_0x3f8a37,![]),_0x57d76f=_0x197320?selectMenusForUpdate(_0x3f400e,_0x197320):_0x3f400e;if(_0x57d76f['length']===0x0)return writeCliSideChannelLine(a108_0x373b89[_0x59ca0e(0x181)](_0x59ca0e(0x195))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a108_0x373b89[_0x59ca0e(0x18a)](_0x59ca0e(0x16b)+_0x57d76f['length']+_0x59ca0e(0x1a1))),writeCliSideChannelLine(renderUpdateSummary(_0x57d76f[_0x59ca0e(0x14f)](_0x4f455b=>_0x4f455b[_0x59ca0e(0x194)]),[_0x2f49ad['jsUrl'],_0x2f49ad[_0x59ca0e(0x163)]])),writeCliSideChannelLine('');let _0x4ea9dc=_0x2f49ad[_0x59ca0e(0x15d)],_0x4fe8d1=_0x2f49ad[_0x59ca0e(0x163)];!_0x4ea9dc&&(_0x4ea9dc=await askJsUrl());!_0x4fe8d1&&(_0x4fe8d1=await askCssUrl());const _0x22a048=await askConfirm('\x20\x20Update\x20'+_0x57d76f[_0x59ca0e(0x184)]+'\x20menu(s)\x20with\x20JS:\x20'+_0x4ea9dc+_0x59ca0e(0x15a)+_0x4fe8d1+'?');if(!_0x22a048)return writeCliSideChannelLine(a108_0x373b89[_0x59ca0e(0x1a5)](_0x59ca0e(0x165))),{'ok':!![]};const _0x403ffb=startSpinner('Updating\x20'+_0x57d76f[_0x59ca0e(0x184)]+_0x59ca0e(0x150));try{const _0x5941ef=await runMenuUpdateCore(_0x3f8a37[_0x59ca0e(0x191)],_0x3f8a37[_0x59ca0e(0x196)],JSON[_0x59ca0e(0x14e)]({'jsUrl':_0x4ea9dc,'cssUrl':_0x4fe8d1}),{'mode':_0x19f4e9,'force':_0x1f3165,'selection':{'all':![],'menuIds':_0x57d76f[_0x59ca0e(0x14f)](_0x4f4ecb=>_0x4f4ecb['id']),'paths':[]},'loadScriptMode':_0x5a02da});return stopSpinner(_0x403ffb,_0x59ca0e(0x159)+_0x5941ef['updated']+_0x59ca0e(0x157),_0x5941ef[_0x59ca0e(0x158)]===0x0),{'ok':_0x5941ef[_0x59ca0e(0x158)]===0x0,'data':_0x5941ef,'message':_0x5941ef[_0x59ca0e(0x158)]>0x0?_0x59ca0e(0x16a)+_0x5941ef['updated']+'\x20updated,\x20'+_0x5941ef[_0x59ca0e(0x158)]+_0x59ca0e(0x178):_0x59ca0e(0x16a)+_0x5941ef[_0x59ca0e(0x17c)]+_0x59ca0e(0x19c)};}catch(_0x15dd86){stopSpinner(_0x403ffb,_0x59ca0e(0x164),![]);throw CliErrors['validation'](_0x15dd86 instanceof Error?_0x15dd86[_0x59ca0e(0x168)]:'Menu\x20asset\x20update\x20failed');}}};function ensureRunnableContext(_0x1e2019,_0x4b4bcd){const _0xebe9a3=a108_0x37a3ad,_0x1d60b3=_0x1e2019[_0xebe9a3(0x182)]?String(_0x1e2019[_0xebe9a3(0x182)])['trim']():'';if(!isInProject()&&!_0x4b4bcd&&!_0x1d60b3)throw CliErrors[_0xebe9a3(0x17b)](_0xebe9a3(0x177)+_0xebe9a3(0x1a8));}function parseMode(_0x456af4){const _0x539270=a108_0x37a3ad;if(!_0x456af4)return _0x539270(0x167);if(_0x456af4===_0x539270(0x16c)||_0x456af4===_0x539270(0x167))return _0x456af4;throw CliErrors[_0x539270(0x17b)](_0x539270(0x152));}function parseSelection(_0x712f64,_0x4488c7=!![]){const _0x58dd1c=a108_0x37a3ad,_0x39af55=_0x712f64['bool'](_0x58dd1c(0x160)),_0x504f79=parseMenuIds(_0x712f64[_0x58dd1c(0x155)](_0x58dd1c(0x17f))),_0x3e0602=parseCsv(_0x712f64[_0x58dd1c(0x155)]('paths')),_0x3ba406=_0x504f79[_0x58dd1c(0x184)]>0x0||_0x3e0602[_0x58dd1c(0x184)]>0x0;if(_0x39af55&&_0x3ba406)throw CliErrors['validation']('--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.');if(!_0x39af55&&!_0x3ba406){if(!_0x4488c7)return undefined;throw CliErrors[_0x58dd1c(0x17b)](_0x58dd1c(0x16e));}return{'all':_0x39af55,'menuIds':_0x504f79,'paths':_0x3e0602};}function parseMenuIds(_0x4edae3){const _0x467382=a108_0x37a3ad,_0x4ac775=parseCsv(_0x4edae3),_0x5f4def=_0x4ac775[_0x467382(0x14f)](Number);if(_0x5f4def[_0x467382(0x1a3)](_0x1f0714=>!Number[_0x467382(0x170)](_0x1f0714)||_0x1f0714<=0x0))throw CliErrors[_0x467382(0x17b)](_0x467382(0x166));return[...new Set(_0x5f4def)];}function parseCsv(_0x2f2488){const _0x38ccb7=a108_0x37a3ad;return[...new Set(_0x2f2488[_0x38ccb7(0x18c)](',')[_0x38ccb7(0x14f)](_0x8cea06=>_0x8cea06[_0x38ccb7(0x156)]())[_0x38ccb7(0x16d)](Boolean))];}function parseLoadScriptMode(_0x34b832){const _0x26f308=a108_0x37a3ad;if(!_0x34b832)return undefined;if(_0x34b832===_0x26f308(0x19e)||_0x34b832===_0x26f308(0x151)||_0x34b832==='fetch')return _0x34b832;throw CliErrors['validation']('Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch');}function parseParams(_0x429eaa){const _0x26111a=a108_0x37a3ad;if(!_0x429eaa)return{};try{const _0x3d68d7=JSON[_0x26111a(0x19d)](_0x429eaa);if(typeof _0x3d68d7!==_0x26111a(0x186)||_0x3d68d7===null||Array[_0x26111a(0x17a)](_0x3d68d7))return{};return{'jsUrl':typeof _0x3d68d7[_0x26111a(0x15d)]===_0x26111a(0x175)?_0x3d68d7[_0x26111a(0x15d)][_0x26111a(0x156)]():undefined,'cssUrl':typeof _0x3d68d7[_0x26111a(0x163)]===_0x26111a(0x175)?_0x3d68d7['cssUrl']['trim']():undefined};}catch{return{};}}
1
+ const a107_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 +1 @@
1
- const a109_0x9c4da3=a109_0x47b4;(function(_0x56565a,_0x7bbb16){const _0x23dd69=a109_0x47b4,_0x39207b=_0x56565a();while(!![]){try{const _0x28a037=parseInt(_0x23dd69(0x15c))/0x1*(-parseInt(_0x23dd69(0x139))/0x2)+parseInt(_0x23dd69(0x131))/0x3+-parseInt(_0x23dd69(0x10f))/0x4+-parseInt(_0x23dd69(0x10c))/0x5+-parseInt(_0x23dd69(0x133))/0x6*(parseInt(_0x23dd69(0x15b))/0x7)+parseInt(_0x23dd69(0x111))/0x8*(-parseInt(_0x23dd69(0x147))/0x9)+parseInt(_0x23dd69(0x116))/0xa*(parseInt(_0x23dd69(0x13a))/0xb);if(_0x28a037===_0x7bbb16)break;else _0x39207b['push'](_0x39207b['shift']());}catch(_0x207e9f){_0x39207b['push'](_0x39207b['shift']());}}}(a109_0xe133,0xca240));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a109_0x9c4da3(0x165),'path':a109_0x9c4da3(0x167)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a109_0x9c4da3(0x15f)},MENU_DELETE_RECURSIVE_FLAG={'name':a109_0x9c4da3(0x12d),'type':'boolean','description':a109_0x9c4da3(0x173)},MENU_DELETE_PLAN_OUT_FLAG={'name':a109_0x9c4da3(0x16e),'type':a109_0x9c4da3(0x11a),'description':a109_0x9c4da3(0x118)},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a109_0x9c4da3(0x11a),'description':a109_0x9c4da3(0x164)};export const menuDelete={'service':a109_0x9c4da3(0x14e),'command':a109_0x9c4da3(0x120),'description':'Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3d8e24){const _0x12c6ec=a109_0x9c4da3;_0x3d8e24[_0x12c6ec(0x148)]('dry-run')?validateDeleteDryRunInput(_0x3d8e24):validateDeleteExecuteInput(_0x3d8e24),requireExplicitYes(_0x3d8e24);},async 'dryRun'(_0x35118b){const _0x2720bd=a109_0x9c4da3;validateDeleteDryRunInput(_0x35118b);const _0x1a6646=await buildDeletePlan(_0x35118b),_0x2b76cf=createMenuDeletePlanFile(_0x35118b[_0x2720bd(0x107)],_0x1a6646),_0x4fdf39=await writeMenuDeletePlan(_0x35118b[_0x2720bd(0x16d)](_0x2720bd(0x16e)),_0x2b76cf),_0x3b0853=mutationResult({..._0x1a6646,'planFile':{'path':_0x4fdf39,'createdAt':_0x2b76cf['createdAt'],'expiresAt':_0x2b76cf[_0x2720bd(0x14c)]}});return menuDryRunResult(_0x3b0853,{'method':_0x2720bd(0x165),'url':_0x2720bd(0x167),'body':{'idList':_0x3b0853['deleteOrder']},'description':_0x2720bd(0x125)+(_0x3b0853[_0x2720bd(0x16c)]?.['length']??0x1)+_0x2720bd(0x146)+_0x3b0853[_0x2720bd(0x149)]['id']+';\x20execution\x20must\x20consume\x20'+_0x4fdf39+'.'});},async 'execute'(_0x25b70a){const _0x507ab3=a109_0x9c4da3;requireExplicitYes(_0x25b70a),validateDeleteExecuteInput(_0x25b70a);const _0x16da04=await readMenuDeletePlan(_0x25b70a[_0x507ab3(0x16d)](_0x507ab3(0x162))),_0x2ac0a5=mutationPlanFromDeleteFile(_0x16da04[_0x507ab3(0x162)],_0x16da04[_0x507ab3(0x16b)]),_0x3c6021=_0x16da04[_0x507ab3(0x162)][_0x507ab3(0x174)]['id'];try{assertMenuDeletePlanExecutable(_0x16da04[_0x507ab3(0x162)],_0x25b70a[_0x507ab3(0x107)]);}catch(_0x5b93a8){throw menuFailure(asMenuError(_0x5b93a8),_0x2ac0a5,{'stage':_0x507ab3(0x158),'failed':{'id':_0x3c6021}});}let _0x347934,_0x51d1c7;try{_0x347934=await fetchMutationSnapshot(_0x25b70a,_0x507ab3(0x129),_0x3c6021),_0x51d1c7=assertMenuDeletePlanCurrent(_0x16da04[_0x507ab3(0x162)],_0x25b70a['appCode'],_0x347934),assertDeleteTargetsComplete(_0x16da04[_0x507ab3(0x162)],_0x347934),_0x51d1c7['forEach'](_0x402661=>assertDeleteSafety(_0x402661,_0x16da04[_0x507ab3(0x162)][_0x507ab3(0x12d)])),assertNoSharedPages(_0x347934,_0x51d1c7),assertCascadeMatchesPlan(_0x2ac0a5,_0x51d1c7);}catch(_0x349974){throw menuFailure(asMenuError(_0x349974),_0x2ac0a5,{'stage':_0x507ab3(0x117),'failed':{'id':_0x3c6021}});}const _0xc6be7a=_0x16da04[_0x507ab3(0x162)][_0x507ab3(0x16c)];let _0x5e4599;try{_0x5e4599=await batchDeleteMenuEntities(_0x25b70a[_0x507ab3(0x105)],_0xc6be7a);}catch(_0x577c1a){const _0x1b3905=mapMenuApiError(_0x577c1a,_0x507ab3(0x126)),_0x24f4bf=[_0x507ab3(0x150)];let _0x42e19c;try{_0x42e19c=await readDeleteOutcome(_0x25b70a,_0xc6be7a);}catch(_0x200bd4){const _0xa0883f=describeMenuErrorCause(_0x200bd4,'read\x20menu\x20state\x20after\x20batch\x20delete\x20failure',_0x3c6021);_0x24f4bf[_0x507ab3(0x121)]('Post-failure\x20menu\x20readback\x20failed\x20('+_0xa0883f[_0x507ab3(0x140)]+_0x507ab3(0x157)+_0xa0883f[_0x507ab3(0x123)]);throw menuFailure(_0x1b3905,_0x2ac0a5,{'stage':_0x507ab3(0x156),'failed':{'targetIds':_0xc6be7a,'targetIdsAbsent':'unconfirmed',..._0xa0883f},'warnings':_0x24f4bf,'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0xc6be7a}});}throw menuFailure(_0x1b3905,_0x2ac0a5,{'stage':_0x507ab3(0x156),'succeeded':_0x42e19c[_0x507ab3(0x12b)][_0x507ab3(0x108)](_0x445b5b=>({'id':_0x445b5b,'deleted':!![]})),'failed':{'targetIds':_0xc6be7a,'absentIds':_0x42e19c[_0x507ab3(0x12b)],'remainingIds':_0x42e19c['remainingIds']},'warnings':_0x24f4bf,'verification':verificationFromOutcome(_0x42e19c)});}if(_0x5e4599!==_0xc6be7a['length']){const _0x38a015=menuError(_0x507ab3(0x14d),_0x507ab3(0x168)+_0x5e4599+_0x507ab3(0x137)+_0xc6be7a[_0x507ab3(0x141)]+'.',_0x507ab3(0x14b)),_0xa9774a=[_0x507ab3(0x10a)];let _0x5a6a52;try{_0x5a6a52=await readDeleteOutcome(_0x25b70a,_0xc6be7a);}catch(_0x1f390f){const _0x13d599=describeMenuErrorCause(_0x1f390f,_0x507ab3(0x124),_0x3c6021);_0xa9774a[_0x507ab3(0x121)](_0x507ab3(0x11d)+_0x13d599[_0x507ab3(0x140)]+_0x507ab3(0x157)+_0x13d599[_0x507ab3(0x123)]);throw menuFailure(_0x38a015,_0x2ac0a5,{'stage':_0x507ab3(0x156),'failed':{'targetIds':_0xc6be7a,'expectedCount':_0xc6be7a[_0x507ab3(0x141)],'reportedDeletedCount':_0x5e4599,'targetIdsAbsent':_0x507ab3(0x109),..._0x13d599},'warnings':_0xa9774a,'verification':{'status':_0x507ab3(0x15a),'lookupCommand':_0x507ab3(0x11f),'targetIds':_0xc6be7a}});}throw menuFailure(_0x38a015,_0x2ac0a5,{'stage':_0x507ab3(0x156),'succeeded':_0x5a6a52[_0x507ab3(0x12b)][_0x507ab3(0x108)](_0x29d2dc=>({'id':_0x29d2dc,'deleted':!![]})),'failed':{'targetIds':_0xc6be7a,'expectedCount':_0xc6be7a[_0x507ab3(0x141)],'reportedDeletedCount':_0x5e4599,'absentIds':_0x5a6a52[_0x507ab3(0x12b)],'remainingIds':_0x5a6a52[_0x507ab3(0x114)]},'warnings':_0xa9774a,'verification':verificationFromOutcome(_0x5a6a52)});}let _0x40e82c;try{_0x40e82c=await readDeleteOutcome(_0x25b70a,_0xc6be7a);}catch(_0x45b77e){const _0x20fa7c=describeMenuErrorCause(_0x45b77e,'verify\x20batch\x20delete',_0x3c6021),_0x3dd61a=asVerificationError(_0x45b77e,_0x507ab3(0x14a)+_0x3c6021+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x3dd61a,_0x2ac0a5,{'stage':_0x507ab3(0x128),'succeeded':_0xc6be7a[_0x507ab3(0x108)](_0x27eef3=>({'id':_0x27eef3,'deleteRequested':!![]})),'failed':{'id':_0x3c6021,'targetIds':_0xc6be7a,'targetIdsAbsent':'unconfirmed',..._0x20fa7c},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':'failed','lookupCommand':_0x507ab3(0x11f),'targetIds':_0xc6be7a}});}if(_0x40e82c[_0x507ab3(0x114)]['length']>0x0){const _0x29d200=menuError(_0x507ab3(0x11b),_0x507ab3(0x130)+_0x40e82c[_0x507ab3(0x114)][_0x507ab3(0x127)](',\x20')+'.',_0x507ab3(0x14b));throw menuFailure(_0x29d200,_0x2ac0a5,{'stage':_0x507ab3(0x128),'succeeded':_0xc6be7a[_0x507ab3(0x108)](_0x24b877=>({'id':_0x24b877,'deleteRequested':!![]})),'failed':{'id':_0x3c6021,'targetIds':_0xc6be7a,'absentIds':_0x40e82c[_0x507ab3(0x12b)],'remainingIds':_0x40e82c[_0x507ab3(0x114)]},'warnings':[_0x507ab3(0x12f)],'verification':verificationFromOutcome(_0x40e82c)});}const _0x105a45=_0xc6be7a['map'](_0x11c788=>({'id':_0x11c788,'deleted':!![]})),_0x1c3539=mutationResult({..._0x2ac0a5,'dryRun':![],'succeeded':_0x105a45,'verification':{'checkedBy':_0x507ab3(0x135),'plannedSnapshotHash':_0x2ac0a5[_0x507ab3(0x16a)],'finalSnapshotHash':_0x40e82c[_0x507ab3(0x155)]['hash'],'reportedDeletedCount':_0x5e4599,'targetAbsent':!_0x40e82c[_0x507ab3(0x155)][_0x507ab3(0x112)][_0x507ab3(0x143)](_0x3c6021),'allTargetsAbsent':!![],'targetIds':_0xc6be7a}});return{'ok':!![],'data':_0x1c3539,'message':'Deleted\x20'+_0x105a45[_0x507ab3(0x141)]+_0x507ab3(0x146)+_0x3c6021+'.'};}};async function readDeleteOutcome(_0x10aa6b,_0x266cf8){const _0x310981=a109_0x9c4da3,_0x2c2df5=await fetchMenuSnapshot(_0x10aa6b[_0x310981(0x107)],_0x10aa6b[_0x310981(0x105)]);return{'snapshot':_0x2c2df5,'absentIds':_0x266cf8[_0x310981(0x15e)](_0x38f5f7=>!_0x2c2df5['byId'][_0x310981(0x143)](_0x38f5f7)),'remainingIds':_0x266cf8[_0x310981(0x15e)](_0x3bf1d5=>_0x2c2df5['byId']['has'](_0x3bf1d5))};}function verificationFromOutcome(_0x23e02e){const _0x260f7c=a109_0x9c4da3;return{'checkedBy':_0x260f7c(0x135),'absentIds':_0x23e02e[_0x260f7c(0x12b)],'remainingIds':_0x23e02e[_0x260f7c(0x114)]};}function validateDeleteDryRunInput(_0x4ec56b){const _0x5ae69c=a109_0x9c4da3;validateExactId(_0x4ec56b);if(!hasFlag(_0x4ec56b,_0x5ae69c(0x16e))||!_0x4ec56b[_0x5ae69c(0x16d)](_0x5ae69c(0x16e))['trim']())throw CliErrors['flagMissing']('plan-out',_0x5ae69c(0x16f));if(hasFlag(_0x4ec56b,_0x5ae69c(0x162)))throw CliErrors[_0x5ae69c(0x176)]('--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.');}function validateDeleteExecuteInput(_0x28be2c){const _0x78be13=a109_0x9c4da3;if(!hasFlag(_0x28be2c,_0x78be13(0x162))||!_0x28be2c[_0x78be13(0x16d)]('plan')[_0x78be13(0x103)]())throw CliErrors[_0x78be13(0x134)](_0x78be13(0x162),_0x78be13(0x160));const _0x119919=['id',_0x78be13(0x12d),'plan-out',_0x78be13(0x132),'expect-path',_0x78be13(0x136)][_0x78be13(0x15e)](_0x31cd78=>hasFlag(_0x28be2c,_0x31cd78));if(_0x119919[_0x78be13(0x141)]>0x0)throw CliErrors[_0x78be13(0x176)](_0x78be13(0x177)+_0x119919[_0x78be13(0x108)](_0x22929c=>'--'+_0x22929c)[_0x78be13(0x127)](',\x20')+'.');}function a109_0x47b4(_0x2d93fe,_0x1db424){_0x2d93fe=_0x2d93fe-0x103;const _0xe133e4=a109_0xe133();let _0x47b494=_0xe133e4[_0x2d93fe];return _0x47b494;}async function buildDeletePlan(_0x388948){const _0x5c78ec=a109_0x9c4da3,_0x1e63b5=validateExactId(_0x388948),_0x248773=await fetchMutationSnapshot(_0x388948,'plan\x20delete',_0x1e63b5),_0x58208b=requireMenu(_0x248773,_0x1e63b5);assertExpectedState(_0x388948,_0x58208b);const _0x5c3f86=_0x388948[_0x5c78ec(0x148)](_0x5c78ec(0x12d));let _0x20017e;if(_0x5c3f86){if(_0x58208b[_0x5c78ec(0x178)][_0x5c78ec(0x103)]()[_0x5c78ec(0x170)]()!==_0x5c78ec(0x138))throw menuError('menu_recursive_requires_folder',_0x5c78ec(0x13b)+_0x58208b['id']+'\x20is\x20type\x20\x22'+(_0x58208b[_0x5c78ec(0x178)]||_0x5c78ec(0x159))+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x20017e=collectDeleteTargets(_0x248773,_0x58208b),_0x20017e[_0x5c78ec(0x144)](_0xea9e6=>assertDeleteSafety(_0xea9e6,!![]));}else assertDeleteSafety(_0x58208b),_0x20017e=[_0x58208b];assertNoSharedPages(_0x248773,_0x20017e);const _0x3b7718=_0x20017e['map'](_0x50f579=>_0x50f579['id']),_0x5ab81e=cascadeForTargets(_0x20017e),_0xe02f4b=_0x5ab81e[_0x5c78ec(0x161)][_0x5c78ec(0x141)]>0x0?['Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.']:[];return mutationResult({'operation':_0x5c78ec(0x120),'selector':{'id':_0x1e63b5,'recursive':_0x5c3f86},'before':_0x58208b,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x5c78ec(0x12c),'method':'POST','path':_0x5c78ec(0x167),'body':{'idList':_0x3b7718}}],'targets':_0x20017e,'deleteOrder':_0x3b7718,'snapshotHash':_0x248773[_0x5c78ec(0x153)],'cascade':_0x5ab81e,'warnings':_0xe02f4b});}function assertDeleteSafety(_0x71aeab,_0x396f32=![]){const _0x282fb6=a109_0x9c4da3,_0x425ce6=_0x71aeab[_0x282fb6(0x178)][_0x282fb6(0x103)]()[_0x282fb6(0x170)]()===_0x282fb6(0x138);if(_0x71aeab[_0x282fb6(0x10e)]>0x0&&(!_0x396f32||!_0x425ce6))throw menuError(_0x282fb6(0x175),_0x282fb6(0x13b)+_0x71aeab['id']+_0x282fb6(0x11c)+_0x71aeab[_0x282fb6(0x10e)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20'+_0x71aeab[_0x282fb6(0x13c)]['join'](',\x20'));if(_0x425ce6&&_0x71aeab[_0x282fb6(0x151)]!=null)throw menuError('menu_delete_page_bound','Folder\x20'+_0x71aeab['id']+_0x282fb6(0x145)+_0x71aeab[_0x282fb6(0x151)]+_0x282fb6(0x13e),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x425ce6)return;if(!_0x71aeab['resourcesValid'])throw menuError(_0x282fb6(0x14f),_0x282fb6(0x115)+_0x71aeab['id']+_0x282fb6(0x166),'Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(_0x71aeab[_0x282fb6(0x163)][_0x282fb6(0x141)]>0x0)throw menuError(_0x282fb6(0x152),_0x282fb6(0x115)+_0x71aeab['id']+_0x282fb6(0x169)+_0x71aeab[_0x282fb6(0x163)][_0x282fb6(0x141)]+_0x282fb6(0x172),_0x282fb6(0x11e));}function collectDeleteTargets(_0x5475eb,_0x45e754){const _0x56a6cb=[],_0x1b43b8=new Set(),_0x4537cd=new Set(),_0x40d120=_0x4f0c8e=>{const _0x316372=a109_0x47b4;if(_0x1b43b8[_0x316372(0x143)](_0x4f0c8e['id']))throw menuError(_0x316372(0x122),_0x316372(0x106)+_0x4f0c8e['id']+'.');if(_0x4537cd[_0x316372(0x143)](_0x4f0c8e['id']))return;_0x1b43b8[_0x316372(0x13d)](_0x4f0c8e['id']);for(const _0x39a2e4 of _0x4f0c8e[_0x316372(0x13c)]){const _0x2118ab=_0x5475eb[_0x316372(0x112)][_0x316372(0x154)](_0x39a2e4);if(!_0x2118ab)throw menuError('menu_tree_invalid',_0x316372(0x13b)+_0x4f0c8e['id']+_0x316372(0x119)+_0x39a2e4+'.');_0x40d120(_0x2118ab);}_0x1b43b8[_0x316372(0x120)](_0x4f0c8e['id']),_0x4537cd['add'](_0x4f0c8e['id']),_0x56a6cb['push'](_0x4f0c8e);};return _0x40d120(_0x45e754),_0x56a6cb;}function assertDeleteTargetsComplete(_0x5b238a,_0x490712){const _0x4d5db1=a109_0x9c4da3,_0xe69ef=requireMenu(_0x490712,_0x5b238a[_0x4d5db1(0x174)]['id']);if(_0x5b238a[_0x4d5db1(0x12d)]&&_0xe69ef[_0x4d5db1(0x178)][_0x4d5db1(0x103)]()[_0x4d5db1(0x170)]()!==_0x4d5db1(0x138))throw menuError('menu_plan_invalid','Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0xe69ef['id']+_0x4d5db1(0x104));const _0x3ca80b=_0x5b238a['recursive']?collectDeleteTargets(_0x490712,_0xe69ef)['map'](_0x2ecc28=>_0x2ecc28['id']):[_0xe69ef['id']];if(JSON[_0x4d5db1(0x10b)](_0x5b238a[_0x4d5db1(0x16c)])!==JSON[_0x4d5db1(0x10b)](_0x3ca80b))throw menuError(_0x4d5db1(0x142),_0x4d5db1(0x12e),_0x4d5db1(0x110));}function assertNoSharedPages(_0x181973,_0x5d75db){const _0x1dd6fe=a109_0x9c4da3,_0xed27c5=new Set(_0x5d75db['map'](_0x1fee87=>_0x1fee87['id'])),_0x460b4c=new Set(_0x5d75db[_0x1dd6fe(0x108)](_0x5c1822=>_0x5c1822[_0x1dd6fe(0x151)])[_0x1dd6fe(0x15e)](_0x39c274=>_0x39c274!=null));if(_0x460b4c[_0x1dd6fe(0x13f)]===0x0)return;const _0x3d87cc=_0x181973['menus'][_0x1dd6fe(0x15e)](_0x5df7a3=>!_0xed27c5[_0x1dd6fe(0x143)](_0x5df7a3['id'])&&_0x5df7a3['pageId']!=null&&_0x460b4c[_0x1dd6fe(0x143)](_0x5df7a3[_0x1dd6fe(0x151)]));if(_0x3d87cc[_0x1dd6fe(0x141)]===0x0)return;const _0x4e79b1=_0x3d87cc['map'](_0x4545a4=>'page\x20'+_0x4545a4['pageId']+_0x1dd6fe(0x15d)+_0x4545a4['id'])[_0x1dd6fe(0x127)](',\x20');throw menuError(_0x1dd6fe(0x113),_0x1dd6fe(0x171)+_0x4e79b1+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x5e6fe2,_0xb1795c){const _0xe30d69=a109_0x9c4da3,_0x51c5f7=cascadeForTargets(_0xb1795c);if(JSON[_0xe30d69(0x10b)](_0x5e6fe2[_0xe30d69(0x12a)])!==JSON['stringify'](_0x51c5f7))throw menuError(_0xe30d69(0x142),_0xe30d69(0x10d));}function cascadeForTargets(_0x357a60){const _0x1dc852=a109_0x9c4da3,_0x51de0f=_0x357a60['map'](_0x59dd53=>_0x59dd53['pageId'])['filter'](_0x392feb=>_0x392feb!=null)[_0x1dc852(0x15e)]((_0x19d041,_0x5b6ba4,_0x4586c9)=>_0x4586c9['indexOf'](_0x19d041)===_0x5b6ba4);return{'pages':_0x51de0f,'pageSchemaAffected':_0x51de0f['length']>0x0};}function asMenuError(_0x2b7915){const _0x2c2596=a109_0x9c4da3;return _0x2b7915 instanceof CliError?_0x2b7915:menuError(_0x2c2596(0x142),_0x2b7915 instanceof Error?_0x2b7915['message']:String(_0x2b7915));}function a109_0xe133(){const _0x4ee932=['\x20menu(s)\x20under\x20exact\x20id\x20','14805477bGunAj','bool','selector','Batch\x20delete\x20request\x20for\x20menu\x20','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','expiresAt','menu_batch_delete_count_mismatch','menu','menu_folder_resources_invalid','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','pageId','menu_folder_has_resources','hash','get','snapshot','batch-delete','):\x20','plan-validation','unknown','failed','21fCgwHH','12POeecP','\x20->\x20menu\x20','filter','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','pages','plan','resources','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','POST','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','/smartapi/menu/batchDelete','Backend\x20reported\x20','\x20still\x20references\x20','snapshotHash','path','deleteOrder','str','plan-out','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','toLowerCase','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','\x20resource\x20URL(s).','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','target','menu_non_empty','validation','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','type','trim','\x20is\x20not\x20a\x20folder.','cookie','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','appCode','map','unconfirmed','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','stringify','7100710wGlzjU','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','childrenCount','3145244cuvZkN','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','8gIyZSU','byId','menu_page_shared','remainingIds','Folder\x20','22771380zilonc','pre-write-plan-validation','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','\x20references\x20missing\x20child\x20','string','menu_verification_failed','\x20has\x20','Post-mismatch\x20menu\x20readback\x20failed\x20(','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','rabetbase\x20menu\x20list\x20--format\x20json','delete','push','menu_tree_invalid','causeMessage','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','Would\x20batch\x20delete\x20','batch\x20delete','join','verification','execute\x20reviewed\x20delete\x20plan','cascade','absentIds','batch-delete-menu','recursive','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','628845pEajMv','expect-parent-id','2019174dwCpKT','flagMissing','menu\x20list','expected-children-count','\x20deleted\x20menus;\x20expected\x20','folder','225328OUzWIC','33PYSPFL','Menu\x20','childrenIds','add','\x20and\x20cannot\x20be\x20deleted\x20safely.','size','causeCode','length','menu_plan_invalid','has','forEach','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20'];a109_0xe133=function(){return _0x4ee932;};return a109_0xe133();}
1
+ const a108_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 +1 @@
1
- const a110_0x33f959=a110_0xa1a7;(function(_0x5e0579,_0x1362c9){const _0x2b6185=a110_0xa1a7,_0x28fdb3=_0x5e0579();while(!![]){try{const _0x1d2fe=parseInt(_0x2b6185(0x186))/0x1*(parseInt(_0x2b6185(0x175))/0x2)+-parseInt(_0x2b6185(0x147))/0x3*(-parseInt(_0x2b6185(0x15b))/0x4)+parseInt(_0x2b6185(0x17b))/0x5*(-parseInt(_0x2b6185(0x16e))/0x6)+parseInt(_0x2b6185(0x148))/0x7*(parseInt(_0x2b6185(0x18a))/0x8)+parseInt(_0x2b6185(0x17d))/0x9+-parseInt(_0x2b6185(0x125))/0xa+-parseInt(_0x2b6185(0x185))/0xb;if(_0x1d2fe===_0x1362c9)break;else _0x28fdb3['push'](_0x28fdb3['shift']());}catch(_0x3bb080){_0x28fdb3['push'](_0x28fdb3['shift']());}}}(a110_0x3753,0xa6c23));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a110_0x33f959(0x116),'new-window':a110_0x33f959(0x13b)};export function validateExternalMenuUrl(_0x2f6689){const _0x3ef9ce=a110_0x33f959,_0x1fa6dd=_0x2f6689[_0x3ef9ce(0x17f)]();let _0x1f2562;try{_0x1f2562=new URL(_0x1fa6dd);}catch{throw menuError(_0x3ef9ce(0x182),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x3ef9ce(0x18b));}if(_0x1f2562[_0x3ef9ce(0x168)]!==_0x3ef9ce(0x176))throw menuError('menu_url_https_required',_0x3ef9ce(0x11f),'Provide\x20an\x20HTTPS\x20URL.');if(_0x1f2562['username']||_0x1f2562[_0x3ef9ce(0x13d)])throw menuError(_0x3ef9ce(0x143),_0x3ef9ce(0x132),_0x3ef9ce(0x18d));return _0x1fa6dd;}export const menuExternalLinkCreate={'service':'menu','command':a110_0x33f959(0x14a),'description':a110_0x33f959(0x16c),'risk':a110_0x33f959(0x190),'structuredErrors':!![],'flags':[{'name':a110_0x33f959(0x159),'type':a110_0x33f959(0x12b),'required':!![],'description':a110_0x33f959(0x137)},{'name':a110_0x33f959(0x18c),'type':a110_0x33f959(0x12b),'required':!![],'enum':[a110_0x33f959(0x150),a110_0x33f959(0x195)],'description':a110_0x33f959(0x118)},{'name':a110_0x33f959(0x171),'type':a110_0x33f959(0x12b),'required':!![],'description':a110_0x33f959(0x142)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a110_0x33f959(0x165),'type':'boolean','default':!![],'description':a110_0x33f959(0x18f)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5cdd83){validateAddInput(_0x5cdd83);},async 'dryRun'(_0x5d4326){const _0x179262=a110_0x33f959;validateAddInput(_0x5d4326);const {plan:_0x55beab}=await buildSafeAddPlan(_0x5d4326,!![]),_0x3484d4=_0x55beab[_0x179262(0x117)],_0x52ad08=createBody(_0x3484d4);return menuDryRunResult(_0x55beab,{'method':_0x179262(0x13a),'url':_0x179262(0x196),'body':_0x52ad08,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON['stringify'](_0x3484d4['label'])+'\x20with\x20'+_0x5d4326[_0x179262(0x160)](_0x179262(0x18c))+_0x179262(0x177)});},async 'execute'(_0x21a55e){const _0x243478=a110_0x33f959;validateAddInput(_0x21a55e);const _0x25cc4f=await buildSafeAddPlan(_0x21a55e,![]),{plan:_0x199edc,snapshot:_0x13a579}=_0x25cc4f,_0x22a3fa=_0x199edc[_0x243478(0x117)],_0x2a7b11=buildMenuLookupCommand(_0x21a55e['appCode']);await recheckAddSnapshot(_0x21a55e,_0x199edc);let _0x1f4daf;try{_0x1f4daf=await createMenuEntity(_0x21a55e[_0x243478(0x146)],_0x21a55e['cookie'],createBody(_0x22a3fa));}catch(_0x98d2ed){const _0x30ebd3=mapMenuApiError(_0x98d2ed,_0x243478(0x17a));if(!isMenuResponseLoss(_0x98d2ed)||_0x30ebd3[_0x243478(0x199)]===_0x243478(0x179))throw externalLinkCreateFailure(_0x30ebd3,_0x199edc,{'stage':_0x243478(0x11c),'failed':{},'verification':{'status':_0x243478(0x16b),'lookupCommand':_0x2a7b11}});return recoverAfterResponseLoss(_0x21a55e,_0x25cc4f,_0x2a7b11);}const _0x3d145e=Number(_0x1f4daf?.['id']),_0x445e01=typeof _0x1f4daf?.[_0x243478(0x158)]===_0x243478(0x12b)?_0x1f4daf[_0x243478(0x158)]:'';if(!Number['isSafeInteger'](_0x3d145e)||_0x3d145e<=0x0||!_0x445e01[_0x243478(0x17f)]()){const _0x426378=menuError(_0x243478(0x112),_0x243478(0x184),_0x243478(0x121)+_0x2a7b11+_0x243478(0x161));throw externalLinkCreateFailure(_0x426378,_0x199edc,{'stage':'create-response-validation','succeeded':Number[_0x243478(0x166)](_0x3d145e)&&_0x3d145e>0x0?[{'id':_0x3d145e,'created':!![]}]:[],'failed':{'createdId':Number[_0x243478(0x166)](_0x3d145e)?_0x3d145e:null,'generatedPathConfirmed':Boolean(_0x445e01[_0x243478(0x17f)]())},'warnings':[_0x243478(0x19b)],'after':Number['isSafeInteger'](_0x3d145e)&&_0x3d145e>0x0?{..._0x22a3fa,'id':_0x3d145e,'path':_0x445e01}:_0x22a3fa,'verification':{'status':_0x243478(0x16b),'lookupCommand':_0x2a7b11,...Number['isSafeInteger'](_0x3d145e)&&_0x3d145e>0x0?{'targetId':_0x3d145e}:{}}});}const _0x2c0a7e=await readAndVerifyCreatedMenu({'appCode':_0x21a55e[_0x243478(0x146)],'cookie':_0x21a55e[_0x243478(0x16f)],'plan':_0x199edc,'afterPlan':_0x22a3fa,'createdId':_0x3d145e,'expectedPath':_0x445e01,'lookupCommand':_0x2a7b11,'recovered':![]});return creationSuccess(_0x199edc,_0x2c0a7e[_0x243478(0x113)],_0x2c0a7e[_0x243478(0x194)],![]);}};function validateAddInput(_0x993d5c){const _0x30e418=a110_0x33f959;if(!_0x993d5c['str'](_0x30e418(0x159))[_0x30e418(0x17f)]())throw CliErrors[_0x30e418(0x131)](_0x30e418(0x159));resolveExternalMenuType(_0x993d5c),validateExternalMenuUrl(_0x993d5c['str']('url')),parseParentId(_0x993d5c,_0x30e418(0x110)),validateSort(_0x993d5c);}function resolveExternalMenuType(_0x26984b){const _0x5440e9=a110_0x33f959,_0x7e941d=_0x26984b[_0x5440e9(0x160)]('open-mode')[_0x5440e9(0x17f)]();if(!_0x7e941d)throw CliErrors[_0x5440e9(0x131)](_0x5440e9(0x18c));const _0x30d757=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x7e941d];if(!_0x30d757)throw menuError('menu_open_mode_invalid',_0x5440e9(0x13e),_0x5440e9(0x170));return _0x30d757;}async function buildAddPlan(_0x382015,_0x28b1c7){const _0x3d6d29=a110_0x33f959,_0x4228e4=await fetchMutationSnapshot(_0x382015,_0x3d6d29(0x17a)),_0x4898f9=parseParentId(_0x382015,'parent-id')??null;if(_0x4898f9!=null)requireFolder(_0x4228e4,_0x4898f9);const _0x16b602=validateSort(_0x382015),_0x41d474=_0x16b602??nextSiblingSort(_0x4228e4,_0x4898f9,_0x3d6d29(0x174)),_0x6d5a8f=_0x382015[_0x3d6d29(0x160)]('label')['trim'](),_0x4dd6b8=resolveExternalMenuType(_0x382015),_0x3b10aa=validateExternalMenuUrl(_0x382015[_0x3d6d29(0x160)]('url')),_0x3f2d11=Object[_0x3d6d29(0x172)]['hasOwnProperty'][_0x3d6d29(0x134)](_0x382015[_0x3d6d29(0x16d)],_0x3d6d29(0x165))?_0x382015[_0x3d6d29(0x141)](_0x3d6d29(0x165)):!![],_0x303239={'id':null,'parentId':_0x4898f9,'label':_0x6d5a8f,'path':_0x3d6d29(0x188),'url':_0x3b10aa,'type':_0x4dd6b8,'visible':_0x3f2d11,'sort':_0x41d474},_0x45506e=buildMenuLookupCommand(_0x382015['appCode']),_0x2d0c07=mutationResult({'operation':'add','selector':{'parentId':_0x4898f9,'type':_0x4dd6b8,'label':_0x6d5a8f,'url':_0x3b10aa},'before':null,'after':_0x303239,'dryRun':_0x28b1c7,'backend':[{'method':'POST','path':_0x3d6d29(0x196)}],'plannedActions':[{'stage':_0x3d6d29(0x111),'method':_0x3d6d29(0x13a),'path':_0x3d6d29(0x196),'body':createBody(_0x303239)}],'snapshotHash':_0x4228e4[_0x3d6d29(0x119)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x45506e}});return{'plan':_0x2d0c07,'snapshot':_0x4228e4};}async function buildSafeAddPlan(_0x1174c4,_0x247951){try{return await buildAddPlan(_0x1174c4,_0x247951);}catch(_0x3a98d){throw safeMenuAddError(_0x3a98d);}}async function recheckAddSnapshot(_0x26dcc5,_0x1467b2){const _0x297c01=a110_0x33f959;try{await recheckMutationSnapshot(_0x26dcc5,_0x1467b2,_0x297c01(0x17a));}catch(_0x9de12a){const _0x52aff5=getFailureRecord(_0x9de12a);throw externalLinkCreateFailure(_0x9de12a,_0x1467b2,{'stage':_0x297c01(0x129),'failed':{..._0x52aff5?.[_0x297c01(0x15d)]?{'expectedSnapshotHash':_0x52aff5[_0x297c01(0x15d)]}:{},..._0x52aff5?.['currentSnapshotHash']?{'currentSnapshotHash':_0x52aff5[_0x297c01(0x153)]}:{}}});}}function createBody(_0x674be1){const _0x471ba8=a110_0x33f959;return{'parentId':toApiParentId(_0x674be1[_0x471ba8(0x14f)]),'label':String(_0x674be1[_0x471ba8(0x159)]),'type':String(_0x674be1['type']),'url':String(_0x674be1[_0x471ba8(0x171)]),'visible':Boolean(_0x674be1[_0x471ba8(0x165)]),'sort':Number(_0x674be1[_0x471ba8(0x15a)]),'extend':{}};}function buildMenuLookupCommand(_0x4b70af){const _0x26efb9=a110_0x33f959,_0x1effd1='\x27'+_0x4b70af[_0x26efb9(0x189)](/'/g,_0x26efb9(0x133))+'\x27';return _0x26efb9(0x180)+_0x1effd1+_0x26efb9(0x135);}async function recoverAfterResponseLoss(_0x43aba0,_0x32d7fd,_0x11498d){const _0x34cb1f=a110_0x33f959,{plan:_0x1a9e8d,snapshot:_0x131e7e}=_0x32d7fd,_0x2ce19c=_0x1a9e8d['after'];let _0x148090;try{_0x148090=await fetchMenuSnapshot(_0x43aba0[_0x34cb1f(0x146)],_0x43aba0[_0x34cb1f(0x16f)]);}catch(_0x57a95a){throw recoveryRequiredFailure(_0x1a9e8d,_0x11498d,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x28feb2=_0x148090[_0x34cb1f(0x167)][_0x34cb1f(0x11e)](_0x3a858=>_0x3a858[_0x34cb1f(0x14f)]===_0x2ce19c[_0x34cb1f(0x14f)]&&_0x3a858['type']===_0x2ce19c[_0x34cb1f(0x114)]&&_0x3a858[_0x34cb1f(0x159)]===_0x2ce19c[_0x34cb1f(0x159)]&&_0x3a858['url']===_0x2ce19c[_0x34cb1f(0x171)]),_0x3527eb=_0x28feb2[_0x34cb1f(0x11e)](_0x2f2710=>!_0x131e7e[_0x34cb1f(0x191)][_0x34cb1f(0x163)](_0x2f2710['id'])),_0x3065b6=_0x28feb2['filter'](_0x57fde8=>_0x131e7e[_0x34cb1f(0x191)]['has'](_0x57fde8['id']));if(_0x28feb2[_0x34cb1f(0x11a)]!==0x1||_0x3527eb[_0x34cb1f(0x11a)]!==0x1)throw recoveryRequiredFailure(_0x1a9e8d,_0x11498d,{'matchCount':_0x28feb2['length'],'newMatchCount':_0x3527eb[_0x34cb1f(0x11a)],'preexistingMatchCount':_0x3065b6['length']});const _0x5d6462=_0x3527eb[0x0];try{verifyCreatedFact(_0x5d6462,_0x5d6462['id'],_0x2ce19c,null);}catch(_0x1a1ca3){const _0x3dcd6c=_0x1a1ca3 instanceof Error&&_0x34cb1f(0x199)in _0x1a1ca3?_0x1a1ca3:menuError(_0x34cb1f(0x192),'Recovered\x20menu\x20'+_0x5d6462['id']+_0x34cb1f(0x136),'Run\x20'+_0x11498d+_0x34cb1f(0x12c));throw externalLinkCreateFailure(_0x3dcd6c,_0x1a9e8d,{'stage':'verification','succeeded':[{'id':_0x5d6462['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x5d6462['id'],'finalFactsConfirmed':![]},'after':_0x5d6462,'warnings':['Menu\x20'+_0x5d6462['id']+_0x34cb1f(0x140)],'verification':{'status':_0x34cb1f(0x16b),'targetId':_0x5d6462['id'],'recovered':!![],'lookupCommand':_0x11498d}});}return creationSuccess(_0x1a9e8d,_0x148090,_0x5d6462,!![]);}function recoveryRequiredFailure(_0x40d947,_0x29c77e,_0xa4f044){const _0x453d3e=a110_0x33f959,_0x263d82=menuError(_0x453d3e(0x120),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.',_0x453d3e(0x121)+_0x29c77e+_0x453d3e(0x145));return externalLinkCreateFailure(_0x263d82,_0x40d947,{'stage':'create-recovery','failed':_0xa4f044,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x453d3e(0x16b),..._0xa4f044,'lookupCommand':_0x29c77e}});}function a110_0xa1a7(_0xa22189,_0x5a101b){_0xa22189=_0xa22189-0x110;const _0x375321=a110_0x3753();let _0xa1a786=_0x375321[_0xa22189];return _0xa1a786;}async function readAndVerifyCreatedMenu(_0x55a4c6){const _0x14d500=a110_0x33f959;let _0x3ba25c;try{_0x3ba25c=await fetchMenuSnapshot(_0x55a4c6['appCode'],_0x55a4c6['cookie']);}catch(_0x263a59){const _0x38212c=menuError('menu_verification_failed',_0x14d500(0x11b)+_0x55a4c6[_0x14d500(0x128)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x14d500(0x121)+_0x55a4c6['lookupCommand']+_0x14d500(0x178));throw externalLinkCreateFailure(_0x38212c,_0x55a4c6['plan'],{'stage':_0x14d500(0x12a),'succeeded':[{'id':_0x55a4c6[_0x14d500(0x128)],'created':!![]}],'failed':{'id':_0x55a4c6[_0x14d500(0x128)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x55a4c6['afterPlan'],'id':_0x55a4c6['createdId'],'path':_0x55a4c6[_0x14d500(0x198)]},'warnings':[_0x14d500(0x11b)+_0x55a4c6['createdId']+_0x14d500(0x152)],'verification':{'status':_0x14d500(0x16b),'targetId':_0x55a4c6[_0x14d500(0x128)],'lookupCommand':_0x55a4c6['lookupCommand']}});}const _0x2779b8=_0x3ba25c[_0x14d500(0x191)][_0x14d500(0x130)](_0x55a4c6['createdId']);try{if(!_0x2779b8)throw menuError(_0x14d500(0x192),_0x14d500(0x18e)+_0x55a4c6['createdId']+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x14d500(0x121)+_0x55a4c6['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x2779b8,_0x55a4c6[_0x14d500(0x128)],_0x55a4c6[_0x14d500(0x157)],_0x55a4c6[_0x14d500(0x198)]);}catch(_0x1dd132){const _0x53fdab=_0x1dd132 instanceof Error&&_0x14d500(0x199)in _0x1dd132?_0x1dd132:menuError(_0x14d500(0x192),_0x14d500(0x18e)+_0x55a4c6[_0x14d500(0x128)]+_0x14d500(0x12d),_0x14d500(0x121)+_0x55a4c6[_0x14d500(0x139)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x53fdab,_0x55a4c6[_0x14d500(0x156)],{'stage':_0x14d500(0x12a),'succeeded':[{'id':_0x55a4c6[_0x14d500(0x128)],'created':!![]}],'failed':{'id':_0x55a4c6['createdId'],'finalFactsConfirmed':![]},'after':_0x2779b8??{..._0x55a4c6[_0x14d500(0x157)],'id':_0x55a4c6[_0x14d500(0x128)],'path':_0x55a4c6[_0x14d500(0x198)]},'warnings':['Menu\x20'+_0x55a4c6[_0x14d500(0x128)]+_0x14d500(0x12f)],'verification':{'status':_0x14d500(0x16b),'targetId':_0x55a4c6[_0x14d500(0x128)],'recovered':_0x55a4c6['recovered'],'lookupCommand':_0x55a4c6[_0x14d500(0x139)]}});}return{'snapshot':_0x3ba25c,'fact':_0x2779b8};}function verifyCreatedFact(_0x5e620d,_0x247f95,_0x5b7497,_0x550099){const _0x14e829=a110_0x33f959;if(!Number['isSafeInteger'](_0x5e620d['id'])||_0x5e620d['id']<=0x0||_0x5e620d['id']!==_0x247f95)throw menuError(_0x14e829(0x192),_0x14e829(0x193),_0x14e829(0x122));const _0x2a0b92=[[_0x14e829(0x151),_0x5e620d[_0x14e829(0x14f)],_0x5b7497['parentId']],['type',_0x5e620d[_0x14e829(0x114)],_0x5b7497[_0x14e829(0x114)]],[_0x14e829(0x159),_0x5e620d[_0x14e829(0x159)],_0x5b7497['label']],['URL',_0x5e620d['url'],_0x5b7497[_0x14e829(0x171)]],[_0x14e829(0x127),_0x5e620d['visible'],_0x5b7497[_0x14e829(0x165)]],[_0x14e829(0x15a),_0x5e620d[_0x14e829(0x15a)],_0x5b7497[_0x14e829(0x15a)]]];for(const [_0x3e534d,_0x45c25e,_0x34e817]of _0x2a0b92){if(_0x45c25e!==_0x34e817)throw menuError('menu_verification_failed',_0x14e829(0x18e)+_0x5e620d['id']+'\x20has\x20an\x20unexpected\x20'+_0x3e534d+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x5e620d[_0x14e829(0x158)][_0x14e829(0x17f)]()||_0x550099!==null&&_0x5e620d[_0x14e829(0x158)]!==_0x550099)throw menuError(_0x14e829(0x192),'Created\x20menu\x20'+_0x5e620d['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function creationSuccess(_0x123c46,_0x4540de,_0xfc6a75,_0x5852ca){const _0x2fbab4=a110_0x33f959,_0x47f275=mutationResult({..._0x123c46,'after':_0xfc6a75,'dryRun':![],'succeeded':[{'id':_0xfc6a75['id'],'created':!![],'recovered':_0x5852ca}],'verification':{'checkedBy':_0x2fbab4(0x17c),'snapshotHash':_0x4540de[_0x2fbab4(0x119)],'targetId':_0xfc6a75['id'],'recovered':_0x5852ca,'path':_0xfc6a75['path']}});return{'ok':!![],'message':_0x5852ca?_0x2fbab4(0x164)+_0xfc6a75['id']+_0x2fbab4(0x115):_0x2fbab4(0x15c)+_0xfc6a75['id']+'.','data':{..._0x47f275,'recovered':_0x5852ca}};}function externalLinkCreateFailure(_0x4ca3cf,_0x4a5bce,_0x485754){const _0x42e023=a110_0x33f959;return menuFailure(safeMenuAddError(_0x4ca3cf),redactFailurePlan(_0x4a5bce),{..._0x485754,'succeeded':_0x485754['succeeded']?.[_0x42e023(0x14b)](redactFailureRecord),'failed':_0x485754[_0x42e023(0x16b)]?redactFailureRecord(_0x485754[_0x42e023(0x16b)]):undefined,'verification':_0x485754[_0x42e023(0x12a)]?redactFailureRecord(_0x485754[_0x42e023(0x12a)]):undefined,'after':_0x485754[_0x42e023(0x117)]===undefined?undefined:redactFailureValue(_0x485754[_0x42e023(0x117)])});}function redactFailurePlan(_0xef2e9){const _0x2a241e=a110_0x33f959;return{..._0xef2e9,'selector':redactFailureRecord(_0xef2e9[_0x2a241e(0x154)]),'before':redactFailureValue(_0xef2e9[_0x2a241e(0x181)]),'after':redactFailureValue(_0xef2e9[_0x2a241e(0x117)]),'plannedActions':_0xef2e9[_0x2a241e(0x149)]?.['map'](_0x514397=>({..._0x514397,'body':redactFailureRecord(_0x514397['body'])})),'succeeded':_0xef2e9[_0x2a241e(0x162)]['map'](redactFailureRecord),'failed':_0xef2e9[_0x2a241e(0x16b)][_0x2a241e(0x14b)](redactFailureRecord),'verification':_0xef2e9[_0x2a241e(0x12a)]?redactFailureRecord(_0xef2e9[_0x2a241e(0x12a)]):undefined};}function redactFailureRecord(_0x205e74){return redactFailureValue(_0x205e74);}function redactFailureValue(_0x106e4e,_0x2b6b2a=''){const _0x4bec0f=a110_0x33f959,_0xa6855c=_0x2b6b2a['toLowerCase']()[_0x4bec0f(0x189)](/[^a-z0-9]/g,'');if([_0x4bec0f(0x138),'causemessage',_0x4bec0f(0x15f),_0x4bec0f(0x187)][_0x4bec0f(0x17e)](_0xa6855c))return _0x4bec0f(0x155);if(Array[_0x4bec0f(0x169)](_0x106e4e))return _0x106e4e['map'](_0x388e5d=>redactFailureValue(_0x388e5d));if(_0x106e4e&&typeof _0x106e4e===_0x4bec0f(0x124))return Object[_0x4bec0f(0x12e)](Object[_0x4bec0f(0x11d)](_0x106e4e)[_0x4bec0f(0x14b)](([_0xb2f73d,_0x491d85])=>[_0xb2f73d,redactFailureValue(_0x491d85,_0xb2f73d)]));return _0x106e4e;}function safeMenuAddError(_0x5f8e97){const _0x57fb69=a110_0x33f959,_0x44334b=_0x5f8e97 instanceof CliError?_0x5f8e97['code']:_0x57fb69(0x13f);switch(_0x44334b){case _0x57fb69(0x19a):return menuError(_0x44334b,_0x57fb69(0x15e),_0x57fb69(0x19c));case _0x57fb69(0x179):return menuError(_0x44334b,_0x57fb69(0x126),_0x57fb69(0x183));case _0x57fb69(0x112):return menuError(_0x44334b,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x57fb69(0x13c));case _0x57fb69(0x192):return menuError(_0x44334b,_0x57fb69(0x14c),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_create_recovery_required':return menuError(_0x44334b,_0x57fb69(0x14d),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x57fb69(0x13f):case _0x57fb69(0x144):case _0x57fb69(0x16a):case _0x57fb69(0x123):case'menu_sort_overflow':return menuError(_0x44334b,'External\x20menu\x20creation\x20failed.',_0x57fb69(0x14e));default:return menuError('menu_mutation_failed',_0x57fb69(0x197),_0x57fb69(0x14e));}}function a110_0x3753(){const _0x2313d1=['code','menu_state_drift','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','parent-id','create-menu','menu_create_response_invalid','snapshot','type','\x20after\x20response\x20loss.','iframe','after','How\x20to\x20open\x20the\x20external\x20website','hash','length','Menu\x20','create','entries','filter','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','menu_create_recovery_required','Run\x20','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','menu_sort_invalid','object','2322360qGMMOh','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','visibility','createdId','pre-write-recheck','verification','string','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','\x20failed\x20final\x20verification.','fromEntries','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','get','flagMissing','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','\x27\x5c\x27\x27','call','\x20--format\x20compress','\x20could\x20not\x20be\x20verified.','Menu\x20label','cause','lookupCommand','POST','link','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','password','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','menu_mutation_failed','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','bool','External\x20HTTPS\x20URL','menu_url_credentials_forbidden','menu_not_found','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','appCode','3uEUhIA','2818333gcFuhS','plannedActions','external-link-create','map','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','parentId','embedded','parent','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','currentSnapshotHash','selector','<redacted>','plan','afterPlan','path','label','sort','1252536QqFldC','Created\x20external\x20menu\x20','expectedSnapshotHash','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','readbackerror','str','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','succeeded','has','Recovered\x20created\x20external\x20menu\x20','visible','isSafeInteger','menus','protocol','isArray','menu_parent_not_folder','failed','Create\x20an\x20external\x20website\x20link\x20menu','rawFlags','6AMsICn','cookie','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','url','prototype','data','menu','1176XdQNHd','https:','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','menu_permission_denied','create\x20external\x20menu','1841685HMbEFi','menu\x20list','4616055SZxbPt','includes','trim','rabetbase\x20menu\x20list\x20--appcode\x20','before','menu_url_invalid','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','2739308poBTTs','517xhtSNk','rawerror','<platform-generated>','replace','8KvrMIV','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','open-mode','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','Created\x20menu\x20','Whether\x20the\x20menu\x20is\x20visible','write','byId','menu_verification_failed','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','fact','new-window','/smartapi/menu/create','External\x20menu\x20creation\x20failed.','expectedPath'];a110_0x3753=function(){return _0x2313d1;};return a110_0x3753();}function getFailureRecord(_0x31440e){const _0x56b0db=a110_0x33f959;if(!(_0x31440e instanceof Error)||!(_0x56b0db(0x173)in _0x31440e))return undefined;const _0x69b7ec=_0x31440e[_0x56b0db(0x173)];if(!_0x69b7ec||typeof _0x69b7ec!==_0x56b0db(0x124))return undefined;const _0x97889e=_0x69b7ec['failed'];if(!Array[_0x56b0db(0x169)](_0x97889e)||!_0x97889e[0x0]||typeof _0x97889e[0x0]!==_0x56b0db(0x124))return undefined;return _0x97889e[0x0];}
1
+ const a109_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 +1 @@
1
- const a111_0x2a4d8a=a111_0x72ea;(function(_0x4ee6ab,_0x2ab118){const _0x176c52=a111_0x72ea,_0x828985=_0x4ee6ab();while(!![]){try{const _0x572979=-parseInt(_0x176c52(0x118))/0x1*(parseInt(_0x176c52(0x143))/0x2)+parseInt(_0x176c52(0x11d))/0x3*(parseInt(_0x176c52(0x110))/0x4)+-parseInt(_0x176c52(0x116))/0x5*(parseInt(_0x176c52(0xfa))/0x6)+parseInt(_0x176c52(0x105))/0x7*(-parseInt(_0x176c52(0x108))/0x8)+parseInt(_0x176c52(0x11f))/0x9*(-parseInt(_0x176c52(0x145))/0xa)+parseInt(_0x176c52(0x13f))/0xb*(-parseInt(_0x176c52(0x139))/0xc)+parseInt(_0x176c52(0x12a))/0xd*(parseInt(_0x176c52(0x129))/0xe);if(_0x572979===_0x2ab118)break;else _0x828985['push'](_0x828985['shift']());}catch(_0x265bad){_0x828985['push'](_0x828985['shift']());}}}(a111_0x54a3,0x9eef7));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a111_0x54a3(){const _0x45aff8=['Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','Run\x20','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','appCode','228JOhthR','parentId','\x20changed\x20during\x20the\x20URL-only\x20update.','\x20is\x20type\x20\x22','menu_external_link_type_required','path','\x20parent\x20changed:\x20expected\x20','menu','expect-url','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','POST','5337038afjjug','expect-parent-id','str','8cKtxCt','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','update\x20external\x20menu\x20URL','visible','update-recovery','\x20could\x20not\x20be\x20verified\x20safely','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','readbackFailed','368srFnnq','url','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','\x22,\x20not\x20iframe\x20or\x20link.',',\x20current\x20','unknown','161765MqwhDz','requestedUrlObserved','395180cFsRls','childrenCount','label','verification','external-link-update','4941JdAbIK','byId','6042789WfpSdP','verify\x20external\x20menu\x20URL\x20update','flagMissing','body','iframe','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','/smartapi/menu/update','update-external-link-url','Menu\x20','menu_external_link_not_leaf','33500866kMmtuK','26cLxAMS','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','menu_permission_denied','sort','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','\x20direct\x20child\x20menu(s).','\x20--format\x20compress','trim','cookie','Response\x20was\x20lost\x20and\x20menu\x20','plan','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','link','high-risk-write','\x20URL\x20update\x20did\x20not\x20take\x20effect.','24fTsvVy','type','failed','\x27\x5c\x27\x27','menu_update_recovery_required','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','6753527fQFzHL','Update\x20request\x20for\x20menu\x20','code','\x20already\x20matches\x20the\x20requested\x20URL.','2ibZRDU','string','10lSydkH'];a111_0x54a3=function(){return _0x45aff8;};return a111_0x54a3();}import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a111_0x2a4d8a(0x104),'path':a111_0x2a4d8a(0x125)}];export const menuExternalLinkUpdate={'service':a111_0x2a4d8a(0x101),'command':a111_0x2a4d8a(0x11c),'description':a111_0x2a4d8a(0x13e),'risk':a111_0x2a4d8a(0x137),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a111_0x2a4d8a(0x111),'type':a111_0x2a4d8a(0x144),'required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a111_0x2a4d8a(0x102),'type':a111_0x2a4d8a(0x144),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1a18c1){validateInput(_0x1a18c1),requireExplicitYes(_0x1a18c1);},async 'dryRun'(_0x6452d){const _0x1f0895=a111_0x2a4d8a;validateInput(_0x6452d);const _0x4f6be4=await buildPlan(_0x6452d,!![]);return menuDryRunResult(_0x4f6be4[_0x1f0895(0x134)],{'method':_0x1f0895(0x104),'url':_0x1f0895(0x125),'body':_0x4f6be4[_0x1f0895(0x122)],'description':_0x1f0895(0x135)+_0x4f6be4[_0x1f0895(0x122)]['id']+'.'});},async 'execute'(_0x3ee889){const _0x486b66=a111_0x2a4d8a;validateInput(_0x3ee889),requireExplicitYes(_0x3ee889);const _0x89f589=await buildPlan(_0x3ee889,![]),{plan:_0x3f86be,body:_0x2f8dd8,before:_0x544541,noChanges:_0xe711b3}=_0x89f589,_0x1ce4d5=_0x2f8dd8['id'];if(_0xe711b3)return updateSuccess(_0x3f86be,_0x89f589['snapshot'],_0x544541,!![],![]);await recheckMutationSnapshot(_0x3ee889,_0x3f86be,_0x486b66(0x10a),_0x1ce4d5);try{await updateMenuEntity(_0x3ee889['appCode'],_0x3ee889[_0x486b66(0x132)],{'id':_0x2f8dd8['id'],'url':_0x2f8dd8[_0x486b66(0x111)]});}catch(_0x340d76){const _0x3af33b=mapMenuApiError(_0x340d76,'update\x20external\x20menu\x20URL',_0x1ce4d5);if(isMenuResponseLoss(_0x340d76)&&_0x3af33b[_0x486b66(0x141)]!==_0x486b66(0x12c))return recoverAfterResponseLoss(_0x3ee889,_0x89f589);throw menuFailure(_0x3af33b,_0x3f86be,{'stage':'update','failed':{'id':_0x1ce4d5},'warnings':[_0x486b66(0x103)],'verification':{'status':'failed','targetId':_0x1ce4d5,'lookupCommand':buildLookupCommand(_0x3ee889[_0x486b66(0xf9)])}});}let _0x1cf4be,_0x22ca84;try{_0x1cf4be=await fetchMenuSnapshot(_0x3ee889[_0x486b66(0xf9)],_0x3ee889['cookie']),_0x22ca84=requireMenu(_0x1cf4be,_0x1ce4d5),verifyUpdatedFact(_0x544541,_0x22ca84,_0x2f8dd8[_0x486b66(0x111)]);}catch(_0x1c6105){const _0x1da1de=describeMenuErrorCause(_0x1c6105,_0x486b66(0x120),_0x1ce4d5),_0x2d258c=asVerificationError(_0x1c6105,_0x486b66(0x140)+_0x1ce4d5+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x2d258c,_0x3f86be,{'stage':_0x486b66(0x11b),'succeeded':[{'id':_0x1ce4d5,'updateRequested':!![]}],'failed':{'id':_0x1ce4d5,'requestedStateConfirmed':![],..._0x1da1de},'warnings':[_0x486b66(0x112)],'verification':{'status':_0x486b66(0x13b),'targetId':_0x1ce4d5,'lookupCommand':buildLookupCommand(_0x3ee889[_0x486b66(0xf9)])}});}return updateSuccess(_0x3f86be,_0x1cf4be,_0x22ca84,![],![]);}};function validateInput(_0x41e422){const _0x1ab466=a111_0x2a4d8a;validateExactId(_0x41e422),requiredUrl(_0x41e422,_0x1ab466(0x111)),requiredExpectedUrl(_0x41e422),parseParentId(_0x41e422,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x2d6e69,_0x45f88d){const _0x21bcdd=a111_0x2a4d8a;if(!hasFlag(_0x2d6e69,_0x45f88d)||!_0x2d6e69[_0x21bcdd(0x107)](_0x45f88d)['trim']())throw CliErrors['flagMissing'](_0x45f88d);return validateExternalMenuUrl(_0x2d6e69[_0x21bcdd(0x107)](_0x45f88d));}function requiredExpectedUrl(_0x3e89b9){const _0x2ab213=a111_0x2a4d8a;if(!hasFlag(_0x3e89b9,'expect-url')||!_0x3e89b9[_0x2ab213(0x107)]('expect-url')[_0x2ab213(0x131)]())throw CliErrors[_0x2ab213(0x121)](_0x2ab213(0x102));return _0x3e89b9[_0x2ab213(0x107)]('expect-url')[_0x2ab213(0x131)]();}function a111_0x72ea(_0x59f822,_0x2477a4){_0x59f822=_0x59f822-0xf8;const _0x54a393=a111_0x54a3();let _0x72ea63=_0x54a393[_0x59f822];return _0x72ea63;}async function buildPlan(_0x37cc26,_0x2b1481){const _0x130061=a111_0x2a4d8a,_0xff35c=validateExactId(_0x37cc26),_0x45128d=requiredUrl(_0x37cc26,_0x130061(0x111)),_0x524466=requiredExpectedUrl(_0x37cc26),_0x4dbc18=parseParentId(_0x37cc26,_0x130061(0x106),{'required':!![]}),_0x525e3f=await fetchMutationSnapshot(_0x37cc26,_0x130061(0x10a),_0xff35c),_0x2598f0=requireMenu(_0x525e3f,_0xff35c);assertExternalLinkLeaf(_0x2598f0);if(_0x2598f0[_0x130061(0xfb)]!==_0x4dbc18)throw menuError('menu_state_drift','Menu\x20'+_0xff35c+_0x130061(0x100)+formatParent(_0x4dbc18)+_0x130061(0x114)+formatParent(_0x2598f0[_0x130061(0xfb)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x2506e0=_0x2598f0[_0x130061(0x111)]===_0x45128d;if(!_0x2506e0&&_0x2598f0['url']!==_0x524466)throw menuError('menu_state_drift','Menu\x20'+_0xff35c+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x21e643={'id':_0xff35c,'appCode':_0x37cc26[_0x130061(0xf9)],'url':_0x45128d},_0x4dc9f7={..._0x2598f0,'url':_0x45128d};return{'body':_0x21e643,'before':_0x2598f0,'noChanges':_0x2506e0,'snapshot':_0x525e3f,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0xff35c},'before':_0x2598f0,'after':_0x4dc9f7,'dryRun':_0x2b1481,'backend':[...BACKEND],'plannedActions':_0x2506e0?[]:[{'stage':_0x130061(0x126),'method':_0x130061(0x104),'path':_0x130061(0x125),'body':_0x21e643}],'snapshotHash':_0x525e3f['hash'],'warnings':_0x2506e0?[_0x130061(0x124)]:[]})};}function assertExternalLinkLeaf(_0x278db5){const _0x4b5076=a111_0x2a4d8a;if(_0x278db5[_0x4b5076(0x13a)]!==_0x4b5076(0x123)&&_0x278db5[_0x4b5076(0x13a)]!==_0x4b5076(0x136))throw menuError(_0x4b5076(0xfe),_0x4b5076(0x127)+_0x278db5['id']+_0x4b5076(0xfd)+(_0x278db5[_0x4b5076(0x13a)]||_0x4b5076(0x115))+_0x4b5076(0x113),_0x4b5076(0x109));if(_0x278db5[_0x4b5076(0x119)]!==0x0)throw menuError(_0x4b5076(0x128),'Menu\x20'+_0x278db5['id']+'\x20has\x20'+_0x278db5[_0x4b5076(0x119)]+_0x4b5076(0x12f),_0x4b5076(0x10e));if(!_0x278db5[_0x4b5076(0xff)][_0x4b5076(0x131)]())throw menuError('menu_external_link_path_missing',_0x4b5076(0x127)+_0x278db5['id']+'\x20has\x20an\x20empty\x20platform\x20path.',_0x4b5076(0x12b));}function verifyUpdatedFact(_0xa7238c,_0x5db225,_0x3a40fc){const _0x2c1ec0=a111_0x2a4d8a;assertExternalLinkLeaf(_0x5db225);const _0x46bc3c=[['id',_0x5db225['id'],_0xa7238c['id']],[_0x2c1ec0(0x11a),_0x5db225[_0x2c1ec0(0x11a)],_0xa7238c[_0x2c1ec0(0x11a)]],['type',_0x5db225[_0x2c1ec0(0x13a)],_0xa7238c[_0x2c1ec0(0x13a)]],[_0x2c1ec0(0xff),_0x5db225[_0x2c1ec0(0xff)],_0xa7238c[_0x2c1ec0(0xff)]],[_0x2c1ec0(0xfb),_0x5db225[_0x2c1ec0(0xfb)],_0xa7238c[_0x2c1ec0(0xfb)]],[_0x2c1ec0(0x12d),_0x5db225['sort'],_0xa7238c[_0x2c1ec0(0x12d)]],[_0x2c1ec0(0x10b),_0x5db225['visible'],_0xa7238c[_0x2c1ec0(0x10b)]]];for(const [_0x1d63ff,_0x465f9d,_0x227f12]of _0x46bc3c){assertVerified(_0x465f9d===_0x227f12,'Menu\x20'+_0xa7238c['id']+'\x20'+_0x1d63ff+_0x2c1ec0(0xfc));}assertVerified(_0x5db225[_0x2c1ec0(0x111)]===_0x3a40fc,_0x2c1ec0(0x127)+_0xa7238c['id']+_0x2c1ec0(0x138));}function updateSuccess(_0x63fa6,_0x236214,_0x414b0d,_0x36227f,_0x233e1f){const _0x2f030c=a111_0x2a4d8a,_0x58056d=_0x414b0d['id'],_0x568ced=mutationResult({..._0x63fa6,'after':_0x414b0d,'dryRun':![],'succeeded':[{'id':_0x58056d,'updated':!_0x36227f,'skipped':_0x36227f,'recovered':_0x233e1f}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x236214['hash'],'targetId':_0x58056d,'matchesRequestedState':!![],'recovered':_0x233e1f}});return{'ok':!![],'message':_0x233e1f?_0x2f030c(0x146)+_0x58056d+'.':_0x36227f?_0x2f030c(0x127)+_0x58056d+_0x2f030c(0x142):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x58056d+'.','data':{..._0x568ced,'recovered':_0x233e1f}};}async function recoverAfterResponseLoss(_0xe220bd,_0x415b9f){const _0x44e626=a111_0x2a4d8a,{plan:_0x5a2b36,before:_0x5c64da,body:_0x3ec6b9}=_0x415b9f;let _0x12006c;try{_0x12006c=await fetchMenuSnapshot(_0xe220bd[_0x44e626(0xf9)],_0xe220bd[_0x44e626(0x132)]);}catch{throw recoveryRequired(_0x5a2b36,_0xe220bd['appCode'],{'id':_0x3ec6b9['id'],'readbackFailed':!![]});}const _0x1b3afd=_0x12006c[_0x44e626(0x11e)]['get'](_0x3ec6b9['id']);if(!_0x1b3afd||_0x1b3afd[_0x44e626(0x111)]!==_0x3ec6b9['url'])throw recoveryRequired(_0x5a2b36,_0xe220bd[_0x44e626(0xf9)],{'id':_0x3ec6b9['id'],'requestedUrlObserved':![],'after':_0x1b3afd??null});try{verifyUpdatedFact(_0x5c64da,_0x1b3afd,_0x3ec6b9[_0x44e626(0x111)]);}catch(_0x452bb9){const _0x45d033=asVerificationError(_0x452bb9,_0x44e626(0x133)+_0x3ec6b9['id']+_0x44e626(0x10d));throw menuFailure(_0x45d033,_0x5a2b36,{'stage':_0x44e626(0x10c),'succeeded':[{'id':_0x3ec6b9['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x3ec6b9['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x1b3afd,'warnings':[_0x44e626(0x12e)],'verification':{'status':_0x44e626(0x13b),'targetId':_0x3ec6b9['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0xe220bd['appCode'])}});}return updateSuccess(_0x5a2b36,_0x12006c,_0x1b3afd,![],!![]);}function recoveryRequired(_0x2d5562,_0x450f29,_0x281dfe){const _0x4c30c8=a111_0x2a4d8a,_0x4ceddb=menuError(_0x4c30c8(0x13d),_0x4c30c8(0xf8),_0x4c30c8(0x147)+buildLookupCommand(_0x450f29)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x4ceddb,_0x2d5562,{'stage':'update-recovery','failed':{'id':_0x281dfe['id'],..._0x281dfe[_0x4c30c8(0x117)]===undefined?{}:{'requestedUrlObserved':_0x281dfe[_0x4c30c8(0x117)]},..._0x281dfe[_0x4c30c8(0x10f)]?{'readbackFailed':!![]}:{}},'after':_0x281dfe['after'],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x4c30c8(0x13b),'targetId':_0x281dfe['id'],..._0x281dfe[_0x4c30c8(0x117)]===undefined?{}:{'requestedUrlObserved':_0x281dfe[_0x4c30c8(0x117)]},..._0x281dfe['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x450f29)}});}function buildLookupCommand(_0x117146){const _0x306583=a111_0x2a4d8a,_0x18a49a='\x27'+_0x117146['replace'](/'/g,_0x306583(0x13c))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x18a49a+_0x306583(0x130);}
1
+ const a110_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);}