@lovrabet/rabetbase-cli 2.5.4-beta.2 → 2.5.4-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (356) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/api-group.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.js +1 -1
  6. package/lib/api/legacy-api-file.js +1 -1
  7. package/lib/api/model-registry-file.js +1 -1
  8. package/lib/api/model-registry-scaffold.js +1 -1
  9. package/lib/api/model-source.js +1 -1
  10. package/lib/auth/auth-server-ui.js +1 -1
  11. package/lib/auth/auth-server.js +1 -1
  12. package/lib/auth/constant.js +1 -1
  13. package/lib/auth/get-cookie.js +1 -1
  14. package/lib/auth/get-session-user.js +1 -1
  15. package/lib/auth/is-session-valid.js +1 -1
  16. package/lib/auth/login-success-html.js +1 -1
  17. package/lib/auth/logout.js +1 -1
  18. package/lib/cli-flags.js +1 -1
  19. package/lib/cli.js +1 -1
  20. package/lib/commands/api/generate.js +1 -1
  21. package/lib/commands/api/index.js +1 -1
  22. package/lib/commands/api/list.js +1 -1
  23. package/lib/commands/api/pull.js +1 -1
  24. package/lib/commands/api/shared.js +1 -1
  25. package/lib/commands/app/index.js +1 -1
  26. package/lib/commands/app/list.js +1 -1
  27. package/lib/commands/app/members-list.js +1 -1
  28. package/lib/commands/app/remote-directory.js +1 -1
  29. package/lib/commands/app/shared.js +1 -1
  30. package/lib/commands/app-config/delete.js +1 -1
  31. package/lib/commands/app-config/get.js +1 -1
  32. package/lib/commands/app-config/index.js +1 -1
  33. package/lib/commands/app-config/list.js +1 -1
  34. package/lib/commands/app-config/set.js +1 -1
  35. package/lib/commands/app-config/shared.js +1 -1
  36. package/lib/commands/auth/index.js +1 -1
  37. package/lib/commands/bff/create.js +1 -1
  38. package/lib/commands/bff/delete.js +1 -1
  39. package/lib/commands/bff/detail.js +1 -1
  40. package/lib/commands/bff/index.js +1 -1
  41. package/lib/commands/bff/list.js +1 -1
  42. package/lib/commands/bff/logs.js +1 -1
  43. package/lib/commands/bff/pull.js +1 -1
  44. package/lib/commands/bff/push.js +1 -1
  45. package/lib/commands/bff/status.js +1 -1
  46. package/lib/commands/cli-skill/index.js +1 -1
  47. package/lib/commands/cli-update.js +1 -1
  48. package/lib/commands/codegen/index.js +1 -1
  49. package/lib/commands/codegen/sdk.js +1 -1
  50. package/lib/commands/codegen/sql.js +1 -1
  51. package/lib/commands/common/app-registry.js +1 -1
  52. package/lib/commands/common/app-selector.js +1 -1
  53. package/lib/commands/common/async-task.js +1 -1
  54. package/lib/commands/common/dry-run.js +1 -1
  55. package/lib/commands/common/flags.js +1 -1
  56. package/lib/commands/common/local-file.js +1 -1
  57. package/lib/commands/common/validate.js +1 -1
  58. package/lib/commands/config/delete.js +1 -1
  59. package/lib/commands/config/get.js +1 -1
  60. package/lib/commands/config/index.js +1 -1
  61. package/lib/commands/config/init.js +1 -1
  62. package/lib/commands/config/list.js +1 -1
  63. package/lib/commands/config/set.js +1 -1
  64. package/lib/commands/config/shared.js +1 -1
  65. package/lib/commands/dataset/batch-design.js +1 -1
  66. package/lib/commands/dataset/business-group-update.js +1 -1
  67. package/lib/commands/dataset/business-groups.js +1 -1
  68. package/lib/commands/dataset/capability.js +1 -1
  69. package/lib/commands/dataset/cross-relation-create.js +1 -1
  70. package/lib/commands/dataset/cross-relation-delete.js +1 -1
  71. package/lib/commands/dataset/cross-relation-list.js +1 -1
  72. package/lib/commands/dataset/cross-relation-shared.js +1 -1
  73. package/lib/commands/dataset/cross-relation-update.js +1 -1
  74. package/lib/commands/dataset/delete.js +1 -1
  75. package/lib/commands/dataset/detail.js +1 -1
  76. package/lib/commands/dataset/extend-update.js +1 -1
  77. package/lib/commands/dataset/field-restore.js +1 -1
  78. package/lib/commands/dataset/field-update.js +1 -1
  79. package/lib/commands/dataset/generate.js +1 -1
  80. package/lib/commands/dataset/index.js +1 -1
  81. package/lib/commands/dataset/list.js +1 -1
  82. package/lib/commands/dataset/operations.js +1 -1
  83. package/lib/commands/dataset/relation-audit.js +1 -1
  84. package/lib/commands/dataset/relation-create.js +1 -1
  85. package/lib/commands/dataset/relation-delete.js +1 -1
  86. package/lib/commands/dataset/relation-shared.js +1 -1
  87. package/lib/commands/dataset/relation-update.js +1 -1
  88. package/lib/commands/dataset/relations.js +1 -1
  89. package/lib/commands/dataset/rename.js +1 -1
  90. package/lib/commands/dataset/restore.js +1 -1
  91. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  92. package/lib/commands/db/analysis-batching.js +1 -1
  93. package/lib/commands/db/analyze-batch-plan.js +1 -1
  94. package/lib/commands/db/analyze-cancel.js +1 -1
  95. package/lib/commands/db/analyze-start.js +1 -1
  96. package/lib/commands/db/analyze-status.js +1 -1
  97. package/lib/commands/db/create.js +1 -1
  98. package/lib/commands/db/delete.js +1 -1
  99. package/lib/commands/db/detail.js +1 -1
  100. package/lib/commands/db/diff-refresh-start.js +1 -1
  101. package/lib/commands/db/diff-refresh-status.js +1 -1
  102. package/lib/commands/db/diff.js +1 -1
  103. package/lib/commands/db/index.js +1 -1
  104. package/lib/commands/db/list.js +1 -1
  105. package/lib/commands/db/shared.js +1 -1
  106. package/lib/commands/db/table-diff-shared.js +1 -1
  107. package/lib/commands/db/tables.js +1 -1
  108. package/lib/commands/db/test.js +1 -1
  109. package/lib/commands/db/update.js +1 -1
  110. package/lib/commands/deployment/index.js +1 -1
  111. package/lib/commands/deployment/sync-all.js +1 -1
  112. package/lib/commands/deployment/sync-jobs.js +1 -1
  113. package/lib/commands/deployment/sync-status.js +1 -1
  114. package/lib/commands/doctor.js +1 -1
  115. package/lib/commands/file/index.js +1 -1
  116. package/lib/commands/flow/create.js +1 -1
  117. package/lib/commands/flow/detail.js +1 -1
  118. package/lib/commands/flow/index.js +1 -1
  119. package/lib/commands/flow/list.js +1 -1
  120. package/lib/commands/flow/publish.js +1 -1
  121. package/lib/commands/flow/runtime-resources-shared.js +1 -1
  122. package/lib/commands/flow/runtime-role-list.js +1 -1
  123. package/lib/commands/flow/runtime-role-user-list.js +1 -1
  124. package/lib/commands/flow/runtime-user-search.js +1 -1
  125. package/lib/commands/flow/shared.js +1 -1
  126. package/lib/commands/flow/update.js +1 -1
  127. package/lib/commands/flow/validate.js +1 -1
  128. package/lib/commands/instant-api-policy/current.js +1 -1
  129. package/lib/commands/instant-api-policy/index.js +1 -1
  130. package/lib/commands/instant-api-policy/init.js +1 -1
  131. package/lib/commands/instant-api-policy/publish.js +1 -1
  132. package/lib/commands/instant-api-policy/pull.js +1 -1
  133. package/lib/commands/instant-api-policy/revision.js +1 -1
  134. package/lib/commands/instant-api-policy/revisions.js +1 -1
  135. package/lib/commands/instant-api-policy/rollback.js +1 -1
  136. package/lib/commands/instant-api-policy/shared.js +1 -1
  137. package/lib/commands/instant-api-policy/validate.js +1 -1
  138. package/lib/commands/issue/index.js +1 -1
  139. package/lib/commands/issue/nudge.js +1 -1
  140. package/lib/commands/issue/report.js +1 -1
  141. package/lib/commands/issue/shared.js +1 -1
  142. package/lib/commands/kb/create.js +1 -1
  143. package/lib/commands/kb/delete.js +1 -1
  144. package/lib/commands/kb/detail.js +1 -1
  145. package/lib/commands/kb/index.js +1 -1
  146. package/lib/commands/kb/list.js +1 -1
  147. package/lib/commands/kb/search.js +1 -1
  148. package/lib/commands/kb/shared.js +1 -1
  149. package/lib/commands/kb/update.js +1 -1
  150. package/lib/commands/logs/index.js +1 -1
  151. package/lib/commands/menu/asset-update.js +1 -1
  152. package/lib/commands/menu/delete.js +1 -1
  153. package/lib/commands/menu/external-link-create.js +1 -1
  154. package/lib/commands/menu/external-link-update.js +1 -1
  155. package/lib/commands/menu/group-create.js +1 -1
  156. package/lib/commands/menu/group-update.js +1 -1
  157. package/lib/commands/menu/index.js +1 -1
  158. package/lib/commands/menu/list.js +1 -1
  159. package/lib/commands/menu/move.js +1 -1
  160. package/lib/commands/menu/regroup-start.js +1 -1
  161. package/lib/commands/menu/rename.js +1 -1
  162. package/lib/commands/menu/shared/compare-table.js +1 -1
  163. package/lib/commands/menu/shared/delete-plan.js +1 -1
  164. package/lib/commands/menu/shared/facts.js +1 -1
  165. package/lib/commands/menu/shared/index.js +1 -1
  166. package/lib/commands/menu/shared/inquirer.js +1 -1
  167. package/lib/commands/menu/shared/local-pages.js +1 -1
  168. package/lib/commands/menu/shared/logic.js +1 -1
  169. package/lib/commands/menu/shared/mutations.js +1 -1
  170. package/lib/commands/menu/shared/service.js +1 -1
  171. package/lib/commands/menu/shared/sync-core.js +1 -1
  172. package/lib/commands/menu/shared/update-core.js +1 -1
  173. package/lib/commands/menu/shared/valid-url.js +1 -1
  174. package/lib/commands/menu/sync.js +1 -1
  175. package/lib/commands/menu/visibility-update.js +1 -1
  176. package/lib/commands/notification/config-create.js +1 -1
  177. package/lib/commands/notification/config-delete.js +1 -1
  178. package/lib/commands/notification/config-list.js +1 -1
  179. package/lib/commands/notification/config-update.js +1 -1
  180. package/lib/commands/notification/index.js +1 -1
  181. package/lib/commands/notification/shared.js +1 -1
  182. package/lib/commands/ocr/index.js +1 -1
  183. package/lib/commands/page/create.js +1 -1
  184. package/lib/commands/page/custom/detail.js +1 -1
  185. package/lib/commands/page/custom/list.js +1 -1
  186. package/lib/commands/page/custom/publish.js +1 -1
  187. package/lib/commands/page/custom/shared.js +1 -1
  188. package/lib/commands/page/custom/syntax.js +1 -1
  189. package/lib/commands/page/custom/update.js +1 -1
  190. package/lib/commands/page/data-list-status.js +1 -1
  191. package/lib/commands/page/generate-start.js +1 -1
  192. package/lib/commands/page/generate-status.js +1 -1
  193. package/lib/commands/page/index.js +1 -1
  194. package/lib/commands/page/pull.js +1 -1
  195. package/lib/commands/page/push.js +1 -1
  196. package/lib/commands/page/relation-audit.js +1 -1
  197. package/lib/commands/page/restore.js +1 -1
  198. package/lib/commands/page/shared.js +1 -1
  199. package/lib/commands/page/sync.js +1 -1
  200. package/lib/commands/project/api-architecture-upgrade.js +1 -1
  201. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  202. package/lib/commands/project/create/format-elapsed.js +1 -1
  203. package/lib/commands/project/create/main.js +1 -1
  204. package/lib/commands/project/create/materialize-project-template.js +1 -1
  205. package/lib/commands/project/create/project-name.js +1 -1
  206. package/lib/commands/project/create/project-template-archive.js +1 -1
  207. package/lib/commands/project/create/project-template-path.js +1 -1
  208. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  209. package/lib/commands/project/create/use-format-code.js +1 -1
  210. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  211. package/lib/commands/project/domain-routing-sync.js +1 -1
  212. package/lib/commands/project/index.js +1 -1
  213. package/lib/commands/project/upgrade.js +1 -1
  214. package/lib/commands/registry.js +1 -1
  215. package/lib/commands/role/delete.js +1 -1
  216. package/lib/commands/role/detail.js +1 -1
  217. package/lib/commands/role/index.js +1 -1
  218. package/lib/commands/role/list.js +1 -1
  219. package/lib/commands/role/shared.js +1 -1
  220. package/lib/commands/role/update.js +1 -1
  221. package/lib/commands/role/user-add.js +1 -1
  222. package/lib/commands/role/user-remove.js +1 -1
  223. package/lib/commands/role/user-resolve.js +1 -1
  224. package/lib/commands/rule/get.js +1 -1
  225. package/lib/commands/rule/index.js +1 -1
  226. package/lib/commands/rule/list.js +1 -1
  227. package/lib/commands/rule/set.js +1 -1
  228. package/lib/commands/rule/shared.js +1 -1
  229. package/lib/commands/run/index.js +1 -1
  230. package/lib/commands/schema.js +1 -1
  231. package/lib/commands/sql/create.js +1 -1
  232. package/lib/commands/sql/delete.js +1 -1
  233. package/lib/commands/sql/detail.js +1 -1
  234. package/lib/commands/sql/exec.js +1 -1
  235. package/lib/commands/sql/index.js +1 -1
  236. package/lib/commands/sql/list.js +1 -1
  237. package/lib/commands/sql/pull.js +1 -1
  238. package/lib/commands/sql/push.js +1 -1
  239. package/lib/commands/sql/shared.js +1 -1
  240. package/lib/commands/sql/status.js +1 -1
  241. package/lib/commands/sql/validate.js +1 -1
  242. package/lib/commands/task/index.js +1 -1
  243. package/lib/commands/task/status.js +1 -1
  244. package/lib/commands/tenant/index.js +1 -1
  245. package/lib/commands/tenant/members-list.js +1 -1
  246. package/lib/commands/tenant/shared.js +1 -1
  247. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  248. package/lib/commands/user-account/feishu-bind.d.ts +2 -0
  249. package/lib/commands/user-account/feishu-bind.js +1 -0
  250. package/lib/commands/user-account/index.js +1 -1
  251. package/lib/commands/workspace/add.js +1 -1
  252. package/lib/commands/workspace/index.js +1 -1
  253. package/lib/commands/workspace/remove.js +1 -1
  254. package/lib/config/domain-config.js +1 -1
  255. package/lib/config/project-domain-routing.js +1 -1
  256. package/lib/config/region-config.js +1 -1
  257. package/lib/config/schema.js +1 -1
  258. package/lib/constant/cdn.js +1 -1
  259. package/lib/constant/cli.js +1 -1
  260. package/lib/constant/defaults.js +1 -1
  261. package/lib/constant/domain.js +1 -1
  262. package/lib/constant/env.js +1 -1
  263. package/lib/constant/output.js +1 -1
  264. package/lib/constant/paths.js +1 -1
  265. package/lib/constant/region.js +1 -1
  266. package/lib/constant/risk.js +1 -1
  267. package/lib/constant/routing-profile.js +1 -1
  268. package/lib/context/app-resolver.js +1 -1
  269. package/lib/context/auth-resolver.js +1 -1
  270. package/lib/context/config-loader.js +1 -1
  271. package/lib/context.js +1 -1
  272. package/lib/core/alias-resolver.js +1 -1
  273. package/lib/core/api-client.d.ts +2 -0
  274. package/lib/core/api-client.js +1 -1
  275. package/lib/core/bff/config.js +1 -1
  276. package/lib/core/bff/file-system.js +1 -1
  277. package/lib/core/bff/hash.js +1 -1
  278. package/lib/core/bff/hook-directory.js +1 -1
  279. package/lib/core/bff/lock.js +1 -1
  280. package/lib/core/bff/utils.js +1 -1
  281. package/lib/core/cross-db-relation.js +1 -1
  282. package/lib/core/db-resolver.js +1 -1
  283. package/lib/core/flow-config.js +1 -1
  284. package/lib/core/instant-api-policy/config.js +1 -1
  285. package/lib/core/kb-search-client.js +1 -1
  286. package/lib/core/page/file-system.js +1 -1
  287. package/lib/core/page/hash.js +1 -1
  288. package/lib/core/page/lock.js +1 -1
  289. package/lib/core/page/lr-smart-jsx.js +1 -1
  290. package/lib/core/sql-index-auditor.js +1 -1
  291. package/lib/core/sql-sync/config.js +1 -1
  292. package/lib/core/sql-sync/file-system.js +1 -1
  293. package/lib/core/sql-sync/hash.js +1 -1
  294. package/lib/core/sql-sync/lock.js +1 -1
  295. package/lib/core/sql-sync/utils.js +1 -1
  296. package/lib/core/sql-validator.js +1 -1
  297. package/lib/errors.js +1 -1
  298. package/lib/framework/build-all-flags.js +1 -1
  299. package/lib/framework/error-output.js +1 -1
  300. package/lib/framework/explicit-yes.js +1 -1
  301. package/lib/framework/flags.js +1 -1
  302. package/lib/framework/help.js +1 -1
  303. package/lib/framework/index.js +1 -1
  304. package/lib/framework/output.js +1 -1
  305. package/lib/framework/response.js +1 -1
  306. package/lib/framework/runner-alias.js +1 -1
  307. package/lib/framework/runner.js +1 -1
  308. package/lib/framework/schema-export.js +1 -1
  309. package/lib/framework/supported-flags.js +1 -1
  310. package/lib/framework/types.js +1 -1
  311. package/lib/generated/build-info.d.ts +4 -4
  312. package/lib/generated/build-info.js +1 -1
  313. package/lib/generated/official-routing.js +1 -1
  314. package/lib/generated/routing-contract.js +1 -1
  315. package/lib/help.js +1 -1
  316. package/lib/postinstall.js +1 -1
  317. package/lib/runtime/confirmation.js +1 -1
  318. package/lib/runtime/event.js +1 -1
  319. package/lib/runtime/index.js +1 -1
  320. package/lib/runtime/queue.js +1 -1
  321. package/lib/runtime/resolve.js +1 -1
  322. package/lib/skills/builtin-skill.js +1 -1
  323. package/lib/skills/main.js +1 -1
  324. package/lib/skills/npx-skills-add.js +1 -1
  325. package/lib/skills/skill-presence.js +1 -1
  326. package/lib/telemetry/cli-command-trace.js +1 -1
  327. package/lib/telemetry/cli-help-trace.js +1 -1
  328. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  329. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  330. package/lib/telemetry/send-cli-trace-log.js +1 -1
  331. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  332. package/lib/utils/ai_config.js +1 -1
  333. package/lib/utils/apply-jq-filter.js +1 -1
  334. package/lib/utils/cdn-config.js +1 -1
  335. package/lib/utils/check-sdk-version.js +1 -1
  336. package/lib/utils/cli-version-check.js +1 -1
  337. package/lib/utils/cli-version-policy.js +1 -1
  338. package/lib/utils/config.js +1 -1
  339. package/lib/utils/entity-with-id.js +1 -1
  340. package/lib/utils/file-utils.js +1 -1
  341. package/lib/utils/guides-cdn.js +1 -1
  342. package/lib/utils/http-client.js +1 -1
  343. package/lib/utils/is-non-interactive.js +1 -1
  344. package/lib/utils/logger.js +1 -1
  345. package/lib/utils/params.js +1 -1
  346. package/lib/utils/platform.js +1 -1
  347. package/lib/utils/sleep.js +1 -1
  348. package/lib/utils/template-replacer.js +1 -1
  349. package/lib/utils/update-notice.js +1 -1
  350. package/lib/utils/version.js +1 -1
  351. package/lib/utils/with-active-cookie.js +1 -1
  352. package/lib/utils/write-cli-side-channel.js +1 -1
  353. package/package.json +1 -1
  354. package/skills/rabetbase/SKILL.md +3 -2
  355. package/skills/rabetbase/references/rabetbase-user-account.md +20 -2
  356. package/skills/rabetbase.manifest.json +3 -3
