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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (342) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/api/generate-sdk-config-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.js +1 -1
  11. package/lib/auth/login-success-html.js +1 -1
  12. package/lib/auth/logout.js +1 -1
  13. package/lib/cli-flags.js +1 -1
  14. package/lib/cli.js +1 -1
  15. package/lib/commands/api/generate.js +1 -1
  16. package/lib/commands/api/index.js +1 -1
  17. package/lib/commands/api/list.js +1 -1
  18. package/lib/commands/api/pull.js +1 -1
  19. package/lib/commands/api/shared.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/members-list.js +1 -1
  23. package/lib/commands/app/remote-directory.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/delete.js +1 -1
  53. package/lib/commands/config/get.js +1 -1
  54. package/lib/commands/config/index.js +1 -1
  55. package/lib/commands/config/init.js +1 -1
  56. package/lib/commands/config/list.js +1 -1
  57. package/lib/commands/config/set.js +1 -1
  58. package/lib/commands/config/shared.js +1 -1
  59. package/lib/commands/dataset/business-group-update.js +1 -1
  60. package/lib/commands/dataset/business-groups.js +1 -1
  61. package/lib/commands/dataset/capability.js +1 -1
  62. package/lib/commands/dataset/delete.js +1 -1
  63. package/lib/commands/dataset/detail.js +1 -1
  64. package/lib/commands/dataset/extend-update.js +1 -1
  65. package/lib/commands/dataset/field-restore.js +1 -1
  66. package/lib/commands/dataset/field-update.js +1 -1
  67. package/lib/commands/dataset/generate.js +1 -1
  68. package/lib/commands/dataset/index.js +1 -1
  69. package/lib/commands/dataset/list.js +1 -1
  70. package/lib/commands/dataset/operations.js +1 -1
  71. package/lib/commands/dataset/relation-audit.js +1 -1
  72. package/lib/commands/dataset/relation-create.js +1 -1
  73. package/lib/commands/dataset/relation-delete.js +1 -1
  74. package/lib/commands/dataset/relation-shared.js +1 -1
  75. package/lib/commands/dataset/relation-update.js +1 -1
  76. package/lib/commands/dataset/relations.js +1 -1
  77. package/lib/commands/dataset/rename.js +1 -1
  78. package/lib/commands/dataset/restore.js +1 -1
  79. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  80. package/lib/commands/db/analysis-batching.js +1 -1
  81. package/lib/commands/db/analyze-batch-plan.js +1 -1
  82. package/lib/commands/db/analyze-cancel.js +1 -1
  83. package/lib/commands/db/analyze-start.js +1 -1
  84. package/lib/commands/db/analyze-status.js +1 -1
  85. package/lib/commands/db/create.js +1 -1
  86. package/lib/commands/db/delete.js +1 -1
  87. package/lib/commands/db/detail.js +1 -1
  88. package/lib/commands/db/diff-refresh-start.js +1 -1
  89. package/lib/commands/db/diff-refresh-status.js +1 -1
  90. package/lib/commands/db/diff.js +1 -1
  91. package/lib/commands/db/index.js +1 -1
  92. package/lib/commands/db/list.js +1 -1
  93. package/lib/commands/db/shared.js +1 -1
  94. package/lib/commands/db/table-diff-shared.js +1 -1
  95. package/lib/commands/db/tables.js +1 -1
  96. package/lib/commands/db/test.js +1 -1
  97. package/lib/commands/db/update.js +1 -1
  98. package/lib/commands/deployment/auto-sync.js +1 -1
  99. package/lib/commands/deployment/index.js +1 -1
  100. package/lib/commands/deployment/sync-all.d.ts +2 -0
  101. package/lib/commands/deployment/sync-all.js +1 -0
  102. package/lib/commands/deployment/sync-jobs.d.ts +2 -0
  103. package/lib/commands/deployment/sync-jobs.js +1 -0
  104. package/lib/commands/deployment/sync-status.d.ts +2 -0
  105. package/lib/commands/deployment/sync-status.js +1 -0
  106. package/lib/commands/deployment/sync.js +1 -1
  107. package/lib/commands/doctor.js +1 -1
  108. package/lib/commands/file/index.js +1 -1
  109. package/lib/commands/instant-api-policy/current.d.ts +2 -0
  110. package/lib/commands/instant-api-policy/current.js +1 -0
  111. package/lib/commands/instant-api-policy/index.d.ts +2 -0
  112. package/lib/commands/instant-api-policy/index.js +1 -0
  113. package/lib/commands/instant-api-policy/init.d.ts +2 -0
  114. package/lib/commands/instant-api-policy/init.js +1 -0
  115. package/lib/commands/instant-api-policy/publish.d.ts +2 -0
  116. package/lib/commands/instant-api-policy/publish.js +1 -0
  117. package/lib/commands/instant-api-policy/pull.d.ts +2 -0
  118. package/lib/commands/instant-api-policy/pull.js +1 -0
  119. package/lib/commands/instant-api-policy/revision.d.ts +2 -0
  120. package/lib/commands/instant-api-policy/revision.js +1 -0
  121. package/lib/commands/instant-api-policy/revisions.d.ts +2 -0
  122. package/lib/commands/instant-api-policy/revisions.js +1 -0
  123. package/lib/commands/instant-api-policy/rollback.d.ts +2 -0
  124. package/lib/commands/instant-api-policy/rollback.js +1 -0
  125. package/lib/commands/instant-api-policy/shared.d.ts +82 -0
  126. package/lib/commands/instant-api-policy/shared.js +1 -0
  127. package/lib/commands/instant-api-policy/validate.d.ts +2 -0
  128. package/lib/commands/instant-api-policy/validate.js +1 -0
  129. package/lib/commands/issue/index.js +1 -1
  130. package/lib/commands/issue/nudge.js +1 -1
  131. package/lib/commands/issue/report.js +1 -1
  132. package/lib/commands/issue/shared.js +1 -1
  133. package/lib/commands/kb/create.js +1 -1
  134. package/lib/commands/kb/delete.js +1 -1
  135. package/lib/commands/kb/detail.js +1 -1
  136. package/lib/commands/kb/index.js +1 -1
  137. package/lib/commands/kb/list.js +1 -1
  138. package/lib/commands/kb/search.js +1 -1
  139. package/lib/commands/kb/shared.js +1 -1
  140. package/lib/commands/kb/update.js +1 -1
  141. package/lib/commands/logs/index.js +1 -1
  142. package/lib/commands/menu/asset-update.js +1 -1
  143. package/lib/commands/menu/delete.js +1 -1
  144. package/lib/commands/menu/external-link-create.js +1 -1
  145. package/lib/commands/menu/external-link-update.js +1 -1
  146. package/lib/commands/menu/group-create.js +1 -1
  147. package/lib/commands/menu/group-update.js +1 -1
  148. package/lib/commands/menu/index.js +1 -1
  149. package/lib/commands/menu/list.js +1 -1
  150. package/lib/commands/menu/move.js +1 -1
  151. package/lib/commands/menu/regroup-start.js +1 -1
  152. package/lib/commands/menu/rename.js +1 -1
  153. package/lib/commands/menu/shared/compare-table.js +1 -1
  154. package/lib/commands/menu/shared/delete-plan.js +1 -1
  155. package/lib/commands/menu/shared/facts.js +1 -1
  156. package/lib/commands/menu/shared/index.js +1 -1
  157. package/lib/commands/menu/shared/inquirer.js +1 -1
  158. package/lib/commands/menu/shared/local-pages.js +1 -1
  159. package/lib/commands/menu/shared/logic.js +1 -1
  160. package/lib/commands/menu/shared/mutations.js +1 -1
  161. package/lib/commands/menu/shared/service.js +1 -1
  162. package/lib/commands/menu/shared/sync-core.js +1 -1
  163. package/lib/commands/menu/shared/update-core.js +1 -1
  164. package/lib/commands/menu/shared/valid-url.js +1 -1
  165. package/lib/commands/menu/sync.js +1 -1
  166. package/lib/commands/menu/visibility-update.js +1 -1
  167. package/lib/commands/notification/config-create.js +1 -1
  168. package/lib/commands/notification/config-delete.js +1 -1
  169. package/lib/commands/notification/config-list.js +1 -1
  170. package/lib/commands/notification/config-update.js +1 -1
  171. package/lib/commands/notification/index.js +1 -1
  172. package/lib/commands/notification/shared.js +1 -1
  173. package/lib/commands/ocr/index.js +1 -1
  174. package/lib/commands/page/create.js +1 -1
  175. package/lib/commands/page/custom/detail.js +1 -1
  176. package/lib/commands/page/custom/list.js +1 -1
  177. package/lib/commands/page/custom/publish.js +1 -1
  178. package/lib/commands/page/custom/shared.js +1 -1
  179. package/lib/commands/page/custom/syntax.js +1 -1
  180. package/lib/commands/page/custom/template.js +1 -1
  181. package/lib/commands/page/custom/update.js +1 -1
  182. package/lib/commands/page/data-list-status.js +1 -1
  183. package/lib/commands/page/generate-start.js +1 -1
  184. package/lib/commands/page/generate-status.js +1 -1
  185. package/lib/commands/page/index.js +1 -1
  186. package/lib/commands/page/pull.js +1 -1
  187. package/lib/commands/page/push.js +1 -1
  188. package/lib/commands/page/relation-audit.js +1 -1
  189. package/lib/commands/page/restore.js +1 -1
  190. package/lib/commands/page/shared.js +1 -1
  191. package/lib/commands/page/sync.js +1 -1
  192. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  193. package/lib/commands/project/create/format-elapsed.js +1 -1
  194. package/lib/commands/project/create/main.js +1 -1
  195. package/lib/commands/project/create/materialize-project-template.js +1 -1
  196. package/lib/commands/project/create/project-name.js +1 -1
  197. package/lib/commands/project/create/project-template-archive.js +1 -1
  198. package/lib/commands/project/create/project-template-path.js +1 -1
  199. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  200. package/lib/commands/project/create/use-format-code.js +1 -1
  201. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  202. package/lib/commands/project/domain-routing-sync.js +1 -1
  203. package/lib/commands/project/index.js +1 -1
  204. package/lib/commands/project/upgrade.js +1 -1
  205. package/lib/commands/registry.js +1 -1
  206. package/lib/commands/role/delete.js +1 -1
  207. package/lib/commands/role/detail.js +1 -1
  208. package/lib/commands/role/index.js +1 -1
  209. package/lib/commands/role/list.js +1 -1
  210. package/lib/commands/role/shared.js +1 -1
  211. package/lib/commands/role/update.js +1 -1
  212. package/lib/commands/role/user-add.js +1 -1
  213. package/lib/commands/role/user-remove.js +1 -1
  214. package/lib/commands/role/user-resolve.js +1 -1
  215. package/lib/commands/rule/get.js +1 -1
  216. package/lib/commands/rule/index.js +1 -1
  217. package/lib/commands/rule/list.js +1 -1
  218. package/lib/commands/rule/set.js +1 -1
  219. package/lib/commands/rule/shared.js +1 -1
  220. package/lib/commands/run/index.js +1 -1
  221. package/lib/commands/schema.js +1 -1
  222. package/lib/commands/sql/create.js +1 -1
  223. package/lib/commands/sql/delete.js +1 -1
  224. package/lib/commands/sql/detail.js +1 -1
  225. package/lib/commands/sql/exec.js +1 -1
  226. package/lib/commands/sql/index.js +1 -1
  227. package/lib/commands/sql/list.js +1 -1
  228. package/lib/commands/sql/pull.js +1 -1
  229. package/lib/commands/sql/push.js +1 -1
  230. package/lib/commands/sql/shared.js +1 -1
  231. package/lib/commands/sql/status.js +1 -1
  232. package/lib/commands/sql/validate.js +1 -1
  233. package/lib/commands/task/index.js +1 -1
  234. package/lib/commands/task/status.js +1 -1
  235. package/lib/commands/tenant/index.js +1 -1
  236. package/lib/commands/tenant/members-list.js +1 -1
  237. package/lib/commands/tenant/shared.js +1 -1
  238. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  239. package/lib/commands/user-account/index.js +1 -1
  240. package/lib/commands/workspace/add.js +1 -1
  241. package/lib/commands/workspace/index.js +1 -1
  242. package/lib/commands/workspace/remove.js +1 -1
  243. package/lib/config/domain-config.js +1 -1
  244. package/lib/config/project-domain-routing.js +1 -1
  245. package/lib/config/schema.js +1 -1
  246. package/lib/constant/cdn.js +1 -1
  247. package/lib/constant/cli.js +1 -1
  248. package/lib/constant/defaults.js +1 -1
  249. package/lib/constant/domain.js +1 -1
  250. package/lib/constant/env.js +1 -1
  251. package/lib/constant/output.js +1 -1
  252. package/lib/constant/paths.js +1 -1
  253. package/lib/constant/region.js +1 -1
  254. package/lib/constant/risk.js +1 -1
  255. package/lib/constant/routing-profile.js +1 -1
  256. package/lib/context/app-resolver.js +1 -1
  257. package/lib/context/auth-resolver.js +1 -1
  258. package/lib/context/config-loader.js +1 -1
  259. package/lib/context.js +1 -1
  260. package/lib/core/alias-resolver.js +1 -1
  261. package/lib/core/api-client.d.ts +113 -0
  262. package/lib/core/api-client.js +1 -1
  263. package/lib/core/bff/config.js +1 -1
  264. package/lib/core/bff/file-system.js +1 -1
  265. package/lib/core/bff/hash.js +1 -1
  266. package/lib/core/bff/lock.js +1 -1
  267. package/lib/core/bff/utils.js +1 -1
  268. package/lib/core/db-resolver.js +1 -1
  269. package/lib/core/instant-api-policy/config.d.ts +23 -0
  270. package/lib/core/instant-api-policy/config.js +1 -0
  271. package/lib/core/kb-search-client.js +1 -1
  272. package/lib/core/page/file-system.js +1 -1
  273. package/lib/core/page/hash.js +1 -1
  274. package/lib/core/page/lock.js +1 -1
  275. package/lib/core/sql-index-auditor.js +1 -1
  276. package/lib/core/sql-sync/config.js +1 -1
  277. package/lib/core/sql-sync/file-system.js +1 -1
  278. package/lib/core/sql-sync/hash.js +1 -1
  279. package/lib/core/sql-sync/lock.js +1 -1
  280. package/lib/core/sql-sync/utils.js +1 -1
  281. package/lib/core/sql-validator.js +1 -1
  282. package/lib/errors.js +1 -1
  283. package/lib/framework/build-all-flags.js +1 -1
  284. package/lib/framework/error-output.js +1 -1
  285. package/lib/framework/explicit-yes.js +1 -1
  286. package/lib/framework/flags.js +1 -1
  287. package/lib/framework/help.js +1 -1
  288. package/lib/framework/index.js +1 -1
  289. package/lib/framework/output.js +1 -1
  290. package/lib/framework/response.js +1 -1
  291. package/lib/framework/runner-alias.js +1 -1
  292. package/lib/framework/runner.js +1 -1
  293. package/lib/framework/schema-export.js +1 -1
  294. package/lib/framework/supported-flags.js +1 -1
  295. package/lib/framework/types.js +1 -1
  296. package/lib/generated/build-info.d.ts +4 -4
  297. package/lib/generated/build-info.js +1 -1
  298. package/lib/generated/official-routing.js +1 -1
  299. package/lib/generated/routing-contract.js +1 -1
  300. package/lib/help.js +1 -1
  301. package/lib/postinstall.js +1 -1
  302. package/lib/runtime/confirmation.js +1 -1
  303. package/lib/runtime/event.js +1 -1
  304. package/lib/runtime/index.js +1 -1
  305. package/lib/runtime/queue.js +1 -1
  306. package/lib/runtime/resolve.js +1 -1
  307. package/lib/skills/builtin-skill.js +1 -1
  308. package/lib/skills/main.js +1 -1
  309. package/lib/skills/npx-skills-add.js +1 -1
  310. package/lib/skills/skill-presence.js +1 -1
  311. package/lib/telemetry/cli-command-trace.js +1 -1
  312. package/lib/telemetry/cli-help-trace.js +1 -1
  313. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  314. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  315. package/lib/telemetry/send-cli-trace-log.js +1 -1
  316. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  317. package/lib/utils/ai_config.js +1 -1
  318. package/lib/utils/apply-jq-filter.js +1 -1
  319. package/lib/utils/cdn-config.js +1 -1
  320. package/lib/utils/check-sdk-version.js +1 -1
  321. package/lib/utils/cli-version-check.js +1 -1
  322. package/lib/utils/cli-version-policy.js +1 -1
  323. package/lib/utils/config.js +1 -1
  324. package/lib/utils/entity-with-id.js +1 -1
  325. package/lib/utils/file-utils.js +1 -1
  326. package/lib/utils/guides-cdn.js +1 -1
  327. package/lib/utils/http-client.js +1 -1
  328. package/lib/utils/is-non-interactive.js +1 -1
  329. package/lib/utils/logger.js +1 -1
  330. package/lib/utils/params.js +1 -1
  331. package/lib/utils/platform.js +1 -1
  332. package/lib/utils/sleep.js +1 -1
  333. package/lib/utils/template-replacer.js +1 -1
  334. package/lib/utils/update-notice.js +1 -1
  335. package/lib/utils/version.js +1 -1
  336. package/lib/utils/with-active-cookie.js +1 -1
  337. package/lib/utils/write-cli-side-channel.js +1 -1
  338. package/package.json +1 -1
  339. package/skills/rabetbase/SKILL.md +11 -5
  340. package/skills/rabetbase/references/rabetbase-deployment-sync.md +41 -5
  341. package/skills/rabetbase/references/rabetbase-instant-api-policy.md +92 -0
  342. package/skills/rabetbase.manifest.json +4 -3
