@lovrabet/rabetbase-cli 2.5.1-beta.5 → 2.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (319) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/api/generate-sdk-config-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 -1
  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/delete.js +1 -1
  53. package/lib/commands/config/get.js +1 -1
  54. package/lib/commands/config/index.js +1 -1
  55. package/lib/commands/config/init.js +1 -1
  56. package/lib/commands/config/list.js +1 -1
  57. package/lib/commands/config/set.js +1 -1
  58. package/lib/commands/config/shared.js +1 -1
  59. package/lib/commands/dataset/business-group-update.js +1 -1
  60. package/lib/commands/dataset/business-groups.js +1 -1
  61. package/lib/commands/dataset/capability.js +1 -1
  62. package/lib/commands/dataset/delete.js +1 -1
  63. package/lib/commands/dataset/detail.js +1 -1
  64. package/lib/commands/dataset/extend-update.js +1 -1
  65. package/lib/commands/dataset/field-restore.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/dataset/user-deleted-field-list.js +1 -1
  80. package/lib/commands/db/analysis-batching.js +1 -1
  81. package/lib/commands/db/analyze-batch-plan.js +1 -1
  82. package/lib/commands/db/analyze-cancel.js +1 -1
  83. package/lib/commands/db/analyze-start.js +1 -1
  84. package/lib/commands/db/analyze-status.js +1 -1
  85. package/lib/commands/db/create.js +1 -1
  86. package/lib/commands/db/delete.js +1 -1
  87. package/lib/commands/db/detail.js +1 -1
  88. package/lib/commands/db/diff-refresh-start.js +1 -1
  89. package/lib/commands/db/diff-refresh-status.js +1 -1
  90. package/lib/commands/db/diff.js +1 -1
  91. package/lib/commands/db/index.js +1 -1
  92. package/lib/commands/db/list.js +1 -1
  93. package/lib/commands/db/shared.js +1 -1
  94. package/lib/commands/db/table-diff-shared.js +1 -1
  95. package/lib/commands/db/tables.js +1 -1
  96. package/lib/commands/db/test.js +1 -1
  97. package/lib/commands/db/update.js +1 -1
  98. package/lib/commands/deployment/auto-sync.js +1 -1
  99. package/lib/commands/deployment/index.js +1 -1
  100. package/lib/commands/deployment/sync.js +1 -1
  101. package/lib/commands/doctor.js +1 -1
  102. package/lib/commands/file/index.js +1 -1
  103. package/lib/commands/issue/index.js +1 -1
  104. package/lib/commands/issue/nudge.js +1 -1
  105. package/lib/commands/issue/report.js +1 -1
  106. package/lib/commands/issue/shared.js +1 -1
  107. package/lib/commands/kb/create.js +1 -1
  108. package/lib/commands/kb/delete.js +1 -1
  109. package/lib/commands/kb/detail.js +1 -1
  110. package/lib/commands/kb/index.js +1 -1
  111. package/lib/commands/kb/list.js +1 -1
  112. package/lib/commands/kb/search.js +1 -1
  113. package/lib/commands/kb/shared.js +1 -1
  114. package/lib/commands/kb/update.js +1 -1
  115. package/lib/commands/logs/index.js +1 -1
  116. package/lib/commands/menu/asset-update.js +1 -1
  117. package/lib/commands/menu/delete.js +1 -1
  118. package/lib/commands/menu/external-link-create.js +1 -1
  119. package/lib/commands/menu/external-link-update.js +1 -1
  120. package/lib/commands/menu/group-create.js +1 -1
  121. package/lib/commands/menu/group-update.js +1 -1
  122. package/lib/commands/menu/index.js +1 -1
  123. package/lib/commands/menu/list.js +1 -1
  124. package/lib/commands/menu/move.js +1 -1
  125. package/lib/commands/menu/regroup-start.js +1 -1
  126. package/lib/commands/menu/rename.js +1 -1
  127. package/lib/commands/menu/shared/compare-table.js +1 -1
  128. package/lib/commands/menu/shared/delete-plan.js +1 -1
  129. package/lib/commands/menu/shared/facts.js +1 -1
  130. package/lib/commands/menu/shared/index.js +1 -1
  131. package/lib/commands/menu/shared/inquirer.js +1 -1
  132. package/lib/commands/menu/shared/local-pages.js +1 -1
  133. package/lib/commands/menu/shared/logic.js +1 -1
  134. package/lib/commands/menu/shared/mutations.js +1 -1
  135. package/lib/commands/menu/shared/service.js +1 -1
  136. package/lib/commands/menu/shared/sync-core.js +1 -1
  137. package/lib/commands/menu/shared/update-core.js +1 -1
  138. package/lib/commands/menu/shared/valid-url.js +1 -1
  139. package/lib/commands/menu/sync.js +1 -1
  140. package/lib/commands/menu/visibility-update.js +1 -1
  141. package/lib/commands/notification/config-create.js +1 -1
  142. package/lib/commands/notification/config-delete.js +1 -1
  143. package/lib/commands/notification/config-list.js +1 -1
  144. package/lib/commands/notification/config-update.js +1 -1
  145. package/lib/commands/notification/index.js +1 -1
  146. package/lib/commands/notification/shared.js +1 -1
  147. package/lib/commands/ocr/index.js +1 -1
  148. package/lib/commands/page/create.js +1 -1
  149. package/lib/commands/page/custom/detail.js +1 -1
  150. package/lib/commands/page/custom/list.js +1 -1
  151. package/lib/commands/page/custom/publish.js +1 -1
  152. package/lib/commands/page/custom/shared.js +1 -1
  153. package/lib/commands/page/custom/syntax.js +1 -1
  154. package/lib/commands/page/custom/template.js +1 -1
  155. package/lib/commands/page/custom/update.js +1 -1
  156. package/lib/commands/page/data-list-status.js +1 -1
  157. package/lib/commands/page/generate-start.js +1 -1
  158. package/lib/commands/page/generate-status.js +1 -1
  159. package/lib/commands/page/index.js +1 -1
  160. package/lib/commands/page/pull.js +1 -1
  161. package/lib/commands/page/push.js +1 -1
  162. package/lib/commands/page/relation-audit.js +1 -1
  163. package/lib/commands/page/restore.js +1 -1
  164. package/lib/commands/page/shared.js +1 -1
  165. package/lib/commands/page/sync.js +1 -1
  166. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  167. package/lib/commands/project/create/format-elapsed.js +1 -1
  168. package/lib/commands/project/create/main.js +1 -1
  169. package/lib/commands/project/create/materialize-project-template.js +1 -1
  170. package/lib/commands/project/create/project-name.js +1 -1
  171. package/lib/commands/project/create/project-template-archive.js +1 -1
  172. package/lib/commands/project/create/project-template-path.js +1 -1
  173. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  174. package/lib/commands/project/create/use-format-code.js +1 -1
  175. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  176. package/lib/commands/project/domain-routing-sync.js +1 -1
  177. package/lib/commands/project/index.js +1 -1
  178. package/lib/commands/project/upgrade.js +1 -1
  179. package/lib/commands/registry.js +1 -1
  180. package/lib/commands/role/delete.js +1 -1
  181. package/lib/commands/role/detail.js +1 -1
  182. package/lib/commands/role/index.js +1 -1
  183. package/lib/commands/role/list.js +1 -1
  184. package/lib/commands/role/shared.js +1 -1
  185. package/lib/commands/role/update.js +1 -1
  186. package/lib/commands/role/user-add.js +1 -1
  187. package/lib/commands/role/user-remove.js +1 -1
  188. package/lib/commands/role/user-resolve.js +1 -1
  189. package/lib/commands/rule/get.js +1 -1
  190. package/lib/commands/rule/index.js +1 -1
  191. package/lib/commands/rule/list.js +1 -1
  192. package/lib/commands/rule/set.js +1 -1
  193. package/lib/commands/rule/shared.js +1 -1
  194. package/lib/commands/run/index.js +1 -1
  195. package/lib/commands/schema.js +1 -1
  196. package/lib/commands/sql/create.js +1 -1
  197. package/lib/commands/sql/delete.js +1 -1
  198. package/lib/commands/sql/detail.js +1 -1
  199. package/lib/commands/sql/exec.js +1 -1
  200. package/lib/commands/sql/index.js +1 -1
  201. package/lib/commands/sql/list.js +1 -1
  202. package/lib/commands/sql/pull.js +1 -1
  203. package/lib/commands/sql/push.js +1 -1
  204. package/lib/commands/sql/shared.js +1 -1
  205. package/lib/commands/sql/status.js +1 -1
  206. package/lib/commands/sql/validate.js +1 -1
  207. package/lib/commands/task/index.js +1 -1
  208. package/lib/commands/task/status.js +1 -1
  209. package/lib/commands/tenant/index.js +1 -1
  210. package/lib/commands/tenant/members-list.js +1 -1
  211. package/lib/commands/tenant/shared.js +1 -1
  212. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  213. package/lib/commands/user-account/index.js +1 -1
  214. package/lib/commands/workspace/add.js +1 -1
  215. package/lib/commands/workspace/index.js +1 -1
  216. package/lib/commands/workspace/remove.js +1 -1
  217. package/lib/config/deployment-sync.js +1 -1
  218. package/lib/config/domain-config.js +1 -1
  219. package/lib/config/project-domain-routing.js +1 -1
  220. package/lib/config/schema.js +1 -1
  221. package/lib/constant/cdn.js +1 -1
  222. package/lib/constant/cli.js +1 -1
  223. package/lib/constant/defaults.js +1 -1
  224. package/lib/constant/domain.js +1 -1
  225. package/lib/constant/env.js +1 -1
  226. package/lib/constant/output.js +1 -1
  227. package/lib/constant/paths.js +1 -1
  228. package/lib/constant/region.js +1 -1
  229. package/lib/constant/risk.js +1 -1
  230. package/lib/constant/routing-profile.js +1 -1
  231. package/lib/context/app-resolver.js +1 -1
  232. package/lib/context/auth-resolver.js +1 -1
  233. package/lib/context/config-loader.js +1 -1
  234. package/lib/context.js +1 -1
  235. package/lib/core/alias-resolver.js +1 -1
  236. package/lib/core/api-client.d.ts +0 -16
  237. package/lib/core/api-client.js +1 -1
  238. package/lib/core/bff/config.js +1 -1
  239. package/lib/core/bff/file-system.js +1 -1
  240. package/lib/core/bff/hash.js +1 -1
  241. package/lib/core/bff/lock.js +1 -1
  242. package/lib/core/bff/utils.js +1 -1
  243. package/lib/core/db-resolver.js +1 -1
  244. package/lib/core/kb-search-client.d.ts +30 -0
  245. package/lib/core/kb-search-client.js +1 -0
  246. package/lib/core/page/file-system.js +1 -1
  247. package/lib/core/page/hash.js +1 -1
  248. package/lib/core/page/lock.js +1 -1
  249. package/lib/core/sql-index-auditor.js +1 -1
  250. package/lib/core/sql-sync/config.js +1 -1
  251. package/lib/core/sql-sync/file-system.js +1 -1
  252. package/lib/core/sql-sync/hash.js +1 -1
  253. package/lib/core/sql-sync/lock.js +1 -1
  254. package/lib/core/sql-sync/utils.js +1 -1
  255. package/lib/core/sql-validator.js +1 -1
  256. package/lib/errors.js +1 -1
  257. package/lib/framework/build-all-flags.js +1 -1
  258. package/lib/framework/error-output.js +1 -1
  259. package/lib/framework/explicit-yes.js +1 -1
  260. package/lib/framework/flags.js +1 -1
  261. package/lib/framework/help.js +1 -1
  262. package/lib/framework/index.js +1 -1
  263. package/lib/framework/output.js +1 -1
  264. package/lib/framework/response.js +1 -1
  265. package/lib/framework/runner-alias.js +1 -1
  266. package/lib/framework/runner.js +1 -1
  267. package/lib/framework/schema-export.js +1 -1
  268. package/lib/framework/types.d.ts +1 -0
  269. package/lib/framework/types.js +1 -1
  270. package/lib/generated/build-info.d.ts +4 -4
  271. package/lib/generated/build-info.js +1 -1
  272. package/lib/generated/official-routing.js +1 -1
  273. package/lib/generated/routing-contract.js +1 -1
  274. package/lib/help.js +1 -1
  275. package/lib/postinstall.js +1 -1
  276. package/lib/runtime/confirmation.js +1 -1
  277. package/lib/runtime/event.js +1 -1
  278. package/lib/runtime/index.js +1 -1
  279. package/lib/runtime/queue.js +1 -1
  280. package/lib/runtime/resolve.js +1 -1
  281. package/lib/skills/builtin-skill.js +1 -1
  282. package/lib/skills/main.js +1 -1
  283. package/lib/skills/npx-skills-add.js +1 -1
  284. package/lib/skills/skill-presence.js +1 -1
  285. package/lib/telemetry/cli-command-trace.js +1 -1
  286. package/lib/telemetry/cli-help-trace.js +1 -1
  287. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  288. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  289. package/lib/telemetry/send-cli-trace-log.js +1 -1
  290. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  291. package/lib/utils/ai_config.js +1 -1
  292. package/lib/utils/apply-jq-filter.js +1 -1
  293. package/lib/utils/cdn-config.js +1 -1
  294. package/lib/utils/check-sdk-version.js +1 -1
  295. package/lib/utils/cli-version-check.js +1 -1
  296. package/lib/utils/cli-version-policy.js +1 -1
  297. package/lib/utils/config.js +1 -1
  298. package/lib/utils/entity-with-id.js +1 -1
  299. package/lib/utils/file-utils.js +1 -1
  300. package/lib/utils/guides-cdn.js +1 -1
  301. package/lib/utils/http-client.js +1 -1
  302. package/lib/utils/is-non-interactive.js +1 -1
  303. package/lib/utils/logger.js +1 -1
  304. package/lib/utils/params.js +1 -1
  305. package/lib/utils/platform.js +1 -1
  306. package/lib/utils/sleep.js +1 -1
  307. package/lib/utils/template-replacer.js +1 -1
  308. package/lib/utils/update-notice.js +1 -1
  309. package/lib/utils/version.js +1 -1
  310. package/lib/utils/with-active-cookie.js +1 -1
  311. package/lib/utils/write-cli-side-channel.js +1 -1
  312. package/package.json +1 -1
  313. package/skills/rabetbase/SKILL.md +3 -3
  314. package/skills/rabetbase/references/rabetbase-config.md +1 -1
  315. package/skills/rabetbase/references/rabetbase-database-template.md +36 -0
  316. package/skills/rabetbase/references/rabetbase-doctor.md +1 -1
  317. package/skills/rabetbase/references/rabetbase-kb.md +8 -7
  318. package/skills/rabetbase/references/rabetbase-rule.md +15 -0
  319. package/skills/rabetbase.manifest.json +4 -3
