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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) 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/detail.js +1 -1
  26. package/lib/commands/app/index.js +1 -1
  27. package/lib/commands/app/list.js +1 -1
  28. package/lib/commands/app/members-list.js +1 -1
  29. package/lib/commands/app/remote-directory.js +1 -1
  30. package/lib/commands/app/shared.js +1 -1
  31. package/lib/commands/app-config/delete.js +1 -1
  32. package/lib/commands/app-config/get.js +1 -1
  33. package/lib/commands/app-config/index.js +1 -1
  34. package/lib/commands/app-config/list.js +1 -1
  35. package/lib/commands/app-config/set.js +1 -1
  36. package/lib/commands/app-config/shared.js +1 -1
  37. package/lib/commands/auth/index.js +1 -1
  38. package/lib/commands/bff/create.js +1 -1
  39. package/lib/commands/bff/delete.js +1 -1
  40. package/lib/commands/bff/detail.js +1 -1
  41. package/lib/commands/bff/index.js +1 -1
  42. package/lib/commands/bff/list.js +1 -1
  43. package/lib/commands/bff/logs.js +1 -1
  44. package/lib/commands/bff/pull.js +1 -1
  45. package/lib/commands/bff/push.js +1 -1
  46. package/lib/commands/bff/status.js +1 -1
  47. package/lib/commands/cli-skill/index.js +1 -1
  48. package/lib/commands/cli-update.js +1 -1
  49. package/lib/commands/codegen/index.js +1 -1
  50. package/lib/commands/codegen/sdk.js +1 -1
  51. package/lib/commands/codegen/sql.js +1 -1
  52. package/lib/commands/common/app-registry.js +1 -1
  53. package/lib/commands/common/app-selector.js +1 -1
  54. package/lib/commands/common/async-task.js +1 -1
  55. package/lib/commands/common/dry-run.js +1 -1
  56. package/lib/commands/common/flags.js +1 -1
  57. package/lib/commands/common/local-file.js +1 -1
  58. package/lib/commands/common/validate.js +1 -1
  59. package/lib/commands/config/delete.js +1 -1
  60. package/lib/commands/config/get.js +1 -1
  61. package/lib/commands/config/index.js +1 -1
  62. package/lib/commands/config/init.js +1 -1
  63. package/lib/commands/config/list.js +1 -1
  64. package/lib/commands/config/set.js +1 -1
  65. package/lib/commands/config/shared.js +1 -1
  66. package/lib/commands/dataset/batch-design.js +1 -1
  67. package/lib/commands/dataset/business-group-update.js +1 -1
  68. package/lib/commands/dataset/business-groups.js +1 -1
  69. package/lib/commands/dataset/capability.js +1 -1
  70. package/lib/commands/dataset/cross-relation-create.js +1 -1
  71. package/lib/commands/dataset/cross-relation-delete.js +1 -1
  72. package/lib/commands/dataset/cross-relation-list.js +1 -1
  73. package/lib/commands/dataset/cross-relation-shared.js +1 -1
  74. package/lib/commands/dataset/cross-relation-update.js +1 -1
  75. package/lib/commands/dataset/delete.js +1 -1
  76. package/lib/commands/dataset/detail.js +1 -1
  77. package/lib/commands/dataset/extend-update.js +1 -1
  78. package/lib/commands/dataset/field-restore.js +1 -1
  79. package/lib/commands/dataset/field-update.js +1 -1
  80. package/lib/commands/dataset/generate.js +1 -1
  81. package/lib/commands/dataset/index.js +1 -1
  82. package/lib/commands/dataset/list.js +1 -1
  83. package/lib/commands/dataset/operations.js +1 -1
  84. package/lib/commands/dataset/relation-audit.js +1 -1
  85. package/lib/commands/dataset/relation-create.js +1 -1
  86. package/lib/commands/dataset/relation-delete.js +1 -1
  87. package/lib/commands/dataset/relation-shared.js +1 -1
  88. package/lib/commands/dataset/relation-update.js +1 -1
  89. package/lib/commands/dataset/relations.js +1 -1
  90. package/lib/commands/dataset/rename.js +1 -1
  91. package/lib/commands/dataset/restore.js +1 -1
  92. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  93. package/lib/commands/db/analysis-batching.js +1 -1
  94. package/lib/commands/db/analyze-batch-plan.js +1 -1
  95. package/lib/commands/db/analyze-cancel.js +1 -1
  96. package/lib/commands/db/analyze-start.js +1 -1
  97. package/lib/commands/db/analyze-status.js +1 -1
  98. package/lib/commands/db/create.js +1 -1
  99. package/lib/commands/db/delete.js +1 -1
  100. package/lib/commands/db/detail.js +1 -1
  101. package/lib/commands/db/diff-refresh-start.js +1 -1
  102. package/lib/commands/db/diff-refresh-status.js +1 -1
  103. package/lib/commands/db/diff.js +1 -1
  104. package/lib/commands/db/index.js +1 -1
  105. package/lib/commands/db/list.js +1 -1
  106. package/lib/commands/db/shared.js +1 -1
  107. package/lib/commands/db/table-diff-shared.js +1 -1
  108. package/lib/commands/db/tables.js +1 -1
  109. package/lib/commands/db/test.js +1 -1
  110. package/lib/commands/db/update.js +1 -1
  111. package/lib/commands/deployment/index.js +1 -1
  112. package/lib/commands/deployment/sync-all.js +1 -1
  113. package/lib/commands/deployment/sync-jobs.js +1 -1
  114. package/lib/commands/deployment/sync-status.js +1 -1
  115. package/lib/commands/doctor.js +1 -1
  116. package/lib/commands/file/index.js +1 -1
  117. package/lib/commands/flow/create.js +1 -1
  118. package/lib/commands/flow/detail.js +1 -1
  119. package/lib/commands/flow/index.js +1 -1
  120. package/lib/commands/flow/list.js +1 -1
  121. package/lib/commands/flow/publish.js +1 -1
  122. package/lib/commands/flow/runtime-resources-shared.js +1 -1
  123. package/lib/commands/flow/runtime-role-list.js +1 -1
  124. package/lib/commands/flow/runtime-role-user-list.js +1 -1
  125. package/lib/commands/flow/runtime-user-search.js +1 -1
  126. package/lib/commands/flow/shared.js +1 -1
  127. package/lib/commands/flow/update.js +1 -1
  128. package/lib/commands/flow/validate.js +1 -1
  129. package/lib/commands/instant-api-policy/current.js +1 -1
  130. package/lib/commands/instant-api-policy/index.js +1 -1
  131. package/lib/commands/instant-api-policy/init.js +1 -1
  132. package/lib/commands/instant-api-policy/publish.js +1 -1
  133. package/lib/commands/instant-api-policy/pull.js +1 -1
  134. package/lib/commands/instant-api-policy/revision.js +1 -1
  135. package/lib/commands/instant-api-policy/revisions.js +1 -1
  136. package/lib/commands/instant-api-policy/rollback.js +1 -1
  137. package/lib/commands/instant-api-policy/shared.js +1 -1
  138. package/lib/commands/instant-api-policy/validate.js +1 -1
  139. package/lib/commands/issue/index.js +1 -1
  140. package/lib/commands/issue/nudge.js +1 -1
  141. package/lib/commands/issue/report.js +1 -1
  142. package/lib/commands/issue/shared.js +1 -1
  143. package/lib/commands/kb/create.js +1 -1
  144. package/lib/commands/kb/delete.js +1 -1
  145. package/lib/commands/kb/detail.js +1 -1
  146. package/lib/commands/kb/index.js +1 -1
  147. package/lib/commands/kb/list.js +1 -1
  148. package/lib/commands/kb/search.js +1 -1
  149. package/lib/commands/kb/shared.js +1 -1
  150. package/lib/commands/kb/update.js +1 -1
  151. package/lib/commands/logs/index.js +1 -1
  152. package/lib/commands/menu/asset-update.js +1 -1
  153. package/lib/commands/menu/delete.js +1 -1
  154. package/lib/commands/menu/external-link-create.js +1 -1
  155. package/lib/commands/menu/external-link-update.js +1 -1
  156. package/lib/commands/menu/group-create.js +1 -1
  157. package/lib/commands/menu/group-update.js +1 -1
  158. package/lib/commands/menu/index.js +1 -1
  159. package/lib/commands/menu/list.js +1 -1
  160. package/lib/commands/menu/move.js +1 -1
  161. package/lib/commands/menu/regroup-start.js +1 -1
  162. package/lib/commands/menu/rename.js +1 -1
  163. package/lib/commands/menu/shared/compare-table.js +1 -1
  164. package/lib/commands/menu/shared/delete-plan.js +1 -1
  165. package/lib/commands/menu/shared/facts.js +1 -1
  166. package/lib/commands/menu/shared/index.js +1 -1
  167. package/lib/commands/menu/shared/inquirer.js +1 -1
  168. package/lib/commands/menu/shared/local-pages.js +1 -1
  169. package/lib/commands/menu/shared/logic.js +1 -1
  170. package/lib/commands/menu/shared/mutations.js +1 -1
  171. package/lib/commands/menu/shared/path.js +1 -1
  172. package/lib/commands/menu/shared/service.js +1 -1
  173. package/lib/commands/menu/shared/subapp-assets.js +1 -1
  174. package/lib/commands/menu/shared/sync-core.js +1 -1
  175. package/lib/commands/menu/shared/update-core.js +1 -1
  176. package/lib/commands/menu/shared/valid-url.js +1 -1
  177. package/lib/commands/menu/subapp-assets-status.js +1 -1
  178. package/lib/commands/menu/subapp-assets-update.js +1 -1
  179. package/lib/commands/menu/sync.js +1 -1
  180. package/lib/commands/menu/visibility-update.js +1 -1
  181. package/lib/commands/notification/config-create.js +1 -1
  182. package/lib/commands/notification/config-delete.js +1 -1
  183. package/lib/commands/notification/config-list.js +1 -1
  184. package/lib/commands/notification/config-update.js +1 -1
  185. package/lib/commands/notification/index.js +1 -1
  186. package/lib/commands/notification/shared.js +1 -1
  187. package/lib/commands/ocr/index.js +1 -1
  188. package/lib/commands/page/create.js +1 -1
  189. package/lib/commands/page/custom/detail.js +1 -1
  190. package/lib/commands/page/custom/list.js +1 -1
  191. package/lib/commands/page/custom/publish.js +1 -1
  192. package/lib/commands/page/custom/shared.js +1 -1
  193. package/lib/commands/page/custom/syntax.js +1 -1
  194. package/lib/commands/page/custom/update.js +1 -1
  195. package/lib/commands/page/data-list-status.js +1 -1
  196. package/lib/commands/page/generate-start.js +1 -1
  197. package/lib/commands/page/generate-status.js +1 -1
  198. package/lib/commands/page/index.js +1 -1
  199. package/lib/commands/page/pull.js +1 -1
  200. package/lib/commands/page/push.js +1 -1
  201. package/lib/commands/page/relation-audit.js +1 -1
  202. package/lib/commands/page/restore.js +1 -1
  203. package/lib/commands/page/shared.js +1 -1
  204. package/lib/commands/page/sync.js +1 -1
  205. package/lib/commands/project/api-architecture-upgrade.js +1 -1
  206. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  207. package/lib/commands/project/create/format-elapsed.js +1 -1
  208. package/lib/commands/project/create/main.js +1 -1
  209. package/lib/commands/project/create/materialize-project-template.js +1 -1
  210. package/lib/commands/project/create/project-name.js +1 -1
  211. package/lib/commands/project/create/project-template-archive.js +1 -1
  212. package/lib/commands/project/create/project-template-path.js +1 -1
  213. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  214. package/lib/commands/project/create/use-format-code.js +1 -1
  215. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  216. package/lib/commands/project/domain-routing-sync.js +1 -1
  217. package/lib/commands/project/index.js +1 -1
  218. package/lib/commands/project/upgrade.js +1 -1
  219. package/lib/commands/registry.js +1 -1
  220. package/lib/commands/role/delete.js +1 -1
  221. package/lib/commands/role/detail.js +1 -1
  222. package/lib/commands/role/index.js +1 -1
  223. package/lib/commands/role/list.js +1 -1
  224. package/lib/commands/role/shared.js +1 -1
  225. package/lib/commands/role/update.js +1 -1
  226. package/lib/commands/role/user-add.js +1 -1
  227. package/lib/commands/role/user-remove.js +1 -1
  228. package/lib/commands/role/user-resolve.js +1 -1
  229. package/lib/commands/rule/get.js +1 -1
  230. package/lib/commands/rule/index.js +1 -1
  231. package/lib/commands/rule/list.js +1 -1
  232. package/lib/commands/rule/set.js +1 -1
  233. package/lib/commands/rule/shared.js +1 -1
  234. package/lib/commands/run/index.js +1 -1
  235. package/lib/commands/schema.js +1 -1
  236. package/lib/commands/sql/create.js +1 -1
  237. package/lib/commands/sql/delete.js +1 -1
  238. package/lib/commands/sql/detail.js +1 -1
  239. package/lib/commands/sql/exec.js +1 -1
  240. package/lib/commands/sql/index.js +1 -1
  241. package/lib/commands/sql/list.js +1 -1
  242. package/lib/commands/sql/pull.js +1 -1
  243. package/lib/commands/sql/push.js +1 -1
  244. package/lib/commands/sql/shared.js +1 -1
  245. package/lib/commands/sql/status.js +1 -1
  246. package/lib/commands/sql/validate.js +1 -1
  247. package/lib/commands/task/index.js +1 -1
  248. package/lib/commands/task/status.js +1 -1
  249. package/lib/commands/tenant/index.js +1 -1
  250. package/lib/commands/tenant/members-list.js +1 -1
  251. package/lib/commands/tenant/shared.js +1 -1
  252. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  253. package/lib/commands/user-account/feishu-bind.js +1 -1
  254. package/lib/commands/user-account/index.js +1 -1
  255. package/lib/commands/workspace/add.js +1 -1
  256. package/lib/commands/workspace/index.js +1 -1
  257. package/lib/commands/workspace/remove.js +1 -1
  258. package/lib/config/domain-config.js +1 -1
  259. package/lib/config/project-domain-routing.js +1 -1
  260. package/lib/config/region-config.js +1 -1
  261. package/lib/config/schema.js +1 -1
  262. package/lib/constant/cdn.js +1 -1
  263. package/lib/constant/cli.js +1 -1
  264. package/lib/constant/defaults.js +1 -1
  265. package/lib/constant/domain.js +1 -1
  266. package/lib/constant/env.js +1 -1
  267. package/lib/constant/output.js +1 -1
  268. package/lib/constant/paths.js +1 -1
  269. package/lib/constant/region.js +1 -1
  270. package/lib/constant/risk.js +1 -1
  271. package/lib/constant/routing-profile.js +1 -1
  272. package/lib/context/app-resolver.js +1 -1
  273. package/lib/context/auth-resolver.js +1 -1
  274. package/lib/context/config-loader.js +1 -1
  275. package/lib/context.js +1 -1
  276. package/lib/core/alias-resolver.js +1 -1
  277. package/lib/core/api-client.js +1 -1
  278. package/lib/core/bff/config.js +1 -1
  279. package/lib/core/bff/file-system.js +1 -1
  280. package/lib/core/bff/hash.js +1 -1
  281. package/lib/core/bff/hook-directory.js +1 -1
  282. package/lib/core/bff/lock.js +1 -1
  283. package/lib/core/bff/utils.js +1 -1
  284. package/lib/core/cross-db-relation.js +1 -1
  285. package/lib/core/db-resolver.js +1 -1
  286. package/lib/core/flow-config.js +1 -1
  287. package/lib/core/instant-api-policy/config.js +1 -1
  288. package/lib/core/kb-search-client.js +1 -1
  289. package/lib/core/page/file-system.js +1 -1
  290. package/lib/core/page/hash.js +1 -1
  291. package/lib/core/page/lock.js +1 -1
  292. package/lib/core/page/lr-smart-jsx.js +1 -1
  293. package/lib/core/sql-index-auditor.js +1 -1
  294. package/lib/core/sql-sync/config.js +1 -1
  295. package/lib/core/sql-sync/file-system.js +1 -1
  296. package/lib/core/sql-sync/hash.js +1 -1
  297. package/lib/core/sql-sync/lock.js +1 -1
  298. package/lib/core/sql-sync/utils.js +1 -1
  299. package/lib/core/sql-validator.js +1 -1
  300. package/lib/errors.js +1 -1
  301. package/lib/framework/build-all-flags.js +1 -1
  302. package/lib/framework/error-output.js +1 -1
  303. package/lib/framework/explicit-yes.js +1 -1
  304. package/lib/framework/flags.js +1 -1
  305. package/lib/framework/help.js +1 -1
  306. package/lib/framework/index.js +1 -1
  307. package/lib/framework/output.js +1 -1
  308. package/lib/framework/response.js +1 -1
  309. package/lib/framework/runner-alias.js +1 -1
  310. package/lib/framework/runner.js +1 -1
  311. package/lib/framework/schema-export.js +1 -1
  312. package/lib/framework/supported-flags.js +1 -1
  313. package/lib/framework/types.js +1 -1
  314. package/lib/generated/build-info.d.ts +4 -4
  315. package/lib/generated/build-info.js +1 -1
  316. package/lib/generated/official-routing.js +1 -1
  317. package/lib/generated/routing-contract.js +1 -1
  318. package/lib/help.js +1 -1
  319. package/lib/postinstall.js +1 -1
  320. package/lib/runtime/confirmation.js +1 -1
  321. package/lib/runtime/event.js +1 -1
  322. package/lib/runtime/index.js +1 -1
  323. package/lib/runtime/queue.js +1 -1
  324. package/lib/runtime/resolve.js +1 -1
  325. package/lib/skills/builtin-skill.js +1 -1
  326. package/lib/skills/main.js +1 -1
  327. package/lib/skills/npx-skills-add.js +1 -1
  328. package/lib/skills/skill-presence.js +1 -1
  329. package/lib/telemetry/cli-command-trace.js +1 -1
  330. package/lib/telemetry/cli-help-trace.js +1 -1
  331. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  332. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  333. package/lib/telemetry/send-cli-trace-log.js +1 -1
  334. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  335. package/lib/utils/ai_config.js +1 -1
  336. package/lib/utils/apply-jq-filter.js +1 -1
  337. package/lib/utils/cdn-config.js +1 -1
  338. package/lib/utils/check-sdk-version.js +1 -1
  339. package/lib/utils/cli-version-check.js +1 -1
  340. package/lib/utils/cli-version-policy.js +1 -1
  341. package/lib/utils/config.js +1 -1
  342. package/lib/utils/entity-with-id.js +1 -1
  343. package/lib/utils/file-utils.js +1 -1
  344. package/lib/utils/guides-cdn.js +1 -1
  345. package/lib/utils/http-client.js +1 -1
  346. package/lib/utils/is-non-interactive.js +1 -1
  347. package/lib/utils/logger.js +1 -1
  348. package/lib/utils/params.js +1 -1
  349. package/lib/utils/platform.js +1 -1
  350. package/lib/utils/sleep.js +1 -1
  351. package/lib/utils/template-replacer.js +1 -1
  352. package/lib/utils/update-notice.js +1 -1
  353. package/lib/utils/version.js +1 -1
  354. package/lib/utils/with-active-cookie.js +1 -1
  355. package/lib/utils/write-cli-side-channel.js +1 -1
  356. package/package.json +1 -1
  357. package/skills/rabetbase/SKILL.md +3 -3
  358. package/skills/rabetbase/guides/independent-deployment.md +11 -1
  359. package/skills/rabetbase/references/rabetbase-config.md +16 -19
  360. package/skills/rabetbase/references/rabetbase-menu-visibility-update.md +5 -4
  361. package/skills/rabetbase/references/rabetbase-workspace.md +3 -1
  362. package/skills/rabetbase-page-generation/SKILL.md +1 -1
  363. package/skills/rabetbase.manifest.json +3 -3
