@lovrabet/rabetbase-cli 2.5.1-beta.4 → 2.5.1-beta.6

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 (344) hide show
  1. package/README.md +75 -1
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/api/generate-sdk-config-file.d.ts +0 -1
  6. package/lib/api/generate-sdk-config-file.js +1 -1
  7. package/lib/auth/auth-server-ui.js +1 -1
  8. package/lib/auth/auth-server.js +1 -1
  9. package/lib/auth/constant.js +1 -1
  10. package/lib/auth/get-cookie.js +1 -1
  11. package/lib/auth/get-session-user.js +1 -1
  12. package/lib/auth/is-session-valid.js +1 -1
  13. package/lib/auth/login-success-html.js +1 -1
  14. package/lib/auth/logout.js +1 -1
  15. package/lib/cli-flags.js +1 -1
  16. package/lib/cli.js +1 -1
  17. package/lib/commands/api/generate.js +1 -1
  18. package/lib/commands/api/index.js +1 -1
  19. package/lib/commands/api/list.js +1 -1
  20. package/lib/commands/api/pull.js +1 -1
  21. package/lib/commands/api/shared.js +1 -1
  22. package/lib/commands/app/index.js +1 -1
  23. package/lib/commands/app/list.js +1 -1
  24. package/lib/commands/app/members-list.js +1 -1
  25. package/lib/commands/app/remote-directory.js +1 -1
  26. package/lib/commands/app/shared.js +1 -1
  27. package/lib/commands/app-config/delete.js +1 -1
  28. package/lib/commands/app-config/get.js +1 -1
  29. package/lib/commands/app-config/index.js +1 -1
  30. package/lib/commands/app-config/list.js +1 -1
  31. package/lib/commands/app-config/set.js +1 -1
  32. package/lib/commands/app-config/shared.js +1 -1
  33. package/lib/commands/auth/index.js +1 -1
  34. package/lib/commands/bff/create.js +1 -1
  35. package/lib/commands/bff/delete.js +1 -1
  36. package/lib/commands/bff/detail.js +1 -1
  37. package/lib/commands/bff/index.js +1 -1
  38. package/lib/commands/bff/list.js +1 -1
  39. package/lib/commands/bff/pull.js +1 -1
  40. package/lib/commands/bff/push.js +1 -1
  41. package/lib/commands/bff/status.js +1 -1
  42. package/lib/commands/cli-skill/index.js +1 -1
  43. package/lib/commands/cli-update.js +1 -1
  44. package/lib/commands/codegen/index.js +1 -1
  45. package/lib/commands/codegen/sdk.js +1 -1
  46. package/lib/commands/codegen/sql.js +1 -1
  47. package/lib/commands/common/app-registry.js +1 -1
  48. package/lib/commands/common/app-selector.js +1 -1
  49. package/lib/commands/common/async-task.js +1 -1
  50. package/lib/commands/common/dry-run.js +1 -1
  51. package/lib/commands/common/flags.d.ts +2 -0
  52. package/lib/commands/common/flags.js +1 -1
  53. package/lib/commands/common/local-file.js +1 -1
  54. package/lib/commands/common/validate.js +1 -1
  55. package/lib/commands/config/delete.js +1 -1
  56. package/lib/commands/config/get.js +1 -1
  57. package/lib/commands/config/index.js +1 -1
  58. package/lib/commands/config/init.d.ts +2 -0
  59. package/lib/commands/config/init.js +1 -1
  60. package/lib/commands/config/list.js +1 -1
  61. package/lib/commands/config/set.js +1 -1
  62. package/lib/commands/config/shared.js +1 -1
  63. package/lib/commands/dataset/business-group-update.js +1 -1
  64. package/lib/commands/dataset/business-groups.js +1 -1
  65. package/lib/commands/dataset/capability.js +1 -1
  66. package/lib/commands/dataset/delete.js +1 -1
  67. package/lib/commands/dataset/detail.js +1 -1
  68. package/lib/commands/dataset/extend-update.js +1 -1
  69. package/lib/commands/dataset/field-restore.js +1 -1
  70. package/lib/commands/dataset/field-update.js +1 -1
  71. package/lib/commands/dataset/generate.js +1 -1
  72. package/lib/commands/dataset/index.js +1 -1
  73. package/lib/commands/dataset/list.js +1 -1
  74. package/lib/commands/dataset/operations.js +1 -1
  75. package/lib/commands/dataset/relation-audit.js +1 -1
  76. package/lib/commands/dataset/relation-create.js +1 -1
  77. package/lib/commands/dataset/relation-delete.js +1 -1
  78. package/lib/commands/dataset/relation-shared.js +1 -1
  79. package/lib/commands/dataset/relation-update.js +1 -1
  80. package/lib/commands/dataset/relations.js +1 -1
  81. package/lib/commands/dataset/rename.js +1 -1
  82. package/lib/commands/dataset/restore.js +1 -1
  83. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  84. package/lib/commands/db/analysis-batching.js +1 -1
  85. package/lib/commands/db/analyze-batch-plan.js +1 -1
  86. package/lib/commands/db/analyze-cancel.js +1 -1
  87. package/lib/commands/db/analyze-start.js +1 -1
  88. package/lib/commands/db/analyze-status.js +1 -1
  89. package/lib/commands/db/create.js +1 -1
  90. package/lib/commands/db/delete.js +1 -1
  91. package/lib/commands/db/detail.js +1 -1
  92. package/lib/commands/db/diff-refresh-start.js +1 -1
  93. package/lib/commands/db/diff-refresh-status.js +1 -1
  94. package/lib/commands/db/diff.js +1 -1
  95. package/lib/commands/db/index.js +1 -1
  96. package/lib/commands/db/list.js +1 -1
  97. package/lib/commands/db/shared.js +1 -1
  98. package/lib/commands/db/table-diff-shared.js +1 -1
  99. package/lib/commands/db/tables.js +1 -1
  100. package/lib/commands/db/test.js +1 -1
  101. package/lib/commands/db/update.js +1 -1
  102. package/lib/commands/deployment/auto-sync.js +1 -1
  103. package/lib/commands/deployment/index.js +1 -1
  104. package/lib/commands/deployment/sync.js +1 -1
  105. package/lib/commands/doctor.js +1 -1
  106. package/lib/commands/file/index.js +1 -1
  107. package/lib/commands/issue/index.js +1 -1
  108. package/lib/commands/issue/nudge.js +1 -1
  109. package/lib/commands/issue/report.js +1 -1
  110. package/lib/commands/issue/shared.js +1 -1
  111. package/lib/commands/kb/create.js +1 -1
  112. package/lib/commands/kb/delete.js +1 -1
  113. package/lib/commands/kb/detail.js +1 -1
  114. package/lib/commands/kb/index.js +1 -1
  115. package/lib/commands/kb/list.js +1 -1
  116. package/lib/commands/kb/search.js +1 -1
  117. package/lib/commands/kb/shared.js +1 -1
  118. package/lib/commands/kb/update.js +1 -1
  119. package/lib/commands/logs/index.js +1 -1
  120. package/lib/commands/menu/asset-update.js +1 -1
  121. package/lib/commands/menu/delete.js +1 -1
  122. package/lib/commands/menu/external-link-create.js +1 -1
  123. package/lib/commands/menu/external-link-update.js +1 -1
  124. package/lib/commands/menu/group-create.js +1 -1
  125. package/lib/commands/menu/group-update.js +1 -1
  126. package/lib/commands/menu/index.js +1 -1
  127. package/lib/commands/menu/list.js +1 -1
  128. package/lib/commands/menu/move.js +1 -1
  129. package/lib/commands/menu/regroup-start.js +1 -1
  130. package/lib/commands/menu/rename.js +1 -1
  131. package/lib/commands/menu/shared/compare-table.js +1 -1
  132. package/lib/commands/menu/shared/delete-plan.js +1 -1
  133. package/lib/commands/menu/shared/facts.js +1 -1
  134. package/lib/commands/menu/shared/index.js +1 -1
  135. package/lib/commands/menu/shared/inquirer.js +1 -1
  136. package/lib/commands/menu/shared/local-pages.js +1 -1
  137. package/lib/commands/menu/shared/logic.js +1 -1
  138. package/lib/commands/menu/shared/mutations.js +1 -1
  139. package/lib/commands/menu/shared/service.js +1 -1
  140. package/lib/commands/menu/shared/sync-core.js +1 -1
  141. package/lib/commands/menu/shared/update-core.js +1 -1
  142. package/lib/commands/menu/shared/valid-url.js +1 -1
  143. package/lib/commands/menu/sync.js +1 -1
  144. package/lib/commands/menu/visibility-update.js +1 -1
  145. package/lib/commands/notification/config-create.js +1 -1
  146. package/lib/commands/notification/config-delete.js +1 -1
  147. package/lib/commands/notification/config-list.js +1 -1
  148. package/lib/commands/notification/config-update.js +1 -1
  149. package/lib/commands/notification/index.js +1 -1
  150. package/lib/commands/notification/shared.js +1 -1
  151. package/lib/commands/ocr/index.js +1 -1
  152. package/lib/commands/page/create.js +1 -1
  153. package/lib/commands/page/custom/detail.js +1 -1
  154. package/lib/commands/page/custom/list.js +1 -1
  155. package/lib/commands/page/custom/publish.js +1 -1
  156. package/lib/commands/page/custom/shared.js +1 -1
  157. package/lib/commands/page/custom/syntax.js +1 -1
  158. package/lib/commands/page/custom/template.js +1 -1
  159. package/lib/commands/page/custom/update.js +1 -1
  160. package/lib/commands/page/data-list-status.js +1 -1
  161. package/lib/commands/page/generate-start.js +1 -1
  162. package/lib/commands/page/generate-status.js +1 -1
  163. package/lib/commands/page/index.js +1 -1
  164. package/lib/commands/page/pull.js +1 -1
  165. package/lib/commands/page/push.js +1 -1
  166. package/lib/commands/page/relation-audit.js +1 -1
  167. package/lib/commands/page/restore.js +1 -1
  168. package/lib/commands/page/shared.js +1 -1
  169. package/lib/commands/page/sync.js +1 -1
  170. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  171. package/lib/commands/project/create/format-elapsed.js +1 -1
  172. package/lib/commands/project/create/main.d.ts +1 -0
  173. package/lib/commands/project/create/main.js +1 -1
  174. package/lib/commands/project/create/materialize-project-template.js +1 -1
  175. package/lib/commands/project/create/project-name.js +1 -1
  176. package/lib/commands/project/create/project-template-archive.js +1 -1
  177. package/lib/commands/project/create/project-template-path.js +1 -1
  178. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  179. package/lib/commands/project/create/use-format-code.js +1 -1
  180. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  181. package/lib/commands/project/domain-routing-sync.d.ts +2 -0
  182. package/lib/commands/project/domain-routing-sync.js +1 -0
  183. package/lib/commands/project/index.js +1 -1
  184. package/lib/commands/project/upgrade.js +1 -1
  185. package/lib/commands/registry.js +1 -1
  186. package/lib/commands/role/delete.js +1 -1
  187. package/lib/commands/role/detail.js +1 -1
  188. package/lib/commands/role/index.js +1 -1
  189. package/lib/commands/role/list.js +1 -1
  190. package/lib/commands/role/shared.js +1 -1
  191. package/lib/commands/role/update.js +1 -1
  192. package/lib/commands/role/user-add.js +1 -1
  193. package/lib/commands/role/user-remove.js +1 -1
  194. package/lib/commands/role/user-resolve.js +1 -1
  195. package/lib/commands/rule/get.d.ts +2 -0
  196. package/lib/commands/rule/get.js +1 -0
  197. package/lib/commands/rule/index.d.ts +2 -0
  198. package/lib/commands/rule/index.js +1 -0
  199. package/lib/commands/rule/list.d.ts +2 -0
  200. package/lib/commands/rule/list.js +1 -0
  201. package/lib/commands/rule/set.d.ts +2 -0
  202. package/lib/commands/rule/set.js +1 -0
  203. package/lib/commands/rule/shared.d.ts +43 -0
  204. package/lib/commands/rule/shared.js +1 -0
  205. package/lib/commands/run/index.js +1 -1
  206. package/lib/commands/schema.js +1 -1
  207. package/lib/commands/sql/create.js +1 -1
  208. package/lib/commands/sql/delete.js +1 -1
  209. package/lib/commands/sql/detail.js +1 -1
  210. package/lib/commands/sql/exec.js +1 -1
  211. package/lib/commands/sql/index.js +1 -1
  212. package/lib/commands/sql/list.js +1 -1
  213. package/lib/commands/sql/pull.js +1 -1
  214. package/lib/commands/sql/push.js +1 -1
  215. package/lib/commands/sql/shared.js +1 -1
  216. package/lib/commands/sql/status.js +1 -1
  217. package/lib/commands/sql/validate.js +1 -1
  218. package/lib/commands/task/index.js +1 -1
  219. package/lib/commands/task/status.js +1 -1
  220. package/lib/commands/tenant/index.js +1 -1
  221. package/lib/commands/tenant/members-list.js +1 -1
  222. package/lib/commands/tenant/shared.js +1 -1
  223. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  224. package/lib/commands/user-account/index.js +1 -1
  225. package/lib/commands/workspace/add.js +1 -1
  226. package/lib/commands/workspace/index.js +1 -1
  227. package/lib/commands/workspace/remove.js +1 -1
  228. package/lib/config/deployment-sync.js +1 -1
  229. package/lib/config/domain-config.d.ts +37 -1
  230. package/lib/config/domain-config.js +1 -1
  231. package/lib/config/project-domain-routing.d.ts +27 -0
  232. package/lib/config/project-domain-routing.js +1 -0
  233. package/lib/config/schema.d.ts +1 -1
  234. package/lib/config/schema.js +1 -1
  235. package/lib/constant/cdn.js +1 -1
  236. package/lib/constant/cli.js +1 -1
  237. package/lib/constant/defaults.js +1 -1
  238. package/lib/constant/domain.d.ts +10 -4
  239. package/lib/constant/domain.js +1 -1
  240. package/lib/constant/env.js +1 -1
  241. package/lib/constant/output.js +1 -1
  242. package/lib/constant/paths.js +1 -1
  243. package/lib/constant/region.d.ts +4 -1
  244. package/lib/constant/region.js +1 -1
  245. package/lib/constant/risk.js +1 -1
  246. package/lib/constant/routing-profile.d.ts +43 -49
  247. package/lib/constant/routing-profile.js +1 -1
  248. package/lib/context/app-resolver.js +1 -1
  249. package/lib/context/auth-resolver.js +1 -1
  250. package/lib/context/config-loader.js +1 -1
  251. package/lib/context.d.ts +2 -0
  252. package/lib/context.js +1 -1
  253. package/lib/core/alias-resolver.js +1 -1
  254. package/lib/core/api-client.d.ts +21 -0
  255. package/lib/core/api-client.js +1 -1
  256. package/lib/core/bff/config.js +1 -1
  257. package/lib/core/bff/file-system.js +1 -1
  258. package/lib/core/bff/hash.js +1 -1
  259. package/lib/core/bff/lock.js +1 -1
  260. package/lib/core/bff/utils.js +1 -1
  261. package/lib/core/db-resolver.js +1 -1
  262. package/lib/core/kb-search-client.js +1 -1
  263. package/lib/core/page/file-system.js +1 -1
  264. package/lib/core/page/hash.js +1 -1
  265. package/lib/core/page/lock.js +1 -1
  266. package/lib/core/sql-index-auditor.js +1 -1
  267. package/lib/core/sql-sync/config.js +1 -1
  268. package/lib/core/sql-sync/file-system.js +1 -1
  269. package/lib/core/sql-sync/hash.js +1 -1
  270. package/lib/core/sql-sync/lock.js +1 -1
  271. package/lib/core/sql-sync/utils.js +1 -1
  272. package/lib/core/sql-validator.js +1 -1
  273. package/lib/errors.js +1 -1
  274. package/lib/framework/build-all-flags.js +1 -1
  275. package/lib/framework/error-output.js +1 -1
  276. package/lib/framework/explicit-yes.js +1 -1
  277. package/lib/framework/flags.js +1 -1
  278. package/lib/framework/help.js +1 -1
  279. package/lib/framework/index.js +1 -1
  280. package/lib/framework/output.js +1 -1
  281. package/lib/framework/response.js +1 -1
  282. package/lib/framework/runner-alias.js +1 -1
  283. package/lib/framework/runner.js +1 -1
  284. package/lib/framework/schema-export.js +1 -1
  285. package/lib/framework/types.js +1 -1
  286. package/lib/generated/build-info.d.ts +4 -4
  287. package/lib/generated/build-info.js +1 -1
  288. package/lib/generated/official-routing.d.ts +83 -0
  289. package/lib/generated/official-routing.js +1 -0
  290. package/lib/generated/routing-contract.d.ts +9 -0
  291. package/lib/generated/routing-contract.js +1 -0
  292. package/lib/help.js +1 -1
  293. package/lib/postinstall.js +1 -1
  294. package/lib/runtime/confirmation.js +1 -1
  295. package/lib/runtime/event.js +1 -1
  296. package/lib/runtime/index.js +1 -1
  297. package/lib/runtime/queue.js +1 -1
  298. package/lib/runtime/resolve.js +1 -1
  299. package/lib/skills/builtin-skill.js +1 -1
  300. package/lib/skills/main.js +1 -1
  301. package/lib/skills/npx-skills-add.js +1 -1
  302. package/lib/skills/skill-presence.js +1 -1
  303. package/lib/telemetry/cli-command-trace.js +1 -1
  304. package/lib/telemetry/cli-help-trace.js +1 -1
  305. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  306. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  307. package/lib/telemetry/send-cli-trace-log.js +1 -1
  308. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  309. package/lib/types/index.d.ts +0 -1
  310. package/lib/utils/ai_config.js +1 -1
  311. package/lib/utils/apply-jq-filter.js +1 -1
  312. package/lib/utils/cdn-config.js +1 -1
  313. package/lib/utils/check-sdk-version.js +1 -1
  314. package/lib/utils/cli-version-check.js +1 -1
  315. package/lib/utils/cli-version-policy.js +1 -1
  316. package/lib/utils/config.js +1 -1
  317. package/lib/utils/entity-with-id.js +1 -1
  318. package/lib/utils/file-utils.js +1 -1
  319. package/lib/utils/guides-cdn.js +1 -1
  320. package/lib/utils/http-client.js +1 -1
  321. package/lib/utils/is-non-interactive.js +1 -1
  322. package/lib/utils/logger.js +1 -1
  323. package/lib/utils/params.js +1 -1
  324. package/lib/utils/platform.js +1 -1
  325. package/lib/utils/sleep.js +1 -1
  326. package/lib/utils/template-replacer.js +1 -1
  327. package/lib/utils/update-notice.js +1 -1
  328. package/lib/utils/version.js +1 -1
  329. package/lib/utils/with-active-cookie.js +1 -1
  330. package/lib/utils/write-cli-side-channel.js +1 -1
  331. package/package.json +2 -1
  332. package/skills/rabetbase/SKILL.md +15 -12
  333. package/skills/rabetbase/guides/sdk-client-generation.md +10 -8
  334. package/skills/rabetbase/references/rabetbase-api-pull.md +16 -11
  335. package/skills/rabetbase/references/rabetbase-config.md +3 -3
  336. package/skills/rabetbase/references/rabetbase-database-template.md +36 -0
  337. package/skills/rabetbase/references/rabetbase-doctor.md +1 -0
  338. package/skills/rabetbase/references/rabetbase-init.md +32 -8
  339. package/skills/rabetbase/references/rabetbase-project-create.md +33 -8
  340. package/skills/rabetbase/references/rabetbase-project-domain-routing-sync.md +28 -0
  341. package/skills/rabetbase/references/rabetbase-rule.md +64 -0
  342. package/skills/rabetbase.manifest.json +6 -3
  343. package/lib/config/project-routing.d.ts +0 -30
  344. package/lib/config/project-routing.js +0 -1
