@lovrabet/rabetbase-cli 2.5.2-beta.3 → 2.5.2-beta.4

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 (349) hide show
  1. package/README.md +1 -1
  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/api/generate-sdk-config-file.js +1 -1
  6. package/lib/auth/auth-server-ui.js +1 -1
  7. package/lib/auth/auth-server.js +1 -1
  8. package/lib/auth/constant.js +1 -1
  9. package/lib/auth/get-cookie.js +1 -1
  10. package/lib/auth/get-session-user.js +1 -1
  11. package/lib/auth/is-session-valid.js +1 -1
  12. package/lib/auth/login-success-html.js +1 -1
  13. package/lib/auth/logout.js +1 -1
  14. package/lib/cli-flags.js +1 -1
  15. package/lib/cli.js +1 -1
  16. package/lib/commands/api/generate.js +1 -1
  17. package/lib/commands/api/index.js +1 -1
  18. package/lib/commands/api/list.js +1 -1
  19. package/lib/commands/api/pull.js +1 -1
  20. package/lib/commands/api/shared.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/members-list.js +1 -1
  24. package/lib/commands/app/remote-directory.js +1 -1
  25. package/lib/commands/app/shared.js +1 -1
  26. package/lib/commands/app-config/delete.js +1 -1
  27. package/lib/commands/app-config/get.js +1 -1
  28. package/lib/commands/app-config/index.js +1 -1
  29. package/lib/commands/app-config/list.js +1 -1
  30. package/lib/commands/app-config/set.js +1 -1
  31. package/lib/commands/app-config/shared.js +1 -1
  32. package/lib/commands/auth/index.js +1 -1
  33. package/lib/commands/bff/create.js +1 -1
  34. package/lib/commands/bff/delete.js +1 -1
  35. package/lib/commands/bff/detail.js +1 -1
  36. package/lib/commands/bff/index.js +1 -1
  37. package/lib/commands/bff/list.js +1 -1
  38. package/lib/commands/bff/pull.js +1 -1
  39. package/lib/commands/bff/push.js +1 -1
  40. package/lib/commands/bff/status.js +1 -1
  41. package/lib/commands/cli-skill/index.js +1 -1
  42. package/lib/commands/cli-update.js +1 -1
  43. package/lib/commands/codegen/index.js +1 -1
  44. package/lib/commands/codegen/sdk.js +1 -1
  45. package/lib/commands/codegen/sql.js +1 -1
  46. package/lib/commands/common/app-registry.js +1 -1
  47. package/lib/commands/common/app-selector.js +1 -1
  48. package/lib/commands/common/async-task.js +1 -1
  49. package/lib/commands/common/dry-run.js +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/delete.js +1 -1
  54. package/lib/commands/config/get.js +1 -1
  55. package/lib/commands/config/index.js +1 -1
  56. package/lib/commands/config/init.js +1 -1
  57. package/lib/commands/config/list.js +1 -1
  58. package/lib/commands/config/set.js +1 -1
  59. package/lib/commands/config/shared.js +1 -1
  60. package/lib/commands/dataset/business-group-update.js +1 -1
  61. package/lib/commands/dataset/business-groups.js +1 -1
  62. package/lib/commands/dataset/capability.js +1 -1
  63. package/lib/commands/dataset/delete.js +1 -1
  64. package/lib/commands/dataset/detail.js +1 -1
  65. package/lib/commands/dataset/extend-update.js +1 -1
  66. package/lib/commands/dataset/field-restore.js +1 -1
  67. package/lib/commands/dataset/field-update.js +1 -1
  68. package/lib/commands/dataset/generate.js +1 -1
  69. package/lib/commands/dataset/index.js +1 -1
  70. package/lib/commands/dataset/list.js +1 -1
  71. package/lib/commands/dataset/operations.js +1 -1
  72. package/lib/commands/dataset/relation-audit.js +1 -1
  73. package/lib/commands/dataset/relation-create.js +1 -1
  74. package/lib/commands/dataset/relation-delete.js +1 -1
  75. package/lib/commands/dataset/relation-shared.js +1 -1
  76. package/lib/commands/dataset/relation-update.js +1 -1
  77. package/lib/commands/dataset/relations.js +1 -1
  78. package/lib/commands/dataset/rename.js +1 -1
  79. package/lib/commands/dataset/restore.js +1 -1
  80. package/lib/commands/dataset/user-deleted-field-list.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/table-diff-shared.js +1 -1
  96. package/lib/commands/db/tables.js +1 -1
  97. package/lib/commands/db/test.js +1 -1
  98. package/lib/commands/db/update.js +1 -1
  99. package/lib/commands/deployment/auto-sync.js +1 -1
  100. package/lib/commands/deployment/index.js +1 -1
  101. package/lib/commands/deployment/sync-all.js +1 -1
  102. package/lib/commands/deployment/sync-jobs.js +1 -1
  103. package/lib/commands/deployment/sync-status.js +1 -1
  104. package/lib/commands/deployment/sync.js +1 -1
  105. package/lib/commands/doctor.js +1 -1
  106. package/lib/commands/file/index.js +1 -1
  107. package/lib/commands/instant-api-policy/current.js +1 -1
  108. package/lib/commands/instant-api-policy/index.js +1 -1
  109. package/lib/commands/instant-api-policy/init.js +1 -1
  110. package/lib/commands/instant-api-policy/publish.js +1 -1
  111. package/lib/commands/instant-api-policy/pull.js +1 -1
  112. package/lib/commands/instant-api-policy/revision.js +1 -1
  113. package/lib/commands/instant-api-policy/revisions.js +1 -1
  114. package/lib/commands/instant-api-policy/rollback.js +1 -1
  115. package/lib/commands/instant-api-policy/shared.js +1 -1
  116. package/lib/commands/instant-api-policy/validate.js +1 -1
  117. package/lib/commands/issue/index.js +1 -1
  118. package/lib/commands/issue/nudge.js +1 -1
  119. package/lib/commands/issue/report.js +1 -1
  120. package/lib/commands/issue/shared.js +1 -1
  121. package/lib/commands/kb/create.js +1 -1
  122. package/lib/commands/kb/delete.js +1 -1
  123. package/lib/commands/kb/detail.js +1 -1
  124. package/lib/commands/kb/index.js +1 -1
  125. package/lib/commands/kb/list.js +1 -1
  126. package/lib/commands/kb/search.js +1 -1
  127. package/lib/commands/kb/shared.js +1 -1
  128. package/lib/commands/kb/update.js +1 -1
  129. package/lib/commands/logs/index.js +1 -1
  130. package/lib/commands/menu/asset-update.js +1 -1
  131. package/lib/commands/menu/delete.js +1 -1
  132. package/lib/commands/menu/external-link-create.js +1 -1
  133. package/lib/commands/menu/external-link-update.js +1 -1
  134. package/lib/commands/menu/group-create.js +1 -1
  135. package/lib/commands/menu/group-update.js +1 -1
  136. package/lib/commands/menu/index.js +1 -1
  137. package/lib/commands/menu/list.js +1 -1
  138. package/lib/commands/menu/move.js +1 -1
  139. package/lib/commands/menu/regroup-start.js +1 -1
  140. package/lib/commands/menu/rename.js +1 -1
  141. package/lib/commands/menu/shared/compare-table.js +1 -1
  142. package/lib/commands/menu/shared/delete-plan.js +1 -1
  143. package/lib/commands/menu/shared/facts.js +1 -1
  144. package/lib/commands/menu/shared/index.js +1 -1
  145. package/lib/commands/menu/shared/inquirer.js +1 -1
  146. package/lib/commands/menu/shared/local-pages.js +1 -1
  147. package/lib/commands/menu/shared/logic.js +1 -1
  148. package/lib/commands/menu/shared/mutations.js +1 -1
  149. package/lib/commands/menu/shared/service.js +1 -1
  150. package/lib/commands/menu/shared/sync-core.js +1 -1
  151. package/lib/commands/menu/shared/update-core.js +1 -1
  152. package/lib/commands/menu/shared/valid-url.js +1 -1
  153. package/lib/commands/menu/sync.js +1 -1
  154. package/lib/commands/menu/visibility-update.js +1 -1
  155. package/lib/commands/notification/config-create.js +1 -1
  156. package/lib/commands/notification/config-delete.js +1 -1
  157. package/lib/commands/notification/config-list.js +1 -1
  158. package/lib/commands/notification/config-update.js +1 -1
  159. package/lib/commands/notification/index.js +1 -1
  160. package/lib/commands/notification/shared.js +1 -1
  161. package/lib/commands/ocr/index.js +1 -1
  162. package/lib/commands/page/create.js +1 -1
  163. package/lib/commands/page/custom/detail.js +1 -1
  164. package/lib/commands/page/custom/list.js +1 -1
  165. package/lib/commands/page/custom/publish.js +1 -1
  166. package/lib/commands/page/custom/shared.d.ts +0 -8
  167. package/lib/commands/page/custom/shared.js +1 -1
  168. package/lib/commands/page/custom/syntax.js +1 -1
  169. package/lib/commands/page/custom/update.js +1 -1
  170. package/lib/commands/page/data-list-status.js +1 -1
  171. package/lib/commands/page/generate-start.js +1 -1
  172. package/lib/commands/page/generate-status.js +1 -1
  173. package/lib/commands/page/index.js +1 -1
  174. package/lib/commands/page/pull.js +1 -1
  175. package/lib/commands/page/push.js +1 -1
  176. package/lib/commands/page/relation-audit.js +1 -1
  177. package/lib/commands/page/restore.js +1 -1
  178. package/lib/commands/page/shared.js +1 -1
  179. package/lib/commands/page/sync.js +1 -1
  180. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  181. package/lib/commands/project/create/format-elapsed.js +1 -1
  182. package/lib/commands/project/create/main.js +1 -1
  183. package/lib/commands/project/create/materialize-project-template.js +1 -1
  184. package/lib/commands/project/create/project-name.js +1 -1
  185. package/lib/commands/project/create/project-template-archive.js +1 -1
  186. package/lib/commands/project/create/project-template-path.js +1 -1
  187. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  188. package/lib/commands/project/create/use-format-code.js +1 -1
  189. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  190. package/lib/commands/project/domain-routing-sync.js +1 -1
  191. package/lib/commands/project/index.js +1 -1
  192. package/lib/commands/project/upgrade.js +1 -1
  193. package/lib/commands/registry.js +1 -1
  194. package/lib/commands/role/delete.js +1 -1
  195. package/lib/commands/role/detail.js +1 -1
  196. package/lib/commands/role/index.js +1 -1
  197. package/lib/commands/role/list.js +1 -1
  198. package/lib/commands/role/shared.js +1 -1
  199. package/lib/commands/role/update.js +1 -1
  200. package/lib/commands/role/user-add.js +1 -1
  201. package/lib/commands/role/user-remove.js +1 -1
  202. package/lib/commands/role/user-resolve.js +1 -1
  203. package/lib/commands/rule/get.js +1 -1
  204. package/lib/commands/rule/index.js +1 -1
  205. package/lib/commands/rule/list.js +1 -1
  206. package/lib/commands/rule/set.js +1 -1
  207. package/lib/commands/rule/shared.js +1 -1
  208. package/lib/commands/run/index.d.ts +4 -0
  209. package/lib/commands/run/index.js +1 -1
  210. package/lib/commands/schema.js +1 -1
  211. package/lib/commands/sql/create.js +1 -1
  212. package/lib/commands/sql/delete.js +1 -1
  213. package/lib/commands/sql/detail.js +1 -1
  214. package/lib/commands/sql/exec.js +1 -1
  215. package/lib/commands/sql/index.js +1 -1
  216. package/lib/commands/sql/list.js +1 -1
  217. package/lib/commands/sql/pull.js +1 -1
  218. package/lib/commands/sql/push.js +1 -1
  219. package/lib/commands/sql/shared.js +1 -1
  220. package/lib/commands/sql/status.js +1 -1
  221. package/lib/commands/sql/validate.js +1 -1
  222. package/lib/commands/task/index.js +1 -1
  223. package/lib/commands/task/status.js +1 -1
  224. package/lib/commands/tenant/index.js +1 -1
  225. package/lib/commands/tenant/members-list.js +1 -1
  226. package/lib/commands/tenant/shared.js +1 -1
  227. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  228. package/lib/commands/user-account/index.js +1 -1
  229. package/lib/commands/workspace/add.js +1 -1
  230. package/lib/commands/workspace/index.js +1 -1
  231. package/lib/commands/workspace/remove.js +1 -1
  232. package/lib/config/domain-config.js +1 -1
  233. package/lib/config/project-domain-routing.d.ts +5 -1
  234. package/lib/config/project-domain-routing.js +1 -1
  235. package/lib/config/schema.js +1 -1
  236. package/lib/constant/cdn.js +1 -1
  237. package/lib/constant/cli.js +1 -1
  238. package/lib/constant/defaults.js +1 -1
  239. package/lib/constant/domain.js +1 -1
  240. package/lib/constant/env.js +1 -1
  241. package/lib/constant/output.js +1 -1
  242. package/lib/constant/paths.js +1 -1
  243. package/lib/constant/region.js +1 -1
  244. package/lib/constant/risk.js +1 -1
  245. package/lib/constant/routing-profile.js +1 -1
  246. package/lib/context/app-resolver.js +1 -1
  247. package/lib/context/auth-resolver.js +1 -1
  248. package/lib/context/config-loader.js +1 -1
  249. package/lib/context.js +1 -1
  250. package/lib/core/alias-resolver.js +1 -1
  251. package/lib/core/api-client.d.ts +0 -26
  252. package/lib/core/api-client.js +1 -1
  253. package/lib/core/bff/config.js +1 -1
  254. package/lib/core/bff/file-system.js +1 -1
  255. package/lib/core/bff/hash.js +1 -1
  256. package/lib/core/bff/lock.js +1 -1
  257. package/lib/core/bff/utils.js +1 -1
  258. package/lib/core/db-resolver.js +1 -1
  259. package/lib/core/instant-api-policy/config.js +1 -1
  260. package/lib/core/kb-search-client.js +1 -1
  261. package/lib/core/page/file-system.d.ts +43 -0
  262. package/lib/core/page/file-system.js +1 -1
  263. package/lib/core/page/hash.js +1 -1
  264. package/lib/core/page/lock.js +1 -1
  265. package/lib/core/sql-index-auditor.js +1 -1
  266. package/lib/core/sql-sync/config.js +1 -1
  267. package/lib/core/sql-sync/file-system.js +1 -1
  268. package/lib/core/sql-sync/hash.js +1 -1
  269. package/lib/core/sql-sync/lock.js +1 -1
  270. package/lib/core/sql-sync/utils.js +1 -1
  271. package/lib/core/sql-validator.js +1 -1
  272. package/lib/errors.js +1 -1
  273. package/lib/framework/build-all-flags.js +1 -1
  274. package/lib/framework/error-output.js +1 -1
  275. package/lib/framework/explicit-yes.js +1 -1
  276. package/lib/framework/flags.js +1 -1
  277. package/lib/framework/help.js +1 -1
  278. package/lib/framework/index.js +1 -1
  279. package/lib/framework/output.js +1 -1
  280. package/lib/framework/response.js +1 -1
  281. package/lib/framework/runner-alias.js +1 -1
  282. package/lib/framework/runner.js +1 -1
  283. package/lib/framework/schema-export.js +1 -1
  284. package/lib/framework/supported-flags.js +1 -1
  285. package/lib/framework/types.js +1 -1
  286. package/lib/generated/build-info.d.ts +4 -4
  287. package/lib/generated/build-info.js +1 -1
  288. package/lib/generated/official-routing.js +1 -1
  289. package/lib/generated/routing-contract.js +1 -1
  290. package/lib/help.js +1 -1
  291. package/lib/postinstall.js +1 -1
  292. package/lib/runtime/confirmation.js +1 -1
  293. package/lib/runtime/event.js +1 -1
  294. package/lib/runtime/index.js +1 -1
  295. package/lib/runtime/queue.js +1 -1
  296. package/lib/runtime/resolve.js +1 -1
  297. package/lib/skills/builtin-skill.js +1 -1
  298. package/lib/skills/main.js +1 -1
  299. package/lib/skills/npx-skills-add.js +1 -1
  300. package/lib/skills/skill-presence.js +1 -1
  301. package/lib/telemetry/cli-command-trace.js +1 -1
  302. package/lib/telemetry/cli-help-trace.js +1 -1
  303. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  304. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  305. package/lib/telemetry/send-cli-trace-log.js +1 -1
  306. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  307. package/lib/utils/ai_config.js +1 -1
  308. package/lib/utils/apply-jq-filter.js +1 -1
  309. package/lib/utils/cdn-config.js +1 -1
  310. package/lib/utils/check-sdk-version.js +1 -1
  311. package/lib/utils/cli-version-check.js +1 -1
  312. package/lib/utils/cli-version-policy.js +1 -1
  313. package/lib/utils/config.js +1 -1
  314. package/lib/utils/entity-with-id.js +1 -1
  315. package/lib/utils/file-utils.js +1 -1
  316. package/lib/utils/guides-cdn.js +1 -1
  317. package/lib/utils/http-client.js +1 -1
  318. package/lib/utils/is-non-interactive.js +1 -1
  319. package/lib/utils/logger.js +1 -1
  320. package/lib/utils/params.js +1 -1
  321. package/lib/utils/platform.js +1 -1
  322. package/lib/utils/sleep.js +1 -1
  323. package/lib/utils/template-replacer.js +1 -1
  324. package/lib/utils/update-notice.js +1 -1
  325. package/lib/utils/version.js +1 -1
  326. package/lib/utils/with-active-cookie.js +1 -1
  327. package/lib/utils/write-cli-side-channel.js +1 -1
  328. package/package.json +2 -1
  329. package/skills/rabetbase/SKILL.md +5 -5
  330. package/skills/rabetbase/guides/custom-page-workflow.md +35 -17
  331. package/skills/rabetbase/guides/page-development-workflow.md +1 -1
  332. package/skills/rabetbase/knowledge/components.md +292 -0
  333. package/skills/rabetbase/knowledge/custom-page/generation-standards.md +74 -4
  334. package/skills/rabetbase/knowledge/custom-page/page-templates.md +68 -0
  335. package/skills/rabetbase/references/rabetbase-page-create.md +21 -9
  336. package/skills/rabetbase/references/rabetbase-page-custom-detail.md +1 -1
  337. package/skills/rabetbase/references/rabetbase-page-custom-update.md +13 -9
  338. package/skills/rabetbase/references/rabetbase-project-create.md +5 -2
  339. package/skills/rabetbase/references/rabetbase-project-domain-routing-sync.md +2 -2
  340. package/skills/rabetbase/references/rabetbase-run.md +1 -0
  341. package/skills/rabetbase.manifest.json +5 -4
  342. package/templates/README.md +10 -4
  343. package/templates/custom-pages/blank.json +5 -0
  344. package/templates/custom-pages/dashboard.json +5 -0
  345. package/templates/custom-pages/onepage.json +5 -0
  346. package/templates/generate-api/api.ts.tpl +1 -1
  347. package/lib/commands/page/custom/template.d.ts +0 -8
  348. package/lib/commands/page/custom/template.js +0 -1
  349. package/skills/rabetbase/knowledge/custom-page/components.md +0 -225