@@ -1 +1 @@
1
- const a112_0x2c2ede=a112_0x374a;(function(_0x52b016,_0x3712d9){const _0x4a58ff=a112_0x374a,_0x588400=_0x52b016();while(!![]){try{const _0x1c17bb=-parseInt(_0x4a58ff(0x106))/0x1*(-parseInt(_0x4a58ff(0x109))/0x2)+-parseInt(_0x4a58ff(0x112))/0x3*(-parseInt(_0x4a58ff(0x14f))/0x4)+-parseInt(_0x4a58ff(0x10f))/0x5+parseInt(_0x4a58ff(0x13b))/0x6*(-parseInt(_0x4a58ff(0x105))/0x7)+-parseInt(_0x4a58ff(0x138))/0x8+-parseInt(_0x4a58ff(0x154))/0x9+parseInt(_0x4a58ff(0x14a))/0xa;if(_0x1c17bb===_0x3712d9)break;else _0x588400['push'](_0x588400['shift']());}catch(_0x51066e){_0x588400['push'](_0x588400['shift']());}}}(a112_0x251f,0x3ee74));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';function a112_0x374a(_0x5d12d4,_0x1fe879){_0x5d12d4=_0x5d12d4-0xfc;const _0x251f7b=a112_0x251f();let _0x374a9d=_0x251f7b[_0x5d12d4];return _0x374a9d;}import{CliError}from'../../errors.js';const LIST_PAGE_SIZE=0x32,DATA_NOT_EXIST_ERROR_CODE=a112_0x2c2ede(0x100);export function kbError(_0x826f37,_0x3dc997,_0x46e31d){return new CliError(_0x826f37,0x1,_0x3dc997,_0x46e31d);}export function readKbId(_0x3167a6){const _0x39086c=a112_0x2c2ede,_0x3de1fc=_0x3167a6[_0x39086c(0x10d)]('id');if(!Number[_0x39086c(0x150)](_0x3de1fc)||_0x3de1fc<=0x0)throw kbError(_0x39086c(0x11e),_0x39086c(0x14c));return _0x3de1fc;}export function requireKbExplicitYes(_0x1fd14b){const _0x2f9dc1=a112_0x2c2ede;if(_0x1fd14b[_0x2f9dc1(0x135)](_0x2f9dc1(0x113))||_0x1fd14b[_0x2f9dc1(0x135)](_0x2f9dc1(0x118)))return;throw kbError('kb_confirmation_required',_0x2f9dc1(0x13c),_0x2f9dc1(0x133));}function sha256(_0x2be9f1){const _0x38399e=a112_0x2c2ede;return'sha256:'+createHash(_0x38399e(0x12d))[_0x38399e(0xfd)](_0x2be9f1)[_0x38399e(0x115)](_0x38399e(0x14d));}function a112_0x251f(){const _0x5c702e=['totalCount','\x20to\x20','currentPage','\x20during\x20paging.',',\x20current\x20','stringify','message','Pass\x20--file\x20<knowledge.md>.','utf-8','kb_file_required','1823250DXzTwZ','version','--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.','hex','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.','4zRUgwT','isSafeInteger','verification_unavailable','outcome_unknown','paging','3524085GPZpsb','Knowledge-base\x20list\x20returned\x20page\x20','kb_','update','filter','kb_scope_mismatch','306','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','kb_list_contract_invalid','string','appCode','9058GagIOJ','491522SwdEfU','has','trim','2WyWwdl','kb_not_found','Knowledge-base\x20get-one\x20returned\x20id\x20','\x20was\x20requested.','num','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','362790gtUajD','cookie','kb_state_drift','1243866xEyEtX','dry-run','updateTime','digest','content','number','yes','kb_content_invalid','Knowledge-base\x20list\x20total\x20changed\x20from\x20','defineProperty','\x20while\x20id\x20','kb_response_invalid','kb_id_invalid','title','Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20','createTime','isFile','Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','Cannot\x20access\x20knowledge-base\x20content\x20file:\x20','scope','add','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','Knowledge-base\x20content\x20file\x20path\x20is\x20required.','Knowledge\x20base\x20','items','\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20','push','sha256','\x20of\x20','\x20response\x20is\x20missing\x20','\x20response\x20contains\x20an\x20invalid\x20version.','\x20records.','kb_file_unreadable','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','contentHash','bool','Company\x20knowledge\x20base\x20not\x20found:\x20','allowEmpty','366256hjoqHM','Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.','\x20while\x20page\x20','1488mqQCcT','This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.','kb_file_invalid','\x20version\x20changed:\x20expected\x20','company'];a112_0x251f=function(){return _0x5c702e;};return a112_0x251f();}export function inspectKbContent(_0x547cb9){const _0x106f99=Buffer['from'](_0x547cb9,'utf8');return{'content':_0x547cb9,'byteSize':_0x106f99['byteLength'],'contentHash':sha256(_0x106f99)};}export async function readKbFile(_0xef27cf){const _0x422051=a112_0x2c2ede,_0xd2ea05=_0xef27cf['trim']();if(!_0xd2ea05)throw kbError(_0x422051(0x149),_0x422051(0x128),_0x422051(0x147));const _0x33bf02=resolve(_0xd2ea05);let _0x3211e4;try{_0x3211e4=await stat(_0x33bf02);}catch(_0x3eccf5){throw kbError(_0x422051(0x132),_0x422051(0x124)+_0xd2ea05,_0x3eccf5 instanceof Error?_0x3eccf5[_0x422051(0x146)]:String(_0x3eccf5));}if(!_0x3211e4[_0x422051(0x122)]())throw kbError(_0x422051(0x13d),_0x422051(0x123)+_0xd2ea05);let _0x4df80f;try{_0x4df80f=await readFile(_0x33bf02);}catch(_0x2ea108){throw kbError(_0x422051(0x132),_0x422051(0x10e)+_0xd2ea05,_0x2ea108 instanceof Error?_0x2ea108[_0x422051(0x146)]:String(_0x2ea108));}let _0x2a3ad8;try{_0x2a3ad8=new TextDecoder(_0x422051(0x148),{'fatal':!![],'ignoreBOM':!![]})['decode'](_0x4df80f);}catch{throw kbError('kb_content_invalid','Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20'+_0xd2ea05);}if(!_0x2a3ad8[_0x422051(0x108)]())throw kbError(_0x422051(0x119),'Knowledge-base\x20content\x20file\x20is\x20blank:\x20'+_0xd2ea05);return inspectKbContent(_0x2a3ad8);}export async function verifyKbMutationReadback(_0x3b37d5,_0xa53b0f,_0x4880a4){const _0x11a03e=a112_0x2c2ede;try{return await _0x4880a4();}catch(_0xc93bd1){const _0x20ca90=kbError(_0x11a03e(0xfc)+_0x3b37d5+'_'+(_0xa53b0f?_0x11a03e(0x152):_0x11a03e(0x151)),'The\x20'+_0x3b37d5+_0x11a03e(0x127),_0x11a03e(0x101));Object[_0x11a03e(0x11b)](_0x20ca90,'cause',{'value':_0xc93bd1,'enumerable':![]});throw _0x20ca90;}}function requireRecordText(_0xeaf50e,_0x26a833,_0x44aa16,_0x48c236={}){const _0x59af04=a112_0x2c2ede;if(typeof _0xeaf50e===_0x59af04(0x103)&&(_0x48c236[_0x59af04(0x137)]||_0xeaf50e[_0x59af04(0x108)]()))return _0xeaf50e;throw kbError(_0x59af04(0x11d),_0x59af04(0x129)+String(_0x44aa16)+_0x59af04(0x12f)+_0x26a833+'.');}export function projectKb(_0x15aa77){const _0x46f60d=a112_0x2c2ede;if(!Number[_0x46f60d(0x150)](_0x15aa77['id'])||_0x15aa77['id']<=0x0)throw kbError(_0x46f60d(0x11d),'Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.');if(!Number[_0x46f60d(0x150)](_0x15aa77[_0x46f60d(0x14b)])||_0x15aa77[_0x46f60d(0x14b)]<0x0)throw kbError(_0x46f60d(0x11d),'Knowledge\x20base\x20'+_0x15aa77['id']+_0x46f60d(0x130));if(_0x15aa77[_0x46f60d(0x125)]!==_0x46f60d(0x13f))throw kbError(_0x46f60d(0xff),_0x46f60d(0x129)+_0x15aa77['id']+'\x20is\x20not\x20company-scoped.');const _0x5397b0=requireRecordText(_0x15aa77[_0x46f60d(0x104)],_0x46f60d(0x104),_0x15aa77['id']),_0x2e2b5f=requireRecordText(_0x15aa77['title'],_0x46f60d(0x11f),_0x15aa77['id']),_0x7c91a8=inspectKbContent(requireRecordText(_0x15aa77[_0x46f60d(0x116)],_0x46f60d(0x116),_0x15aa77['id'],{'allowEmpty':!![]})),_0x359196=typeof _0x15aa77[_0x46f60d(0x121)]==='string'||typeof _0x15aa77[_0x46f60d(0x121)]===_0x46f60d(0x117)?_0x15aa77[_0x46f60d(0x121)]:undefined,_0x586861=typeof _0x15aa77[_0x46f60d(0x114)]===_0x46f60d(0x103)||typeof _0x15aa77['updateTime']===_0x46f60d(0x117)?_0x15aa77['updateTime']:undefined,_0x11d4ca=sha256(JSON[_0x46f60d(0x145)]({'id':_0x15aa77['id'],'scope':_0x15aa77['scope'],'appCode':_0x5397b0,'title':_0x2e2b5f,'version':_0x15aa77['version'],'contentHash':_0x7c91a8[_0x46f60d(0x134)],'createTime':_0x359196,'updateTime':_0x586861}));return{'id':_0x15aa77['id'],'scope':_0x46f60d(0x13f),'appCode':_0x5397b0,'title':_0x2e2b5f,'version':_0x15aa77[_0x46f60d(0x14b)],'contentByteSize':_0x7c91a8['byteSize'],'contentHash':_0x7c91a8[_0x46f60d(0x134)],'snapshotHash':_0x11d4ca,..._0x359196!==undefined?{'createTime':_0x359196}:{},..._0x586861!==undefined?{'updateTime':_0x586861}:{}};}export function assertCompanyKnowledgeBase(_0x2dad2b,_0x3be635,_0x5ea5c9){const _0x1314de=a112_0x2c2ede;if(_0x5ea5c9!==undefined&&_0x2dad2b['id']!==_0x5ea5c9)throw kbError(_0x1314de(0x11d),_0x1314de(0x10b)+_0x2dad2b['id']+_0x1314de(0x11c)+_0x5ea5c9+'\x20was\x20requested.');if(_0x2dad2b[_0x1314de(0x125)]!==_0x1314de(0x13f)||_0x2dad2b[_0x1314de(0x104)]!==_0x3be635)throw kbError(_0x1314de(0xff),_0x1314de(0x129)+_0x2dad2b['id']+_0x1314de(0x12b)+_0x3be635+'.');}export async function fetchAllCompanyKnowledgeBases(_0x53f005,_0x25ba03){const _0x181b27=a112_0x2c2ede,_0x81865d=[],_0x2976e6=new Set();let _0x98b690=0x1,_0x2825aa=0x0,_0x26b319;while(!![]){const _0x402839=await listEnterpriseKnowledgeBases(_0x53f005['cookie'],{'currentPage':_0x98b690,'pageSize':LIST_PAGE_SIZE,'appCode':_0x53f005[_0x181b27(0x104)],..._0x25ba03}),_0x18e294=_0x402839[_0x181b27(0x153)]?.[_0x181b27(0x140)];if(_0x402839[_0x181b27(0x153)]?.['currentPage']!==undefined&&_0x402839[_0x181b27(0x153)][_0x181b27(0x142)]!==_0x98b690)throw kbError(_0x181b27(0x102),_0x181b27(0x155)+_0x402839[_0x181b27(0x153)][_0x181b27(0x142)]+_0x181b27(0x13a)+_0x98b690+_0x181b27(0x10c));if(_0x18e294!==undefined){if(_0x26b319!==undefined&&_0x18e294!==_0x26b319)throw kbError(_0x181b27(0x102),_0x181b27(0x11a)+_0x26b319+_0x181b27(0x141)+_0x18e294+_0x181b27(0x143),'Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.');_0x26b319=_0x18e294;}for(const _0x487a01 of _0x402839[_0x181b27(0x12a)]){if(!Number[_0x181b27(0x150)](_0x487a01['id'])||_0x2976e6[_0x181b27(0x107)](_0x487a01['id']))throw kbError('kb_list_contract_invalid',_0x181b27(0x120)+String(_0x487a01['id'])+'.');_0x2976e6[_0x181b27(0x126)](_0x487a01['id']),_0x487a01[_0x181b27(0x125)]===_0x181b27(0x13f)&&_0x487a01[_0x181b27(0x104)]===_0x53f005[_0x181b27(0x104)]&&_0x81865d[_0x181b27(0x12c)](_0x487a01);}_0x2825aa+=_0x402839[_0x181b27(0x12a)]['length'];if(_0x18e294!==undefined&&_0x2825aa>=_0x18e294)break;if(_0x402839[_0x181b27(0x12a)]['length']<LIST_PAGE_SIZE){if(_0x18e294!==undefined&&_0x2825aa<_0x18e294)throw kbError(_0x181b27(0x102),'Knowledge-base\x20list\x20stopped\x20at\x20'+_0x2825aa+_0x181b27(0x12e)+_0x18e294+_0x181b27(0x131));break;}_0x98b690+=0x1;}return _0x81865d;}export function findExactCompanyKnowledgeBases(_0xae962c,_0xc7250c,_0x518f56){const _0x2a74da=a112_0x2c2ede;return _0xae962c[_0x2a74da(0xfe)](_0x2bd994=>_0x2bd994[_0x2a74da(0x125)]==='company'&&_0x2bd994['appCode']===_0xc7250c&&_0x2bd994[_0x2a74da(0x11f)]===_0x518f56);}export async function getKbOrNull(_0x10c16c,_0x49d8cc){const _0x4fe16a=a112_0x2c2ede;try{const _0x48c35c=await getEnterpriseKnowledgeBase(_0x10c16c[_0x4fe16a(0x110)],_0x49d8cc);return assertCompanyKnowledgeBase(_0x48c35c,_0x10c16c[_0x4fe16a(0x104)],_0x49d8cc),_0x48c35c;}catch(_0x54eb33){if(getPlatformErrorCode(_0x54eb33)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x54eb33;}}export async function requireKb(_0x2ec525,_0x2a0697){const _0x1ee17a=a112_0x2c2ede,_0x1548b3=await getKbOrNull(_0x2ec525,_0x2a0697);if(!_0x1548b3)throw kbError(_0x1ee17a(0x10a),_0x1ee17a(0x136)+_0x2a0697,_0x1ee17a(0x139));return _0x1548b3;}export function assertExpectedKbVersion(_0x572344,_0x42e484){const _0x406b08=a112_0x2c2ede;if(_0x42e484===undefined||_0x572344[_0x406b08(0x14b)]===_0x42e484)return;throw kbError(_0x406b08(0x111),'Knowledge\x20base\x20'+_0x572344['id']+_0x406b08(0x13e)+_0x42e484+_0x406b08(0x144)+_0x572344[_0x406b08(0x14b)]+'.',_0x406b08(0x14e));}
1
+ (function(_0x175210,_0x332d7e){const _0x5cb90d=a112_0x307e,_0x4deb92=_0x175210();while(!![]){try{const _0x55154c=-parseInt(_0x5cb90d(0x16f))/0x1*(-parseInt(_0x5cb90d(0x1a1))/0x2)+parseInt(_0x5cb90d(0x19f))/0x3+parseInt(_0x5cb90d(0x1b5))/0x4*(-parseInt(_0x5cb90d(0x16d))/0x5)+-parseInt(_0x5cb90d(0x1a6))/0x6*(parseInt(_0x5cb90d(0x17c))/0x7)+parseInt(_0x5cb90d(0x16e))/0x8+parseInt(_0x5cb90d(0x18c))/0x9*(-parseInt(_0x5cb90d(0x1a5))/0xa)+parseInt(_0x5cb90d(0x174))/0xb*(parseInt(_0x5cb90d(0x185))/0xc);if(_0x55154c===_0x332d7e)break;else _0x4deb92['push'](_0x4deb92['shift']());}catch(_0x48ac64){_0x4deb92['push'](_0x4deb92['shift']());}}}(a112_0x5241,0x4c3cf));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='306';export function kbError(_0x4063bb,_0x4f5914,_0x210380){return new CliError(_0x4063bb,0x1,_0x4f5914,_0x210380);}export function readKbId(_0x2aa908){const _0x447e48=a112_0x307e,_0x3d74b0=_0x2aa908['num']('id');if(!Number[_0x447e48(0x18b)](_0x3d74b0)||_0x3d74b0<=0x0)throw kbError(_0x447e48(0x18e),_0x447e48(0x1a4));return _0x3d74b0;}export function requireKbExplicitYes(_0x14b177){const _0x48a96d=a112_0x307e;if(_0x14b177['bool'](_0x48a96d(0x1ab))||_0x14b177['bool'](_0x48a96d(0x1a2)))return;throw kbError(_0x48a96d(0x199),_0x48a96d(0x187),_0x48a96d(0x16c));}function sha256(_0x522de9){const _0x1c30fd=a112_0x307e;return _0x1c30fd(0x188)+createHash('sha256')['update'](_0x522de9)['digest']('hex');}export function inspectKbContent(_0x4d2b39){const _0x3443c4=a112_0x307e,_0x3af8ef=Buffer[_0x3443c4(0x181)](_0x4d2b39,_0x3443c4(0x194));return{'content':_0x4d2b39,'byteSize':_0x3af8ef[_0x3443c4(0x173)],'contentHash':sha256(_0x3af8ef)};}export async function readKbFile(_0x14a2dc){const _0x2ae505=a112_0x307e,_0x1f71e1=_0x14a2dc[_0x2ae505(0x19d)]();if(!_0x1f71e1)throw kbError(_0x2ae505(0x183),_0x2ae505(0x1b2),'Pass\x20--file\x20<knowledge.md>.');const _0x14e6a1=resolve(_0x1f71e1);let _0x342218;try{_0x342218=await stat(_0x14e6a1);}catch(_0x349ffe){throw kbError('kb_file_unreadable',_0x2ae505(0x176)+_0x1f71e1,_0x349ffe instanceof Error?_0x349ffe[_0x2ae505(0x17f)]:String(_0x349ffe));}if(!_0x342218[_0x2ae505(0x1b8)]())throw kbError(_0x2ae505(0x1ad),'Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20'+_0x1f71e1);let _0xf86771;try{_0xf86771=await readFile(_0x14e6a1);}catch(_0x3f189c){throw kbError(_0x2ae505(0x193),_0x2ae505(0x1a0)+_0x1f71e1,_0x3f189c instanceof Error?_0x3f189c[_0x2ae505(0x17f)]:String(_0x3f189c));}let _0x260a96;try{_0x260a96=new TextDecoder(_0x2ae505(0x195),{'fatal':!![],'ignoreBOM':!![]})[_0x2ae505(0x1bd)](_0xf86771);}catch{throw kbError(_0x2ae505(0x186),_0x2ae505(0x1b9)+_0x1f71e1);}if(!_0x260a96[_0x2ae505(0x19d)]())throw kbError(_0x2ae505(0x186),'Knowledge-base\x20content\x20file\x20is\x20blank:\x20'+_0x1f71e1);return inspectKbContent(_0x260a96);}export async function verifyKbMutationReadback(_0x4da1a7,_0x899956,_0x595a9a){const _0x46d9c7=a112_0x307e;try{return await _0x595a9a();}catch(_0x250e22){const _0xac01b9=kbError(_0x46d9c7(0x17a)+_0x4da1a7+'_'+(_0x899956?_0x46d9c7(0x1b6):_0x46d9c7(0x18a)),'The\x20'+_0x4da1a7+'\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.',_0x46d9c7(0x180));Object[_0x46d9c7(0x179)](_0xac01b9,_0x46d9c7(0x192),{'value':_0x250e22,'enumerable':![]});throw _0xac01b9;}}function requireRecordText(_0x3af4e2,_0x539394,_0x53c11f,_0x59c363={}){const _0x405e72=a112_0x307e;if(typeof _0x3af4e2===_0x405e72(0x196)&&(_0x59c363[_0x405e72(0x19a)]||_0x3af4e2[_0x405e72(0x19d)]()))return _0x3af4e2;throw kbError(_0x405e72(0x1a8),_0x405e72(0x17e)+String(_0x53c11f)+'\x20response\x20is\x20missing\x20'+_0x539394+'.');}export function projectKb(_0x2b2527){const _0x3b8a05=a112_0x307e;if(!Number[_0x3b8a05(0x18b)](_0x2b2527['id'])||_0x2b2527['id']<=0x0)throw kbError(_0x3b8a05(0x1a8),_0x3b8a05(0x197));if(!Number['isSafeInteger'](_0x2b2527['version'])||_0x2b2527[_0x3b8a05(0x168)]<0x0)throw kbError(_0x3b8a05(0x1a8),_0x3b8a05(0x17e)+_0x2b2527['id']+_0x3b8a05(0x1b3));if(_0x2b2527[_0x3b8a05(0x1a7)]!==_0x3b8a05(0x19b))throw kbError('kb_scope_mismatch','Knowledge\x20base\x20'+_0x2b2527['id']+'\x20is\x20not\x20company-scoped.');const _0x54aed7=requireRecordText(_0x2b2527[_0x3b8a05(0x18f)],'appCode',_0x2b2527['id']),_0x4c9d5a=requireRecordText(_0x2b2527['title'],_0x3b8a05(0x17b),_0x2b2527['id']),_0x7966ed=inspectKbContent(requireRecordText(_0x2b2527[_0x3b8a05(0x198)],'content',_0x2b2527['id'],{'allowEmpty':!![]})),_0x1f1a23=typeof _0x2b2527[_0x3b8a05(0x172)]===_0x3b8a05(0x196)||typeof _0x2b2527[_0x3b8a05(0x172)]==='number'?_0x2b2527[_0x3b8a05(0x172)]:undefined,_0x14c8f2=typeof _0x2b2527[_0x3b8a05(0x1b1)]===_0x3b8a05(0x196)||typeof _0x2b2527['updateTime']===_0x3b8a05(0x169)?_0x2b2527['updateTime']:undefined,_0x1605ef=sha256(JSON[_0x3b8a05(0x171)]({'id':_0x2b2527['id'],'scope':_0x2b2527[_0x3b8a05(0x1a7)],'appCode':_0x54aed7,'title':_0x4c9d5a,'version':_0x2b2527['version'],'contentHash':_0x7966ed['contentHash'],'createTime':_0x1f1a23,'updateTime':_0x14c8f2}));return{'id':_0x2b2527['id'],'scope':_0x3b8a05(0x19b),'appCode':_0x54aed7,'title':_0x4c9d5a,'version':_0x2b2527['version'],'contentByteSize':_0x7966ed[_0x3b8a05(0x177)],'contentHash':_0x7966ed[_0x3b8a05(0x1ba)],'snapshotHash':_0x1605ef,..._0x1f1a23!==undefined?{'createTime':_0x1f1a23}:{},..._0x14c8f2!==undefined?{'updateTime':_0x14c8f2}:{}};}export function assertCompanyKnowledgeBase(_0x2a8b18,_0x544f9f,_0x5b385c){const _0x2ddb82=a112_0x307e;if(_0x5b385c!==undefined&&_0x2a8b18['id']!==_0x5b385c)throw kbError(_0x2ddb82(0x1a8),'Knowledge-base\x20get-one\x20returned\x20id\x20'+_0x2a8b18['id']+_0x2ddb82(0x1af)+_0x5b385c+_0x2ddb82(0x1b0));if(_0x2a8b18[_0x2ddb82(0x1a7)]!==_0x2ddb82(0x19b)||_0x2a8b18[_0x2ddb82(0x18f)]!==_0x544f9f)throw kbError(_0x2ddb82(0x189),'Knowledge\x20base\x20'+_0x2a8b18['id']+_0x2ddb82(0x182)+_0x544f9f+'.');}export async function fetchAllCompanyKnowledgeBases(_0x4469fa,_0x278dda){const _0x5ebe4c=a112_0x307e,_0x13bb22=[],_0x30d619=new Set();let _0x2faebc=0x1,_0x224466=0x0,_0x30e230;while(!![]){const _0x4ef10b=await listEnterpriseKnowledgeBases(_0x4469fa[_0x5ebe4c(0x17d)],{'currentPage':_0x2faebc,'pageSize':LIST_PAGE_SIZE,'appCode':_0x4469fa[_0x5ebe4c(0x18f)],..._0x278dda}),_0x33b725=_0x4ef10b[_0x5ebe4c(0x1b4)]?.[_0x5ebe4c(0x178)];if(_0x4ef10b[_0x5ebe4c(0x1b4)]?.[_0x5ebe4c(0x184)]!==undefined&&_0x4ef10b[_0x5ebe4c(0x1b4)][_0x5ebe4c(0x184)]!==_0x2faebc)throw kbError(_0x5ebe4c(0x1b7),_0x5ebe4c(0x191)+_0x4ef10b[_0x5ebe4c(0x1b4)][_0x5ebe4c(0x184)]+'\x20while\x20page\x20'+_0x2faebc+_0x5ebe4c(0x1b0));if(_0x33b725!==undefined){if(_0x30e230!==undefined&&_0x33b725!==_0x30e230)throw kbError('kb_list_contract_invalid','Knowledge-base\x20list\x20total\x20changed\x20from\x20'+_0x30e230+'\x20to\x20'+_0x33b725+_0x5ebe4c(0x19e),_0x5ebe4c(0x170));_0x30e230=_0x33b725;}for(const _0x25ed3d of _0x4ef10b[_0x5ebe4c(0x1bb)]){if(!Number[_0x5ebe4c(0x18b)](_0x25ed3d['id'])||_0x30d619[_0x5ebe4c(0x16a)](_0x25ed3d['id']))throw kbError(_0x5ebe4c(0x1b7),'Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20'+String(_0x25ed3d['id'])+'.');_0x30d619[_0x5ebe4c(0x1bc)](_0x25ed3d['id']),_0x25ed3d[_0x5ebe4c(0x1a7)]===_0x5ebe4c(0x19b)&&_0x25ed3d['appCode']===_0x4469fa[_0x5ebe4c(0x18f)]&&_0x13bb22['push'](_0x25ed3d);}_0x224466+=_0x4ef10b[_0x5ebe4c(0x1bb)][_0x5ebe4c(0x175)];if(_0x33b725!==undefined&&_0x224466>=_0x33b725)break;if(_0x4ef10b['items'][_0x5ebe4c(0x175)]<LIST_PAGE_SIZE){if(_0x33b725!==undefined&&_0x224466<_0x33b725)throw kbError(_0x5ebe4c(0x1b7),_0x5ebe4c(0x1aa)+_0x224466+_0x5ebe4c(0x19c)+_0x33b725+_0x5ebe4c(0x1a9));break;}_0x2faebc+=0x1;}return _0x13bb22;}function a112_0x5241(){const _0x35bf11=['1159632wFWiTx','Company\x20knowledge\x20base\x20not\x20found:\x20','kb_id_invalid','appCode','kb_state_drift','Knowledge-base\x20list\x20returned\x20page\x20','cause','kb_file_unreadable','utf8','utf-8','string','Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.','content','kb_confirmation_required','allowEmpty','company','\x20of\x20','trim','\x20during\x20paging.','870150lUyGeo','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','46cYkyrE','yes',',\x20current\x20','--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.','40KGGDRx','444mAjYEF','scope','kb_response_invalid','\x20records.','Knowledge-base\x20list\x20stopped\x20at\x20','dry-run','Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.','kb_file_invalid','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.','\x20while\x20id\x20','\x20was\x20requested.','updateTime','Knowledge-base\x20content\x20file\x20path\x20is\x20required.','\x20response\x20contains\x20an\x20invalid\x20version.','paging','2244076sAeikh','outcome_unknown','kb_list_contract_invalid','isFile','Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','contentHash','items','add','decode','filter','version','number','has','kb_not_found','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','5EBHxKl','4223056fhiHxn','15611RHbsoM','Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.','stringify','createTime','byteLength','6331919zLblnh','length','Cannot\x20access\x20knowledge-base\x20content\x20file:\x20','byteSize','totalCount','defineProperty','kb_','title','34426jyldbf','cookie','Knowledge\x20base\x20','message','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','from','\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20','kb_file_required','currentPage','12YrdLyU','kb_content_invalid','This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.','sha256:','kb_scope_mismatch','verification_unavailable','isSafeInteger'];a112_0x5241=function(){return _0x35bf11;};return a112_0x5241();}function a112_0x307e(_0x591e42,_0x4dc116){_0x591e42=_0x591e42-0x168;const _0x524147=a112_0x5241();let _0x307eea=_0x524147[_0x591e42];return _0x307eea;}export function findExactCompanyKnowledgeBases(_0x345f0d,_0xcab8d6,_0x306f69){const _0x2f80a2=a112_0x307e;return _0x345f0d[_0x2f80a2(0x1be)](_0x4a060e=>_0x4a060e[_0x2f80a2(0x1a7)]===_0x2f80a2(0x19b)&&_0x4a060e[_0x2f80a2(0x18f)]===_0xcab8d6&&_0x4a060e[_0x2f80a2(0x17b)]===_0x306f69);}export async function getKbOrNull(_0x1503e9,_0x197539){const _0x47f339=a112_0x307e;try{const _0x59004e=await getEnterpriseKnowledgeBase(_0x1503e9[_0x47f339(0x17d)],_0x197539);return assertCompanyKnowledgeBase(_0x59004e,_0x1503e9[_0x47f339(0x18f)],_0x197539),_0x59004e;}catch(_0x1e07c9){if(getPlatformErrorCode(_0x1e07c9)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x1e07c9;}}export async function requireKb(_0x339ccd,_0x109e1f){const _0x45e0d3=a112_0x307e,_0x4ef0f5=await getKbOrNull(_0x339ccd,_0x109e1f);if(!_0x4ef0f5)throw kbError(_0x45e0d3(0x16b),_0x45e0d3(0x18d)+_0x109e1f,_0x45e0d3(0x1ac));return _0x4ef0f5;}export function assertExpectedKbVersion(_0x4bc66d,_0xed90f3){const _0x21a1f3=a112_0x307e;if(_0xed90f3===undefined||_0x4bc66d[_0x21a1f3(0x168)]===_0xed90f3)return;throw kbError(_0x21a1f3(0x190),_0x21a1f3(0x17e)+_0x4bc66d['id']+'\x20version\x20changed:\x20expected\x20'+_0xed90f3+_0x21a1f3(0x1a3)+_0x4bc66d['version']+'.',_0x21a1f3(0x1ae));}
@@ -1 +1 @@
1
- const a113_0x43962d=a113_0x3d43;(function(_0x799e03,_0x360d34){const _0x4770de=a113_0x3d43,_0x2b81e7=_0x799e03();while(!![]){try{const _0x430627=parseInt(_0x4770de(0x202))/0x1*(parseInt(_0x4770de(0x1e6))/0x2)+-parseInt(_0x4770de(0x1e1))/0x3+-parseInt(_0x4770de(0x1f2))/0x4+parseInt(_0x4770de(0x1fe))/0x5+parseInt(_0x4770de(0x20f))/0x6+parseInt(_0x4770de(0x1e5))/0x7*(-parseInt(_0x4770de(0x1fb))/0x8)+parseInt(_0x4770de(0x1f1))/0x9*(-parseInt(_0x4770de(0x20d))/0xa);if(_0x430627===_0x360d34)break;else _0x2b81e7['push'](_0x2b81e7['shift']());}catch(_0x5738f6){_0x2b81e7['push'](_0x2b81e7['shift']());}}}(a113_0x5628,0x9633f));import{isPlatformTransportFailure,updateEnterpriseKnowledgeBase}from'../../core/api-client.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a113_0x5628(){const _0x2942a6=['2599569xknCfz','planned','expectedVersion','content','15645tsVXDm','2090458xDKaUo','string','version','--title\x20cannot\x20be\x20empty.','POST','kb_update_empty','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','contentHash','trim','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','expected-version','82008FMqthI','2448148kEpbsy','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','appCode','kb_file_required','Nothing\x20to\x20update.','title','Company\x20knowledge-base\x20id','New\x20knowledge-base\x20title','rabetbase\x20kb\x20detail\x20--id\x20','3304fBcKKj','patch','replacement','5684980IikUQe','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','Company\x20knowledge\x20base\x20','flag','1YTUgYI','push','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','\x20--format\x20compress','kb_expected_version_invalid','kb_verification_failed','company','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','verified','file','kb_update_outcome_unknown','50hIhvnA','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','5281086TnjgmV','before','Updated\x20company\x20knowledge\x20base\x20','update','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','beforeRecord'];a113_0x5628=function(){return _0x2942a6;};return a113_0x5628();}import{assertCompanyKnowledgeBase,assertExpectedKbVersion,inspectKbContent,kbError,projectKb,readKbFile,readKbId,requireKb,verifyKbMutationReadback}from'../../commands/kb/shared.js';function a113_0x3d43(_0xd2eb4d,_0x5abf13){_0xd2eb4d=_0xd2eb4d-0x1dc;const _0x5628ca=a113_0x5628();let _0x3d43ae=_0x5628ca[_0xd2eb4d];return _0x3d43ae;}const UPDATE_PATH='/admin/knowledge-base/update',NON_ATOMIC_WARNING=a113_0x43962d(0x20e);function readUpdatePatch(_0x2841b4){const _0x914779=a113_0x43962d,_0x241802=readKbId(_0x2841b4),_0x4fe7f8=_0x2841b4[_0x914779(0x201)](_0x914779(0x1f7)),_0x50471d=_0x2841b4[_0x914779(0x201)](_0x914779(0x20b)),_0xb02193=_0x2841b4[_0x914779(0x201)](_0x914779(0x1f0)),_0x427eeb=_0x4fe7f8===undefined?undefined:String(_0x4fe7f8)[_0x914779(0x1ee)]();if(_0x4fe7f8!==undefined&&!_0x427eeb)throw kbError('kb_title_invalid',_0x914779(0x1e9));const _0x142d88=_0x50471d===undefined?undefined:String(_0x50471d)[_0x914779(0x1ee)]();if(_0x50471d!==undefined&&!_0x142d88)throw kbError(_0x914779(0x1f5),'--file\x20cannot\x20be\x20empty.');if(_0x427eeb===undefined&&_0x142d88===undefined)throw kbError(_0x914779(0x1eb),_0x914779(0x1f6),'Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.');let _0x2a1ed9;if(_0xb02193!==undefined){_0x2a1ed9=Number(_0xb02193);if(!Number['isSafeInteger'](_0x2a1ed9)||_0x2a1ed9<0x0)throw kbError(_0x914779(0x206),_0x914779(0x1f3));}return{'id':_0x241802,'title':_0x427eeb,'file':_0x142d88,'expectedVersion':_0x2a1ed9};}async function prepareUpdate(_0x43a91c){const _0x79a68a=a113_0x43962d,_0x5a71a6=readUpdatePatch(_0x43a91c),_0x5ac4a4=await requireKb(_0x43a91c,_0x5a71a6['id']);assertExpectedKbVersion(_0x5ac4a4,_0x5a71a6[_0x79a68a(0x1e3)]);const _0x2ee0fc=_0x5a71a6['file']?await readKbFile(_0x5a71a6['file']):undefined,_0x2faab3=projectKb(_0x5ac4a4),_0x56e1d7=projectKb({..._0x5ac4a4,..._0x5a71a6[_0x79a68a(0x1f7)]!==undefined?{'title':_0x5a71a6[_0x79a68a(0x1f7)]}:{},..._0x2ee0fc?{'content':_0x2ee0fc[_0x79a68a(0x1e4)]}:{}});return{'patch':_0x5a71a6,'beforeRecord':_0x5ac4a4,'before':_0x2faab3,'planned':_0x56e1d7,'replacement':_0x2ee0fc};}export const kbUpdate={'service':'kb','command':a113_0x43962d(0x1de),'description':a113_0x43962d(0x204),'risk':'write','requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':'number','required':!![],'description':a113_0x43962d(0x1f8)},{'name':'title','type':a113_0x43962d(0x1e7),'required':![],'description':a113_0x43962d(0x1f9)},{'name':a113_0x43962d(0x20b),'type':'string','required':![],'description':a113_0x43962d(0x1df)},{'name':a113_0x43962d(0x1f0),'type':'number','required':![],'description':a113_0x43962d(0x1ef)}],async 'validate'(_0x296e3a){readUpdatePatch(_0x296e3a);},async 'dryRun'(_0x42185c){const _0x27e150=a113_0x43962d,_0x4b1bdd=await prepareUpdate(_0x42185c),_0x5db3a2=_0x4b1bdd[_0x27e150(0x1fc)][_0x27e150(0x1e3)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x27e150(0x1de),'selector':{'id':_0x4b1bdd[_0x27e150(0x1dc)]['id'],'scope':_0x27e150(0x208),'appCode':_0x4b1bdd[_0x27e150(0x1dc)][_0x27e150(0x1f4)]},'before':_0x4b1bdd[_0x27e150(0x1dc)],'after':_0x4b1bdd[_0x27e150(0x1e2)],'dryRun':!![],'backend':{'method':_0x27e150(0x1ea),'path':UPDATE_PATH},'warnings':_0x5db3a2,'verification':{'expectedVersion':_0x4b1bdd[_0x27e150(0x1fc)][_0x27e150(0x1e3)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x4b1bdd['before']['snapshotHash'],'lookupCommand':_0x27e150(0x1fa)+_0x4b1bdd['before']['id']+_0x27e150(0x205)}},{'method':_0x27e150(0x1ea),'url':UPDATE_PATH});},async 'execute'(_0x5d79e5){const _0x53bd11=a113_0x43962d,_0x25f03f=await prepareUpdate(_0x5d79e5),_0x47176d={'id':_0x25f03f[_0x53bd11(0x1fc)]['id'],..._0x25f03f[_0x53bd11(0x1fc)]['title']!==undefined?{'title':_0x25f03f[_0x53bd11(0x1fc)][_0x53bd11(0x1f7)]}:{},..._0x25f03f['replacement']?{'content':_0x25f03f[_0x53bd11(0x1fd)][_0x53bd11(0x1e4)]}:{}};let _0x3cf4de=![];try{const _0x324ffb=await updateEnterpriseKnowledgeBase(_0x5d79e5['cookie'],_0x47176d);assertCompanyKnowledgeBase(_0x324ffb,_0x5d79e5['appCode'],_0x25f03f[_0x53bd11(0x1fc)]['id']);}catch(_0x59cf36){if(!isPlatformTransportFailure(_0x59cf36))throw _0x59cf36;_0x3cf4de=!![];}const _0x3981f3=await verifyKbMutationReadback(_0x53bd11(0x1de),_0x3cf4de,()=>requireKb(_0x5d79e5,_0x25f03f[_0x53bd11(0x1fc)]['id'])),_0xaca57a=projectKb(_0x3981f3),_0x233844=_0x25f03f[_0x53bd11(0x1fc)]['title']===undefined||_0x3981f3['title']===_0x25f03f[_0x53bd11(0x1fc)][_0x53bd11(0x1f7)],_0x58d007=!_0x25f03f['replacement']||inspectKbContent(_0x3981f3['content'])[_0x53bd11(0x1ed)]===_0x25f03f[_0x53bd11(0x1fd)][_0x53bd11(0x1ed)],_0x183e21=!_0x25f03f[_0x53bd11(0x1fd)]||_0x3981f3['version']>_0x25f03f[_0x53bd11(0x1e0)][_0x53bd11(0x1e8)],_0x5c634b=!_0x3cf4de||_0x25f03f[_0x53bd11(0x1fd)]!==undefined||_0x25f03f['patch'][_0x53bd11(0x1f7)]===undefined||_0x25f03f[_0x53bd11(0x1e0)][_0x53bd11(0x1f7)]!==_0x25f03f['patch'][_0x53bd11(0x1f7)];if(!_0x233844||!_0x58d007||!_0x183e21||!_0x5c634b)throw kbError(_0x3cf4de?_0x53bd11(0x20c):_0x53bd11(0x207),_0x53bd11(0x200)+_0x25f03f[_0x53bd11(0x1fc)]['id']+_0x53bd11(0x209),_0x53bd11(0x1ec)+_0x25f03f[_0x53bd11(0x1fc)]['id']+_0x53bd11(0x1ff));const _0x5d6906=[];return _0x25f03f['patch']['expectedVersion']!==undefined&&_0x5d6906[_0x53bd11(0x203)](NON_ATOMIC_WARNING),_0x3cf4de&&_0x5d6906[_0x53bd11(0x203)]('Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.'),{'ok':!![],'data':{'operation':_0x53bd11(0x1de),'selector':{'id':_0xaca57a['id'],'scope':_0x53bd11(0x208),'appCode':_0xaca57a[_0x53bd11(0x1f4)]},'before':_0x25f03f['before'],'after':_0xaca57a,'dryRun':![],'backend':{'method':_0x53bd11(0x1ea),'path':UPDATE_PATH},'warnings':_0x5d6906,'verification':{'status':_0x53bd11(0x20a),'recoveredAfterUnknownResponse':_0x3cf4de,'expectedVersion':_0x25f03f[_0x53bd11(0x1fc)]['expectedVersion']??null,'atomicCompareAndSet':![],'lookupCommand':'rabetbase\x20kb\x20detail\x20--id\x20'+_0xaca57a['id']+'\x20--format\x20compress'}},'message':_0x53bd11(0x1dd)+_0xaca57a['id']};}};
1
+ const a113_0x1ba3bd=a113_0x5150;(function(_0x304650,_0x8987b1){const _0x199ed2=a113_0x5150,_0x5eae8f=_0x304650();while(!![]){try{const _0x530f36=parseInt(_0x199ed2(0x1d3))/0x1+parseInt(_0x199ed2(0x1d6))/0x2+-parseInt(_0x199ed2(0x1da))/0x3+parseInt(_0x199ed2(0x1cb))/0x4+-parseInt(_0x199ed2(0x1d8))/0x5*(parseInt(_0x199ed2(0x1ec))/0x6)+-parseInt(_0x199ed2(0x1c5))/0x7+parseInt(_0x199ed2(0x1f0))/0x8;if(_0x530f36===_0x8987b1)break;else _0x5eae8f['push'](_0x5eae8f['shift']());}catch(_0x5e1882){_0x5eae8f['push'](_0x5eae8f['shift']());}}}(a113_0x38df,0x80ca8));import{isPlatformTransportFailure,updateEnterpriseKnowledgeBase}from'../../core/api-client.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a113_0x38df(){const _0x24a9d6=['1950820gMohdW','content','kb_file_required','rabetbase\x20kb\x20detail\x20--id\x20','title','Company\x20knowledge\x20base\x20','kb_verification_failed','isSafeInteger','587643MDXqPn','company','cookie','1414300xknsLX','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','198530myZOAn','push','2224617bWNXqN','patch','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','Updated\x20company\x20knowledge\x20base\x20','version','\x20--format\x20compress','kb_expected_version_invalid','expectedVersion','string','number','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','verified','POST','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','write','file','trim','flag','156UJfKfi','kb_update_outcome_unknown','Company\x20knowledge-base\x20id','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','10870136usmnbz','/admin/knowledge-base/update','contentHash','beforeRecord','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','replacement','5878894FHkgWQ','appCode','update','--file\x20cannot\x20be\x20empty.','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','before'];a113_0x38df=function(){return _0x24a9d6;};return a113_0x38df();}import{assertCompanyKnowledgeBase,assertExpectedKbVersion,inspectKbContent,kbError,projectKb,readKbFile,readKbId,requireKb,verifyKbMutationReadback}from'../../commands/kb/shared.js';const UPDATE_PATH=a113_0x1ba3bd(0x1f1),NON_ATOMIC_WARNING=a113_0x1ba3bd(0x1d7);function readUpdatePatch(_0x2e068c){const _0x2e5478=a113_0x1ba3bd,_0x1b505a=readKbId(_0x2e068c),_0x523278=_0x2e068c['flag']('title'),_0x36767f=_0x2e068c['flag'](_0x2e5478(0x1e9)),_0x494390=_0x2e068c[_0x2e5478(0x1eb)]('expected-version'),_0x519edf=_0x523278===undefined?undefined:String(_0x523278)['trim']();if(_0x523278!==undefined&&!_0x519edf)throw kbError('kb_title_invalid','--title\x20cannot\x20be\x20empty.');const _0xfff516=_0x36767f===undefined?undefined:String(_0x36767f)[_0x2e5478(0x1ea)]();if(_0x36767f!==undefined&&!_0xfff516)throw kbError(_0x2e5478(0x1cd),_0x2e5478(0x1c8));if(_0x519edf===undefined&&_0xfff516===undefined)throw kbError('kb_update_empty','Nothing\x20to\x20update.','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.');let _0x3f7515;if(_0x494390!==undefined){_0x3f7515=Number(_0x494390);if(!Number[_0x2e5478(0x1d2)](_0x3f7515)||_0x3f7515<0x0)throw kbError(_0x2e5478(0x1e0),_0x2e5478(0x1dc));}return{'id':_0x1b505a,'title':_0x519edf,'file':_0xfff516,'expectedVersion':_0x3f7515};}function a113_0x5150(_0x424367,_0x3d84ef){_0x424367=_0x424367-0x1c5;const _0x38dfc9=a113_0x38df();let _0x51507e=_0x38dfc9[_0x424367];return _0x51507e;}async function prepareUpdate(_0x392895){const _0x6aab8a=a113_0x1ba3bd,_0x37ea6d=readUpdatePatch(_0x392895),_0x5886d1=await requireKb(_0x392895,_0x37ea6d['id']);assertExpectedKbVersion(_0x5886d1,_0x37ea6d['expectedVersion']);const _0x155a90=_0x37ea6d[_0x6aab8a(0x1e9)]?await readKbFile(_0x37ea6d[_0x6aab8a(0x1e9)]):undefined,_0x28085a=projectKb(_0x5886d1),_0x58137d=projectKb({..._0x5886d1,..._0x37ea6d[_0x6aab8a(0x1cf)]!==undefined?{'title':_0x37ea6d[_0x6aab8a(0x1cf)]}:{},..._0x155a90?{'content':_0x155a90['content']}:{}});return{'patch':_0x37ea6d,'beforeRecord':_0x5886d1,'before':_0x28085a,'planned':_0x58137d,'replacement':_0x155a90};}export const kbUpdate={'service':'kb','command':'update','description':a113_0x1ba3bd(0x1ef),'risk':a113_0x1ba3bd(0x1e8),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':a113_0x1ba3bd(0x1e3),'required':!![],'description':a113_0x1ba3bd(0x1ee)},{'name':a113_0x1ba3bd(0x1cf),'type':a113_0x1ba3bd(0x1e2),'required':![],'description':'New\x20knowledge-base\x20title'},{'name':a113_0x1ba3bd(0x1e9),'type':a113_0x1ba3bd(0x1e2),'required':![],'description':a113_0x1ba3bd(0x1f4)},{'name':'expected-version','type':'number','required':![],'description':'Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version'}],async 'validate'(_0x3d09dc){readUpdatePatch(_0x3d09dc);},async 'dryRun'(_0x3be35a){const _0x41118a=a113_0x1ba3bd,_0x57a78f=await prepareUpdate(_0x3be35a),_0x2f6219=_0x57a78f[_0x41118a(0x1db)]['expectedVersion']!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x41118a(0x1c7),'selector':{'id':_0x57a78f[_0x41118a(0x1ca)]['id'],'scope':'company','appCode':_0x57a78f[_0x41118a(0x1ca)][_0x41118a(0x1c6)]},'before':_0x57a78f['before'],'after':_0x57a78f['planned'],'dryRun':!![],'backend':{'method':_0x41118a(0x1e6),'path':UPDATE_PATH},'warnings':_0x2f6219,'verification':{'expectedVersion':_0x57a78f[_0x41118a(0x1db)][_0x41118a(0x1e1)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x57a78f[_0x41118a(0x1ca)]['snapshotHash'],'lookupCommand':'rabetbase\x20kb\x20detail\x20--id\x20'+_0x57a78f[_0x41118a(0x1ca)]['id']+_0x41118a(0x1df)}},{'method':_0x41118a(0x1e6),'url':UPDATE_PATH});},async 'execute'(_0x92fb2a){const _0x1d4372=a113_0x1ba3bd,_0x4e7c0f=await prepareUpdate(_0x92fb2a),_0x2c41d9={'id':_0x4e7c0f[_0x1d4372(0x1db)]['id'],..._0x4e7c0f[_0x1d4372(0x1db)][_0x1d4372(0x1cf)]!==undefined?{'title':_0x4e7c0f[_0x1d4372(0x1db)]['title']}:{},..._0x4e7c0f['replacement']?{'content':_0x4e7c0f[_0x1d4372(0x1f5)][_0x1d4372(0x1cc)]}:{}};let _0x3dcc05=![];try{const _0x1871a6=await updateEnterpriseKnowledgeBase(_0x92fb2a[_0x1d4372(0x1d5)],_0x2c41d9);assertCompanyKnowledgeBase(_0x1871a6,_0x92fb2a[_0x1d4372(0x1c6)],_0x4e7c0f['patch']['id']);}catch(_0x714904){if(!isPlatformTransportFailure(_0x714904))throw _0x714904;_0x3dcc05=!![];}const _0x56471f=await verifyKbMutationReadback('update',_0x3dcc05,()=>requireKb(_0x92fb2a,_0x4e7c0f[_0x1d4372(0x1db)]['id'])),_0x1635be=projectKb(_0x56471f),_0x12b590=_0x4e7c0f['patch']['title']===undefined||_0x56471f[_0x1d4372(0x1cf)]===_0x4e7c0f[_0x1d4372(0x1db)]['title'],_0x4f57fc=!_0x4e7c0f[_0x1d4372(0x1f5)]||inspectKbContent(_0x56471f[_0x1d4372(0x1cc)])[_0x1d4372(0x1f2)]===_0x4e7c0f['replacement'][_0x1d4372(0x1f2)],_0x10e384=!_0x4e7c0f[_0x1d4372(0x1f5)]||_0x56471f['version']>_0x4e7c0f[_0x1d4372(0x1f3)][_0x1d4372(0x1de)],_0x313d19=!_0x3dcc05||_0x4e7c0f[_0x1d4372(0x1f5)]!==undefined||_0x4e7c0f[_0x1d4372(0x1db)][_0x1d4372(0x1cf)]===undefined||_0x4e7c0f[_0x1d4372(0x1f3)][_0x1d4372(0x1cf)]!==_0x4e7c0f[_0x1d4372(0x1db)][_0x1d4372(0x1cf)];if(!_0x12b590||!_0x4f57fc||!_0x10e384||!_0x313d19)throw kbError(_0x3dcc05?_0x1d4372(0x1ed):_0x1d4372(0x1d1),_0x1d4372(0x1d0)+_0x4e7c0f['patch']['id']+_0x1d4372(0x1c9),_0x1d4372(0x1e7)+_0x4e7c0f[_0x1d4372(0x1db)]['id']+'\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.');const _0x4a35d2=[];return _0x4e7c0f['patch']['expectedVersion']!==undefined&&_0x4a35d2[_0x1d4372(0x1d9)](NON_ATOMIC_WARNING),_0x3dcc05&&_0x4a35d2[_0x1d4372(0x1d9)](_0x1d4372(0x1e4)),{'ok':!![],'data':{'operation':'update','selector':{'id':_0x1635be['id'],'scope':_0x1d4372(0x1d4),'appCode':_0x1635be['appCode']},'before':_0x4e7c0f[_0x1d4372(0x1ca)],'after':_0x1635be,'dryRun':![],'backend':{'method':_0x1d4372(0x1e6),'path':UPDATE_PATH},'warnings':_0x4a35d2,'verification':{'status':_0x1d4372(0x1e5),'recoveredAfterUnknownResponse':_0x3dcc05,'expectedVersion':_0x4e7c0f[_0x1d4372(0x1db)][_0x1d4372(0x1e1)]??null,'atomicCompareAndSet':![],'lookupCommand':_0x1d4372(0x1ce)+_0x1635be['id']+_0x1d4372(0x1df)}},'message':_0x1d4372(0x1dd)+_0x1635be['id']};}};
@@ -1 +1 @@
1
- const a114_0x14198d=a114_0xe29f;(function(_0x3796a8,_0x143726){const _0x5a1267=a114_0xe29f,_0x323027=_0x3796a8();while(!![]){try{const _0x435fee=-parseInt(_0x5a1267(0xa6))/0x1+parseInt(_0x5a1267(0xb9))/0x2*(parseInt(_0x5a1267(0xaf))/0x3)+-parseInt(_0x5a1267(0xad))/0x4+-parseInt(_0x5a1267(0xb2))/0x5*(parseInt(_0x5a1267(0xba))/0x6)+parseInt(_0x5a1267(0x9e))/0x7+-parseInt(_0x5a1267(0x9d))/0x8*(parseInt(_0x5a1267(0xaa))/0x9)+parseInt(_0x5a1267(0xa4))/0xa;if(_0x435fee===_0x143726)break;else _0x323027['push'](_0x323027['shift']());}catch(_0x18f43c){_0x323027['push'](_0x323027['shift']());}}}(a114_0x1724,0x7265c));import{logger}from'../../utils/logger.js';function a114_0x1724(){const _0x1ec69f=['5qEhSse','duration','message','warn','log','toLocaleString','keys','263108YXXbIV','4968402EXFOkT','clear','View\x20command\x20history\x20logs','\x20\x20\x20Duration:\x20','length','details','readLogs','85552WFSPpf','4996936iIzDmy','*\x20No\x20logs\x20found','timestamp','\x20\x20\x20Details:\x20','\x20\x20\x20Time:\x20','forEach','10832960wBnimH','write','99902qTIztg','error','Clear\x20command\x20history\x20logs','logs','747xBPAwI','stringify','command','1209300xyMKGO','en-US','18GEAwMv','level','success'];a114_0x1724=function(){return _0x1ec69f;};return a114_0x1724();}function printLogs(_0x271336){const _0x2c364d=a114_0xe29f;if(_0x271336[_0x2c364d(0xbe)]===0x0){console[_0x2c364d(0xb6)](_0x2c364d(0x9f));return;}console[_0x2c364d(0xb6)]('*\x20Lovrabet\x20CLI\x20logs:\x0a'),_0x271336[_0x2c364d(0xa3)]((_0x596a10,_0xe1a113)=>{const _0x22023b=_0x2c364d,_0x43bfa3=new Date(_0x596a10[_0x22023b(0xa0)])[_0x22023b(0xb7)](_0x22023b(0xae)),_0x33d349=_0x596a10[_0x22023b(0xb0)]===_0x22023b(0xb1)?'√':_0x596a10['level']===_0x22023b(0xa7)?'×':_0x596a10[_0x22023b(0xb0)]===_0x22023b(0xb5)?'!':'i';console['log'](_0xe1a113+0x1+'.\x20'+_0x33d349+'\x20['+_0x596a10[_0x22023b(0xac)]+']\x20'+_0x596a10[_0x22023b(0xb4)]),console[_0x22023b(0xb6)](_0x22023b(0xa2)+_0x43bfa3),_0x596a10['duration']&&console[_0x22023b(0xb6)](_0x22023b(0xbd)+_0x596a10[_0x22023b(0xb3)]+'ms'),_0x596a10[_0x22023b(0x9b)]&&Object[_0x22023b(0xb8)](_0x596a10[_0x22023b(0x9b)])['length']>0x0&&console[_0x22023b(0xb6)](_0x22023b(0xa1)+JSON[_0x22023b(0xab)](_0x596a10['details'],null,0x2)),console['log']('');});}function a114_0xe29f(_0x29cb65,_0x695c7c){_0x29cb65=_0x29cb65-0x9b;const _0x172413=a114_0x1724();let _0xe29f66=_0x172413[_0x29cb65];return _0xe29f66;}export const logsDefinitions=[{'service':'logs','command':'show','description':a114_0x14198d(0xbc),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x22af76){const _0x2360e2=a114_0x14198d;return printLogs(logger[_0x2360e2(0x9c)]()),{'ok':!![]};}},{'service':a114_0x14198d(0xa9),'command':a114_0x14198d(0xbb),'description':a114_0x14198d(0xa8),'risk':a114_0x14198d(0xa5),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x532df8){const _0x50a005=a114_0x14198d;return logger['clearLogs'](),console[_0x50a005(0xb6)]('*\x20Logs\x20cleared'),{'ok':!![]};}}];
1
+ const a114_0x302675=a114_0x42fb;(function(_0x722fb4,_0x4e38dd){const _0x4ad8f8=a114_0x42fb,_0x47fbfe=_0x722fb4();while(!![]){try{const _0x2cf505=parseInt(_0x4ad8f8(0x156))/0x1+parseInt(_0x4ad8f8(0x164))/0x2+parseInt(_0x4ad8f8(0x16b))/0x3+-parseInt(_0x4ad8f8(0x154))/0x4+-parseInt(_0x4ad8f8(0x159))/0x5*(parseInt(_0x4ad8f8(0x166))/0x6)+-parseInt(_0x4ad8f8(0x15d))/0x7+-parseInt(_0x4ad8f8(0x16f))/0x8;if(_0x2cf505===_0x4e38dd)break;else _0x47fbfe['push'](_0x47fbfe['shift']());}catch(_0x302118){_0x47fbfe['push'](_0x47fbfe['shift']());}}}(a114_0x1f6e,0x7377f));import{logger}from'../../utils/logger.js';function a114_0x1f6e(){const _0x277cbc=['1509032BNLWRC','duration','6oTmFpt','\x20\x20\x20Details:\x20','readLogs','command','details','2152776usdbTC','\x20\x20\x20Duration:\x20','*\x20No\x20logs\x20found','length','5468144PyfuaB','\x20\x20\x20Time:\x20','stringify','2603204UjAJWO','logs','914589tQosRY','clear','log','1480225PMKxuo','message','View\x20command\x20history\x20logs','error','1983618fNCMVZ','*\x20Logs\x20cleared','read','success','*\x20Lovrabet\x20CLI\x20logs:\x0a','level','Clear\x20command\x20history\x20logs'];a114_0x1f6e=function(){return _0x277cbc;};return a114_0x1f6e();}function a114_0x42fb(_0x55838d,_0x31c9c7){_0x55838d=_0x55838d-0x154;const _0x1f6ee4=a114_0x1f6e();let _0x42fbd4=_0x1f6ee4[_0x55838d];return _0x42fbd4;}function printLogs(_0x492028){const _0x106a8b=a114_0x42fb;if(_0x492028[_0x106a8b(0x16e)]===0x0){console['log'](_0x106a8b(0x16d));return;}console[_0x106a8b(0x158)](_0x106a8b(0x161)),_0x492028['forEach']((_0x383aa7,_0x3adb22)=>{const _0x4cd3e2=_0x106a8b,_0x5a5f02=new Date(_0x383aa7['timestamp'])['toLocaleString']('en-US'),_0xac2845=_0x383aa7[_0x4cd3e2(0x162)]===_0x4cd3e2(0x160)?'√':_0x383aa7['level']===_0x4cd3e2(0x15c)?'×':_0x383aa7[_0x4cd3e2(0x162)]==='warn'?'!':'i';console[_0x4cd3e2(0x158)](_0x3adb22+0x1+'.\x20'+_0xac2845+'\x20['+_0x383aa7[_0x4cd3e2(0x169)]+']\x20'+_0x383aa7[_0x4cd3e2(0x15a)]),console['log'](_0x4cd3e2(0x170)+_0x5a5f02),_0x383aa7[_0x4cd3e2(0x165)]&&console[_0x4cd3e2(0x158)](_0x4cd3e2(0x16c)+_0x383aa7[_0x4cd3e2(0x165)]+'ms'),_0x383aa7[_0x4cd3e2(0x16a)]&&Object['keys'](_0x383aa7[_0x4cd3e2(0x16a)])['length']>0x0&&console[_0x4cd3e2(0x158)](_0x4cd3e2(0x167)+JSON[_0x4cd3e2(0x171)](_0x383aa7[_0x4cd3e2(0x16a)],null,0x2)),console[_0x4cd3e2(0x158)]('');});}export const logsDefinitions=[{'service':a114_0x302675(0x155),'command':'show','description':a114_0x302675(0x15b),'risk':a114_0x302675(0x15f),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x39fe4a){const _0x3e9027=a114_0x302675;return printLogs(logger[_0x3e9027(0x168)]()),{'ok':!![]};}},{'service':'logs','command':a114_0x302675(0x157),'description':a114_0x302675(0x163),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x45d7d6){const _0x2076fc=a114_0x302675;return logger['clearLogs'](),console['log'](_0x2076fc(0x15e)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a115_0x46a68b=a115_0x4d4d;(function(_0x3f6129,_0x669602){const _0x14ac2e=a115_0x4d4d,_0xa3a631=_0x3f6129();while(!![]){try{const _0x20dda3=-parseInt(_0x14ac2e(0x1b8))/0x1*(parseInt(_0x14ac2e(0x1e0))/0x2)+parseInt(_0x14ac2e(0x1b0))/0x3*(parseInt(_0x14ac2e(0x1bb))/0x4)+parseInt(_0x14ac2e(0x1c4))/0x5+-parseInt(_0x14ac2e(0x1f4))/0x6+-parseInt(_0x14ac2e(0x1b1))/0x7+parseInt(_0x14ac2e(0x1db))/0x8+parseInt(_0x14ac2e(0x1a5))/0x9*(parseInt(_0x14ac2e(0x1ae))/0xa);if(_0x20dda3===_0x669602)break;else _0xa3a631['push'](_0xa3a631['shift']());}catch(_0x709100){_0xa3a631['push'](_0xa3a631['shift']());}}}(a115_0xdaa6,0xbaeff));import a115_0x18e7df from'chalk';function a115_0x4d4d(_0x568747,_0x25f113){_0x568747=_0x568747-0x1a2;const _0xdaa62=a115_0xdaa6();let _0x4d4da6=_0xdaa62[_0x568747];return _0x4d4da6;}import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,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':a115_0x46a68b(0x1be),'command':a115_0x46a68b(0x1af),'description':a115_0x46a68b(0x1b4),'risk':a115_0x46a68b(0x1f9),'flags':[{'name':a115_0x46a68b(0x1e6),'type':a115_0x46a68b(0x1ad),'description':a115_0x46a68b(0x1c0)+a115_0x46a68b(0x1a7)},{'name':a115_0x46a68b(0x1a9),'type':'string','description':a115_0x46a68b(0x1e5)+a115_0x46a68b(0x1ee),'enum':[a115_0x46a68b(0x1b6),a115_0x46a68b(0x1d2)],'default':'patch'},{'name':'force','type':'boolean','description':a115_0x46a68b(0x1e2)},{'name':a115_0x46a68b(0x1ab),'type':a115_0x46a68b(0x1ad),'description':a115_0x46a68b(0x1c7)},{'name':a115_0x46a68b(0x1aa),'type':a115_0x46a68b(0x1ad),'description':a115_0x46a68b(0x1bf)},{'name':'all','type':a115_0x46a68b(0x1bd),'description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':'load-mode','type':a115_0x46a68b(0x1ad),'enum':[a115_0x46a68b(0x1d5),a115_0x46a68b(0x1a8),'fetch'],'description':a115_0x46a68b(0x1cc)}],async 'dryRun'(_0x401e40){const _0x1918a7=a115_0x46a68b;ensureRunnableContext(_0x401e40[_0x1918a7(0x1f6)],_0x401e40[_0x1918a7(0x1a4)]);const _0x33dfe4=await runMenuUpdateCore(_0x401e40['appCode'],_0x401e40['cookie'],_0x401e40['str']('params'),{'mode':parseMode(_0x401e40['str']('mode')),'dryRun':!![],'force':_0x401e40[_0x1918a7(0x1dd)]('force'),'selection':parseSelection(_0x401e40),'loadScriptMode':parseLoadScriptMode(_0x401e40[_0x1918a7(0x1b7)](_0x1918a7(0x1ba)))});return{'method':_0x1918a7(0x1de),'url':_0x1918a7(0x1b5),'body':_0x33dfe4,'description':_0x33dfe4[_0x1918a7(0x1c2)]?_0x1918a7(0x1c5):_0x1918a7(0x1d0)+(_0x33dfe4[_0x1918a7(0x1cd)]?.[_0x1918a7(0x1a2)]??0x0)+_0x1918a7(0x1f8)};},async 'execute'(_0x540dbb){const _0x2a874f=a115_0x46a68b;ensureRunnableContext(_0x540dbb[_0x2a874f(0x1f6)],_0x540dbb[_0x2a874f(0x1a4)]);const _0x3ed56b=_0x540dbb['str'](_0x2a874f(0x1e6)),_0x2c7ed1=parseMode(_0x540dbb[_0x2a874f(0x1b7)](_0x2a874f(0x1a9))),_0x195c6f=_0x540dbb[_0x2a874f(0x1dd)](_0x2a874f(0x1c6)),_0x324916=parseLoadScriptMode(_0x540dbb[_0x2a874f(0x1b7)](_0x2a874f(0x1ba))),_0x10c642=parseParams(_0x3ed56b),_0x5eaf42=!!(_0x10c642['jsUrl']||_0x10c642[_0x2a874f(0x1d4)]);if(_0x5eaf42){const _0x235599=await runMenuUpdateCore(_0x540dbb[_0x2a874f(0x1df)],_0x540dbb[_0x2a874f(0x1ec)],_0x3ed56b,{'mode':_0x2c7ed1,'force':_0x195c6f,'selection':parseSelection(_0x540dbb),'loadScriptMode':_0x324916});return _0x235599['skipped']?writeCliSideChannelLine(_0x2a874f(0x1d6)):(writeCliSideChannelLine(_0x2a874f(0x1fa)+_0x235599[_0x2a874f(0x1e3)]+_0x2a874f(0x1d1)),_0x235599['failed']>0x0&&writeCliSideChannelLine('!\x20'+_0x235599[_0x2a874f(0x1f7)]+_0x2a874f(0x1e1))),{'ok':_0x235599[_0x2a874f(0x1f7)]===0x0,'data':_0x235599,'message':_0x235599['skipped']?_0x2a874f(0x1cb):_0x2a874f(0x1eb)+_0x235599[_0x2a874f(0x1e3)]+_0x2a874f(0x1e4)+_0x235599[_0x2a874f(0x1f7)]+'\x20failed.'};}requireInteractive();const _0x9c9844=startSpinner(_0x2a874f(0x1f1));let _0x1d1d50;try{_0x1d1d50=await fetchOnlineMenuList(_0x540dbb['appCode'],_0x540dbb[_0x2a874f(0x1ec)]),stopSpinner(_0x9c9844,'Online\x20menu\x20list\x20fetched',!![]);}catch(_0x1017b7){stopSpinner(_0x9c9844,_0x2a874f(0x1f2),![]);throw CliErrors[_0x2a874f(0x1e9)](_0x1017b7 instanceof Error?_0x1017b7['message']:_0x2a874f(0x1f2));}const _0x331881=filterMenusWithResources(_0x1d1d50),_0x385453=parseSelection(_0x540dbb,![]),_0xb55cc9=_0x385453?selectMenusForUpdate(_0x331881,_0x385453):_0x331881;if(_0xb55cc9['length']===0x0)return writeCliSideChannelLine(a115_0x18e7df['yellow'](_0x2a874f(0x1d3))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a115_0x18e7df['cyan']('\x20\x20Found\x20'+_0xb55cc9[_0x2a874f(0x1a2)]+'\x20menu(s)\x20with\x20existing\x20resources')),writeCliSideChannelLine(renderUpdateSummary(_0xb55cc9[_0x2a874f(0x1c8)](_0x53bd98=>_0x53bd98[_0x2a874f(0x1d8)]),[_0x10c642[_0x2a874f(0x1c1)],_0x10c642[_0x2a874f(0x1d4)]])),writeCliSideChannelLine('');let _0x51c590=_0x10c642[_0x2a874f(0x1c1)],_0x187109=_0x10c642['cssUrl'];!_0x51c590&&(_0x51c590=await askJsUrl());!_0x187109&&(_0x187109=await askCssUrl());const _0x132d85=await askConfirm(_0x2a874f(0x1ca)+_0xb55cc9['length']+'\x20menu(s)\x20with\x20JS:\x20'+_0x51c590+_0x2a874f(0x1d7)+_0x187109+'?');if(!_0x132d85)return writeCliSideChannelLine(a115_0x18e7df[_0x2a874f(0x1a6)](_0x2a874f(0x1ed))),{'ok':!![]};const _0x1efdd3=startSpinner(_0x2a874f(0x1c3)+_0xb55cc9[_0x2a874f(0x1a2)]+_0x2a874f(0x1bc));try{const _0x3ee041=await runMenuUpdateCore(_0x540dbb[_0x2a874f(0x1df)],_0x540dbb[_0x2a874f(0x1ec)],JSON[_0x2a874f(0x1d9)]({'jsUrl':_0x51c590,'cssUrl':_0x187109}),{'mode':_0x2c7ed1,'force':_0x195c6f,'selection':{'all':![],'menuIds':_0xb55cc9[_0x2a874f(0x1c8)](_0x53a109=>_0x53a109['id']),'paths':[]},'loadScriptMode':_0x324916});return stopSpinner(_0x1efdd3,_0x2a874f(0x1dc)+_0x3ee041[_0x2a874f(0x1e3)]+'\x20menu(s)',_0x3ee041[_0x2a874f(0x1f7)]===0x0),{'ok':_0x3ee041[_0x2a874f(0x1f7)]===0x0,'data':_0x3ee041,'message':_0x3ee041[_0x2a874f(0x1f7)]>0x0?_0x2a874f(0x1eb)+_0x3ee041[_0x2a874f(0x1e3)]+_0x2a874f(0x1e4)+_0x3ee041[_0x2a874f(0x1f7)]+_0x2a874f(0x1e8):_0x2a874f(0x1eb)+_0x3ee041['updated']+_0x2a874f(0x1b9)};}catch(_0x15576b){stopSpinner(_0x1efdd3,_0x2a874f(0x1ef),![]);throw CliErrors[_0x2a874f(0x1e9)](_0x15576b instanceof Error?_0x15576b['message']:'Menu\x20asset\x20update\x20failed');}}};function ensureRunnableContext(_0x518c91,_0x4cb02a){const _0xef5df8=a115_0x46a68b,_0x3b65f1=_0x518c91[_0xef5df8(0x1a3)]?String(_0x518c91[_0xef5df8(0x1a3)])[_0xef5df8(0x1da)]():'';if(!isInProject()&&!_0x4cb02a&&!_0x3b65f1)throw CliErrors[_0xef5df8(0x1e9)](_0xef5df8(0x1f5)+_0xef5df8(0x1ea));}function parseMode(_0x27caf3){const _0xfd509a=a115_0x46a68b;if(!_0x27caf3)return _0xfd509a(0x1d2);if(_0x27caf3==='replace'||_0x27caf3===_0xfd509a(0x1d2))return _0x27caf3;throw CliErrors[_0xfd509a(0x1e9)](_0xfd509a(0x1ac));}function parseSelection(_0x367207,_0x4fa01e=!![]){const _0x20413c=a115_0x46a68b,_0x10ef5d=_0x367207[_0x20413c(0x1dd)](_0x20413c(0x1f0)),_0x214c4c=parseMenuIds(_0x367207[_0x20413c(0x1b7)](_0x20413c(0x1ab))),_0x1d3ca6=parseCsv(_0x367207['str'](_0x20413c(0x1aa))),_0x236843=_0x214c4c['length']>0x0||_0x1d3ca6[_0x20413c(0x1a2)]>0x0;if(_0x10ef5d&&_0x236843)throw CliErrors['validation'](_0x20413c(0x1c9));if(!_0x10ef5d&&!_0x236843){if(!_0x4fa01e)return undefined;throw CliErrors[_0x20413c(0x1e9)]('menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.');}return{'all':_0x10ef5d,'menuIds':_0x214c4c,'paths':_0x1d3ca6};}function parseMenuIds(_0x1c2bed){const _0x569738=a115_0x46a68b,_0x3c3a2a=parseCsv(_0x1c2bed),_0x27f9dc=_0x3c3a2a[_0x569738(0x1c8)](Number);if(_0x27f9dc[_0x569738(0x1f3)](_0x880df5=>!Number[_0x569738(0x1b2)](_0x880df5)||_0x880df5<=0x0))throw CliErrors[_0x569738(0x1e9)](_0x569738(0x1e7));return[...new Set(_0x27f9dc)];}function parseCsv(_0x29edd0){const _0x45fd23=a115_0x46a68b;return[...new Set(_0x29edd0['split'](',')[_0x45fd23(0x1c8)](_0x3bd655=>_0x3bd655[_0x45fd23(0x1da)]())[_0x45fd23(0x1ce)](Boolean))];}function parseLoadScriptMode(_0xff05b7){const _0x3fc8bb=a115_0x46a68b;if(!_0xff05b7)return undefined;if(_0xff05b7===_0x3fc8bb(0x1d5)||_0xff05b7===_0x3fc8bb(0x1a8)||_0xff05b7==='fetch')return _0xff05b7;throw CliErrors[_0x3fc8bb(0x1e9)](_0x3fc8bb(0x1cf));}function parseParams(_0x4ab1de){const _0x52cd61=a115_0x46a68b;if(!_0x4ab1de)return{};try{const _0x54870f=JSON[_0x52cd61(0x1b3)](_0x4ab1de);if(typeof _0x54870f!=='object'||_0x54870f===null||Array['isArray'](_0x54870f))return{};return{'jsUrl':typeof _0x54870f['jsUrl']===_0x52cd61(0x1ad)?_0x54870f[_0x52cd61(0x1c1)][_0x52cd61(0x1da)]():undefined,'cssUrl':typeof _0x54870f['cssUrl']===_0x52cd61(0x1ad)?_0x54870f['cssUrl'][_0x52cd61(0x1da)]():undefined};}catch{return{};}}function a115_0xdaa6(){const _0x347320=['validation','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','Menu\x20asset\x20update\x20completed:\x20','cookie','\x20\x20Cancelled.','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','Menu\x20asset\x20update\x20failed','all','Fetching\x20online\x20menu\x20list...','Failed\x20to\x20fetch\x20online\x20menu\x20list','some','7073610YZjiLp','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','rawFlags','failed','\x20menu\x20resource\x20set(s).','write','✓\x20Menu\x20asset\x20update\x20completed:\x20','length','appcode','selectedAppName','9WfPkXd','gray','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','script','mode','paths','menu-ids','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','string','3023710fXIiJX','asset-update','3983565EXaFKV','1224426MNIgbn','isSafeInteger','parse','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','/smartapi/menu/update','replace','str','135292YJHNzV','\x20updated.','load-mode','4nPoWGy','\x20menu(s)...','boolean','menu','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','jsUrl','skipped','Updating\x20','2038350TqYqoK','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','force','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','map','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','\x20\x20Update\x20','Menu\x20asset\x20update\x20skipped','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','diffs','filter','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','Would\x20update\x20','\x20menu(s)\x20updated','patch','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','cssUrl','import','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','\x20and\x20CSS:\x20','label','stringify','trim','2817888GAuiGV','Updated\x20','bool','POST','appCode','4xYVZiI','\x20menu(s)\x20failed','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','updated','\x20updated,\x20','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','params','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','\x20failed.'];a115_0xdaa6=function(){return _0x347320;};return a115_0xdaa6();}
1
+ const a115_0x3d1cd5=a115_0x2064;(function(_0xf8c723,_0x560ab1){const _0x14305d=a115_0x2064,_0x16ccd1=_0xf8c723();while(!![]){try{const _0x45f3de=-parseInt(_0x14305d(0x1a9))/0x1*(-parseInt(_0x14305d(0x1b3))/0x2)+-parseInt(_0x14305d(0x1b9))/0x3+parseInt(_0x14305d(0x19b))/0x4*(-parseInt(_0x14305d(0x1a4))/0x5)+-parseInt(_0x14305d(0x1b0))/0x6*(-parseInt(_0x14305d(0x1c6))/0x7)+parseInt(_0x14305d(0x1c1))/0x8*(parseInt(_0x14305d(0x1ce))/0x9)+-parseInt(_0x14305d(0x191))/0xa*(-parseInt(_0x14305d(0x1ac))/0xb)+-parseInt(_0x14305d(0x1d9))/0xc*(parseInt(_0x14305d(0x1dd))/0xd);if(_0x45f3de===_0x560ab1)break;else _0x16ccd1['push'](_0x16ccd1['shift']());}catch(_0x5cc64c){_0x16ccd1['push'](_0x16ccd1['shift']());}}}(a115_0x2ea6,0xbb566));import a115_0x12faf1 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,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';function a115_0x2064(_0x181325,_0x44b4c1){_0x181325=_0x181325-0x18e;const _0x2ea65b=a115_0x2ea6();let _0x20648e=_0x2ea65b[_0x181325];return _0x20648e;}import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':a115_0x3d1cd5(0x1cf),'command':'asset-update','description':'Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','risk':a115_0x3d1cd5(0x1bb),'flags':[{'name':a115_0x3d1cd5(0x1c2),'type':a115_0x3d1cd5(0x19d),'description':a115_0x3d1cd5(0x199)+a115_0x3d1cd5(0x1d6)},{'name':a115_0x3d1cd5(0x1d8),'type':a115_0x3d1cd5(0x19d),'description':a115_0x3d1cd5(0x196)+a115_0x3d1cd5(0x192),'enum':[a115_0x3d1cd5(0x197),a115_0x3d1cd5(0x1cc)],'default':a115_0x3d1cd5(0x1cc)},{'name':a115_0x3d1cd5(0x1e7),'type':'boolean','description':a115_0x3d1cd5(0x1d5)},{'name':a115_0x3d1cd5(0x1b7),'type':'string','description':a115_0x3d1cd5(0x1d2)},{'name':a115_0x3d1cd5(0x1cd),'type':'string','description':a115_0x3d1cd5(0x1da)},{'name':a115_0x3d1cd5(0x19f),'type':'boolean','description':a115_0x3d1cd5(0x1a0)},{'name':'load-mode','type':a115_0x3d1cd5(0x19d),'enum':['import',a115_0x3d1cd5(0x1de),a115_0x3d1cd5(0x19e)],'description':'Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode'}],async 'dryRun'(_0x1b082f){const _0x2fa714=a115_0x3d1cd5;ensureRunnableContext(_0x1b082f['rawFlags'],_0x1b082f[_0x2fa714(0x1c5)]);const _0x51a549=await runMenuUpdateCore(_0x1b082f[_0x2fa714(0x195)],_0x1b082f[_0x2fa714(0x1e0)],_0x1b082f['str'](_0x2fa714(0x1c2)),{'mode':parseMode(_0x1b082f['str'](_0x2fa714(0x1d8))),'dryRun':!![],'force':_0x1b082f[_0x2fa714(0x1df)](_0x2fa714(0x1e7)),'selection':parseSelection(_0x1b082f),'loadScriptMode':parseLoadScriptMode(_0x1b082f[_0x2fa714(0x1ab)](_0x2fa714(0x1a6)))});return{'method':_0x2fa714(0x1ae),'url':_0x2fa714(0x1e6),'body':_0x51a549,'description':_0x51a549[_0x2fa714(0x1e5)]?_0x2fa714(0x1d1):_0x2fa714(0x1ad)+(_0x51a549[_0x2fa714(0x1bc)]?.['length']??0x0)+'\x20menu\x20resource\x20set(s).'};},async 'execute'(_0xb23f0e){const _0x2dc671=a115_0x3d1cd5;ensureRunnableContext(_0xb23f0e[_0x2dc671(0x1a8)],_0xb23f0e['selectedAppName']);const _0x9d3994=_0xb23f0e[_0x2dc671(0x1ab)](_0x2dc671(0x1c2)),_0xe28838=parseMode(_0xb23f0e[_0x2dc671(0x1ab)](_0x2dc671(0x1d8))),_0x2f0894=_0xb23f0e[_0x2dc671(0x1df)](_0x2dc671(0x1e7)),_0x549a54=parseLoadScriptMode(_0xb23f0e[_0x2dc671(0x1ab)](_0x2dc671(0x1a6))),_0x62c50d=parseParams(_0x9d3994),_0x1ab1a5=!!(_0x62c50d[_0x2dc671(0x1c7)]||_0x62c50d[_0x2dc671(0x1a7)]);if(_0x1ab1a5){const _0x23a103=await runMenuUpdateCore(_0xb23f0e['appCode'],_0xb23f0e['cookie'],_0x9d3994,{'mode':_0xe28838,'force':_0x2f0894,'selection':parseSelection(_0xb23f0e),'loadScriptMode':_0x549a54});return _0x23a103['skipped']?writeCliSideChannelLine(_0x2dc671(0x18f)):(writeCliSideChannelLine(_0x2dc671(0x1b8)+_0x23a103[_0x2dc671(0x1aa)]+_0x2dc671(0x1ea)),_0x23a103[_0x2dc671(0x1c8)]>0x0&&writeCliSideChannelLine('!\x20'+_0x23a103[_0x2dc671(0x1c8)]+_0x2dc671(0x1db))),{'ok':_0x23a103['failed']===0x0,'data':_0x23a103,'message':_0x23a103[_0x2dc671(0x1e5)]?_0x2dc671(0x19a):_0x2dc671(0x1dc)+_0x23a103[_0x2dc671(0x1aa)]+'\x20updated,\x20'+_0x23a103[_0x2dc671(0x1c8)]+_0x2dc671(0x1a2)};}requireInteractive();const _0x17ec9b=startSpinner('Fetching\x20online\x20menu\x20list...');let _0x6d04ee;try{_0x6d04ee=await fetchOnlineMenuList(_0xb23f0e[_0x2dc671(0x195)],_0xb23f0e[_0x2dc671(0x1e0)]),stopSpinner(_0x17ec9b,_0x2dc671(0x1a3),!![]);}catch(_0x3efeb6){stopSpinner(_0x17ec9b,'Failed\x20to\x20fetch\x20online\x20menu\x20list',![]);throw CliErrors[_0x2dc671(0x1ca)](_0x3efeb6 instanceof Error?_0x3efeb6[_0x2dc671(0x1ba)]:_0x2dc671(0x198));}const _0x565ab2=filterMenusWithResources(_0x6d04ee),_0x42a2bd=parseSelection(_0xb23f0e,![]),_0x369eb0=_0x42a2bd?selectMenusForUpdate(_0x565ab2,_0x42a2bd):_0x565ab2;if(_0x369eb0['length']===0x0)return writeCliSideChannelLine(a115_0x12faf1[_0x2dc671(0x1d0)](_0x2dc671(0x1c9))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a115_0x12faf1[_0x2dc671(0x1b1)]('\x20\x20Found\x20'+_0x369eb0[_0x2dc671(0x1d3)]+_0x2dc671(0x19c))),writeCliSideChannelLine(renderUpdateSummary(_0x369eb0['map'](_0x121b38=>_0x121b38[_0x2dc671(0x1af)]),[_0x62c50d[_0x2dc671(0x1c7)],_0x62c50d[_0x2dc671(0x1a7)]])),writeCliSideChannelLine('');let _0x3cbf11=_0x62c50d[_0x2dc671(0x1c7)],_0x1e91e3=_0x62c50d['cssUrl'];!_0x3cbf11&&(_0x3cbf11=await askJsUrl());!_0x1e91e3&&(_0x1e91e3=await askCssUrl());const _0xa2dae6=await askConfirm(_0x2dc671(0x1c3)+_0x369eb0[_0x2dc671(0x1d3)]+'\x20menu(s)\x20with\x20JS:\x20'+_0x3cbf11+_0x2dc671(0x1b6)+_0x1e91e3+'?');if(!_0xa2dae6)return writeCliSideChannelLine(a115_0x12faf1[_0x2dc671(0x1be)](_0x2dc671(0x1bd))),{'ok':!![]};const _0x3721f2=startSpinner(_0x2dc671(0x1b5)+_0x369eb0[_0x2dc671(0x1d3)]+_0x2dc671(0x193));try{const _0x1850e8=await runMenuUpdateCore(_0xb23f0e[_0x2dc671(0x195)],_0xb23f0e[_0x2dc671(0x1e0)],JSON[_0x2dc671(0x1e8)]({'jsUrl':_0x3cbf11,'cssUrl':_0x1e91e3}),{'mode':_0xe28838,'force':_0x2f0894,'selection':{'all':![],'menuIds':_0x369eb0['map'](_0x28bcd3=>_0x28bcd3['id']),'paths':[]},'loadScriptMode':_0x549a54});return stopSpinner(_0x3721f2,_0x2dc671(0x1c4)+_0x1850e8[_0x2dc671(0x1aa)]+'\x20menu(s)',_0x1850e8[_0x2dc671(0x1c8)]===0x0),{'ok':_0x1850e8[_0x2dc671(0x1c8)]===0x0,'data':_0x1850e8,'message':_0x1850e8[_0x2dc671(0x1c8)]>0x0?_0x2dc671(0x1dc)+_0x1850e8[_0x2dc671(0x1aa)]+_0x2dc671(0x1c0)+_0x1850e8[_0x2dc671(0x1c8)]+_0x2dc671(0x1a2):'Menu\x20asset\x20update\x20completed:\x20'+_0x1850e8[_0x2dc671(0x1aa)]+_0x2dc671(0x1cb)};}catch(_0x5018f9){stopSpinner(_0x3721f2,_0x2dc671(0x1bf),![]);throw CliErrors[_0x2dc671(0x1ca)](_0x5018f9 instanceof Error?_0x5018f9[_0x2dc671(0x1ba)]:_0x2dc671(0x1bf));}}};function ensureRunnableContext(_0x1368b7,_0x42116b){const _0x1f5570=a115_0x3d1cd5,_0x48d12e=_0x1368b7[_0x1f5570(0x1b4)]?String(_0x1368b7[_0x1f5570(0x1b4)])[_0x1f5570(0x1d4)]():'';if(!isInProject()&&!_0x42116b&&!_0x48d12e)throw CliErrors[_0x1f5570(0x1ca)](_0x1f5570(0x1e9)+'Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.');}function a115_0x2ea6(){const _0x2ef5a1=['updated','str','326062ixNQDf','Would\x20update\x20','POST','label','4411866hmJiOb','cyan','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','54060AKDZnF','appcode','Updating\x20','\x20and\x20CSS:\x20','menu-ids','✓\x20Menu\x20asset\x20update\x20completed:\x20','370416qAyZMJ','message','write','diffs','\x20\x20Cancelled.','gray','Menu\x20asset\x20update\x20failed','\x20updated,\x20','696416WokETH','params','\x20\x20Update\x20','Updated\x20','selectedAppName','14EWzKZM','jsUrl','failed','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','validation','\x20updated.','patch','paths','90TFopQB','menu','yellow','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','length','trim','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','map','mode','12ualvPS','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','\x20menu(s)\x20failed','Menu\x20asset\x20update\x20completed:\x20','2027961KNdxwo','script','bool','cookie','isArray','object','filter','isSafeInteger','skipped','/smartapi/menu/update','force','stringify','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','\x20menu(s)\x20updated','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','10tqvtRu','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','\x20menu(s)...','import','appCode','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','replace','Failed\x20to\x20fetch\x20online\x20menu\x20list','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','Menu\x20asset\x20update\x20skipped','12ImfEyE','\x20menu(s)\x20with\x20existing\x20resources','string','fetch','all','Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','\x20failed.','Online\x20menu\x20list\x20fetched','2386835VJQLgR','split','load-mode','cssUrl','rawFlags','4paMmYB'];a115_0x2ea6=function(){return _0x2ef5a1;};return a115_0x2ea6();}function parseMode(_0x3bbbbf){const _0x2caeb1=a115_0x3d1cd5;if(!_0x3bbbbf)return _0x2caeb1(0x1cc);if(_0x3bbbbf===_0x2caeb1(0x197)||_0x3bbbbf===_0x2caeb1(0x1cc))return _0x3bbbbf;throw CliErrors['validation'](_0x2caeb1(0x1b2));}function parseSelection(_0x2067e2,_0x1368ce=!![]){const _0x10d397=a115_0x3d1cd5,_0x2f387c=_0x2067e2[_0x10d397(0x1df)]('all'),_0x124768=parseMenuIds(_0x2067e2[_0x10d397(0x1ab)](_0x10d397(0x1b7))),_0x41b737=parseCsv(_0x2067e2[_0x10d397(0x1ab)](_0x10d397(0x1cd))),_0x3f6b36=_0x124768[_0x10d397(0x1d3)]>0x0||_0x41b737[_0x10d397(0x1d3)]>0x0;if(_0x2f387c&&_0x3f6b36)throw CliErrors[_0x10d397(0x1ca)](_0x10d397(0x190));if(!_0x2f387c&&!_0x3f6b36){if(!_0x1368ce)return undefined;throw CliErrors[_0x10d397(0x1ca)]('menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.');}return{'all':_0x2f387c,'menuIds':_0x124768,'paths':_0x41b737};}function parseMenuIds(_0x48511d){const _0x333697=a115_0x3d1cd5,_0x1290fc=parseCsv(_0x48511d),_0x161fd1=_0x1290fc[_0x333697(0x1d7)](Number);if(_0x161fd1['some'](_0x39c0fa=>!Number[_0x333697(0x1e4)](_0x39c0fa)||_0x39c0fa<=0x0))throw CliErrors[_0x333697(0x1ca)](_0x333697(0x1a1));return[...new Set(_0x161fd1)];}function parseCsv(_0x656e3f){const _0x19fbdf=a115_0x3d1cd5;return[...new Set(_0x656e3f[_0x19fbdf(0x1a5)](',')[_0x19fbdf(0x1d7)](_0xbc1569=>_0xbc1569[_0x19fbdf(0x1d4)]())[_0x19fbdf(0x1e3)](Boolean))];}function parseLoadScriptMode(_0x1aa548){const _0x183ea=a115_0x3d1cd5;if(!_0x1aa548)return undefined;if(_0x1aa548===_0x183ea(0x194)||_0x1aa548===_0x183ea(0x1de)||_0x1aa548==='fetch')return _0x1aa548;throw CliErrors[_0x183ea(0x1ca)](_0x183ea(0x18e));}function parseParams(_0x3b260a){const _0x2dd62d=a115_0x3d1cd5;if(!_0x3b260a)return{};try{const _0x3d6b5f=JSON['parse'](_0x3b260a);if(typeof _0x3d6b5f!==_0x2dd62d(0x1e2)||_0x3d6b5f===null||Array[_0x2dd62d(0x1e1)](_0x3d6b5f))return{};return{'jsUrl':typeof _0x3d6b5f[_0x2dd62d(0x1c7)]===_0x2dd62d(0x19d)?_0x3d6b5f[_0x2dd62d(0x1c7)][_0x2dd62d(0x1d4)]():undefined,'cssUrl':typeof _0x3d6b5f[_0x2dd62d(0x1a7)]===_0x2dd62d(0x19d)?_0x3d6b5f['cssUrl'][_0x2dd62d(0x1d4)]():undefined};}catch{return{};}}
@@ -1 +1 @@
1
- const a116_0x6e8804=a116_0x3886;(function(_0x671737,_0x127c15){const _0x1e8075=a116_0x3886,_0x65e239=_0x671737();while(!![]){try{const _0x160717=-parseInt(_0x1e8075(0x1ed))/0x1+parseInt(_0x1e8075(0x20c))/0x2+-parseInt(_0x1e8075(0x1e9))/0x3+parseInt(_0x1e8075(0x241))/0x4*(-parseInt(_0x1e8075(0x1fe))/0x5)+-parseInt(_0x1e8075(0x223))/0x6+-parseInt(_0x1e8075(0x23c))/0x7+-parseInt(_0x1e8075(0x1f1))/0x8*(-parseInt(_0x1e8075(0x20f))/0x9);if(_0x160717===_0x127c15)break;else _0x65e239['push'](_0x65e239['shift']());}catch(_0x4a5e77){_0x65e239['push'](_0x65e239['shift']());}}}(a116_0x8637,0x7194f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a116_0x3886(_0x4e6cc9,_0x3aef7b){_0x4e6cc9=_0x4e6cc9-0x1d8;const _0x8637b5=a116_0x8637();let _0x3886a1=_0x8637b5[_0x4e6cc9];return _0x3886a1;}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':a116_0x6e8804(0x244),'path':a116_0x6e8804(0x1ef)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a116_0x6e8804(0x21b)},MENU_DELETE_RECURSIVE_FLAG={'name':a116_0x6e8804(0x1f8),'type':a116_0x6e8804(0x1f2),'description':a116_0x6e8804(0x1ee)},MENU_DELETE_PLAN_OUT_FLAG={'name':a116_0x6e8804(0x1e1),'type':a116_0x6e8804(0x225),'description':a116_0x6e8804(0x227)},MENU_DELETE_PLAN_FLAG={'name':a116_0x6e8804(0x200),'type':a116_0x6e8804(0x225),'description':a116_0x6e8804(0x224)};export const menuDelete={'service':'menu','command':'delete','description':a116_0x6e8804(0x20a),'risk':a116_0x6e8804(0x238),'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'(_0x59f1a4){const _0x504add=a116_0x6e8804;_0x59f1a4['bool'](_0x504add(0x247))?validateDeleteDryRunInput(_0x59f1a4):validateDeleteExecuteInput(_0x59f1a4),requireExplicitYes(_0x59f1a4);},async 'dryRun'(_0x2783ad){const _0xcc0ce1=a116_0x6e8804;validateDeleteDryRunInput(_0x2783ad);const _0x33b611=await buildDeletePlan(_0x2783ad),_0x3f4c27=createMenuDeletePlanFile(_0x2783ad[_0xcc0ce1(0x1f5)],_0x33b611),_0x74e510=await writeMenuDeletePlan(_0x2783ad[_0xcc0ce1(0x222)](_0xcc0ce1(0x1e1)),_0x3f4c27),_0x1bc94d=mutationResult({..._0x33b611,'planFile':{'path':_0x74e510,'createdAt':_0x3f4c27[_0xcc0ce1(0x1e4)],'expiresAt':_0x3f4c27['expiresAt']}});return menuDryRunResult(_0x1bc94d,{'method':'POST','url':_0xcc0ce1(0x1ef),'body':{'idList':_0x1bc94d['deleteOrder']},'description':'Would\x20batch\x20delete\x20'+(_0x1bc94d['deleteOrder']?.['length']??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x1bc94d[_0xcc0ce1(0x21d)]['id']+_0xcc0ce1(0x243)+_0x74e510+'.'});},async 'execute'(_0x17251c){const _0x165d35=a116_0x6e8804;requireExplicitYes(_0x17251c),validateDeleteExecuteInput(_0x17251c);const _0x126a38=await readMenuDeletePlan(_0x17251c[_0x165d35(0x222)](_0x165d35(0x200))),_0x27abbc=mutationPlanFromDeleteFile(_0x126a38[_0x165d35(0x200)],_0x126a38[_0x165d35(0x215)]),_0x3c4019=_0x126a38[_0x165d35(0x200)][_0x165d35(0x229)]['id'];try{assertMenuDeletePlanExecutable(_0x126a38['plan'],_0x17251c['appCode']);}catch(_0x22b80f){throw menuFailure(asMenuError(_0x22b80f),_0x27abbc,{'stage':_0x165d35(0x226),'failed':{'id':_0x3c4019}});}let _0x3ae00e,_0x46c2be;try{_0x3ae00e=await fetchMutationSnapshot(_0x17251c,_0x165d35(0x1eb),_0x3c4019),_0x46c2be=assertMenuDeletePlanCurrent(_0x126a38[_0x165d35(0x200)],_0x17251c[_0x165d35(0x1f5)],_0x3ae00e),assertDeleteTargetsComplete(_0x126a38[_0x165d35(0x200)],_0x3ae00e),_0x46c2be[_0x165d35(0x212)](_0x376194=>assertDeleteSafety(_0x376194,_0x126a38[_0x165d35(0x200)]['recursive'])),assertNoSharedPages(_0x3ae00e,_0x46c2be),assertCascadeMatchesPlan(_0x27abbc,_0x46c2be);}catch(_0xe33cfd){throw menuFailure(asMenuError(_0xe33cfd),_0x27abbc,{'stage':_0x165d35(0x22a),'failed':{'id':_0x3c4019}});}const _0x4b4a62=_0x126a38[_0x165d35(0x200)][_0x165d35(0x1db)];let _0x1035e8;try{_0x1035e8=await batchDeleteMenuEntities(_0x17251c[_0x165d35(0x21a)],_0x4b4a62);}catch(_0x1ddfb5){const _0x16ce0f=mapMenuApiError(_0x1ddfb5,_0x165d35(0x202)),_0x258981=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0x16979a;try{_0x16979a=await readDeleteOutcome(_0x17251c,_0x4b4a62);}catch(_0x41a808){const _0x5db481=describeMenuErrorCause(_0x41a808,'read\x20menu\x20state\x20after\x20batch\x20delete\x20failure',_0x3c4019);_0x258981[_0x165d35(0x24e)]('Post-failure\x20menu\x20readback\x20failed\x20('+_0x5db481[_0x165d35(0x237)]+'):\x20'+_0x5db481[_0x165d35(0x248)]);throw menuFailure(_0x16ce0f,_0x27abbc,{'stage':_0x165d35(0x1da),'failed':{'targetIds':_0x4b4a62,'targetIdsAbsent':_0x165d35(0x211),..._0x5db481},'warnings':_0x258981,'verification':{'status':_0x165d35(0x1d9),'lookupCommand':_0x165d35(0x22f),'targetIds':_0x4b4a62}});}throw menuFailure(_0x16ce0f,_0x27abbc,{'stage':'batch-delete','succeeded':_0x16979a['absentIds']['map'](_0x1eb917=>({'id':_0x1eb917,'deleted':!![]})),'failed':{'targetIds':_0x4b4a62,'absentIds':_0x16979a[_0x165d35(0x1e0)],'remainingIds':_0x16979a[_0x165d35(0x231)]},'warnings':_0x258981,'verification':verificationFromOutcome(_0x16979a)});}if(_0x1035e8!==_0x4b4a62[_0x165d35(0x22c)]){const _0x51a17e=menuError('menu_batch_delete_count_mismatch','Backend\x20reported\x20'+_0x1035e8+_0x165d35(0x1e8)+_0x4b4a62[_0x165d35(0x22c)]+'.',_0x165d35(0x20b)),_0x532b47=['The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.'];let _0x2121d6;try{_0x2121d6=await readDeleteOutcome(_0x17251c,_0x4b4a62);}catch(_0xce569e){const _0x13b341=describeMenuErrorCause(_0xce569e,_0x165d35(0x213),_0x3c4019);_0x532b47[_0x165d35(0x24e)](_0x165d35(0x246)+_0x13b341[_0x165d35(0x237)]+_0x165d35(0x249)+_0x13b341['causeMessage']);throw menuFailure(_0x51a17e,_0x27abbc,{'stage':_0x165d35(0x1da),'failed':{'targetIds':_0x4b4a62,'expectedCount':_0x4b4a62[_0x165d35(0x22c)],'reportedDeletedCount':_0x1035e8,'targetIdsAbsent':_0x165d35(0x211),..._0x13b341},'warnings':_0x532b47,'verification':{'status':_0x165d35(0x1d9),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x4b4a62}});}throw menuFailure(_0x51a17e,_0x27abbc,{'stage':'batch-delete','succeeded':_0x2121d6[_0x165d35(0x1e0)][_0x165d35(0x23f)](_0x23f320=>({'id':_0x23f320,'deleted':!![]})),'failed':{'targetIds':_0x4b4a62,'expectedCount':_0x4b4a62[_0x165d35(0x22c)],'reportedDeletedCount':_0x1035e8,'absentIds':_0x2121d6['absentIds'],'remainingIds':_0x2121d6[_0x165d35(0x231)]},'warnings':_0x532b47,'verification':verificationFromOutcome(_0x2121d6)});}let _0x470c01;try{_0x470c01=await readDeleteOutcome(_0x17251c,_0x4b4a62);}catch(_0x148335){const _0x5987a7=describeMenuErrorCause(_0x148335,_0x165d35(0x1f9),_0x3c4019),_0x3d66cb=asVerificationError(_0x148335,'Batch\x20delete\x20request\x20for\x20menu\x20'+_0x3c4019+_0x165d35(0x205));throw menuFailure(_0x3d66cb,_0x27abbc,{'stage':'verification','succeeded':_0x4b4a62[_0x165d35(0x23f)](_0x47882f=>({'id':_0x47882f,'deleteRequested':!![]})),'failed':{'id':_0x3c4019,'targetIds':_0x4b4a62,'targetIdsAbsent':_0x165d35(0x211),..._0x5987a7},'warnings':[_0x165d35(0x22b)],'verification':{'status':'failed','lookupCommand':_0x165d35(0x22f),'targetIds':_0x4b4a62}});}if(_0x470c01[_0x165d35(0x231)]['length']>0x0){const _0x2576ee=menuError(_0x165d35(0x1fb),_0x165d35(0x1e5)+_0x470c01[_0x165d35(0x231)][_0x165d35(0x24d)](',\x20')+'.',_0x165d35(0x20b));throw menuFailure(_0x2576ee,_0x27abbc,{'stage':_0x165d35(0x1e3),'succeeded':_0x4b4a62[_0x165d35(0x23f)](_0x2a7158=>({'id':_0x2a7158,'deleteRequested':!![]})),'failed':{'id':_0x3c4019,'targetIds':_0x4b4a62,'absentIds':_0x470c01[_0x165d35(0x1e0)],'remainingIds':_0x470c01[_0x165d35(0x231)]},'warnings':[_0x165d35(0x1fa)],'verification':verificationFromOutcome(_0x470c01)});}const _0x421c6f=_0x4b4a62[_0x165d35(0x23f)](_0x414eef=>({'id':_0x414eef,'deleted':!![]})),_0xed63da=mutationResult({..._0x27abbc,'dryRun':![],'succeeded':_0x421c6f,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x27abbc['snapshotHash'],'finalSnapshotHash':_0x470c01[_0x165d35(0x214)]['hash'],'reportedDeletedCount':_0x1035e8,'targetAbsent':!_0x470c01[_0x165d35(0x214)][_0x165d35(0x1f6)][_0x165d35(0x23a)](_0x3c4019),'allTargetsAbsent':!![],'targetIds':_0x4b4a62}});return{'ok':!![],'data':_0xed63da,'message':_0x165d35(0x24c)+_0x421c6f[_0x165d35(0x22c)]+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x3c4019+'.'};}};async function readDeleteOutcome(_0x42f286,_0x4fa113){const _0x6f29ff=a116_0x6e8804,_0x24c0c0=await fetchMenuSnapshot(_0x42f286['appCode'],_0x42f286[_0x6f29ff(0x21a)]);return{'snapshot':_0x24c0c0,'absentIds':_0x4fa113[_0x6f29ff(0x1fd)](_0x1315f5=>!_0x24c0c0[_0x6f29ff(0x1f6)]['has'](_0x1315f5)),'remainingIds':_0x4fa113[_0x6f29ff(0x1fd)](_0x40a7cf=>_0x24c0c0[_0x6f29ff(0x1f6)]['has'](_0x40a7cf))};}function verificationFromOutcome(_0x38e541){const _0x5b7b03=a116_0x6e8804;return{'checkedBy':'menu\x20list','absentIds':_0x38e541[_0x5b7b03(0x1e0)],'remainingIds':_0x38e541[_0x5b7b03(0x231)]};}function validateDeleteDryRunInput(_0x41e53b){const _0x1323aa=a116_0x6e8804;validateExactId(_0x41e53b);if(!hasFlag(_0x41e53b,'plan-out')||!_0x41e53b[_0x1323aa(0x222)](_0x1323aa(0x1e1))[_0x1323aa(0x1dd)]())throw CliErrors['flagMissing'](_0x1323aa(0x1e1),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x41e53b,_0x1323aa(0x200)))throw CliErrors['validation'](_0x1323aa(0x242));}function validateDeleteExecuteInput(_0x221c72){const _0x4a79f6=a116_0x6e8804;if(!hasFlag(_0x221c72,_0x4a79f6(0x200))||!_0x221c72[_0x4a79f6(0x222)](_0x4a79f6(0x200))['trim']())throw CliErrors['flagMissing'](_0x4a79f6(0x200),_0x4a79f6(0x22e));const _0xbee05c=['id',_0x4a79f6(0x1f8),_0x4a79f6(0x1e1),'expect-parent-id',_0x4a79f6(0x218),_0x4a79f6(0x1e2)][_0x4a79f6(0x1fd)](_0x102c32=>hasFlag(_0x221c72,_0x102c32));if(_0xbee05c[_0x4a79f6(0x22c)]>0x0)throw CliErrors['validation'](_0x4a79f6(0x209)+_0xbee05c[_0x4a79f6(0x23f)](_0x5ae50a=>'--'+_0x5ae50a)[_0x4a79f6(0x24d)](',\x20')+'.');}async function buildDeletePlan(_0x2de70b){const _0x2f4c87=a116_0x6e8804,_0x59c2b0=validateExactId(_0x2de70b),_0x236829=await fetchMutationSnapshot(_0x2de70b,_0x2f4c87(0x1f4),_0x59c2b0),_0xf8afa3=requireMenu(_0x236829,_0x59c2b0);assertExpectedState(_0x2de70b,_0xf8afa3);const _0x1bc5bd=_0x2de70b[_0x2f4c87(0x1fc)]('recursive');let _0x178ee8;if(_0x1bc5bd){if(_0xf8afa3['type']['trim']()['toLowerCase']()!=='folder')throw menuError(_0x2f4c87(0x207),_0x2f4c87(0x232)+_0xf8afa3['id']+_0x2f4c87(0x234)+(_0xf8afa3[_0x2f4c87(0x1e6)]||_0x2f4c87(0x1d8))+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x178ee8=collectDeleteTargets(_0x236829,_0xf8afa3),_0x178ee8[_0x2f4c87(0x212)](_0x4091ef=>assertDeleteSafety(_0x4091ef,!![]));}else assertDeleteSafety(_0xf8afa3),_0x178ee8=[_0xf8afa3];assertNoSharedPages(_0x236829,_0x178ee8);const _0x2599c2=_0x178ee8[_0x2f4c87(0x23f)](_0x107090=>_0x107090['id']),_0x4f0d35=cascadeForTargets(_0x178ee8),_0x205e77=_0x4f0d35[_0x2f4c87(0x24a)][_0x2f4c87(0x22c)]>0x0?[_0x2f4c87(0x1ff)]:[];return mutationResult({'operation':'delete','selector':{'id':_0x59c2b0,'recursive':_0x1bc5bd},'before':_0xf8afa3,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x2f4c87(0x210),'method':_0x2f4c87(0x244),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x2599c2}}],'targets':_0x178ee8,'deleteOrder':_0x2599c2,'snapshotHash':_0x236829['hash'],'cascade':_0x4f0d35,'warnings':_0x205e77});}function assertDeleteSafety(_0x143ae7,_0xf08f82=![]){const _0x5c7ab4=a116_0x6e8804,_0x3f941b=_0x143ae7[_0x5c7ab4(0x1e6)][_0x5c7ab4(0x1dd)]()[_0x5c7ab4(0x220)]()==='folder';if(_0x143ae7[_0x5c7ab4(0x1f3)]>0x0&&(!_0xf08f82||!_0x3f941b))throw menuError(_0x5c7ab4(0x1ec),_0x5c7ab4(0x232)+_0x143ae7['id']+_0x5c7ab4(0x245)+_0x143ae7[_0x5c7ab4(0x1f3)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0x5c7ab4(0x23e)+_0x143ae7[_0x5c7ab4(0x21c)][_0x5c7ab4(0x24d)](',\x20'));if(_0x3f941b&&_0x143ae7[_0x5c7ab4(0x1ea)]!=null)throw menuError(_0x5c7ab4(0x22d),_0x5c7ab4(0x216)+_0x143ae7['id']+'\x20is\x20unexpectedly\x20bound\x20to\x20page\x20'+_0x143ae7[_0x5c7ab4(0x1ea)]+_0x5c7ab4(0x221),_0x5c7ab4(0x203));if(!_0x3f941b)return;if(!_0x143ae7[_0x5c7ab4(0x201)])throw menuError(_0x5c7ab4(0x236),'Folder\x20'+_0x143ae7['id']+'\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.',_0x5c7ab4(0x240));if(_0x143ae7[_0x5c7ab4(0x228)][_0x5c7ab4(0x22c)]>0x0)throw menuError(_0x5c7ab4(0x204),_0x5c7ab4(0x216)+_0x143ae7['id']+_0x5c7ab4(0x239)+_0x143ae7[_0x5c7ab4(0x228)][_0x5c7ab4(0x22c)]+'\x20resource\x20URL(s).','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function collectDeleteTargets(_0x135cfa,_0x170079){const _0x4a0e13=[],_0x1bffa9=new Set(),_0x13e952=new Set(),_0x4cbf4c=_0x522976=>{const _0x91a415=a116_0x3886;if(_0x1bffa9['has'](_0x522976['id']))throw menuError('menu_tree_invalid',_0x91a415(0x235)+_0x522976['id']+'.');if(_0x13e952['has'](_0x522976['id']))return;_0x1bffa9[_0x91a415(0x217)](_0x522976['id']);for(const _0xd7d21d of _0x522976[_0x91a415(0x21c)]){const _0x327717=_0x135cfa['byId'][_0x91a415(0x1dc)](_0xd7d21d);if(!_0x327717)throw menuError('menu_tree_invalid','Menu\x20'+_0x522976['id']+_0x91a415(0x1f7)+_0xd7d21d+'.');_0x4cbf4c(_0x327717);}_0x1bffa9[_0x91a415(0x1e7)](_0x522976['id']),_0x13e952[_0x91a415(0x217)](_0x522976['id']),_0x4a0e13[_0x91a415(0x24e)](_0x522976);};return _0x4cbf4c(_0x170079),_0x4a0e13;}function assertDeleteTargetsComplete(_0x40fce0,_0x430d2d){const _0x529f3d=a116_0x6e8804,_0x21aa46=requireMenu(_0x430d2d,_0x40fce0[_0x529f3d(0x229)]['id']);if(_0x40fce0[_0x529f3d(0x1f8)]&&_0x21aa46['type']['trim']()[_0x529f3d(0x220)]()!=='folder')throw menuError(_0x529f3d(0x20e),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x21aa46['id']+_0x529f3d(0x23b));const _0x81990d=_0x40fce0[_0x529f3d(0x1f8)]?collectDeleteTargets(_0x430d2d,_0x21aa46)[_0x529f3d(0x23f)](_0x2aa792=>_0x2aa792['id']):[_0x21aa46['id']];if(JSON[_0x529f3d(0x206)](_0x40fce0[_0x529f3d(0x1db)])!==JSON['stringify'](_0x81990d))throw menuError(_0x529f3d(0x20e),'Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.',_0x529f3d(0x20d));}function a116_0x8637(){const _0x4af97c=['Post-mismatch\x20menu\x20readback\x20failed\x20(','dry-run','causeMessage','):\x20','pages','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','Deleted\x20','join','push','unknown','failed','batch-delete','deleteOrder','get','trim','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','page\x20','absentIds','plan-out','expected-children-count','verification','createdAt','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','type','delete','\x20deleted\x20menus;\x20expected\x20','1628067iBLugq','pageId','execute\x20reviewed\x20delete\x20plan','menu_non_empty','242359WENoXq','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','/smartapi/menu/batchDelete','cascade','8GtEAhi','boolean','childrenCount','plan\x20delete','appCode','byId','\x20references\x20missing\x20child\x20','recursive','verify\x20batch\x20delete','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','menu_verification_failed','bool','filter','275FUcWSX','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','plan','resourcesValid','batch\x20delete','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','menu_folder_has_resources','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','stringify','menu_recursive_requires_folder','\x20->\x20menu\x20','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','1850820fPhPVI','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','menu_plan_invalid','20756187cvXHSH','batch-delete-menu','unconfirmed','forEach','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','snapshot','path','Folder\x20','add','expect-path','message','cookie','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','childrenIds','selector','size','menus','toLowerCase','\x20and\x20cannot\x20be\x20deleted\x20safely.','str','4766226YlZmvM','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','string','plan-validation','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','resources','target','pre-write-plan-validation','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','length','menu_delete_page_bound','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','rabetbase\x20menu\x20list\x20--format\x20json','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','remainingIds','Menu\x20','menu_page_shared','\x20is\x20type\x20\x22','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','menu_folder_resources_invalid','causeCode','high-risk-write','\x20still\x20references\x20','has','\x20is\x20not\x20a\x20folder.','2115526HzUzRc','indexOf','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','map','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','64348xUUkGU','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.',';\x20execution\x20must\x20consume\x20','POST','\x20has\x20'];a116_0x8637=function(){return _0x4af97c;};return a116_0x8637();}function assertNoSharedPages(_0x1418ee,_0x5b1685){const _0x56a4de=a116_0x6e8804,_0x4a705e=new Set(_0x5b1685['map'](_0x4e02cb=>_0x4e02cb['id'])),_0x23b538=new Set(_0x5b1685[_0x56a4de(0x23f)](_0x3ffdb6=>_0x3ffdb6[_0x56a4de(0x1ea)])[_0x56a4de(0x1fd)](_0x35597f=>_0x35597f!=null));if(_0x23b538[_0x56a4de(0x21e)]===0x0)return;const _0x1bdcc8=_0x1418ee[_0x56a4de(0x21f)][_0x56a4de(0x1fd)](_0x163783=>!_0x4a705e[_0x56a4de(0x23a)](_0x163783['id'])&&_0x163783[_0x56a4de(0x1ea)]!=null&&_0x23b538[_0x56a4de(0x23a)](_0x163783['pageId']));if(_0x1bdcc8['length']===0x0)return;const _0x6c1023=_0x1bdcc8[_0x56a4de(0x23f)](_0x58e3af=>_0x56a4de(0x1df)+_0x58e3af['pageId']+_0x56a4de(0x208)+_0x58e3af['id'])[_0x56a4de(0x24d)](',\x20');throw menuError(_0x56a4de(0x233),_0x56a4de(0x1de)+_0x6c1023+'.',_0x56a4de(0x230));}function assertCascadeMatchesPlan(_0xcdb327,_0x44c577){const _0x1a3f55=a116_0x6e8804,_0x1d2a6d=cascadeForTargets(_0x44c577);if(JSON[_0x1a3f55(0x206)](_0xcdb327[_0x1a3f55(0x1f0)])!==JSON[_0x1a3f55(0x206)](_0x1d2a6d))throw menuError(_0x1a3f55(0x20e),_0x1a3f55(0x24b));}function cascadeForTargets(_0x3bd6c3){const _0x3b8a42=a116_0x6e8804,_0xfccb1=_0x3bd6c3[_0x3b8a42(0x23f)](_0x5edc02=>_0x5edc02[_0x3b8a42(0x1ea)])[_0x3b8a42(0x1fd)](_0x1cdeac=>_0x1cdeac!=null)[_0x3b8a42(0x1fd)]((_0x20d35a,_0x4fab56,_0x173dd5)=>_0x173dd5[_0x3b8a42(0x23d)](_0x20d35a)===_0x4fab56);return{'pages':_0xfccb1,'pageSchemaAffected':_0xfccb1['length']>0x0};}function asMenuError(_0x4dca4f){const _0xe2c7d5=a116_0x6e8804;return _0x4dca4f instanceof CliError?_0x4dca4f:menuError(_0xe2c7d5(0x20e),_0x4dca4f instanceof Error?_0x4dca4f[_0xe2c7d5(0x219)]:String(_0x4dca4f));}
1
+ const a116_0x545d9e=a116_0x4f13;(function(_0x5a0061,_0x59a481){const _0x169f61=a116_0x4f13,_0x234188=_0x5a0061();while(!![]){try{const _0x9b7ac0=parseInt(_0x169f61(0x15f))/0x1*(parseInt(_0x169f61(0x197))/0x2)+-parseInt(_0x169f61(0x1d1))/0x3+-parseInt(_0x169f61(0x190))/0x4+-parseInt(_0x169f61(0x180))/0x5+parseInt(_0x169f61(0x196))/0x6+-parseInt(_0x169f61(0x1c7))/0x7*(-parseInt(_0x169f61(0x160))/0x8)+-parseInt(_0x169f61(0x16e))/0x9*(-parseInt(_0x169f61(0x164))/0xa);if(_0x9b7ac0===_0x59a481)break;else _0x234188['push'](_0x234188['shift']());}catch(_0x2cb4e){_0x234188['push'](_0x234188['shift']());}}}(a116_0x2416,0xba29b));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a116_0x545d9e(0x1ca)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a116_0x545d9e(0x174)},MENU_DELETE_RECURSIVE_FLAG={'name':a116_0x545d9e(0x1a4),'type':a116_0x545d9e(0x163),'description':a116_0x545d9e(0x1cc)},MENU_DELETE_PLAN_OUT_FLAG={'name':a116_0x545d9e(0x1dc),'type':a116_0x545d9e(0x182),'description':a116_0x545d9e(0x1b1)},MENU_DELETE_PLAN_FLAG={'name':a116_0x545d9e(0x1d8),'type':a116_0x545d9e(0x182),'description':a116_0x545d9e(0x1b0)};export const menuDelete={'service':a116_0x545d9e(0x16d),'command':'delete','description':a116_0x545d9e(0x17c),'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'(_0x1d27ad){_0x1d27ad['bool']('dry-run')?validateDeleteDryRunInput(_0x1d27ad):validateDeleteExecuteInput(_0x1d27ad),requireExplicitYes(_0x1d27ad);},async 'dryRun'(_0x31fd32){const _0x56a227=a116_0x545d9e;validateDeleteDryRunInput(_0x31fd32);const _0x38eac6=await buildDeletePlan(_0x31fd32),_0x89d068=createMenuDeletePlanFile(_0x31fd32[_0x56a227(0x1c0)],_0x38eac6),_0x336340=await writeMenuDeletePlan(_0x31fd32[_0x56a227(0x1c4)](_0x56a227(0x1dc)),_0x89d068),_0x5eec00=mutationResult({..._0x38eac6,'planFile':{'path':_0x336340,'createdAt':_0x89d068['createdAt'],'expiresAt':_0x89d068[_0x56a227(0x19f)]}});return menuDryRunResult(_0x5eec00,{'method':_0x56a227(0x1ac),'url':_0x56a227(0x1ca),'body':{'idList':_0x5eec00['deleteOrder']},'description':'Would\x20batch\x20delete\x20'+(_0x5eec00['deleteOrder']?.[_0x56a227(0x19b)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x5eec00[_0x56a227(0x1bc)]['id']+_0x56a227(0x1d7)+_0x336340+'.'});},async 'execute'(_0x4d82b8){const _0x2a7332=a116_0x545d9e;requireExplicitYes(_0x4d82b8),validateDeleteExecuteInput(_0x4d82b8);const _0x52faa5=await readMenuDeletePlan(_0x4d82b8['str'](_0x2a7332(0x1d8))),_0x5200fb=mutationPlanFromDeleteFile(_0x52faa5[_0x2a7332(0x1d8)],_0x52faa5[_0x2a7332(0x167)]),_0x412a0c=_0x52faa5['plan'][_0x2a7332(0x16b)]['id'];try{assertMenuDeletePlanExecutable(_0x52faa5['plan'],_0x4d82b8[_0x2a7332(0x1c0)]);}catch(_0x4858c8){throw menuFailure(asMenuError(_0x4858c8),_0x5200fb,{'stage':'plan-validation','failed':{'id':_0x412a0c}});}let _0x1198fe,_0x17ec26;try{_0x1198fe=await fetchMutationSnapshot(_0x4d82b8,_0x2a7332(0x15e),_0x412a0c),_0x17ec26=assertMenuDeletePlanCurrent(_0x52faa5[_0x2a7332(0x1d8)],_0x4d82b8['appCode'],_0x1198fe),assertDeleteTargetsComplete(_0x52faa5[_0x2a7332(0x1d8)],_0x1198fe),_0x17ec26[_0x2a7332(0x1cd)](_0x5f2f5b=>assertDeleteSafety(_0x5f2f5b,_0x52faa5[_0x2a7332(0x1d8)][_0x2a7332(0x1a4)])),assertNoSharedPages(_0x1198fe,_0x17ec26),assertCascadeMatchesPlan(_0x5200fb,_0x17ec26);}catch(_0xf543c5){throw menuFailure(asMenuError(_0xf543c5),_0x5200fb,{'stage':'pre-write-plan-validation','failed':{'id':_0x412a0c}});}const _0x197282=_0x52faa5[_0x2a7332(0x1d8)][_0x2a7332(0x1b5)];let _0x23dae5;try{_0x23dae5=await batchDeleteMenuEntities(_0x4d82b8['cookie'],_0x197282);}catch(_0x45d0a3){const _0x104d24=mapMenuApiError(_0x45d0a3,_0x2a7332(0x178)),_0x2f0ab1=[_0x2a7332(0x191)];let _0x28b4f4;try{_0x28b4f4=await readDeleteOutcome(_0x4d82b8,_0x197282);}catch(_0x533e60){const _0x5aa72d=describeMenuErrorCause(_0x533e60,_0x2a7332(0x1a1),_0x412a0c);_0x2f0ab1[_0x2a7332(0x1de)](_0x2a7332(0x162)+_0x5aa72d[_0x2a7332(0x166)]+'):\x20'+_0x5aa72d[_0x2a7332(0x184)]);throw menuFailure(_0x104d24,_0x5200fb,{'stage':_0x2a7332(0x173),'failed':{'targetIds':_0x197282,'targetIdsAbsent':_0x2a7332(0x198),..._0x5aa72d},'warnings':_0x2f0ab1,'verification':{'status':_0x2a7332(0x1c6),'lookupCommand':_0x2a7332(0x1a2),'targetIds':_0x197282}});}throw menuFailure(_0x104d24,_0x5200fb,{'stage':_0x2a7332(0x173),'succeeded':_0x28b4f4[_0x2a7332(0x185)][_0x2a7332(0x1c5)](_0x37a4c6=>({'id':_0x37a4c6,'deleted':!![]})),'failed':{'targetIds':_0x197282,'absentIds':_0x28b4f4[_0x2a7332(0x185)],'remainingIds':_0x28b4f4[_0x2a7332(0x176)]},'warnings':_0x2f0ab1,'verification':verificationFromOutcome(_0x28b4f4)});}if(_0x23dae5!==_0x197282[_0x2a7332(0x19b)]){const _0x58c646=menuError(_0x2a7332(0x1b3),'Backend\x20reported\x20'+_0x23dae5+_0x2a7332(0x1d5)+_0x197282[_0x2a7332(0x19b)]+'.',_0x2a7332(0x18b)),_0x58e24=[_0x2a7332(0x17a)];let _0x3b1756;try{_0x3b1756=await readDeleteOutcome(_0x4d82b8,_0x197282);}catch(_0x2b5f70){const _0x217bc9=describeMenuErrorCause(_0x2b5f70,_0x2a7332(0x179),_0x412a0c);_0x58e24[_0x2a7332(0x1de)](_0x2a7332(0x19c)+_0x217bc9['causeCode']+_0x2a7332(0x188)+_0x217bc9[_0x2a7332(0x184)]);throw menuFailure(_0x58c646,_0x5200fb,{'stage':_0x2a7332(0x173),'failed':{'targetIds':_0x197282,'expectedCount':_0x197282['length'],'reportedDeletedCount':_0x23dae5,'targetIdsAbsent':'unconfirmed',..._0x217bc9},'warnings':_0x58e24,'verification':{'status':'failed','lookupCommand':_0x2a7332(0x1a2),'targetIds':_0x197282}});}throw menuFailure(_0x58c646,_0x5200fb,{'stage':_0x2a7332(0x173),'succeeded':_0x3b1756[_0x2a7332(0x185)][_0x2a7332(0x1c5)](_0x37b03e=>({'id':_0x37b03e,'deleted':!![]})),'failed':{'targetIds':_0x197282,'expectedCount':_0x197282[_0x2a7332(0x19b)],'reportedDeletedCount':_0x23dae5,'absentIds':_0x3b1756['absentIds'],'remainingIds':_0x3b1756['remainingIds']},'warnings':_0x58e24,'verification':verificationFromOutcome(_0x3b1756)});}let _0x1352bd;try{_0x1352bd=await readDeleteOutcome(_0x4d82b8,_0x197282);}catch(_0x57498b){const _0x50533f=describeMenuErrorCause(_0x57498b,_0x2a7332(0x1c3),_0x412a0c),_0x1bd91a=asVerificationError(_0x57498b,_0x2a7332(0x16a)+_0x412a0c+_0x2a7332(0x16f));throw menuFailure(_0x1bd91a,_0x5200fb,{'stage':_0x2a7332(0x195),'succeeded':_0x197282[_0x2a7332(0x1c5)](_0x439222=>({'id':_0x439222,'deleteRequested':!![]})),'failed':{'id':_0x412a0c,'targetIds':_0x197282,'targetIdsAbsent':_0x2a7332(0x198),..._0x50533f},'warnings':[_0x2a7332(0x175)],'verification':{'status':_0x2a7332(0x1c6),'lookupCommand':_0x2a7332(0x1a2),'targetIds':_0x197282}});}if(_0x1352bd[_0x2a7332(0x176)]['length']>0x0){const _0xb1ea54=menuError(_0x2a7332(0x189),_0x2a7332(0x170)+_0x1352bd[_0x2a7332(0x176)][_0x2a7332(0x1dd)](',\x20')+'.',_0x2a7332(0x18b));throw menuFailure(_0xb1ea54,_0x5200fb,{'stage':_0x2a7332(0x195),'succeeded':_0x197282[_0x2a7332(0x1c5)](_0x342a00=>({'id':_0x342a00,'deleteRequested':!![]})),'failed':{'id':_0x412a0c,'targetIds':_0x197282,'absentIds':_0x1352bd[_0x2a7332(0x185)],'remainingIds':_0x1352bd[_0x2a7332(0x176)]},'warnings':['The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.'],'verification':verificationFromOutcome(_0x1352bd)});}const _0x2ba780=_0x197282[_0x2a7332(0x1c5)](_0x562e77=>({'id':_0x562e77,'deleted':!![]})),_0x5e667=mutationResult({..._0x5200fb,'dryRun':![],'succeeded':_0x2ba780,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x5200fb[_0x2a7332(0x1a8)],'finalSnapshotHash':_0x1352bd[_0x2a7332(0x18c)][_0x2a7332(0x18f)],'reportedDeletedCount':_0x23dae5,'targetAbsent':!_0x1352bd[_0x2a7332(0x18c)][_0x2a7332(0x192)][_0x2a7332(0x1ba)](_0x412a0c),'allTargetsAbsent':!![],'targetIds':_0x197282}});return{'ok':!![],'data':_0x5e667,'message':_0x2a7332(0x1b6)+_0x2ba780[_0x2a7332(0x19b)]+_0x2a7332(0x1d4)+_0x412a0c+'.'};}};async function readDeleteOutcome(_0x5a6733,_0x4ea1a8){const _0x526934=a116_0x545d9e,_0x21daf0=await fetchMenuSnapshot(_0x5a6733['appCode'],_0x5a6733[_0x526934(0x1d2)]);return{'snapshot':_0x21daf0,'absentIds':_0x4ea1a8[_0x526934(0x1be)](_0x1bce7c=>!_0x21daf0[_0x526934(0x192)][_0x526934(0x1ba)](_0x1bce7c)),'remainingIds':_0x4ea1a8[_0x526934(0x1be)](_0x1b6b86=>_0x21daf0[_0x526934(0x192)][_0x526934(0x1ba)](_0x1b6b86))};}function verificationFromOutcome(_0x8aca55){const _0x5a4ae9=a116_0x545d9e;return{'checkedBy':_0x5a4ae9(0x1b7),'absentIds':_0x8aca55['absentIds'],'remainingIds':_0x8aca55['remainingIds']};}function validateDeleteDryRunInput(_0x6c1d54){const _0x25ced2=a116_0x545d9e;validateExactId(_0x6c1d54);if(!hasFlag(_0x6c1d54,'plan-out')||!_0x6c1d54[_0x25ced2(0x1c4)](_0x25ced2(0x1dc))['trim']())throw CliErrors[_0x25ced2(0x1b2)](_0x25ced2(0x1dc),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x6c1d54,'plan'))throw CliErrors['validation'](_0x25ced2(0x168));}function validateDeleteExecuteInput(_0x359849){const _0x1f9d9c=a116_0x545d9e;if(!hasFlag(_0x359849,_0x1f9d9c(0x1d8))||!_0x359849[_0x1f9d9c(0x1c4)](_0x1f9d9c(0x1d8))[_0x1f9d9c(0x1d0)]())throw CliErrors[_0x1f9d9c(0x1b2)](_0x1f9d9c(0x1d8),_0x1f9d9c(0x1af));const _0xf8a1ad=['id',_0x1f9d9c(0x1a4),'plan-out',_0x1f9d9c(0x1a6),_0x1f9d9c(0x1d3),_0x1f9d9c(0x1c9)]['filter'](_0x19956b=>hasFlag(_0x359849,_0x19956b));if(_0xf8a1ad['length']>0x0)throw CliErrors[_0x1f9d9c(0x16c)](_0x1f9d9c(0x161)+_0xf8a1ad['map'](_0x5d9f5b=>'--'+_0x5d9f5b)[_0x1f9d9c(0x1dd)](',\x20')+'.');}async function buildDeletePlan(_0xf59816){const _0x183c4f=a116_0x545d9e,_0x57b012=validateExactId(_0xf59816),_0x163380=await fetchMutationSnapshot(_0xf59816,_0x183c4f(0x172),_0x57b012),_0x2370a2=requireMenu(_0x163380,_0x57b012);assertExpectedState(_0xf59816,_0x2370a2);const _0x41450e=_0xf59816[_0x183c4f(0x183)](_0x183c4f(0x1a4));let _0xc79a03;if(_0x41450e){if(_0x2370a2[_0x183c4f(0x1a7)][_0x183c4f(0x1d0)]()[_0x183c4f(0x1ad)]()!==_0x183c4f(0x1a9))throw menuError(_0x183c4f(0x1c1),'Menu\x20'+_0x2370a2['id']+_0x183c4f(0x15d)+(_0x2370a2['type']||_0x183c4f(0x171))+_0x183c4f(0x18d));_0xc79a03=collectDeleteTargets(_0x163380,_0x2370a2),_0xc79a03[_0x183c4f(0x1cd)](_0x388763=>assertDeleteSafety(_0x388763,!![]));}else assertDeleteSafety(_0x2370a2),_0xc79a03=[_0x2370a2];assertNoSharedPages(_0x163380,_0xc79a03);const _0x4cba2b=_0xc79a03['map'](_0x457b69=>_0x457b69['id']),_0x1b2ed7=cascadeForTargets(_0xc79a03),_0x1a8a58=_0x1b2ed7[_0x183c4f(0x1cf)][_0x183c4f(0x19b)]>0x0?[_0x183c4f(0x1bf)]:[];return mutationResult({'operation':_0x183c4f(0x193),'selector':{'id':_0x57b012,'recursive':_0x41450e},'before':_0x2370a2,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x183c4f(0x19a),'method':'POST','path':_0x183c4f(0x1ca),'body':{'idList':_0x4cba2b}}],'targets':_0xc79a03,'deleteOrder':_0x4cba2b,'snapshotHash':_0x163380[_0x183c4f(0x18f)],'cascade':_0x1b2ed7,'warnings':_0x1a8a58});}function assertDeleteSafety(_0x346ded,_0x47fecd=![]){const _0x4dd22d=a116_0x545d9e,_0x25b5fd=_0x346ded[_0x4dd22d(0x1a7)][_0x4dd22d(0x1d0)]()[_0x4dd22d(0x1ad)]()===_0x4dd22d(0x1a9);if(_0x346ded[_0x4dd22d(0x1bd)]>0x0&&(!_0x47fecd||!_0x25b5fd))throw menuError(_0x4dd22d(0x1a5),'Menu\x20'+_0x346ded['id']+'\x20has\x20'+_0x346ded['childrenCount']+_0x4dd22d(0x1ce),_0x4dd22d(0x1db)+_0x346ded[_0x4dd22d(0x1d9)][_0x4dd22d(0x1dd)](',\x20'));if(_0x25b5fd&&_0x346ded[_0x4dd22d(0x169)]!=null)throw menuError(_0x4dd22d(0x19e),_0x4dd22d(0x1b8)+_0x346ded['id']+_0x4dd22d(0x165)+_0x346ded['pageId']+_0x4dd22d(0x187),_0x4dd22d(0x1ae));if(!_0x25b5fd)return;if(!_0x346ded[_0x4dd22d(0x181)])throw menuError(_0x4dd22d(0x1df),'Folder\x20'+_0x346ded['id']+_0x4dd22d(0x17d),_0x4dd22d(0x199));if(_0x346ded[_0x4dd22d(0x177)][_0x4dd22d(0x19b)]>0x0)throw menuError(_0x4dd22d(0x1bb),'Folder\x20'+_0x346ded['id']+_0x4dd22d(0x18e)+_0x346ded[_0x4dd22d(0x177)][_0x4dd22d(0x19b)]+_0x4dd22d(0x1c8),'Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function collectDeleteTargets(_0x29011a,_0x744911){const _0x3ee6c3=[],_0x460ee8=new Set(),_0x4b8883=new Set(),_0x4db1e0=_0x43b43e=>{const _0x5bb103=a116_0x4f13;if(_0x460ee8['has'](_0x43b43e['id']))throw menuError(_0x5bb103(0x17b),_0x5bb103(0x1da)+_0x43b43e['id']+'.');if(_0x4b8883[_0x5bb103(0x1ba)](_0x43b43e['id']))return;_0x460ee8['add'](_0x43b43e['id']);for(const _0x287f94 of _0x43b43e['childrenIds']){const _0x31a14c=_0x29011a['byId'][_0x5bb103(0x1a0)](_0x287f94);if(!_0x31a14c)throw menuError(_0x5bb103(0x17b),_0x5bb103(0x18a)+_0x43b43e['id']+_0x5bb103(0x186)+_0x287f94+'.');_0x4db1e0(_0x31a14c);}_0x460ee8[_0x5bb103(0x193)](_0x43b43e['id']),_0x4b8883[_0x5bb103(0x1d6)](_0x43b43e['id']),_0x3ee6c3[_0x5bb103(0x1de)](_0x43b43e);};return _0x4db1e0(_0x744911),_0x3ee6c3;}function assertDeleteTargetsComplete(_0x42bc1c,_0x731653){const _0x20a77c=a116_0x545d9e,_0x525836=requireMenu(_0x731653,_0x42bc1c[_0x20a77c(0x16b)]['id']);if(_0x42bc1c[_0x20a77c(0x1a4)]&&_0x525836[_0x20a77c(0x1a7)][_0x20a77c(0x1d0)]()[_0x20a77c(0x1ad)]()!==_0x20a77c(0x1a9))throw menuError(_0x20a77c(0x1ab),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x525836['id']+_0x20a77c(0x1cb));const _0x5450cd=_0x42bc1c['recursive']?collectDeleteTargets(_0x731653,_0x525836)[_0x20a77c(0x1c5)](_0x200944=>_0x200944['id']):[_0x525836['id']];if(JSON[_0x20a77c(0x1b9)](_0x42bc1c[_0x20a77c(0x1b5)])!==JSON[_0x20a77c(0x1b9)](_0x5450cd))throw menuError(_0x20a77c(0x1ab),_0x20a77c(0x194),_0x20a77c(0x1aa));}function assertNoSharedPages(_0x34b09c,_0x1468de){const _0x31146c=a116_0x545d9e,_0x37ca04=new Set(_0x1468de[_0x31146c(0x1c5)](_0x289385=>_0x289385['id'])),_0x20b8cf=new Set(_0x1468de[_0x31146c(0x1c5)](_0x44cced=>_0x44cced[_0x31146c(0x169)])[_0x31146c(0x1be)](_0x513016=>_0x513016!=null));if(_0x20b8cf[_0x31146c(0x1e0)]===0x0)return;const _0x315283=_0x34b09c[_0x31146c(0x17e)][_0x31146c(0x1be)](_0x109d12=>!_0x37ca04[_0x31146c(0x1ba)](_0x109d12['id'])&&_0x109d12[_0x31146c(0x169)]!=null&&_0x20b8cf[_0x31146c(0x1ba)](_0x109d12['pageId']));if(_0x315283['length']===0x0)return;const _0x2a8a7f=_0x315283[_0x31146c(0x1c5)](_0x2aab70=>_0x31146c(0x17f)+_0x2aab70[_0x31146c(0x169)]+_0x31146c(0x1c2)+_0x2aab70['id'])['join'](',\x20');throw menuError(_0x31146c(0x1a3),'Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x2a8a7f+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x28b02d,_0x363bb0){const _0x24b303=a116_0x545d9e,_0x158033=cascadeForTargets(_0x363bb0);if(JSON[_0x24b303(0x1b9)](_0x28b02d['cascade'])!==JSON['stringify'](_0x158033))throw menuError(_0x24b303(0x1ab),_0x24b303(0x1b4));}function cascadeForTargets(_0x4ac919){const _0x372f58=a116_0x545d9e,_0x3e58c6=_0x4ac919[_0x372f58(0x1c5)](_0x26197d=>_0x26197d['pageId'])['filter'](_0x4f2b91=>_0x4f2b91!=null)['filter']((_0x1e8567,_0x298f45,_0x43ec5b)=>_0x43ec5b['indexOf'](_0x1e8567)===_0x298f45);return{'pages':_0x3e58c6,'pageSchemaAffected':_0x3e58c6[_0x372f58(0x19b)]>0x0};}function asMenuError(_0x374539){const _0x349e5c=a116_0x545d9e;return _0x374539 instanceof CliError?_0x374539:menuError(_0x349e5c(0x1ab),_0x374539 instanceof Error?_0x374539[_0x349e5c(0x19d)]:String(_0x374539));}function a116_0x4f13(_0xfb5825,_0x5b4515){_0xfb5825=_0xfb5825-0x15d;const _0x2416f4=a116_0x2416();let _0x4f132a=_0x2416f4[_0xfb5825];return _0x4f132a;}function a116_0x2416(){const _0x48b7f6=['expect-parent-id','type','snapshotHash','folder','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','menu_plan_invalid','POST','toLowerCase','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','flagMissing','menu_batch_delete_count_mismatch','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','deleteOrder','Deleted\x20','menu\x20list','Folder\x20','stringify','has','menu_folder_has_resources','selector','childrenCount','filter','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','appCode','menu_recursive_requires_folder','\x20->\x20menu\x20','verify\x20batch\x20delete','str','map','failed','5593VobKWN','\x20resource\x20URL(s).','expected-children-count','/smartapi/menu/batchDelete','\x20is\x20not\x20a\x20folder.','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','forEach','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','pages','trim','2045070ZFupEe','cookie','expect-path','\x20menu(s)\x20under\x20exact\x20id\x20','\x20deleted\x20menus;\x20expected\x20','add',';\x20execution\x20must\x20consume\x20','plan','childrenIds','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','plan-out','join','push','menu_folder_resources_invalid','size','\x20is\x20type\x20\x22','execute\x20reviewed\x20delete\x20plan','2REUSwz','1928pNFCTB','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','Post-failure\x20menu\x20readback\x20failed\x20(','boolean','310qVQgLF','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','causeCode','path','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','pageId','Batch\x20delete\x20request\x20for\x20menu\x20','target','validation','menu','595026FwzrQR','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','unknown','plan\x20delete','batch-delete','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','remainingIds','resources','batch\x20delete','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','menu_tree_invalid','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','menus','page\x20','5638700uveSps','resourcesValid','string','bool','causeMessage','absentIds','\x20references\x20missing\x20child\x20','\x20and\x20cannot\x20be\x20deleted\x20safely.','):\x20','menu_verification_failed','Menu\x20','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','snapshot','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','\x20still\x20references\x20','hash','69976hNrgfv','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','byId','delete','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','verification','782172fJwJDS','216992vXgPEB','unconfirmed','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','batch-delete-menu','length','Post-mismatch\x20menu\x20readback\x20failed\x20(','message','menu_delete_page_bound','expiresAt','get','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','rabetbase\x20menu\x20list\x20--format\x20json','menu_page_shared','recursive','menu_non_empty'];a116_0x2416=function(){return _0x48b7f6;};return a116_0x2416();}
@@ -1 +1 @@
1
- function a117_0x1958(_0x4915f3,_0x3acdbc){_0x4915f3=_0x4915f3-0x97;const _0x268af=a117_0x268a();let _0x19585e=_0x268af[_0x4915f3];return _0x19585e;}function a117_0x268a(){const _0x3020cf=['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','hash','5RCBOfL','533066NBQPBR','includes','protocol','expectedPath','currentSnapshotHash','url','create-response-validation','code','appCode','\x20failed\x20final\x20verification.','rabetbase\x20menu\x20list\x20--appcode\x20','\x27\x5c\x27\x27','\x20has\x20an\x20unexpected\x20','before','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','rawerror','create','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','data','plannedActions','failed','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','filter','276tRaedD','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Created\x20external\x20menu\x20','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','\x20with\x20','menu_sort_invalid','sort','link','/smartapi/menu/create','get','prototype','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','lookupCommand','\x20has\x20an\x20unexpected\x20generated\x20path.','stringify','Would\x20create\x20external\x20website\x20link\x20menu\x20','menu_permission_denied','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','snapshot','https:','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','body','trim','Provide\x20an\x20HTTPS\x20URL.','cookie','menus','succeeded','External\x20HTTPS\x20URL','add','replace','type','Menu\x20label','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','create-menu','menu_mutation_failed','flagMissing','after','parent-id','causemessage','parentId','iframe','path','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','readbackerror','menu_create_response_invalid','49ttmiZk','Recovered\x20menu\x20','username','toLowerCase','label','map','568592dmlJGP','Menu\x20','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','URL','object','menu','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','pre-write-recheck','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','open-mode','18720400rTOcWZ','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','boolean','str','External\x20menu\x20creation\x20failed.','verification','create\x20external\x20menu','6383994RmUYIc','<redacted>','10155jsZyjr','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','menu_url_https_required','menu_not_found','visibility','embedded','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','3885516SdAExs','5807106fPLdMD','menu\x20list','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Created\x20menu\x20','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','recovered','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','afterPlan','Create\x20an\x20external\x20website\x20link\x20menu','byId','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','plan','menu_create_recovery_required','create-recovery','menu_url_invalid','Run\x20','createdId','length','expectedSnapshotHash','visible','\x20could\x20not\x20be\x20verified.','POST','\x20after\x20response\x20loss.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','string','menu_open_mode_invalid','call','menu_parent_not_folder','menu_verification_failed','Whether\x20the\x20menu\x20is\x20visible','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','isSafeInteger','isArray','selector'];a117_0x268a=function(){return _0x3020cf;};return a117_0x268a();}const a117_0x580f87=a117_0x1958;(function(_0x2f99ed,_0x41c20f){const _0x857b70=a117_0x1958,_0x1750ca=_0x2f99ed();while(!![]){try{const _0x563b44=-parseInt(_0x857b70(0x102))/0x1*(-parseInt(_0x857b70(0x103))/0x2)+parseInt(_0x857b70(0xdd))/0x3+-parseInt(_0x857b70(0x11c))/0x4*(parseInt(_0x857b70(0xd6))/0x5)+-parseInt(_0x857b70(0xd4))/0x6+parseInt(_0x857b70(0xbd))/0x7*(parseInt(_0x857b70(0xc3))/0x8)+parseInt(_0x857b70(0xde))/0x9+-parseInt(_0x857b70(0xcd))/0xa;if(_0x563b44===_0x41c20f)break;else _0x1750ca['push'](_0x1750ca['shift']());}catch(_0x5e722c){_0x1750ca['push'](_0x1750ca['shift']());}}}(a117_0x268a,0xa988b));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':a117_0x580f87(0xb8),'new-window':a117_0x580f87(0x123)};export function validateExternalMenuUrl(_0x5ade33){const _0x4bdd72=a117_0x580f87,_0x5eabb1=_0x5ade33[_0x4bdd72(0xa6)]();let _0xc7cee7;try{_0xc7cee7=new URL(_0x5eabb1);}catch{throw menuError(_0x4bdd72(0xec),_0x4bdd72(0xfc),_0x4bdd72(0xcb));}if(_0xc7cee7[_0x4bdd72(0x105)]!==_0x4bdd72(0xa3))throw menuError(_0x4bdd72(0xd8),_0x4bdd72(0x9a),_0x4bdd72(0xa7));if(_0xc7cee7[_0x4bdd72(0xbf)]||_0xc7cee7['password'])throw menuError('menu_url_credentials_forbidden',_0x4bdd72(0xe0),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x5eabb1;}export const menuExternalLinkCreate={'service':a117_0x580f87(0xc8),'command':'external-link-create','description':a117_0x580f87(0xe6),'risk':'write','structuredErrors':!![],'flags':[{'name':a117_0x580f87(0xc1),'type':a117_0x580f87(0xf6),'required':!![],'description':a117_0x580f87(0xaf)},{'name':'open-mode','type':a117_0x580f87(0xf6),'required':!![],'enum':[a117_0x580f87(0xdb),'new-window'],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a117_0x580f87(0x108),'type':a117_0x580f87(0xf6),'required':!![],'description':a117_0x580f87(0xab)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a117_0x580f87(0xf1),'type':a117_0x580f87(0xcf),'default':!![],'description':a117_0x580f87(0xfb)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1f12cd){validateAddInput(_0x1f12cd);},async 'dryRun'(_0x3da254){const _0x29df46=a117_0x580f87;validateAddInput(_0x3da254);const {plan:_0x38dab5}=await buildSafeAddPlan(_0x3da254,!![]),_0x26f367=_0x38dab5[_0x29df46(0xb4)],_0x400e45=createBody(_0x26f367);return menuDryRunResult(_0x38dab5,{'method':_0x29df46(0xf3),'url':_0x29df46(0x97),'body':_0x400e45,'description':_0x29df46(0x9e)+JSON[_0x29df46(0x9d)](_0x26f367[_0x29df46(0xc1)])+_0x29df46(0x120)+_0x3da254[_0x29df46(0xd0)](_0x29df46(0xcc))+_0x29df46(0xe4)});},async 'execute'(_0x25c75c){const _0x2fd734=a117_0x580f87;validateAddInput(_0x25c75c);const _0x4a14bb=await buildSafeAddPlan(_0x25c75c,![]),{plan:_0x26aacc,snapshot:_0x371118}=_0x4a14bb,_0x3f6408=_0x26aacc[_0x2fd734(0xb4)],_0x48596e=buildMenuLookupCommand(_0x25c75c[_0x2fd734(0x10b)]);await recheckAddSnapshot(_0x25c75c,_0x26aacc);let _0x2d0138;try{_0x2d0138=await createMenuEntity(_0x25c75c['appCode'],_0x25c75c['cookie'],createBody(_0x3f6408));}catch(_0x50f084){const _0x5bb2d4=mapMenuApiError(_0x50f084,_0x2fd734(0xd3));if(!isMenuResponseLoss(_0x50f084)||_0x5bb2d4[_0x2fd734(0x10a)]===_0x2fd734(0x9f))throw externalLinkCreateFailure(_0x5bb2d4,_0x26aacc,{'stage':_0x2fd734(0x113),'failed':{},'verification':{'status':_0x2fd734(0x119),'lookupCommand':_0x48596e}});return recoverAfterResponseLoss(_0x25c75c,_0x4a14bb,_0x48596e);}const _0x13684e=Number(_0x2d0138?.['id']),_0x3654f7=typeof _0x2d0138?.['path']===_0x2fd734(0xf6)?_0x2d0138['path']:'';if(!Number[_0x2fd734(0xfd)](_0x13684e)||_0x13684e<=0x0||!_0x3654f7[_0x2fd734(0xa6)]()){const _0x203f66=menuError(_0x2fd734(0xbc),_0x2fd734(0xc5),_0x2fd734(0xed)+_0x48596e+_0x2fd734(0x116));throw externalLinkCreateFailure(_0x203f66,_0x26aacc,{'stage':_0x2fd734(0x109),'succeeded':Number[_0x2fd734(0xfd)](_0x13684e)&&_0x13684e>0x0?[{'id':_0x13684e,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x13684e)?_0x13684e:null,'generatedPathConfirmed':Boolean(_0x3654f7[_0x2fd734(0xa6)]())},'warnings':[_0x2fd734(0x11f)],'after':Number[_0x2fd734(0xfd)](_0x13684e)&&_0x13684e>0x0?{..._0x3f6408,'id':_0x13684e,'path':_0x3654f7}:_0x3f6408,'verification':{'status':_0x2fd734(0x119),'lookupCommand':_0x48596e,...Number['isSafeInteger'](_0x13684e)&&_0x13684e>0x0?{'targetId':_0x13684e}:{}}});}const _0x978521=await readAndVerifyCreatedMenu({'appCode':_0x25c75c[_0x2fd734(0x10b)],'cookie':_0x25c75c[_0x2fd734(0xa8)],'plan':_0x26aacc,'afterPlan':_0x3f6408,'createdId':_0x13684e,'expectedPath':_0x3654f7,'lookupCommand':_0x48596e,'recovered':![]});return creationSuccess(_0x26aacc,_0x978521[_0x2fd734(0xa2)],_0x978521['fact'],![]);}};function validateAddInput(_0x128747){const _0x1c81fd=a117_0x580f87;if(!_0x128747[_0x1c81fd(0xd0)](_0x1c81fd(0xc1))['trim']())throw CliErrors[_0x1c81fd(0xb3)](_0x1c81fd(0xc1));resolveExternalMenuType(_0x128747),validateExternalMenuUrl(_0x128747[_0x1c81fd(0xd0)](_0x1c81fd(0x108))),parseParentId(_0x128747,_0x1c81fd(0xb5)),validateSort(_0x128747);}function resolveExternalMenuType(_0x42f3bf){const _0x1deb32=a117_0x580f87,_0x455436=_0x42f3bf[_0x1deb32(0xd0)](_0x1deb32(0xcc))['trim']();if(!_0x455436)throw CliErrors[_0x1deb32(0xb3)](_0x1deb32(0xcc));const _0x276c3a=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x455436];if(!_0x276c3a)throw menuError(_0x1deb32(0xf7),_0x1deb32(0xce),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x276c3a;}async function buildAddPlan(_0x40b7ec,_0x4824ea){const _0x4fd3bf=a117_0x580f87,_0x3b2426=await fetchMutationSnapshot(_0x40b7ec,_0x4fd3bf(0xd3)),_0x2b6fc7=parseParentId(_0x40b7ec,_0x4fd3bf(0xb5))??null;if(_0x2b6fc7!=null)requireFolder(_0x3b2426,_0x2b6fc7);const _0x186910=validateSort(_0x40b7ec),_0x336e3f=_0x186910??nextSiblingSort(_0x3b2426,_0x2b6fc7,_0x4fd3bf(0xc8)),_0x35cb73=_0x40b7ec['str']('label')['trim'](),_0x268166=resolveExternalMenuType(_0x40b7ec),_0x23be83=validateExternalMenuUrl(_0x40b7ec[_0x4fd3bf(0xd0)](_0x4fd3bf(0x108))),_0x52f447=Object[_0x4fd3bf(0x99)]['hasOwnProperty'][_0x4fd3bf(0xf8)](_0x40b7ec['rawFlags'],'visible')?_0x40b7ec['bool'](_0x4fd3bf(0xf1)):!![],_0x5556c0={'id':null,'parentId':_0x2b6fc7,'label':_0x35cb73,'path':'<platform-generated>','url':_0x23be83,'type':_0x268166,'visible':_0x52f447,'sort':_0x336e3f},_0x235720=buildMenuLookupCommand(_0x40b7ec['appCode']),_0x49c0b4=mutationResult({'operation':_0x4fd3bf(0xac),'selector':{'parentId':_0x2b6fc7,'type':_0x268166,'label':_0x35cb73,'url':_0x23be83},'before':null,'after':_0x5556c0,'dryRun':_0x4824ea,'backend':[{'method':_0x4fd3bf(0xf3),'path':_0x4fd3bf(0x97)}],'plannedActions':[{'stage':_0x4fd3bf(0xb1),'method':_0x4fd3bf(0xf3),'path':_0x4fd3bf(0x97),'body':createBody(_0x5556c0)}],'snapshotHash':_0x3b2426[_0x4fd3bf(0x101)],'warnings':[_0x4fd3bf(0xb0)],'verification':{'lookupCommand':_0x235720}});return{'plan':_0x49c0b4,'snapshot':_0x3b2426};}async function buildSafeAddPlan(_0x7e5720,_0x3a5b70){try{return await buildAddPlan(_0x7e5720,_0x3a5b70);}catch(_0x26cfec){throw safeMenuAddError(_0x26cfec);}}async function recheckAddSnapshot(_0x3438af,_0x574b00){const _0x12d6b9=a117_0x580f87;try{await recheckMutationSnapshot(_0x3438af,_0x574b00,'create\x20external\x20menu');}catch(_0x103a60){const _0x16aa65=getFailureRecord(_0x103a60);throw externalLinkCreateFailure(_0x103a60,_0x574b00,{'stage':_0x12d6b9(0xca),'failed':{..._0x16aa65?.[_0x12d6b9(0xf0)]?{'expectedSnapshotHash':_0x16aa65[_0x12d6b9(0xf0)]}:{},..._0x16aa65?.['currentSnapshotHash']?{'currentSnapshotHash':_0x16aa65[_0x12d6b9(0x107)]}:{}}});}}function createBody(_0x3cf475){const _0x669395=a117_0x580f87;return{'parentId':toApiParentId(_0x3cf475[_0x669395(0xb7)]),'label':String(_0x3cf475['label']),'type':String(_0x3cf475[_0x669395(0xae)]),'url':String(_0x3cf475[_0x669395(0x108)]),'visible':Boolean(_0x3cf475[_0x669395(0xf1)]),'sort':Number(_0x3cf475[_0x669395(0x122)]),'extend':{}};}function buildMenuLookupCommand(_0x3b5fed){const _0x5a53fd=a117_0x580f87,_0x3a02c0='\x27'+_0x3b5fed[_0x5a53fd(0xad)](/'/g,_0x5a53fd(0x10e))+'\x27';return _0x5a53fd(0x10d)+_0x3a02c0+'\x20--format\x20compress';}async function recoverAfterResponseLoss(_0xf22d64,_0x227cde,_0x5e13e3){const _0x3c104a=a117_0x580f87,{plan:_0x548c9a,snapshot:_0x49e333}=_0x227cde,_0x1d1aef=_0x548c9a['after'];let _0x1a19c5;try{_0x1a19c5=await fetchMenuSnapshot(_0xf22d64[_0x3c104a(0x10b)],_0xf22d64[_0x3c104a(0xa8)]);}catch(_0x7cfbf0){throw recoveryRequiredFailure(_0x548c9a,_0x5e13e3,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x24f1ba=_0x1a19c5[_0x3c104a(0xa9)][_0x3c104a(0x11b)](_0x3ac7ff=>_0x3ac7ff[_0x3c104a(0xb7)]===_0x1d1aef[_0x3c104a(0xb7)]&&_0x3ac7ff[_0x3c104a(0xae)]===_0x1d1aef[_0x3c104a(0xae)]&&_0x3ac7ff[_0x3c104a(0xc1)]===_0x1d1aef[_0x3c104a(0xc1)]&&_0x3ac7ff['url']===_0x1d1aef['url']),_0x4db06a=_0x24f1ba['filter'](_0x1e6bd9=>!_0x49e333[_0x3c104a(0xe7)]['has'](_0x1e6bd9['id'])),_0x30357c=_0x24f1ba[_0x3c104a(0x11b)](_0x1bb072=>_0x49e333[_0x3c104a(0xe7)]['has'](_0x1bb072['id']));if(_0x24f1ba[_0x3c104a(0xef)]!==0x1||_0x4db06a[_0x3c104a(0xef)]!==0x1)throw recoveryRequiredFailure(_0x548c9a,_0x5e13e3,{'matchCount':_0x24f1ba['length'],'newMatchCount':_0x4db06a[_0x3c104a(0xef)],'preexistingMatchCount':_0x30357c[_0x3c104a(0xef)]});const _0x140d7d=_0x4db06a[0x0];try{verifyCreatedFact(_0x140d7d,_0x140d7d['id'],_0x1d1aef,null);}catch(_0x216705){const _0x1be5b9=_0x216705 instanceof Error&&_0x3c104a(0x10a)in _0x216705?_0x216705:menuError('menu_verification_failed',_0x3c104a(0xbe)+_0x140d7d['id']+_0x3c104a(0xf2),'Run\x20'+_0x5e13e3+_0x3c104a(0x111));throw externalLinkCreateFailure(_0x1be5b9,_0x548c9a,{'stage':_0x3c104a(0xd2),'succeeded':[{'id':_0x140d7d['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x140d7d['id'],'finalFactsConfirmed':![]},'after':_0x140d7d,'warnings':[_0x3c104a(0xc4)+_0x140d7d['id']+_0x3c104a(0x11a)],'verification':{'status':_0x3c104a(0x119),'targetId':_0x140d7d['id'],'recovered':!![],'lookupCommand':_0x5e13e3}});}return creationSuccess(_0x548c9a,_0x1a19c5,_0x140d7d,!![]);}function recoveryRequiredFailure(_0x29c522,_0x14fe35,_0x329e9){const _0x6ea1b2=a117_0x580f87,_0x3b4bd9=menuError(_0x6ea1b2(0xea),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.',_0x6ea1b2(0xed)+_0x14fe35+_0x6ea1b2(0xa0));return externalLinkCreateFailure(_0x3b4bd9,_0x29c522,{'stage':_0x6ea1b2(0xeb),'failed':_0x329e9,'warnings':[_0x6ea1b2(0x100)],'verification':{'status':_0x6ea1b2(0x119),..._0x329e9,'lookupCommand':_0x14fe35}});}async function readAndVerifyCreatedMenu(_0x57d755){const _0x50a218=a117_0x580f87;let _0x1e19f2;try{_0x1e19f2=await fetchMenuSnapshot(_0x57d755['appCode'],_0x57d755[_0x50a218(0xa8)]);}catch(_0x116047){const _0x3b1e0d=menuError(_0x50a218(0xfa),_0x50a218(0xc4)+_0x57d755[_0x50a218(0xee)]+_0x50a218(0xe2),_0x50a218(0xed)+_0x57d755['lookupCommand']+_0x50a218(0x114));throw externalLinkCreateFailure(_0x3b1e0d,_0x57d755['plan'],{'stage':_0x50a218(0xd2),'succeeded':[{'id':_0x57d755[_0x50a218(0xee)],'created':!![]}],'failed':{'id':_0x57d755['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x57d755[_0x50a218(0xe5)],'id':_0x57d755['createdId'],'path':_0x57d755[_0x50a218(0x106)]},'warnings':[_0x50a218(0xc4)+_0x57d755[_0x50a218(0xee)]+_0x50a218(0xdc)],'verification':{'status':_0x50a218(0x119),'targetId':_0x57d755[_0x50a218(0xee)],'lookupCommand':_0x57d755[_0x50a218(0x9b)]}});}const _0xd9683=_0x1e19f2[_0x50a218(0xe7)][_0x50a218(0x98)](_0x57d755[_0x50a218(0xee)]);try{if(!_0xd9683)throw menuError(_0x50a218(0xfa),_0x50a218(0xe1)+_0x57d755[_0x50a218(0xee)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x50a218(0xed)+_0x57d755[_0x50a218(0x9b)]+_0x50a218(0x114));verifyCreatedFact(_0xd9683,_0x57d755[_0x50a218(0xee)],_0x57d755[_0x50a218(0xe5)],_0x57d755[_0x50a218(0x106)]);}catch(_0xe22f8c){const _0x3dd536=_0xe22f8c instanceof Error&&'code'in _0xe22f8c?_0xe22f8c:menuError(_0x50a218(0xfa),_0x50a218(0xe1)+_0x57d755[_0x50a218(0xee)]+_0x50a218(0x10c),'Run\x20'+_0x57d755[_0x50a218(0x9b)]+_0x50a218(0x114));throw externalLinkCreateFailure(_0x3dd536,_0x57d755[_0x50a218(0xe9)],{'stage':_0x50a218(0xd2),'succeeded':[{'id':_0x57d755[_0x50a218(0xee)],'created':!![]}],'failed':{'id':_0x57d755[_0x50a218(0xee)],'finalFactsConfirmed':![]},'after':_0xd9683??{..._0x57d755[_0x50a218(0xe5)],'id':_0x57d755['createdId'],'path':_0x57d755['expectedPath']},'warnings':['Menu\x20'+_0x57d755[_0x50a218(0xee)]+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x50a218(0x119),'targetId':_0x57d755[_0x50a218(0xee)],'recovered':_0x57d755[_0x50a218(0xe3)],'lookupCommand':_0x57d755['lookupCommand']}});}return{'snapshot':_0x1e19f2,'fact':_0xd9683};}function verifyCreatedFact(_0x9dd056,_0x413eb2,_0x3a407e,_0xcdc08a){const _0x120b00=a117_0x580f87;if(!Number[_0x120b00(0xfd)](_0x9dd056['id'])||_0x9dd056['id']<=0x0||_0x9dd056['id']!==_0x413eb2)throw menuError(_0x120b00(0xfa),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x120b00(0xc9));const _0xcb1c2f=[['parent',_0x9dd056[_0x120b00(0xb7)],_0x3a407e[_0x120b00(0xb7)]],[_0x120b00(0xae),_0x9dd056['type'],_0x3a407e['type']],[_0x120b00(0xc1),_0x9dd056[_0x120b00(0xc1)],_0x3a407e[_0x120b00(0xc1)]],[_0x120b00(0xc6),_0x9dd056['url'],_0x3a407e[_0x120b00(0x108)]],[_0x120b00(0xda),_0x9dd056['visible'],_0x3a407e['visible']],[_0x120b00(0x122),_0x9dd056['sort'],_0x3a407e[_0x120b00(0x122)]]];for(const [_0x44af2e,_0x58982d,_0x4366ab]of _0xcb1c2f){if(_0x58982d!==_0x4366ab)throw menuError(_0x120b00(0xfa),'Created\x20menu\x20'+_0x9dd056['id']+_0x120b00(0x10f)+_0x44af2e+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x9dd056[_0x120b00(0xb9)]['trim']()||_0xcdc08a!==null&&_0x9dd056[_0x120b00(0xb9)]!==_0xcdc08a)throw menuError(_0x120b00(0xfa),_0x120b00(0xe1)+_0x9dd056['id']+_0x120b00(0x9c),_0x120b00(0xa4));}function creationSuccess(_0x5f0e93,_0x1d4623,_0x537ec6,_0x525e04){const _0x538758=a117_0x580f87,_0x1da14a=mutationResult({..._0x5f0e93,'after':_0x537ec6,'dryRun':![],'succeeded':[{'id':_0x537ec6['id'],'created':!![],'recovered':_0x525e04}],'verification':{'checkedBy':_0x538758(0xdf),'snapshotHash':_0x1d4623[_0x538758(0x101)],'targetId':_0x537ec6['id'],'recovered':_0x525e04,'path':_0x537ec6[_0x538758(0xb9)]}});return{'ok':!![],'message':_0x525e04?'Recovered\x20created\x20external\x20menu\x20'+_0x537ec6['id']+_0x538758(0xf4):_0x538758(0x11e)+_0x537ec6['id']+'.','data':{..._0x1da14a,'recovered':_0x525e04}};}function externalLinkCreateFailure(_0x51f844,_0x182a9c,_0x17a115){const _0x25f5df=a117_0x580f87;return menuFailure(safeMenuAddError(_0x51f844),redactFailurePlan(_0x182a9c),{..._0x17a115,'succeeded':_0x17a115[_0x25f5df(0xaa)]?.[_0x25f5df(0xc2)](redactFailureRecord),'failed':_0x17a115[_0x25f5df(0x119)]?redactFailureRecord(_0x17a115[_0x25f5df(0x119)]):undefined,'verification':_0x17a115[_0x25f5df(0xd2)]?redactFailureRecord(_0x17a115['verification']):undefined,'after':_0x17a115[_0x25f5df(0xb4)]===undefined?undefined:redactFailureValue(_0x17a115[_0x25f5df(0xb4)])});}function redactFailurePlan(_0x25081a){const _0x1295a3=a117_0x580f87;return{..._0x25081a,'selector':redactFailureRecord(_0x25081a[_0x1295a3(0xff)]),'before':redactFailureValue(_0x25081a[_0x1295a3(0x110)]),'after':redactFailureValue(_0x25081a['after']),'plannedActions':_0x25081a[_0x1295a3(0x118)]?.[_0x1295a3(0xc2)](_0x43f6b9=>({..._0x43f6b9,'body':redactFailureRecord(_0x43f6b9[_0x1295a3(0xa5)])})),'succeeded':_0x25081a['succeeded'][_0x1295a3(0xc2)](redactFailureRecord),'failed':_0x25081a[_0x1295a3(0x119)][_0x1295a3(0xc2)](redactFailureRecord),'verification':_0x25081a[_0x1295a3(0xd2)]?redactFailureRecord(_0x25081a[_0x1295a3(0xd2)]):undefined};}function redactFailureRecord(_0x4f3eec){return redactFailureValue(_0x4f3eec);}function redactFailureValue(_0x1cf32f,_0x4fbe00=''){const _0x586648=a117_0x580f87,_0x49b1b7=_0x4fbe00[_0x586648(0xc0)]()[_0x586648(0xad)](/[^a-z0-9]/g,'');if(['cause',_0x586648(0xb6),_0x586648(0xbb),_0x586648(0x112)][_0x586648(0x104)](_0x49b1b7))return _0x586648(0xd5);if(Array[_0x586648(0xfe)](_0x1cf32f))return _0x1cf32f['map'](_0x3a052d=>redactFailureValue(_0x3a052d));if(_0x1cf32f&&typeof _0x1cf32f===_0x586648(0xc7))return Object['fromEntries'](Object['entries'](_0x1cf32f)[_0x586648(0xc2)](([_0x39e326,_0x3abe32])=>[_0x39e326,redactFailureValue(_0x3abe32,_0x39e326)]));return _0x1cf32f;}function safeMenuAddError(_0x107fd1){const _0x2cbe12=a117_0x580f87,_0x2dc122=_0x107fd1 instanceof CliError?_0x107fd1[_0x2cbe12(0x10a)]:_0x2cbe12(0xb2);switch(_0x2dc122){case'menu_state_drift':return menuError(_0x2dc122,_0x2cbe12(0x11d),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.');case'menu_permission_denied':return menuError(_0x2dc122,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.',_0x2cbe12(0xe8));case _0x2cbe12(0xbc):return menuError(_0x2dc122,_0x2cbe12(0xa1),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x2cbe12(0xfa):return menuError(_0x2dc122,_0x2cbe12(0xba),_0x2cbe12(0xf5));case _0x2cbe12(0xea):return menuError(_0x2dc122,_0x2cbe12(0xd7),_0x2cbe12(0x115));case _0x2cbe12(0xb2):case _0x2cbe12(0xd9):case _0x2cbe12(0xf9):case _0x2cbe12(0x121):case'menu_sort_overflow':return menuError(_0x2dc122,_0x2cbe12(0xd1),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0x2cbe12(0xb2),_0x2cbe12(0xd1),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x2fe040){const _0x576a64=a117_0x580f87;if(!(_0x2fe040 instanceof Error)||!(_0x576a64(0x117)in _0x2fe040))return undefined;const _0x11c730=_0x2fe040[_0x576a64(0x117)];if(!_0x11c730||typeof _0x11c730!==_0x576a64(0xc7))return undefined;const _0x215814=_0x11c730[_0x576a64(0x119)];if(!Array[_0x576a64(0xfe)](_0x215814)||!_0x215814[0x0]||typeof _0x215814[0x0]!==_0x576a64(0xc7))return undefined;return _0x215814[0x0];}
1
+ const a117_0x3ecd53=a117_0x314e;(function(_0x5514cd,_0x4878ee){const _0x43d6b4=a117_0x314e,_0x4469b8=_0x5514cd();while(!![]){try{const _0x521a7d=parseInt(_0x43d6b4(0x12d))/0x1+-parseInt(_0x43d6b4(0x135))/0x2+parseInt(_0x43d6b4(0xd0))/0x3*(parseInt(_0x43d6b4(0xb6))/0x4)+parseInt(_0x43d6b4(0x110))/0x5*(parseInt(_0x43d6b4(0x12b))/0x6)+parseInt(_0x43d6b4(0xf8))/0x7*(parseInt(_0x43d6b4(0x11e))/0x8)+parseInt(_0x43d6b4(0xe6))/0x9*(parseInt(_0x43d6b4(0xb2))/0xa)+-parseInt(_0x43d6b4(0xdb))/0xb;if(_0x521a7d===_0x4878ee)break;else _0x4469b8['push'](_0x4469b8['shift']());}catch(_0x54495a){_0x4469b8['push'](_0x4469b8['shift']());}}}(a117_0x2c84,0xc16f7));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';function a117_0x314e(_0x9599f3,_0x366620){_0x9599f3=_0x9599f3-0xae;const _0x2c8499=a117_0x2c84();let _0x314ee7=_0x2c8499[_0x9599f3];return _0x314ee7;}function a117_0x2c84(){const _0x5a86ca=['Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','data','\x20has\x20an\x20unexpected\x20generated\x20path.','readbackerror','code','Recovered\x20menu\x20','menu_create_recovery_required','menu_url_credentials_forbidden','parentId','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','rabetbase\x20menu\x20list\x20--appcode\x20','Create\x20an\x20external\x20website\x20link\x20menu','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','\x20with\x20','get','boolean','expectedPath','16285FcoWvq','parent-id','menu_create_response_invalid','type','has','password','link','stringify','url','visible','length','Run\x20','menu_sort_overflow','isArray','9666376VPqPcU','menu_parent_not_folder','menu_sort_invalid','sort','appCode','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','call','afterPlan','trim','map','currentSnapshotHash','string','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','210jTigOt','label','938735oMlWNk','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','snapshot','/smartapi/menu/create','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','create-menu','menu_open_mode_invalid','Whether\x20the\x20menu\x20is\x20visible','2824272QRyiHq','Menu\x20label','menu_state_drift','expectedSnapshotHash','hasOwnProperty','createdId','replace','menu_verification_failed','\x20failed\x20final\x20verification.','\x27\x5c\x27\x27','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','2480BJHknk','succeeded','menu_permission_denied','Provide\x20an\x20HTTPS\x20URL.','116mhHQXn','selector','POST','External\x20HTTPS\x20URL','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','URL','filter','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','hash','rawFlags','username','open-mode','fromEntries','pre-write-recheck','recovered','new-window','embedded','path','<redacted>','isSafeInteger','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','lookupCommand','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','visibility','add','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','163623ShGljz','verification','<platform-generated>','External\x20menu\x20creation\x20failed.','menu','plannedActions','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','failed','menu_url_invalid','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','31434535wrgDEW','fact','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Would\x20create\x20external\x20website\x20link\x20menu\x20','before','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','create\x20external\x20menu','str','object','after','44253mGMsYz','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','create','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','body','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','byId','Menu\x20','How\x20to\x20open\x20the\x20external\x20website','\x20has\x20an\x20unexpected\x20','menu_mutation_failed','bool','flagMissing','includes','\x20could\x20not\x20be\x20verified.','Created\x20menu\x20','toLowerCase','7LfZklX','plan','parent','cookie','external-link-create'];a117_0x2c84=function(){return _0x5a86ca;};return a117_0x2c84();}import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':a117_0x3ecd53(0x116)};export function validateExternalMenuUrl(_0x1a80e4){const _0x105390=a117_0x3ecd53,_0x5a5948=_0x1a80e4[_0x105390(0x126)]();let _0x4c67c4;try{_0x4c67c4=new URL(_0x5a5948);}catch{throw menuError(_0x105390(0xd8),_0x105390(0xd9),_0x105390(0xcf));}if(_0x4c67c4['protocol']!=='https:')throw menuError('menu_url_https_required','External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0x105390(0xb5));if(_0x4c67c4[_0x105390(0xc0)]||_0x4c67c4[_0x105390(0x115)])throw menuError(_0x105390(0x105),_0x105390(0x131),_0x105390(0xd6));return _0x5a5948;}export const menuExternalLinkCreate={'service':a117_0x3ecd53(0xd4),'command':a117_0x3ecd53(0xfc),'description':a117_0x3ecd53(0x109),'risk':'write','structuredErrors':!![],'flags':[{'name':a117_0x3ecd53(0x12c),'type':a117_0x3ecd53(0x129),'required':!![],'description':a117_0x3ecd53(0x136)},{'name':a117_0x3ecd53(0xc1),'type':a117_0x3ecd53(0x129),'required':!![],'enum':[a117_0x3ecd53(0xc6),a117_0x3ecd53(0xc5)],'description':a117_0x3ecd53(0xef)},{'name':a117_0x3ecd53(0x118),'type':a117_0x3ecd53(0x129),'required':!![],'description':a117_0x3ecd53(0xb9)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a117_0x3ecd53(0x119),'type':a117_0x3ecd53(0x10e),'default':!![],'description':a117_0x3ecd53(0x134)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x571d9d){validateAddInput(_0x571d9d);},async 'dryRun'(_0x1fd005){const _0x357812=a117_0x3ecd53;validateAddInput(_0x1fd005);const {plan:_0x6b301b}=await buildSafeAddPlan(_0x1fd005,!![]),_0x57342a=_0x6b301b[_0x357812(0xe5)],_0x5444b5=createBody(_0x57342a);return menuDryRunResult(_0x6b301b,{'method':_0x357812(0xb8),'url':_0x357812(0x130),'body':_0x5444b5,'description':_0x357812(0xdf)+JSON[_0x357812(0x117)](_0x57342a[_0x357812(0x12c)])+_0x357812(0x10c)+_0x1fd005['str'](_0x357812(0xc1))+_0x357812(0x12e)});},async 'execute'(_0x33b394){const _0x58be3f=a117_0x3ecd53;validateAddInput(_0x33b394);const _0x18d2b1=await buildSafeAddPlan(_0x33b394,![]),{plan:_0x44bbc8,snapshot:_0x2bc29d}=_0x18d2b1,_0x42f265=_0x44bbc8['after'],_0x31887c=buildMenuLookupCommand(_0x33b394['appCode']);await recheckAddSnapshot(_0x33b394,_0x44bbc8);let _0x54e8e3;try{_0x54e8e3=await createMenuEntity(_0x33b394[_0x58be3f(0x122)],_0x33b394[_0x58be3f(0xfb)],createBody(_0x42f265));}catch(_0x5cfa17){const _0x24baae=mapMenuApiError(_0x5cfa17,_0x58be3f(0xe2));if(!isMenuResponseLoss(_0x5cfa17)||_0x24baae['code']==='menu_permission_denied')throw externalLinkCreateFailure(_0x24baae,_0x44bbc8,{'stage':_0x58be3f(0xe8),'failed':{},'verification':{'status':'failed','lookupCommand':_0x31887c}});return recoverAfterResponseLoss(_0x33b394,_0x18d2b1,_0x31887c);}const _0x443a89=Number(_0x54e8e3?.['id']),_0x3ddf12=typeof _0x54e8e3?.[_0x58be3f(0xc7)]==='string'?_0x54e8e3[_0x58be3f(0xc7)]:'';if(!Number[_0x58be3f(0xc9)](_0x443a89)||_0x443a89<=0x0||!_0x3ddf12['trim']()){const _0x25880c=menuError('menu_create_response_invalid',_0x58be3f(0xba),'Run\x20'+_0x31887c+_0x58be3f(0x107));throw externalLinkCreateFailure(_0x25880c,_0x44bbc8,{'stage':'create-response-validation','succeeded':Number[_0x58be3f(0xc9)](_0x443a89)&&_0x443a89>0x0?[{'id':_0x443a89,'created':!![]}]:[],'failed':{'createdId':Number[_0x58be3f(0xc9)](_0x443a89)?_0x443a89:null,'generatedPathConfirmed':Boolean(_0x3ddf12[_0x58be3f(0x126)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number[_0x58be3f(0xc9)](_0x443a89)&&_0x443a89>0x0?{..._0x42f265,'id':_0x443a89,'path':_0x3ddf12}:_0x42f265,'verification':{'status':_0x58be3f(0xd7),'lookupCommand':_0x31887c,...Number['isSafeInteger'](_0x443a89)&&_0x443a89>0x0?{'targetId':_0x443a89}:{}}});}const _0x5531f4=await readAndVerifyCreatedMenu({'appCode':_0x33b394[_0x58be3f(0x122)],'cookie':_0x33b394[_0x58be3f(0xfb)],'plan':_0x44bbc8,'afterPlan':_0x42f265,'createdId':_0x443a89,'expectedPath':_0x3ddf12,'lookupCommand':_0x31887c,'recovered':![]});return creationSuccess(_0x44bbc8,_0x5531f4[_0x58be3f(0x12f)],_0x5531f4[_0x58be3f(0xdc)],![]);}};function validateAddInput(_0x30189c){const _0x1f76fc=a117_0x3ecd53;if(!_0x30189c[_0x1f76fc(0xe3)]('label')[_0x1f76fc(0x126)]())throw CliErrors[_0x1f76fc(0xf3)]('label');resolveExternalMenuType(_0x30189c),validateExternalMenuUrl(_0x30189c[_0x1f76fc(0xe3)](_0x1f76fc(0x118))),parseParentId(_0x30189c,_0x1f76fc(0x111)),validateSort(_0x30189c);}function resolveExternalMenuType(_0x2d9100){const _0x1fe056=a117_0x3ecd53,_0x362042=_0x2d9100['str'](_0x1fe056(0xc1))[_0x1fe056(0x126)]();if(!_0x362042)throw CliErrors[_0x1fe056(0xf3)](_0x1fe056(0xc1));const _0x19d0aa=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x362042];if(!_0x19d0aa)throw menuError(_0x1fe056(0x133),_0x1fe056(0x10b),_0x1fe056(0xaf));return _0x19d0aa;}async function buildAddPlan(_0x199a6a,_0x3028d1){const _0x5a4d51=a117_0x3ecd53,_0x33d6b2=await fetchMutationSnapshot(_0x199a6a,_0x5a4d51(0xe2)),_0x472468=parseParentId(_0x199a6a,_0x5a4d51(0x111))??null;if(_0x472468!=null)requireFolder(_0x33d6b2,_0x472468);const _0x3b3875=validateSort(_0x199a6a),_0x32d59b=_0x3b3875??nextSiblingSort(_0x33d6b2,_0x472468,_0x5a4d51(0xd4)),_0x1b500f=_0x199a6a[_0x5a4d51(0xe3)](_0x5a4d51(0x12c))[_0x5a4d51(0x126)](),_0x3e9a9a=resolveExternalMenuType(_0x199a6a),_0xad5334=validateExternalMenuUrl(_0x199a6a[_0x5a4d51(0xe3)]('url')),_0x1c5bc5=Object['prototype'][_0x5a4d51(0x139)][_0x5a4d51(0x124)](_0x199a6a[_0x5a4d51(0xbf)],_0x5a4d51(0x119))?_0x199a6a[_0x5a4d51(0xf2)](_0x5a4d51(0x119)):!![],_0x1798a8={'id':null,'parentId':_0x472468,'label':_0x1b500f,'path':_0x5a4d51(0xd2),'url':_0xad5334,'type':_0x3e9a9a,'visible':_0x1c5bc5,'sort':_0x32d59b},_0x18c8e0=buildMenuLookupCommand(_0x199a6a[_0x5a4d51(0x122)]),_0x502627=mutationResult({'operation':_0x5a4d51(0xce),'selector':{'parentId':_0x472468,'type':_0x3e9a9a,'label':_0x1b500f,'url':_0xad5334},'before':null,'after':_0x1798a8,'dryRun':_0x3028d1,'backend':[{'method':_0x5a4d51(0xb8),'path':_0x5a4d51(0x130)}],'plannedActions':[{'stage':_0x5a4d51(0x132),'method':_0x5a4d51(0xb8),'path':_0x5a4d51(0x130),'body':createBody(_0x1798a8)}],'snapshotHash':_0x33d6b2[_0x5a4d51(0xbe)],'warnings':[_0x5a4d51(0xdd)],'verification':{'lookupCommand':_0x18c8e0}});return{'plan':_0x502627,'snapshot':_0x33d6b2};}async function buildSafeAddPlan(_0x1be1f9,_0x314949){try{return await buildAddPlan(_0x1be1f9,_0x314949);}catch(_0x234e72){throw safeMenuAddError(_0x234e72);}}async function recheckAddSnapshot(_0x1d6178,_0xb1ad3d){const _0x2f3c99=a117_0x3ecd53;try{await recheckMutationSnapshot(_0x1d6178,_0xb1ad3d,_0x2f3c99(0xe2));}catch(_0xeeddcb){const _0x3e6d11=getFailureRecord(_0xeeddcb);throw externalLinkCreateFailure(_0xeeddcb,_0xb1ad3d,{'stage':_0x2f3c99(0xc3),'failed':{..._0x3e6d11?.[_0x2f3c99(0x138)]?{'expectedSnapshotHash':_0x3e6d11[_0x2f3c99(0x138)]}:{},..._0x3e6d11?.[_0x2f3c99(0x128)]?{'currentSnapshotHash':_0x3e6d11[_0x2f3c99(0x128)]}:{}}});}}function createBody(_0x23519b){const _0x5c6048=a117_0x3ecd53;return{'parentId':toApiParentId(_0x23519b[_0x5c6048(0x106)]),'label':String(_0x23519b[_0x5c6048(0x12c)]),'type':String(_0x23519b[_0x5c6048(0x113)]),'url':String(_0x23519b[_0x5c6048(0x118)]),'visible':Boolean(_0x23519b[_0x5c6048(0x119)]),'sort':Number(_0x23519b[_0x5c6048(0x121)]),'extend':{}};}function buildMenuLookupCommand(_0x179fb5){const _0x47940f=a117_0x3ecd53,_0x2fc2e4='\x27'+_0x179fb5['replace'](/'/g,_0x47940f(0x13e))+'\x27';return _0x47940f(0x108)+_0x2fc2e4+'\x20--format\x20compress';}async function recoverAfterResponseLoss(_0x5b80dc,_0x40120c,_0x7ce69b){const _0x2da4af=a117_0x3ecd53,{plan:_0x5f2af4,snapshot:_0x3a3942}=_0x40120c,_0x588bc3=_0x5f2af4[_0x2da4af(0xe5)];let _0x2e0f50;try{_0x2e0f50=await fetchMenuSnapshot(_0x5b80dc[_0x2da4af(0x122)],_0x5b80dc[_0x2da4af(0xfb)]);}catch(_0x15382e){throw recoveryRequiredFailure(_0x5f2af4,_0x7ce69b,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x1cc4f9=_0x2e0f50['menus'][_0x2da4af(0xbc)](_0x23b7b2=>_0x23b7b2['parentId']===_0x588bc3[_0x2da4af(0x106)]&&_0x23b7b2[_0x2da4af(0x113)]===_0x588bc3['type']&&_0x23b7b2['label']===_0x588bc3[_0x2da4af(0x12c)]&&_0x23b7b2['url']===_0x588bc3[_0x2da4af(0x118)]),_0x36af3c=_0x1cc4f9[_0x2da4af(0xbc)](_0x4143fa=>!_0x3a3942[_0x2da4af(0xed)][_0x2da4af(0x114)](_0x4143fa['id'])),_0x51fcd9=_0x1cc4f9[_0x2da4af(0xbc)](_0x41e208=>_0x3a3942[_0x2da4af(0xed)]['has'](_0x41e208['id']));if(_0x1cc4f9[_0x2da4af(0x11a)]!==0x1||_0x36af3c[_0x2da4af(0x11a)]!==0x1)throw recoveryRequiredFailure(_0x5f2af4,_0x7ce69b,{'matchCount':_0x1cc4f9['length'],'newMatchCount':_0x36af3c[_0x2da4af(0x11a)],'preexistingMatchCount':_0x51fcd9[_0x2da4af(0x11a)]});const _0x3bdd17=_0x36af3c[0x0];try{verifyCreatedFact(_0x3bdd17,_0x3bdd17['id'],_0x588bc3,null);}catch(_0x30175c){const _0x7ce071=_0x30175c instanceof Error&&_0x2da4af(0x102)in _0x30175c?_0x30175c:menuError(_0x2da4af(0x13c),_0x2da4af(0x103)+_0x3bdd17['id']+_0x2da4af(0xf5),_0x2da4af(0x11b)+_0x7ce69b+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x7ce071,_0x5f2af4,{'stage':'verification','succeeded':[{'id':_0x3bdd17['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x3bdd17['id'],'finalFactsConfirmed':![]},'after':_0x3bdd17,'warnings':[_0x2da4af(0xee)+_0x3bdd17['id']+_0x2da4af(0xfe)],'verification':{'status':_0x2da4af(0xd7),'targetId':_0x3bdd17['id'],'recovered':!![],'lookupCommand':_0x7ce69b}});}return creationSuccess(_0x5f2af4,_0x2e0f50,_0x3bdd17,!![]);}function recoveryRequiredFailure(_0x34ac5c,_0xb332e2,_0x5a98c6){const _0x18568c=a117_0x3ecd53,_0x38ec09=menuError(_0x18568c(0x104),_0x18568c(0xec),'Run\x20'+_0xb332e2+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x38ec09,_0x34ac5c,{'stage':'create-recovery','failed':_0x5a98c6,'warnings':[_0x18568c(0xae)],'verification':{'status':_0x18568c(0xd7),..._0x5a98c6,'lookupCommand':_0xb332e2}});}async function readAndVerifyCreatedMenu(_0x56358d){const _0x5ed5e2=a117_0x3ecd53;let _0x140a2f;try{_0x140a2f=await fetchMenuSnapshot(_0x56358d[_0x5ed5e2(0x122)],_0x56358d[_0x5ed5e2(0xfb)]);}catch(_0x2cd567){const _0x28bd69=menuError(_0x5ed5e2(0x13c),_0x5ed5e2(0xee)+_0x56358d[_0x5ed5e2(0x13a)]+_0x5ed5e2(0xe1),_0x5ed5e2(0x11b)+_0x56358d[_0x5ed5e2(0xcb)]+_0x5ed5e2(0xca));throw externalLinkCreateFailure(_0x28bd69,_0x56358d[_0x5ed5e2(0xf9)],{'stage':_0x5ed5e2(0xd1),'succeeded':[{'id':_0x56358d[_0x5ed5e2(0x13a)],'created':!![]}],'failed':{'id':_0x56358d[_0x5ed5e2(0x13a)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x56358d['afterPlan'],'id':_0x56358d[_0x5ed5e2(0x13a)],'path':_0x56358d[_0x5ed5e2(0x10f)]},'warnings':[_0x5ed5e2(0xee)+_0x56358d[_0x5ed5e2(0x13a)]+_0x5ed5e2(0x10a)],'verification':{'status':'failed','targetId':_0x56358d[_0x5ed5e2(0x13a)],'lookupCommand':_0x56358d[_0x5ed5e2(0xcb)]}});}const _0xe4c62c=_0x140a2f[_0x5ed5e2(0xed)][_0x5ed5e2(0x10d)](_0x56358d['createdId']);try{if(!_0xe4c62c)throw menuError(_0x5ed5e2(0x13c),_0x5ed5e2(0xf6)+_0x56358d['createdId']+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x5ed5e2(0x11b)+_0x56358d[_0x5ed5e2(0xcb)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0xe4c62c,_0x56358d[_0x5ed5e2(0x13a)],_0x56358d[_0x5ed5e2(0x125)],_0x56358d[_0x5ed5e2(0x10f)]);}catch(_0x12adc8){const _0xb92d74=_0x12adc8 instanceof Error&&_0x5ed5e2(0x102)in _0x12adc8?_0x12adc8:menuError(_0x5ed5e2(0x13c),_0x5ed5e2(0xf6)+_0x56358d[_0x5ed5e2(0x13a)]+_0x5ed5e2(0x13d),'Run\x20'+_0x56358d[_0x5ed5e2(0xcb)]+_0x5ed5e2(0xca));throw externalLinkCreateFailure(_0xb92d74,_0x56358d[_0x5ed5e2(0xf9)],{'stage':_0x5ed5e2(0xd1),'succeeded':[{'id':_0x56358d[_0x5ed5e2(0x13a)],'created':!![]}],'failed':{'id':_0x56358d[_0x5ed5e2(0x13a)],'finalFactsConfirmed':![]},'after':_0xe4c62c??{..._0x56358d[_0x5ed5e2(0x125)],'id':_0x56358d[_0x5ed5e2(0x13a)],'path':_0x56358d['expectedPath']},'warnings':[_0x5ed5e2(0xee)+_0x56358d[_0x5ed5e2(0x13a)]+_0x5ed5e2(0xcc)],'verification':{'status':_0x5ed5e2(0xd7),'targetId':_0x56358d[_0x5ed5e2(0x13a)],'recovered':_0x56358d[_0x5ed5e2(0xc4)],'lookupCommand':_0x56358d[_0x5ed5e2(0xcb)]}});}return{'snapshot':_0x140a2f,'fact':_0xe4c62c};}function verifyCreatedFact(_0x12bf45,_0x463a07,_0x4ba363,_0x11a4ec){const _0x13d465=a117_0x3ecd53;if(!Number[_0x13d465(0xc9)](_0x12bf45['id'])||_0x12bf45['id']<=0x0||_0x12bf45['id']!==_0x463a07)throw menuError(_0x13d465(0x13c),_0x13d465(0xeb),_0x13d465(0x123));const _0x454548=[[_0x13d465(0xfa),_0x12bf45['parentId'],_0x4ba363[_0x13d465(0x106)]],[_0x13d465(0x113),_0x12bf45['type'],_0x4ba363[_0x13d465(0x113)]],['label',_0x12bf45['label'],_0x4ba363[_0x13d465(0x12c)]],[_0x13d465(0xbb),_0x12bf45[_0x13d465(0x118)],_0x4ba363[_0x13d465(0x118)]],[_0x13d465(0xcd),_0x12bf45[_0x13d465(0x119)],_0x4ba363[_0x13d465(0x119)]],[_0x13d465(0x121),_0x12bf45[_0x13d465(0x121)],_0x4ba363['sort']]];for(const [_0xcd0529,_0x32a0a7,_0x553571]of _0x454548){if(_0x32a0a7!==_0x553571)throw menuError(_0x13d465(0x13c),_0x13d465(0xf6)+_0x12bf45['id']+_0x13d465(0xf0)+_0xcd0529+'.',_0x13d465(0xda));}if(!_0x12bf45[_0x13d465(0xc7)][_0x13d465(0x126)]()||_0x11a4ec!==null&&_0x12bf45[_0x13d465(0xc7)]!==_0x11a4ec)throw menuError(_0x13d465(0x13c),_0x13d465(0xf6)+_0x12bf45['id']+_0x13d465(0x100),_0x13d465(0xda));}function creationSuccess(_0x4b91da,_0x16b9a9,_0x182f70,_0xc57134){const _0x1a2582=a117_0x3ecd53,_0x1c166e=mutationResult({..._0x4b91da,'after':_0x182f70,'dryRun':![],'succeeded':[{'id':_0x182f70['id'],'created':!![],'recovered':_0xc57134}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x16b9a9[_0x1a2582(0xbe)],'targetId':_0x182f70['id'],'recovered':_0xc57134,'path':_0x182f70[_0x1a2582(0xc7)]}});return{'ok':!![],'message':_0xc57134?'Recovered\x20created\x20external\x20menu\x20'+_0x182f70['id']+'\x20after\x20response\x20loss.':'Created\x20external\x20menu\x20'+_0x182f70['id']+'.','data':{..._0x1c166e,'recovered':_0xc57134}};}function externalLinkCreateFailure(_0x5877d2,_0x1b597a,_0x54ceea){const _0x348798=a117_0x3ecd53;return menuFailure(safeMenuAddError(_0x5877d2),redactFailurePlan(_0x1b597a),{..._0x54ceea,'succeeded':_0x54ceea[_0x348798(0xb3)]?.[_0x348798(0x127)](redactFailureRecord),'failed':_0x54ceea[_0x348798(0xd7)]?redactFailureRecord(_0x54ceea[_0x348798(0xd7)]):undefined,'verification':_0x54ceea[_0x348798(0xd1)]?redactFailureRecord(_0x54ceea['verification']):undefined,'after':_0x54ceea[_0x348798(0xe5)]===undefined?undefined:redactFailureValue(_0x54ceea[_0x348798(0xe5)])});}function redactFailurePlan(_0xb2519e){const _0x2d26c9=a117_0x3ecd53;return{..._0xb2519e,'selector':redactFailureRecord(_0xb2519e[_0x2d26c9(0xb7)]),'before':redactFailureValue(_0xb2519e[_0x2d26c9(0xe0)]),'after':redactFailureValue(_0xb2519e[_0x2d26c9(0xe5)]),'plannedActions':_0xb2519e[_0x2d26c9(0xd5)]?.[_0x2d26c9(0x127)](_0x3e5c2e=>({..._0x3e5c2e,'body':redactFailureRecord(_0x3e5c2e[_0x2d26c9(0xea)])})),'succeeded':_0xb2519e['succeeded'][_0x2d26c9(0x127)](redactFailureRecord),'failed':_0xb2519e[_0x2d26c9(0xd7)][_0x2d26c9(0x127)](redactFailureRecord),'verification':_0xb2519e[_0x2d26c9(0xd1)]?redactFailureRecord(_0xb2519e[_0x2d26c9(0xd1)]):undefined};}function redactFailureRecord(_0x1d27f2){return redactFailureValue(_0x1d27f2);}function redactFailureValue(_0x1b662e,_0x44df3c=''){const _0x1dcb72=a117_0x3ecd53,_0x6ec1f9=_0x44df3c[_0x1dcb72(0xf7)]()[_0x1dcb72(0x13b)](/[^a-z0-9]/g,'');if(['cause','causemessage',_0x1dcb72(0x101),'rawerror'][_0x1dcb72(0xf4)](_0x6ec1f9))return _0x1dcb72(0xc8);if(Array[_0x1dcb72(0x11d)](_0x1b662e))return _0x1b662e[_0x1dcb72(0x127)](_0x2ccf49=>redactFailureValue(_0x2ccf49));if(_0x1b662e&&typeof _0x1b662e===_0x1dcb72(0xe4))return Object[_0x1dcb72(0xc2)](Object['entries'](_0x1b662e)[_0x1dcb72(0x127)](([_0x522594,_0x12255e])=>[_0x522594,redactFailureValue(_0x12255e,_0x522594)]));return _0x1b662e;}function safeMenuAddError(_0x449429){const _0x66e569=a117_0x3ecd53,_0xd0222e=_0x449429 instanceof CliError?_0x449429['code']:_0x66e569(0xf1);switch(_0xd0222e){case _0x66e569(0x137):return menuError(_0xd0222e,'Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.',_0x66e569(0xfd));case _0x66e569(0xb4):return menuError(_0xd0222e,_0x66e569(0xde),_0x66e569(0xb0));case _0x66e569(0x112):return menuError(_0xd0222e,_0x66e569(0xbd),_0x66e569(0xb1));case _0x66e569(0x13c):return menuError(_0xd0222e,_0x66e569(0xe7),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_create_recovery_required':return menuError(_0xd0222e,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x66e569(0xe9));case _0x66e569(0xf1):case'menu_not_found':case _0x66e569(0x11f):case _0x66e569(0x120):case _0x66e569(0x11c):return menuError(_0xd0222e,_0x66e569(0xd3),_0x66e569(0x12a));default:return menuError(_0x66e569(0xf1),_0x66e569(0xd3),_0x66e569(0x12a));}}function getFailureRecord(_0x1c502c){const _0x149315=a117_0x3ecd53;if(!(_0x1c502c instanceof Error)||!(_0x149315(0xff)in _0x1c502c))return undefined;const _0x1d3906=_0x1c502c[_0x149315(0xff)];if(!_0x1d3906||typeof _0x1d3906!=='object')return undefined;const _0x83b5b8=_0x1d3906['failed'];if(!Array['isArray'](_0x83b5b8)||!_0x83b5b8[0x0]||typeof _0x83b5b8[0x0]!=='object')return undefined;return _0x83b5b8[0x0];}
@@ -1 +1 @@
1
- const a118_0x3bdca6=a118_0x1330;(function(_0x4d57cb,_0x250819){const _0x20ec31=a118_0x1330,_0x4b2158=_0x4d57cb();while(!![]){try{const _0x3a7ddd=parseInt(_0x20ec31(0xf2))/0x1+-parseInt(_0x20ec31(0x123))/0x2+parseInt(_0x20ec31(0x126))/0x3*(-parseInt(_0x20ec31(0x120))/0x4)+-parseInt(_0x20ec31(0x10c))/0x5*(-parseInt(_0x20ec31(0x101))/0x6)+-parseInt(_0x20ec31(0xff))/0x7+-parseInt(_0x20ec31(0x105))/0x8+parseInt(_0x20ec31(0x129))/0x9;if(_0x3a7ddd===_0x250819)break;else _0x4b2158['push'](_0x4b2158['shift']());}catch(_0x6cbbec){_0x4b2158['push'](_0x4b2158['shift']());}}}(a118_0x1d40,0x78ebd));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,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a118_0x3bdca6(0x103),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a118_0x3bdca6(0x117),'command':a118_0x3bdca6(0xdf),'description':a118_0x3bdca6(0x107),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a118_0x3bdca6(0x112),'type':'string','required':!![],'description':a118_0x3bdca6(0xe2)},{'name':'expect-url','type':a118_0x3bdca6(0xeb),'required':!![],'description':a118_0x3bdca6(0xfc)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4db418){validateInput(_0x4db418);},async 'dryRun'(_0x1910a8){const _0x5b7ac2=a118_0x3bdca6;validateInput(_0x1910a8);const _0x7b566e=await buildPlan(_0x1910a8,!![]);return menuDryRunResult(_0x7b566e[_0x5b7ac2(0xf1)],{'method':_0x5b7ac2(0x103),'url':_0x5b7ac2(0xe1),'body':_0x7b566e[_0x5b7ac2(0xdd)],'description':_0x5b7ac2(0xf9)+_0x7b566e['body']['id']+'.'});},async 'execute'(_0x2fee6f){const _0x44800f=a118_0x3bdca6;validateInput(_0x2fee6f);const _0x226fa7=await buildPlan(_0x2fee6f,![]),{plan:_0x998115,body:_0x44bba6,before:_0x27cd8a,noChanges:_0xe17daf}=_0x226fa7,_0x2c5ec7=_0x44bba6['id'];if(_0xe17daf)return updateSuccess(_0x998115,_0x226fa7['snapshot'],_0x27cd8a,!![],![]);await recheckMutationSnapshot(_0x2fee6f,_0x998115,_0x44800f(0x10a),_0x2c5ec7);try{await updateMenuEntity(_0x2fee6f[_0x44800f(0x11d)],_0x2fee6f[_0x44800f(0xda)],{'id':_0x44bba6['id'],'url':_0x44bba6['url']});}catch(_0x3dcd93){const _0x38c7c9=mapMenuApiError(_0x3dcd93,'update\x20external\x20menu\x20URL',_0x2c5ec7);if(isMenuResponseLoss(_0x3dcd93)&&_0x38c7c9[_0x44800f(0x11f)]!==_0x44800f(0xfa))return recoverAfterResponseLoss(_0x2fee6f,_0x226fa7);throw menuFailure(_0x38c7c9,_0x998115,{'stage':_0x44800f(0x10b),'failed':{'id':_0x2c5ec7},'warnings':[_0x44800f(0x11b)],'verification':{'status':'failed','targetId':_0x2c5ec7,'lookupCommand':buildLookupCommand(_0x2fee6f[_0x44800f(0x11d)])}});}let _0x44b7b3,_0x57324c;try{_0x44b7b3=await fetchMenuSnapshot(_0x2fee6f['appCode'],_0x2fee6f[_0x44800f(0xda)]),_0x57324c=requireMenu(_0x44b7b3,_0x2c5ec7),verifyUpdatedFact(_0x27cd8a,_0x57324c,_0x44bba6[_0x44800f(0x112)]);}catch(_0x26e392){const _0x2e30a7=describeMenuErrorCause(_0x26e392,_0x44800f(0x11e),_0x2c5ec7),_0xbc49d9=asVerificationError(_0x26e392,_0x44800f(0x113)+_0x2c5ec7+_0x44800f(0x108));throw menuFailure(_0xbc49d9,_0x998115,{'stage':_0x44800f(0xed),'succeeded':[{'id':_0x2c5ec7,'updateRequested':!![]}],'failed':{'id':_0x2c5ec7,'requestedStateConfirmed':![],..._0x2e30a7},'warnings':[_0x44800f(0xe5)],'verification':{'status':_0x44800f(0xec),'targetId':_0x2c5ec7,'lookupCommand':buildLookupCommand(_0x2fee6f[_0x44800f(0x11d)])}});}return updateSuccess(_0x998115,_0x44b7b3,_0x57324c,![],![]);}};function a118_0x1330(_0x5f0bfa,_0x299196){_0x5f0bfa=_0x5f0bfa-0xda;const _0x1d4076=a118_0x1d40();let _0x1330c5=_0x1d4076[_0x5f0bfa];return _0x1330c5;}function validateInput(_0x3dbbeb){const _0x3e7be7=a118_0x3bdca6;validateExactId(_0x3dbbeb),requiredUrl(_0x3dbbeb,'url'),requiredExpectedUrl(_0x3dbbeb),parseParentId(_0x3dbbeb,_0x3e7be7(0xf8),{'required':!![]});}function requiredUrl(_0x1da992,_0x207e72){const _0x191d20=a118_0x3bdca6;if(!hasFlag(_0x1da992,_0x207e72)||!_0x1da992[_0x191d20(0xe8)](_0x207e72)['trim']())throw CliErrors[_0x191d20(0xe9)](_0x207e72);return validateExternalMenuUrl(_0x1da992[_0x191d20(0xe8)](_0x207e72));}function requiredExpectedUrl(_0x23bcf8){const _0x55aad0=a118_0x3bdca6;if(!hasFlag(_0x23bcf8,_0x55aad0(0xfe))||!_0x23bcf8[_0x55aad0(0xe8)]('expect-url')[_0x55aad0(0xea)]())throw CliErrors['flagMissing']('expect-url');return _0x23bcf8['str']('expect-url')[_0x55aad0(0xea)]();}async function buildPlan(_0x4812c8,_0x2ccc3f){const _0xfbb0c9=a118_0x3bdca6,_0x556840=validateExactId(_0x4812c8),_0x34b3f5=requiredUrl(_0x4812c8,_0xfbb0c9(0x112)),_0x55ea42=requiredExpectedUrl(_0x4812c8),_0x208ecc=parseParentId(_0x4812c8,_0xfbb0c9(0xf8),{'required':!![]}),_0x4b3233=await fetchMutationSnapshot(_0x4812c8,_0xfbb0c9(0x10a),_0x556840),_0x5542dc=requireMenu(_0x4b3233,_0x556840);assertExternalLinkLeaf(_0x5542dc);if(_0x5542dc[_0xfbb0c9(0x115)]!==_0x208ecc)throw menuError('menu_state_drift',_0xfbb0c9(0x10d)+_0x556840+_0xfbb0c9(0xef)+formatParent(_0x208ecc)+',\x20current\x20'+formatParent(_0x5542dc['parentId'])+'.',_0xfbb0c9(0x128));const _0x29b5e6=_0x5542dc[_0xfbb0c9(0x112)]===_0x34b3f5;if(!_0x29b5e6&&_0x5542dc[_0xfbb0c9(0x112)]!==_0x55ea42)throw menuError('menu_state_drift',_0xfbb0c9(0x10d)+_0x556840+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0xfbb0c9(0xdb));const _0x955138={'id':_0x556840,'appCode':_0x4812c8[_0xfbb0c9(0x11d)],'url':_0x34b3f5},_0x5e2f6f={..._0x5542dc,'url':_0x34b3f5};return{'body':_0x955138,'before':_0x5542dc,'noChanges':_0x29b5e6,'snapshot':_0x4b3233,'plan':mutationResult({'operation':_0xfbb0c9(0xdf),'selector':{'id':_0x556840},'before':_0x5542dc,'after':_0x5e2f6f,'dryRun':_0x2ccc3f,'backend':[...BACKEND],'plannedActions':_0x29b5e6?[]:[{'stage':_0xfbb0c9(0x12b),'method':'POST','path':_0xfbb0c9(0xe1),'body':_0x955138}],'snapshotHash':_0x4b3233['hash'],'warnings':_0x29b5e6?[_0xfbb0c9(0xf5)]:[]})};}function a118_0x1d40(){const _0x320765=['trim','string','failed','verification','sort','\x20parent\x20changed:\x20expected\x20','menu_update_recovery_required','plan','324667DBhQpV','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','menu_external_link_path_missing','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','\x27\x5c\x27\x27','update-recovery','expect-parent-id','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','menu_permission_denied','after','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','expect-url','3738063QTmPPg','Run\x20','6xoyPWE','link','POST','menu_external_link_type_required','6618832ywAmmq','visible','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','rabetbase\x20menu\x20list\x20--appcode\x20','update\x20external\x20menu\x20URL','update','755940SCSJeO','Menu\x20','childrenCount','requestedUrlObserved','\x20URL\x20update\x20did\x20not\x20take\x20effect.','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','url','Update\x20request\x20for\x20menu\x20','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','parentId','path','menu','\x20direct\x20child\x20menu(s).','\x20is\x20type\x20\x22','\x20has\x20an\x20empty\x20platform\x20path.','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu\x20list','appCode','verify\x20external\x20menu\x20URL\x20update','code','4zPfHZV','readbackFailed','type','1764152IRRYtn','\x20already\x20matches\x20the\x20requested\x20URL.','\x20could\x20not\x20be\x20verified\x20safely','137499ubsrhu','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','20778390YhcqjU','\x20changed\x20during\x20the\x20URL-only\x20update.','update-external-link-url','cookie','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','get','body','Updated\x20external\x20URL\x20for\x20menu\x20','external-link-update','Response\x20was\x20lost\x20and\x20menu\x20','/smartapi/menu/update','New\x20external\x20HTTPS\x20URL','label','byId','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','replace','\x20--format\x20compress','str','flagMissing'];a118_0x1d40=function(){return _0x320765;};return a118_0x1d40();}function assertExternalLinkLeaf(_0x34a2e0){const _0x400a17=a118_0x3bdca6;if(_0x34a2e0['type']!=='iframe'&&_0x34a2e0[_0x400a17(0x122)]!==_0x400a17(0x102))throw menuError(_0x400a17(0x104),'Menu\x20'+_0x34a2e0['id']+_0x400a17(0x119)+(_0x34a2e0['type']||'unknown')+'\x22,\x20not\x20iframe\x20or\x20link.',_0x400a17(0x111));if(_0x34a2e0['childrenCount']!==0x0)throw menuError('menu_external_link_not_leaf',_0x400a17(0x10d)+_0x34a2e0['id']+'\x20has\x20'+_0x34a2e0[_0x400a17(0x10e)]+_0x400a17(0x118),_0x400a17(0x114));if(!_0x34a2e0[_0x400a17(0x116)]['trim']())throw menuError(_0x400a17(0xf4),_0x400a17(0x10d)+_0x34a2e0['id']+_0x400a17(0x11a),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x59aaab,_0x14c830,_0x58bba7){const _0x286a1a=a118_0x3bdca6;assertExternalLinkLeaf(_0x14c830);const _0x3aed91=[['id',_0x14c830['id'],_0x59aaab['id']],[_0x286a1a(0xe3),_0x14c830[_0x286a1a(0xe3)],_0x59aaab[_0x286a1a(0xe3)]],[_0x286a1a(0x122),_0x14c830[_0x286a1a(0x122)],_0x59aaab[_0x286a1a(0x122)]],[_0x286a1a(0x116),_0x14c830[_0x286a1a(0x116)],_0x59aaab[_0x286a1a(0x116)]],['parentId',_0x14c830[_0x286a1a(0x115)],_0x59aaab[_0x286a1a(0x115)]],[_0x286a1a(0xee),_0x14c830[_0x286a1a(0xee)],_0x59aaab[_0x286a1a(0xee)]],[_0x286a1a(0x106),_0x14c830[_0x286a1a(0x106)],_0x59aaab[_0x286a1a(0x106)]]];for(const [_0x49cc0c,_0x4648bb,_0x3d5642]of _0x3aed91){assertVerified(_0x4648bb===_0x3d5642,'Menu\x20'+_0x59aaab['id']+'\x20'+_0x49cc0c+_0x286a1a(0x12a));}assertVerified(_0x14c830['url']===_0x58bba7,_0x286a1a(0x10d)+_0x59aaab['id']+_0x286a1a(0x110));}function updateSuccess(_0x12e3eb,_0x56a640,_0x39b648,_0x53ab0f,_0x24a609){const _0x1ae7ae=a118_0x3bdca6,_0x197c58=_0x39b648['id'],_0x11230c=mutationResult({..._0x12e3eb,'after':_0x39b648,'dryRun':![],'succeeded':[{'id':_0x197c58,'updated':!_0x53ab0f,'skipped':_0x53ab0f,'recovered':_0x24a609}],'verification':{'checkedBy':_0x1ae7ae(0x11c),'snapshotHash':_0x56a640['hash'],'targetId':_0x197c58,'matchesRequestedState':!![],'recovered':_0x24a609}});return{'ok':!![],'message':_0x24a609?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x197c58+'.':_0x53ab0f?'Menu\x20'+_0x197c58+_0x1ae7ae(0x124):_0x1ae7ae(0xde)+_0x197c58+'.','data':{..._0x11230c,'recovered':_0x24a609}};}async function recoverAfterResponseLoss(_0x23abd3,_0x2db40e){const _0x40ede1=a118_0x3bdca6,{plan:_0x2abcf8,before:_0x4d310e,body:_0x49b992}=_0x2db40e;let _0x53d74a;try{_0x53d74a=await fetchMenuSnapshot(_0x23abd3[_0x40ede1(0x11d)],_0x23abd3['cookie']);}catch{throw recoveryRequired(_0x2abcf8,_0x23abd3[_0x40ede1(0x11d)],{'id':_0x49b992['id'],'readbackFailed':!![]});}const _0x4834c9=_0x53d74a[_0x40ede1(0xe4)][_0x40ede1(0xdc)](_0x49b992['id']);if(!_0x4834c9||_0x4834c9[_0x40ede1(0x112)]!==_0x49b992[_0x40ede1(0x112)])throw recoveryRequired(_0x2abcf8,_0x23abd3[_0x40ede1(0x11d)],{'id':_0x49b992['id'],'requestedUrlObserved':![],'after':_0x4834c9??null});try{verifyUpdatedFact(_0x4d310e,_0x4834c9,_0x49b992[_0x40ede1(0x112)]);}catch(_0x4ceba4){const _0x2619a5=asVerificationError(_0x4ceba4,_0x40ede1(0xe0)+_0x49b992['id']+_0x40ede1(0x125));throw menuFailure(_0x2619a5,_0x2abcf8,{'stage':_0x40ede1(0xf7),'succeeded':[{'id':_0x49b992['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x49b992['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x4834c9,'warnings':[_0x40ede1(0x127)],'verification':{'status':_0x40ede1(0xec),'targetId':_0x49b992['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x23abd3[_0x40ede1(0x11d)])}});}return updateSuccess(_0x2abcf8,_0x53d74a,_0x4834c9,![],!![]);}function recoveryRequired(_0x5f4bc6,_0x4fc6ea,_0x5c2824){const _0x22cf7f=a118_0x3bdca6,_0x3096e7=menuError(_0x22cf7f(0xf0),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x22cf7f(0x100)+buildLookupCommand(_0x4fc6ea)+_0x22cf7f(0xf3));return menuFailure(_0x3096e7,_0x5f4bc6,{'stage':_0x22cf7f(0xf7),'failed':{'id':_0x5c2824['id'],..._0x5c2824[_0x22cf7f(0x10f)]===undefined?{}:{'requestedUrlObserved':_0x5c2824[_0x22cf7f(0x10f)]},..._0x5c2824[_0x22cf7f(0x121)]?{'readbackFailed':!![]}:{}},'after':_0x5c2824[_0x22cf7f(0xfb)],'warnings':[_0x22cf7f(0xfd)],'verification':{'status':_0x22cf7f(0xec),'targetId':_0x5c2824['id'],..._0x5c2824[_0x22cf7f(0x10f)]===undefined?{}:{'requestedUrlObserved':_0x5c2824['requestedUrlObserved']},..._0x5c2824['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x4fc6ea)}});}function buildLookupCommand(_0x1e7423){const _0x1cd866=a118_0x3bdca6,_0x3a9f6a='\x27'+_0x1e7423[_0x1cd866(0xe6)](/'/g,_0x1cd866(0xf6))+'\x27';return _0x1cd866(0x109)+_0x3a9f6a+_0x1cd866(0xe7);}
1
+ const a118_0x4de305=a118_0x8cfa;(function(_0x411311,_0x517cc0){const _0x43e48c=a118_0x8cfa,_0x7fae70=_0x411311();while(!![]){try{const _0x1964fc=-parseInt(_0x43e48c(0x113))/0x1*(-parseInt(_0x43e48c(0x11b))/0x2)+-parseInt(_0x43e48c(0x12e))/0x3*(parseInt(_0x43e48c(0x14f))/0x4)+-parseInt(_0x43e48c(0x122))/0x5*(-parseInt(_0x43e48c(0x134))/0x6)+parseInt(_0x43e48c(0x120))/0x7*(-parseInt(_0x43e48c(0x155))/0x8)+parseInt(_0x43e48c(0x13a))/0x9+parseInt(_0x43e48c(0x127))/0xa+-parseInt(_0x43e48c(0x11e))/0xb;if(_0x1964fc===_0x517cc0)break;else _0x7fae70['push'](_0x7fae70['shift']());}catch(_0x338404){_0x7fae70['push'](_0x7fae70['shift']());}}}(a118_0x1dd8,0xc5c77));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,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a118_0x4de305(0x140),'path':a118_0x4de305(0x138)}];export const menuExternalLinkUpdate={'service':a118_0x4de305(0x11d),'command':a118_0x4de305(0x156),'description':'Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','risk':a118_0x4de305(0x128),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a118_0x4de305(0x116),'type':'string','required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a118_0x4de305(0x141),'type':a118_0x4de305(0x13f),'required':!![],'description':a118_0x4de305(0x14e)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x175cf3){validateInput(_0x175cf3);},async 'dryRun'(_0x5207bd){const _0x3869eb=a118_0x4de305;validateInput(_0x5207bd);const _0x4ad3d0=await buildPlan(_0x5207bd,!![]);return menuDryRunResult(_0x4ad3d0[_0x3869eb(0x136)],{'method':_0x3869eb(0x140),'url':_0x3869eb(0x138),'body':_0x4ad3d0[_0x3869eb(0x132)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x4ad3d0['body']['id']+'.'});},async 'execute'(_0x13bb42){const _0x2c6213=a118_0x4de305;validateInput(_0x13bb42);const _0x23e9a3=await buildPlan(_0x13bb42,![]),{plan:_0x44c158,body:_0x5d4c1e,before:_0x23d867,noChanges:_0x2486fd}=_0x23e9a3,_0x2035e1=_0x5d4c1e['id'];if(_0x2486fd)return updateSuccess(_0x44c158,_0x23e9a3['snapshot'],_0x23d867,!![],![]);await recheckMutationSnapshot(_0x13bb42,_0x44c158,'update\x20external\x20menu\x20URL',_0x2035e1);try{await updateMenuEntity(_0x13bb42[_0x2c6213(0x157)],_0x13bb42[_0x2c6213(0x151)],{'id':_0x5d4c1e['id'],'url':_0x5d4c1e[_0x2c6213(0x116)]});}catch(_0x13c3ba){const _0x286639=mapMenuApiError(_0x13c3ba,_0x2c6213(0x15c),_0x2035e1);if(isMenuResponseLoss(_0x13c3ba)&&_0x286639[_0x2c6213(0x160)]!==_0x2c6213(0x133))return recoverAfterResponseLoss(_0x13bb42,_0x23e9a3);throw menuFailure(_0x286639,_0x44c158,{'stage':_0x2c6213(0x15a),'failed':{'id':_0x2035e1},'warnings':[_0x2c6213(0x14a)],'verification':{'status':_0x2c6213(0x143),'targetId':_0x2035e1,'lookupCommand':buildLookupCommand(_0x13bb42[_0x2c6213(0x157)])}});}let _0x5f3612,_0x56029f;try{_0x5f3612=await fetchMenuSnapshot(_0x13bb42['appCode'],_0x13bb42['cookie']),_0x56029f=requireMenu(_0x5f3612,_0x2035e1),verifyUpdatedFact(_0x23d867,_0x56029f,_0x5d4c1e['url']);}catch(_0x3c85bf){const _0x28ca25=describeMenuErrorCause(_0x3c85bf,_0x2c6213(0x15f),_0x2035e1),_0x1863fd=asVerificationError(_0x3c85bf,_0x2c6213(0x115)+_0x2035e1+_0x2c6213(0x13c));throw menuFailure(_0x1863fd,_0x44c158,{'stage':_0x2c6213(0x131),'succeeded':[{'id':_0x2035e1,'updateRequested':!![]}],'failed':{'id':_0x2035e1,'requestedStateConfirmed':![],..._0x28ca25},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x2c6213(0x143),'targetId':_0x2035e1,'lookupCommand':buildLookupCommand(_0x13bb42[_0x2c6213(0x157)])}});}return updateSuccess(_0x44c158,_0x5f3612,_0x56029f,![],![]);}};function validateInput(_0x5308ab){const _0x4dd7fd=a118_0x4de305;validateExactId(_0x5308ab),requiredUrl(_0x5308ab,'url'),requiredExpectedUrl(_0x5308ab),parseParentId(_0x5308ab,_0x4dd7fd(0x121),{'required':!![]});}function requiredUrl(_0x2fe32d,_0x17af25){const _0x310172=a118_0x4de305;if(!hasFlag(_0x2fe32d,_0x17af25)||!_0x2fe32d[_0x310172(0x12a)](_0x17af25)[_0x310172(0x13d)]())throw CliErrors[_0x310172(0x139)](_0x17af25);return validateExternalMenuUrl(_0x2fe32d[_0x310172(0x12a)](_0x17af25));}function requiredExpectedUrl(_0x3fd572){const _0x42c81c=a118_0x4de305;if(!hasFlag(_0x3fd572,_0x42c81c(0x141))||!_0x3fd572[_0x42c81c(0x12a)](_0x42c81c(0x141))[_0x42c81c(0x13d)]())throw CliErrors[_0x42c81c(0x139)]('expect-url');return _0x3fd572[_0x42c81c(0x12a)](_0x42c81c(0x141))['trim']();}async function buildPlan(_0x4d00e2,_0x3d477b){const _0x4dc329=a118_0x4de305,_0x13987b=validateExactId(_0x4d00e2),_0x1724f5=requiredUrl(_0x4d00e2,_0x4dc329(0x116)),_0x548c87=requiredExpectedUrl(_0x4d00e2),_0x2af919=parseParentId(_0x4d00e2,_0x4dc329(0x121),{'required':!![]}),_0x654bd7=await fetchMutationSnapshot(_0x4d00e2,_0x4dc329(0x15c),_0x13987b),_0x185384=requireMenu(_0x654bd7,_0x13987b);assertExternalLinkLeaf(_0x185384);if(_0x185384[_0x4dc329(0x14b)]!==_0x2af919)throw menuError(_0x4dc329(0x146),_0x4dc329(0x145)+_0x13987b+_0x4dc329(0x119)+formatParent(_0x2af919)+_0x4dc329(0x144)+formatParent(_0x185384['parentId'])+'.',_0x4dc329(0x15b));const _0x333e72=_0x185384[_0x4dc329(0x116)]===_0x1724f5;if(!_0x333e72&&_0x185384[_0x4dc329(0x116)]!==_0x548c87)throw menuError(_0x4dc329(0x146),_0x4dc329(0x145)+_0x13987b+_0x4dc329(0x11f),_0x4dc329(0x11c));const _0x56f238={'id':_0x13987b,'appCode':_0x4d00e2[_0x4dc329(0x157)],'url':_0x1724f5},_0x539b31={..._0x185384,'url':_0x1724f5};return{'body':_0x56f238,'before':_0x185384,'noChanges':_0x333e72,'snapshot':_0x654bd7,'plan':mutationResult({'operation':_0x4dc329(0x156),'selector':{'id':_0x13987b},'before':_0x185384,'after':_0x539b31,'dryRun':_0x3d477b,'backend':[...BACKEND],'plannedActions':_0x333e72?[]:[{'stage':_0x4dc329(0x15e),'method':_0x4dc329(0x140),'path':_0x4dc329(0x138),'body':_0x56f238}],'snapshotHash':_0x654bd7[_0x4dc329(0x12f)],'warnings':_0x333e72?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function a118_0x8cfa(_0x10d022,_0x5a1dc1){_0x10d022=_0x10d022-0x112;const _0x1dd8ef=a118_0x1dd8();let _0x8cfa3c=_0x1dd8ef[_0x10d022];return _0x8cfa3c;}function assertExternalLinkLeaf(_0xbb860){const _0x3a1f0d=a118_0x4de305;if(_0xbb860[_0x3a1f0d(0x114)]!=='iframe'&&_0xbb860[_0x3a1f0d(0x114)]!==_0x3a1f0d(0x13b))throw menuError(_0x3a1f0d(0x112),_0x3a1f0d(0x145)+_0xbb860['id']+'\x20is\x20type\x20\x22'+(_0xbb860['type']||_0x3a1f0d(0x14c))+_0x3a1f0d(0x135),_0x3a1f0d(0x125));if(_0xbb860[_0x3a1f0d(0x12c)]!==0x0)throw menuError(_0x3a1f0d(0x149),'Menu\x20'+_0xbb860['id']+'\x20has\x20'+_0xbb860[_0x3a1f0d(0x12c)]+_0x3a1f0d(0x152),_0x3a1f0d(0x150));if(!_0xbb860['path'][_0x3a1f0d(0x13d)]())throw menuError(_0x3a1f0d(0x161),_0x3a1f0d(0x145)+_0xbb860['id']+'\x20has\x20an\x20empty\x20platform\x20path.','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x3f399e,_0x498ec4,_0x18d509){const _0x2ab2b2=a118_0x4de305;assertExternalLinkLeaf(_0x498ec4);const _0x31dbdf=[['id',_0x498ec4['id'],_0x3f399e['id']],[_0x2ab2b2(0x159),_0x498ec4[_0x2ab2b2(0x159)],_0x3f399e['label']],[_0x2ab2b2(0x114),_0x498ec4[_0x2ab2b2(0x114)],_0x3f399e['type']],[_0x2ab2b2(0x153),_0x498ec4['path'],_0x3f399e[_0x2ab2b2(0x153)]],[_0x2ab2b2(0x14b),_0x498ec4[_0x2ab2b2(0x14b)],_0x3f399e['parentId']],[_0x2ab2b2(0x11a),_0x498ec4['sort'],_0x3f399e[_0x2ab2b2(0x11a)]],[_0x2ab2b2(0x117),_0x498ec4[_0x2ab2b2(0x117)],_0x3f399e['visible']]];for(const [_0x85cdfe,_0x14be98,_0x3813fc]of _0x31dbdf){assertVerified(_0x14be98===_0x3813fc,_0x2ab2b2(0x145)+_0x3f399e['id']+'\x20'+_0x85cdfe+_0x2ab2b2(0x15d));}assertVerified(_0x498ec4[_0x2ab2b2(0x116)]===_0x18d509,'Menu\x20'+_0x3f399e['id']+_0x2ab2b2(0x137));}function updateSuccess(_0x5b7d83,_0x196b39,_0x1fedeb,_0x434ccc,_0x2e24e2){const _0x444284=a118_0x4de305,_0xcd94ac=_0x1fedeb['id'],_0x7670=mutationResult({..._0x5b7d83,'after':_0x1fedeb,'dryRun':![],'succeeded':[{'id':_0xcd94ac,'updated':!_0x434ccc,'skipped':_0x434ccc,'recovered':_0x2e24e2}],'verification':{'checkedBy':_0x444284(0x148),'snapshotHash':_0x196b39['hash'],'targetId':_0xcd94ac,'matchesRequestedState':!![],'recovered':_0x2e24e2}});return{'ok':!![],'message':_0x2e24e2?_0x444284(0x130)+_0xcd94ac+'.':_0x434ccc?_0x444284(0x145)+_0xcd94ac+_0x444284(0x129):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0xcd94ac+'.','data':{..._0x7670,'recovered':_0x2e24e2}};}function a118_0x1dd8(){const _0x313f04=['\x20could\x20not\x20be\x20verified\x20safely','string','POST','expect-url','update-recovery','failed',',\x20current\x20','Menu\x20','menu_state_drift','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','menu\x20list','menu_external_link_not_leaf','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','parentId','unknown','Run\x20','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','180376xrrZHN','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','cookie','\x20direct\x20child\x20menu(s).','path','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','8QwFLHs','external-link-update','appCode','Response\x20was\x20lost\x20and\x20menu\x20','label','update','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','update\x20external\x20menu\x20URL','\x20changed\x20during\x20the\x20URL-only\x20update.','update-external-link-url','verify\x20external\x20menu\x20URL\x20update','code','menu_external_link_path_missing','menu_external_link_type_required','106558oiqzql','type','Update\x20request\x20for\x20menu\x20','url','visible','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','\x20parent\x20changed:\x20expected\x20','sort','28QfTfBg','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','menu','25239687PAExJx','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','9036860Vdjxpl','expect-parent-id','5CdVjAO','readbackFailed','requestedUrlObserved','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','byId','9306430fIXGdq','write','\x20already\x20matches\x20the\x20requested\x20URL.','str','rabetbase\x20menu\x20list\x20--appcode\x20','childrenCount','menu_update_recovery_required','3DUJLZF','hash','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','verification','body','menu_permission_denied','7802442XIewHD','\x22,\x20not\x20iframe\x20or\x20link.','plan','\x20URL\x20update\x20did\x20not\x20take\x20effect.','/smartapi/menu/update','flagMissing','6460488ybcVXF','link','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','trim'];a118_0x1dd8=function(){return _0x313f04;};return a118_0x1dd8();}async function recoverAfterResponseLoss(_0x4a4f49,_0x34cbac){const _0x12e8da=a118_0x4de305,{plan:_0x1747d8,before:_0x2b306b,body:_0x5a1304}=_0x34cbac;let _0x94a73e;try{_0x94a73e=await fetchMenuSnapshot(_0x4a4f49['appCode'],_0x4a4f49['cookie']);}catch{throw recoveryRequired(_0x1747d8,_0x4a4f49[_0x12e8da(0x157)],{'id':_0x5a1304['id'],'readbackFailed':!![]});}const _0x386f1e=_0x94a73e[_0x12e8da(0x126)]['get'](_0x5a1304['id']);if(!_0x386f1e||_0x386f1e[_0x12e8da(0x116)]!==_0x5a1304[_0x12e8da(0x116)])throw recoveryRequired(_0x1747d8,_0x4a4f49['appCode'],{'id':_0x5a1304['id'],'requestedUrlObserved':![],'after':_0x386f1e??null});try{verifyUpdatedFact(_0x2b306b,_0x386f1e,_0x5a1304[_0x12e8da(0x116)]);}catch(_0x4f8361){const _0x4bc446=asVerificationError(_0x4f8361,_0x12e8da(0x158)+_0x5a1304['id']+_0x12e8da(0x13e));throw menuFailure(_0x4bc446,_0x1747d8,{'stage':_0x12e8da(0x142),'succeeded':[{'id':_0x5a1304['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x5a1304['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x386f1e,'warnings':[_0x12e8da(0x154)],'verification':{'status':_0x12e8da(0x143),'targetId':_0x5a1304['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x4a4f49[_0x12e8da(0x157)])}});}return updateSuccess(_0x1747d8,_0x94a73e,_0x386f1e,![],!![]);}function recoveryRequired(_0x43cd71,_0x4d7084,_0x40d7c4){const _0xe58d16=a118_0x4de305,_0x29aba5=menuError(_0xe58d16(0x12d),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0xe58d16(0x14d)+buildLookupCommand(_0x4d7084)+_0xe58d16(0x118));return menuFailure(_0x29aba5,_0x43cd71,{'stage':_0xe58d16(0x142),'failed':{'id':_0x40d7c4['id'],..._0x40d7c4[_0xe58d16(0x124)]===undefined?{}:{'requestedUrlObserved':_0x40d7c4['requestedUrlObserved']},..._0x40d7c4[_0xe58d16(0x123)]?{'readbackFailed':!![]}:{}},'after':_0x40d7c4['after'],'warnings':[_0xe58d16(0x147)],'verification':{'status':_0xe58d16(0x143),'targetId':_0x40d7c4['id'],..._0x40d7c4[_0xe58d16(0x124)]===undefined?{}:{'requestedUrlObserved':_0x40d7c4[_0xe58d16(0x124)]},..._0x40d7c4['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x4d7084)}});}function buildLookupCommand(_0x357426){const _0x3cfede=a118_0x4de305,_0x2adfb6='\x27'+_0x357426['replace'](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x3cfede(0x12b)+_0x2adfb6+'\x20--format\x20compress';}