@@ -1 +1 @@
1
- const a151_0x9e9958=a151_0x5636;(function(_0x355768,_0x35dcb0){const _0x5e1563=a151_0x5636,_0x423d68=_0x355768();while(!![]){try{const _0x12de4e=-parseInt(_0x5e1563(0x21b))/0x1*(-parseInt(_0x5e1563(0x1f0))/0x2)+parseInt(_0x5e1563(0x1cf))/0x3+parseInt(_0x5e1563(0x23d))/0x4*(parseInt(_0x5e1563(0x228))/0x5)+parseInt(_0x5e1563(0x1f7))/0x6*(parseInt(_0x5e1563(0x20e))/0x7)+parseInt(_0x5e1563(0x222))/0x8+parseInt(_0x5e1563(0x1f8))/0x9+parseInt(_0x5e1563(0x20c))/0xa*(-parseInt(_0x5e1563(0x1ee))/0xb);if(_0x12de4e===_0x35dcb0)break;else _0x423d68['push'](_0x423d68['shift']());}catch(_0x1590ec){_0x423d68['push'](_0x423d68['shift']());}}}(a151_0x192a,0x449cd));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':a151_0x9e9958(0x22a),'path':a151_0x9e9958(0x237)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a151_0x9e9958(0x20a)},MENU_DELETE_RECURSIVE_FLAG={'name':'recursive','type':a151_0x9e9958(0x232),'description':a151_0x9e9958(0x204)},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':a151_0x9e9958(0x1fa),'description':a151_0x9e9958(0x238)},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a151_0x9e9958(0x1fa),'description':a151_0x9e9958(0x218)};export const menuDelete={'service':'menu','command':a151_0x9e9958(0x1d4),'description':'Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','risk':a151_0x9e9958(0x1de),'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'(_0x2c68e1){_0x2c68e1['bool']('dry-run')?validateDeleteDryRunInput(_0x2c68e1):validateDeleteExecuteInput(_0x2c68e1),requireExplicitYes(_0x2c68e1);},async 'dryRun'(_0x21eb6d){const _0x4f3dd8=a151_0x9e9958;validateDeleteDryRunInput(_0x21eb6d);const _0xa89dbf=await buildDeletePlan(_0x21eb6d),_0x35bc73=createMenuDeletePlanFile(_0x21eb6d[_0x4f3dd8(0x205)],_0xa89dbf),_0x3e38fd=await writeMenuDeletePlan(_0x21eb6d['str'](_0x4f3dd8(0x203)),_0x35bc73),_0x504748=mutationResult({..._0xa89dbf,'planFile':{'path':_0x3e38fd,'createdAt':_0x35bc73[_0x4f3dd8(0x1e7)],'expiresAt':_0x35bc73[_0x4f3dd8(0x230)]}});return menuDryRunResult(_0x504748,{'method':'POST','url':_0x4f3dd8(0x237),'body':{'idList':_0x504748['deleteOrder']},'description':_0x4f3dd8(0x233)+(_0x504748['deleteOrder']?.[_0x4f3dd8(0x1df)]??0x1)+_0x4f3dd8(0x215)+_0x504748[_0x4f3dd8(0x1e3)]['id']+_0x4f3dd8(0x1d2)+_0x3e38fd+'.'});},async 'execute'(_0x21f959){const _0x52a9c7=a151_0x9e9958;requireExplicitYes(_0x21f959),validateDeleteExecuteInput(_0x21f959);const _0x3a9107=await readMenuDeletePlan(_0x21f959['str']('plan')),_0x4f1541=mutationPlanFromDeleteFile(_0x3a9107['plan'],_0x3a9107[_0x52a9c7(0x1c8)]),_0x1d87be=_0x3a9107[_0x52a9c7(0x207)][_0x52a9c7(0x1ef)]['id'];try{assertMenuDeletePlanExecutable(_0x3a9107[_0x52a9c7(0x207)],_0x21f959['appCode']);}catch(_0x236bd8){throw menuFailure(asMenuError(_0x236bd8),_0x4f1541,{'stage':'plan-validation','failed':{'id':_0x1d87be}});}let _0x1f7e4b,_0x30cf3f;try{_0x1f7e4b=await fetchMutationSnapshot(_0x21f959,_0x52a9c7(0x206),_0x1d87be),_0x30cf3f=assertMenuDeletePlanCurrent(_0x3a9107[_0x52a9c7(0x207)],_0x21f959[_0x52a9c7(0x205)],_0x1f7e4b),assertDeleteTargetsComplete(_0x3a9107[_0x52a9c7(0x207)],_0x1f7e4b),_0x30cf3f[_0x52a9c7(0x1e0)](_0x5119a3=>assertDeleteSafety(_0x5119a3,_0x3a9107['plan']['recursive'])),assertNoSharedPages(_0x1f7e4b,_0x30cf3f),assertCascadeMatchesPlan(_0x4f1541,_0x30cf3f);}catch(_0x46796a){throw menuFailure(asMenuError(_0x46796a),_0x4f1541,{'stage':'pre-write-plan-validation','failed':{'id':_0x1d87be}});}const _0x377d02=_0x3a9107['plan'][_0x52a9c7(0x210)];let _0x1231ed;try{_0x1231ed=await batchDeleteMenuEntities(_0x21f959['cookie'],_0x377d02);}catch(_0x4a84cb){const _0x1b0020=mapMenuApiError(_0x4a84cb,_0x52a9c7(0x1e4)),_0x1e47b9=[_0x52a9c7(0x23a)];let _0x4dfde7;try{_0x4dfde7=await readDeleteOutcome(_0x21f959,_0x377d02);}catch(_0x1d4939){const _0x4b5c40=describeMenuErrorCause(_0x1d4939,_0x52a9c7(0x1fe),_0x1d87be);_0x1e47b9['push']('Post-failure\x20menu\x20readback\x20failed\x20('+_0x4b5c40[_0x52a9c7(0x21d)]+_0x52a9c7(0x1f6)+_0x4b5c40['causeMessage']);throw menuFailure(_0x1b0020,_0x4f1541,{'stage':_0x52a9c7(0x1e9),'failed':{'targetIds':_0x377d02,'targetIdsAbsent':_0x52a9c7(0x1e2),..._0x4b5c40},'warnings':_0x1e47b9,'verification':{'status':_0x52a9c7(0x21c),'lookupCommand':_0x52a9c7(0x1ea),'targetIds':_0x377d02}});}throw menuFailure(_0x1b0020,_0x4f1541,{'stage':'batch-delete','succeeded':_0x4dfde7[_0x52a9c7(0x200)][_0x52a9c7(0x216)](_0x59c6e1=>({'id':_0x59c6e1,'deleted':!![]})),'failed':{'targetIds':_0x377d02,'absentIds':_0x4dfde7[_0x52a9c7(0x200)],'remainingIds':_0x4dfde7[_0x52a9c7(0x1d0)]},'warnings':_0x1e47b9,'verification':verificationFromOutcome(_0x4dfde7)});}if(_0x1231ed!==_0x377d02[_0x52a9c7(0x1df)]){const _0x375ebe=menuError('menu_batch_delete_count_mismatch',_0x52a9c7(0x1e1)+_0x1231ed+'\x20deleted\x20menus;\x20expected\x20'+_0x377d02[_0x52a9c7(0x1df)]+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.'),_0x52720c=[_0x52a9c7(0x227)];let _0x3af664;try{_0x3af664=await readDeleteOutcome(_0x21f959,_0x377d02);}catch(_0x3e8a18){const _0x342263=describeMenuErrorCause(_0x3e8a18,_0x52a9c7(0x1ce),_0x1d87be);_0x52720c[_0x52a9c7(0x20d)](_0x52a9c7(0x1e8)+_0x342263[_0x52a9c7(0x21d)]+_0x52a9c7(0x1f6)+_0x342263['causeMessage']);throw menuFailure(_0x375ebe,_0x4f1541,{'stage':_0x52a9c7(0x1e9),'failed':{'targetIds':_0x377d02,'expectedCount':_0x377d02[_0x52a9c7(0x1df)],'reportedDeletedCount':_0x1231ed,'targetIdsAbsent':_0x52a9c7(0x1e2),..._0x342263},'warnings':_0x52720c,'verification':{'status':'failed','lookupCommand':_0x52a9c7(0x1ea),'targetIds':_0x377d02}});}throw menuFailure(_0x375ebe,_0x4f1541,{'stage':'batch-delete','succeeded':_0x3af664[_0x52a9c7(0x200)][_0x52a9c7(0x216)](_0x19cec4=>({'id':_0x19cec4,'deleted':!![]})),'failed':{'targetIds':_0x377d02,'expectedCount':_0x377d02['length'],'reportedDeletedCount':_0x1231ed,'absentIds':_0x3af664[_0x52a9c7(0x200)],'remainingIds':_0x3af664[_0x52a9c7(0x1d0)]},'warnings':_0x52720c,'verification':verificationFromOutcome(_0x3af664)});}let _0x589a6e;try{_0x589a6e=await readDeleteOutcome(_0x21f959,_0x377d02);}catch(_0x1e2642){const _0x281c67=describeMenuErrorCause(_0x1e2642,_0x52a9c7(0x223),_0x1d87be),_0x47edde=asVerificationError(_0x1e2642,_0x52a9c7(0x219)+_0x1d87be+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x47edde,_0x4f1541,{'stage':'verification','succeeded':_0x377d02['map'](_0x932047=>({'id':_0x932047,'deleteRequested':!![]})),'failed':{'id':_0x1d87be,'targetIds':_0x377d02,'targetIdsAbsent':_0x52a9c7(0x1e2),..._0x281c67},'warnings':[_0x52a9c7(0x1ec)],'verification':{'status':_0x52a9c7(0x21c),'lookupCommand':_0x52a9c7(0x1ea),'targetIds':_0x377d02}});}if(_0x589a6e[_0x52a9c7(0x1d0)]['length']>0x0){const _0x241acb=menuError('menu_verification_failed',_0x52a9c7(0x234)+_0x589a6e[_0x52a9c7(0x1d0)][_0x52a9c7(0x20b)](',\x20')+'.',_0x52a9c7(0x22c));throw menuFailure(_0x241acb,_0x4f1541,{'stage':_0x52a9c7(0x23c),'succeeded':_0x377d02[_0x52a9c7(0x216)](_0x5091d0=>({'id':_0x5091d0,'deleteRequested':!![]})),'failed':{'id':_0x1d87be,'targetIds':_0x377d02,'absentIds':_0x589a6e['absentIds'],'remainingIds':_0x589a6e[_0x52a9c7(0x1d0)]},'warnings':[_0x52a9c7(0x1f1)],'verification':verificationFromOutcome(_0x589a6e)});}const _0x326083=_0x377d02[_0x52a9c7(0x216)](_0x27d1f4=>({'id':_0x27d1f4,'deleted':!![]})),_0x52e5ce=mutationResult({..._0x4f1541,'dryRun':![],'succeeded':_0x326083,'verification':{'checkedBy':_0x52a9c7(0x1c5),'plannedSnapshotHash':_0x4f1541['snapshotHash'],'finalSnapshotHash':_0x589a6e[_0x52a9c7(0x202)]['hash'],'reportedDeletedCount':_0x1231ed,'targetAbsent':!_0x589a6e[_0x52a9c7(0x202)][_0x52a9c7(0x23e)][_0x52a9c7(0x1cb)](_0x1d87be),'allTargetsAbsent':!![],'targetIds':_0x377d02}});return{'ok':!![],'data':_0x52e5ce,'message':_0x52a9c7(0x1d7)+_0x326083[_0x52a9c7(0x1df)]+_0x52a9c7(0x215)+_0x1d87be+'.'};}};async function readDeleteOutcome(_0xd5376a,_0x15badb){const _0x22894c=a151_0x9e9958,_0x161119=await fetchMenuSnapshot(_0xd5376a[_0x22894c(0x205)],_0xd5376a[_0x22894c(0x22f)]);return{'snapshot':_0x161119,'absentIds':_0x15badb[_0x22894c(0x21f)](_0x319101=>!_0x161119[_0x22894c(0x23e)][_0x22894c(0x1cb)](_0x319101)),'remainingIds':_0x15badb[_0x22894c(0x21f)](_0x3c806e=>_0x161119[_0x22894c(0x23e)]['has'](_0x3c806e))};}function verificationFromOutcome(_0x3b9e13){const _0x464db4=a151_0x9e9958;return{'checkedBy':_0x464db4(0x1c5),'absentIds':_0x3b9e13[_0x464db4(0x200)],'remainingIds':_0x3b9e13[_0x464db4(0x1d0)]};}function validateDeleteDryRunInput(_0x2b20ee){const _0x5efbef=a151_0x9e9958;validateExactId(_0x2b20ee);if(!hasFlag(_0x2b20ee,_0x5efbef(0x203))||!_0x2b20ee[_0x5efbef(0x231)](_0x5efbef(0x203))['trim']())throw CliErrors['flagMissing'](_0x5efbef(0x203),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x2b20ee,_0x5efbef(0x207)))throw CliErrors[_0x5efbef(0x1fd)](_0x5efbef(0x1e6));}function validateDeleteExecuteInput(_0x54c01a){const _0x17ce0e=a151_0x9e9958;if(!hasFlag(_0x54c01a,'plan')||!_0x54c01a['str'](_0x17ce0e(0x207))[_0x17ce0e(0x1d8)]())throw CliErrors[_0x17ce0e(0x220)]('plan',_0x17ce0e(0x1c4));const _0xb567f4=['id',_0x17ce0e(0x22b),_0x17ce0e(0x203),_0x17ce0e(0x1cc),_0x17ce0e(0x239),_0x17ce0e(0x1f5)]['filter'](_0x85dd70=>hasFlag(_0x54c01a,_0x85dd70));if(_0xb567f4[_0x17ce0e(0x1df)]>0x0)throw CliErrors[_0x17ce0e(0x1fd)](_0x17ce0e(0x1f9)+_0xb567f4[_0x17ce0e(0x216)](_0x4213f3=>'--'+_0x4213f3)[_0x17ce0e(0x20b)](',\x20')+'.');}async function buildDeletePlan(_0x2f54c3){const _0x258b4d=a151_0x9e9958,_0x1471f1=validateExactId(_0x2f54c3),_0x170b34=await fetchMutationSnapshot(_0x2f54c3,_0x258b4d(0x1d5),_0x1471f1),_0x4fdc2e=requireMenu(_0x170b34,_0x1471f1);assertExpectedState(_0x2f54c3,_0x4fdc2e);const _0x5bac1b=_0x2f54c3[_0x258b4d(0x221)](_0x258b4d(0x22b));let _0x3f5c5c;if(_0x5bac1b){if(_0x4fdc2e[_0x258b4d(0x1db)][_0x258b4d(0x1d8)]()[_0x258b4d(0x211)]()!==_0x258b4d(0x1f2))throw menuError(_0x258b4d(0x22d),_0x258b4d(0x1ed)+_0x4fdc2e['id']+'\x20is\x20type\x20\x22'+(_0x4fdc2e[_0x258b4d(0x1db)]||'unknown')+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x3f5c5c=collectDeleteTargets(_0x170b34,_0x4fdc2e),_0x3f5c5c[_0x258b4d(0x1e0)](_0x5a5aca=>assertDeleteSafety(_0x5a5aca,!![]));}else assertDeleteSafety(_0x4fdc2e),_0x3f5c5c=[_0x4fdc2e];assertNoSharedPages(_0x170b34,_0x3f5c5c);const _0x3df852=_0x3f5c5c[_0x258b4d(0x216)](_0x52c1fe=>_0x52c1fe['id']),_0x501387=cascadeForTargets(_0x3f5c5c),_0x2613b4=_0x501387[_0x258b4d(0x225)][_0x258b4d(0x1df)]>0x0?[_0x258b4d(0x1d3)]:[];return mutationResult({'operation':_0x258b4d(0x1d4),'selector':{'id':_0x1471f1,'recursive':_0x5bac1b},'before':_0x4fdc2e,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x258b4d(0x22a),'path':_0x258b4d(0x237),'body':{'idList':_0x3df852}}],'targets':_0x3f5c5c,'deleteOrder':_0x3df852,'snapshotHash':_0x170b34[_0x258b4d(0x1fc)],'cascade':_0x501387,'warnings':_0x2613b4});}function assertDeleteSafety(_0x1fe304,_0x395c5b=![]){const _0x2c8095=a151_0x9e9958,_0x4302a6=_0x1fe304['type'][_0x2c8095(0x1d8)]()[_0x2c8095(0x211)]()===_0x2c8095(0x1f2);if(_0x1fe304[_0x2c8095(0x209)]>0x0&&(!_0x395c5b||!_0x4302a6))throw menuError(_0x2c8095(0x224),_0x2c8095(0x1ed)+_0x1fe304['id']+_0x2c8095(0x1dd)+_0x1fe304[_0x2c8095(0x209)]+_0x2c8095(0x1ff),'Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20'+_0x1fe304[_0x2c8095(0x214)]['join'](',\x20'));if(_0x4302a6&&_0x1fe304[_0x2c8095(0x235)]!=null)throw menuError(_0x2c8095(0x226),'Folder\x20'+_0x1fe304['id']+_0x2c8095(0x1d9)+_0x1fe304['pageId']+_0x2c8095(0x217),_0x2c8095(0x1d1));if(!_0x4302a6)return;if(!_0x1fe304['resourcesValid'])throw menuError(_0x2c8095(0x1c9),_0x2c8095(0x1d6)+_0x1fe304['id']+_0x2c8095(0x1eb),_0x2c8095(0x1cd));if(_0x1fe304[_0x2c8095(0x1f3)][_0x2c8095(0x1df)]>0x0)throw menuError('menu_folder_has_resources','Folder\x20'+_0x1fe304['id']+_0x2c8095(0x201)+_0x1fe304[_0x2c8095(0x1f3)][_0x2c8095(0x1df)]+'\x20resource\x20URL(s).',_0x2c8095(0x23f));}function collectDeleteTargets(_0x57e83b,_0x38d2f8){const _0xf89b66=[],_0x330bdc=new Set(),_0x3311a8=new Set(),_0x4a4c78=_0x3feb50=>{const _0x5fdaaf=a151_0x5636;if(_0x330bdc['has'](_0x3feb50['id']))throw menuError(_0x5fdaaf(0x212),_0x5fdaaf(0x1fb)+_0x3feb50['id']+'.');if(_0x3311a8['has'](_0x3feb50['id']))return;_0x330bdc[_0x5fdaaf(0x20f)](_0x3feb50['id']);for(const _0x48f8ba of _0x3feb50[_0x5fdaaf(0x214)]){const _0x392bfb=_0x57e83b[_0x5fdaaf(0x23e)]['get'](_0x48f8ba);if(!_0x392bfb)throw menuError(_0x5fdaaf(0x212),_0x5fdaaf(0x1ed)+_0x3feb50['id']+'\x20references\x20missing\x20child\x20'+_0x48f8ba+'.');_0x4a4c78(_0x392bfb);}_0x330bdc[_0x5fdaaf(0x1d4)](_0x3feb50['id']),_0x3311a8['add'](_0x3feb50['id']),_0xf89b66['push'](_0x3feb50);};return _0x4a4c78(_0x38d2f8),_0xf89b66;}function assertDeleteTargetsComplete(_0x266af4,_0x546733){const _0x313c4b=a151_0x9e9958,_0xcc88d4=requireMenu(_0x546733,_0x266af4[_0x313c4b(0x1ef)]['id']);if(_0x266af4[_0x313c4b(0x22b)]&&_0xcc88d4[_0x313c4b(0x1db)][_0x313c4b(0x1d8)]()['toLowerCase']()!==_0x313c4b(0x1f2))throw menuError(_0x313c4b(0x23b),_0x313c4b(0x1e5)+_0xcc88d4['id']+'\x20is\x20not\x20a\x20folder.');const _0x4d57af=_0x266af4[_0x313c4b(0x22b)]?collectDeleteTargets(_0x546733,_0xcc88d4)['map'](_0x4dd2b6=>_0x4dd2b6['id']):[_0xcc88d4['id']];if(JSON['stringify'](_0x266af4[_0x313c4b(0x210)])!==JSON[_0x313c4b(0x22e)](_0x4d57af))throw menuError(_0x313c4b(0x23b),_0x313c4b(0x208),_0x313c4b(0x236));}function a151_0x5636(_0x22aa0d,_0x239d15){_0x22aa0d=_0x22aa0d-0x1c4;const _0x192a55=a151_0x192a();let _0x5636ea=_0x192a55[_0x22aa0d];return _0x5636ea;}function assertNoSharedPages(_0x2f08c6,_0x449f8b){const _0x5ce9dc=a151_0x9e9958,_0x1f462f=new Set(_0x449f8b[_0x5ce9dc(0x216)](_0x1e1b76=>_0x1e1b76['id'])),_0x3f8e0a=new Set(_0x449f8b['map'](_0x412f1e=>_0x412f1e[_0x5ce9dc(0x235)])[_0x5ce9dc(0x21f)](_0x3ce5f8=>_0x3ce5f8!=null));if(_0x3f8e0a[_0x5ce9dc(0x1ca)]===0x0)return;const _0x38056a=_0x2f08c6[_0x5ce9dc(0x213)]['filter'](_0x50a095=>!_0x1f462f[_0x5ce9dc(0x1cb)](_0x50a095['id'])&&_0x50a095[_0x5ce9dc(0x235)]!=null&&_0x3f8e0a[_0x5ce9dc(0x1cb)](_0x50a095[_0x5ce9dc(0x235)]));if(_0x38056a[_0x5ce9dc(0x1df)]===0x0)return;const _0x3c2e01=_0x38056a[_0x5ce9dc(0x216)](_0x476155=>_0x5ce9dc(0x1c7)+_0x476155['pageId']+_0x5ce9dc(0x1f4)+_0x476155['id'])[_0x5ce9dc(0x20b)](',\x20');throw menuError('menu_page_shared',_0x5ce9dc(0x229)+_0x3c2e01+'.',_0x5ce9dc(0x1c6));}function assertCascadeMatchesPlan(_0x34063a,_0x32f15f){const _0x1f66bf=a151_0x9e9958,_0x174a63=cascadeForTargets(_0x32f15f);if(JSON['stringify'](_0x34063a[_0x1f66bf(0x21a)])!==JSON['stringify'](_0x174a63))throw menuError(_0x1f66bf(0x23b),_0x1f66bf(0x21e));}function cascadeForTargets(_0x33f888){const _0x4a4187=a151_0x9e9958,_0x473f8=_0x33f888[_0x4a4187(0x216)](_0x1b03de=>_0x1b03de['pageId'])[_0x4a4187(0x21f)](_0x1b3840=>_0x1b3840!=null)[_0x4a4187(0x21f)]((_0xf777dc,_0x5b2dc2,_0x47b731)=>_0x47b731[_0x4a4187(0x1da)](_0xf777dc)===_0x5b2dc2);return{'pages':_0x473f8,'pageSchemaAffected':_0x473f8[_0x4a4187(0x1df)]>0x0};}function asMenuError(_0x564daf){const _0x15e845=a151_0x9e9958;return _0x564daf instanceof CliError?_0x564daf:menuError(_0x15e845(0x23b),_0x564daf instanceof Error?_0x564daf[_0x15e845(0x1dc)]:String(_0x564daf));}function a151_0x192a(){const _0x3d05b7=['Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','hash','validation','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','absentIds','\x20still\x20references\x20','snapshot','plan-out','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','appCode','execute\x20reviewed\x20delete\x20plan','plan','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','childrenCount','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','join','1370990QhFood','push','3371746XkFMzY','add','deleteOrder','toLowerCase','menu_tree_invalid','menus','childrenIds','\x20menu(s)\x20under\x20exact\x20id\x20','map','\x20and\x20cannot\x20be\x20deleted\x20safely.','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','Batch\x20delete\x20request\x20for\x20menu\x20','cascade','405mrbAOR','failed','causeCode','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','filter','flagMissing','bool','629408bzxWGc','verify\x20batch\x20delete','menu_non_empty','pages','menu_delete_page_bound','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','10kItzcQ','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','POST','recursive','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','menu_recursive_requires_folder','stringify','cookie','expiresAt','str','boolean','Would\x20batch\x20delete\x20','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','pageId','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','/smartapi/menu/batchDelete','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','expect-path','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','menu_plan_invalid','verification','286508lnDbgL','byId','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','menu\x20list','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','page\x20','path','menu_folder_resources_invalid','size','has','expect-parent-id','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','179001eHaWkP','remainingIds','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.',';\x20execution\x20must\x20consume\x20','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','delete','plan\x20delete','Folder\x20','Deleted\x20','trim','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','indexOf','type','message','\x20has\x20','high-risk-write','length','forEach','Backend\x20reported\x20','unconfirmed','selector','batch\x20delete','Recursive\x20menu\x20delete\x20plan\x20root\x20','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','createdAt','Post-mismatch\x20menu\x20readback\x20failed\x20(','batch-delete','rabetbase\x20menu\x20list\x20--format\x20json','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Menu\x20','55BpmYtq','target','954HnAxZt','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','folder','resources','\x20->\x20menu\x20','expected-children-count','):\x20','6wvIdht','90648bIOMSm','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','string'];a151_0x192a=function(){return _0x3d05b7;};return a151_0x192a();}
1
+ const a151_0x6c065c=a151_0x2d2c;(function(_0x437e89,_0x4021e0){const _0x347a9d=a151_0x2d2c,_0x623884=_0x437e89();while(!![]){try{const _0xd5ed60=parseInt(_0x347a9d(0xfe))/0x1+-parseInt(_0x347a9d(0xc1))/0x2*(-parseInt(_0x347a9d(0x117))/0x3)+parseInt(_0x347a9d(0xe5))/0x4+parseInt(_0x347a9d(0xe6))/0x5+parseInt(_0x347a9d(0xc7))/0x6+parseInt(_0x347a9d(0xf4))/0x7*(parseInt(_0x347a9d(0xb9))/0x8)+-parseInt(_0x347a9d(0x124))/0x9;if(_0xd5ed60===_0x4021e0)break;else _0x623884['push'](_0x623884['shift']());}catch(_0x46b09e){_0x623884['push'](_0x623884['shift']());}}}(a151_0x3360,0xdcaf0));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';function a151_0x2d2c(_0x5ad873,_0xc6cd3){_0x5ad873=_0x5ad873-0xb6;const _0x3360df=a151_0x3360();let _0x2d2c9b=_0x3360df[_0x5ad873];return _0x2d2c9b;}import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a151_0x6c065c(0xe9),'path':a151_0x6c065c(0xfa)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':a151_0x6c065c(0xf7),'type':a151_0x6c065c(0x11a),'description':a151_0x6c065c(0x108)},MENU_DELETE_PLAN_OUT_FLAG={'name':a151_0x6c065c(0x116),'type':a151_0x6c065c(0xd3),'description':a151_0x6c065c(0x128)},MENU_DELETE_PLAN_FLAG={'name':a151_0x6c065c(0x11f),'type':a151_0x6c065c(0xd3),'description':a151_0x6c065c(0x122)};export const menuDelete={'service':'menu','command':a151_0x6c065c(0x10a),'description':a151_0x6c065c(0x126),'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'(_0x46287f){const _0x3e42c5=a151_0x6c065c;_0x46287f[_0x3e42c5(0x110)](_0x3e42c5(0xbe))?validateDeleteDryRunInput(_0x46287f):validateDeleteExecuteInput(_0x46287f),requireExplicitYes(_0x46287f);},async 'dryRun'(_0x36ad8c){const _0x1ff730=a151_0x6c065c;validateDeleteDryRunInput(_0x36ad8c);const _0x4526ed=await buildDeletePlan(_0x36ad8c),_0x2317db=createMenuDeletePlanFile(_0x36ad8c[_0x1ff730(0xdf)],_0x4526ed),_0x547b06=await writeMenuDeletePlan(_0x36ad8c['str'](_0x1ff730(0x116)),_0x2317db),_0x65c29c=mutationResult({..._0x4526ed,'planFile':{'path':_0x547b06,'createdAt':_0x2317db[_0x1ff730(0x10f)],'expiresAt':_0x2317db[_0x1ff730(0xe8)]}});return menuDryRunResult(_0x65c29c,{'method':_0x1ff730(0xe9),'url':_0x1ff730(0xfa),'body':{'idList':_0x65c29c[_0x1ff730(0xfc)]},'description':_0x1ff730(0xea)+(_0x65c29c[_0x1ff730(0xfc)]?.[_0x1ff730(0xcc)]??0x1)+_0x1ff730(0x102)+_0x65c29c['selector']['id']+';\x20execution\x20must\x20consume\x20'+_0x547b06+'.'});},async 'execute'(_0x155697){const _0x27d528=a151_0x6c065c;requireExplicitYes(_0x155697),validateDeleteExecuteInput(_0x155697);const _0x422070=await readMenuDeletePlan(_0x155697[_0x27d528(0xcb)](_0x27d528(0x11f))),_0x55273b=mutationPlanFromDeleteFile(_0x422070[_0x27d528(0x11f)],_0x422070['path']),_0x111dc5=_0x422070[_0x27d528(0x11f)]['target']['id'];try{assertMenuDeletePlanExecutable(_0x422070[_0x27d528(0x11f)],_0x155697['appCode']);}catch(_0x36d4ef){throw menuFailure(asMenuError(_0x36d4ef),_0x55273b,{'stage':_0x27d528(0xe4),'failed':{'id':_0x111dc5}});}let _0x252cb1,_0x3d9490;try{_0x252cb1=await fetchMutationSnapshot(_0x155697,'execute\x20reviewed\x20delete\x20plan',_0x111dc5),_0x3d9490=assertMenuDeletePlanCurrent(_0x422070[_0x27d528(0x11f)],_0x155697[_0x27d528(0xdf)],_0x252cb1),assertDeleteTargetsComplete(_0x422070['plan'],_0x252cb1),_0x3d9490['forEach'](_0x4cb3bb=>assertDeleteSafety(_0x4cb3bb,_0x422070[_0x27d528(0x11f)][_0x27d528(0xf7)])),assertNoSharedPages(_0x252cb1,_0x3d9490),assertCascadeMatchesPlan(_0x55273b,_0x3d9490);}catch(_0x58805e){throw menuFailure(asMenuError(_0x58805e),_0x55273b,{'stage':_0x27d528(0xf5),'failed':{'id':_0x111dc5}});}const _0x4fe573=_0x422070['plan'][_0x27d528(0xfc)];let _0x1f1173;try{_0x1f1173=await batchDeleteMenuEntities(_0x155697[_0x27d528(0xd2)],_0x4fe573);}catch(_0x3cce26){const _0x401388=mapMenuApiError(_0x3cce26,'batch\x20delete'),_0x3e86a4=[_0x27d528(0xee)];let _0x3fe4a5;try{_0x3fe4a5=await readDeleteOutcome(_0x155697,_0x4fe573);}catch(_0x2c58d2){const _0x57b9cd=describeMenuErrorCause(_0x2c58d2,_0x27d528(0xef),_0x111dc5);_0x3e86a4[_0x27d528(0xd4)](_0x27d528(0xdb)+_0x57b9cd[_0x27d528(0x11b)]+_0x27d528(0xd6)+_0x57b9cd[_0x27d528(0x100)]);throw menuFailure(_0x401388,_0x55273b,{'stage':_0x27d528(0xc6),'failed':{'targetIds':_0x4fe573,'targetIdsAbsent':'unconfirmed',..._0x57b9cd},'warnings':_0x3e86a4,'verification':{'status':_0x27d528(0xd8),'lookupCommand':_0x27d528(0xe2),'targetIds':_0x4fe573}});}throw menuFailure(_0x401388,_0x55273b,{'stage':_0x27d528(0xc6),'succeeded':_0x3fe4a5[_0x27d528(0xc2)]['map'](_0x4ae09b=>({'id':_0x4ae09b,'deleted':!![]})),'failed':{'targetIds':_0x4fe573,'absentIds':_0x3fe4a5[_0x27d528(0xc2)],'remainingIds':_0x3fe4a5[_0x27d528(0xdc)]},'warnings':_0x3e86a4,'verification':verificationFromOutcome(_0x3fe4a5)});}if(_0x1f1173!==_0x4fe573['length']){const _0x5cc7d1=menuError(_0x27d528(0xfb),_0x27d528(0xc3)+_0x1f1173+_0x27d528(0xf0)+_0x4fe573[_0x27d528(0xcc)]+'.',_0x27d528(0xfd)),_0x763582=[_0x27d528(0x105)];let _0x590055;try{_0x590055=await readDeleteOutcome(_0x155697,_0x4fe573);}catch(_0x2136f8){const _0x2ae972=describeMenuErrorCause(_0x2136f8,_0x27d528(0xf9),_0x111dc5);_0x763582[_0x27d528(0xd4)](_0x27d528(0xbc)+_0x2ae972[_0x27d528(0x11b)]+'):\x20'+_0x2ae972[_0x27d528(0x100)]);throw menuFailure(_0x5cc7d1,_0x55273b,{'stage':_0x27d528(0xc6),'failed':{'targetIds':_0x4fe573,'expectedCount':_0x4fe573['length'],'reportedDeletedCount':_0x1f1173,'targetIdsAbsent':_0x27d528(0xc8),..._0x2ae972},'warnings':_0x763582,'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x4fe573}});}throw menuFailure(_0x5cc7d1,_0x55273b,{'stage':'batch-delete','succeeded':_0x590055[_0x27d528(0xc2)][_0x27d528(0xf8)](_0x5700a0=>({'id':_0x5700a0,'deleted':!![]})),'failed':{'targetIds':_0x4fe573,'expectedCount':_0x4fe573[_0x27d528(0xcc)],'reportedDeletedCount':_0x1f1173,'absentIds':_0x590055['absentIds'],'remainingIds':_0x590055['remainingIds']},'warnings':_0x763582,'verification':verificationFromOutcome(_0x590055)});}let _0x4d67e9;try{_0x4d67e9=await readDeleteOutcome(_0x155697,_0x4fe573);}catch(_0xb9a5c){const _0x128e38=describeMenuErrorCause(_0xb9a5c,'verify\x20batch\x20delete',_0x111dc5),_0x383105=asVerificationError(_0xb9a5c,_0x27d528(0xed)+_0x111dc5+_0x27d528(0x101));throw menuFailure(_0x383105,_0x55273b,{'stage':_0x27d528(0xf3),'succeeded':_0x4fe573[_0x27d528(0xf8)](_0x388af8=>({'id':_0x388af8,'deleteRequested':!![]})),'failed':{'id':_0x111dc5,'targetIds':_0x4fe573,'targetIdsAbsent':_0x27d528(0xc8),..._0x128e38},'warnings':[_0x27d528(0x127)],'verification':{'status':_0x27d528(0xd8),'lookupCommand':_0x27d528(0xe2),'targetIds':_0x4fe573}});}if(_0x4d67e9[_0x27d528(0xdc)]['length']>0x0){const _0x33454b=menuError('menu_verification_failed',_0x27d528(0x123)+_0x4d67e9[_0x27d528(0xdc)]['join'](',\x20')+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.');throw menuFailure(_0x33454b,_0x55273b,{'stage':_0x27d528(0xf3),'succeeded':_0x4fe573[_0x27d528(0xf8)](_0x33f736=>({'id':_0x33f736,'deleteRequested':!![]})),'failed':{'id':_0x111dc5,'targetIds':_0x4fe573,'absentIds':_0x4d67e9['absentIds'],'remainingIds':_0x4d67e9[_0x27d528(0xdc)]},'warnings':['The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.'],'verification':verificationFromOutcome(_0x4d67e9)});}const _0x3cc7bf=_0x4fe573[_0x27d528(0xf8)](_0x7aa27b=>({'id':_0x7aa27b,'deleted':!![]})),_0xda77e8=mutationResult({..._0x55273b,'dryRun':![],'succeeded':_0x3cc7bf,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x55273b['snapshotHash'],'finalSnapshotHash':_0x4d67e9[_0x27d528(0xda)][_0x27d528(0xb7)],'reportedDeletedCount':_0x1f1173,'targetAbsent':!_0x4d67e9[_0x27d528(0xda)][_0x27d528(0x10c)][_0x27d528(0x125)](_0x111dc5),'allTargetsAbsent':!![],'targetIds':_0x4fe573}});return{'ok':!![],'data':_0xda77e8,'message':'Deleted\x20'+_0x3cc7bf['length']+_0x27d528(0x102)+_0x111dc5+'.'};}};async function readDeleteOutcome(_0x5f59c5,_0xcd0a40){const _0x4d7233=a151_0x6c065c,_0x3d7576=await fetchMenuSnapshot(_0x5f59c5[_0x4d7233(0xdf)],_0x5f59c5['cookie']);return{'snapshot':_0x3d7576,'absentIds':_0xcd0a40[_0x4d7233(0x120)](_0x5aad5f=>!_0x3d7576[_0x4d7233(0x10c)][_0x4d7233(0x125)](_0x5aad5f)),'remainingIds':_0xcd0a40[_0x4d7233(0x120)](_0x3a41ea=>_0x3d7576[_0x4d7233(0x10c)][_0x4d7233(0x125)](_0x3a41ea))};}function verificationFromOutcome(_0x321819){const _0x3e4669=a151_0x6c065c;return{'checkedBy':_0x3e4669(0xd9),'absentIds':_0x321819['absentIds'],'remainingIds':_0x321819[_0x3e4669(0xdc)]};}function validateDeleteDryRunInput(_0x5ea405){const _0x53d728=a151_0x6c065c;validateExactId(_0x5ea405);if(!hasFlag(_0x5ea405,_0x53d728(0x116))||!_0x5ea405['str'](_0x53d728(0x116))[_0x53d728(0x104)]())throw CliErrors['flagMissing'](_0x53d728(0x116),_0x53d728(0x10d));if(hasFlag(_0x5ea405,_0x53d728(0x11f)))throw CliErrors[_0x53d728(0x12a)](_0x53d728(0x111));}function validateDeleteExecuteInput(_0x25b691){const _0x3e4956=a151_0x6c065c;if(!hasFlag(_0x25b691,_0x3e4956(0x11f))||!_0x25b691[_0x3e4956(0xcb)](_0x3e4956(0x11f))[_0x3e4956(0x104)]())throw CliErrors['flagMissing']('plan',_0x3e4956(0xbf));const _0x1b7ebd=['id',_0x3e4956(0xf7),_0x3e4956(0x116),_0x3e4956(0xb6),_0x3e4956(0xe1),_0x3e4956(0xc4)]['filter'](_0x5a7a8a=>hasFlag(_0x25b691,_0x5a7a8a));if(_0x1b7ebd['length']>0x0)throw CliErrors['validation'](_0x3e4956(0x118)+_0x1b7ebd[_0x3e4956(0xf8)](_0x27068d=>'--'+_0x27068d)[_0x3e4956(0x119)](',\x20')+'.');}async function buildDeletePlan(_0x46baf1){const _0x5afc56=a151_0x6c065c,_0x5b2fdd=validateExactId(_0x46baf1),_0x3460dc=await fetchMutationSnapshot(_0x46baf1,_0x5afc56(0xe0),_0x5b2fdd),_0x51c5fb=requireMenu(_0x3460dc,_0x5b2fdd);assertExpectedState(_0x46baf1,_0x51c5fb);const _0x46079b=_0x46baf1[_0x5afc56(0x110)](_0x5afc56(0xf7));let _0x246dac;if(_0x46079b){if(_0x51c5fb[_0x5afc56(0xe7)][_0x5afc56(0x104)]()[_0x5afc56(0xca)]()!==_0x5afc56(0x11e))throw menuError(_0x5afc56(0xbb),_0x5afc56(0xbd)+_0x51c5fb['id']+_0x5afc56(0xc5)+(_0x51c5fb[_0x5afc56(0xe7)]||_0x5afc56(0xd1))+_0x5afc56(0x10e));_0x246dac=collectDeleteTargets(_0x3460dc,_0x51c5fb),_0x246dac[_0x5afc56(0xdd)](_0x315a76=>assertDeleteSafety(_0x315a76,!![]));}else assertDeleteSafety(_0x51c5fb),_0x246dac=[_0x51c5fb];assertNoSharedPages(_0x3460dc,_0x246dac);const _0x3e3e8f=_0x246dac[_0x5afc56(0xf8)](_0x1c4b51=>_0x1c4b51['id']),_0x14ecba=cascadeForTargets(_0x246dac),_0x1100cb=_0x14ecba[_0x5afc56(0xf1)][_0x5afc56(0xcc)]>0x0?[_0x5afc56(0x103)]:[];return mutationResult({'operation':_0x5afc56(0x10a),'selector':{'id':_0x5b2fdd,'recursive':_0x46079b},'before':_0x51c5fb,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x5afc56(0x114),'method':_0x5afc56(0xe9),'path':_0x5afc56(0xfa),'body':{'idList':_0x3e3e8f}}],'targets':_0x246dac,'deleteOrder':_0x3e3e8f,'snapshotHash':_0x3460dc[_0x5afc56(0xb7)],'cascade':_0x14ecba,'warnings':_0x1100cb});}function assertDeleteSafety(_0x2cd544,_0x1f4ece=![]){const _0xe39cf7=a151_0x6c065c,_0x3b734b=_0x2cd544['type']['trim']()['toLowerCase']()===_0xe39cf7(0x11e);if(_0x2cd544['childrenCount']>0x0&&(!_0x1f4ece||!_0x3b734b))throw menuError('menu_non_empty',_0xe39cf7(0xbd)+_0x2cd544['id']+_0xe39cf7(0x11c)+_0x2cd544[_0xe39cf7(0xc0)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0xe39cf7(0xd0)+_0x2cd544[_0xe39cf7(0xf2)][_0xe39cf7(0x119)](',\x20'));if(_0x3b734b&&_0x2cd544[_0xe39cf7(0xff)]!=null)throw menuError('menu_delete_page_bound','Folder\x20'+_0x2cd544['id']+_0xe39cf7(0xec)+_0x2cd544[_0xe39cf7(0xff)]+_0xe39cf7(0xe3),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x3b734b)return;if(!_0x2cd544['resourcesValid'])throw menuError(_0xe39cf7(0x12b),'Folder\x20'+_0x2cd544['id']+_0xe39cf7(0x112),_0xe39cf7(0x115));if(_0x2cd544['resources']['length']>0x0)throw menuError('menu_folder_has_resources',_0xe39cf7(0x11d)+_0x2cd544['id']+_0xe39cf7(0x107)+_0x2cd544['resources']['length']+'\x20resource\x20URL(s).',_0xe39cf7(0xf6));}function collectDeleteTargets(_0x1f3641,_0x3cf0c3){const _0x41898d=[],_0x28d5a3=new Set(),_0x3eeba6=new Set(),_0x440016=_0x4a4d5f=>{const _0x742015=a151_0x2d2c;if(_0x28d5a3[_0x742015(0x125)](_0x4a4d5f['id']))throw menuError(_0x742015(0xde),_0x742015(0x10b)+_0x4a4d5f['id']+'.');if(_0x3eeba6['has'](_0x4a4d5f['id']))return;_0x28d5a3[_0x742015(0xcd)](_0x4a4d5f['id']);for(const _0x5d7246 of _0x4a4d5f['childrenIds']){const _0x48bc54=_0x1f3641[_0x742015(0x10c)]['get'](_0x5d7246);if(!_0x48bc54)throw menuError(_0x742015(0xde),'Menu\x20'+_0x4a4d5f['id']+'\x20references\x20missing\x20child\x20'+_0x5d7246+'.');_0x440016(_0x48bc54);}_0x28d5a3['delete'](_0x4a4d5f['id']),_0x3eeba6[_0x742015(0xcd)](_0x4a4d5f['id']),_0x41898d[_0x742015(0xd4)](_0x4a4d5f);};return _0x440016(_0x3cf0c3),_0x41898d;}function assertDeleteTargetsComplete(_0x1d07fb,_0x35d59e){const _0x2c33cf=a151_0x6c065c,_0x5d0721=requireMenu(_0x35d59e,_0x1d07fb[_0x2c33cf(0x113)]['id']);if(_0x1d07fb[_0x2c33cf(0xf7)]&&_0x5d0721[_0x2c33cf(0xe7)][_0x2c33cf(0x104)]()[_0x2c33cf(0xca)]()!==_0x2c33cf(0x11e))throw menuError('menu_plan_invalid',_0x2c33cf(0xeb)+_0x5d0721['id']+'\x20is\x20not\x20a\x20folder.');const _0x28e756=_0x1d07fb[_0x2c33cf(0xf7)]?collectDeleteTargets(_0x35d59e,_0x5d0721)[_0x2c33cf(0xf8)](_0x167109=>_0x167109['id']):[_0x5d0721['id']];if(JSON['stringify'](_0x1d07fb[_0x2c33cf(0xfc)])!==JSON['stringify'](_0x28e756))throw menuError(_0x2c33cf(0xce),_0x2c33cf(0xc9),_0x2c33cf(0x106));}function a151_0x3360(){const _0x39ac5d=['Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','54683649pFjXMn','has','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','menu_page_shared','validation','menu_folder_resources_invalid','expect-parent-id','hash','\x20->\x20menu\x20','16dnaQbp','menus','menu_recursive_requires_folder','Post-mismatch\x20menu\x20readback\x20failed\x20(','Menu\x20','dry-run','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','childrenCount','11642hcIpFC','absentIds','Backend\x20reported\x20','expected-children-count','\x20is\x20type\x20\x22','batch-delete','10066518AigANa','unconfirmed','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','toLowerCase','str','length','add','menu_plan_invalid','stringify','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','unknown','cookie','string','push','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','):\x20','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','failed','menu\x20list','snapshot','Post-failure\x20menu\x20readback\x20failed\x20(','remainingIds','forEach','menu_tree_invalid','appCode','plan\x20delete','expect-path','rabetbase\x20menu\x20list\x20--format\x20json','\x20and\x20cannot\x20be\x20deleted\x20safely.','plan-validation','3511640zTSYdf','3601670JsAcqz','type','expiresAt','POST','Would\x20batch\x20delete\x20','Recursive\x20menu\x20delete\x20plan\x20root\x20','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','Batch\x20delete\x20request\x20for\x20menu\x20','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','\x20deleted\x20menus;\x20expected\x20','pages','childrenIds','verification','4423804bXEWon','pre-write-plan-validation','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','recursive','map','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','/smartapi/menu/batchDelete','menu_batch_delete_count_mismatch','deleteOrder','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','897375iOHrqg','pageId','causeMessage','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','\x20menu(s)\x20under\x20exact\x20id\x20','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','trim','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','\x20still\x20references\x20','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','message','delete','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','byId','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','createdAt','bool','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','target','batch-delete-menu','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','plan-out','795plfDSB','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','join','boolean','causeCode','\x20has\x20','Folder\x20','folder','plan','filter','cascade'];a151_0x3360=function(){return _0x39ac5d;};return a151_0x3360();}function assertNoSharedPages(_0x14a6dd,_0x3a247f){const _0xe5dc21=a151_0x6c065c,_0x59c5f3=new Set(_0x3a247f[_0xe5dc21(0xf8)](_0x2ff457=>_0x2ff457['id'])),_0x12fa65=new Set(_0x3a247f[_0xe5dc21(0xf8)](_0x3ae277=>_0x3ae277[_0xe5dc21(0xff)])[_0xe5dc21(0x120)](_0xdd2ca0=>_0xdd2ca0!=null));if(_0x12fa65['size']===0x0)return;const _0x2d71ec=_0x14a6dd[_0xe5dc21(0xba)][_0xe5dc21(0x120)](_0x290089=>!_0x59c5f3[_0xe5dc21(0x125)](_0x290089['id'])&&_0x290089[_0xe5dc21(0xff)]!=null&&_0x12fa65[_0xe5dc21(0x125)](_0x290089[_0xe5dc21(0xff)]));if(_0x2d71ec[_0xe5dc21(0xcc)]===0x0)return;const _0x4a4ba7=_0x2d71ec[_0xe5dc21(0xf8)](_0xf3450a=>'page\x20'+_0xf3450a[_0xe5dc21(0xff)]+_0xe5dc21(0xb8)+_0xf3450a['id'])[_0xe5dc21(0x119)](',\x20');throw menuError(_0xe5dc21(0x129),_0xe5dc21(0xd7)+_0x4a4ba7+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x4ecf35,_0x7a6a82){const _0x45d296=a151_0x6c065c,_0x1bd9d5=cascadeForTargets(_0x7a6a82);if(JSON[_0x45d296(0xcf)](_0x4ecf35[_0x45d296(0x121)])!==JSON['stringify'](_0x1bd9d5))throw menuError(_0x45d296(0xce),_0x45d296(0xd5));}function cascadeForTargets(_0x2a654b){const _0x37e1f3=a151_0x6c065c,_0x50fc53=_0x2a654b[_0x37e1f3(0xf8)](_0xa0ba5b=>_0xa0ba5b[_0x37e1f3(0xff)])[_0x37e1f3(0x120)](_0x3e5be2=>_0x3e5be2!=null)[_0x37e1f3(0x120)]((_0x3bf789,_0x543ba1,_0x144194)=>_0x144194['indexOf'](_0x3bf789)===_0x543ba1);return{'pages':_0x50fc53,'pageSchemaAffected':_0x50fc53[_0x37e1f3(0xcc)]>0x0};}function asMenuError(_0x26e4db){const _0x40199d=a151_0x6c065c;return _0x26e4db instanceof CliError?_0x26e4db:menuError(_0x40199d(0xce),_0x26e4db instanceof Error?_0x26e4db[_0x40199d(0x109)]:String(_0x26e4db));}
@@ -1 +1 @@
1
- const a152_0x137939=a152_0x3742;(function(_0x58bea4,_0x267ac4){const _0x46e717=a152_0x3742,_0x243f59=_0x58bea4();while(!![]){try{const _0x47c380=parseInt(_0x46e717(0x99))/0x1+-parseInt(_0x46e717(0xf4))/0x2*(parseInt(_0x46e717(0xa6))/0x3)+-parseInt(_0x46e717(0xfc))/0x4+parseInt(_0x46e717(0x88))/0x5*(parseInt(_0x46e717(0xd9))/0x6)+parseInt(_0x46e717(0xf7))/0x7*(parseInt(_0x46e717(0xd4))/0x8)+-parseInt(_0x46e717(0x9d))/0x9*(-parseInt(_0x46e717(0xb0))/0xa)+-parseInt(_0x46e717(0xd8))/0xb;if(_0x47c380===_0x267ac4)break;else _0x243f59['push'](_0x243f59['shift']());}catch(_0x17c691){_0x243f59['push'](_0x243f59['shift']());}}}(a152_0x5a05,0x8d9fe));function a152_0x3742(_0x41319b,_0x43e8b4){_0x41319b=_0x41319b-0x83;const _0x5a05c5=a152_0x5a05();let _0x3742cf=_0x5a05c5[_0x41319b];return _0x3742cf;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a152_0x5a05(){const _0x194794=['menu_create_recovery_required','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','has','menu_sort_invalid','before','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','currentSnapshotHash','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','trim','Menu\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','parentId','after','https:','map','entries','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','rabetbase\x20menu\x20list\x20--appcode\x20','replace','prototype','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','causemessage','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','stringify','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','pre-write-recheck','isSafeInteger','menu_create_response_invalid','2968pmFzVH','username','string','sort','5678244IyVjhT','6TGuSQD','verification','expectedPath','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','hasOwnProperty','parent-id','Created\x20menu\x20','Whether\x20the\x20menu\x20is\x20visible','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','embedded','cookie','failed','<platform-generated>','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','fact','fromEntries','data','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','appCode','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','menu_permission_denied','label','Would\x20create\x20external\x20website\x20link\x20menu\x20','<redacted>','createdId','byId','hash','1977186YKLGXF','\x20could\x20not\x20be\x20verified.','External\x20HTTPS\x20URL','13482SIaauc','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','menu_url_invalid','menu_mutation_failed','menu_not_found','1828004PnLMDh','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','URL','filter','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','create\x20external\x20menu','external-link-create','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','readbackerror','\x20--format\x20compress','Create\x20an\x20external\x20website\x20link\x20menu','Created\x20external\x20menu\x20','url','snapshot','Provide\x20an\x20HTTPS\x20URL.','write','afterPlan','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','cause','POST','1907975yCQhtF','visible','menu_url_credentials_forbidden','selector','flagMissing','menu','lookupCommand','iframe','create-response-validation','succeeded','str','open-mode','boolean','create-menu','plan','get','length','1034692CGORWo','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','path','336321bvAzkM','menus','body','add','password','object','visibility','\x20failed\x20final\x20verification.','Run\x20','3jcpDpv','\x27\x5c\x27\x27','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','code','External\x20menu\x20creation\x20failed.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','menu_verification_failed','menu_parent_not_folder','expectedSnapshotHash','isArray','110WaRPKP','/smartapi/menu/create','type'];a152_0x5a05=function(){return _0x194794;};return a152_0x5a05();}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':a152_0x137939(0x8f),'new-window':'link'};export function validateExternalMenuUrl(_0x2ea2ad){const _0x7d6402=a152_0x137939,_0x18e8e6=_0x2ea2ad[_0x7d6402(0xbd)]();let _0x57bf09;try{_0x57bf09=new URL(_0x18e8e6);}catch{throw menuError(_0x7d6402(0xf9),_0x7d6402(0x100),_0x7d6402(0xc7));}if(_0x57bf09['protocol']!==_0x7d6402(0xc4))throw menuError('menu_url_https_required',_0x7d6402(0xc1),_0x7d6402(0x10b));if(_0x57bf09[_0x7d6402(0xd5)]||_0x57bf09[_0x7d6402(0xa1)])throw menuError(_0x7d6402(0x8a),_0x7d6402(0xab),_0x7d6402(0x85));return _0x18e8e6;}export const menuExternalLinkCreate={'service':a152_0x137939(0x8d),'command':a152_0x137939(0x102),'description':a152_0x137939(0x107),'risk':a152_0x137939(0x83),'structuredErrors':!![],'flags':[{'name':a152_0x137939(0xee),'type':'string','required':!![],'description':'Menu\x20label'},{'name':a152_0x137939(0x93),'type':a152_0x137939(0xd6),'required':!![],'enum':[a152_0x137939(0xe2),'new-window'],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a152_0x137939(0x109),'type':a152_0x137939(0xd6),'required':!![],'description':a152_0x137939(0xf6)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a152_0x137939(0x89),'type':a152_0x137939(0x94),'default':!![],'description':a152_0x137939(0xe0)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4200d2){validateAddInput(_0x4200d2);},async 'dryRun'(_0x119402){const _0x3c04c7=a152_0x137939;validateAddInput(_0x119402);const {plan:_0x1f0ae6}=await buildSafeAddPlan(_0x119402,!![]),_0x2dfb4d=_0x1f0ae6['after'],_0x1d385a=createBody(_0x2dfb4d);return menuDryRunResult(_0x1f0ae6,{'method':_0x3c04c7(0x87),'url':_0x3c04c7(0xb1),'body':_0x1d385a,'description':_0x3c04c7(0xef)+JSON[_0x3c04c7(0xcf)](_0x2dfb4d[_0x3c04c7(0xee)])+'\x20with\x20'+_0x119402[_0x3c04c7(0x92)]('open-mode')+_0x3c04c7(0xb8)});},async 'execute'(_0x2c5f02){const _0x685a48=a152_0x137939;validateAddInput(_0x2c5f02);const _0x6cbb79=await buildSafeAddPlan(_0x2c5f02,![]),{plan:_0x43ee5d,snapshot:_0x4731c4}=_0x6cbb79,_0x1b25fa=_0x43ee5d[_0x685a48(0xc3)],_0x1f4701=buildMenuLookupCommand(_0x2c5f02[_0x685a48(0xeb)]);await recheckAddSnapshot(_0x2c5f02,_0x43ee5d);let _0x5ed522;try{_0x5ed522=await createMenuEntity(_0x2c5f02['appCode'],_0x2c5f02['cookie'],createBody(_0x1b25fa));}catch(_0x343f42){const _0x22af81=mapMenuApiError(_0x343f42,_0x685a48(0x101));if(!isMenuResponseLoss(_0x343f42)||_0x22af81[_0x685a48(0xa9)]===_0x685a48(0xed))throw externalLinkCreateFailure(_0x22af81,_0x43ee5d,{'stage':'create','failed':{},'verification':{'status':_0x685a48(0xe4),'lookupCommand':_0x1f4701}});return recoverAfterResponseLoss(_0x2c5f02,_0x6cbb79,_0x1f4701);}const _0x5d59af=Number(_0x5ed522?.['id']),_0x1495d=typeof _0x5ed522?.[_0x685a48(0x9c)]===_0x685a48(0xd6)?_0x5ed522[_0x685a48(0x9c)]:'';if(!Number[_0x685a48(0xd2)](_0x5d59af)||_0x5d59af<=0x0||!_0x1495d[_0x685a48(0xbd)]()){const _0x1f80f7=menuError(_0x685a48(0xd3),_0x685a48(0xbc),_0x685a48(0xa5)+_0x1f4701+_0x685a48(0xfd));throw externalLinkCreateFailure(_0x1f80f7,_0x43ee5d,{'stage':_0x685a48(0x90),'succeeded':Number[_0x685a48(0xd2)](_0x5d59af)&&_0x5d59af>0x0?[{'id':_0x5d59af,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x5d59af)?_0x5d59af:null,'generatedPathConfirmed':Boolean(_0x1495d[_0x685a48(0xbd)]())},'warnings':[_0x685a48(0xec)],'after':Number[_0x685a48(0xd2)](_0x5d59af)&&_0x5d59af>0x0?{..._0x1b25fa,'id':_0x5d59af,'path':_0x1495d}:_0x1b25fa,'verification':{'status':_0x685a48(0xe4),'lookupCommand':_0x1f4701,...Number[_0x685a48(0xd2)](_0x5d59af)&&_0x5d59af>0x0?{'targetId':_0x5d59af}:{}}});}const _0x28f593=await readAndVerifyCreatedMenu({'appCode':_0x2c5f02[_0x685a48(0xeb)],'cookie':_0x2c5f02[_0x685a48(0xe3)],'plan':_0x43ee5d,'afterPlan':_0x1b25fa,'createdId':_0x5d59af,'expectedPath':_0x1495d,'lookupCommand':_0x1f4701,'recovered':![]});return creationSuccess(_0x43ee5d,_0x28f593[_0x685a48(0x10a)],_0x28f593[_0x685a48(0xe7)],![]);}};function validateAddInput(_0xb9c18a){const _0x4facdd=a152_0x137939;if(!_0xb9c18a['str']('label')[_0x4facdd(0xbd)]())throw CliErrors[_0x4facdd(0x8c)](_0x4facdd(0xee));resolveExternalMenuType(_0xb9c18a),validateExternalMenuUrl(_0xb9c18a[_0x4facdd(0x92)](_0x4facdd(0x109))),parseParentId(_0xb9c18a,_0x4facdd(0xde)),validateSort(_0xb9c18a);}function resolveExternalMenuType(_0x18b75b){const _0x4b2345=a152_0x137939,_0x3e5463=_0x18b75b[_0x4b2345(0x92)](_0x4b2345(0x93))['trim']();if(!_0x3e5463)throw CliErrors['flagMissing'](_0x4b2345(0x93));const _0x4cf2eb=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x3e5463];if(!_0x4cf2eb)throw menuError('menu_open_mode_invalid',_0x4b2345(0xbb),_0x4b2345(0x9a));return _0x4cf2eb;}async function buildAddPlan(_0x3a5d47,_0x480bbe){const _0x52adb7=a152_0x137939,_0xe0f923=await fetchMutationSnapshot(_0x3a5d47,'create\x20external\x20menu'),_0x2c3840=parseParentId(_0x3a5d47,_0x52adb7(0xde))??null;if(_0x2c3840!=null)requireFolder(_0xe0f923,_0x2c3840);const _0x2fd217=validateSort(_0x3a5d47),_0x30699d=_0x2fd217??nextSiblingSort(_0xe0f923,_0x2c3840,_0x52adb7(0x8d)),_0x92d944=_0x3a5d47[_0x52adb7(0x92)](_0x52adb7(0xee))['trim'](),_0x3903f6=resolveExternalMenuType(_0x3a5d47),_0x21702f=validateExternalMenuUrl(_0x3a5d47[_0x52adb7(0x92)]('url')),_0x5ba0a9=Object[_0x52adb7(0xca)][_0x52adb7(0xdd)]['call'](_0x3a5d47['rawFlags'],_0x52adb7(0x89))?_0x3a5d47['bool'](_0x52adb7(0x89)):!![],_0x253741={'id':null,'parentId':_0x2c3840,'label':_0x92d944,'path':_0x52adb7(0xe5),'url':_0x21702f,'type':_0x3903f6,'visible':_0x5ba0a9,'sort':_0x30699d},_0x433724=buildMenuLookupCommand(_0x3a5d47['appCode']),_0x39400c=mutationResult({'operation':_0x52adb7(0xa0),'selector':{'parentId':_0x2c3840,'type':_0x3903f6,'label':_0x92d944,'url':_0x21702f},'before':null,'after':_0x253741,'dryRun':_0x480bbe,'backend':[{'method':_0x52adb7(0x87),'path':_0x52adb7(0xb1)}],'plannedActions':[{'stage':_0x52adb7(0x95),'method':'POST','path':_0x52adb7(0xb1),'body':createBody(_0x253741)}],'snapshotHash':_0xe0f923[_0x52adb7(0xf3)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x433724}});return{'plan':_0x39400c,'snapshot':_0xe0f923};}async function buildSafeAddPlan(_0x2309c0,_0x301065){try{return await buildAddPlan(_0x2309c0,_0x301065);}catch(_0x36cc9e){throw safeMenuAddError(_0x36cc9e);}}async function recheckAddSnapshot(_0x403209,_0x598e68){const _0x1e5265=a152_0x137939;try{await recheckMutationSnapshot(_0x403209,_0x598e68,_0x1e5265(0x101));}catch(_0x43cfcb){const _0x5ef78e=getFailureRecord(_0x43cfcb);throw externalLinkCreateFailure(_0x43cfcb,_0x598e68,{'stage':_0x1e5265(0xd1),'failed':{..._0x5ef78e?.[_0x1e5265(0xae)]?{'expectedSnapshotHash':_0x5ef78e[_0x1e5265(0xae)]}:{},..._0x5ef78e?.['currentSnapshotHash']?{'currentSnapshotHash':_0x5ef78e[_0x1e5265(0xb9)]}:{}}});}}function createBody(_0x4a2f6e){const _0x1c3940=a152_0x137939;return{'parentId':toApiParentId(_0x4a2f6e[_0x1c3940(0xc2)]),'label':String(_0x4a2f6e[_0x1c3940(0xee)]),'type':String(_0x4a2f6e[_0x1c3940(0xb2)]),'url':String(_0x4a2f6e[_0x1c3940(0x109)]),'visible':Boolean(_0x4a2f6e['visible']),'sort':Number(_0x4a2f6e[_0x1c3940(0xd7)]),'extend':{}};}function buildMenuLookupCommand(_0x45f89e){const _0xb86da3=a152_0x137939,_0x5499b9='\x27'+_0x45f89e[_0xb86da3(0xc9)](/'/g,_0xb86da3(0xa7))+'\x27';return _0xb86da3(0xc8)+_0x5499b9+_0xb86da3(0x106);}async function recoverAfterResponseLoss(_0x107c52,_0x4e2f18,_0x4014ed){const _0x36a1bf=a152_0x137939,{plan:_0x4d8dd9,snapshot:_0x29184b}=_0x4e2f18,_0x2062fa=_0x4d8dd9[_0x36a1bf(0xc3)];let _0x2a93ae;try{_0x2a93ae=await fetchMenuSnapshot(_0x107c52['appCode'],_0x107c52[_0x36a1bf(0xe3)]);}catch(_0x55dc96){throw recoveryRequiredFailure(_0x4d8dd9,_0x4014ed,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x1cbe6c=_0x2a93ae[_0x36a1bf(0x9e)]['filter'](_0x58b398=>_0x58b398[_0x36a1bf(0xc2)]===_0x2062fa[_0x36a1bf(0xc2)]&&_0x58b398[_0x36a1bf(0xb2)]===_0x2062fa[_0x36a1bf(0xb2)]&&_0x58b398[_0x36a1bf(0xee)]===_0x2062fa[_0x36a1bf(0xee)]&&_0x58b398[_0x36a1bf(0x109)]===_0x2062fa[_0x36a1bf(0x109)]),_0x36f8f3=_0x1cbe6c[_0x36a1bf(0xff)](_0x12359f=>!_0x29184b['byId'][_0x36a1bf(0xb5)](_0x12359f['id'])),_0x5983c3=_0x1cbe6c[_0x36a1bf(0xff)](_0x26f3a3=>_0x29184b[_0x36a1bf(0xf2)][_0x36a1bf(0xb5)](_0x26f3a3['id']));if(_0x1cbe6c['length']!==0x1||_0x36f8f3[_0x36a1bf(0x98)]!==0x1)throw recoveryRequiredFailure(_0x4d8dd9,_0x4014ed,{'matchCount':_0x1cbe6c['length'],'newMatchCount':_0x36f8f3[_0x36a1bf(0x98)],'preexistingMatchCount':_0x5983c3[_0x36a1bf(0x98)]});const _0xc48102=_0x36f8f3[0x0];try{verifyCreatedFact(_0xc48102,_0xc48102['id'],_0x2062fa,null);}catch(_0x5c2bbc){const _0xb40646=_0x5c2bbc instanceof Error&&_0x36a1bf(0xa9)in _0x5c2bbc?_0x5c2bbc:menuError('menu_verification_failed','Recovered\x20menu\x20'+_0xc48102['id']+_0x36a1bf(0xf5),_0x36a1bf(0xa5)+_0x4014ed+_0x36a1bf(0xf8));throw externalLinkCreateFailure(_0xb40646,_0x4d8dd9,{'stage':_0x36a1bf(0xda),'succeeded':[{'id':_0xc48102['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0xc48102['id'],'finalFactsConfirmed':![]},'after':_0xc48102,'warnings':['Menu\x20'+_0xc48102['id']+_0x36a1bf(0xcb)],'verification':{'status':_0x36a1bf(0xe4),'targetId':_0xc48102['id'],'recovered':!![],'lookupCommand':_0x4014ed}});}return creationSuccess(_0x4d8dd9,_0x2a93ae,_0xc48102,!![]);}function recoveryRequiredFailure(_0x5427ce,_0x6eabb0,_0x2d3078){const _0x5222f4=a152_0x137939,_0xc54488=menuError(_0x5222f4(0xb3),_0x5222f4(0x9b),_0x5222f4(0xa5)+_0x6eabb0+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0xc54488,_0x5427ce,{'stage':'create-recovery','failed':_0x2d3078,'warnings':[_0x5222f4(0xb4)],'verification':{'status':_0x5222f4(0xe4),..._0x2d3078,'lookupCommand':_0x6eabb0}});}async function readAndVerifyCreatedMenu(_0x587466){const _0x49df89=a152_0x137939;let _0x1c932b;try{_0x1c932b=await fetchMenuSnapshot(_0x587466['appCode'],_0x587466[_0x49df89(0xe3)]);}catch(_0x383807){const _0xfe753a=menuError('menu_verification_failed','Menu\x20'+_0x587466[_0x49df89(0xf1)]+_0x49df89(0xea),_0x49df89(0xa5)+_0x587466['lookupCommand']+_0x49df89(0xe1));throw externalLinkCreateFailure(_0xfe753a,_0x587466[_0x49df89(0x96)],{'stage':_0x49df89(0xda),'succeeded':[{'id':_0x587466['createdId'],'created':!![]}],'failed':{'id':_0x587466[_0x49df89(0xf1)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x587466[_0x49df89(0x84)],'id':_0x587466['createdId'],'path':_0x587466['expectedPath']},'warnings':[_0x49df89(0xbe)+_0x587466[_0x49df89(0xf1)]+_0x49df89(0xe6)],'verification':{'status':_0x49df89(0xe4),'targetId':_0x587466['createdId'],'lookupCommand':_0x587466[_0x49df89(0x8e)]}});}const _0x26a3ac=_0x1c932b[_0x49df89(0xf2)][_0x49df89(0x97)](_0x587466['createdId']);try{if(!_0x26a3ac)throw menuError(_0x49df89(0xac),_0x49df89(0xdf)+_0x587466[_0x49df89(0xf1)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x49df89(0xa5)+_0x587466[_0x49df89(0x8e)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x26a3ac,_0x587466[_0x49df89(0xf1)],_0x587466[_0x49df89(0x84)],_0x587466[_0x49df89(0xdb)]);}catch(_0x4ab6ff){const _0x522c69=_0x4ab6ff instanceof Error&&_0x49df89(0xa9)in _0x4ab6ff?_0x4ab6ff:menuError(_0x49df89(0xac),'Created\x20menu\x20'+_0x587466['createdId']+_0x49df89(0xa4),_0x49df89(0xa5)+_0x587466[_0x49df89(0x8e)]+_0x49df89(0xe1));throw externalLinkCreateFailure(_0x522c69,_0x587466[_0x49df89(0x96)],{'stage':_0x49df89(0xda),'succeeded':[{'id':_0x587466[_0x49df89(0xf1)],'created':!![]}],'failed':{'id':_0x587466[_0x49df89(0xf1)],'finalFactsConfirmed':![]},'after':_0x26a3ac??{..._0x587466[_0x49df89(0x84)],'id':_0x587466[_0x49df89(0xf1)],'path':_0x587466[_0x49df89(0xdb)]},'warnings':[_0x49df89(0xbe)+_0x587466[_0x49df89(0xf1)]+_0x49df89(0x103)],'verification':{'status':_0x49df89(0xe4),'targetId':_0x587466[_0x49df89(0xf1)],'recovered':_0x587466['recovered'],'lookupCommand':_0x587466[_0x49df89(0x8e)]}});}return{'snapshot':_0x1c932b,'fact':_0x26a3ac};}function verifyCreatedFact(_0x1bfc79,_0x6f1de9,_0x227ba3,_0x4e7361){const _0x42e8cd=a152_0x137939;if(!Number['isSafeInteger'](_0x1bfc79['id'])||_0x1bfc79['id']<=0x0||_0x1bfc79['id']!==_0x6f1de9)throw menuError('menu_verification_failed',_0x42e8cd(0xdc),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x4e3b9d=[['parent',_0x1bfc79['parentId'],_0x227ba3[_0x42e8cd(0xc2)]],[_0x42e8cd(0xb2),_0x1bfc79[_0x42e8cd(0xb2)],_0x227ba3[_0x42e8cd(0xb2)]],[_0x42e8cd(0xee),_0x1bfc79['label'],_0x227ba3[_0x42e8cd(0xee)]],[_0x42e8cd(0xfe),_0x1bfc79['url'],_0x227ba3[_0x42e8cd(0x109)]],[_0x42e8cd(0xa3),_0x1bfc79['visible'],_0x227ba3[_0x42e8cd(0x89)]],[_0x42e8cd(0xd7),_0x1bfc79['sort'],_0x227ba3[_0x42e8cd(0xd7)]]];for(const [_0x2032bd,_0x5e7229,_0x4eaff7]of _0x4e3b9d){if(_0x5e7229!==_0x4eaff7)throw menuError('menu_verification_failed',_0x42e8cd(0xdf)+_0x1bfc79['id']+'\x20has\x20an\x20unexpected\x20'+_0x2032bd+'.',_0x42e8cd(0xc0));}if(!_0x1bfc79['path'][_0x42e8cd(0xbd)]()||_0x4e7361!==null&&_0x1bfc79[_0x42e8cd(0x9c)]!==_0x4e7361)throw menuError(_0x42e8cd(0xac),_0x42e8cd(0xdf)+_0x1bfc79['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function creationSuccess(_0x313156,_0x228ed8,_0x288d78,_0x49aa05){const _0x37bccd=a152_0x137939,_0x379156=mutationResult({..._0x313156,'after':_0x288d78,'dryRun':![],'succeeded':[{'id':_0x288d78['id'],'created':!![],'recovered':_0x49aa05}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x228ed8[_0x37bccd(0xf3)],'targetId':_0x288d78['id'],'recovered':_0x49aa05,'path':_0x288d78[_0x37bccd(0x9c)]}});return{'ok':!![],'message':_0x49aa05?'Recovered\x20created\x20external\x20menu\x20'+_0x288d78['id']+'\x20after\x20response\x20loss.':_0x37bccd(0x108)+_0x288d78['id']+'.','data':{..._0x379156,'recovered':_0x49aa05}};}function externalLinkCreateFailure(_0x586ce9,_0x37855e,_0x5cecd2){const _0x2f7560=a152_0x137939;return menuFailure(safeMenuAddError(_0x586ce9),redactFailurePlan(_0x37855e),{..._0x5cecd2,'succeeded':_0x5cecd2[_0x2f7560(0x91)]?.['map'](redactFailureRecord),'failed':_0x5cecd2[_0x2f7560(0xe4)]?redactFailureRecord(_0x5cecd2[_0x2f7560(0xe4)]):undefined,'verification':_0x5cecd2[_0x2f7560(0xda)]?redactFailureRecord(_0x5cecd2[_0x2f7560(0xda)]):undefined,'after':_0x5cecd2[_0x2f7560(0xc3)]===undefined?undefined:redactFailureValue(_0x5cecd2[_0x2f7560(0xc3)])});}function redactFailurePlan(_0x39f491){const _0x3ba6f0=a152_0x137939;return{..._0x39f491,'selector':redactFailureRecord(_0x39f491[_0x3ba6f0(0x8b)]),'before':redactFailureValue(_0x39f491[_0x3ba6f0(0xb7)]),'after':redactFailureValue(_0x39f491['after']),'plannedActions':_0x39f491['plannedActions']?.[_0x3ba6f0(0xc5)](_0x5003b5=>({..._0x5003b5,'body':redactFailureRecord(_0x5003b5[_0x3ba6f0(0x9f)])})),'succeeded':_0x39f491['succeeded']['map'](redactFailureRecord),'failed':_0x39f491[_0x3ba6f0(0xe4)][_0x3ba6f0(0xc5)](redactFailureRecord),'verification':_0x39f491[_0x3ba6f0(0xda)]?redactFailureRecord(_0x39f491[_0x3ba6f0(0xda)]):undefined};}function redactFailureRecord(_0x364811){return redactFailureValue(_0x364811);}function redactFailureValue(_0x52f9e3,_0x4846c8=''){const _0x38150b=a152_0x137939,_0x40a60a=_0x4846c8['toLowerCase']()['replace'](/[^a-z0-9]/g,'');if([_0x38150b(0x86),_0x38150b(0xcc),_0x38150b(0x105),'rawerror']['includes'](_0x40a60a))return _0x38150b(0xf0);if(Array[_0x38150b(0xaf)](_0x52f9e3))return _0x52f9e3[_0x38150b(0xc5)](_0x491680=>redactFailureValue(_0x491680));if(_0x52f9e3&&typeof _0x52f9e3==='object')return Object[_0x38150b(0xe8)](Object[_0x38150b(0xc6)](_0x52f9e3)[_0x38150b(0xc5)](([_0x1464b4,_0x5c6e2d])=>[_0x1464b4,redactFailureValue(_0x5c6e2d,_0x1464b4)]));return _0x52f9e3;}function safeMenuAddError(_0x1dc30f){const _0x1374e8=a152_0x137939,_0x3faab3=_0x1dc30f instanceof CliError?_0x1dc30f['code']:'menu_mutation_failed';switch(_0x3faab3){case'menu_state_drift':return menuError(_0x3faab3,_0x1374e8(0xcd),_0x1374e8(0xce));case _0x1374e8(0xed):return menuError(_0x3faab3,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x1374e8(0xd3):return menuError(_0x3faab3,_0x1374e8(0xd0),_0x1374e8(0xbf));case _0x1374e8(0xac):return menuError(_0x3faab3,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.',_0x1374e8(0xbf));case _0x1374e8(0xb3):return menuError(_0x3faab3,_0x1374e8(0xba),_0x1374e8(0x104));case _0x1374e8(0xfa):case _0x1374e8(0xfb):case _0x1374e8(0xad):case _0x1374e8(0xb6):case'menu_sort_overflow':return menuError(_0x3faab3,_0x1374e8(0xaa),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError('menu_mutation_failed',_0x1374e8(0xaa),_0x1374e8(0xa8));}}function getFailureRecord(_0x833def){const _0x564eb3=a152_0x137939;if(!(_0x833def instanceof Error)||!(_0x564eb3(0xe9)in _0x833def))return undefined;const _0x54d436=_0x833def[_0x564eb3(0xe9)];if(!_0x54d436||typeof _0x54d436!=='object')return undefined;const _0x5f0bcc=_0x54d436[_0x564eb3(0xe4)];if(!Array[_0x564eb3(0xaf)](_0x5f0bcc)||!_0x5f0bcc[0x0]||typeof _0x5f0bcc[0x0]!==_0x564eb3(0xa2))return undefined;return _0x5f0bcc[0x0];}
1
+ function a152_0x3304(){const _0x1ebbf7=['menu_sort_invalid','Recovered\x20created\x20external\x20menu\x20','verification','type','str','plan','username','Would\x20create\x20external\x20website\x20link\x20menu\x20','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','link','menu_parent_not_folder','Menu\x20','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','causemessage','parent-id','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Create\x20an\x20external\x20website\x20link\x20menu','trim','Provide\x20an\x20HTTPS\x20URL.','menu_permission_denied','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','URL','open-mode','menu_create_response_invalid','\x20has\x20an\x20unexpected\x20','selector','POST','length','2196770RYkmwM','Created\x20external\x20menu\x20','Created\x20menu\x20','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','cause','menus','https:','hash','expectedPath','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','isSafeInteger','isArray','write','url','add','22MnPQXm','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','9zYihsZ','menu_open_mode_invalid','call','bool','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','External\x20menu\x20creation\x20failed.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','map','Recovered\x20menu\x20','<redacted>','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','create','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','External\x20HTTPS\x20URL','How\x20to\x20open\x20the\x20external\x20website','fromEntries','toLowerCase','parentId','appCode','pre-write-recheck','plannedActions','\x20--format\x20compress','create-menu','rawFlags','object','478359CFGfGF','iframe','replace','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','body','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','byId','boolean','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','after','visible','Menu\x20label','menu_url_https_required','string','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','menu_create_recovery_required','expectedSnapshotHash','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','menu_not_found','168yyyjaS','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','215470KYqvAt','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','currentSnapshotHash','menu_mutation_failed','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','menu_url_invalid','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','sort','has','includes','\x20has\x20an\x20unexpected\x20generated\x20path.','rawerror','create\x20external\x20menu','Run\x20','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','menu_state_drift','\x20failed\x20final\x20verification.','code','3523iWZVoU','create-response-validation','515460NifvrG','8237262SyxXru','new-window','embedded','<platform-generated>','\x27\x5c\x27\x27','snapshot','fact','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','menu_verification_failed','failed','cookie','flagMissing','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','12VVwaZU','label','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','49624mWRROw','/smartapi/menu/create','menu_sort_overflow','createdId','afterPlan','entries','data','filter','path','\x20after\x20response\x20loss.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','lookupCommand','succeeded','rabetbase\x20menu\x20list\x20--appcode\x20','protocol'];a152_0x3304=function(){return _0x1ebbf7;};return a152_0x3304();}const a152_0x407a25=a152_0x491b;(function(_0x625a9d,_0x5d3799){const _0x413461=a152_0x491b,_0x46cf49=_0x625a9d();while(!![]){try{const _0x3338a1=parseInt(_0x413461(0x146))/0x1*(-parseInt(_0x413461(0x100))/0x2)+-parseInt(_0x413461(0x11d))/0x3+parseInt(_0x413461(0x157))/0x4*(-parseInt(_0x413461(0x134))/0x5)+parseInt(_0x413461(0x148))/0x6+-parseInt(_0x413461(0x132))/0x7*(parseInt(_0x413461(0xc5))/0x8)+-parseInt(_0x413461(0x102))/0x9*(parseInt(_0x413461(0xf0))/0xa)+parseInt(_0x413461(0x149))/0xb;if(_0x3338a1===_0x5d3799)break;else _0x46cf49['push'](_0x46cf49['shift']());}catch(_0xc964d6){_0x46cf49['push'](_0x46cf49['shift']());}}}(a152_0x3304,0x21ddb));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':a152_0x407a25(0x11e),'new-window':a152_0x407a25(0xdd)};export function validateExternalMenuUrl(_0x451b44){const _0x1d227c=a152_0x407a25,_0x522f6e=_0x451b44[_0x1d227c(0xe5)]();let _0x4c5422;try{_0x4c5422=new URL(_0x522f6e);}catch{throw menuError(_0x1d227c(0x139),_0x1d227c(0x110),_0x1d227c(0x135));}if(_0x4c5422[_0x1d227c(0xd3)]!==_0x1d227c(0xf7))throw menuError(_0x1d227c(0x12b),_0x1d227c(0x122),_0x1d227c(0xe6));if(_0x4c5422[_0x1d227c(0xda)]||_0x4c5422['password'])throw menuError('menu_url_credentials_forbidden',_0x1d227c(0xe3),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x522f6e;}export const menuExternalLinkCreate={'service':'menu','command':'external-link-create','description':a152_0x407a25(0xe4),'risk':a152_0x407a25(0xfd),'structuredErrors':!![],'flags':[{'name':a152_0x407a25(0xc3),'type':a152_0x407a25(0x12c),'required':!![],'description':a152_0x407a25(0x12a)},{'name':'open-mode','type':a152_0x407a25(0x12c),'required':!![],'enum':[a152_0x407a25(0x14b),a152_0x407a25(0x14a)],'description':a152_0x407a25(0x112)},{'name':a152_0x407a25(0xfe),'type':'string','required':!![],'description':a152_0x407a25(0x111)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':a152_0x407a25(0x124),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x18721d){validateAddInput(_0x18721d);},async 'dryRun'(_0x1b07fe){const _0x2a8505=a152_0x407a25;validateAddInput(_0x1b07fe);const {plan:_0x3cef13}=await buildSafeAddPlan(_0x1b07fe,!![]),_0x233ccf=_0x3cef13[_0x2a8505(0x128)],_0x931887=createBody(_0x233ccf);return menuDryRunResult(_0x3cef13,{'method':_0x2a8505(0xee),'url':_0x2a8505(0xc6),'body':_0x931887,'description':_0x2a8505(0xdb)+JSON['stringify'](_0x233ccf[_0x2a8505(0xc3)])+'\x20with\x20'+_0x1b07fe[_0x2a8505(0xd8)](_0x2a8505(0xea))+_0x2a8505(0xf3)});},async 'execute'(_0x4ac9df){const _0x456f68=a152_0x407a25;validateAddInput(_0x4ac9df);const _0x2c6938=await buildSafeAddPlan(_0x4ac9df,![]),{plan:_0x2d8102,snapshot:_0x4112e8}=_0x2c6938,_0x592653=_0x2d8102[_0x456f68(0x128)],_0x54aa05=buildMenuLookupCommand(_0x4ac9df['appCode']);await recheckAddSnapshot(_0x4ac9df,_0x2d8102);let _0x1d1d08;try{_0x1d1d08=await createMenuEntity(_0x4ac9df['appCode'],_0x4ac9df[_0x456f68(0x154)],createBody(_0x592653));}catch(_0x390520){const _0x450eb8=mapMenuApiError(_0x390520,_0x456f68(0x140));if(!isMenuResponseLoss(_0x390520)||_0x450eb8[_0x456f68(0x145)]===_0x456f68(0xe7))throw externalLinkCreateFailure(_0x450eb8,_0x2d8102,{'stage':_0x456f68(0x10f),'failed':{},'verification':{'status':_0x456f68(0x153),'lookupCommand':_0x54aa05}});return recoverAfterResponseLoss(_0x4ac9df,_0x2c6938,_0x54aa05);}const _0x4c3386=Number(_0x1d1d08?.['id']),_0x57a525=typeof _0x1d1d08?.[_0x456f68(0xcd)]==='string'?_0x1d1d08[_0x456f68(0xcd)]:'';if(!Number[_0x456f68(0xfb)](_0x4c3386)||_0x4c3386<=0x0||!_0x57a525['trim']()){const _0x2cbba1=menuError(_0x456f68(0xeb),_0x456f68(0xf4),_0x456f68(0x141)+_0x54aa05+_0x456f68(0x108));throw externalLinkCreateFailure(_0x2cbba1,_0x2d8102,{'stage':_0x456f68(0x147),'succeeded':Number['isSafeInteger'](_0x4c3386)&&_0x4c3386>0x0?[{'id':_0x4c3386,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x4c3386)?_0x4c3386:null,'generatedPathConfirmed':Boolean(_0x57a525[_0x456f68(0xe5)]())},'warnings':[_0x456f68(0xe8)],'after':Number[_0x456f68(0xfb)](_0x4c3386)&&_0x4c3386>0x0?{..._0x592653,'id':_0x4c3386,'path':_0x57a525}:_0x592653,'verification':{'status':_0x456f68(0x153),'lookupCommand':_0x54aa05,...Number[_0x456f68(0xfb)](_0x4c3386)&&_0x4c3386>0x0?{'targetId':_0x4c3386}:{}}});}const _0x2e08dc=await readAndVerifyCreatedMenu({'appCode':_0x4ac9df[_0x456f68(0x116)],'cookie':_0x4ac9df[_0x456f68(0x154)],'plan':_0x2d8102,'afterPlan':_0x592653,'createdId':_0x4c3386,'expectedPath':_0x57a525,'lookupCommand':_0x54aa05,'recovered':![]});return creationSuccess(_0x2d8102,_0x2e08dc[_0x456f68(0x14e)],_0x2e08dc[_0x456f68(0x14f)],![]);}};function validateAddInput(_0x33e537){const _0x87e476=a152_0x407a25;if(!_0x33e537[_0x87e476(0xd8)]('label')[_0x87e476(0xe5)]())throw CliErrors[_0x87e476(0x155)](_0x87e476(0xc3));resolveExternalMenuType(_0x33e537),validateExternalMenuUrl(_0x33e537['str'](_0x87e476(0xfe))),parseParentId(_0x33e537,'parent-id'),validateSort(_0x33e537);}function resolveExternalMenuType(_0x5e251b){const _0x4aad67=a152_0x407a25,_0x2dba82=_0x5e251b['str']('open-mode')[_0x4aad67(0xe5)]();if(!_0x2dba82)throw CliErrors['flagMissing'](_0x4aad67(0xea));const _0x47093e=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x2dba82];if(!_0x47093e)throw menuError(_0x4aad67(0x103),_0x4aad67(0x125),_0x4aad67(0x138));return _0x47093e;}async function buildAddPlan(_0x259500,_0x3f0692){const _0x33500b=a152_0x407a25,_0x3c330d=await fetchMutationSnapshot(_0x259500,_0x33500b(0x140)),_0x26da27=parseParentId(_0x259500,_0x33500b(0xe2))??null;if(_0x26da27!=null)requireFolder(_0x3c330d,_0x26da27);const _0x1bc1bb=validateSort(_0x259500),_0x31c5b9=_0x1bc1bb??nextSiblingSort(_0x3c330d,_0x26da27,'menu'),_0x3b9016=_0x259500[_0x33500b(0xd8)](_0x33500b(0xc3))[_0x33500b(0xe5)](),_0x51003e=resolveExternalMenuType(_0x259500),_0x572d65=validateExternalMenuUrl(_0x259500[_0x33500b(0xd8)](_0x33500b(0xfe))),_0x38b701=Object['prototype']['hasOwnProperty'][_0x33500b(0x104)](_0x259500[_0x33500b(0x11b)],_0x33500b(0x129))?_0x259500[_0x33500b(0x105)](_0x33500b(0x129)):!![],_0x1f12b9={'id':null,'parentId':_0x26da27,'label':_0x3b9016,'path':_0x33500b(0x14c),'url':_0x572d65,'type':_0x51003e,'visible':_0x38b701,'sort':_0x31c5b9},_0x417e9c=buildMenuLookupCommand(_0x259500[_0x33500b(0x116)]),_0x2eb4a1=mutationResult({'operation':_0x33500b(0xff),'selector':{'parentId':_0x26da27,'type':_0x51003e,'label':_0x3b9016,'url':_0x572d65},'before':null,'after':_0x1f12b9,'dryRun':_0x3f0692,'backend':[{'method':'POST','path':_0x33500b(0xc6)}],'plannedActions':[{'stage':_0x33500b(0x11a),'method':_0x33500b(0xee),'path':_0x33500b(0xc6),'body':createBody(_0x1f12b9)}],'snapshotHash':_0x3c330d[_0x33500b(0xf8)],'warnings':[_0x33500b(0x101)],'verification':{'lookupCommand':_0x417e9c}});return{'plan':_0x2eb4a1,'snapshot':_0x3c330d};}function a152_0x491b(_0x2c5b3c,_0x236d21){_0x2c5b3c=_0x2c5b3c-0xc3;const _0x330403=a152_0x3304();let _0x491ba5=_0x330403[_0x2c5b3c];return _0x491ba5;}async function buildSafeAddPlan(_0x433ab5,_0x2b2fe1){try{return await buildAddPlan(_0x433ab5,_0x2b2fe1);}catch(_0x59a187){throw safeMenuAddError(_0x59a187);}}async function recheckAddSnapshot(_0x524c05,_0x4eabe9){const _0x2caf10=a152_0x407a25;try{await recheckMutationSnapshot(_0x524c05,_0x4eabe9,_0x2caf10(0x140));}catch(_0x266298){const _0x534d42=getFailureRecord(_0x266298);throw externalLinkCreateFailure(_0x266298,_0x4eabe9,{'stage':_0x2caf10(0x117),'failed':{..._0x534d42?.[_0x2caf10(0x12f)]?{'expectedSnapshotHash':_0x534d42[_0x2caf10(0x12f)]}:{},..._0x534d42?.[_0x2caf10(0x136)]?{'currentSnapshotHash':_0x534d42[_0x2caf10(0x136)]}:{}}});}}function createBody(_0x556770){const _0x450124=a152_0x407a25;return{'parentId':toApiParentId(_0x556770[_0x450124(0x115)]),'label':String(_0x556770[_0x450124(0xc3)]),'type':String(_0x556770[_0x450124(0xd7)]),'url':String(_0x556770[_0x450124(0xfe)]),'visible':Boolean(_0x556770[_0x450124(0x129)]),'sort':Number(_0x556770['sort']),'extend':{}};}function buildMenuLookupCommand(_0x391342){const _0x55c3bf=a152_0x407a25,_0x1705ef='\x27'+_0x391342[_0x55c3bf(0x11f)](/'/g,_0x55c3bf(0x14d))+'\x27';return _0x55c3bf(0xd2)+_0x1705ef+_0x55c3bf(0x119);}async function recoverAfterResponseLoss(_0x194b1e,_0x41bc55,_0x1693ea){const _0x5d58f2=a152_0x407a25,{plan:_0x429a22,snapshot:_0x4d54fb}=_0x41bc55,_0x3e1cdf=_0x429a22['after'];let _0x5f126c;try{_0x5f126c=await fetchMenuSnapshot(_0x194b1e[_0x5d58f2(0x116)],_0x194b1e[_0x5d58f2(0x154)]);}catch(_0x2b4e00){throw recoveryRequiredFailure(_0x429a22,_0x1693ea,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x77342c=_0x5f126c[_0x5d58f2(0xf6)][_0x5d58f2(0xcc)](_0x56a277=>_0x56a277[_0x5d58f2(0x115)]===_0x3e1cdf[_0x5d58f2(0x115)]&&_0x56a277['type']===_0x3e1cdf[_0x5d58f2(0xd7)]&&_0x56a277['label']===_0x3e1cdf[_0x5d58f2(0xc3)]&&_0x56a277['url']===_0x3e1cdf[_0x5d58f2(0xfe)]),_0x511730=_0x77342c[_0x5d58f2(0xcc)](_0x5495c5=>!_0x4d54fb[_0x5d58f2(0x123)][_0x5d58f2(0x13c)](_0x5495c5['id'])),_0xa6e618=_0x77342c['filter'](_0x35e577=>_0x4d54fb[_0x5d58f2(0x123)][_0x5d58f2(0x13c)](_0x35e577['id']));if(_0x77342c['length']!==0x1||_0x511730[_0x5d58f2(0xef)]!==0x1)throw recoveryRequiredFailure(_0x429a22,_0x1693ea,{'matchCount':_0x77342c['length'],'newMatchCount':_0x511730[_0x5d58f2(0xef)],'preexistingMatchCount':_0xa6e618[_0x5d58f2(0xef)]});const _0x37108f=_0x511730[0x0];try{verifyCreatedFact(_0x37108f,_0x37108f['id'],_0x3e1cdf,null);}catch(_0x2902f5){const _0x25cd56=_0x2902f5 instanceof Error&&_0x5d58f2(0x145)in _0x2902f5?_0x2902f5:menuError(_0x5d58f2(0x152),_0x5d58f2(0x10b)+_0x37108f['id']+'\x20could\x20not\x20be\x20verified.',_0x5d58f2(0x141)+_0x1693ea+_0x5d58f2(0x150));throw externalLinkCreateFailure(_0x25cd56,_0x429a22,{'stage':_0x5d58f2(0xd6),'succeeded':[{'id':_0x37108f['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x37108f['id'],'finalFactsConfirmed':![]},'after':_0x37108f,'warnings':[_0x5d58f2(0xdf)+_0x37108f['id']+_0x5d58f2(0x156)],'verification':{'status':_0x5d58f2(0x153),'targetId':_0x37108f['id'],'recovered':!![],'lookupCommand':_0x1693ea}});}return creationSuccess(_0x429a22,_0x5f126c,_0x37108f,!![]);}function recoveryRequiredFailure(_0x8aaae6,_0x21fa34,_0x516416){const _0x17c62d=a152_0x407a25,_0x3db30a=menuError(_0x17c62d(0x12e),_0x17c62d(0x10d),_0x17c62d(0x141)+_0x21fa34+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x3db30a,_0x8aaae6,{'stage':'create-recovery','failed':_0x516416,'warnings':[_0x17c62d(0xc4)],'verification':{'status':'failed',..._0x516416,'lookupCommand':_0x21fa34}});}async function readAndVerifyCreatedMenu(_0x19d028){const _0x4f6ae0=a152_0x407a25;let _0x5256bc;try{_0x5256bc=await fetchMenuSnapshot(_0x19d028['appCode'],_0x19d028['cookie']);}catch(_0x781385){const _0x48e015=menuError(_0x4f6ae0(0x152),_0x4f6ae0(0xdf)+_0x19d028['createdId']+_0x4f6ae0(0x130),'Run\x20'+_0x19d028['lookupCommand']+_0x4f6ae0(0xe0));throw externalLinkCreateFailure(_0x48e015,_0x19d028[_0x4f6ae0(0xd9)],{'stage':_0x4f6ae0(0xd6),'succeeded':[{'id':_0x19d028[_0x4f6ae0(0xc8)],'created':!![]}],'failed':{'id':_0x19d028[_0x4f6ae0(0xc8)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x19d028['afterPlan'],'id':_0x19d028[_0x4f6ae0(0xc8)],'path':_0x19d028[_0x4f6ae0(0xf9)]},'warnings':['Menu\x20'+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x13a)],'verification':{'status':_0x4f6ae0(0x153),'targetId':_0x19d028[_0x4f6ae0(0xc8)],'lookupCommand':_0x19d028['lookupCommand']}});}const _0x10ec29=_0x5256bc[_0x4f6ae0(0x123)]['get'](_0x19d028[_0x4f6ae0(0xc8)]);try{if(!_0x10ec29)throw menuError(_0x4f6ae0(0x152),_0x4f6ae0(0xf2)+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x12d),_0x4f6ae0(0x141)+_0x19d028[_0x4f6ae0(0xd0)]+_0x4f6ae0(0xe0));verifyCreatedFact(_0x10ec29,_0x19d028[_0x4f6ae0(0xc8)],_0x19d028[_0x4f6ae0(0xc9)],_0x19d028['expectedPath']);}catch(_0x1939e2){const _0x3c27f9=_0x1939e2 instanceof Error&&'code'in _0x1939e2?_0x1939e2:menuError(_0x4f6ae0(0x152),_0x4f6ae0(0xf2)+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x144),_0x4f6ae0(0x141)+_0x19d028[_0x4f6ae0(0xd0)]+_0x4f6ae0(0xe0));throw externalLinkCreateFailure(_0x3c27f9,_0x19d028[_0x4f6ae0(0xd9)],{'stage':'verification','succeeded':[{'id':_0x19d028[_0x4f6ae0(0xc8)],'created':!![]}],'failed':{'id':_0x19d028[_0x4f6ae0(0xc8)],'finalFactsConfirmed':![]},'after':_0x10ec29??{..._0x19d028['afterPlan'],'id':_0x19d028[_0x4f6ae0(0xc8)],'path':_0x19d028[_0x4f6ae0(0xf9)]},'warnings':[_0x4f6ae0(0xdf)+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x133)],'verification':{'status':_0x4f6ae0(0x153),'targetId':_0x19d028[_0x4f6ae0(0xc8)],'recovered':_0x19d028['recovered'],'lookupCommand':_0x19d028[_0x4f6ae0(0xd0)]}});}return{'snapshot':_0x5256bc,'fact':_0x10ec29};}function verifyCreatedFact(_0x4e87fa,_0x49046e,_0x3392b5,_0x2cdbd4){const _0x12f0f1=a152_0x407a25;if(!Number['isSafeInteger'](_0x4e87fa['id'])||_0x4e87fa['id']<=0x0||_0x4e87fa['id']!==_0x49046e)throw menuError(_0x12f0f1(0x152),_0x12f0f1(0x151),_0x12f0f1(0x109));const _0x50501c=[['parent',_0x4e87fa[_0x12f0f1(0x115)],_0x3392b5[_0x12f0f1(0x115)]],[_0x12f0f1(0xd7),_0x4e87fa[_0x12f0f1(0xd7)],_0x3392b5[_0x12f0f1(0xd7)]],['label',_0x4e87fa['label'],_0x3392b5[_0x12f0f1(0xc3)]],[_0x12f0f1(0xe9),_0x4e87fa[_0x12f0f1(0xfe)],_0x3392b5[_0x12f0f1(0xfe)]],['visibility',_0x4e87fa[_0x12f0f1(0x129)],_0x3392b5[_0x12f0f1(0x129)]],['sort',_0x4e87fa[_0x12f0f1(0x13b)],_0x3392b5[_0x12f0f1(0x13b)]]];for(const [_0x4204fd,_0x3f20ed,_0x509e56]of _0x50501c){if(_0x3f20ed!==_0x509e56)throw menuError(_0x12f0f1(0x152),_0x12f0f1(0xf2)+_0x4e87fa['id']+_0x12f0f1(0xec)+_0x4204fd+'.',_0x12f0f1(0x120));}if(!_0x4e87fa[_0x12f0f1(0xcd)]['trim']()||_0x2cdbd4!==null&&_0x4e87fa[_0x12f0f1(0xcd)]!==_0x2cdbd4)throw menuError(_0x12f0f1(0x152),'Created\x20menu\x20'+_0x4e87fa['id']+_0x12f0f1(0x13e),_0x12f0f1(0x120));}function creationSuccess(_0x35236e,_0x29a10b,_0x1baf1e,_0x5b4dfb){const _0x58b456=a152_0x407a25,_0x2bf4a3=mutationResult({..._0x35236e,'after':_0x1baf1e,'dryRun':![],'succeeded':[{'id':_0x1baf1e['id'],'created':!![],'recovered':_0x5b4dfb}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x29a10b[_0x58b456(0xf8)],'targetId':_0x1baf1e['id'],'recovered':_0x5b4dfb,'path':_0x1baf1e[_0x58b456(0xcd)]}});return{'ok':!![],'message':_0x5b4dfb?_0x58b456(0xd5)+_0x1baf1e['id']+_0x58b456(0xce):_0x58b456(0xf1)+_0x1baf1e['id']+'.','data':{..._0x2bf4a3,'recovered':_0x5b4dfb}};}function externalLinkCreateFailure(_0x16da75,_0x5d05f1,_0x509741){const _0x520d1c=a152_0x407a25;return menuFailure(safeMenuAddError(_0x16da75),redactFailurePlan(_0x5d05f1),{..._0x509741,'succeeded':_0x509741['succeeded']?.[_0x520d1c(0x10a)](redactFailureRecord),'failed':_0x509741['failed']?redactFailureRecord(_0x509741[_0x520d1c(0x153)]):undefined,'verification':_0x509741['verification']?redactFailureRecord(_0x509741[_0x520d1c(0xd6)]):undefined,'after':_0x509741['after']===undefined?undefined:redactFailureValue(_0x509741[_0x520d1c(0x128)])});}function redactFailurePlan(_0x3719f5){const _0x5b9564=a152_0x407a25;return{..._0x3719f5,'selector':redactFailureRecord(_0x3719f5[_0x5b9564(0xed)]),'before':redactFailureValue(_0x3719f5['before']),'after':redactFailureValue(_0x3719f5[_0x5b9564(0x128)]),'plannedActions':_0x3719f5[_0x5b9564(0x118)]?.[_0x5b9564(0x10a)](_0x160dd8=>({..._0x160dd8,'body':redactFailureRecord(_0x160dd8[_0x5b9564(0x121)])})),'succeeded':_0x3719f5[_0x5b9564(0xd1)]['map'](redactFailureRecord),'failed':_0x3719f5[_0x5b9564(0x153)][_0x5b9564(0x10a)](redactFailureRecord),'verification':_0x3719f5[_0x5b9564(0xd6)]?redactFailureRecord(_0x3719f5[_0x5b9564(0xd6)]):undefined};}function redactFailureRecord(_0x3046dc){return redactFailureValue(_0x3046dc);}function redactFailureValue(_0x5ef2b4,_0x14b907=''){const _0x146c73=a152_0x407a25,_0x12c23e=_0x14b907[_0x146c73(0x114)]()[_0x146c73(0x11f)](/[^a-z0-9]/g,'');if([_0x146c73(0xf5),_0x146c73(0xe1),'readbackerror',_0x146c73(0x13f)][_0x146c73(0x13d)](_0x12c23e))return _0x146c73(0x10c);if(Array[_0x146c73(0xfc)](_0x5ef2b4))return _0x5ef2b4[_0x146c73(0x10a)](_0x505d29=>redactFailureValue(_0x505d29));if(_0x5ef2b4&&typeof _0x5ef2b4==='object')return Object[_0x146c73(0x113)](Object[_0x146c73(0xca)](_0x5ef2b4)[_0x146c73(0x10a)](([_0x5fcb5d,_0x171526])=>[_0x5fcb5d,redactFailureValue(_0x171526,_0x5fcb5d)]));return _0x5ef2b4;}function safeMenuAddError(_0x2cd4d1){const _0x36db76=a152_0x407a25,_0x3e4e24=_0x2cd4d1 instanceof CliError?_0x2cd4d1[_0x36db76(0x145)]:_0x36db76(0x137);switch(_0x3e4e24){case _0x36db76(0x143):return menuError(_0x3e4e24,_0x36db76(0x142),_0x36db76(0xfa));case _0x36db76(0xe7):return menuError(_0x3e4e24,_0x36db76(0xdc),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x36db76(0xeb):return menuError(_0x3e4e24,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x36db76(0x10e));case _0x36db76(0x152):return menuError(_0x3e4e24,_0x36db76(0x106),_0x36db76(0x10e));case _0x36db76(0x12e):return menuError(_0x3e4e24,_0x36db76(0x126),_0x36db76(0xcf));case _0x36db76(0x137):case _0x36db76(0x131):case _0x36db76(0xde):case _0x36db76(0xd4):case _0x36db76(0xc7):return menuError(_0x3e4e24,'External\x20menu\x20creation\x20failed.',_0x36db76(0x127));default:return menuError(_0x36db76(0x137),_0x36db76(0x107),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x5ac253){const _0x1e8c5f=a152_0x407a25;if(!(_0x5ac253 instanceof Error)||!(_0x1e8c5f(0xcb)in _0x5ac253))return undefined;const _0x20deea=_0x5ac253[_0x1e8c5f(0xcb)];if(!_0x20deea||typeof _0x20deea!==_0x1e8c5f(0x11c))return undefined;const _0x4ddd07=_0x20deea[_0x1e8c5f(0x153)];if(!Array['isArray'](_0x4ddd07)||!_0x4ddd07[0x0]||typeof _0x4ddd07[0x0]!==_0x1e8c5f(0x11c))return undefined;return _0x4ddd07[0x0];}
@@ -1 +1 @@
1
- const a153_0x360b96=a153_0x2c1d;(function(_0x2b9491,_0x56e92c){const _0x40873b=a153_0x2c1d,_0x279bd6=_0x2b9491();while(!![]){try{const _0xbc2830=-parseInt(_0x40873b(0x124))/0x1+parseInt(_0x40873b(0x157))/0x2+parseInt(_0x40873b(0x133))/0x3+-parseInt(_0x40873b(0x152))/0x4+-parseInt(_0x40873b(0x13d))/0x5*(parseInt(_0x40873b(0x15d))/0x6)+-parseInt(_0x40873b(0x135))/0x7+parseInt(_0x40873b(0x142))/0x8;if(_0xbc2830===_0x56e92c)break;else _0x279bd6['push'](_0x279bd6['shift']());}catch(_0x38bfd6){_0x279bd6['push'](_0x279bd6['shift']());}}}(a153_0xd279,0xa4a36));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a153_0x360b96(0x140),'path':a153_0x360b96(0x13e)}];function a153_0x2c1d(_0x19fe98,_0x209563){_0x19fe98=_0x19fe98-0x11f;const _0xd279ea=a153_0xd279();let _0x2c1d7c=_0xd279ea[_0x19fe98];return _0x2c1d7c;}export const menuExternalLinkUpdate={'service':'menu','command':a153_0x360b96(0x162),'description':a153_0x360b96(0x134),'risk':a153_0x360b96(0x127),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a153_0x360b96(0x11f),'type':a153_0x360b96(0x12e),'required':!![],'description':a153_0x360b96(0x169)},{'name':a153_0x360b96(0x15a),'type':a153_0x360b96(0x12e),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x31f86f){validateInput(_0x31f86f);},async 'dryRun'(_0x1b4e26){const _0x19a683=a153_0x360b96;validateInput(_0x1b4e26);const _0x54c0b3=await buildPlan(_0x1b4e26,!![]);return menuDryRunResult(_0x54c0b3[_0x19a683(0x14e)],{'method':'POST','url':_0x19a683(0x13e),'body':_0x54c0b3['body'],'description':_0x19a683(0x136)+_0x54c0b3[_0x19a683(0x155)]['id']+'.'});},async 'execute'(_0x192991){const _0x2a54c5=a153_0x360b96;validateInput(_0x192991);const _0x5ed671=await buildPlan(_0x192991,![]),{plan:_0x3659b5,body:_0x59ff2d,before:_0x2b4d00,noChanges:_0x4574d9}=_0x5ed671,_0x5ec24a=_0x59ff2d['id'];if(_0x4574d9)return updateSuccess(_0x3659b5,_0x5ed671[_0x2a54c5(0x13f)],_0x2b4d00,!![],![]);await recheckMutationSnapshot(_0x192991,_0x3659b5,_0x2a54c5(0x154),_0x5ec24a);try{await updateMenuEntity(_0x192991[_0x2a54c5(0x13c)],_0x192991[_0x2a54c5(0x14c)],{'id':_0x59ff2d['id'],'url':_0x59ff2d[_0x2a54c5(0x11f)]});}catch(_0x2d8f8f){const _0x2bdd92=mapMenuApiError(_0x2d8f8f,_0x2a54c5(0x154),_0x5ec24a);if(isMenuResponseLoss(_0x2d8f8f)&&_0x2bdd92[_0x2a54c5(0x141)]!==_0x2a54c5(0x144))return recoverAfterResponseLoss(_0x192991,_0x5ed671);throw menuFailure(_0x2bdd92,_0x3659b5,{'stage':_0x2a54c5(0x121),'failed':{'id':_0x5ec24a},'warnings':[_0x2a54c5(0x12c)],'verification':{'status':_0x2a54c5(0x148),'targetId':_0x5ec24a,'lookupCommand':buildLookupCommand(_0x192991['appCode'])}});}let _0x37dfda,_0x50ae24;try{_0x37dfda=await fetchMenuSnapshot(_0x192991[_0x2a54c5(0x13c)],_0x192991['cookie']),_0x50ae24=requireMenu(_0x37dfda,_0x5ec24a),verifyUpdatedFact(_0x2b4d00,_0x50ae24,_0x59ff2d[_0x2a54c5(0x11f)]);}catch(_0x5a5f6b){const _0x483592=describeMenuErrorCause(_0x5a5f6b,_0x2a54c5(0x129),_0x5ec24a),_0x21ebdb=asVerificationError(_0x5a5f6b,_0x2a54c5(0x15b)+_0x5ec24a+_0x2a54c5(0x15e));throw menuFailure(_0x21ebdb,_0x3659b5,{'stage':'verification','succeeded':[{'id':_0x5ec24a,'updateRequested':!![]}],'failed':{'id':_0x5ec24a,'requestedStateConfirmed':![],..._0x483592},'warnings':[_0x2a54c5(0x166)],'verification':{'status':_0x2a54c5(0x148),'targetId':_0x5ec24a,'lookupCommand':buildLookupCommand(_0x192991[_0x2a54c5(0x13c)])}});}return updateSuccess(_0x3659b5,_0x37dfda,_0x50ae24,![],![]);}};function validateInput(_0x160deb){const _0x5a943f=a153_0x360b96;validateExactId(_0x160deb),requiredUrl(_0x160deb,_0x5a943f(0x11f)),requiredExpectedUrl(_0x160deb),parseParentId(_0x160deb,_0x5a943f(0x167),{'required':!![]});}function requiredUrl(_0x51dddc,_0x526fd9){const _0x27b2f3=a153_0x360b96;if(!hasFlag(_0x51dddc,_0x526fd9)||!_0x51dddc[_0x27b2f3(0x123)](_0x526fd9)['trim']())throw CliErrors['flagMissing'](_0x526fd9);return validateExternalMenuUrl(_0x51dddc[_0x27b2f3(0x123)](_0x526fd9));}function a153_0xd279(){const _0x625585=['trim','\x20could\x20not\x20be\x20verified\x20safely','3379480xpzSgD','hash','update\x20external\x20menu\x20URL','body','menu_external_link_not_leaf','1735154SicFPd','menu_update_recovery_required','readbackFailed','expect-url','Update\x20request\x20for\x20menu\x20','iframe','650646GHEoaF','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','menu_external_link_type_required','menu_external_link_path_missing','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','external-link-update','Run\x20','\x27\x5c\x27\x27','\x22,\x20not\x20iframe\x20or\x20link.','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','expect-parent-id','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','New\x20external\x20HTTPS\x20URL','visible','url','\x20URL\x20update\x20did\x20not\x20take\x20effect.','update','byId','str','921320oGlbHY',',\x20current\x20','update-recovery','write','after','verify\x20external\x20menu\x20URL\x20update','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','\x20already\x20matches\x20the\x20requested\x20URL.','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Response\x20was\x20lost\x20and\x20menu\x20','string','unknown','requestedUrlObserved','parentId','type','2501196fljQaZ','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','1854538YXsAIH','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','\x20changed\x20during\x20the\x20URL-only\x20update.','\x20parent\x20changed:\x20expected\x20','childrenCount','link','menu\x20list','appCode','55teHnfk','/smartapi/menu/update','snapshot','POST','code','17576192ZCtqJr','\x20direct\x20child\x20menu(s).','menu_permission_denied','Menu\x20','path','sort','failed','\x20has\x20','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','\x20has\x20an\x20empty\x20platform\x20path.','cookie','label','plan','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.'];a153_0xd279=function(){return _0x625585;};return a153_0xd279();}function requiredExpectedUrl(_0x3b2db1){const _0x5963f9=a153_0x360b96;if(!hasFlag(_0x3b2db1,_0x5963f9(0x15a))||!_0x3b2db1['str'](_0x5963f9(0x15a))[_0x5963f9(0x150)]())throw CliErrors['flagMissing'](_0x5963f9(0x15a));return _0x3b2db1[_0x5963f9(0x123)](_0x5963f9(0x15a))[_0x5963f9(0x150)]();}async function buildPlan(_0x2edde3,_0x179e86){const _0x43e380=a153_0x360b96,_0x473177=validateExactId(_0x2edde3),_0x11b6f1=requiredUrl(_0x2edde3,_0x43e380(0x11f)),_0x4452b3=requiredExpectedUrl(_0x2edde3),_0x31f9c2=parseParentId(_0x2edde3,'expect-parent-id',{'required':!![]}),_0x4d3663=await fetchMutationSnapshot(_0x2edde3,_0x43e380(0x154),_0x473177),_0x391ef1=requireMenu(_0x4d3663,_0x473177);assertExternalLinkLeaf(_0x391ef1);if(_0x391ef1['parentId']!==_0x31f9c2)throw menuError('menu_state_drift',_0x43e380(0x145)+_0x473177+_0x43e380(0x138)+formatParent(_0x31f9c2)+_0x43e380(0x125)+formatParent(_0x391ef1[_0x43e380(0x131)])+'.',_0x43e380(0x161));const _0x3ac988=_0x391ef1['url']===_0x11b6f1;if(!_0x3ac988&&_0x391ef1['url']!==_0x4452b3)throw menuError('menu_state_drift','Menu\x20'+_0x473177+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x552848={'id':_0x473177,'appCode':_0x2edde3[_0x43e380(0x13c)],'url':_0x11b6f1},_0xbedd58={..._0x391ef1,'url':_0x11b6f1};return{'body':_0x552848,'before':_0x391ef1,'noChanges':_0x3ac988,'snapshot':_0x4d3663,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x473177},'before':_0x391ef1,'after':_0xbedd58,'dryRun':_0x179e86,'backend':[...BACKEND],'plannedActions':_0x3ac988?[]:[{'stage':'update-external-link-url','method':_0x43e380(0x140),'path':_0x43e380(0x13e),'body':_0x552848}],'snapshotHash':_0x4d3663[_0x43e380(0x153)],'warnings':_0x3ac988?[_0x43e380(0x168)]:[]})};}function assertExternalLinkLeaf(_0x15c797){const _0x58df16=a153_0x360b96;if(_0x15c797[_0x58df16(0x132)]!==_0x58df16(0x15c)&&_0x15c797[_0x58df16(0x132)]!==_0x58df16(0x13a))throw menuError(_0x58df16(0x15f),'Menu\x20'+_0x15c797['id']+'\x20is\x20type\x20\x22'+(_0x15c797[_0x58df16(0x132)]||_0x58df16(0x12f))+_0x58df16(0x165),_0x58df16(0x14a));if(_0x15c797[_0x58df16(0x139)]!==0x0)throw menuError(_0x58df16(0x156),_0x58df16(0x145)+_0x15c797['id']+_0x58df16(0x149)+_0x15c797[_0x58df16(0x139)]+_0x58df16(0x143),_0x58df16(0x14f));if(!_0x15c797['path'][_0x58df16(0x150)]())throw menuError(_0x58df16(0x160),_0x58df16(0x145)+_0x15c797['id']+_0x58df16(0x14b),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x56e168,_0x368cce,_0x359085){const _0x63688f=a153_0x360b96;assertExternalLinkLeaf(_0x368cce);const _0x3dee96=[['id',_0x368cce['id'],_0x56e168['id']],['label',_0x368cce[_0x63688f(0x14d)],_0x56e168[_0x63688f(0x14d)]],[_0x63688f(0x132),_0x368cce[_0x63688f(0x132)],_0x56e168[_0x63688f(0x132)]],[_0x63688f(0x146),_0x368cce[_0x63688f(0x146)],_0x56e168[_0x63688f(0x146)]],[_0x63688f(0x131),_0x368cce[_0x63688f(0x131)],_0x56e168[_0x63688f(0x131)]],[_0x63688f(0x147),_0x368cce['sort'],_0x56e168[_0x63688f(0x147)]],['visible',_0x368cce[_0x63688f(0x16a)],_0x56e168[_0x63688f(0x16a)]]];for(const [_0x53a9dd,_0x18fc1b,_0x366027]of _0x3dee96){assertVerified(_0x18fc1b===_0x366027,_0x63688f(0x145)+_0x56e168['id']+'\x20'+_0x53a9dd+_0x63688f(0x137));}assertVerified(_0x368cce[_0x63688f(0x11f)]===_0x359085,_0x63688f(0x145)+_0x56e168['id']+_0x63688f(0x120));}function updateSuccess(_0x960413,_0x3ba72a,_0x5e8d5f,_0x3847f5,_0x5c5859){const _0x428448=a153_0x360b96,_0x4a0b03=_0x5e8d5f['id'],_0x3f14a6=mutationResult({..._0x960413,'after':_0x5e8d5f,'dryRun':![],'succeeded':[{'id':_0x4a0b03,'updated':!_0x3847f5,'skipped':_0x3847f5,'recovered':_0x5c5859}],'verification':{'checkedBy':_0x428448(0x13b),'snapshotHash':_0x3ba72a[_0x428448(0x153)],'targetId':_0x4a0b03,'matchesRequestedState':!![],'recovered':_0x5c5859}});return{'ok':!![],'message':_0x5c5859?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x4a0b03+'.':_0x3847f5?_0x428448(0x145)+_0x4a0b03+_0x428448(0x12b):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x4a0b03+'.','data':{..._0x3f14a6,'recovered':_0x5c5859}};}async function recoverAfterResponseLoss(_0x491185,_0x2ecdab){const _0x47530c=a153_0x360b96,{plan:_0x4e9522,before:_0x360ef5,body:_0x1ee629}=_0x2ecdab;let _0x588a11;try{_0x588a11=await fetchMenuSnapshot(_0x491185['appCode'],_0x491185[_0x47530c(0x14c)]);}catch{throw recoveryRequired(_0x4e9522,_0x491185['appCode'],{'id':_0x1ee629['id'],'readbackFailed':!![]});}const _0x39cf99=_0x588a11[_0x47530c(0x122)]['get'](_0x1ee629['id']);if(!_0x39cf99||_0x39cf99['url']!==_0x1ee629['url'])throw recoveryRequired(_0x4e9522,_0x491185['appCode'],{'id':_0x1ee629['id'],'requestedUrlObserved':![],'after':_0x39cf99??null});try{verifyUpdatedFact(_0x360ef5,_0x39cf99,_0x1ee629[_0x47530c(0x11f)]);}catch(_0x4222c7){const _0x6318a=asVerificationError(_0x4222c7,_0x47530c(0x12d)+_0x1ee629['id']+_0x47530c(0x151));throw menuFailure(_0x6318a,_0x4e9522,{'stage':_0x47530c(0x126),'succeeded':[{'id':_0x1ee629['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1ee629['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x39cf99,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x47530c(0x148),'targetId':_0x1ee629['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x491185[_0x47530c(0x13c)])}});}return updateSuccess(_0x4e9522,_0x588a11,_0x39cf99,![],!![]);}function recoveryRequired(_0x26733f,_0x28108d,_0x1c3e3a){const _0x96e1f1=a153_0x360b96,_0x209f2e=menuError(_0x96e1f1(0x158),_0x96e1f1(0x12a),_0x96e1f1(0x163)+buildLookupCommand(_0x28108d)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x209f2e,_0x26733f,{'stage':_0x96e1f1(0x126),'failed':{'id':_0x1c3e3a['id'],..._0x1c3e3a[_0x96e1f1(0x130)]===undefined?{}:{'requestedUrlObserved':_0x1c3e3a[_0x96e1f1(0x130)]},..._0x1c3e3a[_0x96e1f1(0x159)]?{'readbackFailed':!![]}:{}},'after':_0x1c3e3a[_0x96e1f1(0x128)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':'failed','targetId':_0x1c3e3a['id'],..._0x1c3e3a[_0x96e1f1(0x130)]===undefined?{}:{'requestedUrlObserved':_0x1c3e3a[_0x96e1f1(0x130)]},..._0x1c3e3a[_0x96e1f1(0x159)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x28108d)}});}function buildLookupCommand(_0x4c97f8){const _0x146e97=a153_0x360b96,_0x3d6e6e='\x27'+_0x4c97f8['replace'](/'/g,_0x146e97(0x164))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x3d6e6e+'\x20--format\x20compress';}
1
+ const a153_0x478954=a153_0x4028;(function(_0xf92220,_0x1c4163){const _0xc97f44=a153_0x4028,_0x1b39d2=_0xf92220();while(!![]){try{const _0x12b371=parseInt(_0xc97f44(0x116))/0x1+-parseInt(_0xc97f44(0x142))/0x2+parseInt(_0xc97f44(0x11d))/0x3+-parseInt(_0xc97f44(0x117))/0x4*(-parseInt(_0xc97f44(0x147))/0x5)+parseInt(_0xc97f44(0x109))/0x6*(-parseInt(_0xc97f44(0x12e))/0x7)+parseInt(_0xc97f44(0x14e))/0x8+-parseInt(_0xc97f44(0x12a))/0x9;if(_0x12b371===_0x1c4163)break;else _0x1b39d2['push'](_0x1b39d2['shift']());}catch(_0x5812c5){_0x1b39d2['push'](_0x1b39d2['shift']());}}}(a153_0x2762,0xd0b3f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a153_0x2762(){const _0x34973a=['Run\x20','menu\x20list','plan','parentId','\x20is\x20type\x20\x22','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','snapshot','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','path','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','128292NRfHnt','/smartapi/menu/update','menu_update_recovery_required','\x20has\x20','body','type','\x20URL\x20update\x20did\x20not\x20take\x20effect.','failed','iframe','update\x20external\x20menu\x20URL','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','visible','expect-url','969679puDCpz','68716vputzD','label','sort','appCode','str','replace','3807867NfpJyf','Updated\x20external\x20URL\x20for\x20menu\x20','Menu\x20','menu','external-link-update','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','\x20already\x20matches\x20the\x20requested\x20URL.','write','update-recovery','update-external-link-url','readbackFailed','rabetbase\x20menu\x20list\x20--appcode\x20','26739054uZUxcj','string','menu_external_link_not_leaf','expect-parent-id','301yWogYt','Response\x20was\x20lost\x20and\x20menu\x20','code','menu_external_link_path_missing','\x20direct\x20child\x20menu(s).','after','menu_permission_denied','menu_external_link_type_required','flagMissing','hash','Update\x20request\x20for\x20menu\x20','\x20has\x20an\x20empty\x20platform\x20path.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','get','verification','url','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','verify\x20external\x20menu\x20URL\x20update','menu_state_drift','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','121748EUYZqj','unknown','childrenCount','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.',',\x20current\x20','385AFrwgg','\x27\x5c\x27\x27','\x22,\x20not\x20iframe\x20or\x20link.','cookie','\x20changed\x20during\x20the\x20URL-only\x20update.','trim','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','9955216rgZJPn','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','POST','requestedUrlObserved'];a153_0x2762=function(){return _0x34973a;};return a153_0x2762();}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':a153_0x478954(0xfd),'path':a153_0x478954(0x10a)}];export const menuExternalLinkUpdate={'service':a153_0x478954(0x120),'command':a153_0x478954(0x121),'description':a153_0x478954(0x122),'risk':a153_0x478954(0x125),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a153_0x478954(0x13d),'type':'string','required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':'expect-url','type':a153_0x478954(0x12b),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x744558){validateInput(_0x744558);},async 'dryRun'(_0x4a4d6f){const _0x506430=a153_0x478954;validateInput(_0x4a4d6f);const _0x24f1f4=await buildPlan(_0x4a4d6f,!![]);return menuDryRunResult(_0x24f1f4[_0x506430(0x101)],{'method':'POST','url':_0x506430(0x10a),'body':_0x24f1f4[_0x506430(0x10d)],'description':_0x506430(0x106)+_0x24f1f4[_0x506430(0x10d)]['id']+'.'});},async 'execute'(_0x362c57){const _0x55bf74=a153_0x478954;validateInput(_0x362c57);const _0x2716cb=await buildPlan(_0x362c57,![]),{plan:_0xe2c1cd,body:_0x489a32,before:_0x28a92e,noChanges:_0x344129}=_0x2716cb,_0x84b669=_0x489a32['id'];if(_0x344129)return updateSuccess(_0xe2c1cd,_0x2716cb[_0x55bf74(0x105)],_0x28a92e,!![],![]);await recheckMutationSnapshot(_0x362c57,_0xe2c1cd,_0x55bf74(0x112),_0x84b669);try{await updateMenuEntity(_0x362c57[_0x55bf74(0x11a)],_0x362c57['cookie'],{'id':_0x489a32['id'],'url':_0x489a32['url']});}catch(_0x482722){const _0x5061f4=mapMenuApiError(_0x482722,_0x55bf74(0x112),_0x84b669);if(isMenuResponseLoss(_0x482722)&&_0x5061f4[_0x55bf74(0x130)]!==_0x55bf74(0x134))return recoverAfterResponseLoss(_0x362c57,_0x2716cb);throw menuFailure(_0x5061f4,_0xe2c1cd,{'stage':'update','failed':{'id':_0x84b669},'warnings':[_0x55bf74(0x145)],'verification':{'status':_0x55bf74(0x110),'targetId':_0x84b669,'lookupCommand':buildLookupCommand(_0x362c57[_0x55bf74(0x11a)])}});}let _0x5049c3,_0x14e475;try{_0x5049c3=await fetchMenuSnapshot(_0x362c57['appCode'],_0x362c57['cookie']),_0x14e475=requireMenu(_0x5049c3,_0x84b669),verifyUpdatedFact(_0x28a92e,_0x14e475,_0x489a32[_0x55bf74(0x13d)]);}catch(_0x2dfb88){const _0x588035=describeMenuErrorCause(_0x2dfb88,_0x55bf74(0x13f),_0x84b669),_0x52727b=asVerificationError(_0x2dfb88,_0x55bf74(0x138)+_0x84b669+_0x55bf74(0x123));throw menuFailure(_0x52727b,_0xe2c1cd,{'stage':_0x55bf74(0x13c),'succeeded':[{'id':_0x84b669,'updateRequested':!![]}],'failed':{'id':_0x84b669,'requestedStateConfirmed':![],..._0x588035},'warnings':[_0x55bf74(0x14d)],'verification':{'status':_0x55bf74(0x110),'targetId':_0x84b669,'lookupCommand':buildLookupCommand(_0x362c57[_0x55bf74(0x11a)])}});}return updateSuccess(_0xe2c1cd,_0x5049c3,_0x14e475,![],![]);}};function validateInput(_0x275bbd){const _0x5b1ab5=a153_0x478954;validateExactId(_0x275bbd),requiredUrl(_0x275bbd,_0x5b1ab5(0x13d)),requiredExpectedUrl(_0x275bbd),parseParentId(_0x275bbd,_0x5b1ab5(0x12d),{'required':!![]});}function requiredUrl(_0x1c7a25,_0x2eccbd){const _0x2804ed=a153_0x478954;if(!hasFlag(_0x1c7a25,_0x2eccbd)||!_0x1c7a25[_0x2804ed(0x11b)](_0x2eccbd)[_0x2804ed(0x14c)]())throw CliErrors['flagMissing'](_0x2eccbd);return validateExternalMenuUrl(_0x1c7a25[_0x2804ed(0x11b)](_0x2eccbd));}function requiredExpectedUrl(_0x26e92d){const _0x23950f=a153_0x478954;if(!hasFlag(_0x26e92d,'expect-url')||!_0x26e92d['str'](_0x23950f(0x115))[_0x23950f(0x14c)]())throw CliErrors[_0x23950f(0x136)](_0x23950f(0x115));return _0x26e92d[_0x23950f(0x11b)](_0x23950f(0x115))[_0x23950f(0x14c)]();}async function buildPlan(_0x9ffb71,_0x2515c9){const _0x5962ec=a153_0x478954,_0x3af32b=validateExactId(_0x9ffb71),_0x221192=requiredUrl(_0x9ffb71,'url'),_0x44fc4b=requiredExpectedUrl(_0x9ffb71),_0x19061e=parseParentId(_0x9ffb71,'expect-parent-id',{'required':!![]}),_0x75d19f=await fetchMutationSnapshot(_0x9ffb71,_0x5962ec(0x112),_0x3af32b),_0x5a0422=requireMenu(_0x75d19f,_0x3af32b);assertExternalLinkLeaf(_0x5a0422);if(_0x5a0422[_0x5962ec(0x102)]!==_0x19061e)throw menuError(_0x5962ec(0x140),_0x5962ec(0x11f)+_0x3af32b+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x19061e)+_0x5962ec(0x146)+formatParent(_0x5a0422[_0x5962ec(0x102)])+'.',_0x5962ec(0x13a));const _0x24df6a=_0x5a0422[_0x5962ec(0x13d)]===_0x221192;if(!_0x24df6a&&_0x5a0422[_0x5962ec(0x13d)]!==_0x44fc4b)throw menuError(_0x5962ec(0x140),_0x5962ec(0x11f)+_0x3af32b+_0x5962ec(0x104),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x4193a2={'id':_0x3af32b,'appCode':_0x9ffb71[_0x5962ec(0x11a)],'url':_0x221192},_0x4a901e={..._0x5a0422,'url':_0x221192};return{'body':_0x4193a2,'before':_0x5a0422,'noChanges':_0x24df6a,'snapshot':_0x75d19f,'plan':mutationResult({'operation':_0x5962ec(0x121),'selector':{'id':_0x3af32b},'before':_0x5a0422,'after':_0x4a901e,'dryRun':_0x2515c9,'backend':[...BACKEND],'plannedActions':_0x24df6a?[]:[{'stage':_0x5962ec(0x127),'method':_0x5962ec(0xfd),'path':'/smartapi/menu/update','body':_0x4193a2}],'snapshotHash':_0x75d19f[_0x5962ec(0x137)],'warnings':_0x24df6a?[_0x5962ec(0x13e)]:[]})};}function assertExternalLinkLeaf(_0x5b12e1){const _0x4e6b4f=a153_0x478954;if(_0x5b12e1[_0x4e6b4f(0x10e)]!==_0x4e6b4f(0x111)&&_0x5b12e1[_0x4e6b4f(0x10e)]!=='link')throw menuError(_0x4e6b4f(0x135),_0x4e6b4f(0x11f)+_0x5b12e1['id']+_0x4e6b4f(0x103)+(_0x5b12e1[_0x4e6b4f(0x10e)]||_0x4e6b4f(0x143))+_0x4e6b4f(0x149),_0x4e6b4f(0x108));if(_0x5b12e1[_0x4e6b4f(0x144)]!==0x0)throw menuError(_0x4e6b4f(0x12c),_0x4e6b4f(0x11f)+_0x5b12e1['id']+_0x4e6b4f(0x10c)+_0x5b12e1[_0x4e6b4f(0x144)]+_0x4e6b4f(0x132),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x5b12e1[_0x4e6b4f(0x107)][_0x4e6b4f(0x14c)]())throw menuError(_0x4e6b4f(0x131),_0x4e6b4f(0x11f)+_0x5b12e1['id']+_0x4e6b4f(0x139),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x4edf9f,_0x38f601,_0x51d243){const _0x580203=a153_0x478954;assertExternalLinkLeaf(_0x38f601);const _0x217488=[['id',_0x38f601['id'],_0x4edf9f['id']],['label',_0x38f601[_0x580203(0x118)],_0x4edf9f[_0x580203(0x118)]],['type',_0x38f601['type'],_0x4edf9f[_0x580203(0x10e)]],[_0x580203(0x107),_0x38f601[_0x580203(0x107)],_0x4edf9f['path']],[_0x580203(0x102),_0x38f601[_0x580203(0x102)],_0x4edf9f['parentId']],['sort',_0x38f601[_0x580203(0x119)],_0x4edf9f[_0x580203(0x119)]],[_0x580203(0x114),_0x38f601[_0x580203(0x114)],_0x4edf9f[_0x580203(0x114)]]];for(const [_0x329971,_0x653998,_0x3af6c7]of _0x217488){assertVerified(_0x653998===_0x3af6c7,_0x580203(0x11f)+_0x4edf9f['id']+'\x20'+_0x329971+_0x580203(0x14b));}assertVerified(_0x38f601[_0x580203(0x13d)]===_0x51d243,'Menu\x20'+_0x4edf9f['id']+_0x580203(0x10f));}function a153_0x4028(_0x5354a3,_0x591bfe){_0x5354a3=_0x5354a3-0xfc;const _0x276256=a153_0x2762();let _0x402839=_0x276256[_0x5354a3];return _0x402839;}function updateSuccess(_0x5b2b59,_0x49cdf1,_0x2c112c,_0x3566c5,_0x2d7bfc){const _0xafc0e1=a153_0x478954,_0x448362=_0x2c112c['id'],_0x16aee9=mutationResult({..._0x5b2b59,'after':_0x2c112c,'dryRun':![],'succeeded':[{'id':_0x448362,'updated':!_0x3566c5,'skipped':_0x3566c5,'recovered':_0x2d7bfc}],'verification':{'checkedBy':_0xafc0e1(0x100),'snapshotHash':_0x49cdf1['hash'],'targetId':_0x448362,'matchesRequestedState':!![],'recovered':_0x2d7bfc}});return{'ok':!![],'message':_0x2d7bfc?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x448362+'.':_0x3566c5?_0xafc0e1(0x11f)+_0x448362+_0xafc0e1(0x124):_0xafc0e1(0x11e)+_0x448362+'.','data':{..._0x16aee9,'recovered':_0x2d7bfc}};}async function recoverAfterResponseLoss(_0x5088e7,_0x392db3){const _0x2c6302=a153_0x478954,{plan:_0x797004,before:_0x590431,body:_0x5ec6bb}=_0x392db3;let _0x2e41ac;try{_0x2e41ac=await fetchMenuSnapshot(_0x5088e7[_0x2c6302(0x11a)],_0x5088e7[_0x2c6302(0x14a)]);}catch{throw recoveryRequired(_0x797004,_0x5088e7[_0x2c6302(0x11a)],{'id':_0x5ec6bb['id'],'readbackFailed':!![]});}const _0x3a780b=_0x2e41ac['byId'][_0x2c6302(0x13b)](_0x5ec6bb['id']);if(!_0x3a780b||_0x3a780b[_0x2c6302(0x13d)]!==_0x5ec6bb[_0x2c6302(0x13d)])throw recoveryRequired(_0x797004,_0x5088e7[_0x2c6302(0x11a)],{'id':_0x5ec6bb['id'],'requestedUrlObserved':![],'after':_0x3a780b??null});try{verifyUpdatedFact(_0x590431,_0x3a780b,_0x5ec6bb[_0x2c6302(0x13d)]);}catch(_0xee5e45){const _0x416077=asVerificationError(_0xee5e45,_0x2c6302(0x12f)+_0x5ec6bb['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x416077,_0x797004,{'stage':_0x2c6302(0x126),'succeeded':[{'id':_0x5ec6bb['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x5ec6bb['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x3a780b,'warnings':[_0x2c6302(0xfc)],'verification':{'status':_0x2c6302(0x110),'targetId':_0x5ec6bb['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5088e7[_0x2c6302(0x11a)])}});}return updateSuccess(_0x797004,_0x2e41ac,_0x3a780b,![],!![]);}function recoveryRequired(_0x2acbca,_0x2af1f6,_0x264135){const _0x4f1ada=a153_0x478954,_0x201c91=menuError(_0x4f1ada(0x10b),_0x4f1ada(0x141),_0x4f1ada(0xff)+buildLookupCommand(_0x2af1f6)+_0x4f1ada(0x113));return menuFailure(_0x201c91,_0x2acbca,{'stage':'update-recovery','failed':{'id':_0x264135['id'],..._0x264135[_0x4f1ada(0xfe)]===undefined?{}:{'requestedUrlObserved':_0x264135['requestedUrlObserved']},..._0x264135[_0x4f1ada(0x128)]?{'readbackFailed':!![]}:{}},'after':_0x264135[_0x4f1ada(0x133)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x4f1ada(0x110),'targetId':_0x264135['id'],..._0x264135[_0x4f1ada(0xfe)]===undefined?{}:{'requestedUrlObserved':_0x264135[_0x4f1ada(0xfe)]},..._0x264135[_0x4f1ada(0x128)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x2af1f6)}});}function buildLookupCommand(_0x258797){const _0x100378=a153_0x478954,_0x5822b9='\x27'+_0x258797[_0x100378(0x11c)](/'/g,_0x100378(0x148))+'\x27';return _0x100378(0x129)+_0x5822b9+'\x20--format\x20compress';}
@@ -1 +1 @@
1
- const a154_0x37f8ca=a154_0x7631;(function(_0x3d7bc6,_0x305266){const _0x4a6343=a154_0x7631,_0x10bae0=_0x3d7bc6();while(!![]){try{const _0x3536f9=parseInt(_0x4a6343(0x18d))/0x1*(parseInt(_0x4a6343(0x18f))/0x2)+-parseInt(_0x4a6343(0x1a0))/0x3*(-parseInt(_0x4a6343(0x1ac))/0x4)+parseInt(_0x4a6343(0x185))/0x5*(-parseInt(_0x4a6343(0x1bb))/0x6)+parseInt(_0x4a6343(0x1bd))/0x7*(-parseInt(_0x4a6343(0x190))/0x8)+-parseInt(_0x4a6343(0x1b6))/0x9*(parseInt(_0x4a6343(0x192))/0xa)+-parseInt(_0x4a6343(0x1be))/0xb+parseInt(_0x4a6343(0x198))/0xc;if(_0x3536f9===_0x305266)break;else _0x10bae0['push'](_0x10bae0['shift']());}catch(_0x2b626d){_0x10bae0['push'](_0x10bae0['shift']());}}}(a154_0x528e,0x986af));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a154_0x7631(_0x2b45e7,_0x5d72d2){_0x2b45e7=_0x2b45e7-0x17a;const _0x528e4d=a154_0x528e();let _0x76318d=_0x528e4d[_0x2b45e7];return _0x76318d;}import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';function a154_0x528e(){const _0x303556=['create-folder','/smartapi/menu/create','type','6vxXKMO','trim','23401RArdiu','8035742xmWgxl','Created\x20menu\x20','create-response-validation','depth','sort','Would\x20create\x20empty\x20folder\x20\x22','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','<platform-generated>','isSafeInteger','\x20is\x20not\x20visible.','Folder\x20label','Created\x20menu\x20folder\x20','create\x20folder','after','Created\x20folder\x20','get','212430eLiNrN','parent-id','label','hash','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20is\x20not\x20empty.','\x20has\x20an\x20unexpected\x20sort.','verify\x20folder\x20creation','222685WjVrbe','menu_create_response_invalid','4etleZs','592PRSrGR','byId','514760XQPomo','\x20has\x20an\x20unexpected\x20label.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','Folder\x20','rabetbase\x20menu\x20list\x20--format\x20json','pageId','11827536DnVgHq','\x20has\x20unexpected\x20parent\x20','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','path','\x20may\x20exist\x20online\x20at\x20path\x20','write','create','resources','903niAhhO','failed','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','verification','folder','\x20unexpectedly\x20owns\x20a\x20page.','\x20is\x20not\x20type\x20folder.','stringify','appCode','string','menu','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','4892PcNzkz','parentId','childrenCount','str','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','visible','\x20is\x20missing\x20from\x20menu\x20list.','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','cookie','POST','27iAPjlJ','group-create'];a154_0x528e=function(){return _0x303556;};return a154_0x528e();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0x37f8ca(0x1b5),'path':a154_0x37f8ca(0x1b9)}];export const menuGroupCreate={'service':a154_0x37f8ca(0x1aa),'command':a154_0x37f8ca(0x1b7),'description':a154_0x37f8ca(0x1a2),'risk':a154_0x37f8ca(0x19d),'structuredErrors':!![],'flags':[{'name':'label','type':a154_0x37f8ca(0x1a9),'required':!![],'description':a154_0x37f8ca(0x17f)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2f8b7){validateCreateInput(_0x2f8b7);},async 'dryRun'(_0x395971){const _0x4eb6bd=a154_0x37f8ca,_0x4edb50=await buildCreatePlan(_0x395971,!![]),_0x2d11a6=_0x4edb50['after'];return menuDryRunResult(_0x4edb50,{'method':_0x4eb6bd(0x1b5),'url':_0x4eb6bd(0x1b9),'body':{'parentId':toApiParentId(_0x2d11a6['parentId']),'label':_0x2d11a6[_0x4eb6bd(0x187)],'type':_0x4eb6bd(0x1a4),'visible':!![],'sort':_0x2d11a6[_0x4eb6bd(0x1c2)],'extend':{}},'description':_0x4eb6bd(0x17a)+String(_0x2d11a6['label'])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x4f254d){const _0xd549c2=a154_0x37f8ca;validateCreateInput(_0x4f254d);const _0x481900=await buildCreatePlan(_0x4f254d,![]),_0x5c7e86=_0x481900[_0xd549c2(0x182)];await recheckMutationSnapshot(_0x4f254d,_0x481900,_0xd549c2(0x181));let _0x25dba6;try{_0x25dba6=await createMenuEntity(_0x4f254d[_0xd549c2(0x1a8)],_0x4f254d[_0xd549c2(0x1b4)],{'parentId':toApiParentId(_0x5c7e86[_0xd549c2(0x1ad)]),'label':String(_0x5c7e86[_0xd549c2(0x187)]),'type':_0xd549c2(0x1a4),'visible':!![],'sort':Number(_0x5c7e86[_0xd549c2(0x1c2)]),'extend':{}});}catch(_0x5cbe1f){const _0x2042cf=mapMenuApiError(_0x5cbe1f,_0xd549c2(0x181));throw menuFailure(_0x2042cf,_0x481900,{'stage':_0xd549c2(0x19e),'failed':{}});}const _0xb797b0=Number(_0x25dba6['id']);if(!Number[_0xd549c2(0x17d)](_0xb797b0)||_0xb797b0<=0x0){const _0x20b0f1=menuError(_0xd549c2(0x18e),_0xd549c2(0x194),_0xd549c2(0x189));throw menuFailure(_0x20b0f1,_0x481900,{'stage':_0xd549c2(0x1c0),'failed':{'createdId':_0x25dba6['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0x5c2cb2=typeof _0x25dba6[_0xd549c2(0x19b)]===_0xd549c2(0x1a9)?_0x25dba6[_0xd549c2(0x19b)]:'';if(!_0x5c2cb2[_0xd549c2(0x1bc)]()){const _0x40fe75=menuError(_0xd549c2(0x18e),'Menu\x20create\x20response\x20for\x20folder\x20'+_0xb797b0+_0xd549c2(0x17b),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x40fe75,_0x481900,{'stage':'create-response-validation','succeeded':[{'id':_0xb797b0,'created':!![]}],'failed':{'id':_0xb797b0,'generatedPathConfirmed':![]},'warnings':[_0xd549c2(0x195)+_0xb797b0+_0xd549c2(0x1b3)],'after':{..._0x5c7e86,'id':_0xb797b0,'path':_0x5c2cb2},'verification':{'status':_0xd549c2(0x1a1),'lookupCommand':_0xd549c2(0x196),'targetId':_0xb797b0}});}let _0x3b1ac4;try{_0x3b1ac4=await fetchMenuSnapshot(_0x4f254d['appCode'],_0x4f254d[_0xd549c2(0x1b4)]);}catch(_0x3044fa){const _0x49abc6=describeMenuErrorCause(_0x3044fa,_0xd549c2(0x18c),_0xb797b0),_0x4c379a=asVerificationError(_0x3044fa,'Folder\x20'+_0xb797b0+_0xd549c2(0x1b0));throw menuFailure(_0x4c379a,_0x481900,{'stage':_0xd549c2(0x1a3),'succeeded':[{'id':_0xb797b0,'created':!![],'path':_0x5c2cb2}],'failed':{'id':_0xb797b0,'finalFactsConfirmed':![],..._0x49abc6},'warnings':['Folder\x20'+_0xb797b0+_0xd549c2(0x19c)+JSON[_0xd549c2(0x1a7)](_0x5c2cb2)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x5c7e86,'id':_0xb797b0,'path':_0x5c2cb2},'verification':{'status':_0xd549c2(0x1a1),'lookupCommand':_0xd549c2(0x196),'targetId':_0xb797b0}});}const _0x1077b2=_0x3b1ac4[_0xd549c2(0x191)][_0xd549c2(0x184)](_0xb797b0);let _0x43e136;try{assertVerified(Boolean(_0x1077b2),_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x1b2)),_0x43e136=_0x1077b2,assertVerified(_0x43e136[_0xd549c2(0x1ba)]===_0xd549c2(0x1a4),_0xd549c2(0x1bf)+_0xb797b0+_0xd549c2(0x1a6)),assertVerified(_0x43e136[_0xd549c2(0x187)]===_0x5c7e86[_0xd549c2(0x187)],_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x193)),assertVerified(_0x43e136[_0xd549c2(0x19b)]===_0x5c2cb2&&Boolean(_0x43e136[_0xd549c2(0x19b)]['trim']()),_0xd549c2(0x183)+_0xb797b0+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x43e136[_0xd549c2(0x1b1)]===!![],'Created\x20folder\x20'+_0xb797b0+_0xd549c2(0x17e)),assertVerified(_0x43e136[_0xd549c2(0x19f)]['length']===0x0,'Created\x20folder\x20'+_0xb797b0+'\x20has\x20resources.'),assertVerified(_0x43e136[_0xd549c2(0x1ae)]===0x0,'Created\x20folder\x20'+_0xb797b0+_0xd549c2(0x18a)),assertVerified(_0x43e136[_0xd549c2(0x1c2)]===_0x5c7e86[_0xd549c2(0x1c2)],_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x18b)),assertVerified(_0x43e136['parentId']===_0x5c7e86[_0xd549c2(0x1ad)],_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x199)+(_0x43e136[_0xd549c2(0x1ad)]??'root')+'.'),assertVerified(_0x43e136[_0xd549c2(0x197)]==null,'Created\x20folder\x20'+_0xb797b0+_0xd549c2(0x1a5));const _0x256aa2=_0x43e136[_0xd549c2(0x1ad)]==null?undefined:requireFolder(_0x3b1ac4,_0x43e136[_0xd549c2(0x1ad)]);assertVerified(_0x43e136['depth']===(_0x256aa2?_0x256aa2[_0xd549c2(0x1c1)]+0x1:0x0),_0xd549c2(0x183)+_0xb797b0+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x283267){const _0x3a6199=describeMenuErrorCause(_0x283267,'verify\x20folder\x20creation',_0xb797b0),_0x5e1172=asVerificationError(_0x283267,_0xd549c2(0x195)+_0xb797b0+_0xd549c2(0x19a));throw menuFailure(_0x5e1172,_0x481900,{'stage':'verification','succeeded':[{'id':_0xb797b0,'created':!![],'path':_0x5c2cb2}],'failed':{'id':_0xb797b0,'finalFactsConfirmed':![],..._0x3a6199},'warnings':[_0xd549c2(0x195)+_0xb797b0+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x1077b2??{..._0x5c7e86,'id':_0xb797b0,'path':_0x5c2cb2},'verification':{'status':_0xd549c2(0x1a1),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0xb797b0}});}const _0x327cee=mutationResult({..._0x481900,'after':_0x43e136,'dryRun':![],'succeeded':[{'id':_0xb797b0,'type':_0xd549c2(0x1a4),'path':_0x5c2cb2}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x3b1ac4[_0xd549c2(0x188)],'folder':!![],'path':_0x5c2cb2,'emptyResources':!![]}});return{'ok':!![],'data':_0x327cee,'message':_0xd549c2(0x180)+_0xb797b0+'.'};}};function validateCreateInput(_0x93205){const _0x4f0f0f=a154_0x37f8ca,_0x1c755b=_0x93205[_0x4f0f0f(0x1af)](_0x4f0f0f(0x187))['trim']();if(!_0x1c755b)throw CliErrors['flagMissing'](_0x4f0f0f(0x187));parseParentId(_0x93205,_0x4f0f0f(0x186)),validateSort(_0x93205);}async function buildCreatePlan(_0x13fe65,_0x8e7a4e){const _0x318d11=a154_0x37f8ca,_0xb029f6=await fetchMutationSnapshot(_0x13fe65,_0x318d11(0x181)),_0x277e04=parseParentId(_0x13fe65,_0x318d11(0x186))??null;if(_0x277e04!=null)requireFolder(_0xb029f6,_0x277e04);const _0x5ce259=validateSort(_0x13fe65),_0xec5711=_0x5ce259??nextSiblingSort(_0xb029f6,_0x277e04,_0x318d11(0x1a4)),_0x1e7b1f=_0x13fe65[_0x318d11(0x1af)](_0x318d11(0x187))[_0x318d11(0x1bc)]();return mutationResult({'operation':_0x318d11(0x1b7),'selector':{'label':_0x1e7b1f,'parentId':_0x277e04},'before':null,'after':{'id':null,'parentId':_0x277e04,'label':_0x1e7b1f,'path':_0x318d11(0x17c),'type':_0x318d11(0x1a4),'visible':!![],'sort':_0xec5711,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x8e7a4e,'backend':[...BACKEND],'plannedActions':[{'stage':_0x318d11(0x1b8),'method':_0x318d11(0x1b5),'path':_0x318d11(0x1b9),'body':{'parentId':toApiParentId(_0x277e04),'label':_0x1e7b1f,'type':_0x318d11(0x1a4),'visible':!![],'sort':_0xec5711,'extend':{}}}],'snapshotHash':_0xb029f6[_0x318d11(0x188)],'warnings':[_0x318d11(0x1ab)]});}
1
+ const a154_0x5ccc77=a154_0x5128;function a154_0x5128(_0x5eeae4,_0x14da4f){_0x5eeae4=_0x5eeae4-0x103;const _0x51d2ff=a154_0x51d2();let _0x5128de=_0x51d2ff[_0x5eeae4];return _0x5128de;}(function(_0x553ecd,_0x3b3b98){const _0x2800c2=a154_0x5128,_0x719ea9=_0x553ecd();while(!![]){try{const _0x59d7f4=parseInt(_0x2800c2(0x12c))/0x1+parseInt(_0x2800c2(0x148))/0x2+parseInt(_0x2800c2(0x130))/0x3+-parseInt(_0x2800c2(0x126))/0x4*(parseInt(_0x2800c2(0x10c))/0x5)+-parseInt(_0x2800c2(0x118))/0x6+parseInt(_0x2800c2(0x135))/0x7+-parseInt(_0x2800c2(0x12f))/0x8*(-parseInt(_0x2800c2(0x10d))/0x9);if(_0x59d7f4===_0x3b3b98)break;else _0x719ea9['push'](_0x719ea9['shift']());}catch(_0x10dcd3){_0x719ea9['push'](_0x719ea9['shift']());}}}(a154_0x51d2,0x99ff3));function a154_0x51d2(){const _0x4b4008=['Created\x20menu\x20folder\x20','\x20has\x20resources.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','after','\x20has\x20unexpected\x20parent\x20','sort','\x22\x20with\x20a\x20platform-generated\x20path.','stringify','failed','childrenCount','group-create','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','length','77768PJyChN','\x20is\x20not\x20empty.','label','hash','\x20has\x20an\x20unexpected\x20sort.','trim','369452wOwvPs','parent-id','\x20unexpectedly\x20owns\x20a\x20page.','11640rkAmkn','3329739CexHUf','Created\x20menu\x20','appCode','<platform-generated>','rabetbase\x20menu\x20list\x20--format\x20json','3853388WLCMiY','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','resources','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','pageId','parentId','\x20has\x20an\x20unexpected\x20label.','create','/smartapi/menu/create','verify\x20folder\x20creation','\x20is\x20not\x20visible.',';\x20verify\x20it\x20before\x20retrying.','folder','write','verification','Folder\x20','str','type','isSafeInteger','194918OaTHsW','create\x20folder','flagMissing','POST','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','Would\x20create\x20empty\x20folder\x20\x22','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','\x20is\x20missing\x20from\x20menu\x20list.','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','Created\x20folder\x20','cookie','menu\x20list','\x20is\x20not\x20type\x20folder.','280UhVkkT','1053bQorJe','menu_create_response_invalid','visible','menu','string','get','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','create-response-validation','path','\x20may\x20exist\x20online\x20at\x20path\x20','Menu\x20create\x20response\x20for\x20folder\x20','3468120bKBWCH'];a154_0x51d2=function(){return _0x4b4008;};return a154_0x51d2();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0x5ccc77(0x14b),'path':a154_0x5ccc77(0x13d)}];export const menuGroupCreate={'service':a154_0x5ccc77(0x110),'command':a154_0x5ccc77(0x123),'description':a154_0x5ccc77(0x138),'risk':a154_0x5ccc77(0x142),'structuredErrors':!![],'flags':[{'name':'label','type':'string','required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2c6fe0){validateCreateInput(_0x2c6fe0);},async 'dryRun'(_0x5e2acd){const _0x27b08c=a154_0x5ccc77,_0xb6b371=await buildCreatePlan(_0x5e2acd,!![]),_0x4ba33f=_0xb6b371[_0x27b08c(0x11c)];return menuDryRunResult(_0xb6b371,{'method':_0x27b08c(0x14b),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x4ba33f['parentId']),'label':_0x4ba33f[_0x27b08c(0x128)],'type':_0x27b08c(0x141),'visible':!![],'sort':_0x4ba33f[_0x27b08c(0x11e)],'extend':{}},'description':_0x27b08c(0x104)+String(_0x4ba33f[_0x27b08c(0x128)])+_0x27b08c(0x11f)});},async 'execute'(_0x27e893){const _0x277549=a154_0x5ccc77;validateCreateInput(_0x27e893);const _0x5bc299=await buildCreatePlan(_0x27e893,![]),_0x2c9bcd=_0x5bc299['after'];await recheckMutationSnapshot(_0x27e893,_0x5bc299,'create\x20folder');let _0x222153;try{_0x222153=await createMenuEntity(_0x27e893[_0x277549(0x132)],_0x27e893[_0x277549(0x109)],{'parentId':toApiParentId(_0x2c9bcd[_0x277549(0x13a)]),'label':String(_0x2c9bcd['label']),'type':_0x277549(0x141),'visible':!![],'sort':Number(_0x2c9bcd[_0x277549(0x11e)]),'extend':{}});}catch(_0x38b238){const _0x4d5c9a=mapMenuApiError(_0x38b238,_0x277549(0x149));throw menuFailure(_0x4d5c9a,_0x5bc299,{'stage':_0x277549(0x13c),'failed':{}});}const _0x5ba283=Number(_0x222153['id']);if(!Number[_0x277549(0x147)](_0x5ba283)||_0x5ba283<=0x0){const _0x3c1854=menuError(_0x277549(0x10e),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0x277549(0x124));throw menuFailure(_0x3c1854,_0x5bc299,{'stage':_0x277549(0x114),'failed':{'createdId':_0x222153['id']??null},'warnings':[_0x277549(0x113)],'verification':{'status':_0x277549(0x121),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0xc72ec3=typeof _0x222153[_0x277549(0x115)]===_0x277549(0x111)?_0x222153[_0x277549(0x115)]:'';if(!_0xc72ec3[_0x277549(0x12b)]()){const _0x450005=menuError(_0x277549(0x10e),_0x277549(0x117)+_0x5ba283+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x277549(0x103));throw menuFailure(_0x450005,_0x5bc299,{'stage':_0x277549(0x114),'succeeded':[{'id':_0x5ba283,'created':!![]}],'failed':{'id':_0x5ba283,'generatedPathConfirmed':![]},'warnings':[_0x277549(0x144)+_0x5ba283+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x2c9bcd,'id':_0x5ba283,'path':_0xc72ec3},'verification':{'status':_0x277549(0x121),'lookupCommand':_0x277549(0x134),'targetId':_0x5ba283}});}let _0x397a12;try{_0x397a12=await fetchMenuSnapshot(_0x27e893[_0x277549(0x132)],_0x27e893[_0x277549(0x109)]);}catch(_0x14a251){const _0x587bd5=describeMenuErrorCause(_0x14a251,_0x277549(0x13e),_0x5ba283),_0x4d0c8c=asVerificationError(_0x14a251,_0x277549(0x144)+_0x5ba283+'\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts');throw menuFailure(_0x4d0c8c,_0x5bc299,{'stage':'verification','succeeded':[{'id':_0x5ba283,'created':!![],'path':_0xc72ec3}],'failed':{'id':_0x5ba283,'finalFactsConfirmed':![],..._0x587bd5},'warnings':[_0x277549(0x144)+_0x5ba283+_0x277549(0x116)+JSON[_0x277549(0x120)](_0xc72ec3)+_0x277549(0x140)],'after':{..._0x2c9bcd,'id':_0x5ba283,'path':_0xc72ec3},'verification':{'status':_0x277549(0x121),'lookupCommand':_0x277549(0x134),'targetId':_0x5ba283}});}const _0x1fde1b=_0x397a12['byId'][_0x277549(0x112)](_0x5ba283);let _0x15f986;try{assertVerified(Boolean(_0x1fde1b),'Created\x20folder\x20'+_0x5ba283+_0x277549(0x106)),_0x15f986=_0x1fde1b,assertVerified(_0x15f986[_0x277549(0x146)]===_0x277549(0x141),_0x277549(0x131)+_0x5ba283+_0x277549(0x10b)),assertVerified(_0x15f986['label']===_0x2c9bcd[_0x277549(0x128)],'Created\x20folder\x20'+_0x5ba283+_0x277549(0x13b)),assertVerified(_0x15f986[_0x277549(0x115)]===_0xc72ec3&&Boolean(_0x15f986[_0x277549(0x115)][_0x277549(0x12b)]()),_0x277549(0x108)+_0x5ba283+_0x277549(0x11b)),assertVerified(_0x15f986[_0x277549(0x10f)]===!![],_0x277549(0x108)+_0x5ba283+_0x277549(0x13f)),assertVerified(_0x15f986[_0x277549(0x137)][_0x277549(0x125)]===0x0,_0x277549(0x108)+_0x5ba283+_0x277549(0x11a)),assertVerified(_0x15f986[_0x277549(0x122)]===0x0,'Created\x20folder\x20'+_0x5ba283+_0x277549(0x127)),assertVerified(_0x15f986[_0x277549(0x11e)]===_0x2c9bcd[_0x277549(0x11e)],_0x277549(0x108)+_0x5ba283+_0x277549(0x12a)),assertVerified(_0x15f986[_0x277549(0x13a)]===_0x2c9bcd['parentId'],_0x277549(0x108)+_0x5ba283+_0x277549(0x11d)+(_0x15f986[_0x277549(0x13a)]??'root')+'.'),assertVerified(_0x15f986[_0x277549(0x139)]==null,_0x277549(0x108)+_0x5ba283+_0x277549(0x12e));const _0x3ca332=_0x15f986[_0x277549(0x13a)]==null?undefined:requireFolder(_0x397a12,_0x15f986['parentId']);assertVerified(_0x15f986['depth']===(_0x3ca332?_0x3ca332['depth']+0x1:0x0),_0x277549(0x108)+_0x5ba283+_0x277549(0x107));}catch(_0x45f500){const _0x75a2f=describeMenuErrorCause(_0x45f500,'verify\x20folder\x20creation',_0x5ba283),_0x21c0b8=asVerificationError(_0x45f500,_0x277549(0x144)+_0x5ba283+_0x277549(0x136));throw menuFailure(_0x21c0b8,_0x5bc299,{'stage':_0x277549(0x143),'succeeded':[{'id':_0x5ba283,'created':!![],'path':_0xc72ec3}],'failed':{'id':_0x5ba283,'finalFactsConfirmed':![],..._0x75a2f},'warnings':[_0x277549(0x144)+_0x5ba283+_0x277549(0x105)],'after':_0x1fde1b??{..._0x2c9bcd,'id':_0x5ba283,'path':_0xc72ec3},'verification':{'status':'failed','lookupCommand':_0x277549(0x134),'targetId':_0x5ba283}});}const _0x3addbf=mutationResult({..._0x5bc299,'after':_0x15f986,'dryRun':![],'succeeded':[{'id':_0x5ba283,'type':_0x277549(0x141),'path':_0xc72ec3}],'verification':{'checkedBy':_0x277549(0x10a),'snapshotHash':_0x397a12[_0x277549(0x129)],'folder':!![],'path':_0xc72ec3,'emptyResources':!![]}});return{'ok':!![],'data':_0x3addbf,'message':_0x277549(0x119)+_0x5ba283+'.'};}};function validateCreateInput(_0x339613){const _0x11a3d9=a154_0x5ccc77,_0x2c87f8=_0x339613['str']('label')[_0x11a3d9(0x12b)]();if(!_0x2c87f8)throw CliErrors[_0x11a3d9(0x14a)]('label');parseParentId(_0x339613,_0x11a3d9(0x12d)),validateSort(_0x339613);}async function buildCreatePlan(_0xeab3,_0xd5ab44){const _0x4ef724=a154_0x5ccc77,_0x49d46f=await fetchMutationSnapshot(_0xeab3,_0x4ef724(0x149)),_0x627873=parseParentId(_0xeab3,_0x4ef724(0x12d))??null;if(_0x627873!=null)requireFolder(_0x49d46f,_0x627873);const _0x55f8c8=validateSort(_0xeab3),_0x5724c7=_0x55f8c8??nextSiblingSort(_0x49d46f,_0x627873,_0x4ef724(0x141)),_0x50a128=_0xeab3[_0x4ef724(0x145)](_0x4ef724(0x128))[_0x4ef724(0x12b)]();return mutationResult({'operation':'group-create','selector':{'label':_0x50a128,'parentId':_0x627873},'before':null,'after':{'id':null,'parentId':_0x627873,'label':_0x50a128,'path':_0x4ef724(0x133),'type':_0x4ef724(0x141),'visible':!![],'sort':_0x5724c7,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0xd5ab44,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':'POST','path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x627873),'label':_0x50a128,'type':_0x4ef724(0x141),'visible':!![],'sort':_0x5724c7,'extend':{}}}],'snapshotHash':_0x49d46f['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
@@ -1 +1 @@
1
- const a155_0x55bad0=a155_0x4dd3;(function(_0x520279,_0x5df350){const _0x5c5d0b=a155_0x4dd3,_0x301a91=_0x520279();while(!![]){try{const _0x1db81e=parseInt(_0x5c5d0b(0x11c))/0x1*(parseInt(_0x5c5d0b(0x11e))/0x2)+parseInt(_0x5c5d0b(0xf9))/0x3+parseInt(_0x5c5d0b(0x10b))/0x4*(parseInt(_0x5c5d0b(0xf3))/0x5)+parseInt(_0x5c5d0b(0x10a))/0x6+parseInt(_0x5c5d0b(0x103))/0x7+-parseInt(_0x5c5d0b(0x104))/0x8*(-parseInt(_0x5c5d0b(0x10d))/0x9)+-parseInt(_0x5c5d0b(0x11a))/0xa*(parseInt(_0x5c5d0b(0x105))/0xb);if(_0x1db81e===_0x5df350)break;else _0x301a91['push'](_0x301a91['shift']());}catch(_0x47586a){_0x301a91['push'](_0x301a91['shift']());}}}(a155_0x1194,0x22fdf));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a155_0x55bad0(0xfa)}];export const menuGroupUpdate={'service':'menu','command':'group-update','description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a155_0x55bad0(0x11d),'structuredErrors':!![],'rejectedFlags':[{'name':a155_0x55bad0(0x115),'message':a155_0x55bad0(0x110),'hint':a155_0x55bad0(0xff)}],'flags':[MENU_ID_FLAG,{'name':a155_0x55bad0(0x100),'type':a155_0x55bad0(0xf8),'description':a155_0x55bad0(0x10c)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x488268){validateUpdateInput(_0x488268);},async 'dryRun'(_0x6468f8){const _0x256944=a155_0x55bad0;validateUpdateInput(_0x6468f8);const {plan:_0x3c3586,patch:_0xf5ab77}=await buildUpdatePlan(_0x6468f8,!![]);return menuDryRunResult(_0x3c3586,{'method':_0x256944(0xfc),'url':_0x256944(0xfa),'body':_0xf5ab77,'description':_0x256944(0x112)+_0x3c3586[_0x256944(0x108)]['id']+'.'});},async 'execute'(_0x3bd13c){const _0x3aa41a=a155_0x55bad0;validateUpdateInput(_0x3bd13c);const {plan:_0x1aaa18,patch:_0x554455,noChanges:_0x58d041}=await buildUpdatePlan(_0x3bd13c,![]),_0x1285d5=Number(_0x1aaa18[_0x3aa41a(0x108)]['id']),_0x3bc455=await recheckMutationSnapshot(_0x3bd13c,_0x1aaa18,'update\x20folder',_0x1285d5);if(!_0x58d041)try{await updateMenuEntity(_0x3bd13c[_0x3aa41a(0xef)],_0x3bd13c['cookie'],_0x554455);}catch(_0x25a511){const _0x81486a=mapMenuApiError(_0x25a511,'update\x20folder',_0x1285d5);throw menuFailure(_0x81486a,_0x1aaa18,{'stage':_0x3aa41a(0x118),'failed':{'id':_0x1285d5}});}let _0x161b5f=_0x3bc455,_0x19b3d5;try{!_0x58d041&&(_0x161b5f=await fetchMenuSnapshot(_0x3bd13c[_0x3aa41a(0xef)],_0x3bd13c['cookie'])),_0x19b3d5=requireMenu(_0x161b5f,_0x1285d5),verifyPatch(_0x19b3d5,_0x554455),_0x19b3d5[_0x3aa41a(0x101)]!=null&&requireFolder(_0x161b5f,_0x19b3d5[_0x3aa41a(0x101)]);}catch(_0x337637){const _0x592399=describeMenuErrorCause(_0x337637,_0x3aa41a(0x111),_0x1285d5),_0x4c8a54=asVerificationError(_0x337637,'Update\x20request\x20for\x20folder\x20'+_0x1285d5+_0x3aa41a(0x11f));throw menuFailure(_0x4c8a54,_0x1aaa18,{'stage':_0x3aa41a(0x116),'succeeded':[{'id':_0x1285d5,'updateRequested':!_0x58d041,'skipped':_0x58d041}],'failed':{'id':_0x1285d5,'requestedStateConfirmed':![],..._0x592399},'warnings':[_0x3aa41a(0x106)],'verification':{'status':_0x3aa41a(0x113),'lookupCommand':_0x3aa41a(0x10e),'targetId':_0x1285d5}});}const _0x107b04=mutationResult({..._0x1aaa18,'after':_0x19b3d5,'dryRun':![],'succeeded':[{'id':_0x1285d5,'updated':!_0x58d041,'skipped':_0x58d041}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x161b5f[_0x3aa41a(0x117)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x107b04,'message':_0x58d041?_0x3aa41a(0xfb)+_0x1285d5+_0x3aa41a(0x122):_0x3aa41a(0x11b)+_0x1285d5+'.'};}};function validateUpdateInput(_0x2aa49b){const _0x41cff0=a155_0x55bad0;validateExactId(_0x2aa49b);if(hasFlag(_0x2aa49b,_0x41cff0(0x115)))throw CliErrors[_0x41cff0(0x109)](_0x41cff0(0x110),_0x41cff0(0xff));if(!hasFlag(_0x2aa49b,'label')&&!hasFlag(_0x2aa49b,_0x41cff0(0xf0)))throw CliErrors[_0x41cff0(0x109)](_0x41cff0(0xf5));if(hasFlag(_0x2aa49b,_0x41cff0(0x100))&&!_0x2aa49b[_0x41cff0(0x121)](_0x41cff0(0x100))[_0x41cff0(0x107)]())throw CliErrors[_0x41cff0(0x109)](_0x41cff0(0xfe));validateSort(_0x2aa49b);}function a155_0x4dd3(_0x290e2f,_0x579ce6){_0x290e2f=_0x290e2f-0xef;const _0x1194fa=a155_0x1194();let _0x4dd3aa=_0x1194fa[_0x290e2f];return _0x4dd3aa;}async function buildUpdatePlan(_0x45d12b,_0x231dd7){const _0x5cbfe1=a155_0x55bad0,_0x4571eb=validateExactId(_0x45d12b),_0x26cf08=await fetchMutationSnapshot(_0x45d12b,_0x5cbfe1(0x119),_0x4571eb),_0xeb3ab7=requireMenu(_0x26cf08,_0x4571eb);if(_0xeb3ab7[_0x5cbfe1(0xfd)]!==_0x5cbfe1(0xf6))throw menuError('menu_not_folder',_0x5cbfe1(0x10f)+_0x4571eb+_0x5cbfe1(0xf4)+(_0xeb3ab7[_0x5cbfe1(0xfd)]||_0x5cbfe1(0x120))+_0x5cbfe1(0x114),_0x5cbfe1(0xf1));assertExpectedState(_0x45d12b,_0xeb3ab7);const _0x438e31={'id':_0x4571eb},_0x56dd32={..._0xeb3ab7};if(hasFlag(_0x45d12b,'label')){const _0x270c6c=_0x45d12b[_0x5cbfe1(0x121)](_0x5cbfe1(0x100))[_0x5cbfe1(0x107)]();_0x438e31[_0x5cbfe1(0x100)]=_0x270c6c,_0x56dd32[_0x5cbfe1(0x100)]=_0x270c6c;}if(hasFlag(_0x45d12b,_0x5cbfe1(0xf0))){const _0xd2c9b5=validateSort(_0x45d12b);_0x438e31['sort']=_0xd2c9b5,_0x56dd32[_0x5cbfe1(0xf0)]=_0xd2c9b5;}const _0x437f84=sameRequestedState(_0xeb3ab7,_0x56dd32),_0x28b956=_0x437f84?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x438e31,'noChanges':_0x437f84,'plan':mutationResult({'operation':_0x5cbfe1(0xf7),'selector':{'id':_0x4571eb},'before':_0xeb3ab7,'after':_0x56dd32,'dryRun':_0x231dd7,'backend':[...BACKEND],'snapshotHash':_0x26cf08[_0x5cbfe1(0x117)],'warnings':_0x28b956})};}function sameRequestedState(_0x440825,_0x4f433e){const _0x5c1371=a155_0x55bad0;return _0x440825[_0x5c1371(0x100)]===_0x4f433e[_0x5c1371(0x100)]&&_0x440825['sort']===_0x4f433e[_0x5c1371(0xf0)];}function verifyPatch(_0x4c6c14,_0x48eb42){const _0x1df9c9=a155_0x55bad0;assertVerified(_0x4c6c14[_0x1df9c9(0xfd)]===_0x1df9c9(0xf6),_0x1df9c9(0x10f)+_0x4c6c14['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x48eb42[_0x1df9c9(0x100)]!==undefined&&assertVerified(_0x4c6c14['label']===_0x48eb42['label'],_0x1df9c9(0xfb)+_0x4c6c14['id']+_0x1df9c9(0x102)),_0x48eb42[_0x1df9c9(0xf0)]!==undefined&&assertVerified(_0x4c6c14[_0x1df9c9(0xf0)]===_0x48eb42[_0x1df9c9(0xf0)],_0x1df9c9(0xfb)+_0x4c6c14['id']+_0x1df9c9(0xf2));}function a155_0x1194(){const _0x56f32d=['2YPYDyh','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','unknown','str','\x20already\x20matches\x20the\x20requested\x20state.','appCode','sort','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','\x20sort\x20update\x20did\x20not\x20take\x20effect.','40hVTKOh','\x20is\x20type\x20\x22','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','folder','group-update','string','802344QwwrUM','/smartapi/menu/update','Folder\x20','POST','type','--label\x20cannot\x20be\x20empty.','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','label','parentId','\x20label\x20update\x20did\x20not\x20take\x20effect.','44275MbGawL','270896ZCchOQ','429LbhEKa','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','trim','selector','validation','1555704glCCMH','72964vqkUVq','New\x20folder\x20label','45TbCqFI','rabetbase\x20menu\x20list\x20--format\x20json','Menu\x20','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','verify\x20folder\x20update','Would\x20update\x20folder\x20','failed','\x22,\x20not\x20folder.','parent-id','verification','hash','update','update\x20folder','203510BUOjnd','Updated\x20folder\x20','88721DRokag','write'];a155_0x1194=function(){return _0x56f32d;};return a155_0x1194();}
1
+ const a155_0x534089=a155_0x14a6;function a155_0x14a6(_0xa02042,_0x37207a){_0xa02042=_0xa02042-0xb0;const _0x17ae02=a155_0x17ae();let _0x14a66f=_0x17ae02[_0xa02042];return _0x14a66f;}(function(_0x27d15d,_0x476853){const _0x4db9cb=a155_0x14a6,_0x51f08c=_0x27d15d();while(!![]){try{const _0x26a8cb=-parseInt(_0x4db9cb(0xe4))/0x1*(parseInt(_0x4db9cb(0xd0))/0x2)+-parseInt(_0x4db9cb(0xc7))/0x3*(parseInt(_0x4db9cb(0xdb))/0x4)+parseInt(_0x4db9cb(0xbb))/0x5*(-parseInt(_0x4db9cb(0xbf))/0x6)+-parseInt(_0x4db9cb(0xb1))/0x7+parseInt(_0x4db9cb(0xe1))/0x8*(-parseInt(_0x4db9cb(0xd4))/0x9)+-parseInt(_0x4db9cb(0xba))/0xa*(parseInt(_0x4db9cb(0xdd))/0xb)+-parseInt(_0x4db9cb(0xe7))/0xc*(-parseInt(_0x4db9cb(0xc4))/0xd);if(_0x26a8cb===_0x476853)break;else _0x51f08c['push'](_0x51f08c['shift']());}catch(_0x3afb67){_0x51f08c['push'](_0x51f08c['shift']());}}}(a155_0x17ae,0x2283f));function a155_0x17ae(){const _0x39e399=['unknown','rabetbase\x20menu\x20list\x20--format\x20json','appCode','Menu\x20','28052AMBaaJ','Updated\x20folder\x20','572506kEfZZT','menu\x20list','--label\x20cannot\x20be\x20empty.','parent-id','8psJOOz','validation','folder','1viYphz','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','group-update','12uKQsDy','str','836122swYHFF','selector','type','Update\x20request\x20for\x20folder\x20','hash','trim','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','verification','20wkodUV','8455zAxuzL','POST','sort','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','198IlyFYu','/smartapi/menu/update','write','update','verify\x20folder\x20update','12367433PNxNrK','parentId','\x20sort\x20update\x20did\x20not\x20take\x20effect.','111BOJFZz','\x20is\x20no\x20longer\x20type\x20folder.','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','string','cookie','update\x20folder','\x20already\x20matches\x20the\x20requested\x20state.','\x20label\x20update\x20did\x20not\x20take\x20effect.','menu_not_folder','309182NJVrla','Folder\x20','label','Would\x20update\x20folder\x20','1048977VHNXFa','failed','\x20is\x20type\x20\x22'];a155_0x17ae=function(){return _0x39e399;};return a155_0x17ae();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a155_0x534089(0xbc),'path':a155_0x534089(0xc0)}];export const menuGroupUpdate={'service':'menu','command':'group-update','description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a155_0x534089(0xc1),'structuredErrors':!![],'rejectedFlags':[{'name':a155_0x534089(0xe0),'message':a155_0x534089(0xc9),'hint':a155_0x534089(0xbe)}],'flags':[MENU_ID_FLAG,{'name':a155_0x534089(0xd2),'type':a155_0x534089(0xca),'description':'New\x20folder\x20label'},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xce11f5){validateUpdateInput(_0xce11f5);},async 'dryRun'(_0x439297){const _0x15c81a=a155_0x534089;validateUpdateInput(_0x439297);const {plan:_0x142ef0,patch:_0x14ca7f}=await buildUpdatePlan(_0x439297,!![]);return menuDryRunResult(_0x142ef0,{'method':_0x15c81a(0xbc),'url':_0x15c81a(0xc0),'body':_0x14ca7f,'description':_0x15c81a(0xd3)+_0x142ef0['selector']['id']+'.'});},async 'execute'(_0x5e13da){const _0x58f633=a155_0x534089;validateUpdateInput(_0x5e13da);const {plan:_0x3c32e6,patch:_0x5fd0c6,noChanges:_0x43948b}=await buildUpdatePlan(_0x5e13da,![]),_0x18335e=Number(_0x3c32e6[_0x58f633(0xb2)]['id']),_0x23df46=await recheckMutationSnapshot(_0x5e13da,_0x3c32e6,_0x58f633(0xcc),_0x18335e);if(!_0x43948b)try{await updateMenuEntity(_0x5e13da[_0x58f633(0xd9)],_0x5e13da[_0x58f633(0xcb)],_0x5fd0c6);}catch(_0x1f0be0){const _0x18f82d=mapMenuApiError(_0x1f0be0,_0x58f633(0xcc),_0x18335e);throw menuFailure(_0x18f82d,_0x3c32e6,{'stage':_0x58f633(0xc2),'failed':{'id':_0x18335e}});}let _0x108b85=_0x23df46,_0x5746a4;try{!_0x43948b&&(_0x108b85=await fetchMenuSnapshot(_0x5e13da[_0x58f633(0xd9)],_0x5e13da[_0x58f633(0xcb)])),_0x5746a4=requireMenu(_0x108b85,_0x18335e),verifyPatch(_0x5746a4,_0x5fd0c6),_0x5746a4['parentId']!=null&&requireFolder(_0x108b85,_0x5746a4[_0x58f633(0xc5)]);}catch(_0x457f9a){const _0x5d461e=describeMenuErrorCause(_0x457f9a,_0x58f633(0xc3),_0x18335e),_0x234a61=asVerificationError(_0x457f9a,_0x58f633(0xb4)+_0x18335e+_0x58f633(0xe5));throw menuFailure(_0x234a61,_0x3c32e6,{'stage':_0x58f633(0xb9),'succeeded':[{'id':_0x18335e,'updateRequested':!_0x43948b,'skipped':_0x43948b}],'failed':{'id':_0x18335e,'requestedStateConfirmed':![],..._0x5d461e},'warnings':[_0x58f633(0xb7)],'verification':{'status':_0x58f633(0xd5),'lookupCommand':_0x58f633(0xd8),'targetId':_0x18335e}});}const _0x5ea405=mutationResult({..._0x3c32e6,'after':_0x5746a4,'dryRun':![],'succeeded':[{'id':_0x18335e,'updated':!_0x43948b,'skipped':_0x43948b}],'verification':{'checkedBy':_0x58f633(0xde),'snapshotHash':_0x108b85['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x5ea405,'message':_0x43948b?_0x58f633(0xd1)+_0x18335e+_0x58f633(0xcd):_0x58f633(0xdc)+_0x18335e+'.'};}};function validateUpdateInput(_0x42db13){const _0x31692e=a155_0x534089;validateExactId(_0x42db13);if(hasFlag(_0x42db13,_0x31692e(0xe0)))throw CliErrors[_0x31692e(0xe2)](_0x31692e(0xc9),_0x31692e(0xbe));if(!hasFlag(_0x42db13,'label')&&!hasFlag(_0x42db13,_0x31692e(0xbd)))throw CliErrors['validation'](_0x31692e(0xb8));if(hasFlag(_0x42db13,_0x31692e(0xd2))&&!_0x42db13[_0x31692e(0xb0)](_0x31692e(0xd2))[_0x31692e(0xb6)]())throw CliErrors[_0x31692e(0xe2)](_0x31692e(0xdf));validateSort(_0x42db13);}async function buildUpdatePlan(_0x410dc2,_0x197be3){const _0x250b38=a155_0x534089,_0x5edd3a=validateExactId(_0x410dc2),_0x59b39e=await fetchMutationSnapshot(_0x410dc2,_0x250b38(0xcc),_0x5edd3a),_0xa6b21f=requireMenu(_0x59b39e,_0x5edd3a);if(_0xa6b21f[_0x250b38(0xb3)]!==_0x250b38(0xe3))throw menuError(_0x250b38(0xcf),_0x250b38(0xda)+_0x5edd3a+_0x250b38(0xd6)+(_0xa6b21f['type']||_0x250b38(0xd7))+'\x22,\x20not\x20folder.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.');assertExpectedState(_0x410dc2,_0xa6b21f);const _0x304bdc={'id':_0x5edd3a},_0x2120ea={..._0xa6b21f};if(hasFlag(_0x410dc2,_0x250b38(0xd2))){const _0x27fc9e=_0x410dc2[_0x250b38(0xb0)]('label')[_0x250b38(0xb6)]();_0x304bdc['label']=_0x27fc9e,_0x2120ea[_0x250b38(0xd2)]=_0x27fc9e;}if(hasFlag(_0x410dc2,_0x250b38(0xbd))){const _0x1ed5ac=validateSort(_0x410dc2);_0x304bdc[_0x250b38(0xbd)]=_0x1ed5ac,_0x2120ea[_0x250b38(0xbd)]=_0x1ed5ac;}const _0x511852=sameRequestedState(_0xa6b21f,_0x2120ea),_0x344e2a=_0x511852?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x304bdc,'noChanges':_0x511852,'plan':mutationResult({'operation':_0x250b38(0xe6),'selector':{'id':_0x5edd3a},'before':_0xa6b21f,'after':_0x2120ea,'dryRun':_0x197be3,'backend':[...BACKEND],'snapshotHash':_0x59b39e[_0x250b38(0xb5)],'warnings':_0x344e2a})};}function sameRequestedState(_0x3a2029,_0x3278db){const _0x230ce0=a155_0x534089;return _0x3a2029[_0x230ce0(0xd2)]===_0x3278db['label']&&_0x3a2029['sort']===_0x3278db[_0x230ce0(0xbd)];}function verifyPatch(_0x5776d3,_0x361f50){const _0x572c58=a155_0x534089;assertVerified(_0x5776d3[_0x572c58(0xb3)]===_0x572c58(0xe3),'Menu\x20'+_0x5776d3['id']+_0x572c58(0xc8)),_0x361f50['label']!==undefined&&assertVerified(_0x5776d3['label']===_0x361f50[_0x572c58(0xd2)],_0x572c58(0xd1)+_0x5776d3['id']+_0x572c58(0xce)),_0x361f50[_0x572c58(0xbd)]!==undefined&&assertVerified(_0x5776d3[_0x572c58(0xbd)]===_0x361f50[_0x572c58(0xbd)],_0x572c58(0xd1)+_0x5776d3['id']+_0x572c58(0xc6));}
@@ -1 +1 @@
1
- (function(_0x3ddff0,_0x123038){const _0x55f73d=a156_0x5966,_0x354e02=_0x3ddff0();while(!![]){try{const _0x54ab3e=parseInt(_0x55f73d(0x103))/0x1+-parseInt(_0x55f73d(0x108))/0x2*(-parseInt(_0x55f73d(0x102))/0x3)+parseInt(_0x55f73d(0x105))/0x4*(parseInt(_0x55f73d(0x107))/0x5)+parseInt(_0x55f73d(0x10b))/0x6+-parseInt(_0x55f73d(0x106))/0x7*(parseInt(_0x55f73d(0x109))/0x8)+-parseInt(_0x55f73d(0x10a))/0x9+-parseInt(_0x55f73d(0x104))/0xa;if(_0x54ab3e===_0x123038)break;else _0x354e02['push'](_0x354e02['shift']());}catch(_0x24edfc){_0x354e02['push'](_0x354e02['shift']());}}}(a156_0x1719,0xdd6ba));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';function a156_0x5966(_0x3fd752,_0x160d5c){_0x3fd752=_0x3fd752-0x102;const _0x17197d=a156_0x1719();let _0x596683=_0x17197d[_0x3fd752];return _0x596683;}function a156_0x1719(){const _0x311464=['33332CVmyMX','45544EvQebL','6608907vTWlgy','4211064qxwSMx','45xCXFsv','1106964zuKLib','7229100GkxtfL','244WVePsH','1428HtdvLX','120225FBMAXw'];a156_0x1719=function(){return _0x311464;};return a156_0x1719();}import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
1
+ (function(_0x41f556,_0x7c9ff9){const _0x6f5f74=a156_0x2dc5,_0x10bff9=_0x41f556();while(!![]){try{const _0x36186d=parseInt(_0x6f5f74(0xed))/0x1*(-parseInt(_0x6f5f74(0xf1))/0x2)+-parseInt(_0x6f5f74(0xeb))/0x3+-parseInt(_0x6f5f74(0xec))/0x4*(parseInt(_0x6f5f74(0xf2))/0x5)+-parseInt(_0x6f5f74(0xef))/0x6*(parseInt(_0x6f5f74(0xee))/0x7)+-parseInt(_0x6f5f74(0xea))/0x8+-parseInt(_0x6f5f74(0xf0))/0x9+-parseInt(_0x6f5f74(0xf4))/0xa*(-parseInt(_0x6f5f74(0xf3))/0xb);if(_0x36186d===_0x7c9ff9)break;else _0x10bff9['push'](_0x10bff9['shift']());}catch(_0x538d4d){_0x10bff9['push'](_0x10bff9['shift']());}}}(a156_0x4c2d,0x430b7));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';function a156_0x4c2d(){const _0x403904=['4LYWHCk','6496mWtFoR','571088YBTOzz','24uiStpn','2047950ooGykV','68TeLItH','1234745tWyYpC','15822070gfPBKa','10gEzjQj','68512xAKJPq','400476NuUDeE'];a156_0x4c2d=function(){return _0x403904;};return a156_0x4c2d();}import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';function a156_0x2dc5(_0x5b8520,_0x2fe635){_0x5b8520=_0x5b8520-0xea;const _0x4c2d30=a156_0x4c2d();let _0x2dc5b6=_0x4c2d30[_0x5b8520];return _0x2dc5b6;}import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
@@ -1 +1 @@
1
- const a157_0xae9cb7=a157_0x2a5f;(function(_0x1391b3,_0x456efc){const _0xbaa6b8=a157_0x2a5f,_0x32d3a3=_0x1391b3();while(!![]){try{const _0x4fb492=-parseInt(_0xbaa6b8(0xc5))/0x1*(-parseInt(_0xbaa6b8(0xdc))/0x2)+-parseInt(_0xbaa6b8(0xd6))/0x3*(parseInt(_0xbaa6b8(0xd7))/0x4)+-parseInt(_0xbaa6b8(0xc6))/0x5*(parseInt(_0xbaa6b8(0xd8))/0x6)+-parseInt(_0xbaa6b8(0xcb))/0x7*(parseInt(_0xbaa6b8(0xc8))/0x8)+-parseInt(_0xbaa6b8(0xd9))/0x9+-parseInt(_0xbaa6b8(0xda))/0xa+parseInt(_0xbaa6b8(0xd4))/0xb*(parseInt(_0xbaa6b8(0xdb))/0xc);if(_0x4fb492===_0x456efc)break;else _0x32d3a3['push'](_0x32d3a3['shift']());}catch(_0x474956){_0x32d3a3['push'](_0x32d3a3['shift']());}}}(a157_0x2ac1,0xcfe42));function a157_0x2ac1(){const _0x440b4c=['1191lWmSBz','3820745SzDkDx','read','165080mSTmBS','hash','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','217WERxJh','cookie','total','bool','menu','verbose','Found\x20','appCode','No\x20menus\x20found.','473IGpcJJ','map','28548lgPCXD','4FehkJr','12SFmmVv','5491350XchRgo','5843970ukLLpB','1151748EvwgFy','162lCrjFr'];a157_0x2ac1=function(){return _0x440b4c;};return a157_0x2ac1();}function a157_0x2a5f(_0x96dc4c,_0x5599ee){_0x96dc4c=_0x96dc4c-0xc5;const _0x2ac137=a157_0x2ac1();let _0x2a5fed=_0x2ac137[_0x96dc4c];return _0x2a5fed;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a157_0xae9cb7(0xcf),'command':'list','description':a157_0xae9cb7(0xca),'risk':a157_0xae9cb7(0xc7),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a157_0xae9cb7(0xd0),'type':'boolean','description':'Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing'}],async 'execute'(_0x1bf76f){const _0xe60791=a157_0xae9cb7,_0x4463c6=_0x1bf76f[_0xe60791(0xce)](_0xe60791(0xd0)),_0x5b2bb3=await fetchMenuSnapshot(_0x1bf76f[_0xe60791(0xd2)],_0x1bf76f[_0xe60791(0xcc)],{'verbose':_0x4463c6});return{'ok':!![],'data':{'total':_0x5b2bb3['total'],'snapshotHash':_0x5b2bb3[_0xe60791(0xc9)],'menus':_0x5b2bb3['menus'][_0xe60791(0xd5)](toMenuListItem)},'message':_0x5b2bb3[_0xe60791(0xcd)]===0x0?_0xe60791(0xd3):_0xe60791(0xd1)+_0x5b2bb3[_0xe60791(0xcd)]+'\x20menu(s)'};}};
1
+ const a157_0x132da1=a157_0x56da;(function(_0x529b11,_0x34023b){const _0x106ded=a157_0x56da,_0x22904b=_0x529b11();while(!![]){try{const _0x4f6af3=-parseInt(_0x106ded(0x12d))/0x1*(parseInt(_0x106ded(0x118))/0x2)+-parseInt(_0x106ded(0x11c))/0x3+-parseInt(_0x106ded(0x11f))/0x4+parseInt(_0x106ded(0x125))/0x5*(parseInt(_0x106ded(0x115))/0x6)+parseInt(_0x106ded(0x126))/0x7*(-parseInt(_0x106ded(0x123))/0x8)+-parseInt(_0x106ded(0x12f))/0x9*(parseInt(_0x106ded(0x11b))/0xa)+-parseInt(_0x106ded(0x116))/0xb*(-parseInt(_0x106ded(0x119))/0xc);if(_0x4f6af3===_0x34023b)break;else _0x22904b['push'](_0x22904b['shift']());}catch(_0x2cbb0c){_0x22904b['push'](_0x22904b['shift']());}}}(a157_0x1f58,0xb3170));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a157_0x56da(_0x542307,_0x1b0a4f){_0x542307=_0x542307-0x115;const _0x1f58c5=a157_0x1f58();let _0x56dacd=_0x1f58c5[_0x542307];return _0x56dacd;}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a157_0x132da1(0x12e),'command':a157_0x132da1(0x11e),'description':a157_0x132da1(0x12b),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a157_0x132da1(0x129),'type':a157_0x132da1(0x11a),'description':a157_0x132da1(0x121)}],async 'execute'(_0x1fa375){const _0x1ebdcc=a157_0x132da1,_0x6f1c9a=_0x1fa375[_0x1ebdcc(0x11d)](_0x1ebdcc(0x129)),_0x476a89=await fetchMenuSnapshot(_0x1fa375[_0x1ebdcc(0x127)],_0x1fa375[_0x1ebdcc(0x128)],{'verbose':_0x6f1c9a});return{'ok':!![],'data':{'total':_0x476a89[_0x1ebdcc(0x12a)],'snapshotHash':_0x476a89[_0x1ebdcc(0x120)],'menus':_0x476a89[_0x1ebdcc(0x122)][_0x1ebdcc(0x12c)](toMenuListItem)},'message':_0x476a89[_0x1ebdcc(0x12a)]===0x0?_0x1ebdcc(0x124):_0x1ebdcc(0x117)+_0x476a89['total']+'\x20menu(s)'};}};function a157_0x1f58(){const _0x59511f=['Found\x20','14WZIjMu','1848CIzksz','boolean','110DbqSAC','1479717BJIqsx','bool','list','2270524dOVete','hash','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','menus','6141416moEfqx','No\x20menus\x20found.','4871625jLByHs','7AEClGV','appCode','cookie','verbose','total','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','map','48029uxOrNF','menu','22383STuSKn','6phaAIl','139381dNgsJL'];a157_0x1f58=function(){return _0x59511f;};return a157_0x1f58();}
@@ -1 +1 @@
1
- const a158_0x426fd6=a158_0x54c5;(function(_0x16eb16,_0x375056){const _0x407e2e=a158_0x54c5,_0x149f1f=_0x16eb16();while(!![]){try{const _0x29e18f=parseInt(_0x407e2e(0xd5))/0x1+parseInt(_0x407e2e(0xdb))/0x2*(parseInt(_0x407e2e(0xcc))/0x3)+-parseInt(_0x407e2e(0xde))/0x4*(parseInt(_0x407e2e(0xdf))/0x5)+parseInt(_0x407e2e(0xe6))/0x6*(parseInt(_0x407e2e(0xeb))/0x7)+parseInt(_0x407e2e(0xe9))/0x8+-parseInt(_0x407e2e(0xdd))/0x9*(parseInt(_0x407e2e(0xe8))/0xa)+-parseInt(_0x407e2e(0xda))/0xb;if(_0x29e18f===_0x375056)break;else _0x149f1f['push'](_0x149f1f['shift']());}catch(_0x37703a){_0x149f1f['push'](_0x149f1f['shift']());}}}(a158_0x2d01,0x6a93b));function a158_0x54c5(_0x2fc634,_0x32ddbb){_0x2fc634=_0x2fc634-0xcb;const _0x2d01d1=a158_0x2d01();let _0x54c5f5=_0x2d01d1[_0x2fc634];return _0x54c5f5;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':a158_0x426fd6(0xd9),'path':'/smartapi/menu/update'}];export const menuMove={'service':a158_0x426fd6(0xd0),'command':a158_0x426fd6(0xce),'description':a158_0x426fd6(0xed),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x30ae87){validateMoveInput(_0x30ae87);},async 'dryRun'(_0x224eae){const _0x1e3c2e=a158_0x426fd6,{plan:_0x26f63c,patch:_0x43a853}=await buildMovePlan(_0x224eae,!![]);return menuDryRunResult(_0x26f63c,{'method':_0x1e3c2e(0xd9),'url':_0x1e3c2e(0xef),'body':{..._0x43a853,'appCode':_0x224eae[_0x1e3c2e(0xe0)]},'description':'Would\x20move\x20menu\x20'+_0x43a853['id']+'.'});},async 'execute'(_0x48289c){const _0x4bb6cc=a158_0x426fd6;validateMoveInput(_0x48289c);const {plan:_0x15c28b,patch:_0x5477e3,noChanges:_0x487bb1,snapshot:_0x260c01}=await buildMovePlan(_0x48289c,![]),_0x7de33d=_0x5477e3['id'];if(!_0x487bb1)try{await updateMenuEntity(_0x48289c[_0x4bb6cc(0xe0)],_0x48289c[_0x4bb6cc(0xf9)],_0x5477e3);}catch(_0x3bee9c){const _0x3623f2=mapMenuApiError(_0x3bee9c,_0x4bb6cc(0xce),_0x7de33d);throw menuFailure(_0x3623f2,_0x15c28b,{'stage':_0x4bb6cc(0xd2),'failed':{'id':_0x7de33d},'warnings':[_0x4bb6cc(0xcf)],'verification':{'status':_0x4bb6cc(0xcb),'targetId':_0x7de33d,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0x43cecf,_0xc3a7f;try{_0x43cecf=_0x487bb1?_0x260c01:await fetchMenuSnapshot(_0x48289c[_0x4bb6cc(0xe0)],_0x48289c[_0x4bb6cc(0xf9)]),_0xc3a7f=requireMenu(_0x43cecf,_0x7de33d),verifyMove(_0xc3a7f,_0x15c28b['after']),_0xc3a7f[_0x4bb6cc(0xe4)]!==null&&requireFolder(_0x43cecf,_0xc3a7f[_0x4bb6cc(0xe4)]);}catch(_0x53a7f6){const _0x4844ed=describeMenuErrorCause(_0x53a7f6,_0x4bb6cc(0xd6),_0x7de33d),_0x4bee35=asVerificationError(_0x53a7f6,_0x4bb6cc(0xf6)+_0x7de33d+_0x4bb6cc(0xcd));throw menuFailure(_0x4bee35,_0x15c28b,{'stage':'verification','succeeded':[{'id':_0x7de33d,'updateRequested':!_0x487bb1,'skipped':_0x487bb1}],'failed':{'id':_0x7de33d,'requestedStateConfirmed':![],..._0x4844ed},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x4bb6cc(0xcb),'targetId':_0x7de33d,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x24d6be=mutationResult({..._0x15c28b,'after':_0xc3a7f,'dryRun':![],'succeeded':[{'id':_0x7de33d,'updated':!_0x487bb1,'skipped':_0x487bb1}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x43cecf[_0x4bb6cc(0xe5)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x24d6be,'message':_0x487bb1?_0x4bb6cc(0xec)+_0x7de33d+_0x4bb6cc(0xf3):'Moved\x20menu\x20'+_0x7de33d+'.'};}};function validateMoveInput(_0x503a14){const _0x1ad381=a158_0x426fd6;validateExactId(_0x503a14),parseParentId(_0x503a14,_0x1ad381(0xf7),{'required':!![]}),parseParentId(_0x503a14,'expect-parent-id',{'required':!![]}),validateSort(_0x503a14);}async function buildMovePlan(_0x232f8e,_0x2626ef){const _0x18eb6c=a158_0x426fd6,_0x3de615=validateExactId(_0x232f8e),_0x2dce17=parseParentId(_0x232f8e,_0x18eb6c(0xf7),{'required':!![]}),_0x3208ae=parseParentId(_0x232f8e,_0x18eb6c(0xe1),{'required':!![]}),_0x88fac7=validateSort(_0x232f8e),_0x514a5e=await fetchMutationSnapshot(_0x232f8e,_0x18eb6c(0xea),_0x3de615),_0x304cdc=requireMenu(_0x514a5e,_0x3de615);if(_0x304cdc[_0x18eb6c(0xf8)]===_0x18eb6c(0xd4)||_0x304cdc[_0x18eb6c(0xe3)]!==0x0)throw menuError(_0x18eb6c(0xe7),'Menu\x20'+_0x3de615+_0x18eb6c(0xf4),_0x18eb6c(0xf1));if(_0x304cdc['parentId']!==_0x3208ae)throw menuError('menu_state_drift',_0x18eb6c(0xec)+_0x3de615+_0x18eb6c(0xd7)+formatParent(_0x3208ae)+_0x18eb6c(0xf2)+formatParent(_0x304cdc[_0x18eb6c(0xe4)])+'.',_0x18eb6c(0xf5));_0x2dce17!==null&&requireFolder(_0x514a5e,_0x2dce17);const _0x21730e=_0x88fac7??(_0x304cdc[_0x18eb6c(0xe4)]===_0x2dce17?_0x304cdc[_0x18eb6c(0xd1)]??0x0:nextSiblingSort(_0x514a5e,_0x2dce17,_0x18eb6c(0xd0))),_0x4965f4={..._0x304cdc,'parentId':_0x2dce17,'sort':_0x21730e},_0x27167a={'id':_0x3de615,'parentId':toApiParentId(_0x2dce17),'sort':_0x21730e},_0x192642=_0x304cdc[_0x18eb6c(0xe4)]===_0x2dce17&&_0x304cdc[_0x18eb6c(0xd1)]===_0x21730e;return{'patch':_0x27167a,'noChanges':_0x192642,'snapshot':_0x514a5e,'plan':mutationResult({'operation':_0x18eb6c(0xce),'selector':{'id':_0x3de615,'parentId':_0x2dce17},'before':_0x304cdc,'after':_0x4965f4,'dryRun':_0x2626ef,'backend':[...BACKEND],'plannedActions':[{'stage':_0x18eb6c(0xf0),'method':_0x18eb6c(0xd9),'path':_0x18eb6c(0xef),'body':{..._0x27167a,'appCode':_0x232f8e[_0x18eb6c(0xe0)]}}],'snapshotHash':_0x514a5e[_0x18eb6c(0xe5)],'warnings':_0x192642?[_0x18eb6c(0xdc)]:[]})};}function a158_0x2d01(){const _0x25c40c=['sort','update','\x20is\x20no\x20longer\x20a\x20leaf.','folder','695952srAvdd','verify\x20menu\x20move','\x20parent\x20changed:\x20expected\x20','\x20is\x20now\x20type\x20folder.','POST','4902117qLxLrJ','176844hjQFWm','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','27eAJymp','4iEQdxP','1607885LQLeNZ','appCode','expect-parent-id','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','childrenCount','parentId','hash','2916366okjcBu','menu_move_source_not_leaf','2346250ffKJzf','3682872OhDsxY','move\x20menu','7WAdVlF','Menu\x20','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','/smartapi/menu/update','move-menu','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.',',\x20current\x20','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Move\x20request\x20for\x20menu\x20','parent-id','type','cookie','failed','9JAWmhz','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','move','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu'];a158_0x2d01=function(){return _0x25c40c;};return a158_0x2d01();}function verifyMove(_0x1179f7,_0x52265c){const _0x49423f=a158_0x426fd6;assertVerified(_0x1179f7[_0x49423f(0xf8)]!=='folder',_0x49423f(0xec)+_0x1179f7['id']+_0x49423f(0xd8)),assertVerified(_0x1179f7[_0x49423f(0xe3)]===0x0,_0x49423f(0xec)+_0x1179f7['id']+_0x49423f(0xd3)),assertVerified(_0x1179f7[_0x49423f(0xe4)]===_0x52265c[_0x49423f(0xe4)],_0x49423f(0xec)+_0x1179f7['id']+_0x49423f(0xe2)),assertVerified(_0x1179f7[_0x49423f(0xd1)]===_0x52265c[_0x49423f(0xd1)],'Menu\x20'+_0x1179f7['id']+_0x49423f(0xee));}
1
+ const a158_0x1e99bd=a158_0x557c;(function(_0x47fdeb,_0x3b6df5){const _0x332a25=a158_0x557c,_0x10b5c5=_0x47fdeb();while(!![]){try{const _0x3f8d1=parseInt(_0x332a25(0x102))/0x1+-parseInt(_0x332a25(0x11f))/0x2+-parseInt(_0x332a25(0xf8))/0x3*(-parseInt(_0x332a25(0x104))/0x4)+parseInt(_0x332a25(0xf1))/0x5*(-parseInt(_0x332a25(0xf6))/0x6)+parseInt(_0x332a25(0x10d))/0x7*(-parseInt(_0x332a25(0xf7))/0x8)+parseInt(_0x332a25(0x103))/0x9+-parseInt(_0x332a25(0xfc))/0xa*(-parseInt(_0x332a25(0xfd))/0xb);if(_0x3f8d1===_0x3b6df5)break;else _0x10b5c5['push'](_0x10b5c5['shift']());}catch(_0x3253cc){_0x10b5c5['push'](_0x10b5c5['shift']());}}}(a158_0x1377,0x24a35));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a158_0x557c(_0x10cc0a,_0xfe805f){_0x10cc0a=_0x10cc0a-0xf1;const _0x1377d3=a158_0x1377();let _0x557c2b=_0x1377d3[_0x10cc0a];return _0x557c2b;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';function a158_0x1377(){const _0x2a1496=['27DIGJvb','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','menu_state_drift','menu\x20list','1780eNBzPi','30371MbhMiH','write','failed','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','folder','14815NxUTNj','322731Fldpmd','78996PySLKQ','move\x20menu','/smartapi/menu/update','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','appCode','\x20is\x20now\x20type\x20folder.','childrenCount','\x20parent\x20changed:\x20expected\x20','rabetbase\x20menu\x20list\x20--format\x20compress','1124165vNlqdy','verify\x20menu\x20move','Moved\x20menu\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','sort','\x20is\x20no\x20longer\x20a\x20leaf.','expect-parent-id','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','cookie','parentId','menu','hash','type','menu_move_source_not_leaf','verification','POST','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','252120CwCqWv','move','Move\x20request\x20for\x20menu\x20','Menu\x20','15shoBwR','parent-id','Would\x20move\x20menu\x20','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','566298leHhRs','8SVchRZ'];a158_0x1377=function(){return _0x2a1496;};return a158_0x1377();}import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':a158_0x1e99bd(0x11d),'path':a158_0x1e99bd(0x106)}];export const menuMove={'service':a158_0x1e99bd(0x118),'command':'move','description':a158_0x1e99bd(0x100),'risk':a158_0x1e99bd(0xfe),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x19a9e4){validateMoveInput(_0x19a9e4);},async 'dryRun'(_0x2dc53a){const _0x4401e5=a158_0x1e99bd,{plan:_0x12960e,patch:_0x46516c}=await buildMovePlan(_0x2dc53a,!![]);return menuDryRunResult(_0x12960e,{'method':'POST','url':_0x4401e5(0x106),'body':{..._0x46516c,'appCode':_0x2dc53a['appCode']},'description':_0x4401e5(0xf3)+_0x46516c['id']+'.'});},async 'execute'(_0x1e95db){const _0x2a7400=a158_0x1e99bd;validateMoveInput(_0x1e95db);const {plan:_0x1b735f,patch:_0x385e9f,noChanges:_0x2312db,snapshot:_0xdc956e}=await buildMovePlan(_0x1e95db,![]),_0xbbbc23=_0x385e9f['id'];if(!_0x2312db)try{await updateMenuEntity(_0x1e95db[_0x2a7400(0x108)],_0x1e95db[_0x2a7400(0x116)],_0x385e9f);}catch(_0x3a1ef2){const _0x140746=mapMenuApiError(_0x3a1ef2,'move',_0xbbbc23);throw menuFailure(_0x140746,_0x1b735f,{'stage':'update','failed':{'id':_0xbbbc23},'warnings':[_0x2a7400(0x115)],'verification':{'status':_0x2a7400(0xff),'targetId':_0xbbbc23,'lookupCommand':_0x2a7400(0x10c)}});}let _0x545a42,_0x371eea;try{_0x545a42=_0x2312db?_0xdc956e:await fetchMenuSnapshot(_0x1e95db[_0x2a7400(0x108)],_0x1e95db[_0x2a7400(0x116)]),_0x371eea=requireMenu(_0x545a42,_0xbbbc23),verifyMove(_0x371eea,_0x1b735f['after']),_0x371eea[_0x2a7400(0x117)]!==null&&requireFolder(_0x545a42,_0x371eea[_0x2a7400(0x117)]);}catch(_0x38c23c){const _0x3a6b00=describeMenuErrorCause(_0x38c23c,_0x2a7400(0x10e),_0xbbbc23),_0x9bcb12=asVerificationError(_0x38c23c,_0x2a7400(0x121)+_0xbbbc23+_0x2a7400(0x107));throw menuFailure(_0x9bcb12,_0x1b735f,{'stage':_0x2a7400(0x11c),'succeeded':[{'id':_0xbbbc23,'updateRequested':!_0x2312db,'skipped':_0x2312db}],'failed':{'id':_0xbbbc23,'requestedStateConfirmed':![],..._0x3a6b00},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x2a7400(0xff),'targetId':_0xbbbc23,'lookupCommand':_0x2a7400(0x10c)}});}const _0x53ceaa=mutationResult({..._0x1b735f,'after':_0x371eea,'dryRun':![],'succeeded':[{'id':_0xbbbc23,'updated':!_0x2312db,'skipped':_0x2312db}],'verification':{'checkedBy':_0x2a7400(0xfb),'snapshotHash':_0x545a42[_0x2a7400(0x119)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x53ceaa,'message':_0x2312db?'Menu\x20'+_0xbbbc23+_0x2a7400(0xf5):_0x2a7400(0x10f)+_0xbbbc23+'.'};}};function validateMoveInput(_0x1b0693){const _0x305136=a158_0x1e99bd;validateExactId(_0x1b0693),parseParentId(_0x1b0693,_0x305136(0xf2),{'required':!![]}),parseParentId(_0x1b0693,_0x305136(0x114),{'required':!![]}),validateSort(_0x1b0693);}async function buildMovePlan(_0x4048a8,_0x34e3de){const _0x3f57f7=a158_0x1e99bd,_0x28e44f=validateExactId(_0x4048a8),_0x507068=parseParentId(_0x4048a8,_0x3f57f7(0xf2),{'required':!![]}),_0x1583e2=parseParentId(_0x4048a8,'expect-parent-id',{'required':!![]}),_0x136bfc=validateSort(_0x4048a8),_0x49c093=await fetchMutationSnapshot(_0x4048a8,_0x3f57f7(0x105),_0x28e44f),_0x122719=requireMenu(_0x49c093,_0x28e44f);if(_0x122719[_0x3f57f7(0x11a)]==='folder'||_0x122719[_0x3f57f7(0x10a)]!==0x0)throw menuError(_0x3f57f7(0x11b),'Menu\x20'+_0x28e44f+_0x3f57f7(0xf4),_0x3f57f7(0x111));if(_0x122719[_0x3f57f7(0x117)]!==_0x1583e2)throw menuError(_0x3f57f7(0xfa),_0x3f57f7(0x122)+_0x28e44f+_0x3f57f7(0x10b)+formatParent(_0x1583e2)+',\x20current\x20'+formatParent(_0x122719[_0x3f57f7(0x117)])+'.',_0x3f57f7(0x110));_0x507068!==null&&requireFolder(_0x49c093,_0x507068);const _0x4d8365=_0x136bfc??(_0x122719[_0x3f57f7(0x117)]===_0x507068?_0x122719[_0x3f57f7(0x112)]??0x0:nextSiblingSort(_0x49c093,_0x507068,_0x3f57f7(0x118))),_0x19a392={..._0x122719,'parentId':_0x507068,'sort':_0x4d8365},_0x1cea57={'id':_0x28e44f,'parentId':toApiParentId(_0x507068),'sort':_0x4d8365},_0x5d76b1=_0x122719[_0x3f57f7(0x117)]===_0x507068&&_0x122719[_0x3f57f7(0x112)]===_0x4d8365;return{'patch':_0x1cea57,'noChanges':_0x5d76b1,'snapshot':_0x49c093,'plan':mutationResult({'operation':_0x3f57f7(0x120),'selector':{'id':_0x28e44f,'parentId':_0x507068},'before':_0x122719,'after':_0x19a392,'dryRun':_0x34e3de,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':'POST','path':_0x3f57f7(0x106),'body':{..._0x1cea57,'appCode':_0x4048a8['appCode']}}],'snapshotHash':_0x49c093[_0x3f57f7(0x119)],'warnings':_0x5d76b1?[_0x3f57f7(0x11e)]:[]})};}function verifyMove(_0x3d70a9,_0x3f1246){const _0x17720c=a158_0x1e99bd;assertVerified(_0x3d70a9[_0x17720c(0x11a)]!==_0x17720c(0x101),_0x17720c(0x122)+_0x3d70a9['id']+_0x17720c(0x109)),assertVerified(_0x3d70a9['childrenCount']===0x0,_0x17720c(0x122)+_0x3d70a9['id']+_0x17720c(0x113)),assertVerified(_0x3d70a9[_0x17720c(0x117)]===_0x3f1246['parentId'],_0x17720c(0x122)+_0x3d70a9['id']+_0x17720c(0xf9)),assertVerified(_0x3d70a9[_0x17720c(0x112)]===_0x3f1246[_0x17720c(0x112)],_0x17720c(0x122)+_0x3d70a9['id']+'\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.');}