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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (372) 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/feishu-bind.d.ts +2 -0
  251. package/lib/commands/user-account/feishu-bind.js +1 -0
  252. package/lib/commands/user-account/index.js +1 -1
  253. package/lib/commands/workspace/add.js +1 -1
  254. package/lib/commands/workspace/index.js +1 -1
  255. package/lib/commands/workspace/remove.js +1 -1
  256. package/lib/config/domain-config.d.ts +1 -1
  257. package/lib/config/domain-config.js +1 -1
  258. package/lib/config/project-domain-routing.js +1 -1
  259. package/lib/config/region-config.js +1 -1
  260. package/lib/config/schema.d.ts +1 -1
  261. package/lib/config/schema.js +1 -1
  262. package/lib/constant/cdn.js +1 -1
  263. package/lib/constant/cli.js +1 -1
  264. package/lib/constant/defaults.js +1 -1
  265. package/lib/constant/domain.d.ts +4 -0
  266. package/lib/constant/domain.js +1 -1
  267. package/lib/constant/env.js +1 -1
  268. package/lib/constant/output.js +1 -1
  269. package/lib/constant/paths.js +1 -1
  270. package/lib/constant/region.d.ts +1 -1
  271. package/lib/constant/region.js +1 -1
  272. package/lib/constant/risk.js +1 -1
  273. package/lib/constant/routing-profile.d.ts +14 -1
  274. package/lib/constant/routing-profile.js +1 -1
  275. package/lib/context/app-resolver.d.ts +1 -0
  276. package/lib/context/app-resolver.js +1 -1
  277. package/lib/context/auth-resolver.js +1 -1
  278. package/lib/context/config-loader.js +1 -1
  279. package/lib/context.js +1 -1
  280. package/lib/core/alias-resolver.js +1 -1
  281. package/lib/core/api-client.d.ts +2 -0
  282. package/lib/core/api-client.js +1 -1
  283. package/lib/core/bff/config.js +1 -1
  284. package/lib/core/bff/file-system.js +1 -1
  285. package/lib/core/bff/hash.js +1 -1
  286. package/lib/core/bff/hook-directory.js +1 -1
  287. package/lib/core/bff/lock.js +1 -1
  288. package/lib/core/bff/utils.js +1 -1
  289. package/lib/core/cross-db-relation.js +1 -1
  290. package/lib/core/db-resolver.js +1 -1
  291. package/lib/core/flow-config.js +1 -1
  292. package/lib/core/instant-api-policy/config.js +1 -1
  293. package/lib/core/kb-search-client.js +1 -1
  294. package/lib/core/page/file-system.js +1 -1
  295. package/lib/core/page/hash.js +1 -1
  296. package/lib/core/page/lock.js +1 -1
  297. package/lib/core/page/lr-smart-jsx.js +1 -1
  298. package/lib/core/sql-index-auditor.js +1 -1
  299. package/lib/core/sql-sync/config.js +1 -1
  300. package/lib/core/sql-sync/file-system.js +1 -1
  301. package/lib/core/sql-sync/hash.js +1 -1
  302. package/lib/core/sql-sync/lock.js +1 -1
  303. package/lib/core/sql-sync/utils.js +1 -1
  304. package/lib/core/sql-validator.js +1 -1
  305. package/lib/errors.js +1 -1
  306. package/lib/framework/build-all-flags.js +1 -1
  307. package/lib/framework/error-output.js +1 -1
  308. package/lib/framework/explicit-yes.js +1 -1
  309. package/lib/framework/flags.js +1 -1
  310. package/lib/framework/help.js +1 -1
  311. package/lib/framework/index.js +1 -1
  312. package/lib/framework/output.js +1 -1
  313. package/lib/framework/response.js +1 -1
  314. package/lib/framework/runner-alias.js +1 -1
  315. package/lib/framework/runner.js +1 -1
  316. package/lib/framework/schema-export.js +1 -1
  317. package/lib/framework/supported-flags.js +1 -1
  318. package/lib/framework/types.js +1 -1
  319. package/lib/generated/build-info.d.ts +4 -4
  320. package/lib/generated/build-info.js +1 -1
  321. package/lib/generated/official-routing.d.ts +15 -3
  322. package/lib/generated/official-routing.js +1 -1
  323. package/lib/generated/routing-contract.d.ts +2 -2
  324. package/lib/generated/routing-contract.js +1 -1
  325. package/lib/help.js +1 -1
  326. package/lib/postinstall.js +1 -1
  327. package/lib/runtime/confirmation.js +1 -1
  328. package/lib/runtime/event.js +1 -1
  329. package/lib/runtime/index.js +1 -1
  330. package/lib/runtime/queue.js +1 -1
  331. package/lib/runtime/resolve.js +1 -1
  332. package/lib/skills/builtin-skill.js +1 -1
  333. package/lib/skills/main.js +1 -1
  334. package/lib/skills/npx-skills-add.d.ts +5 -0
  335. package/lib/skills/npx-skills-add.js +1 -1
  336. package/lib/skills/skill-presence.js +1 -1
  337. package/lib/telemetry/cli-command-trace.js +1 -1
  338. package/lib/telemetry/cli-help-trace.js +1 -1
  339. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  340. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  341. package/lib/telemetry/send-cli-trace-log.js +1 -1
  342. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  343. package/lib/utils/ai_config.js +1 -1
  344. package/lib/utils/apply-jq-filter.js +1 -1
  345. package/lib/utils/cdn-config.js +1 -1
  346. package/lib/utils/check-sdk-version.js +1 -1
  347. package/lib/utils/cli-version-check.js +1 -1
  348. package/lib/utils/cli-version-policy.js +1 -1
  349. package/lib/utils/config.js +1 -1
  350. package/lib/utils/entity-with-id.js +1 -1
  351. package/lib/utils/file-utils.js +1 -1
  352. package/lib/utils/guides-cdn.js +1 -1
  353. package/lib/utils/http-client.js +1 -1
  354. package/lib/utils/is-non-interactive.js +1 -1
  355. package/lib/utils/logger.js +1 -1
  356. package/lib/utils/params.js +1 -1
  357. package/lib/utils/platform.js +1 -1
  358. package/lib/utils/sleep.js +1 -1
  359. package/lib/utils/template-replacer.js +1 -1
  360. package/lib/utils/update-notice.js +1 -1
  361. package/lib/utils/version.js +1 -1
  362. package/lib/utils/with-active-cookie.js +1 -1
  363. package/lib/utils/write-cli-side-channel.js +1 -1
  364. package/package.json +1 -1
  365. package/skills/rabetbase/SKILL.md +4 -3
  366. package/skills/rabetbase/guides/sql-creation-workflow.md +1 -1
  367. package/skills/rabetbase/guides/sql-mybatis.md +12 -8
  368. package/skills/rabetbase/references/rabetbase-config.md +6 -4
  369. package/skills/rabetbase/references/rabetbase-init.md +7 -5
  370. package/skills/rabetbase/references/rabetbase-kb.md +8 -6
  371. package/skills/rabetbase/references/rabetbase-user-account.md +20 -2
  372. 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_0x6c065c=a151_0x2d2c;(function(_0x437e89,_0x4021e0){const _0x347a9d=a151_0x2d2c,_0x623884=_0x437e89();while(!![]){try{const _0xd5ed60=parseInt(_0x347a9d(0xfe))/0x1+-parseInt(_0x347a9d(0xc1))/0x2*(-parseInt(_0x347a9d(0x117))/0x3)+parseInt(_0x347a9d(0xe5))/0x4+parseInt(_0x347a9d(0xe6))/0x5+parseInt(_0x347a9d(0xc7))/0x6+parseInt(_0x347a9d(0xf4))/0x7*(parseInt(_0x347a9d(0xb9))/0x8)+-parseInt(_0x347a9d(0x124))/0x9;if(_0xd5ed60===_0x4021e0)break;else _0x623884['push'](_0x623884['shift']());}catch(_0x46b09e){_0x623884['push'](_0x623884['shift']());}}}(a151_0x3360,0xdcaf0));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';function a151_0x2d2c(_0x5ad873,_0xc6cd3){_0x5ad873=_0x5ad873-0xb6;const _0x3360df=a151_0x3360();let _0x2d2c9b=_0x3360df[_0x5ad873];return _0x2d2c9b;}import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a151_0x6c065c(0xe9),'path':a151_0x6c065c(0xfa)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':a151_0x6c065c(0xf7),'type':a151_0x6c065c(0x11a),'description':a151_0x6c065c(0x108)},MENU_DELETE_PLAN_OUT_FLAG={'name':a151_0x6c065c(0x116),'type':a151_0x6c065c(0xd3),'description':a151_0x6c065c(0x128)},MENU_DELETE_PLAN_FLAG={'name':a151_0x6c065c(0x11f),'type':a151_0x6c065c(0xd3),'description':a151_0x6c065c(0x122)};export const menuDelete={'service':'menu','command':a151_0x6c065c(0x10a),'description':a151_0x6c065c(0x126),'risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x46287f){const _0x3e42c5=a151_0x6c065c;_0x46287f[_0x3e42c5(0x110)](_0x3e42c5(0xbe))?validateDeleteDryRunInput(_0x46287f):validateDeleteExecuteInput(_0x46287f),requireExplicitYes(_0x46287f);},async 'dryRun'(_0x36ad8c){const _0x1ff730=a151_0x6c065c;validateDeleteDryRunInput(_0x36ad8c);const _0x4526ed=await buildDeletePlan(_0x36ad8c),_0x2317db=createMenuDeletePlanFile(_0x36ad8c[_0x1ff730(0xdf)],_0x4526ed),_0x547b06=await writeMenuDeletePlan(_0x36ad8c['str'](_0x1ff730(0x116)),_0x2317db),_0x65c29c=mutationResult({..._0x4526ed,'planFile':{'path':_0x547b06,'createdAt':_0x2317db[_0x1ff730(0x10f)],'expiresAt':_0x2317db[_0x1ff730(0xe8)]}});return menuDryRunResult(_0x65c29c,{'method':_0x1ff730(0xe9),'url':_0x1ff730(0xfa),'body':{'idList':_0x65c29c[_0x1ff730(0xfc)]},'description':_0x1ff730(0xea)+(_0x65c29c[_0x1ff730(0xfc)]?.[_0x1ff730(0xcc)]??0x1)+_0x1ff730(0x102)+_0x65c29c['selector']['id']+';\x20execution\x20must\x20consume\x20'+_0x547b06+'.'});},async 'execute'(_0x155697){const _0x27d528=a151_0x6c065c;requireExplicitYes(_0x155697),validateDeleteExecuteInput(_0x155697);const _0x422070=await readMenuDeletePlan(_0x155697[_0x27d528(0xcb)](_0x27d528(0x11f))),_0x55273b=mutationPlanFromDeleteFile(_0x422070[_0x27d528(0x11f)],_0x422070['path']),_0x111dc5=_0x422070[_0x27d528(0x11f)]['target']['id'];try{assertMenuDeletePlanExecutable(_0x422070[_0x27d528(0x11f)],_0x155697['appCode']);}catch(_0x36d4ef){throw menuFailure(asMenuError(_0x36d4ef),_0x55273b,{'stage':_0x27d528(0xe4),'failed':{'id':_0x111dc5}});}let _0x252cb1,_0x3d9490;try{_0x252cb1=await fetchMutationSnapshot(_0x155697,'execute\x20reviewed\x20delete\x20plan',_0x111dc5),_0x3d9490=assertMenuDeletePlanCurrent(_0x422070[_0x27d528(0x11f)],_0x155697[_0x27d528(0xdf)],_0x252cb1),assertDeleteTargetsComplete(_0x422070['plan'],_0x252cb1),_0x3d9490['forEach'](_0x4cb3bb=>assertDeleteSafety(_0x4cb3bb,_0x422070[_0x27d528(0x11f)][_0x27d528(0xf7)])),assertNoSharedPages(_0x252cb1,_0x3d9490),assertCascadeMatchesPlan(_0x55273b,_0x3d9490);}catch(_0x58805e){throw menuFailure(asMenuError(_0x58805e),_0x55273b,{'stage':_0x27d528(0xf5),'failed':{'id':_0x111dc5}});}const _0x4fe573=_0x422070['plan'][_0x27d528(0xfc)];let _0x1f1173;try{_0x1f1173=await batchDeleteMenuEntities(_0x155697[_0x27d528(0xd2)],_0x4fe573);}catch(_0x3cce26){const _0x401388=mapMenuApiError(_0x3cce26,'batch\x20delete'),_0x3e86a4=[_0x27d528(0xee)];let _0x3fe4a5;try{_0x3fe4a5=await readDeleteOutcome(_0x155697,_0x4fe573);}catch(_0x2c58d2){const _0x57b9cd=describeMenuErrorCause(_0x2c58d2,_0x27d528(0xef),_0x111dc5);_0x3e86a4[_0x27d528(0xd4)](_0x27d528(0xdb)+_0x57b9cd[_0x27d528(0x11b)]+_0x27d528(0xd6)+_0x57b9cd[_0x27d528(0x100)]);throw menuFailure(_0x401388,_0x55273b,{'stage':_0x27d528(0xc6),'failed':{'targetIds':_0x4fe573,'targetIdsAbsent':'unconfirmed',..._0x57b9cd},'warnings':_0x3e86a4,'verification':{'status':_0x27d528(0xd8),'lookupCommand':_0x27d528(0xe2),'targetIds':_0x4fe573}});}throw menuFailure(_0x401388,_0x55273b,{'stage':_0x27d528(0xc6),'succeeded':_0x3fe4a5[_0x27d528(0xc2)]['map'](_0x4ae09b=>({'id':_0x4ae09b,'deleted':!![]})),'failed':{'targetIds':_0x4fe573,'absentIds':_0x3fe4a5[_0x27d528(0xc2)],'remainingIds':_0x3fe4a5[_0x27d528(0xdc)]},'warnings':_0x3e86a4,'verification':verificationFromOutcome(_0x3fe4a5)});}if(_0x1f1173!==_0x4fe573['length']){const _0x5cc7d1=menuError(_0x27d528(0xfb),_0x27d528(0xc3)+_0x1f1173+_0x27d528(0xf0)+_0x4fe573[_0x27d528(0xcc)]+'.',_0x27d528(0xfd)),_0x763582=[_0x27d528(0x105)];let _0x590055;try{_0x590055=await readDeleteOutcome(_0x155697,_0x4fe573);}catch(_0x2136f8){const _0x2ae972=describeMenuErrorCause(_0x2136f8,_0x27d528(0xf9),_0x111dc5);_0x763582[_0x27d528(0xd4)](_0x27d528(0xbc)+_0x2ae972[_0x27d528(0x11b)]+'):\x20'+_0x2ae972[_0x27d528(0x100)]);throw menuFailure(_0x5cc7d1,_0x55273b,{'stage':_0x27d528(0xc6),'failed':{'targetIds':_0x4fe573,'expectedCount':_0x4fe573['length'],'reportedDeletedCount':_0x1f1173,'targetIdsAbsent':_0x27d528(0xc8),..._0x2ae972},'warnings':_0x763582,'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x4fe573}});}throw menuFailure(_0x5cc7d1,_0x55273b,{'stage':'batch-delete','succeeded':_0x590055[_0x27d528(0xc2)][_0x27d528(0xf8)](_0x5700a0=>({'id':_0x5700a0,'deleted':!![]})),'failed':{'targetIds':_0x4fe573,'expectedCount':_0x4fe573[_0x27d528(0xcc)],'reportedDeletedCount':_0x1f1173,'absentIds':_0x590055['absentIds'],'remainingIds':_0x590055['remainingIds']},'warnings':_0x763582,'verification':verificationFromOutcome(_0x590055)});}let _0x4d67e9;try{_0x4d67e9=await readDeleteOutcome(_0x155697,_0x4fe573);}catch(_0xb9a5c){const _0x128e38=describeMenuErrorCause(_0xb9a5c,'verify\x20batch\x20delete',_0x111dc5),_0x383105=asVerificationError(_0xb9a5c,_0x27d528(0xed)+_0x111dc5+_0x27d528(0x101));throw menuFailure(_0x383105,_0x55273b,{'stage':_0x27d528(0xf3),'succeeded':_0x4fe573[_0x27d528(0xf8)](_0x388af8=>({'id':_0x388af8,'deleteRequested':!![]})),'failed':{'id':_0x111dc5,'targetIds':_0x4fe573,'targetIdsAbsent':_0x27d528(0xc8),..._0x128e38},'warnings':[_0x27d528(0x127)],'verification':{'status':_0x27d528(0xd8),'lookupCommand':_0x27d528(0xe2),'targetIds':_0x4fe573}});}if(_0x4d67e9[_0x27d528(0xdc)]['length']>0x0){const _0x33454b=menuError('menu_verification_failed',_0x27d528(0x123)+_0x4d67e9[_0x27d528(0xdc)]['join'](',\x20')+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.');throw menuFailure(_0x33454b,_0x55273b,{'stage':_0x27d528(0xf3),'succeeded':_0x4fe573[_0x27d528(0xf8)](_0x33f736=>({'id':_0x33f736,'deleteRequested':!![]})),'failed':{'id':_0x111dc5,'targetIds':_0x4fe573,'absentIds':_0x4d67e9['absentIds'],'remainingIds':_0x4d67e9[_0x27d528(0xdc)]},'warnings':['The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.'],'verification':verificationFromOutcome(_0x4d67e9)});}const _0x3cc7bf=_0x4fe573[_0x27d528(0xf8)](_0x7aa27b=>({'id':_0x7aa27b,'deleted':!![]})),_0xda77e8=mutationResult({..._0x55273b,'dryRun':![],'succeeded':_0x3cc7bf,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x55273b['snapshotHash'],'finalSnapshotHash':_0x4d67e9[_0x27d528(0xda)][_0x27d528(0xb7)],'reportedDeletedCount':_0x1f1173,'targetAbsent':!_0x4d67e9[_0x27d528(0xda)][_0x27d528(0x10c)][_0x27d528(0x125)](_0x111dc5),'allTargetsAbsent':!![],'targetIds':_0x4fe573}});return{'ok':!![],'data':_0xda77e8,'message':'Deleted\x20'+_0x3cc7bf['length']+_0x27d528(0x102)+_0x111dc5+'.'};}};async function readDeleteOutcome(_0x5f59c5,_0xcd0a40){const _0x4d7233=a151_0x6c065c,_0x3d7576=await fetchMenuSnapshot(_0x5f59c5[_0x4d7233(0xdf)],_0x5f59c5['cookie']);return{'snapshot':_0x3d7576,'absentIds':_0xcd0a40[_0x4d7233(0x120)](_0x5aad5f=>!_0x3d7576[_0x4d7233(0x10c)][_0x4d7233(0x125)](_0x5aad5f)),'remainingIds':_0xcd0a40[_0x4d7233(0x120)](_0x3a41ea=>_0x3d7576[_0x4d7233(0x10c)][_0x4d7233(0x125)](_0x3a41ea))};}function verificationFromOutcome(_0x321819){const _0x3e4669=a151_0x6c065c;return{'checkedBy':_0x3e4669(0xd9),'absentIds':_0x321819['absentIds'],'remainingIds':_0x321819[_0x3e4669(0xdc)]};}function validateDeleteDryRunInput(_0x5ea405){const _0x53d728=a151_0x6c065c;validateExactId(_0x5ea405);if(!hasFlag(_0x5ea405,_0x53d728(0x116))||!_0x5ea405['str'](_0x53d728(0x116))[_0x53d728(0x104)]())throw CliErrors['flagMissing'](_0x53d728(0x116),_0x53d728(0x10d));if(hasFlag(_0x5ea405,_0x53d728(0x11f)))throw CliErrors[_0x53d728(0x12a)](_0x53d728(0x111));}function validateDeleteExecuteInput(_0x25b691){const _0x3e4956=a151_0x6c065c;if(!hasFlag(_0x25b691,_0x3e4956(0x11f))||!_0x25b691[_0x3e4956(0xcb)](_0x3e4956(0x11f))[_0x3e4956(0x104)]())throw CliErrors['flagMissing']('plan',_0x3e4956(0xbf));const _0x1b7ebd=['id',_0x3e4956(0xf7),_0x3e4956(0x116),_0x3e4956(0xb6),_0x3e4956(0xe1),_0x3e4956(0xc4)]['filter'](_0x5a7a8a=>hasFlag(_0x25b691,_0x5a7a8a));if(_0x1b7ebd['length']>0x0)throw CliErrors['validation'](_0x3e4956(0x118)+_0x1b7ebd[_0x3e4956(0xf8)](_0x27068d=>'--'+_0x27068d)[_0x3e4956(0x119)](',\x20')+'.');}async function buildDeletePlan(_0x46baf1){const _0x5afc56=a151_0x6c065c,_0x5b2fdd=validateExactId(_0x46baf1),_0x3460dc=await fetchMutationSnapshot(_0x46baf1,_0x5afc56(0xe0),_0x5b2fdd),_0x51c5fb=requireMenu(_0x3460dc,_0x5b2fdd);assertExpectedState(_0x46baf1,_0x51c5fb);const _0x46079b=_0x46baf1[_0x5afc56(0x110)](_0x5afc56(0xf7));let _0x246dac;if(_0x46079b){if(_0x51c5fb[_0x5afc56(0xe7)][_0x5afc56(0x104)]()[_0x5afc56(0xca)]()!==_0x5afc56(0x11e))throw menuError(_0x5afc56(0xbb),_0x5afc56(0xbd)+_0x51c5fb['id']+_0x5afc56(0xc5)+(_0x51c5fb[_0x5afc56(0xe7)]||_0x5afc56(0xd1))+_0x5afc56(0x10e));_0x246dac=collectDeleteTargets(_0x3460dc,_0x51c5fb),_0x246dac[_0x5afc56(0xdd)](_0x315a76=>assertDeleteSafety(_0x315a76,!![]));}else assertDeleteSafety(_0x51c5fb),_0x246dac=[_0x51c5fb];assertNoSharedPages(_0x3460dc,_0x246dac);const _0x3e3e8f=_0x246dac[_0x5afc56(0xf8)](_0x1c4b51=>_0x1c4b51['id']),_0x14ecba=cascadeForTargets(_0x246dac),_0x1100cb=_0x14ecba[_0x5afc56(0xf1)][_0x5afc56(0xcc)]>0x0?[_0x5afc56(0x103)]:[];return mutationResult({'operation':_0x5afc56(0x10a),'selector':{'id':_0x5b2fdd,'recursive':_0x46079b},'before':_0x51c5fb,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x5afc56(0x114),'method':_0x5afc56(0xe9),'path':_0x5afc56(0xfa),'body':{'idList':_0x3e3e8f}}],'targets':_0x246dac,'deleteOrder':_0x3e3e8f,'snapshotHash':_0x3460dc[_0x5afc56(0xb7)],'cascade':_0x14ecba,'warnings':_0x1100cb});}function assertDeleteSafety(_0x2cd544,_0x1f4ece=![]){const _0xe39cf7=a151_0x6c065c,_0x3b734b=_0x2cd544['type']['trim']()['toLowerCase']()===_0xe39cf7(0x11e);if(_0x2cd544['childrenCount']>0x0&&(!_0x1f4ece||!_0x3b734b))throw menuError('menu_non_empty',_0xe39cf7(0xbd)+_0x2cd544['id']+_0xe39cf7(0x11c)+_0x2cd544[_0xe39cf7(0xc0)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0xe39cf7(0xd0)+_0x2cd544[_0xe39cf7(0xf2)][_0xe39cf7(0x119)](',\x20'));if(_0x3b734b&&_0x2cd544[_0xe39cf7(0xff)]!=null)throw menuError('menu_delete_page_bound','Folder\x20'+_0x2cd544['id']+_0xe39cf7(0xec)+_0x2cd544[_0xe39cf7(0xff)]+_0xe39cf7(0xe3),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x3b734b)return;if(!_0x2cd544['resourcesValid'])throw menuError(_0xe39cf7(0x12b),'Folder\x20'+_0x2cd544['id']+_0xe39cf7(0x112),_0xe39cf7(0x115));if(_0x2cd544['resources']['length']>0x0)throw menuError('menu_folder_has_resources',_0xe39cf7(0x11d)+_0x2cd544['id']+_0xe39cf7(0x107)+_0x2cd544['resources']['length']+'\x20resource\x20URL(s).',_0xe39cf7(0xf6));}function collectDeleteTargets(_0x1f3641,_0x3cf0c3){const _0x41898d=[],_0x28d5a3=new Set(),_0x3eeba6=new Set(),_0x440016=_0x4a4d5f=>{const _0x742015=a151_0x2d2c;if(_0x28d5a3[_0x742015(0x125)](_0x4a4d5f['id']))throw menuError(_0x742015(0xde),_0x742015(0x10b)+_0x4a4d5f['id']+'.');if(_0x3eeba6['has'](_0x4a4d5f['id']))return;_0x28d5a3[_0x742015(0xcd)](_0x4a4d5f['id']);for(const _0x5d7246 of _0x4a4d5f['childrenIds']){const _0x48bc54=_0x1f3641[_0x742015(0x10c)]['get'](_0x5d7246);if(!_0x48bc54)throw menuError(_0x742015(0xde),'Menu\x20'+_0x4a4d5f['id']+'\x20references\x20missing\x20child\x20'+_0x5d7246+'.');_0x440016(_0x48bc54);}_0x28d5a3['delete'](_0x4a4d5f['id']),_0x3eeba6[_0x742015(0xcd)](_0x4a4d5f['id']),_0x41898d[_0x742015(0xd4)](_0x4a4d5f);};return _0x440016(_0x3cf0c3),_0x41898d;}function assertDeleteTargetsComplete(_0x1d07fb,_0x35d59e){const _0x2c33cf=a151_0x6c065c,_0x5d0721=requireMenu(_0x35d59e,_0x1d07fb[_0x2c33cf(0x113)]['id']);if(_0x1d07fb[_0x2c33cf(0xf7)]&&_0x5d0721[_0x2c33cf(0xe7)][_0x2c33cf(0x104)]()[_0x2c33cf(0xca)]()!==_0x2c33cf(0x11e))throw menuError('menu_plan_invalid',_0x2c33cf(0xeb)+_0x5d0721['id']+'\x20is\x20not\x20a\x20folder.');const _0x28e756=_0x1d07fb[_0x2c33cf(0xf7)]?collectDeleteTargets(_0x35d59e,_0x5d0721)[_0x2c33cf(0xf8)](_0x167109=>_0x167109['id']):[_0x5d0721['id']];if(JSON['stringify'](_0x1d07fb[_0x2c33cf(0xfc)])!==JSON['stringify'](_0x28e756))throw menuError(_0x2c33cf(0xce),_0x2c33cf(0xc9),_0x2c33cf(0x106));}function a151_0x3360(){const _0x39ac5d=['Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','54683649pFjXMn','has','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','menu_page_shared','validation','menu_folder_resources_invalid','expect-parent-id','hash','\x20->\x20menu\x20','16dnaQbp','menus','menu_recursive_requires_folder','Post-mismatch\x20menu\x20readback\x20failed\x20(','Menu\x20','dry-run','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','childrenCount','11642hcIpFC','absentIds','Backend\x20reported\x20','expected-children-count','\x20is\x20type\x20\x22','batch-delete','10066518AigANa','unconfirmed','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','toLowerCase','str','length','add','menu_plan_invalid','stringify','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','unknown','cookie','string','push','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','):\x20','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','failed','menu\x20list','snapshot','Post-failure\x20menu\x20readback\x20failed\x20(','remainingIds','forEach','menu_tree_invalid','appCode','plan\x20delete','expect-path','rabetbase\x20menu\x20list\x20--format\x20json','\x20and\x20cannot\x20be\x20deleted\x20safely.','plan-validation','3511640zTSYdf','3601670JsAcqz','type','expiresAt','POST','Would\x20batch\x20delete\x20','Recursive\x20menu\x20delete\x20plan\x20root\x20','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','Batch\x20delete\x20request\x20for\x20menu\x20','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','\x20deleted\x20menus;\x20expected\x20','pages','childrenIds','verification','4423804bXEWon','pre-write-plan-validation','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','recursive','map','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','/smartapi/menu/batchDelete','menu_batch_delete_count_mismatch','deleteOrder','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','897375iOHrqg','pageId','causeMessage','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','\x20menu(s)\x20under\x20exact\x20id\x20','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','trim','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','\x20still\x20references\x20','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','message','delete','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','byId','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','createdAt','bool','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','target','batch-delete-menu','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','plan-out','795plfDSB','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','join','boolean','causeCode','\x20has\x20','Folder\x20','folder','plan','filter','cascade'];a151_0x3360=function(){return _0x39ac5d;};return a151_0x3360();}function assertNoSharedPages(_0x14a6dd,_0x3a247f){const _0xe5dc21=a151_0x6c065c,_0x59c5f3=new Set(_0x3a247f[_0xe5dc21(0xf8)](_0x2ff457=>_0x2ff457['id'])),_0x12fa65=new Set(_0x3a247f[_0xe5dc21(0xf8)](_0x3ae277=>_0x3ae277[_0xe5dc21(0xff)])[_0xe5dc21(0x120)](_0xdd2ca0=>_0xdd2ca0!=null));if(_0x12fa65['size']===0x0)return;const _0x2d71ec=_0x14a6dd[_0xe5dc21(0xba)][_0xe5dc21(0x120)](_0x290089=>!_0x59c5f3[_0xe5dc21(0x125)](_0x290089['id'])&&_0x290089[_0xe5dc21(0xff)]!=null&&_0x12fa65[_0xe5dc21(0x125)](_0x290089[_0xe5dc21(0xff)]));if(_0x2d71ec[_0xe5dc21(0xcc)]===0x0)return;const _0x4a4ba7=_0x2d71ec[_0xe5dc21(0xf8)](_0xf3450a=>'page\x20'+_0xf3450a[_0xe5dc21(0xff)]+_0xe5dc21(0xb8)+_0xf3450a['id'])[_0xe5dc21(0x119)](',\x20');throw menuError(_0xe5dc21(0x129),_0xe5dc21(0xd7)+_0x4a4ba7+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x4ecf35,_0x7a6a82){const _0x45d296=a151_0x6c065c,_0x1bd9d5=cascadeForTargets(_0x7a6a82);if(JSON[_0x45d296(0xcf)](_0x4ecf35[_0x45d296(0x121)])!==JSON['stringify'](_0x1bd9d5))throw menuError(_0x45d296(0xce),_0x45d296(0xd5));}function cascadeForTargets(_0x2a654b){const _0x37e1f3=a151_0x6c065c,_0x50fc53=_0x2a654b[_0x37e1f3(0xf8)](_0xa0ba5b=>_0xa0ba5b[_0x37e1f3(0xff)])[_0x37e1f3(0x120)](_0x3e5be2=>_0x3e5be2!=null)[_0x37e1f3(0x120)]((_0x3bf789,_0x543ba1,_0x144194)=>_0x144194['indexOf'](_0x3bf789)===_0x543ba1);return{'pages':_0x50fc53,'pageSchemaAffected':_0x50fc53[_0x37e1f3(0xcc)]>0x0};}function asMenuError(_0x26e4db){const _0x40199d=a151_0x6c065c;return _0x26e4db instanceof CliError?_0x26e4db:menuError(_0x40199d(0xce),_0x26e4db instanceof Error?_0x26e4db[_0x40199d(0x109)]:String(_0x26e4db));}
@@ -1 +1 @@
1
- const a152_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
+ function a152_0x3304(){const _0x1ebbf7=['menu_sort_invalid','Recovered\x20created\x20external\x20menu\x20','verification','type','str','plan','username','Would\x20create\x20external\x20website\x20link\x20menu\x20','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','link','menu_parent_not_folder','Menu\x20','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','causemessage','parent-id','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Create\x20an\x20external\x20website\x20link\x20menu','trim','Provide\x20an\x20HTTPS\x20URL.','menu_permission_denied','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','URL','open-mode','menu_create_response_invalid','\x20has\x20an\x20unexpected\x20','selector','POST','length','2196770RYkmwM','Created\x20external\x20menu\x20','Created\x20menu\x20','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','cause','menus','https:','hash','expectedPath','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','isSafeInteger','isArray','write','url','add','22MnPQXm','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','9zYihsZ','menu_open_mode_invalid','call','bool','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','External\x20menu\x20creation\x20failed.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','map','Recovered\x20menu\x20','<redacted>','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','create','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','External\x20HTTPS\x20URL','How\x20to\x20open\x20the\x20external\x20website','fromEntries','toLowerCase','parentId','appCode','pre-write-recheck','plannedActions','\x20--format\x20compress','create-menu','rawFlags','object','478359CFGfGF','iframe','replace','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','body','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','byId','boolean','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','after','visible','Menu\x20label','menu_url_https_required','string','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','menu_create_recovery_required','expectedSnapshotHash','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','menu_not_found','168yyyjaS','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','215470KYqvAt','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','currentSnapshotHash','menu_mutation_failed','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','menu_url_invalid','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','sort','has','includes','\x20has\x20an\x20unexpected\x20generated\x20path.','rawerror','create\x20external\x20menu','Run\x20','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','menu_state_drift','\x20failed\x20final\x20verification.','code','3523iWZVoU','create-response-validation','515460NifvrG','8237262SyxXru','new-window','embedded','<platform-generated>','\x27\x5c\x27\x27','snapshot','fact','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','menu_verification_failed','failed','cookie','flagMissing','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','12VVwaZU','label','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','49624mWRROw','/smartapi/menu/create','menu_sort_overflow','createdId','afterPlan','entries','data','filter','path','\x20after\x20response\x20loss.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','lookupCommand','succeeded','rabetbase\x20menu\x20list\x20--appcode\x20','protocol'];a152_0x3304=function(){return _0x1ebbf7;};return a152_0x3304();}const a152_0x407a25=a152_0x491b;(function(_0x625a9d,_0x5d3799){const _0x413461=a152_0x491b,_0x46cf49=_0x625a9d();while(!![]){try{const _0x3338a1=parseInt(_0x413461(0x146))/0x1*(-parseInt(_0x413461(0x100))/0x2)+-parseInt(_0x413461(0x11d))/0x3+parseInt(_0x413461(0x157))/0x4*(-parseInt(_0x413461(0x134))/0x5)+parseInt(_0x413461(0x148))/0x6+-parseInt(_0x413461(0x132))/0x7*(parseInt(_0x413461(0xc5))/0x8)+-parseInt(_0x413461(0x102))/0x9*(parseInt(_0x413461(0xf0))/0xa)+parseInt(_0x413461(0x149))/0xb;if(_0x3338a1===_0x5d3799)break;else _0x46cf49['push'](_0x46cf49['shift']());}catch(_0xc964d6){_0x46cf49['push'](_0x46cf49['shift']());}}}(a152_0x3304,0x21ddb));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a152_0x407a25(0x11e),'new-window':a152_0x407a25(0xdd)};export function validateExternalMenuUrl(_0x451b44){const _0x1d227c=a152_0x407a25,_0x522f6e=_0x451b44[_0x1d227c(0xe5)]();let _0x4c5422;try{_0x4c5422=new URL(_0x522f6e);}catch{throw menuError(_0x1d227c(0x139),_0x1d227c(0x110),_0x1d227c(0x135));}if(_0x4c5422[_0x1d227c(0xd3)]!==_0x1d227c(0xf7))throw menuError(_0x1d227c(0x12b),_0x1d227c(0x122),_0x1d227c(0xe6));if(_0x4c5422[_0x1d227c(0xda)]||_0x4c5422['password'])throw menuError('menu_url_credentials_forbidden',_0x1d227c(0xe3),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x522f6e;}export const menuExternalLinkCreate={'service':'menu','command':'external-link-create','description':a152_0x407a25(0xe4),'risk':a152_0x407a25(0xfd),'structuredErrors':!![],'flags':[{'name':a152_0x407a25(0xc3),'type':a152_0x407a25(0x12c),'required':!![],'description':a152_0x407a25(0x12a)},{'name':'open-mode','type':a152_0x407a25(0x12c),'required':!![],'enum':[a152_0x407a25(0x14b),a152_0x407a25(0x14a)],'description':a152_0x407a25(0x112)},{'name':a152_0x407a25(0xfe),'type':'string','required':!![],'description':a152_0x407a25(0x111)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':a152_0x407a25(0x124),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x18721d){validateAddInput(_0x18721d);},async 'dryRun'(_0x1b07fe){const _0x2a8505=a152_0x407a25;validateAddInput(_0x1b07fe);const {plan:_0x3cef13}=await buildSafeAddPlan(_0x1b07fe,!![]),_0x233ccf=_0x3cef13[_0x2a8505(0x128)],_0x931887=createBody(_0x233ccf);return menuDryRunResult(_0x3cef13,{'method':_0x2a8505(0xee),'url':_0x2a8505(0xc6),'body':_0x931887,'description':_0x2a8505(0xdb)+JSON['stringify'](_0x233ccf[_0x2a8505(0xc3)])+'\x20with\x20'+_0x1b07fe[_0x2a8505(0xd8)](_0x2a8505(0xea))+_0x2a8505(0xf3)});},async 'execute'(_0x4ac9df){const _0x456f68=a152_0x407a25;validateAddInput(_0x4ac9df);const _0x2c6938=await buildSafeAddPlan(_0x4ac9df,![]),{plan:_0x2d8102,snapshot:_0x4112e8}=_0x2c6938,_0x592653=_0x2d8102[_0x456f68(0x128)],_0x54aa05=buildMenuLookupCommand(_0x4ac9df['appCode']);await recheckAddSnapshot(_0x4ac9df,_0x2d8102);let _0x1d1d08;try{_0x1d1d08=await createMenuEntity(_0x4ac9df['appCode'],_0x4ac9df[_0x456f68(0x154)],createBody(_0x592653));}catch(_0x390520){const _0x450eb8=mapMenuApiError(_0x390520,_0x456f68(0x140));if(!isMenuResponseLoss(_0x390520)||_0x450eb8[_0x456f68(0x145)]===_0x456f68(0xe7))throw externalLinkCreateFailure(_0x450eb8,_0x2d8102,{'stage':_0x456f68(0x10f),'failed':{},'verification':{'status':_0x456f68(0x153),'lookupCommand':_0x54aa05}});return recoverAfterResponseLoss(_0x4ac9df,_0x2c6938,_0x54aa05);}const _0x4c3386=Number(_0x1d1d08?.['id']),_0x57a525=typeof _0x1d1d08?.[_0x456f68(0xcd)]==='string'?_0x1d1d08[_0x456f68(0xcd)]:'';if(!Number[_0x456f68(0xfb)](_0x4c3386)||_0x4c3386<=0x0||!_0x57a525['trim']()){const _0x2cbba1=menuError(_0x456f68(0xeb),_0x456f68(0xf4),_0x456f68(0x141)+_0x54aa05+_0x456f68(0x108));throw externalLinkCreateFailure(_0x2cbba1,_0x2d8102,{'stage':_0x456f68(0x147),'succeeded':Number['isSafeInteger'](_0x4c3386)&&_0x4c3386>0x0?[{'id':_0x4c3386,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x4c3386)?_0x4c3386:null,'generatedPathConfirmed':Boolean(_0x57a525[_0x456f68(0xe5)]())},'warnings':[_0x456f68(0xe8)],'after':Number[_0x456f68(0xfb)](_0x4c3386)&&_0x4c3386>0x0?{..._0x592653,'id':_0x4c3386,'path':_0x57a525}:_0x592653,'verification':{'status':_0x456f68(0x153),'lookupCommand':_0x54aa05,...Number[_0x456f68(0xfb)](_0x4c3386)&&_0x4c3386>0x0?{'targetId':_0x4c3386}:{}}});}const _0x2e08dc=await readAndVerifyCreatedMenu({'appCode':_0x4ac9df[_0x456f68(0x116)],'cookie':_0x4ac9df[_0x456f68(0x154)],'plan':_0x2d8102,'afterPlan':_0x592653,'createdId':_0x4c3386,'expectedPath':_0x57a525,'lookupCommand':_0x54aa05,'recovered':![]});return creationSuccess(_0x2d8102,_0x2e08dc[_0x456f68(0x14e)],_0x2e08dc[_0x456f68(0x14f)],![]);}};function validateAddInput(_0x33e537){const _0x87e476=a152_0x407a25;if(!_0x33e537[_0x87e476(0xd8)]('label')[_0x87e476(0xe5)]())throw CliErrors[_0x87e476(0x155)](_0x87e476(0xc3));resolveExternalMenuType(_0x33e537),validateExternalMenuUrl(_0x33e537['str'](_0x87e476(0xfe))),parseParentId(_0x33e537,'parent-id'),validateSort(_0x33e537);}function resolveExternalMenuType(_0x5e251b){const _0x4aad67=a152_0x407a25,_0x2dba82=_0x5e251b['str']('open-mode')[_0x4aad67(0xe5)]();if(!_0x2dba82)throw CliErrors['flagMissing'](_0x4aad67(0xea));const _0x47093e=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x2dba82];if(!_0x47093e)throw menuError(_0x4aad67(0x103),_0x4aad67(0x125),_0x4aad67(0x138));return _0x47093e;}async function buildAddPlan(_0x259500,_0x3f0692){const _0x33500b=a152_0x407a25,_0x3c330d=await fetchMutationSnapshot(_0x259500,_0x33500b(0x140)),_0x26da27=parseParentId(_0x259500,_0x33500b(0xe2))??null;if(_0x26da27!=null)requireFolder(_0x3c330d,_0x26da27);const _0x1bc1bb=validateSort(_0x259500),_0x31c5b9=_0x1bc1bb??nextSiblingSort(_0x3c330d,_0x26da27,'menu'),_0x3b9016=_0x259500[_0x33500b(0xd8)](_0x33500b(0xc3))[_0x33500b(0xe5)](),_0x51003e=resolveExternalMenuType(_0x259500),_0x572d65=validateExternalMenuUrl(_0x259500[_0x33500b(0xd8)](_0x33500b(0xfe))),_0x38b701=Object['prototype']['hasOwnProperty'][_0x33500b(0x104)](_0x259500[_0x33500b(0x11b)],_0x33500b(0x129))?_0x259500[_0x33500b(0x105)](_0x33500b(0x129)):!![],_0x1f12b9={'id':null,'parentId':_0x26da27,'label':_0x3b9016,'path':_0x33500b(0x14c),'url':_0x572d65,'type':_0x51003e,'visible':_0x38b701,'sort':_0x31c5b9},_0x417e9c=buildMenuLookupCommand(_0x259500[_0x33500b(0x116)]),_0x2eb4a1=mutationResult({'operation':_0x33500b(0xff),'selector':{'parentId':_0x26da27,'type':_0x51003e,'label':_0x3b9016,'url':_0x572d65},'before':null,'after':_0x1f12b9,'dryRun':_0x3f0692,'backend':[{'method':'POST','path':_0x33500b(0xc6)}],'plannedActions':[{'stage':_0x33500b(0x11a),'method':_0x33500b(0xee),'path':_0x33500b(0xc6),'body':createBody(_0x1f12b9)}],'snapshotHash':_0x3c330d[_0x33500b(0xf8)],'warnings':[_0x33500b(0x101)],'verification':{'lookupCommand':_0x417e9c}});return{'plan':_0x2eb4a1,'snapshot':_0x3c330d};}function a152_0x491b(_0x2c5b3c,_0x236d21){_0x2c5b3c=_0x2c5b3c-0xc3;const _0x330403=a152_0x3304();let _0x491ba5=_0x330403[_0x2c5b3c];return _0x491ba5;}async function buildSafeAddPlan(_0x433ab5,_0x2b2fe1){try{return await buildAddPlan(_0x433ab5,_0x2b2fe1);}catch(_0x59a187){throw safeMenuAddError(_0x59a187);}}async function recheckAddSnapshot(_0x524c05,_0x4eabe9){const _0x2caf10=a152_0x407a25;try{await recheckMutationSnapshot(_0x524c05,_0x4eabe9,_0x2caf10(0x140));}catch(_0x266298){const _0x534d42=getFailureRecord(_0x266298);throw externalLinkCreateFailure(_0x266298,_0x4eabe9,{'stage':_0x2caf10(0x117),'failed':{..._0x534d42?.[_0x2caf10(0x12f)]?{'expectedSnapshotHash':_0x534d42[_0x2caf10(0x12f)]}:{},..._0x534d42?.[_0x2caf10(0x136)]?{'currentSnapshotHash':_0x534d42[_0x2caf10(0x136)]}:{}}});}}function createBody(_0x556770){const _0x450124=a152_0x407a25;return{'parentId':toApiParentId(_0x556770[_0x450124(0x115)]),'label':String(_0x556770[_0x450124(0xc3)]),'type':String(_0x556770[_0x450124(0xd7)]),'url':String(_0x556770[_0x450124(0xfe)]),'visible':Boolean(_0x556770[_0x450124(0x129)]),'sort':Number(_0x556770['sort']),'extend':{}};}function buildMenuLookupCommand(_0x391342){const _0x55c3bf=a152_0x407a25,_0x1705ef='\x27'+_0x391342[_0x55c3bf(0x11f)](/'/g,_0x55c3bf(0x14d))+'\x27';return _0x55c3bf(0xd2)+_0x1705ef+_0x55c3bf(0x119);}async function recoverAfterResponseLoss(_0x194b1e,_0x41bc55,_0x1693ea){const _0x5d58f2=a152_0x407a25,{plan:_0x429a22,snapshot:_0x4d54fb}=_0x41bc55,_0x3e1cdf=_0x429a22['after'];let _0x5f126c;try{_0x5f126c=await fetchMenuSnapshot(_0x194b1e[_0x5d58f2(0x116)],_0x194b1e[_0x5d58f2(0x154)]);}catch(_0x2b4e00){throw recoveryRequiredFailure(_0x429a22,_0x1693ea,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x77342c=_0x5f126c[_0x5d58f2(0xf6)][_0x5d58f2(0xcc)](_0x56a277=>_0x56a277[_0x5d58f2(0x115)]===_0x3e1cdf[_0x5d58f2(0x115)]&&_0x56a277['type']===_0x3e1cdf[_0x5d58f2(0xd7)]&&_0x56a277['label']===_0x3e1cdf[_0x5d58f2(0xc3)]&&_0x56a277['url']===_0x3e1cdf[_0x5d58f2(0xfe)]),_0x511730=_0x77342c[_0x5d58f2(0xcc)](_0x5495c5=>!_0x4d54fb[_0x5d58f2(0x123)][_0x5d58f2(0x13c)](_0x5495c5['id'])),_0xa6e618=_0x77342c['filter'](_0x35e577=>_0x4d54fb[_0x5d58f2(0x123)][_0x5d58f2(0x13c)](_0x35e577['id']));if(_0x77342c['length']!==0x1||_0x511730[_0x5d58f2(0xef)]!==0x1)throw recoveryRequiredFailure(_0x429a22,_0x1693ea,{'matchCount':_0x77342c['length'],'newMatchCount':_0x511730[_0x5d58f2(0xef)],'preexistingMatchCount':_0xa6e618[_0x5d58f2(0xef)]});const _0x37108f=_0x511730[0x0];try{verifyCreatedFact(_0x37108f,_0x37108f['id'],_0x3e1cdf,null);}catch(_0x2902f5){const _0x25cd56=_0x2902f5 instanceof Error&&_0x5d58f2(0x145)in _0x2902f5?_0x2902f5:menuError(_0x5d58f2(0x152),_0x5d58f2(0x10b)+_0x37108f['id']+'\x20could\x20not\x20be\x20verified.',_0x5d58f2(0x141)+_0x1693ea+_0x5d58f2(0x150));throw externalLinkCreateFailure(_0x25cd56,_0x429a22,{'stage':_0x5d58f2(0xd6),'succeeded':[{'id':_0x37108f['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x37108f['id'],'finalFactsConfirmed':![]},'after':_0x37108f,'warnings':[_0x5d58f2(0xdf)+_0x37108f['id']+_0x5d58f2(0x156)],'verification':{'status':_0x5d58f2(0x153),'targetId':_0x37108f['id'],'recovered':!![],'lookupCommand':_0x1693ea}});}return creationSuccess(_0x429a22,_0x5f126c,_0x37108f,!![]);}function recoveryRequiredFailure(_0x8aaae6,_0x21fa34,_0x516416){const _0x17c62d=a152_0x407a25,_0x3db30a=menuError(_0x17c62d(0x12e),_0x17c62d(0x10d),_0x17c62d(0x141)+_0x21fa34+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x3db30a,_0x8aaae6,{'stage':'create-recovery','failed':_0x516416,'warnings':[_0x17c62d(0xc4)],'verification':{'status':'failed',..._0x516416,'lookupCommand':_0x21fa34}});}async function readAndVerifyCreatedMenu(_0x19d028){const _0x4f6ae0=a152_0x407a25;let _0x5256bc;try{_0x5256bc=await fetchMenuSnapshot(_0x19d028['appCode'],_0x19d028['cookie']);}catch(_0x781385){const _0x48e015=menuError(_0x4f6ae0(0x152),_0x4f6ae0(0xdf)+_0x19d028['createdId']+_0x4f6ae0(0x130),'Run\x20'+_0x19d028['lookupCommand']+_0x4f6ae0(0xe0));throw externalLinkCreateFailure(_0x48e015,_0x19d028[_0x4f6ae0(0xd9)],{'stage':_0x4f6ae0(0xd6),'succeeded':[{'id':_0x19d028[_0x4f6ae0(0xc8)],'created':!![]}],'failed':{'id':_0x19d028[_0x4f6ae0(0xc8)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x19d028['afterPlan'],'id':_0x19d028[_0x4f6ae0(0xc8)],'path':_0x19d028[_0x4f6ae0(0xf9)]},'warnings':['Menu\x20'+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x13a)],'verification':{'status':_0x4f6ae0(0x153),'targetId':_0x19d028[_0x4f6ae0(0xc8)],'lookupCommand':_0x19d028['lookupCommand']}});}const _0x10ec29=_0x5256bc[_0x4f6ae0(0x123)]['get'](_0x19d028[_0x4f6ae0(0xc8)]);try{if(!_0x10ec29)throw menuError(_0x4f6ae0(0x152),_0x4f6ae0(0xf2)+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x12d),_0x4f6ae0(0x141)+_0x19d028[_0x4f6ae0(0xd0)]+_0x4f6ae0(0xe0));verifyCreatedFact(_0x10ec29,_0x19d028[_0x4f6ae0(0xc8)],_0x19d028[_0x4f6ae0(0xc9)],_0x19d028['expectedPath']);}catch(_0x1939e2){const _0x3c27f9=_0x1939e2 instanceof Error&&'code'in _0x1939e2?_0x1939e2:menuError(_0x4f6ae0(0x152),_0x4f6ae0(0xf2)+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x144),_0x4f6ae0(0x141)+_0x19d028[_0x4f6ae0(0xd0)]+_0x4f6ae0(0xe0));throw externalLinkCreateFailure(_0x3c27f9,_0x19d028[_0x4f6ae0(0xd9)],{'stage':'verification','succeeded':[{'id':_0x19d028[_0x4f6ae0(0xc8)],'created':!![]}],'failed':{'id':_0x19d028[_0x4f6ae0(0xc8)],'finalFactsConfirmed':![]},'after':_0x10ec29??{..._0x19d028['afterPlan'],'id':_0x19d028[_0x4f6ae0(0xc8)],'path':_0x19d028[_0x4f6ae0(0xf9)]},'warnings':[_0x4f6ae0(0xdf)+_0x19d028[_0x4f6ae0(0xc8)]+_0x4f6ae0(0x133)],'verification':{'status':_0x4f6ae0(0x153),'targetId':_0x19d028[_0x4f6ae0(0xc8)],'recovered':_0x19d028['recovered'],'lookupCommand':_0x19d028[_0x4f6ae0(0xd0)]}});}return{'snapshot':_0x5256bc,'fact':_0x10ec29};}function verifyCreatedFact(_0x4e87fa,_0x49046e,_0x3392b5,_0x2cdbd4){const _0x12f0f1=a152_0x407a25;if(!Number['isSafeInteger'](_0x4e87fa['id'])||_0x4e87fa['id']<=0x0||_0x4e87fa['id']!==_0x49046e)throw menuError(_0x12f0f1(0x152),_0x12f0f1(0x151),_0x12f0f1(0x109));const _0x50501c=[['parent',_0x4e87fa[_0x12f0f1(0x115)],_0x3392b5[_0x12f0f1(0x115)]],[_0x12f0f1(0xd7),_0x4e87fa[_0x12f0f1(0xd7)],_0x3392b5[_0x12f0f1(0xd7)]],['label',_0x4e87fa['label'],_0x3392b5[_0x12f0f1(0xc3)]],[_0x12f0f1(0xe9),_0x4e87fa[_0x12f0f1(0xfe)],_0x3392b5[_0x12f0f1(0xfe)]],['visibility',_0x4e87fa[_0x12f0f1(0x129)],_0x3392b5[_0x12f0f1(0x129)]],['sort',_0x4e87fa[_0x12f0f1(0x13b)],_0x3392b5[_0x12f0f1(0x13b)]]];for(const [_0x4204fd,_0x3f20ed,_0x509e56]of _0x50501c){if(_0x3f20ed!==_0x509e56)throw menuError(_0x12f0f1(0x152),_0x12f0f1(0xf2)+_0x4e87fa['id']+_0x12f0f1(0xec)+_0x4204fd+'.',_0x12f0f1(0x120));}if(!_0x4e87fa[_0x12f0f1(0xcd)]['trim']()||_0x2cdbd4!==null&&_0x4e87fa[_0x12f0f1(0xcd)]!==_0x2cdbd4)throw menuError(_0x12f0f1(0x152),'Created\x20menu\x20'+_0x4e87fa['id']+_0x12f0f1(0x13e),_0x12f0f1(0x120));}function creationSuccess(_0x35236e,_0x29a10b,_0x1baf1e,_0x5b4dfb){const _0x58b456=a152_0x407a25,_0x2bf4a3=mutationResult({..._0x35236e,'after':_0x1baf1e,'dryRun':![],'succeeded':[{'id':_0x1baf1e['id'],'created':!![],'recovered':_0x5b4dfb}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x29a10b[_0x58b456(0xf8)],'targetId':_0x1baf1e['id'],'recovered':_0x5b4dfb,'path':_0x1baf1e[_0x58b456(0xcd)]}});return{'ok':!![],'message':_0x5b4dfb?_0x58b456(0xd5)+_0x1baf1e['id']+_0x58b456(0xce):_0x58b456(0xf1)+_0x1baf1e['id']+'.','data':{..._0x2bf4a3,'recovered':_0x5b4dfb}};}function externalLinkCreateFailure(_0x16da75,_0x5d05f1,_0x509741){const _0x520d1c=a152_0x407a25;return menuFailure(safeMenuAddError(_0x16da75),redactFailurePlan(_0x5d05f1),{..._0x509741,'succeeded':_0x509741['succeeded']?.[_0x520d1c(0x10a)](redactFailureRecord),'failed':_0x509741['failed']?redactFailureRecord(_0x509741[_0x520d1c(0x153)]):undefined,'verification':_0x509741['verification']?redactFailureRecord(_0x509741[_0x520d1c(0xd6)]):undefined,'after':_0x509741['after']===undefined?undefined:redactFailureValue(_0x509741[_0x520d1c(0x128)])});}function redactFailurePlan(_0x3719f5){const _0x5b9564=a152_0x407a25;return{..._0x3719f5,'selector':redactFailureRecord(_0x3719f5[_0x5b9564(0xed)]),'before':redactFailureValue(_0x3719f5['before']),'after':redactFailureValue(_0x3719f5[_0x5b9564(0x128)]),'plannedActions':_0x3719f5[_0x5b9564(0x118)]?.[_0x5b9564(0x10a)](_0x160dd8=>({..._0x160dd8,'body':redactFailureRecord(_0x160dd8[_0x5b9564(0x121)])})),'succeeded':_0x3719f5[_0x5b9564(0xd1)]['map'](redactFailureRecord),'failed':_0x3719f5[_0x5b9564(0x153)][_0x5b9564(0x10a)](redactFailureRecord),'verification':_0x3719f5[_0x5b9564(0xd6)]?redactFailureRecord(_0x3719f5[_0x5b9564(0xd6)]):undefined};}function redactFailureRecord(_0x3046dc){return redactFailureValue(_0x3046dc);}function redactFailureValue(_0x5ef2b4,_0x14b907=''){const _0x146c73=a152_0x407a25,_0x12c23e=_0x14b907[_0x146c73(0x114)]()[_0x146c73(0x11f)](/[^a-z0-9]/g,'');if([_0x146c73(0xf5),_0x146c73(0xe1),'readbackerror',_0x146c73(0x13f)][_0x146c73(0x13d)](_0x12c23e))return _0x146c73(0x10c);if(Array[_0x146c73(0xfc)](_0x5ef2b4))return _0x5ef2b4[_0x146c73(0x10a)](_0x505d29=>redactFailureValue(_0x505d29));if(_0x5ef2b4&&typeof _0x5ef2b4==='object')return Object[_0x146c73(0x113)](Object[_0x146c73(0xca)](_0x5ef2b4)[_0x146c73(0x10a)](([_0x5fcb5d,_0x171526])=>[_0x5fcb5d,redactFailureValue(_0x171526,_0x5fcb5d)]));return _0x5ef2b4;}function safeMenuAddError(_0x2cd4d1){const _0x36db76=a152_0x407a25,_0x3e4e24=_0x2cd4d1 instanceof CliError?_0x2cd4d1[_0x36db76(0x145)]:_0x36db76(0x137);switch(_0x3e4e24){case _0x36db76(0x143):return menuError(_0x3e4e24,_0x36db76(0x142),_0x36db76(0xfa));case _0x36db76(0xe7):return menuError(_0x3e4e24,_0x36db76(0xdc),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x36db76(0xeb):return menuError(_0x3e4e24,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x36db76(0x10e));case _0x36db76(0x152):return menuError(_0x3e4e24,_0x36db76(0x106),_0x36db76(0x10e));case _0x36db76(0x12e):return menuError(_0x3e4e24,_0x36db76(0x126),_0x36db76(0xcf));case _0x36db76(0x137):case _0x36db76(0x131):case _0x36db76(0xde):case _0x36db76(0xd4):case _0x36db76(0xc7):return menuError(_0x3e4e24,'External\x20menu\x20creation\x20failed.',_0x36db76(0x127));default:return menuError(_0x36db76(0x137),_0x36db76(0x107),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x5ac253){const _0x1e8c5f=a152_0x407a25;if(!(_0x5ac253 instanceof Error)||!(_0x1e8c5f(0xcb)in _0x5ac253))return undefined;const _0x20deea=_0x5ac253[_0x1e8c5f(0xcb)];if(!_0x20deea||typeof _0x20deea!==_0x1e8c5f(0x11c))return undefined;const _0x4ddd07=_0x20deea[_0x1e8c5f(0x153)];if(!Array['isArray'](_0x4ddd07)||!_0x4ddd07[0x0]||typeof _0x4ddd07[0x0]!==_0x1e8c5f(0x11c))return undefined;return _0x4ddd07[0x0];}
@@ -1 +1 @@
1
- const a153_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_0x478954=a153_0x4028;(function(_0xf92220,_0x1c4163){const _0xc97f44=a153_0x4028,_0x1b39d2=_0xf92220();while(!![]){try{const _0x12b371=parseInt(_0xc97f44(0x116))/0x1+-parseInt(_0xc97f44(0x142))/0x2+parseInt(_0xc97f44(0x11d))/0x3+-parseInt(_0xc97f44(0x117))/0x4*(-parseInt(_0xc97f44(0x147))/0x5)+parseInt(_0xc97f44(0x109))/0x6*(-parseInt(_0xc97f44(0x12e))/0x7)+parseInt(_0xc97f44(0x14e))/0x8+-parseInt(_0xc97f44(0x12a))/0x9;if(_0x12b371===_0x1c4163)break;else _0x1b39d2['push'](_0x1b39d2['shift']());}catch(_0x5812c5){_0x1b39d2['push'](_0x1b39d2['shift']());}}}(a153_0x2762,0xd0b3f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a153_0x2762(){const _0x34973a=['Run\x20','menu\x20list','plan','parentId','\x20is\x20type\x20\x22','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','snapshot','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','path','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','128292NRfHnt','/smartapi/menu/update','menu_update_recovery_required','\x20has\x20','body','type','\x20URL\x20update\x20did\x20not\x20take\x20effect.','failed','iframe','update\x20external\x20menu\x20URL','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','visible','expect-url','969679puDCpz','68716vputzD','label','sort','appCode','str','replace','3807867NfpJyf','Updated\x20external\x20URL\x20for\x20menu\x20','Menu\x20','menu','external-link-update','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','\x20already\x20matches\x20the\x20requested\x20URL.','write','update-recovery','update-external-link-url','readbackFailed','rabetbase\x20menu\x20list\x20--appcode\x20','26739054uZUxcj','string','menu_external_link_not_leaf','expect-parent-id','301yWogYt','Response\x20was\x20lost\x20and\x20menu\x20','code','menu_external_link_path_missing','\x20direct\x20child\x20menu(s).','after','menu_permission_denied','menu_external_link_type_required','flagMissing','hash','Update\x20request\x20for\x20menu\x20','\x20has\x20an\x20empty\x20platform\x20path.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','get','verification','url','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','verify\x20external\x20menu\x20URL\x20update','menu_state_drift','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','121748EUYZqj','unknown','childrenCount','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.',',\x20current\x20','385AFrwgg','\x27\x5c\x27\x27','\x22,\x20not\x20iframe\x20or\x20link.','cookie','\x20changed\x20during\x20the\x20URL-only\x20update.','trim','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','9955216rgZJPn','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','POST','requestedUrlObserved'];a153_0x2762=function(){return _0x34973a;};return a153_0x2762();}import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a153_0x478954(0xfd),'path':a153_0x478954(0x10a)}];export const menuExternalLinkUpdate={'service':a153_0x478954(0x120),'command':a153_0x478954(0x121),'description':a153_0x478954(0x122),'risk':a153_0x478954(0x125),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a153_0x478954(0x13d),'type':'string','required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':'expect-url','type':a153_0x478954(0x12b),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x744558){validateInput(_0x744558);},async 'dryRun'(_0x4a4d6f){const _0x506430=a153_0x478954;validateInput(_0x4a4d6f);const _0x24f1f4=await buildPlan(_0x4a4d6f,!![]);return menuDryRunResult(_0x24f1f4[_0x506430(0x101)],{'method':'POST','url':_0x506430(0x10a),'body':_0x24f1f4[_0x506430(0x10d)],'description':_0x506430(0x106)+_0x24f1f4[_0x506430(0x10d)]['id']+'.'});},async 'execute'(_0x362c57){const _0x55bf74=a153_0x478954;validateInput(_0x362c57);const _0x2716cb=await buildPlan(_0x362c57,![]),{plan:_0xe2c1cd,body:_0x489a32,before:_0x28a92e,noChanges:_0x344129}=_0x2716cb,_0x84b669=_0x489a32['id'];if(_0x344129)return updateSuccess(_0xe2c1cd,_0x2716cb[_0x55bf74(0x105)],_0x28a92e,!![],![]);await recheckMutationSnapshot(_0x362c57,_0xe2c1cd,_0x55bf74(0x112),_0x84b669);try{await updateMenuEntity(_0x362c57[_0x55bf74(0x11a)],_0x362c57['cookie'],{'id':_0x489a32['id'],'url':_0x489a32['url']});}catch(_0x482722){const _0x5061f4=mapMenuApiError(_0x482722,_0x55bf74(0x112),_0x84b669);if(isMenuResponseLoss(_0x482722)&&_0x5061f4[_0x55bf74(0x130)]!==_0x55bf74(0x134))return recoverAfterResponseLoss(_0x362c57,_0x2716cb);throw menuFailure(_0x5061f4,_0xe2c1cd,{'stage':'update','failed':{'id':_0x84b669},'warnings':[_0x55bf74(0x145)],'verification':{'status':_0x55bf74(0x110),'targetId':_0x84b669,'lookupCommand':buildLookupCommand(_0x362c57[_0x55bf74(0x11a)])}});}let _0x5049c3,_0x14e475;try{_0x5049c3=await fetchMenuSnapshot(_0x362c57['appCode'],_0x362c57['cookie']),_0x14e475=requireMenu(_0x5049c3,_0x84b669),verifyUpdatedFact(_0x28a92e,_0x14e475,_0x489a32[_0x55bf74(0x13d)]);}catch(_0x2dfb88){const _0x588035=describeMenuErrorCause(_0x2dfb88,_0x55bf74(0x13f),_0x84b669),_0x52727b=asVerificationError(_0x2dfb88,_0x55bf74(0x138)+_0x84b669+_0x55bf74(0x123));throw menuFailure(_0x52727b,_0xe2c1cd,{'stage':_0x55bf74(0x13c),'succeeded':[{'id':_0x84b669,'updateRequested':!![]}],'failed':{'id':_0x84b669,'requestedStateConfirmed':![],..._0x588035},'warnings':[_0x55bf74(0x14d)],'verification':{'status':_0x55bf74(0x110),'targetId':_0x84b669,'lookupCommand':buildLookupCommand(_0x362c57[_0x55bf74(0x11a)])}});}return updateSuccess(_0xe2c1cd,_0x5049c3,_0x14e475,![],![]);}};function validateInput(_0x275bbd){const _0x5b1ab5=a153_0x478954;validateExactId(_0x275bbd),requiredUrl(_0x275bbd,_0x5b1ab5(0x13d)),requiredExpectedUrl(_0x275bbd),parseParentId(_0x275bbd,_0x5b1ab5(0x12d),{'required':!![]});}function requiredUrl(_0x1c7a25,_0x2eccbd){const _0x2804ed=a153_0x478954;if(!hasFlag(_0x1c7a25,_0x2eccbd)||!_0x1c7a25[_0x2804ed(0x11b)](_0x2eccbd)[_0x2804ed(0x14c)]())throw CliErrors['flagMissing'](_0x2eccbd);return validateExternalMenuUrl(_0x1c7a25[_0x2804ed(0x11b)](_0x2eccbd));}function requiredExpectedUrl(_0x26e92d){const _0x23950f=a153_0x478954;if(!hasFlag(_0x26e92d,'expect-url')||!_0x26e92d['str'](_0x23950f(0x115))[_0x23950f(0x14c)]())throw CliErrors[_0x23950f(0x136)](_0x23950f(0x115));return _0x26e92d[_0x23950f(0x11b)](_0x23950f(0x115))[_0x23950f(0x14c)]();}async function buildPlan(_0x9ffb71,_0x2515c9){const _0x5962ec=a153_0x478954,_0x3af32b=validateExactId(_0x9ffb71),_0x221192=requiredUrl(_0x9ffb71,'url'),_0x44fc4b=requiredExpectedUrl(_0x9ffb71),_0x19061e=parseParentId(_0x9ffb71,'expect-parent-id',{'required':!![]}),_0x75d19f=await fetchMutationSnapshot(_0x9ffb71,_0x5962ec(0x112),_0x3af32b),_0x5a0422=requireMenu(_0x75d19f,_0x3af32b);assertExternalLinkLeaf(_0x5a0422);if(_0x5a0422[_0x5962ec(0x102)]!==_0x19061e)throw menuError(_0x5962ec(0x140),_0x5962ec(0x11f)+_0x3af32b+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x19061e)+_0x5962ec(0x146)+formatParent(_0x5a0422[_0x5962ec(0x102)])+'.',_0x5962ec(0x13a));const _0x24df6a=_0x5a0422[_0x5962ec(0x13d)]===_0x221192;if(!_0x24df6a&&_0x5a0422[_0x5962ec(0x13d)]!==_0x44fc4b)throw menuError(_0x5962ec(0x140),_0x5962ec(0x11f)+_0x3af32b+_0x5962ec(0x104),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x4193a2={'id':_0x3af32b,'appCode':_0x9ffb71[_0x5962ec(0x11a)],'url':_0x221192},_0x4a901e={..._0x5a0422,'url':_0x221192};return{'body':_0x4193a2,'before':_0x5a0422,'noChanges':_0x24df6a,'snapshot':_0x75d19f,'plan':mutationResult({'operation':_0x5962ec(0x121),'selector':{'id':_0x3af32b},'before':_0x5a0422,'after':_0x4a901e,'dryRun':_0x2515c9,'backend':[...BACKEND],'plannedActions':_0x24df6a?[]:[{'stage':_0x5962ec(0x127),'method':_0x5962ec(0xfd),'path':'/smartapi/menu/update','body':_0x4193a2}],'snapshotHash':_0x75d19f[_0x5962ec(0x137)],'warnings':_0x24df6a?[_0x5962ec(0x13e)]:[]})};}function assertExternalLinkLeaf(_0x5b12e1){const _0x4e6b4f=a153_0x478954;if(_0x5b12e1[_0x4e6b4f(0x10e)]!==_0x4e6b4f(0x111)&&_0x5b12e1[_0x4e6b4f(0x10e)]!=='link')throw menuError(_0x4e6b4f(0x135),_0x4e6b4f(0x11f)+_0x5b12e1['id']+_0x4e6b4f(0x103)+(_0x5b12e1[_0x4e6b4f(0x10e)]||_0x4e6b4f(0x143))+_0x4e6b4f(0x149),_0x4e6b4f(0x108));if(_0x5b12e1[_0x4e6b4f(0x144)]!==0x0)throw menuError(_0x4e6b4f(0x12c),_0x4e6b4f(0x11f)+_0x5b12e1['id']+_0x4e6b4f(0x10c)+_0x5b12e1[_0x4e6b4f(0x144)]+_0x4e6b4f(0x132),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x5b12e1[_0x4e6b4f(0x107)][_0x4e6b4f(0x14c)]())throw menuError(_0x4e6b4f(0x131),_0x4e6b4f(0x11f)+_0x5b12e1['id']+_0x4e6b4f(0x139),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x4edf9f,_0x38f601,_0x51d243){const _0x580203=a153_0x478954;assertExternalLinkLeaf(_0x38f601);const _0x217488=[['id',_0x38f601['id'],_0x4edf9f['id']],['label',_0x38f601[_0x580203(0x118)],_0x4edf9f[_0x580203(0x118)]],['type',_0x38f601['type'],_0x4edf9f[_0x580203(0x10e)]],[_0x580203(0x107),_0x38f601[_0x580203(0x107)],_0x4edf9f['path']],[_0x580203(0x102),_0x38f601[_0x580203(0x102)],_0x4edf9f['parentId']],['sort',_0x38f601[_0x580203(0x119)],_0x4edf9f[_0x580203(0x119)]],[_0x580203(0x114),_0x38f601[_0x580203(0x114)],_0x4edf9f[_0x580203(0x114)]]];for(const [_0x329971,_0x653998,_0x3af6c7]of _0x217488){assertVerified(_0x653998===_0x3af6c7,_0x580203(0x11f)+_0x4edf9f['id']+'\x20'+_0x329971+_0x580203(0x14b));}assertVerified(_0x38f601[_0x580203(0x13d)]===_0x51d243,'Menu\x20'+_0x4edf9f['id']+_0x580203(0x10f));}function a153_0x4028(_0x5354a3,_0x591bfe){_0x5354a3=_0x5354a3-0xfc;const _0x276256=a153_0x2762();let _0x402839=_0x276256[_0x5354a3];return _0x402839;}function updateSuccess(_0x5b2b59,_0x49cdf1,_0x2c112c,_0x3566c5,_0x2d7bfc){const _0xafc0e1=a153_0x478954,_0x448362=_0x2c112c['id'],_0x16aee9=mutationResult({..._0x5b2b59,'after':_0x2c112c,'dryRun':![],'succeeded':[{'id':_0x448362,'updated':!_0x3566c5,'skipped':_0x3566c5,'recovered':_0x2d7bfc}],'verification':{'checkedBy':_0xafc0e1(0x100),'snapshotHash':_0x49cdf1['hash'],'targetId':_0x448362,'matchesRequestedState':!![],'recovered':_0x2d7bfc}});return{'ok':!![],'message':_0x2d7bfc?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x448362+'.':_0x3566c5?_0xafc0e1(0x11f)+_0x448362+_0xafc0e1(0x124):_0xafc0e1(0x11e)+_0x448362+'.','data':{..._0x16aee9,'recovered':_0x2d7bfc}};}async function recoverAfterResponseLoss(_0x5088e7,_0x392db3){const _0x2c6302=a153_0x478954,{plan:_0x797004,before:_0x590431,body:_0x5ec6bb}=_0x392db3;let _0x2e41ac;try{_0x2e41ac=await fetchMenuSnapshot(_0x5088e7[_0x2c6302(0x11a)],_0x5088e7[_0x2c6302(0x14a)]);}catch{throw recoveryRequired(_0x797004,_0x5088e7[_0x2c6302(0x11a)],{'id':_0x5ec6bb['id'],'readbackFailed':!![]});}const _0x3a780b=_0x2e41ac['byId'][_0x2c6302(0x13b)](_0x5ec6bb['id']);if(!_0x3a780b||_0x3a780b[_0x2c6302(0x13d)]!==_0x5ec6bb[_0x2c6302(0x13d)])throw recoveryRequired(_0x797004,_0x5088e7[_0x2c6302(0x11a)],{'id':_0x5ec6bb['id'],'requestedUrlObserved':![],'after':_0x3a780b??null});try{verifyUpdatedFact(_0x590431,_0x3a780b,_0x5ec6bb[_0x2c6302(0x13d)]);}catch(_0xee5e45){const _0x416077=asVerificationError(_0xee5e45,_0x2c6302(0x12f)+_0x5ec6bb['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x416077,_0x797004,{'stage':_0x2c6302(0x126),'succeeded':[{'id':_0x5ec6bb['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x5ec6bb['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x3a780b,'warnings':[_0x2c6302(0xfc)],'verification':{'status':_0x2c6302(0x110),'targetId':_0x5ec6bb['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5088e7[_0x2c6302(0x11a)])}});}return updateSuccess(_0x797004,_0x2e41ac,_0x3a780b,![],!![]);}function recoveryRequired(_0x2acbca,_0x2af1f6,_0x264135){const _0x4f1ada=a153_0x478954,_0x201c91=menuError(_0x4f1ada(0x10b),_0x4f1ada(0x141),_0x4f1ada(0xff)+buildLookupCommand(_0x2af1f6)+_0x4f1ada(0x113));return menuFailure(_0x201c91,_0x2acbca,{'stage':'update-recovery','failed':{'id':_0x264135['id'],..._0x264135[_0x4f1ada(0xfe)]===undefined?{}:{'requestedUrlObserved':_0x264135['requestedUrlObserved']},..._0x264135[_0x4f1ada(0x128)]?{'readbackFailed':!![]}:{}},'after':_0x264135[_0x4f1ada(0x133)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x4f1ada(0x110),'targetId':_0x264135['id'],..._0x264135[_0x4f1ada(0xfe)]===undefined?{}:{'requestedUrlObserved':_0x264135[_0x4f1ada(0xfe)]},..._0x264135[_0x4f1ada(0x128)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x2af1f6)}});}function buildLookupCommand(_0x258797){const _0x100378=a153_0x478954,_0x5822b9='\x27'+_0x258797[_0x100378(0x11c)](/'/g,_0x100378(0x148))+'\x27';return _0x100378(0x129)+_0x5822b9+'\x20--format\x20compress';}
@@ -1 +1 @@
1
- const a154_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_0x5ccc77=a154_0x5128;function a154_0x5128(_0x5eeae4,_0x14da4f){_0x5eeae4=_0x5eeae4-0x103;const _0x51d2ff=a154_0x51d2();let _0x5128de=_0x51d2ff[_0x5eeae4];return _0x5128de;}(function(_0x553ecd,_0x3b3b98){const _0x2800c2=a154_0x5128,_0x719ea9=_0x553ecd();while(!![]){try{const _0x59d7f4=parseInt(_0x2800c2(0x12c))/0x1+parseInt(_0x2800c2(0x148))/0x2+parseInt(_0x2800c2(0x130))/0x3+-parseInt(_0x2800c2(0x126))/0x4*(parseInt(_0x2800c2(0x10c))/0x5)+-parseInt(_0x2800c2(0x118))/0x6+parseInt(_0x2800c2(0x135))/0x7+-parseInt(_0x2800c2(0x12f))/0x8*(-parseInt(_0x2800c2(0x10d))/0x9);if(_0x59d7f4===_0x3b3b98)break;else _0x719ea9['push'](_0x719ea9['shift']());}catch(_0x10dcd3){_0x719ea9['push'](_0x719ea9['shift']());}}}(a154_0x51d2,0x99ff3));function a154_0x51d2(){const _0x4b4008=['Created\x20menu\x20folder\x20','\x20has\x20resources.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','after','\x20has\x20unexpected\x20parent\x20','sort','\x22\x20with\x20a\x20platform-generated\x20path.','stringify','failed','childrenCount','group-create','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','length','77768PJyChN','\x20is\x20not\x20empty.','label','hash','\x20has\x20an\x20unexpected\x20sort.','trim','369452wOwvPs','parent-id','\x20unexpectedly\x20owns\x20a\x20page.','11640rkAmkn','3329739CexHUf','Created\x20menu\x20','appCode','<platform-generated>','rabetbase\x20menu\x20list\x20--format\x20json','3853388WLCMiY','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','resources','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','pageId','parentId','\x20has\x20an\x20unexpected\x20label.','create','/smartapi/menu/create','verify\x20folder\x20creation','\x20is\x20not\x20visible.',';\x20verify\x20it\x20before\x20retrying.','folder','write','verification','Folder\x20','str','type','isSafeInteger','194918OaTHsW','create\x20folder','flagMissing','POST','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','Would\x20create\x20empty\x20folder\x20\x22','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','\x20is\x20missing\x20from\x20menu\x20list.','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','Created\x20folder\x20','cookie','menu\x20list','\x20is\x20not\x20type\x20folder.','280UhVkkT','1053bQorJe','menu_create_response_invalid','visible','menu','string','get','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','create-response-validation','path','\x20may\x20exist\x20online\x20at\x20path\x20','Menu\x20create\x20response\x20for\x20folder\x20','3468120bKBWCH'];a154_0x51d2=function(){return _0x4b4008;};return a154_0x51d2();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0x5ccc77(0x14b),'path':a154_0x5ccc77(0x13d)}];export const menuGroupCreate={'service':a154_0x5ccc77(0x110),'command':a154_0x5ccc77(0x123),'description':a154_0x5ccc77(0x138),'risk':a154_0x5ccc77(0x142),'structuredErrors':!![],'flags':[{'name':'label','type':'string','required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2c6fe0){validateCreateInput(_0x2c6fe0);},async 'dryRun'(_0x5e2acd){const _0x27b08c=a154_0x5ccc77,_0xb6b371=await buildCreatePlan(_0x5e2acd,!![]),_0x4ba33f=_0xb6b371[_0x27b08c(0x11c)];return menuDryRunResult(_0xb6b371,{'method':_0x27b08c(0x14b),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x4ba33f['parentId']),'label':_0x4ba33f[_0x27b08c(0x128)],'type':_0x27b08c(0x141),'visible':!![],'sort':_0x4ba33f[_0x27b08c(0x11e)],'extend':{}},'description':_0x27b08c(0x104)+String(_0x4ba33f[_0x27b08c(0x128)])+_0x27b08c(0x11f)});},async 'execute'(_0x27e893){const _0x277549=a154_0x5ccc77;validateCreateInput(_0x27e893);const _0x5bc299=await buildCreatePlan(_0x27e893,![]),_0x2c9bcd=_0x5bc299['after'];await recheckMutationSnapshot(_0x27e893,_0x5bc299,'create\x20folder');let _0x222153;try{_0x222153=await createMenuEntity(_0x27e893[_0x277549(0x132)],_0x27e893[_0x277549(0x109)],{'parentId':toApiParentId(_0x2c9bcd[_0x277549(0x13a)]),'label':String(_0x2c9bcd['label']),'type':_0x277549(0x141),'visible':!![],'sort':Number(_0x2c9bcd[_0x277549(0x11e)]),'extend':{}});}catch(_0x38b238){const _0x4d5c9a=mapMenuApiError(_0x38b238,_0x277549(0x149));throw menuFailure(_0x4d5c9a,_0x5bc299,{'stage':_0x277549(0x13c),'failed':{}});}const _0x5ba283=Number(_0x222153['id']);if(!Number[_0x277549(0x147)](_0x5ba283)||_0x5ba283<=0x0){const _0x3c1854=menuError(_0x277549(0x10e),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0x277549(0x124));throw menuFailure(_0x3c1854,_0x5bc299,{'stage':_0x277549(0x114),'failed':{'createdId':_0x222153['id']??null},'warnings':[_0x277549(0x113)],'verification':{'status':_0x277549(0x121),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0xc72ec3=typeof _0x222153[_0x277549(0x115)]===_0x277549(0x111)?_0x222153[_0x277549(0x115)]:'';if(!_0xc72ec3[_0x277549(0x12b)]()){const _0x450005=menuError(_0x277549(0x10e),_0x277549(0x117)+_0x5ba283+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x277549(0x103));throw menuFailure(_0x450005,_0x5bc299,{'stage':_0x277549(0x114),'succeeded':[{'id':_0x5ba283,'created':!![]}],'failed':{'id':_0x5ba283,'generatedPathConfirmed':![]},'warnings':[_0x277549(0x144)+_0x5ba283+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x2c9bcd,'id':_0x5ba283,'path':_0xc72ec3},'verification':{'status':_0x277549(0x121),'lookupCommand':_0x277549(0x134),'targetId':_0x5ba283}});}let _0x397a12;try{_0x397a12=await fetchMenuSnapshot(_0x27e893[_0x277549(0x132)],_0x27e893[_0x277549(0x109)]);}catch(_0x14a251){const _0x587bd5=describeMenuErrorCause(_0x14a251,_0x277549(0x13e),_0x5ba283),_0x4d0c8c=asVerificationError(_0x14a251,_0x277549(0x144)+_0x5ba283+'\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts');throw menuFailure(_0x4d0c8c,_0x5bc299,{'stage':'verification','succeeded':[{'id':_0x5ba283,'created':!![],'path':_0xc72ec3}],'failed':{'id':_0x5ba283,'finalFactsConfirmed':![],..._0x587bd5},'warnings':[_0x277549(0x144)+_0x5ba283+_0x277549(0x116)+JSON[_0x277549(0x120)](_0xc72ec3)+_0x277549(0x140)],'after':{..._0x2c9bcd,'id':_0x5ba283,'path':_0xc72ec3},'verification':{'status':_0x277549(0x121),'lookupCommand':_0x277549(0x134),'targetId':_0x5ba283}});}const _0x1fde1b=_0x397a12['byId'][_0x277549(0x112)](_0x5ba283);let _0x15f986;try{assertVerified(Boolean(_0x1fde1b),'Created\x20folder\x20'+_0x5ba283+_0x277549(0x106)),_0x15f986=_0x1fde1b,assertVerified(_0x15f986[_0x277549(0x146)]===_0x277549(0x141),_0x277549(0x131)+_0x5ba283+_0x277549(0x10b)),assertVerified(_0x15f986['label']===_0x2c9bcd[_0x277549(0x128)],'Created\x20folder\x20'+_0x5ba283+_0x277549(0x13b)),assertVerified(_0x15f986[_0x277549(0x115)]===_0xc72ec3&&Boolean(_0x15f986[_0x277549(0x115)][_0x277549(0x12b)]()),_0x277549(0x108)+_0x5ba283+_0x277549(0x11b)),assertVerified(_0x15f986[_0x277549(0x10f)]===!![],_0x277549(0x108)+_0x5ba283+_0x277549(0x13f)),assertVerified(_0x15f986[_0x277549(0x137)][_0x277549(0x125)]===0x0,_0x277549(0x108)+_0x5ba283+_0x277549(0x11a)),assertVerified(_0x15f986[_0x277549(0x122)]===0x0,'Created\x20folder\x20'+_0x5ba283+_0x277549(0x127)),assertVerified(_0x15f986[_0x277549(0x11e)]===_0x2c9bcd[_0x277549(0x11e)],_0x277549(0x108)+_0x5ba283+_0x277549(0x12a)),assertVerified(_0x15f986[_0x277549(0x13a)]===_0x2c9bcd['parentId'],_0x277549(0x108)+_0x5ba283+_0x277549(0x11d)+(_0x15f986[_0x277549(0x13a)]??'root')+'.'),assertVerified(_0x15f986[_0x277549(0x139)]==null,_0x277549(0x108)+_0x5ba283+_0x277549(0x12e));const _0x3ca332=_0x15f986[_0x277549(0x13a)]==null?undefined:requireFolder(_0x397a12,_0x15f986['parentId']);assertVerified(_0x15f986['depth']===(_0x3ca332?_0x3ca332['depth']+0x1:0x0),_0x277549(0x108)+_0x5ba283+_0x277549(0x107));}catch(_0x45f500){const _0x75a2f=describeMenuErrorCause(_0x45f500,'verify\x20folder\x20creation',_0x5ba283),_0x21c0b8=asVerificationError(_0x45f500,_0x277549(0x144)+_0x5ba283+_0x277549(0x136));throw menuFailure(_0x21c0b8,_0x5bc299,{'stage':_0x277549(0x143),'succeeded':[{'id':_0x5ba283,'created':!![],'path':_0xc72ec3}],'failed':{'id':_0x5ba283,'finalFactsConfirmed':![],..._0x75a2f},'warnings':[_0x277549(0x144)+_0x5ba283+_0x277549(0x105)],'after':_0x1fde1b??{..._0x2c9bcd,'id':_0x5ba283,'path':_0xc72ec3},'verification':{'status':'failed','lookupCommand':_0x277549(0x134),'targetId':_0x5ba283}});}const _0x3addbf=mutationResult({..._0x5bc299,'after':_0x15f986,'dryRun':![],'succeeded':[{'id':_0x5ba283,'type':_0x277549(0x141),'path':_0xc72ec3}],'verification':{'checkedBy':_0x277549(0x10a),'snapshotHash':_0x397a12[_0x277549(0x129)],'folder':!![],'path':_0xc72ec3,'emptyResources':!![]}});return{'ok':!![],'data':_0x3addbf,'message':_0x277549(0x119)+_0x5ba283+'.'};}};function validateCreateInput(_0x339613){const _0x11a3d9=a154_0x5ccc77,_0x2c87f8=_0x339613['str']('label')[_0x11a3d9(0x12b)]();if(!_0x2c87f8)throw CliErrors[_0x11a3d9(0x14a)]('label');parseParentId(_0x339613,_0x11a3d9(0x12d)),validateSort(_0x339613);}async function buildCreatePlan(_0xeab3,_0xd5ab44){const _0x4ef724=a154_0x5ccc77,_0x49d46f=await fetchMutationSnapshot(_0xeab3,_0x4ef724(0x149)),_0x627873=parseParentId(_0xeab3,_0x4ef724(0x12d))??null;if(_0x627873!=null)requireFolder(_0x49d46f,_0x627873);const _0x55f8c8=validateSort(_0xeab3),_0x5724c7=_0x55f8c8??nextSiblingSort(_0x49d46f,_0x627873,_0x4ef724(0x141)),_0x50a128=_0xeab3[_0x4ef724(0x145)](_0x4ef724(0x128))[_0x4ef724(0x12b)]();return mutationResult({'operation':'group-create','selector':{'label':_0x50a128,'parentId':_0x627873},'before':null,'after':{'id':null,'parentId':_0x627873,'label':_0x50a128,'path':_0x4ef724(0x133),'type':_0x4ef724(0x141),'visible':!![],'sort':_0x5724c7,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0xd5ab44,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':'POST','path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x627873),'label':_0x50a128,'type':_0x4ef724(0x141),'visible':!![],'sort':_0x5724c7,'extend':{}}}],'snapshotHash':_0x49d46f['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
@@ -1 +1 @@
1
- const a155_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_0x534089=a155_0x14a6;function a155_0x14a6(_0xa02042,_0x37207a){_0xa02042=_0xa02042-0xb0;const _0x17ae02=a155_0x17ae();let _0x14a66f=_0x17ae02[_0xa02042];return _0x14a66f;}(function(_0x27d15d,_0x476853){const _0x4db9cb=a155_0x14a6,_0x51f08c=_0x27d15d();while(!![]){try{const _0x26a8cb=-parseInt(_0x4db9cb(0xe4))/0x1*(parseInt(_0x4db9cb(0xd0))/0x2)+-parseInt(_0x4db9cb(0xc7))/0x3*(parseInt(_0x4db9cb(0xdb))/0x4)+parseInt(_0x4db9cb(0xbb))/0x5*(-parseInt(_0x4db9cb(0xbf))/0x6)+-parseInt(_0x4db9cb(0xb1))/0x7+parseInt(_0x4db9cb(0xe1))/0x8*(-parseInt(_0x4db9cb(0xd4))/0x9)+-parseInt(_0x4db9cb(0xba))/0xa*(parseInt(_0x4db9cb(0xdd))/0xb)+-parseInt(_0x4db9cb(0xe7))/0xc*(-parseInt(_0x4db9cb(0xc4))/0xd);if(_0x26a8cb===_0x476853)break;else _0x51f08c['push'](_0x51f08c['shift']());}catch(_0x3afb67){_0x51f08c['push'](_0x51f08c['shift']());}}}(a155_0x17ae,0x2283f));function a155_0x17ae(){const _0x39e399=['unknown','rabetbase\x20menu\x20list\x20--format\x20json','appCode','Menu\x20','28052AMBaaJ','Updated\x20folder\x20','572506kEfZZT','menu\x20list','--label\x20cannot\x20be\x20empty.','parent-id','8psJOOz','validation','folder','1viYphz','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','group-update','12uKQsDy','str','836122swYHFF','selector','type','Update\x20request\x20for\x20folder\x20','hash','trim','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','verification','20wkodUV','8455zAxuzL','POST','sort','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','198IlyFYu','/smartapi/menu/update','write','update','verify\x20folder\x20update','12367433PNxNrK','parentId','\x20sort\x20update\x20did\x20not\x20take\x20effect.','111BOJFZz','\x20is\x20no\x20longer\x20type\x20folder.','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','string','cookie','update\x20folder','\x20already\x20matches\x20the\x20requested\x20state.','\x20label\x20update\x20did\x20not\x20take\x20effect.','menu_not_folder','309182NJVrla','Folder\x20','label','Would\x20update\x20folder\x20','1048977VHNXFa','failed','\x20is\x20type\x20\x22'];a155_0x17ae=function(){return _0x39e399;};return a155_0x17ae();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a155_0x534089(0xbc),'path':a155_0x534089(0xc0)}];export const menuGroupUpdate={'service':'menu','command':'group-update','description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a155_0x534089(0xc1),'structuredErrors':!![],'rejectedFlags':[{'name':a155_0x534089(0xe0),'message':a155_0x534089(0xc9),'hint':a155_0x534089(0xbe)}],'flags':[MENU_ID_FLAG,{'name':a155_0x534089(0xd2),'type':a155_0x534089(0xca),'description':'New\x20folder\x20label'},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xce11f5){validateUpdateInput(_0xce11f5);},async 'dryRun'(_0x439297){const _0x15c81a=a155_0x534089;validateUpdateInput(_0x439297);const {plan:_0x142ef0,patch:_0x14ca7f}=await buildUpdatePlan(_0x439297,!![]);return menuDryRunResult(_0x142ef0,{'method':_0x15c81a(0xbc),'url':_0x15c81a(0xc0),'body':_0x14ca7f,'description':_0x15c81a(0xd3)+_0x142ef0['selector']['id']+'.'});},async 'execute'(_0x5e13da){const _0x58f633=a155_0x534089;validateUpdateInput(_0x5e13da);const {plan:_0x3c32e6,patch:_0x5fd0c6,noChanges:_0x43948b}=await buildUpdatePlan(_0x5e13da,![]),_0x18335e=Number(_0x3c32e6[_0x58f633(0xb2)]['id']),_0x23df46=await recheckMutationSnapshot(_0x5e13da,_0x3c32e6,_0x58f633(0xcc),_0x18335e);if(!_0x43948b)try{await updateMenuEntity(_0x5e13da[_0x58f633(0xd9)],_0x5e13da[_0x58f633(0xcb)],_0x5fd0c6);}catch(_0x1f0be0){const _0x18f82d=mapMenuApiError(_0x1f0be0,_0x58f633(0xcc),_0x18335e);throw menuFailure(_0x18f82d,_0x3c32e6,{'stage':_0x58f633(0xc2),'failed':{'id':_0x18335e}});}let _0x108b85=_0x23df46,_0x5746a4;try{!_0x43948b&&(_0x108b85=await fetchMenuSnapshot(_0x5e13da[_0x58f633(0xd9)],_0x5e13da[_0x58f633(0xcb)])),_0x5746a4=requireMenu(_0x108b85,_0x18335e),verifyPatch(_0x5746a4,_0x5fd0c6),_0x5746a4['parentId']!=null&&requireFolder(_0x108b85,_0x5746a4[_0x58f633(0xc5)]);}catch(_0x457f9a){const _0x5d461e=describeMenuErrorCause(_0x457f9a,_0x58f633(0xc3),_0x18335e),_0x234a61=asVerificationError(_0x457f9a,_0x58f633(0xb4)+_0x18335e+_0x58f633(0xe5));throw menuFailure(_0x234a61,_0x3c32e6,{'stage':_0x58f633(0xb9),'succeeded':[{'id':_0x18335e,'updateRequested':!_0x43948b,'skipped':_0x43948b}],'failed':{'id':_0x18335e,'requestedStateConfirmed':![],..._0x5d461e},'warnings':[_0x58f633(0xb7)],'verification':{'status':_0x58f633(0xd5),'lookupCommand':_0x58f633(0xd8),'targetId':_0x18335e}});}const _0x5ea405=mutationResult({..._0x3c32e6,'after':_0x5746a4,'dryRun':![],'succeeded':[{'id':_0x18335e,'updated':!_0x43948b,'skipped':_0x43948b}],'verification':{'checkedBy':_0x58f633(0xde),'snapshotHash':_0x108b85['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x5ea405,'message':_0x43948b?_0x58f633(0xd1)+_0x18335e+_0x58f633(0xcd):_0x58f633(0xdc)+_0x18335e+'.'};}};function validateUpdateInput(_0x42db13){const _0x31692e=a155_0x534089;validateExactId(_0x42db13);if(hasFlag(_0x42db13,_0x31692e(0xe0)))throw CliErrors[_0x31692e(0xe2)](_0x31692e(0xc9),_0x31692e(0xbe));if(!hasFlag(_0x42db13,'label')&&!hasFlag(_0x42db13,_0x31692e(0xbd)))throw CliErrors['validation'](_0x31692e(0xb8));if(hasFlag(_0x42db13,_0x31692e(0xd2))&&!_0x42db13[_0x31692e(0xb0)](_0x31692e(0xd2))[_0x31692e(0xb6)]())throw CliErrors[_0x31692e(0xe2)](_0x31692e(0xdf));validateSort(_0x42db13);}async function buildUpdatePlan(_0x410dc2,_0x197be3){const _0x250b38=a155_0x534089,_0x5edd3a=validateExactId(_0x410dc2),_0x59b39e=await fetchMutationSnapshot(_0x410dc2,_0x250b38(0xcc),_0x5edd3a),_0xa6b21f=requireMenu(_0x59b39e,_0x5edd3a);if(_0xa6b21f[_0x250b38(0xb3)]!==_0x250b38(0xe3))throw menuError(_0x250b38(0xcf),_0x250b38(0xda)+_0x5edd3a+_0x250b38(0xd6)+(_0xa6b21f['type']||_0x250b38(0xd7))+'\x22,\x20not\x20folder.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.');assertExpectedState(_0x410dc2,_0xa6b21f);const _0x304bdc={'id':_0x5edd3a},_0x2120ea={..._0xa6b21f};if(hasFlag(_0x410dc2,_0x250b38(0xd2))){const _0x27fc9e=_0x410dc2[_0x250b38(0xb0)]('label')[_0x250b38(0xb6)]();_0x304bdc['label']=_0x27fc9e,_0x2120ea[_0x250b38(0xd2)]=_0x27fc9e;}if(hasFlag(_0x410dc2,_0x250b38(0xbd))){const _0x1ed5ac=validateSort(_0x410dc2);_0x304bdc[_0x250b38(0xbd)]=_0x1ed5ac,_0x2120ea[_0x250b38(0xbd)]=_0x1ed5ac;}const _0x511852=sameRequestedState(_0xa6b21f,_0x2120ea),_0x344e2a=_0x511852?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x304bdc,'noChanges':_0x511852,'plan':mutationResult({'operation':_0x250b38(0xe6),'selector':{'id':_0x5edd3a},'before':_0xa6b21f,'after':_0x2120ea,'dryRun':_0x197be3,'backend':[...BACKEND],'snapshotHash':_0x59b39e[_0x250b38(0xb5)],'warnings':_0x344e2a})};}function sameRequestedState(_0x3a2029,_0x3278db){const _0x230ce0=a155_0x534089;return _0x3a2029[_0x230ce0(0xd2)]===_0x3278db['label']&&_0x3a2029['sort']===_0x3278db[_0x230ce0(0xbd)];}function verifyPatch(_0x5776d3,_0x361f50){const _0x572c58=a155_0x534089;assertVerified(_0x5776d3[_0x572c58(0xb3)]===_0x572c58(0xe3),'Menu\x20'+_0x5776d3['id']+_0x572c58(0xc8)),_0x361f50['label']!==undefined&&assertVerified(_0x5776d3['label']===_0x361f50[_0x572c58(0xd2)],_0x572c58(0xd1)+_0x5776d3['id']+_0x572c58(0xce)),_0x361f50[_0x572c58(0xbd)]!==undefined&&assertVerified(_0x5776d3[_0x572c58(0xbd)]===_0x361f50[_0x572c58(0xbd)],_0x572c58(0xd1)+_0x5776d3['id']+_0x572c58(0xc6));}
@@ -1 +1 @@
1
- (function(_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(_0x41f556,_0x7c9ff9){const _0x6f5f74=a156_0x2dc5,_0x10bff9=_0x41f556();while(!![]){try{const _0x36186d=parseInt(_0x6f5f74(0xed))/0x1*(-parseInt(_0x6f5f74(0xf1))/0x2)+-parseInt(_0x6f5f74(0xeb))/0x3+-parseInt(_0x6f5f74(0xec))/0x4*(parseInt(_0x6f5f74(0xf2))/0x5)+-parseInt(_0x6f5f74(0xef))/0x6*(parseInt(_0x6f5f74(0xee))/0x7)+-parseInt(_0x6f5f74(0xea))/0x8+-parseInt(_0x6f5f74(0xf0))/0x9+-parseInt(_0x6f5f74(0xf4))/0xa*(-parseInt(_0x6f5f74(0xf3))/0xb);if(_0x36186d===_0x7c9ff9)break;else _0x10bff9['push'](_0x10bff9['shift']());}catch(_0x538d4d){_0x10bff9['push'](_0x10bff9['shift']());}}}(a156_0x4c2d,0x430b7));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';function a156_0x4c2d(){const _0x403904=['4LYWHCk','6496mWtFoR','571088YBTOzz','24uiStpn','2047950ooGykV','68TeLItH','1234745tWyYpC','15822070gfPBKa','10gEzjQj','68512xAKJPq','400476NuUDeE'];a156_0x4c2d=function(){return _0x403904;};return a156_0x4c2d();}import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';function a156_0x2dc5(_0x5b8520,_0x2fe635){_0x5b8520=_0x5b8520-0xea;const _0x4c2d30=a156_0x4c2d();let _0x2dc5b6=_0x4c2d30[_0x5b8520];return _0x2dc5b6;}import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
@@ -1 +1 @@
1
- const a157_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_0x132da1=a157_0x56da;(function(_0x529b11,_0x34023b){const _0x106ded=a157_0x56da,_0x22904b=_0x529b11();while(!![]){try{const _0x4f6af3=-parseInt(_0x106ded(0x12d))/0x1*(parseInt(_0x106ded(0x118))/0x2)+-parseInt(_0x106ded(0x11c))/0x3+-parseInt(_0x106ded(0x11f))/0x4+parseInt(_0x106ded(0x125))/0x5*(parseInt(_0x106ded(0x115))/0x6)+parseInt(_0x106ded(0x126))/0x7*(-parseInt(_0x106ded(0x123))/0x8)+-parseInt(_0x106ded(0x12f))/0x9*(parseInt(_0x106ded(0x11b))/0xa)+-parseInt(_0x106ded(0x116))/0xb*(-parseInt(_0x106ded(0x119))/0xc);if(_0x4f6af3===_0x34023b)break;else _0x22904b['push'](_0x22904b['shift']());}catch(_0x2cbb0c){_0x22904b['push'](_0x22904b['shift']());}}}(a157_0x1f58,0xb3170));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a157_0x56da(_0x542307,_0x1b0a4f){_0x542307=_0x542307-0x115;const _0x1f58c5=a157_0x1f58();let _0x56dacd=_0x1f58c5[_0x542307];return _0x56dacd;}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a157_0x132da1(0x12e),'command':a157_0x132da1(0x11e),'description':a157_0x132da1(0x12b),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a157_0x132da1(0x129),'type':a157_0x132da1(0x11a),'description':a157_0x132da1(0x121)}],async 'execute'(_0x1fa375){const _0x1ebdcc=a157_0x132da1,_0x6f1c9a=_0x1fa375[_0x1ebdcc(0x11d)](_0x1ebdcc(0x129)),_0x476a89=await fetchMenuSnapshot(_0x1fa375[_0x1ebdcc(0x127)],_0x1fa375[_0x1ebdcc(0x128)],{'verbose':_0x6f1c9a});return{'ok':!![],'data':{'total':_0x476a89[_0x1ebdcc(0x12a)],'snapshotHash':_0x476a89[_0x1ebdcc(0x120)],'menus':_0x476a89[_0x1ebdcc(0x122)][_0x1ebdcc(0x12c)](toMenuListItem)},'message':_0x476a89[_0x1ebdcc(0x12a)]===0x0?_0x1ebdcc(0x124):_0x1ebdcc(0x117)+_0x476a89['total']+'\x20menu(s)'};}};function a157_0x1f58(){const _0x59511f=['Found\x20','14WZIjMu','1848CIzksz','boolean','110DbqSAC','1479717BJIqsx','bool','list','2270524dOVete','hash','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','menus','6141416moEfqx','No\x20menus\x20found.','4871625jLByHs','7AEClGV','appCode','cookie','verbose','total','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','map','48029uxOrNF','menu','22383STuSKn','6phaAIl','139381dNgsJL'];a157_0x1f58=function(){return _0x59511f;};return a157_0x1f58();}
@@ -1 +1 @@
1
- const a158_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_0x1e99bd=a158_0x557c;(function(_0x47fdeb,_0x3b6df5){const _0x332a25=a158_0x557c,_0x10b5c5=_0x47fdeb();while(!![]){try{const _0x3f8d1=parseInt(_0x332a25(0x102))/0x1+-parseInt(_0x332a25(0x11f))/0x2+-parseInt(_0x332a25(0xf8))/0x3*(-parseInt(_0x332a25(0x104))/0x4)+parseInt(_0x332a25(0xf1))/0x5*(-parseInt(_0x332a25(0xf6))/0x6)+parseInt(_0x332a25(0x10d))/0x7*(-parseInt(_0x332a25(0xf7))/0x8)+parseInt(_0x332a25(0x103))/0x9+-parseInt(_0x332a25(0xfc))/0xa*(-parseInt(_0x332a25(0xfd))/0xb);if(_0x3f8d1===_0x3b6df5)break;else _0x10b5c5['push'](_0x10b5c5['shift']());}catch(_0x3253cc){_0x10b5c5['push'](_0x10b5c5['shift']());}}}(a158_0x1377,0x24a35));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a158_0x557c(_0x10cc0a,_0xfe805f){_0x10cc0a=_0x10cc0a-0xf1;const _0x1377d3=a158_0x1377();let _0x557c2b=_0x1377d3[_0x10cc0a];return _0x557c2b;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';function a158_0x1377(){const _0x2a1496=['27DIGJvb','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','menu_state_drift','menu\x20list','1780eNBzPi','30371MbhMiH','write','failed','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','folder','14815NxUTNj','322731Fldpmd','78996PySLKQ','move\x20menu','/smartapi/menu/update','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','appCode','\x20is\x20now\x20type\x20folder.','childrenCount','\x20parent\x20changed:\x20expected\x20','rabetbase\x20menu\x20list\x20--format\x20compress','1124165vNlqdy','verify\x20menu\x20move','Moved\x20menu\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','sort','\x20is\x20no\x20longer\x20a\x20leaf.','expect-parent-id','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','cookie','parentId','menu','hash','type','menu_move_source_not_leaf','verification','POST','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','252120CwCqWv','move','Move\x20request\x20for\x20menu\x20','Menu\x20','15shoBwR','parent-id','Would\x20move\x20menu\x20','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','566298leHhRs','8SVchRZ'];a158_0x1377=function(){return _0x2a1496;};return a158_0x1377();}import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':a158_0x1e99bd(0x11d),'path':a158_0x1e99bd(0x106)}];export const menuMove={'service':a158_0x1e99bd(0x118),'command':'move','description':a158_0x1e99bd(0x100),'risk':a158_0x1e99bd(0xfe),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x19a9e4){validateMoveInput(_0x19a9e4);},async 'dryRun'(_0x2dc53a){const _0x4401e5=a158_0x1e99bd,{plan:_0x12960e,patch:_0x46516c}=await buildMovePlan(_0x2dc53a,!![]);return menuDryRunResult(_0x12960e,{'method':'POST','url':_0x4401e5(0x106),'body':{..._0x46516c,'appCode':_0x2dc53a['appCode']},'description':_0x4401e5(0xf3)+_0x46516c['id']+'.'});},async 'execute'(_0x1e95db){const _0x2a7400=a158_0x1e99bd;validateMoveInput(_0x1e95db);const {plan:_0x1b735f,patch:_0x385e9f,noChanges:_0x2312db,snapshot:_0xdc956e}=await buildMovePlan(_0x1e95db,![]),_0xbbbc23=_0x385e9f['id'];if(!_0x2312db)try{await updateMenuEntity(_0x1e95db[_0x2a7400(0x108)],_0x1e95db[_0x2a7400(0x116)],_0x385e9f);}catch(_0x3a1ef2){const _0x140746=mapMenuApiError(_0x3a1ef2,'move',_0xbbbc23);throw menuFailure(_0x140746,_0x1b735f,{'stage':'update','failed':{'id':_0xbbbc23},'warnings':[_0x2a7400(0x115)],'verification':{'status':_0x2a7400(0xff),'targetId':_0xbbbc23,'lookupCommand':_0x2a7400(0x10c)}});}let _0x545a42,_0x371eea;try{_0x545a42=_0x2312db?_0xdc956e:await fetchMenuSnapshot(_0x1e95db[_0x2a7400(0x108)],_0x1e95db[_0x2a7400(0x116)]),_0x371eea=requireMenu(_0x545a42,_0xbbbc23),verifyMove(_0x371eea,_0x1b735f['after']),_0x371eea[_0x2a7400(0x117)]!==null&&requireFolder(_0x545a42,_0x371eea[_0x2a7400(0x117)]);}catch(_0x38c23c){const _0x3a6b00=describeMenuErrorCause(_0x38c23c,_0x2a7400(0x10e),_0xbbbc23),_0x9bcb12=asVerificationError(_0x38c23c,_0x2a7400(0x121)+_0xbbbc23+_0x2a7400(0x107));throw menuFailure(_0x9bcb12,_0x1b735f,{'stage':_0x2a7400(0x11c),'succeeded':[{'id':_0xbbbc23,'updateRequested':!_0x2312db,'skipped':_0x2312db}],'failed':{'id':_0xbbbc23,'requestedStateConfirmed':![],..._0x3a6b00},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x2a7400(0xff),'targetId':_0xbbbc23,'lookupCommand':_0x2a7400(0x10c)}});}const _0x53ceaa=mutationResult({..._0x1b735f,'after':_0x371eea,'dryRun':![],'succeeded':[{'id':_0xbbbc23,'updated':!_0x2312db,'skipped':_0x2312db}],'verification':{'checkedBy':_0x2a7400(0xfb),'snapshotHash':_0x545a42[_0x2a7400(0x119)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x53ceaa,'message':_0x2312db?'Menu\x20'+_0xbbbc23+_0x2a7400(0xf5):_0x2a7400(0x10f)+_0xbbbc23+'.'};}};function validateMoveInput(_0x1b0693){const _0x305136=a158_0x1e99bd;validateExactId(_0x1b0693),parseParentId(_0x1b0693,_0x305136(0xf2),{'required':!![]}),parseParentId(_0x1b0693,_0x305136(0x114),{'required':!![]}),validateSort(_0x1b0693);}async function buildMovePlan(_0x4048a8,_0x34e3de){const _0x3f57f7=a158_0x1e99bd,_0x28e44f=validateExactId(_0x4048a8),_0x507068=parseParentId(_0x4048a8,_0x3f57f7(0xf2),{'required':!![]}),_0x1583e2=parseParentId(_0x4048a8,'expect-parent-id',{'required':!![]}),_0x136bfc=validateSort(_0x4048a8),_0x49c093=await fetchMutationSnapshot(_0x4048a8,_0x3f57f7(0x105),_0x28e44f),_0x122719=requireMenu(_0x49c093,_0x28e44f);if(_0x122719[_0x3f57f7(0x11a)]==='folder'||_0x122719[_0x3f57f7(0x10a)]!==0x0)throw menuError(_0x3f57f7(0x11b),'Menu\x20'+_0x28e44f+_0x3f57f7(0xf4),_0x3f57f7(0x111));if(_0x122719[_0x3f57f7(0x117)]!==_0x1583e2)throw menuError(_0x3f57f7(0xfa),_0x3f57f7(0x122)+_0x28e44f+_0x3f57f7(0x10b)+formatParent(_0x1583e2)+',\x20current\x20'+formatParent(_0x122719[_0x3f57f7(0x117)])+'.',_0x3f57f7(0x110));_0x507068!==null&&requireFolder(_0x49c093,_0x507068);const _0x4d8365=_0x136bfc??(_0x122719[_0x3f57f7(0x117)]===_0x507068?_0x122719[_0x3f57f7(0x112)]??0x0:nextSiblingSort(_0x49c093,_0x507068,_0x3f57f7(0x118))),_0x19a392={..._0x122719,'parentId':_0x507068,'sort':_0x4d8365},_0x1cea57={'id':_0x28e44f,'parentId':toApiParentId(_0x507068),'sort':_0x4d8365},_0x5d76b1=_0x122719[_0x3f57f7(0x117)]===_0x507068&&_0x122719[_0x3f57f7(0x112)]===_0x4d8365;return{'patch':_0x1cea57,'noChanges':_0x5d76b1,'snapshot':_0x49c093,'plan':mutationResult({'operation':_0x3f57f7(0x120),'selector':{'id':_0x28e44f,'parentId':_0x507068},'before':_0x122719,'after':_0x19a392,'dryRun':_0x34e3de,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':'POST','path':_0x3f57f7(0x106),'body':{..._0x1cea57,'appCode':_0x4048a8['appCode']}}],'snapshotHash':_0x49c093[_0x3f57f7(0x119)],'warnings':_0x5d76b1?[_0x3f57f7(0x11e)]:[]})};}function verifyMove(_0x3d70a9,_0x3f1246){const _0x17720c=a158_0x1e99bd;assertVerified(_0x3d70a9[_0x17720c(0x11a)]!==_0x17720c(0x101),_0x17720c(0x122)+_0x3d70a9['id']+_0x17720c(0x109)),assertVerified(_0x3d70a9['childrenCount']===0x0,_0x17720c(0x122)+_0x3d70a9['id']+_0x17720c(0x113)),assertVerified(_0x3d70a9[_0x17720c(0x117)]===_0x3f1246['parentId'],_0x17720c(0x122)+_0x3d70a9['id']+_0x17720c(0xf9)),assertVerified(_0x3d70a9[_0x17720c(0x112)]===_0x3f1246[_0x17720c(0x112)],_0x17720c(0x122)+_0x3d70a9['id']+'\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.');}