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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/api-group.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/api/legacy-api-file.js +1 -1
  7. package/lib/api/model-registry-file.js +1 -1
  8. package/lib/api/model-registry-scaffold.js +1 -1
  9. package/lib/api/model-source.js +1 -1
  10. package/lib/auth/auth-server-ui.js +1 -1
  11. package/lib/auth/auth-server.js +1 -1
  12. package/lib/auth/constant.js +1 -1
  13. package/lib/auth/get-cookie.js +1 -1
  14. package/lib/auth/get-session-user.js +1 -1
  15. package/lib/auth/is-session-valid.js +1 -1
  16. package/lib/auth/login-success-html.js +1 -1
  17. package/lib/auth/logout.js +1 -1
  18. package/lib/cli-flags.js +1 -1
  19. package/lib/cli.js +1 -1
  20. package/lib/commands/api/generate.js +1 -1
  21. package/lib/commands/api/index.js +1 -1
  22. package/lib/commands/api/list.js +1 -1
  23. package/lib/commands/api/pull.js +1 -1
  24. package/lib/commands/api/shared.js +1 -1
  25. package/lib/commands/app/detail.js +1 -1
  26. package/lib/commands/app/index.js +1 -1
  27. package/lib/commands/app/list.js +1 -1
  28. package/lib/commands/app/members-list.js +1 -1
  29. package/lib/commands/app/remote-directory.js +1 -1
  30. package/lib/commands/app/shared.js +1 -1
  31. package/lib/commands/app-config/delete.js +1 -1
  32. package/lib/commands/app-config/get.js +1 -1
  33. package/lib/commands/app-config/index.js +1 -1
  34. package/lib/commands/app-config/list.js +1 -1
  35. package/lib/commands/app-config/set.js +1 -1
  36. package/lib/commands/app-config/shared.js +1 -1
  37. package/lib/commands/auth/index.js +1 -1
  38. package/lib/commands/bff/create.js +1 -1
  39. package/lib/commands/bff/delete.js +1 -1
  40. package/lib/commands/bff/detail.js +1 -1
  41. package/lib/commands/bff/index.js +1 -1
  42. package/lib/commands/bff/list.js +1 -1
  43. package/lib/commands/bff/logs.js +1 -1
  44. package/lib/commands/bff/pull.js +1 -1
  45. package/lib/commands/bff/push.js +1 -1
  46. package/lib/commands/bff/status.js +1 -1
  47. package/lib/commands/cli-skill/index.js +1 -1
  48. package/lib/commands/cli-update.js +1 -1
  49. package/lib/commands/codegen/index.js +1 -1
  50. package/lib/commands/codegen/sdk.js +1 -1
  51. package/lib/commands/codegen/sql.js +1 -1
  52. package/lib/commands/common/app-registry.js +1 -1
  53. package/lib/commands/common/app-selector.js +1 -1
  54. package/lib/commands/common/async-task.js +1 -1
  55. package/lib/commands/common/dry-run.js +1 -1
  56. package/lib/commands/common/flags.js +1 -1
  57. package/lib/commands/common/local-file.js +1 -1
  58. package/lib/commands/common/validate.js +1 -1
  59. package/lib/commands/config/delete.js +1 -1
  60. package/lib/commands/config/get.js +1 -1
  61. package/lib/commands/config/index.js +1 -1
  62. package/lib/commands/config/init.js +1 -1
  63. package/lib/commands/config/list.js +1 -1
  64. package/lib/commands/config/set.js +1 -1
  65. package/lib/commands/config/shared.js +1 -1
  66. package/lib/commands/dataset/batch-design.js +1 -1
  67. package/lib/commands/dataset/business-group-update.js +1 -1
  68. package/lib/commands/dataset/business-groups.js +1 -1
  69. package/lib/commands/dataset/capability.js +1 -1
  70. package/lib/commands/dataset/cross-relation-create.js +1 -1
  71. package/lib/commands/dataset/cross-relation-delete.js +1 -1
  72. package/lib/commands/dataset/cross-relation-list.js +1 -1
  73. package/lib/commands/dataset/cross-relation-shared.js +1 -1
  74. package/lib/commands/dataset/cross-relation-update.js +1 -1
  75. package/lib/commands/dataset/delete.js +1 -1
  76. package/lib/commands/dataset/detail.js +1 -1
  77. package/lib/commands/dataset/extend-update.js +1 -1
  78. package/lib/commands/dataset/field-restore.js +1 -1
  79. package/lib/commands/dataset/field-update.js +1 -1
  80. package/lib/commands/dataset/generate.js +1 -1
  81. package/lib/commands/dataset/index.js +1 -1
  82. package/lib/commands/dataset/list.js +1 -1
  83. package/lib/commands/dataset/operations.js +1 -1
  84. package/lib/commands/dataset/relation-audit.js +1 -1
  85. package/lib/commands/dataset/relation-create.js +1 -1
  86. package/lib/commands/dataset/relation-delete.js +1 -1
  87. package/lib/commands/dataset/relation-shared.js +1 -1
  88. package/lib/commands/dataset/relation-update.js +1 -1
  89. package/lib/commands/dataset/relations.js +1 -1
  90. package/lib/commands/dataset/rename.js +1 -1
  91. package/lib/commands/dataset/restore.js +1 -1
  92. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  93. package/lib/commands/db/analysis-batching.js +1 -1
  94. package/lib/commands/db/analyze-batch-plan.js +1 -1
  95. package/lib/commands/db/analyze-cancel.js +1 -1
  96. package/lib/commands/db/analyze-start.js +1 -1
  97. package/lib/commands/db/analyze-status.js +1 -1
  98. package/lib/commands/db/create.js +1 -1
  99. package/lib/commands/db/delete.js +1 -1
  100. package/lib/commands/db/detail.js +1 -1
  101. package/lib/commands/db/diff-refresh-start.js +1 -1
  102. package/lib/commands/db/diff-refresh-status.js +1 -1
  103. package/lib/commands/db/diff.js +1 -1
  104. package/lib/commands/db/index.js +1 -1
  105. package/lib/commands/db/list.js +1 -1
  106. package/lib/commands/db/shared.js +1 -1
  107. package/lib/commands/db/table-diff-shared.js +1 -1
  108. package/lib/commands/db/tables.js +1 -1
  109. package/lib/commands/db/test.js +1 -1
  110. package/lib/commands/db/update.js +1 -1
  111. package/lib/commands/deployment/index.js +1 -1
  112. package/lib/commands/deployment/sync-all.js +1 -1
  113. package/lib/commands/deployment/sync-jobs.js +1 -1
  114. package/lib/commands/deployment/sync-status.js +1 -1
  115. package/lib/commands/doctor.js +1 -1
  116. package/lib/commands/file/index.js +1 -1
  117. package/lib/commands/flow/create.js +1 -1
  118. package/lib/commands/flow/detail.js +1 -1
  119. package/lib/commands/flow/index.js +1 -1
  120. package/lib/commands/flow/list.js +1 -1
  121. package/lib/commands/flow/publish.js +1 -1
  122. package/lib/commands/flow/runtime-resources-shared.js +1 -1
  123. package/lib/commands/flow/runtime-role-list.js +1 -1
  124. package/lib/commands/flow/runtime-role-user-list.js +1 -1
  125. package/lib/commands/flow/runtime-user-search.js +1 -1
  126. package/lib/commands/flow/shared.js +1 -1
  127. package/lib/commands/flow/update.js +1 -1
  128. package/lib/commands/flow/validate.js +1 -1
  129. package/lib/commands/instant-api-policy/current.js +1 -1
  130. package/lib/commands/instant-api-policy/index.js +1 -1
  131. package/lib/commands/instant-api-policy/init.js +1 -1
  132. package/lib/commands/instant-api-policy/publish.js +1 -1
  133. package/lib/commands/instant-api-policy/pull.js +1 -1
  134. package/lib/commands/instant-api-policy/revision.js +1 -1
  135. package/lib/commands/instant-api-policy/revisions.js +1 -1
  136. package/lib/commands/instant-api-policy/rollback.js +1 -1
  137. package/lib/commands/instant-api-policy/shared.js +1 -1
  138. package/lib/commands/instant-api-policy/validate.js +1 -1
  139. package/lib/commands/issue/index.js +1 -1
  140. package/lib/commands/issue/nudge.js +1 -1
  141. package/lib/commands/issue/report.js +1 -1
  142. package/lib/commands/issue/shared.js +1 -1
  143. package/lib/commands/kb/create.js +1 -1
  144. package/lib/commands/kb/delete.js +1 -1
  145. package/lib/commands/kb/detail.js +1 -1
  146. package/lib/commands/kb/index.js +1 -1
  147. package/lib/commands/kb/list.js +1 -1
  148. package/lib/commands/kb/search.js +1 -1
  149. package/lib/commands/kb/shared.js +1 -1
  150. package/lib/commands/kb/update.js +1 -1
  151. package/lib/commands/logs/index.js +1 -1
  152. package/lib/commands/menu/asset-update.js +1 -1
  153. package/lib/commands/menu/delete.js +1 -1
  154. package/lib/commands/menu/external-link-create.js +1 -1
  155. package/lib/commands/menu/external-link-update.js +1 -1
  156. package/lib/commands/menu/group-create.js +1 -1
  157. package/lib/commands/menu/group-update.js +1 -1
  158. package/lib/commands/menu/index.js +1 -1
  159. package/lib/commands/menu/list.js +1 -1
  160. package/lib/commands/menu/move.js +1 -1
  161. package/lib/commands/menu/regroup-start.js +1 -1
  162. package/lib/commands/menu/rename.js +1 -1
  163. package/lib/commands/menu/shared/compare-table.js +1 -1
  164. package/lib/commands/menu/shared/delete-plan.js +1 -1
  165. package/lib/commands/menu/shared/facts.js +1 -1
  166. package/lib/commands/menu/shared/index.js +1 -1
  167. package/lib/commands/menu/shared/inquirer.js +1 -1
  168. package/lib/commands/menu/shared/local-pages.js +1 -1
  169. package/lib/commands/menu/shared/logic.js +1 -1
  170. package/lib/commands/menu/shared/mutations.js +1 -1
  171. package/lib/commands/menu/shared/path.js +1 -1
  172. package/lib/commands/menu/shared/service.js +1 -1
  173. package/lib/commands/menu/shared/subapp-assets.js +1 -1
  174. package/lib/commands/menu/shared/sync-core.js +1 -1
  175. package/lib/commands/menu/shared/update-core.js +1 -1
  176. package/lib/commands/menu/shared/valid-url.js +1 -1
  177. package/lib/commands/menu/subapp-assets-status.js +1 -1
  178. package/lib/commands/menu/subapp-assets-update.js +1 -1
  179. package/lib/commands/menu/sync.js +1 -1
  180. package/lib/commands/menu/visibility-update.js +1 -1
  181. package/lib/commands/notification/config-create.js +1 -1
  182. package/lib/commands/notification/config-delete.js +1 -1
  183. package/lib/commands/notification/config-list.js +1 -1
  184. package/lib/commands/notification/config-update.js +1 -1
  185. package/lib/commands/notification/index.js +1 -1
  186. package/lib/commands/notification/shared.js +1 -1
  187. package/lib/commands/ocr/index.js +1 -1
  188. package/lib/commands/page/create.js +1 -1
  189. package/lib/commands/page/custom/detail.js +1 -1
  190. package/lib/commands/page/custom/list.js +1 -1
  191. package/lib/commands/page/custom/publish.js +1 -1
  192. package/lib/commands/page/custom/shared.js +1 -1
  193. package/lib/commands/page/custom/syntax.js +1 -1
  194. package/lib/commands/page/custom/update.js +1 -1
  195. package/lib/commands/page/data-list-status.js +1 -1
  196. package/lib/commands/page/generate-start.js +1 -1
  197. package/lib/commands/page/generate-status.js +1 -1
  198. package/lib/commands/page/index.js +1 -1
  199. package/lib/commands/page/pull.js +1 -1
  200. package/lib/commands/page/push.js +1 -1
  201. package/lib/commands/page/relation-audit.js +1 -1
  202. package/lib/commands/page/restore.js +1 -1
  203. package/lib/commands/page/shared.js +1 -1
  204. package/lib/commands/page/sync.js +1 -1
  205. package/lib/commands/project/api-architecture-upgrade.js +1 -1
  206. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  207. package/lib/commands/project/create/format-elapsed.js +1 -1
  208. package/lib/commands/project/create/main.js +1 -1
  209. package/lib/commands/project/create/materialize-project-template.js +1 -1
  210. package/lib/commands/project/create/project-name.js +1 -1
  211. package/lib/commands/project/create/project-template-archive.js +1 -1
  212. package/lib/commands/project/create/project-template-path.js +1 -1
  213. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  214. package/lib/commands/project/create/use-format-code.js +1 -1
  215. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  216. package/lib/commands/project/domain-routing-sync.js +1 -1
  217. package/lib/commands/project/index.js +1 -1
  218. package/lib/commands/project/upgrade.js +1 -1
  219. package/lib/commands/registry.js +1 -1
  220. package/lib/commands/role/delete.js +1 -1
  221. package/lib/commands/role/detail.js +1 -1
  222. package/lib/commands/role/index.js +1 -1
  223. package/lib/commands/role/list.js +1 -1
  224. package/lib/commands/role/shared.js +1 -1
  225. package/lib/commands/role/update.js +1 -1
  226. package/lib/commands/role/user-add.js +1 -1
  227. package/lib/commands/role/user-remove.js +1 -1
  228. package/lib/commands/role/user-resolve.js +1 -1
  229. package/lib/commands/rule/get.js +1 -1
  230. package/lib/commands/rule/index.js +1 -1
  231. package/lib/commands/rule/list.js +1 -1
  232. package/lib/commands/rule/set.js +1 -1
  233. package/lib/commands/rule/shared.js +1 -1
  234. package/lib/commands/run/index.js +1 -1
  235. package/lib/commands/schema.js +1 -1
  236. package/lib/commands/sql/create.js +1 -1
  237. package/lib/commands/sql/delete.js +1 -1
  238. package/lib/commands/sql/detail.js +1 -1
  239. package/lib/commands/sql/exec.js +1 -1
  240. package/lib/commands/sql/index.js +1 -1
  241. package/lib/commands/sql/list.js +1 -1
  242. package/lib/commands/sql/pull.js +1 -1
  243. package/lib/commands/sql/push.js +1 -1
  244. package/lib/commands/sql/shared.js +1 -1
  245. package/lib/commands/sql/status.js +1 -1
  246. package/lib/commands/sql/validate.js +1 -1
  247. package/lib/commands/task/index.js +1 -1
  248. package/lib/commands/task/status.js +1 -1
  249. package/lib/commands/tenant/index.js +1 -1
  250. package/lib/commands/tenant/members-list.js +1 -1
  251. package/lib/commands/tenant/shared.js +1 -1
  252. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  253. package/lib/commands/user-account/feishu-bind.js +1 -1
  254. package/lib/commands/user-account/index.js +1 -1
  255. package/lib/commands/workspace/add.js +1 -1
  256. package/lib/commands/workspace/index.js +1 -1
  257. package/lib/commands/workspace/remove.js +1 -1
  258. package/lib/config/domain-config.js +1 -1
  259. package/lib/config/project-domain-routing.js +1 -1
  260. package/lib/config/region-config.js +1 -1
  261. package/lib/config/schema.js +1 -1
  262. package/lib/constant/cdn.js +1 -1
  263. package/lib/constant/cli.js +1 -1
  264. package/lib/constant/defaults.js +1 -1
  265. package/lib/constant/domain.js +1 -1
  266. package/lib/constant/env.js +1 -1
  267. package/lib/constant/output.js +1 -1
  268. package/lib/constant/paths.js +1 -1
  269. package/lib/constant/region.js +1 -1
  270. package/lib/constant/risk.js +1 -1
  271. package/lib/constant/routing-profile.js +1 -1
  272. package/lib/context/app-resolver.js +1 -1
  273. package/lib/context/auth-resolver.js +1 -1
  274. package/lib/context/config-loader.js +1 -1
  275. package/lib/context.js +1 -1
  276. package/lib/core/alias-resolver.js +1 -1
  277. package/lib/core/api-client.js +1 -1
  278. package/lib/core/bff/config.js +1 -1
  279. package/lib/core/bff/file-system.js +1 -1
  280. package/lib/core/bff/hash.js +1 -1
  281. package/lib/core/bff/hook-directory.js +1 -1
  282. package/lib/core/bff/lock.js +1 -1
  283. package/lib/core/bff/utils.js +1 -1
  284. package/lib/core/cross-db-relation.js +1 -1
  285. package/lib/core/db-resolver.js +1 -1
  286. package/lib/core/flow-config.js +1 -1
  287. package/lib/core/instant-api-policy/config.js +1 -1
  288. package/lib/core/kb-search-client.js +1 -1
  289. package/lib/core/page/file-system.js +1 -1
  290. package/lib/core/page/hash.js +1 -1
  291. package/lib/core/page/lock.js +1 -1
  292. package/lib/core/page/lr-smart-jsx.js +1 -1
  293. package/lib/core/sql-index-auditor.js +1 -1
  294. package/lib/core/sql-sync/config.js +1 -1
  295. package/lib/core/sql-sync/file-system.js +1 -1
  296. package/lib/core/sql-sync/hash.js +1 -1
  297. package/lib/core/sql-sync/lock.js +1 -1
  298. package/lib/core/sql-sync/utils.js +1 -1
  299. package/lib/core/sql-validator.js +1 -1
  300. package/lib/errors.js +1 -1
  301. package/lib/framework/build-all-flags.js +1 -1
  302. package/lib/framework/error-output.js +1 -1
  303. package/lib/framework/explicit-yes.js +1 -1
  304. package/lib/framework/flags.js +1 -1
  305. package/lib/framework/help.js +1 -1
  306. package/lib/framework/index.js +1 -1
  307. package/lib/framework/output.js +1 -1
  308. package/lib/framework/response.js +1 -1
  309. package/lib/framework/runner-alias.js +1 -1
  310. package/lib/framework/runner.js +1 -1
  311. package/lib/framework/schema-export.js +1 -1
  312. package/lib/framework/supported-flags.js +1 -1
  313. package/lib/framework/types.js +1 -1
  314. package/lib/generated/build-info.d.ts +4 -4
  315. package/lib/generated/build-info.js +1 -1
  316. package/lib/generated/official-routing.js +1 -1
  317. package/lib/generated/routing-contract.js +1 -1
  318. package/lib/help.js +1 -1
  319. package/lib/postinstall.js +1 -1
  320. package/lib/runtime/confirmation.js +1 -1
  321. package/lib/runtime/event.js +1 -1
  322. package/lib/runtime/index.js +1 -1
  323. package/lib/runtime/queue.js +1 -1
  324. package/lib/runtime/resolve.js +1 -1
  325. package/lib/skills/builtin-skill.js +1 -1
  326. package/lib/skills/main.js +1 -1
  327. package/lib/skills/npx-skills-add.js +1 -1
  328. package/lib/skills/skill-presence.js +1 -1
  329. package/lib/telemetry/cli-command-trace.js +1 -1
  330. package/lib/telemetry/cli-help-trace.js +1 -1
  331. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  332. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  333. package/lib/telemetry/send-cli-trace-log.js +1 -1
  334. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  335. package/lib/utils/ai_config.js +1 -1
  336. package/lib/utils/apply-jq-filter.js +1 -1
  337. package/lib/utils/cdn-config.js +1 -1
  338. package/lib/utils/check-sdk-version.js +1 -1
  339. package/lib/utils/cli-version-check.js +1 -1
  340. package/lib/utils/cli-version-policy.js +1 -1
  341. package/lib/utils/config.js +1 -1
  342. package/lib/utils/entity-with-id.js +1 -1
  343. package/lib/utils/file-utils.js +1 -1
  344. package/lib/utils/guides-cdn.js +1 -1
  345. package/lib/utils/http-client.js +1 -1
  346. package/lib/utils/is-non-interactive.js +1 -1
  347. package/lib/utils/logger.js +1 -1
  348. package/lib/utils/params.js +1 -1
  349. package/lib/utils/platform.js +1 -1
  350. package/lib/utils/sleep.js +1 -1
  351. package/lib/utils/template-replacer.js +1 -1
  352. package/lib/utils/update-notice.js +1 -1
  353. package/lib/utils/version.js +1 -1
  354. package/lib/utils/with-active-cookie.js +1 -1
  355. package/lib/utils/write-cli-side-channel.js +1 -1
  356. package/package.json +1 -1
  357. package/skills/rabetbase/SKILL.md +3 -3
  358. package/skills/rabetbase/guides/independent-deployment.md +11 -1
  359. package/skills/rabetbase/references/rabetbase-config.md +16 -19
  360. package/skills/rabetbase/references/rabetbase-menu-visibility-update.md +5 -4
  361. package/skills/rabetbase/references/rabetbase-workspace.md +3 -1
  362. package/skills/rabetbase-page-generation/SKILL.md +13 -9
  363. package/skills/rabetbase-page-generation/references/component-baseline.md +2 -2
  364. package/skills/rabetbase-page-generation/references/generation.md +64 -15
  365. package/skills/rabetbase-page-generation/templates/onepage/build.mjs +39 -54
  366. package/skills/rabetbase-page-generation/templates/onepage/list/index.jsx +6 -2
  367. package/skills/rabetbase.manifest.json +3 -3
