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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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_0x404691=a151_0x3ca9;(function(_0x5e69d3,_0x2f8ddb){const _0x34a538=a151_0x3ca9,_0x15e6ea=_0x5e69d3();while(!![]){try{const _0x552407=parseInt(_0x34a538(0x139))/0x1*(parseInt(_0x34a538(0x13a))/0x2)+parseInt(_0x34a538(0x140))/0x3*(parseInt(_0x34a538(0xe8))/0x4)+-parseInt(_0x34a538(0x148))/0x5*(parseInt(_0x34a538(0x137))/0x6)+parseInt(_0x34a538(0xe9))/0x7+-parseInt(_0x34a538(0x101))/0x8+-parseInt(_0x34a538(0x153))/0x9+-parseInt(_0x34a538(0x14b))/0xa*(-parseInt(_0x34a538(0x111))/0xb);if(_0x552407===_0x2f8ddb)break;else _0x15e6ea['push'](_0x15e6ea['shift']());}catch(_0x179992){_0x15e6ea['push'](_0x15e6ea['shift']());}}}(a151_0x1d29,0x75f30));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_0x404691(0x129),'path':a151_0x404691(0x10c)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a151_0x404691(0x12a)},MENU_DELETE_RECURSIVE_FLAG={'name':'recursive','type':a151_0x404691(0x107),'description':a151_0x404691(0xfd)},MENU_DELETE_PLAN_OUT_FLAG={'name':a151_0x404691(0xf8),'type':a151_0x404691(0xe1),'description':a151_0x404691(0x120)},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a151_0x404691(0xe1),'description':a151_0x404691(0xf3)};export const menuDelete={'service':a151_0x404691(0x127),'command':a151_0x404691(0xe2),'description':'Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x415238){const _0x4c74d1=a151_0x404691;_0x415238['bool'](_0x4c74d1(0x134))?validateDeleteDryRunInput(_0x415238):validateDeleteExecuteInput(_0x415238),requireExplicitYes(_0x415238);},async 'dryRun'(_0x33f672){const _0x387d43=a151_0x404691;validateDeleteDryRunInput(_0x33f672);const _0x414375=await buildDeletePlan(_0x33f672),_0x1f9c9d=createMenuDeletePlanFile(_0x33f672[_0x387d43(0x145)],_0x414375),_0x32d20c=await writeMenuDeletePlan(_0x33f672['str']('plan-out'),_0x1f9c9d),_0x3a979f=mutationResult({..._0x414375,'planFile':{'path':_0x32d20c,'createdAt':_0x1f9c9d[_0x387d43(0x136)],'expiresAt':_0x1f9c9d['expiresAt']}});return menuDryRunResult(_0x3a979f,{'method':_0x387d43(0x129),'url':'/smartapi/menu/batchDelete','body':{'idList':_0x3a979f[_0x387d43(0x157)]},'description':'Would\x20batch\x20delete\x20'+(_0x3a979f[_0x387d43(0x157)]?.[_0x387d43(0xe3)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x3a979f[_0x387d43(0xe7)]['id']+_0x387d43(0x110)+_0x32d20c+'.'});},async 'execute'(_0x37dcc5){const _0x25696b=a151_0x404691;requireExplicitYes(_0x37dcc5),validateDeleteExecuteInput(_0x37dcc5);const _0x4e23cb=await readMenuDeletePlan(_0x37dcc5[_0x25696b(0x154)](_0x25696b(0xed))),_0x29a4f9=mutationPlanFromDeleteFile(_0x4e23cb[_0x25696b(0xed)],_0x4e23cb[_0x25696b(0x156)]),_0x4b1c3b=_0x4e23cb[_0x25696b(0xed)][_0x25696b(0x119)]['id'];try{assertMenuDeletePlanExecutable(_0x4e23cb[_0x25696b(0xed)],_0x37dcc5[_0x25696b(0x145)]);}catch(_0x21fb4d){throw menuFailure(asMenuError(_0x21fb4d),_0x29a4f9,{'stage':'plan-validation','failed':{'id':_0x4b1c3b}});}let _0x3738d7,_0x27a274;try{_0x3738d7=await fetchMutationSnapshot(_0x37dcc5,_0x25696b(0x100),_0x4b1c3b),_0x27a274=assertMenuDeletePlanCurrent(_0x4e23cb[_0x25696b(0xed)],_0x37dcc5[_0x25696b(0x145)],_0x3738d7),assertDeleteTargetsComplete(_0x4e23cb['plan'],_0x3738d7),_0x27a274[_0x25696b(0x14e)](_0xf5f07a=>assertDeleteSafety(_0xf5f07a,_0x4e23cb[_0x25696b(0xed)][_0x25696b(0x12e)])),assertNoSharedPages(_0x3738d7,_0x27a274),assertCascadeMatchesPlan(_0x29a4f9,_0x27a274);}catch(_0x12d586){throw menuFailure(asMenuError(_0x12d586),_0x29a4f9,{'stage':'pre-write-plan-validation','failed':{'id':_0x4b1c3b}});}const _0x3f8824=_0x4e23cb['plan'][_0x25696b(0x157)];let _0xbab302;try{_0xbab302=await batchDeleteMenuEntities(_0x37dcc5[_0x25696b(0x13e)],_0x3f8824);}catch(_0x24f6f6){const _0x1fb619=mapMenuApiError(_0x24f6f6,_0x25696b(0xf9)),_0x2064ba=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0xb50f1e;try{_0xb50f1e=await readDeleteOutcome(_0x37dcc5,_0x3f8824);}catch(_0x127336){const _0x287171=describeMenuErrorCause(_0x127336,_0x25696b(0xfa),_0x4b1c3b);_0x2064ba[_0x25696b(0x118)](_0x25696b(0xf7)+_0x287171[_0x25696b(0xde)]+_0x25696b(0xea)+_0x287171[_0x25696b(0xec)]);throw menuFailure(_0x1fb619,_0x29a4f9,{'stage':'batch-delete','failed':{'targetIds':_0x3f8824,'targetIdsAbsent':_0x25696b(0x123),..._0x287171},'warnings':_0x2064ba,'verification':{'status':_0x25696b(0xd9),'lookupCommand':_0x25696b(0x10d),'targetIds':_0x3f8824}});}throw menuFailure(_0x1fb619,_0x29a4f9,{'stage':_0x25696b(0xda),'succeeded':_0xb50f1e['absentIds'][_0x25696b(0x14a)](_0x41094e=>({'id':_0x41094e,'deleted':!![]})),'failed':{'targetIds':_0x3f8824,'absentIds':_0xb50f1e[_0x25696b(0xdf)],'remainingIds':_0xb50f1e[_0x25696b(0xd8)]},'warnings':_0x2064ba,'verification':verificationFromOutcome(_0xb50f1e)});}if(_0xbab302!==_0x3f8824[_0x25696b(0xe3)]){const _0x121b94=menuError(_0x25696b(0x12d),_0x25696b(0x10a)+_0xbab302+'\x20deleted\x20menus;\x20expected\x20'+_0x3f8824[_0x25696b(0xe3)]+'.',_0x25696b(0x10f)),_0x4e018c=['The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.'];let _0x12d9fb;try{_0x12d9fb=await readDeleteOutcome(_0x37dcc5,_0x3f8824);}catch(_0x1e50bf){const _0x5e5559=describeMenuErrorCause(_0x1e50bf,_0x25696b(0xfe),_0x4b1c3b);_0x4e018c['push'](_0x25696b(0xdd)+_0x5e5559[_0x25696b(0xde)]+_0x25696b(0xea)+_0x5e5559[_0x25696b(0xec)]);throw menuFailure(_0x121b94,_0x29a4f9,{'stage':_0x25696b(0xda),'failed':{'targetIds':_0x3f8824,'expectedCount':_0x3f8824['length'],'reportedDeletedCount':_0xbab302,'targetIdsAbsent':'unconfirmed',..._0x5e5559},'warnings':_0x4e018c,'verification':{'status':_0x25696b(0xd9),'lookupCommand':_0x25696b(0x10d),'targetIds':_0x3f8824}});}throw menuFailure(_0x121b94,_0x29a4f9,{'stage':_0x25696b(0xda),'succeeded':_0x12d9fb[_0x25696b(0xdf)][_0x25696b(0x14a)](_0x301a47=>({'id':_0x301a47,'deleted':!![]})),'failed':{'targetIds':_0x3f8824,'expectedCount':_0x3f8824[_0x25696b(0xe3)],'reportedDeletedCount':_0xbab302,'absentIds':_0x12d9fb[_0x25696b(0xdf)],'remainingIds':_0x12d9fb[_0x25696b(0xd8)]},'warnings':_0x4e018c,'verification':verificationFromOutcome(_0x12d9fb)});}let _0x310e70;try{_0x310e70=await readDeleteOutcome(_0x37dcc5,_0x3f8824);}catch(_0x481cd9){const _0x4e3233=describeMenuErrorCause(_0x481cd9,_0x25696b(0xf5),_0x4b1c3b),_0x24b438=asVerificationError(_0x481cd9,_0x25696b(0x121)+_0x4b1c3b+_0x25696b(0xe4));throw menuFailure(_0x24b438,_0x29a4f9,{'stage':_0x25696b(0x103),'succeeded':_0x3f8824[_0x25696b(0x14a)](_0x34c56a=>({'id':_0x34c56a,'deleteRequested':!![]})),'failed':{'id':_0x4b1c3b,'targetIds':_0x3f8824,'targetIdsAbsent':_0x25696b(0x123),..._0x4e3233},'warnings':[_0x25696b(0xe0)],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x3f8824}});}if(_0x310e70['remainingIds']['length']>0x0){const _0x1c24ef=menuError(_0x25696b(0x14d),_0x25696b(0x138)+_0x310e70[_0x25696b(0xd8)]['join'](',\x20')+'.',_0x25696b(0x10f));throw menuFailure(_0x1c24ef,_0x29a4f9,{'stage':'verification','succeeded':_0x3f8824[_0x25696b(0x14a)](_0x27678b=>({'id':_0x27678b,'deleteRequested':!![]})),'failed':{'id':_0x4b1c3b,'targetIds':_0x3f8824,'absentIds':_0x310e70[_0x25696b(0xdf)],'remainingIds':_0x310e70['remainingIds']},'warnings':[_0x25696b(0x132)],'verification':verificationFromOutcome(_0x310e70)});}const _0x47b308=_0x3f8824[_0x25696b(0x14a)](_0x4042f7=>({'id':_0x4042f7,'deleted':!![]})),_0x509f4f=mutationResult({..._0x29a4f9,'dryRun':![],'succeeded':_0x47b308,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x29a4f9[_0x25696b(0x11e)],'finalSnapshotHash':_0x310e70[_0x25696b(0x10e)]['hash'],'reportedDeletedCount':_0xbab302,'targetAbsent':!_0x310e70[_0x25696b(0x10e)][_0x25696b(0x125)][_0x25696b(0x14f)](_0x4b1c3b),'allTargetsAbsent':!![],'targetIds':_0x3f8824}});return{'ok':!![],'data':_0x509f4f,'message':_0x25696b(0xe5)+_0x47b308[_0x25696b(0xe3)]+_0x25696b(0xfc)+_0x4b1c3b+'.'};}};async function readDeleteOutcome(_0xb30045,_0x3dfa27){const _0x3583a4=a151_0x404691,_0x7c0a09=await fetchMenuSnapshot(_0xb30045[_0x3583a4(0x145)],_0xb30045[_0x3583a4(0x13e)]);return{'snapshot':_0x7c0a09,'absentIds':_0x3dfa27[_0x3583a4(0x115)](_0x7a80f0=>!_0x7c0a09[_0x3583a4(0x125)][_0x3583a4(0x14f)](_0x7a80f0)),'remainingIds':_0x3dfa27['filter'](_0x206f90=>_0x7c0a09[_0x3583a4(0x125)][_0x3583a4(0x14f)](_0x206f90))};}function verificationFromOutcome(_0x5abac7){const _0x28cbae=a151_0x404691;return{'checkedBy':_0x28cbae(0x13f),'absentIds':_0x5abac7['absentIds'],'remainingIds':_0x5abac7[_0x28cbae(0xd8)]};}function validateDeleteDryRunInput(_0x3d82b8){const _0x35851d=a151_0x404691;validateExactId(_0x3d82b8);if(!hasFlag(_0x3d82b8,_0x35851d(0xf8))||!_0x3d82b8[_0x35851d(0x154)](_0x35851d(0xf8))[_0x35851d(0x11c)]())throw CliErrors[_0x35851d(0x147)](_0x35851d(0xf8),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x3d82b8,_0x35851d(0xed)))throw CliErrors[_0x35851d(0x109)](_0x35851d(0x14c));}function validateDeleteExecuteInput(_0x52c543){const _0x9b92eb=a151_0x404691;if(!hasFlag(_0x52c543,_0x9b92eb(0xed))||!_0x52c543[_0x9b92eb(0x154)](_0x9b92eb(0xed))[_0x9b92eb(0x11c)]())throw CliErrors[_0x9b92eb(0x147)]('plan',_0x9b92eb(0x158));const _0x41a331=['id',_0x9b92eb(0x12e),_0x9b92eb(0xf8),'expect-parent-id',_0x9b92eb(0x144),_0x9b92eb(0x112)][_0x9b92eb(0x115)](_0x34aded=>hasFlag(_0x52c543,_0x34aded));if(_0x41a331[_0x9b92eb(0xe3)]>0x0)throw CliErrors[_0x9b92eb(0x109)](_0x9b92eb(0x12f)+_0x41a331['map'](_0x302e15=>'--'+_0x302e15)[_0x9b92eb(0x151)](',\x20')+'.');}async function buildDeletePlan(_0x4fb7aa){const _0x7a51ef=a151_0x404691,_0xe0ad9a=validateExactId(_0x4fb7aa),_0x56512a=await fetchMutationSnapshot(_0x4fb7aa,_0x7a51ef(0x12c),_0xe0ad9a),_0x4586eb=requireMenu(_0x56512a,_0xe0ad9a);assertExpectedState(_0x4fb7aa,_0x4586eb);const _0x2fe050=_0x4fb7aa[_0x7a51ef(0x155)](_0x7a51ef(0x12e));let _0x5961fe;if(_0x2fe050){if(_0x4586eb[_0x7a51ef(0x131)][_0x7a51ef(0x11c)]()[_0x7a51ef(0xf1)]()!==_0x7a51ef(0x105))throw menuError(_0x7a51ef(0xdc),_0x7a51ef(0x102)+_0x4586eb['id']+_0x7a51ef(0xf6)+(_0x4586eb[_0x7a51ef(0x131)]||'unknown')+_0x7a51ef(0x117));_0x5961fe=collectDeleteTargets(_0x56512a,_0x4586eb),_0x5961fe[_0x7a51ef(0x14e)](_0x2844b0=>assertDeleteSafety(_0x2844b0,!![]));}else assertDeleteSafety(_0x4586eb),_0x5961fe=[_0x4586eb];assertNoSharedPages(_0x56512a,_0x5961fe);const _0xf3c83d=_0x5961fe['map'](_0x3f3512=>_0x3f3512['id']),_0x34adec=cascadeForTargets(_0x5961fe),_0x339629=_0x34adec[_0x7a51ef(0x10b)][_0x7a51ef(0xe3)]>0x0?[_0x7a51ef(0x13c)]:[];return mutationResult({'operation':_0x7a51ef(0xe2),'selector':{'id':_0xe0ad9a,'recursive':_0x2fe050},'before':_0x4586eb,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x7a51ef(0x11b),'method':_0x7a51ef(0x129),'path':_0x7a51ef(0x10c),'body':{'idList':_0xf3c83d}}],'targets':_0x5961fe,'deleteOrder':_0xf3c83d,'snapshotHash':_0x56512a[_0x7a51ef(0x146)],'cascade':_0x34adec,'warnings':_0x339629});}function assertDeleteSafety(_0x49e908,_0x206955=![]){const _0xc2aa50=a151_0x404691,_0x2a148f=_0x49e908[_0xc2aa50(0x131)][_0xc2aa50(0x11c)]()[_0xc2aa50(0xf1)]()==='folder';if(_0x49e908[_0xc2aa50(0x116)]>0x0&&(!_0x206955||!_0x2a148f))throw menuError(_0xc2aa50(0x152),_0xc2aa50(0x102)+_0x49e908['id']+'\x20has\x20'+_0x49e908[_0xc2aa50(0x116)]+_0xc2aa50(0xfb),_0xc2aa50(0x150)+_0x49e908[_0xc2aa50(0x11a)][_0xc2aa50(0x151)](',\x20'));if(_0x2a148f&&_0x49e908[_0xc2aa50(0x11d)]!=null)throw menuError(_0xc2aa50(0xf2),'Folder\x20'+_0x49e908['id']+_0xc2aa50(0xf4)+_0x49e908[_0xc2aa50(0x11d)]+_0xc2aa50(0x13b),_0xc2aa50(0x11f));if(!_0x2a148f)return;if(!_0x49e908[_0xc2aa50(0x108)])throw menuError(_0xc2aa50(0xee),'Folder\x20'+_0x49e908['id']+_0xc2aa50(0x124),'Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(_0x49e908['resources']['length']>0x0)throw menuError(_0xc2aa50(0x12b),_0xc2aa50(0x113)+_0x49e908['id']+_0xc2aa50(0x141)+_0x49e908['resources'][_0xc2aa50(0xe3)]+_0xc2aa50(0x142),'Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function collectDeleteTargets(_0x27b924,_0x163da4){const _0xb91be8=[],_0x272326=new Set(),_0x4d900b=new Set(),_0x4c0f41=_0x5a1436=>{const _0x3f0377=a151_0x3ca9;if(_0x272326[_0x3f0377(0x14f)](_0x5a1436['id']))throw menuError('menu_tree_invalid',_0x3f0377(0x143)+_0x5a1436['id']+'.');if(_0x4d900b[_0x3f0377(0x14f)](_0x5a1436['id']))return;_0x272326[_0x3f0377(0x122)](_0x5a1436['id']);for(const _0x10a2cc of _0x5a1436[_0x3f0377(0x11a)]){const _0x2d2d55=_0x27b924[_0x3f0377(0x125)][_0x3f0377(0xdb)](_0x10a2cc);if(!_0x2d2d55)throw menuError(_0x3f0377(0xf0),_0x3f0377(0x102)+_0x5a1436['id']+_0x3f0377(0xef)+_0x10a2cc+'.');_0x4c0f41(_0x2d2d55);}_0x272326['delete'](_0x5a1436['id']),_0x4d900b['add'](_0x5a1436['id']),_0xb91be8[_0x3f0377(0x118)](_0x5a1436);};return _0x4c0f41(_0x163da4),_0xb91be8;}function assertDeleteTargetsComplete(_0xc8e937,_0x1317ec){const _0x57cb34=a151_0x404691,_0x46f3df=requireMenu(_0x1317ec,_0xc8e937[_0x57cb34(0x119)]['id']);if(_0xc8e937['recursive']&&_0x46f3df[_0x57cb34(0x131)][_0x57cb34(0x11c)]()[_0x57cb34(0xf1)]()!==_0x57cb34(0x105))throw menuError(_0x57cb34(0x13d),_0x57cb34(0xeb)+_0x46f3df['id']+_0x57cb34(0x135));const _0x1adcec=_0xc8e937[_0x57cb34(0x12e)]?collectDeleteTargets(_0x1317ec,_0x46f3df)['map'](_0x53dd3e=>_0x53dd3e['id']):[_0x46f3df['id']];if(JSON[_0x57cb34(0x114)](_0xc8e937[_0x57cb34(0x157)])!==JSON[_0x57cb34(0x114)](_0x1adcec))throw menuError('menu_plan_invalid',_0x57cb34(0x104),_0x57cb34(0x106));}function a151_0x3ca9(_0x4657fc,_0x46019e){_0x4657fc=_0x4657fc-0xd8;const _0x1d294b=a151_0x1d29();let _0x3ca915=_0x1d294b[_0x4657fc];return _0x3ca915;}function a151_0x1d29(){const _0x1a3c89=['The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','dry-run','\x20is\x20not\x20a\x20folder.','createdAt','1218jglYKr','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','97849Yzvedp','14xzgiPO','\x20and\x20cannot\x20be\x20deleted\x20safely.','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','menu_plan_invalid','cookie','menu\x20list','326082XDSsQE','\x20still\x20references\x20','\x20resource\x20URL(s).','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','expect-path','appCode','hash','flagMissing','5570dFzhkA','indexOf','map','10xJrIVe','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','menu_verification_failed','forEach','has','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','join','menu_non_empty','1367271pbmuEX','str','bool','path','deleteOrder','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','remainingIds','failed','batch-delete','get','menu_recursive_requires_folder','Post-mismatch\x20menu\x20readback\x20failed\x20(','causeCode','absentIds','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','string','delete','length','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','Deleted\x20','size','selector','4rweAkS','4546038XWPDto','):\x20','Recursive\x20menu\x20delete\x20plan\x20root\x20','causeMessage','plan','menu_folder_resources_invalid','\x20references\x20missing\x20child\x20','menu_tree_invalid','toLowerCase','menu_delete_page_bound','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','verify\x20batch\x20delete','\x20is\x20type\x20\x22','Post-failure\x20menu\x20readback\x20failed\x20(','plan-out','batch\x20delete','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','\x20menu(s)\x20under\x20exact\x20id\x20','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','cascade','execute\x20reviewed\x20delete\x20plan','7387848MesXaS','Menu\x20','verification','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','folder','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','boolean','resourcesValid','validation','Backend\x20reported\x20','pages','/smartapi/menu/batchDelete','rabetbase\x20menu\x20list\x20--format\x20json','snapshot','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.',';\x20execution\x20must\x20consume\x20','3757501Mazkmf','expected-children-count','Folder\x20','stringify','filter','childrenCount','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','push','target','childrenIds','batch-delete-menu','trim','pageId','snapshotHash','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','Batch\x20delete\x20request\x20for\x20menu\x20','add','unconfirmed','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','byId','\x20->\x20menu\x20','menu','message','POST','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','menu_folder_has_resources','plan\x20delete','menu_batch_delete_count_mismatch','recursive','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','menus','type'];a151_0x1d29=function(){return _0x1a3c89;};return a151_0x1d29();}function assertNoSharedPages(_0x2dd37a,_0x2fa572){const _0x241d84=a151_0x404691,_0x336443=new Set(_0x2fa572[_0x241d84(0x14a)](_0xc6b14=>_0xc6b14['id'])),_0xddb0c6=new Set(_0x2fa572[_0x241d84(0x14a)](_0x2c81d5=>_0x2c81d5[_0x241d84(0x11d)])[_0x241d84(0x115)](_0x330bc3=>_0x330bc3!=null));if(_0xddb0c6[_0x241d84(0xe6)]===0x0)return;const _0x43ba2b=_0x2dd37a[_0x241d84(0x130)][_0x241d84(0x115)](_0x4b345f=>!_0x336443['has'](_0x4b345f['id'])&&_0x4b345f[_0x241d84(0x11d)]!=null&&_0xddb0c6[_0x241d84(0x14f)](_0x4b345f[_0x241d84(0x11d)]));if(_0x43ba2b[_0x241d84(0xe3)]===0x0)return;const _0x3f9086=_0x43ba2b['map'](_0x3786c5=>'page\x20'+_0x3786c5['pageId']+_0x241d84(0x126)+_0x3786c5['id'])[_0x241d84(0x151)](',\x20');throw menuError('menu_page_shared','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x3f9086+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x225e56,_0x401ce8){const _0x3a9ec8=a151_0x404691,_0x139ef1=cascadeForTargets(_0x401ce8);if(JSON[_0x3a9ec8(0x114)](_0x225e56[_0x3a9ec8(0xff)])!==JSON[_0x3a9ec8(0x114)](_0x139ef1))throw menuError(_0x3a9ec8(0x13d),_0x3a9ec8(0x133));}function cascadeForTargets(_0x2e3773){const _0x3d97a0=a151_0x404691,_0x4e0970=_0x2e3773['map'](_0x2a2902=>_0x2a2902[_0x3d97a0(0x11d)])[_0x3d97a0(0x115)](_0x325cd6=>_0x325cd6!=null)['filter']((_0x506378,_0x1d6f09,_0x266bc1)=>_0x266bc1[_0x3d97a0(0x149)](_0x506378)===_0x1d6f09);return{'pages':_0x4e0970,'pageSchemaAffected':_0x4e0970[_0x3d97a0(0xe3)]>0x0};}function asMenuError(_0x2252fc){const _0xd8e487=a151_0x404691;return _0x2252fc instanceof CliError?_0x2252fc:menuError(_0xd8e487(0x13d),_0x2252fc instanceof Error?_0x2252fc[_0xd8e487(0x128)]:String(_0x2252fc));}
@@ -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
+ const a152_0x2ca6cb=a152_0x3c07;(function(_0x3d1b39,_0x2513c){const _0x1ce584=a152_0x3c07,_0x46afee=_0x3d1b39();while(!![]){try{const _0x33ce28=-parseInt(_0x1ce584(0x12e))/0x1*(-parseInt(_0x1ce584(0xf6))/0x2)+-parseInt(_0x1ce584(0xce))/0x3*(-parseInt(_0x1ce584(0xcc))/0x4)+parseInt(_0x1ce584(0xf8))/0x5*(parseInt(_0x1ce584(0xb0))/0x6)+-parseInt(_0x1ce584(0x130))/0x7*(parseInt(_0x1ce584(0xd5))/0x8)+parseInt(_0x1ce584(0x118))/0x9*(-parseInt(_0x1ce584(0xc4))/0xa)+parseInt(_0x1ce584(0x10c))/0xb+-parseInt(_0x1ce584(0xee))/0xc*(parseInt(_0x1ce584(0xe4))/0xd);if(_0x33ce28===_0x2513c)break;else _0x46afee['push'](_0x46afee['shift']());}catch(_0x4ea1b8){_0x46afee['push'](_0x46afee['shift']());}}}(a152_0x1a79,0x7227f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':a152_0x2ca6cb(0xb4)};export function validateExternalMenuUrl(_0xf3b726){const _0x215fde=a152_0x2ca6cb,_0x4e2d66=_0xf3b726[_0x215fde(0x133)]();let _0x3584ec;try{_0x3584ec=new URL(_0x4e2d66);}catch{throw menuError(_0x215fde(0xf7),_0x215fde(0x10b),_0x215fde(0xc2));}if(_0x3584ec[_0x215fde(0xf4)]!=='https:')throw menuError(_0x215fde(0x135),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0x215fde(0xdf));if(_0x3584ec[_0x215fde(0x10f)]||_0x3584ec[_0x215fde(0x104)])throw menuError(_0x215fde(0x100),_0x215fde(0xd3),_0x215fde(0xf3));return _0x4e2d66;}export const menuExternalLinkCreate={'service':a152_0x2ca6cb(0xc8),'command':a152_0x2ca6cb(0xca),'description':a152_0x2ca6cb(0x13a),'risk':a152_0x2ca6cb(0xe5),'structuredErrors':!![],'flags':[{'name':a152_0x2ca6cb(0xcf),'type':a152_0x2ca6cb(0x10e),'required':!![],'description':a152_0x2ca6cb(0xd0)},{'name':a152_0x2ca6cb(0x106),'type':a152_0x2ca6cb(0x10e),'required':!![],'enum':[a152_0x2ca6cb(0x138),a152_0x2ca6cb(0x10d)],'description':a152_0x2ca6cb(0xf9)},{'name':a152_0x2ca6cb(0x128),'type':a152_0x2ca6cb(0x10e),'required':!![],'description':a152_0x2ca6cb(0x127)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a152_0x2ca6cb(0x131),'type':a152_0x2ca6cb(0xb5),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5c7c0f){validateAddInput(_0x5c7c0f);},async 'dryRun'(_0x29853a){const _0x45a43e=a152_0x2ca6cb;validateAddInput(_0x29853a);const {plan:_0x31da93}=await buildSafeAddPlan(_0x29853a,!![]),_0x3393ff=_0x31da93[_0x45a43e(0xcd)],_0x50235f=createBody(_0x3393ff);return menuDryRunResult(_0x31da93,{'method':_0x45a43e(0xf5),'url':'/smartapi/menu/create','body':_0x50235f,'description':_0x45a43e(0x11f)+JSON['stringify'](_0x3393ff[_0x45a43e(0xcf)])+_0x45a43e(0xf0)+_0x29853a[_0x45a43e(0x11e)](_0x45a43e(0x106))+_0x45a43e(0x105)});},async 'execute'(_0xfb42e6){const _0x3857dd=a152_0x2ca6cb;validateAddInput(_0xfb42e6);const _0x19216b=await buildSafeAddPlan(_0xfb42e6,![]),{plan:_0x165033,snapshot:_0x5e9585}=_0x19216b,_0x17df78=_0x165033[_0x3857dd(0xcd)],_0x3b866e=buildMenuLookupCommand(_0xfb42e6[_0x3857dd(0xd2)]);await recheckAddSnapshot(_0xfb42e6,_0x165033);let _0x19e370;try{_0x19e370=await createMenuEntity(_0xfb42e6[_0x3857dd(0xd2)],_0xfb42e6['cookie'],createBody(_0x17df78));}catch(_0x192768){const _0x59baec=mapMenuApiError(_0x192768,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x192768)||_0x59baec['code']===_0x3857dd(0xc0))throw externalLinkCreateFailure(_0x59baec,_0x165033,{'stage':_0x3857dd(0xe3),'failed':{},'verification':{'status':_0x3857dd(0xc6),'lookupCommand':_0x3b866e}});return recoverAfterResponseLoss(_0xfb42e6,_0x19216b,_0x3b866e);}const _0x265850=Number(_0x19e370?.['id']),_0x2240ff=typeof _0x19e370?.['path']==='string'?_0x19e370[_0x3857dd(0xba)]:'';if(!Number[_0x3857dd(0x126)](_0x265850)||_0x265850<=0x0||!_0x2240ff[_0x3857dd(0x133)]()){const _0x2b8f00=menuError(_0x3857dd(0xfb),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Run\x20'+_0x3b866e+'\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.');throw externalLinkCreateFailure(_0x2b8f00,_0x165033,{'stage':'create-response-validation','succeeded':Number[_0x3857dd(0x126)](_0x265850)&&_0x265850>0x0?[{'id':_0x265850,'created':!![]}]:[],'failed':{'createdId':Number[_0x3857dd(0x126)](_0x265850)?_0x265850:null,'generatedPathConfirmed':Boolean(_0x2240ff[_0x3857dd(0x133)]())},'warnings':[_0x3857dd(0x125)],'after':Number[_0x3857dd(0x126)](_0x265850)&&_0x265850>0x0?{..._0x17df78,'id':_0x265850,'path':_0x2240ff}:_0x17df78,'verification':{'status':_0x3857dd(0xc6),'lookupCommand':_0x3b866e,...Number['isSafeInteger'](_0x265850)&&_0x265850>0x0?{'targetId':_0x265850}:{}}});}const _0x55323c=await readAndVerifyCreatedMenu({'appCode':_0xfb42e6['appCode'],'cookie':_0xfb42e6['cookie'],'plan':_0x165033,'afterPlan':_0x17df78,'createdId':_0x265850,'expectedPath':_0x2240ff,'lookupCommand':_0x3b866e,'recovered':![]});return creationSuccess(_0x165033,_0x55323c[_0x3857dd(0xc7)],_0x55323c[_0x3857dd(0x108)],![]);}};function validateAddInput(_0x557059){const _0x23f66f=a152_0x2ca6cb;if(!_0x557059[_0x23f66f(0x11e)](_0x23f66f(0xcf))[_0x23f66f(0x133)]())throw CliErrors[_0x23f66f(0x13e)](_0x23f66f(0xcf));resolveExternalMenuType(_0x557059),validateExternalMenuUrl(_0x557059['str']('url')),parseParentId(_0x557059,_0x23f66f(0xed)),validateSort(_0x557059);}function resolveExternalMenuType(_0x4dea57){const _0x382235=a152_0x2ca6cb,_0x19ee02=_0x4dea57[_0x382235(0x11e)]('open-mode')[_0x382235(0x133)]();if(!_0x19ee02)throw CliErrors[_0x382235(0x13e)](_0x382235(0x106));const _0x482b32=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x19ee02];if(!_0x482b32)throw menuError(_0x382235(0x12c),_0x382235(0x102),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x482b32;}async function buildAddPlan(_0x421165,_0x3715b7){const _0x3b4a44=a152_0x2ca6cb,_0x5df277=await fetchMutationSnapshot(_0x421165,_0x3b4a44(0xfa)),_0x6bcee1=parseParentId(_0x421165,_0x3b4a44(0xed))??null;if(_0x6bcee1!=null)requireFolder(_0x5df277,_0x6bcee1);const _0x4171cf=validateSort(_0x421165),_0x350b15=_0x4171cf??nextSiblingSort(_0x5df277,_0x6bcee1,_0x3b4a44(0xc8)),_0x42db60=_0x421165['str'](_0x3b4a44(0xcf))[_0x3b4a44(0x133)](),_0x76e326=resolveExternalMenuType(_0x421165),_0x3f31c9=validateExternalMenuUrl(_0x421165['str'](_0x3b4a44(0x128))),_0x13ae51=Object[_0x3b4a44(0xdd)]['hasOwnProperty'][_0x3b4a44(0x13c)](_0x421165[_0x3b4a44(0xb1)],'visible')?_0x421165['bool'](_0x3b4a44(0x131)):!![],_0xff5853={'id':null,'parentId':_0x6bcee1,'label':_0x42db60,'path':_0x3b4a44(0xd1),'url':_0x3f31c9,'type':_0x76e326,'visible':_0x13ae51,'sort':_0x350b15},_0x133e26=buildMenuLookupCommand(_0x421165[_0x3b4a44(0xd2)]),_0x4e6359=mutationResult({'operation':'add','selector':{'parentId':_0x6bcee1,'type':_0x76e326,'label':_0x42db60,'url':_0x3f31c9},'before':null,'after':_0xff5853,'dryRun':_0x3715b7,'backend':[{'method':_0x3b4a44(0xf5),'path':_0x3b4a44(0x129)}],'plannedActions':[{'stage':_0x3b4a44(0x103),'method':_0x3b4a44(0xf5),'path':'/smartapi/menu/create','body':createBody(_0xff5853)}],'snapshotHash':_0x5df277['hash'],'warnings':[_0x3b4a44(0xe8)],'verification':{'lookupCommand':_0x133e26}});return{'plan':_0x4e6359,'snapshot':_0x5df277};}async function buildSafeAddPlan(_0x25fffb,_0x3fcdcc){try{return await buildAddPlan(_0x25fffb,_0x3fcdcc);}catch(_0x590af5){throw safeMenuAddError(_0x590af5);}}async function recheckAddSnapshot(_0x554bd8,_0x39f7d4){const _0x51495b=a152_0x2ca6cb;try{await recheckMutationSnapshot(_0x554bd8,_0x39f7d4,_0x51495b(0xfa));}catch(_0x5e7444){const _0x2286db=getFailureRecord(_0x5e7444);throw externalLinkCreateFailure(_0x5e7444,_0x39f7d4,{'stage':_0x51495b(0x12b),'failed':{..._0x2286db?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0x2286db[_0x51495b(0xeb)]}:{},..._0x2286db?.['currentSnapshotHash']?{'currentSnapshotHash':_0x2286db[_0x51495b(0x116)]}:{}}});}}function createBody(_0x5d1d82){const _0x18a349=a152_0x2ca6cb;return{'parentId':toApiParentId(_0x5d1d82[_0x18a349(0x112)]),'label':String(_0x5d1d82[_0x18a349(0xcf)]),'type':String(_0x5d1d82[_0x18a349(0xd7)]),'url':String(_0x5d1d82[_0x18a349(0x128)]),'visible':Boolean(_0x5d1d82[_0x18a349(0x131)]),'sort':Number(_0x5d1d82[_0x18a349(0xb6)]),'extend':{}};}function buildMenuLookupCommand(_0x2d58bb){const _0x523e92=a152_0x2ca6cb,_0x18174a='\x27'+_0x2d58bb[_0x523e92(0xd6)](/'/g,_0x523e92(0x11a))+'\x27';return _0x523e92(0xe7)+_0x18174a+'\x20--format\x20compress';}async function recoverAfterResponseLoss(_0x50b467,_0x1ac9b8,_0x118705){const _0x56aaf=a152_0x2ca6cb,{plan:_0x1ff7d3,snapshot:_0x3959ed}=_0x1ac9b8,_0x47d391=_0x1ff7d3['after'];let _0x333a18;try{_0x333a18=await fetchMenuSnapshot(_0x50b467[_0x56aaf(0xd2)],_0x50b467[_0x56aaf(0x11b)]);}catch(_0x55c231){throw recoveryRequiredFailure(_0x1ff7d3,_0x118705,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x28f469=_0x333a18[_0x56aaf(0x12f)][_0x56aaf(0x110)](_0x33d8d0=>_0x33d8d0[_0x56aaf(0x112)]===_0x47d391[_0x56aaf(0x112)]&&_0x33d8d0['type']===_0x47d391['type']&&_0x33d8d0['label']===_0x47d391[_0x56aaf(0xcf)]&&_0x33d8d0[_0x56aaf(0x128)]===_0x47d391[_0x56aaf(0x128)]),_0x5d0a54=_0x28f469['filter'](_0x42569e=>!_0x3959ed[_0x56aaf(0xc9)][_0x56aaf(0xef)](_0x42569e['id'])),_0x21aced=_0x28f469['filter'](_0xfd9150=>_0x3959ed[_0x56aaf(0xc9)][_0x56aaf(0xef)](_0xfd9150['id']));if(_0x28f469[_0x56aaf(0x12d)]!==0x1||_0x5d0a54[_0x56aaf(0x12d)]!==0x1)throw recoveryRequiredFailure(_0x1ff7d3,_0x118705,{'matchCount':_0x28f469['length'],'newMatchCount':_0x5d0a54[_0x56aaf(0x12d)],'preexistingMatchCount':_0x21aced[_0x56aaf(0x12d)]});const _0x4c93dd=_0x5d0a54[0x0];try{verifyCreatedFact(_0x4c93dd,_0x4c93dd['id'],_0x47d391,null);}catch(_0x2458b4){const _0x15ceef=_0x2458b4 instanceof Error&&_0x56aaf(0xfc)in _0x2458b4?_0x2458b4:menuError(_0x56aaf(0xde),_0x56aaf(0x121)+_0x4c93dd['id']+_0x56aaf(0xe6),_0x56aaf(0x13f)+_0x118705+_0x56aaf(0xe9));throw externalLinkCreateFailure(_0x15ceef,_0x1ff7d3,{'stage':_0x56aaf(0x107),'succeeded':[{'id':_0x4c93dd['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x4c93dd['id'],'finalFactsConfirmed':![]},'after':_0x4c93dd,'warnings':[_0x56aaf(0x109)+_0x4c93dd['id']+_0x56aaf(0xec)],'verification':{'status':_0x56aaf(0xc6),'targetId':_0x4c93dd['id'],'recovered':!![],'lookupCommand':_0x118705}});}return creationSuccess(_0x1ff7d3,_0x333a18,_0x4c93dd,!![]);}function recoveryRequiredFailure(_0x159151,_0x550d01,_0x532c33){const _0x501101=a152_0x2ca6cb,_0x7d5f35=menuError(_0x501101(0x13b),_0x501101(0xe2),_0x501101(0x13f)+_0x550d01+_0x501101(0xf2));return externalLinkCreateFailure(_0x7d5f35,_0x159151,{'stage':_0x501101(0xaf),'failed':_0x532c33,'warnings':[_0x501101(0xb7)],'verification':{'status':_0x501101(0xc6),..._0x532c33,'lookupCommand':_0x550d01}});}async function readAndVerifyCreatedMenu(_0x5199d6){const _0x3b15e8=a152_0x2ca6cb;let _0x16cffa;try{_0x16cffa=await fetchMenuSnapshot(_0x5199d6[_0x3b15e8(0xd2)],_0x5199d6[_0x3b15e8(0x11b)]);}catch(_0x26634b){const _0x542565=menuError(_0x3b15e8(0xde),_0x3b15e8(0x109)+_0x5199d6[_0x3b15e8(0xc1)]+_0x3b15e8(0x139),_0x3b15e8(0x13f)+_0x5199d6[_0x3b15e8(0xe0)]+_0x3b15e8(0x11d));throw externalLinkCreateFailure(_0x542565,_0x5199d6[_0x3b15e8(0xb8)],{'stage':_0x3b15e8(0x107),'succeeded':[{'id':_0x5199d6[_0x3b15e8(0xc1)],'created':!![]}],'failed':{'id':_0x5199d6[_0x3b15e8(0xc1)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x5199d6[_0x3b15e8(0xd4)],'id':_0x5199d6[_0x3b15e8(0xc1)],'path':_0x5199d6[_0x3b15e8(0xe1)]},'warnings':[_0x3b15e8(0x109)+_0x5199d6[_0x3b15e8(0xc1)]+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x3b15e8(0xc6),'targetId':_0x5199d6[_0x3b15e8(0xc1)],'lookupCommand':_0x5199d6[_0x3b15e8(0xe0)]}});}const _0x5e44f7=_0x16cffa[_0x3b15e8(0xc9)][_0x3b15e8(0x124)](_0x5199d6['createdId']);try{if(!_0x5e44f7)throw menuError(_0x3b15e8(0xde),_0x3b15e8(0xd8)+_0x5199d6[_0x3b15e8(0xc1)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x3b15e8(0x13f)+_0x5199d6[_0x3b15e8(0xe0)]+_0x3b15e8(0x11d));verifyCreatedFact(_0x5e44f7,_0x5199d6[_0x3b15e8(0xc1)],_0x5199d6['afterPlan'],_0x5199d6[_0x3b15e8(0xe1)]);}catch(_0x178fc5){const _0x4231c2=_0x178fc5 instanceof Error&&'code'in _0x178fc5?_0x178fc5:menuError(_0x3b15e8(0xde),'Created\x20menu\x20'+_0x5199d6[_0x3b15e8(0xc1)]+_0x3b15e8(0xdb),_0x3b15e8(0x13f)+_0x5199d6[_0x3b15e8(0xe0)]+_0x3b15e8(0x11d));throw externalLinkCreateFailure(_0x4231c2,_0x5199d6['plan'],{'stage':_0x3b15e8(0x107),'succeeded':[{'id':_0x5199d6[_0x3b15e8(0xc1)],'created':!![]}],'failed':{'id':_0x5199d6[_0x3b15e8(0xc1)],'finalFactsConfirmed':![]},'after':_0x5e44f7??{..._0x5199d6[_0x3b15e8(0xd4)],'id':_0x5199d6[_0x3b15e8(0xc1)],'path':_0x5199d6[_0x3b15e8(0xe1)]},'warnings':[_0x3b15e8(0x109)+_0x5199d6['createdId']+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x3b15e8(0xc6),'targetId':_0x5199d6['createdId'],'recovered':_0x5199d6[_0x3b15e8(0x136)],'lookupCommand':_0x5199d6['lookupCommand']}});}return{'snapshot':_0x16cffa,'fact':_0x5e44f7};}function verifyCreatedFact(_0x2e9dfe,_0x354515,_0x3eabd3,_0x51a129){const _0x10a5a6=a152_0x2ca6cb;if(!Number['isSafeInteger'](_0x2e9dfe['id'])||_0x2e9dfe['id']<=0x0||_0x2e9dfe['id']!==_0x354515)throw menuError(_0x10a5a6(0xde),_0x10a5a6(0xdc),_0x10a5a6(0x137));const _0x2cea5f=[[_0x10a5a6(0x101),_0x2e9dfe['parentId'],_0x3eabd3[_0x10a5a6(0x112)]],[_0x10a5a6(0xd7),_0x2e9dfe[_0x10a5a6(0xd7)],_0x3eabd3[_0x10a5a6(0xd7)]],[_0x10a5a6(0xcf),_0x2e9dfe[_0x10a5a6(0xcf)],_0x3eabd3[_0x10a5a6(0xcf)]],[_0x10a5a6(0x10a),_0x2e9dfe['url'],_0x3eabd3[_0x10a5a6(0x128)]],[_0x10a5a6(0x123),_0x2e9dfe[_0x10a5a6(0x131)],_0x3eabd3[_0x10a5a6(0x131)]],[_0x10a5a6(0xb6),_0x2e9dfe[_0x10a5a6(0xb6)],_0x3eabd3[_0x10a5a6(0xb6)]]];for(const [_0x2312f8,_0xcd51b5,_0x10bee8]of _0x2cea5f){if(_0xcd51b5!==_0x10bee8)throw menuError(_0x10a5a6(0xde),_0x10a5a6(0xd8)+_0x2e9dfe['id']+_0x10a5a6(0x115)+_0x2312f8+'.',_0x10a5a6(0x120));}if(!_0x2e9dfe['path'][_0x10a5a6(0x133)]()||_0x51a129!==null&&_0x2e9dfe['path']!==_0x51a129)throw menuError(_0x10a5a6(0xde),_0x10a5a6(0xd8)+_0x2e9dfe['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x10a5a6(0x120));}function creationSuccess(_0x175536,_0x3de025,_0x52059c,_0x27f224){const _0x1d8bdd=a152_0x2ca6cb,_0x5b5a45=mutationResult({..._0x175536,'after':_0x52059c,'dryRun':![],'succeeded':[{'id':_0x52059c['id'],'created':!![],'recovered':_0x27f224}],'verification':{'checkedBy':_0x1d8bdd(0xfd),'snapshotHash':_0x3de025[_0x1d8bdd(0x132)],'targetId':_0x52059c['id'],'recovered':_0x27f224,'path':_0x52059c[_0x1d8bdd(0xba)]}});return{'ok':!![],'message':_0x27f224?_0x1d8bdd(0xda)+_0x52059c['id']+'\x20after\x20response\x20loss.':_0x1d8bdd(0xbe)+_0x52059c['id']+'.','data':{..._0x5b5a45,'recovered':_0x27f224}};}function externalLinkCreateFailure(_0x5b815d,_0x5e3e67,_0x2a1378){const _0x28fee2=a152_0x2ca6cb;return menuFailure(safeMenuAddError(_0x5b815d),redactFailurePlan(_0x5e3e67),{..._0x2a1378,'succeeded':_0x2a1378[_0x28fee2(0x134)]?.[_0x28fee2(0xbf)](redactFailureRecord),'failed':_0x2a1378['failed']?redactFailureRecord(_0x2a1378[_0x28fee2(0xc6)]):undefined,'verification':_0x2a1378[_0x28fee2(0x107)]?redactFailureRecord(_0x2a1378[_0x28fee2(0x107)]):undefined,'after':_0x2a1378[_0x28fee2(0xcd)]===undefined?undefined:redactFailureValue(_0x2a1378['after'])});}function a152_0x1a79(){const _0x548deb=['readbackerror','\x20has\x20an\x20unexpected\x20','currentSnapshotHash','rawerror','3960vJwXrD','entries','\x27\x5c\x27\x27','cookie','toLowerCase','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','str','Would\x20create\x20external\x20website\x20link\x20menu\x20','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','Recovered\x20menu\x20','<redacted>','visibility','get','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','isSafeInteger','External\x20HTTPS\x20URL','url','/smartapi/menu/create','body','pre-write-recheck','menu_open_mode_invalid','length','14RSKizm','menus','16779tgzecC','visible','hash','trim','succeeded','menu_url_https_required','recovered','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','embedded','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','Create\x20an\x20external\x20website\x20link\x20menu','menu_create_recovery_required','call','isArray','flagMissing','Run\x20','data','create-recovery','108330xMtFRk','rawFlags','menu_state_drift','plannedActions','link','boolean','sort','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','plan','object','path','External\x20menu\x20creation\x20failed.','menu_parent_not_folder','before','Created\x20external\x20menu\x20','map','menu_permission_denied','createdId','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','menu_sort_invalid','10850XnaNVU','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','failed','snapshot','menu','byId','external-link-create','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','4csfvMp','after','1296723PleMPv','label','Menu\x20label','<platform-generated>','appCode','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','afterPlan','2984jmbpAS','replace','type','Created\x20menu\x20','causemessage','Recovered\x20created\x20external\x20menu\x20','\x20failed\x20final\x20verification.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','prototype','menu_verification_failed','Provide\x20an\x20HTTPS\x20URL.','lookupCommand','expectedPath','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','create','190541eVRHON','write','\x20could\x20not\x20be\x20verified.','rabetbase\x20menu\x20list\x20--appcode\x20','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','includes','expectedSnapshotHash','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','parent-id','60GiikkE','has','\x20with\x20','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','protocol','POST','129242QlMrKJ','menu_url_invalid','125ojXvWW','How\x20to\x20open\x20the\x20external\x20website','create\x20external\x20menu','menu_create_response_invalid','code','menu\x20list','selector','menu_mutation_failed','menu_url_credentials_forbidden','parent','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','create-menu','password','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','open-mode','verification','fact','Menu\x20','URL','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','1364429rCBMpO','new-window','string','username','filter','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','parentId','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.'];a152_0x1a79=function(){return _0x548deb;};return a152_0x1a79();}function redactFailurePlan(_0x86a0c1){const _0x12b80f=a152_0x2ca6cb;return{..._0x86a0c1,'selector':redactFailureRecord(_0x86a0c1[_0x12b80f(0xfe)]),'before':redactFailureValue(_0x86a0c1[_0x12b80f(0xbd)]),'after':redactFailureValue(_0x86a0c1[_0x12b80f(0xcd)]),'plannedActions':_0x86a0c1[_0x12b80f(0xb3)]?.['map'](_0x287a9b=>({..._0x287a9b,'body':redactFailureRecord(_0x287a9b[_0x12b80f(0x12a)])})),'succeeded':_0x86a0c1[_0x12b80f(0x134)]['map'](redactFailureRecord),'failed':_0x86a0c1[_0x12b80f(0xc6)][_0x12b80f(0xbf)](redactFailureRecord),'verification':_0x86a0c1[_0x12b80f(0x107)]?redactFailureRecord(_0x86a0c1[_0x12b80f(0x107)]):undefined};}function redactFailureRecord(_0x243de3){return redactFailureValue(_0x243de3);}function redactFailureValue(_0x28fa10,_0x51b71f=''){const _0x28fef2=a152_0x2ca6cb,_0x4bb98d=_0x51b71f[_0x28fef2(0x11c)]()[_0x28fef2(0xd6)](/[^a-z0-9]/g,'');if(['cause',_0x28fef2(0xd9),_0x28fef2(0x114),_0x28fef2(0x117)][_0x28fef2(0xea)](_0x4bb98d))return _0x28fef2(0x122);if(Array[_0x28fef2(0x13d)](_0x28fa10))return _0x28fa10['map'](_0x40e591=>redactFailureValue(_0x40e591));if(_0x28fa10&&typeof _0x28fa10===_0x28fef2(0xb9))return Object['fromEntries'](Object[_0x28fef2(0x119)](_0x28fa10)[_0x28fef2(0xbf)](([_0x56bc0f,_0xe10d4d])=>[_0x56bc0f,redactFailureValue(_0xe10d4d,_0x56bc0f)]));return _0x28fa10;}function a152_0x3c07(_0x25c4ac,_0x45c5b9){_0x25c4ac=_0x25c4ac-0xaf;const _0x1a7934=a152_0x1a79();let _0x3c0737=_0x1a7934[_0x25c4ac];return _0x3c0737;}function safeMenuAddError(_0x19df7b){const _0x267a8f=a152_0x2ca6cb,_0x44c9e5=_0x19df7b instanceof CliError?_0x19df7b[_0x267a8f(0xfc)]:_0x267a8f(0xff);switch(_0x44c9e5){case _0x267a8f(0xb2):return menuError(_0x44c9e5,_0x267a8f(0xf1),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.');case _0x267a8f(0xc0):return menuError(_0x44c9e5,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.',_0x267a8f(0xcb));case'menu_create_response_invalid':return menuError(_0x44c9e5,_0x267a8f(0x111),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x267a8f(0xde):return menuError(_0x44c9e5,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_create_recovery_required':return menuError(_0x44c9e5,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x267a8f(0xc5));case'menu_mutation_failed':case'menu_not_found':case _0x267a8f(0xbc):case _0x267a8f(0xc3):case'menu_sort_overflow':return menuError(_0x44c9e5,_0x267a8f(0xbb),_0x267a8f(0x113));default:return menuError(_0x267a8f(0xff),_0x267a8f(0xbb),_0x267a8f(0x113));}}function getFailureRecord(_0x35072a){const _0x31614b=a152_0x2ca6cb;if(!(_0x35072a instanceof Error)||!(_0x31614b(0x140)in _0x35072a))return undefined;const _0x771522=_0x35072a[_0x31614b(0x140)];if(!_0x771522||typeof _0x771522!==_0x31614b(0xb9))return undefined;const _0x444e71=_0x771522[_0x31614b(0xc6)];if(!Array['isArray'](_0x444e71)||!_0x444e71[0x0]||typeof _0x444e71[0x0]!==_0x31614b(0xb9))return undefined;return _0x444e71[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_0x3e7a6e=a153_0x3715;(function(_0xe23a7,_0xc04db5){const _0x5f57d1=a153_0x3715,_0x4eec70=_0xe23a7();while(!![]){try{const _0x3c0a52=parseInt(_0x5f57d1(0x119))/0x1*(parseInt(_0x5f57d1(0x104))/0x2)+-parseInt(_0x5f57d1(0x11a))/0x3+-parseInt(_0x5f57d1(0x118))/0x4+parseInt(_0x5f57d1(0x110))/0x5*(-parseInt(_0x5f57d1(0x10a))/0x6)+-parseInt(_0x5f57d1(0x143))/0x7+-parseInt(_0x5f57d1(0x124))/0x8+parseInt(_0x5f57d1(0x13c))/0x9*(parseInt(_0x5f57d1(0x123))/0xa);if(_0x3c0a52===_0xc04db5)break;else _0x4eec70['push'](_0x4eec70['shift']());}catch(_0x1e42ae){_0x4eec70['push'](_0x4eec70['shift']());}}}(a153_0x6bad,0xc8630));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';function a153_0x6bad(){const _0x3208b2=['menu_external_link_path_missing','Update\x20request\x20for\x20menu\x20','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','7618163miYUjO','parentId',',\x20current\x20','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','visible','requestedUrlObserved','type','Run\x20','cookie','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','28492NDWDgw','failed','menu','flagMissing','unknown','write','30gymvXQ','trim','replace','string','menu_update_recovery_required','\x20URL\x20update\x20did\x20not\x20take\x20effect.','203995PkplKp','/smartapi/menu/update','expect-parent-id','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','\x20direct\x20child\x20menu(s).','snapshot','\x20has\x20','\x20already\x20matches\x20the\x20requested\x20URL.','6298028wWoNEx','114UeAHVy','4866474edLgtz','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','external-link-update','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','update\x20external\x20menu\x20URL','body','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','POST','link','185570hzQPsz','8222152ZFbaKj','Response\x20was\x20lost\x20and\x20menu\x20','childrenCount','\x20has\x20an\x20empty\x20platform\x20path.','label','menu_external_link_type_required','url','Menu\x20','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','Updated\x20external\x20URL\x20for\x20menu\x20','\x20is\x20type\x20\x22','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','expect-url','rabetbase\x20menu\x20list\x20--appcode\x20','update-recovery','get','verification','path','sort','hash','readbackFailed','menu_state_drift','str','2286VHfAMm','\x20--format\x20compress','appCode','update-external-link-url'];a153_0x6bad=function(){return _0x3208b2;};return a153_0x6bad();}const BACKEND=[{'method':'POST','path':a153_0x3e7a6e(0x111)}];export const menuExternalLinkUpdate={'service':a153_0x3e7a6e(0x106),'command':a153_0x3e7a6e(0x11c),'description':a153_0x3e7a6e(0x142),'risk':a153_0x3e7a6e(0x109),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':a153_0x3e7a6e(0x10d),'required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a153_0x3e7a6e(0x131),'type':a153_0x3e7a6e(0x10d),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1ce669){validateInput(_0x1ce669);},async 'dryRun'(_0x103a20){const _0x17dacb=a153_0x3e7a6e;validateInput(_0x103a20);const _0x5d27e1=await buildPlan(_0x103a20,!![]);return menuDryRunResult(_0x5d27e1['plan'],{'method':_0x17dacb(0x121),'url':_0x17dacb(0x111),'body':_0x5d27e1[_0x17dacb(0x11f)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x5d27e1[_0x17dacb(0x11f)]['id']+'.'});},async 'execute'(_0x424f42){const _0x300b1b=a153_0x3e7a6e;validateInput(_0x424f42);const _0x584dc4=await buildPlan(_0x424f42,![]),{plan:_0xa5146,body:_0x7d0cd0,before:_0x220159,noChanges:_0x3fbcc6}=_0x584dc4,_0x2297eb=_0x7d0cd0['id'];if(_0x3fbcc6)return updateSuccess(_0xa5146,_0x584dc4[_0x300b1b(0x115)],_0x220159,!![],![]);await recheckMutationSnapshot(_0x424f42,_0xa5146,'update\x20external\x20menu\x20URL',_0x2297eb);try{await updateMenuEntity(_0x424f42[_0x300b1b(0x13e)],_0x424f42[_0x300b1b(0x102)],{'id':_0x7d0cd0['id'],'url':_0x7d0cd0[_0x300b1b(0x12a)]});}catch(_0x84451d){const _0x1e99ec=mapMenuApiError(_0x84451d,_0x300b1b(0x11e),_0x2297eb);if(isMenuResponseLoss(_0x84451d)&&_0x1e99ec['code']!=='menu_permission_denied')return recoverAfterResponseLoss(_0x424f42,_0x584dc4);throw menuFailure(_0x1e99ec,_0xa5146,{'stage':'update','failed':{'id':_0x2297eb},'warnings':[_0x300b1b(0x130)],'verification':{'status':'failed','targetId':_0x2297eb,'lookupCommand':buildLookupCommand(_0x424f42[_0x300b1b(0x13e)])}});}let _0x4300d3,_0x334456;try{_0x4300d3=await fetchMenuSnapshot(_0x424f42[_0x300b1b(0x13e)],_0x424f42[_0x300b1b(0x102)]),_0x334456=requireMenu(_0x4300d3,_0x2297eb),verifyUpdatedFact(_0x220159,_0x334456,_0x7d0cd0[_0x300b1b(0x12a)]);}catch(_0x38de29){const _0x27059b=describeMenuErrorCause(_0x38de29,'verify\x20external\x20menu\x20URL\x20update',_0x2297eb),_0x595494=asVerificationError(_0x38de29,_0x300b1b(0x141)+_0x2297eb+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x595494,_0xa5146,{'stage':_0x300b1b(0x135),'succeeded':[{'id':_0x2297eb,'updateRequested':!![]}],'failed':{'id':_0x2297eb,'requestedStateConfirmed':![],..._0x27059b},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x300b1b(0x105),'targetId':_0x2297eb,'lookupCommand':buildLookupCommand(_0x424f42['appCode'])}});}return updateSuccess(_0xa5146,_0x4300d3,_0x334456,![],![]);}};function validateInput(_0x243396){const _0x1448a7=a153_0x3e7a6e;validateExactId(_0x243396),requiredUrl(_0x243396,'url'),requiredExpectedUrl(_0x243396),parseParentId(_0x243396,_0x1448a7(0x112),{'required':!![]});}function requiredUrl(_0xf78884,_0x5373b4){const _0x2a01d0=a153_0x3e7a6e;if(!hasFlag(_0xf78884,_0x5373b4)||!_0xf78884[_0x2a01d0(0x13b)](_0x5373b4)[_0x2a01d0(0x10b)]())throw CliErrors[_0x2a01d0(0x107)](_0x5373b4);return validateExternalMenuUrl(_0xf78884[_0x2a01d0(0x13b)](_0x5373b4));}function requiredExpectedUrl(_0x29368f){const _0x33f2f8=a153_0x3e7a6e;if(!hasFlag(_0x29368f,'expect-url')||!_0x29368f[_0x33f2f8(0x13b)](_0x33f2f8(0x131))[_0x33f2f8(0x10b)]())throw CliErrors[_0x33f2f8(0x107)](_0x33f2f8(0x131));return _0x29368f[_0x33f2f8(0x13b)](_0x33f2f8(0x131))[_0x33f2f8(0x10b)]();}async function buildPlan(_0x45d7fd,_0x1fdae1){const _0x309f5d=a153_0x3e7a6e,_0x8af984=validateExactId(_0x45d7fd),_0x37e2fd=requiredUrl(_0x45d7fd,_0x309f5d(0x12a)),_0x4995e7=requiredExpectedUrl(_0x45d7fd),_0x3c4ffa=parseParentId(_0x45d7fd,'expect-parent-id',{'required':!![]}),_0xf782d0=await fetchMutationSnapshot(_0x45d7fd,'update\x20external\x20menu\x20URL',_0x8af984),_0x9b63e0=requireMenu(_0xf782d0,_0x8af984);assertExternalLinkLeaf(_0x9b63e0);if(_0x9b63e0[_0x309f5d(0xfb)]!==_0x3c4ffa)throw menuError('menu_state_drift',_0x309f5d(0x12b)+_0x8af984+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x3c4ffa)+_0x309f5d(0xfc)+formatParent(_0x9b63e0[_0x309f5d(0xfb)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x3c8a1e=_0x9b63e0['url']===_0x37e2fd;if(!_0x3c8a1e&&_0x9b63e0['url']!==_0x4995e7)throw menuError(_0x309f5d(0x13a),_0x309f5d(0x12b)+_0x8af984+_0x309f5d(0x103),_0x309f5d(0x120));const _0x49e549={'id':_0x8af984,'appCode':_0x45d7fd['appCode'],'url':_0x37e2fd},_0x2ef9d4={..._0x9b63e0,'url':_0x37e2fd};return{'body':_0x49e549,'before':_0x9b63e0,'noChanges':_0x3c8a1e,'snapshot':_0xf782d0,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x8af984},'before':_0x9b63e0,'after':_0x2ef9d4,'dryRun':_0x1fdae1,'backend':[...BACKEND],'plannedActions':_0x3c8a1e?[]:[{'stage':_0x309f5d(0x13f),'method':_0x309f5d(0x121),'path':_0x309f5d(0x111),'body':_0x49e549}],'snapshotHash':_0xf782d0[_0x309f5d(0x138)],'warnings':_0x3c8a1e?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function a153_0x3715(_0x53a5a1,_0x4d5c5e){_0x53a5a1=_0x53a5a1-0xfb;const _0x6badf9=a153_0x6bad();let _0x3715eb=_0x6badf9[_0x53a5a1];return _0x3715eb;}function assertExternalLinkLeaf(_0x34e696){const _0x1d5c13=a153_0x3e7a6e;if(_0x34e696['type']!=='iframe'&&_0x34e696['type']!==_0x1d5c13(0x122))throw menuError(_0x1d5c13(0x129),_0x1d5c13(0x12b)+_0x34e696['id']+_0x1d5c13(0x12e)+(_0x34e696[_0x1d5c13(0x100)]||_0x1d5c13(0x108))+'\x22,\x20not\x20iframe\x20or\x20link.',_0x1d5c13(0x11b));if(_0x34e696[_0x1d5c13(0x126)]!==0x0)throw menuError('menu_external_link_not_leaf',_0x1d5c13(0x12b)+_0x34e696['id']+_0x1d5c13(0x116)+_0x34e696[_0x1d5c13(0x126)]+_0x1d5c13(0x114),_0x1d5c13(0xfd));if(!_0x34e696[_0x1d5c13(0x136)]['trim']())throw menuError(_0x1d5c13(0x140),_0x1d5c13(0x12b)+_0x34e696['id']+_0x1d5c13(0x127),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x3aacb6,_0x3357f1,_0x7558e3){const _0x2f4c31=a153_0x3e7a6e;assertExternalLinkLeaf(_0x3357f1);const _0x6bc72c=[['id',_0x3357f1['id'],_0x3aacb6['id']],[_0x2f4c31(0x128),_0x3357f1[_0x2f4c31(0x128)],_0x3aacb6[_0x2f4c31(0x128)]],[_0x2f4c31(0x100),_0x3357f1['type'],_0x3aacb6[_0x2f4c31(0x100)]],[_0x2f4c31(0x136),_0x3357f1[_0x2f4c31(0x136)],_0x3aacb6[_0x2f4c31(0x136)]],[_0x2f4c31(0xfb),_0x3357f1[_0x2f4c31(0xfb)],_0x3aacb6['parentId']],[_0x2f4c31(0x137),_0x3357f1[_0x2f4c31(0x137)],_0x3aacb6[_0x2f4c31(0x137)]],[_0x2f4c31(0xfe),_0x3357f1['visible'],_0x3aacb6[_0x2f4c31(0xfe)]]];for(const [_0x434f1d,_0x4c743c,_0x3f7ee5]of _0x6bc72c){assertVerified(_0x4c743c===_0x3f7ee5,_0x2f4c31(0x12b)+_0x3aacb6['id']+'\x20'+_0x434f1d+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x3357f1['url']===_0x7558e3,_0x2f4c31(0x12b)+_0x3aacb6['id']+_0x2f4c31(0x10f));}function updateSuccess(_0x34261e,_0x3ee602,_0x1dcdb1,_0x4fdf95,_0x2e6c95){const _0x7dcb4f=a153_0x3e7a6e,_0x5c14ff=_0x1dcdb1['id'],_0x27a498=mutationResult({..._0x34261e,'after':_0x1dcdb1,'dryRun':![],'succeeded':[{'id':_0x5c14ff,'updated':!_0x4fdf95,'skipped':_0x4fdf95,'recovered':_0x2e6c95}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x3ee602['hash'],'targetId':_0x5c14ff,'matchesRequestedState':!![],'recovered':_0x2e6c95}});return{'ok':!![],'message':_0x2e6c95?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x5c14ff+'.':_0x4fdf95?_0x7dcb4f(0x12b)+_0x5c14ff+_0x7dcb4f(0x117):_0x7dcb4f(0x12d)+_0x5c14ff+'.','data':{..._0x27a498,'recovered':_0x2e6c95}};}async function recoverAfterResponseLoss(_0x1990e7,_0x1cce19){const _0x2d679f=a153_0x3e7a6e,{plan:_0x82c9f1,before:_0x15a898,body:_0x27f624}=_0x1cce19;let _0x24b44f;try{_0x24b44f=await fetchMenuSnapshot(_0x1990e7[_0x2d679f(0x13e)],_0x1990e7[_0x2d679f(0x102)]);}catch{throw recoveryRequired(_0x82c9f1,_0x1990e7[_0x2d679f(0x13e)],{'id':_0x27f624['id'],'readbackFailed':!![]});}const _0x4c0b2=_0x24b44f['byId'][_0x2d679f(0x134)](_0x27f624['id']);if(!_0x4c0b2||_0x4c0b2[_0x2d679f(0x12a)]!==_0x27f624[_0x2d679f(0x12a)])throw recoveryRequired(_0x82c9f1,_0x1990e7[_0x2d679f(0x13e)],{'id':_0x27f624['id'],'requestedUrlObserved':![],'after':_0x4c0b2??null});try{verifyUpdatedFact(_0x15a898,_0x4c0b2,_0x27f624[_0x2d679f(0x12a)]);}catch(_0xbb2c3f){const _0xa24701=asVerificationError(_0xbb2c3f,_0x2d679f(0x125)+_0x27f624['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0xa24701,_0x82c9f1,{'stage':'update-recovery','succeeded':[{'id':_0x27f624['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x27f624['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x4c0b2,'warnings':[_0x2d679f(0x113)],'verification':{'status':'failed','targetId':_0x27f624['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x1990e7[_0x2d679f(0x13e)])}});}return updateSuccess(_0x82c9f1,_0x24b44f,_0x4c0b2,![],!![]);}function recoveryRequired(_0x51081d,_0x21621a,_0x4acc08){const _0x2f7121=a153_0x3e7a6e,_0x40d736=menuError(_0x2f7121(0x10e),_0x2f7121(0x12f),_0x2f7121(0x101)+buildLookupCommand(_0x21621a)+_0x2f7121(0x11d));return menuFailure(_0x40d736,_0x51081d,{'stage':_0x2f7121(0x133),'failed':{'id':_0x4acc08['id'],..._0x4acc08['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x4acc08[_0x2f7121(0xff)]},..._0x4acc08['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x4acc08['after'],'warnings':[_0x2f7121(0x12c)],'verification':{'status':'failed','targetId':_0x4acc08['id'],..._0x4acc08[_0x2f7121(0xff)]===undefined?{}:{'requestedUrlObserved':_0x4acc08['requestedUrlObserved']},..._0x4acc08[_0x2f7121(0x139)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x21621a)}});}function buildLookupCommand(_0x36c9f6){const _0x2747cc=a153_0x3e7a6e,_0x4c5a68='\x27'+_0x36c9f6[_0x2747cc(0x10c)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x2747cc(0x132)+_0x4c5a68+_0x2747cc(0x13d);}
@@ -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_0x593c4b=a154_0x4fd1;(function(_0x23c91c,_0x33c096){const _0x2b36b0=a154_0x4fd1,_0x266f13=_0x23c91c();while(!![]){try{const _0x147b40=-parseInt(_0x2b36b0(0xe9))/0x1*(-parseInt(_0x2b36b0(0xcb))/0x2)+parseInt(_0x2b36b0(0xe4))/0x3*(parseInt(_0x2b36b0(0xee))/0x4)+parseInt(_0x2b36b0(0xc5))/0x5*(-parseInt(_0x2b36b0(0xf8))/0x6)+-parseInt(_0x2b36b0(0xbe))/0x7+-parseInt(_0x2b36b0(0xfc))/0x8*(parseInt(_0x2b36b0(0xcd))/0x9)+parseInt(_0x2b36b0(0xdb))/0xa+parseInt(_0x2b36b0(0xf7))/0xb*(parseInt(_0x2b36b0(0xd6))/0xc);if(_0x147b40===_0x33c096)break;else _0x266f13['push'](_0x266f13['shift']());}catch(_0x3d9e68){_0x266f13['push'](_0x266f13['shift']());}}}(a154_0x4f6f,0x79911));function a154_0x4f6f(){const _0x2d6a64=['Created\x20menu\x20','\x20is\x20not\x20visible.','parentId','sort','Created\x20menu\x20folder\x20','72168Xhowlu','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','Folder\x20','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','string','2368870qnYHZt','\x22\x20with\x20a\x20platform-generated\x20path.','create-response-validation','isSafeInteger','menu_create_response_invalid','type','create-folder','Would\x20create\x20empty\x20folder\x20\x22','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','363yndyNK','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','flagMissing','Created\x20folder\x20','verification','1AVuzyS','create\x20folder','trim','childrenCount','rabetbase\x20menu\x20list\x20--format\x20json','10956YGewIP','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','parent-id','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x20is\x20missing\x20from\x20menu\x20list.','\x20has\x20an\x20unexpected\x20sort.','label','root','\x20has\x20unexpected\x20parent\x20','616PPqGIQ','6888zZLjYM','menu','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20is\x20not\x20type\x20folder.','1864lsLCGe','hash','\x20unexpectedly\x20owns\x20a\x20page.','path','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20is\x20not\x20empty.','Menu\x20create\x20response\x20for\x20folder\x20','\x20has\x20resources.','resources','<platform-generated>','depth','2990505PovSGA','failed','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','POST','cookie',';\x20verify\x20it\x20before\x20retrying.','write','1325JfqrvT','stringify','\x20has\x20an\x20unexpected\x20label.','after','get','/smartapi/menu/create','872710exNdwm','Folder\x20label','4329VarQIE','\x20may\x20exist\x20online\x20at\x20path\x20','folder','verify\x20folder\x20creation'];a154_0x4f6f=function(){return _0x2d6a64;};return a154_0x4f6f();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a154_0x4fd1(_0x598548,_0x24f16c){_0x598548=_0x598548-0xb5;const _0x4f6f89=a154_0x4f6f();let _0x4fd17e=_0x4f6f89[_0x598548];return _0x4fd17e;}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_0x593c4b(0xc1),'path':'/smartapi/menu/create'}];export const menuGroupCreate={'service':a154_0x593c4b(0xf9),'command':'group-create','description':a154_0x593c4b(0xef),'risk':a154_0x593c4b(0xc4),'structuredErrors':!![],'flags':[{'name':a154_0x593c4b(0xf4),'type':a154_0x593c4b(0xda),'required':!![],'description':a154_0x593c4b(0xcc)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x492704){validateCreateInput(_0x492704);},async 'dryRun'(_0x362316){const _0x34c25e=a154_0x593c4b,_0x238036=await buildCreatePlan(_0x362316,!![]),_0xebe4bf=_0x238036[_0x34c25e(0xc8)];return menuDryRunResult(_0x238036,{'method':_0x34c25e(0xc1),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0xebe4bf[_0x34c25e(0xd3)]),'label':_0xebe4bf[_0x34c25e(0xf4)],'type':_0x34c25e(0xcf),'visible':!![],'sort':_0xebe4bf[_0x34c25e(0xd4)],'extend':{}},'description':_0x34c25e(0xe2)+String(_0xebe4bf[_0x34c25e(0xf4)])+_0x34c25e(0xdc)});},async 'execute'(_0x33fa18){const _0x18fa5c=a154_0x593c4b;validateCreateInput(_0x33fa18);const _0x253ed7=await buildCreatePlan(_0x33fa18,![]),_0xc1a286=_0x253ed7['after'];await recheckMutationSnapshot(_0x33fa18,_0x253ed7,'create\x20folder');let _0x4946fc;try{_0x4946fc=await createMenuEntity(_0x33fa18['appCode'],_0x33fa18[_0x18fa5c(0xc2)],{'parentId':toApiParentId(_0xc1a286[_0x18fa5c(0xd3)]),'label':String(_0xc1a286[_0x18fa5c(0xf4)]),'type':_0x18fa5c(0xcf),'visible':!![],'sort':Number(_0xc1a286[_0x18fa5c(0xd4)]),'extend':{}});}catch(_0x38d015){const _0x314e8e=mapMenuApiError(_0x38d015,_0x18fa5c(0xea));throw menuFailure(_0x314e8e,_0x253ed7,{'stage':'create','failed':{}});}const _0x4d3167=Number(_0x4946fc['id']);if(!Number[_0x18fa5c(0xde)](_0x4d3167)||_0x4d3167<=0x0){const _0x3d1dc9=menuError(_0x18fa5c(0xdf),_0x18fa5c(0xe3),_0x18fa5c(0xfa));throw menuFailure(_0x3d1dc9,_0x253ed7,{'stage':_0x18fa5c(0xdd),'failed':{'createdId':_0x4946fc['id']??null},'warnings':[_0x18fa5c(0xf1)],'verification':{'status':_0x18fa5c(0xbf),'lookupCommand':_0x18fa5c(0xed)}});}const _0x5a4a6d=typeof _0x4946fc[_0x18fa5c(0xb6)]===_0x18fa5c(0xda)?_0x4946fc[_0x18fa5c(0xb6)]:'';if(!_0x5a4a6d[_0x18fa5c(0xeb)]()){const _0x5c55bf=menuError(_0x18fa5c(0xdf),_0x18fa5c(0xb9)+_0x4d3167+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x18fa5c(0xe5));throw menuFailure(_0x5c55bf,_0x253ed7,{'stage':_0x18fa5c(0xdd),'succeeded':[{'id':_0x4d3167,'created':!![]}],'failed':{'id':_0x4d3167,'generatedPathConfirmed':![]},'warnings':[_0x18fa5c(0xd8)+_0x4d3167+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0xc1a286,'id':_0x4d3167,'path':_0x5a4a6d},'verification':{'status':_0x18fa5c(0xbf),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x4d3167}});}let _0x15907d;try{_0x15907d=await fetchMenuSnapshot(_0x33fa18['appCode'],_0x33fa18[_0x18fa5c(0xc2)]);}catch(_0x4c97da){const _0x42d6ed=describeMenuErrorCause(_0x4c97da,_0x18fa5c(0xd0),_0x4d3167),_0x384fa0=asVerificationError(_0x4c97da,_0x18fa5c(0xd8)+_0x4d3167+_0x18fa5c(0xc0));throw menuFailure(_0x384fa0,_0x253ed7,{'stage':'verification','succeeded':[{'id':_0x4d3167,'created':!![],'path':_0x5a4a6d}],'failed':{'id':_0x4d3167,'finalFactsConfirmed':![],..._0x42d6ed},'warnings':[_0x18fa5c(0xd8)+_0x4d3167+_0x18fa5c(0xce)+JSON[_0x18fa5c(0xc6)](_0x5a4a6d)+_0x18fa5c(0xc3)],'after':{..._0xc1a286,'id':_0x4d3167,'path':_0x5a4a6d},'verification':{'status':_0x18fa5c(0xbf),'lookupCommand':_0x18fa5c(0xed),'targetId':_0x4d3167}});}const _0x5b086e=_0x15907d['byId'][_0x18fa5c(0xc9)](_0x4d3167);let _0x2da8a4;try{assertVerified(Boolean(_0x5b086e),_0x18fa5c(0xe7)+_0x4d3167+_0x18fa5c(0xf2)),_0x2da8a4=_0x5b086e,assertVerified(_0x2da8a4[_0x18fa5c(0xe0)]===_0x18fa5c(0xcf),_0x18fa5c(0xd1)+_0x4d3167+_0x18fa5c(0xfb)),assertVerified(_0x2da8a4[_0x18fa5c(0xf4)]===_0xc1a286['label'],'Created\x20folder\x20'+_0x4d3167+_0x18fa5c(0xc7)),assertVerified(_0x2da8a4[_0x18fa5c(0xb6)]===_0x5a4a6d&&Boolean(_0x2da8a4[_0x18fa5c(0xb6)][_0x18fa5c(0xeb)]()),_0x18fa5c(0xe7)+_0x4d3167+_0x18fa5c(0xb7)),assertVerified(_0x2da8a4['visible']===!![],_0x18fa5c(0xe7)+_0x4d3167+_0x18fa5c(0xd2)),assertVerified(_0x2da8a4[_0x18fa5c(0xbb)]['length']===0x0,_0x18fa5c(0xe7)+_0x4d3167+_0x18fa5c(0xba)),assertVerified(_0x2da8a4[_0x18fa5c(0xec)]===0x0,_0x18fa5c(0xe7)+_0x4d3167+_0x18fa5c(0xb8)),assertVerified(_0x2da8a4[_0x18fa5c(0xd4)]===_0xc1a286[_0x18fa5c(0xd4)],'Created\x20folder\x20'+_0x4d3167+_0x18fa5c(0xf3)),assertVerified(_0x2da8a4[_0x18fa5c(0xd3)]===_0xc1a286[_0x18fa5c(0xd3)],_0x18fa5c(0xe7)+_0x4d3167+_0x18fa5c(0xf6)+(_0x2da8a4[_0x18fa5c(0xd3)]??_0x18fa5c(0xf5))+'.'),assertVerified(_0x2da8a4['pageId']==null,'Created\x20folder\x20'+_0x4d3167+_0x18fa5c(0xb5));const _0xd8e65d=_0x2da8a4[_0x18fa5c(0xd3)]==null?undefined:requireFolder(_0x15907d,_0x2da8a4[_0x18fa5c(0xd3)]);assertVerified(_0x2da8a4[_0x18fa5c(0xbd)]===(_0xd8e65d?_0xd8e65d[_0x18fa5c(0xbd)]+0x1:0x0),_0x18fa5c(0xe7)+_0x4d3167+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x98f88){const _0x5d6b37=describeMenuErrorCause(_0x98f88,'verify\x20folder\x20creation',_0x4d3167),_0x41484e=asVerificationError(_0x98f88,_0x18fa5c(0xd8)+_0x4d3167+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0x41484e,_0x253ed7,{'stage':_0x18fa5c(0xe8),'succeeded':[{'id':_0x4d3167,'created':!![],'path':_0x5a4a6d}],'failed':{'id':_0x4d3167,'finalFactsConfirmed':![],..._0x5d6b37},'warnings':['Folder\x20'+_0x4d3167+_0x18fa5c(0xd7)],'after':_0x5b086e??{..._0xc1a286,'id':_0x4d3167,'path':_0x5a4a6d},'verification':{'status':'failed','lookupCommand':_0x18fa5c(0xed),'targetId':_0x4d3167}});}const _0x7fa7a1=mutationResult({..._0x253ed7,'after':_0x2da8a4,'dryRun':![],'succeeded':[{'id':_0x4d3167,'type':_0x18fa5c(0xcf),'path':_0x5a4a6d}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x15907d['hash'],'folder':!![],'path':_0x5a4a6d,'emptyResources':!![]}});return{'ok':!![],'data':_0x7fa7a1,'message':_0x18fa5c(0xd5)+_0x4d3167+'.'};}};function validateCreateInput(_0x1b9bf1){const _0x13cb63=a154_0x593c4b,_0x45a366=_0x1b9bf1['str'](_0x13cb63(0xf4))['trim']();if(!_0x45a366)throw CliErrors[_0x13cb63(0xe6)]('label');parseParentId(_0x1b9bf1,_0x13cb63(0xf0)),validateSort(_0x1b9bf1);}async function buildCreatePlan(_0x244d15,_0x649ec2){const _0x3454bc=a154_0x593c4b,_0x48ab9e=await fetchMutationSnapshot(_0x244d15,_0x3454bc(0xea)),_0x547990=parseParentId(_0x244d15,_0x3454bc(0xf0))??null;if(_0x547990!=null)requireFolder(_0x48ab9e,_0x547990);const _0x48ef3f=validateSort(_0x244d15),_0x216e94=_0x48ef3f??nextSiblingSort(_0x48ab9e,_0x547990,_0x3454bc(0xcf)),_0x3433ae=_0x244d15['str'](_0x3454bc(0xf4))[_0x3454bc(0xeb)]();return mutationResult({'operation':'group-create','selector':{'label':_0x3433ae,'parentId':_0x547990},'before':null,'after':{'id':null,'parentId':_0x547990,'label':_0x3433ae,'path':_0x3454bc(0xbc),'type':_0x3454bc(0xcf),'visible':!![],'sort':_0x216e94,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x649ec2,'backend':[...BACKEND],'plannedActions':[{'stage':_0x3454bc(0xe1),'method':_0x3454bc(0xc1),'path':_0x3454bc(0xca),'body':{'parentId':toApiParentId(_0x547990),'label':_0x3433ae,'type':'folder','visible':!![],'sort':_0x216e94,'extend':{}}}],'snapshotHash':_0x48ab9e[_0x3454bc(0xfd)],'warnings':[_0x3454bc(0xd9)]});}
@@ -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_0x5a54f3=a155_0x34e0;(function(_0xf6785,_0xe06c96){const _0x400ee7=a155_0x34e0,_0x663f4=_0xf6785();while(!![]){try{const _0x32f34a=parseInt(_0x400ee7(0x84))/0x1+-parseInt(_0x400ee7(0xa4))/0x2*(-parseInt(_0x400ee7(0xa8))/0x3)+parseInt(_0x400ee7(0x94))/0x4*(-parseInt(_0x400ee7(0x9e))/0x5)+-parseInt(_0x400ee7(0xa6))/0x6+-parseInt(_0x400ee7(0xac))/0x7*(-parseInt(_0x400ee7(0x8e))/0x8)+-parseInt(_0x400ee7(0xb3))/0x9+-parseInt(_0x400ee7(0x90))/0xa*(parseInt(_0x400ee7(0x9f))/0xb);if(_0x32f34a===_0xe06c96)break;else _0x663f4['push'](_0x663f4['shift']());}catch(_0x33b955){_0x663f4['push'](_0x663f4['shift']());}}}(a155_0x37b7,0xdc18c));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a155_0x34e0(_0x37851f,_0x28f4be){_0x37851f=_0x37851f-0x83;const _0x37b76f=a155_0x37b7();let _0x34e053=_0x37b76f[_0x37851f];return _0x34e053;}function a155_0x37b7(){const _0x5a7d3e=['15605fqaRyW','11INNZiq','hash','menu\x20list','string','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','2486802rqsfVX','Would\x20update\x20folder\x20','5091276wZVMVt','No\x20online\x20fields\x20would\x20change.','3kXPRzE','validation','--label\x20cannot\x20be\x20empty.','verification','11662OVZaSj','str','\x20sort\x20update\x20did\x20not\x20take\x20effect.','selector','appCode','type','\x20label\x20update\x20did\x20not\x20take\x20effect.','12710493mtIZuQ','Folder\x20','New\x20folder\x20label','1792512GOITFl','/smartapi/menu/update','POST','\x20is\x20no\x20longer\x20type\x20folder.','cookie','verify\x20folder\x20update','parentId','sort','\x20already\x20matches\x20the\x20requested\x20state.','label','8656XBgFAP','write','4621170RFuPtv','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','1556JAIgZT','Menu\x20','update','update\x20folder','group-update','folder','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','trim','Updated\x20folder\x20','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.'];a155_0x37b7=function(){return _0x5a7d3e;};return a155_0x37b7();}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_0x5a54f3(0x86),'path':a155_0x5a54f3(0x85)}];export const menuGroupUpdate={'service':'menu','command':'group-update','description':a155_0x5a54f3(0x92),'risk':a155_0x5a54f3(0x8f),'structuredErrors':!![],'rejectedFlags':[{'name':'parent-id','message':'Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a155_0x5a54f3(0x8d),'type':a155_0x5a54f3(0xa2),'description':a155_0x5a54f3(0x83)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xba7e5b){validateUpdateInput(_0xba7e5b);},async 'dryRun'(_0x2778f2){const _0x124f1a=a155_0x5a54f3;validateUpdateInput(_0x2778f2);const {plan:_0x299831,patch:_0x1d0f83}=await buildUpdatePlan(_0x2778f2,!![]);return menuDryRunResult(_0x299831,{'method':'POST','url':_0x124f1a(0x85),'body':_0x1d0f83,'description':_0x124f1a(0xa5)+_0x299831[_0x124f1a(0xaf)]['id']+'.'});},async 'execute'(_0x36195f){const _0x3b0f68=a155_0x5a54f3;validateUpdateInput(_0x36195f);const {plan:_0xa58e91,patch:_0x1cb384,noChanges:_0x424d2d}=await buildUpdatePlan(_0x36195f,![]),_0x1720ab=Number(_0xa58e91['selector']['id']),_0x2f0102=await recheckMutationSnapshot(_0x36195f,_0xa58e91,'update\x20folder',_0x1720ab);if(!_0x424d2d)try{await updateMenuEntity(_0x36195f[_0x3b0f68(0xb0)],_0x36195f[_0x3b0f68(0x88)],_0x1cb384);}catch(_0x199bdc){const _0x35bad9=mapMenuApiError(_0x199bdc,_0x3b0f68(0x97),_0x1720ab);throw menuFailure(_0x35bad9,_0xa58e91,{'stage':_0x3b0f68(0x96),'failed':{'id':_0x1720ab}});}let _0x16a0e5=_0x2f0102,_0x2118f2;try{!_0x424d2d&&(_0x16a0e5=await fetchMenuSnapshot(_0x36195f[_0x3b0f68(0xb0)],_0x36195f[_0x3b0f68(0x88)])),_0x2118f2=requireMenu(_0x16a0e5,_0x1720ab),verifyPatch(_0x2118f2,_0x1cb384),_0x2118f2[_0x3b0f68(0x8a)]!=null&&requireFolder(_0x16a0e5,_0x2118f2[_0x3b0f68(0x8a)]);}catch(_0x444a14){const _0x11b3a0=describeMenuErrorCause(_0x444a14,_0x3b0f68(0x89),_0x1720ab),_0x16494c=asVerificationError(_0x444a14,'Update\x20request\x20for\x20folder\x20'+_0x1720ab+_0x3b0f68(0x9a));throw menuFailure(_0x16494c,_0xa58e91,{'stage':_0x3b0f68(0xab),'succeeded':[{'id':_0x1720ab,'updateRequested':!_0x424d2d,'skipped':_0x424d2d}],'failed':{'id':_0x1720ab,'requestedStateConfirmed':![],..._0x11b3a0},'warnings':[_0x3b0f68(0x91)],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x1720ab}});}const _0x401981=mutationResult({..._0xa58e91,'after':_0x2118f2,'dryRun':![],'succeeded':[{'id':_0x1720ab,'updated':!_0x424d2d,'skipped':_0x424d2d}],'verification':{'checkedBy':_0x3b0f68(0xa1),'snapshotHash':_0x16a0e5[_0x3b0f68(0xa0)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x401981,'message':_0x424d2d?'Folder\x20'+_0x1720ab+_0x3b0f68(0x8c):_0x3b0f68(0x9c)+_0x1720ab+'.'};}};function validateUpdateInput(_0x3fe242){const _0x29c9f8=a155_0x5a54f3;validateExactId(_0x3fe242);if(hasFlag(_0x3fe242,'parent-id'))throw CliErrors[_0x29c9f8(0xa9)]('Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.',_0x29c9f8(0x93));if(!hasFlag(_0x3fe242,_0x29c9f8(0x8d))&&!hasFlag(_0x3fe242,'sort'))throw CliErrors[_0x29c9f8(0xa9)](_0x29c9f8(0x9d));if(hasFlag(_0x3fe242,'label')&&!_0x3fe242['str'](_0x29c9f8(0x8d))[_0x29c9f8(0x9b)]())throw CliErrors[_0x29c9f8(0xa9)](_0x29c9f8(0xaa));validateSort(_0x3fe242);}async function buildUpdatePlan(_0x2c3b72,_0xacf67c){const _0x1b5933=a155_0x5a54f3,_0x368558=validateExactId(_0x2c3b72),_0x2731e1=await fetchMutationSnapshot(_0x2c3b72,_0x1b5933(0x97),_0x368558),_0x2ca95d=requireMenu(_0x2731e1,_0x368558);if(_0x2ca95d[_0x1b5933(0xb1)]!==_0x1b5933(0x99))throw menuError('menu_not_folder',_0x1b5933(0x95)+_0x368558+'\x20is\x20type\x20\x22'+(_0x2ca95d[_0x1b5933(0xb1)]||'unknown')+'\x22,\x20not\x20folder.',_0x1b5933(0xa3));assertExpectedState(_0x2c3b72,_0x2ca95d);const _0x3909b1={'id':_0x368558},_0x1a833e={..._0x2ca95d};if(hasFlag(_0x2c3b72,_0x1b5933(0x8d))){const _0xc4dd79=_0x2c3b72[_0x1b5933(0xad)](_0x1b5933(0x8d))[_0x1b5933(0x9b)]();_0x3909b1['label']=_0xc4dd79,_0x1a833e[_0x1b5933(0x8d)]=_0xc4dd79;}if(hasFlag(_0x2c3b72,'sort')){const _0xb81df3=validateSort(_0x2c3b72);_0x3909b1[_0x1b5933(0x8b)]=_0xb81df3,_0x1a833e['sort']=_0xb81df3;}const _0x265af3=sameRequestedState(_0x2ca95d,_0x1a833e),_0x2ab49d=_0x265af3?[_0x1b5933(0xa7)]:[];return{'patch':_0x3909b1,'noChanges':_0x265af3,'plan':mutationResult({'operation':_0x1b5933(0x98),'selector':{'id':_0x368558},'before':_0x2ca95d,'after':_0x1a833e,'dryRun':_0xacf67c,'backend':[...BACKEND],'snapshotHash':_0x2731e1[_0x1b5933(0xa0)],'warnings':_0x2ab49d})};}function sameRequestedState(_0x2d7398,_0x4a65b1){const _0x20760c=a155_0x5a54f3;return _0x2d7398[_0x20760c(0x8d)]===_0x4a65b1[_0x20760c(0x8d)]&&_0x2d7398[_0x20760c(0x8b)]===_0x4a65b1[_0x20760c(0x8b)];}function verifyPatch(_0x422960,_0x54a7cd){const _0xc88ed2=a155_0x5a54f3;assertVerified(_0x422960['type']===_0xc88ed2(0x99),_0xc88ed2(0x95)+_0x422960['id']+_0xc88ed2(0x87)),_0x54a7cd[_0xc88ed2(0x8d)]!==undefined&&assertVerified(_0x422960[_0xc88ed2(0x8d)]===_0x54a7cd[_0xc88ed2(0x8d)],_0xc88ed2(0xb4)+_0x422960['id']+_0xc88ed2(0xb2)),_0x54a7cd[_0xc88ed2(0x8b)]!==undefined&&assertVerified(_0x422960['sort']===_0x54a7cd[_0xc88ed2(0x8b)],_0xc88ed2(0xb4)+_0x422960['id']+_0xc88ed2(0xae));}
@@ -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 a156_0x461a(_0x500b8d,_0x349be8){_0x500b8d=_0x500b8d-0x122;const _0x270da3=a156_0x270d();let _0x461a37=_0x270da3[_0x500b8d];return _0x461a37;}(function(_0x13514e,_0x53da75){const _0x20edce=a156_0x461a,_0x10eef2=_0x13514e();while(!![]){try{const _0x3daa4d=-parseInt(_0x20edce(0x122))/0x1+parseInt(_0x20edce(0x12a))/0x2*(parseInt(_0x20edce(0x128))/0x3)+parseInt(_0x20edce(0x127))/0x4+-parseInt(_0x20edce(0x12b))/0x5*(parseInt(_0x20edce(0x124))/0x6)+-parseInt(_0x20edce(0x125))/0x7*(parseInt(_0x20edce(0x126))/0x8)+parseInt(_0x20edce(0x129))/0x9+-parseInt(_0x20edce(0x123))/0xa*(-parseInt(_0x20edce(0x12c))/0xb);if(_0x3daa4d===_0x53da75)break;else _0x10eef2['push'](_0x10eef2['shift']());}catch(_0x47082f){_0x10eef2['push'](_0x10eef2['shift']());}}}(a156_0x270d,0xcb33c));import{menuList}from'../../commands/menu/list.js';function a156_0x270d(){const _0x21461f=['2410328SwmSrb','1951405ZMIPdC','691394jXEsZd','1214590mqqJNP','400BVDcZP','18WwgsKJ','5831TyDQor','11696qhmfAX','935912reKfSV','3jXxrFd','4340637vDnjgh'];a156_0x270d=function(){return _0x21461f;};return a156_0x270d();}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';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 +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_0x8eec50=a157_0xcb21;(function(_0x58fab4,_0x16f4d7){const _0x4668f0=a157_0xcb21,_0x10475d=_0x58fab4();while(!![]){try{const _0x3e4a33=-parseInt(_0x4668f0(0x10e))/0x1*(parseInt(_0x4668f0(0x10a))/0x2)+-parseInt(_0x4668f0(0x108))/0x3*(parseInt(_0x4668f0(0x111))/0x4)+parseInt(_0x4668f0(0x11a))/0x5+parseInt(_0x4668f0(0x11c))/0x6*(-parseInt(_0x4668f0(0x105))/0x7)+-parseInt(_0x4668f0(0x107))/0x8*(parseInt(_0x4668f0(0x114))/0x9)+parseInt(_0x4668f0(0x117))/0xa+parseInt(_0x4668f0(0x10b))/0xb*(parseInt(_0x4668f0(0x112))/0xc);if(_0x3e4a33===_0x16f4d7)break;else _0x10475d['push'](_0x10475d['shift']());}catch(_0x163c09){_0x10475d['push'](_0x10475d['shift']());}}}(a157_0x4fdb,0x3b6bf));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a157_0xcb21(_0x4dc624,_0x5a50d0){_0x4dc624=_0x4dc624-0x105;const _0x4fdb4d=a157_0x4fdb();let _0xcb2142=_0x4fdb4d[_0x4dc624];return _0xcb2142;}function a157_0x4fdb(){const _0x4a6ee9=['Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','3166500Iquwso','total','menu','111245BvpCXV','cookie','6zcTPQt','Found\x20','menus','720069JfkekQ','list','500728HoGjpX','1401lAHhHd','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','145048smGQcG','1846548wHESkv','verbose','No\x20menus\x20found.','5QJRtJz','hash','bool','2948cjEUdE','60zxgTzz','boolean','18mfQnHL','map'];a157_0x4fdb=function(){return _0x4a6ee9;};return a157_0x4fdb();}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a157_0x8eec50(0x119),'command':a157_0x8eec50(0x106),'description':a157_0x8eec50(0x109),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a157_0x8eec50(0x10c),'type':a157_0x8eec50(0x113),'description':a157_0x8eec50(0x116)}],async 'execute'(_0x8b9255){const _0xc61874=a157_0x8eec50,_0x5776f9=_0x8b9255[_0xc61874(0x110)](_0xc61874(0x10c)),_0x3ce2eb=await fetchMenuSnapshot(_0x8b9255['appCode'],_0x8b9255[_0xc61874(0x11b)],{'verbose':_0x5776f9});return{'ok':!![],'data':{'total':_0x3ce2eb[_0xc61874(0x118)],'snapshotHash':_0x3ce2eb[_0xc61874(0x10f)],'menus':_0x3ce2eb[_0xc61874(0x11e)][_0xc61874(0x115)](toMenuListItem)},'message':_0x3ce2eb[_0xc61874(0x118)]===0x0?_0xc61874(0x10d):_0xc61874(0x11d)+_0x3ce2eb[_0xc61874(0x118)]+'\x20menu(s)'};}};
@@ -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_0x571f33=a158_0x40a5;(function(_0xea4738,_0x176bde){const _0x116621=a158_0x40a5,_0x27d761=_0xea4738();while(!![]){try{const _0xc40613=-parseInt(_0x116621(0xd8))/0x1*(-parseInt(_0x116621(0xde))/0x2)+parseInt(_0x116621(0xd3))/0x3+parseInt(_0x116621(0xe4))/0x4*(parseInt(_0x116621(0xe3))/0x5)+parseInt(_0x116621(0xd9))/0x6+-parseInt(_0x116621(0xee))/0x7*(-parseInt(_0x116621(0xcf))/0x8)+parseInt(_0x116621(0xdb))/0x9*(parseInt(_0x116621(0xe2))/0xa)+-parseInt(_0x116621(0xdd))/0xb*(parseInt(_0x116621(0xda))/0xc);if(_0xc40613===_0x176bde)break;else _0x27d761['push'](_0x27d761['shift']());}catch(_0x9b3a26){_0x27d761['push'](_0x27d761['shift']());}}}(a158_0x7445,0xcac38));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_0x571f33(0xd0),'path':a158_0x571f33(0xcd)}];export const menuMove={'service':'menu','command':'move','description':a158_0x571f33(0xd7),'risk':a158_0x571f33(0xef),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2709bd){validateMoveInput(_0x2709bd);},async 'dryRun'(_0x281114){const _0x500a39=a158_0x571f33,{plan:_0x2f538c,patch:_0x3602fa}=await buildMovePlan(_0x281114,!![]);return menuDryRunResult(_0x2f538c,{'method':_0x500a39(0xd0),'url':_0x500a39(0xcd),'body':{..._0x3602fa,'appCode':_0x281114['appCode']},'description':_0x500a39(0xd1)+_0x3602fa['id']+'.'});},async 'execute'(_0x310c8a){const _0xec6caa=a158_0x571f33;validateMoveInput(_0x310c8a);const {plan:_0x15b39b,patch:_0x3244af,noChanges:_0x22ff79,snapshot:_0x3bfa68}=await buildMovePlan(_0x310c8a,![]),_0xb8a12f=_0x3244af['id'];if(!_0x22ff79)try{await updateMenuEntity(_0x310c8a[_0xec6caa(0xe5)],_0x310c8a[_0xec6caa(0xc3)],_0x3244af);}catch(_0x302bb8){const _0x560048=mapMenuApiError(_0x302bb8,_0xec6caa(0xe1),_0xb8a12f);throw menuFailure(_0x560048,_0x15b39b,{'stage':'update','failed':{'id':_0xb8a12f},'warnings':['The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0xec6caa(0xe8),'targetId':_0xb8a12f,'lookupCommand':_0xec6caa(0xec)}});}let _0x3fe378,_0x28588b;try{_0x3fe378=_0x22ff79?_0x3bfa68:await fetchMenuSnapshot(_0x310c8a[_0xec6caa(0xe5)],_0x310c8a[_0xec6caa(0xc3)]),_0x28588b=requireMenu(_0x3fe378,_0xb8a12f),verifyMove(_0x28588b,_0x15b39b['after']),_0x28588b[_0xec6caa(0xd4)]!==null&&requireFolder(_0x3fe378,_0x28588b[_0xec6caa(0xd4)]);}catch(_0x28df43){const _0x43e215=describeMenuErrorCause(_0x28df43,_0xec6caa(0xc6),_0xb8a12f),_0xc9216e=asVerificationError(_0x28df43,_0xec6caa(0xc9)+_0xb8a12f+_0xec6caa(0xe0));throw menuFailure(_0xc9216e,_0x15b39b,{'stage':_0xec6caa(0xca),'succeeded':[{'id':_0xb8a12f,'updateRequested':!_0x22ff79,'skipped':_0x22ff79}],'failed':{'id':_0xb8a12f,'requestedStateConfirmed':![],..._0x43e215},'warnings':[_0xec6caa(0xce)],'verification':{'status':_0xec6caa(0xe8),'targetId':_0xb8a12f,'lookupCommand':_0xec6caa(0xec)}});}const _0x5cf4ee=mutationResult({..._0x15b39b,'after':_0x28588b,'dryRun':![],'succeeded':[{'id':_0xb8a12f,'updated':!_0x22ff79,'skipped':_0x22ff79}],'verification':{'checkedBy':_0xec6caa(0xc2),'snapshotHash':_0x3fe378[_0xec6caa(0xc1)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x5cf4ee,'message':_0x22ff79?_0xec6caa(0xdf)+_0xb8a12f+_0xec6caa(0xc4):_0xec6caa(0xc8)+_0xb8a12f+'.'};}};function validateMoveInput(_0x21ba96){const _0x36e7ee=a158_0x571f33;validateExactId(_0x21ba96),parseParentId(_0x21ba96,_0x36e7ee(0xe6),{'required':!![]}),parseParentId(_0x21ba96,_0x36e7ee(0xea),{'required':!![]}),validateSort(_0x21ba96);}async function buildMovePlan(_0x376775,_0xd80caf){const _0x44ec00=a158_0x571f33,_0x53019f=validateExactId(_0x376775),_0x1747d4=parseParentId(_0x376775,_0x44ec00(0xe6),{'required':!![]}),_0xa9f0e0=parseParentId(_0x376775,_0x44ec00(0xea),{'required':!![]}),_0x3ab69c=validateSort(_0x376775),_0x2db627=await fetchMutationSnapshot(_0x376775,_0x44ec00(0xc7),_0x53019f),_0x12f95d=requireMenu(_0x2db627,_0x53019f);if(_0x12f95d[_0x44ec00(0xe7)]===_0x44ec00(0xd6)||_0x12f95d[_0x44ec00(0xed)]!==0x0)throw menuError(_0x44ec00(0xe9),_0x44ec00(0xdf)+_0x53019f+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.');if(_0x12f95d[_0x44ec00(0xd4)]!==_0xa9f0e0)throw menuError(_0x44ec00(0xdc),'Menu\x20'+_0x53019f+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0xa9f0e0)+',\x20current\x20'+formatParent(_0x12f95d[_0x44ec00(0xd4)])+'.',_0x44ec00(0xc5));_0x1747d4!==null&&requireFolder(_0x2db627,_0x1747d4);const _0x41a3f2=_0x3ab69c??(_0x12f95d[_0x44ec00(0xd4)]===_0x1747d4?_0x12f95d['sort']??0x0:nextSiblingSort(_0x2db627,_0x1747d4,_0x44ec00(0xd5))),_0xd55162={..._0x12f95d,'parentId':_0x1747d4,'sort':_0x41a3f2},_0x4ae5dc={'id':_0x53019f,'parentId':toApiParentId(_0x1747d4),'sort':_0x41a3f2},_0x593273=_0x12f95d[_0x44ec00(0xd4)]===_0x1747d4&&_0x12f95d[_0x44ec00(0xeb)]===_0x41a3f2;return{'patch':_0x4ae5dc,'noChanges':_0x593273,'snapshot':_0x2db627,'plan':mutationResult({'operation':_0x44ec00(0xe1),'selector':{'id':_0x53019f,'parentId':_0x1747d4},'before':_0x12f95d,'after':_0xd55162,'dryRun':_0xd80caf,'backend':[...BACKEND],'plannedActions':[{'stage':_0x44ec00(0xcb),'method':_0x44ec00(0xd0),'path':_0x44ec00(0xcd),'body':{..._0x4ae5dc,'appCode':_0x376775['appCode']}}],'snapshotHash':_0x2db627[_0x44ec00(0xc1)],'warnings':_0x593273?['Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.']:[]})};}function a158_0x7445(){const _0x54847b=['menu\x20list','cookie','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','verify\x20menu\x20move','move\x20menu','Moved\x20menu\x20','Move\x20request\x20for\x20menu\x20','verification','move-menu','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','/smartapi/menu/update','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','1297616FtLXTs','POST','Would\x20move\x20menu\x20','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','985197rTUCIR','parentId','menu','folder','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','31755gxuYQf','7328562vEHiWs','24GSUPUL','7767OmbQvm','menu_state_drift','20093458TJzelo','10PXdPWV','Menu\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','move','18710KzVJrF','800mdyaXO','24960hNTVPv','appCode','parent-id','type','failed','menu_move_source_not_leaf','expect-parent-id','sort','rabetbase\x20menu\x20list\x20--format\x20compress','childrenCount','7aVSutt','write','hash'];a158_0x7445=function(){return _0x54847b;};return a158_0x7445();}function a158_0x40a5(_0x3f630e,_0x21f701){_0x3f630e=_0x3f630e-0xc1;const _0x74457d=a158_0x7445();let _0x40a585=_0x74457d[_0x3f630e];return _0x40a585;}function verifyMove(_0x460f1a,_0x3cbf9b){const _0x269a33=a158_0x571f33;assertVerified(_0x460f1a['type']!==_0x269a33(0xd6),_0x269a33(0xdf)+_0x460f1a['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x460f1a[_0x269a33(0xed)]===0x0,_0x269a33(0xdf)+_0x460f1a['id']+'\x20is\x20no\x20longer\x20a\x20leaf.'),assertVerified(_0x460f1a[_0x269a33(0xd4)]===_0x3cbf9b[_0x269a33(0xd4)],_0x269a33(0xdf)+_0x460f1a['id']+_0x269a33(0xcc)),assertVerified(_0x460f1a[_0x269a33(0xeb)]===_0x3cbf9b[_0x269a33(0xeb)],_0x269a33(0xdf)+_0x460f1a['id']+_0x269a33(0xd2));}