@lovrabet/rabetbase-cli 2.3.16-beta.7 → 2.4.1-beta.1

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 (435) hide show
  1. package/README.md +4 -10
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.js +1 -1
  11. package/lib/auth/login-success-html.js +1 -1
  12. package/lib/auth/logout.js +1 -1
  13. package/lib/cli-flags.js +1 -1
  14. package/lib/cli.js +1 -1
  15. package/lib/commands/api/generate.js +1 -1
  16. package/lib/commands/api/index.js +1 -1
  17. package/lib/commands/api/list.js +1 -1
  18. package/lib/commands/api/pull.js +1 -1
  19. package/lib/commands/api/shared.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/members-list.js +1 -1
  23. package/lib/commands/app/remote-directory.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/get.js +1 -1
  53. package/lib/commands/config/index.js +1 -1
  54. package/lib/commands/config/list.js +1 -1
  55. package/lib/commands/config/set.js +1 -1
  56. package/lib/commands/config/shared.js +1 -1
  57. package/lib/commands/data/filter.js +1 -1
  58. package/lib/commands/data/getOne.js +1 -1
  59. package/lib/commands/data/index.js +1 -1
  60. package/lib/commands/data/shared.js +1 -1
  61. package/lib/commands/dataset/business-group-update.js +1 -1
  62. package/lib/commands/dataset/capability.js +1 -1
  63. package/lib/commands/dataset/delete.js +1 -1
  64. package/lib/commands/dataset/detail.js +1 -1
  65. package/lib/commands/dataset/extend-update.js +1 -1
  66. package/lib/commands/dataset/field-update.js +1 -1
  67. package/lib/commands/dataset/generate.js +1 -1
  68. package/lib/commands/dataset/index.js +1 -1
  69. package/lib/commands/dataset/list.js +1 -1
  70. package/lib/commands/dataset/operations.js +1 -1
  71. package/lib/commands/dataset/relation-audit.js +1 -1
  72. package/lib/commands/dataset/relation-create.js +1 -1
  73. package/lib/commands/dataset/relation-delete.js +1 -1
  74. package/lib/commands/dataset/relation-shared.js +1 -1
  75. package/lib/commands/dataset/relation-update.js +1 -1
  76. package/lib/commands/dataset/relations.js +1 -1
  77. package/lib/commands/dataset/rename.js +1 -1
  78. package/lib/commands/dataset/restore.js +1 -1
  79. package/lib/commands/db/analysis-batching.js +1 -1
  80. package/lib/commands/db/analyze-batch-plan.js +1 -1
  81. package/lib/commands/db/analyze-cancel.js +1 -1
  82. package/lib/commands/db/analyze-start.js +1 -1
  83. package/lib/commands/db/analyze-status.js +1 -1
  84. package/lib/commands/db/create.js +1 -1
  85. package/lib/commands/db/delete.js +1 -1
  86. package/lib/commands/db/detail.js +1 -1
  87. package/lib/commands/db/diff.js +1 -1
  88. package/lib/commands/db/index.js +1 -1
  89. package/lib/commands/db/list.js +1 -1
  90. package/lib/commands/db/shared.js +1 -1
  91. package/lib/commands/db/tables.js +1 -1
  92. package/lib/commands/db/test.js +1 -1
  93. package/lib/commands/db/update.js +1 -1
  94. package/lib/commands/doctor.js +1 -1
  95. package/lib/commands/file/index.js +1 -1
  96. package/lib/commands/init/index.js +1 -1
  97. package/lib/commands/issue/index.js +1 -1
  98. package/lib/commands/issue/nudge.js +1 -1
  99. package/lib/commands/issue/report.js +1 -1
  100. package/lib/commands/issue/shared.js +1 -1
  101. package/lib/commands/kb/create.js +1 -1
  102. package/lib/commands/kb/delete.js +1 -1
  103. package/lib/commands/kb/detail.js +1 -1
  104. package/lib/commands/kb/index.js +1 -1
  105. package/lib/commands/kb/list.js +1 -1
  106. package/lib/commands/kb/shared.js +1 -1
  107. package/lib/commands/kb/update.js +1 -1
  108. package/lib/commands/logs/index.js +1 -1
  109. package/lib/commands/menu/asset-update.js +1 -1
  110. package/lib/commands/menu/delete.js +1 -1
  111. package/lib/commands/menu/external-link-create.js +1 -1
  112. package/lib/commands/menu/external-link-update.js +1 -1
  113. package/lib/commands/menu/group-create.js +1 -1
  114. package/lib/commands/menu/group-update.js +1 -1
  115. package/lib/commands/menu/index.js +1 -1
  116. package/lib/commands/menu/list.js +1 -1
  117. package/lib/commands/menu/move.js +1 -1
  118. package/lib/commands/menu/regroup-start.js +1 -1
  119. package/lib/commands/menu/rename.js +1 -1
  120. package/lib/commands/menu/shared/compare-table.js +1 -1
  121. package/lib/commands/menu/shared/delete-plan.js +1 -1
  122. package/lib/commands/menu/shared/facts.js +1 -1
  123. package/lib/commands/menu/shared/index.js +1 -1
  124. package/lib/commands/menu/shared/inquirer.js +1 -1
  125. package/lib/commands/menu/shared/local-pages.js +1 -1
  126. package/lib/commands/menu/shared/logic.js +1 -1
  127. package/lib/commands/menu/shared/mutations.js +1 -1
  128. package/lib/commands/menu/shared/service.js +1 -1
  129. package/lib/commands/menu/shared/sync-core.js +1 -1
  130. package/lib/commands/menu/shared/update-core.js +1 -1
  131. package/lib/commands/menu/shared/valid-url.js +1 -1
  132. package/lib/commands/menu/sync.js +1 -1
  133. package/lib/commands/notification/config-list.js +1 -1
  134. package/lib/commands/notification/index.js +1 -1
  135. package/lib/commands/ocr/index.js +1 -1
  136. package/lib/commands/page/generate-start.js +1 -1
  137. package/lib/commands/page/generate-status.js +1 -1
  138. package/lib/commands/page/index.js +1 -1
  139. package/lib/commands/page/pull.js +1 -1
  140. package/lib/commands/page/push.js +1 -1
  141. package/lib/commands/page/react/create.d.ts +2 -0
  142. package/lib/commands/page/react/create.js +1 -0
  143. package/lib/commands/page/react/detail.d.ts +2 -0
  144. package/lib/commands/page/react/detail.js +1 -0
  145. package/lib/commands/page/react/list.d.ts +2 -0
  146. package/lib/commands/page/react/list.js +1 -0
  147. package/lib/commands/page/react/publish.d.ts +2 -0
  148. package/lib/commands/page/react/publish.js +1 -0
  149. package/lib/commands/page/react/shared.d.ts +78 -0
  150. package/lib/commands/page/react/shared.js +1 -0
  151. package/lib/commands/page/react/syntax.d.ts +18 -0
  152. package/lib/commands/page/react/syntax.js +1 -0
  153. package/lib/commands/page/react/template.d.ts +8 -0
  154. package/lib/commands/page/react/template.js +1 -0
  155. package/lib/commands/page/react/update.d.ts +2 -0
  156. package/lib/commands/page/react/update.js +1 -0
  157. package/lib/commands/page/relation-audit.js +1 -1
  158. package/lib/commands/page/restore.js +1 -1
  159. package/lib/commands/page/shared.d.ts +1 -0
  160. package/lib/commands/page/shared.js +1 -1
  161. package/lib/commands/page/standard-page-status.js +1 -1
  162. package/lib/commands/page/sync.js +1 -1
  163. package/lib/commands/permit/index.js +1 -1
  164. package/lib/commands/permit/page-get.js +1 -1
  165. package/lib/commands/permit/page-set.js +1 -1
  166. package/lib/commands/permit/role-apis-set.js +1 -1
  167. package/lib/commands/permit/role-menus-set.js +1 -1
  168. package/lib/commands/permit/role-menus.js +1 -1
  169. package/lib/commands/permit/shared.js +1 -1
  170. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  171. package/lib/commands/project/create/format-elapsed.js +1 -1
  172. package/lib/commands/project/create/main.js +1 -1
  173. package/lib/commands/project/create/non-interactive.js +1 -1
  174. package/lib/commands/project/create/project-template-path.js +1 -1
  175. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  176. package/lib/commands/project/create/use-format-code.js +1 -1
  177. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  178. package/lib/commands/project/index.js +1 -1
  179. package/lib/commands/project/upgrade.js +1 -1
  180. package/lib/commands/registry.js +1 -1
  181. package/lib/commands/role/create.js +1 -1
  182. package/lib/commands/role/delete.js +1 -1
  183. package/lib/commands/role/detail.js +1 -1
  184. package/lib/commands/role/index.js +1 -1
  185. package/lib/commands/role/list.js +1 -1
  186. package/lib/commands/role/shared.js +1 -1
  187. package/lib/commands/role/update.js +1 -1
  188. package/lib/commands/role/user-add.js +1 -1
  189. package/lib/commands/role/user-remove.js +1 -1
  190. package/lib/commands/role/user-resolve.js +1 -1
  191. package/lib/commands/run/index.js +1 -1
  192. package/lib/commands/schema.js +1 -1
  193. package/lib/commands/sql/create.js +1 -1
  194. package/lib/commands/sql/delete.js +1 -1
  195. package/lib/commands/sql/detail.js +1 -1
  196. package/lib/commands/sql/exec.js +1 -1
  197. package/lib/commands/sql/index.js +1 -1
  198. package/lib/commands/sql/list.js +1 -1
  199. package/lib/commands/sql/pull.js +1 -1
  200. package/lib/commands/sql/push.js +1 -1
  201. package/lib/commands/sql/shared.js +1 -1
  202. package/lib/commands/sql/status.js +1 -1
  203. package/lib/commands/sql/validate.js +1 -1
  204. package/lib/commands/task/index.js +1 -1
  205. package/lib/commands/task/status.js +1 -1
  206. package/lib/commands/tenant/index.js +1 -1
  207. package/lib/commands/tenant/members-list.js +1 -1
  208. package/lib/commands/tenant/shared.js +1 -1
  209. package/lib/commands/user-account/dingding-sandbox-bind.d.ts +2 -0
  210. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -0
  211. package/lib/commands/user-account/index.d.ts +2 -0
  212. package/lib/commands/user-account/index.js +1 -0
  213. package/lib/commands/workspace/add.js +1 -1
  214. package/lib/commands/workspace/index.js +1 -1
  215. package/lib/commands/workspace/remove.js +1 -1
  216. package/lib/config/schema.js +1 -1
  217. package/lib/constant/cdn.js +1 -1
  218. package/lib/constant/cli.js +1 -1
  219. package/lib/constant/defaults.js +1 -1
  220. package/lib/constant/domain.js +1 -1
  221. package/lib/constant/env.js +1 -1
  222. package/lib/constant/output.js +1 -1
  223. package/lib/constant/paths.js +1 -1
  224. package/lib/constant/risk.js +1 -1
  225. package/lib/context/app-resolver.js +1 -1
  226. package/lib/context/auth-resolver.js +1 -1
  227. package/lib/context/config-loader.js +1 -1
  228. package/lib/context.js +1 -1
  229. package/lib/core/alias-resolver.js +1 -1
  230. package/lib/core/api-client.d.ts +117 -0
  231. package/lib/core/api-client.js +1 -1
  232. package/lib/core/bff/config.js +1 -1
  233. package/lib/core/bff/file-system.js +1 -1
  234. package/lib/core/bff/hash.js +1 -1
  235. package/lib/core/bff/lock.js +1 -1
  236. package/lib/core/bff/utils.js +1 -1
  237. package/lib/core/db-resolver.js +1 -1
  238. package/lib/core/page/file-system.js +1 -1
  239. package/lib/core/page/hash.js +1 -1
  240. package/lib/core/page/lock.js +1 -1
  241. package/lib/core/sql-index-auditor.js +1 -1
  242. package/lib/core/sql-sync/config.js +1 -1
  243. package/lib/core/sql-sync/file-system.js +1 -1
  244. package/lib/core/sql-sync/hash.js +1 -1
  245. package/lib/core/sql-sync/lock.js +1 -1
  246. package/lib/core/sql-sync/utils.js +1 -1
  247. package/lib/core/sql-validator.js +1 -1
  248. package/lib/errors.js +1 -1
  249. package/lib/framework/build-all-flags.js +1 -1
  250. package/lib/framework/error-output.js +1 -1
  251. package/lib/framework/explicit-yes.js +1 -1
  252. package/lib/framework/flags.js +1 -1
  253. package/lib/framework/help.js +1 -1
  254. package/lib/framework/index.js +1 -1
  255. package/lib/framework/output.js +1 -1
  256. package/lib/framework/response.js +1 -1
  257. package/lib/framework/runner-alias.js +1 -1
  258. package/lib/framework/runner.js +1 -1
  259. package/lib/framework/schema-export.js +1 -1
  260. package/lib/framework/types.js +1 -1
  261. package/lib/generated/build-info.d.ts +4 -4
  262. package/lib/generated/build-info.js +1 -1
  263. package/lib/help.js +1 -1
  264. package/lib/postinstall.d.ts +3 -0
  265. package/lib/postinstall.js +1 -0
  266. package/lib/runtime/confirmation.js +1 -1
  267. package/lib/runtime/event.js +1 -1
  268. package/lib/runtime/index.js +1 -1
  269. package/lib/runtime/queue.js +1 -1
  270. package/lib/runtime/resolve.js +1 -1
  271. package/lib/skills/builtin-skill.d.ts +37 -0
  272. package/lib/skills/builtin-skill.js +1 -0
  273. package/lib/skills/main.js +1 -1
  274. package/lib/skills/npx-skills-add.d.ts +4 -2
  275. package/lib/skills/npx-skills-add.js +1 -1
  276. package/lib/skills/skill-presence.js +1 -1
  277. package/lib/telemetry/cli-command-trace.js +1 -1
  278. package/lib/telemetry/cli-help-trace.js +1 -1
  279. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  280. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  281. package/lib/telemetry/send-cli-trace-log.js +1 -1
  282. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  283. package/lib/utils/ai_config.js +1 -1
  284. package/lib/utils/apply-jq-filter.js +1 -1
  285. package/lib/utils/cdn-config.js +1 -1
  286. package/lib/utils/check-sdk-version.js +1 -1
  287. package/lib/utils/cli-version-check.js +1 -1
  288. package/lib/utils/cli-version-policy.js +1 -1
  289. package/lib/utils/config.js +1 -1
  290. package/lib/utils/copy-directory.js +1 -1
  291. package/lib/utils/entity-with-id.js +1 -1
  292. package/lib/utils/file-utils.js +1 -1
  293. package/lib/utils/guides-cdn.js +1 -1
  294. package/lib/utils/http-client.js +1 -1
  295. package/lib/utils/is-non-interactive.js +1 -1
  296. package/lib/utils/logger.js +1 -1
  297. package/lib/utils/params.js +1 -1
  298. package/lib/utils/platform.js +1 -1
  299. package/lib/utils/rules-cdn.js +1 -1
  300. package/lib/utils/sleep.js +1 -1
  301. package/lib/utils/template-replacer.js +1 -1
  302. package/lib/utils/update-notice.js +1 -1
  303. package/lib/utils/version.js +1 -1
  304. package/lib/utils/with-active-cookie.js +1 -1
  305. package/lib/utils/write-cli-side-channel.js +1 -1
  306. package/package.json +9 -3
  307. package/scripts/postinstall.mjs +24 -0
  308. package/skills/rabetbase/SKILL.md +493 -0
  309. package/skills/rabetbase/guides/backend-function.md +835 -0
  310. package/skills/rabetbase/guides/best-practices.md +137 -0
  311. package/skills/rabetbase/guides/bff-creation-workflow.md +148 -0
  312. package/skills/rabetbase/guides/conflict-detection.md +119 -0
  313. package/skills/rabetbase/guides/data-api-guidelines.md +414 -0
  314. package/skills/rabetbase/guides/database-connection-workflow.md +169 -0
  315. package/skills/rabetbase/guides/frontend-development.md +179 -0
  316. package/skills/rabetbase/guides/legacy-application-blueprint-workflow.md +495 -0
  317. package/skills/rabetbase/guides/menu-anomaly-manual-cleanup.md +137 -0
  318. package/skills/rabetbase/guides/page-development-workflow.md +187 -0
  319. package/skills/rabetbase/guides/react-custom-page-workflow.md +184 -0
  320. package/skills/rabetbase/guides/role-permit-workflow.md +127 -0
  321. package/skills/rabetbase/guides/sql-creation-workflow.md +173 -0
  322. package/skills/rabetbase/guides/sql-mybatis.md +126 -0
  323. package/skills/rabetbase/guides/troubleshooting.md +67 -0
  324. package/skills/rabetbase/guides/typescript-sdk.md +227 -0
  325. package/skills/rabetbase/knowledge/page-schema/LrSmartCreate.md +367 -0
  326. package/skills/rabetbase/knowledge/page-schema/LrSmartDetail.md +153 -0
  327. package/skills/rabetbase/knowledge/page-schema/LrSmartEcharts.md +291 -0
  328. package/skills/rabetbase/knowledge/page-schema/LrSmartFilter.md +478 -0
  329. package/skills/rabetbase/knowledge/page-schema/LrSmartJsx.md +119 -0
  330. package/skills/rabetbase/knowledge/page-schema/LrSmartStatistic.md +223 -0
  331. package/skills/rabetbase/knowledge/page-schema/LrSmartTable.md +632 -0
  332. package/skills/rabetbase/knowledge/page-schema/YtPage.md +172 -0
  333. package/skills/rabetbase/knowledge/page-schema/dataset-relations.md +126 -0
  334. package/skills/rabetbase/knowledge/page-schema/external-resources-usage.md +232 -0
  335. package/skills/rabetbase/knowledge/page-schema/field-components.md +312 -0
  336. package/skills/rabetbase/knowledge/page-schema/syntax-reference.md +278 -0
  337. package/skills/rabetbase/knowledge/react-page/components.md +225 -0
  338. package/skills/rabetbase/knowledge/react-page/generation-standards.md +385 -0
  339. package/skills/rabetbase/references/rabetbase-api-list.md +58 -0
  340. package/skills/rabetbase/references/rabetbase-api-pull.md +82 -0
  341. package/skills/rabetbase/references/rabetbase-app-config.md +95 -0
  342. package/skills/rabetbase/references/rabetbase-app-list.md +79 -0
  343. package/skills/rabetbase/references/rabetbase-app-members-list.md +64 -0
  344. package/skills/rabetbase/references/rabetbase-auth-login.md +53 -0
  345. package/skills/rabetbase/references/rabetbase-auth-logout.md +29 -0
  346. package/skills/rabetbase/references/rabetbase-bff-create.md +59 -0
  347. package/skills/rabetbase/references/rabetbase-bff-delete.md +42 -0
  348. package/skills/rabetbase/references/rabetbase-bff-detail.md +38 -0
  349. package/skills/rabetbase/references/rabetbase-bff-list.md +61 -0
  350. package/skills/rabetbase/references/rabetbase-bff-pull.md +42 -0
  351. package/skills/rabetbase/references/rabetbase-bff-push.md +65 -0
  352. package/skills/rabetbase/references/rabetbase-bff-save.md +63 -0
  353. package/skills/rabetbase/references/rabetbase-bff-status.md +37 -0
  354. package/skills/rabetbase/references/rabetbase-cli-skill-install.md +42 -0
  355. package/skills/rabetbase/references/rabetbase-codegen-sdk.md +35 -0
  356. package/skills/rabetbase/references/rabetbase-codegen-sql.md +33 -0
  357. package/skills/rabetbase/references/rabetbase-config.md +296 -0
  358. package/skills/rabetbase/references/rabetbase-dataset-business-group-update.md +84 -0
  359. package/skills/rabetbase/references/rabetbase-dataset-delete.md +54 -0
  360. package/skills/rabetbase/references/rabetbase-dataset-detail.md +106 -0
  361. package/skills/rabetbase/references/rabetbase-dataset-extend-update.md +70 -0
  362. package/skills/rabetbase/references/rabetbase-dataset-field-update.md +117 -0
  363. package/skills/rabetbase/references/rabetbase-dataset-generate.md +206 -0
  364. package/skills/rabetbase/references/rabetbase-dataset-list.md +42 -0
  365. package/skills/rabetbase/references/rabetbase-dataset-operations.md +34 -0
  366. package/skills/rabetbase/references/rabetbase-dataset-relation-audit.md +63 -0
  367. package/skills/rabetbase/references/rabetbase-dataset-relation-mutations.md +141 -0
  368. package/skills/rabetbase/references/rabetbase-dataset-relations.md +71 -0
  369. package/skills/rabetbase/references/rabetbase-dataset-rename.md +107 -0
  370. package/skills/rabetbase/references/rabetbase-dataset-restore.md +54 -0
  371. package/skills/rabetbase/references/rabetbase-db-analyze.md +135 -0
  372. package/skills/rabetbase/references/rabetbase-db-create.md +54 -0
  373. package/skills/rabetbase/references/rabetbase-db-delete.md +26 -0
  374. package/skills/rabetbase/references/rabetbase-db-detail.md +27 -0
  375. package/skills/rabetbase/references/rabetbase-db-diff.md +57 -0
  376. package/skills/rabetbase/references/rabetbase-db-list.md +37 -0
  377. package/skills/rabetbase/references/rabetbase-db-tables.md +25 -0
  378. package/skills/rabetbase/references/rabetbase-db-test.md +29 -0
  379. package/skills/rabetbase/references/rabetbase-db-update.md +29 -0
  380. package/skills/rabetbase/references/rabetbase-doctor.md +62 -0
  381. package/skills/rabetbase/references/rabetbase-file.md +35 -0
  382. package/skills/rabetbase/references/rabetbase-init.md +70 -0
  383. package/skills/rabetbase/references/rabetbase-issue-report.md +132 -0
  384. package/skills/rabetbase/references/rabetbase-kb.md +62 -0
  385. package/skills/rabetbase/references/rabetbase-menu-asset-update.md +135 -0
  386. package/skills/rabetbase/references/rabetbase-menu-delete.md +54 -0
  387. package/skills/rabetbase/references/rabetbase-menu-external-link-create.md +63 -0
  388. package/skills/rabetbase/references/rabetbase-menu-external-link-update.md +74 -0
  389. package/skills/rabetbase/references/rabetbase-menu-group-create.md +33 -0
  390. package/skills/rabetbase/references/rabetbase-menu-group-update.md +38 -0
  391. package/skills/rabetbase/references/rabetbase-menu-list.md +144 -0
  392. package/skills/rabetbase/references/rabetbase-menu-move.md +54 -0
  393. package/skills/rabetbase/references/rabetbase-menu-regroup-start.md +45 -0
  394. package/skills/rabetbase/references/rabetbase-menu-rename.md +48 -0
  395. package/skills/rabetbase/references/rabetbase-menu-sync.md +60 -0
  396. package/skills/rabetbase/references/rabetbase-notification-config-list.md +80 -0
  397. package/skills/rabetbase/references/rabetbase-ocr.md +86 -0
  398. package/skills/rabetbase/references/rabetbase-page-generate-start.md +32 -0
  399. package/skills/rabetbase/references/rabetbase-page-generate-status.md +32 -0
  400. package/skills/rabetbase/references/rabetbase-page-pull.md +47 -0
  401. package/skills/rabetbase/references/rabetbase-page-push.md +45 -0
  402. package/skills/rabetbase/references/rabetbase-page-react-create.md +29 -0
  403. package/skills/rabetbase/references/rabetbase-page-react-detail.md +26 -0
  404. package/skills/rabetbase/references/rabetbase-page-react-list.md +23 -0
  405. package/skills/rabetbase/references/rabetbase-page-react-publish.md +23 -0
  406. package/skills/rabetbase/references/rabetbase-page-react-update.md +24 -0
  407. package/skills/rabetbase/references/rabetbase-page-relation-binding.md +72 -0
  408. package/skills/rabetbase/references/rabetbase-page-restore.md +45 -0
  409. package/skills/rabetbase/references/rabetbase-page-sync.md +36 -0
  410. package/skills/rabetbase/references/rabetbase-permit-page-set.md +69 -0
  411. package/skills/rabetbase/references/rabetbase-permit-role-apis-set.md +53 -0
  412. package/skills/rabetbase/references/rabetbase-permit-role-menus-set.md +57 -0
  413. package/skills/rabetbase/references/rabetbase-project-create.md +46 -0
  414. package/skills/rabetbase/references/rabetbase-project-upgrade.md +57 -0
  415. package/skills/rabetbase/references/rabetbase-role-list.md +68 -0
  416. package/skills/rabetbase/references/rabetbase-role-user-add.md +54 -0
  417. package/skills/rabetbase/references/rabetbase-role-user-resolve.md +27 -0
  418. package/skills/rabetbase/references/rabetbase-run.md +53 -0
  419. package/skills/rabetbase/references/rabetbase-schema.md +22 -0
  420. package/skills/rabetbase/references/rabetbase-sql-create.md +41 -0
  421. package/skills/rabetbase/references/rabetbase-sql-delete.md +37 -0
  422. package/skills/rabetbase/references/rabetbase-sql-detail.md +32 -0
  423. package/skills/rabetbase/references/rabetbase-sql-exec.md +34 -0
  424. package/skills/rabetbase/references/rabetbase-sql-list.md +54 -0
  425. package/skills/rabetbase/references/rabetbase-sql-pull.md +54 -0
  426. package/skills/rabetbase/references/rabetbase-sql-push.md +46 -0
  427. package/skills/rabetbase/references/rabetbase-sql-status.md +39 -0
  428. package/skills/rabetbase/references/rabetbase-sql-validate.md +73 -0
  429. package/skills/rabetbase/references/rabetbase-standard-page-status.md +31 -0
  430. package/skills/rabetbase/references/rabetbase-task-status.md +40 -0
  431. package/skills/rabetbase/references/rabetbase-tenant-members-list.md +69 -0
  432. package/skills/rabetbase/references/rabetbase-update.md +56 -0
  433. package/skills/rabetbase/references/rabetbase-user-account.md +45 -0
  434. package/skills/rabetbase/references/rabetbase-workspace.md +60 -0
  435. package/skills/rabetbase.manifest.json +137 -0