@@ -1 +1 @@
1
- const a152_0x538b2a=a152_0xa914;(function(_0x7a6674,_0x5a7355){const _0x168087=a152_0xa914,_0x3911f3=_0x7a6674();while(!![]){try{const _0x4a9b69=-parseInt(_0x168087(0x14d))/0x1+-parseInt(_0x168087(0x158))/0x2+-parseInt(_0x168087(0x155))/0x3*(parseInt(_0x168087(0x13e))/0x4)+-parseInt(_0x168087(0x13d))/0x5*(-parseInt(_0x168087(0x17a))/0x6)+-parseInt(_0x168087(0x183))/0x7*(-parseInt(_0x168087(0x10b))/0x8)+parseInt(_0x168087(0x171))/0x9*(-parseInt(_0x168087(0x150))/0xa)+-parseInt(_0x168087(0x13f))/0xb*(-parseInt(_0x168087(0x152))/0xc);if(_0x4a9b69===_0x5a7355)break;else _0x3911f3['push'](_0x3911f3['shift']());}catch(_0x1c2bf8){_0x3911f3['push'](_0x3911f3['shift']());}}}(a152_0x4ba4,0x9e48c));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':a152_0x538b2a(0x153),'path':a152_0x538b2a(0x14e)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a152_0x538b2a(0x16c)},MENU_DELETE_RECURSIVE_FLAG={'name':a152_0x538b2a(0x12b),'type':'boolean','description':a152_0x538b2a(0x131)},MENU_DELETE_PLAN_OUT_FLAG={'name':a152_0x538b2a(0x11a),'type':a152_0x538b2a(0x174),'description':a152_0x538b2a(0x165)},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a152_0x538b2a(0x174),'description':a152_0x538b2a(0x15c)};export const menuDelete={'service':'menu','command':a152_0x538b2a(0x114),'description':a152_0x538b2a(0x14b),'risk':a152_0x538b2a(0x13a),'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'(_0xc0f144){const _0x3dff0a=a152_0x538b2a;_0xc0f144[_0x3dff0a(0x10e)]('dry-run')?validateDeleteDryRunInput(_0xc0f144):validateDeleteExecuteInput(_0xc0f144),requireExplicitYes(_0xc0f144);},async 'dryRun'(_0x1e4490){const _0x3c85be=a152_0x538b2a;validateDeleteDryRunInput(_0x1e4490);const _0x1512c0=await buildDeletePlan(_0x1e4490),_0x47084f=createMenuDeletePlanFile(_0x1e4490[_0x3c85be(0x143)],_0x1512c0),_0x455553=await writeMenuDeletePlan(_0x1e4490['str'](_0x3c85be(0x11a)),_0x47084f),_0x2dddbe=mutationResult({..._0x1512c0,'planFile':{'path':_0x455553,'createdAt':_0x47084f[_0x3c85be(0x151)],'expiresAt':_0x47084f[_0x3c85be(0x15a)]}});return menuDryRunResult(_0x2dddbe,{'method':_0x3c85be(0x153),'url':_0x3c85be(0x14e),'body':{'idList':_0x2dddbe[_0x3c85be(0x130)]},'description':_0x3c85be(0x111)+(_0x2dddbe[_0x3c85be(0x130)]?.[_0x3c85be(0x109)]??0x1)+_0x3c85be(0x176)+_0x2dddbe[_0x3c85be(0x168)]['id']+_0x3c85be(0x147)+_0x455553+'.'});},async 'execute'(_0x3d0ca7){const _0x352aea=a152_0x538b2a;requireExplicitYes(_0x3d0ca7),validateDeleteExecuteInput(_0x3d0ca7);const _0x15c143=await readMenuDeletePlan(_0x3d0ca7[_0x352aea(0x160)](_0x352aea(0x154))),_0x11e732=mutationPlanFromDeleteFile(_0x15c143['plan'],_0x15c143[_0x352aea(0x124)]),_0x526872=_0x15c143[_0x352aea(0x154)][_0x352aea(0x146)]['id'];try{assertMenuDeletePlanExecutable(_0x15c143[_0x352aea(0x154)],_0x3d0ca7['appCode']);}catch(_0x55f6e6){throw menuFailure(asMenuError(_0x55f6e6),_0x11e732,{'stage':'plan-validation','failed':{'id':_0x526872}});}let _0x1f75a2,_0x466c9f;try{_0x1f75a2=await fetchMutationSnapshot(_0x3d0ca7,_0x352aea(0x13c),_0x526872),_0x466c9f=assertMenuDeletePlanCurrent(_0x15c143['plan'],_0x3d0ca7['appCode'],_0x1f75a2),assertDeleteTargetsComplete(_0x15c143[_0x352aea(0x154)],_0x1f75a2),_0x466c9f[_0x352aea(0x17e)](_0x3de2e1=>assertDeleteSafety(_0x3de2e1,_0x15c143[_0x352aea(0x154)][_0x352aea(0x12b)])),assertNoSharedPages(_0x1f75a2,_0x466c9f),assertCascadeMatchesPlan(_0x11e732,_0x466c9f);}catch(_0x113ab1){throw menuFailure(asMenuError(_0x113ab1),_0x11e732,{'stage':_0x352aea(0x116),'failed':{'id':_0x526872}});}const _0x3c3385=_0x15c143[_0x352aea(0x154)][_0x352aea(0x130)];let _0x24a777;try{_0x24a777=await batchDeleteMenuEntities(_0x3d0ca7[_0x352aea(0x175)],_0x3c3385);}catch(_0x317895){const _0x486711=mapMenuApiError(_0x317895,_0x352aea(0x132)),_0x4b72d1=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0xdbc074;try{_0xdbc074=await readDeleteOutcome(_0x3d0ca7,_0x3c3385);}catch(_0x9a50e9){const _0x5b79fa=describeMenuErrorCause(_0x9a50e9,_0x352aea(0x126),_0x526872);_0x4b72d1[_0x352aea(0x119)](_0x352aea(0x13b)+_0x5b79fa[_0x352aea(0x117)]+'):\x20'+_0x5b79fa[_0x352aea(0x14a)]);throw menuFailure(_0x486711,_0x11e732,{'stage':'batch-delete','failed':{'targetIds':_0x3c3385,'targetIdsAbsent':_0x352aea(0x14c),..._0x5b79fa},'warnings':_0x4b72d1,'verification':{'status':_0x352aea(0x169),'lookupCommand':_0x352aea(0x16f),'targetIds':_0x3c3385}});}throw menuFailure(_0x486711,_0x11e732,{'stage':'batch-delete','succeeded':_0xdbc074[_0x352aea(0x181)][_0x352aea(0x142)](_0x4a34ad=>({'id':_0x4a34ad,'deleted':!![]})),'failed':{'targetIds':_0x3c3385,'absentIds':_0xdbc074['absentIds'],'remainingIds':_0xdbc074[_0x352aea(0x178)]},'warnings':_0x4b72d1,'verification':verificationFromOutcome(_0xdbc074)});}if(_0x24a777!==_0x3c3385[_0x352aea(0x109)]){const _0x45465d=menuError(_0x352aea(0x11d),_0x352aea(0x11c)+_0x24a777+'\x20deleted\x20menus;\x20expected\x20'+_0x3c3385[_0x352aea(0x109)]+'.',_0x352aea(0x16e)),_0xbd0fc=[_0x352aea(0x16d)];let _0xe96e72;try{_0xe96e72=await readDeleteOutcome(_0x3d0ca7,_0x3c3385);}catch(_0x55032e){const _0x141000=describeMenuErrorCause(_0x55032e,_0x352aea(0x108),_0x526872);_0xbd0fc['push']('Post-mismatch\x20menu\x20readback\x20failed\x20('+_0x141000['causeCode']+_0x352aea(0x15d)+_0x141000[_0x352aea(0x14a)]);throw menuFailure(_0x45465d,_0x11e732,{'stage':_0x352aea(0x140),'failed':{'targetIds':_0x3c3385,'expectedCount':_0x3c3385[_0x352aea(0x109)],'reportedDeletedCount':_0x24a777,'targetIdsAbsent':'unconfirmed',..._0x141000},'warnings':_0xbd0fc,'verification':{'status':'failed','lookupCommand':_0x352aea(0x16f),'targetIds':_0x3c3385}});}throw menuFailure(_0x45465d,_0x11e732,{'stage':_0x352aea(0x140),'succeeded':_0xe96e72[_0x352aea(0x181)]['map'](_0x23ee90=>({'id':_0x23ee90,'deleted':!![]})),'failed':{'targetIds':_0x3c3385,'expectedCount':_0x3c3385[_0x352aea(0x109)],'reportedDeletedCount':_0x24a777,'absentIds':_0xe96e72['absentIds'],'remainingIds':_0xe96e72['remainingIds']},'warnings':_0xbd0fc,'verification':verificationFromOutcome(_0xe96e72)});}let _0x5c95b1;try{_0x5c95b1=await readDeleteOutcome(_0x3d0ca7,_0x3c3385);}catch(_0x46119c){const _0x4dfd51=describeMenuErrorCause(_0x46119c,_0x352aea(0x136),_0x526872),_0x1ed5bc=asVerificationError(_0x46119c,'Batch\x20delete\x20request\x20for\x20menu\x20'+_0x526872+_0x352aea(0x15b));throw menuFailure(_0x1ed5bc,_0x11e732,{'stage':_0x352aea(0x184),'succeeded':_0x3c3385[_0x352aea(0x142)](_0x41e498=>({'id':_0x41e498,'deleteRequested':!![]})),'failed':{'id':_0x526872,'targetIds':_0x3c3385,'targetIdsAbsent':_0x352aea(0x14c),..._0x4dfd51},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x352aea(0x169),'lookupCommand':_0x352aea(0x16f),'targetIds':_0x3c3385}});}if(_0x5c95b1[_0x352aea(0x178)][_0x352aea(0x109)]>0x0){const _0x39403e=menuError('menu_verification_failed','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20'+_0x5c95b1[_0x352aea(0x178)]['join'](',\x20')+'.',_0x352aea(0x16e));throw menuFailure(_0x39403e,_0x11e732,{'stage':_0x352aea(0x184),'succeeded':_0x3c3385[_0x352aea(0x142)](_0xc02afd=>({'id':_0xc02afd,'deleteRequested':!![]})),'failed':{'id':_0x526872,'targetIds':_0x3c3385,'absentIds':_0x5c95b1[_0x352aea(0x181)],'remainingIds':_0x5c95b1[_0x352aea(0x178)]},'warnings':[_0x352aea(0x173)],'verification':verificationFromOutcome(_0x5c95b1)});}const _0x175b0f=_0x3c3385['map'](_0x31059a=>({'id':_0x31059a,'deleted':!![]})),_0x5ce9fa=mutationResult({..._0x11e732,'dryRun':![],'succeeded':_0x175b0f,'verification':{'checkedBy':_0x352aea(0x134),'plannedSnapshotHash':_0x11e732['snapshotHash'],'finalSnapshotHash':_0x5c95b1['snapshot'][_0x352aea(0x17c)],'reportedDeletedCount':_0x24a777,'targetAbsent':!_0x5c95b1['snapshot'][_0x352aea(0x170)][_0x352aea(0x11b)](_0x526872),'allTargetsAbsent':!![],'targetIds':_0x3c3385}});return{'ok':!![],'data':_0x5ce9fa,'message':_0x352aea(0x10f)+_0x175b0f['length']+_0x352aea(0x176)+_0x526872+'.'};}};async function readDeleteOutcome(_0x47c76d,_0x1f8028){const _0x4d4cc2=a152_0x538b2a,_0x3acdc1=await fetchMenuSnapshot(_0x47c76d[_0x4d4cc2(0x143)],_0x47c76d['cookie']);return{'snapshot':_0x3acdc1,'absentIds':_0x1f8028['filter'](_0x40d394=>!_0x3acdc1[_0x4d4cc2(0x170)][_0x4d4cc2(0x11b)](_0x40d394)),'remainingIds':_0x1f8028[_0x4d4cc2(0x12f)](_0x35f4e4=>_0x3acdc1[_0x4d4cc2(0x170)][_0x4d4cc2(0x11b)](_0x35f4e4))};}function a152_0x4ba4(){const _0x189e82=['str','\x20references\x20missing\x20child\x20','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','cascade','page\x20','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','menu_page_shared','selector','failed','menu_tree_invalid','childrenCount','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','rabetbase\x20menu\x20list\x20--format\x20json','byId','3623832qivkbH','expect-parent-id','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','string','cookie','\x20menu(s)\x20under\x20exact\x20id\x20','indexOf','remainingIds','menu_folder_has_resources','29286KfUklH','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','hash','type','forEach','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','absentIds','join','125468ufzwAe','verification','expect-path','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','length','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','40uGQgSo','trim','toLowerCase','bool','Deleted\x20','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','Would\x20batch\x20delete\x20','validation','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','delete','Folder\x20','pre-write-plan-validation','causeCode','pages','push','plan-out','has','Backend\x20reported\x20','menu_batch_delete_count_mismatch','unknown','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','pageId','folder','\x20is\x20type\x20\x22','menu_delete_page_bound','path','menu_plan_invalid','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','menu_folder_resources_invalid','stringify','get','\x20and\x20cannot\x20be\x20deleted\x20safely.','recursive','size','expected-children-count','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','filter','deleteOrder','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','batch\x20delete','plan\x20delete','menu\x20list','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','verify\x20batch\x20delete','resources','add','flagMissing','high-risk-write','Post-failure\x20menu\x20readback\x20failed\x20(','execute\x20reviewed\x20delete\x20plan','885kvtpmb','893384uyuWJJ','6186224TQVPZQ','batch-delete','Menu\x20','map','appCode','childrenIds','batch-delete-menu','target',';\x20execution\x20must\x20consume\x20','resourcesValid','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','causeMessage','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','unconfirmed','127131doBqMn','/smartapi/menu/batchDelete','\x20still\x20references\x20','10VWrPsV','createdAt','24OwvEiy','POST','plan','12vdsskP','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','\x20is\x20not\x20a\x20folder.','13660lTGZri','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','expiresAt','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','):\x20','Recursive\x20menu\x20delete\x20plan\x20root\x20','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'];a152_0x4ba4=function(){return _0x189e82;};return a152_0x4ba4();}function a152_0xa914(_0x172f50,_0x35922d){_0x172f50=_0x172f50-0x108;const _0x4ba4d5=a152_0x4ba4();let _0xa91481=_0x4ba4d5[_0x172f50];return _0xa91481;}function verificationFromOutcome(_0x4b72fe){const _0x18fa95=a152_0x538b2a;return{'checkedBy':'menu\x20list','absentIds':_0x4b72fe[_0x18fa95(0x181)],'remainingIds':_0x4b72fe[_0x18fa95(0x178)]};}function validateDeleteDryRunInput(_0x21839f){const _0x40b249=a152_0x538b2a;validateExactId(_0x21839f);if(!hasFlag(_0x21839f,_0x40b249(0x11a))||!_0x21839f[_0x40b249(0x160)](_0x40b249(0x11a))[_0x40b249(0x10c)]())throw CliErrors[_0x40b249(0x139)](_0x40b249(0x11a),_0x40b249(0x17b));if(hasFlag(_0x21839f,_0x40b249(0x154)))throw CliErrors['validation']('--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.');}function validateDeleteExecuteInput(_0xad825b){const _0x1daad9=a152_0x538b2a;if(!hasFlag(_0xad825b,_0x1daad9(0x154))||!_0xad825b[_0x1daad9(0x160)](_0x1daad9(0x154))['trim']())throw CliErrors[_0x1daad9(0x139)](_0x1daad9(0x154),_0x1daad9(0x156));const _0x2621d3=['id',_0x1daad9(0x12b),_0x1daad9(0x11a),_0x1daad9(0x172),_0x1daad9(0x185),_0x1daad9(0x12d)]['filter'](_0x260f47=>hasFlag(_0xad825b,_0x260f47));if(_0x2621d3['length']>0x0)throw CliErrors[_0x1daad9(0x112)](_0x1daad9(0x180)+_0x2621d3[_0x1daad9(0x142)](_0x26af31=>'--'+_0x26af31)[_0x1daad9(0x182)](',\x20')+'.');}async function buildDeletePlan(_0x34cabf){const _0x449c96=a152_0x538b2a,_0x2f867b=validateExactId(_0x34cabf),_0x442bcf=await fetchMutationSnapshot(_0x34cabf,_0x449c96(0x133),_0x2f867b),_0x35bade=requireMenu(_0x442bcf,_0x2f867b);assertExpectedState(_0x34cabf,_0x35bade);const _0x542518=_0x34cabf['bool'](_0x449c96(0x12b));let _0x2a5596;if(_0x542518){if(_0x35bade[_0x449c96(0x17d)][_0x449c96(0x10c)]()[_0x449c96(0x10d)]()!==_0x449c96(0x121))throw menuError('menu_recursive_requires_folder',_0x449c96(0x141)+_0x35bade['id']+_0x449c96(0x122)+(_0x35bade[_0x449c96(0x17d)]||_0x449c96(0x11e))+_0x449c96(0x149));_0x2a5596=collectDeleteTargets(_0x442bcf,_0x35bade),_0x2a5596[_0x449c96(0x17e)](_0x25f1e9=>assertDeleteSafety(_0x25f1e9,!![]));}else assertDeleteSafety(_0x35bade),_0x2a5596=[_0x35bade];assertNoSharedPages(_0x442bcf,_0x2a5596);const _0x372b23=_0x2a5596[_0x449c96(0x142)](_0x1dd0e0=>_0x1dd0e0['id']),_0x223280=cascadeForTargets(_0x2a5596),_0x4c4b37=_0x223280[_0x449c96(0x118)][_0x449c96(0x109)]>0x0?[_0x449c96(0x110)]:[];return mutationResult({'operation':_0x449c96(0x114),'selector':{'id':_0x2f867b,'recursive':_0x542518},'before':_0x35bade,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x449c96(0x145),'method':_0x449c96(0x153),'path':_0x449c96(0x14e),'body':{'idList':_0x372b23}}],'targets':_0x2a5596,'deleteOrder':_0x372b23,'snapshotHash':_0x442bcf[_0x449c96(0x17c)],'cascade':_0x223280,'warnings':_0x4c4b37});}function assertDeleteSafety(_0x46fc4b,_0x582295=![]){const _0x23bd9b=a152_0x538b2a,_0x50cd45=_0x46fc4b[_0x23bd9b(0x17d)][_0x23bd9b(0x10c)]()[_0x23bd9b(0x10d)]()==='folder';if(_0x46fc4b[_0x23bd9b(0x16b)]>0x0&&(!_0x582295||!_0x50cd45))throw menuError('menu_non_empty','Menu\x20'+_0x46fc4b['id']+'\x20has\x20'+_0x46fc4b[_0x23bd9b(0x16b)]+_0x23bd9b(0x159),_0x23bd9b(0x113)+_0x46fc4b['childrenIds'][_0x23bd9b(0x182)](',\x20'));if(_0x50cd45&&_0x46fc4b[_0x23bd9b(0x120)]!=null)throw menuError(_0x23bd9b(0x123),_0x23bd9b(0x115)+_0x46fc4b['id']+_0x23bd9b(0x17f)+_0x46fc4b['pageId']+_0x23bd9b(0x12a),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x50cd45)return;if(!_0x46fc4b[_0x23bd9b(0x148)])throw menuError(_0x23bd9b(0x127),_0x23bd9b(0x115)+_0x46fc4b['id']+'\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.',_0x23bd9b(0x11f));if(_0x46fc4b[_0x23bd9b(0x137)]['length']>0x0)throw menuError(_0x23bd9b(0x179),'Folder\x20'+_0x46fc4b['id']+_0x23bd9b(0x14f)+_0x46fc4b[_0x23bd9b(0x137)][_0x23bd9b(0x109)]+'\x20resource\x20URL(s).',_0x23bd9b(0x166));}function collectDeleteTargets(_0x55d89e,_0x1470f5){const _0x2b5700=[],_0x5b5f72=new Set(),_0x314734=new Set(),_0x4955b3=_0x46ad41=>{const _0x2563ce=a152_0xa914;if(_0x5b5f72[_0x2563ce(0x11b)](_0x46ad41['id']))throw menuError(_0x2563ce(0x16a),_0x2563ce(0x135)+_0x46ad41['id']+'.');if(_0x314734[_0x2563ce(0x11b)](_0x46ad41['id']))return;_0x5b5f72[_0x2563ce(0x138)](_0x46ad41['id']);for(const _0x2f3821 of _0x46ad41[_0x2563ce(0x144)]){const _0x42f194=_0x55d89e[_0x2563ce(0x170)][_0x2563ce(0x129)](_0x2f3821);if(!_0x42f194)throw menuError(_0x2563ce(0x16a),_0x2563ce(0x141)+_0x46ad41['id']+_0x2563ce(0x161)+_0x2f3821+'.');_0x4955b3(_0x42f194);}_0x5b5f72[_0x2563ce(0x114)](_0x46ad41['id']),_0x314734[_0x2563ce(0x138)](_0x46ad41['id']),_0x2b5700[_0x2563ce(0x119)](_0x46ad41);};return _0x4955b3(_0x1470f5),_0x2b5700;}function assertDeleteTargetsComplete(_0x2e2c3f,_0x3345f6){const _0x4c4039=a152_0x538b2a,_0x2470c2=requireMenu(_0x3345f6,_0x2e2c3f[_0x4c4039(0x146)]['id']);if(_0x2e2c3f['recursive']&&_0x2470c2[_0x4c4039(0x17d)][_0x4c4039(0x10c)]()['toLowerCase']()!==_0x4c4039(0x121))throw menuError('menu_plan_invalid',_0x4c4039(0x15e)+_0x2470c2['id']+_0x4c4039(0x157));const _0x3d386c=_0x2e2c3f[_0x4c4039(0x12b)]?collectDeleteTargets(_0x3345f6,_0x2470c2)[_0x4c4039(0x142)](_0x28f40e=>_0x28f40e['id']):[_0x2470c2['id']];if(JSON[_0x4c4039(0x128)](_0x2e2c3f[_0x4c4039(0x130)])!==JSON['stringify'](_0x3d386c))throw menuError(_0x4c4039(0x125),_0x4c4039(0x10a),_0x4c4039(0x162));}function assertNoSharedPages(_0xfaf2b0,_0x145046){const _0x7bee41=a152_0x538b2a,_0x177720=new Set(_0x145046[_0x7bee41(0x142)](_0x3255f1=>_0x3255f1['id'])),_0x305a7f=new Set(_0x145046[_0x7bee41(0x142)](_0xd3cb14=>_0xd3cb14[_0x7bee41(0x120)])[_0x7bee41(0x12f)](_0x42311e=>_0x42311e!=null));if(_0x305a7f[_0x7bee41(0x12c)]===0x0)return;const _0x260ea5=_0xfaf2b0['menus']['filter'](_0x1485d2=>!_0x177720[_0x7bee41(0x11b)](_0x1485d2['id'])&&_0x1485d2[_0x7bee41(0x120)]!=null&&_0x305a7f[_0x7bee41(0x11b)](_0x1485d2[_0x7bee41(0x120)]));if(_0x260ea5['length']===0x0)return;const _0x375bcb=_0x260ea5[_0x7bee41(0x142)](_0x3ae633=>_0x7bee41(0x164)+_0x3ae633[_0x7bee41(0x120)]+'\x20->\x20menu\x20'+_0x3ae633['id'])[_0x7bee41(0x182)](',\x20');throw menuError(_0x7bee41(0x167),_0x7bee41(0x15f)+_0x375bcb+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x1aa7bc,_0x568a8c){const _0x3ffa49=a152_0x538b2a,_0x106b37=cascadeForTargets(_0x568a8c);if(JSON['stringify'](_0x1aa7bc[_0x3ffa49(0x163)])!==JSON[_0x3ffa49(0x128)](_0x106b37))throw menuError(_0x3ffa49(0x125),_0x3ffa49(0x12e));}function cascadeForTargets(_0x40f824){const _0x785632=a152_0x538b2a,_0x5aad1e=_0x40f824['map'](_0x7a67e2=>_0x7a67e2[_0x785632(0x120)])[_0x785632(0x12f)](_0x4f17e1=>_0x4f17e1!=null)[_0x785632(0x12f)]((_0x1d5d3a,_0xc736ad,_0x177160)=>_0x177160[_0x785632(0x177)](_0x1d5d3a)===_0xc736ad);return{'pages':_0x5aad1e,'pageSchemaAffected':_0x5aad1e[_0x785632(0x109)]>0x0};}function asMenuError(_0x6fdde6){const _0x39ce39=a152_0x538b2a;return _0x6fdde6 instanceof CliError?_0x6fdde6:menuError(_0x39ce39(0x125),_0x6fdde6 instanceof Error?_0x6fdde6['message']:String(_0x6fdde6));}
1
+ const a152_0x367c41=a152_0x260f;(function(_0x105dd4,_0x2affe4){const _0x4ff24b=a152_0x260f,_0x29680b=_0x105dd4();while(!![]){try{const _0x4c9f57=parseInt(_0x4ff24b(0x1c2))/0x1*(parseInt(_0x4ff24b(0x1ee))/0x2)+parseInt(_0x4ff24b(0x1c0))/0x3+-parseInt(_0x4ff24b(0x1b6))/0x4+parseInt(_0x4ff24b(0x1c9))/0x5+parseInt(_0x4ff24b(0x1c8))/0x6*(-parseInt(_0x4ff24b(0x1ea))/0x7)+parseInt(_0x4ff24b(0x1bd))/0x8+-parseInt(_0x4ff24b(0x1d8))/0x9;if(_0x4c9f57===_0x2affe4)break;else _0x29680b['push'](_0x29680b['shift']());}catch(_0x2db30f){_0x29680b['push'](_0x29680b['shift']());}}}(a152_0x2270,0xc197e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a152_0x260f(_0xbdd2b2,_0x2b707d){_0xbdd2b2=_0xbdd2b2-0x19d;const _0x227014=a152_0x2270();let _0x260f7b=_0x227014[_0xbdd2b2];return _0x260f7b;}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':a152_0x367c41(0x19f),'path':a152_0x367c41(0x1e6)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a152_0x367c41(0x1c7)},MENU_DELETE_RECURSIVE_FLAG={'name':a152_0x367c41(0x20f),'type':a152_0x367c41(0x1da),'description':a152_0x367c41(0x1e8)},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':'string','description':a152_0x367c41(0x210)},MENU_DELETE_PLAN_FLAG={'name':a152_0x367c41(0x1f6),'type':a152_0x367c41(0x1d0),'description':a152_0x367c41(0x1a9)};export const menuDelete={'service':'menu','command':a152_0x367c41(0x1d7),'description':a152_0x367c41(0x1fd),'risk':a152_0x367c41(0x1e2),'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'(_0x210a26){const _0x528714=a152_0x367c41;_0x210a26[_0x528714(0x1a3)](_0x528714(0x1c3))?validateDeleteDryRunInput(_0x210a26):validateDeleteExecuteInput(_0x210a26),requireExplicitYes(_0x210a26);},async 'dryRun'(_0x26ff12){const _0x56f4ee=a152_0x367c41;validateDeleteDryRunInput(_0x26ff12);const _0x55e71b=await buildDeletePlan(_0x26ff12),_0x3153d8=createMenuDeletePlanFile(_0x26ff12['appCode'],_0x55e71b),_0x484d75=await writeMenuDeletePlan(_0x26ff12[_0x56f4ee(0x1dc)]('plan-out'),_0x3153d8),_0x257811=mutationResult({..._0x55e71b,'planFile':{'path':_0x484d75,'createdAt':_0x3153d8['createdAt'],'expiresAt':_0x3153d8[_0x56f4ee(0x1a2)]}});return menuDryRunResult(_0x257811,{'method':_0x56f4ee(0x19f),'url':_0x56f4ee(0x1e6),'body':{'idList':_0x257811[_0x56f4ee(0x1a1)]},'description':_0x56f4ee(0x212)+(_0x257811[_0x56f4ee(0x1a1)]?.['length']??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x257811[_0x56f4ee(0x1d2)]['id']+_0x56f4ee(0x1dd)+_0x484d75+'.'});},async 'execute'(_0x23f5c7){const _0x32f791=a152_0x367c41;requireExplicitYes(_0x23f5c7),validateDeleteExecuteInput(_0x23f5c7);const _0x2fec49=await readMenuDeletePlan(_0x23f5c7[_0x32f791(0x1dc)](_0x32f791(0x1f6))),_0x2a0451=mutationPlanFromDeleteFile(_0x2fec49[_0x32f791(0x1f6)],_0x2fec49[_0x32f791(0x1c4)]),_0x505c29=_0x2fec49[_0x32f791(0x1f6)]['target']['id'];try{assertMenuDeletePlanExecutable(_0x2fec49[_0x32f791(0x1f6)],_0x23f5c7['appCode']);}catch(_0x4063b8){throw menuFailure(asMenuError(_0x4063b8),_0x2a0451,{'stage':_0x32f791(0x1ad),'failed':{'id':_0x505c29}});}let _0x20052a,_0x14aee5;try{_0x20052a=await fetchMutationSnapshot(_0x23f5c7,'execute\x20reviewed\x20delete\x20plan',_0x505c29),_0x14aee5=assertMenuDeletePlanCurrent(_0x2fec49[_0x32f791(0x1f6)],_0x23f5c7[_0x32f791(0x1c5)],_0x20052a),assertDeleteTargetsComplete(_0x2fec49['plan'],_0x20052a),_0x14aee5[_0x32f791(0x1c6)](_0x1fcb69=>assertDeleteSafety(_0x1fcb69,_0x2fec49['plan'][_0x32f791(0x20f)])),assertNoSharedPages(_0x20052a,_0x14aee5),assertCascadeMatchesPlan(_0x2a0451,_0x14aee5);}catch(_0x2deb17){throw menuFailure(asMenuError(_0x2deb17),_0x2a0451,{'stage':_0x32f791(0x1de),'failed':{'id':_0x505c29}});}const _0x1aa442=_0x2fec49[_0x32f791(0x1f6)][_0x32f791(0x1a1)];let _0x3605cc;try{_0x3605cc=await batchDeleteMenuEntities(_0x23f5c7[_0x32f791(0x1a0)],_0x1aa442);}catch(_0x21c038){const _0x5a0497=mapMenuApiError(_0x21c038,_0x32f791(0x1b0)),_0x973501=[_0x32f791(0x1ef)];let _0x5e6490;try{_0x5e6490=await readDeleteOutcome(_0x23f5c7,_0x1aa442);}catch(_0x52fc6c){const _0x323b93=describeMenuErrorCause(_0x52fc6c,_0x32f791(0x1fa),_0x505c29);_0x973501[_0x32f791(0x1a7)](_0x32f791(0x1b7)+_0x323b93['causeCode']+_0x32f791(0x1d4)+_0x323b93[_0x32f791(0x207)]);throw menuFailure(_0x5a0497,_0x2a0451,{'stage':'batch-delete','failed':{'targetIds':_0x1aa442,'targetIdsAbsent':_0x32f791(0x1eb),..._0x323b93},'warnings':_0x973501,'verification':{'status':'failed','lookupCommand':_0x32f791(0x206),'targetIds':_0x1aa442}});}throw menuFailure(_0x5a0497,_0x2a0451,{'stage':'batch-delete','succeeded':_0x5e6490['absentIds'][_0x32f791(0x1b9)](_0x48a293=>({'id':_0x48a293,'deleted':!![]})),'failed':{'targetIds':_0x1aa442,'absentIds':_0x5e6490['absentIds'],'remainingIds':_0x5e6490[_0x32f791(0x20c)]},'warnings':_0x973501,'verification':verificationFromOutcome(_0x5e6490)});}if(_0x3605cc!==_0x1aa442[_0x32f791(0x1bb)]){const _0x2de042=menuError('menu_batch_delete_count_mismatch','Backend\x20reported\x20'+_0x3605cc+'\x20deleted\x20menus;\x20expected\x20'+_0x1aa442['length']+'.',_0x32f791(0x1aa)),_0x1b685b=[_0x32f791(0x1be)];let _0x53671f;try{_0x53671f=await readDeleteOutcome(_0x23f5c7,_0x1aa442);}catch(_0x5dedd6){const _0x250fe8=describeMenuErrorCause(_0x5dedd6,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x505c29);_0x1b685b['push']('Post-mismatch\x20menu\x20readback\x20failed\x20('+_0x250fe8[_0x32f791(0x1ab)]+_0x32f791(0x1d4)+_0x250fe8[_0x32f791(0x207)]);throw menuFailure(_0x2de042,_0x2a0451,{'stage':_0x32f791(0x1df),'failed':{'targetIds':_0x1aa442,'expectedCount':_0x1aa442[_0x32f791(0x1bb)],'reportedDeletedCount':_0x3605cc,'targetIdsAbsent':'unconfirmed',..._0x250fe8},'warnings':_0x1b685b,'verification':{'status':'failed','lookupCommand':_0x32f791(0x206),'targetIds':_0x1aa442}});}throw menuFailure(_0x2de042,_0x2a0451,{'stage':_0x32f791(0x1df),'succeeded':_0x53671f[_0x32f791(0x1f8)][_0x32f791(0x1b9)](_0x3c210f=>({'id':_0x3c210f,'deleted':!![]})),'failed':{'targetIds':_0x1aa442,'expectedCount':_0x1aa442[_0x32f791(0x1bb)],'reportedDeletedCount':_0x3605cc,'absentIds':_0x53671f[_0x32f791(0x1f8)],'remainingIds':_0x53671f[_0x32f791(0x20c)]},'warnings':_0x1b685b,'verification':verificationFromOutcome(_0x53671f)});}let _0x256578;try{_0x256578=await readDeleteOutcome(_0x23f5c7,_0x1aa442);}catch(_0xb362a5){const _0x100552=describeMenuErrorCause(_0xb362a5,_0x32f791(0x1c1),_0x505c29),_0x49fc17=asVerificationError(_0xb362a5,_0x32f791(0x208)+_0x505c29+_0x32f791(0x1d1));throw menuFailure(_0x49fc17,_0x2a0451,{'stage':_0x32f791(0x1b8),'succeeded':_0x1aa442[_0x32f791(0x1b9)](_0x44cdc3=>({'id':_0x44cdc3,'deleteRequested':!![]})),'failed':{'id':_0x505c29,'targetIds':_0x1aa442,'targetIdsAbsent':_0x32f791(0x1eb),..._0x100552},'warnings':[_0x32f791(0x1f2)],'verification':{'status':'failed','lookupCommand':_0x32f791(0x206),'targetIds':_0x1aa442}});}if(_0x256578['remainingIds'][_0x32f791(0x1bb)]>0x0){const _0x393324=menuError(_0x32f791(0x19e),_0x32f791(0x1b4)+_0x256578[_0x32f791(0x20c)]['join'](',\x20')+'.',_0x32f791(0x1aa));throw menuFailure(_0x393324,_0x2a0451,{'stage':_0x32f791(0x1b8),'succeeded':_0x1aa442[_0x32f791(0x1b9)](_0x32b9ae=>({'id':_0x32b9ae,'deleteRequested':!![]})),'failed':{'id':_0x505c29,'targetIds':_0x1aa442,'absentIds':_0x256578['absentIds'],'remainingIds':_0x256578[_0x32f791(0x20c)]},'warnings':[_0x32f791(0x1e5)],'verification':verificationFromOutcome(_0x256578)});}const _0x384f69=_0x1aa442[_0x32f791(0x1b9)](_0x440cac=>({'id':_0x440cac,'deleted':!![]})),_0x5295f1=mutationResult({..._0x2a0451,'dryRun':![],'succeeded':_0x384f69,'verification':{'checkedBy':_0x32f791(0x20e),'plannedSnapshotHash':_0x2a0451['snapshotHash'],'finalSnapshotHash':_0x256578['snapshot'][_0x32f791(0x1f4)],'reportedDeletedCount':_0x3605cc,'targetAbsent':!_0x256578[_0x32f791(0x1f0)][_0x32f791(0x201)][_0x32f791(0x205)](_0x505c29),'allTargetsAbsent':!![],'targetIds':_0x1aa442}});return{'ok':!![],'data':_0x5295f1,'message':_0x32f791(0x1fc)+_0x384f69[_0x32f791(0x1bb)]+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x505c29+'.'};}};async function readDeleteOutcome(_0xf449de,_0x2f95e8){const _0x132659=a152_0x367c41,_0x14306a=await fetchMenuSnapshot(_0xf449de['appCode'],_0xf449de[_0x132659(0x1a0)]);return{'snapshot':_0x14306a,'absentIds':_0x2f95e8[_0x132659(0x204)](_0x51b577=>!_0x14306a['byId'][_0x132659(0x205)](_0x51b577)),'remainingIds':_0x2f95e8[_0x132659(0x204)](_0x55f12a=>_0x14306a[_0x132659(0x201)]['has'](_0x55f12a))};}function verificationFromOutcome(_0x3ba7dd){const _0x54f61a=a152_0x367c41;return{'checkedBy':_0x54f61a(0x20e),'absentIds':_0x3ba7dd['absentIds'],'remainingIds':_0x3ba7dd[_0x54f61a(0x20c)]};}function validateDeleteDryRunInput(_0x5d7345){const _0x23e8b3=a152_0x367c41;validateExactId(_0x5d7345);if(!hasFlag(_0x5d7345,_0x23e8b3(0x1e0))||!_0x5d7345[_0x23e8b3(0x1dc)]('plan-out')[_0x23e8b3(0x1bc)]())throw CliErrors[_0x23e8b3(0x1a6)](_0x23e8b3(0x1e0),_0x23e8b3(0x209));if(hasFlag(_0x5d7345,_0x23e8b3(0x1f6)))throw CliErrors['validation'](_0x23e8b3(0x1a4));}function validateDeleteExecuteInput(_0x3893ab){const _0x338e9d=a152_0x367c41;if(!hasFlag(_0x3893ab,_0x338e9d(0x1f6))||!_0x3893ab[_0x338e9d(0x1dc)](_0x338e9d(0x1f6))[_0x338e9d(0x1bc)]())throw CliErrors[_0x338e9d(0x1a6)](_0x338e9d(0x1f6),_0x338e9d(0x1bf));const _0x3bb783=['id','recursive',_0x338e9d(0x1e0),_0x338e9d(0x1f7),_0x338e9d(0x1f1),_0x338e9d(0x213)][_0x338e9d(0x204)](_0x1119d8=>hasFlag(_0x3893ab,_0x1119d8));if(_0x3bb783[_0x338e9d(0x1bb)]>0x0)throw CliErrors[_0x338e9d(0x1ae)](_0x338e9d(0x1ce)+_0x3bb783[_0x338e9d(0x1b9)](_0x65e90a=>'--'+_0x65e90a)[_0x338e9d(0x1af)](',\x20')+'.');}async function buildDeletePlan(_0x469a8b){const _0x567b8b=a152_0x367c41,_0x49ee94=validateExactId(_0x469a8b),_0x57c282=await fetchMutationSnapshot(_0x469a8b,_0x567b8b(0x1a8),_0x49ee94),_0x12d65e=requireMenu(_0x57c282,_0x49ee94);assertExpectedState(_0x469a8b,_0x12d65e);const _0xf42f1c=_0x469a8b[_0x567b8b(0x1a3)](_0x567b8b(0x20f));let _0x41076d;if(_0xf42f1c){if(_0x12d65e['type'][_0x567b8b(0x1bc)]()[_0x567b8b(0x1ff)]()!==_0x567b8b(0x1cd))throw menuError(_0x567b8b(0x20a),'Menu\x20'+_0x12d65e['id']+'\x20is\x20type\x20\x22'+(_0x12d65e['type']||_0x567b8b(0x214))+_0x567b8b(0x20b));_0x41076d=collectDeleteTargets(_0x57c282,_0x12d65e),_0x41076d['forEach'](_0x890d0b=>assertDeleteSafety(_0x890d0b,!![]));}else assertDeleteSafety(_0x12d65e),_0x41076d=[_0x12d65e];assertNoSharedPages(_0x57c282,_0x41076d);const _0x3fbbea=_0x41076d['map'](_0x1e5664=>_0x1e5664['id']),_0x13209a=cascadeForTargets(_0x41076d),_0x5cc050=_0x13209a[_0x567b8b(0x1d9)][_0x567b8b(0x1bb)]>0x0?[_0x567b8b(0x1f3)]:[];return mutationResult({'operation':'delete','selector':{'id':_0x49ee94,'recursive':_0xf42f1c},'before':_0x12d65e,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x567b8b(0x1cb),'method':'POST','path':'/smartapi/menu/batchDelete','body':{'idList':_0x3fbbea}}],'targets':_0x41076d,'deleteOrder':_0x3fbbea,'snapshotHash':_0x57c282[_0x567b8b(0x1f4)],'cascade':_0x13209a,'warnings':_0x5cc050});}function assertDeleteSafety(_0x390dd7,_0x30b59d=![]){const _0x442ed1=a152_0x367c41,_0x25d2b4=_0x390dd7[_0x442ed1(0x1e3)][_0x442ed1(0x1bc)]()[_0x442ed1(0x1ff)]()==='folder';if(_0x390dd7[_0x442ed1(0x1b3)]>0x0&&(!_0x30b59d||!_0x25d2b4))throw menuError('menu_non_empty',_0x442ed1(0x1d6)+_0x390dd7['id']+_0x442ed1(0x1b1)+_0x390dd7[_0x442ed1(0x1b3)]+_0x442ed1(0x1ba),_0x442ed1(0x1d5)+_0x390dd7[_0x442ed1(0x1fe)][_0x442ed1(0x1af)](',\x20'));if(_0x25d2b4&&_0x390dd7[_0x442ed1(0x1db)]!=null)throw menuError('menu_delete_page_bound',_0x442ed1(0x1a5)+_0x390dd7['id']+'\x20is\x20unexpectedly\x20bound\x20to\x20page\x20'+_0x390dd7[_0x442ed1(0x1db)]+_0x442ed1(0x202),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x25d2b4)return;if(!_0x390dd7[_0x442ed1(0x1d3)])throw menuError(_0x442ed1(0x1ed),_0x442ed1(0x1a5)+_0x390dd7['id']+_0x442ed1(0x211),_0x442ed1(0x1cc));if(_0x390dd7[_0x442ed1(0x1ac)][_0x442ed1(0x1bb)]>0x0)throw menuError('menu_folder_has_resources','Folder\x20'+_0x390dd7['id']+_0x442ed1(0x1e9)+_0x390dd7['resources'][_0x442ed1(0x1bb)]+'\x20resource\x20URL(s).','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function collectDeleteTargets(_0x718461,_0x24c07d){const _0x38c981=[],_0x206979=new Set(),_0x2610e5=new Set(),_0x457f24=_0x525557=>{const _0x10368e=a152_0x260f;if(_0x206979[_0x10368e(0x205)](_0x525557['id']))throw menuError('menu_tree_invalid',_0x10368e(0x215)+_0x525557['id']+'.');if(_0x2610e5[_0x10368e(0x205)](_0x525557['id']))return;_0x206979[_0x10368e(0x1f9)](_0x525557['id']);for(const _0x311cd7 of _0x525557[_0x10368e(0x1fe)]){const _0x583b83=_0x718461[_0x10368e(0x201)]['get'](_0x311cd7);if(!_0x583b83)throw menuError('menu_tree_invalid',_0x10368e(0x1d6)+_0x525557['id']+_0x10368e(0x1f5)+_0x311cd7+'.');_0x457f24(_0x583b83);}_0x206979[_0x10368e(0x1d7)](_0x525557['id']),_0x2610e5[_0x10368e(0x1f9)](_0x525557['id']),_0x38c981[_0x10368e(0x1a7)](_0x525557);};return _0x457f24(_0x24c07d),_0x38c981;}function assertDeleteTargetsComplete(_0x4212c4,_0x189daa){const _0x448dc5=a152_0x367c41,_0x3a94bf=requireMenu(_0x189daa,_0x4212c4[_0x448dc5(0x19d)]['id']);if(_0x4212c4[_0x448dc5(0x20f)]&&_0x3a94bf[_0x448dc5(0x1e3)][_0x448dc5(0x1bc)]()[_0x448dc5(0x1ff)]()!==_0x448dc5(0x1cd))throw menuError(_0x448dc5(0x200),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x3a94bf['id']+'\x20is\x20not\x20a\x20folder.');const _0x1df162=_0x4212c4['recursive']?collectDeleteTargets(_0x189daa,_0x3a94bf)[_0x448dc5(0x1b9)](_0x59c035=>_0x59c035['id']):[_0x3a94bf['id']];if(JSON[_0x448dc5(0x1e1)](_0x4212c4[_0x448dc5(0x1a1)])!==JSON['stringify'](_0x1df162))throw menuError(_0x448dc5(0x200),_0x448dc5(0x1e4),_0x448dc5(0x1b2));}function assertNoSharedPages(_0x30674a,_0x50eeb3){const _0x28c480=a152_0x367c41,_0x3da54b=new Set(_0x50eeb3[_0x28c480(0x1b9)](_0x51910c=>_0x51910c['id'])),_0x376409=new Set(_0x50eeb3[_0x28c480(0x1b9)](_0x4d6bfc=>_0x4d6bfc[_0x28c480(0x1db)])['filter'](_0xbbcf11=>_0xbbcf11!=null));if(_0x376409[_0x28c480(0x1fb)]===0x0)return;const _0x8a9dce=_0x30674a['menus'][_0x28c480(0x204)](_0x1df556=>!_0x3da54b['has'](_0x1df556['id'])&&_0x1df556[_0x28c480(0x1db)]!=null&&_0x376409[_0x28c480(0x205)](_0x1df556['pageId']));if(_0x8a9dce[_0x28c480(0x1bb)]===0x0)return;const _0x3e1304=_0x8a9dce[_0x28c480(0x1b9)](_0x2ec2e3=>_0x28c480(0x1e7)+_0x2ec2e3[_0x28c480(0x1db)]+_0x28c480(0x1b5)+_0x2ec2e3['id'])[_0x28c480(0x1af)](',\x20');throw menuError(_0x28c480(0x203),'Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x3e1304+'.',_0x28c480(0x1ca));}function a152_0x2270(){const _0xfe99c9=['\x20has\x20','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','childrenCount','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','\x20->\x20menu\x20','5542836jbItOa','Post-failure\x20menu\x20readback\x20failed\x20(','verification','map','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','length','trim','9344224SOJGUB','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','4496574hfyayo','verify\x20batch\x20delete','19LXxHsC','dry-run','path','appCode','forEach','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','192MjkHFF','1015965IgAMvw','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','batch-delete-menu','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','folder','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','string','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','selector','resourcesValid','):\x20','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','Menu\x20','delete','5495634XwThDl','pages','boolean','pageId','str',';\x20execution\x20must\x20consume\x20','pre-write-plan-validation','batch-delete','plan-out','stringify','high-risk-write','type','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','/smartapi/menu/batchDelete','page\x20','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','\x20still\x20references\x20','229117nWlFqW','unconfirmed','indexOf','menu_folder_resources_invalid','101748icrPOR','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','snapshot','expect-path','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','hash','\x20references\x20missing\x20child\x20','plan','expect-parent-id','absentIds','add','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','size','Deleted\x20','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','childrenIds','toLowerCase','menu_plan_invalid','byId','\x20and\x20cannot\x20be\x20deleted\x20safely.','menu_page_shared','filter','has','rabetbase\x20menu\x20list\x20--format\x20json','causeMessage','Batch\x20delete\x20request\x20for\x20menu\x20','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','menu_recursive_requires_folder','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','remainingIds','cascade','menu\x20list','recursive','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','Would\x20batch\x20delete\x20','expected-children-count','unknown','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','target','menu_verification_failed','POST','cookie','deleteOrder','expiresAt','bool','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','Folder\x20','flagMissing','push','plan\x20delete','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','causeCode','resources','plan-validation','validation','join','batch\x20delete'];a152_0x2270=function(){return _0xfe99c9;};return a152_0x2270();}function assertCascadeMatchesPlan(_0xd64b31,_0x21d1f7){const _0x57552e=a152_0x367c41,_0x4712d9=cascadeForTargets(_0x21d1f7);if(JSON[_0x57552e(0x1e1)](_0xd64b31[_0x57552e(0x20d)])!==JSON['stringify'](_0x4712d9))throw menuError(_0x57552e(0x200),_0x57552e(0x1cf));}function cascadeForTargets(_0x1d100c){const _0x47c56b=a152_0x367c41,_0x3a7c5c=_0x1d100c[_0x47c56b(0x1b9)](_0x47cfa4=>_0x47cfa4[_0x47c56b(0x1db)])['filter'](_0x5ed406=>_0x5ed406!=null)[_0x47c56b(0x204)]((_0x5e4b19,_0x129569,_0x4d6a0d)=>_0x4d6a0d[_0x47c56b(0x1ec)](_0x5e4b19)===_0x129569);return{'pages':_0x3a7c5c,'pageSchemaAffected':_0x3a7c5c[_0x47c56b(0x1bb)]>0x0};}function asMenuError(_0x5da970){return _0x5da970 instanceof CliError?_0x5da970:menuError('menu_plan_invalid',_0x5da970 instanceof Error?_0x5da970['message']:String(_0x5da970));}
@@ -1 +1 @@
1
- const a153_0x4c423e=a153_0x138b;(function(_0x5b14ff,_0x3ab1fe){const _0x20e319=a153_0x138b,_0x3a95cd=_0x5b14ff();while(!![]){try{const _0x52441f=-parseInt(_0x20e319(0xa9))/0x1*(parseInt(_0x20e319(0xa4))/0x2)+-parseInt(_0x20e319(0xd0))/0x3+parseInt(_0x20e319(0x75))/0x4*(-parseInt(_0x20e319(0xb0))/0x5)+parseInt(_0x20e319(0xd4))/0x6+-parseInt(_0x20e319(0xc8))/0x7+-parseInt(_0x20e319(0xe2))/0x8*(parseInt(_0x20e319(0x73))/0x9)+parseInt(_0x20e319(0xd9))/0xa;if(_0x52441f===_0x3ab1fe)break;else _0x3a95cd['push'](_0x3a95cd['shift']());}catch(_0x17c5df){_0x3a95cd['push'](_0x3a95cd['shift']());}}}(a153_0x599d,0x4cc5b));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':a153_0x4c423e(0xe7),'new-window':a153_0x4c423e(0x98)};function a153_0x599d(){const _0x308321=['Created\x20menu\x20','5cYerHG','menu_mutation_failed','How\x20to\x20open\x20the\x20external\x20website','URL','menu_state_drift','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','path','Run\x20','currentSnapshotHash','str','menu_not_found','Recovered\x20created\x20external\x20menu\x20','flagMissing','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','menu_url_invalid','<platform-generated>','/smartapi/menu/create','expectedSnapshotHash','hash','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','recovered','body','menu_create_recovery_required','1341193nVZbhg','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','expectedPath','new-window','trim','succeeded','appCode','375141QkLBNp','menu_permission_denied','map','cause','3020298WdSSGV','\x20has\x20an\x20unexpected\x20generated\x20path.','data','length','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','9885290uNckur','menu_parent_not_folder','label','Would\x20create\x20external\x20website\x20link\x20menu\x20','code','menu','\x27\x5c\x27\x27','menu_open_mode_invalid','Menu\x20','15112NpeODX','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','\x20has\x20an\x20unexpected\x20','password','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','iframe','selector','create-recovery','object','parent','after','create\x20external\x20menu','prototype','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','<redacted>','cookie','sort','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','isSafeInteger','plan','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','45rVdAHh','menu_url_credentials_forbidden','938992wkqxNr','External\x20menu\x20creation\x20failed.','Recovered\x20menu\x20','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','toLowerCase','protocol','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','menu_verification_failed','external-link-create','menu\x20list','before','call','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','afterPlan','failed','filter','get','create','POST','\x20after\x20response\x20loss.','lookupCommand','menu_sort_overflow','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','fact','open-mode','parentId','string','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','readbackerror','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','menus','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','embedded','isArray','link','causemessage','type','visible','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','menu_url_https_required','has','includes','\x20--format\x20compress','url','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','411076zQypUa','createdId','Menu\x20label','visibility','https:','3joIWBX','verification','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','menu_sort_invalid','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','byId'];a153_0x599d=function(){return _0x308321;};return a153_0x599d();}export function validateExternalMenuUrl(_0x172f29){const _0x5b039a=a153_0x4c423e,_0x55172f=_0x172f29[_0x5b039a(0xcd)]();let _0x590fb7;try{_0x590fb7=new URL(_0x55172f);}catch{throw menuError(_0x5b039a(0xbf),_0x5b039a(0xe6),_0x5b039a(0xd8));}if(_0x590fb7[_0x5b039a(0x7a)]!==_0x5b039a(0xa8))throw menuError(_0x5b039a(0x9d),_0x5b039a(0xca),'Provide\x20an\x20HTTPS\x20URL.');if(_0x590fb7['username']||_0x590fb7[_0x5b039a(0xe5)])throw menuError(_0x5b039a(0x74),_0x5b039a(0x92),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x55172f;}export const menuExternalLinkCreate={'service':a153_0x4c423e(0xde),'command':a153_0x4c423e(0x7d),'description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':'write','structuredErrors':!![],'flags':[{'name':a153_0x4c423e(0xdb),'type':'string','required':!![],'description':a153_0x4c423e(0xa6)},{'name':a153_0x4c423e(0x8d),'type':a153_0x4c423e(0x8f),'required':!![],'enum':[a153_0x4c423e(0x96),a153_0x4c423e(0xcc)],'description':a153_0x4c423e(0xb2)},{'name':a153_0x4c423e(0xa1),'type':a153_0x4c423e(0x8f),'required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a153_0x4c423e(0x9b),'type':'boolean','default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x166c8f){validateAddInput(_0x166c8f);},async 'dryRun'(_0x5d7c9c){const _0x1ad7d5=a153_0x4c423e;validateAddInput(_0x5d7c9c);const {plan:_0x56af40}=await buildSafeAddPlan(_0x5d7c9c,!![]),_0x4ccb23=_0x56af40['after'],_0x4a1d24=createBody(_0x4ccb23);return menuDryRunResult(_0x56af40,{'method':_0x1ad7d5(0x87),'url':_0x1ad7d5(0xc1),'body':_0x4a1d24,'description':_0x1ad7d5(0xdc)+JSON['stringify'](_0x4ccb23['label'])+'\x20with\x20'+_0x5d7c9c['str'](_0x1ad7d5(0x8d))+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x14bd01){const _0xf79aa=a153_0x4c423e;validateAddInput(_0x14bd01);const _0x3de151=await buildSafeAddPlan(_0x14bd01,![]),{plan:_0x4b291d,snapshot:_0xc4143a}=_0x3de151,_0x4f9bfa=_0x4b291d[_0xf79aa(0xec)],_0x1c3953=buildMenuLookupCommand(_0x14bd01[_0xf79aa(0xcf)]);await recheckAddSnapshot(_0x14bd01,_0x4b291d);let _0x1c045f;try{_0x1c045f=await createMenuEntity(_0x14bd01[_0xf79aa(0xcf)],_0x14bd01[_0xf79aa(0x6b)],createBody(_0x4f9bfa));}catch(_0x3d2c78){const _0x57b7ef=mapMenuApiError(_0x3d2c78,_0xf79aa(0xed));if(!isMenuResponseLoss(_0x3d2c78)||_0x57b7ef[_0xf79aa(0xdd)]===_0xf79aa(0xd1))throw externalLinkCreateFailure(_0x57b7ef,_0x4b291d,{'stage':_0xf79aa(0x86),'failed':{},'verification':{'status':'failed','lookupCommand':_0x1c3953}});return recoverAfterResponseLoss(_0x14bd01,_0x3de151,_0x1c3953);}const _0x19273a=Number(_0x1c045f?.['id']),_0x210150=typeof _0x1c045f?.[_0xf79aa(0xb6)]==='string'?_0x1c045f['path']:'';if(!Number[_0xf79aa(0x6f)](_0x19273a)||_0x19273a<=0x0||!_0x210150['trim']()){const _0x31658a=menuError('menu_create_response_invalid','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.',_0xf79aa(0xb7)+_0x1c3953+_0xf79aa(0xa2));throw externalLinkCreateFailure(_0x31658a,_0x4b291d,{'stage':'create-response-validation','succeeded':Number[_0xf79aa(0x6f)](_0x19273a)&&_0x19273a>0x0?[{'id':_0x19273a,'created':!![]}]:[],'failed':{'createdId':Number[_0xf79aa(0x6f)](_0x19273a)?_0x19273a:null,'generatedPathConfirmed':Boolean(_0x210150[_0xf79aa(0xcd)]())},'warnings':[_0xf79aa(0x81)],'after':Number['isSafeInteger'](_0x19273a)&&_0x19273a>0x0?{..._0x4f9bfa,'id':_0x19273a,'path':_0x210150}:_0x4f9bfa,'verification':{'status':_0xf79aa(0x83),'lookupCommand':_0x1c3953,...Number[_0xf79aa(0x6f)](_0x19273a)&&_0x19273a>0x0?{'targetId':_0x19273a}:{}}});}const _0x4a5f5d=await readAndVerifyCreatedMenu({'appCode':_0x14bd01[_0xf79aa(0xcf)],'cookie':_0x14bd01[_0xf79aa(0x6b)],'plan':_0x4b291d,'afterPlan':_0x4f9bfa,'createdId':_0x19273a,'expectedPath':_0x210150,'lookupCommand':_0x1c3953,'recovered':![]});return creationSuccess(_0x4b291d,_0x4a5f5d['snapshot'],_0x4a5f5d[_0xf79aa(0x8c)],![]);}};function validateAddInput(_0x26983d){const _0x550d60=a153_0x4c423e;if(!_0x26983d[_0x550d60(0xb9)](_0x550d60(0xdb))[_0x550d60(0xcd)]())throw CliErrors['flagMissing'](_0x550d60(0xdb));resolveExternalMenuType(_0x26983d),validateExternalMenuUrl(_0x26983d[_0x550d60(0xb9)]('url')),parseParentId(_0x26983d,'parent-id'),validateSort(_0x26983d);}function resolveExternalMenuType(_0x722cb3){const _0x5ca960=a153_0x4c423e,_0x5347cb=_0x722cb3[_0x5ca960(0xb9)](_0x5ca960(0x8d))[_0x5ca960(0xcd)]();if(!_0x5347cb)throw CliErrors[_0x5ca960(0xbc)](_0x5ca960(0x8d));const _0x5a35c8=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x5347cb];if(!_0x5a35c8)throw menuError(_0x5ca960(0xe0),_0x5ca960(0xad),_0x5ca960(0x6e));return _0x5a35c8;}async function buildAddPlan(_0x39cff3,_0x24dd90){const _0x3ff2d0=a153_0x4c423e,_0x1508de=await fetchMutationSnapshot(_0x39cff3,_0x3ff2d0(0xed)),_0x2c57b5=parseParentId(_0x39cff3,'parent-id')??null;if(_0x2c57b5!=null)requireFolder(_0x1508de,_0x2c57b5);const _0x28e68a=validateSort(_0x39cff3),_0x1df42f=_0x28e68a??nextSiblingSort(_0x1508de,_0x2c57b5,_0x3ff2d0(0xde)),_0x1174dd=_0x39cff3[_0x3ff2d0(0xb9)](_0x3ff2d0(0xdb))[_0x3ff2d0(0xcd)](),_0x3df0e5=resolveExternalMenuType(_0x39cff3),_0x109214=validateExternalMenuUrl(_0x39cff3[_0x3ff2d0(0xb9)]('url')),_0xe8008b=Object[_0x3ff2d0(0x68)]['hasOwnProperty'][_0x3ff2d0(0x80)](_0x39cff3['rawFlags'],_0x3ff2d0(0x9b))?_0x39cff3['bool'](_0x3ff2d0(0x9b)):!![],_0xe59ca2={'id':null,'parentId':_0x2c57b5,'label':_0x1174dd,'path':_0x3ff2d0(0xc0),'url':_0x109214,'type':_0x3df0e5,'visible':_0xe8008b,'sort':_0x1df42f},_0x481004=buildMenuLookupCommand(_0x39cff3['appCode']),_0x550ec4=mutationResult({'operation':'add','selector':{'parentId':_0x2c57b5,'type':_0x3df0e5,'label':_0x1174dd,'url':_0x109214},'before':null,'after':_0xe59ca2,'dryRun':_0x24dd90,'backend':[{'method':_0x3ff2d0(0x87),'path':_0x3ff2d0(0xc1)}],'plannedActions':[{'stage':'create-menu','method':_0x3ff2d0(0x87),'path':'/smartapi/menu/create','body':createBody(_0xe59ca2)}],'snapshotHash':_0x1508de[_0x3ff2d0(0xc3)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x481004}});return{'plan':_0x550ec4,'snapshot':_0x1508de};}async function buildSafeAddPlan(_0x21d9f4,_0x41a411){try{return await buildAddPlan(_0x21d9f4,_0x41a411);}catch(_0x552a1f){throw safeMenuAddError(_0x552a1f);}}async function recheckAddSnapshot(_0x5ae97f,_0x4b9b95){const _0x509e8b=a153_0x4c423e;try{await recheckMutationSnapshot(_0x5ae97f,_0x4b9b95,'create\x20external\x20menu');}catch(_0x21eb95){const _0x2dbbd4=getFailureRecord(_0x21eb95);throw externalLinkCreateFailure(_0x21eb95,_0x4b9b95,{'stage':'pre-write-recheck','failed':{..._0x2dbbd4?.[_0x509e8b(0xc2)]?{'expectedSnapshotHash':_0x2dbbd4['expectedSnapshotHash']}:{},..._0x2dbbd4?.[_0x509e8b(0xb8)]?{'currentSnapshotHash':_0x2dbbd4['currentSnapshotHash']}:{}}});}}function createBody(_0x5c3503){const _0x2e1956=a153_0x4c423e;return{'parentId':toApiParentId(_0x5c3503[_0x2e1956(0x8e)]),'label':String(_0x5c3503[_0x2e1956(0xdb)]),'type':String(_0x5c3503[_0x2e1956(0x9a)]),'url':String(_0x5c3503[_0x2e1956(0xa1)]),'visible':Boolean(_0x5c3503[_0x2e1956(0x9b)]),'sort':Number(_0x5c3503[_0x2e1956(0x6c)]),'extend':{}};}function buildMenuLookupCommand(_0x32d758){const _0x2cf207=a153_0x4c423e,_0x1c5fa7='\x27'+_0x32d758['replace'](/'/g,_0x2cf207(0xdf))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x1c5fa7+_0x2cf207(0xa0);}async function recoverAfterResponseLoss(_0x28e6a8,_0xaba8d4,_0x3684ce){const _0x3f08ce=a153_0x4c423e,{plan:_0x4d5b10,snapshot:_0x500f27}=_0xaba8d4,_0x5ac113=_0x4d5b10[_0x3f08ce(0xec)];let _0x2feffa;try{_0x2feffa=await fetchMenuSnapshot(_0x28e6a8[_0x3f08ce(0xcf)],_0x28e6a8[_0x3f08ce(0x6b)]);}catch(_0x4ff517){throw recoveryRequiredFailure(_0x4d5b10,_0x3684ce,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x3d96c5=_0x2feffa[_0x3f08ce(0x93)][_0x3f08ce(0x84)](_0x410f53=>_0x410f53[_0x3f08ce(0x8e)]===_0x5ac113[_0x3f08ce(0x8e)]&&_0x410f53[_0x3f08ce(0x9a)]===_0x5ac113[_0x3f08ce(0x9a)]&&_0x410f53[_0x3f08ce(0xdb)]===_0x5ac113['label']&&_0x410f53['url']===_0x5ac113[_0x3f08ce(0xa1)]),_0x30fbd6=_0x3d96c5[_0x3f08ce(0x84)](_0x1086f1=>!_0x500f27[_0x3f08ce(0xae)]['has'](_0x1086f1['id'])),_0x42dcb5=_0x3d96c5[_0x3f08ce(0x84)](_0xef575f=>_0x500f27['byId'][_0x3f08ce(0x9e)](_0xef575f['id']));if(_0x3d96c5[_0x3f08ce(0xd7)]!==0x1||_0x30fbd6[_0x3f08ce(0xd7)]!==0x1)throw recoveryRequiredFailure(_0x4d5b10,_0x3684ce,{'matchCount':_0x3d96c5[_0x3f08ce(0xd7)],'newMatchCount':_0x30fbd6[_0x3f08ce(0xd7)],'preexistingMatchCount':_0x42dcb5[_0x3f08ce(0xd7)]});const _0x17b5ba=_0x30fbd6[0x0];try{verifyCreatedFact(_0x17b5ba,_0x17b5ba['id'],_0x5ac113,null);}catch(_0x1aae23){const _0x2a8f92=_0x1aae23 instanceof Error&&_0x3f08ce(0xdd)in _0x1aae23?_0x1aae23:menuError(_0x3f08ce(0x7c),_0x3f08ce(0x77)+_0x17b5ba['id']+'\x20could\x20not\x20be\x20verified.',_0x3f08ce(0xb7)+_0x3684ce+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x2a8f92,_0x4d5b10,{'stage':'verification','succeeded':[{'id':_0x17b5ba['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x17b5ba['id'],'finalFactsConfirmed':![]},'after':_0x17b5ba,'warnings':[_0x3f08ce(0xe1)+_0x17b5ba['id']+_0x3f08ce(0x78)],'verification':{'status':_0x3f08ce(0x83),'targetId':_0x17b5ba['id'],'recovered':!![],'lookupCommand':_0x3684ce}});}return creationSuccess(_0x4d5b10,_0x2feffa,_0x17b5ba,!![]);}function recoveryRequiredFailure(_0x5e39af,_0x589476,_0x172c89){const _0x2dc7bd=a153_0x4c423e,_0x48c46a=menuError(_0x2dc7bd(0xc7),_0x2dc7bd(0xab),_0x2dc7bd(0xb7)+_0x589476+_0x2dc7bd(0xbe));return externalLinkCreateFailure(_0x48c46a,_0x5e39af,{'stage':_0x2dc7bd(0xe9),'failed':_0x172c89,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x2dc7bd(0x83),..._0x172c89,'lookupCommand':_0x589476}});}async function readAndVerifyCreatedMenu(_0x5aed8d){const _0x140362=a153_0x4c423e;let _0x4020f2;try{_0x4020f2=await fetchMenuSnapshot(_0x5aed8d[_0x140362(0xcf)],_0x5aed8d[_0x140362(0x6b)]);}catch(_0x36c5dc){const _0x184d4b=menuError(_0x140362(0x7c),_0x140362(0xe1)+_0x5aed8d['createdId']+_0x140362(0xbd),_0x140362(0xb7)+_0x5aed8d[_0x140362(0x89)]+_0x140362(0xb5));throw externalLinkCreateFailure(_0x184d4b,_0x5aed8d[_0x140362(0x70)],{'stage':_0x140362(0xaa),'succeeded':[{'id':_0x5aed8d[_0x140362(0xa5)],'created':!![]}],'failed':{'id':_0x5aed8d[_0x140362(0xa5)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x5aed8d[_0x140362(0x82)],'id':_0x5aed8d['createdId'],'path':_0x5aed8d[_0x140362(0xcb)]},'warnings':[_0x140362(0xe1)+_0x5aed8d['createdId']+_0x140362(0x8b)],'verification':{'status':_0x140362(0x83),'targetId':_0x5aed8d['createdId'],'lookupCommand':_0x5aed8d[_0x140362(0x89)]}});}const _0x4b8a81=_0x4020f2[_0x140362(0xae)][_0x140362(0x85)](_0x5aed8d[_0x140362(0xa5)]);try{if(!_0x4b8a81)throw menuError('menu_verification_failed',_0x140362(0xaf)+_0x5aed8d[_0x140362(0xa5)]+_0x140362(0x94),_0x140362(0xb7)+_0x5aed8d[_0x140362(0x89)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x4b8a81,_0x5aed8d['createdId'],_0x5aed8d[_0x140362(0x82)],_0x5aed8d['expectedPath']);}catch(_0x52ec32){const _0x45c6ab=_0x52ec32 instanceof Error&&_0x140362(0xdd)in _0x52ec32?_0x52ec32:menuError(_0x140362(0x7c),_0x140362(0xaf)+_0x5aed8d[_0x140362(0xa5)]+'\x20failed\x20final\x20verification.',_0x140362(0xb7)+_0x5aed8d['lookupCommand']+_0x140362(0xb5));throw externalLinkCreateFailure(_0x45c6ab,_0x5aed8d[_0x140362(0x70)],{'stage':'verification','succeeded':[{'id':_0x5aed8d[_0x140362(0xa5)],'created':!![]}],'failed':{'id':_0x5aed8d[_0x140362(0xa5)],'finalFactsConfirmed':![]},'after':_0x4b8a81??{..._0x5aed8d[_0x140362(0x82)],'id':_0x5aed8d[_0x140362(0xa5)],'path':_0x5aed8d[_0x140362(0xcb)]},'warnings':['Menu\x20'+_0x5aed8d[_0x140362(0xa5)]+_0x140362(0x95)],'verification':{'status':_0x140362(0x83),'targetId':_0x5aed8d[_0x140362(0xa5)],'recovered':_0x5aed8d[_0x140362(0xc5)],'lookupCommand':_0x5aed8d['lookupCommand']}});}return{'snapshot':_0x4020f2,'fact':_0x4b8a81};}function verifyCreatedFact(_0x17ac0a,_0x141e8f,_0x413dfd,_0x40f953){const _0x5b2931=a153_0x4c423e;if(!Number['isSafeInteger'](_0x17ac0a['id'])||_0x17ac0a['id']<=0x0||_0x17ac0a['id']!==_0x141e8f)throw menuError('menu_verification_failed',_0x5b2931(0x9c),_0x5b2931(0xc9));const _0x239ecb=[[_0x5b2931(0xeb),_0x17ac0a[_0x5b2931(0x8e)],_0x413dfd[_0x5b2931(0x8e)]],['type',_0x17ac0a[_0x5b2931(0x9a)],_0x413dfd[_0x5b2931(0x9a)]],[_0x5b2931(0xdb),_0x17ac0a[_0x5b2931(0xdb)],_0x413dfd[_0x5b2931(0xdb)]],[_0x5b2931(0xb3),_0x17ac0a[_0x5b2931(0xa1)],_0x413dfd['url']],[_0x5b2931(0xa7),_0x17ac0a[_0x5b2931(0x9b)],_0x413dfd[_0x5b2931(0x9b)]],[_0x5b2931(0x6c),_0x17ac0a['sort'],_0x413dfd[_0x5b2931(0x6c)]]];for(const [_0x4e3da0,_0x5954bc,_0x3e4c25]of _0x239ecb){if(_0x5954bc!==_0x3e4c25)throw menuError(_0x5b2931(0x7c),_0x5b2931(0xaf)+_0x17ac0a['id']+_0x5b2931(0xe4)+_0x4e3da0+'.',_0x5b2931(0xc4));}if(!_0x17ac0a['path'][_0x5b2931(0xcd)]()||_0x40f953!==null&&_0x17ac0a[_0x5b2931(0xb6)]!==_0x40f953)throw menuError(_0x5b2931(0x7c),_0x5b2931(0xaf)+_0x17ac0a['id']+_0x5b2931(0xd5),'Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function creationSuccess(_0x166d61,_0x2acd02,_0x32a55b,_0x3510ab){const _0x20a255=a153_0x4c423e,_0x4dd206=mutationResult({..._0x166d61,'after':_0x32a55b,'dryRun':![],'succeeded':[{'id':_0x32a55b['id'],'created':!![],'recovered':_0x3510ab}],'verification':{'checkedBy':_0x20a255(0x7e),'snapshotHash':_0x2acd02[_0x20a255(0xc3)],'targetId':_0x32a55b['id'],'recovered':_0x3510ab,'path':_0x32a55b['path']}});return{'ok':!![],'message':_0x3510ab?_0x20a255(0xbb)+_0x32a55b['id']+_0x20a255(0x88):'Created\x20external\x20menu\x20'+_0x32a55b['id']+'.','data':{..._0x4dd206,'recovered':_0x3510ab}};}function externalLinkCreateFailure(_0xcb7432,_0x51e642,_0x18e734){const _0x3edb1a=a153_0x4c423e;return menuFailure(safeMenuAddError(_0xcb7432),redactFailurePlan(_0x51e642),{..._0x18e734,'succeeded':_0x18e734['succeeded']?.[_0x3edb1a(0xd2)](redactFailureRecord),'failed':_0x18e734[_0x3edb1a(0x83)]?redactFailureRecord(_0x18e734[_0x3edb1a(0x83)]):undefined,'verification':_0x18e734[_0x3edb1a(0xaa)]?redactFailureRecord(_0x18e734[_0x3edb1a(0xaa)]):undefined,'after':_0x18e734['after']===undefined?undefined:redactFailureValue(_0x18e734['after'])});}function redactFailurePlan(_0x42b64b){const _0x446723=a153_0x4c423e;return{..._0x42b64b,'selector':redactFailureRecord(_0x42b64b[_0x446723(0xe8)]),'before':redactFailureValue(_0x42b64b[_0x446723(0x7f)]),'after':redactFailureValue(_0x42b64b[_0x446723(0xec)]),'plannedActions':_0x42b64b['plannedActions']?.[_0x446723(0xd2)](_0x19db2d=>({..._0x19db2d,'body':redactFailureRecord(_0x19db2d[_0x446723(0xc6)])})),'succeeded':_0x42b64b[_0x446723(0xce)]['map'](redactFailureRecord),'failed':_0x42b64b[_0x446723(0x83)][_0x446723(0xd2)](redactFailureRecord),'verification':_0x42b64b['verification']?redactFailureRecord(_0x42b64b['verification']):undefined};}function redactFailureRecord(_0xcad5f5){return redactFailureValue(_0xcad5f5);}function redactFailureValue(_0x29281b,_0x5bab86=''){const _0x1e0c8d=a153_0x4c423e,_0x1bd759=_0x5bab86[_0x1e0c8d(0x79)]()['replace'](/[^a-z0-9]/g,'');if([_0x1e0c8d(0xd3),_0x1e0c8d(0x99),_0x1e0c8d(0x91),'rawerror'][_0x1e0c8d(0x9f)](_0x1bd759))return _0x1e0c8d(0x6a);if(Array['isArray'](_0x29281b))return _0x29281b['map'](_0x11ec5b=>redactFailureValue(_0x11ec5b));if(_0x29281b&&typeof _0x29281b===_0x1e0c8d(0xea))return Object['fromEntries'](Object['entries'](_0x29281b)[_0x1e0c8d(0xd2)](([_0x4917b8,_0x1b994a])=>[_0x4917b8,redactFailureValue(_0x1b994a,_0x4917b8)]));return _0x29281b;}function safeMenuAddError(_0x473809){const _0x26021a=a153_0x4c423e,_0x27ef86=_0x473809 instanceof CliError?_0x473809[_0x26021a(0xdd)]:_0x26021a(0xb1);switch(_0x27ef86){case _0x26021a(0xb4):return menuError(_0x27ef86,_0x26021a(0x69),_0x26021a(0x7b));case'menu_permission_denied':return menuError(_0x27ef86,_0x26021a(0x71),_0x26021a(0xe3));case'menu_create_response_invalid':return menuError(_0x27ef86,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x26021a(0xa3));case _0x26021a(0x7c):return menuError(_0x27ef86,_0x26021a(0x90),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_create_recovery_required':return menuError(_0x27ef86,_0x26021a(0x6d),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x26021a(0xb1):case _0x26021a(0xba):case _0x26021a(0xda):case _0x26021a(0xac):case _0x26021a(0x8a):return menuError(_0x27ef86,'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0x26021a(0xb1),_0x26021a(0x76),_0x26021a(0x72));}}function a153_0x138b(_0x20b43f,_0x2156cd){_0x20b43f=_0x20b43f-0x68;const _0x599dde=a153_0x599d();let _0x138b6e=_0x599dde[_0x20b43f];return _0x138b6e;}function getFailureRecord(_0x1b075b){const _0x4bbb27=a153_0x4c423e;if(!(_0x1b075b instanceof Error)||!(_0x4bbb27(0xd6)in _0x1b075b))return undefined;const _0x3265fc=_0x1b075b[_0x4bbb27(0xd6)];if(!_0x3265fc||typeof _0x3265fc!==_0x4bbb27(0xea))return undefined;const _0x42ea7c=_0x3265fc[_0x4bbb27(0x83)];if(!Array[_0x4bbb27(0x97)](_0x42ea7c)||!_0x42ea7c[0x0]||typeof _0x42ea7c[0x0]!==_0x4bbb27(0xea))return undefined;return _0x42ea7c[0x0];}
1
+ const a153_0x39bc34=a153_0x1708;(function(_0x468a1d,_0x2539c){const _0x2c1adc=a153_0x1708,_0x557e87=_0x468a1d();while(!![]){try{const _0x1794de=parseInt(_0x2c1adc(0x203))/0x1*(parseInt(_0x2c1adc(0x1bf))/0x2)+-parseInt(_0x2c1adc(0x1b1))/0x3*(-parseInt(_0x2c1adc(0x1fb))/0x4)+parseInt(_0x2c1adc(0x1fe))/0x5*(parseInt(_0x2c1adc(0x1b9))/0x6)+parseInt(_0x2c1adc(0x1ff))/0x7*(parseInt(_0x2c1adc(0x1e4))/0x8)+-parseInt(_0x2c1adc(0x198))/0x9*(parseInt(_0x2c1adc(0x224))/0xa)+parseInt(_0x2c1adc(0x1d7))/0xb*(-parseInt(_0x2c1adc(0x19f))/0xc)+-parseInt(_0x2c1adc(0x1a0))/0xd;if(_0x1794de===_0x2539c)break;else _0x557e87['push'](_0x557e87['shift']());}catch(_0x4f501c){_0x557e87['push'](_0x557e87['shift']());}}}(a153_0x2d2f,0x6f6ba));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':a153_0x39bc34(0x1c7),'new-window':a153_0x39bc34(0x1b7)};function a153_0x1708(_0x4c922b,_0x5e1cca){_0x4c922b=_0x4c922b-0x198;const _0x2d2f17=a153_0x2d2f();let _0x1708aa=_0x2d2f17[_0x4c922b];return _0x1708aa;}export function validateExternalMenuUrl(_0x53784e){const _0x302d49=a153_0x39bc34,_0x1aa062=_0x53784e[_0x302d49(0x1e5)]();let _0x1f53f8;try{_0x1f53f8=new URL(_0x1aa062);}catch{throw menuError('menu_url_invalid',_0x302d49(0x1c8),_0x302d49(0x1cb));}if(_0x1f53f8[_0x302d49(0x1a5)]!==_0x302d49(0x1b0))throw menuError('menu_url_https_required',_0x302d49(0x214),_0x302d49(0x199));if(_0x1f53f8['username']||_0x1f53f8[_0x302d49(0x218)])throw menuError('menu_url_credentials_forbidden','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x1aa062;}export const menuExternalLinkCreate={'service':a153_0x39bc34(0x1e8),'command':a153_0x39bc34(0x1be),'description':a153_0x39bc34(0x211),'risk':a153_0x39bc34(0x212),'structuredErrors':!![],'flags':[{'name':'label','type':a153_0x39bc34(0x200),'required':!![],'description':'Menu\x20label'},{'name':a153_0x39bc34(0x1df),'type':a153_0x39bc34(0x200),'required':!![],'enum':[a153_0x39bc34(0x226),'new-window'],'description':a153_0x39bc34(0x1c9)},{'name':a153_0x39bc34(0x217),'type':a153_0x39bc34(0x200),'required':!![],'description':a153_0x39bc34(0x1e1)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a153_0x39bc34(0x1a6),'type':a153_0x39bc34(0x1f1),'default':!![],'description':a153_0x39bc34(0x1d3)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x395622){validateAddInput(_0x395622);},async 'dryRun'(_0x284da5){const _0x11ec8b=a153_0x39bc34;validateAddInput(_0x284da5);const {plan:_0x2328a2}=await buildSafeAddPlan(_0x284da5,!![]),_0x38cfb7=_0x2328a2[_0x11ec8b(0x1ba)],_0x45752e=createBody(_0x38cfb7);return menuDryRunResult(_0x2328a2,{'method':_0x11ec8b(0x202),'url':_0x11ec8b(0x1b4),'body':_0x45752e,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON[_0x11ec8b(0x19c)](_0x38cfb7[_0x11ec8b(0x229)])+_0x11ec8b(0x1eb)+_0x284da5['str'](_0x11ec8b(0x1df))+_0x11ec8b(0x201)});},async 'execute'(_0x40d267){const _0x34d8ea=a153_0x39bc34;validateAddInput(_0x40d267);const _0x37ac0e=await buildSafeAddPlan(_0x40d267,![]),{plan:_0x214982,snapshot:_0x4ed2eb}=_0x37ac0e,_0x236a50=_0x214982[_0x34d8ea(0x1ba)],_0x283571=buildMenuLookupCommand(_0x40d267['appCode']);await recheckAddSnapshot(_0x40d267,_0x214982);let _0x46f45e;try{_0x46f45e=await createMenuEntity(_0x40d267[_0x34d8ea(0x1ce)],_0x40d267[_0x34d8ea(0x1d8)],createBody(_0x236a50));}catch(_0x3db881){const _0x3a015d=mapMenuApiError(_0x3db881,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x3db881)||_0x3a015d[_0x34d8ea(0x1e2)]===_0x34d8ea(0x1da))throw externalLinkCreateFailure(_0x3a015d,_0x214982,{'stage':_0x34d8ea(0x21d),'failed':{},'verification':{'status':'failed','lookupCommand':_0x283571}});return recoverAfterResponseLoss(_0x40d267,_0x37ac0e,_0x283571);}const _0x5d4e71=Number(_0x46f45e?.['id']),_0x2127ae=typeof _0x46f45e?.[_0x34d8ea(0x1f9)]===_0x34d8ea(0x200)?_0x46f45e[_0x34d8ea(0x1f9)]:'';if(!Number[_0x34d8ea(0x1f8)](_0x5d4e71)||_0x5d4e71<=0x0||!_0x2127ae[_0x34d8ea(0x1e5)]()){const _0x448c62=menuError(_0x34d8ea(0x1de),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Run\x20'+_0x283571+_0x34d8ea(0x1fa));throw externalLinkCreateFailure(_0x448c62,_0x214982,{'stage':_0x34d8ea(0x1ea),'succeeded':Number['isSafeInteger'](_0x5d4e71)&&_0x5d4e71>0x0?[{'id':_0x5d4e71,'created':!![]}]:[],'failed':{'createdId':Number[_0x34d8ea(0x1f8)](_0x5d4e71)?_0x5d4e71:null,'generatedPathConfirmed':Boolean(_0x2127ae[_0x34d8ea(0x1e5)]())},'warnings':[_0x34d8ea(0x20e)],'after':Number[_0x34d8ea(0x1f8)](_0x5d4e71)&&_0x5d4e71>0x0?{..._0x236a50,'id':_0x5d4e71,'path':_0x2127ae}:_0x236a50,'verification':{'status':'failed','lookupCommand':_0x283571,...Number[_0x34d8ea(0x1f8)](_0x5d4e71)&&_0x5d4e71>0x0?{'targetId':_0x5d4e71}:{}}});}const _0x1aa827=await readAndVerifyCreatedMenu({'appCode':_0x40d267[_0x34d8ea(0x1ce)],'cookie':_0x40d267[_0x34d8ea(0x1d8)],'plan':_0x214982,'afterPlan':_0x236a50,'createdId':_0x5d4e71,'expectedPath':_0x2127ae,'lookupCommand':_0x283571,'recovered':![]});return creationSuccess(_0x214982,_0x1aa827[_0x34d8ea(0x1bd)],_0x1aa827[_0x34d8ea(0x208)],![]);}};function validateAddInput(_0x4a7b7e){const _0x4085be=a153_0x39bc34;if(!_0x4a7b7e[_0x4085be(0x19b)](_0x4085be(0x229))[_0x4085be(0x1e5)]())throw CliErrors[_0x4085be(0x1a9)](_0x4085be(0x229));resolveExternalMenuType(_0x4a7b7e),validateExternalMenuUrl(_0x4a7b7e[_0x4085be(0x19b)](_0x4085be(0x217))),parseParentId(_0x4a7b7e,_0x4085be(0x1b2)),validateSort(_0x4a7b7e);}function resolveExternalMenuType(_0x3d9406){const _0x5becc1=a153_0x39bc34,_0x21e087=_0x3d9406[_0x5becc1(0x19b)](_0x5becc1(0x1df))[_0x5becc1(0x1e5)]();if(!_0x21e087)throw CliErrors[_0x5becc1(0x1a9)](_0x5becc1(0x1df));const _0xd6af6=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x21e087];if(!_0xd6af6)throw menuError(_0x5becc1(0x21a),_0x5becc1(0x1fd),_0x5becc1(0x1f7));return _0xd6af6;}async function buildAddPlan(_0x40161b,_0x37a025){const _0x6f84f9=a153_0x39bc34,_0x385d2a=await fetchMutationSnapshot(_0x40161b,_0x6f84f9(0x228)),_0x508e9b=parseParentId(_0x40161b,_0x6f84f9(0x1b2))??null;if(_0x508e9b!=null)requireFolder(_0x385d2a,_0x508e9b);const _0x146413=validateSort(_0x40161b),_0x24317e=_0x146413??nextSiblingSort(_0x385d2a,_0x508e9b,_0x6f84f9(0x1e8)),_0x2d4c85=_0x40161b[_0x6f84f9(0x19b)](_0x6f84f9(0x229))[_0x6f84f9(0x1e5)](),_0xc29c8f=resolveExternalMenuType(_0x40161b),_0x2cbebb=validateExternalMenuUrl(_0x40161b[_0x6f84f9(0x19b)](_0x6f84f9(0x217))),_0x53d57a=Object[_0x6f84f9(0x1c0)]['hasOwnProperty']['call'](_0x40161b[_0x6f84f9(0x221)],'visible')?_0x40161b[_0x6f84f9(0x215)](_0x6f84f9(0x1a6)):!![],_0x59a0e5={'id':null,'parentId':_0x508e9b,'label':_0x2d4c85,'path':'<platform-generated>','url':_0x2cbebb,'type':_0xc29c8f,'visible':_0x53d57a,'sort':_0x24317e},_0x69d2fb=buildMenuLookupCommand(_0x40161b['appCode']),_0x21d17d=mutationResult({'operation':_0x6f84f9(0x1a7),'selector':{'parentId':_0x508e9b,'type':_0xc29c8f,'label':_0x2d4c85,'url':_0x2cbebb},'before':null,'after':_0x59a0e5,'dryRun':_0x37a025,'backend':[{'method':_0x6f84f9(0x202),'path':'/smartapi/menu/create'}],'plannedActions':[{'stage':_0x6f84f9(0x1e3),'method':_0x6f84f9(0x202),'path':'/smartapi/menu/create','body':createBody(_0x59a0e5)}],'snapshotHash':_0x385d2a[_0x6f84f9(0x1ca)],'warnings':[_0x6f84f9(0x21e)],'verification':{'lookupCommand':_0x69d2fb}});return{'plan':_0x21d17d,'snapshot':_0x385d2a};}async function buildSafeAddPlan(_0x3d4cba,_0x1efce4){try{return await buildAddPlan(_0x3d4cba,_0x1efce4);}catch(_0x31f5ab){throw safeMenuAddError(_0x31f5ab);}}async function recheckAddSnapshot(_0x1c1f0f,_0xff6bf7){const _0x345842=a153_0x39bc34;try{await recheckMutationSnapshot(_0x1c1f0f,_0xff6bf7,'create\x20external\x20menu');}catch(_0xd05010){const _0x36b310=getFailureRecord(_0xd05010);throw externalLinkCreateFailure(_0xd05010,_0xff6bf7,{'stage':_0x345842(0x1a3),'failed':{..._0x36b310?.[_0x345842(0x22b)]?{'expectedSnapshotHash':_0x36b310[_0x345842(0x22b)]}:{},..._0x36b310?.[_0x345842(0x1b6)]?{'currentSnapshotHash':_0x36b310[_0x345842(0x1b6)]}:{}}});}}function createBody(_0x394b2c){const _0xcfa4ed=a153_0x39bc34;return{'parentId':toApiParentId(_0x394b2c[_0xcfa4ed(0x1b8)]),'label':String(_0x394b2c['label']),'type':String(_0x394b2c[_0xcfa4ed(0x1d2)]),'url':String(_0x394b2c[_0xcfa4ed(0x217)]),'visible':Boolean(_0x394b2c[_0xcfa4ed(0x1a6)]),'sort':Number(_0x394b2c['sort']),'extend':{}};}function buildMenuLookupCommand(_0x50b9c2){const _0x11c50f=a153_0x39bc34,_0x555474='\x27'+_0x50b9c2[_0x11c50f(0x1ae)](/'/g,_0x11c50f(0x219))+'\x27';return _0x11c50f(0x19e)+_0x555474+_0x11c50f(0x1ad);}async function recoverAfterResponseLoss(_0x5861b7,_0x4efa39,_0xc20efe){const _0x5b63f9=a153_0x39bc34,{plan:_0x589559,snapshot:_0x5d9859}=_0x4efa39,_0x5c4e98=_0x589559['after'];let _0x512adf;try{_0x512adf=await fetchMenuSnapshot(_0x5861b7['appCode'],_0x5861b7[_0x5b63f9(0x1d8)]);}catch(_0x2c1c38){throw recoveryRequiredFailure(_0x589559,_0xc20efe,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x20fac1=_0x512adf[_0x5b63f9(0x1ab)][_0x5b63f9(0x1cf)](_0x366f80=>_0x366f80[_0x5b63f9(0x1b8)]===_0x5c4e98[_0x5b63f9(0x1b8)]&&_0x366f80[_0x5b63f9(0x1d2)]===_0x5c4e98[_0x5b63f9(0x1d2)]&&_0x366f80[_0x5b63f9(0x229)]===_0x5c4e98[_0x5b63f9(0x229)]&&_0x366f80[_0x5b63f9(0x217)]===_0x5c4e98['url']),_0x5216a7=_0x20fac1[_0x5b63f9(0x1cf)](_0x574533=>!_0x5d9859[_0x5b63f9(0x1f3)][_0x5b63f9(0x223)](_0x574533['id'])),_0x1ba802=_0x20fac1[_0x5b63f9(0x1cf)](_0x201635=>_0x5d9859[_0x5b63f9(0x1f3)][_0x5b63f9(0x223)](_0x201635['id']));if(_0x20fac1[_0x5b63f9(0x20b)]!==0x1||_0x5216a7[_0x5b63f9(0x20b)]!==0x1)throw recoveryRequiredFailure(_0x589559,_0xc20efe,{'matchCount':_0x20fac1[_0x5b63f9(0x20b)],'newMatchCount':_0x5216a7[_0x5b63f9(0x20b)],'preexistingMatchCount':_0x1ba802[_0x5b63f9(0x20b)]});const _0x336ea8=_0x5216a7[0x0];try{verifyCreatedFact(_0x336ea8,_0x336ea8['id'],_0x5c4e98,null);}catch(_0x4345ee){const _0x2ae589=_0x4345ee instanceof Error&&_0x5b63f9(0x1e2)in _0x4345ee?_0x4345ee:menuError(_0x5b63f9(0x1b5),_0x5b63f9(0x20c)+_0x336ea8['id']+_0x5b63f9(0x20d),'Run\x20'+_0xc20efe+_0x5b63f9(0x1c2));throw externalLinkCreateFailure(_0x2ae589,_0x589559,{'stage':_0x5b63f9(0x1cd),'succeeded':[{'id':_0x336ea8['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x336ea8['id'],'finalFactsConfirmed':![]},'after':_0x336ea8,'warnings':[_0x5b63f9(0x216)+_0x336ea8['id']+_0x5b63f9(0x1a8)],'verification':{'status':_0x5b63f9(0x1c6),'targetId':_0x336ea8['id'],'recovered':!![],'lookupCommand':_0xc20efe}});}return creationSuccess(_0x589559,_0x512adf,_0x336ea8,!![]);}function recoveryRequiredFailure(_0x1e86d3,_0x2daa45,_0x4747ed){const _0x207aad=a153_0x39bc34,_0x771630=menuError(_0x207aad(0x209),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.',_0x207aad(0x1a4)+_0x2daa45+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x771630,_0x1e86d3,{'stage':'create-recovery','failed':_0x4747ed,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':'failed',..._0x4747ed,'lookupCommand':_0x2daa45}});}async function readAndVerifyCreatedMenu(_0x5e3304){const _0x2d8be3=a153_0x39bc34;let _0x1d169a;try{_0x1d169a=await fetchMenuSnapshot(_0x5e3304[_0x2d8be3(0x1ce)],_0x5e3304[_0x2d8be3(0x1d8)]);}catch(_0x2e334b){const _0x2508fa=menuError(_0x2d8be3(0x1b5),_0x2d8be3(0x216)+_0x5e3304['createdId']+_0x2d8be3(0x19a),_0x2d8be3(0x1a4)+_0x5e3304[_0x2d8be3(0x1af)]+_0x2d8be3(0x1ac));throw externalLinkCreateFailure(_0x2508fa,_0x5e3304[_0x2d8be3(0x22a)],{'stage':_0x2d8be3(0x1cd),'succeeded':[{'id':_0x5e3304[_0x2d8be3(0x1c3)],'created':!![]}],'failed':{'id':_0x5e3304[_0x2d8be3(0x1c3)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x5e3304[_0x2d8be3(0x19d)],'id':_0x5e3304['createdId'],'path':_0x5e3304[_0x2d8be3(0x21b)]},'warnings':[_0x2d8be3(0x216)+_0x5e3304[_0x2d8be3(0x1c3)]+_0x2d8be3(0x1ef)],'verification':{'status':_0x2d8be3(0x1c6),'targetId':_0x5e3304[_0x2d8be3(0x1c3)],'lookupCommand':_0x5e3304[_0x2d8be3(0x1af)]}});}const _0x2cbf51=_0x1d169a[_0x2d8be3(0x1f3)][_0x2d8be3(0x1f2)](_0x5e3304[_0x2d8be3(0x1c3)]);try{if(!_0x2cbf51)throw menuError(_0x2d8be3(0x1b5),'Created\x20menu\x20'+_0x5e3304[_0x2d8be3(0x1c3)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.','Run\x20'+_0x5e3304[_0x2d8be3(0x1af)]+_0x2d8be3(0x1ac));verifyCreatedFact(_0x2cbf51,_0x5e3304[_0x2d8be3(0x1c3)],_0x5e3304['afterPlan'],_0x5e3304['expectedPath']);}catch(_0x52ba37){const _0xc8ecde=_0x52ba37 instanceof Error&&_0x2d8be3(0x1e2)in _0x52ba37?_0x52ba37:menuError(_0x2d8be3(0x1b5),_0x2d8be3(0x1d1)+_0x5e3304[_0x2d8be3(0x1c3)]+_0x2d8be3(0x1d4),'Run\x20'+_0x5e3304['lookupCommand']+_0x2d8be3(0x1ac));throw externalLinkCreateFailure(_0xc8ecde,_0x5e3304[_0x2d8be3(0x22a)],{'stage':_0x2d8be3(0x1cd),'succeeded':[{'id':_0x5e3304[_0x2d8be3(0x1c3)],'created':!![]}],'failed':{'id':_0x5e3304[_0x2d8be3(0x1c3)],'finalFactsConfirmed':![]},'after':_0x2cbf51??{..._0x5e3304[_0x2d8be3(0x19d)],'id':_0x5e3304['createdId'],'path':_0x5e3304['expectedPath']},'warnings':['Menu\x20'+_0x5e3304[_0x2d8be3(0x1c3)]+_0x2d8be3(0x227)],'verification':{'status':_0x2d8be3(0x1c6),'targetId':_0x5e3304['createdId'],'recovered':_0x5e3304[_0x2d8be3(0x225)],'lookupCommand':_0x5e3304[_0x2d8be3(0x1af)]}});}return{'snapshot':_0x1d169a,'fact':_0x2cbf51};}function verifyCreatedFact(_0x566205,_0x1c8e1d,_0x482e88,_0x25a1f9){const _0x3ab898=a153_0x39bc34;if(!Number[_0x3ab898(0x1f8)](_0x566205['id'])||_0x566205['id']<=0x0||_0x566205['id']!==_0x1c8e1d)throw menuError(_0x3ab898(0x1b5),_0x3ab898(0x1e0),_0x3ab898(0x1f6));const _0x361593=[[_0x3ab898(0x1d6),_0x566205[_0x3ab898(0x1b8)],_0x482e88[_0x3ab898(0x1b8)]],[_0x3ab898(0x1d2),_0x566205[_0x3ab898(0x1d2)],_0x482e88[_0x3ab898(0x1d2)]],[_0x3ab898(0x229),_0x566205[_0x3ab898(0x229)],_0x482e88[_0x3ab898(0x229)]],[_0x3ab898(0x1e9),_0x566205[_0x3ab898(0x217)],_0x482e88[_0x3ab898(0x217)]],[_0x3ab898(0x204),_0x566205[_0x3ab898(0x1a6)],_0x482e88['visible']],[_0x3ab898(0x1cc),_0x566205[_0x3ab898(0x1cc)],_0x482e88[_0x3ab898(0x1cc)]]];for(const [_0x3330df,_0x38b2d9,_0x3dfe04]of _0x361593){if(_0x38b2d9!==_0x3dfe04)throw menuError('menu_verification_failed',_0x3ab898(0x1d1)+_0x566205['id']+_0x3ab898(0x1bb)+_0x3330df+'.',_0x3ab898(0x206));}if(!_0x566205[_0x3ab898(0x1f9)][_0x3ab898(0x1e5)]()||_0x25a1f9!==null&&_0x566205[_0x3ab898(0x1f9)]!==_0x25a1f9)throw menuError('menu_verification_failed',_0x3ab898(0x1d1)+_0x566205['id']+_0x3ab898(0x213),'Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function creationSuccess(_0x7dcf11,_0xad4076,_0x8b5453,_0x19662c){const _0x509ee3=a153_0x39bc34,_0x1f8e4b=mutationResult({..._0x7dcf11,'after':_0x8b5453,'dryRun':![],'succeeded':[{'id':_0x8b5453['id'],'created':!![],'recovered':_0x19662c}],'verification':{'checkedBy':_0x509ee3(0x1c4),'snapshotHash':_0xad4076[_0x509ee3(0x1ca)],'targetId':_0x8b5453['id'],'recovered':_0x19662c,'path':_0x8b5453['path']}});return{'ok':!![],'message':_0x19662c?_0x509ee3(0x1aa)+_0x8b5453['id']+_0x509ee3(0x1d9):_0x509ee3(0x1dc)+_0x8b5453['id']+'.','data':{..._0x1f8e4b,'recovered':_0x19662c}};}function externalLinkCreateFailure(_0x516ba1,_0x523387,_0x2f4d8a){const _0x4488de=a153_0x39bc34;return menuFailure(safeMenuAddError(_0x516ba1),redactFailurePlan(_0x523387),{..._0x2f4d8a,'succeeded':_0x2f4d8a[_0x4488de(0x1e6)]?.[_0x4488de(0x207)](redactFailureRecord),'failed':_0x2f4d8a[_0x4488de(0x1c6)]?redactFailureRecord(_0x2f4d8a[_0x4488de(0x1c6)]):undefined,'verification':_0x2f4d8a['verification']?redactFailureRecord(_0x2f4d8a['verification']):undefined,'after':_0x2f4d8a[_0x4488de(0x1ba)]===undefined?undefined:redactFailureValue(_0x2f4d8a[_0x4488de(0x1ba)])});}function redactFailurePlan(_0x2aa317){const _0x203b41=a153_0x39bc34;return{..._0x2aa317,'selector':redactFailureRecord(_0x2aa317[_0x203b41(0x1a2)]),'before':redactFailureValue(_0x2aa317[_0x203b41(0x222)]),'after':redactFailureValue(_0x2aa317[_0x203b41(0x1ba)]),'plannedActions':_0x2aa317[_0x203b41(0x1fc)]?.[_0x203b41(0x207)](_0x35b449=>({..._0x35b449,'body':redactFailureRecord(_0x35b449[_0x203b41(0x1ee)])})),'succeeded':_0x2aa317[_0x203b41(0x1e6)]['map'](redactFailureRecord),'failed':_0x2aa317[_0x203b41(0x1c6)][_0x203b41(0x207)](redactFailureRecord),'verification':_0x2aa317[_0x203b41(0x1cd)]?redactFailureRecord(_0x2aa317[_0x203b41(0x1cd)]):undefined};}function redactFailureRecord(_0x4ec6a8){return redactFailureValue(_0x4ec6a8);}function a153_0x2d2f(){const _0x4fff41=['Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','<redacted>','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','isSafeInteger','path','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','564KChSbL','plannedActions','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','128440oSnCnP','7WVTBTI','string','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','POST','1cTsjno','visibility','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','map','fact','menu_create_recovery_required','menu_sort_overflow','length','Recovered\x20menu\x20','\x20could\x20not\x20be\x20verified.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','isArray','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Create\x20an\x20external\x20website\x20link\x20menu','write','\x20has\x20an\x20unexpected\x20generated\x20path.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','bool','Menu\x20','url','password','\x27\x5c\x27\x27','menu_open_mode_invalid','expectedPath','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','create','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','External\x20menu\x20creation\x20failed.','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','rawFlags','before','has','310qCJSMz','recovered','embedded','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','create\x20external\x20menu','label','plan','expectedSnapshotHash','52866WpWDjp','Provide\x20an\x20HTTPS\x20URL.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','str','stringify','afterPlan','rabetbase\x20menu\x20list\x20--appcode\x20','1368azNJop','11209614paBRhw','cause','selector','pre-write-recheck','Run\x20','protocol','visible','add','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','flagMissing','Recovered\x20created\x20external\x20menu\x20','menus','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','\x20--format\x20compress','replace','lookupCommand','https:','732QiiBLm','parent-id','data','/smartapi/menu/create','menu_verification_failed','currentSnapshotHash','link','parentId','192QmmhgX','after','\x20has\x20an\x20unexpected\x20','toLowerCase','snapshot','external-link-create','1179214HePEKR','prototype','rawerror','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','createdId','menu\x20list','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','failed','iframe','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','How\x20to\x20open\x20the\x20external\x20website','hash','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','sort','verification','appCode','filter','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','Created\x20menu\x20','type','Whether\x20the\x20menu\x20is\x20visible','\x20failed\x20final\x20verification.','menu_sort_invalid','parent','31361MvaHXb','cookie','\x20after\x20response\x20loss.','menu_permission_denied','object','Created\x20external\x20menu\x20','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','menu_create_response_invalid','open-mode','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','External\x20HTTPS\x20URL','code','create-menu','3037896uhuzUK','trim','succeeded','fromEntries','menu','URL','create-response-validation','\x20with\x20','entries','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','body','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','menu_mutation_failed','boolean','get','byId'];a153_0x2d2f=function(){return _0x4fff41;};return a153_0x2d2f();}function redactFailureValue(_0x4d2577,_0x8ed632=''){const _0x6b7948=a153_0x39bc34,_0x26a573=_0x8ed632[_0x6b7948(0x1bc)]()[_0x6b7948(0x1ae)](/[^a-z0-9]/g,'');if([_0x6b7948(0x1a1),'causemessage','readbackerror',_0x6b7948(0x1c1)]['includes'](_0x26a573))return _0x6b7948(0x1f5);if(Array[_0x6b7948(0x20f)](_0x4d2577))return _0x4d2577[_0x6b7948(0x207)](_0x4361d3=>redactFailureValue(_0x4361d3));if(_0x4d2577&&typeof _0x4d2577===_0x6b7948(0x1db))return Object[_0x6b7948(0x1e7)](Object[_0x6b7948(0x1ec)](_0x4d2577)[_0x6b7948(0x207)](([_0xd17710,_0x53415c])=>[_0xd17710,redactFailureValue(_0x53415c,_0xd17710)]));return _0x4d2577;}function safeMenuAddError(_0x805899){const _0x49f6a1=a153_0x39bc34,_0x413cc1=_0x805899 instanceof CliError?_0x805899['code']:_0x49f6a1(0x1f0);switch(_0x413cc1){case'menu_state_drift':return menuError(_0x413cc1,_0x49f6a1(0x1dd),_0x49f6a1(0x210));case _0x49f6a1(0x1da):return menuError(_0x413cc1,_0x49f6a1(0x1c5),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x49f6a1(0x1de):return menuError(_0x413cc1,_0x49f6a1(0x220),_0x49f6a1(0x1f4));case _0x49f6a1(0x1b5):return menuError(_0x413cc1,_0x49f6a1(0x1ed),_0x49f6a1(0x1f4));case _0x49f6a1(0x209):return menuError(_0x413cc1,_0x49f6a1(0x205),_0x49f6a1(0x1d0));case _0x49f6a1(0x1f0):case'menu_not_found':case'menu_parent_not_folder':case _0x49f6a1(0x1d5):case _0x49f6a1(0x20a):return menuError(_0x413cc1,'External\x20menu\x20creation\x20failed.',_0x49f6a1(0x21c));default:return menuError('menu_mutation_failed',_0x49f6a1(0x21f),_0x49f6a1(0x21c));}}function getFailureRecord(_0x4f9dad){const _0x21596b=a153_0x39bc34;if(!(_0x4f9dad instanceof Error)||!(_0x21596b(0x1b3)in _0x4f9dad))return undefined;const _0x595e8e=_0x4f9dad[_0x21596b(0x1b3)];if(!_0x595e8e||typeof _0x595e8e!==_0x21596b(0x1db))return undefined;const _0x245289=_0x595e8e[_0x21596b(0x1c6)];if(!Array['isArray'](_0x245289)||!_0x245289[0x0]||typeof _0x245289[0x0]!==_0x21596b(0x1db))return undefined;return _0x245289[0x0];}
@@ -1 +1 @@
1
- const a154_0x11734f=a154_0x5cf5;(function(_0x53973f,_0x1bc1e3){const _0x3dad9a=a154_0x5cf5,_0x46083c=_0x53973f();while(!![]){try{const _0x4ac08a=-parseInt(_0x3dad9a(0x139))/0x1*(parseInt(_0x3dad9a(0x13c))/0x2)+parseInt(_0x3dad9a(0x175))/0x3*(-parseInt(_0x3dad9a(0x148))/0x4)+parseInt(_0x3dad9a(0x13b))/0x5*(parseInt(_0x3dad9a(0x16f))/0x6)+-parseInt(_0x3dad9a(0x134))/0x7+-parseInt(_0x3dad9a(0x17c))/0x8+-parseInt(_0x3dad9a(0x161))/0x9+parseInt(_0x3dad9a(0x135))/0xa*(parseInt(_0x3dad9a(0x156))/0xb);if(_0x4ac08a===_0x1bc1e3)break;else _0x46083c['push'](_0x46083c['shift']());}catch(_0x4ee176){_0x46083c['push'](_0x46083c['shift']());}}}(a154_0x3e35,0x2e0ea));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':'POST','path':a154_0x11734f(0x143)}];export const menuExternalLinkUpdate={'service':a154_0x11734f(0x15e),'command':a154_0x11734f(0x16c),'description':a154_0x11734f(0x15c),'risk':a154_0x11734f(0x153),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a154_0x11734f(0x15d),'type':'string','required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a154_0x11734f(0x14d),'type':'string','required':!![],'description':a154_0x11734f(0x137)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x19e7ca){validateInput(_0x19e7ca);},async 'dryRun'(_0x417636){const _0xfa14fd=a154_0x11734f;validateInput(_0x417636);const _0x8fbaa2=await buildPlan(_0x417636,!![]);return menuDryRunResult(_0x8fbaa2[_0xfa14fd(0x14a)],{'method':_0xfa14fd(0x171),'url':_0xfa14fd(0x143),'body':_0x8fbaa2[_0xfa14fd(0x145)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x8fbaa2[_0xfa14fd(0x145)]['id']+'.'});},async 'execute'(_0x48836d){const _0x324e55=a154_0x11734f;validateInput(_0x48836d);const _0x4803fb=await buildPlan(_0x48836d,![]),{plan:_0x372428,body:_0x31a6ea,before:_0xa0af09,noChanges:_0x29db62}=_0x4803fb,_0x393d09=_0x31a6ea['id'];if(_0x29db62)return updateSuccess(_0x372428,_0x4803fb['snapshot'],_0xa0af09,!![],![]);await recheckMutationSnapshot(_0x48836d,_0x372428,'update\x20external\x20menu\x20URL',_0x393d09);try{await updateMenuEntity(_0x48836d[_0x324e55(0x152)],_0x48836d[_0x324e55(0x131)],{'id':_0x31a6ea['id'],'url':_0x31a6ea['url']});}catch(_0x3fc71a){const _0x359a39=mapMenuApiError(_0x3fc71a,_0x324e55(0x173),_0x393d09);if(isMenuResponseLoss(_0x3fc71a)&&_0x359a39[_0x324e55(0x14c)]!==_0x324e55(0x169))return recoverAfterResponseLoss(_0x48836d,_0x4803fb);throw menuFailure(_0x359a39,_0x372428,{'stage':_0x324e55(0x151),'failed':{'id':_0x393d09},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x324e55(0x136),'targetId':_0x393d09,'lookupCommand':buildLookupCommand(_0x48836d[_0x324e55(0x152)])}});}let _0x4444f3,_0x5e6039;try{_0x4444f3=await fetchMenuSnapshot(_0x48836d[_0x324e55(0x152)],_0x48836d[_0x324e55(0x131)]),_0x5e6039=requireMenu(_0x4444f3,_0x393d09),verifyUpdatedFact(_0xa0af09,_0x5e6039,_0x31a6ea[_0x324e55(0x15d)]);}catch(_0x4d03e4){const _0x49a291=describeMenuErrorCause(_0x4d03e4,_0x324e55(0x16e),_0x393d09),_0x39bba6=asVerificationError(_0x4d03e4,'Update\x20request\x20for\x20menu\x20'+_0x393d09+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x39bba6,_0x372428,{'stage':_0x324e55(0x158),'succeeded':[{'id':_0x393d09,'updateRequested':!![]}],'failed':{'id':_0x393d09,'requestedStateConfirmed':![],..._0x49a291},'warnings':[_0x324e55(0x160)],'verification':{'status':'failed','targetId':_0x393d09,'lookupCommand':buildLookupCommand(_0x48836d[_0x324e55(0x152)])}});}return updateSuccess(_0x372428,_0x4444f3,_0x5e6039,![],![]);}};function validateInput(_0x5d933a){const _0x1c8491=a154_0x11734f;validateExactId(_0x5d933a),requiredUrl(_0x5d933a,_0x1c8491(0x15d)),requiredExpectedUrl(_0x5d933a),parseParentId(_0x5d933a,_0x1c8491(0x149),{'required':!![]});}function a154_0x3e35(){const _0x236377=[',\x20current\x20','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','iframe','replace','/smartapi/menu/update','menu\x20list','body','sort','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','4foVojF','expect-parent-id','plan','\x20has\x20an\x20empty\x20platform\x20path.','code','expect-url','menu_update_recovery_required','\x20URL\x20update\x20did\x20not\x20take\x20effect.','\x20--format\x20compress','update','appCode','write','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','Menu\x20','8129mUIfCK','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','verification','visible','rabetbase\x20menu\x20list\x20--appcode\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','url','menu','unknown','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','1846611NyzVVM','type','\x27\x5c\x27\x27','hash','Updated\x20external\x20URL\x20for\x20menu\x20','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','requestedUrlObserved','readbackFailed','menu_permission_denied','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','get','external-link-update','update-external-link-url','verify\x20external\x20menu\x20URL\x20update','102uCNDVj','trim','POST','\x20could\x20not\x20be\x20verified\x20safely','update\x20external\x20menu\x20URL','flagMissing','404583TGwKvD','path','label','\x20is\x20type\x20\x22','Response\x20was\x20lost\x20and\x20menu\x20','\x20has\x20','parentId','312040NxMUrk','Run\x20','menu_state_drift','menu_external_link_path_missing','link','cookie','\x20already\x20matches\x20the\x20requested\x20URL.','str','30926TVfRFZ','4310xRNIgO','failed','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','update-recovery','103549hPfUsx','\x20parent\x20changed:\x20expected\x20','105045AALGRC','2nQPkwh','childrenCount','after'];a154_0x3e35=function(){return _0x236377;};return a154_0x3e35();}function requiredUrl(_0x5b6b81,_0x20c217){const _0x2d34db=a154_0x11734f;if(!hasFlag(_0x5b6b81,_0x20c217)||!_0x5b6b81[_0x2d34db(0x133)](_0x20c217)['trim']())throw CliErrors[_0x2d34db(0x174)](_0x20c217);return validateExternalMenuUrl(_0x5b6b81[_0x2d34db(0x133)](_0x20c217));}function a154_0x5cf5(_0x5e488d,_0x3fef0c){_0x5e488d=_0x5e488d-0x131;const _0x3e350f=a154_0x3e35();let _0x5cf5d5=_0x3e350f[_0x5e488d];return _0x5cf5d5;}function requiredExpectedUrl(_0x32e357){const _0xac6496=a154_0x11734f;if(!hasFlag(_0x32e357,_0xac6496(0x14d))||!_0x32e357[_0xac6496(0x133)](_0xac6496(0x14d))[_0xac6496(0x170)]())throw CliErrors[_0xac6496(0x174)](_0xac6496(0x14d));return _0x32e357[_0xac6496(0x133)]('expect-url')[_0xac6496(0x170)]();}async function buildPlan(_0x38450d,_0x49e8b7){const _0x55f06a=a154_0x11734f,_0x5657b6=validateExactId(_0x38450d),_0x436736=requiredUrl(_0x38450d,_0x55f06a(0x15d)),_0x1f39b1=requiredExpectedUrl(_0x38450d),_0x3d7965=parseParentId(_0x38450d,_0x55f06a(0x149),{'required':!![]}),_0xbd82ee=await fetchMutationSnapshot(_0x38450d,'update\x20external\x20menu\x20URL',_0x5657b6),_0x448828=requireMenu(_0xbd82ee,_0x5657b6);assertExternalLinkLeaf(_0x448828);if(_0x448828[_0x55f06a(0x17b)]!==_0x3d7965)throw menuError('menu_state_drift',_0x55f06a(0x155)+_0x5657b6+_0x55f06a(0x13a)+formatParent(_0x3d7965)+_0x55f06a(0x13f)+formatParent(_0x448828[_0x55f06a(0x17b)])+'.',_0x55f06a(0x15b));const _0x15f9d9=_0x448828[_0x55f06a(0x15d)]===_0x436736;if(!_0x15f9d9&&_0x448828[_0x55f06a(0x15d)]!==_0x1f39b1)throw menuError(_0x55f06a(0x17e),_0x55f06a(0x155)+_0x5657b6+_0x55f06a(0x140),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x401b45={'id':_0x5657b6,'appCode':_0x38450d['appCode'],'url':_0x436736},_0x2a60c8={..._0x448828,'url':_0x436736};return{'body':_0x401b45,'before':_0x448828,'noChanges':_0x15f9d9,'snapshot':_0xbd82ee,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x5657b6},'before':_0x448828,'after':_0x2a60c8,'dryRun':_0x49e8b7,'backend':[...BACKEND],'plannedActions':_0x15f9d9?[]:[{'stage':_0x55f06a(0x16d),'method':'POST','path':'/smartapi/menu/update','body':_0x401b45}],'snapshotHash':_0xbd82ee[_0x55f06a(0x164)],'warnings':_0x15f9d9?[_0x55f06a(0x154)]:[]})};}function assertExternalLinkLeaf(_0x167037){const _0x1885b6=a154_0x11734f;if(_0x167037[_0x1885b6(0x162)]!==_0x1885b6(0x141)&&_0x167037[_0x1885b6(0x162)]!==_0x1885b6(0x180))throw menuError('menu_external_link_type_required','Menu\x20'+_0x167037['id']+_0x1885b6(0x178)+(_0x167037['type']||_0x1885b6(0x15f))+'\x22,\x20not\x20iframe\x20or\x20link.','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x167037[_0x1885b6(0x13d)]!==0x0)throw menuError('menu_external_link_not_leaf',_0x1885b6(0x155)+_0x167037['id']+_0x1885b6(0x17a)+_0x167037[_0x1885b6(0x13d)]+'\x20direct\x20child\x20menu(s).',_0x1885b6(0x166));if(!_0x167037[_0x1885b6(0x176)][_0x1885b6(0x170)]())throw menuError(_0x1885b6(0x17f),'Menu\x20'+_0x167037['id']+_0x1885b6(0x14b),_0x1885b6(0x147));}function verifyUpdatedFact(_0x3cd173,_0x1e6d1d,_0x368fe8){const _0xfa61a4=a154_0x11734f;assertExternalLinkLeaf(_0x1e6d1d);const _0x53726b=[['id',_0x1e6d1d['id'],_0x3cd173['id']],['label',_0x1e6d1d[_0xfa61a4(0x177)],_0x3cd173['label']],[_0xfa61a4(0x162),_0x1e6d1d[_0xfa61a4(0x162)],_0x3cd173[_0xfa61a4(0x162)]],['path',_0x1e6d1d[_0xfa61a4(0x176)],_0x3cd173[_0xfa61a4(0x176)]],[_0xfa61a4(0x17b),_0x1e6d1d[_0xfa61a4(0x17b)],_0x3cd173['parentId']],['sort',_0x1e6d1d[_0xfa61a4(0x146)],_0x3cd173[_0xfa61a4(0x146)]],[_0xfa61a4(0x159),_0x1e6d1d[_0xfa61a4(0x159)],_0x3cd173[_0xfa61a4(0x159)]]];for(const [_0x40a894,_0x2214b2,_0x4e0387]of _0x53726b){assertVerified(_0x2214b2===_0x4e0387,_0xfa61a4(0x155)+_0x3cd173['id']+'\x20'+_0x40a894+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x1e6d1d['url']===_0x368fe8,_0xfa61a4(0x155)+_0x3cd173['id']+_0xfa61a4(0x14f));}function updateSuccess(_0x36a58e,_0x565d35,_0x2b3b53,_0x5a518f,_0x5c4405){const _0x1157dc=a154_0x11734f,_0x19b28f=_0x2b3b53['id'],_0x4082b2=mutationResult({..._0x36a58e,'after':_0x2b3b53,'dryRun':![],'succeeded':[{'id':_0x19b28f,'updated':!_0x5a518f,'skipped':_0x5a518f,'recovered':_0x5c4405}],'verification':{'checkedBy':_0x1157dc(0x144),'snapshotHash':_0x565d35[_0x1157dc(0x164)],'targetId':_0x19b28f,'matchesRequestedState':!![],'recovered':_0x5c4405}});return{'ok':!![],'message':_0x5c4405?_0x1157dc(0x16a)+_0x19b28f+'.':_0x5a518f?_0x1157dc(0x155)+_0x19b28f+_0x1157dc(0x132):_0x1157dc(0x165)+_0x19b28f+'.','data':{..._0x4082b2,'recovered':_0x5c4405}};}async function recoverAfterResponseLoss(_0x3b4ae1,_0x2b41d0){const _0x541174=a154_0x11734f,{plan:_0x1b93cb,before:_0x34f784,body:_0x44810a}=_0x2b41d0;let _0x5ab770;try{_0x5ab770=await fetchMenuSnapshot(_0x3b4ae1[_0x541174(0x152)],_0x3b4ae1[_0x541174(0x131)]);}catch{throw recoveryRequired(_0x1b93cb,_0x3b4ae1['appCode'],{'id':_0x44810a['id'],'readbackFailed':!![]});}const _0x1c7a82=_0x5ab770['byId'][_0x541174(0x16b)](_0x44810a['id']);if(!_0x1c7a82||_0x1c7a82[_0x541174(0x15d)]!==_0x44810a[_0x541174(0x15d)])throw recoveryRequired(_0x1b93cb,_0x3b4ae1[_0x541174(0x152)],{'id':_0x44810a['id'],'requestedUrlObserved':![],'after':_0x1c7a82??null});try{verifyUpdatedFact(_0x34f784,_0x1c7a82,_0x44810a[_0x541174(0x15d)]);}catch(_0x129a6a){const _0x583738=asVerificationError(_0x129a6a,_0x541174(0x179)+_0x44810a['id']+_0x541174(0x172));throw menuFailure(_0x583738,_0x1b93cb,{'stage':_0x541174(0x138),'succeeded':[{'id':_0x44810a['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x44810a['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x1c7a82,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x541174(0x136),'targetId':_0x44810a['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x3b4ae1[_0x541174(0x152)])}});}return updateSuccess(_0x1b93cb,_0x5ab770,_0x1c7a82,![],!![]);}function recoveryRequired(_0xddf19a,_0x143259,_0x5748f4){const _0x123479=a154_0x11734f,_0x718764=menuError(_0x123479(0x14e),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x123479(0x17d)+buildLookupCommand(_0x143259)+_0x123479(0x157));return menuFailure(_0x718764,_0xddf19a,{'stage':'update-recovery','failed':{'id':_0x5748f4['id'],..._0x5748f4[_0x123479(0x167)]===undefined?{}:{'requestedUrlObserved':_0x5748f4[_0x123479(0x167)]},..._0x5748f4[_0x123479(0x168)]?{'readbackFailed':!![]}:{}},'after':_0x5748f4[_0x123479(0x13e)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':'failed','targetId':_0x5748f4['id'],..._0x5748f4[_0x123479(0x167)]===undefined?{}:{'requestedUrlObserved':_0x5748f4['requestedUrlObserved']},..._0x5748f4[_0x123479(0x168)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x143259)}});}function buildLookupCommand(_0x3de1a8){const _0x33fa34=a154_0x11734f,_0x4b230c='\x27'+_0x3de1a8[_0x33fa34(0x142)](/'/g,_0x33fa34(0x163))+'\x27';return _0x33fa34(0x15a)+_0x4b230c+_0x33fa34(0x150);}
1
+ const a154_0xcf7603=a154_0x23ac;(function(_0x198855,_0x361f1a){const _0x466af4=a154_0x23ac,_0x2ddf02=_0x198855();while(!![]){try{const _0x28f84f=-parseInt(_0x466af4(0x1b3))/0x1*(parseInt(_0x466af4(0x1a7))/0x2)+-parseInt(_0x466af4(0x1a9))/0x3*(-parseInt(_0x466af4(0x17e))/0x4)+parseInt(_0x466af4(0x1aa))/0x5+-parseInt(_0x466af4(0x1ad))/0x6*(-parseInt(_0x466af4(0x1c5))/0x7)+-parseInt(_0x466af4(0x1c1))/0x8+parseInt(_0x466af4(0x1b0))/0x9+parseInt(_0x466af4(0x1b4))/0xa*(-parseInt(_0x466af4(0x1cb))/0xb);if(_0x28f84f===_0x361f1a)break;else _0x2ddf02['push'](_0x2ddf02['shift']());}catch(_0x4d7a9b){_0x2ddf02['push'](_0x2ddf02['shift']());}}}(a154_0x1620,0xd5160));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':a154_0xcf7603(0x192),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a154_0xcf7603(0x1ab),'command':'external-link-update','description':a154_0xcf7603(0x1af),'risk':a154_0xcf7603(0x1c2),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a154_0xcf7603(0x189),'type':'string','required':!![],'description':a154_0xcf7603(0x17d)},{'name':'expect-url','type':'string','required':!![],'description':a154_0xcf7603(0x1c8)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x10ea42){validateInput(_0x10ea42);},async 'dryRun'(_0x4e2ef3){const _0x142b31=a154_0xcf7603;validateInput(_0x4e2ef3);const _0x1c7661=await buildPlan(_0x4e2ef3,!![]);return menuDryRunResult(_0x1c7661[_0x142b31(0x1ce)],{'method':'POST','url':_0x142b31(0x1c7),'body':_0x1c7661[_0x142b31(0x193)],'description':_0x142b31(0x18e)+_0x1c7661[_0x142b31(0x193)]['id']+'.'});},async 'execute'(_0x514909){const _0x69774c=a154_0xcf7603;validateInput(_0x514909);const _0x142025=await buildPlan(_0x514909,![]),{plan:_0x2fc203,body:_0x3f1d7a,before:_0x249bd4,noChanges:_0x2be73e}=_0x142025,_0x1dc4e1=_0x3f1d7a['id'];if(_0x2be73e)return updateSuccess(_0x2fc203,_0x142025[_0x69774c(0x17b)],_0x249bd4,!![],![]);await recheckMutationSnapshot(_0x514909,_0x2fc203,'update\x20external\x20menu\x20URL',_0x1dc4e1);try{await updateMenuEntity(_0x514909[_0x69774c(0x197)],_0x514909[_0x69774c(0x17c)],{'id':_0x3f1d7a['id'],'url':_0x3f1d7a[_0x69774c(0x189)]});}catch(_0x4b48d9){const _0x38e5de=mapMenuApiError(_0x4b48d9,'update\x20external\x20menu\x20URL',_0x1dc4e1);if(isMenuResponseLoss(_0x4b48d9)&&_0x38e5de[_0x69774c(0x1b6)]!==_0x69774c(0x1be))return recoverAfterResponseLoss(_0x514909,_0x142025);throw menuFailure(_0x38e5de,_0x2fc203,{'stage':_0x69774c(0x1b5),'failed':{'id':_0x1dc4e1},'warnings':[_0x69774c(0x1a8)],'verification':{'status':_0x69774c(0x180),'targetId':_0x1dc4e1,'lookupCommand':buildLookupCommand(_0x514909['appCode'])}});}let _0x231832,_0xa001ac;try{_0x231832=await fetchMenuSnapshot(_0x514909['appCode'],_0x514909['cookie']),_0xa001ac=requireMenu(_0x231832,_0x1dc4e1),verifyUpdatedFact(_0x249bd4,_0xa001ac,_0x3f1d7a[_0x69774c(0x189)]);}catch(_0x3ad196){const _0x585d00=describeMenuErrorCause(_0x3ad196,_0x69774c(0x19b),_0x1dc4e1),_0x1d0e51=asVerificationError(_0x3ad196,_0x69774c(0x19c)+_0x1dc4e1+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x1d0e51,_0x2fc203,{'stage':_0x69774c(0x1bb),'succeeded':[{'id':_0x1dc4e1,'updateRequested':!![]}],'failed':{'id':_0x1dc4e1,'requestedStateConfirmed':![],..._0x585d00},'warnings':[_0x69774c(0x183)],'verification':{'status':'failed','targetId':_0x1dc4e1,'lookupCommand':buildLookupCommand(_0x514909[_0x69774c(0x197)])}});}return updateSuccess(_0x2fc203,_0x231832,_0xa001ac,![],![]);}};function validateInput(_0x2c0f0e){const _0x27dbb1=a154_0xcf7603;validateExactId(_0x2c0f0e),requiredUrl(_0x2c0f0e,_0x27dbb1(0x189)),requiredExpectedUrl(_0x2c0f0e),parseParentId(_0x2c0f0e,_0x27dbb1(0x17a),{'required':!![]});}function requiredUrl(_0x3af640,_0x263572){const _0x1cfd3a=a154_0xcf7603;if(!hasFlag(_0x3af640,_0x263572)||!_0x3af640[_0x1cfd3a(0x1bf)](_0x263572)[_0x1cfd3a(0x1ae)]())throw CliErrors[_0x1cfd3a(0x1b9)](_0x263572);return validateExternalMenuUrl(_0x3af640[_0x1cfd3a(0x1bf)](_0x263572));}function requiredExpectedUrl(_0x1c5332){const _0x473bbe=a154_0xcf7603;if(!hasFlag(_0x1c5332,_0x473bbe(0x1c3))||!_0x1c5332['str']('expect-url')[_0x473bbe(0x1ae)]())throw CliErrors[_0x473bbe(0x1b9)](_0x473bbe(0x1c3));return _0x1c5332[_0x473bbe(0x1bf)]('expect-url')[_0x473bbe(0x1ae)]();}function a154_0x23ac(_0x2688cb,_0x4b901c){_0x2688cb=_0x2688cb-0x178;const _0x1620db=a154_0x1620();let _0x23ac71=_0x1620db[_0x2688cb];return _0x23ac71;}function a154_0x1620(){const _0x4a29f7=['menu_state_drift','menu_external_link_path_missing','90911DWkdTq','14897690xQAaQD','update','code','label','\x20changed\x20during\x20the\x20URL-only\x20update.','flagMissing','visible','verification','\x20URL\x20update\x20did\x20not\x20take\x20effect.','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','menu_permission_denied','str','\x20direct\x20child\x20menu(s).','3441368MhtlIl','write','expect-url','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','98651oTXoxd','\x20has\x20an\x20empty\x20platform\x20path.','/smartapi/menu/update','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','\x20already\x20matches\x20the\x20requested\x20URL.','readbackFailed','11RNbsyj','rabetbase\x20menu\x20list\x20--appcode\x20','update-recovery','plan','childrenCount','update-external-link-url','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','external-link-update','expect-parent-id','snapshot','cookie','New\x20external\x20HTTPS\x20URL','10736smnluC','sort','failed','Updated\x20external\x20URL\x20for\x20menu\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','replace','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','hash','update\x20external\x20menu\x20URL','unknown','url','\x20has\x20','\x20parent\x20changed:\x20expected\x20','menu_external_link_type_required','menu_update_recovery_required','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','\x27\x5c\x27\x27','after','\x20--format\x20compress','POST','body','parentId','type','requestedUrlObserved','appCode','link','path','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','verify\x20external\x20menu\x20URL\x20update','Update\x20request\x20for\x20menu\x20','menu_external_link_not_leaf','menu\x20list',',\x20current\x20','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','\x22,\x20not\x20iframe\x20or\x20link.','get','Menu\x20','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','iframe','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','10udwAuw','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','435TGNMXs','6907045vhRWkd','menu','\x20could\x20not\x20be\x20verified\x20safely','354tZkDPW','trim','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','5806971gqgxCg'];a154_0x1620=function(){return _0x4a29f7;};return a154_0x1620();}async function buildPlan(_0x46e48c,_0x39a7ba){const _0x473a02=a154_0xcf7603,_0x387af7=validateExactId(_0x46e48c),_0x149832=requiredUrl(_0x46e48c,_0x473a02(0x189)),_0x23c214=requiredExpectedUrl(_0x46e48c),_0x11765d=parseParentId(_0x46e48c,_0x473a02(0x17a),{'required':!![]}),_0x481148=await fetchMutationSnapshot(_0x46e48c,_0x473a02(0x187),_0x387af7),_0x37f84f=requireMenu(_0x481148,_0x387af7);assertExternalLinkLeaf(_0x37f84f);if(_0x37f84f[_0x473a02(0x194)]!==_0x11765d)throw menuError(_0x473a02(0x1b1),_0x473a02(0x1a3)+_0x387af7+_0x473a02(0x18b)+formatParent(_0x11765d)+_0x473a02(0x19f)+formatParent(_0x37f84f['parentId'])+'.',_0x473a02(0x182));const _0x1fb6fe=_0x37f84f['url']===_0x149832;if(!_0x1fb6fe&&_0x37f84f[_0x473a02(0x189)]!==_0x23c214)throw menuError(_0x473a02(0x1b1),'Menu\x20'+_0x387af7+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x3af25d={'id':_0x387af7,'appCode':_0x46e48c[_0x473a02(0x197)],'url':_0x149832},_0x1c64ff={..._0x37f84f,'url':_0x149832};return{'body':_0x3af25d,'before':_0x37f84f,'noChanges':_0x1fb6fe,'snapshot':_0x481148,'plan':mutationResult({'operation':_0x473a02(0x179),'selector':{'id':_0x387af7},'before':_0x37f84f,'after':_0x1c64ff,'dryRun':_0x39a7ba,'backend':[...BACKEND],'plannedActions':_0x1fb6fe?[]:[{'stage':_0x473a02(0x1d0),'method':_0x473a02(0x192),'path':_0x473a02(0x1c7),'body':_0x3af25d}],'snapshotHash':_0x481148[_0x473a02(0x186)],'warnings':_0x1fb6fe?[_0x473a02(0x1a4)]:[]})};}function assertExternalLinkLeaf(_0x629007){const _0x49ac78=a154_0xcf7603;if(_0x629007[_0x49ac78(0x195)]!==_0x49ac78(0x1a5)&&_0x629007[_0x49ac78(0x195)]!==_0x49ac78(0x198))throw menuError(_0x49ac78(0x18c),_0x49ac78(0x1a3)+_0x629007['id']+'\x20is\x20type\x20\x22'+(_0x629007[_0x49ac78(0x195)]||_0x49ac78(0x188))+_0x49ac78(0x1a1),_0x49ac78(0x1a6));if(_0x629007[_0x49ac78(0x1cf)]!==0x0)throw menuError(_0x49ac78(0x19d),_0x49ac78(0x1a3)+_0x629007['id']+_0x49ac78(0x18a)+_0x629007['childrenCount']+_0x49ac78(0x1c0),_0x49ac78(0x185));if(!_0x629007[_0x49ac78(0x199)][_0x49ac78(0x1ae)]())throw menuError(_0x49ac78(0x1b2),_0x49ac78(0x1a3)+_0x629007['id']+_0x49ac78(0x1c6),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x31446c,_0x4aa85b,_0x15cf03){const _0x34c413=a154_0xcf7603;assertExternalLinkLeaf(_0x4aa85b);const _0x37e309=[['id',_0x4aa85b['id'],_0x31446c['id']],[_0x34c413(0x1b7),_0x4aa85b[_0x34c413(0x1b7)],_0x31446c[_0x34c413(0x1b7)]],[_0x34c413(0x195),_0x4aa85b[_0x34c413(0x195)],_0x31446c[_0x34c413(0x195)]],['path',_0x4aa85b['path'],_0x31446c[_0x34c413(0x199)]],[_0x34c413(0x194),_0x4aa85b[_0x34c413(0x194)],_0x31446c[_0x34c413(0x194)]],[_0x34c413(0x17f),_0x4aa85b[_0x34c413(0x17f)],_0x31446c[_0x34c413(0x17f)]],[_0x34c413(0x1ba),_0x4aa85b['visible'],_0x31446c['visible']]];for(const [_0x41b229,_0x23a5a0,_0x3e24e9]of _0x37e309){assertVerified(_0x23a5a0===_0x3e24e9,_0x34c413(0x1a3)+_0x31446c['id']+'\x20'+_0x41b229+_0x34c413(0x1b8));}assertVerified(_0x4aa85b['url']===_0x15cf03,_0x34c413(0x1a3)+_0x31446c['id']+_0x34c413(0x1bc));}function updateSuccess(_0x40ddad,_0x59bd95,_0x4d5ce2,_0x15bdec,_0x1285ee){const _0x2812d9=a154_0xcf7603,_0x1ae0f1=_0x4d5ce2['id'],_0x1fdb5f=mutationResult({..._0x40ddad,'after':_0x4d5ce2,'dryRun':![],'succeeded':[{'id':_0x1ae0f1,'updated':!_0x15bdec,'skipped':_0x15bdec,'recovered':_0x1285ee}],'verification':{'checkedBy':_0x2812d9(0x19e),'snapshotHash':_0x59bd95[_0x2812d9(0x186)],'targetId':_0x1ae0f1,'matchesRequestedState':!![],'recovered':_0x1285ee}});return{'ok':!![],'message':_0x1285ee?_0x2812d9(0x1a0)+_0x1ae0f1+'.':_0x15bdec?_0x2812d9(0x1a3)+_0x1ae0f1+_0x2812d9(0x1c9):_0x2812d9(0x181)+_0x1ae0f1+'.','data':{..._0x1fdb5f,'recovered':_0x1285ee}};}async function recoverAfterResponseLoss(_0x5d9531,_0x8f34b2){const _0x342606=a154_0xcf7603,{plan:_0x47dd31,before:_0x273ef9,body:_0xaae55b}=_0x8f34b2;let _0x38969f;try{_0x38969f=await fetchMenuSnapshot(_0x5d9531[_0x342606(0x197)],_0x5d9531['cookie']);}catch{throw recoveryRequired(_0x47dd31,_0x5d9531[_0x342606(0x197)],{'id':_0xaae55b['id'],'readbackFailed':!![]});}const _0x42d873=_0x38969f['byId'][_0x342606(0x1a2)](_0xaae55b['id']);if(!_0x42d873||_0x42d873[_0x342606(0x189)]!==_0xaae55b[_0x342606(0x189)])throw recoveryRequired(_0x47dd31,_0x5d9531[_0x342606(0x197)],{'id':_0xaae55b['id'],'requestedUrlObserved':![],'after':_0x42d873??null});try{verifyUpdatedFact(_0x273ef9,_0x42d873,_0xaae55b[_0x342606(0x189)]);}catch(_0x37c442){const _0xaafd65=asVerificationError(_0x37c442,'Response\x20was\x20lost\x20and\x20menu\x20'+_0xaae55b['id']+_0x342606(0x1ac));throw menuFailure(_0xaafd65,_0x47dd31,{'stage':_0x342606(0x1cd),'succeeded':[{'id':_0xaae55b['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0xaae55b['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x42d873,'warnings':[_0x342606(0x1c4)],'verification':{'status':_0x342606(0x180),'targetId':_0xaae55b['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5d9531[_0x342606(0x197)])}});}return updateSuccess(_0x47dd31,_0x38969f,_0x42d873,![],!![]);}function recoveryRequired(_0x3ec21a,_0x7e2fa1,_0x167995){const _0x18ee57=a154_0xcf7603,_0x14ef39=menuError(_0x18ee57(0x18d),_0x18ee57(0x178),'Run\x20'+buildLookupCommand(_0x7e2fa1)+_0x18ee57(0x1bd));return menuFailure(_0x14ef39,_0x3ec21a,{'stage':_0x18ee57(0x1cd),'failed':{'id':_0x167995['id'],..._0x167995[_0x18ee57(0x196)]===undefined?{}:{'requestedUrlObserved':_0x167995[_0x18ee57(0x196)]},..._0x167995[_0x18ee57(0x1ca)]?{'readbackFailed':!![]}:{}},'after':_0x167995[_0x18ee57(0x190)],'warnings':[_0x18ee57(0x19a)],'verification':{'status':'failed','targetId':_0x167995['id'],..._0x167995[_0x18ee57(0x196)]===undefined?{}:{'requestedUrlObserved':_0x167995[_0x18ee57(0x196)]},..._0x167995[_0x18ee57(0x1ca)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x7e2fa1)}});}function buildLookupCommand(_0xe67a2b){const _0x2a2ce9=a154_0xcf7603,_0x24ec77='\x27'+_0xe67a2b[_0x2a2ce9(0x184)](/'/g,_0x2a2ce9(0x18f))+'\x27';return _0x2a2ce9(0x1cc)+_0x24ec77+_0x2a2ce9(0x191);}
@@ -1 +1 @@
1
- const a155_0x2d29e2=a155_0x324d;(function(_0x19d386,_0x1166fb){const _0x4c5ef8=a155_0x324d,_0x2e1efe=_0x19d386();while(!![]){try{const _0x36b703=-parseInt(_0x4c5ef8(0x1b2))/0x1+parseInt(_0x4c5ef8(0x1b4))/0x2*(parseInt(_0x4c5ef8(0x180))/0x3)+parseInt(_0x4c5ef8(0x1b6))/0x4+-parseInt(_0x4c5ef8(0x190))/0x5*(-parseInt(_0x4c5ef8(0x1a2))/0x6)+parseInt(_0x4c5ef8(0x1a4))/0x7+-parseInt(_0x4c5ef8(0x1b0))/0x8*(parseInt(_0x4c5ef8(0x177))/0x9)+-parseInt(_0x4c5ef8(0x189))/0xa;if(_0x36b703===_0x1166fb)break;else _0x2e1efe['push'](_0x2e1efe['shift']());}catch(_0x3df840){_0x2e1efe['push'](_0x2e1efe['shift']());}}}(a155_0x24df,0x1b3e1));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a155_0x24df(){const _0x547d72=['string','rabetbase\x20menu\x20list\x20--format\x20json','\x20is\x20not\x20visible.','length','Created\x20menu\x20folder\x20','Menu\x20create\x20response\x20for\x20folder\x20','create','get','167847Iixqsn','menu_create_response_invalid','\x22\x20with\x20a\x20platform-generated\x20path.','visible','byId','after','create-folder','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','str','834840EbyNUz','trim','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x20is\x20not\x20empty.','\x20has\x20unexpected\x20parent\x20','\x20unexpectedly\x20owns\x20a\x20page.','20qnHZau','Would\x20create\x20empty\x20folder\x20\x22','verify\x20folder\x20creation','Created\x20folder\x20','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','create\x20folder','hash','group-create','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','parent-id','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','Folder\x20','label','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','POST','/smartapi/menu/create','appCode','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','148998ZpyimY','failed','438340gFGaxR','cookie','menu\x20list','\x20has\x20resources.','folder','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','depth','\x20is\x20missing\x20from\x20menu\x20list.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','create-response-validation','childrenCount','956568bHXcfV','resources','208143BizrYs','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','6mbPPjc','menu','771936isnjNE','write','sort','stringify','parentId','flagMissing','path','Created\x20menu\x20','pageId','9YRrqnD'];a155_0x24df=function(){return _0x547d72;};return a155_0x24df();}function a155_0x324d(_0x45c9c1,_0x37a4b5){_0x45c9c1=_0x45c9c1-0x171;const _0x24df24=a155_0x24df();let _0x324d3d=_0x24df24[_0x45c9c1];return _0x324d3d;}const BACKEND=[{'method':'POST','path':'/smartapi/menu/create'}];export const menuGroupCreate={'service':a155_0x2d29e2(0x1b5),'command':a155_0x2d29e2(0x197),'description':a155_0x2d29e2(0x1a9),'risk':a155_0x2d29e2(0x1b7),'structuredErrors':!![],'flags':[{'name':'label','type':a155_0x2d29e2(0x178),'required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xe8405){validateCreateInput(_0xe8405);},async 'dryRun'(_0x177397){const _0x272ba7=a155_0x2d29e2,_0x3ba15c=await buildCreatePlan(_0x177397,!![]),_0x23bf09=_0x3ba15c['after'];return menuDryRunResult(_0x3ba15c,{'method':_0x272ba7(0x19e),'url':_0x272ba7(0x19f),'body':{'parentId':toApiParentId(_0x23bf09[_0x272ba7(0x172)]),'label':_0x23bf09[_0x272ba7(0x19c)],'type':'folder','visible':!![],'sort':_0x23bf09['sort'],'extend':{}},'description':_0x272ba7(0x191)+String(_0x23bf09[_0x272ba7(0x19c)])+_0x272ba7(0x182)});},async 'execute'(_0x2e9af4){const _0x33c916=a155_0x2d29e2;validateCreateInput(_0x2e9af4);const _0x41fb40=await buildCreatePlan(_0x2e9af4,![]),_0x1693b1=_0x41fb40[_0x33c916(0x185)];await recheckMutationSnapshot(_0x2e9af4,_0x41fb40,_0x33c916(0x195));let _0x39902f;try{_0x39902f=await createMenuEntity(_0x2e9af4[_0x33c916(0x1a0)],_0x2e9af4[_0x33c916(0x1a5)],{'parentId':toApiParentId(_0x1693b1[_0x33c916(0x172)]),'label':String(_0x1693b1[_0x33c916(0x19c)]),'type':_0x33c916(0x1a8),'visible':!![],'sort':Number(_0x1693b1['sort']),'extend':{}});}catch(_0x1ec767){const _0x17ab95=mapMenuApiError(_0x1ec767,_0x33c916(0x195));throw menuFailure(_0x17ab95,_0x41fb40,{'stage':_0x33c916(0x17e),'failed':{}});}const _0x56e35c=Number(_0x39902f['id']);if(!Number['isSafeInteger'](_0x56e35c)||_0x56e35c<=0x0){const _0x746ce4=menuError('menu_create_response_invalid',_0x33c916(0x194),_0x33c916(0x1b3));throw menuFailure(_0x746ce4,_0x41fb40,{'stage':'create-response-validation','failed':{'createdId':_0x39902f['id']??null},'warnings':[_0x33c916(0x18c)],'verification':{'status':_0x33c916(0x1a3),'lookupCommand':_0x33c916(0x179)}});}const _0x8f3f1f=typeof _0x39902f['path']===_0x33c916(0x178)?_0x39902f[_0x33c916(0x174)]:'';if(!_0x8f3f1f[_0x33c916(0x18a)]()){const _0x321efd=menuError(_0x33c916(0x181),_0x33c916(0x17d)+_0x56e35c+_0x33c916(0x198),_0x33c916(0x1a1));throw menuFailure(_0x321efd,_0x41fb40,{'stage':_0x33c916(0x1ae),'succeeded':[{'id':_0x56e35c,'created':!![]}],'failed':{'id':_0x56e35c,'generatedPathConfirmed':![]},'warnings':[_0x33c916(0x19b)+_0x56e35c+_0x33c916(0x19d)],'after':{..._0x1693b1,'id':_0x56e35c,'path':_0x8f3f1f},'verification':{'status':_0x33c916(0x1a3),'lookupCommand':_0x33c916(0x179),'targetId':_0x56e35c}});}let _0x4c50e3;try{_0x4c50e3=await fetchMenuSnapshot(_0x2e9af4[_0x33c916(0x1a0)],_0x2e9af4[_0x33c916(0x1a5)]);}catch(_0x300c32){const _0x3a3283=describeMenuErrorCause(_0x300c32,'verify\x20folder\x20creation',_0x56e35c),_0x24a3d1=asVerificationError(_0x300c32,_0x33c916(0x19b)+_0x56e35c+_0x33c916(0x19a));throw menuFailure(_0x24a3d1,_0x41fb40,{'stage':'verification','succeeded':[{'id':_0x56e35c,'created':!![],'path':_0x8f3f1f}],'failed':{'id':_0x56e35c,'finalFactsConfirmed':![],..._0x3a3283},'warnings':[_0x33c916(0x19b)+_0x56e35c+'\x20may\x20exist\x20online\x20at\x20path\x20'+JSON[_0x33c916(0x171)](_0x8f3f1f)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x1693b1,'id':_0x56e35c,'path':_0x8f3f1f},'verification':{'status':_0x33c916(0x1a3),'lookupCommand':_0x33c916(0x179),'targetId':_0x56e35c}});}const _0x4170b1=_0x4c50e3[_0x33c916(0x184)][_0x33c916(0x17f)](_0x56e35c);let _0x44f62a;try{assertVerified(Boolean(_0x4170b1),_0x33c916(0x193)+_0x56e35c+_0x33c916(0x1ab)),_0x44f62a=_0x4170b1,assertVerified(_0x44f62a['type']===_0x33c916(0x1a8),_0x33c916(0x175)+_0x56e35c+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x44f62a[_0x33c916(0x19c)]===_0x1693b1[_0x33c916(0x19c)],_0x33c916(0x193)+_0x56e35c+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x44f62a[_0x33c916(0x174)]===_0x8f3f1f&&Boolean(_0x44f62a[_0x33c916(0x174)]['trim']()),'Created\x20folder\x20'+_0x56e35c+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x44f62a[_0x33c916(0x183)]===!![],'Created\x20folder\x20'+_0x56e35c+_0x33c916(0x17a)),assertVerified(_0x44f62a[_0x33c916(0x1b1)][_0x33c916(0x17b)]===0x0,_0x33c916(0x193)+_0x56e35c+_0x33c916(0x1a7)),assertVerified(_0x44f62a[_0x33c916(0x1af)]===0x0,'Created\x20folder\x20'+_0x56e35c+_0x33c916(0x18d)),assertVerified(_0x44f62a[_0x33c916(0x1b8)]===_0x1693b1[_0x33c916(0x1b8)],'Created\x20folder\x20'+_0x56e35c+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x44f62a[_0x33c916(0x172)]===_0x1693b1[_0x33c916(0x172)],'Created\x20folder\x20'+_0x56e35c+_0x33c916(0x18e)+(_0x44f62a[_0x33c916(0x172)]??'root')+'.'),assertVerified(_0x44f62a[_0x33c916(0x176)]==null,_0x33c916(0x193)+_0x56e35c+_0x33c916(0x18f));const _0x32af93=_0x44f62a[_0x33c916(0x172)]==null?undefined:requireFolder(_0x4c50e3,_0x44f62a[_0x33c916(0x172)]);assertVerified(_0x44f62a[_0x33c916(0x1aa)]===(_0x32af93?_0x32af93[_0x33c916(0x1aa)]+0x1:0x0),_0x33c916(0x193)+_0x56e35c+_0x33c916(0x18b));}catch(_0x24fcae){const _0x13beb4=describeMenuErrorCause(_0x24fcae,_0x33c916(0x192),_0x56e35c),_0x3c445d=asVerificationError(_0x24fcae,_0x33c916(0x19b)+_0x56e35c+_0x33c916(0x1ac));throw menuFailure(_0x3c445d,_0x41fb40,{'stage':'verification','succeeded':[{'id':_0x56e35c,'created':!![],'path':_0x8f3f1f}],'failed':{'id':_0x56e35c,'finalFactsConfirmed':![],..._0x13beb4},'warnings':[_0x33c916(0x19b)+_0x56e35c+_0x33c916(0x1ad)],'after':_0x4170b1??{..._0x1693b1,'id':_0x56e35c,'path':_0x8f3f1f},'verification':{'status':_0x33c916(0x1a3),'lookupCommand':_0x33c916(0x179),'targetId':_0x56e35c}});}const _0x518906=mutationResult({..._0x41fb40,'after':_0x44f62a,'dryRun':![],'succeeded':[{'id':_0x56e35c,'type':'folder','path':_0x8f3f1f}],'verification':{'checkedBy':_0x33c916(0x1a6),'snapshotHash':_0x4c50e3[_0x33c916(0x196)],'folder':!![],'path':_0x8f3f1f,'emptyResources':!![]}});return{'ok':!![],'data':_0x518906,'message':_0x33c916(0x17c)+_0x56e35c+'.'};}};function validateCreateInput(_0x57e7d6){const _0x534e77=a155_0x2d29e2,_0x216ca9=_0x57e7d6[_0x534e77(0x188)](_0x534e77(0x19c))[_0x534e77(0x18a)]();if(!_0x216ca9)throw CliErrors[_0x534e77(0x173)](_0x534e77(0x19c));parseParentId(_0x57e7d6,_0x534e77(0x199)),validateSort(_0x57e7d6);}async function buildCreatePlan(_0x477c98,_0x3e464b){const _0x49bcb8=a155_0x2d29e2,_0x1268d2=await fetchMutationSnapshot(_0x477c98,_0x49bcb8(0x195)),_0x7fbe06=parseParentId(_0x477c98,_0x49bcb8(0x199))??null;if(_0x7fbe06!=null)requireFolder(_0x1268d2,_0x7fbe06);const _0x509a5f=validateSort(_0x477c98),_0x133140=_0x509a5f??nextSiblingSort(_0x1268d2,_0x7fbe06,'folder'),_0xffe1b2=_0x477c98[_0x49bcb8(0x188)](_0x49bcb8(0x19c))[_0x49bcb8(0x18a)]();return mutationResult({'operation':_0x49bcb8(0x197),'selector':{'label':_0xffe1b2,'parentId':_0x7fbe06},'before':null,'after':{'id':null,'parentId':_0x7fbe06,'label':_0xffe1b2,'path':'<platform-generated>','type':_0x49bcb8(0x1a8),'visible':!![],'sort':_0x133140,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x3e464b,'backend':[...BACKEND],'plannedActions':[{'stage':_0x49bcb8(0x186),'method':_0x49bcb8(0x19e),'path':_0x49bcb8(0x19f),'body':{'parentId':toApiParentId(_0x7fbe06),'label':_0xffe1b2,'type':_0x49bcb8(0x1a8),'visible':!![],'sort':_0x133140,'extend':{}}}],'snapshotHash':_0x1268d2[_0x49bcb8(0x196)],'warnings':[_0x49bcb8(0x187)]});}
1
+ const a155_0x1337ab=a155_0x1ef4;(function(_0x19e2bf,_0x2d6a0c){const _0x52c852=a155_0x1ef4,_0x132dd3=_0x19e2bf();while(!![]){try{const _0x3b0bec=-parseInt(_0x52c852(0x20f))/0x1*(-parseInt(_0x52c852(0x21d))/0x2)+-parseInt(_0x52c852(0x220))/0x3*(parseInt(_0x52c852(0x212))/0x4)+parseInt(_0x52c852(0x1fc))/0x5*(-parseInt(_0x52c852(0x21b))/0x6)+parseInt(_0x52c852(0x1f6))/0x7+parseInt(_0x52c852(0x21c))/0x8*(parseInt(_0x52c852(0x1f1))/0x9)+-parseInt(_0x52c852(0x206))/0xa+-parseInt(_0x52c852(0x1f7))/0xb*(parseInt(_0x52c852(0x205))/0xc);if(_0x3b0bec===_0x2d6a0c)break;else _0x132dd3['push'](_0x132dd3['shift']());}catch(_0x25f262){_0x132dd3['push'](_0x132dd3['shift']());}}}(a155_0x471f,0x2d3fa));function a155_0x1ef4(_0xa257d8,_0xaef54){_0xa257d8=_0xa257d8-0x1e8;const _0x471ffc=a155_0x471f();let _0x1ef4de=_0x471ffc[_0xa257d8];return _0x1ef4de;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';function a155_0x471f(){const _0x3dd75c=['Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','2225604oYLpDS','1001150gvSMNM','sort','trim','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','childrenCount','\x22\x20with\x20a\x20platform-generated\x20path.','\x20is\x20not\x20empty.','byId','str','16953uQwerl','get','<platform-generated>','9644YJqwtw','verify\x20folder\x20creation','create-response-validation','verification','type','cookie','failed','after','appCode','1135146XPNWzE','96gVLEXs','38ZeVfff','flagMissing','parent-id','186SvxdeQ','hash','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','Folder\x20label','menu\x20list','group-create','isSafeInteger','\x20has\x20resources.','\x20unexpectedly\x20owns\x20a\x20page.','\x20is\x20not\x20visible.','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','create-folder','menu_create_response_invalid','path','\x20is\x20not\x20type\x20folder.','resources','POST','stringify','string','rabetbase\x20menu\x20list\x20--format\x20json','depth','215937ZmBkwq','folder','Folder\x20','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','menu','1396990XDbREY','11zBUMKz','\x20has\x20an\x20unexpected\x20label.','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','parentId','\x20has\x20an\x20unexpected\x20sort.','5APXygI','\x20is\x20missing\x20from\x20menu\x20list.','Created\x20folder\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','/smartapi/menu/create','create\x20folder','label','\x20has\x20unexpected\x20parent\x20'];a155_0x471f=function(){return _0x3dd75c;};return a155_0x471f();}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a155_0x1337ab(0x200)}];export const menuGroupCreate={'service':a155_0x1337ab(0x1f5),'command':a155_0x1337ab(0x227),'description':a155_0x1337ab(0x224),'risk':'write','structuredErrors':!![],'flags':[{'name':'label','type':a155_0x1337ab(0x1ee),'required':!![],'description':a155_0x1337ab(0x225)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1fda36){validateCreateInput(_0x1fda36);},async 'dryRun'(_0x19baf6){const _0x3cf871=a155_0x1337ab,_0x214ffa=await buildCreatePlan(_0x19baf6,!![]),_0x1e60d1=_0x214ffa[_0x3cf871(0x219)];return menuDryRunResult(_0x214ffa,{'method':_0x3cf871(0x1ec),'url':_0x3cf871(0x200),'body':{'parentId':toApiParentId(_0x1e60d1['parentId']),'label':_0x1e60d1['label'],'type':_0x3cf871(0x1f2),'visible':!![],'sort':_0x1e60d1[_0x3cf871(0x207)],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x1e60d1[_0x3cf871(0x202)])+_0x3cf871(0x20b)});},async 'execute'(_0x23062d){const _0x56f273=a155_0x1337ab;validateCreateInput(_0x23062d);const _0x45bc38=await buildCreatePlan(_0x23062d,![]),_0x463a70=_0x45bc38[_0x56f273(0x219)];await recheckMutationSnapshot(_0x23062d,_0x45bc38,'create\x20folder');let _0x162ac0;try{_0x162ac0=await createMenuEntity(_0x23062d[_0x56f273(0x21a)],_0x23062d[_0x56f273(0x217)],{'parentId':toApiParentId(_0x463a70['parentId']),'label':String(_0x463a70['label']),'type':_0x56f273(0x1f2),'visible':!![],'sort':Number(_0x463a70[_0x56f273(0x207)]),'extend':{}});}catch(_0x17534a){const _0x4c0002=mapMenuApiError(_0x17534a,'create\x20folder');throw menuFailure(_0x4c0002,_0x45bc38,{'stage':'create','failed':{}});}const _0x4895d8=Number(_0x162ac0['id']);if(!Number[_0x56f273(0x228)](_0x4895d8)||_0x4895d8<=0x0){const _0x30b487=menuError('menu_create_response_invalid',_0x56f273(0x204),_0x56f273(0x1ff));throw menuFailure(_0x30b487,_0x45bc38,{'stage':_0x56f273(0x214),'failed':{'createdId':_0x162ac0['id']??null},'warnings':[_0x56f273(0x1f4)],'verification':{'status':_0x56f273(0x218),'lookupCommand':_0x56f273(0x1ef)}});}const _0x25cf53=typeof _0x162ac0[_0x56f273(0x1e9)]===_0x56f273(0x1ee)?_0x162ac0[_0x56f273(0x1e9)]:'';if(!_0x25cf53[_0x56f273(0x208)]()){const _0x141415=menuError(_0x56f273(0x1e8),'Menu\x20create\x20response\x20for\x20folder\x20'+_0x4895d8+_0x56f273(0x1f9),_0x56f273(0x222));throw menuFailure(_0x141415,_0x45bc38,{'stage':_0x56f273(0x214),'succeeded':[{'id':_0x4895d8,'created':!![]}],'failed':{'id':_0x4895d8,'generatedPathConfirmed':![]},'warnings':[_0x56f273(0x1f3)+_0x4895d8+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x463a70,'id':_0x4895d8,'path':_0x25cf53},'verification':{'status':_0x56f273(0x218),'lookupCommand':_0x56f273(0x1ef),'targetId':_0x4895d8}});}let _0x14ab35;try{_0x14ab35=await fetchMenuSnapshot(_0x23062d[_0x56f273(0x21a)],_0x23062d[_0x56f273(0x217)]);}catch(_0x1f2849){const _0x24be42=describeMenuErrorCause(_0x1f2849,'verify\x20folder\x20creation',_0x4895d8),_0x30a649=asVerificationError(_0x1f2849,_0x56f273(0x1f3)+_0x4895d8+_0x56f273(0x22c));throw menuFailure(_0x30a649,_0x45bc38,{'stage':_0x56f273(0x215),'succeeded':[{'id':_0x4895d8,'created':!![],'path':_0x25cf53}],'failed':{'id':_0x4895d8,'finalFactsConfirmed':![],..._0x24be42},'warnings':[_0x56f273(0x1f3)+_0x4895d8+'\x20may\x20exist\x20online\x20at\x20path\x20'+JSON[_0x56f273(0x1ed)](_0x25cf53)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x463a70,'id':_0x4895d8,'path':_0x25cf53},'verification':{'status':_0x56f273(0x218),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x4895d8}});}const _0x1ebfaa=_0x14ab35[_0x56f273(0x20d)][_0x56f273(0x210)](_0x4895d8);let _0x1cfe00;try{assertVerified(Boolean(_0x1ebfaa),_0x56f273(0x1fe)+_0x4895d8+_0x56f273(0x1fd)),_0x1cfe00=_0x1ebfaa,assertVerified(_0x1cfe00[_0x56f273(0x216)]===_0x56f273(0x1f2),'Created\x20menu\x20'+_0x4895d8+_0x56f273(0x1ea)),assertVerified(_0x1cfe00[_0x56f273(0x202)]===_0x463a70[_0x56f273(0x202)],'Created\x20folder\x20'+_0x4895d8+_0x56f273(0x1f8)),assertVerified(_0x1cfe00[_0x56f273(0x1e9)]===_0x25cf53&&Boolean(_0x1cfe00[_0x56f273(0x1e9)]['trim']()),_0x56f273(0x1fe)+_0x4895d8+_0x56f273(0x223)),assertVerified(_0x1cfe00['visible']===!![],_0x56f273(0x1fe)+_0x4895d8+_0x56f273(0x22b)),assertVerified(_0x1cfe00[_0x56f273(0x1eb)]['length']===0x0,'Created\x20folder\x20'+_0x4895d8+_0x56f273(0x229)),assertVerified(_0x1cfe00[_0x56f273(0x20a)]===0x0,_0x56f273(0x1fe)+_0x4895d8+_0x56f273(0x20c)),assertVerified(_0x1cfe00[_0x56f273(0x207)]===_0x463a70[_0x56f273(0x207)],'Created\x20folder\x20'+_0x4895d8+_0x56f273(0x1fb)),assertVerified(_0x1cfe00[_0x56f273(0x1fa)]===_0x463a70['parentId'],'Created\x20folder\x20'+_0x4895d8+_0x56f273(0x203)+(_0x1cfe00[_0x56f273(0x1fa)]??'root')+'.'),assertVerified(_0x1cfe00['pageId']==null,_0x56f273(0x1fe)+_0x4895d8+_0x56f273(0x22a));const _0x3c2ff7=_0x1cfe00[_0x56f273(0x1fa)]==null?undefined:requireFolder(_0x14ab35,_0x1cfe00[_0x56f273(0x1fa)]);assertVerified(_0x1cfe00[_0x56f273(0x1f0)]===(_0x3c2ff7?_0x3c2ff7['depth']+0x1:0x0),_0x56f273(0x1fe)+_0x4895d8+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x5ddd43){const _0x532e01=describeMenuErrorCause(_0x5ddd43,_0x56f273(0x213),_0x4895d8),_0x2b8ff0=asVerificationError(_0x5ddd43,'Folder\x20'+_0x4895d8+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0x2b8ff0,_0x45bc38,{'stage':_0x56f273(0x215),'succeeded':[{'id':_0x4895d8,'created':!![],'path':_0x25cf53}],'failed':{'id':_0x4895d8,'finalFactsConfirmed':![],..._0x532e01},'warnings':[_0x56f273(0x1f3)+_0x4895d8+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x1ebfaa??{..._0x463a70,'id':_0x4895d8,'path':_0x25cf53},'verification':{'status':_0x56f273(0x218),'lookupCommand':_0x56f273(0x1ef),'targetId':_0x4895d8}});}const _0x3996ff=mutationResult({..._0x45bc38,'after':_0x1cfe00,'dryRun':![],'succeeded':[{'id':_0x4895d8,'type':_0x56f273(0x1f2),'path':_0x25cf53}],'verification':{'checkedBy':_0x56f273(0x226),'snapshotHash':_0x14ab35[_0x56f273(0x221)],'folder':!![],'path':_0x25cf53,'emptyResources':!![]}});return{'ok':!![],'data':_0x3996ff,'message':'Created\x20menu\x20folder\x20'+_0x4895d8+'.'};}};function validateCreateInput(_0xb8c4a7){const _0x28b409=a155_0x1337ab,_0x54caf7=_0xb8c4a7['str'](_0x28b409(0x202))[_0x28b409(0x208)]();if(!_0x54caf7)throw CliErrors[_0x28b409(0x21e)](_0x28b409(0x202));parseParentId(_0xb8c4a7,'parent-id'),validateSort(_0xb8c4a7);}async function buildCreatePlan(_0x1192f8,_0x6c899){const _0x2cd02d=a155_0x1337ab,_0x1ac8a7=await fetchMutationSnapshot(_0x1192f8,_0x2cd02d(0x201)),_0x35134a=parseParentId(_0x1192f8,_0x2cd02d(0x21f))??null;if(_0x35134a!=null)requireFolder(_0x1ac8a7,_0x35134a);const _0x2b91ca=validateSort(_0x1192f8),_0x4b15e6=_0x2b91ca??nextSiblingSort(_0x1ac8a7,_0x35134a,_0x2cd02d(0x1f2)),_0x320699=_0x1192f8[_0x2cd02d(0x20e)](_0x2cd02d(0x202))[_0x2cd02d(0x208)]();return mutationResult({'operation':_0x2cd02d(0x227),'selector':{'label':_0x320699,'parentId':_0x35134a},'before':null,'after':{'id':null,'parentId':_0x35134a,'label':_0x320699,'path':_0x2cd02d(0x211),'type':_0x2cd02d(0x1f2),'visible':!![],'sort':_0x4b15e6,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x6c899,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2cd02d(0x22d),'method':_0x2cd02d(0x1ec),'path':_0x2cd02d(0x200),'body':{'parentId':toApiParentId(_0x35134a),'label':_0x320699,'type':_0x2cd02d(0x1f2),'visible':!![],'sort':_0x4b15e6,'extend':{}}}],'snapshotHash':_0x1ac8a7[_0x2cd02d(0x221)],'warnings':[_0x2cd02d(0x209)]});}
@@ -1 +1 @@
1
- const a156_0x61163e=a156_0x2d01;(function(_0xac6b10,_0x24022e){const _0xdb1677=a156_0x2d01,_0x26ce91=_0xac6b10();while(!![]){try{const _0x58036f=parseInt(_0xdb1677(0x175))/0x1*(parseInt(_0xdb1677(0x18a))/0x2)+-parseInt(_0xdb1677(0x18d))/0x3*(parseInt(_0xdb1677(0x190))/0x4)+-parseInt(_0xdb1677(0x185))/0x5+-parseInt(_0xdb1677(0x187))/0x6+parseInt(_0xdb1677(0x194))/0x7*(parseInt(_0xdb1677(0x199))/0x8)+-parseInt(_0xdb1677(0x169))/0x9*(-parseInt(_0xdb1677(0x196))/0xa)+parseInt(_0xdb1677(0x192))/0xb;if(_0x58036f===_0x24022e)break;else _0x26ce91['push'](_0x26ce91['shift']());}catch(_0xcedd14){_0x26ce91['push'](_0x26ce91['shift']());}}}(a156_0x1f6a,0x87318));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':a156_0x61163e(0x18b),'path':a156_0x61163e(0x18f)}];export const menuGroupUpdate={'service':a156_0x61163e(0x195),'command':a156_0x61163e(0x189),'description':a156_0x61163e(0x17b),'risk':a156_0x61163e(0x16c),'structuredErrors':!![],'rejectedFlags':[{'name':a156_0x61163e(0x16d),'message':a156_0x61163e(0x170),'hint':a156_0x61163e(0x17c)}],'flags':[MENU_ID_FLAG,{'name':'label','type':a156_0x61163e(0x179),'description':a156_0x61163e(0x178)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x56052c){validateUpdateInput(_0x56052c);},async 'dryRun'(_0x5e1cc4){const _0x4089b8=a156_0x61163e;validateUpdateInput(_0x5e1cc4);const {plan:_0x41a1e6,patch:_0xd7730e}=await buildUpdatePlan(_0x5e1cc4,!![]);return menuDryRunResult(_0x41a1e6,{'method':_0x4089b8(0x18b),'url':_0x4089b8(0x18f),'body':_0xd7730e,'description':'Would\x20update\x20folder\x20'+_0x41a1e6[_0x4089b8(0x177)]['id']+'.'});},async 'execute'(_0x4ab4c3){const _0x300b8a=a156_0x61163e;validateUpdateInput(_0x4ab4c3);const {plan:_0x434454,patch:_0x58883d,noChanges:_0x42fe44}=await buildUpdatePlan(_0x4ab4c3,![]),_0x3efb9b=Number(_0x434454[_0x300b8a(0x177)]['id']),_0x1ac38f=await recheckMutationSnapshot(_0x4ab4c3,_0x434454,_0x300b8a(0x174),_0x3efb9b);if(!_0x42fe44)try{await updateMenuEntity(_0x4ab4c3['appCode'],_0x4ab4c3[_0x300b8a(0x188)],_0x58883d);}catch(_0x5eb47f){const _0x87ae3e=mapMenuApiError(_0x5eb47f,'update\x20folder',_0x3efb9b);throw menuFailure(_0x87ae3e,_0x434454,{'stage':_0x300b8a(0x171),'failed':{'id':_0x3efb9b}});}let _0x5b607f=_0x1ac38f,_0x5b852d;try{!_0x42fe44&&(_0x5b607f=await fetchMenuSnapshot(_0x4ab4c3[_0x300b8a(0x180)],_0x4ab4c3['cookie'])),_0x5b852d=requireMenu(_0x5b607f,_0x3efb9b),verifyPatch(_0x5b852d,_0x58883d),_0x5b852d[_0x300b8a(0x198)]!=null&&requireFolder(_0x5b607f,_0x5b852d[_0x300b8a(0x198)]);}catch(_0x4e077e){const _0x4ec9db=describeMenuErrorCause(_0x4e077e,'verify\x20folder\x20update',_0x3efb9b),_0x329cc0=asVerificationError(_0x4e077e,'Update\x20request\x20for\x20folder\x20'+_0x3efb9b+_0x300b8a(0x16a));throw menuFailure(_0x329cc0,_0x434454,{'stage':_0x300b8a(0x186),'succeeded':[{'id':_0x3efb9b,'updateRequested':!_0x42fe44,'skipped':_0x42fe44}],'failed':{'id':_0x3efb9b,'requestedStateConfirmed':![],..._0x4ec9db},'warnings':[_0x300b8a(0x172)],'verification':{'status':_0x300b8a(0x18e),'lookupCommand':_0x300b8a(0x17f),'targetId':_0x3efb9b}});}const _0x123298=mutationResult({..._0x434454,'after':_0x5b852d,'dryRun':![],'succeeded':[{'id':_0x3efb9b,'updated':!_0x42fe44,'skipped':_0x42fe44}],'verification':{'checkedBy':_0x300b8a(0x167),'snapshotHash':_0x5b607f['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x123298,'message':_0x42fe44?_0x300b8a(0x18c)+_0x3efb9b+_0x300b8a(0x17d):'Updated\x20folder\x20'+_0x3efb9b+'.'};}};function a156_0x1f6a(){const _0x46a196=['5006575VEqfLk','verification','1041636zJBUEX','cookie','group-update','20394Svknri','POST','Folder\x20','33xJRmxE','failed','/smartapi/menu/update','130920cTgZLF','type','8664711oRqvam','folder','7FmoRQJ','menu','20arLCwt','\x22,\x20not\x20folder.','parentId','3921832GOQdCo','menu\x20list','unknown','2409543vGMkIS','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','No\x20online\x20fields\x20would\x20change.','write','parent-id','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','hash','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','update','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','validation','update\x20folder','27qKULnC','label','selector','New\x20folder\x20label','string','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','\x20already\x20matches\x20the\x20requested\x20state.','Menu\x20','rabetbase\x20menu\x20list\x20--format\x20json','appCode','sort','menu_not_folder','\x20sort\x20update\x20did\x20not\x20take\x20effect.','trim'];a156_0x1f6a=function(){return _0x46a196;};return a156_0x1f6a();}function validateUpdateInput(_0x525955){const _0x45369e=a156_0x61163e;validateExactId(_0x525955);if(hasFlag(_0x525955,_0x45369e(0x16d)))throw CliErrors[_0x45369e(0x173)](_0x45369e(0x170),_0x45369e(0x17c));if(!hasFlag(_0x525955,_0x45369e(0x176))&&!hasFlag(_0x525955,_0x45369e(0x181)))throw CliErrors[_0x45369e(0x173)](_0x45369e(0x16e));if(hasFlag(_0x525955,_0x45369e(0x176))&&!_0x525955['str'](_0x45369e(0x176))[_0x45369e(0x184)]())throw CliErrors[_0x45369e(0x173)]('--label\x20cannot\x20be\x20empty.');validateSort(_0x525955);}async function buildUpdatePlan(_0x43c2f7,_0x2b8864){const _0x13a52e=a156_0x61163e,_0x312abc=validateExactId(_0x43c2f7),_0x44043c=await fetchMutationSnapshot(_0x43c2f7,_0x13a52e(0x174),_0x312abc),_0x21b955=requireMenu(_0x44043c,_0x312abc);if(_0x21b955[_0x13a52e(0x191)]!==_0x13a52e(0x193))throw menuError(_0x13a52e(0x182),_0x13a52e(0x17e)+_0x312abc+'\x20is\x20type\x20\x22'+(_0x21b955[_0x13a52e(0x191)]||_0x13a52e(0x168))+_0x13a52e(0x197),_0x13a52e(0x17a));assertExpectedState(_0x43c2f7,_0x21b955);const _0x237c38={'id':_0x312abc},_0x578a2f={..._0x21b955};if(hasFlag(_0x43c2f7,_0x13a52e(0x176))){const _0x1c5d86=_0x43c2f7['str'](_0x13a52e(0x176))['trim']();_0x237c38[_0x13a52e(0x176)]=_0x1c5d86,_0x578a2f['label']=_0x1c5d86;}if(hasFlag(_0x43c2f7,'sort')){const _0x218c8e=validateSort(_0x43c2f7);_0x237c38[_0x13a52e(0x181)]=_0x218c8e,_0x578a2f['sort']=_0x218c8e;}const _0x2d3186=sameRequestedState(_0x21b955,_0x578a2f),_0x1df393=_0x2d3186?[_0x13a52e(0x16b)]:[];return{'patch':_0x237c38,'noChanges':_0x2d3186,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x312abc},'before':_0x21b955,'after':_0x578a2f,'dryRun':_0x2b8864,'backend':[...BACKEND],'snapshotHash':_0x44043c[_0x13a52e(0x16f)],'warnings':_0x1df393})};}function sameRequestedState(_0x42d8af,_0xa90b3c){const _0x132939=a156_0x61163e;return _0x42d8af['label']===_0xa90b3c[_0x132939(0x176)]&&_0x42d8af[_0x132939(0x181)]===_0xa90b3c[_0x132939(0x181)];}function a156_0x2d01(_0x98e327,_0x3f9b52){_0x98e327=_0x98e327-0x167;const _0x1f6a05=a156_0x1f6a();let _0x2d01b0=_0x1f6a05[_0x98e327];return _0x2d01b0;}function verifyPatch(_0x5254d2,_0x411f56){const _0x296f83=a156_0x61163e;assertVerified(_0x5254d2[_0x296f83(0x191)]===_0x296f83(0x193),_0x296f83(0x17e)+_0x5254d2['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x411f56[_0x296f83(0x176)]!==undefined&&assertVerified(_0x5254d2[_0x296f83(0x176)]===_0x411f56['label'],_0x296f83(0x18c)+_0x5254d2['id']+'\x20label\x20update\x20did\x20not\x20take\x20effect.'),_0x411f56['sort']!==undefined&&assertVerified(_0x5254d2[_0x296f83(0x181)]===_0x411f56[_0x296f83(0x181)],'Folder\x20'+_0x5254d2['id']+_0x296f83(0x183));}
1
+ const a156_0x2fb70e=a156_0xf588;(function(_0x236fea,_0x5dabc7){const _0x6b24cb=a156_0xf588,_0x87b170=_0x236fea();while(!![]){try{const _0x24d4be=parseInt(_0x6b24cb(0xcd))/0x1+-parseInt(_0x6b24cb(0xe4))/0x2+-parseInt(_0x6b24cb(0xc9))/0x3*(parseInt(_0x6b24cb(0xf2))/0x4)+-parseInt(_0x6b24cb(0xd8))/0x5+-parseInt(_0x6b24cb(0xd7))/0x6+-parseInt(_0x6b24cb(0xd2))/0x7*(-parseInt(_0x6b24cb(0xd3))/0x8)+-parseInt(_0x6b24cb(0xca))/0x9*(-parseInt(_0x6b24cb(0xd5))/0xa);if(_0x24d4be===_0x5dabc7)break;else _0x87b170['push'](_0x87b170['shift']());}catch(_0x42cb8f){_0x87b170['push'](_0x87b170['shift']());}}}(a156_0xd353,0xbeef0));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';function a156_0xf588(_0x346601,_0x2909f1){_0x346601=_0x346601-0xc8;const _0xd3537b=a156_0xd353();let _0xf588a4=_0xd3537b[_0x346601];return _0xf588a4;}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a156_0x2fb70e(0xd0),'path':'/smartapi/menu/update'}];export const menuGroupUpdate={'service':a156_0x2fb70e(0xe1),'command':a156_0x2fb70e(0xc8),'description':a156_0x2fb70e(0xdb),'risk':a156_0x2fb70e(0xec),'structuredErrors':!![],'rejectedFlags':[{'name':a156_0x2fb70e(0xe7),'message':a156_0x2fb70e(0xf0),'hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a156_0x2fb70e(0xdc),'type':'string','description':a156_0x2fb70e(0xcc)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4758b6){validateUpdateInput(_0x4758b6);},async 'dryRun'(_0x4174f7){const _0x27b785=a156_0x2fb70e;validateUpdateInput(_0x4174f7);const {plan:_0x1322b3,patch:_0x3a72ed}=await buildUpdatePlan(_0x4174f7,!![]);return menuDryRunResult(_0x1322b3,{'method':_0x27b785(0xd0),'url':_0x27b785(0xef),'body':_0x3a72ed,'description':'Would\x20update\x20folder\x20'+_0x1322b3[_0x27b785(0xe9)]['id']+'.'});},async 'execute'(_0xd529f7){const _0x254409=a156_0x2fb70e;validateUpdateInput(_0xd529f7);const {plan:_0x21bcf1,patch:_0x2b61c0,noChanges:_0x298195}=await buildUpdatePlan(_0xd529f7,![]),_0x466994=Number(_0x21bcf1[_0x254409(0xe9)]['id']),_0x27260f=await recheckMutationSnapshot(_0xd529f7,_0x21bcf1,_0x254409(0xe0),_0x466994);if(!_0x298195)try{await updateMenuEntity(_0xd529f7[_0x254409(0xe8)],_0xd529f7[_0x254409(0xeb)],_0x2b61c0);}catch(_0x2a7ffe){const _0x32a462=mapMenuApiError(_0x2a7ffe,'update\x20folder',_0x466994);throw menuFailure(_0x32a462,_0x21bcf1,{'stage':_0x254409(0xd9),'failed':{'id':_0x466994}});}let _0x3ecd0f=_0x27260f,_0x1e82bc;try{!_0x298195&&(_0x3ecd0f=await fetchMenuSnapshot(_0xd529f7[_0x254409(0xe8)],_0xd529f7['cookie'])),_0x1e82bc=requireMenu(_0x3ecd0f,_0x466994),verifyPatch(_0x1e82bc,_0x2b61c0),_0x1e82bc['parentId']!=null&&requireFolder(_0x3ecd0f,_0x1e82bc[_0x254409(0xf6)]);}catch(_0x261907){const _0x6a3779=describeMenuErrorCause(_0x261907,'verify\x20folder\x20update',_0x466994),_0xafbbe8=asVerificationError(_0x261907,_0x254409(0xcf)+_0x466994+_0x254409(0xda));throw menuFailure(_0xafbbe8,_0x21bcf1,{'stage':_0x254409(0xf8),'succeeded':[{'id':_0x466994,'updateRequested':!_0x298195,'skipped':_0x298195}],'failed':{'id':_0x466994,'requestedStateConfirmed':![],..._0x6a3779},'warnings':[_0x254409(0xdf)],'verification':{'status':_0x254409(0xfb),'lookupCommand':_0x254409(0xe6),'targetId':_0x466994}});}const _0x7e11f4=mutationResult({..._0x21bcf1,'after':_0x1e82bc,'dryRun':![],'succeeded':[{'id':_0x466994,'updated':!_0x298195,'skipped':_0x298195}],'verification':{'checkedBy':_0x254409(0xcb),'snapshotHash':_0x3ecd0f[_0x254409(0xf7)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x7e11f4,'message':_0x298195?'Folder\x20'+_0x466994+_0x254409(0xce):_0x254409(0xed)+_0x466994+'.'};}};function validateUpdateInput(_0x35c842){const _0x3e1616=a156_0x2fb70e;validateExactId(_0x35c842);if(hasFlag(_0x35c842,'parent-id'))throw CliErrors[_0x3e1616(0xf3)](_0x3e1616(0xf0),_0x3e1616(0xfc));if(!hasFlag(_0x35c842,_0x3e1616(0xdc))&&!hasFlag(_0x35c842,_0x3e1616(0xd4)))throw CliErrors[_0x3e1616(0xf3)](_0x3e1616(0xf1));if(hasFlag(_0x35c842,_0x3e1616(0xdc))&&!_0x35c842[_0x3e1616(0xe5)](_0x3e1616(0xdc))['trim']())throw CliErrors[_0x3e1616(0xf3)](_0x3e1616(0xe3));validateSort(_0x35c842);}async function buildUpdatePlan(_0x3e12cf,_0x4732cf){const _0x49ddf9=a156_0x2fb70e,_0x4e79df=validateExactId(_0x3e12cf),_0x4ed0de=await fetchMutationSnapshot(_0x3e12cf,_0x49ddf9(0xe0),_0x4e79df),_0x44f3a9=requireMenu(_0x4ed0de,_0x4e79df);if(_0x44f3a9[_0x49ddf9(0xea)]!==_0x49ddf9(0xfa))throw menuError(_0x49ddf9(0xe2),_0x49ddf9(0xf5)+_0x4e79df+'\x20is\x20type\x20\x22'+(_0x44f3a9[_0x49ddf9(0xea)]||_0x49ddf9(0xf9))+_0x49ddf9(0xd6),_0x49ddf9(0xee));assertExpectedState(_0x3e12cf,_0x44f3a9);const _0xae2718={'id':_0x4e79df},_0x2f4825={..._0x44f3a9};if(hasFlag(_0x3e12cf,_0x49ddf9(0xdc))){const _0x2939ab=_0x3e12cf[_0x49ddf9(0xe5)](_0x49ddf9(0xdc))['trim']();_0xae2718[_0x49ddf9(0xdc)]=_0x2939ab,_0x2f4825[_0x49ddf9(0xdc)]=_0x2939ab;}if(hasFlag(_0x3e12cf,'sort')){const _0x45b225=validateSort(_0x3e12cf);_0xae2718['sort']=_0x45b225,_0x2f4825[_0x49ddf9(0xd4)]=_0x45b225;}const _0x1e9224=sameRequestedState(_0x44f3a9,_0x2f4825),_0x5b3204=_0x1e9224?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0xae2718,'noChanges':_0x1e9224,'plan':mutationResult({'operation':_0x49ddf9(0xc8),'selector':{'id':_0x4e79df},'before':_0x44f3a9,'after':_0x2f4825,'dryRun':_0x4732cf,'backend':[...BACKEND],'snapshotHash':_0x4ed0de[_0x49ddf9(0xf7)],'warnings':_0x5b3204})};}function sameRequestedState(_0x4d44cc,_0x4c418a){const _0x16cd9e=a156_0x2fb70e;return _0x4d44cc[_0x16cd9e(0xdc)]===_0x4c418a[_0x16cd9e(0xdc)]&&_0x4d44cc[_0x16cd9e(0xd4)]===_0x4c418a['sort'];}function verifyPatch(_0x19466f,_0x3ea70e){const _0x2e93d1=a156_0x2fb70e;assertVerified(_0x19466f[_0x2e93d1(0xea)]===_0x2e93d1(0xfa),_0x2e93d1(0xf5)+_0x19466f['id']+_0x2e93d1(0xf4)),_0x3ea70e[_0x2e93d1(0xdc)]!==undefined&&assertVerified(_0x19466f[_0x2e93d1(0xdc)]===_0x3ea70e['label'],_0x2e93d1(0xde)+_0x19466f['id']+_0x2e93d1(0xdd)),_0x3ea70e['sort']!==undefined&&assertVerified(_0x19466f[_0x2e93d1(0xd4)]===_0x3ea70e['sort'],_0x2e93d1(0xde)+_0x19466f['id']+_0x2e93d1(0xd1));}function a156_0xd353(){const _0x146f6c=['appCode','selector','type','cookie','write','Updated\x20folder\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','/smartapi/menu/update','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','4501232gUNJqW','validation','\x20is\x20no\x20longer\x20type\x20folder.','Menu\x20','parentId','hash','verification','unknown','folder','failed','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','group-update','3EFBJLm','335817fpWbFc','menu\x20list','New\x20folder\x20label','665685xiBBAV','\x20already\x20matches\x20the\x20requested\x20state.','Update\x20request\x20for\x20folder\x20','POST','\x20sort\x20update\x20did\x20not\x20take\x20effect.','7UkBrJH','5041856wgHiUW','sort','830CCjkWW','\x22,\x20not\x20folder.','4419924weuNTF','6206150OQkcPq','update','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','label','\x20label\x20update\x20did\x20not\x20take\x20effect.','Folder\x20','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','update\x20folder','menu','menu_not_folder','--label\x20cannot\x20be\x20empty.','1015280bZXUOK','str','rabetbase\x20menu\x20list\x20--format\x20json','parent-id'];a156_0xd353=function(){return _0x146f6c;};return a156_0xd353();}
@@ -1 +1 @@
1
- (function(_0x160d2f,_0x6cb9b9){const _0x10c43d=a157_0x4e20,_0x317bdf=_0x160d2f();while(!![]){try{const _0x1f7c68=-parseInt(_0x10c43d(0x1e8))/0x1*(-parseInt(_0x10c43d(0x1ec))/0x2)+-parseInt(_0x10c43d(0x1e7))/0x3+parseInt(_0x10c43d(0x1ef))/0x4+parseInt(_0x10c43d(0x1e9))/0x5*(parseInt(_0x10c43d(0x1e6))/0x6)+parseInt(_0x10c43d(0x1ee))/0x7+parseInt(_0x10c43d(0x1eb))/0x8*(-parseInt(_0x10c43d(0x1ed))/0x9)+-parseInt(_0x10c43d(0x1ea))/0xa;if(_0x1f7c68===_0x6cb9b9)break;else _0x317bdf['push'](_0x317bdf['shift']());}catch(_0x38fafb){_0x317bdf['push'](_0x317bdf['shift']());}}}(a157_0x515b,0x9a9ee));import{menuList}from'../../commands/menu/list.js';function a157_0x4e20(_0x16831f,_0x3d8029){_0x16831f=_0x16831f-0x1e6;const _0x515b41=a157_0x515b();let _0x4e2038=_0x515b41[_0x16831f];return _0x4e2038;}import{menuSync}from'../../commands/menu/sync.js';function a157_0x515b(){const _0x21c4b3=['1161xThTDt','2675505fGHBuJ','1843204fHgZmQ','382950XRKDGC','390678slhork','1zGcTdR','65GEbEur','14537520JnmBQp','7072MBHrwq','1317198jVojof'];a157_0x515b=function(){return _0x21c4b3;};return a157_0x515b();}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';import{menuSubappAssetsStatus}from'../../commands/menu/subapp-assets-status.js';import{menuSubappAssetsUpdate}from'../../commands/menu/subapp-assets-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuSubappAssetsStatus,menuSubappAssetsUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
1
+ (function(_0x19a336,_0x327e6a){const _0x2cd0fa=a157_0x1fa0,_0x27c8ae=_0x19a336();while(!![]){try{const _0x1ff3be=-parseInt(_0x2cd0fa(0x1b9))/0x1+-parseInt(_0x2cd0fa(0x1c3))/0x2*(-parseInt(_0x2cd0fa(0x1bc))/0x3)+parseInt(_0x2cd0fa(0x1b8))/0x4*(parseInt(_0x2cd0fa(0x1bf))/0x5)+-parseInt(_0x2cd0fa(0x1be))/0x6*(parseInt(_0x2cd0fa(0x1c1))/0x7)+-parseInt(_0x2cd0fa(0x1bb))/0x8+parseInt(_0x2cd0fa(0x1ba))/0x9*(-parseInt(_0x2cd0fa(0x1c0))/0xa)+parseInt(_0x2cd0fa(0x1c2))/0xb*(parseInt(_0x2cd0fa(0x1bd))/0xc);if(_0x1ff3be===_0x327e6a)break;else _0x27c8ae['push'](_0x27c8ae['shift']());}catch(_0x42683d){_0x27c8ae['push'](_0x27c8ae['shift']());}}}(a157_0x37e1,0x22dfd));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';import{menuGroupUpdate}from'../../commands/menu/group-update.js';function a157_0x37e1(){const _0x38be9f=['128EORfiQ','2948eXujLu','236241nvZeQC','15462puGQfd','1286216eNbPLn','6702nzXbvg','235476JYDdfo','96oBESah','590tsAsIm','1250eZgAAH','122444haACim','451lmnQBk'];a157_0x37e1=function(){return _0x38be9f;};return a157_0x37e1();}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';function a157_0x1fa0(_0x21ddc9,_0x257283){_0x21ddc9=_0x21ddc9-0x1b8;const _0x37e1ec=a157_0x37e1();let _0x1fa060=_0x37e1ec[_0x21ddc9];return _0x1fa060;}import{menuSubappAssetsStatus}from'../../commands/menu/subapp-assets-status.js';import{menuSubappAssetsUpdate}from'../../commands/menu/subapp-assets-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuSubappAssetsStatus,menuSubappAssetsUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
@@ -1 +1 @@
1
- const a158_0x4f2788=a158_0x15c8;(function(_0x289705,_0x8c7dc8){const _0x65b2e1=a158_0x15c8,_0x76906b=_0x289705();while(!![]){try{const _0x1ba421=parseInt(_0x65b2e1(0x1ce))/0x1+-parseInt(_0x65b2e1(0x1d0))/0x2+parseInt(_0x65b2e1(0x1d2))/0x3*(-parseInt(_0x65b2e1(0x1d9))/0x4)+-parseInt(_0x65b2e1(0x1dd))/0x5+parseInt(_0x65b2e1(0x1df))/0x6+parseInt(_0x65b2e1(0x1e0))/0x7*(parseInt(_0x65b2e1(0x1d6))/0x8)+-parseInt(_0x65b2e1(0x1d4))/0x9*(-parseInt(_0x65b2e1(0x1dc))/0xa);if(_0x1ba421===_0x8c7dc8)break;else _0x76906b['push'](_0x76906b['shift']());}catch(_0x328935){_0x76906b['push'](_0x76906b['shift']());}}}(a158_0x2626,0x394b9));function a158_0x2626(){const _0xfe2b54=['read','boolean','Found\x20','menus','total','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','list','41745MfzZXp','verbose','827546hBwwjJ','cookie','183tkqClF','map','828855BQGeUL','No\x20menus\x20found.','1032BZbnWU','bool','menu','9772vhVpZR','hash','\x20menu(s)','100yMhjte','1567715cNDGVA','appCode','796296rQNrFI','847nKiuIq'];a158_0x2626=function(){return _0xfe2b54;};return a158_0x2626();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a158_0x15c8(_0x19b4b7,_0x399ff2){_0x19b4b7=_0x19b4b7-0x1ce;const _0x262693=a158_0x2626();let _0x15c8eb=_0x262693[_0x19b4b7];return _0x15c8eb;}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a158_0x4f2788(0x1d8),'command':a158_0x4f2788(0x1e7),'description':'List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','risk':a158_0x4f2788(0x1e1),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a158_0x4f2788(0x1cf),'type':a158_0x4f2788(0x1e2),'description':a158_0x4f2788(0x1e6)}],async 'execute'(_0x5a9913){const _0x1edc01=a158_0x4f2788,_0x320a89=_0x5a9913[_0x1edc01(0x1d7)](_0x1edc01(0x1cf)),_0x280d5e=await fetchMenuSnapshot(_0x5a9913[_0x1edc01(0x1de)],_0x5a9913[_0x1edc01(0x1d1)],{'verbose':_0x320a89});return{'ok':!![],'data':{'total':_0x280d5e[_0x1edc01(0x1e5)],'snapshotHash':_0x280d5e[_0x1edc01(0x1da)],'menus':_0x280d5e[_0x1edc01(0x1e4)][_0x1edc01(0x1d3)](toMenuListItem)},'message':_0x280d5e[_0x1edc01(0x1e5)]===0x0?_0x1edc01(0x1d5):_0x1edc01(0x1e3)+_0x280d5e[_0x1edc01(0x1e5)]+_0x1edc01(0x1db)};}};
1
+ function a158_0x4165(_0x53d065,_0x108efc){_0x53d065=_0x53d065-0x1d4;const _0x222f4d=a158_0x222f();let _0x4165b1=_0x222f4d[_0x53d065];return _0x4165b1;}const a158_0x56e322=a158_0x4165;(function(_0x485746,_0x1e342f){const _0xc229=a158_0x4165,_0xa6fb79=_0x485746();while(!![]){try{const _0x437d5e=parseInt(_0xc229(0x1ec))/0x1*(-parseInt(_0xc229(0x1e7))/0x2)+-parseInt(_0xc229(0x1de))/0x3+-parseInt(_0xc229(0x1dc))/0x4*(parseInt(_0xc229(0x1d5))/0x5)+parseInt(_0xc229(0x1e3))/0x6+parseInt(_0xc229(0x1dd))/0x7+parseInt(_0xc229(0x1e1))/0x8*(-parseInt(_0xc229(0x1da))/0x9)+parseInt(_0xc229(0x1df))/0xa;if(_0x437d5e===_0x1e342f)break;else _0xa6fb79['push'](_0xa6fb79['shift']());}catch(_0x4cc7c9){_0xa6fb79['push'](_0xa6fb79['shift']());}}}(a158_0x222f,0xd861f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':'menu','command':a158_0x56e322(0x1d8),'description':a158_0x56e322(0x1d6),'risk':a158_0x56e322(0x1ea),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a158_0x56e322(0x1e9),'type':a158_0x56e322(0x1e8),'description':a158_0x56e322(0x1d9)}],async 'execute'(_0x9e1aa5){const _0x3a8ab8=a158_0x56e322,_0x2c7f51=_0x9e1aa5[_0x3a8ab8(0x1eb)](_0x3a8ab8(0x1e9)),_0x4fc23b=await fetchMenuSnapshot(_0x9e1aa5[_0x3a8ab8(0x1e4)],_0x9e1aa5[_0x3a8ab8(0x1e0)],{'verbose':_0x2c7f51});return{'ok':!![],'data':{'total':_0x4fc23b[_0x3a8ab8(0x1d7)],'snapshotHash':_0x4fc23b[_0x3a8ab8(0x1db)],'menus':_0x4fc23b[_0x3a8ab8(0x1d4)]['map'](toMenuListItem)},'message':_0x4fc23b[_0x3a8ab8(0x1d7)]===0x0?_0x3a8ab8(0x1e6):_0x3a8ab8(0x1e5)+_0x4fc23b[_0x3a8ab8(0x1d7)]+_0x3a8ab8(0x1e2)};}};function a158_0x222f(){const _0x7f2bf8=['17127370QePctL','cookie','8wlzFtu','\x20menu(s)','9075768uOrmBQ','appCode','Found\x20','No\x20menus\x20found.','20PQMdrx','boolean','verbose','read','bool','120325ATZfnE','menus','6642500pHsxLA','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','total','list','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','6429267rQmMPz','hash','4hRKSVG','9915612sPNxxl','1528395NdKbEB'];a158_0x222f=function(){return _0x7f2bf8;};return a158_0x222f();}
@@ -1 +1 @@
1
- const a159_0x161ec4=a159_0x23d0;(function(_0xa88b9a,_0x13b460){const _0x51c56f=a159_0x23d0,_0x20bac7=_0xa88b9a();while(!![]){try{const _0x5d78e1=parseInt(_0x51c56f(0x168))/0x1*(parseInt(_0x51c56f(0x15e))/0x2)+parseInt(_0x51c56f(0x15a))/0x3+parseInt(_0x51c56f(0x157))/0x4+-parseInt(_0x51c56f(0x180))/0x5+parseInt(_0x51c56f(0x16e))/0x6+parseInt(_0x51c56f(0x156))/0x7+-parseInt(_0x51c56f(0x15b))/0x8;if(_0x5d78e1===_0x13b460)break;else _0x20bac7['push'](_0x20bac7['shift']());}catch(_0x4b6f4d){_0x20bac7['push'](_0x20bac7['shift']());}}}(a159_0x4529,0x9a2c9));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a159_0x4529(){const _0x36b7ce=['\x20is\x20no\x20longer\x20a\x20leaf.','Move\x20request\x20for\x20menu\x20','/smartapi/menu/update','menu_move_source_not_leaf','POST','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','parentId',',\x20current\x20','cookie','menu\x20list','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','after','failed','parent-id','563525xPQOIH','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','verify\x20menu\x20move','verification','Moved\x20menu\x20','35798kkWIVe','3391276OOjXSf','menu','expect-parent-id','3722403mJMVUv','22932184nHsIjj','move','appCode','144024VYKspA','update','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','childrenCount','sort','Would\x20move\x20menu\x20','\x20parent\x20changed:\x20expected\x20','menu_state_drift','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','6sbEZeq','hash','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','type','rabetbase\x20menu\x20list\x20--format\x20compress','6509514TBadXV','move\x20menu','Menu\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.'];a159_0x4529=function(){return _0x36b7ce;};return a159_0x4529();}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':a159_0x161ec4(0x176),'path':a159_0x161ec4(0x174)}];export const menuMove={'service':a159_0x161ec4(0x158),'command':a159_0x161ec4(0x15c),'description':a159_0x161ec4(0x17c),'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'(_0x183fca){validateMoveInput(_0x183fca);},async 'dryRun'(_0x5b8490){const _0x5603d2=a159_0x161ec4,{plan:_0x2f603b,patch:_0x3693e8}=await buildMovePlan(_0x5b8490,!![]);return menuDryRunResult(_0x2f603b,{'method':_0x5603d2(0x176),'url':_0x5603d2(0x174),'body':{..._0x3693e8,'appCode':_0x5b8490['appCode']},'description':_0x5603d2(0x164)+_0x3693e8['id']+'.'});},async 'execute'(_0x565408){const _0x24e755=a159_0x161ec4;validateMoveInput(_0x565408);const {plan:_0x3cbc0b,patch:_0x155e88,noChanges:_0x507b33,snapshot:_0x220732}=await buildMovePlan(_0x565408,![]),_0x1fa16a=_0x155e88['id'];if(!_0x507b33)try{await updateMenuEntity(_0x565408[_0x24e755(0x15d)],_0x565408['cookie'],_0x155e88);}catch(_0x3ecd17){const _0x39dd3d=mapMenuApiError(_0x3ecd17,_0x24e755(0x15c),_0x1fa16a);throw menuFailure(_0x39dd3d,_0x3cbc0b,{'stage':_0x24e755(0x15f),'failed':{'id':_0x1fa16a},'warnings':[_0x24e755(0x182)],'verification':{'status':_0x24e755(0x17e),'targetId':_0x1fa16a,'lookupCommand':_0x24e755(0x16d)}});}let _0x353780,_0x49ed32;try{_0x353780=_0x507b33?_0x220732:await fetchMenuSnapshot(_0x565408[_0x24e755(0x15d)],_0x565408[_0x24e755(0x17a)]),_0x49ed32=requireMenu(_0x353780,_0x1fa16a),verifyMove(_0x49ed32,_0x3cbc0b[_0x24e755(0x17d)]),_0x49ed32[_0x24e755(0x178)]!==null&&requireFolder(_0x353780,_0x49ed32['parentId']);}catch(_0x575644){const _0x77bd0d=describeMenuErrorCause(_0x575644,_0x24e755(0x183),_0x1fa16a),_0x5e1280=asVerificationError(_0x575644,_0x24e755(0x173)+_0x1fa16a+_0x24e755(0x167));throw menuFailure(_0x5e1280,_0x3cbc0b,{'stage':_0x24e755(0x154),'succeeded':[{'id':_0x1fa16a,'updateRequested':!_0x507b33,'skipped':_0x507b33}],'failed':{'id':_0x1fa16a,'requestedStateConfirmed':![],..._0x77bd0d},'warnings':[_0x24e755(0x177)],'verification':{'status':_0x24e755(0x17e),'targetId':_0x1fa16a,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x1f4429=mutationResult({..._0x3cbc0b,'after':_0x49ed32,'dryRun':![],'succeeded':[{'id':_0x1fa16a,'updated':!_0x507b33,'skipped':_0x507b33}],'verification':{'checkedBy':_0x24e755(0x17b),'snapshotHash':_0x353780[_0x24e755(0x169)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x1f4429,'message':_0x507b33?_0x24e755(0x170)+_0x1fa16a+_0x24e755(0x160):_0x24e755(0x155)+_0x1fa16a+'.'};}};function validateMoveInput(_0x14f2ef){const _0x3ad76d=a159_0x161ec4;validateExactId(_0x14f2ef),parseParentId(_0x14f2ef,_0x3ad76d(0x17f),{'required':!![]}),parseParentId(_0x14f2ef,_0x3ad76d(0x159),{'required':!![]}),validateSort(_0x14f2ef);}function a159_0x23d0(_0x58966a,_0x348beb){_0x58966a=_0x58966a-0x154;const _0x45290a=a159_0x4529();let _0x23d03d=_0x45290a[_0x58966a];return _0x23d03d;}async function buildMovePlan(_0x48ca46,_0x3ed52f){const _0x5a98bb=a159_0x161ec4,_0x331b27=validateExactId(_0x48ca46),_0x24ff40=parseParentId(_0x48ca46,'parent-id',{'required':!![]}),_0x41734f=parseParentId(_0x48ca46,_0x5a98bb(0x159),{'required':!![]}),_0x58e3ce=validateSort(_0x48ca46),_0x46b8af=await fetchMutationSnapshot(_0x48ca46,_0x5a98bb(0x16f),_0x331b27),_0x30685c=requireMenu(_0x46b8af,_0x331b27);if(_0x30685c[_0x5a98bb(0x16c)]==='folder'||_0x30685c['childrenCount']!==0x0)throw menuError(_0x5a98bb(0x175),'Menu\x20'+_0x331b27+_0x5a98bb(0x181),_0x5a98bb(0x171));if(_0x30685c[_0x5a98bb(0x178)]!==_0x41734f)throw menuError(_0x5a98bb(0x166),_0x5a98bb(0x170)+_0x331b27+_0x5a98bb(0x165)+formatParent(_0x41734f)+_0x5a98bb(0x179)+formatParent(_0x30685c['parentId'])+'.',_0x5a98bb(0x16b));_0x24ff40!==null&&requireFolder(_0x46b8af,_0x24ff40);const _0x3b91b7=_0x58e3ce??(_0x30685c['parentId']===_0x24ff40?_0x30685c['sort']??0x0:nextSiblingSort(_0x46b8af,_0x24ff40,_0x5a98bb(0x158))),_0x156c3b={..._0x30685c,'parentId':_0x24ff40,'sort':_0x3b91b7},_0x4e154d={'id':_0x331b27,'parentId':toApiParentId(_0x24ff40),'sort':_0x3b91b7},_0x5a195a=_0x30685c['parentId']===_0x24ff40&&_0x30685c[_0x5a98bb(0x163)]===_0x3b91b7;return{'patch':_0x4e154d,'noChanges':_0x5a195a,'snapshot':_0x46b8af,'plan':mutationResult({'operation':_0x5a98bb(0x15c),'selector':{'id':_0x331b27,'parentId':_0x24ff40},'before':_0x30685c,'after':_0x156c3b,'dryRun':_0x3ed52f,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':_0x5a98bb(0x176),'path':_0x5a98bb(0x174),'body':{..._0x4e154d,'appCode':_0x48ca46['appCode']}}],'snapshotHash':_0x46b8af[_0x5a98bb(0x169)],'warnings':_0x5a195a?[_0x5a98bb(0x16a)]:[]})};}function verifyMove(_0x3dac89,_0x5d2aaa){const _0x20c2cb=a159_0x161ec4;assertVerified(_0x3dac89[_0x20c2cb(0x16c)]!=='folder',_0x20c2cb(0x170)+_0x3dac89['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x3dac89[_0x20c2cb(0x162)]===0x0,'Menu\x20'+_0x3dac89['id']+_0x20c2cb(0x172)),assertVerified(_0x3dac89[_0x20c2cb(0x178)]===_0x5d2aaa[_0x20c2cb(0x178)],'Menu\x20'+_0x3dac89['id']+_0x20c2cb(0x161)),assertVerified(_0x3dac89[_0x20c2cb(0x163)]===_0x5d2aaa[_0x20c2cb(0x163)],_0x20c2cb(0x170)+_0x3dac89['id']+'\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.');}
1
+ const a159_0x30d775=a159_0x5cda;(function(_0x27af46,_0x50f8e0){const _0x1a75f4=a159_0x5cda,_0x316fad=_0x27af46();while(!![]){try{const _0x52ca1f=-parseInt(_0x1a75f4(0x1ac))/0x1*(parseInt(_0x1a75f4(0x19d))/0x2)+parseInt(_0x1a75f4(0x1a5))/0x3+parseInt(_0x1a75f4(0x197))/0x4+-parseInt(_0x1a75f4(0x1b8))/0x5*(parseInt(_0x1a75f4(0x1b5))/0x6)+parseInt(_0x1a75f4(0x1a8))/0x7*(parseInt(_0x1a75f4(0x199))/0x8)+-parseInt(_0x1a75f4(0x1a0))/0x9*(-parseInt(_0x1a75f4(0x1b2))/0xa)+-parseInt(_0x1a75f4(0x1ad))/0xb*(parseInt(_0x1a75f4(0x192))/0xc);if(_0x52ca1f===_0x50f8e0)break;else _0x316fad['push'](_0x316fad['shift']());}catch(_0x19d728){_0x316fad['push'](_0x316fad['shift']());}}}(a159_0x2541,0x70ab9));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':a159_0x30d775(0x1a1),'path':a159_0x30d775(0x1ab)}];export const menuMove={'service':a159_0x30d775(0x19e),'command':a159_0x30d775(0x1ba),'description':a159_0x30d775(0x19c),'risk':a159_0x30d775(0x191),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5bc54b){validateMoveInput(_0x5bc54b);},async 'dryRun'(_0x3227fd){const _0x5e0240=a159_0x30d775,{plan:_0x161c36,patch:_0x10fff8}=await buildMovePlan(_0x3227fd,!![]);return menuDryRunResult(_0x161c36,{'method':_0x5e0240(0x1a1),'url':_0x5e0240(0x1ab),'body':{..._0x10fff8,'appCode':_0x3227fd[_0x5e0240(0x1b4)]},'description':_0x5e0240(0x19a)+_0x10fff8['id']+'.'});},async 'execute'(_0x44283a){const _0x1f2e3a=a159_0x30d775;validateMoveInput(_0x44283a);const {plan:_0x2b96d0,patch:_0x87d2c,noChanges:_0x437a36,snapshot:_0x30b1c7}=await buildMovePlan(_0x44283a,![]),_0x56ef41=_0x87d2c['id'];if(!_0x437a36)try{await updateMenuEntity(_0x44283a[_0x1f2e3a(0x1b4)],_0x44283a[_0x1f2e3a(0x1bc)],_0x87d2c);}catch(_0x578cd5){const _0x581715=mapMenuApiError(_0x578cd5,_0x1f2e3a(0x1ba),_0x56ef41);throw menuFailure(_0x581715,_0x2b96d0,{'stage':_0x1f2e3a(0x1aa),'failed':{'id':_0x56ef41},'warnings':['The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x1f2e3a(0x1b0),'targetId':_0x56ef41,'lookupCommand':_0x1f2e3a(0x19b)}});}let _0x40bebb,_0x1b9cc7;try{_0x40bebb=_0x437a36?_0x30b1c7:await fetchMenuSnapshot(_0x44283a['appCode'],_0x44283a[_0x1f2e3a(0x1bc)]),_0x1b9cc7=requireMenu(_0x40bebb,_0x56ef41),verifyMove(_0x1b9cc7,_0x2b96d0[_0x1f2e3a(0x18a)]),_0x1b9cc7[_0x1f2e3a(0x1a7)]!==null&&requireFolder(_0x40bebb,_0x1b9cc7[_0x1f2e3a(0x1a7)]);}catch(_0xa0fff8){const _0x579d7c=describeMenuErrorCause(_0xa0fff8,_0x1f2e3a(0x18c),_0x56ef41),_0xa7ae52=asVerificationError(_0xa0fff8,_0x1f2e3a(0x190)+_0x56ef41+_0x1f2e3a(0x1af));throw menuFailure(_0xa7ae52,_0x2b96d0,{'stage':_0x1f2e3a(0x18f),'succeeded':[{'id':_0x56ef41,'updateRequested':!_0x437a36,'skipped':_0x437a36}],'failed':{'id':_0x56ef41,'requestedStateConfirmed':![],..._0x579d7c},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x1f2e3a(0x1b0),'targetId':_0x56ef41,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x4b64ff=mutationResult({..._0x2b96d0,'after':_0x1b9cc7,'dryRun':![],'succeeded':[{'id':_0x56ef41,'updated':!_0x437a36,'skipped':_0x437a36}],'verification':{'checkedBy':_0x1f2e3a(0x19f),'snapshotHash':_0x40bebb['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x4b64ff,'message':_0x437a36?_0x1f2e3a(0x194)+_0x56ef41+_0x1f2e3a(0x1bd):_0x1f2e3a(0x193)+_0x56ef41+'.'};}};function a159_0x2541(){const _0x5aabeb=['\x20is\x20no\x20longer\x20a\x20leaf.','\x20is\x20now\x20type\x20folder.','\x20parent\x20changed:\x20expected\x20','2280345hYcmAq','hash','parentId','3212699ABQlVk','menu_state_drift','update','/smartapi/menu/update','139AoQRHH','142637HEHVlx','type','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','failed',',\x20current\x20','1272620XpBEmM','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','appCode','306312toRHuK','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','parent-id','75vewcLL','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','move','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','cookie','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','after','childrenCount','verify\x20menu\x20move','expect-parent-id','sort','verification','Move\x20request\x20for\x20menu\x20','write','924snPORo','Moved\x20menu\x20','Menu\x20','menu_move_source_not_leaf','folder','2206584kgvMBj','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','16qHXtlt','Would\x20move\x20menu\x20','rabetbase\x20menu\x20list\x20--format\x20compress','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','5550wKWsBL','menu','menu\x20list','27yDUeKJ','POST'];a159_0x2541=function(){return _0x5aabeb;};return a159_0x2541();}function validateMoveInput(_0x1dc219){const _0x4a8682=a159_0x30d775;validateExactId(_0x1dc219),parseParentId(_0x1dc219,'parent-id',{'required':!![]}),parseParentId(_0x1dc219,_0x4a8682(0x18d),{'required':!![]}),validateSort(_0x1dc219);}async function buildMovePlan(_0x316c4c,_0xe99319){const _0x191e3d=a159_0x30d775,_0x32a780=validateExactId(_0x316c4c),_0x2539d8=parseParentId(_0x316c4c,_0x191e3d(0x1b7),{'required':!![]}),_0x4e9650=parseParentId(_0x316c4c,_0x191e3d(0x18d),{'required':!![]}),_0x585145=validateSort(_0x316c4c),_0x464c1f=await fetchMutationSnapshot(_0x316c4c,'move\x20menu',_0x32a780),_0xf51fb6=requireMenu(_0x464c1f,_0x32a780);if(_0xf51fb6[_0x191e3d(0x1ae)]==='folder'||_0xf51fb6[_0x191e3d(0x18b)]!==0x0)throw menuError(_0x191e3d(0x195),_0x191e3d(0x194)+_0x32a780+_0x191e3d(0x1b9),_0x191e3d(0x1b3));if(_0xf51fb6[_0x191e3d(0x1a7)]!==_0x4e9650)throw menuError(_0x191e3d(0x1a9),_0x191e3d(0x194)+_0x32a780+_0x191e3d(0x1a4)+formatParent(_0x4e9650)+_0x191e3d(0x1b1)+formatParent(_0xf51fb6[_0x191e3d(0x1a7)])+'.',_0x191e3d(0x1b6));_0x2539d8!==null&&requireFolder(_0x464c1f,_0x2539d8);const _0x2bd7da=_0x585145??(_0xf51fb6[_0x191e3d(0x1a7)]===_0x2539d8?_0xf51fb6['sort']??0x0:nextSiblingSort(_0x464c1f,_0x2539d8,'menu')),_0x2b4320={..._0xf51fb6,'parentId':_0x2539d8,'sort':_0x2bd7da},_0x31d9ea={'id':_0x32a780,'parentId':toApiParentId(_0x2539d8),'sort':_0x2bd7da},_0x2c876f=_0xf51fb6[_0x191e3d(0x1a7)]===_0x2539d8&&_0xf51fb6[_0x191e3d(0x18e)]===_0x2bd7da;return{'patch':_0x31d9ea,'noChanges':_0x2c876f,'snapshot':_0x464c1f,'plan':mutationResult({'operation':'move','selector':{'id':_0x32a780,'parentId':_0x2539d8},'before':_0xf51fb6,'after':_0x2b4320,'dryRun':_0xe99319,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':'POST','path':'/smartapi/menu/update','body':{..._0x31d9ea,'appCode':_0x316c4c[_0x191e3d(0x1b4)]}}],'snapshotHash':_0x464c1f[_0x191e3d(0x1a6)],'warnings':_0x2c876f?[_0x191e3d(0x1bb)]:[]})};}function a159_0x5cda(_0x186413,_0x1112c2){_0x186413=_0x186413-0x18a;const _0x2541f0=a159_0x2541();let _0x5cda0b=_0x2541f0[_0x186413];return _0x5cda0b;}function verifyMove(_0xa45bf2,_0x26a973){const _0x23eee3=a159_0x30d775;assertVerified(_0xa45bf2[_0x23eee3(0x1ae)]!==_0x23eee3(0x196),_0x23eee3(0x194)+_0xa45bf2['id']+_0x23eee3(0x1a3)),assertVerified(_0xa45bf2[_0x23eee3(0x18b)]===0x0,'Menu\x20'+_0xa45bf2['id']+_0x23eee3(0x1a2)),assertVerified(_0xa45bf2['parentId']===_0x26a973['parentId'],_0x23eee3(0x194)+_0xa45bf2['id']+'\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.'),assertVerified(_0xa45bf2['sort']===_0x26a973['sort'],_0x23eee3(0x194)+_0xa45bf2['id']+_0x23eee3(0x198));}