@@ -1 +1 @@
1
- const a153_0x3504cc=a153_0x2a4a;function a153_0x34e6(){const _0x288bbc=['visible','parent-id','expectedPath','fromEntries','createdId','boolean','menu_url_credentials_forbidden','create-recovery','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','stringify','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','How\x20to\x20open\x20the\x20external\x20website','password','menu_create_recovery_required','create\x20external\x20menu','appCode','menu\x20list','menu_state_drift','map','menu_open_mode_invalid','Recovered\x20created\x20external\x20menu\x20','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','causemessage','Menu\x20','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','label','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','afterPlan','527565ugOAyX','object','704KRzhXL','expectedSnapshotHash','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','7224EIeLkQ','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','Menu\x20label','str','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','body','menu_url_https_required','succeeded','223836jPzQJk','replace','readbackerror','protocol','currentSnapshotHash','rabetbase\x20menu\x20list\x20--appcode\x20','Run\x20','isArray','url','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','POST','13625530dxmNoG','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','recovered','menu_mutation_failed','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','hash','call','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','<redacted>','entries','External\x20HTTPS\x20URL','menu_sort_invalid','link','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','rawFlags','plan','before','\x20could\x20not\x20be\x20verified.','new-window','type','parentId','lookupCommand','Would\x20create\x20external\x20website\x20link\x20menu\x20','after','cookie','open-mode','cause','https:','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','sort','parent','byId','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','bool','has','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','\x20with\x20','data','/smartapi/menu/create','username','embedded','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','503150QjCqia','684sAKdTR','\x20--format\x20compress','Provide\x20an\x20HTTPS\x20URL.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','path','create-response-validation','failed','isSafeInteger','Created\x20external\x20menu\x20','URL','length','Created\x20menu\x20','trim','37842VuBStf','menu_not_found','string','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','\x20failed\x20final\x20verification.','code','hasOwnProperty','18441DeJhsh','create-menu','\x20has\x20an\x20unexpected\x20','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','includes','verification','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','485sEYlOq','menu','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','menu_verification_failed','menu_url_invalid','filter','flagMissing'];a153_0x34e6=function(){return _0x288bbc;};return a153_0x34e6();}(function(_0x27b36a,_0x10ead6){const _0x44dc41=a153_0x2a4a,_0x21f4a2=_0x27b36a();while(!![]){try{const _0x29adeb=-parseInt(_0x44dc41(0x1c2))/0x1+-parseInt(_0x44dc41(0x18d))/0x2+-parseInt(_0x44dc41(0x17f))/0x3+parseInt(_0x44dc41(0x184))/0x4*(parseInt(_0x44dc41(0x15b))/0x5)+-parseInt(_0x44dc41(0x1c3))/0x6*(parseInt(_0x44dc41(0x14d))/0x7)+parseInt(_0x44dc41(0x181))/0x8*(parseInt(_0x44dc41(0x154))/0x9)+parseInt(_0x44dc41(0x198))/0xa;if(_0x29adeb===_0x10ead6)break;else _0x21f4a2['push'](_0x21f4a2['shift']());}catch(_0xc6f724){_0x21f4a2['push'](_0x21f4a2['shift']());}}}(a153_0x34e6,0x4be38));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':a153_0x3504cc(0x1a4)};export function validateExternalMenuUrl(_0x43657b){const _0x912021=a153_0x3504cc,_0x471c67=_0x43657b[_0x912021(0x14c)]();let _0x520ac3;try{_0x520ac3=new URL(_0x471c67);}catch{throw menuError(_0x912021(0x15f),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x912021(0x143));}if(_0x520ac3[_0x912021(0x190)]!==_0x912021(0x1b3))throw menuError(_0x912021(0x18b),_0x912021(0x19c),_0x912021(0x142));if(_0x520ac3[_0x912021(0x1bf)]||_0x520ac3[_0x912021(0x16e)])throw menuError(_0x912021(0x168),_0x912021(0x16c),_0x912021(0x183));return _0x471c67;}export const menuExternalLinkCreate={'service':a153_0x3504cc(0x15c),'command':'external-link-create','description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':'write','structuredErrors':!![],'flags':[{'name':a153_0x3504cc(0x17c),'type':a153_0x3504cc(0x14f),'required':!![],'description':a153_0x3504cc(0x187)},{'name':a153_0x3504cc(0x1b1),'type':a153_0x3504cc(0x14f),'required':!![],'enum':[a153_0x3504cc(0x1c0),a153_0x3504cc(0x1aa)],'description':a153_0x3504cc(0x16d)},{'name':a153_0x3504cc(0x195),'type':'string','required':!![],'description':a153_0x3504cc(0x1a2)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a153_0x3504cc(0x162),'type':a153_0x3504cc(0x167),'default':!![],'description':'Whether\x20the\x20menu\x20is\x20visible'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3e7f7d){validateAddInput(_0x3e7f7d);},async 'dryRun'(_0x2c5764){const _0x20c86b=a153_0x3504cc;validateAddInput(_0x2c5764);const {plan:_0x28469a}=await buildSafeAddPlan(_0x2c5764,!![]),_0x5a4c4a=_0x28469a[_0x20c86b(0x1af)],_0x12cc95=createBody(_0x5a4c4a);return menuDryRunResult(_0x28469a,{'method':_0x20c86b(0x197),'url':'/smartapi/menu/create','body':_0x12cc95,'description':_0x20c86b(0x1ae)+JSON[_0x20c86b(0x16b)](_0x5a4c4a[_0x20c86b(0x17c)])+_0x20c86b(0x1bc)+_0x2c5764[_0x20c86b(0x188)]('open-mode')+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x37dc14){const _0x4b7d7e=a153_0x3504cc;validateAddInput(_0x37dc14);const _0x367be6=await buildSafeAddPlan(_0x37dc14,![]),{plan:_0x154972,snapshot:_0x36c6c5}=_0x367be6,_0x3c3ff6=_0x154972[_0x4b7d7e(0x1af)],_0x13541f=buildMenuLookupCommand(_0x37dc14[_0x4b7d7e(0x171)]);await recheckAddSnapshot(_0x37dc14,_0x154972);let _0x7b8ee2;try{_0x7b8ee2=await createMenuEntity(_0x37dc14[_0x4b7d7e(0x171)],_0x37dc14['cookie'],createBody(_0x3c3ff6));}catch(_0x41f328){const _0x30b8e5=mapMenuApiError(_0x41f328,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x41f328)||_0x30b8e5['code']==='menu_permission_denied')throw externalLinkCreateFailure(_0x30b8e5,_0x154972,{'stage':'create','failed':{},'verification':{'status':_0x4b7d7e(0x146),'lookupCommand':_0x13541f}});return recoverAfterResponseLoss(_0x37dc14,_0x367be6,_0x13541f);}const _0x3aab82=Number(_0x7b8ee2?.['id']),_0x570ae9=typeof _0x7b8ee2?.[_0x4b7d7e(0x144)]===_0x4b7d7e(0x14f)?_0x7b8ee2[_0x4b7d7e(0x144)]:'';if(!Number['isSafeInteger'](_0x3aab82)||_0x3aab82<=0x0||!_0x570ae9[_0x4b7d7e(0x14c)]()){const _0x536fca=menuError('menu_create_response_invalid',_0x4b7d7e(0x185),_0x4b7d7e(0x193)+_0x13541f+'\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.');throw externalLinkCreateFailure(_0x536fca,_0x154972,{'stage':_0x4b7d7e(0x145),'succeeded':Number[_0x4b7d7e(0x147)](_0x3aab82)&&_0x3aab82>0x0?[{'id':_0x3aab82,'created':!![]}]:[],'failed':{'createdId':Number[_0x4b7d7e(0x147)](_0x3aab82)?_0x3aab82:null,'generatedPathConfirmed':Boolean(_0x570ae9['trim']())},'warnings':[_0x4b7d7e(0x177)],'after':Number[_0x4b7d7e(0x147)](_0x3aab82)&&_0x3aab82>0x0?{..._0x3c3ff6,'id':_0x3aab82,'path':_0x570ae9}:_0x3c3ff6,'verification':{'status':_0x4b7d7e(0x146),'lookupCommand':_0x13541f,...Number[_0x4b7d7e(0x147)](_0x3aab82)&&_0x3aab82>0x0?{'targetId':_0x3aab82}:{}}});}const _0x24af36=await readAndVerifyCreatedMenu({'appCode':_0x37dc14[_0x4b7d7e(0x171)],'cookie':_0x37dc14[_0x4b7d7e(0x1b0)],'plan':_0x154972,'afterPlan':_0x3c3ff6,'createdId':_0x3aab82,'expectedPath':_0x570ae9,'lookupCommand':_0x13541f,'recovered':![]});return creationSuccess(_0x154972,_0x24af36['snapshot'],_0x24af36['fact'],![]);}};function validateAddInput(_0x442d26){const _0x352024=a153_0x3504cc;if(!_0x442d26[_0x352024(0x188)]('label')[_0x352024(0x14c)]())throw CliErrors[_0x352024(0x161)]('label');resolveExternalMenuType(_0x442d26),validateExternalMenuUrl(_0x442d26[_0x352024(0x188)](_0x352024(0x195))),parseParentId(_0x442d26,_0x352024(0x163)),validateSort(_0x442d26);}function resolveExternalMenuType(_0x5d0a28){const _0x4fef19=a153_0x3504cc,_0xc57c5d=_0x5d0a28[_0x4fef19(0x188)](_0x4fef19(0x1b1))[_0x4fef19(0x14c)]();if(!_0xc57c5d)throw CliErrors['flagMissing']('open-mode');const _0x5744c0=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0xc57c5d];if(!_0x5744c0)throw menuError(_0x4fef19(0x175),_0x4fef19(0x19f),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x5744c0;}async function buildAddPlan(_0x313122,_0x3ab81d){const _0x3dbad6=a153_0x3504cc,_0x2cebf7=await fetchMutationSnapshot(_0x313122,_0x3dbad6(0x170)),_0x19f40e=parseParentId(_0x313122,_0x3dbad6(0x163))??null;if(_0x19f40e!=null)requireFolder(_0x2cebf7,_0x19f40e);const _0x11ba7c=validateSort(_0x313122),_0x15845e=_0x11ba7c??nextSiblingSort(_0x2cebf7,_0x19f40e,_0x3dbad6(0x15c)),_0x28520a=_0x313122[_0x3dbad6(0x188)](_0x3dbad6(0x17c))[_0x3dbad6(0x14c)](),_0x6f4f31=resolveExternalMenuType(_0x313122),_0x42dffb=validateExternalMenuUrl(_0x313122[_0x3dbad6(0x188)](_0x3dbad6(0x195))),_0x341e3d=Object['prototype'][_0x3dbad6(0x153)][_0x3dbad6(0x19e)](_0x313122[_0x3dbad6(0x1a6)],_0x3dbad6(0x162))?_0x313122[_0x3dbad6(0x1b9)]('visible'):!![],_0x439c1c={'id':null,'parentId':_0x19f40e,'label':_0x28520a,'path':'<platform-generated>','url':_0x42dffb,'type':_0x6f4f31,'visible':_0x341e3d,'sort':_0x15845e},_0x498124=buildMenuLookupCommand(_0x313122['appCode']),_0x493161=mutationResult({'operation':'add','selector':{'parentId':_0x19f40e,'type':_0x6f4f31,'label':_0x28520a,'url':_0x42dffb},'before':null,'after':_0x439c1c,'dryRun':_0x3ab81d,'backend':[{'method':_0x3dbad6(0x197),'path':_0x3dbad6(0x1be)}],'plannedActions':[{'stage':_0x3dbad6(0x155),'method':'POST','path':_0x3dbad6(0x1be),'body':createBody(_0x439c1c)}],'snapshotHash':_0x2cebf7[_0x3dbad6(0x19d)],'warnings':[_0x3dbad6(0x17b)],'verification':{'lookupCommand':_0x498124}});return{'plan':_0x493161,'snapshot':_0x2cebf7};}async function buildSafeAddPlan(_0x128c44,_0x1cac3b){try{return await buildAddPlan(_0x128c44,_0x1cac3b);}catch(_0x2d4ac4){throw safeMenuAddError(_0x2d4ac4);}}async function recheckAddSnapshot(_0x24d6ac,_0x202bac){const _0x25de27=a153_0x3504cc;try{await recheckMutationSnapshot(_0x24d6ac,_0x202bac,'create\x20external\x20menu');}catch(_0x23084b){const _0xa4499e=getFailureRecord(_0x23084b);throw externalLinkCreateFailure(_0x23084b,_0x202bac,{'stage':'pre-write-recheck','failed':{..._0xa4499e?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0xa4499e[_0x25de27(0x182)]}:{},..._0xa4499e?.['currentSnapshotHash']?{'currentSnapshotHash':_0xa4499e[_0x25de27(0x191)]}:{}}});}}function createBody(_0x377ede){const _0x3eb006=a153_0x3504cc;return{'parentId':toApiParentId(_0x377ede[_0x3eb006(0x1ac)]),'label':String(_0x377ede['label']),'type':String(_0x377ede['type']),'url':String(_0x377ede['url']),'visible':Boolean(_0x377ede[_0x3eb006(0x162)]),'sort':Number(_0x377ede[_0x3eb006(0x1b5)]),'extend':{}};}function buildMenuLookupCommand(_0x495dc0){const _0xcba7ae=a153_0x3504cc,_0x22a6d6='\x27'+_0x495dc0[_0xcba7ae(0x18e)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0xcba7ae(0x192)+_0x22a6d6+_0xcba7ae(0x1c4);}async function recoverAfterResponseLoss(_0x53f16d,_0x36a4d9,_0x53ecc1){const _0x4a50a1=a153_0x3504cc,{plan:_0x14bb9b,snapshot:_0x4e4420}=_0x36a4d9,_0x5b1ded=_0x14bb9b[_0x4a50a1(0x1af)];let _0x156e7c;try{_0x156e7c=await fetchMenuSnapshot(_0x53f16d[_0x4a50a1(0x171)],_0x53f16d[_0x4a50a1(0x1b0)]);}catch(_0x2cbb6b){throw recoveryRequiredFailure(_0x14bb9b,_0x53ecc1,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x232ca3=_0x156e7c['menus'][_0x4a50a1(0x160)](_0x1f9a51=>_0x1f9a51[_0x4a50a1(0x1ac)]===_0x5b1ded[_0x4a50a1(0x1ac)]&&_0x1f9a51[_0x4a50a1(0x1ab)]===_0x5b1ded['type']&&_0x1f9a51[_0x4a50a1(0x17c)]===_0x5b1ded[_0x4a50a1(0x17c)]&&_0x1f9a51[_0x4a50a1(0x195)]===_0x5b1ded[_0x4a50a1(0x195)]),_0x4e4cf2=_0x232ca3['filter'](_0x46c75a=>!_0x4e4420[_0x4a50a1(0x1b7)][_0x4a50a1(0x1ba)](_0x46c75a['id'])),_0x3fd212=_0x232ca3[_0x4a50a1(0x160)](_0x3db438=>_0x4e4420[_0x4a50a1(0x1b7)][_0x4a50a1(0x1ba)](_0x3db438['id']));if(_0x232ca3[_0x4a50a1(0x14a)]!==0x1||_0x4e4cf2[_0x4a50a1(0x14a)]!==0x1)throw recoveryRequiredFailure(_0x14bb9b,_0x53ecc1,{'matchCount':_0x232ca3[_0x4a50a1(0x14a)],'newMatchCount':_0x4e4cf2[_0x4a50a1(0x14a)],'preexistingMatchCount':_0x3fd212[_0x4a50a1(0x14a)]});const _0x7405ba=_0x4e4cf2[0x0];try{verifyCreatedFact(_0x7405ba,_0x7405ba['id'],_0x5b1ded,null);}catch(_0x228ca2){const _0x2658b7=_0x228ca2 instanceof Error&&_0x4a50a1(0x152)in _0x228ca2?_0x228ca2:menuError(_0x4a50a1(0x15e),'Recovered\x20menu\x20'+_0x7405ba['id']+_0x4a50a1(0x1a9),'Run\x20'+_0x53ecc1+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x2658b7,_0x14bb9b,{'stage':'verification','succeeded':[{'id':_0x7405ba['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x7405ba['id'],'finalFactsConfirmed':![]},'after':_0x7405ba,'warnings':['Menu\x20'+_0x7405ba['id']+_0x4a50a1(0x157)],'verification':{'status':_0x4a50a1(0x146),'targetId':_0x7405ba['id'],'recovered':!![],'lookupCommand':_0x53ecc1}});}return creationSuccess(_0x14bb9b,_0x156e7c,_0x7405ba,!![]);}function recoveryRequiredFailure(_0x10e707,_0x1d6261,_0x81112b){const _0x103b60=a153_0x3504cc,_0x3f0891=menuError(_0x103b60(0x16f),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.',_0x103b60(0x193)+_0x1d6261+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x3f0891,_0x10e707,{'stage':_0x103b60(0x169),'failed':_0x81112b,'warnings':[_0x103b60(0x150)],'verification':{'status':_0x103b60(0x146),..._0x81112b,'lookupCommand':_0x1d6261}});}async function readAndVerifyCreatedMenu(_0x2916d2){const _0x85c8c6=a153_0x3504cc;let _0x2f5782;try{_0x2f5782=await fetchMenuSnapshot(_0x2916d2[_0x85c8c6(0x171)],_0x2916d2['cookie']);}catch(_0x20a246){const _0x512dea=menuError(_0x85c8c6(0x15e),_0x85c8c6(0x179)+_0x2916d2[_0x85c8c6(0x166)]+_0x85c8c6(0x1b8),_0x85c8c6(0x193)+_0x2916d2['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x512dea,_0x2916d2[_0x85c8c6(0x1a7)],{'stage':'verification','succeeded':[{'id':_0x2916d2[_0x85c8c6(0x166)],'created':!![]}],'failed':{'id':_0x2916d2['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x2916d2[_0x85c8c6(0x17e)],'id':_0x2916d2[_0x85c8c6(0x166)],'path':_0x2916d2[_0x85c8c6(0x164)]},'warnings':[_0x85c8c6(0x179)+_0x2916d2[_0x85c8c6(0x166)]+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x85c8c6(0x146),'targetId':_0x2916d2['createdId'],'lookupCommand':_0x2916d2[_0x85c8c6(0x1ad)]}});}const _0x31de1c=_0x2f5782[_0x85c8c6(0x1b7)]['get'](_0x2916d2[_0x85c8c6(0x166)]);try{if(!_0x31de1c)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x2916d2[_0x85c8c6(0x166)]+_0x85c8c6(0x1a5),_0x85c8c6(0x193)+_0x2916d2['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x31de1c,_0x2916d2[_0x85c8c6(0x166)],_0x2916d2[_0x85c8c6(0x17e)],_0x2916d2[_0x85c8c6(0x164)]);}catch(_0x366317){const _0x35bd63=_0x366317 instanceof Error&&_0x85c8c6(0x152)in _0x366317?_0x366317:menuError(_0x85c8c6(0x15e),_0x85c8c6(0x14b)+_0x2916d2['createdId']+_0x85c8c6(0x151),_0x85c8c6(0x193)+_0x2916d2[_0x85c8c6(0x1ad)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x35bd63,_0x2916d2[_0x85c8c6(0x1a7)],{'stage':_0x85c8c6(0x159),'succeeded':[{'id':_0x2916d2['createdId'],'created':!![]}],'failed':{'id':_0x2916d2[_0x85c8c6(0x166)],'finalFactsConfirmed':![]},'after':_0x31de1c??{..._0x2916d2[_0x85c8c6(0x17e)],'id':_0x2916d2[_0x85c8c6(0x166)],'path':_0x2916d2[_0x85c8c6(0x164)]},'warnings':[_0x85c8c6(0x179)+_0x2916d2[_0x85c8c6(0x166)]+_0x85c8c6(0x15d)],'verification':{'status':_0x85c8c6(0x146),'targetId':_0x2916d2[_0x85c8c6(0x166)],'recovered':_0x2916d2[_0x85c8c6(0x19a)],'lookupCommand':_0x2916d2[_0x85c8c6(0x1ad)]}});}return{'snapshot':_0x2f5782,'fact':_0x31de1c};}function verifyCreatedFact(_0x43751c,_0x32bcd5,_0x2dc72d,_0x16c265){const _0x2d5165=a153_0x3504cc;if(!Number['isSafeInteger'](_0x43751c['id'])||_0x43751c['id']<=0x0||_0x43751c['id']!==_0x32bcd5)throw menuError('menu_verification_failed',_0x2d5165(0x17a),_0x2d5165(0x17d));const _0x172179=[[_0x2d5165(0x1b6),_0x43751c[_0x2d5165(0x1ac)],_0x2dc72d[_0x2d5165(0x1ac)]],['type',_0x43751c[_0x2d5165(0x1ab)],_0x2dc72d[_0x2d5165(0x1ab)]],[_0x2d5165(0x17c),_0x43751c[_0x2d5165(0x17c)],_0x2dc72d['label']],[_0x2d5165(0x149),_0x43751c[_0x2d5165(0x195)],_0x2dc72d['url']],['visibility',_0x43751c[_0x2d5165(0x162)],_0x2dc72d[_0x2d5165(0x162)]],['sort',_0x43751c[_0x2d5165(0x1b5)],_0x2dc72d[_0x2d5165(0x1b5)]]];for(const [_0x38b23a,_0x28cd86,_0x525bd9]of _0x172179){if(_0x28cd86!==_0x525bd9)throw menuError(_0x2d5165(0x15e),'Created\x20menu\x20'+_0x43751c['id']+_0x2d5165(0x156)+_0x38b23a+'.',_0x2d5165(0x196));}if(!_0x43751c[_0x2d5165(0x144)]['trim']()||_0x16c265!==null&&_0x43751c[_0x2d5165(0x144)]!==_0x16c265)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x43751c['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x2d5165(0x196));}function creationSuccess(_0xc8481f,_0x25d550,_0x34456e,_0x23097b){const _0x40ce48=a153_0x3504cc,_0x396bbf=mutationResult({..._0xc8481f,'after':_0x34456e,'dryRun':![],'succeeded':[{'id':_0x34456e['id'],'created':!![],'recovered':_0x23097b}],'verification':{'checkedBy':_0x40ce48(0x172),'snapshotHash':_0x25d550[_0x40ce48(0x19d)],'targetId':_0x34456e['id'],'recovered':_0x23097b,'path':_0x34456e[_0x40ce48(0x144)]}});return{'ok':!![],'message':_0x23097b?_0x40ce48(0x176)+_0x34456e['id']+'\x20after\x20response\x20loss.':_0x40ce48(0x148)+_0x34456e['id']+'.','data':{..._0x396bbf,'recovered':_0x23097b}};}function externalLinkCreateFailure(_0x3fbcc9,_0x5142da,_0x424ea6){const _0x1c501e=a153_0x3504cc;return menuFailure(safeMenuAddError(_0x3fbcc9),redactFailurePlan(_0x5142da),{..._0x424ea6,'succeeded':_0x424ea6['succeeded']?.[_0x1c501e(0x174)](redactFailureRecord),'failed':_0x424ea6['failed']?redactFailureRecord(_0x424ea6[_0x1c501e(0x146)]):undefined,'verification':_0x424ea6[_0x1c501e(0x159)]?redactFailureRecord(_0x424ea6[_0x1c501e(0x159)]):undefined,'after':_0x424ea6[_0x1c501e(0x1af)]===undefined?undefined:redactFailureValue(_0x424ea6[_0x1c501e(0x1af)])});}function redactFailurePlan(_0x384673){const _0x43e2ab=a153_0x3504cc;return{..._0x384673,'selector':redactFailureRecord(_0x384673['selector']),'before':redactFailureValue(_0x384673[_0x43e2ab(0x1a8)]),'after':redactFailureValue(_0x384673[_0x43e2ab(0x1af)]),'plannedActions':_0x384673['plannedActions']?.[_0x43e2ab(0x174)](_0x47506f=>({..._0x47506f,'body':redactFailureRecord(_0x47506f[_0x43e2ab(0x18a)])})),'succeeded':_0x384673[_0x43e2ab(0x18c)][_0x43e2ab(0x174)](redactFailureRecord),'failed':_0x384673[_0x43e2ab(0x146)][_0x43e2ab(0x174)](redactFailureRecord),'verification':_0x384673['verification']?redactFailureRecord(_0x384673[_0x43e2ab(0x159)]):undefined};}function redactFailureRecord(_0x3c578e){return redactFailureValue(_0x3c578e);}function a153_0x2a4a(_0x3aa9b8,_0x5353ed){_0x3aa9b8=_0x3aa9b8-0x142;const _0x34e69a=a153_0x34e6();let _0x2a4af9=_0x34e69a[_0x3aa9b8];return _0x2a4af9;}function redactFailureValue(_0x157239,_0x2b41f1=''){const _0x5685ba=a153_0x3504cc,_0xc73f38=_0x2b41f1['toLowerCase']()[_0x5685ba(0x18e)](/[^a-z0-9]/g,'');if([_0x5685ba(0x1b2),_0x5685ba(0x178),_0x5685ba(0x18f),'rawerror'][_0x5685ba(0x158)](_0xc73f38))return _0x5685ba(0x1a0);if(Array[_0x5685ba(0x194)](_0x157239))return _0x157239[_0x5685ba(0x174)](_0x25be11=>redactFailureValue(_0x25be11));if(_0x157239&&typeof _0x157239===_0x5685ba(0x180))return Object[_0x5685ba(0x165)](Object[_0x5685ba(0x1a1)](_0x157239)[_0x5685ba(0x174)](([_0x3368f6,_0x385613])=>[_0x3368f6,redactFailureValue(_0x385613,_0x3368f6)]));return _0x157239;}function safeMenuAddError(_0x232434){const _0x3d321d=a153_0x3504cc,_0x52b2dd=_0x232434 instanceof CliError?_0x232434['code']:_0x3d321d(0x19b);switch(_0x52b2dd){case _0x3d321d(0x173):return menuError(_0x52b2dd,'Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.',_0x3d321d(0x1c1));case'menu_permission_denied':return menuError(_0x52b2dd,_0x3d321d(0x15a),_0x3d321d(0x16a));case'menu_create_response_invalid':return menuError(_0x52b2dd,_0x3d321d(0x1b4),_0x3d321d(0x189));case _0x3d321d(0x15e):return menuError(_0x52b2dd,_0x3d321d(0x186),_0x3d321d(0x189));case _0x3d321d(0x16f):return menuError(_0x52b2dd,_0x3d321d(0x1bb),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x3d321d(0x19b):case _0x3d321d(0x14e):case'menu_parent_not_folder':case _0x3d321d(0x1a3):case'menu_sort_overflow':return menuError(_0x52b2dd,'External\x20menu\x20creation\x20failed.',_0x3d321d(0x199));default:return menuError(_0x3d321d(0x19b),'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x2590dd){const _0x56525a=a153_0x3504cc;if(!(_0x2590dd instanceof Error)||!(_0x56525a(0x1bd)in _0x2590dd))return undefined;const _0x3b1cf8=_0x2590dd[_0x56525a(0x1bd)];if(!_0x3b1cf8||typeof _0x3b1cf8!=='object')return undefined;const _0x10e7f5=_0x3b1cf8[_0x56525a(0x146)];if(!Array[_0x56525a(0x194)](_0x10e7f5)||!_0x10e7f5[0x0]||typeof _0x10e7f5[0x0]!==_0x56525a(0x180))return undefined;return _0x10e7f5[0x0];}
1
+ const a153_0x39bc34=a153_0x1708;(function(_0x468a1d,_0x2539c){const _0x2c1adc=a153_0x1708,_0x557e87=_0x468a1d();while(!![]){try{const _0x1794de=parseInt(_0x2c1adc(0x203))/0x1*(parseInt(_0x2c1adc(0x1bf))/0x2)+-parseInt(_0x2c1adc(0x1b1))/0x3*(-parseInt(_0x2c1adc(0x1fb))/0x4)+parseInt(_0x2c1adc(0x1fe))/0x5*(parseInt(_0x2c1adc(0x1b9))/0x6)+parseInt(_0x2c1adc(0x1ff))/0x7*(parseInt(_0x2c1adc(0x1e4))/0x8)+-parseInt(_0x2c1adc(0x198))/0x9*(parseInt(_0x2c1adc(0x224))/0xa)+parseInt(_0x2c1adc(0x1d7))/0xb*(-parseInt(_0x2c1adc(0x19f))/0xc)+-parseInt(_0x2c1adc(0x1a0))/0xd;if(_0x1794de===_0x2539c)break;else _0x557e87['push'](_0x557e87['shift']());}catch(_0x4f501c){_0x557e87['push'](_0x557e87['shift']());}}}(a153_0x2d2f,0x6f6ba));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':a153_0x39bc34(0x1c7),'new-window':a153_0x39bc34(0x1b7)};function a153_0x1708(_0x4c922b,_0x5e1cca){_0x4c922b=_0x4c922b-0x198;const _0x2d2f17=a153_0x2d2f();let _0x1708aa=_0x2d2f17[_0x4c922b];return _0x1708aa;}export function validateExternalMenuUrl(_0x53784e){const _0x302d49=a153_0x39bc34,_0x1aa062=_0x53784e[_0x302d49(0x1e5)]();let _0x1f53f8;try{_0x1f53f8=new URL(_0x1aa062);}catch{throw menuError('menu_url_invalid',_0x302d49(0x1c8),_0x302d49(0x1cb));}if(_0x1f53f8[_0x302d49(0x1a5)]!==_0x302d49(0x1b0))throw menuError('menu_url_https_required',_0x302d49(0x214),_0x302d49(0x199));if(_0x1f53f8['username']||_0x1f53f8[_0x302d49(0x218)])throw menuError('menu_url_credentials_forbidden','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x1aa062;}export const menuExternalLinkCreate={'service':a153_0x39bc34(0x1e8),'command':a153_0x39bc34(0x1be),'description':a153_0x39bc34(0x211),'risk':a153_0x39bc34(0x212),'structuredErrors':!![],'flags':[{'name':'label','type':a153_0x39bc34(0x200),'required':!![],'description':'Menu\x20label'},{'name':a153_0x39bc34(0x1df),'type':a153_0x39bc34(0x200),'required':!![],'enum':[a153_0x39bc34(0x226),'new-window'],'description':a153_0x39bc34(0x1c9)},{'name':a153_0x39bc34(0x217),'type':a153_0x39bc34(0x200),'required':!![],'description':a153_0x39bc34(0x1e1)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a153_0x39bc34(0x1a6),'type':a153_0x39bc34(0x1f1),'default':!![],'description':a153_0x39bc34(0x1d3)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x395622){validateAddInput(_0x395622);},async 'dryRun'(_0x284da5){const _0x11ec8b=a153_0x39bc34;validateAddInput(_0x284da5);const {plan:_0x2328a2}=await buildSafeAddPlan(_0x284da5,!![]),_0x38cfb7=_0x2328a2[_0x11ec8b(0x1ba)],_0x45752e=createBody(_0x38cfb7);return menuDryRunResult(_0x2328a2,{'method':_0x11ec8b(0x202),'url':_0x11ec8b(0x1b4),'body':_0x45752e,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON[_0x11ec8b(0x19c)](_0x38cfb7[_0x11ec8b(0x229)])+_0x11ec8b(0x1eb)+_0x284da5['str'](_0x11ec8b(0x1df))+_0x11ec8b(0x201)});},async 'execute'(_0x40d267){const _0x34d8ea=a153_0x39bc34;validateAddInput(_0x40d267);const _0x37ac0e=await buildSafeAddPlan(_0x40d267,![]),{plan:_0x214982,snapshot:_0x4ed2eb}=_0x37ac0e,_0x236a50=_0x214982[_0x34d8ea(0x1ba)],_0x283571=buildMenuLookupCommand(_0x40d267['appCode']);await recheckAddSnapshot(_0x40d267,_0x214982);let _0x46f45e;try{_0x46f45e=await createMenuEntity(_0x40d267[_0x34d8ea(0x1ce)],_0x40d267[_0x34d8ea(0x1d8)],createBody(_0x236a50));}catch(_0x3db881){const _0x3a015d=mapMenuApiError(_0x3db881,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x3db881)||_0x3a015d[_0x34d8ea(0x1e2)]===_0x34d8ea(0x1da))throw externalLinkCreateFailure(_0x3a015d,_0x214982,{'stage':_0x34d8ea(0x21d),'failed':{},'verification':{'status':'failed','lookupCommand':_0x283571}});return recoverAfterResponseLoss(_0x40d267,_0x37ac0e,_0x283571);}const _0x5d4e71=Number(_0x46f45e?.['id']),_0x2127ae=typeof _0x46f45e?.[_0x34d8ea(0x1f9)]===_0x34d8ea(0x200)?_0x46f45e[_0x34d8ea(0x1f9)]:'';if(!Number[_0x34d8ea(0x1f8)](_0x5d4e71)||_0x5d4e71<=0x0||!_0x2127ae[_0x34d8ea(0x1e5)]()){const _0x448c62=menuError(_0x34d8ea(0x1de),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Run\x20'+_0x283571+_0x34d8ea(0x1fa));throw externalLinkCreateFailure(_0x448c62,_0x214982,{'stage':_0x34d8ea(0x1ea),'succeeded':Number['isSafeInteger'](_0x5d4e71)&&_0x5d4e71>0x0?[{'id':_0x5d4e71,'created':!![]}]:[],'failed':{'createdId':Number[_0x34d8ea(0x1f8)](_0x5d4e71)?_0x5d4e71:null,'generatedPathConfirmed':Boolean(_0x2127ae[_0x34d8ea(0x1e5)]())},'warnings':[_0x34d8ea(0x20e)],'after':Number[_0x34d8ea(0x1f8)](_0x5d4e71)&&_0x5d4e71>0x0?{..._0x236a50,'id':_0x5d4e71,'path':_0x2127ae}:_0x236a50,'verification':{'status':'failed','lookupCommand':_0x283571,...Number[_0x34d8ea(0x1f8)](_0x5d4e71)&&_0x5d4e71>0x0?{'targetId':_0x5d4e71}:{}}});}const _0x1aa827=await readAndVerifyCreatedMenu({'appCode':_0x40d267[_0x34d8ea(0x1ce)],'cookie':_0x40d267[_0x34d8ea(0x1d8)],'plan':_0x214982,'afterPlan':_0x236a50,'createdId':_0x5d4e71,'expectedPath':_0x2127ae,'lookupCommand':_0x283571,'recovered':![]});return creationSuccess(_0x214982,_0x1aa827[_0x34d8ea(0x1bd)],_0x1aa827[_0x34d8ea(0x208)],![]);}};function validateAddInput(_0x4a7b7e){const _0x4085be=a153_0x39bc34;if(!_0x4a7b7e[_0x4085be(0x19b)](_0x4085be(0x229))[_0x4085be(0x1e5)]())throw CliErrors[_0x4085be(0x1a9)](_0x4085be(0x229));resolveExternalMenuType(_0x4a7b7e),validateExternalMenuUrl(_0x4a7b7e[_0x4085be(0x19b)](_0x4085be(0x217))),parseParentId(_0x4a7b7e,_0x4085be(0x1b2)),validateSort(_0x4a7b7e);}function resolveExternalMenuType(_0x3d9406){const _0x5becc1=a153_0x39bc34,_0x21e087=_0x3d9406[_0x5becc1(0x19b)](_0x5becc1(0x1df))[_0x5becc1(0x1e5)]();if(!_0x21e087)throw CliErrors[_0x5becc1(0x1a9)](_0x5becc1(0x1df));const _0xd6af6=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x21e087];if(!_0xd6af6)throw menuError(_0x5becc1(0x21a),_0x5becc1(0x1fd),_0x5becc1(0x1f7));return _0xd6af6;}async function buildAddPlan(_0x40161b,_0x37a025){const _0x6f84f9=a153_0x39bc34,_0x385d2a=await fetchMutationSnapshot(_0x40161b,_0x6f84f9(0x228)),_0x508e9b=parseParentId(_0x40161b,_0x6f84f9(0x1b2))??null;if(_0x508e9b!=null)requireFolder(_0x385d2a,_0x508e9b);const _0x146413=validateSort(_0x40161b),_0x24317e=_0x146413??nextSiblingSort(_0x385d2a,_0x508e9b,_0x6f84f9(0x1e8)),_0x2d4c85=_0x40161b[_0x6f84f9(0x19b)](_0x6f84f9(0x229))[_0x6f84f9(0x1e5)](),_0xc29c8f=resolveExternalMenuType(_0x40161b),_0x2cbebb=validateExternalMenuUrl(_0x40161b[_0x6f84f9(0x19b)](_0x6f84f9(0x217))),_0x53d57a=Object[_0x6f84f9(0x1c0)]['hasOwnProperty']['call'](_0x40161b[_0x6f84f9(0x221)],'visible')?_0x40161b[_0x6f84f9(0x215)](_0x6f84f9(0x1a6)):!![],_0x59a0e5={'id':null,'parentId':_0x508e9b,'label':_0x2d4c85,'path':'<platform-generated>','url':_0x2cbebb,'type':_0xc29c8f,'visible':_0x53d57a,'sort':_0x24317e},_0x69d2fb=buildMenuLookupCommand(_0x40161b['appCode']),_0x21d17d=mutationResult({'operation':_0x6f84f9(0x1a7),'selector':{'parentId':_0x508e9b,'type':_0xc29c8f,'label':_0x2d4c85,'url':_0x2cbebb},'before':null,'after':_0x59a0e5,'dryRun':_0x37a025,'backend':[{'method':_0x6f84f9(0x202),'path':'/smartapi/menu/create'}],'plannedActions':[{'stage':_0x6f84f9(0x1e3),'method':_0x6f84f9(0x202),'path':'/smartapi/menu/create','body':createBody(_0x59a0e5)}],'snapshotHash':_0x385d2a[_0x6f84f9(0x1ca)],'warnings':[_0x6f84f9(0x21e)],'verification':{'lookupCommand':_0x69d2fb}});return{'plan':_0x21d17d,'snapshot':_0x385d2a};}async function buildSafeAddPlan(_0x3d4cba,_0x1efce4){try{return await buildAddPlan(_0x3d4cba,_0x1efce4);}catch(_0x31f5ab){throw safeMenuAddError(_0x31f5ab);}}async function recheckAddSnapshot(_0x1c1f0f,_0xff6bf7){const _0x345842=a153_0x39bc34;try{await recheckMutationSnapshot(_0x1c1f0f,_0xff6bf7,'create\x20external\x20menu');}catch(_0xd05010){const _0x36b310=getFailureRecord(_0xd05010);throw externalLinkCreateFailure(_0xd05010,_0xff6bf7,{'stage':_0x345842(0x1a3),'failed':{..._0x36b310?.[_0x345842(0x22b)]?{'expectedSnapshotHash':_0x36b310[_0x345842(0x22b)]}:{},..._0x36b310?.[_0x345842(0x1b6)]?{'currentSnapshotHash':_0x36b310[_0x345842(0x1b6)]}:{}}});}}function createBody(_0x394b2c){const _0xcfa4ed=a153_0x39bc34;return{'parentId':toApiParentId(_0x394b2c[_0xcfa4ed(0x1b8)]),'label':String(_0x394b2c['label']),'type':String(_0x394b2c[_0xcfa4ed(0x1d2)]),'url':String(_0x394b2c[_0xcfa4ed(0x217)]),'visible':Boolean(_0x394b2c[_0xcfa4ed(0x1a6)]),'sort':Number(_0x394b2c['sort']),'extend':{}};}function buildMenuLookupCommand(_0x50b9c2){const _0x11c50f=a153_0x39bc34,_0x555474='\x27'+_0x50b9c2[_0x11c50f(0x1ae)](/'/g,_0x11c50f(0x219))+'\x27';return _0x11c50f(0x19e)+_0x555474+_0x11c50f(0x1ad);}async function recoverAfterResponseLoss(_0x5861b7,_0x4efa39,_0xc20efe){const _0x5b63f9=a153_0x39bc34,{plan:_0x589559,snapshot:_0x5d9859}=_0x4efa39,_0x5c4e98=_0x589559['after'];let _0x512adf;try{_0x512adf=await fetchMenuSnapshot(_0x5861b7['appCode'],_0x5861b7[_0x5b63f9(0x1d8)]);}catch(_0x2c1c38){throw recoveryRequiredFailure(_0x589559,_0xc20efe,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x20fac1=_0x512adf[_0x5b63f9(0x1ab)][_0x5b63f9(0x1cf)](_0x366f80=>_0x366f80[_0x5b63f9(0x1b8)]===_0x5c4e98[_0x5b63f9(0x1b8)]&&_0x366f80[_0x5b63f9(0x1d2)]===_0x5c4e98[_0x5b63f9(0x1d2)]&&_0x366f80[_0x5b63f9(0x229)]===_0x5c4e98[_0x5b63f9(0x229)]&&_0x366f80[_0x5b63f9(0x217)]===_0x5c4e98['url']),_0x5216a7=_0x20fac1[_0x5b63f9(0x1cf)](_0x574533=>!_0x5d9859[_0x5b63f9(0x1f3)][_0x5b63f9(0x223)](_0x574533['id'])),_0x1ba802=_0x20fac1[_0x5b63f9(0x1cf)](_0x201635=>_0x5d9859[_0x5b63f9(0x1f3)][_0x5b63f9(0x223)](_0x201635['id']));if(_0x20fac1[_0x5b63f9(0x20b)]!==0x1||_0x5216a7[_0x5b63f9(0x20b)]!==0x1)throw recoveryRequiredFailure(_0x589559,_0xc20efe,{'matchCount':_0x20fac1[_0x5b63f9(0x20b)],'newMatchCount':_0x5216a7[_0x5b63f9(0x20b)],'preexistingMatchCount':_0x1ba802[_0x5b63f9(0x20b)]});const _0x336ea8=_0x5216a7[0x0];try{verifyCreatedFact(_0x336ea8,_0x336ea8['id'],_0x5c4e98,null);}catch(_0x4345ee){const _0x2ae589=_0x4345ee instanceof Error&&_0x5b63f9(0x1e2)in _0x4345ee?_0x4345ee:menuError(_0x5b63f9(0x1b5),_0x5b63f9(0x20c)+_0x336ea8['id']+_0x5b63f9(0x20d),'Run\x20'+_0xc20efe+_0x5b63f9(0x1c2));throw externalLinkCreateFailure(_0x2ae589,_0x589559,{'stage':_0x5b63f9(0x1cd),'succeeded':[{'id':_0x336ea8['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x336ea8['id'],'finalFactsConfirmed':![]},'after':_0x336ea8,'warnings':[_0x5b63f9(0x216)+_0x336ea8['id']+_0x5b63f9(0x1a8)],'verification':{'status':_0x5b63f9(0x1c6),'targetId':_0x336ea8['id'],'recovered':!![],'lookupCommand':_0xc20efe}});}return creationSuccess(_0x589559,_0x512adf,_0x336ea8,!![]);}function recoveryRequiredFailure(_0x1e86d3,_0x2daa45,_0x4747ed){const _0x207aad=a153_0x39bc34,_0x771630=menuError(_0x207aad(0x209),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.',_0x207aad(0x1a4)+_0x2daa45+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x771630,_0x1e86d3,{'stage':'create-recovery','failed':_0x4747ed,'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.'],'verification':{'status':'failed',..._0x4747ed,'lookupCommand':_0x2daa45}});}async function readAndVerifyCreatedMenu(_0x5e3304){const _0x2d8be3=a153_0x39bc34;let _0x1d169a;try{_0x1d169a=await fetchMenuSnapshot(_0x5e3304[_0x2d8be3(0x1ce)],_0x5e3304[_0x2d8be3(0x1d8)]);}catch(_0x2e334b){const _0x2508fa=menuError(_0x2d8be3(0x1b5),_0x2d8be3(0x216)+_0x5e3304['createdId']+_0x2d8be3(0x19a),_0x2d8be3(0x1a4)+_0x5e3304[_0x2d8be3(0x1af)]+_0x2d8be3(0x1ac));throw externalLinkCreateFailure(_0x2508fa,_0x5e3304[_0x2d8be3(0x22a)],{'stage':_0x2d8be3(0x1cd),'succeeded':[{'id':_0x5e3304[_0x2d8be3(0x1c3)],'created':!![]}],'failed':{'id':_0x5e3304[_0x2d8be3(0x1c3)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x5e3304[_0x2d8be3(0x19d)],'id':_0x5e3304['createdId'],'path':_0x5e3304[_0x2d8be3(0x21b)]},'warnings':[_0x2d8be3(0x216)+_0x5e3304[_0x2d8be3(0x1c3)]+_0x2d8be3(0x1ef)],'verification':{'status':_0x2d8be3(0x1c6),'targetId':_0x5e3304[_0x2d8be3(0x1c3)],'lookupCommand':_0x5e3304[_0x2d8be3(0x1af)]}});}const _0x2cbf51=_0x1d169a[_0x2d8be3(0x1f3)][_0x2d8be3(0x1f2)](_0x5e3304[_0x2d8be3(0x1c3)]);try{if(!_0x2cbf51)throw menuError(_0x2d8be3(0x1b5),'Created\x20menu\x20'+_0x5e3304[_0x2d8be3(0x1c3)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.','Run\x20'+_0x5e3304[_0x2d8be3(0x1af)]+_0x2d8be3(0x1ac));verifyCreatedFact(_0x2cbf51,_0x5e3304[_0x2d8be3(0x1c3)],_0x5e3304['afterPlan'],_0x5e3304['expectedPath']);}catch(_0x52ba37){const _0xc8ecde=_0x52ba37 instanceof Error&&_0x2d8be3(0x1e2)in _0x52ba37?_0x52ba37:menuError(_0x2d8be3(0x1b5),_0x2d8be3(0x1d1)+_0x5e3304[_0x2d8be3(0x1c3)]+_0x2d8be3(0x1d4),'Run\x20'+_0x5e3304['lookupCommand']+_0x2d8be3(0x1ac));throw externalLinkCreateFailure(_0xc8ecde,_0x5e3304[_0x2d8be3(0x22a)],{'stage':_0x2d8be3(0x1cd),'succeeded':[{'id':_0x5e3304[_0x2d8be3(0x1c3)],'created':!![]}],'failed':{'id':_0x5e3304[_0x2d8be3(0x1c3)],'finalFactsConfirmed':![]},'after':_0x2cbf51??{..._0x5e3304[_0x2d8be3(0x19d)],'id':_0x5e3304['createdId'],'path':_0x5e3304['expectedPath']},'warnings':['Menu\x20'+_0x5e3304[_0x2d8be3(0x1c3)]+_0x2d8be3(0x227)],'verification':{'status':_0x2d8be3(0x1c6),'targetId':_0x5e3304['createdId'],'recovered':_0x5e3304[_0x2d8be3(0x225)],'lookupCommand':_0x5e3304[_0x2d8be3(0x1af)]}});}return{'snapshot':_0x1d169a,'fact':_0x2cbf51};}function verifyCreatedFact(_0x566205,_0x1c8e1d,_0x482e88,_0x25a1f9){const _0x3ab898=a153_0x39bc34;if(!Number[_0x3ab898(0x1f8)](_0x566205['id'])||_0x566205['id']<=0x0||_0x566205['id']!==_0x1c8e1d)throw menuError(_0x3ab898(0x1b5),_0x3ab898(0x1e0),_0x3ab898(0x1f6));const _0x361593=[[_0x3ab898(0x1d6),_0x566205[_0x3ab898(0x1b8)],_0x482e88[_0x3ab898(0x1b8)]],[_0x3ab898(0x1d2),_0x566205[_0x3ab898(0x1d2)],_0x482e88[_0x3ab898(0x1d2)]],[_0x3ab898(0x229),_0x566205[_0x3ab898(0x229)],_0x482e88[_0x3ab898(0x229)]],[_0x3ab898(0x1e9),_0x566205[_0x3ab898(0x217)],_0x482e88[_0x3ab898(0x217)]],[_0x3ab898(0x204),_0x566205[_0x3ab898(0x1a6)],_0x482e88['visible']],[_0x3ab898(0x1cc),_0x566205[_0x3ab898(0x1cc)],_0x482e88[_0x3ab898(0x1cc)]]];for(const [_0x3330df,_0x38b2d9,_0x3dfe04]of _0x361593){if(_0x38b2d9!==_0x3dfe04)throw menuError('menu_verification_failed',_0x3ab898(0x1d1)+_0x566205['id']+_0x3ab898(0x1bb)+_0x3330df+'.',_0x3ab898(0x206));}if(!_0x566205[_0x3ab898(0x1f9)][_0x3ab898(0x1e5)]()||_0x25a1f9!==null&&_0x566205[_0x3ab898(0x1f9)]!==_0x25a1f9)throw menuError('menu_verification_failed',_0x3ab898(0x1d1)+_0x566205['id']+_0x3ab898(0x213),'Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}function creationSuccess(_0x7dcf11,_0xad4076,_0x8b5453,_0x19662c){const _0x509ee3=a153_0x39bc34,_0x1f8e4b=mutationResult({..._0x7dcf11,'after':_0x8b5453,'dryRun':![],'succeeded':[{'id':_0x8b5453['id'],'created':!![],'recovered':_0x19662c}],'verification':{'checkedBy':_0x509ee3(0x1c4),'snapshotHash':_0xad4076[_0x509ee3(0x1ca)],'targetId':_0x8b5453['id'],'recovered':_0x19662c,'path':_0x8b5453['path']}});return{'ok':!![],'message':_0x19662c?_0x509ee3(0x1aa)+_0x8b5453['id']+_0x509ee3(0x1d9):_0x509ee3(0x1dc)+_0x8b5453['id']+'.','data':{..._0x1f8e4b,'recovered':_0x19662c}};}function externalLinkCreateFailure(_0x516ba1,_0x523387,_0x2f4d8a){const _0x4488de=a153_0x39bc34;return menuFailure(safeMenuAddError(_0x516ba1),redactFailurePlan(_0x523387),{..._0x2f4d8a,'succeeded':_0x2f4d8a[_0x4488de(0x1e6)]?.[_0x4488de(0x207)](redactFailureRecord),'failed':_0x2f4d8a[_0x4488de(0x1c6)]?redactFailureRecord(_0x2f4d8a[_0x4488de(0x1c6)]):undefined,'verification':_0x2f4d8a['verification']?redactFailureRecord(_0x2f4d8a['verification']):undefined,'after':_0x2f4d8a[_0x4488de(0x1ba)]===undefined?undefined:redactFailureValue(_0x2f4d8a[_0x4488de(0x1ba)])});}function redactFailurePlan(_0x2aa317){const _0x203b41=a153_0x39bc34;return{..._0x2aa317,'selector':redactFailureRecord(_0x2aa317[_0x203b41(0x1a2)]),'before':redactFailureValue(_0x2aa317[_0x203b41(0x222)]),'after':redactFailureValue(_0x2aa317[_0x203b41(0x1ba)]),'plannedActions':_0x2aa317[_0x203b41(0x1fc)]?.[_0x203b41(0x207)](_0x35b449=>({..._0x35b449,'body':redactFailureRecord(_0x35b449[_0x203b41(0x1ee)])})),'succeeded':_0x2aa317[_0x203b41(0x1e6)]['map'](redactFailureRecord),'failed':_0x2aa317[_0x203b41(0x1c6)][_0x203b41(0x207)](redactFailureRecord),'verification':_0x2aa317[_0x203b41(0x1cd)]?redactFailureRecord(_0x2aa317[_0x203b41(0x1cd)]):undefined};}function redactFailureRecord(_0x4ec6a8){return redactFailureValue(_0x4ec6a8);}function a153_0x2d2f(){const _0x4fff41=['Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','<redacted>','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','isSafeInteger','path','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','564KChSbL','plannedActions','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','128440oSnCnP','7WVTBTI','string','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','POST','1cTsjno','visibility','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','map','fact','menu_create_recovery_required','menu_sort_overflow','length','Recovered\x20menu\x20','\x20could\x20not\x20be\x20verified.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','isArray','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Create\x20an\x20external\x20website\x20link\x20menu','write','\x20has\x20an\x20unexpected\x20generated\x20path.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','bool','Menu\x20','url','password','\x27\x5c\x27\x27','menu_open_mode_invalid','expectedPath','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','create','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','External\x20menu\x20creation\x20failed.','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','rawFlags','before','has','310qCJSMz','recovered','embedded','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','create\x20external\x20menu','label','plan','expectedSnapshotHash','52866WpWDjp','Provide\x20an\x20HTTPS\x20URL.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','str','stringify','afterPlan','rabetbase\x20menu\x20list\x20--appcode\x20','1368azNJop','11209614paBRhw','cause','selector','pre-write-recheck','Run\x20','protocol','visible','add','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','flagMissing','Recovered\x20created\x20external\x20menu\x20','menus','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','\x20--format\x20compress','replace','lookupCommand','https:','732QiiBLm','parent-id','data','/smartapi/menu/create','menu_verification_failed','currentSnapshotHash','link','parentId','192QmmhgX','after','\x20has\x20an\x20unexpected\x20','toLowerCase','snapshot','external-link-create','1179214HePEKR','prototype','rawerror','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','createdId','menu\x20list','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','failed','iframe','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','How\x20to\x20open\x20the\x20external\x20website','hash','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','sort','verification','appCode','filter','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','Created\x20menu\x20','type','Whether\x20the\x20menu\x20is\x20visible','\x20failed\x20final\x20verification.','menu_sort_invalid','parent','31361MvaHXb','cookie','\x20after\x20response\x20loss.','menu_permission_denied','object','Created\x20external\x20menu\x20','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','menu_create_response_invalid','open-mode','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','External\x20HTTPS\x20URL','code','create-menu','3037896uhuzUK','trim','succeeded','fromEntries','menu','URL','create-response-validation','\x20with\x20','entries','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','body','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','menu_mutation_failed','boolean','get','byId'];a153_0x2d2f=function(){return _0x4fff41;};return a153_0x2d2f();}function redactFailureValue(_0x4d2577,_0x8ed632=''){const _0x6b7948=a153_0x39bc34,_0x26a573=_0x8ed632[_0x6b7948(0x1bc)]()[_0x6b7948(0x1ae)](/[^a-z0-9]/g,'');if([_0x6b7948(0x1a1),'causemessage','readbackerror',_0x6b7948(0x1c1)]['includes'](_0x26a573))return _0x6b7948(0x1f5);if(Array[_0x6b7948(0x20f)](_0x4d2577))return _0x4d2577[_0x6b7948(0x207)](_0x4361d3=>redactFailureValue(_0x4361d3));if(_0x4d2577&&typeof _0x4d2577===_0x6b7948(0x1db))return Object[_0x6b7948(0x1e7)](Object[_0x6b7948(0x1ec)](_0x4d2577)[_0x6b7948(0x207)](([_0xd17710,_0x53415c])=>[_0xd17710,redactFailureValue(_0x53415c,_0xd17710)]));return _0x4d2577;}function safeMenuAddError(_0x805899){const _0x49f6a1=a153_0x39bc34,_0x413cc1=_0x805899 instanceof CliError?_0x805899['code']:_0x49f6a1(0x1f0);switch(_0x413cc1){case'menu_state_drift':return menuError(_0x413cc1,_0x49f6a1(0x1dd),_0x49f6a1(0x210));case _0x49f6a1(0x1da):return menuError(_0x413cc1,_0x49f6a1(0x1c5),'Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.');case _0x49f6a1(0x1de):return menuError(_0x413cc1,_0x49f6a1(0x220),_0x49f6a1(0x1f4));case _0x49f6a1(0x1b5):return menuError(_0x413cc1,_0x49f6a1(0x1ed),_0x49f6a1(0x1f4));case _0x49f6a1(0x209):return menuError(_0x413cc1,_0x49f6a1(0x205),_0x49f6a1(0x1d0));case _0x49f6a1(0x1f0):case'menu_not_found':case'menu_parent_not_folder':case _0x49f6a1(0x1d5):case _0x49f6a1(0x20a):return menuError(_0x413cc1,'External\x20menu\x20creation\x20failed.',_0x49f6a1(0x21c));default:return menuError('menu_mutation_failed',_0x49f6a1(0x21f),_0x49f6a1(0x21c));}}function getFailureRecord(_0x4f9dad){const _0x21596b=a153_0x39bc34;if(!(_0x4f9dad instanceof Error)||!(_0x21596b(0x1b3)in _0x4f9dad))return undefined;const _0x595e8e=_0x4f9dad[_0x21596b(0x1b3)];if(!_0x595e8e||typeof _0x595e8e!==_0x21596b(0x1db))return undefined;const _0x245289=_0x595e8e[_0x21596b(0x1c6)];if(!Array['isArray'](_0x245289)||!_0x245289[0x0]||typeof _0x245289[0x0]!==_0x21596b(0x1db))return undefined;return _0x245289[0x0];}
@@ -1 +1 @@
1
- const a154_0x4b4a89=a154_0x2e32;(function(_0x491f35,_0x272538){const _0x975c1f=a154_0x2e32,_0x32e5e7=_0x491f35();while(!![]){try{const _0x62b7ea=-parseInt(_0x975c1f(0xb1))/0x1*(parseInt(_0x975c1f(0xbb))/0x2)+-parseInt(_0x975c1f(0xc9))/0x3*(-parseInt(_0x975c1f(0xb0))/0x4)+-parseInt(_0x975c1f(0xc2))/0x5*(parseInt(_0x975c1f(0xd3))/0x6)+-parseInt(_0x975c1f(0xd8))/0x7*(parseInt(_0x975c1f(0xce))/0x8)+parseInt(_0x975c1f(0xc5))/0x9+-parseInt(_0x975c1f(0xcf))/0xa*(-parseInt(_0x975c1f(0xe6))/0xb)+parseInt(_0x975c1f(0xa6))/0xc;if(_0x62b7ea===_0x272538)break;else _0x32e5e7['push'](_0x32e5e7['shift']());}catch(_0x55ddf6){_0x32e5e7['push'](_0x32e5e7['shift']());}}}(a154_0x3980,0xe42e9));function a154_0x3980(){const _0x2316a4=['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','\x22,\x20not\x20iframe\x20or\x20link.','16824napSEa','cookie','visible','update','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','3395BGQZYh','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','verify\x20external\x20menu\x20URL\x20update','\x20parent\x20changed:\x20expected\x20','parentId','url','menu_permission_denied','Update\x20request\x20for\x20menu\x20','update-recovery','get','failed','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','/smartapi/menu/update','44nshxjH','menu\x20list','childrenCount','update\x20external\x20menu\x20URL','requestedUrlObserved','menu_external_link_path_missing','\x20could\x20not\x20be\x20verified\x20safely','\x20has\x20an\x20empty\x20platform\x20path.','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu_external_link_not_leaf','\x20--format\x20compress','verification','\x20is\x20type\x20\x22','Updated\x20external\x20URL\x20for\x20menu\x20','path','external-link-update','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Response\x20was\x20lost\x20and\x20menu\x20','appCode','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','hash','flagMissing','sort','after','6678708NjQBld','expect-url','byId','iframe','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','menu','\x20URL\x20update\x20did\x20not\x20take\x20effect.','expect-parent-id','POST','body','44aIdETG','173xmnFRz','menu_state_drift','type','\x20already\x20matches\x20the\x20requested\x20URL.','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','write','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','rabetbase\x20menu\x20list\x20--appcode\x20','Menu\x20',',\x20current\x20','10278wiFcRG','Run\x20','menu_update_recovery_required','label','New\x20external\x20HTTPS\x20URL','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','readbackFailed','865XVYsSo','update-external-link-url','menu_external_link_type_required','6692526KEyVVe','plan','\x27\x5c\x27\x27','replace','347910eBYqUF','trim','link','\x20has\x20','str','10360akEzJi','902510AmjqNX','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.'];a154_0x3980=function(){return _0x2316a4;};return a154_0x3980();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0x4b4a89(0xae),'path':a154_0x4b4a89(0xe5)}];export const menuExternalLinkUpdate={'service':a154_0x4b4a89(0xab),'command':a154_0x4b4a89(0xf5),'description':a154_0x4b4a89(0xf9),'risk':a154_0x4b4a89(0xb6),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':'string','required':!![],'description':a154_0x4b4a89(0xbf)},{'name':a154_0x4b4a89(0xa7),'type':'string','required':!![],'description':a154_0x4b4a89(0xe4)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5a5878){validateInput(_0x5a5878);},async 'dryRun'(_0x80aed6){const _0x56558c=a154_0x4b4a89;validateInput(_0x80aed6);const _0x529cad=await buildPlan(_0x80aed6,!![]);return menuDryRunResult(_0x529cad[_0x56558c(0xc6)],{'method':_0x56558c(0xae),'url':_0x56558c(0xe5),'body':_0x529cad['body'],'description':_0x56558c(0xb5)+_0x529cad[_0x56558c(0xaf)]['id']+'.'});},async 'execute'(_0x37b405){const _0x40777d=a154_0x4b4a89;validateInput(_0x37b405);const _0x41ac5c=await buildPlan(_0x37b405,![]),{plan:_0x267746,body:_0x21936e,before:_0xe422ec,noChanges:_0x3544ff}=_0x41ac5c,_0x3629f4=_0x21936e['id'];if(_0x3544ff)return updateSuccess(_0x267746,_0x41ac5c['snapshot'],_0xe422ec,!![],![]);await recheckMutationSnapshot(_0x37b405,_0x267746,_0x40777d(0xe9),_0x3629f4);try{await updateMenuEntity(_0x37b405[_0x40777d(0xf8)],_0x37b405[_0x40777d(0xd4)],{'id':_0x21936e['id'],'url':_0x21936e[_0x40777d(0xdd)]});}catch(_0x36f8f8){const _0x7f5dd=mapMenuApiError(_0x36f8f8,'update\x20external\x20menu\x20URL',_0x3629f4);if(isMenuResponseLoss(_0x36f8f8)&&_0x7f5dd['code']!==_0x40777d(0xde))return recoverAfterResponseLoss(_0x37b405,_0x41ac5c);throw menuFailure(_0x7f5dd,_0x267746,{'stage':_0x40777d(0xd6),'failed':{'id':_0x3629f4},'warnings':[_0x40777d(0xee)],'verification':{'status':'failed','targetId':_0x3629f4,'lookupCommand':buildLookupCommand(_0x37b405[_0x40777d(0xf8)])}});}let _0x21cf67,_0x452588;try{_0x21cf67=await fetchMenuSnapshot(_0x37b405[_0x40777d(0xf8)],_0x37b405[_0x40777d(0xd4)]),_0x452588=requireMenu(_0x21cf67,_0x3629f4),verifyUpdatedFact(_0xe422ec,_0x452588,_0x21936e['url']);}catch(_0x509dd4){const _0x29daf6=describeMenuErrorCause(_0x509dd4,_0x40777d(0xda),_0x3629f4),_0x480064=asVerificationError(_0x509dd4,_0x40777d(0xdf)+_0x3629f4+_0x40777d(0xaa));throw menuFailure(_0x480064,_0x267746,{'stage':_0x40777d(0xf1),'succeeded':[{'id':_0x3629f4,'updateRequested':!![]}],'failed':{'id':_0x3629f4,'requestedStateConfirmed':![],..._0x29daf6},'warnings':[_0x40777d(0xc0)],'verification':{'status':_0x40777d(0xe2),'targetId':_0x3629f4,'lookupCommand':buildLookupCommand(_0x37b405[_0x40777d(0xf8)])}});}return updateSuccess(_0x267746,_0x21cf67,_0x452588,![],![]);}};function validateInput(_0xca9c03){const _0xb2ccf1=a154_0x4b4a89;validateExactId(_0xca9c03),requiredUrl(_0xca9c03,_0xb2ccf1(0xdd)),requiredExpectedUrl(_0xca9c03),parseParentId(_0xca9c03,_0xb2ccf1(0xad),{'required':!![]});}function a154_0x2e32(_0xeb3b6c,_0x242105){_0xeb3b6c=_0xeb3b6c-0xa4;const _0x398093=a154_0x3980();let _0x2e32d2=_0x398093[_0xeb3b6c];return _0x2e32d2;}function requiredUrl(_0x182b15,_0xa50569){const _0x13da40=a154_0x4b4a89;if(!hasFlag(_0x182b15,_0xa50569)||!_0x182b15[_0x13da40(0xcd)](_0xa50569)['trim']())throw CliErrors[_0x13da40(0xfb)](_0xa50569);return validateExternalMenuUrl(_0x182b15['str'](_0xa50569));}function requiredExpectedUrl(_0xa7fc78){const _0x1caa95=a154_0x4b4a89;if(!hasFlag(_0xa7fc78,_0x1caa95(0xa7))||!_0xa7fc78['str'](_0x1caa95(0xa7))['trim']())throw CliErrors[_0x1caa95(0xfb)]('expect-url');return _0xa7fc78[_0x1caa95(0xcd)](_0x1caa95(0xa7))[_0x1caa95(0xca)]();}async function buildPlan(_0x52e227,_0x59cc3e){const _0x4a163f=a154_0x4b4a89,_0x536e5b=validateExactId(_0x52e227),_0x17b9b5=requiredUrl(_0x52e227,_0x4a163f(0xdd)),_0x382053=requiredExpectedUrl(_0x52e227),_0x3c1dd1=parseParentId(_0x52e227,_0x4a163f(0xad),{'required':!![]}),_0x5848e9=await fetchMutationSnapshot(_0x52e227,_0x4a163f(0xe9),_0x536e5b),_0x22d7ed=requireMenu(_0x5848e9,_0x536e5b);assertExternalLinkLeaf(_0x22d7ed);if(_0x22d7ed[_0x4a163f(0xdc)]!==_0x3c1dd1)throw menuError('menu_state_drift',_0x4a163f(0xb9)+_0x536e5b+_0x4a163f(0xdb)+formatParent(_0x3c1dd1)+_0x4a163f(0xba)+formatParent(_0x22d7ed['parentId'])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');const _0x52db10=_0x22d7ed[_0x4a163f(0xdd)]===_0x17b9b5;if(!_0x52db10&&_0x22d7ed[_0x4a163f(0xdd)]!==_0x382053)throw menuError(_0x4a163f(0xb2),_0x4a163f(0xb9)+_0x536e5b+_0x4a163f(0xf6),_0x4a163f(0xd0));const _0x68ec97={'id':_0x536e5b,'appCode':_0x52e227[_0x4a163f(0xf8)],'url':_0x17b9b5},_0x5d612c={..._0x22d7ed,'url':_0x17b9b5};return{'body':_0x68ec97,'before':_0x22d7ed,'noChanges':_0x52db10,'snapshot':_0x5848e9,'plan':mutationResult({'operation':'external-link-update','selector':{'id':_0x536e5b},'before':_0x22d7ed,'after':_0x5d612c,'dryRun':_0x59cc3e,'backend':[...BACKEND],'plannedActions':_0x52db10?[]:[{'stage':_0x4a163f(0xc3),'method':_0x4a163f(0xae),'path':_0x4a163f(0xe5),'body':_0x68ec97}],'snapshotHash':_0x5848e9[_0x4a163f(0xfa)],'warnings':_0x52db10?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x53b04a){const _0x3be154=a154_0x4b4a89;if(_0x53b04a['type']!==_0x3be154(0xa9)&&_0x53b04a[_0x3be154(0xb3)]!==_0x3be154(0xcb))throw menuError(_0x3be154(0xc4),_0x3be154(0xb9)+_0x53b04a['id']+_0x3be154(0xf2)+(_0x53b04a[_0x3be154(0xb3)]||'unknown')+_0x3be154(0xd2),_0x3be154(0xe3));if(_0x53b04a[_0x3be154(0xe8)]!==0x0)throw menuError(_0x3be154(0xef),_0x3be154(0xb9)+_0x53b04a['id']+_0x3be154(0xcc)+_0x53b04a[_0x3be154(0xe8)]+'\x20direct\x20child\x20menu(s).','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x53b04a['path']['trim']())throw menuError(_0x3be154(0xeb),_0x3be154(0xb9)+_0x53b04a['id']+_0x3be154(0xed),_0x3be154(0xd7));}function verifyUpdatedFact(_0xe50524,_0x531e18,_0x5d7b67){const _0x17df00=a154_0x4b4a89;assertExternalLinkLeaf(_0x531e18);const _0x353d07=[['id',_0x531e18['id'],_0xe50524['id']],[_0x17df00(0xbe),_0x531e18[_0x17df00(0xbe)],_0xe50524[_0x17df00(0xbe)]],['type',_0x531e18[_0x17df00(0xb3)],_0xe50524[_0x17df00(0xb3)]],[_0x17df00(0xf4),_0x531e18[_0x17df00(0xf4)],_0xe50524['path']],[_0x17df00(0xdc),_0x531e18[_0x17df00(0xdc)],_0xe50524['parentId']],[_0x17df00(0xa4),_0x531e18[_0x17df00(0xa4)],_0xe50524[_0x17df00(0xa4)]],[_0x17df00(0xd5),_0x531e18[_0x17df00(0xd5)],_0xe50524[_0x17df00(0xd5)]]];for(const [_0x3253e8,_0x129e1a,_0x214dc7]of _0x353d07){assertVerified(_0x129e1a===_0x214dc7,_0x17df00(0xb9)+_0xe50524['id']+'\x20'+_0x3253e8+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x531e18[_0x17df00(0xdd)]===_0x5d7b67,_0x17df00(0xb9)+_0xe50524['id']+_0x17df00(0xac));}function updateSuccess(_0x3585e8,_0x234cac,_0x4b18fc,_0x5b767c,_0x89f37d){const _0x3e7a17=a154_0x4b4a89,_0x1e6cb5=_0x4b18fc['id'],_0x163255=mutationResult({..._0x3585e8,'after':_0x4b18fc,'dryRun':![],'succeeded':[{'id':_0x1e6cb5,'updated':!_0x5b767c,'skipped':_0x5b767c,'recovered':_0x89f37d}],'verification':{'checkedBy':_0x3e7a17(0xe7),'snapshotHash':_0x234cac[_0x3e7a17(0xfa)],'targetId':_0x1e6cb5,'matchesRequestedState':!![],'recovered':_0x89f37d}});return{'ok':!![],'message':_0x89f37d?_0x3e7a17(0xd9)+_0x1e6cb5+'.':_0x5b767c?'Menu\x20'+_0x1e6cb5+_0x3e7a17(0xb4):_0x3e7a17(0xf3)+_0x1e6cb5+'.','data':{..._0x163255,'recovered':_0x89f37d}};}async function recoverAfterResponseLoss(_0x460b81,_0x1dceb0){const _0x4f1f34=a154_0x4b4a89,{plan:_0x207c6d,before:_0x4de6cf,body:_0x3a6642}=_0x1dceb0;let _0x39995f;try{_0x39995f=await fetchMenuSnapshot(_0x460b81[_0x4f1f34(0xf8)],_0x460b81[_0x4f1f34(0xd4)]);}catch{throw recoveryRequired(_0x207c6d,_0x460b81[_0x4f1f34(0xf8)],{'id':_0x3a6642['id'],'readbackFailed':!![]});}const _0x36552c=_0x39995f[_0x4f1f34(0xa8)][_0x4f1f34(0xe1)](_0x3a6642['id']);if(!_0x36552c||_0x36552c[_0x4f1f34(0xdd)]!==_0x3a6642[_0x4f1f34(0xdd)])throw recoveryRequired(_0x207c6d,_0x460b81['appCode'],{'id':_0x3a6642['id'],'requestedUrlObserved':![],'after':_0x36552c??null});try{verifyUpdatedFact(_0x4de6cf,_0x36552c,_0x3a6642[_0x4f1f34(0xdd)]);}catch(_0x4fb88f){const _0x4f719f=asVerificationError(_0x4fb88f,_0x4f1f34(0xf7)+_0x3a6642['id']+_0x4f1f34(0xec));throw menuFailure(_0x4f719f,_0x207c6d,{'stage':'update-recovery','succeeded':[{'id':_0x3a6642['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x3a6642['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x36552c,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x4f1f34(0xe2),'targetId':_0x3a6642['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x460b81['appCode'])}});}return updateSuccess(_0x207c6d,_0x39995f,_0x36552c,![],!![]);}function recoveryRequired(_0x9465da,_0x43d3e0,_0x1f974c){const _0x57ec36=a154_0x4b4a89,_0x5c5118=menuError(_0x57ec36(0xbd),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0x57ec36(0xbc)+buildLookupCommand(_0x43d3e0)+_0x57ec36(0xb7));return menuFailure(_0x5c5118,_0x9465da,{'stage':_0x57ec36(0xe0),'failed':{'id':_0x1f974c['id'],..._0x1f974c[_0x57ec36(0xea)]===undefined?{}:{'requestedUrlObserved':_0x1f974c[_0x57ec36(0xea)]},..._0x1f974c[_0x57ec36(0xc1)]?{'readbackFailed':!![]}:{}},'after':_0x1f974c[_0x57ec36(0xa5)],'warnings':[_0x57ec36(0xd1)],'verification':{'status':_0x57ec36(0xe2),'targetId':_0x1f974c['id'],..._0x1f974c['requestedUrlObserved']===undefined?{}:{'requestedUrlObserved':_0x1f974c[_0x57ec36(0xea)]},..._0x1f974c[_0x57ec36(0xc1)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x43d3e0)}});}function buildLookupCommand(_0x2c5394){const _0x1bf669=a154_0x4b4a89,_0x3c26dd='\x27'+_0x2c5394[_0x1bf669(0xc8)](/'/g,_0x1bf669(0xc7))+'\x27';return _0x1bf669(0xb8)+_0x3c26dd+_0x1bf669(0xf0);}
1
+ const a154_0xcf7603=a154_0x23ac;(function(_0x198855,_0x361f1a){const _0x466af4=a154_0x23ac,_0x2ddf02=_0x198855();while(!![]){try{const _0x28f84f=-parseInt(_0x466af4(0x1b3))/0x1*(parseInt(_0x466af4(0x1a7))/0x2)+-parseInt(_0x466af4(0x1a9))/0x3*(-parseInt(_0x466af4(0x17e))/0x4)+parseInt(_0x466af4(0x1aa))/0x5+-parseInt(_0x466af4(0x1ad))/0x6*(-parseInt(_0x466af4(0x1c5))/0x7)+-parseInt(_0x466af4(0x1c1))/0x8+parseInt(_0x466af4(0x1b0))/0x9+parseInt(_0x466af4(0x1b4))/0xa*(-parseInt(_0x466af4(0x1cb))/0xb);if(_0x28f84f===_0x361f1a)break;else _0x2ddf02['push'](_0x2ddf02['shift']());}catch(_0x4d7a9b){_0x2ddf02['push'](_0x2ddf02['shift']());}}}(a154_0x1620,0xd5160));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a154_0xcf7603(0x192),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a154_0xcf7603(0x1ab),'command':'external-link-update','description':a154_0xcf7603(0x1af),'risk':a154_0xcf7603(0x1c2),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a154_0xcf7603(0x189),'type':'string','required':!![],'description':a154_0xcf7603(0x17d)},{'name':'expect-url','type':'string','required':!![],'description':a154_0xcf7603(0x1c8)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x10ea42){validateInput(_0x10ea42);},async 'dryRun'(_0x4e2ef3){const _0x142b31=a154_0xcf7603;validateInput(_0x4e2ef3);const _0x1c7661=await buildPlan(_0x4e2ef3,!![]);return menuDryRunResult(_0x1c7661[_0x142b31(0x1ce)],{'method':'POST','url':_0x142b31(0x1c7),'body':_0x1c7661[_0x142b31(0x193)],'description':_0x142b31(0x18e)+_0x1c7661[_0x142b31(0x193)]['id']+'.'});},async 'execute'(_0x514909){const _0x69774c=a154_0xcf7603;validateInput(_0x514909);const _0x142025=await buildPlan(_0x514909,![]),{plan:_0x2fc203,body:_0x3f1d7a,before:_0x249bd4,noChanges:_0x2be73e}=_0x142025,_0x1dc4e1=_0x3f1d7a['id'];if(_0x2be73e)return updateSuccess(_0x2fc203,_0x142025[_0x69774c(0x17b)],_0x249bd4,!![],![]);await recheckMutationSnapshot(_0x514909,_0x2fc203,'update\x20external\x20menu\x20URL',_0x1dc4e1);try{await updateMenuEntity(_0x514909[_0x69774c(0x197)],_0x514909[_0x69774c(0x17c)],{'id':_0x3f1d7a['id'],'url':_0x3f1d7a[_0x69774c(0x189)]});}catch(_0x4b48d9){const _0x38e5de=mapMenuApiError(_0x4b48d9,'update\x20external\x20menu\x20URL',_0x1dc4e1);if(isMenuResponseLoss(_0x4b48d9)&&_0x38e5de[_0x69774c(0x1b6)]!==_0x69774c(0x1be))return recoverAfterResponseLoss(_0x514909,_0x142025);throw menuFailure(_0x38e5de,_0x2fc203,{'stage':_0x69774c(0x1b5),'failed':{'id':_0x1dc4e1},'warnings':[_0x69774c(0x1a8)],'verification':{'status':_0x69774c(0x180),'targetId':_0x1dc4e1,'lookupCommand':buildLookupCommand(_0x514909['appCode'])}});}let _0x231832,_0xa001ac;try{_0x231832=await fetchMenuSnapshot(_0x514909['appCode'],_0x514909['cookie']),_0xa001ac=requireMenu(_0x231832,_0x1dc4e1),verifyUpdatedFact(_0x249bd4,_0xa001ac,_0x3f1d7a[_0x69774c(0x189)]);}catch(_0x3ad196){const _0x585d00=describeMenuErrorCause(_0x3ad196,_0x69774c(0x19b),_0x1dc4e1),_0x1d0e51=asVerificationError(_0x3ad196,_0x69774c(0x19c)+_0x1dc4e1+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x1d0e51,_0x2fc203,{'stage':_0x69774c(0x1bb),'succeeded':[{'id':_0x1dc4e1,'updateRequested':!![]}],'failed':{'id':_0x1dc4e1,'requestedStateConfirmed':![],..._0x585d00},'warnings':[_0x69774c(0x183)],'verification':{'status':'failed','targetId':_0x1dc4e1,'lookupCommand':buildLookupCommand(_0x514909[_0x69774c(0x197)])}});}return updateSuccess(_0x2fc203,_0x231832,_0xa001ac,![],![]);}};function validateInput(_0x2c0f0e){const _0x27dbb1=a154_0xcf7603;validateExactId(_0x2c0f0e),requiredUrl(_0x2c0f0e,_0x27dbb1(0x189)),requiredExpectedUrl(_0x2c0f0e),parseParentId(_0x2c0f0e,_0x27dbb1(0x17a),{'required':!![]});}function requiredUrl(_0x3af640,_0x263572){const _0x1cfd3a=a154_0xcf7603;if(!hasFlag(_0x3af640,_0x263572)||!_0x3af640[_0x1cfd3a(0x1bf)](_0x263572)[_0x1cfd3a(0x1ae)]())throw CliErrors[_0x1cfd3a(0x1b9)](_0x263572);return validateExternalMenuUrl(_0x3af640[_0x1cfd3a(0x1bf)](_0x263572));}function requiredExpectedUrl(_0x1c5332){const _0x473bbe=a154_0xcf7603;if(!hasFlag(_0x1c5332,_0x473bbe(0x1c3))||!_0x1c5332['str']('expect-url')[_0x473bbe(0x1ae)]())throw CliErrors[_0x473bbe(0x1b9)](_0x473bbe(0x1c3));return _0x1c5332[_0x473bbe(0x1bf)]('expect-url')[_0x473bbe(0x1ae)]();}function a154_0x23ac(_0x2688cb,_0x4b901c){_0x2688cb=_0x2688cb-0x178;const _0x1620db=a154_0x1620();let _0x23ac71=_0x1620db[_0x2688cb];return _0x23ac71;}function a154_0x1620(){const _0x4a29f7=['menu_state_drift','menu_external_link_path_missing','90911DWkdTq','14897690xQAaQD','update','code','label','\x20changed\x20during\x20the\x20URL-only\x20update.','flagMissing','visible','verification','\x20URL\x20update\x20did\x20not\x20take\x20effect.','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','menu_permission_denied','str','\x20direct\x20child\x20menu(s).','3441368MhtlIl','write','expect-url','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','98651oTXoxd','\x20has\x20an\x20empty\x20platform\x20path.','/smartapi/menu/update','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','\x20already\x20matches\x20the\x20requested\x20URL.','readbackFailed','11RNbsyj','rabetbase\x20menu\x20list\x20--appcode\x20','update-recovery','plan','childrenCount','update-external-link-url','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','external-link-update','expect-parent-id','snapshot','cookie','New\x20external\x20HTTPS\x20URL','10736smnluC','sort','failed','Updated\x20external\x20URL\x20for\x20menu\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','replace','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','hash','update\x20external\x20menu\x20URL','unknown','url','\x20has\x20','\x20parent\x20changed:\x20expected\x20','menu_external_link_type_required','menu_update_recovery_required','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','\x27\x5c\x27\x27','after','\x20--format\x20compress','POST','body','parentId','type','requestedUrlObserved','appCode','link','path','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','verify\x20external\x20menu\x20URL\x20update','Update\x20request\x20for\x20menu\x20','menu_external_link_not_leaf','menu\x20list',',\x20current\x20','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','\x22,\x20not\x20iframe\x20or\x20link.','get','Menu\x20','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','iframe','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','10udwAuw','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','435TGNMXs','6907045vhRWkd','menu','\x20could\x20not\x20be\x20verified\x20safely','354tZkDPW','trim','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','5806971gqgxCg'];a154_0x1620=function(){return _0x4a29f7;};return a154_0x1620();}async function buildPlan(_0x46e48c,_0x39a7ba){const _0x473a02=a154_0xcf7603,_0x387af7=validateExactId(_0x46e48c),_0x149832=requiredUrl(_0x46e48c,_0x473a02(0x189)),_0x23c214=requiredExpectedUrl(_0x46e48c),_0x11765d=parseParentId(_0x46e48c,_0x473a02(0x17a),{'required':!![]}),_0x481148=await fetchMutationSnapshot(_0x46e48c,_0x473a02(0x187),_0x387af7),_0x37f84f=requireMenu(_0x481148,_0x387af7);assertExternalLinkLeaf(_0x37f84f);if(_0x37f84f[_0x473a02(0x194)]!==_0x11765d)throw menuError(_0x473a02(0x1b1),_0x473a02(0x1a3)+_0x387af7+_0x473a02(0x18b)+formatParent(_0x11765d)+_0x473a02(0x19f)+formatParent(_0x37f84f['parentId'])+'.',_0x473a02(0x182));const _0x1fb6fe=_0x37f84f['url']===_0x149832;if(!_0x1fb6fe&&_0x37f84f[_0x473a02(0x189)]!==_0x23c214)throw menuError(_0x473a02(0x1b1),'Menu\x20'+_0x387af7+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x3af25d={'id':_0x387af7,'appCode':_0x46e48c[_0x473a02(0x197)],'url':_0x149832},_0x1c64ff={..._0x37f84f,'url':_0x149832};return{'body':_0x3af25d,'before':_0x37f84f,'noChanges':_0x1fb6fe,'snapshot':_0x481148,'plan':mutationResult({'operation':_0x473a02(0x179),'selector':{'id':_0x387af7},'before':_0x37f84f,'after':_0x1c64ff,'dryRun':_0x39a7ba,'backend':[...BACKEND],'plannedActions':_0x1fb6fe?[]:[{'stage':_0x473a02(0x1d0),'method':_0x473a02(0x192),'path':_0x473a02(0x1c7),'body':_0x3af25d}],'snapshotHash':_0x481148[_0x473a02(0x186)],'warnings':_0x1fb6fe?[_0x473a02(0x1a4)]:[]})};}function assertExternalLinkLeaf(_0x629007){const _0x49ac78=a154_0xcf7603;if(_0x629007[_0x49ac78(0x195)]!==_0x49ac78(0x1a5)&&_0x629007[_0x49ac78(0x195)]!==_0x49ac78(0x198))throw menuError(_0x49ac78(0x18c),_0x49ac78(0x1a3)+_0x629007['id']+'\x20is\x20type\x20\x22'+(_0x629007[_0x49ac78(0x195)]||_0x49ac78(0x188))+_0x49ac78(0x1a1),_0x49ac78(0x1a6));if(_0x629007[_0x49ac78(0x1cf)]!==0x0)throw menuError(_0x49ac78(0x19d),_0x49ac78(0x1a3)+_0x629007['id']+_0x49ac78(0x18a)+_0x629007['childrenCount']+_0x49ac78(0x1c0),_0x49ac78(0x185));if(!_0x629007[_0x49ac78(0x199)][_0x49ac78(0x1ae)]())throw menuError(_0x49ac78(0x1b2),_0x49ac78(0x1a3)+_0x629007['id']+_0x49ac78(0x1c6),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x31446c,_0x4aa85b,_0x15cf03){const _0x34c413=a154_0xcf7603;assertExternalLinkLeaf(_0x4aa85b);const _0x37e309=[['id',_0x4aa85b['id'],_0x31446c['id']],[_0x34c413(0x1b7),_0x4aa85b[_0x34c413(0x1b7)],_0x31446c[_0x34c413(0x1b7)]],[_0x34c413(0x195),_0x4aa85b[_0x34c413(0x195)],_0x31446c[_0x34c413(0x195)]],['path',_0x4aa85b['path'],_0x31446c[_0x34c413(0x199)]],[_0x34c413(0x194),_0x4aa85b[_0x34c413(0x194)],_0x31446c[_0x34c413(0x194)]],[_0x34c413(0x17f),_0x4aa85b[_0x34c413(0x17f)],_0x31446c[_0x34c413(0x17f)]],[_0x34c413(0x1ba),_0x4aa85b['visible'],_0x31446c['visible']]];for(const [_0x41b229,_0x23a5a0,_0x3e24e9]of _0x37e309){assertVerified(_0x23a5a0===_0x3e24e9,_0x34c413(0x1a3)+_0x31446c['id']+'\x20'+_0x41b229+_0x34c413(0x1b8));}assertVerified(_0x4aa85b['url']===_0x15cf03,_0x34c413(0x1a3)+_0x31446c['id']+_0x34c413(0x1bc));}function updateSuccess(_0x40ddad,_0x59bd95,_0x4d5ce2,_0x15bdec,_0x1285ee){const _0x2812d9=a154_0xcf7603,_0x1ae0f1=_0x4d5ce2['id'],_0x1fdb5f=mutationResult({..._0x40ddad,'after':_0x4d5ce2,'dryRun':![],'succeeded':[{'id':_0x1ae0f1,'updated':!_0x15bdec,'skipped':_0x15bdec,'recovered':_0x1285ee}],'verification':{'checkedBy':_0x2812d9(0x19e),'snapshotHash':_0x59bd95[_0x2812d9(0x186)],'targetId':_0x1ae0f1,'matchesRequestedState':!![],'recovered':_0x1285ee}});return{'ok':!![],'message':_0x1285ee?_0x2812d9(0x1a0)+_0x1ae0f1+'.':_0x15bdec?_0x2812d9(0x1a3)+_0x1ae0f1+_0x2812d9(0x1c9):_0x2812d9(0x181)+_0x1ae0f1+'.','data':{..._0x1fdb5f,'recovered':_0x1285ee}};}async function recoverAfterResponseLoss(_0x5d9531,_0x8f34b2){const _0x342606=a154_0xcf7603,{plan:_0x47dd31,before:_0x273ef9,body:_0xaae55b}=_0x8f34b2;let _0x38969f;try{_0x38969f=await fetchMenuSnapshot(_0x5d9531[_0x342606(0x197)],_0x5d9531['cookie']);}catch{throw recoveryRequired(_0x47dd31,_0x5d9531[_0x342606(0x197)],{'id':_0xaae55b['id'],'readbackFailed':!![]});}const _0x42d873=_0x38969f['byId'][_0x342606(0x1a2)](_0xaae55b['id']);if(!_0x42d873||_0x42d873[_0x342606(0x189)]!==_0xaae55b[_0x342606(0x189)])throw recoveryRequired(_0x47dd31,_0x5d9531[_0x342606(0x197)],{'id':_0xaae55b['id'],'requestedUrlObserved':![],'after':_0x42d873??null});try{verifyUpdatedFact(_0x273ef9,_0x42d873,_0xaae55b[_0x342606(0x189)]);}catch(_0x37c442){const _0xaafd65=asVerificationError(_0x37c442,'Response\x20was\x20lost\x20and\x20menu\x20'+_0xaae55b['id']+_0x342606(0x1ac));throw menuFailure(_0xaafd65,_0x47dd31,{'stage':_0x342606(0x1cd),'succeeded':[{'id':_0xaae55b['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0xaae55b['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x42d873,'warnings':[_0x342606(0x1c4)],'verification':{'status':_0x342606(0x180),'targetId':_0xaae55b['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5d9531[_0x342606(0x197)])}});}return updateSuccess(_0x47dd31,_0x38969f,_0x42d873,![],!![]);}function recoveryRequired(_0x3ec21a,_0x7e2fa1,_0x167995){const _0x18ee57=a154_0xcf7603,_0x14ef39=menuError(_0x18ee57(0x18d),_0x18ee57(0x178),'Run\x20'+buildLookupCommand(_0x7e2fa1)+_0x18ee57(0x1bd));return menuFailure(_0x14ef39,_0x3ec21a,{'stage':_0x18ee57(0x1cd),'failed':{'id':_0x167995['id'],..._0x167995[_0x18ee57(0x196)]===undefined?{}:{'requestedUrlObserved':_0x167995[_0x18ee57(0x196)]},..._0x167995[_0x18ee57(0x1ca)]?{'readbackFailed':!![]}:{}},'after':_0x167995[_0x18ee57(0x190)],'warnings':[_0x18ee57(0x19a)],'verification':{'status':'failed','targetId':_0x167995['id'],..._0x167995[_0x18ee57(0x196)]===undefined?{}:{'requestedUrlObserved':_0x167995[_0x18ee57(0x196)]},..._0x167995[_0x18ee57(0x1ca)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x7e2fa1)}});}function buildLookupCommand(_0xe67a2b){const _0x2a2ce9=a154_0xcf7603,_0x24ec77='\x27'+_0xe67a2b[_0x2a2ce9(0x184)](/'/g,_0x2a2ce9(0x18f))+'\x27';return _0x2a2ce9(0x1cc)+_0x24ec77+_0x2a2ce9(0x191);}
@@ -1 +1 @@
1
- function a155_0x2faa(){const _0x2eeeee=['59555eVcYCx','isSafeInteger','type','parent-id','Created\x20menu\x20folder\x20','write','1uBVVpN','839814rCjXQW','rabetbase\x20menu\x20list\x20--format\x20json','root','\x20is\x20not\x20empty.','byId','stringify','POST','label','create','1087208GvuVDE','\x20has\x20an\x20unexpected\x20sort.','cookie','menu','verify\x20folder\x20creation','folder','2972560hUfnlJ','\x20may\x20exist\x20online\x20at\x20path\x20','visible','sort','Folder\x20label','\x20is\x20missing\x20from\x20menu\x20list.','menu\x20list','create\x20folder','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','1211961GWrHzr','687087tdsboB','resources','childrenCount','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','str','\x20is\x20not\x20visible.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x20has\x20unexpected\x20parent\x20','get','\x20has\x20an\x20unexpected\x20label.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','/smartapi/menu/create','parentId','create-response-validation','depth','14XInkRq','length','\x20unexpectedly\x20owns\x20a\x20page.','12XxYCgJ','path','hash','Menu\x20create\x20response\x20for\x20folder\x20','failed','create-folder','Folder\x20','22DQHrOs','group-create','string','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','2323530fgaUTW','Created\x20folder\x20','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','verification','trim','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','menu_create_response_invalid','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','appCode','flagMissing'];a155_0x2faa=function(){return _0x2eeeee;};return a155_0x2faa();}const a155_0x40e9ca=a155_0x4787;function a155_0x4787(_0x4efde6,_0x2b3368){_0x4efde6=_0x4efde6-0x154;const _0x2faabf=a155_0x2faa();let _0x4787ad=_0x2faabf[_0x4efde6];return _0x4787ad;}(function(_0x16ebdc,_0xe2daa6){const _0x1ae7db=a155_0x4787,_0x3f8a6e=_0x16ebdc();while(!![]){try{const _0x141342=-parseInt(_0x1ae7db(0x157))/0x1*(parseInt(_0x1ae7db(0x158))/0x2)+parseInt(_0x1ae7db(0x170))/0x3+parseInt(_0x1ae7db(0x167))/0x4+-parseInt(_0x1ae7db(0x199))/0x5*(parseInt(_0x1ae7db(0x184))/0x6)+-parseInt(_0x1ae7db(0x181))/0x7*(-parseInt(_0x1ae7db(0x161))/0x8)+-parseInt(_0x1ae7db(0x171))/0x9+parseInt(_0x1ae7db(0x18f))/0xa*(-parseInt(_0x1ae7db(0x18b))/0xb);if(_0x141342===_0xe2daa6)break;else _0x3f8a6e['push'](_0x3f8a6e['shift']());}catch(_0x41a88e){_0x3f8a6e['push'](_0x3f8a6e['shift']());}}}(a155_0x2faa,0x69fe7));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':a155_0x40e9ca(0x15e),'path':'/smartapi/menu/create'}];export const menuGroupCreate={'service':a155_0x40e9ca(0x164),'command':a155_0x40e9ca(0x18c),'description':'Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','risk':a155_0x40e9ca(0x156),'structuredErrors':!![],'flags':[{'name':'label','type':a155_0x40e9ca(0x18d),'required':!![],'description':a155_0x40e9ca(0x16b)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4c6e1d){validateCreateInput(_0x4c6e1d);},async 'dryRun'(_0x118c16){const _0x240eb9=a155_0x40e9ca,_0x389aa7=await buildCreatePlan(_0x118c16,!![]),_0x520c25=_0x389aa7['after'];return menuDryRunResult(_0x389aa7,{'method':'POST','url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x520c25[_0x240eb9(0x17e)]),'label':_0x520c25['label'],'type':_0x240eb9(0x166),'visible':!![],'sort':_0x520c25[_0x240eb9(0x16a)],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x520c25[_0x240eb9(0x15f)])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x135495){const _0x946354=a155_0x40e9ca;validateCreateInput(_0x135495);const _0x45a30c=await buildCreatePlan(_0x135495,![]),_0x4964ae=_0x45a30c['after'];await recheckMutationSnapshot(_0x135495,_0x45a30c,'create\x20folder');let _0x465cdf;try{_0x465cdf=await createMenuEntity(_0x135495[_0x946354(0x197)],_0x135495[_0x946354(0x163)],{'parentId':toApiParentId(_0x4964ae['parentId']),'label':String(_0x4964ae[_0x946354(0x15f)]),'type':_0x946354(0x166),'visible':!![],'sort':Number(_0x4964ae[_0x946354(0x16a)]),'extend':{}});}catch(_0x421011){const _0x579339=mapMenuApiError(_0x421011,'create\x20folder');throw menuFailure(_0x579339,_0x45a30c,{'stage':_0x946354(0x160),'failed':{}});}const _0x2ed03a=Number(_0x465cdf['id']);if(!Number[_0x946354(0x19a)](_0x2ed03a)||_0x2ed03a<=0x0){const _0x40a95b=menuError(_0x946354(0x195),_0x946354(0x191),_0x946354(0x17b));throw menuFailure(_0x40a95b,_0x45a30c,{'stage':'create-response-validation','failed':{'createdId':_0x465cdf['id']??null},'warnings':[_0x946354(0x177)],'verification':{'status':_0x946354(0x188),'lookupCommand':_0x946354(0x159)}});}const _0x4adabf=typeof _0x465cdf[_0x946354(0x185)]==='string'?_0x465cdf['path']:'';if(!_0x4adabf[_0x946354(0x193)]()){const _0x58fa1b=menuError(_0x946354(0x195),_0x946354(0x187)+_0x2ed03a+_0x946354(0x174),_0x946354(0x196));throw menuFailure(_0x58fa1b,_0x45a30c,{'stage':_0x946354(0x17f),'succeeded':[{'id':_0x2ed03a,'created':!![]}],'failed':{'id':_0x2ed03a,'generatedPathConfirmed':![]},'warnings':[_0x946354(0x18a)+_0x2ed03a+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x4964ae,'id':_0x2ed03a,'path':_0x4adabf},'verification':{'status':_0x946354(0x188),'lookupCommand':_0x946354(0x159),'targetId':_0x2ed03a}});}let _0x432662;try{_0x432662=await fetchMenuSnapshot(_0x135495[_0x946354(0x197)],_0x135495[_0x946354(0x163)]);}catch(_0x2f951f){const _0x453553=describeMenuErrorCause(_0x2f951f,_0x946354(0x165),_0x2ed03a),_0x29ce0f=asVerificationError(_0x2f951f,_0x946354(0x18a)+_0x2ed03a+_0x946354(0x194));throw menuFailure(_0x29ce0f,_0x45a30c,{'stage':'verification','succeeded':[{'id':_0x2ed03a,'created':!![],'path':_0x4adabf}],'failed':{'id':_0x2ed03a,'finalFactsConfirmed':![],..._0x453553},'warnings':[_0x946354(0x18a)+_0x2ed03a+_0x946354(0x168)+JSON[_0x946354(0x15d)](_0x4adabf)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x4964ae,'id':_0x2ed03a,'path':_0x4adabf},'verification':{'status':_0x946354(0x188),'lookupCommand':_0x946354(0x159),'targetId':_0x2ed03a}});}const _0x53774d=_0x432662[_0x946354(0x15c)][_0x946354(0x179)](_0x2ed03a);let _0x333ee9;try{assertVerified(Boolean(_0x53774d),'Created\x20folder\x20'+_0x2ed03a+_0x946354(0x16c)),_0x333ee9=_0x53774d,assertVerified(_0x333ee9[_0x946354(0x19b)]===_0x946354(0x166),'Created\x20menu\x20'+_0x2ed03a+'\x20is\x20not\x20type\x20folder.'),assertVerified(_0x333ee9[_0x946354(0x15f)]===_0x4964ae[_0x946354(0x15f)],'Created\x20folder\x20'+_0x2ed03a+_0x946354(0x17a)),assertVerified(_0x333ee9['path']===_0x4adabf&&Boolean(_0x333ee9[_0x946354(0x185)]['trim']()),_0x946354(0x190)+_0x2ed03a+'\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.'),assertVerified(_0x333ee9[_0x946354(0x169)]===!![],_0x946354(0x190)+_0x2ed03a+_0x946354(0x176)),assertVerified(_0x333ee9[_0x946354(0x172)][_0x946354(0x182)]===0x0,_0x946354(0x190)+_0x2ed03a+'\x20has\x20resources.'),assertVerified(_0x333ee9[_0x946354(0x173)]===0x0,'Created\x20folder\x20'+_0x2ed03a+_0x946354(0x15b)),assertVerified(_0x333ee9[_0x946354(0x16a)]===_0x4964ae[_0x946354(0x16a)],_0x946354(0x190)+_0x2ed03a+_0x946354(0x162)),assertVerified(_0x333ee9['parentId']===_0x4964ae[_0x946354(0x17e)],'Created\x20folder\x20'+_0x2ed03a+_0x946354(0x178)+(_0x333ee9[_0x946354(0x17e)]??_0x946354(0x15a))+'.'),assertVerified(_0x333ee9['pageId']==null,_0x946354(0x190)+_0x2ed03a+_0x946354(0x183));const _0x349def=_0x333ee9[_0x946354(0x17e)]==null?undefined:requireFolder(_0x432662,_0x333ee9[_0x946354(0x17e)]);assertVerified(_0x333ee9[_0x946354(0x180)]===(_0x349def?_0x349def[_0x946354(0x180)]+0x1:0x0),_0x946354(0x190)+_0x2ed03a+_0x946354(0x16f));}catch(_0x187c91){const _0x14cf67=describeMenuErrorCause(_0x187c91,_0x946354(0x165),_0x2ed03a),_0x4a3b38=asVerificationError(_0x187c91,'Folder\x20'+_0x2ed03a+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0x4a3b38,_0x45a30c,{'stage':_0x946354(0x192),'succeeded':[{'id':_0x2ed03a,'created':!![],'path':_0x4adabf}],'failed':{'id':_0x2ed03a,'finalFactsConfirmed':![],..._0x14cf67},'warnings':[_0x946354(0x18a)+_0x2ed03a+_0x946354(0x17c)],'after':_0x53774d??{..._0x4964ae,'id':_0x2ed03a,'path':_0x4adabf},'verification':{'status':_0x946354(0x188),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x2ed03a}});}const _0x5dcaf6=mutationResult({..._0x45a30c,'after':_0x333ee9,'dryRun':![],'succeeded':[{'id':_0x2ed03a,'type':_0x946354(0x166),'path':_0x4adabf}],'verification':{'checkedBy':_0x946354(0x16d),'snapshotHash':_0x432662[_0x946354(0x186)],'folder':!![],'path':_0x4adabf,'emptyResources':!![]}});return{'ok':!![],'data':_0x5dcaf6,'message':_0x946354(0x155)+_0x2ed03a+'.'};}};function validateCreateInput(_0x3096aa){const _0x58889e=a155_0x40e9ca,_0x24e067=_0x3096aa[_0x58889e(0x175)](_0x58889e(0x15f))[_0x58889e(0x193)]();if(!_0x24e067)throw CliErrors[_0x58889e(0x198)](_0x58889e(0x15f));parseParentId(_0x3096aa,'parent-id'),validateSort(_0x3096aa);}async function buildCreatePlan(_0x74649b,_0x5233ef){const _0x5bb596=a155_0x40e9ca,_0x1e2b0a=await fetchMutationSnapshot(_0x74649b,_0x5bb596(0x16e)),_0xbe8ca0=parseParentId(_0x74649b,_0x5bb596(0x154))??null;if(_0xbe8ca0!=null)requireFolder(_0x1e2b0a,_0xbe8ca0);const _0x2d5e7b=validateSort(_0x74649b),_0x4ece5b=_0x2d5e7b??nextSiblingSort(_0x1e2b0a,_0xbe8ca0,_0x5bb596(0x166)),_0x99969e=_0x74649b[_0x5bb596(0x175)](_0x5bb596(0x15f))[_0x5bb596(0x193)]();return mutationResult({'operation':_0x5bb596(0x18c),'selector':{'label':_0x99969e,'parentId':_0xbe8ca0},'before':null,'after':{'id':null,'parentId':_0xbe8ca0,'label':_0x99969e,'path':'<platform-generated>','type':_0x5bb596(0x166),'visible':!![],'sort':_0x4ece5b,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x5233ef,'backend':[...BACKEND],'plannedActions':[{'stage':_0x5bb596(0x189),'method':'POST','path':_0x5bb596(0x17d),'body':{'parentId':toApiParentId(_0xbe8ca0),'label':_0x99969e,'type':_0x5bb596(0x166),'visible':!![],'sort':_0x4ece5b,'extend':{}}}],'snapshotHash':_0x1e2b0a['hash'],'warnings':[_0x5bb596(0x18e)]});}
1
+ const a155_0x1337ab=a155_0x1ef4;(function(_0x19e2bf,_0x2d6a0c){const _0x52c852=a155_0x1ef4,_0x132dd3=_0x19e2bf();while(!![]){try{const _0x3b0bec=-parseInt(_0x52c852(0x20f))/0x1*(-parseInt(_0x52c852(0x21d))/0x2)+-parseInt(_0x52c852(0x220))/0x3*(parseInt(_0x52c852(0x212))/0x4)+parseInt(_0x52c852(0x1fc))/0x5*(-parseInt(_0x52c852(0x21b))/0x6)+parseInt(_0x52c852(0x1f6))/0x7+parseInt(_0x52c852(0x21c))/0x8*(parseInt(_0x52c852(0x1f1))/0x9)+-parseInt(_0x52c852(0x206))/0xa+-parseInt(_0x52c852(0x1f7))/0xb*(parseInt(_0x52c852(0x205))/0xc);if(_0x3b0bec===_0x2d6a0c)break;else _0x132dd3['push'](_0x132dd3['shift']());}catch(_0x25f262){_0x132dd3['push'](_0x132dd3['shift']());}}}(a155_0x471f,0x2d3fa));function a155_0x1ef4(_0xa257d8,_0xaef54){_0xa257d8=_0xa257d8-0x1e8;const _0x471ffc=a155_0x471f();let _0x1ef4de=_0x471ffc[_0xa257d8];return _0x1ef4de;}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 a155_0x471f(){const _0x3dd75c=['Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','2225604oYLpDS','1001150gvSMNM','sort','trim','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','childrenCount','\x22\x20with\x20a\x20platform-generated\x20path.','\x20is\x20not\x20empty.','byId','str','16953uQwerl','get','<platform-generated>','9644YJqwtw','verify\x20folder\x20creation','create-response-validation','verification','type','cookie','failed','after','appCode','1135146XPNWzE','96gVLEXs','38ZeVfff','flagMissing','parent-id','186SvxdeQ','hash','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','Folder\x20label','menu\x20list','group-create','isSafeInteger','\x20has\x20resources.','\x20unexpectedly\x20owns\x20a\x20page.','\x20is\x20not\x20visible.','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','create-folder','menu_create_response_invalid','path','\x20is\x20not\x20type\x20folder.','resources','POST','stringify','string','rabetbase\x20menu\x20list\x20--format\x20json','depth','215937ZmBkwq','folder','Folder\x20','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','menu','1396990XDbREY','11zBUMKz','\x20has\x20an\x20unexpected\x20label.','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','parentId','\x20has\x20an\x20unexpected\x20sort.','5APXygI','\x20is\x20missing\x20from\x20menu\x20list.','Created\x20folder\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','/smartapi/menu/create','create\x20folder','label','\x20has\x20unexpected\x20parent\x20'];a155_0x471f=function(){return _0x3dd75c;};return a155_0x471f();}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a155_0x1337ab(0x200)}];export const menuGroupCreate={'service':a155_0x1337ab(0x1f5),'command':a155_0x1337ab(0x227),'description':a155_0x1337ab(0x224),'risk':'write','structuredErrors':!![],'flags':[{'name':'label','type':a155_0x1337ab(0x1ee),'required':!![],'description':a155_0x1337ab(0x225)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1fda36){validateCreateInput(_0x1fda36);},async 'dryRun'(_0x19baf6){const _0x3cf871=a155_0x1337ab,_0x214ffa=await buildCreatePlan(_0x19baf6,!![]),_0x1e60d1=_0x214ffa[_0x3cf871(0x219)];return menuDryRunResult(_0x214ffa,{'method':_0x3cf871(0x1ec),'url':_0x3cf871(0x200),'body':{'parentId':toApiParentId(_0x1e60d1['parentId']),'label':_0x1e60d1['label'],'type':_0x3cf871(0x1f2),'visible':!![],'sort':_0x1e60d1[_0x3cf871(0x207)],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x1e60d1[_0x3cf871(0x202)])+_0x3cf871(0x20b)});},async 'execute'(_0x23062d){const _0x56f273=a155_0x1337ab;validateCreateInput(_0x23062d);const _0x45bc38=await buildCreatePlan(_0x23062d,![]),_0x463a70=_0x45bc38[_0x56f273(0x219)];await recheckMutationSnapshot(_0x23062d,_0x45bc38,'create\x20folder');let _0x162ac0;try{_0x162ac0=await createMenuEntity(_0x23062d[_0x56f273(0x21a)],_0x23062d[_0x56f273(0x217)],{'parentId':toApiParentId(_0x463a70['parentId']),'label':String(_0x463a70['label']),'type':_0x56f273(0x1f2),'visible':!![],'sort':Number(_0x463a70[_0x56f273(0x207)]),'extend':{}});}catch(_0x17534a){const _0x4c0002=mapMenuApiError(_0x17534a,'create\x20folder');throw menuFailure(_0x4c0002,_0x45bc38,{'stage':'create','failed':{}});}const _0x4895d8=Number(_0x162ac0['id']);if(!Number[_0x56f273(0x228)](_0x4895d8)||_0x4895d8<=0x0){const _0x30b487=menuError('menu_create_response_invalid',_0x56f273(0x204),_0x56f273(0x1ff));throw menuFailure(_0x30b487,_0x45bc38,{'stage':_0x56f273(0x214),'failed':{'createdId':_0x162ac0['id']??null},'warnings':[_0x56f273(0x1f4)],'verification':{'status':_0x56f273(0x218),'lookupCommand':_0x56f273(0x1ef)}});}const _0x25cf53=typeof _0x162ac0[_0x56f273(0x1e9)]===_0x56f273(0x1ee)?_0x162ac0[_0x56f273(0x1e9)]:'';if(!_0x25cf53[_0x56f273(0x208)]()){const _0x141415=menuError(_0x56f273(0x1e8),'Menu\x20create\x20response\x20for\x20folder\x20'+_0x4895d8+_0x56f273(0x1f9),_0x56f273(0x222));throw menuFailure(_0x141415,_0x45bc38,{'stage':_0x56f273(0x214),'succeeded':[{'id':_0x4895d8,'created':!![]}],'failed':{'id':_0x4895d8,'generatedPathConfirmed':![]},'warnings':[_0x56f273(0x1f3)+_0x4895d8+'\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.'],'after':{..._0x463a70,'id':_0x4895d8,'path':_0x25cf53},'verification':{'status':_0x56f273(0x218),'lookupCommand':_0x56f273(0x1ef),'targetId':_0x4895d8}});}let _0x14ab35;try{_0x14ab35=await fetchMenuSnapshot(_0x23062d[_0x56f273(0x21a)],_0x23062d[_0x56f273(0x217)]);}catch(_0x1f2849){const _0x24be42=describeMenuErrorCause(_0x1f2849,'verify\x20folder\x20creation',_0x4895d8),_0x30a649=asVerificationError(_0x1f2849,_0x56f273(0x1f3)+_0x4895d8+_0x56f273(0x22c));throw menuFailure(_0x30a649,_0x45bc38,{'stage':_0x56f273(0x215),'succeeded':[{'id':_0x4895d8,'created':!![],'path':_0x25cf53}],'failed':{'id':_0x4895d8,'finalFactsConfirmed':![],..._0x24be42},'warnings':[_0x56f273(0x1f3)+_0x4895d8+'\x20may\x20exist\x20online\x20at\x20path\x20'+JSON[_0x56f273(0x1ed)](_0x25cf53)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x463a70,'id':_0x4895d8,'path':_0x25cf53},'verification':{'status':_0x56f273(0x218),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x4895d8}});}const _0x1ebfaa=_0x14ab35[_0x56f273(0x20d)][_0x56f273(0x210)](_0x4895d8);let _0x1cfe00;try{assertVerified(Boolean(_0x1ebfaa),_0x56f273(0x1fe)+_0x4895d8+_0x56f273(0x1fd)),_0x1cfe00=_0x1ebfaa,assertVerified(_0x1cfe00[_0x56f273(0x216)]===_0x56f273(0x1f2),'Created\x20menu\x20'+_0x4895d8+_0x56f273(0x1ea)),assertVerified(_0x1cfe00[_0x56f273(0x202)]===_0x463a70[_0x56f273(0x202)],'Created\x20folder\x20'+_0x4895d8+_0x56f273(0x1f8)),assertVerified(_0x1cfe00[_0x56f273(0x1e9)]===_0x25cf53&&Boolean(_0x1cfe00[_0x56f273(0x1e9)]['trim']()),_0x56f273(0x1fe)+_0x4895d8+_0x56f273(0x223)),assertVerified(_0x1cfe00['visible']===!![],_0x56f273(0x1fe)+_0x4895d8+_0x56f273(0x22b)),assertVerified(_0x1cfe00[_0x56f273(0x1eb)]['length']===0x0,'Created\x20folder\x20'+_0x4895d8+_0x56f273(0x229)),assertVerified(_0x1cfe00[_0x56f273(0x20a)]===0x0,_0x56f273(0x1fe)+_0x4895d8+_0x56f273(0x20c)),assertVerified(_0x1cfe00[_0x56f273(0x207)]===_0x463a70[_0x56f273(0x207)],'Created\x20folder\x20'+_0x4895d8+_0x56f273(0x1fb)),assertVerified(_0x1cfe00[_0x56f273(0x1fa)]===_0x463a70['parentId'],'Created\x20folder\x20'+_0x4895d8+_0x56f273(0x203)+(_0x1cfe00[_0x56f273(0x1fa)]??'root')+'.'),assertVerified(_0x1cfe00['pageId']==null,_0x56f273(0x1fe)+_0x4895d8+_0x56f273(0x22a));const _0x3c2ff7=_0x1cfe00[_0x56f273(0x1fa)]==null?undefined:requireFolder(_0x14ab35,_0x1cfe00[_0x56f273(0x1fa)]);assertVerified(_0x1cfe00[_0x56f273(0x1f0)]===(_0x3c2ff7?_0x3c2ff7['depth']+0x1:0x0),_0x56f273(0x1fe)+_0x4895d8+'\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.');}catch(_0x5ddd43){const _0x532e01=describeMenuErrorCause(_0x5ddd43,_0x56f273(0x213),_0x4895d8),_0x2b8ff0=asVerificationError(_0x5ddd43,'Folder\x20'+_0x4895d8+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0x2b8ff0,_0x45bc38,{'stage':_0x56f273(0x215),'succeeded':[{'id':_0x4895d8,'created':!![],'path':_0x25cf53}],'failed':{'id':_0x4895d8,'finalFactsConfirmed':![],..._0x532e01},'warnings':[_0x56f273(0x1f3)+_0x4895d8+'\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.'],'after':_0x1ebfaa??{..._0x463a70,'id':_0x4895d8,'path':_0x25cf53},'verification':{'status':_0x56f273(0x218),'lookupCommand':_0x56f273(0x1ef),'targetId':_0x4895d8}});}const _0x3996ff=mutationResult({..._0x45bc38,'after':_0x1cfe00,'dryRun':![],'succeeded':[{'id':_0x4895d8,'type':_0x56f273(0x1f2),'path':_0x25cf53}],'verification':{'checkedBy':_0x56f273(0x226),'snapshotHash':_0x14ab35[_0x56f273(0x221)],'folder':!![],'path':_0x25cf53,'emptyResources':!![]}});return{'ok':!![],'data':_0x3996ff,'message':'Created\x20menu\x20folder\x20'+_0x4895d8+'.'};}};function validateCreateInput(_0xb8c4a7){const _0x28b409=a155_0x1337ab,_0x54caf7=_0xb8c4a7['str'](_0x28b409(0x202))[_0x28b409(0x208)]();if(!_0x54caf7)throw CliErrors[_0x28b409(0x21e)](_0x28b409(0x202));parseParentId(_0xb8c4a7,'parent-id'),validateSort(_0xb8c4a7);}async function buildCreatePlan(_0x1192f8,_0x6c899){const _0x2cd02d=a155_0x1337ab,_0x1ac8a7=await fetchMutationSnapshot(_0x1192f8,_0x2cd02d(0x201)),_0x35134a=parseParentId(_0x1192f8,_0x2cd02d(0x21f))??null;if(_0x35134a!=null)requireFolder(_0x1ac8a7,_0x35134a);const _0x2b91ca=validateSort(_0x1192f8),_0x4b15e6=_0x2b91ca??nextSiblingSort(_0x1ac8a7,_0x35134a,_0x2cd02d(0x1f2)),_0x320699=_0x1192f8[_0x2cd02d(0x20e)](_0x2cd02d(0x202))[_0x2cd02d(0x208)]();return mutationResult({'operation':_0x2cd02d(0x227),'selector':{'label':_0x320699,'parentId':_0x35134a},'before':null,'after':{'id':null,'parentId':_0x35134a,'label':_0x320699,'path':_0x2cd02d(0x211),'type':_0x2cd02d(0x1f2),'visible':!![],'sort':_0x4b15e6,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x6c899,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2cd02d(0x22d),'method':_0x2cd02d(0x1ec),'path':_0x2cd02d(0x200),'body':{'parentId':toApiParentId(_0x35134a),'label':_0x320699,'type':_0x2cd02d(0x1f2),'visible':!![],'sort':_0x4b15e6,'extend':{}}}],'snapshotHash':_0x1ac8a7[_0x2cd02d(0x221)],'warnings':[_0x2cd02d(0x209)]});}
@@ -1 +1 @@
1
- const a156_0x235b7b=a156_0x18f8;function a156_0x5b19(){const _0x462140=['selector','unknown','65dkWSsq','folder','appCode','validation','failed','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','verify\x20folder\x20update','54YeYKkf','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','group-update','\x20label\x20update\x20did\x20not\x20take\x20effect.','sort','parentId','hash','/smartapi/menu/update','1109568hBgsCE','7WBroJg','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','menu\x20list','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','trim','menu_not_folder','New\x20folder\x20label','verification','parent-id','label','\x22,\x20not\x20folder.','1704084gYHNXz','write','23214gWeasb','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','114296riJIzB','update','string','Would\x20update\x20folder\x20','1043470rwWFIG','update\x20folder','cookie','Menu\x20','POST','--label\x20cannot\x20be\x20empty.','\x20already\x20matches\x20the\x20requested\x20state.','10VkReNU','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','menu','14275921IJGkwv','type','256824DpDzNA','No\x20online\x20fields\x20would\x20change.','Folder\x20'];a156_0x5b19=function(){return _0x462140;};return a156_0x5b19();}(function(_0x226fda,_0x84ba11){const _0x5ca3e8=a156_0x18f8,_0x23f7b4=_0x226fda();while(!![]){try{const _0x6dfb40=parseInt(_0x5ca3e8(0xa7))/0x1*(parseInt(_0x5ca3e8(0xb2))/0x2)+parseInt(_0x5ca3e8(0xa3))/0x3+-parseInt(_0x5ca3e8(0x83))/0x4+-parseInt(_0x5ca3e8(0x88))/0x5*(-parseInt(_0x5ca3e8(0xa5))/0x6)+-parseInt(_0x5ca3e8(0x98))/0x7*(-parseInt(_0x5ca3e8(0x97))/0x8)+parseInt(_0x5ca3e8(0x8f))/0x9*(parseInt(_0x5ca3e8(0xab))/0xa)+-parseInt(_0x5ca3e8(0x81))/0xb;if(_0x6dfb40===_0x84ba11)break;else _0x23f7b4['push'](_0x23f7b4['shift']());}catch(_0x1429ba){_0x23f7b4['push'](_0x23f7b4['shift']());}}}(a156_0x5b19,0x90ab6));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';function a156_0x18f8(_0x6e2e1,_0x20002a){_0x6e2e1=_0x6e2e1-0x81;const _0x5b1928=a156_0x5b19();let _0x18f863=_0x5b1928[_0x6e2e1];return _0x18f863;}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a156_0x235b7b(0xaf),'path':a156_0x235b7b(0x96)}];export const menuGroupUpdate={'service':a156_0x235b7b(0xb4),'command':a156_0x235b7b(0x91),'description':a156_0x235b7b(0xa6),'risk':a156_0x235b7b(0xa4),'structuredErrors':!![],'rejectedFlags':[{'name':a156_0x235b7b(0xa0),'message':a156_0x235b7b(0x90),'hint':a156_0x235b7b(0x8d)}],'flags':[MENU_ID_FLAG,{'name':a156_0x235b7b(0xa1),'type':a156_0x235b7b(0xa9),'description':a156_0x235b7b(0x9e)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x360491){validateUpdateInput(_0x360491);},async 'dryRun'(_0x1a63ee){const _0x269243=a156_0x235b7b;validateUpdateInput(_0x1a63ee);const {plan:_0x21263a,patch:_0x1af7f7}=await buildUpdatePlan(_0x1a63ee,!![]);return menuDryRunResult(_0x21263a,{'method':_0x269243(0xaf),'url':'/smartapi/menu/update','body':_0x1af7f7,'description':_0x269243(0xaa)+_0x21263a[_0x269243(0x86)]['id']+'.'});},async 'execute'(_0x1f463b){const _0x45d7ce=a156_0x235b7b;validateUpdateInput(_0x1f463b);const {plan:_0x2fa0e6,patch:_0x47d82d,noChanges:_0x42e1bf}=await buildUpdatePlan(_0x1f463b,![]),_0x22f36f=Number(_0x2fa0e6[_0x45d7ce(0x86)]['id']),_0x25e7a6=await recheckMutationSnapshot(_0x1f463b,_0x2fa0e6,_0x45d7ce(0xac),_0x22f36f);if(!_0x42e1bf)try{await updateMenuEntity(_0x1f463b[_0x45d7ce(0x8a)],_0x1f463b[_0x45d7ce(0xad)],_0x47d82d);}catch(_0x1edf93){const _0x29f0a4=mapMenuApiError(_0x1edf93,'update\x20folder',_0x22f36f);throw menuFailure(_0x29f0a4,_0x2fa0e6,{'stage':_0x45d7ce(0xa8),'failed':{'id':_0x22f36f}});}let _0x4239aa=_0x25e7a6,_0x1c8501;try{!_0x42e1bf&&(_0x4239aa=await fetchMenuSnapshot(_0x1f463b['appCode'],_0x1f463b[_0x45d7ce(0xad)])),_0x1c8501=requireMenu(_0x4239aa,_0x22f36f),verifyPatch(_0x1c8501,_0x47d82d),_0x1c8501[_0x45d7ce(0x94)]!=null&&requireFolder(_0x4239aa,_0x1c8501['parentId']);}catch(_0x1949c3){const _0x344655=describeMenuErrorCause(_0x1949c3,_0x45d7ce(0x8e),_0x22f36f),_0x543e2e=asVerificationError(_0x1949c3,'Update\x20request\x20for\x20folder\x20'+_0x22f36f+_0x45d7ce(0xb3));throw menuFailure(_0x543e2e,_0x2fa0e6,{'stage':_0x45d7ce(0x9f),'succeeded':[{'id':_0x22f36f,'updateRequested':!_0x42e1bf,'skipped':_0x42e1bf}],'failed':{'id':_0x22f36f,'requestedStateConfirmed':![],..._0x344655},'warnings':[_0x45d7ce(0x99)],'verification':{'status':_0x45d7ce(0x8c),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x22f36f}});}const _0x36ee60=mutationResult({..._0x2fa0e6,'after':_0x1c8501,'dryRun':![],'succeeded':[{'id':_0x22f36f,'updated':!_0x42e1bf,'skipped':_0x42e1bf}],'verification':{'checkedBy':_0x45d7ce(0x9a),'snapshotHash':_0x4239aa[_0x45d7ce(0x95)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x36ee60,'message':_0x42e1bf?_0x45d7ce(0x85)+_0x22f36f+_0x45d7ce(0xb1):'Updated\x20folder\x20'+_0x22f36f+'.'};}};function validateUpdateInput(_0x4ba438){const _0xf5c77d=a156_0x235b7b;validateExactId(_0x4ba438);if(hasFlag(_0x4ba438,_0xf5c77d(0xa0)))throw CliErrors[_0xf5c77d(0x8b)]('Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.',_0xf5c77d(0x8d));if(!hasFlag(_0x4ba438,_0xf5c77d(0xa1))&&!hasFlag(_0x4ba438,_0xf5c77d(0x93)))throw CliErrors[_0xf5c77d(0x8b)]('At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.');if(hasFlag(_0x4ba438,_0xf5c77d(0xa1))&&!_0x4ba438['str'](_0xf5c77d(0xa1))[_0xf5c77d(0x9c)]())throw CliErrors['validation'](_0xf5c77d(0xb0));validateSort(_0x4ba438);}async function buildUpdatePlan(_0x5a51ac,_0x417cde){const _0x4c38a0=a156_0x235b7b,_0x40350d=validateExactId(_0x5a51ac),_0x90a192=await fetchMutationSnapshot(_0x5a51ac,_0x4c38a0(0xac),_0x40350d),_0x397181=requireMenu(_0x90a192,_0x40350d);if(_0x397181[_0x4c38a0(0x82)]!==_0x4c38a0(0x89))throw menuError(_0x4c38a0(0x9d),_0x4c38a0(0xae)+_0x40350d+'\x20is\x20type\x20\x22'+(_0x397181[_0x4c38a0(0x82)]||_0x4c38a0(0x87))+_0x4c38a0(0xa2),_0x4c38a0(0x9b));assertExpectedState(_0x5a51ac,_0x397181);const _0x417fa3={'id':_0x40350d},_0x17cfea={..._0x397181};if(hasFlag(_0x5a51ac,_0x4c38a0(0xa1))){const _0x4ec3c0=_0x5a51ac['str'](_0x4c38a0(0xa1))[_0x4c38a0(0x9c)]();_0x417fa3[_0x4c38a0(0xa1)]=_0x4ec3c0,_0x17cfea[_0x4c38a0(0xa1)]=_0x4ec3c0;}if(hasFlag(_0x5a51ac,_0x4c38a0(0x93))){const _0x19ecce=validateSort(_0x5a51ac);_0x417fa3[_0x4c38a0(0x93)]=_0x19ecce,_0x17cfea[_0x4c38a0(0x93)]=_0x19ecce;}const _0x50231a=sameRequestedState(_0x397181,_0x17cfea),_0x1eac91=_0x50231a?[_0x4c38a0(0x84)]:[];return{'patch':_0x417fa3,'noChanges':_0x50231a,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x40350d},'before':_0x397181,'after':_0x17cfea,'dryRun':_0x417cde,'backend':[...BACKEND],'snapshotHash':_0x90a192[_0x4c38a0(0x95)],'warnings':_0x1eac91})};}function sameRequestedState(_0x841eb1,_0x2dd30e){const _0x12fff0=a156_0x235b7b;return _0x841eb1[_0x12fff0(0xa1)]===_0x2dd30e[_0x12fff0(0xa1)]&&_0x841eb1[_0x12fff0(0x93)]===_0x2dd30e['sort'];}function verifyPatch(_0x1e4c58,_0x337923){const _0x54b9ea=a156_0x235b7b;assertVerified(_0x1e4c58[_0x54b9ea(0x82)]==='folder',_0x54b9ea(0xae)+_0x1e4c58['id']+'\x20is\x20no\x20longer\x20type\x20folder.'),_0x337923[_0x54b9ea(0xa1)]!==undefined&&assertVerified(_0x1e4c58[_0x54b9ea(0xa1)]===_0x337923[_0x54b9ea(0xa1)],'Folder\x20'+_0x1e4c58['id']+_0x54b9ea(0x92)),_0x337923['sort']!==undefined&&assertVerified(_0x1e4c58['sort']===_0x337923['sort'],_0x54b9ea(0x85)+_0x1e4c58['id']+'\x20sort\x20update\x20did\x20not\x20take\x20effect.');}
1
+ const a156_0x2fb70e=a156_0xf588;(function(_0x236fea,_0x5dabc7){const _0x6b24cb=a156_0xf588,_0x87b170=_0x236fea();while(!![]){try{const _0x24d4be=parseInt(_0x6b24cb(0xcd))/0x1+-parseInt(_0x6b24cb(0xe4))/0x2+-parseInt(_0x6b24cb(0xc9))/0x3*(parseInt(_0x6b24cb(0xf2))/0x4)+-parseInt(_0x6b24cb(0xd8))/0x5+-parseInt(_0x6b24cb(0xd7))/0x6+-parseInt(_0x6b24cb(0xd2))/0x7*(-parseInt(_0x6b24cb(0xd3))/0x8)+-parseInt(_0x6b24cb(0xca))/0x9*(-parseInt(_0x6b24cb(0xd5))/0xa);if(_0x24d4be===_0x5dabc7)break;else _0x87b170['push'](_0x87b170['shift']());}catch(_0x42cb8f){_0x87b170['push'](_0x87b170['shift']());}}}(a156_0xd353,0xbeef0));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 a156_0xf588(_0x346601,_0x2909f1){_0x346601=_0x346601-0xc8;const _0xd3537b=a156_0xd353();let _0xf588a4=_0xd3537b[_0x346601];return _0xf588a4;}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a156_0x2fb70e(0xd0),'path':'/smartapi/menu/update'}];export const menuGroupUpdate={'service':a156_0x2fb70e(0xe1),'command':a156_0x2fb70e(0xc8),'description':a156_0x2fb70e(0xdb),'risk':a156_0x2fb70e(0xec),'structuredErrors':!![],'rejectedFlags':[{'name':a156_0x2fb70e(0xe7),'message':a156_0x2fb70e(0xf0),'hint':'Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.'}],'flags':[MENU_ID_FLAG,{'name':a156_0x2fb70e(0xdc),'type':'string','description':a156_0x2fb70e(0xcc)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4758b6){validateUpdateInput(_0x4758b6);},async 'dryRun'(_0x4174f7){const _0x27b785=a156_0x2fb70e;validateUpdateInput(_0x4174f7);const {plan:_0x1322b3,patch:_0x3a72ed}=await buildUpdatePlan(_0x4174f7,!![]);return menuDryRunResult(_0x1322b3,{'method':_0x27b785(0xd0),'url':_0x27b785(0xef),'body':_0x3a72ed,'description':'Would\x20update\x20folder\x20'+_0x1322b3[_0x27b785(0xe9)]['id']+'.'});},async 'execute'(_0xd529f7){const _0x254409=a156_0x2fb70e;validateUpdateInput(_0xd529f7);const {plan:_0x21bcf1,patch:_0x2b61c0,noChanges:_0x298195}=await buildUpdatePlan(_0xd529f7,![]),_0x466994=Number(_0x21bcf1[_0x254409(0xe9)]['id']),_0x27260f=await recheckMutationSnapshot(_0xd529f7,_0x21bcf1,_0x254409(0xe0),_0x466994);if(!_0x298195)try{await updateMenuEntity(_0xd529f7[_0x254409(0xe8)],_0xd529f7[_0x254409(0xeb)],_0x2b61c0);}catch(_0x2a7ffe){const _0x32a462=mapMenuApiError(_0x2a7ffe,'update\x20folder',_0x466994);throw menuFailure(_0x32a462,_0x21bcf1,{'stage':_0x254409(0xd9),'failed':{'id':_0x466994}});}let _0x3ecd0f=_0x27260f,_0x1e82bc;try{!_0x298195&&(_0x3ecd0f=await fetchMenuSnapshot(_0xd529f7[_0x254409(0xe8)],_0xd529f7['cookie'])),_0x1e82bc=requireMenu(_0x3ecd0f,_0x466994),verifyPatch(_0x1e82bc,_0x2b61c0),_0x1e82bc['parentId']!=null&&requireFolder(_0x3ecd0f,_0x1e82bc[_0x254409(0xf6)]);}catch(_0x261907){const _0x6a3779=describeMenuErrorCause(_0x261907,'verify\x20folder\x20update',_0x466994),_0xafbbe8=asVerificationError(_0x261907,_0x254409(0xcf)+_0x466994+_0x254409(0xda));throw menuFailure(_0xafbbe8,_0x21bcf1,{'stage':_0x254409(0xf8),'succeeded':[{'id':_0x466994,'updateRequested':!_0x298195,'skipped':_0x298195}],'failed':{'id':_0x466994,'requestedStateConfirmed':![],..._0x6a3779},'warnings':[_0x254409(0xdf)],'verification':{'status':_0x254409(0xfb),'lookupCommand':_0x254409(0xe6),'targetId':_0x466994}});}const _0x7e11f4=mutationResult({..._0x21bcf1,'after':_0x1e82bc,'dryRun':![],'succeeded':[{'id':_0x466994,'updated':!_0x298195,'skipped':_0x298195}],'verification':{'checkedBy':_0x254409(0xcb),'snapshotHash':_0x3ecd0f[_0x254409(0xf7)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x7e11f4,'message':_0x298195?'Folder\x20'+_0x466994+_0x254409(0xce):_0x254409(0xed)+_0x466994+'.'};}};function validateUpdateInput(_0x35c842){const _0x3e1616=a156_0x2fb70e;validateExactId(_0x35c842);if(hasFlag(_0x35c842,'parent-id'))throw CliErrors[_0x3e1616(0xf3)](_0x3e1616(0xf0),_0x3e1616(0xfc));if(!hasFlag(_0x35c842,_0x3e1616(0xdc))&&!hasFlag(_0x35c842,_0x3e1616(0xd4)))throw CliErrors[_0x3e1616(0xf3)](_0x3e1616(0xf1));if(hasFlag(_0x35c842,_0x3e1616(0xdc))&&!_0x35c842[_0x3e1616(0xe5)](_0x3e1616(0xdc))['trim']())throw CliErrors[_0x3e1616(0xf3)](_0x3e1616(0xe3));validateSort(_0x35c842);}async function buildUpdatePlan(_0x3e12cf,_0x4732cf){const _0x49ddf9=a156_0x2fb70e,_0x4e79df=validateExactId(_0x3e12cf),_0x4ed0de=await fetchMutationSnapshot(_0x3e12cf,_0x49ddf9(0xe0),_0x4e79df),_0x44f3a9=requireMenu(_0x4ed0de,_0x4e79df);if(_0x44f3a9[_0x49ddf9(0xea)]!==_0x49ddf9(0xfa))throw menuError(_0x49ddf9(0xe2),_0x49ddf9(0xf5)+_0x4e79df+'\x20is\x20type\x20\x22'+(_0x44f3a9[_0x49ddf9(0xea)]||_0x49ddf9(0xf9))+_0x49ddf9(0xd6),_0x49ddf9(0xee));assertExpectedState(_0x3e12cf,_0x44f3a9);const _0xae2718={'id':_0x4e79df},_0x2f4825={..._0x44f3a9};if(hasFlag(_0x3e12cf,_0x49ddf9(0xdc))){const _0x2939ab=_0x3e12cf[_0x49ddf9(0xe5)](_0x49ddf9(0xdc))['trim']();_0xae2718[_0x49ddf9(0xdc)]=_0x2939ab,_0x2f4825[_0x49ddf9(0xdc)]=_0x2939ab;}if(hasFlag(_0x3e12cf,'sort')){const _0x45b225=validateSort(_0x3e12cf);_0xae2718['sort']=_0x45b225,_0x2f4825[_0x49ddf9(0xd4)]=_0x45b225;}const _0x1e9224=sameRequestedState(_0x44f3a9,_0x2f4825),_0x5b3204=_0x1e9224?['No\x20online\x20fields\x20would\x20change.']:[];return{'patch':_0xae2718,'noChanges':_0x1e9224,'plan':mutationResult({'operation':_0x49ddf9(0xc8),'selector':{'id':_0x4e79df},'before':_0x44f3a9,'after':_0x2f4825,'dryRun':_0x4732cf,'backend':[...BACKEND],'snapshotHash':_0x4ed0de[_0x49ddf9(0xf7)],'warnings':_0x5b3204})};}function sameRequestedState(_0x4d44cc,_0x4c418a){const _0x16cd9e=a156_0x2fb70e;return _0x4d44cc[_0x16cd9e(0xdc)]===_0x4c418a[_0x16cd9e(0xdc)]&&_0x4d44cc[_0x16cd9e(0xd4)]===_0x4c418a['sort'];}function verifyPatch(_0x19466f,_0x3ea70e){const _0x2e93d1=a156_0x2fb70e;assertVerified(_0x19466f[_0x2e93d1(0xea)]===_0x2e93d1(0xfa),_0x2e93d1(0xf5)+_0x19466f['id']+_0x2e93d1(0xf4)),_0x3ea70e[_0x2e93d1(0xdc)]!==undefined&&assertVerified(_0x19466f[_0x2e93d1(0xdc)]===_0x3ea70e['label'],_0x2e93d1(0xde)+_0x19466f['id']+_0x2e93d1(0xdd)),_0x3ea70e['sort']!==undefined&&assertVerified(_0x19466f[_0x2e93d1(0xd4)]===_0x3ea70e['sort'],_0x2e93d1(0xde)+_0x19466f['id']+_0x2e93d1(0xd1));}function a156_0xd353(){const _0x146f6c=['appCode','selector','type','cookie','write','Updated\x20folder\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','/smartapi/menu/update','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','4501232gUNJqW','validation','\x20is\x20no\x20longer\x20type\x20folder.','Menu\x20','parentId','hash','verification','unknown','folder','failed','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','group-update','3EFBJLm','335817fpWbFc','menu\x20list','New\x20folder\x20label','665685xiBBAV','\x20already\x20matches\x20the\x20requested\x20state.','Update\x20request\x20for\x20folder\x20','POST','\x20sort\x20update\x20did\x20not\x20take\x20effect.','7UkBrJH','5041856wgHiUW','sort','830CCjkWW','\x22,\x20not\x20folder.','4419924weuNTF','6206150OQkcPq','update','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','label','\x20label\x20update\x20did\x20not\x20take\x20effect.','Folder\x20','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','update\x20folder','menu','menu_not_folder','--label\x20cannot\x20be\x20empty.','1015280bZXUOK','str','rabetbase\x20menu\x20list\x20--format\x20json','parent-id'];a156_0xd353=function(){return _0x146f6c;};return a156_0xd353();}
@@ -1 +1 @@
1
- (function(_0x3c1360,_0x3f3cd6){const _0x2ad926=a157_0x1528,_0x1657ff=_0x3c1360();while(!![]){try{const _0x3ec7da=parseInt(_0x2ad926(0x83))/0x1+parseInt(_0x2ad926(0x7e))/0x2+parseInt(_0x2ad926(0x78))/0x3*(parseInt(_0x2ad926(0x7b))/0x4)+-parseInt(_0x2ad926(0x79))/0x5*(parseInt(_0x2ad926(0x7a))/0x6)+parseInt(_0x2ad926(0x82))/0x7*(-parseInt(_0x2ad926(0x7d))/0x8)+-parseInt(_0x2ad926(0x81))/0x9*(-parseInt(_0x2ad926(0x7f))/0xa)+parseInt(_0x2ad926(0x7c))/0xb*(-parseInt(_0x2ad926(0x80))/0xc);if(_0x3ec7da===_0x3f3cd6)break;else _0x1657ff['push'](_0x1657ff['shift']());}catch(_0x3c5271){_0x1657ff['push'](_0x1657ff['shift']());}}}(a157_0xf893,0x27191));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';import{menuMove}from'../../commands/menu/move.js';import{menuRegroupStart}from'../../commands/menu/regroup-start.js';import{menuExternalLinkCreate}from'../../commands/menu/external-link-create.js';function a157_0x1528(_0x3d4e5a,_0x53e71c){_0x3d4e5a=_0x3d4e5a-0x78;const _0xf89352=a157_0xf893();let _0x152830=_0xf89352[_0x3d4e5a];return _0x152830;}function a157_0xf893(){const _0x1256a5=['252544GrNJYl','25347HBpBAR','23070moAgex','12QoioCn','52xYhioD','49654eWeXpn','72tQwKVQ','33828Tpldsb','25290oDinRi','684SBPPvu','297EOmnXw','28063XwpoUr'];a157_0xf893=function(){return _0x1256a5;};return a157_0xf893();}import{menuExternalLinkUpdate}from'../../commands/menu/external-link-update.js';import{menuRename}from'../../commands/menu/rename.js';import{menuVisibilityUpdate}from'../../commands/menu/visibility-update.js';import{menuSubappAssetsStatus}from'../../commands/menu/subapp-assets-status.js';import{menuSubappAssetsUpdate}from'../../commands/menu/subapp-assets-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuSubappAssetsStatus,menuSubappAssetsUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
1
+ (function(_0x19a336,_0x327e6a){const _0x2cd0fa=a157_0x1fa0,_0x27c8ae=_0x19a336();while(!![]){try{const _0x1ff3be=-parseInt(_0x2cd0fa(0x1b9))/0x1+-parseInt(_0x2cd0fa(0x1c3))/0x2*(-parseInt(_0x2cd0fa(0x1bc))/0x3)+parseInt(_0x2cd0fa(0x1b8))/0x4*(parseInt(_0x2cd0fa(0x1bf))/0x5)+-parseInt(_0x2cd0fa(0x1be))/0x6*(parseInt(_0x2cd0fa(0x1c1))/0x7)+-parseInt(_0x2cd0fa(0x1bb))/0x8+parseInt(_0x2cd0fa(0x1ba))/0x9*(-parseInt(_0x2cd0fa(0x1c0))/0xa)+parseInt(_0x2cd0fa(0x1c2))/0xb*(parseInt(_0x2cd0fa(0x1bd))/0xc);if(_0x1ff3be===_0x327e6a)break;else _0x27c8ae['push'](_0x27c8ae['shift']());}catch(_0x42683d){_0x27c8ae['push'](_0x27c8ae['shift']());}}}(a157_0x37e1,0x22dfd));import{menuList}from'../../commands/menu/list.js';import{menuSync}from'../../commands/menu/sync.js';import{menuAssetUpdate}from'../../commands/menu/asset-update.js';import{menuDelete}from'../../commands/menu/delete.js';import{menuGroupCreate}from'../../commands/menu/group-create.js';import{menuGroupUpdate}from'../../commands/menu/group-update.js';function a157_0x37e1(){const _0x38be9f=['128EORfiQ','2948eXujLu','236241nvZeQC','15462puGQfd','1286216eNbPLn','6702nzXbvg','235476JYDdfo','96oBESah','590tsAsIm','1250eZgAAH','122444haACim','451lmnQBk'];a157_0x37e1=function(){return _0x38be9f;};return a157_0x37e1();}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';function a157_0x1fa0(_0x21ddc9,_0x257283){_0x21ddc9=_0x21ddc9-0x1b8;const _0x37e1ec=a157_0x37e1();let _0x1fa060=_0x37e1ec[_0x21ddc9];return _0x1fa060;}import{menuSubappAssetsStatus}from'../../commands/menu/subapp-assets-status.js';import{menuSubappAssetsUpdate}from'../../commands/menu/subapp-assets-update.js';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuVisibilityUpdate,menuSync,menuAssetUpdate,menuSubappAssetsStatus,menuSubappAssetsUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
@@ -1 +1 @@
1
- function a158_0x4e5f(){const _0x4d92d7=['bool','appCode','442158kUFPon','verbose','read','map','966048zOjQtN','403620ZMvaPJ','2oaMZQJ','8dJjKWe','total','menus','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','No\x20menus\x20found.','610hFRFaS','1971747ImixZd','94468ohrGPa','hash','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','cookie','209027GAUspb','15BdVsXS','6087ZhxDRd'];a158_0x4e5f=function(){return _0x4d92d7;};return a158_0x4e5f();}const a158_0x381658=a158_0x29ef;(function(_0x2e15a3,_0x40ff78){const _0x2181ab=a158_0x29ef,_0x79b81b=_0x2e15a3();while(!![]){try{const _0x52c9e0=parseInt(_0x2181ab(0x197))/0x1*(-parseInt(_0x2181ab(0x18b))/0x2)+parseInt(_0x2181ab(0x199))/0x3+-parseInt(_0x2181ab(0x189))/0x4+parseInt(_0x2181ab(0x198))/0x5*(-parseInt(_0x2181ab(0x19c))/0x6)+parseInt(_0x2181ab(0x18a))/0x7+-parseInt(_0x2181ab(0x18c))/0x8*(-parseInt(_0x2181ab(0x192))/0x9)+-parseInt(_0x2181ab(0x191))/0xa*(-parseInt(_0x2181ab(0x193))/0xb);if(_0x52c9e0===_0x40ff78)break;else _0x79b81b['push'](_0x79b81b['shift']());}catch(_0x33596b){_0x79b81b['push'](_0x79b81b['shift']());}}}(a158_0x4e5f,0x1ffce));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a158_0x29ef(_0x5385a5,_0x284cc8){_0x5385a5=_0x5385a5-0x188;const _0x4e5fd8=a158_0x4e5f();let _0x29ef28=_0x4e5fd8[_0x5385a5];return _0x29ef28;}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':'menu','command':'list','description':a158_0x381658(0x18f),'risk':a158_0x381658(0x19e),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a158_0x381658(0x19d),'type':'boolean','description':a158_0x381658(0x195)}],async 'execute'(_0x23a866){const _0xabba7a=a158_0x381658,_0x465971=_0x23a866[_0xabba7a(0x19a)]('verbose'),_0x53a680=await fetchMenuSnapshot(_0x23a866[_0xabba7a(0x19b)],_0x23a866[_0xabba7a(0x196)],{'verbose':_0x465971});return{'ok':!![],'data':{'total':_0x53a680[_0xabba7a(0x18d)],'snapshotHash':_0x53a680[_0xabba7a(0x194)],'menus':_0x53a680[_0xabba7a(0x18e)][_0xabba7a(0x188)](toMenuListItem)},'message':_0x53a680[_0xabba7a(0x18d)]===0x0?_0xabba7a(0x190):'Found\x20'+_0x53a680['total']+'\x20menu(s)'};}};
1
+ function a158_0x4165(_0x53d065,_0x108efc){_0x53d065=_0x53d065-0x1d4;const _0x222f4d=a158_0x222f();let _0x4165b1=_0x222f4d[_0x53d065];return _0x4165b1;}const a158_0x56e322=a158_0x4165;(function(_0x485746,_0x1e342f){const _0xc229=a158_0x4165,_0xa6fb79=_0x485746();while(!![]){try{const _0x437d5e=parseInt(_0xc229(0x1ec))/0x1*(-parseInt(_0xc229(0x1e7))/0x2)+-parseInt(_0xc229(0x1de))/0x3+-parseInt(_0xc229(0x1dc))/0x4*(parseInt(_0xc229(0x1d5))/0x5)+parseInt(_0xc229(0x1e3))/0x6+parseInt(_0xc229(0x1dd))/0x7+parseInt(_0xc229(0x1e1))/0x8*(-parseInt(_0xc229(0x1da))/0x9)+parseInt(_0xc229(0x1df))/0xa;if(_0x437d5e===_0x1e342f)break;else _0xa6fb79['push'](_0xa6fb79['shift']());}catch(_0x4cc7c9){_0xa6fb79['push'](_0xa6fb79['shift']());}}}(a158_0x222f,0xd861f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':'menu','command':a158_0x56e322(0x1d8),'description':a158_0x56e322(0x1d6),'risk':a158_0x56e322(0x1ea),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a158_0x56e322(0x1e9),'type':a158_0x56e322(0x1e8),'description':a158_0x56e322(0x1d9)}],async 'execute'(_0x9e1aa5){const _0x3a8ab8=a158_0x56e322,_0x2c7f51=_0x9e1aa5[_0x3a8ab8(0x1eb)](_0x3a8ab8(0x1e9)),_0x4fc23b=await fetchMenuSnapshot(_0x9e1aa5[_0x3a8ab8(0x1e4)],_0x9e1aa5[_0x3a8ab8(0x1e0)],{'verbose':_0x2c7f51});return{'ok':!![],'data':{'total':_0x4fc23b[_0x3a8ab8(0x1d7)],'snapshotHash':_0x4fc23b[_0x3a8ab8(0x1db)],'menus':_0x4fc23b[_0x3a8ab8(0x1d4)]['map'](toMenuListItem)},'message':_0x4fc23b[_0x3a8ab8(0x1d7)]===0x0?_0x3a8ab8(0x1e6):_0x3a8ab8(0x1e5)+_0x4fc23b[_0x3a8ab8(0x1d7)]+_0x3a8ab8(0x1e2)};}};function a158_0x222f(){const _0x7f2bf8=['17127370QePctL','cookie','8wlzFtu','\x20menu(s)','9075768uOrmBQ','appCode','Found\x20','No\x20menus\x20found.','20PQMdrx','boolean','verbose','read','bool','120325ATZfnE','menus','6642500pHsxLA','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','total','list','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','6429267rQmMPz','hash','4hRKSVG','9915612sPNxxl','1528395NdKbEB'];a158_0x222f=function(){return _0x7f2bf8;};return a158_0x222f();}
@@ -1 +1 @@
1
- const a159_0x343a45=a159_0x58cd;(function(_0x1481a4,_0x21c4e7){const _0x25a810=a159_0x58cd,_0xe06b9e=_0x1481a4();while(!![]){try{const _0x457a88=parseInt(_0x25a810(0x1f5))/0x1*(parseInt(_0x25a810(0x214))/0x2)+-parseInt(_0x25a810(0x200))/0x3+-parseInt(_0x25a810(0x1f8))/0x4*(-parseInt(_0x25a810(0x20d))/0x5)+-parseInt(_0x25a810(0x213))/0x6*(-parseInt(_0x25a810(0x1f3))/0x7)+-parseInt(_0x25a810(0x1ec))/0x8+parseInt(_0x25a810(0x1f6))/0x9+-parseInt(_0x25a810(0x204))/0xa*(-parseInt(_0x25a810(0x1f7))/0xb);if(_0x457a88===_0x21c4e7)break;else _0xe06b9e['push'](_0xe06b9e['shift']());}catch(_0x28210b){_0xe06b9e['push'](_0xe06b9e['shift']());}}}(a159_0x1c59,0x46d3f));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':a159_0x343a45(0x1f9),'path':a159_0x343a45(0x1f2)}];function a159_0x58cd(_0x5a24e7,_0x13ebfe){_0x5a24e7=_0x5a24e7-0x1eb;const _0x1c59d7=a159_0x1c59();let _0x58cda0=_0x1c59d7[_0x5a24e7];return _0x58cda0;}export const menuMove={'service':a159_0x343a45(0x20f),'command':a159_0x343a45(0x202),'description':'Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1ef832){validateMoveInput(_0x1ef832);},async 'dryRun'(_0x38707d){const _0x4b531e=a159_0x343a45,{plan:_0x5823b7,patch:_0x3bb71a}=await buildMovePlan(_0x38707d,!![]);return menuDryRunResult(_0x5823b7,{'method':_0x4b531e(0x1f9),'url':_0x4b531e(0x1f2),'body':{..._0x3bb71a,'appCode':_0x38707d['appCode']},'description':_0x4b531e(0x212)+_0x3bb71a['id']+'.'});},async 'execute'(_0x29ab1e){const _0x2917ad=a159_0x343a45;validateMoveInput(_0x29ab1e);const {plan:_0x535c2c,patch:_0xeceb5b,noChanges:_0xa366aa,snapshot:_0x54ab8}=await buildMovePlan(_0x29ab1e,![]),_0x54fdcf=_0xeceb5b['id'];if(!_0xa366aa)try{await updateMenuEntity(_0x29ab1e[_0x2917ad(0x1f4)],_0x29ab1e[_0x2917ad(0x1ff)],_0xeceb5b);}catch(_0x44074c){const _0x2b99be=mapMenuApiError(_0x44074c,_0x2917ad(0x202),_0x54fdcf);throw menuFailure(_0x2b99be,_0x535c2c,{'stage':'update','failed':{'id':_0x54fdcf},'warnings':[_0x2917ad(0x20e)],'verification':{'status':_0x2917ad(0x1fd),'targetId':_0x54fdcf,'lookupCommand':_0x2917ad(0x20a)}});}let _0x5748a0,_0x427be7;try{_0x5748a0=_0xa366aa?_0x54ab8:await fetchMenuSnapshot(_0x29ab1e[_0x2917ad(0x1f4)],_0x29ab1e[_0x2917ad(0x1ff)]),_0x427be7=requireMenu(_0x5748a0,_0x54fdcf),verifyMove(_0x427be7,_0x535c2c[_0x2917ad(0x20c)]),_0x427be7[_0x2917ad(0x211)]!==null&&requireFolder(_0x5748a0,_0x427be7[_0x2917ad(0x211)]);}catch(_0x1b4cc3){const _0x5d08b8=describeMenuErrorCause(_0x1b4cc3,'verify\x20menu\x20move',_0x54fdcf),_0x187e29=asVerificationError(_0x1b4cc3,_0x2917ad(0x1f0)+_0x54fdcf+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x187e29,_0x535c2c,{'stage':_0x2917ad(0x205),'succeeded':[{'id':_0x54fdcf,'updateRequested':!_0xa366aa,'skipped':_0xa366aa}],'failed':{'id':_0x54fdcf,'requestedStateConfirmed':![],..._0x5d08b8},'warnings':[_0x2917ad(0x1eb)],'verification':{'status':_0x2917ad(0x1fd),'targetId':_0x54fdcf,'lookupCommand':_0x2917ad(0x20a)}});}const _0x3233d6=mutationResult({..._0x535c2c,'after':_0x427be7,'dryRun':![],'succeeded':[{'id':_0x54fdcf,'updated':!_0xa366aa,'skipped':_0xa366aa}],'verification':{'checkedBy':_0x2917ad(0x217),'snapshotHash':_0x5748a0[_0x2917ad(0x1ed)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x3233d6,'message':_0xa366aa?_0x2917ad(0x208)+_0x54fdcf+_0x2917ad(0x207):_0x2917ad(0x209)+_0x54fdcf+'.'};}};function validateMoveInput(_0x4f7182){const _0x50ff7e=a159_0x343a45;validateExactId(_0x4f7182),parseParentId(_0x4f7182,_0x50ff7e(0x201),{'required':!![]}),parseParentId(_0x4f7182,_0x50ff7e(0x20b),{'required':!![]}),validateSort(_0x4f7182);}async function buildMovePlan(_0x5bad77,_0x3f42f7){const _0x26738d=a159_0x343a45,_0x59e99c=validateExactId(_0x5bad77),_0x183895=parseParentId(_0x5bad77,'parent-id',{'required':!![]}),_0x34527a=parseParentId(_0x5bad77,'expect-parent-id',{'required':!![]}),_0x3d4605=validateSort(_0x5bad77),_0x3ea3fd=await fetchMutationSnapshot(_0x5bad77,'move\x20menu',_0x59e99c),_0x32113e=requireMenu(_0x3ea3fd,_0x59e99c);if(_0x32113e[_0x26738d(0x1fb)]===_0x26738d(0x206)||_0x32113e['childrenCount']!==0x0)throw menuError(_0x26738d(0x1ee),_0x26738d(0x208)+_0x59e99c+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.',_0x26738d(0x1f1));if(_0x32113e[_0x26738d(0x211)]!==_0x34527a)throw menuError(_0x26738d(0x1fe),_0x26738d(0x208)+_0x59e99c+_0x26738d(0x215)+formatParent(_0x34527a)+_0x26738d(0x1fa)+formatParent(_0x32113e[_0x26738d(0x211)])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');_0x183895!==null&&requireFolder(_0x3ea3fd,_0x183895);const _0xda342=_0x3d4605??(_0x32113e[_0x26738d(0x211)]===_0x183895?_0x32113e[_0x26738d(0x203)]??0x0:nextSiblingSort(_0x3ea3fd,_0x183895,_0x26738d(0x20f))),_0x2b3651={..._0x32113e,'parentId':_0x183895,'sort':_0xda342},_0x24487d={'id':_0x59e99c,'parentId':toApiParentId(_0x183895),'sort':_0xda342},_0x4040b8=_0x32113e[_0x26738d(0x211)]===_0x183895&&_0x32113e[_0x26738d(0x203)]===_0xda342;return{'patch':_0x24487d,'noChanges':_0x4040b8,'snapshot':_0x3ea3fd,'plan':mutationResult({'operation':_0x26738d(0x202),'selector':{'id':_0x59e99c,'parentId':_0x183895},'before':_0x32113e,'after':_0x2b3651,'dryRun':_0x3f42f7,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':_0x26738d(0x1f9),'path':_0x26738d(0x1f2),'body':{..._0x24487d,'appCode':_0x5bad77[_0x26738d(0x1f4)]}}],'snapshotHash':_0x3ea3fd['hash'],'warnings':_0x4040b8?['Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.']:[]})};}function verifyMove(_0x44a075,_0x2d5d55){const _0xd3dd69=a159_0x343a45;assertVerified(_0x44a075[_0xd3dd69(0x1fb)]!==_0xd3dd69(0x206),_0xd3dd69(0x208)+_0x44a075['id']+'\x20is\x20now\x20type\x20folder.'),assertVerified(_0x44a075[_0xd3dd69(0x1fc)]===0x0,_0xd3dd69(0x208)+_0x44a075['id']+_0xd3dd69(0x216)),assertVerified(_0x44a075[_0xd3dd69(0x211)]===_0x2d5d55['parentId'],_0xd3dd69(0x208)+_0x44a075['id']+_0xd3dd69(0x1ef)),assertVerified(_0x44a075[_0xd3dd69(0x203)]===_0x2d5d55['sort'],_0xd3dd69(0x208)+_0x44a075['id']+_0xd3dd69(0x210));}function a159_0x1c59(){const _0x10e574=['\x20is\x20no\x20longer\x20a\x20leaf.','menu\x20list','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','4167288HCiojl','hash','menu_move_source_not_leaf','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','Move\x20request\x20for\x20menu\x20','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','/smartapi/menu/update','278243QHkgWO','appCode','24359nMEizV','4820004MEjtFR','231UGIgag','792eQSYIX','POST',',\x20current\x20','type','childrenCount','failed','menu_state_drift','cookie','1263969fraPHS','parent-id','move','sort','36970ixYxmZ','verification','folder','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','Menu\x20','Moved\x20menu\x20','rabetbase\x20menu\x20list\x20--format\x20compress','expect-parent-id','after','7865eWDGDq','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','parentId','Would\x20move\x20menu\x20','6JSreki','22dKbwuq','\x20parent\x20changed:\x20expected\x20'];a159_0x1c59=function(){return _0x10e574;};return a159_0x1c59();}
1
+ const a159_0x30d775=a159_0x5cda;(function(_0x27af46,_0x50f8e0){const _0x1a75f4=a159_0x5cda,_0x316fad=_0x27af46();while(!![]){try{const _0x52ca1f=-parseInt(_0x1a75f4(0x1ac))/0x1*(parseInt(_0x1a75f4(0x19d))/0x2)+parseInt(_0x1a75f4(0x1a5))/0x3+parseInt(_0x1a75f4(0x197))/0x4+-parseInt(_0x1a75f4(0x1b8))/0x5*(parseInt(_0x1a75f4(0x1b5))/0x6)+parseInt(_0x1a75f4(0x1a8))/0x7*(parseInt(_0x1a75f4(0x199))/0x8)+-parseInt(_0x1a75f4(0x1a0))/0x9*(-parseInt(_0x1a75f4(0x1b2))/0xa)+-parseInt(_0x1a75f4(0x1ad))/0xb*(parseInt(_0x1a75f4(0x192))/0xc);if(_0x52ca1f===_0x50f8e0)break;else _0x316fad['push'](_0x316fad['shift']());}catch(_0x19d728){_0x316fad['push'](_0x316fad['shift']());}}}(a159_0x2541,0x70ab9));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':a159_0x30d775(0x1a1),'path':a159_0x30d775(0x1ab)}];export const menuMove={'service':a159_0x30d775(0x19e),'command':a159_0x30d775(0x1ba),'description':a159_0x30d775(0x19c),'risk':a159_0x30d775(0x191),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5bc54b){validateMoveInput(_0x5bc54b);},async 'dryRun'(_0x3227fd){const _0x5e0240=a159_0x30d775,{plan:_0x161c36,patch:_0x10fff8}=await buildMovePlan(_0x3227fd,!![]);return menuDryRunResult(_0x161c36,{'method':_0x5e0240(0x1a1),'url':_0x5e0240(0x1ab),'body':{..._0x10fff8,'appCode':_0x3227fd[_0x5e0240(0x1b4)]},'description':_0x5e0240(0x19a)+_0x10fff8['id']+'.'});},async 'execute'(_0x44283a){const _0x1f2e3a=a159_0x30d775;validateMoveInput(_0x44283a);const {plan:_0x2b96d0,patch:_0x87d2c,noChanges:_0x437a36,snapshot:_0x30b1c7}=await buildMovePlan(_0x44283a,![]),_0x56ef41=_0x87d2c['id'];if(!_0x437a36)try{await updateMenuEntity(_0x44283a[_0x1f2e3a(0x1b4)],_0x44283a[_0x1f2e3a(0x1bc)],_0x87d2c);}catch(_0x578cd5){const _0x581715=mapMenuApiError(_0x578cd5,_0x1f2e3a(0x1ba),_0x56ef41);throw menuFailure(_0x581715,_0x2b96d0,{'stage':_0x1f2e3a(0x1aa),'failed':{'id':_0x56ef41},'warnings':['The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x1f2e3a(0x1b0),'targetId':_0x56ef41,'lookupCommand':_0x1f2e3a(0x19b)}});}let _0x40bebb,_0x1b9cc7;try{_0x40bebb=_0x437a36?_0x30b1c7:await fetchMenuSnapshot(_0x44283a['appCode'],_0x44283a[_0x1f2e3a(0x1bc)]),_0x1b9cc7=requireMenu(_0x40bebb,_0x56ef41),verifyMove(_0x1b9cc7,_0x2b96d0[_0x1f2e3a(0x18a)]),_0x1b9cc7[_0x1f2e3a(0x1a7)]!==null&&requireFolder(_0x40bebb,_0x1b9cc7[_0x1f2e3a(0x1a7)]);}catch(_0xa0fff8){const _0x579d7c=describeMenuErrorCause(_0xa0fff8,_0x1f2e3a(0x18c),_0x56ef41),_0xa7ae52=asVerificationError(_0xa0fff8,_0x1f2e3a(0x190)+_0x56ef41+_0x1f2e3a(0x1af));throw menuFailure(_0xa7ae52,_0x2b96d0,{'stage':_0x1f2e3a(0x18f),'succeeded':[{'id':_0x56ef41,'updateRequested':!_0x437a36,'skipped':_0x437a36}],'failed':{'id':_0x56ef41,'requestedStateConfirmed':![],..._0x579d7c},'warnings':['The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x1f2e3a(0x1b0),'targetId':_0x56ef41,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x4b64ff=mutationResult({..._0x2b96d0,'after':_0x1b9cc7,'dryRun':![],'succeeded':[{'id':_0x56ef41,'updated':!_0x437a36,'skipped':_0x437a36}],'verification':{'checkedBy':_0x1f2e3a(0x19f),'snapshotHash':_0x40bebb['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x4b64ff,'message':_0x437a36?_0x1f2e3a(0x194)+_0x56ef41+_0x1f2e3a(0x1bd):_0x1f2e3a(0x193)+_0x56ef41+'.'};}};function a159_0x2541(){const _0x5aabeb=['\x20is\x20no\x20longer\x20a\x20leaf.','\x20is\x20now\x20type\x20folder.','\x20parent\x20changed:\x20expected\x20','2280345hYcmAq','hash','parentId','3212699ABQlVk','menu_state_drift','update','/smartapi/menu/update','139AoQRHH','142637HEHVlx','type','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','failed',',\x20current\x20','1272620XpBEmM','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.','appCode','306312toRHuK','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','parent-id','75vewcLL','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','move','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','cookie','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','after','childrenCount','verify\x20menu\x20move','expect-parent-id','sort','verification','Move\x20request\x20for\x20menu\x20','write','924snPORo','Moved\x20menu\x20','Menu\x20','menu_move_source_not_leaf','folder','2206584kgvMBj','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','16qHXtlt','Would\x20move\x20menu\x20','rabetbase\x20menu\x20list\x20--format\x20compress','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','5550wKWsBL','menu','menu\x20list','27yDUeKJ','POST'];a159_0x2541=function(){return _0x5aabeb;};return a159_0x2541();}function validateMoveInput(_0x1dc219){const _0x4a8682=a159_0x30d775;validateExactId(_0x1dc219),parseParentId(_0x1dc219,'parent-id',{'required':!![]}),parseParentId(_0x1dc219,_0x4a8682(0x18d),{'required':!![]}),validateSort(_0x1dc219);}async function buildMovePlan(_0x316c4c,_0xe99319){const _0x191e3d=a159_0x30d775,_0x32a780=validateExactId(_0x316c4c),_0x2539d8=parseParentId(_0x316c4c,_0x191e3d(0x1b7),{'required':!![]}),_0x4e9650=parseParentId(_0x316c4c,_0x191e3d(0x18d),{'required':!![]}),_0x585145=validateSort(_0x316c4c),_0x464c1f=await fetchMutationSnapshot(_0x316c4c,'move\x20menu',_0x32a780),_0xf51fb6=requireMenu(_0x464c1f,_0x32a780);if(_0xf51fb6[_0x191e3d(0x1ae)]==='folder'||_0xf51fb6[_0x191e3d(0x18b)]!==0x0)throw menuError(_0x191e3d(0x195),_0x191e3d(0x194)+_0x32a780+_0x191e3d(0x1b9),_0x191e3d(0x1b3));if(_0xf51fb6[_0x191e3d(0x1a7)]!==_0x4e9650)throw menuError(_0x191e3d(0x1a9),_0x191e3d(0x194)+_0x32a780+_0x191e3d(0x1a4)+formatParent(_0x4e9650)+_0x191e3d(0x1b1)+formatParent(_0xf51fb6[_0x191e3d(0x1a7)])+'.',_0x191e3d(0x1b6));_0x2539d8!==null&&requireFolder(_0x464c1f,_0x2539d8);const _0x2bd7da=_0x585145??(_0xf51fb6[_0x191e3d(0x1a7)]===_0x2539d8?_0xf51fb6['sort']??0x0:nextSiblingSort(_0x464c1f,_0x2539d8,'menu')),_0x2b4320={..._0xf51fb6,'parentId':_0x2539d8,'sort':_0x2bd7da},_0x31d9ea={'id':_0x32a780,'parentId':toApiParentId(_0x2539d8),'sort':_0x2bd7da},_0x2c876f=_0xf51fb6[_0x191e3d(0x1a7)]===_0x2539d8&&_0xf51fb6[_0x191e3d(0x18e)]===_0x2bd7da;return{'patch':_0x31d9ea,'noChanges':_0x2c876f,'snapshot':_0x464c1f,'plan':mutationResult({'operation':'move','selector':{'id':_0x32a780,'parentId':_0x2539d8},'before':_0xf51fb6,'after':_0x2b4320,'dryRun':_0xe99319,'backend':[...BACKEND],'plannedActions':[{'stage':'move-menu','method':'POST','path':'/smartapi/menu/update','body':{..._0x31d9ea,'appCode':_0x316c4c[_0x191e3d(0x1b4)]}}],'snapshotHash':_0x464c1f[_0x191e3d(0x1a6)],'warnings':_0x2c876f?[_0x191e3d(0x1bb)]:[]})};}function a159_0x5cda(_0x186413,_0x1112c2){_0x186413=_0x186413-0x18a;const _0x2541f0=a159_0x2541();let _0x5cda0b=_0x2541f0[_0x186413];return _0x5cda0b;}function verifyMove(_0xa45bf2,_0x26a973){const _0x23eee3=a159_0x30d775;assertVerified(_0xa45bf2[_0x23eee3(0x1ae)]!==_0x23eee3(0x196),_0x23eee3(0x194)+_0xa45bf2['id']+_0x23eee3(0x1a3)),assertVerified(_0xa45bf2[_0x23eee3(0x18b)]===0x0,'Menu\x20'+_0xa45bf2['id']+_0x23eee3(0x1a2)),assertVerified(_0xa45bf2['parentId']===_0x26a973['parentId'],_0x23eee3(0x194)+_0xa45bf2['id']+'\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.'),assertVerified(_0xa45bf2['sort']===_0x26a973['sort'],_0x23eee3(0x194)+_0xa45bf2['id']+_0x23eee3(0x198));}
@@ -1 +1 @@
1
- const a160_0xa5eabe=a160_0x5714;(function(_0x48864c,_0x562ac1){const _0x19d1db=a160_0x5714,_0x58c1b2=_0x48864c();while(!![]){try{const _0x2dd4e0=-parseInt(_0x19d1db(0xba))/0x1*(-parseInt(_0x19d1db(0xc8))/0x2)+-parseInt(_0x19d1db(0x8f))/0x3+parseInt(_0x19d1db(0xbe))/0x4+parseInt(_0x19d1db(0x7c))/0x5+-parseInt(_0x19d1db(0x7d))/0x6*(parseInt(_0x19d1db(0x9d))/0x7)+parseInt(_0x19d1db(0x88))/0x8*(-parseInt(_0x19d1db(0xc3))/0x9)+parseInt(_0x19d1db(0x81))/0xa;if(_0x2dd4e0===_0x562ac1)break;else _0x58c1b2['push'](_0x58c1b2['shift']());}catch(_0x4e0f29){_0x58c1b2['push'](_0x58c1b2['shift']());}}}(a160_0x2447,0x68eaa));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a160_0xa5eabe(0xa2),'path':a160_0xa5eabe(0x72)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a160_0xa5eabe(0xa7),'command':'regroup-start','description':a160_0xa5eabe(0xc7),'risk':a160_0xa5eabe(0x95),'structuredErrors':!![],'flags':[{'name':a160_0xa5eabe(0xd0),'type':a160_0xa5eabe(0x91),'required':!![],'description':a160_0xa5eabe(0x97)},{'name':a160_0xa5eabe(0xac),'type':'string','required':!![],'description':a160_0xa5eabe(0x87)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x14330c){validateRegroupInput(_0x14330c);},async 'dryRun'(_0x274e8a){const _0x4049dd=a160_0xa5eabe;validateRegroupInput(_0x274e8a);const _0x7989e0=await buildRegroupPlan(_0x274e8a,!![]);return menuDryRunResult(_0x7989e0[_0x4049dd(0xb0)],{'method':'POST','url':_0x4049dd(0x72),'body':_0x7989e0['input'],'description':_0x4049dd(0xcb)+JSON[_0x4049dd(0xbf)](_0x7989e0[_0x4049dd(0xd0)])+'\x20and\x20regroup\x20menu\x20ids\x20'+_0x7989e0['menuIds'][_0x4049dd(0xb8)](',\x20')+_0x4049dd(0xca)});},async 'execute'(_0x2895c1){const _0x53beb7=a160_0xa5eabe;validateRegroupInput(_0x2895c1);const _0xfdbfad=await buildRegroupPlan(_0x2895c1,![]);await recheckMutationSnapshot(_0x2895c1,_0xfdbfad[_0x53beb7(0xb0)],_0x53beb7(0x78));const _0x507c2e=buildMenuLookupCommand(_0x2895c1['appCode']);let _0x21ef55,_0x21c0b9;try{_0x21ef55=await startMenuRegroup(_0x2895c1[_0x53beb7(0xb5)],_0xfdbfad[_0x53beb7(0x8b)]),_0x21c0b9=normalizeAsyncTask(_0x21ef55);}catch(_0x22a6de){const _0x48fae0=await inspectRegroupAfterFailure(_0x2895c1[_0x53beb7(0xc5)],_0x2895c1[_0x53beb7(0xb5)],_0xfdbfad[_0x53beb7(0xd0)],_0xfdbfad[_0x53beb7(0x9c)]),_0x463741=typeof _0x21ef55?.[_0x53beb7(0xb1)]==='string'&&_0x21ef55[_0x53beb7(0xb1)][_0x53beb7(0x75)]()?_0x21ef55['taskId'][_0x53beb7(0x75)]():null,_0x28e064=_0x463741?{'command':buildAsyncTaskStatusCommand(_0x463741,_0x2895c1['appCode'])}:null,_0x44473c=mapMenuApiError(_0x22a6de,'start\x20menu\x20regroup');throw menuFailure(_0x44473c,_0xfdbfad[_0x53beb7(0xb0)],{'stage':_0x53beb7(0xc6),'failed':{'menuIds':_0xfdbfad[_0x53beb7(0x9c)],'taskId':_0x463741,'groupingApplied':_0x48fae0[_0x53beb7(0xaa)]?!![]:_0x53beb7(0x99)},'after':_0x48fae0[_0x53beb7(0xaa)]??null,'warnings':[_0x53beb7(0x8c),..._0x48fae0[_0x53beb7(0x94)]?[_0x53beb7(0xc9)+_0x48fae0[_0x53beb7(0x94)]]:[],..._0x463741?[_0x53beb7(0xa3)]:[]],'verification':{'status':_0x53beb7(0xa5),'groupingApplied':_0x48fae0[_0x53beb7(0xaa)]?!![]:_0x53beb7(0x99),'taskId':_0x463741,'query':_0x28e064,'lookupCommand':_0x507c2e}});}const _0x11c592=buildAsyncTaskStatusCommand(_0x21c0b9[_0x53beb7(0xb1)],_0x2895c1[_0x53beb7(0xc5)]);let _0x3fdac3=null,_0x15d736=null,_0x952b9b=null;try{_0x3fdac3=await fetchMenuSnapshot(_0x2895c1['appCode'],_0x2895c1['cookie']),_0x15d736=findAppliedRegroup(_0x3fdac3,_0xfdbfad[_0x53beb7(0xd0)],_0xfdbfad[_0x53beb7(0x9c)]);}catch(_0x205eae){_0x952b9b=_0x205eae instanceof Error?_0x205eae[_0x53beb7(0xa8)]:String(_0x205eae);}const _0x1f6758=mutationResult({..._0xfdbfad[_0x53beb7(0xb0)],'after':_0x15d736??null,'dryRun':![],'succeeded':[{'groupId':_0x15d736?.['group']['id']??null,'menuIds':_0xfdbfad['menuIds'],'taskId':_0x21c0b9[_0x53beb7(0xb1)],'status':_0x21c0b9[_0x53beb7(0xcf)],'groupingApplied':_0x15d736?!![]:_0x53beb7(0x99)}],'verification':{'checkedBy':_0x53beb7(0xa6),'snapshotHash':_0x3fdac3?.[_0x53beb7(0xae)]??null,'groupId':_0x15d736?.['group']['id']??null,'groupingApplied':_0x15d736?!![]:_0x53beb7(0x99),'readbackError':_0x952b9b,'lookupCommand':_0x507c2e},'warnings':[..._0xfdbfad[_0x53beb7(0xb0)][_0x53beb7(0x84)],...!_0x15d736?[unconfirmedRegroupWarning(_0x21c0b9)]:[],..._0x952b9b?[_0x53beb7(0x9a)+_0x952b9b]:[]]}),_0x98ba69=_0x21c0b9[_0x53beb7(0xcf)]===_0x53beb7(0x77)&&!_0x15d736?_0x53beb7(0xb6)+_0x21c0b9['taskId']+_0x53beb7(0xbb):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x21c0b9);return{'ok':!![],'message':_0x98ba69,'data':{..._0x1f6758,'task':_0x21c0b9,'query':_0x21c0b9[_0x53beb7(0x83)]?null:{'command':_0x11c592}}};}};function validateRegroupInput(_0x2fb787){const _0x29bbc0=a160_0xa5eabe;if(!_0x2fb787[_0x29bbc0(0x89)](_0x29bbc0(0xd0))[_0x29bbc0(0x75)]())throw CliErrors[_0x29bbc0(0xb7)]('label');parseMenuIds(_0x2fb787[_0x29bbc0(0x89)](_0x29bbc0(0xac)));}function parseMenuIds(_0x388005){const _0x29d15b=a160_0xa5eabe,_0x2d006f=_0x388005[_0x29d15b(0x9b)](',')[_0x29d15b(0xaf)](_0x4385b3=>_0x4385b3['trim']());if(_0x2d006f['length']===0x0||_0x2d006f[_0x29d15b(0x7f)](_0x510382=>!_0x510382))throw CliErrors['validation'](_0x29d15b(0xa9));const _0x4f94a5=_0x2d006f[_0x29d15b(0xaf)](_0x554e2f=>{const _0x201549=_0x29d15b;if(!/^\d+$/[_0x201549(0xb3)](_0x554e2f))throw CliErrors[_0x201549(0x7a)](_0x201549(0xa9));const _0x3e6d73=Number(_0x554e2f);if(!Number['isSafeInteger'](_0x3e6d73)||_0x3e6d73<=0x0)throw CliErrors['validation'](_0x201549(0xa9));return _0x3e6d73;});if(new Set(_0x4f94a5)[_0x29d15b(0xce)]!==_0x4f94a5[_0x29d15b(0xa4)])throw CliErrors[_0x29d15b(0x7a)]('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x4f94a5[_0x29d15b(0xa4)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x29d15b(0x7a)]('--menu-ids\x20supports\x20at\x20most\x20'+MAX_REGROUP_MENU_COUNT+'\x20menus\x20per\x20regroup\x20request.');return _0x4f94a5;}function buildMenuLookupCommand(_0x276bdd){const _0x24cb35=a160_0xa5eabe,_0x2af5c6='\x27'+_0x276bdd[_0x24cb35(0x76)](/'/g,_0x24cb35(0x86))+'\x27';return CLI_BIN_NAME+_0x24cb35(0xbd)+_0x2af5c6+_0x24cb35(0xcc);}function unconfirmedRegroupWarning(_0xd6b83d){const _0x1bc10c=a160_0xa5eabe;if(_0xd6b83d['status']==='SUCCESS')return _0x1bc10c(0x7b);if(_0xd6b83d[_0x1bc10c(0xcf)]===_0x1bc10c(0xc4))return _0x1bc10c(0xa1);if(_0xd6b83d[_0x1bc10c(0xad)])return _0x1bc10c(0xbc);return _0x1bc10c(0x8d);}function a160_0x5714(_0x51bf64,_0xd43e6a){_0x51bf64=_0x51bf64-0x70;const _0x244761=a160_0x2447();let _0x571459=_0x244761[_0x51bf64];return _0x571459;}async function buildRegroupPlan(_0x535283,_0x1652a2){const _0x446810=a160_0xa5eabe,_0x4972f4=_0x535283[_0x446810(0x89)]('label')['trim'](),_0x5a197e=parseMenuIds(_0x535283[_0x446810(0x89)](_0x446810(0xac))),_0x43a666=await fetchMutationSnapshot(_0x535283,_0x446810(0xb2)),_0x15d3d7=_0x5a197e[_0x446810(0xaf)](_0x335114=>requireMenu(_0x43a666,_0x335114));for(const _0x580ea1 of _0x15d3d7){if(_0x580ea1['type']['trim']()['toLowerCase']()===_0x446810(0x93)||_0x580ea1[_0x446810(0x8e)]>0x0)throw menuError('menu_regroup_target_not_leaf',_0x446810(0xb4)+_0x580ea1['id']+_0x446810(0x90),_0x446810(0xab));if(!_0x580ea1[_0x446810(0xd0)]['trim']())throw menuError(_0x446810(0x70),_0x446810(0xb4)+_0x580ea1['id']+_0x446810(0x8a),_0x446810(0x73));}const _0x240b47=findAppliedRegroup(_0x43a666,_0x4972f4,_0x5a197e);if(_0x240b47)throw menuError(_0x446810(0x74),'Menus\x20'+_0x5a197e['join'](',\x20')+_0x446810(0x92)+_0x240b47[_0x446810(0xa0)]['id']+'\x20('+JSON[_0x446810(0xbf)](_0x4972f4)+').','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.');const _0x914225=_0x43a666['menus'][_0x446810(0x98)](_0x369129=>_0x369129['parentId']==null&&_0x369129[_0x446810(0xc0)][_0x446810(0x75)]()['toLowerCase']()==='folder'&&_0x369129[_0x446810(0xd0)]===_0x4972f4);if(_0x914225[_0x446810(0xa4)]>0x0)throw menuError(_0x446810(0x9f),'Root\x20folder\x20label\x20'+JSON[_0x446810(0xbf)](_0x4972f4)+_0x446810(0xc2)+_0x914225[_0x446810(0xaf)](_0x2389b1=>_0x2389b1['id'])[_0x446810(0xb8)](',\x20')+'.',_0x446810(0x7e));const _0x3b8f5f={'appCode':_0x535283['appCode'],'menuGroups':[{'label':_0x4972f4,'type':'folder','children':_0x15d3d7[_0x446810(0xaf)](_0x3e71c7=>({'id':_0x3e71c7['id'],'label':_0x3e71c7[_0x446810(0xd0)]}))}]},_0x2e97a6=mutationResult({'operation':_0x446810(0x85),'selector':{'label':_0x4972f4,'menuIds':_0x5a197e},'before':{'menus':_0x15d3d7},'after':{'group':{'id':null,'parentId':null,'label':_0x4972f4,'path':'<platform-generated>','type':_0x446810(0x93),'childrenIds':_0x5a197e},'children':_0x15d3d7[_0x446810(0xaf)](_0x13abcc=>({'id':_0x13abcc['id'],'label':_0x13abcc['label'],'beforeParentId':_0x13abcc['parentId'],'afterParentId':_0x446810(0xb9)}))},'dryRun':_0x1652a2,'backend':[...BACKEND],'plannedActions':[{'stage':_0x446810(0x82),'method':'POST','path':'/smartapi/menu/regroup','body':_0x3b8f5f}],'snapshotHash':_0x43a666[_0x446810(0xae)],'warnings':[_0x446810(0x79),_0x446810(0x96)]});return{'label':_0x4972f4,'menuIds':_0x5a197e,'input':_0x3b8f5f,'plan':_0x2e97a6};}function findAppliedRegroup(_0x2f89c2,_0xc9f3db,_0x3555b3){const _0x4845e4=a160_0xa5eabe,_0x36d690=_0x3555b3[_0x4845e4(0xaf)](_0x2b8e38=>_0x2f89c2['byId']['get'](_0x2b8e38))['filter'](_0x225300=>Boolean(_0x225300));if(_0x36d690['length']!==_0x3555b3[_0x4845e4(0xa4)])return null;const _0x57eb63=_0x36d690[0x0]?.[_0x4845e4(0xc1)];if(_0x57eb63==null||_0x36d690[_0x4845e4(0x7f)](_0x357ca4=>_0x357ca4['parentId']!==_0x57eb63))return null;const _0x45c92d=_0x2f89c2[_0x4845e4(0x80)][_0x4845e4(0x71)](_0x57eb63);if(!_0x45c92d||_0x45c92d[_0x4845e4(0xc1)]!=null||_0x45c92d[_0x4845e4(0xc0)][_0x4845e4(0x75)]()[_0x4845e4(0x9e)]()!==_0x4845e4(0x93)||_0x45c92d[_0x4845e4(0xd0)]!==_0xc9f3db)return null;const _0x3864d5=[..._0x3555b3][_0x4845e4(0xcd)]((_0x58a415,_0x1956b2)=>_0x58a415-_0x1956b2),_0xe0df56=[..._0x45c92d['childrenIds']][_0x4845e4(0xcd)]((_0x3a9098,_0x5e9e1f)=>_0x3a9098-_0x5e9e1f);if(JSON[_0x4845e4(0xbf)](_0xe0df56)!==JSON[_0x4845e4(0xbf)](_0x3864d5))return null;return{'group':_0x45c92d,'children':_0x36d690};}async function inspectRegroupAfterFailure(_0x14b237,_0x44a32a,_0x907f96,_0xc1f801){const _0x3b8cb2=a160_0xa5eabe;try{const _0x360741=await fetchMenuSnapshot(_0x14b237,_0x44a32a);return{'applied':findAppliedRegroup(_0x360741,_0x907f96,_0xc1f801),'readbackError':null};}catch(_0x528f8f){return{'applied':null,'readbackError':_0x528f8f instanceof Error?_0x528f8f[_0x3b8cb2(0xa8)]:String(_0x528f8f)};}}function a160_0x2447(){const _0x3e2aff=['join','<new-group-id>','909NTTpSs','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','\x20menu\x20list\x20--appcode\x20','3318928xQTJjs','stringify','type','parentId','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','90ZAVOvf','FAILED','appCode','regroup-submit','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','908DLUMsX','Regroup\x20readback\x20also\x20failed:\x20',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','\x20--format\x20compress','sort','size','status','label','menu_regroup_target_label_missing','get','/smartapi/menu/regroup','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','menu_regroup_already_applied','trim','replace','SUCCESS','start\x20regroup','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','validation','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','3196370RKJext','1092zYawdi','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','some','byId','723490CVKuKg','submit-regroup-task','isTerminal','warnings','regroup-start','\x27\x5c\x27\x27','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','46712LSpvRy','str','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','input','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','childrenCount','1976229OWmUji','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','string','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','folder','readbackError','write','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','Label\x20of\x20the\x20new\x20root\x20folder','filter','unconfirmed','Regroup\x20readback\x20failed:\x20','split','menuIds','31045JCUkVQ','toLowerCase','menu_regroup_label_conflict','group','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','POST','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','length','failed','menu\x20list','menu','message','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','applied','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','menu-ids','knownStatus','hash','map','plan','taskId','plan\x20regroup','test','Menu\x20','cookie','Regroup\x20task\x20','flagMissing'];a160_0x2447=function(){return _0x3e2aff;};return a160_0x2447();}
1
+ const a160_0x48634e=a160_0x4568;function a160_0x4568(_0x4cd9cc,_0xd20a04){_0x4cd9cc=_0x4cd9cc-0x10f;const _0x555680=a160_0x5556();let _0x4568fe=_0x555680[_0x4cd9cc];return _0x4568fe;}(function(_0x4cb3be,_0x476d94){const _0x538aaf=a160_0x4568,_0x48930b=_0x4cb3be();while(!![]){try{const _0x371b4a=parseInt(_0x538aaf(0x124))/0x1+parseInt(_0x538aaf(0x11a))/0x2+parseInt(_0x538aaf(0x157))/0x3+-parseInt(_0x538aaf(0x126))/0x4*(parseInt(_0x538aaf(0x135))/0x5)+parseInt(_0x538aaf(0x153))/0x6*(parseInt(_0x538aaf(0x12c))/0x7)+parseInt(_0x538aaf(0x12e))/0x8+-parseInt(_0x538aaf(0x129))/0x9*(parseInt(_0x538aaf(0x141))/0xa);if(_0x371b4a===_0x476d94)break;else _0x48930b['push'](_0x48930b['shift']());}catch(_0x40eef9){_0x48930b['push'](_0x48930b['shift']());}}}(a160_0x5556,0x7372e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a160_0x48634e(0x148),'path':a160_0x48634e(0x13c)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a160_0x48634e(0x152),'command':'regroup-start','description':a160_0x48634e(0x144),'risk':a160_0x48634e(0x117),'structuredErrors':!![],'flags':[{'name':a160_0x48634e(0x139),'type':'string','required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a160_0x48634e(0x156),'type':'string','required':!![],'description':a160_0x48634e(0x162)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x6d9c64){validateRegroupInput(_0x6d9c64);},async 'dryRun'(_0x271d9c){const _0x3d00e2=a160_0x48634e;validateRegroupInput(_0x271d9c);const _0x1939b3=await buildRegroupPlan(_0x271d9c,!![]);return menuDryRunResult(_0x1939b3[_0x3d00e2(0x131)],{'method':'POST','url':'/smartapi/menu/regroup','body':_0x1939b3['input'],'description':'Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20'+JSON['stringify'](_0x1939b3['label'])+_0x3d00e2(0x13e)+_0x1939b3[_0x3d00e2(0x164)][_0x3d00e2(0x15c)](',\x20')+';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.'});},async 'execute'(_0x26e5ab){const _0x143a55=a160_0x48634e;validateRegroupInput(_0x26e5ab);const _0x590ed6=await buildRegroupPlan(_0x26e5ab,![]);await recheckMutationSnapshot(_0x26e5ab,_0x590ed6[_0x143a55(0x131)],'start\x20regroup');const _0x135bcb=buildMenuLookupCommand(_0x26e5ab['appCode']);let _0x326c32,_0x5f3004;try{_0x326c32=await startMenuRegroup(_0x26e5ab[_0x143a55(0x14d)],_0x590ed6[_0x143a55(0x137)]),_0x5f3004=normalizeAsyncTask(_0x326c32);}catch(_0x511a2f){const _0x192fe5=await inspectRegroupAfterFailure(_0x26e5ab[_0x143a55(0x125)],_0x26e5ab['cookie'],_0x590ed6['label'],_0x590ed6[_0x143a55(0x164)]),_0x247fab=typeof _0x326c32?.[_0x143a55(0x160)]==='string'&&_0x326c32[_0x143a55(0x160)]['trim']()?_0x326c32[_0x143a55(0x160)][_0x143a55(0x143)]():null,_0x2ee240=_0x247fab?{'command':buildAsyncTaskStatusCommand(_0x247fab,_0x26e5ab[_0x143a55(0x125)])}:null,_0x51504c=mapMenuApiError(_0x511a2f,'start\x20menu\x20regroup');throw menuFailure(_0x51504c,_0x590ed6[_0x143a55(0x131)],{'stage':_0x143a55(0x15b),'failed':{'menuIds':_0x590ed6[_0x143a55(0x164)],'taskId':_0x247fab,'groupingApplied':_0x192fe5[_0x143a55(0x123)]?!![]:_0x143a55(0x120)},'after':_0x192fe5[_0x143a55(0x123)]??null,'warnings':['The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.',..._0x192fe5[_0x143a55(0x163)]?['Regroup\x20readback\x20also\x20failed:\x20'+_0x192fe5['readbackError']]:[],..._0x247fab?[_0x143a55(0x14b)]:[]],'verification':{'status':_0x143a55(0x128),'groupingApplied':_0x192fe5['applied']?!![]:_0x143a55(0x120),'taskId':_0x247fab,'query':_0x2ee240,'lookupCommand':_0x135bcb}});}const _0x50d09f=buildAsyncTaskStatusCommand(_0x5f3004[_0x143a55(0x160)],_0x26e5ab[_0x143a55(0x125)]);let _0x5dbcf1=null,_0x3157c0=null,_0x1c1639=null;try{_0x5dbcf1=await fetchMenuSnapshot(_0x26e5ab[_0x143a55(0x125)],_0x26e5ab[_0x143a55(0x14d)]),_0x3157c0=findAppliedRegroup(_0x5dbcf1,_0x590ed6[_0x143a55(0x139)],_0x590ed6[_0x143a55(0x164)]);}catch(_0x37a5fa){_0x1c1639=_0x37a5fa instanceof Error?_0x37a5fa[_0x143a55(0x149)]:String(_0x37a5fa);}const _0x386316=mutationResult({..._0x590ed6[_0x143a55(0x131)],'after':_0x3157c0??null,'dryRun':![],'succeeded':[{'groupId':_0x3157c0?.[_0x143a55(0x113)]['id']??null,'menuIds':_0x590ed6[_0x143a55(0x164)],'taskId':_0x5f3004[_0x143a55(0x160)],'status':_0x5f3004[_0x143a55(0x11f)],'groupingApplied':_0x3157c0?!![]:'unconfirmed'}],'verification':{'checkedBy':_0x143a55(0x159),'snapshotHash':_0x5dbcf1?.[_0x143a55(0x158)]??null,'groupId':_0x3157c0?.[_0x143a55(0x113)]['id']??null,'groupingApplied':_0x3157c0?!![]:_0x143a55(0x120),'readbackError':_0x1c1639,'lookupCommand':_0x135bcb},'warnings':[..._0x590ed6['plan'][_0x143a55(0x13f)],...!_0x3157c0?[unconfirmedRegroupWarning(_0x5f3004)]:[],..._0x1c1639?[_0x143a55(0x11c)+_0x1c1639]:[]]}),_0x3fc0e8=_0x5f3004['status']===_0x143a55(0x13d)&&!_0x3157c0?_0x143a55(0x142)+_0x5f3004[_0x143a55(0x160)]+_0x143a55(0x165):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x5f3004);return{'ok':!![],'message':_0x3fc0e8,'data':{..._0x386316,'task':_0x5f3004,'query':_0x5f3004['isTerminal']?null:{'command':_0x50d09f}}};}};function validateRegroupInput(_0x1b4587){const _0x23f9eb=a160_0x48634e;if(!_0x1b4587['str'](_0x23f9eb(0x139))[_0x23f9eb(0x143)]())throw CliErrors[_0x23f9eb(0x14e)](_0x23f9eb(0x139));parseMenuIds(_0x1b4587[_0x23f9eb(0x138)](_0x23f9eb(0x156)));}function parseMenuIds(_0x50dc21){const _0x32e37b=a160_0x48634e,_0x390c93=_0x50dc21['split'](',')[_0x32e37b(0x154)](_0x2b55c6=>_0x2b55c6['trim']());if(_0x390c93[_0x32e37b(0x111)]===0x0||_0x390c93[_0x32e37b(0x15d)](_0x5b23f3=>!_0x5b23f3))throw CliErrors[_0x32e37b(0x132)](_0x32e37b(0x116));const _0x5088e4=_0x390c93[_0x32e37b(0x154)](_0x58ff10=>{const _0x4285ef=_0x32e37b;if(!/^\d+$/[_0x4285ef(0x114)](_0x58ff10))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x5a5184=Number(_0x58ff10);if(!Number['isSafeInteger'](_0x5a5184)||_0x5a5184<=0x0)throw CliErrors[_0x4285ef(0x132)](_0x4285ef(0x116));return _0x5a5184;});if(new Set(_0x5088e4)[_0x32e37b(0x147)]!==_0x5088e4[_0x32e37b(0x111)])throw CliErrors['validation'](_0x32e37b(0x12b));if(_0x5088e4[_0x32e37b(0x111)]>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x32e37b(0x14c)+MAX_REGROUP_MENU_COUNT+_0x32e37b(0x130));return _0x5088e4;}function buildMenuLookupCommand(_0x5985de){const _0xf5ab12=a160_0x48634e,_0x41abe4='\x27'+_0x5985de[_0xf5ab12(0x136)](/'/g,_0xf5ab12(0x146))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x41abe4+_0xf5ab12(0x10f);}function a160_0x5556(){const _0x202acb=['stringify','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','--menu-ids\x20supports\x20at\x20most\x20','cookie','flagMissing','toLowerCase','type','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','menu','201342DNGPQI','map','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','menu-ids','1244811jlOdMH','hash','menu\x20list','regroup-start','regroup-submit','join','some','menu_regroup_target_label_missing','sort','taskId','plan\x20regroup','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','readbackError','menuIds','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','childrenCount','\x20--format\x20compress','Menu\x20','length','menu_regroup_already_applied','group','test','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','write','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','1125576fkmbac','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','Regroup\x20readback\x20failed:\x20','filter','parentId','status','unconfirmed','submit-regroup-task','byId','applied','225856OAvGam','appCode','4jtDTwN','menus','failed','198HZeoBk','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','14Apxskz','<new-group-id>','3074688MPkVnn','folder','\x20menus\x20per\x20regroup\x20request.','plan','validation','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','1404505AJkUzT','replace','input','str','label','menu_regroup_target_not_leaf','knownStatus','/smartapi/menu/regroup','SUCCESS','\x20and\x20regroup\x20menu\x20ids\x20','warnings','Menus\x20','409660JmFATZ','Regroup\x20task\x20','trim','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','get','\x27\x5c\x27\x27','size','POST','message'];a160_0x5556=function(){return _0x202acb;};return a160_0x5556();}function unconfirmedRegroupWarning(_0x5cdaa7){const _0x721244=a160_0x48634e;if(_0x5cdaa7[_0x721244(0x11f)]===_0x721244(0x13d))return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x5cdaa7[_0x721244(0x11f)]==='FAILED')return _0x721244(0x151);if(_0x5cdaa7[_0x721244(0x13b)])return _0x721244(0x118);return _0x721244(0x134);}async function buildRegroupPlan(_0x5f0c11,_0x547da6){const _0x499cf1=a160_0x48634e,_0x1cff48=_0x5f0c11[_0x499cf1(0x138)](_0x499cf1(0x139))[_0x499cf1(0x143)](),_0x37c5bd=parseMenuIds(_0x5f0c11[_0x499cf1(0x138)](_0x499cf1(0x156))),_0x4a66e1=await fetchMutationSnapshot(_0x5f0c11,_0x499cf1(0x161)),_0x2f84f0=_0x37c5bd[_0x499cf1(0x154)](_0x4ffeb9=>requireMenu(_0x4a66e1,_0x4ffeb9));for(const _0x474393 of _0x2f84f0){if(_0x474393[_0x499cf1(0x150)][_0x499cf1(0x143)]()[_0x499cf1(0x14f)]()===_0x499cf1(0x12f)||_0x474393[_0x499cf1(0x166)]>0x0)throw menuError(_0x499cf1(0x13a),_0x499cf1(0x110)+_0x474393['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.');if(!_0x474393[_0x499cf1(0x139)][_0x499cf1(0x143)]())throw menuError(_0x499cf1(0x15e),_0x499cf1(0x110)+_0x474393['id']+_0x499cf1(0x115),_0x499cf1(0x133));}const _0x3f2b9f=findAppliedRegroup(_0x4a66e1,_0x1cff48,_0x37c5bd);if(_0x3f2b9f)throw menuError(_0x499cf1(0x112),_0x499cf1(0x140)+_0x37c5bd[_0x499cf1(0x15c)](',\x20')+'\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'+_0x3f2b9f[_0x499cf1(0x113)]['id']+'\x20('+JSON[_0x499cf1(0x14a)](_0x1cff48)+').','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.');const _0x3ca15d=_0x4a66e1[_0x499cf1(0x127)][_0x499cf1(0x11d)](_0xc1c8ad=>_0xc1c8ad[_0x499cf1(0x11e)]==null&&_0xc1c8ad[_0x499cf1(0x150)][_0x499cf1(0x143)]()[_0x499cf1(0x14f)]()==='folder'&&_0xc1c8ad['label']===_0x1cff48);if(_0x3ca15d[_0x499cf1(0x111)]>0x0)throw menuError('menu_regroup_label_conflict','Root\x20folder\x20label\x20'+JSON['stringify'](_0x1cff48)+_0x499cf1(0x155)+_0x3ca15d[_0x499cf1(0x154)](_0x3d0eca=>_0x3d0eca['id'])[_0x499cf1(0x15c)](',\x20')+'.',_0x499cf1(0x12a));const _0x1c09b6={'appCode':_0x5f0c11[_0x499cf1(0x125)],'menuGroups':[{'label':_0x1cff48,'type':_0x499cf1(0x12f),'children':_0x2f84f0['map'](_0x6c85f6=>({'id':_0x6c85f6['id'],'label':_0x6c85f6[_0x499cf1(0x139)]}))}]},_0x50ea85=mutationResult({'operation':_0x499cf1(0x15a),'selector':{'label':_0x1cff48,'menuIds':_0x37c5bd},'before':{'menus':_0x2f84f0},'after':{'group':{'id':null,'parentId':null,'label':_0x1cff48,'path':'<platform-generated>','type':_0x499cf1(0x12f),'childrenIds':_0x37c5bd},'children':_0x2f84f0[_0x499cf1(0x154)](_0x539dfb=>({'id':_0x539dfb['id'],'label':_0x539dfb[_0x499cf1(0x139)],'beforeParentId':_0x539dfb[_0x499cf1(0x11e)],'afterParentId':_0x499cf1(0x12d)}))},'dryRun':_0x547da6,'backend':[...BACKEND],'plannedActions':[{'stage':_0x499cf1(0x121),'method':_0x499cf1(0x148),'path':_0x499cf1(0x13c),'body':_0x1c09b6}],'snapshotHash':_0x4a66e1[_0x499cf1(0x158)],'warnings':[_0x499cf1(0x119),_0x499cf1(0x11b)]});return{'label':_0x1cff48,'menuIds':_0x37c5bd,'input':_0x1c09b6,'plan':_0x50ea85};}function findAppliedRegroup(_0x5bf8e8,_0x54f951,_0x39e617){const _0x46e835=a160_0x48634e,_0x471747=_0x39e617['map'](_0x3cba30=>_0x5bf8e8['byId'][_0x46e835(0x145)](_0x3cba30))[_0x46e835(0x11d)](_0x5c5831=>Boolean(_0x5c5831));if(_0x471747[_0x46e835(0x111)]!==_0x39e617[_0x46e835(0x111)])return null;const _0x35dfa0=_0x471747[0x0]?.['parentId'];if(_0x35dfa0==null||_0x471747[_0x46e835(0x15d)](_0x214ca1=>_0x214ca1['parentId']!==_0x35dfa0))return null;const _0x13b8e1=_0x5bf8e8[_0x46e835(0x122)][_0x46e835(0x145)](_0x35dfa0);if(!_0x13b8e1||_0x13b8e1['parentId']!=null||_0x13b8e1[_0x46e835(0x150)][_0x46e835(0x143)]()[_0x46e835(0x14f)]()!==_0x46e835(0x12f)||_0x13b8e1[_0x46e835(0x139)]!==_0x54f951)return null;const _0x604829=[..._0x39e617][_0x46e835(0x15f)]((_0x5e9a9e,_0x590d01)=>_0x5e9a9e-_0x590d01),_0x36349c=[..._0x13b8e1['childrenIds']]['sort']((_0xf2174,_0xabb297)=>_0xf2174-_0xabb297);if(JSON[_0x46e835(0x14a)](_0x36349c)!==JSON[_0x46e835(0x14a)](_0x604829))return null;return{'group':_0x13b8e1,'children':_0x471747};}async function inspectRegroupAfterFailure(_0x27dc1f,_0x4b97d7,_0x383a65,_0xce2a50){try{const _0x3d4f84=await fetchMenuSnapshot(_0x27dc1f,_0x4b97d7);return{'applied':findAppliedRegroup(_0x3d4f84,_0x383a65,_0xce2a50),'readbackError':null};}catch(_0x37a2ca){return{'applied':null,'readbackError':_0x37a2ca instanceof Error?_0x37a2ca['message']:String(_0x37a2ca)};}}