@@ -1 +1 @@
1
- const a111_0x3fe6e5=a111_0x2745;(function(_0xba9da7,_0x402760){const _0x509444=a111_0x2745,_0x1e91d1=_0xba9da7();while(!![]){try{const _0x3c4951=parseInt(_0x509444(0xc1))/0x1*(parseInt(_0x509444(0xb2))/0x2)+-parseInt(_0x509444(0xd1))/0x3+parseInt(_0x509444(0xc2))/0x4+-parseInt(_0x509444(0xec))/0x5+parseInt(_0x509444(0xb3))/0x6*(parseInt(_0x509444(0xe3))/0x7)+parseInt(_0x509444(0xde))/0x8*(parseInt(_0x509444(0xd7))/0x9)+-parseInt(_0x509444(0xef))/0xa*(parseInt(_0x509444(0xee))/0xb);if(_0x3c4951===_0x402760)break;else _0x1e91d1['push'](_0x1e91d1['shift']());}catch(_0x351baa){_0x1e91d1['push'](_0x1e91d1['shift']());}}}(a111_0x1b2a,0xc909f));function a111_0x2745(_0x26deea,_0x1ce959){_0x26deea=_0x26deea-0xae;const _0x1b2a5f=a111_0x1b2a();let _0x2745c3=_0x1b2a5f[_0x26deea];return _0x2745c3;}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 a111_0x1b2a(){const _0x453638=['failed','write','\x20may\x20exist\x20online\x20at\x20path\x20','7TuTABI','after','Created\x20folder\x20','string','\x20is\x20not\x20empty.','root','Folder\x20','/smartapi/menu/create','path','6528650GjQMfz','\x20is\x20not\x20type\x20folder.','17237ljKbCS','5410dTQSyJ','create\x20folder','create','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','verify\x20folder\x20creation','create-folder','rabetbase\x20menu\x20list\x20--format\x20json','visible','\x20is\x20missing\x20from\x20menu\x20list.','depth','menu_create_response_invalid','label','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','childrenCount','type','1163066KmsWpp','1353678vwoHcv','group-create','POST','\x20has\x20an\x20unexpected\x20label.','hash','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','\x20is\x20not\x20visible.','Created\x20menu\x20','stringify',';\x20verify\x20it\x20before\x20retrying.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','length','create-response-validation','2hHjxZH','5071116qzxBOo','str','menu','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20has\x20resources.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','sort','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','get','parentId','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','trim','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','flagMissing','parent-id','1071978aioaYG','\x20has\x20unexpected\x20parent\x20','<platform-generated>','Menu\x20create\x20response\x20for\x20folder\x20','isSafeInteger','cookie','180XblvoY','Would\x20create\x20empty\x20folder\x20\x22','resources','folder','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','verification','\x20unexpectedly\x20owns\x20a\x20page.','271120CGBGxw','\x22\x20with\x20a\x20platform-generated\x20path.'];a111_0x1b2a=function(){return _0x453638;};return a111_0x1b2a();}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a111_0x3fe6e5(0xea)}];export const menuGroupCreate={'service':a111_0x3fe6e5(0xc4),'command':a111_0x3fe6e5(0xb4),'description':a111_0x3fe6e5(0xbd),'risk':a111_0x3fe6e5(0xe1),'structuredErrors':!![],'flags':[{'name':'label','type':a111_0x3fe6e5(0xe6),'required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xe74dc){validateCreateInput(_0xe74dc);},async 'dryRun'(_0x51b20f){const _0xd45402=a111_0x3fe6e5,_0x259b48=await buildCreatePlan(_0x51b20f,!![]),_0x54def8=_0x259b48['after'];return menuDryRunResult(_0x259b48,{'method':_0xd45402(0xb5),'url':_0xd45402(0xea),'body':{'parentId':toApiParentId(_0x54def8[_0xd45402(0xcb)]),'label':_0x54def8[_0xd45402(0xae)],'type':'folder','visible':!![],'sort':_0x54def8['sort'],'extend':{}},'description':_0xd45402(0xd8)+String(_0x54def8[_0xd45402(0xae)])+_0xd45402(0xdf)});},async 'execute'(_0x4a9d60){const _0x1562c5=a111_0x3fe6e5;validateCreateInput(_0x4a9d60);const _0xc40376=await buildCreatePlan(_0x4a9d60,![]),_0xdcbca4=_0xc40376[_0x1562c5(0xe4)];await recheckMutationSnapshot(_0x4a9d60,_0xc40376,_0x1562c5(0xf0));let _0x5efcba;try{_0x5efcba=await createMenuEntity(_0x4a9d60['appCode'],_0x4a9d60[_0x1562c5(0xd6)],{'parentId':toApiParentId(_0xdcbca4['parentId']),'label':String(_0xdcbca4[_0x1562c5(0xae)]),'type':_0x1562c5(0xda),'visible':!![],'sort':Number(_0xdcbca4[_0x1562c5(0xc8)]),'extend':{}});}catch(_0x3ae12c){const _0x24e972=mapMenuApiError(_0x3ae12c,_0x1562c5(0xf0));throw menuFailure(_0x24e972,_0xc40376,{'stage':_0x1562c5(0xf1),'failed':{}});}const _0x450103=Number(_0x5efcba['id']);if(!Number[_0x1562c5(0xd5)](_0x450103)||_0x450103<=0x0){const _0xf976c4=menuError(_0x1562c5(0xf9),_0x1562c5(0xce),_0x1562c5(0xc5));throw menuFailure(_0xf976c4,_0xc40376,{'stage':_0x1562c5(0xc0),'failed':{'createdId':_0x5efcba['id']??null},'warnings':[_0x1562c5(0xc9)],'verification':{'status':_0x1562c5(0xe0),'lookupCommand':_0x1562c5(0xf5)}});}const _0x3edfc6=typeof _0x5efcba[_0x1562c5(0xeb)]===_0x1562c5(0xe6)?_0x5efcba[_0x1562c5(0xeb)]:'';if(!_0x3edfc6['trim']()){const _0x4a7db5=menuError('menu_create_response_invalid',_0x1562c5(0xd4)+_0x450103+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x1562c5(0xcc));throw menuFailure(_0x4a7db5,_0xc40376,{'stage':'create-response-validation','succeeded':[{'id':_0x450103,'created':!![]}],'failed':{'id':_0x450103,'generatedPathConfirmed':![]},'warnings':[_0x1562c5(0xe9)+_0x450103+_0x1562c5(0xf2)],'after':{..._0xdcbca4,'id':_0x450103,'path':_0x3edfc6},'verification':{'status':_0x1562c5(0xe0),'lookupCommand':_0x1562c5(0xf5),'targetId':_0x450103}});}let _0x31cdec;try{_0x31cdec=await fetchMenuSnapshot(_0x4a9d60['appCode'],_0x4a9d60[_0x1562c5(0xd6)]);}catch(_0x267d34){const _0x5a5dd8=describeMenuErrorCause(_0x267d34,_0x1562c5(0xf3),_0x450103),_0x6b795b=asVerificationError(_0x267d34,'Folder\x20'+_0x450103+_0x1562c5(0xb8));throw menuFailure(_0x6b795b,_0xc40376,{'stage':_0x1562c5(0xdc),'succeeded':[{'id':_0x450103,'created':!![],'path':_0x3edfc6}],'failed':{'id':_0x450103,'finalFactsConfirmed':![],..._0x5a5dd8},'warnings':[_0x1562c5(0xe9)+_0x450103+_0x1562c5(0xe2)+JSON[_0x1562c5(0xbb)](_0x3edfc6)+_0x1562c5(0xbc)],'after':{..._0xdcbca4,'id':_0x450103,'path':_0x3edfc6},'verification':{'status':_0x1562c5(0xe0),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x450103}});}const _0x2a58f0=_0x31cdec['byId'][_0x1562c5(0xca)](_0x450103);let _0x213996;try{assertVerified(Boolean(_0x2a58f0),_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xf7)),_0x213996=_0x2a58f0,assertVerified(_0x213996[_0x1562c5(0xb1)]==='folder',_0x1562c5(0xba)+_0x450103+_0x1562c5(0xed)),assertVerified(_0x213996[_0x1562c5(0xae)]===_0xdcbca4[_0x1562c5(0xae)],_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xb6)),assertVerified(_0x213996[_0x1562c5(0xeb)]===_0x3edfc6&&Boolean(_0x213996[_0x1562c5(0xeb)][_0x1562c5(0xcd)]()),_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xbe)),assertVerified(_0x213996[_0x1562c5(0xf6)]===!![],_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xb9)),assertVerified(_0x213996[_0x1562c5(0xd9)][_0x1562c5(0xbf)]===0x0,'Created\x20folder\x20'+_0x450103+_0x1562c5(0xc6)),assertVerified(_0x213996[_0x1562c5(0xb0)]===0x0,_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xe7)),assertVerified(_0x213996['sort']===_0xdcbca4[_0x1562c5(0xc8)],_0x1562c5(0xe5)+_0x450103+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x213996[_0x1562c5(0xcb)]===_0xdcbca4[_0x1562c5(0xcb)],_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xd2)+(_0x213996['parentId']??_0x1562c5(0xe8))+'.'),assertVerified(_0x213996['pageId']==null,_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xdd));const _0x56e8e6=_0x213996[_0x1562c5(0xcb)]==null?undefined:requireFolder(_0x31cdec,_0x213996[_0x1562c5(0xcb)]);assertVerified(_0x213996[_0x1562c5(0xf8)]===(_0x56e8e6?_0x56e8e6[_0x1562c5(0xf8)]+0x1:0x0),'Created\x20folder\x20'+_0x450103+_0x1562c5(0xdb));}catch(_0x4feff1){const _0x229e4a=describeMenuErrorCause(_0x4feff1,_0x1562c5(0xf3),_0x450103),_0x2b699c=asVerificationError(_0x4feff1,_0x1562c5(0xe9)+_0x450103+_0x1562c5(0xc7));throw menuFailure(_0x2b699c,_0xc40376,{'stage':_0x1562c5(0xdc),'succeeded':[{'id':_0x450103,'created':!![],'path':_0x3edfc6}],'failed':{'id':_0x450103,'finalFactsConfirmed':![],..._0x229e4a},'warnings':[_0x1562c5(0xe9)+_0x450103+_0x1562c5(0xaf)],'after':_0x2a58f0??{..._0xdcbca4,'id':_0x450103,'path':_0x3edfc6},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x450103}});}const _0x35901b=mutationResult({..._0xc40376,'after':_0x213996,'dryRun':![],'succeeded':[{'id':_0x450103,'type':'folder','path':_0x3edfc6}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x31cdec['hash'],'folder':!![],'path':_0x3edfc6,'emptyResources':!![]}});return{'ok':!![],'data':_0x35901b,'message':'Created\x20menu\x20folder\x20'+_0x450103+'.'};}};function validateCreateInput(_0x410e93){const _0x305449=a111_0x3fe6e5,_0x50d2f5=_0x410e93[_0x305449(0xc3)](_0x305449(0xae))[_0x305449(0xcd)]();if(!_0x50d2f5)throw CliErrors[_0x305449(0xcf)](_0x305449(0xae));parseParentId(_0x410e93,'parent-id'),validateSort(_0x410e93);}async function buildCreatePlan(_0x308d63,_0x140774){const _0x154eb9=a111_0x3fe6e5,_0x39de8f=await fetchMutationSnapshot(_0x308d63,_0x154eb9(0xf0)),_0x33b40f=parseParentId(_0x308d63,_0x154eb9(0xd0))??null;if(_0x33b40f!=null)requireFolder(_0x39de8f,_0x33b40f);const _0xbb8a7a=validateSort(_0x308d63),_0x431faa=_0xbb8a7a??nextSiblingSort(_0x39de8f,_0x33b40f,'folder'),_0x9c7553=_0x308d63['str'](_0x154eb9(0xae))[_0x154eb9(0xcd)]();return mutationResult({'operation':'group-create','selector':{'label':_0x9c7553,'parentId':_0x33b40f},'before':null,'after':{'id':null,'parentId':_0x33b40f,'label':_0x9c7553,'path':_0x154eb9(0xd3),'type':'folder','visible':!![],'sort':_0x431faa,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x140774,'backend':[...BACKEND],'plannedActions':[{'stage':_0x154eb9(0xf4),'method':_0x154eb9(0xb5),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x33b40f),'label':_0x9c7553,'type':'folder','visible':!![],'sort':_0x431faa,'extend':{}}}],'snapshotHash':_0x39de8f[_0x154eb9(0xb7)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
1
+ const a111_0xa4d45f=a111_0x50e8;function a111_0x4655(){const _0x45d119=['hash','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','verification','\x20has\x20an\x20unexpected\x20sort.','menu_create_response_invalid','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','depth','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','67998WCcVVb','string','menu','trim','\x20has\x20resources.','sort','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','root','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','<platform-generated>','create-folder','Created\x20menu\x20folder\x20','path','parentId','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','group-create','\x20is\x20not\x20visible.','991136aGShiN','verify\x20folder\x20creation','Menu\x20create\x20response\x20for\x20folder\x20','create-response-validation','cookie','56CvEnwS','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','label','Created\x20menu\x20','Created\x20folder\x20','flagMissing','parent-id','The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','create','create\x20folder','\x20is\x20not\x20type\x20folder.','2390760TlKUaS','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','Folder\x20label','menu\x20list','\x22\x20with\x20a\x20platform-generated\x20path.','2505084eXfOez','10869aqaQDl','11652750UIOdnq','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder',';\x20verify\x20it\x20before\x20retrying.','type','rabetbase\x20menu\x20list\x20--format\x20json','appCode','length','POST','Folder\x20','failed','folder','\x20unexpectedly\x20owns\x20a\x20page.','296xnajhc','isSafeInteger','str','6769QvUHts','byId','resources'];a111_0x4655=function(){return _0x45d119;};return a111_0x4655();}function a111_0x50e8(_0x5c9989,_0x480f37){_0x5c9989=_0x5c9989-0xc7;const _0x4655b6=a111_0x4655();let _0x50e822=_0x4655b6[_0x5c9989];return _0x50e822;}(function(_0x33d2ad,_0x2cf19c){const _0x14ee6d=a111_0x50e8,_0x626e=_0x33d2ad();while(!![]){try{const _0x593b3e=-parseInt(_0x14ee6d(0xcc))/0x1*(parseInt(_0x14ee6d(0xed))/0x2)+parseInt(_0x14ee6d(0xfe))/0x3+-parseInt(_0x14ee6d(0xe8))/0x4+-parseInt(_0x14ee6d(0xf8))/0x5+-parseInt(_0x14ee6d(0xfd))/0x6+parseInt(_0x14ee6d(0xd7))/0x7*(parseInt(_0x14ee6d(0xc9))/0x8)+parseInt(_0x14ee6d(0xff))/0x9;if(_0x593b3e===_0x2cf19c)break;else _0x626e['push'](_0x626e['shift']());}catch(_0x334a68){_0x626e['push'](_0x626e['shift']());}}}(a111_0x4655,0x4f4c9));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':'POST','path':'/smartapi/menu/create'}];export const menuGroupCreate={'service':a111_0xa4d45f(0xd9),'command':a111_0xa4d45f(0xe6),'description':a111_0xa4d45f(0x100),'risk':'write','structuredErrors':!![],'flags':[{'name':a111_0xa4d45f(0xef),'type':a111_0xa4d45f(0xd8),'required':!![],'description':a111_0xa4d45f(0xfa)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4142fd){validateCreateInput(_0x4142fd);},async 'dryRun'(_0x3e609a){const _0x185a62=a111_0xa4d45f,_0xb96f7d=await buildCreatePlan(_0x3e609a,!![]),_0x4c2083=_0xb96f7d['after'];return menuDryRunResult(_0xb96f7d,{'method':_0x185a62(0x106),'url':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x4c2083[_0x185a62(0xe4)]),'label':_0x4c2083[_0x185a62(0xef)],'type':_0x185a62(0xc7),'visible':!![],'sort':_0x4c2083['sort'],'extend':{}},'description':'Would\x20create\x20empty\x20folder\x20\x22'+String(_0x4c2083['label'])+_0x185a62(0xfc)});},async 'execute'(_0x430aac){const _0x838a7a=a111_0xa4d45f;validateCreateInput(_0x430aac);const _0x46e597=await buildCreatePlan(_0x430aac,![]),_0x2d1c29=_0x46e597['after'];await recheckMutationSnapshot(_0x430aac,_0x46e597,_0x838a7a(0xf6));let _0x56e794;try{_0x56e794=await createMenuEntity(_0x430aac[_0x838a7a(0x104)],_0x430aac['cookie'],{'parentId':toApiParentId(_0x2d1c29[_0x838a7a(0xe4)]),'label':String(_0x2d1c29[_0x838a7a(0xef)]),'type':_0x838a7a(0xc7),'visible':!![],'sort':Number(_0x2d1c29[_0x838a7a(0xdc)]),'extend':{}});}catch(_0x5840bb){const _0x4a0ca6=mapMenuApiError(_0x5840bb,_0x838a7a(0xf6));throw menuFailure(_0x4a0ca6,_0x46e597,{'stage':_0x838a7a(0xf5),'failed':{}});}const _0x57e842=Number(_0x56e794['id']);if(!Number[_0x838a7a(0xca)](_0x57e842)||_0x57e842<=0x0){const _0xca4256=menuError(_0x838a7a(0xd3),_0x838a7a(0xdd),_0x838a7a(0xe5));throw menuFailure(_0xca4256,_0x46e597,{'stage':_0x838a7a(0xeb),'failed':{'createdId':_0x56e794['id']??null},'warnings':[_0x838a7a(0xee)],'verification':{'status':_0x838a7a(0x108),'lookupCommand':_0x838a7a(0x103)}});}const _0x282ab5=typeof _0x56e794['path']==='string'?_0x56e794[_0x838a7a(0xe3)]:'';if(!_0x282ab5[_0x838a7a(0xda)]()){const _0x26448a=menuError(_0x838a7a(0xd3),_0x838a7a(0xea)+_0x57e842+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x26448a,_0x46e597,{'stage':_0x838a7a(0xeb),'succeeded':[{'id':_0x57e842,'created':!![]}],'failed':{'id':_0x57e842,'generatedPathConfirmed':![]},'warnings':[_0x838a7a(0x107)+_0x57e842+_0x838a7a(0xd6)],'after':{..._0x2d1c29,'id':_0x57e842,'path':_0x282ab5},'verification':{'status':'failed','lookupCommand':_0x838a7a(0x103),'targetId':_0x57e842}});}let _0x4358cb;try{_0x4358cb=await fetchMenuSnapshot(_0x430aac[_0x838a7a(0x104)],_0x430aac[_0x838a7a(0xec)]);}catch(_0x454085){const _0x21218d=describeMenuErrorCause(_0x454085,'verify\x20folder\x20creation',_0x57e842),_0x44292e=asVerificationError(_0x454085,_0x838a7a(0x107)+_0x57e842+_0x838a7a(0xdf));throw menuFailure(_0x44292e,_0x46e597,{'stage':_0x838a7a(0xd1),'succeeded':[{'id':_0x57e842,'created':!![],'path':_0x282ab5}],'failed':{'id':_0x57e842,'finalFactsConfirmed':![],..._0x21218d},'warnings':['Folder\x20'+_0x57e842+'\x20may\x20exist\x20online\x20at\x20path\x20'+JSON['stringify'](_0x282ab5)+_0x838a7a(0x101)],'after':{..._0x2d1c29,'id':_0x57e842,'path':_0x282ab5},'verification':{'status':_0x838a7a(0x108),'lookupCommand':_0x838a7a(0x103),'targetId':_0x57e842}});}const _0x167e5b=_0x4358cb[_0x838a7a(0xcd)]['get'](_0x57e842);let _0x526d7b;try{assertVerified(Boolean(_0x167e5b),'Created\x20folder\x20'+_0x57e842+'\x20is\x20missing\x20from\x20menu\x20list.'),_0x526d7b=_0x167e5b,assertVerified(_0x526d7b[_0x838a7a(0x102)]==='folder',_0x838a7a(0xf0)+_0x57e842+_0x838a7a(0xf7)),assertVerified(_0x526d7b[_0x838a7a(0xef)]===_0x2d1c29[_0x838a7a(0xef)],_0x838a7a(0xf1)+_0x57e842+'\x20has\x20an\x20unexpected\x20label.'),assertVerified(_0x526d7b[_0x838a7a(0xe3)]===_0x282ab5&&Boolean(_0x526d7b[_0x838a7a(0xe3)]['trim']()),_0x838a7a(0xf1)+_0x57e842+_0x838a7a(0xf9)),assertVerified(_0x526d7b['visible']===!![],_0x838a7a(0xf1)+_0x57e842+_0x838a7a(0xe7)),assertVerified(_0x526d7b[_0x838a7a(0xce)][_0x838a7a(0x105)]===0x0,'Created\x20folder\x20'+_0x57e842+_0x838a7a(0xdb)),assertVerified(_0x526d7b['childrenCount']===0x0,_0x838a7a(0xf1)+_0x57e842+'\x20is\x20not\x20empty.'),assertVerified(_0x526d7b[_0x838a7a(0xdc)]===_0x2d1c29['sort'],'Created\x20folder\x20'+_0x57e842+_0x838a7a(0xd2)),assertVerified(_0x526d7b[_0x838a7a(0xe4)]===_0x2d1c29['parentId'],_0x838a7a(0xf1)+_0x57e842+'\x20has\x20unexpected\x20parent\x20'+(_0x526d7b[_0x838a7a(0xe4)]??_0x838a7a(0xde))+'.'),assertVerified(_0x526d7b['pageId']==null,_0x838a7a(0xf1)+_0x57e842+_0x838a7a(0xc8));const _0x2272a9=_0x526d7b[_0x838a7a(0xe4)]==null?undefined:requireFolder(_0x4358cb,_0x526d7b[_0x838a7a(0xe4)]);assertVerified(_0x526d7b[_0x838a7a(0xd5)]===(_0x2272a9?_0x2272a9['depth']+0x1:0x0),_0x838a7a(0xf1)+_0x57e842+_0x838a7a(0xd4));}catch(_0x4e71f5){const _0x7e9472=describeMenuErrorCause(_0x4e71f5,_0x838a7a(0xe9),_0x57e842),_0x30eb77=asVerificationError(_0x4e71f5,'Folder\x20'+_0x57e842+'\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract');throw menuFailure(_0x30eb77,_0x46e597,{'stage':_0x838a7a(0xd1),'succeeded':[{'id':_0x57e842,'created':!![],'path':_0x282ab5}],'failed':{'id':_0x57e842,'finalFactsConfirmed':![],..._0x7e9472},'warnings':[_0x838a7a(0x107)+_0x57e842+_0x838a7a(0xd0)],'after':_0x167e5b??{..._0x2d1c29,'id':_0x57e842,'path':_0x282ab5},'verification':{'status':_0x838a7a(0x108),'lookupCommand':_0x838a7a(0x103),'targetId':_0x57e842}});}const _0x36ab7d=mutationResult({..._0x46e597,'after':_0x526d7b,'dryRun':![],'succeeded':[{'id':_0x57e842,'type':_0x838a7a(0xc7),'path':_0x282ab5}],'verification':{'checkedBy':_0x838a7a(0xfb),'snapshotHash':_0x4358cb['hash'],'folder':!![],'path':_0x282ab5,'emptyResources':!![]}});return{'ok':!![],'data':_0x36ab7d,'message':_0x838a7a(0xe2)+_0x57e842+'.'};}};function validateCreateInput(_0x391f45){const _0x3f5a9a=a111_0xa4d45f,_0x1ea0e0=_0x391f45['str'](_0x3f5a9a(0xef))[_0x3f5a9a(0xda)]();if(!_0x1ea0e0)throw CliErrors[_0x3f5a9a(0xf2)](_0x3f5a9a(0xef));parseParentId(_0x391f45,'parent-id'),validateSort(_0x391f45);}async function buildCreatePlan(_0x2e2857,_0xa2943a){const _0x136b77=a111_0xa4d45f,_0x50564b=await fetchMutationSnapshot(_0x2e2857,_0x136b77(0xf6)),_0x4fa938=parseParentId(_0x2e2857,_0x136b77(0xf3))??null;if(_0x4fa938!=null)requireFolder(_0x50564b,_0x4fa938);const _0x4a515d=validateSort(_0x2e2857),_0x512b41=_0x4a515d??nextSiblingSort(_0x50564b,_0x4fa938,_0x136b77(0xc7)),_0xcefb07=_0x2e2857[_0x136b77(0xcb)](_0x136b77(0xef))[_0x136b77(0xda)]();return mutationResult({'operation':'group-create','selector':{'label':_0xcefb07,'parentId':_0x4fa938},'before':null,'after':{'id':null,'parentId':_0x4fa938,'label':_0xcefb07,'path':_0x136b77(0xe0),'type':_0x136b77(0xc7),'visible':!![],'sort':_0x512b41,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0xa2943a,'backend':[...BACKEND],'plannedActions':[{'stage':_0x136b77(0xe1),'method':_0x136b77(0x106),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x4fa938),'label':_0xcefb07,'type':_0x136b77(0xc7),'visible':!![],'sort':_0x512b41,'extend':{}}}],'snapshotHash':_0x50564b[_0x136b77(0xcf)],'warnings':[_0x136b77(0xf4)]});}
@@ -1 +1 @@
1
- const a112_0x345012=a112_0x1f3d;(function(_0x1d9062,_0x5200b1){const _0xd0fa31=a112_0x1f3d,_0x1b7918=_0x1d9062();while(!![]){try{const _0x26a3a0=-parseInt(_0xd0fa31(0xce))/0x1*(parseInt(_0xd0fa31(0xbd))/0x2)+-parseInt(_0xd0fa31(0xe5))/0x3+parseInt(_0xd0fa31(0xc7))/0x4*(-parseInt(_0xd0fa31(0xbc))/0x5)+parseInt(_0xd0fa31(0xdd))/0x6*(-parseInt(_0xd0fa31(0xbf))/0x7)+parseInt(_0xd0fa31(0xca))/0x8+parseInt(_0xd0fa31(0xdc))/0x9+parseInt(_0xd0fa31(0xc9))/0xa;if(_0x26a3a0===_0x5200b1)break;else _0x1b7918['push'](_0x1b7918['shift']());}catch(_0x1e1daf){_0x1b7918['push'](_0x1b7918['shift']());}}}(a112_0x56be,0x49483));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a112_0x345012(0xbb),'path':'/smartapi/menu/update'}];export const menuGroupUpdate={'service':a112_0x345012(0xe6),'command':a112_0x345012(0xd9),'description':a112_0x345012(0xbe),'risk':a112_0x345012(0xb8),'structuredErrors':!![],'rejectedFlags':[{'name':a112_0x345012(0xd6),'message':a112_0x345012(0xc4),'hint':a112_0x345012(0xec)}],'flags':[MENU_ID_FLAG,{'name':'label','type':a112_0x345012(0xd1),'description':a112_0x345012(0xda)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x7071b0){validateUpdateInput(_0x7071b0);},async 'dryRun'(_0x20c9db){const _0x36c791=a112_0x345012;validateUpdateInput(_0x20c9db);const {plan:_0x165c28,patch:_0x2d2c1e}=await buildUpdatePlan(_0x20c9db,!![]);return menuDryRunResult(_0x165c28,{'method':_0x36c791(0xbb),'url':'/smartapi/menu/update','body':_0x2d2c1e,'description':'Would\x20update\x20folder\x20'+_0x165c28[_0x36c791(0xe8)]['id']+'.'});},async 'execute'(_0x76a08b){const _0xb7bdb9=a112_0x345012;validateUpdateInput(_0x76a08b);const {plan:_0xc9a51d,patch:_0x1dcfdd,noChanges:_0x36fb55}=await buildUpdatePlan(_0x76a08b,![]),_0x5f0532=Number(_0xc9a51d['selector']['id']),_0x3e860e=await recheckMutationSnapshot(_0x76a08b,_0xc9a51d,_0xb7bdb9(0xe0),_0x5f0532);if(!_0x36fb55)try{await updateMenuEntity(_0x76a08b['appCode'],_0x76a08b['cookie'],_0x1dcfdd);}catch(_0x15efa2){const _0x10e659=mapMenuApiError(_0x15efa2,_0xb7bdb9(0xe0),_0x5f0532);throw menuFailure(_0x10e659,_0xc9a51d,{'stage':_0xb7bdb9(0xd4),'failed':{'id':_0x5f0532}});}let _0x1f3cb2=_0x3e860e,_0x184ec4;try{!_0x36fb55&&(_0x1f3cb2=await fetchMenuSnapshot(_0x76a08b['appCode'],_0x76a08b[_0xb7bdb9(0xd7)])),_0x184ec4=requireMenu(_0x1f3cb2,_0x5f0532),verifyPatch(_0x184ec4,_0x1dcfdd),_0x184ec4[_0xb7bdb9(0xd5)]!=null&&requireFolder(_0x1f3cb2,_0x184ec4[_0xb7bdb9(0xd5)]);}catch(_0x34ad21){const _0x30fc7d=describeMenuErrorCause(_0x34ad21,_0xb7bdb9(0xdb),_0x5f0532),_0x100572=asVerificationError(_0x34ad21,_0xb7bdb9(0xcf)+_0x5f0532+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x100572,_0xc9a51d,{'stage':_0xb7bdb9(0xc1),'succeeded':[{'id':_0x5f0532,'updateRequested':!_0x36fb55,'skipped':_0x36fb55}],'failed':{'id':_0x5f0532,'requestedStateConfirmed':![],..._0x30fc7d},'warnings':['The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':_0xb7bdb9(0xb9),'lookupCommand':_0xb7bdb9(0xe4),'targetId':_0x5f0532}});}const _0x5829d9=mutationResult({..._0xc9a51d,'after':_0x184ec4,'dryRun':![],'succeeded':[{'id':_0x5f0532,'updated':!_0x36fb55,'skipped':_0x36fb55}],'verification':{'checkedBy':_0xb7bdb9(0xd3),'snapshotHash':_0x1f3cb2['hash'],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x5829d9,'message':_0x36fb55?_0xb7bdb9(0xeb)+_0x5f0532+_0xb7bdb9(0xde):_0xb7bdb9(0xcc)+_0x5f0532+'.'};}};function validateUpdateInput(_0x3a1d55){const _0x60ad2=a112_0x345012;validateExactId(_0x3a1d55);if(hasFlag(_0x3a1d55,_0x60ad2(0xd6)))throw CliErrors['validation'](_0x60ad2(0xc4),_0x60ad2(0xec));if(!hasFlag(_0x3a1d55,'label')&&!hasFlag(_0x3a1d55,_0x60ad2(0xc6)))throw CliErrors[_0x60ad2(0xd2)](_0x60ad2(0xe3));if(hasFlag(_0x3a1d55,_0x60ad2(0xc8))&&!_0x3a1d55[_0x60ad2(0xd0)](_0x60ad2(0xc8))[_0x60ad2(0xba)]())throw CliErrors[_0x60ad2(0xd2)](_0x60ad2(0xc5));validateSort(_0x3a1d55);}function a112_0x1f3d(_0x344492,_0x2bac2f){_0x344492=_0x344492-0xb8;const _0x56bed0=a112_0x56be();let _0x1f3deb=_0x56bed0[_0x344492];return _0x1f3deb;}function a112_0x56be(){const _0x1d522e=['type','4OrlhGf','Update\x20request\x20for\x20folder\x20','str','string','validation','menu\x20list','update','parentId','parent-id','cookie','\x22,\x20not\x20folder.','group-update','New\x20folder\x20label','verify\x20folder\x20update','2221695cikruu','105486XMgHnk','\x20already\x20matches\x20the\x20requested\x20state.','\x20is\x20no\x20longer\x20type\x20folder.','update\x20folder','No\x20online\x20fields\x20would\x20change.','\x20label\x20update\x20did\x20not\x20take\x20effect.','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','rabetbase\x20menu\x20list\x20--format\x20json','750237bDDhKb','menu','hash','selector','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.','menu_not_folder','Folder\x20','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','write','failed','trim','POST','93910JcHHqz','103522QOkUtg','Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','196MaKIrd','Menu\x20','verification','folder','unknown','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','--label\x20cannot\x20be\x20empty.','sort','100UrCxbS','label','11739990VWtLCQ','2386000ggwfqT','\x20is\x20type\x20\x22','Updated\x20folder\x20'];a112_0x56be=function(){return _0x1d522e;};return a112_0x56be();}async function buildUpdatePlan(_0x17df54,_0x5df8ac){const _0x97a765=a112_0x345012,_0x23253a=validateExactId(_0x17df54),_0x2945c0=await fetchMutationSnapshot(_0x17df54,'update\x20folder',_0x23253a),_0x5d94d5=requireMenu(_0x2945c0,_0x23253a);if(_0x5d94d5[_0x97a765(0xcd)]!=='folder')throw menuError(_0x97a765(0xea),_0x97a765(0xc0)+_0x23253a+_0x97a765(0xcb)+(_0x5d94d5['type']||_0x97a765(0xc3))+_0x97a765(0xd8),_0x97a765(0xe9));assertExpectedState(_0x17df54,_0x5d94d5);const _0x1c970c={'id':_0x23253a},_0x540557={..._0x5d94d5};if(hasFlag(_0x17df54,'label')){const _0x1933bc=_0x17df54['str']('label')[_0x97a765(0xba)]();_0x1c970c[_0x97a765(0xc8)]=_0x1933bc,_0x540557[_0x97a765(0xc8)]=_0x1933bc;}if(hasFlag(_0x17df54,_0x97a765(0xc6))){const _0x662d5=validateSort(_0x17df54);_0x1c970c['sort']=_0x662d5,_0x540557['sort']=_0x662d5;}const _0x4bb5db=sameRequestedState(_0x5d94d5,_0x540557),_0x11df55=_0x4bb5db?[_0x97a765(0xe1)]:[];return{'patch':_0x1c970c,'noChanges':_0x4bb5db,'plan':mutationResult({'operation':_0x97a765(0xd9),'selector':{'id':_0x23253a},'before':_0x5d94d5,'after':_0x540557,'dryRun':_0x5df8ac,'backend':[...BACKEND],'snapshotHash':_0x2945c0[_0x97a765(0xe7)],'warnings':_0x11df55})};}function sameRequestedState(_0x3f32f6,_0x291994){const _0x134edc=a112_0x345012;return _0x3f32f6[_0x134edc(0xc8)]===_0x291994['label']&&_0x3f32f6[_0x134edc(0xc6)]===_0x291994[_0x134edc(0xc6)];}function verifyPatch(_0x1f2caf,_0x1547f6){const _0x460771=a112_0x345012;assertVerified(_0x1f2caf[_0x460771(0xcd)]===_0x460771(0xc2),_0x460771(0xc0)+_0x1f2caf['id']+_0x460771(0xdf)),_0x1547f6['label']!==undefined&&assertVerified(_0x1f2caf[_0x460771(0xc8)]===_0x1547f6[_0x460771(0xc8)],'Folder\x20'+_0x1f2caf['id']+_0x460771(0xe2)),_0x1547f6[_0x460771(0xc6)]!==undefined&&assertVerified(_0x1f2caf[_0x460771(0xc6)]===_0x1547f6[_0x460771(0xc6)],_0x460771(0xeb)+_0x1f2caf['id']+'\x20sort\x20update\x20did\x20not\x20take\x20effect.');}
1
+ const a112_0xfde8c6=a112_0x27c0;(function(_0x8deb47,_0x527f31){const _0x4cf472=a112_0x27c0,_0x143014=_0x8deb47();while(!![]){try{const _0x2aeb8e=-parseInt(_0x4cf472(0x141))/0x1*(parseInt(_0x4cf472(0x13f))/0x2)+parseInt(_0x4cf472(0x134))/0x3*(parseInt(_0x4cf472(0x14a))/0x4)+parseInt(_0x4cf472(0x15f))/0x5*(-parseInt(_0x4cf472(0x146))/0x6)+parseInt(_0x4cf472(0x138))/0x7+-parseInt(_0x4cf472(0x166))/0x8*(-parseInt(_0x4cf472(0x164))/0x9)+-parseInt(_0x4cf472(0x15e))/0xa+parseInt(_0x4cf472(0x165))/0xb;if(_0x2aeb8e===_0x527f31)break;else _0x143014['push'](_0x143014['shift']());}catch(_0x310bea){_0x143014['push'](_0x143014['shift']());}}}(a112_0x5b5c,0x6dd83));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertExpectedState,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireFolder,requireMenu,validateExactId,validateSort}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a112_0xfde8c6(0x167),'path':a112_0xfde8c6(0x161)}];function a112_0x5b5c(){const _0x5e4c17=['write','No\x20online\x20fields\x20would\x20change.','662788KpRCzE','trim','unknown','Folder\x20','Use\x20the\x20platform\x20UI\x20for\x20hierarchy\x20changes.','Menu\x20group-update\x20does\x20not\x20support\x20reparenting;\x20remove\x20--parent-id.','rabetbase\x20menu\x20list\x20--format\x20json','72238ErxlDE','update','3iqVKWC','string','sort','selector','label','246LGUyTW','str','\x22,\x20not\x20folder.','Update\x20request\x20for\x20folder\x20','116QrfHit','validation','\x20is\x20no\x20longer\x20type\x20folder.','The\x20update\x20request\x20may\x20have\x20taken\x20effect,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','\x20label\x20update\x20did\x20not\x20take\x20effect.','hash','parentId','group-update','menu','\x20is\x20type\x20\x22','type','New\x20folder\x20label','\x20sort\x20update\x20did\x20not\x20take\x20effect.','menu\x20list','cookie','Menu\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','Updated\x20folder\x20','appCode','menu_not_folder','3670020zWdmxl','5870pkaIWr','update\x20folder','/smartapi/menu/update','At\x20least\x20one\x20of\x20--label\x20or\x20--sort\x20is\x20required.','parent-id','8532VIhQtS','3666839FCZfgM','3704DNRKZm','POST','Would\x20update\x20folder\x20','11013AGQFdQ','--label\x20cannot\x20be\x20empty.'];a112_0x5b5c=function(){return _0x5e4c17;};return a112_0x5b5c();}export const menuGroupUpdate={'service':a112_0xfde8c6(0x152),'command':a112_0xfde8c6(0x151),'description':'Rename\x20or\x20reorder\x20one\x20existing\x20folder\x20menu','risk':a112_0xfde8c6(0x136),'structuredErrors':!![],'rejectedFlags':[{'name':a112_0xfde8c6(0x163),'message':a112_0xfde8c6(0x13d),'hint':a112_0xfde8c6(0x13c)}],'flags':[MENU_ID_FLAG,{'name':a112_0xfde8c6(0x145),'type':a112_0xfde8c6(0x142),'description':a112_0xfde8c6(0x155)},MENU_SORT_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x363020){validateUpdateInput(_0x363020);},async 'dryRun'(_0x3a9b10){const _0x5a1d0f=a112_0xfde8c6;validateUpdateInput(_0x3a9b10);const {plan:_0x5b7602,patch:_0x2cc9b5}=await buildUpdatePlan(_0x3a9b10,!![]);return menuDryRunResult(_0x5b7602,{'method':_0x5a1d0f(0x167),'url':'/smartapi/menu/update','body':_0x2cc9b5,'description':_0x5a1d0f(0x168)+_0x5b7602['selector']['id']+'.'});},async 'execute'(_0x27542b){const _0x2757c6=a112_0xfde8c6;validateUpdateInput(_0x27542b);const {plan:_0x2aa901,patch:_0x417a5f,noChanges:_0x471184}=await buildUpdatePlan(_0x27542b,![]),_0x35ea1a=Number(_0x2aa901[_0x2757c6(0x144)]['id']),_0x49e68e=await recheckMutationSnapshot(_0x27542b,_0x2aa901,'update\x20folder',_0x35ea1a);if(!_0x471184)try{await updateMenuEntity(_0x27542b[_0x2757c6(0x15c)],_0x27542b[_0x2757c6(0x158)],_0x417a5f);}catch(_0x2a0591){const _0x173b92=mapMenuApiError(_0x2a0591,'update\x20folder',_0x35ea1a);throw menuFailure(_0x173b92,_0x2aa901,{'stage':_0x2757c6(0x140),'failed':{'id':_0x35ea1a}});}let _0x39b63e=_0x49e68e,_0x237389;try{!_0x471184&&(_0x39b63e=await fetchMenuSnapshot(_0x27542b['appCode'],_0x27542b['cookie'])),_0x237389=requireMenu(_0x39b63e,_0x35ea1a),verifyPatch(_0x237389,_0x417a5f),_0x237389[_0x2757c6(0x150)]!=null&&requireFolder(_0x39b63e,_0x237389[_0x2757c6(0x150)]);}catch(_0x4dd1db){const _0x4165f1=describeMenuErrorCause(_0x4dd1db,'verify\x20folder\x20update',_0x35ea1a),_0x4e0d0b=asVerificationError(_0x4dd1db,_0x2757c6(0x149)+_0x35ea1a+_0x2757c6(0x15a));throw menuFailure(_0x4e0d0b,_0x2aa901,{'stage':'verification','succeeded':[{'id':_0x35ea1a,'updateRequested':!_0x471184,'skipped':_0x471184}],'failed':{'id':_0x35ea1a,'requestedStateConfirmed':![],..._0x4165f1},'warnings':[_0x2757c6(0x14d)],'verification':{'status':'failed','lookupCommand':_0x2757c6(0x13e),'targetId':_0x35ea1a}});}const _0x328db1=mutationResult({..._0x2aa901,'after':_0x237389,'dryRun':![],'succeeded':[{'id':_0x35ea1a,'updated':!_0x471184,'skipped':_0x471184}],'verification':{'checkedBy':_0x2757c6(0x157),'snapshotHash':_0x39b63e[_0x2757c6(0x14f)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x328db1,'message':_0x471184?_0x2757c6(0x13b)+_0x35ea1a+'\x20already\x20matches\x20the\x20requested\x20state.':_0x2757c6(0x15b)+_0x35ea1a+'.'};}};function validateUpdateInput(_0x47cf55){const _0x574c3d=a112_0xfde8c6;validateExactId(_0x47cf55);if(hasFlag(_0x47cf55,_0x574c3d(0x163)))throw CliErrors[_0x574c3d(0x14b)](_0x574c3d(0x13d),_0x574c3d(0x13c));if(!hasFlag(_0x47cf55,_0x574c3d(0x145))&&!hasFlag(_0x47cf55,'sort'))throw CliErrors[_0x574c3d(0x14b)](_0x574c3d(0x162));if(hasFlag(_0x47cf55,_0x574c3d(0x145))&&!_0x47cf55[_0x574c3d(0x147)](_0x574c3d(0x145))['trim']())throw CliErrors[_0x574c3d(0x14b)](_0x574c3d(0x135));validateSort(_0x47cf55);}async function buildUpdatePlan(_0x1e155c,_0x3d59cd){const _0x188db8=a112_0xfde8c6,_0x44c182=validateExactId(_0x1e155c),_0x29aadd=await fetchMutationSnapshot(_0x1e155c,_0x188db8(0x160),_0x44c182),_0x13a570=requireMenu(_0x29aadd,_0x44c182);if(_0x13a570['type']!=='folder')throw menuError(_0x188db8(0x15d),'Menu\x20'+_0x44c182+_0x188db8(0x153)+(_0x13a570[_0x188db8(0x154)]||_0x188db8(0x13a))+_0x188db8(0x148),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20choose\x20an\x20id\x20whose\x20type\x20is\x20folder.');assertExpectedState(_0x1e155c,_0x13a570);const _0x4d3bbe={'id':_0x44c182},_0x490413={..._0x13a570};if(hasFlag(_0x1e155c,'label')){const _0x513d86=_0x1e155c[_0x188db8(0x147)](_0x188db8(0x145))[_0x188db8(0x139)]();_0x4d3bbe[_0x188db8(0x145)]=_0x513d86,_0x490413['label']=_0x513d86;}if(hasFlag(_0x1e155c,'sort')){const _0xb8869=validateSort(_0x1e155c);_0x4d3bbe['sort']=_0xb8869,_0x490413['sort']=_0xb8869;}const _0xb141f6=sameRequestedState(_0x13a570,_0x490413),_0xca8bdb=_0xb141f6?[_0x188db8(0x137)]:[];return{'patch':_0x4d3bbe,'noChanges':_0xb141f6,'plan':mutationResult({'operation':'group-update','selector':{'id':_0x44c182},'before':_0x13a570,'after':_0x490413,'dryRun':_0x3d59cd,'backend':[...BACKEND],'snapshotHash':_0x29aadd['hash'],'warnings':_0xca8bdb})};}function sameRequestedState(_0x534eba,_0x30dd02){const _0xd2dd29=a112_0xfde8c6;return _0x534eba[_0xd2dd29(0x145)]===_0x30dd02[_0xd2dd29(0x145)]&&_0x534eba['sort']===_0x30dd02[_0xd2dd29(0x143)];}function a112_0x27c0(_0x5f17d4,_0x42bb6c){_0x5f17d4=_0x5f17d4-0x134;const _0x5b5cdd=a112_0x5b5c();let _0x27c0fe=_0x5b5cdd[_0x5f17d4];return _0x27c0fe;}function verifyPatch(_0x305ed4,_0x2cf961){const _0x3fc3a5=a112_0xfde8c6;assertVerified(_0x305ed4[_0x3fc3a5(0x154)]==='folder',_0x3fc3a5(0x159)+_0x305ed4['id']+_0x3fc3a5(0x14c)),_0x2cf961[_0x3fc3a5(0x145)]!==undefined&&assertVerified(_0x305ed4[_0x3fc3a5(0x145)]===_0x2cf961[_0x3fc3a5(0x145)],'Folder\x20'+_0x305ed4['id']+_0x3fc3a5(0x14e)),_0x2cf961[_0x3fc3a5(0x143)]!==undefined&&assertVerified(_0x305ed4[_0x3fc3a5(0x143)]===_0x2cf961[_0x3fc3a5(0x143)],_0x3fc3a5(0x13b)+_0x305ed4['id']+_0x3fc3a5(0x156));}
@@ -1 +1 @@
1
- (function(_0x67a4fe,_0x4f8378){const _0x29fd4c=a113_0xe586,_0x49463d=_0x67a4fe();while(!![]){try{const _0x2af803=parseInt(_0x29fd4c(0x101))/0x1+parseInt(_0x29fd4c(0x105))/0x2+parseInt(_0x29fd4c(0xfd))/0x3+parseInt(_0x29fd4c(0x104))/0x4*(parseInt(_0x29fd4c(0x102))/0x5)+-parseInt(_0x29fd4c(0x100))/0x6*(-parseInt(_0x29fd4c(0xff))/0x7)+parseInt(_0x29fd4c(0xfe))/0x8+-parseInt(_0x29fd4c(0x103))/0x9;if(_0x2af803===_0x4f8378)break;else _0x49463d['push'](_0x49463d['shift']());}catch(_0x44d6fb){_0x49463d['push'](_0x49463d['shift']());}}}(a113_0x276c,0x25a12));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';function a113_0x276c(){const _0x2e6bd7=['1244202NYNaId','178321CvLccV','1022245TiSrLD','8087760RjFKrF','4zVVwFR','42378MCzIKo','624942oUhsyH','1865040NCYgdC','7tqboNS'];a113_0x276c=function(){return _0x2e6bd7;};return a113_0x276c();}function a113_0xe586(_0x26f011,_0xc21237){_0x26f011=_0x26f011-0xfd;const _0x276c8e=a113_0x276c();let _0xe58670=_0x276c8e[_0x26f011];return _0xe58670;}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';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
1
+ (function(_0x555178,_0x5955d0){const _0x5dd2bf=a113_0xe091,_0x422ead=_0x555178();while(!![]){try{const _0x1e6c25=-parseInt(_0x5dd2bf(0x105))/0x1*(parseInt(_0x5dd2bf(0x10a))/0x2)+parseInt(_0x5dd2bf(0x103))/0x3+parseInt(_0x5dd2bf(0x10b))/0x4+-parseInt(_0x5dd2bf(0x109))/0x5+-parseInt(_0x5dd2bf(0x104))/0x6*(parseInt(_0x5dd2bf(0x108))/0x7)+parseInt(_0x5dd2bf(0x106))/0x8+-parseInt(_0x5dd2bf(0x107))/0x9;if(_0x1e6c25===_0x5955d0)break;else _0x422ead['push'](_0x422ead['shift']());}catch(_0x50cdf6){_0x422ead['push'](_0x422ead['shift']());}}}(a113_0x458c,0xf3b2c));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 a113_0xe091(_0x4bdafa,_0x212e97){_0x4bdafa=_0x4bdafa-0x103;const _0x458c1d=a113_0x458c();let _0xe09143=_0x458c1d[_0x4bdafa];return _0xe09143;}import{menuMove}from'../../commands/menu/move.js';function a113_0x458c(){const _0x1397e4=['2609397zOGepc','7OAYylQ','9085170RrERts','6HAhZeP','5986968XnDjFy','3540258yBHSnc','1287222ZaUYQa','402463qleuze','14802024PtegPI'];a113_0x458c=function(){return _0x1397e4;};return a113_0x458c();}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';export const menuDefinitions=[menuList,menuExternalLinkCreate,menuExternalLinkUpdate,menuRename,menuSync,menuAssetUpdate,menuDelete,menuGroupCreate,menuGroupUpdate,menuMove,menuRegroupStart];
@@ -1 +1 @@
1
- const a114_0x2e4f80=a114_0x1a6f;(function(_0x48c7df,_0x260d24){const _0x3c7c95=a114_0x1a6f,_0x332e2d=_0x48c7df();while(!![]){try{const _0x55f0f8=-parseInt(_0x3c7c95(0x19e))/0x1*(-parseInt(_0x3c7c95(0x1a3))/0x2)+-parseInt(_0x3c7c95(0x1a2))/0x3*(-parseInt(_0x3c7c95(0x1ae))/0x4)+parseInt(_0x3c7c95(0x19d))/0x5*(parseInt(_0x3c7c95(0x1a1))/0x6)+parseInt(_0x3c7c95(0x1a0))/0x7*(-parseInt(_0x3c7c95(0x1ac))/0x8)+-parseInt(_0x3c7c95(0x19a))/0x9+-parseInt(_0x3c7c95(0x1a9))/0xa+parseInt(_0x3c7c95(0x1af))/0xb;if(_0x55f0f8===_0x260d24)break;else _0x332e2d['push'](_0x332e2d['shift']());}catch(_0x338861){_0x332e2d['push'](_0x332e2d['shift']());}}}(a114_0x4c3e,0xcf1a9));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a114_0x1a6f(_0x176240,_0x37d693){_0x176240=_0x176240-0x199;const _0x4c3eb5=a114_0x4c3e();let _0x1a6fca=_0x4c3eb5[_0x176240];return _0x1a6fca;}function a114_0x4c3e(){const _0x420bbd=['8274zHrRYZ','3582MpdHTy','9jBEmZf','2oZCohH','boolean','menu','appCode','list','menus','14050240TsXikT','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','map','5928ithcqc','read','588116rmKRWj','19645351sVEUEQ','cookie','verbose','2119878CfBjNA','\x20menu(s)','No\x20menus\x20found.','4315aZWanO','622486HgQDDu','total'];a114_0x4c3e=function(){return _0x420bbd;};return a114_0x4c3e();}import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';export const menuList={'service':a114_0x2e4f80(0x1a5),'command':a114_0x2e4f80(0x1a7),'description':'List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','risk':a114_0x2e4f80(0x1ad),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a114_0x2e4f80(0x199),'type':a114_0x2e4f80(0x1a4),'description':a114_0x2e4f80(0x1aa)}],async 'execute'(_0x196afa){const _0x111031=a114_0x2e4f80,_0x622e8=_0x196afa['bool']('verbose'),_0x3a730c=await fetchMenuSnapshot(_0x196afa[_0x111031(0x1a6)],_0x196afa[_0x111031(0x1b0)],{'verbose':_0x622e8});return{'ok':!![],'data':{'total':_0x3a730c['total'],'snapshotHash':_0x3a730c['hash'],'menus':_0x3a730c[_0x111031(0x1a8)][_0x111031(0x1ab)](toMenuListItem)},'message':_0x3a730c[_0x111031(0x19f)]===0x0?_0x111031(0x19c):'Found\x20'+_0x3a730c[_0x111031(0x19f)]+_0x111031(0x19b)};}};
1
+ function a114_0x522e(){const _0x5bc32a=['493242TPuBBl','List\x20online\x20menu\x20facts\x20for\x20the\x20current\x20app','\x20menu(s)','582568GUgKbQ','list','1046988PCCMwh','menu','total','boolean','verbose','84145FPVFnq','87696ofiCYt','hash','appCode','Return\x20extend\x20field\x20for\x20troubleshooting\x20resource\x20parsing','Found\x20','read','1043692jEdsYW','map','cookie','2621288TjKskE','2qDEOtm','No\x20menus\x20found.','bool','30CaIvpg'];a114_0x522e=function(){return _0x5bc32a;};return a114_0x522e();}const a114_0x3f790d=a114_0x2498;(function(_0x2b3791,_0x3a6187){const _0x544e9d=a114_0x2498,_0x75b0ad=_0x2b3791();while(!![]){try{const _0x120cf8=parseInt(_0x544e9d(0xbc))/0x1+parseInt(_0x544e9d(0xc6))/0x2*(parseInt(_0x544e9d(0xca))/0x3)+-parseInt(_0x544e9d(0xc2))/0x4+parseInt(_0x544e9d(0xbb))/0x5*(-parseInt(_0x544e9d(0xc9))/0x6)+parseInt(_0x544e9d(0xb4))/0x7+parseInt(_0x544e9d(0xc5))/0x8+-parseInt(_0x544e9d(0xb6))/0x9;if(_0x120cf8===_0x3a6187)break;else _0x75b0ad['push'](_0x75b0ad['shift']());}catch(_0x5080ca){_0x75b0ad['push'](_0x75b0ad['shift']());}}}(a114_0x522e,0x3137b));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot,toMenuListItem}from'../../commands/menu/shared/facts.js';function a114_0x2498(_0x122bd6,_0x4a90a8){_0x122bd6=_0x122bd6-0xb2;const _0x522ea2=a114_0x522e();let _0x249845=_0x522ea2[_0x122bd6];return _0x249845;}export const menuList={'service':a114_0x3f790d(0xb7),'command':a114_0x3f790d(0xb5),'description':a114_0x3f790d(0xb2),'risk':a114_0x3f790d(0xc1),'flags':[APPCODE_FLAG_OPTIONAL,{'name':'verbose','type':a114_0x3f790d(0xb9),'description':a114_0x3f790d(0xbf)}],async 'execute'(_0x5d2b30){const _0x1f4c02=a114_0x3f790d,_0x385df5=_0x5d2b30[_0x1f4c02(0xc8)](_0x1f4c02(0xba)),_0x35c7fa=await fetchMenuSnapshot(_0x5d2b30[_0x1f4c02(0xbe)],_0x5d2b30[_0x1f4c02(0xc4)],{'verbose':_0x385df5});return{'ok':!![],'data':{'total':_0x35c7fa[_0x1f4c02(0xb8)],'snapshotHash':_0x35c7fa[_0x1f4c02(0xbd)],'menus':_0x35c7fa['menus'][_0x1f4c02(0xc3)](toMenuListItem)},'message':_0x35c7fa['total']===0x0?_0x1f4c02(0xc7):_0x1f4c02(0xc0)+_0x35c7fa[_0x1f4c02(0xb8)]+_0x1f4c02(0xb3)};}};
@@ -1 +1 @@
1
- const a115_0x2e1634=a115_0x440a;(function(_0x4705c7,_0x59d276){const _0x225977=a115_0x440a,_0x501086=_0x4705c7();while(!![]){try{const _0xb0e671=parseInt(_0x225977(0xab))/0x1+parseInt(_0x225977(0x9b))/0x2*(-parseInt(_0x225977(0xae))/0x3)+parseInt(_0x225977(0x90))/0x4+-parseInt(_0x225977(0xa4))/0x5*(-parseInt(_0x225977(0xa7))/0x6)+parseInt(_0x225977(0x9a))/0x7*(-parseInt(_0x225977(0x95))/0x8)+-parseInt(_0x225977(0xb0))/0x9+-parseInt(_0x225977(0xa9))/0xa;if(_0xb0e671===_0x59d276)break;else _0x501086['push'](_0x501086['shift']());}catch(_0x12ef7a){_0x501086['push'](_0x501086['shift']());}}}(a115_0x6bfc,0x95307));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a115_0x440a(_0x5c8213,_0x41df2d){_0x5c8213=_0x5c8213-0x86;const _0x6bfc99=a115_0x6bfc();let _0x440ad5=_0x6bfc99[_0x5c8213];return _0x440ad5;}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':a115_0x2e1634(0x94),'path':'/smartapi/menu/update'}];function a115_0x6bfc(){const _0x517d35=['move','\x20is\x20no\x20longer\x20a\x20leaf.','sort','failed','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','menu\x20list','verification','cookie','menu','4078720iCCowl','folder','expect-parent-id','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root','POST','7075032rtcSIM','appCode','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','type','7VgTPYj','14UyLFke','menu_move_source_not_leaf','parent-id','Move\x20request\x20for\x20menu\x20','update','/smartapi/menu/update','move-menu','Moved\x20menu\x20','rabetbase\x20menu\x20list\x20--format\x20compress','3030keROFb','\x20parent\x20changed:\x20expected\x20','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','3156CSSXtn','\x20is\x20now\x20type\x20folder.','1570750tRqNsK','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','1193499jliNrE','hash','Menu\x20','239991hTLyeE','parentId','2874807wGOEHT','childrenCount','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.'];a115_0x6bfc=function(){return _0x517d35;};return a115_0x6bfc();}export const menuMove={'service':a115_0x2e1634(0x8f),'command':a115_0x2e1634(0x87),'description':a115_0x2e1634(0x93),'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'(_0x3ac574){validateMoveInput(_0x3ac574);},async 'dryRun'(_0x52ed1b){const _0x10baa7=a115_0x2e1634,{plan:_0x2da5d1,patch:_0x2c700e}=await buildMovePlan(_0x52ed1b,!![]);return menuDryRunResult(_0x2da5d1,{'method':_0x10baa7(0x94),'url':_0x10baa7(0xa0),'body':{..._0x2c700e,'appCode':_0x52ed1b[_0x10baa7(0x96)]},'description':'Would\x20move\x20menu\x20'+_0x2c700e['id']+'.'});},async 'execute'(_0x486bbd){const _0x5105eb=a115_0x2e1634;validateMoveInput(_0x486bbd);const {plan:_0x289131,patch:_0x3cfeb6,noChanges:_0x3c617b,snapshot:_0x24c998}=await buildMovePlan(_0x486bbd,![]),_0x13cb71=_0x3cfeb6['id'];if(!_0x3c617b)try{await updateMenuEntity(_0x486bbd[_0x5105eb(0x96)],_0x486bbd[_0x5105eb(0x8e)],_0x3cfeb6);}catch(_0x40d17b){const _0x2b4800=mapMenuApiError(_0x40d17b,_0x5105eb(0x87),_0x13cb71);throw menuFailure(_0x2b4800,_0x289131,{'stage':_0x5105eb(0x9f),'failed':{'id':_0x13cb71},'warnings':[_0x5105eb(0x98)],'verification':{'status':'failed','targetId':_0x13cb71,'lookupCommand':_0x5105eb(0xa3)}});}let _0xcf35d1,_0x30642c;try{_0xcf35d1=_0x3c617b?_0x24c998:await fetchMenuSnapshot(_0x486bbd['appCode'],_0x486bbd['cookie']),_0x30642c=requireMenu(_0xcf35d1,_0x13cb71),verifyMove(_0x30642c,_0x289131['after']),_0x30642c[_0x5105eb(0xaf)]!==null&&requireFolder(_0xcf35d1,_0x30642c['parentId']);}catch(_0x2e2ba8){const _0x14b873=describeMenuErrorCause(_0x2e2ba8,'verify\x20menu\x20move',_0x13cb71),_0x48c83b=asVerificationError(_0x2e2ba8,_0x5105eb(0x9e)+_0x13cb71+_0x5105eb(0x8b));throw menuFailure(_0x48c83b,_0x289131,{'stage':_0x5105eb(0x8d),'succeeded':[{'id':_0x13cb71,'updateRequested':!_0x3c617b,'skipped':_0x3c617b}],'failed':{'id':_0x13cb71,'requestedStateConfirmed':![],..._0x14b873},'warnings':[_0x5105eb(0x97)],'verification':{'status':_0x5105eb(0x8a),'targetId':_0x13cb71,'lookupCommand':_0x5105eb(0xa3)}});}const _0x213b83=mutationResult({..._0x289131,'after':_0x30642c,'dryRun':![],'succeeded':[{'id':_0x13cb71,'updated':!_0x3c617b,'skipped':_0x3c617b}],'verification':{'checkedBy':_0x5105eb(0x8c),'snapshotHash':_0xcf35d1[_0x5105eb(0xac)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x213b83,'message':_0x3c617b?_0x5105eb(0xad)+_0x13cb71+_0x5105eb(0xa6):_0x5105eb(0xa2)+_0x13cb71+'.'};}};function validateMoveInput(_0x2f0987){const _0x5c3341=a115_0x2e1634;validateExactId(_0x2f0987),parseParentId(_0x2f0987,_0x5c3341(0x9d),{'required':!![]}),parseParentId(_0x2f0987,_0x5c3341(0x92),{'required':!![]}),validateSort(_0x2f0987);}async function buildMovePlan(_0x31d701,_0x1a5649){const _0x1a570e=a115_0x2e1634,_0x460b08=validateExactId(_0x31d701),_0x9cbd39=parseParentId(_0x31d701,_0x1a570e(0x9d),{'required':!![]}),_0x204aa9=parseParentId(_0x31d701,_0x1a570e(0x92),{'required':!![]}),_0xe74ba0=validateSort(_0x31d701),_0x37b9d4=await fetchMutationSnapshot(_0x31d701,'move\x20menu',_0x460b08),_0x197e45=requireMenu(_0x37b9d4,_0x460b08);if(_0x197e45['type']==='folder'||_0x197e45[_0x1a570e(0xb1)]!==0x0)throw menuError(_0x1a570e(0x9c),'Menu\x20'+_0x460b08+'\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.');if(_0x197e45[_0x1a570e(0xaf)]!==_0x204aa9)throw menuError('menu_state_drift',_0x1a570e(0xad)+_0x460b08+_0x1a570e(0xa5)+formatParent(_0x204aa9)+',\x20current\x20'+formatParent(_0x197e45['parentId'])+'.',_0x1a570e(0x86));_0x9cbd39!==null&&requireFolder(_0x37b9d4,_0x9cbd39);const _0x5cc4c3=_0xe74ba0??(_0x197e45[_0x1a570e(0xaf)]===_0x9cbd39?_0x197e45['sort']??0x0:nextSiblingSort(_0x37b9d4,_0x9cbd39,_0x1a570e(0x8f))),_0x5c81f8={..._0x197e45,'parentId':_0x9cbd39,'sort':_0x5cc4c3},_0x23c627={'id':_0x460b08,'parentId':toApiParentId(_0x9cbd39),'sort':_0x5cc4c3},_0x53fbbe=_0x197e45[_0x1a570e(0xaf)]===_0x9cbd39&&_0x197e45[_0x1a570e(0x89)]===_0x5cc4c3;return{'patch':_0x23c627,'noChanges':_0x53fbbe,'snapshot':_0x37b9d4,'plan':mutationResult({'operation':'move','selector':{'id':_0x460b08,'parentId':_0x9cbd39},'before':_0x197e45,'after':_0x5c81f8,'dryRun':_0x1a5649,'backend':[...BACKEND],'plannedActions':[{'stage':_0x1a570e(0xa1),'method':'POST','path':_0x1a570e(0xa0),'body':{..._0x23c627,'appCode':_0x31d701[_0x1a570e(0x96)]}}],'snapshotHash':_0x37b9d4[_0x1a570e(0xac)],'warnings':_0x53fbbe?['Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.']:[]})};}function verifyMove(_0x40bcea,_0x558203){const _0x3b59f3=a115_0x2e1634;assertVerified(_0x40bcea[_0x3b59f3(0x99)]!==_0x3b59f3(0x91),_0x3b59f3(0xad)+_0x40bcea['id']+_0x3b59f3(0xa8)),assertVerified(_0x40bcea[_0x3b59f3(0xb1)]===0x0,_0x3b59f3(0xad)+_0x40bcea['id']+_0x3b59f3(0x88)),assertVerified(_0x40bcea['parentId']===_0x558203[_0x3b59f3(0xaf)],_0x3b59f3(0xad)+_0x40bcea['id']+_0x3b59f3(0xaa)),assertVerified(_0x40bcea[_0x3b59f3(0x89)]===_0x558203[_0x3b59f3(0x89)],_0x3b59f3(0xad)+_0x40bcea['id']+'\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.');}
1
+ const a115_0xf75fc9=a115_0x1651;(function(_0x2ba245,_0x3d4fe0){const _0x58edf6=a115_0x1651,_0x5ab0b6=_0x2ba245();while(!![]){try{const _0xb2df25=-parseInt(_0x58edf6(0x1a4))/0x1+parseInt(_0x58edf6(0x197))/0x2*(parseInt(_0x58edf6(0x1a5))/0x3)+-parseInt(_0x58edf6(0x190))/0x4+-parseInt(_0x58edf6(0x1a8))/0x5+parseInt(_0x58edf6(0x19f))/0x6+parseInt(_0x58edf6(0x181))/0x7+-parseInt(_0x58edf6(0x18d))/0x8*(-parseInt(_0x58edf6(0x189))/0x9);if(_0xb2df25===_0x3d4fe0)break;else _0x5ab0b6['push'](_0x5ab0b6['shift']());}catch(_0x11d9d1){_0x5ab0b6['push'](_0x5ab0b6['shift']());}}}(a115_0x32af,0x5df63));function a115_0x1651(_0x38dc35,_0x490e93){_0x38dc35=_0x38dc35-0x178;const _0x32af3c=a115_0x32af();let _0x165127=_0x32af3c[_0x38dc35];return _0x165127;}function a115_0x32af(){const _0x259edd=['menu_state_drift','3405300rwwIRt','move','type','\x20is\x20no\x20longer\x20a\x20leaf.','move-menu','496615jZsnIc','15774bknJBC','\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','\x20parentId\x20did\x20not\x20match\x20the\x20move\x20plan.','2971195TothKh','cookie','Move\x20request\x20for\x20menu\x20','expect-parent-id','parentId','menu','/smartapi/menu/update','menu_move_source_not_leaf','Source\x20menu\x20already\x20matches\x20the\x20requested\x20parent\x20and\x20sort.','folder','182609qVYPKz','Moved\x20menu\x20','\x20parent\x20changed:\x20expected\x20','The\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Would\x20move\x20menu\x20','parent-id','Menu\x20','update','4131rqWBTb','write','failed','sort','16552eDFtXE','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','childrenCount','1427108ldBWmp','move\x20menu','The\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','hash',',\x20current\x20','menu\x20list','\x20sort\x20did\x20not\x20match\x20the\x20move\x20plan.','110PNaKNv','appCode','verify\x20menu\x20move','\x20must\x20be\x20a\x20non-folder\x20leaf\x20before\x20it\x20can\x20be\x20moved.','POST','\x20is\x20now\x20type\x20folder.','Move\x20one\x20existing\x20leaf\x20menu\x20to\x20a\x20folder\x20or\x20root'];a115_0x32af=function(){return _0x259edd;};return a115_0x32af();}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':a115_0xf75fc9(0x19b),'path':a115_0xf75fc9(0x17d)}];export const menuMove={'service':a115_0xf75fc9(0x17c),'command':a115_0xf75fc9(0x1a0),'description':a115_0xf75fc9(0x19d),'risk':a115_0xf75fc9(0x18a),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{...MENU_PARENT_ID_FLAG,'required':!![]},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x38389d){validateMoveInput(_0x38389d);},async 'dryRun'(_0x11331e){const _0x4481c3=a115_0xf75fc9,{plan:_0x1e742d,patch:_0x54b9f2}=await buildMovePlan(_0x11331e,!![]);return menuDryRunResult(_0x1e742d,{'method':_0x4481c3(0x19b),'url':'/smartapi/menu/update','body':{..._0x54b9f2,'appCode':_0x11331e[_0x4481c3(0x198)]},'description':_0x4481c3(0x185)+_0x54b9f2['id']+'.'});},async 'execute'(_0x5ff42e){const _0x24cb1e=a115_0xf75fc9;validateMoveInput(_0x5ff42e);const {plan:_0x6b1c21,patch:_0x36f1fa,noChanges:_0x4adbd6,snapshot:_0x5f434f}=await buildMovePlan(_0x5ff42e,![]),_0x5815c7=_0x36f1fa['id'];if(!_0x4adbd6)try{await updateMenuEntity(_0x5ff42e[_0x24cb1e(0x198)],_0x5ff42e[_0x24cb1e(0x178)],_0x36f1fa);}catch(_0x2f2be5){const _0x3b8a65=mapMenuApiError(_0x2f2be5,'move',_0x5815c7);throw menuFailure(_0x3b8a65,_0x6b1c21,{'stage':_0x24cb1e(0x188),'failed':{'id':_0x5815c7},'warnings':[_0x24cb1e(0x184)],'verification':{'status':_0x24cb1e(0x18b),'targetId':_0x5815c7,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}let _0x38d882,_0x355574;try{_0x38d882=_0x4adbd6?_0x5f434f:await fetchMenuSnapshot(_0x5ff42e[_0x24cb1e(0x198)],_0x5ff42e[_0x24cb1e(0x178)]),_0x355574=requireMenu(_0x38d882,_0x5815c7),verifyMove(_0x355574,_0x6b1c21['after']),_0x355574['parentId']!==null&&requireFolder(_0x38d882,_0x355574[_0x24cb1e(0x17b)]);}catch(_0x3e97bd){const _0x2abcec=describeMenuErrorCause(_0x3e97bd,_0x24cb1e(0x199),_0x5815c7),_0x1a91b0=asVerificationError(_0x3e97bd,_0x24cb1e(0x179)+_0x5815c7+_0x24cb1e(0x18e));throw menuFailure(_0x1a91b0,_0x6b1c21,{'stage':'verification','succeeded':[{'id':_0x5815c7,'updateRequested':!_0x4adbd6,'skipped':_0x4adbd6}],'failed':{'id':_0x5815c7,'requestedStateConfirmed':![],..._0x2abcec},'warnings':[_0x24cb1e(0x192)],'verification':{'status':_0x24cb1e(0x18b),'targetId':_0x5815c7,'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20compress'}});}const _0x2ce050=mutationResult({..._0x6b1c21,'after':_0x355574,'dryRun':![],'succeeded':[{'id':_0x5815c7,'updated':!_0x4adbd6,'skipped':_0x4adbd6}],'verification':{'checkedBy':_0x24cb1e(0x195),'snapshotHash':_0x38d882[_0x24cb1e(0x193)],'matchesRequestedState':!![]}});return{'ok':!![],'data':_0x2ce050,'message':_0x4adbd6?_0x24cb1e(0x187)+_0x5815c7+_0x24cb1e(0x1a6):_0x24cb1e(0x182)+_0x5815c7+'.'};}};function validateMoveInput(_0x1b2863){const _0x277b5e=a115_0xf75fc9;validateExactId(_0x1b2863),parseParentId(_0x1b2863,_0x277b5e(0x186),{'required':!![]}),parseParentId(_0x1b2863,_0x277b5e(0x17a),{'required':!![]}),validateSort(_0x1b2863);}async function buildMovePlan(_0xa5c87a,_0x2f91fb){const _0x2d42ab=a115_0xf75fc9,_0x1477e8=validateExactId(_0xa5c87a),_0x5b584f=parseParentId(_0xa5c87a,_0x2d42ab(0x186),{'required':!![]}),_0x444922=parseParentId(_0xa5c87a,'expect-parent-id',{'required':!![]}),_0x181661=validateSort(_0xa5c87a),_0x69d24=await fetchMutationSnapshot(_0xa5c87a,_0x2d42ab(0x191),_0x1477e8),_0x970e5d=requireMenu(_0x69d24,_0x1477e8);if(_0x970e5d[_0x2d42ab(0x1a1)]==='folder'||_0x970e5d['childrenCount']!==0x0)throw menuError(_0x2d42ab(0x17e),'Menu\x20'+_0x1477e8+_0x2d42ab(0x19a),'Run\x20`rabetbase\x20menu\x20list\x20--format\x20compress`\x20and\x20choose\x20an\x20exact\x20non-folder\x20leaf\x20id.');if(_0x970e5d['parentId']!==_0x444922)throw menuError(_0x2d42ab(0x19e),_0x2d42ab(0x187)+_0x1477e8+_0x2d42ab(0x183)+formatParent(_0x444922)+_0x2d42ab(0x194)+formatParent(_0x970e5d['parentId'])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.');_0x5b584f!==null&&requireFolder(_0x69d24,_0x5b584f);const _0x5630e3=_0x181661??(_0x970e5d[_0x2d42ab(0x17b)]===_0x5b584f?_0x970e5d[_0x2d42ab(0x18c)]??0x0:nextSiblingSort(_0x69d24,_0x5b584f,'menu')),_0x249639={..._0x970e5d,'parentId':_0x5b584f,'sort':_0x5630e3},_0x57cd91={'id':_0x1477e8,'parentId':toApiParentId(_0x5b584f),'sort':_0x5630e3},_0xd6bda7=_0x970e5d[_0x2d42ab(0x17b)]===_0x5b584f&&_0x970e5d[_0x2d42ab(0x18c)]===_0x5630e3;return{'patch':_0x57cd91,'noChanges':_0xd6bda7,'snapshot':_0x69d24,'plan':mutationResult({'operation':_0x2d42ab(0x1a0),'selector':{'id':_0x1477e8,'parentId':_0x5b584f},'before':_0x970e5d,'after':_0x249639,'dryRun':_0x2f91fb,'backend':[...BACKEND],'plannedActions':[{'stage':_0x2d42ab(0x1a3),'method':'POST','path':_0x2d42ab(0x17d),'body':{..._0x57cd91,'appCode':_0xa5c87a['appCode']}}],'snapshotHash':_0x69d24[_0x2d42ab(0x193)],'warnings':_0xd6bda7?[_0x2d42ab(0x17f)]:[]})};}function verifyMove(_0x3058c7,_0x22cdda){const _0x33e50b=a115_0xf75fc9;assertVerified(_0x3058c7[_0x33e50b(0x1a1)]!==_0x33e50b(0x180),'Menu\x20'+_0x3058c7['id']+_0x33e50b(0x19c)),assertVerified(_0x3058c7[_0x33e50b(0x18f)]===0x0,_0x33e50b(0x187)+_0x3058c7['id']+_0x33e50b(0x1a2)),assertVerified(_0x3058c7[_0x33e50b(0x17b)]===_0x22cdda[_0x33e50b(0x17b)],_0x33e50b(0x187)+_0x3058c7['id']+_0x33e50b(0x1a7)),assertVerified(_0x3058c7[_0x33e50b(0x18c)]===_0x22cdda['sort'],_0x33e50b(0x187)+_0x3058c7['id']+_0x33e50b(0x196));}
@@ -1 +1 @@
1
- const a116_0x16a232=a116_0x4aeb;(function(_0x58b43f,_0x1bc999){const _0x41fba0=a116_0x4aeb,_0x519d24=_0x58b43f();while(!![]){try{const _0x5e636e=-parseInt(_0x41fba0(0xe0))/0x1*(-parseInt(_0x41fba0(0xf5))/0x2)+-parseInt(_0x41fba0(0xc8))/0x3*(-parseInt(_0x41fba0(0xab))/0x4)+-parseInt(_0x41fba0(0xaf))/0x5*(parseInt(_0x41fba0(0xa8))/0x6)+-parseInt(_0x41fba0(0xd8))/0x7+parseInt(_0x41fba0(0xce))/0x8*(parseInt(_0x41fba0(0xf7))/0x9)+parseInt(_0x41fba0(0xea))/0xa*(-parseInt(_0x41fba0(0xa4))/0xb)+-parseInt(_0x41fba0(0xc0))/0xc*(-parseInt(_0x41fba0(0xf1))/0xd);if(_0x5e636e===_0x1bc999)break;else _0x519d24['push'](_0x519d24['shift']());}catch(_0x23451e){_0x519d24['push'](_0x519d24['shift']());}}}(a116_0x2e3f,0x4d632));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,requireExplicitYes,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a116_0x4aeb(_0x128b06,_0x373691){_0x128b06=_0x128b06-0xa4;const _0x2e3f71=a116_0x2e3f();let _0x4aebf7=_0x2e3f71[_0x128b06];return _0x4aebf7;}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a116_0x16a232(0xd5)}],MAX_REGROUP_MENU_COUNT=0x64;function a116_0x2e3f(){const _0x194d4d=['--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','/smartapi/menu/regroup','status','join','4077430XPJVXu','split','Regroup\x20readback\x20also\x20failed:\x20','some','\x20--format\x20compress','\x27\x5c\x27\x27','test','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','10GfOccX','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','menu_regroup_target_not_leaf','label','toLowerCase','str','trim','plan','byId','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','8790HnLBiR','Regroup\x20task\x20','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','unconfirmed','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','flagMissing','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','13FKcohd','hash','filter','menu-ids','17708nHJQjK','map','4809735WsRxIl','POST','<platform-generated>','get','parentId','high-risk-write','appCode','message','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','menu_regroup_label_conflict','495NpPlph','menuIds','stringify','menus','2240994OAuUnq','string','Label\x20of\x20the\x20new\x20root\x20folder','44HeYXgK','Menus\x20','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','Root\x20folder\x20label\x20','5bVHbYJ','Menu\x20','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','menu_regroup_already_applied','<new-group-id>','taskId','isSafeInteger','Regroup\x20readback\x20failed:\x20','Regroup\x20task\x20accepted.\x20','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','isTerminal','plan\x20regroup','input','readbackError','regroup-start','cookie','6743208fFVhst','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','validation','type','folder','knownStatus','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','applied','34809jluIVM','start\x20menu\x20regroup',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','size','length','failed','8prqfIP','\x20menus\x20per\x20regroup\x20request.','SUCCESS','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','start\x20regroup','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20'];a116_0x2e3f=function(){return _0x194d4d;};return a116_0x2e3f();}export const menuRegroupStart={'service':'menu','command':'regroup-start','description':a116_0x16a232(0xad),'risk':a116_0x16a232(0xfc),'structuredErrors':!![],'flags':[{'name':a116_0x16a232(0xe3),'type':a116_0x16a232(0xa9),'required':!![],'description':a116_0x16a232(0xaa)},{'name':a116_0x16a232(0xf4),'type':a116_0x16a232(0xa9),'required':!![],'description':a116_0x16a232(0xee)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xbed69){validateRegroupInput(_0xbed69),requireExplicitYes(_0xbed69);},async 'dryRun'(_0x53fe6f){const _0x37114e=a116_0x16a232;validateRegroupInput(_0x53fe6f);const _0x543b73=await buildRegroupPlan(_0x53fe6f,!![]);return menuDryRunResult(_0x543b73['plan'],{'method':_0x37114e(0xf8),'url':_0x37114e(0xd5),'body':_0x543b73[_0x37114e(0xbc)],'description':'Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20'+JSON[_0x37114e(0xa6)](_0x543b73[_0x37114e(0xe3)])+'\x20and\x20regroup\x20menu\x20ids\x20'+_0x543b73['menuIds'][_0x37114e(0xd7)](',\x20')+_0x37114e(0xca)});},async 'execute'(_0x5923f5){const _0x17158b=a116_0x16a232;validateRegroupInput(_0x5923f5),requireExplicitYes(_0x5923f5);const _0x437dab=await buildRegroupPlan(_0x5923f5,![]);await recheckMutationSnapshot(_0x5923f5,_0x437dab[_0x17158b(0xe7)],_0x17158b(0xd2));const _0x301b94=buildMenuLookupCommand(_0x5923f5[_0x17158b(0xfd)]);let _0x67dbba,_0xc59803;try{_0x67dbba=await startMenuRegroup(_0x5923f5[_0x17158b(0xbf)],_0x437dab[_0x17158b(0xbc)]),_0xc59803=normalizeAsyncTask(_0x67dbba);}catch(_0x20ffff){const _0x3a4cb2=await inspectRegroupAfterFailure(_0x5923f5[_0x17158b(0xfd)],_0x5923f5[_0x17158b(0xbf)],_0x437dab['label'],_0x437dab[_0x17158b(0xa5)]),_0x4748f4=typeof _0x67dbba?.[_0x17158b(0xb5)]===_0x17158b(0xa9)&&_0x67dbba[_0x17158b(0xb5)][_0x17158b(0xe6)]()?_0x67dbba['taskId']['trim']():null,_0x1224b1=_0x4748f4?{'command':buildAsyncTaskStatusCommand(_0x4748f4,_0x5923f5['appCode'])}:null,_0x13ae3b=mapMenuApiError(_0x20ffff,_0x17158b(0xc9));throw menuFailure(_0x13ae3b,_0x437dab['plan'],{'stage':'regroup-submit','failed':{'menuIds':_0x437dab['menuIds'],'taskId':_0x4748f4,'groupingApplied':_0x3a4cb2[_0x17158b(0xc7)]?!![]:_0x17158b(0xed)},'after':_0x3a4cb2[_0x17158b(0xc7)]??null,'warnings':[_0x17158b(0xc1),..._0x3a4cb2[_0x17158b(0xbd)]?[_0x17158b(0xda)+_0x3a4cb2[_0x17158b(0xbd)]]:[],..._0x4748f4?[_0x17158b(0xc6)]:[]],'verification':{'status':_0x17158b(0xcd),'groupingApplied':_0x3a4cb2[_0x17158b(0xc7)]?!![]:_0x17158b(0xed),'taskId':_0x4748f4,'query':_0x1224b1,'lookupCommand':_0x301b94}});}const _0x40e431=buildAsyncTaskStatusCommand(_0xc59803[_0x17158b(0xb5)],_0x5923f5[_0x17158b(0xfd)]);let _0x2066bb=null,_0x58bb87=null,_0x249654=null;try{_0x2066bb=await fetchMenuSnapshot(_0x5923f5['appCode'],_0x5923f5[_0x17158b(0xbf)]),_0x58bb87=findAppliedRegroup(_0x2066bb,_0x437dab[_0x17158b(0xe3)],_0x437dab[_0x17158b(0xa5)]);}catch(_0x941496){_0x249654=_0x941496 instanceof Error?_0x941496[_0x17158b(0xfe)]:String(_0x941496);}const _0x4f7769=mutationResult({..._0x437dab[_0x17158b(0xe7)],'after':_0x58bb87??null,'dryRun':![],'succeeded':[{'groupId':_0x58bb87?.['group']['id']??null,'menuIds':_0x437dab['menuIds'],'taskId':_0xc59803[_0x17158b(0xb5)],'status':_0xc59803[_0x17158b(0xd6)],'groupingApplied':_0x58bb87?!![]:'unconfirmed'}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x2066bb?.[_0x17158b(0xf2)]??null,'groupId':_0x58bb87?.['group']['id']??null,'groupingApplied':_0x58bb87?!![]:_0x17158b(0xed),'readbackError':_0x249654,'lookupCommand':_0x301b94},'warnings':[..._0x437dab[_0x17158b(0xe7)]['warnings'],...!_0x58bb87?[unconfirmedRegroupWarning(_0xc59803)]:[],..._0x249654?[_0x17158b(0xb7)+_0x249654]:[]]}),_0x176330=_0xc59803['status']===_0x17158b(0xd0)&&!_0x58bb87?_0x17158b(0xeb)+_0xc59803[_0x17158b(0xb5)]+'\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.':_0x17158b(0xb8)+asyncTaskMessage(_0xc59803);return{'ok':!![],'message':_0x176330,'data':{..._0x4f7769,'task':_0xc59803,'query':_0xc59803[_0x17158b(0xba)]?null:{'command':_0x40e431}}};}};function validateRegroupInput(_0xde215f){const _0x2d2b75=a116_0x16a232;if(!_0xde215f[_0x2d2b75(0xe5)]('label')[_0x2d2b75(0xe6)]())throw CliErrors[_0x2d2b75(0xef)]('label');parseMenuIds(_0xde215f[_0x2d2b75(0xe5)](_0x2d2b75(0xf4)));}function parseMenuIds(_0x507810){const _0x6cc0af=a116_0x16a232,_0x3161c9=_0x507810[_0x6cc0af(0xd9)](',')[_0x6cc0af(0xf6)](_0x30200a=>_0x30200a[_0x6cc0af(0xe6)]());if(_0x3161c9[_0x6cc0af(0xcc)]===0x0||_0x3161c9[_0x6cc0af(0xdb)](_0x10f621=>!_0x10f621))throw CliErrors[_0x6cc0af(0xc2)](_0x6cc0af(0xd4));const _0x41a7e7=_0x3161c9[_0x6cc0af(0xf6)](_0x3b941d=>{const _0x2dfb97=_0x6cc0af;if(!/^\d+$/[_0x2dfb97(0xde)](_0x3b941d))throw CliErrors[_0x2dfb97(0xc2)](_0x2dfb97(0xd4));const _0x49d9e7=Number(_0x3b941d);if(!Number[_0x2dfb97(0xb6)](_0x49d9e7)||_0x49d9e7<=0x0)throw CliErrors['validation'](_0x2dfb97(0xd4));return _0x49d9e7;});if(new Set(_0x41a7e7)[_0x6cc0af(0xcb)]!==_0x41a7e7[_0x6cc0af(0xcc)])throw CliErrors[_0x6cc0af(0xc2)](_0x6cc0af(0xe9));if(_0x41a7e7['length']>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x6cc0af(0xc2)]('--menu-ids\x20supports\x20at\x20most\x20'+MAX_REGROUP_MENU_COUNT+_0x6cc0af(0xcf));return _0x41a7e7;}function buildMenuLookupCommand(_0x5ec45b){const _0x2187d0=a116_0x16a232,_0x4c3e8f='\x27'+_0x5ec45b['replace'](/'/g,_0x2187d0(0xdd))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x4c3e8f+_0x2187d0(0xdc);}function unconfirmedRegroupWarning(_0x2c4e1a){const _0x2ab85f=a116_0x16a232;if(_0x2c4e1a[_0x2ab85f(0xd6)]===_0x2ab85f(0xd0))return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x2c4e1a[_0x2ab85f(0xd6)]==='FAILED')return _0x2ab85f(0xdf);if(_0x2c4e1a[_0x2ab85f(0xc5)])return _0x2ab85f(0xff);return'The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';}async function buildRegroupPlan(_0x10dcfb,_0x1a9f7c){const _0x481c5d=a116_0x16a232,_0x27a11c=_0x10dcfb[_0x481c5d(0xe5)](_0x481c5d(0xe3))[_0x481c5d(0xe6)](),_0x9ab924=parseMenuIds(_0x10dcfb['str'](_0x481c5d(0xf4))),_0x2902dd=await fetchMutationSnapshot(_0x10dcfb,_0x481c5d(0xbb)),_0x1397c8=_0x9ab924[_0x481c5d(0xf6)](_0x173ee8=>requireMenu(_0x2902dd,_0x173ee8));for(const _0x1411f1 of _0x1397c8){if(_0x1411f1[_0x481c5d(0xc3)][_0x481c5d(0xe6)]()[_0x481c5d(0xe4)]()===_0x481c5d(0xc4)||_0x1411f1['childrenCount']>0x0)throw menuError(_0x481c5d(0xe2),'Menu\x20'+_0x1411f1['id']+_0x481c5d(0xec),_0x481c5d(0xb2));if(!_0x1411f1[_0x481c5d(0xe3)][_0x481c5d(0xe6)]())throw menuError('menu_regroup_target_label_missing',_0x481c5d(0xb0)+_0x1411f1['id']+_0x481c5d(0xb9),_0x481c5d(0xd1));}const _0x334999=findAppliedRegroup(_0x2902dd,_0x27a11c,_0x9ab924);if(_0x334999)throw menuError(_0x481c5d(0xb3),_0x481c5d(0xac)+_0x9ab924[_0x481c5d(0xd7)](',\x20')+_0x481c5d(0xd3)+_0x334999['group']['id']+'\x20('+JSON[_0x481c5d(0xa6)](_0x27a11c)+').',_0x481c5d(0xf0));const _0x55a894=_0x2902dd[_0x481c5d(0xa7)][_0x481c5d(0xf3)](_0x1d1629=>_0x1d1629[_0x481c5d(0xfb)]==null&&_0x1d1629[_0x481c5d(0xc3)][_0x481c5d(0xe6)]()[_0x481c5d(0xe4)]()===_0x481c5d(0xc4)&&_0x1d1629['label']===_0x27a11c);if(_0x55a894['length']>0x0)throw menuError(_0x481c5d(0x100),_0x481c5d(0xae)+JSON[_0x481c5d(0xa6)](_0x27a11c)+'\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'+_0x55a894['map'](_0x7fe89c=>_0x7fe89c['id'])['join'](',\x20')+'.',_0x481c5d(0xe1));const _0x2fea76={'appCode':_0x10dcfb['appCode'],'menuGroups':[{'label':_0x27a11c,'type':_0x481c5d(0xc4),'children':_0x1397c8[_0x481c5d(0xf6)](_0x454c13=>({'id':_0x454c13['id'],'label':_0x454c13[_0x481c5d(0xe3)]}))}]},_0x4221c0=mutationResult({'operation':_0x481c5d(0xbe),'selector':{'label':_0x27a11c,'menuIds':_0x9ab924},'before':{'menus':_0x1397c8},'after':{'group':{'id':null,'parentId':null,'label':_0x27a11c,'path':_0x481c5d(0xf9),'type':'folder','childrenIds':_0x9ab924},'children':_0x1397c8[_0x481c5d(0xf6)](_0x53a2b9=>({'id':_0x53a2b9['id'],'label':_0x53a2b9[_0x481c5d(0xe3)],'beforeParentId':_0x53a2b9[_0x481c5d(0xfb)],'afterParentId':_0x481c5d(0xb4)}))},'dryRun':_0x1a9f7c,'backend':[...BACKEND],'plannedActions':[{'stage':'submit-regroup-task','method':_0x481c5d(0xf8),'path':_0x481c5d(0xd5),'body':_0x2fea76}],'snapshotHash':_0x2902dd[_0x481c5d(0xf2)],'warnings':[_0x481c5d(0xb1),'The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.']});return{'label':_0x27a11c,'menuIds':_0x9ab924,'input':_0x2fea76,'plan':_0x4221c0};}function findAppliedRegroup(_0x212632,_0x1f8509,_0x1921ab){const _0x4a2cb4=a116_0x16a232,_0x31be08=_0x1921ab[_0x4a2cb4(0xf6)](_0x61a855=>_0x212632[_0x4a2cb4(0xe8)][_0x4a2cb4(0xfa)](_0x61a855))[_0x4a2cb4(0xf3)](_0x2f7846=>Boolean(_0x2f7846));if(_0x31be08[_0x4a2cb4(0xcc)]!==_0x1921ab[_0x4a2cb4(0xcc)])return null;const _0x546070=_0x31be08[0x0]?.[_0x4a2cb4(0xfb)];if(_0x546070==null||_0x31be08['some'](_0x248fa5=>_0x248fa5[_0x4a2cb4(0xfb)]!==_0x546070))return null;const _0x4260c6=_0x212632[_0x4a2cb4(0xe8)][_0x4a2cb4(0xfa)](_0x546070);if(!_0x4260c6||_0x4260c6[_0x4a2cb4(0xfb)]!=null||_0x4260c6['type'][_0x4a2cb4(0xe6)]()[_0x4a2cb4(0xe4)]()!=='folder'||_0x4260c6[_0x4a2cb4(0xe3)]!==_0x1f8509)return null;const _0x2687f6=[..._0x1921ab]['sort']((_0x283981,_0x768244)=>_0x283981-_0x768244),_0x43ab86=[..._0x4260c6['childrenIds']]['sort']((_0x41f40e,_0x350000)=>_0x41f40e-_0x350000);if(JSON[_0x4a2cb4(0xa6)](_0x43ab86)!==JSON['stringify'](_0x2687f6))return null;return{'group':_0x4260c6,'children':_0x31be08};}async function inspectRegroupAfterFailure(_0x2db38d,_0x5c5e70,_0x28fed6,_0x1ade3d){const _0x64090c=a116_0x16a232;try{const _0x34d112=await fetchMenuSnapshot(_0x2db38d,_0x5c5e70);return{'applied':findAppliedRegroup(_0x34d112,_0x28fed6,_0x1ade3d),'readbackError':null};}catch(_0x22fe23){return{'applied':null,'readbackError':_0x22fe23 instanceof Error?_0x22fe23[_0x64090c(0xfe)]:String(_0x22fe23)};}}
1
+ const a116_0x4ca9dc=a116_0x12f7;(function(_0x1e5b1f,_0x4abf12){const _0x185cdb=a116_0x12f7,_0x24fafd=_0x1e5b1f();while(!![]){try{const _0x399f63=parseInt(_0x185cdb(0x227))/0x1*(-parseInt(_0x185cdb(0x1f3))/0x2)+parseInt(_0x185cdb(0x23a))/0x3+parseInt(_0x185cdb(0x22e))/0x4+parseInt(_0x185cdb(0x1fd))/0x5+-parseInt(_0x185cdb(0x1ef))/0x6*(parseInt(_0x185cdb(0x228))/0x7)+-parseInt(_0x185cdb(0x230))/0x8+-parseInt(_0x185cdb(0x1e6))/0x9*(-parseInt(_0x185cdb(0x217))/0xa);if(_0x399f63===_0x4abf12)break;else _0x24fafd['push'](_0x24fafd['shift']());}catch(_0x54ef6d){_0x24fafd['push'](_0x24fafd['shift']());}}}(a116_0x3d6d,0x3bec8));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,requireExplicitYes,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';function a116_0x12f7(_0x27acb2,_0x1ef412){_0x27acb2=_0x27acb2-0x1d8;const _0x3d6d2a=a116_0x3d6d();let _0x12f78a=_0x3d6d2a[_0x27acb2];return _0x12f78a;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a116_0x4ca9dc(0x229),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a116_0x4ca9dc(0x214),'command':'regroup-start','description':a116_0x4ca9dc(0x232),'risk':'high-risk-write','structuredErrors':!![],'flags':[{'name':a116_0x4ca9dc(0x1fa),'type':a116_0x4ca9dc(0x1f6),'required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a116_0x4ca9dc(0x1df),'type':a116_0x4ca9dc(0x1f6),'required':!![],'description':a116_0x4ca9dc(0x1ff)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1ebf6d){validateRegroupInput(_0x1ebf6d),requireExplicitYes(_0x1ebf6d);},async 'dryRun'(_0x4acf0e){const _0x24f03b=a116_0x4ca9dc;validateRegroupInput(_0x4acf0e);const _0x3ea82e=await buildRegroupPlan(_0x4acf0e,!![]);return menuDryRunResult(_0x3ea82e[_0x24f03b(0x20e)],{'method':_0x24f03b(0x229),'url':_0x24f03b(0x20f),'body':_0x3ea82e[_0x24f03b(0x22d)],'description':'Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20'+JSON['stringify'](_0x3ea82e[_0x24f03b(0x1fa)])+'\x20and\x20regroup\x20menu\x20ids\x20'+_0x3ea82e[_0x24f03b(0x1e3)][_0x24f03b(0x239)](',\x20')+_0x24f03b(0x207)});},async 'execute'(_0x183ad6){const _0x35a5ce=a116_0x4ca9dc;validateRegroupInput(_0x183ad6),requireExplicitYes(_0x183ad6);const _0x2ea2f9=await buildRegroupPlan(_0x183ad6,![]);await recheckMutationSnapshot(_0x183ad6,_0x2ea2f9[_0x35a5ce(0x20e)],_0x35a5ce(0x233));const _0x45b431=buildMenuLookupCommand(_0x183ad6['appCode']);let _0x274416,_0x12ad4b;try{_0x274416=await startMenuRegroup(_0x183ad6['cookie'],_0x2ea2f9['input']),_0x12ad4b=normalizeAsyncTask(_0x274416);}catch(_0x4586c6){const _0x56f21c=await inspectRegroupAfterFailure(_0x183ad6[_0x35a5ce(0x22b)],_0x183ad6[_0x35a5ce(0x20c)],_0x2ea2f9[_0x35a5ce(0x1fa)],_0x2ea2f9[_0x35a5ce(0x1e3)]),_0x2a07d5=typeof _0x274416?.[_0x35a5ce(0x1fb)]===_0x35a5ce(0x1f6)&&_0x274416[_0x35a5ce(0x1fb)]['trim']()?_0x274416['taskId'][_0x35a5ce(0x1eb)]():null,_0x40a83a=_0x2a07d5?{'command':buildAsyncTaskStatusCommand(_0x2a07d5,_0x183ad6[_0x35a5ce(0x22b)])}:null,_0x4cc30c=mapMenuApiError(_0x4586c6,_0x35a5ce(0x221));throw menuFailure(_0x4cc30c,_0x2ea2f9[_0x35a5ce(0x20e)],{'stage':_0x35a5ce(0x206),'failed':{'menuIds':_0x2ea2f9[_0x35a5ce(0x1e3)],'taskId':_0x2a07d5,'groupingApplied':_0x56f21c[_0x35a5ce(0x1fe)]?!![]:_0x35a5ce(0x1f7)},'after':_0x56f21c[_0x35a5ce(0x1fe)]??null,'warnings':[_0x35a5ce(0x21f),..._0x56f21c[_0x35a5ce(0x21a)]?[_0x35a5ce(0x235)+_0x56f21c['readbackError']]:[],..._0x2a07d5?[_0x35a5ce(0x226)]:[]],'verification':{'status':_0x35a5ce(0x1e5),'groupingApplied':_0x56f21c[_0x35a5ce(0x1fe)]?!![]:_0x35a5ce(0x1f7),'taskId':_0x2a07d5,'query':_0x40a83a,'lookupCommand':_0x45b431}});}const _0xe6b2d9=buildAsyncTaskStatusCommand(_0x12ad4b['taskId'],_0x183ad6[_0x35a5ce(0x22b)]);let _0x405bea=null,_0x3b39b2=null,_0x4c855d=null;try{_0x405bea=await fetchMenuSnapshot(_0x183ad6['appCode'],_0x183ad6['cookie']),_0x3b39b2=findAppliedRegroup(_0x405bea,_0x2ea2f9[_0x35a5ce(0x1fa)],_0x2ea2f9[_0x35a5ce(0x1e3)]);}catch(_0x3c588d){_0x4c855d=_0x3c588d instanceof Error?_0x3c588d[_0x35a5ce(0x1f8)]:String(_0x3c588d);}const _0x4467e1=mutationResult({..._0x2ea2f9['plan'],'after':_0x3b39b2??null,'dryRun':![],'succeeded':[{'groupId':_0x3b39b2?.['group']['id']??null,'menuIds':_0x2ea2f9[_0x35a5ce(0x1e3)],'taskId':_0x12ad4b[_0x35a5ce(0x1fb)],'status':_0x12ad4b['status'],'groupingApplied':_0x3b39b2?!![]:'unconfirmed'}],'verification':{'checkedBy':_0x35a5ce(0x1f5),'snapshotHash':_0x405bea?.['hash']??null,'groupId':_0x3b39b2?.[_0x35a5ce(0x1f1)]['id']??null,'groupingApplied':_0x3b39b2?!![]:_0x35a5ce(0x1f7),'readbackError':_0x4c855d,'lookupCommand':_0x45b431},'warnings':[..._0x2ea2f9[_0x35a5ce(0x20e)][_0x35a5ce(0x1e8)],...!_0x3b39b2?[unconfirmedRegroupWarning(_0x12ad4b)]:[],..._0x4c855d?['Regroup\x20readback\x20failed:\x20'+_0x4c855d]:[]]}),_0x46c383=_0x12ad4b['status']==='SUCCESS'&&!_0x3b39b2?_0x35a5ce(0x218)+_0x12ad4b[_0x35a5ce(0x1fb)]+_0x35a5ce(0x1ea):'Regroup\x20task\x20accepted.\x20'+asyncTaskMessage(_0x12ad4b);return{'ok':!![],'message':_0x46c383,'data':{..._0x4467e1,'task':_0x12ad4b,'query':_0x12ad4b[_0x35a5ce(0x1e4)]?null:{'command':_0xe6b2d9}}};}};function validateRegroupInput(_0x1b2e8c){const _0x3a74bb=a116_0x4ca9dc;if(!_0x1b2e8c['str'](_0x3a74bb(0x1fa))[_0x3a74bb(0x1eb)]())throw CliErrors[_0x3a74bb(0x202)](_0x3a74bb(0x1fa));parseMenuIds(_0x1b2e8c['str'](_0x3a74bb(0x1df)));}function parseMenuIds(_0x1f5eff){const _0x36f3f4=a116_0x4ca9dc,_0x3086d5=_0x1f5eff[_0x36f3f4(0x208)](',')['map'](_0x671997=>_0x671997[_0x36f3f4(0x1eb)]());if(_0x3086d5[_0x36f3f4(0x1e2)]===0x0||_0x3086d5['some'](_0x504f7e=>!_0x504f7e))throw CliErrors[_0x36f3f4(0x216)](_0x36f3f4(0x223));const _0x407ee0=_0x3086d5[_0x36f3f4(0x20d)](_0x4a380f=>{const _0x4d5f4b=_0x36f3f4;if(!/^\d+$/[_0x4d5f4b(0x21b)](_0x4a380f))throw CliErrors[_0x4d5f4b(0x216)](_0x4d5f4b(0x223));const _0x25c1de=Number(_0x4a380f);if(!Number[_0x4d5f4b(0x204)](_0x25c1de)||_0x25c1de<=0x0)throw CliErrors['validation'](_0x4d5f4b(0x223));return _0x25c1de;});if(new Set(_0x407ee0)[_0x36f3f4(0x1e1)]!==_0x407ee0[_0x36f3f4(0x1e2)])throw CliErrors[_0x36f3f4(0x216)](_0x36f3f4(0x209));if(_0x407ee0[_0x36f3f4(0x1e2)]>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x36f3f4(0x216)](_0x36f3f4(0x20a)+MAX_REGROUP_MENU_COUNT+_0x36f3f4(0x1e7));return _0x407ee0;}function buildMenuLookupCommand(_0x1d7009){const _0x211928=a116_0x4ca9dc,_0x996cc8='\x27'+_0x1d7009[_0x211928(0x213)](/'/g,'\x27\x5c\x27\x27')+'\x27';return CLI_BIN_NAME+_0x211928(0x1f0)+_0x996cc8+'\x20--format\x20compress';}function a116_0x3d6d(){const _0x2346b7=['cookie','map','plan','/smartapi/menu/regroup','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','\x20already\x20belongs\x20to\x20menu\x20id(s)\x20','replace','menu','Menus\x20','validation','22450dmWXFm','Regroup\x20task\x20','Root\x20folder\x20label\x20','readbackError','test','menu_regroup_target_label_missing','menu_regroup_label_conflict','stringify','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','menus','start\x20menu\x20regroup','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','FAILED','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','80bwzyuj','7lRTJST','POST','submit-regroup-task','appCode','status','input','640576JvJYuY','hash','3876016RUwoAD','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','start\x20regroup','regroup-start','Regroup\x20readback\x20also\x20failed:\x20','menu_regroup_already_applied','type','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.','join','2220dvFagr','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','byId','parentId','filter','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','childrenIds','menu-ids','The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','size','length','menuIds','isTerminal','failed','4401NLFlTh','\x20menus\x20per\x20regroup\x20request.','warnings','<new-group-id>','\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.','trim','sort','some','folder','1100058txCWCP','\x20menu\x20list\x20--appcode\x20','group','SUCCESS','11056cOPNDY','menu_regroup_target_not_leaf','menu\x20list','string','unconfirmed','message','childrenCount','label','taskId','Menu\x20','484220MYUhEe','applied','Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder','toLowerCase','str','flagMissing','<platform-generated>','isSafeInteger','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','regroup-submit',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','split','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','--menu-ids\x20supports\x20at\x20most\x20','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.'];a116_0x3d6d=function(){return _0x2346b7;};return a116_0x3d6d();}function unconfirmedRegroupWarning(_0xbd586e){const _0x37c16c=a116_0x4ca9dc;if(_0xbd586e[_0x37c16c(0x22c)]===_0x37c16c(0x1f2))return _0x37c16c(0x1e0);if(_0xbd586e['status']===_0x37c16c(0x224))return _0x37c16c(0x225);if(_0xbd586e['knownStatus'])return _0x37c16c(0x1dc);return _0x37c16c(0x238);}async function buildRegroupPlan(_0x4a6352,_0x29234e){const _0xfe1d97=a116_0x4ca9dc,_0x38a19f=_0x4a6352['str'](_0xfe1d97(0x1fa))[_0xfe1d97(0x1eb)](),_0x9bd506=parseMenuIds(_0x4a6352[_0xfe1d97(0x201)]('menu-ids')),_0xdfcd96=await fetchMutationSnapshot(_0x4a6352,'plan\x20regroup'),_0x423cb3=_0x9bd506[_0xfe1d97(0x20d)](_0x2d5f09=>requireMenu(_0xdfcd96,_0x2d5f09));for(const _0x55aed5 of _0x423cb3){if(_0x55aed5[_0xfe1d97(0x237)][_0xfe1d97(0x1eb)]()['toLowerCase']()==='folder'||_0x55aed5[_0xfe1d97(0x1f9)]>0x0)throw menuError(_0xfe1d97(0x1f4),_0xfe1d97(0x1fc)+_0x55aed5['id']+_0xfe1d97(0x222),_0xfe1d97(0x20b));if(!_0x55aed5['label'][_0xfe1d97(0x1eb)]())throw menuError(_0xfe1d97(0x21c),_0xfe1d97(0x1fc)+_0x55aed5['id']+_0xfe1d97(0x205),_0xfe1d97(0x1d8));}const _0xf3f83a=findAppliedRegroup(_0xdfcd96,_0x38a19f,_0x9bd506);if(_0xf3f83a)throw menuError(_0xfe1d97(0x236),_0xfe1d97(0x215)+_0x9bd506[_0xfe1d97(0x239)](',\x20')+_0xfe1d97(0x231)+_0xf3f83a['group']['id']+'\x20('+JSON[_0xfe1d97(0x21e)](_0x38a19f)+').',_0xfe1d97(0x1dd));const _0x2ab449=_0xdfcd96[_0xfe1d97(0x220)][_0xfe1d97(0x1db)](_0x231f7d=>_0x231f7d[_0xfe1d97(0x1da)]==null&&_0x231f7d[_0xfe1d97(0x237)][_0xfe1d97(0x1eb)]()[_0xfe1d97(0x200)]()===_0xfe1d97(0x1ee)&&_0x231f7d[_0xfe1d97(0x1fa)]===_0x38a19f);if(_0x2ab449[_0xfe1d97(0x1e2)]>0x0)throw menuError(_0xfe1d97(0x21d),_0xfe1d97(0x219)+JSON[_0xfe1d97(0x21e)](_0x38a19f)+_0xfe1d97(0x212)+_0x2ab449[_0xfe1d97(0x20d)](_0x4aac9c=>_0x4aac9c['id'])[_0xfe1d97(0x239)](',\x20')+'.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.');const _0x1e894e={'appCode':_0x4a6352[_0xfe1d97(0x22b)],'menuGroups':[{'label':_0x38a19f,'type':_0xfe1d97(0x1ee),'children':_0x423cb3[_0xfe1d97(0x20d)](_0xc78420=>({'id':_0xc78420['id'],'label':_0xc78420['label']}))}]},_0x42224f=mutationResult({'operation':_0xfe1d97(0x234),'selector':{'label':_0x38a19f,'menuIds':_0x9bd506},'before':{'menus':_0x423cb3},'after':{'group':{'id':null,'parentId':null,'label':_0x38a19f,'path':_0xfe1d97(0x203),'type':_0xfe1d97(0x1ee),'childrenIds':_0x9bd506},'children':_0x423cb3[_0xfe1d97(0x20d)](_0x287492=>({'id':_0x287492['id'],'label':_0x287492[_0xfe1d97(0x1fa)],'beforeParentId':_0x287492[_0xfe1d97(0x1da)],'afterParentId':_0xfe1d97(0x1e9)}))},'dryRun':_0x29234e,'backend':[...BACKEND],'plannedActions':[{'stage':_0xfe1d97(0x22a),'method':'POST','path':_0xfe1d97(0x20f),'body':_0x1e894e}],'snapshotHash':_0xdfcd96[_0xfe1d97(0x22f)],'warnings':[_0xfe1d97(0x211),_0xfe1d97(0x210)]});return{'label':_0x38a19f,'menuIds':_0x9bd506,'input':_0x1e894e,'plan':_0x42224f};}function findAppliedRegroup(_0x6c1ecf,_0x3bed95,_0x177a3a){const _0x51e6ba=a116_0x4ca9dc,_0x58920f=_0x177a3a[_0x51e6ba(0x20d)](_0x532ed1=>_0x6c1ecf[_0x51e6ba(0x1d9)]['get'](_0x532ed1))[_0x51e6ba(0x1db)](_0xd4f05e=>Boolean(_0xd4f05e));if(_0x58920f[_0x51e6ba(0x1e2)]!==_0x177a3a['length'])return null;const _0x42307b=_0x58920f[0x0]?.['parentId'];if(_0x42307b==null||_0x58920f[_0x51e6ba(0x1ed)](_0x5a56b6=>_0x5a56b6[_0x51e6ba(0x1da)]!==_0x42307b))return null;const _0x21ff30=_0x6c1ecf[_0x51e6ba(0x1d9)]['get'](_0x42307b);if(!_0x21ff30||_0x21ff30[_0x51e6ba(0x1da)]!=null||_0x21ff30[_0x51e6ba(0x237)][_0x51e6ba(0x1eb)]()[_0x51e6ba(0x200)]()!=='folder'||_0x21ff30[_0x51e6ba(0x1fa)]!==_0x3bed95)return null;const _0x53454e=[..._0x177a3a][_0x51e6ba(0x1ec)]((_0x42abea,_0x249ba1)=>_0x42abea-_0x249ba1),_0x5e027c=[..._0x21ff30[_0x51e6ba(0x1de)]]['sort']((_0x12f440,_0x3c16bf)=>_0x12f440-_0x3c16bf);if(JSON[_0x51e6ba(0x21e)](_0x5e027c)!==JSON[_0x51e6ba(0x21e)](_0x53454e))return null;return{'group':_0x21ff30,'children':_0x58920f};}async function inspectRegroupAfterFailure(_0x179eae,_0x25f491,_0x5d8887,_0x380047){try{const _0x2c9ec1=await fetchMenuSnapshot(_0x179eae,_0x25f491);return{'applied':findAppliedRegroup(_0x2c9ec1,_0x5d8887,_0x380047),'readbackError':null};}catch(_0x1eef2f){return{'applied':null,'readbackError':_0x1eef2f instanceof Error?_0x1eef2f['message']:String(_0x1eef2f)};}}
@@ -1 +1 @@
1
- const a117_0x3d24c3=a117_0x3a42;(function(_0x49fa96,_0x2be084){const _0x30797c=a117_0x3a42,_0x25972c=_0x49fa96();while(!![]){try{const _0x28a646=parseInt(_0x30797c(0x126))/0x1+-parseInt(_0x30797c(0xde))/0x2*(parseInt(_0x30797c(0x101))/0x3)+parseInt(_0x30797c(0x119))/0x4+-parseInt(_0x30797c(0xda))/0x5*(-parseInt(_0x30797c(0xee))/0x6)+-parseInt(_0x30797c(0x121))/0x7*(parseInt(_0x30797c(0xec))/0x8)+-parseInt(_0x30797c(0x111))/0x9+-parseInt(_0x30797c(0xf3))/0xa;if(_0x28a646===_0x2be084)break;else _0x25972c['push'](_0x25972c['shift']());}catch(_0x1e9095){_0x25972c['push'](_0x25972c['shift']());}}}(a117_0x14a3,0x8bf3f));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,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':a117_0x3d24c3(0x117),'path':a117_0x3d24c3(0xf9)}];export const menuRename={'service':a117_0x3d24c3(0x127),'command':a117_0x3d24c3(0xdb),'description':a117_0x3d24c3(0x10d),'risk':a117_0x3d24c3(0x116),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a117_0x3d24c3(0x115),'type':a117_0x3d24c3(0x114),'required':!![],'description':a117_0x3d24c3(0xd6)},{'name':a117_0x3d24c3(0x125),'type':'string','required':!![],'description':a117_0x3d24c3(0x112)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2bcd31){validateInput(_0x2bcd31);},async 'dryRun'(_0x142730){const _0x2a1f30=a117_0x3d24c3;validateInput(_0x142730);const _0x592b6e=await buildPlan(_0x142730,!![]);return menuDryRunResult(_0x592b6e[_0x2a1f30(0x104)],{'method':_0x2a1f30(0x117),'url':'/smartapi/menu/update','body':_0x592b6e[_0x2a1f30(0xe4)],'description':_0x2a1f30(0xfc)+_0x592b6e['body']['id']+'.'});},async 'execute'(_0xc266f){const _0x33df01=a117_0x3d24c3;validateInput(_0xc266f);const _0x34450e=await buildPlan(_0xc266f,![]),{plan:_0x5e3ca3,body:_0x1b0844,before:_0x52e06f,noChanges:_0x18f614}=_0x34450e,_0x231835=_0x1b0844['id'];if(_0x18f614)return renameSuccess(_0x5e3ca3,_0x34450e[_0x33df01(0x113)],_0x52e06f,!![],![]);await recheckMutationSnapshot(_0xc266f,_0x5e3ca3,_0x33df01(0xe2),_0x231835);try{await updateMenuEntity(_0xc266f[_0x33df01(0xd8)],_0xc266f[_0x33df01(0xf7)],{'id':_0x231835,'label':_0x1b0844[_0x33df01(0x115)]});}catch(_0x2cc413){const _0x15336b=mapMenuApiError(_0x2cc413,_0x33df01(0xdb),_0x231835);if(isMenuResponseLoss(_0x2cc413)&&_0x15336b[_0x33df01(0x105)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0xc266f,_0x34450e);throw menuFailure(_0x15336b,_0x5e3ca3,{'stage':_0x33df01(0xea),'failed':{'id':_0x231835},'warnings':[_0x33df01(0x10f)],'verification':{'status':'failed','targetId':_0x231835,'lookupCommand':buildLookupCommand(_0xc266f[_0x33df01(0xd8)])}});}let _0x2776bc,_0x7bb8ac;try{_0x2776bc=await fetchMenuSnapshot(_0xc266f[_0x33df01(0xd8)],_0xc266f[_0x33df01(0xf7)]),_0x7bb8ac=requireMenu(_0x2776bc,_0x231835),verifyRenamedFact(_0x52e06f,_0x7bb8ac,_0x1b0844[_0x33df01(0x115)]);}catch(_0x288f8b){const _0x9525b2=describeMenuErrorCause(_0x288f8b,_0x33df01(0xe7),_0x231835),_0x191ede=asVerificationError(_0x288f8b,_0x33df01(0x107)+_0x231835+_0x33df01(0xe1));throw menuFailure(_0x191ede,_0x5e3ca3,{'stage':'verification','succeeded':[{'id':_0x231835,'updateRequested':!![]}],'failed':{'id':_0x231835,'requestedStateConfirmed':![],..._0x9525b2},'warnings':[_0x33df01(0xdc)],'verification':{'status':_0x33df01(0x10a),'targetId':_0x231835,'lookupCommand':buildLookupCommand(_0xc266f[_0x33df01(0xd8)])}});}return renameSuccess(_0x5e3ca3,_0x2776bc,_0x7bb8ac,![],![]);}};function validateInput(_0x34e006){const _0x5cb4d9=a117_0x3d24c3;validateExactId(_0x34e006);if(!_0x34e006[_0x5cb4d9(0x118)]('label')['trim']())throw CliErrors['validation'](_0x5cb4d9(0xf8));if(!_0x34e006[_0x5cb4d9(0x118)](_0x5cb4d9(0x125))[_0x5cb4d9(0xe6)]())throw CliErrors[_0x5cb4d9(0x11c)]('expect-label');}async function buildPlan(_0x5a281b,_0x51a42c){const _0x16c771=a117_0x3d24c3,_0x22b79b=validateExactId(_0x5a281b),_0x21a3ea=_0x5a281b['str'](_0x16c771(0x115))['trim'](),_0x4592a2=_0x5a281b[_0x16c771(0x118)](_0x16c771(0x125)),_0x23409b=await fetchMutationSnapshot(_0x5a281b,_0x16c771(0xe2),_0x22b79b),_0x1e61db=requireMenu(_0x23409b,_0x22b79b);if(_0x1e61db[_0x16c771(0x115)]!==_0x4592a2)throw menuError(_0x16c771(0xfb),_0x16c771(0xdf)+_0x22b79b+_0x16c771(0x124)+JSON[_0x16c771(0x10c)](_0x4592a2)+_0x16c771(0xd7)+JSON[_0x16c771(0x10c)](_0x1e61db[_0x16c771(0x115)])+'.',_0x16c771(0x123));const _0xad0435={'id':_0x22b79b,'appCode':_0x5a281b['appCode'],'label':_0x21a3ea},_0x4741bb={..._0x1e61db,'label':_0x21a3ea},_0x1191a7=_0x1e61db[_0x16c771(0x115)]===_0x21a3ea,_0x2568cd=_0x1191a7?[]:[{'stage':'rename-menu','method':_0x16c771(0x117),'path':_0x16c771(0xf9),'body':_0xad0435}];return{'snapshot':_0x23409b,'before':_0x1e61db,'body':_0xad0435,'noChanges':_0x1191a7,'plan':mutationResult({'operation':_0x16c771(0xdb),'selector':{'id':_0x22b79b},'before':_0x1e61db,'after':_0x4741bb,'dryRun':_0x51a42c,'backend':[...BACKEND],'plannedActions':_0x2568cd,'snapshotHash':_0x23409b[_0x16c771(0xf1)],'warnings':_0x1191a7?[_0x16c771(0x10e)]:[]})};}function verifyRenamedFact(_0x33e868,_0x2cc656,_0x3aca31){const _0x1495e0=a117_0x3d24c3,_0x5c14cd=[['id',_0x2cc656['id'],_0x33e868['id']],[_0x1495e0(0xeb),_0x2cc656['parentId'],_0x33e868[_0x1495e0(0xeb)]],[_0x1495e0(0x10b),_0x2cc656['depth'],_0x33e868[_0x1495e0(0x10b)]],[_0x1495e0(0xe3),_0x2cc656[_0x1495e0(0xe3)],_0x33e868[_0x1495e0(0xe3)]],['url',_0x2cc656[_0x1495e0(0xed)],_0x33e868['url']],[_0x1495e0(0xfa),_0x2cc656[_0x1495e0(0xfa)],_0x33e868['type']],[_0x1495e0(0x103),_0x2cc656[_0x1495e0(0x103)],_0x33e868[_0x1495e0(0x103)]],[_0x1495e0(0xdd),_0x2cc656[_0x1495e0(0xdd)],_0x33e868[_0x1495e0(0xdd)]],[_0x1495e0(0xf6),_0x2cc656[_0x1495e0(0xf6)],_0x33e868[_0x1495e0(0xf6)]],['resourcesValid',_0x2cc656[_0x1495e0(0x122)],_0x33e868[_0x1495e0(0x122)]],['childrenIds',_0x2cc656[_0x1495e0(0x109)],_0x33e868[_0x1495e0(0x109)]],['childrenCount',_0x2cc656[_0x1495e0(0x11f)],_0x33e868[_0x1495e0(0x11f)]],[_0x1495e0(0x120),_0x2cc656[_0x1495e0(0x120)],_0x33e868[_0x1495e0(0x120)]],[_0x1495e0(0xef),_0x2cc656[_0x1495e0(0xef)],_0x33e868[_0x1495e0(0xef)]],['modelType',_0x2cc656[_0x1495e0(0xfe)],_0x33e868[_0x1495e0(0xfe)]],[_0x1495e0(0x11e),_0x2cc656[_0x1495e0(0x11e)],_0x33e868[_0x1495e0(0x11e)]],[_0x1495e0(0x11b),_0x2cc656[_0x1495e0(0x11b)],_0x33e868['datasetCode']]];for(const [_0x5a8199,_0x51a7ad,_0x281055]of _0x5c14cd){assertVerified(sameValue(_0x51a7ad,_0x281055),'Menu\x20'+_0x33e868['id']+'\x20'+_0x5a8199+_0x1495e0(0x11d));}assertVerified(_0x2cc656[_0x1495e0(0x115)]===_0x3aca31,_0x1495e0(0xdf)+_0x33e868['id']+_0x1495e0(0x106));}function a117_0x14a3(){const _0x21d43a=['\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','rename\x20menu','path','body','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','trim','verify\x20menu\x20rename','after','\x27\x5c\x27\x27','update','parentId','176SIibtF','url','6ZXXTvG','pageType','readbackFailed','hash','menu\x20list','6570930RhuMhr','\x20could\x20not\x20be\x20verified\x20safely','rabetbase\x20menu\x20list\x20--appcode\x20','resources','cookie','--label\x20cannot\x20be\x20empty.','/smartapi/menu/update','type','menu_state_drift','Would\x20rename\x20menu\x20','\x20already\x20has\x20the\x20requested\x20label.','modelType','requestedLabelObserved','isArray','458043GyfsDs','Run\x20','visible','plan','code','\x20label\x20update\x20did\x20not\x20take\x20effect.','Rename\x20request\x20for\x20menu\x20','Response\x20was\x20lost\x20and\x20menu\x20','childrenIds','failed','depth','stringify','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','update-recovery','2344464YTTlmJ','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','snapshot','string','label','write','POST','str','4049624DfpQIh','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','datasetCode','flagMissing','\x20changed\x20during\x20the\x20label-only\x20rename.','datasetId','childrenCount','pageId','135170ECiCww','resourcesValid','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','\x20label\x20changed:\x20expected\x20','expect-label','812771ijfTKc','menu','\x20--format\x20compress','New\x20menu\x20label',',\x20current\x20','appCode','byId','1979205MvCBIJ','rename','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','sort','4kEBKxh','Menu\x20','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.'];a117_0x14a3=function(){return _0x21d43a;};return a117_0x14a3();}function sameValue(_0x419164,_0x14cb0b){const _0x40ac9d=a117_0x3d24c3;if(Array['isArray'](_0x419164)||Array[_0x40ac9d(0x100)](_0x14cb0b))return JSON[_0x40ac9d(0x10c)](_0x419164)===JSON['stringify'](_0x14cb0b);return _0x419164===_0x14cb0b;}function a117_0x3a42(_0x1ae05c,_0x567f19){_0x1ae05c=_0x1ae05c-0xd6;const _0x14a367=a117_0x14a3();let _0x3a422e=_0x14a367[_0x1ae05c];return _0x3a422e;}function renameSuccess(_0x4abdee,_0x35ccf2,_0x1d85c0,_0x397176,_0x1eeb9f){const _0x352125=a117_0x3d24c3,_0x126321=_0x1d85c0['id'],_0x3da907=mutationResult({..._0x4abdee,'after':_0x1d85c0,'dryRun':![],'succeeded':[{'id':_0x126321,'updated':!_0x397176,'skipped':_0x397176,'recovered':_0x1eeb9f}],'verification':{'checkedBy':_0x352125(0xf2),'snapshotHash':_0x35ccf2[_0x352125(0xf1)],'targetId':_0x126321,'matchesRequestedState':!![],'recovered':_0x1eeb9f}});return{'ok':!![],'message':_0x1eeb9f?'Recovered\x20confirmed\x20rename\x20for\x20menu\x20'+_0x126321+'.':_0x397176?'Menu\x20'+_0x126321+_0x352125(0xfd):'Renamed\x20menu\x20'+_0x126321+'.','data':{..._0x3da907,'recovered':_0x1eeb9f}};}async function recoverAfterResponseLoss(_0x3ede16,_0x52475f){const _0x5abdf5=a117_0x3d24c3,{plan:_0x2e0518,before:_0x18b2fd,body:_0x578115}=_0x52475f;let _0x2eb6f5;try{_0x2eb6f5=await fetchMenuSnapshot(_0x3ede16[_0x5abdf5(0xd8)],_0x3ede16[_0x5abdf5(0xf7)]);}catch{throw recoveryRequired(_0x2e0518,_0x3ede16[_0x5abdf5(0xd8)],{'id':_0x578115['id'],'readbackFailed':!![]});}const _0x2f320a=_0x2eb6f5[_0x5abdf5(0xd9)]['get'](_0x578115['id']);if(!_0x2f320a||_0x2f320a[_0x5abdf5(0x115)]!==_0x578115[_0x5abdf5(0x115)])throw recoveryRequired(_0x2e0518,_0x3ede16['appCode'],{'id':_0x578115['id'],'requestedLabelObserved':![],'after':_0x2f320a??null});try{verifyRenamedFact(_0x18b2fd,_0x2f320a,_0x578115[_0x5abdf5(0x115)]);}catch(_0x4512d1){const _0x10dff2=asVerificationError(_0x4512d1,_0x5abdf5(0x108)+_0x578115['id']+_0x5abdf5(0xf4));throw menuFailure(_0x10dff2,_0x2e0518,{'stage':_0x5abdf5(0x110),'succeeded':[{'id':_0x578115['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x578115['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x2f320a,'warnings':[_0x5abdf5(0xe5)],'verification':{'status':_0x5abdf5(0x10a),'targetId':_0x578115['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x3ede16[_0x5abdf5(0xd8)])}});}return renameSuccess(_0x2e0518,_0x2eb6f5,_0x2f320a,![],!![]);}function recoveryRequired(_0x4f9e8b,_0x274cf2,_0x122e01){const _0x31f77d=a117_0x3d24c3,_0xb2392e=menuError('menu_update_recovery_required',_0x31f77d(0x11a),_0x31f77d(0x102)+buildLookupCommand(_0x274cf2)+_0x31f77d(0xe0));return menuFailure(_0xb2392e,_0x4f9e8b,{'stage':_0x31f77d(0x110),'failed':{'id':_0x122e01['id'],..._0x122e01['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x122e01[_0x31f77d(0xff)]},..._0x122e01[_0x31f77d(0xf0)]?{'readbackFailed':!![]}:{}},'after':_0x122e01[_0x31f77d(0xe8)],'warnings':['The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x31f77d(0x10a),'targetId':_0x122e01['id'],..._0x122e01[_0x31f77d(0xff)]===undefined?{}:{'requestedLabelObserved':_0x122e01[_0x31f77d(0xff)]},..._0x122e01[_0x31f77d(0xf0)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x274cf2)}});}function buildLookupCommand(_0x1b199c){const _0x1f4755=a117_0x3d24c3,_0x4e2ec3='\x27'+_0x1b199c['replace'](/'/g,_0x1f4755(0xe9))+'\x27';return _0x1f4755(0xf5)+_0x4e2ec3+_0x1f4755(0x128);}
1
+ function a117_0x42f6(_0x497201,_0x58b6ce){_0x497201=_0x497201-0x1ca;const _0x46e02b=a117_0x46e0();let _0x42f67f=_0x46e02b[_0x497201];return _0x42f67f;}const a117_0x47e04c=a117_0x42f6;(function(_0x3aebfd,_0x4d7a08){const _0x4c93d8=a117_0x42f6,_0x535a63=_0x3aebfd();while(!![]){try{const _0x12ec42=parseInt(_0x4c93d8(0x1d8))/0x1*(parseInt(_0x4c93d8(0x21c))/0x2)+parseInt(_0x4c93d8(0x1eb))/0x3*(parseInt(_0x4c93d8(0x203))/0x4)+parseInt(_0x4c93d8(0x20e))/0x5*(parseInt(_0x4c93d8(0x1de))/0x6)+-parseInt(_0x4c93d8(0x217))/0x7*(parseInt(_0x4c93d8(0x1d6))/0x8)+parseInt(_0x4c93d8(0x1f5))/0x9+parseInt(_0x4c93d8(0x210))/0xa*(parseInt(_0x4c93d8(0x1d4))/0xb)+-parseInt(_0x4c93d8(0x1ca))/0xc;if(_0x12ec42===_0x4d7a08)break;else _0x535a63['push'](_0x535a63['shift']());}catch(_0x15f081){_0x535a63['push'](_0x535a63['shift']());}}}(a117_0x46e0,0x463b7));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,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':a117_0x47e04c(0x204),'path':a117_0x47e04c(0x212)}];export const menuRename={'service':'menu','command':'rename','description':a117_0x47e04c(0x211),'risk':a117_0x47e04c(0x218),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a117_0x47e04c(0x1ea),'type':a117_0x47e04c(0x1f3),'required':!![],'description':a117_0x47e04c(0x1d1)},{'name':'expect-label','type':'string','required':!![],'description':'Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x430541){validateInput(_0x430541);},async 'dryRun'(_0xb824ad){const _0x5e7877=a117_0x47e04c;validateInput(_0xb824ad);const _0x10e18b=await buildPlan(_0xb824ad,!![]);return menuDryRunResult(_0x10e18b[_0x5e7877(0x21e)],{'method':_0x5e7877(0x204),'url':'/smartapi/menu/update','body':_0x10e18b[_0x5e7877(0x215)],'description':_0x5e7877(0x1d2)+_0x10e18b[_0x5e7877(0x215)]['id']+'.'});},async 'execute'(_0x2acc43){const _0x5b33ae=a117_0x47e04c;validateInput(_0x2acc43);const _0x3a5859=await buildPlan(_0x2acc43,![]),{plan:_0x1ba1a8,body:_0x3c09fc,before:_0x4000c8,noChanges:_0x36df5a}=_0x3a5859,_0xaabef1=_0x3c09fc['id'];if(_0x36df5a)return renameSuccess(_0x1ba1a8,_0x3a5859['snapshot'],_0x4000c8,!![],![]);await recheckMutationSnapshot(_0x2acc43,_0x1ba1a8,_0x5b33ae(0x1ff),_0xaabef1);try{await updateMenuEntity(_0x2acc43[_0x5b33ae(0x1f0)],_0x2acc43[_0x5b33ae(0x1cd)],{'id':_0xaabef1,'label':_0x3c09fc[_0x5b33ae(0x1ea)]});}catch(_0x176138){const _0x5f349a=mapMenuApiError(_0x176138,_0x5b33ae(0x1e3),_0xaabef1);if(isMenuResponseLoss(_0x176138)&&_0x5f349a[_0x5b33ae(0x1f1)]!==_0x5b33ae(0x1e6))return recoverAfterResponseLoss(_0x2acc43,_0x3a5859);throw menuFailure(_0x5f349a,_0x1ba1a8,{'stage':'update','failed':{'id':_0xaabef1},'warnings':[_0x5b33ae(0x206)],'verification':{'status':_0x5b33ae(0x1fc),'targetId':_0xaabef1,'lookupCommand':buildLookupCommand(_0x2acc43['appCode'])}});}let _0x4bc86b,_0x171717;try{_0x4bc86b=await fetchMenuSnapshot(_0x2acc43[_0x5b33ae(0x1f0)],_0x2acc43[_0x5b33ae(0x1cd)]),_0x171717=requireMenu(_0x4bc86b,_0xaabef1),verifyRenamedFact(_0x4000c8,_0x171717,_0x3c09fc[_0x5b33ae(0x1ea)]);}catch(_0x2e5e8c){const _0xc54d9d=describeMenuErrorCause(_0x2e5e8c,_0x5b33ae(0x20f),_0xaabef1),_0x431209=asVerificationError(_0x2e5e8c,_0x5b33ae(0x1ef)+_0xaabef1+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x431209,_0x1ba1a8,{'stage':_0x5b33ae(0x1d9),'succeeded':[{'id':_0xaabef1,'updateRequested':!![]}],'failed':{'id':_0xaabef1,'requestedStateConfirmed':![],..._0xc54d9d},'warnings':[_0x5b33ae(0x1cb)],'verification':{'status':_0x5b33ae(0x1fc),'targetId':_0xaabef1,'lookupCommand':buildLookupCommand(_0x2acc43[_0x5b33ae(0x1f0)])}});}return renameSuccess(_0x1ba1a8,_0x4bc86b,_0x171717,![],![]);}};function validateInput(_0x53101c){const _0x3bfab0=a117_0x47e04c;validateExactId(_0x53101c);if(!_0x53101c['str'](_0x3bfab0(0x1ea))['trim']())throw CliErrors[_0x3bfab0(0x1e9)](_0x3bfab0(0x1f8));if(!_0x53101c[_0x3bfab0(0x1e4)](_0x3bfab0(0x1dc))[_0x3bfab0(0x20c)]())throw CliErrors[_0x3bfab0(0x20b)](_0x3bfab0(0x1dc));}async function buildPlan(_0x5f7ce1,_0x513f67){const _0x199695=a117_0x47e04c,_0x334417=validateExactId(_0x5f7ce1),_0x4af833=_0x5f7ce1[_0x199695(0x1e4)](_0x199695(0x1ea))[_0x199695(0x20c)](),_0x2a116d=_0x5f7ce1[_0x199695(0x1e4)](_0x199695(0x1dc)),_0x59a898=await fetchMutationSnapshot(_0x5f7ce1,_0x199695(0x1ff),_0x334417),_0x473eed=requireMenu(_0x59a898,_0x334417);if(_0x473eed[_0x199695(0x1ea)]!==_0x2a116d)throw menuError(_0x199695(0x207),'Menu\x20'+_0x334417+_0x199695(0x1ee)+JSON[_0x199695(0x21f)](_0x2a116d)+_0x199695(0x205)+JSON[_0x199695(0x21f)](_0x473eed[_0x199695(0x1ea)])+'.',_0x199695(0x219));const _0x24103b={'id':_0x334417,'appCode':_0x5f7ce1['appCode'],'label':_0x4af833},_0x3433d2={..._0x473eed,'label':_0x4af833},_0x3ca197=_0x473eed[_0x199695(0x1ea)]===_0x4af833,_0x4e5abf=_0x3ca197?[]:[{'stage':'rename-menu','method':'POST','path':_0x199695(0x212),'body':_0x24103b}];return{'snapshot':_0x59a898,'before':_0x473eed,'body':_0x24103b,'noChanges':_0x3ca197,'plan':mutationResult({'operation':'rename','selector':{'id':_0x334417},'before':_0x473eed,'after':_0x3433d2,'dryRun':_0x513f67,'backend':[...BACKEND],'plannedActions':_0x4e5abf,'snapshotHash':_0x59a898[_0x199695(0x21d)],'warnings':_0x3ca197?[_0x199695(0x1fa)]:[]})};}function verifyRenamedFact(_0x412033,_0x11e143,_0x25df83){const _0x380305=a117_0x47e04c,_0x25f271=[['id',_0x11e143['id'],_0x412033['id']],[_0x380305(0x1d7),_0x11e143[_0x380305(0x1d7)],_0x412033[_0x380305(0x1d7)]],[_0x380305(0x1d5),_0x11e143[_0x380305(0x1d5)],_0x412033[_0x380305(0x1d5)]],['path',_0x11e143[_0x380305(0x1e8)],_0x412033[_0x380305(0x1e8)]],['url',_0x11e143[_0x380305(0x21a)],_0x412033[_0x380305(0x21a)]],[_0x380305(0x1f4),_0x11e143[_0x380305(0x1f4)],_0x412033[_0x380305(0x1f4)]],[_0x380305(0x1e0),_0x11e143[_0x380305(0x1e0)],_0x412033[_0x380305(0x1e0)]],['sort',_0x11e143[_0x380305(0x1ed)],_0x412033[_0x380305(0x1ed)]],[_0x380305(0x214),_0x11e143[_0x380305(0x214)],_0x412033[_0x380305(0x214)]],[_0x380305(0x20d),_0x11e143['resourcesValid'],_0x412033['resourcesValid']],[_0x380305(0x1d0),_0x11e143['childrenIds'],_0x412033[_0x380305(0x1d0)]],[_0x380305(0x1d3),_0x11e143[_0x380305(0x1d3)],_0x412033[_0x380305(0x1d3)]],['pageId',_0x11e143[_0x380305(0x1e1)],_0x412033[_0x380305(0x1e1)]],['pageType',_0x11e143[_0x380305(0x213)],_0x412033[_0x380305(0x213)]],['modelType',_0x11e143['modelType'],_0x412033[_0x380305(0x1cf)]],[_0x380305(0x202),_0x11e143[_0x380305(0x202)],_0x412033[_0x380305(0x202)]],['datasetCode',_0x11e143[_0x380305(0x1e2)],_0x412033[_0x380305(0x1e2)]]];for(const [_0x15e28e,_0x22dc09,_0x4d8377]of _0x25f271){assertVerified(sameValue(_0x22dc09,_0x4d8377),_0x380305(0x1ce)+_0x412033['id']+'\x20'+_0x15e28e+_0x380305(0x1fd));}assertVerified(_0x11e143[_0x380305(0x1ea)]===_0x25df83,_0x380305(0x1ce)+_0x412033['id']+_0x380305(0x1f2));}function sameValue(_0x57304e,_0x43f665){const _0x32a47b=a117_0x47e04c;if(Array['isArray'](_0x57304e)||Array['isArray'](_0x43f665))return JSON[_0x32a47b(0x21f)](_0x57304e)===JSON[_0x32a47b(0x21f)](_0x43f665);return _0x57304e===_0x43f665;}function renameSuccess(_0xb0edbe,_0x87d6f6,_0x46d8bd,_0x2cce96,_0x224ff1){const _0x16ca47=a117_0x47e04c,_0x12ee89=_0x46d8bd['id'],_0x1bbd0f=mutationResult({..._0xb0edbe,'after':_0x46d8bd,'dryRun':![],'succeeded':[{'id':_0x12ee89,'updated':!_0x2cce96,'skipped':_0x2cce96,'recovered':_0x224ff1}],'verification':{'checkedBy':_0x16ca47(0x1e7),'snapshotHash':_0x87d6f6['hash'],'targetId':_0x12ee89,'matchesRequestedState':!![],'recovered':_0x224ff1}});return{'ok':!![],'message':_0x224ff1?_0x16ca47(0x209)+_0x12ee89+'.':_0x2cce96?_0x16ca47(0x1ce)+_0x12ee89+_0x16ca47(0x1f9):_0x16ca47(0x216)+_0x12ee89+'.','data':{..._0x1bbd0f,'recovered':_0x224ff1}};}async function recoverAfterResponseLoss(_0x12deca,_0x136132){const _0x1b6deb=a117_0x47e04c,{plan:_0x26e0b9,before:_0x507ec3,body:_0x50f00c}=_0x136132;let _0x560929;try{_0x560929=await fetchMenuSnapshot(_0x12deca[_0x1b6deb(0x1f0)],_0x12deca[_0x1b6deb(0x1cd)]);}catch{throw recoveryRequired(_0x26e0b9,_0x12deca[_0x1b6deb(0x1f0)],{'id':_0x50f00c['id'],'readbackFailed':!![]});}const _0x59517c=_0x560929[_0x1b6deb(0x1e5)][_0x1b6deb(0x1cc)](_0x50f00c['id']);if(!_0x59517c||_0x59517c[_0x1b6deb(0x1ea)]!==_0x50f00c[_0x1b6deb(0x1ea)])throw recoveryRequired(_0x26e0b9,_0x12deca[_0x1b6deb(0x1f0)],{'id':_0x50f00c['id'],'requestedLabelObserved':![],'after':_0x59517c??null});try{verifyRenamedFact(_0x507ec3,_0x59517c,_0x50f00c[_0x1b6deb(0x1ea)]);}catch(_0x338e28){const _0xc42a86=asVerificationError(_0x338e28,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x50f00c['id']+_0x1b6deb(0x200));throw menuFailure(_0xc42a86,_0x26e0b9,{'stage':_0x1b6deb(0x1dd),'succeeded':[{'id':_0x50f00c['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x50f00c['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x59517c,'warnings':['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x1b6deb(0x1fc),'targetId':_0x50f00c['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x12deca['appCode'])}});}return renameSuccess(_0x26e0b9,_0x560929,_0x59517c,![],!![]);}function recoveryRequired(_0x25014d,_0x40223e,_0x10fb5e){const _0x290bef=a117_0x47e04c,_0x478934=menuError(_0x290bef(0x1ec),_0x290bef(0x1fe),_0x290bef(0x1db)+buildLookupCommand(_0x40223e)+_0x290bef(0x208));return menuFailure(_0x478934,_0x25014d,{'stage':_0x290bef(0x1dd),'failed':{'id':_0x10fb5e['id'],..._0x10fb5e[_0x290bef(0x1fb)]===undefined?{}:{'requestedLabelObserved':_0x10fb5e[_0x290bef(0x1fb)]},..._0x10fb5e[_0x290bef(0x20a)]?{'readbackFailed':!![]}:{}},'after':_0x10fb5e[_0x290bef(0x1da)],'warnings':[_0x290bef(0x21b)],'verification':{'status':_0x290bef(0x1fc),'targetId':_0x10fb5e['id'],..._0x10fb5e['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x10fb5e[_0x290bef(0x1fb)]},..._0x10fb5e[_0x290bef(0x20a)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x40223e)}});}function a117_0x46e0(){const _0x4beddc=['byId','menu_permission_denied','menu\x20list','path','validation','label','3OyCCkc','menu_update_recovery_required','sort','\x20label\x20changed:\x20expected\x20','Rename\x20request\x20for\x20menu\x20','appCode','code','\x20label\x20update\x20did\x20not\x20take\x20effect.','string','type','2167146ZGBltN','\x27\x5c\x27\x27','\x20--format\x20compress','--label\x20cannot\x20be\x20empty.','\x20already\x20has\x20the\x20requested\x20label.','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','requestedLabelObserved','failed','\x20changed\x20during\x20the\x20label-only\x20rename.','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','rename\x20menu','\x20could\x20not\x20be\x20verified\x20safely','replace','datasetId','806948NwwohR','POST',',\x20current\x20','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu_state_drift','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','readbackFailed','flagMissing','trim','resourcesValid','5VvWUOX','verify\x20menu\x20rename','10SkeCvj','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','/smartapi/menu/update','pageType','resources','body','Renamed\x20menu\x20','1644524eoFLFm','write','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','url','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','202478lWfrvF','hash','plan','stringify','7883424rkUIOl','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','get','cookie','Menu\x20','modelType','childrenIds','New\x20menu\x20label','Would\x20rename\x20menu\x20','childrenCount','4726469AwdcfB','depth','16iGOfal','parentId','2yvGjsT','verification','after','Run\x20','expect-label','update-recovery','2038794oyzYGw','rabetbase\x20menu\x20list\x20--appcode\x20','visible','pageId','datasetCode','rename','str'];a117_0x46e0=function(){return _0x4beddc;};return a117_0x46e0();}function buildLookupCommand(_0x75538b){const _0x41fc4f=a117_0x47e04c,_0x35c1e6='\x27'+_0x75538b[_0x41fc4f(0x201)](/'/g,_0x41fc4f(0x1f6))+'\x27';return _0x41fc4f(0x1df)+_0x35c1e6+_0x41fc4f(0x1f7);}
@@ -1 +1 @@
1
- (function(_0x24e775,_0x30978a){const _0x18bf99=a118_0x2d36,_0x219216=_0x24e775();while(!![]){try{const _0x6a41a4=-parseInt(_0x18bf99(0x84))/0x1+parseInt(_0x18bf99(0x8c))/0x2+-parseInt(_0x18bf99(0x93))/0x3+-parseInt(_0x18bf99(0x81))/0x4+parseInt(_0x18bf99(0x92))/0x5+parseInt(_0x18bf99(0x8e))/0x6+-parseInt(_0x18bf99(0x8b))/0x7;if(_0x6a41a4===_0x30978a)break;else _0x219216['push'](_0x219216['shift']());}catch(_0x5ee073){_0x219216['push'](_0x219216['shift']());}}}(a118_0x5999,0x8c941));function strWidth(_0x12605e){const _0x48a4e1=a118_0x2d36;let _0x5ec6ca=0x0;for(const _0x1dafd8 of _0x12605e){_0x5ec6ca+=/[\u4e00-\u9fa5]/[_0x48a4e1(0x87)](_0x1dafd8)?0x2:0x1;}return _0x5ec6ca;}function padRight(_0x330917,_0x1fb259){const _0x2ea8fd=a118_0x2d36,_0xbae2ec=strWidth(_0x330917);return _0x330917+'\x20'[_0x2ea8fd(0x95)](Math[_0x2ea8fd(0x7c)](0x0,_0x1fb259-_0xbae2ec));}export function renderCompareTable(_0x542b42,_0x10c3b0={}){const _0x19c501=a118_0x2d36;if(_0x542b42[_0x19c501(0x8a)]===0x0)return'';const _0x171a1f=_0x10c3b0[_0x19c501(0x80)]??!![],_0x6a4666=Math[_0x19c501(0x7c)](0x1e,..._0x542b42['map'](_0x180010=>strWidth(_0x180010[_0x19c501(0x88)]))),_0xf197a5=Math['max'](0x18,..._0x542b42[_0x19c501(0x7f)](_0x50828f=>strWidth(_0x50828f[_0x19c501(0x8d)]))),_0x2f8f6f=0x4,_0x28a87d=[],_0x2b8508='\x20\x20'+padRight('Menu\x20Name',_0x6a4666),_0x2ffb82=padRight('Path',_0xf197a5),_0x3efc6b=padRight('Local',_0x2f8f6f),_0x3dc8a5=_0x171a1f?'\x20\x20'+padRight('Platform',_0x2f8f6f):'';_0x28a87d[_0x19c501(0x82)](_0x2b8508+'\x20\x20'+_0x2ffb82+'\x20\x20'+_0x3efc6b+(_0x171a1f?_0x3dc8a5:'')),_0x28a87d['push']('\x20\x20'+'─'[_0x19c501(0x95)](_0x6a4666)+'\x20\x20'+'─'[_0x19c501(0x95)](_0xf197a5)+'\x20\x20'+'─'[_0x19c501(0x95)](_0x2f8f6f)+(_0x171a1f?'\x20\x20'+'─'[_0x19c501(0x95)](_0x2f8f6f):''));for(const _0x4b1921 of _0x542b42){const _0x81d705=padRight(_0x4b1921[_0x19c501(0x88)],_0x6a4666),_0x56ee93=padRight(_0x4b1921[_0x19c501(0x8d)],_0xf197a5),_0x15f891=_0x4b1921['local']?'✓':'✗',_0x51fee4=padRight(_0x15f891,_0x2f8f6f);let _0x40c19d='\x20\x20'+_0x81d705+'\x20\x20'+_0x56ee93+'\x20\x20'+_0x51fee4;if(_0x171a1f){const _0x48b3e6=_0x4b1921[_0x19c501(0x91)]?'✓':'✗';_0x40c19d+='\x20\x20'+padRight(_0x48b3e6,_0x2f8f6f);}_0x28a87d[_0x19c501(0x82)](_0x40c19d);}return _0x28a87d['join']('\x0a');}function a118_0x5999(){const _0x2d5c90=['5149669ymqmEQ','2274990NcUrQC','path','4314714uZAmsr','\x20\x20No\x20pages\x20to\x20sync.','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','online','1242010QfjtGU','781920GDlKIe','\x20\x20Affected\x20menus:\x20','repeat','(unchanged)','max','\x20\x20\x20\x20JS:\x20\x20','\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','map','showOnline','836876MudBEj','push','\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','323681dtIgyx','join','\x20\x20\x20\x20•\x20','test','label','\x20\x20\x20\x20CSS:\x20','length'];a118_0x5999=function(){return _0x2d5c90;};return a118_0x5999();}export function renderSyncSummary(_0x1e484b,_0x43984f){const _0x1e7bed=a118_0x2d36;if(_0x1e484b['length']===0x0)return _0x43984f?_0x1e7bed(0x83):_0x1e7bed(0x8f);const _0xaaa351=['\x20\x20'+_0x1e484b['length']+_0x1e7bed(0x7e)];for(const _0x2171f5 of _0x1e484b){_0xaaa351[_0x1e7bed(0x82)](_0x1e7bed(0x86)+_0x2171f5[_0x1e7bed(0x88)]+'\x20('+_0x2171f5['path']+')');}return _0xaaa351[_0x1e7bed(0x85)]('\x0a');}function a118_0x2d36(_0x4fa29e,_0x4bba1b){_0x4fa29e=_0x4fa29e-0x7b;const _0x599912=a118_0x5999();let _0x2d36c3=_0x599912[_0x4fa29e];return _0x2d36c3;}export function renderUpdateSummary(_0x559d21,_0x2017bd){const _0x509256=a118_0x2d36;if(_0x559d21[_0x509256(0x8a)]===0x0)return _0x509256(0x90);const _0x12a812=['\x20\x20'+_0x559d21[_0x509256(0x8a)]+'\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:',_0x509256(0x7d)+(_0x2017bd[0x0]??_0x509256(0x7b)),_0x509256(0x89)+(_0x2017bd[0x1]??'(unchanged)'),'',_0x509256(0x94)+_0x559d21['join'](',\x20')];return _0x12a812[_0x509256(0x85)]('\x0a');}
1
+ (function(_0x401a25,_0x85890e){const _0xf31ba6=a118_0x2bb4,_0x360f7c=_0x401a25();while(!![]){try{const _0x1dc8e1=parseInt(_0xf31ba6(0x13d))/0x1*(parseInt(_0xf31ba6(0x136))/0x2)+parseInt(_0xf31ba6(0x143))/0x3+-parseInt(_0xf31ba6(0x13a))/0x4+-parseInt(_0xf31ba6(0x132))/0x5+-parseInt(_0xf31ba6(0x149))/0x6+-parseInt(_0xf31ba6(0x13e))/0x7*(-parseInt(_0xf31ba6(0x13f))/0x8)+parseInt(_0xf31ba6(0x140))/0x9*(parseInt(_0xf31ba6(0x142))/0xa);if(_0x1dc8e1===_0x85890e)break;else _0x360f7c['push'](_0x360f7c['shift']());}catch(_0x2afa5f){_0x360f7c['push'](_0x360f7c['shift']());}}}(a118_0x1d0c,0x953e7));function strWidth(_0x4453a1){let _0x4efc85=0x0;for(const _0x35d97e of _0x4453a1){_0x4efc85+=/[\u4e00-\u9fa5]/['test'](_0x35d97e)?0x2:0x1;}return _0x4efc85;}function padRight(_0x2db6e5,_0x53fdd7){const _0x2e7cb8=a118_0x2bb4,_0x480c33=strWidth(_0x2db6e5);return _0x2db6e5+'\x20'[_0x2e7cb8(0x133)](Math[_0x2e7cb8(0x130)](0x0,_0x53fdd7-_0x480c33));}function a118_0x2bb4(_0x35fd60,_0x1433a3){_0x35fd60=_0x35fd60-0x12e;const _0x1d0cde=a118_0x1d0c();let _0x2bb4d6=_0x1d0cde[_0x35fd60];return _0x2bb4d6;}function a118_0x1d0c(){const _0x469522=['\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','8jCnddS','100772MBopdZ','72ywofTT','11862DwIoQe','\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','2270UKUxJy','2196585MNuoNN','(unchanged)','\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','label','map','path','1936134rzfTVB','\x20\x20\x20\x20•\x20','Menu\x20Name','join','push','\x20\x20No\x20pages\x20to\x20sync.','max','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','5564965posKIu','repeat','\x20\x20Affected\x20menus:\x20','showOnline','226972rtxyKS','Path','length','online','87392nrcrzD','local'];a118_0x1d0c=function(){return _0x469522;};return a118_0x1d0c();}export function renderCompareTable(_0x4ff403,_0x10a9f8={}){const _0x498b91=a118_0x2bb4;if(_0x4ff403[_0x498b91(0x138)]===0x0)return'';const _0x273545=_0x10a9f8[_0x498b91(0x135)]??!![],_0x33a01e=Math['max'](0x1e,..._0x4ff403[_0x498b91(0x147)](_0x31d0a5=>strWidth(_0x31d0a5[_0x498b91(0x146)]))),_0x49319d=Math['max'](0x18,..._0x4ff403[_0x498b91(0x147)](_0x1e987b=>strWidth(_0x1e987b[_0x498b91(0x148)]))),_0x1690b2=0x4,_0x34b4e7=[],_0x8fc860='\x20\x20'+padRight(_0x498b91(0x14b),_0x33a01e),_0x2c790d=padRight(_0x498b91(0x137),_0x49319d),_0x4d122c=padRight('Local',_0x1690b2),_0x319b7e=_0x273545?'\x20\x20'+padRight('Platform',_0x1690b2):'';_0x34b4e7[_0x498b91(0x12e)](_0x8fc860+'\x20\x20'+_0x2c790d+'\x20\x20'+_0x4d122c+(_0x273545?_0x319b7e:'')),_0x34b4e7[_0x498b91(0x12e)]('\x20\x20'+'─'[_0x498b91(0x133)](_0x33a01e)+'\x20\x20'+'─'[_0x498b91(0x133)](_0x49319d)+'\x20\x20'+'─'[_0x498b91(0x133)](_0x1690b2)+(_0x273545?'\x20\x20'+'─'[_0x498b91(0x133)](_0x1690b2):''));for(const _0x1cf179 of _0x4ff403){const _0x101acd=padRight(_0x1cf179[_0x498b91(0x146)],_0x33a01e),_0x309a55=padRight(_0x1cf179['path'],_0x49319d),_0x9735bd=_0x1cf179[_0x498b91(0x13b)]?'✓':'✗',_0x5132e3=padRight(_0x9735bd,_0x1690b2);let _0x280731='\x20\x20'+_0x101acd+'\x20\x20'+_0x309a55+'\x20\x20'+_0x5132e3;if(_0x273545){const _0x43235e=_0x1cf179[_0x498b91(0x139)]?'✓':'✗';_0x280731+='\x20\x20'+padRight(_0x43235e,_0x1690b2);}_0x34b4e7[_0x498b91(0x12e)](_0x280731);}return _0x34b4e7[_0x498b91(0x14c)]('\x0a');}export function renderSyncSummary(_0x5b9d41,_0x45ebce){const _0x234cd4=a118_0x2bb4;if(_0x5b9d41[_0x234cd4(0x138)]===0x0)return _0x45ebce?_0x234cd4(0x145):_0x234cd4(0x12f);const _0x39f143=['\x20\x20'+_0x5b9d41[_0x234cd4(0x138)]+_0x234cd4(0x13c)];for(const _0x1e07d1 of _0x5b9d41){_0x39f143[_0x234cd4(0x12e)](_0x234cd4(0x14a)+_0x1e07d1['label']+'\x20('+_0x1e07d1['path']+')');}return _0x39f143[_0x234cd4(0x14c)]('\x0a');}export function renderUpdateSummary(_0x2eea33,_0x3f6bac){const _0x373c08=a118_0x2bb4;if(_0x2eea33[_0x373c08(0x138)]===0x0)return _0x373c08(0x131);const _0x383eab=['\x20\x20'+_0x2eea33[_0x373c08(0x138)]+_0x373c08(0x141),'\x20\x20\x20\x20JS:\x20\x20'+(_0x3f6bac[0x0]??_0x373c08(0x144)),'\x20\x20\x20\x20CSS:\x20'+(_0x3f6bac[0x1]??_0x373c08(0x144)),'',_0x373c08(0x134)+_0x2eea33[_0x373c08(0x14c)](',\x20')];return _0x383eab[_0x373c08(0x14c)]('\x0a');}
@@ -1 +1 @@
1
- function a119_0x34e6(_0x2f927d,_0x5a59ee){_0x2f927d=_0x2f927d-0x99;const _0xe134a4=a119_0xe134();let _0x34e6fe=_0xe134a4[_0x2f927d];return _0x34e6fe;}const a119_0x2d703b=a119_0x34e6;(function(_0x2d767d,_0x54c656){const _0x5ebb8e=a119_0x34e6,_0x153884=_0x2d767d();while(!![]){try{const _0x4d414c=-parseInt(_0x5ebb8e(0xf3))/0x1*(parseInt(_0x5ebb8e(0x9b))/0x2)+parseInt(_0x5ebb8e(0xa3))/0x3+parseInt(_0x5ebb8e(0xbc))/0x4*(parseInt(_0x5ebb8e(0xe6))/0x5)+-parseInt(_0x5ebb8e(0xbd))/0x6+parseInt(_0x5ebb8e(0xcd))/0x7*(parseInt(_0x5ebb8e(0xdf))/0x8)+parseInt(_0x5ebb8e(0xee))/0x9+-parseInt(_0x5ebb8e(0xd0))/0xa*(-parseInt(_0x5ebb8e(0xe4))/0xb);if(_0x4d414c===_0x54c656)break;else _0x153884['push'](_0x153884['shift']());}catch(_0x7c7a5e){_0x153884['push'](_0x153884['shift']());}}}(a119_0xe134,0xd7a96));import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND=a119_0x2d703b(0xa6),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x564308,_0x3131e6,_0x4c2187=new Date()){const _0xddddaf=a119_0x2d703b;if(!_0x3131e6[_0xddddaf(0xa8)]||!isMenuFact(_0x3131e6[_0xddddaf(0xa8)]))throw menuError(_0xddddaf(0x10c),_0xddddaf(0xf9));const _0x1db24c=_0x3131e6['targets']?.[_0xddddaf(0xfc)]?_0x3131e6[_0xddddaf(0xb7)]:[_0x3131e6[_0xddddaf(0xa8)]],_0x16fc94=_0x3131e6['deleteOrder']?.[_0xddddaf(0xfc)]?_0x3131e6[_0xddddaf(0xde)]:_0x1db24c[_0xddddaf(0x104)](_0x4936cf=>_0x4936cf['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x564308,'createdAt':_0x4c2187[_0xddddaf(0x105)](),'expiresAt':new Date(_0x4c2187['getTime']()+PLAN_TTL_MS)[_0xddddaf(0x105)](),'snapshotHash':_0x3131e6[_0xddddaf(0x107)],'recursive':_0x3131e6[_0xddddaf(0xf0)][_0xddddaf(0xa1)]===!![],'target':_0x3131e6[_0xddddaf(0xa8)],'targetFingerprint':fingerprint(_0x3131e6['before']),'targets':_0x1db24c,'targetFingerprints':_0x1db24c[_0xddddaf(0x104)](fingerprint),'deleteOrder':_0x16fc94,'cascade':_0x3131e6[_0xddddaf(0xe7)]??{'pages':_0x3131e6[_0xddddaf(0xa8)][_0xddddaf(0x109)]==null?[]:[_0x3131e6[_0xddddaf(0xa8)][_0xddddaf(0x109)]],'pageSchemaAffected':_0x3131e6['before']['pageId']!=null},'warnings':[..._0x3131e6[_0xddddaf(0xa5)]]};}export async function writeMenuDeletePlan(_0x290335,_0x160820){const _0xc7d6de=a119_0x2d703b,_0x12e6b3=resolvePlanPath(_0x290335,_0xc7d6de(0xc7));await mkdir(dirname(_0x12e6b3),{'recursive':!![]});try{await writeFile(_0x12e6b3,JSON[_0xc7d6de(0xbf)](_0x160820,null,0x2)+'\x0a',{'encoding':_0xc7d6de(0xcb),'flag':'wx'});}catch(_0x1faf44){if(_0x1faf44['code']===_0xc7d6de(0xb3))throw menuError(_0xc7d6de(0x9f),_0xc7d6de(0x10a)+_0x12e6b3,_0xc7d6de(0xa7));throw menuError(_0xc7d6de(0xd9),_0xc7d6de(0xae)+_0x12e6b3+':\x20'+errorMessage(_0x1faf44));}return _0x12e6b3;}export async function readMenuDeletePlan(_0x178033){const _0x2d0e26=a119_0x2d703b,_0x38bd96=resolvePlanPath(_0x178033,_0x2d0e26(0x106));let _0x3968bf;try{_0x3968bf=(await stat(_0x38bd96))[_0x2d0e26(0xd2)];}catch(_0x94fd96){throw menuError(_0x2d0e26(0x10c),_0x2d0e26(0xcf)+_0x38bd96+':\x20'+errorMessage(_0x94fd96));}if(_0x3968bf>MAX_PLAN_BYTES)throw menuError('menu_plan_invalid',_0x2d0e26(0xce)+_0x3968bf+_0x2d0e26(0xe5));let _0x4654e4;try{_0x4654e4=JSON[_0x2d0e26(0xc6)](await readFile(_0x38bd96,_0x2d0e26(0xcb)));}catch(_0x4ad8ee){throw menuError('menu_plan_invalid',_0x2d0e26(0x103)+errorMessage(_0x4ad8ee));}if(!isMenuDeletePlanFile(_0x4654e4))throw menuError(_0x2d0e26(0x10c),_0x2d0e26(0xca)+PLAN_VERSION+_0x2d0e26(0xf1)+PLAN_COMMAND+_0x2d0e26(0x101));if(!sameFingerprint(_0x4654e4['targetFingerprint'],fingerprint(_0x4654e4[_0x2d0e26(0xdc)])))throw menuError(_0x2d0e26(0x10c),_0x2d0e26(0xf6),_0x2d0e26(0xb2));if(!_0x4654e4[_0x2d0e26(0xb7)][_0x2d0e26(0xeb)]((_0xc57484,_0x3ab45a)=>sameFingerprint(_0x4654e4[_0x2d0e26(0xed)][_0x3ab45a],fingerprint(_0xc57484)))||!sameFingerprint(_0x4654e4[_0x2d0e26(0xe9)],fingerprint(_0x4654e4['targets'][_0x4654e4[_0x2d0e26(0xb7)]['length']-0x1])))throw menuError(_0x2d0e26(0x10c),_0x2d0e26(0xda),_0x2d0e26(0xb2));return{'path':_0x38bd96,'plan':_0x4654e4};}export function mutationPlanFromDeleteFile(_0x4ea06a,_0x4ac597){const _0xa3ed82=a119_0x2d703b;return mutationResult({'operation':_0xa3ed82(0xc9),'selector':{'id':_0x4ea06a['target']['id'],'recursive':_0x4ea06a[_0xa3ed82(0xa1)]},'before':_0x4ea06a['target'],'after':null,'dryRun':![],'backend':[{'method':_0xa3ed82(0xe0),'path':'/smartapi/menu/batchDelete'}],'plannedActions':[{'stage':_0xa3ed82(0x9a),'method':_0xa3ed82(0xe0),'path':_0xa3ed82(0xaf),'body':{'idList':_0x4ea06a[_0xa3ed82(0xde)]}}],'targets':_0x4ea06a['targets'],'deleteOrder':_0x4ea06a[_0xa3ed82(0xde)],'snapshotHash':_0x4ea06a[_0xa3ed82(0x107)],'cascade':_0x4ea06a['cascade'],'planFile':{'path':_0x4ac597,'createdAt':_0x4ea06a['createdAt'],'expiresAt':_0x4ea06a[_0xa3ed82(0xc4)]},'warnings':_0x4ea06a[_0xa3ed82(0xa5)]});}export function assertMenuDeletePlanCurrent(_0x36781c,_0x4d858b,_0x510391,_0x11e8fc=new Date()){const _0x386ae7=a119_0x2d703b;assertMenuDeletePlanExecutable(_0x36781c,_0x4d858b,_0x11e8fc);if(_0x510391[_0x386ae7(0xa0)]!==_0x36781c[_0x386ae7(0x107)])throw menuError(_0x386ae7(0x9c),_0x386ae7(0xbe),_0x386ae7(0x9d));return _0x36781c[_0x386ae7(0xb7)]['map']((_0x5b2ba6,_0x10e89)=>{const _0x7beb4=_0x386ae7,_0x515643=_0x510391[_0x7beb4(0xc3)][_0x7beb4(0xcc)](_0x5b2ba6['id']);if(!_0x515643)throw menuError(_0x7beb4(0x9c),_0x7beb4(0xd6)+_0x5b2ba6['id']+_0x7beb4(0xd4));if(!sameFingerprint(_0x36781c[_0x7beb4(0xed)][_0x10e89],fingerprint(_0x515643)))throw menuError(_0x7beb4(0x9c),_0x7beb4(0xd6)+_0x5b2ba6['id']+_0x7beb4(0xf7),_0x7beb4(0xf5));return _0x515643;});}export function assertMenuDeletePlanExecutable(_0x22ea8d,_0x1ff9cc,_0x3cf8c7=new Date()){const _0x66e61=a119_0x2d703b;if(_0x22ea8d[_0x66e61(0xd5)]!==_0x1ff9cc)throw menuError(_0x66e61(0xfa),_0x66e61(0xc8)+JSON[_0x66e61(0xbf)](_0x22ea8d['appCode'])+_0x66e61(0xa9)+JSON['stringify'](_0x1ff9cc)+'.');const _0x5adaf3=Date[_0x66e61(0xc6)](_0x22ea8d[_0x66e61(0xef)]),_0x1c0256=Date[_0x66e61(0xc6)](_0x22ea8d['expiresAt']);if(!Number[_0x66e61(0xa2)](_0x5adaf3)||!Number[_0x66e61(0xa2)](_0x1c0256)||_0x1c0256-_0x5adaf3!==PLAN_TTL_MS)throw menuError('menu_plan_invalid',_0x66e61(0xfd));if(_0x5adaf3>_0x3cf8c7['getTime']())throw menuError(_0x66e61(0x10c),_0x66e61(0x102)+_0x22ea8d[_0x66e61(0xef)]+'\x20is\x20in\x20the\x20future.',_0x66e61(0xb0));if(_0x3cf8c7[_0x66e61(0xf8)]()>_0x1c0256)throw menuError('menu_plan_expired','Menu\x20delete\x20plan\x20expired\x20at\x20'+_0x22ea8d[_0x66e61(0xc4)]+'.','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.');}function fingerprint(_0x4f34e8){const _0x4e0de7=a119_0x2d703b;return{'id':_0x4f34e8['id'],'parentId':_0x4f34e8[_0x4e0de7(0xd1)],'depth':_0x4f34e8[_0x4e0de7(0xba)],'label':_0x4f34e8[_0x4e0de7(0xe2)],'path':_0x4f34e8[_0x4e0de7(0xf4)],'type':_0x4f34e8[_0x4e0de7(0xb8)],'visible':_0x4f34e8[_0x4e0de7(0xea)],'sort':_0x4f34e8[_0x4e0de7(0xb9)],'pageId':_0x4f34e8[_0x4e0de7(0x109)],'pageType':_0x4f34e8['pageType'],'modelType':_0x4f34e8[_0x4e0de7(0xb4)],'datasetId':_0x4f34e8[_0x4e0de7(0xdb)],'datasetCode':_0x4f34e8[_0x4e0de7(0x10b)],'childrenIds':[..._0x4f34e8[_0x4e0de7(0xc5)]],'childrenCount':_0x4f34e8[_0x4e0de7(0xfe)],'resourcesValid':_0x4f34e8[_0x4e0de7(0xb5)],'resourcesHash':hashValue(_0x4f34e8[_0x4e0de7(0xe3)]),'extendHash':hashValue(_0x4f34e8[_0x4e0de7(0xac)]??null),'updateTime':_0x4f34e8['updateTime']};}function hashValue(_0x395b30){const _0x36210e=a119_0x2d703b;return createHash(_0x36210e(0xec))[_0x36210e(0x108)](JSON['stringify'](_0x395b30))[_0x36210e(0xe1)](_0x36210e(0xc2));}function sameFingerprint(_0x4c81af,_0x5b4cc5){const _0x1e21ec=a119_0x2d703b;return JSON['stringify'](_0x4c81af)===JSON[_0x1e21ec(0xbf)](_0x5b4cc5);}function resolvePlanPath(_0x69954e,_0x5e60df){const _0x5367da=a119_0x2d703b,_0x37aa6c=_0x69954e[_0x5367da(0xff)]();if(!_0x37aa6c)throw menuError(_0x5367da(0x10c),'--'+_0x5e60df+'\x20requires\x20a\x20non-empty\x20file\x20path.');return resolve(_0x37aa6c);}function a119_0xe134(){const _0x1a6eae=['get','238dnJJpk','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','Cannot\x20read\x20menu\x20delete\x20plan\x20','5170YHrYdp','parentId','size','pages','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','appCode','Planned\x20menu\x20','pageSchemaAffected','message','menu_plan_write_failed','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','datasetId','target','resourcesHash','deleteOrder','109960qpgQSx','POST','digest','label','resources','10967zInxxT','\x20bytes.','85jKXrbo','cascade','pageType','targetFingerprint','visible','every','sha256','targetFingerprints','8768169tPlotX','createdAt','selector','\x20of\x20the\x20','extendHash','199cfpdOd','path','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','getTime','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','menu_plan_app_mismatch','version','length','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','childrenCount','trim','isInteger','\x20contract.','Menu\x20delete\x20plan\x20creation\x20time\x20','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','map','toISOString','plan','snapshotHash','update','pageId','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','datasetCode','menu_plan_invalid','object','batch-delete-menu','7366uGASlm','menu_state_drift','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','number','menu_plan_file_exists','hash','recursive','isFinite','929460DLJxkZ','updateUserId','warnings','menu\x20delete','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','before',',\x20current\x20app\x20is\x20','boolean','isArray','extend','test','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','/smartapi/menu/batchDelete','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','string','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','EEXIST','modelType','resourcesValid','updateUserName','targets','type','sort','depth','updateTime','68004WosKhW','5637540SUfDhY','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','stringify','isSafeInteger','command','hex','byId','expiresAt','childrenIds','parse','plan-out','Menu\x20delete\x20plan\x20targets\x20app\x20','delete','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','utf8'];a119_0xe134=function(){return _0x1a6eae;};return a119_0xe134();}function isMenuDeletePlanFile(_0x50b21a){const _0x41b2e1=a119_0x2d703b;if(!isRecord(_0x50b21a))return![];return _0x50b21a[_0x41b2e1(0xfb)]===PLAN_VERSION&&_0x50b21a[_0x41b2e1(0xc1)]===PLAN_COMMAND&&typeof _0x50b21a[_0x41b2e1(0xd5)]===_0x41b2e1(0xb1)&&_0x50b21a['appCode'][_0x41b2e1(0xfc)]>0x0&&typeof _0x50b21a[_0x41b2e1(0xef)]===_0x41b2e1(0xb1)&&typeof _0x50b21a[_0x41b2e1(0xc4)]===_0x41b2e1(0xb1)&&typeof _0x50b21a[_0x41b2e1(0x107)]===_0x41b2e1(0xb1)&&/^sha256:[a-f0-9]{64}$/[_0x41b2e1(0xad)](_0x50b21a['snapshotHash'])&&typeof _0x50b21a[_0x41b2e1(0xa1)]===_0x41b2e1(0xaa)&&isMenuFact(_0x50b21a[_0x41b2e1(0xdc)])&&isTargetFingerprint(_0x50b21a[_0x41b2e1(0xe9)])&&Array[_0x41b2e1(0xab)](_0x50b21a['targets'])&&_0x50b21a[_0x41b2e1(0xb7)][_0x41b2e1(0xfc)]>0x0&&_0x50b21a[_0x41b2e1(0xb7)]['every'](isMenuFact)&&Array[_0x41b2e1(0xab)](_0x50b21a[_0x41b2e1(0xed)])&&_0x50b21a[_0x41b2e1(0xed)][_0x41b2e1(0xfc)]===_0x50b21a[_0x41b2e1(0xb7)][_0x41b2e1(0xfc)]&&_0x50b21a[_0x41b2e1(0xed)][_0x41b2e1(0xeb)](isTargetFingerprint)&&Array[_0x41b2e1(0xab)](_0x50b21a['deleteOrder'])&&_0x50b21a[_0x41b2e1(0xde)]['length']===_0x50b21a[_0x41b2e1(0xb7)][_0x41b2e1(0xfc)]&&_0x50b21a[_0x41b2e1(0xde)][_0x41b2e1(0xeb)](isPositiveInteger)&&new Set(_0x50b21a[_0x41b2e1(0xde)])[_0x41b2e1(0xd2)]===_0x50b21a[_0x41b2e1(0xde)][_0x41b2e1(0xfc)]&&_0x50b21a[_0x41b2e1(0xb7)]['every']((_0x1c636f,_0x384d55)=>_0x1c636f['id']===_0x50b21a[_0x41b2e1(0xde)][_0x384d55])&&_0x50b21a[_0x41b2e1(0xb7)][_0x50b21a[_0x41b2e1(0xb7)][_0x41b2e1(0xfc)]-0x1]?.['id']===_0x50b21a['target']['id']&&isRecord(_0x50b21a[_0x41b2e1(0xe7)])&&Array[_0x41b2e1(0xab)](_0x50b21a[_0x41b2e1(0xe7)][_0x41b2e1(0xd3)])&&_0x50b21a[_0x41b2e1(0xe7)][_0x41b2e1(0xd3)][_0x41b2e1(0xeb)](isPositiveInteger)&&typeof _0x50b21a[_0x41b2e1(0xe7)][_0x41b2e1(0xd7)]===_0x41b2e1(0xaa)&&Array[_0x41b2e1(0xab)](_0x50b21a['warnings'])&&_0x50b21a['warnings']['every'](_0x50f47c=>typeof _0x50f47c===_0x41b2e1(0xb1));}function isMenuFact(_0x16c200){const _0x26b68a=a119_0x2d703b;if(!isRecord(_0x16c200))return![];return isPositiveInteger(_0x16c200['id'])&&(_0x16c200[_0x26b68a(0xd1)]===null||isPositiveInteger(_0x16c200['parentId']))&&Number[_0x26b68a(0x100)](_0x16c200[_0x26b68a(0xba)])&&_0x16c200[_0x26b68a(0xba)]>=0x0&&typeof _0x16c200[_0x26b68a(0xe2)]===_0x26b68a(0xb1)&&typeof _0x16c200[_0x26b68a(0xf4)]===_0x26b68a(0xb1)&&typeof _0x16c200[_0x26b68a(0xb8)]===_0x26b68a(0xb1)&&(_0x16c200[_0x26b68a(0xea)]===null||typeof _0x16c200[_0x26b68a(0xea)]===_0x26b68a(0xaa))&&(_0x16c200[_0x26b68a(0xb9)]===null||Number['isInteger'](_0x16c200[_0x26b68a(0xb9)]))&&Array[_0x26b68a(0xab)](_0x16c200[_0x26b68a(0xe3)])&&_0x16c200[_0x26b68a(0xe3)][_0x26b68a(0xeb)](_0x33e2c9=>typeof _0x33e2c9===_0x26b68a(0xb1))&&typeof _0x16c200[_0x26b68a(0xb5)]===_0x26b68a(0xaa)&&Array[_0x26b68a(0xab)](_0x16c200[_0x26b68a(0xc5)])&&_0x16c200[_0x26b68a(0xc5)]['every'](isPositiveInteger)&&Number[_0x26b68a(0x100)](_0x16c200[_0x26b68a(0xfe)])&&_0x16c200[_0x26b68a(0xfe)]>=0x0&&(_0x16c200[_0x26b68a(0x109)]===null||isPositiveInteger(_0x16c200[_0x26b68a(0x109)]))&&typeof _0x16c200[_0x26b68a(0xe8)]===_0x26b68a(0xb1)&&typeof _0x16c200[_0x26b68a(0xb4)]==='string'&&(_0x16c200[_0x26b68a(0xdb)]===null||isPositiveInteger(_0x16c200[_0x26b68a(0xdb)]))&&typeof _0x16c200[_0x26b68a(0x10b)]===_0x26b68a(0xb1)&&(_0x16c200['updateUserId']===null||typeof _0x16c200[_0x26b68a(0xa4)]===_0x26b68a(0xb1))&&(_0x16c200['updateUserName']===null||typeof _0x16c200[_0x26b68a(0xb6)]===_0x26b68a(0xb1))&&(_0x16c200[_0x26b68a(0xbb)]===null||typeof _0x16c200[_0x26b68a(0xbb)]===_0x26b68a(0xb1)||typeof _0x16c200[_0x26b68a(0xbb)]===_0x26b68a(0x9e))&&(_0x16c200[_0x26b68a(0xac)]===undefined||_0x16c200[_0x26b68a(0xac)]===null||isRecord(_0x16c200['extend']));}function isTargetFingerprint(_0x1cda4d){const _0x3474ea=a119_0x2d703b;if(!isRecord(_0x1cda4d))return![];return isPositiveInteger(_0x1cda4d['id'])&&(_0x1cda4d['parentId']===null||isPositiveInteger(_0x1cda4d['parentId']))&&Number[_0x3474ea(0x100)](_0x1cda4d[_0x3474ea(0xba)])&&_0x1cda4d[_0x3474ea(0xba)]>=0x0&&typeof _0x1cda4d['label']==='string'&&typeof _0x1cda4d[_0x3474ea(0xf4)]===_0x3474ea(0xb1)&&typeof _0x1cda4d[_0x3474ea(0xb8)]==='string'&&(_0x1cda4d[_0x3474ea(0xea)]===null||typeof _0x1cda4d[_0x3474ea(0xea)]===_0x3474ea(0xaa))&&(_0x1cda4d[_0x3474ea(0xb9)]===null||Number['isInteger'](_0x1cda4d[_0x3474ea(0xb9)]))&&(_0x1cda4d[_0x3474ea(0x109)]===null||isPositiveInteger(_0x1cda4d[_0x3474ea(0x109)]))&&typeof _0x1cda4d[_0x3474ea(0xe8)]===_0x3474ea(0xb1)&&typeof _0x1cda4d[_0x3474ea(0xb4)]===_0x3474ea(0xb1)&&(_0x1cda4d[_0x3474ea(0xdb)]===null||isPositiveInteger(_0x1cda4d[_0x3474ea(0xdb)]))&&typeof _0x1cda4d[_0x3474ea(0x10b)]==='string'&&Array['isArray'](_0x1cda4d[_0x3474ea(0xc5)])&&_0x1cda4d[_0x3474ea(0xc5)][_0x3474ea(0xeb)](isPositiveInteger)&&Number[_0x3474ea(0x100)](_0x1cda4d[_0x3474ea(0xfe)])&&_0x1cda4d['childrenCount']>=0x0&&typeof _0x1cda4d[_0x3474ea(0xb5)]===_0x3474ea(0xaa)&&typeof _0x1cda4d[_0x3474ea(0xdd)]===_0x3474ea(0xb1)&&/^[a-f0-9]{64}$/['test'](_0x1cda4d['resourcesHash'])&&typeof _0x1cda4d[_0x3474ea(0xf2)]==='string'&&/^[a-f0-9]{64}$/[_0x3474ea(0xad)](_0x1cda4d[_0x3474ea(0xf2)])&&(_0x1cda4d['updateTime']===null||typeof _0x1cda4d[_0x3474ea(0xbb)]===_0x3474ea(0xb1)||typeof _0x1cda4d[_0x3474ea(0xbb)]===_0x3474ea(0x9e));}function isRecord(_0x408504){const _0x2b2156=a119_0x2d703b;return typeof _0x408504===_0x2b2156(0x99)&&_0x408504!==null&&!Array[_0x2b2156(0xab)](_0x408504);}function isPositiveInteger(_0xe3473c){const _0x327a9b=a119_0x2d703b;return Number[_0x327a9b(0xc0)](_0xe3473c)&&Number(_0xe3473c)>0x0;}function errorMessage(_0x22d7bf){const _0x3d6a36=a119_0x2d703b;return _0x22d7bf instanceof Error?_0x22d7bf[_0x3d6a36(0xd8)]:String(_0x22d7bf);}
1
+ function a119_0x2e1f(_0x165d89,_0x2b61c0){_0x165d89=_0x165d89-0x90;const _0x4b6b30=a119_0x4b6b();let _0x2e1f88=_0x4b6b30[_0x165d89];return _0x2e1f88;}const a119_0x3414f8=a119_0x2e1f;(function(_0x4200de,_0xf8eb48){const _0x7f1329=a119_0x2e1f,_0x6d37d8=_0x4200de();while(!![]){try{const _0x21d103=-parseInt(_0x7f1329(0x92))/0x1+-parseInt(_0x7f1329(0xc5))/0x2*(-parseInt(_0x7f1329(0xb0))/0x3)+parseInt(_0x7f1329(0xb2))/0x4*(parseInt(_0x7f1329(0x95))/0x5)+-parseInt(_0x7f1329(0xd2))/0x6*(parseInt(_0x7f1329(0xf4))/0x7)+-parseInt(_0x7f1329(0xed))/0x8*(parseInt(_0x7f1329(0xa7))/0x9)+parseInt(_0x7f1329(0x91))/0xa+parseInt(_0x7f1329(0xbc))/0xb*(parseInt(_0x7f1329(0xd0))/0xc);if(_0x21d103===_0xf8eb48)break;else _0x6d37d8['push'](_0x6d37d8['shift']());}catch(_0x2af288){_0x6d37d8['push'](_0x6d37d8['shift']());}}}(a119_0x4b6b,0xdb89b));import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND=a119_0x3414f8(0xbb),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x132840,_0x502449,_0x29a9b0=new Date()){const _0x231839=a119_0x3414f8;if(!_0x502449['before']||!isMenuFact(_0x502449['before']))throw menuError('menu_plan_invalid','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.');const _0x5aac32=_0x502449[_0x231839(0xbd)]?.[_0x231839(0xa6)]?_0x502449[_0x231839(0xbd)]:[_0x502449[_0x231839(0xae)]],_0x31ec1e=_0x502449['deleteOrder']?.[_0x231839(0xa6)]?_0x502449[_0x231839(0x96)]:_0x5aac32[_0x231839(0xdc)](_0x11a4a4=>_0x11a4a4['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x132840,'createdAt':_0x29a9b0[_0x231839(0xbf)](),'expiresAt':new Date(_0x29a9b0[_0x231839(0xad)]()+PLAN_TTL_MS)['toISOString'](),'snapshotHash':_0x502449['snapshotHash'],'recursive':_0x502449['selector'][_0x231839(0xeb)]===!![],'target':_0x502449[_0x231839(0xae)],'targetFingerprint':fingerprint(_0x502449['before']),'targets':_0x5aac32,'targetFingerprints':_0x5aac32['map'](fingerprint),'deleteOrder':_0x31ec1e,'cascade':_0x502449[_0x231839(0xde)]??{'pages':_0x502449[_0x231839(0xae)][_0x231839(0xa1)]==null?[]:[_0x502449[_0x231839(0xae)]['pageId']],'pageSchemaAffected':_0x502449[_0x231839(0xae)][_0x231839(0xa1)]!=null},'warnings':[..._0x502449[_0x231839(0xaf)]]};}export async function writeMenuDeletePlan(_0x48a63b,_0x55ea03){const _0x154dd6=a119_0x3414f8,_0x57aac3=resolvePlanPath(_0x48a63b,'plan-out');await mkdir(dirname(_0x57aac3),{'recursive':!![]});try{await writeFile(_0x57aac3,JSON[_0x154dd6(0xf1)](_0x55ea03,null,0x2)+'\x0a',{'encoding':_0x154dd6(0xa0),'flag':'wx'});}catch(_0x861815){if(_0x861815[_0x154dd6(0xa5)]===_0x154dd6(0x9b))throw menuError(_0x154dd6(0x9f),'Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20'+_0x57aac3,'Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.');throw menuError(_0x154dd6(0xd4),'Failed\x20to\x20write\x20menu\x20delete\x20plan\x20'+_0x57aac3+':\x20'+errorMessage(_0x861815));}return _0x57aac3;}export async function readMenuDeletePlan(_0x409625){const _0x39fb38=a119_0x3414f8,_0x200b54=resolvePlanPath(_0x409625,_0x39fb38(0xd8));let _0x83ee4e;try{_0x83ee4e=(await stat(_0x200b54))['size'];}catch(_0x15cfa5){throw menuError(_0x39fb38(0x97),_0x39fb38(0xd9)+_0x200b54+':\x20'+errorMessage(_0x15cfa5));}if(_0x83ee4e>MAX_PLAN_BYTES)throw menuError(_0x39fb38(0x97),_0x39fb38(0xcb)+_0x83ee4e+_0x39fb38(0xf2));let _0x2942be;try{_0x2942be=JSON[_0x39fb38(0xe7)](await readFile(_0x200b54,'utf8'));}catch(_0x15c837){throw menuError(_0x39fb38(0x97),'Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20'+errorMessage(_0x15c837));}if(!isMenuDeletePlanFile(_0x2942be))throw menuError(_0x39fb38(0x97),_0x39fb38(0x9d)+PLAN_VERSION+'\x20of\x20the\x20'+PLAN_COMMAND+_0x39fb38(0xca));if(!sameFingerprint(_0x2942be[_0x39fb38(0xb7)],fingerprint(_0x2942be['target'])))throw menuError(_0x39fb38(0x97),_0x39fb38(0x93),_0x39fb38(0x94));if(!_0x2942be[_0x39fb38(0xbd)][_0x39fb38(0xe0)]((_0xb9ff96,_0x5a07b0)=>sameFingerprint(_0x2942be[_0x39fb38(0xcc)][_0x5a07b0],fingerprint(_0xb9ff96)))||!sameFingerprint(_0x2942be[_0x39fb38(0xb7)],fingerprint(_0x2942be[_0x39fb38(0xbd)][_0x2942be['targets'][_0x39fb38(0xa6)]-0x1])))throw menuError('menu_plan_invalid',_0x39fb38(0xa3),_0x39fb38(0x94));return{'path':_0x200b54,'plan':_0x2942be};}export function mutationPlanFromDeleteFile(_0x8febc4,_0x1c3779){const _0x270aed=a119_0x3414f8;return mutationResult({'operation':'delete','selector':{'id':_0x8febc4[_0x270aed(0xb6)]['id'],'recursive':_0x8febc4[_0x270aed(0xeb)]},'before':_0x8febc4[_0x270aed(0xb6)],'after':null,'dryRun':![],'backend':[{'method':_0x270aed(0xef),'path':'/smartapi/menu/batchDelete'}],'plannedActions':[{'stage':_0x270aed(0xb3),'method':_0x270aed(0xef),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x8febc4[_0x270aed(0x96)]}}],'targets':_0x8febc4['targets'],'deleteOrder':_0x8febc4[_0x270aed(0x96)],'snapshotHash':_0x8febc4['snapshotHash'],'cascade':_0x8febc4['cascade'],'planFile':{'path':_0x1c3779,'createdAt':_0x8febc4[_0x270aed(0xdb)],'expiresAt':_0x8febc4[_0x270aed(0x9a)]},'warnings':_0x8febc4['warnings']});}export function assertMenuDeletePlanCurrent(_0x28dae6,_0x1c94d3,_0x5ca77c,_0x584bac=new Date()){const _0x44e3bd=a119_0x3414f8;assertMenuDeletePlanExecutable(_0x28dae6,_0x1c94d3,_0x584bac);if(_0x5ca77c['hash']!==_0x28dae6[_0x44e3bd(0xc1)])throw menuError(_0x44e3bd(0xb8),_0x44e3bd(0xa4),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.');return _0x28dae6[_0x44e3bd(0xbd)]['map']((_0x2fc6a3,_0x242ec1)=>{const _0x2824cc=_0x44e3bd,_0x2189f1=_0x5ca77c['byId']['get'](_0x2fc6a3['id']);if(!_0x2189f1)throw menuError(_0x2824cc(0xb8),_0x2824cc(0xa9)+_0x2fc6a3['id']+'\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.');if(!sameFingerprint(_0x28dae6[_0x2824cc(0xcc)][_0x242ec1],fingerprint(_0x2189f1)))throw menuError(_0x2824cc(0xb8),'Planned\x20menu\x20'+_0x2fc6a3['id']+_0x2824cc(0xe1),_0x2824cc(0xe4));return _0x2189f1;});}export function assertMenuDeletePlanExecutable(_0x4b7f73,_0x305b8f,_0x2135f5=new Date()){const _0x562bec=a119_0x3414f8;if(_0x4b7f73[_0x562bec(0xe9)]!==_0x305b8f)throw menuError(_0x562bec(0x9c),_0x562bec(0xc2)+JSON[_0x562bec(0xf1)](_0x4b7f73['appCode'])+_0x562bec(0xea)+JSON[_0x562bec(0xf1)](_0x305b8f)+'.');const _0x2a266d=Date[_0x562bec(0xe7)](_0x4b7f73[_0x562bec(0xdb)]),_0x28bdcc=Date[_0x562bec(0xe7)](_0x4b7f73[_0x562bec(0x9a)]);if(!Number[_0x562bec(0xac)](_0x2a266d)||!Number[_0x562bec(0xac)](_0x28bdcc)||_0x28bdcc-_0x2a266d!==PLAN_TTL_MS)throw menuError(_0x562bec(0x97),_0x562bec(0xec));if(_0x2a266d>_0x2135f5[_0x562bec(0xad)]())throw menuError('menu_plan_invalid',_0x562bec(0xdf)+_0x4b7f73[_0x562bec(0xdb)]+_0x562bec(0xb4),_0x562bec(0xa2));if(_0x2135f5[_0x562bec(0xad)]()>_0x28bdcc)throw menuError(_0x562bec(0xda),_0x562bec(0xaa)+_0x4b7f73[_0x562bec(0x9a)]+'.',_0x562bec(0xc9));}function fingerprint(_0x3e0bb0){const _0x33357c=a119_0x3414f8;return{'id':_0x3e0bb0['id'],'parentId':_0x3e0bb0[_0x33357c(0xdd)],'depth':_0x3e0bb0['depth'],'label':_0x3e0bb0['label'],'path':_0x3e0bb0[_0x33357c(0xe2)],'type':_0x3e0bb0[_0x33357c(0x98)],'visible':_0x3e0bb0[_0x33357c(0xd7)],'sort':_0x3e0bb0[_0x33357c(0xf5)],'pageId':_0x3e0bb0['pageId'],'pageType':_0x3e0bb0[_0x33357c(0x90)],'modelType':_0x3e0bb0[_0x33357c(0xe8)],'datasetId':_0x3e0bb0[_0x33357c(0xe6)],'datasetCode':_0x3e0bb0[_0x33357c(0xb9)],'childrenIds':[..._0x3e0bb0[_0x33357c(0xc7)]],'childrenCount':_0x3e0bb0[_0x33357c(0xcf)],'resourcesValid':_0x3e0bb0['resourcesValid'],'resourcesHash':hashValue(_0x3e0bb0[_0x33357c(0xab)]),'extendHash':hashValue(_0x3e0bb0[_0x33357c(0xce)]??null),'updateTime':_0x3e0bb0[_0x33357c(0xd5)]};}function hashValue(_0x42752f){const _0x397c92=a119_0x3414f8;return createHash(_0x397c92(0xc0))[_0x397c92(0xc8)](JSON[_0x397c92(0xf1)](_0x42752f))[_0x397c92(0xf6)](_0x397c92(0xf3));}function sameFingerprint(_0x567efb,_0x1bed5b){const _0x459c90=a119_0x3414f8;return JSON[_0x459c90(0xf1)](_0x567efb)===JSON[_0x459c90(0xf1)](_0x1bed5b);}function resolvePlanPath(_0x207bef,_0x35687a){const _0x2f0ede=a119_0x3414f8,_0x52e100=_0x207bef[_0x2f0ede(0xe5)]();if(!_0x52e100)throw menuError(_0x2f0ede(0x97),'--'+_0x35687a+'\x20requires\x20a\x20non-empty\x20file\x20path.');return resolve(_0x52e100);}function isMenuDeletePlanFile(_0x5485a0){const _0x1723ae=a119_0x3414f8;if(!isRecord(_0x5485a0))return![];return _0x5485a0['version']===PLAN_VERSION&&_0x5485a0['command']===PLAN_COMMAND&&typeof _0x5485a0[_0x1723ae(0xe9)]==='string'&&_0x5485a0[_0x1723ae(0xe9)][_0x1723ae(0xa6)]>0x0&&typeof _0x5485a0[_0x1723ae(0xdb)]==='string'&&typeof _0x5485a0[_0x1723ae(0x9a)]===_0x1723ae(0xba)&&typeof _0x5485a0['snapshotHash']===_0x1723ae(0xba)&&/^sha256:[a-f0-9]{64}$/[_0x1723ae(0xc4)](_0x5485a0[_0x1723ae(0xc1)])&&typeof _0x5485a0['recursive']===_0x1723ae(0xd1)&&isMenuFact(_0x5485a0['target'])&&isTargetFingerprint(_0x5485a0[_0x1723ae(0xb7)])&&Array[_0x1723ae(0x99)](_0x5485a0[_0x1723ae(0xbd)])&&_0x5485a0[_0x1723ae(0xbd)][_0x1723ae(0xa6)]>0x0&&_0x5485a0[_0x1723ae(0xbd)][_0x1723ae(0xe0)](isMenuFact)&&Array[_0x1723ae(0x99)](_0x5485a0[_0x1723ae(0xcc)])&&_0x5485a0['targetFingerprints'][_0x1723ae(0xa6)]===_0x5485a0[_0x1723ae(0xbd)]['length']&&_0x5485a0[_0x1723ae(0xcc)][_0x1723ae(0xe0)](isTargetFingerprint)&&Array['isArray'](_0x5485a0[_0x1723ae(0x96)])&&_0x5485a0[_0x1723ae(0x96)]['length']===_0x5485a0[_0x1723ae(0xbd)]['length']&&_0x5485a0[_0x1723ae(0x96)][_0x1723ae(0xe0)](isPositiveInteger)&&new Set(_0x5485a0[_0x1723ae(0x96)])[_0x1723ae(0xf0)]===_0x5485a0[_0x1723ae(0x96)][_0x1723ae(0xa6)]&&_0x5485a0[_0x1723ae(0xbd)]['every']((_0x1f8560,_0x11d23f)=>_0x1f8560['id']===_0x5485a0['deleteOrder'][_0x11d23f])&&_0x5485a0[_0x1723ae(0xbd)][_0x5485a0[_0x1723ae(0xbd)][_0x1723ae(0xa6)]-0x1]?.['id']===_0x5485a0[_0x1723ae(0xb6)]['id']&&isRecord(_0x5485a0[_0x1723ae(0xde)])&&Array[_0x1723ae(0x99)](_0x5485a0[_0x1723ae(0xde)][_0x1723ae(0xc6)])&&_0x5485a0['cascade']['pages']['every'](isPositiveInteger)&&typeof _0x5485a0['cascade'][_0x1723ae(0x9e)]===_0x1723ae(0xd1)&&Array[_0x1723ae(0x99)](_0x5485a0[_0x1723ae(0xaf)])&&_0x5485a0['warnings'][_0x1723ae(0xe0)](_0x16caa6=>typeof _0x16caa6===_0x1723ae(0xba));}function isMenuFact(_0x18c156){const _0x1c0277=a119_0x3414f8;if(!isRecord(_0x18c156))return![];return isPositiveInteger(_0x18c156['id'])&&(_0x18c156[_0x1c0277(0xdd)]===null||isPositiveInteger(_0x18c156['parentId']))&&Number[_0x1c0277(0xa8)](_0x18c156[_0x1c0277(0xee)])&&_0x18c156[_0x1c0277(0xee)]>=0x0&&typeof _0x18c156[_0x1c0277(0xb5)]===_0x1c0277(0xba)&&typeof _0x18c156['path']==='string'&&typeof _0x18c156[_0x1c0277(0x98)]===_0x1c0277(0xba)&&(_0x18c156[_0x1c0277(0xd7)]===null||typeof _0x18c156[_0x1c0277(0xd7)]===_0x1c0277(0xd1))&&(_0x18c156[_0x1c0277(0xf5)]===null||Number[_0x1c0277(0xa8)](_0x18c156['sort']))&&Array[_0x1c0277(0x99)](_0x18c156[_0x1c0277(0xab)])&&_0x18c156[_0x1c0277(0xab)][_0x1c0277(0xe0)](_0x573e9e=>typeof _0x573e9e===_0x1c0277(0xba))&&typeof _0x18c156['resourcesValid']===_0x1c0277(0xd1)&&Array[_0x1c0277(0x99)](_0x18c156[_0x1c0277(0xc7)])&&_0x18c156[_0x1c0277(0xc7)][_0x1c0277(0xe0)](isPositiveInteger)&&Number['isInteger'](_0x18c156[_0x1c0277(0xcf)])&&_0x18c156[_0x1c0277(0xcf)]>=0x0&&(_0x18c156[_0x1c0277(0xa1)]===null||isPositiveInteger(_0x18c156[_0x1c0277(0xa1)]))&&typeof _0x18c156[_0x1c0277(0x90)]==='string'&&typeof _0x18c156[_0x1c0277(0xe8)]===_0x1c0277(0xba)&&(_0x18c156['datasetId']===null||isPositiveInteger(_0x18c156[_0x1c0277(0xe6)]))&&typeof _0x18c156['datasetCode']==='string'&&(_0x18c156['updateUserId']===null||typeof _0x18c156[_0x1c0277(0xd3)]===_0x1c0277(0xba))&&(_0x18c156['updateUserName']===null||typeof _0x18c156['updateUserName']===_0x1c0277(0xba))&&(_0x18c156['updateTime']===null||typeof _0x18c156[_0x1c0277(0xd5)]===_0x1c0277(0xba)||typeof _0x18c156[_0x1c0277(0xd5)]===_0x1c0277(0xcd))&&(_0x18c156[_0x1c0277(0xce)]===undefined||_0x18c156[_0x1c0277(0xce)]===null||isRecord(_0x18c156[_0x1c0277(0xce)]));}function a119_0x4b6b(){const _0x1bf375=['68cCdYIN','batch-delete-menu','\x20is\x20in\x20the\x20future.','label','target','targetFingerprint','menu_state_drift','datasetCode','string','menu\x20delete','11770957wIEVrY','targets','extendHash','toISOString','sha256','snapshotHash','Menu\x20delete\x20plan\x20targets\x20app\x20','resourcesHash','test','68bvhZzw','pages','childrenIds','update','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','\x20contract.','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','targetFingerprints','number','extend','childrenCount','12dlbLAm','boolean','36KoDpmj','updateUserId','menu_plan_write_failed','updateTime','resourcesValid','visible','plan','Cannot\x20read\x20menu\x20delete\x20plan\x20','menu_plan_expired','createdAt','map','parentId','cascade','Menu\x20delete\x20plan\x20creation\x20time\x20','every','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','path','message','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','trim','datasetId','parse','modelType','appCode',',\x20current\x20app\x20is\x20','recursive','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','117016bezRpW','depth','POST','size','stringify','\x20bytes.','hex','1214381QJBInJ','sort','digest','pageType','14486710aTyaYv','1315180JmNeOz','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','270935mYGkRn','deleteOrder','menu_plan_invalid','type','isArray','expiresAt','EEXIST','menu_plan_app_mismatch','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','pageSchemaAffected','menu_plan_file_exists','utf8','pageId','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','code','length','234cmHJHM','isInteger','Planned\x20menu\x20','Menu\x20delete\x20plan\x20expired\x20at\x20','resources','isFinite','getTime','before','warnings','17265QRtfse','object'];a119_0x4b6b=function(){return _0x1bf375;};return a119_0x4b6b();}function isTargetFingerprint(_0x24e897){const _0x104d6a=a119_0x3414f8;if(!isRecord(_0x24e897))return![];return isPositiveInteger(_0x24e897['id'])&&(_0x24e897[_0x104d6a(0xdd)]===null||isPositiveInteger(_0x24e897[_0x104d6a(0xdd)]))&&Number[_0x104d6a(0xa8)](_0x24e897[_0x104d6a(0xee)])&&_0x24e897[_0x104d6a(0xee)]>=0x0&&typeof _0x24e897[_0x104d6a(0xb5)]===_0x104d6a(0xba)&&typeof _0x24e897['path']==='string'&&typeof _0x24e897[_0x104d6a(0x98)]===_0x104d6a(0xba)&&(_0x24e897['visible']===null||typeof _0x24e897[_0x104d6a(0xd7)]===_0x104d6a(0xd1))&&(_0x24e897['sort']===null||Number[_0x104d6a(0xa8)](_0x24e897[_0x104d6a(0xf5)]))&&(_0x24e897[_0x104d6a(0xa1)]===null||isPositiveInteger(_0x24e897[_0x104d6a(0xa1)]))&&typeof _0x24e897['pageType']===_0x104d6a(0xba)&&typeof _0x24e897['modelType']===_0x104d6a(0xba)&&(_0x24e897[_0x104d6a(0xe6)]===null||isPositiveInteger(_0x24e897[_0x104d6a(0xe6)]))&&typeof _0x24e897['datasetCode']===_0x104d6a(0xba)&&Array[_0x104d6a(0x99)](_0x24e897[_0x104d6a(0xc7)])&&_0x24e897[_0x104d6a(0xc7)][_0x104d6a(0xe0)](isPositiveInteger)&&Number['isInteger'](_0x24e897[_0x104d6a(0xcf)])&&_0x24e897[_0x104d6a(0xcf)]>=0x0&&typeof _0x24e897[_0x104d6a(0xd6)]===_0x104d6a(0xd1)&&typeof _0x24e897['resourcesHash']===_0x104d6a(0xba)&&/^[a-f0-9]{64}$/[_0x104d6a(0xc4)](_0x24e897[_0x104d6a(0xc3)])&&typeof _0x24e897[_0x104d6a(0xbe)]===_0x104d6a(0xba)&&/^[a-f0-9]{64}$/[_0x104d6a(0xc4)](_0x24e897[_0x104d6a(0xbe)])&&(_0x24e897[_0x104d6a(0xd5)]===null||typeof _0x24e897[_0x104d6a(0xd5)]==='string'||typeof _0x24e897[_0x104d6a(0xd5)]==='number');}function isRecord(_0x389d6d){const _0x637d98=a119_0x3414f8;return typeof _0x389d6d===_0x637d98(0xb1)&&_0x389d6d!==null&&!Array[_0x637d98(0x99)](_0x389d6d);}function isPositiveInteger(_0x45886d){return Number['isSafeInteger'](_0x45886d)&&Number(_0x45886d)>0x0;}function errorMessage(_0x31615a){const _0x429115=a119_0x3414f8;return _0x31615a instanceof Error?_0x31615a[_0x429115(0xe3)]:String(_0x31615a);}