@@ -1 +1 @@
1
- const a112_0x558b3c=a112_0x2558;(function(_0x2aadcd,_0x34babf){const _0x52640a=a112_0x2558,_0x2fe26f=_0x2aadcd();while(!![]){try{const _0x5c3f6d=-parseInt(_0x52640a(0x14e))/0x1*(parseInt(_0x52640a(0x147))/0x2)+-parseInt(_0x52640a(0x177))/0x3*(-parseInt(_0x52640a(0x13b))/0x4)+parseInt(_0x52640a(0x15c))/0x5*(parseInt(_0x52640a(0x14d))/0x6)+parseInt(_0x52640a(0x167))/0x7+-parseInt(_0x52640a(0x17c))/0x8+parseInt(_0x52640a(0x151))/0x9+-parseInt(_0x52640a(0x163))/0xa*(parseInt(_0x52640a(0x14f))/0xb);if(_0x5c3f6d===_0x34babf)break;else _0x2fe26f['push'](_0x2fe26f['shift']());}catch(_0x9efcf1){_0x2fe26f['push'](_0x2fe26f['shift']());}}}(a112_0x9290,0x1b344));import{createHash}from'node:crypto';import{readFile,stat}from'node:fs/promises';import{resolve}from'node:path';function a112_0x9290(){const _0x48cc8c=['kb_content_invalid','isFile','trim','currentPage','yes','update','Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.','kb_','kb_response_invalid','5Zmvjvq','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','updateTime','kb_not_found','bool','kb_list_contract_invalid','Pass\x20--file\x20<knowledge.md>.','10JRtUME','\x20response\x20is\x20missing\x20','content','sha256','567357IawUpL','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','sha256:','utf-8','paging','length','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','\x20response\x20contains\x20an\x20invalid\x20version.','createTime','\x20records.','kb_file_invalid','Knowledge-base\x20get-one\x20returned\x20id\x20','306','totalCount','allowEmpty','Cannot\x20access\x20knowledge-base\x20content\x20file:\x20','306447tnTEEy','isSafeInteger','The\x20','defineProperty','digest','1748456HcdmWy','stringify','--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.','number','num','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','add','version','company','title','hex','scope','kb_state_drift','Knowledge\x20base\x20','from','string','kb_id_invalid','\x20during\x20paging.','contentHash','filter','Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','items','kb_scope_mismatch','4lktObv','Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20','outcome_unknown','has','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.','kb_file_unreadable','\x20was\x20requested.','appCode','Knowledge-base\x20content\x20file\x20is\x20blank:\x20','message','decode','Knowledge-base\x20content\x20file\x20path\x20is\x20required.','18838nFEmFi','kb_file_required','byteSize','\x20to\x20','dry-run','Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.','153066jppldW','4sBDaOG','562298MaxNtJ','\x20version\x20changed:\x20expected\x20','1890612bTBjPi','\x20of\x20'];a112_0x9290=function(){return _0x48cc8c;};return a112_0x9290();}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=a112_0x558b3c(0x173);export function kbError(_0x1ddae2,_0xe5295f,_0x1f8311){return new CliError(_0x1ddae2,0x1,_0xe5295f,_0x1f8311);}export function readKbId(_0x3e9bd2){const _0x1e8439=a112_0x558b3c,_0x1c5b53=_0x3e9bd2[_0x1e8439(0x180)]('id');if(!Number['isSafeInteger'](_0x1c5b53)||_0x1c5b53<=0x0)throw kbError(_0x1e8439(0x134),_0x1e8439(0x17e));return _0x1c5b53;}export function requireKbExplicitYes(_0x1aaa69){const _0x1889df=a112_0x558b3c;if(_0x1aaa69['bool'](_0x1889df(0x14b))||_0x1aaa69[_0x1889df(0x160)](_0x1889df(0x157)))return;throw kbError('kb_confirmation_required','This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.',_0x1889df(0x15d));}function sha256(_0xa76e9){const _0x302fe8=a112_0x558b3c;return _0x302fe8(0x169)+createHash(_0x302fe8(0x166))[_0x302fe8(0x158)](_0xa76e9)[_0x302fe8(0x17b)](_0x302fe8(0x12e));}export function inspectKbContent(_0x19082d){const _0x3deb12=a112_0x558b3c,_0xc0a440=Buffer[_0x3deb12(0x132)](_0x19082d,'utf8');return{'content':_0x19082d,'byteSize':_0xc0a440['byteLength'],'contentHash':sha256(_0xc0a440)};}export async function readKbFile(_0x65eaef){const _0x324aaf=a112_0x558b3c,_0x2b2591=_0x65eaef[_0x324aaf(0x155)]();if(!_0x2b2591)throw kbError(_0x324aaf(0x148),_0x324aaf(0x146),_0x324aaf(0x162));const _0x4455b4=resolve(_0x2b2591);let _0x51995b;try{_0x51995b=await stat(_0x4455b4);}catch(_0x34716c){throw kbError(_0x324aaf(0x140),_0x324aaf(0x176)+_0x2b2591,_0x34716c instanceof Error?_0x34716c[_0x324aaf(0x144)]:String(_0x34716c));}if(!_0x51995b[_0x324aaf(0x154)]())throw kbError(_0x324aaf(0x171),_0x324aaf(0x138)+_0x2b2591);let _0x28f7dd;try{_0x28f7dd=await readFile(_0x4455b4);}catch(_0x4089c9){throw kbError(_0x324aaf(0x140),_0x324aaf(0x181)+_0x2b2591,_0x4089c9 instanceof Error?_0x4089c9[_0x324aaf(0x144)]:String(_0x4089c9));}let _0x2c6f2d;try{_0x2c6f2d=new TextDecoder(_0x324aaf(0x16a),{'fatal':!![],'ignoreBOM':!![]})[_0x324aaf(0x145)](_0x28f7dd);}catch{throw kbError(_0x324aaf(0x153),'Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20'+_0x2b2591);}if(!_0x2c6f2d[_0x324aaf(0x155)]())throw kbError('kb_content_invalid',_0x324aaf(0x143)+_0x2b2591);return inspectKbContent(_0x2c6f2d);}export async function verifyKbMutationReadback(_0x3b8f9a,_0x412c8a,_0x170503){const _0x289564=a112_0x558b3c;try{return await _0x170503();}catch(_0x5f4888){const _0xa7fa70=kbError(_0x289564(0x15a)+_0x3b8f9a+'_'+(_0x412c8a?_0x289564(0x13d):'verification_unavailable'),_0x289564(0x179)+_0x3b8f9a+_0x289564(0x168),_0x289564(0x16d));Object[_0x289564(0x17a)](_0xa7fa70,'cause',{'value':_0x5f4888,'enumerable':![]});throw _0xa7fa70;}}function requireRecordText(_0x53a3d8,_0x550b90,_0x390a21,_0xc7ca2a={}){const _0x1de414=a112_0x558b3c;if(typeof _0x53a3d8===_0x1de414(0x133)&&(_0xc7ca2a[_0x1de414(0x175)]||_0x53a3d8[_0x1de414(0x155)]()))return _0x53a3d8;throw kbError(_0x1de414(0x15b),_0x1de414(0x131)+String(_0x390a21)+_0x1de414(0x164)+_0x550b90+'.');}export function projectKb(_0x16cf3a){const _0x2148d0=a112_0x558b3c;if(!Number[_0x2148d0(0x178)](_0x16cf3a['id'])||_0x16cf3a['id']<=0x0)throw kbError(_0x2148d0(0x15b),'Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.');if(!Number['isSafeInteger'](_0x16cf3a['version'])||_0x16cf3a[_0x2148d0(0x183)]<0x0)throw kbError(_0x2148d0(0x15b),'Knowledge\x20base\x20'+_0x16cf3a['id']+_0x2148d0(0x16e));if(_0x16cf3a[_0x2148d0(0x12f)]!=='company')throw kbError(_0x2148d0(0x13a),_0x2148d0(0x131)+_0x16cf3a['id']+'\x20is\x20not\x20company-scoped.');const _0x4890ba=requireRecordText(_0x16cf3a[_0x2148d0(0x142)],_0x2148d0(0x142),_0x16cf3a['id']),_0x2e1a10=requireRecordText(_0x16cf3a[_0x2148d0(0x185)],_0x2148d0(0x185),_0x16cf3a['id']),_0x543575=inspectKbContent(requireRecordText(_0x16cf3a[_0x2148d0(0x165)],_0x2148d0(0x165),_0x16cf3a['id'],{'allowEmpty':!![]})),_0x39815f=typeof _0x16cf3a[_0x2148d0(0x16f)]===_0x2148d0(0x133)||typeof _0x16cf3a['createTime']===_0x2148d0(0x17f)?_0x16cf3a[_0x2148d0(0x16f)]:undefined,_0x1afb04=typeof _0x16cf3a['updateTime']==='string'||typeof _0x16cf3a[_0x2148d0(0x15e)]===_0x2148d0(0x17f)?_0x16cf3a['updateTime']:undefined,_0x4e66c5=sha256(JSON[_0x2148d0(0x17d)]({'id':_0x16cf3a['id'],'scope':_0x16cf3a['scope'],'appCode':_0x4890ba,'title':_0x2e1a10,'version':_0x16cf3a[_0x2148d0(0x183)],'contentHash':_0x543575['contentHash'],'createTime':_0x39815f,'updateTime':_0x1afb04}));return{'id':_0x16cf3a['id'],'scope':'company','appCode':_0x4890ba,'title':_0x2e1a10,'version':_0x16cf3a[_0x2148d0(0x183)],'contentByteSize':_0x543575[_0x2148d0(0x149)],'contentHash':_0x543575[_0x2148d0(0x136)],'snapshotHash':_0x4e66c5,..._0x39815f!==undefined?{'createTime':_0x39815f}:{},..._0x1afb04!==undefined?{'updateTime':_0x1afb04}:{}};}export function assertCompanyKnowledgeBase(_0x33ef62,_0x28936b,_0x46933d){const _0x24e0b4=a112_0x558b3c;if(_0x46933d!==undefined&&_0x33ef62['id']!==_0x46933d)throw kbError(_0x24e0b4(0x15b),_0x24e0b4(0x172)+_0x33ef62['id']+'\x20while\x20id\x20'+_0x46933d+_0x24e0b4(0x141));if(_0x33ef62[_0x24e0b4(0x12f)]!==_0x24e0b4(0x184)||_0x33ef62[_0x24e0b4(0x142)]!==_0x28936b)throw kbError('kb_scope_mismatch',_0x24e0b4(0x131)+_0x33ef62['id']+'\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20'+_0x28936b+'.');}function a112_0x2558(_0x1f63d3,_0x3e3be6){_0x1f63d3=_0x1f63d3-0x12e;const _0x929012=a112_0x9290();let _0x255876=_0x929012[_0x1f63d3];return _0x255876;}export async function fetchAllCompanyKnowledgeBases(_0x1db7a4,_0x36675c){const _0x4dd0a5=a112_0x558b3c,_0x36bf55=[],_0xeb6657=new Set();let _0x546284=0x1,_0x6af2ba=0x0,_0x5256a5;while(!![]){const _0xf3e0fa=await listEnterpriseKnowledgeBases(_0x1db7a4['cookie'],{'currentPage':_0x546284,'pageSize':LIST_PAGE_SIZE,'appCode':_0x1db7a4['appCode'],..._0x36675c}),_0x35854b=_0xf3e0fa[_0x4dd0a5(0x16b)]?.[_0x4dd0a5(0x174)];if(_0xf3e0fa['paging']?.[_0x4dd0a5(0x156)]!==undefined&&_0xf3e0fa[_0x4dd0a5(0x16b)][_0x4dd0a5(0x156)]!==_0x546284)throw kbError('kb_list_contract_invalid','Knowledge-base\x20list\x20returned\x20page\x20'+_0xf3e0fa[_0x4dd0a5(0x16b)][_0x4dd0a5(0x156)]+'\x20while\x20page\x20'+_0x546284+_0x4dd0a5(0x141));if(_0x35854b!==undefined){if(_0x5256a5!==undefined&&_0x35854b!==_0x5256a5)throw kbError(_0x4dd0a5(0x161),'Knowledge-base\x20list\x20total\x20changed\x20from\x20'+_0x5256a5+_0x4dd0a5(0x14a)+_0x35854b+_0x4dd0a5(0x135),_0x4dd0a5(0x14c));_0x5256a5=_0x35854b;}for(const _0x34f5e6 of _0xf3e0fa[_0x4dd0a5(0x139)]){if(!Number[_0x4dd0a5(0x178)](_0x34f5e6['id'])||_0xeb6657[_0x4dd0a5(0x13e)](_0x34f5e6['id']))throw kbError(_0x4dd0a5(0x161),_0x4dd0a5(0x13c)+String(_0x34f5e6['id'])+'.');_0xeb6657[_0x4dd0a5(0x182)](_0x34f5e6['id']),_0x34f5e6[_0x4dd0a5(0x12f)]===_0x4dd0a5(0x184)&&_0x34f5e6[_0x4dd0a5(0x142)]===_0x1db7a4[_0x4dd0a5(0x142)]&&_0x36bf55['push'](_0x34f5e6);}_0x6af2ba+=_0xf3e0fa[_0x4dd0a5(0x139)][_0x4dd0a5(0x16c)];if(_0x35854b!==undefined&&_0x6af2ba>=_0x35854b)break;if(_0xf3e0fa[_0x4dd0a5(0x139)][_0x4dd0a5(0x16c)]<LIST_PAGE_SIZE){if(_0x35854b!==undefined&&_0x6af2ba<_0x35854b)throw kbError(_0x4dd0a5(0x161),'Knowledge-base\x20list\x20stopped\x20at\x20'+_0x6af2ba+_0x4dd0a5(0x152)+_0x35854b+_0x4dd0a5(0x170));break;}_0x546284+=0x1;}return _0x36bf55;}export function findExactCompanyKnowledgeBases(_0x206880,_0x2a9749,_0x4eb0cb){const _0x2eeb5e=a112_0x558b3c;return _0x206880[_0x2eeb5e(0x137)](_0x5599d5=>_0x5599d5[_0x2eeb5e(0x12f)]==='company'&&_0x5599d5[_0x2eeb5e(0x142)]===_0x2a9749&&_0x5599d5[_0x2eeb5e(0x185)]===_0x4eb0cb);}export async function getKbOrNull(_0x1fa0b9,_0x26416a){try{const _0xa2b37b=await getEnterpriseKnowledgeBase(_0x1fa0b9['cookie'],_0x26416a);return assertCompanyKnowledgeBase(_0xa2b37b,_0x1fa0b9['appCode'],_0x26416a),_0xa2b37b;}catch(_0x5e26d2){if(getPlatformErrorCode(_0x5e26d2)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x5e26d2;}}export async function requireKb(_0x2a544e,_0xbcda96){const _0x486dbb=a112_0x558b3c,_0x4e3ea0=await getKbOrNull(_0x2a544e,_0xbcda96);if(!_0x4e3ea0)throw kbError(_0x486dbb(0x15f),'Company\x20knowledge\x20base\x20not\x20found:\x20'+_0xbcda96,_0x486dbb(0x159));return _0x4e3ea0;}export function assertExpectedKbVersion(_0x15457f,_0x5efd67){const _0x4f7c4e=a112_0x558b3c;if(_0x5efd67===undefined||_0x15457f[_0x4f7c4e(0x183)]===_0x5efd67)return;throw kbError(_0x4f7c4e(0x130),_0x4f7c4e(0x131)+_0x15457f['id']+_0x4f7c4e(0x150)+_0x5efd67+',\x20current\x20'+_0x15457f['version']+'.',_0x4f7c4e(0x13f));}
1
+ (function(_0x523345,_0x9cfa4a){const _0x342cf3=a112_0x20a9,_0x4e6db9=_0x523345();while(!![]){try{const _0x21beae=parseInt(_0x342cf3(0xaf))/0x1+-parseInt(_0x342cf3(0xfa))/0x2+parseInt(_0x342cf3(0xb3))/0x3*(-parseInt(_0x342cf3(0xdc))/0x4)+parseInt(_0x342cf3(0xe0))/0x5*(parseInt(_0x342cf3(0xe1))/0x6)+parseInt(_0x342cf3(0xbe))/0x7+parseInt(_0x342cf3(0xfb))/0x8*(parseInt(_0x342cf3(0xee))/0x9)+-parseInt(_0x342cf3(0xd4))/0xa;if(_0x21beae===_0x9cfa4a)break;else _0x4e6db9['push'](_0x4e6db9['shift']());}catch(_0x56dc9f){_0x4e6db9['push'](_0x4e6db9['shift']());}}}(a112_0xf849,0x461fd));import{createHash}from'node:crypto';import{readFile,stat}from'node:fs/promises';function a112_0x20a9(_0x24e632,_0x37cf33){_0x24e632=_0x24e632-0xa8;const _0xf8492=a112_0xf849();let _0x20a99c=_0xf8492[_0x24e632];return _0x20a99c;}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(_0x476f2b,_0xb6bdd9,_0xc9ee59){return new CliError(_0x476f2b,0x1,_0xb6bdd9,_0xc9ee59);}export function readKbId(_0x7b2606){const _0x271354=a112_0x20a9,_0x150fbb=_0x7b2606[_0x271354(0xaa)]('id');if(!Number[_0x271354(0xce)](_0x150fbb)||_0x150fbb<=0x0)throw kbError('kb_id_invalid',_0x271354(0xe2));return _0x150fbb;}export function requireKbExplicitYes(_0x401d4d){const _0x17e4bc=a112_0x20a9;if(_0x401d4d['bool'](_0x17e4bc(0xcb))||_0x401d4d[_0x17e4bc(0xba)]('yes'))return;throw kbError(_0x17e4bc(0xef),'This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.',_0x17e4bc(0xe9));}function sha256(_0x1ab55e){const _0x15b215=a112_0x20a9;return _0x15b215(0xe6)+createHash(_0x15b215(0xc9))[_0x15b215(0xcf)](_0x1ab55e)[_0x15b215(0xe4)](_0x15b215(0xec));}export function inspectKbContent(_0x4ce55f){const _0x48b459=a112_0x20a9,_0x3e34b5=Buffer[_0x48b459(0xea)](_0x4ce55f,'utf8');return{'content':_0x4ce55f,'byteSize':_0x3e34b5[_0x48b459(0xc2)],'contentHash':sha256(_0x3e34b5)};}export async function readKbFile(_0x349cb8){const _0x2cf0ae=a112_0x20a9,_0x1b7322=_0x349cb8['trim']();if(!_0x1b7322)throw kbError(_0x2cf0ae(0xfd),'Knowledge-base\x20content\x20file\x20path\x20is\x20required.',_0x2cf0ae(0xc6));const _0x102502=resolve(_0x1b7322);let _0x170cbc;try{_0x170cbc=await stat(_0x102502);}catch(_0x54aeb6){throw kbError(_0x2cf0ae(0xf8),'Cannot\x20access\x20knowledge-base\x20content\x20file:\x20'+_0x1b7322,_0x54aeb6 instanceof Error?_0x54aeb6[_0x2cf0ae(0xd3)]:String(_0x54aeb6));}if(!_0x170cbc['isFile']())throw kbError(_0x2cf0ae(0xf6),_0x2cf0ae(0xb1)+_0x1b7322);let _0x35606d;try{_0x35606d=await readFile(_0x102502);}catch(_0x57f074){throw kbError(_0x2cf0ae(0xf8),_0x2cf0ae(0xb7)+_0x1b7322,_0x57f074 instanceof Error?_0x57f074[_0x2cf0ae(0xd3)]:String(_0x57f074));}let _0x19b72b;try{_0x19b72b=new TextDecoder(_0x2cf0ae(0xc1),{'fatal':!![],'ignoreBOM':!![]})[_0x2cf0ae(0xdf)](_0x35606d);}catch{throw kbError('kb_content_invalid',_0x2cf0ae(0xbd)+_0x1b7322);}if(!_0x19b72b[_0x2cf0ae(0xda)]())throw kbError('kb_content_invalid',_0x2cf0ae(0xfe)+_0x1b7322);return inspectKbContent(_0x19b72b);}export async function verifyKbMutationReadback(_0x1b1bf9,_0x5c1193,_0xb0859){const _0x18b86b=a112_0x20a9;try{return await _0xb0859();}catch(_0x1aa172){const _0x55729a=kbError('kb_'+_0x1b1bf9+'_'+(_0x5c1193?_0x18b86b(0xc5):_0x18b86b(0xf7)),'The\x20'+_0x1b1bf9+_0x18b86b(0xb9),_0x18b86b(0xd6));Object[_0x18b86b(0xae)](_0x55729a,_0x18b86b(0xe5),{'value':_0x1aa172,'enumerable':![]});throw _0x55729a;}}function requireRecordText(_0x165ab7,_0x44ce8d,_0x56cd19,_0x2fb54e={}){const _0x2527ed=a112_0x20a9;if(typeof _0x165ab7==='string'&&(_0x2fb54e[_0x2527ed(0xf0)]||_0x165ab7['trim']()))return _0x165ab7;throw kbError('kb_response_invalid',_0x2527ed(0xbb)+String(_0x56cd19)+_0x2527ed(0xf1)+_0x44ce8d+'.');}export function projectKb(_0x30149d){const _0x7004d4=a112_0x20a9;if(!Number[_0x7004d4(0xce)](_0x30149d['id'])||_0x30149d['id']<=0x0)throw kbError(_0x7004d4(0xfc),_0x7004d4(0xd7));if(!Number[_0x7004d4(0xce)](_0x30149d[_0x7004d4(0xb2)])||_0x30149d[_0x7004d4(0xb2)]<0x0)throw kbError('kb_response_invalid',_0x7004d4(0xbb)+_0x30149d['id']+_0x7004d4(0xd1));if(_0x30149d[_0x7004d4(0xca)]!==_0x7004d4(0xf2))throw kbError(_0x7004d4(0xb8),_0x7004d4(0xbb)+_0x30149d['id']+_0x7004d4(0xa8));const _0x4c0cbb=requireRecordText(_0x30149d['appCode'],_0x7004d4(0xc7),_0x30149d['id']),_0x8f0686=requireRecordText(_0x30149d[_0x7004d4(0xc8)],_0x7004d4(0xc8),_0x30149d['id']),_0x418a4f=inspectKbContent(requireRecordText(_0x30149d[_0x7004d4(0xad)],'content',_0x30149d['id'],{'allowEmpty':!![]})),_0x5e994c=typeof _0x30149d[_0x7004d4(0xd8)]==='string'||typeof _0x30149d[_0x7004d4(0xd8)]==='number'?_0x30149d[_0x7004d4(0xd8)]:undefined,_0x455b7f=typeof _0x30149d[_0x7004d4(0xbc)]===_0x7004d4(0xb6)||typeof _0x30149d[_0x7004d4(0xbc)]===_0x7004d4(0xe7)?_0x30149d[_0x7004d4(0xbc)]:undefined,_0x4e22f0=sha256(JSON[_0x7004d4(0xcd)]({'id':_0x30149d['id'],'scope':_0x30149d[_0x7004d4(0xca)],'appCode':_0x4c0cbb,'title':_0x8f0686,'version':_0x30149d[_0x7004d4(0xb2)],'contentHash':_0x418a4f[_0x7004d4(0xd2)],'createTime':_0x5e994c,'updateTime':_0x455b7f}));return{'id':_0x30149d['id'],'scope':_0x7004d4(0xf2),'appCode':_0x4c0cbb,'title':_0x8f0686,'version':_0x30149d['version'],'contentByteSize':_0x418a4f[_0x7004d4(0xde)],'contentHash':_0x418a4f[_0x7004d4(0xd2)],'snapshotHash':_0x4e22f0,..._0x5e994c!==undefined?{'createTime':_0x5e994c}:{},..._0x455b7f!==undefined?{'updateTime':_0x455b7f}:{}};}export function assertCompanyKnowledgeBase(_0x53a706,_0x46b4a1,_0x496ef5){const _0x42e52b=a112_0x20a9;if(_0x496ef5!==undefined&&_0x53a706['id']!==_0x496ef5)throw kbError(_0x42e52b(0xfc),_0x42e52b(0xac)+_0x53a706['id']+_0x42e52b(0xf5)+_0x496ef5+'\x20was\x20requested.');if(_0x53a706[_0x42e52b(0xca)]!==_0x42e52b(0xf2)||_0x53a706[_0x42e52b(0xc7)]!==_0x46b4a1)throw kbError('kb_scope_mismatch',_0x42e52b(0xbb)+_0x53a706['id']+_0x42e52b(0xdd)+_0x46b4a1+'.');}export async function fetchAllCompanyKnowledgeBases(_0x366eaf,_0x4cc624){const _0x241b77=a112_0x20a9,_0x176ed1=[],_0x4fc0df=new Set();let _0x5badec=0x1,_0x17a20f=0x0,_0x2a9736;while(!![]){const _0x38f96=await listEnterpriseKnowledgeBases(_0x366eaf[_0x241b77(0xc0)],{'currentPage':_0x5badec,'pageSize':LIST_PAGE_SIZE,'appCode':_0x366eaf['appCode'],..._0x4cc624}),_0x12bac9=_0x38f96[_0x241b77(0xcc)]?.['totalCount'];if(_0x38f96['paging']?.['currentPage']!==undefined&&_0x38f96[_0x241b77(0xcc)][_0x241b77(0xed)]!==_0x5badec)throw kbError(_0x241b77(0xf3),_0x241b77(0xab)+_0x38f96['paging'][_0x241b77(0xed)]+'\x20while\x20page\x20'+_0x5badec+_0x241b77(0xb4));if(_0x12bac9!==undefined){if(_0x2a9736!==undefined&&_0x12bac9!==_0x2a9736)throw kbError(_0x241b77(0xf3),_0x241b77(0xc3)+_0x2a9736+_0x241b77(0xe3)+_0x12bac9+'\x20during\x20paging.',_0x241b77(0xe8));_0x2a9736=_0x12bac9;}for(const _0x1bb218 of _0x38f96[_0x241b77(0xd0)]){if(!Number[_0x241b77(0xce)](_0x1bb218['id'])||_0x4fc0df[_0x241b77(0xbf)](_0x1bb218['id']))throw kbError(_0x241b77(0xf3),_0x241b77(0xf9)+String(_0x1bb218['id'])+'.');_0x4fc0df['add'](_0x1bb218['id']),_0x1bb218['scope']===_0x241b77(0xf2)&&_0x1bb218[_0x241b77(0xc7)]===_0x366eaf[_0x241b77(0xc7)]&&_0x176ed1[_0x241b77(0xd9)](_0x1bb218);}_0x17a20f+=_0x38f96['items'][_0x241b77(0xf4)];if(_0x12bac9!==undefined&&_0x17a20f>=_0x12bac9)break;if(_0x38f96[_0x241b77(0xd0)]['length']<LIST_PAGE_SIZE){if(_0x12bac9!==undefined&&_0x17a20f<_0x12bac9)throw kbError(_0x241b77(0xf3),_0x241b77(0xb0)+_0x17a20f+'\x20of\x20'+_0x12bac9+_0x241b77(0xc4));break;}_0x5badec+=0x1;}return _0x176ed1;}export function findExactCompanyKnowledgeBases(_0x502b02,_0x294326,_0x1081f5){const _0x2373b9=a112_0x20a9;return _0x502b02[_0x2373b9(0xd5)](_0x257fbb=>_0x257fbb['scope']===_0x2373b9(0xf2)&&_0x257fbb[_0x2373b9(0xc7)]===_0x294326&&_0x257fbb[_0x2373b9(0xc8)]===_0x1081f5);}export async function getKbOrNull(_0x10523a,_0x3b0520){try{const _0x527848=await getEnterpriseKnowledgeBase(_0x10523a['cookie'],_0x3b0520);return assertCompanyKnowledgeBase(_0x527848,_0x10523a['appCode'],_0x3b0520),_0x527848;}catch(_0x1a694f){if(getPlatformErrorCode(_0x1a694f)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x1a694f;}}export async function requireKb(_0x216ba4,_0x51350d){const _0x1b3b03=await getKbOrNull(_0x216ba4,_0x51350d);if(!_0x1b3b03)throw kbError('kb_not_found','Company\x20knowledge\x20base\x20not\x20found:\x20'+_0x51350d,'Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.');return _0x1b3b03;}function a112_0xf849(){const _0x2f8a28=['hex','currentPage','20754dvJMjd','kb_confirmation_required','allowEmpty','\x20response\x20is\x20missing\x20','company','kb_list_contract_invalid','length','\x20while\x20id\x20','kb_file_invalid','verification_unavailable','kb_file_unreadable','Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20','204496IbxcKY','440dVTfKo','kb_response_invalid','kb_file_required','Knowledge-base\x20content\x20file\x20is\x20blank:\x20','\x20is\x20not\x20company-scoped.',',\x20current\x20','num','Knowledge-base\x20list\x20returned\x20page\x20','Knowledge-base\x20get-one\x20returned\x20id\x20','content','defineProperty','423823eMqtca','Knowledge-base\x20list\x20stopped\x20at\x20','Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','version','19038aeQpCs','\x20was\x20requested.','kb_state_drift','string','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','kb_scope_mismatch','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','bool','Knowledge\x20base\x20','updateTime','Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','2602614aOhXkZ','has','cookie','utf-8','byteLength','Knowledge-base\x20list\x20total\x20changed\x20from\x20','\x20records.','outcome_unknown','Pass\x20--file\x20<knowledge.md>.','appCode','title','sha256','scope','dry-run','paging','stringify','isSafeInteger','update','items','\x20response\x20contains\x20an\x20invalid\x20version.','contentHash','message','1790920iyQBTh','filter','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.','createTime','push','trim','\x20version\x20changed:\x20expected\x20','264uMbDHS','\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20','byteSize','decode','50Rmmuij','38970VOzcbp','--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.','\x20to\x20','digest','cause','sha256:','number','Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','from','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.'];a112_0xf849=function(){return _0x2f8a28;};return a112_0xf849();}export function assertExpectedKbVersion(_0x467b7a,_0x5d146c){const _0xdc6b9f=a112_0x20a9;if(_0x5d146c===undefined||_0x467b7a[_0xdc6b9f(0xb2)]===_0x5d146c)return;throw kbError(_0xdc6b9f(0xb5),_0xdc6b9f(0xbb)+_0x467b7a['id']+_0xdc6b9f(0xdb)+_0x5d146c+_0xdc6b9f(0xa9)+_0x467b7a['version']+'.',_0xdc6b9f(0xeb));}
@@ -1 +1 @@
1
- const a113_0x392142=a113_0x389c;(function(_0x1bedc3,_0x3ecf9c){const _0x505f5b=a113_0x389c,_0x12832b=_0x1bedc3();while(!![]){try{const _0x3545c8=parseInt(_0x505f5b(0x8e))/0x1*(parseInt(_0x505f5b(0x8a))/0x2)+-parseInt(_0x505f5b(0xa0))/0x3*(parseInt(_0x505f5b(0x90))/0x4)+parseInt(_0x505f5b(0xa7))/0x5+parseInt(_0x505f5b(0x8c))/0x6*(parseInt(_0x505f5b(0x75))/0x7)+parseInt(_0x505f5b(0xa6))/0x8*(-parseInt(_0x505f5b(0x99))/0x9)+parseInt(_0x505f5b(0x8b))/0xa+-parseInt(_0x505f5b(0x78))/0xb;if(_0x3545c8===_0x3ecf9c)break;else _0x12832b['push'](_0x12832b['shift']());}catch(_0x1eb77a){_0x12832b['push'](_0x12832b['shift']());}}}(a113_0x425d,0xaa17e));import{isPlatformTransportFailure,updateEnterpriseKnowledgeBase}from'../../core/api-client.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a113_0x389c(_0x4ab8ea,_0x501c54){_0x4ab8ea=_0x4ab8ea-0x70;const _0x425d73=a113_0x425d();let _0x389c9d=_0x425d73[_0x4ab8ea];return _0x389c9d;}import{assertCompanyKnowledgeBase,assertExpectedKbVersion,inspectKbContent,kbError,projectKb,readKbFile,readKbId,requireKb,verifyKbMutationReadback}from'../../commands/kb/shared.js';function a113_0x425d(){const _0x3a0626=['patch','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','isSafeInteger','trim','appCode','/admin/knowledge-base/update','kb_expected_version_invalid','947493HdsFPt','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','push','file','kb_title_invalid','title','replacement','6lEjbeF','POST','Nothing\x20to\x20update.','number','Company\x20knowledge-base\x20id','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','16WaQpto','3364765BjLCYE','version','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','Company\x20knowledge\x20base\x20','1079575scGauZ','flag','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','14370851wSQJCX','planned','Updated\x20company\x20knowledge\x20base\x20','string','rabetbase\x20kb\x20detail\x20--id\x20','update','contentHash','cookie','content','expected-version','New\x20knowledge-base\x20title','--file\x20cannot\x20be\x20empty.','company','before','kb_verification_failed','write','expectedVersion','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','22sHdIXi','12590220WJSImz','6EUWJAK','\x20--format\x20compress','113485WSenRl','verified','2241676HDuEIB','beforeRecord'];a113_0x425d=function(){return _0x3a0626;};return a113_0x425d();}const UPDATE_PATH=a113_0x392142(0x97),NON_ATOMIC_WARNING='--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.';function readUpdatePatch(_0x54eb1a){const _0x52276d=a113_0x392142,_0x2eb8a8=readKbId(_0x54eb1a),_0x496bac=_0x54eb1a[_0x52276d(0x76)](_0x52276d(0x9e)),_0x353bcb=_0x54eb1a[_0x52276d(0x76)]('file'),_0x586d7e=_0x54eb1a['flag'](_0x52276d(0x81)),_0x2fa9f8=_0x496bac===undefined?undefined:String(_0x496bac)[_0x52276d(0x95)]();if(_0x496bac!==undefined&&!_0x2fa9f8)throw kbError(_0x52276d(0x9d),'--title\x20cannot\x20be\x20empty.');const _0x1e15d9=_0x353bcb===undefined?undefined:String(_0x353bcb)[_0x52276d(0x95)]();if(_0x353bcb!==undefined&&!_0x1e15d9)throw kbError('kb_file_required',_0x52276d(0x83));if(_0x2fa9f8===undefined&&_0x1e15d9===undefined)throw kbError('kb_update_empty',_0x52276d(0xa2),_0x52276d(0x73));let _0x30a15f;if(_0x586d7e!==undefined){_0x30a15f=Number(_0x586d7e);if(!Number[_0x52276d(0x94)](_0x30a15f)||_0x30a15f<0x0)throw kbError(_0x52276d(0x98),'--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.');}return{'id':_0x2eb8a8,'title':_0x2fa9f8,'file':_0x1e15d9,'expectedVersion':_0x30a15f};}async function prepareUpdate(_0x1b48ce){const _0x59a960=a113_0x392142,_0x1782ae=readUpdatePatch(_0x1b48ce),_0x1b8212=await requireKb(_0x1b48ce,_0x1782ae['id']);assertExpectedKbVersion(_0x1b8212,_0x1782ae['expectedVersion']);const _0x5407be=_0x1782ae[_0x59a960(0x9c)]?await readKbFile(_0x1782ae[_0x59a960(0x9c)]):undefined,_0x4cf920=projectKb(_0x1b8212),_0x5e816a=projectKb({..._0x1b8212,..._0x1782ae['title']!==undefined?{'title':_0x1782ae[_0x59a960(0x9e)]}:{},..._0x5407be?{'content':_0x5407be[_0x59a960(0x80)]}:{}});return{'patch':_0x1782ae,'beforeRecord':_0x1b8212,'before':_0x4cf920,'planned':_0x5e816a,'replacement':_0x5407be};}export const kbUpdate={'service':'kb','command':a113_0x392142(0x7d),'description':a113_0x392142(0x89),'risk':a113_0x392142(0x87),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':a113_0x392142(0xa3),'required':!![],'description':a113_0x392142(0xa4)},{'name':'title','type':a113_0x392142(0x7b),'required':![],'description':a113_0x392142(0x82)},{'name':a113_0x392142(0x9c),'type':a113_0x392142(0x7b),'required':![],'description':a113_0x392142(0x93)},{'name':a113_0x392142(0x81),'type':'number','required':![],'description':a113_0x392142(0x9a)}],async 'validate'(_0x3f6b1d){readUpdatePatch(_0x3f6b1d);},async 'dryRun'(_0x2a64e7){const _0xa5bf58=a113_0x392142,_0xfcd9c3=await prepareUpdate(_0x2a64e7),_0x3d7511=_0xfcd9c3[_0xa5bf58(0x92)]['expectedVersion']!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':'update','selector':{'id':_0xfcd9c3[_0xa5bf58(0x85)]['id'],'scope':_0xa5bf58(0x84),'appCode':_0xfcd9c3['before'][_0xa5bf58(0x96)]},'before':_0xfcd9c3[_0xa5bf58(0x85)],'after':_0xfcd9c3[_0xa5bf58(0x79)],'dryRun':!![],'backend':{'method':_0xa5bf58(0xa1),'path':UPDATE_PATH},'warnings':_0x3d7511,'verification':{'expectedVersion':_0xfcd9c3['patch'][_0xa5bf58(0x88)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0xfcd9c3['before']['snapshotHash'],'lookupCommand':_0xa5bf58(0x7c)+_0xfcd9c3[_0xa5bf58(0x85)]['id']+_0xa5bf58(0x8d)}},{'method':_0xa5bf58(0xa1),'url':UPDATE_PATH});},async 'execute'(_0x1467bd){const _0xd977c0=a113_0x392142,_0x33a2bc=await prepareUpdate(_0x1467bd),_0x290fc8={'id':_0x33a2bc[_0xd977c0(0x92)]['id'],..._0x33a2bc[_0xd977c0(0x92)][_0xd977c0(0x9e)]!==undefined?{'title':_0x33a2bc[_0xd977c0(0x92)][_0xd977c0(0x9e)]}:{},..._0x33a2bc[_0xd977c0(0x9f)]?{'content':_0x33a2bc['replacement'][_0xd977c0(0x80)]}:{}};let _0x1ca349=![];try{const _0x501353=await updateEnterpriseKnowledgeBase(_0x1467bd[_0xd977c0(0x7f)],_0x290fc8);assertCompanyKnowledgeBase(_0x501353,_0x1467bd['appCode'],_0x33a2bc['patch']['id']);}catch(_0x7e40f7){if(!isPlatformTransportFailure(_0x7e40f7))throw _0x7e40f7;_0x1ca349=!![];}const _0x259308=await verifyKbMutationReadback('update',_0x1ca349,()=>requireKb(_0x1467bd,_0x33a2bc[_0xd977c0(0x92)]['id'])),_0x466dc2=projectKb(_0x259308),_0x2a2ffa=_0x33a2bc['patch'][_0xd977c0(0x9e)]===undefined||_0x259308[_0xd977c0(0x9e)]===_0x33a2bc['patch'][_0xd977c0(0x9e)],_0x2aa130=!_0x33a2bc['replacement']||inspectKbContent(_0x259308[_0xd977c0(0x80)])[_0xd977c0(0x7e)]===_0x33a2bc[_0xd977c0(0x9f)]['contentHash'],_0x35bdba=!_0x33a2bc['replacement']||_0x259308['version']>_0x33a2bc['beforeRecord'][_0xd977c0(0x70)],_0x3d72de=!_0x1ca349||_0x33a2bc[_0xd977c0(0x9f)]!==undefined||_0x33a2bc[_0xd977c0(0x92)]['title']===undefined||_0x33a2bc[_0xd977c0(0x91)]['title']!==_0x33a2bc['patch'][_0xd977c0(0x9e)];if(!_0x2a2ffa||!_0x2aa130||!_0x35bdba||!_0x3d72de)throw kbError(_0x1ca349?'kb_update_outcome_unknown':_0xd977c0(0x86),_0xd977c0(0x74)+_0x33a2bc[_0xd977c0(0x92)]['id']+_0xd977c0(0x71),_0xd977c0(0xa5)+_0x33a2bc[_0xd977c0(0x92)]['id']+_0xd977c0(0x72));const _0x45f490=[];return _0x33a2bc[_0xd977c0(0x92)]['expectedVersion']!==undefined&&_0x45f490[_0xd977c0(0x9b)](NON_ATOMIC_WARNING),_0x1ca349&&_0x45f490[_0xd977c0(0x9b)](_0xd977c0(0x77)),{'ok':!![],'data':{'operation':_0xd977c0(0x7d),'selector':{'id':_0x466dc2['id'],'scope':_0xd977c0(0x84),'appCode':_0x466dc2[_0xd977c0(0x96)]},'before':_0x33a2bc[_0xd977c0(0x85)],'after':_0x466dc2,'dryRun':![],'backend':{'method':_0xd977c0(0xa1),'path':UPDATE_PATH},'warnings':_0x45f490,'verification':{'status':_0xd977c0(0x8f),'recoveredAfterUnknownResponse':_0x1ca349,'expectedVersion':_0x33a2bc[_0xd977c0(0x92)]['expectedVersion']??null,'atomicCompareAndSet':![],'lookupCommand':_0xd977c0(0x7c)+_0x466dc2['id']+'\x20--format\x20compress'}},'message':_0xd977c0(0x7a)+_0x466dc2['id']};}};
1
+ const a113_0x2b7642=a113_0x15a4;(function(_0x56f9cf,_0x58602d){const _0x481014=a113_0x15a4,_0x264a31=_0x56f9cf();while(!![]){try{const _0x9d7f3=-parseInt(_0x481014(0x16c))/0x1*(parseInt(_0x481014(0x18d))/0x2)+-parseInt(_0x481014(0x17f))/0x3+-parseInt(_0x481014(0x194))/0x4+-parseInt(_0x481014(0x176))/0x5*(parseInt(_0x481014(0x188))/0x6)+parseInt(_0x481014(0x172))/0x7*(parseInt(_0x481014(0x173))/0x8)+-parseInt(_0x481014(0x193))/0x9+parseInt(_0x481014(0x16b))/0xa;if(_0x9d7f3===_0x58602d)break;else _0x264a31['push'](_0x264a31['shift']());}catch(_0x9c4b51){_0x264a31['push'](_0x264a31['shift']());}}}(a113_0x996d,0x7fe24));import{isPlatformTransportFailure,updateEnterpriseKnowledgeBase}from'../../core/api-client.js';function a113_0x15a4(_0x539819,_0x2dbbef){_0x539819=_0x539819-0x168;const _0x996d9=a113_0x996d();let _0x15a477=_0x996d9[_0x539819];return _0x15a477;}import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCompanyKnowledgeBase,assertExpectedKbVersion,inspectKbContent,kbError,projectKb,readKbFile,readKbId,requireKb,verifyKbMutationReadback}from'../../commands/kb/shared.js';const UPDATE_PATH=a113_0x2b7642(0x19d),NON_ATOMIC_WARNING='--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.';function readUpdatePatch(_0x3c6c4b){const _0x163cf0=a113_0x2b7642,_0x1af8bb=readKbId(_0x3c6c4b),_0x3df62d=_0x3c6c4b[_0x163cf0(0x17b)]('title'),_0x599099=_0x3c6c4b[_0x163cf0(0x17b)](_0x163cf0(0x170)),_0x5b2fa4=_0x3c6c4b[_0x163cf0(0x17b)](_0x163cf0(0x181)),_0x32a630=_0x3df62d===undefined?undefined:String(_0x3df62d)[_0x163cf0(0x191)]();if(_0x3df62d!==undefined&&!_0x32a630)throw kbError(_0x163cf0(0x199),_0x163cf0(0x17c));const _0x56fbbd=_0x599099===undefined?undefined:String(_0x599099)[_0x163cf0(0x191)]();if(_0x599099!==undefined&&!_0x56fbbd)throw kbError('kb_file_required',_0x163cf0(0x18b));if(_0x32a630===undefined&&_0x56fbbd===undefined)throw kbError(_0x163cf0(0x19a),_0x163cf0(0x180),'Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.');let _0x4f330b;if(_0x5b2fa4!==undefined){_0x4f330b=Number(_0x5b2fa4);if(!Number[_0x163cf0(0x18a)](_0x4f330b)||_0x4f330b<0x0)throw kbError(_0x163cf0(0x183),_0x163cf0(0x169));}return{'id':_0x1af8bb,'title':_0x32a630,'file':_0x56fbbd,'expectedVersion':_0x4f330b};}function a113_0x996d(){const _0x59e5f9=['contentHash','planned','18xBOKNO','title','isSafeInteger','--file\x20cannot\x20be\x20empty.','kb_update_outcome_unknown','54qnYOJm','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','kb_verification_failed','verified','trim','cookie','8228457eGIvwA','3810772yajUNh','beforeRecord','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','appCode','kb_title_invalid','kb_update_empty','patch','content','/admin/knowledge-base/update','update','Company\x20knowledge-base\x20id','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','34553990saJnMG','27426aAskqP','company','New\x20knowledge-base\x20title','rabetbase\x20kb\x20detail\x20--id\x20','file','POST','158732PWxBIF','328BdMyQg','before','Updated\x20company\x20knowledge\x20base\x20','999790dABMGJ','string','expectedVersion','replacement','\x20--format\x20compress','flag','--title\x20cannot\x20be\x20empty.','write','snapshotHash','1961883PwTbOK','Nothing\x20to\x20update.','expected-version','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','kb_expected_version_invalid','number','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.'];a113_0x996d=function(){return _0x59e5f9;};return a113_0x996d();}async function prepareUpdate(_0xac0cbc){const _0x5c1cc6=a113_0x2b7642,_0x3604cd=readUpdatePatch(_0xac0cbc),_0x3482cb=await requireKb(_0xac0cbc,_0x3604cd['id']);assertExpectedKbVersion(_0x3482cb,_0x3604cd[_0x5c1cc6(0x178)]);const _0x57d20a=_0x3604cd[_0x5c1cc6(0x170)]?await readKbFile(_0x3604cd[_0x5c1cc6(0x170)]):undefined,_0x6d4f6a=projectKb(_0x3482cb),_0x546aaa=projectKb({..._0x3482cb,..._0x3604cd[_0x5c1cc6(0x189)]!==undefined?{'title':_0x3604cd[_0x5c1cc6(0x189)]}:{},..._0x57d20a?{'content':_0x57d20a[_0x5c1cc6(0x19c)]}:{}});return{'patch':_0x3604cd,'beforeRecord':_0x3482cb,'before':_0x6d4f6a,'planned':_0x546aaa,'replacement':_0x57d20a};}export const kbUpdate={'service':'kb','command':a113_0x2b7642(0x19e),'description':a113_0x2b7642(0x16a),'risk':a113_0x2b7642(0x17d),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':'number','required':!![],'description':a113_0x2b7642(0x168)},{'name':a113_0x2b7642(0x189),'type':a113_0x2b7642(0x177),'required':![],'description':a113_0x2b7642(0x16e)},{'name':a113_0x2b7642(0x170),'type':a113_0x2b7642(0x177),'required':![],'description':a113_0x2b7642(0x196)},{'name':a113_0x2b7642(0x181),'type':a113_0x2b7642(0x184),'required':![],'description':a113_0x2b7642(0x197)}],async 'validate'(_0x1ac866){readUpdatePatch(_0x1ac866);},async 'dryRun'(_0x33cfd7){const _0x44408d=a113_0x2b7642,_0x44d117=await prepareUpdate(_0x33cfd7),_0x45f282=_0x44d117[_0x44408d(0x19b)][_0x44408d(0x178)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x44408d(0x19e),'selector':{'id':_0x44d117[_0x44408d(0x174)]['id'],'scope':'company','appCode':_0x44d117[_0x44408d(0x174)][_0x44408d(0x198)]},'before':_0x44d117['before'],'after':_0x44d117[_0x44408d(0x187)],'dryRun':!![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0x45f282,'verification':{'expectedVersion':_0x44d117[_0x44408d(0x19b)][_0x44408d(0x178)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x44d117[_0x44408d(0x174)][_0x44408d(0x17e)],'lookupCommand':_0x44408d(0x16f)+_0x44d117[_0x44408d(0x174)]['id']+_0x44408d(0x17a)}},{'method':_0x44408d(0x171),'url':UPDATE_PATH});},async 'execute'(_0x59c25f){const _0xeaee5a=a113_0x2b7642,_0x4d7e6c=await prepareUpdate(_0x59c25f),_0x2af550={'id':_0x4d7e6c[_0xeaee5a(0x19b)]['id'],..._0x4d7e6c['patch'][_0xeaee5a(0x189)]!==undefined?{'title':_0x4d7e6c[_0xeaee5a(0x19b)][_0xeaee5a(0x189)]}:{},..._0x4d7e6c[_0xeaee5a(0x179)]?{'content':_0x4d7e6c[_0xeaee5a(0x179)][_0xeaee5a(0x19c)]}:{}};let _0xdc36bb=![];try{const _0x138861=await updateEnterpriseKnowledgeBase(_0x59c25f[_0xeaee5a(0x192)],_0x2af550);assertCompanyKnowledgeBase(_0x138861,_0x59c25f[_0xeaee5a(0x198)],_0x4d7e6c[_0xeaee5a(0x19b)]['id']);}catch(_0x429698){if(!isPlatformTransportFailure(_0x429698))throw _0x429698;_0xdc36bb=!![];}const _0x5074c8=await verifyKbMutationReadback(_0xeaee5a(0x19e),_0xdc36bb,()=>requireKb(_0x59c25f,_0x4d7e6c[_0xeaee5a(0x19b)]['id'])),_0x33faac=projectKb(_0x5074c8),_0x31b486=_0x4d7e6c[_0xeaee5a(0x19b)][_0xeaee5a(0x189)]===undefined||_0x5074c8[_0xeaee5a(0x189)]===_0x4d7e6c[_0xeaee5a(0x19b)][_0xeaee5a(0x189)],_0x4fb186=!_0x4d7e6c[_0xeaee5a(0x179)]||inspectKbContent(_0x5074c8[_0xeaee5a(0x19c)])[_0xeaee5a(0x186)]===_0x4d7e6c[_0xeaee5a(0x179)][_0xeaee5a(0x186)],_0x2e0559=!_0x4d7e6c[_0xeaee5a(0x179)]||_0x5074c8['version']>_0x4d7e6c[_0xeaee5a(0x195)]['version'],_0x1c35e1=!_0xdc36bb||_0x4d7e6c[_0xeaee5a(0x179)]!==undefined||_0x4d7e6c[_0xeaee5a(0x19b)]['title']===undefined||_0x4d7e6c['beforeRecord'][_0xeaee5a(0x189)]!==_0x4d7e6c['patch']['title'];if(!_0x31b486||!_0x4fb186||!_0x2e0559||!_0x1c35e1)throw kbError(_0xdc36bb?_0xeaee5a(0x18c):_0xeaee5a(0x18f),'Company\x20knowledge\x20base\x20'+_0x4d7e6c[_0xeaee5a(0x19b)]['id']+_0xeaee5a(0x185),_0xeaee5a(0x182)+_0x4d7e6c['patch']['id']+'\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.');const _0x53181e=[];return _0x4d7e6c[_0xeaee5a(0x19b)][_0xeaee5a(0x178)]!==undefined&&_0x53181e['push'](NON_ATOMIC_WARNING),_0xdc36bb&&_0x53181e['push'](_0xeaee5a(0x18e)),{'ok':!![],'data':{'operation':_0xeaee5a(0x19e),'selector':{'id':_0x33faac['id'],'scope':_0xeaee5a(0x16d),'appCode':_0x33faac['appCode']},'before':_0x4d7e6c[_0xeaee5a(0x174)],'after':_0x33faac,'dryRun':![],'backend':{'method':_0xeaee5a(0x171),'path':UPDATE_PATH},'warnings':_0x53181e,'verification':{'status':_0xeaee5a(0x190),'recoveredAfterUnknownResponse':_0xdc36bb,'expectedVersion':_0x4d7e6c[_0xeaee5a(0x19b)]['expectedVersion']??null,'atomicCompareAndSet':![],'lookupCommand':_0xeaee5a(0x16f)+_0x33faac['id']+'\x20--format\x20compress'}},'message':_0xeaee5a(0x175)+_0x33faac['id']};}};
@@ -1 +1 @@
1
- const a114_0x8d73a6=a114_0x56fc;(function(_0x37f489,_0x44d22c){const _0x43cc5c=a114_0x56fc,_0x5dca41=_0x37f489();while(!![]){try{const _0x1754e1=parseInt(_0x43cc5c(0x90))/0x1*(parseInt(_0x43cc5c(0x81))/0x2)+parseInt(_0x43cc5c(0x92))/0x3+parseInt(_0x43cc5c(0x73))/0x4+parseInt(_0x43cc5c(0x93))/0x5*(parseInt(_0x43cc5c(0x7f))/0x6)+-parseInt(_0x43cc5c(0x82))/0x7+parseInt(_0x43cc5c(0x79))/0x8*(-parseInt(_0x43cc5c(0x85))/0x9)+-parseInt(_0x43cc5c(0x75))/0xa*(parseInt(_0x43cc5c(0x83))/0xb);if(_0x1754e1===_0x44d22c)break;else _0x5dca41['push'](_0x5dca41['shift']());}catch(_0x12c626){_0x5dca41['push'](_0x5dca41['shift']());}}}(a114_0x2bd3,0x315e1));import{logger}from'../../utils/logger.js';function a114_0x2bd3(){const _0x1ed1dd=['message','23TMvPrh','*\x20Lovrabet\x20CLI\x20logs:\x0a','881607OhWdMo','34290SeoRCT','read','768772BEtZOy','length','10EykXsE','\x20\x20\x20Duration:\x20','clearLogs','*\x20Logs\x20cleared','2080EwtfaU','command','*\x20No\x20logs\x20found','timestamp','duration','readLogs','54tpuFWG','View\x20command\x20history\x20logs','23486kcwdpC','295274VsjwqY','3268122LypJqt','stringify','9567soOzqC','toLocaleString','level','keys','details','success','forEach','show','log','warn'];a114_0x2bd3=function(){return _0x1ed1dd;};return a114_0x2bd3();}function printLogs(_0x5650ad){const _0x1560ff=a114_0x56fc;if(_0x5650ad[_0x1560ff(0x74)]===0x0){console[_0x1560ff(0x8d)](_0x1560ff(0x7b));return;}console[_0x1560ff(0x8d)](_0x1560ff(0x91)),_0x5650ad[_0x1560ff(0x8b)]((_0x50ec8c,_0x1427ed)=>{const _0x15163b=_0x1560ff,_0x5edbe2=new Date(_0x50ec8c[_0x15163b(0x7c)])[_0x15163b(0x86)]('en-US'),_0x4f2edd=_0x50ec8c['level']===_0x15163b(0x8a)?'√':_0x50ec8c[_0x15163b(0x87)]==='error'?'×':_0x50ec8c[_0x15163b(0x87)]===_0x15163b(0x8e)?'!':'i';console['log'](_0x1427ed+0x1+'.\x20'+_0x4f2edd+'\x20['+_0x50ec8c[_0x15163b(0x7a)]+']\x20'+_0x50ec8c[_0x15163b(0x8f)]),console[_0x15163b(0x8d)]('\x20\x20\x20Time:\x20'+_0x5edbe2),_0x50ec8c[_0x15163b(0x7d)]&&console[_0x15163b(0x8d)](_0x15163b(0x76)+_0x50ec8c[_0x15163b(0x7d)]+'ms'),_0x50ec8c[_0x15163b(0x89)]&&Object[_0x15163b(0x88)](_0x50ec8c[_0x15163b(0x89)])[_0x15163b(0x74)]>0x0&&console[_0x15163b(0x8d)]('\x20\x20\x20Details:\x20'+JSON[_0x15163b(0x84)](_0x50ec8c['details'],null,0x2)),console[_0x15163b(0x8d)]('');});}function a114_0x56fc(_0x2560ec,_0x2a84ae){_0x2560ec=_0x2560ec-0x72;const _0x2bd3d9=a114_0x2bd3();let _0x56fc85=_0x2bd3d9[_0x2560ec];return _0x56fc85;}export const logsDefinitions=[{'service':'logs','command':a114_0x8d73a6(0x8c),'description':a114_0x8d73a6(0x80),'risk':a114_0x8d73a6(0x72),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x5673fc){const _0x4e1bf5=a114_0x8d73a6;return printLogs(logger[_0x4e1bf5(0x7e)]()),{'ok':!![]};}},{'service':'logs','command':'clear','description':'Clear\x20command\x20history\x20logs','risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x21d775){const _0x43f4f7=a114_0x8d73a6;return logger[_0x43f4f7(0x77)](),console[_0x43f4f7(0x8d)](_0x43f4f7(0x78)),{'ok':!![]};}}];
1
+ function a114_0x13d9(){const _0x195859=['1007906ELiQOC','length','details','level','5jvlHAu','timestamp','*\x20Lovrabet\x20CLI\x20logs:\x0a','887996MnYPXQ','toLocaleString','success','command','12814884sMNlLg','1778qHdiCo','44372CuZEqc','read','logs','69tjgQTH','readLogs','\x20\x20\x20Details:\x20','23472IAlXkx','log','keys','forEach','Clear\x20command\x20history\x20logs','592210VerNag','*\x20No\x20logs\x20found','*\x20Logs\x20cleared','8663832momZkl','27lQcjSF','clearLogs','write','warn','\x20\x20\x20Duration:\x20','duration','error','clear','11HPrtQi'];a114_0x13d9=function(){return _0x195859;};return a114_0x13d9();}function a114_0xfa69(_0x1f3109,_0x155d6c){_0x1f3109=_0x1f3109-0x164;const _0x13d954=a114_0x13d9();let _0xfa696d=_0x13d954[_0x1f3109];return _0xfa696d;}const a114_0x5ec52d=a114_0xfa69;(function(_0x16a54c,_0x40d2e9){const _0x30d6a2=a114_0xfa69,_0x1a8318=_0x16a54c();while(!![]){try{const _0x23687e=parseInt(_0x30d6a2(0x17e))/0x1+-parseInt(_0x30d6a2(0x166))/0x2*(-parseInt(_0x30d6a2(0x169))/0x3)+parseInt(_0x30d6a2(0x185))/0x4+parseInt(_0x30d6a2(0x182))/0x5*(-parseInt(_0x30d6a2(0x174))/0x6)+-parseInt(_0x30d6a2(0x165))/0x7*(parseInt(_0x30d6a2(0x16c))/0x8)+-parseInt(_0x30d6a2(0x175))/0x9*(-parseInt(_0x30d6a2(0x171))/0xa)+-parseInt(_0x30d6a2(0x17d))/0xb*(-parseInt(_0x30d6a2(0x164))/0xc);if(_0x23687e===_0x40d2e9)break;else _0x1a8318['push'](_0x1a8318['shift']());}catch(_0x3b77ee){_0x1a8318['push'](_0x1a8318['shift']());}}}(a114_0x13d9,0xc2781));import{logger}from'../../utils/logger.js';function printLogs(_0x45a9a7){const _0xe26287=a114_0xfa69;if(_0x45a9a7['length']===0x0){console['log'](_0xe26287(0x172));return;}console[_0xe26287(0x16d)](_0xe26287(0x184)),_0x45a9a7[_0xe26287(0x16f)]((_0x2c8276,_0x16e361)=>{const _0x4ed761=_0xe26287,_0x3504cf=new Date(_0x2c8276[_0x4ed761(0x183)])[_0x4ed761(0x186)]('en-US'),_0x48cbe2=_0x2c8276[_0x4ed761(0x181)]===_0x4ed761(0x187)?'√':_0x2c8276[_0x4ed761(0x181)]===_0x4ed761(0x17b)?'×':_0x2c8276[_0x4ed761(0x181)]===_0x4ed761(0x178)?'!':'i';console[_0x4ed761(0x16d)](_0x16e361+0x1+'.\x20'+_0x48cbe2+'\x20['+_0x2c8276[_0x4ed761(0x188)]+']\x20'+_0x2c8276['message']),console['log']('\x20\x20\x20Time:\x20'+_0x3504cf),_0x2c8276[_0x4ed761(0x17a)]&&console[_0x4ed761(0x16d)](_0x4ed761(0x179)+_0x2c8276[_0x4ed761(0x17a)]+'ms'),_0x2c8276[_0x4ed761(0x180)]&&Object[_0x4ed761(0x16e)](_0x2c8276[_0x4ed761(0x180)])[_0x4ed761(0x17f)]>0x0&&console[_0x4ed761(0x16d)](_0x4ed761(0x16b)+JSON['stringify'](_0x2c8276[_0x4ed761(0x180)],null,0x2)),console['log']('');});}export const logsDefinitions=[{'service':a114_0x5ec52d(0x168),'command':'show','description':'View\x20command\x20history\x20logs','risk':a114_0x5ec52d(0x167),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x505ded){const _0x64ee11=a114_0x5ec52d;return printLogs(logger[_0x64ee11(0x16a)]()),{'ok':!![]};}},{'service':a114_0x5ec52d(0x168),'command':a114_0x5ec52d(0x17c),'description':a114_0x5ec52d(0x170),'risk':a114_0x5ec52d(0x177),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x5543b3){const _0x4eb1e0=a114_0x5ec52d;return logger[_0x4eb1e0(0x176)](),console[_0x4eb1e0(0x16d)](_0x4eb1e0(0x173)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a115_0x5140d1=a115_0x10be;(function(_0x463e88,_0xe1f550){const _0x441314=a115_0x10be,_0x1432a1=_0x463e88();while(!![]){try{const _0x509a95=-parseInt(_0x441314(0x1b9))/0x1+-parseInt(_0x441314(0x1c2))/0x2+-parseInt(_0x441314(0x1b4))/0x3+parseInt(_0x441314(0x1be))/0x4+-parseInt(_0x441314(0x18d))/0x5*(parseInt(_0x441314(0x19d))/0x6)+-parseInt(_0x441314(0x1bd))/0x7*(-parseInt(_0x441314(0x18a))/0x8)+parseInt(_0x441314(0x183))/0x9;if(_0x509a95===_0xe1f550)break;else _0x1432a1['push'](_0x1432a1['shift']());}catch(_0xcb29b2){_0x1432a1['push'](_0x1432a1['shift']());}}}(a115_0x20dd,0x1f6c8));import a115_0xff0bbf from'chalk';function a115_0x10be(_0x5e3b65,_0x48af29){_0x5e3b65=_0x5e3b65-0x181;const _0x20ddbd=a115_0x20dd();let _0x10beaa=_0x20ddbd[_0x5e3b65];return _0x10beaa;}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_0x5140d1(0x1b3),'command':'asset-update','description':'Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','risk':a115_0x5140d1(0x1a6),'flags':[{'name':a115_0x5140d1(0x1d4),'type':'string','description':a115_0x5140d1(0x1d3)+'JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}'},{'name':a115_0x5140d1(0x1a5),'type':a115_0x5140d1(0x1ab),'description':a115_0x5140d1(0x19c)+a115_0x5140d1(0x1ba),'enum':[a115_0x5140d1(0x194),'patch'],'default':a115_0x5140d1(0x18b)},{'name':a115_0x5140d1(0x1c6),'type':a115_0x5140d1(0x1d2),'description':a115_0x5140d1(0x196)},{'name':a115_0x5140d1(0x1c7),'type':a115_0x5140d1(0x1ab),'description':a115_0x5140d1(0x188)},{'name':'paths','type':'string','description':'Exact\x20comma-separated\x20menu\x20paths\x20to\x20update'},{'name':a115_0x5140d1(0x198),'type':'boolean','description':a115_0x5140d1(0x1a3)},{'name':'load-mode','type':a115_0x5140d1(0x1ab),'enum':[a115_0x5140d1(0x18e),a115_0x5140d1(0x1b8),a115_0x5140d1(0x191)],'description':a115_0x5140d1(0x1b7)}],async 'dryRun'(_0x4ba102){const _0x2c0a21=a115_0x5140d1;ensureRunnableContext(_0x4ba102[_0x2c0a21(0x187)],_0x4ba102[_0x2c0a21(0x184)]);const _0x2daefd=await runMenuUpdateCore(_0x4ba102[_0x2c0a21(0x1ae)],_0x4ba102[_0x2c0a21(0x1b5)],_0x4ba102[_0x2c0a21(0x1ad)](_0x2c0a21(0x1d4)),{'mode':parseMode(_0x4ba102['str'](_0x2c0a21(0x1a5))),'dryRun':!![],'force':_0x4ba102[_0x2c0a21(0x1a9)](_0x2c0a21(0x1c6)),'selection':parseSelection(_0x4ba102),'loadScriptMode':parseLoadScriptMode(_0x4ba102[_0x2c0a21(0x1ad)](_0x2c0a21(0x1c8)))});return{'method':_0x2c0a21(0x185),'url':_0x2c0a21(0x1ca),'body':_0x2daefd,'description':_0x2daefd['skipped']?'No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.':_0x2c0a21(0x189)+(_0x2daefd[_0x2c0a21(0x1b0)]?.[_0x2c0a21(0x1c4)]??0x0)+'\x20menu\x20resource\x20set(s).'};},async 'execute'(_0x4805b7){const _0x40a8c9=a115_0x5140d1;ensureRunnableContext(_0x4805b7[_0x40a8c9(0x187)],_0x4805b7['selectedAppName']);const _0x4e1e6d=_0x4805b7[_0x40a8c9(0x1ad)]('params'),_0x5ccbaf=parseMode(_0x4805b7['str'](_0x40a8c9(0x1a5))),_0x53c1da=_0x4805b7[_0x40a8c9(0x1a9)](_0x40a8c9(0x1c6)),_0x5e5689=parseLoadScriptMode(_0x4805b7[_0x40a8c9(0x1ad)](_0x40a8c9(0x1c8))),_0x573ee0=parseParams(_0x4e1e6d),_0x21f6f7=!!(_0x573ee0[_0x40a8c9(0x190)]||_0x573ee0['cssUrl']);if(_0x21f6f7){const _0x10c391=await runMenuUpdateCore(_0x4805b7[_0x40a8c9(0x1ae)],_0x4805b7[_0x40a8c9(0x1b5)],_0x4e1e6d,{'mode':_0x5ccbaf,'force':_0x53c1da,'selection':parseSelection(_0x4805b7),'loadScriptMode':_0x5e5689});return _0x10c391[_0x40a8c9(0x1bc)]?writeCliSideChannelLine(_0x40a8c9(0x1a2)):(writeCliSideChannelLine('✓\x20Menu\x20asset\x20update\x20completed:\x20'+_0x10c391[_0x40a8c9(0x1d1)]+'\x20menu(s)\x20updated'),_0x10c391[_0x40a8c9(0x18f)]>0x0&&writeCliSideChannelLine('!\x20'+_0x10c391[_0x40a8c9(0x18f)]+_0x40a8c9(0x19b))),{'ok':_0x10c391[_0x40a8c9(0x18f)]===0x0,'data':_0x10c391,'message':_0x10c391[_0x40a8c9(0x1bc)]?_0x40a8c9(0x197):_0x40a8c9(0x1cd)+_0x10c391[_0x40a8c9(0x1d1)]+_0x40a8c9(0x19e)+_0x10c391['failed']+_0x40a8c9(0x1c5)};}requireInteractive();const _0x15b75c=startSpinner('Fetching\x20online\x20menu\x20list...');let _0x4beb8a;try{_0x4beb8a=await fetchOnlineMenuList(_0x4805b7[_0x40a8c9(0x1ae)],_0x4805b7[_0x40a8c9(0x1b5)]),stopSpinner(_0x15b75c,'Online\x20menu\x20list\x20fetched',!![]);}catch(_0x2ab397){stopSpinner(_0x15b75c,_0x40a8c9(0x181),![]);throw CliErrors[_0x40a8c9(0x199)](_0x2ab397 instanceof Error?_0x2ab397[_0x40a8c9(0x1d0)]:_0x40a8c9(0x181));}const _0x4718a8=filterMenusWithResources(_0x4beb8a),_0x2a31ca=parseSelection(_0x4805b7,![]),_0x26197b=_0x2a31ca?selectMenusForUpdate(_0x4718a8,_0x2a31ca):_0x4718a8;if(_0x26197b['length']===0x0)return writeCliSideChannelLine(a115_0xff0bbf['yellow'](_0x40a8c9(0x19a))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a115_0xff0bbf[_0x40a8c9(0x1c1)]('\x20\x20Found\x20'+_0x26197b[_0x40a8c9(0x1c4)]+_0x40a8c9(0x1c9))),writeCliSideChannelLine(renderUpdateSummary(_0x26197b['map'](_0x1140cb=>_0x1140cb[_0x40a8c9(0x1b6)]),[_0x573ee0[_0x40a8c9(0x190)],_0x573ee0[_0x40a8c9(0x1b1)]])),writeCliSideChannelLine('');let _0x3c7a0e=_0x573ee0[_0x40a8c9(0x190)],_0x554db3=_0x573ee0[_0x40a8c9(0x1b1)];!_0x3c7a0e&&(_0x3c7a0e=await askJsUrl());!_0x554db3&&(_0x554db3=await askCssUrl());const _0x528ec0=await askConfirm(_0x40a8c9(0x18c)+_0x26197b[_0x40a8c9(0x1c4)]+_0x40a8c9(0x1cc)+_0x3c7a0e+'\x20and\x20CSS:\x20'+_0x554db3+'?');if(!_0x528ec0)return writeCliSideChannelLine(a115_0xff0bbf[_0x40a8c9(0x186)](_0x40a8c9(0x195))),{'ok':!![]};const _0x807034=startSpinner(_0x40a8c9(0x1a1)+_0x26197b[_0x40a8c9(0x1c4)]+_0x40a8c9(0x1a8));try{const _0x450f9c=await runMenuUpdateCore(_0x4805b7['appCode'],_0x4805b7['cookie'],JSON['stringify']({'jsUrl':_0x3c7a0e,'cssUrl':_0x554db3}),{'mode':_0x5ccbaf,'force':_0x53c1da,'selection':{'all':![],'menuIds':_0x26197b[_0x40a8c9(0x192)](_0x3bd57b=>_0x3bd57b['id']),'paths':[]},'loadScriptMode':_0x5e5689});return stopSpinner(_0x807034,_0x40a8c9(0x1cf)+_0x450f9c[_0x40a8c9(0x1d1)]+'\x20menu(s)',_0x450f9c[_0x40a8c9(0x18f)]===0x0),{'ok':_0x450f9c[_0x40a8c9(0x18f)]===0x0,'data':_0x450f9c,'message':_0x450f9c[_0x40a8c9(0x18f)]>0x0?_0x40a8c9(0x1cd)+_0x450f9c['updated']+_0x40a8c9(0x19e)+_0x450f9c[_0x40a8c9(0x18f)]+_0x40a8c9(0x1c5):_0x40a8c9(0x1cd)+_0x450f9c[_0x40a8c9(0x1d1)]+_0x40a8c9(0x1c0)};}catch(_0x1447b5){stopSpinner(_0x807034,_0x40a8c9(0x1a7),![]);throw CliErrors[_0x40a8c9(0x199)](_0x1447b5 instanceof Error?_0x1447b5[_0x40a8c9(0x1d0)]:_0x40a8c9(0x1a7));}}};function a115_0x20dd(){const _0x387d37=['failed','jsUrl','fetch','map','trim','replace','\x20\x20Cancelled.','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','Menu\x20asset\x20update\x20skipped','all','validation','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','\x20menu(s)\x20failed','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','12MGqvJb','\x20updated,\x20','split','isArray','Updating\x20','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','mode','write','Menu\x20asset\x20update\x20failed','\x20menu(s)...','bool','isSafeInteger','string','paths','str','appCode','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','diffs','cssUrl','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','menu','152046oYpKiq','cookie','label','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','script','143087QwmZyN','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','skipped','1130997dWnBhy','33104eBpVjs','object','\x20updated.','cyan','43658LnhNcI','parse','length','\x20failed.','force','menu-ids','load-mode','\x20menu(s)\x20with\x20existing\x20resources','/smartapi/menu/update','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','\x20menu(s)\x20with\x20JS:\x20','Menu\x20asset\x20update\x20completed:\x20','appcode','Updated\x20','message','updated','boolean','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','params','Failed\x20to\x20fetch\x20online\x20menu\x20list','filter','3053781gWiHPV','selectedAppName','POST','gray','rawFlags','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','Would\x20update\x20','8XAHNqm','patch','\x20\x20Update\x20','412115MdOFOJ','import'];a115_0x20dd=function(){return _0x387d37;};return a115_0x20dd();}function ensureRunnableContext(_0x3d8b49,_0x2b8dc7){const _0xb77414=a115_0x5140d1,_0xe98b9c=_0x3d8b49[_0xb77414(0x1ce)]?String(_0x3d8b49[_0xb77414(0x1ce)])[_0xb77414(0x193)]():'';if(!isInProject()&&!_0x2b8dc7&&!_0xe98b9c)throw CliErrors[_0xb77414(0x199)](_0xb77414(0x1af)+_0xb77414(0x1bb));}function parseMode(_0x305fff){const _0x56b015=a115_0x5140d1;if(!_0x305fff)return _0x56b015(0x18b);if(_0x305fff===_0x56b015(0x194)||_0x305fff===_0x56b015(0x18b))return _0x305fff;throw CliErrors[_0x56b015(0x199)](_0x56b015(0x1cb));}function parseSelection(_0x10176f,_0xc0ea25=!![]){const _0x58c909=a115_0x5140d1,_0x538cde=_0x10176f[_0x58c909(0x1a9)]('all'),_0x15d1ec=parseMenuIds(_0x10176f[_0x58c909(0x1ad)](_0x58c909(0x1c7))),_0x37ddf5=parseCsv(_0x10176f[_0x58c909(0x1ad)](_0x58c909(0x1ac))),_0x488d5e=_0x15d1ec[_0x58c909(0x1c4)]>0x0||_0x37ddf5[_0x58c909(0x1c4)]>0x0;if(_0x538cde&&_0x488d5e)throw CliErrors[_0x58c909(0x199)](_0x58c909(0x1b2));if(!_0x538cde&&!_0x488d5e){if(!_0xc0ea25)return undefined;throw CliErrors['validation'](_0x58c909(0x1a4));}return{'all':_0x538cde,'menuIds':_0x15d1ec,'paths':_0x37ddf5};}function parseMenuIds(_0x14c1e2){const _0x1443cb=a115_0x5140d1,_0x539edc=parseCsv(_0x14c1e2),_0x573516=_0x539edc['map'](Number);if(_0x573516['some'](_0x4c0f73=>!Number[_0x1443cb(0x1aa)](_0x4c0f73)||_0x4c0f73<=0x0))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.');return[...new Set(_0x573516)];}function parseCsv(_0x402e2a){const _0x3cf7df=a115_0x5140d1;return[...new Set(_0x402e2a[_0x3cf7df(0x19f)](',')[_0x3cf7df(0x192)](_0x758532=>_0x758532[_0x3cf7df(0x193)]())[_0x3cf7df(0x182)](Boolean))];}function parseLoadScriptMode(_0x1a0880){const _0x3f0444=a115_0x5140d1;if(!_0x1a0880)return undefined;if(_0x1a0880==='import'||_0x1a0880===_0x3f0444(0x1b8)||_0x1a0880===_0x3f0444(0x191))return _0x1a0880;throw CliErrors[_0x3f0444(0x199)]('Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch');}function parseParams(_0x11d384){const _0x15d749=a115_0x5140d1;if(!_0x11d384)return{};try{const _0x1bd4c9=JSON[_0x15d749(0x1c3)](_0x11d384);if(typeof _0x1bd4c9!==_0x15d749(0x1bf)||_0x1bd4c9===null||Array[_0x15d749(0x1a0)](_0x1bd4c9))return{};return{'jsUrl':typeof _0x1bd4c9[_0x15d749(0x190)]===_0x15d749(0x1ab)?_0x1bd4c9[_0x15d749(0x190)][_0x15d749(0x193)]():undefined,'cssUrl':typeof _0x1bd4c9[_0x15d749(0x1b1)]===_0x15d749(0x1ab)?_0x1bd4c9['cssUrl'][_0x15d749(0x193)]():undefined};}catch{return{};}}
1
+ const a115_0x65bf91=a115_0x45b7;(function(_0x39f796,_0x53b36e){const _0x415307=a115_0x45b7,_0x4851e8=_0x39f796();while(!![]){try{const _0x2e5bc4=-parseInt(_0x415307(0x20a))/0x1+-parseInt(_0x415307(0x1d1))/0x2+-parseInt(_0x415307(0x1d8))/0x3*(-parseInt(_0x415307(0x1fa))/0x4)+parseInt(_0x415307(0x1da))/0x5*(-parseInt(_0x415307(0x1e3))/0x6)+parseInt(_0x415307(0x21e))/0x7+parseInt(_0x415307(0x1e2))/0x8+-parseInt(_0x415307(0x212))/0x9;if(_0x2e5bc4===_0x53b36e)break;else _0x4851e8['push'](_0x4851e8['shift']());}catch(_0x1039d2){_0x4851e8['push'](_0x4851e8['shift']());}}}(a115_0x29eb,0xa5d7e));function a115_0x45b7(_0x462f1e,_0x3fb090){_0x462f1e=_0x462f1e-0x1d0;const _0x29eb98=a115_0x29eb();let _0x45b73b=_0x29eb98[_0x462f1e];return _0x45b73b;}import a115_0x42a851 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';function a115_0x29eb(){const _0x25fd13=['patch','appcode','selectedAppName','str','\x20updated.','skipped','Menu\x20asset\x20update\x20completed:\x20','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','map','parse','Online\x20menu\x20list\x20fetched','✓\x20Menu\x20asset\x20update\x20completed:\x20','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','\x20\x20Update\x20','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','\x20menu(s)\x20failed','218408Vqiopy','validation','boolean','trim','string','script','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','mode','label','import','load-mode','gray','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','replace','all','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','10562GlsPjv','POST','force','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','object','filter','asset-update','jsUrl','4991805kUVaAv','menu-ids','Updated\x20','write','\x20updated,\x20','\x20menu(s)...','diffs','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','\x20menu(s)\x20with\x20existing\x20resources','menu','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','\x20failed.','8199786XyzpNI','Updating\x20','\x20menu\x20resource\x20set(s).','appCode','yellow','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','length','cssUrl','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','Menu\x20asset\x20update\x20failed','938410DCdbCx','updated','failed','cookie','Menu\x20asset\x20update\x20skipped','Fetching\x20online\x20menu\x20list...','stringify','24JISmnO','message','379455abACgV','\x20\x20Cancelled.','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','\x20menu(s)\x20updated','rawFlags','params','fetch','paths','5093832lZWpZb','42giXciV','isSafeInteger','Failed\x20to\x20fetch\x20online\x20menu\x20list','bool','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch'];a115_0x29eb=function(){return _0x25fd13;};return a115_0x29eb();}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_0x65bf91(0x21b),'command':a115_0x65bf91(0x210),'description':a115_0x65bf91(0x1f6),'risk':a115_0x65bf91(0x215),'flags':[{'name':'params','type':a115_0x65bf91(0x1fe),'description':a115_0x65bf91(0x1f7)+'JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}'},{'name':a115_0x65bf91(0x201),'type':a115_0x65bf91(0x1fe),'description':a115_0x65bf91(0x223)+'patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','enum':[a115_0x65bf91(0x207),a115_0x65bf91(0x1e8)],'default':a115_0x65bf91(0x1e8)},{'name':a115_0x65bf91(0x20c),'type':a115_0x65bf91(0x1fc),'description':a115_0x65bf91(0x1ef)},{'name':a115_0x65bf91(0x213),'type':a115_0x65bf91(0x1fe),'description':a115_0x65bf91(0x206)},{'name':a115_0x65bf91(0x1e1),'type':a115_0x65bf91(0x1fe),'description':a115_0x65bf91(0x226)},{'name':a115_0x65bf91(0x208),'type':'boolean','description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':a115_0x65bf91(0x204),'type':'string','enum':[a115_0x65bf91(0x203),a115_0x65bf91(0x1ff),a115_0x65bf91(0x1e0)],'description':a115_0x65bf91(0x1f4)}],async 'dryRun'(_0x1fede8){const _0xc4c951=a115_0x65bf91;ensureRunnableContext(_0x1fede8['rawFlags'],_0x1fede8[_0xc4c951(0x1ea)]);const _0x49c87d=await runMenuUpdateCore(_0x1fede8['appCode'],_0x1fede8[_0xc4c951(0x1d4)],_0x1fede8[_0xc4c951(0x1eb)](_0xc4c951(0x1df)),{'mode':parseMode(_0x1fede8[_0xc4c951(0x1eb)]('mode')),'dryRun':!![],'force':_0x1fede8[_0xc4c951(0x1e6)]('force'),'selection':parseSelection(_0x1fede8),'loadScriptMode':parseLoadScriptMode(_0x1fede8[_0xc4c951(0x1eb)](_0xc4c951(0x204)))});return{'method':_0xc4c951(0x20b),'url':'/smartapi/menu/update','body':_0x49c87d,'description':_0x49c87d[_0xc4c951(0x1ed)]?_0xc4c951(0x200):'Would\x20update\x20'+(_0x49c87d[_0xc4c951(0x218)]?.[_0xc4c951(0x224)]??0x0)+_0xc4c951(0x220)};},async 'execute'(_0x4f8bac){const _0x18c2c2=a115_0x65bf91;ensureRunnableContext(_0x4f8bac[_0x18c2c2(0x1de)],_0x4f8bac['selectedAppName']);const _0x3bca56=_0x4f8bac[_0x18c2c2(0x1eb)](_0x18c2c2(0x1df)),_0x1488fe=parseMode(_0x4f8bac[_0x18c2c2(0x1eb)](_0x18c2c2(0x201))),_0x477213=_0x4f8bac[_0x18c2c2(0x1e6)](_0x18c2c2(0x20c)),_0x2e81ca=parseLoadScriptMode(_0x4f8bac[_0x18c2c2(0x1eb)](_0x18c2c2(0x204))),_0x5e2cdb=parseParams(_0x3bca56),_0x1ab42d=!!(_0x5e2cdb['jsUrl']||_0x5e2cdb[_0x18c2c2(0x225)]);if(_0x1ab42d){const _0x26f769=await runMenuUpdateCore(_0x4f8bac[_0x18c2c2(0x221)],_0x4f8bac['cookie'],_0x3bca56,{'mode':_0x1488fe,'force':_0x477213,'selection':parseSelection(_0x4f8bac),'loadScriptMode':_0x2e81ca});return _0x26f769[_0x18c2c2(0x1ed)]?writeCliSideChannelLine(_0x18c2c2(0x209)):(writeCliSideChannelLine(_0x18c2c2(0x1f3)+_0x26f769[_0x18c2c2(0x1d2)]+_0x18c2c2(0x1dd)),_0x26f769[_0x18c2c2(0x1d3)]>0x0&&writeCliSideChannelLine('!\x20'+_0x26f769[_0x18c2c2(0x1d3)]+_0x18c2c2(0x1f9))),{'ok':_0x26f769[_0x18c2c2(0x1d3)]===0x0,'data':_0x26f769,'message':_0x26f769['skipped']?_0x18c2c2(0x1d5):'Menu\x20asset\x20update\x20completed:\x20'+_0x26f769[_0x18c2c2(0x1d2)]+_0x18c2c2(0x216)+_0x26f769[_0x18c2c2(0x1d3)]+'\x20failed.'};}requireInteractive();const _0x599285=startSpinner(_0x18c2c2(0x1d6));let _0x3f007a;try{_0x3f007a=await fetchOnlineMenuList(_0x4f8bac[_0x18c2c2(0x221)],_0x4f8bac[_0x18c2c2(0x1d4)]),stopSpinner(_0x599285,_0x18c2c2(0x1f2),!![]);}catch(_0x532b59){stopSpinner(_0x599285,_0x18c2c2(0x1e5),![]);throw CliErrors[_0x18c2c2(0x1fb)](_0x532b59 instanceof Error?_0x532b59[_0x18c2c2(0x1d9)]:_0x18c2c2(0x1e5));}const _0x473fd2=filterMenusWithResources(_0x3f007a),_0x34fc20=parseSelection(_0x4f8bac,![]),_0x3142d2=_0x34fc20?selectMenusForUpdate(_0x473fd2,_0x34fc20):_0x473fd2;if(_0x3142d2[_0x18c2c2(0x224)]===0x0)return writeCliSideChannelLine(a115_0x42a851[_0x18c2c2(0x222)]('\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found')),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a115_0x42a851['cyan']('\x20\x20Found\x20'+_0x3142d2[_0x18c2c2(0x224)]+_0x18c2c2(0x21a))),writeCliSideChannelLine(renderUpdateSummary(_0x3142d2[_0x18c2c2(0x1f0)](_0x2f5c7d=>_0x2f5c7d[_0x18c2c2(0x202)]),[_0x5e2cdb[_0x18c2c2(0x211)],_0x5e2cdb[_0x18c2c2(0x225)]])),writeCliSideChannelLine('');let _0x61b807=_0x5e2cdb[_0x18c2c2(0x211)],_0x5a02d5=_0x5e2cdb[_0x18c2c2(0x225)];!_0x61b807&&(_0x61b807=await askJsUrl());!_0x5a02d5&&(_0x5a02d5=await askCssUrl());const _0x332182=await askConfirm(_0x18c2c2(0x1f5)+_0x3142d2[_0x18c2c2(0x224)]+'\x20menu(s)\x20with\x20JS:\x20'+_0x61b807+'\x20and\x20CSS:\x20'+_0x5a02d5+'?');if(!_0x332182)return writeCliSideChannelLine(a115_0x42a851[_0x18c2c2(0x205)](_0x18c2c2(0x1db))),{'ok':!![]};const _0x2a68fc=startSpinner(_0x18c2c2(0x21f)+_0x3142d2[_0x18c2c2(0x224)]+_0x18c2c2(0x217));try{const _0x4fabdd=await runMenuUpdateCore(_0x4f8bac[_0x18c2c2(0x221)],_0x4f8bac[_0x18c2c2(0x1d4)],JSON[_0x18c2c2(0x1d7)]({'jsUrl':_0x61b807,'cssUrl':_0x5a02d5}),{'mode':_0x1488fe,'force':_0x477213,'selection':{'all':![],'menuIds':_0x3142d2['map'](_0x582e41=>_0x582e41['id']),'paths':[]},'loadScriptMode':_0x2e81ca});return stopSpinner(_0x2a68fc,_0x18c2c2(0x214)+_0x4fabdd[_0x18c2c2(0x1d2)]+'\x20menu(s)',_0x4fabdd[_0x18c2c2(0x1d3)]===0x0),{'ok':_0x4fabdd[_0x18c2c2(0x1d3)]===0x0,'data':_0x4fabdd,'message':_0x4fabdd[_0x18c2c2(0x1d3)]>0x0?_0x18c2c2(0x1ee)+_0x4fabdd[_0x18c2c2(0x1d2)]+_0x18c2c2(0x216)+_0x4fabdd[_0x18c2c2(0x1d3)]+_0x18c2c2(0x21d):'Menu\x20asset\x20update\x20completed:\x20'+_0x4fabdd['updated']+_0x18c2c2(0x1ec)};}catch(_0x159969){stopSpinner(_0x2a68fc,'Menu\x20asset\x20update\x20failed',![]);throw CliErrors[_0x18c2c2(0x1fb)](_0x159969 instanceof Error?_0x159969[_0x18c2c2(0x1d9)]:_0x18c2c2(0x1d0));}}};function ensureRunnableContext(_0x44841a,_0x77c68a){const _0x47bd4a=a115_0x65bf91,_0x3b236a=_0x44841a['appcode']?String(_0x44841a[_0x47bd4a(0x1e9)])[_0x47bd4a(0x1fd)]():'';if(!isInProject()&&!_0x77c68a&&!_0x3b236a)throw CliErrors[_0x47bd4a(0x1fb)](_0x47bd4a(0x219)+_0x47bd4a(0x1dc));}function parseMode(_0x43c9b1){const _0x26ef42=a115_0x65bf91;if(!_0x43c9b1)return'patch';if(_0x43c9b1===_0x26ef42(0x207)||_0x43c9b1==='patch')return _0x43c9b1;throw CliErrors[_0x26ef42(0x1fb)](_0x26ef42(0x1e7));}function parseSelection(_0x336b8f,_0x4caa3a=!![]){const _0x4f33d8=a115_0x65bf91,_0x3415c9=_0x336b8f[_0x4f33d8(0x1e6)]('all'),_0x30061f=parseMenuIds(_0x336b8f[_0x4f33d8(0x1eb)](_0x4f33d8(0x213))),_0x579c28=parseCsv(_0x336b8f[_0x4f33d8(0x1eb)](_0x4f33d8(0x1e1))),_0x48169a=_0x30061f[_0x4f33d8(0x224)]>0x0||_0x579c28[_0x4f33d8(0x224)]>0x0;if(_0x3415c9&&_0x48169a)throw CliErrors[_0x4f33d8(0x1fb)](_0x4f33d8(0x20d));if(!_0x3415c9&&!_0x48169a){if(!_0x4caa3a)return undefined;throw CliErrors[_0x4f33d8(0x1fb)](_0x4f33d8(0x21c));}return{'all':_0x3415c9,'menuIds':_0x30061f,'paths':_0x579c28};}function parseMenuIds(_0x37d9cb){const _0x566cf6=a115_0x65bf91,_0x50318f=parseCsv(_0x37d9cb),_0x5c7483=_0x50318f['map'](Number);if(_0x5c7483['some'](_0x4eaaa9=>!Number[_0x566cf6(0x1e4)](_0x4eaaa9)||_0x4eaaa9<=0x0))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.');return[...new Set(_0x5c7483)];}function parseCsv(_0x476da2){const _0x35c619=a115_0x65bf91;return[...new Set(_0x476da2['split'](',')[_0x35c619(0x1f0)](_0xd3b907=>_0xd3b907[_0x35c619(0x1fd)]())[_0x35c619(0x20f)](Boolean))];}function parseLoadScriptMode(_0x13c822){const _0x20338b=a115_0x65bf91;if(!_0x13c822)return undefined;if(_0x13c822===_0x20338b(0x203)||_0x13c822===_0x20338b(0x1ff)||_0x13c822===_0x20338b(0x1e0))return _0x13c822;throw CliErrors[_0x20338b(0x1fb)](_0x20338b(0x1f8));}function parseParams(_0x23d6d8){const _0x539e29=a115_0x65bf91;if(!_0x23d6d8)return{};try{const _0x16714c=JSON[_0x539e29(0x1f1)](_0x23d6d8);if(typeof _0x16714c!==_0x539e29(0x20e)||_0x16714c===null||Array['isArray'](_0x16714c))return{};return{'jsUrl':typeof _0x16714c['jsUrl']===_0x539e29(0x1fe)?_0x16714c[_0x539e29(0x211)][_0x539e29(0x1fd)]():undefined,'cssUrl':typeof _0x16714c['cssUrl']===_0x539e29(0x1fe)?_0x16714c[_0x539e29(0x225)][_0x539e29(0x1fd)]():undefined};}catch{return{};}}
@@ -1 +1 @@
1
- const a116_0xdae7a5=a116_0x1980;(function(_0x846362,_0x19ef13){const _0x57a372=a116_0x1980,_0x12d540=_0x846362();while(!![]){try{const _0x314eab=parseInt(_0x57a372(0xda))/0x1*(parseInt(_0x57a372(0xaf))/0x2)+-parseInt(_0x57a372(0xe0))/0x3+-parseInt(_0x57a372(0xc7))/0x4+parseInt(_0x57a372(0x74))/0x5*(parseInt(_0x57a372(0xcf))/0x6)+parseInt(_0x57a372(0xd4))/0x7*(-parseInt(_0x57a372(0xcc))/0x8)+-parseInt(_0x57a372(0xb4))/0x9*(-parseInt(_0x57a372(0xbd))/0xa)+-parseInt(_0x57a372(0xe3))/0xb;if(_0x314eab===_0x19ef13)break;else _0x12d540['push'](_0x12d540['shift']());}catch(_0x1170e1){_0x12d540['push'](_0x12d540['shift']());}}}(a116_0x414b,0xc5a28));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';function a116_0x1980(_0x848cf7,_0x2828a6){_0x848cf7=_0x848cf7-0x6f;const _0x414beb=a116_0x414b();let _0x198051=_0x414beb[_0x848cf7];return _0x198051;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a116_0x414b(){const _0x13c8cd=['causeMessage','\x20references\x20missing\x20child\x20','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','causeCode','pages','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','delete','get','rabetbase\x20menu\x20list\x20--format\x20json','expect-parent-id','indexOf','childrenCount','type','toLowerCase','bool','verification','str','menu_non_empty','\x20is\x20not\x20a\x20folder.','\x20and\x20cannot\x20be\x20deleted\x20safely.','resourcesValid','plan-out','snapshotHash','Recursive\x20menu\x20delete\x20plan\x20root\x20','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','Batch\x20delete\x20request\x20for\x20menu\x20','stringify','\x20menu(s)\x20under\x20exact\x20id\x20','execute\x20reviewed\x20delete\x20plan','2xibDSR','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','validation','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','folder','36144KJXEfd','dry-run','expiresAt','cookie','selector','byId','forEach','push','\x20->\x20menu\x20','2260xLpnqv','failed','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','menu_plan_invalid',';\x20execution\x20must\x20consume\x20','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','unknown','absentIds','menu_folder_has_resources','unconfirmed','1785740EvPhco','menu_tree_invalid','Post-mismatch\x20menu\x20readback\x20failed\x20(','filter','):\x20','3480088egliFm','Folder\x20','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','6yeGmru','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','path','plan\x20delete','Deleted\x20','7kMgDEJ','batch-delete-menu','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','batch-delete','/smartapi/menu/batchDelete','Would\x20batch\x20delete\x20','946346GUZkLY','snapshot','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','pre-write-plan-validation','Post-failure\x20menu\x20readback\x20failed\x20(','message','2286165lcTYwO','remainingIds','string','1624832kvRniB','appCode','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','POST','trim','size','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','map','target','3733815zrksNW','add','recursive','deleteOrder','pageId','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','flagMissing','menus','menu_recursive_requires_folder','menu_delete_page_bound','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','Menu\x20','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','hash','high-risk-write','menu\x20list','childrenIds','has','plan','\x20has\x20','join','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','resources','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','Backend\x20reported\x20','length','plan-validation','batch\x20delete','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.'];a116_0x414b=function(){return _0x13c8cd;};return a116_0x414b();}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_0xdae7a5(0xe6),'path':a116_0xdae7a5(0xd8)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':a116_0xdae7a5(0x76),'type':'boolean','description':'Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first'},MENU_DELETE_PLAN_OUT_FLAG={'name':a116_0xdae7a5(0xa7),'type':a116_0xdae7a5(0xe2),'description':'Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file'},MENU_DELETE_PLAN_FLAG={'name':a116_0xdae7a5(0x86),'type':a116_0xdae7a5(0xe2),'description':a116_0xdae7a5(0xc2)};export const menuDelete={'service':'menu','command':'delete','description':a116_0xdae7a5(0x97),'risk':a116_0xdae7a5(0x82),'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'(_0x688d3d){const _0x4b5e78=a116_0xdae7a5;_0x688d3d[_0x4b5e78(0xa0)](_0x4b5e78(0xb5))?validateDeleteDryRunInput(_0x688d3d):validateDeleteExecuteInput(_0x688d3d),requireExplicitYes(_0x688d3d);},async 'dryRun'(_0x2e488e){const _0x2bdd10=a116_0xdae7a5;validateDeleteDryRunInput(_0x2e488e);const _0x2c917c=await buildDeletePlan(_0x2e488e),_0xba8989=createMenuDeletePlanFile(_0x2e488e[_0x2bdd10(0xe4)],_0x2c917c),_0xa5dfb3=await writeMenuDeletePlan(_0x2e488e[_0x2bdd10(0xa2)](_0x2bdd10(0xa7)),_0xba8989),_0x562d2e=mutationResult({..._0x2c917c,'planFile':{'path':_0xa5dfb3,'createdAt':_0xba8989['createdAt'],'expiresAt':_0xba8989[_0x2bdd10(0xb6)]}});return menuDryRunResult(_0x562d2e,{'method':'POST','url':'/smartapi/menu/batchDelete','body':{'idList':_0x562d2e[_0x2bdd10(0x77)]},'description':_0x2bdd10(0xd9)+(_0x562d2e[_0x2bdd10(0x77)]?.[_0x2bdd10(0x8e)]??0x1)+_0x2bdd10(0xad)+_0x562d2e[_0x2bdd10(0xb8)]['id']+_0x2bdd10(0xc1)+_0xa5dfb3+'.'});},async 'execute'(_0x1b54db){const _0x28bb04=a116_0xdae7a5;requireExplicitYes(_0x1b54db),validateDeleteExecuteInput(_0x1b54db);const _0x46d213=await readMenuDeletePlan(_0x1b54db[_0x28bb04(0xa2)](_0x28bb04(0x86))),_0x904af2=mutationPlanFromDeleteFile(_0x46d213[_0x28bb04(0x86)],_0x46d213[_0x28bb04(0xd1)]),_0x18e879=_0x46d213['plan'][_0x28bb04(0x73)]['id'];try{assertMenuDeletePlanExecutable(_0x46d213[_0x28bb04(0x86)],_0x1b54db[_0x28bb04(0xe4)]);}catch(_0x469508){throw menuFailure(asMenuError(_0x469508),_0x904af2,{'stage':_0x28bb04(0x8f),'failed':{'id':_0x18e879}});}let _0x2efb6a,_0x85f77b;try{_0x2efb6a=await fetchMutationSnapshot(_0x1b54db,_0x28bb04(0xae),_0x18e879),_0x85f77b=assertMenuDeletePlanCurrent(_0x46d213[_0x28bb04(0x86)],_0x1b54db[_0x28bb04(0xe4)],_0x2efb6a),assertDeleteTargetsComplete(_0x46d213[_0x28bb04(0x86)],_0x2efb6a),_0x85f77b[_0x28bb04(0xba)](_0x148f31=>assertDeleteSafety(_0x148f31,_0x46d213[_0x28bb04(0x86)][_0x28bb04(0x76)])),assertNoSharedPages(_0x2efb6a,_0x85f77b),assertCascadeMatchesPlan(_0x904af2,_0x85f77b);}catch(_0xf44931){throw menuFailure(asMenuError(_0xf44931),_0x904af2,{'stage':_0x28bb04(0xdd),'failed':{'id':_0x18e879}});}const _0x132d19=_0x46d213[_0x28bb04(0x86)][_0x28bb04(0x77)];let _0x19071c;try{_0x19071c=await batchDeleteMenuEntities(_0x1b54db[_0x28bb04(0xb7)],_0x132d19);}catch(_0x545033){const _0x3da9b3=mapMenuApiError(_0x545033,_0x28bb04(0x90)),_0x385b1a=[_0x28bb04(0xdc)];let _0x4f13ee;try{_0x4f13ee=await readDeleteOutcome(_0x1b54db,_0x132d19);}catch(_0x2ad448){const _0xb07930=describeMenuErrorCause(_0x2ad448,_0x28bb04(0x80),_0x18e879);_0x385b1a['push'](_0x28bb04(0xde)+_0xb07930[_0x28bb04(0x95)]+_0x28bb04(0xcb)+_0xb07930[_0x28bb04(0x92)]);throw menuFailure(_0x3da9b3,_0x904af2,{'stage':_0x28bb04(0xd7),'failed':{'targetIds':_0x132d19,'targetIdsAbsent':'unconfirmed',..._0xb07930},'warnings':_0x385b1a,'verification':{'status':'failed','lookupCommand':_0x28bb04(0x9a),'targetIds':_0x132d19}});}throw menuFailure(_0x3da9b3,_0x904af2,{'stage':_0x28bb04(0xd7),'succeeded':_0x4f13ee[_0x28bb04(0xc4)][_0x28bb04(0x72)](_0x410fc5=>({'id':_0x410fc5,'deleted':!![]})),'failed':{'targetIds':_0x132d19,'absentIds':_0x4f13ee[_0x28bb04(0xc4)],'remainingIds':_0x4f13ee[_0x28bb04(0xe1)]},'warnings':_0x385b1a,'verification':verificationFromOutcome(_0x4f13ee)});}if(_0x19071c!==_0x132d19['length']){const _0x40676b=menuError('menu_batch_delete_count_mismatch',_0x28bb04(0x8d)+_0x19071c+'\x20deleted\x20menus;\x20expected\x20'+_0x132d19[_0x28bb04(0x8e)]+'.',_0x28bb04(0x71)),_0x2576e1=['The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.'];let _0x3524cb;try{_0x3524cb=await readDeleteOutcome(_0x1b54db,_0x132d19);}catch(_0x11a5b2){const _0x1129a1=describeMenuErrorCause(_0x11a5b2,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x18e879);_0x2576e1[_0x28bb04(0xbb)](_0x28bb04(0xc9)+_0x1129a1[_0x28bb04(0x95)]+_0x28bb04(0xcb)+_0x1129a1[_0x28bb04(0x92)]);throw menuFailure(_0x40676b,_0x904af2,{'stage':_0x28bb04(0xd7),'failed':{'targetIds':_0x132d19,'expectedCount':_0x132d19['length'],'reportedDeletedCount':_0x19071c,'targetIdsAbsent':_0x28bb04(0xc6),..._0x1129a1},'warnings':_0x2576e1,'verification':{'status':'failed','lookupCommand':_0x28bb04(0x9a),'targetIds':_0x132d19}});}throw menuFailure(_0x40676b,_0x904af2,{'stage':_0x28bb04(0xd7),'succeeded':_0x3524cb[_0x28bb04(0xc4)][_0x28bb04(0x72)](_0x3cecb4=>({'id':_0x3cecb4,'deleted':!![]})),'failed':{'targetIds':_0x132d19,'expectedCount':_0x132d19[_0x28bb04(0x8e)],'reportedDeletedCount':_0x19071c,'absentIds':_0x3524cb[_0x28bb04(0xc4)],'remainingIds':_0x3524cb['remainingIds']},'warnings':_0x2576e1,'verification':verificationFromOutcome(_0x3524cb)});}let _0x364dad;try{_0x364dad=await readDeleteOutcome(_0x1b54db,_0x132d19);}catch(_0x576943){const _0x18821a=describeMenuErrorCause(_0x576943,'verify\x20batch\x20delete',_0x18e879),_0x21ec70=asVerificationError(_0x576943,_0x28bb04(0xab)+_0x18e879+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x21ec70,_0x904af2,{'stage':'verification','succeeded':_0x132d19[_0x28bb04(0x72)](_0x4ec4b6=>({'id':_0x4ec4b6,'deleteRequested':!![]})),'failed':{'id':_0x18e879,'targetIds':_0x132d19,'targetIdsAbsent':'unconfirmed',..._0x18821a},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x28bb04(0xbe),'lookupCommand':_0x28bb04(0x9a),'targetIds':_0x132d19}});}if(_0x364dad['remainingIds']['length']>0x0){const _0x59f3c6=menuError('menu_verification_failed','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20'+_0x364dad[_0x28bb04(0xe1)][_0x28bb04(0x88)](',\x20')+'.',_0x28bb04(0x71));throw menuFailure(_0x59f3c6,_0x904af2,{'stage':_0x28bb04(0xa1),'succeeded':_0x132d19[_0x28bb04(0x72)](_0x3e49c8=>({'id':_0x3e49c8,'deleteRequested':!![]})),'failed':{'id':_0x18e879,'targetIds':_0x132d19,'absentIds':_0x364dad[_0x28bb04(0xc4)],'remainingIds':_0x364dad[_0x28bb04(0xe1)]},'warnings':[_0x28bb04(0xe5)],'verification':verificationFromOutcome(_0x364dad)});}const _0x166fb7=_0x132d19[_0x28bb04(0x72)](_0x40c630=>({'id':_0x40c630,'deleted':!![]})),_0x5be1d6=mutationResult({..._0x904af2,'dryRun':![],'succeeded':_0x166fb7,'verification':{'checkedBy':_0x28bb04(0x83),'plannedSnapshotHash':_0x904af2[_0x28bb04(0xa8)],'finalSnapshotHash':_0x364dad[_0x28bb04(0xdb)][_0x28bb04(0x81)],'reportedDeletedCount':_0x19071c,'targetAbsent':!_0x364dad[_0x28bb04(0xdb)][_0x28bb04(0xb9)][_0x28bb04(0x85)](_0x18e879),'allTargetsAbsent':!![],'targetIds':_0x132d19}});return{'ok':!![],'data':_0x5be1d6,'message':_0x28bb04(0xd3)+_0x166fb7['length']+_0x28bb04(0xad)+_0x18e879+'.'};}};async function readDeleteOutcome(_0x402bdd,_0x5f07fb){const _0x3b33aa=a116_0xdae7a5,_0x5e391a=await fetchMenuSnapshot(_0x402bdd[_0x3b33aa(0xe4)],_0x402bdd['cookie']);return{'snapshot':_0x5e391a,'absentIds':_0x5f07fb[_0x3b33aa(0xca)](_0x4c8b99=>!_0x5e391a[_0x3b33aa(0xb9)][_0x3b33aa(0x85)](_0x4c8b99)),'remainingIds':_0x5f07fb[_0x3b33aa(0xca)](_0x2e18b8=>_0x5e391a['byId']['has'](_0x2e18b8))};}function verificationFromOutcome(_0x1667ef){const _0x107cb4=a116_0xdae7a5;return{'checkedBy':_0x107cb4(0x83),'absentIds':_0x1667ef['absentIds'],'remainingIds':_0x1667ef[_0x107cb4(0xe1)]};}function validateDeleteDryRunInput(_0x2c7b8f){const _0x334ab5=a116_0xdae7a5;validateExactId(_0x2c7b8f);if(!hasFlag(_0x2c7b8f,_0x334ab5(0xa7))||!_0x2c7b8f[_0x334ab5(0xa2)](_0x334ab5(0xa7))[_0x334ab5(0x6f)]())throw CliErrors[_0x334ab5(0x7a)]('plan-out',_0x334ab5(0x8c));if(hasFlag(_0x2c7b8f,'plan'))throw CliErrors[_0x334ab5(0xb1)]('--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.');}function validateDeleteExecuteInput(_0x42087b){const _0x3dc661=a116_0xdae7a5;if(!hasFlag(_0x42087b,_0x3dc661(0x86))||!_0x42087b['str'](_0x3dc661(0x86))[_0x3dc661(0x6f)]())throw CliErrors[_0x3dc661(0x7a)](_0x3dc661(0x86),_0x3dc661(0x8b));const _0x5cd19c=['id',_0x3dc661(0x76),_0x3dc661(0xa7),_0x3dc661(0x9b),'expect-path','expected-children-count'][_0x3dc661(0xca)](_0x358032=>hasFlag(_0x42087b,_0x358032));if(_0x5cd19c['length']>0x0)throw CliErrors['validation']('Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20'+_0x5cd19c[_0x3dc661(0x72)](_0xee3eaf=>'--'+_0xee3eaf)[_0x3dc661(0x88)](',\x20')+'.');}async function buildDeletePlan(_0x4ca381){const _0x233897=a116_0xdae7a5,_0x2a3474=validateExactId(_0x4ca381),_0x41a15c=await fetchMutationSnapshot(_0x4ca381,_0x233897(0xd2),_0x2a3474),_0x544c35=requireMenu(_0x41a15c,_0x2a3474);assertExpectedState(_0x4ca381,_0x544c35);const _0x1f0c2e=_0x4ca381[_0x233897(0xa0)]('recursive');let _0x36d8d8;if(_0x1f0c2e){if(_0x544c35[_0x233897(0x9e)][_0x233897(0x6f)]()[_0x233897(0x9f)]()!==_0x233897(0xb3))throw menuError(_0x233897(0x7c),'Menu\x20'+_0x544c35['id']+'\x20is\x20type\x20\x22'+(_0x544c35[_0x233897(0x9e)]||_0x233897(0xc3))+_0x233897(0x89));_0x36d8d8=collectDeleteTargets(_0x41a15c,_0x544c35),_0x36d8d8[_0x233897(0xba)](_0x5930a5=>assertDeleteSafety(_0x5930a5,!![]));}else assertDeleteSafety(_0x544c35),_0x36d8d8=[_0x544c35];assertNoSharedPages(_0x41a15c,_0x36d8d8);const _0x4309bc=_0x36d8d8['map'](_0x55b04f=>_0x55b04f['id']),_0x471d53=cascadeForTargets(_0x36d8d8),_0x373f81=_0x471d53[_0x233897(0x96)][_0x233897(0x8e)]>0x0?[_0x233897(0x94)]:[];return mutationResult({'operation':_0x233897(0x98),'selector':{'id':_0x2a3474,'recursive':_0x1f0c2e},'before':_0x544c35,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x233897(0xd5),'method':_0x233897(0xe6),'path':_0x233897(0xd8),'body':{'idList':_0x4309bc}}],'targets':_0x36d8d8,'deleteOrder':_0x4309bc,'snapshotHash':_0x41a15c['hash'],'cascade':_0x471d53,'warnings':_0x373f81});}function assertDeleteSafety(_0x247c02,_0x2451ce=![]){const _0x38929f=a116_0xdae7a5,_0x2924b5=_0x247c02['type']['trim']()[_0x38929f(0x9f)]()===_0x38929f(0xb3);if(_0x247c02['childrenCount']>0x0&&(!_0x2451ce||!_0x2924b5))throw menuError(_0x38929f(0xa3),'Menu\x20'+_0x247c02['id']+_0x38929f(0x87)+_0x247c02[_0x38929f(0x9d)]+_0x38929f(0xd6),_0x38929f(0xd0)+_0x247c02[_0x38929f(0x84)][_0x38929f(0x88)](',\x20'));if(_0x2924b5&&_0x247c02[_0x38929f(0x78)]!=null)throw menuError(_0x38929f(0x7d),_0x38929f(0xcd)+_0x247c02['id']+_0x38929f(0xb2)+_0x247c02[_0x38929f(0x78)]+_0x38929f(0xa5),_0x38929f(0x79));if(!_0x2924b5)return;if(!_0x247c02[_0x38929f(0xa6)])throw menuError('menu_folder_resources_invalid',_0x38929f(0xcd)+_0x247c02['id']+_0x38929f(0xb0),'Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(_0x247c02[_0x38929f(0x8a)]['length']>0x0)throw menuError(_0x38929f(0xc5),_0x38929f(0xcd)+_0x247c02['id']+'\x20still\x20references\x20'+_0x247c02[_0x38929f(0x8a)][_0x38929f(0x8e)]+'\x20resource\x20URL(s).',_0x38929f(0xbf));}function collectDeleteTargets(_0x470445,_0x3548b8){const _0x216773=[],_0xca7263=new Set(),_0x1905b5=new Set(),_0x4bcbd1=_0x2b3c64=>{const _0x53b161=a116_0x1980;if(_0xca7263[_0x53b161(0x85)](_0x2b3c64['id']))throw menuError(_0x53b161(0xc8),_0x53b161(0xaa)+_0x2b3c64['id']+'.');if(_0x1905b5[_0x53b161(0x85)](_0x2b3c64['id']))return;_0xca7263[_0x53b161(0x75)](_0x2b3c64['id']);for(const _0x4a26e9 of _0x2b3c64[_0x53b161(0x84)]){const _0x4e6ca0=_0x470445[_0x53b161(0xb9)][_0x53b161(0x99)](_0x4a26e9);if(!_0x4e6ca0)throw menuError('menu_tree_invalid',_0x53b161(0x7f)+_0x2b3c64['id']+_0x53b161(0x93)+_0x4a26e9+'.');_0x4bcbd1(_0x4e6ca0);}_0xca7263[_0x53b161(0x98)](_0x2b3c64['id']),_0x1905b5[_0x53b161(0x75)](_0x2b3c64['id']),_0x216773['push'](_0x2b3c64);};return _0x4bcbd1(_0x3548b8),_0x216773;}function assertDeleteTargetsComplete(_0x34b893,_0x1164d4){const _0x509f28=a116_0xdae7a5,_0x3d2d8a=requireMenu(_0x1164d4,_0x34b893['target']['id']);if(_0x34b893[_0x509f28(0x76)]&&_0x3d2d8a[_0x509f28(0x9e)]['trim']()[_0x509f28(0x9f)]()!==_0x509f28(0xb3))throw menuError(_0x509f28(0xc0),_0x509f28(0xa9)+_0x3d2d8a['id']+_0x509f28(0xa4));const _0x4c1098=_0x34b893[_0x509f28(0x76)]?collectDeleteTargets(_0x1164d4,_0x3d2d8a)[_0x509f28(0x72)](_0x22a5b3=>_0x22a5b3['id']):[_0x3d2d8a['id']];if(JSON['stringify'](_0x34b893[_0x509f28(0x77)])!==JSON['stringify'](_0x4c1098))throw menuError(_0x509f28(0xc0),_0x509f28(0xce),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.');}function assertNoSharedPages(_0x33fd86,_0x397e03){const _0x29b88a=a116_0xdae7a5,_0x325575=new Set(_0x397e03[_0x29b88a(0x72)](_0x299fe1=>_0x299fe1['id'])),_0x4f7c68=new Set(_0x397e03[_0x29b88a(0x72)](_0x3b3aa7=>_0x3b3aa7['pageId'])['filter'](_0x5921b2=>_0x5921b2!=null));if(_0x4f7c68[_0x29b88a(0x70)]===0x0)return;const _0x10f9e9=_0x33fd86[_0x29b88a(0x7b)][_0x29b88a(0xca)](_0x6b7226=>!_0x325575[_0x29b88a(0x85)](_0x6b7226['id'])&&_0x6b7226['pageId']!=null&&_0x4f7c68[_0x29b88a(0x85)](_0x6b7226[_0x29b88a(0x78)]));if(_0x10f9e9[_0x29b88a(0x8e)]===0x0)return;const _0x2c5443=_0x10f9e9[_0x29b88a(0x72)](_0x9de7e9=>'page\x20'+_0x9de7e9['pageId']+_0x29b88a(0xbc)+_0x9de7e9['id'])[_0x29b88a(0x88)](',\x20');throw menuError('menu_page_shared','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x2c5443+'.',_0x29b88a(0x7e));}function assertCascadeMatchesPlan(_0x29d868,_0x350a58){const _0xe24021=a116_0xdae7a5,_0x577f84=cascadeForTargets(_0x350a58);if(JSON[_0xe24021(0xac)](_0x29d868['cascade'])!==JSON[_0xe24021(0xac)](_0x577f84))throw menuError(_0xe24021(0xc0),_0xe24021(0x91));}function cascadeForTargets(_0x565777){const _0x4384dc=a116_0xdae7a5,_0x386613=_0x565777[_0x4384dc(0x72)](_0x440ffc=>_0x440ffc[_0x4384dc(0x78)])[_0x4384dc(0xca)](_0x2a9147=>_0x2a9147!=null)[_0x4384dc(0xca)]((_0x22d617,_0x2556c2,_0x22d4f1)=>_0x22d4f1[_0x4384dc(0x9c)](_0x22d617)===_0x2556c2);return{'pages':_0x386613,'pageSchemaAffected':_0x386613[_0x4384dc(0x8e)]>0x0};}function asMenuError(_0x179560){const _0x48823d=a116_0xdae7a5;return _0x179560 instanceof CliError?_0x179560:menuError(_0x48823d(0xc0),_0x179560 instanceof Error?_0x179560[_0x48823d(0xdf)]:String(_0x179560));}
1
+ const a116_0x400a4c=a116_0x5ed9;function a116_0x702e(){const _0x24927f=['2865660VKOFtt','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','Deleted\x20','batch-delete','78xiWAcl','plan','Would\x20batch\x20delete\x20','unconfirmed','remainingIds','\x20is\x20type\x20\x22','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','flagMissing','menus','\x20deleted\x20menus;\x20expected\x20','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','menu_non_empty','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','\x20and\x20cannot\x20be\x20deleted\x20safely.','snapshotHash','menu\x20list','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','verification','cascade','3712712wbLXyH','map','menu_verification_failed','pageId','\x20menu(s)\x20under\x20exact\x20id\x20','has','folder','path','expected-children-count','pages','\x20has\x20','18ACzXJH','):\x20','expect-path','Menu\x20','absentIds','expiresAt','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','batch\x20delete','message','bool','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','menu_plan_invalid','appCode','delete','trim','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','menu_tree_invalid','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','deleteOrder','475pBxCPH','childrenCount',';\x20execution\x20must\x20consume\x20','Folder\x20','hash','16baVlgS','add','POST','dry-run','\x20resource\x20URL(s).','failed','target','toLowerCase','byId','size','Post-mismatch\x20menu\x20readback\x20failed\x20(','pre-write-plan-validation','\x20still\x20references\x20','menu_page_shared','resourcesValid','menu_folder_resources_invalid','60474HmFhEj','99976OKGMhs','/smartapi/menu/batchDelete','length','Batch\x20delete\x20request\x20for\x20menu\x20','rabetbase\x20menu\x20list\x20--format\x20json','snapshot','execute\x20reviewed\x20delete\x20plan','\x20references\x20missing\x20child\x20','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','verify\x20batch\x20delete','stringify','unknown','menu_recursive_requires_folder','get','plan-validation','recursive','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','push','join','type','cookie','causeCode','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','resources','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','\x20is\x20not\x20a\x20folder.','menu_delete_page_bound','menu_batch_delete_count_mismatch','forEach','19532304TkUfDY','plan-out','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','causeMessage','str','expect-parent-id','101797TAtWSA','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','page\x20','5076470XgOYei','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','filter','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','batch-delete-menu','boolean','createdAt','childrenIds','Backend\x20reported\x20','string'];a116_0x702e=function(){return _0x24927f;};return a116_0x702e();}(function(_0x21a00b,_0x583729){const _0x5ae0de=a116_0x5ed9,_0x27c264=_0x21a00b();while(!![]){try{const _0x27190a=parseInt(_0x5ae0de(0x142))/0x1*(parseInt(_0x5ae0de(0x10d))/0x2)+-parseInt(_0x5ae0de(0x154))/0x3*(-parseInt(_0x5ae0de(0x11e))/0x4)+-parseInt(_0x5ae0de(0x108))/0x5*(parseInt(_0x5ae0de(0x11d))/0x6)+parseInt(_0x5ae0de(0x150))/0x7+-parseInt(_0x5ae0de(0x167))/0x8*(-parseInt(_0x5ae0de(0x172))/0x9)+parseInt(_0x5ae0de(0x145))/0xa+-parseInt(_0x5ae0de(0x13c))/0xb;if(_0x27190a===_0x583729)break;else _0x27c264['push'](_0x27c264['shift']());}catch(_0x1e6a73){_0x27c264['push'](_0x27c264['shift']());}}}(a116_0x702e,0x8cb00));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':a116_0x400a4c(0x10f),'path':a116_0x400a4c(0x11f)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a116_0x400a4c(0x143)},MENU_DELETE_RECURSIVE_FLAG={'name':a116_0x400a4c(0x12d),'type':a116_0x400a4c(0x14b),'description':'Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first'},MENU_DELETE_PLAN_OUT_FLAG={'name':a116_0x400a4c(0x13d),'type':a116_0x400a4c(0x14f),'description':'Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file'},MENU_DELETE_PLAN_FLAG={'name':a116_0x400a4c(0x155),'type':a116_0x400a4c(0x14f),'description':a116_0x400a4c(0x103)};export const menuDelete={'service':'menu','command':a116_0x400a4c(0x101),'description':a116_0x400a4c(0x136),'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'(_0xf4b0b2){const _0x335eb4=a116_0x400a4c;_0xf4b0b2[_0x335eb4(0xfd)](_0x335eb4(0x110))?validateDeleteDryRunInput(_0xf4b0b2):validateDeleteExecuteInput(_0xf4b0b2),requireExplicitYes(_0xf4b0b2);},async 'dryRun'(_0x5c219f){const _0x565294=a116_0x400a4c;validateDeleteDryRunInput(_0x5c219f);const _0x415dd0=await buildDeletePlan(_0x5c219f),_0x1faf3e=createMenuDeletePlanFile(_0x5c219f[_0x565294(0x100)],_0x415dd0),_0x1b4fc2=await writeMenuDeletePlan(_0x5c219f[_0x565294(0x140)](_0x565294(0x13d)),_0x1faf3e),_0x21ddf5=mutationResult({..._0x415dd0,'planFile':{'path':_0x1b4fc2,'createdAt':_0x1faf3e[_0x565294(0x14c)],'expiresAt':_0x1faf3e[_0x565294(0x177)]}});return menuDryRunResult(_0x21ddf5,{'method':'POST','url':'/smartapi/menu/batchDelete','body':{'idList':_0x21ddf5[_0x565294(0x107)]},'description':_0x565294(0x156)+(_0x21ddf5[_0x565294(0x107)]?.[_0x565294(0x120)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x21ddf5['selector']['id']+_0x565294(0x10a)+_0x1b4fc2+'.'});},async 'execute'(_0x879c02){const _0x304fce=a116_0x400a4c;requireExplicitYes(_0x879c02),validateDeleteExecuteInput(_0x879c02);const _0x5005ea=await readMenuDeletePlan(_0x879c02[_0x304fce(0x140)](_0x304fce(0x155))),_0x1a42f0=mutationPlanFromDeleteFile(_0x5005ea['plan'],_0x5005ea[_0x304fce(0x16e)]),_0x58887e=_0x5005ea[_0x304fce(0x155)][_0x304fce(0x113)]['id'];try{assertMenuDeletePlanExecutable(_0x5005ea[_0x304fce(0x155)],_0x879c02[_0x304fce(0x100)]);}catch(_0x2ab789){throw menuFailure(asMenuError(_0x2ab789),_0x1a42f0,{'stage':_0x304fce(0x12c),'failed':{'id':_0x58887e}});}let _0x2bd53f,_0x142d3b;try{_0x2bd53f=await fetchMutationSnapshot(_0x879c02,_0x304fce(0x124),_0x58887e),_0x142d3b=assertMenuDeletePlanCurrent(_0x5005ea[_0x304fce(0x155)],_0x879c02[_0x304fce(0x100)],_0x2bd53f),assertDeleteTargetsComplete(_0x5005ea[_0x304fce(0x155)],_0x2bd53f),_0x142d3b[_0x304fce(0x13b)](_0x332e82=>assertDeleteSafety(_0x332e82,_0x5005ea['plan'][_0x304fce(0x12d)])),assertNoSharedPages(_0x2bd53f,_0x142d3b),assertCascadeMatchesPlan(_0x1a42f0,_0x142d3b);}catch(_0x230626){throw menuFailure(asMenuError(_0x230626),_0x1a42f0,{'stage':_0x304fce(0x118),'failed':{'id':_0x58887e}});}const _0x53763c=_0x5005ea[_0x304fce(0x155)]['deleteOrder'];let _0x493cc7;try{_0x493cc7=await batchDeleteMenuEntities(_0x879c02[_0x304fce(0x132)],_0x53763c);}catch(_0x26ba81){const _0x21a265=mapMenuApiError(_0x26ba81,_0x304fce(0xfb)),_0x5d3c7a=[_0x304fce(0x15a)];let _0x2efb18;try{_0x2efb18=await readDeleteOutcome(_0x879c02,_0x53763c);}catch(_0x11c992){const _0x3e70ff=describeMenuErrorCause(_0x11c992,_0x304fce(0x104),_0x58887e);_0x5d3c7a['push']('Post-failure\x20menu\x20readback\x20failed\x20('+_0x3e70ff[_0x304fce(0x133)]+_0x304fce(0x173)+_0x3e70ff[_0x304fce(0x13f)]);throw menuFailure(_0x21a265,_0x1a42f0,{'stage':_0x304fce(0x153),'failed':{'targetIds':_0x53763c,'targetIdsAbsent':'unconfirmed',..._0x3e70ff},'warnings':_0x5d3c7a,'verification':{'status':_0x304fce(0x112),'lookupCommand':_0x304fce(0x122),'targetIds':_0x53763c}});}throw menuFailure(_0x21a265,_0x1a42f0,{'stage':'batch-delete','succeeded':_0x2efb18['absentIds'][_0x304fce(0x168)](_0x731fae=>({'id':_0x731fae,'deleted':!![]})),'failed':{'targetIds':_0x53763c,'absentIds':_0x2efb18[_0x304fce(0x176)],'remainingIds':_0x2efb18[_0x304fce(0x158)]},'warnings':_0x5d3c7a,'verification':verificationFromOutcome(_0x2efb18)});}if(_0x493cc7!==_0x53763c[_0x304fce(0x120)]){const _0xc2d695=menuError(_0x304fce(0x13a),_0x304fce(0x14e)+_0x493cc7+_0x304fce(0x15d)+_0x53763c[_0x304fce(0x120)]+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.'),_0x4e66ce=[_0x304fce(0xfa)];let _0x5d6500;try{_0x5d6500=await readDeleteOutcome(_0x879c02,_0x53763c);}catch(_0x5b5af6){const _0x34c55f=describeMenuErrorCause(_0x5b5af6,_0x304fce(0xfe),_0x58887e);_0x4e66ce[_0x304fce(0x12f)](_0x304fce(0x117)+_0x34c55f['causeCode']+'):\x20'+_0x34c55f[_0x304fce(0x13f)]);throw menuFailure(_0xc2d695,_0x1a42f0,{'stage':_0x304fce(0x153),'failed':{'targetIds':_0x53763c,'expectedCount':_0x53763c[_0x304fce(0x120)],'reportedDeletedCount':_0x493cc7,'targetIdsAbsent':_0x304fce(0x157),..._0x34c55f},'warnings':_0x4e66ce,'verification':{'status':_0x304fce(0x112),'lookupCommand':_0x304fce(0x122),'targetIds':_0x53763c}});}throw menuFailure(_0xc2d695,_0x1a42f0,{'stage':_0x304fce(0x153),'succeeded':_0x5d6500[_0x304fce(0x176)]['map'](_0xa34a06=>({'id':_0xa34a06,'deleted':!![]})),'failed':{'targetIds':_0x53763c,'expectedCount':_0x53763c[_0x304fce(0x120)],'reportedDeletedCount':_0x493cc7,'absentIds':_0x5d6500['absentIds'],'remainingIds':_0x5d6500[_0x304fce(0x158)]},'warnings':_0x4e66ce,'verification':verificationFromOutcome(_0x5d6500)});}let _0x181760;try{_0x181760=await readDeleteOutcome(_0x879c02,_0x53763c);}catch(_0x2fa644){const _0x259d3a=describeMenuErrorCause(_0x2fa644,_0x304fce(0x127),_0x58887e),_0x5e1db6=asVerificationError(_0x2fa644,_0x304fce(0x121)+_0x58887e+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x5e1db6,_0x1a42f0,{'stage':_0x304fce(0x165),'succeeded':_0x53763c[_0x304fce(0x168)](_0x8669ae=>({'id':_0x8669ae,'deleteRequested':!![]})),'failed':{'id':_0x58887e,'targetIds':_0x53763c,'targetIdsAbsent':_0x304fce(0x157),..._0x259d3a},'warnings':[_0x304fce(0x134)],'verification':{'status':_0x304fce(0x112),'lookupCommand':_0x304fce(0x122),'targetIds':_0x53763c}});}if(_0x181760[_0x304fce(0x158)][_0x304fce(0x120)]>0x0){const _0x1e9fc4=menuError(_0x304fce(0x169),'One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20'+_0x181760[_0x304fce(0x158)][_0x304fce(0x130)](',\x20')+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.');throw menuFailure(_0x1e9fc4,_0x1a42f0,{'stage':_0x304fce(0x165),'succeeded':_0x53763c[_0x304fce(0x168)](_0x49f5fa=>({'id':_0x49f5fa,'deleteRequested':!![]})),'failed':{'id':_0x58887e,'targetIds':_0x53763c,'absentIds':_0x181760[_0x304fce(0x176)],'remainingIds':_0x181760[_0x304fce(0x158)]},'warnings':[_0x304fce(0x146)],'verification':verificationFromOutcome(_0x181760)});}const _0x52697d=_0x53763c['map'](_0x2c2285=>({'id':_0x2c2285,'deleted':!![]})),_0x2603db=mutationResult({..._0x1a42f0,'dryRun':![],'succeeded':_0x52697d,'verification':{'checkedBy':_0x304fce(0x163),'plannedSnapshotHash':_0x1a42f0[_0x304fce(0x162)],'finalSnapshotHash':_0x181760[_0x304fce(0x123)][_0x304fce(0x10c)],'reportedDeletedCount':_0x493cc7,'targetAbsent':!_0x181760[_0x304fce(0x123)][_0x304fce(0x115)]['has'](_0x58887e),'allTargetsAbsent':!![],'targetIds':_0x53763c}});return{'ok':!![],'data':_0x2603db,'message':_0x304fce(0x152)+_0x52697d[_0x304fce(0x120)]+_0x304fce(0x16b)+_0x58887e+'.'};}};async function readDeleteOutcome(_0x14bb55,_0x4efd83){const _0xb69375=a116_0x400a4c,_0xff221e=await fetchMenuSnapshot(_0x14bb55[_0xb69375(0x100)],_0x14bb55[_0xb69375(0x132)]);return{'snapshot':_0xff221e,'absentIds':_0x4efd83[_0xb69375(0x148)](_0x8cb0da=>!_0xff221e['byId'][_0xb69375(0x16c)](_0x8cb0da)),'remainingIds':_0x4efd83['filter'](_0x23a680=>_0xff221e[_0xb69375(0x115)]['has'](_0x23a680))};}function verificationFromOutcome(_0x35f5af){const _0x3d1f62=a116_0x400a4c;return{'checkedBy':_0x3d1f62(0x163),'absentIds':_0x35f5af[_0x3d1f62(0x176)],'remainingIds':_0x35f5af[_0x3d1f62(0x158)]};}function validateDeleteDryRunInput(_0x38d823){const _0x4d5ea6=a116_0x400a4c;validateExactId(_0x38d823);if(!hasFlag(_0x38d823,'plan-out')||!_0x38d823[_0x4d5ea6(0x140)](_0x4d5ea6(0x13d))[_0x4d5ea6(0x102)]())throw CliErrors[_0x4d5ea6(0x15b)](_0x4d5ea6(0x13d),_0x4d5ea6(0x13e));if(hasFlag(_0x38d823,'plan'))throw CliErrors['validation']('--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.');}function validateDeleteExecuteInput(_0x1bdce7){const _0x49f757=a116_0x400a4c;if(!hasFlag(_0x1bdce7,'plan')||!_0x1bdce7[_0x49f757(0x140)](_0x49f757(0x155))[_0x49f757(0x102)]())throw CliErrors[_0x49f757(0x15b)](_0x49f757(0x155),'--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.');const _0x250129=['id',_0x49f757(0x12d),_0x49f757(0x13d),_0x49f757(0x141),_0x49f757(0x174),_0x49f757(0x16f)]['filter'](_0x609e6b=>hasFlag(_0x1bdce7,_0x609e6b));if(_0x250129[_0x49f757(0x120)]>0x0)throw CliErrors['validation'](_0x49f757(0x160)+_0x250129[_0x49f757(0x168)](_0x46516d=>'--'+_0x46516d)[_0x49f757(0x130)](',\x20')+'.');}async function buildDeletePlan(_0x195355){const _0x3678a7=a116_0x400a4c,_0x3e346e=validateExactId(_0x195355),_0x221f3e=await fetchMutationSnapshot(_0x195355,'plan\x20delete',_0x3e346e),_0x347869=requireMenu(_0x221f3e,_0x3e346e);assertExpectedState(_0x195355,_0x347869);const _0x4387ec=_0x195355['bool'](_0x3678a7(0x12d));let _0x57fcc3;if(_0x4387ec){if(_0x347869[_0x3678a7(0x131)][_0x3678a7(0x102)]()['toLowerCase']()!=='folder')throw menuError(_0x3678a7(0x12a),_0x3678a7(0x175)+_0x347869['id']+_0x3678a7(0x159)+(_0x347869['type']||_0x3678a7(0x129))+_0x3678a7(0x12e));_0x57fcc3=collectDeleteTargets(_0x221f3e,_0x347869),_0x57fcc3['forEach'](_0x12c427=>assertDeleteSafety(_0x12c427,!![]));}else assertDeleteSafety(_0x347869),_0x57fcc3=[_0x347869];assertNoSharedPages(_0x221f3e,_0x57fcc3);const _0x5e35e4=_0x57fcc3[_0x3678a7(0x168)](_0x1129be=>_0x1129be['id']),_0x1a96c8=cascadeForTargets(_0x57fcc3),_0xdd0240=_0x1a96c8[_0x3678a7(0x170)][_0x3678a7(0x120)]>0x0?[_0x3678a7(0x137)]:[];return mutationResult({'operation':'delete','selector':{'id':_0x3e346e,'recursive':_0x4387ec},'before':_0x347869,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x3678a7(0x14a),'method':_0x3678a7(0x10f),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x5e35e4}}],'targets':_0x57fcc3,'deleteOrder':_0x5e35e4,'snapshotHash':_0x221f3e['hash'],'cascade':_0x1a96c8,'warnings':_0xdd0240});}function assertDeleteSafety(_0x51ce52,_0x6ea10d=![]){const _0x557960=a116_0x400a4c,_0x22a9d8=_0x51ce52[_0x557960(0x131)][_0x557960(0x102)]()['toLowerCase']()===_0x557960(0x16d);if(_0x51ce52[_0x557960(0x109)]>0x0&&(!_0x6ea10d||!_0x22a9d8))throw menuError(_0x557960(0x15f),_0x557960(0x175)+_0x51ce52['id']+_0x557960(0x171)+_0x51ce52[_0x557960(0x109)]+_0x557960(0xf9),'Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20'+_0x51ce52[_0x557960(0x14d)][_0x557960(0x130)](',\x20'));if(_0x22a9d8&&_0x51ce52[_0x557960(0x16a)]!=null)throw menuError(_0x557960(0x139),'Folder\x20'+_0x51ce52['id']+_0x557960(0x164)+_0x51ce52[_0x557960(0x16a)]+_0x557960(0x161),_0x557960(0x147));if(!_0x22a9d8)return;if(!_0x51ce52[_0x557960(0x11b)])throw menuError(_0x557960(0x11c),_0x557960(0x10b)+_0x51ce52['id']+'\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(_0x51ce52[_0x557960(0x135)][_0x557960(0x120)]>0x0)throw menuError('menu_folder_has_resources',_0x557960(0x10b)+_0x51ce52['id']+_0x557960(0x119)+_0x51ce52[_0x557960(0x135)][_0x557960(0x120)]+_0x557960(0x111),'Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function a116_0x5ed9(_0x2d1b59,_0x338960){_0x2d1b59=_0x2d1b59-0xf9;const _0x702ec3=a116_0x702e();let _0x5ed956=_0x702ec3[_0x2d1b59];return _0x5ed956;}function collectDeleteTargets(_0x12e8d9,_0xbaa6c){const _0x4ccda1=[],_0x82b8e7=new Set(),_0x283482=new Set(),_0x258302=_0xd8fd5e=>{const _0x29174a=a116_0x5ed9;if(_0x82b8e7[_0x29174a(0x16c)](_0xd8fd5e['id']))throw menuError(_0x29174a(0x105),_0x29174a(0x106)+_0xd8fd5e['id']+'.');if(_0x283482[_0x29174a(0x16c)](_0xd8fd5e['id']))return;_0x82b8e7['add'](_0xd8fd5e['id']);for(const _0x4eddbd of _0xd8fd5e[_0x29174a(0x14d)]){const _0xe0a8b8=_0x12e8d9['byId'][_0x29174a(0x12b)](_0x4eddbd);if(!_0xe0a8b8)throw menuError('menu_tree_invalid',_0x29174a(0x175)+_0xd8fd5e['id']+_0x29174a(0x125)+_0x4eddbd+'.');_0x258302(_0xe0a8b8);}_0x82b8e7[_0x29174a(0x101)](_0xd8fd5e['id']),_0x283482[_0x29174a(0x10e)](_0xd8fd5e['id']),_0x4ccda1[_0x29174a(0x12f)](_0xd8fd5e);};return _0x258302(_0xbaa6c),_0x4ccda1;}function assertDeleteTargetsComplete(_0x562469,_0x3b68b0){const _0x966445=a116_0x400a4c,_0x4da3ab=requireMenu(_0x3b68b0,_0x562469[_0x966445(0x113)]['id']);if(_0x562469[_0x966445(0x12d)]&&_0x4da3ab[_0x966445(0x131)][_0x966445(0x102)]()[_0x966445(0x114)]()!==_0x966445(0x16d))throw menuError(_0x966445(0xff),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x4da3ab['id']+_0x966445(0x138));const _0x41dfa9=_0x562469[_0x966445(0x12d)]?collectDeleteTargets(_0x3b68b0,_0x4da3ab)[_0x966445(0x168)](_0x87c5b=>_0x87c5b['id']):[_0x4da3ab['id']];if(JSON[_0x966445(0x128)](_0x562469['deleteOrder'])!==JSON[_0x966445(0x128)](_0x41dfa9))throw menuError(_0x966445(0xff),_0x966445(0x126),_0x966445(0x149));}function assertNoSharedPages(_0x5c6e4d,_0x2a6887){const _0x3c5975=a116_0x400a4c,_0x5e994d=new Set(_0x2a6887[_0x3c5975(0x168)](_0x2d8b0a=>_0x2d8b0a['id'])),_0x25d336=new Set(_0x2a6887[_0x3c5975(0x168)](_0x5b9b34=>_0x5b9b34[_0x3c5975(0x16a)])[_0x3c5975(0x148)](_0x31cb2e=>_0x31cb2e!=null));if(_0x25d336[_0x3c5975(0x116)]===0x0)return;const _0x36bfe4=_0x5c6e4d[_0x3c5975(0x15c)][_0x3c5975(0x148)](_0x1dbc49=>!_0x5e994d[_0x3c5975(0x16c)](_0x1dbc49['id'])&&_0x1dbc49[_0x3c5975(0x16a)]!=null&&_0x25d336[_0x3c5975(0x16c)](_0x1dbc49[_0x3c5975(0x16a)]));if(_0x36bfe4['length']===0x0)return;const _0x3e7c4b=_0x36bfe4[_0x3c5975(0x168)](_0x2237a2=>_0x3c5975(0x144)+_0x2237a2[_0x3c5975(0x16a)]+'\x20->\x20menu\x20'+_0x2237a2['id'])[_0x3c5975(0x130)](',\x20');throw menuError(_0x3c5975(0x11a),'Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x3e7c4b+'.',_0x3c5975(0x15e));}function assertCascadeMatchesPlan(_0x268fcb,_0x5dc0af){const _0x296588=a116_0x400a4c,_0x1f0f02=cascadeForTargets(_0x5dc0af);if(JSON[_0x296588(0x128)](_0x268fcb[_0x296588(0x166)])!==JSON[_0x296588(0x128)](_0x1f0f02))throw menuError(_0x296588(0xff),_0x296588(0x151));}function cascadeForTargets(_0xc457c2){const _0xf71170=a116_0x400a4c,_0x500d7b=_0xc457c2[_0xf71170(0x168)](_0x19f429=>_0x19f429[_0xf71170(0x16a)])[_0xf71170(0x148)](_0x28c983=>_0x28c983!=null)[_0xf71170(0x148)]((_0x3ed9d6,_0x5e4210,_0x45542e)=>_0x45542e['indexOf'](_0x3ed9d6)===_0x5e4210);return{'pages':_0x500d7b,'pageSchemaAffected':_0x500d7b[_0xf71170(0x120)]>0x0};}function asMenuError(_0x685f05){const _0x16fd3d=a116_0x400a4c;return _0x685f05 instanceof CliError?_0x685f05:menuError(_0x16fd3d(0xff),_0x685f05 instanceof Error?_0x685f05[_0x16fd3d(0xfc)]:String(_0x685f05));}
@@ -1 +1 @@
1
- const a117_0x4a8249=a117_0x196f;(function(_0x54cab1,_0x1cf6cc){const _0x871789=a117_0x196f,_0x33d798=_0x54cab1();while(!![]){try{const _0x4d6d96=parseInt(_0x871789(0x19c))/0x1+-parseInt(_0x871789(0x140))/0x2+-parseInt(_0x871789(0x13c))/0x3+-parseInt(_0x871789(0x1be))/0x4*(-parseInt(_0x871789(0x195))/0x5)+parseInt(_0x871789(0x1af))/0x6+parseInt(_0x871789(0x150))/0x7*(parseInt(_0x871789(0x191))/0x8)+-parseInt(_0x871789(0x14b))/0x9*(parseInt(_0x871789(0x180))/0xa);if(_0x4d6d96===_0x1cf6cc)break;else _0x33d798['push'](_0x33d798['shift']());}catch(_0x44892b){_0x33d798['push'](_0x33d798['shift']());}}}(a117_0x629a,0x84166));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_0x4a8249(0x13e),'new-window':'link'};export function validateExternalMenuUrl(_0xcca900){const _0x21d922=a117_0x4a8249,_0x14d022=_0xcca900[_0x21d922(0x18f)]();let _0x536c9f;try{_0x536c9f=new URL(_0x14d022);}catch{throw menuError(_0x21d922(0x1a3),_0x21d922(0x15f),_0x21d922(0x1b9));}if(_0x536c9f['protocol']!==_0x21d922(0x16c))throw menuError(_0x21d922(0x1b0),_0x21d922(0x16d),'Provide\x20an\x20HTTPS\x20URL.');if(_0x536c9f['username']||_0x536c9f[_0x21d922(0x15a)])throw menuError(_0x21d922(0x161),_0x21d922(0x1a1),_0x21d922(0x177));return _0x14d022;}export const menuExternalLinkCreate={'service':a117_0x4a8249(0x1a8),'command':'external-link-create','description':a117_0x4a8249(0x176),'risk':a117_0x4a8249(0x14f),'structuredErrors':!![],'flags':[{'name':a117_0x4a8249(0x1b2),'type':a117_0x4a8249(0x1a5),'required':!![],'description':'Menu\x20label'},{'name':a117_0x4a8249(0x17a),'type':a117_0x4a8249(0x1a5),'required':!![],'enum':[a117_0x4a8249(0x167),a117_0x4a8249(0x1c1)],'description':a117_0x4a8249(0x188)},{'name':a117_0x4a8249(0x145),'type':a117_0x4a8249(0x1a5),'required':!![],'description':a117_0x4a8249(0x1ae)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':a117_0x4a8249(0x17f),'default':!![],'description':a117_0x4a8249(0x1a4)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5f23ab){validateAddInput(_0x5f23ab);},async 'dryRun'(_0xdebabe){const _0x25ad84=a117_0x4a8249;validateAddInput(_0xdebabe);const {plan:_0x4ed9ca}=await buildSafeAddPlan(_0xdebabe,!![]),_0x2d62d1=_0x4ed9ca[_0x25ad84(0x15b)],_0xd5def7=createBody(_0x2d62d1);return menuDryRunResult(_0x4ed9ca,{'method':_0x25ad84(0x16a),'url':_0x25ad84(0x1b4),'body':_0xd5def7,'description':_0x25ad84(0x157)+JSON[_0x25ad84(0x13a)](_0x2d62d1[_0x25ad84(0x1b2)])+_0x25ad84(0x173)+_0xdebabe[_0x25ad84(0x1aa)](_0x25ad84(0x17a))+_0x25ad84(0x1c0)});},async 'execute'(_0x17ca08){const _0x4ece77=a117_0x4a8249;validateAddInput(_0x17ca08);const _0x34583d=await buildSafeAddPlan(_0x17ca08,![]),{plan:_0x5050f3,snapshot:_0x4b2276}=_0x34583d,_0x5465b0=_0x5050f3[_0x4ece77(0x15b)],_0x572544=buildMenuLookupCommand(_0x17ca08[_0x4ece77(0x148)]);await recheckAddSnapshot(_0x17ca08,_0x5050f3);let _0x18b886;try{_0x18b886=await createMenuEntity(_0x17ca08[_0x4ece77(0x148)],_0x17ca08[_0x4ece77(0x144)],createBody(_0x5465b0));}catch(_0x3ec696){const _0x5bdbc6=mapMenuApiError(_0x3ec696,_0x4ece77(0x1a7));if(!isMenuResponseLoss(_0x3ec696)||_0x5bdbc6[_0x4ece77(0x192)]===_0x4ece77(0x1ab))throw externalLinkCreateFailure(_0x5bdbc6,_0x5050f3,{'stage':_0x4ece77(0x1bb),'failed':{},'verification':{'status':'failed','lookupCommand':_0x572544}});return recoverAfterResponseLoss(_0x17ca08,_0x34583d,_0x572544);}const _0x35d707=Number(_0x18b886?.['id']),_0x24cdec=typeof _0x18b886?.[_0x4ece77(0x1c8)]===_0x4ece77(0x1a5)?_0x18b886[_0x4ece77(0x1c8)]:'';if(!Number['isSafeInteger'](_0x35d707)||_0x35d707<=0x0||!_0x24cdec[_0x4ece77(0x18f)]()){const _0x48c8e7=menuError(_0x4ece77(0x18b),_0x4ece77(0x186),_0x4ece77(0x174)+_0x572544+_0x4ece77(0x1c6));throw externalLinkCreateFailure(_0x48c8e7,_0x5050f3,{'stage':_0x4ece77(0x19e),'succeeded':Number[_0x4ece77(0x1b8)](_0x35d707)&&_0x35d707>0x0?[{'id':_0x35d707,'created':!![]}]:[],'failed':{'createdId':Number[_0x4ece77(0x1b8)](_0x35d707)?_0x35d707:null,'generatedPathConfirmed':Boolean(_0x24cdec[_0x4ece77(0x18f)]())},'warnings':[_0x4ece77(0x166)],'after':Number[_0x4ece77(0x1b8)](_0x35d707)&&_0x35d707>0x0?{..._0x5465b0,'id':_0x35d707,'path':_0x24cdec}:_0x5465b0,'verification':{'status':_0x4ece77(0x16f),'lookupCommand':_0x572544,...Number[_0x4ece77(0x1b8)](_0x35d707)&&_0x35d707>0x0?{'targetId':_0x35d707}:{}}});}const _0x23753f=await readAndVerifyCreatedMenu({'appCode':_0x17ca08[_0x4ece77(0x148)],'cookie':_0x17ca08[_0x4ece77(0x144)],'plan':_0x5050f3,'afterPlan':_0x5465b0,'createdId':_0x35d707,'expectedPath':_0x24cdec,'lookupCommand':_0x572544,'recovered':![]});return creationSuccess(_0x5050f3,_0x23753f[_0x4ece77(0x1ac)],_0x23753f['fact'],![]);}};function validateAddInput(_0x1d90ce){const _0x340037=a117_0x4a8249;if(!_0x1d90ce[_0x340037(0x1aa)]('label')[_0x340037(0x18f)]())throw CliErrors[_0x340037(0x169)](_0x340037(0x1b2));resolveExternalMenuType(_0x1d90ce),validateExternalMenuUrl(_0x1d90ce[_0x340037(0x1aa)]('url')),parseParentId(_0x1d90ce,_0x340037(0x1c9)),validateSort(_0x1d90ce);}function resolveExternalMenuType(_0x18572f){const _0x891c54=a117_0x4a8249,_0x4c5aa6=_0x18572f[_0x891c54(0x1aa)]('open-mode')[_0x891c54(0x18f)]();if(!_0x4c5aa6)throw CliErrors['flagMissing'](_0x891c54(0x17a));const _0x560bc2=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x4c5aa6];if(!_0x560bc2)throw menuError('menu_open_mode_invalid',_0x891c54(0x1cc),_0x891c54(0x1c4));return _0x560bc2;}async function buildAddPlan(_0x3ad10d,_0x222bad){const _0x586f59=a117_0x4a8249,_0x1344e9=await fetchMutationSnapshot(_0x3ad10d,_0x586f59(0x1a7)),_0x10e92f=parseParentId(_0x3ad10d,_0x586f59(0x1c9))??null;if(_0x10e92f!=null)requireFolder(_0x1344e9,_0x10e92f);const _0x4bb8bf=validateSort(_0x3ad10d),_0xbe991a=_0x4bb8bf??nextSiblingSort(_0x1344e9,_0x10e92f,'menu'),_0x184143=_0x3ad10d[_0x586f59(0x1aa)](_0x586f59(0x1b2))[_0x586f59(0x18f)](),_0x2bb571=resolveExternalMenuType(_0x3ad10d),_0x2ec043=validateExternalMenuUrl(_0x3ad10d[_0x586f59(0x1aa)](_0x586f59(0x145))),_0x8ead57=Object['prototype'][_0x586f59(0x18d)][_0x586f59(0x19a)](_0x3ad10d[_0x586f59(0x158)],_0x586f59(0x199))?_0x3ad10d[_0x586f59(0x159)](_0x586f59(0x199)):!![],_0x19635c={'id':null,'parentId':_0x10e92f,'label':_0x184143,'path':_0x586f59(0x184),'url':_0x2ec043,'type':_0x2bb571,'visible':_0x8ead57,'sort':_0xbe991a},_0x348724=buildMenuLookupCommand(_0x3ad10d['appCode']),_0x3f40c9=mutationResult({'operation':_0x586f59(0x1c7),'selector':{'parentId':_0x10e92f,'type':_0x2bb571,'label':_0x184143,'url':_0x2ec043},'before':null,'after':_0x19635c,'dryRun':_0x222bad,'backend':[{'method':_0x586f59(0x16a),'path':_0x586f59(0x1b4)}],'plannedActions':[{'stage':_0x586f59(0x170),'method':_0x586f59(0x16a),'path':_0x586f59(0x1b4),'body':createBody(_0x19635c)}],'snapshotHash':_0x1344e9[_0x586f59(0x156)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x348724}});return{'plan':_0x3f40c9,'snapshot':_0x1344e9};}async function buildSafeAddPlan(_0x3efa16,_0x10b8c0){try{return await buildAddPlan(_0x3efa16,_0x10b8c0);}catch(_0x45f419){throw safeMenuAddError(_0x45f419);}}async function recheckAddSnapshot(_0xf6d5fa,_0x1c1436){const _0xf5b22b=a117_0x4a8249;try{await recheckMutationSnapshot(_0xf6d5fa,_0x1c1436,'create\x20external\x20menu');}catch(_0x45e6b8){const _0x1ec151=getFailureRecord(_0x45e6b8);throw externalLinkCreateFailure(_0x45e6b8,_0x1c1436,{'stage':_0xf5b22b(0x164),'failed':{..._0x1ec151?.[_0xf5b22b(0x1a0)]?{'expectedSnapshotHash':_0x1ec151[_0xf5b22b(0x1a0)]}:{},..._0x1ec151?.[_0xf5b22b(0x17e)]?{'currentSnapshotHash':_0x1ec151['currentSnapshotHash']}:{}}});}}function createBody(_0x1beb0c){const _0x2ec101=a117_0x4a8249;return{'parentId':toApiParentId(_0x1beb0c[_0x2ec101(0x181)]),'label':String(_0x1beb0c[_0x2ec101(0x1b2)]),'type':String(_0x1beb0c[_0x2ec101(0x149)]),'url':String(_0x1beb0c[_0x2ec101(0x145)]),'visible':Boolean(_0x1beb0c[_0x2ec101(0x199)]),'sort':Number(_0x1beb0c[_0x2ec101(0x1bd)]),'extend':{}};}function buildMenuLookupCommand(_0x44f84b){const _0x404820=a117_0x4a8249,_0x10f81e='\x27'+_0x44f84b[_0x404820(0x162)](/'/g,_0x404820(0x147))+'\x27';return _0x404820(0x138)+_0x10f81e+_0x404820(0x15d);}async function recoverAfterResponseLoss(_0x4ae640,_0x35143c,_0x3cc3fe){const _0x9a7bde=a117_0x4a8249,{plan:_0x307b48,snapshot:_0xcb6ac1}=_0x35143c,_0x3080d4=_0x307b48['after'];let _0x59a3d3;try{_0x59a3d3=await fetchMenuSnapshot(_0x4ae640[_0x9a7bde(0x148)],_0x4ae640[_0x9a7bde(0x144)]);}catch(_0x296d4b){throw recoveryRequiredFailure(_0x307b48,_0x3cc3fe,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x32dfbd=_0x59a3d3[_0x9a7bde(0x154)]['filter'](_0x46310f=>_0x46310f['parentId']===_0x3080d4[_0x9a7bde(0x181)]&&_0x46310f[_0x9a7bde(0x149)]===_0x3080d4['type']&&_0x46310f[_0x9a7bde(0x1b2)]===_0x3080d4[_0x9a7bde(0x1b2)]&&_0x46310f[_0x9a7bde(0x145)]===_0x3080d4[_0x9a7bde(0x145)]),_0x909611=_0x32dfbd[_0x9a7bde(0x197)](_0x16987e=>!_0xcb6ac1[_0x9a7bde(0x183)][_0x9a7bde(0x18e)](_0x16987e['id'])),_0x5e1773=_0x32dfbd[_0x9a7bde(0x197)](_0x2a8ea6=>_0xcb6ac1[_0x9a7bde(0x183)]['has'](_0x2a8ea6['id']));if(_0x32dfbd[_0x9a7bde(0x16b)]!==0x1||_0x909611[_0x9a7bde(0x16b)]!==0x1)throw recoveryRequiredFailure(_0x307b48,_0x3cc3fe,{'matchCount':_0x32dfbd[_0x9a7bde(0x16b)],'newMatchCount':_0x909611[_0x9a7bde(0x16b)],'preexistingMatchCount':_0x5e1773['length']});const _0x12e285=_0x909611[0x0];try{verifyCreatedFact(_0x12e285,_0x12e285['id'],_0x3080d4,null);}catch(_0x25caf4){const _0x115532=_0x25caf4 instanceof Error&&_0x9a7bde(0x192)in _0x25caf4?_0x25caf4:menuError(_0x9a7bde(0x17d),_0x9a7bde(0x151)+_0x12e285['id']+_0x9a7bde(0x15e),_0x9a7bde(0x174)+_0x3cc3fe+_0x9a7bde(0x1b5));throw externalLinkCreateFailure(_0x115532,_0x307b48,{'stage':_0x9a7bde(0x185),'succeeded':[{'id':_0x12e285['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x12e285['id'],'finalFactsConfirmed':![]},'after':_0x12e285,'warnings':['Menu\x20'+_0x12e285['id']+_0x9a7bde(0x187)],'verification':{'status':'failed','targetId':_0x12e285['id'],'recovered':!![],'lookupCommand':_0x3cc3fe}});}return creationSuccess(_0x307b48,_0x59a3d3,_0x12e285,!![]);}function a117_0x196f(_0x24a7f5,_0x2705dc){_0x24a7f5=_0x24a7f5-0x138;const _0x629a0e=a117_0x629a();let _0x196f22=_0x629a0e[_0x24a7f5];return _0x196f22;}function recoveryRequiredFailure(_0x6a94ea,_0x5bb49d,_0x3f365f){const _0xe43a86=a117_0x4a8249,_0x513e98=menuError(_0xe43a86(0x13f),_0xe43a86(0x14a),'Run\x20'+_0x5bb49d+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x513e98,_0x6a94ea,{'stage':'create-recovery','failed':_0x3f365f,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0xe43a86(0x16f),..._0x3f365f,'lookupCommand':_0x5bb49d}});}async function readAndVerifyCreatedMenu(_0x11ab9f){const _0x5c94f6=a117_0x4a8249;let _0x27c5c1;try{_0x27c5c1=await fetchMenuSnapshot(_0x11ab9f['appCode'],_0x11ab9f[_0x5c94f6(0x144)]);}catch(_0xf8c77d){const _0x48b558=menuError('menu_verification_failed',_0x5c94f6(0x1ad)+_0x11ab9f[_0x5c94f6(0x1c2)]+_0x5c94f6(0x172),_0x5c94f6(0x174)+_0x11ab9f[_0x5c94f6(0x189)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x48b558,_0x11ab9f[_0x5c94f6(0x1bf)],{'stage':_0x5c94f6(0x185),'succeeded':[{'id':_0x11ab9f['createdId'],'created':!![]}],'failed':{'id':_0x11ab9f[_0x5c94f6(0x1c2)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x11ab9f[_0x5c94f6(0x1bc)],'id':_0x11ab9f[_0x5c94f6(0x1c2)],'path':_0x11ab9f[_0x5c94f6(0x1b7)]},'warnings':[_0x5c94f6(0x1ad)+_0x11ab9f['createdId']+_0x5c94f6(0x13d)],'verification':{'status':_0x5c94f6(0x16f),'targetId':_0x11ab9f[_0x5c94f6(0x1c2)],'lookupCommand':_0x11ab9f[_0x5c94f6(0x189)]}});}const _0x2b6622=_0x27c5c1[_0x5c94f6(0x183)][_0x5c94f6(0x1c3)](_0x11ab9f['createdId']);try{if(!_0x2b6622)throw menuError(_0x5c94f6(0x17d),_0x5c94f6(0x163)+_0x11ab9f[_0x5c94f6(0x1c2)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.','Run\x20'+_0x11ab9f['lookupCommand']+_0x5c94f6(0x193));verifyCreatedFact(_0x2b6622,_0x11ab9f[_0x5c94f6(0x1c2)],_0x11ab9f['afterPlan'],_0x11ab9f[_0x5c94f6(0x1b7)]);}catch(_0x1152ce){const _0x4b4784=_0x1152ce instanceof Error&&_0x5c94f6(0x192)in _0x1152ce?_0x1152ce:menuError('menu_verification_failed',_0x5c94f6(0x163)+_0x11ab9f[_0x5c94f6(0x1c2)]+'\x20failed\x20final\x20verification.',_0x5c94f6(0x174)+_0x11ab9f['lookupCommand']+_0x5c94f6(0x193));throw externalLinkCreateFailure(_0x4b4784,_0x11ab9f['plan'],{'stage':'verification','succeeded':[{'id':_0x11ab9f[_0x5c94f6(0x1c2)],'created':!![]}],'failed':{'id':_0x11ab9f['createdId'],'finalFactsConfirmed':![]},'after':_0x2b6622??{..._0x11ab9f[_0x5c94f6(0x1bc)],'id':_0x11ab9f[_0x5c94f6(0x1c2)],'path':_0x11ab9f['expectedPath']},'warnings':[_0x5c94f6(0x1ad)+_0x11ab9f[_0x5c94f6(0x1c2)]+_0x5c94f6(0x146)],'verification':{'status':_0x5c94f6(0x16f),'targetId':_0x11ab9f['createdId'],'recovered':_0x11ab9f[_0x5c94f6(0x17b)],'lookupCommand':_0x11ab9f[_0x5c94f6(0x189)]}});}return{'snapshot':_0x27c5c1,'fact':_0x2b6622};}function verifyCreatedFact(_0x317fe0,_0x410c76,_0x4bc4c8,_0x575b47){const _0x18db3d=a117_0x4a8249;if(!Number[_0x18db3d(0x1b8)](_0x317fe0['id'])||_0x317fe0['id']<=0x0||_0x317fe0['id']!==_0x410c76)throw menuError(_0x18db3d(0x17d),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x18db3d(0x14d));const _0x5b5dee=[[_0x18db3d(0x139),_0x317fe0[_0x18db3d(0x181)],_0x4bc4c8[_0x18db3d(0x181)]],[_0x18db3d(0x149),_0x317fe0[_0x18db3d(0x149)],_0x4bc4c8[_0x18db3d(0x149)]],['label',_0x317fe0[_0x18db3d(0x1b2)],_0x4bc4c8[_0x18db3d(0x1b2)]],[_0x18db3d(0x17c),_0x317fe0[_0x18db3d(0x145)],_0x4bc4c8['url']],['visibility',_0x317fe0[_0x18db3d(0x199)],_0x4bc4c8[_0x18db3d(0x199)]],['sort',_0x317fe0[_0x18db3d(0x1bd)],_0x4bc4c8['sort']]];for(const [_0x218337,_0x167862,_0x58ef0b]of _0x5b5dee){if(_0x167862!==_0x58ef0b)throw menuError(_0x18db3d(0x17d),_0x18db3d(0x163)+_0x317fe0['id']+_0x18db3d(0x15c)+_0x218337+'.',_0x18db3d(0x14c));}if(!_0x317fe0['path'][_0x18db3d(0x18f)]()||_0x575b47!==null&&_0x317fe0[_0x18db3d(0x1c8)]!==_0x575b47)throw menuError(_0x18db3d(0x17d),_0x18db3d(0x163)+_0x317fe0['id']+_0x18db3d(0x1b6),_0x18db3d(0x14c));}function creationSuccess(_0x42d251,_0x3b3202,_0x145a4c,_0x7cbb6d){const _0x2366cb=a117_0x4a8249,_0x4415a7=mutationResult({..._0x42d251,'after':_0x145a4c,'dryRun':![],'succeeded':[{'id':_0x145a4c['id'],'created':!![],'recovered':_0x7cbb6d}],'verification':{'checkedBy':_0x2366cb(0x1ca),'snapshotHash':_0x3b3202['hash'],'targetId':_0x145a4c['id'],'recovered':_0x7cbb6d,'path':_0x145a4c[_0x2366cb(0x1c8)]}});return{'ok':!![],'message':_0x7cbb6d?_0x2366cb(0x179)+_0x145a4c['id']+_0x2366cb(0x178):'Created\x20external\x20menu\x20'+_0x145a4c['id']+'.','data':{..._0x4415a7,'recovered':_0x7cbb6d}};}function externalLinkCreateFailure(_0x1d0cfa,_0x10770f,_0x1b0d00){const _0x50cd73=a117_0x4a8249;return menuFailure(safeMenuAddError(_0x1d0cfa),redactFailurePlan(_0x10770f),{..._0x1b0d00,'succeeded':_0x1b0d00[_0x50cd73(0x165)]?.[_0x50cd73(0x14e)](redactFailureRecord),'failed':_0x1b0d00[_0x50cd73(0x16f)]?redactFailureRecord(_0x1b0d00['failed']):undefined,'verification':_0x1b0d00['verification']?redactFailureRecord(_0x1b0d00[_0x50cd73(0x185)]):undefined,'after':_0x1b0d00[_0x50cd73(0x15b)]===undefined?undefined:redactFailureValue(_0x1b0d00['after'])});}function a117_0x629a(){const _0x58662f=['Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','hash','Would\x20create\x20external\x20website\x20link\x20menu\x20','rawFlags','bool','password','after','\x20has\x20an\x20unexpected\x20','\x20--format\x20compress','\x20could\x20not\x20be\x20verified.','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','cause','menu_url_credentials_forbidden','replace','Created\x20menu\x20','pre-write-recheck','succeeded','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','embedded','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','flagMissing','POST','length','https:','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','includes','failed','create-menu','object','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','\x20with\x20','Run\x20','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Create\x20an\x20external\x20website\x20link\x20menu','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','\x20after\x20response\x20loss.','Recovered\x20created\x20external\x20menu\x20','open-mode','recovered','URL','menu_verification_failed','currentSnapshotHash','boolean','10rLnUjW','parentId','entries','byId','<platform-generated>','verification','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','How\x20to\x20open\x20the\x20external\x20website','lookupCommand','selector','menu_create_response_invalid','menu_parent_not_folder','hasOwnProperty','has','trim','before','8ZMcWZR','code','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','isArray','2076585BOIgLC','data','filter','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','visible','call','rawerror','891778RooNpt','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','create-response-validation','readbackerror','expectedSnapshotHash','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu_url_invalid','Whether\x20the\x20menu\x20is\x20visible','string','menu_mutation_failed','create\x20external\x20menu','menu','plannedActions','str','menu_permission_denied','snapshot','Menu\x20','External\x20HTTPS\x20URL','805410soZKRc','menu_url_https_required','External\x20menu\x20creation\x20failed.','label','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','/smartapi/menu/create','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','\x20has\x20an\x20unexpected\x20generated\x20path.','expectedPath','isSafeInteger','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','body','create','afterPlan','sort','4bKqyEb','plan','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','new-window','createdId','get','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','fromEntries','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','add','path','parent-id','menu\x20list','menu_sort_invalid','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','rabetbase\x20menu\x20list\x20--appcode\x20','parent','stringify','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','2533797cIrSAH','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','iframe','menu_create_recovery_required','1352274atOLCa','causemessage','menu_sort_overflow','menu_state_drift','cookie','url','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','\x27\x5c\x27\x27','appCode','type','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','1252107UNXJSe','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','map','write','5316913ggwfAd','Recovered\x20menu\x20','menu_not_found','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','menus'];a117_0x629a=function(){return _0x58662f;};return a117_0x629a();}function redactFailurePlan(_0x1418a2){const _0x66aef4=a117_0x4a8249;return{..._0x1418a2,'selector':redactFailureRecord(_0x1418a2[_0x66aef4(0x18a)]),'before':redactFailureValue(_0x1418a2[_0x66aef4(0x190)]),'after':redactFailureValue(_0x1418a2[_0x66aef4(0x15b)]),'plannedActions':_0x1418a2[_0x66aef4(0x1a9)]?.['map'](_0x1b2ad2=>({..._0x1b2ad2,'body':redactFailureRecord(_0x1b2ad2[_0x66aef4(0x1ba)])})),'succeeded':_0x1418a2[_0x66aef4(0x165)]['map'](redactFailureRecord),'failed':_0x1418a2[_0x66aef4(0x16f)][_0x66aef4(0x14e)](redactFailureRecord),'verification':_0x1418a2[_0x66aef4(0x185)]?redactFailureRecord(_0x1418a2[_0x66aef4(0x185)]):undefined};}function redactFailureRecord(_0x5c52c4){return redactFailureValue(_0x5c52c4);}function redactFailureValue(_0x29fccc,_0x38d0c3=''){const _0x28324e=a117_0x4a8249,_0x55dcb7=_0x38d0c3['toLowerCase']()[_0x28324e(0x162)](/[^a-z0-9]/g,'');if([_0x28324e(0x160),_0x28324e(0x141),_0x28324e(0x19f),_0x28324e(0x19b)][_0x28324e(0x16e)](_0x55dcb7))return'<redacted>';if(Array[_0x28324e(0x194)](_0x29fccc))return _0x29fccc['map'](_0x4d2b60=>redactFailureValue(_0x4d2b60));if(_0x29fccc&&typeof _0x29fccc===_0x28324e(0x171))return Object[_0x28324e(0x1c5)](Object[_0x28324e(0x182)](_0x29fccc)[_0x28324e(0x14e)](([_0x2b6500,_0x30baa])=>[_0x2b6500,redactFailureValue(_0x30baa,_0x2b6500)]));return _0x29fccc;}function safeMenuAddError(_0x294df6){const _0x422ffa=a117_0x4a8249,_0x31bbc3=_0x294df6 instanceof CliError?_0x294df6[_0x422ffa(0x192)]:_0x422ffa(0x1a6);switch(_0x31bbc3){case _0x422ffa(0x143):return menuError(_0x31bbc3,_0x422ffa(0x1b3),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.');case _0x422ffa(0x1ab):return menuError(_0x31bbc3,_0x422ffa(0x198),_0x422ffa(0x13b));case _0x422ffa(0x18b):return menuError(_0x31bbc3,_0x422ffa(0x19d),_0x422ffa(0x153));case _0x422ffa(0x17d):return menuError(_0x31bbc3,_0x422ffa(0x168),_0x422ffa(0x153));case _0x422ffa(0x13f):return menuError(_0x31bbc3,_0x422ffa(0x175),_0x422ffa(0x155));case _0x422ffa(0x1a6):case _0x422ffa(0x152):case _0x422ffa(0x18c):case _0x422ffa(0x1cb):case _0x422ffa(0x142):return menuError(_0x31bbc3,_0x422ffa(0x1b1),_0x422ffa(0x1a2));default:return menuError(_0x422ffa(0x1a6),'External\x20menu\x20creation\x20failed.',_0x422ffa(0x1a2));}}function getFailureRecord(_0x146afb){const _0xd14e6e=a117_0x4a8249;if(!(_0x146afb instanceof Error)||!(_0xd14e6e(0x196)in _0x146afb))return undefined;const _0x51db8b=_0x146afb[_0xd14e6e(0x196)];if(!_0x51db8b||typeof _0x51db8b!==_0xd14e6e(0x171))return undefined;const _0x225485=_0x51db8b[_0xd14e6e(0x16f)];if(!Array[_0xd14e6e(0x194)](_0x225485)||!_0x225485[0x0]||typeof _0x225485[0x0]!=='object')return undefined;return _0x225485[0x0];}
1
+ const a117_0x55c55c=a117_0x2870;(function(_0x2fa903,_0x48fbcd){const _0x46eb46=a117_0x2870,_0x2e6e8d=_0x2fa903();while(!![]){try{const _0xa4b914=parseInt(_0x46eb46(0x179))/0x1+-parseInt(_0x46eb46(0x186))/0x2*(parseInt(_0x46eb46(0x1b4))/0x3)+parseInt(_0x46eb46(0x19f))/0x4+-parseInt(_0x46eb46(0x1cf))/0x5*(-parseInt(_0x46eb46(0x1e9))/0x6)+parseInt(_0x46eb46(0x1d8))/0x7*(-parseInt(_0x46eb46(0x17a))/0x8)+-parseInt(_0x46eb46(0x1c8))/0x9*(parseInt(_0x46eb46(0x197))/0xa)+parseInt(_0x46eb46(0x191))/0xb*(parseInt(_0x46eb46(0x170))/0xc);if(_0xa4b914===_0x48fbcd)break;else _0x2e6e8d['push'](_0x2e6e8d['shift']());}catch(_0x2cb7fa){_0x2e6e8d['push'](_0x2e6e8d['shift']());}}}(a117_0xc7cc,0x240fb));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_0x2870(_0x23cb9f,_0x28f6ce){_0x23cb9f=_0x23cb9f-0x15e;const _0xc7cc74=a117_0xc7cc();let _0x287022=_0xc7cc74[_0x23cb9f];return _0x287022;}import{CliError,CliErrors}from'../../errors.js';function a117_0xc7cc(){const _0x5c9439=['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','menu_state_drift','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','/smartapi/menu/create','type','menu_sort_overflow','lookupCommand','menu_create_recovery_required','sort','rawFlags','fact','succeeded','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','36ZvPOTQ','isSafeInteger','byId','menu_permission_denied','createdId','parent-id','\x20has\x20an\x20unexpected\x20generated\x20path.','appCode','rabetbase\x20menu\x20list\x20--appcode\x20','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','POST','Menu\x20','<redacted>','length','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','map','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','URL','120RoIWAP','after','create-response-validation','verification','Recovered\x20menu\x20','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Provide\x20an\x20HTTPS\x20URL.','body','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','102195HavAZE','263408ZULHpX','boolean','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','prototype','\x27\x5c\x27\x27','string','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','parent','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','replace','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','8rdpNnv','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','selector','plan','menu_create_response_invalid','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','has','expectedSnapshotHash','menu','\x20after\x20response\x20loss.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','60269RmtpHw','menu_verification_failed','https:','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','call','\x20could\x20not\x20be\x20verified.','20ldvNBq','iframe','failed','menu_open_mode_invalid','trim','\x20with\x20','afterPlan','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','845184TrCfSm','cookie','menu_url_credentials_forbidden','filter','Whether\x20the\x20menu\x20is\x20visible','includes','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','Run\x20','toLowerCase','parentId','cause','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','hasOwnProperty','add','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','protocol','expectedPath','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','visibility','Recovered\x20created\x20external\x20menu\x20','currentSnapshotHash','70971KVoZJE','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','get','\x20--format\x20compress','\x20has\x20an\x20unexpected\x20','External\x20HTTPS\x20URL','str','snapshot','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','entries','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','open-mode','new-window','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','Created\x20menu\x20','<platform-generated>','menu_mutation_failed','create-recovery','url','805716pMlYzR','menus','hash','data','stringify','code','isArray','71690vHCrIU','flagMissing','pre-write-recheck','object','path','before','label','visible','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','7ijbsZP','causemessage','write'];a117_0xc7cc=function(){return _0x5c9439;};return a117_0xc7cc();}const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a117_0x55c55c(0x198),'new-window':'link'};export function validateExternalMenuUrl(_0x88c81a){const _0x56a15b=a117_0x55c55c,_0x495ac3=_0x88c81a['trim']();let _0x394c26;try{_0x394c26=new URL(_0x495ac3);}catch{throw menuError('menu_url_invalid',_0x56a15b(0x17c),_0x56a15b(0x194));}if(_0x394c26[_0x56a15b(0x1ae)]!==_0x56a15b(0x193))throw menuError('menu_url_https_required','External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0x56a15b(0x176));if(_0x394c26['username']||_0x394c26['password'])throw menuError(_0x56a15b(0x1a1),_0x56a15b(0x1bf),_0x56a15b(0x1de));return _0x495ac3;}export const menuExternalLinkCreate={'service':a117_0x55c55c(0x18e),'command':'external-link-create','description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':a117_0x55c55c(0x1da),'structuredErrors':!![],'flags':[{'name':a117_0x55c55c(0x1d5),'type':a117_0x55c55c(0x17f),'required':!![],'description':'Menu\x20label'},{'name':a117_0x55c55c(0x1c0),'type':a117_0x55c55c(0x17f),'required':!![],'enum':['embedded',a117_0x55c55c(0x1c1)],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a117_0x55c55c(0x1c7),'type':'string','required':!![],'description':a117_0x55c55c(0x1ba)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a117_0x55c55c(0x1d6),'type':a117_0x55c55c(0x17b),'default':!![],'description':a117_0x55c55c(0x1a3)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4286a4){validateAddInput(_0x4286a4);},async 'dryRun'(_0x4d1f2d){const _0x56766a=a117_0x55c55c;validateAddInput(_0x4d1f2d);const {plan:_0x3e2b8d}=await buildSafeAddPlan(_0x4d1f2d,!![]),_0x4efc8e=_0x3e2b8d['after'],_0x330841=createBody(_0x4efc8e);return menuDryRunResult(_0x3e2b8d,{'method':_0x56766a(0x167),'url':_0x56766a(0x1df),'body':_0x330841,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON[_0x56766a(0x1cc)](_0x4efc8e[_0x56766a(0x1d5)])+_0x56766a(0x19c)+_0x4d1f2d[_0x56766a(0x1bb)](_0x56766a(0x1c0))+_0x56766a(0x1b5)});},async 'execute'(_0x453060){const _0x2b1216=a117_0x55c55c;validateAddInput(_0x453060);const _0x174b7e=await buildSafeAddPlan(_0x453060,![]),{plan:_0x51a1c6,snapshot:_0x27a32b}=_0x174b7e,_0x28287e=_0x51a1c6[_0x2b1216(0x171)],_0x337f9f=buildMenuLookupCommand(_0x453060['appCode']);await recheckAddSnapshot(_0x453060,_0x51a1c6);let _0x15acb2;try{_0x15acb2=await createMenuEntity(_0x453060[_0x2b1216(0x164)],_0x453060[_0x2b1216(0x1a0)],createBody(_0x28287e));}catch(_0x265ed2){const _0x575eb5=mapMenuApiError(_0x265ed2,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x265ed2)||_0x575eb5['code']===_0x2b1216(0x160))throw externalLinkCreateFailure(_0x575eb5,_0x51a1c6,{'stage':'create','failed':{},'verification':{'status':_0x2b1216(0x199),'lookupCommand':_0x337f9f}});return recoverAfterResponseLoss(_0x453060,_0x174b7e,_0x337f9f);}const _0xc01748=Number(_0x15acb2?.['id']),_0x4c434c=typeof _0x15acb2?.['path']===_0x2b1216(0x17f)?_0x15acb2[_0x2b1216(0x1d3)]:'';if(!Number[_0x2b1216(0x15e)](_0xc01748)||_0xc01748<=0x0||!_0x4c434c[_0x2b1216(0x19b)]()){const _0x1e65af=menuError(_0x2b1216(0x18a),_0x2b1216(0x18b),_0x2b1216(0x1a6)+_0x337f9f+_0x2b1216(0x16b));throw externalLinkCreateFailure(_0x1e65af,_0x51a1c6,{'stage':_0x2b1216(0x172),'succeeded':Number[_0x2b1216(0x15e)](_0xc01748)&&_0xc01748>0x0?[{'id':_0xc01748,'created':!![]}]:[],'failed':{'createdId':Number[_0x2b1216(0x15e)](_0xc01748)?_0xc01748:null,'generatedPathConfirmed':Boolean(_0x4c434c[_0x2b1216(0x19b)]())},'warnings':[_0x2b1216(0x1c2)],'after':Number[_0x2b1216(0x15e)](_0xc01748)&&_0xc01748>0x0?{..._0x28287e,'id':_0xc01748,'path':_0x4c434c}:_0x28287e,'verification':{'status':_0x2b1216(0x199),'lookupCommand':_0x337f9f,...Number['isSafeInteger'](_0xc01748)&&_0xc01748>0x0?{'targetId':_0xc01748}:{}}});}const _0x4e04bc=await readAndVerifyCreatedMenu({'appCode':_0x453060[_0x2b1216(0x164)],'cookie':_0x453060[_0x2b1216(0x1a0)],'plan':_0x51a1c6,'afterPlan':_0x28287e,'createdId':_0xc01748,'expectedPath':_0x4c434c,'lookupCommand':_0x337f9f,'recovered':![]});return creationSuccess(_0x51a1c6,_0x4e04bc[_0x2b1216(0x1bc)],_0x4e04bc[_0x2b1216(0x1e6)],![]);}};function validateAddInput(_0x51ebcb){const _0x96f3e6=a117_0x55c55c;if(!_0x51ebcb[_0x96f3e6(0x1bb)](_0x96f3e6(0x1d5))[_0x96f3e6(0x19b)]())throw CliErrors[_0x96f3e6(0x1d0)]('label');resolveExternalMenuType(_0x51ebcb),validateExternalMenuUrl(_0x51ebcb[_0x96f3e6(0x1bb)]('url')),parseParentId(_0x51ebcb,_0x96f3e6(0x162)),validateSort(_0x51ebcb);}function resolveExternalMenuType(_0x444c5b){const _0x2bc8cd=a117_0x55c55c,_0x238251=_0x444c5b[_0x2bc8cd(0x1bb)](_0x2bc8cd(0x1c0))[_0x2bc8cd(0x19b)]();if(!_0x238251)throw CliErrors[_0x2bc8cd(0x1d0)](_0x2bc8cd(0x1c0));const _0x4745e9=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x238251];if(!_0x4745e9)throw menuError(_0x2bc8cd(0x19a),_0x2bc8cd(0x1e8),_0x2bc8cd(0x175));return _0x4745e9;}async function buildAddPlan(_0x9b07ec,_0x57d267){const _0x36ca4f=a117_0x55c55c,_0x4f1ae1=await fetchMutationSnapshot(_0x9b07ec,'create\x20external\x20menu'),_0x440654=parseParentId(_0x9b07ec,'parent-id')??null;if(_0x440654!=null)requireFolder(_0x4f1ae1,_0x440654);const _0x32688e=validateSort(_0x9b07ec),_0x25444b=_0x32688e??nextSiblingSort(_0x4f1ae1,_0x440654,_0x36ca4f(0x18e)),_0x22e50d=_0x9b07ec[_0x36ca4f(0x1bb)](_0x36ca4f(0x1d5))[_0x36ca4f(0x19b)](),_0x534e2b=resolveExternalMenuType(_0x9b07ec),_0x3ee704=validateExternalMenuUrl(_0x9b07ec['str'](_0x36ca4f(0x1c7))),_0x30fd17=Object[_0x36ca4f(0x17d)][_0x36ca4f(0x1ab)][_0x36ca4f(0x195)](_0x9b07ec[_0x36ca4f(0x1e5)],_0x36ca4f(0x1d6))?_0x9b07ec['bool'](_0x36ca4f(0x1d6)):!![],_0x1f941b={'id':null,'parentId':_0x440654,'label':_0x22e50d,'path':_0x36ca4f(0x1c4),'url':_0x3ee704,'type':_0x534e2b,'visible':_0x30fd17,'sort':_0x25444b},_0x28d614=buildMenuLookupCommand(_0x9b07ec['appCode']),_0x2f4ee1=mutationResult({'operation':_0x36ca4f(0x1ac),'selector':{'parentId':_0x440654,'type':_0x534e2b,'label':_0x22e50d,'url':_0x3ee704},'before':null,'after':_0x1f941b,'dryRun':_0x57d267,'backend':[{'method':_0x36ca4f(0x167),'path':'/smartapi/menu/create'}],'plannedActions':[{'stage':'create-menu','method':_0x36ca4f(0x167),'path':'/smartapi/menu/create','body':createBody(_0x1f941b)}],'snapshotHash':_0x4f1ae1['hash'],'warnings':[_0x36ca4f(0x178)],'verification':{'lookupCommand':_0x28d614}});return{'plan':_0x2f4ee1,'snapshot':_0x4f1ae1};}async function buildSafeAddPlan(_0x20e5f5,_0x5b484d){try{return await buildAddPlan(_0x20e5f5,_0x5b484d);}catch(_0x4049ae){throw safeMenuAddError(_0x4049ae);}}async function recheckAddSnapshot(_0x5898fb,_0x178092){const _0x45684a=a117_0x55c55c;try{await recheckMutationSnapshot(_0x5898fb,_0x178092,'create\x20external\x20menu');}catch(_0x37a19f){const _0x505675=getFailureRecord(_0x37a19f);throw externalLinkCreateFailure(_0x37a19f,_0x178092,{'stage':_0x45684a(0x1d1),'failed':{..._0x505675?.[_0x45684a(0x18d)]?{'expectedSnapshotHash':_0x505675[_0x45684a(0x18d)]}:{},..._0x505675?.[_0x45684a(0x1b3)]?{'currentSnapshotHash':_0x505675[_0x45684a(0x1b3)]}:{}}});}}function createBody(_0x3ff3b9){const _0x2b9459=a117_0x55c55c;return{'parentId':toApiParentId(_0x3ff3b9[_0x2b9459(0x1a8)]),'label':String(_0x3ff3b9['label']),'type':String(_0x3ff3b9[_0x2b9459(0x1e0)]),'url':String(_0x3ff3b9['url']),'visible':Boolean(_0x3ff3b9[_0x2b9459(0x1d6)]),'sort':Number(_0x3ff3b9['sort']),'extend':{}};}function buildMenuLookupCommand(_0x580246){const _0x425d86=a117_0x55c55c,_0x581ec8='\x27'+_0x580246[_0x425d86(0x184)](/'/g,_0x425d86(0x17e))+'\x27';return _0x425d86(0x165)+_0x581ec8+_0x425d86(0x1b8);}async function recoverAfterResponseLoss(_0x4c0cad,_0x242f89,_0xb3f985){const _0x103d69=a117_0x55c55c,{plan:_0x11958f,snapshot:_0x225375}=_0x242f89,_0x4c3f9e=_0x11958f[_0x103d69(0x171)];let _0x10017c;try{_0x10017c=await fetchMenuSnapshot(_0x4c0cad['appCode'],_0x4c0cad[_0x103d69(0x1a0)]);}catch(_0xaa40b1){throw recoveryRequiredFailure(_0x11958f,_0xb3f985,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x4fd686=_0x10017c[_0x103d69(0x1c9)][_0x103d69(0x1a2)](_0x1ab0ff=>_0x1ab0ff[_0x103d69(0x1a8)]===_0x4c3f9e[_0x103d69(0x1a8)]&&_0x1ab0ff[_0x103d69(0x1e0)]===_0x4c3f9e[_0x103d69(0x1e0)]&&_0x1ab0ff[_0x103d69(0x1d5)]===_0x4c3f9e[_0x103d69(0x1d5)]&&_0x1ab0ff['url']===_0x4c3f9e[_0x103d69(0x1c7)]),_0x590d20=_0x4fd686[_0x103d69(0x1a2)](_0x13096e=>!_0x225375[_0x103d69(0x15f)]['has'](_0x13096e['id'])),_0x4cbb59=_0x4fd686[_0x103d69(0x1a2)](_0x1b158c=>_0x225375[_0x103d69(0x15f)][_0x103d69(0x18c)](_0x1b158c['id']));if(_0x4fd686[_0x103d69(0x16a)]!==0x1||_0x590d20[_0x103d69(0x16a)]!==0x1)throw recoveryRequiredFailure(_0x11958f,_0xb3f985,{'matchCount':_0x4fd686[_0x103d69(0x16a)],'newMatchCount':_0x590d20['length'],'preexistingMatchCount':_0x4cbb59[_0x103d69(0x16a)]});const _0x5c5d4e=_0x590d20[0x0];try{verifyCreatedFact(_0x5c5d4e,_0x5c5d4e['id'],_0x4c3f9e,null);}catch(_0x3ac540){const _0xeafc0f=_0x3ac540 instanceof Error&&_0x103d69(0x1cd)in _0x3ac540?_0x3ac540:menuError(_0x103d69(0x192),_0x103d69(0x174)+_0x5c5d4e['id']+_0x103d69(0x196),_0x103d69(0x1a6)+_0xb3f985+_0x103d69(0x16e));throw externalLinkCreateFailure(_0xeafc0f,_0x11958f,{'stage':_0x103d69(0x173),'succeeded':[{'id':_0x5c5d4e['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x5c5d4e['id'],'finalFactsConfirmed':![]},'after':_0x5c5d4e,'warnings':['Menu\x20'+_0x5c5d4e['id']+_0x103d69(0x1a5)],'verification':{'status':'failed','targetId':_0x5c5d4e['id'],'recovered':!![],'lookupCommand':_0xb3f985}});}return creationSuccess(_0x11958f,_0x10017c,_0x5c5d4e,!![]);}function recoveryRequiredFailure(_0x42c053,_0x403898,_0x36a977){const _0x3a9e58=a117_0x55c55c,_0x3c7db1=menuError('menu_create_recovery_required','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Run\x20'+_0x403898+_0x3a9e58(0x1bd));return externalLinkCreateFailure(_0x3c7db1,_0x42c053,{'stage':_0x3a9e58(0x1c6),'failed':_0x36a977,'warnings':[_0x3a9e58(0x1db)],'verification':{'status':_0x3a9e58(0x199),..._0x36a977,'lookupCommand':_0x403898}});}async function readAndVerifyCreatedMenu(_0x1f575b){const _0x4f5ba4=a117_0x55c55c;let _0x121e9e;try{_0x121e9e=await fetchMenuSnapshot(_0x1f575b[_0x4f5ba4(0x164)],_0x1f575b[_0x4f5ba4(0x1a0)]);}catch(_0x561e4b){const _0xa1efb8=menuError(_0x4f5ba4(0x192),_0x4f5ba4(0x168)+_0x1f575b['createdId']+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x4f5ba4(0x1a6)+_0x1f575b['lookupCommand']+_0x4f5ba4(0x1dc));throw externalLinkCreateFailure(_0xa1efb8,_0x1f575b[_0x4f5ba4(0x189)],{'stage':_0x4f5ba4(0x173),'succeeded':[{'id':_0x1f575b[_0x4f5ba4(0x161)],'created':!![]}],'failed':{'id':_0x1f575b[_0x4f5ba4(0x161)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x1f575b['afterPlan'],'id':_0x1f575b[_0x4f5ba4(0x161)],'path':_0x1f575b[_0x4f5ba4(0x1af)]},'warnings':[_0x4f5ba4(0x168)+_0x1f575b[_0x4f5ba4(0x161)]+_0x4f5ba4(0x182)],'verification':{'status':_0x4f5ba4(0x199),'targetId':_0x1f575b[_0x4f5ba4(0x161)],'lookupCommand':_0x1f575b[_0x4f5ba4(0x1e2)]}});}const _0x117ae3=_0x121e9e['byId'][_0x4f5ba4(0x1b7)](_0x1f575b[_0x4f5ba4(0x161)]);try{if(!_0x117ae3)throw menuError(_0x4f5ba4(0x192),_0x4f5ba4(0x1c3)+_0x1f575b[_0x4f5ba4(0x161)]+_0x4f5ba4(0x166),'Run\x20'+_0x1f575b[_0x4f5ba4(0x1e2)]+_0x4f5ba4(0x1dc));verifyCreatedFact(_0x117ae3,_0x1f575b['createdId'],_0x1f575b[_0x4f5ba4(0x19d)],_0x1f575b['expectedPath']);}catch(_0x37ea82){const _0x5779b1=_0x37ea82 instanceof Error&&_0x4f5ba4(0x1cd)in _0x37ea82?_0x37ea82:menuError(_0x4f5ba4(0x192),_0x4f5ba4(0x1c3)+_0x1f575b[_0x4f5ba4(0x161)]+'\x20failed\x20final\x20verification.',_0x4f5ba4(0x1a6)+_0x1f575b[_0x4f5ba4(0x1e2)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x5779b1,_0x1f575b[_0x4f5ba4(0x189)],{'stage':_0x4f5ba4(0x173),'succeeded':[{'id':_0x1f575b[_0x4f5ba4(0x161)],'created':!![]}],'failed':{'id':_0x1f575b['createdId'],'finalFactsConfirmed':![]},'after':_0x117ae3??{..._0x1f575b['afterPlan'],'id':_0x1f575b[_0x4f5ba4(0x161)],'path':_0x1f575b[_0x4f5ba4(0x1af)]},'warnings':[_0x4f5ba4(0x168)+_0x1f575b[_0x4f5ba4(0x161)]+_0x4f5ba4(0x1aa)],'verification':{'status':_0x4f5ba4(0x199),'targetId':_0x1f575b[_0x4f5ba4(0x161)],'recovered':_0x1f575b['recovered'],'lookupCommand':_0x1f575b[_0x4f5ba4(0x1e2)]}});}return{'snapshot':_0x121e9e,'fact':_0x117ae3};}function verifyCreatedFact(_0x5bf18d,_0x294c04,_0x3c0525,_0x281f5b){const _0x571fcc=a117_0x55c55c;if(!Number['isSafeInteger'](_0x5bf18d['id'])||_0x5bf18d['id']<=0x0||_0x5bf18d['id']!==_0x294c04)throw menuError(_0x571fcc(0x192),_0x571fcc(0x1ad),_0x571fcc(0x187));const _0x23da1b=[[_0x571fcc(0x181),_0x5bf18d[_0x571fcc(0x1a8)],_0x3c0525[_0x571fcc(0x1a8)]],['type',_0x5bf18d['type'],_0x3c0525['type']],[_0x571fcc(0x1d5),_0x5bf18d[_0x571fcc(0x1d5)],_0x3c0525[_0x571fcc(0x1d5)]],[_0x571fcc(0x16f),_0x5bf18d[_0x571fcc(0x1c7)],_0x3c0525[_0x571fcc(0x1c7)]],[_0x571fcc(0x1b1),_0x5bf18d[_0x571fcc(0x1d6)],_0x3c0525[_0x571fcc(0x1d6)]],[_0x571fcc(0x1e4),_0x5bf18d[_0x571fcc(0x1e4)],_0x3c0525[_0x571fcc(0x1e4)]]];for(const [_0x2d9afe,_0x358758,_0x44cb5e]of _0x23da1b){if(_0x358758!==_0x44cb5e)throw menuError(_0x571fcc(0x192),_0x571fcc(0x1c3)+_0x5bf18d['id']+_0x571fcc(0x1b9)+_0x2d9afe+'.',_0x571fcc(0x180));}if(!_0x5bf18d[_0x571fcc(0x1d3)]['trim']()||_0x281f5b!==null&&_0x5bf18d[_0x571fcc(0x1d3)]!==_0x281f5b)throw menuError(_0x571fcc(0x192),_0x571fcc(0x1c3)+_0x5bf18d['id']+_0x571fcc(0x163),_0x571fcc(0x180));}function creationSuccess(_0x58a7a5,_0x411649,_0x342737,_0x589590){const _0x330885=a117_0x55c55c,_0x5ec9b2=mutationResult({..._0x58a7a5,'after':_0x342737,'dryRun':![],'succeeded':[{'id':_0x342737['id'],'created':!![],'recovered':_0x589590}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x411649[_0x330885(0x1ca)],'targetId':_0x342737['id'],'recovered':_0x589590,'path':_0x342737[_0x330885(0x1d3)]}});return{'ok':!![],'message':_0x589590?_0x330885(0x1b2)+_0x342737['id']+_0x330885(0x18f):'Created\x20external\x20menu\x20'+_0x342737['id']+'.','data':{..._0x5ec9b2,'recovered':_0x589590}};}function externalLinkCreateFailure(_0x135477,_0x235590,_0x4e42fd){const _0x3e2948=a117_0x55c55c;return menuFailure(safeMenuAddError(_0x135477),redactFailurePlan(_0x235590),{..._0x4e42fd,'succeeded':_0x4e42fd['succeeded']?.[_0x3e2948(0x16d)](redactFailureRecord),'failed':_0x4e42fd['failed']?redactFailureRecord(_0x4e42fd['failed']):undefined,'verification':_0x4e42fd[_0x3e2948(0x173)]?redactFailureRecord(_0x4e42fd['verification']):undefined,'after':_0x4e42fd[_0x3e2948(0x171)]===undefined?undefined:redactFailureValue(_0x4e42fd[_0x3e2948(0x171)])});}function redactFailurePlan(_0x5d7a82){const _0x342dee=a117_0x55c55c;return{..._0x5d7a82,'selector':redactFailureRecord(_0x5d7a82[_0x342dee(0x188)]),'before':redactFailureValue(_0x5d7a82[_0x342dee(0x1d4)]),'after':redactFailureValue(_0x5d7a82[_0x342dee(0x171)]),'plannedActions':_0x5d7a82['plannedActions']?.['map'](_0x54aa09=>({..._0x54aa09,'body':redactFailureRecord(_0x54aa09[_0x342dee(0x177)])})),'succeeded':_0x5d7a82[_0x342dee(0x1e7)][_0x342dee(0x16d)](redactFailureRecord),'failed':_0x5d7a82[_0x342dee(0x199)][_0x342dee(0x16d)](redactFailureRecord),'verification':_0x5d7a82[_0x342dee(0x173)]?redactFailureRecord(_0x5d7a82[_0x342dee(0x173)]):undefined};}function redactFailureRecord(_0x2f227f){return redactFailureValue(_0x2f227f);}function redactFailureValue(_0x5a2ebf,_0x1f535d=''){const _0x531e16=a117_0x55c55c,_0x364d4b=_0x1f535d[_0x531e16(0x1a7)]()[_0x531e16(0x184)](/[^a-z0-9]/g,'');if([_0x531e16(0x1a9),_0x531e16(0x1d9),'readbackerror','rawerror'][_0x531e16(0x1a4)](_0x364d4b))return _0x531e16(0x169);if(Array[_0x531e16(0x1ce)](_0x5a2ebf))return _0x5a2ebf[_0x531e16(0x16d)](_0x2e0628=>redactFailureValue(_0x2e0628));if(_0x5a2ebf&&typeof _0x5a2ebf===_0x531e16(0x1d2))return Object['fromEntries'](Object[_0x531e16(0x1be)](_0x5a2ebf)['map'](([_0x46c0f0,_0x1c0fc0])=>[_0x46c0f0,redactFailureValue(_0x1c0fc0,_0x46c0f0)]));return _0x5a2ebf;}function safeMenuAddError(_0x174af2){const _0x4cccab=a117_0x55c55c,_0x559162=_0x174af2 instanceof CliError?_0x174af2[_0x4cccab(0x1cd)]:'menu_mutation_failed';switch(_0x559162){case _0x4cccab(0x1dd):return menuError(_0x559162,'Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.',_0x4cccab(0x190));case _0x4cccab(0x160):return menuError(_0x559162,_0x4cccab(0x1b6),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x4cccab(0x18a):return menuError(_0x559162,_0x4cccab(0x16c),_0x4cccab(0x1d7));case'menu_verification_failed':return menuError(_0x559162,_0x4cccab(0x1b0),_0x4cccab(0x1d7));case _0x4cccab(0x1e3):return menuError(_0x559162,_0x4cccab(0x185),_0x4cccab(0x183));case _0x4cccab(0x1c5):case'menu_not_found':case'menu_parent_not_folder':case'menu_sort_invalid':case _0x4cccab(0x1e1):return menuError(_0x559162,'External\x20menu\x20creation\x20failed.',_0x4cccab(0x19e));default:return menuError(_0x4cccab(0x1c5),'External\x20menu\x20creation\x20failed.',_0x4cccab(0x19e));}}function getFailureRecord(_0x2c0fd4){const _0x293726=a117_0x55c55c;if(!(_0x2c0fd4 instanceof Error)||!(_0x293726(0x1cb)in _0x2c0fd4))return undefined;const _0x3a5b7d=_0x2c0fd4['data'];if(!_0x3a5b7d||typeof _0x3a5b7d!==_0x293726(0x1d2))return undefined;const _0x509956=_0x3a5b7d['failed'];if(!Array[_0x293726(0x1ce)](_0x509956)||!_0x509956[0x0]||typeof _0x509956[0x0]!==_0x293726(0x1d2))return undefined;return _0x509956[0x0];}
@@ -1 +1 @@
1
- const a118_0x3d8639=a118_0x2e1c;(function(_0x11bd7b,_0x4c7273){const _0x1262ca=a118_0x2e1c,_0x5c8270=_0x11bd7b();while(!![]){try{const _0x51ea12=parseInt(_0x1262ca(0x17e))/0x1+parseInt(_0x1262ca(0x184))/0x2+parseInt(_0x1262ca(0x17d))/0x3*(parseInt(_0x1262ca(0x1c4))/0x4)+parseInt(_0x1262ca(0x1a7))/0x5+parseInt(_0x1262ca(0x1ba))/0x6+-parseInt(_0x1262ca(0x1c9))/0x7*(-parseInt(_0x1262ca(0x1b6))/0x8)+-parseInt(_0x1262ca(0x1ae))/0x9;if(_0x51ea12===_0x4c7273)break;else _0x5c8270['push'](_0x5c8270['shift']());}catch(_0x2f748a){_0x5c8270['push'](_0x5c8270['shift']());}}}(a118_0x13e3,0xd93b4));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';function a118_0x13e3(){const _0x85dd0c=['21vzWVeP','1667221YFhyvY','menu_external_link_type_required','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','plan','label','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','2102128fysHTU','iframe','hash','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','string','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','\x20direct\x20child\x20menu(s).','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','unknown','body','trim','code','external-link-update','after','flagMissing','Menu\x20','update\x20external\x20menu\x20URL','\x20has\x20an\x20empty\x20platform\x20path.','failed','\x20--format\x20compress','parentId','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','menu_state_drift','menu_external_link_not_leaf','Update\x20request\x20for\x20menu\x20','expect-url','\x20parent\x20changed:\x20expected\x20','path','cookie','\x20has\x20','update-recovery','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','childrenCount','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','4337250MscyYm','\x20is\x20type\x20\x22','\x20already\x20matches\x20the\x20requested\x20URL.','menu\x20list',',\x20current\x20','str','menu_external_link_path_missing','40290408dSRzWj','readbackFailed','byId','\x20URL\x20update\x20did\x20not\x20take\x20effect.','verify\x20external\x20menu\x20URL\x20update','sort','menu','rabetbase\x20menu\x20list\x20--appcode\x20','1514256crIqmT','visible','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','url','4497384kKVoXf','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','\x27\x5c\x27\x27','/smartapi/menu/update','verification','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','link','POST','type','update','481092FJtPWm','expect-parent-id','appCode','Run\x20','Updated\x20external\x20URL\x20for\x20menu\x20','7UiGIfz','snapshot','get','\x22,\x20not\x20iframe\x20or\x20link.','\x20changed\x20during\x20the\x20URL-only\x20update.','requestedUrlObserved','update-external-link-url'];a118_0x13e3=function(){return _0x85dd0c;};return a118_0x13e3();}function a118_0x2e1c(_0x1b7472,_0xadf361){_0x1b7472=_0x1b7472-0x178;const _0x13e32b=a118_0x13e3();let _0x2e1c9a=_0x13e32b[_0x1b7472];return _0x2e1c9a;}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_0x3d8639(0x1c1),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a118_0x3d8639(0x1b4),'command':a118_0x3d8639(0x190),'description':a118_0x3d8639(0x19a),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a118_0x3d8639(0x1b9),'type':a118_0x3d8639(0x188),'required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a118_0x3d8639(0x19e),'type':a118_0x3d8639(0x188),'required':!![],'description':a118_0x3d8639(0x180)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x395296){validateInput(_0x395296);},async 'dryRun'(_0x479995){const _0x7cdf6a=a118_0x3d8639;validateInput(_0x479995);const _0x4c2abe=await buildPlan(_0x479995,!![]);return menuDryRunResult(_0x4c2abe[_0x7cdf6a(0x181)],{'method':_0x7cdf6a(0x1c1),'url':_0x7cdf6a(0x1bd),'body':_0x4c2abe[_0x7cdf6a(0x18d)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x4c2abe[_0x7cdf6a(0x18d)]['id']+'.'});},async 'execute'(_0x207a39){const _0x643f24=a118_0x3d8639;validateInput(_0x207a39);const _0x446791=await buildPlan(_0x207a39,![]),{plan:_0x12f729,body:_0x327bd5,before:_0x57d4ae,noChanges:_0x4b7ff0}=_0x446791,_0x52273e=_0x327bd5['id'];if(_0x4b7ff0)return updateSuccess(_0x12f729,_0x446791[_0x643f24(0x1ca)],_0x57d4ae,!![],![]);await recheckMutationSnapshot(_0x207a39,_0x12f729,_0x643f24(0x194),_0x52273e);try{await updateMenuEntity(_0x207a39['appCode'],_0x207a39[_0x643f24(0x1a1)],{'id':_0x327bd5['id'],'url':_0x327bd5[_0x643f24(0x1b9)]});}catch(_0x12f367){const _0x3eb9b5=mapMenuApiError(_0x12f367,_0x643f24(0x194),_0x52273e);if(isMenuResponseLoss(_0x12f367)&&_0x3eb9b5[_0x643f24(0x18f)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x207a39,_0x446791);throw menuFailure(_0x3eb9b5,_0x12f729,{'stage':_0x643f24(0x1c3),'failed':{'id':_0x52273e},'warnings':[_0x643f24(0x187)],'verification':{'status':'failed','targetId':_0x52273e,'lookupCommand':buildLookupCommand(_0x207a39['appCode'])}});}let _0x1303d3,_0x3ad854;try{_0x1303d3=await fetchMenuSnapshot(_0x207a39[_0x643f24(0x1c6)],_0x207a39['cookie']),_0x3ad854=requireMenu(_0x1303d3,_0x52273e),verifyUpdatedFact(_0x57d4ae,_0x3ad854,_0x327bd5[_0x643f24(0x1b9)]);}catch(_0x41ac85){const _0x183d3a=describeMenuErrorCause(_0x41ac85,_0x643f24(0x1b2),_0x52273e),_0x50ee61=asVerificationError(_0x41ac85,_0x643f24(0x19d)+_0x52273e+_0x643f24(0x189));throw menuFailure(_0x50ee61,_0x12f729,{'stage':_0x643f24(0x1be),'succeeded':[{'id':_0x52273e,'updateRequested':!![]}],'failed':{'id':_0x52273e,'requestedStateConfirmed':![],..._0x183d3a},'warnings':[_0x643f24(0x1bb)],'verification':{'status':'failed','targetId':_0x52273e,'lookupCommand':buildLookupCommand(_0x207a39[_0x643f24(0x1c6)])}});}return updateSuccess(_0x12f729,_0x1303d3,_0x3ad854,![],![]);}};function validateInput(_0x204f1a){const _0x36963b=a118_0x3d8639;validateExactId(_0x204f1a),requiredUrl(_0x204f1a,_0x36963b(0x1b9)),requiredExpectedUrl(_0x204f1a),parseParentId(_0x204f1a,_0x36963b(0x1c5),{'required':!![]});}function requiredUrl(_0x272e60,_0x26050e){const _0x49d42e=a118_0x3d8639;if(!hasFlag(_0x272e60,_0x26050e)||!_0x272e60[_0x49d42e(0x1ac)](_0x26050e)[_0x49d42e(0x18e)]())throw CliErrors[_0x49d42e(0x192)](_0x26050e);return validateExternalMenuUrl(_0x272e60[_0x49d42e(0x1ac)](_0x26050e));}function requiredExpectedUrl(_0x882a5e){const _0x5721af=a118_0x3d8639;if(!hasFlag(_0x882a5e,_0x5721af(0x19e))||!_0x882a5e[_0x5721af(0x1ac)](_0x5721af(0x19e))[_0x5721af(0x18e)]())throw CliErrors['flagMissing'](_0x5721af(0x19e));return _0x882a5e[_0x5721af(0x1ac)](_0x5721af(0x19e))[_0x5721af(0x18e)]();}async function buildPlan(_0x253a11,_0x1ccc3d){const _0x1de21f=a118_0x3d8639,_0x3961e3=validateExactId(_0x253a11),_0x1453ba=requiredUrl(_0x253a11,_0x1de21f(0x1b9)),_0x1095d5=requiredExpectedUrl(_0x253a11),_0x4ca792=parseParentId(_0x253a11,_0x1de21f(0x1c5),{'required':!![]}),_0x72f208=await fetchMutationSnapshot(_0x253a11,_0x1de21f(0x194),_0x3961e3),_0x12986a=requireMenu(_0x72f208,_0x3961e3);assertExternalLinkLeaf(_0x12986a);if(_0x12986a[_0x1de21f(0x198)]!==_0x4ca792)throw menuError(_0x1de21f(0x19b),_0x1de21f(0x193)+_0x3961e3+_0x1de21f(0x19f)+formatParent(_0x4ca792)+_0x1de21f(0x1ab)+formatParent(_0x12986a[_0x1de21f(0x198)])+'.',_0x1de21f(0x183));const _0x3556a1=_0x12986a[_0x1de21f(0x1b9)]===_0x1453ba;if(!_0x3556a1&&_0x12986a['url']!==_0x1095d5)throw menuError(_0x1de21f(0x19b),_0x1de21f(0x193)+_0x3961e3+_0x1de21f(0x1b8),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x5e6b31={'id':_0x3961e3,'appCode':_0x253a11['appCode'],'url':_0x1453ba},_0x2d8a86={..._0x12986a,'url':_0x1453ba};return{'body':_0x5e6b31,'before':_0x12986a,'noChanges':_0x3556a1,'snapshot':_0x72f208,'plan':mutationResult({'operation':_0x1de21f(0x190),'selector':{'id':_0x3961e3},'before':_0x12986a,'after':_0x2d8a86,'dryRun':_0x1ccc3d,'backend':[...BACKEND],'plannedActions':_0x3556a1?[]:[{'stage':_0x1de21f(0x17c),'method':'POST','path':_0x1de21f(0x1bd),'body':_0x5e6b31}],'snapshotHash':_0x72f208['hash'],'warnings':_0x3556a1?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x3ac879){const _0x451b50=a118_0x3d8639;if(_0x3ac879['type']!==_0x451b50(0x185)&&_0x3ac879[_0x451b50(0x1c2)]!==_0x451b50(0x1c0))throw menuError(_0x451b50(0x17f),_0x451b50(0x193)+_0x3ac879['id']+_0x451b50(0x1a8)+(_0x3ac879[_0x451b50(0x1c2)]||_0x451b50(0x18c))+_0x451b50(0x179),_0x451b50(0x1a4));if(_0x3ac879[_0x451b50(0x1a5)]!==0x0)throw menuError(_0x451b50(0x19c),'Menu\x20'+_0x3ac879['id']+_0x451b50(0x1a2)+_0x3ac879['childrenCount']+_0x451b50(0x18a),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x3ac879[_0x451b50(0x1a0)][_0x451b50(0x18e)]())throw menuError(_0x451b50(0x1ad),_0x451b50(0x193)+_0x3ac879['id']+_0x451b50(0x195),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x3f8060,_0x12739d,_0x5a3d4e){const _0x54bba7=a118_0x3d8639;assertExternalLinkLeaf(_0x12739d);const _0x50fa68=[['id',_0x12739d['id'],_0x3f8060['id']],[_0x54bba7(0x182),_0x12739d[_0x54bba7(0x182)],_0x3f8060[_0x54bba7(0x182)]],[_0x54bba7(0x1c2),_0x12739d[_0x54bba7(0x1c2)],_0x3f8060[_0x54bba7(0x1c2)]],[_0x54bba7(0x1a0),_0x12739d[_0x54bba7(0x1a0)],_0x3f8060[_0x54bba7(0x1a0)]],['parentId',_0x12739d[_0x54bba7(0x198)],_0x3f8060['parentId']],[_0x54bba7(0x1b3),_0x12739d[_0x54bba7(0x1b3)],_0x3f8060[_0x54bba7(0x1b3)]],[_0x54bba7(0x1b7),_0x12739d[_0x54bba7(0x1b7)],_0x3f8060[_0x54bba7(0x1b7)]]];for(const [_0x51d62b,_0x1fbdb8,_0x38601c]of _0x50fa68){assertVerified(_0x1fbdb8===_0x38601c,_0x54bba7(0x193)+_0x3f8060['id']+'\x20'+_0x51d62b+_0x54bba7(0x17a));}assertVerified(_0x12739d[_0x54bba7(0x1b9)]===_0x5a3d4e,_0x54bba7(0x193)+_0x3f8060['id']+_0x54bba7(0x1b1));}function updateSuccess(_0x25a3ef,_0x5b2b51,_0x5a8ecf,_0x1e60d7,_0x482cb0){const _0x4f5aad=a118_0x3d8639,_0x5738f2=_0x5a8ecf['id'],_0x5c9943=mutationResult({..._0x25a3ef,'after':_0x5a8ecf,'dryRun':![],'succeeded':[{'id':_0x5738f2,'updated':!_0x1e60d7,'skipped':_0x1e60d7,'recovered':_0x482cb0}],'verification':{'checkedBy':_0x4f5aad(0x1aa),'snapshotHash':_0x5b2b51[_0x4f5aad(0x186)],'targetId':_0x5738f2,'matchesRequestedState':!![],'recovered':_0x482cb0}});return{'ok':!![],'message':_0x482cb0?_0x4f5aad(0x1bf)+_0x5738f2+'.':_0x1e60d7?_0x4f5aad(0x193)+_0x5738f2+_0x4f5aad(0x1a9):_0x4f5aad(0x1c8)+_0x5738f2+'.','data':{..._0x5c9943,'recovered':_0x482cb0}};}async function recoverAfterResponseLoss(_0xa941fe,_0x368766){const _0x424857=a118_0x3d8639,{plan:_0x55dd0e,before:_0x5cc2bc,body:_0x1e277e}=_0x368766;let _0xcb87fb;try{_0xcb87fb=await fetchMenuSnapshot(_0xa941fe[_0x424857(0x1c6)],_0xa941fe[_0x424857(0x1a1)]);}catch{throw recoveryRequired(_0x55dd0e,_0xa941fe[_0x424857(0x1c6)],{'id':_0x1e277e['id'],'readbackFailed':!![]});}const _0x2aeca8=_0xcb87fb[_0x424857(0x1b0)][_0x424857(0x178)](_0x1e277e['id']);if(!_0x2aeca8||_0x2aeca8[_0x424857(0x1b9)]!==_0x1e277e[_0x424857(0x1b9)])throw recoveryRequired(_0x55dd0e,_0xa941fe['appCode'],{'id':_0x1e277e['id'],'requestedUrlObserved':![],'after':_0x2aeca8??null});try{verifyUpdatedFact(_0x5cc2bc,_0x2aeca8,_0x1e277e[_0x424857(0x1b9)]);}catch(_0x2479df){const _0x4c0a56=asVerificationError(_0x2479df,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x1e277e['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x4c0a56,_0x55dd0e,{'stage':_0x424857(0x1a3),'succeeded':[{'id':_0x1e277e['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1e277e['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x2aeca8,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x424857(0x196),'targetId':_0x1e277e['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0xa941fe['appCode'])}});}return updateSuccess(_0x55dd0e,_0xcb87fb,_0x2aeca8,![],!![]);}function recoveryRequired(_0x205caa,_0x3b279a,_0x40213c){const _0x236021=a118_0x3d8639,_0x24c9ea=menuError('menu_update_recovery_required',_0x236021(0x1a6),_0x236021(0x1c7)+buildLookupCommand(_0x3b279a)+_0x236021(0x199));return menuFailure(_0x24c9ea,_0x205caa,{'stage':'update-recovery','failed':{'id':_0x40213c['id'],..._0x40213c[_0x236021(0x17b)]===undefined?{}:{'requestedUrlObserved':_0x40213c[_0x236021(0x17b)]},..._0x40213c[_0x236021(0x1af)]?{'readbackFailed':!![]}:{}},'after':_0x40213c[_0x236021(0x191)],'warnings':[_0x236021(0x18b)],'verification':{'status':_0x236021(0x196),'targetId':_0x40213c['id'],..._0x40213c[_0x236021(0x17b)]===undefined?{}:{'requestedUrlObserved':_0x40213c[_0x236021(0x17b)]},..._0x40213c['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x3b279a)}});}function buildLookupCommand(_0x3cc6d2){const _0x31edbc=a118_0x3d8639,_0x4c20b0='\x27'+_0x3cc6d2['replace'](/'/g,_0x31edbc(0x1bc))+'\x27';return _0x31edbc(0x1b5)+_0x4c20b0+_0x31edbc(0x197);}
1
+ const a118_0x1f58a8=a118_0x571b;(function(_0x2590f6,_0x55f99d){const _0x24fe7f=a118_0x571b,_0xa85bc1=_0x2590f6();while(!![]){try{const _0x12887b=parseInt(_0x24fe7f(0x113))/0x1+parseInt(_0x24fe7f(0x101))/0x2*(-parseInt(_0x24fe7f(0x117))/0x3)+parseInt(_0x24fe7f(0xdf))/0x4+-parseInt(_0x24fe7f(0x127))/0x5+parseInt(_0x24fe7f(0xf6))/0x6*(-parseInt(_0x24fe7f(0x10a))/0x7)+parseInt(_0x24fe7f(0xf4))/0x8+parseInt(_0x24fe7f(0xf9))/0x9*(parseInt(_0x24fe7f(0x108))/0xa);if(_0x12887b===_0x55f99d)break;else _0xa85bc1['push'](_0xa85bc1['shift']());}catch(_0x4868ff){_0xa85bc1['push'](_0xa85bc1['shift']());}}}(a118_0x1aee,0xdbe55));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a118_0x571b(_0x1c73f9,_0x1502e4){_0x1c73f9=_0x1c73f9-0xda;const _0x1aeeba=a118_0x1aee();let _0x571b0b=_0x1aeeba[_0x1c73f9];return _0x571b0b;}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_0x1f58a8(0x109),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a118_0x1f58a8(0x12b),'command':'external-link-update','description':'Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','risk':a118_0x1f58a8(0x12d),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a118_0x1f58a8(0x11c),'type':a118_0x1f58a8(0x11a),'required':!![],'description':a118_0x1f58a8(0x116)},{'name':a118_0x1f58a8(0xfc),'type':a118_0x1f58a8(0x11a),'required':!![],'description':a118_0x1f58a8(0xe8)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x306843){validateInput(_0x306843);},async 'dryRun'(_0x5b3c56){const _0x4d8ebb=a118_0x1f58a8;validateInput(_0x5b3c56);const _0x333b93=await buildPlan(_0x5b3c56,!![]);return menuDryRunResult(_0x333b93[_0x4d8ebb(0x120)],{'method':'POST','url':_0x4d8ebb(0xe0),'body':_0x333b93[_0x4d8ebb(0xf2)],'description':_0x4d8ebb(0xe1)+_0x333b93[_0x4d8ebb(0xf2)]['id']+'.'});},async 'execute'(_0x4f4ce1){const _0x4291f4=a118_0x1f58a8;validateInput(_0x4f4ce1);const _0x5299b7=await buildPlan(_0x4f4ce1,![]),{plan:_0x22321b,body:_0x33150a,before:_0x894e1e,noChanges:_0x4813f5}=_0x5299b7,_0x33ff6d=_0x33150a['id'];if(_0x4813f5)return updateSuccess(_0x22321b,_0x5299b7[_0x4291f4(0x12f)],_0x894e1e,!![],![]);await recheckMutationSnapshot(_0x4f4ce1,_0x22321b,_0x4291f4(0x110),_0x33ff6d);try{await updateMenuEntity(_0x4f4ce1['appCode'],_0x4f4ce1[_0x4291f4(0xf0)],{'id':_0x33150a['id'],'url':_0x33150a[_0x4291f4(0x11c)]});}catch(_0xf1443d){const _0x753dca=mapMenuApiError(_0xf1443d,_0x4291f4(0x110),_0x33ff6d);if(isMenuResponseLoss(_0xf1443d)&&_0x753dca[_0x4291f4(0x106)]!==_0x4291f4(0x105))return recoverAfterResponseLoss(_0x4f4ce1,_0x5299b7);throw menuFailure(_0x753dca,_0x22321b,{'stage':'update','failed':{'id':_0x33ff6d},'warnings':[_0x4291f4(0xdd)],'verification':{'status':'failed','targetId':_0x33ff6d,'lookupCommand':buildLookupCommand(_0x4f4ce1[_0x4291f4(0xea)])}});}let _0x1919dd,_0x2c07a4;try{_0x1919dd=await fetchMenuSnapshot(_0x4f4ce1[_0x4291f4(0xea)],_0x4f4ce1[_0x4291f4(0xf0)]),_0x2c07a4=requireMenu(_0x1919dd,_0x33ff6d),verifyUpdatedFact(_0x894e1e,_0x2c07a4,_0x33150a[_0x4291f4(0x11c)]);}catch(_0x5af91a){const _0x3d2d0b=describeMenuErrorCause(_0x5af91a,_0x4291f4(0x112),_0x33ff6d),_0x3d9710=asVerificationError(_0x5af91a,'Update\x20request\x20for\x20menu\x20'+_0x33ff6d+_0x4291f4(0xfe));throw menuFailure(_0x3d9710,_0x22321b,{'stage':_0x4291f4(0xec),'succeeded':[{'id':_0x33ff6d,'updateRequested':!![]}],'failed':{'id':_0x33ff6d,'requestedStateConfirmed':![],..._0x3d2d0b},'warnings':[_0x4291f4(0x103)],'verification':{'status':_0x4291f4(0xde),'targetId':_0x33ff6d,'lookupCommand':buildLookupCommand(_0x4f4ce1[_0x4291f4(0xea)])}});}return updateSuccess(_0x22321b,_0x1919dd,_0x2c07a4,![],![]);}};function validateInput(_0x1f5f5c){const _0x4fd5c8=a118_0x1f58a8;validateExactId(_0x1f5f5c),requiredUrl(_0x1f5f5c,_0x4fd5c8(0x11c)),requiredExpectedUrl(_0x1f5f5c),parseParentId(_0x1f5f5c,_0x4fd5c8(0x130),{'required':!![]});}function requiredUrl(_0x5bbbcb,_0x1d4af7){const _0xc39db6=a118_0x1f58a8;if(!hasFlag(_0x5bbbcb,_0x1d4af7)||!_0x5bbbcb[_0xc39db6(0x121)](_0x1d4af7)['trim']())throw CliErrors[_0xc39db6(0x128)](_0x1d4af7);return validateExternalMenuUrl(_0x5bbbcb[_0xc39db6(0x121)](_0x1d4af7));}function a118_0x1aee(){const _0x5a218a=['52LcPXas','byId','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','label','menu_permission_denied','code','\x20could\x20not\x20be\x20verified\x20safely','133970XIATVG','POST','7hVYpCW','menu\x20list','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','update-external-link-url','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','requestedUrlObserved','update\x20external\x20menu\x20URL','Run\x20','verify\x20external\x20menu\x20URL\x20update','262633DZTxUU','readbackFailed','Response\x20was\x20lost\x20and\x20menu\x20','New\x20external\x20HTTPS\x20URL','44373qbdtXq','external-link-update','sort','string','menu_external_link_type_required','url','\x22,\x20not\x20iframe\x20or\x20link.','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','plan','str','iframe','\x20has\x20an\x20empty\x20platform\x20path.','hash','unknown','type','5542270kRrcZw','flagMissing','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','menu','get','write','rabetbase\x20menu\x20list\x20--appcode\x20','snapshot','expect-parent-id','replace',',\x20current\x20','Menu\x20','menu_update_recovery_required','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','failed','243260VYJDnk','/smartapi/menu/update','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','menu_state_drift','parentId','menu_external_link_not_leaf','\x20changed\x20during\x20the\x20URL-only\x20update.','\x20direct\x20child\x20menu(s).','path','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','trim','appCode','update-recovery','verification','\x20already\x20matches\x20the\x20requested\x20URL.','visible','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','cookie','\x20--format\x20compress','body','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','80256sinCra','childrenCount','740868eITMPF','Updated\x20external\x20URL\x20for\x20menu\x20','after','1467fwmFQs','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','menu_external_link_path_missing','expect-url','\x20parent\x20changed:\x20expected\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','link'];a118_0x1aee=function(){return _0x5a218a;};return a118_0x1aee();}function requiredExpectedUrl(_0x2fa2f2){const _0xe6ba50=a118_0x1f58a8;if(!hasFlag(_0x2fa2f2,_0xe6ba50(0xfc))||!_0x2fa2f2[_0xe6ba50(0x121)](_0xe6ba50(0xfc))[_0xe6ba50(0xe9)]())throw CliErrors['flagMissing']('expect-url');return _0x2fa2f2[_0xe6ba50(0x121)]('expect-url')[_0xe6ba50(0xe9)]();}async function buildPlan(_0x3864e4,_0x51b13c){const _0x3aa56f=a118_0x1f58a8,_0x3bfae3=validateExactId(_0x3864e4),_0x163465=requiredUrl(_0x3864e4,_0x3aa56f(0x11c)),_0xb4af47=requiredExpectedUrl(_0x3864e4),_0xe44a01=parseParentId(_0x3864e4,_0x3aa56f(0x130),{'required':!![]}),_0x4ae1db=await fetchMutationSnapshot(_0x3864e4,_0x3aa56f(0x110),_0x3bfae3),_0x1cfd86=requireMenu(_0x4ae1db,_0x3bfae3);assertExternalLinkLeaf(_0x1cfd86);if(_0x1cfd86['parentId']!==_0xe44a01)throw menuError(_0x3aa56f(0xe2),'Menu\x20'+_0x3bfae3+_0x3aa56f(0xfd)+formatParent(_0xe44a01)+_0x3aa56f(0xda)+formatParent(_0x1cfd86[_0x3aa56f(0xe3)])+'.',_0x3aa56f(0xef));const _0x3dd91c=_0x1cfd86[_0x3aa56f(0x11c)]===_0x163465;if(!_0x3dd91c&&_0x1cfd86[_0x3aa56f(0x11c)]!==_0xb4af47)throw menuError('menu_state_drift',_0x3aa56f(0xdb)+_0x3bfae3+_0x3aa56f(0x11f),_0x3aa56f(0x12a));const _0x2019d9={'id':_0x3bfae3,'appCode':_0x3864e4[_0x3aa56f(0xea)],'url':_0x163465},_0x18db36={..._0x1cfd86,'url':_0x163465};return{'body':_0x2019d9,'before':_0x1cfd86,'noChanges':_0x3dd91c,'snapshot':_0x4ae1db,'plan':mutationResult({'operation':_0x3aa56f(0x118),'selector':{'id':_0x3bfae3},'before':_0x1cfd86,'after':_0x18db36,'dryRun':_0x51b13c,'backend':[...BACKEND],'plannedActions':_0x3dd91c?[]:[{'stage':_0x3aa56f(0x10d),'method':_0x3aa56f(0x109),'path':'/smartapi/menu/update','body':_0x2019d9}],'snapshotHash':_0x4ae1db['hash'],'warnings':_0x3dd91c?[_0x3aa56f(0x11e)]:[]})};}function assertExternalLinkLeaf(_0x4b449c){const _0x14f893=a118_0x1f58a8;if(_0x4b449c['type']!==_0x14f893(0x122)&&_0x4b449c['type']!==_0x14f893(0x100))throw menuError(_0x14f893(0x11b),'Menu\x20'+_0x4b449c['id']+'\x20is\x20type\x20\x22'+(_0x4b449c[_0x14f893(0x126)]||_0x14f893(0x125))+_0x14f893(0x11d),_0x14f893(0xf3));if(_0x4b449c['childrenCount']!==0x0)throw menuError(_0x14f893(0xe4),_0x14f893(0xdb)+_0x4b449c['id']+'\x20has\x20'+_0x4b449c[_0x14f893(0xf5)]+_0x14f893(0xe6),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x4b449c[_0x14f893(0xe7)][_0x14f893(0xe9)]())throw menuError(_0x14f893(0xfb),_0x14f893(0xdb)+_0x4b449c['id']+_0x14f893(0x123),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x2076e9,_0x38149d,_0x3806ab){const _0x261bff=a118_0x1f58a8;assertExternalLinkLeaf(_0x38149d);const _0x426322=[['id',_0x38149d['id'],_0x2076e9['id']],[_0x261bff(0x104),_0x38149d[_0x261bff(0x104)],_0x2076e9[_0x261bff(0x104)]],[_0x261bff(0x126),_0x38149d[_0x261bff(0x126)],_0x2076e9['type']],[_0x261bff(0xe7),_0x38149d[_0x261bff(0xe7)],_0x2076e9[_0x261bff(0xe7)]],['parentId',_0x38149d['parentId'],_0x2076e9['parentId']],[_0x261bff(0x119),_0x38149d[_0x261bff(0x119)],_0x2076e9[_0x261bff(0x119)]],['visible',_0x38149d[_0x261bff(0xee)],_0x2076e9[_0x261bff(0xee)]]];for(const [_0x5c1eb8,_0x15bc12,_0x53123d]of _0x426322){assertVerified(_0x15bc12===_0x53123d,_0x261bff(0xdb)+_0x2076e9['id']+'\x20'+_0x5c1eb8+_0x261bff(0xe5));}assertVerified(_0x38149d[_0x261bff(0x11c)]===_0x3806ab,_0x261bff(0xdb)+_0x2076e9['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x3cc563,_0x18631e,_0x474fa2,_0x1fc363,_0x58568a){const _0x11e37e=a118_0x1f58a8,_0x30e1b7=_0x474fa2['id'],_0x1eefe5=mutationResult({..._0x3cc563,'after':_0x474fa2,'dryRun':![],'succeeded':[{'id':_0x30e1b7,'updated':!_0x1fc363,'skipped':_0x1fc363,'recovered':_0x58568a}],'verification':{'checkedBy':_0x11e37e(0x10b),'snapshotHash':_0x18631e[_0x11e37e(0x124)],'targetId':_0x30e1b7,'matchesRequestedState':!![],'recovered':_0x58568a}});return{'ok':!![],'message':_0x58568a?_0x11e37e(0xff)+_0x30e1b7+'.':_0x1fc363?'Menu\x20'+_0x30e1b7+_0x11e37e(0xed):_0x11e37e(0xf7)+_0x30e1b7+'.','data':{..._0x1eefe5,'recovered':_0x58568a}};}async function recoverAfterResponseLoss(_0x3fd220,_0x22face){const _0x344c41=a118_0x1f58a8,{plan:_0x467c50,before:_0x15c021,body:_0x3eb0da}=_0x22face;let _0x4c7a7d;try{_0x4c7a7d=await fetchMenuSnapshot(_0x3fd220['appCode'],_0x3fd220[_0x344c41(0xf0)]);}catch{throw recoveryRequired(_0x467c50,_0x3fd220[_0x344c41(0xea)],{'id':_0x3eb0da['id'],'readbackFailed':!![]});}const _0x4db104=_0x4c7a7d[_0x344c41(0x102)][_0x344c41(0x12c)](_0x3eb0da['id']);if(!_0x4db104||_0x4db104[_0x344c41(0x11c)]!==_0x3eb0da[_0x344c41(0x11c)])throw recoveryRequired(_0x467c50,_0x3fd220[_0x344c41(0xea)],{'id':_0x3eb0da['id'],'requestedUrlObserved':![],'after':_0x4db104??null});try{verifyUpdatedFact(_0x15c021,_0x4db104,_0x3eb0da[_0x344c41(0x11c)]);}catch(_0x2d48a4){const _0x2319af=asVerificationError(_0x2d48a4,_0x344c41(0x115)+_0x3eb0da['id']+_0x344c41(0x107));throw menuFailure(_0x2319af,_0x467c50,{'stage':_0x344c41(0xeb),'succeeded':[{'id':_0x3eb0da['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x3eb0da['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x4db104,'warnings':[_0x344c41(0x10c)],'verification':{'status':_0x344c41(0xde),'targetId':_0x3eb0da['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x3fd220['appCode'])}});}return updateSuccess(_0x467c50,_0x4c7a7d,_0x4db104,![],!![]);}function recoveryRequired(_0x4e007a,_0x11c494,_0x1e0d53){const _0x3d09c9=a118_0x1f58a8,_0x4a19b4=menuError(_0x3d09c9(0xdc),_0x3d09c9(0x10e),_0x3d09c9(0x111)+buildLookupCommand(_0x11c494)+_0x3d09c9(0x129));return menuFailure(_0x4a19b4,_0x4e007a,{'stage':_0x3d09c9(0xeb),'failed':{'id':_0x1e0d53['id'],..._0x1e0d53[_0x3d09c9(0x10f)]===undefined?{}:{'requestedUrlObserved':_0x1e0d53['requestedUrlObserved']},..._0x1e0d53[_0x3d09c9(0x114)]?{'readbackFailed':!![]}:{}},'after':_0x1e0d53[_0x3d09c9(0xf8)],'warnings':[_0x3d09c9(0xfa)],'verification':{'status':_0x3d09c9(0xde),'targetId':_0x1e0d53['id'],..._0x1e0d53[_0x3d09c9(0x10f)]===undefined?{}:{'requestedUrlObserved':_0x1e0d53[_0x3d09c9(0x10f)]},..._0x1e0d53[_0x3d09c9(0x114)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x11c494)}});}function buildLookupCommand(_0x3efccd){const _0x16b4cc=a118_0x1f58a8,_0x20fcf7='\x27'+_0x3efccd[_0x16b4cc(0x131)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x16b4cc(0x12e)+_0x20fcf7+_0x16b4cc(0xf1);}