@lovrabet/rabetbase-cli 2.4.6 → 2.4.7-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 (331) hide show
  1. package/README.md +4 -4
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/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.d.ts +1 -1
  50. package/lib/commands/common/flags.js +1 -1
  51. package/lib/commands/common/local-file.js +1 -1
  52. package/lib/commands/common/validate.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/list.js +1 -1
  56. package/lib/commands/config/set.js +1 -1
  57. package/lib/commands/config/shared.js +1 -1
  58. package/lib/commands/data/filter.js +1 -1
  59. package/lib/commands/data/getOne.js +1 -1
  60. package/lib/commands/data/index.js +1 -1
  61. package/lib/commands/data/shared.js +1 -1
  62. package/lib/commands/dataset/business-group-update.js +1 -1
  63. package/lib/commands/dataset/business-groups.js +1 -1
  64. package/lib/commands/dataset/capability.js +1 -1
  65. package/lib/commands/dataset/delete.js +1 -1
  66. package/lib/commands/dataset/detail.js +1 -1
  67. package/lib/commands/dataset/extend-update.js +1 -1
  68. package/lib/commands/dataset/field-update.js +1 -1
  69. package/lib/commands/dataset/generate.js +1 -1
  70. package/lib/commands/dataset/index.js +1 -1
  71. package/lib/commands/dataset/list.js +1 -1
  72. package/lib/commands/dataset/operations.js +1 -1
  73. package/lib/commands/dataset/relation-audit.js +1 -1
  74. package/lib/commands/dataset/relation-create.js +1 -1
  75. package/lib/commands/dataset/relation-delete.js +1 -1
  76. package/lib/commands/dataset/relation-shared.js +1 -1
  77. package/lib/commands/dataset/relation-update.js +1 -1
  78. package/lib/commands/dataset/relations.js +1 -1
  79. package/lib/commands/dataset/rename.js +1 -1
  80. package/lib/commands/dataset/restore.js +1 -1
  81. package/lib/commands/db/analysis-batching.js +1 -1
  82. package/lib/commands/db/analyze-batch-plan.js +1 -1
  83. package/lib/commands/db/analyze-cancel.js +1 -1
  84. package/lib/commands/db/analyze-start.js +1 -1
  85. package/lib/commands/db/analyze-status.js +1 -1
  86. package/lib/commands/db/create.js +1 -1
  87. package/lib/commands/db/delete.js +1 -1
  88. package/lib/commands/db/detail.js +1 -1
  89. package/lib/commands/db/diff-refresh-start.js +1 -1
  90. package/lib/commands/db/diff-refresh-status.js +1 -1
  91. package/lib/commands/db/diff.js +1 -1
  92. package/lib/commands/db/index.js +1 -1
  93. package/lib/commands/db/list.js +1 -1
  94. package/lib/commands/db/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/doctor.js +1 -1
  99. package/lib/commands/file/index.js +1 -1
  100. package/lib/commands/init/index.js +1 -1
  101. package/lib/commands/issue/index.js +1 -1
  102. package/lib/commands/issue/nudge.js +1 -1
  103. package/lib/commands/issue/report.js +1 -1
  104. package/lib/commands/issue/shared.js +1 -1
  105. package/lib/commands/kb/create.js +1 -1
  106. package/lib/commands/kb/delete.js +1 -1
  107. package/lib/commands/kb/detail.js +1 -1
  108. package/lib/commands/kb/index.js +1 -1
  109. package/lib/commands/kb/list.js +1 -1
  110. package/lib/commands/kb/search.d.ts +2 -0
  111. package/lib/commands/kb/search.js +1 -0
  112. package/lib/commands/kb/shared.js +1 -1
  113. package/lib/commands/kb/update.js +1 -1
  114. package/lib/commands/logs/index.js +1 -1
  115. package/lib/commands/menu/asset-update.js +1 -1
  116. package/lib/commands/menu/delete.js +1 -1
  117. package/lib/commands/menu/external-link-create.js +1 -1
  118. package/lib/commands/menu/external-link-update.js +1 -1
  119. package/lib/commands/menu/group-create.js +1 -1
  120. package/lib/commands/menu/group-update.js +1 -1
  121. package/lib/commands/menu/index.js +1 -1
  122. package/lib/commands/menu/list.js +1 -1
  123. package/lib/commands/menu/move.js +1 -1
  124. package/lib/commands/menu/regroup-start.js +1 -1
  125. package/lib/commands/menu/rename.js +1 -1
  126. package/lib/commands/menu/shared/compare-table.js +1 -1
  127. package/lib/commands/menu/shared/delete-plan.js +1 -1
  128. package/lib/commands/menu/shared/facts.js +1 -1
  129. package/lib/commands/menu/shared/index.js +1 -1
  130. package/lib/commands/menu/shared/inquirer.js +1 -1
  131. package/lib/commands/menu/shared/local-pages.js +1 -1
  132. package/lib/commands/menu/shared/logic.js +1 -1
  133. package/lib/commands/menu/shared/mutations.js +1 -1
  134. package/lib/commands/menu/shared/service.js +1 -1
  135. package/lib/commands/menu/shared/sync-core.js +1 -1
  136. package/lib/commands/menu/shared/update-core.js +1 -1
  137. package/lib/commands/menu/shared/valid-url.js +1 -1
  138. package/lib/commands/menu/sync.js +1 -1
  139. package/lib/commands/menu/visibility-update.js +1 -1
  140. package/lib/commands/notification/config-create.js +1 -1
  141. package/lib/commands/notification/config-delete.js +1 -1
  142. package/lib/commands/notification/config-list.js +1 -1
  143. package/lib/commands/notification/config-update.js +1 -1
  144. package/lib/commands/notification/index.js +1 -1
  145. package/lib/commands/notification/shared.js +1 -1
  146. package/lib/commands/ocr/index.js +1 -1
  147. package/lib/commands/page/create.js +1 -1
  148. package/lib/commands/page/custom/detail.js +1 -1
  149. package/lib/commands/page/custom/list.js +1 -1
  150. package/lib/commands/page/custom/publish.js +1 -1
  151. package/lib/commands/page/custom/shared.js +1 -1
  152. package/lib/commands/page/custom/syntax.js +1 -1
  153. package/lib/commands/page/custom/template.js +1 -1
  154. package/lib/commands/page/custom/update.js +1 -1
  155. package/lib/commands/page/data-list-status.js +1 -1
  156. package/lib/commands/page/generate-start.js +1 -1
  157. package/lib/commands/page/generate-status.js +1 -1
  158. package/lib/commands/page/index.js +1 -1
  159. package/lib/commands/page/pull.js +1 -1
  160. package/lib/commands/page/push.js +1 -1
  161. package/lib/commands/page/relation-audit.js +1 -1
  162. package/lib/commands/page/restore.js +1 -1
  163. package/lib/commands/page/shared.js +1 -1
  164. package/lib/commands/page/sync.js +1 -1
  165. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  166. package/lib/commands/project/create/format-elapsed.js +1 -1
  167. package/lib/commands/project/create/main.js +1 -1
  168. package/lib/commands/project/create/materialize-project-template.js +1 -1
  169. package/lib/commands/project/create/project-name.js +1 -1
  170. package/lib/commands/project/create/project-template-archive.js +1 -1
  171. package/lib/commands/project/create/project-template-path.js +1 -1
  172. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  173. package/lib/commands/project/create/use-format-code.js +1 -1
  174. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  175. package/lib/commands/project/index.js +1 -1
  176. package/lib/commands/project/upgrade.js +1 -1
  177. package/lib/commands/registry.js +1 -1
  178. package/lib/commands/role/delete.js +1 -1
  179. package/lib/commands/role/detail.js +1 -1
  180. package/lib/commands/role/index.js +1 -1
  181. package/lib/commands/role/list.js +1 -1
  182. package/lib/commands/role/shared.js +1 -1
  183. package/lib/commands/role/update.js +1 -1
  184. package/lib/commands/role/user-add.js +1 -1
  185. package/lib/commands/role/user-remove.js +1 -1
  186. package/lib/commands/role/user-resolve.js +1 -1
  187. package/lib/commands/run/index.js +1 -1
  188. package/lib/commands/schema.js +1 -1
  189. package/lib/commands/sql/create.js +1 -1
  190. package/lib/commands/sql/delete.js +1 -1
  191. package/lib/commands/sql/detail.js +1 -1
  192. package/lib/commands/sql/exec.js +1 -1
  193. package/lib/commands/sql/index.js +1 -1
  194. package/lib/commands/sql/list.js +1 -1
  195. package/lib/commands/sql/pull.js +1 -1
  196. package/lib/commands/sql/push.js +1 -1
  197. package/lib/commands/sql/shared.js +1 -1
  198. package/lib/commands/sql/status.js +1 -1
  199. package/lib/commands/sql/validate.js +1 -1
  200. package/lib/commands/task/index.js +1 -1
  201. package/lib/commands/task/status.js +1 -1
  202. package/lib/commands/tenant/index.js +1 -1
  203. package/lib/commands/tenant/members-list.js +1 -1
  204. package/lib/commands/tenant/shared.js +1 -1
  205. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  206. package/lib/commands/user-account/index.js +1 -1
  207. package/lib/commands/workspace/add.js +1 -1
  208. package/lib/commands/workspace/index.js +1 -1
  209. package/lib/commands/workspace/remove.js +1 -1
  210. package/lib/config/schema.js +1 -1
  211. package/lib/constant/cdn.js +1 -1
  212. package/lib/constant/cli.js +1 -1
  213. package/lib/constant/defaults.js +1 -1
  214. package/lib/constant/domain.js +1 -1
  215. package/lib/constant/env.js +1 -1
  216. package/lib/constant/output.js +1 -1
  217. package/lib/constant/paths.js +1 -1
  218. package/lib/constant/risk.js +1 -1
  219. package/lib/context/app-resolver.js +1 -1
  220. package/lib/context/auth-resolver.js +1 -1
  221. package/lib/context/config-loader.js +1 -1
  222. package/lib/context.js +1 -1
  223. package/lib/core/alias-resolver.js +1 -1
  224. package/lib/core/api-client.d.ts +17 -1
  225. package/lib/core/api-client.js +1 -1
  226. package/lib/core/bff/config.d.ts +1 -1
  227. package/lib/core/bff/config.js +1 -1
  228. package/lib/core/bff/file-system.d.ts +1 -1
  229. package/lib/core/bff/file-system.js +1 -1
  230. package/lib/core/bff/hash.d.ts +1 -1
  231. package/lib/core/bff/hash.js +1 -1
  232. package/lib/core/bff/lock.d.ts +2 -2
  233. package/lib/core/bff/lock.js +1 -1
  234. package/lib/core/bff/types.d.ts +1 -1
  235. package/lib/core/bff/utils.d.ts +2 -2
  236. package/lib/core/bff/utils.js +1 -1
  237. package/lib/core/db-resolver.js +1 -1
  238. package/lib/core/page/file-system.js +1 -1
  239. package/lib/core/page/hash.js +1 -1
  240. package/lib/core/page/lock.js +1 -1
  241. package/lib/core/sql-index-auditor.js +1 -1
  242. package/lib/core/sql-sync/config.js +1 -1
  243. package/lib/core/sql-sync/file-system.js +1 -1
  244. package/lib/core/sql-sync/hash.js +1 -1
  245. package/lib/core/sql-sync/lock.js +1 -1
  246. package/lib/core/sql-sync/utils.js +1 -1
  247. package/lib/core/sql-validator.js +1 -1
  248. package/lib/errors.js +1 -1
  249. package/lib/framework/build-all-flags.js +1 -1
  250. package/lib/framework/error-output.js +1 -1
  251. package/lib/framework/explicit-yes.js +1 -1
  252. package/lib/framework/flags.js +1 -1
  253. package/lib/framework/help.js +1 -1
  254. package/lib/framework/index.js +1 -1
  255. package/lib/framework/output.js +1 -1
  256. package/lib/framework/response.js +1 -1
  257. package/lib/framework/runner-alias.js +1 -1
  258. package/lib/framework/runner.js +1 -1
  259. package/lib/framework/schema-export.js +1 -1
  260. package/lib/framework/types.js +1 -1
  261. package/lib/generated/build-info.d.ts +4 -4
  262. package/lib/generated/build-info.js +1 -1
  263. package/lib/help.js +1 -1
  264. package/lib/postinstall.js +1 -1
  265. package/lib/runtime/confirmation.js +1 -1
  266. package/lib/runtime/event.js +1 -1
  267. package/lib/runtime/index.js +1 -1
  268. package/lib/runtime/queue.js +1 -1
  269. package/lib/runtime/resolve.js +1 -1
  270. package/lib/skills/builtin-skill.js +1 -1
  271. package/lib/skills/main.js +1 -1
  272. package/lib/skills/npx-skills-add.js +1 -1
  273. package/lib/skills/skill-presence.js +1 -1
  274. package/lib/telemetry/cli-command-trace.js +1 -1
  275. package/lib/telemetry/cli-help-trace.js +1 -1
  276. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  277. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  278. package/lib/telemetry/send-cli-trace-log.js +1 -1
  279. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  280. package/lib/utils/ai_config.js +1 -1
  281. package/lib/utils/apply-jq-filter.js +1 -1
  282. package/lib/utils/cdn-config.js +1 -1
  283. package/lib/utils/check-sdk-version.js +1 -1
  284. package/lib/utils/cli-version-check.js +1 -1
  285. package/lib/utils/cli-version-policy.js +1 -1
  286. package/lib/utils/config.js +1 -1
  287. package/lib/utils/entity-with-id.js +1 -1
  288. package/lib/utils/file-utils.js +1 -1
  289. package/lib/utils/guides-cdn.js +1 -1
  290. package/lib/utils/http-client.js +1 -1
  291. package/lib/utils/is-non-interactive.js +1 -1
  292. package/lib/utils/logger.js +1 -1
  293. package/lib/utils/params.js +1 -1
  294. package/lib/utils/platform.js +1 -1
  295. package/lib/utils/rules-cdn.js +1 -1
  296. package/lib/utils/sleep.js +1 -1
  297. package/lib/utils/template-replacer.js +1 -1
  298. package/lib/utils/update-notice.js +1 -1
  299. package/lib/utils/version.js +1 -1
  300. package/lib/utils/with-active-cookie.js +1 -1
  301. package/lib/utils/write-cli-side-channel.js +1 -1
  302. package/package.json +2 -2
  303. package/sidecar/flags.json +1 -1
  304. package/skills/rabetbase/SKILL.md +30 -30
  305. package/skills/rabetbase/guides/backend-function.md +30 -30
  306. package/skills/rabetbase/guides/best-practices.md +8 -8
  307. package/skills/rabetbase/guides/bff-creation-workflow.md +16 -16
  308. package/skills/rabetbase/guides/conflict-detection.md +3 -3
  309. package/skills/rabetbase/guides/custom-page-workflow.md +8 -8
  310. package/skills/rabetbase/guides/data-api-guidelines.md +6 -6
  311. package/skills/rabetbase/guides/legacy-application-blueprint-workflow.md +8 -8
  312. package/skills/rabetbase/guides/sql-creation-workflow.md +2 -2
  313. package/skills/rabetbase/guides/troubleshooting.md +6 -6
  314. package/skills/rabetbase/guides/typescript-sdk.md +10 -10
  315. package/skills/rabetbase/knowledge/page-schema/LrSmartTable.md +1 -1
  316. package/skills/rabetbase/knowledge/page-schema/external-resources-usage.md +10 -10
  317. package/skills/rabetbase/references/rabetbase-app-config.md +2 -2
  318. package/skills/rabetbase/references/rabetbase-bff-create.md +3 -3
  319. package/skills/rabetbase/references/rabetbase-bff-delete.md +1 -1
  320. package/skills/rabetbase/references/rabetbase-bff-detail.md +4 -4
  321. package/skills/rabetbase/references/rabetbase-bff-list.md +8 -8
  322. package/skills/rabetbase/references/rabetbase-bff-pull.md +1 -1
  323. package/skills/rabetbase/references/rabetbase-bff-push.md +3 -3
  324. package/skills/rabetbase/references/rabetbase-bff-status.md +1 -1
  325. package/skills/rabetbase/references/rabetbase-codegen-sql.md +3 -3
  326. package/skills/rabetbase/references/rabetbase-dataset-detail.md +1 -1
  327. package/skills/rabetbase/references/rabetbase-kb.md +13 -3
  328. package/skills/rabetbase/references/rabetbase-notification-config-list.md +3 -3
  329. package/skills/rabetbase.manifest.json +3 -3
  330. package/templates/rules/lovrabet_rules.mdc.tpl +7 -7
  331. package/templates/skill/SKILL.md.tpl +12 -12