@@ -1 +1 @@
1
- const a116_0x23c78e=a116_0x266a;(function(_0x41e22e,_0x595416){const _0x4889c4=a116_0x266a,_0x2d3536=_0x41e22e();while(!![]){try{const _0x54cf53=-parseInt(_0x4889c4(0x22e))/0x1*(-parseInt(_0x4889c4(0x21b))/0x2)+-parseInt(_0x4889c4(0x1fa))/0x3*(-parseInt(_0x4889c4(0x1ed))/0x4)+parseInt(_0x4889c4(0x209))/0x5+-parseInt(_0x4889c4(0x208))/0x6*(-parseInt(_0x4889c4(0x20f))/0x7)+-parseInt(_0x4889c4(0x20c))/0x8*(parseInt(_0x4889c4(0x1db))/0x9)+parseInt(_0x4889c4(0x1e3))/0xa+-parseInt(_0x4889c4(0x24a))/0xb;if(_0x54cf53===_0x595416)break;else _0x2d3536['push'](_0x2d3536['shift']());}catch(_0x4906be){_0x2d3536['push'](_0x2d3536['shift']());}}}(a116_0x16be,0x89e3e));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';function a116_0x16be(){const _0x7eabba=['1152184xKidlw','snapshotHash','menu_batch_delete_count_mismatch','7HcHPtJ','pre-write-plan-validation','absentIds','expected-children-count','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','Menu\x20','cascade','Post-mismatch\x20menu\x20readback\x20failed\x20(','boolean','menu_delete_page_bound','plan','toLowerCase','1936206iXrIeb','plan-out','\x20menu(s)\x20under\x20exact\x20id\x20','menu_tree_invalid','str','resourcesValid','snapshot','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','size','get','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','add','\x20references\x20missing\x20child\x20','delete','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','createdAt','appCode','menu_verification_failed','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','1FrUTqX','pages','push','forEach','pageId','recursive','menus','length','byId','POST','folder','filter','menu_non_empty','\x20deleted\x20menus;\x20expected\x20','dry-run','string','unknown','Backend\x20reported\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','Folder\x20','type','rabetbase\x20menu\x20list\x20--format\x20json','unconfirmed','Post-failure\x20menu\x20readback\x20failed\x20(','failed','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','causeCode','menu_folder_has_resources','10039018mrlCOq','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','expect-parent-id','flagMissing','verification','menu','\x20has\x20','plan-validation','childrenIds','batch-delete','indexOf','45WqvCiX','menu_recursive_requires_folder','):\x20','remainingIds','high-risk-write','Deleted\x20','stringify','verify\x20batch\x20delete','5665420lTScjz','join','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','cookie','resources','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','bool','8hXTYys','expect-path','page\x20','validation','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','map','\x20is\x20not\x20a\x20folder.','/smartapi/menu/batchDelete','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','batch\x20delete','\x20->\x20menu\x20','104421vazwNC','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','deleteOrder','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','\x20still\x20references\x20','hash','message','trim','execute\x20reviewed\x20delete\x20plan','\x20resource\x20URL(s).','menu_plan_invalid','causeMessage','has','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','3321366uFeHGK','198655moXbsJ','target','Batch\x20delete\x20request\x20for\x20menu\x20'];a116_0x16be=function(){return _0x7eabba;};return a116_0x16be();}const BACKEND=[{'method':a116_0x23c78e(0x237),'path':'/smartapi/menu/batchDelete'}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':a116_0x23c78e(0x233),'type':a116_0x23c78e(0x217),'description':'Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first'},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':a116_0x23c78e(0x23d),'description':a116_0x23c78e(0x229)},MENU_DELETE_PLAN_FLAG={'name':a116_0x23c78e(0x219),'type':a116_0x23c78e(0x23d),'description':a116_0x23c78e(0x225)};export const menuDelete={'service':a116_0x23c78e(0x24f),'command':a116_0x23c78e(0x228),'description':'Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','risk':a116_0x23c78e(0x1df),'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'(_0x1f7347){const _0x35ee71=a116_0x23c78e;_0x1f7347[_0x35ee71(0x1ec)](_0x35ee71(0x23c))?validateDeleteDryRunInput(_0x1f7347):validateDeleteExecuteInput(_0x1f7347),requireExplicitYes(_0x1f7347);},async 'dryRun'(_0x1c2685){const _0x1e90d1=a116_0x23c78e;validateDeleteDryRunInput(_0x1c2685);const _0x420da6=await buildDeletePlan(_0x1c2685),_0x588e9f=createMenuDeletePlanFile(_0x1c2685['appCode'],_0x420da6),_0x2ad199=await writeMenuDeletePlan(_0x1c2685[_0x1e90d1(0x21f)](_0x1e90d1(0x21c)),_0x588e9f),_0x30bceb=mutationResult({..._0x420da6,'planFile':{'path':_0x2ad199,'createdAt':_0x588e9f[_0x1e90d1(0x22a)],'expiresAt':_0x588e9f['expiresAt']}});return menuDryRunResult(_0x30bceb,{'method':_0x1e90d1(0x237),'url':_0x1e90d1(0x1f5),'body':{'idList':_0x30bceb[_0x1e90d1(0x1fc)]},'description':'Would\x20batch\x20delete\x20'+(_0x30bceb['deleteOrder']?.[_0x1e90d1(0x235)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x30bceb['selector']['id']+';\x20execution\x20must\x20consume\x20'+_0x2ad199+'.'});},async 'execute'(_0x88c130){const _0x5bb3cf=a116_0x23c78e;requireExplicitYes(_0x88c130),validateDeleteExecuteInput(_0x88c130);const _0x389f59=await readMenuDeletePlan(_0x88c130[_0x5bb3cf(0x21f)](_0x5bb3cf(0x219))),_0xdf6d7c=mutationPlanFromDeleteFile(_0x389f59[_0x5bb3cf(0x219)],_0x389f59['path']),_0x29a166=_0x389f59['plan'][_0x5bb3cf(0x20a)]['id'];try{assertMenuDeletePlanExecutable(_0x389f59[_0x5bb3cf(0x219)],_0x88c130['appCode']);}catch(_0x4bd5ef){throw menuFailure(asMenuError(_0x4bd5ef),_0xdf6d7c,{'stage':_0x5bb3cf(0x1d7),'failed':{'id':_0x29a166}});}let _0x563fb2,_0x2254da;try{_0x563fb2=await fetchMutationSnapshot(_0x88c130,_0x5bb3cf(0x202),_0x29a166),_0x2254da=assertMenuDeletePlanCurrent(_0x389f59['plan'],_0x88c130[_0x5bb3cf(0x22b)],_0x563fb2),assertDeleteTargetsComplete(_0x389f59[_0x5bb3cf(0x219)],_0x563fb2),_0x2254da[_0x5bb3cf(0x231)](_0x52639c=>assertDeleteSafety(_0x52639c,_0x389f59['plan'][_0x5bb3cf(0x233)])),assertNoSharedPages(_0x563fb2,_0x2254da),assertCascadeMatchesPlan(_0xdf6d7c,_0x2254da);}catch(_0x2237b9){throw menuFailure(asMenuError(_0x2237b9),_0xdf6d7c,{'stage':_0x5bb3cf(0x210),'failed':{'id':_0x29a166}});}const _0x4a7eb5=_0x389f59[_0x5bb3cf(0x219)][_0x5bb3cf(0x1fc)];let _0x4e7f5f;try{_0x4e7f5f=await batchDeleteMenuEntities(_0x88c130['cookie'],_0x4a7eb5);}catch(_0x1a7f5e){const _0x119df9=mapMenuApiError(_0x1a7f5e,_0x5bb3cf(0x1f8)),_0x2c591=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0x2fd9e8;try{_0x2fd9e8=await readDeleteOutcome(_0x88c130,_0x4a7eb5);}catch(_0x3efa72){const _0x186c75=describeMenuErrorCause(_0x3efa72,_0x5bb3cf(0x1fd),_0x29a166);_0x2c591[_0x5bb3cf(0x230)](_0x5bb3cf(0x245)+_0x186c75['causeCode']+_0x5bb3cf(0x1dd)+_0x186c75[_0x5bb3cf(0x205)]);throw menuFailure(_0x119df9,_0xdf6d7c,{'stage':_0x5bb3cf(0x1d9),'failed':{'targetIds':_0x4a7eb5,'targetIdsAbsent':_0x5bb3cf(0x244),..._0x186c75},'warnings':_0x2c591,'verification':{'status':_0x5bb3cf(0x246),'lookupCommand':_0x5bb3cf(0x243),'targetIds':_0x4a7eb5}});}throw menuFailure(_0x119df9,_0xdf6d7c,{'stage':'batch-delete','succeeded':_0x2fd9e8[_0x5bb3cf(0x211)][_0x5bb3cf(0x1f3)](_0x11a0d5=>({'id':_0x11a0d5,'deleted':!![]})),'failed':{'targetIds':_0x4a7eb5,'absentIds':_0x2fd9e8[_0x5bb3cf(0x211)],'remainingIds':_0x2fd9e8[_0x5bb3cf(0x1de)]},'warnings':_0x2c591,'verification':verificationFromOutcome(_0x2fd9e8)});}if(_0x4e7f5f!==_0x4a7eb5[_0x5bb3cf(0x235)]){const _0x180cdb=menuError(_0x5bb3cf(0x20e),_0x5bb3cf(0x23f)+_0x4e7f5f+_0x5bb3cf(0x23b)+_0x4a7eb5[_0x5bb3cf(0x235)]+'.',_0x5bb3cf(0x247)),_0x1f96a2=['The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.'];let _0x151d4d;try{_0x151d4d=await readDeleteOutcome(_0x88c130,_0x4a7eb5);}catch(_0x3e41b7){const _0x12eb3a=describeMenuErrorCause(_0x3e41b7,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x29a166);_0x1f96a2[_0x5bb3cf(0x230)](_0x5bb3cf(0x216)+_0x12eb3a[_0x5bb3cf(0x248)]+_0x5bb3cf(0x1dd)+_0x12eb3a[_0x5bb3cf(0x205)]);throw menuFailure(_0x180cdb,_0xdf6d7c,{'stage':_0x5bb3cf(0x1d9),'failed':{'targetIds':_0x4a7eb5,'expectedCount':_0x4a7eb5[_0x5bb3cf(0x235)],'reportedDeletedCount':_0x4e7f5f,'targetIdsAbsent':_0x5bb3cf(0x244),..._0x12eb3a},'warnings':_0x1f96a2,'verification':{'status':_0x5bb3cf(0x246),'lookupCommand':_0x5bb3cf(0x243),'targetIds':_0x4a7eb5}});}throw menuFailure(_0x180cdb,_0xdf6d7c,{'stage':'batch-delete','succeeded':_0x151d4d[_0x5bb3cf(0x211)][_0x5bb3cf(0x1f3)](_0x5c6558=>({'id':_0x5c6558,'deleted':!![]})),'failed':{'targetIds':_0x4a7eb5,'expectedCount':_0x4a7eb5[_0x5bb3cf(0x235)],'reportedDeletedCount':_0x4e7f5f,'absentIds':_0x151d4d[_0x5bb3cf(0x211)],'remainingIds':_0x151d4d[_0x5bb3cf(0x1de)]},'warnings':_0x1f96a2,'verification':verificationFromOutcome(_0x151d4d)});}let _0x5170df;try{_0x5170df=await readDeleteOutcome(_0x88c130,_0x4a7eb5);}catch(_0x14d032){const _0x515fc2=describeMenuErrorCause(_0x14d032,_0x5bb3cf(0x1e2),_0x29a166),_0x52a98b=asVerificationError(_0x14d032,_0x5bb3cf(0x20b)+_0x29a166+_0x5bb3cf(0x240));throw menuFailure(_0x52a98b,_0xdf6d7c,{'stage':_0x5bb3cf(0x24e),'succeeded':_0x4a7eb5[_0x5bb3cf(0x1f3)](_0x290e29=>({'id':_0x290e29,'deleteRequested':!![]})),'failed':{'id':_0x29a166,'targetIds':_0x4a7eb5,'targetIdsAbsent':_0x5bb3cf(0x244),..._0x515fc2},'warnings':[_0x5bb3cf(0x222)],'verification':{'status':'failed','lookupCommand':_0x5bb3cf(0x243),'targetIds':_0x4a7eb5}});}if(_0x5170df[_0x5bb3cf(0x1de)][_0x5bb3cf(0x235)]>0x0){const _0xb9362b=menuError(_0x5bb3cf(0x22c),_0x5bb3cf(0x1f7)+_0x5170df[_0x5bb3cf(0x1de)][_0x5bb3cf(0x1e4)](',\x20')+'.',_0x5bb3cf(0x247));throw menuFailure(_0xb9362b,_0xdf6d7c,{'stage':_0x5bb3cf(0x24e),'succeeded':_0x4a7eb5[_0x5bb3cf(0x1f3)](_0x19ac8a=>({'id':_0x19ac8a,'deleteRequested':!![]})),'failed':{'id':_0x29a166,'targetIds':_0x4a7eb5,'absentIds':_0x5170df[_0x5bb3cf(0x211)],'remainingIds':_0x5170df['remainingIds']},'warnings':[_0x5bb3cf(0x207)],'verification':verificationFromOutcome(_0x5170df)});}const _0x3ca26e=_0x4a7eb5[_0x5bb3cf(0x1f3)](_0x3e4b3c=>({'id':_0x3e4b3c,'deleted':!![]})),_0x1bc49c=mutationResult({..._0xdf6d7c,'dryRun':![],'succeeded':_0x3ca26e,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0xdf6d7c[_0x5bb3cf(0x20d)],'finalSnapshotHash':_0x5170df[_0x5bb3cf(0x221)]['hash'],'reportedDeletedCount':_0x4e7f5f,'targetAbsent':!_0x5170df['snapshot']['byId']['has'](_0x29a166),'allTargetsAbsent':!![],'targetIds':_0x4a7eb5}});return{'ok':!![],'data':_0x1bc49c,'message':_0x5bb3cf(0x1e0)+_0x3ca26e[_0x5bb3cf(0x235)]+_0x5bb3cf(0x21d)+_0x29a166+'.'};}};async function readDeleteOutcome(_0x3390c4,_0x56d319){const _0x17b739=a116_0x23c78e,_0xe98429=await fetchMenuSnapshot(_0x3390c4[_0x17b739(0x22b)],_0x3390c4[_0x17b739(0x1e9)]);return{'snapshot':_0xe98429,'absentIds':_0x56d319['filter'](_0x45641f=>!_0xe98429['byId'][_0x17b739(0x206)](_0x45641f)),'remainingIds':_0x56d319['filter'](_0x4f3bde=>_0xe98429[_0x17b739(0x236)][_0x17b739(0x206)](_0x4f3bde))};}function verificationFromOutcome(_0x488407){return{'checkedBy':'menu\x20list','absentIds':_0x488407['absentIds'],'remainingIds':_0x488407['remainingIds']};}function validateDeleteDryRunInput(_0x5abddc){const _0x1bf7b4=a116_0x23c78e;validateExactId(_0x5abddc);if(!hasFlag(_0x5abddc,_0x1bf7b4(0x21c))||!_0x5abddc[_0x1bf7b4(0x21f)](_0x1bf7b4(0x21c))[_0x1bf7b4(0x201)]())throw CliErrors[_0x1bf7b4(0x24d)](_0x1bf7b4(0x21c),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x5abddc,_0x1bf7b4(0x219)))throw CliErrors['validation'](_0x1bf7b4(0x1e5));}function validateDeleteExecuteInput(_0x2ff819){const _0x9cbd4a=a116_0x23c78e;if(!hasFlag(_0x2ff819,_0x9cbd4a(0x219))||!_0x2ff819[_0x9cbd4a(0x21f)]('plan')[_0x9cbd4a(0x201)]())throw CliErrors['flagMissing']('plan','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.');const _0x49cb79=['id',_0x9cbd4a(0x233),'plan-out',_0x9cbd4a(0x24c),_0x9cbd4a(0x1ee),_0x9cbd4a(0x212)][_0x9cbd4a(0x239)](_0x36cc84=>hasFlag(_0x2ff819,_0x36cc84));if(_0x49cb79['length']>0x0)throw CliErrors[_0x9cbd4a(0x1f0)](_0x9cbd4a(0x1e6)+_0x49cb79[_0x9cbd4a(0x1f3)](_0x5ea095=>'--'+_0x5ea095)[_0x9cbd4a(0x1e4)](',\x20')+'.');}async function buildDeletePlan(_0x4f63e0){const _0xa5b7e5=a116_0x23c78e,_0x46570a=validateExactId(_0x4f63e0),_0x2499dd=await fetchMutationSnapshot(_0x4f63e0,'plan\x20delete',_0x46570a),_0x4082aa=requireMenu(_0x2499dd,_0x46570a);assertExpectedState(_0x4f63e0,_0x4082aa);const _0x4a297d=_0x4f63e0[_0xa5b7e5(0x1ec)](_0xa5b7e5(0x233));let _0x55ce4e;if(_0x4a297d){if(_0x4082aa['type']['trim']()[_0xa5b7e5(0x21a)]()!==_0xa5b7e5(0x238))throw menuError(_0xa5b7e5(0x1dc),'Menu\x20'+_0x4082aa['id']+'\x20is\x20type\x20\x22'+(_0x4082aa[_0xa5b7e5(0x242)]||_0xa5b7e5(0x23e))+_0xa5b7e5(0x1f1));_0x55ce4e=collectDeleteTargets(_0x2499dd,_0x4082aa),_0x55ce4e[_0xa5b7e5(0x231)](_0x495175=>assertDeleteSafety(_0x495175,!![]));}else assertDeleteSafety(_0x4082aa),_0x55ce4e=[_0x4082aa];assertNoSharedPages(_0x2499dd,_0x55ce4e);const _0xd7b74b=_0x55ce4e[_0xa5b7e5(0x1f3)](_0x272518=>_0x272518['id']),_0x319ec6=cascadeForTargets(_0x55ce4e),_0x4339dd=_0x319ec6[_0xa5b7e5(0x22f)][_0xa5b7e5(0x235)]>0x0?['Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.']:[];return mutationResult({'operation':_0xa5b7e5(0x228),'selector':{'id':_0x46570a,'recursive':_0x4a297d},'before':_0x4082aa,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0xa5b7e5(0x237),'path':'/smartapi/menu/batchDelete','body':{'idList':_0xd7b74b}}],'targets':_0x55ce4e,'deleteOrder':_0xd7b74b,'snapshotHash':_0x2499dd[_0xa5b7e5(0x1ff)],'cascade':_0x319ec6,'warnings':_0x4339dd});}function assertDeleteSafety(_0x4a9d89,_0x52e492=![]){const _0x5f1d8d=a116_0x23c78e,_0x136597=_0x4a9d89[_0x5f1d8d(0x242)][_0x5f1d8d(0x201)]()[_0x5f1d8d(0x21a)]()===_0x5f1d8d(0x238);if(_0x4a9d89['childrenCount']>0x0&&(!_0x52e492||!_0x136597))throw menuError(_0x5f1d8d(0x23a),'Menu\x20'+_0x4a9d89['id']+_0x5f1d8d(0x1d6)+_0x4a9d89['childrenCount']+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20'+_0x4a9d89['childrenIds'][_0x5f1d8d(0x1e4)](',\x20'));if(_0x136597&&_0x4a9d89[_0x5f1d8d(0x232)]!=null)throw menuError(_0x5f1d8d(0x218),_0x5f1d8d(0x241)+_0x4a9d89['id']+_0x5f1d8d(0x1fb)+_0x4a9d89[_0x5f1d8d(0x232)]+'\x20and\x20cannot\x20be\x20deleted\x20safely.',_0x5f1d8d(0x22d));if(!_0x136597)return;if(!_0x4a9d89[_0x5f1d8d(0x220)])throw menuError('menu_folder_resources_invalid',_0x5f1d8d(0x241)+_0x4a9d89['id']+_0x5f1d8d(0x1e7),_0x5f1d8d(0x1f2));if(_0x4a9d89[_0x5f1d8d(0x1ea)][_0x5f1d8d(0x235)]>0x0)throw menuError(_0x5f1d8d(0x249),'Folder\x20'+_0x4a9d89['id']+_0x5f1d8d(0x1fe)+_0x4a9d89[_0x5f1d8d(0x1ea)][_0x5f1d8d(0x235)]+_0x5f1d8d(0x203),_0x5f1d8d(0x1e8));}function collectDeleteTargets(_0x503214,_0x200a59){const _0x13d790=[],_0x2bc017=new Set(),_0xe437a0=new Set(),_0x5d4b9a=_0xcc1246=>{const _0x3ea755=a116_0x266a;if(_0x2bc017[_0x3ea755(0x206)](_0xcc1246['id']))throw menuError(_0x3ea755(0x21e),_0x3ea755(0x1f6)+_0xcc1246['id']+'.');if(_0xe437a0['has'](_0xcc1246['id']))return;_0x2bc017[_0x3ea755(0x226)](_0xcc1246['id']);for(const _0xd8574 of _0xcc1246[_0x3ea755(0x1d8)]){const _0x1ece48=_0x503214['byId'][_0x3ea755(0x224)](_0xd8574);if(!_0x1ece48)throw menuError(_0x3ea755(0x21e),_0x3ea755(0x214)+_0xcc1246['id']+_0x3ea755(0x227)+_0xd8574+'.');_0x5d4b9a(_0x1ece48);}_0x2bc017[_0x3ea755(0x228)](_0xcc1246['id']),_0xe437a0['add'](_0xcc1246['id']),_0x13d790[_0x3ea755(0x230)](_0xcc1246);};return _0x5d4b9a(_0x200a59),_0x13d790;}function assertDeleteTargetsComplete(_0x5bc53b,_0x4c7e33){const _0x6edc6=a116_0x23c78e,_0x204ea5=requireMenu(_0x4c7e33,_0x5bc53b[_0x6edc6(0x20a)]['id']);if(_0x5bc53b[_0x6edc6(0x233)]&&_0x204ea5[_0x6edc6(0x242)][_0x6edc6(0x201)]()[_0x6edc6(0x21a)]()!=='folder')throw menuError(_0x6edc6(0x204),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x204ea5['id']+_0x6edc6(0x1f4));const _0x1caba5=_0x5bc53b['recursive']?collectDeleteTargets(_0x4c7e33,_0x204ea5)[_0x6edc6(0x1f3)](_0x357e2c=>_0x357e2c['id']):[_0x204ea5['id']];if(JSON[_0x6edc6(0x1e1)](_0x5bc53b[_0x6edc6(0x1fc)])!==JSON[_0x6edc6(0x1e1)](_0x1caba5))throw menuError(_0x6edc6(0x204),'Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.');}function assertNoSharedPages(_0x9499b4,_0x172c20){const _0x17c485=a116_0x23c78e,_0x520a21=new Set(_0x172c20[_0x17c485(0x1f3)](_0x57a7cc=>_0x57a7cc['id'])),_0xa7876b=new Set(_0x172c20[_0x17c485(0x1f3)](_0x51409f=>_0x51409f[_0x17c485(0x232)])['filter'](_0x4f54e7=>_0x4f54e7!=null));if(_0xa7876b[_0x17c485(0x223)]===0x0)return;const _0x407f7a=_0x9499b4[_0x17c485(0x234)][_0x17c485(0x239)](_0xb0a66f=>!_0x520a21[_0x17c485(0x206)](_0xb0a66f['id'])&&_0xb0a66f[_0x17c485(0x232)]!=null&&_0xa7876b[_0x17c485(0x206)](_0xb0a66f[_0x17c485(0x232)]));if(_0x407f7a['length']===0x0)return;const _0x5b13a7=_0x407f7a[_0x17c485(0x1f3)](_0x1b3b72=>_0x17c485(0x1ef)+_0x1b3b72['pageId']+_0x17c485(0x1f9)+_0x1b3b72['id'])[_0x17c485(0x1e4)](',\x20');throw menuError('menu_page_shared',_0x17c485(0x24b)+_0x5b13a7+'.',_0x17c485(0x1eb));}function a116_0x266a(_0x4bbeeb,_0x3eb573){_0x4bbeeb=_0x4bbeeb-0x1d6;const _0x16be3e=a116_0x16be();let _0x266a17=_0x16be3e[_0x4bbeeb];return _0x266a17;}function assertCascadeMatchesPlan(_0x42c4cd,_0x57709e){const _0x222a07=a116_0x23c78e,_0x242820=cascadeForTargets(_0x57709e);if(JSON[_0x222a07(0x1e1)](_0x42c4cd[_0x222a07(0x215)])!==JSON[_0x222a07(0x1e1)](_0x242820))throw menuError(_0x222a07(0x204),_0x222a07(0x213));}function cascadeForTargets(_0x55492f){const _0xea4d0c=a116_0x23c78e,_0xbc61ea=_0x55492f[_0xea4d0c(0x1f3)](_0x4e041e=>_0x4e041e[_0xea4d0c(0x232)])['filter'](_0x182a19=>_0x182a19!=null)['filter']((_0x53d052,_0xd6c3e1,_0x2b70c6)=>_0x2b70c6[_0xea4d0c(0x1da)](_0x53d052)===_0xd6c3e1);return{'pages':_0xbc61ea,'pageSchemaAffected':_0xbc61ea[_0xea4d0c(0x235)]>0x0};}function asMenuError(_0x2b5587){const _0x3b1a1e=a116_0x23c78e;return _0x2b5587 instanceof CliError?_0x2b5587:menuError(_0x3b1a1e(0x204),_0x2b5587 instanceof Error?_0x2b5587[_0x3b1a1e(0x200)]:String(_0x2b5587));}
1
+ const a129_0x190cbc=a129_0x328e;(function(_0x47dc56,_0x468a93){const _0x24f2e7=a129_0x328e,_0xe54401=_0x47dc56();while(!![]){try{const _0x3671dd=-parseInt(_0x24f2e7(0x1c7))/0x1*(parseInt(_0x24f2e7(0x1ea))/0x2)+parseInt(_0x24f2e7(0x179))/0x3+parseInt(_0x24f2e7(0x17d))/0x4*(-parseInt(_0x24f2e7(0x18f))/0x5)+parseInt(_0x24f2e7(0x1c0))/0x6+-parseInt(_0x24f2e7(0x16f))/0x7+parseInt(_0x24f2e7(0x1b8))/0x8*(-parseInt(_0x24f2e7(0x1e2))/0x9)+-parseInt(_0x24f2e7(0x1b0))/0xa*(-parseInt(_0x24f2e7(0x1ab))/0xb);if(_0x3671dd===_0x468a93)break;else _0xe54401['push'](_0xe54401['shift']());}catch(_0x562c65){_0xe54401['push'](_0xe54401['shift']());}}}(a129_0x45c4,0x81d52));function a129_0x45c4(){const _0x1b7865=['Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','18704660BXShPK','causeCode','Batch\x20delete\x20request\x20for\x20menu\x20','has','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','cascade','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','32632fPlyUP','menu_plan_invalid','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','menu_delete_page_bound','delete','menu_folder_has_resources','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','\x20->\x20menu\x20','6378234cQNSZb','trim','verification','menu_folder_resources_invalid','absentIds','filter','POST','789jySIkf','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','failed',';\x20execution\x20must\x20consume\x20','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','expect-path','\x20still\x20references\x20','string','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','\x20deleted\x20menus;\x20expected\x20','stringify','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','resourcesValid','boolean','unknown','\x20references\x20missing\x20child\x20','page\x20','\x20and\x20cannot\x20be\x20deleted\x20safely.','batch-delete','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','createdAt','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','resources','message','appCode','batch\x20delete','1179QwfGuN','target','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','byId','plan','\x20is\x20type\x20\x22','unconfirmed','2254utidse','plan-out','pageId','2448355VSkmId','expect-parent-id','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','Post-failure\x20menu\x20readback\x20failed\x20(','Post-mismatch\x20menu\x20readback\x20failed\x20(','\x20menu(s)\x20under\x20exact\x20id\x20','add','flagMissing','push','remainingIds','588033UVmTkZ','folder','menu','Backend\x20reported\x20','20aXYYLr','selector','plan-validation','childrenIds','str','menu_verification_failed','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','Folder\x20','map','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','rabetbase\x20menu\x20list\x20--format\x20json','hash','):\x20','childrenCount','causeMessage','size','path','validation','824405mmpNTp','get','toLowerCase','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','menu_tree_invalid','menu_batch_delete_count_mismatch','expected-children-count','menu_non_empty','menus','indexOf','snapshot','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','length','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','recursive','cookie','/smartapi/menu/batchDelete','type','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','menu\x20list','\x20has\x20','snapshotHash','deleteOrder','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','execute\x20reviewed\x20delete\x20plan','Menu\x20','verify\x20batch\x20delete','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','11NKMgNe','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','forEach','join'];a129_0x45c4=function(){return _0x1b7865;};return a129_0x45c4();}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';function a129_0x328e(_0x10a209,_0x4bc021){_0x10a209=_0x10a209-0x16f;const _0x45c422=a129_0x45c4();let _0x328e32=_0x45c422[_0x10a209];return _0x328e32;}import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a129_0x190cbc(0x1c6),'path':a129_0x190cbc(0x19f)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':'recursive','type':a129_0x190cbc(0x1d4),'description':a129_0x190cbc(0x1e5)},MENU_DELETE_PLAN_OUT_FLAG={'name':a129_0x190cbc(0x1eb),'type':'string','description':'Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file'},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a129_0x190cbc(0x1ce),'description':'Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out'};export const menuDelete={'service':a129_0x190cbc(0x17b),'command':a129_0x190cbc(0x1bc),'description':a129_0x190cbc(0x1da),'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'(_0x40abd7){_0x40abd7['bool']('dry-run')?validateDeleteDryRunInput(_0x40abd7):validateDeleteExecuteInput(_0x40abd7),requireExplicitYes(_0x40abd7);},async 'dryRun'(_0x16d2e1){const _0x5b87a2=a129_0x190cbc;validateDeleteDryRunInput(_0x16d2e1);const _0x1a1047=await buildDeletePlan(_0x16d2e1),_0x2a396a=createMenuDeletePlanFile(_0x16d2e1[_0x5b87a2(0x1e0)],_0x1a1047),_0x222c20=await writeMenuDeletePlan(_0x16d2e1[_0x5b87a2(0x181)](_0x5b87a2(0x1eb)),_0x2a396a),_0x1eae0a=mutationResult({..._0x1a1047,'planFile':{'path':_0x222c20,'createdAt':_0x2a396a[_0x5b87a2(0x1db)],'expiresAt':_0x2a396a['expiresAt']}});return menuDryRunResult(_0x1eae0a,{'method':_0x5b87a2(0x1c6),'url':'/smartapi/menu/batchDelete','body':{'idList':_0x1eae0a[_0x5b87a2(0x1a5)]},'description':'Would\x20batch\x20delete\x20'+(_0x1eae0a[_0x5b87a2(0x1a5)]?.[_0x5b87a2(0x19b)]??0x1)+_0x5b87a2(0x174)+_0x1eae0a[_0x5b87a2(0x17e)]['id']+_0x5b87a2(0x1ca)+_0x222c20+'.'});},async 'execute'(_0x40f2a3){const _0x2658f0=a129_0x190cbc;requireExplicitYes(_0x40f2a3),validateDeleteExecuteInput(_0x40f2a3);const _0x5839a5=await readMenuDeletePlan(_0x40f2a3[_0x2658f0(0x181)](_0x2658f0(0x1e7))),_0x5ed467=mutationPlanFromDeleteFile(_0x5839a5[_0x2658f0(0x1e7)],_0x5839a5[_0x2658f0(0x18d)]),_0x37ea52=_0x5839a5['plan'][_0x2658f0(0x1e3)]['id'];try{assertMenuDeletePlanExecutable(_0x5839a5[_0x2658f0(0x1e7)],_0x40f2a3[_0x2658f0(0x1e0)]);}catch(_0x2ace1c){throw menuFailure(asMenuError(_0x2ace1c),_0x5ed467,{'stage':_0x2658f0(0x17f),'failed':{'id':_0x37ea52}});}let _0x303f19,_0x538b57;try{_0x303f19=await fetchMutationSnapshot(_0x40f2a3,_0x2658f0(0x1a7),_0x37ea52),_0x538b57=assertMenuDeletePlanCurrent(_0x5839a5[_0x2658f0(0x1e7)],_0x40f2a3[_0x2658f0(0x1e0)],_0x303f19),assertDeleteTargetsComplete(_0x5839a5[_0x2658f0(0x1e7)],_0x303f19),_0x538b57[_0x2658f0(0x1ad)](_0x4f8235=>assertDeleteSafety(_0x4f8235,_0x5839a5[_0x2658f0(0x1e7)][_0x2658f0(0x19d)])),assertNoSharedPages(_0x303f19,_0x538b57),assertCascadeMatchesPlan(_0x5ed467,_0x538b57);}catch(_0x169daa){throw menuFailure(asMenuError(_0x169daa),_0x5ed467,{'stage':'pre-write-plan-validation','failed':{'id':_0x37ea52}});}const _0x295973=_0x5839a5[_0x2658f0(0x1e7)][_0x2658f0(0x1a5)];let _0x3d4c44;try{_0x3d4c44=await batchDeleteMenuEntities(_0x40f2a3[_0x2658f0(0x19e)],_0x295973);}catch(_0x106ce0){const _0x1ec087=mapMenuApiError(_0x106ce0,_0x2658f0(0x1e1)),_0x425c29=[_0x2658f0(0x1cb)];let _0x34c3d1;try{_0x34c3d1=await readDeleteOutcome(_0x40f2a3,_0x295973);}catch(_0x401cd2){const _0x182e0f=describeMenuErrorCause(_0x401cd2,_0x2658f0(0x1ac),_0x37ea52);_0x425c29['push'](_0x2658f0(0x172)+_0x182e0f['causeCode']+_0x2658f0(0x189)+_0x182e0f[_0x2658f0(0x18b)]);throw menuFailure(_0x1ec087,_0x5ed467,{'stage':_0x2658f0(0x1d9),'failed':{'targetIds':_0x295973,'targetIdsAbsent':_0x2658f0(0x1e9),..._0x182e0f},'warnings':_0x425c29,'verification':{'status':'failed','lookupCommand':_0x2658f0(0x187),'targetIds':_0x295973}});}throw menuFailure(_0x1ec087,_0x5ed467,{'stage':'batch-delete','succeeded':_0x34c3d1['absentIds'][_0x2658f0(0x185)](_0x570d81=>({'id':_0x570d81,'deleted':!![]})),'failed':{'targetIds':_0x295973,'absentIds':_0x34c3d1[_0x2658f0(0x1c4)],'remainingIds':_0x34c3d1[_0x2658f0(0x178)]},'warnings':_0x425c29,'verification':verificationFromOutcome(_0x34c3d1)});}if(_0x3d4c44!==_0x295973['length']){const _0x2bb599=menuError(_0x2658f0(0x194),_0x2658f0(0x17c)+_0x3d4c44+_0x2658f0(0x1d0)+_0x295973[_0x2658f0(0x19b)]+'.',_0x2658f0(0x171)),_0x5cb57b=[_0x2658f0(0x19a)];let _0xb61486;try{_0xb61486=await readDeleteOutcome(_0x40f2a3,_0x295973);}catch(_0x394421){const _0x440706=describeMenuErrorCause(_0x394421,_0x2658f0(0x183),_0x37ea52);_0x5cb57b['push'](_0x2658f0(0x173)+_0x440706[_0x2658f0(0x1b1)]+_0x2658f0(0x189)+_0x440706[_0x2658f0(0x18b)]);throw menuFailure(_0x2bb599,_0x5ed467,{'stage':'batch-delete','failed':{'targetIds':_0x295973,'expectedCount':_0x295973[_0x2658f0(0x19b)],'reportedDeletedCount':_0x3d4c44,'targetIdsAbsent':_0x2658f0(0x1e9),..._0x440706},'warnings':_0x5cb57b,'verification':{'status':_0x2658f0(0x1c9),'lookupCommand':_0x2658f0(0x187),'targetIds':_0x295973}});}throw menuFailure(_0x2bb599,_0x5ed467,{'stage':_0x2658f0(0x1d9),'succeeded':_0xb61486[_0x2658f0(0x1c4)][_0x2658f0(0x185)](_0x1e6b1f=>({'id':_0x1e6b1f,'deleted':!![]})),'failed':{'targetIds':_0x295973,'expectedCount':_0x295973['length'],'reportedDeletedCount':_0x3d4c44,'absentIds':_0xb61486[_0x2658f0(0x1c4)],'remainingIds':_0xb61486[_0x2658f0(0x178)]},'warnings':_0x5cb57b,'verification':verificationFromOutcome(_0xb61486)});}let _0x2cf7d4;try{_0x2cf7d4=await readDeleteOutcome(_0x40f2a3,_0x295973);}catch(_0x14a48a){const _0x3da11b=describeMenuErrorCause(_0x14a48a,_0x2658f0(0x1a9),_0x37ea52),_0x58d4bc=asVerificationError(_0x14a48a,_0x2658f0(0x1b2)+_0x37ea52+_0x2658f0(0x1dd));throw menuFailure(_0x58d4bc,_0x5ed467,{'stage':_0x2658f0(0x1c2),'succeeded':_0x295973['map'](_0x34f362=>({'id':_0x34f362,'deleteRequested':!![]})),'failed':{'id':_0x37ea52,'targetIds':_0x295973,'targetIdsAbsent':_0x2658f0(0x1e9),..._0x3da11b},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x2658f0(0x1c9),'lookupCommand':_0x2658f0(0x187),'targetIds':_0x295973}});}if(_0x2cf7d4[_0x2658f0(0x178)]['length']>0x0){const _0x4f85cc=menuError(_0x2658f0(0x182),_0x2658f0(0x1ba)+_0x2cf7d4[_0x2658f0(0x178)][_0x2658f0(0x1ae)](',\x20')+'.',_0x2658f0(0x171));throw menuFailure(_0x4f85cc,_0x5ed467,{'stage':'verification','succeeded':_0x295973[_0x2658f0(0x185)](_0x1928ef=>({'id':_0x1928ef,'deleteRequested':!![]})),'failed':{'id':_0x37ea52,'targetIds':_0x295973,'absentIds':_0x2cf7d4[_0x2658f0(0x1c4)],'remainingIds':_0x2cf7d4[_0x2658f0(0x178)]},'warnings':[_0x2658f0(0x19c)],'verification':verificationFromOutcome(_0x2cf7d4)});}const _0x5cb3b2=_0x295973[_0x2658f0(0x185)](_0x277b9f=>({'id':_0x277b9f,'deleted':!![]})),_0x24e13c=mutationResult({..._0x5ed467,'dryRun':![],'succeeded':_0x5cb3b2,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x5ed467[_0x2658f0(0x1a4)],'finalSnapshotHash':_0x2cf7d4[_0x2658f0(0x199)][_0x2658f0(0x188)],'reportedDeletedCount':_0x3d4c44,'targetAbsent':!_0x2cf7d4[_0x2658f0(0x199)][_0x2658f0(0x1e6)][_0x2658f0(0x1b3)](_0x37ea52),'allTargetsAbsent':!![],'targetIds':_0x295973}});return{'ok':!![],'data':_0x24e13c,'message':'Deleted\x20'+_0x5cb3b2[_0x2658f0(0x19b)]+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x37ea52+'.'};}};async function readDeleteOutcome(_0x31084f,_0x246b55){const _0x116e21=a129_0x190cbc,_0x179c20=await fetchMenuSnapshot(_0x31084f[_0x116e21(0x1e0)],_0x31084f['cookie']);return{'snapshot':_0x179c20,'absentIds':_0x246b55['filter'](_0x50096a=>!_0x179c20['byId'][_0x116e21(0x1b3)](_0x50096a)),'remainingIds':_0x246b55[_0x116e21(0x1c5)](_0x513d3c=>_0x179c20[_0x116e21(0x1e6)][_0x116e21(0x1b3)](_0x513d3c))};}function verificationFromOutcome(_0x36321c){const _0x104398=a129_0x190cbc;return{'checkedBy':_0x104398(0x1a2),'absentIds':_0x36321c[_0x104398(0x1c4)],'remainingIds':_0x36321c['remainingIds']};}function validateDeleteDryRunInput(_0x292313){const _0x4085fd=a129_0x190cbc;validateExactId(_0x292313);if(!hasFlag(_0x292313,_0x4085fd(0x1eb))||!_0x292313[_0x4085fd(0x181)](_0x4085fd(0x1eb))[_0x4085fd(0x1c1)]())throw CliErrors[_0x4085fd(0x176)](_0x4085fd(0x1eb),_0x4085fd(0x1b7));if(hasFlag(_0x292313,'plan'))throw CliErrors[_0x4085fd(0x18e)](_0x4085fd(0x1b4));}function validateDeleteExecuteInput(_0x52e6a2){const _0x2de6b8=a129_0x190cbc;if(!hasFlag(_0x52e6a2,_0x2de6b8(0x1e7))||!_0x52e6a2[_0x2de6b8(0x181)](_0x2de6b8(0x1e7))[_0x2de6b8(0x1c1)]())throw CliErrors[_0x2de6b8(0x176)](_0x2de6b8(0x1e7),'--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.');const _0x330a08=['id',_0x2de6b8(0x19d),'plan-out',_0x2de6b8(0x170),_0x2de6b8(0x1cc),_0x2de6b8(0x195)][_0x2de6b8(0x1c5)](_0x21937f=>hasFlag(_0x52e6a2,_0x21937f));if(_0x330a08[_0x2de6b8(0x19b)]>0x0)throw CliErrors[_0x2de6b8(0x18e)]('Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20'+_0x330a08['map'](_0x2350fd=>'--'+_0x2350fd)[_0x2de6b8(0x1ae)](',\x20')+'.');}async function buildDeletePlan(_0x14c320){const _0x5192b3=a129_0x190cbc,_0x2afabc=validateExactId(_0x14c320),_0x1e4f1d=await fetchMutationSnapshot(_0x14c320,'plan\x20delete',_0x2afabc),_0x11086c=requireMenu(_0x1e4f1d,_0x2afabc);assertExpectedState(_0x14c320,_0x11086c);const _0x1399c9=_0x14c320['bool'](_0x5192b3(0x19d));let _0x325502;if(_0x1399c9){if(_0x11086c['type'][_0x5192b3(0x1c1)]()[_0x5192b3(0x191)]()!=='folder')throw menuError('menu_recursive_requires_folder',_0x5192b3(0x1a8)+_0x11086c['id']+_0x5192b3(0x1e8)+(_0x11086c[_0x5192b3(0x1a0)]||_0x5192b3(0x1d5))+_0x5192b3(0x192));_0x325502=collectDeleteTargets(_0x1e4f1d,_0x11086c),_0x325502[_0x5192b3(0x1ad)](_0x3b6262=>assertDeleteSafety(_0x3b6262,!![]));}else assertDeleteSafety(_0x11086c),_0x325502=[_0x11086c];assertNoSharedPages(_0x1e4f1d,_0x325502);const _0x5d2188=_0x325502[_0x5192b3(0x185)](_0x179cc0=>_0x179cc0['id']),_0xc13387=cascadeForTargets(_0x325502),_0xf4c727=_0xc13387['pages'][_0x5192b3(0x19b)]>0x0?[_0x5192b3(0x1b5)]:[];return mutationResult({'operation':'delete','selector':{'id':_0x2afabc,'recursive':_0x1399c9},'before':_0x11086c,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x5192b3(0x1c6),'path':_0x5192b3(0x19f),'body':{'idList':_0x5d2188}}],'targets':_0x325502,'deleteOrder':_0x5d2188,'snapshotHash':_0x1e4f1d['hash'],'cascade':_0xc13387,'warnings':_0xf4c727});}function assertDeleteSafety(_0x115b3a,_0x4db145=![]){const _0x2a9748=a129_0x190cbc,_0x4fcdfd=_0x115b3a[_0x2a9748(0x1a0)][_0x2a9748(0x1c1)]()[_0x2a9748(0x191)]()===_0x2a9748(0x17a);if(_0x115b3a[_0x2a9748(0x18a)]>0x0&&(!_0x4db145||!_0x4fcdfd))throw menuError(_0x2a9748(0x196),'Menu\x20'+_0x115b3a['id']+_0x2a9748(0x1a3)+_0x115b3a[_0x2a9748(0x18a)]+_0x2a9748(0x1c8),_0x2a9748(0x1cf)+_0x115b3a[_0x2a9748(0x180)]['join'](',\x20'));if(_0x4fcdfd&&_0x115b3a[_0x2a9748(0x1ec)]!=null)throw menuError(_0x2a9748(0x1bb),_0x2a9748(0x184)+_0x115b3a['id']+_0x2a9748(0x1be)+_0x115b3a[_0x2a9748(0x1ec)]+_0x2a9748(0x1d8),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x4fcdfd)return;if(!_0x115b3a[_0x2a9748(0x1d3)])throw menuError(_0x2a9748(0x1c3),'Folder\x20'+_0x115b3a['id']+_0x2a9748(0x1e4),'Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(_0x115b3a[_0x2a9748(0x1de)]['length']>0x0)throw menuError(_0x2a9748(0x1bd),_0x2a9748(0x184)+_0x115b3a['id']+_0x2a9748(0x1cd)+_0x115b3a[_0x2a9748(0x1de)][_0x2a9748(0x19b)]+'\x20resource\x20URL(s).',_0x2a9748(0x1aa));}function collectDeleteTargets(_0x23ca39,_0x540e8e){const _0x8ab73f=[],_0x2b08ef=new Set(),_0x1c384d=new Set(),_0x1d844f=_0x4ecf31=>{const _0x2e11fe=a129_0x328e;if(_0x2b08ef[_0x2e11fe(0x1b3)](_0x4ecf31['id']))throw menuError(_0x2e11fe(0x193),_0x2e11fe(0x1a1)+_0x4ecf31['id']+'.');if(_0x1c384d['has'](_0x4ecf31['id']))return;_0x2b08ef[_0x2e11fe(0x175)](_0x4ecf31['id']);for(const _0x533d11 of _0x4ecf31['childrenIds']){const _0x4bf7e8=_0x23ca39['byId'][_0x2e11fe(0x190)](_0x533d11);if(!_0x4bf7e8)throw menuError(_0x2e11fe(0x193),_0x2e11fe(0x1a8)+_0x4ecf31['id']+_0x2e11fe(0x1d6)+_0x533d11+'.');_0x1d844f(_0x4bf7e8);}_0x2b08ef['delete'](_0x4ecf31['id']),_0x1c384d[_0x2e11fe(0x175)](_0x4ecf31['id']),_0x8ab73f[_0x2e11fe(0x177)](_0x4ecf31);};return _0x1d844f(_0x540e8e),_0x8ab73f;}function assertDeleteTargetsComplete(_0x44e5f4,_0x140816){const _0x1c4a73=a129_0x190cbc,_0x56eb9d=requireMenu(_0x140816,_0x44e5f4[_0x1c4a73(0x1e3)]['id']);if(_0x44e5f4[_0x1c4a73(0x19d)]&&_0x56eb9d[_0x1c4a73(0x1a0)]['trim']()[_0x1c4a73(0x191)]()!==_0x1c4a73(0x17a))throw menuError(_0x1c4a73(0x1b9),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x56eb9d['id']+'\x20is\x20not\x20a\x20folder.');const _0x48384b=_0x44e5f4[_0x1c4a73(0x19d)]?collectDeleteTargets(_0x140816,_0x56eb9d)['map'](_0x547f66=>_0x547f66['id']):[_0x56eb9d['id']];if(JSON[_0x1c4a73(0x1d1)](_0x44e5f4[_0x1c4a73(0x1a5)])!==JSON[_0x1c4a73(0x1d1)](_0x48384b))throw menuError(_0x1c4a73(0x1b9),_0x1c4a73(0x1d2),_0x1c4a73(0x1dc));}function assertNoSharedPages(_0x4eb9dc,_0x3fca90){const _0x39b0f1=a129_0x190cbc,_0x39e9aa=new Set(_0x3fca90[_0x39b0f1(0x185)](_0xed8302=>_0xed8302['id'])),_0x5a9841=new Set(_0x3fca90[_0x39b0f1(0x185)](_0x5bcb93=>_0x5bcb93[_0x39b0f1(0x1ec)])[_0x39b0f1(0x1c5)](_0x59e750=>_0x59e750!=null));if(_0x5a9841[_0x39b0f1(0x18c)]===0x0)return;const _0x2cd3ed=_0x4eb9dc[_0x39b0f1(0x197)]['filter'](_0x2c0482=>!_0x39e9aa[_0x39b0f1(0x1b3)](_0x2c0482['id'])&&_0x2c0482[_0x39b0f1(0x1ec)]!=null&&_0x5a9841['has'](_0x2c0482['pageId']));if(_0x2cd3ed['length']===0x0)return;const _0x157ca2=_0x2cd3ed[_0x39b0f1(0x185)](_0x288a93=>_0x39b0f1(0x1d7)+_0x288a93[_0x39b0f1(0x1ec)]+_0x39b0f1(0x1bf)+_0x288a93['id'])[_0x39b0f1(0x1ae)](',\x20');throw menuError('menu_page_shared',_0x39b0f1(0x186)+_0x157ca2+'.',_0x39b0f1(0x1af));}function assertCascadeMatchesPlan(_0x275690,_0x1f00ff){const _0x436adb=a129_0x190cbc,_0x227364=cascadeForTargets(_0x1f00ff);if(JSON[_0x436adb(0x1d1)](_0x275690[_0x436adb(0x1b6)])!==JSON[_0x436adb(0x1d1)](_0x227364))throw menuError(_0x436adb(0x1b9),_0x436adb(0x1a6));}function cascadeForTargets(_0x3b6602){const _0x2d5e26=a129_0x190cbc,_0x461b65=_0x3b6602[_0x2d5e26(0x185)](_0x180e5f=>_0x180e5f[_0x2d5e26(0x1ec)])[_0x2d5e26(0x1c5)](_0x4e0acc=>_0x4e0acc!=null)[_0x2d5e26(0x1c5)]((_0x48cfe8,_0x425714,_0xf56018)=>_0xf56018[_0x2d5e26(0x198)](_0x48cfe8)===_0x425714);return{'pages':_0x461b65,'pageSchemaAffected':_0x461b65[_0x2d5e26(0x19b)]>0x0};}function asMenuError(_0x2014e4){const _0x2a0d00=a129_0x190cbc;return _0x2014e4 instanceof CliError?_0x2014e4:menuError(_0x2a0d00(0x1b9),_0x2014e4 instanceof Error?_0x2014e4[_0x2a0d00(0x1df)]:String(_0x2014e4));}
@@ -1 +1 @@
1
- const a117_0x50e10b=a117_0x2858;(function(_0x27b758,_0x2b9bed){const _0x15a8ec=a117_0x2858,_0x308c8c=_0x27b758();while(!![]){try{const _0x580c00=parseInt(_0x15a8ec(0x264))/0x1*(-parseInt(_0x15a8ec(0x1e8))/0x2)+-parseInt(_0x15a8ec(0x236))/0x3*(-parseInt(_0x15a8ec(0x24a))/0x4)+-parseInt(_0x15a8ec(0x233))/0x5*(-parseInt(_0x15a8ec(0x254))/0x6)+-parseInt(_0x15a8ec(0x216))/0x7*(-parseInt(_0x15a8ec(0x246))/0x8)+-parseInt(_0x15a8ec(0x1e9))/0x9*(parseInt(_0x15a8ec(0x250))/0xa)+-parseInt(_0x15a8ec(0x245))/0xb*(parseInt(_0x15a8ec(0x217))/0xc)+parseInt(_0x15a8ec(0x23a))/0xd;if(_0x580c00===_0x2b9bed)break;else _0x308c8c['push'](_0x308c8c['shift']());}catch(_0x484a3a){_0x308c8c['push'](_0x308c8c['shift']());}}}(a117_0x4a44,0x53c8b));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':a117_0x50e10b(0x24b),'new-window':'link'};export function validateExternalMenuUrl(_0x428419){const _0x468f6f=a117_0x50e10b,_0x4ab428=_0x428419[_0x468f6f(0x223)]();let _0x5395b4;try{_0x5395b4=new URL(_0x4ab428);}catch{throw menuError(_0x468f6f(0x249),_0x468f6f(0x207),_0x468f6f(0x221));}if(_0x5395b4[_0x468f6f(0x243)]!==_0x468f6f(0x1df))throw menuError(_0x468f6f(0x201),_0x468f6f(0x25d),_0x468f6f(0x260));if(_0x5395b4['username']||_0x5395b4[_0x468f6f(0x20e)])throw menuError('menu_url_credentials_forbidden','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x4ab428;}export const menuExternalLinkCreate={'service':a117_0x50e10b(0x21c),'command':a117_0x50e10b(0x1ee),'description':a117_0x50e10b(0x22b),'risk':'write','structuredErrors':!![],'flags':[{'name':a117_0x50e10b(0x257),'type':a117_0x50e10b(0x1ed),'required':!![],'description':a117_0x50e10b(0x1dd)},{'name':a117_0x50e10b(0x20f),'type':'string','required':!![],'enum':[a117_0x50e10b(0x25e),'new-window'],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a117_0x50e10b(0x1f2),'type':a117_0x50e10b(0x1ed),'required':!![],'description':a117_0x50e10b(0x1e1)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a117_0x50e10b(0x1f3),'type':a117_0x50e10b(0x26e),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x300c67){validateAddInput(_0x300c67);},async 'dryRun'(_0x2f662a){const _0x1b76e9=a117_0x50e10b;validateAddInput(_0x2f662a);const {plan:_0x35fc54}=await buildSafeAddPlan(_0x2f662a,!![]),_0x3e88f7=_0x35fc54[_0x1b76e9(0x26c)],_0x4120f5=createBody(_0x3e88f7);return menuDryRunResult(_0x35fc54,{'method':_0x1b76e9(0x256),'url':'/smartapi/menu/create','body':_0x4120f5,'description':_0x1b76e9(0x20b)+JSON[_0x1b76e9(0x24d)](_0x3e88f7[_0x1b76e9(0x257)])+'\x20with\x20'+_0x2f662a[_0x1b76e9(0x24f)]('open-mode')+_0x1b76e9(0x206)});},async 'execute'(_0x5bc277){const _0x229755=a117_0x50e10b;validateAddInput(_0x5bc277);const _0x5f4141=await buildSafeAddPlan(_0x5bc277,![]),{plan:_0x131ab8,snapshot:_0x6f1546}=_0x5f4141,_0x4be5b3=_0x131ab8[_0x229755(0x26c)],_0xfb069f=buildMenuLookupCommand(_0x5bc277[_0x229755(0x239)]);await recheckAddSnapshot(_0x5bc277,_0x131ab8);let _0x4e9491;try{_0x4e9491=await createMenuEntity(_0x5bc277[_0x229755(0x239)],_0x5bc277[_0x229755(0x242)],createBody(_0x4be5b3));}catch(_0x4088d7){const _0x1bad1c=mapMenuApiError(_0x4088d7,_0x229755(0x244));if(!isMenuResponseLoss(_0x4088d7)||_0x1bad1c['code']==='menu_permission_denied')throw externalLinkCreateFailure(_0x1bad1c,_0x131ab8,{'stage':'create','failed':{},'verification':{'status':'failed','lookupCommand':_0xfb069f}});return recoverAfterResponseLoss(_0x5bc277,_0x5f4141,_0xfb069f);}const _0x542bcc=Number(_0x4e9491?.['id']),_0x3ba2b0=typeof _0x4e9491?.[_0x229755(0x1e7)]===_0x229755(0x1ed)?_0x4e9491['path']:'';if(!Number[_0x229755(0x1f7)](_0x542bcc)||_0x542bcc<=0x0||!_0x3ba2b0[_0x229755(0x223)]()){const _0x469a76=menuError(_0x229755(0x1f1),_0x229755(0x21e),_0x229755(0x215)+_0xfb069f+_0x229755(0x1e5));throw externalLinkCreateFailure(_0x469a76,_0x131ab8,{'stage':_0x229755(0x259),'succeeded':Number[_0x229755(0x1f7)](_0x542bcc)&&_0x542bcc>0x0?[{'id':_0x542bcc,'created':!![]}]:[],'failed':{'createdId':Number[_0x229755(0x1f7)](_0x542bcc)?_0x542bcc:null,'generatedPathConfirmed':Boolean(_0x3ba2b0[_0x229755(0x223)]())},'warnings':[_0x229755(0x214)],'after':Number['isSafeInteger'](_0x542bcc)&&_0x542bcc>0x0?{..._0x4be5b3,'id':_0x542bcc,'path':_0x3ba2b0}:_0x4be5b3,'verification':{'status':_0x229755(0x21b),'lookupCommand':_0xfb069f,...Number[_0x229755(0x1f7)](_0x542bcc)&&_0x542bcc>0x0?{'targetId':_0x542bcc}:{}}});}const _0x632388=await readAndVerifyCreatedMenu({'appCode':_0x5bc277[_0x229755(0x239)],'cookie':_0x5bc277[_0x229755(0x242)],'plan':_0x131ab8,'afterPlan':_0x4be5b3,'createdId':_0x542bcc,'expectedPath':_0x3ba2b0,'lookupCommand':_0xfb069f,'recovered':![]});return creationSuccess(_0x131ab8,_0x632388[_0x229755(0x255)],_0x632388[_0x229755(0x1e3)],![]);}};function validateAddInput(_0x1a11ef){const _0x57a1a2=a117_0x50e10b;if(!_0x1a11ef[_0x57a1a2(0x24f)](_0x57a1a2(0x257))['trim']())throw CliErrors['flagMissing'](_0x57a1a2(0x257));resolveExternalMenuType(_0x1a11ef),validateExternalMenuUrl(_0x1a11ef[_0x57a1a2(0x24f)](_0x57a1a2(0x1f2))),parseParentId(_0x1a11ef,_0x57a1a2(0x1f0)),validateSort(_0x1a11ef);}function resolveExternalMenuType(_0x7712a5){const _0x864bd8=a117_0x50e10b,_0x34c031=_0x7712a5[_0x864bd8(0x24f)]('open-mode')['trim']();if(!_0x34c031)throw CliErrors[_0x864bd8(0x210)](_0x864bd8(0x20f));const _0x426ba8=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x34c031];if(!_0x426ba8)throw menuError('menu_open_mode_invalid',_0x864bd8(0x1fb),_0x864bd8(0x22f));return _0x426ba8;}async function buildAddPlan(_0x40b5c3,_0x1e5dab){const _0x531e67=a117_0x50e10b,_0x54d1c1=await fetchMutationSnapshot(_0x40b5c3,_0x531e67(0x244)),_0x3a61fc=parseParentId(_0x40b5c3,_0x531e67(0x1f0))??null;if(_0x3a61fc!=null)requireFolder(_0x54d1c1,_0x3a61fc);const _0x5d73d5=validateSort(_0x40b5c3),_0x373b77=_0x5d73d5??nextSiblingSort(_0x54d1c1,_0x3a61fc,_0x531e67(0x21c)),_0x1bee78=_0x40b5c3[_0x531e67(0x24f)]('label')['trim'](),_0x4b3284=resolveExternalMenuType(_0x40b5c3),_0x13bcc9=validateExternalMenuUrl(_0x40b5c3[_0x531e67(0x24f)](_0x531e67(0x1f2))),_0x89776f=Object[_0x531e67(0x1ec)][_0x531e67(0x251)][_0x531e67(0x240)](_0x40b5c3[_0x531e67(0x25b)],_0x531e67(0x1f3))?_0x40b5c3[_0x531e67(0x1e0)](_0x531e67(0x1f3)):!![],_0x51eeae={'id':null,'parentId':_0x3a61fc,'label':_0x1bee78,'path':_0x531e67(0x253),'url':_0x13bcc9,'type':_0x4b3284,'visible':_0x89776f,'sort':_0x373b77},_0xc1f0b4=buildMenuLookupCommand(_0x40b5c3['appCode']),_0xe9c8d5=mutationResult({'operation':_0x531e67(0x222),'selector':{'parentId':_0x3a61fc,'type':_0x4b3284,'label':_0x1bee78,'url':_0x13bcc9},'before':null,'after':_0x51eeae,'dryRun':_0x1e5dab,'backend':[{'method':'POST','path':_0x531e67(0x230)}],'plannedActions':[{'stage':_0x531e67(0x252),'method':_0x531e67(0x256),'path':_0x531e67(0x230),'body':createBody(_0x51eeae)}],'snapshotHash':_0x54d1c1[_0x531e67(0x200)],'warnings':[_0x531e67(0x232)],'verification':{'lookupCommand':_0xc1f0b4}});return{'plan':_0xe9c8d5,'snapshot':_0x54d1c1};}async function buildSafeAddPlan(_0x52c016,_0x1ba32a){try{return await buildAddPlan(_0x52c016,_0x1ba32a);}catch(_0x2a9c7f){throw safeMenuAddError(_0x2a9c7f);}}async function recheckAddSnapshot(_0x427e3a,_0x20d2b2){const _0x1bcbcc=a117_0x50e10b;try{await recheckMutationSnapshot(_0x427e3a,_0x20d2b2,_0x1bcbcc(0x244));}catch(_0x311eaf){const _0x562981=getFailureRecord(_0x311eaf);throw externalLinkCreateFailure(_0x311eaf,_0x20d2b2,{'stage':'pre-write-recheck','failed':{..._0x562981?.[_0x1bcbcc(0x25a)]?{'expectedSnapshotHash':_0x562981[_0x1bcbcc(0x25a)]}:{},..._0x562981?.[_0x1bcbcc(0x263)]?{'currentSnapshotHash':_0x562981[_0x1bcbcc(0x263)]}:{}}});}}function createBody(_0x46310b){const _0x1b587d=a117_0x50e10b;return{'parentId':toApiParentId(_0x46310b['parentId']),'label':String(_0x46310b[_0x1b587d(0x257)]),'type':String(_0x46310b[_0x1b587d(0x270)]),'url':String(_0x46310b['url']),'visible':Boolean(_0x46310b['visible']),'sort':Number(_0x46310b['sort']),'extend':{}};}function buildMenuLookupCommand(_0x2b4e94){const _0x5dc82e=a117_0x50e10b,_0x4d1d46='\x27'+_0x2b4e94[_0x5dc82e(0x226)](/'/g,'\x27\x5c\x27\x27')+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x4d1d46+_0x5dc82e(0x203);}async function recoverAfterResponseLoss(_0x285901,_0x5b19c4,_0x4d019e){const _0x4c5d40=a117_0x50e10b,{plan:_0x1d0da1,snapshot:_0x2ad48f}=_0x5b19c4,_0x2b770f=_0x1d0da1[_0x4c5d40(0x26c)];let _0x5bcb73;try{_0x5bcb73=await fetchMenuSnapshot(_0x285901[_0x4c5d40(0x239)],_0x285901[_0x4c5d40(0x242)]);}catch(_0x346630){throw recoveryRequiredFailure(_0x1d0da1,_0x4d019e,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x550eea=_0x5bcb73[_0x4c5d40(0x267)][_0x4c5d40(0x204)](_0x2458aa=>_0x2458aa['parentId']===_0x2b770f['parentId']&&_0x2458aa[_0x4c5d40(0x270)]===_0x2b770f['type']&&_0x2458aa[_0x4c5d40(0x257)]===_0x2b770f[_0x4c5d40(0x257)]&&_0x2458aa['url']===_0x2b770f[_0x4c5d40(0x1f2)]),_0x4722c6=_0x550eea[_0x4c5d40(0x204)](_0x5d5787=>!_0x2ad48f['byId'][_0x4c5d40(0x1de)](_0x5d5787['id'])),_0x8b3253=_0x550eea['filter'](_0x3dce2b=>_0x2ad48f[_0x4c5d40(0x1eb)]['has'](_0x3dce2b['id']));if(_0x550eea[_0x4c5d40(0x218)]!==0x1||_0x4722c6[_0x4c5d40(0x218)]!==0x1)throw recoveryRequiredFailure(_0x1d0da1,_0x4d019e,{'matchCount':_0x550eea['length'],'newMatchCount':_0x4722c6[_0x4c5d40(0x218)],'preexistingMatchCount':_0x8b3253['length']});const _0x3fe868=_0x4722c6[0x0];try{verifyCreatedFact(_0x3fe868,_0x3fe868['id'],_0x2b770f,null);}catch(_0x266430){const _0x232a35=_0x266430 instanceof Error&&_0x4c5d40(0x1f9)in _0x266430?_0x266430:menuError(_0x4c5d40(0x1f5),'Recovered\x20menu\x20'+_0x3fe868['id']+_0x4c5d40(0x269),_0x4c5d40(0x215)+_0x4d019e+_0x4c5d40(0x22e));throw externalLinkCreateFailure(_0x232a35,_0x1d0da1,{'stage':_0x4c5d40(0x1f6),'succeeded':[{'id':_0x3fe868['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x3fe868['id'],'finalFactsConfirmed':![]},'after':_0x3fe868,'warnings':['Menu\x20'+_0x3fe868['id']+_0x4c5d40(0x21d)],'verification':{'status':_0x4c5d40(0x21b),'targetId':_0x3fe868['id'],'recovered':!![],'lookupCommand':_0x4d019e}});}return creationSuccess(_0x1d0da1,_0x5bcb73,_0x3fe868,!![]);}function recoveryRequiredFailure(_0xb29046,_0x45adfc,_0x46a0b7){const _0x3d31e5=a117_0x50e10b,_0x5e24a6=menuError(_0x3d31e5(0x23f),_0x3d31e5(0x1fc),_0x3d31e5(0x215)+_0x45adfc+_0x3d31e5(0x235));return externalLinkCreateFailure(_0x5e24a6,_0xb29046,{'stage':'create-recovery','failed':_0x46a0b7,'warnings':[_0x3d31e5(0x208)],'verification':{'status':'failed',..._0x46a0b7,'lookupCommand':_0x45adfc}});}async function readAndVerifyCreatedMenu(_0x1280d5){const _0x3bb974=a117_0x50e10b;let _0x38cc75;try{_0x38cc75=await fetchMenuSnapshot(_0x1280d5[_0x3bb974(0x239)],_0x1280d5['cookie']);}catch(_0x55c9e0){const _0x34f62e=menuError(_0x3bb974(0x1f5),_0x3bb974(0x227)+_0x1280d5['createdId']+_0x3bb974(0x1fe),_0x3bb974(0x215)+_0x1280d5['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x34f62e,_0x1280d5['plan'],{'stage':_0x3bb974(0x1f6),'succeeded':[{'id':_0x1280d5['createdId'],'created':!![]}],'failed':{'id':_0x1280d5[_0x3bb974(0x26b)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x1280d5[_0x3bb974(0x1fa)],'id':_0x1280d5[_0x3bb974(0x26b)],'path':_0x1280d5[_0x3bb974(0x24c)]},'warnings':['Menu\x20'+_0x1280d5[_0x3bb974(0x26b)]+_0x3bb974(0x261)],'verification':{'status':_0x3bb974(0x21b),'targetId':_0x1280d5[_0x3bb974(0x26b)],'lookupCommand':_0x1280d5[_0x3bb974(0x234)]}});}const _0x539370=_0x38cc75[_0x3bb974(0x1eb)][_0x3bb974(0x1e4)](_0x1280d5[_0x3bb974(0x26b)]);try{if(!_0x539370)throw menuError('menu_verification_failed',_0x3bb974(0x1ef)+_0x1280d5[_0x3bb974(0x26b)]+_0x3bb974(0x247),'Run\x20'+_0x1280d5[_0x3bb974(0x234)]+_0x3bb974(0x262));verifyCreatedFact(_0x539370,_0x1280d5['createdId'],_0x1280d5[_0x3bb974(0x1fa)],_0x1280d5['expectedPath']);}catch(_0xf933f3){const _0x4062f1=_0xf933f3 instanceof Error&&_0x3bb974(0x1f9)in _0xf933f3?_0xf933f3:menuError(_0x3bb974(0x1f5),_0x3bb974(0x1ef)+_0x1280d5[_0x3bb974(0x26b)]+_0x3bb974(0x237),'Run\x20'+_0x1280d5['lookupCommand']+_0x3bb974(0x262));throw externalLinkCreateFailure(_0x4062f1,_0x1280d5[_0x3bb974(0x229)],{'stage':'verification','succeeded':[{'id':_0x1280d5[_0x3bb974(0x26b)],'created':!![]}],'failed':{'id':_0x1280d5['createdId'],'finalFactsConfirmed':![]},'after':_0x539370??{..._0x1280d5[_0x3bb974(0x1fa)],'id':_0x1280d5[_0x3bb974(0x26b)],'path':_0x1280d5[_0x3bb974(0x24c)]},'warnings':[_0x3bb974(0x227)+_0x1280d5[_0x3bb974(0x26b)]+_0x3bb974(0x20c)],'verification':{'status':'failed','targetId':_0x1280d5[_0x3bb974(0x26b)],'recovered':_0x1280d5[_0x3bb974(0x231)],'lookupCommand':_0x1280d5[_0x3bb974(0x234)]}});}return{'snapshot':_0x38cc75,'fact':_0x539370};}function verifyCreatedFact(_0x6d79fd,_0x5b552e,_0x4af9be,_0x456c34){const _0x5892da=a117_0x50e10b;if(!Number['isSafeInteger'](_0x6d79fd['id'])||_0x6d79fd['id']<=0x0||_0x6d79fd['id']!==_0x5b552e)throw menuError(_0x5892da(0x1f5),_0x5892da(0x21a),_0x5892da(0x205));const _0x54f0fe=[[_0x5892da(0x211),_0x6d79fd[_0x5892da(0x1ff)],_0x4af9be[_0x5892da(0x1ff)]],[_0x5892da(0x270),_0x6d79fd[_0x5892da(0x270)],_0x4af9be[_0x5892da(0x270)]],['label',_0x6d79fd['label'],_0x4af9be[_0x5892da(0x257)]],[_0x5892da(0x26a),_0x6d79fd['url'],_0x4af9be[_0x5892da(0x1f2)]],[_0x5892da(0x241),_0x6d79fd[_0x5892da(0x1f3)],_0x4af9be[_0x5892da(0x1f3)]],['sort',_0x6d79fd['sort'],_0x4af9be['sort']]];for(const [_0x307665,_0x5b22a3,_0x18a01f]of _0x54f0fe){if(_0x5b22a3!==_0x18a01f)throw menuError(_0x5892da(0x1f5),'Created\x20menu\x20'+_0x6d79fd['id']+_0x5892da(0x212)+_0x307665+'.',_0x5892da(0x209));}if(!_0x6d79fd[_0x5892da(0x1e7)]['trim']()||_0x456c34!==null&&_0x6d79fd['path']!==_0x456c34)throw menuError(_0x5892da(0x1f5),_0x5892da(0x1ef)+_0x6d79fd['id']+_0x5892da(0x265),_0x5892da(0x209));}function creationSuccess(_0x43bc84,_0x477396,_0x4b6b8b,_0x1ba021){const _0x16b3b8=a117_0x50e10b,_0x9b4ed4=mutationResult({..._0x43bc84,'after':_0x4b6b8b,'dryRun':![],'succeeded':[{'id':_0x4b6b8b['id'],'created':!![],'recovered':_0x1ba021}],'verification':{'checkedBy':_0x16b3b8(0x219),'snapshotHash':_0x477396['hash'],'targetId':_0x4b6b8b['id'],'recovered':_0x1ba021,'path':_0x4b6b8b[_0x16b3b8(0x1e7)]}});return{'ok':!![],'message':_0x1ba021?'Recovered\x20created\x20external\x20menu\x20'+_0x4b6b8b['id']+'\x20after\x20response\x20loss.':_0x16b3b8(0x225)+_0x4b6b8b['id']+'.','data':{..._0x9b4ed4,'recovered':_0x1ba021}};}function externalLinkCreateFailure(_0x599e22,_0x44f899,_0x5409cb){const _0x378839=a117_0x50e10b;return menuFailure(safeMenuAddError(_0x599e22),redactFailurePlan(_0x44f899),{..._0x5409cb,'succeeded':_0x5409cb[_0x378839(0x202)]?.['map'](redactFailureRecord),'failed':_0x5409cb[_0x378839(0x21b)]?redactFailureRecord(_0x5409cb[_0x378839(0x21b)]):undefined,'verification':_0x5409cb['verification']?redactFailureRecord(_0x5409cb[_0x378839(0x1f6)]):undefined,'after':_0x5409cb[_0x378839(0x26c)]===undefined?undefined:redactFailureValue(_0x5409cb['after'])});}function a117_0x4a44(){const _0x8ab3e7=['prototype','string','external-link-create','Created\x20menu\x20','parent-id','menu_create_response_invalid','url','visible','map','menu_verification_failed','verification','isSafeInteger','causemessage','code','afterPlan','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','parentId','hash','menu_url_https_required','succeeded','\x20--format\x20compress','filter','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','isArray','Would\x20create\x20external\x20website\x20link\x20menu\x20','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','selector','password','open-mode','flagMissing','parent','\x20has\x20an\x20unexpected\x20','plannedActions','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','Run\x20','209636gauPIS','12KmzVxC','length','menu\x20list','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','failed','menu','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','includes','menu_state_drift','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','add','trim','before','Created\x20external\x20menu\x20','replace','Menu\x20','toLowerCase','plan','entries','Create\x20an\x20external\x20website\x20link\x20menu','External\x20menu\x20creation\x20failed.','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','/smartapi/menu/create','recovered','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','15ftOGdt','lookupCommand','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','164748OQNJLJ','\x20failed\x20final\x20verification.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','appCode','9986795FzNofI','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','data','readbackerror','menu_create_recovery_required','call','visibility','cookie','protocol','create\x20external\x20menu','5368231OpFrMQ','64VQDFOP','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','cause','menu_url_invalid','12xcSRnc','iframe','expectedPath','stringify','menu_sort_overflow','str','389290nluusL','hasOwnProperty','create-menu','<platform-generated>','1221774wpZAAy','snapshot','POST','label','body','create-response-validation','expectedSnapshotHash','rawFlags','menu_sort_invalid','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','embedded','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Provide\x20an\x20HTTPS\x20URL.','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','currentSnapshotHash','601873fAyCmg','\x20has\x20an\x20unexpected\x20generated\x20path.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','menus','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','\x20could\x20not\x20be\x20verified.','URL','createdId','after','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','boolean','<redacted>','type','menu_not_found','Menu\x20label','has','https:','bool','External\x20HTTPS\x20URL','menu_mutation_failed','fact','get','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','object','path','2RNYYIu','81HjVavl','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','byId'];a117_0x4a44=function(){return _0x8ab3e7;};return a117_0x4a44();}function redactFailurePlan(_0x1c559e){const _0x473146=a117_0x50e10b;return{..._0x1c559e,'selector':redactFailureRecord(_0x1c559e[_0x473146(0x20d)]),'before':redactFailureValue(_0x1c559e[_0x473146(0x224)]),'after':redactFailureValue(_0x1c559e[_0x473146(0x26c)]),'plannedActions':_0x1c559e[_0x473146(0x213)]?.[_0x473146(0x1f4)](_0x5b07a7=>({..._0x5b07a7,'body':redactFailureRecord(_0x5b07a7[_0x473146(0x258)])})),'succeeded':_0x1c559e['succeeded'][_0x473146(0x1f4)](redactFailureRecord),'failed':_0x1c559e[_0x473146(0x21b)][_0x473146(0x1f4)](redactFailureRecord),'verification':_0x1c559e['verification']?redactFailureRecord(_0x1c559e[_0x473146(0x1f6)]):undefined};}function a117_0x2858(_0x1d6304,_0x12022){_0x1d6304=_0x1d6304-0x1dd;const _0x4a446d=a117_0x4a44();let _0x285896=_0x4a446d[_0x1d6304];return _0x285896;}function redactFailureRecord(_0x4a5fd2){return redactFailureValue(_0x4a5fd2);}function redactFailureValue(_0x2669ad,_0x211037=''){const _0x564e58=a117_0x50e10b,_0x1365fe=_0x211037[_0x564e58(0x228)]()[_0x564e58(0x226)](/[^a-z0-9]/g,'');if([_0x564e58(0x248),_0x564e58(0x1f8),_0x564e58(0x23e),'rawerror'][_0x564e58(0x21f)](_0x1365fe))return _0x564e58(0x26f);if(Array[_0x564e58(0x20a)](_0x2669ad))return _0x2669ad['map'](_0x365e76=>redactFailureValue(_0x365e76));if(_0x2669ad&&typeof _0x2669ad===_0x564e58(0x1e6))return Object['fromEntries'](Object[_0x564e58(0x22a)](_0x2669ad)[_0x564e58(0x1f4)](([_0x3f2c36,_0x5b6698])=>[_0x3f2c36,redactFailureValue(_0x5b6698,_0x3f2c36)]));return _0x2669ad;}function safeMenuAddError(_0x55cca2){const _0x401911=a117_0x50e10b,_0x191c92=_0x55cca2 instanceof CliError?_0x55cca2[_0x401911(0x1f9)]:_0x401911(0x1e2);switch(_0x191c92){case _0x401911(0x220):return menuError(_0x191c92,_0x401911(0x1fd),_0x401911(0x25f));case'menu_permission_denied':return menuError(_0x191c92,_0x401911(0x266),_0x401911(0x268));case _0x401911(0x1f1):return menuError(_0x191c92,_0x401911(0x22d),_0x401911(0x1ea));case _0x401911(0x1f5):return menuError(_0x191c92,_0x401911(0x26d),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x401911(0x23f):return menuError(_0x191c92,_0x401911(0x23c),_0x401911(0x23b));case _0x401911(0x1e2):case _0x401911(0x271):case'menu_parent_not_folder':case _0x401911(0x25c):case _0x401911(0x24e):return menuError(_0x191c92,_0x401911(0x22c),_0x401911(0x238));default:return menuError(_0x401911(0x1e2),_0x401911(0x22c),_0x401911(0x238));}}function getFailureRecord(_0xe3a497){const _0xe6fe05=a117_0x50e10b;if(!(_0xe3a497 instanceof Error)||!('data'in _0xe3a497))return undefined;const _0x8c242c=_0xe3a497[_0xe6fe05(0x23d)];if(!_0x8c242c||typeof _0x8c242c!==_0xe6fe05(0x1e6))return undefined;const _0x49ace5=_0x8c242c[_0xe6fe05(0x21b)];if(!Array[_0xe6fe05(0x20a)](_0x49ace5)||!_0x49ace5[0x0]||typeof _0x49ace5[0x0]!==_0xe6fe05(0x1e6))return undefined;return _0x49ace5[0x0];}
1
+ const a130_0x173092=a130_0x5060;(function(_0x4b1faf,_0x1ba768){const _0x22cc70=a130_0x5060,_0x283a51=_0x4b1faf();while(!![]){try{const _0x48b4da=parseInt(_0x22cc70(0x157))/0x1*(-parseInt(_0x22cc70(0x18f))/0x2)+-parseInt(_0x22cc70(0x152))/0x3+-parseInt(_0x22cc70(0x19e))/0x4+-parseInt(_0x22cc70(0x13a))/0x5+-parseInt(_0x22cc70(0x190))/0x6*(parseInt(_0x22cc70(0x19a))/0x7)+-parseInt(_0x22cc70(0x15c))/0x8*(-parseInt(_0x22cc70(0x179))/0x9)+-parseInt(_0x22cc70(0x186))/0xa*(-parseInt(_0x22cc70(0x162))/0xb);if(_0x48b4da===_0x1ba768)break;else _0x283a51['push'](_0x283a51['shift']());}catch(_0x1f6b64){_0x283a51['push'](_0x283a51['shift']());}}}(a130_0x399a,0x8717f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a130_0x5060(_0x2e9343,_0x22de31){_0x2e9343=_0x2e9343-0x136;const _0x399a26=a130_0x399a();let _0x5060e7=_0x399a26[_0x2e9343];return _0x5060e7;}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':a130_0x173092(0x1ac),'new-window':a130_0x173092(0x1a7)};export function validateExternalMenuUrl(_0x2682a1){const _0x58b054=a130_0x173092,_0x461ac5=_0x2682a1['trim']();let _0x3d768a;try{_0x3d768a=new URL(_0x461ac5);}catch{throw menuError('menu_url_invalid','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x58b054(0x159));}if(_0x3d768a[_0x58b054(0x139)]!=='https:')throw menuError(_0x58b054(0x160),_0x58b054(0x197),_0x58b054(0x181));if(_0x3d768a[_0x58b054(0x16e)]||_0x3d768a[_0x58b054(0x1c0)])throw menuError(_0x58b054(0x16f),_0x58b054(0x1b7),_0x58b054(0x1bd));return _0x461ac5;}export const menuExternalLinkCreate={'service':a130_0x173092(0x161),'command':a130_0x173092(0x1a2),'description':a130_0x173092(0x17d),'risk':a130_0x173092(0x192),'structuredErrors':!![],'flags':[{'name':a130_0x173092(0x1a9),'type':a130_0x173092(0x1b4),'required':!![],'description':a130_0x173092(0x1b6)},{'name':a130_0x173092(0x19c),'type':a130_0x173092(0x1b4),'required':!![],'enum':[a130_0x173092(0x1a4),'new-window'],'description':a130_0x173092(0x147)},{'name':a130_0x173092(0x1c3),'type':a130_0x173092(0x1b4),'required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a130_0x173092(0x175),'type':a130_0x173092(0x1b1),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x56aa37){validateAddInput(_0x56aa37);},async 'dryRun'(_0x426fca){const _0x4acf04=a130_0x173092;validateAddInput(_0x426fca);const {plan:_0x36231c}=await buildSafeAddPlan(_0x426fca,!![]),_0x504755=_0x36231c[_0x4acf04(0x136)],_0x383925=createBody(_0x504755);return menuDryRunResult(_0x36231c,{'method':_0x4acf04(0x195),'url':_0x4acf04(0x169),'body':_0x383925,'description':_0x4acf04(0x196)+JSON[_0x4acf04(0x1ba)](_0x504755[_0x4acf04(0x1a9)])+_0x4acf04(0x167)+_0x426fca['str']('open-mode')+_0x4acf04(0x1a5)});},async 'execute'(_0xe8f6f){const _0x3f533c=a130_0x173092;validateAddInput(_0xe8f6f);const _0x477806=await buildSafeAddPlan(_0xe8f6f,![]),{plan:_0x175f1e,snapshot:_0x5d365a}=_0x477806,_0x3cb8ee=_0x175f1e['after'],_0x55e2c6=buildMenuLookupCommand(_0xe8f6f[_0x3f533c(0x146)]);await recheckAddSnapshot(_0xe8f6f,_0x175f1e);let _0xa828f9;try{_0xa828f9=await createMenuEntity(_0xe8f6f['appCode'],_0xe8f6f[_0x3f533c(0x1b8)],createBody(_0x3cb8ee));}catch(_0x4c2b23){const _0x4edc43=mapMenuApiError(_0x4c2b23,_0x3f533c(0x193));if(!isMenuResponseLoss(_0x4c2b23)||_0x4edc43['code']===_0x3f533c(0x15b))throw externalLinkCreateFailure(_0x4edc43,_0x175f1e,{'stage':_0x3f533c(0x1bf),'failed':{},'verification':{'status':_0x3f533c(0x16b),'lookupCommand':_0x55e2c6}});return recoverAfterResponseLoss(_0xe8f6f,_0x477806,_0x55e2c6);}const _0x5729f0=Number(_0xa828f9?.['id']),_0x13a36c=typeof _0xa828f9?.['path']===_0x3f533c(0x1b4)?_0xa828f9[_0x3f533c(0x17c)]:'';if(!Number[_0x3f533c(0x194)](_0x5729f0)||_0x5729f0<=0x0||!_0x13a36c[_0x3f533c(0x165)]()){const _0x4f3c8f=menuError(_0x3f533c(0x176),_0x3f533c(0x14a),'Run\x20'+_0x55e2c6+_0x3f533c(0x1ad));throw externalLinkCreateFailure(_0x4f3c8f,_0x175f1e,{'stage':_0x3f533c(0x17a),'succeeded':Number[_0x3f533c(0x194)](_0x5729f0)&&_0x5729f0>0x0?[{'id':_0x5729f0,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x5729f0)?_0x5729f0:null,'generatedPathConfirmed':Boolean(_0x13a36c[_0x3f533c(0x165)]())},'warnings':[_0x3f533c(0x17e)],'after':Number[_0x3f533c(0x194)](_0x5729f0)&&_0x5729f0>0x0?{..._0x3cb8ee,'id':_0x5729f0,'path':_0x13a36c}:_0x3cb8ee,'verification':{'status':_0x3f533c(0x16b),'lookupCommand':_0x55e2c6,...Number[_0x3f533c(0x194)](_0x5729f0)&&_0x5729f0>0x0?{'targetId':_0x5729f0}:{}}});}const _0x5e2932=await readAndVerifyCreatedMenu({'appCode':_0xe8f6f[_0x3f533c(0x146)],'cookie':_0xe8f6f[_0x3f533c(0x1b8)],'plan':_0x175f1e,'afterPlan':_0x3cb8ee,'createdId':_0x5729f0,'expectedPath':_0x13a36c,'lookupCommand':_0x55e2c6,'recovered':![]});return creationSuccess(_0x175f1e,_0x5e2932['snapshot'],_0x5e2932[_0x3f533c(0x13e)],![]);}};function validateAddInput(_0x2b8560){const _0x3eab78=a130_0x173092;if(!_0x2b8560[_0x3eab78(0x185)](_0x3eab78(0x1a9))['trim']())throw CliErrors['flagMissing'](_0x3eab78(0x1a9));resolveExternalMenuType(_0x2b8560),validateExternalMenuUrl(_0x2b8560[_0x3eab78(0x185)](_0x3eab78(0x1c3))),parseParentId(_0x2b8560,_0x3eab78(0x16a)),validateSort(_0x2b8560);}function resolveExternalMenuType(_0x35b547){const _0x2d39d3=a130_0x173092,_0x2e3fe5=_0x35b547[_0x2d39d3(0x185)](_0x2d39d3(0x19c))[_0x2d39d3(0x165)]();if(!_0x2e3fe5)throw CliErrors[_0x2d39d3(0x184)](_0x2d39d3(0x19c));const _0x3ab22a=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x2e3fe5];if(!_0x3ab22a)throw menuError(_0x2d39d3(0x1b9),_0x2d39d3(0x155),_0x2d39d3(0x180));return _0x3ab22a;}async function buildAddPlan(_0x5689b8,_0xb4537c){const _0x5289f2=a130_0x173092,_0x235af9=await fetchMutationSnapshot(_0x5689b8,_0x5289f2(0x193)),_0x5ea3ec=parseParentId(_0x5689b8,'parent-id')??null;if(_0x5ea3ec!=null)requireFolder(_0x235af9,_0x5ea3ec);const _0x940c5=validateSort(_0x5689b8),_0x177040=_0x940c5??nextSiblingSort(_0x235af9,_0x5ea3ec,_0x5289f2(0x161)),_0x833a19=_0x5689b8[_0x5289f2(0x185)](_0x5289f2(0x1a9))['trim'](),_0x294827=resolveExternalMenuType(_0x5689b8),_0x382168=validateExternalMenuUrl(_0x5689b8['str'](_0x5289f2(0x1c3))),_0x43dac7=Object['prototype'][_0x5289f2(0x142)]['call'](_0x5689b8[_0x5289f2(0x15f)],_0x5289f2(0x175))?_0x5689b8['bool'](_0x5289f2(0x175)):!![],_0x27f26c={'id':null,'parentId':_0x5ea3ec,'label':_0x833a19,'path':_0x5289f2(0x154),'url':_0x382168,'type':_0x294827,'visible':_0x43dac7,'sort':_0x177040},_0x2ff23b=buildMenuLookupCommand(_0x5689b8[_0x5289f2(0x146)]),_0x4faa63=mutationResult({'operation':_0x5289f2(0x18d),'selector':{'parentId':_0x5ea3ec,'type':_0x294827,'label':_0x833a19,'url':_0x382168},'before':null,'after':_0x27f26c,'dryRun':_0xb4537c,'backend':[{'method':_0x5289f2(0x195),'path':'/smartapi/menu/create'}],'plannedActions':[{'stage':_0x5289f2(0x189),'method':'POST','path':'/smartapi/menu/create','body':createBody(_0x27f26c)}],'snapshotHash':_0x235af9['hash'],'warnings':[_0x5289f2(0x14e)],'verification':{'lookupCommand':_0x2ff23b}});return{'plan':_0x4faa63,'snapshot':_0x235af9};}async function buildSafeAddPlan(_0x5b2ee2,_0x106f5c){try{return await buildAddPlan(_0x5b2ee2,_0x106f5c);}catch(_0x48e916){throw safeMenuAddError(_0x48e916);}}async function recheckAddSnapshot(_0x247b7d,_0x209b51){const _0x1f5ca8=a130_0x173092;try{await recheckMutationSnapshot(_0x247b7d,_0x209b51,_0x1f5ca8(0x193));}catch(_0x1b205d){const _0x334650=getFailureRecord(_0x1b205d);throw externalLinkCreateFailure(_0x1b205d,_0x209b51,{'stage':_0x1f5ca8(0x1be),'failed':{..._0x334650?.[_0x1f5ca8(0x16c)]?{'expectedSnapshotHash':_0x334650['expectedSnapshotHash']}:{},..._0x334650?.[_0x1f5ca8(0x13f)]?{'currentSnapshotHash':_0x334650[_0x1f5ca8(0x13f)]}:{}}});}}function createBody(_0x57b96b){const _0x2a4c6a=a130_0x173092;return{'parentId':toApiParentId(_0x57b96b[_0x2a4c6a(0x18a)]),'label':String(_0x57b96b[_0x2a4c6a(0x1a9)]),'type':String(_0x57b96b[_0x2a4c6a(0x13c)]),'url':String(_0x57b96b['url']),'visible':Boolean(_0x57b96b[_0x2a4c6a(0x175)]),'sort':Number(_0x57b96b[_0x2a4c6a(0x141)]),'extend':{}};}function buildMenuLookupCommand(_0x45ca07){const _0x50d7d4=a130_0x173092,_0x17f342='\x27'+_0x45ca07['replace'](/'/g,_0x50d7d4(0x19d))+'\x27';return _0x50d7d4(0x14c)+_0x17f342+_0x50d7d4(0x164);}async function recoverAfterResponseLoss(_0x4c6205,_0x1b343,_0x20c405){const _0x211937=a130_0x173092,{plan:_0x2596d5,snapshot:_0x577cf0}=_0x1b343,_0x5c9309=_0x2596d5[_0x211937(0x136)];let _0x5da93a;try{_0x5da93a=await fetchMenuSnapshot(_0x4c6205['appCode'],_0x4c6205[_0x211937(0x1b8)]);}catch(_0x43c71f){throw recoveryRequiredFailure(_0x2596d5,_0x20c405,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x116b35=_0x5da93a['menus']['filter'](_0x4178e0=>_0x4178e0[_0x211937(0x18a)]===_0x5c9309[_0x211937(0x18a)]&&_0x4178e0['type']===_0x5c9309[_0x211937(0x13c)]&&_0x4178e0[_0x211937(0x1a9)]===_0x5c9309[_0x211937(0x1a9)]&&_0x4178e0['url']===_0x5c9309['url']),_0x105bcb=_0x116b35[_0x211937(0x177)](_0x2171ec=>!_0x577cf0['byId'][_0x211937(0x1ab)](_0x2171ec['id'])),_0x548702=_0x116b35['filter'](_0x9c12d4=>_0x577cf0[_0x211937(0x13b)][_0x211937(0x1ab)](_0x9c12d4['id']));if(_0x116b35[_0x211937(0x144)]!==0x1||_0x105bcb[_0x211937(0x144)]!==0x1)throw recoveryRequiredFailure(_0x2596d5,_0x20c405,{'matchCount':_0x116b35['length'],'newMatchCount':_0x105bcb['length'],'preexistingMatchCount':_0x548702[_0x211937(0x144)]});const _0x4cb595=_0x105bcb[0x0];try{verifyCreatedFact(_0x4cb595,_0x4cb595['id'],_0x5c9309,null);}catch(_0x12d184){const _0x59d14a=_0x12d184 instanceof Error&&'code'in _0x12d184?_0x12d184:menuError('menu_verification_failed',_0x211937(0x17f)+_0x4cb595['id']+'\x20could\x20not\x20be\x20verified.',_0x211937(0x148)+_0x20c405+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x59d14a,_0x2596d5,{'stage':'verification','succeeded':[{'id':_0x4cb595['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x4cb595['id'],'finalFactsConfirmed':![]},'after':_0x4cb595,'warnings':[_0x211937(0x1a8)+_0x4cb595['id']+_0x211937(0x182)],'verification':{'status':_0x211937(0x16b),'targetId':_0x4cb595['id'],'recovered':!![],'lookupCommand':_0x20c405}});}return creationSuccess(_0x2596d5,_0x5da93a,_0x4cb595,!![]);}function recoveryRequiredFailure(_0x38d355,_0x22c3f1,_0x5dcee7){const _0x637876=a130_0x173092,_0x59ddbe=menuError(_0x637876(0x174),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Run\x20'+_0x22c3f1+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x59ddbe,_0x38d355,{'stage':'create-recovery','failed':_0x5dcee7,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x637876(0x16b),..._0x5dcee7,'lookupCommand':_0x22c3f1}});}async function readAndVerifyCreatedMenu(_0x3131b){const _0x406360=a130_0x173092;let _0x570b53;try{_0x570b53=await fetchMenuSnapshot(_0x3131b[_0x406360(0x146)],_0x3131b[_0x406360(0x1b8)]);}catch(_0x3ac09f){const _0x93d0f4=menuError(_0x406360(0x1b3),_0x406360(0x1a8)+_0x3131b['createdId']+_0x406360(0x15a),_0x406360(0x148)+_0x3131b['lookupCommand']+_0x406360(0x191));throw externalLinkCreateFailure(_0x93d0f4,_0x3131b[_0x406360(0x171)],{'stage':_0x406360(0x178),'succeeded':[{'id':_0x3131b[_0x406360(0x19b)],'created':!![]}],'failed':{'id':_0x3131b[_0x406360(0x19b)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x3131b[_0x406360(0x18c)],'id':_0x3131b['createdId'],'path':_0x3131b[_0x406360(0x1ae)]},'warnings':[_0x406360(0x1a8)+_0x3131b[_0x406360(0x19b)]+_0x406360(0x153)],'verification':{'status':'failed','targetId':_0x3131b[_0x406360(0x19b)],'lookupCommand':_0x3131b[_0x406360(0x166)]}});}const _0x8d4fa0=_0x570b53[_0x406360(0x13b)][_0x406360(0x138)](_0x3131b['createdId']);try{if(!_0x8d4fa0)throw menuError('menu_verification_failed',_0x406360(0x1c1)+_0x3131b[_0x406360(0x19b)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x406360(0x148)+_0x3131b[_0x406360(0x166)]+_0x406360(0x191));verifyCreatedFact(_0x8d4fa0,_0x3131b[_0x406360(0x19b)],_0x3131b['afterPlan'],_0x3131b[_0x406360(0x1ae)]);}catch(_0x2a4ff8){const _0x50248d=_0x2a4ff8 instanceof Error&&'code'in _0x2a4ff8?_0x2a4ff8:menuError(_0x406360(0x1b3),_0x406360(0x1c1)+_0x3131b['createdId']+_0x406360(0x14b),_0x406360(0x148)+_0x3131b[_0x406360(0x166)]+_0x406360(0x191));throw externalLinkCreateFailure(_0x50248d,_0x3131b[_0x406360(0x171)],{'stage':_0x406360(0x178),'succeeded':[{'id':_0x3131b['createdId'],'created':!![]}],'failed':{'id':_0x3131b[_0x406360(0x19b)],'finalFactsConfirmed':![]},'after':_0x8d4fa0??{..._0x3131b['afterPlan'],'id':_0x3131b[_0x406360(0x19b)],'path':_0x3131b[_0x406360(0x1ae)]},'warnings':[_0x406360(0x1a8)+_0x3131b[_0x406360(0x19b)]+_0x406360(0x183)],'verification':{'status':_0x406360(0x16b),'targetId':_0x3131b['createdId'],'recovered':_0x3131b['recovered'],'lookupCommand':_0x3131b[_0x406360(0x166)]}});}return{'snapshot':_0x570b53,'fact':_0x8d4fa0};}function verifyCreatedFact(_0x520471,_0x14c262,_0x10744e,_0x55550f){const _0x23a084=a130_0x173092;if(!Number[_0x23a084(0x194)](_0x520471['id'])||_0x520471['id']<=0x0||_0x520471['id']!==_0x14c262)throw menuError(_0x23a084(0x1b3),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x23a084(0x199));const _0x5d8ca7=[[_0x23a084(0x143),_0x520471[_0x23a084(0x18a)],_0x10744e[_0x23a084(0x18a)]],[_0x23a084(0x13c),_0x520471[_0x23a084(0x13c)],_0x10744e[_0x23a084(0x13c)]],[_0x23a084(0x1a9),_0x520471[_0x23a084(0x1a9)],_0x10744e[_0x23a084(0x1a9)]],[_0x23a084(0x163),_0x520471[_0x23a084(0x1c3)],_0x10744e[_0x23a084(0x1c3)]],[_0x23a084(0x1af),_0x520471['visible'],_0x10744e[_0x23a084(0x175)]],[_0x23a084(0x141),_0x520471[_0x23a084(0x141)],_0x10744e[_0x23a084(0x141)]]];for(const [_0x2fb3a2,_0x231776,_0x188f97]of _0x5d8ca7){if(_0x231776!==_0x188f97)throw menuError(_0x23a084(0x1b3),'Created\x20menu\x20'+_0x520471['id']+_0x23a084(0x1bb)+_0x2fb3a2+'.',_0x23a084(0x18b));}if(!_0x520471[_0x23a084(0x17c)][_0x23a084(0x165)]()||_0x55550f!==null&&_0x520471['path']!==_0x55550f)throw menuError(_0x23a084(0x1b3),_0x23a084(0x1c1)+_0x520471['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x23a084(0x18b));}function creationSuccess(_0x454f55,_0x1cc37e,_0x52aa82,_0x181a8f){const _0xde9e45=a130_0x173092,_0x41809b=mutationResult({..._0x454f55,'after':_0x52aa82,'dryRun':![],'succeeded':[{'id':_0x52aa82['id'],'created':!![],'recovered':_0x181a8f}],'verification':{'checkedBy':_0xde9e45(0x1a0),'snapshotHash':_0x1cc37e[_0xde9e45(0x1a3)],'targetId':_0x52aa82['id'],'recovered':_0x181a8f,'path':_0x52aa82[_0xde9e45(0x17c)]}});return{'ok':!![],'message':_0x181a8f?_0xde9e45(0x16d)+_0x52aa82['id']+_0xde9e45(0x15d):'Created\x20external\x20menu\x20'+_0x52aa82['id']+'.','data':{..._0x41809b,'recovered':_0x181a8f}};}function externalLinkCreateFailure(_0x329e0c,_0x3db2f4,_0x32617d){const _0x3e8d93=a130_0x173092;return menuFailure(safeMenuAddError(_0x329e0c),redactFailurePlan(_0x3db2f4),{..._0x32617d,'succeeded':_0x32617d[_0x3e8d93(0x18e)]?.['map'](redactFailureRecord),'failed':_0x32617d['failed']?redactFailureRecord(_0x32617d[_0x3e8d93(0x16b)]):undefined,'verification':_0x32617d[_0x3e8d93(0x178)]?redactFailureRecord(_0x32617d[_0x3e8d93(0x178)]):undefined,'after':_0x32617d[_0x3e8d93(0x136)]===undefined?undefined:redactFailureValue(_0x32617d[_0x3e8d93(0x136)])});}function redactFailurePlan(_0x130b62){const _0x2ea830=a130_0x173092;return{..._0x130b62,'selector':redactFailureRecord(_0x130b62[_0x2ea830(0x150)]),'before':redactFailureValue(_0x130b62[_0x2ea830(0x15e)]),'after':redactFailureValue(_0x130b62[_0x2ea830(0x136)]),'plannedActions':_0x130b62['plannedActions']?.['map'](_0x5a6e6a=>({..._0x5a6e6a,'body':redactFailureRecord(_0x5a6e6a[_0x2ea830(0x145)])})),'succeeded':_0x130b62[_0x2ea830(0x18e)][_0x2ea830(0x137)](redactFailureRecord),'failed':_0x130b62[_0x2ea830(0x16b)]['map'](redactFailureRecord),'verification':_0x130b62[_0x2ea830(0x178)]?redactFailureRecord(_0x130b62['verification']):undefined};}function redactFailureRecord(_0x2a4004){return redactFailureValue(_0x2a4004);}function redactFailureValue(_0x400ab5,_0x5d071d=''){const _0x13bb3a=a130_0x173092,_0x189988=_0x5d071d[_0x13bb3a(0x188)]()[_0x13bb3a(0x156)](/[^a-z0-9]/g,'');if([_0x13bb3a(0x1b0),_0x13bb3a(0x1b5),_0x13bb3a(0x198),_0x13bb3a(0x149)]['includes'](_0x189988))return _0x13bb3a(0x187);if(Array[_0x13bb3a(0x1aa)](_0x400ab5))return _0x400ab5[_0x13bb3a(0x137)](_0x3d9862=>redactFailureValue(_0x3d9862));if(_0x400ab5&&typeof _0x400ab5===_0x13bb3a(0x13d))return Object[_0x13bb3a(0x151)](Object['entries'](_0x400ab5)[_0x13bb3a(0x137)](([_0xd89be9,_0x145c62])=>[_0xd89be9,redactFailureValue(_0x145c62,_0xd89be9)]));return _0x400ab5;}function a130_0x399a(){const _0x14ab30=['2111285wAgLCI','byId','type','object','fact','currentSnapshotHash','data','sort','hasOwnProperty','parent','length','body','appCode','How\x20to\x20open\x20the\x20external\x20website','Run\x20','rawerror','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20failed\x20final\x20verification.','rabetbase\x20menu\x20list\x20--appcode\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','selector','fromEntries','1288041LhVqjY','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','<platform-generated>','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','replace','4Rpgkxj','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','menu_permission_denied','16vowusB','\x20after\x20response\x20loss.','before','rawFlags','menu_url_https_required','menu','11TenKpp','URL','\x20--format\x20compress','trim','lookupCommand','\x20with\x20','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','/smartapi/menu/create','parent-id','failed','expectedSnapshotHash','Recovered\x20created\x20external\x20menu\x20','username','menu_url_credentials_forbidden','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','plan','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','menu_sort_overflow','menu_create_recovery_required','visible','menu_create_response_invalid','filter','verification','1420308gKzAGG','create-response-validation','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','path','Create\x20an\x20external\x20website\x20link\x20menu','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','Recovered\x20menu\x20','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Provide\x20an\x20HTTPS\x20URL.','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','flagMissing','str','28030020XkiQVi','<redacted>','toLowerCase','create-menu','parentId','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','afterPlan','add','succeeded','303592hCziiQ','539190jYCznt','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','write','create\x20external\x20menu','isSafeInteger','POST','Would\x20create\x20external\x20website\x20link\x20menu\x20','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','readbackerror','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','77etwPAp','createdId','open-mode','\x27\x5c\x27\x27','471920zGbwXQ','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','menu\x20list','menu_mutation_failed','external-link-create','hash','embedded','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','menu_not_found','link','Menu\x20','label','isArray','has','iframe','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','expectedPath','visibility','cause','boolean','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','menu_verification_failed','string','causemessage','Menu\x20label','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','cookie','menu_open_mode_invalid','stringify','\x20has\x20an\x20unexpected\x20','code','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','pre-write-recheck','create','password','Created\x20menu\x20','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','url','after','map','get','protocol'];a130_0x399a=function(){return _0x14ab30;};return a130_0x399a();}function safeMenuAddError(_0x4e2a03){const _0x141bea=a130_0x173092,_0x2766be=_0x4e2a03 instanceof CliError?_0x4e2a03[_0x141bea(0x1bc)]:_0x141bea(0x1a1);switch(_0x2766be){case'menu_state_drift':return menuError(_0x2766be,_0x141bea(0x1c2),_0x141bea(0x158));case _0x141bea(0x15b):return menuError(_0x2766be,_0x141bea(0x14f),_0x141bea(0x19f));case _0x141bea(0x176):return menuError(_0x2766be,_0x141bea(0x1b2),_0x141bea(0x17b));case'menu_verification_failed':return menuError(_0x2766be,_0x141bea(0x168),_0x141bea(0x17b));case _0x141bea(0x174):return menuError(_0x2766be,_0x141bea(0x172),_0x141bea(0x14d));case _0x141bea(0x1a1):case _0x141bea(0x1a6):case'menu_parent_not_folder':case'menu_sort_invalid':case _0x141bea(0x173):return menuError(_0x2766be,'External\x20menu\x20creation\x20failed.',_0x141bea(0x170));default:return menuError('menu_mutation_failed','External\x20menu\x20creation\x20failed.',_0x141bea(0x170));}}function getFailureRecord(_0x19eda4){const _0x17eccd=a130_0x173092;if(!(_0x19eda4 instanceof Error)||!(_0x17eccd(0x140)in _0x19eda4))return undefined;const _0x370729=_0x19eda4[_0x17eccd(0x140)];if(!_0x370729||typeof _0x370729!=='object')return undefined;const _0x138af3=_0x370729[_0x17eccd(0x16b)];if(!Array[_0x17eccd(0x1aa)](_0x138af3)||!_0x138af3[0x0]||typeof _0x138af3[0x0]!==_0x17eccd(0x13d))return undefined;return _0x138af3[0x0];}
@@ -1 +1 @@
1
- const a118_0x34a8b1=a118_0x1374;(function(_0x41ba27,_0xfde82b){const _0x3f69b4=a118_0x1374,_0xba8d62=_0x41ba27();while(!![]){try{const _0x219304=parseInt(_0x3f69b4(0x124))/0x1*(parseInt(_0x3f69b4(0x117))/0x2)+parseInt(_0x3f69b4(0xfa))/0x3*(-parseInt(_0x3f69b4(0xf2))/0x4)+parseInt(_0x3f69b4(0x13f))/0x5+-parseInt(_0x3f69b4(0x115))/0x6*(parseInt(_0x3f69b4(0xf7))/0x7)+-parseInt(_0x3f69b4(0x12e))/0x8+parseInt(_0x3f69b4(0x125))/0x9*(parseInt(_0x3f69b4(0x13c))/0xa)+parseInt(_0x3f69b4(0x139))/0xb;if(_0x219304===_0xfde82b)break;else _0xba8d62['push'](_0xba8d62['shift']());}catch(_0x5e0907){_0xba8d62['push'](_0xba8d62['shift']());}}}(a118_0x46f4,0x3a0d6));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';function a118_0x46f4(){const _0x465b5b=['5996nRiHfE','flagMissing','\x20already\x20matches\x20the\x20requested\x20URL.','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','appCode','1288AidzfU','childrenCount','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','93XYtXHZ','code','\x20parent\x20changed:\x20expected\x20','\x20changed\x20during\x20the\x20URL-only\x20update.','body','path','cookie','replace','/smartapi/menu/update','failed','get','verification','Menu\x20','snapshot','POST','parentId','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','menu_external_link_type_required','\x27\x5c\x27\x27','string','Response\x20was\x20lost\x20and\x20menu\x20','sort','menu','plan','expect-parent-id','expect-url','verify\x20external\x20menu\x20URL\x20update','12906mZzQBR','menu_external_link_not_leaf','1090abvvHs','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','update-recovery','external-link-update','link','Run\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','New\x20external\x20HTTPS\x20URL','visible','iframe','\x22,\x20not\x20iframe\x20or\x20link.','update','byId','27hdFzvF','24021IovrPD','\x20could\x20not\x20be\x20verified\x20safely','menu_permission_denied',',\x20current\x20','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','str','type','735648DgcjgQ','url','\x20URL\x20update\x20did\x20not\x20take\x20effect.','\x20has\x20','\x20is\x20type\x20\x22','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','\x20--format\x20compress','update-external-link-url','trim','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','6417873bISldQ','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','requestedUrlObserved','50OgMRDu','menu_external_link_path_missing','\x20has\x20an\x20empty\x20platform\x20path.','802440SGPRTD','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','label','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','menu_state_drift','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','readbackFailed','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','rabetbase\x20menu\x20list\x20--appcode\x20'];a118_0x46f4=function(){return _0x465b5b;};return a118_0x46f4();}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':a118_0x34a8b1(0x108),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a118_0x34a8b1(0x110),'command':'external-link-update','description':a118_0x34a8b1(0x13a),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a118_0x34a8b1(0x12f),'type':'string','required':!![],'description':a118_0x34a8b1(0x11e)},{'name':a118_0x34a8b1(0x113),'type':a118_0x34a8b1(0x10d),'required':!![],'description':a118_0x34a8b1(0x133)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x372019){validateInput(_0x372019);},async 'dryRun'(_0x20b37f){const _0x1c2359=a118_0x34a8b1;validateInput(_0x20b37f);const _0x2ad8ea=await buildPlan(_0x20b37f,!![]);return menuDryRunResult(_0x2ad8ea[_0x1c2359(0x111)],{'method':_0x1c2359(0x108),'url':_0x1c2359(0x102),'body':_0x2ad8ea[_0x1c2359(0xfe)],'description':_0x1c2359(0xf0)+_0x2ad8ea[_0x1c2359(0xfe)]['id']+'.'});},async 'execute'(_0x5e956f){const _0x46f315=a118_0x34a8b1;validateInput(_0x5e956f);const _0x213c8e=await buildPlan(_0x5e956f,![]),{plan:_0x14b451,body:_0x17983c,before:_0x5f43bd,noChanges:_0x5287d6}=_0x213c8e,_0x4d2727=_0x17983c['id'];if(_0x5287d6)return updateSuccess(_0x14b451,_0x213c8e[_0x46f315(0x107)],_0x5f43bd,!![],![]);await recheckMutationSnapshot(_0x5e956f,_0x14b451,'update\x20external\x20menu\x20URL',_0x4d2727);try{await updateMenuEntity(_0x5e956f[_0x46f315(0xf6)],_0x5e956f[_0x46f315(0x100)],{'id':_0x17983c['id'],'url':_0x17983c[_0x46f315(0x12f)]});}catch(_0x21c726){const _0x5c1111=mapMenuApiError(_0x21c726,'update\x20external\x20menu\x20URL',_0x4d2727);if(isMenuResponseLoss(_0x21c726)&&_0x5c1111[_0x46f315(0xfb)]!==_0x46f315(0x127))return recoverAfterResponseLoss(_0x5e956f,_0x213c8e);throw menuFailure(_0x5c1111,_0x14b451,{'stage':_0x46f315(0x122),'failed':{'id':_0x4d2727},'warnings':[_0x46f315(0x140)],'verification':{'status':_0x46f315(0x103),'targetId':_0x4d2727,'lookupCommand':buildLookupCommand(_0x5e956f[_0x46f315(0xf6)])}});}let _0x38fb72,_0xfac8ed;try{_0x38fb72=await fetchMenuSnapshot(_0x5e956f[_0x46f315(0xf6)],_0x5e956f[_0x46f315(0x100)]),_0xfac8ed=requireMenu(_0x38fb72,_0x4d2727),verifyUpdatedFact(_0x5f43bd,_0xfac8ed,_0x17983c[_0x46f315(0x12f)]);}catch(_0x188a7a){const _0x25bc98=describeMenuErrorCause(_0x188a7a,_0x46f315(0x114),_0x4d2727),_0x493980=asVerificationError(_0x188a7a,'Update\x20request\x20for\x20menu\x20'+_0x4d2727+_0x46f315(0x12a));throw menuFailure(_0x493980,_0x14b451,{'stage':_0x46f315(0x105),'succeeded':[{'id':_0x4d2727,'updateRequested':!![]}],'failed':{'id':_0x4d2727,'requestedStateConfirmed':![],..._0x25bc98},'warnings':[_0x46f315(0xee)],'verification':{'status':_0x46f315(0x103),'targetId':_0x4d2727,'lookupCommand':buildLookupCommand(_0x5e956f[_0x46f315(0xf6)])}});}return updateSuccess(_0x14b451,_0x38fb72,_0xfac8ed,![],![]);}};function validateInput(_0x3a7735){const _0x604805=a118_0x34a8b1;validateExactId(_0x3a7735),requiredUrl(_0x3a7735,_0x604805(0x12f)),requiredExpectedUrl(_0x3a7735),parseParentId(_0x3a7735,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x4e825b,_0x71dc9c){const _0x588df1=a118_0x34a8b1;if(!hasFlag(_0x4e825b,_0x71dc9c)||!_0x4e825b['str'](_0x71dc9c)[_0x588df1(0x137)]())throw CliErrors[_0x588df1(0xf3)](_0x71dc9c);return validateExternalMenuUrl(_0x4e825b[_0x588df1(0x12c)](_0x71dc9c));}function requiredExpectedUrl(_0x295dfc){const _0x18d9ca=a118_0x34a8b1;if(!hasFlag(_0x295dfc,_0x18d9ca(0x113))||!_0x295dfc[_0x18d9ca(0x12c)](_0x18d9ca(0x113))[_0x18d9ca(0x137)]())throw CliErrors[_0x18d9ca(0xf3)](_0x18d9ca(0x113));return _0x295dfc[_0x18d9ca(0x12c)](_0x18d9ca(0x113))['trim']();}async function buildPlan(_0x59beed,_0x92b426){const _0x3dc0fd=a118_0x34a8b1,_0x4ca643=validateExactId(_0x59beed),_0x43a873=requiredUrl(_0x59beed,_0x3dc0fd(0x12f)),_0x44a584=requiredExpectedUrl(_0x59beed),_0x244090=parseParentId(_0x59beed,_0x3dc0fd(0x112),{'required':!![]}),_0x1d5b5b=await fetchMutationSnapshot(_0x59beed,'update\x20external\x20menu\x20URL',_0x4ca643),_0x347dab=requireMenu(_0x1d5b5b,_0x4ca643);assertExternalLinkLeaf(_0x347dab);if(_0x347dab[_0x3dc0fd(0x109)]!==_0x244090)throw menuError(_0x3dc0fd(0xeb),_0x3dc0fd(0x106)+_0x4ca643+_0x3dc0fd(0xfc)+formatParent(_0x244090)+_0x3dc0fd(0x128)+formatParent(_0x347dab[_0x3dc0fd(0x109)])+'.',_0x3dc0fd(0x142));const _0x32f977=_0x347dab[_0x3dc0fd(0x12f)]===_0x43a873;if(!_0x32f977&&_0x347dab[_0x3dc0fd(0x12f)]!==_0x44a584)throw menuError(_0x3dc0fd(0xeb),_0x3dc0fd(0x106)+_0x4ca643+_0x3dc0fd(0xed),_0x3dc0fd(0x11d));const _0x439d4e={'id':_0x4ca643,'appCode':_0x59beed[_0x3dc0fd(0xf6)],'url':_0x43a873},_0x512245={..._0x347dab,'url':_0x43a873};return{'body':_0x439d4e,'before':_0x347dab,'noChanges':_0x32f977,'snapshot':_0x1d5b5b,'plan':mutationResult({'operation':_0x3dc0fd(0x11a),'selector':{'id':_0x4ca643},'before':_0x347dab,'after':_0x512245,'dryRun':_0x92b426,'backend':[...BACKEND],'plannedActions':_0x32f977?[]:[{'stage':_0x3dc0fd(0x136),'method':_0x3dc0fd(0x108),'path':_0x3dc0fd(0x102),'body':_0x439d4e}],'snapshotHash':_0x1d5b5b['hash'],'warnings':_0x32f977?[_0x3dc0fd(0x12b)]:[]})};}function assertExternalLinkLeaf(_0x46fc81){const _0x59b4a6=a118_0x34a8b1;if(_0x46fc81[_0x59b4a6(0x12d)]!==_0x59b4a6(0x120)&&_0x46fc81['type']!==_0x59b4a6(0x11b))throw menuError(_0x59b4a6(0x10b),'Menu\x20'+_0x46fc81['id']+_0x59b4a6(0x132)+(_0x46fc81['type']||'unknown')+_0x59b4a6(0x121),_0x59b4a6(0x10a));if(_0x46fc81[_0x59b4a6(0xf8)]!==0x0)throw menuError(_0x59b4a6(0x116),_0x59b4a6(0x106)+_0x46fc81['id']+_0x59b4a6(0x131)+_0x46fc81['childrenCount']+'\x20direct\x20child\x20menu(s).',_0x59b4a6(0x129));if(!_0x46fc81[_0x59b4a6(0xff)][_0x59b4a6(0x137)]())throw menuError(_0x59b4a6(0x13d),_0x59b4a6(0x106)+_0x46fc81['id']+_0x59b4a6(0x13e),_0x59b4a6(0x134));}function verifyUpdatedFact(_0x1d2ddf,_0x33b08a,_0x318288){const _0x52dd07=a118_0x34a8b1;assertExternalLinkLeaf(_0x33b08a);const _0x35b9b2=[['id',_0x33b08a['id'],_0x1d2ddf['id']],[_0x52dd07(0x141),_0x33b08a['label'],_0x1d2ddf['label']],['type',_0x33b08a[_0x52dd07(0x12d)],_0x1d2ddf[_0x52dd07(0x12d)]],[_0x52dd07(0xff),_0x33b08a[_0x52dd07(0xff)],_0x1d2ddf[_0x52dd07(0xff)]],['parentId',_0x33b08a['parentId'],_0x1d2ddf[_0x52dd07(0x109)]],['sort',_0x33b08a[_0x52dd07(0x10f)],_0x1d2ddf[_0x52dd07(0x10f)]],['visible',_0x33b08a[_0x52dd07(0x11f)],_0x1d2ddf[_0x52dd07(0x11f)]]];for(const [_0x4da21b,_0x348f29,_0x1a6d55]of _0x35b9b2){assertVerified(_0x348f29===_0x1a6d55,_0x52dd07(0x106)+_0x1d2ddf['id']+'\x20'+_0x4da21b+_0x52dd07(0xfd));}assertVerified(_0x33b08a[_0x52dd07(0x12f)]===_0x318288,_0x52dd07(0x106)+_0x1d2ddf['id']+_0x52dd07(0x130));}function updateSuccess(_0x4b3d76,_0x28eaba,_0x5c8d7d,_0x620549,_0x5772ca){const _0x185ba3=a118_0x34a8b1,_0x31e25f=_0x5c8d7d['id'],_0x4daceb=mutationResult({..._0x4b3d76,'after':_0x5c8d7d,'dryRun':![],'succeeded':[{'id':_0x31e25f,'updated':!_0x620549,'skipped':_0x620549,'recovered':_0x5772ca}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x28eaba['hash'],'targetId':_0x31e25f,'matchesRequestedState':!![],'recovered':_0x5772ca}});return{'ok':!![],'message':_0x5772ca?_0x185ba3(0x118)+_0x31e25f+'.':_0x620549?'Menu\x20'+_0x31e25f+_0x185ba3(0xf4):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x31e25f+'.','data':{..._0x4daceb,'recovered':_0x5772ca}};}async function recoverAfterResponseLoss(_0x554f72,_0x2d6d76){const _0x3667fc=a118_0x34a8b1,{plan:_0x1ff370,before:_0x1e43f5,body:_0x580f50}=_0x2d6d76;let _0x254dfd;try{_0x254dfd=await fetchMenuSnapshot(_0x554f72[_0x3667fc(0xf6)],_0x554f72[_0x3667fc(0x100)]);}catch{throw recoveryRequired(_0x1ff370,_0x554f72[_0x3667fc(0xf6)],{'id':_0x580f50['id'],'readbackFailed':!![]});}const _0x4a76cc=_0x254dfd[_0x3667fc(0x123)][_0x3667fc(0x104)](_0x580f50['id']);if(!_0x4a76cc||_0x4a76cc['url']!==_0x580f50['url'])throw recoveryRequired(_0x1ff370,_0x554f72[_0x3667fc(0xf6)],{'id':_0x580f50['id'],'requestedUrlObserved':![],'after':_0x4a76cc??null});try{verifyUpdatedFact(_0x1e43f5,_0x4a76cc,_0x580f50[_0x3667fc(0x12f)]);}catch(_0xd47626){const _0x5f1b94=asVerificationError(_0xd47626,_0x3667fc(0x10e)+_0x580f50['id']+_0x3667fc(0x126));throw menuFailure(_0x5f1b94,_0x1ff370,{'stage':_0x3667fc(0x119),'succeeded':[{'id':_0x580f50['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x580f50['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x4a76cc,'warnings':[_0x3667fc(0xf9)],'verification':{'status':'failed','targetId':_0x580f50['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x554f72[_0x3667fc(0xf6)])}});}return updateSuccess(_0x1ff370,_0x254dfd,_0x4a76cc,![],!![]);}function recoveryRequired(_0x2c2021,_0x2bc6f3,_0x3e0c11){const _0x5593d4=a118_0x34a8b1,_0xe42997=menuError('menu_update_recovery_required',_0x5593d4(0x138),_0x5593d4(0x11c)+buildLookupCommand(_0x2bc6f3)+_0x5593d4(0xf5));return menuFailure(_0xe42997,_0x2c2021,{'stage':_0x5593d4(0x119),'failed':{'id':_0x3e0c11['id'],..._0x3e0c11[_0x5593d4(0x13b)]===undefined?{}:{'requestedUrlObserved':_0x3e0c11['requestedUrlObserved']},..._0x3e0c11['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x3e0c11['after'],'warnings':[_0x5593d4(0xec)],'verification':{'status':_0x5593d4(0x103),'targetId':_0x3e0c11['id'],..._0x3e0c11['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x3e0c11['requestedUrlObserved']},..._0x3e0c11[_0x5593d4(0xef)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x2bc6f3)}});}function a118_0x1374(_0xacb053,_0x50ac46){_0xacb053=_0xacb053-0xeb;const _0x46f474=a118_0x46f4();let _0x137495=_0x46f474[_0xacb053];return _0x137495;}function buildLookupCommand(_0x3555da){const _0x25d743=a118_0x34a8b1,_0x5e793f='\x27'+_0x3555da[_0x25d743(0x101)](/'/g,_0x25d743(0x10c))+'\x27';return _0x25d743(0xf1)+_0x5e793f+_0x25d743(0x135);}
1
+ function a131_0x34b0(){const _0x599ccf=['743401LBLJjd','code','\x27\x5c\x27\x27','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','sort','menu_update_recovery_required','\x20already\x20matches\x20the\x20requested\x20URL.','\x20has\x20an\x20empty\x20platform\x20path.','Updated\x20external\x20URL\x20for\x20menu\x20','string','POST','iframe','\x20URL\x20update\x20did\x20not\x20take\x20effect.','update\x20external\x20menu\x20URL','update-external-link-url','Menu\x20','visible','label','8467380OodUGB','trim','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','link','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','cookie','childrenCount','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','688GGMPAG','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','parentId','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','write','verify\x20external\x20menu\x20URL\x20update','menu_state_drift','menu_external_link_not_leaf','hash','verification','\x22,\x20not\x20iframe\x20or\x20link.','\x20has\x20','failed','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','/smartapi/menu/update','605124hlzQMr','unknown','Response\x20was\x20lost\x20and\x20menu\x20','external-link-update','update-recovery','3213055pUrmeU','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','\x20direct\x20child\x20menu(s).','2020476adDnLt','update','expect-url','7427AJvoqy','expect-parent-id','url','path','flagMissing','menu_external_link_type_required','type','str','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','menu','4jOyDVy','2308482ScpuTt',',\x20current\x20','appCode','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','2XJdDSy','Run\x20','\x20changed\x20during\x20the\x20URL-only\x20update.','byId','plan','after','New\x20external\x20HTTPS\x20URL','body','replace','rabetbase\x20menu\x20list\x20--appcode\x20','menu_permission_denied'];a131_0x34b0=function(){return _0x599ccf;};return a131_0x34b0();}const a131_0xcfc2e0=a131_0x15d6;(function(_0x154eb2,_0x2107b3){const _0x4f14f8=a131_0x15d6,_0x2e7924=_0x154eb2();while(!![]){try{const _0x22bfbe=-parseInt(_0x4f14f8(0x1d3))/0x1*(parseInt(_0x4f14f8(0x217))/0x2)+-parseInt(_0x4f14f8(0x205))/0x3*(-parseInt(_0x4f14f8(0x212))/0x4)+-parseInt(_0x4f14f8(0x202))/0x5+parseInt(_0x4f14f8(0x213))/0x6+-parseInt(_0x4f14f8(0x208))/0x7*(-parseInt(_0x4f14f8(0x1ed))/0x8)+parseInt(_0x4f14f8(0x1fd))/0x9+parseInt(_0x4f14f8(0x1e5))/0xa;if(_0x22bfbe===_0x2107b3)break;else _0x2e7924['push'](_0x2e7924['shift']());}catch(_0x371a95){_0x2e7924['push'](_0x2e7924['shift']());}}}(a131_0x34b0,0xa5647));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':a131_0xcfc2e0(0x1dd),'path':a131_0xcfc2e0(0x1fc)}];export const menuExternalLinkUpdate={'service':a131_0xcfc2e0(0x211),'command':a131_0xcfc2e0(0x200),'description':a131_0xcfc2e0(0x1e7),'risk':a131_0xcfc2e0(0x1f2),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':a131_0xcfc2e0(0x1dc),'required':!![],'description':a131_0xcfc2e0(0x21d)},{'name':a131_0xcfc2e0(0x207),'type':a131_0xcfc2e0(0x1dc),'required':!![],'description':a131_0xcfc2e0(0x203)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xc30e27){validateInput(_0xc30e27);},async 'dryRun'(_0x5739ae){const _0x114c2a=a131_0xcfc2e0;validateInput(_0x5739ae);const _0x364b33=await buildPlan(_0x5739ae,!![]);return menuDryRunResult(_0x364b33[_0x114c2a(0x21b)],{'method':_0x114c2a(0x1dd),'url':'/smartapi/menu/update','body':_0x364b33[_0x114c2a(0x21e)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x364b33[_0x114c2a(0x21e)]['id']+'.'});},async 'execute'(_0x168fe1){const _0x3827c8=a131_0xcfc2e0;validateInput(_0x168fe1);const _0x2352b9=await buildPlan(_0x168fe1,![]),{plan:_0x3d1c8b,body:_0x279ec1,before:_0x7f2949,noChanges:_0x3ae83c}=_0x2352b9,_0xdb54c6=_0x279ec1['id'];if(_0x3ae83c)return updateSuccess(_0x3d1c8b,_0x2352b9['snapshot'],_0x7f2949,!![],![]);await recheckMutationSnapshot(_0x168fe1,_0x3d1c8b,_0x3827c8(0x1e0),_0xdb54c6);try{await updateMenuEntity(_0x168fe1[_0x3827c8(0x215)],_0x168fe1['cookie'],{'id':_0x279ec1['id'],'url':_0x279ec1[_0x3827c8(0x20a)]});}catch(_0x306f27){const _0x7159bf=mapMenuApiError(_0x306f27,'update\x20external\x20menu\x20URL',_0xdb54c6);if(isMenuResponseLoss(_0x306f27)&&_0x7159bf[_0x3827c8(0x1d4)]!==_0x3827c8(0x1d2))return recoverAfterResponseLoss(_0x168fe1,_0x2352b9);throw menuFailure(_0x7159bf,_0x3d1c8b,{'stage':_0x3827c8(0x206),'failed':{'id':_0xdb54c6},'warnings':[_0x3827c8(0x1e9)],'verification':{'status':_0x3827c8(0x1fa),'targetId':_0xdb54c6,'lookupCommand':buildLookupCommand(_0x168fe1[_0x3827c8(0x215)])}});}let _0x157350,_0xcc791a;try{_0x157350=await fetchMenuSnapshot(_0x168fe1[_0x3827c8(0x215)],_0x168fe1['cookie']),_0xcc791a=requireMenu(_0x157350,_0xdb54c6),verifyUpdatedFact(_0x7f2949,_0xcc791a,_0x279ec1[_0x3827c8(0x20a)]);}catch(_0x45dd5b){const _0x2bde91=describeMenuErrorCause(_0x45dd5b,_0x3827c8(0x1f3),_0xdb54c6),_0x3c57ef=asVerificationError(_0x45dd5b,'Update\x20request\x20for\x20menu\x20'+_0xdb54c6+_0x3827c8(0x1d6));throw menuFailure(_0x3c57ef,_0x3d1c8b,{'stage':_0x3827c8(0x1f7),'succeeded':[{'id':_0xdb54c6,'updateRequested':!![]}],'failed':{'id':_0xdb54c6,'requestedStateConfirmed':![],..._0x2bde91},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x3827c8(0x1fa),'targetId':_0xdb54c6,'lookupCommand':buildLookupCommand(_0x168fe1[_0x3827c8(0x215)])}});}return updateSuccess(_0x3d1c8b,_0x157350,_0xcc791a,![],![]);}};function validateInput(_0x5b4ed9){const _0x2a1d10=a131_0xcfc2e0;validateExactId(_0x5b4ed9),requiredUrl(_0x5b4ed9,_0x2a1d10(0x20a)),requiredExpectedUrl(_0x5b4ed9),parseParentId(_0x5b4ed9,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x48d6aa,_0x2ab3f5){const _0x168d6b=a131_0xcfc2e0;if(!hasFlag(_0x48d6aa,_0x2ab3f5)||!_0x48d6aa[_0x168d6b(0x20f)](_0x2ab3f5)['trim']())throw CliErrors[_0x168d6b(0x20c)](_0x2ab3f5);return validateExternalMenuUrl(_0x48d6aa['str'](_0x2ab3f5));}function a131_0x15d6(_0x575bc0,_0x3c1531){_0x575bc0=_0x575bc0-0x1d0;const _0x34b0f2=a131_0x34b0();let _0x15d622=_0x34b0f2[_0x575bc0];return _0x15d622;}function requiredExpectedUrl(_0x15798d){const _0x3da9d8=a131_0xcfc2e0;if(!hasFlag(_0x15798d,_0x3da9d8(0x207))||!_0x15798d[_0x3da9d8(0x20f)]('expect-url')[_0x3da9d8(0x1e6)]())throw CliErrors[_0x3da9d8(0x20c)](_0x3da9d8(0x207));return _0x15798d[_0x3da9d8(0x20f)]('expect-url')[_0x3da9d8(0x1e6)]();}async function buildPlan(_0x1517ab,_0xd2bc29){const _0x34adeb=a131_0xcfc2e0,_0x3bef6e=validateExactId(_0x1517ab),_0x491c6c=requiredUrl(_0x1517ab,_0x34adeb(0x20a)),_0x5dab5e=requiredExpectedUrl(_0x1517ab),_0x4c4704=parseParentId(_0x1517ab,_0x34adeb(0x209),{'required':!![]}),_0x774316=await fetchMutationSnapshot(_0x1517ab,_0x34adeb(0x1e0),_0x3bef6e),_0xcd8b03=requireMenu(_0x774316,_0x3bef6e);assertExternalLinkLeaf(_0xcd8b03);if(_0xcd8b03[_0x34adeb(0x1f0)]!==_0x4c4704)throw menuError(_0x34adeb(0x1f4),_0x34adeb(0x1e2)+_0x3bef6e+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x4c4704)+_0x34adeb(0x214)+formatParent(_0xcd8b03[_0x34adeb(0x1f0)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x5ccfab=_0xcd8b03['url']===_0x491c6c;if(!_0x5ccfab&&_0xcd8b03[_0x34adeb(0x20a)]!==_0x5dab5e)throw menuError(_0x34adeb(0x1f4),_0x34adeb(0x1e2)+_0x3bef6e+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0x34adeb(0x1fb));const _0x179b9a={'id':_0x3bef6e,'appCode':_0x1517ab[_0x34adeb(0x215)],'url':_0x491c6c},_0x1f555e={..._0xcd8b03,'url':_0x491c6c};return{'body':_0x179b9a,'before':_0xcd8b03,'noChanges':_0x5ccfab,'snapshot':_0x774316,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x3bef6e},'before':_0xcd8b03,'after':_0x1f555e,'dryRun':_0xd2bc29,'backend':[...BACKEND],'plannedActions':_0x5ccfab?[]:[{'stage':_0x34adeb(0x1e1),'method':_0x34adeb(0x1dd),'path':'/smartapi/menu/update','body':_0x179b9a}],'snapshotHash':_0x774316[_0x34adeb(0x1f6)],'warnings':_0x5ccfab?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x5ccc56){const _0x1a9b6a=a131_0xcfc2e0;if(_0x5ccc56['type']!==_0x1a9b6a(0x1de)&&_0x5ccc56[_0x1a9b6a(0x20e)]!==_0x1a9b6a(0x1e8))throw menuError(_0x1a9b6a(0x20d),'Menu\x20'+_0x5ccc56['id']+'\x20is\x20type\x20\x22'+(_0x5ccc56['type']||_0x1a9b6a(0x1fe))+_0x1a9b6a(0x1f8),'Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x5ccc56[_0x1a9b6a(0x1eb)]!==0x0)throw menuError(_0x1a9b6a(0x1f5),_0x1a9b6a(0x1e2)+_0x5ccc56['id']+_0x1a9b6a(0x1f9)+_0x5ccc56[_0x1a9b6a(0x1eb)]+_0x1a9b6a(0x204),_0x1a9b6a(0x1f1));if(!_0x5ccc56[_0x1a9b6a(0x20b)][_0x1a9b6a(0x1e6)]())throw menuError('menu_external_link_path_missing',_0x1a9b6a(0x1e2)+_0x5ccc56['id']+_0x1a9b6a(0x1da),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x4631b8,_0x387e00,_0xf6d307){const _0x2ff0d2=a131_0xcfc2e0;assertExternalLinkLeaf(_0x387e00);const _0x194a98=[['id',_0x387e00['id'],_0x4631b8['id']],['label',_0x387e00[_0x2ff0d2(0x1e4)],_0x4631b8[_0x2ff0d2(0x1e4)]],[_0x2ff0d2(0x20e),_0x387e00[_0x2ff0d2(0x20e)],_0x4631b8[_0x2ff0d2(0x20e)]],[_0x2ff0d2(0x20b),_0x387e00[_0x2ff0d2(0x20b)],_0x4631b8[_0x2ff0d2(0x20b)]],[_0x2ff0d2(0x1f0),_0x387e00[_0x2ff0d2(0x1f0)],_0x4631b8[_0x2ff0d2(0x1f0)]],[_0x2ff0d2(0x1d7),_0x387e00['sort'],_0x4631b8[_0x2ff0d2(0x1d7)]],[_0x2ff0d2(0x1e3),_0x387e00[_0x2ff0d2(0x1e3)],_0x4631b8[_0x2ff0d2(0x1e3)]]];for(const [_0x4e9ac7,_0x5b7d92,_0x4a4a91]of _0x194a98){assertVerified(_0x5b7d92===_0x4a4a91,_0x2ff0d2(0x1e2)+_0x4631b8['id']+'\x20'+_0x4e9ac7+_0x2ff0d2(0x219));}assertVerified(_0x387e00[_0x2ff0d2(0x20a)]===_0xf6d307,'Menu\x20'+_0x4631b8['id']+_0x2ff0d2(0x1df));}function updateSuccess(_0x51bec1,_0x26f1d0,_0x2f9864,_0xdbe128,_0x30bf8d){const _0x2c388d=a131_0xcfc2e0,_0x442636=_0x2f9864['id'],_0x5f183e=mutationResult({..._0x51bec1,'after':_0x2f9864,'dryRun':![],'succeeded':[{'id':_0x442636,'updated':!_0xdbe128,'skipped':_0xdbe128,'recovered':_0x30bf8d}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x26f1d0[_0x2c388d(0x1f6)],'targetId':_0x442636,'matchesRequestedState':!![],'recovered':_0x30bf8d}});return{'ok':!![],'message':_0x30bf8d?_0x2c388d(0x1ef)+_0x442636+'.':_0xdbe128?_0x2c388d(0x1e2)+_0x442636+_0x2c388d(0x1d9):_0x2c388d(0x1db)+_0x442636+'.','data':{..._0x5f183e,'recovered':_0x30bf8d}};}async function recoverAfterResponseLoss(_0x4e6553,_0x407540){const _0x487529=a131_0xcfc2e0,{plan:_0x125d3e,before:_0x57ced9,body:_0x1a166d}=_0x407540;let _0x1f3961;try{_0x1f3961=await fetchMenuSnapshot(_0x4e6553[_0x487529(0x215)],_0x4e6553[_0x487529(0x1ea)]);}catch{throw recoveryRequired(_0x125d3e,_0x4e6553[_0x487529(0x215)],{'id':_0x1a166d['id'],'readbackFailed':!![]});}const _0x3d7300=_0x1f3961[_0x487529(0x21a)]['get'](_0x1a166d['id']);if(!_0x3d7300||_0x3d7300[_0x487529(0x20a)]!==_0x1a166d[_0x487529(0x20a)])throw recoveryRequired(_0x125d3e,_0x4e6553[_0x487529(0x215)],{'id':_0x1a166d['id'],'requestedUrlObserved':![],'after':_0x3d7300??null});try{verifyUpdatedFact(_0x57ced9,_0x3d7300,_0x1a166d[_0x487529(0x20a)]);}catch(_0xcf4033){const _0x563a9d=asVerificationError(_0xcf4033,_0x487529(0x1ff)+_0x1a166d['id']+'\x20could\x20not\x20be\x20verified\x20safely');throw menuFailure(_0x563a9d,_0x125d3e,{'stage':'update-recovery','succeeded':[{'id':_0x1a166d['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1a166d['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x3d7300,'warnings':[_0x487529(0x1ec)],'verification':{'status':'failed','targetId':_0x1a166d['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x4e6553[_0x487529(0x215)])}});}return updateSuccess(_0x125d3e,_0x1f3961,_0x3d7300,![],!![]);}function recoveryRequired(_0x14badd,_0x555389,_0x1bd160){const _0x174635=a131_0xcfc2e0,_0x5b7fac=menuError(_0x174635(0x1d8),_0x174635(0x210),_0x174635(0x218)+buildLookupCommand(_0x555389)+_0x174635(0x1ee));return menuFailure(_0x5b7fac,_0x14badd,{'stage':_0x174635(0x201),'failed':{'id':_0x1bd160['id'],..._0x1bd160['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x1bd160['requestedUrlObserved']},..._0x1bd160['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x1bd160[_0x174635(0x21c)],'warnings':[_0x174635(0x216)],'verification':{'status':_0x174635(0x1fa),'targetId':_0x1bd160['id'],..._0x1bd160['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x1bd160['requestedUrlObserved']},..._0x1bd160['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x555389)}});}function buildLookupCommand(_0x5bb932){const _0x133060=a131_0xcfc2e0,_0x298d4c='\x27'+_0x5bb932[_0x133060(0x1d0)](/'/g,_0x133060(0x1d5))+'\x27';return _0x133060(0x1d1)+_0x298d4c+'\x20--format\x20compress';}
@@ -1 +1 @@
1
- const a119_0x2020c9=a119_0x8439;(function(_0xdae1a0,_0x26c873){const _0xd70990=a119_0x8439,_0x8e603b=_0xdae1a0();while(!![]){try{const _0x91feb=-parseInt(_0xd70990(0x209))/0x1*(-parseInt(_0xd70990(0x218))/0x2)+-parseInt(_0xd70990(0x236))/0x3*(parseInt(_0xd70990(0x207))/0x4)+parseInt(_0xd70990(0x1f2))/0x5*(-parseInt(_0xd70990(0x233))/0x6)+-parseInt(_0xd70990(0x20d))/0x7+-parseInt(_0xd70990(0x1f8))/0x8+-parseInt(_0xd70990(0x228))/0x9*(-parseInt(_0xd70990(0x1f4))/0xa)+-parseInt(_0xd70990(0x235))/0xb*(-parseInt(_0xd70990(0x214))/0xc);if(_0x91feb===_0x26c873)break;else _0x8e603b['push'](_0x8e603b['shift']());}catch(_0x9f58b3){_0x8e603b['push'](_0x8e603b['shift']());}}}(a119_0x1241,0xdf255));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a119_0x8439(_0x4628c3,_0x190730){_0x4628c3=_0x4628c3-0x1f0;const _0x12417f=a119_0x1241();let _0x84392a=_0x12417f[_0x4628c3];return _0x84392a;}function a119_0x1241(){const _0x369e42=['cookie','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','72qFTVfW','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','create\x20folder','depth','Created\x20menu\x20folder\x20','\x20is\x20not\x20visible.','after','menu','/smartapi/menu/create','get','\x20is\x20missing\x20from\x20menu\x20list.','length','menu\x20list','Created\x20menu\x20','\x20has\x20an\x20unexpected\x20label.','9xlTdYo','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','byId','trim','root','write','str','type','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','label','sort','56136VlbaiT','verification','11539AMeByP','12JUXYMo','create-folder','Created\x20folder\x20','folder','menu_create_response_invalid','stringify','create-response-validation','POST','parentId','215ugwudK','\x20is\x20not\x20empty.','10917460TGJZAM','appCode',';\x20verify\x20it\x20before\x20retrying.','isSafeInteger','9739392sGHwmD','<platform-generated>','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20has\x20unexpected\x20parent\x20','\x20has\x20resources.','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','Would\x20create\x20empty\x20folder\x20\x22','Folder\x20','path','flagMissing','group-create','verify\x20folder\x20creation','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','pageId','835444koBLqr','\x22\x20with\x20a\x20platform-generated\x20path.','12443FNMcLb','\x20unexpectedly\x20owns\x20a\x20page.','string','failed','543165TFnMeD','rabetbase\x20menu\x20list\x20--format\x20json','resources','parent-id','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','Folder\x20label','\x20may\x20exist\x20online\x20at\x20path\x20','21816pjNWMG','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'];a119_0x1241=function(){return _0x369e42;};return a119_0x1241();}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':a119_0x2020c9(0x1f0),'path':a119_0x2020c9(0x221)}];export const menuGroupCreate={'service':a119_0x2020c9(0x220),'command':a119_0x2020c9(0x202),'description':a119_0x2020c9(0x204),'risk':a119_0x2020c9(0x22d),'structuredErrors':!![],'flags':[{'name':a119_0x2020c9(0x231),'type':a119_0x2020c9(0x20b),'required':!![],'description':a119_0x2020c9(0x212)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x15f146){validateCreateInput(_0x15f146);},async 'dryRun'(_0x561680){const _0x49113d=a119_0x2020c9,_0x4f3d2d=await buildCreatePlan(_0x561680,!![]),_0x6c87e7=_0x4f3d2d[_0x49113d(0x21f)];return menuDryRunResult(_0x4f3d2d,{'method':'POST','url':_0x49113d(0x221),'body':{'parentId':toApiParentId(_0x6c87e7[_0x49113d(0x1f1)]),'label':_0x6c87e7[_0x49113d(0x231)],'type':_0x49113d(0x239),'visible':!![],'sort':_0x6c87e7['sort'],'extend':{}},'description':_0x49113d(0x1fe)+String(_0x6c87e7[_0x49113d(0x231)])+_0x49113d(0x208)});},async 'execute'(_0x4ba6a0){const _0x54b6a9=a119_0x2020c9;validateCreateInput(_0x4ba6a0);const _0x19e55b=await buildCreatePlan(_0x4ba6a0,![]),_0x1a2dff=_0x19e55b[_0x54b6a9(0x21f)];await recheckMutationSnapshot(_0x4ba6a0,_0x19e55b,_0x54b6a9(0x21b));let _0x49ec01;try{_0x49ec01=await createMenuEntity(_0x4ba6a0[_0x54b6a9(0x1f5)],_0x4ba6a0[_0x54b6a9(0x216)],{'parentId':toApiParentId(_0x1a2dff[_0x54b6a9(0x1f1)]),'label':String(_0x1a2dff[_0x54b6a9(0x231)]),'type':_0x54b6a9(0x239),'visible':!![],'sort':Number(_0x1a2dff[_0x54b6a9(0x232)]),'extend':{}});}catch(_0x8219b2){const _0x5f04d4=mapMenuApiError(_0x8219b2,'create\x20folder');throw menuFailure(_0x5f04d4,_0x19e55b,{'stage':'create','failed':{}});}const _0x1f3ef9=Number(_0x49ec01['id']);if(!Number[_0x54b6a9(0x1f7)](_0x1f3ef9)||_0x1f3ef9<=0x0){const _0x54c291=menuError(_0x54b6a9(0x23a),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0x54b6a9(0x229));throw menuFailure(_0x54c291,_0x19e55b,{'stage':_0x54b6a9(0x23c),'failed':{'createdId':_0x49ec01['id']??null},'warnings':[_0x54b6a9(0x219)],'verification':{'status':_0x54b6a9(0x20c),'lookupCommand':_0x54b6a9(0x20e)}});}const _0x33d552=typeof _0x49ec01[_0x54b6a9(0x200)]===_0x54b6a9(0x20b)?_0x49ec01[_0x54b6a9(0x200)]:'';if(!_0x33d552[_0x54b6a9(0x22b)]()){const _0x415170=menuError('menu_create_response_invalid','Menu\x20create\x20response\x20for\x20folder\x20'+_0x1f3ef9+_0x54b6a9(0x205),_0x54b6a9(0x217));throw menuFailure(_0x415170,_0x19e55b,{'stage':_0x54b6a9(0x23c),'succeeded':[{'id':_0x1f3ef9,'created':!![]}],'failed':{'id':_0x1f3ef9,'generatedPathConfirmed':![]},'warnings':['Folder\x20'+_0x1f3ef9+_0x54b6a9(0x215)],'after':{..._0x1a2dff,'id':_0x1f3ef9,'path':_0x33d552},'verification':{'status':_0x54b6a9(0x20c),'lookupCommand':_0x54b6a9(0x20e),'targetId':_0x1f3ef9}});}let _0x1eaebf;try{_0x1eaebf=await fetchMenuSnapshot(_0x4ba6a0[_0x54b6a9(0x1f5)],_0x4ba6a0[_0x54b6a9(0x216)]);}catch(_0x210e59){const _0x56c6ee=describeMenuErrorCause(_0x210e59,_0x54b6a9(0x203),_0x1f3ef9),_0x12918f=asVerificationError(_0x210e59,'Folder\x20'+_0x1f3ef9+_0x54b6a9(0x211));throw menuFailure(_0x12918f,_0x19e55b,{'stage':'verification','succeeded':[{'id':_0x1f3ef9,'created':!![],'path':_0x33d552}],'failed':{'id':_0x1f3ef9,'finalFactsConfirmed':![],..._0x56c6ee},'warnings':[_0x54b6a9(0x1ff)+_0x1f3ef9+_0x54b6a9(0x213)+JSON[_0x54b6a9(0x23b)](_0x33d552)+_0x54b6a9(0x1f6)],'after':{..._0x1a2dff,'id':_0x1f3ef9,'path':_0x33d552},'verification':{'status':_0x54b6a9(0x20c),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x1f3ef9}});}const _0x1090c3=_0x1eaebf[_0x54b6a9(0x22a)][_0x54b6a9(0x222)](_0x1f3ef9);let _0x21fd6f;try{assertVerified(Boolean(_0x1090c3),_0x54b6a9(0x238)+_0x1f3ef9+_0x54b6a9(0x223)),_0x21fd6f=_0x1090c3,assertVerified(_0x21fd6f[_0x54b6a9(0x22f)]===_0x54b6a9(0x239),_0x54b6a9(0x226)+_0x1f3ef9+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x21fd6f[_0x54b6a9(0x231)]===_0x1a2dff[_0x54b6a9(0x231)],_0x54b6a9(0x238)+_0x1f3ef9+_0x54b6a9(0x227)),assertVerified(_0x21fd6f['path']===_0x33d552&&Boolean(_0x21fd6f[_0x54b6a9(0x200)][_0x54b6a9(0x22b)]()),'Created\x20folder\x20'+_0x1f3ef9+_0x54b6a9(0x1fa)),assertVerified(_0x21fd6f['visible']===!![],_0x54b6a9(0x238)+_0x1f3ef9+_0x54b6a9(0x21e)),assertVerified(_0x21fd6f[_0x54b6a9(0x20f)][_0x54b6a9(0x224)]===0x0,'Created\x20folder\x20'+_0x1f3ef9+_0x54b6a9(0x1fc)),assertVerified(_0x21fd6f['childrenCount']===0x0,_0x54b6a9(0x238)+_0x1f3ef9+_0x54b6a9(0x1f3)),assertVerified(_0x21fd6f[_0x54b6a9(0x232)]===_0x1a2dff[_0x54b6a9(0x232)],_0x54b6a9(0x238)+_0x1f3ef9+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x21fd6f['parentId']===_0x1a2dff[_0x54b6a9(0x1f1)],'Created\x20folder\x20'+_0x1f3ef9+_0x54b6a9(0x1fb)+(_0x21fd6f['parentId']??_0x54b6a9(0x22c))+'.'),assertVerified(_0x21fd6f[_0x54b6a9(0x206)]==null,_0x54b6a9(0x238)+_0x1f3ef9+_0x54b6a9(0x20a));const _0x3f1a5f=_0x21fd6f[_0x54b6a9(0x1f1)]==null?undefined:requireFolder(_0x1eaebf,_0x21fd6f[_0x54b6a9(0x1f1)]);assertVerified(_0x21fd6f[_0x54b6a9(0x21c)]===(_0x3f1a5f?_0x3f1a5f[_0x54b6a9(0x21c)]+0x1:0x0),_0x54b6a9(0x238)+_0x1f3ef9+_0x54b6a9(0x1fd));}catch(_0x5930da){const _0x109276=describeMenuErrorCause(_0x5930da,'verify\x20folder\x20creation',_0x1f3ef9),_0x892798=asVerificationError(_0x5930da,'Folder\x20'+_0x1f3ef9+_0x54b6a9(0x21a));throw menuFailure(_0x892798,_0x19e55b,{'stage':_0x54b6a9(0x234),'succeeded':[{'id':_0x1f3ef9,'created':!![],'path':_0x33d552}],'failed':{'id':_0x1f3ef9,'finalFactsConfirmed':![],..._0x109276},'warnings':[_0x54b6a9(0x1ff)+_0x1f3ef9+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x1090c3??{..._0x1a2dff,'id':_0x1f3ef9,'path':_0x33d552},'verification':{'status':_0x54b6a9(0x20c),'lookupCommand':_0x54b6a9(0x20e),'targetId':_0x1f3ef9}});}const _0x53885b=mutationResult({..._0x19e55b,'after':_0x21fd6f,'dryRun':![],'succeeded':[{'id':_0x1f3ef9,'type':_0x54b6a9(0x239),'path':_0x33d552}],'verification':{'checkedBy':_0x54b6a9(0x225),'snapshotHash':_0x1eaebf['hash'],'folder':!![],'path':_0x33d552,'emptyResources':!![]}});return{'ok':!![],'data':_0x53885b,'message':_0x54b6a9(0x21d)+_0x1f3ef9+'.'};}};function validateCreateInput(_0x352e81){const _0x537a57=a119_0x2020c9,_0x33af49=_0x352e81[_0x537a57(0x22e)](_0x537a57(0x231))[_0x537a57(0x22b)]();if(!_0x33af49)throw CliErrors[_0x537a57(0x201)](_0x537a57(0x231));parseParentId(_0x352e81,_0x537a57(0x210)),validateSort(_0x352e81);}async function buildCreatePlan(_0x278c8c,_0x116cca){const _0x27c56d=a119_0x2020c9,_0x133333=await fetchMutationSnapshot(_0x278c8c,'create\x20folder'),_0x3ac6f0=parseParentId(_0x278c8c,_0x27c56d(0x210))??null;if(_0x3ac6f0!=null)requireFolder(_0x133333,_0x3ac6f0);const _0x36d0a0=validateSort(_0x278c8c),_0x3d5972=_0x36d0a0??nextSiblingSort(_0x133333,_0x3ac6f0,_0x27c56d(0x239)),_0x59e8e2=_0x278c8c[_0x27c56d(0x22e)](_0x27c56d(0x231))['trim']();return mutationResult({'operation':'group-create','selector':{'label':_0x59e8e2,'parentId':_0x3ac6f0},'before':null,'after':{'id':null,'parentId':_0x3ac6f0,'label':_0x59e8e2,'path':_0x27c56d(0x1f9),'type':'folder','visible':!![],'sort':_0x3d5972,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x116cca,'backend':[...BACKEND],'plannedActions':[{'stage':_0x27c56d(0x237),'method':_0x27c56d(0x1f0),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x3ac6f0),'label':_0x59e8e2,'type':_0x27c56d(0x239),'visible':!![],'sort':_0x3d5972,'extend':{}}}],'snapshotHash':_0x133333['hash'],'warnings':[_0x27c56d(0x230)]});}
1
+ const a132_0x62770a=a132_0x514e;(function(_0x522c0e,_0x1c5dc8){const _0x4c0406=a132_0x514e,_0x25acb4=_0x522c0e();while(!![]){try{const _0x3b44bb=-parseInt(_0x4c0406(0x170))/0x1+-parseInt(_0x4c0406(0x156))/0x2+-parseInt(_0x4c0406(0x148))/0x3+-parseInt(_0x4c0406(0x14b))/0x4*(-parseInt(_0x4c0406(0x15b))/0x5)+parseInt(_0x4c0406(0x16c))/0x6*(-parseInt(_0x4c0406(0x17d))/0x7)+-parseInt(_0x4c0406(0x161))/0x8+parseInt(_0x4c0406(0x14d))/0x9;if(_0x3b44bb===_0x1c5dc8)break;else _0x25acb4['push'](_0x25acb4['shift']());}catch(_0x2a2459){_0x25acb4['push'](_0x25acb4['shift']());}}}(a132_0xd429,0x8e30b));function a132_0x514e(_0x3dcf63,_0x2cd80f){_0x3dcf63=_0x3dcf63-0x136;const _0xd429cf=a132_0xd429();let _0x514e79=_0xd429cf[_0x3dcf63];return _0x514e79;}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':a132_0x62770a(0x17b),'path':'/smartapi/menu/create'}];export const menuGroupCreate={'service':a132_0x62770a(0x153),'command':a132_0x62770a(0x17f),'description':a132_0x62770a(0x140),'risk':'write','structuredErrors':!![],'flags':[{'name':a132_0x62770a(0x16a),'type':a132_0x62770a(0x15e),'required':!![],'description':a132_0x62770a(0x167)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4314ad){validateCreateInput(_0x4314ad);},async 'dryRun'(_0x5acad1){const _0x167362=a132_0x62770a,_0x480323=await buildCreatePlan(_0x5acad1,!![]),_0x1de6b3=_0x480323[_0x167362(0x16d)];return menuDryRunResult(_0x480323,{'method':_0x167362(0x17b),'url':_0x167362(0x152),'body':{'parentId':toApiParentId(_0x1de6b3[_0x167362(0x176)]),'label':_0x1de6b3[_0x167362(0x16a)],'type':'folder','visible':!![],'sort':_0x1de6b3['sort'],'extend':{}},'description':_0x167362(0x175)+String(_0x1de6b3[_0x167362(0x16a)])+_0x167362(0x13c)});},async 'execute'(_0x2a708e){const _0x32b362=a132_0x62770a;validateCreateInput(_0x2a708e);const _0x401e53=await buildCreatePlan(_0x2a708e,![]),_0x16c2c0=_0x401e53[_0x32b362(0x16d)];await recheckMutationSnapshot(_0x2a708e,_0x401e53,_0x32b362(0x162));let _0x144c72;try{_0x144c72=await createMenuEntity(_0x2a708e[_0x32b362(0x16b)],_0x2a708e[_0x32b362(0x151)],{'parentId':toApiParentId(_0x16c2c0[_0x32b362(0x176)]),'label':String(_0x16c2c0[_0x32b362(0x16a)]),'type':'folder','visible':!![],'sort':Number(_0x16c2c0[_0x32b362(0x171)]),'extend':{}});}catch(_0x5535d0){const _0x281a99=mapMenuApiError(_0x5535d0,_0x32b362(0x162));throw menuFailure(_0x281a99,_0x401e53,{'stage':_0x32b362(0x17a),'failed':{}});}const _0x5b6de8=Number(_0x144c72['id']);if(!Number[_0x32b362(0x150)](_0x5b6de8)||_0x5b6de8<=0x0){const _0x1a2ab6=menuError(_0x32b362(0x177),_0x32b362(0x141),_0x32b362(0x173));throw menuFailure(_0x1a2ab6,_0x401e53,{'stage':'create-response-validation','failed':{'createdId':_0x144c72['id']??null},'warnings':[_0x32b362(0x144)],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0x1bd3df=typeof _0x144c72[_0x32b362(0x13a)]===_0x32b362(0x15e)?_0x144c72[_0x32b362(0x13a)]:'';if(!_0x1bd3df[_0x32b362(0x13b)]()){const _0x336bf7=menuError('menu_create_response_invalid',_0x32b362(0x155)+_0x5b6de8+_0x32b362(0x158),_0x32b362(0x164));throw menuFailure(_0x336bf7,_0x401e53,{'stage':_0x32b362(0x15f),'succeeded':[{'id':_0x5b6de8,'created':!![]}],'failed':{'id':_0x5b6de8,'generatedPathConfirmed':![]},'warnings':[_0x32b362(0x15d)+_0x5b6de8+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x16c2c0,'id':_0x5b6de8,'path':_0x1bd3df},'verification':{'status':_0x32b362(0x136),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x5b6de8}});}let _0x5147c2;try{_0x5147c2=await fetchMenuSnapshot(_0x2a708e[_0x32b362(0x16b)],_0x2a708e[_0x32b362(0x151)]);}catch(_0x45e9b4){const _0x4b503e=describeMenuErrorCause(_0x45e9b4,_0x32b362(0x149),_0x5b6de8),_0x4ff99d=asVerificationError(_0x45e9b4,'Folder\x20'+_0x5b6de8+_0x32b362(0x138));throw menuFailure(_0x4ff99d,_0x401e53,{'stage':_0x32b362(0x179),'succeeded':[{'id':_0x5b6de8,'created':!![],'path':_0x1bd3df}],'failed':{'id':_0x5b6de8,'finalFactsConfirmed':![],..._0x4b503e},'warnings':[_0x32b362(0x15d)+_0x5b6de8+'\x20may\x20exist\x20online\x20at\x20path\x20'+JSON[_0x32b362(0x14e)](_0x1bd3df)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x16c2c0,'id':_0x5b6de8,'path':_0x1bd3df},'verification':{'status':_0x32b362(0x136),'lookupCommand':_0x32b362(0x15c),'targetId':_0x5b6de8}});}const _0x51f146=_0x5147c2[_0x32b362(0x17c)][_0x32b362(0x157)](_0x5b6de8);let _0xbfdb8a;try{assertVerified(Boolean(_0x51f146),'Created\x20folder\x20'+_0x5b6de8+_0x32b362(0x178)),_0xbfdb8a=_0x51f146,assertVerified(_0xbfdb8a[_0x32b362(0x143)]===_0x32b362(0x16f),'Created\x20menu\x20'+_0x5b6de8+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0xbfdb8a[_0x32b362(0x16a)]===_0x16c2c0[_0x32b362(0x16a)],_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x169)),assertVerified(_0xbfdb8a[_0x32b362(0x13a)]===_0x1bd3df&&Boolean(_0xbfdb8a['path']['trim']()),_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x147)),assertVerified(_0xbfdb8a['visible']===!![],_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x174)),assertVerified(_0xbfdb8a[_0x32b362(0x137)][_0x32b362(0x13f)]===0x0,_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x13d)),assertVerified(_0xbfdb8a[_0x32b362(0x166)]===0x0,_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x14f)),assertVerified(_0xbfdb8a['sort']===_0x16c2c0[_0x32b362(0x171)],_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x13e)),assertVerified(_0xbfdb8a[_0x32b362(0x176)]===_0x16c2c0['parentId'],_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x172)+(_0xbfdb8a['parentId']??_0x32b362(0x145))+'.'),assertVerified(_0xbfdb8a[_0x32b362(0x163)]==null,_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x160));const _0x24bdeb=_0xbfdb8a[_0x32b362(0x176)]==null?undefined:requireFolder(_0x5147c2,_0xbfdb8a[_0x32b362(0x176)]);assertVerified(_0xbfdb8a['depth']===(_0x24bdeb?_0x24bdeb[_0x32b362(0x154)]+0x1:0x0),_0x32b362(0x14c)+_0x5b6de8+_0x32b362(0x159));}catch(_0x2a6bb9){const _0x182333=describeMenuErrorCause(_0x2a6bb9,_0x32b362(0x149),_0x5b6de8),_0x5b4fae=asVerificationError(_0x2a6bb9,_0x32b362(0x15d)+_0x5b6de8+_0x32b362(0x15a));throw menuFailure(_0x5b4fae,_0x401e53,{'stage':_0x32b362(0x179),'succeeded':[{'id':_0x5b6de8,'created':!![],'path':_0x1bd3df}],'failed':{'id':_0x5b6de8,'finalFactsConfirmed':![],..._0x182333},'warnings':[_0x32b362(0x15d)+_0x5b6de8+_0x32b362(0x168)],'after':_0x51f146??{..._0x16c2c0,'id':_0x5b6de8,'path':_0x1bd3df},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x5b6de8}});}const _0x554f74=mutationResult({..._0x401e53,'after':_0xbfdb8a,'dryRun':![],'succeeded':[{'id':_0x5b6de8,'type':_0x32b362(0x16f),'path':_0x1bd3df}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x5147c2['hash'],'folder':!![],'path':_0x1bd3df,'emptyResources':!![]}});return{'ok':!![],'data':_0x554f74,'message':_0x32b362(0x146)+_0x5b6de8+'.'};}};function validateCreateInput(_0x475175){const _0x3c9fc5=a132_0x62770a,_0x1a2375=_0x475175['str']('label')[_0x3c9fc5(0x13b)]();if(!_0x1a2375)throw CliErrors[_0x3c9fc5(0x14a)](_0x3c9fc5(0x16a));parseParentId(_0x475175,_0x3c9fc5(0x139)),validateSort(_0x475175);}function a132_0xd429(){const _0x2ddbd4=['\x20unexpectedly\x20owns\x20a\x20page.','3274960NeBxWh','create\x20folder','pageId','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','create-folder','childrenCount','Folder\x20label','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','\x20has\x20an\x20unexpected\x20label.','label','appCode','42PeZdLj','after','<platform-generated>','folder','485439mzFIrH','sort','\x20has\x20unexpected\x20parent\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20is\x20not\x20visible.','Would\x20create\x20empty\x20folder\x20\x22','parentId','menu_create_response_invalid','\x20is\x20missing\x20from\x20menu\x20list.','verification','create','POST','byId','645442YTZmus','hash','group-create','failed','resources','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','parent-id','path','trim','\x22\x20with\x20a\x20platform-generated\x20path.','\x20has\x20resources.','\x20has\x20an\x20unexpected\x20sort.','length','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','str','type','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','root','Created\x20menu\x20folder\x20','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','2276502bLXTWj','verify\x20folder\x20creation','flagMissing','4QZIKSg','Created\x20folder\x20','32045355ydjZEk','stringify','\x20is\x20not\x20empty.','isSafeInteger','cookie','/smartapi/menu/create','menu','depth','Menu\x20create\x20response\x20for\x20folder\x20','2277160GZMODZ','get','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','2297405tlwrfm','rabetbase\x20menu\x20list\x20--format\x20json','Folder\x20','string','create-response-validation'];a132_0xd429=function(){return _0x2ddbd4;};return a132_0xd429();}async function buildCreatePlan(_0x1b3496,_0x27bd49){const _0x50de65=a132_0x62770a,_0x23873a=await fetchMutationSnapshot(_0x1b3496,_0x50de65(0x162)),_0x3507ab=parseParentId(_0x1b3496,_0x50de65(0x139))??null;if(_0x3507ab!=null)requireFolder(_0x23873a,_0x3507ab);const _0x5691f5=validateSort(_0x1b3496),_0x1b01a5=_0x5691f5??nextSiblingSort(_0x23873a,_0x3507ab,_0x50de65(0x16f)),_0x24874f=_0x1b3496[_0x50de65(0x142)](_0x50de65(0x16a))[_0x50de65(0x13b)]();return mutationResult({'operation':'group-create','selector':{'label':_0x24874f,'parentId':_0x3507ab},'before':null,'after':{'id':null,'parentId':_0x3507ab,'label':_0x24874f,'path':_0x50de65(0x16e),'type':_0x50de65(0x16f),'visible':!![],'sort':_0x1b01a5,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x27bd49,'backend':[...BACKEND],'plannedActions':[{'stage':_0x50de65(0x165),'method':_0x50de65(0x17b),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x3507ab),'label':_0x24874f,'type':_0x50de65(0x16f),'visible':!![],'sort':_0x1b01a5,'extend':{}}}],'snapshotHash':_0x23873a[_0x50de65(0x17e)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
@@ -1 +1 @@
1
- function a120_0xc184(){const _0x551f52=['Updated\x20folder\x20','folder','parentId','201306qsVWYZ','No\x20online\x20fields\x20would\x20change.','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','18825444yprLwF','444326mOsTSi','21geDSyG','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','verify\x20folder\x20update','trim','207076cafqCF','2384GtQzFV','str','sort','Update\x20request\x20for\x20folder\x20','\x20already\x20matches\x20the\x20requested\x20state.','Folder\x20','\x20is\x20no\x20longer\x20type\x20folder.','230637GQvmZP','Menu\x20','\x20sort\x20update\x20did\x20not\x20take\x20effect.','validation','48VjVzCU','string','\x22,\x20not\x20folder.','POST','New\x20folder\x20label','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','type','selector','50APsTyo','verification','rabetbase\x20menu\x20list\x20--format\x20json','appCode','cookie','\x20is\x20type\x20\x22','write','hash','\x20label\x20update\x20did\x20not\x20take\x20effect.','Would\x20update\x20folder\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','115lkMlJr','update\x20folder','31761LBmkmJ','menu_not_folder','unknown','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','menu\x20list','failed','label','1248734EtNgLg','/smartapi/menu/update','update'];a120_0xc184=function(){return _0x551f52;};return a120_0xc184();}const a120_0xdd04ce=a120_0x517c;function a120_0x517c(_0x254b3f,_0x34afe4){_0x254b3f=_0x254b3f-0x141;const _0xc18433=a120_0xc184();let _0x517cae=_0xc18433[_0x254b3f];return _0x517cae;}(function(_0x53a927,_0x35a2fd){const _0x4584df=a120_0x517c,_0x5d664f=_0x53a927();while(!![]){try{const _0xe5c5b6=-parseInt(_0x4584df(0x14c))/0x1+parseInt(_0x4584df(0x157))/0x2*(-parseInt(_0x4584df(0x158))/0x3)+-parseInt(_0x4584df(0x15c))/0x4*(-parseInt(_0x4584df(0x143))/0x5)+-parseInt(_0x4584df(0x168))/0x6*(parseInt(_0x4584df(0x152))/0x7)+-parseInt(_0x4584df(0x15d))/0x8*(-parseInt(_0x4584df(0x145))/0x9)+parseInt(_0x4584df(0x170))/0xa*(parseInt(_0x4584df(0x164))/0xb)+parseInt(_0x4584df(0x156))/0xc;if(_0xe5c5b6===_0x35a2fd)break;else _0x5d664f['push'](_0x5d664f['shift']());}catch(_0x23967e){_0x5d664f['push'](_0x5d664f['shift']());}}}(a120_0xc184,0xd755c));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':a120_0xdd04ce(0x16b),'path':'/smartapi/menu/update'}];export const menuGroupUpdate={'service':'menu','command':'group-update','description':a120_0xdd04ce(0x159),'risk':a120_0xdd04ce(0x176),'structuredErrors':!![],'rejectedFlags':[{'name':'parent-id','message':a120_0xdd04ce(0x148),'hint':a120_0xdd04ce(0x154)}],'flags':[MENU_ID_FLAG,{'name':a120_0xdd04ce(0x14b),'type':a120_0xdd04ce(0x169),'description':a120_0xdd04ce(0x16c)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3ad2b4){validateUpdateInput(_0x3ad2b4);},async 'dryRun'(_0x2a8fa8){const _0x4ee706=a120_0xdd04ce;validateUpdateInput(_0x2a8fa8);const {plan:_0x456752,patch:_0x340efd}=await buildUpdatePlan(_0x2a8fa8,!![]);return menuDryRunResult(_0x456752,{'method':'POST','url':_0x4ee706(0x14d),'body':_0x340efd,'description':_0x4ee706(0x141)+_0x456752[_0x4ee706(0x16f)]['id']+'.'});},async 'execute'(_0x328ec7){const _0xd672a2=a120_0xdd04ce;validateUpdateInput(_0x328ec7);const {plan:_0x5db76b,patch:_0x51866c,noChanges:_0x22ff84}=await buildUpdatePlan(_0x328ec7,![]),_0xdb9794=Number(_0x5db76b['selector']['id']),_0x78eb9=await recheckMutationSnapshot(_0x328ec7,_0x5db76b,_0xd672a2(0x144),_0xdb9794);if(!_0x22ff84)try{await updateMenuEntity(_0x328ec7[_0xd672a2(0x173)],_0x328ec7[_0xd672a2(0x174)],_0x51866c);}catch(_0xb5dcfc){const _0x422af7=mapMenuApiError(_0xb5dcfc,_0xd672a2(0x144),_0xdb9794);throw menuFailure(_0x422af7,_0x5db76b,{'stage':_0xd672a2(0x14e),'failed':{'id':_0xdb9794}});}let _0x3d79ee=_0x78eb9,_0x12bc5e;try{!_0x22ff84&&(_0x3d79ee=await fetchMenuSnapshot(_0x328ec7[_0xd672a2(0x173)],_0x328ec7[_0xd672a2(0x174)])),_0x12bc5e=requireMenu(_0x3d79ee,_0xdb9794),verifyPatch(_0x12bc5e,_0x51866c),_0x12bc5e[_0xd672a2(0x151)]!=null&&requireFolder(_0x3d79ee,_0x12bc5e[_0xd672a2(0x151)]);}catch(_0x51b270){const _0x1d6336=describeMenuErrorCause(_0x51b270,_0xd672a2(0x15a),_0xdb9794),_0x28e56d=asVerificationError(_0x51b270,_0xd672a2(0x160)+_0xdb9794+_0xd672a2(0x155));throw menuFailure(_0x28e56d,_0x5db76b,{'stage':_0xd672a2(0x171),'succeeded':[{'id':_0xdb9794,'updateRequested':!_0x22ff84,'skipped':_0x22ff84}],'failed':{'id':_0xdb9794,'requestedStateConfirmed':![],..._0x1d6336},'warnings':[_0xd672a2(0x16d)],'verification':{'status':_0xd672a2(0x14a),'lookupCommand':_0xd672a2(0x172),'targetId':_0xdb9794}});}const _0x37708a=mutationResult({..._0x5db76b,'after':_0x12bc5e,'dryRun':![],'succeeded':[{'id':_0xdb9794,'updated':!_0x22ff84,'skipped':_0x22ff84}],'verification':{'checkedBy':_0xd672a2(0x149),'snapshotHash':_0x3d79ee[_0xd672a2(0x177)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x37708a,'message':_0x22ff84?'Folder\x20'+_0xdb9794+_0xd672a2(0x161):_0xd672a2(0x14f)+_0xdb9794+'.'};}};function validateUpdateInput(_0x2b960b){const _0x366f66=a120_0xdd04ce;validateExactId(_0x2b960b);if(hasFlag(_0x2b960b,'parent-id'))throw CliErrors[_0x366f66(0x167)](_0x366f66(0x148),_0x366f66(0x154));if(!hasFlag(_0x2b960b,_0x366f66(0x14b))&&!hasFlag(_0x2b960b,'sort'))throw CliErrors[_0x366f66(0x167)]('At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.');if(hasFlag(_0x2b960b,_0x366f66(0x14b))&&!_0x2b960b['str'](_0x366f66(0x14b))[_0x366f66(0x15b)]())throw CliErrors[_0x366f66(0x167)]('--label\x20cannot\x20be\x20empty.');validateSort(_0x2b960b);}async function buildUpdatePlan(_0x47914d,_0x4535a7){const _0x32c0a2=a120_0xdd04ce,_0x5392a8=validateExactId(_0x47914d),_0x1ed25e=await fetchMutationSnapshot(_0x47914d,_0x32c0a2(0x144),_0x5392a8),_0x2f0818=requireMenu(_0x1ed25e,_0x5392a8);if(_0x2f0818[_0x32c0a2(0x16e)]!=='folder')throw menuError(_0x32c0a2(0x146),_0x32c0a2(0x165)+_0x5392a8+_0x32c0a2(0x175)+(_0x2f0818['type']||_0x32c0a2(0x147))+_0x32c0a2(0x16a),_0x32c0a2(0x142));assertExpectedState(_0x47914d,_0x2f0818);const _0x3ddcdf={'id':_0x5392a8},_0x558605={..._0x2f0818};if(hasFlag(_0x47914d,_0x32c0a2(0x14b))){const _0x486c0d=_0x47914d[_0x32c0a2(0x15e)](_0x32c0a2(0x14b))[_0x32c0a2(0x15b)]();_0x3ddcdf[_0x32c0a2(0x14b)]=_0x486c0d,_0x558605[_0x32c0a2(0x14b)]=_0x486c0d;}if(hasFlag(_0x47914d,_0x32c0a2(0x15f))){const _0x1ee647=validateSort(_0x47914d);_0x3ddcdf[_0x32c0a2(0x15f)]=_0x1ee647,_0x558605[_0x32c0a2(0x15f)]=_0x1ee647;}const _0x2d5a38=sameRequestedState(_0x2f0818,_0x558605),_0x183c5d=_0x2d5a38?[_0x32c0a2(0x153)]:[];return{'patch':_0x3ddcdf,'noChanges':_0x2d5a38,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x5392a8},'before':_0x2f0818,'after':_0x558605,'dryRun':_0x4535a7,'backend':[...BACKEND],'snapshotHash':_0x1ed25e['hash'],'warnings':_0x183c5d})};}function sameRequestedState(_0xb00e51,_0x1ead0f){const _0x36060d=a120_0xdd04ce;return _0xb00e51[_0x36060d(0x14b)]===_0x1ead0f[_0x36060d(0x14b)]&&_0xb00e51[_0x36060d(0x15f)]===_0x1ead0f[_0x36060d(0x15f)];}function verifyPatch(_0x24ba70,_0x19887d){const _0x4f5be4=a120_0xdd04ce;assertVerified(_0x24ba70['type']===_0x4f5be4(0x150),_0x4f5be4(0x165)+_0x24ba70['id']+_0x4f5be4(0x163)),_0x19887d[_0x4f5be4(0x14b)]!==undefined&&assertVerified(_0x24ba70[_0x4f5be4(0x14b)]===_0x19887d[_0x4f5be4(0x14b)],_0x4f5be4(0x162)+_0x24ba70['id']+_0x4f5be4(0x178)),_0x19887d[_0x4f5be4(0x15f)]!==undefined&&assertVerified(_0x24ba70['sort']===_0x19887d[_0x4f5be4(0x15f)],_0x4f5be4(0x162)+_0x24ba70['id']+_0x4f5be4(0x166));}
1
+ function a133_0x55f3(_0x3e8007,_0x518494){_0x3e8007=_0x3e8007-0xc4;const _0xf7a5=a133_0xf7a5();let _0x55f3fc=_0xf7a5[_0x3e8007];return _0x55f3fc;}const a133_0x7dfd11=a133_0x55f3;(function(_0x2bee0e,_0x2cd5c5){const _0x46c48b=a133_0x55f3,_0x26f351=_0x2bee0e();while(!![]){try{const _0x3e866c=parseInt(_0x46c48b(0xe3))/0x1*(-parseInt(_0x46c48b(0xf8))/0x2)+parseInt(_0x46c48b(0xd9))/0x3*(-parseInt(_0x46c48b(0xcc))/0x4)+parseInt(_0x46c48b(0xc9))/0x5*(-parseInt(_0x46c48b(0xee))/0x6)+-parseInt(_0x46c48b(0xf0))/0x7*(-parseInt(_0x46c48b(0xf6))/0x8)+parseInt(_0x46c48b(0xe8))/0x9+-parseInt(_0x46c48b(0xd2))/0xa+parseInt(_0x46c48b(0xd6))/0xb;if(_0x3e866c===_0x2cd5c5)break;else _0x26f351['push'](_0x26f351['shift']());}catch(_0x5bb455){_0x26f351['push'](_0x26f351['shift']());}}}(a133_0xf7a5,0xe41d0));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':a133_0x7dfd11(0xdb),'path':a133_0x7dfd11(0xe6)}];export const menuGroupUpdate={'service':'menu','command':a133_0x7dfd11(0xcf),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a133_0x7dfd11(0xec),'structuredErrors':!![],'rejectedFlags':[{'name':a133_0x7dfd11(0xd8),'message':a133_0x7dfd11(0xe5),'hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a133_0x7dfd11(0xc8),'type':a133_0x7dfd11(0xe2),'description':'New\x20folder\x20label'},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2d79c0){validateUpdateInput(_0x2d79c0);},async 'dryRun'(_0xcd6c75){const _0x4f88db=a133_0x7dfd11;validateUpdateInput(_0xcd6c75);const {plan:_0x1ca603,patch:_0x11f765}=await buildUpdatePlan(_0xcd6c75,!![]);return menuDryRunResult(_0x1ca603,{'method':'POST','url':_0x4f88db(0xe6),'body':_0x11f765,'description':_0x4f88db(0xe7)+_0x1ca603['selector']['id']+'.'});},async 'execute'(_0x44d6d5){const _0x1ba32f=a133_0x7dfd11;validateUpdateInput(_0x44d6d5);const {plan:_0x54108f,patch:_0x1deb76,noChanges:_0x4de1a9}=await buildUpdatePlan(_0x44d6d5,![]),_0x2f781f=Number(_0x54108f[_0x1ba32f(0xe9)]['id']),_0x3d06c1=await recheckMutationSnapshot(_0x44d6d5,_0x54108f,_0x1ba32f(0xdc),_0x2f781f);if(!_0x4de1a9)try{await updateMenuEntity(_0x44d6d5[_0x1ba32f(0xc6)],_0x44d6d5[_0x1ba32f(0xf1)],_0x1deb76);}catch(_0x2846a9){const _0x320940=mapMenuApiError(_0x2846a9,_0x1ba32f(0xdc),_0x2f781f);throw menuFailure(_0x320940,_0x54108f,{'stage':_0x1ba32f(0xd1),'failed':{'id':_0x2f781f}});}let _0x3bf210=_0x3d06c1,_0xe69dd2;try{!_0x4de1a9&&(_0x3bf210=await fetchMenuSnapshot(_0x44d6d5[_0x1ba32f(0xc6)],_0x44d6d5[_0x1ba32f(0xf1)])),_0xe69dd2=requireMenu(_0x3bf210,_0x2f781f),verifyPatch(_0xe69dd2,_0x1deb76),_0xe69dd2[_0x1ba32f(0xe0)]!=null&&requireFolder(_0x3bf210,_0xe69dd2[_0x1ba32f(0xe0)]);}catch(_0x5e2ccf){const _0x2a8d9c=describeMenuErrorCause(_0x5e2ccf,_0x1ba32f(0xed),_0x2f781f),_0x2a8517=asVerificationError(_0x5e2ccf,'Update\x20request\x20for\x20folder\x20'+_0x2f781f+_0x1ba32f(0xea));throw menuFailure(_0x2a8517,_0x54108f,{'stage':_0x1ba32f(0xdf),'succeeded':[{'id':_0x2f781f,'updateRequested':!_0x4de1a9,'skipped':_0x4de1a9}],'failed':{'id':_0x2f781f,'requestedStateConfirmed':![],..._0x2a8d9c},'warnings':[_0x1ba32f(0xeb)],'verification':{'status':_0x1ba32f(0xcd),'lookupCommand':_0x1ba32f(0xd5),'targetId':_0x2f781f}});}const _0x255f49=mutationResult({..._0x54108f,'after':_0xe69dd2,'dryRun':![],'succeeded':[{'id':_0x2f781f,'updated':!_0x4de1a9,'skipped':_0x4de1a9}],'verification':{'checkedBy':_0x1ba32f(0xdd),'snapshotHash':_0x3bf210[_0x1ba32f(0xf7)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x255f49,'message':_0x4de1a9?_0x1ba32f(0xde)+_0x2f781f+_0x1ba32f(0xf3):_0x1ba32f(0xca)+_0x2f781f+'.'};}};function validateUpdateInput(_0xebbbbd){const _0x171dd6=a133_0x7dfd11;validateExactId(_0xebbbbd);if(hasFlag(_0xebbbbd,_0x171dd6(0xd8)))throw CliErrors[_0x171dd6(0xd7)](_0x171dd6(0xe5),_0x171dd6(0xc4));if(!hasFlag(_0xebbbbd,_0x171dd6(0xc8))&&!hasFlag(_0xebbbbd,_0x171dd6(0xd3)))throw CliErrors[_0x171dd6(0xd7)]('At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.');if(hasFlag(_0xebbbbd,'label')&&!_0xebbbbd[_0x171dd6(0xef)](_0x171dd6(0xc8))[_0x171dd6(0xf2)]())throw CliErrors['validation'](_0x171dd6(0xda));validateSort(_0xebbbbd);}async function buildUpdatePlan(_0x51c9cb,_0x15aead){const _0x392298=a133_0x7dfd11,_0xeed3e8=validateExactId(_0x51c9cb),_0x1b95e5=await fetchMutationSnapshot(_0x51c9cb,_0x392298(0xdc),_0xeed3e8),_0x4ad0b9=requireMenu(_0x1b95e5,_0xeed3e8);if(_0x4ad0b9[_0x392298(0xe1)]!==_0x392298(0xd4))throw menuError(_0x392298(0xc7),_0x392298(0xcb)+_0xeed3e8+_0x392298(0xc5)+(_0x4ad0b9[_0x392298(0xe1)]||_0x392298(0xd0))+'\x22,\x20not\x20folder.',_0x392298(0xce));assertExpectedState(_0x51c9cb,_0x4ad0b9);const _0x12648f={'id':_0xeed3e8},_0x3bb3a3={..._0x4ad0b9};if(hasFlag(_0x51c9cb,_0x392298(0xc8))){const _0x379eb3=_0x51c9cb[_0x392298(0xef)](_0x392298(0xc8))['trim']();_0x12648f[_0x392298(0xc8)]=_0x379eb3,_0x3bb3a3[_0x392298(0xc8)]=_0x379eb3;}if(hasFlag(_0x51c9cb,_0x392298(0xd3))){const _0x19ccab=validateSort(_0x51c9cb);_0x12648f[_0x392298(0xd3)]=_0x19ccab,_0x3bb3a3['sort']=_0x19ccab;}const _0x1207fe=sameRequestedState(_0x4ad0b9,_0x3bb3a3),_0x568ac3=_0x1207fe?[_0x392298(0xf4)]:[];return{'patch':_0x12648f,'noChanges':_0x1207fe,'plan':mutationResult({'operation':'group-update','selector':{'id':_0xeed3e8},'before':_0x4ad0b9,'after':_0x3bb3a3,'dryRun':_0x15aead,'backend':[...BACKEND],'snapshotHash':_0x1b95e5[_0x392298(0xf7)],'warnings':_0x568ac3})};}function sameRequestedState(_0x259789,_0x282694){const _0x4c5c00=a133_0x7dfd11;return _0x259789[_0x4c5c00(0xc8)]===_0x282694[_0x4c5c00(0xc8)]&&_0x259789['sort']===_0x282694[_0x4c5c00(0xd3)];}function verifyPatch(_0x296eca,_0x42eed4){const _0x4cf1a=a133_0x7dfd11;assertVerified(_0x296eca[_0x4cf1a(0xe1)]==='folder',_0x4cf1a(0xcb)+_0x296eca['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x42eed4['label']!==undefined&&assertVerified(_0x296eca[_0x4cf1a(0xc8)]===_0x42eed4[_0x4cf1a(0xc8)],_0x4cf1a(0xde)+_0x296eca['id']+_0x4cf1a(0xe4)),_0x42eed4[_0x4cf1a(0xd3)]!==undefined&&assertVerified(_0x296eca['sort']===_0x42eed4['sort'],_0x4cf1a(0xde)+_0x296eca['id']+_0x4cf1a(0xf5));}function a133_0xf7a5(){const _0x59e667=['Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','group-update','unknown','update','12873470wOSNUF','sort','folder','rabetbase\x20menu\x20list\x20--format\x20json','29446846RAPQHV','validation','parent-id','5159505HdszDp','--label\x20cannot\x20be\x20empty.','POST','update\x20folder','menu\x20list','Folder\x20','verification','parentId','type','string','54LEMMnv','\x20label\x20update\x20did\x20not\x20take\x20effect.','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','/smartapi/menu/update','Would\x20update\x20folder\x20','11442492fzmMHR','selector','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','write','verify\x20folder\x20update','114LkwzLZ','str','175777jNGbTV','cookie','trim','\x20already\x20matches\x20the\x20requested\x20state.','No\x20online\x20fields\x20would\x20change.','\x20sort\x20update\x20did\x20not\x20take\x20effect.','208oilZNw','hash','22364DbZUwF','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','\x20is\x20type\x20\x22','appCode','menu_not_folder','label','14710BhMiki','Updated\x20folder\x20','Menu\x20','4xSFSTs','failed'];a133_0xf7a5=function(){return _0x59e667;};return a133_0xf7a5();}
@@ -1 +1 @@
1
- (function(_0xe1ee44,_0x51e614){const _0x19b258=a121_0x10b8,_0x5b1896=_0xe1ee44();while(!![]){try{const _0x25f13d=-parseInt(_0x19b258(0x139))/0x1+-parseInt(_0x19b258(0x137))/0x2*(-parseInt(_0x19b258(0x136))/0x3)+parseInt(_0x19b258(0x132))/0x4+parseInt(_0x19b258(0x133))/0x5+-parseInt(_0x19b258(0x135))/0x6+-parseInt(_0x19b258(0x138))/0x7+parseInt(_0x19b258(0x134))/0x8*(parseInt(_0x19b258(0x13a))/0x9);if(_0x25f13d===_0x51e614)break;else _0x5b1896['push'](_0x5b1896['shift']());}catch(_0x4148de){_0x5b1896['push'](_0x5b1896['shift']());}}}(a121_0x430b,0x99590));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';function a121_0x10b8(_0x36e739,_0xf0db96){_0x36e739=_0x36e739-0x132;const _0x430b61=a121_0x430b();let _0x10b84b=_0x430b61[_0x36e739];return _0x10b84b;}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 a121_0x430b(){const _0x19d0f9=['1224364CUMzjA','978280scVzGX','9560xXCSYd','4039506xVOUCe','9yqyqUs','162094icfkgm','4598230xClFig','165665mecZyQ','10386YzNPgr'];a121_0x430b=function(){return _0x19d0f9;};return a121_0x430b();}import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
1
+ (function(_0x2e1b6c,_0x107e4e){const _0x55aa45=a134_0x165b,_0x239ee2=_0x2e1b6c();while(!![]){try{const _0x3d4822=-parseInt(_0x55aa45(0x12a))/0x1+-parseInt(_0x55aa45(0x123))/0x2*(parseInt(_0x55aa45(0x129))/0x3)+-parseInt(_0x55aa45(0x122))/0x4*(-parseInt(_0x55aa45(0x125))/0x5)+-parseInt(_0x55aa45(0x121))/0x6*(parseInt(_0x55aa45(0x124))/0x7)+parseInt(_0x55aa45(0x11f))/0x8*(parseInt(_0x55aa45(0x128))/0x9)+parseInt(_0x55aa45(0x127))/0xa*(-parseInt(_0x55aa45(0x126))/0xb)+parseInt(_0x55aa45(0x120))/0xc*(parseInt(_0x55aa45(0x11e))/0xd);if(_0x3d4822===_0x107e4e)break;else _0x239ee2['push'](_0x239ee2['shift']());}catch(_0x5b1b2e){_0x239ee2['push'](_0x239ee2['shift']());}}}(a134_0x94ff,0xa8b58));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';function a134_0x165b(_0xff218d,_0x2cc5e7){_0xff218d=_0xff218d-0x11e;const _0x94ff62=a134_0x94ff();let _0x165bbf=_0x94ff62[_0xff218d];return _0x165bbf;}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';function a134_0x94ff(){const _0x1178da=['70pykcvU','40ciYEJH','11IsXNgn','2560060WMgwiH','3632463OOYwxw','3GGmZon','1292342bqtuRV','39ALpmBG','8LuJgdq','12320892GwdzIb','488172kLjZoA','406160iGhHMA','2486300wCTRrY'];a134_0x94ff=function(){return _0x1178da;};return a134_0x94ff();}import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
@@ -1 +1 @@
1
- const a122_0x35b492=a122_0x574b;(function(_0xe2878,_0x5ea81f){const _0x5ce53e=a122_0x574b,_0x171b38=_0xe2878();while(!![]){try{const _0x2ba977=parseInt(_0x5ce53e(0x1ce))/0x1*(parseInt(_0x5ce53e(0x1bd))/0x2)+parseInt(_0x5ce53e(0x1cc))/0x3*(parseInt(_0x5ce53e(0x1be))/0x4)+-parseInt(_0x5ce53e(0x1c3))/0x5+-parseInt(_0x5ce53e(0x1c0))/0x6+-parseInt(_0x5ce53e(0x1c4))/0x7+parseInt(_0x5ce53e(0x1c7))/0x8+-parseInt(_0x5ce53e(0x1bf))/0x9*(-parseInt(_0x5ce53e(0x1bb))/0xa);if(_0x2ba977===_0x5ea81f)break;else _0x171b38['push'](_0x171b38['shift']());}catch(_0x47a158){_0x171b38['push'](_0x171b38['shift']());}}}(a122_0x5f41,0x941f7));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a122_0x574b(_0x45fa33,_0x33d678){_0x45fa33=_0x45fa33-0x1bb;const _0x5f4145=a122_0x5f41();let _0x574bb9=_0x5f4145[_0x45fa33];return _0x574bb9;}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a122_0x35b492(0x1d2),'command':a122_0x35b492(0x1cf),'description':'List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','risk':a122_0x35b492(0x1c1),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a122_0x35b492(0x1c2),'type':a122_0x35b492(0x1cd),'description':'Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing'}],async 'execute'(_0x2d680e){const _0x4cb84d=a122_0x35b492,_0x4f471c=_0x2d680e[_0x4cb84d(0x1c8)]('verbose'),_0x37f8a0=await fetchMenuSnapshot(_0x2d680e['appCode'],_0x2d680e[_0x4cb84d(0x1bc)],{'verbose':_0x4f471c});return{'ok':!![],'data':{'total':_0x37f8a0[_0x4cb84d(0x1d1)],'snapshotHash':_0x37f8a0[_0x4cb84d(0x1ca)],'menus':_0x37f8a0[_0x4cb84d(0x1d0)][_0x4cb84d(0x1c6)](toMenuListItem)},'message':_0x37f8a0[_0x4cb84d(0x1d1)]===0x0?_0x4cb84d(0x1cb):_0x4cb84d(0x1c5)+_0x37f8a0[_0x4cb84d(0x1d1)]+_0x4cb84d(0x1c9)};}};function a122_0x5f41(){const _0x2908c0=['6HHuxjf','boolean','15lFrlDk','list','menus','total','menu','10PaxQPs','cookie','47254zgENXo','6268DeLaOR','17951121WroYxd','1042986pRvMwC','read','verbose','4276650vJQgvS','7745171mIIuhl','Found\x20','map','3121736HxUEZe','bool','\x20menu(s)','hash','No\x20menus\x20found.'];a122_0x5f41=function(){return _0x2908c0;};return a122_0x5f41();}
1
+ function a135_0x29ef(_0x23cb03,_0x1ae5e1){_0x23cb03=_0x23cb03-0x125;const _0x54dfc2=a135_0x54df();let _0x29efd0=_0x54dfc2[_0x23cb03];return _0x29efd0;}const a135_0x181b89=a135_0x29ef;(function(_0x5a4b7e,_0x3d2641){const _0x24604e=a135_0x29ef,_0x4ce86a=_0x5a4b7e();while(!![]){try{const _0xdb42bf=parseInt(_0x24604e(0x13a))/0x1+-parseInt(_0x24604e(0x12c))/0x2+-parseInt(_0x24604e(0x138))/0x3*(parseInt(_0x24604e(0x136))/0x4)+parseInt(_0x24604e(0x129))/0x5*(-parseInt(_0x24604e(0x13b))/0x6)+-parseInt(_0x24604e(0x130))/0x7+parseInt(_0x24604e(0x12e))/0x8+parseInt(_0x24604e(0x12a))/0x9;if(_0xdb42bf===_0x3d2641)break;else _0x4ce86a['push'](_0x4ce86a['shift']());}catch(_0x43c27e){_0x4ce86a['push'](_0x4ce86a['shift']());}}}(a135_0x54df,0xde025));function a135_0x54df(){const _0x58c4a6=['bool','4052531fdXOZH','menus','menu','verbose','\x20menu(s)','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','10068jjrdOO','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','531fVzrQV','hash','1744529OGFvTX','204dHPKYF','No\x20menus\x20found.','total','map','appCode','189435erDeoE','5969133hbGCDn','list','146354XMgeUL','Found\x20','7098880NzHtNF'];a135_0x54df=function(){return _0x58c4a6;};return a135_0x54df();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a135_0x181b89(0x132),'command':a135_0x181b89(0x12b),'description':a135_0x181b89(0x135),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a135_0x181b89(0x133),'type':'boolean','description':a135_0x181b89(0x137)}],async 'execute'(_0x3a0fde){const _0x15bc43=a135_0x181b89,_0x4d23e4=_0x3a0fde[_0x15bc43(0x12f)](_0x15bc43(0x133)),_0x14812a=await fetchMenuSnapshot(_0x3a0fde[_0x15bc43(0x128)],_0x3a0fde['cookie'],{'verbose':_0x4d23e4});return{'ok':!![],'data':{'total':_0x14812a['total'],'snapshotHash':_0x14812a[_0x15bc43(0x139)],'menus':_0x14812a[_0x15bc43(0x131)][_0x15bc43(0x127)](toMenuListItem)},'message':_0x14812a[_0x15bc43(0x126)]===0x0?_0x15bc43(0x125):_0x15bc43(0x12d)+_0x14812a[_0x15bc43(0x126)]+_0x15bc43(0x134)};}};
@@ -1 +1 @@
1
- const a123_0x84558=a123_0x53b3;function a123_0x398b(){const _0x7b5220=['2999204nsxzJy','update','10316dKKsQR','sort','POST','write','parentId','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','4202594KJfpYq','menu','move-menu','Menu\x20','expect-parent-id','42ynjXlt','12754qFziRI','2036990qKUVDW','5rwSdQp','move','Would\x20move\x20menu\x20','54vSLfZQ','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','212442NUMBek','cookie','menu\x20list','166IcNgwB','failed','verify\x20menu\x20move','\x20is\x20now\x20type\x20folder.','after','parent-id','1664qSYJvW','move\x20menu','appCode','hash','\x20is\x20no\x20longer\x20a\x20leaf.','menu_move_source_not_leaf','2237HPkkcd','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','folder','childrenCount','\x20parent\x20changed:\x20expected\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','24fMFntE','menu_state_drift','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','type','/smartapi/menu/update','verification','rabetbase\x20menu\x20list\x20--format\x20compress','18HLRqsY'];a123_0x398b=function(){return _0x7b5220;};return a123_0x398b();}(function(_0x130f17,_0x827b68){const _0xbedc91=a123_0x53b3,_0x4fc7c9=_0x130f17();while(!![]){try{const _0xa1e1f8=-parseInt(_0xbedc91(0x1b6))/0x1*(parseInt(_0xbedc91(0x1aa))/0x2)+parseInt(_0xbedc91(0x1a5))/0x3*(parseInt(_0xbedc91(0x1c7))/0x4)+-parseInt(_0xbedc91(0x1a2))/0x5*(parseInt(_0xbedc91(0x1a7))/0x6)+-parseInt(_0xbedc91(0x1d3))/0x7*(parseInt(_0xbedc91(0x1b0))/0x8)+-parseInt(_0xbedc91(0x1c4))/0x9*(parseInt(_0xbedc91(0x1d4))/0xa)+parseInt(_0xbedc91(0x1cd))/0xb*(parseInt(_0xbedc91(0x1bd))/0xc)+parseInt(_0xbedc91(0x1c5))/0xd*(parseInt(_0xbedc91(0x1d2))/0xe);if(_0xa1e1f8===_0x827b68)break;else _0x4fc7c9['push'](_0x4fc7c9['shift']());}catch(_0x503e05){_0x4fc7c9['push'](_0x4fc7c9['shift']());}}}(a123_0x398b,0x78e62));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':'POST','path':'/smartapi/menu/update'}];export const menuMove={'service':a123_0x84558(0x1ce),'command':a123_0x84558(0x1a3),'description':'Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','risk':a123_0x84558(0x1ca),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x206ed3){validateMoveInput(_0x206ed3);},async 'dryRun'(_0x34251f){const _0x560029=a123_0x84558,{plan:_0x40bde9,patch:_0x1e0f0c}=await buildMovePlan(_0x34251f,!![]);return menuDryRunResult(_0x40bde9,{'method':_0x560029(0x1c9),'url':'/smartapi/menu/update','body':{..._0x1e0f0c,'appCode':_0x34251f['appCode']},'description':_0x560029(0x1a4)+_0x1e0f0c['id']+'.'});},async 'execute'(_0x54ec1e){const _0x3840e4=a123_0x84558;validateMoveInput(_0x54ec1e);const {plan:_0x34d125,patch:_0x3bf601,noChanges:_0x56d989,snapshot:_0x4e4a76}=await buildMovePlan(_0x54ec1e,![]),_0x5baf5b=_0x3bf601['id'];if(!_0x56d989)try{await updateMenuEntity(_0x54ec1e[_0x3840e4(0x1b2)],_0x54ec1e[_0x3840e4(0x1a8)],_0x3bf601);}catch(_0x31bc89){const _0x54490c=mapMenuApiError(_0x31bc89,'move',_0x5baf5b);throw menuFailure(_0x54490c,_0x34d125,{'stage':_0x3840e4(0x1c6),'failed':{'id':_0x5baf5b},'warnings':[_0x3840e4(0x1b8)],'verification':{'status':_0x3840e4(0x1ab),'targetId':_0x5baf5b,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0x196713,_0x2da0a7;try{_0x196713=_0x56d989?_0x4e4a76:await fetchMenuSnapshot(_0x54ec1e[_0x3840e4(0x1b2)],_0x54ec1e[_0x3840e4(0x1a8)]),_0x2da0a7=requireMenu(_0x196713,_0x5baf5b),verifyMove(_0x2da0a7,_0x34d125[_0x3840e4(0x1ae)]),_0x2da0a7['parentId']!==null&&requireFolder(_0x196713,_0x2da0a7[_0x3840e4(0x1cb)]);}catch(_0x4ee780){const _0x529312=describeMenuErrorCause(_0x4ee780,_0x3840e4(0x1ac),_0x5baf5b),_0x4d3ed5=asVerificationError(_0x4ee780,'Move\x20request\x20for\x20menu\x20'+_0x5baf5b+_0x3840e4(0x1bc));throw menuFailure(_0x4d3ed5,_0x34d125,{'stage':_0x3840e4(0x1c2),'succeeded':[{'id':_0x5baf5b,'updateRequested':!_0x56d989,'skipped':_0x56d989}],'failed':{'id':_0x5baf5b,'requestedStateConfirmed':![],..._0x529312},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x3840e4(0x1ab),'targetId':_0x5baf5b,'lookupCommand':_0x3840e4(0x1c3)}});}const _0x4c907a=mutationResult({..._0x34d125,'after':_0x2da0a7,'dryRun':![],'succeeded':[{'id':_0x5baf5b,'updated':!_0x56d989,'skipped':_0x56d989}],'verification':{'checkedBy':_0x3840e4(0x1a9),'snapshotHash':_0x196713[_0x3840e4(0x1b3)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x4c907a,'message':_0x56d989?_0x3840e4(0x1d0)+_0x5baf5b+_0x3840e4(0x1b7):'Moved\x20menu\x20'+_0x5baf5b+'.'};}};function validateMoveInput(_0x171500){const _0x4ce349=a123_0x84558;validateExactId(_0x171500),parseParentId(_0x171500,_0x4ce349(0x1af),{'required':!![]}),parseParentId(_0x171500,_0x4ce349(0x1d1),{'required':!![]}),validateSort(_0x171500);}async function buildMovePlan(_0xdf70d7,_0x51a6bf){const _0x13f80b=a123_0x84558,_0x3f972f=validateExactId(_0xdf70d7),_0x554919=parseParentId(_0xdf70d7,_0x13f80b(0x1af),{'required':!![]}),_0x29788a=parseParentId(_0xdf70d7,_0x13f80b(0x1d1),{'required':!![]}),_0x4483ee=validateSort(_0xdf70d7),_0x137fa2=await fetchMutationSnapshot(_0xdf70d7,_0x13f80b(0x1b1),_0x3f972f),_0x574159=requireMenu(_0x137fa2,_0x3f972f);if(_0x574159[_0x13f80b(0x1c0)]===_0x13f80b(0x1b9)||_0x574159[_0x13f80b(0x1ba)]!==0x0)throw menuError(_0x13f80b(0x1b5),_0x13f80b(0x1d0)+_0x3f972f+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.',_0x13f80b(0x1bf));if(_0x574159[_0x13f80b(0x1cb)]!==_0x29788a)throw menuError(_0x13f80b(0x1be),_0x13f80b(0x1d0)+_0x3f972f+_0x13f80b(0x1bb)+formatParent(_0x29788a)+',\x20current\x20'+formatParent(_0x574159[_0x13f80b(0x1cb)])+'.',_0x13f80b(0x1cc));_0x554919!==null&&requireFolder(_0x137fa2,_0x554919);const _0xccd15a=_0x4483ee??(_0x574159[_0x13f80b(0x1cb)]===_0x554919?_0x574159[_0x13f80b(0x1c8)]??0x0:nextSiblingSort(_0x137fa2,_0x554919,_0x13f80b(0x1ce))),_0x471c16={..._0x574159,'parentId':_0x554919,'sort':_0xccd15a},_0x1245bf={'id':_0x3f972f,'parentId':toApiParentId(_0x554919),'sort':_0xccd15a},_0x268267=_0x574159['parentId']===_0x554919&&_0x574159[_0x13f80b(0x1c8)]===_0xccd15a;return{'patch':_0x1245bf,'noChanges':_0x268267,'snapshot':_0x137fa2,'plan':mutationResult({'operation':_0x13f80b(0x1a3),'selector':{'id':_0x3f972f,'parentId':_0x554919},'before':_0x574159,'after':_0x471c16,'dryRun':_0x51a6bf,'backend':[...BACKEND],'plannedActions':[{'stage':_0x13f80b(0x1cf),'method':_0x13f80b(0x1c9),'path':_0x13f80b(0x1c1),'body':{..._0x1245bf,'appCode':_0xdf70d7[_0x13f80b(0x1b2)]}}],'snapshotHash':_0x137fa2[_0x13f80b(0x1b3)],'warnings':_0x268267?[_0x13f80b(0x1a6)]:[]})};}function a123_0x53b3(_0x5617f9,_0x2435d7){_0x5617f9=_0x5617f9-0x1a2;const _0x398be7=a123_0x398b();let _0x53b3e1=_0x398be7[_0x5617f9];return _0x53b3e1;}function verifyMove(_0x48b24c,_0x5c2b53){const _0x238c3f=a123_0x84558;assertVerified(_0x48b24c[_0x238c3f(0x1c0)]!=='folder','Menu\x20'+_0x48b24c['id']+_0x238c3f(0x1ad)),assertVerified(_0x48b24c['childrenCount']===0x0,'Menu\x20'+_0x48b24c['id']+_0x238c3f(0x1b4)),assertVerified(_0x48b24c['parentId']===_0x5c2b53[_0x238c3f(0x1cb)],_0x238c3f(0x1d0)+_0x48b24c['id']+'\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.'),assertVerified(_0x48b24c[_0x238c3f(0x1c8)]===_0x5c2b53[_0x238c3f(0x1c8)],'Menu\x20'+_0x48b24c['id']+'\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.');}
1
+ const a136_0x136123=a136_0x4f0a;(function(_0x38231b,_0x291245){const _0x5f344f=a136_0x4f0a,_0x3fdf34=_0x38231b();while(!![]){try{const _0x1b7d77=-parseInt(_0x5f344f(0x1c5))/0x1*(-parseInt(_0x5f344f(0x1ae))/0x2)+parseInt(_0x5f344f(0x1b8))/0x3*(-parseInt(_0x5f344f(0x1bc))/0x4)+-parseInt(_0x5f344f(0x1ba))/0x5+-parseInt(_0x5f344f(0x1c4))/0x6*(-parseInt(_0x5f344f(0x1c8))/0x7)+-parseInt(_0x5f344f(0x1be))/0x8+parseInt(_0x5f344f(0x1c6))/0x9*(parseInt(_0x5f344f(0x1c1))/0xa)+-parseInt(_0x5f344f(0x1c7))/0xb*(-parseInt(_0x5f344f(0x1cb))/0xc);if(_0x1b7d77===_0x291245)break;else _0x3fdf34['push'](_0x3fdf34['shift']());}catch(_0x3e3c15){_0x3fdf34['push'](_0x3fdf34['shift']());}}}(a136_0x45a7,0xad890));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':'POST','path':a136_0x136123(0x1a4)}];export const menuMove={'service':'menu','command':'move','description':'Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','risk':a136_0x136123(0x1cc),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x42be05){validateMoveInput(_0x42be05);},async 'dryRun'(_0x2157c4){const _0x403ce1=a136_0x136123,{plan:_0x184a0c,patch:_0x4d7433}=await buildMovePlan(_0x2157c4,!![]);return menuDryRunResult(_0x184a0c,{'method':_0x403ce1(0x1ca),'url':'/smartapi/menu/update','body':{..._0x4d7433,'appCode':_0x2157c4[_0x403ce1(0x1ce)]},'description':_0x403ce1(0x1c3)+_0x4d7433['id']+'.'});},async 'execute'(_0x136ca1){const _0x2e5b44=a136_0x136123;validateMoveInput(_0x136ca1);const {plan:_0x49b712,patch:_0x1929a6,noChanges:_0x547f2b,snapshot:_0x22281c}=await buildMovePlan(_0x136ca1,![]),_0x39e3fa=_0x1929a6['id'];if(!_0x547f2b)try{await updateMenuEntity(_0x136ca1['appCode'],_0x136ca1[_0x2e5b44(0x1b5)],_0x1929a6);}catch(_0x56926e){const _0x25ba50=mapMenuApiError(_0x56926e,'move',_0x39e3fa);throw menuFailure(_0x25ba50,_0x49b712,{'stage':_0x2e5b44(0x1a5),'failed':{'id':_0x39e3fa},'warnings':[_0x2e5b44(0x1a2)],'verification':{'status':'failed','targetId':_0x39e3fa,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0x1b6c79,_0x3a4ef1;try{_0x1b6c79=_0x547f2b?_0x22281c:await fetchMenuSnapshot(_0x136ca1['appCode'],_0x136ca1[_0x2e5b44(0x1b5)]),_0x3a4ef1=requireMenu(_0x1b6c79,_0x39e3fa),verifyMove(_0x3a4ef1,_0x49b712[_0x2e5b44(0x1b2)]),_0x3a4ef1['parentId']!==null&&requireFolder(_0x1b6c79,_0x3a4ef1[_0x2e5b44(0x1b0)]);}catch(_0x5b7aaa){const _0x143367=describeMenuErrorCause(_0x5b7aaa,'verify\x20menu\x20move',_0x39e3fa),_0xffa0c5=asVerificationError(_0x5b7aaa,'Move\x20request\x20for\x20menu\x20'+_0x39e3fa+_0x2e5b44(0x1a9));throw menuFailure(_0xffa0c5,_0x49b712,{'stage':_0x2e5b44(0x1b7),'succeeded':[{'id':_0x39e3fa,'updateRequested':!_0x547f2b,'skipped':_0x547f2b}],'failed':{'id':_0x39e3fa,'requestedStateConfirmed':![],..._0x143367},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x2e5b44(0x1b3),'targetId':_0x39e3fa,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x391882=mutationResult({..._0x49b712,'after':_0x3a4ef1,'dryRun':![],'succeeded':[{'id':_0x39e3fa,'updated':!_0x547f2b,'skipped':_0x547f2b}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x1b6c79['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x391882,'message':_0x547f2b?_0x2e5b44(0x1c9)+_0x39e3fa+_0x2e5b44(0x1cd):'Moved\x20menu\x20'+_0x39e3fa+'.'};}};function validateMoveInput(_0x316dbd){const _0x29117d=a136_0x136123;validateExactId(_0x316dbd),parseParentId(_0x316dbd,_0x29117d(0x1a7),{'required':!![]}),parseParentId(_0x316dbd,_0x29117d(0x1ad),{'required':!![]}),validateSort(_0x316dbd);}async function buildMovePlan(_0x599364,_0x1214b5){const _0x10b20a=a136_0x136123,_0xe055c2=validateExactId(_0x599364),_0x54c30c=parseParentId(_0x599364,'parent-id',{'required':!![]}),_0x5625cd=parseParentId(_0x599364,_0x10b20a(0x1ad),{'required':!![]}),_0x383290=validateSort(_0x599364),_0x3c0610=await fetchMutationSnapshot(_0x599364,_0x10b20a(0x1b6),_0xe055c2),_0x50189c=requireMenu(_0x3c0610,_0xe055c2);if(_0x50189c[_0x10b20a(0x1a8)]===_0x10b20a(0x1bd)||_0x50189c['childrenCount']!==0x0)throw menuError('menu_move_source_not_leaf',_0x10b20a(0x1c9)+_0xe055c2+_0x10b20a(0x1b1),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.');if(_0x50189c['parentId']!==_0x5625cd)throw menuError(_0x10b20a(0x1c0),_0x10b20a(0x1c9)+_0xe055c2+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x5625cd)+_0x10b20a(0x1ab)+formatParent(_0x50189c[_0x10b20a(0x1b0)])+'.',_0x10b20a(0x1a6));_0x54c30c!==null&&requireFolder(_0x3c0610,_0x54c30c);const _0x3b22d0=_0x383290??(_0x50189c[_0x10b20a(0x1b0)]===_0x54c30c?_0x50189c[_0x10b20a(0x1aa)]??0x0:nextSiblingSort(_0x3c0610,_0x54c30c,_0x10b20a(0x1c2))),_0x3033ec={..._0x50189c,'parentId':_0x54c30c,'sort':_0x3b22d0},_0xb725ca={'id':_0xe055c2,'parentId':toApiParentId(_0x54c30c),'sort':_0x3b22d0},_0xe9ff35=_0x50189c[_0x10b20a(0x1b0)]===_0x54c30c&&_0x50189c['sort']===_0x3b22d0;return{'patch':_0xb725ca,'noChanges':_0xe9ff35,'snapshot':_0x3c0610,'plan':mutationResult({'operation':_0x10b20a(0x1ac),'selector':{'id':_0xe055c2,'parentId':_0x54c30c},'before':_0x50189c,'after':_0x3033ec,'dryRun':_0x1214b5,'backend':[...BACKEND],'plannedActions':[{'stage':_0x10b20a(0x1af),'method':_0x10b20a(0x1ca),'path':_0x10b20a(0x1a4),'body':{..._0xb725ca,'appCode':_0x599364[_0x10b20a(0x1ce)]}}],'snapshotHash':_0x3c0610[_0x10b20a(0x1bb)],'warnings':_0xe9ff35?[_0x10b20a(0x1a1)]:[]})};}function a136_0x4f0a(_0x4752c0,_0x3ca829){_0x4752c0=_0x4752c0-0x1a1;const _0x45a733=a136_0x45a7();let _0x4f0a78=_0x45a733[_0x4752c0];return _0x4f0a78;}function a136_0x45a7(){const _0x21c527=['/smartapi/menu/update','update','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','parent-id','type','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','sort',',\x20current\x20','move','expect-parent-id','206YKaZTM','move-menu','parentId','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','after','failed','childrenCount','cookie','move\x20menu','verification','1806486LMFLTN','\x20is\x20now\x20type\x20folder.','6843530AiWXpp','hash','4qrcIPz','folder','8985816bffUpx','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','menu_state_drift','20kmXlvC','menu','Would\x20move\x20menu\x20','3143688AwSRQj','11355VPczOd','446895dUEiOA','1364dJZbCy','14REWnJO','Menu\x20','POST','144012oaQmhz','write','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','appCode','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20is\x20no\x20longer\x20a\x20leaf.'];a136_0x45a7=function(){return _0x21c527;};return a136_0x45a7();}function verifyMove(_0x1bb2a8,_0x593a85){const _0x5434e8=a136_0x136123;assertVerified(_0x1bb2a8[_0x5434e8(0x1a8)]!==_0x5434e8(0x1bd),_0x5434e8(0x1c9)+_0x1bb2a8['id']+_0x5434e8(0x1b9)),assertVerified(_0x1bb2a8[_0x5434e8(0x1b4)]===0x0,_0x5434e8(0x1c9)+_0x1bb2a8['id']+_0x5434e8(0x1a3)),assertVerified(_0x1bb2a8[_0x5434e8(0x1b0)]===_0x593a85['parentId'],'Menu\x20'+_0x1bb2a8['id']+_0x5434e8(0x1bf)),assertVerified(_0x1bb2a8[_0x5434e8(0x1aa)]===_0x593a85[_0x5434e8(0x1aa)],_0x5434e8(0x1c9)+_0x1bb2a8['id']+'\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.');}