@@ -1 +1 @@
1
- const a129_0x2c2199=a129_0x4f72;(function(_0x190dd7,_0x4d4ba6){const _0x2ee876=a129_0x4f72,_0x4ede3a=_0x190dd7();while(!![]){try{const _0xb18f84=parseInt(_0x2ee876(0xc5))/0x1+-parseInt(_0x2ee876(0xc2))/0x2+-parseInt(_0x2ee876(0xd5))/0x3*(-parseInt(_0x2ee876(0xba))/0x4)+parseInt(_0x2ee876(0xad))/0x5*(parseInt(_0x2ee876(0xab))/0x6)+parseInt(_0x2ee876(0x115))/0x7+-parseInt(_0x2ee876(0x112))/0x8+-parseInt(_0x2ee876(0xf4))/0x9;if(_0xb18f84===_0x4d4ba6)break;else _0x4ede3a['push'](_0x4ede3a['shift']());}catch(_0x3b8aa3){_0x4ede3a['push'](_0x4ede3a['shift']());}}}(a129_0x5979,0xefb13));function a129_0x5979(){const _0x5ad175=['delete','stringify','length','push','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','folder','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','verification','\x20still\x20references\x20','filter','plan-out','42ZtqfJg','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','40115UaZDhr','Menu\x20','toLowerCase','batch-delete','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','indexOf','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','menu\x20list','page\x20','Post-failure\x20menu\x20readback\x20failed\x20(','POST','snapshot','unconfirmed','8188sMbXdX','cascade','string','add','path','flagMissing','str','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','2085812DMfSEH','forEach','causeMessage','1070348uhvMYb','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','absentIds','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','\x20is\x20not\x20a\x20folder.','deleteOrder','size','menu','menu_folder_resources_invalid','selector','menu_batch_delete_count_mismatch','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','menu_page_shared','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','1167OfANMh','pre-write-plan-validation','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','menu_recursive_requires_folder','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','validation','menus','\x20has\x20','plan','menu_verification_failed','dry-run','expected-children-count','cookie','hash','menu_plan_invalid','plan\x20delete','expect-parent-id','trim','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','Deleted\x20','map','\x20references\x20missing\x20child\x20','\x20deleted\x20menus;\x20expected\x20','snapshotHash','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','bool','expiresAt','Recursive\x20menu\x20delete\x20plan\x20root\x20','byId','childrenIds','target','334629ozWvbd','menu_tree_invalid','has','resources','failed','/smartapi/menu/batchDelete','plan-validation','Folder\x20','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','join',';\x20execution\x20must\x20consume\x20','menu_folder_has_resources','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','get','childrenCount','recursive','Batch\x20delete\x20request\x20for\x20menu\x20','execute\x20reviewed\x20delete\x20plan','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','\x20menu(s)\x20under\x20exact\x20id\x20','Post-mismatch\x20menu\x20readback\x20failed\x20(','\x20is\x20type\x20\x22','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','):\x20','high-risk-write','boolean','Would\x20batch\x20delete\x20','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','type','Backend\x20reported\x20','4604752kfEzLM','appCode','rabetbase\x20menu\x20list\x20--format\x20json','5002676Ogtuzc','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','remainingIds','pageId','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.'];a129_0x5979=function(){return _0x5ad175;};return a129_0x5979();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a129_0x2c2199(0xb7),'path':'/smartapi/menu/batchDelete'}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a129_0x2c2199(0xc7)},MENU_DELETE_RECURSIVE_FLAG={'name':a129_0x2c2199(0x103),'type':a129_0x2c2199(0x10d),'description':a129_0x2c2199(0xc6)},MENU_DELETE_PLAN_OUT_FLAG={'name':a129_0x2c2199(0xaa),'type':a129_0x2c2199(0xbc),'description':a129_0x2c2199(0x10f)},MENU_DELETE_PLAN_FLAG={'name':a129_0x2c2199(0xdd),'type':'string','description':a129_0x2c2199(0xe7)};export const menuDelete={'service':a129_0x2c2199(0xce),'command':a129_0x2c2199(0x11a),'description':a129_0x2c2199(0xd4),'risk':a129_0x2c2199(0x10c),'structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x10d6a5){const _0x26a520=a129_0x2c2199;_0x10d6a5[_0x26a520(0xee)](_0x26a520(0xdf))?validateDeleteDryRunInput(_0x10d6a5):validateDeleteExecuteInput(_0x10d6a5),requireExplicitYes(_0x10d6a5);},async 'dryRun'(_0x109c74){const _0x50332d=a129_0x2c2199;validateDeleteDryRunInput(_0x109c74);const _0x18dc7f=await buildDeletePlan(_0x109c74),_0x75c46a=createMenuDeletePlanFile(_0x109c74[_0x50332d(0x113)],_0x18dc7f),_0x1ed016=await writeMenuDeletePlan(_0x109c74[_0x50332d(0xc0)](_0x50332d(0xaa)),_0x75c46a),_0x188959=mutationResult({..._0x18dc7f,'planFile':{'path':_0x1ed016,'createdAt':_0x75c46a['createdAt'],'expiresAt':_0x75c46a[_0x50332d(0xef)]}});return menuDryRunResult(_0x188959,{'method':_0x50332d(0xb7),'url':_0x50332d(0xf9),'body':{'idList':_0x188959[_0x50332d(0xcc)]},'description':_0x50332d(0x10e)+(_0x188959[_0x50332d(0xcc)]?.['length']??0x1)+_0x50332d(0x107)+_0x188959[_0x50332d(0xd0)]['id']+_0x50332d(0xfe)+_0x1ed016+'.'});},async 'execute'(_0x5283b6){const _0x51674b=a129_0x2c2199;requireExplicitYes(_0x5283b6),validateDeleteExecuteInput(_0x5283b6);const _0x36d62b=await readMenuDeletePlan(_0x5283b6[_0x51674b(0xc0)]('plan')),_0x2edb97=mutationPlanFromDeleteFile(_0x36d62b['plan'],_0x36d62b[_0x51674b(0xbe)]),_0x46d81c=_0x36d62b['plan'][_0x51674b(0xf3)]['id'];try{assertMenuDeletePlanExecutable(_0x36d62b['plan'],_0x5283b6[_0x51674b(0x113)]);}catch(_0x4ab2b4){throw menuFailure(asMenuError(_0x4ab2b4),_0x2edb97,{'stage':_0x51674b(0xfa),'failed':{'id':_0x46d81c}});}let _0x5e4785,_0x39266e;try{_0x5e4785=await fetchMutationSnapshot(_0x5283b6,_0x51674b(0x105),_0x46d81c),_0x39266e=assertMenuDeletePlanCurrent(_0x36d62b[_0x51674b(0xdd)],_0x5283b6[_0x51674b(0x113)],_0x5e4785),assertDeleteTargetsComplete(_0x36d62b[_0x51674b(0xdd)],_0x5e4785),_0x39266e['forEach'](_0x23ba8c=>assertDeleteSafety(_0x23ba8c,_0x36d62b[_0x51674b(0xdd)]['recursive'])),assertNoSharedPages(_0x5e4785,_0x39266e),assertCascadeMatchesPlan(_0x2edb97,_0x39266e);}catch(_0x30ea30){throw menuFailure(asMenuError(_0x30ea30),_0x2edb97,{'stage':_0x51674b(0xd6),'failed':{'id':_0x46d81c}});}const _0x48fd3e=_0x36d62b[_0x51674b(0xdd)][_0x51674b(0xcc)];let _0x18674a;try{_0x18674a=await batchDeleteMenuEntities(_0x5283b6[_0x51674b(0xe1)],_0x48fd3e);}catch(_0x1814ba){const _0xf3ad56=mapMenuApiError(_0x1814ba,'batch\x20delete'),_0x69592a=[_0x51674b(0xa6)];let _0x1de6e9;try{_0x1de6e9=await readDeleteOutcome(_0x5283b6,_0x48fd3e);}catch(_0x4d2198){const _0x253d52=describeMenuErrorCause(_0x4d2198,_0x51674b(0x106),_0x46d81c);_0x69592a['push'](_0x51674b(0xb6)+_0x253d52['causeCode']+'):\x20'+_0x253d52[_0x51674b(0xc4)]);throw menuFailure(_0xf3ad56,_0x2edb97,{'stage':_0x51674b(0xb0),'failed':{'targetIds':_0x48fd3e,'targetIdsAbsent':_0x51674b(0xb9),..._0x253d52},'warnings':_0x69592a,'verification':{'status':_0x51674b(0xf8),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x48fd3e}});}throw menuFailure(_0xf3ad56,_0x2edb97,{'stage':'batch-delete','succeeded':_0x1de6e9[_0x51674b(0xc9)][_0x51674b(0xe9)](_0x2124f7=>({'id':_0x2124f7,'deleted':!![]})),'failed':{'targetIds':_0x48fd3e,'absentIds':_0x1de6e9[_0x51674b(0xc9)],'remainingIds':_0x1de6e9['remainingIds']},'warnings':_0x69592a,'verification':verificationFromOutcome(_0x1de6e9)});}if(_0x18674a!==_0x48fd3e[_0x51674b(0xa1)]){const _0xca0986=menuError(_0x51674b(0xd1),_0x51674b(0x111)+_0x18674a+_0x51674b(0xeb)+_0x48fd3e['length']+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.'),_0x1c69c7=[_0x51674b(0xa5)];let _0xd76103;try{_0xd76103=await readDeleteOutcome(_0x5283b6,_0x48fd3e);}catch(_0x4f582d){const _0x3171b2=describeMenuErrorCause(_0x4f582d,_0x51674b(0xc8),_0x46d81c);_0x1c69c7[_0x51674b(0xa2)](_0x51674b(0x108)+_0x3171b2['causeCode']+_0x51674b(0x10b)+_0x3171b2[_0x51674b(0xc4)]);throw menuFailure(_0xca0986,_0x2edb97,{'stage':_0x51674b(0xb0),'failed':{'targetIds':_0x48fd3e,'expectedCount':_0x48fd3e[_0x51674b(0xa1)],'reportedDeletedCount':_0x18674a,'targetIdsAbsent':_0x51674b(0xb9),..._0x3171b2},'warnings':_0x1c69c7,'verification':{'status':_0x51674b(0xf8),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x48fd3e}});}throw menuFailure(_0xca0986,_0x2edb97,{'stage':_0x51674b(0xb0),'succeeded':_0xd76103[_0x51674b(0xc9)][_0x51674b(0xe9)](_0x210ae8=>({'id':_0x210ae8,'deleted':!![]})),'failed':{'targetIds':_0x48fd3e,'expectedCount':_0x48fd3e[_0x51674b(0xa1)],'reportedDeletedCount':_0x18674a,'absentIds':_0xd76103[_0x51674b(0xc9)],'remainingIds':_0xd76103['remainingIds']},'warnings':_0x1c69c7,'verification':verificationFromOutcome(_0xd76103)});}let _0x4fe91b;try{_0x4fe91b=await readDeleteOutcome(_0x5283b6,_0x48fd3e);}catch(_0x3aa4ad){const _0x54a3c9=describeMenuErrorCause(_0x3aa4ad,'verify\x20batch\x20delete',_0x46d81c),_0x3fa126=asVerificationError(_0x3aa4ad,_0x51674b(0x104)+_0x46d81c+_0x51674b(0xd2));throw menuFailure(_0x3fa126,_0x2edb97,{'stage':_0x51674b(0xa7),'succeeded':_0x48fd3e[_0x51674b(0xe9)](_0x3a2b5f=>({'id':_0x3a2b5f,'deleteRequested':!![]})),'failed':{'id':_0x46d81c,'targetIds':_0x48fd3e,'targetIdsAbsent':_0x51674b(0xb9),..._0x54a3c9},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x51674b(0xf8),'lookupCommand':_0x51674b(0x114),'targetIds':_0x48fd3e}});}if(_0x4fe91b[_0x51674b(0x117)][_0x51674b(0xa1)]>0x0){const _0x4a55c=menuError(_0x51674b(0xde),_0x51674b(0xfc)+_0x4fe91b[_0x51674b(0x117)][_0x51674b(0xfd)](',\x20')+'.',_0x51674b(0xca));throw menuFailure(_0x4a55c,_0x2edb97,{'stage':_0x51674b(0xa7),'succeeded':_0x48fd3e[_0x51674b(0xe9)](_0x195e2d=>({'id':_0x195e2d,'deleteRequested':!![]})),'failed':{'id':_0x46d81c,'targetIds':_0x48fd3e,'absentIds':_0x4fe91b['absentIds'],'remainingIds':_0x4fe91b[_0x51674b(0x117)]},'warnings':[_0x51674b(0xc1)],'verification':verificationFromOutcome(_0x4fe91b)});}const _0x5505b7=_0x48fd3e[_0x51674b(0xe9)](_0x37ef17=>({'id':_0x37ef17,'deleted':!![]})),_0x1aa73b=mutationResult({..._0x2edb97,'dryRun':![],'succeeded':_0x5505b7,'verification':{'checkedBy':_0x51674b(0xb4),'plannedSnapshotHash':_0x2edb97[_0x51674b(0xec)],'finalSnapshotHash':_0x4fe91b[_0x51674b(0xb8)][_0x51674b(0xe2)],'reportedDeletedCount':_0x18674a,'targetAbsent':!_0x4fe91b['snapshot']['byId']['has'](_0x46d81c),'allTargetsAbsent':!![],'targetIds':_0x48fd3e}});return{'ok':!![],'data':_0x1aa73b,'message':_0x51674b(0xe8)+_0x5505b7[_0x51674b(0xa1)]+_0x51674b(0x107)+_0x46d81c+'.'};}};function a129_0x4f72(_0x36082c,_0x486065){_0x36082c=_0x36082c-0xa1;const _0x597967=a129_0x5979();let _0x4f72ff=_0x597967[_0x36082c];return _0x4f72ff;}async function readDeleteOutcome(_0x4b4e67,_0x2c6d91){const _0x2bc46f=a129_0x2c2199,_0x5e0a82=await fetchMenuSnapshot(_0x4b4e67[_0x2bc46f(0x113)],_0x4b4e67['cookie']);return{'snapshot':_0x5e0a82,'absentIds':_0x2c6d91[_0x2bc46f(0xa9)](_0x137cf8=>!_0x5e0a82[_0x2bc46f(0xf1)][_0x2bc46f(0xf6)](_0x137cf8)),'remainingIds':_0x2c6d91['filter'](_0x41fdba=>_0x5e0a82[_0x2bc46f(0xf1)][_0x2bc46f(0xf6)](_0x41fdba))};}function verificationFromOutcome(_0x2c39f2){const _0x825b6b=a129_0x2c2199;return{'checkedBy':'menu\x20list','absentIds':_0x2c39f2[_0x825b6b(0xc9)],'remainingIds':_0x2c39f2['remainingIds']};}function validateDeleteDryRunInput(_0x12ee81){const _0x3eb4f6=a129_0x2c2199;validateExactId(_0x12ee81);if(!hasFlag(_0x12ee81,_0x3eb4f6(0xaa))||!_0x12ee81[_0x3eb4f6(0xc0)](_0x3eb4f6(0xaa))[_0x3eb4f6(0xe6)]())throw CliErrors[_0x3eb4f6(0xbf)](_0x3eb4f6(0xaa),_0x3eb4f6(0xa3));if(hasFlag(_0x12ee81,_0x3eb4f6(0xdd)))throw CliErrors[_0x3eb4f6(0xda)](_0x3eb4f6(0x10a));}function validateDeleteExecuteInput(_0x12064f){const _0x54c111=a129_0x2c2199;if(!hasFlag(_0x12064f,_0x54c111(0xdd))||!_0x12064f[_0x54c111(0xc0)](_0x54c111(0xdd))[_0x54c111(0xe6)]())throw CliErrors[_0x54c111(0xbf)](_0x54c111(0xdd),_0x54c111(0xb1));const _0x26810c=['id',_0x54c111(0x103),_0x54c111(0xaa),_0x54c111(0xe5),'expect-path',_0x54c111(0xe0)][_0x54c111(0xa9)](_0x500a69=>hasFlag(_0x12064f,_0x500a69));if(_0x26810c[_0x54c111(0xa1)]>0x0)throw CliErrors['validation']('Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20'+_0x26810c[_0x54c111(0xe9)](_0xa71239=>'--'+_0xa71239)['join'](',\x20')+'.');}async function buildDeletePlan(_0x4db0a0){const _0x1b06fe=a129_0x2c2199,_0x11cbac=validateExactId(_0x4db0a0),_0x2eb280=await fetchMutationSnapshot(_0x4db0a0,_0x1b06fe(0xe4),_0x11cbac),_0x76d54d=requireMenu(_0x2eb280,_0x11cbac);assertExpectedState(_0x4db0a0,_0x76d54d);const _0x3020e4=_0x4db0a0[_0x1b06fe(0xee)](_0x1b06fe(0x103));let _0x25e7cd;if(_0x3020e4){if(_0x76d54d[_0x1b06fe(0x110)][_0x1b06fe(0xe6)]()['toLowerCase']()!=='folder')throw menuError(_0x1b06fe(0xd8),_0x1b06fe(0xae)+_0x76d54d['id']+_0x1b06fe(0x109)+(_0x76d54d[_0x1b06fe(0x110)]||'unknown')+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x25e7cd=collectDeleteTargets(_0x2eb280,_0x76d54d),_0x25e7cd[_0x1b06fe(0xc3)](_0x4c7a4d=>assertDeleteSafety(_0x4c7a4d,!![]));}else assertDeleteSafety(_0x76d54d),_0x25e7cd=[_0x76d54d];assertNoSharedPages(_0x2eb280,_0x25e7cd);const _0x24882a=_0x25e7cd[_0x1b06fe(0xe9)](_0x2add06=>_0x2add06['id']),_0x588a8d=cascadeForTargets(_0x25e7cd),_0x11bb07=_0x588a8d['pages'][_0x1b06fe(0xa1)]>0x0?['Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.']:[];return mutationResult({'operation':_0x1b06fe(0x11a),'selector':{'id':_0x11cbac,'recursive':_0x3020e4},'before':_0x76d54d,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x1b06fe(0xb7),'path':_0x1b06fe(0xf9),'body':{'idList':_0x24882a}}],'targets':_0x25e7cd,'deleteOrder':_0x24882a,'snapshotHash':_0x2eb280[_0x1b06fe(0xe2)],'cascade':_0x588a8d,'warnings':_0x11bb07});}function assertDeleteSafety(_0x3cd280,_0x56f2dc=![]){const _0x275908=a129_0x2c2199,_0x3f4f81=_0x3cd280[_0x275908(0x110)][_0x275908(0xe6)]()[_0x275908(0xaf)]()===_0x275908(0xa4);if(_0x3cd280['childrenCount']>0x0&&(!_0x56f2dc||!_0x3f4f81))throw menuError('menu_non_empty',_0x275908(0xae)+_0x3cd280['id']+_0x275908(0xdc)+_0x3cd280[_0x275908(0x102)]+_0x275908(0xd7),'Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20'+_0x3cd280[_0x275908(0xf2)][_0x275908(0xfd)](',\x20'));if(_0x3f4f81&&_0x3cd280[_0x275908(0x118)]!=null)throw menuError('menu_delete_page_bound',_0x275908(0xfb)+_0x3cd280['id']+_0x275908(0x100)+_0x3cd280[_0x275908(0x118)]+'\x20and\x20cannot\x20be\x20deleted\x20safely.','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x3f4f81)return;if(!_0x3cd280['resourcesValid'])throw menuError(_0x275908(0xcf),_0x275908(0xfb)+_0x3cd280['id']+_0x275908(0xac),_0x275908(0xb3));if(_0x3cd280['resources']['length']>0x0)throw menuError(_0x275908(0xff),'Folder\x20'+_0x3cd280['id']+_0x275908(0xa8)+_0x3cd280[_0x275908(0xf7)][_0x275908(0xa1)]+'\x20resource\x20URL(s).',_0x275908(0x116));}function collectDeleteTargets(_0x1628b9,_0x2d7182){const _0x3e2393=[],_0x17d3a8=new Set(),_0x5d2b0b=new Set(),_0x239e11=_0x1ccb39=>{const _0x113b18=a129_0x4f72;if(_0x17d3a8[_0x113b18(0xf6)](_0x1ccb39['id']))throw menuError(_0x113b18(0xf5),'Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20'+_0x1ccb39['id']+'.');if(_0x5d2b0b[_0x113b18(0xf6)](_0x1ccb39['id']))return;_0x17d3a8['add'](_0x1ccb39['id']);for(const _0x2def45 of _0x1ccb39[_0x113b18(0xf2)]){const _0x1818c7=_0x1628b9[_0x113b18(0xf1)][_0x113b18(0x101)](_0x2def45);if(!_0x1818c7)throw menuError(_0x113b18(0xf5),_0x113b18(0xae)+_0x1ccb39['id']+_0x113b18(0xea)+_0x2def45+'.');_0x239e11(_0x1818c7);}_0x17d3a8[_0x113b18(0x11a)](_0x1ccb39['id']),_0x5d2b0b[_0x113b18(0xbd)](_0x1ccb39['id']),_0x3e2393[_0x113b18(0xa2)](_0x1ccb39);};return _0x239e11(_0x2d7182),_0x3e2393;}function assertDeleteTargetsComplete(_0x1e51e3,_0x226e9e){const _0x1881a5=a129_0x2c2199,_0x42e9b9=requireMenu(_0x226e9e,_0x1e51e3[_0x1881a5(0xf3)]['id']);if(_0x1e51e3[_0x1881a5(0x103)]&&_0x42e9b9[_0x1881a5(0x110)][_0x1881a5(0xe6)]()[_0x1881a5(0xaf)]()!=='folder')throw menuError(_0x1881a5(0xe3),_0x1881a5(0xf0)+_0x42e9b9['id']+_0x1881a5(0xcb));const _0x3bf3dc=_0x1e51e3['recursive']?collectDeleteTargets(_0x226e9e,_0x42e9b9)[_0x1881a5(0xe9)](_0x5e8f5c=>_0x5e8f5c['id']):[_0x42e9b9['id']];if(JSON[_0x1881a5(0x11b)](_0x1e51e3[_0x1881a5(0xcc)])!==JSON['stringify'](_0x3bf3dc))throw menuError('menu_plan_invalid',_0x1881a5(0x119),_0x1881a5(0xed));}function assertNoSharedPages(_0x4a3734,_0x56641c){const _0x5245a0=a129_0x2c2199,_0x518fd3=new Set(_0x56641c[_0x5245a0(0xe9)](_0x1a935f=>_0x1a935f['id'])),_0x3a103b=new Set(_0x56641c[_0x5245a0(0xe9)](_0x1aba9d=>_0x1aba9d[_0x5245a0(0x118)])[_0x5245a0(0xa9)](_0x44b542=>_0x44b542!=null));if(_0x3a103b[_0x5245a0(0xcd)]===0x0)return;const _0x20b1b6=_0x4a3734[_0x5245a0(0xdb)]['filter'](_0x3ae297=>!_0x518fd3[_0x5245a0(0xf6)](_0x3ae297['id'])&&_0x3ae297[_0x5245a0(0x118)]!=null&&_0x3a103b['has'](_0x3ae297[_0x5245a0(0x118)]));if(_0x20b1b6[_0x5245a0(0xa1)]===0x0)return;const _0xea4d3f=_0x20b1b6[_0x5245a0(0xe9)](_0xf3bcc0=>_0x5245a0(0xb5)+_0xf3bcc0['pageId']+'\x20->\x20menu\x20'+_0xf3bcc0['id'])[_0x5245a0(0xfd)](',\x20');throw menuError(_0x5245a0(0xd3),'Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0xea4d3f+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x1d67ee,_0x25d83b){const _0x13a4ca=a129_0x2c2199,_0x2df9b6=cascadeForTargets(_0x25d83b);if(JSON[_0x13a4ca(0x11b)](_0x1d67ee[_0x13a4ca(0xbb)])!==JSON[_0x13a4ca(0x11b)](_0x2df9b6))throw menuError(_0x13a4ca(0xe3),_0x13a4ca(0xd9));}function cascadeForTargets(_0x8e23e){const _0x33325d=a129_0x2c2199,_0x299fc1=_0x8e23e['map'](_0x963552=>_0x963552['pageId'])[_0x33325d(0xa9)](_0x506549=>_0x506549!=null)[_0x33325d(0xa9)]((_0x270aa6,_0xf7971e,_0x1a07b0)=>_0x1a07b0[_0x33325d(0xb2)](_0x270aa6)===_0xf7971e);return{'pages':_0x299fc1,'pageSchemaAffected':_0x299fc1['length']>0x0};}function asMenuError(_0x3e6155){const _0x16f833=a129_0x2c2199;return _0x3e6155 instanceof CliError?_0x3e6155:menuError(_0x16f833(0xe3),_0x3e6155 instanceof Error?_0x3e6155['message']:String(_0x3e6155));}
1
+ const a129_0x268982=a129_0x22eb;(function(_0x380b7f,_0x59d23b){const _0x2b2b86=a129_0x22eb,_0x1b3385=_0x380b7f();while(!![]){try{const _0x4958f6=parseInt(_0x2b2b86(0xdb))/0x1+parseInt(_0x2b2b86(0x117))/0x2+parseInt(_0x2b2b86(0xe1))/0x3*(parseInt(_0x2b2b86(0x119))/0x4)+parseInt(_0x2b2b86(0xba))/0x5*(-parseInt(_0x2b2b86(0x112))/0x6)+-parseInt(_0x2b2b86(0xac))/0x7+-parseInt(_0x2b2b86(0xde))/0x8*(parseInt(_0x2b2b86(0xb2))/0x9)+parseInt(_0x2b2b86(0xfc))/0xa;if(_0x4958f6===_0x59d23b)break;else _0x1b3385['push'](_0x1b3385['shift']());}catch(_0x2c7521){_0x1b3385['push'](_0x1b3385['shift']());}}}(a129_0x1844,0x21403));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a129_0x268982(0xb5),'path':'/smartapi/menu/batchDelete'}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':a129_0x268982(0xb8),'type':a129_0x268982(0xc1),'description':a129_0x268982(0xc4)},MENU_DELETE_PLAN_OUT_FLAG={'name':a129_0x268982(0xd6),'type':a129_0x268982(0xec),'description':a129_0x268982(0x106)},MENU_DELETE_PLAN_FLAG={'name':'plan','type':'string','description':a129_0x268982(0xbd)};export const menuDelete={'service':a129_0x268982(0x107),'command':'delete','description':a129_0x268982(0xae),'risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x18f197){const _0x1cecef=a129_0x268982;_0x18f197[_0x1cecef(0xd0)]('dry-run')?validateDeleteDryRunInput(_0x18f197):validateDeleteExecuteInput(_0x18f197),requireExplicitYes(_0x18f197);},async 'dryRun'(_0x533d85){const _0x3db6cc=a129_0x268982;validateDeleteDryRunInput(_0x533d85);const _0x38fedc=await buildDeletePlan(_0x533d85),_0x6822e6=createMenuDeletePlanFile(_0x533d85[_0x3db6cc(0xed)],_0x38fedc),_0x1de0c0=await writeMenuDeletePlan(_0x533d85['str'](_0x3db6cc(0xd6)),_0x6822e6),_0x5afec8=mutationResult({..._0x38fedc,'planFile':{'path':_0x1de0c0,'createdAt':_0x6822e6[_0x3db6cc(0xdf)],'expiresAt':_0x6822e6['expiresAt']}});return menuDryRunResult(_0x5afec8,{'method':_0x3db6cc(0xb5),'url':_0x3db6cc(0xdc),'body':{'idList':_0x5afec8[_0x3db6cc(0xe7)]},'description':_0x3db6cc(0x116)+(_0x5afec8[_0x3db6cc(0xe7)]?.[_0x3db6cc(0xf1)]??0x1)+_0x3db6cc(0x108)+_0x5afec8[_0x3db6cc(0xda)]['id']+';\x20execution\x20must\x20consume\x20'+_0x1de0c0+'.'});},async 'execute'(_0x51f79a){const _0x27e91e=a129_0x268982;requireExplicitYes(_0x51f79a),validateDeleteExecuteInput(_0x51f79a);const _0x2de6d4=await readMenuDeletePlan(_0x51f79a[_0x27e91e(0xca)](_0x27e91e(0xcd))),_0x15ba31=mutationPlanFromDeleteFile(_0x2de6d4[_0x27e91e(0xcd)],_0x2de6d4[_0x27e91e(0xea)]),_0x6a0f8c=_0x2de6d4[_0x27e91e(0xcd)]['target']['id'];try{assertMenuDeletePlanExecutable(_0x2de6d4[_0x27e91e(0xcd)],_0x51f79a[_0x27e91e(0xed)]);}catch(_0x512147){throw menuFailure(asMenuError(_0x512147),_0x15ba31,{'stage':'plan-validation','failed':{'id':_0x6a0f8c}});}let _0x5f1ec6,_0x145793;try{_0x5f1ec6=await fetchMutationSnapshot(_0x51f79a,_0x27e91e(0xd2),_0x6a0f8c),_0x145793=assertMenuDeletePlanCurrent(_0x2de6d4['plan'],_0x51f79a[_0x27e91e(0xed)],_0x5f1ec6),assertDeleteTargetsComplete(_0x2de6d4[_0x27e91e(0xcd)],_0x5f1ec6),_0x145793[_0x27e91e(0xbe)](_0x41b68d=>assertDeleteSafety(_0x41b68d,_0x2de6d4['plan'][_0x27e91e(0xb8)])),assertNoSharedPages(_0x5f1ec6,_0x145793),assertCascadeMatchesPlan(_0x15ba31,_0x145793);}catch(_0x563978){throw menuFailure(asMenuError(_0x563978),_0x15ba31,{'stage':'pre-write-plan-validation','failed':{'id':_0x6a0f8c}});}const _0x4f10a4=_0x2de6d4[_0x27e91e(0xcd)]['deleteOrder'];let _0x4b8e36;try{_0x4b8e36=await batchDeleteMenuEntities(_0x51f79a[_0x27e91e(0xa9)],_0x4f10a4);}catch(_0x51c5f7){const _0x24d3d9=mapMenuApiError(_0x51c5f7,_0x27e91e(0x104)),_0x5af200=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0x19d687;try{_0x19d687=await readDeleteOutcome(_0x51f79a,_0x4f10a4);}catch(_0x12c5d6){const _0x273309=describeMenuErrorCause(_0x12c5d6,_0x27e91e(0xad),_0x6a0f8c);_0x5af200[_0x27e91e(0xab)]('Post-failure\x20menu\x20readback\x20failed\x20('+_0x273309['causeCode']+_0x27e91e(0xf2)+_0x273309[_0x27e91e(0x114)]);throw menuFailure(_0x24d3d9,_0x15ba31,{'stage':'batch-delete','failed':{'targetIds':_0x4f10a4,'targetIdsAbsent':_0x27e91e(0x111),..._0x273309},'warnings':_0x5af200,'verification':{'status':_0x27e91e(0xb4),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x4f10a4}});}throw menuFailure(_0x24d3d9,_0x15ba31,{'stage':'batch-delete','succeeded':_0x19d687[_0x27e91e(0xaa)][_0x27e91e(0xd4)](_0x28fd68=>({'id':_0x28fd68,'deleted':!![]})),'failed':{'targetIds':_0x4f10a4,'absentIds':_0x19d687[_0x27e91e(0xaa)],'remainingIds':_0x19d687[_0x27e91e(0x118)]},'warnings':_0x5af200,'verification':verificationFromOutcome(_0x19d687)});}if(_0x4b8e36!==_0x4f10a4[_0x27e91e(0xf1)]){const _0x407cfd=menuError('menu_batch_delete_count_mismatch',_0x27e91e(0xaf)+_0x4b8e36+'\x20deleted\x20menus;\x20expected\x20'+_0x4f10a4[_0x27e91e(0xf1)]+'.',_0x27e91e(0xf8)),_0x2ab03f=[_0x27e91e(0x110)];let _0x261a11;try{_0x261a11=await readDeleteOutcome(_0x51f79a,_0x4f10a4);}catch(_0x51a14a){const _0x459cca=describeMenuErrorCause(_0x51a14a,_0x27e91e(0xfe),_0x6a0f8c);_0x2ab03f['push']('Post-mismatch\x20menu\x20readback\x20failed\x20('+_0x459cca[_0x27e91e(0xb6)]+_0x27e91e(0xf2)+_0x459cca[_0x27e91e(0x114)]);throw menuFailure(_0x407cfd,_0x15ba31,{'stage':_0x27e91e(0xe3),'failed':{'targetIds':_0x4f10a4,'expectedCount':_0x4f10a4[_0x27e91e(0xf1)],'reportedDeletedCount':_0x4b8e36,'targetIdsAbsent':_0x27e91e(0x111),..._0x459cca},'warnings':_0x2ab03f,'verification':{'status':'failed','lookupCommand':_0x27e91e(0x10e),'targetIds':_0x4f10a4}});}throw menuFailure(_0x407cfd,_0x15ba31,{'stage':_0x27e91e(0xe3),'succeeded':_0x261a11[_0x27e91e(0xaa)][_0x27e91e(0xd4)](_0x32f49d=>({'id':_0x32f49d,'deleted':!![]})),'failed':{'targetIds':_0x4f10a4,'expectedCount':_0x4f10a4['length'],'reportedDeletedCount':_0x4b8e36,'absentIds':_0x261a11[_0x27e91e(0xaa)],'remainingIds':_0x261a11[_0x27e91e(0x118)]},'warnings':_0x2ab03f,'verification':verificationFromOutcome(_0x261a11)});}let _0x2dc3b9;try{_0x2dc3b9=await readDeleteOutcome(_0x51f79a,_0x4f10a4);}catch(_0x45dc0b){const _0x49b6c8=describeMenuErrorCause(_0x45dc0b,_0x27e91e(0xff),_0x6a0f8c),_0x5036e0=asVerificationError(_0x45dc0b,_0x27e91e(0x100)+_0x6a0f8c+_0x27e91e(0xe4));throw menuFailure(_0x5036e0,_0x15ba31,{'stage':_0x27e91e(0xe6),'succeeded':_0x4f10a4[_0x27e91e(0xd4)](_0x113c3e=>({'id':_0x113c3e,'deleteRequested':!![]})),'failed':{'id':_0x6a0f8c,'targetIds':_0x4f10a4,'targetIdsAbsent':_0x27e91e(0x111),..._0x49b6c8},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x27e91e(0xb4),'lookupCommand':_0x27e91e(0x10e),'targetIds':_0x4f10a4}});}if(_0x2dc3b9['remainingIds']['length']>0x0){const _0x206081=menuError(_0x27e91e(0xeb),_0x27e91e(0xb0)+_0x2dc3b9[_0x27e91e(0x118)]['join'](',\x20')+'.',_0x27e91e(0xf8));throw menuFailure(_0x206081,_0x15ba31,{'stage':_0x27e91e(0xe6),'succeeded':_0x4f10a4[_0x27e91e(0xd4)](_0x2e2ef5=>({'id':_0x2e2ef5,'deleteRequested':!![]})),'failed':{'id':_0x6a0f8c,'targetIds':_0x4f10a4,'absentIds':_0x2dc3b9[_0x27e91e(0xaa)],'remainingIds':_0x2dc3b9['remainingIds']},'warnings':[_0x27e91e(0xbf)],'verification':verificationFromOutcome(_0x2dc3b9)});}const _0x30f899=_0x4f10a4[_0x27e91e(0xd4)](_0x4a054b=>({'id':_0x4a054b,'deleted':!![]})),_0x4be40f=mutationResult({..._0x15ba31,'dryRun':![],'succeeded':_0x30f899,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x15ba31[_0x27e91e(0xef)],'finalSnapshotHash':_0x2dc3b9[_0x27e91e(0xcb)][_0x27e91e(0xb7)],'reportedDeletedCount':_0x4b8e36,'targetAbsent':!_0x2dc3b9['snapshot'][_0x27e91e(0xf9)][_0x27e91e(0xe8)](_0x6a0f8c),'allTargetsAbsent':!![],'targetIds':_0x4f10a4}});return{'ok':!![],'data':_0x4be40f,'message':_0x27e91e(0xd9)+_0x30f899['length']+_0x27e91e(0x108)+_0x6a0f8c+'.'};}};async function readDeleteOutcome(_0x439eff,_0x1ec187){const _0x35ade7=a129_0x268982,_0x502605=await fetchMenuSnapshot(_0x439eff[_0x35ade7(0xed)],_0x439eff[_0x35ade7(0xa9)]);return{'snapshot':_0x502605,'absentIds':_0x1ec187[_0x35ade7(0x115)](_0x3fc3cf=>!_0x502605[_0x35ade7(0xf9)]['has'](_0x3fc3cf)),'remainingIds':_0x1ec187[_0x35ade7(0x115)](_0x4f526c=>_0x502605['byId'][_0x35ade7(0xe8)](_0x4f526c))};}function verificationFromOutcome(_0x3bfba9){const _0x4c6154=a129_0x268982;return{'checkedBy':_0x4c6154(0x10c),'absentIds':_0x3bfba9[_0x4c6154(0xaa)],'remainingIds':_0x3bfba9['remainingIds']};}function a129_0x1844(){const _0x1fd419=['39718ulehuR','/smartapi/menu/batchDelete','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','144hiRfDo','createdAt','menu_plan_invalid','57jJgCUA','cascade','batch-delete','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','pageId','verification','deleteOrder','has','Recursive\x20menu\x20delete\x20plan\x20root\x20','path','menu_verification_failed','string','appCode','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','snapshotHash','flagMissing','length','):\x20','Menu\x20','\x20still\x20references\x20','childrenIds','\x20and\x20cannot\x20be\x20deleted\x20safely.','folder','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','byId','trim','type','1299560CSMmuT','menu_folder_resources_invalid','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','verify\x20batch\x20delete','Batch\x20delete\x20request\x20for\x20menu\x20','resources','Folder\x20','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','batch\x20delete','message','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','menu','\x20menu(s)\x20under\x20exact\x20id\x20','size','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','expected-children-count','menu\x20list','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','rabetbase\x20menu\x20list\x20--format\x20json','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','unconfirmed','10350bNgLIW','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','causeMessage','filter','Would\x20batch\x20delete\x20','415752nSzcAU','remainingIds','36212ctXEFp','add','menu_delete_page_bound','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','menu_non_empty','\x20resource\x20URL(s).','indexOf','cookie','absentIds','push','1567111lqSdOE','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','Backend\x20reported\x20','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','target','54207XjzZjl','toLowerCase','failed','POST','causeCode','hash','recursive','delete','235jLdtLn','get','expect-parent-id','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','forEach','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','\x20is\x20not\x20a\x20folder.','boolean','menu_tree_invalid','childrenCount','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','validation','page\x20','\x20has\x20','menu_recursive_requires_folder','unknown','str','snapshot','\x20references\x20missing\x20child\x20','plan','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','bool','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','execute\x20reviewed\x20delete\x20plan','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','map','menus','plan-out','join','stringify','Deleted\x20','selector'];a129_0x1844=function(){return _0x1fd419;};return a129_0x1844();}function validateDeleteDryRunInput(_0x2c3dde){const _0x4cefc8=a129_0x268982;validateExactId(_0x2c3dde);if(!hasFlag(_0x2c3dde,_0x4cefc8(0xd6))||!_0x2c3dde['str']('plan-out')[_0x4cefc8(0xfa)]())throw CliErrors[_0x4cefc8(0xf0)](_0x4cefc8(0xd6),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x2c3dde,'plan'))throw CliErrors['validation'](_0x4cefc8(0x103));}function validateDeleteExecuteInput(_0x49f9a6){const _0x145dad=a129_0x268982;if(!hasFlag(_0x49f9a6,_0x145dad(0xcd))||!_0x49f9a6[_0x145dad(0xca)]('plan')['trim']())throw CliErrors[_0x145dad(0xf0)](_0x145dad(0xcd),'--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.');const _0xe4d4e3=['id',_0x145dad(0xb8),_0x145dad(0xd6),_0x145dad(0xbc),'expect-path',_0x145dad(0x10b)][_0x145dad(0x115)](_0xd0ada3=>hasFlag(_0x49f9a6,_0xd0ada3));if(_0xe4d4e3[_0x145dad(0xf1)]>0x0)throw CliErrors[_0x145dad(0xc5)](_0x145dad(0x10f)+_0xe4d4e3['map'](_0x439e5a=>'--'+_0x439e5a)[_0x145dad(0xd7)](',\x20')+'.');}async function buildDeletePlan(_0x56b4e9){const _0x358d17=a129_0x268982,_0x3c69b8=validateExactId(_0x56b4e9),_0x528c64=await fetchMutationSnapshot(_0x56b4e9,'plan\x20delete',_0x3c69b8),_0xb4a3a6=requireMenu(_0x528c64,_0x3c69b8);assertExpectedState(_0x56b4e9,_0xb4a3a6);const _0x1c1630=_0x56b4e9['bool'](_0x358d17(0xb8));let _0x2a3ad4;if(_0x1c1630){if(_0xb4a3a6[_0x358d17(0xfb)][_0x358d17(0xfa)]()[_0x358d17(0xb3)]()!==_0x358d17(0xf7))throw menuError(_0x358d17(0xc8),_0x358d17(0xf3)+_0xb4a3a6['id']+'\x20is\x20type\x20\x22'+(_0xb4a3a6[_0x358d17(0xfb)]||_0x358d17(0xc9))+_0x358d17(0xd1));_0x2a3ad4=collectDeleteTargets(_0x528c64,_0xb4a3a6),_0x2a3ad4[_0x358d17(0xbe)](_0xa69214=>assertDeleteSafety(_0xa69214,!![]));}else assertDeleteSafety(_0xb4a3a6),_0x2a3ad4=[_0xb4a3a6];assertNoSharedPages(_0x528c64,_0x2a3ad4);const _0x4dfeba=_0x2a3ad4['map'](_0x4ffc10=>_0x4ffc10['id']),_0x352ac3=cascadeForTargets(_0x2a3ad4),_0x40c1b2=_0x352ac3['pages']['length']>0x0?[_0x358d17(0x113)]:[];return mutationResult({'operation':_0x358d17(0xb9),'selector':{'id':_0x3c69b8,'recursive':_0x1c1630},'before':_0xb4a3a6,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x358d17(0xb5),'path':_0x358d17(0xdc),'body':{'idList':_0x4dfeba}}],'targets':_0x2a3ad4,'deleteOrder':_0x4dfeba,'snapshotHash':_0x528c64[_0x358d17(0xb7)],'cascade':_0x352ac3,'warnings':_0x40c1b2});}function assertDeleteSafety(_0xddac01,_0x2a86aa=![]){const _0x532738=a129_0x268982,_0x5e0691=_0xddac01['type'][_0x532738(0xfa)]()[_0x532738(0xb3)]()===_0x532738(0xf7);if(_0xddac01[_0x532738(0xc3)]>0x0&&(!_0x2a86aa||!_0x5e0691))throw menuError(_0x532738(0xa6),'Menu\x20'+_0xddac01['id']+_0x532738(0xc7)+_0xddac01[_0x532738(0xc3)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0x532738(0x10a)+_0xddac01[_0x532738(0xf5)][_0x532738(0xd7)](',\x20'));if(_0x5e0691&&_0xddac01['pageId']!=null)throw menuError(_0x532738(0xa4),'Folder\x20'+_0xddac01['id']+_0x532738(0x10d)+_0xddac01[_0x532738(0xe5)]+_0x532738(0xf6),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x5e0691)return;if(!_0xddac01['resourcesValid'])throw menuError(_0x532738(0xfd),_0x532738(0x102)+_0xddac01['id']+_0x532738(0xce),_0x532738(0xcf));if(_0xddac01[_0x532738(0x101)][_0x532738(0xf1)]>0x0)throw menuError('menu_folder_has_resources',_0x532738(0x102)+_0xddac01['id']+_0x532738(0xf4)+_0xddac01[_0x532738(0x101)]['length']+_0x532738(0xa7),'Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function collectDeleteTargets(_0x26b56a,_0x2c9a22){const _0x5d8393=[],_0xb36b7c=new Set(),_0x3d8f54=new Set(),_0x249b0d=_0x442226=>{const _0x22360c=a129_0x22eb;if(_0xb36b7c[_0x22360c(0xe8)](_0x442226['id']))throw menuError(_0x22360c(0xc2),_0x22360c(0xee)+_0x442226['id']+'.');if(_0x3d8f54[_0x22360c(0xe8)](_0x442226['id']))return;_0xb36b7c[_0x22360c(0xa3)](_0x442226['id']);for(const _0x302a4c of _0x442226[_0x22360c(0xf5)]){const _0x260673=_0x26b56a['byId'][_0x22360c(0xbb)](_0x302a4c);if(!_0x260673)throw menuError(_0x22360c(0xc2),_0x22360c(0xf3)+_0x442226['id']+_0x22360c(0xcc)+_0x302a4c+'.');_0x249b0d(_0x260673);}_0xb36b7c[_0x22360c(0xb9)](_0x442226['id']),_0x3d8f54[_0x22360c(0xa3)](_0x442226['id']),_0x5d8393[_0x22360c(0xab)](_0x442226);};return _0x249b0d(_0x2c9a22),_0x5d8393;}function assertDeleteTargetsComplete(_0x6bca60,_0x204630){const _0x30ea30=a129_0x268982,_0xf7353=requireMenu(_0x204630,_0x6bca60[_0x30ea30(0xb1)]['id']);if(_0x6bca60[_0x30ea30(0xb8)]&&_0xf7353['type'][_0x30ea30(0xfa)]()['toLowerCase']()!=='folder')throw menuError(_0x30ea30(0xe0),_0x30ea30(0xe9)+_0xf7353['id']+_0x30ea30(0xc0));const _0x847ab5=_0x6bca60[_0x30ea30(0xb8)]?collectDeleteTargets(_0x204630,_0xf7353)[_0x30ea30(0xd4)](_0x409c46=>_0x409c46['id']):[_0xf7353['id']];if(JSON[_0x30ea30(0xd8)](_0x6bca60[_0x30ea30(0xe7)])!==JSON[_0x30ea30(0xd8)](_0x847ab5))throw menuError(_0x30ea30(0xe0),'Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.',_0x30ea30(0xdd));}function a129_0x22eb(_0x125679,_0x967c61){_0x125679=_0x125679-0xa3;const _0x1844ae=a129_0x1844();let _0x22eb4e=_0x1844ae[_0x125679];return _0x22eb4e;}function assertNoSharedPages(_0x568a37,_0x11cc6e){const _0x425aff=a129_0x268982,_0x323046=new Set(_0x11cc6e[_0x425aff(0xd4)](_0x5082a1=>_0x5082a1['id'])),_0x58b6ef=new Set(_0x11cc6e[_0x425aff(0xd4)](_0x58ddec=>_0x58ddec[_0x425aff(0xe5)])[_0x425aff(0x115)](_0x46cb05=>_0x46cb05!=null));if(_0x58b6ef[_0x425aff(0x109)]===0x0)return;const _0x1c550d=_0x568a37[_0x425aff(0xd5)][_0x425aff(0x115)](_0x536120=>!_0x323046[_0x425aff(0xe8)](_0x536120['id'])&&_0x536120[_0x425aff(0xe5)]!=null&&_0x58b6ef[_0x425aff(0xe8)](_0x536120[_0x425aff(0xe5)]));if(_0x1c550d[_0x425aff(0xf1)]===0x0)return;const _0x5ae869=_0x1c550d['map'](_0x14f000=>_0x425aff(0xc6)+_0x14f000[_0x425aff(0xe5)]+'\x20->\x20menu\x20'+_0x14f000['id'])['join'](',\x20');throw menuError('menu_page_shared',_0x425aff(0xd3)+_0x5ae869+'.',_0x425aff(0xa5));}function assertCascadeMatchesPlan(_0x4becdf,_0x547bf4){const _0x294cf2=a129_0x268982,_0x4a0dc8=cascadeForTargets(_0x547bf4);if(JSON[_0x294cf2(0xd8)](_0x4becdf[_0x294cf2(0xe2)])!==JSON[_0x294cf2(0xd8)](_0x4a0dc8))throw menuError(_0x294cf2(0xe0),'Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.');}function cascadeForTargets(_0x1400a){const _0x584ebf=a129_0x268982,_0x2e3d57=_0x1400a[_0x584ebf(0xd4)](_0x881cc4=>_0x881cc4[_0x584ebf(0xe5)])['filter'](_0x1c9f16=>_0x1c9f16!=null)[_0x584ebf(0x115)]((_0x1114ef,_0x23358c,_0x3846cc)=>_0x3846cc[_0x584ebf(0xa8)](_0x1114ef)===_0x23358c);return{'pages':_0x2e3d57,'pageSchemaAffected':_0x2e3d57[_0x584ebf(0xf1)]>0x0};}function asMenuError(_0x50d152){const _0x4776ef=a129_0x268982;return _0x50d152 instanceof CliError?_0x50d152:menuError('menu_plan_invalid',_0x50d152 instanceof Error?_0x50d152[_0x4776ef(0x105)]:String(_0x50d152));}
@@ -1 +1 @@
1
- const a130_0x42720f=a130_0x4847;(function(_0x46cf69,_0x17b147){const _0x3bcbaa=a130_0x4847,_0x36b9b1=_0x46cf69();while(!![]){try{const _0x31157e=-parseInt(_0x3bcbaa(0xbb))/0x1*(parseInt(_0x3bcbaa(0x97))/0x2)+-parseInt(_0x3bcbaa(0xbc))/0x3*(-parseInt(_0x3bcbaa(0xdf))/0x4)+parseInt(_0x3bcbaa(0x10b))/0x5+parseInt(_0x3bcbaa(0xfc))/0x6+-parseInt(_0x3bcbaa(0xfb))/0x7*(-parseInt(_0x3bcbaa(0x10e))/0x8)+-parseInt(_0x3bcbaa(0xd9))/0x9*(parseInt(_0x3bcbaa(0xae))/0xa)+-parseInt(_0x3bcbaa(0x10c))/0xb*(parseInt(_0x3bcbaa(0xce))/0xc);if(_0x31157e===_0x17b147)break;else _0x36b9b1['push'](_0x36b9b1['shift']());}catch(_0x3eeecf){_0x36b9b1['push'](_0x36b9b1['shift']());}}}(a130_0x7044,0xef252));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':'link'};function a130_0x7044(){const _0x1e005f=['13884cYzzbW','\x20could\x20not\x20be\x20verified.','<platform-generated>','verification','plan','filter','External\x20menu\x20creation\x20failed.','lookupCommand','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','\x20after\x20response\x20loss.','999vVOYlL','protocol','menu_create_response_invalid','menu_open_mode_invalid','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','menu_permission_denied','4OyCyrO','Provide\x20an\x20HTTPS\x20URL.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','username','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','sort','toLowerCase','visibility','menu_state_drift','Created\x20menu\x20','createdId','POST','entries','menus','Created\x20external\x20menu\x20','Recovered\x20menu\x20','map','Menu\x20','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','create-menu','str','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','body','parentId','object','succeeded','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','menu\x20list','4500741zaYSgr','8780226bhvhLg','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','get','menu_parent_not_folder','rabetbase\x20menu\x20list\x20--appcode\x20','currentSnapshotHash','hash','code','fact','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','How\x20to\x20open\x20the\x20external\x20website','stringify','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','recovered','bool','2142330BRkfgl','1309WPwHgJ','includes','8LWsFqc','length','byId','after','menu_url_invalid','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','has','parent','url','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','expectedPath','visible','isSafeInteger','selector','cookie','373192HfBpwS','\x20--format\x20compress','failed','type','expectedSnapshotHash','cause','path','Whether\x20the\x20menu\x20is\x20visible','readbackerror','menu_mutation_failed','appCode','string','menu_verification_failed','\x27\x5c\x27\x27','create-recovery','boolean','create-response-validation','password','<redacted>','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','data','add','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','167630LWzrnd','replace','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','open-mode','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','before','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','menu_url_https_required','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','https:','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','3CCPMRc','3008706qoNfzz','external-link-create','create\x20external\x20menu','embedded','create','menu_sort_overflow','label','parent-id','Run\x20','menu_sort_invalid','rawerror','/smartapi/menu/create','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','afterPlan','rawFlags','trim','prototype','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.'];a130_0x7044=function(){return _0x1e005f;};return a130_0x7044();}export function validateExternalMenuUrl(_0x42e540){const _0x438555=a130_0x4847,_0x4075f2=_0x42e540[_0x438555(0xcb)]();let _0x4122bc;try{_0x4122bc=new URL(_0x4075f2);}catch{throw menuError(_0x438555(0x112),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x438555(0xe1));}if(_0x4122bc[_0x438555(0xda)]!==_0x438555(0xb9))throw menuError(_0x438555(0xb6),_0x438555(0xb5),_0x438555(0xe0));if(_0x4122bc[_0x438555(0xe2)]||_0x4122bc[_0x438555(0xa8)])throw menuError('menu_url_credentials_forbidden',_0x438555(0xd7),_0x438555(0x117));return _0x4075f2;}export const menuExternalLinkCreate={'service':'menu','command':a130_0x42720f(0xbd),'description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':'write','structuredErrors':!![],'flags':[{'name':a130_0x42720f(0xc2),'type':a130_0x42720f(0xa2),'required':!![],'description':'Menu\x20label'},{'name':a130_0x42720f(0xb1),'type':'string','required':!![],'enum':[a130_0x42720f(0xbf),'new-window'],'description':a130_0x42720f(0x106)},{'name':'url','type':'string','required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':'visible','type':a130_0x42720f(0xa6),'default':!![],'description':a130_0x42720f(0x9e)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x136fcf){validateAddInput(_0x136fcf);},async 'dryRun'(_0xb3b41f){const _0x34aa43=a130_0x42720f;validateAddInput(_0xb3b41f);const {plan:_0x5767d0}=await buildSafeAddPlan(_0xb3b41f,!![]),_0x4b1858=_0x5767d0[_0x34aa43(0x111)],_0x4a4ba8=createBody(_0x4b1858);return menuDryRunResult(_0x5767d0,{'method':_0x34aa43(0xea),'url':_0x34aa43(0xc7),'body':_0x4a4ba8,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON[_0x34aa43(0x107)](_0x4b1858[_0x34aa43(0xc2)])+'\x20with\x20'+_0xb3b41f[_0x34aa43(0xf3)](_0x34aa43(0xb1))+_0x34aa43(0xf4)});},async 'execute'(_0x3b7807){const _0x176442=a130_0x42720f;validateAddInput(_0x3b7807);const _0x52dc98=await buildSafeAddPlan(_0x3b7807,![]),{plan:_0xa03db0,snapshot:_0x9f5aeb}=_0x52dc98,_0x44f516=_0xa03db0[_0x176442(0x111)],_0xf03aed=buildMenuLookupCommand(_0x3b7807[_0x176442(0xa1)]);await recheckAddSnapshot(_0x3b7807,_0xa03db0);let _0x47349a;try{_0x47349a=await createMenuEntity(_0x3b7807[_0x176442(0xa1)],_0x3b7807[_0x176442(0x96)],createBody(_0x44f516));}catch(_0x5cf9bf){const _0x2909d6=mapMenuApiError(_0x5cf9bf,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x5cf9bf)||_0x2909d6['code']===_0x176442(0xde))throw externalLinkCreateFailure(_0x2909d6,_0xa03db0,{'stage':_0x176442(0xc0),'failed':{},'verification':{'status':_0x176442(0x99),'lookupCommand':_0xf03aed}});return recoverAfterResponseLoss(_0x3b7807,_0x52dc98,_0xf03aed);}const _0x3292fe=Number(_0x47349a?.['id']),_0x231e72=typeof _0x47349a?.['path']===_0x176442(0xa2)?_0x47349a[_0x176442(0x9d)]:'';if(!Number[_0x176442(0x94)](_0x3292fe)||_0x3292fe<=0x0||!_0x231e72[_0x176442(0xcb)]()){const _0x15c0a6=menuError(_0x176442(0xdb),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.',_0x176442(0xc4)+_0xf03aed+_0x176442(0x118));throw externalLinkCreateFailure(_0x15c0a6,_0xa03db0,{'stage':_0x176442(0xa7),'succeeded':Number[_0x176442(0x94)](_0x3292fe)&&_0x3292fe>0x0?[{'id':_0x3292fe,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x3292fe)?_0x3292fe:null,'generatedPathConfirmed':Boolean(_0x231e72[_0x176442(0xcb)]())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number['isSafeInteger'](_0x3292fe)&&_0x3292fe>0x0?{..._0x44f516,'id':_0x3292fe,'path':_0x231e72}:_0x44f516,'verification':{'status':_0x176442(0x99),'lookupCommand':_0xf03aed,...Number[_0x176442(0x94)](_0x3292fe)&&_0x3292fe>0x0?{'targetId':_0x3292fe}:{}}});}const _0x4843cf=await readAndVerifyCreatedMenu({'appCode':_0x3b7807[_0x176442(0xa1)],'cookie':_0x3b7807[_0x176442(0x96)],'plan':_0xa03db0,'afterPlan':_0x44f516,'createdId':_0x3292fe,'expectedPath':_0x231e72,'lookupCommand':_0xf03aed,'recovered':![]});return creationSuccess(_0xa03db0,_0x4843cf['snapshot'],_0x4843cf[_0x176442(0x104)],![]);}};function validateAddInput(_0x3d94ab){const _0x204ea7=a130_0x42720f;if(!_0x3d94ab[_0x204ea7(0xf3)]('label')['trim']())throw CliErrors['flagMissing']('label');resolveExternalMenuType(_0x3d94ab),validateExternalMenuUrl(_0x3d94ab[_0x204ea7(0xf3)](_0x204ea7(0x116))),parseParentId(_0x3d94ab,_0x204ea7(0xc3)),validateSort(_0x3d94ab);}function resolveExternalMenuType(_0x4dfc47){const _0x1114f9=a130_0x42720f,_0x1e7f3e=_0x4dfc47[_0x1114f9(0xf3)](_0x1114f9(0xb1))[_0x1114f9(0xcb)]();if(!_0x1e7f3e)throw CliErrors['flagMissing'](_0x1114f9(0xb1));const _0x25244a=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x1e7f3e];if(!_0x25244a)throw menuError(_0x1114f9(0xdc),_0x1114f9(0xd6),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x25244a;}function a130_0x4847(_0x4ffd2e,_0x340354){_0x4ffd2e=_0x4ffd2e-0x94;const _0x70443a=a130_0x7044();let _0x484734=_0x70443a[_0x4ffd2e];return _0x484734;}async function buildAddPlan(_0x13ad98,_0x44c0f9){const _0x167964=a130_0x42720f,_0x405cc5=await fetchMutationSnapshot(_0x13ad98,'create\x20external\x20menu'),_0x2fb156=parseParentId(_0x13ad98,'parent-id')??null;if(_0x2fb156!=null)requireFolder(_0x405cc5,_0x2fb156);const _0x4885a5=validateSort(_0x13ad98),_0x5a0d5d=_0x4885a5??nextSiblingSort(_0x405cc5,_0x2fb156,'menu'),_0x121e8e=_0x13ad98['str'](_0x167964(0xc2))['trim'](),_0x1de63e=resolveExternalMenuType(_0x13ad98),_0x191642=validateExternalMenuUrl(_0x13ad98[_0x167964(0xf3)](_0x167964(0x116))),_0x61788d=Object[_0x167964(0xcc)]['hasOwnProperty']['call'](_0x13ad98[_0x167964(0xca)],_0x167964(0x11a))?_0x13ad98[_0x167964(0x10a)](_0x167964(0x11a)):!![],_0xfe4146={'id':null,'parentId':_0x2fb156,'label':_0x121e8e,'path':_0x167964(0xd0),'url':_0x191642,'type':_0x1de63e,'visible':_0x61788d,'sort':_0x5a0d5d},_0x537290=buildMenuLookupCommand(_0x13ad98[_0x167964(0xa1)]),_0x35dcd7=mutationResult({'operation':_0x167964(0xac),'selector':{'parentId':_0x2fb156,'type':_0x1de63e,'label':_0x121e8e,'url':_0x191642},'before':null,'after':_0xfe4146,'dryRun':_0x44c0f9,'backend':[{'method':'POST','path':_0x167964(0xc7)}],'plannedActions':[{'stage':_0x167964(0xf2),'method':_0x167964(0xea),'path':_0x167964(0xc7),'body':createBody(_0xfe4146)}],'snapshotHash':_0x405cc5[_0x167964(0x102)],'warnings':[_0x167964(0x108)],'verification':{'lookupCommand':_0x537290}});return{'plan':_0x35dcd7,'snapshot':_0x405cc5};}async function buildSafeAddPlan(_0x190fbc,_0xc4a498){try{return await buildAddPlan(_0x190fbc,_0xc4a498);}catch(_0x3911ce){throw safeMenuAddError(_0x3911ce);}}async function recheckAddSnapshot(_0x24a1b2,_0x21e5f2){const _0x407d8c=a130_0x42720f;try{await recheckMutationSnapshot(_0x24a1b2,_0x21e5f2,_0x407d8c(0xbe));}catch(_0x998267){const _0x411fd9=getFailureRecord(_0x998267);throw externalLinkCreateFailure(_0x998267,_0x21e5f2,{'stage':'pre-write-recheck','failed':{..._0x411fd9?.[_0x407d8c(0x9b)]?{'expectedSnapshotHash':_0x411fd9['expectedSnapshotHash']}:{},..._0x411fd9?.[_0x407d8c(0x101)]?{'currentSnapshotHash':_0x411fd9['currentSnapshotHash']}:{}}});}}function createBody(_0xeafee2){const _0x4463d0=a130_0x42720f;return{'parentId':toApiParentId(_0xeafee2[_0x4463d0(0xf6)]),'label':String(_0xeafee2[_0x4463d0(0xc2)]),'type':String(_0xeafee2[_0x4463d0(0x9a)]),'url':String(_0xeafee2[_0x4463d0(0x116)]),'visible':Boolean(_0xeafee2['visible']),'sort':Number(_0xeafee2[_0x4463d0(0xe4)]),'extend':{}};}function buildMenuLookupCommand(_0x27e7bb){const _0x4fff7e=a130_0x42720f,_0x3dde24='\x27'+_0x27e7bb[_0x4fff7e(0xaf)](/'/g,_0x4fff7e(0xa4))+'\x27';return _0x4fff7e(0x100)+_0x3dde24+_0x4fff7e(0x98);}async function recoverAfterResponseLoss(_0x3f5d98,_0x13badc,_0x160d45){const _0x2df0b6=a130_0x42720f,{plan:_0x1c4e69,snapshot:_0x3b522e}=_0x13badc,_0x61e899=_0x1c4e69[_0x2df0b6(0x111)];let _0x79905e;try{_0x79905e=await fetchMenuSnapshot(_0x3f5d98[_0x2df0b6(0xa1)],_0x3f5d98['cookie']);}catch(_0x198bd8){throw recoveryRequiredFailure(_0x1c4e69,_0x160d45,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x2bfe16=_0x79905e[_0x2df0b6(0xec)][_0x2df0b6(0xd3)](_0x2dbf9c=>_0x2dbf9c[_0x2df0b6(0xf6)]===_0x61e899[_0x2df0b6(0xf6)]&&_0x2dbf9c[_0x2df0b6(0x9a)]===_0x61e899['type']&&_0x2dbf9c[_0x2df0b6(0xc2)]===_0x61e899[_0x2df0b6(0xc2)]&&_0x2dbf9c[_0x2df0b6(0x116)]===_0x61e899['url']),_0x3f1e7e=_0x2bfe16[_0x2df0b6(0xd3)](_0x823711=>!_0x3b522e[_0x2df0b6(0x110)][_0x2df0b6(0x114)](_0x823711['id'])),_0x57aca4=_0x2bfe16[_0x2df0b6(0xd3)](_0x5ad59f=>_0x3b522e[_0x2df0b6(0x110)]['has'](_0x5ad59f['id']));if(_0x2bfe16[_0x2df0b6(0x10f)]!==0x1||_0x3f1e7e[_0x2df0b6(0x10f)]!==0x1)throw recoveryRequiredFailure(_0x1c4e69,_0x160d45,{'matchCount':_0x2bfe16[_0x2df0b6(0x10f)],'newMatchCount':_0x3f1e7e[_0x2df0b6(0x10f)],'preexistingMatchCount':_0x57aca4[_0x2df0b6(0x10f)]});const _0x2cb880=_0x3f1e7e[0x0];try{verifyCreatedFact(_0x2cb880,_0x2cb880['id'],_0x61e899,null);}catch(_0x2a69a8){const _0x35f612=_0x2a69a8 instanceof Error&&'code'in _0x2a69a8?_0x2a69a8:menuError(_0x2df0b6(0xa3),_0x2df0b6(0xee)+_0x2cb880['id']+_0x2df0b6(0xcf),_0x2df0b6(0xc4)+_0x160d45+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x35f612,_0x1c4e69,{'stage':'verification','succeeded':[{'id':_0x2cb880['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x2cb880['id'],'finalFactsConfirmed':![]},'after':_0x2cb880,'warnings':[_0x2df0b6(0xf0)+_0x2cb880['id']+_0x2df0b6(0xe3)],'verification':{'status':_0x2df0b6(0x99),'targetId':_0x2cb880['id'],'recovered':!![],'lookupCommand':_0x160d45}});}return creationSuccess(_0x1c4e69,_0x79905e,_0x2cb880,!![]);}function recoveryRequiredFailure(_0x1e6368,_0x22f337,_0x2eea0d){const _0x37c0b7=a130_0x42720f,_0x3e9c75=menuError('menu_create_recovery_required',_0x37c0b7(0x113),_0x37c0b7(0xc4)+_0x22f337+_0x37c0b7(0xb3));return externalLinkCreateFailure(_0x3e9c75,_0x1e6368,{'stage':_0x37c0b7(0xa5),'failed':_0x2eea0d,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':'failed',..._0x2eea0d,'lookupCommand':_0x22f337}});}async function readAndVerifyCreatedMenu(_0x481646){const _0x1c0b85=a130_0x42720f;let _0x29ef94;try{_0x29ef94=await fetchMenuSnapshot(_0x481646[_0x1c0b85(0xa1)],_0x481646[_0x1c0b85(0x96)]);}catch(_0x1bce00){const _0x33e867=menuError('menu_verification_failed',_0x1c0b85(0xf0)+_0x481646[_0x1c0b85(0xe9)]+_0x1c0b85(0xcd),_0x1c0b85(0xc4)+_0x481646[_0x1c0b85(0xd5)]+_0x1c0b85(0xb2));throw externalLinkCreateFailure(_0x33e867,_0x481646[_0x1c0b85(0xd2)],{'stage':_0x1c0b85(0xd1),'succeeded':[{'id':_0x481646[_0x1c0b85(0xe9)],'created':!![]}],'failed':{'id':_0x481646[_0x1c0b85(0xe9)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x481646[_0x1c0b85(0xc9)],'id':_0x481646['createdId'],'path':_0x481646[_0x1c0b85(0x119)]},'warnings':['Menu\x20'+_0x481646[_0x1c0b85(0xe9)]+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x1c0b85(0x99),'targetId':_0x481646[_0x1c0b85(0xe9)],'lookupCommand':_0x481646[_0x1c0b85(0xd5)]}});}const _0xbcba48=_0x29ef94[_0x1c0b85(0x110)][_0x1c0b85(0xfe)](_0x481646[_0x1c0b85(0xe9)]);try{if(!_0xbcba48)throw menuError(_0x1c0b85(0xa3),'Created\x20menu\x20'+_0x481646[_0x1c0b85(0xe9)]+_0x1c0b85(0xdd),_0x1c0b85(0xc4)+_0x481646['lookupCommand']+_0x1c0b85(0xb2));verifyCreatedFact(_0xbcba48,_0x481646['createdId'],_0x481646[_0x1c0b85(0xc9)],_0x481646['expectedPath']);}catch(_0x5455f5){const _0x186e2d=_0x5455f5 instanceof Error&&_0x1c0b85(0x103)in _0x5455f5?_0x5455f5:menuError('menu_verification_failed',_0x1c0b85(0xe8)+_0x481646[_0x1c0b85(0xe9)]+'\x20failed\x20final\x20verification.',_0x1c0b85(0xc4)+_0x481646[_0x1c0b85(0xd5)]+_0x1c0b85(0xb2));throw externalLinkCreateFailure(_0x186e2d,_0x481646[_0x1c0b85(0xd2)],{'stage':_0x1c0b85(0xd1),'succeeded':[{'id':_0x481646[_0x1c0b85(0xe9)],'created':!![]}],'failed':{'id':_0x481646['createdId'],'finalFactsConfirmed':![]},'after':_0xbcba48??{..._0x481646[_0x1c0b85(0xc9)],'id':_0x481646[_0x1c0b85(0xe9)],'path':_0x481646[_0x1c0b85(0x119)]},'warnings':[_0x1c0b85(0xf0)+_0x481646['createdId']+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x1c0b85(0x99),'targetId':_0x481646[_0x1c0b85(0xe9)],'recovered':_0x481646[_0x1c0b85(0x109)],'lookupCommand':_0x481646[_0x1c0b85(0xd5)]}});}return{'snapshot':_0x29ef94,'fact':_0xbcba48};}function verifyCreatedFact(_0x55c77a,_0x5a0acd,_0x327bca,_0x2ec40a){const _0x4fea79=a130_0x42720f;if(!Number[_0x4fea79(0x94)](_0x55c77a['id'])||_0x55c77a['id']<=0x0||_0x55c77a['id']!==_0x5a0acd)throw menuError('menu_verification_failed',_0x4fea79(0xb8),_0x4fea79(0xf9));const _0x259354=[[_0x4fea79(0x115),_0x55c77a[_0x4fea79(0xf6)],_0x327bca[_0x4fea79(0xf6)]],[_0x4fea79(0x9a),_0x55c77a['type'],_0x327bca['type']],[_0x4fea79(0xc2),_0x55c77a[_0x4fea79(0xc2)],_0x327bca[_0x4fea79(0xc2)]],['URL',_0x55c77a['url'],_0x327bca[_0x4fea79(0x116)]],[_0x4fea79(0xe6),_0x55c77a['visible'],_0x327bca[_0x4fea79(0x11a)]],['sort',_0x55c77a[_0x4fea79(0xe4)],_0x327bca[_0x4fea79(0xe4)]]];for(const [_0x5d9e64,_0x32fd5c,_0x35be6a]of _0x259354){if(_0x32fd5c!==_0x35be6a)throw menuError(_0x4fea79(0xa3),_0x4fea79(0xe8)+_0x55c77a['id']+'\x20has\x20an\x20unexpected\x20'+_0x5d9e64+'.',_0x4fea79(0xfd));}if(!_0x55c77a[_0x4fea79(0x9d)][_0x4fea79(0xcb)]()||_0x2ec40a!==null&&_0x55c77a['path']!==_0x2ec40a)throw menuError(_0x4fea79(0xa3),_0x4fea79(0xe8)+_0x55c77a['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x4fea79(0xfd));}function creationSuccess(_0x59248e,_0x5869b8,_0xbd7de,_0x217908){const _0x1fcadc=a130_0x42720f,_0xb14122=mutationResult({..._0x59248e,'after':_0xbd7de,'dryRun':![],'succeeded':[{'id':_0xbd7de['id'],'created':!![],'recovered':_0x217908}],'verification':{'checkedBy':_0x1fcadc(0xfa),'snapshotHash':_0x5869b8['hash'],'targetId':_0xbd7de['id'],'recovered':_0x217908,'path':_0xbd7de[_0x1fcadc(0x9d)]}});return{'ok':!![],'message':_0x217908?'Recovered\x20created\x20external\x20menu\x20'+_0xbd7de['id']+_0x1fcadc(0xd8):_0x1fcadc(0xed)+_0xbd7de['id']+'.','data':{..._0xb14122,'recovered':_0x217908}};}function externalLinkCreateFailure(_0x1fb9ac,_0x4e5f51,_0x379eb6){const _0x22202c=a130_0x42720f;return menuFailure(safeMenuAddError(_0x1fb9ac),redactFailurePlan(_0x4e5f51),{..._0x379eb6,'succeeded':_0x379eb6[_0x22202c(0xf8)]?.[_0x22202c(0xef)](redactFailureRecord),'failed':_0x379eb6['failed']?redactFailureRecord(_0x379eb6[_0x22202c(0x99)]):undefined,'verification':_0x379eb6['verification']?redactFailureRecord(_0x379eb6[_0x22202c(0xd1)]):undefined,'after':_0x379eb6[_0x22202c(0x111)]===undefined?undefined:redactFailureValue(_0x379eb6[_0x22202c(0x111)])});}function redactFailurePlan(_0x3f2025){const _0xc67c62=a130_0x42720f;return{..._0x3f2025,'selector':redactFailureRecord(_0x3f2025[_0xc67c62(0x95)]),'before':redactFailureValue(_0x3f2025[_0xc67c62(0xb4)]),'after':redactFailureValue(_0x3f2025[_0xc67c62(0x111)]),'plannedActions':_0x3f2025['plannedActions']?.[_0xc67c62(0xef)](_0x419e63=>({..._0x419e63,'body':redactFailureRecord(_0x419e63[_0xc67c62(0xf5)])})),'succeeded':_0x3f2025[_0xc67c62(0xf8)][_0xc67c62(0xef)](redactFailureRecord),'failed':_0x3f2025[_0xc67c62(0x99)][_0xc67c62(0xef)](redactFailureRecord),'verification':_0x3f2025[_0xc67c62(0xd1)]?redactFailureRecord(_0x3f2025[_0xc67c62(0xd1)]):undefined};}function redactFailureRecord(_0x3463d8){return redactFailureValue(_0x3463d8);}function redactFailureValue(_0x3ce353,_0x5cf472=''){const _0x2bdb67=a130_0x42720f,_0x40f7d9=_0x5cf472[_0x2bdb67(0xe5)]()['replace'](/[^a-z0-9]/g,'');if([_0x2bdb67(0x9c),'causemessage',_0x2bdb67(0x9f),_0x2bdb67(0xc6)][_0x2bdb67(0x10d)](_0x40f7d9))return _0x2bdb67(0xa9);if(Array['isArray'](_0x3ce353))return _0x3ce353[_0x2bdb67(0xef)](_0x53f38a=>redactFailureValue(_0x53f38a));if(_0x3ce353&&typeof _0x3ce353===_0x2bdb67(0xf7))return Object['fromEntries'](Object[_0x2bdb67(0xeb)](_0x3ce353)['map'](([_0x15f1e6,_0x2eff54])=>[_0x15f1e6,redactFailureValue(_0x2eff54,_0x15f1e6)]));return _0x3ce353;}function safeMenuAddError(_0x36fe42){const _0x3d8f10=a130_0x42720f,_0x59fa78=_0x36fe42 instanceof CliError?_0x36fe42[_0x3d8f10(0x103)]:_0x3d8f10(0xa0);switch(_0x59fa78){case _0x3d8f10(0xe7):return menuError(_0x59fa78,'Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.',_0x3d8f10(0xc8));case _0x3d8f10(0xde):return menuError(_0x59fa78,_0x3d8f10(0xf1),_0x3d8f10(0xb0));case'menu_create_response_invalid':return menuError(_0x59fa78,_0x3d8f10(0x105),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_verification_failed':return menuError(_0x59fa78,_0x3d8f10(0xba),_0x3d8f10(0xaa));case'menu_create_recovery_required':return menuError(_0x59fa78,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x3d8f10(0xad));case _0x3d8f10(0xa0):case'menu_not_found':case _0x3d8f10(0xff):case _0x3d8f10(0xc5):case _0x3d8f10(0xc1):return menuError(_0x59fa78,_0x3d8f10(0xd4),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0x3d8f10(0xa0),_0x3d8f10(0xd4),_0x3d8f10(0xb7));}}function getFailureRecord(_0x5baad9){const _0x4d6a76=a130_0x42720f;if(!(_0x5baad9 instanceof Error)||!(_0x4d6a76(0xab)in _0x5baad9))return undefined;const _0x3c0c05=_0x5baad9[_0x4d6a76(0xab)];if(!_0x3c0c05||typeof _0x3c0c05!=='object')return undefined;const _0x1a66ca=_0x3c0c05[_0x4d6a76(0x99)];if(!Array['isArray'](_0x1a66ca)||!_0x1a66ca[0x0]||typeof _0x1a66ca[0x0]!=='object')return undefined;return _0x1a66ca[0x0];}
1
+ const a130_0x29fb78=a130_0x558b;(function(_0x277483,_0x296caf){const _0x2b6001=a130_0x558b,_0x7c39de=_0x277483();while(!![]){try{const _0x27041b=-parseInt(_0x2b6001(0x208))/0x1*(parseInt(_0x2b6001(0x201))/0x2)+parseInt(_0x2b6001(0x230))/0x3*(parseInt(_0x2b6001(0x241))/0x4)+parseInt(_0x2b6001(0x239))/0x5+-parseInt(_0x2b6001(0x25a))/0x6+parseInt(_0x2b6001(0x277))/0x7*(parseInt(_0x2b6001(0x21c))/0x8)+parseInt(_0x2b6001(0x200))/0x9*(-parseInt(_0x2b6001(0x1ff))/0xa)+parseInt(_0x2b6001(0x25b))/0xb*(parseInt(_0x2b6001(0x225))/0xc);if(_0x27041b===_0x296caf)break;else _0x7c39de['push'](_0x7c39de['shift']());}catch(_0x4b72f6){_0x7c39de['push'](_0x7c39de['shift']());}}}(a130_0xf1a9,0x9c8a8));function a130_0x558b(_0x429f33,_0x266938){_0x429f33=_0x429f33-0x1f4;const _0xf1a984=a130_0xf1a9();let _0x558b17=_0xf1a984[_0x429f33];return _0x558b17;}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':a130_0x29fb78(0x24c),'new-window':a130_0x29fb78(0x261)};export function validateExternalMenuUrl(_0x390ab7){const _0x5a1d2c=a130_0x29fb78,_0x342c43=_0x390ab7[_0x5a1d2c(0x26f)]();let _0x34dc6c;try{_0x34dc6c=new URL(_0x342c43);}catch{throw menuError(_0x5a1d2c(0x216),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x5a1d2c(0x1f6));}if(_0x34dc6c['protocol']!==_0x5a1d2c(0x23f))throw menuError('menu_url_https_required','External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0x5a1d2c(0x1fd));if(_0x34dc6c[_0x5a1d2c(0x244)]||_0x34dc6c[_0x5a1d2c(0x21a)])throw menuError('menu_url_credentials_forbidden',_0x5a1d2c(0x1f7),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x342c43;}export const menuExternalLinkCreate={'service':'menu','command':a130_0x29fb78(0x22b),'description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':a130_0x29fb78(0x218),'structuredErrors':!![],'flags':[{'name':a130_0x29fb78(0x276),'type':'string','required':!![],'description':'Menu\x20label'},{'name':a130_0x29fb78(0x265),'type':a130_0x29fb78(0x274),'required':!![],'enum':[a130_0x29fb78(0x252),'new-window'],'description':a130_0x29fb78(0x24f)},{'name':a130_0x29fb78(0x275),'type':'string','required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a130_0x29fb78(0x1fe),'type':a130_0x29fb78(0x240),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x187d2d){validateAddInput(_0x187d2d);},async 'dryRun'(_0x27946a){const _0x3e9f73=a130_0x29fb78;validateAddInput(_0x27946a);const {plan:_0xcb0e38}=await buildSafeAddPlan(_0x27946a,!![]),_0x121be1=_0xcb0e38[_0x3e9f73(0x205)],_0x5d9852=createBody(_0x121be1);return menuDryRunResult(_0xcb0e38,{'method':_0x3e9f73(0x234),'url':_0x3e9f73(0x237),'body':_0x5d9852,'description':_0x3e9f73(0x263)+JSON[_0x3e9f73(0x210)](_0x121be1[_0x3e9f73(0x276)])+_0x3e9f73(0x21d)+_0x27946a[_0x3e9f73(0x25c)]('open-mode')+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x3455e0){const _0x510c39=a130_0x29fb78;validateAddInput(_0x3455e0);const _0x4525aa=await buildSafeAddPlan(_0x3455e0,![]),{plan:_0x52b4ab,snapshot:_0x5bd7c1}=_0x4525aa,_0x5075ba=_0x52b4ab[_0x510c39(0x205)],_0x440f15=buildMenuLookupCommand(_0x3455e0[_0x510c39(0x262)]);await recheckAddSnapshot(_0x3455e0,_0x52b4ab);let _0x574d3b;try{_0x574d3b=await createMenuEntity(_0x3455e0[_0x510c39(0x262)],_0x3455e0[_0x510c39(0x228)],createBody(_0x5075ba));}catch(_0x266f29){const _0x2c77e6=mapMenuApiError(_0x266f29,_0x510c39(0x224));if(!isMenuResponseLoss(_0x266f29)||_0x2c77e6[_0x510c39(0x25f)]===_0x510c39(0x206))throw externalLinkCreateFailure(_0x2c77e6,_0x52b4ab,{'stage':_0x510c39(0x1f9),'failed':{},'verification':{'status':_0x510c39(0x219),'lookupCommand':_0x440f15}});return recoverAfterResponseLoss(_0x3455e0,_0x4525aa,_0x440f15);}const _0x5962c1=Number(_0x574d3b?.['id']),_0x3d19f9=typeof _0x574d3b?.[_0x510c39(0x27a)]==='string'?_0x574d3b[_0x510c39(0x27a)]:'';if(!Number[_0x510c39(0x26a)](_0x5962c1)||_0x5962c1<=0x0||!_0x3d19f9['trim']()){const _0x56bc34=menuError(_0x510c39(0x245),_0x510c39(0x23b),_0x510c39(0x25d)+_0x440f15+'\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.');throw externalLinkCreateFailure(_0x56bc34,_0x52b4ab,{'stage':'create-response-validation','succeeded':Number['isSafeInteger'](_0x5962c1)&&_0x5962c1>0x0?[{'id':_0x5962c1,'created':!![]}]:[],'failed':{'createdId':Number[_0x510c39(0x26a)](_0x5962c1)?_0x5962c1:null,'generatedPathConfirmed':Boolean(_0x3d19f9[_0x510c39(0x26f)]())},'warnings':[_0x510c39(0x22c)],'after':Number[_0x510c39(0x26a)](_0x5962c1)&&_0x5962c1>0x0?{..._0x5075ba,'id':_0x5962c1,'path':_0x3d19f9}:_0x5075ba,'verification':{'status':_0x510c39(0x219),'lookupCommand':_0x440f15,...Number[_0x510c39(0x26a)](_0x5962c1)&&_0x5962c1>0x0?{'targetId':_0x5962c1}:{}}});}const _0x3e2cb5=await readAndVerifyCreatedMenu({'appCode':_0x3455e0['appCode'],'cookie':_0x3455e0[_0x510c39(0x228)],'plan':_0x52b4ab,'afterPlan':_0x5075ba,'createdId':_0x5962c1,'expectedPath':_0x3d19f9,'lookupCommand':_0x440f15,'recovered':![]});return creationSuccess(_0x52b4ab,_0x3e2cb5[_0x510c39(0x1f8)],_0x3e2cb5[_0x510c39(0x27e)],![]);}};function validateAddInput(_0x5136fb){const _0x134ed9=a130_0x29fb78;if(!_0x5136fb['str'](_0x134ed9(0x276))[_0x134ed9(0x26f)]())throw CliErrors[_0x134ed9(0x26e)](_0x134ed9(0x276));resolveExternalMenuType(_0x5136fb),validateExternalMenuUrl(_0x5136fb[_0x134ed9(0x25c)](_0x134ed9(0x275))),parseParentId(_0x5136fb,_0x134ed9(0x26d)),validateSort(_0x5136fb);}function resolveExternalMenuType(_0x377f2a){const _0x5c8793=a130_0x29fb78,_0x5f617=_0x377f2a[_0x5c8793(0x25c)](_0x5c8793(0x265))[_0x5c8793(0x26f)]();if(!_0x5f617)throw CliErrors['flagMissing'](_0x5c8793(0x265));const _0x5bfd1b=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x5f617];if(!_0x5bfd1b)throw menuError(_0x5c8793(0x26b),_0x5c8793(0x243),_0x5c8793(0x24d));return _0x5bfd1b;}async function buildAddPlan(_0x54346a,_0x2e4de7){const _0x381ccc=a130_0x29fb78,_0x53ba91=await fetchMutationSnapshot(_0x54346a,'create\x20external\x20menu'),_0x3ac0f6=parseParentId(_0x54346a,_0x381ccc(0x26d))??null;if(_0x3ac0f6!=null)requireFolder(_0x53ba91,_0x3ac0f6);const _0x2f2741=validateSort(_0x54346a),_0x569164=_0x2f2741??nextSiblingSort(_0x53ba91,_0x3ac0f6,_0x381ccc(0x270)),_0x209beb=_0x54346a['str']('label')[_0x381ccc(0x26f)](),_0x4a60dc=resolveExternalMenuType(_0x54346a),_0x3009c6=validateExternalMenuUrl(_0x54346a[_0x381ccc(0x25c)]('url')),_0x2cc944=Object[_0x381ccc(0x1f4)][_0x381ccc(0x23e)]['call'](_0x54346a[_0x381ccc(0x27b)],_0x381ccc(0x1fe))?_0x54346a[_0x381ccc(0x233)]('visible'):!![],_0x2aeaf4={'id':null,'parentId':_0x3ac0f6,'label':_0x209beb,'path':'<platform-generated>','url':_0x3009c6,'type':_0x4a60dc,'visible':_0x2cc944,'sort':_0x569164},_0x5de102=buildMenuLookupCommand(_0x54346a['appCode']),_0x3f1e72=mutationResult({'operation':'add','selector':{'parentId':_0x3ac0f6,'type':_0x4a60dc,'label':_0x209beb,'url':_0x3009c6},'before':null,'after':_0x2aeaf4,'dryRun':_0x2e4de7,'backend':[{'method':_0x381ccc(0x234),'path':_0x381ccc(0x237)}],'plannedActions':[{'stage':'create-menu','method':_0x381ccc(0x234),'path':_0x381ccc(0x237),'body':createBody(_0x2aeaf4)}],'snapshotHash':_0x53ba91[_0x381ccc(0x203)],'warnings':[_0x381ccc(0x22a)],'verification':{'lookupCommand':_0x5de102}});return{'plan':_0x3f1e72,'snapshot':_0x53ba91};}async function buildSafeAddPlan(_0x2ab025,_0x50cc79){try{return await buildAddPlan(_0x2ab025,_0x50cc79);}catch(_0x2f0bc3){throw safeMenuAddError(_0x2f0bc3);}}async function recheckAddSnapshot(_0x4e761c,_0x372bef){const _0xd0d30d=a130_0x29fb78;try{await recheckMutationSnapshot(_0x4e761c,_0x372bef,_0xd0d30d(0x224));}catch(_0x582545){const _0x2a42f7=getFailureRecord(_0x582545);throw externalLinkCreateFailure(_0x582545,_0x372bef,{'stage':_0xd0d30d(0x221),'failed':{..._0x2a42f7?.[_0xd0d30d(0x1fa)]?{'expectedSnapshotHash':_0x2a42f7[_0xd0d30d(0x1fa)]}:{},..._0x2a42f7?.[_0xd0d30d(0x26c)]?{'currentSnapshotHash':_0x2a42f7[_0xd0d30d(0x26c)]}:{}}});}}function createBody(_0x2a2b7b){const _0x58e170=a130_0x29fb78;return{'parentId':toApiParentId(_0x2a2b7b[_0x58e170(0x24b)]),'label':String(_0x2a2b7b['label']),'type':String(_0x2a2b7b[_0x58e170(0x24a)]),'url':String(_0x2a2b7b['url']),'visible':Boolean(_0x2a2b7b[_0x58e170(0x1fe)]),'sort':Number(_0x2a2b7b[_0x58e170(0x231)]),'extend':{}};}function buildMenuLookupCommand(_0xcbf0f8){const _0x14ced7=a130_0x29fb78,_0x4e0ea8='\x27'+_0xcbf0f8[_0x14ced7(0x256)](/'/g,'\x27\x5c\x27\x27')+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x4e0ea8+_0x14ced7(0x236);}async function recoverAfterResponseLoss(_0x203920,_0x104660,_0x4c1c6d){const _0x2b3106=a130_0x29fb78,{plan:_0x5c9117,snapshot:_0x2a0dc1}=_0x104660,_0x4e0e49=_0x5c9117[_0x2b3106(0x205)];let _0x1243c1;try{_0x1243c1=await fetchMenuSnapshot(_0x203920[_0x2b3106(0x262)],_0x203920[_0x2b3106(0x228)]);}catch(_0x1b4efd){throw recoveryRequiredFailure(_0x5c9117,_0x4c1c6d,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x295bc5=_0x1243c1[_0x2b3106(0x250)]['filter'](_0x5d4e91=>_0x5d4e91[_0x2b3106(0x24b)]===_0x4e0e49['parentId']&&_0x5d4e91[_0x2b3106(0x24a)]===_0x4e0e49['type']&&_0x5d4e91[_0x2b3106(0x276)]===_0x4e0e49[_0x2b3106(0x276)]&&_0x5d4e91[_0x2b3106(0x275)]===_0x4e0e49[_0x2b3106(0x275)]),_0x3637ae=_0x295bc5[_0x2b3106(0x249)](_0x193ac4=>!_0x2a0dc1[_0x2b3106(0x267)][_0x2b3106(0x278)](_0x193ac4['id'])),_0x2139b3=_0x295bc5[_0x2b3106(0x249)](_0x48998c=>_0x2a0dc1[_0x2b3106(0x267)]['has'](_0x48998c['id']));if(_0x295bc5['length']!==0x1||_0x3637ae['length']!==0x1)throw recoveryRequiredFailure(_0x5c9117,_0x4c1c6d,{'matchCount':_0x295bc5[_0x2b3106(0x260)],'newMatchCount':_0x3637ae['length'],'preexistingMatchCount':_0x2139b3['length']});const _0x58702d=_0x3637ae[0x0];try{verifyCreatedFact(_0x58702d,_0x58702d['id'],_0x4e0e49,null);}catch(_0x14cbbe){const _0x69f1ab=_0x14cbbe instanceof Error&&'code'in _0x14cbbe?_0x14cbbe:menuError(_0x2b3106(0x23a),_0x2b3106(0x238)+_0x58702d['id']+_0x2b3106(0x211),_0x2b3106(0x25d)+_0x4c1c6d+_0x2b3106(0x209));throw externalLinkCreateFailure(_0x69f1ab,_0x5c9117,{'stage':'verification','succeeded':[{'id':_0x58702d['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x58702d['id'],'finalFactsConfirmed':![]},'after':_0x58702d,'warnings':['Menu\x20'+_0x58702d['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x2b3106(0x219),'targetId':_0x58702d['id'],'recovered':!![],'lookupCommand':_0x4c1c6d}});}return creationSuccess(_0x5c9117,_0x1243c1,_0x58702d,!![]);}function recoveryRequiredFailure(_0x3d809b,_0x4681d4,_0x237e2e){const _0x42022b=a130_0x29fb78,_0x2bfef9=menuError('menu_create_recovery_required',_0x42022b(0x258),'Run\x20'+_0x4681d4+_0x42022b(0x20e));return externalLinkCreateFailure(_0x2bfef9,_0x3d809b,{'stage':_0x42022b(0x269),'failed':_0x237e2e,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':_0x42022b(0x219),..._0x237e2e,'lookupCommand':_0x4681d4}});}async function readAndVerifyCreatedMenu(_0x2c15cb){const _0x31b7d7=a130_0x29fb78;let _0x3dda24;try{_0x3dda24=await fetchMenuSnapshot(_0x2c15cb[_0x31b7d7(0x262)],_0x2c15cb[_0x31b7d7(0x228)]);}catch(_0x2e3ac0){const _0x3930d6=menuError(_0x31b7d7(0x23a),_0x31b7d7(0x259)+_0x2c15cb[_0x31b7d7(0x271)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','Run\x20'+_0x2c15cb[_0x31b7d7(0x229)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x3930d6,_0x2c15cb[_0x31b7d7(0x227)],{'stage':_0x31b7d7(0x1fb),'succeeded':[{'id':_0x2c15cb['createdId'],'created':!![]}],'failed':{'id':_0x2c15cb[_0x31b7d7(0x271)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x2c15cb[_0x31b7d7(0x242)],'id':_0x2c15cb[_0x31b7d7(0x271)],'path':_0x2c15cb[_0x31b7d7(0x217)]},'warnings':[_0x31b7d7(0x259)+_0x2c15cb['createdId']+_0x31b7d7(0x202)],'verification':{'status':_0x31b7d7(0x219),'targetId':_0x2c15cb['createdId'],'lookupCommand':_0x2c15cb['lookupCommand']}});}const _0x2c6c59=_0x3dda24[_0x31b7d7(0x267)][_0x31b7d7(0x27c)](_0x2c15cb[_0x31b7d7(0x271)]);try{if(!_0x2c6c59)throw menuError('menu_verification_failed',_0x31b7d7(0x25e)+_0x2c15cb['createdId']+_0x31b7d7(0x251),_0x31b7d7(0x25d)+_0x2c15cb[_0x31b7d7(0x229)]+_0x31b7d7(0x247));verifyCreatedFact(_0x2c6c59,_0x2c15cb[_0x31b7d7(0x271)],_0x2c15cb[_0x31b7d7(0x242)],_0x2c15cb[_0x31b7d7(0x217)]);}catch(_0x5db534){const _0x53888f=_0x5db534 instanceof Error&&_0x31b7d7(0x25f)in _0x5db534?_0x5db534:menuError(_0x31b7d7(0x23a),_0x31b7d7(0x25e)+_0x2c15cb[_0x31b7d7(0x271)]+_0x31b7d7(0x22e),_0x31b7d7(0x25d)+_0x2c15cb['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x53888f,_0x2c15cb['plan'],{'stage':_0x31b7d7(0x1fb),'succeeded':[{'id':_0x2c15cb[_0x31b7d7(0x271)],'created':!![]}],'failed':{'id':_0x2c15cb[_0x31b7d7(0x271)],'finalFactsConfirmed':![]},'after':_0x2c6c59??{..._0x2c15cb[_0x31b7d7(0x242)],'id':_0x2c15cb[_0x31b7d7(0x271)],'path':_0x2c15cb[_0x31b7d7(0x217)]},'warnings':[_0x31b7d7(0x259)+_0x2c15cb[_0x31b7d7(0x271)]+_0x31b7d7(0x23c)],'verification':{'status':_0x31b7d7(0x219),'targetId':_0x2c15cb[_0x31b7d7(0x271)],'recovered':_0x2c15cb[_0x31b7d7(0x24e)],'lookupCommand':_0x2c15cb[_0x31b7d7(0x229)]}});}return{'snapshot':_0x3dda24,'fact':_0x2c6c59};}function verifyCreatedFact(_0x45008e,_0x22774e,_0x6f61ab,_0x23c1fd){const _0x4d39e1=a130_0x29fb78;if(!Number[_0x4d39e1(0x26a)](_0x45008e['id'])||_0x45008e['id']<=0x0||_0x45008e['id']!==_0x22774e)throw menuError(_0x4d39e1(0x23a),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x4d39e1(0x222));const _0x95ef86=[[_0x4d39e1(0x220),_0x45008e[_0x4d39e1(0x24b)],_0x6f61ab[_0x4d39e1(0x24b)]],[_0x4d39e1(0x24a),_0x45008e[_0x4d39e1(0x24a)],_0x6f61ab['type']],[_0x4d39e1(0x276),_0x45008e[_0x4d39e1(0x276)],_0x6f61ab[_0x4d39e1(0x276)]],[_0x4d39e1(0x27d),_0x45008e[_0x4d39e1(0x275)],_0x6f61ab[_0x4d39e1(0x275)]],[_0x4d39e1(0x255),_0x45008e[_0x4d39e1(0x1fe)],_0x6f61ab[_0x4d39e1(0x1fe)]],[_0x4d39e1(0x231),_0x45008e[_0x4d39e1(0x231)],_0x6f61ab['sort']]];for(const [_0x5281ae,_0x37e397,_0x88c714]of _0x95ef86){if(_0x37e397!==_0x88c714)throw menuError('menu_verification_failed',_0x4d39e1(0x25e)+_0x45008e['id']+'\x20has\x20an\x20unexpected\x20'+_0x5281ae+'.',_0x4d39e1(0x214));}if(!_0x45008e[_0x4d39e1(0x27a)][_0x4d39e1(0x26f)]()||_0x23c1fd!==null&&_0x45008e[_0x4d39e1(0x27a)]!==_0x23c1fd)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x45008e['id']+_0x4d39e1(0x23d),_0x4d39e1(0x214));}function creationSuccess(_0x33f0f8,_0x1b2394,_0x4d73ff,_0x3e5055){const _0x415d20=a130_0x29fb78,_0x53a624=mutationResult({..._0x33f0f8,'after':_0x4d73ff,'dryRun':![],'succeeded':[{'id':_0x4d73ff['id'],'created':!![],'recovered':_0x3e5055}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x1b2394[_0x415d20(0x203)],'targetId':_0x4d73ff['id'],'recovered':_0x3e5055,'path':_0x4d73ff[_0x415d20(0x27a)]}});return{'ok':!![],'message':_0x3e5055?_0x415d20(0x204)+_0x4d73ff['id']+_0x415d20(0x212):_0x415d20(0x21e)+_0x4d73ff['id']+'.','data':{..._0x53a624,'recovered':_0x3e5055}};}function externalLinkCreateFailure(_0x2c48a2,_0x112d6b,_0x47d8e8){const _0x40bab6=a130_0x29fb78;return menuFailure(safeMenuAddError(_0x2c48a2),redactFailurePlan(_0x112d6b),{..._0x47d8e8,'succeeded':_0x47d8e8[_0x40bab6(0x272)]?.[_0x40bab6(0x215)](redactFailureRecord),'failed':_0x47d8e8[_0x40bab6(0x219)]?redactFailureRecord(_0x47d8e8[_0x40bab6(0x219)]):undefined,'verification':_0x47d8e8[_0x40bab6(0x1fb)]?redactFailureRecord(_0x47d8e8[_0x40bab6(0x1fb)]):undefined,'after':_0x47d8e8['after']===undefined?undefined:redactFailureValue(_0x47d8e8[_0x40bab6(0x205)])});}function redactFailurePlan(_0x17a771){const _0x32edce=a130_0x29fb78;return{..._0x17a771,'selector':redactFailureRecord(_0x17a771[_0x32edce(0x20b)]),'before':redactFailureValue(_0x17a771[_0x32edce(0x20a)]),'after':redactFailureValue(_0x17a771[_0x32edce(0x205)]),'plannedActions':_0x17a771[_0x32edce(0x1fc)]?.[_0x32edce(0x215)](_0x3651c0=>({..._0x3651c0,'body':redactFailureRecord(_0x3651c0[_0x32edce(0x20c)])})),'succeeded':_0x17a771[_0x32edce(0x272)]['map'](redactFailureRecord),'failed':_0x17a771[_0x32edce(0x219)][_0x32edce(0x215)](redactFailureRecord),'verification':_0x17a771[_0x32edce(0x1fb)]?redactFailureRecord(_0x17a771[_0x32edce(0x1fb)]):undefined};}function redactFailureRecord(_0x5052ac){return redactFailureValue(_0x5052ac);}function redactFailureValue(_0x6be1ab,_0x4461f0=''){const _0x3c1558=a130_0x29fb78,_0x57d325=_0x4461f0['toLowerCase']()[_0x3c1558(0x256)](/[^a-z0-9]/g,'');if([_0x3c1558(0x223),_0x3c1558(0x273),_0x3c1558(0x246),'rawerror']['includes'](_0x57d325))return _0x3c1558(0x264);if(Array['isArray'](_0x6be1ab))return _0x6be1ab[_0x3c1558(0x215)](_0x57bdbd=>redactFailureValue(_0x57bdbd));if(_0x6be1ab&&typeof _0x6be1ab===_0x3c1558(0x27f))return Object[_0x3c1558(0x22d)](Object[_0x3c1558(0x22f)](_0x6be1ab)[_0x3c1558(0x215)](([_0x17b06c,_0x52a47a])=>[_0x17b06c,redactFailureValue(_0x52a47a,_0x17b06c)]));return _0x6be1ab;}function a130_0xf1a9(){const _0x526fd6=['verification','plannedActions','Provide\x20an\x20HTTPS\x20URL.','visible','10CUyOYI','8718525vnfEhr','1494kBtVhZ','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','hash','Recovered\x20created\x20external\x20menu\x20','after','menu_permission_denied','External\x20menu\x20creation\x20failed.','1299cbpWKK','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','before','selector','body','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','isArray','stringify','\x20could\x20not\x20be\x20verified.','\x20after\x20response\x20loss.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','map','menu_url_invalid','expectedPath','write','failed','password','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','2228080kNFYMa','\x20with\x20','Created\x20external\x20menu\x20','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','parent','pre-write-recheck','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','cause','create\x20external\x20menu','348eMMucj','menu_state_drift','plan','cookie','lookupCommand','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','external-link-create','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','fromEntries','\x20failed\x20final\x20verification.','entries','3CMKLuV','sort','menu_create_recovery_required','bool','POST','menu_parent_not_folder','\x20--format\x20compress','/smartapi/menu/create','Recovered\x20menu\x20','6268780UpKXPA','menu_verification_failed','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','\x20has\x20an\x20unexpected\x20generated\x20path.','hasOwnProperty','https:','boolean','346844EUXsIb','afterPlan','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','username','menu_create_response_invalid','readbackerror','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','menu_sort_invalid','filter','type','parentId','iframe','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','recovered','How\x20to\x20open\x20the\x20external\x20website','menus','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','embedded','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','visibility','replace','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Menu\x20','6740892xxTYTi','685135kEWlCY','str','Run\x20','Created\x20menu\x20','code','length','link','appCode','Would\x20create\x20external\x20website\x20link\x20menu\x20','<redacted>','open-mode','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','byId','data','create-recovery','isSafeInteger','menu_open_mode_invalid','currentSnapshotHash','parent-id','flagMissing','trim','menu','createdId','succeeded','causemessage','string','url','label','14NWTSXP','has','menu_mutation_failed','path','rawFlags','get','URL','fact','object','prototype','menu_not_found','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','snapshot','create','expectedSnapshotHash'];a130_0xf1a9=function(){return _0x526fd6;};return a130_0xf1a9();}function safeMenuAddError(_0x51a799){const _0x4aff2c=a130_0x29fb78,_0x128416=_0x51a799 instanceof CliError?_0x51a799[_0x4aff2c(0x25f)]:_0x4aff2c(0x279);switch(_0x128416){case _0x4aff2c(0x226):return menuError(_0x128416,_0x4aff2c(0x20d),_0x4aff2c(0x257));case _0x4aff2c(0x206):return menuError(_0x128416,_0x4aff2c(0x21b),_0x4aff2c(0x213));case _0x4aff2c(0x245):return menuError(_0x128416,_0x4aff2c(0x21f),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x4aff2c(0x23a):return menuError(_0x128416,_0x4aff2c(0x254),_0x4aff2c(0x253));case _0x4aff2c(0x232):return menuError(_0x128416,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x4aff2c(0x279):case _0x4aff2c(0x1f5):case _0x4aff2c(0x235):case _0x4aff2c(0x248):case'menu_sort_overflow':return menuError(_0x128416,_0x4aff2c(0x207),_0x4aff2c(0x266));default:return menuError('menu_mutation_failed',_0x4aff2c(0x207),_0x4aff2c(0x266));}}function getFailureRecord(_0x486f77){const _0xbc676c=a130_0x29fb78;if(!(_0x486f77 instanceof Error)||!(_0xbc676c(0x268)in _0x486f77))return undefined;const _0x4ded17=_0x486f77[_0xbc676c(0x268)];if(!_0x4ded17||typeof _0x4ded17!==_0xbc676c(0x27f))return undefined;const _0x24a076=_0x4ded17['failed'];if(!Array[_0xbc676c(0x20f)](_0x24a076)||!_0x24a076[0x0]||typeof _0x24a076[0x0]!==_0xbc676c(0x27f))return undefined;return _0x24a076[0x0];}
@@ -1 +1 @@
1
- const a131_0x59c482=a131_0x4640;function a131_0x4640(_0x3ad81c,_0x3fd079){_0x3ad81c=_0x3ad81c-0x1aa;const _0xba04c4=a131_0xba04();let _0x46407d=_0xba04c4[_0x3ad81c];return _0x46407d;}(function(_0x3dfe0a,_0x4cf613){const _0xd6a6dc=a131_0x4640,_0x315927=_0x3dfe0a();while(!![]){try{const _0x1de47a=-parseInt(_0xd6a6dc(0x1c7))/0x1*(parseInt(_0xd6a6dc(0x1dc))/0x2)+-parseInt(_0xd6a6dc(0x1aa))/0x3+parseInt(_0xd6a6dc(0x1b6))/0x4*(parseInt(_0xd6a6dc(0x1ab))/0x5)+parseInt(_0xd6a6dc(0x1ca))/0x6+parseInt(_0xd6a6dc(0x1be))/0x7+parseInt(_0xd6a6dc(0x1bf))/0x8+parseInt(_0xd6a6dc(0x1bc))/0x9;if(_0x1de47a===_0x4cf613)break;else _0x315927['push'](_0x315927['shift']());}catch(_0xdcffc2){_0x315927['push'](_0x315927['shift']());}}}(a131_0xba04,0x6f1c9));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 a131_0xba04(){const _0x3e1dc6=['5DFlrRj','/smartapi/menu/update','\x20is\x20type\x20\x22','cookie','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','path','url','snapshot',',\x20current\x20','requestedUrlObserved','1027744miixzZ','Run\x20','\x22,\x20not\x20iframe\x20or\x20link.','str','update-recovery','external-link-update','2348604kWprfT','verify\x20external\x20menu\x20URL\x20update','5328953dlguXF','432488XqTgfY','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','parentId','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','childrenCount','Update\x20request\x20for\x20menu\x20','after','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','18tNPeJO','write','menu_permission_denied','1783188IHWQwn','rabetbase\x20menu\x20list\x20--appcode\x20','menu','\x20parent\x20changed:\x20expected\x20','expect-url','update\x20external\x20menu\x20URL','New\x20external\x20HTTPS\x20URL','Menu\x20','menu_state_drift','trim','label','appCode','sort','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','menu\x20list','\x20has\x20an\x20empty\x20platform\x20path.','menu_external_link_path_missing','\x20direct\x20child\x20menu(s).','30220CsAwmD','visible','string','POST','hash','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','link','flagMissing','Updated\x20external\x20URL\x20for\x20menu\x20','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','type','menu_external_link_type_required','update','\x20URL\x20update\x20did\x20not\x20take\x20effect.','replace','failed','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','Response\x20was\x20lost\x20and\x20menu\x20','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','byId','\x20could\x20not\x20be\x20verified\x20safely','iframe','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','menu_external_link_not_leaf','\x20changed\x20during\x20the\x20URL-only\x20update.','body','2710011oSIlIV'];a131_0xba04=function(){return _0x3e1dc6;};return a131_0xba04();}const BACKEND=[{'method':a131_0x59c482(0x1df),'path':a131_0x59c482(0x1ac)}];export const menuExternalLinkUpdate={'service':a131_0x59c482(0x1cc),'command':a131_0x59c482(0x1bb),'description':a131_0x59c482(0x1e5),'risk':a131_0x59c482(0x1c8),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':a131_0x59c482(0x1de),'required':!![],'description':a131_0x59c482(0x1d0)},{'name':a131_0x59c482(0x1ce),'type':a131_0x59c482(0x1de),'required':!![],'description':a131_0x59c482(0x1f5)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x22d9cc){validateInput(_0x22d9cc);},async 'dryRun'(_0x4d1b37){const _0x46a741=a131_0x59c482;validateInput(_0x4d1b37);const _0x39af15=await buildPlan(_0x4d1b37,!![]);return menuDryRunResult(_0x39af15['plan'],{'method':'POST','url':'/smartapi/menu/update','body':_0x39af15[_0x46a741(0x1f8)],'description':_0x46a741(0x1e1)+_0x39af15[_0x46a741(0x1f8)]['id']+'.'});},async 'execute'(_0x2ae9da){const _0x216f8c=a131_0x59c482;validateInput(_0x2ae9da);const _0x119eae=await buildPlan(_0x2ae9da,![]),{plan:_0x201f52,body:_0x2b7b8f,before:_0x4249ed,noChanges:_0x3b36d9}=_0x119eae,_0x2117e7=_0x2b7b8f['id'];if(_0x3b36d9)return updateSuccess(_0x201f52,_0x119eae[_0x216f8c(0x1b3)],_0x4249ed,!![],![]);await recheckMutationSnapshot(_0x2ae9da,_0x201f52,_0x216f8c(0x1cf),_0x2117e7);try{await updateMenuEntity(_0x2ae9da[_0x216f8c(0x1d5)],_0x2ae9da[_0x216f8c(0x1ae)],{'id':_0x2b7b8f['id'],'url':_0x2b7b8f[_0x216f8c(0x1b2)]});}catch(_0x355150){const _0x1051fa=mapMenuApiError(_0x355150,_0x216f8c(0x1cf),_0x2117e7);if(isMenuResponseLoss(_0x355150)&&_0x1051fa['code']!==_0x216f8c(0x1c9))return recoverAfterResponseLoss(_0x2ae9da,_0x119eae);throw menuFailure(_0x1051fa,_0x201f52,{'stage':_0x216f8c(0x1e8),'failed':{'id':_0x2117e7},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x2117e7,'lookupCommand':buildLookupCommand(_0x2ae9da['appCode'])}});}let _0x29e03d,_0x1ceb0c;try{_0x29e03d=await fetchMenuSnapshot(_0x2ae9da['appCode'],_0x2ae9da[_0x216f8c(0x1ae)]),_0x1ceb0c=requireMenu(_0x29e03d,_0x2117e7),verifyUpdatedFact(_0x4249ed,_0x1ceb0c,_0x2b7b8f[_0x216f8c(0x1b2)]);}catch(_0x26ada0){const _0x1c19e7=describeMenuErrorCause(_0x26ada0,_0x216f8c(0x1bd),_0x2117e7),_0x35f686=asVerificationError(_0x26ada0,_0x216f8c(0x1c4)+_0x2117e7+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x35f686,_0x201f52,{'stage':'verification','succeeded':[{'id':_0x2117e7,'updateRequested':!![]}],'failed':{'id':_0x2117e7,'requestedStateConfirmed':![],..._0x1c19e7},'warnings':[_0x216f8c(0x1c0)],'verification':{'status':'failed','targetId':_0x2117e7,'lookupCommand':buildLookupCommand(_0x2ae9da['appCode'])}});}return updateSuccess(_0x201f52,_0x29e03d,_0x1ceb0c,![],![]);}};function validateInput(_0x16f57a){const _0x37f27a=a131_0x59c482;validateExactId(_0x16f57a),requiredUrl(_0x16f57a,_0x37f27a(0x1b2)),requiredExpectedUrl(_0x16f57a),parseParentId(_0x16f57a,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x2a1f69,_0x5e7205){const _0x47bce9=a131_0x59c482;if(!hasFlag(_0x2a1f69,_0x5e7205)||!_0x2a1f69[_0x47bce9(0x1b9)](_0x5e7205)[_0x47bce9(0x1d3)]())throw CliErrors['flagMissing'](_0x5e7205);return validateExternalMenuUrl(_0x2a1f69[_0x47bce9(0x1b9)](_0x5e7205));}function requiredExpectedUrl(_0x5f597a){const _0x541f5a=a131_0x59c482;if(!hasFlag(_0x5f597a,_0x541f5a(0x1ce))||!_0x5f597a[_0x541f5a(0x1b9)]('expect-url')['trim']())throw CliErrors[_0x541f5a(0x1e3)](_0x541f5a(0x1ce));return _0x5f597a[_0x541f5a(0x1b9)](_0x541f5a(0x1ce))[_0x541f5a(0x1d3)]();}async function buildPlan(_0x1eb3db,_0x228de0){const _0x300b32=a131_0x59c482,_0x4db1cd=validateExactId(_0x1eb3db),_0x21feaf=requiredUrl(_0x1eb3db,_0x300b32(0x1b2)),_0x41cb35=requiredExpectedUrl(_0x1eb3db),_0x23a108=parseParentId(_0x1eb3db,'expect-parent-id',{'required':!![]}),_0x4348de=await fetchMutationSnapshot(_0x1eb3db,_0x300b32(0x1cf),_0x4db1cd),_0x7c7a31=requireMenu(_0x4348de,_0x4db1cd);assertExternalLinkLeaf(_0x7c7a31);if(_0x7c7a31['parentId']!==_0x23a108)throw menuError(_0x300b32(0x1d2),'Menu\x20'+_0x4db1cd+_0x300b32(0x1cd)+formatParent(_0x23a108)+_0x300b32(0x1b4)+formatParent(_0x7c7a31['parentId'])+'.',_0x300b32(0x1c6));const _0x5d3eb7=_0x7c7a31[_0x300b32(0x1b2)]===_0x21feaf;if(!_0x5d3eb7&&_0x7c7a31['url']!==_0x41cb35)throw menuError(_0x300b32(0x1d2),_0x300b32(0x1d1)+_0x4db1cd+_0x300b32(0x1ec),_0x300b32(0x1f3));const _0x7c83d7={'id':_0x4db1cd,'appCode':_0x1eb3db[_0x300b32(0x1d5)],'url':_0x21feaf},_0x4e7eed={..._0x7c7a31,'url':_0x21feaf};return{'body':_0x7c83d7,'before':_0x7c7a31,'noChanges':_0x5d3eb7,'snapshot':_0x4348de,'plan':mutationResult({'operation':_0x300b32(0x1bb),'selector':{'id':_0x4db1cd},'before':_0x7c7a31,'after':_0x4e7eed,'dryRun':_0x228de0,'backend':[...BACKEND],'plannedActions':_0x5d3eb7?[]:[{'stage':'update-external-link-url','method':'POST','path':_0x300b32(0x1ac),'body':_0x7c83d7}],'snapshotHash':_0x4348de[_0x300b32(0x1e0)],'warnings':_0x5d3eb7?[_0x300b32(0x1ed)]:[]})};}function assertExternalLinkLeaf(_0x4eb3b6){const _0x5a54c9=a131_0x59c482;if(_0x4eb3b6['type']!==_0x5a54c9(0x1f2)&&_0x4eb3b6[_0x5a54c9(0x1e6)]!==_0x5a54c9(0x1e2))throw menuError(_0x5a54c9(0x1e7),'Menu\x20'+_0x4eb3b6['id']+_0x5a54c9(0x1ad)+(_0x4eb3b6[_0x5a54c9(0x1e6)]||'unknown')+_0x5a54c9(0x1b8),_0x5a54c9(0x1f4));if(_0x4eb3b6['childrenCount']!==0x0)throw menuError(_0x5a54c9(0x1f6),'Menu\x20'+_0x4eb3b6['id']+'\x20has\x20'+_0x4eb3b6[_0x5a54c9(0x1c3)]+_0x5a54c9(0x1db),_0x5a54c9(0x1c2));if(!_0x4eb3b6[_0x5a54c9(0x1b1)][_0x5a54c9(0x1d3)]())throw menuError(_0x5a54c9(0x1da),'Menu\x20'+_0x4eb3b6['id']+_0x5a54c9(0x1d9),_0x5a54c9(0x1b0));}function verifyUpdatedFact(_0x1d1473,_0x59ab0b,_0x5e9643){const _0x599e5b=a131_0x59c482;assertExternalLinkLeaf(_0x59ab0b);const _0x22ccfc=[['id',_0x59ab0b['id'],_0x1d1473['id']],[_0x599e5b(0x1d4),_0x59ab0b[_0x599e5b(0x1d4)],_0x1d1473['label']],['type',_0x59ab0b[_0x599e5b(0x1e6)],_0x1d1473['type']],[_0x599e5b(0x1b1),_0x59ab0b[_0x599e5b(0x1b1)],_0x1d1473[_0x599e5b(0x1b1)]],[_0x599e5b(0x1c1),_0x59ab0b[_0x599e5b(0x1c1)],_0x1d1473[_0x599e5b(0x1c1)]],['sort',_0x59ab0b['sort'],_0x1d1473[_0x599e5b(0x1d6)]],[_0x599e5b(0x1dd),_0x59ab0b[_0x599e5b(0x1dd)],_0x1d1473[_0x599e5b(0x1dd)]]];for(const [_0x43c0a7,_0x131f9d,_0x37e6d0]of _0x22ccfc){assertVerified(_0x131f9d===_0x37e6d0,_0x599e5b(0x1d1)+_0x1d1473['id']+'\x20'+_0x43c0a7+_0x599e5b(0x1f7));}assertVerified(_0x59ab0b['url']===_0x5e9643,_0x599e5b(0x1d1)+_0x1d1473['id']+_0x599e5b(0x1e9));}function updateSuccess(_0x95e12a,_0x26c609,_0x229cfb,_0x3b38f0,_0x2e42df){const _0x5aa0fc=a131_0x59c482,_0x1c8a43=_0x229cfb['id'],_0x1cea84=mutationResult({..._0x95e12a,'after':_0x229cfb,'dryRun':![],'succeeded':[{'id':_0x1c8a43,'updated':!_0x3b38f0,'skipped':_0x3b38f0,'recovered':_0x2e42df}],'verification':{'checkedBy':_0x5aa0fc(0x1d8),'snapshotHash':_0x26c609[_0x5aa0fc(0x1e0)],'targetId':_0x1c8a43,'matchesRequestedState':!![],'recovered':_0x2e42df}});return{'ok':!![],'message':_0x2e42df?_0x5aa0fc(0x1d7)+_0x1c8a43+'.':_0x3b38f0?_0x5aa0fc(0x1d1)+_0x1c8a43+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x5aa0fc(0x1e4)+_0x1c8a43+'.','data':{..._0x1cea84,'recovered':_0x2e42df}};}async function recoverAfterResponseLoss(_0xb4f03b,_0x534dca){const _0x3dcab4=a131_0x59c482,{plan:_0x4c66e9,before:_0x120d84,body:_0x448d93}=_0x534dca;let _0x4f479b;try{_0x4f479b=await fetchMenuSnapshot(_0xb4f03b[_0x3dcab4(0x1d5)],_0xb4f03b[_0x3dcab4(0x1ae)]);}catch{throw recoveryRequired(_0x4c66e9,_0xb4f03b[_0x3dcab4(0x1d5)],{'id':_0x448d93['id'],'readbackFailed':!![]});}const _0x34d3c5=_0x4f479b[_0x3dcab4(0x1f0)]['get'](_0x448d93['id']);if(!_0x34d3c5||_0x34d3c5[_0x3dcab4(0x1b2)]!==_0x448d93['url'])throw recoveryRequired(_0x4c66e9,_0xb4f03b['appCode'],{'id':_0x448d93['id'],'requestedUrlObserved':![],'after':_0x34d3c5??null});try{verifyUpdatedFact(_0x120d84,_0x34d3c5,_0x448d93[_0x3dcab4(0x1b2)]);}catch(_0x12c391){const _0x31413c=asVerificationError(_0x12c391,_0x3dcab4(0x1ee)+_0x448d93['id']+_0x3dcab4(0x1f1));throw menuFailure(_0x31413c,_0x4c66e9,{'stage':_0x3dcab4(0x1ba),'succeeded':[{'id':_0x448d93['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x448d93['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x34d3c5,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x3dcab4(0x1eb),'targetId':_0x448d93['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0xb4f03b[_0x3dcab4(0x1d5)])}});}return updateSuccess(_0x4c66e9,_0x4f479b,_0x34d3c5,![],!![]);}function recoveryRequired(_0x1ba9ad,_0x41e836,_0x5dde40){const _0x127bcf=a131_0x59c482,_0x5f1014=menuError('menu_update_recovery_required',_0x127bcf(0x1af),_0x127bcf(0x1b7)+buildLookupCommand(_0x41e836)+_0x127bcf(0x1ef));return menuFailure(_0x5f1014,_0x1ba9ad,{'stage':_0x127bcf(0x1ba),'failed':{'id':_0x5dde40['id'],..._0x5dde40['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x5dde40['requestedUrlObserved']},..._0x5dde40['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x5dde40[_0x127bcf(0x1c5)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x127bcf(0x1eb),'targetId':_0x5dde40['id'],..._0x5dde40[_0x127bcf(0x1b5)]===undefined?{}:{'requestedUrlObserved':_0x5dde40[_0x127bcf(0x1b5)]},..._0x5dde40['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x41e836)}});}function buildLookupCommand(_0x3a9b2a){const _0x30d075=a131_0x59c482,_0x3e25b3='\x27'+_0x3a9b2a[_0x30d075(0x1ea)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x30d075(0x1cb)+_0x3e25b3+'\x20--format\x20compress';}
1
+ const a131_0x25ca9d=a131_0x54f0;(function(_0x2bd5dd,_0x228580){const _0x28bfcc=a131_0x54f0,_0x1b9b84=_0x2bd5dd();while(!![]){try{const _0x355698=parseInt(_0x28bfcc(0xca))/0x1+parseInt(_0x28bfcc(0xd1))/0x2*(-parseInt(_0x28bfcc(0xe8))/0x3)+parseInt(_0x28bfcc(0xd9))/0x4+-parseInt(_0x28bfcc(0xf7))/0x5*(parseInt(_0x28bfcc(0xba))/0x6)+-parseInt(_0x28bfcc(0xf3))/0x7+parseInt(_0x28bfcc(0xb2))/0x8*(parseInt(_0x28bfcc(0xd0))/0x9)+parseInt(_0x28bfcc(0xd8))/0xa;if(_0x355698===_0x228580)break;else _0x1b9b84['push'](_0x1b9b84['shift']());}catch(_0x40c945){_0x1b9b84['push'](_0x1b9b84['shift']());}}}(a131_0x5864,0x9262c));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 a131_0x5864(){const _0x174528=['319970FWpIfF','write','type','rabetbase\x20menu\x20list\x20--appcode\x20','2029710SSBmPk','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','parentId','str','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','link','hash','label','menu_update_recovery_required','\x20already\x20matches\x20the\x20requested\x20URL.','\x20has\x20an\x20empty\x20platform\x20path.','Response\x20was\x20lost\x20and\x20menu\x20','2608MdRgUB','\x20--format\x20compress','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','readbackFailed','Update\x20request\x20for\x20menu\x20','\x22,\x20not\x20iframe\x20or\x20link.','cookie','New\x20external\x20HTTPS\x20URL','12eMKUSO','code','failed','menu_state_drift','update\x20external\x20menu\x20URL','string',',\x20current\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','plan','menu_external_link_type_required','external-link-update','verify\x20external\x20menu\x20URL\x20update','expect-parent-id','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','Menu\x20','menu_external_link_not_leaf','870455FgllBt','trim','childrenCount','POST','\x20URL\x20update\x20did\x20not\x20take\x20effect.','Run\x20','13437OsIloW','8TkjzFz','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','\x27\x5c\x27\x27','requestedUrlObserved','snapshot','sort','unknown','10087460PlRoQi','800556FEqyxN','verification','replace','get','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','update-external-link-url','update-recovery','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','\x20could\x20not\x20be\x20verified\x20safely','iframe','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','url','/smartapi/menu/update','visible','831651eswiwv','menu_permission_denied','\x20changed\x20during\x20the\x20URL-only\x20update.','menu\x20list','menu','appCode','expect-url','after','path','byId','body'];a131_0x5864=function(){return _0x174528;};return a131_0x5864();}const BACKEND=[{'method':a131_0x25ca9d(0xcd),'path':a131_0x25ca9d(0xe6)}];export const menuExternalLinkUpdate={'service':a131_0x25ca9d(0xec),'command':a131_0x25ca9d(0xc4),'description':a131_0x25ca9d(0xe3),'risk':a131_0x25ca9d(0xf4),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a131_0x25ca9d(0xe5),'type':a131_0x25ca9d(0xbf),'required':!![],'description':a131_0x25ca9d(0xb9)},{'name':a131_0x25ca9d(0xee),'type':a131_0x25ca9d(0xbf),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xf1d2c0){validateInput(_0xf1d2c0);},async 'dryRun'(_0x732cff){const _0x22799d=a131_0x25ca9d;validateInput(_0x732cff);const _0x33173d=await buildPlan(_0x732cff,!![]);return menuDryRunResult(_0x33173d[_0x22799d(0xc2)],{'method':'POST','url':_0x22799d(0xe6),'body':_0x33173d[_0x22799d(0xf2)],'description':_0x22799d(0xd2)+_0x33173d[_0x22799d(0xf2)]['id']+'.'});},async 'execute'(_0x5e1159){const _0x391457=a131_0x25ca9d;validateInput(_0x5e1159);const _0x3f9608=await buildPlan(_0x5e1159,![]),{plan:_0x15dd80,body:_0x314209,before:_0x11124a,noChanges:_0x42d153}=_0x3f9608,_0x4db88b=_0x314209['id'];if(_0x42d153)return updateSuccess(_0x15dd80,_0x3f9608[_0x391457(0xd5)],_0x11124a,!![],![]);await recheckMutationSnapshot(_0x5e1159,_0x15dd80,'update\x20external\x20menu\x20URL',_0x4db88b);try{await updateMenuEntity(_0x5e1159[_0x391457(0xed)],_0x5e1159[_0x391457(0xb8)],{'id':_0x314209['id'],'url':_0x314209[_0x391457(0xe5)]});}catch(_0x1962bd){const _0x895e0f=mapMenuApiError(_0x1962bd,_0x391457(0xbe),_0x4db88b);if(isMenuResponseLoss(_0x1962bd)&&_0x895e0f[_0x391457(0xbb)]!==_0x391457(0xe9))return recoverAfterResponseLoss(_0x5e1159,_0x3f9608);throw menuFailure(_0x895e0f,_0x15dd80,{'stage':'update','failed':{'id':_0x4db88b},'warnings':[_0x391457(0xdd)],'verification':{'status':_0x391457(0xbc),'targetId':_0x4db88b,'lookupCommand':buildLookupCommand(_0x5e1159['appCode'])}});}let _0x492e5d,_0x45e7df;try{_0x492e5d=await fetchMenuSnapshot(_0x5e1159[_0x391457(0xed)],_0x5e1159['cookie']),_0x45e7df=requireMenu(_0x492e5d,_0x4db88b),verifyUpdatedFact(_0x11124a,_0x45e7df,_0x314209[_0x391457(0xe5)]);}catch(_0xc9b4ba){const _0x716a86=describeMenuErrorCause(_0xc9b4ba,_0x391457(0xc5),_0x4db88b),_0x1313a9=asVerificationError(_0xc9b4ba,_0x391457(0xb6)+_0x4db88b+_0x391457(0xb4));throw menuFailure(_0x1313a9,_0x15dd80,{'stage':_0x391457(0xda),'succeeded':[{'id':_0x4db88b,'updateRequested':!![]}],'failed':{'id':_0x4db88b,'requestedStateConfirmed':![],..._0x716a86},'warnings':[_0x391457(0xf9)],'verification':{'status':'failed','targetId':_0x4db88b,'lookupCommand':buildLookupCommand(_0x5e1159[_0x391457(0xed)])}});}return updateSuccess(_0x15dd80,_0x492e5d,_0x45e7df,![],![]);}};function validateInput(_0x312be2){const _0x5ae784=a131_0x25ca9d;validateExactId(_0x312be2),requiredUrl(_0x312be2,_0x5ae784(0xe5)),requiredExpectedUrl(_0x312be2),parseParentId(_0x312be2,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x15b084,_0x42a7ee){const _0x28fd0e=a131_0x25ca9d;if(!hasFlag(_0x15b084,_0x42a7ee)||!_0x15b084['str'](_0x42a7ee)[_0x28fd0e(0xcb)]())throw CliErrors['flagMissing'](_0x42a7ee);return validateExternalMenuUrl(_0x15b084[_0x28fd0e(0xfc)](_0x42a7ee));}function requiredExpectedUrl(_0x38fac7){const _0x1e5bfb=a131_0x25ca9d;if(!hasFlag(_0x38fac7,_0x1e5bfb(0xee))||!_0x38fac7[_0x1e5bfb(0xfc)]('expect-url')[_0x1e5bfb(0xcb)]())throw CliErrors['flagMissing'](_0x1e5bfb(0xee));return _0x38fac7[_0x1e5bfb(0xfc)]('expect-url')['trim']();}async function buildPlan(_0x2c0d7f,_0x7b9b00){const _0xe66644=a131_0x25ca9d,_0x997e5f=validateExactId(_0x2c0d7f),_0x59b971=requiredUrl(_0x2c0d7f,_0xe66644(0xe5)),_0x13682f=requiredExpectedUrl(_0x2c0d7f),_0x249a13=parseParentId(_0x2c0d7f,_0xe66644(0xc6),{'required':!![]}),_0xcff546=await fetchMutationSnapshot(_0x2c0d7f,_0xe66644(0xbe),_0x997e5f),_0x2d5de5=requireMenu(_0xcff546,_0x997e5f);assertExternalLinkLeaf(_0x2d5de5);if(_0x2d5de5['parentId']!==_0x249a13)throw menuError(_0xe66644(0xbd),_0xe66644(0xc8)+_0x997e5f+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x249a13)+_0xe66644(0xc0)+formatParent(_0x2d5de5[_0xe66644(0xfb)])+'.',_0xe66644(0xc1));const _0x13def4=_0x2d5de5['url']===_0x59b971;if(!_0x13def4&&_0x2d5de5[_0xe66644(0xe5)]!==_0x13682f)throw menuError(_0xe66644(0xbd),_0xe66644(0xc8)+_0x997e5f+_0xe66644(0xfa),_0xe66644(0xc7));const _0x2fe4fc={'id':_0x997e5f,'appCode':_0x2c0d7f[_0xe66644(0xed)],'url':_0x59b971},_0x5ddb3c={..._0x2d5de5,'url':_0x59b971};return{'body':_0x2fe4fc,'before':_0x2d5de5,'noChanges':_0x13def4,'snapshot':_0xcff546,'plan':mutationResult({'operation':_0xe66644(0xc4),'selector':{'id':_0x997e5f},'before':_0x2d5de5,'after':_0x5ddb3c,'dryRun':_0x7b9b00,'backend':[...BACKEND],'plannedActions':_0x13def4?[]:[{'stage':_0xe66644(0xde),'method':_0xe66644(0xcd),'path':'/smartapi/menu/update','body':_0x2fe4fc}],'snapshotHash':_0xcff546['hash'],'warnings':_0x13def4?[_0xe66644(0xfd)]:[]})};}function a131_0x54f0(_0x3d2583,_0x20d22a){_0x3d2583=_0x3d2583-0xb0;const _0x5864d5=a131_0x5864();let _0x54f043=_0x5864d5[_0x3d2583];return _0x54f043;}function assertExternalLinkLeaf(_0x529912){const _0x5b995c=a131_0x25ca9d;if(_0x529912['type']!==_0x5b995c(0xe2)&&_0x529912[_0x5b995c(0xf5)]!==_0x5b995c(0xfe))throw menuError(_0x5b995c(0xc3),_0x5b995c(0xc8)+_0x529912['id']+'\x20is\x20type\x20\x22'+(_0x529912['type']||_0x5b995c(0xd7))+_0x5b995c(0xb7),_0x5b995c(0xf8));if(_0x529912[_0x5b995c(0xcc)]!==0x0)throw menuError(_0x5b995c(0xc9),_0x5b995c(0xc8)+_0x529912['id']+'\x20has\x20'+_0x529912[_0x5b995c(0xcc)]+'\x20direct\x20child\x20menu(s).','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x529912['path'][_0x5b995c(0xcb)]())throw menuError('menu_external_link_path_missing','Menu\x20'+_0x529912['id']+_0x5b995c(0xb0),_0x5b995c(0xe0));}function verifyUpdatedFact(_0x119314,_0x43862c,_0x4bac98){const _0x565443=a131_0x25ca9d;assertExternalLinkLeaf(_0x43862c);const _0x42aa7d=[['id',_0x43862c['id'],_0x119314['id']],['label',_0x43862c[_0x565443(0x100)],_0x119314[_0x565443(0x100)]],[_0x565443(0xf5),_0x43862c[_0x565443(0xf5)],_0x119314[_0x565443(0xf5)]],[_0x565443(0xf0),_0x43862c[_0x565443(0xf0)],_0x119314[_0x565443(0xf0)]],[_0x565443(0xfb),_0x43862c[_0x565443(0xfb)],_0x119314[_0x565443(0xfb)]],[_0x565443(0xd6),_0x43862c[_0x565443(0xd6)],_0x119314[_0x565443(0xd6)]],[_0x565443(0xe7),_0x43862c[_0x565443(0xe7)],_0x119314['visible']]];for(const [_0x1dbf0c,_0x1f9305,_0x3838a0]of _0x42aa7d){assertVerified(_0x1f9305===_0x3838a0,_0x565443(0xc8)+_0x119314['id']+'\x20'+_0x1dbf0c+_0x565443(0xea));}assertVerified(_0x43862c[_0x565443(0xe5)]===_0x4bac98,'Menu\x20'+_0x119314['id']+_0x565443(0xce));}function updateSuccess(_0x7f77d6,_0x30039f,_0x2176cc,_0xef8ffa,_0x5d8b2d){const _0x5c71a2=a131_0x25ca9d,_0x594698=_0x2176cc['id'],_0x4e0d31=mutationResult({..._0x7f77d6,'after':_0x2176cc,'dryRun':![],'succeeded':[{'id':_0x594698,'updated':!_0xef8ffa,'skipped':_0xef8ffa,'recovered':_0x5d8b2d}],'verification':{'checkedBy':_0x5c71a2(0xeb),'snapshotHash':_0x30039f[_0x5c71a2(0xff)],'targetId':_0x594698,'matchesRequestedState':!![],'recovered':_0x5d8b2d}});return{'ok':!![],'message':_0x5d8b2d?'Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20'+_0x594698+'.':_0xef8ffa?'Menu\x20'+_0x594698+_0x5c71a2(0x102):'Updated\x20external\x20URL\x20for\x20menu\x20'+_0x594698+'.','data':{..._0x4e0d31,'recovered':_0x5d8b2d}};}async function recoverAfterResponseLoss(_0x5d3bb9,_0xe08bb8){const _0x675e28=a131_0x25ca9d,{plan:_0x105f79,before:_0x212c78,body:_0x38a6ef}=_0xe08bb8;let _0x2790ef;try{_0x2790ef=await fetchMenuSnapshot(_0x5d3bb9[_0x675e28(0xed)],_0x5d3bb9[_0x675e28(0xb8)]);}catch{throw recoveryRequired(_0x105f79,_0x5d3bb9[_0x675e28(0xed)],{'id':_0x38a6ef['id'],'readbackFailed':!![]});}const _0x4c41bc=_0x2790ef[_0x675e28(0xf1)][_0x675e28(0xdc)](_0x38a6ef['id']);if(!_0x4c41bc||_0x4c41bc['url']!==_0x38a6ef['url'])throw recoveryRequired(_0x105f79,_0x5d3bb9[_0x675e28(0xed)],{'id':_0x38a6ef['id'],'requestedUrlObserved':![],'after':_0x4c41bc??null});try{verifyUpdatedFact(_0x212c78,_0x4c41bc,_0x38a6ef[_0x675e28(0xe5)]);}catch(_0x44498d){const _0x5a430a=asVerificationError(_0x44498d,_0x675e28(0xb1)+_0x38a6ef['id']+_0x675e28(0xe1));throw menuFailure(_0x5a430a,_0x105f79,{'stage':_0x675e28(0xdf),'succeeded':[{'id':_0x38a6ef['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x38a6ef['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x4c41bc,'warnings':[_0x675e28(0xe4)],'verification':{'status':_0x675e28(0xbc),'targetId':_0x38a6ef['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5d3bb9[_0x675e28(0xed)])}});}return updateSuccess(_0x105f79,_0x2790ef,_0x4c41bc,![],!![]);}function recoveryRequired(_0x9934ae,_0x35f2a3,_0x59db03){const _0x45ff1a=a131_0x25ca9d,_0x2338f7=menuError(_0x45ff1a(0x101),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x45ff1a(0xcf)+buildLookupCommand(_0x35f2a3)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x2338f7,_0x9934ae,{'stage':_0x45ff1a(0xdf),'failed':{'id':_0x59db03['id'],..._0x59db03[_0x45ff1a(0xd4)]===undefined?{}:{'requestedUrlObserved':_0x59db03[_0x45ff1a(0xd4)]},..._0x59db03[_0x45ff1a(0xb5)]?{'readbackFailed':!![]}:{}},'after':_0x59db03[_0x45ff1a(0xef)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':'failed','targetId':_0x59db03['id'],..._0x59db03[_0x45ff1a(0xd4)]===undefined?{}:{'requestedUrlObserved':_0x59db03[_0x45ff1a(0xd4)]},..._0x59db03['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x35f2a3)}});}function buildLookupCommand(_0x2f0dcb){const _0x33254a=a131_0x25ca9d,_0xb6b3b0='\x27'+_0x2f0dcb[_0x33254a(0xdb)](/'/g,_0x33254a(0xd3))+'\x27';return _0x33254a(0xf6)+_0xb6b3b0+_0x33254a(0xb3);}
@@ -1 +1 @@
1
- const a132_0x1fb52d=a132_0x4a2e;(function(_0x5c9354,_0x4789db){const _0x33a29a=a132_0x4a2e,_0x1d0b57=_0x5c9354();while(!![]){try{const _0x22b1d9=-parseInt(_0x33a29a(0x85))/0x1*(-parseInt(_0x33a29a(0xa7))/0x2)+-parseInt(_0x33a29a(0x86))/0x3+-parseInt(_0x33a29a(0x9d))/0x4*(-parseInt(_0x33a29a(0xb8))/0x5)+parseInt(_0x33a29a(0xb6))/0x6+-parseInt(_0x33a29a(0xad))/0x7*(-parseInt(_0x33a29a(0x93))/0x8)+-parseInt(_0x33a29a(0xa0))/0x9*(-parseInt(_0x33a29a(0xa6))/0xa)+-parseInt(_0x33a29a(0x8c))/0xb*(parseInt(_0x33a29a(0x7c))/0xc);if(_0x22b1d9===_0x4789db)break;else _0x1d0b57['push'](_0x1d0b57['shift']());}catch(_0x28d1cd){_0x1d0b57['push'](_0x1d0b57['shift']());}}}(a132_0x2e27,0x33ca6));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a132_0x1fb52d(0x84),'path':a132_0x1fb52d(0xbd)}];export const menuGroupCreate={'service':'menu','command':a132_0x1fb52d(0xc2),'description':a132_0x1fb52d(0xae),'risk':a132_0x1fb52d(0x99),'structuredErrors':!![],'flags':[{'name':a132_0x1fb52d(0xbe),'type':'string','required':!![],'description':a132_0x1fb52d(0x82)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x190818){validateCreateInput(_0x190818);},async 'dryRun'(_0x509c34){const _0x308f96=a132_0x1fb52d,_0x1bcdac=await buildCreatePlan(_0x509c34,!![]),_0x43a5b9=_0x1bcdac['after'];return menuDryRunResult(_0x1bcdac,{'method':'POST','url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x43a5b9[_0x308f96(0x9b)]),'label':_0x43a5b9[_0x308f96(0xbe)],'type':_0x308f96(0xa1),'visible':!![],'sort':_0x43a5b9[_0x308f96(0x8b)],'extend':{}},'description':_0x308f96(0x8a)+String(_0x43a5b9[_0x308f96(0xbe)])+_0x308f96(0x8d)});},async 'execute'(_0x3dae78){const _0x4c1a4c=a132_0x1fb52d;validateCreateInput(_0x3dae78);const _0x541199=await buildCreatePlan(_0x3dae78,![]),_0x11b4f0=_0x541199['after'];await recheckMutationSnapshot(_0x3dae78,_0x541199,_0x4c1a4c(0x79));let _0x279129;try{_0x279129=await createMenuEntity(_0x3dae78[_0x4c1a4c(0xaa)],_0x3dae78['cookie'],{'parentId':toApiParentId(_0x11b4f0[_0x4c1a4c(0x9b)]),'label':String(_0x11b4f0[_0x4c1a4c(0xbe)]),'type':_0x4c1a4c(0xa1),'visible':!![],'sort':Number(_0x11b4f0[_0x4c1a4c(0x8b)]),'extend':{}});}catch(_0x5a5036){const _0x29bafe=mapMenuApiError(_0x5a5036,_0x4c1a4c(0x79));throw menuFailure(_0x29bafe,_0x541199,{'stage':_0x4c1a4c(0xb3),'failed':{}});}const _0x5c5ecb=Number(_0x279129['id']);if(!Number[_0x4c1a4c(0xaf)](_0x5c5ecb)||_0x5c5ecb<=0x0){const _0x3419f6=menuError(_0x4c1a4c(0xb7),_0x4c1a4c(0x77),_0x4c1a4c(0xbb));throw menuFailure(_0x3419f6,_0x541199,{'stage':_0x4c1a4c(0x96),'failed':{'createdId':_0x279129['id']??null},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.'],'verification':{'status':_0x4c1a4c(0xb0),'lookupCommand':_0x4c1a4c(0x7f)}});}const _0x1bca6d=typeof _0x279129[_0x4c1a4c(0x7d)]===_0x4c1a4c(0xa9)?_0x279129[_0x4c1a4c(0x7d)]:'';if(!_0x1bca6d['trim']()){const _0x2ddb17=menuError(_0x4c1a4c(0xb7),_0x4c1a4c(0xa8)+_0x5c5ecb+_0x4c1a4c(0x90),_0x4c1a4c(0xb5));throw menuFailure(_0x2ddb17,_0x541199,{'stage':_0x4c1a4c(0x96),'succeeded':[{'id':_0x5c5ecb,'created':!![]}],'failed':{'id':_0x5c5ecb,'generatedPathConfirmed':![]},'warnings':[_0x4c1a4c(0x7e)+_0x5c5ecb+_0x4c1a4c(0x92)],'after':{..._0x11b4f0,'id':_0x5c5ecb,'path':_0x1bca6d},'verification':{'status':_0x4c1a4c(0xb0),'lookupCommand':_0x4c1a4c(0x7f),'targetId':_0x5c5ecb}});}let _0x46aa88;try{_0x46aa88=await fetchMenuSnapshot(_0x3dae78['appCode'],_0x3dae78[_0x4c1a4c(0x95)]);}catch(_0x564cdc){const _0x535d37=describeMenuErrorCause(_0x564cdc,_0x4c1a4c(0xac),_0x5c5ecb),_0x454b1d=asVerificationError(_0x564cdc,'Folder\x20'+_0x5c5ecb+_0x4c1a4c(0x80));throw menuFailure(_0x454b1d,_0x541199,{'stage':_0x4c1a4c(0xb2),'succeeded':[{'id':_0x5c5ecb,'created':!![],'path':_0x1bca6d}],'failed':{'id':_0x5c5ecb,'finalFactsConfirmed':![],..._0x535d37},'warnings':['Folder\x20'+_0x5c5ecb+_0x4c1a4c(0x9e)+JSON[_0x4c1a4c(0x88)](_0x1bca6d)+_0x4c1a4c(0x9f)],'after':{..._0x11b4f0,'id':_0x5c5ecb,'path':_0x1bca6d},'verification':{'status':_0x4c1a4c(0xb0),'lookupCommand':_0x4c1a4c(0x7f),'targetId':_0x5c5ecb}});}const _0x50599d=_0x46aa88[_0x4c1a4c(0xbf)][_0x4c1a4c(0x87)](_0x5c5ecb);let _0x4e1be2;try{assertVerified(Boolean(_0x50599d),'Created\x20folder\x20'+_0x5c5ecb+_0x4c1a4c(0x94)),_0x4e1be2=_0x50599d,assertVerified(_0x4e1be2['type']===_0x4c1a4c(0xa1),_0x4c1a4c(0x98)+_0x5c5ecb+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x4e1be2[_0x4c1a4c(0xbe)]===_0x11b4f0[_0x4c1a4c(0xbe)],_0x4c1a4c(0xb4)+_0x5c5ecb+_0x4c1a4c(0xbc)),assertVerified(_0x4e1be2[_0x4c1a4c(0x7d)]===_0x1bca6d&&Boolean(_0x4e1be2[_0x4c1a4c(0x7d)]['trim']()),_0x4c1a4c(0xb4)+_0x5c5ecb+_0x4c1a4c(0x7a)),assertVerified(_0x4e1be2[_0x4c1a4c(0xb1)]===!![],_0x4c1a4c(0xb4)+_0x5c5ecb+_0x4c1a4c(0xa5)),assertVerified(_0x4e1be2[_0x4c1a4c(0x9c)][_0x4c1a4c(0x7b)]===0x0,_0x4c1a4c(0xb4)+_0x5c5ecb+'\x20has\x20resources.'),assertVerified(_0x4e1be2[_0x4c1a4c(0x91)]===0x0,_0x4c1a4c(0xb4)+_0x5c5ecb+_0x4c1a4c(0x81)),assertVerified(_0x4e1be2['sort']===_0x11b4f0[_0x4c1a4c(0x8b)],'Created\x20folder\x20'+_0x5c5ecb+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x4e1be2[_0x4c1a4c(0x9b)]===_0x11b4f0[_0x4c1a4c(0x9b)],_0x4c1a4c(0xb4)+_0x5c5ecb+_0x4c1a4c(0x89)+(_0x4e1be2[_0x4c1a4c(0x9b)]??_0x4c1a4c(0xab))+'.'),assertVerified(_0x4e1be2[_0x4c1a4c(0x97)]==null,_0x4c1a4c(0xb4)+_0x5c5ecb+'\x20unexpectedly\x20owns\x20a\x20page.');const _0xf08483=_0x4e1be2['parentId']==null?undefined:requireFolder(_0x46aa88,_0x4e1be2['parentId']);assertVerified(_0x4e1be2[_0x4c1a4c(0xb9)]===(_0xf08483?_0xf08483[_0x4c1a4c(0xb9)]+0x1:0x0),_0x4c1a4c(0xb4)+_0x5c5ecb+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x1917ae){const _0x3595e5=describeMenuErrorCause(_0x1917ae,'verify\x20folder\x20creation',_0x5c5ecb),_0x1da944=asVerificationError(_0x1917ae,_0x4c1a4c(0x7e)+_0x5c5ecb+_0x4c1a4c(0x8e));throw menuFailure(_0x1da944,_0x541199,{'stage':_0x4c1a4c(0xb2),'succeeded':[{'id':_0x5c5ecb,'created':!![],'path':_0x1bca6d}],'failed':{'id':_0x5c5ecb,'finalFactsConfirmed':![],..._0x3595e5},'warnings':[_0x4c1a4c(0x7e)+_0x5c5ecb+_0x4c1a4c(0x9a)],'after':_0x50599d??{..._0x11b4f0,'id':_0x5c5ecb,'path':_0x1bca6d},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x5c5ecb}});}const _0x4222b8=mutationResult({..._0x541199,'after':_0x4e1be2,'dryRun':![],'succeeded':[{'id':_0x5c5ecb,'type':'folder','path':_0x1bca6d}],'verification':{'checkedBy':_0x4c1a4c(0xc1),'snapshotHash':_0x46aa88[_0x4c1a4c(0x78)],'folder':!![],'path':_0x1bca6d,'emptyResources':!![]}});return{'ok':!![],'data':_0x4222b8,'message':_0x4c1a4c(0xa4)+_0x5c5ecb+'.'};}};function validateCreateInput(_0x59cf06){const _0xd5af22=a132_0x1fb52d,_0x285ce0=_0x59cf06[_0xd5af22(0xa3)](_0xd5af22(0xbe))['trim']();if(!_0x285ce0)throw CliErrors[_0xd5af22(0xba)]('label');parseParentId(_0x59cf06,_0xd5af22(0x83)),validateSort(_0x59cf06);}async function buildCreatePlan(_0x21691e,_0x2b4492){const _0x112991=a132_0x1fb52d,_0x268e71=await fetchMutationSnapshot(_0x21691e,_0x112991(0x79)),_0x200fd1=parseParentId(_0x21691e,_0x112991(0x83))??null;if(_0x200fd1!=null)requireFolder(_0x268e71,_0x200fd1);const _0x28c34a=validateSort(_0x21691e),_0x645b84=_0x28c34a??nextSiblingSort(_0x268e71,_0x200fd1,_0x112991(0xa1)),_0xd6f6a9=_0x21691e['str']('label')[_0x112991(0x8f)]();return mutationResult({'operation':_0x112991(0xc2),'selector':{'label':_0xd6f6a9,'parentId':_0x200fd1},'before':null,'after':{'id':null,'parentId':_0x200fd1,'label':_0xd6f6a9,'path':_0x112991(0xa2),'type':_0x112991(0xa1),'visible':!![],'sort':_0x645b84,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x2b4492,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':'POST','path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x200fd1),'label':_0xd6f6a9,'type':_0x112991(0xa1),'visible':!![],'sort':_0x645b84,'extend':{}}}],'snapshotHash':_0x268e71[_0x112991(0x78)],'warnings':[_0x112991(0xc0)]});}function a132_0x4a2e(_0x25c546,_0x3f7098){_0x25c546=_0x25c546-0x77;const _0x2e27e7=a132_0x2e27();let _0x4a2e9a=_0x2e27e7[_0x25c546];return _0x4a2e9a;}function a132_0x2e27(){const _0x59caf7=['24486tpDyLX','\x22\x20with\x20a\x20platform-generated\x20path.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','trim','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','childrenCount','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','104OrbDtP','\x20is\x20missing\x20from\x20menu\x20list.','cookie','create-response-validation','pageId','Created\x20menu\x20','write','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','parentId','resources','28CqQtPb','\x20may\x20exist\x20online\x20at\x20path\x20',';\x20verify\x20it\x20before\x20retrying.','37953QSZYFS','folder','<platform-generated>','str','Created\x20menu\x20folder\x20','\x20is\x20not\x20visible.','10iqNMdr','18UTwkJE','Menu\x20create\x20response\x20for\x20folder\x20','string','appCode','root','verify\x20folder\x20creation','79331wJunKb','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','isSafeInteger','failed','visible','verification','create','Created\x20folder\x20','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','1590744aNMbnU','menu_create_response_invalid','196275UhKjhO','depth','flagMissing','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20has\x20an\x20unexpected\x20label.','/smartapi/menu/create','label','byId','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','menu\x20list','group-create','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','hash','create\x20folder','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','length','2040NnflJZ','path','Folder\x20','rabetbase\x20menu\x20list\x20--format\x20json','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','\x20is\x20not\x20empty.','Folder\x20label','parent-id','POST','11338HQaftY','608829vraWNT','get','stringify','\x20has\x20unexpected\x20parent\x20','Would\x20create\x20empty\x20folder\x20\x22','sort'];a132_0x2e27=function(){return _0x59caf7;};return a132_0x2e27();}
1
+ const a132_0x5cdfdd=a132_0x1e3d;(function(_0x1c5c8d,_0xc1aa92){const _0x49542d=a132_0x1e3d,_0x13a08f=_0x1c5c8d();while(!![]){try{const _0x3688ba=parseInt(_0x49542d(0x1be))/0x1*(parseInt(_0x49542d(0x1b0))/0x2)+parseInt(_0x49542d(0x1c7))/0x3+parseInt(_0x49542d(0x184))/0x4*(parseInt(_0x49542d(0x19d))/0x5)+-parseInt(_0x49542d(0x1c4))/0x6+-parseInt(_0x49542d(0x1ab))/0x7+-parseInt(_0x49542d(0x187))/0x8*(parseInt(_0x49542d(0x1bd))/0x9)+-parseInt(_0x49542d(0x1b1))/0xa*(-parseInt(_0x49542d(0x18d))/0xb);if(_0x3688ba===_0xc1aa92)break;else _0x13a08f['push'](_0x13a08f['shift']());}catch(_0x2dcba4){_0x13a08f['push'](_0x13a08f['shift']());}}}(a132_0x5e85,0x5f5fc));function a132_0x1e3d(_0x59a255,_0x1d886f){_0x59a255=_0x59a255-0x17a;const _0x5e8518=a132_0x5e85();let _0x1e3d91=_0x5e8518[_0x59a255];return _0x1e3d91;}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 a132_0x5e85(){const _0x53b041=['Menu\x20create\x20response\x20for\x20folder\x20','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','1956264VpavLf','length','\x20may\x20exist\x20online\x20at\x20path\x20','type','parentId','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','55gujXII','childrenCount','string','\x22\x20with\x20a\x20platform-generated\x20path.','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','resources','/smartapi/menu/create','path','<platform-generated>','\x20is\x20missing\x20from\x20menu\x20list.','create\x20folder',';\x20verify\x20it\x20before\x20retrying.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','parent-id','depth','1017860GIeUAg','create-folder','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','Created\x20menu\x20folder\x20','write','flagMissing','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','rabetbase\x20menu\x20list\x20--format\x20json','Created\x20folder\x20','failed','menu\x20list','menu','isSafeInteger','create-response-validation','610680ptEriT','byId','Folder\x20','folder','group-create','68906sAXGYo','2192870DCUscI','hash','create','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','get','verify\x20folder\x20creation','after','menu_create_response_invalid','label','cookie','\x20is\x20not\x20visible.','verification','27WbxbfB','2nvGuPf','stringify','Folder\x20label','\x20is\x20not\x20empty.','\x20has\x20an\x20unexpected\x20label.','Created\x20menu\x20','4154094xqLssH','str','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','1604781fXPCAb','trim','POST','root','sort','\x20unexpectedly\x20owns\x20a\x20page.','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','Would\x20create\x20empty\x20folder\x20\x22','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','\x20is\x20not\x20type\x20folder.','\x20has\x20an\x20unexpected\x20sort.','4wbFNMM'];a132_0x5e85=function(){return _0x53b041;};return a132_0x5e85();}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a132_0x5cdfdd(0x17a),'path':a132_0x5cdfdd(0x194)}];export const menuGroupCreate={'service':a132_0x5cdfdd(0x1a8),'command':a132_0x5cdfdd(0x1af),'description':a132_0x5cdfdd(0x17f),'risk':a132_0x5cdfdd(0x1a1),'structuredErrors':!![],'flags':[{'name':a132_0x5cdfdd(0x1b9),'type':'string','required':!![],'description':a132_0x5cdfdd(0x1c0)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x59a677){validateCreateInput(_0x59a677);},async 'dryRun'(_0xb23cde){const _0x5eaae4=a132_0x5cdfdd,_0x234e2a=await buildCreatePlan(_0xb23cde,!![]),_0x48f9ed=_0x234e2a[_0x5eaae4(0x1b7)];return menuDryRunResult(_0x234e2a,{'method':_0x5eaae4(0x17a),'url':_0x5eaae4(0x194),'body':{'parentId':toApiParentId(_0x48f9ed[_0x5eaae4(0x18b)]),'label':_0x48f9ed[_0x5eaae4(0x1b9)],'type':_0x5eaae4(0x1ae),'visible':!![],'sort':_0x48f9ed[_0x5eaae4(0x17c)],'extend':{}},'description':_0x5eaae4(0x180)+String(_0x48f9ed[_0x5eaae4(0x1b9)])+_0x5eaae4(0x190)});},async 'execute'(_0x49c022){const _0x2edfda=a132_0x5cdfdd;validateCreateInput(_0x49c022);const _0x124532=await buildCreatePlan(_0x49c022,![]),_0x59bdad=_0x124532[_0x2edfda(0x1b7)];await recheckMutationSnapshot(_0x49c022,_0x124532,_0x2edfda(0x198));let _0x4102b1;try{_0x4102b1=await createMenuEntity(_0x49c022['appCode'],_0x49c022[_0x2edfda(0x1ba)],{'parentId':toApiParentId(_0x59bdad[_0x2edfda(0x18b)]),'label':String(_0x59bdad[_0x2edfda(0x1b9)]),'type':_0x2edfda(0x1ae),'visible':!![],'sort':Number(_0x59bdad[_0x2edfda(0x17c)]),'extend':{}});}catch(_0x1c37a8){const _0x41bc75=mapMenuApiError(_0x1c37a8,_0x2edfda(0x198));throw menuFailure(_0x41bc75,_0x124532,{'stage':_0x2edfda(0x1b3),'failed':{}});}const _0x40241f=Number(_0x4102b1['id']);if(!Number[_0x2edfda(0x1a9)](_0x40241f)||_0x40241f<=0x0){const _0x27b45c=menuError(_0x2edfda(0x1b8),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0x2edfda(0x1c6));throw menuFailure(_0x27b45c,_0x124532,{'stage':_0x2edfda(0x1aa),'failed':{'createdId':_0x4102b1['id']??null},'warnings':[_0x2edfda(0x19f)],'verification':{'status':_0x2edfda(0x1a6),'lookupCommand':_0x2edfda(0x1a4)}});}const _0x37e90d=typeof _0x4102b1[_0x2edfda(0x195)]===_0x2edfda(0x18f)?_0x4102b1[_0x2edfda(0x195)]:'';if(!_0x37e90d['trim']()){const _0x46832e=menuError('menu_create_response_invalid',_0x2edfda(0x185)+_0x40241f+_0x2edfda(0x1a3),_0x2edfda(0x186));throw menuFailure(_0x46832e,_0x124532,{'stage':'create-response-validation','succeeded':[{'id':_0x40241f,'created':!![]}],'failed':{'id':_0x40241f,'generatedPathConfirmed':![]},'warnings':[_0x2edfda(0x1ad)+_0x40241f+_0x2edfda(0x1b4)],'after':{..._0x59bdad,'id':_0x40241f,'path':_0x37e90d},'verification':{'status':_0x2edfda(0x1a6),'lookupCommand':_0x2edfda(0x1a4),'targetId':_0x40241f}});}let _0x46618a;try{_0x46618a=await fetchMenuSnapshot(_0x49c022['appCode'],_0x49c022[_0x2edfda(0x1ba)]);}catch(_0x23aa96){const _0x18e998=describeMenuErrorCause(_0x23aa96,_0x2edfda(0x1b6),_0x40241f),_0x5c0884=asVerificationError(_0x23aa96,'Folder\x20'+_0x40241f+_0x2edfda(0x192));throw menuFailure(_0x5c0884,_0x124532,{'stage':_0x2edfda(0x1bc),'succeeded':[{'id':_0x40241f,'created':!![],'path':_0x37e90d}],'failed':{'id':_0x40241f,'finalFactsConfirmed':![],..._0x18e998},'warnings':['Folder\x20'+_0x40241f+_0x2edfda(0x189)+JSON[_0x2edfda(0x1bf)](_0x37e90d)+_0x2edfda(0x199)],'after':{..._0x59bdad,'id':_0x40241f,'path':_0x37e90d},'verification':{'status':_0x2edfda(0x1a6),'lookupCommand':_0x2edfda(0x1a4),'targetId':_0x40241f}});}const _0x42e0af=_0x46618a[_0x2edfda(0x1ac)][_0x2edfda(0x1b5)](_0x40241f);let _0x1a95bf;try{assertVerified(Boolean(_0x42e0af),_0x2edfda(0x1a5)+_0x40241f+_0x2edfda(0x197)),_0x1a95bf=_0x42e0af,assertVerified(_0x1a95bf[_0x2edfda(0x18a)]===_0x2edfda(0x1ae),_0x2edfda(0x1c3)+_0x40241f+_0x2edfda(0x182)),assertVerified(_0x1a95bf['label']===_0x59bdad[_0x2edfda(0x1b9)],_0x2edfda(0x1a5)+_0x40241f+_0x2edfda(0x1c2)),assertVerified(_0x1a95bf[_0x2edfda(0x195)]===_0x37e90d&&Boolean(_0x1a95bf[_0x2edfda(0x195)]['trim']()),_0x2edfda(0x1a5)+_0x40241f+_0x2edfda(0x18c)),assertVerified(_0x1a95bf['visible']===!![],_0x2edfda(0x1a5)+_0x40241f+_0x2edfda(0x1bb)),assertVerified(_0x1a95bf[_0x2edfda(0x193)][_0x2edfda(0x188)]===0x0,_0x2edfda(0x1a5)+_0x40241f+'\x20has\x20resources.'),assertVerified(_0x1a95bf[_0x2edfda(0x18e)]===0x0,_0x2edfda(0x1a5)+_0x40241f+_0x2edfda(0x1c1)),assertVerified(_0x1a95bf[_0x2edfda(0x17c)]===_0x59bdad['sort'],_0x2edfda(0x1a5)+_0x40241f+_0x2edfda(0x183)),assertVerified(_0x1a95bf[_0x2edfda(0x18b)]===_0x59bdad[_0x2edfda(0x18b)],'Created\x20folder\x20'+_0x40241f+'\x20has\x20unexpected\x20parent\x20'+(_0x1a95bf[_0x2edfda(0x18b)]??_0x2edfda(0x17b))+'.'),assertVerified(_0x1a95bf['pageId']==null,_0x2edfda(0x1a5)+_0x40241f+_0x2edfda(0x17d));const _0x3a0fa8=_0x1a95bf[_0x2edfda(0x18b)]==null?undefined:requireFolder(_0x46618a,_0x1a95bf[_0x2edfda(0x18b)]);assertVerified(_0x1a95bf[_0x2edfda(0x19c)]===(_0x3a0fa8?_0x3a0fa8[_0x2edfda(0x19c)]+0x1:0x0),_0x2edfda(0x1a5)+_0x40241f+_0x2edfda(0x181));}catch(_0x150743){const _0x5878ad=describeMenuErrorCause(_0x150743,'verify\x20folder\x20creation',_0x40241f),_0xd0549a=asVerificationError(_0x150743,'Folder\x20'+_0x40241f+_0x2edfda(0x19a));throw menuFailure(_0xd0549a,_0x124532,{'stage':'verification','succeeded':[{'id':_0x40241f,'created':!![],'path':_0x37e90d}],'failed':{'id':_0x40241f,'finalFactsConfirmed':![],..._0x5878ad},'warnings':[_0x2edfda(0x1ad)+_0x40241f+_0x2edfda(0x191)],'after':_0x42e0af??{..._0x59bdad,'id':_0x40241f,'path':_0x37e90d},'verification':{'status':_0x2edfda(0x1a6),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x40241f}});}const _0x3b3fb1=mutationResult({..._0x124532,'after':_0x1a95bf,'dryRun':![],'succeeded':[{'id':_0x40241f,'type':_0x2edfda(0x1ae),'path':_0x37e90d}],'verification':{'checkedBy':_0x2edfda(0x1a7),'snapshotHash':_0x46618a['hash'],'folder':!![],'path':_0x37e90d,'emptyResources':!![]}});return{'ok':!![],'data':_0x3b3fb1,'message':_0x2edfda(0x1a0)+_0x40241f+'.'};}};function validateCreateInput(_0x3a27af){const _0x33fbd1=a132_0x5cdfdd,_0x2180a0=_0x3a27af[_0x33fbd1(0x1c5)](_0x33fbd1(0x1b9))[_0x33fbd1(0x1c8)]();if(!_0x2180a0)throw CliErrors[_0x33fbd1(0x1a2)]('label');parseParentId(_0x3a27af,_0x33fbd1(0x19b)),validateSort(_0x3a27af);}async function buildCreatePlan(_0x540559,_0x260bb4){const _0x443d92=a132_0x5cdfdd,_0x50a1f7=await fetchMutationSnapshot(_0x540559,_0x443d92(0x198)),_0x564a2f=parseParentId(_0x540559,_0x443d92(0x19b))??null;if(_0x564a2f!=null)requireFolder(_0x50a1f7,_0x564a2f);const _0x4ae026=validateSort(_0x540559),_0x1dcf52=_0x4ae026??nextSiblingSort(_0x50a1f7,_0x564a2f,'folder'),_0x1529a0=_0x540559[_0x443d92(0x1c5)]('label')['trim']();return mutationResult({'operation':_0x443d92(0x1af),'selector':{'label':_0x1529a0,'parentId':_0x564a2f},'before':null,'after':{'id':null,'parentId':_0x564a2f,'label':_0x1529a0,'path':_0x443d92(0x196),'type':_0x443d92(0x1ae),'visible':!![],'sort':_0x1dcf52,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x260bb4,'backend':[...BACKEND],'plannedActions':[{'stage':_0x443d92(0x19e),'method':'POST','path':_0x443d92(0x194),'body':{'parentId':toApiParentId(_0x564a2f),'label':_0x1529a0,'type':'folder','visible':!![],'sort':_0x1dcf52,'extend':{}}}],'snapshotHash':_0x50a1f7[_0x443d92(0x1b2)],'warnings':[_0x443d92(0x17e)]});}
@@ -1 +1 @@
1
- const a133_0x5dea1d=a133_0x495d;function a133_0x495d(_0xe69b77,_0x53206f){_0xe69b77=_0xe69b77-0x12e;const _0x3782d7=a133_0x3782();let _0x495db7=_0x3782d7[_0xe69b77];return _0x495db7;}(function(_0x40faef,_0x5791f5){const _0x358b34=a133_0x495d,_0x1d93aa=_0x40faef();while(!![]){try{const _0x428341=-parseInt(_0x358b34(0x14d))/0x1*(-parseInt(_0x358b34(0x148))/0x2)+parseInt(_0x358b34(0x147))/0x3+-parseInt(_0x358b34(0x162))/0x4*(parseInt(_0x358b34(0x155))/0x5)+-parseInt(_0x358b34(0x15c))/0x6*(parseInt(_0x358b34(0x13d))/0x7)+parseInt(_0x358b34(0x140))/0x8*(parseInt(_0x358b34(0x15e))/0x9)+-parseInt(_0x358b34(0x12e))/0xa*(parseInt(_0x358b34(0x12f))/0xb)+parseInt(_0x358b34(0x143))/0xc;if(_0x428341===_0x5791f5)break;else _0x1d93aa['push'](_0x1d93aa['shift']());}catch(_0x2766d8){_0x1d93aa['push'](_0x1d93aa['shift']());}}}(a133_0x3782,0x832f5));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':'/smartapi/menu/update'}];export const menuGroupUpdate={'service':a133_0x5dea1d(0x13e),'command':'group-update','description':a133_0x5dea1d(0x142),'risk':a133_0x5dea1d(0x14a),'structuredErrors':!![],'rejectedFlags':[{'name':a133_0x5dea1d(0x133),'message':a133_0x5dea1d(0x144),'hint':a133_0x5dea1d(0x13a)}],'flags':[MENU_ID_FLAG,{'name':a133_0x5dea1d(0x137),'type':a133_0x5dea1d(0x131),'description':a133_0x5dea1d(0x165)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x147f9a){validateUpdateInput(_0x147f9a);},async 'dryRun'(_0x49c452){const _0x370f5f=a133_0x5dea1d;validateUpdateInput(_0x49c452);const {plan:_0x38474b,patch:_0x20879b}=await buildUpdatePlan(_0x49c452,!![]);return menuDryRunResult(_0x38474b,{'method':_0x370f5f(0x153),'url':_0x370f5f(0x152),'body':_0x20879b,'description':_0x370f5f(0x130)+_0x38474b[_0x370f5f(0x14b)]['id']+'.'});},async 'execute'(_0x20bdab){const _0x3c6e4b=a133_0x5dea1d;validateUpdateInput(_0x20bdab);const {plan:_0x36aa6d,patch:_0x2c5be0,noChanges:_0x51df8c}=await buildUpdatePlan(_0x20bdab,![]),_0x24fae3=Number(_0x36aa6d['selector']['id']),_0x3105fe=await recheckMutationSnapshot(_0x20bdab,_0x36aa6d,'update\x20folder',_0x24fae3);if(!_0x51df8c)try{await updateMenuEntity(_0x20bdab['appCode'],_0x20bdab[_0x3c6e4b(0x156)],_0x2c5be0);}catch(_0x2c0a9f){const _0x50d48e=mapMenuApiError(_0x2c0a9f,_0x3c6e4b(0x15d),_0x24fae3);throw menuFailure(_0x50d48e,_0x36aa6d,{'stage':'update','failed':{'id':_0x24fae3}});}let _0x30edd8=_0x3105fe,_0x1ef5d6;try{!_0x51df8c&&(_0x30edd8=await fetchMenuSnapshot(_0x20bdab[_0x3c6e4b(0x13c)],_0x20bdab[_0x3c6e4b(0x156)])),_0x1ef5d6=requireMenu(_0x30edd8,_0x24fae3),verifyPatch(_0x1ef5d6,_0x2c5be0),_0x1ef5d6['parentId']!=null&&requireFolder(_0x30edd8,_0x1ef5d6[_0x3c6e4b(0x15a)]);}catch(_0x1e800d){const _0x216a7e=describeMenuErrorCause(_0x1e800d,_0x3c6e4b(0x145),_0x24fae3),_0x10978b=asVerificationError(_0x1e800d,_0x3c6e4b(0x159)+_0x24fae3+_0x3c6e4b(0x138));throw menuFailure(_0x10978b,_0x36aa6d,{'stage':_0x3c6e4b(0x13f),'succeeded':[{'id':_0x24fae3,'updateRequested':!_0x51df8c,'skipped':_0x51df8c}],'failed':{'id':_0x24fae3,'requestedStateConfirmed':![],..._0x216a7e},'warnings':[_0x3c6e4b(0x14e)],'verification':{'status':_0x3c6e4b(0x146),'lookupCommand':_0x3c6e4b(0x149),'targetId':_0x24fae3}});}const _0x11bf5e=mutationResult({..._0x36aa6d,'after':_0x1ef5d6,'dryRun':![],'succeeded':[{'id':_0x24fae3,'updated':!_0x51df8c,'skipped':_0x51df8c}],'verification':{'checkedBy':_0x3c6e4b(0x15b),'snapshotHash':_0x30edd8[_0x3c6e4b(0x161)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x11bf5e,'message':_0x51df8c?_0x3c6e4b(0x157)+_0x24fae3+_0x3c6e4b(0x151):_0x3c6e4b(0x163)+_0x24fae3+'.'};}};function validateUpdateInput(_0x2c2f85){const _0x36c9e0=a133_0x5dea1d;validateExactId(_0x2c2f85);if(hasFlag(_0x2c2f85,_0x36c9e0(0x133)))throw CliErrors[_0x36c9e0(0x14f)]('Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.',_0x36c9e0(0x13a));if(!hasFlag(_0x2c2f85,'label')&&!hasFlag(_0x2c2f85,'sort'))throw CliErrors[_0x36c9e0(0x14f)](_0x36c9e0(0x164));if(hasFlag(_0x2c2f85,_0x36c9e0(0x137))&&!_0x2c2f85[_0x36c9e0(0x139)]('label')[_0x36c9e0(0x14c)]())throw CliErrors[_0x36c9e0(0x14f)](_0x36c9e0(0x150));validateSort(_0x2c2f85);}async function buildUpdatePlan(_0x67c1ef,_0x3de385){const _0x4ed1f4=a133_0x5dea1d,_0x5c0425=validateExactId(_0x67c1ef),_0x355a74=await fetchMutationSnapshot(_0x67c1ef,_0x4ed1f4(0x15d),_0x5c0425),_0x4da057=requireMenu(_0x355a74,_0x5c0425);if(_0x4da057[_0x4ed1f4(0x166)]!=='folder')throw menuError(_0x4ed1f4(0x13b),_0x4ed1f4(0x154)+_0x5c0425+_0x4ed1f4(0x134)+(_0x4da057[_0x4ed1f4(0x166)]||'unknown')+_0x4ed1f4(0x136),_0x4ed1f4(0x160));assertExpectedState(_0x67c1ef,_0x4da057);const _0x5bf3f3={'id':_0x5c0425},_0x48909a={..._0x4da057};if(hasFlag(_0x67c1ef,'label')){const _0x213660=_0x67c1ef[_0x4ed1f4(0x139)](_0x4ed1f4(0x137))[_0x4ed1f4(0x14c)]();_0x5bf3f3[_0x4ed1f4(0x137)]=_0x213660,_0x48909a[_0x4ed1f4(0x137)]=_0x213660;}if(hasFlag(_0x67c1ef,'sort')){const _0xeea98d=validateSort(_0x67c1ef);_0x5bf3f3[_0x4ed1f4(0x135)]=_0xeea98d,_0x48909a['sort']=_0xeea98d;}const _0x317732=sameRequestedState(_0x4da057,_0x48909a),_0x48f73a=_0x317732?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0x5bf3f3,'noChanges':_0x317732,'plan':mutationResult({'operation':_0x4ed1f4(0x132),'selector':{'id':_0x5c0425},'before':_0x4da057,'after':_0x48909a,'dryRun':_0x3de385,'backend':[...BACKEND],'snapshotHash':_0x355a74['hash'],'warnings':_0x48f73a})};}function sameRequestedState(_0xeea746,_0x3985b5){const _0x3caeb5=a133_0x5dea1d;return _0xeea746[_0x3caeb5(0x137)]===_0x3985b5[_0x3caeb5(0x137)]&&_0xeea746[_0x3caeb5(0x135)]===_0x3985b5[_0x3caeb5(0x135)];}function verifyPatch(_0x4bd48f,_0x1b50b6){const _0x35860d=a133_0x5dea1d;assertVerified(_0x4bd48f[_0x35860d(0x166)]===_0x35860d(0x15f),_0x35860d(0x154)+_0x4bd48f['id']+_0x35860d(0x141)),_0x1b50b6[_0x35860d(0x137)]!==undefined&&assertVerified(_0x4bd48f['label']===_0x1b50b6['label'],_0x35860d(0x157)+_0x4bd48f['id']+'\x20label\x20update\x20did\x20not\x20take\x20effect.'),_0x1b50b6[_0x35860d(0x135)]!==undefined&&assertVerified(_0x4bd48f[_0x35860d(0x135)]===_0x1b50b6['sort'],'Folder\x20'+_0x4bd48f['id']+_0x35860d(0x158));}function a133_0x3782(){const _0x176370=['44LRnkpC','Would\x20update\x20folder\x20','string','group-update','parent-id','\x20is\x20type\x20\x22','sort','\x22,\x20not\x20folder.','label','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','str','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','menu_not_folder','appCode','376117hmNRXu','menu','verification','19680sXXozf','\x20is\x20no\x20longer\x20type\x20folder.','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','5395428yBjpPA','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','verify\x20folder\x20update','failed','1865064aGWRiu','220896UqkuaS','rabetbase\x20menu\x20list\x20--format\x20json','write','selector','trim','9tATMgh','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','validation','--label\x20cannot\x20be\x20empty.','\x20already\x20matches\x20the\x20requested\x20state.','/smartapi/menu/update','POST','Menu\x20','4784035MRFBBF','cookie','Folder\x20','\x20sort\x20update\x20did\x20not\x20take\x20effect.','Update\x20request\x20for\x20folder\x20','parentId','menu\x20list','6wiSvuO','update\x20folder','1548XPJsBf','folder','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','hash','4Fkyjcc','Updated\x20folder\x20','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','New\x20folder\x20label','type','2351470BxoGSd'];a133_0x3782=function(){return _0x176370;};return a133_0x3782();}
1
+ const a133_0x301f01=a133_0xb38b;(function(_0x33ce18,_0x569d52){const _0x167ae8=a133_0xb38b,_0x5361ec=_0x33ce18();while(!![]){try{const _0x1b656e=parseInt(_0x167ae8(0xb3))/0x1+parseInt(_0x167ae8(0xa2))/0x2+-parseInt(_0x167ae8(0xcd))/0x3*(-parseInt(_0x167ae8(0xb0))/0x4)+-parseInt(_0x167ae8(0xac))/0x5+-parseInt(_0x167ae8(0xcc))/0x6+-parseInt(_0x167ae8(0xc5))/0x7+-parseInt(_0x167ae8(0xa4))/0x8*(-parseInt(_0x167ae8(0xc6))/0x9);if(_0x1b656e===_0x569d52)break;else _0x5361ec['push'](_0x5361ec['shift']());}catch(_0x5cac41){_0x5361ec['push'](_0x5361ec['shift']());}}}(a133_0x48d8,0xe9621));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';function a133_0x48d8(){const _0x3bac31=['\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','/smartapi/menu/update','label','hash','menu_not_folder','str','verification','\x22,\x20not\x20folder.','string','\x20already\x20matches\x20the\x20requested\x20state.','verify\x20folder\x20update','\x20sort\x20update\x20did\x20not\x20take\x20effect.','appCode','\x20is\x20type\x20\x22','menu\x20list','3778530UlaUwD','54QQzdFO','parent-id','Folder\x20','\x20is\x20no\x20longer\x20type\x20folder.','update\x20folder','Update\x20request\x20for\x20folder\x20','10904112qMBqcB','3oiMRKm','Updated\x20folder\x20','selector','parentId','Would\x20update\x20folder\x20','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','Menu\x20','cookie','--label\x20cannot\x20be\x20empty.','validation','481146jXzkWH','New\x20folder\x20label','1866016hsaPmA','sort','No\x20online\x20fields\x20would\x20change.','group-update','type','unknown','failed','trim','3107405tYbexn','POST','\x20label\x20update\x20did\x20not\x20take\x20effect.','folder','6396524zadfXu','menu','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','695344QQYnUi','update'];a133_0x48d8=function(){return _0x3bac31;};return a133_0x48d8();}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a133_0x301f01(0xb7)}];export const menuGroupUpdate={'service':a133_0x301f01(0xb1),'command':a133_0x301f01(0xa7),'description':a133_0x301f01(0xd2),'risk':'write','structuredErrors':!![],'rejectedFlags':[{'name':a133_0x301f01(0xc7),'message':a133_0x301f01(0xb2),'hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a133_0x301f01(0xb8),'type':a133_0x301f01(0xbe),'description':a133_0x301f01(0xa3)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x45b39d){validateUpdateInput(_0x45b39d);},async 'dryRun'(_0x2b3b6f){const _0x4fab74=a133_0x301f01;validateUpdateInput(_0x2b3b6f);const {plan:_0x949f64,patch:_0x1305a6}=await buildUpdatePlan(_0x2b3b6f,!![]);return menuDryRunResult(_0x949f64,{'method':_0x4fab74(0xad),'url':_0x4fab74(0xb7),'body':_0x1305a6,'description':_0x4fab74(0xd1)+_0x949f64[_0x4fab74(0xcf)]['id']+'.'});},async 'execute'(_0xa6510){const _0x2d0943=a133_0x301f01;validateUpdateInput(_0xa6510);const {plan:_0x3496be,patch:_0x4bcabc,noChanges:_0x335b30}=await buildUpdatePlan(_0xa6510,![]),_0x5e29b1=Number(_0x3496be[_0x2d0943(0xcf)]['id']),_0x367ad4=await recheckMutationSnapshot(_0xa6510,_0x3496be,_0x2d0943(0xca),_0x5e29b1);if(!_0x335b30)try{await updateMenuEntity(_0xa6510[_0x2d0943(0xc2)],_0xa6510[_0x2d0943(0x9f)],_0x4bcabc);}catch(_0x1a3fd2){const _0x29dac6=mapMenuApiError(_0x1a3fd2,_0x2d0943(0xca),_0x5e29b1);throw menuFailure(_0x29dac6,_0x3496be,{'stage':_0x2d0943(0xb4),'failed':{'id':_0x5e29b1}});}let _0x28ebed=_0x367ad4,_0x330b79;try{!_0x335b30&&(_0x28ebed=await fetchMenuSnapshot(_0xa6510[_0x2d0943(0xc2)],_0xa6510[_0x2d0943(0x9f)])),_0x330b79=requireMenu(_0x28ebed,_0x5e29b1),verifyPatch(_0x330b79,_0x4bcabc),_0x330b79['parentId']!=null&&requireFolder(_0x28ebed,_0x330b79[_0x2d0943(0xd0)]);}catch(_0x18c9fe){const _0x31eaf1=describeMenuErrorCause(_0x18c9fe,_0x2d0943(0xc0),_0x5e29b1),_0x656fd=asVerificationError(_0x18c9fe,_0x2d0943(0xcb)+_0x5e29b1+_0x2d0943(0xb5));throw menuFailure(_0x656fd,_0x3496be,{'stage':_0x2d0943(0xbc),'succeeded':[{'id':_0x5e29b1,'updateRequested':!_0x335b30,'skipped':_0x335b30}],'failed':{'id':_0x5e29b1,'requestedStateConfirmed':![],..._0x31eaf1},'warnings':['The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0x2d0943(0xaa),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x5e29b1}});}const _0x52c58b=mutationResult({..._0x3496be,'after':_0x330b79,'dryRun':![],'succeeded':[{'id':_0x5e29b1,'updated':!_0x335b30,'skipped':_0x335b30}],'verification':{'checkedBy':_0x2d0943(0xc4),'snapshotHash':_0x28ebed['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x52c58b,'message':_0x335b30?_0x2d0943(0xc8)+_0x5e29b1+_0x2d0943(0xbf):_0x2d0943(0xce)+_0x5e29b1+'.'};}};function a133_0xb38b(_0x166069,_0x5409c8){_0x166069=_0x166069-0x9f;const _0x48d861=a133_0x48d8();let _0xb38b57=_0x48d861[_0x166069];return _0xb38b57;}function validateUpdateInput(_0x24d288){const _0x57a0e5=a133_0x301f01;validateExactId(_0x24d288);if(hasFlag(_0x24d288,_0x57a0e5(0xc7)))throw CliErrors[_0x57a0e5(0xa1)](_0x57a0e5(0xb2),'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.');if(!hasFlag(_0x24d288,_0x57a0e5(0xb8))&&!hasFlag(_0x24d288,_0x57a0e5(0xa5)))throw CliErrors['validation']('At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.');if(hasFlag(_0x24d288,'label')&&!_0x24d288[_0x57a0e5(0xbb)](_0x57a0e5(0xb8))['trim']())throw CliErrors[_0x57a0e5(0xa1)](_0x57a0e5(0xa0));validateSort(_0x24d288);}async function buildUpdatePlan(_0x5917c8,_0x5972c3){const _0x3c8716=a133_0x301f01,_0x50ca7f=validateExactId(_0x5917c8),_0x1e9dcf=await fetchMutationSnapshot(_0x5917c8,_0x3c8716(0xca),_0x50ca7f),_0x544c68=requireMenu(_0x1e9dcf,_0x50ca7f);if(_0x544c68[_0x3c8716(0xa8)]!==_0x3c8716(0xaf))throw menuError(_0x3c8716(0xba),_0x3c8716(0xd3)+_0x50ca7f+_0x3c8716(0xc3)+(_0x544c68['type']||_0x3c8716(0xa9))+_0x3c8716(0xbd),_0x3c8716(0xb6));assertExpectedState(_0x5917c8,_0x544c68);const _0x2e3894={'id':_0x50ca7f},_0x1b2bd9={..._0x544c68};if(hasFlag(_0x5917c8,_0x3c8716(0xb8))){const _0x74bcc7=_0x5917c8[_0x3c8716(0xbb)]('label')[_0x3c8716(0xab)]();_0x2e3894[_0x3c8716(0xb8)]=_0x74bcc7,_0x1b2bd9[_0x3c8716(0xb8)]=_0x74bcc7;}if(hasFlag(_0x5917c8,_0x3c8716(0xa5))){const _0x17878f=validateSort(_0x5917c8);_0x2e3894['sort']=_0x17878f,_0x1b2bd9[_0x3c8716(0xa5)]=_0x17878f;}const _0x229b59=sameRequestedState(_0x544c68,_0x1b2bd9),_0x191073=_0x229b59?[_0x3c8716(0xa6)]:[];return{'patch':_0x2e3894,'noChanges':_0x229b59,'plan':mutationResult({'operation':_0x3c8716(0xa7),'selector':{'id':_0x50ca7f},'before':_0x544c68,'after':_0x1b2bd9,'dryRun':_0x5972c3,'backend':[...BACKEND],'snapshotHash':_0x1e9dcf[_0x3c8716(0xb9)],'warnings':_0x191073})};}function sameRequestedState(_0xc0ebff,_0x3c5886){const _0xc91cff=a133_0x301f01;return _0xc0ebff[_0xc91cff(0xb8)]===_0x3c5886[_0xc91cff(0xb8)]&&_0xc0ebff[_0xc91cff(0xa5)]===_0x3c5886[_0xc91cff(0xa5)];}function verifyPatch(_0x85ffdd,_0x3c5dc5){const _0x38e941=a133_0x301f01;assertVerified(_0x85ffdd['type']===_0x38e941(0xaf),_0x38e941(0xd3)+_0x85ffdd['id']+_0x38e941(0xc9)),_0x3c5dc5['label']!==undefined&&assertVerified(_0x85ffdd['label']===_0x3c5dc5[_0x38e941(0xb8)],_0x38e941(0xc8)+_0x85ffdd['id']+_0x38e941(0xae)),_0x3c5dc5['sort']!==undefined&&assertVerified(_0x85ffdd['sort']===_0x3c5dc5['sort'],_0x38e941(0xc8)+_0x85ffdd['id']+_0x38e941(0xc1));}
@@ -1 +1 @@
1
- (function(_0xcff11c,_0x326233){const _0xf29112=a134_0x52fe,_0x3a92db=_0xcff11c();while(!![]){try{const _0x34a359=parseInt(_0xf29112(0x178))/0x1+-parseInt(_0xf29112(0x17a))/0x2*(parseInt(_0xf29112(0x17b))/0x3)+-parseInt(_0xf29112(0x17d))/0x4+parseInt(_0xf29112(0x179))/0x5+-parseInt(_0xf29112(0x180))/0x6*(-parseInt(_0xf29112(0x17f))/0x7)+parseInt(_0xf29112(0x17e))/0x8+parseInt(_0xf29112(0x181))/0x9*(-parseInt(_0xf29112(0x17c))/0xa);if(_0x34a359===_0x326233)break;else _0x3a92db['push'](_0x3a92db['shift']());}catch(_0x9c1bb0){_0x3a92db['push'](_0x3a92db['shift']());}}}(a134_0x1736,0x59bba));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';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];function a134_0x52fe(_0x24d4e7,_0x8d89){_0x24d4e7=_0x24d4e7-0x178;const _0x173630=a134_0x1736();let _0x52fe05=_0x173630[_0x24d4e7];return _0x52fe05;}function a134_0x1736(){const _0x4fd1bd=['1246xKgRic','1635kDgWsB','118630FICNmE','1446028YJDwZI','2631656ziWKpT','3142979SoMrQe','6xBgatP','387eTTCqD','351707YiBTmW','2245180KVwcRt'];a134_0x1736=function(){return _0x4fd1bd;};return a134_0x1736();}
1
+ (function(_0x2f1934,_0x46279d){const _0x4f608c=a134_0x488d,_0x26ebec=_0x2f1934();while(!![]){try{const _0x185e05=-parseInt(_0x4f608c(0x1ac))/0x1+-parseInt(_0x4f608c(0x1a4))/0x2*(-parseInt(_0x4f608c(0x1ab))/0x3)+-parseInt(_0x4f608c(0x1a9))/0x4*(-parseInt(_0x4f608c(0x1ad))/0x5)+parseInt(_0x4f608c(0x1a8))/0x6*(-parseInt(_0x4f608c(0x1aa))/0x7)+-parseInt(_0x4f608c(0x1a7))/0x8+parseInt(_0x4f608c(0x1a6))/0x9+parseInt(_0x4f608c(0x1a5))/0xa;if(_0x185e05===_0x46279d)break;else _0x26ebec['push'](_0x26ebec['shift']());}catch(_0x50b6e4){_0x26ebec['push'](_0x26ebec['shift']());}}}(a134_0x1abd,0xb5db4));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';function a134_0x488d(_0x53e865,_0x1a3632){_0x53e865=_0x53e865-0x1a4;const _0x1abdb5=a134_0x1abd();let _0x488dc9=_0x1abdb5[_0x53e865];return _0x488dc9;}function a134_0x1abd(){const _0x1d5bac=['1080pcqBqu','6118qTEFmK','3mIrsmz','152205AgyQln','20560ZWxcJf','530246aDlbdd','1424970ClTHID','5992713bUqoYF','3196144CQiaqb','6090uMyFGm'];a134_0x1abd=function(){return _0x1d5bac;};return a134_0x1abd();}import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
@@ -1 +1 @@
1
- const a135_0x1ae158=a135_0xe072;(function(_0x132989,_0x193439){const _0x5a2dce=a135_0xe072,_0x1721a0=_0x132989();while(!![]){try{const _0x5cce43=-parseInt(_0x5a2dce(0xda))/0x1+-parseInt(_0x5a2dce(0xd8))/0x2*(-parseInt(_0x5a2dce(0xd4))/0x3)+parseInt(_0x5a2dce(0xe7))/0x4*(parseInt(_0x5a2dce(0xe8))/0x5)+-parseInt(_0x5a2dce(0xe4))/0x6+-parseInt(_0x5a2dce(0xe9))/0x7+-parseInt(_0x5a2dce(0xdf))/0x8+parseInt(_0x5a2dce(0xe3))/0x9;if(_0x5cce43===_0x193439)break;else _0x1721a0['push'](_0x1721a0['shift']());}catch(_0xa30c46){_0x1721a0['push'](_0x1721a0['shift']());}}}(a135_0x6749,0x75c03));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a135_0xe072(_0x43d0cd,_0x450b15){_0x43d0cd=_0x43d0cd-0xd3;const _0x674940=a135_0x6749();let _0xe07227=_0x674940[_0x43d0cd];return _0xe07227;}function a135_0x6749(){const _0x197f90=['bool','boolean','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','menus','1781320nmMYYu','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','read','total','16942959JFbVCf','3202482rfktAC','menu','verbose','1284676OMJAUW','5aRBFDP','4107537sRVIfS','map','appCode','3dlUJeQ','hash','No\x20menus\x20found.','Found\x20','6302jTeMdm','cookie','381361ZIjmXP'];a135_0x6749=function(){return _0x197f90;};return a135_0x6749();}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a135_0x1ae158(0xe5),'command':'list','description':a135_0x1ae158(0xdd),'risk':a135_0x1ae158(0xe1),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a135_0x1ae158(0xe6),'type':a135_0x1ae158(0xdc),'description':a135_0x1ae158(0xe0)}],async 'execute'(_0x27256b){const _0x294f3e=a135_0x1ae158,_0x298e80=_0x27256b[_0x294f3e(0xdb)](_0x294f3e(0xe6)),_0x36949d=await fetchMenuSnapshot(_0x27256b[_0x294f3e(0xd3)],_0x27256b[_0x294f3e(0xd9)],{'verbose':_0x298e80});return{'ok':!![],'data':{'total':_0x36949d[_0x294f3e(0xe2)],'snapshotHash':_0x36949d[_0x294f3e(0xd5)],'menus':_0x36949d[_0x294f3e(0xde)][_0x294f3e(0xea)](toMenuListItem)},'message':_0x36949d[_0x294f3e(0xe2)]===0x0?_0x294f3e(0xd6):_0x294f3e(0xd7)+_0x36949d[_0x294f3e(0xe2)]+'\x20menu(s)'};}};
1
+ function a135_0x4ad3(_0x1a31ae,_0xf644d3){_0x1a31ae=_0x1a31ae-0x1ca;const _0x153c0d=a135_0x153c();let _0x4ad347=_0x153c0d[_0x1a31ae];return _0x4ad347;}function a135_0x153c(){const _0x97a073=['41zLckHC','1956315lUkdkJ','boolean','710uffpRx','858395CaljDY','24KZuhIk','No\x20menus\x20found.','33649YCpVoq','menu','3366671ZulKfm','232KvFjjC','bool','verbose','cookie','list','map','\x20menu(s)','total','109413tAhxYK','menus','32374kImbtF','526460KDHaLI','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app'];a135_0x153c=function(){return _0x97a073;};return a135_0x153c();}const a135_0x194d69=a135_0x4ad3;(function(_0x2d9d09,_0x330e69){const _0x5a735e=a135_0x4ad3,_0x1f5fb7=_0x2d9d09();while(!![]){try{const _0x47a63e=parseInt(_0x5a735e(0x1d7))/0x1*(parseInt(_0x5a735e(0x1d3))/0x2)+-parseInt(_0x5a735e(0x1d8))/0x3+-parseInt(_0x5a735e(0x1d4))/0x4+-parseInt(_0x5a735e(0x1db))/0x5*(parseInt(_0x5a735e(0x1dc))/0x6)+-parseInt(_0x5a735e(0x1de))/0x7*(-parseInt(_0x5a735e(0x1e1))/0x8)+parseInt(_0x5a735e(0x1d1))/0x9*(parseInt(_0x5a735e(0x1da))/0xa)+parseInt(_0x5a735e(0x1e0))/0xb;if(_0x47a63e===_0x330e69)break;else _0x1f5fb7['push'](_0x1f5fb7['shift']());}catch(_0x4e6e96){_0x1f5fb7['push'](_0x1f5fb7['shift']());}}}(a135_0x153c,0x7a852));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a135_0x194d69(0x1df),'command':a135_0x194d69(0x1cd),'description':a135_0x194d69(0x1d6),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a135_0x194d69(0x1cb),'type':a135_0x194d69(0x1d9),'description':a135_0x194d69(0x1d5)}],async 'execute'(_0x5714fc){const _0x1571bc=a135_0x194d69,_0x34dbb0=_0x5714fc[_0x1571bc(0x1ca)](_0x1571bc(0x1cb)),_0x3b3d3a=await fetchMenuSnapshot(_0x5714fc['appCode'],_0x5714fc[_0x1571bc(0x1cc)],{'verbose':_0x34dbb0});return{'ok':!![],'data':{'total':_0x3b3d3a[_0x1571bc(0x1d0)],'snapshotHash':_0x3b3d3a['hash'],'menus':_0x3b3d3a[_0x1571bc(0x1d2)][_0x1571bc(0x1ce)](toMenuListItem)},'message':_0x3b3d3a[_0x1571bc(0x1d0)]===0x0?_0x1571bc(0x1dd):'Found\x20'+_0x3b3d3a['total']+_0x1571bc(0x1cf)};}};
@@ -1 +1 @@
1
- const a136_0x128c2c=a136_0x1008;(function(_0x4520ff,_0x52d959){const _0x3b9722=a136_0x1008,_0x16e63d=_0x4520ff();while(!![]){try{const _0x2c7cd2=parseInt(_0x3b9722(0x111))/0x1*(-parseInt(_0x3b9722(0x123))/0x2)+-parseInt(_0x3b9722(0x129))/0x3+parseInt(_0x3b9722(0x138))/0x4+-parseInt(_0x3b9722(0x12f))/0x5+-parseInt(_0x3b9722(0x12d))/0x6*(-parseInt(_0x3b9722(0x134))/0x7)+parseInt(_0x3b9722(0x11e))/0x8*(parseInt(_0x3b9722(0x116))/0x9)+parseInt(_0x3b9722(0x127))/0xa*(parseInt(_0x3b9722(0x10b))/0xb);if(_0x2c7cd2===_0x52d959)break;else _0x16e63d['push'](_0x16e63d['shift']());}catch(_0x37c415){_0x16e63d['push'](_0x16e63d['shift']());}}}(a136_0x42bc,0x66877));function a136_0x42bc(){const _0x72a1e3=['hash','205636KIsGDu','after','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','Would\x20move\x20menu\x20','POST','Moved\x20menu\x20','11VQoXXH','write','Menu\x20','appCode','move','/smartapi/menu/update','18262PdKEFl','update','parent-id','expect-parent-id','childrenCount','27rzYdMh','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','menu','type','sort','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','folder','rabetbase\x20menu\x20list\x20--format\x20compress','209816IWKFcI','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','\x20is\x20no\x20longer\x20a\x20leaf.','86KreXOw','\x20is\x20now\x20type\x20folder.','cookie','verify\x20menu\x20move','14821550hqAwot','parentId','408648rMlVNG','failed','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','menu\x20list','2501718vBbcIs','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','3438785fYbRfO','menu_state_drift',',\x20current\x20','move\x20menu','verification','7TGTjHe','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','move-menu'];a136_0x42bc=function(){return _0x72a1e3;};return a136_0x42bc();}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':a136_0x128c2c(0x109),'path':a136_0x128c2c(0x110)}];export const menuMove={'service':a136_0x128c2c(0x118),'command':a136_0x128c2c(0x10f),'description':a136_0x128c2c(0x11f),'risk':a136_0x128c2c(0x10c),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2b5cd9){validateMoveInput(_0x2b5cd9);},async 'dryRun'(_0x56998b){const _0x1286ff=a136_0x128c2c,{plan:_0x3ba414,patch:_0x184981}=await buildMovePlan(_0x56998b,!![]);return menuDryRunResult(_0x3ba414,{'method':_0x1286ff(0x109),'url':_0x1286ff(0x110),'body':{..._0x184981,'appCode':_0x56998b[_0x1286ff(0x10e)]},'description':_0x1286ff(0x108)+_0x184981['id']+'.'});},async 'execute'(_0x501649){const _0x4ce11d=a136_0x128c2c;validateMoveInput(_0x501649);const {plan:_0x871475,patch:_0x10f741,noChanges:_0x51a3ff,snapshot:_0x1025fc}=await buildMovePlan(_0x501649,![]),_0x57fcac=_0x10f741['id'];if(!_0x51a3ff)try{await updateMenuEntity(_0x501649[_0x4ce11d(0x10e)],_0x501649[_0x4ce11d(0x125)],_0x10f741);}catch(_0x10b368){const _0x44a121=mapMenuApiError(_0x10b368,'move',_0x57fcac);throw menuFailure(_0x44a121,_0x871475,{'stage':_0x4ce11d(0x112),'failed':{'id':_0x57fcac},'warnings':[_0x4ce11d(0x135)],'verification':{'status':'failed','targetId':_0x57fcac,'lookupCommand':_0x4ce11d(0x11d)}});}let _0x2c6479,_0x2e3548;try{_0x2c6479=_0x51a3ff?_0x1025fc:await fetchMenuSnapshot(_0x501649[_0x4ce11d(0x10e)],_0x501649[_0x4ce11d(0x125)]),_0x2e3548=requireMenu(_0x2c6479,_0x57fcac),verifyMove(_0x2e3548,_0x871475[_0x4ce11d(0x139)]),_0x2e3548[_0x4ce11d(0x128)]!==null&&requireFolder(_0x2c6479,_0x2e3548['parentId']);}catch(_0x423038){const _0x30cc96=describeMenuErrorCause(_0x423038,_0x4ce11d(0x126),_0x57fcac),_0xddeb9e=asVerificationError(_0x423038,'Move\x20request\x20for\x20menu\x20'+_0x57fcac+_0x4ce11d(0x12e));throw menuFailure(_0xddeb9e,_0x871475,{'stage':_0x4ce11d(0x133),'succeeded':[{'id':_0x57fcac,'updateRequested':!_0x51a3ff,'skipped':_0x51a3ff}],'failed':{'id':_0x57fcac,'requestedStateConfirmed':![],..._0x30cc96},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x4ce11d(0x12a),'targetId':_0x57fcac,'lookupCommand':_0x4ce11d(0x11d)}});}const _0x54061b=mutationResult({..._0x871475,'after':_0x2e3548,'dryRun':![],'succeeded':[{'id':_0x57fcac,'updated':!_0x51a3ff,'skipped':_0x51a3ff}],'verification':{'checkedBy':_0x4ce11d(0x12c),'snapshotHash':_0x2c6479[_0x4ce11d(0x137)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x54061b,'message':_0x51a3ff?_0x4ce11d(0x10d)+_0x57fcac+_0x4ce11d(0x121):_0x4ce11d(0x10a)+_0x57fcac+'.'};}};function validateMoveInput(_0x551305){const _0x3dbc65=a136_0x128c2c;validateExactId(_0x551305),parseParentId(_0x551305,_0x3dbc65(0x113),{'required':!![]}),parseParentId(_0x551305,_0x3dbc65(0x114),{'required':!![]}),validateSort(_0x551305);}async function buildMovePlan(_0x7c6e4c,_0x51da82){const _0x2dcfce=a136_0x128c2c,_0x54176c=validateExactId(_0x7c6e4c),_0x338075=parseParentId(_0x7c6e4c,_0x2dcfce(0x113),{'required':!![]}),_0x39c322=parseParentId(_0x7c6e4c,_0x2dcfce(0x114),{'required':!![]}),_0x4ba3d3=validateSort(_0x7c6e4c),_0x275a0f=await fetchMutationSnapshot(_0x7c6e4c,_0x2dcfce(0x132),_0x54176c),_0x39eeed=requireMenu(_0x275a0f,_0x54176c);if(_0x39eeed[_0x2dcfce(0x119)]==='folder'||_0x39eeed['childrenCount']!==0x0)throw menuError('menu_move_source_not_leaf',_0x2dcfce(0x10d)+_0x54176c+_0x2dcfce(0x120),_0x2dcfce(0x12b));if(_0x39eeed[_0x2dcfce(0x128)]!==_0x39c322)throw menuError(_0x2dcfce(0x130),_0x2dcfce(0x10d)+_0x54176c+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x39c322)+_0x2dcfce(0x131)+formatParent(_0x39eeed[_0x2dcfce(0x128)])+'.',_0x2dcfce(0x11b));_0x338075!==null&&requireFolder(_0x275a0f,_0x338075);const _0x307070=_0x4ba3d3??(_0x39eeed[_0x2dcfce(0x128)]===_0x338075?_0x39eeed[_0x2dcfce(0x11a)]??0x0:nextSiblingSort(_0x275a0f,_0x338075,_0x2dcfce(0x118))),_0x41b6e2={..._0x39eeed,'parentId':_0x338075,'sort':_0x307070},_0x4dbb68={'id':_0x54176c,'parentId':toApiParentId(_0x338075),'sort':_0x307070},_0x5c3fdf=_0x39eeed[_0x2dcfce(0x128)]===_0x338075&&_0x39eeed[_0x2dcfce(0x11a)]===_0x307070;return{'patch':_0x4dbb68,'noChanges':_0x5c3fdf,'snapshot':_0x275a0f,'plan':mutationResult({'operation':_0x2dcfce(0x10f),'selector':{'id':_0x54176c,'parentId':_0x338075},'before':_0x39eeed,'after':_0x41b6e2,'dryRun':_0x51da82,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2dcfce(0x136),'method':_0x2dcfce(0x109),'path':_0x2dcfce(0x110),'body':{..._0x4dbb68,'appCode':_0x7c6e4c[_0x2dcfce(0x10e)]}}],'snapshotHash':_0x275a0f[_0x2dcfce(0x137)],'warnings':_0x5c3fdf?[_0x2dcfce(0x107)]:[]})};}function a136_0x1008(_0x3da357,_0xc778a3){_0x3da357=_0x3da357-0x107;const _0x42bcfa=a136_0x42bc();let _0x10080c=_0x42bcfa[_0x3da357];return _0x10080c;}function verifyMove(_0x968b97,_0x167e88){const _0xb3f878=a136_0x128c2c;assertVerified(_0x968b97[_0xb3f878(0x119)]!==_0xb3f878(0x11c),_0xb3f878(0x10d)+_0x968b97['id']+_0xb3f878(0x124)),assertVerified(_0x968b97[_0xb3f878(0x115)]===0x0,_0xb3f878(0x10d)+_0x968b97['id']+_0xb3f878(0x122)),assertVerified(_0x968b97[_0xb3f878(0x128)]===_0x167e88[_0xb3f878(0x128)],_0xb3f878(0x10d)+_0x968b97['id']+'\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.'),assertVerified(_0x968b97[_0xb3f878(0x11a)]===_0x167e88[_0xb3f878(0x11a)],_0xb3f878(0x10d)+_0x968b97['id']+_0xb3f878(0x117));}
1
+ const a136_0x3e7843=a136_0x58ee;(function(_0x5364c1,_0x124725){const _0x50e4b0=a136_0x58ee,_0x44ae7b=_0x5364c1();while(!![]){try{const _0x43023b=parseInt(_0x50e4b0(0xa1))/0x1*(-parseInt(_0x50e4b0(0xb8))/0x2)+-parseInt(_0x50e4b0(0xa7))/0x3+-parseInt(_0x50e4b0(0xb6))/0x4+parseInt(_0x50e4b0(0xcc))/0x5+parseInt(_0x50e4b0(0xc9))/0x6*(parseInt(_0x50e4b0(0xca))/0x7)+-parseInt(_0x50e4b0(0xc1))/0x8*(-parseInt(_0x50e4b0(0xbd))/0x9)+parseInt(_0x50e4b0(0xc4))/0xa;if(_0x43023b===_0x124725)break;else _0x44ae7b['push'](_0x44ae7b['shift']());}catch(_0x287668){_0x44ae7b['push'](_0x44ae7b['shift']());}}}(a136_0x4534,0x1ee79));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';function a136_0x4534(){const _0x9c6581=['hash','\x20is\x20now\x20type\x20folder.','appCode','menu','586449giPTqr','expect-parent-id','failed','move','folder','update','menu\x20list','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','verification',',\x20current\x20','write','move\x20menu','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','POST','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','1003336lGmXlo','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','37308fkVpHs','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','rabetbase\x20menu\x20list\x20--format\x20compress','9VzGZbK','cookie','type','parentId','33088dMUTJq','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','sort','5170240DtOuPk','/smartapi/menu/update','\x20is\x20no\x20longer\x20a\x20leaf.','parent-id','\x20parent\x20changed:\x20expected\x20','54ZrZBsT','130018mvvjOx','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','262310cvjnCH','Menu\x20','Moved\x20menu\x20','menu_move_source_not_leaf','Would\x20move\x20menu\x20','menu_state_drift','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','9qNkRIK','verify\x20menu\x20move'];a136_0x4534=function(){return _0x9c6581;};return a136_0x4534();}import{updateMenuEntity}from'../../commands/menu/shared/service.js';const BACKEND=[{'method':a136_0x3e7843(0xb4),'path':a136_0x3e7843(0xc5)}];export const menuMove={'service':'menu','command':a136_0x3e7843(0xaa),'description':a136_0x3e7843(0xbb),'risk':a136_0x3e7843(0xb1),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x348c79){validateMoveInput(_0x348c79);},async 'dryRun'(_0x160589){const _0x15cf5d=a136_0x3e7843,{plan:_0xf2404d,patch:_0x837353}=await buildMovePlan(_0x160589,!![]);return menuDryRunResult(_0xf2404d,{'method':'POST','url':_0x15cf5d(0xc5),'body':{..._0x837353,'appCode':_0x160589['appCode']},'description':_0x15cf5d(0x9e)+_0x837353['id']+'.'});},async 'execute'(_0x241ed4){const _0x177d8d=a136_0x3e7843;validateMoveInput(_0x241ed4);const {plan:_0x104877,patch:_0x369893,noChanges:_0x1d180c,snapshot:_0x238f5d}=await buildMovePlan(_0x241ed4,![]),_0x32c93f=_0x369893['id'];if(!_0x1d180c)try{await updateMenuEntity(_0x241ed4[_0x177d8d(0xa5)],_0x241ed4[_0x177d8d(0xbe)],_0x369893);}catch(_0x1ca8d8){const _0x245759=mapMenuApiError(_0x1ca8d8,_0x177d8d(0xaa),_0x32c93f);throw menuFailure(_0x245759,_0x104877,{'stage':_0x177d8d(0xac),'failed':{'id':_0x32c93f},'warnings':[_0x177d8d(0xa0)],'verification':{'status':'failed','targetId':_0x32c93f,'lookupCommand':_0x177d8d(0xbc)}});}let _0x3f92e5,_0x2d8a26;try{_0x3f92e5=_0x1d180c?_0x238f5d:await fetchMenuSnapshot(_0x241ed4[_0x177d8d(0xa5)],_0x241ed4[_0x177d8d(0xbe)]),_0x2d8a26=requireMenu(_0x3f92e5,_0x32c93f),verifyMove(_0x2d8a26,_0x104877['after']),_0x2d8a26[_0x177d8d(0xc0)]!==null&&requireFolder(_0x3f92e5,_0x2d8a26[_0x177d8d(0xc0)]);}catch(_0x48bfb5){const _0x22d1d6=describeMenuErrorCause(_0x48bfb5,_0x177d8d(0xa2),_0x32c93f),_0x5c4505=asVerificationError(_0x48bfb5,'Move\x20request\x20for\x20menu\x20'+_0x32c93f+_0x177d8d(0xb7));throw menuFailure(_0x5c4505,_0x104877,{'stage':_0x177d8d(0xaf),'succeeded':[{'id':_0x32c93f,'updateRequested':!_0x1d180c,'skipped':_0x1d180c}],'failed':{'id':_0x32c93f,'requestedStateConfirmed':![],..._0x22d1d6},'warnings':[_0x177d8d(0xb5)],'verification':{'status':_0x177d8d(0xa9),'targetId':_0x32c93f,'lookupCommand':_0x177d8d(0xbc)}});}const _0x4e3d24=mutationResult({..._0x104877,'after':_0x2d8a26,'dryRun':![],'succeeded':[{'id':_0x32c93f,'updated':!_0x1d180c,'skipped':_0x1d180c}],'verification':{'checkedBy':_0x177d8d(0xad),'snapshotHash':_0x3f92e5[_0x177d8d(0xa3)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x4e3d24,'message':_0x1d180c?_0x177d8d(0xcd)+_0x32c93f+_0x177d8d(0xae):_0x177d8d(0xce)+_0x32c93f+'.'};}};function validateMoveInput(_0x2017fc){const _0x2cccc8=a136_0x3e7843;validateExactId(_0x2017fc),parseParentId(_0x2017fc,_0x2cccc8(0xc7),{'required':!![]}),parseParentId(_0x2017fc,_0x2cccc8(0xa8),{'required':!![]}),validateSort(_0x2017fc);}function a136_0x58ee(_0x16b434,_0x16c8ff){_0x16b434=_0x16b434-0x9d;const _0x453472=a136_0x4534();let _0x58eefe=_0x453472[_0x16b434];return _0x58eefe;}async function buildMovePlan(_0x1cbd7d,_0xf203b6){const _0x43730d=a136_0x3e7843,_0x433370=validateExactId(_0x1cbd7d),_0x2185c6=parseParentId(_0x1cbd7d,'parent-id',{'required':!![]}),_0x52debb=parseParentId(_0x1cbd7d,_0x43730d(0xa8),{'required':!![]}),_0x2de2a0=validateSort(_0x1cbd7d),_0xfdb6bc=await fetchMutationSnapshot(_0x1cbd7d,_0x43730d(0xb2),_0x433370),_0x313537=requireMenu(_0xfdb6bc,_0x433370);if(_0x313537[_0x43730d(0xbf)]===_0x43730d(0xab)||_0x313537['childrenCount']!==0x0)throw menuError(_0x43730d(0x9d),_0x43730d(0xcd)+_0x433370+_0x43730d(0xcb),_0x43730d(0xb3));if(_0x313537[_0x43730d(0xc0)]!==_0x52debb)throw menuError(_0x43730d(0x9f),_0x43730d(0xcd)+_0x433370+_0x43730d(0xc8)+formatParent(_0x52debb)+_0x43730d(0xb0)+formatParent(_0x313537['parentId'])+'.',_0x43730d(0xba));_0x2185c6!==null&&requireFolder(_0xfdb6bc,_0x2185c6);const _0x110719=_0x2de2a0??(_0x313537[_0x43730d(0xc0)]===_0x2185c6?_0x313537[_0x43730d(0xc3)]??0x0:nextSiblingSort(_0xfdb6bc,_0x2185c6,_0x43730d(0xa6))),_0x3191a1={..._0x313537,'parentId':_0x2185c6,'sort':_0x110719},_0x5640c8={'id':_0x433370,'parentId':toApiParentId(_0x2185c6),'sort':_0x110719},_0x5331bb=_0x313537[_0x43730d(0xc0)]===_0x2185c6&&_0x313537[_0x43730d(0xc3)]===_0x110719;return{'patch':_0x5640c8,'noChanges':_0x5331bb,'snapshot':_0xfdb6bc,'plan':mutationResult({'operation':_0x43730d(0xaa),'selector':{'id':_0x433370,'parentId':_0x2185c6},'before':_0x313537,'after':_0x3191a1,'dryRun':_0xf203b6,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':'POST','path':_0x43730d(0xc5),'body':{..._0x5640c8,'appCode':_0x1cbd7d[_0x43730d(0xa5)]}}],'snapshotHash':_0xfdb6bc['hash'],'warnings':_0x5331bb?[_0x43730d(0xc2)]:[]})};}function verifyMove(_0xf908ff,_0x2d10ea){const _0xc0d6a5=a136_0x3e7843;assertVerified(_0xf908ff[_0xc0d6a5(0xbf)]!=='folder',_0xc0d6a5(0xcd)+_0xf908ff['id']+_0xc0d6a5(0xa4)),assertVerified(_0xf908ff['childrenCount']===0x0,_0xc0d6a5(0xcd)+_0xf908ff['id']+_0xc0d6a5(0xc6)),assertVerified(_0xf908ff[_0xc0d6a5(0xc0)]===_0x2d10ea[_0xc0d6a5(0xc0)],'Menu\x20'+_0xf908ff['id']+'\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.'),assertVerified(_0xf908ff[_0xc0d6a5(0xc3)]===_0x2d10ea[_0xc0d6a5(0xc3)],_0xc0d6a5(0xcd)+_0xf908ff['id']+_0xc0d6a5(0xb9));}