@@ -1 +1 @@
1
- function a112_0x1107(_0xf3b362,_0x135f63){_0xf3b362=_0xf3b362-0x19e;const _0xd308a0=a112_0xd308();let _0x1107df=_0xd308a0[_0xf3b362];return _0x1107df;}const a112_0x214841=a112_0x1107;(function(_0x2295a9,_0x109104){const _0x392b66=a112_0x1107,_0x5f018d=_0x2295a9();while(!![]){try{const _0x5c319a=parseInt(_0x392b66(0x1a2))/0x1+-parseInt(_0x392b66(0x21f))/0x2+parseInt(_0x392b66(0x1a0))/0x3*(parseInt(_0x392b66(0x1bd))/0x4)+-parseInt(_0x392b66(0x1ec))/0x5+-parseInt(_0x392b66(0x1ee))/0x6+-parseInt(_0x392b66(0x1aa))/0x7*(parseInt(_0x392b66(0x1b7))/0x8)+parseInt(_0x392b66(0x21d))/0x9;if(_0x5c319a===_0x109104)break;else _0x5f018d['push'](_0x5f018d['shift']());}catch(_0x577e3b){_0x5f018d['push'](_0x5f018d['shift']());}}}(a112_0xd308,0x1af92));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':a112_0x214841(0x219)};export function validateExternalMenuUrl(_0x4f22aa){const _0x33c9a0=a112_0x214841,_0x1b4cfd=_0x4f22aa[_0x33c9a0(0x1a9)]();let _0x3a50e7;try{_0x3a50e7=new URL(_0x1b4cfd);}catch{throw menuError(_0x33c9a0(0x201),_0x33c9a0(0x19f),'Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x3a50e7[_0x33c9a0(0x1b6)]!==_0x33c9a0(0x19e))throw menuError(_0x33c9a0(0x1e3),_0x33c9a0(0x1f9),'Provide\x20an\x20HTTPS\x20URL.');if(_0x3a50e7['username']||_0x3a50e7['password'])throw menuError(_0x33c9a0(0x21b),_0x33c9a0(0x1de),_0x33c9a0(0x1d3));return _0x1b4cfd;}export const menuExternalLinkCreate={'service':'menu','command':a112_0x214841(0x1b1),'description':a112_0x214841(0x1be),'risk':a112_0x214841(0x1a5),'structuredErrors':!![],'flags':[{'name':a112_0x214841(0x1e5),'type':a112_0x214841(0x1cb),'required':!![],'description':'Menu\x20label'},{'name':'open-mode','type':'string','required':!![],'enum':['embedded',a112_0x214841(0x20b)],'description':a112_0x214841(0x1b4)},{'name':'url','type':a112_0x214841(0x1cb),'required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a112_0x214841(0x225),'type':a112_0x214841(0x1f3),'default':!![],'description':a112_0x214841(0x20d)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x57318b){validateAddInput(_0x57318b);},async 'dryRun'(_0x237aa7){const _0x24ed3c=a112_0x214841;validateAddInput(_0x237aa7);const {plan:_0x3dd574}=await buildSafeAddPlan(_0x237aa7,!![]),_0x9d95a4=_0x3dd574[_0x24ed3c(0x204)],_0x38003b=createBody(_0x9d95a4);return menuDryRunResult(_0x3dd574,{'method':_0x24ed3c(0x203),'url':_0x24ed3c(0x1b3),'body':_0x38003b,'description':_0x24ed3c(0x1af)+JSON['stringify'](_0x9d95a4[_0x24ed3c(0x1e5)])+_0x24ed3c(0x1fd)+_0x237aa7['str'](_0x24ed3c(0x1e6))+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x1b5979){const _0x45bd3b=a112_0x214841;validateAddInput(_0x1b5979);const _0x4f65de=await buildSafeAddPlan(_0x1b5979,![]),{plan:_0x188422,snapshot:_0x1189ef}=_0x4f65de,_0x47a5b9=_0x188422[_0x45bd3b(0x204)],_0xfea3a5=buildMenuLookupCommand(_0x1b5979[_0x45bd3b(0x215)]);await recheckAddSnapshot(_0x1b5979,_0x188422);let _0x1b9016;try{_0x1b9016=await createMenuEntity(_0x1b5979[_0x45bd3b(0x215)],_0x1b5979[_0x45bd3b(0x21a)],createBody(_0x47a5b9));}catch(_0x535412){const _0x5760ac=mapMenuApiError(_0x535412,_0x45bd3b(0x210));if(!isMenuResponseLoss(_0x535412)||_0x5760ac['code']===_0x45bd3b(0x200))throw externalLinkCreateFailure(_0x5760ac,_0x188422,{'stage':_0x45bd3b(0x1e1),'failed':{},'verification':{'status':_0x45bd3b(0x1f6),'lookupCommand':_0xfea3a5}});return recoverAfterResponseLoss(_0x1b5979,_0x4f65de,_0xfea3a5);}const _0x46f801=Number(_0x1b9016?.['id']),_0x4b9474=typeof _0x1b9016?.[_0x45bd3b(0x213)]===_0x45bd3b(0x1cb)?_0x1b9016[_0x45bd3b(0x213)]:'';if(!Number['isSafeInteger'](_0x46f801)||_0x46f801<=0x0||!_0x4b9474['trim']()){const _0x49771b=menuError(_0x45bd3b(0x1bf),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.',_0x45bd3b(0x1d1)+_0xfea3a5+_0x45bd3b(0x1d0));throw externalLinkCreateFailure(_0x49771b,_0x188422,{'stage':_0x45bd3b(0x20f),'succeeded':Number[_0x45bd3b(0x20c)](_0x46f801)&&_0x46f801>0x0?[{'id':_0x46f801,'created':!![]}]:[],'failed':{'createdId':Number[_0x45bd3b(0x20c)](_0x46f801)?_0x46f801:null,'generatedPathConfirmed':Boolean(_0x4b9474[_0x45bd3b(0x1a9)]())},'warnings':[_0x45bd3b(0x1a1)],'after':Number['isSafeInteger'](_0x46f801)&&_0x46f801>0x0?{..._0x47a5b9,'id':_0x46f801,'path':_0x4b9474}:_0x47a5b9,'verification':{'status':_0x45bd3b(0x1f6),'lookupCommand':_0xfea3a5,...Number['isSafeInteger'](_0x46f801)&&_0x46f801>0x0?{'targetId':_0x46f801}:{}}});}const _0xdccb83=await readAndVerifyCreatedMenu({'appCode':_0x1b5979[_0x45bd3b(0x215)],'cookie':_0x1b5979[_0x45bd3b(0x21a)],'plan':_0x188422,'afterPlan':_0x47a5b9,'createdId':_0x46f801,'expectedPath':_0x4b9474,'lookupCommand':_0xfea3a5,'recovered':![]});return creationSuccess(_0x188422,_0xdccb83['snapshot'],_0xdccb83[_0x45bd3b(0x1ef)],![]);}};function validateAddInput(_0x307026){const _0x37d1a1=a112_0x214841;if(!_0x307026[_0x37d1a1(0x20a)](_0x37d1a1(0x1e5))['trim']())throw CliErrors[_0x37d1a1(0x214)](_0x37d1a1(0x1e5));resolveExternalMenuType(_0x307026),validateExternalMenuUrl(_0x307026[_0x37d1a1(0x20a)]('url')),parseParentId(_0x307026,'parent-id'),validateSort(_0x307026);}function resolveExternalMenuType(_0x4c2b1f){const _0x791153=a112_0x214841,_0x2bbba2=_0x4c2b1f[_0x791153(0x20a)](_0x791153(0x1e6))[_0x791153(0x1a9)]();if(!_0x2bbba2)throw CliErrors[_0x791153(0x214)](_0x791153(0x1e6));const _0x5bd0dc=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x2bbba2];if(!_0x5bd0dc)throw menuError('menu_open_mode_invalid',_0x791153(0x221),_0x791153(0x1ba));return _0x5bd0dc;}async function buildAddPlan(_0x13a56d,_0x410ce8){const _0x14e70b=a112_0x214841,_0xa5655e=await fetchMutationSnapshot(_0x13a56d,_0x14e70b(0x210)),_0x48da9b=parseParentId(_0x13a56d,_0x14e70b(0x1f7))??null;if(_0x48da9b!=null)requireFolder(_0xa5655e,_0x48da9b);const _0x1ad4e0=validateSort(_0x13a56d),_0x2b477f=_0x1ad4e0??nextSiblingSort(_0xa5655e,_0x48da9b,_0x14e70b(0x1b2)),_0x1c971c=_0x13a56d[_0x14e70b(0x20a)]('label')[_0x14e70b(0x1a9)](),_0x1668fa=resolveExternalMenuType(_0x13a56d),_0x17558a=validateExternalMenuUrl(_0x13a56d['str'](_0x14e70b(0x1b0))),_0x31826c=Object[_0x14e70b(0x1b9)][_0x14e70b(0x1c5)][_0x14e70b(0x1c0)](_0x13a56d[_0x14e70b(0x1ea)],_0x14e70b(0x225))?_0x13a56d[_0x14e70b(0x211)](_0x14e70b(0x225)):!![],_0x5272d6={'id':null,'parentId':_0x48da9b,'label':_0x1c971c,'path':_0x14e70b(0x1f4),'url':_0x17558a,'type':_0x1668fa,'visible':_0x31826c,'sort':_0x2b477f},_0x463d38=buildMenuLookupCommand(_0x13a56d[_0x14e70b(0x215)]),_0x3cefe0=mutationResult({'operation':'add','selector':{'parentId':_0x48da9b,'type':_0x1668fa,'label':_0x1c971c,'url':_0x17558a},'before':null,'after':_0x5272d6,'dryRun':_0x410ce8,'backend':[{'method':_0x14e70b(0x203),'path':_0x14e70b(0x1b3)}],'plannedActions':[{'stage':_0x14e70b(0x1ff),'method':_0x14e70b(0x203),'path':'/smartapi/menu/create','body':createBody(_0x5272d6)}],'snapshotHash':_0xa5655e[_0x14e70b(0x21e)],'warnings':[_0x14e70b(0x1f1)],'verification':{'lookupCommand':_0x463d38}});return{'plan':_0x3cefe0,'snapshot':_0xa5655e};}async function buildSafeAddPlan(_0x1915ef,_0xea6a7c){try{return await buildAddPlan(_0x1915ef,_0xea6a7c);}catch(_0x5569c3){throw safeMenuAddError(_0x5569c3);}}async function recheckAddSnapshot(_0x3e13a7,_0x468c87){const _0xdd8d27=a112_0x214841;try{await recheckMutationSnapshot(_0x3e13a7,_0x468c87,'create\x20external\x20menu');}catch(_0x67720f){const _0x376110=getFailureRecord(_0x67720f);throw externalLinkCreateFailure(_0x67720f,_0x468c87,{'stage':_0xdd8d27(0x218),'failed':{..._0x376110?.[_0xdd8d27(0x21c)]?{'expectedSnapshotHash':_0x376110[_0xdd8d27(0x21c)]}:{},..._0x376110?.['currentSnapshotHash']?{'currentSnapshotHash':_0x376110['currentSnapshotHash']}:{}}});}}function createBody(_0x37dc0f){const _0xbecfdf=a112_0x214841;return{'parentId':toApiParentId(_0x37dc0f[_0xbecfdf(0x1ab)]),'label':String(_0x37dc0f[_0xbecfdf(0x1e5)]),'type':String(_0x37dc0f[_0xbecfdf(0x1a4)]),'url':String(_0x37dc0f['url']),'visible':Boolean(_0x37dc0f[_0xbecfdf(0x225)]),'sort':Number(_0x37dc0f[_0xbecfdf(0x1eb)]),'extend':{}};}function buildMenuLookupCommand(_0x2f547f){const _0x5d6b3d=a112_0x214841,_0x563006='\x27'+_0x2f547f[_0x5d6b3d(0x209)](/'/g,_0x5d6b3d(0x1fb))+'\x27';return _0x5d6b3d(0x1e4)+_0x563006+_0x5d6b3d(0x1d7);}async function recoverAfterResponseLoss(_0x363b77,_0x41c738,_0x29e62d){const _0x5f4617=a112_0x214841,{plan:_0x820d85,snapshot:_0x1203d0}=_0x41c738,_0x33de8c=_0x820d85[_0x5f4617(0x204)];let _0x554d6a;try{_0x554d6a=await fetchMenuSnapshot(_0x363b77[_0x5f4617(0x215)],_0x363b77[_0x5f4617(0x21a)]);}catch(_0x3d6518){throw recoveryRequiredFailure(_0x820d85,_0x29e62d,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x3a4881=_0x554d6a['menus']['filter'](_0x179338=>_0x179338[_0x5f4617(0x1ab)]===_0x33de8c[_0x5f4617(0x1ab)]&&_0x179338[_0x5f4617(0x1a4)]===_0x33de8c['type']&&_0x179338[_0x5f4617(0x1e5)]===_0x33de8c['label']&&_0x179338['url']===_0x33de8c['url']),_0x25e1fd=_0x3a4881[_0x5f4617(0x1f8)](_0x5c3aff=>!_0x1203d0[_0x5f4617(0x1c6)][_0x5f4617(0x207)](_0x5c3aff['id'])),_0x97548c=_0x3a4881[_0x5f4617(0x1f8)](_0x5e4aa0=>_0x1203d0[_0x5f4617(0x1c6)]['has'](_0x5e4aa0['id']));if(_0x3a4881['length']!==0x1||_0x25e1fd['length']!==0x1)throw recoveryRequiredFailure(_0x820d85,_0x29e62d,{'matchCount':_0x3a4881[_0x5f4617(0x1e0)],'newMatchCount':_0x25e1fd[_0x5f4617(0x1e0)],'preexistingMatchCount':_0x97548c['length']});const _0x1d5b74=_0x25e1fd[0x0];try{verifyCreatedFact(_0x1d5b74,_0x1d5b74['id'],_0x33de8c,null);}catch(_0x9ace7f){const _0x6799f7=_0x9ace7f instanceof Error&&'code'in _0x9ace7f?_0x9ace7f:menuError('menu_verification_failed','Recovered\x20menu\x20'+_0x1d5b74['id']+_0x5f4617(0x216),_0x5f4617(0x1d1)+_0x29e62d+_0x5f4617(0x206));throw externalLinkCreateFailure(_0x6799f7,_0x820d85,{'stage':_0x5f4617(0x20e),'succeeded':[{'id':_0x1d5b74['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x1d5b74['id'],'finalFactsConfirmed':![]},'after':_0x1d5b74,'warnings':[_0x5f4617(0x1a3)+_0x1d5b74['id']+_0x5f4617(0x1fc)],'verification':{'status':'failed','targetId':_0x1d5b74['id'],'recovered':!![],'lookupCommand':_0x29e62d}});}return creationSuccess(_0x820d85,_0x554d6a,_0x1d5b74,!![]);}function recoveryRequiredFailure(_0x383e4a,_0x490bc0,_0x449758){const _0x83e57=a112_0x214841,_0x831e86=menuError(_0x83e57(0x220),_0x83e57(0x1db),_0x83e57(0x1d1)+_0x490bc0+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x831e86,_0x383e4a,{'stage':_0x83e57(0x1ca),'failed':_0x449758,'warnings':[_0x83e57(0x1f5)],'verification':{'status':_0x83e57(0x1f6),..._0x449758,'lookupCommand':_0x490bc0}});}async function readAndVerifyCreatedMenu(_0x48b387){const _0x4b07c6=a112_0x214841;let _0x5e6070;try{_0x5e6070=await fetchMenuSnapshot(_0x48b387[_0x4b07c6(0x215)],_0x48b387[_0x4b07c6(0x21a)]);}catch(_0x288b84){const _0x1ff4ec=menuError(_0x4b07c6(0x1b5),_0x4b07c6(0x1a3)+_0x48b387[_0x4b07c6(0x202)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x4b07c6(0x1d1)+_0x48b387[_0x4b07c6(0x1ae)]+_0x4b07c6(0x1d5));throw externalLinkCreateFailure(_0x1ff4ec,_0x48b387[_0x4b07c6(0x1c4)],{'stage':_0x4b07c6(0x20e),'succeeded':[{'id':_0x48b387[_0x4b07c6(0x202)],'created':!![]}],'failed':{'id':_0x48b387[_0x4b07c6(0x202)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x48b387[_0x4b07c6(0x1c7)],'id':_0x48b387[_0x4b07c6(0x202)],'path':_0x48b387[_0x4b07c6(0x208)]},'warnings':['Menu\x20'+_0x48b387[_0x4b07c6(0x202)]+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x4b07c6(0x1f6),'targetId':_0x48b387['createdId'],'lookupCommand':_0x48b387['lookupCommand']}});}const _0x5530ad=_0x5e6070[_0x4b07c6(0x1c6)][_0x4b07c6(0x1e8)](_0x48b387[_0x4b07c6(0x202)]);try{if(!_0x5530ad)throw menuError(_0x4b07c6(0x1b5),_0x4b07c6(0x1cf)+_0x48b387['createdId']+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.',_0x4b07c6(0x1d1)+_0x48b387[_0x4b07c6(0x1ae)]+_0x4b07c6(0x1d5));verifyCreatedFact(_0x5530ad,_0x48b387['createdId'],_0x48b387[_0x4b07c6(0x1c7)],_0x48b387[_0x4b07c6(0x208)]);}catch(_0x5c4104){const _0x191bd7=_0x5c4104 instanceof Error&&_0x4b07c6(0x224)in _0x5c4104?_0x5c4104:menuError(_0x4b07c6(0x1b5),_0x4b07c6(0x1cf)+_0x48b387[_0x4b07c6(0x202)]+_0x4b07c6(0x1cc),_0x4b07c6(0x1d1)+_0x48b387[_0x4b07c6(0x1ae)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x191bd7,_0x48b387['plan'],{'stage':_0x4b07c6(0x20e),'succeeded':[{'id':_0x48b387[_0x4b07c6(0x202)],'created':!![]}],'failed':{'id':_0x48b387['createdId'],'finalFactsConfirmed':![]},'after':_0x5530ad??{..._0x48b387['afterPlan'],'id':_0x48b387[_0x4b07c6(0x202)],'path':_0x48b387[_0x4b07c6(0x208)]},'warnings':[_0x4b07c6(0x1a3)+_0x48b387[_0x4b07c6(0x202)]+_0x4b07c6(0x1e2)],'verification':{'status':_0x4b07c6(0x1f6),'targetId':_0x48b387[_0x4b07c6(0x202)],'recovered':_0x48b387[_0x4b07c6(0x1c8)],'lookupCommand':_0x48b387[_0x4b07c6(0x1ae)]}});}return{'snapshot':_0x5e6070,'fact':_0x5530ad};}function verifyCreatedFact(_0x446b5d,_0x3f8c5c,_0x1ce01b,_0x179a88){const _0x325302=a112_0x214841;if(!Number[_0x325302(0x20c)](_0x446b5d['id'])||_0x446b5d['id']<=0x0||_0x446b5d['id']!==_0x3f8c5c)throw menuError(_0x325302(0x1b5),_0x325302(0x1bc),_0x325302(0x1d9));const _0x25c5c3=[['parent',_0x446b5d[_0x325302(0x1ab)],_0x1ce01b[_0x325302(0x1ab)]],[_0x325302(0x1a4),_0x446b5d[_0x325302(0x1a4)],_0x1ce01b[_0x325302(0x1a4)]],[_0x325302(0x1e5),_0x446b5d[_0x325302(0x1e5)],_0x1ce01b[_0x325302(0x1e5)]],[_0x325302(0x1b8),_0x446b5d[_0x325302(0x1b0)],_0x1ce01b[_0x325302(0x1b0)]],[_0x325302(0x217),_0x446b5d[_0x325302(0x225)],_0x1ce01b[_0x325302(0x225)]],[_0x325302(0x1eb),_0x446b5d[_0x325302(0x1eb)],_0x1ce01b[_0x325302(0x1eb)]]];for(const [_0x5ce117,_0x3eb518,_0x5d2f0a]of _0x25c5c3){if(_0x3eb518!==_0x5d2f0a)throw menuError('menu_verification_failed',_0x325302(0x1cf)+_0x446b5d['id']+'\x20has\x20an\x20unexpected\x20'+_0x5ce117+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x446b5d[_0x325302(0x213)][_0x325302(0x1a9)]()||_0x179a88!==null&&_0x446b5d['path']!==_0x179a88)throw menuError(_0x325302(0x1b5),_0x325302(0x1cf)+_0x446b5d['id']+_0x325302(0x205),_0x325302(0x1a6));}function creationSuccess(_0x24de61,_0x3ceef5,_0x29721f,_0x52a119){const _0x151da5=a112_0x214841,_0x20ba27=mutationResult({..._0x24de61,'after':_0x29721f,'dryRun':![],'succeeded':[{'id':_0x29721f['id'],'created':!![],'recovered':_0x52a119}],'verification':{'checkedBy':_0x151da5(0x223),'snapshotHash':_0x3ceef5[_0x151da5(0x21e)],'targetId':_0x29721f['id'],'recovered':_0x52a119,'path':_0x29721f[_0x151da5(0x213)]}});return{'ok':!![],'message':_0x52a119?'Recovered\x20created\x20external\x20menu\x20'+_0x29721f['id']+_0x151da5(0x1dd):_0x151da5(0x1e9)+_0x29721f['id']+'.','data':{..._0x20ba27,'recovered':_0x52a119}};}function externalLinkCreateFailure(_0x18014a,_0xb683b3,_0x5122b0){const _0x1e2639=a112_0x214841;return menuFailure(safeMenuAddError(_0x18014a),redactFailurePlan(_0xb683b3),{..._0x5122b0,'succeeded':_0x5122b0[_0x1e2639(0x1d6)]?.['map'](redactFailureRecord),'failed':_0x5122b0[_0x1e2639(0x1f6)]?redactFailureRecord(_0x5122b0[_0x1e2639(0x1f6)]):undefined,'verification':_0x5122b0[_0x1e2639(0x20e)]?redactFailureRecord(_0x5122b0[_0x1e2639(0x20e)]):undefined,'after':_0x5122b0[_0x1e2639(0x204)]===undefined?undefined:redactFailureValue(_0x5122b0[_0x1e2639(0x204)])});}function redactFailurePlan(_0x306884){const _0x6ed367=a112_0x214841;return{..._0x306884,'selector':redactFailureRecord(_0x306884['selector']),'before':redactFailureValue(_0x306884[_0x6ed367(0x1dc)]),'after':redactFailureValue(_0x306884[_0x6ed367(0x204)]),'plannedActions':_0x306884[_0x6ed367(0x1c1)]?.[_0x6ed367(0x1fa)](_0x253bc0=>({..._0x253bc0,'body':redactFailureRecord(_0x253bc0[_0x6ed367(0x1cd)])})),'succeeded':_0x306884[_0x6ed367(0x1d6)][_0x6ed367(0x1fa)](redactFailureRecord),'failed':_0x306884[_0x6ed367(0x1f6)][_0x6ed367(0x1fa)](redactFailureRecord),'verification':_0x306884['verification']?redactFailureRecord(_0x306884[_0x6ed367(0x20e)]):undefined};}function redactFailureRecord(_0x3ab6f4){return redactFailureValue(_0x3ab6f4);}function redactFailureValue(_0xbed235,_0x31e591=''){const _0x490202=a112_0x214841,_0x85b51d=_0x31e591['toLowerCase']()[_0x490202(0x209)](/[^a-z0-9]/g,'');if([_0x490202(0x1c3),_0x490202(0x1d8),_0x490202(0x1ed),_0x490202(0x1a7)]['includes'](_0x85b51d))return'<redacted>';if(Array[_0x490202(0x222)](_0xbed235))return _0xbed235[_0x490202(0x1fa)](_0x35b2ba=>redactFailureValue(_0x35b2ba));if(_0xbed235&&typeof _0xbed235===_0x490202(0x1c2))return Object[_0x490202(0x1ad)](Object[_0x490202(0x1ac)](_0xbed235)[_0x490202(0x1fa)](([_0x2f459a,_0x1554cd])=>[_0x2f459a,redactFailureValue(_0x1554cd,_0x2f459a)]));return _0xbed235;}function safeMenuAddError(_0x3e79a7){const _0x372943=a112_0x214841,_0x121a3b=_0x3e79a7 instanceof CliError?_0x3e79a7[_0x372943(0x224)]:'menu_mutation_failed';switch(_0x121a3b){case'menu_state_drift':return menuError(_0x121a3b,_0x372943(0x1ce),_0x372943(0x1bb));case _0x372943(0x200):return menuError(_0x121a3b,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x372943(0x1bf):return menuError(_0x121a3b,_0x372943(0x1df),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x372943(0x1b5):return menuError(_0x121a3b,_0x372943(0x212),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_create_recovery_required':return menuError(_0x121a3b,_0x372943(0x1d2),_0x372943(0x1f2));case'menu_mutation_failed':case _0x372943(0x1c9):case _0x372943(0x1d4):case _0x372943(0x1a8):case'menu_sort_overflow':return menuError(_0x121a3b,_0x372943(0x1da),_0x372943(0x1fe));default:return menuError(_0x372943(0x1f0),_0x372943(0x1da),_0x372943(0x1fe));}}function a112_0xd308(){const _0x262daf=['createdId','POST','after','\x20has\x20an\x20unexpected\x20generated\x20path.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','has','expectedPath','replace','str','new-window','isSafeInteger','Whether\x20the\x20menu\x20is\x20visible','verification','create-response-validation','create\x20external\x20menu','bool','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','path','flagMissing','appCode','\x20could\x20not\x20be\x20verified.','visibility','pre-write-recheck','link','cookie','menu_url_credentials_forbidden','expectedSnapshotHash','3025818hVqBjJ','hash','302358pvnWKY','menu_create_recovery_required','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','isArray','menu\x20list','code','visible','https:','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','30uofqZE','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','95770xeDnlI','Menu\x20','type','write','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','rawerror','menu_sort_invalid','trim','417711bkhoNX','parentId','entries','fromEntries','lookupCommand','Would\x20create\x20external\x20website\x20link\x20menu\x20','url','external-link-create','menu','/smartapi/menu/create','How\x20to\x20open\x20the\x20external\x20website','menu_verification_failed','protocol','8kzCbkA','URL','prototype','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','58148nrybPN','Create\x20an\x20external\x20website\x20link\x20menu','menu_create_response_invalid','call','plannedActions','object','cause','plan','hasOwnProperty','byId','afterPlan','recovered','menu_not_found','create-recovery','string','\x20failed\x20final\x20verification.','body','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Created\x20menu\x20','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Run\x20','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','menu_parent_not_folder','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','succeeded','\x20--format\x20compress','causemessage','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','External\x20menu\x20creation\x20failed.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','before','\x20after\x20response\x20loss.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','length','create','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','menu_url_https_required','rabetbase\x20menu\x20list\x20--appcode\x20','label','open-mode','data','get','Created\x20external\x20menu\x20','rawFlags','sort','854105lolMcU','readbackerror','511122iXntpa','fact','menu_mutation_failed','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','boolean','<platform-generated>','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','failed','parent-id','filter','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','map','\x27\x5c\x27\x27','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','\x20with\x20','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','create-menu','menu_permission_denied','menu_url_invalid'];a112_0xd308=function(){return _0x262daf;};return a112_0xd308();}function getFailureRecord(_0x559f5d){const _0x460fac=a112_0x214841;if(!(_0x559f5d instanceof Error)||!(_0x460fac(0x1e7)in _0x559f5d))return undefined;const _0xd9a78=_0x559f5d['data'];if(!_0xd9a78||typeof _0xd9a78!=='object')return undefined;const _0x26825c=_0xd9a78[_0x460fac(0x1f6)];if(!Array['isArray'](_0x26825c)||!_0x26825c[0x0]||typeof _0x26825c[0x0]!==_0x460fac(0x1c2))return undefined;return _0x26825c[0x0];}
1
+ const a113_0x5ccb5e=a113_0x5dc1;(function(_0x10896e,_0x44f0f4){const _0x34264b=a113_0x5dc1,_0xc9ef7a=_0x10896e();while(!![]){try{const _0x5dec81=-parseInt(_0x34264b(0x184))/0x1*(parseInt(_0x34264b(0x1b9))/0x2)+parseInt(_0x34264b(0x168))/0x3*(-parseInt(_0x34264b(0x1a4))/0x4)+-parseInt(_0x34264b(0x16b))/0x5+-parseInt(_0x34264b(0x1ba))/0x6*(parseInt(_0x34264b(0x187))/0x7)+-parseInt(_0x34264b(0x1bd))/0x8+parseInt(_0x34264b(0x1c4))/0x9*(-parseInt(_0x34264b(0x183))/0xa)+parseInt(_0x34264b(0x15e))/0xb;if(_0x5dec81===_0x44f0f4)break;else _0xc9ef7a['push'](_0xc9ef7a['shift']());}catch(_0x5f1b8d){_0xc9ef7a['push'](_0xc9ef7a['shift']());}}}(a113_0x3514,0x8a998));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':a113_0x5ccb5e(0x1e0),'new-window':a113_0x5ccb5e(0x1dc)};export function validateExternalMenuUrl(_0x12f2f3){const _0x459a96=a113_0x5ccb5e,_0x5aae9d=_0x12f2f3[_0x459a96(0x194)]();let _0xb847e2;try{_0xb847e2=new URL(_0x5aae9d);}catch{throw menuError('menu_url_invalid',_0x459a96(0x157),'Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0xb847e2[_0x459a96(0x1be)]!==_0x459a96(0x14e))throw menuError(_0x459a96(0x15c),_0x459a96(0x18f),_0x459a96(0x1c6));if(_0xb847e2[_0x459a96(0x151)]||_0xb847e2[_0x459a96(0x173)])throw menuError('menu_url_credentials_forbidden',_0x459a96(0x1ae),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x5aae9d;}export const menuExternalLinkCreate={'service':a113_0x5ccb5e(0x166),'command':a113_0x5ccb5e(0x190),'description':a113_0x5ccb5e(0x158),'risk':a113_0x5ccb5e(0x1ad),'structuredErrors':!![],'flags':[{'name':a113_0x5ccb5e(0x186),'type':a113_0x5ccb5e(0x162),'required':!![],'description':a113_0x5ccb5e(0x181)},{'name':'open-mode','type':'string','required':!![],'enum':[a113_0x5ccb5e(0x1a5),a113_0x5ccb5e(0x1cd)],'description':a113_0x5ccb5e(0x19a)},{'name':a113_0x5ccb5e(0x156),'type':'string','required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':'boolean','default':!![],'description':a113_0x5ccb5e(0x1c1)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x15c367){validateAddInput(_0x15c367);},async 'dryRun'(_0x5ed1e2){const _0x22ee1a=a113_0x5ccb5e;validateAddInput(_0x5ed1e2);const {plan:_0x55c320}=await buildSafeAddPlan(_0x5ed1e2,!![]),_0x34fefe=_0x55c320[_0x22ee1a(0x17c)],_0x2aeec5=createBody(_0x34fefe);return menuDryRunResult(_0x55c320,{'method':_0x22ee1a(0x1d7),'url':_0x22ee1a(0x1d4),'body':_0x2aeec5,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON['stringify'](_0x34fefe[_0x22ee1a(0x186)])+_0x22ee1a(0x189)+_0x5ed1e2[_0x22ee1a(0x15d)](_0x22ee1a(0x197))+_0x22ee1a(0x1bb)});},async 'execute'(_0x180a41){const _0x2d8ef3=a113_0x5ccb5e;validateAddInput(_0x180a41);const _0x99d334=await buildSafeAddPlan(_0x180a41,![]),{plan:_0x3736d3,snapshot:_0x5bcbf4}=_0x99d334,_0x57f5a2=_0x3736d3['after'],_0x36c251=buildMenuLookupCommand(_0x180a41[_0x2d8ef3(0x19f)]);await recheckAddSnapshot(_0x180a41,_0x3736d3);let _0x105a76;try{_0x105a76=await createMenuEntity(_0x180a41[_0x2d8ef3(0x19f)],_0x180a41[_0x2d8ef3(0x16f)],createBody(_0x57f5a2));}catch(_0x236347){const _0x2c4441=mapMenuApiError(_0x236347,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x236347)||_0x2c4441[_0x2d8ef3(0x1d3)]===_0x2d8ef3(0x1d9))throw externalLinkCreateFailure(_0x2c4441,_0x3736d3,{'stage':_0x2d8ef3(0x18d),'failed':{},'verification':{'status':_0x2d8ef3(0x1a1),'lookupCommand':_0x36c251}});return recoverAfterResponseLoss(_0x180a41,_0x99d334,_0x36c251);}const _0xac216=Number(_0x105a76?.['id']),_0x21c452=typeof _0x105a76?.[_0x2d8ef3(0x1c9)]===_0x2d8ef3(0x162)?_0x105a76['path']:'';if(!Number['isSafeInteger'](_0xac216)||_0xac216<=0x0||!_0x21c452[_0x2d8ef3(0x194)]()){const _0xa0e48b=menuError(_0x2d8ef3(0x160),_0x2d8ef3(0x18b),'Run\x20'+_0x36c251+_0x2d8ef3(0x153));throw externalLinkCreateFailure(_0xa0e48b,_0x3736d3,{'stage':_0x2d8ef3(0x182),'succeeded':Number[_0x2d8ef3(0x174)](_0xac216)&&_0xac216>0x0?[{'id':_0xac216,'created':!![]}]:[],'failed':{'createdId':Number[_0x2d8ef3(0x174)](_0xac216)?_0xac216:null,'generatedPathConfirmed':Boolean(_0x21c452[_0x2d8ef3(0x194)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number['isSafeInteger'](_0xac216)&&_0xac216>0x0?{..._0x57f5a2,'id':_0xac216,'path':_0x21c452}:_0x57f5a2,'verification':{'status':_0x2d8ef3(0x1a1),'lookupCommand':_0x36c251,...Number[_0x2d8ef3(0x174)](_0xac216)&&_0xac216>0x0?{'targetId':_0xac216}:{}}});}const _0x2c2055=await readAndVerifyCreatedMenu({'appCode':_0x180a41[_0x2d8ef3(0x19f)],'cookie':_0x180a41[_0x2d8ef3(0x16f)],'plan':_0x3736d3,'afterPlan':_0x57f5a2,'createdId':_0xac216,'expectedPath':_0x21c452,'lookupCommand':_0x36c251,'recovered':![]});return creationSuccess(_0x3736d3,_0x2c2055[_0x2d8ef3(0x1d8)],_0x2c2055['fact'],![]);}};function validateAddInput(_0x4ad396){const _0x475668=a113_0x5ccb5e;if(!_0x4ad396[_0x475668(0x15d)](_0x475668(0x186))[_0x475668(0x194)]())throw CliErrors['flagMissing'](_0x475668(0x186));resolveExternalMenuType(_0x4ad396),validateExternalMenuUrl(_0x4ad396[_0x475668(0x15d)](_0x475668(0x156))),parseParentId(_0x4ad396,_0x475668(0x1aa)),validateSort(_0x4ad396);}function resolveExternalMenuType(_0x6ea0){const _0x1d44bf=a113_0x5ccb5e,_0x241e9c=_0x6ea0[_0x1d44bf(0x15d)]('open-mode')[_0x1d44bf(0x194)]();if(!_0x241e9c)throw CliErrors[_0x1d44bf(0x19d)](_0x1d44bf(0x197));const _0x12bc9c=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x241e9c];if(!_0x12bc9c)throw menuError(_0x1d44bf(0x19b),_0x1d44bf(0x150),_0x1d44bf(0x17d));return _0x12bc9c;}async function buildAddPlan(_0x3c2e9a,_0x5a7fb4){const _0x101468=a113_0x5ccb5e,_0x38a707=await fetchMutationSnapshot(_0x3c2e9a,_0x101468(0x1a3)),_0x576437=parseParentId(_0x3c2e9a,_0x101468(0x1aa))??null;if(_0x576437!=null)requireFolder(_0x38a707,_0x576437);const _0x45798b=validateSort(_0x3c2e9a),_0x228244=_0x45798b??nextSiblingSort(_0x38a707,_0x576437,_0x101468(0x166)),_0x185276=_0x3c2e9a['str']('label')['trim'](),_0x2bb3ca=resolveExternalMenuType(_0x3c2e9a),_0x177dab=validateExternalMenuUrl(_0x3c2e9a[_0x101468(0x15d)]('url')),_0x354f94=Object[_0x101468(0x1a8)][_0x101468(0x1a9)][_0x101468(0x167)](_0x3c2e9a[_0x101468(0x152)],_0x101468(0x1de))?_0x3c2e9a[_0x101468(0x1ab)](_0x101468(0x1de)):!![],_0x563e25={'id':null,'parentId':_0x576437,'label':_0x185276,'path':_0x101468(0x1c7),'url':_0x177dab,'type':_0x2bb3ca,'visible':_0x354f94,'sort':_0x228244},_0x550d06=buildMenuLookupCommand(_0x3c2e9a[_0x101468(0x19f)]),_0x45f70d=mutationResult({'operation':_0x101468(0x1d6),'selector':{'parentId':_0x576437,'type':_0x2bb3ca,'label':_0x185276,'url':_0x177dab},'before':null,'after':_0x563e25,'dryRun':_0x5a7fb4,'backend':[{'method':'POST','path':_0x101468(0x1d4)}],'plannedActions':[{'stage':_0x101468(0x19c),'method':_0x101468(0x1d7),'path':'/smartapi/menu/create','body':createBody(_0x563e25)}],'snapshotHash':_0x38a707['hash'],'warnings':[_0x101468(0x1cf)],'verification':{'lookupCommand':_0x550d06}});return{'plan':_0x45f70d,'snapshot':_0x38a707};}async function buildSafeAddPlan(_0x36a821,_0x49428a){try{return await buildAddPlan(_0x36a821,_0x49428a);}catch(_0x336e3a){throw safeMenuAddError(_0x336e3a);}}async function recheckAddSnapshot(_0x4e3a20,_0x53e856){const _0x1b188d=a113_0x5ccb5e;try{await recheckMutationSnapshot(_0x4e3a20,_0x53e856,'create\x20external\x20menu');}catch(_0x484113){const _0x1987a0=getFailureRecord(_0x484113);throw externalLinkCreateFailure(_0x484113,_0x53e856,{'stage':_0x1b188d(0x188),'failed':{..._0x1987a0?.[_0x1b188d(0x1db)]?{'expectedSnapshotHash':_0x1987a0['expectedSnapshotHash']}:{},..._0x1987a0?.[_0x1b188d(0x196)]?{'currentSnapshotHash':_0x1987a0[_0x1b188d(0x196)]}:{}}});}}function createBody(_0x27221a){const _0x3969ff=a113_0x5ccb5e;return{'parentId':toApiParentId(_0x27221a['parentId']),'label':String(_0x27221a[_0x3969ff(0x186)]),'type':String(_0x27221a[_0x3969ff(0x169)]),'url':String(_0x27221a[_0x3969ff(0x156)]),'visible':Boolean(_0x27221a[_0x3969ff(0x1de)]),'sort':Number(_0x27221a['sort']),'extend':{}};}function buildMenuLookupCommand(_0x3aa7b9){const _0x3bc76b=a113_0x5ccb5e,_0x436c92='\x27'+_0x3aa7b9[_0x3bc76b(0x1c2)](/'/g,_0x3bc76b(0x15a))+'\x27';return _0x3bc76b(0x161)+_0x436c92+_0x3bc76b(0x19e);}async function recoverAfterResponseLoss(_0xcff84,_0x53509d,_0x513547){const _0x2a438f=a113_0x5ccb5e,{plan:_0x250efc,snapshot:_0xbfdee3}=_0x53509d,_0x5c5861=_0x250efc[_0x2a438f(0x17c)];let _0x3feed8;try{_0x3feed8=await fetchMenuSnapshot(_0xcff84[_0x2a438f(0x19f)],_0xcff84['cookie']);}catch(_0x28258d){throw recoveryRequiredFailure(_0x250efc,_0x513547,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x4b0e82=_0x3feed8[_0x2a438f(0x192)][_0x2a438f(0x191)](_0x2acae2=>_0x2acae2[_0x2a438f(0x1c8)]===_0x5c5861[_0x2a438f(0x1c8)]&&_0x2acae2[_0x2a438f(0x169)]===_0x5c5861[_0x2a438f(0x169)]&&_0x2acae2[_0x2a438f(0x186)]===_0x5c5861[_0x2a438f(0x186)]&&_0x2acae2['url']===_0x5c5861[_0x2a438f(0x156)]),_0x5200ef=_0x4b0e82[_0x2a438f(0x191)](_0x2aa6c8=>!_0xbfdee3[_0x2a438f(0x1b6)]['has'](_0x2aa6c8['id'])),_0x510b70=_0x4b0e82[_0x2a438f(0x191)](_0x48f458=>_0xbfdee3[_0x2a438f(0x1b6)][_0x2a438f(0x1dd)](_0x48f458['id']));if(_0x4b0e82[_0x2a438f(0x1d5)]!==0x1||_0x5200ef[_0x2a438f(0x1d5)]!==0x1)throw recoveryRequiredFailure(_0x250efc,_0x513547,{'matchCount':_0x4b0e82[_0x2a438f(0x1d5)],'newMatchCount':_0x5200ef['length'],'preexistingMatchCount':_0x510b70['length']});const _0x425fb5=_0x5200ef[0x0];try{verifyCreatedFact(_0x425fb5,_0x425fb5['id'],_0x5c5861,null);}catch(_0x5da7b4){const _0x3e14e0=_0x5da7b4 instanceof Error&&_0x2a438f(0x1d3)in _0x5da7b4?_0x5da7b4:menuError(_0x2a438f(0x17a),_0x2a438f(0x1b8)+_0x425fb5['id']+_0x2a438f(0x155),_0x2a438f(0x163)+_0x513547+_0x2a438f(0x1ce));throw externalLinkCreateFailure(_0x3e14e0,_0x250efc,{'stage':_0x2a438f(0x1b2),'succeeded':[{'id':_0x425fb5['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x425fb5['id'],'finalFactsConfirmed':![]},'after':_0x425fb5,'warnings':[_0x2a438f(0x16e)+_0x425fb5['id']+_0x2a438f(0x1c5)],'verification':{'status':_0x2a438f(0x1a1),'targetId':_0x425fb5['id'],'recovered':!![],'lookupCommand':_0x513547}});}return creationSuccess(_0x250efc,_0x3feed8,_0x425fb5,!![]);}function recoveryRequiredFailure(_0x1c27d2,_0x44f6e5,_0x486983){const _0x176eee=a113_0x5ccb5e,_0x115e21=menuError('menu_create_recovery_required',_0x176eee(0x18e),_0x176eee(0x163)+_0x44f6e5+_0x176eee(0x164));return externalLinkCreateFailure(_0x115e21,_0x1c27d2,{'stage':_0x176eee(0x193),'failed':_0x486983,'warnings':[_0x176eee(0x1b4)],'verification':{'status':_0x176eee(0x1a1),..._0x486983,'lookupCommand':_0x44f6e5}});}function a113_0x3514(){const _0x7d1792=['<platform-generated>','parentId','path','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','selector','new-window','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','isArray','lookupCommand','sort','code','/smartapi/menu/create','length','add','POST','snapshot','menu_permission_denied','object','expectedSnapshotHash','link','has','visible','\x20failed\x20final\x20verification.','iframe','parent','https:','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','username','rawFlags','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20could\x20not\x20be\x20verified.','url','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Create\x20an\x20external\x20website\x20link\x20menu','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','\x27\x5c\x27\x27','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','menu_url_https_required','str','36839528tQakDH','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','menu_create_response_invalid','rabetbase\x20menu\x20list\x20--appcode\x20','string','Run\x20','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','data','menu','call','147JtWQrU','type','body','4889345avowuG','menu_mutation_failed','External\x20menu\x20creation\x20failed.','Menu\x20','cookie','succeeded','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','causemessage','password','isSafeInteger','expectedPath','URL','cause','afterPlan','hash','menu_verification_failed','get','after','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','menu_parent_not_folder','createdId','Recovered\x20created\x20external\x20menu\x20','Menu\x20label','create-response-validation','4650TTXFin','2958xarxpe','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','label','1923586fLDgky','pre-write-recheck','\x20with\x20','plannedActions','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','create','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','external-link-create','filter','menus','create-recovery','trim','plan','currentSnapshotHash','open-mode','before','fromEntries','How\x20to\x20open\x20the\x20external\x20website','menu_open_mode_invalid','create-menu','flagMissing','\x20--format\x20compress','appCode','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','failed','toLowerCase','create\x20external\x20menu','21652KdcqPx','embedded','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','prototype','hasOwnProperty','parent-id','bool','menu\x20list','write','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','\x20after\x20response\x20loss.','Created\x20external\x20menu\x20','\x20has\x20an\x20unexpected\x20','verification','Created\x20menu\x20','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','menu_create_recovery_required','byId','map','Recovered\x20menu\x20','326WsJytR','18pIoMor','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','recovered','1753080BvmnhS','protocol','menu_not_found','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Whether\x20the\x20menu\x20is\x20visible','replace','includes','243HzwwWU','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','Provide\x20an\x20HTTPS\x20URL.'];a113_0x3514=function(){return _0x7d1792;};return a113_0x3514();}function a113_0x5dc1(_0x56b465,_0x19e8eb){_0x56b465=_0x56b465-0x14d;const _0x35144a=a113_0x3514();let _0x5dc18d=_0x35144a[_0x56b465];return _0x5dc18d;}async function readAndVerifyCreatedMenu(_0xd3a823){const _0x4a341c=a113_0x5ccb5e;let _0x3f8447;try{_0x3f8447=await fetchMenuSnapshot(_0xd3a823['appCode'],_0xd3a823['cookie']);}catch(_0x5745c5){const _0x27944a=menuError('menu_verification_failed',_0x4a341c(0x16e)+_0xd3a823[_0x4a341c(0x17f)]+_0x4a341c(0x1cb),_0x4a341c(0x163)+_0xd3a823['lookupCommand']+_0x4a341c(0x185));throw externalLinkCreateFailure(_0x27944a,_0xd3a823[_0x4a341c(0x195)],{'stage':_0x4a341c(0x1b2),'succeeded':[{'id':_0xd3a823[_0x4a341c(0x17f)],'created':!![]}],'failed':{'id':_0xd3a823['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0xd3a823['afterPlan'],'id':_0xd3a823[_0x4a341c(0x17f)],'path':_0xd3a823[_0x4a341c(0x175)]},'warnings':['Menu\x20'+_0xd3a823[_0x4a341c(0x17f)]+_0x4a341c(0x14f)],'verification':{'status':_0x4a341c(0x1a1),'targetId':_0xd3a823[_0x4a341c(0x17f)],'lookupCommand':_0xd3a823[_0x4a341c(0x1d1)]}});}const _0x5046be=_0x3f8447[_0x4a341c(0x1b6)][_0x4a341c(0x17b)](_0xd3a823[_0x4a341c(0x17f)]);try{if(!_0x5046be)throw menuError(_0x4a341c(0x17a),_0x4a341c(0x1b3)+_0xd3a823['createdId']+_0x4a341c(0x1a7),_0x4a341c(0x163)+_0xd3a823[_0x4a341c(0x1d1)]+_0x4a341c(0x185));verifyCreatedFact(_0x5046be,_0xd3a823[_0x4a341c(0x17f)],_0xd3a823[_0x4a341c(0x178)],_0xd3a823[_0x4a341c(0x175)]);}catch(_0x5781f4){const _0x27ed31=_0x5781f4 instanceof Error&&_0x4a341c(0x1d3)in _0x5781f4?_0x5781f4:menuError(_0x4a341c(0x17a),_0x4a341c(0x1b3)+_0xd3a823[_0x4a341c(0x17f)]+_0x4a341c(0x1df),_0x4a341c(0x163)+_0xd3a823['lookupCommand']+_0x4a341c(0x185));throw externalLinkCreateFailure(_0x27ed31,_0xd3a823['plan'],{'stage':_0x4a341c(0x1b2),'succeeded':[{'id':_0xd3a823[_0x4a341c(0x17f)],'created':!![]}],'failed':{'id':_0xd3a823[_0x4a341c(0x17f)],'finalFactsConfirmed':![]},'after':_0x5046be??{..._0xd3a823[_0x4a341c(0x178)],'id':_0xd3a823[_0x4a341c(0x17f)],'path':_0xd3a823[_0x4a341c(0x175)]},'warnings':[_0x4a341c(0x16e)+_0xd3a823[_0x4a341c(0x17f)]+_0x4a341c(0x159)],'verification':{'status':_0x4a341c(0x1a1),'targetId':_0xd3a823[_0x4a341c(0x17f)],'recovered':_0xd3a823[_0x4a341c(0x1bc)],'lookupCommand':_0xd3a823['lookupCommand']}});}return{'snapshot':_0x3f8447,'fact':_0x5046be};}function verifyCreatedFact(_0x2d9ee5,_0x1ba822,_0x50a7cb,_0x1be2d1){const _0x366be9=a113_0x5ccb5e;if(!Number[_0x366be9(0x174)](_0x2d9ee5['id'])||_0x2d9ee5['id']<=0x0||_0x2d9ee5['id']!==_0x1ba822)throw menuError(_0x366be9(0x17a),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x366be9(0x1a0));const _0x2e2724=[[_0x366be9(0x14d),_0x2d9ee5[_0x366be9(0x1c8)],_0x50a7cb[_0x366be9(0x1c8)]],[_0x366be9(0x169),_0x2d9ee5[_0x366be9(0x169)],_0x50a7cb[_0x366be9(0x169)]],[_0x366be9(0x186),_0x2d9ee5[_0x366be9(0x186)],_0x50a7cb[_0x366be9(0x186)]],[_0x366be9(0x176),_0x2d9ee5[_0x366be9(0x156)],_0x50a7cb['url']],['visibility',_0x2d9ee5[_0x366be9(0x1de)],_0x50a7cb[_0x366be9(0x1de)]],['sort',_0x2d9ee5[_0x366be9(0x1d2)],_0x50a7cb[_0x366be9(0x1d2)]]];for(const [_0x41c3c1,_0x4d8f64,_0x4b90d6]of _0x2e2724){if(_0x4d8f64!==_0x4b90d6)throw menuError('menu_verification_failed',_0x366be9(0x1b3)+_0x2d9ee5['id']+_0x366be9(0x1b1)+_0x41c3c1+'.',_0x366be9(0x171));}if(!_0x2d9ee5[_0x366be9(0x1c9)][_0x366be9(0x194)]()||_0x1be2d1!==null&&_0x2d9ee5[_0x366be9(0x1c9)]!==_0x1be2d1)throw menuError(_0x366be9(0x17a),_0x366be9(0x1b3)+_0x2d9ee5['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x366be9(0x171));}function creationSuccess(_0x1785f8,_0x525fea,_0x2ab380,_0x3836fa){const _0x45eaab=a113_0x5ccb5e,_0x410e68=mutationResult({..._0x1785f8,'after':_0x2ab380,'dryRun':![],'succeeded':[{'id':_0x2ab380['id'],'created':!![],'recovered':_0x3836fa}],'verification':{'checkedBy':_0x45eaab(0x1ac),'snapshotHash':_0x525fea[_0x45eaab(0x179)],'targetId':_0x2ab380['id'],'recovered':_0x3836fa,'path':_0x2ab380[_0x45eaab(0x1c9)]}});return{'ok':!![],'message':_0x3836fa?_0x45eaab(0x180)+_0x2ab380['id']+_0x45eaab(0x1af):_0x45eaab(0x1b0)+_0x2ab380['id']+'.','data':{..._0x410e68,'recovered':_0x3836fa}};}function externalLinkCreateFailure(_0x31343c,_0x371db1,_0xb8022f){const _0x4e67d4=a113_0x5ccb5e;return menuFailure(safeMenuAddError(_0x31343c),redactFailurePlan(_0x371db1),{..._0xb8022f,'succeeded':_0xb8022f[_0x4e67d4(0x170)]?.['map'](redactFailureRecord),'failed':_0xb8022f[_0x4e67d4(0x1a1)]?redactFailureRecord(_0xb8022f[_0x4e67d4(0x1a1)]):undefined,'verification':_0xb8022f[_0x4e67d4(0x1b2)]?redactFailureRecord(_0xb8022f[_0x4e67d4(0x1b2)]):undefined,'after':_0xb8022f[_0x4e67d4(0x17c)]===undefined?undefined:redactFailureValue(_0xb8022f[_0x4e67d4(0x17c)])});}function redactFailurePlan(_0x101afc){const _0x250620=a113_0x5ccb5e;return{..._0x101afc,'selector':redactFailureRecord(_0x101afc[_0x250620(0x1cc)]),'before':redactFailureValue(_0x101afc[_0x250620(0x198)]),'after':redactFailureValue(_0x101afc[_0x250620(0x17c)]),'plannedActions':_0x101afc[_0x250620(0x18a)]?.[_0x250620(0x1b7)](_0x4244c4=>({..._0x4244c4,'body':redactFailureRecord(_0x4244c4[_0x250620(0x16a)])})),'succeeded':_0x101afc[_0x250620(0x170)][_0x250620(0x1b7)](redactFailureRecord),'failed':_0x101afc['failed'][_0x250620(0x1b7)](redactFailureRecord),'verification':_0x101afc['verification']?redactFailureRecord(_0x101afc[_0x250620(0x1b2)]):undefined};}function redactFailureRecord(_0x55aa21){return redactFailureValue(_0x55aa21);}function redactFailureValue(_0x1dd2a1,_0x331cc4=''){const _0x167221=a113_0x5ccb5e,_0x2b4176=_0x331cc4[_0x167221(0x1a2)]()[_0x167221(0x1c2)](/[^a-z0-9]/g,'');if([_0x167221(0x177),_0x167221(0x172),'readbackerror','rawerror'][_0x167221(0x1c3)](_0x2b4176))return'<redacted>';if(Array[_0x167221(0x1d0)](_0x1dd2a1))return _0x1dd2a1[_0x167221(0x1b7)](_0x3158e3=>redactFailureValue(_0x3158e3));if(_0x1dd2a1&&typeof _0x1dd2a1===_0x167221(0x1da))return Object[_0x167221(0x199)](Object['entries'](_0x1dd2a1)[_0x167221(0x1b7)](([_0x38f925,_0x185abb])=>[_0x38f925,redactFailureValue(_0x185abb,_0x38f925)]));return _0x1dd2a1;}function safeMenuAddError(_0x30994b){const _0x13f574=a113_0x5ccb5e,_0x4e7493=_0x30994b instanceof CliError?_0x30994b[_0x13f574(0x1d3)]:_0x13f574(0x16c);switch(_0x4e7493){case'menu_state_drift':return menuError(_0x4e7493,_0x13f574(0x1c0),_0x13f574(0x1ca));case'menu_permission_denied':return menuError(_0x4e7493,_0x13f574(0x15b),_0x13f574(0x18c));case _0x13f574(0x160):return menuError(_0x4e7493,_0x13f574(0x15f),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_verification_failed':return menuError(_0x4e7493,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.',_0x13f574(0x1a6));case _0x13f574(0x1b5):return menuError(_0x4e7493,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x13f574(0x16c):case _0x13f574(0x1bf):case _0x13f574(0x17e):case'menu_sort_invalid':case'menu_sort_overflow':return menuError(_0x4e7493,_0x13f574(0x16d),_0x13f574(0x154));default:return menuError('menu_mutation_failed',_0x13f574(0x16d),_0x13f574(0x154));}}function getFailureRecord(_0x281388){const _0x5b65c7=a113_0x5ccb5e;if(!(_0x281388 instanceof Error)||!(_0x5b65c7(0x165)in _0x281388))return undefined;const _0x3a9f51=_0x281388[_0x5b65c7(0x165)];if(!_0x3a9f51||typeof _0x3a9f51!==_0x5b65c7(0x1da))return undefined;const _0x1e8e9a=_0x3a9f51[_0x5b65c7(0x1a1)];if(!Array[_0x5b65c7(0x1d0)](_0x1e8e9a)||!_0x1e8e9a[0x0]||typeof _0x1e8e9a[0x0]!==_0x5b65c7(0x1da))return undefined;return _0x1e8e9a[0x0];}
@@ -1 +1 @@
1
- const a113_0xb3161=a113_0x37bd;(function(_0x11f9a1,_0x3196a8){const _0xce7f24=a113_0x37bd,_0x5603d3=_0x11f9a1();while(!![]){try{const _0x3afee9=-parseInt(_0xce7f24(0x103))/0x1*(-parseInt(_0xce7f24(0xf8))/0x2)+parseInt(_0xce7f24(0xd2))/0x3*(-parseInt(_0xce7f24(0xf2))/0x4)+parseInt(_0xce7f24(0xda))/0x5*(parseInt(_0xce7f24(0xd3))/0x6)+-parseInt(_0xce7f24(0xc8))/0x7*(parseInt(_0xce7f24(0xd0))/0x8)+parseInt(_0xce7f24(0xf3))/0x9*(-parseInt(_0xce7f24(0xf1))/0xa)+-parseInt(_0xce7f24(0xea))/0xb+parseInt(_0xce7f24(0x10e))/0xc;if(_0x3afee9===_0x3196a8)break;else _0x5603d3['push'](_0x5603d3['shift']());}catch(_0x1d49c6){_0x5603d3['push'](_0x5603d3['shift']());}}}(a113_0x1415,0x88954));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a113_0x1415(){const _0x111472=['\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','flagMissing','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','code','New\x20external\x20HTTPS\x20URL','menu_update_recovery_required','after','readbackFailed','iframe','trim','snapshot','Updated\x20external\x20URL\x20for\x20menu\x20','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','\x20has\x20an\x20empty\x20platform\x20path.','7433393zfczaa','plan','menu_external_link_not_leaf','string','Update\x20request\x20for\x20menu\x20','cookie','/smartapi/menu/update','78870Bjajbs','4bvUBll','351QCriUM','unknown','verification','visible','\x20changed\x20during\x20the\x20URL-only\x20update.','152660lKIkEj','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','path','Response\x20was\x20lost\x20and\x20menu\x20','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','update\x20external\x20menu\x20URL','menu','\x22,\x20not\x20iframe\x20or\x20link.','label','childrenCount','update','13dLugUr','\x20parent\x20changed:\x20expected\x20','POST','type','expect-parent-id',',\x20current\x20','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','menu_state_drift','requestedUrlObserved','menu_external_link_type_required','18489588yDHuif','url','sort','menu_external_link_path_missing','hash','expect-url','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','replace','\x20URL\x20update\x20did\x20not\x20take\x20effect.','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','body','Run\x20','failed','11137oUVfRO','\x27\x5c\x27\x27','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','update-external-link-url','\x20could\x20not\x20be\x20verified\x20safely','parentId','Menu\x20','3272TYzKTP','appCode','2135394KdqzqZ','744456wzlDsY','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','\x20already\x20matches\x20the\x20requested\x20URL.','\x20direct\x20child\x20menu(s).','\x20is\x20type\x20\x22','\x20has\x20','str','15qkHCiI','update-recovery'];a113_0x1415=function(){return _0x111472;};return a113_0x1415();}function a113_0x37bd(_0x525434,_0x3f7b26){_0x525434=_0x525434-0xbf;const _0x141501=a113_0x1415();let _0x37bd6c=_0x141501[_0x525434];return _0x37bd6c;}const BACKEND=[{'method':a113_0xb3161(0x105),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a113_0xb3161(0xfe),'command':'external-link-update','description':'Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a113_0xb3161(0x10f),'type':a113_0xb3161(0xed),'required':!![],'description':a113_0xb3161(0xe0)},{'name':a113_0xb3161(0xc0),'type':a113_0xb3161(0xed),'required':!![],'description':a113_0xb3161(0xc4)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xdac02){validateInput(_0xdac02);},async 'dryRun'(_0x11278a){const _0x1ae362=a113_0xb3161;validateInput(_0x11278a);const _0x286637=await buildPlan(_0x11278a,!![]);return menuDryRunResult(_0x286637[_0x1ae362(0xeb)],{'method':_0x1ae362(0x105),'url':_0x1ae362(0xf0),'body':_0x286637['body'],'description':_0x1ae362(0xc1)+_0x286637[_0x1ae362(0xc5)]['id']+'.'});},async 'execute'(_0x279f7c){const _0xeb6768=a113_0xb3161;validateInput(_0x279f7c);const _0x40e439=await buildPlan(_0x279f7c,![]),{plan:_0x19a529,body:_0xbba786,before:_0x332238,noChanges:_0x49995d}=_0x40e439,_0x1b85ab=_0xbba786['id'];if(_0x49995d)return updateSuccess(_0x19a529,_0x40e439[_0xeb6768(0xe6)],_0x332238,!![],![]);await recheckMutationSnapshot(_0x279f7c,_0x19a529,'update\x20external\x20menu\x20URL',_0x1b85ab);try{await updateMenuEntity(_0x279f7c['appCode'],_0x279f7c[_0xeb6768(0xef)],{'id':_0xbba786['id'],'url':_0xbba786[_0xeb6768(0x10f)]});}catch(_0x1ddb2b){const _0x17a60b=mapMenuApiError(_0x1ddb2b,'update\x20external\x20menu\x20URL',_0x1b85ab);if(isMenuResponseLoss(_0x1ddb2b)&&_0x17a60b[_0xeb6768(0xdf)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x279f7c,_0x40e439);throw menuFailure(_0x17a60b,_0x19a529,{'stage':_0xeb6768(0x102),'failed':{'id':_0x1b85ab},'warnings':[_0xeb6768(0xca)],'verification':{'status':'failed','targetId':_0x1b85ab,'lookupCommand':buildLookupCommand(_0x279f7c[_0xeb6768(0xd1)])}});}let _0x284fe8,_0x529bc1;try{_0x284fe8=await fetchMenuSnapshot(_0x279f7c[_0xeb6768(0xd1)],_0x279f7c[_0xeb6768(0xef)]),_0x529bc1=requireMenu(_0x284fe8,_0x1b85ab),verifyUpdatedFact(_0x332238,_0x529bc1,_0xbba786[_0xeb6768(0x10f)]);}catch(_0x4b067c){const _0x24f696=describeMenuErrorCause(_0x4b067c,'verify\x20external\x20menu\x20URL\x20update',_0x1b85ab),_0x10d6b7=asVerificationError(_0x4b067c,_0xeb6768(0xee)+_0x1b85ab+_0xeb6768(0xdc));throw menuFailure(_0x10d6b7,_0x19a529,{'stage':_0xeb6768(0xf5),'succeeded':[{'id':_0x1b85ab,'updateRequested':!![]}],'failed':{'id':_0x1b85ab,'requestedStateConfirmed':![],..._0x24f696},'warnings':[_0xeb6768(0x10a)],'verification':{'status':_0xeb6768(0xc7),'targetId':_0x1b85ab,'lookupCommand':buildLookupCommand(_0x279f7c[_0xeb6768(0xd1)])}});}return updateSuccess(_0x19a529,_0x284fe8,_0x529bc1,![],![]);}};function validateInput(_0x15bbb3){const _0x13631f=a113_0xb3161;validateExactId(_0x15bbb3),requiredUrl(_0x15bbb3,_0x13631f(0x10f)),requiredExpectedUrl(_0x15bbb3),parseParentId(_0x15bbb3,_0x13631f(0x107),{'required':!![]});}function requiredUrl(_0x32be9a,_0x446aff){const _0x41a86c=a113_0xb3161;if(!hasFlag(_0x32be9a,_0x446aff)||!_0x32be9a[_0x41a86c(0xd9)](_0x446aff)[_0x41a86c(0xe5)]())throw CliErrors[_0x41a86c(0xdd)](_0x446aff);return validateExternalMenuUrl(_0x32be9a[_0x41a86c(0xd9)](_0x446aff));}function requiredExpectedUrl(_0x105932){const _0x18ae39=a113_0xb3161;if(!hasFlag(_0x105932,_0x18ae39(0xc0))||!_0x105932[_0x18ae39(0xd9)](_0x18ae39(0xc0))[_0x18ae39(0xe5)]())throw CliErrors[_0x18ae39(0xdd)](_0x18ae39(0xc0));return _0x105932[_0x18ae39(0xd9)]('expect-url')['trim']();}async function buildPlan(_0x309498,_0x8f98c0){const _0x26fc82=a113_0xb3161,_0x59a869=validateExactId(_0x309498),_0x28f00c=requiredUrl(_0x309498,_0x26fc82(0x10f)),_0x14c5d1=requiredExpectedUrl(_0x309498),_0x5ec85b=parseParentId(_0x309498,_0x26fc82(0x107),{'required':!![]}),_0x36262d=await fetchMutationSnapshot(_0x309498,_0x26fc82(0xfd),_0x59a869),_0x239d65=requireMenu(_0x36262d,_0x59a869);assertExternalLinkLeaf(_0x239d65);if(_0x239d65[_0x26fc82(0xce)]!==_0x5ec85b)throw menuError(_0x26fc82(0x10b),_0x26fc82(0xcf)+_0x59a869+_0x26fc82(0x104)+formatParent(_0x5ec85b)+_0x26fc82(0x108)+formatParent(_0x239d65[_0x26fc82(0xce)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x220890=_0x239d65[_0x26fc82(0x10f)]===_0x28f00c;if(!_0x220890&&_0x239d65['url']!==_0x14c5d1)throw menuError('menu_state_drift','Menu\x20'+_0x59a869+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0x26fc82(0xcb));const _0x57ad51={'id':_0x59a869,'appCode':_0x309498[_0x26fc82(0xd1)],'url':_0x28f00c},_0x1894b1={..._0x239d65,'url':_0x28f00c};return{'body':_0x57ad51,'before':_0x239d65,'noChanges':_0x220890,'snapshot':_0x36262d,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x59a869},'before':_0x239d65,'after':_0x1894b1,'dryRun':_0x8f98c0,'backend':[...BACKEND],'plannedActions':_0x220890?[]:[{'stage':_0x26fc82(0xcc),'method':_0x26fc82(0x105),'path':'/smartapi/menu/update','body':_0x57ad51}],'snapshotHash':_0x36262d[_0x26fc82(0xbf)],'warnings':_0x220890?[_0x26fc82(0xe8)]:[]})};}function assertExternalLinkLeaf(_0x5a0e08){const _0x13f43e=a113_0xb3161;if(_0x5a0e08['type']!==_0x13f43e(0xe4)&&_0x5a0e08[_0x13f43e(0x106)]!=='link')throw menuError(_0x13f43e(0x10d),'Menu\x20'+_0x5a0e08['id']+_0x13f43e(0xd7)+(_0x5a0e08[_0x13f43e(0x106)]||_0x13f43e(0xf4))+_0x13f43e(0xff),_0x13f43e(0xde));if(_0x5a0e08[_0x13f43e(0x101)]!==0x0)throw menuError(_0x13f43e(0xec),'Menu\x20'+_0x5a0e08['id']+_0x13f43e(0xd8)+_0x5a0e08[_0x13f43e(0x101)]+_0x13f43e(0xd6),_0x13f43e(0x109));if(!_0x5a0e08[_0x13f43e(0xfa)][_0x13f43e(0xe5)]())throw menuError(_0x13f43e(0x111),_0x13f43e(0xcf)+_0x5a0e08['id']+_0x13f43e(0xe9),_0x13f43e(0xd4));}function verifyUpdatedFact(_0x2d4bf2,_0x591fac,_0x30a505){const _0x2a3e72=a113_0xb3161;assertExternalLinkLeaf(_0x591fac);const _0x2ff366=[['id',_0x591fac['id'],_0x2d4bf2['id']],[_0x2a3e72(0x100),_0x591fac[_0x2a3e72(0x100)],_0x2d4bf2['label']],[_0x2a3e72(0x106),_0x591fac[_0x2a3e72(0x106)],_0x2d4bf2[_0x2a3e72(0x106)]],['path',_0x591fac[_0x2a3e72(0xfa)],_0x2d4bf2['path']],[_0x2a3e72(0xce),_0x591fac[_0x2a3e72(0xce)],_0x2d4bf2[_0x2a3e72(0xce)]],[_0x2a3e72(0x110),_0x591fac[_0x2a3e72(0x110)],_0x2d4bf2['sort']],[_0x2a3e72(0xf6),_0x591fac['visible'],_0x2d4bf2[_0x2a3e72(0xf6)]]];for(const [_0x513e09,_0x1baa15,_0xe5eee6]of _0x2ff366){assertVerified(_0x1baa15===_0xe5eee6,_0x2a3e72(0xcf)+_0x2d4bf2['id']+'\x20'+_0x513e09+_0x2a3e72(0xf7));}assertVerified(_0x591fac[_0x2a3e72(0x10f)]===_0x30a505,'Menu\x20'+_0x2d4bf2['id']+_0x2a3e72(0xc3));}function updateSuccess(_0x4510d3,_0x1d171e,_0x1a3bc0,_0x3e175d,_0xbf248e){const _0x3223bd=a113_0xb3161,_0xa2f1f0=_0x1a3bc0['id'],_0x2c5024=mutationResult({..._0x4510d3,'after':_0x1a3bc0,'dryRun':![],'succeeded':[{'id':_0xa2f1f0,'updated':!_0x3e175d,'skipped':_0x3e175d,'recovered':_0xbf248e}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x1d171e[_0x3223bd(0xbf)],'targetId':_0xa2f1f0,'matchesRequestedState':!![],'recovered':_0xbf248e}});return{'ok':!![],'message':_0xbf248e?_0x3223bd(0xf9)+_0xa2f1f0+'.':_0x3e175d?_0x3223bd(0xcf)+_0xa2f1f0+_0x3223bd(0xd5):_0x3223bd(0xe7)+_0xa2f1f0+'.','data':{..._0x2c5024,'recovered':_0xbf248e}};}async function recoverAfterResponseLoss(_0x58f12c,_0x206613){const _0x444077=a113_0xb3161,{plan:_0x5d769e,before:_0x322fe5,body:_0x3e3d3c}=_0x206613;let _0x13ed5d;try{_0x13ed5d=await fetchMenuSnapshot(_0x58f12c['appCode'],_0x58f12c[_0x444077(0xef)]);}catch{throw recoveryRequired(_0x5d769e,_0x58f12c[_0x444077(0xd1)],{'id':_0x3e3d3c['id'],'readbackFailed':!![]});}const _0x254ba7=_0x13ed5d['byId']['get'](_0x3e3d3c['id']);if(!_0x254ba7||_0x254ba7[_0x444077(0x10f)]!==_0x3e3d3c[_0x444077(0x10f)])throw recoveryRequired(_0x5d769e,_0x58f12c[_0x444077(0xd1)],{'id':_0x3e3d3c['id'],'requestedUrlObserved':![],'after':_0x254ba7??null});try{verifyUpdatedFact(_0x322fe5,_0x254ba7,_0x3e3d3c[_0x444077(0x10f)]);}catch(_0x592c64){const _0x1ec699=asVerificationError(_0x592c64,_0x444077(0xfb)+_0x3e3d3c['id']+_0x444077(0xcd));throw menuFailure(_0x1ec699,_0x5d769e,{'stage':_0x444077(0xdb),'succeeded':[{'id':_0x3e3d3c['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x3e3d3c['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x254ba7,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':'failed','targetId':_0x3e3d3c['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x58f12c[_0x444077(0xd1)])}});}return updateSuccess(_0x5d769e,_0x13ed5d,_0x254ba7,![],!![]);}function recoveryRequired(_0x2b2242,_0x60009,_0x236549){const _0xedd84c=a113_0xb3161,_0x26c005=menuError(_0xedd84c(0xe1),_0xedd84c(0xfc),_0xedd84c(0xc6)+buildLookupCommand(_0x60009)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x26c005,_0x2b2242,{'stage':_0xedd84c(0xdb),'failed':{'id':_0x236549['id'],..._0x236549['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x236549['requestedUrlObserved']},..._0x236549[_0xedd84c(0xe3)]?{'readbackFailed':!![]}:{}},'after':_0x236549[_0xedd84c(0xe2)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0xedd84c(0xc7),'targetId':_0x236549['id'],..._0x236549['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x236549[_0xedd84c(0x10c)]},..._0x236549['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x60009)}});}function buildLookupCommand(_0x113112){const _0x3efd8f=a113_0xb3161,_0x3f8ffa='\x27'+_0x113112[_0x3efd8f(0xc2)](/'/g,_0x3efd8f(0xc9))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x3f8ffa+'\x20--format\x20compress';}
1
+ const a114_0x1ee332=a114_0x3b27;(function(_0x51c42a,_0x3024c2){const _0x3ffea1=a114_0x3b27,_0x4960d4=_0x51c42a();while(!![]){try{const _0x9d83bb=parseInt(_0x3ffea1(0x145))/0x1+parseInt(_0x3ffea1(0x15c))/0x2+-parseInt(_0x3ffea1(0x158))/0x3+parseInt(_0x3ffea1(0x17a))/0x4*(parseInt(_0x3ffea1(0x157))/0x5)+-parseInt(_0x3ffea1(0x159))/0x6*(parseInt(_0x3ffea1(0x13f))/0x7)+-parseInt(_0x3ffea1(0x136))/0x8+parseInt(_0x3ffea1(0x17f))/0x9;if(_0x9d83bb===_0x3024c2)break;else _0x4960d4['push'](_0x4960d4['shift']());}catch(_0x11a1be){_0x4960d4['push'](_0x4960d4['shift']());}}}(a114_0x3c3f,0xaac2a));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';function a114_0x3b27(_0x2ca464,_0x3db5b1){_0x2ca464=_0x2ca464-0x130;const _0x3c3fd7=a114_0x3c3f();let _0x3b2775=_0x3c3fd7[_0x2ca464];return _0x3b2775;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':'menu','command':a114_0x1ee332(0x146),'description':a114_0x1ee332(0x15e),'risk':a114_0x1ee332(0x132),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a114_0x1ee332(0x13d),'type':a114_0x1ee332(0x16f),'required':!![],'description':a114_0x1ee332(0x178)},{'name':a114_0x1ee332(0x14a),'type':a114_0x1ee332(0x16f),'required':!![],'description':a114_0x1ee332(0x139)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2d6665){validateInput(_0x2d6665);},async 'dryRun'(_0x295720){const _0x1de613=a114_0x1ee332;validateInput(_0x295720);const _0x418859=await buildPlan(_0x295720,!![]);return menuDryRunResult(_0x418859[_0x1de613(0x148)],{'method':_0x1de613(0x144),'url':_0x1de613(0x181),'body':_0x418859[_0x1de613(0x152)],'description':_0x1de613(0x169)+_0x418859[_0x1de613(0x152)]['id']+'.'});},async 'execute'(_0x4cea35){const _0x521072=a114_0x1ee332;validateInput(_0x4cea35);const _0x155211=await buildPlan(_0x4cea35,![]),{plan:_0x56a1c3,body:_0x20ac3a,before:_0x5c470b,noChanges:_0x3ea89b}=_0x155211,_0x3071de=_0x20ac3a['id'];if(_0x3ea89b)return updateSuccess(_0x56a1c3,_0x155211[_0x521072(0x154)],_0x5c470b,!![],![]);await recheckMutationSnapshot(_0x4cea35,_0x56a1c3,'update\x20external\x20menu\x20URL',_0x3071de);try{await updateMenuEntity(_0x4cea35[_0x521072(0x182)],_0x4cea35[_0x521072(0x17c)],{'id':_0x20ac3a['id'],'url':_0x20ac3a['url']});}catch(_0x4036b2){const _0x5dfef9=mapMenuApiError(_0x4036b2,_0x521072(0x135),_0x3071de);if(isMenuResponseLoss(_0x4036b2)&&_0x5dfef9[_0x521072(0x162)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x4cea35,_0x155211);throw menuFailure(_0x5dfef9,_0x56a1c3,{'stage':_0x521072(0x14e),'failed':{'id':_0x3071de},'warnings':[_0x521072(0x13b)],'verification':{'status':_0x521072(0x138),'targetId':_0x3071de,'lookupCommand':buildLookupCommand(_0x4cea35[_0x521072(0x182)])}});}let _0x4a2561,_0x596157;try{_0x4a2561=await fetchMenuSnapshot(_0x4cea35[_0x521072(0x182)],_0x4cea35[_0x521072(0x17c)]),_0x596157=requireMenu(_0x4a2561,_0x3071de),verifyUpdatedFact(_0x5c470b,_0x596157,_0x20ac3a[_0x521072(0x13d)]);}catch(_0x4a5ac5){const _0x5ea1ac=describeMenuErrorCause(_0x4a5ac5,_0x521072(0x16b),_0x3071de),_0x525556=asVerificationError(_0x4a5ac5,_0x521072(0x13a)+_0x3071de+_0x521072(0x17e));throw menuFailure(_0x525556,_0x56a1c3,{'stage':'verification','succeeded':[{'id':_0x3071de,'updateRequested':!![]}],'failed':{'id':_0x3071de,'requestedStateConfirmed':![],..._0x5ea1ac},'warnings':[_0x521072(0x16e)],'verification':{'status':'failed','targetId':_0x3071de,'lookupCommand':buildLookupCommand(_0x4cea35[_0x521072(0x182)])}});}return updateSuccess(_0x56a1c3,_0x4a2561,_0x596157,![],![]);}};function validateInput(_0x34ff51){const _0x13a800=a114_0x1ee332;validateExactId(_0x34ff51),requiredUrl(_0x34ff51,_0x13a800(0x13d)),requiredExpectedUrl(_0x34ff51),parseParentId(_0x34ff51,_0x13a800(0x13e),{'required':!![]});}function requiredUrl(_0x20e77d,_0x182c96){const _0x30dab6=a114_0x1ee332;if(!hasFlag(_0x20e77d,_0x182c96)||!_0x20e77d[_0x30dab6(0x151)](_0x182c96)['trim']())throw CliErrors[_0x30dab6(0x15d)](_0x182c96);return validateExternalMenuUrl(_0x20e77d[_0x30dab6(0x151)](_0x182c96));}function requiredExpectedUrl(_0x48178b){const _0x3c77e5=a114_0x1ee332;if(!hasFlag(_0x48178b,'expect-url')||!_0x48178b[_0x3c77e5(0x151)]('expect-url')[_0x3c77e5(0x16d)]())throw CliErrors[_0x3c77e5(0x15d)](_0x3c77e5(0x14a));return _0x48178b[_0x3c77e5(0x151)](_0x3c77e5(0x14a))['trim']();}async function buildPlan(_0x23c409,_0x448bf3){const _0x43c5fa=a114_0x1ee332,_0xce8e0c=validateExactId(_0x23c409),_0x2ff8e8=requiredUrl(_0x23c409,_0x43c5fa(0x13d)),_0x4902d1=requiredExpectedUrl(_0x23c409),_0xebe30a=parseParentId(_0x23c409,_0x43c5fa(0x13e),{'required':!![]}),_0x4938d6=await fetchMutationSnapshot(_0x23c409,_0x43c5fa(0x135),_0xce8e0c),_0x5cdddb=requireMenu(_0x4938d6,_0xce8e0c);assertExternalLinkLeaf(_0x5cdddb);if(_0x5cdddb[_0x43c5fa(0x14d)]!==_0xebe30a)throw menuError('menu_state_drift',_0x43c5fa(0x156)+_0xce8e0c+_0x43c5fa(0x15f)+formatParent(_0xebe30a)+_0x43c5fa(0x131)+formatParent(_0x5cdddb[_0x43c5fa(0x14d)])+'.',_0x43c5fa(0x171));const _0xdb20cc=_0x5cdddb[_0x43c5fa(0x13d)]===_0x2ff8e8;if(!_0xdb20cc&&_0x5cdddb['url']!==_0x4902d1)throw menuError(_0x43c5fa(0x160),_0x43c5fa(0x156)+_0xce8e0c+_0x43c5fa(0x17b),_0x43c5fa(0x155));const _0x40de8e={'id':_0xce8e0c,'appCode':_0x23c409[_0x43c5fa(0x182)],'url':_0x2ff8e8},_0x54dfbf={..._0x5cdddb,'url':_0x2ff8e8};return{'body':_0x40de8e,'before':_0x5cdddb,'noChanges':_0xdb20cc,'snapshot':_0x4938d6,'plan':mutationResult({'operation':_0x43c5fa(0x146),'selector':{'id':_0xce8e0c},'before':_0x5cdddb,'after':_0x54dfbf,'dryRun':_0x448bf3,'backend':[...BACKEND],'plannedActions':_0xdb20cc?[]:[{'stage':_0x43c5fa(0x134),'method':_0x43c5fa(0x144),'path':_0x43c5fa(0x181),'body':_0x40de8e}],'snapshotHash':_0x4938d6[_0x43c5fa(0x140)],'warnings':_0xdb20cc?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x224591){const _0x397561=a114_0x1ee332;if(_0x224591[_0x397561(0x153)]!==_0x397561(0x167)&&_0x224591[_0x397561(0x153)]!==_0x397561(0x137))throw menuError('menu_external_link_type_required',_0x397561(0x156)+_0x224591['id']+_0x397561(0x14f)+(_0x224591['type']||'unknown')+_0x397561(0x168),_0x397561(0x172));if(_0x224591[_0x397561(0x142)]!==0x0)throw menuError(_0x397561(0x143),_0x397561(0x156)+_0x224591['id']+_0x397561(0x184)+_0x224591[_0x397561(0x142)]+_0x397561(0x177),_0x397561(0x13c));if(!_0x224591[_0x397561(0x15a)][_0x397561(0x16d)]())throw menuError(_0x397561(0x165),_0x397561(0x156)+_0x224591['id']+_0x397561(0x176),_0x397561(0x14c));}function verifyUpdatedFact(_0xd971ca,_0x9790b3,_0x46854e){const _0x1370b5=a114_0x1ee332;assertExternalLinkLeaf(_0x9790b3);const _0x479381=[['id',_0x9790b3['id'],_0xd971ca['id']],[_0x1370b5(0x150),_0x9790b3['label'],_0xd971ca[_0x1370b5(0x150)]],[_0x1370b5(0x153),_0x9790b3[_0x1370b5(0x153)],_0xd971ca[_0x1370b5(0x153)]],[_0x1370b5(0x15a),_0x9790b3[_0x1370b5(0x15a)],_0xd971ca[_0x1370b5(0x15a)]],[_0x1370b5(0x14d),_0x9790b3['parentId'],_0xd971ca[_0x1370b5(0x14d)]],[_0x1370b5(0x130),_0x9790b3[_0x1370b5(0x130)],_0xd971ca[_0x1370b5(0x130)]],[_0x1370b5(0x147),_0x9790b3['visible'],_0xd971ca[_0x1370b5(0x147)]]];for(const [_0x2f2fe0,_0x1c431d,_0x2fbec7]of _0x479381){assertVerified(_0x1c431d===_0x2fbec7,_0x1370b5(0x156)+_0xd971ca['id']+'\x20'+_0x2f2fe0+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x9790b3[_0x1370b5(0x13d)]===_0x46854e,_0x1370b5(0x156)+_0xd971ca['id']+_0x1370b5(0x161));}function updateSuccess(_0x2c7c7c,_0x198960,_0xddd69a,_0x16beff,_0x34d37a){const _0x58a316=a114_0x1ee332,_0x5dbe91=_0xddd69a['id'],_0x560cd6=mutationResult({..._0x2c7c7c,'after':_0xddd69a,'dryRun':![],'succeeded':[{'id':_0x5dbe91,'updated':!_0x16beff,'skipped':_0x16beff,'recovered':_0x34d37a}],'verification':{'checkedBy':_0x58a316(0x163),'snapshotHash':_0x198960[_0x58a316(0x140)],'targetId':_0x5dbe91,'matchesRequestedState':!![],'recovered':_0x34d37a}});return{'ok':!![],'message':_0x34d37a?_0x58a316(0x133)+_0x5dbe91+'.':_0x16beff?_0x58a316(0x156)+_0x5dbe91+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x58a316(0x175)+_0x5dbe91+'.','data':{..._0x560cd6,'recovered':_0x34d37a}};}function a114_0x3c3f(){const _0x34bd94=['external-link-update','visible','plan','byId','expect-url','rabetbase\x20menu\x20list\x20--appcode\x20','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','parentId','update','\x20is\x20type\x20\x22','label','str','body','type','snapshot','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','Menu\x20','313210VLVRfc','1735053grrdyc','6jmUhHV','path','readbackFailed','1352460HFPlGb','flagMissing','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20parent\x20changed:\x20expected\x20','menu_state_drift','\x20URL\x20update\x20did\x20not\x20take\x20effect.','code','menu\x20list','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','menu_external_link_path_missing','menu_update_recovery_required','iframe','\x22,\x20not\x20iframe\x20or\x20link.','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','update-recovery','verify\x20external\x20menu\x20URL\x20update','requestedUrlObserved','trim','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','string','\x20could\x20not\x20be\x20verified\x20safely','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','\x20--format\x20compress','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','Updated\x20external\x20URL\x20for\x20menu\x20','\x20has\x20an\x20empty\x20platform\x20path.','\x20direct\x20child\x20menu(s).','New\x20external\x20HTTPS\x20URL','after','12Turjny','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','cookie','\x27\x5c\x27\x27','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','15376410VwhuhP','Response\x20was\x20lost\x20and\x20menu\x20','/smartapi/menu/update','appCode','get','\x20has\x20','sort',',\x20current\x20','write','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','update-external-link-url','update\x20external\x20menu\x20URL','10189104KGEOBv','link','failed','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','Update\x20request\x20for\x20menu\x20','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','url','expect-parent-id','2455614ylGOpn','hash','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','childrenCount','menu_external_link_not_leaf','POST','329579ysoXkB'];a114_0x3c3f=function(){return _0x34bd94;};return a114_0x3c3f();}async function recoverAfterResponseLoss(_0x5e7318,_0xf799f1){const _0x3f14b5=a114_0x1ee332,{plan:_0xb29f4a,before:_0xa2162a,body:_0x3c4e42}=_0xf799f1;let _0x1158c4;try{_0x1158c4=await fetchMenuSnapshot(_0x5e7318['appCode'],_0x5e7318['cookie']);}catch{throw recoveryRequired(_0xb29f4a,_0x5e7318[_0x3f14b5(0x182)],{'id':_0x3c4e42['id'],'readbackFailed':!![]});}const _0x2eb648=_0x1158c4[_0x3f14b5(0x149)][_0x3f14b5(0x183)](_0x3c4e42['id']);if(!_0x2eb648||_0x2eb648[_0x3f14b5(0x13d)]!==_0x3c4e42[_0x3f14b5(0x13d)])throw recoveryRequired(_0xb29f4a,_0x5e7318[_0x3f14b5(0x182)],{'id':_0x3c4e42['id'],'requestedUrlObserved':![],'after':_0x2eb648??null});try{verifyUpdatedFact(_0xa2162a,_0x2eb648,_0x3c4e42[_0x3f14b5(0x13d)]);}catch(_0x5d0ce1){const _0x21fba2=asVerificationError(_0x5d0ce1,_0x3f14b5(0x180)+_0x3c4e42['id']+_0x3f14b5(0x170));throw menuFailure(_0x21fba2,_0xb29f4a,{'stage':'update-recovery','succeeded':[{'id':_0x3c4e42['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x3c4e42['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x2eb648,'warnings':[_0x3f14b5(0x174)],'verification':{'status':_0x3f14b5(0x138),'targetId':_0x3c4e42['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5e7318['appCode'])}});}return updateSuccess(_0xb29f4a,_0x1158c4,_0x2eb648,![],!![]);}function recoveryRequired(_0x381eba,_0xf6f4f6,_0x4f2ec4){const _0x3fd560=a114_0x1ee332,_0x935b17=menuError(_0x3fd560(0x166),_0x3fd560(0x164),'Run\x20'+buildLookupCommand(_0xf6f4f6)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x935b17,_0x381eba,{'stage':_0x3fd560(0x16a),'failed':{'id':_0x4f2ec4['id'],..._0x4f2ec4['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x4f2ec4[_0x3fd560(0x16c)]},..._0x4f2ec4['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x4f2ec4[_0x3fd560(0x179)],'warnings':[_0x3fd560(0x141)],'verification':{'status':_0x3fd560(0x138),'targetId':_0x4f2ec4['id'],..._0x4f2ec4[_0x3fd560(0x16c)]===undefined?{}:{'requestedUrlObserved':_0x4f2ec4[_0x3fd560(0x16c)]},..._0x4f2ec4[_0x3fd560(0x15b)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0xf6f4f6)}});}function buildLookupCommand(_0x5b3704){const _0x71f021=a114_0x1ee332,_0x5207c5='\x27'+_0x5b3704['replace'](/'/g,_0x71f021(0x17d))+'\x27';return _0x71f021(0x14b)+_0x5207c5+_0x71f021(0x173);}
@@ -1 +1 @@
1
- function a114_0x97dc(_0x3352aa,_0xb33b9a){_0x3352aa=_0x3352aa-0x193;const _0x20d1ca=a114_0x20d1();let _0x97dc83=_0x20d1ca[_0x3352aa];return _0x97dc83;}const a114_0x567416=a114_0x97dc;(function(_0x53f418,_0x8240fa){const _0x40153a=a114_0x97dc,_0x25bfd4=_0x53f418();while(!![]){try{const _0x153928=parseInt(_0x40153a(0x19c))/0x1+-parseInt(_0x40153a(0x1b5))/0x2+parseInt(_0x40153a(0x1c4))/0x3*(-parseInt(_0x40153a(0x1be))/0x4)+-parseInt(_0x40153a(0x1a4))/0x5+parseInt(_0x40153a(0x19f))/0x6*(-parseInt(_0x40153a(0x197))/0x7)+parseInt(_0x40153a(0x1b4))/0x8*(-parseInt(_0x40153a(0x1a8))/0x9)+parseInt(_0x40153a(0x1c3))/0xa;if(_0x153928===_0x8240fa)break;else _0x25bfd4['push'](_0x25bfd4['shift']());}catch(_0x499b03){_0x25bfd4['push'](_0x25bfd4['shift']());}}}(a114_0x20d1,0x24211));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';function a114_0x20d1(){const _0x534d7c=['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','folder','54AlbOil','verify\x20folder\x20creation','\x20is\x20missing\x20from\x20menu\x20list.','failed','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','string','Folder\x20label','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','verification','childrenCount','Created\x20menu\x20','flagMissing','64024DWNYLS','165784TmMuMx','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','get','\x20has\x20unexpected\x20parent\x20','\x20is\x20not\x20type\x20folder.','Menu\x20create\x20response\x20for\x20folder\x20','create-response-validation','str','\x20has\x20resources.','4MrtSeO','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','trim','Folder\x20','menu_create_response_invalid','5048280AXSmeV','75261KUlxaj','length','write','after','pageId','Created\x20folder\x20','\x20has\x20an\x20unexpected\x20sort.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','sort','\x20is\x20not\x20empty.','create','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','<platform-generated>','root','cookie','menu','/smartapi/menu/create','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','isSafeInteger','appCode','label','path','parentId',';\x20verify\x20it\x20before\x20retrying.','\x20is\x20not\x20visible.','rabetbase\x20menu\x20list\x20--format\x20json','21zVUpBc','create\x20folder','POST','\x20has\x20an\x20unexpected\x20label.','Created\x20menu\x20folder\x20','60819ixpxHh','\x22\x20with\x20a\x20platform-generated\x20path.','byId','442758LfCBRc','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','\x20may\x20exist\x20online\x20at\x20path\x20','hash','depth','201430qkdOLC','visible'];a114_0x20d1=function(){return _0x534d7c;};return a114_0x20d1();}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a114_0x567416(0x199),'path':a114_0x567416(0x1d4)}];export const menuGroupCreate={'service':a114_0x567416(0x1d3),'command':'group-create','description':a114_0x567416(0x1cb),'risk':a114_0x567416(0x1c6),'structuredErrors':!![],'flags':[{'name':a114_0x567416(0x1d8),'type':a114_0x567416(0x1ad),'required':!![],'description':a114_0x567416(0x1ae)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1721a4){validateCreateInput(_0x1721a4);},async 'dryRun'(_0x2b29db){const _0x4ad536=a114_0x567416,_0x115540=await buildCreatePlan(_0x2b29db,!![]),_0x14b242=_0x115540[_0x4ad536(0x1c7)];return menuDryRunResult(_0x115540,{'method':_0x4ad536(0x199),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x14b242[_0x4ad536(0x193)]),'label':_0x14b242[_0x4ad536(0x1d8)],'type':_0x4ad536(0x1a7),'visible':!![],'sort':_0x14b242[_0x4ad536(0x1cc)],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x14b242[_0x4ad536(0x1d8)])+_0x4ad536(0x19d)});},async 'execute'(_0x46f89d){const _0xb0040=a114_0x567416;validateCreateInput(_0x46f89d);const _0xba10c2=await buildCreatePlan(_0x46f89d,![]),_0x95bc41=_0xba10c2[_0xb0040(0x1c7)];await recheckMutationSnapshot(_0x46f89d,_0xba10c2,_0xb0040(0x198));let _0x2c9528;try{_0x2c9528=await createMenuEntity(_0x46f89d[_0xb0040(0x1d7)],_0x46f89d[_0xb0040(0x1d2)],{'parentId':toApiParentId(_0x95bc41['parentId']),'label':String(_0x95bc41['label']),'type':_0xb0040(0x1a7),'visible':!![],'sort':Number(_0x95bc41[_0xb0040(0x1cc)]),'extend':{}});}catch(_0x2eb517){const _0x217de0=mapMenuApiError(_0x2eb517,'create\x20folder');throw menuFailure(_0x217de0,_0xba10c2,{'stage':_0xb0040(0x1ce),'failed':{}});}const _0x23a727=Number(_0x2c9528['id']);if(!Number[_0xb0040(0x1d6)](_0x23a727)||_0x23a727<=0x0){const _0x3e12ed=menuError(_0xb0040(0x1c2),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0xb0040(0x1ac));throw menuFailure(_0x3e12ed,_0xba10c2,{'stage':_0xb0040(0x1bb),'failed':{'createdId':_0x2c9528['id']??null},'warnings':[_0xb0040(0x1a6)],'verification':{'status':'failed','lookupCommand':_0xb0040(0x196)}});}const _0x17f3fe=typeof _0x2c9528[_0xb0040(0x1d9)]===_0xb0040(0x1ad)?_0x2c9528[_0xb0040(0x1d9)]:'';if(!_0x17f3fe[_0xb0040(0x1c0)]()){const _0x37b799=menuError(_0xb0040(0x1c2),_0xb0040(0x1ba)+_0x23a727+_0xb0040(0x1bf),_0xb0040(0x1cf));throw menuFailure(_0x37b799,_0xba10c2,{'stage':_0xb0040(0x1bb),'succeeded':[{'id':_0x23a727,'created':!![]}],'failed':{'id':_0x23a727,'generatedPathConfirmed':![]},'warnings':[_0xb0040(0x1c1)+_0x23a727+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x95bc41,'id':_0x23a727,'path':_0x17f3fe},'verification':{'status':_0xb0040(0x1ab),'lookupCommand':_0xb0040(0x196),'targetId':_0x23a727}});}let _0x23fe26;try{_0x23fe26=await fetchMenuSnapshot(_0x46f89d[_0xb0040(0x1d7)],_0x46f89d[_0xb0040(0x1d2)]);}catch(_0x4e8adc){const _0x51ea86=describeMenuErrorCause(_0x4e8adc,_0xb0040(0x1a9),_0x23a727),_0x3710c6=asVerificationError(_0x4e8adc,'Folder\x20'+_0x23a727+_0xb0040(0x1a0));throw menuFailure(_0x3710c6,_0xba10c2,{'stage':_0xb0040(0x1b0),'succeeded':[{'id':_0x23a727,'created':!![],'path':_0x17f3fe}],'failed':{'id':_0x23a727,'finalFactsConfirmed':![],..._0x51ea86},'warnings':['Folder\x20'+_0x23a727+_0xb0040(0x1a1)+JSON['stringify'](_0x17f3fe)+_0xb0040(0x194)],'after':{..._0x95bc41,'id':_0x23a727,'path':_0x17f3fe},'verification':{'status':_0xb0040(0x1ab),'lookupCommand':_0xb0040(0x196),'targetId':_0x23a727}});}const _0x1b9218=_0x23fe26[_0xb0040(0x19e)][_0xb0040(0x1b7)](_0x23a727);let _0x5e66b3;try{assertVerified(Boolean(_0x1b9218),_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x1aa)),_0x5e66b3=_0x1b9218,assertVerified(_0x5e66b3['type']===_0xb0040(0x1a7),_0xb0040(0x1b2)+_0x23a727+_0xb0040(0x1b9)),assertVerified(_0x5e66b3['label']===_0x95bc41[_0xb0040(0x1d8)],_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x19a)),assertVerified(_0x5e66b3[_0xb0040(0x1d9)]===_0x17f3fe&&Boolean(_0x5e66b3[_0xb0040(0x1d9)][_0xb0040(0x1c0)]()),'Created\x20folder\x20'+_0x23a727+_0xb0040(0x1d5)),assertVerified(_0x5e66b3[_0xb0040(0x1a5)]===!![],_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x195)),assertVerified(_0x5e66b3['resources'][_0xb0040(0x1c5)]===0x0,_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x1bd)),assertVerified(_0x5e66b3[_0xb0040(0x1b1)]===0x0,'Created\x20folder\x20'+_0x23a727+_0xb0040(0x1cd)),assertVerified(_0x5e66b3[_0xb0040(0x1cc)]===_0x95bc41[_0xb0040(0x1cc)],_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x1ca)),assertVerified(_0x5e66b3[_0xb0040(0x193)]===_0x95bc41[_0xb0040(0x193)],'Created\x20folder\x20'+_0x23a727+_0xb0040(0x1b8)+(_0x5e66b3[_0xb0040(0x193)]??_0xb0040(0x1d1))+'.'),assertVerified(_0x5e66b3[_0xb0040(0x1c8)]==null,'Created\x20folder\x20'+_0x23a727+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x1fc140=_0x5e66b3['parentId']==null?undefined:requireFolder(_0x23fe26,_0x5e66b3[_0xb0040(0x193)]);assertVerified(_0x5e66b3[_0xb0040(0x1a3)]===(_0x1fc140?_0x1fc140[_0xb0040(0x1a3)]+0x1:0x0),_0xb0040(0x1c9)+_0x23a727+_0xb0040(0x1af));}catch(_0x145013){const _0x9d5d5=describeMenuErrorCause(_0x145013,_0xb0040(0x1a9),_0x23a727),_0xd8f97d=asVerificationError(_0x145013,_0xb0040(0x1c1)+_0x23a727+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0xd8f97d,_0xba10c2,{'stage':'verification','succeeded':[{'id':_0x23a727,'created':!![],'path':_0x17f3fe}],'failed':{'id':_0x23a727,'finalFactsConfirmed':![],..._0x9d5d5},'warnings':[_0xb0040(0x1c1)+_0x23a727+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x1b9218??{..._0x95bc41,'id':_0x23a727,'path':_0x17f3fe},'verification':{'status':'failed','lookupCommand':_0xb0040(0x196),'targetId':_0x23a727}});}const _0x5b6486=mutationResult({..._0xba10c2,'after':_0x5e66b3,'dryRun':![],'succeeded':[{'id':_0x23a727,'type':_0xb0040(0x1a7),'path':_0x17f3fe}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x23fe26[_0xb0040(0x1a2)],'folder':!![],'path':_0x17f3fe,'emptyResources':!![]}});return{'ok':!![],'data':_0x5b6486,'message':_0xb0040(0x19b)+_0x23a727+'.'};}};function validateCreateInput(_0xd9d132){const _0x994266=a114_0x567416,_0x34412a=_0xd9d132[_0x994266(0x1bc)](_0x994266(0x1d8))[_0x994266(0x1c0)]();if(!_0x34412a)throw CliErrors[_0x994266(0x1b3)](_0x994266(0x1d8));parseParentId(_0xd9d132,'parent-id'),validateSort(_0xd9d132);}async function buildCreatePlan(_0x30b83c,_0x3dd8f8){const _0xae1ea6=a114_0x567416,_0x1e1231=await fetchMutationSnapshot(_0x30b83c,_0xae1ea6(0x198)),_0x5565c0=parseParentId(_0x30b83c,'parent-id')??null;if(_0x5565c0!=null)requireFolder(_0x1e1231,_0x5565c0);const _0x44dad3=validateSort(_0x30b83c),_0x583509=_0x44dad3??nextSiblingSort(_0x1e1231,_0x5565c0,_0xae1ea6(0x1a7)),_0x4600c1=_0x30b83c['str'](_0xae1ea6(0x1d8))[_0xae1ea6(0x1c0)]();return mutationResult({'operation':'group-create','selector':{'label':_0x4600c1,'parentId':_0x5565c0},'before':null,'after':{'id':null,'parentId':_0x5565c0,'label':_0x4600c1,'path':_0xae1ea6(0x1d0),'type':_0xae1ea6(0x1a7),'visible':!![],'sort':_0x583509,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x3dd8f8,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':'POST','path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x5565c0),'label':_0x4600c1,'type':_0xae1ea6(0x1a7),'visible':!![],'sort':_0x583509,'extend':{}}}],'snapshotHash':_0x1e1231[_0xae1ea6(0x1a2)],'warnings':[_0xae1ea6(0x1b6)]});}
1
+ const a115_0x56f868=a115_0x22b2;function a115_0x22b2(_0x4562d0,_0x378b3f){_0x4562d0=_0x4562d0-0xe6;const _0x2ae1ec=a115_0x2ae1();let _0x22b272=_0x2ae1ec[_0x4562d0];return _0x22b272;}(function(_0x3f8341,_0x4b2fef){const _0xaa9dc2=a115_0x22b2,_0x3bebeb=_0x3f8341();while(!![]){try{const _0x38d26a=parseInt(_0xaa9dc2(0x12e))/0x1+parseInt(_0xaa9dc2(0x10c))/0x2*(parseInt(_0xaa9dc2(0x114))/0x3)+parseInt(_0xaa9dc2(0x10e))/0x4*(parseInt(_0xaa9dc2(0x109))/0x5)+-parseInt(_0xaa9dc2(0x100))/0x6+-parseInt(_0xaa9dc2(0xf5))/0x7+-parseInt(_0xaa9dc2(0x105))/0x8+-parseInt(_0xaa9dc2(0x117))/0x9*(-parseInt(_0xaa9dc2(0xfc))/0xa);if(_0x38d26a===_0x4b2fef)break;else _0x3bebeb['push'](_0x3bebeb['shift']());}catch(_0x5c22b5){_0x3bebeb['push'](_0x3bebeb['shift']());}}}(a115_0x2ae1,0x4dbc8));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':a115_0x56f868(0xec),'path':a115_0x56f868(0x113)}];export const menuGroupCreate={'service':'menu','command':a115_0x56f868(0x124),'description':a115_0x56f868(0x126),'risk':a115_0x56f868(0x110),'structuredErrors':!![],'flags':[{'name':'label','type':a115_0x56f868(0xf8),'required':!![],'description':a115_0x56f868(0x115)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x28967b){validateCreateInput(_0x28967b);},async 'dryRun'(_0x505d0b){const _0x45ec43=a115_0x56f868,_0x384c13=await buildCreatePlan(_0x505d0b,!![]),_0x287cce=_0x384c13[_0x45ec43(0xf1)];return menuDryRunResult(_0x384c13,{'method':_0x45ec43(0xec),'url':_0x45ec43(0x113),'body':{'parentId':toApiParentId(_0x287cce[_0x45ec43(0xe8)]),'label':_0x287cce['label'],'type':_0x45ec43(0x12f),'visible':!![],'sort':_0x287cce[_0x45ec43(0x125)],'extend':{}},'description':_0x45ec43(0xf9)+String(_0x287cce[_0x45ec43(0xe9)])+_0x45ec43(0x107)});},async 'execute'(_0x59a315){const _0x2fd281=a115_0x56f868;validateCreateInput(_0x59a315);const _0x354a99=await buildCreatePlan(_0x59a315,![]),_0x21b274=_0x354a99[_0x2fd281(0xf1)];await recheckMutationSnapshot(_0x59a315,_0x354a99,'create\x20folder');let _0x2f7ebc;try{_0x2f7ebc=await createMenuEntity(_0x59a315[_0x2fd281(0xf6)],_0x59a315[_0x2fd281(0x11d)],{'parentId':toApiParentId(_0x21b274[_0x2fd281(0xe8)]),'label':String(_0x21b274['label']),'type':_0x2fd281(0x12f),'visible':!![],'sort':Number(_0x21b274[_0x2fd281(0x125)]),'extend':{}});}catch(_0x1f4554){const _0x2f4a18=mapMenuApiError(_0x1f4554,_0x2fd281(0xf2));throw menuFailure(_0x2f4a18,_0x354a99,{'stage':'create','failed':{}});}const _0x4696ec=Number(_0x2f7ebc['id']);if(!Number[_0x2fd281(0xfb)](_0x4696ec)||_0x4696ec<=0x0){const _0x46110b=menuError(_0x2fd281(0xf3),_0x2fd281(0xfd),_0x2fd281(0xea));throw menuFailure(_0x46110b,_0x354a99,{'stage':_0x2fd281(0x12a),'failed':{'createdId':_0x2f7ebc['id']??null},'warnings':[_0x2fd281(0x106)],'verification':{'status':_0x2fd281(0x10a),'lookupCommand':_0x2fd281(0x118)}});}const _0x24e486=typeof _0x2f7ebc['path']==='string'?_0x2f7ebc[_0x2fd281(0x11f)]:'';if(!_0x24e486[_0x2fd281(0x102)]()){const _0x3e1c3b=menuError(_0x2fd281(0xf3),_0x2fd281(0x119)+_0x4696ec+_0x2fd281(0x10d),_0x2fd281(0x12b));throw menuFailure(_0x3e1c3b,_0x354a99,{'stage':'create-response-validation','succeeded':[{'id':_0x4696ec,'created':!![]}],'failed':{'id':_0x4696ec,'generatedPathConfirmed':![]},'warnings':['Folder\x20'+_0x4696ec+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x21b274,'id':_0x4696ec,'path':_0x24e486},'verification':{'status':'failed','lookupCommand':_0x2fd281(0x118),'targetId':_0x4696ec}});}let _0xf429df;try{_0xf429df=await fetchMenuSnapshot(_0x59a315[_0x2fd281(0xf6)],_0x59a315[_0x2fd281(0x11d)]);}catch(_0xeb5a06){const _0x129626=describeMenuErrorCause(_0xeb5a06,_0x2fd281(0x128),_0x4696ec),_0x16e2bc=asVerificationError(_0xeb5a06,_0x2fd281(0xf7)+_0x4696ec+_0x2fd281(0xe6));throw menuFailure(_0x16e2bc,_0x354a99,{'stage':_0x2fd281(0xef),'succeeded':[{'id':_0x4696ec,'created':!![],'path':_0x24e486}],'failed':{'id':_0x4696ec,'finalFactsConfirmed':![],..._0x129626},'warnings':[_0x2fd281(0xf7)+_0x4696ec+_0x2fd281(0xfe)+JSON[_0x2fd281(0xee)](_0x24e486)+_0x2fd281(0xeb)],'after':{..._0x21b274,'id':_0x4696ec,'path':_0x24e486},'verification':{'status':'failed','lookupCommand':_0x2fd281(0x118),'targetId':_0x4696ec}});}const _0x15729b=_0xf429df['byId']['get'](_0x4696ec);let _0x2ddf68;try{assertVerified(Boolean(_0x15729b),_0x2fd281(0xed)+_0x4696ec+_0x2fd281(0x108)),_0x2ddf68=_0x15729b,assertVerified(_0x2ddf68[_0x2fd281(0x11c)]===_0x2fd281(0x12f),_0x2fd281(0x129)+_0x4696ec+_0x2fd281(0x101)),assertVerified(_0x2ddf68[_0x2fd281(0xe9)]===_0x21b274[_0x2fd281(0xe9)],_0x2fd281(0xed)+_0x4696ec+_0x2fd281(0xff)),assertVerified(_0x2ddf68[_0x2fd281(0x11f)]===_0x24e486&&Boolean(_0x2ddf68[_0x2fd281(0x11f)][_0x2fd281(0x102)]()),'Created\x20folder\x20'+_0x4696ec+_0x2fd281(0x12c)),assertVerified(_0x2ddf68[_0x2fd281(0x111)]===!![],_0x2fd281(0xed)+_0x4696ec+'\x20is\x20not\x20visible.'),assertVerified(_0x2ddf68[_0x2fd281(0x11b)]['length']===0x0,'Created\x20folder\x20'+_0x4696ec+_0x2fd281(0x10b)),assertVerified(_0x2ddf68[_0x2fd281(0x116)]===0x0,_0x2fd281(0xed)+_0x4696ec+_0x2fd281(0x122)),assertVerified(_0x2ddf68[_0x2fd281(0x125)]===_0x21b274[_0x2fd281(0x125)],_0x2fd281(0xed)+_0x4696ec+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x2ddf68[_0x2fd281(0xe8)]===_0x21b274[_0x2fd281(0xe8)],'Created\x20folder\x20'+_0x4696ec+'\x20has\x20unexpected\x20parent\x20'+(_0x2ddf68[_0x2fd281(0xe8)]??_0x2fd281(0x120))+'.'),assertVerified(_0x2ddf68[_0x2fd281(0x103)]==null,'Created\x20folder\x20'+_0x4696ec+_0x2fd281(0xfa));const _0x129ed3=_0x2ddf68[_0x2fd281(0xe8)]==null?undefined:requireFolder(_0xf429df,_0x2ddf68[_0x2fd281(0xe8)]);assertVerified(_0x2ddf68[_0x2fd281(0x127)]===(_0x129ed3?_0x129ed3[_0x2fd281(0x127)]+0x1:0x0),'Created\x20folder\x20'+_0x4696ec+_0x2fd281(0xf0));}catch(_0x1d2a92){const _0x35e6f8=describeMenuErrorCause(_0x1d2a92,'verify\x20folder\x20creation',_0x4696ec),_0x2838eb=asVerificationError(_0x1d2a92,_0x2fd281(0xf7)+_0x4696ec+_0x2fd281(0x12d));throw menuFailure(_0x2838eb,_0x354a99,{'stage':_0x2fd281(0xef),'succeeded':[{'id':_0x4696ec,'created':!![],'path':_0x24e486}],'failed':{'id':_0x4696ec,'finalFactsConfirmed':![],..._0x35e6f8},'warnings':[_0x2fd281(0xf7)+_0x4696ec+_0x2fd281(0xf4)],'after':_0x15729b??{..._0x21b274,'id':_0x4696ec,'path':_0x24e486},'verification':{'status':_0x2fd281(0x10a),'lookupCommand':_0x2fd281(0x118),'targetId':_0x4696ec}});}const _0x25247a=mutationResult({..._0x354a99,'after':_0x2ddf68,'dryRun':![],'succeeded':[{'id':_0x4696ec,'type':'folder','path':_0x24e486}],'verification':{'checkedBy':_0x2fd281(0x11a),'snapshotHash':_0xf429df[_0x2fd281(0xe7)],'folder':!![],'path':_0x24e486,'emptyResources':!![]}});return{'ok':!![],'data':_0x25247a,'message':_0x2fd281(0x10f)+_0x4696ec+'.'};}};function validateCreateInput(_0xcaaf52){const _0x160d9c=a115_0x56f868,_0x132326=_0xcaaf52[_0x160d9c(0x121)](_0x160d9c(0xe9))[_0x160d9c(0x102)]();if(!_0x132326)throw CliErrors[_0x160d9c(0x11e)]('label');parseParentId(_0xcaaf52,_0x160d9c(0x104)),validateSort(_0xcaaf52);}async function buildCreatePlan(_0x5d70f6,_0x3361ff){const _0x2ef230=a115_0x56f868,_0x1bca84=await fetchMutationSnapshot(_0x5d70f6,_0x2ef230(0xf2)),_0x226e64=parseParentId(_0x5d70f6,_0x2ef230(0x104))??null;if(_0x226e64!=null)requireFolder(_0x1bca84,_0x226e64);const _0x28f644=validateSort(_0x5d70f6),_0x27ff9b=_0x28f644??nextSiblingSort(_0x1bca84,_0x226e64,_0x2ef230(0x12f)),_0x3cf8e3=_0x5d70f6[_0x2ef230(0x121)](_0x2ef230(0xe9))['trim']();return mutationResult({'operation':_0x2ef230(0x124),'selector':{'label':_0x3cf8e3,'parentId':_0x226e64},'before':null,'after':{'id':null,'parentId':_0x226e64,'label':_0x3cf8e3,'path':_0x2ef230(0x112),'type':'folder','visible':!![],'sort':_0x27ff9b,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x3361ff,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2ef230(0x123),'method':_0x2ef230(0xec),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x226e64),'label':_0x3cf8e3,'type':_0x2ef230(0x12f),'visible':!![],'sort':_0x27ff9b,'extend':{}}}],'snapshotHash':_0x1bca84[_0x2ef230(0xe7)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}function a115_0x2ae1(){const _0xc4f6e4=['POST','Created\x20folder\x20','stringify','verification','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','after','create\x20folder','menu_create_response_invalid','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','3069521iwErBp','appCode','Folder\x20','string','Would\x20create\x20empty\x20folder\x20\x22','\x20unexpectedly\x20owns\x20a\x20page.','isSafeInteger','13250340JAsHKt','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','\x20may\x20exist\x20online\x20at\x20path\x20','\x20has\x20an\x20unexpected\x20label.','3777672lmxDWD','\x20is\x20not\x20type\x20folder.','trim','pageId','parent-id','1029680yHQWpM','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x22\x20with\x20a\x20platform-generated\x20path.','\x20is\x20missing\x20from\x20menu\x20list.','98995ixUhvw','failed','\x20has\x20resources.','430ZwkHph','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','4xoojrt','Created\x20menu\x20folder\x20','write','visible','<platform-generated>','/smartapi/menu/create','597VfbIzU','Folder\x20label','childrenCount','9JmxnvX','rabetbase\x20menu\x20list\x20--format\x20json','Menu\x20create\x20response\x20for\x20folder\x20','menu\x20list','resources','type','cookie','flagMissing','path','root','str','\x20is\x20not\x20empty.','create-folder','group-create','sort','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','depth','verify\x20folder\x20creation','Created\x20menu\x20','create-response-validation','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','127615bQDnHl','folder','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','hash','parentId','label','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.',';\x20verify\x20it\x20before\x20retrying.'];a115_0x2ae1=function(){return _0xc4f6e4;};return a115_0x2ae1();}
@@ -1 +1 @@
1
- const a115_0x5a7dbb=a115_0x4956;(function(_0x29765f,_0x8b5681){const _0x162972=a115_0x4956,_0x1d2201=_0x29765f();while(!![]){try{const _0x1d9d07=-parseInt(_0x162972(0x94))/0x1+parseInt(_0x162972(0x7d))/0x2*(parseInt(_0x162972(0x91))/0x3)+parseInt(_0x162972(0x6e))/0x4+parseInt(_0x162972(0x81))/0x5*(parseInt(_0x162972(0x97))/0x6)+parseInt(_0x162972(0x93))/0x7+parseInt(_0x162972(0x8b))/0x8*(parseInt(_0x162972(0x7c))/0x9)+-parseInt(_0x162972(0x8a))/0xa*(parseInt(_0x162972(0x8c))/0xb);if(_0x1d9d07===_0x8b5681)break;else _0x1d2201['push'](_0x1d2201['shift']());}catch(_0x12604f){_0x1d2201['push'](_0x1d2201['shift']());}}}(a115_0xae0d,0x3db16));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a115_0x4956(_0x3bdb25,_0x4acd13){_0x3bdb25=_0x3bdb25-0x6d;const _0xae0dd9=a115_0xae0d();let _0x495600=_0xae0dd9[_0x3bdb25];return _0x495600;}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':a115_0x5a7dbb(0x6f),'path':a115_0x5a7dbb(0x78)}];export const menuGroupUpdate={'service':a115_0x5a7dbb(0x95),'command':a115_0x5a7dbb(0x86),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a115_0x5a7dbb(0x90),'structuredErrors':!![],'rejectedFlags':[{'name':'parent-id','message':a115_0x5a7dbb(0x79),'hint':a115_0x5a7dbb(0x83)}],'flags':[MENU_ID_FLAG,{'name':a115_0x5a7dbb(0x84),'type':'string','description':a115_0x5a7dbb(0x8e)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5befe0){validateUpdateInput(_0x5befe0);},async 'dryRun'(_0x230fa7){const _0x1f97f0=a115_0x5a7dbb;validateUpdateInput(_0x230fa7);const {plan:_0x1856b7,patch:_0x2bd56b}=await buildUpdatePlan(_0x230fa7,!![]);return menuDryRunResult(_0x1856b7,{'method':'POST','url':_0x1f97f0(0x78),'body':_0x2bd56b,'description':'Would\x20update\x20folder\x20'+_0x1856b7[_0x1f97f0(0x98)]['id']+'.'});},async 'execute'(_0xc5ecd6){const _0x45af14=a115_0x5a7dbb;validateUpdateInput(_0xc5ecd6);const {plan:_0x49ec69,patch:_0x47e058,noChanges:_0x17621a}=await buildUpdatePlan(_0xc5ecd6,![]),_0x34d9c6=Number(_0x49ec69[_0x45af14(0x98)]['id']),_0x15dfd4=await recheckMutationSnapshot(_0xc5ecd6,_0x49ec69,_0x45af14(0x7a),_0x34d9c6);if(!_0x17621a)try{await updateMenuEntity(_0xc5ecd6[_0x45af14(0x6d)],_0xc5ecd6['cookie'],_0x47e058);}catch(_0x29f327){const _0xf71d04=mapMenuApiError(_0x29f327,_0x45af14(0x7a),_0x34d9c6);throw menuFailure(_0xf71d04,_0x49ec69,{'stage':_0x45af14(0x85),'failed':{'id':_0x34d9c6}});}let _0x1c66b4=_0x15dfd4,_0x1111d7;try{!_0x17621a&&(_0x1c66b4=await fetchMenuSnapshot(_0xc5ecd6[_0x45af14(0x6d)],_0xc5ecd6['cookie'])),_0x1111d7=requireMenu(_0x1c66b4,_0x34d9c6),verifyPatch(_0x1111d7,_0x47e058),_0x1111d7[_0x45af14(0x76)]!=null&&requireFolder(_0x1c66b4,_0x1111d7[_0x45af14(0x76)]);}catch(_0x32825f){const _0x367cdd=describeMenuErrorCause(_0x32825f,'verify\x20folder\x20update',_0x34d9c6),_0x2f4a98=asVerificationError(_0x32825f,_0x45af14(0x8f)+_0x34d9c6+_0x45af14(0x72));throw menuFailure(_0x2f4a98,_0x49ec69,{'stage':'verification','succeeded':[{'id':_0x34d9c6,'updateRequested':!_0x17621a,'skipped':_0x17621a}],'failed':{'id':_0x34d9c6,'requestedStateConfirmed':![],..._0x367cdd},'warnings':['The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x45af14(0x92),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x34d9c6}});}const _0x50c3a2=mutationResult({..._0x49ec69,'after':_0x1111d7,'dryRun':![],'succeeded':[{'id':_0x34d9c6,'updated':!_0x17621a,'skipped':_0x17621a}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x1c66b4[_0x45af14(0x88)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x50c3a2,'message':_0x17621a?_0x45af14(0x71)+_0x34d9c6+_0x45af14(0x80):'Updated\x20folder\x20'+_0x34d9c6+'.'};}};function a115_0xae0d(){const _0x270b19=['parent-id','\x20is\x20type\x20\x22','appCode','10556NurxCH','POST','Menu\x20','Folder\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','str','trim','No\x20online\x20fields\x20would\x20change.','parentId','\x20label\x20update\x20did\x20not\x20take\x20effect.','/smartapi/menu/update','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','update\x20folder','validation','7839jBktxM','2wwStDh','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','--label\x20cannot\x20be\x20empty.','\x20already\x20matches\x20the\x20requested\x20state.','5030NPMmGt','type','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','label','update','group-update','\x22,\x20not\x20folder.','hash','folder','1142370bCjqMc','3440UvQHKS','77XgxThe','sort','New\x20folder\x20label','Update\x20request\x20for\x20folder\x20','write','1243497AmqOth','failed','2311624YFMJWG','348209gvzkkO','menu','menu_not_folder','1662uFqvhb','selector'];a115_0xae0d=function(){return _0x270b19;};return a115_0xae0d();}function validateUpdateInput(_0x2ea98e){const _0x4b9079=a115_0x5a7dbb;validateExactId(_0x2ea98e);if(hasFlag(_0x2ea98e,_0x4b9079(0x99)))throw CliErrors['validation'](_0x4b9079(0x79),'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.');if(!hasFlag(_0x2ea98e,_0x4b9079(0x84))&&!hasFlag(_0x2ea98e,_0x4b9079(0x8d)))throw CliErrors[_0x4b9079(0x7b)]('At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.');if(hasFlag(_0x2ea98e,_0x4b9079(0x84))&&!_0x2ea98e[_0x4b9079(0x73)](_0x4b9079(0x84))[_0x4b9079(0x74)]())throw CliErrors[_0x4b9079(0x7b)](_0x4b9079(0x7f));validateSort(_0x2ea98e);}async function buildUpdatePlan(_0x233c1c,_0x3f6f92){const _0x16bee2=a115_0x5a7dbb,_0xd3182b=validateExactId(_0x233c1c),_0x58d8f8=await fetchMutationSnapshot(_0x233c1c,_0x16bee2(0x7a),_0xd3182b),_0x2eff74=requireMenu(_0x58d8f8,_0xd3182b);if(_0x2eff74['type']!==_0x16bee2(0x89))throw menuError(_0x16bee2(0x96),_0x16bee2(0x70)+_0xd3182b+_0x16bee2(0x9a)+(_0x2eff74[_0x16bee2(0x82)]||'unknown')+_0x16bee2(0x87),_0x16bee2(0x7e));assertExpectedState(_0x233c1c,_0x2eff74);const _0x1457ad={'id':_0xd3182b},_0x49fee7={..._0x2eff74};if(hasFlag(_0x233c1c,'label')){const _0x528614=_0x233c1c['str'](_0x16bee2(0x84))[_0x16bee2(0x74)]();_0x1457ad[_0x16bee2(0x84)]=_0x528614,_0x49fee7['label']=_0x528614;}if(hasFlag(_0x233c1c,_0x16bee2(0x8d))){const _0x3e608f=validateSort(_0x233c1c);_0x1457ad['sort']=_0x3e608f,_0x49fee7[_0x16bee2(0x8d)]=_0x3e608f;}const _0x39c022=sameRequestedState(_0x2eff74,_0x49fee7),_0x5785a5=_0x39c022?[_0x16bee2(0x75)]:[];return{'patch':_0x1457ad,'noChanges':_0x39c022,'plan':mutationResult({'operation':'group-update','selector':{'id':_0xd3182b},'before':_0x2eff74,'after':_0x49fee7,'dryRun':_0x3f6f92,'backend':[...BACKEND],'snapshotHash':_0x58d8f8[_0x16bee2(0x88)],'warnings':_0x5785a5})};}function sameRequestedState(_0x471652,_0x2111f6){const _0x5ea081=a115_0x5a7dbb;return _0x471652[_0x5ea081(0x84)]===_0x2111f6[_0x5ea081(0x84)]&&_0x471652[_0x5ea081(0x8d)]===_0x2111f6[_0x5ea081(0x8d)];}function verifyPatch(_0x180070,_0x15931b){const _0x5ebe13=a115_0x5a7dbb;assertVerified(_0x180070['type']===_0x5ebe13(0x89),_0x5ebe13(0x70)+_0x180070['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x15931b['label']!==undefined&&assertVerified(_0x180070['label']===_0x15931b[_0x5ebe13(0x84)],_0x5ebe13(0x71)+_0x180070['id']+_0x5ebe13(0x77)),_0x15931b[_0x5ebe13(0x8d)]!==undefined&&assertVerified(_0x180070[_0x5ebe13(0x8d)]===_0x15931b[_0x5ebe13(0x8d)],'Folder\x20'+_0x180070['id']+'\x20sort\x20update\x20did\x20not\x20take\x20effect.');}
1
+ function a116_0x2007(){const _0xbbe7ab=['1918uqupKA','hash','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','update','2050svRLAC','string','appCode','New\x20folder\x20label','419256PYPSaw','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','\x20is\x20type\x20\x22','verification','\x20label\x20update\x20did\x20not\x20take\x20effect.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','Update\x20request\x20for\x20folder\x20','Menu\x20','menu\x20list','menu','1822248NUIpEg','Folder\x20','2276169oUXHxs','folder','1557324RsuFdz','update\x20folder','Would\x20update\x20folder\x20','validation','220bbKRGg','trim','selector','\x22,\x20not\x20folder.','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','type','\x20sort\x20update\x20did\x20not\x20take\x20effect.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','14057600mWMUIw','parentId','POST','menu_not_folder','str','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','/smartapi/menu/update','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','verify\x20folder\x20update','unknown','15868xojStw','Updated\x20folder\x20','cookie','label','10002CdklaO','parent-id','sort','rabetbase\x20menu\x20list\x20--format\x20json'];a116_0x2007=function(){return _0xbbe7ab;};return a116_0x2007();}const a116_0xdf30fb=a116_0x287c;(function(_0x4eb522,_0x4f3018){const _0x53c63d=a116_0x287c,_0xc3e3e8=_0x4eb522();while(!![]){try{const _0xecb2c6=-parseInt(_0x53c63d(0x1f2))/0x1+parseInt(_0x53c63d(0x218))/0x2+parseInt(_0x53c63d(0x1f0))/0x3+parseInt(_0x53c63d(0x208))/0x4*(-parseInt(_0x53c63d(0x214))/0x5)+-parseInt(_0x53c63d(0x20c))/0x6*(-parseInt(_0x53c63d(0x210))/0x7)+-parseInt(_0x53c63d(0x1fe))/0x8+-parseInt(_0x53c63d(0x222))/0x9*(-parseInt(_0x53c63d(0x1f6))/0xa);if(_0xecb2c6===_0x4f3018)break;else _0xc3e3e8['push'](_0xc3e3e8['shift']());}catch(_0x296586){_0xc3e3e8['push'](_0xc3e3e8['shift']());}}}(a116_0x2007,0xe5203));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':a116_0xdf30fb(0x200),'path':a116_0xdf30fb(0x204)}];export const menuGroupUpdate={'service':a116_0xdf30fb(0x221),'command':'group-update','description':a116_0xdf30fb(0x1fa),'risk':'write','structuredErrors':!![],'rejectedFlags':[{'name':'parent-id','message':a116_0xdf30fb(0x205),'hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a116_0xdf30fb(0x20b),'type':a116_0xdf30fb(0x215),'description':a116_0xdf30fb(0x217)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x139cb3){validateUpdateInput(_0x139cb3);},async 'dryRun'(_0x4f9253){const _0x5d4d1b=a116_0xdf30fb;validateUpdateInput(_0x4f9253);const {plan:_0x5583e0,patch:_0x42e270}=await buildUpdatePlan(_0x4f9253,!![]);return menuDryRunResult(_0x5583e0,{'method':_0x5d4d1b(0x200),'url':_0x5d4d1b(0x204),'body':_0x42e270,'description':_0x5d4d1b(0x1f4)+_0x5583e0[_0x5d4d1b(0x1f8)]['id']+'.'});},async 'execute'(_0x45eb5b){const _0x494791=a116_0xdf30fb;validateUpdateInput(_0x45eb5b);const {plan:_0x63b65,patch:_0x4d435c,noChanges:_0x243bbc}=await buildUpdatePlan(_0x45eb5b,![]),_0x345692=Number(_0x63b65[_0x494791(0x1f8)]['id']),_0x33d513=await recheckMutationSnapshot(_0x45eb5b,_0x63b65,_0x494791(0x1f3),_0x345692);if(!_0x243bbc)try{await updateMenuEntity(_0x45eb5b['appCode'],_0x45eb5b[_0x494791(0x20a)],_0x4d435c);}catch(_0x37a57b){const _0x1c0046=mapMenuApiError(_0x37a57b,_0x494791(0x1f3),_0x345692);throw menuFailure(_0x1c0046,_0x63b65,{'stage':_0x494791(0x213),'failed':{'id':_0x345692}});}let _0x1fc503=_0x33d513,_0x4e64ef;try{!_0x243bbc&&(_0x1fc503=await fetchMenuSnapshot(_0x45eb5b[_0x494791(0x216)],_0x45eb5b[_0x494791(0x20a)])),_0x4e64ef=requireMenu(_0x1fc503,_0x345692),verifyPatch(_0x4e64ef,_0x4d435c),_0x4e64ef[_0x494791(0x1ff)]!=null&&requireFolder(_0x1fc503,_0x4e64ef[_0x494791(0x1ff)]);}catch(_0x5885e0){const _0x4d15dd=describeMenuErrorCause(_0x5885e0,_0x494791(0x206),_0x345692),_0xa4807d=asVerificationError(_0x5885e0,_0x494791(0x21e)+_0x345692+_0x494791(0x21d));throw menuFailure(_0xa4807d,_0x63b65,{'stage':_0x494791(0x21b),'succeeded':[{'id':_0x345692,'updateRequested':!_0x243bbc,'skipped':_0x243bbc}],'failed':{'id':_0x345692,'requestedStateConfirmed':![],..._0x4d15dd},'warnings':[_0x494791(0x219)],'verification':{'status':'failed','lookupCommand':_0x494791(0x20f),'targetId':_0x345692}});}const _0x344b3f=mutationResult({..._0x63b65,'after':_0x4e64ef,'dryRun':![],'succeeded':[{'id':_0x345692,'updated':!_0x243bbc,'skipped':_0x243bbc}],'verification':{'checkedBy':_0x494791(0x220),'snapshotHash':_0x1fc503[_0x494791(0x211)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x344b3f,'message':_0x243bbc?_0x494791(0x1ef)+_0x345692+'\x20already\x20matches\x20the\x20requested\x20state.':_0x494791(0x209)+_0x345692+'.'};}};function a116_0x287c(_0xb41790,_0x3b0a63){_0xb41790=_0xb41790-0x1ef;const _0x200776=a116_0x2007();let _0x287cc5=_0x200776[_0xb41790];return _0x287cc5;}function validateUpdateInput(_0x4e65b7){const _0x29ce08=a116_0xdf30fb;validateExactId(_0x4e65b7);if(hasFlag(_0x4e65b7,_0x29ce08(0x20d)))throw CliErrors[_0x29ce08(0x1f5)]('Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.',_0x29ce08(0x212));if(!hasFlag(_0x4e65b7,'label')&&!hasFlag(_0x4e65b7,_0x29ce08(0x20e)))throw CliErrors[_0x29ce08(0x1f5)](_0x29ce08(0x203));if(hasFlag(_0x4e65b7,_0x29ce08(0x20b))&&!_0x4e65b7[_0x29ce08(0x202)](_0x29ce08(0x20b))[_0x29ce08(0x1f7)]())throw CliErrors['validation']('--label\x20cannot\x20be\x20empty.');validateSort(_0x4e65b7);}async function buildUpdatePlan(_0x44f9d8,_0x4ca0b7){const _0x6bd760=a116_0xdf30fb,_0x5f7881=validateExactId(_0x44f9d8),_0x5b4b02=await fetchMutationSnapshot(_0x44f9d8,_0x6bd760(0x1f3),_0x5f7881),_0x23bb1=requireMenu(_0x5b4b02,_0x5f7881);if(_0x23bb1[_0x6bd760(0x1fb)]!=='folder')throw menuError(_0x6bd760(0x201),_0x6bd760(0x21f)+_0x5f7881+_0x6bd760(0x21a)+(_0x23bb1[_0x6bd760(0x1fb)]||_0x6bd760(0x207))+_0x6bd760(0x1f9),_0x6bd760(0x1fd));assertExpectedState(_0x44f9d8,_0x23bb1);const _0x5b4469={'id':_0x5f7881},_0x47256d={..._0x23bb1};if(hasFlag(_0x44f9d8,_0x6bd760(0x20b))){const _0x1cc1c1=_0x44f9d8[_0x6bd760(0x202)](_0x6bd760(0x20b))[_0x6bd760(0x1f7)]();_0x5b4469[_0x6bd760(0x20b)]=_0x1cc1c1,_0x47256d[_0x6bd760(0x20b)]=_0x1cc1c1;}if(hasFlag(_0x44f9d8,_0x6bd760(0x20e))){const _0x2d26a2=validateSort(_0x44f9d8);_0x5b4469[_0x6bd760(0x20e)]=_0x2d26a2,_0x47256d['sort']=_0x2d26a2;}const _0x419a4e=sameRequestedState(_0x23bb1,_0x47256d),_0x1c81b6=_0x419a4e?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x5b4469,'noChanges':_0x419a4e,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x5f7881},'before':_0x23bb1,'after':_0x47256d,'dryRun':_0x4ca0b7,'backend':[...BACKEND],'snapshotHash':_0x5b4b02[_0x6bd760(0x211)],'warnings':_0x1c81b6})};}function sameRequestedState(_0x201131,_0x4e0b05){const _0x4fb794=a116_0xdf30fb;return _0x201131['label']===_0x4e0b05['label']&&_0x201131[_0x4fb794(0x20e)]===_0x4e0b05[_0x4fb794(0x20e)];}function verifyPatch(_0x5c0b46,_0x25e950){const _0x227d75=a116_0xdf30fb;assertVerified(_0x5c0b46[_0x227d75(0x1fb)]===_0x227d75(0x1f1),_0x227d75(0x21f)+_0x5c0b46['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x25e950[_0x227d75(0x20b)]!==undefined&&assertVerified(_0x5c0b46[_0x227d75(0x20b)]===_0x25e950['label'],_0x227d75(0x1ef)+_0x5c0b46['id']+_0x227d75(0x21c)),_0x25e950['sort']!==undefined&&assertVerified(_0x5c0b46[_0x227d75(0x20e)]===_0x25e950[_0x227d75(0x20e)],'Folder\x20'+_0x5c0b46['id']+_0x227d75(0x1fc));}
@@ -1 +1 @@
1
- (function(_0x11f168,_0x1306f7){const _0x53d99f=a116_0x4ce4,_0x3a3057=_0x11f168();while(!![]){try{const _0x54ec42=parseInt(_0x53d99f(0x7d))/0x1+-parseInt(_0x53d99f(0x81))/0x2*(parseInt(_0x53d99f(0x80))/0x3)+-parseInt(_0x53d99f(0x7e))/0x4+-parseInt(_0x53d99f(0x83))/0x5*(parseInt(_0x53d99f(0x7c))/0x6)+parseInt(_0x53d99f(0x84))/0x7*(parseInt(_0x53d99f(0x82))/0x8)+parseInt(_0x53d99f(0x7f))/0x9+parseInt(_0x53d99f(0x7b))/0xa*(parseInt(_0x53d99f(0x85))/0xb);if(_0x54ec42===_0x1306f7)break;else _0x3a3057['push'](_0x3a3057['shift']());}catch(_0x12ff36){_0x3a3057['push'](_0x3a3057['shift']());}}}(a116_0x2ab9,0x46871));function a116_0x4ce4(_0x53cdca,_0x74b66b){_0x53cdca=_0x53cdca-0x7b;const _0x2ab99e=a116_0x2ab9();let _0x4ce444=_0x2ab99e[_0x53cdca];return _0x4ce444;}import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';function a116_0x2ab9(){const _0x457331=['32976wVAgeg','37590hYyozd','133IkPGUH','234586EFDzij','260lJrzHQ','18gMhgRm','28700lSnyGn','1485724AwZuBX','4859217zlxJfo','4083IECgVM','762qtgoXT'];a116_0x2ab9=function(){return _0x457331;};return a116_0x2ab9();}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(_0x1cca30,_0x697b22){const _0x553c87=a117_0xd6f4,_0x359459=_0x1cca30();while(!![]){try{const _0x24cef3=-parseInt(_0x553c87(0xac))/0x1*(parseInt(_0x553c87(0xb3))/0x2)+parseInt(_0x553c87(0xaa))/0x3*(parseInt(_0x553c87(0xab))/0x4)+-parseInt(_0x553c87(0xb1))/0x5+parseInt(_0x553c87(0xb0))/0x6+-parseInt(_0x553c87(0xb2))/0x7+parseInt(_0x553c87(0xae))/0x8+-parseInt(_0x553c87(0xaf))/0x9*(-parseInt(_0x553c87(0xad))/0xa);if(_0x24cef3===_0x697b22)break;else _0x359459['push'](_0x359459['shift']());}catch(_0xc683d3){_0x359459['push'](_0x359459['shift']());}}}(a117_0x116c,0x6a585));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';function a117_0xd6f4(_0x29631b,_0x11cc17){_0x29631b=_0x29631b-0xaa;const _0x116c54=a117_0x116c();let _0xd6f492=_0x116c54[_0x29631b];return _0xd6f492;}import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';function a117_0x116c(){const _0x39b3c9=['514626JECfvr','16GalHeb','92362mdblMh','1168580gzLABh','5591928fQjYSV','81VeUxzP','357288ZxesMO','4313170jehHPI','2568636UICjyP','18HGHPOr'];a117_0x116c=function(){return _0x39b3c9;};return a117_0x116c();}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 a117_0x5fb9a8=a117_0x55f0;function a117_0x55f0(_0x36db2f,_0x197ab1){_0x36db2f=_0x36db2f-0x12b;const _0x26c16a=a117_0x26c1();let _0x55f0e8=_0x26c16a[_0x36db2f];return _0x55f0e8;}(function(_0xef3e22,_0x275128){const _0x338ea4=a117_0x55f0,_0x2255bb=_0xef3e22();while(!![]){try{const _0x13f4ae=parseInt(_0x338ea4(0x12f))/0x1*(parseInt(_0x338ea4(0x13b))/0x2)+parseInt(_0x338ea4(0x12b))/0x3+parseInt(_0x338ea4(0x131))/0x4*(parseInt(_0x338ea4(0x137))/0x5)+-parseInt(_0x338ea4(0x136))/0x6+parseInt(_0x338ea4(0x12e))/0x7*(parseInt(_0x338ea4(0x135))/0x8)+-parseInt(_0x338ea4(0x13c))/0x9+parseInt(_0x338ea4(0x12c))/0xa*(-parseInt(_0x338ea4(0x133))/0xb);if(_0x13f4ae===_0x275128)break;else _0x2255bb['push'](_0x2255bb['shift']());}catch(_0x1d8f9d){_0x2255bb['push'](_0x2255bb['shift']());}}}(a117_0x26c1,0xec303));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a117_0x26c1(){const _0x3fbb0a=['591483lSEpaA','620Hcarxk','No\x20menus\x20found.','7IVWGfP','418JIWWEo','bool','18828jSurZi','list','286099oSrYnK','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','13522384nqgLfM','8001384GcRBGK','1935sZcmwg','total','Found\x20','map','8836ZUatbC','14780187kgyJUp','menus','appCode'];a117_0x26c1=function(){return _0x3fbb0a;};return a117_0x26c1();}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':'menu','command':a117_0x5fb9a8(0x132),'description':a117_0x5fb9a8(0x134),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':'verbose','type':'boolean','description':'Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing'}],async 'execute'(_0x13f5fa){const _0x312eb9=a117_0x5fb9a8,_0x66bc63=_0x13f5fa[_0x312eb9(0x130)]('verbose'),_0x1a6ca7=await fetchMenuSnapshot(_0x13f5fa[_0x312eb9(0x13e)],_0x13f5fa['cookie'],{'verbose':_0x66bc63});return{'ok':!![],'data':{'total':_0x1a6ca7[_0x312eb9(0x138)],'snapshotHash':_0x1a6ca7['hash'],'menus':_0x1a6ca7[_0x312eb9(0x13d)][_0x312eb9(0x13a)](toMenuListItem)},'message':_0x1a6ca7[_0x312eb9(0x138)]===0x0?_0x312eb9(0x12d):_0x312eb9(0x139)+_0x1a6ca7['total']+'\x20menu(s)'};}};
1
+ const a118_0x4e6dc5=a118_0x2c0c;function a118_0x39ad(){const _0x35e5bc=['bool','1362676FtfyTo','Found\x20','hash','list','3548hUADep','1055slGGAp','101897ZkwPcu','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','270042mhKPjK','698146xBllFt','74658zjuufJ','verbose','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','7668344XJUzbj','No\x20menus\x20found.','read','cookie','menus','total'];a118_0x39ad=function(){return _0x35e5bc;};return a118_0x39ad();}(function(_0x100aa3,_0x265c91){const _0x1720d7=a118_0x2c0c,_0x4df913=_0x100aa3();while(!![]){try{const _0x439cb7=-parseInt(_0x1720d7(0x9d))/0x1+-parseInt(_0x1720d7(0xa0))/0x2+parseInt(_0x1720d7(0x9f))/0x3+parseInt(_0x1720d7(0x9b))/0x4*(-parseInt(_0x1720d7(0x9c))/0x5)+-parseInt(_0x1720d7(0xa1))/0x6+-parseInt(_0x1720d7(0xab))/0x7+parseInt(_0x1720d7(0xa4))/0x8;if(_0x439cb7===_0x265c91)break;else _0x4df913['push'](_0x4df913['shift']());}catch(_0x3a146f){_0x4df913['push'](_0x4df913['shift']());}}}(a118_0x39ad,0x31a37));function a118_0x2c0c(_0x3e4281,_0x184526){_0x3e4281=_0x3e4281-0x9a;const _0x39ad50=a118_0x39ad();let _0x2c0c88=_0x39ad50[_0x3e4281];return _0x2c0c88;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':'menu','command':a118_0x4e6dc5(0x9a),'description':a118_0x4e6dc5(0x9e),'risk':a118_0x4e6dc5(0xa6),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a118_0x4e6dc5(0xa2),'type':'boolean','description':a118_0x4e6dc5(0xa3)}],async 'execute'(_0x28f125){const _0x142ff3=a118_0x4e6dc5,_0x592e68=_0x28f125[_0x142ff3(0xaa)](_0x142ff3(0xa2)),_0xc5f5f9=await fetchMenuSnapshot(_0x28f125['appCode'],_0x28f125[_0x142ff3(0xa7)],{'verbose':_0x592e68});return{'ok':!![],'data':{'total':_0xc5f5f9[_0x142ff3(0xa9)],'snapshotHash':_0xc5f5f9[_0x142ff3(0xad)],'menus':_0xc5f5f9[_0x142ff3(0xa8)]['map'](toMenuListItem)},'message':_0xc5f5f9[_0x142ff3(0xa9)]===0x0?_0x142ff3(0xa5):_0x142ff3(0xac)+_0xc5f5f9[_0x142ff3(0xa9)]+'\x20menu(s)'};}};
@@ -1 +1 @@
1
- const a118_0x16a2a5=a118_0x5d29;(function(_0x3717b4,_0x60fa17){const _0x268bb4=a118_0x5d29,_0x3878b1=_0x3717b4();while(!![]){try{const _0xcfd69=parseInt(_0x268bb4(0x1d1))/0x1*(parseInt(_0x268bb4(0x1f7))/0x2)+-parseInt(_0x268bb4(0x1f6))/0x3*(parseInt(_0x268bb4(0x1df))/0x4)+parseInt(_0x268bb4(0x1dc))/0x5+-parseInt(_0x268bb4(0x1f4))/0x6*(parseInt(_0x268bb4(0x1dd))/0x7)+-parseInt(_0x268bb4(0x1fb))/0x8+parseInt(_0x268bb4(0x1d0))/0x9*(parseInt(_0x268bb4(0x1f9))/0xa)+-parseInt(_0x268bb4(0x1d4))/0xb*(-parseInt(_0x268bb4(0x1e3))/0xc);if(_0xcfd69===_0x60fa17)break;else _0x3878b1['push'](_0x3878b1['shift']());}catch(_0x4edffe){_0x3878b1['push'](_0x3878b1['shift']());}}}(a118_0x3d88,0x1eae4));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a118_0x3d88(){const _0x11bc63=['cookie','POST','sort','991245EmvFnb','35LwSWOo','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','8ECgcND','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','verify\x20menu\x20move','Move\x20request\x20for\x20menu\x20','12QSFovt','parentId','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','folder','appCode','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','Would\x20move\x20menu\x20','menu_state_drift','childrenCount','verification','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','menu','failed','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','update','menu_move_source_not_leaf','rabetbase\x20menu\x20list\x20--format\x20compress','122604qNlFIW','write','298239UkxWSH','2vuEgpa','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','20yrONfX','Menu\x20','1591712mqFqqk','expect-parent-id','menu\x20list','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','/smartapi/menu/update','557343gpubrK','105482lpeHbv','move-menu','parent-id','2178473CbskTQ','after','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','Moved\x20menu\x20','hash'];a118_0x3d88=function(){return _0x11bc63;};return a118_0x3d88();}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,requireFolder,requireMenu,toApiParentId,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';function a118_0x5d29(_0x3a7b53,_0x10ef80){_0x3a7b53=_0x3a7b53-0x1cc;const _0x3d8879=a118_0x3d88();let _0x5d2968=_0x3d8879[_0x3a7b53];return _0x5d2968;}import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':'POST','path':a118_0x16a2a5(0x1cf)}];export const menuMove={'service':'menu','command':'move','description':a118_0x16a2a5(0x1e8),'risk':a118_0x16a2a5(0x1f5),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x40f639){validateMoveInput(_0x40f639);},async 'dryRun'(_0x5f2637){const _0x36d911=a118_0x16a2a5,{plan:_0x1ead2e,patch:_0x63e7a5}=await buildMovePlan(_0x5f2637,!![]);return menuDryRunResult(_0x1ead2e,{'method':_0x36d911(0x1da),'url':'/smartapi/menu/update','body':{..._0x63e7a5,'appCode':_0x5f2637[_0x36d911(0x1e7)]},'description':_0x36d911(0x1e9)+_0x63e7a5['id']+'.'});},async 'execute'(_0x39eb38){const _0x5ac8a3=a118_0x16a2a5;validateMoveInput(_0x39eb38);const {plan:_0x23e825,patch:_0x5659ea,noChanges:_0x202fbe,snapshot:_0x3c1422}=await buildMovePlan(_0x39eb38,![]),_0xff2bd1=_0x5659ea['id'];if(!_0x202fbe)try{await updateMenuEntity(_0x39eb38['appCode'],_0x39eb38['cookie'],_0x5659ea);}catch(_0x9303c8){const _0xe71b23=mapMenuApiError(_0x9303c8,'move',_0xff2bd1);throw menuFailure(_0xe71b23,_0x23e825,{'stage':_0x5ac8a3(0x1f1),'failed':{'id':_0xff2bd1},'warnings':[_0x5ac8a3(0x1f8)],'verification':{'status':_0x5ac8a3(0x1ef),'targetId':_0xff2bd1,'lookupCommand':_0x5ac8a3(0x1f3)}});}let _0x384a7d,_0x13ddb1;try{_0x384a7d=_0x202fbe?_0x3c1422:await fetchMenuSnapshot(_0x39eb38[_0x5ac8a3(0x1e7)],_0x39eb38[_0x5ac8a3(0x1d9)]),_0x13ddb1=requireMenu(_0x384a7d,_0xff2bd1),verifyMove(_0x13ddb1,_0x23e825[_0x5ac8a3(0x1d5)]),_0x13ddb1['parentId']!==null&&requireFolder(_0x384a7d,_0x13ddb1[_0x5ac8a3(0x1e4)]);}catch(_0x39b1e0){const _0x4adac7=describeMenuErrorCause(_0x39b1e0,_0x5ac8a3(0x1e1),_0xff2bd1),_0xef3204=asVerificationError(_0x39b1e0,_0x5ac8a3(0x1e2)+_0xff2bd1+_0x5ac8a3(0x1de));throw menuFailure(_0xef3204,_0x23e825,{'stage':_0x5ac8a3(0x1ec),'succeeded':[{'id':_0xff2bd1,'updateRequested':!_0x202fbe,'skipped':_0x202fbe}],'failed':{'id':_0xff2bd1,'requestedStateConfirmed':![],..._0x4adac7},'warnings':[_0x5ac8a3(0x1e0)],'verification':{'status':_0x5ac8a3(0x1ef),'targetId':_0xff2bd1,'lookupCommand':_0x5ac8a3(0x1f3)}});}const _0x360ff9=mutationResult({..._0x23e825,'after':_0x13ddb1,'dryRun':![],'succeeded':[{'id':_0xff2bd1,'updated':!_0x202fbe,'skipped':_0x202fbe}],'verification':{'checkedBy':_0x5ac8a3(0x1cc),'snapshotHash':_0x384a7d[_0x5ac8a3(0x1d8)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x360ff9,'message':_0x202fbe?'Menu\x20'+_0xff2bd1+_0x5ac8a3(0x1d6):_0x5ac8a3(0x1d7)+_0xff2bd1+'.'};}};function validateMoveInput(_0x19ffbf){const _0x51633f=a118_0x16a2a5;validateExactId(_0x19ffbf),parseParentId(_0x19ffbf,_0x51633f(0x1d3),{'required':!![]}),parseParentId(_0x19ffbf,_0x51633f(0x1fc),{'required':!![]}),validateSort(_0x19ffbf);}async function buildMovePlan(_0x117165,_0x579200){const _0x252677=a118_0x16a2a5,_0x1d5d16=validateExactId(_0x117165),_0x4d4e49=parseParentId(_0x117165,_0x252677(0x1d3),{'required':!![]}),_0x4e3959=parseParentId(_0x117165,_0x252677(0x1fc),{'required':!![]}),_0x4d193a=validateSort(_0x117165),_0x3dd149=await fetchMutationSnapshot(_0x117165,'move\x20menu',_0x1d5d16),_0x42b0c9=requireMenu(_0x3dd149,_0x1d5d16);if(_0x42b0c9['type']===_0x252677(0x1e6)||_0x42b0c9[_0x252677(0x1eb)]!==0x0)throw menuError(_0x252677(0x1f2),'Menu\x20'+_0x1d5d16+_0x252677(0x1e5),_0x252677(0x1ed));if(_0x42b0c9[_0x252677(0x1e4)]!==_0x4e3959)throw menuError(_0x252677(0x1ea),_0x252677(0x1fa)+_0x1d5d16+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x4e3959)+',\x20current\x20'+formatParent(_0x42b0c9['parentId'])+'.',_0x252677(0x1ce));_0x4d4e49!==null&&requireFolder(_0x3dd149,_0x4d4e49);const _0x2bdd5d=_0x4d193a??(_0x42b0c9[_0x252677(0x1e4)]===_0x4d4e49?_0x42b0c9['sort']??0x0:nextSiblingSort(_0x3dd149,_0x4d4e49,_0x252677(0x1ee))),_0x361a03={..._0x42b0c9,'parentId':_0x4d4e49,'sort':_0x2bdd5d},_0xc90754={'id':_0x1d5d16,'parentId':toApiParentId(_0x4d4e49),'sort':_0x2bdd5d},_0x35706e=_0x42b0c9[_0x252677(0x1e4)]===_0x4d4e49&&_0x42b0c9[_0x252677(0x1db)]===_0x2bdd5d;return{'patch':_0xc90754,'noChanges':_0x35706e,'snapshot':_0x3dd149,'plan':mutationResult({'operation':'move','selector':{'id':_0x1d5d16,'parentId':_0x4d4e49},'before':_0x42b0c9,'after':_0x361a03,'dryRun':_0x579200,'backend':[...BACKEND],'plannedActions':[{'stage':_0x252677(0x1d2),'method':'POST','path':'/smartapi/menu/update','body':{..._0xc90754,'appCode':_0x117165[_0x252677(0x1e7)]}}],'snapshotHash':_0x3dd149[_0x252677(0x1d8)],'warnings':_0x35706e?[_0x252677(0x1cd)]:[]})};}function verifyMove(_0x38a381,_0x103e36){const _0x2e0750=a118_0x16a2a5;assertVerified(_0x38a381['type']!=='folder',_0x2e0750(0x1fa)+_0x38a381['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x38a381[_0x2e0750(0x1eb)]===0x0,_0x2e0750(0x1fa)+_0x38a381['id']+'\x20is\x20no\x20longer\x20a\x20leaf.'),assertVerified(_0x38a381[_0x2e0750(0x1e4)]===_0x103e36[_0x2e0750(0x1e4)],_0x2e0750(0x1fa)+_0x38a381['id']+_0x2e0750(0x1f0)),assertVerified(_0x38a381[_0x2e0750(0x1db)]===_0x103e36['sort'],'Menu\x20'+_0x38a381['id']+'\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.');}
1
+ function a119_0x2aec(_0x229497,_0x2c50db){_0x229497=_0x229497-0xba;const _0x12c773=a119_0x12c7();let _0x2aec17=_0x12c773[_0x229497];return _0x2aec17;}const a119_0x1d8f6b=a119_0x2aec;(function(_0x2b3c78,_0x490a22){const _0x223169=a119_0x2aec,_0x58ff9a=_0x2b3c78();while(!![]){try{const _0x1c228f=-parseInt(_0x223169(0xd3))/0x1*(-parseInt(_0x223169(0xde))/0x2)+-parseInt(_0x223169(0xbc))/0x3+parseInt(_0x223169(0xe6))/0x4+-parseInt(_0x223169(0xc3))/0x5*(parseInt(_0x223169(0xcd))/0x6)+parseInt(_0x223169(0xe2))/0x7*(-parseInt(_0x223169(0xcb))/0x8)+parseInt(_0x223169(0xbb))/0x9+parseInt(_0x223169(0xd2))/0xa;if(_0x1c228f===_0x490a22)break;else _0x58ff9a['push'](_0x58ff9a['shift']());}catch(_0x5edf64){_0x58ff9a['push'](_0x58ff9a['shift']());}}}(a119_0x12c7,0x80cae));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':a119_0x1d8f6b(0xe5),'path':a119_0x1d8f6b(0xbd)}];export const menuMove={'service':a119_0x1d8f6b(0xca),'command':a119_0x1d8f6b(0xe0),'description':a119_0x1d8f6b(0xe7),'risk':a119_0x1d8f6b(0xcf),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5e98f1){validateMoveInput(_0x5e98f1);},async 'dryRun'(_0x3ba312){const _0x123a1b=a119_0x1d8f6b,{plan:_0x3db6da,patch:_0x2feca0}=await buildMovePlan(_0x3ba312,!![]);return menuDryRunResult(_0x3db6da,{'method':'POST','url':_0x123a1b(0xbd),'body':{..._0x2feca0,'appCode':_0x3ba312[_0x123a1b(0xd0)]},'description':_0x123a1b(0xce)+_0x2feca0['id']+'.'});},async 'execute'(_0x27476e){const _0x1cf184=a119_0x1d8f6b;validateMoveInput(_0x27476e);const {plan:_0x4c6b75,patch:_0xa93d52,noChanges:_0x481f38,snapshot:_0x12e00a}=await buildMovePlan(_0x27476e,![]),_0x4ffdc4=_0xa93d52['id'];if(!_0x481f38)try{await updateMenuEntity(_0x27476e[_0x1cf184(0xd0)],_0x27476e['cookie'],_0xa93d52);}catch(_0x2832c6){const _0x5b69a8=mapMenuApiError(_0x2832c6,_0x1cf184(0xe0),_0x4ffdc4);throw menuFailure(_0x5b69a8,_0x4c6b75,{'stage':_0x1cf184(0xc0),'failed':{'id':_0x4ffdc4},'warnings':[_0x1cf184(0xe3)],'verification':{'status':_0x1cf184(0xc7),'targetId':_0x4ffdc4,'lookupCommand':_0x1cf184(0xdd)}});}let _0x52936f,_0x1c5fa1;try{_0x52936f=_0x481f38?_0x12e00a:await fetchMenuSnapshot(_0x27476e[_0x1cf184(0xd0)],_0x27476e[_0x1cf184(0xd9)]),_0x1c5fa1=requireMenu(_0x52936f,_0x4ffdc4),verifyMove(_0x1c5fa1,_0x4c6b75['after']),_0x1c5fa1[_0x1cf184(0xe1)]!==null&&requireFolder(_0x52936f,_0x1c5fa1['parentId']);}catch(_0x32b27a){const _0x59b1fc=describeMenuErrorCause(_0x32b27a,_0x1cf184(0xc1),_0x4ffdc4),_0x482d33=asVerificationError(_0x32b27a,_0x1cf184(0xc2)+_0x4ffdc4+_0x1cf184(0xc6));throw menuFailure(_0x482d33,_0x4c6b75,{'stage':_0x1cf184(0xbe),'succeeded':[{'id':_0x4ffdc4,'updateRequested':!_0x481f38,'skipped':_0x481f38}],'failed':{'id':_0x4ffdc4,'requestedStateConfirmed':![],..._0x59b1fc},'warnings':[_0x1cf184(0xdf)],'verification':{'status':_0x1cf184(0xc7),'targetId':_0x4ffdc4,'lookupCommand':_0x1cf184(0xdd)}});}const _0x4b39dd=mutationResult({..._0x4c6b75,'after':_0x1c5fa1,'dryRun':![],'succeeded':[{'id':_0x4ffdc4,'updated':!_0x481f38,'skipped':_0x481f38}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x52936f['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x4b39dd,'message':_0x481f38?_0x1cf184(0xd4)+_0x4ffdc4+'\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.':_0x1cf184(0xcc)+_0x4ffdc4+'.'};}};function validateMoveInput(_0xaad917){const _0x27c6ff=a119_0x1d8f6b;validateExactId(_0xaad917),parseParentId(_0xaad917,'parent-id',{'required':!![]}),parseParentId(_0xaad917,_0x27c6ff(0xd8),{'required':!![]}),validateSort(_0xaad917);}async function buildMovePlan(_0x2f31bb,_0x240f37){const _0x346c5d=a119_0x1d8f6b,_0x2e2b85=validateExactId(_0x2f31bb),_0x3efee2=parseParentId(_0x2f31bb,_0x346c5d(0xe8),{'required':!![]}),_0x3e9ea3=parseParentId(_0x2f31bb,_0x346c5d(0xd8),{'required':!![]}),_0x48179e=validateSort(_0x2f31bb),_0x56a28b=await fetchMutationSnapshot(_0x2f31bb,_0x346c5d(0xc8),_0x2e2b85),_0x3c2849=requireMenu(_0x56a28b,_0x2e2b85);if(_0x3c2849[_0x346c5d(0xd6)]===_0x346c5d(0xdc)||_0x3c2849['childrenCount']!==0x0)throw menuError(_0x346c5d(0xd5),'Menu\x20'+_0x2e2b85+_0x346c5d(0xc9),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.');if(_0x3c2849[_0x346c5d(0xe1)]!==_0x3e9ea3)throw menuError(_0x346c5d(0xbf),'Menu\x20'+_0x2e2b85+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x3e9ea3)+_0x346c5d(0xd1)+formatParent(_0x3c2849['parentId'])+'.',_0x346c5d(0xd7));_0x3efee2!==null&&requireFolder(_0x56a28b,_0x3efee2);const _0x228aa7=_0x48179e??(_0x3c2849['parentId']===_0x3efee2?_0x3c2849[_0x346c5d(0xc4)]??0x0:nextSiblingSort(_0x56a28b,_0x3efee2,_0x346c5d(0xca))),_0x3acd49={..._0x3c2849,'parentId':_0x3efee2,'sort':_0x228aa7},_0x11b087={'id':_0x2e2b85,'parentId':toApiParentId(_0x3efee2),'sort':_0x228aa7},_0x59aa61=_0x3c2849[_0x346c5d(0xe1)]===_0x3efee2&&_0x3c2849['sort']===_0x228aa7;return{'patch':_0x11b087,'noChanges':_0x59aa61,'snapshot':_0x56a28b,'plan':mutationResult({'operation':_0x346c5d(0xe0),'selector':{'id':_0x2e2b85,'parentId':_0x3efee2},'before':_0x3c2849,'after':_0x3acd49,'dryRun':_0x240f37,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':_0x346c5d(0xe5),'path':'/smartapi/menu/update','body':{..._0x11b087,'appCode':_0x2f31bb['appCode']}}],'snapshotHash':_0x56a28b['hash'],'warnings':_0x59aa61?[_0x346c5d(0xba)]:[]})};}function verifyMove(_0x25af14,_0x3cade5){const _0x11a811=a119_0x1d8f6b;assertVerified(_0x25af14['type']!==_0x11a811(0xdc),_0x11a811(0xd4)+_0x25af14['id']+_0x11a811(0xdb)),assertVerified(_0x25af14[_0x11a811(0xe4)]===0x0,_0x11a811(0xd4)+_0x25af14['id']+_0x11a811(0xc5)),assertVerified(_0x25af14['parentId']===_0x3cade5[_0x11a811(0xe1)],_0x11a811(0xd4)+_0x25af14['id']+'\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.'),assertVerified(_0x25af14[_0x11a811(0xc4)]===_0x3cade5[_0x11a811(0xc4)],'Menu\x20'+_0x25af14['id']+_0x11a811(0xda));}function a119_0x12c7(){const _0x486c1b=['menu_state_drift','update','verify\x20menu\x20move','Move\x20request\x20for\x20menu\x20','55795ablgMr','sort','\x20is\x20no\x20longer\x20a\x20leaf.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','failed','move\x20menu','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','menu','8kewGOb','Moved\x20menu\x20','534jkWULH','Would\x20move\x20menu\x20','write','appCode',',\x20current\x20','14512640LBAdIv','3mwRJLj','Menu\x20','menu_move_source_not_leaf','type','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','expect-parent-id','cookie','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','\x20is\x20now\x20type\x20folder.','folder','rabetbase\x20menu\x20list\x20--format\x20compress','79162erUKpM','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','move','parentId','1508528BAPdmf','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','childrenCount','POST','2811788LwrLNp','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','parent-id','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','1853910GhnYsX','2228265AwHLsN','/smartapi/menu/update','verification'];a119_0x12c7=function(){return _0x486c1b;};return a119_0x12c7();}
@@ -1 +1 @@
1
- const a119_0x2b905f=a119_0x4eb4;(function(_0x2f71d1,_0x84b318){const _0x52a9ab=a119_0x4eb4,_0x48eaa6=_0x2f71d1();while(!![]){try{const _0x39fc6b=parseInt(_0x52a9ab(0x120))/0x1+parseInt(_0x52a9ab(0x101))/0x2+-parseInt(_0x52a9ab(0xfb))/0x3+parseInt(_0x52a9ab(0xf7))/0x4+parseInt(_0x52a9ab(0x119))/0x5+parseInt(_0x52a9ab(0xeb))/0x6*(parseInt(_0x52a9ab(0x113))/0x7)+-parseInt(_0x52a9ab(0x127))/0x8;if(_0x39fc6b===_0x84b318)break;else _0x48eaa6['push'](_0x48eaa6['shift']());}catch(_0x4ac6f2){_0x48eaa6['push'](_0x48eaa6['shift']());}}}(a119_0xa802,0x5465d));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';function a119_0x4eb4(_0x4132d3,_0x578fe7){_0x4132d3=_0x4132d3-0xe5;const _0xa802f=a119_0xa802();let _0x4eb4b3=_0xa802f[_0x4132d3];return _0x4eb4b3;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';function a119_0xa802(){const _0x56a689=['stringify','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','POST','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','size','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','replace','submit-regroup-task','type','\x20--format\x20compress','<platform-generated>','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','start\x20menu\x20regroup','unconfirmed','get','menu','label','menuIds','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','\x20menu\x20list\x20--appcode\x20','plan','toLowerCase','readbackError','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','menus','menu\x20list','501846RfFKEP','menu-ids','<new-group-id>','menu_regroup_target_not_leaf','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','sort','Regroup\x20readback\x20also\x20failed:\x20','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','test','cookie','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','write','762376TylnyU','--menu-ids\x20supports\x20at\x20most\x20','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','filter','1313823lkOwcm','warnings','regroup-submit','Regroup\x20readback\x20failed:\x20','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','status','699644CCWIFO','knownStatus','str','failed','/smartapi/menu/regroup','length','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','Regroup\x20task\x20accepted.\x20','map','FAILED','folder','validation','split','string','appCode','regroup-start','trim','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','7OKmMRn','parentId','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','join','group','some','2496845ZSxhlR','childrenIds','\x20menus\x20per\x20regroup\x20request.','menu_regroup_target_label_missing','plan\x20regroup','SUCCESS','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','242036twpKbi','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','taskId','applied','hash','Regroup\x20task\x20','message','4654624hdzefW','isTerminal','Menu\x20','input'];a119_0xa802=function(){return _0x56a689;};return a119_0xa802();}import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a119_0x2b905f(0x12d),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a119_0x2b905f(0x13a),'command':a119_0x2b905f(0x110),'description':a119_0x2b905f(0xff),'risk':a119_0x2b905f(0xf6),'structuredErrors':!![],'flags':[{'name':a119_0x2b905f(0x13b),'type':a119_0x2b905f(0x10e),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a119_0x2b905f(0xec),'type':'string','required':!![],'description':a119_0x2b905f(0x121)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3eef2b){validateRegroupInput(_0x3eef2b);},async 'dryRun'(_0x42d857){const _0x4f5b94=a119_0x2b905f;validateRegroupInput(_0x42d857);const _0x164dc9=await buildRegroupPlan(_0x42d857,!![]);return menuDryRunResult(_0x164dc9[_0x4f5b94(0xe5)],{'method':'POST','url':_0x4f5b94(0x105),'body':_0x164dc9['input'],'description':_0x4f5b94(0x107)+JSON[_0x4f5b94(0x12b)](_0x164dc9[_0x4f5b94(0x13b)])+'\x20and\x20regroup\x20menu\x20ids\x20'+_0x164dc9[_0x4f5b94(0x13c)][_0x4f5b94(0x116)](',\x20')+';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.'});},async 'execute'(_0x446107){const _0x4b0f96=a119_0x2b905f;validateRegroupInput(_0x446107);const _0x5a9161=await buildRegroupPlan(_0x446107,![]);await recheckMutationSnapshot(_0x446107,_0x5a9161['plan'],'start\x20regroup');const _0x1735fe=buildMenuLookupCommand(_0x446107[_0x4b0f96(0x10f)]);let _0x243e35,_0x5b8f8c;try{_0x243e35=await startMenuRegroup(_0x446107[_0x4b0f96(0xf4)],_0x5a9161[_0x4b0f96(0x12a)]),_0x5b8f8c=normalizeAsyncTask(_0x243e35);}catch(_0x46011b){const _0x485e67=await inspectRegroupAfterFailure(_0x446107[_0x4b0f96(0x10f)],_0x446107[_0x4b0f96(0xf4)],_0x5a9161[_0x4b0f96(0x13b)],_0x5a9161[_0x4b0f96(0x13c)]),_0x219b38=typeof _0x243e35?.[_0x4b0f96(0x122)]==='string'&&_0x243e35[_0x4b0f96(0x122)][_0x4b0f96(0x111)]()?_0x243e35[_0x4b0f96(0x122)][_0x4b0f96(0x111)]():null,_0xd22345=_0x219b38?{'command':buildAsyncTaskStatusCommand(_0x219b38,_0x446107[_0x4b0f96(0x10f)])}:null,_0x381ca9=mapMenuApiError(_0x46011b,_0x4b0f96(0x137));throw menuFailure(_0x381ca9,_0x5a9161[_0x4b0f96(0xe5)],{'stage':_0x4b0f96(0xfd),'failed':{'menuIds':_0x5a9161[_0x4b0f96(0x13c)],'taskId':_0x219b38,'groupingApplied':_0x485e67[_0x4b0f96(0x123)]?!![]:_0x4b0f96(0x138)},'after':_0x485e67[_0x4b0f96(0x123)]??null,'warnings':[_0x4b0f96(0xf5),..._0x485e67['readbackError']?[_0x4b0f96(0xf1)+_0x485e67[_0x4b0f96(0xe7)]]:[],..._0x219b38?[_0x4b0f96(0xe8)]:[]],'verification':{'status':_0x4b0f96(0x104),'groupingApplied':_0x485e67[_0x4b0f96(0x123)]?!![]:_0x4b0f96(0x138),'taskId':_0x219b38,'query':_0xd22345,'lookupCommand':_0x1735fe}});}const _0x2d36a1=buildAsyncTaskStatusCommand(_0x5b8f8c[_0x4b0f96(0x122)],_0x446107['appCode']);let _0x4fca63=null,_0x3ba4ec=null,_0x5bead4=null;try{_0x4fca63=await fetchMenuSnapshot(_0x446107[_0x4b0f96(0x10f)],_0x446107[_0x4b0f96(0xf4)]),_0x3ba4ec=findAppliedRegroup(_0x4fca63,_0x5a9161[_0x4b0f96(0x13b)],_0x5a9161[_0x4b0f96(0x13c)]);}catch(_0x424e99){_0x5bead4=_0x424e99 instanceof Error?_0x424e99['message']:String(_0x424e99);}const _0x6708f4=mutationResult({..._0x5a9161[_0x4b0f96(0xe5)],'after':_0x3ba4ec??null,'dryRun':![],'succeeded':[{'groupId':_0x3ba4ec?.[_0x4b0f96(0x117)]['id']??null,'menuIds':_0x5a9161[_0x4b0f96(0x13c)],'taskId':_0x5b8f8c[_0x4b0f96(0x122)],'status':_0x5b8f8c[_0x4b0f96(0x100)],'groupingApplied':_0x3ba4ec?!![]:_0x4b0f96(0x138)}],'verification':{'checkedBy':_0x4b0f96(0xea),'snapshotHash':_0x4fca63?.[_0x4b0f96(0x124)]??null,'groupId':_0x3ba4ec?.[_0x4b0f96(0x117)]['id']??null,'groupingApplied':_0x3ba4ec?!![]:_0x4b0f96(0x138),'readbackError':_0x5bead4,'lookupCommand':_0x1735fe},'warnings':[..._0x5a9161[_0x4b0f96(0xe5)][_0x4b0f96(0xfc)],...!_0x3ba4ec?[unconfirmedRegroupWarning(_0x5b8f8c)]:[],..._0x5bead4?[_0x4b0f96(0xfe)+_0x5bead4]:[]]}),_0x351260=_0x5b8f8c[_0x4b0f96(0x100)]===_0x4b0f96(0x11e)&&!_0x3ba4ec?_0x4b0f96(0x125)+_0x5b8f8c['taskId']+_0x4b0f96(0x12c):_0x4b0f96(0x108)+asyncTaskMessage(_0x5b8f8c);return{'ok':!![],'message':_0x351260,'data':{..._0x6708f4,'task':_0x5b8f8c,'query':_0x5b8f8c[_0x4b0f96(0x128)]?null:{'command':_0x2d36a1}}};}};function validateRegroupInput(_0x53d16d){const _0x3e7388=a119_0x2b905f;if(!_0x53d16d['str'](_0x3e7388(0x13b))[_0x3e7388(0x111)]())throw CliErrors['flagMissing'](_0x3e7388(0x13b));parseMenuIds(_0x53d16d[_0x3e7388(0x103)](_0x3e7388(0xec)));}function parseMenuIds(_0x5c6365){const _0x164f37=a119_0x2b905f,_0x321750=_0x5c6365[_0x164f37(0x10d)](',')[_0x164f37(0x109)](_0x19e7e5=>_0x19e7e5[_0x164f37(0x111)]());if(_0x321750['length']===0x0||_0x321750[_0x164f37(0x118)](_0x325acb=>!_0x325acb))throw CliErrors[_0x164f37(0x10c)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x243647=_0x321750[_0x164f37(0x109)](_0x7549dd=>{const _0xcb78ed=_0x164f37;if(!/^\d+$/[_0xcb78ed(0xf3)](_0x7549dd))throw CliErrors['validation'](_0xcb78ed(0x130));const _0x51c0d7=Number(_0x7549dd);if(!Number['isSafeInteger'](_0x51c0d7)||_0x51c0d7<=0x0)throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');return _0x51c0d7;});if(new Set(_0x243647)[_0x164f37(0x12f)]!==_0x243647[_0x164f37(0x106)])throw CliErrors[_0x164f37(0x10c)]('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x243647[_0x164f37(0x106)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x164f37(0x10c)](_0x164f37(0xf8)+MAX_REGROUP_MENU_COUNT+_0x164f37(0x11b));return _0x243647;}function buildMenuLookupCommand(_0x50adf7){const _0xd21f25=a119_0x2b905f,_0x511354='\x27'+_0x50adf7[_0xd21f25(0x131)](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+_0xd21f25(0x13e)+_0x511354+_0xd21f25(0x134);}function unconfirmedRegroupWarning(_0x3c5c36){const _0x236858=a119_0x2b905f;if(_0x3c5c36[_0x236858(0x100)]===_0x236858(0x11e))return _0x236858(0x115);if(_0x3c5c36[_0x236858(0x100)]===_0x236858(0x10a))return _0x236858(0xf2);if(_0x3c5c36[_0x236858(0x102)])return _0x236858(0x136);return'The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';}async function buildRegroupPlan(_0x179793,_0x2d2dbc){const _0x253a98=a119_0x2b905f,_0x35d1b8=_0x179793[_0x253a98(0x103)]('label')[_0x253a98(0x111)](),_0x5b3e4e=parseMenuIds(_0x179793[_0x253a98(0x103)](_0x253a98(0xec))),_0x39b90e=await fetchMutationSnapshot(_0x179793,_0x253a98(0x11d)),_0x40036f=_0x5b3e4e['map'](_0x44d41d=>requireMenu(_0x39b90e,_0x44d41d));for(const _0x549d61 of _0x40036f){if(_0x549d61['type'][_0x253a98(0x111)]()[_0x253a98(0xe6)]()===_0x253a98(0x10b)||_0x549d61['childrenCount']>0x0)throw menuError(_0x253a98(0xee),_0x253a98(0x129)+_0x549d61['id']+_0x253a98(0xef),_0x253a98(0x13d));if(!_0x549d61[_0x253a98(0x13b)][_0x253a98(0x111)]())throw menuError(_0x253a98(0x11c),'Menu\x20'+_0x549d61['id']+'\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.');}const _0x5e9826=findAppliedRegroup(_0x39b90e,_0x35d1b8,_0x5b3e4e);if(_0x5e9826)throw menuError('menu_regroup_already_applied','Menus\x20'+_0x5b3e4e[_0x253a98(0x116)](',\x20')+_0x253a98(0x11f)+_0x5e9826[_0x253a98(0x117)]['id']+'\x20('+JSON[_0x253a98(0x12b)](_0x35d1b8)+').','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.');const _0x2cd896=_0x39b90e[_0x253a98(0xe9)][_0x253a98(0xfa)](_0x4c7ea4=>_0x4c7ea4[_0x253a98(0x114)]==null&&_0x4c7ea4[_0x253a98(0x133)][_0x253a98(0x111)]()[_0x253a98(0xe6)]()===_0x253a98(0x10b)&&_0x4c7ea4[_0x253a98(0x13b)]===_0x35d1b8);if(_0x2cd896[_0x253a98(0x106)]>0x0)throw menuError('menu_regroup_label_conflict','Root\x20folder\x20label\x20'+JSON[_0x253a98(0x12b)](_0x35d1b8)+_0x253a98(0xf9)+_0x2cd896[_0x253a98(0x109)](_0x4a19d5=>_0x4a19d5['id'])['join'](',\x20')+'.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.');const _0x1751b6={'appCode':_0x179793[_0x253a98(0x10f)],'menuGroups':[{'label':_0x35d1b8,'type':_0x253a98(0x10b),'children':_0x40036f['map'](_0x4434c2=>({'id':_0x4434c2['id'],'label':_0x4434c2[_0x253a98(0x13b)]}))}]},_0x4c2589=mutationResult({'operation':_0x253a98(0x110),'selector':{'label':_0x35d1b8,'menuIds':_0x5b3e4e},'before':{'menus':_0x40036f},'after':{'group':{'id':null,'parentId':null,'label':_0x35d1b8,'path':_0x253a98(0x135),'type':_0x253a98(0x10b),'childrenIds':_0x5b3e4e},'children':_0x40036f[_0x253a98(0x109)](_0x149a89=>({'id':_0x149a89['id'],'label':_0x149a89['label'],'beforeParentId':_0x149a89[_0x253a98(0x114)],'afterParentId':_0x253a98(0xed)}))},'dryRun':_0x2d2dbc,'backend':[...BACKEND],'plannedActions':[{'stage':_0x253a98(0x132),'method':_0x253a98(0x12d),'path':_0x253a98(0x105),'body':_0x1751b6}],'snapshotHash':_0x39b90e[_0x253a98(0x124)],'warnings':[_0x253a98(0x112),_0x253a98(0x12e)]});return{'label':_0x35d1b8,'menuIds':_0x5b3e4e,'input':_0x1751b6,'plan':_0x4c2589};}function findAppliedRegroup(_0x16ffee,_0x127f02,_0x1aed3d){const _0x5478e5=a119_0x2b905f,_0x164ea9=_0x1aed3d[_0x5478e5(0x109)](_0x25b923=>_0x16ffee['byId'][_0x5478e5(0x139)](_0x25b923))['filter'](_0x540bd0=>Boolean(_0x540bd0));if(_0x164ea9[_0x5478e5(0x106)]!==_0x1aed3d[_0x5478e5(0x106)])return null;const _0x5370a5=_0x164ea9[0x0]?.[_0x5478e5(0x114)];if(_0x5370a5==null||_0x164ea9[_0x5478e5(0x118)](_0x108a6a=>_0x108a6a['parentId']!==_0x5370a5))return null;const _0x3dd4ce=_0x16ffee['byId'][_0x5478e5(0x139)](_0x5370a5);if(!_0x3dd4ce||_0x3dd4ce[_0x5478e5(0x114)]!=null||_0x3dd4ce[_0x5478e5(0x133)][_0x5478e5(0x111)]()[_0x5478e5(0xe6)]()!=='folder'||_0x3dd4ce[_0x5478e5(0x13b)]!==_0x127f02)return null;const _0x2f1d6d=[..._0x1aed3d][_0x5478e5(0xf0)]((_0x4f1422,_0x42d60a)=>_0x4f1422-_0x42d60a),_0x3b0ccf=[..._0x3dd4ce[_0x5478e5(0x11a)]]['sort']((_0x47df58,_0x6c0598)=>_0x47df58-_0x6c0598);if(JSON['stringify'](_0x3b0ccf)!==JSON[_0x5478e5(0x12b)](_0x2f1d6d))return null;return{'group':_0x3dd4ce,'children':_0x164ea9};}async function inspectRegroupAfterFailure(_0x63c0be,_0x5e9f65,_0x8e042d,_0x3ce5a8){const _0x1027e0=a119_0x2b905f;try{const _0x372283=await fetchMenuSnapshot(_0x63c0be,_0x5e9f65);return{'applied':findAppliedRegroup(_0x372283,_0x8e042d,_0x3ce5a8),'readbackError':null};}catch(_0x3929ef){return{'applied':null,'readbackError':_0x3929ef instanceof Error?_0x3929ef[_0x1027e0(0x126)]:String(_0x3929ef)};}}
1
+ const a120_0x326f8e=a120_0x48a6;(function(_0x1a67c0,_0x38a443){const _0x59e0d7=a120_0x48a6,_0x52053d=_0x1a67c0();while(!![]){try{const _0x38c2ac=-parseInt(_0x59e0d7(0x84))/0x1*(parseInt(_0x59e0d7(0x6f))/0x2)+parseInt(_0x59e0d7(0x92))/0x3+parseInt(_0x59e0d7(0x76))/0x4+parseInt(_0x59e0d7(0x7e))/0x5+parseInt(_0x59e0d7(0x97))/0x6+-parseInt(_0x59e0d7(0xc6))/0x7*(-parseInt(_0x59e0d7(0xa5))/0x8)+parseInt(_0x59e0d7(0x82))/0x9*(-parseInt(_0x59e0d7(0x91))/0xa);if(_0x38c2ac===_0x38a443)break;else _0x52053d['push'](_0x52053d['shift']());}catch(_0x2a9aad){_0x52053d['push'](_0x52053d['shift']());}}}(a120_0x3c95,0x8409e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a120_0x326f8e(0x72),'path':a120_0x326f8e(0x78)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a120_0x326f8e(0xa4),'command':a120_0x326f8e(0xb2),'description':a120_0x326f8e(0xb8),'risk':a120_0x326f8e(0xc7),'structuredErrors':!![],'flags':[{'name':a120_0x326f8e(0x93),'type':'string','required':!![],'description':a120_0x326f8e(0xa8)},{'name':a120_0x326f8e(0x8f),'type':a120_0x326f8e(0x6a),'required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x53116b){validateRegroupInput(_0x53116b);},async 'dryRun'(_0x51ca21){const _0xfd759f=a120_0x326f8e;validateRegroupInput(_0x51ca21);const _0x2c5d13=await buildRegroupPlan(_0x51ca21,!![]);return menuDryRunResult(_0x2c5d13[_0xfd759f(0x9c)],{'method':_0xfd759f(0x72),'url':'/smartapi/menu/regroup','body':_0x2c5d13[_0xfd759f(0x94)],'description':_0xfd759f(0x77)+JSON[_0xfd759f(0x95)](_0x2c5d13[_0xfd759f(0x93)])+_0xfd759f(0xb4)+_0x2c5d13[_0xfd759f(0x9a)][_0xfd759f(0x7a)](',\x20')+_0xfd759f(0xa9)});},async 'execute'(_0x534fd8){const _0x1aaa90=a120_0x326f8e;validateRegroupInput(_0x534fd8);const _0x45871d=await buildRegroupPlan(_0x534fd8,![]);await recheckMutationSnapshot(_0x534fd8,_0x45871d[_0x1aaa90(0x9c)],'start\x20regroup');const _0x5d49d3=buildMenuLookupCommand(_0x534fd8['appCode']);let _0x382220,_0x1285bb;try{_0x382220=await startMenuRegroup(_0x534fd8[_0x1aaa90(0xab)],_0x45871d[_0x1aaa90(0x94)]),_0x1285bb=normalizeAsyncTask(_0x382220);}catch(_0xc1fdc9){const _0x180d91=await inspectRegroupAfterFailure(_0x534fd8[_0x1aaa90(0x79)],_0x534fd8[_0x1aaa90(0xab)],_0x45871d[_0x1aaa90(0x93)],_0x45871d[_0x1aaa90(0x9a)]),_0x1da6bd=typeof _0x382220?.[_0x1aaa90(0xb6)]==='string'&&_0x382220[_0x1aaa90(0xb6)][_0x1aaa90(0xa7)]()?_0x382220[_0x1aaa90(0xb6)][_0x1aaa90(0xa7)]():null,_0x315db1=_0x1da6bd?{'command':buildAsyncTaskStatusCommand(_0x1da6bd,_0x534fd8['appCode'])}:null,_0x38bb1b=mapMenuApiError(_0xc1fdc9,_0x1aaa90(0x8a));throw menuFailure(_0x38bb1b,_0x45871d[_0x1aaa90(0x9c)],{'stage':'regroup-submit','failed':{'menuIds':_0x45871d[_0x1aaa90(0x9a)],'taskId':_0x1da6bd,'groupingApplied':_0x180d91[_0x1aaa90(0xae)]?!![]:_0x1aaa90(0x74)},'after':_0x180d91[_0x1aaa90(0xae)]??null,'warnings':[_0x1aaa90(0xad),..._0x180d91['readbackError']?['Regroup\x20readback\x20also\x20failed:\x20'+_0x180d91[_0x1aaa90(0xac)]]:[],..._0x1da6bd?['The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.']:[]],'verification':{'status':'failed','groupingApplied':_0x180d91['applied']?!![]:_0x1aaa90(0x74),'taskId':_0x1da6bd,'query':_0x315db1,'lookupCommand':_0x5d49d3}});}const _0xc6060b=buildAsyncTaskStatusCommand(_0x1285bb[_0x1aaa90(0xb6)],_0x534fd8[_0x1aaa90(0x79)]);let _0x573db0=null,_0x2d058c=null,_0x580461=null;try{_0x573db0=await fetchMenuSnapshot(_0x534fd8['appCode'],_0x534fd8[_0x1aaa90(0xab)]),_0x2d058c=findAppliedRegroup(_0x573db0,_0x45871d[_0x1aaa90(0x93)],_0x45871d['menuIds']);}catch(_0x248989){_0x580461=_0x248989 instanceof Error?_0x248989[_0x1aaa90(0xb0)]:String(_0x248989);}const _0x55399d=mutationResult({..._0x45871d[_0x1aaa90(0x9c)],'after':_0x2d058c??null,'dryRun':![],'succeeded':[{'groupId':_0x2d058c?.[_0x1aaa90(0xa0)]['id']??null,'menuIds':_0x45871d[_0x1aaa90(0x9a)],'taskId':_0x1285bb['taskId'],'status':_0x1285bb[_0x1aaa90(0x9d)],'groupingApplied':_0x2d058c?!![]:'unconfirmed'}],'verification':{'checkedBy':_0x1aaa90(0xbd),'snapshotHash':_0x573db0?.[_0x1aaa90(0x9b)]??null,'groupId':_0x2d058c?.['group']['id']??null,'groupingApplied':_0x2d058c?!![]:_0x1aaa90(0x74),'readbackError':_0x580461,'lookupCommand':_0x5d49d3},'warnings':[..._0x45871d['plan'][_0x1aaa90(0x70)],...!_0x2d058c?[unconfirmedRegroupWarning(_0x1285bb)]:[],..._0x580461?[_0x1aaa90(0x69)+_0x580461]:[]]}),_0x114b7b=_0x1285bb[_0x1aaa90(0x9d)]===_0x1aaa90(0xa6)&&!_0x2d058c?_0x1aaa90(0x7c)+_0x1285bb[_0x1aaa90(0xb6)]+_0x1aaa90(0xb3):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x1285bb);return{'ok':!![],'message':_0x114b7b,'data':{..._0x55399d,'task':_0x1285bb,'query':_0x1285bb[_0x1aaa90(0xb1)]?null:{'command':_0xc6060b}}};}};function validateRegroupInput(_0x2c2556){const _0x54d851=a120_0x326f8e;if(!_0x2c2556[_0x54d851(0xc1)](_0x54d851(0x93))[_0x54d851(0xa7)]())throw CliErrors['flagMissing'](_0x54d851(0x93));parseMenuIds(_0x2c2556[_0x54d851(0xc1)](_0x54d851(0x8f)));}function parseMenuIds(_0x4ab32f){const _0x4de010=a120_0x326f8e,_0x1a0e3c=_0x4ab32f[_0x4de010(0x8e)](',')['map'](_0x4ea599=>_0x4ea599['trim']());if(_0x1a0e3c[_0x4de010(0xaa)]===0x0||_0x1a0e3c[_0x4de010(0x83)](_0x47bcda=>!_0x47bcda))throw CliErrors[_0x4de010(0x7b)](_0x4de010(0x8d));const _0x3b4e31=_0x1a0e3c[_0x4de010(0x7f)](_0x59457f=>{const _0x2327b9=_0x4de010;if(!/^\d+$/[_0x2327b9(0x73)](_0x59457f))throw CliErrors['validation'](_0x2327b9(0x8d));const _0x592c8d=Number(_0x59457f);if(!Number['isSafeInteger'](_0x592c8d)||_0x592c8d<=0x0)throw CliErrors[_0x2327b9(0x7b)](_0x2327b9(0x8d));return _0x592c8d;});if(new Set(_0x3b4e31)[_0x4de010(0x6e)]!==_0x3b4e31[_0x4de010(0xaa)])throw CliErrors[_0x4de010(0x7b)](_0x4de010(0xbe));if(_0x3b4e31[_0x4de010(0xaa)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x4de010(0x7b)](_0x4de010(0xc5)+MAX_REGROUP_MENU_COUNT+_0x4de010(0xc4));return _0x3b4e31;}function a120_0x3c95(){const _0x4e75b1=['\x20menu\x20list\x20--appcode\x20','byId','<new-group-id>','menu\x20list','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','type','menu_regroup_target_not_leaf','str','submit-regroup-task','folder','\x20menus\x20per\x20regroup\x20request.','--menu-ids\x20supports\x20at\x20most\x20','7nBoMng','write','FAILED','menu_regroup_label_conflict','Regroup\x20readback\x20failed:\x20','string','Root\x20folder\x20label\x20','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','<platform-generated>','size','2xpNbyo','warnings','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','POST','test','unconfirmed','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','1218452vkZQDK','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','/smartapi/menu/regroup','appCode','join','validation','Regroup\x20task\x20','replace','4248950VJQMmA','map','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','menu_regroup_already_applied','2629998GVSbnE','some','593220XtGdIX','menus','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','Menu\x20','sort','filter','start\x20menu\x20regroup','get','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','split','menu-ids','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','70VfkNzD','282018ougPci','label','input','stringify','childrenCount','6362928sNwkKD','toLowerCase','menu_regroup_target_label_missing','menuIds','hash','plan','status','plan\x20regroup','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','group','knownStatus','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','menu','6965656RNTEJu','SUCCESS','trim','Label\x20of\x20the\x20new\x20root\x20folder',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','length','cookie','readbackError','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','applied','parentId','message','isTerminal','regroup-start','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','\x20and\x20regroup\x20menu\x20ids\x20','\x20--format\x20compress','taskId','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','\x27\x5c\x27\x27'];a120_0x3c95=function(){return _0x4e75b1;};return a120_0x3c95();}function buildMenuLookupCommand(_0x963c00){const _0xbe3137=a120_0x326f8e,_0xceb294='\x27'+_0x963c00[_0xbe3137(0x7d)](/'/g,_0xbe3137(0xb9))+'\x27';return CLI_BIN_NAME+_0xbe3137(0xba)+_0xceb294+_0xbe3137(0xb5);}function unconfirmedRegroupWarning(_0x5cf846){const _0x3f1621=a120_0x326f8e;if(_0x5cf846[_0x3f1621(0x9d)]==='SUCCESS')return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x5cf846[_0x3f1621(0x9d)]===_0x3f1621(0x67))return _0x3f1621(0x86);if(_0x5cf846[_0x3f1621(0xa1)])return _0x3f1621(0x9f);return _0x3f1621(0x8c);}async function buildRegroupPlan(_0x3b75b6,_0x3d95b1){const _0x3e9d4a=a120_0x326f8e,_0x3a2e57=_0x3b75b6[_0x3e9d4a(0xc1)](_0x3e9d4a(0x93))['trim'](),_0x50949e=parseMenuIds(_0x3b75b6[_0x3e9d4a(0xc1)](_0x3e9d4a(0x8f))),_0x2264aa=await fetchMutationSnapshot(_0x3b75b6,_0x3e9d4a(0x9e)),_0x33f6ea=_0x50949e['map'](_0x59ce0a=>requireMenu(_0x2264aa,_0x59ce0a));for(const _0x519c3c of _0x33f6ea){if(_0x519c3c[_0x3e9d4a(0xbf)][_0x3e9d4a(0xa7)]()[_0x3e9d4a(0x98)]()==='folder'||_0x519c3c[_0x3e9d4a(0x96)]>0x0)throw menuError(_0x3e9d4a(0xc0),'Menu\x20'+_0x519c3c['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',_0x3e9d4a(0x6c));if(!_0x519c3c[_0x3e9d4a(0x93)]['trim']())throw menuError(_0x3e9d4a(0x99),_0x3e9d4a(0x87)+_0x519c3c['id']+_0x3e9d4a(0x80),_0x3e9d4a(0xa2));}const _0x44e898=findAppliedRegroup(_0x2264aa,_0x3a2e57,_0x50949e);if(_0x44e898)throw menuError(_0x3e9d4a(0x81),'Menus\x20'+_0x50949e[_0x3e9d4a(0x7a)](',\x20')+_0x3e9d4a(0x75)+_0x44e898[_0x3e9d4a(0xa0)]['id']+'\x20('+JSON[_0x3e9d4a(0x95)](_0x3a2e57)+').',_0x3e9d4a(0x71));const _0x2e87b2=_0x2264aa[_0x3e9d4a(0x85)]['filter'](_0xc95839=>_0xc95839['parentId']==null&&_0xc95839['type']['trim']()[_0x3e9d4a(0x98)]()===_0x3e9d4a(0xc3)&&_0xc95839[_0x3e9d4a(0x93)]===_0x3a2e57);if(_0x2e87b2[_0x3e9d4a(0xaa)]>0x0)throw menuError(_0x3e9d4a(0x68),_0x3e9d4a(0x6b)+JSON[_0x3e9d4a(0x95)](_0x3a2e57)+'\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'+_0x2e87b2[_0x3e9d4a(0x7f)](_0xe0066e=>_0xe0066e['id'])[_0x3e9d4a(0x7a)](',\x20')+'.',_0x3e9d4a(0x90));const _0x55500f={'appCode':_0x3b75b6[_0x3e9d4a(0x79)],'menuGroups':[{'label':_0x3a2e57,'type':'folder','children':_0x33f6ea[_0x3e9d4a(0x7f)](_0x102940=>({'id':_0x102940['id'],'label':_0x102940[_0x3e9d4a(0x93)]}))}]},_0x128785=mutationResult({'operation':_0x3e9d4a(0xb2),'selector':{'label':_0x3a2e57,'menuIds':_0x50949e},'before':{'menus':_0x33f6ea},'after':{'group':{'id':null,'parentId':null,'label':_0x3a2e57,'path':_0x3e9d4a(0x6d),'type':_0x3e9d4a(0xc3),'childrenIds':_0x50949e},'children':_0x33f6ea[_0x3e9d4a(0x7f)](_0xfe8a35=>({'id':_0xfe8a35['id'],'label':_0xfe8a35['label'],'beforeParentId':_0xfe8a35[_0x3e9d4a(0xaf)],'afterParentId':_0x3e9d4a(0xbc)}))},'dryRun':_0x3d95b1,'backend':[...BACKEND],'plannedActions':[{'stage':_0x3e9d4a(0xc2),'method':'POST','path':'/smartapi/menu/regroup','body':_0x55500f}],'snapshotHash':_0x2264aa['hash'],'warnings':[_0x3e9d4a(0xa3),_0x3e9d4a(0xb7)]});return{'label':_0x3a2e57,'menuIds':_0x50949e,'input':_0x55500f,'plan':_0x128785};}function findAppliedRegroup(_0x54237a,_0x22f938,_0x1d1213){const _0x3765ec=a120_0x326f8e,_0x50c0ba=_0x1d1213[_0x3765ec(0x7f)](_0x4b51c8=>_0x54237a[_0x3765ec(0xbb)][_0x3765ec(0x8b)](_0x4b51c8))[_0x3765ec(0x89)](_0x49cad8=>Boolean(_0x49cad8));if(_0x50c0ba['length']!==_0x1d1213['length'])return null;const _0x2310bb=_0x50c0ba[0x0]?.[_0x3765ec(0xaf)];if(_0x2310bb==null||_0x50c0ba[_0x3765ec(0x83)](_0x113321=>_0x113321[_0x3765ec(0xaf)]!==_0x2310bb))return null;const _0x4be397=_0x54237a[_0x3765ec(0xbb)][_0x3765ec(0x8b)](_0x2310bb);if(!_0x4be397||_0x4be397[_0x3765ec(0xaf)]!=null||_0x4be397[_0x3765ec(0xbf)][_0x3765ec(0xa7)]()[_0x3765ec(0x98)]()!==_0x3765ec(0xc3)||_0x4be397[_0x3765ec(0x93)]!==_0x22f938)return null;const _0x5b6d29=[..._0x1d1213][_0x3765ec(0x88)]((_0x5bf3be,_0x25b5d3)=>_0x5bf3be-_0x25b5d3),_0x5eb16a=[..._0x4be397['childrenIds']][_0x3765ec(0x88)]((_0x8a6526,_0x8f93cd)=>_0x8a6526-_0x8f93cd);if(JSON[_0x3765ec(0x95)](_0x5eb16a)!==JSON[_0x3765ec(0x95)](_0x5b6d29))return null;return{'group':_0x4be397,'children':_0x50c0ba};}function a120_0x48a6(_0x58aea5,_0x2a7ac2){_0x58aea5=_0x58aea5-0x67;const _0x3c9563=a120_0x3c95();let _0x48a69d=_0x3c9563[_0x58aea5];return _0x48a69d;}async function inspectRegroupAfterFailure(_0xad9be8,_0xab355b,_0x29ea87,_0x464d5b){const _0x2a792c=a120_0x326f8e;try{const _0x50e1ef=await fetchMenuSnapshot(_0xad9be8,_0xab355b);return{'applied':findAppliedRegroup(_0x50e1ef,_0x29ea87,_0x464d5b),'readbackError':null};}catch(_0x49ecd3){return{'applied':null,'readbackError':_0x49ecd3 instanceof Error?_0x49ecd3[_0x2a792c(0xb0)]:String(_0x49ecd3)};}}