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

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 (368) hide show
  1. package/README.md +4 -3
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/api-group.js +1 -1
  4. package/lib/api/fetch-model-list.js +1 -1
  5. package/lib/api/generate-api-file.js +1 -1
  6. package/lib/api/generate-sdk-config-file.js +1 -1
  7. package/lib/api/legacy-api-file.js +1 -1
  8. package/lib/api/model-registry-file.js +1 -1
  9. package/lib/api/model-registry-scaffold.js +1 -1
  10. package/lib/api/model-source.js +1 -1
  11. package/lib/auth/auth-server-ui.js +1 -1
  12. package/lib/auth/auth-server.js +1 -1
  13. package/lib/auth/constant.js +1 -1
  14. package/lib/auth/get-cookie.js +1 -1
  15. package/lib/auth/get-session-user.js +1 -1
  16. package/lib/auth/is-session-valid.js +1 -1
  17. package/lib/auth/login-success-html.js +1 -1
  18. package/lib/auth/logout.js +1 -1
  19. package/lib/cli-flags.js +1 -1
  20. package/lib/cli.js +1 -1
  21. package/lib/commands/api/generate.js +1 -1
  22. package/lib/commands/api/index.js +1 -1
  23. package/lib/commands/api/list.js +1 -1
  24. package/lib/commands/api/pull.js +1 -1
  25. package/lib/commands/api/shared.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.d.ts +1 -1
  63. package/lib/commands/config/init.js +1 -1
  64. package/lib/commands/config/list.js +1 -1
  65. package/lib/commands/config/set.js +1 -1
  66. package/lib/commands/config/shared.js +1 -1
  67. package/lib/commands/dataset/batch-design.js +1 -1
  68. package/lib/commands/dataset/business-group-update.js +1 -1
  69. package/lib/commands/dataset/business-groups.js +1 -1
  70. package/lib/commands/dataset/capability.js +1 -1
  71. package/lib/commands/dataset/cross-relation-create.js +1 -1
  72. package/lib/commands/dataset/cross-relation-delete.js +1 -1
  73. package/lib/commands/dataset/cross-relation-list.js +1 -1
  74. package/lib/commands/dataset/cross-relation-shared.js +1 -1
  75. package/lib/commands/dataset/cross-relation-update.js +1 -1
  76. package/lib/commands/dataset/delete.js +1 -1
  77. package/lib/commands/dataset/detail.js +1 -1
  78. package/lib/commands/dataset/extend-update.js +1 -1
  79. package/lib/commands/dataset/field-restore.js +1 -1
  80. package/lib/commands/dataset/field-update.js +1 -1
  81. package/lib/commands/dataset/generate.js +1 -1
  82. package/lib/commands/dataset/index.js +1 -1
  83. package/lib/commands/dataset/list.js +1 -1
  84. package/lib/commands/dataset/operations.js +1 -1
  85. package/lib/commands/dataset/relation-audit.js +1 -1
  86. package/lib/commands/dataset/relation-create.js +1 -1
  87. package/lib/commands/dataset/relation-delete.js +1 -1
  88. package/lib/commands/dataset/relation-shared.js +1 -1
  89. package/lib/commands/dataset/relation-update.js +1 -1
  90. package/lib/commands/dataset/relations.js +1 -1
  91. package/lib/commands/dataset/rename.js +1 -1
  92. package/lib/commands/dataset/restore.js +1 -1
  93. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  94. package/lib/commands/db/analysis-batching.js +1 -1
  95. package/lib/commands/db/analyze-batch-plan.js +1 -1
  96. package/lib/commands/db/analyze-cancel.js +1 -1
  97. package/lib/commands/db/analyze-start.js +1 -1
  98. package/lib/commands/db/analyze-status.js +1 -1
  99. package/lib/commands/db/create.js +1 -1
  100. package/lib/commands/db/delete.js +1 -1
  101. package/lib/commands/db/detail.js +1 -1
  102. package/lib/commands/db/diff-refresh-start.js +1 -1
  103. package/lib/commands/db/diff-refresh-status.js +1 -1
  104. package/lib/commands/db/diff.js +1 -1
  105. package/lib/commands/db/index.js +1 -1
  106. package/lib/commands/db/list.js +1 -1
  107. package/lib/commands/db/shared.js +1 -1
  108. package/lib/commands/db/table-diff-shared.js +1 -1
  109. package/lib/commands/db/tables.js +1 -1
  110. package/lib/commands/db/test.js +1 -1
  111. package/lib/commands/db/update.js +1 -1
  112. package/lib/commands/deployment/index.js +1 -1
  113. package/lib/commands/deployment/sync-all.js +1 -1
  114. package/lib/commands/deployment/sync-jobs.js +1 -1
  115. package/lib/commands/deployment/sync-status.js +1 -1
  116. package/lib/commands/doctor.js +1 -1
  117. package/lib/commands/file/index.js +1 -1
  118. package/lib/commands/flow/create.js +1 -1
  119. package/lib/commands/flow/detail.js +1 -1
  120. package/lib/commands/flow/index.js +1 -1
  121. package/lib/commands/flow/list.js +1 -1
  122. package/lib/commands/flow/publish.js +1 -1
  123. package/lib/commands/flow/runtime-resources-shared.js +1 -1
  124. package/lib/commands/flow/runtime-role-list.js +1 -1
  125. package/lib/commands/flow/runtime-role-user-list.js +1 -1
  126. package/lib/commands/flow/runtime-user-search.js +1 -1
  127. package/lib/commands/flow/shared.js +1 -1
  128. package/lib/commands/flow/update.js +1 -1
  129. package/lib/commands/flow/validate.js +1 -1
  130. package/lib/commands/instant-api-policy/current.js +1 -1
  131. package/lib/commands/instant-api-policy/index.js +1 -1
  132. package/lib/commands/instant-api-policy/init.js +1 -1
  133. package/lib/commands/instant-api-policy/publish.js +1 -1
  134. package/lib/commands/instant-api-policy/pull.js +1 -1
  135. package/lib/commands/instant-api-policy/revision.js +1 -1
  136. package/lib/commands/instant-api-policy/revisions.js +1 -1
  137. package/lib/commands/instant-api-policy/rollback.js +1 -1
  138. package/lib/commands/instant-api-policy/shared.js +1 -1
  139. package/lib/commands/instant-api-policy/validate.js +1 -1
  140. package/lib/commands/issue/index.js +1 -1
  141. package/lib/commands/issue/nudge.js +1 -1
  142. package/lib/commands/issue/report.js +1 -1
  143. package/lib/commands/issue/shared.js +1 -1
  144. package/lib/commands/kb/create.js +1 -1
  145. package/lib/commands/kb/delete.js +1 -1
  146. package/lib/commands/kb/detail.js +1 -1
  147. package/lib/commands/kb/index.js +1 -1
  148. package/lib/commands/kb/list.js +1 -1
  149. package/lib/commands/kb/search.js +1 -1
  150. package/lib/commands/kb/shared.js +1 -1
  151. package/lib/commands/kb/update.js +1 -1
  152. package/lib/commands/logs/index.js +1 -1
  153. package/lib/commands/menu/asset-update.js +1 -1
  154. package/lib/commands/menu/delete.js +1 -1
  155. package/lib/commands/menu/external-link-create.js +1 -1
  156. package/lib/commands/menu/external-link-update.js +1 -1
  157. package/lib/commands/menu/group-create.js +1 -1
  158. package/lib/commands/menu/group-update.js +1 -1
  159. package/lib/commands/menu/index.js +1 -1
  160. package/lib/commands/menu/list.js +1 -1
  161. package/lib/commands/menu/move.js +1 -1
  162. package/lib/commands/menu/regroup-start.js +1 -1
  163. package/lib/commands/menu/rename.js +1 -1
  164. package/lib/commands/menu/shared/compare-table.js +1 -1
  165. package/lib/commands/menu/shared/delete-plan.js +1 -1
  166. package/lib/commands/menu/shared/facts.js +1 -1
  167. package/lib/commands/menu/shared/index.js +1 -1
  168. package/lib/commands/menu/shared/inquirer.js +1 -1
  169. package/lib/commands/menu/shared/local-pages.js +1 -1
  170. package/lib/commands/menu/shared/logic.js +1 -1
  171. package/lib/commands/menu/shared/mutations.js +1 -1
  172. package/lib/commands/menu/shared/service.js +1 -1
  173. package/lib/commands/menu/shared/sync-core.js +1 -1
  174. package/lib/commands/menu/shared/update-core.js +1 -1
  175. package/lib/commands/menu/shared/valid-url.js +1 -1
  176. package/lib/commands/menu/sync.js +1 -1
  177. package/lib/commands/menu/visibility-update.js +1 -1
  178. package/lib/commands/notification/config-create.js +1 -1
  179. package/lib/commands/notification/config-delete.js +1 -1
  180. package/lib/commands/notification/config-list.js +1 -1
  181. package/lib/commands/notification/config-update.js +1 -1
  182. package/lib/commands/notification/index.js +1 -1
  183. package/lib/commands/notification/shared.js +1 -1
  184. package/lib/commands/ocr/index.js +1 -1
  185. package/lib/commands/page/create.js +1 -1
  186. package/lib/commands/page/custom/detail.js +1 -1
  187. package/lib/commands/page/custom/list.js +1 -1
  188. package/lib/commands/page/custom/publish.js +1 -1
  189. package/lib/commands/page/custom/shared.js +1 -1
  190. package/lib/commands/page/custom/syntax.js +1 -1
  191. package/lib/commands/page/custom/update.js +1 -1
  192. package/lib/commands/page/data-list-status.js +1 -1
  193. package/lib/commands/page/generate-start.js +1 -1
  194. package/lib/commands/page/generate-status.js +1 -1
  195. package/lib/commands/page/index.js +1 -1
  196. package/lib/commands/page/pull.js +1 -1
  197. package/lib/commands/page/push.js +1 -1
  198. package/lib/commands/page/relation-audit.js +1 -1
  199. package/lib/commands/page/restore.js +1 -1
  200. package/lib/commands/page/shared.js +1 -1
  201. package/lib/commands/page/sync.js +1 -1
  202. package/lib/commands/project/api-architecture-upgrade.js +1 -1
  203. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  204. package/lib/commands/project/create/format-elapsed.js +1 -1
  205. package/lib/commands/project/create/main.js +1 -1
  206. package/lib/commands/project/create/materialize-project-template.js +1 -1
  207. package/lib/commands/project/create/project-name.js +1 -1
  208. package/lib/commands/project/create/project-template-archive.js +1 -1
  209. package/lib/commands/project/create/project-template-path.js +1 -1
  210. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  211. package/lib/commands/project/create/use-format-code.js +1 -1
  212. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  213. package/lib/commands/project/domain-routing-sync.js +1 -1
  214. package/lib/commands/project/index.js +1 -1
  215. package/lib/commands/project/upgrade.js +1 -1
  216. package/lib/commands/registry.js +1 -1
  217. package/lib/commands/role/delete.js +1 -1
  218. package/lib/commands/role/detail.js +1 -1
  219. package/lib/commands/role/index.js +1 -1
  220. package/lib/commands/role/list.js +1 -1
  221. package/lib/commands/role/shared.js +1 -1
  222. package/lib/commands/role/update.js +1 -1
  223. package/lib/commands/role/user-add.js +1 -1
  224. package/lib/commands/role/user-remove.js +1 -1
  225. package/lib/commands/role/user-resolve.js +1 -1
  226. package/lib/commands/rule/get.js +1 -1
  227. package/lib/commands/rule/index.js +1 -1
  228. package/lib/commands/rule/list.js +1 -1
  229. package/lib/commands/rule/set.js +1 -1
  230. package/lib/commands/rule/shared.js +1 -1
  231. package/lib/commands/run/index.js +1 -1
  232. package/lib/commands/schema.js +1 -1
  233. package/lib/commands/sql/create.js +1 -1
  234. package/lib/commands/sql/delete.js +1 -1
  235. package/lib/commands/sql/detail.js +1 -1
  236. package/lib/commands/sql/exec.js +1 -1
  237. package/lib/commands/sql/index.js +1 -1
  238. package/lib/commands/sql/list.js +1 -1
  239. package/lib/commands/sql/pull.js +1 -1
  240. package/lib/commands/sql/push.js +1 -1
  241. package/lib/commands/sql/shared.js +1 -1
  242. package/lib/commands/sql/status.js +1 -1
  243. package/lib/commands/sql/validate.js +1 -1
  244. package/lib/commands/task/index.js +1 -1
  245. package/lib/commands/task/status.js +1 -1
  246. package/lib/commands/tenant/index.js +1 -1
  247. package/lib/commands/tenant/members-list.js +1 -1
  248. package/lib/commands/tenant/shared.js +1 -1
  249. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  250. package/lib/commands/user-account/index.js +1 -1
  251. package/lib/commands/workspace/add.js +1 -1
  252. package/lib/commands/workspace/index.js +1 -1
  253. package/lib/commands/workspace/remove.js +1 -1
  254. package/lib/config/domain-config.d.ts +1 -1
  255. package/lib/config/domain-config.js +1 -1
  256. package/lib/config/project-domain-routing.js +1 -1
  257. package/lib/config/region-config.js +1 -1
  258. package/lib/config/schema.d.ts +1 -1
  259. package/lib/config/schema.js +1 -1
  260. package/lib/constant/cdn.js +1 -1
  261. package/lib/constant/cli.js +1 -1
  262. package/lib/constant/defaults.js +1 -1
  263. package/lib/constant/domain.d.ts +4 -0
  264. package/lib/constant/domain.js +1 -1
  265. package/lib/constant/env.js +1 -1
  266. package/lib/constant/output.js +1 -1
  267. package/lib/constant/paths.js +1 -1
  268. package/lib/constant/region.d.ts +1 -1
  269. package/lib/constant/region.js +1 -1
  270. package/lib/constant/risk.js +1 -1
  271. package/lib/constant/routing-profile.d.ts +14 -1
  272. package/lib/constant/routing-profile.js +1 -1
  273. package/lib/context/app-resolver.d.ts +1 -0
  274. package/lib/context/app-resolver.js +1 -1
  275. package/lib/context/auth-resolver.js +1 -1
  276. package/lib/context/config-loader.js +1 -1
  277. package/lib/context.js +1 -1
  278. package/lib/core/alias-resolver.js +1 -1
  279. package/lib/core/api-client.js +1 -1
  280. package/lib/core/bff/config.js +1 -1
  281. package/lib/core/bff/file-system.js +1 -1
  282. package/lib/core/bff/hash.js +1 -1
  283. package/lib/core/bff/hook-directory.js +1 -1
  284. package/lib/core/bff/lock.js +1 -1
  285. package/lib/core/bff/utils.js +1 -1
  286. package/lib/core/cross-db-relation.js +1 -1
  287. package/lib/core/db-resolver.js +1 -1
  288. package/lib/core/flow-config.js +1 -1
  289. package/lib/core/instant-api-policy/config.js +1 -1
  290. package/lib/core/kb-search-client.js +1 -1
  291. package/lib/core/page/file-system.js +1 -1
  292. package/lib/core/page/hash.js +1 -1
  293. package/lib/core/page/lock.js +1 -1
  294. package/lib/core/page/lr-smart-jsx.js +1 -1
  295. package/lib/core/sql-index-auditor.js +1 -1
  296. package/lib/core/sql-sync/config.js +1 -1
  297. package/lib/core/sql-sync/file-system.js +1 -1
  298. package/lib/core/sql-sync/hash.js +1 -1
  299. package/lib/core/sql-sync/lock.js +1 -1
  300. package/lib/core/sql-sync/utils.js +1 -1
  301. package/lib/core/sql-validator.js +1 -1
  302. package/lib/errors.js +1 -1
  303. package/lib/framework/build-all-flags.js +1 -1
  304. package/lib/framework/error-output.js +1 -1
  305. package/lib/framework/explicit-yes.js +1 -1
  306. package/lib/framework/flags.js +1 -1
  307. package/lib/framework/help.js +1 -1
  308. package/lib/framework/index.js +1 -1
  309. package/lib/framework/output.js +1 -1
  310. package/lib/framework/response.js +1 -1
  311. package/lib/framework/runner-alias.js +1 -1
  312. package/lib/framework/runner.js +1 -1
  313. package/lib/framework/schema-export.js +1 -1
  314. package/lib/framework/supported-flags.js +1 -1
  315. package/lib/framework/types.js +1 -1
  316. package/lib/generated/build-info.d.ts +4 -4
  317. package/lib/generated/build-info.js +1 -1
  318. package/lib/generated/official-routing.d.ts +15 -3
  319. package/lib/generated/official-routing.js +1 -1
  320. package/lib/generated/routing-contract.d.ts +2 -2
  321. package/lib/generated/routing-contract.js +1 -1
  322. package/lib/help.js +1 -1
  323. package/lib/postinstall.js +1 -1
  324. package/lib/runtime/confirmation.js +1 -1
  325. package/lib/runtime/event.js +1 -1
  326. package/lib/runtime/index.js +1 -1
  327. package/lib/runtime/queue.js +1 -1
  328. package/lib/runtime/resolve.js +1 -1
  329. package/lib/skills/builtin-skill.js +1 -1
  330. package/lib/skills/main.js +1 -1
  331. package/lib/skills/npx-skills-add.d.ts +5 -0
  332. package/lib/skills/npx-skills-add.js +1 -1
  333. package/lib/skills/skill-presence.js +1 -1
  334. package/lib/telemetry/cli-command-trace.js +1 -1
  335. package/lib/telemetry/cli-help-trace.js +1 -1
  336. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  337. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  338. package/lib/telemetry/send-cli-trace-log.js +1 -1
  339. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  340. package/lib/utils/ai_config.js +1 -1
  341. package/lib/utils/apply-jq-filter.js +1 -1
  342. package/lib/utils/cdn-config.js +1 -1
  343. package/lib/utils/check-sdk-version.js +1 -1
  344. package/lib/utils/cli-version-check.js +1 -1
  345. package/lib/utils/cli-version-policy.js +1 -1
  346. package/lib/utils/config.js +1 -1
  347. package/lib/utils/entity-with-id.js +1 -1
  348. package/lib/utils/file-utils.js +1 -1
  349. package/lib/utils/guides-cdn.js +1 -1
  350. package/lib/utils/http-client.js +1 -1
  351. package/lib/utils/is-non-interactive.js +1 -1
  352. package/lib/utils/logger.js +1 -1
  353. package/lib/utils/params.js +1 -1
  354. package/lib/utils/platform.js +1 -1
  355. package/lib/utils/sleep.js +1 -1
  356. package/lib/utils/template-replacer.js +1 -1
  357. package/lib/utils/update-notice.js +1 -1
  358. package/lib/utils/version.js +1 -1
  359. package/lib/utils/with-active-cookie.js +1 -1
  360. package/lib/utils/write-cli-side-channel.js +1 -1
  361. package/package.json +1 -1
  362. package/skills/rabetbase/SKILL.md +2 -2
  363. package/skills/rabetbase/guides/sql-creation-workflow.md +1 -1
  364. package/skills/rabetbase/guides/sql-mybatis.md +12 -8
  365. package/skills/rabetbase/references/rabetbase-config.md +6 -4
  366. package/skills/rabetbase/references/rabetbase-init.md +7 -5
  367. package/skills/rabetbase/references/rabetbase-kb.md +8 -6
  368. package/skills/rabetbase.manifest.json +3 -3
@@ -1 +1 @@
1
- const a151_0x594cfb=a151_0x54f8;(function(_0x57a912,_0x5eb9e6){const _0x426b52=a151_0x54f8,_0x1fe760=_0x57a912();while(!![]){try{const _0x5e3532=-parseInt(_0x426b52(0xca))/0x1+-parseInt(_0x426b52(0x9c))/0x2+parseInt(_0x426b52(0x93))/0x3+parseInt(_0x426b52(0xb2))/0x4+parseInt(_0x426b52(0xbf))/0x5*(parseInt(_0x426b52(0x8b))/0x6)+-parseInt(_0x426b52(0x96))/0x7+parseInt(_0x426b52(0x9a))/0x8*(parseInt(_0x426b52(0xc3))/0x9);if(_0x5e3532===_0x5eb9e6)break;else _0x1fe760['push'](_0x1fe760['shift']());}catch(_0x1d8a8b){_0x1fe760['push'](_0x1fe760['shift']());}}}(a151_0x5d4a,0x496c1));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a151_0x594cfb(0xc9),'path':a151_0x594cfb(0x94)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a151_0x594cfb(0xaa)},MENU_DELETE_RECURSIVE_FLAG={'name':a151_0x594cfb(0x84),'type':a151_0x594cfb(0x90),'description':a151_0x594cfb(0xa9)},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':a151_0x594cfb(0xe9),'description':a151_0x594cfb(0x9b)},MENU_DELETE_PLAN_FLAG={'name':a151_0x594cfb(0xd7),'type':a151_0x594cfb(0xe9),'description':a151_0x594cfb(0xcc)};export const menuDelete={'service':a151_0x594cfb(0xb1),'command':a151_0x594cfb(0xce),'description':a151_0x594cfb(0xf2),'risk':a151_0x594cfb(0x81),'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'(_0x55125b){const _0x821370=a151_0x594cfb;_0x55125b[_0x821370(0xcf)](_0x821370(0xa2))?validateDeleteDryRunInput(_0x55125b):validateDeleteExecuteInput(_0x55125b),requireExplicitYes(_0x55125b);},async 'dryRun'(_0x266331){const _0x443ec8=a151_0x594cfb;validateDeleteDryRunInput(_0x266331);const _0xb1ecfe=await buildDeletePlan(_0x266331),_0x335866=createMenuDeletePlanFile(_0x266331['appCode'],_0xb1ecfe),_0x5a56b0=await writeMenuDeletePlan(_0x266331[_0x443ec8(0x8a)](_0x443ec8(0xa0)),_0x335866),_0x1ae4ea=mutationResult({..._0xb1ecfe,'planFile':{'path':_0x5a56b0,'createdAt':_0x335866[_0x443ec8(0x9e)],'expiresAt':_0x335866[_0x443ec8(0xb7)]}});return menuDryRunResult(_0x1ae4ea,{'method':_0x443ec8(0xc9),'url':_0x443ec8(0x94),'body':{'idList':_0x1ae4ea[_0x443ec8(0xdc)]},'description':_0x443ec8(0xf8)+(_0x1ae4ea['deleteOrder']?.[_0x443ec8(0xc0)]??0x1)+_0x443ec8(0x8e)+_0x1ae4ea[_0x443ec8(0xa1)]['id']+';\x20execution\x20must\x20consume\x20'+_0x5a56b0+'.'});},async 'execute'(_0x357adc){const _0x386950=a151_0x594cfb;requireExplicitYes(_0x357adc),validateDeleteExecuteInput(_0x357adc);const _0x5a7c78=await readMenuDeletePlan(_0x357adc['str']('plan')),_0x50b85a=mutationPlanFromDeleteFile(_0x5a7c78['plan'],_0x5a7c78[_0x386950(0x9f)]),_0x39a114=_0x5a7c78[_0x386950(0xd7)][_0x386950(0x91)]['id'];try{assertMenuDeletePlanExecutable(_0x5a7c78[_0x386950(0xd7)],_0x357adc['appCode']);}catch(_0x56aa1e){throw menuFailure(asMenuError(_0x56aa1e),_0x50b85a,{'stage':_0x386950(0xb4),'failed':{'id':_0x39a114}});}let _0x110312,_0x510ea7;try{_0x110312=await fetchMutationSnapshot(_0x357adc,_0x386950(0xb8),_0x39a114),_0x510ea7=assertMenuDeletePlanCurrent(_0x5a7c78['plan'],_0x357adc['appCode'],_0x110312),assertDeleteTargetsComplete(_0x5a7c78['plan'],_0x110312),_0x510ea7[_0x386950(0xa6)](_0x4ca4e3=>assertDeleteSafety(_0x4ca4e3,_0x5a7c78[_0x386950(0xd7)][_0x386950(0x84)])),assertNoSharedPages(_0x110312,_0x510ea7),assertCascadeMatchesPlan(_0x50b85a,_0x510ea7);}catch(_0x5a5689){throw menuFailure(asMenuError(_0x5a5689),_0x50b85a,{'stage':_0x386950(0x7a),'failed':{'id':_0x39a114}});}const _0x2d1153=_0x5a7c78['plan'][_0x386950(0xdc)];let _0x3a7357;try{_0x3a7357=await batchDeleteMenuEntities(_0x357adc[_0x386950(0xb0)],_0x2d1153);}catch(_0x3a0a42){const _0x21097a=mapMenuApiError(_0x3a0a42,'batch\x20delete'),_0x80913f=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0x43c2f2;try{_0x43c2f2=await readDeleteOutcome(_0x357adc,_0x2d1153);}catch(_0x30cb38){const _0xaf84df=describeMenuErrorCause(_0x30cb38,_0x386950(0xe2),_0x39a114);_0x80913f[_0x386950(0xcb)](_0x386950(0xf3)+_0xaf84df['causeCode']+_0x386950(0xc6)+_0xaf84df[_0x386950(0x8c)]);throw menuFailure(_0x21097a,_0x50b85a,{'stage':_0x386950(0xbc),'failed':{'targetIds':_0x2d1153,'targetIdsAbsent':_0x386950(0xa7),..._0xaf84df},'warnings':_0x80913f,'verification':{'status':'failed','lookupCommand':_0x386950(0xee),'targetIds':_0x2d1153}});}throw menuFailure(_0x21097a,_0x50b85a,{'stage':_0x386950(0xbc),'succeeded':_0x43c2f2['absentIds'][_0x386950(0xd0)](_0x8e8c63=>({'id':_0x8e8c63,'deleted':!![]})),'failed':{'targetIds':_0x2d1153,'absentIds':_0x43c2f2[_0x386950(0xe4)],'remainingIds':_0x43c2f2[_0x386950(0x77)]},'warnings':_0x80913f,'verification':verificationFromOutcome(_0x43c2f2)});}if(_0x3a7357!==_0x2d1153[_0x386950(0xc0)]){const _0x53af97=menuError(_0x386950(0x7f),_0x386950(0x7e)+_0x3a7357+_0x386950(0xd3)+_0x2d1153[_0x386950(0xc0)]+'.',_0x386950(0xe6)),_0x4c554a=[_0x386950(0xd4)];let _0x1d6467;try{_0x1d6467=await readDeleteOutcome(_0x357adc,_0x2d1153);}catch(_0x3677a5){const _0x5aab10=describeMenuErrorCause(_0x3677a5,_0x386950(0x7b),_0x39a114);_0x4c554a['push'](_0x386950(0xae)+_0x5aab10[_0x386950(0xcd)]+_0x386950(0xc6)+_0x5aab10[_0x386950(0x8c)]);throw menuFailure(_0x53af97,_0x50b85a,{'stage':_0x386950(0xbc),'failed':{'targetIds':_0x2d1153,'expectedCount':_0x2d1153[_0x386950(0xc0)],'reportedDeletedCount':_0x3a7357,'targetIdsAbsent':'unconfirmed',..._0x5aab10},'warnings':_0x4c554a,'verification':{'status':_0x386950(0xe0),'lookupCommand':_0x386950(0xee),'targetIds':_0x2d1153}});}throw menuFailure(_0x53af97,_0x50b85a,{'stage':_0x386950(0xbc),'succeeded':_0x1d6467[_0x386950(0xe4)][_0x386950(0xd0)](_0x37fd30=>({'id':_0x37fd30,'deleted':!![]})),'failed':{'targetIds':_0x2d1153,'expectedCount':_0x2d1153[_0x386950(0xc0)],'reportedDeletedCount':_0x3a7357,'absentIds':_0x1d6467[_0x386950(0xe4)],'remainingIds':_0x1d6467[_0x386950(0x77)]},'warnings':_0x4c554a,'verification':verificationFromOutcome(_0x1d6467)});}let _0x2ad6e9;try{_0x2ad6e9=await readDeleteOutcome(_0x357adc,_0x2d1153);}catch(_0x401b27){const _0x264767=describeMenuErrorCause(_0x401b27,_0x386950(0xdd),_0x39a114),_0x260c82=asVerificationError(_0x401b27,_0x386950(0xaf)+_0x39a114+_0x386950(0xb3));throw menuFailure(_0x260c82,_0x50b85a,{'stage':'verification','succeeded':_0x2d1153[_0x386950(0xd0)](_0x5c74a3=>({'id':_0x5c74a3,'deleteRequested':!![]})),'failed':{'id':_0x39a114,'targetIds':_0x2d1153,'targetIdsAbsent':'unconfirmed',..._0x264767},'warnings':[_0x386950(0x7c)],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x2d1153}});}if(_0x2ad6e9[_0x386950(0x77)][_0x386950(0xc0)]>0x0){const _0x2b6213=menuError('menu_verification_failed',_0x386950(0x79)+_0x2ad6e9[_0x386950(0x77)][_0x386950(0xd9)](',\x20')+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.');throw menuFailure(_0x2b6213,_0x50b85a,{'stage':'verification','succeeded':_0x2d1153[_0x386950(0xd0)](_0x3c1522=>({'id':_0x3c1522,'deleteRequested':!![]})),'failed':{'id':_0x39a114,'targetIds':_0x2d1153,'absentIds':_0x2ad6e9[_0x386950(0xe4)],'remainingIds':_0x2ad6e9[_0x386950(0x77)]},'warnings':[_0x386950(0xc7)],'verification':verificationFromOutcome(_0x2ad6e9)});}const _0x91a066=_0x2d1153[_0x386950(0xd0)](_0x224069=>({'id':_0x224069,'deleted':!![]})),_0x52cf8a=mutationResult({..._0x50b85a,'dryRun':![],'succeeded':_0x91a066,'verification':{'checkedBy':_0x386950(0xf5),'plannedSnapshotHash':_0x50b85a[_0x386950(0xd5)],'finalSnapshotHash':_0x2ad6e9[_0x386950(0xe7)][_0x386950(0xf6)],'reportedDeletedCount':_0x3a7357,'targetAbsent':!_0x2ad6e9[_0x386950(0xe7)][_0x386950(0xb6)][_0x386950(0xf4)](_0x39a114),'allTargetsAbsent':!![],'targetIds':_0x2d1153}});return{'ok':!![],'data':_0x52cf8a,'message':_0x386950(0xde)+_0x91a066[_0x386950(0xc0)]+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x39a114+'.'};}};async function readDeleteOutcome(_0x47a956,_0x1a34ac){const _0xdf89d=a151_0x594cfb,_0x468adf=await fetchMenuSnapshot(_0x47a956[_0xdf89d(0xf7)],_0x47a956[_0xdf89d(0xb0)]);return{'snapshot':_0x468adf,'absentIds':_0x1a34ac[_0xdf89d(0xdf)](_0x152948=>!_0x468adf[_0xdf89d(0xb6)][_0xdf89d(0xf4)](_0x152948)),'remainingIds':_0x1a34ac['filter'](_0x2499b0=>_0x468adf['byId'][_0xdf89d(0xf4)](_0x2499b0))};}function verificationFromOutcome(_0xbbc522){const _0x449fd6=a151_0x594cfb;return{'checkedBy':_0x449fd6(0xf5),'absentIds':_0xbbc522[_0x449fd6(0xe4)],'remainingIds':_0xbbc522['remainingIds']};}function validateDeleteDryRunInput(_0x3e8e0a){const _0x3091a3=a151_0x594cfb;validateExactId(_0x3e8e0a);if(!hasFlag(_0x3e8e0a,_0x3091a3(0xa0))||!_0x3e8e0a[_0x3091a3(0x8a)](_0x3091a3(0xa0))['trim']())throw CliErrors[_0x3091a3(0xa8)](_0x3091a3(0xa0),_0x3091a3(0xb9));if(hasFlag(_0x3e8e0a,_0x3091a3(0xd7)))throw CliErrors[_0x3091a3(0x78)](_0x3091a3(0x85));}function validateDeleteExecuteInput(_0x5e9649){const _0x4a6c2d=a151_0x594cfb;if(!hasFlag(_0x5e9649,_0x4a6c2d(0xd7))||!_0x5e9649[_0x4a6c2d(0x8a)](_0x4a6c2d(0xd7))[_0x4a6c2d(0xa3)]())throw CliErrors[_0x4a6c2d(0xa8)](_0x4a6c2d(0xd7),_0x4a6c2d(0xef));const _0x310337=['id',_0x4a6c2d(0x84),'plan-out','expect-parent-id',_0x4a6c2d(0x8d),_0x4a6c2d(0x92)]['filter'](_0x279312=>hasFlag(_0x5e9649,_0x279312));if(_0x310337[_0x4a6c2d(0xc0)]>0x0)throw CliErrors['validation'](_0x4a6c2d(0xac)+_0x310337['map'](_0x57048d=>'--'+_0x57048d)[_0x4a6c2d(0xd9)](',\x20')+'.');}async function buildDeletePlan(_0x4417c5){const _0x53796b=a151_0x594cfb,_0x4b7494=validateExactId(_0x4417c5),_0x1cb2aa=await fetchMutationSnapshot(_0x4417c5,_0x53796b(0xc5),_0x4b7494),_0x6bfe2c=requireMenu(_0x1cb2aa,_0x4b7494);assertExpectedState(_0x4417c5,_0x6bfe2c);const _0x785d91=_0x4417c5[_0x53796b(0xcf)](_0x53796b(0x84));let _0x22a750;if(_0x785d91){if(_0x6bfe2c[_0x53796b(0xc1)]['trim']()[_0x53796b(0xe3)]()!=='folder')throw menuError(_0x53796b(0xa5),_0x53796b(0xf1)+_0x6bfe2c['id']+'\x20is\x20type\x20\x22'+(_0x6bfe2c[_0x53796b(0xc1)]||'unknown')+_0x53796b(0xd6));_0x22a750=collectDeleteTargets(_0x1cb2aa,_0x6bfe2c),_0x22a750[_0x53796b(0xa6)](_0x2aa61c=>assertDeleteSafety(_0x2aa61c,!![]));}else assertDeleteSafety(_0x6bfe2c),_0x22a750=[_0x6bfe2c];assertNoSharedPages(_0x1cb2aa,_0x22a750);const _0xd0c885=_0x22a750[_0x53796b(0xd0)](_0x458e37=>_0x458e37['id']),_0x171c2e=cascadeForTargets(_0x22a750),_0x198018=_0x171c2e[_0x53796b(0x87)][_0x53796b(0xc0)]>0x0?[_0x53796b(0xc4)]:[];return mutationResult({'operation':_0x53796b(0xce),'selector':{'id':_0x4b7494,'recursive':_0x785d91},'before':_0x6bfe2c,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x53796b(0xab),'method':_0x53796b(0xc9),'path':_0x53796b(0x94),'body':{'idList':_0xd0c885}}],'targets':_0x22a750,'deleteOrder':_0xd0c885,'snapshotHash':_0x1cb2aa['hash'],'cascade':_0x171c2e,'warnings':_0x198018});}function assertDeleteSafety(_0xbfdebe,_0x56e0db=![]){const _0x1b1174=a151_0x594cfb,_0x4a5d87=_0xbfdebe['type'][_0x1b1174(0xa3)]()[_0x1b1174(0xe3)]()===_0x1b1174(0xe5);if(_0xbfdebe[_0x1b1174(0xc2)]>0x0&&(!_0x56e0db||!_0x4a5d87))throw menuError('menu_non_empty','Menu\x20'+_0xbfdebe['id']+_0x1b1174(0xc8)+_0xbfdebe[_0x1b1174(0xc2)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0x1b1174(0x7d)+_0xbfdebe[_0x1b1174(0x99)][_0x1b1174(0xd9)](',\x20'));if(_0x4a5d87&&_0xbfdebe['pageId']!=null)throw menuError(_0x1b1174(0x8f),_0x1b1174(0xeb)+_0xbfdebe['id']+_0x1b1174(0xbd)+_0xbfdebe[_0x1b1174(0xad)]+_0x1b1174(0xa4),_0x1b1174(0x80));if(!_0x4a5d87)return;if(!_0xbfdebe[_0x1b1174(0xe1)])throw menuError(_0x1b1174(0x89),_0x1b1174(0xeb)+_0xbfdebe['id']+_0x1b1174(0x86),_0x1b1174(0x83));if(_0xbfdebe['resources'][_0x1b1174(0xc0)]>0x0)throw menuError(_0x1b1174(0x9d),_0x1b1174(0xeb)+_0xbfdebe['id']+'\x20still\x20references\x20'+_0xbfdebe[_0x1b1174(0xea)]['length']+_0x1b1174(0xb5),_0x1b1174(0xda));}function a151_0x54f8(_0x50c8a4,_0x9c5a45){_0x50c8a4=_0x50c8a4-0x76;const _0x5d4adb=a151_0x5d4a();let _0x54f8fa=_0x5d4adb[_0x50c8a4];return _0x54f8fa;}function collectDeleteTargets(_0x50fa43,_0x58493e){const _0x374afb=[],_0x2c24b8=new Set(),_0x52151c=new Set(),_0x2b6515=_0x6fe09c=>{const _0x3794d7=a151_0x54f8;if(_0x2c24b8[_0x3794d7(0xf4)](_0x6fe09c['id']))throw menuError(_0x3794d7(0x88),'Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20'+_0x6fe09c['id']+'.');if(_0x52151c[_0x3794d7(0xf4)](_0x6fe09c['id']))return;_0x2c24b8[_0x3794d7(0xd1)](_0x6fe09c['id']);for(const _0x4b5d9d of _0x6fe09c[_0x3794d7(0x99)]){const _0x2bcdff=_0x50fa43['byId']['get'](_0x4b5d9d);if(!_0x2bcdff)throw menuError('menu_tree_invalid',_0x3794d7(0xf1)+_0x6fe09c['id']+_0x3794d7(0x76)+_0x4b5d9d+'.');_0x2b6515(_0x2bcdff);}_0x2c24b8[_0x3794d7(0xce)](_0x6fe09c['id']),_0x52151c[_0x3794d7(0xd1)](_0x6fe09c['id']),_0x374afb[_0x3794d7(0xcb)](_0x6fe09c);};return _0x2b6515(_0x58493e),_0x374afb;}function assertDeleteTargetsComplete(_0x5d2957,_0xc5f61f){const _0x5c7aa9=a151_0x594cfb,_0x5e117f=requireMenu(_0xc5f61f,_0x5d2957[_0x5c7aa9(0x91)]['id']);if(_0x5d2957[_0x5c7aa9(0x84)]&&_0x5e117f[_0x5c7aa9(0xc1)][_0x5c7aa9(0xa3)]()[_0x5c7aa9(0xe3)]()!==_0x5c7aa9(0xe5))throw menuError('menu_plan_invalid',_0x5c7aa9(0x82)+_0x5e117f['id']+_0x5c7aa9(0xf0));const _0x444ca9=_0x5d2957[_0x5c7aa9(0x84)]?collectDeleteTargets(_0xc5f61f,_0x5e117f)[_0x5c7aa9(0xd0)](_0x14280c=>_0x14280c['id']):[_0x5e117f['id']];if(JSON[_0x5c7aa9(0xbe)](_0x5d2957[_0x5c7aa9(0xdc)])!==JSON[_0x5c7aa9(0xbe)](_0x444ca9))throw menuError(_0x5c7aa9(0xd2),_0x5c7aa9(0xdb),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.');}function assertNoSharedPages(_0xcfeb32,_0x141fa3){const _0x3bb471=a151_0x594cfb,_0x5a4218=new Set(_0x141fa3[_0x3bb471(0xd0)](_0x39543a=>_0x39543a['id'])),_0x249683=new Set(_0x141fa3[_0x3bb471(0xd0)](_0x2d88ef=>_0x2d88ef[_0x3bb471(0xad)])['filter'](_0x256e88=>_0x256e88!=null));if(_0x249683[_0x3bb471(0x98)]===0x0)return;const _0x314bc7=_0xcfeb32[_0x3bb471(0xed)][_0x3bb471(0xdf)](_0x59917f=>!_0x5a4218[_0x3bb471(0xf4)](_0x59917f['id'])&&_0x59917f[_0x3bb471(0xad)]!=null&&_0x249683[_0x3bb471(0xf4)](_0x59917f['pageId']));if(_0x314bc7[_0x3bb471(0xc0)]===0x0)return;const _0x6c89a9=_0x314bc7[_0x3bb471(0xd0)](_0x2eb833=>_0x3bb471(0xec)+_0x2eb833[_0x3bb471(0xad)]+_0x3bb471(0x95)+_0x2eb833['id'])[_0x3bb471(0xd9)](',\x20');throw menuError(_0x3bb471(0xbb),_0x3bb471(0xd8)+_0x6c89a9+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x37c367,_0x3ff6e2){const _0x553b90=a151_0x594cfb,_0x71b9b2=cascadeForTargets(_0x3ff6e2);if(JSON[_0x553b90(0xbe)](_0x37c367[_0x553b90(0xba)])!==JSON['stringify'](_0x71b9b2))throw menuError('menu_plan_invalid',_0x553b90(0xe8));}function cascadeForTargets(_0x4f76c7){const _0xe778d8=a151_0x594cfb,_0x5ecdc6=_0x4f76c7[_0xe778d8(0xd0)](_0x1fbff9=>_0x1fbff9[_0xe778d8(0xad)])['filter'](_0x37ed0b=>_0x37ed0b!=null)['filter']((_0x11b9eb,_0x47a316,_0x20628f)=>_0x20628f['indexOf'](_0x11b9eb)===_0x47a316);return{'pages':_0x5ecdc6,'pageSchemaAffected':_0x5ecdc6[_0xe778d8(0xc0)]>0x0};}function asMenuError(_0x148038){const _0xf1ef42=a151_0x594cfb;return _0x148038 instanceof CliError?_0x148038:menuError(_0xf1ef42(0xd2),_0x148038 instanceof Error?_0x148038[_0xf1ef42(0x97)]:String(_0x148038));}function a151_0x5d4a(){const _0x2c6271=['cascade','menu_page_shared','batch-delete','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','stringify','1781375OyLvta','length','type','childrenCount','9wRPVgX','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','plan\x20delete','):\x20','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','\x20has\x20','POST','280514rCOLAd','push','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','causeCode','delete','bool','map','add','menu_plan_invalid','\x20deleted\x20menus;\x20expected\x20','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','snapshotHash','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','plan','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','join','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','deleteOrder','verify\x20batch\x20delete','Deleted\x20','filter','failed','resourcesValid','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','toLowerCase','absentIds','folder','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','snapshot','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','string','resources','Folder\x20','page\x20','menus','rabetbase\x20menu\x20list\x20--format\x20json','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','\x20is\x20not\x20a\x20folder.','Menu\x20','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','Post-failure\x20menu\x20readback\x20failed\x20(','has','menu\x20list','hash','appCode','Would\x20batch\x20delete\x20','\x20references\x20missing\x20child\x20','remainingIds','validation','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','pre-write-plan-validation','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','Backend\x20reported\x20','menu_batch_delete_count_mismatch','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','high-risk-write','Recursive\x20menu\x20delete\x20plan\x20root\x20','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','recursive','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','pages','menu_tree_invalid','menu_folder_resources_invalid','str','6vGXDec','causeMessage','expect-path','\x20menu(s)\x20under\x20exact\x20id\x20','menu_delete_page_bound','boolean','target','expected-children-count','636603GRXkvI','/smartapi/menu/batchDelete','\x20->\x20menu\x20','4013135jNDixI','message','size','childrenIds','7705912uQPtjF','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','836376wbwive','menu_folder_has_resources','createdAt','path','plan-out','selector','dry-run','trim','\x20and\x20cannot\x20be\x20deleted\x20safely.','menu_recursive_requires_folder','forEach','unconfirmed','flagMissing','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','batch-delete-menu','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','pageId','Post-mismatch\x20menu\x20readback\x20failed\x20(','Batch\x20delete\x20request\x20for\x20menu\x20','cookie','menu','164116VEyEIu','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','plan-validation','\x20resource\x20URL(s).','byId','expiresAt','execute\x20reviewed\x20delete\x20plan','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.'];a151_0x5d4a=function(){return _0x2c6271;};return a151_0x5d4a();}
1
+ const a151_0x9e9958=a151_0x5636;(function(_0x355768,_0x35dcb0){const _0x5e1563=a151_0x5636,_0x423d68=_0x355768();while(!![]){try{const _0x12de4e=-parseInt(_0x5e1563(0x21b))/0x1*(-parseInt(_0x5e1563(0x1f0))/0x2)+parseInt(_0x5e1563(0x1cf))/0x3+parseInt(_0x5e1563(0x23d))/0x4*(parseInt(_0x5e1563(0x228))/0x5)+parseInt(_0x5e1563(0x1f7))/0x6*(parseInt(_0x5e1563(0x20e))/0x7)+parseInt(_0x5e1563(0x222))/0x8+parseInt(_0x5e1563(0x1f8))/0x9+parseInt(_0x5e1563(0x20c))/0xa*(-parseInt(_0x5e1563(0x1ee))/0xb);if(_0x12de4e===_0x35dcb0)break;else _0x423d68['push'](_0x423d68['shift']());}catch(_0x1590ec){_0x423d68['push'](_0x423d68['shift']());}}}(a151_0x192a,0x449cd));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a151_0x9e9958(0x22a),'path':a151_0x9e9958(0x237)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a151_0x9e9958(0x20a)},MENU_DELETE_RECURSIVE_FLAG={'name':'recursive','type':a151_0x9e9958(0x232),'description':a151_0x9e9958(0x204)},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':a151_0x9e9958(0x1fa),'description':a151_0x9e9958(0x238)},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a151_0x9e9958(0x1fa),'description':a151_0x9e9958(0x218)};export const menuDelete={'service':'menu','command':a151_0x9e9958(0x1d4),'description':'Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','risk':a151_0x9e9958(0x1de),'structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2c68e1){_0x2c68e1['bool']('dry-run')?validateDeleteDryRunInput(_0x2c68e1):validateDeleteExecuteInput(_0x2c68e1),requireExplicitYes(_0x2c68e1);},async 'dryRun'(_0x21eb6d){const _0x4f3dd8=a151_0x9e9958;validateDeleteDryRunInput(_0x21eb6d);const _0xa89dbf=await buildDeletePlan(_0x21eb6d),_0x35bc73=createMenuDeletePlanFile(_0x21eb6d[_0x4f3dd8(0x205)],_0xa89dbf),_0x3e38fd=await writeMenuDeletePlan(_0x21eb6d['str'](_0x4f3dd8(0x203)),_0x35bc73),_0x504748=mutationResult({..._0xa89dbf,'planFile':{'path':_0x3e38fd,'createdAt':_0x35bc73[_0x4f3dd8(0x1e7)],'expiresAt':_0x35bc73[_0x4f3dd8(0x230)]}});return menuDryRunResult(_0x504748,{'method':'POST','url':_0x4f3dd8(0x237),'body':{'idList':_0x504748['deleteOrder']},'description':_0x4f3dd8(0x233)+(_0x504748['deleteOrder']?.[_0x4f3dd8(0x1df)]??0x1)+_0x4f3dd8(0x215)+_0x504748[_0x4f3dd8(0x1e3)]['id']+_0x4f3dd8(0x1d2)+_0x3e38fd+'.'});},async 'execute'(_0x21f959){const _0x52a9c7=a151_0x9e9958;requireExplicitYes(_0x21f959),validateDeleteExecuteInput(_0x21f959);const _0x3a9107=await readMenuDeletePlan(_0x21f959['str']('plan')),_0x4f1541=mutationPlanFromDeleteFile(_0x3a9107['plan'],_0x3a9107[_0x52a9c7(0x1c8)]),_0x1d87be=_0x3a9107[_0x52a9c7(0x207)][_0x52a9c7(0x1ef)]['id'];try{assertMenuDeletePlanExecutable(_0x3a9107[_0x52a9c7(0x207)],_0x21f959['appCode']);}catch(_0x236bd8){throw menuFailure(asMenuError(_0x236bd8),_0x4f1541,{'stage':'plan-validation','failed':{'id':_0x1d87be}});}let _0x1f7e4b,_0x30cf3f;try{_0x1f7e4b=await fetchMutationSnapshot(_0x21f959,_0x52a9c7(0x206),_0x1d87be),_0x30cf3f=assertMenuDeletePlanCurrent(_0x3a9107[_0x52a9c7(0x207)],_0x21f959[_0x52a9c7(0x205)],_0x1f7e4b),assertDeleteTargetsComplete(_0x3a9107[_0x52a9c7(0x207)],_0x1f7e4b),_0x30cf3f[_0x52a9c7(0x1e0)](_0x5119a3=>assertDeleteSafety(_0x5119a3,_0x3a9107['plan']['recursive'])),assertNoSharedPages(_0x1f7e4b,_0x30cf3f),assertCascadeMatchesPlan(_0x4f1541,_0x30cf3f);}catch(_0x46796a){throw menuFailure(asMenuError(_0x46796a),_0x4f1541,{'stage':'pre-write-plan-validation','failed':{'id':_0x1d87be}});}const _0x377d02=_0x3a9107['plan'][_0x52a9c7(0x210)];let _0x1231ed;try{_0x1231ed=await batchDeleteMenuEntities(_0x21f959['cookie'],_0x377d02);}catch(_0x4a84cb){const _0x1b0020=mapMenuApiError(_0x4a84cb,_0x52a9c7(0x1e4)),_0x1e47b9=[_0x52a9c7(0x23a)];let _0x4dfde7;try{_0x4dfde7=await readDeleteOutcome(_0x21f959,_0x377d02);}catch(_0x1d4939){const _0x4b5c40=describeMenuErrorCause(_0x1d4939,_0x52a9c7(0x1fe),_0x1d87be);_0x1e47b9['push']('Post-failure\x20menu\x20readback\x20failed\x20('+_0x4b5c40[_0x52a9c7(0x21d)]+_0x52a9c7(0x1f6)+_0x4b5c40['causeMessage']);throw menuFailure(_0x1b0020,_0x4f1541,{'stage':_0x52a9c7(0x1e9),'failed':{'targetIds':_0x377d02,'targetIdsAbsent':_0x52a9c7(0x1e2),..._0x4b5c40},'warnings':_0x1e47b9,'verification':{'status':_0x52a9c7(0x21c),'lookupCommand':_0x52a9c7(0x1ea),'targetIds':_0x377d02}});}throw menuFailure(_0x1b0020,_0x4f1541,{'stage':'batch-delete','succeeded':_0x4dfde7[_0x52a9c7(0x200)][_0x52a9c7(0x216)](_0x59c6e1=>({'id':_0x59c6e1,'deleted':!![]})),'failed':{'targetIds':_0x377d02,'absentIds':_0x4dfde7[_0x52a9c7(0x200)],'remainingIds':_0x4dfde7[_0x52a9c7(0x1d0)]},'warnings':_0x1e47b9,'verification':verificationFromOutcome(_0x4dfde7)});}if(_0x1231ed!==_0x377d02[_0x52a9c7(0x1df)]){const _0x375ebe=menuError('menu_batch_delete_count_mismatch',_0x52a9c7(0x1e1)+_0x1231ed+'\x20deleted\x20menus;\x20expected\x20'+_0x377d02[_0x52a9c7(0x1df)]+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.'),_0x52720c=[_0x52a9c7(0x227)];let _0x3af664;try{_0x3af664=await readDeleteOutcome(_0x21f959,_0x377d02);}catch(_0x3e8a18){const _0x342263=describeMenuErrorCause(_0x3e8a18,_0x52a9c7(0x1ce),_0x1d87be);_0x52720c[_0x52a9c7(0x20d)](_0x52a9c7(0x1e8)+_0x342263[_0x52a9c7(0x21d)]+_0x52a9c7(0x1f6)+_0x342263['causeMessage']);throw menuFailure(_0x375ebe,_0x4f1541,{'stage':_0x52a9c7(0x1e9),'failed':{'targetIds':_0x377d02,'expectedCount':_0x377d02[_0x52a9c7(0x1df)],'reportedDeletedCount':_0x1231ed,'targetIdsAbsent':_0x52a9c7(0x1e2),..._0x342263},'warnings':_0x52720c,'verification':{'status':'failed','lookupCommand':_0x52a9c7(0x1ea),'targetIds':_0x377d02}});}throw menuFailure(_0x375ebe,_0x4f1541,{'stage':'batch-delete','succeeded':_0x3af664[_0x52a9c7(0x200)][_0x52a9c7(0x216)](_0x19cec4=>({'id':_0x19cec4,'deleted':!![]})),'failed':{'targetIds':_0x377d02,'expectedCount':_0x377d02['length'],'reportedDeletedCount':_0x1231ed,'absentIds':_0x3af664[_0x52a9c7(0x200)],'remainingIds':_0x3af664[_0x52a9c7(0x1d0)]},'warnings':_0x52720c,'verification':verificationFromOutcome(_0x3af664)});}let _0x589a6e;try{_0x589a6e=await readDeleteOutcome(_0x21f959,_0x377d02);}catch(_0x1e2642){const _0x281c67=describeMenuErrorCause(_0x1e2642,_0x52a9c7(0x223),_0x1d87be),_0x47edde=asVerificationError(_0x1e2642,_0x52a9c7(0x219)+_0x1d87be+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x47edde,_0x4f1541,{'stage':'verification','succeeded':_0x377d02['map'](_0x932047=>({'id':_0x932047,'deleteRequested':!![]})),'failed':{'id':_0x1d87be,'targetIds':_0x377d02,'targetIdsAbsent':_0x52a9c7(0x1e2),..._0x281c67},'warnings':[_0x52a9c7(0x1ec)],'verification':{'status':_0x52a9c7(0x21c),'lookupCommand':_0x52a9c7(0x1ea),'targetIds':_0x377d02}});}if(_0x589a6e[_0x52a9c7(0x1d0)]['length']>0x0){const _0x241acb=menuError('menu_verification_failed',_0x52a9c7(0x234)+_0x589a6e[_0x52a9c7(0x1d0)][_0x52a9c7(0x20b)](',\x20')+'.',_0x52a9c7(0x22c));throw menuFailure(_0x241acb,_0x4f1541,{'stage':_0x52a9c7(0x23c),'succeeded':_0x377d02[_0x52a9c7(0x216)](_0x5091d0=>({'id':_0x5091d0,'deleteRequested':!![]})),'failed':{'id':_0x1d87be,'targetIds':_0x377d02,'absentIds':_0x589a6e['absentIds'],'remainingIds':_0x589a6e[_0x52a9c7(0x1d0)]},'warnings':[_0x52a9c7(0x1f1)],'verification':verificationFromOutcome(_0x589a6e)});}const _0x326083=_0x377d02[_0x52a9c7(0x216)](_0x27d1f4=>({'id':_0x27d1f4,'deleted':!![]})),_0x52e5ce=mutationResult({..._0x4f1541,'dryRun':![],'succeeded':_0x326083,'verification':{'checkedBy':_0x52a9c7(0x1c5),'plannedSnapshotHash':_0x4f1541['snapshotHash'],'finalSnapshotHash':_0x589a6e[_0x52a9c7(0x202)]['hash'],'reportedDeletedCount':_0x1231ed,'targetAbsent':!_0x589a6e[_0x52a9c7(0x202)][_0x52a9c7(0x23e)][_0x52a9c7(0x1cb)](_0x1d87be),'allTargetsAbsent':!![],'targetIds':_0x377d02}});return{'ok':!![],'data':_0x52e5ce,'message':_0x52a9c7(0x1d7)+_0x326083[_0x52a9c7(0x1df)]+_0x52a9c7(0x215)+_0x1d87be+'.'};}};async function readDeleteOutcome(_0xd5376a,_0x15badb){const _0x22894c=a151_0x9e9958,_0x161119=await fetchMenuSnapshot(_0xd5376a[_0x22894c(0x205)],_0xd5376a[_0x22894c(0x22f)]);return{'snapshot':_0x161119,'absentIds':_0x15badb[_0x22894c(0x21f)](_0x319101=>!_0x161119[_0x22894c(0x23e)][_0x22894c(0x1cb)](_0x319101)),'remainingIds':_0x15badb[_0x22894c(0x21f)](_0x3c806e=>_0x161119[_0x22894c(0x23e)]['has'](_0x3c806e))};}function verificationFromOutcome(_0x3b9e13){const _0x464db4=a151_0x9e9958;return{'checkedBy':_0x464db4(0x1c5),'absentIds':_0x3b9e13[_0x464db4(0x200)],'remainingIds':_0x3b9e13[_0x464db4(0x1d0)]};}function validateDeleteDryRunInput(_0x2b20ee){const _0x5efbef=a151_0x9e9958;validateExactId(_0x2b20ee);if(!hasFlag(_0x2b20ee,_0x5efbef(0x203))||!_0x2b20ee[_0x5efbef(0x231)](_0x5efbef(0x203))['trim']())throw CliErrors['flagMissing'](_0x5efbef(0x203),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x2b20ee,_0x5efbef(0x207)))throw CliErrors[_0x5efbef(0x1fd)](_0x5efbef(0x1e6));}function validateDeleteExecuteInput(_0x54c01a){const _0x17ce0e=a151_0x9e9958;if(!hasFlag(_0x54c01a,'plan')||!_0x54c01a['str'](_0x17ce0e(0x207))[_0x17ce0e(0x1d8)]())throw CliErrors[_0x17ce0e(0x220)]('plan',_0x17ce0e(0x1c4));const _0xb567f4=['id',_0x17ce0e(0x22b),_0x17ce0e(0x203),_0x17ce0e(0x1cc),_0x17ce0e(0x239),_0x17ce0e(0x1f5)]['filter'](_0x85dd70=>hasFlag(_0x54c01a,_0x85dd70));if(_0xb567f4[_0x17ce0e(0x1df)]>0x0)throw CliErrors[_0x17ce0e(0x1fd)](_0x17ce0e(0x1f9)+_0xb567f4[_0x17ce0e(0x216)](_0x4213f3=>'--'+_0x4213f3)[_0x17ce0e(0x20b)](',\x20')+'.');}async function buildDeletePlan(_0x2f54c3){const _0x258b4d=a151_0x9e9958,_0x1471f1=validateExactId(_0x2f54c3),_0x170b34=await fetchMutationSnapshot(_0x2f54c3,_0x258b4d(0x1d5),_0x1471f1),_0x4fdc2e=requireMenu(_0x170b34,_0x1471f1);assertExpectedState(_0x2f54c3,_0x4fdc2e);const _0x5bac1b=_0x2f54c3[_0x258b4d(0x221)](_0x258b4d(0x22b));let _0x3f5c5c;if(_0x5bac1b){if(_0x4fdc2e[_0x258b4d(0x1db)][_0x258b4d(0x1d8)]()[_0x258b4d(0x211)]()!==_0x258b4d(0x1f2))throw menuError(_0x258b4d(0x22d),_0x258b4d(0x1ed)+_0x4fdc2e['id']+'\x20is\x20type\x20\x22'+(_0x4fdc2e[_0x258b4d(0x1db)]||'unknown')+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x3f5c5c=collectDeleteTargets(_0x170b34,_0x4fdc2e),_0x3f5c5c[_0x258b4d(0x1e0)](_0x5a5aca=>assertDeleteSafety(_0x5a5aca,!![]));}else assertDeleteSafety(_0x4fdc2e),_0x3f5c5c=[_0x4fdc2e];assertNoSharedPages(_0x170b34,_0x3f5c5c);const _0x3df852=_0x3f5c5c[_0x258b4d(0x216)](_0x52c1fe=>_0x52c1fe['id']),_0x501387=cascadeForTargets(_0x3f5c5c),_0x2613b4=_0x501387[_0x258b4d(0x225)][_0x258b4d(0x1df)]>0x0?[_0x258b4d(0x1d3)]:[];return mutationResult({'operation':_0x258b4d(0x1d4),'selector':{'id':_0x1471f1,'recursive':_0x5bac1b},'before':_0x4fdc2e,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x258b4d(0x22a),'path':_0x258b4d(0x237),'body':{'idList':_0x3df852}}],'targets':_0x3f5c5c,'deleteOrder':_0x3df852,'snapshotHash':_0x170b34[_0x258b4d(0x1fc)],'cascade':_0x501387,'warnings':_0x2613b4});}function assertDeleteSafety(_0x1fe304,_0x395c5b=![]){const _0x2c8095=a151_0x9e9958,_0x4302a6=_0x1fe304['type'][_0x2c8095(0x1d8)]()[_0x2c8095(0x211)]()===_0x2c8095(0x1f2);if(_0x1fe304[_0x2c8095(0x209)]>0x0&&(!_0x395c5b||!_0x4302a6))throw menuError(_0x2c8095(0x224),_0x2c8095(0x1ed)+_0x1fe304['id']+_0x2c8095(0x1dd)+_0x1fe304[_0x2c8095(0x209)]+_0x2c8095(0x1ff),'Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20'+_0x1fe304[_0x2c8095(0x214)]['join'](',\x20'));if(_0x4302a6&&_0x1fe304[_0x2c8095(0x235)]!=null)throw menuError(_0x2c8095(0x226),'Folder\x20'+_0x1fe304['id']+_0x2c8095(0x1d9)+_0x1fe304['pageId']+_0x2c8095(0x217),_0x2c8095(0x1d1));if(!_0x4302a6)return;if(!_0x1fe304['resourcesValid'])throw menuError(_0x2c8095(0x1c9),_0x2c8095(0x1d6)+_0x1fe304['id']+_0x2c8095(0x1eb),_0x2c8095(0x1cd));if(_0x1fe304[_0x2c8095(0x1f3)][_0x2c8095(0x1df)]>0x0)throw menuError('menu_folder_has_resources','Folder\x20'+_0x1fe304['id']+_0x2c8095(0x201)+_0x1fe304[_0x2c8095(0x1f3)][_0x2c8095(0x1df)]+'\x20resource\x20URL(s).',_0x2c8095(0x23f));}function collectDeleteTargets(_0x57e83b,_0x38d2f8){const _0xf89b66=[],_0x330bdc=new Set(),_0x3311a8=new Set(),_0x4a4c78=_0x3feb50=>{const _0x5fdaaf=a151_0x5636;if(_0x330bdc['has'](_0x3feb50['id']))throw menuError(_0x5fdaaf(0x212),_0x5fdaaf(0x1fb)+_0x3feb50['id']+'.');if(_0x3311a8['has'](_0x3feb50['id']))return;_0x330bdc[_0x5fdaaf(0x20f)](_0x3feb50['id']);for(const _0x48f8ba of _0x3feb50[_0x5fdaaf(0x214)]){const _0x392bfb=_0x57e83b[_0x5fdaaf(0x23e)]['get'](_0x48f8ba);if(!_0x392bfb)throw menuError(_0x5fdaaf(0x212),_0x5fdaaf(0x1ed)+_0x3feb50['id']+'\x20references\x20missing\x20child\x20'+_0x48f8ba+'.');_0x4a4c78(_0x392bfb);}_0x330bdc[_0x5fdaaf(0x1d4)](_0x3feb50['id']),_0x3311a8['add'](_0x3feb50['id']),_0xf89b66['push'](_0x3feb50);};return _0x4a4c78(_0x38d2f8),_0xf89b66;}function assertDeleteTargetsComplete(_0x266af4,_0x546733){const _0x313c4b=a151_0x9e9958,_0xcc88d4=requireMenu(_0x546733,_0x266af4[_0x313c4b(0x1ef)]['id']);if(_0x266af4[_0x313c4b(0x22b)]&&_0xcc88d4[_0x313c4b(0x1db)][_0x313c4b(0x1d8)]()['toLowerCase']()!==_0x313c4b(0x1f2))throw menuError(_0x313c4b(0x23b),_0x313c4b(0x1e5)+_0xcc88d4['id']+'\x20is\x20not\x20a\x20folder.');const _0x4d57af=_0x266af4[_0x313c4b(0x22b)]?collectDeleteTargets(_0x546733,_0xcc88d4)['map'](_0x4dd2b6=>_0x4dd2b6['id']):[_0xcc88d4['id']];if(JSON['stringify'](_0x266af4[_0x313c4b(0x210)])!==JSON[_0x313c4b(0x22e)](_0x4d57af))throw menuError(_0x313c4b(0x23b),_0x313c4b(0x208),_0x313c4b(0x236));}function a151_0x5636(_0x22aa0d,_0x239d15){_0x22aa0d=_0x22aa0d-0x1c4;const _0x192a55=a151_0x192a();let _0x5636ea=_0x192a55[_0x22aa0d];return _0x5636ea;}function assertNoSharedPages(_0x2f08c6,_0x449f8b){const _0x5ce9dc=a151_0x9e9958,_0x1f462f=new Set(_0x449f8b[_0x5ce9dc(0x216)](_0x1e1b76=>_0x1e1b76['id'])),_0x3f8e0a=new Set(_0x449f8b['map'](_0x412f1e=>_0x412f1e[_0x5ce9dc(0x235)])[_0x5ce9dc(0x21f)](_0x3ce5f8=>_0x3ce5f8!=null));if(_0x3f8e0a[_0x5ce9dc(0x1ca)]===0x0)return;const _0x38056a=_0x2f08c6[_0x5ce9dc(0x213)]['filter'](_0x50a095=>!_0x1f462f[_0x5ce9dc(0x1cb)](_0x50a095['id'])&&_0x50a095[_0x5ce9dc(0x235)]!=null&&_0x3f8e0a[_0x5ce9dc(0x1cb)](_0x50a095[_0x5ce9dc(0x235)]));if(_0x38056a[_0x5ce9dc(0x1df)]===0x0)return;const _0x3c2e01=_0x38056a[_0x5ce9dc(0x216)](_0x476155=>_0x5ce9dc(0x1c7)+_0x476155['pageId']+_0x5ce9dc(0x1f4)+_0x476155['id'])[_0x5ce9dc(0x20b)](',\x20');throw menuError('menu_page_shared',_0x5ce9dc(0x229)+_0x3c2e01+'.',_0x5ce9dc(0x1c6));}function assertCascadeMatchesPlan(_0x34063a,_0x32f15f){const _0x1f66bf=a151_0x9e9958,_0x174a63=cascadeForTargets(_0x32f15f);if(JSON['stringify'](_0x34063a[_0x1f66bf(0x21a)])!==JSON['stringify'](_0x174a63))throw menuError(_0x1f66bf(0x23b),_0x1f66bf(0x21e));}function cascadeForTargets(_0x33f888){const _0x4a4187=a151_0x9e9958,_0x473f8=_0x33f888[_0x4a4187(0x216)](_0x1b03de=>_0x1b03de['pageId'])[_0x4a4187(0x21f)](_0x1b3840=>_0x1b3840!=null)[_0x4a4187(0x21f)]((_0xf777dc,_0x5b2dc2,_0x47b731)=>_0x47b731[_0x4a4187(0x1da)](_0xf777dc)===_0x5b2dc2);return{'pages':_0x473f8,'pageSchemaAffected':_0x473f8[_0x4a4187(0x1df)]>0x0};}function asMenuError(_0x564daf){const _0x15e845=a151_0x9e9958;return _0x564daf instanceof CliError?_0x564daf:menuError(_0x15e845(0x23b),_0x564daf instanceof Error?_0x564daf[_0x15e845(0x1dc)]:String(_0x564daf));}function a151_0x192a(){const _0x3d05b7=['Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','hash','validation','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','absentIds','\x20still\x20references\x20','snapshot','plan-out','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','appCode','execute\x20reviewed\x20delete\x20plan','plan','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','childrenCount','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','join','1370990QhFood','push','3371746XkFMzY','add','deleteOrder','toLowerCase','menu_tree_invalid','menus','childrenIds','\x20menu(s)\x20under\x20exact\x20id\x20','map','\x20and\x20cannot\x20be\x20deleted\x20safely.','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','Batch\x20delete\x20request\x20for\x20menu\x20','cascade','405mrbAOR','failed','causeCode','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','filter','flagMissing','bool','629408bzxWGc','verify\x20batch\x20delete','menu_non_empty','pages','menu_delete_page_bound','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','10kItzcQ','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','POST','recursive','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','menu_recursive_requires_folder','stringify','cookie','expiresAt','str','boolean','Would\x20batch\x20delete\x20','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','pageId','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','/smartapi/menu/batchDelete','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','expect-path','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','menu_plan_invalid','verification','286508lnDbgL','byId','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','menu\x20list','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','page\x20','path','menu_folder_resources_invalid','size','has','expect-parent-id','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','179001eHaWkP','remainingIds','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.',';\x20execution\x20must\x20consume\x20','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','delete','plan\x20delete','Folder\x20','Deleted\x20','trim','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','indexOf','type','message','\x20has\x20','high-risk-write','length','forEach','Backend\x20reported\x20','unconfirmed','selector','batch\x20delete','Recursive\x20menu\x20delete\x20plan\x20root\x20','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','createdAt','Post-mismatch\x20menu\x20readback\x20failed\x20(','batch-delete','rabetbase\x20menu\x20list\x20--format\x20json','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Menu\x20','55BpmYtq','target','954HnAxZt','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','folder','resources','\x20->\x20menu\x20','expected-children-count','):\x20','6wvIdht','90648bIOMSm','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','string'];a151_0x192a=function(){return _0x3d05b7;};return a151_0x192a();}
@@ -1 +1 @@
1
- const a152_0xfd45c3=a152_0x1517;(function(_0xb17e42,_0x1d6776){const _0x103bb4=a152_0x1517,_0x38a938=_0xb17e42();while(!![]){try{const _0x25acaf=-parseInt(_0x103bb4(0x120))/0x1+-parseInt(_0x103bb4(0x141))/0x2*(-parseInt(_0x103bb4(0x11e))/0x3)+parseInt(_0x103bb4(0x13e))/0x4*(-parseInt(_0x103bb4(0xe9))/0x5)+parseInt(_0x103bb4(0x13d))/0x6*(-parseInt(_0x103bb4(0xeb))/0x7)+-parseInt(_0x103bb4(0x12c))/0x8+parseInt(_0x103bb4(0x12a))/0x9*(parseInt(_0x103bb4(0xef))/0xa)+parseInt(_0x103bb4(0x137))/0xb*(-parseInt(_0x103bb4(0x153))/0xc);if(_0x25acaf===_0x1d6776)break;else _0x38a938['push'](_0x38a938['shift']());}catch(_0x325238){_0x38a938['push'](_0x38a938['shift']());}}}(a152_0x3a12,0x49554));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a152_0xfd45c3(0x11b),'new-window':a152_0xfd45c3(0x114)};export function validateExternalMenuUrl(_0x219c1e){const _0x274463=a152_0xfd45c3,_0x319dda=_0x219c1e[_0x274463(0x16a)]();let _0x199ce8;try{_0x199ce8=new URL(_0x319dda);}catch{throw menuError('menu_url_invalid',_0x274463(0xe8),_0x274463(0xf9));}if(_0x199ce8[_0x274463(0x11f)]!==_0x274463(0xf4))throw menuError(_0x274463(0x156),_0x274463(0x119),'Provide\x20an\x20HTTPS\x20URL.');if(_0x199ce8[_0x274463(0x10b)]||_0x199ce8['password'])throw menuError(_0x274463(0x142),_0x274463(0x125),_0x274463(0x10a));return _0x319dda;}export const menuExternalLinkCreate={'service':a152_0xfd45c3(0x14c),'command':a152_0xfd45c3(0x118),'description':a152_0xfd45c3(0x135),'risk':a152_0xfd45c3(0xed),'structuredErrors':!![],'flags':[{'name':a152_0xfd45c3(0x13f),'type':a152_0xfd45c3(0x148),'required':!![],'description':'Menu\x20label'},{'name':a152_0xfd45c3(0x131),'type':'string','required':!![],'enum':['embedded',a152_0xfd45c3(0xf7)],'description':a152_0xfd45c3(0x150)},{'name':a152_0xfd45c3(0x15d),'type':a152_0xfd45c3(0x148),'required':!![],'description':a152_0xfd45c3(0xdb)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a152_0xfd45c3(0x15e),'type':a152_0xfd45c3(0x126),'default':!![],'description':a152_0xfd45c3(0x151)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3cf16c){validateAddInput(_0x3cf16c);},async 'dryRun'(_0x337d0e){const _0x3c8103=a152_0xfd45c3;validateAddInput(_0x337d0e);const {plan:_0x341e16}=await buildSafeAddPlan(_0x337d0e,!![]),_0x14c1ce=_0x341e16[_0x3c8103(0x113)],_0x2897db=createBody(_0x14c1ce);return menuDryRunResult(_0x341e16,{'method':'POST','url':_0x3c8103(0xea),'body':_0x2897db,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON[_0x3c8103(0x138)](_0x14c1ce['label'])+_0x3c8103(0x127)+_0x337d0e['str']('open-mode')+_0x3c8103(0x121)});},async 'execute'(_0x3de38b){const _0x43b7d5=a152_0xfd45c3;validateAddInput(_0x3de38b);const _0x5e406c=await buildSafeAddPlan(_0x3de38b,![]),{plan:_0x441328,snapshot:_0x563094}=_0x5e406c,_0x4024e5=_0x441328[_0x43b7d5(0x113)],_0x33bb55=buildMenuLookupCommand(_0x3de38b['appCode']);await recheckAddSnapshot(_0x3de38b,_0x441328);let _0x1c5d94;try{_0x1c5d94=await createMenuEntity(_0x3de38b['appCode'],_0x3de38b['cookie'],createBody(_0x4024e5));}catch(_0x43da6f){const _0x50c2a2=mapMenuApiError(_0x43da6f,_0x43b7d5(0x100));if(!isMenuResponseLoss(_0x43da6f)||_0x50c2a2['code']==='menu_permission_denied')throw externalLinkCreateFailure(_0x50c2a2,_0x441328,{'stage':_0x43b7d5(0xfc),'failed':{},'verification':{'status':'failed','lookupCommand':_0x33bb55}});return recoverAfterResponseLoss(_0x3de38b,_0x5e406c,_0x33bb55);}const _0xf31bde=Number(_0x1c5d94?.['id']),_0x138d33=typeof _0x1c5d94?.[_0x43b7d5(0x15c)]===_0x43b7d5(0x148)?_0x1c5d94[_0x43b7d5(0x15c)]:'';if(!Number[_0x43b7d5(0xfe)](_0xf31bde)||_0xf31bde<=0x0||!_0x138d33[_0x43b7d5(0x16a)]()){const _0x4b4d0e=menuError(_0x43b7d5(0x10f),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.',_0x43b7d5(0x10c)+_0x33bb55+_0x43b7d5(0x10d));throw externalLinkCreateFailure(_0x4b4d0e,_0x441328,{'stage':_0x43b7d5(0x160),'succeeded':Number[_0x43b7d5(0xfe)](_0xf31bde)&&_0xf31bde>0x0?[{'id':_0xf31bde,'created':!![]}]:[],'failed':{'createdId':Number[_0x43b7d5(0xfe)](_0xf31bde)?_0xf31bde:null,'generatedPathConfirmed':Boolean(_0x138d33['trim']())},'warnings':[_0x43b7d5(0x134)],'after':Number[_0x43b7d5(0xfe)](_0xf31bde)&&_0xf31bde>0x0?{..._0x4024e5,'id':_0xf31bde,'path':_0x138d33}:_0x4024e5,'verification':{'status':_0x43b7d5(0x110),'lookupCommand':_0x33bb55,...Number[_0x43b7d5(0xfe)](_0xf31bde)&&_0xf31bde>0x0?{'targetId':_0xf31bde}:{}}});}const _0x12ce97=await readAndVerifyCreatedMenu({'appCode':_0x3de38b[_0x43b7d5(0x14f)],'cookie':_0x3de38b[_0x43b7d5(0x145)],'plan':_0x441328,'afterPlan':_0x4024e5,'createdId':_0xf31bde,'expectedPath':_0x138d33,'lookupCommand':_0x33bb55,'recovered':![]});return creationSuccess(_0x441328,_0x12ce97[_0x43b7d5(0x157)],_0x12ce97[_0x43b7d5(0xde)],![]);}};function validateAddInput(_0x51c801){const _0x250390=a152_0xfd45c3;if(!_0x51c801[_0x250390(0xdf)](_0x250390(0x13f))[_0x250390(0x16a)]())throw CliErrors[_0x250390(0x164)](_0x250390(0x13f));resolveExternalMenuType(_0x51c801),validateExternalMenuUrl(_0x51c801[_0x250390(0xdf)](_0x250390(0x15d))),parseParentId(_0x51c801,_0x250390(0xee)),validateSort(_0x51c801);}function resolveExternalMenuType(_0xae29f2){const _0x2bba46=a152_0xfd45c3,_0x571a1c=_0xae29f2[_0x2bba46(0xdf)](_0x2bba46(0x131))[_0x2bba46(0x16a)]();if(!_0x571a1c)throw CliErrors['flagMissing'](_0x2bba46(0x131));const _0x273c0c=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x571a1c];if(!_0x273c0c)throw menuError(_0x2bba46(0xf2),_0x2bba46(0x128),_0x2bba46(0x12d));return _0x273c0c;}async function buildAddPlan(_0x76c9c6,_0x3c1176){const _0xb71b8c=a152_0xfd45c3,_0x28167c=await fetchMutationSnapshot(_0x76c9c6,_0xb71b8c(0x100)),_0xf62fad=parseParentId(_0x76c9c6,_0xb71b8c(0xee))??null;if(_0xf62fad!=null)requireFolder(_0x28167c,_0xf62fad);const _0x4ecdbb=validateSort(_0x76c9c6),_0x484e4e=_0x4ecdbb??nextSiblingSort(_0x28167c,_0xf62fad,'menu'),_0x1612ea=_0x76c9c6[_0xb71b8c(0xdf)](_0xb71b8c(0x13f))['trim'](),_0x59bae2=resolveExternalMenuType(_0x76c9c6),_0x5d3ce3=validateExternalMenuUrl(_0x76c9c6[_0xb71b8c(0xdf)](_0xb71b8c(0x15d))),_0x292f31=Object['prototype'][_0xb71b8c(0xf5)]['call'](_0x76c9c6[_0xb71b8c(0xe4)],_0xb71b8c(0x15e))?_0x76c9c6[_0xb71b8c(0xd5)](_0xb71b8c(0x15e)):!![],_0x8e3044={'id':null,'parentId':_0xf62fad,'label':_0x1612ea,'path':_0xb71b8c(0x14b),'url':_0x5d3ce3,'type':_0x59bae2,'visible':_0x292f31,'sort':_0x484e4e},_0xab9046=buildMenuLookupCommand(_0x76c9c6['appCode']),_0x2e5c25=mutationResult({'operation':_0xb71b8c(0x15a),'selector':{'parentId':_0xf62fad,'type':_0x59bae2,'label':_0x1612ea,'url':_0x5d3ce3},'before':null,'after':_0x8e3044,'dryRun':_0x3c1176,'backend':[{'method':_0xb71b8c(0x152),'path':_0xb71b8c(0xea)}],'plannedActions':[{'stage':'create-menu','method':_0xb71b8c(0x152),'path':'/smartapi/menu/create','body':createBody(_0x8e3044)}],'snapshotHash':_0x28167c[_0xb71b8c(0xd7)],'warnings':[_0xb71b8c(0xf0)],'verification':{'lookupCommand':_0xab9046}});return{'plan':_0x2e5c25,'snapshot':_0x28167c};}async function buildSafeAddPlan(_0x26a15b,_0x355e86){try{return await buildAddPlan(_0x26a15b,_0x355e86);}catch(_0x20d251){throw safeMenuAddError(_0x20d251);}}async function recheckAddSnapshot(_0x118ce6,_0x21b296){const _0x1deffe=a152_0xfd45c3;try{await recheckMutationSnapshot(_0x118ce6,_0x21b296,_0x1deffe(0x100));}catch(_0x629d55){const _0x2657e7=getFailureRecord(_0x629d55);throw externalLinkCreateFailure(_0x629d55,_0x21b296,{'stage':_0x1deffe(0x162),'failed':{..._0x2657e7?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0x2657e7[_0x1deffe(0xe7)]}:{},..._0x2657e7?.[_0x1deffe(0x102)]?{'currentSnapshotHash':_0x2657e7['currentSnapshotHash']}:{}}});}}function createBody(_0x47bf53){const _0x5a07bc=a152_0xfd45c3;return{'parentId':toApiParentId(_0x47bf53[_0x5a07bc(0x14a)]),'label':String(_0x47bf53['label']),'type':String(_0x47bf53[_0x5a07bc(0x12b)]),'url':String(_0x47bf53[_0x5a07bc(0x15d)]),'visible':Boolean(_0x47bf53['visible']),'sort':Number(_0x47bf53[_0x5a07bc(0x106)]),'extend':{}};}function buildMenuLookupCommand(_0x2c1ded){const _0x497b1e=a152_0xfd45c3,_0x355720='\x27'+_0x2c1ded[_0x497b1e(0x14d)](/'/g,_0x497b1e(0x13a))+'\x27';return _0x497b1e(0xd8)+_0x355720+_0x497b1e(0x104);}async function recoverAfterResponseLoss(_0x4afa9f,_0x512c28,_0x30f339){const _0x254d58=a152_0xfd45c3,{plan:_0x1c5630,snapshot:_0x3dba11}=_0x512c28,_0x3cb1fb=_0x1c5630['after'];let _0x509c2b;try{_0x509c2b=await fetchMenuSnapshot(_0x4afa9f[_0x254d58(0x14f)],_0x4afa9f['cookie']);}catch(_0x144c84){throw recoveryRequiredFailure(_0x1c5630,_0x30f339,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x1a2538=_0x509c2b[_0x254d58(0x11a)][_0x254d58(0x144)](_0x3c6337=>_0x3c6337['parentId']===_0x3cb1fb[_0x254d58(0x14a)]&&_0x3c6337[_0x254d58(0x12b)]===_0x3cb1fb['type']&&_0x3c6337['label']===_0x3cb1fb['label']&&_0x3c6337[_0x254d58(0x15d)]===_0x3cb1fb[_0x254d58(0x15d)]),_0x669113=_0x1a2538[_0x254d58(0x144)](_0x24045f=>!_0x3dba11[_0x254d58(0xe6)][_0x254d58(0x169)](_0x24045f['id'])),_0x49d491=_0x1a2538[_0x254d58(0x144)](_0x40df69=>_0x3dba11[_0x254d58(0xe6)]['has'](_0x40df69['id']));if(_0x1a2538[_0x254d58(0x116)]!==0x1||_0x669113['length']!==0x1)throw recoveryRequiredFailure(_0x1c5630,_0x30f339,{'matchCount':_0x1a2538['length'],'newMatchCount':_0x669113[_0x254d58(0x116)],'preexistingMatchCount':_0x49d491[_0x254d58(0x116)]});const _0x123bbc=_0x669113[0x0];try{verifyCreatedFact(_0x123bbc,_0x123bbc['id'],_0x3cb1fb,null);}catch(_0x5a2eb4){const _0x28b6b5=_0x5a2eb4 instanceof Error&&'code'in _0x5a2eb4?_0x5a2eb4:menuError(_0x254d58(0x168),_0x254d58(0x107)+_0x123bbc['id']+_0x254d58(0x13c),'Run\x20'+_0x30f339+_0x254d58(0xfa));throw externalLinkCreateFailure(_0x28b6b5,_0x1c5630,{'stage':_0x254d58(0x136),'succeeded':[{'id':_0x123bbc['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x123bbc['id'],'finalFactsConfirmed':![]},'after':_0x123bbc,'warnings':['Menu\x20'+_0x123bbc['id']+_0x254d58(0x140)],'verification':{'status':_0x254d58(0x110),'targetId':_0x123bbc['id'],'recovered':!![],'lookupCommand':_0x30f339}});}return creationSuccess(_0x1c5630,_0x509c2b,_0x123bbc,!![]);}function recoveryRequiredFailure(_0x3d39bf,_0x4a096c,_0x1718ea){const _0x118072=a152_0xfd45c3,_0x42cafe=menuError(_0x118072(0x14e),_0x118072(0x166),_0x118072(0x10c)+_0x4a096c+_0x118072(0x11c));return externalLinkCreateFailure(_0x42cafe,_0x3d39bf,{'stage':'create-recovery','failed':_0x1718ea,'warnings':[_0x118072(0x108)],'verification':{'status':_0x118072(0x110),..._0x1718ea,'lookupCommand':_0x4a096c}});}async function readAndVerifyCreatedMenu(_0x199b64){const _0x494332=a152_0xfd45c3;let _0x1ef212;try{_0x1ef212=await fetchMenuSnapshot(_0x199b64[_0x494332(0x14f)],_0x199b64[_0x494332(0x145)]);}catch(_0x3215e5){const _0x480cd4=menuError(_0x494332(0x168),_0x494332(0x139)+_0x199b64[_0x494332(0x115)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x494332(0x10c)+_0x199b64[_0x494332(0x16b)]+_0x494332(0xfb));throw externalLinkCreateFailure(_0x480cd4,_0x199b64[_0x494332(0xf1)],{'stage':_0x494332(0x136),'succeeded':[{'id':_0x199b64['createdId'],'created':!![]}],'failed':{'id':_0x199b64[_0x494332(0x115)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x199b64[_0x494332(0x161)],'id':_0x199b64[_0x494332(0x115)],'path':_0x199b64[_0x494332(0xda)]},'warnings':[_0x494332(0x139)+_0x199b64[_0x494332(0x115)]+_0x494332(0x154)],'verification':{'status':_0x494332(0x110),'targetId':_0x199b64[_0x494332(0x115)],'lookupCommand':_0x199b64[_0x494332(0x16b)]}});}const _0xd853de=_0x1ef212[_0x494332(0xe6)][_0x494332(0xd9)](_0x199b64[_0x494332(0x115)]);try{if(!_0xd853de)throw menuError(_0x494332(0x168),_0x494332(0x122)+_0x199b64['createdId']+_0x494332(0x133),_0x494332(0x10c)+_0x199b64['lookupCommand']+_0x494332(0xfb));verifyCreatedFact(_0xd853de,_0x199b64['createdId'],_0x199b64['afterPlan'],_0x199b64['expectedPath']);}catch(_0x1ac4f4){const _0x34993a=_0x1ac4f4 instanceof Error&&_0x494332(0x12f)in _0x1ac4f4?_0x1ac4f4:menuError(_0x494332(0x168),'Created\x20menu\x20'+_0x199b64[_0x494332(0x115)]+_0x494332(0x158),_0x494332(0x10c)+_0x199b64[_0x494332(0x16b)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x34993a,_0x199b64['plan'],{'stage':_0x494332(0x136),'succeeded':[{'id':_0x199b64[_0x494332(0x115)],'created':!![]}],'failed':{'id':_0x199b64[_0x494332(0x115)],'finalFactsConfirmed':![]},'after':_0xd853de??{..._0x199b64[_0x494332(0x161)],'id':_0x199b64['createdId'],'path':_0x199b64[_0x494332(0xda)]},'warnings':['Menu\x20'+_0x199b64[_0x494332(0x115)]+_0x494332(0xec)],'verification':{'status':'failed','targetId':_0x199b64[_0x494332(0x115)],'recovered':_0x199b64[_0x494332(0x12e)],'lookupCommand':_0x199b64[_0x494332(0x16b)]}});}return{'snapshot':_0x1ef212,'fact':_0xd853de};}function verifyCreatedFact(_0x3fb2dd,_0x4281eb,_0xb85ffb,_0x6ebb2a){const _0x2c0f6c=a152_0xfd45c3;if(!Number[_0x2c0f6c(0xfe)](_0x3fb2dd['id'])||_0x3fb2dd['id']<=0x0||_0x3fb2dd['id']!==_0x4281eb)throw menuError(_0x2c0f6c(0x168),_0x2c0f6c(0x146),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x19823b=[[_0x2c0f6c(0x132),_0x3fb2dd['parentId'],_0xb85ffb['parentId']],[_0x2c0f6c(0x12b),_0x3fb2dd[_0x2c0f6c(0x12b)],_0xb85ffb[_0x2c0f6c(0x12b)]],['label',_0x3fb2dd[_0x2c0f6c(0x13f)],_0xb85ffb[_0x2c0f6c(0x13f)]],[_0x2c0f6c(0xe1),_0x3fb2dd['url'],_0xb85ffb[_0x2c0f6c(0x15d)]],[_0x2c0f6c(0x130),_0x3fb2dd['visible'],_0xb85ffb[_0x2c0f6c(0x15e)]],['sort',_0x3fb2dd[_0x2c0f6c(0x106)],_0xb85ffb[_0x2c0f6c(0x106)]]];for(const [_0x34364a,_0x45e51d,_0x5b7358]of _0x19823b){if(_0x45e51d!==_0x5b7358)throw menuError(_0x2c0f6c(0x168),_0x2c0f6c(0x122)+_0x3fb2dd['id']+'\x20has\x20an\x20unexpected\x20'+_0x34364a+'.',_0x2c0f6c(0xe0));}if(!_0x3fb2dd[_0x2c0f6c(0x15c)][_0x2c0f6c(0x16a)]()||_0x6ebb2a!==null&&_0x3fb2dd[_0x2c0f6c(0x15c)]!==_0x6ebb2a)throw menuError('menu_verification_failed',_0x2c0f6c(0x122)+_0x3fb2dd['id']+_0x2c0f6c(0x149),_0x2c0f6c(0xe0));}function creationSuccess(_0x31b710,_0x32467e,_0x31443a,_0x2c8012){const _0x12260b=a152_0xfd45c3,_0x1cf64d=mutationResult({..._0x31b710,'after':_0x31443a,'dryRun':![],'succeeded':[{'id':_0x31443a['id'],'created':!![],'recovered':_0x2c8012}],'verification':{'checkedBy':_0x12260b(0x159),'snapshotHash':_0x32467e['hash'],'targetId':_0x31443a['id'],'recovered':_0x2c8012,'path':_0x31443a[_0x12260b(0x15c)]}});return{'ok':!![],'message':_0x2c8012?_0x12260b(0xd6)+_0x31443a['id']+_0x12260b(0xff):_0x12260b(0x10e)+_0x31443a['id']+'.','data':{..._0x1cf64d,'recovered':_0x2c8012}};}function externalLinkCreateFailure(_0x2926e9,_0x9d5f01,_0x592bb1){const _0x3557df=a152_0xfd45c3;return menuFailure(safeMenuAddError(_0x2926e9),redactFailurePlan(_0x9d5f01),{..._0x592bb1,'succeeded':_0x592bb1[_0x3557df(0xdd)]?.[_0x3557df(0x167)](redactFailureRecord),'failed':_0x592bb1[_0x3557df(0x110)]?redactFailureRecord(_0x592bb1[_0x3557df(0x110)]):undefined,'verification':_0x592bb1['verification']?redactFailureRecord(_0x592bb1['verification']):undefined,'after':_0x592bb1[_0x3557df(0x113)]===undefined?undefined:redactFailureValue(_0x592bb1[_0x3557df(0x113)])});}function redactFailurePlan(_0x3a20e2){const _0x233368=a152_0xfd45c3;return{..._0x3a20e2,'selector':redactFailureRecord(_0x3a20e2[_0x233368(0x109)]),'before':redactFailureValue(_0x3a20e2['before']),'after':redactFailureValue(_0x3a20e2[_0x233368(0x113)]),'plannedActions':_0x3a20e2['plannedActions']?.[_0x233368(0x167)](_0x219a2d=>({..._0x219a2d,'body':redactFailureRecord(_0x219a2d[_0x233368(0x124)])})),'succeeded':_0x3a20e2[_0x233368(0xdd)]['map'](redactFailureRecord),'failed':_0x3a20e2['failed'][_0x233368(0x167)](redactFailureRecord),'verification':_0x3a20e2[_0x233368(0x136)]?redactFailureRecord(_0x3a20e2[_0x233368(0x136)]):undefined};}function redactFailureRecord(_0x3b3fda){return redactFailureValue(_0x3b3fda);}function redactFailureValue(_0x115d6a,_0x2a3973=''){const _0x50d847=a152_0xfd45c3,_0x510952=_0x2a3973['toLowerCase']()['replace'](/[^a-z0-9]/g,'');if(['cause',_0x50d847(0xfd),_0x50d847(0x103),_0x50d847(0x147)]['includes'](_0x510952))return _0x50d847(0x13b);if(Array[_0x50d847(0xf6)](_0x115d6a))return _0x115d6a[_0x50d847(0x167)](_0x180340=>redactFailureValue(_0x180340));if(_0x115d6a&&typeof _0x115d6a===_0x50d847(0x15f))return Object[_0x50d847(0x163)](Object[_0x50d847(0x117)](_0x115d6a)[_0x50d847(0x167)](([_0x53a78a,_0x1a8bb8])=>[_0x53a78a,redactFailureValue(_0x1a8bb8,_0x53a78a)]));return _0x115d6a;}function safeMenuAddError(_0x4e6dad){const _0xe5b35c=a152_0xfd45c3,_0x185acf=_0x4e6dad instanceof CliError?_0x4e6dad[_0xe5b35c(0x12f)]:_0xe5b35c(0x101);switch(_0x185acf){case _0xe5b35c(0xdc):return menuError(_0x185acf,_0xe5b35c(0x155),_0xe5b35c(0x112));case _0xe5b35c(0x111):return menuError(_0x185acf,_0xe5b35c(0xe3),_0xe5b35c(0x129));case _0xe5b35c(0x10f):return menuError(_0x185acf,_0xe5b35c(0x143),_0xe5b35c(0xe5));case _0xe5b35c(0x168):return menuError(_0x185acf,_0xe5b35c(0x165),_0xe5b35c(0xe5));case _0xe5b35c(0x14e):return menuError(_0x185acf,_0xe5b35c(0x105),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case'menu_mutation_failed':case _0xe5b35c(0xf3):case'menu_parent_not_folder':case _0xe5b35c(0x11d):case _0xe5b35c(0xe2):return menuError(_0x185acf,_0xe5b35c(0x123),_0xe5b35c(0xf8));default:return menuError(_0xe5b35c(0x101),_0xe5b35c(0x123),_0xe5b35c(0xf8));}}function a152_0x3a12(){const _0x52dd03=['open-mode','parent','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','Create\x20an\x20external\x20website\x20link\x20menu','verification','44QRGzIN','stringify','Menu\x20','\x27\x5c\x27\x27','<redacted>','\x20could\x20not\x20be\x20verified.','1028166pisvPL','472836qwaDke','label','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','6778ENaLWr','menu_url_credentials_forbidden','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','filter','cookie','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','rawerror','string','\x20has\x20an\x20unexpected\x20generated\x20path.','parentId','<platform-generated>','menu','replace','menu_create_recovery_required','appCode','How\x20to\x20open\x20the\x20external\x20website','Whether\x20the\x20menu\x20is\x20visible','POST','743208TyZljJ','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','menu_url_https_required','snapshot','\x20failed\x20final\x20verification.','menu\x20list','add','data','path','url','visible','object','create-response-validation','afterPlan','pre-write-recheck','fromEntries','flagMissing','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','map','menu_verification_failed','has','trim','lookupCommand','bool','Recovered\x20created\x20external\x20menu\x20','hash','rabetbase\x20menu\x20list\x20--appcode\x20','get','expectedPath','External\x20HTTPS\x20URL','menu_state_drift','succeeded','fact','str','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','URL','menu_sort_overflow','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','rawFlags','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','byId','expectedSnapshotHash','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','5RwoiyJ','/smartapi/menu/create','7xRxinF','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','write','parent-id','86340HKBaNA','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','plan','menu_open_mode_invalid','menu_not_found','https:','hasOwnProperty','isArray','new-window','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','create','causemessage','isSafeInteger','\x20after\x20response\x20loss.','create\x20external\x20menu','menu_mutation_failed','currentSnapshotHash','readbackerror','\x20--format\x20compress','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','sort','Recovered\x20menu\x20','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','selector','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','username','Run\x20','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Created\x20external\x20menu\x20','menu_create_response_invalid','failed','menu_permission_denied','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','after','link','createdId','length','entries','external-link-create','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','menus','iframe','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','menu_sort_invalid','465KvhYlk','protocol','83600IYEYUI','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','Created\x20menu\x20','External\x20menu\x20creation\x20failed.','body','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','boolean','\x20with\x20','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','486yiaSGf','type','562024dbjiSu','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','recovered','code','visibility'];a152_0x3a12=function(){return _0x52dd03;};return a152_0x3a12();}function a152_0x1517(_0x5814d8,_0x55b290){_0x5814d8=_0x5814d8-0xd5;const _0x3a1222=a152_0x3a12();let _0x15177b=_0x3a1222[_0x5814d8];return _0x15177b;}function getFailureRecord(_0x530f6e){const _0xb9c3e4=a152_0xfd45c3;if(!(_0x530f6e instanceof Error)||!(_0xb9c3e4(0x15b)in _0x530f6e))return undefined;const _0x44dd4f=_0x530f6e[_0xb9c3e4(0x15b)];if(!_0x44dd4f||typeof _0x44dd4f!==_0xb9c3e4(0x15f))return undefined;const _0x3bf210=_0x44dd4f[_0xb9c3e4(0x110)];if(!Array[_0xb9c3e4(0xf6)](_0x3bf210)||!_0x3bf210[0x0]||typeof _0x3bf210[0x0]!==_0xb9c3e4(0x15f))return undefined;return _0x3bf210[0x0];}
1
+ const a152_0x137939=a152_0x3742;(function(_0x58bea4,_0x267ac4){const _0x46e717=a152_0x3742,_0x243f59=_0x58bea4();while(!![]){try{const _0x47c380=parseInt(_0x46e717(0x99))/0x1+-parseInt(_0x46e717(0xf4))/0x2*(parseInt(_0x46e717(0xa6))/0x3)+-parseInt(_0x46e717(0xfc))/0x4+parseInt(_0x46e717(0x88))/0x5*(parseInt(_0x46e717(0xd9))/0x6)+parseInt(_0x46e717(0xf7))/0x7*(parseInt(_0x46e717(0xd4))/0x8)+-parseInt(_0x46e717(0x9d))/0x9*(-parseInt(_0x46e717(0xb0))/0xa)+-parseInt(_0x46e717(0xd8))/0xb;if(_0x47c380===_0x267ac4)break;else _0x243f59['push'](_0x243f59['shift']());}catch(_0x17c691){_0x243f59['push'](_0x243f59['shift']());}}}(a152_0x5a05,0x8d9fe));function a152_0x3742(_0x41319b,_0x43e8b4){_0x41319b=_0x41319b-0x83;const _0x5a05c5=a152_0x5a05();let _0x3742cf=_0x5a05c5[_0x41319b];return _0x3742cf;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a152_0x5a05(){const _0x194794=['menu_create_recovery_required','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','has','menu_sort_invalid','before','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','currentSnapshotHash','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','trim','Menu\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','parentId','after','https:','map','entries','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','rabetbase\x20menu\x20list\x20--appcode\x20','replace','prototype','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','causemessage','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','stringify','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','pre-write-recheck','isSafeInteger','menu_create_response_invalid','2968pmFzVH','username','string','sort','5678244IyVjhT','6TGuSQD','verification','expectedPath','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','hasOwnProperty','parent-id','Created\x20menu\x20','Whether\x20the\x20menu\x20is\x20visible','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','embedded','cookie','failed','<platform-generated>','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','fact','fromEntries','data','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','appCode','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','menu_permission_denied','label','Would\x20create\x20external\x20website\x20link\x20menu\x20','<redacted>','createdId','byId','hash','1977186YKLGXF','\x20could\x20not\x20be\x20verified.','External\x20HTTPS\x20URL','13482SIaauc','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','menu_url_invalid','menu_mutation_failed','menu_not_found','1828004PnLMDh','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','URL','filter','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','create\x20external\x20menu','external-link-create','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','readbackerror','\x20--format\x20compress','Create\x20an\x20external\x20website\x20link\x20menu','Created\x20external\x20menu\x20','url','snapshot','Provide\x20an\x20HTTPS\x20URL.','write','afterPlan','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','cause','POST','1907975yCQhtF','visible','menu_url_credentials_forbidden','selector','flagMissing','menu','lookupCommand','iframe','create-response-validation','succeeded','str','open-mode','boolean','create-menu','plan','get','length','1034692CGORWo','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','path','336321bvAzkM','menus','body','add','password','object','visibility','\x20failed\x20final\x20verification.','Run\x20','3jcpDpv','\x27\x5c\x27\x27','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','code','External\x20menu\x20creation\x20failed.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','menu_verification_failed','menu_parent_not_folder','expectedSnapshotHash','isArray','110WaRPKP','/smartapi/menu/create','type'];a152_0x5a05=function(){return _0x194794;};return a152_0x5a05();}import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a152_0x137939(0x8f),'new-window':'link'};export function validateExternalMenuUrl(_0x2ea2ad){const _0x7d6402=a152_0x137939,_0x18e8e6=_0x2ea2ad[_0x7d6402(0xbd)]();let _0x57bf09;try{_0x57bf09=new URL(_0x18e8e6);}catch{throw menuError(_0x7d6402(0xf9),_0x7d6402(0x100),_0x7d6402(0xc7));}if(_0x57bf09['protocol']!==_0x7d6402(0xc4))throw menuError('menu_url_https_required',_0x7d6402(0xc1),_0x7d6402(0x10b));if(_0x57bf09[_0x7d6402(0xd5)]||_0x57bf09[_0x7d6402(0xa1)])throw menuError(_0x7d6402(0x8a),_0x7d6402(0xab),_0x7d6402(0x85));return _0x18e8e6;}export const menuExternalLinkCreate={'service':a152_0x137939(0x8d),'command':a152_0x137939(0x102),'description':a152_0x137939(0x107),'risk':a152_0x137939(0x83),'structuredErrors':!![],'flags':[{'name':a152_0x137939(0xee),'type':'string','required':!![],'description':'Menu\x20label'},{'name':a152_0x137939(0x93),'type':a152_0x137939(0xd6),'required':!![],'enum':[a152_0x137939(0xe2),'new-window'],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a152_0x137939(0x109),'type':a152_0x137939(0xd6),'required':!![],'description':a152_0x137939(0xf6)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a152_0x137939(0x89),'type':a152_0x137939(0x94),'default':!![],'description':a152_0x137939(0xe0)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4200d2){validateAddInput(_0x4200d2);},async 'dryRun'(_0x119402){const _0x3c04c7=a152_0x137939;validateAddInput(_0x119402);const {plan:_0x1f0ae6}=await buildSafeAddPlan(_0x119402,!![]),_0x2dfb4d=_0x1f0ae6['after'],_0x1d385a=createBody(_0x2dfb4d);return menuDryRunResult(_0x1f0ae6,{'method':_0x3c04c7(0x87),'url':_0x3c04c7(0xb1),'body':_0x1d385a,'description':_0x3c04c7(0xef)+JSON[_0x3c04c7(0xcf)](_0x2dfb4d[_0x3c04c7(0xee)])+'\x20with\x20'+_0x119402[_0x3c04c7(0x92)]('open-mode')+_0x3c04c7(0xb8)});},async 'execute'(_0x2c5f02){const _0x685a48=a152_0x137939;validateAddInput(_0x2c5f02);const _0x6cbb79=await buildSafeAddPlan(_0x2c5f02,![]),{plan:_0x43ee5d,snapshot:_0x4731c4}=_0x6cbb79,_0x1b25fa=_0x43ee5d[_0x685a48(0xc3)],_0x1f4701=buildMenuLookupCommand(_0x2c5f02[_0x685a48(0xeb)]);await recheckAddSnapshot(_0x2c5f02,_0x43ee5d);let _0x5ed522;try{_0x5ed522=await createMenuEntity(_0x2c5f02['appCode'],_0x2c5f02['cookie'],createBody(_0x1b25fa));}catch(_0x343f42){const _0x22af81=mapMenuApiError(_0x343f42,_0x685a48(0x101));if(!isMenuResponseLoss(_0x343f42)||_0x22af81[_0x685a48(0xa9)]===_0x685a48(0xed))throw externalLinkCreateFailure(_0x22af81,_0x43ee5d,{'stage':'create','failed':{},'verification':{'status':_0x685a48(0xe4),'lookupCommand':_0x1f4701}});return recoverAfterResponseLoss(_0x2c5f02,_0x6cbb79,_0x1f4701);}const _0x5d59af=Number(_0x5ed522?.['id']),_0x1495d=typeof _0x5ed522?.[_0x685a48(0x9c)]===_0x685a48(0xd6)?_0x5ed522[_0x685a48(0x9c)]:'';if(!Number[_0x685a48(0xd2)](_0x5d59af)||_0x5d59af<=0x0||!_0x1495d[_0x685a48(0xbd)]()){const _0x1f80f7=menuError(_0x685a48(0xd3),_0x685a48(0xbc),_0x685a48(0xa5)+_0x1f4701+_0x685a48(0xfd));throw externalLinkCreateFailure(_0x1f80f7,_0x43ee5d,{'stage':_0x685a48(0x90),'succeeded':Number[_0x685a48(0xd2)](_0x5d59af)&&_0x5d59af>0x0?[{'id':_0x5d59af,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x5d59af)?_0x5d59af:null,'generatedPathConfirmed':Boolean(_0x1495d[_0x685a48(0xbd)]())},'warnings':[_0x685a48(0xec)],'after':Number[_0x685a48(0xd2)](_0x5d59af)&&_0x5d59af>0x0?{..._0x1b25fa,'id':_0x5d59af,'path':_0x1495d}:_0x1b25fa,'verification':{'status':_0x685a48(0xe4),'lookupCommand':_0x1f4701,...Number[_0x685a48(0xd2)](_0x5d59af)&&_0x5d59af>0x0?{'targetId':_0x5d59af}:{}}});}const _0x28f593=await readAndVerifyCreatedMenu({'appCode':_0x2c5f02[_0x685a48(0xeb)],'cookie':_0x2c5f02[_0x685a48(0xe3)],'plan':_0x43ee5d,'afterPlan':_0x1b25fa,'createdId':_0x5d59af,'expectedPath':_0x1495d,'lookupCommand':_0x1f4701,'recovered':![]});return creationSuccess(_0x43ee5d,_0x28f593[_0x685a48(0x10a)],_0x28f593[_0x685a48(0xe7)],![]);}};function validateAddInput(_0xb9c18a){const _0x4facdd=a152_0x137939;if(!_0xb9c18a['str']('label')[_0x4facdd(0xbd)]())throw CliErrors[_0x4facdd(0x8c)](_0x4facdd(0xee));resolveExternalMenuType(_0xb9c18a),validateExternalMenuUrl(_0xb9c18a[_0x4facdd(0x92)](_0x4facdd(0x109))),parseParentId(_0xb9c18a,_0x4facdd(0xde)),validateSort(_0xb9c18a);}function resolveExternalMenuType(_0x18b75b){const _0x4b2345=a152_0x137939,_0x3e5463=_0x18b75b[_0x4b2345(0x92)](_0x4b2345(0x93))['trim']();if(!_0x3e5463)throw CliErrors['flagMissing'](_0x4b2345(0x93));const _0x4cf2eb=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x3e5463];if(!_0x4cf2eb)throw menuError('menu_open_mode_invalid',_0x4b2345(0xbb),_0x4b2345(0x9a));return _0x4cf2eb;}async function buildAddPlan(_0x3a5d47,_0x480bbe){const _0x52adb7=a152_0x137939,_0xe0f923=await fetchMutationSnapshot(_0x3a5d47,'create\x20external\x20menu'),_0x2c3840=parseParentId(_0x3a5d47,_0x52adb7(0xde))??null;if(_0x2c3840!=null)requireFolder(_0xe0f923,_0x2c3840);const _0x2fd217=validateSort(_0x3a5d47),_0x30699d=_0x2fd217??nextSiblingSort(_0xe0f923,_0x2c3840,_0x52adb7(0x8d)),_0x92d944=_0x3a5d47[_0x52adb7(0x92)](_0x52adb7(0xee))['trim'](),_0x3903f6=resolveExternalMenuType(_0x3a5d47),_0x21702f=validateExternalMenuUrl(_0x3a5d47[_0x52adb7(0x92)]('url')),_0x5ba0a9=Object[_0x52adb7(0xca)][_0x52adb7(0xdd)]['call'](_0x3a5d47['rawFlags'],_0x52adb7(0x89))?_0x3a5d47['bool'](_0x52adb7(0x89)):!![],_0x253741={'id':null,'parentId':_0x2c3840,'label':_0x92d944,'path':_0x52adb7(0xe5),'url':_0x21702f,'type':_0x3903f6,'visible':_0x5ba0a9,'sort':_0x30699d},_0x433724=buildMenuLookupCommand(_0x3a5d47['appCode']),_0x39400c=mutationResult({'operation':_0x52adb7(0xa0),'selector':{'parentId':_0x2c3840,'type':_0x3903f6,'label':_0x92d944,'url':_0x21702f},'before':null,'after':_0x253741,'dryRun':_0x480bbe,'backend':[{'method':_0x52adb7(0x87),'path':_0x52adb7(0xb1)}],'plannedActions':[{'stage':_0x52adb7(0x95),'method':'POST','path':_0x52adb7(0xb1),'body':createBody(_0x253741)}],'snapshotHash':_0xe0f923[_0x52adb7(0xf3)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x433724}});return{'plan':_0x39400c,'snapshot':_0xe0f923};}async function buildSafeAddPlan(_0x2309c0,_0x301065){try{return await buildAddPlan(_0x2309c0,_0x301065);}catch(_0x36cc9e){throw safeMenuAddError(_0x36cc9e);}}async function recheckAddSnapshot(_0x403209,_0x598e68){const _0x1e5265=a152_0x137939;try{await recheckMutationSnapshot(_0x403209,_0x598e68,_0x1e5265(0x101));}catch(_0x43cfcb){const _0x5ef78e=getFailureRecord(_0x43cfcb);throw externalLinkCreateFailure(_0x43cfcb,_0x598e68,{'stage':_0x1e5265(0xd1),'failed':{..._0x5ef78e?.[_0x1e5265(0xae)]?{'expectedSnapshotHash':_0x5ef78e[_0x1e5265(0xae)]}:{},..._0x5ef78e?.['currentSnapshotHash']?{'currentSnapshotHash':_0x5ef78e[_0x1e5265(0xb9)]}:{}}});}}function createBody(_0x4a2f6e){const _0x1c3940=a152_0x137939;return{'parentId':toApiParentId(_0x4a2f6e[_0x1c3940(0xc2)]),'label':String(_0x4a2f6e[_0x1c3940(0xee)]),'type':String(_0x4a2f6e[_0x1c3940(0xb2)]),'url':String(_0x4a2f6e[_0x1c3940(0x109)]),'visible':Boolean(_0x4a2f6e['visible']),'sort':Number(_0x4a2f6e[_0x1c3940(0xd7)]),'extend':{}};}function buildMenuLookupCommand(_0x45f89e){const _0xb86da3=a152_0x137939,_0x5499b9='\x27'+_0x45f89e[_0xb86da3(0xc9)](/'/g,_0xb86da3(0xa7))+'\x27';return _0xb86da3(0xc8)+_0x5499b9+_0xb86da3(0x106);}async function recoverAfterResponseLoss(_0x107c52,_0x4e2f18,_0x4014ed){const _0x36a1bf=a152_0x137939,{plan:_0x4d8dd9,snapshot:_0x29184b}=_0x4e2f18,_0x2062fa=_0x4d8dd9[_0x36a1bf(0xc3)];let _0x2a93ae;try{_0x2a93ae=await fetchMenuSnapshot(_0x107c52['appCode'],_0x107c52[_0x36a1bf(0xe3)]);}catch(_0x55dc96){throw recoveryRequiredFailure(_0x4d8dd9,_0x4014ed,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x1cbe6c=_0x2a93ae[_0x36a1bf(0x9e)]['filter'](_0x58b398=>_0x58b398[_0x36a1bf(0xc2)]===_0x2062fa[_0x36a1bf(0xc2)]&&_0x58b398[_0x36a1bf(0xb2)]===_0x2062fa[_0x36a1bf(0xb2)]&&_0x58b398[_0x36a1bf(0xee)]===_0x2062fa[_0x36a1bf(0xee)]&&_0x58b398[_0x36a1bf(0x109)]===_0x2062fa[_0x36a1bf(0x109)]),_0x36f8f3=_0x1cbe6c[_0x36a1bf(0xff)](_0x12359f=>!_0x29184b['byId'][_0x36a1bf(0xb5)](_0x12359f['id'])),_0x5983c3=_0x1cbe6c[_0x36a1bf(0xff)](_0x26f3a3=>_0x29184b[_0x36a1bf(0xf2)][_0x36a1bf(0xb5)](_0x26f3a3['id']));if(_0x1cbe6c['length']!==0x1||_0x36f8f3[_0x36a1bf(0x98)]!==0x1)throw recoveryRequiredFailure(_0x4d8dd9,_0x4014ed,{'matchCount':_0x1cbe6c['length'],'newMatchCount':_0x36f8f3[_0x36a1bf(0x98)],'preexistingMatchCount':_0x5983c3[_0x36a1bf(0x98)]});const _0xc48102=_0x36f8f3[0x0];try{verifyCreatedFact(_0xc48102,_0xc48102['id'],_0x2062fa,null);}catch(_0x5c2bbc){const _0xb40646=_0x5c2bbc instanceof Error&&_0x36a1bf(0xa9)in _0x5c2bbc?_0x5c2bbc:menuError('menu_verification_failed','Recovered\x20menu\x20'+_0xc48102['id']+_0x36a1bf(0xf5),_0x36a1bf(0xa5)+_0x4014ed+_0x36a1bf(0xf8));throw externalLinkCreateFailure(_0xb40646,_0x4d8dd9,{'stage':_0x36a1bf(0xda),'succeeded':[{'id':_0xc48102['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0xc48102['id'],'finalFactsConfirmed':![]},'after':_0xc48102,'warnings':['Menu\x20'+_0xc48102['id']+_0x36a1bf(0xcb)],'verification':{'status':_0x36a1bf(0xe4),'targetId':_0xc48102['id'],'recovered':!![],'lookupCommand':_0x4014ed}});}return creationSuccess(_0x4d8dd9,_0x2a93ae,_0xc48102,!![]);}function recoveryRequiredFailure(_0x5427ce,_0x6eabb0,_0x2d3078){const _0x5222f4=a152_0x137939,_0xc54488=menuError(_0x5222f4(0xb3),_0x5222f4(0x9b),_0x5222f4(0xa5)+_0x6eabb0+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0xc54488,_0x5427ce,{'stage':'create-recovery','failed':_0x2d3078,'warnings':[_0x5222f4(0xb4)],'verification':{'status':_0x5222f4(0xe4),..._0x2d3078,'lookupCommand':_0x6eabb0}});}async function readAndVerifyCreatedMenu(_0x587466){const _0x49df89=a152_0x137939;let _0x1c932b;try{_0x1c932b=await fetchMenuSnapshot(_0x587466['appCode'],_0x587466[_0x49df89(0xe3)]);}catch(_0x383807){const _0xfe753a=menuError('menu_verification_failed','Menu\x20'+_0x587466[_0x49df89(0xf1)]+_0x49df89(0xea),_0x49df89(0xa5)+_0x587466['lookupCommand']+_0x49df89(0xe1));throw externalLinkCreateFailure(_0xfe753a,_0x587466[_0x49df89(0x96)],{'stage':_0x49df89(0xda),'succeeded':[{'id':_0x587466['createdId'],'created':!![]}],'failed':{'id':_0x587466[_0x49df89(0xf1)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x587466[_0x49df89(0x84)],'id':_0x587466['createdId'],'path':_0x587466['expectedPath']},'warnings':[_0x49df89(0xbe)+_0x587466[_0x49df89(0xf1)]+_0x49df89(0xe6)],'verification':{'status':_0x49df89(0xe4),'targetId':_0x587466['createdId'],'lookupCommand':_0x587466[_0x49df89(0x8e)]}});}const _0x26a3ac=_0x1c932b[_0x49df89(0xf2)][_0x49df89(0x97)](_0x587466['createdId']);try{if(!_0x26a3ac)throw menuError(_0x49df89(0xac),_0x49df89(0xdf)+_0x587466[_0x49df89(0xf1)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x49df89(0xa5)+_0x587466[_0x49df89(0x8e)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x26a3ac,_0x587466[_0x49df89(0xf1)],_0x587466[_0x49df89(0x84)],_0x587466[_0x49df89(0xdb)]);}catch(_0x4ab6ff){const _0x522c69=_0x4ab6ff instanceof Error&&_0x49df89(0xa9)in _0x4ab6ff?_0x4ab6ff:menuError(_0x49df89(0xac),'Created\x20menu\x20'+_0x587466['createdId']+_0x49df89(0xa4),_0x49df89(0xa5)+_0x587466[_0x49df89(0x8e)]+_0x49df89(0xe1));throw externalLinkCreateFailure(_0x522c69,_0x587466[_0x49df89(0x96)],{'stage':_0x49df89(0xda),'succeeded':[{'id':_0x587466[_0x49df89(0xf1)],'created':!![]}],'failed':{'id':_0x587466[_0x49df89(0xf1)],'finalFactsConfirmed':![]},'after':_0x26a3ac??{..._0x587466[_0x49df89(0x84)],'id':_0x587466[_0x49df89(0xf1)],'path':_0x587466[_0x49df89(0xdb)]},'warnings':[_0x49df89(0xbe)+_0x587466[_0x49df89(0xf1)]+_0x49df89(0x103)],'verification':{'status':_0x49df89(0xe4),'targetId':_0x587466[_0x49df89(0xf1)],'recovered':_0x587466['recovered'],'lookupCommand':_0x587466[_0x49df89(0x8e)]}});}return{'snapshot':_0x1c932b,'fact':_0x26a3ac};}function verifyCreatedFact(_0x1bfc79,_0x6f1de9,_0x227ba3,_0x4e7361){const _0x42e8cd=a152_0x137939;if(!Number['isSafeInteger'](_0x1bfc79['id'])||_0x1bfc79['id']<=0x0||_0x1bfc79['id']!==_0x6f1de9)throw menuError('menu_verification_failed',_0x42e8cd(0xdc),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x4e3b9d=[['parent',_0x1bfc79['parentId'],_0x227ba3[_0x42e8cd(0xc2)]],[_0x42e8cd(0xb2),_0x1bfc79[_0x42e8cd(0xb2)],_0x227ba3[_0x42e8cd(0xb2)]],[_0x42e8cd(0xee),_0x1bfc79['label'],_0x227ba3[_0x42e8cd(0xee)]],[_0x42e8cd(0xfe),_0x1bfc79['url'],_0x227ba3[_0x42e8cd(0x109)]],[_0x42e8cd(0xa3),_0x1bfc79['visible'],_0x227ba3[_0x42e8cd(0x89)]],[_0x42e8cd(0xd7),_0x1bfc79['sort'],_0x227ba3[_0x42e8cd(0xd7)]]];for(const [_0x2032bd,_0x5e7229,_0x4eaff7]of _0x4e3b9d){if(_0x5e7229!==_0x4eaff7)throw menuError('menu_verification_failed',_0x42e8cd(0xdf)+_0x1bfc79['id']+'\x20has\x20an\x20unexpected\x20'+_0x2032bd+'.',_0x42e8cd(0xc0));}if(!_0x1bfc79['path'][_0x42e8cd(0xbd)]()||_0x4e7361!==null&&_0x1bfc79[_0x42e8cd(0x9c)]!==_0x4e7361)throw menuError(_0x42e8cd(0xac),_0x42e8cd(0xdf)+_0x1bfc79['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function creationSuccess(_0x313156,_0x228ed8,_0x288d78,_0x49aa05){const _0x37bccd=a152_0x137939,_0x379156=mutationResult({..._0x313156,'after':_0x288d78,'dryRun':![],'succeeded':[{'id':_0x288d78['id'],'created':!![],'recovered':_0x49aa05}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x228ed8[_0x37bccd(0xf3)],'targetId':_0x288d78['id'],'recovered':_0x49aa05,'path':_0x288d78[_0x37bccd(0x9c)]}});return{'ok':!![],'message':_0x49aa05?'Recovered\x20created\x20external\x20menu\x20'+_0x288d78['id']+'\x20after\x20response\x20loss.':_0x37bccd(0x108)+_0x288d78['id']+'.','data':{..._0x379156,'recovered':_0x49aa05}};}function externalLinkCreateFailure(_0x586ce9,_0x37855e,_0x5cecd2){const _0x2f7560=a152_0x137939;return menuFailure(safeMenuAddError(_0x586ce9),redactFailurePlan(_0x37855e),{..._0x5cecd2,'succeeded':_0x5cecd2[_0x2f7560(0x91)]?.['map'](redactFailureRecord),'failed':_0x5cecd2[_0x2f7560(0xe4)]?redactFailureRecord(_0x5cecd2[_0x2f7560(0xe4)]):undefined,'verification':_0x5cecd2[_0x2f7560(0xda)]?redactFailureRecord(_0x5cecd2[_0x2f7560(0xda)]):undefined,'after':_0x5cecd2[_0x2f7560(0xc3)]===undefined?undefined:redactFailureValue(_0x5cecd2[_0x2f7560(0xc3)])});}function redactFailurePlan(_0x39f491){const _0x3ba6f0=a152_0x137939;return{..._0x39f491,'selector':redactFailureRecord(_0x39f491[_0x3ba6f0(0x8b)]),'before':redactFailureValue(_0x39f491[_0x3ba6f0(0xb7)]),'after':redactFailureValue(_0x39f491['after']),'plannedActions':_0x39f491['plannedActions']?.[_0x3ba6f0(0xc5)](_0x5003b5=>({..._0x5003b5,'body':redactFailureRecord(_0x5003b5[_0x3ba6f0(0x9f)])})),'succeeded':_0x39f491['succeeded']['map'](redactFailureRecord),'failed':_0x39f491[_0x3ba6f0(0xe4)][_0x3ba6f0(0xc5)](redactFailureRecord),'verification':_0x39f491[_0x3ba6f0(0xda)]?redactFailureRecord(_0x39f491[_0x3ba6f0(0xda)]):undefined};}function redactFailureRecord(_0x364811){return redactFailureValue(_0x364811);}function redactFailureValue(_0x52f9e3,_0x4846c8=''){const _0x38150b=a152_0x137939,_0x40a60a=_0x4846c8['toLowerCase']()['replace'](/[^a-z0-9]/g,'');if([_0x38150b(0x86),_0x38150b(0xcc),_0x38150b(0x105),'rawerror']['includes'](_0x40a60a))return _0x38150b(0xf0);if(Array[_0x38150b(0xaf)](_0x52f9e3))return _0x52f9e3[_0x38150b(0xc5)](_0x491680=>redactFailureValue(_0x491680));if(_0x52f9e3&&typeof _0x52f9e3==='object')return Object[_0x38150b(0xe8)](Object[_0x38150b(0xc6)](_0x52f9e3)[_0x38150b(0xc5)](([_0x1464b4,_0x5c6e2d])=>[_0x1464b4,redactFailureValue(_0x5c6e2d,_0x1464b4)]));return _0x52f9e3;}function safeMenuAddError(_0x1dc30f){const _0x1374e8=a152_0x137939,_0x3faab3=_0x1dc30f instanceof CliError?_0x1dc30f['code']:'menu_mutation_failed';switch(_0x3faab3){case'menu_state_drift':return menuError(_0x3faab3,_0x1374e8(0xcd),_0x1374e8(0xce));case _0x1374e8(0xed):return menuError(_0x3faab3,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x1374e8(0xd3):return menuError(_0x3faab3,_0x1374e8(0xd0),_0x1374e8(0xbf));case _0x1374e8(0xac):return menuError(_0x3faab3,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.',_0x1374e8(0xbf));case _0x1374e8(0xb3):return menuError(_0x3faab3,_0x1374e8(0xba),_0x1374e8(0x104));case _0x1374e8(0xfa):case _0x1374e8(0xfb):case _0x1374e8(0xad):case _0x1374e8(0xb6):case'menu_sort_overflow':return menuError(_0x3faab3,_0x1374e8(0xaa),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError('menu_mutation_failed',_0x1374e8(0xaa),_0x1374e8(0xa8));}}function getFailureRecord(_0x833def){const _0x564eb3=a152_0x137939;if(!(_0x833def instanceof Error)||!(_0x564eb3(0xe9)in _0x833def))return undefined;const _0x54d436=_0x833def[_0x564eb3(0xe9)];if(!_0x54d436||typeof _0x54d436!=='object')return undefined;const _0x5f0bcc=_0x54d436[_0x564eb3(0xe4)];if(!Array[_0x564eb3(0xaf)](_0x5f0bcc)||!_0x5f0bcc[0x0]||typeof _0x5f0bcc[0x0]!==_0x564eb3(0xa2))return undefined;return _0x5f0bcc[0x0];}
@@ -1 +1 @@
1
- const a153_0xdaa9f0=a153_0x2908;(function(_0xa18a86,_0x47c255){const _0x4466a1=a153_0x2908,_0x3945e0=_0xa18a86();while(!![]){try{const _0x283006=-parseInt(_0x4466a1(0x193))/0x1+-parseInt(_0x4466a1(0x1bb))/0x2*(-parseInt(_0x4466a1(0x1b0))/0x3)+-parseInt(_0x4466a1(0x19a))/0x4+parseInt(_0x4466a1(0x196))/0x5+parseInt(_0x4466a1(0x17a))/0x6+parseInt(_0x4466a1(0x185))/0x7+parseInt(_0x4466a1(0x19d))/0x8*(-parseInt(_0x4466a1(0x194))/0x9);if(_0x283006===_0x47c255)break;else _0x3945e0['push'](_0x3945e0['shift']());}catch(_0x343e3a){_0x3945e0['push'](_0x3945e0['shift']());}}}(a153_0x2d7b,0x31a6f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a153_0xdaa9f0(0x1b4),'path':a153_0xdaa9f0(0x182)}];export const menuExternalLinkUpdate={'service':'menu','command':a153_0xdaa9f0(0x1bd),'description':a153_0xdaa9f0(0x1be),'risk':a153_0xdaa9f0(0x1c0),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a153_0xdaa9f0(0x1b2),'type':a153_0xdaa9f0(0x181),'required':!![],'description':a153_0xdaa9f0(0x18c)},{'name':a153_0xdaa9f0(0x173),'type':'string','required':!![],'description':a153_0xdaa9f0(0x197)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xb8f3d){validateInput(_0xb8f3d);},async 'dryRun'(_0x43d8ce){const _0x4aa02f=a153_0xdaa9f0;validateInput(_0x43d8ce);const _0x38613f=await buildPlan(_0x43d8ce,!![]);return menuDryRunResult(_0x38613f[_0x4aa02f(0x174)],{'method':_0x4aa02f(0x1b4),'url':_0x4aa02f(0x182),'body':_0x38613f['body'],'description':_0x4aa02f(0x178)+_0x38613f[_0x4aa02f(0x17e)]['id']+'.'});},async 'execute'(_0x2fc538){const _0x7719c5=a153_0xdaa9f0;validateInput(_0x2fc538);const _0x568c2c=await buildPlan(_0x2fc538,![]),{plan:_0x238be7,body:_0x2f0f4b,before:_0x888c61,noChanges:_0x26ad6b}=_0x568c2c,_0x5541f7=_0x2f0f4b['id'];if(_0x26ad6b)return updateSuccess(_0x238be7,_0x568c2c[_0x7719c5(0x17b)],_0x888c61,!![],![]);await recheckMutationSnapshot(_0x2fc538,_0x238be7,'update\x20external\x20menu\x20URL',_0x5541f7);try{await updateMenuEntity(_0x2fc538['appCode'],_0x2fc538[_0x7719c5(0x1a5)],{'id':_0x2f0f4b['id'],'url':_0x2f0f4b['url']});}catch(_0x460ba5){const _0x5370a2=mapMenuApiError(_0x460ba5,_0x7719c5(0x186),_0x5541f7);if(isMenuResponseLoss(_0x460ba5)&&_0x5370a2[_0x7719c5(0x18a)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x2fc538,_0x568c2c);throw menuFailure(_0x5370a2,_0x238be7,{'stage':_0x7719c5(0x184),'failed':{'id':_0x5541f7},'warnings':[_0x7719c5(0x191)],'verification':{'status':_0x7719c5(0x1af),'targetId':_0x5541f7,'lookupCommand':buildLookupCommand(_0x2fc538[_0x7719c5(0x171)])}});}let _0xc68490,_0x4798f1;try{_0xc68490=await fetchMenuSnapshot(_0x2fc538[_0x7719c5(0x171)],_0x2fc538[_0x7719c5(0x1a5)]),_0x4798f1=requireMenu(_0xc68490,_0x5541f7),verifyUpdatedFact(_0x888c61,_0x4798f1,_0x2f0f4b[_0x7719c5(0x1b2)]);}catch(_0x32e35c){const _0x42a9ff=describeMenuErrorCause(_0x32e35c,_0x7719c5(0x1aa),_0x5541f7),_0x5090fb=asVerificationError(_0x32e35c,_0x7719c5(0x1bc)+_0x5541f7+_0x7719c5(0x192));throw menuFailure(_0x5090fb,_0x238be7,{'stage':_0x7719c5(0x188),'succeeded':[{'id':_0x5541f7,'updateRequested':!![]}],'failed':{'id':_0x5541f7,'requestedStateConfirmed':![],..._0x42a9ff},'warnings':[_0x7719c5(0x19e)],'verification':{'status':_0x7719c5(0x1af),'targetId':_0x5541f7,'lookupCommand':buildLookupCommand(_0x2fc538['appCode'])}});}return updateSuccess(_0x238be7,_0xc68490,_0x4798f1,![],![]);}};function validateInput(_0x55e655){const _0x70296d=a153_0xdaa9f0;validateExactId(_0x55e655),requiredUrl(_0x55e655,'url'),requiredExpectedUrl(_0x55e655),parseParentId(_0x55e655,_0x70296d(0x1b7),{'required':!![]});}function a153_0x2d7b(){const _0x3c2cf2=['menu_state_drift','link','hash','998KmJCuZ','Update\x20request\x20for\x20menu\x20','external-link-update','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','update-recovery','write','rabetbase\x20menu\x20list\x20--appcode\x20','\x20URL\x20update\x20did\x20not\x20take\x20effect.','appCode','update-external-link-url','expect-url','plan','flagMissing','readbackFailed','\x20has\x20an\x20empty\x20platform\x20path.','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','2248086gvfYgQ','snapshot','menu_external_link_path_missing','str','body','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','parentId','string','/smartapi/menu/update','type','update','547911PYEzPB','update\x20external\x20menu\x20URL','get','verification','menu_update_recovery_required','code','trim','New\x20external\x20HTTPS\x20URL','visible','unknown','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','197237BmLEDM','103410lVztLV','\x20has\x20','1600295BLmokm','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','menu_external_link_not_leaf','1418808ZKFSfs','\x20already\x20matches\x20the\x20requested\x20URL.','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','144kXMtTv','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','path','\x20parent\x20changed:\x20expected\x20','\x20--format\x20compress','Run\x20','\x22,\x20not\x20iframe\x20or\x20link.',',\x20current\x20','cookie','Menu\x20','menu_external_link_type_required','requestedUrlObserved','after','verify\x20external\x20menu\x20URL\x20update','Response\x20was\x20lost\x20and\x20menu\x20','\x20changed\x20during\x20the\x20URL-only\x20update.','sort','label','failed','1137RQjwMn','childrenCount','url','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','POST','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','menu\x20list','expect-parent-id'];a153_0x2d7b=function(){return _0x3c2cf2;};return a153_0x2d7b();}function requiredUrl(_0x33c284,_0x82b052){const _0x1d1c8c=a153_0xdaa9f0;if(!hasFlag(_0x33c284,_0x82b052)||!_0x33c284[_0x1d1c8c(0x17d)](_0x82b052)[_0x1d1c8c(0x18b)]())throw CliErrors['flagMissing'](_0x82b052);return validateExternalMenuUrl(_0x33c284[_0x1d1c8c(0x17d)](_0x82b052));}function requiredExpectedUrl(_0x5b8bb2){const _0x53ccb8=a153_0xdaa9f0;if(!hasFlag(_0x5b8bb2,_0x53ccb8(0x173))||!_0x5b8bb2['str']('expect-url')[_0x53ccb8(0x18b)]())throw CliErrors[_0x53ccb8(0x175)](_0x53ccb8(0x173));return _0x5b8bb2[_0x53ccb8(0x17d)](_0x53ccb8(0x173))['trim']();}async function buildPlan(_0x485480,_0x55422b){const _0x11976b=a153_0xdaa9f0,_0x2c539d=validateExactId(_0x485480),_0xa3c210=requiredUrl(_0x485480,_0x11976b(0x1b2)),_0x112512=requiredExpectedUrl(_0x485480),_0x8f5c8d=parseParentId(_0x485480,_0x11976b(0x1b7),{'required':!![]}),_0x513a50=await fetchMutationSnapshot(_0x485480,_0x11976b(0x186),_0x2c539d),_0x754af4=requireMenu(_0x513a50,_0x2c539d);assertExternalLinkLeaf(_0x754af4);if(_0x754af4[_0x11976b(0x180)]!==_0x8f5c8d)throw menuError('menu_state_drift',_0x11976b(0x1a6)+_0x2c539d+_0x11976b(0x1a0)+formatParent(_0x8f5c8d)+_0x11976b(0x1a4)+formatParent(_0x754af4['parentId'])+'.',_0x11976b(0x198));const _0x483321=_0x754af4[_0x11976b(0x1b2)]===_0xa3c210;if(!_0x483321&&_0x754af4['url']!==_0x112512)throw menuError(_0x11976b(0x1b8),_0x11976b(0x1a6)+_0x2c539d+_0x11976b(0x17f),_0x11976b(0x190));const _0x53661b={'id':_0x2c539d,'appCode':_0x485480['appCode'],'url':_0xa3c210},_0x1c99a5={..._0x754af4,'url':_0xa3c210};return{'body':_0x53661b,'before':_0x754af4,'noChanges':_0x483321,'snapshot':_0x513a50,'plan':mutationResult({'operation':_0x11976b(0x1bd),'selector':{'id':_0x2c539d},'before':_0x754af4,'after':_0x1c99a5,'dryRun':_0x55422b,'backend':[...BACKEND],'plannedActions':_0x483321?[]:[{'stage':_0x11976b(0x172),'method':_0x11976b(0x1b4),'path':'/smartapi/menu/update','body':_0x53661b}],'snapshotHash':_0x513a50[_0x11976b(0x1ba)],'warnings':_0x483321?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function a153_0x2908(_0x2799d0,_0x175ab2){_0x2799d0=_0x2799d0-0x16f;const _0x2d7bb2=a153_0x2d7b();let _0x29082e=_0x2d7bb2[_0x2799d0];return _0x29082e;}function assertExternalLinkLeaf(_0x96ae72){const _0x317d05=a153_0xdaa9f0;if(_0x96ae72['type']!=='iframe'&&_0x96ae72[_0x317d05(0x183)]!==_0x317d05(0x1b9))throw menuError(_0x317d05(0x1a7),_0x317d05(0x1a6)+_0x96ae72['id']+'\x20is\x20type\x20\x22'+(_0x96ae72[_0x317d05(0x183)]||_0x317d05(0x18e))+_0x317d05(0x1a3),'Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x96ae72['childrenCount']!==0x0)throw menuError(_0x317d05(0x199),_0x317d05(0x1a6)+_0x96ae72['id']+_0x317d05(0x195)+_0x96ae72[_0x317d05(0x1b1)]+'\x20direct\x20child\x20menu(s).',_0x317d05(0x19c));if(!_0x96ae72['path']['trim']())throw menuError(_0x317d05(0x17c),'Menu\x20'+_0x96ae72['id']+_0x317d05(0x177),_0x317d05(0x179));}function verifyUpdatedFact(_0x3f6e78,_0x41edd0,_0x1a153a){const _0x9741b6=a153_0xdaa9f0;assertExternalLinkLeaf(_0x41edd0);const _0x40e97e=[['id',_0x41edd0['id'],_0x3f6e78['id']],[_0x9741b6(0x1ae),_0x41edd0[_0x9741b6(0x1ae)],_0x3f6e78[_0x9741b6(0x1ae)]],[_0x9741b6(0x183),_0x41edd0[_0x9741b6(0x183)],_0x3f6e78[_0x9741b6(0x183)]],['path',_0x41edd0['path'],_0x3f6e78[_0x9741b6(0x19f)]],[_0x9741b6(0x180),_0x41edd0[_0x9741b6(0x180)],_0x3f6e78[_0x9741b6(0x180)]],[_0x9741b6(0x1ad),_0x41edd0[_0x9741b6(0x1ad)],_0x3f6e78[_0x9741b6(0x1ad)]],[_0x9741b6(0x18d),_0x41edd0['visible'],_0x3f6e78[_0x9741b6(0x18d)]]];for(const [_0x2a51b4,_0x105d58,_0x424f34]of _0x40e97e){assertVerified(_0x105d58===_0x424f34,_0x9741b6(0x1a6)+_0x3f6e78['id']+'\x20'+_0x2a51b4+_0x9741b6(0x1ac));}assertVerified(_0x41edd0['url']===_0x1a153a,_0x9741b6(0x1a6)+_0x3f6e78['id']+_0x9741b6(0x170));}function updateSuccess(_0x2158ac,_0x29f32b,_0x4b80a4,_0x202425,_0x3d35fb){const _0x215b0d=a153_0xdaa9f0,_0x452c25=_0x4b80a4['id'],_0x5eba93=mutationResult({..._0x2158ac,'after':_0x4b80a4,'dryRun':![],'succeeded':[{'id':_0x452c25,'updated':!_0x202425,'skipped':_0x202425,'recovered':_0x3d35fb}],'verification':{'checkedBy':_0x215b0d(0x1b6),'snapshotHash':_0x29f32b[_0x215b0d(0x1ba)],'targetId':_0x452c25,'matchesRequestedState':!![],'recovered':_0x3d35fb}});return{'ok':!![],'message':_0x3d35fb?_0x215b0d(0x1b3)+_0x452c25+'.':_0x202425?_0x215b0d(0x1a6)+_0x452c25+_0x215b0d(0x19b):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x452c25+'.','data':{..._0x5eba93,'recovered':_0x3d35fb}};}async function recoverAfterResponseLoss(_0x1f24cc,_0xa28582){const _0x5f3411=a153_0xdaa9f0,{plan:_0x158256,before:_0x584d64,body:_0x3b5c73}=_0xa28582;let _0x179346;try{_0x179346=await fetchMenuSnapshot(_0x1f24cc[_0x5f3411(0x171)],_0x1f24cc[_0x5f3411(0x1a5)]);}catch{throw recoveryRequired(_0x158256,_0x1f24cc[_0x5f3411(0x171)],{'id':_0x3b5c73['id'],'readbackFailed':!![]});}const _0x8d775d=_0x179346['byId'][_0x5f3411(0x187)](_0x3b5c73['id']);if(!_0x8d775d||_0x8d775d['url']!==_0x3b5c73['url'])throw recoveryRequired(_0x158256,_0x1f24cc['appCode'],{'id':_0x3b5c73['id'],'requestedUrlObserved':![],'after':_0x8d775d??null});try{verifyUpdatedFact(_0x584d64,_0x8d775d,_0x3b5c73[_0x5f3411(0x1b2)]);}catch(_0x43cb2f){const _0x5a4696=asVerificationError(_0x43cb2f,_0x5f3411(0x1ab)+_0x3b5c73['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x5a4696,_0x158256,{'stage':_0x5f3411(0x1bf),'succeeded':[{'id':_0x3b5c73['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x3b5c73['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x8d775d,'warnings':[_0x5f3411(0x1b5)],'verification':{'status':_0x5f3411(0x1af),'targetId':_0x3b5c73['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x1f24cc[_0x5f3411(0x171)])}});}return updateSuccess(_0x158256,_0x179346,_0x8d775d,![],!![]);}function recoveryRequired(_0x406890,_0x1c893e,_0x2bae33){const _0x52c1c9=a153_0xdaa9f0,_0x1f18c2=menuError(_0x52c1c9(0x189),_0x52c1c9(0x18f),_0x52c1c9(0x1a2)+buildLookupCommand(_0x1c893e)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x1f18c2,_0x406890,{'stage':'update-recovery','failed':{'id':_0x2bae33['id'],..._0x2bae33[_0x52c1c9(0x1a8)]===undefined?{}:{'requestedUrlObserved':_0x2bae33[_0x52c1c9(0x1a8)]},..._0x2bae33[_0x52c1c9(0x176)]?{'readbackFailed':!![]}:{}},'after':_0x2bae33[_0x52c1c9(0x1a9)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x52c1c9(0x1af),'targetId':_0x2bae33['id'],..._0x2bae33[_0x52c1c9(0x1a8)]===undefined?{}:{'requestedUrlObserved':_0x2bae33[_0x52c1c9(0x1a8)]},..._0x2bae33[_0x52c1c9(0x176)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x1c893e)}});}function buildLookupCommand(_0x3e0a87){const _0x40a7d9=a153_0xdaa9f0,_0x60d8d9='\x27'+_0x3e0a87['replace'](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x40a7d9(0x16f)+_0x60d8d9+_0x40a7d9(0x1a1);}
1
+ const a153_0x360b96=a153_0x2c1d;(function(_0x2b9491,_0x56e92c){const _0x40873b=a153_0x2c1d,_0x279bd6=_0x2b9491();while(!![]){try{const _0xbc2830=-parseInt(_0x40873b(0x124))/0x1+parseInt(_0x40873b(0x157))/0x2+parseInt(_0x40873b(0x133))/0x3+-parseInt(_0x40873b(0x152))/0x4+-parseInt(_0x40873b(0x13d))/0x5*(parseInt(_0x40873b(0x15d))/0x6)+-parseInt(_0x40873b(0x135))/0x7+parseInt(_0x40873b(0x142))/0x8;if(_0xbc2830===_0x56e92c)break;else _0x279bd6['push'](_0x279bd6['shift']());}catch(_0x38bfd6){_0x279bd6['push'](_0x279bd6['shift']());}}}(a153_0xd279,0xa4a36));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a153_0x360b96(0x140),'path':a153_0x360b96(0x13e)}];function a153_0x2c1d(_0x19fe98,_0x209563){_0x19fe98=_0x19fe98-0x11f;const _0xd279ea=a153_0xd279();let _0x2c1d7c=_0xd279ea[_0x19fe98];return _0x2c1d7c;}export const menuExternalLinkUpdate={'service':'menu','command':a153_0x360b96(0x162),'description':a153_0x360b96(0x134),'risk':a153_0x360b96(0x127),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a153_0x360b96(0x11f),'type':a153_0x360b96(0x12e),'required':!![],'description':a153_0x360b96(0x169)},{'name':a153_0x360b96(0x15a),'type':a153_0x360b96(0x12e),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x31f86f){validateInput(_0x31f86f);},async 'dryRun'(_0x1b4e26){const _0x19a683=a153_0x360b96;validateInput(_0x1b4e26);const _0x54c0b3=await buildPlan(_0x1b4e26,!![]);return menuDryRunResult(_0x54c0b3[_0x19a683(0x14e)],{'method':'POST','url':_0x19a683(0x13e),'body':_0x54c0b3['body'],'description':_0x19a683(0x136)+_0x54c0b3[_0x19a683(0x155)]['id']+'.'});},async 'execute'(_0x192991){const _0x2a54c5=a153_0x360b96;validateInput(_0x192991);const _0x5ed671=await buildPlan(_0x192991,![]),{plan:_0x3659b5,body:_0x59ff2d,before:_0x2b4d00,noChanges:_0x4574d9}=_0x5ed671,_0x5ec24a=_0x59ff2d['id'];if(_0x4574d9)return updateSuccess(_0x3659b5,_0x5ed671[_0x2a54c5(0x13f)],_0x2b4d00,!![],![]);await recheckMutationSnapshot(_0x192991,_0x3659b5,_0x2a54c5(0x154),_0x5ec24a);try{await updateMenuEntity(_0x192991[_0x2a54c5(0x13c)],_0x192991[_0x2a54c5(0x14c)],{'id':_0x59ff2d['id'],'url':_0x59ff2d[_0x2a54c5(0x11f)]});}catch(_0x2d8f8f){const _0x2bdd92=mapMenuApiError(_0x2d8f8f,_0x2a54c5(0x154),_0x5ec24a);if(isMenuResponseLoss(_0x2d8f8f)&&_0x2bdd92[_0x2a54c5(0x141)]!==_0x2a54c5(0x144))return recoverAfterResponseLoss(_0x192991,_0x5ed671);throw menuFailure(_0x2bdd92,_0x3659b5,{'stage':_0x2a54c5(0x121),'failed':{'id':_0x5ec24a},'warnings':[_0x2a54c5(0x12c)],'verification':{'status':_0x2a54c5(0x148),'targetId':_0x5ec24a,'lookupCommand':buildLookupCommand(_0x192991['appCode'])}});}let _0x37dfda,_0x50ae24;try{_0x37dfda=await fetchMenuSnapshot(_0x192991[_0x2a54c5(0x13c)],_0x192991['cookie']),_0x50ae24=requireMenu(_0x37dfda,_0x5ec24a),verifyUpdatedFact(_0x2b4d00,_0x50ae24,_0x59ff2d[_0x2a54c5(0x11f)]);}catch(_0x5a5f6b){const _0x483592=describeMenuErrorCause(_0x5a5f6b,_0x2a54c5(0x129),_0x5ec24a),_0x21ebdb=asVerificationError(_0x5a5f6b,_0x2a54c5(0x15b)+_0x5ec24a+_0x2a54c5(0x15e));throw menuFailure(_0x21ebdb,_0x3659b5,{'stage':'verification','succeeded':[{'id':_0x5ec24a,'updateRequested':!![]}],'failed':{'id':_0x5ec24a,'requestedStateConfirmed':![],..._0x483592},'warnings':[_0x2a54c5(0x166)],'verification':{'status':_0x2a54c5(0x148),'targetId':_0x5ec24a,'lookupCommand':buildLookupCommand(_0x192991[_0x2a54c5(0x13c)])}});}return updateSuccess(_0x3659b5,_0x37dfda,_0x50ae24,![],![]);}};function validateInput(_0x160deb){const _0x5a943f=a153_0x360b96;validateExactId(_0x160deb),requiredUrl(_0x160deb,_0x5a943f(0x11f)),requiredExpectedUrl(_0x160deb),parseParentId(_0x160deb,_0x5a943f(0x167),{'required':!![]});}function requiredUrl(_0x51dddc,_0x526fd9){const _0x27b2f3=a153_0x360b96;if(!hasFlag(_0x51dddc,_0x526fd9)||!_0x51dddc[_0x27b2f3(0x123)](_0x526fd9)['trim']())throw CliErrors['flagMissing'](_0x526fd9);return validateExternalMenuUrl(_0x51dddc[_0x27b2f3(0x123)](_0x526fd9));}function a153_0xd279(){const _0x625585=['trim','\x20could\x20not\x20be\x20verified\x20safely','3379480xpzSgD','hash','update\x20external\x20menu\x20URL','body','menu_external_link_not_leaf','1735154SicFPd','menu_update_recovery_required','readbackFailed','expect-url','Update\x20request\x20for\x20menu\x20','iframe','650646GHEoaF','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','menu_external_link_type_required','menu_external_link_path_missing','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','external-link-update','Run\x20','\x27\x5c\x27\x27','\x22,\x20not\x20iframe\x20or\x20link.','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','expect-parent-id','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','New\x20external\x20HTTPS\x20URL','visible','url','\x20URL\x20update\x20did\x20not\x20take\x20effect.','update','byId','str','921320oGlbHY',',\x20current\x20','update-recovery','write','after','verify\x20external\x20menu\x20URL\x20update','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','\x20already\x20matches\x20the\x20requested\x20URL.','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Response\x20was\x20lost\x20and\x20menu\x20','string','unknown','requestedUrlObserved','parentId','type','2501196fljQaZ','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','1854538YXsAIH','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','\x20changed\x20during\x20the\x20URL-only\x20update.','\x20parent\x20changed:\x20expected\x20','childrenCount','link','menu\x20list','appCode','55teHnfk','/smartapi/menu/update','snapshot','POST','code','17576192ZCtqJr','\x20direct\x20child\x20menu(s).','menu_permission_denied','Menu\x20','path','sort','failed','\x20has\x20','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','\x20has\x20an\x20empty\x20platform\x20path.','cookie','label','plan','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.'];a153_0xd279=function(){return _0x625585;};return a153_0xd279();}function requiredExpectedUrl(_0x3b2db1){const _0x5963f9=a153_0x360b96;if(!hasFlag(_0x3b2db1,_0x5963f9(0x15a))||!_0x3b2db1['str'](_0x5963f9(0x15a))[_0x5963f9(0x150)]())throw CliErrors['flagMissing'](_0x5963f9(0x15a));return _0x3b2db1[_0x5963f9(0x123)](_0x5963f9(0x15a))[_0x5963f9(0x150)]();}async function buildPlan(_0x2edde3,_0x179e86){const _0x43e380=a153_0x360b96,_0x473177=validateExactId(_0x2edde3),_0x11b6f1=requiredUrl(_0x2edde3,_0x43e380(0x11f)),_0x4452b3=requiredExpectedUrl(_0x2edde3),_0x31f9c2=parseParentId(_0x2edde3,'expect-parent-id',{'required':!![]}),_0x4d3663=await fetchMutationSnapshot(_0x2edde3,_0x43e380(0x154),_0x473177),_0x391ef1=requireMenu(_0x4d3663,_0x473177);assertExternalLinkLeaf(_0x391ef1);if(_0x391ef1['parentId']!==_0x31f9c2)throw menuError('menu_state_drift',_0x43e380(0x145)+_0x473177+_0x43e380(0x138)+formatParent(_0x31f9c2)+_0x43e380(0x125)+formatParent(_0x391ef1[_0x43e380(0x131)])+'.',_0x43e380(0x161));const _0x3ac988=_0x391ef1['url']===_0x11b6f1;if(!_0x3ac988&&_0x391ef1['url']!==_0x4452b3)throw menuError('menu_state_drift','Menu\x20'+_0x473177+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x552848={'id':_0x473177,'appCode':_0x2edde3[_0x43e380(0x13c)],'url':_0x11b6f1},_0xbedd58={..._0x391ef1,'url':_0x11b6f1};return{'body':_0x552848,'before':_0x391ef1,'noChanges':_0x3ac988,'snapshot':_0x4d3663,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x473177},'before':_0x391ef1,'after':_0xbedd58,'dryRun':_0x179e86,'backend':[...BACKEND],'plannedActions':_0x3ac988?[]:[{'stage':'update-external-link-url','method':_0x43e380(0x140),'path':_0x43e380(0x13e),'body':_0x552848}],'snapshotHash':_0x4d3663[_0x43e380(0x153)],'warnings':_0x3ac988?[_0x43e380(0x168)]:[]})};}function assertExternalLinkLeaf(_0x15c797){const _0x58df16=a153_0x360b96;if(_0x15c797[_0x58df16(0x132)]!==_0x58df16(0x15c)&&_0x15c797[_0x58df16(0x132)]!==_0x58df16(0x13a))throw menuError(_0x58df16(0x15f),'Menu\x20'+_0x15c797['id']+'\x20is\x20type\x20\x22'+(_0x15c797[_0x58df16(0x132)]||_0x58df16(0x12f))+_0x58df16(0x165),_0x58df16(0x14a));if(_0x15c797[_0x58df16(0x139)]!==0x0)throw menuError(_0x58df16(0x156),_0x58df16(0x145)+_0x15c797['id']+_0x58df16(0x149)+_0x15c797[_0x58df16(0x139)]+_0x58df16(0x143),_0x58df16(0x14f));if(!_0x15c797['path'][_0x58df16(0x150)]())throw menuError(_0x58df16(0x160),_0x58df16(0x145)+_0x15c797['id']+_0x58df16(0x14b),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x56e168,_0x368cce,_0x359085){const _0x63688f=a153_0x360b96;assertExternalLinkLeaf(_0x368cce);const _0x3dee96=[['id',_0x368cce['id'],_0x56e168['id']],['label',_0x368cce[_0x63688f(0x14d)],_0x56e168[_0x63688f(0x14d)]],[_0x63688f(0x132),_0x368cce[_0x63688f(0x132)],_0x56e168[_0x63688f(0x132)]],[_0x63688f(0x146),_0x368cce[_0x63688f(0x146)],_0x56e168[_0x63688f(0x146)]],[_0x63688f(0x131),_0x368cce[_0x63688f(0x131)],_0x56e168[_0x63688f(0x131)]],[_0x63688f(0x147),_0x368cce['sort'],_0x56e168[_0x63688f(0x147)]],['visible',_0x368cce[_0x63688f(0x16a)],_0x56e168[_0x63688f(0x16a)]]];for(const [_0x53a9dd,_0x18fc1b,_0x366027]of _0x3dee96){assertVerified(_0x18fc1b===_0x366027,_0x63688f(0x145)+_0x56e168['id']+'\x20'+_0x53a9dd+_0x63688f(0x137));}assertVerified(_0x368cce[_0x63688f(0x11f)]===_0x359085,_0x63688f(0x145)+_0x56e168['id']+_0x63688f(0x120));}function updateSuccess(_0x960413,_0x3ba72a,_0x5e8d5f,_0x3847f5,_0x5c5859){const _0x428448=a153_0x360b96,_0x4a0b03=_0x5e8d5f['id'],_0x3f14a6=mutationResult({..._0x960413,'after':_0x5e8d5f,'dryRun':![],'succeeded':[{'id':_0x4a0b03,'updated':!_0x3847f5,'skipped':_0x3847f5,'recovered':_0x5c5859}],'verification':{'checkedBy':_0x428448(0x13b),'snapshotHash':_0x3ba72a[_0x428448(0x153)],'targetId':_0x4a0b03,'matchesRequestedState':!![],'recovered':_0x5c5859}});return{'ok':!![],'message':_0x5c5859?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x4a0b03+'.':_0x3847f5?_0x428448(0x145)+_0x4a0b03+_0x428448(0x12b):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x4a0b03+'.','data':{..._0x3f14a6,'recovered':_0x5c5859}};}async function recoverAfterResponseLoss(_0x491185,_0x2ecdab){const _0x47530c=a153_0x360b96,{plan:_0x4e9522,before:_0x360ef5,body:_0x1ee629}=_0x2ecdab;let _0x588a11;try{_0x588a11=await fetchMenuSnapshot(_0x491185['appCode'],_0x491185[_0x47530c(0x14c)]);}catch{throw recoveryRequired(_0x4e9522,_0x491185['appCode'],{'id':_0x1ee629['id'],'readbackFailed':!![]});}const _0x39cf99=_0x588a11[_0x47530c(0x122)]['get'](_0x1ee629['id']);if(!_0x39cf99||_0x39cf99['url']!==_0x1ee629['url'])throw recoveryRequired(_0x4e9522,_0x491185['appCode'],{'id':_0x1ee629['id'],'requestedUrlObserved':![],'after':_0x39cf99??null});try{verifyUpdatedFact(_0x360ef5,_0x39cf99,_0x1ee629[_0x47530c(0x11f)]);}catch(_0x4222c7){const _0x6318a=asVerificationError(_0x4222c7,_0x47530c(0x12d)+_0x1ee629['id']+_0x47530c(0x151));throw menuFailure(_0x6318a,_0x4e9522,{'stage':_0x47530c(0x126),'succeeded':[{'id':_0x1ee629['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1ee629['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x39cf99,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x47530c(0x148),'targetId':_0x1ee629['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x491185[_0x47530c(0x13c)])}});}return updateSuccess(_0x4e9522,_0x588a11,_0x39cf99,![],!![]);}function recoveryRequired(_0x26733f,_0x28108d,_0x1c3e3a){const _0x96e1f1=a153_0x360b96,_0x209f2e=menuError(_0x96e1f1(0x158),_0x96e1f1(0x12a),_0x96e1f1(0x163)+buildLookupCommand(_0x28108d)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x209f2e,_0x26733f,{'stage':_0x96e1f1(0x126),'failed':{'id':_0x1c3e3a['id'],..._0x1c3e3a[_0x96e1f1(0x130)]===undefined?{}:{'requestedUrlObserved':_0x1c3e3a[_0x96e1f1(0x130)]},..._0x1c3e3a[_0x96e1f1(0x159)]?{'readbackFailed':!![]}:{}},'after':_0x1c3e3a[_0x96e1f1(0x128)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':'failed','targetId':_0x1c3e3a['id'],..._0x1c3e3a[_0x96e1f1(0x130)]===undefined?{}:{'requestedUrlObserved':_0x1c3e3a[_0x96e1f1(0x130)]},..._0x1c3e3a[_0x96e1f1(0x159)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x28108d)}});}function buildLookupCommand(_0x4c97f8){const _0x146e97=a153_0x360b96,_0x3d6e6e='\x27'+_0x4c97f8['replace'](/'/g,_0x146e97(0x164))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x3d6e6e+'\x20--format\x20compress';}
@@ -1 +1 @@
1
- const a154_0x74c818=a154_0x2555;(function(_0x25ad64,_0x540e65){const _0x3c5833=a154_0x2555,_0x45f6af=_0x25ad64();while(!![]){try{const _0x56a560=-parseInt(_0x3c5833(0x153))/0x1*(parseInt(_0x3c5833(0x13b))/0x2)+-parseInt(_0x3c5833(0x13c))/0x3+-parseInt(_0x3c5833(0x16e))/0x4+-parseInt(_0x3c5833(0x173))/0x5*(parseInt(_0x3c5833(0x15f))/0x6)+-parseInt(_0x3c5833(0x150))/0x7+parseInt(_0x3c5833(0x143))/0x8*(parseInt(_0x3c5833(0x13e))/0x9)+parseInt(_0x3c5833(0x13d))/0xa;if(_0x56a560===_0x540e65)break;else _0x45f6af['push'](_0x45f6af['shift']());}catch(_0x4ea69a){_0x45f6af['push'](_0x45f6af['shift']());}}}(a154_0x384b,0x2a9b6));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 a154_0x2555(_0x1b0785,_0x3ece88){_0x1b0785=_0x1b0785-0x132;const _0x384b3f=a154_0x384b();let _0x255587=_0x384b3f[_0x1b0785];return _0x255587;}import{createMenuEntity}from'../../commands/menu/shared/service.js';function a154_0x384b(){const _0x5bd5f2=['Would\x20create\x20empty\x20folder\x20\x22','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','174ROWEQC','failed','visible','root','<platform-generated>','Folder\x20label','label','POST','string','/smartapi/menu/create','\x20is\x20missing\x20from\x20menu\x20list.','childrenCount','path','Created\x20folder\x20','sort','445088EzqBHE','Created\x20menu\x20folder\x20','depth','\x20is\x20not\x20type\x20folder.','trim','8765rDgauG','\x20may\x20exist\x20online\x20at\x20path\x20','length','Menu\x20create\x20response\x20for\x20folder\x20','\x20has\x20resources.',';\x20verify\x20it\x20before\x20retrying.','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','cookie','rabetbase\x20menu\x20list\x20--format\x20json','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','byId','Folder\x20','parentId','24jxywrT','540981pKVRrd','5481670vAnAtk','504uQZMmn','after','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','flagMissing','str','41912wneJcc','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','verify\x20folder\x20creation','create-response-validation','isSafeInteger','verification','create','\x20unexpectedly\x20owns\x20a\x20page.','\x20has\x20an\x20unexpected\x20sort.','Created\x20menu\x20','stringify','create-folder','\x20is\x20not\x20empty.','1725003LAmkTM','appCode','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','6514CMPLiX','\x20has\x20unexpected\x20parent\x20','resources','parent-id','write','hash','create\x20folder','group-create','folder','get'];a154_0x384b=function(){return _0x5bd5f2;};return a154_0x384b();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0x74c818(0x166),'path':a154_0x74c818(0x168)}];export const menuGroupCreate={'service':'menu','command':a154_0x74c818(0x15a),'description':'Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','risk':a154_0x74c818(0x157),'structuredErrors':!![],'flags':[{'name':a154_0x74c818(0x165),'type':a154_0x74c818(0x167),'required':!![],'description':a154_0x74c818(0x164)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x57c2a8){validateCreateInput(_0x57c2a8);},async 'dryRun'(_0x52a8a2){const _0x2acc8f=a154_0x74c818,_0x1c59f5=await buildCreatePlan(_0x52a8a2,!![]),_0x1248c3=_0x1c59f5[_0x2acc8f(0x13f)];return menuDryRunResult(_0x1c59f5,{'method':_0x2acc8f(0x166),'url':_0x2acc8f(0x168),'body':{'parentId':toApiParentId(_0x1248c3[_0x2acc8f(0x13a)]),'label':_0x1248c3['label'],'type':_0x2acc8f(0x15b),'visible':!![],'sort':_0x1248c3[_0x2acc8f(0x16d)],'extend':{}},'description':_0x2acc8f(0x15d)+String(_0x1248c3[_0x2acc8f(0x165)])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x17aca4){const _0x573359=a154_0x74c818;validateCreateInput(_0x17aca4);const _0x683d2c=await buildCreatePlan(_0x17aca4,![]),_0x394c5=_0x683d2c['after'];await recheckMutationSnapshot(_0x17aca4,_0x683d2c,_0x573359(0x159));let _0x2bdf90;try{_0x2bdf90=await createMenuEntity(_0x17aca4[_0x573359(0x151)],_0x17aca4[_0x573359(0x135)],{'parentId':toApiParentId(_0x394c5['parentId']),'label':String(_0x394c5[_0x573359(0x165)]),'type':_0x573359(0x15b),'visible':!![],'sort':Number(_0x394c5[_0x573359(0x16d)]),'extend':{}});}catch(_0x374624){const _0x36cd8a=mapMenuApiError(_0x374624,_0x573359(0x159));throw menuFailure(_0x36cd8a,_0x683d2c,{'stage':_0x573359(0x149),'failed':{}});}const _0x494c7a=Number(_0x2bdf90['id']);if(!Number[_0x573359(0x147)](_0x494c7a)||_0x494c7a<=0x0){const _0x2fa969=menuError('menu_create_response_invalid','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0x573359(0x15e));throw menuFailure(_0x2fa969,_0x683d2c,{'stage':_0x573359(0x146),'failed':{'createdId':_0x2bdf90['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':_0x573359(0x160),'lookupCommand':_0x573359(0x136)}});}const _0x3cdd6e=typeof _0x2bdf90['path']===_0x573359(0x167)?_0x2bdf90['path']:'';if(!_0x3cdd6e[_0x573359(0x172)]()){const _0x5b3d50=menuError('menu_create_response_invalid',_0x573359(0x176)+_0x494c7a+_0x573359(0x140),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x5b3d50,_0x683d2c,{'stage':'create-response-validation','succeeded':[{'id':_0x494c7a,'created':!![]}],'failed':{'id':_0x494c7a,'generatedPathConfirmed':![]},'warnings':[_0x573359(0x139)+_0x494c7a+_0x573359(0x152)],'after':{..._0x394c5,'id':_0x494c7a,'path':_0x3cdd6e},'verification':{'status':_0x573359(0x160),'lookupCommand':_0x573359(0x136),'targetId':_0x494c7a}});}let _0x32f28f;try{_0x32f28f=await fetchMenuSnapshot(_0x17aca4[_0x573359(0x151)],_0x17aca4['cookie']);}catch(_0x3d5d25){const _0xb4aee2=describeMenuErrorCause(_0x3d5d25,_0x573359(0x145),_0x494c7a),_0x29c3de=asVerificationError(_0x3d5d25,'Folder\x20'+_0x494c7a+_0x573359(0x137));throw menuFailure(_0x29c3de,_0x683d2c,{'stage':_0x573359(0x148),'succeeded':[{'id':_0x494c7a,'created':!![],'path':_0x3cdd6e}],'failed':{'id':_0x494c7a,'finalFactsConfirmed':![],..._0xb4aee2},'warnings':[_0x573359(0x139)+_0x494c7a+_0x573359(0x174)+JSON[_0x573359(0x14d)](_0x3cdd6e)+_0x573359(0x133)],'after':{..._0x394c5,'id':_0x494c7a,'path':_0x3cdd6e},'verification':{'status':_0x573359(0x160),'lookupCommand':_0x573359(0x136),'targetId':_0x494c7a}});}const _0x6a5dcd=_0x32f28f[_0x573359(0x138)][_0x573359(0x15c)](_0x494c7a);let _0x5d39ce;try{assertVerified(Boolean(_0x6a5dcd),'Created\x20folder\x20'+_0x494c7a+_0x573359(0x169)),_0x5d39ce=_0x6a5dcd,assertVerified(_0x5d39ce['type']==='folder',_0x573359(0x14c)+_0x494c7a+_0x573359(0x171)),assertVerified(_0x5d39ce[_0x573359(0x165)]===_0x394c5[_0x573359(0x165)],_0x573359(0x16c)+_0x494c7a+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x5d39ce[_0x573359(0x16b)]===_0x3cdd6e&&Boolean(_0x5d39ce['path'][_0x573359(0x172)]()),_0x573359(0x16c)+_0x494c7a+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x5d39ce[_0x573359(0x161)]===!![],_0x573359(0x16c)+_0x494c7a+'\x20is\x20not\x20visible.'),assertVerified(_0x5d39ce[_0x573359(0x155)][_0x573359(0x175)]===0x0,'Created\x20folder\x20'+_0x494c7a+_0x573359(0x132)),assertVerified(_0x5d39ce[_0x573359(0x16a)]===0x0,_0x573359(0x16c)+_0x494c7a+_0x573359(0x14f)),assertVerified(_0x5d39ce[_0x573359(0x16d)]===_0x394c5[_0x573359(0x16d)],'Created\x20folder\x20'+_0x494c7a+_0x573359(0x14b)),assertVerified(_0x5d39ce[_0x573359(0x13a)]===_0x394c5['parentId'],'Created\x20folder\x20'+_0x494c7a+_0x573359(0x154)+(_0x5d39ce[_0x573359(0x13a)]??_0x573359(0x162))+'.'),assertVerified(_0x5d39ce['pageId']==null,_0x573359(0x16c)+_0x494c7a+_0x573359(0x14a));const _0x25996c=_0x5d39ce['parentId']==null?undefined:requireFolder(_0x32f28f,_0x5d39ce[_0x573359(0x13a)]);assertVerified(_0x5d39ce[_0x573359(0x170)]===(_0x25996c?_0x25996c[_0x573359(0x170)]+0x1:0x0),_0x573359(0x16c)+_0x494c7a+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x56a03c){const _0x36814c=describeMenuErrorCause(_0x56a03c,_0x573359(0x145),_0x494c7a),_0x1e9ccc=asVerificationError(_0x56a03c,_0x573359(0x139)+_0x494c7a+_0x573359(0x144));throw menuFailure(_0x1e9ccc,_0x683d2c,{'stage':'verification','succeeded':[{'id':_0x494c7a,'created':!![],'path':_0x3cdd6e}],'failed':{'id':_0x494c7a,'finalFactsConfirmed':![],..._0x36814c},'warnings':['Folder\x20'+_0x494c7a+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x6a5dcd??{..._0x394c5,'id':_0x494c7a,'path':_0x3cdd6e},'verification':{'status':_0x573359(0x160),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x494c7a}});}const _0x1f2bcb=mutationResult({..._0x683d2c,'after':_0x5d39ce,'dryRun':![],'succeeded':[{'id':_0x494c7a,'type':'folder','path':_0x3cdd6e}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x32f28f[_0x573359(0x158)],'folder':!![],'path':_0x3cdd6e,'emptyResources':!![]}});return{'ok':!![],'data':_0x1f2bcb,'message':_0x573359(0x16f)+_0x494c7a+'.'};}};function validateCreateInput(_0x12eff4){const _0x5924c2=a154_0x74c818,_0xde0b75=_0x12eff4['str']('label')['trim']();if(!_0xde0b75)throw CliErrors[_0x5924c2(0x141)](_0x5924c2(0x165));parseParentId(_0x12eff4,_0x5924c2(0x156)),validateSort(_0x12eff4);}async function buildCreatePlan(_0x2375d8,_0x3f6688){const _0x262fe1=a154_0x74c818,_0x253a0b=await fetchMutationSnapshot(_0x2375d8,'create\x20folder'),_0x11a41c=parseParentId(_0x2375d8,_0x262fe1(0x156))??null;if(_0x11a41c!=null)requireFolder(_0x253a0b,_0x11a41c);const _0x2d6768=validateSort(_0x2375d8),_0x1987e7=_0x2d6768??nextSiblingSort(_0x253a0b,_0x11a41c,_0x262fe1(0x15b)),_0x26a8a2=_0x2375d8[_0x262fe1(0x142)]('label')[_0x262fe1(0x172)]();return mutationResult({'operation':_0x262fe1(0x15a),'selector':{'label':_0x26a8a2,'parentId':_0x11a41c},'before':null,'after':{'id':null,'parentId':_0x11a41c,'label':_0x26a8a2,'path':_0x262fe1(0x163),'type':_0x262fe1(0x15b),'visible':!![],'sort':_0x1987e7,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x3f6688,'backend':[...BACKEND],'plannedActions':[{'stage':_0x262fe1(0x14e),'method':_0x262fe1(0x166),'path':_0x262fe1(0x168),'body':{'parentId':toApiParentId(_0x11a41c),'label':_0x26a8a2,'type':_0x262fe1(0x15b),'visible':!![],'sort':_0x1987e7,'extend':{}}}],'snapshotHash':_0x253a0b[_0x262fe1(0x158)],'warnings':[_0x262fe1(0x134)]});}
1
+ const a154_0x37f8ca=a154_0x7631;(function(_0x3d7bc6,_0x305266){const _0x4a6343=a154_0x7631,_0x10bae0=_0x3d7bc6();while(!![]){try{const _0x3536f9=parseInt(_0x4a6343(0x18d))/0x1*(parseInt(_0x4a6343(0x18f))/0x2)+-parseInt(_0x4a6343(0x1a0))/0x3*(-parseInt(_0x4a6343(0x1ac))/0x4)+parseInt(_0x4a6343(0x185))/0x5*(-parseInt(_0x4a6343(0x1bb))/0x6)+parseInt(_0x4a6343(0x1bd))/0x7*(-parseInt(_0x4a6343(0x190))/0x8)+-parseInt(_0x4a6343(0x1b6))/0x9*(parseInt(_0x4a6343(0x192))/0xa)+-parseInt(_0x4a6343(0x1be))/0xb+parseInt(_0x4a6343(0x198))/0xc;if(_0x3536f9===_0x305266)break;else _0x10bae0['push'](_0x10bae0['shift']());}catch(_0x2b626d){_0x10bae0['push'](_0x10bae0['shift']());}}}(a154_0x528e,0x986af));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a154_0x7631(_0x2b45e7,_0x5d72d2){_0x2b45e7=_0x2b45e7-0x17a;const _0x528e4d=a154_0x528e();let _0x76318d=_0x528e4d[_0x2b45e7];return _0x76318d;}import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';function a154_0x528e(){const _0x303556=['create-folder','/smartapi/menu/create','type','6vxXKMO','trim','23401RArdiu','8035742xmWgxl','Created\x20menu\x20','create-response-validation','depth','sort','Would\x20create\x20empty\x20folder\x20\x22','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','<platform-generated>','isSafeInteger','\x20is\x20not\x20visible.','Folder\x20label','Created\x20menu\x20folder\x20','create\x20folder','after','Created\x20folder\x20','get','212430eLiNrN','parent-id','label','hash','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20is\x20not\x20empty.','\x20has\x20an\x20unexpected\x20sort.','verify\x20folder\x20creation','222685WjVrbe','menu_create_response_invalid','4etleZs','592PRSrGR','byId','514760XQPomo','\x20has\x20an\x20unexpected\x20label.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','Folder\x20','rabetbase\x20menu\x20list\x20--format\x20json','pageId','11827536DnVgHq','\x20has\x20unexpected\x20parent\x20','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','path','\x20may\x20exist\x20online\x20at\x20path\x20','write','create','resources','903niAhhO','failed','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','verification','folder','\x20unexpectedly\x20owns\x20a\x20page.','\x20is\x20not\x20type\x20folder.','stringify','appCode','string','menu','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','4892PcNzkz','parentId','childrenCount','str','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','visible','\x20is\x20missing\x20from\x20menu\x20list.','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','cookie','POST','27iAPjlJ','group-create'];a154_0x528e=function(){return _0x303556;};return a154_0x528e();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0x37f8ca(0x1b5),'path':a154_0x37f8ca(0x1b9)}];export const menuGroupCreate={'service':a154_0x37f8ca(0x1aa),'command':a154_0x37f8ca(0x1b7),'description':a154_0x37f8ca(0x1a2),'risk':a154_0x37f8ca(0x19d),'structuredErrors':!![],'flags':[{'name':'label','type':a154_0x37f8ca(0x1a9),'required':!![],'description':a154_0x37f8ca(0x17f)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2f8b7){validateCreateInput(_0x2f8b7);},async 'dryRun'(_0x395971){const _0x4eb6bd=a154_0x37f8ca,_0x4edb50=await buildCreatePlan(_0x395971,!![]),_0x2d11a6=_0x4edb50['after'];return menuDryRunResult(_0x4edb50,{'method':_0x4eb6bd(0x1b5),'url':_0x4eb6bd(0x1b9),'body':{'parentId':toApiParentId(_0x2d11a6['parentId']),'label':_0x2d11a6[_0x4eb6bd(0x187)],'type':_0x4eb6bd(0x1a4),'visible':!![],'sort':_0x2d11a6[_0x4eb6bd(0x1c2)],'extend':{}},'description':_0x4eb6bd(0x17a)+String(_0x2d11a6['label'])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x4f254d){const _0xd549c2=a154_0x37f8ca;validateCreateInput(_0x4f254d);const _0x481900=await buildCreatePlan(_0x4f254d,![]),_0x5c7e86=_0x481900[_0xd549c2(0x182)];await recheckMutationSnapshot(_0x4f254d,_0x481900,_0xd549c2(0x181));let _0x25dba6;try{_0x25dba6=await createMenuEntity(_0x4f254d[_0xd549c2(0x1a8)],_0x4f254d[_0xd549c2(0x1b4)],{'parentId':toApiParentId(_0x5c7e86[_0xd549c2(0x1ad)]),'label':String(_0x5c7e86[_0xd549c2(0x187)]),'type':_0xd549c2(0x1a4),'visible':!![],'sort':Number(_0x5c7e86[_0xd549c2(0x1c2)]),'extend':{}});}catch(_0x5cbe1f){const _0x2042cf=mapMenuApiError(_0x5cbe1f,_0xd549c2(0x181));throw menuFailure(_0x2042cf,_0x481900,{'stage':_0xd549c2(0x19e),'failed':{}});}const _0xb797b0=Number(_0x25dba6['id']);if(!Number[_0xd549c2(0x17d)](_0xb797b0)||_0xb797b0<=0x0){const _0x20b0f1=menuError(_0xd549c2(0x18e),_0xd549c2(0x194),_0xd549c2(0x189));throw menuFailure(_0x20b0f1,_0x481900,{'stage':_0xd549c2(0x1c0),'failed':{'createdId':_0x25dba6['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0x5c2cb2=typeof _0x25dba6[_0xd549c2(0x19b)]===_0xd549c2(0x1a9)?_0x25dba6[_0xd549c2(0x19b)]:'';if(!_0x5c2cb2[_0xd549c2(0x1bc)]()){const _0x40fe75=menuError(_0xd549c2(0x18e),'Menu\x20create\x20response\x20for\x20folder\x20'+_0xb797b0+_0xd549c2(0x17b),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x40fe75,_0x481900,{'stage':'create-response-validation','succeeded':[{'id':_0xb797b0,'created':!![]}],'failed':{'id':_0xb797b0,'generatedPathConfirmed':![]},'warnings':[_0xd549c2(0x195)+_0xb797b0+_0xd549c2(0x1b3)],'after':{..._0x5c7e86,'id':_0xb797b0,'path':_0x5c2cb2},'verification':{'status':_0xd549c2(0x1a1),'lookupCommand':_0xd549c2(0x196),'targetId':_0xb797b0}});}let _0x3b1ac4;try{_0x3b1ac4=await fetchMenuSnapshot(_0x4f254d['appCode'],_0x4f254d[_0xd549c2(0x1b4)]);}catch(_0x3044fa){const _0x49abc6=describeMenuErrorCause(_0x3044fa,_0xd549c2(0x18c),_0xb797b0),_0x4c379a=asVerificationError(_0x3044fa,'Folder\x20'+_0xb797b0+_0xd549c2(0x1b0));throw menuFailure(_0x4c379a,_0x481900,{'stage':_0xd549c2(0x1a3),'succeeded':[{'id':_0xb797b0,'created':!![],'path':_0x5c2cb2}],'failed':{'id':_0xb797b0,'finalFactsConfirmed':![],..._0x49abc6},'warnings':['Folder\x20'+_0xb797b0+_0xd549c2(0x19c)+JSON[_0xd549c2(0x1a7)](_0x5c2cb2)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x5c7e86,'id':_0xb797b0,'path':_0x5c2cb2},'verification':{'status':_0xd549c2(0x1a1),'lookupCommand':_0xd549c2(0x196),'targetId':_0xb797b0}});}const _0x1077b2=_0x3b1ac4[_0xd549c2(0x191)][_0xd549c2(0x184)](_0xb797b0);let _0x43e136;try{assertVerified(Boolean(_0x1077b2),_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x1b2)),_0x43e136=_0x1077b2,assertVerified(_0x43e136[_0xd549c2(0x1ba)]===_0xd549c2(0x1a4),_0xd549c2(0x1bf)+_0xb797b0+_0xd549c2(0x1a6)),assertVerified(_0x43e136[_0xd549c2(0x187)]===_0x5c7e86[_0xd549c2(0x187)],_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x193)),assertVerified(_0x43e136[_0xd549c2(0x19b)]===_0x5c2cb2&&Boolean(_0x43e136[_0xd549c2(0x19b)]['trim']()),_0xd549c2(0x183)+_0xb797b0+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x43e136[_0xd549c2(0x1b1)]===!![],'Created\x20folder\x20'+_0xb797b0+_0xd549c2(0x17e)),assertVerified(_0x43e136[_0xd549c2(0x19f)]['length']===0x0,'Created\x20folder\x20'+_0xb797b0+'\x20has\x20resources.'),assertVerified(_0x43e136[_0xd549c2(0x1ae)]===0x0,'Created\x20folder\x20'+_0xb797b0+_0xd549c2(0x18a)),assertVerified(_0x43e136[_0xd549c2(0x1c2)]===_0x5c7e86[_0xd549c2(0x1c2)],_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x18b)),assertVerified(_0x43e136['parentId']===_0x5c7e86[_0xd549c2(0x1ad)],_0xd549c2(0x183)+_0xb797b0+_0xd549c2(0x199)+(_0x43e136[_0xd549c2(0x1ad)]??'root')+'.'),assertVerified(_0x43e136[_0xd549c2(0x197)]==null,'Created\x20folder\x20'+_0xb797b0+_0xd549c2(0x1a5));const _0x256aa2=_0x43e136[_0xd549c2(0x1ad)]==null?undefined:requireFolder(_0x3b1ac4,_0x43e136[_0xd549c2(0x1ad)]);assertVerified(_0x43e136['depth']===(_0x256aa2?_0x256aa2[_0xd549c2(0x1c1)]+0x1:0x0),_0xd549c2(0x183)+_0xb797b0+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x283267){const _0x3a6199=describeMenuErrorCause(_0x283267,'verify\x20folder\x20creation',_0xb797b0),_0x5e1172=asVerificationError(_0x283267,_0xd549c2(0x195)+_0xb797b0+_0xd549c2(0x19a));throw menuFailure(_0x5e1172,_0x481900,{'stage':'verification','succeeded':[{'id':_0xb797b0,'created':!![],'path':_0x5c2cb2}],'failed':{'id':_0xb797b0,'finalFactsConfirmed':![],..._0x3a6199},'warnings':[_0xd549c2(0x195)+_0xb797b0+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x1077b2??{..._0x5c7e86,'id':_0xb797b0,'path':_0x5c2cb2},'verification':{'status':_0xd549c2(0x1a1),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0xb797b0}});}const _0x327cee=mutationResult({..._0x481900,'after':_0x43e136,'dryRun':![],'succeeded':[{'id':_0xb797b0,'type':_0xd549c2(0x1a4),'path':_0x5c2cb2}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x3b1ac4[_0xd549c2(0x188)],'folder':!![],'path':_0x5c2cb2,'emptyResources':!![]}});return{'ok':!![],'data':_0x327cee,'message':_0xd549c2(0x180)+_0xb797b0+'.'};}};function validateCreateInput(_0x93205){const _0x4f0f0f=a154_0x37f8ca,_0x1c755b=_0x93205[_0x4f0f0f(0x1af)](_0x4f0f0f(0x187))['trim']();if(!_0x1c755b)throw CliErrors['flagMissing'](_0x4f0f0f(0x187));parseParentId(_0x93205,_0x4f0f0f(0x186)),validateSort(_0x93205);}async function buildCreatePlan(_0x13fe65,_0x8e7a4e){const _0x318d11=a154_0x37f8ca,_0xb029f6=await fetchMutationSnapshot(_0x13fe65,_0x318d11(0x181)),_0x277e04=parseParentId(_0x13fe65,_0x318d11(0x186))??null;if(_0x277e04!=null)requireFolder(_0xb029f6,_0x277e04);const _0x5ce259=validateSort(_0x13fe65),_0xec5711=_0x5ce259??nextSiblingSort(_0xb029f6,_0x277e04,_0x318d11(0x1a4)),_0x1e7b1f=_0x13fe65[_0x318d11(0x1af)](_0x318d11(0x187))[_0x318d11(0x1bc)]();return mutationResult({'operation':_0x318d11(0x1b7),'selector':{'label':_0x1e7b1f,'parentId':_0x277e04},'before':null,'after':{'id':null,'parentId':_0x277e04,'label':_0x1e7b1f,'path':_0x318d11(0x17c),'type':_0x318d11(0x1a4),'visible':!![],'sort':_0xec5711,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x8e7a4e,'backend':[...BACKEND],'plannedActions':[{'stage':_0x318d11(0x1b8),'method':_0x318d11(0x1b5),'path':_0x318d11(0x1b9),'body':{'parentId':toApiParentId(_0x277e04),'label':_0x1e7b1f,'type':_0x318d11(0x1a4),'visible':!![],'sort':_0xec5711,'extend':{}}}],'snapshotHash':_0xb029f6[_0x318d11(0x188)],'warnings':[_0x318d11(0x1ab)]});}
@@ -1 +1 @@
1
- const a155_0x48f1a7=a155_0x5487;(function(_0x5e8fb2,_0x5d9dc9){const _0x3b1510=a155_0x5487,_0x16f372=_0x5e8fb2();while(!![]){try{const _0x9af948=parseInt(_0x3b1510(0x9d))/0x1+parseInt(_0x3b1510(0xa6))/0x2+parseInt(_0x3b1510(0xb3))/0x3*(parseInt(_0x3b1510(0x99))/0x4)+parseInt(_0x3b1510(0x93))/0x5+-parseInt(_0x3b1510(0xa4))/0x6+parseInt(_0x3b1510(0xba))/0x7+-parseInt(_0x3b1510(0x8c))/0x8;if(_0x9af948===_0x5d9dc9)break;else _0x16f372['push'](_0x16f372['shift']());}catch(_0x1782ea){_0x16f372['push'](_0x16f372['shift']());}}}(a155_0x209b,0x47be5));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a155_0x48f1a7(0xa9),'path':a155_0x48f1a7(0x8d)}];export const menuGroupUpdate={'service':a155_0x48f1a7(0xa2),'command':a155_0x48f1a7(0xa1),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a155_0x48f1a7(0x91),'structuredErrors':!![],'rejectedFlags':[{'name':'parent-id','message':'Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','hint':a155_0x48f1a7(0x89)}],'flags':[MENU_ID_FLAG,{'name':a155_0x48f1a7(0x8b),'type':a155_0x48f1a7(0xb0),'description':a155_0x48f1a7(0xb6)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x107fc0){validateUpdateInput(_0x107fc0);},async 'dryRun'(_0x2762b9){const _0x37af14=a155_0x48f1a7;validateUpdateInput(_0x2762b9);const {plan:_0x4ea9c1,patch:_0x4fef48}=await buildUpdatePlan(_0x2762b9,!![]);return menuDryRunResult(_0x4ea9c1,{'method':_0x37af14(0xa9),'url':_0x37af14(0x8d),'body':_0x4fef48,'description':'Would\x20update\x20folder\x20'+_0x4ea9c1[_0x37af14(0x9a)]['id']+'.'});},async 'execute'(_0x5ec465){const _0x55fd5b=a155_0x48f1a7;validateUpdateInput(_0x5ec465);const {plan:_0x2a45a9,patch:_0x4b26dd,noChanges:_0x2ad239}=await buildUpdatePlan(_0x5ec465,![]),_0x3a95a2=Number(_0x2a45a9[_0x55fd5b(0x9a)]['id']),_0xdbffc9=await recheckMutationSnapshot(_0x5ec465,_0x2a45a9,_0x55fd5b(0x9b),_0x3a95a2);if(!_0x2ad239)try{await updateMenuEntity(_0x5ec465[_0x55fd5b(0xb7)],_0x5ec465[_0x55fd5b(0xb1)],_0x4b26dd);}catch(_0x36e5aa){const _0x1c4f23=mapMenuApiError(_0x36e5aa,_0x55fd5b(0x9b),_0x3a95a2);throw menuFailure(_0x1c4f23,_0x2a45a9,{'stage':_0x55fd5b(0xae),'failed':{'id':_0x3a95a2}});}let _0x156cd2=_0xdbffc9,_0x3b4f1b;try{!_0x2ad239&&(_0x156cd2=await fetchMenuSnapshot(_0x5ec465[_0x55fd5b(0xb7)],_0x5ec465['cookie'])),_0x3b4f1b=requireMenu(_0x156cd2,_0x3a95a2),verifyPatch(_0x3b4f1b,_0x4b26dd),_0x3b4f1b['parentId']!=null&&requireFolder(_0x156cd2,_0x3b4f1b[_0x55fd5b(0x92)]);}catch(_0x5a9e46){const _0x7376f4=describeMenuErrorCause(_0x5a9e46,_0x55fd5b(0xb4),_0x3a95a2),_0x2622cd=asVerificationError(_0x5a9e46,_0x55fd5b(0x95)+_0x3a95a2+_0x55fd5b(0xb8));throw menuFailure(_0x2622cd,_0x2a45a9,{'stage':_0x55fd5b(0xa5),'succeeded':[{'id':_0x3a95a2,'updateRequested':!_0x2ad239,'skipped':_0x2ad239}],'failed':{'id':_0x3a95a2,'requestedStateConfirmed':![],..._0x7376f4},'warnings':[_0x55fd5b(0xa0)],'verification':{'status':'failed','lookupCommand':_0x55fd5b(0xad),'targetId':_0x3a95a2}});}const _0x42ad93=mutationResult({..._0x2a45a9,'after':_0x3b4f1b,'dryRun':![],'succeeded':[{'id':_0x3a95a2,'updated':!_0x2ad239,'skipped':_0x2ad239}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x156cd2[_0x55fd5b(0x97)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x42ad93,'message':_0x2ad239?_0x55fd5b(0xb5)+_0x3a95a2+_0x55fd5b(0x94):_0x55fd5b(0xac)+_0x3a95a2+'.'};}};function a155_0x5487(_0x21da0b,_0x28e9eb){_0x21da0b=_0x21da0b-0x89;const _0x209b0d=a155_0x209b();let _0x5487da=_0x209b0d[_0x21da0b];return _0x5487da;}function validateUpdateInput(_0x105e8d){const _0x2bbc20=a155_0x48f1a7;validateExactId(_0x105e8d);if(hasFlag(_0x105e8d,_0x2bbc20(0xb9)))throw CliErrors[_0x2bbc20(0x96)](_0x2bbc20(0x8a),'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.');if(!hasFlag(_0x105e8d,'label')&&!hasFlag(_0x105e8d,_0x2bbc20(0x9f)))throw CliErrors['validation'](_0x2bbc20(0xaf));if(hasFlag(_0x105e8d,_0x2bbc20(0x8b))&&!_0x105e8d['str'](_0x2bbc20(0x8b))['trim']())throw CliErrors[_0x2bbc20(0x96)](_0x2bbc20(0xb2));validateSort(_0x105e8d);}async function buildUpdatePlan(_0x508562,_0x4c700b){const _0x27f236=a155_0x48f1a7,_0x1e3224=validateExactId(_0x508562),_0x140ce9=await fetchMutationSnapshot(_0x508562,_0x27f236(0x9b),_0x1e3224),_0x4b86e2=requireMenu(_0x140ce9,_0x1e3224);if(_0x4b86e2[_0x27f236(0xab)]!==_0x27f236(0xa7))throw menuError(_0x27f236(0xaa),_0x27f236(0x8e)+_0x1e3224+'\x20is\x20type\x20\x22'+(_0x4b86e2['type']||_0x27f236(0x9c))+_0x27f236(0x9e),_0x27f236(0xbb));assertExpectedState(_0x508562,_0x4b86e2);const _0x5b90a6={'id':_0x1e3224},_0x20d1b0={..._0x4b86e2};if(hasFlag(_0x508562,_0x27f236(0x8b))){const _0x47330e=_0x508562[_0x27f236(0x98)](_0x27f236(0x8b))[_0x27f236(0x8f)]();_0x5b90a6['label']=_0x47330e,_0x20d1b0[_0x27f236(0x8b)]=_0x47330e;}if(hasFlag(_0x508562,_0x27f236(0x9f))){const _0x59e1f1=validateSort(_0x508562);_0x5b90a6[_0x27f236(0x9f)]=_0x59e1f1,_0x20d1b0[_0x27f236(0x9f)]=_0x59e1f1;}const _0x179376=sameRequestedState(_0x4b86e2,_0x20d1b0),_0x3098ec=_0x179376?[_0x27f236(0xa8)]:[];return{'patch':_0x5b90a6,'noChanges':_0x179376,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x1e3224},'before':_0x4b86e2,'after':_0x20d1b0,'dryRun':_0x4c700b,'backend':[...BACKEND],'snapshotHash':_0x140ce9['hash'],'warnings':_0x3098ec})};}function a155_0x209b(){const _0x596941=['menu_not_folder','type','Updated\x20folder\x20','rabetbase\x20menu\x20list\x20--format\x20json','update','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','string','cookie','--label\x20cannot\x20be\x20empty.','213618RMhhbs','verify\x20folder\x20update','Folder\x20','New\x20folder\x20label','appCode','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','parent-id','412839AuFRnq','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','label','5316776gTipxO','/smartapi/menu/update','Menu\x20','trim','\x20is\x20no\x20longer\x20type\x20folder.','write','parentId','1119810nkcwxP','\x20already\x20matches\x20the\x20requested\x20state.','Update\x20request\x20for\x20folder\x20','validation','hash','str','20leCxXT','selector','update\x20folder','unknown','492805NtntSi','\x22,\x20not\x20folder.','sort','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','group-update','menu','\x20label\x20update\x20did\x20not\x20take\x20effect.','3514560lVdOzG','verification','824888IoioZg','folder','No\x20online\x20fields\x20would\x20change.','POST'];a155_0x209b=function(){return _0x596941;};return a155_0x209b();}function sameRequestedState(_0x1c5beb,_0x8abc2d){const _0x431981=a155_0x48f1a7;return _0x1c5beb['label']===_0x8abc2d[_0x431981(0x8b)]&&_0x1c5beb[_0x431981(0x9f)]===_0x8abc2d['sort'];}function verifyPatch(_0x5192e9,_0x51d08c){const _0x25aeb4=a155_0x48f1a7;assertVerified(_0x5192e9[_0x25aeb4(0xab)]===_0x25aeb4(0xa7),_0x25aeb4(0x8e)+_0x5192e9['id']+_0x25aeb4(0x90)),_0x51d08c[_0x25aeb4(0x8b)]!==undefined&&assertVerified(_0x5192e9[_0x25aeb4(0x8b)]===_0x51d08c[_0x25aeb4(0x8b)],_0x25aeb4(0xb5)+_0x5192e9['id']+_0x25aeb4(0xa3)),_0x51d08c[_0x25aeb4(0x9f)]!==undefined&&assertVerified(_0x5192e9[_0x25aeb4(0x9f)]===_0x51d08c[_0x25aeb4(0x9f)],_0x25aeb4(0xb5)+_0x5192e9['id']+'\x20sort\x20update\x20did\x20not\x20take\x20effect.');}
1
+ const a155_0x55bad0=a155_0x4dd3;(function(_0x520279,_0x5df350){const _0x5c5d0b=a155_0x4dd3,_0x301a91=_0x520279();while(!![]){try{const _0x1db81e=parseInt(_0x5c5d0b(0x11c))/0x1*(parseInt(_0x5c5d0b(0x11e))/0x2)+parseInt(_0x5c5d0b(0xf9))/0x3+parseInt(_0x5c5d0b(0x10b))/0x4*(parseInt(_0x5c5d0b(0xf3))/0x5)+parseInt(_0x5c5d0b(0x10a))/0x6+parseInt(_0x5c5d0b(0x103))/0x7+-parseInt(_0x5c5d0b(0x104))/0x8*(-parseInt(_0x5c5d0b(0x10d))/0x9)+-parseInt(_0x5c5d0b(0x11a))/0xa*(parseInt(_0x5c5d0b(0x105))/0xb);if(_0x1db81e===_0x5df350)break;else _0x301a91['push'](_0x301a91['shift']());}catch(_0x47586a){_0x301a91['push'](_0x301a91['shift']());}}}(a155_0x1194,0x22fdf));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a155_0x55bad0(0xfa)}];export const menuGroupUpdate={'service':'menu','command':'group-update','description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a155_0x55bad0(0x11d),'structuredErrors':!![],'rejectedFlags':[{'name':a155_0x55bad0(0x115),'message':a155_0x55bad0(0x110),'hint':a155_0x55bad0(0xff)}],'flags':[MENU_ID_FLAG,{'name':a155_0x55bad0(0x100),'type':a155_0x55bad0(0xf8),'description':a155_0x55bad0(0x10c)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x488268){validateUpdateInput(_0x488268);},async 'dryRun'(_0x6468f8){const _0x256944=a155_0x55bad0;validateUpdateInput(_0x6468f8);const {plan:_0x3c3586,patch:_0xf5ab77}=await buildUpdatePlan(_0x6468f8,!![]);return menuDryRunResult(_0x3c3586,{'method':_0x256944(0xfc),'url':_0x256944(0xfa),'body':_0xf5ab77,'description':_0x256944(0x112)+_0x3c3586[_0x256944(0x108)]['id']+'.'});},async 'execute'(_0x3bd13c){const _0x3aa41a=a155_0x55bad0;validateUpdateInput(_0x3bd13c);const {plan:_0x1aaa18,patch:_0x554455,noChanges:_0x58d041}=await buildUpdatePlan(_0x3bd13c,![]),_0x1285d5=Number(_0x1aaa18[_0x3aa41a(0x108)]['id']),_0x3bc455=await recheckMutationSnapshot(_0x3bd13c,_0x1aaa18,'update\x20folder',_0x1285d5);if(!_0x58d041)try{await updateMenuEntity(_0x3bd13c[_0x3aa41a(0xef)],_0x3bd13c['cookie'],_0x554455);}catch(_0x25a511){const _0x81486a=mapMenuApiError(_0x25a511,'update\x20folder',_0x1285d5);throw menuFailure(_0x81486a,_0x1aaa18,{'stage':_0x3aa41a(0x118),'failed':{'id':_0x1285d5}});}let _0x161b5f=_0x3bc455,_0x19b3d5;try{!_0x58d041&&(_0x161b5f=await fetchMenuSnapshot(_0x3bd13c[_0x3aa41a(0xef)],_0x3bd13c['cookie'])),_0x19b3d5=requireMenu(_0x161b5f,_0x1285d5),verifyPatch(_0x19b3d5,_0x554455),_0x19b3d5[_0x3aa41a(0x101)]!=null&&requireFolder(_0x161b5f,_0x19b3d5[_0x3aa41a(0x101)]);}catch(_0x337637){const _0x592399=describeMenuErrorCause(_0x337637,_0x3aa41a(0x111),_0x1285d5),_0x4c8a54=asVerificationError(_0x337637,'Update\x20request\x20for\x20folder\x20'+_0x1285d5+_0x3aa41a(0x11f));throw menuFailure(_0x4c8a54,_0x1aaa18,{'stage':_0x3aa41a(0x116),'succeeded':[{'id':_0x1285d5,'updateRequested':!_0x58d041,'skipped':_0x58d041}],'failed':{'id':_0x1285d5,'requestedStateConfirmed':![],..._0x592399},'warnings':[_0x3aa41a(0x106)],'verification':{'status':_0x3aa41a(0x113),'lookupCommand':_0x3aa41a(0x10e),'targetId':_0x1285d5}});}const _0x107b04=mutationResult({..._0x1aaa18,'after':_0x19b3d5,'dryRun':![],'succeeded':[{'id':_0x1285d5,'updated':!_0x58d041,'skipped':_0x58d041}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x161b5f[_0x3aa41a(0x117)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x107b04,'message':_0x58d041?_0x3aa41a(0xfb)+_0x1285d5+_0x3aa41a(0x122):_0x3aa41a(0x11b)+_0x1285d5+'.'};}};function validateUpdateInput(_0x2aa49b){const _0x41cff0=a155_0x55bad0;validateExactId(_0x2aa49b);if(hasFlag(_0x2aa49b,_0x41cff0(0x115)))throw CliErrors[_0x41cff0(0x109)](_0x41cff0(0x110),_0x41cff0(0xff));if(!hasFlag(_0x2aa49b,'label')&&!hasFlag(_0x2aa49b,_0x41cff0(0xf0)))throw CliErrors[_0x41cff0(0x109)](_0x41cff0(0xf5));if(hasFlag(_0x2aa49b,_0x41cff0(0x100))&&!_0x2aa49b[_0x41cff0(0x121)](_0x41cff0(0x100))[_0x41cff0(0x107)]())throw CliErrors[_0x41cff0(0x109)](_0x41cff0(0xfe));validateSort(_0x2aa49b);}function a155_0x4dd3(_0x290e2f,_0x579ce6){_0x290e2f=_0x290e2f-0xef;const _0x1194fa=a155_0x1194();let _0x4dd3aa=_0x1194fa[_0x290e2f];return _0x4dd3aa;}async function buildUpdatePlan(_0x45d12b,_0x231dd7){const _0x5cbfe1=a155_0x55bad0,_0x4571eb=validateExactId(_0x45d12b),_0x26cf08=await fetchMutationSnapshot(_0x45d12b,_0x5cbfe1(0x119),_0x4571eb),_0xeb3ab7=requireMenu(_0x26cf08,_0x4571eb);if(_0xeb3ab7[_0x5cbfe1(0xfd)]!==_0x5cbfe1(0xf6))throw menuError('menu_not_folder',_0x5cbfe1(0x10f)+_0x4571eb+_0x5cbfe1(0xf4)+(_0xeb3ab7[_0x5cbfe1(0xfd)]||_0x5cbfe1(0x120))+_0x5cbfe1(0x114),_0x5cbfe1(0xf1));assertExpectedState(_0x45d12b,_0xeb3ab7);const _0x438e31={'id':_0x4571eb},_0x56dd32={..._0xeb3ab7};if(hasFlag(_0x45d12b,'label')){const _0x270c6c=_0x45d12b[_0x5cbfe1(0x121)](_0x5cbfe1(0x100))[_0x5cbfe1(0x107)]();_0x438e31[_0x5cbfe1(0x100)]=_0x270c6c,_0x56dd32[_0x5cbfe1(0x100)]=_0x270c6c;}if(hasFlag(_0x45d12b,_0x5cbfe1(0xf0))){const _0xd2c9b5=validateSort(_0x45d12b);_0x438e31['sort']=_0xd2c9b5,_0x56dd32[_0x5cbfe1(0xf0)]=_0xd2c9b5;}const _0x437f84=sameRequestedState(_0xeb3ab7,_0x56dd32),_0x28b956=_0x437f84?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x438e31,'noChanges':_0x437f84,'plan':mutationResult({'operation':_0x5cbfe1(0xf7),'selector':{'id':_0x4571eb},'before':_0xeb3ab7,'after':_0x56dd32,'dryRun':_0x231dd7,'backend':[...BACKEND],'snapshotHash':_0x26cf08[_0x5cbfe1(0x117)],'warnings':_0x28b956})};}function sameRequestedState(_0x440825,_0x4f433e){const _0x5c1371=a155_0x55bad0;return _0x440825[_0x5c1371(0x100)]===_0x4f433e[_0x5c1371(0x100)]&&_0x440825['sort']===_0x4f433e[_0x5c1371(0xf0)];}function verifyPatch(_0x4c6c14,_0x48eb42){const _0x1df9c9=a155_0x55bad0;assertVerified(_0x4c6c14[_0x1df9c9(0xfd)]===_0x1df9c9(0xf6),_0x1df9c9(0x10f)+_0x4c6c14['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x48eb42[_0x1df9c9(0x100)]!==undefined&&assertVerified(_0x4c6c14['label']===_0x48eb42['label'],_0x1df9c9(0xfb)+_0x4c6c14['id']+_0x1df9c9(0x102)),_0x48eb42[_0x1df9c9(0xf0)]!==undefined&&assertVerified(_0x4c6c14[_0x1df9c9(0xf0)]===_0x48eb42[_0x1df9c9(0xf0)],_0x1df9c9(0xfb)+_0x4c6c14['id']+_0x1df9c9(0xf2));}function a155_0x1194(){const _0x56f32d=['2YPYDyh','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','unknown','str','\x20already\x20matches\x20the\x20requested\x20state.','appCode','sort','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','\x20sort\x20update\x20did\x20not\x20take\x20effect.','40hVTKOh','\x20is\x20type\x20\x22','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','folder','group-update','string','802344QwwrUM','/smartapi/menu/update','Folder\x20','POST','type','--label\x20cannot\x20be\x20empty.','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','label','parentId','\x20label\x20update\x20did\x20not\x20take\x20effect.','44275MbGawL','270896ZCchOQ','429LbhEKa','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','trim','selector','validation','1555704glCCMH','72964vqkUVq','New\x20folder\x20label','45TbCqFI','rabetbase\x20menu\x20list\x20--format\x20json','Menu\x20','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','verify\x20folder\x20update','Would\x20update\x20folder\x20','failed','\x22,\x20not\x20folder.','parent-id','verification','hash','update','update\x20folder','203510BUOjnd','Updated\x20folder\x20','88721DRokag','write'];a155_0x1194=function(){return _0x56f32d;};return a155_0x1194();}
@@ -1 +1 @@
1
- (function(_0x19f493,_0x299811){const _0x5b6ab6=a156_0x1001,_0x1f97e7=_0x19f493();while(!![]){try{const _0x3d8289=-parseInt(_0x5b6ab6(0x110))/0x1*(-parseInt(_0x5b6ab6(0x107))/0x2)+-parseInt(_0x5b6ab6(0x10e))/0x3+parseInt(_0x5b6ab6(0x109))/0x4*(-parseInt(_0x5b6ab6(0x10f))/0x5)+parseInt(_0x5b6ab6(0x10a))/0x6*(parseInt(_0x5b6ab6(0x10d))/0x7)+-parseInt(_0x5b6ab6(0x111))/0x8+parseInt(_0x5b6ab6(0x108))/0x9*(-parseInt(_0x5b6ab6(0x10c))/0xa)+parseInt(_0x5b6ab6(0x10b))/0xb*(parseInt(_0x5b6ab6(0x106))/0xc);if(_0x3d8289===_0x299811)break;else _0x1f97e7['push'](_0x1f97e7['shift']());}catch(_0xb1120f){_0x1f97e7['push'](_0x1f97e7['shift']());}}}(a156_0xd295,0x619ff));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';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';function a156_0x1001(_0x20a5f9,_0x161466){_0x20a5f9=_0x20a5f9-0x106;const _0xd295a0=a156_0xd295();let _0x1001b2=_0xd295a0[_0x20a5f9];return _0x1001b2;}import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];function a156_0xd295(){const _0x1f6d3f=['1571745VRWGOO','324574rYmskd','571016VNhKfD','21612DlOfCB','2sxHTZU','4697649fLTxXW','4rCxKkn','138eWROCM','8118sOlEZi','10TPxFPV','88942sqNrUf','1915176tvXerS'];a156_0xd295=function(){return _0x1f6d3f;};return a156_0xd295();}
1
+ (function(_0x3ddff0,_0x123038){const _0x55f73d=a156_0x5966,_0x354e02=_0x3ddff0();while(!![]){try{const _0x54ab3e=parseInt(_0x55f73d(0x103))/0x1+-parseInt(_0x55f73d(0x108))/0x2*(-parseInt(_0x55f73d(0x102))/0x3)+parseInt(_0x55f73d(0x105))/0x4*(parseInt(_0x55f73d(0x107))/0x5)+parseInt(_0x55f73d(0x10b))/0x6+-parseInt(_0x55f73d(0x106))/0x7*(parseInt(_0x55f73d(0x109))/0x8)+-parseInt(_0x55f73d(0x10a))/0x9+-parseInt(_0x55f73d(0x104))/0xa;if(_0x54ab3e===_0x123038)break;else _0x354e02['push'](_0x354e02['shift']());}catch(_0x24edfc){_0x354e02['push'](_0x354e02['shift']());}}}(a156_0x1719,0xdd6ba));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';function a156_0x5966(_0x3fd752,_0x160d5c){_0x3fd752=_0x3fd752-0x102;const _0x17197d=a156_0x1719();let _0x596683=_0x17197d[_0x3fd752];return _0x596683;}function a156_0x1719(){const _0x311464=['33332CVmyMX','45544EvQebL','6608907vTWlgy','4211064qxwSMx','45xCXFsv','1106964zuKLib','7229100GkxtfL','244WVePsH','1428HtdvLX','120225FBMAXw'];a156_0x1719=function(){return _0x311464;};return a156_0x1719();}import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
@@ -1 +1 @@
1
- const a157_0x375784=a157_0x4394;(function(_0x2e8e4d,_0x19fd87){const _0x329f26=a157_0x4394,_0x365dd0=_0x2e8e4d();while(!![]){try{const _0xd8319f=parseInt(_0x329f26(0x124))/0x1+-parseInt(_0x329f26(0x11e))/0x2*(parseInt(_0x329f26(0x127))/0x3)+-parseInt(_0x329f26(0x120))/0x4+parseInt(_0x329f26(0x121))/0x5+-parseInt(_0x329f26(0x122))/0x6+-parseInt(_0x329f26(0x125))/0x7*(parseInt(_0x329f26(0x11f))/0x8)+parseInt(_0x329f26(0x128))/0x9;if(_0xd8319f===_0x19fd87)break;else _0x365dd0['push'](_0x365dd0['shift']());}catch(_0x1577e5){_0x365dd0['push'](_0x365dd0['shift']());}}}(a157_0xf99b,0xc313b));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';function a157_0xf99b(){const _0x16d84d=['total','menus','No\x20menus\x20found.','menu','6ecnduk','160lOnENF','208896zSebOQ','5833880HesOgD','9205356wsWZwZ','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','1024398TdRVCT','543928sZBFgL','Found\x20','169599KtrKND','17261910lMPujQ','map','verbose','\x20menu(s)','bool'];a157_0xf99b=function(){return _0x16d84d;};return a157_0xf99b();}function a157_0x4394(_0x143a8c,_0x17a327){_0x143a8c=_0x143a8c-0x117;const _0xf99bec=a157_0xf99b();let _0x439454=_0xf99bec[_0x143a8c];return _0x439454;}export const menuList={'service':a157_0x375784(0x11d),'command':'list','description':a157_0x375784(0x123),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a157_0x375784(0x117),'type':'boolean','description':'Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing'}],async 'execute'(_0x30382d){const _0x1e75e7=a157_0x375784,_0x99c4c5=_0x30382d[_0x1e75e7(0x119)](_0x1e75e7(0x117)),_0x45bfdf=await fetchMenuSnapshot(_0x30382d['appCode'],_0x30382d['cookie'],{'verbose':_0x99c4c5});return{'ok':!![],'data':{'total':_0x45bfdf[_0x1e75e7(0x11a)],'snapshotHash':_0x45bfdf['hash'],'menus':_0x45bfdf[_0x1e75e7(0x11b)][_0x1e75e7(0x129)](toMenuListItem)},'message':_0x45bfdf[_0x1e75e7(0x11a)]===0x0?_0x1e75e7(0x11c):_0x1e75e7(0x126)+_0x45bfdf[_0x1e75e7(0x11a)]+_0x1e75e7(0x118)};}};
1
+ const a157_0xae9cb7=a157_0x2a5f;(function(_0x1391b3,_0x456efc){const _0xbaa6b8=a157_0x2a5f,_0x32d3a3=_0x1391b3();while(!![]){try{const _0x4fb492=-parseInt(_0xbaa6b8(0xc5))/0x1*(-parseInt(_0xbaa6b8(0xdc))/0x2)+-parseInt(_0xbaa6b8(0xd6))/0x3*(parseInt(_0xbaa6b8(0xd7))/0x4)+-parseInt(_0xbaa6b8(0xc6))/0x5*(parseInt(_0xbaa6b8(0xd8))/0x6)+-parseInt(_0xbaa6b8(0xcb))/0x7*(parseInt(_0xbaa6b8(0xc8))/0x8)+-parseInt(_0xbaa6b8(0xd9))/0x9+-parseInt(_0xbaa6b8(0xda))/0xa+parseInt(_0xbaa6b8(0xd4))/0xb*(parseInt(_0xbaa6b8(0xdb))/0xc);if(_0x4fb492===_0x456efc)break;else _0x32d3a3['push'](_0x32d3a3['shift']());}catch(_0x474956){_0x32d3a3['push'](_0x32d3a3['shift']());}}}(a157_0x2ac1,0xcfe42));function a157_0x2ac1(){const _0x440b4c=['1191lWmSBz','3820745SzDkDx','read','165080mSTmBS','hash','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','217WERxJh','cookie','total','bool','menu','verbose','Found\x20','appCode','No\x20menus\x20found.','473IGpcJJ','map','28548lgPCXD','4FehkJr','12SFmmVv','5491350XchRgo','5843970ukLLpB','1151748EvwgFy','162lCrjFr'];a157_0x2ac1=function(){return _0x440b4c;};return a157_0x2ac1();}function a157_0x2a5f(_0x96dc4c,_0x5599ee){_0x96dc4c=_0x96dc4c-0xc5;const _0x2ac137=a157_0x2ac1();let _0x2a5fed=_0x2ac137[_0x96dc4c];return _0x2a5fed;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a157_0xae9cb7(0xcf),'command':'list','description':a157_0xae9cb7(0xca),'risk':a157_0xae9cb7(0xc7),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a157_0xae9cb7(0xd0),'type':'boolean','description':'Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing'}],async 'execute'(_0x1bf76f){const _0xe60791=a157_0xae9cb7,_0x4463c6=_0x1bf76f[_0xe60791(0xce)](_0xe60791(0xd0)),_0x5b2bb3=await fetchMenuSnapshot(_0x1bf76f[_0xe60791(0xd2)],_0x1bf76f[_0xe60791(0xcc)],{'verbose':_0x4463c6});return{'ok':!![],'data':{'total':_0x5b2bb3['total'],'snapshotHash':_0x5b2bb3[_0xe60791(0xc9)],'menus':_0x5b2bb3['menus'][_0xe60791(0xd5)](toMenuListItem)},'message':_0x5b2bb3[_0xe60791(0xcd)]===0x0?_0xe60791(0xd3):_0xe60791(0xd1)+_0x5b2bb3[_0xe60791(0xcd)]+'\x20menu(s)'};}};
@@ -1 +1 @@
1
- const a158_0x2e0417=a158_0x3a12;(function(_0x2a2683,_0x303c95){const _0x20a20d=a158_0x3a12,_0x2a36d6=_0x2a2683();while(!![]){try{const _0x3827cb=parseInt(_0x20a20d(0x99))/0x1*(-parseInt(_0x20a20d(0x9a))/0x2)+-parseInt(_0x20a20d(0xa0))/0x3*(-parseInt(_0x20a20d(0x98))/0x4)+parseInt(_0x20a20d(0x97))/0x5*(parseInt(_0x20a20d(0xa3))/0x6)+parseInt(_0x20a20d(0xb5))/0x7+parseInt(_0x20a20d(0x9e))/0x8*(-parseInt(_0x20a20d(0xb9))/0x9)+parseInt(_0x20a20d(0xad))/0xa*(-parseInt(_0x20a20d(0xb0))/0xb)+parseInt(_0x20a20d(0x96))/0xc*(parseInt(_0x20a20d(0xb7))/0xd);if(_0x3827cb===_0x303c95)break;else _0x2a36d6['push'](_0x2a36d6['shift']());}catch(_0x34edc2){_0x2a36d6['push'](_0x2a36d6['shift']());}}}(a158_0x4c8f,0xeaaac));function a158_0x4c8f(){const _0x1ec4a3=['folder','childrenCount','\x20parent\x20changed:\x20expected\x20','expect-parent-id','Menu\x20','5070SZJxaC',',\x20current\x20','/smartapi/menu/update','31284VlbUDE','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','\x20is\x20no\x20longer\x20a\x20leaf.','verification','Move\x20request\x20for\x20menu\x20','2829554HJtRrR','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','506363edpQRJ','cookie','2852289rhIdzk','verify\x20menu\x20move','type','menu\x20list','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','menu_state_drift','move-menu','appCode','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','\x20is\x20now\x20type\x20folder.','POST','parentId','600svJeRF','5aXwSqj','49376fSItNJ','68lzjnCF','12860HOEaZo','rabetbase\x20menu\x20list\x20--format\x20compress','sort','move','32Jsnzlt','hash','39fXNlHC','parent-id','move\x20menu','9574704vCsOFi','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','failed','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','update'];a158_0x4c8f=function(){return _0x1ec4a3;};return a158_0x4c8f();}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';function a158_0x3a12(_0x1b51f4,_0x1eac36){_0x1b51f4=_0x1b51f4-0x91;const _0x4c8f9c=a158_0x4c8f();let _0x3a12c0=_0x4c8f9c[_0x1b51f4];return _0x3a12c0;}const BACKEND=[{'method':a158_0x2e0417(0x94),'path':a158_0x2e0417(0xaf)}];export const menuMove={'service':'menu','command':a158_0x2e0417(0x9d),'description':a158_0x2e0417(0xb6),'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'(_0x3603df){validateMoveInput(_0x3603df);},async 'dryRun'(_0x57ddec){const _0x24eaad=a158_0x2e0417,{plan:_0xfc759d,patch:_0xd96a60}=await buildMovePlan(_0x57ddec,!![]);return menuDryRunResult(_0xfc759d,{'method':_0x24eaad(0x94),'url':_0x24eaad(0xaf),'body':{..._0xd96a60,'appCode':_0x57ddec[_0x24eaad(0x91)]},'description':'Would\x20move\x20menu\x20'+_0xd96a60['id']+'.'});},async 'execute'(_0x401a37){const _0x44a8ac=a158_0x2e0417;validateMoveInput(_0x401a37);const {plan:_0x4ecc4c,patch:_0x1ced3b,noChanges:_0x14deeb,snapshot:_0x17b298}=await buildMovePlan(_0x401a37,![]),_0xd0b2c9=_0x1ced3b['id'];if(!_0x14deeb)try{await updateMenuEntity(_0x401a37[_0x44a8ac(0x91)],_0x401a37[_0x44a8ac(0xb8)],_0x1ced3b);}catch(_0x420734){const _0x13406a=mapMenuApiError(_0x420734,_0x44a8ac(0x9d),_0xd0b2c9);throw menuFailure(_0x13406a,_0x4ecc4c,{'stage':_0x44a8ac(0xa7),'failed':{'id':_0xd0b2c9},'warnings':['The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x44a8ac(0xa5),'targetId':_0xd0b2c9,'lookupCommand':_0x44a8ac(0x9b)}});}let _0x4f8644,_0x5f50aa;try{_0x4f8644=_0x14deeb?_0x17b298:await fetchMenuSnapshot(_0x401a37[_0x44a8ac(0x91)],_0x401a37[_0x44a8ac(0xb8)]),_0x5f50aa=requireMenu(_0x4f8644,_0xd0b2c9),verifyMove(_0x5f50aa,_0x4ecc4c['after']),_0x5f50aa['parentId']!==null&&requireFolder(_0x4f8644,_0x5f50aa[_0x44a8ac(0x95)]);}catch(_0x8f88d1){const _0x1eff7b=describeMenuErrorCause(_0x8f88d1,_0x44a8ac(0xba),_0xd0b2c9),_0x586a4f=asVerificationError(_0x8f88d1,_0x44a8ac(0xb4)+_0xd0b2c9+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x586a4f,_0x4ecc4c,{'stage':_0x44a8ac(0xb3),'succeeded':[{'id':_0xd0b2c9,'updateRequested':!_0x14deeb,'skipped':_0x14deeb}],'failed':{'id':_0xd0b2c9,'requestedStateConfirmed':![],..._0x1eff7b},'warnings':[_0x44a8ac(0xb1)],'verification':{'status':_0x44a8ac(0xa5),'targetId':_0xd0b2c9,'lookupCommand':_0x44a8ac(0x9b)}});}const _0x5b3853=mutationResult({..._0x4ecc4c,'after':_0x5f50aa,'dryRun':![],'succeeded':[{'id':_0xd0b2c9,'updated':!_0x14deeb,'skipped':_0x14deeb}],'verification':{'checkedBy':_0x44a8ac(0xbc),'snapshotHash':_0x4f8644['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x5b3853,'message':_0x14deeb?_0x44a8ac(0xac)+_0xd0b2c9+_0x44a8ac(0xa4):'Moved\x20menu\x20'+_0xd0b2c9+'.'};}};function validateMoveInput(_0x3875f8){const _0x40fb2b=a158_0x2e0417;validateExactId(_0x3875f8),parseParentId(_0x3875f8,'parent-id',{'required':!![]}),parseParentId(_0x3875f8,_0x40fb2b(0xab),{'required':!![]}),validateSort(_0x3875f8);}async function buildMovePlan(_0x1085f2,_0x21fafb){const _0x281c28=a158_0x2e0417,_0x5b3c3b=validateExactId(_0x1085f2),_0x586c5c=parseParentId(_0x1085f2,_0x281c28(0xa1),{'required':!![]}),_0x3956b4=parseParentId(_0x1085f2,_0x281c28(0xab),{'required':!![]}),_0x536826=validateSort(_0x1085f2),_0x57cb05=await fetchMutationSnapshot(_0x1085f2,_0x281c28(0xa2),_0x5b3c3b),_0x3703f2=requireMenu(_0x57cb05,_0x5b3c3b);if(_0x3703f2[_0x281c28(0xbb)]===_0x281c28(0xa8)||_0x3703f2['childrenCount']!==0x0)throw menuError('menu_move_source_not_leaf',_0x281c28(0xac)+_0x5b3c3b+_0x281c28(0xbd),_0x281c28(0xa6));if(_0x3703f2['parentId']!==_0x3956b4)throw menuError(_0x281c28(0xbe),_0x281c28(0xac)+_0x5b3c3b+_0x281c28(0xaa)+formatParent(_0x3956b4)+_0x281c28(0xae)+formatParent(_0x3703f2[_0x281c28(0x95)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');_0x586c5c!==null&&requireFolder(_0x57cb05,_0x586c5c);const _0x180e05=_0x536826??(_0x3703f2[_0x281c28(0x95)]===_0x586c5c?_0x3703f2['sort']??0x0:nextSiblingSort(_0x57cb05,_0x586c5c,'menu')),_0x2ac874={..._0x3703f2,'parentId':_0x586c5c,'sort':_0x180e05},_0x4c7f4e={'id':_0x5b3c3b,'parentId':toApiParentId(_0x586c5c),'sort':_0x180e05},_0x35c21a=_0x3703f2[_0x281c28(0x95)]===_0x586c5c&&_0x3703f2[_0x281c28(0x9c)]===_0x180e05;return{'patch':_0x4c7f4e,'noChanges':_0x35c21a,'snapshot':_0x57cb05,'plan':mutationResult({'operation':_0x281c28(0x9d),'selector':{'id':_0x5b3c3b,'parentId':_0x586c5c},'before':_0x3703f2,'after':_0x2ac874,'dryRun':_0x21fafb,'backend':[...BACKEND],'plannedActions':[{'stage':_0x281c28(0xbf),'method':_0x281c28(0x94),'path':_0x281c28(0xaf),'body':{..._0x4c7f4e,'appCode':_0x1085f2[_0x281c28(0x91)]}}],'snapshotHash':_0x57cb05[_0x281c28(0x9f)],'warnings':_0x35c21a?['Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.']:[]})};}function verifyMove(_0x17f2ed,_0x20cf5e){const _0x1ace27=a158_0x2e0417;assertVerified(_0x17f2ed['type']!==_0x1ace27(0xa8),_0x1ace27(0xac)+_0x17f2ed['id']+_0x1ace27(0x93)),assertVerified(_0x17f2ed[_0x1ace27(0xa9)]===0x0,_0x1ace27(0xac)+_0x17f2ed['id']+_0x1ace27(0xb2)),assertVerified(_0x17f2ed[_0x1ace27(0x95)]===_0x20cf5e[_0x1ace27(0x95)],_0x1ace27(0xac)+_0x17f2ed['id']+'\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.'),assertVerified(_0x17f2ed[_0x1ace27(0x9c)]===_0x20cf5e[_0x1ace27(0x9c)],'Menu\x20'+_0x17f2ed['id']+_0x1ace27(0x92));}
1
+ const a158_0x426fd6=a158_0x54c5;(function(_0x16eb16,_0x375056){const _0x407e2e=a158_0x54c5,_0x149f1f=_0x16eb16();while(!![]){try{const _0x29e18f=parseInt(_0x407e2e(0xd5))/0x1+parseInt(_0x407e2e(0xdb))/0x2*(parseInt(_0x407e2e(0xcc))/0x3)+-parseInt(_0x407e2e(0xde))/0x4*(parseInt(_0x407e2e(0xdf))/0x5)+parseInt(_0x407e2e(0xe6))/0x6*(parseInt(_0x407e2e(0xeb))/0x7)+parseInt(_0x407e2e(0xe9))/0x8+-parseInt(_0x407e2e(0xdd))/0x9*(parseInt(_0x407e2e(0xe8))/0xa)+-parseInt(_0x407e2e(0xda))/0xb;if(_0x29e18f===_0x375056)break;else _0x149f1f['push'](_0x149f1f['shift']());}catch(_0x37703a){_0x149f1f['push'](_0x149f1f['shift']());}}}(a158_0x2d01,0x6a93b));function a158_0x54c5(_0x2fc634,_0x32ddbb){_0x2fc634=_0x2fc634-0xcb;const _0x2d01d1=a158_0x2d01();let _0x54c5f5=_0x2d01d1[_0x2fc634];return _0x54c5f5;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':a158_0x426fd6(0xd9),'path':'/smartapi/menu/update'}];export const menuMove={'service':a158_0x426fd6(0xd0),'command':a158_0x426fd6(0xce),'description':a158_0x426fd6(0xed),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x30ae87){validateMoveInput(_0x30ae87);},async 'dryRun'(_0x224eae){const _0x1e3c2e=a158_0x426fd6,{plan:_0x26f63c,patch:_0x43a853}=await buildMovePlan(_0x224eae,!![]);return menuDryRunResult(_0x26f63c,{'method':_0x1e3c2e(0xd9),'url':_0x1e3c2e(0xef),'body':{..._0x43a853,'appCode':_0x224eae[_0x1e3c2e(0xe0)]},'description':'Would\x20move\x20menu\x20'+_0x43a853['id']+'.'});},async 'execute'(_0x48289c){const _0x4bb6cc=a158_0x426fd6;validateMoveInput(_0x48289c);const {plan:_0x15c28b,patch:_0x5477e3,noChanges:_0x487bb1,snapshot:_0x260c01}=await buildMovePlan(_0x48289c,![]),_0x7de33d=_0x5477e3['id'];if(!_0x487bb1)try{await updateMenuEntity(_0x48289c[_0x4bb6cc(0xe0)],_0x48289c[_0x4bb6cc(0xf9)],_0x5477e3);}catch(_0x3bee9c){const _0x3623f2=mapMenuApiError(_0x3bee9c,_0x4bb6cc(0xce),_0x7de33d);throw menuFailure(_0x3623f2,_0x15c28b,{'stage':_0x4bb6cc(0xd2),'failed':{'id':_0x7de33d},'warnings':[_0x4bb6cc(0xcf)],'verification':{'status':_0x4bb6cc(0xcb),'targetId':_0x7de33d,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0x43cecf,_0xc3a7f;try{_0x43cecf=_0x487bb1?_0x260c01:await fetchMenuSnapshot(_0x48289c[_0x4bb6cc(0xe0)],_0x48289c[_0x4bb6cc(0xf9)]),_0xc3a7f=requireMenu(_0x43cecf,_0x7de33d),verifyMove(_0xc3a7f,_0x15c28b['after']),_0xc3a7f[_0x4bb6cc(0xe4)]!==null&&requireFolder(_0x43cecf,_0xc3a7f[_0x4bb6cc(0xe4)]);}catch(_0x53a7f6){const _0x4844ed=describeMenuErrorCause(_0x53a7f6,_0x4bb6cc(0xd6),_0x7de33d),_0x4bee35=asVerificationError(_0x53a7f6,_0x4bb6cc(0xf6)+_0x7de33d+_0x4bb6cc(0xcd));throw menuFailure(_0x4bee35,_0x15c28b,{'stage':'verification','succeeded':[{'id':_0x7de33d,'updateRequested':!_0x487bb1,'skipped':_0x487bb1}],'failed':{'id':_0x7de33d,'requestedStateConfirmed':![],..._0x4844ed},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x4bb6cc(0xcb),'targetId':_0x7de33d,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x24d6be=mutationResult({..._0x15c28b,'after':_0xc3a7f,'dryRun':![],'succeeded':[{'id':_0x7de33d,'updated':!_0x487bb1,'skipped':_0x487bb1}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x43cecf[_0x4bb6cc(0xe5)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x24d6be,'message':_0x487bb1?_0x4bb6cc(0xec)+_0x7de33d+_0x4bb6cc(0xf3):'Moved\x20menu\x20'+_0x7de33d+'.'};}};function validateMoveInput(_0x503a14){const _0x1ad381=a158_0x426fd6;validateExactId(_0x503a14),parseParentId(_0x503a14,_0x1ad381(0xf7),{'required':!![]}),parseParentId(_0x503a14,'expect-parent-id',{'required':!![]}),validateSort(_0x503a14);}async function buildMovePlan(_0x232f8e,_0x2626ef){const _0x18eb6c=a158_0x426fd6,_0x3de615=validateExactId(_0x232f8e),_0x2dce17=parseParentId(_0x232f8e,_0x18eb6c(0xf7),{'required':!![]}),_0x3208ae=parseParentId(_0x232f8e,_0x18eb6c(0xe1),{'required':!![]}),_0x88fac7=validateSort(_0x232f8e),_0x514a5e=await fetchMutationSnapshot(_0x232f8e,_0x18eb6c(0xea),_0x3de615),_0x304cdc=requireMenu(_0x514a5e,_0x3de615);if(_0x304cdc[_0x18eb6c(0xf8)]===_0x18eb6c(0xd4)||_0x304cdc[_0x18eb6c(0xe3)]!==0x0)throw menuError(_0x18eb6c(0xe7),'Menu\x20'+_0x3de615+_0x18eb6c(0xf4),_0x18eb6c(0xf1));if(_0x304cdc['parentId']!==_0x3208ae)throw menuError('menu_state_drift',_0x18eb6c(0xec)+_0x3de615+_0x18eb6c(0xd7)+formatParent(_0x3208ae)+_0x18eb6c(0xf2)+formatParent(_0x304cdc[_0x18eb6c(0xe4)])+'.',_0x18eb6c(0xf5));_0x2dce17!==null&&requireFolder(_0x514a5e,_0x2dce17);const _0x21730e=_0x88fac7??(_0x304cdc[_0x18eb6c(0xe4)]===_0x2dce17?_0x304cdc[_0x18eb6c(0xd1)]??0x0:nextSiblingSort(_0x514a5e,_0x2dce17,_0x18eb6c(0xd0))),_0x4965f4={..._0x304cdc,'parentId':_0x2dce17,'sort':_0x21730e},_0x27167a={'id':_0x3de615,'parentId':toApiParentId(_0x2dce17),'sort':_0x21730e},_0x192642=_0x304cdc[_0x18eb6c(0xe4)]===_0x2dce17&&_0x304cdc[_0x18eb6c(0xd1)]===_0x21730e;return{'patch':_0x27167a,'noChanges':_0x192642,'snapshot':_0x514a5e,'plan':mutationResult({'operation':_0x18eb6c(0xce),'selector':{'id':_0x3de615,'parentId':_0x2dce17},'before':_0x304cdc,'after':_0x4965f4,'dryRun':_0x2626ef,'backend':[...BACKEND],'plannedActions':[{'stage':_0x18eb6c(0xf0),'method':_0x18eb6c(0xd9),'path':_0x18eb6c(0xef),'body':{..._0x27167a,'appCode':_0x232f8e[_0x18eb6c(0xe0)]}}],'snapshotHash':_0x514a5e[_0x18eb6c(0xe5)],'warnings':_0x192642?[_0x18eb6c(0xdc)]:[]})};}function a158_0x2d01(){const _0x25c40c=['sort','update','\x20is\x20no\x20longer\x20a\x20leaf.','folder','695952srAvdd','verify\x20menu\x20move','\x20parent\x20changed:\x20expected\x20','\x20is\x20now\x20type\x20folder.','POST','4902117qLxLrJ','176844hjQFWm','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','27eAJymp','4iEQdxP','1607885LQLeNZ','appCode','expect-parent-id','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','childrenCount','parentId','hash','2916366okjcBu','menu_move_source_not_leaf','2346250ffKJzf','3682872OhDsxY','move\x20menu','7WAdVlF','Menu\x20','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','/smartapi/menu/update','move-menu','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.',',\x20current\x20','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Move\x20request\x20for\x20menu\x20','parent-id','type','cookie','failed','9JAWmhz','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','move','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu'];a158_0x2d01=function(){return _0x25c40c;};return a158_0x2d01();}function verifyMove(_0x1179f7,_0x52265c){const _0x49423f=a158_0x426fd6;assertVerified(_0x1179f7[_0x49423f(0xf8)]!=='folder',_0x49423f(0xec)+_0x1179f7['id']+_0x49423f(0xd8)),assertVerified(_0x1179f7[_0x49423f(0xe3)]===0x0,_0x49423f(0xec)+_0x1179f7['id']+_0x49423f(0xd3)),assertVerified(_0x1179f7[_0x49423f(0xe4)]===_0x52265c[_0x49423f(0xe4)],_0x49423f(0xec)+_0x1179f7['id']+_0x49423f(0xe2)),assertVerified(_0x1179f7[_0x49423f(0xd1)]===_0x52265c[_0x49423f(0xd1)],'Menu\x20'+_0x1179f7['id']+_0x49423f(0xee));}