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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (326) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/api/generate-sdk-config-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.js +1 -1
  11. package/lib/auth/login-success-html.js +1 -1
  12. package/lib/auth/logout.js +1 -1
  13. package/lib/cli-flags.js +1 -1
  14. package/lib/cli.js +1 -1
  15. package/lib/commands/api/generate.js +1 -1
  16. package/lib/commands/api/index.js +1 -1
  17. package/lib/commands/api/list.js +1 -1
  18. package/lib/commands/api/pull.js +1 -1
  19. package/lib/commands/api/shared.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/members-list.js +1 -1
  23. package/lib/commands/app/remote-directory.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/delete.js +1 -1
  53. package/lib/commands/config/get.js +1 -1
  54. package/lib/commands/config/index.js +1 -1
  55. package/lib/commands/config/init.d.ts +1 -1
  56. package/lib/commands/config/init.js +1 -1
  57. package/lib/commands/config/list.js +1 -1
  58. package/lib/commands/config/set.js +1 -1
  59. package/lib/commands/config/shared.js +1 -1
  60. package/lib/commands/dataset/business-group-update.js +1 -1
  61. package/lib/commands/dataset/business-groups.js +1 -1
  62. package/lib/commands/dataset/capability.js +1 -1
  63. package/lib/commands/dataset/delete.js +1 -1
  64. package/lib/commands/dataset/detail.js +1 -1
  65. package/lib/commands/dataset/extend-update.js +1 -1
  66. package/lib/commands/dataset/field-restore.d.ts +107 -0
  67. package/lib/commands/dataset/field-restore.js +1 -0
  68. package/lib/commands/dataset/field-update.js +1 -1
  69. package/lib/commands/dataset/generate.js +1 -1
  70. package/lib/commands/dataset/index.js +1 -1
  71. package/lib/commands/dataset/list.js +1 -1
  72. package/lib/commands/dataset/operations.js +1 -1
  73. package/lib/commands/dataset/relation-audit.js +1 -1
  74. package/lib/commands/dataset/relation-create.js +1 -1
  75. package/lib/commands/dataset/relation-delete.js +1 -1
  76. package/lib/commands/dataset/relation-shared.js +1 -1
  77. package/lib/commands/dataset/relation-update.js +1 -1
  78. package/lib/commands/dataset/relations.js +1 -1
  79. package/lib/commands/dataset/rename.js +1 -1
  80. package/lib/commands/dataset/restore.js +1 -1
  81. package/lib/commands/dataset/user-deleted-field-list.d.ts +36 -0
  82. package/lib/commands/dataset/user-deleted-field-list.js +1 -0
  83. package/lib/commands/db/analysis-batching.js +1 -1
  84. package/lib/commands/db/analyze-batch-plan.js +1 -1
  85. package/lib/commands/db/analyze-cancel.js +1 -1
  86. package/lib/commands/db/analyze-start.js +1 -1
  87. package/lib/commands/db/analyze-status.js +1 -1
  88. package/lib/commands/db/create.js +1 -1
  89. package/lib/commands/db/delete.js +1 -1
  90. package/lib/commands/db/detail.js +1 -1
  91. package/lib/commands/db/diff-refresh-start.js +1 -1
  92. package/lib/commands/db/diff-refresh-status.js +1 -1
  93. package/lib/commands/db/diff.js +1 -1
  94. package/lib/commands/db/index.js +1 -1
  95. package/lib/commands/db/list.js +1 -1
  96. package/lib/commands/db/shared.js +1 -1
  97. package/lib/commands/db/table-diff-shared.js +1 -1
  98. package/lib/commands/db/tables.js +1 -1
  99. package/lib/commands/db/test.js +1 -1
  100. package/lib/commands/db/update.js +1 -1
  101. package/lib/commands/deployment/auto-sync.d.ts +28 -0
  102. package/lib/commands/deployment/auto-sync.js +1 -0
  103. package/lib/commands/deployment/index.d.ts +2 -0
  104. package/lib/commands/deployment/index.js +1 -0
  105. package/lib/commands/deployment/sync.d.ts +2 -0
  106. package/lib/commands/deployment/sync.js +1 -0
  107. package/lib/commands/doctor.js +1 -1
  108. package/lib/commands/file/index.js +1 -1
  109. package/lib/commands/issue/index.js +1 -1
  110. package/lib/commands/issue/nudge.js +1 -1
  111. package/lib/commands/issue/report.js +1 -1
  112. package/lib/commands/issue/shared.js +1 -1
  113. package/lib/commands/kb/create.js +1 -1
  114. package/lib/commands/kb/delete.js +1 -1
  115. package/lib/commands/kb/detail.js +1 -1
  116. package/lib/commands/kb/index.js +1 -1
  117. package/lib/commands/kb/list.js +1 -1
  118. package/lib/commands/kb/search.js +1 -1
  119. package/lib/commands/kb/shared.js +1 -1
  120. package/lib/commands/kb/update.js +1 -1
  121. package/lib/commands/logs/index.js +1 -1
  122. package/lib/commands/menu/asset-update.js +1 -1
  123. package/lib/commands/menu/delete.js +1 -1
  124. package/lib/commands/menu/external-link-create.js +1 -1
  125. package/lib/commands/menu/external-link-update.js +1 -1
  126. package/lib/commands/menu/group-create.js +1 -1
  127. package/lib/commands/menu/group-update.js +1 -1
  128. package/lib/commands/menu/index.js +1 -1
  129. package/lib/commands/menu/list.js +1 -1
  130. package/lib/commands/menu/move.js +1 -1
  131. package/lib/commands/menu/regroup-start.js +1 -1
  132. package/lib/commands/menu/rename.js +1 -1
  133. package/lib/commands/menu/shared/compare-table.js +1 -1
  134. package/lib/commands/menu/shared/delete-plan.js +1 -1
  135. package/lib/commands/menu/shared/facts.js +1 -1
  136. package/lib/commands/menu/shared/index.js +1 -1
  137. package/lib/commands/menu/shared/inquirer.js +1 -1
  138. package/lib/commands/menu/shared/local-pages.js +1 -1
  139. package/lib/commands/menu/shared/logic.js +1 -1
  140. package/lib/commands/menu/shared/mutations.js +1 -1
  141. package/lib/commands/menu/shared/service.js +1 -1
  142. package/lib/commands/menu/shared/sync-core.js +1 -1
  143. package/lib/commands/menu/shared/update-core.js +1 -1
  144. package/lib/commands/menu/shared/valid-url.js +1 -1
  145. package/lib/commands/menu/sync.js +1 -1
  146. package/lib/commands/menu/visibility-update.js +1 -1
  147. package/lib/commands/notification/config-create.js +1 -1
  148. package/lib/commands/notification/config-delete.js +1 -1
  149. package/lib/commands/notification/config-list.js +1 -1
  150. package/lib/commands/notification/config-update.js +1 -1
  151. package/lib/commands/notification/index.js +1 -1
  152. package/lib/commands/notification/shared.js +1 -1
  153. package/lib/commands/ocr/index.js +1 -1
  154. package/lib/commands/page/create.js +1 -1
  155. package/lib/commands/page/custom/detail.js +1 -1
  156. package/lib/commands/page/custom/list.js +1 -1
  157. package/lib/commands/page/custom/publish.js +1 -1
  158. package/lib/commands/page/custom/shared.js +1 -1
  159. package/lib/commands/page/custom/syntax.js +1 -1
  160. package/lib/commands/page/custom/template.js +1 -1
  161. package/lib/commands/page/custom/update.js +1 -1
  162. package/lib/commands/page/data-list-status.js +1 -1
  163. package/lib/commands/page/generate-start.js +1 -1
  164. package/lib/commands/page/generate-status.js +1 -1
  165. package/lib/commands/page/index.js +1 -1
  166. package/lib/commands/page/pull.js +1 -1
  167. package/lib/commands/page/push.js +1 -1
  168. package/lib/commands/page/relation-audit.js +1 -1
  169. package/lib/commands/page/restore.js +1 -1
  170. package/lib/commands/page/shared.js +1 -1
  171. package/lib/commands/page/sync.js +1 -1
  172. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  173. package/lib/commands/project/create/format-elapsed.js +1 -1
  174. package/lib/commands/project/create/main.js +1 -1
  175. package/lib/commands/project/create/materialize-project-template.js +1 -1
  176. package/lib/commands/project/create/project-name.js +1 -1
  177. package/lib/commands/project/create/project-template-archive.js +1 -1
  178. package/lib/commands/project/create/project-template-path.js +1 -1
  179. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  180. package/lib/commands/project/create/use-format-code.js +1 -1
  181. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  182. package/lib/commands/project/index.js +1 -1
  183. package/lib/commands/project/upgrade.js +1 -1
  184. package/lib/commands/registry.js +1 -1
  185. package/lib/commands/role/delete.js +1 -1
  186. package/lib/commands/role/detail.js +1 -1
  187. package/lib/commands/role/index.js +1 -1
  188. package/lib/commands/role/list.js +1 -1
  189. package/lib/commands/role/shared.js +1 -1
  190. package/lib/commands/role/update.js +1 -1
  191. package/lib/commands/role/user-add.js +1 -1
  192. package/lib/commands/role/user-remove.js +1 -1
  193. package/lib/commands/role/user-resolve.js +1 -1
  194. package/lib/commands/run/index.js +1 -1
  195. package/lib/commands/schema.js +1 -1
  196. package/lib/commands/sql/create.js +1 -1
  197. package/lib/commands/sql/delete.js +1 -1
  198. package/lib/commands/sql/detail.js +1 -1
  199. package/lib/commands/sql/exec.js +1 -1
  200. package/lib/commands/sql/index.js +1 -1
  201. package/lib/commands/sql/list.js +1 -1
  202. package/lib/commands/sql/pull.js +1 -1
  203. package/lib/commands/sql/push.js +1 -1
  204. package/lib/commands/sql/shared.js +1 -1
  205. package/lib/commands/sql/status.js +1 -1
  206. package/lib/commands/sql/validate.js +1 -1
  207. package/lib/commands/task/index.js +1 -1
  208. package/lib/commands/task/status.js +1 -1
  209. package/lib/commands/tenant/index.js +1 -1
  210. package/lib/commands/tenant/members-list.js +1 -1
  211. package/lib/commands/tenant/shared.js +1 -1
  212. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  213. package/lib/commands/user-account/index.js +1 -1
  214. package/lib/commands/workspace/add.js +1 -1
  215. package/lib/commands/workspace/index.js +1 -1
  216. package/lib/commands/workspace/remove.js +1 -1
  217. package/lib/config/deployment-sync.d.ts +10 -0
  218. package/lib/config/deployment-sync.js +1 -0
  219. package/lib/config/domain-config.d.ts +1 -1
  220. package/lib/config/domain-config.js +1 -1
  221. package/lib/config/project-routing.js +1 -1
  222. package/lib/config/schema.d.ts +1 -1
  223. package/lib/config/schema.js +1 -1
  224. package/lib/constant/cdn.js +1 -1
  225. package/lib/constant/cli.js +1 -1
  226. package/lib/constant/defaults.js +1 -1
  227. package/lib/constant/domain.d.ts +2 -0
  228. package/lib/constant/domain.js +1 -1
  229. package/lib/constant/env.js +1 -1
  230. package/lib/constant/output.js +1 -1
  231. package/lib/constant/paths.js +1 -1
  232. package/lib/constant/region.js +1 -1
  233. package/lib/constant/risk.js +1 -1
  234. package/lib/constant/routing-profile.js +1 -1
  235. package/lib/context/app-resolver.d.ts +2 -0
  236. package/lib/context/app-resolver.js +1 -1
  237. package/lib/context/auth-resolver.js +1 -1
  238. package/lib/context/config-loader.js +1 -1
  239. package/lib/context.js +1 -1
  240. package/lib/core/alias-resolver.js +1 -1
  241. package/lib/core/api-client.d.ts +35 -16
  242. package/lib/core/api-client.js +1 -1
  243. package/lib/core/bff/config.js +1 -1
  244. package/lib/core/bff/file-system.js +1 -1
  245. package/lib/core/bff/hash.js +1 -1
  246. package/lib/core/bff/lock.js +1 -1
  247. package/lib/core/bff/utils.js +1 -1
  248. package/lib/core/db-resolver.js +1 -1
  249. package/lib/core/kb-search-client.d.ts +30 -0
  250. package/lib/core/kb-search-client.js +1 -0
  251. package/lib/core/page/file-system.js +1 -1
  252. package/lib/core/page/hash.js +1 -1
  253. package/lib/core/page/lock.js +1 -1
  254. package/lib/core/sql-index-auditor.js +1 -1
  255. package/lib/core/sql-sync/config.js +1 -1
  256. package/lib/core/sql-sync/file-system.js +1 -1
  257. package/lib/core/sql-sync/hash.js +1 -1
  258. package/lib/core/sql-sync/lock.js +1 -1
  259. package/lib/core/sql-sync/utils.js +1 -1
  260. package/lib/core/sql-validator.js +1 -1
  261. package/lib/errors.js +1 -1
  262. package/lib/framework/build-all-flags.js +1 -1
  263. package/lib/framework/error-output.js +1 -1
  264. package/lib/framework/explicit-yes.js +1 -1
  265. package/lib/framework/flags.js +1 -1
  266. package/lib/framework/help.js +1 -1
  267. package/lib/framework/index.js +1 -1
  268. package/lib/framework/output.js +1 -1
  269. package/lib/framework/response.js +1 -1
  270. package/lib/framework/runner-alias.js +1 -1
  271. package/lib/framework/runner.js +1 -1
  272. package/lib/framework/schema-export.js +1 -1
  273. package/lib/framework/types.d.ts +5 -0
  274. package/lib/framework/types.js +1 -1
  275. package/lib/generated/build-info.d.ts +4 -4
  276. package/lib/generated/build-info.js +1 -1
  277. package/lib/help.js +1 -1
  278. package/lib/postinstall.js +1 -1
  279. package/lib/runtime/confirmation.js +1 -1
  280. package/lib/runtime/event.js +1 -1
  281. package/lib/runtime/index.js +1 -1
  282. package/lib/runtime/queue.js +1 -1
  283. package/lib/runtime/resolve.js +1 -1
  284. package/lib/skills/builtin-skill.js +1 -1
  285. package/lib/skills/main.js +1 -1
  286. package/lib/skills/npx-skills-add.js +1 -1
  287. package/lib/skills/skill-presence.js +1 -1
  288. package/lib/telemetry/cli-command-trace.js +1 -1
  289. package/lib/telemetry/cli-help-trace.js +1 -1
  290. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  291. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  292. package/lib/telemetry/send-cli-trace-log.js +1 -1
  293. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  294. package/lib/utils/ai_config.js +1 -1
  295. package/lib/utils/apply-jq-filter.js +1 -1
  296. package/lib/utils/cdn-config.js +1 -1
  297. package/lib/utils/check-sdk-version.js +1 -1
  298. package/lib/utils/cli-version-check.js +1 -1
  299. package/lib/utils/cli-version-policy.js +1 -1
  300. package/lib/utils/config.js +1 -1
  301. package/lib/utils/entity-with-id.js +1 -1
  302. package/lib/utils/file-utils.js +1 -1
  303. package/lib/utils/guides-cdn.js +1 -1
  304. package/lib/utils/http-client.js +1 -1
  305. package/lib/utils/is-non-interactive.js +1 -1
  306. package/lib/utils/logger.js +1 -1
  307. package/lib/utils/params.js +1 -1
  308. package/lib/utils/platform.js +1 -1
  309. package/lib/utils/sleep.js +1 -1
  310. package/lib/utils/template-replacer.js +1 -1
  311. package/lib/utils/update-notice.js +1 -1
  312. package/lib/utils/version.js +1 -1
  313. package/lib/utils/with-active-cookie.js +1 -1
  314. package/lib/utils/write-cli-side-channel.js +1 -1
  315. package/package.json +1 -1
  316. package/skills/rabetbase/SKILL.md +12 -6
  317. package/skills/rabetbase/references/rabetbase-config.md +4 -1
  318. package/skills/rabetbase/references/rabetbase-dataset-business-group-update.md +9 -9
  319. package/skills/rabetbase/references/rabetbase-dataset-business-groups.md +1 -1
  320. package/skills/rabetbase/references/rabetbase-dataset-field-restore.md +59 -0
  321. package/skills/rabetbase/references/rabetbase-dataset-user-deleted-field-list.md +47 -0
  322. package/skills/rabetbase/references/rabetbase-deployment-sync.md +92 -0
  323. package/skills/rabetbase/references/rabetbase-doctor.md +1 -1
  324. package/skills/rabetbase/references/rabetbase-init.md +2 -0
  325. package/skills/rabetbase/references/rabetbase-kb.md +7 -7
  326. package/skills/rabetbase.manifest.json +6 -3
@@ -1 +1 @@
1
- const a108_0x4197b7=a108_0x6d90;(function(_0x28f44c,_0x1cf784){const _0x335c6c=a108_0x6d90,_0x449010=_0x28f44c();while(!![]){try{const _0x40908d=parseInt(_0x335c6c(0x108))/0x1*(-parseInt(_0x335c6c(0x12c))/0x2)+-parseInt(_0x335c6c(0x10b))/0x3*(parseInt(_0x335c6c(0x123))/0x4)+-parseInt(_0x335c6c(0x128))/0x5*(parseInt(_0x335c6c(0x125))/0x6)+-parseInt(_0x335c6c(0xf6))/0x7*(-parseInt(_0x335c6c(0x114))/0x8)+parseInt(_0x335c6c(0xf8))/0x9+parseInt(_0x335c6c(0x111))/0xa*(-parseInt(_0x335c6c(0x104))/0xb)+-parseInt(_0x335c6c(0x117))/0xc*(-parseInt(_0x335c6c(0x11d))/0xd);if(_0x40908d===_0x1cf784)break;else _0x449010['push'](_0x449010['shift']());}catch(_0x416769){_0x449010['push'](_0x449010['shift']());}}}(a108_0xed57,0x75766));import{isPlatformTransportFailure,updateEnterpriseKnowledgeBase}from'../../core/api-client.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCompanyKnowledgeBase,assertExpectedKbVersion,inspectKbContent,kbError,projectKb,readKbFile,readKbId,requireKb,verifyKbMutationReadback}from'../../commands/kb/shared.js';const UPDATE_PATH='/admin/knowledge-base/update',NON_ATOMIC_WARNING=a108_0x4197b7(0x12d);function a108_0xed57(){const _0x3f8a20=['trim','kb_file_required','cookie','kb_expected_version_invalid','contentHash','string','company','Company\x20knowledge\x20base\x20','rabetbase\x20kb\x20detail\x20--id\x20','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','50259zGcOWt','isSafeInteger','Nothing\x20to\x20update.','update','1qpnWoc','kb_verification_failed','Company\x20knowledge-base\x20id','2332965tJDXxF','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','replacement','expected-version','appCode','1710qhmhFv','--file\x20cannot\x20be\x20empty.','expectedVersion','8GRdqiq','write','kb_title_invalid','2599836cQdfKw','--title\x20cannot\x20be\x20empty.','patch','push','content','beforeRecord','156lDmNkn','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','title','planned','number','flag','4dwecxf','snapshotHash','138UKJAGR','kb_update_empty','POST','65730GKSBbg','file','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','version','1559468BelGLO','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','Updated\x20company\x20knowledge\x20base\x20','New\x20knowledge-base\x20title','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','1830899CopqeY','before','2347011McHKjK','\x20--format\x20compress'];a108_0xed57=function(){return _0x3f8a20;};return a108_0xed57();}function readUpdatePatch(_0x411a86){const _0x713773=a108_0x4197b7,_0xa7a86d=readKbId(_0x411a86),_0x2d1500=_0x411a86[_0x713773(0x122)]('title'),_0x1c4bb5=_0x411a86[_0x713773(0x122)](_0x713773(0x129)),_0x523e64=_0x411a86[_0x713773(0x122)](_0x713773(0x10f)),_0x4c5106=_0x2d1500===undefined?undefined:String(_0x2d1500)[_0x713773(0xfa)]();if(_0x2d1500!==undefined&&!_0x4c5106)throw kbError(_0x713773(0x116),_0x713773(0x118));const _0x3ce2b7=_0x1c4bb5===undefined?undefined:String(_0x1c4bb5)[_0x713773(0xfa)]();if(_0x1c4bb5!==undefined&&!_0x3ce2b7)throw kbError(_0x713773(0xfb),_0x713773(0x112));if(_0x4c5106===undefined&&_0x3ce2b7===undefined)throw kbError(_0x713773(0x126),_0x713773(0x106),_0x713773(0x12e));let _0x145ed1;if(_0x523e64!==undefined){_0x145ed1=Number(_0x523e64);if(!Number[_0x713773(0x105)](_0x145ed1)||_0x145ed1<0x0)throw kbError(_0x713773(0xfd),_0x713773(0x103));}return{'id':_0xa7a86d,'title':_0x4c5106,'file':_0x3ce2b7,'expectedVersion':_0x145ed1};}function a108_0x6d90(_0x7a59c5,_0x1c4242){_0x7a59c5=_0x7a59c5-0xf5;const _0xed57a9=a108_0xed57();let _0x6d90d8=_0xed57a9[_0x7a59c5];return _0x6d90d8;}async function prepareUpdate(_0x3dbe8a){const _0x423b4d=a108_0x4197b7,_0x5a88f2=readUpdatePatch(_0x3dbe8a),_0x18c051=await requireKb(_0x3dbe8a,_0x5a88f2['id']);assertExpectedKbVersion(_0x18c051,_0x5a88f2['expectedVersion']);const _0x20a939=_0x5a88f2[_0x423b4d(0x129)]?await readKbFile(_0x5a88f2[_0x423b4d(0x129)]):undefined,_0x5926ea=projectKb(_0x18c051),_0x4e1af5=projectKb({..._0x18c051,..._0x5a88f2['title']!==undefined?{'title':_0x5a88f2[_0x423b4d(0x11f)]}:{},..._0x20a939?{'content':_0x20a939[_0x423b4d(0x11b)]}:{}});return{'patch':_0x5a88f2,'beforeRecord':_0x18c051,'before':_0x5926ea,'planned':_0x4e1af5,'replacement':_0x20a939};}export const kbUpdate={'service':'kb','command':a108_0x4197b7(0x107),'description':'Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','risk':a108_0x4197b7(0x115),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':a108_0x4197b7(0x121),'required':!![],'description':a108_0x4197b7(0x10a)},{'name':a108_0x4197b7(0x11f),'type':a108_0x4197b7(0xff),'required':![],'description':a108_0x4197b7(0x130)},{'name':a108_0x4197b7(0x129),'type':a108_0x4197b7(0xff),'required':![],'description':a108_0x4197b7(0x10d)},{'name':'expected-version','type':'number','required':![],'description':a108_0x4197b7(0x11e)}],async 'validate'(_0x5f5500){readUpdatePatch(_0x5f5500);},async 'dryRun'(_0x2d7cdf){const _0x427a30=a108_0x4197b7,_0x487379=await prepareUpdate(_0x2d7cdf),_0x2c250=_0x487379['patch'][_0x427a30(0x113)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x427a30(0x107),'selector':{'id':_0x487379[_0x427a30(0xf7)]['id'],'scope':_0x427a30(0x100),'appCode':_0x487379[_0x427a30(0xf7)][_0x427a30(0x110)]},'before':_0x487379[_0x427a30(0xf7)],'after':_0x487379[_0x427a30(0x120)],'dryRun':!![],'backend':{'method':_0x427a30(0x127),'path':UPDATE_PATH},'warnings':_0x2c250,'verification':{'expectedVersion':_0x487379[_0x427a30(0x119)][_0x427a30(0x113)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x487379[_0x427a30(0xf7)][_0x427a30(0x124)],'lookupCommand':'rabetbase\x20kb\x20detail\x20--id\x20'+_0x487379['before']['id']+_0x427a30(0xf9)}},{'method':_0x427a30(0x127),'url':UPDATE_PATH});},async 'execute'(_0x23926c){const _0x3596f4=a108_0x4197b7,_0x38ad33=await prepareUpdate(_0x23926c),_0xf70416={'id':_0x38ad33[_0x3596f4(0x119)]['id'],..._0x38ad33['patch'][_0x3596f4(0x11f)]!==undefined?{'title':_0x38ad33[_0x3596f4(0x119)][_0x3596f4(0x11f)]}:{},..._0x38ad33['replacement']?{'content':_0x38ad33[_0x3596f4(0x10e)][_0x3596f4(0x11b)]}:{}};let _0x1015e6=![];try{const _0x190406=await updateEnterpriseKnowledgeBase(_0x23926c[_0x3596f4(0xfc)],_0xf70416);assertCompanyKnowledgeBase(_0x190406,_0x23926c[_0x3596f4(0x110)],_0x38ad33['patch']['id']);}catch(_0x56fa01){if(!isPlatformTransportFailure(_0x56fa01))throw _0x56fa01;_0x1015e6=!![];}const _0x5b7b67=await verifyKbMutationReadback('update',_0x1015e6,()=>requireKb(_0x23926c,_0x38ad33[_0x3596f4(0x119)]['id'])),_0x1db0e5=projectKb(_0x5b7b67),_0x582944=_0x38ad33['patch']['title']===undefined||_0x5b7b67[_0x3596f4(0x11f)]===_0x38ad33[_0x3596f4(0x119)]['title'],_0x444bc4=!_0x38ad33[_0x3596f4(0x10e)]||inspectKbContent(_0x5b7b67['content'])[_0x3596f4(0xfe)]===_0x38ad33[_0x3596f4(0x10e)][_0x3596f4(0xfe)],_0x3a14a1=!_0x38ad33['replacement']||_0x5b7b67[_0x3596f4(0x12b)]>_0x38ad33[_0x3596f4(0x11c)][_0x3596f4(0x12b)],_0x1d5343=!_0x1015e6||_0x38ad33[_0x3596f4(0x10e)]!==undefined||_0x38ad33[_0x3596f4(0x119)]['title']===undefined||_0x38ad33[_0x3596f4(0x11c)]['title']!==_0x38ad33[_0x3596f4(0x119)][_0x3596f4(0x11f)];if(!_0x582944||!_0x444bc4||!_0x3a14a1||!_0x1d5343)throw kbError(_0x1015e6?'kb_update_outcome_unknown':_0x3596f4(0x109),_0x3596f4(0x101)+_0x38ad33[_0x3596f4(0x119)]['id']+_0x3596f4(0xf5),'Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20'+_0x38ad33[_0x3596f4(0x119)]['id']+_0x3596f4(0x10c));const _0x51a449=[];return _0x38ad33[_0x3596f4(0x119)][_0x3596f4(0x113)]!==undefined&&_0x51a449['push'](NON_ATOMIC_WARNING),_0x1015e6&&_0x51a449[_0x3596f4(0x11a)](_0x3596f4(0x12a)),{'ok':!![],'data':{'operation':'update','selector':{'id':_0x1db0e5['id'],'scope':_0x3596f4(0x100),'appCode':_0x1db0e5[_0x3596f4(0x110)]},'before':_0x38ad33['before'],'after':_0x1db0e5,'dryRun':![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0x51a449,'verification':{'status':'verified','recoveredAfterUnknownResponse':_0x1015e6,'expectedVersion':_0x38ad33[_0x3596f4(0x119)][_0x3596f4(0x113)]??null,'atomicCompareAndSet':![],'lookupCommand':_0x3596f4(0x102)+_0x1db0e5['id']+_0x3596f4(0xf9)}},'message':_0x3596f4(0x12f)+_0x1db0e5['id']};}};
1
+ const a113_0x154fee=a113_0x3bd0;(function(_0x121068,_0x212a2e){const _0x5b0d7c=a113_0x3bd0,_0x390697=_0x121068();while(!![]){try{const _0x17043e=parseInt(_0x5b0d7c(0x1a8))/0x1*(parseInt(_0x5b0d7c(0x1c5))/0x2)+-parseInt(_0x5b0d7c(0x18e))/0x3*(-parseInt(_0x5b0d7c(0x1a2))/0x4)+parseInt(_0x5b0d7c(0x192))/0x5+-parseInt(_0x5b0d7c(0x19f))/0x6*(parseInt(_0x5b0d7c(0x1a4))/0x7)+-parseInt(_0x5b0d7c(0x1b0))/0x8*(-parseInt(_0x5b0d7c(0x198))/0x9)+-parseInt(_0x5b0d7c(0x1b6))/0xa+-parseInt(_0x5b0d7c(0x19a))/0xb;if(_0x17043e===_0x212a2e)break;else _0x390697['push'](_0x390697['shift']());}catch(_0x4f711b){_0x390697['push'](_0x390697['shift']());}}}(a113_0x283a,0x7668c));function a113_0x3bd0(_0xacd03,_0x28aa87){_0xacd03=_0xacd03-0x18c;const _0x283a65=a113_0x283a();let _0x3bd0f5=_0x283a65[_0xacd03];return _0x3bd0f5;}import{isPlatformTransportFailure,updateEnterpriseKnowledgeBase}from'../../core/api-client.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a113_0x283a(){const _0x377797=['--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','write','7176LvmgMd','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','rabetbase\x20kb\x20detail\x20--id\x20','expected-version','503825GAPtSQ','trim','file','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','title','2205MnBcrW','verified','3858019APGrQo','replacement','appCode','string','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','948wCkFfR','isSafeInteger','patch','64xVAWhC','contentHash','16247zjLwfs','kb_update_empty','New\x20knowledge-base\x20title','number','7GJUCjV','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','planned','flag','snapshotHash','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','Company\x20knowledge\x20base\x20','/admin/knowledge-base/update','15344iDiAPK','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','kb_expected_version_invalid','Updated\x20company\x20knowledge\x20base\x20','--title\x20cannot\x20be\x20empty.','cookie','717830jUftVV','kb_file_required','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','POST','Company\x20knowledge-base\x20id','expectedVersion','beforeRecord','before','company','push','update','Nothing\x20to\x20update.','content','kb_update_outcome_unknown','kb_title_invalid','190082hfOzSg','\x20--format\x20compress','version'];a113_0x283a=function(){return _0x377797;};return a113_0x283a();}import{assertCompanyKnowledgeBase,assertExpectedKbVersion,inspectKbContent,kbError,projectKb,readKbFile,readKbId,requireKb,verifyKbMutationReadback}from'../../commands/kb/shared.js';const UPDATE_PATH=a113_0x154fee(0x1af),NON_ATOMIC_WARNING=a113_0x154fee(0x18c);function readUpdatePatch(_0x5d4639){const _0x260a0c=a113_0x154fee,_0x5c9361=readKbId(_0x5d4639),_0x2f283f=_0x5d4639['flag']('title'),_0x30ffb7=_0x5d4639['flag'](_0x260a0c(0x194)),_0xae9a89=_0x5d4639[_0x260a0c(0x1ab)]('expected-version'),_0x28b4a6=_0x2f283f===undefined?undefined:String(_0x2f283f)['trim']();if(_0x2f283f!==undefined&&!_0x28b4a6)throw kbError(_0x260a0c(0x1c4),_0x260a0c(0x1b4));const _0x35e0f3=_0x30ffb7===undefined?undefined:String(_0x30ffb7)[_0x260a0c(0x193)]();if(_0x30ffb7!==undefined&&!_0x35e0f3)throw kbError(_0x260a0c(0x1b7),'--file\x20cannot\x20be\x20empty.');if(_0x28b4a6===undefined&&_0x35e0f3===undefined)throw kbError(_0x260a0c(0x1a5),_0x260a0c(0x1c1),_0x260a0c(0x196));let _0x3e7729;if(_0xae9a89!==undefined){_0x3e7729=Number(_0xae9a89);if(!Number[_0x260a0c(0x1a0)](_0x3e7729)||_0x3e7729<0x0)throw kbError(_0x260a0c(0x1b2),_0x260a0c(0x19e));}return{'id':_0x5c9361,'title':_0x28b4a6,'file':_0x35e0f3,'expectedVersion':_0x3e7729};}async function prepareUpdate(_0x1f424f){const _0x2dc4f2=a113_0x154fee,_0x12b68d=readUpdatePatch(_0x1f424f),_0xcb472a=await requireKb(_0x1f424f,_0x12b68d['id']);assertExpectedKbVersion(_0xcb472a,_0x12b68d[_0x2dc4f2(0x1bb)]);const _0x3bc8af=_0x12b68d['file']?await readKbFile(_0x12b68d[_0x2dc4f2(0x194)]):undefined,_0xb900bb=projectKb(_0xcb472a),_0x3c2ea4=projectKb({..._0xcb472a,..._0x12b68d[_0x2dc4f2(0x197)]!==undefined?{'title':_0x12b68d[_0x2dc4f2(0x197)]}:{},..._0x3bc8af?{'content':_0x3bc8af['content']}:{}});return{'patch':_0x12b68d,'beforeRecord':_0xcb472a,'before':_0xb900bb,'planned':_0x3c2ea4,'replacement':_0x3bc8af};}export const kbUpdate={'service':'kb','command':a113_0x154fee(0x1c0),'description':a113_0x154fee(0x18f),'risk':a113_0x154fee(0x18d),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':a113_0x154fee(0x1a7),'required':!![],'description':a113_0x154fee(0x1ba)},{'name':a113_0x154fee(0x197),'type':a113_0x154fee(0x19d),'required':![],'description':a113_0x154fee(0x1a6)},{'name':a113_0x154fee(0x194),'type':a113_0x154fee(0x19d),'required':![],'description':a113_0x154fee(0x1a9)},{'name':a113_0x154fee(0x191),'type':a113_0x154fee(0x1a7),'required':![],'description':a113_0x154fee(0x1b8)}],async 'validate'(_0x1bed67){readUpdatePatch(_0x1bed67);},async 'dryRun'(_0x59b197){const _0x46eb8a=a113_0x154fee,_0x5b3ad7=await prepareUpdate(_0x59b197),_0x37fa8c=_0x5b3ad7[_0x46eb8a(0x1a1)]['expectedVersion']!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x46eb8a(0x1c0),'selector':{'id':_0x5b3ad7[_0x46eb8a(0x1bd)]['id'],'scope':'company','appCode':_0x5b3ad7['before'][_0x46eb8a(0x19c)]},'before':_0x5b3ad7['before'],'after':_0x5b3ad7[_0x46eb8a(0x1aa)],'dryRun':!![],'backend':{'method':_0x46eb8a(0x1b9),'path':UPDATE_PATH},'warnings':_0x37fa8c,'verification':{'expectedVersion':_0x5b3ad7['patch'][_0x46eb8a(0x1bb)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x5b3ad7['before'][_0x46eb8a(0x1ac)],'lookupCommand':_0x46eb8a(0x190)+_0x5b3ad7['before']['id']+_0x46eb8a(0x1c6)}},{'method':_0x46eb8a(0x1b9),'url':UPDATE_PATH});},async 'execute'(_0x1bb5eb){const _0x459ef7=a113_0x154fee,_0x379241=await prepareUpdate(_0x1bb5eb),_0x2c8c3f={'id':_0x379241[_0x459ef7(0x1a1)]['id'],..._0x379241[_0x459ef7(0x1a1)][_0x459ef7(0x197)]!==undefined?{'title':_0x379241[_0x459ef7(0x1a1)][_0x459ef7(0x197)]}:{},..._0x379241[_0x459ef7(0x19b)]?{'content':_0x379241['replacement']['content']}:{}};let _0xdcabc8=![];try{const _0x5d3819=await updateEnterpriseKnowledgeBase(_0x1bb5eb[_0x459ef7(0x1b5)],_0x2c8c3f);assertCompanyKnowledgeBase(_0x5d3819,_0x1bb5eb[_0x459ef7(0x19c)],_0x379241[_0x459ef7(0x1a1)]['id']);}catch(_0x5050ab){if(!isPlatformTransportFailure(_0x5050ab))throw _0x5050ab;_0xdcabc8=!![];}const _0x2309ea=await verifyKbMutationReadback(_0x459ef7(0x1c0),_0xdcabc8,()=>requireKb(_0x1bb5eb,_0x379241['patch']['id'])),_0x251f85=projectKb(_0x2309ea),_0x663b8=_0x379241['patch']['title']===undefined||_0x2309ea['title']===_0x379241[_0x459ef7(0x1a1)][_0x459ef7(0x197)],_0x4aa9c2=!_0x379241['replacement']||inspectKbContent(_0x2309ea[_0x459ef7(0x1c2)])[_0x459ef7(0x1a3)]===_0x379241[_0x459ef7(0x19b)][_0x459ef7(0x1a3)],_0x9dd634=!_0x379241[_0x459ef7(0x19b)]||_0x2309ea[_0x459ef7(0x1c7)]>_0x379241['beforeRecord']['version'],_0x3b82a2=!_0xdcabc8||_0x379241[_0x459ef7(0x19b)]!==undefined||_0x379241['patch'][_0x459ef7(0x197)]===undefined||_0x379241[_0x459ef7(0x1bc)][_0x459ef7(0x197)]!==_0x379241['patch']['title'];if(!_0x663b8||!_0x4aa9c2||!_0x9dd634||!_0x3b82a2)throw kbError(_0xdcabc8?_0x459ef7(0x1c3):'kb_verification_failed',_0x459ef7(0x1ae)+_0x379241[_0x459ef7(0x1a1)]['id']+_0x459ef7(0x1b1),_0x459ef7(0x1ad)+_0x379241['patch']['id']+_0x459ef7(0x195));const _0x59201f=[];return _0x379241['patch']['expectedVersion']!==undefined&&_0x59201f['push'](NON_ATOMIC_WARNING),_0xdcabc8&&_0x59201f[_0x459ef7(0x1bf)]('Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.'),{'ok':!![],'data':{'operation':'update','selector':{'id':_0x251f85['id'],'scope':_0x459ef7(0x1be),'appCode':_0x251f85['appCode']},'before':_0x379241[_0x459ef7(0x1bd)],'after':_0x251f85,'dryRun':![],'backend':{'method':_0x459ef7(0x1b9),'path':UPDATE_PATH},'warnings':_0x59201f,'verification':{'status':_0x459ef7(0x199),'recoveredAfterUnknownResponse':_0xdcabc8,'expectedVersion':_0x379241[_0x459ef7(0x1a1)][_0x459ef7(0x1bb)]??null,'atomicCompareAndSet':![],'lookupCommand':_0x459ef7(0x190)+_0x251f85['id']+_0x459ef7(0x1c6)}},'message':_0x459ef7(0x1b3)+_0x251f85['id']};}};
@@ -1 +1 @@
1
- const a109_0x2681aa=a109_0x9ee3;function a109_0x9ee3(_0x4d264b,_0x2fcebc){_0x4d264b=_0x4d264b-0x1c2;const _0x4ab7f9=a109_0x4ab7();let _0x9ee3b4=_0x4ab7f9[_0x4d264b];return _0x9ee3b4;}function a109_0x4ab7(){const _0x2977c9=['\x20\x20\x20Time:\x20','41222WEVZfo','20595906xKxJed','details','readLogs','1762146uKDLfn','\x20\x20\x20Details:\x20','\x20\x20\x20Duration:\x20','warn','32aLIqln','show','stringify','read','*\x20Lovrabet\x20CLI\x20logs:\x0a','clearLogs','forEach','message','keys','*\x20Logs\x20cleared','duration','1193332gxjQDd','timestamp','toLocaleString','log','6507944UrcKMv','2345568DxjAAD','1105SSclIX','level','length','10208rIexRY','write','command','clear','en-US'];a109_0x4ab7=function(){return _0x2977c9;};return a109_0x4ab7();}(function(_0x369d4f,_0x3dccc7){const _0x16bdb6=a109_0x9ee3,_0x5da2cf=_0x369d4f();while(!![]){try{const _0x5d9f20=parseInt(_0x16bdb6(0x1c6))/0x1*(-parseInt(_0x16bdb6(0x1e0))/0x2)+-parseInt(_0x16bdb6(0x1c2))/0x3+-parseInt(_0x16bdb6(0x1da))/0x4*(-parseInt(_0x16bdb6(0x1d7))/0x5)+-parseInt(_0x16bdb6(0x1d6))/0x6+parseInt(_0x16bdb6(0x1d1))/0x7+-parseInt(_0x16bdb6(0x1d5))/0x8+parseInt(_0x16bdb6(0x1e1))/0x9;if(_0x5d9f20===_0x3dccc7)break;else _0x5da2cf['push'](_0x5da2cf['shift']());}catch(_0x3cdd32){_0x5da2cf['push'](_0x5da2cf['shift']());}}}(a109_0x4ab7,0x8b89b));import{logger}from'../../utils/logger.js';function printLogs(_0x1bdae1){const _0xfee405=a109_0x9ee3;if(_0x1bdae1[_0xfee405(0x1d9)]===0x0){console[_0xfee405(0x1d4)]('*\x20No\x20logs\x20found');return;}console['log'](_0xfee405(0x1ca)),_0x1bdae1[_0xfee405(0x1cc)]((_0x1f642b,_0x1ac80c)=>{const _0x20cc9f=_0xfee405,_0xe9e5ec=new Date(_0x1f642b[_0x20cc9f(0x1d2)])[_0x20cc9f(0x1d3)](_0x20cc9f(0x1de)),_0x29629a=_0x1f642b[_0x20cc9f(0x1d8)]==='success'?'√':_0x1f642b[_0x20cc9f(0x1d8)]==='error'?'×':_0x1f642b[_0x20cc9f(0x1d8)]===_0x20cc9f(0x1c5)?'!':'i';console[_0x20cc9f(0x1d4)](_0x1ac80c+0x1+'.\x20'+_0x29629a+'\x20['+_0x1f642b[_0x20cc9f(0x1dc)]+']\x20'+_0x1f642b[_0x20cc9f(0x1cd)]),console[_0x20cc9f(0x1d4)](_0x20cc9f(0x1df)+_0xe9e5ec),_0x1f642b['duration']&&console[_0x20cc9f(0x1d4)](_0x20cc9f(0x1c4)+_0x1f642b[_0x20cc9f(0x1d0)]+'ms'),_0x1f642b[_0x20cc9f(0x1e2)]&&Object[_0x20cc9f(0x1ce)](_0x1f642b[_0x20cc9f(0x1e2)])[_0x20cc9f(0x1d9)]>0x0&&console[_0x20cc9f(0x1d4)](_0x20cc9f(0x1c3)+JSON[_0x20cc9f(0x1c8)](_0x1f642b[_0x20cc9f(0x1e2)],null,0x2)),console[_0x20cc9f(0x1d4)]('');});}export const logsDefinitions=[{'service':'logs','command':a109_0x2681aa(0x1c7),'description':'View\x20command\x20history\x20logs','risk':a109_0x2681aa(0x1c9),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x75950a){const _0x331057=a109_0x2681aa;return printLogs(logger[_0x331057(0x1e3)]()),{'ok':!![]};}},{'service':'logs','command':a109_0x2681aa(0x1dd),'description':'Clear\x20command\x20history\x20logs','risk':a109_0x2681aa(0x1db),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x39a56f){const _0xda9a85=a109_0x2681aa;return logger[_0xda9a85(0x1cb)](),console[_0xda9a85(0x1d4)](_0xda9a85(0x1cf)),{'ok':!![]};}}];
1
+ const a114_0x1b7951=a114_0x82eb;(function(_0x4f8616,_0x4456bf){const _0x5a5708=a114_0x82eb,_0x2c3cf5=_0x4f8616();while(!![]){try{const _0x198b13=parseInt(_0x5a5708(0x92))/0x1+parseInt(_0x5a5708(0x9a))/0x2+parseInt(_0x5a5708(0x99))/0x3*(-parseInt(_0x5a5708(0xa3))/0x4)+parseInt(_0x5a5708(0x82))/0x5*(-parseInt(_0x5a5708(0xa4))/0x6)+-parseInt(_0x5a5708(0x8a))/0x7*(parseInt(_0x5a5708(0x91))/0x8)+-parseInt(_0x5a5708(0x89))/0x9*(parseInt(_0x5a5708(0x8f))/0xa)+parseInt(_0x5a5708(0x85))/0xb*(parseInt(_0x5a5708(0x98))/0xc);if(_0x198b13===_0x4456bf)break;else _0x2c3cf5['push'](_0x2c3cf5['shift']());}catch(_0xac7e59){_0x2c3cf5['push'](_0x2c3cf5['shift']());}}}(a114_0x29a0,0x1a299));function a114_0x82eb(_0x5e1ced,_0x1a8432){_0x5e1ced=_0x5e1ced-0x82;const _0x29a042=a114_0x29a0();let _0x82ebcd=_0x29a042[_0x5e1ced];return _0x82ebcd;}import{logger}from'../../utils/logger.js';function printLogs(_0x547c12){const _0x453385=a114_0x82eb;if(_0x547c12[_0x453385(0x87)]===0x0){console[_0x453385(0x93)]('*\x20No\x20logs\x20found');return;}console[_0x453385(0x93)](_0x453385(0x9d)),_0x547c12[_0x453385(0x97)]((_0x48a2e7,_0x37c21a)=>{const _0x2c03a7=_0x453385,_0x16ff3b=new Date(_0x48a2e7['timestamp'])[_0x2c03a7(0x9f)](_0x2c03a7(0x8c)),_0x3359df=_0x48a2e7[_0x2c03a7(0x8d)]===_0x2c03a7(0xa6)?'√':_0x48a2e7[_0x2c03a7(0x8d)]===_0x2c03a7(0xa1)?'×':_0x48a2e7[_0x2c03a7(0x8d)]==='warn'?'!':'i';console[_0x2c03a7(0x93)](_0x37c21a+0x1+'.\x20'+_0x3359df+'\x20['+_0x48a2e7[_0x2c03a7(0x95)]+']\x20'+_0x48a2e7[_0x2c03a7(0x88)]),console[_0x2c03a7(0x93)](_0x2c03a7(0xa0)+_0x16ff3b),_0x48a2e7[_0x2c03a7(0xa5)]&&console[_0x2c03a7(0x93)](_0x2c03a7(0x9c)+_0x48a2e7['duration']+'ms'),_0x48a2e7[_0x2c03a7(0x9e)]&&Object[_0x2c03a7(0x8e)](_0x48a2e7[_0x2c03a7(0x9e)])[_0x2c03a7(0x87)]>0x0&&console[_0x2c03a7(0x93)]('\x20\x20\x20Details:\x20'+JSON['stringify'](_0x48a2e7['details'],null,0x2)),console[_0x2c03a7(0x93)]('');});}function a114_0x29a0(){const _0x5ae243=['duration','success','read','395185GJqoMK','write','show','4389MdCwCF','readLogs','length','message','32013AcYoJI','7cxpVfm','logs','en-US','level','keys','10rhSUHl','View\x20command\x20history\x20logs','749736HjkwaI','199009NurjBW','log','*\x20Logs\x20cleared','command','Clear\x20command\x20history\x20logs','forEach','4716RjCLhG','6fUYGvG','245120qxGlnQ','clearLogs','\x20\x20\x20Duration:\x20','*\x20Lovrabet\x20CLI\x20logs:\x0a','details','toLocaleString','\x20\x20\x20Time:\x20','error','clear','389808NqKdcY','6cjdhOw'];a114_0x29a0=function(){return _0x5ae243;};return a114_0x29a0();}export const logsDefinitions=[{'service':a114_0x1b7951(0x8b),'command':a114_0x1b7951(0x84),'description':a114_0x1b7951(0x90),'risk':a114_0x1b7951(0xa7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x22aea8){const _0x59370c=a114_0x1b7951;return printLogs(logger[_0x59370c(0x86)]()),{'ok':!![]};}},{'service':a114_0x1b7951(0x8b),'command':a114_0x1b7951(0xa2),'description':a114_0x1b7951(0x96),'risk':a114_0x1b7951(0x83),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4d3e16){const _0x3ac9a1=a114_0x1b7951;return logger[_0x3ac9a1(0x9b)](),console[_0x3ac9a1(0x93)](_0x3ac9a1(0x94)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a110_0x336424=a110_0xdc00;(function(_0x1d3150,_0x4d3720){const _0x31030e=a110_0xdc00,_0x16e4c0=_0x1d3150();while(!![]){try{const _0x303e05=parseInt(_0x31030e(0x1d6))/0x1+-parseInt(_0x31030e(0x1b4))/0x2*(-parseInt(_0x31030e(0x1ee))/0x3)+-parseInt(_0x31030e(0x1ab))/0x4*(-parseInt(_0x31030e(0x1ea))/0x5)+parseInt(_0x31030e(0x1f1))/0x6*(-parseInt(_0x31030e(0x1b9))/0x7)+parseInt(_0x31030e(0x1e9))/0x8*(parseInt(_0x31030e(0x19f))/0x9)+-parseInt(_0x31030e(0x1d9))/0xa*(-parseInt(_0x31030e(0x1cb))/0xb)+-parseInt(_0x31030e(0x1f4))/0xc;if(_0x303e05===_0x4d3720)break;else _0x16e4c0['push'](_0x16e4c0['shift']());}catch(_0x2b5f66){_0x16e4c0['push'](_0x16e4c0['shift']());}}}(a110_0x18b4,0xe88b1));import a110_0x34de45 from'chalk';function a110_0xdc00(_0x53f414,_0x44e5d2){_0x53f414=_0x53f414-0x19e;const _0x18b457=a110_0x18b4();let _0xdc0042=_0x18b457[_0x53f414];return _0xdc0042;}import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';function a110_0x18b4(){const _0x11a142=['cyan','validation','\x20menu(s)\x20failed','appCode','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','4xolfEy','Failed\x20to\x20fetch\x20online\x20menu\x20list','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','Menu\x20asset\x20update\x20completed:\x20','3751160VMFjek','Updated\x20','trim','Menu\x20asset\x20update\x20skipped','force','load-mode','cookie','\x20\x20Update\x20','✓\x20Menu\x20asset\x20update\x20completed:\x20','boolean','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','\x20menu(s)','replace','paths','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','bool','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','\x20menu(s)...','68596HISpJo','\x20updated,\x20','updated','\x20\x20Cancelled.','\x20failed.','appcode','isArray','fetch','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','object','split','211091LCHZdc','gray','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','1550TVxfYW','message','\x20menu\x20resource\x20set(s).','asset-update','import','patch','stringify','jsUrl','mode','rawFlags','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','write','\x20and\x20CSS:\x20','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','/smartapi/menu/update','script','6008BDmmXF','125215JxYRzs','Would\x20update\x20','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','cssUrl','2387826Pmzvjm','label','\x20menu(s)\x20updated','6DtQVdq','diffs','POST','30709464UqfmkZ','Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources','str','length','isSafeInteger','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','menu-ids','9csxzYs','Menu\x20asset\x20update\x20failed','map','failed','string','\x20updated.','Online\x20menu\x20list\x20fetched','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','params','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','\x20\x20Found\x20','parse','204BMIByi','skipped','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','all'];a110_0x18b4=function(){return _0x11a142;};return a110_0x18b4();}import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':'menu','command':a110_0x336424(0x1dc),'description':'Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','risk':a110_0x336424(0x1e4),'flags':[{'name':'params','type':a110_0x336424(0x1a3),'description':a110_0x336424(0x1c7)+a110_0x336424(0x1f9)},{'name':'mode','type':a110_0x336424(0x1a3),'description':'Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20'+a110_0x336424(0x1b6),'enum':[a110_0x336424(0x1c5),'patch'],'default':'patch'},{'name':a110_0x336424(0x1bd),'type':a110_0x336424(0x1c2),'description':a110_0x336424(0x1d3)},{'name':a110_0x336424(0x19e),'type':a110_0x336424(0x1a3),'description':a110_0x336424(0x1a8)},{'name':a110_0x336424(0x1c6),'type':a110_0x336424(0x1a3),'description':a110_0x336424(0x1a6)},{'name':a110_0x336424(0x1ae),'type':a110_0x336424(0x1c2),'description':a110_0x336424(0x1f5)},{'name':a110_0x336424(0x1be),'type':a110_0x336424(0x1a3),'enum':[a110_0x336424(0x1dd),'script',a110_0x336424(0x1d2)],'description':a110_0x336424(0x1e3)}],async 'dryRun'(_0x128acc){const _0x548dfc=a110_0x336424;ensureRunnableContext(_0x128acc[_0x548dfc(0x1e2)],_0x128acc['selectedAppName']);const _0x3911c8=await runMenuUpdateCore(_0x128acc[_0x548dfc(0x1b2)],_0x128acc['cookie'],_0x128acc[_0x548dfc(0x1f6)](_0x548dfc(0x1a7)),{'mode':parseMode(_0x128acc[_0x548dfc(0x1f6)](_0x548dfc(0x1e1))),'dryRun':!![],'force':_0x128acc[_0x548dfc(0x1c8)](_0x548dfc(0x1bd)),'selection':parseSelection(_0x128acc),'loadScriptMode':parseLoadScriptMode(_0x128acc[_0x548dfc(0x1f6)](_0x548dfc(0x1be)))});return{'method':_0x548dfc(0x1f3),'url':_0x548dfc(0x1e7),'body':_0x3911c8,'description':_0x3911c8['skipped']?_0x548dfc(0x1c3):_0x548dfc(0x1eb)+(_0x3911c8[_0x548dfc(0x1f2)]?.['length']??0x0)+_0x548dfc(0x1db)};},async 'execute'(_0x51a75b){const _0x5d53c3=a110_0x336424;ensureRunnableContext(_0x51a75b[_0x5d53c3(0x1e2)],_0x51a75b['selectedAppName']);const _0x345270=_0x51a75b[_0x5d53c3(0x1f6)](_0x5d53c3(0x1a7)),_0x2f663f=parseMode(_0x51a75b[_0x5d53c3(0x1f6)](_0x5d53c3(0x1e1))),_0x2f308f=_0x51a75b['bool'](_0x5d53c3(0x1bd)),_0x4359bf=parseLoadScriptMode(_0x51a75b['str'](_0x5d53c3(0x1be))),_0x46979d=parseParams(_0x345270),_0x2ff927=!!(_0x46979d[_0x5d53c3(0x1e0)]||_0x46979d[_0x5d53c3(0x1ed)]);if(_0x2ff927){const _0x45780d=await runMenuUpdateCore(_0x51a75b[_0x5d53c3(0x1b2)],_0x51a75b[_0x5d53c3(0x1bf)],_0x345270,{'mode':_0x2f663f,'force':_0x2f308f,'selection':parseSelection(_0x51a75b),'loadScriptMode':_0x4359bf});return _0x45780d[_0x5d53c3(0x1ac)]?writeCliSideChannelLine(_0x5d53c3(0x1b3)):(writeCliSideChannelLine(_0x5d53c3(0x1c1)+_0x45780d[_0x5d53c3(0x1cd)]+_0x5d53c3(0x1f0)),_0x45780d[_0x5d53c3(0x1a2)]>0x0&&writeCliSideChannelLine('!\x20'+_0x45780d[_0x5d53c3(0x1a2)]+_0x5d53c3(0x1b1))),{'ok':_0x45780d[_0x5d53c3(0x1a2)]===0x0,'data':_0x45780d,'message':_0x45780d[_0x5d53c3(0x1ac)]?_0x5d53c3(0x1bc):_0x5d53c3(0x1b8)+_0x45780d[_0x5d53c3(0x1cd)]+'\x20updated,\x20'+_0x45780d[_0x5d53c3(0x1a2)]+_0x5d53c3(0x1cf)};}requireInteractive();const _0xcc89c7=startSpinner('Fetching\x20online\x20menu\x20list...');let _0x458459;try{_0x458459=await fetchOnlineMenuList(_0x51a75b[_0x5d53c3(0x1b2)],_0x51a75b[_0x5d53c3(0x1bf)]),stopSpinner(_0xcc89c7,_0x5d53c3(0x1a5),!![]);}catch(_0x597fb7){stopSpinner(_0xcc89c7,_0x5d53c3(0x1b5),![]);throw CliErrors[_0x5d53c3(0x1b0)](_0x597fb7 instanceof Error?_0x597fb7['message']:_0x5d53c3(0x1b5));}const _0x2cfbd7=filterMenusWithResources(_0x458459),_0x662939=parseSelection(_0x51a75b,![]),_0x51c572=_0x662939?selectMenusForUpdate(_0x2cfbd7,_0x662939):_0x2cfbd7;if(_0x51c572[_0x5d53c3(0x1f7)]===0x0)return writeCliSideChannelLine(a110_0x34de45['yellow'](_0x5d53c3(0x1e6))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a110_0x34de45[_0x5d53c3(0x1af)](_0x5d53c3(0x1a9)+_0x51c572[_0x5d53c3(0x1f7)]+'\x20menu(s)\x20with\x20existing\x20resources')),writeCliSideChannelLine(renderUpdateSummary(_0x51c572[_0x5d53c3(0x1a1)](_0x913a74=>_0x913a74[_0x5d53c3(0x1ef)]),[_0x46979d['jsUrl'],_0x46979d['cssUrl']])),writeCliSideChannelLine('');let _0x2d6dc4=_0x46979d[_0x5d53c3(0x1e0)],_0x5cad53=_0x46979d[_0x5d53c3(0x1ed)];!_0x2d6dc4&&(_0x2d6dc4=await askJsUrl());!_0x5cad53&&(_0x5cad53=await askCssUrl());const _0x1eea3d=await askConfirm(_0x5d53c3(0x1c0)+_0x51c572['length']+'\x20menu(s)\x20with\x20JS:\x20'+_0x2d6dc4+_0x5d53c3(0x1e5)+_0x5cad53+'?');if(!_0x1eea3d)return writeCliSideChannelLine(a110_0x34de45[_0x5d53c3(0x1d7)](_0x5d53c3(0x1ce))),{'ok':!![]};const _0x59d84f=startSpinner('Updating\x20'+_0x51c572[_0x5d53c3(0x1f7)]+_0x5d53c3(0x1ca));try{const _0x48f4f8=await runMenuUpdateCore(_0x51a75b[_0x5d53c3(0x1b2)],_0x51a75b[_0x5d53c3(0x1bf)],JSON[_0x5d53c3(0x1df)]({'jsUrl':_0x2d6dc4,'cssUrl':_0x5cad53}),{'mode':_0x2f663f,'force':_0x2f308f,'selection':{'all':![],'menuIds':_0x51c572[_0x5d53c3(0x1a1)](_0x2b7ea2=>_0x2b7ea2['id']),'paths':[]},'loadScriptMode':_0x4359bf});return stopSpinner(_0x59d84f,_0x5d53c3(0x1ba)+_0x48f4f8['updated']+_0x5d53c3(0x1c4),_0x48f4f8[_0x5d53c3(0x1a2)]===0x0),{'ok':_0x48f4f8['failed']===0x0,'data':_0x48f4f8,'message':_0x48f4f8['failed']>0x0?_0x5d53c3(0x1b8)+_0x48f4f8[_0x5d53c3(0x1cd)]+_0x5d53c3(0x1cc)+_0x48f4f8[_0x5d53c3(0x1a2)]+'\x20failed.':_0x5d53c3(0x1b8)+_0x48f4f8[_0x5d53c3(0x1cd)]+_0x5d53c3(0x1a4)};}catch(_0xae7df6){stopSpinner(_0x59d84f,_0x5d53c3(0x1a0),![]);throw CliErrors[_0x5d53c3(0x1b0)](_0xae7df6 instanceof Error?_0xae7df6[_0x5d53c3(0x1da)]:_0x5d53c3(0x1a0));}}};function ensureRunnableContext(_0x32374b,_0x4e9308){const _0x56bb9f=a110_0x336424,_0x4b70dd=_0x32374b[_0x56bb9f(0x1d0)]?String(_0x32374b[_0x56bb9f(0x1d0)])[_0x56bb9f(0x1bb)]():'';if(!isInProject()&&!_0x4e9308&&!_0x4b70dd)throw CliErrors['validation'](_0x56bb9f(0x1d8)+'Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.');}function parseMode(_0x2f1f5e){const _0x1d330b=a110_0x336424;if(!_0x2f1f5e)return'patch';if(_0x2f1f5e===_0x1d330b(0x1c5)||_0x2f1f5e===_0x1d330b(0x1de))return _0x2f1f5e;throw CliErrors[_0x1d330b(0x1b0)](_0x1d330b(0x1b7));}function parseSelection(_0x59851f,_0x450460=!![]){const _0x5f2d09=a110_0x336424,_0x3e5f2e=_0x59851f[_0x5f2d09(0x1c8)](_0x5f2d09(0x1ae)),_0x18db66=parseMenuIds(_0x59851f[_0x5f2d09(0x1f6)](_0x5f2d09(0x19e))),_0x4ebadc=parseCsv(_0x59851f[_0x5f2d09(0x1f6)](_0x5f2d09(0x1c6))),_0x2ac427=_0x18db66[_0x5f2d09(0x1f7)]>0x0||_0x4ebadc['length']>0x0;if(_0x3e5f2e&&_0x2ac427)throw CliErrors[_0x5f2d09(0x1b0)](_0x5f2d09(0x1ec));if(!_0x3e5f2e&&!_0x2ac427){if(!_0x450460)return undefined;throw CliErrors[_0x5f2d09(0x1b0)]('menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.');}return{'all':_0x3e5f2e,'menuIds':_0x18db66,'paths':_0x4ebadc};}function parseMenuIds(_0x1e8eb6){const _0xa351e2=a110_0x336424,_0x52a369=parseCsv(_0x1e8eb6),_0x1238b5=_0x52a369[_0xa351e2(0x1a1)](Number);if(_0x1238b5['some'](_0x58e96e=>!Number[_0xa351e2(0x1f8)](_0x58e96e)||_0x58e96e<=0x0))throw CliErrors[_0xa351e2(0x1b0)](_0xa351e2(0x1ad));return[...new Set(_0x1238b5)];}function parseCsv(_0x1cec19){const _0x22d0ad=a110_0x336424;return[...new Set(_0x1cec19[_0x22d0ad(0x1d5)](',')[_0x22d0ad(0x1a1)](_0x31d7cb=>_0x31d7cb[_0x22d0ad(0x1bb)]())['filter'](Boolean))];}function parseLoadScriptMode(_0x10b478){const _0x6b2345=a110_0x336424;if(!_0x10b478)return undefined;if(_0x10b478===_0x6b2345(0x1dd)||_0x10b478===_0x6b2345(0x1e8)||_0x10b478===_0x6b2345(0x1d2))return _0x10b478;throw CliErrors['validation'](_0x6b2345(0x1c9));}function parseParams(_0x3ea882){const _0x5455f5=a110_0x336424;if(!_0x3ea882)return{};try{const _0x40185c=JSON[_0x5455f5(0x1aa)](_0x3ea882);if(typeof _0x40185c!==_0x5455f5(0x1d4)||_0x40185c===null||Array[_0x5455f5(0x1d1)](_0x40185c))return{};return{'jsUrl':typeof _0x40185c[_0x5455f5(0x1e0)]===_0x5455f5(0x1a3)?_0x40185c[_0x5455f5(0x1e0)][_0x5455f5(0x1bb)]():undefined,'cssUrl':typeof _0x40185c[_0x5455f5(0x1ed)]===_0x5455f5(0x1a3)?_0x40185c[_0x5455f5(0x1ed)][_0x5455f5(0x1bb)]():undefined};}catch{return{};}}
1
+ const a115_0x3087b8=a115_0x592b;(function(_0x2a77ab,_0x1cdff3){const _0x561d23=a115_0x592b,_0x1ada0=_0x2a77ab();while(!![]){try{const _0x411d4f=-parseInt(_0x561d23(0x170))/0x1+parseInt(_0x561d23(0x172))/0x2*(parseInt(_0x561d23(0x14f))/0x3)+-parseInt(_0x561d23(0x166))/0x4+parseInt(_0x561d23(0x16b))/0x5*(parseInt(_0x561d23(0x16c))/0x6)+parseInt(_0x561d23(0x12d))/0x7+parseInt(_0x561d23(0x167))/0x8*(-parseInt(_0x561d23(0x143))/0x9)+parseInt(_0x561d23(0x128))/0xa*(parseInt(_0x561d23(0x168))/0xb);if(_0x411d4f===_0x1cdff3)break;else _0x1ada0['push'](_0x1ada0['shift']());}catch(_0x5993b5){_0x1ada0['push'](_0x1ada0['shift']());}}}(a115_0x45c2,0xf39b3));import a115_0x25fa95 from'chalk';function a115_0x592b(_0x1f4c68,_0x357cd8){_0x1f4c68=_0x1f4c68-0x126;const _0x45c25e=a115_0x45c2();let _0x592bba=_0x45c25e[_0x1f4c68];return _0x592bba;}import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';import{runMenuUpdateCore}from'../../commands/menu/shared/update-core.js';import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':a115_0x3087b8(0x13c),'command':a115_0x3087b8(0x150),'description':a115_0x3087b8(0x15d),'risk':a115_0x3087b8(0x149),'flags':[{'name':a115_0x3087b8(0x147),'type':a115_0x3087b8(0x15a),'description':a115_0x3087b8(0x141)+a115_0x3087b8(0x15b)},{'name':'mode','type':a115_0x3087b8(0x15a),'description':a115_0x3087b8(0x14d)+a115_0x3087b8(0x179),'enum':['replace',a115_0x3087b8(0x176)],'default':a115_0x3087b8(0x176)},{'name':'force','type':a115_0x3087b8(0x146),'description':a115_0x3087b8(0x16f)},{'name':'menu-ids','type':a115_0x3087b8(0x15a),'description':a115_0x3087b8(0x142)},{'name':a115_0x3087b8(0x14a),'type':a115_0x3087b8(0x15a),'description':a115_0x3087b8(0x13e)},{'name':a115_0x3087b8(0x16e),'type':a115_0x3087b8(0x146),'description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':a115_0x3087b8(0x130),'type':a115_0x3087b8(0x15a),'enum':['import',a115_0x3087b8(0x159),a115_0x3087b8(0x17a)],'description':a115_0x3087b8(0x169)}],async 'dryRun'(_0x3c3d02){const _0x2f76a8=a115_0x3087b8;ensureRunnableContext(_0x3c3d02[_0x2f76a8(0x15c)],_0x3c3d02[_0x2f76a8(0x133)]);const _0x3b81e9=await runMenuUpdateCore(_0x3c3d02['appCode'],_0x3c3d02[_0x2f76a8(0x14c)],_0x3c3d02[_0x2f76a8(0x148)](_0x2f76a8(0x147)),{'mode':parseMode(_0x3c3d02[_0x2f76a8(0x148)](_0x2f76a8(0x155))),'dryRun':!![],'force':_0x3c3d02[_0x2f76a8(0x177)]('force'),'selection':parseSelection(_0x3c3d02),'loadScriptMode':parseLoadScriptMode(_0x3c3d02['str'](_0x2f76a8(0x130)))});return{'method':_0x2f76a8(0x16d),'url':_0x2f76a8(0x144),'body':_0x3b81e9,'description':_0x3b81e9[_0x2f76a8(0x13d)]?'No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.':'Would\x20update\x20'+(_0x3b81e9[_0x2f76a8(0x12c)]?.[_0x2f76a8(0x13a)]??0x0)+'\x20menu\x20resource\x20set(s).'};},async 'execute'(_0x1ab4b7){const _0x1c0e8a=a115_0x3087b8;ensureRunnableContext(_0x1ab4b7[_0x1c0e8a(0x15c)],_0x1ab4b7['selectedAppName']);const _0xd2e6f1=_0x1ab4b7[_0x1c0e8a(0x148)](_0x1c0e8a(0x147)),_0x5f2ed7=parseMode(_0x1ab4b7[_0x1c0e8a(0x148)](_0x1c0e8a(0x155))),_0x103ea9=_0x1ab4b7['bool'](_0x1c0e8a(0x174)),_0x3c041f=parseLoadScriptMode(_0x1ab4b7[_0x1c0e8a(0x148)]('load-mode')),_0x3b8713=parseParams(_0xd2e6f1),_0x12df2e=!!(_0x3b8713[_0x1c0e8a(0x153)]||_0x3b8713['cssUrl']);if(_0x12df2e){const _0x4eebb4=await runMenuUpdateCore(_0x1ab4b7[_0x1c0e8a(0x139)],_0x1ab4b7[_0x1c0e8a(0x14c)],_0xd2e6f1,{'mode':_0x5f2ed7,'force':_0x103ea9,'selection':parseSelection(_0x1ab4b7),'loadScriptMode':_0x3c041f});return _0x4eebb4[_0x1c0e8a(0x13d)]?writeCliSideChannelLine(_0x1c0e8a(0x138)):(writeCliSideChannelLine(_0x1c0e8a(0x131)+_0x4eebb4['updated']+_0x1c0e8a(0x162)),_0x4eebb4['failed']>0x0&&writeCliSideChannelLine('!\x20'+_0x4eebb4[_0x1c0e8a(0x13b)]+'\x20menu(s)\x20failed')),{'ok':_0x4eebb4['failed']===0x0,'data':_0x4eebb4,'message':_0x4eebb4[_0x1c0e8a(0x13d)]?'Menu\x20asset\x20update\x20skipped':'Menu\x20asset\x20update\x20completed:\x20'+_0x4eebb4[_0x1c0e8a(0x151)]+_0x1c0e8a(0x13f)+_0x4eebb4[_0x1c0e8a(0x13b)]+_0x1c0e8a(0x132)};}requireInteractive();const _0x15fb5d=startSpinner(_0x1c0e8a(0x161));let _0x160186;try{_0x160186=await fetchOnlineMenuList(_0x1ab4b7[_0x1c0e8a(0x139)],_0x1ab4b7[_0x1c0e8a(0x14c)]),stopSpinner(_0x15fb5d,_0x1c0e8a(0x136),!![]);}catch(_0x5de024){stopSpinner(_0x15fb5d,_0x1c0e8a(0x165),![]);throw CliErrors['validation'](_0x5de024 instanceof Error?_0x5de024[_0x1c0e8a(0x164)]:'Failed\x20to\x20fetch\x20online\x20menu\x20list');}const _0x1ea40f=filterMenusWithResources(_0x160186),_0x243700=parseSelection(_0x1ab4b7,![]),_0x591cf3=_0x243700?selectMenusForUpdate(_0x1ea40f,_0x243700):_0x1ea40f;if(_0x591cf3[_0x1c0e8a(0x13a)]===0x0)return writeCliSideChannelLine(a115_0x25fa95[_0x1c0e8a(0x157)]('\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found')),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a115_0x25fa95[_0x1c0e8a(0x160)](_0x1c0e8a(0x12f)+_0x591cf3['length']+_0x1c0e8a(0x135))),writeCliSideChannelLine(renderUpdateSummary(_0x591cf3[_0x1c0e8a(0x12e)](_0x301f81=>_0x301f81[_0x1c0e8a(0x127)]),[_0x3b8713['jsUrl'],_0x3b8713[_0x1c0e8a(0x158)]])),writeCliSideChannelLine('');let _0x1c1652=_0x3b8713[_0x1c0e8a(0x153)],_0x1fe186=_0x3b8713['cssUrl'];!_0x1c1652&&(_0x1c1652=await askJsUrl());!_0x1fe186&&(_0x1fe186=await askCssUrl());const _0x2e92e4=await askConfirm(_0x1c0e8a(0x175)+_0x591cf3['length']+_0x1c0e8a(0x14e)+_0x1c1652+_0x1c0e8a(0x171)+_0x1fe186+'?');if(!_0x2e92e4)return writeCliSideChannelLine(a115_0x25fa95['gray'](_0x1c0e8a(0x16a))),{'ok':!![]};const _0x32de93=startSpinner(_0x1c0e8a(0x126)+_0x591cf3[_0x1c0e8a(0x13a)]+_0x1c0e8a(0x173));try{const _0x13c159=await runMenuUpdateCore(_0x1ab4b7[_0x1c0e8a(0x139)],_0x1ab4b7[_0x1c0e8a(0x14c)],JSON['stringify']({'jsUrl':_0x1c1652,'cssUrl':_0x1fe186}),{'mode':_0x5f2ed7,'force':_0x103ea9,'selection':{'all':![],'menuIds':_0x591cf3[_0x1c0e8a(0x12e)](_0x8101e6=>_0x8101e6['id']),'paths':[]},'loadScriptMode':_0x3c041f});return stopSpinner(_0x32de93,_0x1c0e8a(0x17b)+_0x13c159[_0x1c0e8a(0x151)]+_0x1c0e8a(0x156),_0x13c159[_0x1c0e8a(0x13b)]===0x0),{'ok':_0x13c159[_0x1c0e8a(0x13b)]===0x0,'data':_0x13c159,'message':_0x13c159['failed']>0x0?_0x1c0e8a(0x178)+_0x13c159['updated']+'\x20updated,\x20'+_0x13c159[_0x1c0e8a(0x13b)]+'\x20failed.':_0x1c0e8a(0x178)+_0x13c159[_0x1c0e8a(0x151)]+'\x20updated.'};}catch(_0x463370){stopSpinner(_0x32de93,_0x1c0e8a(0x163),![]);throw CliErrors[_0x1c0e8a(0x154)](_0x463370 instanceof Error?_0x463370[_0x1c0e8a(0x164)]:_0x1c0e8a(0x163));}}};function ensureRunnableContext(_0x29e541,_0x2ab4ab){const _0x4ac07e=a115_0x3087b8,_0x3fd147=_0x29e541[_0x4ac07e(0x14b)]?String(_0x29e541[_0x4ac07e(0x14b)])[_0x4ac07e(0x12a)]():'';if(!isInProject()&&!_0x2ab4ab&&!_0x3fd147)throw CliErrors[_0x4ac07e(0x154)](_0x4ac07e(0x152)+'Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.');}function parseMode(_0x76109f){const _0x2088b5=a115_0x3087b8;if(!_0x76109f)return _0x2088b5(0x176);if(_0x76109f==='replace'||_0x76109f===_0x2088b5(0x176))return _0x76109f;throw CliErrors[_0x2088b5(0x154)](_0x2088b5(0x145));}function parseSelection(_0x2f940d,_0x378e13=!![]){const _0x1f15c9=a115_0x3087b8,_0x101d6d=_0x2f940d[_0x1f15c9(0x177)](_0x1f15c9(0x16e)),_0x49b50f=parseMenuIds(_0x2f940d[_0x1f15c9(0x148)](_0x1f15c9(0x140))),_0x9fb5dc=parseCsv(_0x2f940d[_0x1f15c9(0x148)](_0x1f15c9(0x14a))),_0x1acc3c=_0x49b50f[_0x1f15c9(0x13a)]>0x0||_0x9fb5dc[_0x1f15c9(0x13a)]>0x0;if(_0x101d6d&&_0x1acc3c)throw CliErrors['validation']('--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.');if(!_0x101d6d&&!_0x1acc3c){if(!_0x378e13)return undefined;throw CliErrors['validation'](_0x1f15c9(0x12b));}return{'all':_0x101d6d,'menuIds':_0x49b50f,'paths':_0x9fb5dc};}function parseMenuIds(_0x580c0d){const _0x2435e6=a115_0x3087b8,_0x4958b5=parseCsv(_0x580c0d),_0x5d2816=_0x4958b5[_0x2435e6(0x12e)](Number);if(_0x5d2816['some'](_0x1da13d=>!Number['isSafeInteger'](_0x1da13d)||_0x1da13d<=0x0))throw CliErrors[_0x2435e6(0x154)](_0x2435e6(0x129));return[...new Set(_0x5d2816)];}function parseCsv(_0x72f26){const _0x2ad4c2=a115_0x3087b8;return[...new Set(_0x72f26[_0x2ad4c2(0x15e)](',')['map'](_0x133761=>_0x133761[_0x2ad4c2(0x12a)]())[_0x2ad4c2(0x134)](Boolean))];}function a115_0x45c2(){const _0x5d780d=['menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','diffs','6169583wsPUhB','map','\x20\x20Found\x20','load-mode','✓\x20Menu\x20asset\x20update\x20completed:\x20','\x20failed.','selectedAppName','filter','\x20menu(s)\x20with\x20existing\x20resources','Online\x20menu\x20list\x20fetched','parse','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','appCode','length','failed','menu','skipped','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','\x20updated,\x20','menu-ids','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','72549pXwoCw','/smartapi/menu/update','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','boolean','params','str','write','paths','appcode','cookie','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','\x20menu(s)\x20with\x20JS:\x20','339Nileod','asset-update','updated','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','jsUrl','validation','mode','\x20menu(s)','yellow','cssUrl','script','string','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','rawFlags','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','split','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','cyan','Fetching\x20online\x20menu\x20list...','\x20menu(s)\x20updated','Menu\x20asset\x20update\x20failed','message','Failed\x20to\x20fetch\x20online\x20menu\x20list','2430532CQUJpR','264SSnzEo','23991NvnMgh','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','\x20\x20Cancelled.','2870suBEGm','4650bkdVkp','POST','all','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','1168346uRnMxM','\x20and\x20CSS:\x20','23342zPVPAn','\x20menu(s)...','force','\x20\x20Update\x20','patch','bool','Menu\x20asset\x20update\x20completed:\x20','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','fetch','Updated\x20','Updating\x20','label','1810ZgDJAX','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','trim'];a115_0x45c2=function(){return _0x5d780d;};return a115_0x45c2();}function parseLoadScriptMode(_0x209038){const _0x55b1bf=a115_0x3087b8;if(!_0x209038)return undefined;if(_0x209038==='import'||_0x209038===_0x55b1bf(0x159)||_0x209038==='fetch')return _0x209038;throw CliErrors[_0x55b1bf(0x154)](_0x55b1bf(0x15f));}function parseParams(_0xbfbd2d){const _0x506a2e=a115_0x3087b8;if(!_0xbfbd2d)return{};try{const _0x2589df=JSON[_0x506a2e(0x137)](_0xbfbd2d);if(typeof _0x2589df!=='object'||_0x2589df===null||Array['isArray'](_0x2589df))return{};return{'jsUrl':typeof _0x2589df['jsUrl']===_0x506a2e(0x15a)?_0x2589df[_0x506a2e(0x153)][_0x506a2e(0x12a)]():undefined,'cssUrl':typeof _0x2589df[_0x506a2e(0x158)]==='string'?_0x2589df[_0x506a2e(0x158)]['trim']():undefined};}catch{return{};}}
@@ -1 +1 @@
1
- const a111_0x2ff704=a111_0x54fb;(function(_0x1cac41,_0x4193c7){const _0x5e235c=a111_0x54fb,_0x2d9ff1=_0x1cac41();while(!![]){try{const _0x5285ee=parseInt(_0x5e235c(0x144))/0x1*(-parseInt(_0x5e235c(0xea))/0x2)+parseInt(_0x5e235c(0x127))/0x3*(parseInt(_0x5e235c(0x116))/0x4)+-parseInt(_0x5e235c(0x145))/0x5+-parseInt(_0x5e235c(0x139))/0x6*(-parseInt(_0x5e235c(0xec))/0x7)+-parseInt(_0x5e235c(0x112))/0x8*(-parseInt(_0x5e235c(0xdf))/0x9)+-parseInt(_0x5e235c(0xe5))/0xa*(parseInt(_0x5e235c(0x11b))/0xb)+-parseInt(_0x5e235c(0xe7))/0xc;if(_0x5285ee===_0x4193c7)break;else _0x2d9ff1['push'](_0x2d9ff1['shift']());}catch(_0x323d50){_0x2d9ff1['push'](_0x2d9ff1['shift']());}}}(a111_0x1c7c,0xc2081));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';function a111_0x54fb(_0x43c5e2,_0x58f7dd){_0x43c5e2=_0x43c5e2-0xd1;const _0x1c7c23=a111_0x1c7c();let _0x54fb68=_0x1c7c23[_0x43c5e2];return _0x54fb68;}const BACKEND=[{'method':a111_0x2ff704(0xe3),'path':'/smartapi/menu/batchDelete'}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a111_0x2ff704(0xe4)},MENU_DELETE_RECURSIVE_FLAG={'name':a111_0x2ff704(0x130),'type':a111_0x2ff704(0x135),'description':'Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first'},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':a111_0x2ff704(0xdb),'description':'Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file'},MENU_DELETE_PLAN_FLAG={'name':a111_0x2ff704(0xfe),'type':a111_0x2ff704(0xdb),'description':a111_0x2ff704(0xf4)};export const menuDelete={'service':'menu','command':a111_0x2ff704(0x11f),'description':a111_0x2ff704(0xdd),'risk':a111_0x2ff704(0xda),'structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5bc566){const _0x58618a=a111_0x2ff704;_0x5bc566[_0x58618a(0xe0)]('dry-run')?validateDeleteDryRunInput(_0x5bc566):validateDeleteExecuteInput(_0x5bc566),requireExplicitYes(_0x5bc566);},async 'dryRun'(_0x1338b8){const _0x570bba=a111_0x2ff704;validateDeleteDryRunInput(_0x1338b8);const _0x2ca492=await buildDeletePlan(_0x1338b8),_0x503b81=createMenuDeletePlanFile(_0x1338b8[_0x570bba(0x128)],_0x2ca492),_0x4afca0=await writeMenuDeletePlan(_0x1338b8[_0x570bba(0x110)](_0x570bba(0xe2)),_0x503b81),_0x1087d6=mutationResult({..._0x2ca492,'planFile':{'path':_0x4afca0,'createdAt':_0x503b81[_0x570bba(0x12a)],'expiresAt':_0x503b81[_0x570bba(0x14f)]}});return menuDryRunResult(_0x1087d6,{'method':_0x570bba(0xe3),'url':'/smartapi/menu/batchDelete','body':{'idList':_0x1087d6[_0x570bba(0x138)]},'description':_0x570bba(0xeb)+(_0x1087d6[_0x570bba(0x138)]?.[_0x570bba(0x125)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x1087d6[_0x570bba(0x101)]['id']+_0x570bba(0xd3)+_0x4afca0+'.'});},async 'execute'(_0x31cf65){const _0x12af47=a111_0x2ff704;requireExplicitYes(_0x31cf65),validateDeleteExecuteInput(_0x31cf65);const _0x33b9af=await readMenuDeletePlan(_0x31cf65[_0x12af47(0x110)](_0x12af47(0xfe))),_0x50fafd=mutationPlanFromDeleteFile(_0x33b9af[_0x12af47(0xfe)],_0x33b9af[_0x12af47(0xed)]),_0x17747a=_0x33b9af[_0x12af47(0xfe)]['target']['id'];try{assertMenuDeletePlanExecutable(_0x33b9af[_0x12af47(0xfe)],_0x31cf65[_0x12af47(0x128)]);}catch(_0x57ef18){throw menuFailure(asMenuError(_0x57ef18),_0x50fafd,{'stage':_0x12af47(0x13b),'failed':{'id':_0x17747a}});}let _0x564cd6,_0x1374c6;try{_0x564cd6=await fetchMutationSnapshot(_0x31cf65,'execute\x20reviewed\x20delete\x20plan',_0x17747a),_0x1374c6=assertMenuDeletePlanCurrent(_0x33b9af['plan'],_0x31cf65[_0x12af47(0x128)],_0x564cd6),assertDeleteTargetsComplete(_0x33b9af[_0x12af47(0xfe)],_0x564cd6),_0x1374c6[_0x12af47(0x149)](_0xdad8d4=>assertDeleteSafety(_0xdad8d4,_0x33b9af['plan']['recursive'])),assertNoSharedPages(_0x564cd6,_0x1374c6),assertCascadeMatchesPlan(_0x50fafd,_0x1374c6);}catch(_0x62391d){throw menuFailure(asMenuError(_0x62391d),_0x50fafd,{'stage':'pre-write-plan-validation','failed':{'id':_0x17747a}});}const _0x5d9265=_0x33b9af[_0x12af47(0xfe)][_0x12af47(0x138)];let _0x471165;try{_0x471165=await batchDeleteMenuEntities(_0x31cf65['cookie'],_0x5d9265);}catch(_0xb46623){const _0x8c8be3=mapMenuApiError(_0xb46623,_0x12af47(0xd5)),_0x5bf77f=[_0x12af47(0x11e)];let _0x2f9bf1;try{_0x2f9bf1=await readDeleteOutcome(_0x31cf65,_0x5d9265);}catch(_0x2ae39d){const _0x2ccdd3=describeMenuErrorCause(_0x2ae39d,_0x12af47(0x111),_0x17747a);_0x5bf77f[_0x12af47(0xf7)]('Post-failure\x20menu\x20readback\x20failed\x20('+_0x2ccdd3[_0x12af47(0x11a)]+_0x12af47(0x104)+_0x2ccdd3[_0x12af47(0x10c)]);throw menuFailure(_0x8c8be3,_0x50fafd,{'stage':_0x12af47(0x14a),'failed':{'targetIds':_0x5d9265,'targetIdsAbsent':_0x12af47(0x134),..._0x2ccdd3},'warnings':_0x5bf77f,'verification':{'status':_0x12af47(0x10d),'lookupCommand':_0x12af47(0x12c),'targetIds':_0x5d9265}});}throw menuFailure(_0x8c8be3,_0x50fafd,{'stage':_0x12af47(0x14a),'succeeded':_0x2f9bf1[_0x12af47(0x100)][_0x12af47(0x123)](_0x42371a=>({'id':_0x42371a,'deleted':!![]})),'failed':{'targetIds':_0x5d9265,'absentIds':_0x2f9bf1[_0x12af47(0x100)],'remainingIds':_0x2f9bf1[_0x12af47(0x122)]},'warnings':_0x5bf77f,'verification':verificationFromOutcome(_0x2f9bf1)});}if(_0x471165!==_0x5d9265[_0x12af47(0x125)]){const _0x2094b7=menuError('menu_batch_delete_count_mismatch','Backend\x20reported\x20'+_0x471165+_0x12af47(0xd4)+_0x5d9265[_0x12af47(0x125)]+'.',_0x12af47(0x132)),_0x135283=[_0x12af47(0xd6)];let _0x12920f;try{_0x12920f=await readDeleteOutcome(_0x31cf65,_0x5d9265);}catch(_0xb05570){const _0x3eeeca=describeMenuErrorCause(_0xb05570,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x17747a);_0x135283[_0x12af47(0xf7)]('Post-mismatch\x20menu\x20readback\x20failed\x20('+_0x3eeeca['causeCode']+_0x12af47(0x104)+_0x3eeeca[_0x12af47(0x10c)]);throw menuFailure(_0x2094b7,_0x50fafd,{'stage':'batch-delete','failed':{'targetIds':_0x5d9265,'expectedCount':_0x5d9265[_0x12af47(0x125)],'reportedDeletedCount':_0x471165,'targetIdsAbsent':_0x12af47(0x134),..._0x3eeeca},'warnings':_0x135283,'verification':{'status':_0x12af47(0x10d),'lookupCommand':_0x12af47(0x12c),'targetIds':_0x5d9265}});}throw menuFailure(_0x2094b7,_0x50fafd,{'stage':_0x12af47(0x14a),'succeeded':_0x12920f[_0x12af47(0x100)][_0x12af47(0x123)](_0x1d8226=>({'id':_0x1d8226,'deleted':!![]})),'failed':{'targetIds':_0x5d9265,'expectedCount':_0x5d9265[_0x12af47(0x125)],'reportedDeletedCount':_0x471165,'absentIds':_0x12920f[_0x12af47(0x100)],'remainingIds':_0x12920f[_0x12af47(0x122)]},'warnings':_0x135283,'verification':verificationFromOutcome(_0x12920f)});}let _0x54062f;try{_0x54062f=await readDeleteOutcome(_0x31cf65,_0x5d9265);}catch(_0x4967e2){const _0x861db6=describeMenuErrorCause(_0x4967e2,'verify\x20batch\x20delete',_0x17747a),_0x5138b4=asVerificationError(_0x4967e2,_0x12af47(0x13a)+_0x17747a+_0x12af47(0xd2));throw menuFailure(_0x5138b4,_0x50fafd,{'stage':_0x12af47(0x14e),'succeeded':_0x5d9265[_0x12af47(0x123)](_0x1c7306=>({'id':_0x1c7306,'deleteRequested':!![]})),'failed':{'id':_0x17747a,'targetIds':_0x5d9265,'targetIdsAbsent':'unconfirmed',..._0x861db6},'warnings':[_0x12af47(0xfd)],'verification':{'status':_0x12af47(0x10d),'lookupCommand':_0x12af47(0x12c),'targetIds':_0x5d9265}});}if(_0x54062f['remainingIds'][_0x12af47(0x125)]>0x0){const _0x1efe92=menuError('menu_verification_failed',_0x12af47(0xfa)+_0x54062f[_0x12af47(0x122)]['join'](',\x20')+'.',_0x12af47(0x132));throw menuFailure(_0x1efe92,_0x50fafd,{'stage':'verification','succeeded':_0x5d9265[_0x12af47(0x123)](_0x2bf844=>({'id':_0x2bf844,'deleteRequested':!![]})),'failed':{'id':_0x17747a,'targetIds':_0x5d9265,'absentIds':_0x54062f['absentIds'],'remainingIds':_0x54062f[_0x12af47(0x122)]},'warnings':[_0x12af47(0xf5)],'verification':verificationFromOutcome(_0x54062f)});}const _0x5a4b98=_0x5d9265[_0x12af47(0x123)](_0x2b69d5=>({'id':_0x2b69d5,'deleted':!![]})),_0x32b3de=mutationResult({..._0x50fafd,'dryRun':![],'succeeded':_0x5a4b98,'verification':{'checkedBy':_0x12af47(0x143),'plannedSnapshotHash':_0x50fafd['snapshotHash'],'finalSnapshotHash':_0x54062f[_0x12af47(0x137)][_0x12af47(0x103)],'reportedDeletedCount':_0x471165,'targetAbsent':!_0x54062f[_0x12af47(0x137)][_0x12af47(0x114)][_0x12af47(0xe1)](_0x17747a),'allTargetsAbsent':!![],'targetIds':_0x5d9265}});return{'ok':!![],'data':_0x32b3de,'message':_0x12af47(0x126)+_0x5a4b98[_0x12af47(0x125)]+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x17747a+'.'};}};async function readDeleteOutcome(_0xb9d9d8,_0x30988a){const _0x43880b=a111_0x2ff704,_0x25f99b=await fetchMenuSnapshot(_0xb9d9d8[_0x43880b(0x128)],_0xb9d9d8[_0x43880b(0xfb)]);return{'snapshot':_0x25f99b,'absentIds':_0x30988a[_0x43880b(0x106)](_0x4f9172=>!_0x25f99b[_0x43880b(0x114)][_0x43880b(0xe1)](_0x4f9172)),'remainingIds':_0x30988a[_0x43880b(0x106)](_0x5d25b6=>_0x25f99b['byId'][_0x43880b(0xe1)](_0x5d25b6))};}function verificationFromOutcome(_0x2efdca){const _0x36eba0=a111_0x2ff704;return{'checkedBy':_0x36eba0(0x143),'absentIds':_0x2efdca[_0x36eba0(0x100)],'remainingIds':_0x2efdca[_0x36eba0(0x122)]};}function validateDeleteDryRunInput(_0xc17e83){const _0x27ef3f=a111_0x2ff704;validateExactId(_0xc17e83);if(!hasFlag(_0xc17e83,_0x27ef3f(0xe2))||!_0xc17e83[_0x27ef3f(0x110)](_0x27ef3f(0xe2))['trim']())throw CliErrors[_0x27ef3f(0x105)]('plan-out','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0xc17e83,_0x27ef3f(0xfe)))throw CliErrors['validation'](_0x27ef3f(0x107));}function validateDeleteExecuteInput(_0x17ed2d){const _0x37f000=a111_0x2ff704;if(!hasFlag(_0x17ed2d,_0x37f000(0xfe))||!_0x17ed2d['str'](_0x37f000(0xfe))[_0x37f000(0x14c)]())throw CliErrors[_0x37f000(0x105)](_0x37f000(0xfe),'--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.');const _0x6faf86=['id',_0x37f000(0x130),'plan-out',_0x37f000(0xdc),_0x37f000(0xd9),_0x37f000(0x136)][_0x37f000(0x106)](_0x1259d4=>hasFlag(_0x17ed2d,_0x1259d4));if(_0x6faf86[_0x37f000(0x125)]>0x0)throw CliErrors[_0x37f000(0x108)](_0x37f000(0x147)+_0x6faf86['map'](_0x1692ff=>'--'+_0x1692ff)['join'](',\x20')+'.');}async function buildDeletePlan(_0x2443da){const _0x5594d2=a111_0x2ff704,_0x24d722=validateExactId(_0x2443da),_0xf619f9=await fetchMutationSnapshot(_0x2443da,_0x5594d2(0x113),_0x24d722),_0x5b9ce7=requireMenu(_0xf619f9,_0x24d722);assertExpectedState(_0x2443da,_0x5b9ce7);const _0x3a8a99=_0x2443da[_0x5594d2(0xe0)](_0x5594d2(0x130));let _0x7610b6;if(_0x3a8a99){if(_0x5b9ce7['type'][_0x5594d2(0x14c)]()[_0x5594d2(0xfc)]()!==_0x5594d2(0xff))throw menuError(_0x5594d2(0xde),'Menu\x20'+_0x5b9ce7['id']+_0x5594d2(0x11c)+(_0x5b9ce7[_0x5594d2(0x12f)]||_0x5594d2(0xe6))+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x7610b6=collectDeleteTargets(_0xf619f9,_0x5b9ce7),_0x7610b6['forEach'](_0x2ffd5b=>assertDeleteSafety(_0x2ffd5b,!![]));}else assertDeleteSafety(_0x5b9ce7),_0x7610b6=[_0x5b9ce7];assertNoSharedPages(_0xf619f9,_0x7610b6);const _0x50975f=_0x7610b6['map'](_0x41341f=>_0x41341f['id']),_0x49ae53=cascadeForTargets(_0x7610b6),_0x346e1e=_0x49ae53[_0x5594d2(0x119)][_0x5594d2(0x125)]>0x0?[_0x5594d2(0xf6)]:[];return mutationResult({'operation':'delete','selector':{'id':_0x24d722,'recursive':_0x3a8a99},'before':_0x5b9ce7,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x5594d2(0xe8),'method':'POST','path':'/smartapi/menu/batchDelete','body':{'idList':_0x50975f}}],'targets':_0x7610b6,'deleteOrder':_0x50975f,'snapshotHash':_0xf619f9[_0x5594d2(0x103)],'cascade':_0x49ae53,'warnings':_0x346e1e});}function assertDeleteSafety(_0x3694fb,_0x193cd0=![]){const _0x1368ca=a111_0x2ff704,_0x4d7c0f=_0x3694fb[_0x1368ca(0x12f)]['trim']()[_0x1368ca(0xfc)]()===_0x1368ca(0xff);if(_0x3694fb['childrenCount']>0x0&&(!_0x193cd0||!_0x4d7c0f))throw menuError(_0x1368ca(0xe9),_0x1368ca(0x129)+_0x3694fb['id']+_0x1368ca(0xf3)+_0x3694fb[_0x1368ca(0x121)]+_0x1368ca(0x120),_0x1368ca(0x13c)+_0x3694fb['childrenIds'][_0x1368ca(0xd7)](',\x20'));if(_0x4d7c0f&&_0x3694fb['pageId']!=null)throw menuError(_0x1368ca(0x124),'Folder\x20'+_0x3694fb['id']+_0x1368ca(0x13e)+_0x3694fb[_0x1368ca(0x12b)]+_0x1368ca(0x11d),_0x1368ca(0xd8));if(!_0x4d7c0f)return;if(!_0x3694fb[_0x1368ca(0x13d)])throw menuError(_0x1368ca(0x109),_0x1368ca(0x10e)+_0x3694fb['id']+_0x1368ca(0x133),_0x1368ca(0x10a));if(_0x3694fb[_0x1368ca(0x140)][_0x1368ca(0x125)]>0x0)throw menuError(_0x1368ca(0x14d),_0x1368ca(0x10e)+_0x3694fb['id']+_0x1368ca(0x10f)+_0x3694fb[_0x1368ca(0x140)][_0x1368ca(0x125)]+_0x1368ca(0xf8),_0x1368ca(0xf0));}function collectDeleteTargets(_0x43f110,_0x52750a){const _0x128b25=[],_0x27e845=new Set(),_0x64d78e=new Set(),_0x25a7d0=_0xaa4f82=>{const _0x144ee8=a111_0x54fb;if(_0x27e845[_0x144ee8(0xe1)](_0xaa4f82['id']))throw menuError(_0x144ee8(0x12e),_0x144ee8(0x146)+_0xaa4f82['id']+'.');if(_0x64d78e[_0x144ee8(0xe1)](_0xaa4f82['id']))return;_0x27e845['add'](_0xaa4f82['id']);for(const _0x2416e1 of _0xaa4f82[_0x144ee8(0x118)]){const _0x478b82=_0x43f110[_0x144ee8(0x114)][_0x144ee8(0x14b)](_0x2416e1);if(!_0x478b82)throw menuError(_0x144ee8(0x12e),_0x144ee8(0x129)+_0xaa4f82['id']+'\x20references\x20missing\x20child\x20'+_0x2416e1+'.');_0x25a7d0(_0x478b82);}_0x27e845['delete'](_0xaa4f82['id']),_0x64d78e[_0x144ee8(0x10b)](_0xaa4f82['id']),_0x128b25[_0x144ee8(0xf7)](_0xaa4f82);};return _0x25a7d0(_0x52750a),_0x128b25;}function assertDeleteTargetsComplete(_0x4a5af6,_0x3c5549){const _0x4b26cb=a111_0x2ff704,_0x532b56=requireMenu(_0x3c5549,_0x4a5af6[_0x4b26cb(0xf1)]['id']);if(_0x4a5af6['recursive']&&_0x532b56[_0x4b26cb(0x12f)][_0x4b26cb(0x14c)]()[_0x4b26cb(0xfc)]()!==_0x4b26cb(0xff))throw menuError('menu_plan_invalid','Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x532b56['id']+_0x4b26cb(0x12d));const _0x5dd84b=_0x4a5af6[_0x4b26cb(0x130)]?collectDeleteTargets(_0x3c5549,_0x532b56)['map'](_0x3d193b=>_0x3d193b['id']):[_0x532b56['id']];if(JSON[_0x4b26cb(0x115)](_0x4a5af6[_0x4b26cb(0x138)])!==JSON[_0x4b26cb(0x115)](_0x5dd84b))throw menuError(_0x4b26cb(0x142),_0x4b26cb(0xd1),_0x4b26cb(0x148));}function assertNoSharedPages(_0x13f2de,_0xede579){const _0x16c694=a111_0x2ff704,_0x3381ae=new Set(_0xede579[_0x16c694(0x123)](_0x38171b=>_0x38171b['id'])),_0x59c2e7=new Set(_0xede579[_0x16c694(0x123)](_0x66837a=>_0x66837a[_0x16c694(0x12b)])[_0x16c694(0x106)](_0x1b5eb0=>_0x1b5eb0!=null));if(_0x59c2e7[_0x16c694(0x102)]===0x0)return;const _0x46c50b=_0x13f2de[_0x16c694(0x117)][_0x16c694(0x106)](_0x63f81c=>!_0x3381ae[_0x16c694(0xe1)](_0x63f81c['id'])&&_0x63f81c[_0x16c694(0x12b)]!=null&&_0x59c2e7['has'](_0x63f81c['pageId']));if(_0x46c50b[_0x16c694(0x125)]===0x0)return;const _0x3b5df5=_0x46c50b[_0x16c694(0x123)](_0x1deb50=>_0x16c694(0xef)+_0x1deb50['pageId']+_0x16c694(0xf9)+_0x1deb50['id'])[_0x16c694(0xd7)](',\x20');throw menuError(_0x16c694(0x141),_0x16c694(0x131)+_0x3b5df5+'.',_0x16c694(0x13f));}function a111_0x1c7c(){const _0x245d34=['Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','unconfirmed','boolean','expected-children-count','snapshot','deleteOrder','78rtEPxY','Batch\x20delete\x20request\x20for\x20menu\x20','plan-validation','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','resourcesValid','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','resources','menu_page_shared','menu_plan_invalid','menu\x20list','11osciJE','590450PIdMWS','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','forEach','batch-delete','get','trim','menu_folder_has_resources','verification','expiresAt','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence',';\x20execution\x20must\x20consume\x20','\x20deleted\x20menus;\x20expected\x20','batch\x20delete','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','join','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','expect-path','high-risk-write','string','expect-parent-id','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','menu_recursive_requires_folder','9SDkoCo','bool','has','plan-out','POST','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','15310IXsqNK','unknown','26603556MbnLtk','batch-delete-menu','menu_non_empty','88580WupcFE','Would\x20batch\x20delete\x20','788039SiUfLr','path','indexOf','page\x20','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','target','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','\x20has\x20','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','push','\x20resource\x20URL(s).','\x20->\x20menu\x20','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','cookie','toLowerCase','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','plan','folder','absentIds','selector','size','hash','):\x20','flagMissing','filter','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','validation','menu_folder_resources_invalid','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','add','causeMessage','failed','Folder\x20','\x20still\x20references\x20','str','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','12552872fcLGnR','plan\x20delete','byId','stringify','3692OXFDpB','menus','childrenIds','pages','causeCode','3421yLJWsA','\x20is\x20type\x20\x22','\x20and\x20cannot\x20be\x20deleted\x20safely.','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','delete','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','childrenCount','remainingIds','map','menu_delete_page_bound','length','Deleted\x20','3447qnXdCC','appCode','Menu\x20','createdAt','pageId','rabetbase\x20menu\x20list\x20--format\x20json','\x20is\x20not\x20a\x20folder.','menu_tree_invalid','type','recursive','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'];a111_0x1c7c=function(){return _0x245d34;};return a111_0x1c7c();}function assertCascadeMatchesPlan(_0x57aa38,_0x4c2728){const _0x22e501=a111_0x2ff704,_0x242c4b=cascadeForTargets(_0x4c2728);if(JSON[_0x22e501(0x115)](_0x57aa38['cascade'])!==JSON[_0x22e501(0x115)](_0x242c4b))throw menuError(_0x22e501(0x142),_0x22e501(0xf2));}function cascadeForTargets(_0x42d2d1){const _0x110b4c=a111_0x2ff704,_0x20e882=_0x42d2d1[_0x110b4c(0x123)](_0x37ac3f=>_0x37ac3f[_0x110b4c(0x12b)])['filter'](_0x4eecea=>_0x4eecea!=null)[_0x110b4c(0x106)]((_0x4d6bd3,_0x4c1df7,_0x171fb6)=>_0x171fb6[_0x110b4c(0xee)](_0x4d6bd3)===_0x4c1df7);return{'pages':_0x20e882,'pageSchemaAffected':_0x20e882[_0x110b4c(0x125)]>0x0};}function asMenuError(_0x1afc31){const _0x168380=a111_0x2ff704;return _0x1afc31 instanceof CliError?_0x1afc31:menuError(_0x168380(0x142),_0x1afc31 instanceof Error?_0x1afc31['message']:String(_0x1afc31));}
1
+ const a116_0x32b09b=a116_0x461f;(function(_0x229142,_0x445891){const _0x4ebc33=a116_0x461f,_0x1e865b=_0x229142();while(!![]){try{const _0x38e82f=-parseInt(_0x4ebc33(0xd0))/0x1*(-parseInt(_0x4ebc33(0x12d))/0x2)+-parseInt(_0x4ebc33(0xf2))/0x3+-parseInt(_0x4ebc33(0xc6))/0x4*(-parseInt(_0x4ebc33(0x10c))/0x5)+parseInt(_0x4ebc33(0x127))/0x6+parseInt(_0x4ebc33(0x12a))/0x7+parseInt(_0x4ebc33(0xe7))/0x8+-parseInt(_0x4ebc33(0xed))/0x9*(parseInt(_0x4ebc33(0xb6))/0xa);if(_0x38e82f===_0x445891)break;else _0x1e865b['push'](_0x1e865b['shift']());}catch(_0x4a5ccf){_0x1e865b['push'](_0x1e865b['shift']());}}}(a116_0x2fca,0x68b9a));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';function a116_0x2fca(){const _0x34cc78=['plan-out','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','boolean','high-risk-write','9NbalHd','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','page\x20','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','1128279BgajyX','Folder\x20','deleteOrder','unconfirmed','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','Post-mismatch\x20menu\x20readback\x20failed\x20(','\x20->\x20menu\x20','stringify','plan','\x20and\x20cannot\x20be\x20deleted\x20safely.','folder','):\x20','\x20is\x20type\x20\x22','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','hash','\x20still\x20references\x20','flagMissing','batch-delete','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','resources','str','indexOf','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','createdAt','10155XVJgZe','pageId','Backend\x20reported\x20','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','path','pre-write-plan-validation','causeMessage',';\x20execution\x20must\x20consume\x20','menu','verification','target','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','join','resourcesValid','remainingIds','rabetbase\x20menu\x20list\x20--format\x20json','message','selector','menu_page_shared','has','batch-delete-menu','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','bool','Post-failure\x20menu\x20readback\x20failed\x20(','\x20references\x20missing\x20child\x20','delete','/smartapi/menu/batchDelete','344358eQdaEn','childrenCount','\x20deleted\x20menus;\x20expected\x20','3161473pfaJvz','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','91634aIsJAz','pages','POST','plan\x20delete','expect-path','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','menu_batch_delete_count_mismatch','menu\x20list','8476630KUYuBK','push','snapshotHash','plan-validation','forEach','recursive','execute\x20reviewed\x20delete\x20plan','\x20is\x20not\x20a\x20folder.','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','add','length','Deleted\x20','childrenIds','string','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','1080UkAQfD','type','\x20menu(s)\x20under\x20exact\x20id\x20','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','menus','unknown','menu_delete_page_bound','filter','expect-parent-id','5TvjkJY','snapshot','expiresAt','map','get','Menu\x20','failed','menu_folder_has_resources','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','cookie','byId','expected-children-count','menu_plan_invalid','menu_tree_invalid','dry-run','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','trim','causeCode','appCode','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','absentIds','Batch\x20delete\x20request\x20for\x20menu\x20','2929784xwlfLq','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'];a116_0x2fca=function(){return _0x34cc78;};return a116_0x2fca();}function a116_0x461f(_0x1ca8e3,_0x45ef41){_0x1ca8e3=_0x1ca8e3-0xaf;const _0x2fcaf6=a116_0x2fca();let _0x461f3d=_0x2fcaf6[_0x1ca8e3];return _0x461f3d;}import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a116_0x32b09b(0xb0),'path':a116_0x32b09b(0x126)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a116_0x32b09b(0xff)},MENU_DELETE_RECURSIVE_FLAG={'name':a116_0x32b09b(0xbb),'type':a116_0x32b09b(0xeb),'description':a116_0x32b09b(0xb3)},MENU_DELETE_PLAN_OUT_FLAG={'name':a116_0x32b09b(0xe9),'type':a116_0x32b09b(0xc4),'description':a116_0x32b09b(0x12b)},MENU_DELETE_PLAN_FLAG={'name':a116_0x32b09b(0xfa),'type':'string','description':'Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out'};export const menuDelete={'service':a116_0x32b09b(0x114),'command':a116_0x32b09b(0x125),'description':a116_0x32b09b(0x105),'risk':a116_0x32b09b(0xec),'structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x20f59c){const _0x272cc9=a116_0x32b09b;_0x20f59c[_0x272cc9(0x122)](_0x272cc9(0xdf))?validateDeleteDryRunInput(_0x20f59c):validateDeleteExecuteInput(_0x20f59c),requireExplicitYes(_0x20f59c);},async 'dryRun'(_0xf1e412){const _0x147647=a116_0x32b09b;validateDeleteDryRunInput(_0xf1e412);const _0x5b6c14=await buildDeletePlan(_0xf1e412),_0x3a4a81=createMenuDeletePlanFile(_0xf1e412[_0x147647(0xe3)],_0x5b6c14),_0x37ea1a=await writeMenuDeletePlan(_0xf1e412['str'](_0x147647(0xe9)),_0x3a4a81),_0x1e4bee=mutationResult({..._0x5b6c14,'planFile':{'path':_0x37ea1a,'createdAt':_0x3a4a81[_0x147647(0x10b)],'expiresAt':_0x3a4a81[_0x147647(0xd2)]}});return menuDryRunResult(_0x1e4bee,{'method':_0x147647(0xb0),'url':_0x147647(0x126),'body':{'idList':_0x1e4bee[_0x147647(0xf4)]},'description':'Would\x20batch\x20delete\x20'+(_0x1e4bee['deleteOrder']?.['length']??0x1)+_0x147647(0xc8)+_0x1e4bee[_0x147647(0x11d)]['id']+_0x147647(0x113)+_0x37ea1a+'.'});},async 'execute'(_0x571769){const _0x3d100d=a116_0x32b09b;requireExplicitYes(_0x571769),validateDeleteExecuteInput(_0x571769);const _0x295b3c=await readMenuDeletePlan(_0x571769[_0x3d100d(0x108)]('plan')),_0x1ae2a9=mutationPlanFromDeleteFile(_0x295b3c['plan'],_0x295b3c[_0x3d100d(0x110)]),_0x44c020=_0x295b3c[_0x3d100d(0xfa)][_0x3d100d(0x116)]['id'];try{assertMenuDeletePlanExecutable(_0x295b3c[_0x3d100d(0xfa)],_0x571769[_0x3d100d(0xe3)]);}catch(_0x1b3acb){throw menuFailure(asMenuError(_0x1b3acb),_0x1ae2a9,{'stage':_0x3d100d(0xb9),'failed':{'id':_0x44c020}});}let _0x42ee16,_0x15f1b7;try{_0x42ee16=await fetchMutationSnapshot(_0x571769,_0x3d100d(0xbc),_0x44c020),_0x15f1b7=assertMenuDeletePlanCurrent(_0x295b3c[_0x3d100d(0xfa)],_0x571769[_0x3d100d(0xe3)],_0x42ee16),assertDeleteTargetsComplete(_0x295b3c[_0x3d100d(0xfa)],_0x42ee16),_0x15f1b7[_0x3d100d(0xba)](_0x368e12=>assertDeleteSafety(_0x368e12,_0x295b3c['plan'][_0x3d100d(0xbb)])),assertNoSharedPages(_0x42ee16,_0x15f1b7),assertCascadeMatchesPlan(_0x1ae2a9,_0x15f1b7);}catch(_0x447f83){throw menuFailure(asMenuError(_0x447f83),_0x1ae2a9,{'stage':_0x3d100d(0x111),'failed':{'id':_0x44c020}});}const _0x41c25e=_0x295b3c['plan']['deleteOrder'];let _0x206619;try{_0x206619=await batchDeleteMenuEntities(_0x571769[_0x3d100d(0xda)],_0x41c25e);}catch(_0x387109){const _0x1d9fa9=mapMenuApiError(_0x387109,'batch\x20delete'),_0x4c01b0=[_0x3d100d(0xf1)];let _0x296cb5;try{_0x296cb5=await readDeleteOutcome(_0x571769,_0x41c25e);}catch(_0x54cdcd){const _0x17b975=describeMenuErrorCause(_0x54cdcd,_0x3d100d(0xe0),_0x44c020);_0x4c01b0['push'](_0x3d100d(0x123)+_0x17b975[_0x3d100d(0xe2)]+_0x3d100d(0xfd)+_0x17b975[_0x3d100d(0x112)]);throw menuFailure(_0x1d9fa9,_0x1ae2a9,{'stage':_0x3d100d(0x104),'failed':{'targetIds':_0x41c25e,'targetIdsAbsent':_0x3d100d(0xf5),..._0x17b975},'warnings':_0x4c01b0,'verification':{'status':_0x3d100d(0xd6),'lookupCommand':_0x3d100d(0x11b),'targetIds':_0x41c25e}});}throw menuFailure(_0x1d9fa9,_0x1ae2a9,{'stage':_0x3d100d(0x104),'succeeded':_0x296cb5[_0x3d100d(0xe5)][_0x3d100d(0xd3)](_0x6ee136=>({'id':_0x6ee136,'deleted':!![]})),'failed':{'targetIds':_0x41c25e,'absentIds':_0x296cb5[_0x3d100d(0xe5)],'remainingIds':_0x296cb5[_0x3d100d(0x11a)]},'warnings':_0x4c01b0,'verification':verificationFromOutcome(_0x296cb5)});}if(_0x206619!==_0x41c25e['length']){const _0x51f073=menuError(_0x3d100d(0xb4),_0x3d100d(0x10e)+_0x206619+_0x3d100d(0x129)+_0x41c25e['length']+'.',_0x3d100d(0xca)),_0x337156=[_0x3d100d(0x106)];let _0x490b35;try{_0x490b35=await readDeleteOutcome(_0x571769,_0x41c25e);}catch(_0x2705f){const _0x1c97e6=describeMenuErrorCause(_0x2705f,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x44c020);_0x337156[_0x3d100d(0xb7)](_0x3d100d(0xf7)+_0x1c97e6['causeCode']+_0x3d100d(0xfd)+_0x1c97e6[_0x3d100d(0x112)]);throw menuFailure(_0x51f073,_0x1ae2a9,{'stage':_0x3d100d(0x104),'failed':{'targetIds':_0x41c25e,'expectedCount':_0x41c25e['length'],'reportedDeletedCount':_0x206619,'targetIdsAbsent':_0x3d100d(0xf5),..._0x1c97e6},'warnings':_0x337156,'verification':{'status':_0x3d100d(0xd6),'lookupCommand':_0x3d100d(0x11b),'targetIds':_0x41c25e}});}throw menuFailure(_0x51f073,_0x1ae2a9,{'stage':_0x3d100d(0x104),'succeeded':_0x490b35['absentIds'][_0x3d100d(0xd3)](_0x3c05c9=>({'id':_0x3c05c9,'deleted':!![]})),'failed':{'targetIds':_0x41c25e,'expectedCount':_0x41c25e[_0x3d100d(0xc1)],'reportedDeletedCount':_0x206619,'absentIds':_0x490b35['absentIds'],'remainingIds':_0x490b35[_0x3d100d(0x11a)]},'warnings':_0x337156,'verification':verificationFromOutcome(_0x490b35)});}let _0x30fe9d;try{_0x30fe9d=await readDeleteOutcome(_0x571769,_0x41c25e);}catch(_0x49fb1f){const _0x3319b3=describeMenuErrorCause(_0x49fb1f,'verify\x20batch\x20delete',_0x44c020),_0x40e882=asVerificationError(_0x49fb1f,_0x3d100d(0xe6)+_0x44c020+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x40e882,_0x1ae2a9,{'stage':_0x3d100d(0x115),'succeeded':_0x41c25e['map'](_0x42fc0c=>({'id':_0x42fc0c,'deleteRequested':!![]})),'failed':{'id':_0x44c020,'targetIds':_0x41c25e,'targetIdsAbsent':_0x3d100d(0xf5),..._0x3319b3},'warnings':[_0x3d100d(0xd9)],'verification':{'status':_0x3d100d(0xd6),'lookupCommand':_0x3d100d(0x11b),'targetIds':_0x41c25e}});}if(_0x30fe9d[_0x3d100d(0x11a)][_0x3d100d(0xc1)]>0x0){const _0x27c885=menuError('menu_verification_failed',_0x3d100d(0xee)+_0x30fe9d[_0x3d100d(0x11a)][_0x3d100d(0x118)](',\x20')+'.',_0x3d100d(0xca));throw menuFailure(_0x27c885,_0x1ae2a9,{'stage':'verification','succeeded':_0x41c25e['map'](_0x224f6d=>({'id':_0x224f6d,'deleteRequested':!![]})),'failed':{'id':_0x44c020,'targetIds':_0x41c25e,'absentIds':_0x30fe9d[_0x3d100d(0xe5)],'remainingIds':_0x30fe9d['remainingIds']},'warnings':[_0x3d100d(0xf6)],'verification':verificationFromOutcome(_0x30fe9d)});}const _0x5709a8=_0x41c25e['map'](_0x172dbe=>({'id':_0x172dbe,'deleted':!![]})),_0x38dd83=mutationResult({..._0x1ae2a9,'dryRun':![],'succeeded':_0x5709a8,'verification':{'checkedBy':_0x3d100d(0xb5),'plannedSnapshotHash':_0x1ae2a9[_0x3d100d(0xb8)],'finalSnapshotHash':_0x30fe9d[_0x3d100d(0xd1)]['hash'],'reportedDeletedCount':_0x206619,'targetAbsent':!_0x30fe9d[_0x3d100d(0xd1)][_0x3d100d(0xdb)]['has'](_0x44c020),'allTargetsAbsent':!![],'targetIds':_0x41c25e}});return{'ok':!![],'data':_0x38dd83,'message':_0x3d100d(0xc2)+_0x5709a8[_0x3d100d(0xc1)]+_0x3d100d(0xc8)+_0x44c020+'.'};}};async function readDeleteOutcome(_0x58ecb2,_0x2e1acd){const _0x299182=a116_0x32b09b,_0x52630b=await fetchMenuSnapshot(_0x58ecb2[_0x299182(0xe3)],_0x58ecb2[_0x299182(0xda)]);return{'snapshot':_0x52630b,'absentIds':_0x2e1acd[_0x299182(0xce)](_0x1b786f=>!_0x52630b[_0x299182(0xdb)][_0x299182(0x11f)](_0x1b786f)),'remainingIds':_0x2e1acd['filter'](_0x3c826e=>_0x52630b[_0x299182(0xdb)][_0x299182(0x11f)](_0x3c826e))};}function verificationFromOutcome(_0x95a732){const _0x352aef=a116_0x32b09b;return{'checkedBy':'menu\x20list','absentIds':_0x95a732[_0x352aef(0xe5)],'remainingIds':_0x95a732[_0x352aef(0x11a)]};}function validateDeleteDryRunInput(_0x696646){const _0x54d5d4=a116_0x32b09b;validateExactId(_0x696646);if(!hasFlag(_0x696646,_0x54d5d4(0xe9))||!_0x696646['str']('plan-out')['trim']())throw CliErrors[_0x54d5d4(0x103)](_0x54d5d4(0xe9),_0x54d5d4(0xe4));if(hasFlag(_0x696646,'plan'))throw CliErrors['validation']('--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.');}function validateDeleteExecuteInput(_0x1ee730){const _0x291a1b=a116_0x32b09b;if(!hasFlag(_0x1ee730,_0x291a1b(0xfa))||!_0x1ee730['str'](_0x291a1b(0xfa))[_0x291a1b(0xe1)]())throw CliErrors[_0x291a1b(0x103)](_0x291a1b(0xfa),'--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.');const _0x43b54e=['id',_0x291a1b(0xbb),_0x291a1b(0xe9),_0x291a1b(0xcf),_0x291a1b(0xb2),_0x291a1b(0xdc)][_0x291a1b(0xce)](_0x1dc3f6=>hasFlag(_0x1ee730,_0x1dc3f6));if(_0x43b54e['length']>0x0)throw CliErrors['validation'](_0x291a1b(0xea)+_0x43b54e['map'](_0x4ea2a1=>'--'+_0x4ea2a1)[_0x291a1b(0x118)](',\x20')+'.');}async function buildDeletePlan(_0x263c84){const _0x2acb8e=a116_0x32b09b,_0x2f23fa=validateExactId(_0x263c84),_0x317d66=await fetchMutationSnapshot(_0x263c84,_0x2acb8e(0xb1),_0x2f23fa),_0x556c13=requireMenu(_0x317d66,_0x2f23fa);assertExpectedState(_0x263c84,_0x556c13);const _0xc4606=_0x263c84[_0x2acb8e(0x122)](_0x2acb8e(0xbb));let _0xd20054;if(_0xc4606){if(_0x556c13[_0x2acb8e(0xc7)][_0x2acb8e(0xe1)]()['toLowerCase']()!=='folder')throw menuError('menu_recursive_requires_folder',_0x2acb8e(0xd5)+_0x556c13['id']+_0x2acb8e(0xfe)+(_0x556c13[_0x2acb8e(0xc7)]||_0x2acb8e(0xcc))+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0xd20054=collectDeleteTargets(_0x317d66,_0x556c13),_0xd20054[_0x2acb8e(0xba)](_0x536038=>assertDeleteSafety(_0x536038,!![]));}else assertDeleteSafety(_0x556c13),_0xd20054=[_0x556c13];assertNoSharedPages(_0x317d66,_0xd20054);const _0x281792=_0xd20054[_0x2acb8e(0xd3)](_0x166503=>_0x166503['id']),_0x26bfe9=cascadeForTargets(_0xd20054),_0x4cac2e=_0x26bfe9[_0x2acb8e(0xaf)][_0x2acb8e(0xc1)]>0x0?[_0x2acb8e(0x121)]:[];return mutationResult({'operation':_0x2acb8e(0x125),'selector':{'id':_0x2f23fa,'recursive':_0xc4606},'before':_0x556c13,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x2acb8e(0x120),'method':_0x2acb8e(0xb0),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x281792}}],'targets':_0xd20054,'deleteOrder':_0x281792,'snapshotHash':_0x317d66[_0x2acb8e(0x101)],'cascade':_0x26bfe9,'warnings':_0x4cac2e});}function assertDeleteSafety(_0x40902d,_0x2602ce=![]){const _0x80719b=a116_0x32b09b,_0x4ab59e=_0x40902d[_0x80719b(0xc7)][_0x80719b(0xe1)]()['toLowerCase']()===_0x80719b(0xfc);if(_0x40902d[_0x80719b(0x128)]>0x0&&(!_0x2602ce||!_0x4ab59e))throw menuError('menu_non_empty',_0x80719b(0xd5)+_0x40902d['id']+'\x20has\x20'+_0x40902d[_0x80719b(0x128)]+_0x80719b(0x117),_0x80719b(0x10a)+_0x40902d[_0x80719b(0xc3)]['join'](',\x20'));if(_0x4ab59e&&_0x40902d[_0x80719b(0x10d)]!=null)throw menuError(_0x80719b(0xcd),_0x80719b(0xf3)+_0x40902d['id']+_0x80719b(0xbf)+_0x40902d[_0x80719b(0x10d)]+_0x80719b(0xfb),_0x80719b(0xf0));if(!_0x4ab59e)return;if(!_0x40902d[_0x80719b(0x119)])throw menuError('menu_folder_resources_invalid',_0x80719b(0xf3)+_0x40902d['id']+_0x80719b(0xbe),_0x80719b(0x10f));if(_0x40902d[_0x80719b(0x107)][_0x80719b(0xc1)]>0x0)throw menuError(_0x80719b(0xd7),_0x80719b(0xf3)+_0x40902d['id']+_0x80719b(0x102)+_0x40902d[_0x80719b(0x107)]['length']+'\x20resource\x20URL(s).',_0x80719b(0x12c));}function collectDeleteTargets(_0x5d4fd5,_0x14fd44){const _0x23aad3=[],_0x4db9fe=new Set(),_0x550cc1=new Set(),_0x5b8acb=_0x1dc4cc=>{const _0x3bb2c1=a116_0x461f;if(_0x4db9fe['has'](_0x1dc4cc['id']))throw menuError(_0x3bb2c1(0xde),_0x3bb2c1(0xd8)+_0x1dc4cc['id']+'.');if(_0x550cc1['has'](_0x1dc4cc['id']))return;_0x4db9fe[_0x3bb2c1(0xc0)](_0x1dc4cc['id']);for(const _0x18ba9d of _0x1dc4cc[_0x3bb2c1(0xc3)]){const _0x2f5a59=_0x5d4fd5['byId'][_0x3bb2c1(0xd4)](_0x18ba9d);if(!_0x2f5a59)throw menuError(_0x3bb2c1(0xde),_0x3bb2c1(0xd5)+_0x1dc4cc['id']+_0x3bb2c1(0x124)+_0x18ba9d+'.');_0x5b8acb(_0x2f5a59);}_0x4db9fe[_0x3bb2c1(0x125)](_0x1dc4cc['id']),_0x550cc1['add'](_0x1dc4cc['id']),_0x23aad3[_0x3bb2c1(0xb7)](_0x1dc4cc);};return _0x5b8acb(_0x14fd44),_0x23aad3;}function assertDeleteTargetsComplete(_0x2e3fcb,_0x4986b6){const _0x5655ce=a116_0x32b09b,_0x1a7e14=requireMenu(_0x4986b6,_0x2e3fcb[_0x5655ce(0x116)]['id']);if(_0x2e3fcb[_0x5655ce(0xbb)]&&_0x1a7e14[_0x5655ce(0xc7)][_0x5655ce(0xe1)]()['toLowerCase']()!=='folder')throw menuError(_0x5655ce(0xdd),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x1a7e14['id']+_0x5655ce(0xbd));const _0x1be84e=_0x2e3fcb[_0x5655ce(0xbb)]?collectDeleteTargets(_0x4986b6,_0x1a7e14)[_0x5655ce(0xd3)](_0x4ada71=>_0x4ada71['id']):[_0x1a7e14['id']];if(JSON[_0x5655ce(0xf9)](_0x2e3fcb[_0x5655ce(0xf4)])!==JSON[_0x5655ce(0xf9)](_0x1be84e))throw menuError('menu_plan_invalid',_0x5655ce(0xc9),_0x5655ce(0xc5));}function assertNoSharedPages(_0x41ceb0,_0x4b2067){const _0x28d04c=a116_0x32b09b,_0x494e5f=new Set(_0x4b2067['map'](_0x58189=>_0x58189['id'])),_0x92c02b=new Set(_0x4b2067[_0x28d04c(0xd3)](_0x50f6b1=>_0x50f6b1[_0x28d04c(0x10d)])[_0x28d04c(0xce)](_0x53b751=>_0x53b751!=null));if(_0x92c02b['size']===0x0)return;const _0x1c00e5=_0x41ceb0[_0x28d04c(0xcb)][_0x28d04c(0xce)](_0x13a950=>!_0x494e5f['has'](_0x13a950['id'])&&_0x13a950['pageId']!=null&&_0x92c02b['has'](_0x13a950[_0x28d04c(0x10d)]));if(_0x1c00e5[_0x28d04c(0xc1)]===0x0)return;const _0x2f16a7=_0x1c00e5[_0x28d04c(0xd3)](_0x3dabb2=>_0x28d04c(0xef)+_0x3dabb2[_0x28d04c(0x10d)]+_0x28d04c(0xf8)+_0x3dabb2['id'])['join'](',\x20');throw menuError(_0x28d04c(0x11e),_0x28d04c(0xe8)+_0x2f16a7+'.',_0x28d04c(0x100));}function assertCascadeMatchesPlan(_0x5eb572,_0x302eb3){const _0x24d8a6=a116_0x32b09b,_0x2b6852=cascadeForTargets(_0x302eb3);if(JSON[_0x24d8a6(0xf9)](_0x5eb572['cascade'])!==JSON[_0x24d8a6(0xf9)](_0x2b6852))throw menuError(_0x24d8a6(0xdd),'Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.');}function cascadeForTargets(_0x28ccb3){const _0x3918ff=a116_0x32b09b,_0x329132=_0x28ccb3[_0x3918ff(0xd3)](_0x1795b2=>_0x1795b2[_0x3918ff(0x10d)])[_0x3918ff(0xce)](_0x5cdff8=>_0x5cdff8!=null)[_0x3918ff(0xce)]((_0x2259ba,_0xe68293,_0x4cfd7f)=>_0x4cfd7f[_0x3918ff(0x109)](_0x2259ba)===_0xe68293);return{'pages':_0x329132,'pageSchemaAffected':_0x329132['length']>0x0};}function asMenuError(_0x4e3753){const _0xa1a83=a116_0x32b09b;return _0x4e3753 instanceof CliError?_0x4e3753:menuError(_0xa1a83(0xdd),_0x4e3753 instanceof Error?_0x4e3753[_0xa1a83(0x11c)]:String(_0x4e3753));}
@@ -1 +1 @@
1
- const a112_0x3cfc30=a112_0x5b33;(function(_0x4c258a,_0x50ece1){const _0x148c01=a112_0x5b33,_0x48b0b4=_0x4c258a();while(!![]){try{const _0x30a7a8=-parseInt(_0x148c01(0x96))/0x1*(-parseInt(_0x148c01(0xb7))/0x2)+parseInt(_0x148c01(0x94))/0x3*(-parseInt(_0x148c01(0x87))/0x4)+parseInt(_0x148c01(0x93))/0x5+-parseInt(_0x148c01(0xbf))/0x6*(parseInt(_0x148c01(0xa4))/0x7)+-parseInt(_0x148c01(0xb8))/0x8*(parseInt(_0x148c01(0x7d))/0x9)+parseInt(_0x148c01(0x8c))/0xa+-parseInt(_0x148c01(0xb4))/0xb*(-parseInt(_0x148c01(0x88))/0xc);if(_0x30a7a8===_0x50ece1)break;else _0x48b0b4['push'](_0x48b0b4['shift']());}catch(_0x13f727){_0x48b0b4['push'](_0x48b0b4['shift']());}}}(a112_0x449b,0x73ed8));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a112_0x3cfc30(0xe5),'new-window':a112_0x3cfc30(0x83)};export function validateExternalMenuUrl(_0x43d2f3){const _0x2885a4=a112_0x3cfc30,_0x3e5338=_0x43d2f3[_0x2885a4(0xd6)]();let _0x20d9af;try{_0x20d9af=new URL(_0x3e5338);}catch{throw menuError(_0x2885a4(0xa8),_0x2885a4(0x75),_0x2885a4(0x7b));}if(_0x20d9af['protocol']!==_0x2885a4(0xcd))throw menuError(_0x2885a4(0xec),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0x2885a4(0xfa));if(_0x20d9af[_0x2885a4(0xfb)]||_0x20d9af[_0x2885a4(0xd0)])throw menuError(_0x2885a4(0xb6),_0x2885a4(0xab),_0x2885a4(0x89));return _0x3e5338;}export const menuExternalLinkCreate={'service':a112_0x3cfc30(0x84),'command':a112_0x3cfc30(0xb0),'description':a112_0x3cfc30(0xa7),'risk':a112_0x3cfc30(0x85),'structuredErrors':!![],'flags':[{'name':a112_0x3cfc30(0xeb),'type':a112_0x3cfc30(0xef),'required':!![],'description':a112_0x3cfc30(0xf5)},{'name':a112_0x3cfc30(0x91),'type':a112_0x3cfc30(0xef),'required':!![],'enum':[a112_0x3cfc30(0xe3),a112_0x3cfc30(0x78)],'description':a112_0x3cfc30(0xe8)},{'name':a112_0x3cfc30(0xce),'type':a112_0x3cfc30(0xef),'required':!![],'description':a112_0x3cfc30(0xed)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a112_0x3cfc30(0x74),'type':a112_0x3cfc30(0x99),'default':!![],'description':a112_0x3cfc30(0xe6)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x57bd43){validateAddInput(_0x57bd43);},async 'dryRun'(_0x45ded0){const _0x2d9919=a112_0x3cfc30;validateAddInput(_0x45ded0);const {plan:_0x387f18}=await buildSafeAddPlan(_0x45ded0,!![]),_0x3e2d3d=_0x387f18[_0x2d9919(0x9e)],_0x5287f9=createBody(_0x3e2d3d);return menuDryRunResult(_0x387f18,{'method':_0x2d9919(0xc2),'url':_0x2d9919(0xc4),'body':_0x5287f9,'description':_0x2d9919(0xf8)+JSON['stringify'](_0x3e2d3d['label'])+'\x20with\x20'+_0x45ded0[_0x2d9919(0xcc)](_0x2d9919(0x91))+_0x2d9919(0xdd)});},async 'execute'(_0x55bc35){const _0xfcc812=a112_0x3cfc30;validateAddInput(_0x55bc35);const _0x3655c7=await buildSafeAddPlan(_0x55bc35,![]),{plan:_0x44b16d,snapshot:_0x3b5c4b}=_0x3655c7,_0x2e8c24=_0x44b16d[_0xfcc812(0x9e)],_0x320e92=buildMenuLookupCommand(_0x55bc35[_0xfcc812(0xc9)]);await recheckAddSnapshot(_0x55bc35,_0x44b16d);let _0x3b20e0;try{_0x3b20e0=await createMenuEntity(_0x55bc35[_0xfcc812(0xc9)],_0x55bc35[_0xfcc812(0x90)],createBody(_0x2e8c24));}catch(_0x1b93c2){const _0x590fb8=mapMenuApiError(_0x1b93c2,_0xfcc812(0x6a));if(!isMenuResponseLoss(_0x1b93c2)||_0x590fb8['code']===_0xfcc812(0xad))throw externalLinkCreateFailure(_0x590fb8,_0x44b16d,{'stage':_0xfcc812(0xb2),'failed':{},'verification':{'status':_0xfcc812(0x7f),'lookupCommand':_0x320e92}});return recoverAfterResponseLoss(_0x55bc35,_0x3655c7,_0x320e92);}const _0x195784=Number(_0x3b20e0?.['id']),_0x1210f4=typeof _0x3b20e0?.[_0xfcc812(0x8a)]===_0xfcc812(0xef)?_0x3b20e0[_0xfcc812(0x8a)]:'';if(!Number[_0xfcc812(0xdc)](_0x195784)||_0x195784<=0x0||!_0x1210f4[_0xfcc812(0xd6)]()){const _0x5e5e3d=menuError(_0xfcc812(0xf9),_0xfcc812(0xde),_0xfcc812(0xaf)+_0x320e92+'\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.');throw externalLinkCreateFailure(_0x5e5e3d,_0x44b16d,{'stage':_0xfcc812(0x6b),'succeeded':Number[_0xfcc812(0xdc)](_0x195784)&&_0x195784>0x0?[{'id':_0x195784,'created':!![]}]:[],'failed':{'createdId':Number['isSafeInteger'](_0x195784)?_0x195784:null,'generatedPathConfirmed':Boolean(_0x1210f4[_0xfcc812(0xd6)]())},'warnings':[_0xfcc812(0xe2)],'after':Number[_0xfcc812(0xdc)](_0x195784)&&_0x195784>0x0?{..._0x2e8c24,'id':_0x195784,'path':_0x1210f4}:_0x2e8c24,'verification':{'status':_0xfcc812(0x7f),'lookupCommand':_0x320e92,...Number['isSafeInteger'](_0x195784)&&_0x195784>0x0?{'targetId':_0x195784}:{}}});}const _0x460658=await readAndVerifyCreatedMenu({'appCode':_0x55bc35[_0xfcc812(0xc9)],'cookie':_0x55bc35[_0xfcc812(0x90)],'plan':_0x44b16d,'afterPlan':_0x2e8c24,'createdId':_0x195784,'expectedPath':_0x1210f4,'lookupCommand':_0x320e92,'recovered':![]});return creationSuccess(_0x44b16d,_0x460658['snapshot'],_0x460658[_0xfcc812(0xa1)],![]);}};function validateAddInput(_0x7e6261){const _0x2b6f0e=a112_0x3cfc30;if(!_0x7e6261[_0x2b6f0e(0xcc)](_0x2b6f0e(0xeb))['trim']())throw CliErrors[_0x2b6f0e(0xdf)]('label');resolveExternalMenuType(_0x7e6261),validateExternalMenuUrl(_0x7e6261['str'](_0x2b6f0e(0xce))),parseParentId(_0x7e6261,'parent-id'),validateSort(_0x7e6261);}function resolveExternalMenuType(_0x5aa6c8){const _0x44bb0c=a112_0x3cfc30,_0x578e9b=_0x5aa6c8[_0x44bb0c(0xcc)](_0x44bb0c(0x91))[_0x44bb0c(0xd6)]();if(!_0x578e9b)throw CliErrors[_0x44bb0c(0xdf)](_0x44bb0c(0x91));const _0x30cdbd=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x578e9b];if(!_0x30cdbd)throw menuError('menu_open_mode_invalid',_0x44bb0c(0x6e),_0x44bb0c(0xd2));return _0x30cdbd;}async function buildAddPlan(_0x2135ca,_0x2dcadf){const _0x522a03=a112_0x3cfc30,_0x217d26=await fetchMutationSnapshot(_0x2135ca,_0x522a03(0x6a)),_0x1c019d=parseParentId(_0x2135ca,_0x522a03(0x6f))??null;if(_0x1c019d!=null)requireFolder(_0x217d26,_0x1c019d);const _0x9283d0=validateSort(_0x2135ca),_0x4a897a=_0x9283d0??nextSiblingSort(_0x217d26,_0x1c019d,'menu'),_0x33da11=_0x2135ca[_0x522a03(0xcc)](_0x522a03(0xeb))[_0x522a03(0xd6)](),_0x1514a3=resolveExternalMenuType(_0x2135ca),_0x3f9a8f=validateExternalMenuUrl(_0x2135ca[_0x522a03(0xcc)]('url')),_0x2f8445=Object[_0x522a03(0xe7)]['hasOwnProperty'][_0x522a03(0xa5)](_0x2135ca[_0x522a03(0x95)],_0x522a03(0x74))?_0x2135ca[_0x522a03(0xa9)](_0x522a03(0x74)):!![],_0x1be884={'id':null,'parentId':_0x1c019d,'label':_0x33da11,'path':_0x522a03(0xdb),'url':_0x3f9a8f,'type':_0x1514a3,'visible':_0x2f8445,'sort':_0x4a897a},_0x56e050=buildMenuLookupCommand(_0x2135ca[_0x522a03(0xc9)]),_0x397c69=mutationResult({'operation':_0x522a03(0xc3),'selector':{'parentId':_0x1c019d,'type':_0x1514a3,'label':_0x33da11,'url':_0x3f9a8f},'before':null,'after':_0x1be884,'dryRun':_0x2dcadf,'backend':[{'method':_0x522a03(0xc2),'path':_0x522a03(0xc4)}],'plannedActions':[{'stage':_0x522a03(0x7a),'method':'POST','path':'/smartapi/menu/create','body':createBody(_0x1be884)}],'snapshotHash':_0x217d26['hash'],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x56e050}});return{'plan':_0x397c69,'snapshot':_0x217d26};}async function buildSafeAddPlan(_0x420393,_0x289f45){try{return await buildAddPlan(_0x420393,_0x289f45);}catch(_0x2a66eb){throw safeMenuAddError(_0x2a66eb);}}function a112_0x5b33(_0x438b70,_0x372207){_0x438b70=_0x438b70-0x69;const _0x449b1d=a112_0x449b();let _0x5b33e5=_0x449b1d[_0x438b70];return _0x5b33e5;}async function recheckAddSnapshot(_0x10e3ea,_0x5a0cfa){const _0x206edf=a112_0x3cfc30;try{await recheckMutationSnapshot(_0x10e3ea,_0x5a0cfa,_0x206edf(0x6a));}catch(_0x28876b){const _0x370de7=getFailureRecord(_0x28876b);throw externalLinkCreateFailure(_0x28876b,_0x5a0cfa,{'stage':_0x206edf(0x9b),'failed':{..._0x370de7?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0x370de7['expectedSnapshotHash']}:{},..._0x370de7?.[_0x206edf(0xe0)]?{'currentSnapshotHash':_0x370de7[_0x206edf(0xe0)]}:{}}});}}function createBody(_0x5531e4){const _0x43f470=a112_0x3cfc30;return{'parentId':toApiParentId(_0x5531e4['parentId']),'label':String(_0x5531e4[_0x43f470(0xeb)]),'type':String(_0x5531e4['type']),'url':String(_0x5531e4[_0x43f470(0xce)]),'visible':Boolean(_0x5531e4[_0x43f470(0x74)]),'sort':Number(_0x5531e4['sort']),'extend':{}};}function buildMenuLookupCommand(_0x1f3a34){const _0x5afebf=a112_0x3cfc30,_0x52c25a='\x27'+_0x1f3a34[_0x5afebf(0xac)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x5afebf(0xaa)+_0x52c25a+_0x5afebf(0xf1);}async function recoverAfterResponseLoss(_0x467012,_0x2d77ce,_0x7171b1){const _0x40a067=a112_0x3cfc30,{plan:_0x51a305,snapshot:_0x8024ea}=_0x2d77ce,_0x1b0feb=_0x51a305[_0x40a067(0x9e)];let _0x511abf;try{_0x511abf=await fetchMenuSnapshot(_0x467012['appCode'],_0x467012[_0x40a067(0x90)]);}catch(_0x57722c){throw recoveryRequiredFailure(_0x51a305,_0x7171b1,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x20f6e6=_0x511abf['menus'][_0x40a067(0xd5)](_0x5b142d=>_0x5b142d[_0x40a067(0x98)]===_0x1b0feb[_0x40a067(0x98)]&&_0x5b142d[_0x40a067(0xb9)]===_0x1b0feb['type']&&_0x5b142d[_0x40a067(0xeb)]===_0x1b0feb[_0x40a067(0xeb)]&&_0x5b142d[_0x40a067(0xce)]===_0x1b0feb[_0x40a067(0xce)]),_0x41a0b6=_0x20f6e6[_0x40a067(0xd5)](_0x14ffab=>!_0x8024ea[_0x40a067(0xc1)][_0x40a067(0x72)](_0x14ffab['id'])),_0x49f7f6=_0x20f6e6[_0x40a067(0xd5)](_0x18d306=>_0x8024ea[_0x40a067(0xc1)][_0x40a067(0x72)](_0x18d306['id']));if(_0x20f6e6['length']!==0x1||_0x41a0b6[_0x40a067(0xe1)]!==0x1)throw recoveryRequiredFailure(_0x51a305,_0x7171b1,{'matchCount':_0x20f6e6[_0x40a067(0xe1)],'newMatchCount':_0x41a0b6[_0x40a067(0xe1)],'preexistingMatchCount':_0x49f7f6[_0x40a067(0xe1)]});const _0x51e124=_0x41a0b6[0x0];try{verifyCreatedFact(_0x51e124,_0x51e124['id'],_0x1b0feb,null);}catch(_0x3edd2b){const _0x133a58=_0x3edd2b instanceof Error&&'code'in _0x3edd2b?_0x3edd2b:menuError(_0x40a067(0xb1),'Recovered\x20menu\x20'+_0x51e124['id']+_0x40a067(0xf2),'Run\x20'+_0x7171b1+_0x40a067(0xe4));throw externalLinkCreateFailure(_0x133a58,_0x51a305,{'stage':'verification','succeeded':[{'id':_0x51e124['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x51e124['id'],'finalFactsConfirmed':![]},'after':_0x51e124,'warnings':[_0x40a067(0xbc)+_0x51e124['id']+_0x40a067(0x9f)],'verification':{'status':_0x40a067(0x7f),'targetId':_0x51e124['id'],'recovered':!![],'lookupCommand':_0x7171b1}});}return creationSuccess(_0x51a305,_0x511abf,_0x51e124,!![]);}function recoveryRequiredFailure(_0xb48c15,_0x3ec3a1,_0x59546f){const _0x27c0ae=a112_0x3cfc30,_0x45c643=menuError(_0x27c0ae(0xc0),_0x27c0ae(0x7e),_0x27c0ae(0xaf)+_0x3ec3a1+_0x27c0ae(0xcb));return externalLinkCreateFailure(_0x45c643,_0xb48c15,{'stage':_0x27c0ae(0x8f),'failed':_0x59546f,'warnings':[_0x27c0ae(0xd7)],'verification':{'status':_0x27c0ae(0x7f),..._0x59546f,'lookupCommand':_0x3ec3a1}});}async function readAndVerifyCreatedMenu(_0x4b41d0){const _0x28a7ab=a112_0x3cfc30;let _0x55496b;try{_0x55496b=await fetchMenuSnapshot(_0x4b41d0[_0x28a7ab(0xc9)],_0x4b41d0[_0x28a7ab(0x90)]);}catch(_0x4fb9ec){const _0x33af65=menuError(_0x28a7ab(0xb1),'Menu\x20'+_0x4b41d0[_0x28a7ab(0xc5)]+_0x28a7ab(0xc6),_0x28a7ab(0xaf)+_0x4b41d0[_0x28a7ab(0x79)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x33af65,_0x4b41d0[_0x28a7ab(0x80)],{'stage':_0x28a7ab(0xf0),'succeeded':[{'id':_0x4b41d0[_0x28a7ab(0xc5)],'created':!![]}],'failed':{'id':_0x4b41d0['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x4b41d0[_0x28a7ab(0xb3)],'id':_0x4b41d0['createdId'],'path':_0x4b41d0[_0x28a7ab(0xbd)]},'warnings':[_0x28a7ab(0xbc)+_0x4b41d0[_0x28a7ab(0xc5)]+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x28a7ab(0x7f),'targetId':_0x4b41d0[_0x28a7ab(0xc5)],'lookupCommand':_0x4b41d0[_0x28a7ab(0x79)]}});}const _0xb63a9d=_0x55496b[_0x28a7ab(0xc1)]['get'](_0x4b41d0[_0x28a7ab(0xc5)]);try{if(!_0xb63a9d)throw menuError('menu_verification_failed',_0x28a7ab(0x81)+_0x4b41d0[_0x28a7ab(0xc5)]+_0x28a7ab(0xda),_0x28a7ab(0xaf)+_0x4b41d0[_0x28a7ab(0x79)]+_0x28a7ab(0x8d));verifyCreatedFact(_0xb63a9d,_0x4b41d0[_0x28a7ab(0xc5)],_0x4b41d0[_0x28a7ab(0xb3)],_0x4b41d0['expectedPath']);}catch(_0x47a539){const _0x15c706=_0x47a539 instanceof Error&&'code'in _0x47a539?_0x47a539:menuError(_0x28a7ab(0xb1),_0x28a7ab(0x81)+_0x4b41d0['createdId']+_0x28a7ab(0x9a),_0x28a7ab(0xaf)+_0x4b41d0[_0x28a7ab(0x79)]+_0x28a7ab(0x8d));throw externalLinkCreateFailure(_0x15c706,_0x4b41d0[_0x28a7ab(0x80)],{'stage':_0x28a7ab(0xf0),'succeeded':[{'id':_0x4b41d0[_0x28a7ab(0xc5)],'created':!![]}],'failed':{'id':_0x4b41d0[_0x28a7ab(0xc5)],'finalFactsConfirmed':![]},'after':_0xb63a9d??{..._0x4b41d0[_0x28a7ab(0xb3)],'id':_0x4b41d0[_0x28a7ab(0xc5)],'path':_0x4b41d0[_0x28a7ab(0xbd)]},'warnings':[_0x28a7ab(0xbc)+_0x4b41d0['createdId']+_0x28a7ab(0x9c)],'verification':{'status':_0x28a7ab(0x7f),'targetId':_0x4b41d0['createdId'],'recovered':_0x4b41d0['recovered'],'lookupCommand':_0x4b41d0[_0x28a7ab(0x79)]}});}return{'snapshot':_0x55496b,'fact':_0xb63a9d};}function verifyCreatedFact(_0x4abe65,_0x1a9f2e,_0x2c1581,_0x4b733d){const _0x354e3b=a112_0x3cfc30;if(!Number[_0x354e3b(0xdc)](_0x4abe65['id'])||_0x4abe65['id']<=0x0||_0x4abe65['id']!==_0x1a9f2e)throw menuError(_0x354e3b(0xb1),_0x354e3b(0xb5),_0x354e3b(0x71));const _0x5c6692=[[_0x354e3b(0xbe),_0x4abe65[_0x354e3b(0x98)],_0x2c1581[_0x354e3b(0x98)]],['type',_0x4abe65[_0x354e3b(0xb9)],_0x2c1581['type']],[_0x354e3b(0xeb),_0x4abe65['label'],_0x2c1581[_0x354e3b(0xeb)]],[_0x354e3b(0x92),_0x4abe65[_0x354e3b(0xce)],_0x2c1581[_0x354e3b(0xce)]],[_0x354e3b(0xf4),_0x4abe65[_0x354e3b(0x74)],_0x2c1581[_0x354e3b(0x74)]],[_0x354e3b(0xa6),_0x4abe65['sort'],_0x2c1581[_0x354e3b(0xa6)]]];for(const [_0x1f7b2e,_0x5a2766,_0x2c2e40]of _0x5c6692){if(_0x5a2766!==_0x2c2e40)throw menuError('menu_verification_failed',_0x354e3b(0x81)+_0x4abe65['id']+'\x20has\x20an\x20unexpected\x20'+_0x1f7b2e+'.',_0x354e3b(0xbb));}if(!_0x4abe65[_0x354e3b(0x8a)][_0x354e3b(0xd6)]()||_0x4b733d!==null&&_0x4abe65[_0x354e3b(0x8a)]!==_0x4b733d)throw menuError(_0x354e3b(0xb1),_0x354e3b(0x81)+_0x4abe65['id']+_0x354e3b(0x6c),_0x354e3b(0xbb));}function creationSuccess(_0x509b11,_0xdffc16,_0x15e907,_0x42d499){const _0x4bc4f7=a112_0x3cfc30,_0x3d5c36=mutationResult({..._0x509b11,'after':_0x15e907,'dryRun':![],'succeeded':[{'id':_0x15e907['id'],'created':!![],'recovered':_0x42d499}],'verification':{'checkedBy':_0x4bc4f7(0xe9),'snapshotHash':_0xdffc16[_0x4bc4f7(0xd4)],'targetId':_0x15e907['id'],'recovered':_0x42d499,'path':_0x15e907['path']}});return{'ok':!![],'message':_0x42d499?_0x4bc4f7(0x7c)+_0x15e907['id']+_0x4bc4f7(0x8b):'Created\x20external\x20menu\x20'+_0x15e907['id']+'.','data':{..._0x3d5c36,'recovered':_0x42d499}};}function externalLinkCreateFailure(_0x1f5dfc,_0x3d5ddd,_0x332953){const _0x484322=a112_0x3cfc30;return menuFailure(safeMenuAddError(_0x1f5dfc),redactFailurePlan(_0x3d5ddd),{..._0x332953,'succeeded':_0x332953[_0x484322(0x73)]?.[_0x484322(0x9d)](redactFailureRecord),'failed':_0x332953['failed']?redactFailureRecord(_0x332953[_0x484322(0x7f)]):undefined,'verification':_0x332953[_0x484322(0xf0)]?redactFailureRecord(_0x332953[_0x484322(0xf0)]):undefined,'after':_0x332953[_0x484322(0x9e)]===undefined?undefined:redactFailureValue(_0x332953[_0x484322(0x9e)])});}function redactFailurePlan(_0x30d610){const _0x139b98=a112_0x3cfc30;return{..._0x30d610,'selector':redactFailureRecord(_0x30d610[_0x139b98(0xf7)]),'before':redactFailureValue(_0x30d610[_0x139b98(0xa0)]),'after':redactFailureValue(_0x30d610[_0x139b98(0x9e)]),'plannedActions':_0x30d610[_0x139b98(0x70)]?.[_0x139b98(0x9d)](_0x529e4a=>({..._0x529e4a,'body':redactFailureRecord(_0x529e4a[_0x139b98(0x77)])})),'succeeded':_0x30d610[_0x139b98(0x73)]['map'](redactFailureRecord),'failed':_0x30d610[_0x139b98(0x7f)][_0x139b98(0x9d)](redactFailureRecord),'verification':_0x30d610['verification']?redactFailureRecord(_0x30d610[_0x139b98(0xf0)]):undefined};}function redactFailureRecord(_0x4d0bec){return redactFailureValue(_0x4d0bec);}function redactFailureValue(_0x30c2cd,_0x5330f4=''){const _0x30289f=a112_0x3cfc30,_0x4f1943=_0x5330f4[_0x30289f(0xf3)]()['replace'](/[^a-z0-9]/g,'');if(['cause',_0x30289f(0x86),_0x30289f(0xa3),_0x30289f(0x76)][_0x30289f(0x69)](_0x4f1943))return'<redacted>';if(Array[_0x30289f(0xd9)](_0x30c2cd))return _0x30c2cd[_0x30289f(0x9d)](_0x27415f=>redactFailureValue(_0x27415f));if(_0x30c2cd&&typeof _0x30c2cd===_0x30289f(0xae))return Object[_0x30289f(0xcf)](Object[_0x30289f(0xea)](_0x30c2cd)[_0x30289f(0x9d)](([_0xd70879,_0x261978])=>[_0xd70879,redactFailureValue(_0x261978,_0xd70879)]));return _0x30c2cd;}function safeMenuAddError(_0x44e4e1){const _0x113954=a112_0x3cfc30,_0x4d29e7=_0x44e4e1 instanceof CliError?_0x44e4e1['code']:_0x113954(0xd8);switch(_0x4d29e7){case'menu_state_drift':return menuError(_0x4d29e7,_0x113954(0xc8),_0x113954(0xa2));case _0x113954(0xad):return menuError(_0x4d29e7,_0x113954(0x82),_0x113954(0xf6));case'menu_create_response_invalid':return menuError(_0x4d29e7,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x113954(0xd1));case _0x113954(0xb1):return menuError(_0x4d29e7,_0x113954(0xd3),_0x113954(0xd1));case _0x113954(0xc0):return menuError(_0x4d29e7,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x113954(0xd8):case _0x113954(0xca):case _0x113954(0xee):case _0x113954(0x6d):case _0x113954(0x8e):return menuError(_0x4d29e7,_0x113954(0xc7),_0x113954(0xba));default:return menuError(_0x113954(0xd8),'External\x20menu\x20creation\x20failed.',_0x113954(0xba));}}function getFailureRecord(_0x2728f4){const _0x5751f3=a112_0x3cfc30;if(!(_0x2728f4 instanceof Error)||!(_0x5751f3(0x97)in _0x2728f4))return undefined;const _0x22f0dd=_0x2728f4['data'];if(!_0x22f0dd||typeof _0x22f0dd!==_0x5751f3(0xae))return undefined;const _0x54843e=_0x22f0dd[_0x5751f3(0x7f)];if(!Array[_0x5751f3(0xd9)](_0x54843e)||!_0x54843e[0x0]||typeof _0x54843e[0x0]!==_0x5751f3(0xae))return undefined;return _0x54843e[0x0];}function a112_0x449b(){const _0x6861f1=['External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','replace','menu_permission_denied','object','Run\x20','external-link-create','menu_verification_failed','create','afterPlan','193303tTnWYh','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','menu_url_credentials_forbidden','12jZMTyg','8UnUIyE','type','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','Menu\x20','expectedPath','parent','6nVSJLT','menu_create_recovery_required','byId','POST','add','/smartapi/menu/create','createdId','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','External\x20menu\x20creation\x20failed.','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','appCode','menu_not_found','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','str','https:','url','fromEntries','password','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','hash','filter','trim','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','menu_mutation_failed','isArray','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','<platform-generated>','isSafeInteger','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','flagMissing','currentSnapshotHash','length','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','embedded','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','iframe','Whether\x20the\x20menu\x20is\x20visible','prototype','How\x20to\x20open\x20the\x20external\x20website','menu\x20list','entries','label','menu_url_https_required','External\x20HTTPS\x20URL','menu_parent_not_folder','string','verification','\x20--format\x20compress','\x20could\x20not\x20be\x20verified.','toLowerCase','visibility','Menu\x20label','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','selector','Would\x20create\x20external\x20website\x20link\x20menu\x20','menu_create_response_invalid','Provide\x20an\x20HTTPS\x20URL.','username','includes','create\x20external\x20menu','create-response-validation','\x20has\x20an\x20unexpected\x20generated\x20path.','menu_sort_invalid','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','parent-id','plannedActions','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','has','succeeded','visible','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','rawerror','body','new-window','lookupCommand','create-menu','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','Recovered\x20created\x20external\x20menu\x20','6825015LzOXyf','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','failed','plan','Created\x20menu\x20','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','link','menu','write','causemessage','9308sdsMoU','552dgKjLZ','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','path','\x20after\x20response\x20loss.','6393930awAqCT','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','menu_sort_overflow','create-recovery','cookie','open-mode','URL','4109050YQzuSF','327dLCEDi','rawFlags','233QxCCfL','data','parentId','boolean','\x20failed\x20final\x20verification.','pre-write-recheck','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','map','after','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','before','fact','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','readbackerror','5488987gZkhNT','call','sort','Create\x20an\x20external\x20website\x20link\x20menu','menu_url_invalid','bool','rabetbase\x20menu\x20list\x20--appcode\x20'];a112_0x449b=function(){return _0x6861f1;};return a112_0x449b();}
1
+ const a117_0x528990=a117_0x208a;(function(_0x484d45,_0x4465c8){const _0x6db8d5=a117_0x208a,_0x3ac838=_0x484d45();while(!![]){try{const _0x5bf3a9=-parseInt(_0x6db8d5(0x172))/0x1+-parseInt(_0x6db8d5(0x17f))/0x2+parseInt(_0x6db8d5(0x161))/0x3+parseInt(_0x6db8d5(0x1a7))/0x4+parseInt(_0x6db8d5(0x15f))/0x5+-parseInt(_0x6db8d5(0x194))/0x6+-parseInt(_0x6db8d5(0x165))/0x7*(-parseInt(_0x6db8d5(0x1ae))/0x8);if(_0x5bf3a9===_0x4465c8)break;else _0x3ac838['push'](_0x3ac838['shift']());}catch(_0x141d46){_0x3ac838['push'](_0x3ac838['shift']());}}}(a117_0x4576,0x7a21e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';function a117_0x4576(){const _0x4b02f8=['lookupCommand','replace','plan','menu_not_found','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','\x20after\x20response\x20loss.','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','957917NWNIZK','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','string','menus','toLowerCase','<platform-generated>','body','includes','object','\x20has\x20an\x20unexpected\x20generated\x20path.','selector','parent-id','menu_url_credentials_forbidden','1064946yNJvcz','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','rabetbase\x20menu\x20list\x20--appcode\x20','menu_url_https_required','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','create-recovery','createdId','iframe','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','embedded','expectedPath','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','hasOwnProperty','\x20has\x20an\x20unexpected\x20','Recovered\x20menu\x20','has','data','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','External\x20menu\x20creation\x20failed.','rawFlags','3417270yIEfOJ','menu_state_drift','boolean','map','create\x20external\x20menu','Whether\x20the\x20menu\x20is\x20visible','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Created\x20external\x20menu\x20','write','Recovered\x20created\x20external\x20menu\x20','trim','menu_mutation_failed','after','appCode','afterPlan','menu_parent_not_folder','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','verification','new-window','1665252zlpdFu','parentId','get','fact','URL','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','582520QLyJYw','Created\x20menu\x20','\x20with\x20','Run\x20','path','visible','expectedSnapshotHash','flagMissing','menu_permission_denied','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','url','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','isSafeInteger','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','byId','cookie','length','isArray','str','readbackerror','label','causemessage','filter','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','Provide\x20an\x20HTTPS\x20URL.','protocol','menu_verification_failed','external-link-create','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','pre-write-recheck','Would\x20create\x20external\x20website\x20link\x20menu\x20','plannedActions','menu_sort_overflow','hash','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','\x27\x5c\x27\x27','create-response-validation','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','\x20could\x20not\x20be\x20verified.','failed','menu\x20list','POST','type','How\x20to\x20open\x20the\x20external\x20website','currentSnapshotHash','open-mode','sort','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','menu_create_recovery_required','entries','parent','Create\x20an\x20external\x20website\x20link\x20menu','3863480aTNUdI','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','2584425tdrHNA','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','code','username','49oCOvsr','menu_create_response_invalid','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','menu','External\x20HTTPS\x20URL','Menu\x20'];a117_0x4576=function(){return _0x4b02f8;};return a117_0x4576();}const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a117_0x528990(0x186),'new-window':'link'};export function validateExternalMenuUrl(_0xe25567){const _0xeb8a25=a117_0x528990,_0x33ad13=_0xe25567['trim']();let _0x389578;try{_0x389578=new URL(_0x33ad13);}catch{throw menuError('menu_url_invalid',_0xeb8a25(0x160),_0xeb8a25(0x147));}if(_0x389578[_0xeb8a25(0x144)]!=='https:')throw menuError(_0xeb8a25(0x182),_0xeb8a25(0x162),_0xeb8a25(0x143));if(_0x389578[_0xeb8a25(0x164)]||_0x389578['password'])throw menuError(_0xeb8a25(0x17e),_0xeb8a25(0x140),_0xeb8a25(0x1b7));return _0x33ad13;}export const menuExternalLinkCreate={'service':a117_0x528990(0x168),'command':a117_0x528990(0x146),'description':a117_0x528990(0x15e),'risk':a117_0x528990(0x19c),'structuredErrors':!![],'flags':[{'name':'label','type':a117_0x528990(0x174),'required':!![],'description':'Menu\x20label'},{'name':a117_0x528990(0x158),'type':a117_0x528990(0x174),'required':!![],'enum':[a117_0x528990(0x188),a117_0x528990(0x1a6)],'description':a117_0x528990(0x156)},{'name':a117_0x528990(0x1b8),'type':a117_0x528990(0x174),'required':!![],'description':a117_0x528990(0x169)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a117_0x528990(0x1b3),'type':a117_0x528990(0x196),'default':!![],'description':a117_0x528990(0x199)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4cd31d){validateAddInput(_0x4cd31d);},async 'dryRun'(_0x35c067){const _0x21921b=a117_0x528990;validateAddInput(_0x35c067);const {plan:_0x593622}=await buildSafeAddPlan(_0x35c067,!![]),_0xb33b26=_0x593622[_0x21921b(0x1a0)],_0x26b8b7=createBody(_0xb33b26);return menuDryRunResult(_0x593622,{'method':_0x21921b(0x154),'url':'/smartapi/menu/create','body':_0x26b8b7,'description':_0x21921b(0x149)+JSON['stringify'](_0xb33b26[_0x21921b(0x1c3)])+_0x21921b(0x1b0)+_0x35c067['str'](_0x21921b(0x158))+_0x21921b(0x1bc)});},async 'execute'(_0x334507){const _0x4c8378=a117_0x528990;validateAddInput(_0x334507);const _0x527f77=await buildSafeAddPlan(_0x334507,![]),{plan:_0x4d3b49,snapshot:_0xd68e9d}=_0x527f77,_0x5a18a7=_0x4d3b49[_0x4c8378(0x1a0)],_0x37833c=buildMenuLookupCommand(_0x334507['appCode']);await recheckAddSnapshot(_0x334507,_0x4d3b49);let _0x4abf09;try{_0x4abf09=await createMenuEntity(_0x334507[_0x4c8378(0x1a1)],_0x334507[_0x4c8378(0x1be)],createBody(_0x5a18a7));}catch(_0x23cce2){const _0x8571a3=mapMenuApiError(_0x23cce2,_0x4c8378(0x198));if(!isMenuResponseLoss(_0x23cce2)||_0x8571a3[_0x4c8378(0x163)]===_0x4c8378(0x1b6))throw externalLinkCreateFailure(_0x8571a3,_0x4d3b49,{'stage':'create','failed':{},'verification':{'status':'failed','lookupCommand':_0x37833c}});return recoverAfterResponseLoss(_0x334507,_0x527f77,_0x37833c);}const _0x55732e=Number(_0x4abf09?.['id']),_0x62853e=typeof _0x4abf09?.[_0x4c8378(0x1b2)]==='string'?_0x4abf09[_0x4c8378(0x1b2)]:'';if(!Number[_0x4c8378(0x1ba)](_0x55732e)||_0x55732e<=0x0||!_0x62853e['trim']()){const _0x498ef2=menuError(_0x4c8378(0x166),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.',_0x4c8378(0x1b1)+_0x37833c+'\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.');throw externalLinkCreateFailure(_0x498ef2,_0x4d3b49,{'stage':_0x4c8378(0x14f),'succeeded':Number['isSafeInteger'](_0x55732e)&&_0x55732e>0x0?[{'id':_0x55732e,'created':!![]}]:[],'failed':{'createdId':Number[_0x4c8378(0x1ba)](_0x55732e)?_0x55732e:null,'generatedPathConfirmed':Boolean(_0x62853e[_0x4c8378(0x19e)]())},'warnings':[_0x4c8378(0x13f)],'after':Number[_0x4c8378(0x1ba)](_0x55732e)&&_0x55732e>0x0?{..._0x5a18a7,'id':_0x55732e,'path':_0x62853e}:_0x5a18a7,'verification':{'status':_0x4c8378(0x152),'lookupCommand':_0x37833c,...Number[_0x4c8378(0x1ba)](_0x55732e)&&_0x55732e>0x0?{'targetId':_0x55732e}:{}}});}const _0x80ec7f=await readAndVerifyCreatedMenu({'appCode':_0x334507[_0x4c8378(0x1a1)],'cookie':_0x334507[_0x4c8378(0x1be)],'plan':_0x4d3b49,'afterPlan':_0x5a18a7,'createdId':_0x55732e,'expectedPath':_0x62853e,'lookupCommand':_0x37833c,'recovered':![]});return creationSuccess(_0x4d3b49,_0x80ec7f['snapshot'],_0x80ec7f[_0x4c8378(0x1aa)],![]);}};function validateAddInput(_0x2ab1f1){const _0x1c1e51=a117_0x528990;if(!_0x2ab1f1[_0x1c1e51(0x1c1)](_0x1c1e51(0x1c3))['trim']())throw CliErrors[_0x1c1e51(0x1b5)](_0x1c1e51(0x1c3));resolveExternalMenuType(_0x2ab1f1),validateExternalMenuUrl(_0x2ab1f1[_0x1c1e51(0x1c1)](_0x1c1e51(0x1b8))),parseParentId(_0x2ab1f1,'parent-id'),validateSort(_0x2ab1f1);}function a117_0x208a(_0x2c263e,_0x3d75d5){_0x2c263e=_0x2c263e-0x13f;const _0x4576a5=a117_0x4576();let _0x208adc=_0x4576a5[_0x2c263e];return _0x208adc;}function resolveExternalMenuType(_0x24e03f){const _0x23c21e=a117_0x528990,_0x1b603a=_0x24e03f[_0x23c21e(0x1c1)](_0x23c21e(0x158))[_0x23c21e(0x19e)]();if(!_0x1b603a)throw CliErrors['flagMissing'](_0x23c21e(0x158));const _0x11ed61=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x1b603a];if(!_0x11ed61)throw menuError('menu_open_mode_invalid',_0x23c21e(0x150),_0x23c21e(0x1b9));return _0x11ed61;}async function buildAddPlan(_0x128430,_0x249d5f){const _0x286805=a117_0x528990,_0x53702d=await fetchMutationSnapshot(_0x128430,_0x286805(0x198)),_0x40f194=parseParentId(_0x128430,_0x286805(0x17d))??null;if(_0x40f194!=null)requireFolder(_0x53702d,_0x40f194);const _0x24343d=validateSort(_0x128430),_0x51676c=_0x24343d??nextSiblingSort(_0x53702d,_0x40f194,'menu'),_0x2f5ebe=_0x128430[_0x286805(0x1c1)](_0x286805(0x1c3))[_0x286805(0x19e)](),_0x3bb5f4=resolveExternalMenuType(_0x128430),_0x4e7aa5=validateExternalMenuUrl(_0x128430[_0x286805(0x1c1)](_0x286805(0x1b8))),_0x36d9d1=Object['prototype'][_0x286805(0x18b)]['call'](_0x128430[_0x286805(0x193)],_0x286805(0x1b3))?_0x128430['bool'](_0x286805(0x1b3)):!![],_0x21e575={'id':null,'parentId':_0x40f194,'label':_0x2f5ebe,'path':_0x286805(0x177),'url':_0x4e7aa5,'type':_0x3bb5f4,'visible':_0x36d9d1,'sort':_0x51676c},_0x3b99d3=buildMenuLookupCommand(_0x128430[_0x286805(0x1a1)]),_0x43f4ad=mutationResult({'operation':'add','selector':{'parentId':_0x40f194,'type':_0x3bb5f4,'label':_0x2f5ebe,'url':_0x4e7aa5},'before':null,'after':_0x21e575,'dryRun':_0x249d5f,'backend':[{'method':_0x286805(0x154),'path':'/smartapi/menu/create'}],'plannedActions':[{'stage':'create-menu','method':_0x286805(0x154),'path':'/smartapi/menu/create','body':createBody(_0x21e575)}],'snapshotHash':_0x53702d[_0x286805(0x14c)],'warnings':[_0x286805(0x173)],'verification':{'lookupCommand':_0x3b99d3}});return{'plan':_0x43f4ad,'snapshot':_0x53702d};}async function buildSafeAddPlan(_0x6e5855,_0x3beeae){try{return await buildAddPlan(_0x6e5855,_0x3beeae);}catch(_0xb84068){throw safeMenuAddError(_0xb84068);}}async function recheckAddSnapshot(_0x1cc676,_0x21cb10){const _0x47846a=a117_0x528990;try{await recheckMutationSnapshot(_0x1cc676,_0x21cb10,_0x47846a(0x198));}catch(_0x4fde13){const _0xe320cb=getFailureRecord(_0x4fde13);throw externalLinkCreateFailure(_0x4fde13,_0x21cb10,{'stage':_0x47846a(0x148),'failed':{..._0xe320cb?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0xe320cb[_0x47846a(0x1b4)]}:{},..._0xe320cb?.[_0x47846a(0x157)]?{'currentSnapshotHash':_0xe320cb['currentSnapshotHash']}:{}}});}}function createBody(_0x2f5472){const _0x26530d=a117_0x528990;return{'parentId':toApiParentId(_0x2f5472['parentId']),'label':String(_0x2f5472[_0x26530d(0x1c3)]),'type':String(_0x2f5472[_0x26530d(0x155)]),'url':String(_0x2f5472[_0x26530d(0x1b8)]),'visible':Boolean(_0x2f5472[_0x26530d(0x1b3)]),'sort':Number(_0x2f5472[_0x26530d(0x159)]),'extend':{}};}function buildMenuLookupCommand(_0xb3f81a){const _0x29a059=a117_0x528990,_0x597131='\x27'+_0xb3f81a[_0x29a059(0x16c)](/'/g,_0x29a059(0x14e))+'\x27';return _0x29a059(0x181)+_0x597131+'\x20--format\x20compress';}async function recoverAfterResponseLoss(_0x35786f,_0x976e2d,_0xc8e29c){const _0x21f9a0=a117_0x528990,{plan:_0x329ae1,snapshot:_0x3a487d}=_0x976e2d,_0x8bd222=_0x329ae1[_0x21f9a0(0x1a0)];let _0x31f66a;try{_0x31f66a=await fetchMenuSnapshot(_0x35786f[_0x21f9a0(0x1a1)],_0x35786f[_0x21f9a0(0x1be)]);}catch(_0x5d4767){throw recoveryRequiredFailure(_0x329ae1,_0xc8e29c,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x2c24a4=_0x31f66a[_0x21f9a0(0x175)][_0x21f9a0(0x1c5)](_0x36a2c9=>_0x36a2c9[_0x21f9a0(0x1a8)]===_0x8bd222['parentId']&&_0x36a2c9['type']===_0x8bd222[_0x21f9a0(0x155)]&&_0x36a2c9[_0x21f9a0(0x1c3)]===_0x8bd222['label']&&_0x36a2c9[_0x21f9a0(0x1b8)]===_0x8bd222[_0x21f9a0(0x1b8)]),_0x9233fd=_0x2c24a4[_0x21f9a0(0x1c5)](_0x1cf29d=>!_0x3a487d[_0x21f9a0(0x1bd)]['has'](_0x1cf29d['id'])),_0x1e3cef=_0x2c24a4[_0x21f9a0(0x1c5)](_0x351e9f=>_0x3a487d[_0x21f9a0(0x1bd)][_0x21f9a0(0x18e)](_0x351e9f['id']));if(_0x2c24a4['length']!==0x1||_0x9233fd['length']!==0x1)throw recoveryRequiredFailure(_0x329ae1,_0xc8e29c,{'matchCount':_0x2c24a4[_0x21f9a0(0x1bf)],'newMatchCount':_0x9233fd[_0x21f9a0(0x1bf)],'preexistingMatchCount':_0x1e3cef[_0x21f9a0(0x1bf)]});const _0x4bdbce=_0x9233fd[0x0];try{verifyCreatedFact(_0x4bdbce,_0x4bdbce['id'],_0x8bd222,null);}catch(_0x5de1a9){const _0x5914a7=_0x5de1a9 instanceof Error&&'code'in _0x5de1a9?_0x5de1a9:menuError('menu_verification_failed',_0x21f9a0(0x18d)+_0x4bdbce['id']+_0x21f9a0(0x151),_0x21f9a0(0x1b1)+_0xc8e29c+_0x21f9a0(0x141));throw externalLinkCreateFailure(_0x5914a7,_0x329ae1,{'stage':_0x21f9a0(0x1a5),'succeeded':[{'id':_0x4bdbce['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x4bdbce['id'],'finalFactsConfirmed':![]},'after':_0x4bdbce,'warnings':[_0x21f9a0(0x16a)+_0x4bdbce['id']+_0x21f9a0(0x15a)],'verification':{'status':_0x21f9a0(0x152),'targetId':_0x4bdbce['id'],'recovered':!![],'lookupCommand':_0xc8e29c}});}return creationSuccess(_0x329ae1,_0x31f66a,_0x4bdbce,!![]);}function recoveryRequiredFailure(_0x2ff098,_0x2a6f53,_0x3cdc1b){const _0x44aa37=a117_0x528990,_0x2f397a=menuError('menu_create_recovery_required','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.',_0x44aa37(0x1b1)+_0x2a6f53+_0x44aa37(0x187));return externalLinkCreateFailure(_0x2f397a,_0x2ff098,{'stage':_0x44aa37(0x184),'failed':_0x3cdc1b,'warnings':[_0x44aa37(0x1ac)],'verification':{'status':_0x44aa37(0x152),..._0x3cdc1b,'lookupCommand':_0x2a6f53}});}async function readAndVerifyCreatedMenu(_0x413b5c){const _0x5d98b6=a117_0x528990;let _0x448c55;try{_0x448c55=await fetchMenuSnapshot(_0x413b5c[_0x5d98b6(0x1a1)],_0x413b5c[_0x5d98b6(0x1be)]);}catch(_0x29ff56){const _0x2bec16=menuError(_0x5d98b6(0x145),_0x5d98b6(0x16a)+_0x413b5c[_0x5d98b6(0x185)]+_0x5d98b6(0x191),_0x5d98b6(0x1b1)+_0x413b5c[_0x5d98b6(0x16b)]+_0x5d98b6(0x1bb));throw externalLinkCreateFailure(_0x2bec16,_0x413b5c['plan'],{'stage':_0x5d98b6(0x1a5),'succeeded':[{'id':_0x413b5c[_0x5d98b6(0x185)],'created':!![]}],'failed':{'id':_0x413b5c[_0x5d98b6(0x185)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x413b5c[_0x5d98b6(0x1a2)],'id':_0x413b5c[_0x5d98b6(0x185)],'path':_0x413b5c[_0x5d98b6(0x189)]},'warnings':['Menu\x20'+_0x413b5c[_0x5d98b6(0x185)]+_0x5d98b6(0x142)],'verification':{'status':_0x5d98b6(0x152),'targetId':_0x413b5c[_0x5d98b6(0x185)],'lookupCommand':_0x413b5c[_0x5d98b6(0x16b)]}});}const _0x11c937=_0x448c55[_0x5d98b6(0x1bd)][_0x5d98b6(0x1a9)](_0x413b5c[_0x5d98b6(0x185)]);try{if(!_0x11c937)throw menuError(_0x5d98b6(0x145),'Created\x20menu\x20'+_0x413b5c['createdId']+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.','Run\x20'+_0x413b5c['lookupCommand']+_0x5d98b6(0x1bb));verifyCreatedFact(_0x11c937,_0x413b5c['createdId'],_0x413b5c[_0x5d98b6(0x1a2)],_0x413b5c[_0x5d98b6(0x189)]);}catch(_0x52037f){const _0x549618=_0x52037f instanceof Error&&_0x5d98b6(0x163)in _0x52037f?_0x52037f:menuError(_0x5d98b6(0x145),_0x5d98b6(0x1af)+_0x413b5c['createdId']+'\x20failed\x20final\x20verification.',_0x5d98b6(0x1b1)+_0x413b5c['lookupCommand']+_0x5d98b6(0x1bb));throw externalLinkCreateFailure(_0x549618,_0x413b5c[_0x5d98b6(0x16d)],{'stage':_0x5d98b6(0x1a5),'succeeded':[{'id':_0x413b5c[_0x5d98b6(0x185)],'created':!![]}],'failed':{'id':_0x413b5c[_0x5d98b6(0x185)],'finalFactsConfirmed':![]},'after':_0x11c937??{..._0x413b5c[_0x5d98b6(0x1a2)],'id':_0x413b5c[_0x5d98b6(0x185)],'path':_0x413b5c[_0x5d98b6(0x189)]},'warnings':[_0x5d98b6(0x16a)+_0x413b5c[_0x5d98b6(0x185)]+_0x5d98b6(0x167)],'verification':{'status':_0x5d98b6(0x152),'targetId':_0x413b5c['createdId'],'recovered':_0x413b5c['recovered'],'lookupCommand':_0x413b5c[_0x5d98b6(0x16b)]}});}return{'snapshot':_0x448c55,'fact':_0x11c937};}function verifyCreatedFact(_0x3aaa76,_0x576cef,_0x34fc8f,_0x492640){const _0xda9eba=a117_0x528990;if(!Number[_0xda9eba(0x1ba)](_0x3aaa76['id'])||_0x3aaa76['id']<=0x0||_0x3aaa76['id']!==_0x576cef)throw menuError(_0xda9eba(0x145),_0xda9eba(0x14d),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x359c2d=[[_0xda9eba(0x15d),_0x3aaa76[_0xda9eba(0x1a8)],_0x34fc8f['parentId']],[_0xda9eba(0x155),_0x3aaa76[_0xda9eba(0x155)],_0x34fc8f[_0xda9eba(0x155)]],[_0xda9eba(0x1c3),_0x3aaa76[_0xda9eba(0x1c3)],_0x34fc8f[_0xda9eba(0x1c3)]],[_0xda9eba(0x1ab),_0x3aaa76[_0xda9eba(0x1b8)],_0x34fc8f[_0xda9eba(0x1b8)]],['visibility',_0x3aaa76[_0xda9eba(0x1b3)],_0x34fc8f[_0xda9eba(0x1b3)]],[_0xda9eba(0x159),_0x3aaa76['sort'],_0x34fc8f[_0xda9eba(0x159)]]];for(const [_0x10999c,_0x54bd81,_0xbcb28b]of _0x359c2d){if(_0x54bd81!==_0xbcb28b)throw menuError('menu_verification_failed',_0xda9eba(0x1af)+_0x3aaa76['id']+_0xda9eba(0x18c)+_0x10999c+'.',_0xda9eba(0x180));}if(!_0x3aaa76[_0xda9eba(0x1b2)][_0xda9eba(0x19e)]()||_0x492640!==null&&_0x3aaa76['path']!==_0x492640)throw menuError(_0xda9eba(0x145),_0xda9eba(0x1af)+_0x3aaa76['id']+_0xda9eba(0x17b),_0xda9eba(0x180));}function creationSuccess(_0x2ba7cc,_0x6bc628,_0xef2f0a,_0x4a1709){const _0x1511d3=a117_0x528990,_0x461544=mutationResult({..._0x2ba7cc,'after':_0xef2f0a,'dryRun':![],'succeeded':[{'id':_0xef2f0a['id'],'created':!![],'recovered':_0x4a1709}],'verification':{'checkedBy':_0x1511d3(0x153),'snapshotHash':_0x6bc628[_0x1511d3(0x14c)],'targetId':_0xef2f0a['id'],'recovered':_0x4a1709,'path':_0xef2f0a[_0x1511d3(0x1b2)]}});return{'ok':!![],'message':_0x4a1709?_0x1511d3(0x19d)+_0xef2f0a['id']+_0x1511d3(0x170):_0x1511d3(0x19b)+_0xef2f0a['id']+'.','data':{..._0x461544,'recovered':_0x4a1709}};}function externalLinkCreateFailure(_0x2fd915,_0x4d551e,_0x158b0e){const _0x3ed2db=a117_0x528990;return menuFailure(safeMenuAddError(_0x2fd915),redactFailurePlan(_0x4d551e),{..._0x158b0e,'succeeded':_0x158b0e['succeeded']?.[_0x3ed2db(0x197)](redactFailureRecord),'failed':_0x158b0e[_0x3ed2db(0x152)]?redactFailureRecord(_0x158b0e['failed']):undefined,'verification':_0x158b0e[_0x3ed2db(0x1a5)]?redactFailureRecord(_0x158b0e[_0x3ed2db(0x1a5)]):undefined,'after':_0x158b0e[_0x3ed2db(0x1a0)]===undefined?undefined:redactFailureValue(_0x158b0e[_0x3ed2db(0x1a0)])});}function redactFailurePlan(_0x4d5cfa){const _0x296e39=a117_0x528990;return{..._0x4d5cfa,'selector':redactFailureRecord(_0x4d5cfa[_0x296e39(0x17c)]),'before':redactFailureValue(_0x4d5cfa['before']),'after':redactFailureValue(_0x4d5cfa[_0x296e39(0x1a0)]),'plannedActions':_0x4d5cfa[_0x296e39(0x14a)]?.['map'](_0x37a4a6=>({..._0x37a4a6,'body':redactFailureRecord(_0x37a4a6[_0x296e39(0x178)])})),'succeeded':_0x4d5cfa['succeeded'][_0x296e39(0x197)](redactFailureRecord),'failed':_0x4d5cfa[_0x296e39(0x152)][_0x296e39(0x197)](redactFailureRecord),'verification':_0x4d5cfa[_0x296e39(0x1a5)]?redactFailureRecord(_0x4d5cfa['verification']):undefined};}function redactFailureRecord(_0x1b3947){return redactFailureValue(_0x1b3947);}function redactFailureValue(_0x3793ce,_0xb873b9=''){const _0x5ed18e=a117_0x528990,_0x1e55cc=_0xb873b9[_0x5ed18e(0x176)]()['replace'](/[^a-z0-9]/g,'');if(['cause',_0x5ed18e(0x1c4),_0x5ed18e(0x1c2),'rawerror'][_0x5ed18e(0x179)](_0x1e55cc))return'<redacted>';if(Array[_0x5ed18e(0x1c0)](_0x3793ce))return _0x3793ce[_0x5ed18e(0x197)](_0x796fbd=>redactFailureValue(_0x796fbd));if(_0x3793ce&&typeof _0x3793ce===_0x5ed18e(0x17a))return Object['fromEntries'](Object[_0x5ed18e(0x15c)](_0x3793ce)[_0x5ed18e(0x197)](([_0xa0f69b,_0x38c052])=>[_0xa0f69b,redactFailureValue(_0x38c052,_0xa0f69b)]));return _0x3793ce;}function safeMenuAddError(_0x1d2e42){const _0x43c070=a117_0x528990,_0x41a08f=_0x1d2e42 instanceof CliError?_0x1d2e42[_0x43c070(0x163)]:'menu_mutation_failed';switch(_0x41a08f){case _0x43c070(0x195):return menuError(_0x41a08f,_0x43c070(0x190),_0x43c070(0x1c6));case _0x43c070(0x1b6):return menuError(_0x41a08f,_0x43c070(0x1ad),_0x43c070(0x18a));case _0x43c070(0x166):return menuError(_0x41a08f,_0x43c070(0x171),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case'menu_verification_failed':return menuError(_0x41a08f,_0x43c070(0x16f),_0x43c070(0x19a));case _0x43c070(0x15b):return menuError(_0x41a08f,_0x43c070(0x183),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x43c070(0x19f):case _0x43c070(0x16e):case _0x43c070(0x1a3):case'menu_sort_invalid':case _0x43c070(0x14b):return menuError(_0x41a08f,_0x43c070(0x192),_0x43c070(0x1a4));default:return menuError('menu_mutation_failed',_0x43c070(0x192),_0x43c070(0x1a4));}}function getFailureRecord(_0x30521c){const _0x2451dd=a117_0x528990;if(!(_0x30521c instanceof Error)||!(_0x2451dd(0x18f)in _0x30521c))return undefined;const _0x37f31e=_0x30521c[_0x2451dd(0x18f)];if(!_0x37f31e||typeof _0x37f31e!==_0x2451dd(0x17a))return undefined;const _0x5b83da=_0x37f31e[_0x2451dd(0x152)];if(!Array['isArray'](_0x5b83da)||!_0x5b83da[0x0]||typeof _0x5b83da[0x0]!==_0x2451dd(0x17a))return undefined;return _0x5b83da[0x0];}
@@ -1 +1 @@
1
- const a113_0x27bc98=a113_0x50f5;(function(_0x44d662,_0x3661b8){const _0x14e91=a113_0x50f5,_0x2aacf2=_0x44d662();while(!![]){try{const _0x2e090a=-parseInt(_0x14e91(0x18f))/0x1*(parseInt(_0x14e91(0x191))/0x2)+-parseInt(_0x14e91(0x16a))/0x3*(-parseInt(_0x14e91(0x198))/0x4)+parseInt(_0x14e91(0x1a4))/0x5+parseInt(_0x14e91(0x179))/0x6*(-parseInt(_0x14e91(0x164))/0x7)+-parseInt(_0x14e91(0x195))/0x8+-parseInt(_0x14e91(0x17a))/0x9+parseInt(_0x14e91(0x172))/0xa;if(_0x2e090a===_0x3661b8)break;else _0x2aacf2['push'](_0x2aacf2['shift']());}catch(_0x20da45){_0x2aacf2['push'](_0x2aacf2['shift']());}}}(a113_0xaaf1,0x9a275));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';function a113_0xaaf1(){const _0x34724f=['Menu\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','url','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','menu_state_drift','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','verify\x20external\x20menu\x20URL\x20update','17907yzKxdN','external-link-update','104iJcjOS','str','label','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','5080592WRrPDG','POST','\x22,\x20not\x20iframe\x20or\x20link.','105468kizzwd','write','rabetbase\x20menu\x20list\x20--appcode\x20','type','flagMissing','verification','menu_permission_denied','\x20is\x20type\x20\x22','string','update','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','menu_external_link_not_leaf','1256430OwUnIz','\x20could\x20not\x20be\x20verified\x20safely','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','\x20has\x20','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','expect-parent-id','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','update\x20external\x20menu\x20URL','trim','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','\x20parent\x20changed:\x20expected\x20','link','byId','childrenCount','7SJlZHx','path','\x20already\x20matches\x20the\x20requested\x20URL.','menu\x20list','menu_external_link_type_required','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','12EHnUyJ','Updated\x20external\x20URL\x20for\x20menu\x20','iframe','New\x20external\x20HTTPS\x20URL','update-external-link-url','\x27\x5c\x27\x27','expect-url','code','29714350tJvnVB','get','Run\x20','/smartapi/menu/update','Update\x20request\x20for\x20menu\x20','replace',',\x20current\x20','3624714MmYuLH','4737771NpKxHs','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','\x20direct\x20child\x20menu(s).','\x20--format\x20compress','body','failed','\x20has\x20an\x20empty\x20platform\x20path.','visible','requestedUrlObserved','Response\x20was\x20lost\x20and\x20menu\x20','appCode','sort','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','parentId'];a113_0xaaf1=function(){return _0x34724f;};return a113_0xaaf1();}function a113_0x50f5(_0x3fbcbb,_0xa04f8c){_0x3fbcbb=_0x3fbcbb-0x15d;const _0xaaf15=a113_0xaaf1();let _0x50f570=_0xaaf15[_0x3fbcbb];return _0x50f570;}import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a113_0x27bc98(0x196),'path':a113_0x27bc98(0x175)}];export const menuExternalLinkUpdate={'service':'menu','command':a113_0x27bc98(0x190),'description':a113_0x27bc98(0x1a6),'risk':a113_0x27bc98(0x199),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a113_0x27bc98(0x18a),'type':a113_0x27bc98(0x1a0),'required':!![],'description':a113_0x27bc98(0x16d)},{'name':'expect-url','type':a113_0x27bc98(0x1a0),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed'},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4f274c){validateInput(_0x4f274c);},async 'dryRun'(_0x31c485){const _0x18eeef=a113_0x27bc98;validateInput(_0x31c485);const _0x50617d=await buildPlan(_0x31c485,!![]);return menuDryRunResult(_0x50617d['plan'],{'method':_0x18eeef(0x196),'url':_0x18eeef(0x175),'body':_0x50617d[_0x18eeef(0x17e)],'description':_0x18eeef(0x17b)+_0x50617d[_0x18eeef(0x17e)]['id']+'.'});},async 'execute'(_0x2a886d){const _0x1f0b47=a113_0x27bc98;validateInput(_0x2a886d);const _0x85f300=await buildPlan(_0x2a886d,![]),{plan:_0x25e722,body:_0x308350,before:_0x3f52ea,noChanges:_0x3c3620}=_0x85f300,_0x483f14=_0x308350['id'];if(_0x3c3620)return updateSuccess(_0x25e722,_0x85f300['snapshot'],_0x3f52ea,!![],![]);await recheckMutationSnapshot(_0x2a886d,_0x25e722,_0x1f0b47(0x15d),_0x483f14);try{await updateMenuEntity(_0x2a886d[_0x1f0b47(0x184)],_0x2a886d['cookie'],{'id':_0x308350['id'],'url':_0x308350[_0x1f0b47(0x18a)]});}catch(_0x336b60){const _0x512973=mapMenuApiError(_0x336b60,_0x1f0b47(0x15d),_0x483f14);if(isMenuResponseLoss(_0x336b60)&&_0x512973[_0x1f0b47(0x171)]!==_0x1f0b47(0x19e))return recoverAfterResponseLoss(_0x2a886d,_0x85f300);throw menuFailure(_0x512973,_0x25e722,{'stage':_0x1f0b47(0x1a1),'failed':{'id':_0x483f14},'warnings':[_0x1f0b47(0x194)],'verification':{'status':'failed','targetId':_0x483f14,'lookupCommand':buildLookupCommand(_0x2a886d['appCode'])}});}let _0x43ece6,_0x405dc1;try{_0x43ece6=await fetchMenuSnapshot(_0x2a886d[_0x1f0b47(0x184)],_0x2a886d['cookie']),_0x405dc1=requireMenu(_0x43ece6,_0x483f14),verifyUpdatedFact(_0x3f52ea,_0x405dc1,_0x308350[_0x1f0b47(0x18a)]);}catch(_0x597879){const _0x13b706=describeMenuErrorCause(_0x597879,_0x1f0b47(0x18e),_0x483f14),_0x44c0aa=asVerificationError(_0x597879,_0x1f0b47(0x176)+_0x483f14+_0x1f0b47(0x189));throw menuFailure(_0x44c0aa,_0x25e722,{'stage':_0x1f0b47(0x19d),'succeeded':[{'id':_0x483f14,'updateRequested':!![]}],'failed':{'id':_0x483f14,'requestedStateConfirmed':![],..._0x13b706},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x1f0b47(0x17f),'targetId':_0x483f14,'lookupCommand':buildLookupCommand(_0x2a886d[_0x1f0b47(0x184)])}});}return updateSuccess(_0x25e722,_0x43ece6,_0x405dc1,![],![]);}};function validateInput(_0x1b7508){const _0x3c949c=a113_0x27bc98;validateExactId(_0x1b7508),requiredUrl(_0x1b7508,'url'),requiredExpectedUrl(_0x1b7508),parseParentId(_0x1b7508,_0x3c949c(0x1a9),{'required':!![]});}function requiredUrl(_0x10a17a,_0x405372){const _0x115bfd=a113_0x27bc98;if(!hasFlag(_0x10a17a,_0x405372)||!_0x10a17a[_0x115bfd(0x192)](_0x405372)[_0x115bfd(0x15e)]())throw CliErrors['flagMissing'](_0x405372);return validateExternalMenuUrl(_0x10a17a['str'](_0x405372));}function requiredExpectedUrl(_0x425af8){const _0x125bf8=a113_0x27bc98;if(!hasFlag(_0x425af8,_0x125bf8(0x170))||!_0x425af8[_0x125bf8(0x192)]('expect-url')['trim']())throw CliErrors[_0x125bf8(0x19c)](_0x125bf8(0x170));return _0x425af8[_0x125bf8(0x192)](_0x125bf8(0x170))[_0x125bf8(0x15e)]();}async function buildPlan(_0xfab6af,_0x58a7d9){const _0x38988e=a113_0x27bc98,_0x5f13d2=validateExactId(_0xfab6af),_0x540297=requiredUrl(_0xfab6af,_0x38988e(0x18a)),_0x1cec6f=requiredExpectedUrl(_0xfab6af),_0x20e5a6=parseParentId(_0xfab6af,'expect-parent-id',{'required':!![]}),_0x52613f=await fetchMutationSnapshot(_0xfab6af,_0x38988e(0x15d),_0x5f13d2),_0x1fee33=requireMenu(_0x52613f,_0x5f13d2);assertExternalLinkLeaf(_0x1fee33);if(_0x1fee33[_0x38988e(0x187)]!==_0x20e5a6)throw menuError(_0x38988e(0x18c),'Menu\x20'+_0x5f13d2+_0x38988e(0x160)+formatParent(_0x20e5a6)+_0x38988e(0x178)+formatParent(_0x1fee33[_0x38988e(0x187)])+'.',_0x38988e(0x18d));const _0x29f93a=_0x1fee33['url']===_0x540297;if(!_0x29f93a&&_0x1fee33[_0x38988e(0x18a)]!==_0x1cec6f)throw menuError('menu_state_drift',_0x38988e(0x188)+_0x5f13d2+_0x38988e(0x1a2),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.');const _0x1c985f={'id':_0x5f13d2,'appCode':_0xfab6af[_0x38988e(0x184)],'url':_0x540297},_0x385108={..._0x1fee33,'url':_0x540297};return{'body':_0x1c985f,'before':_0x1fee33,'noChanges':_0x29f93a,'snapshot':_0x52613f,'plan':mutationResult({'operation':_0x38988e(0x190),'selector':{'id':_0x5f13d2},'before':_0x1fee33,'after':_0x385108,'dryRun':_0x58a7d9,'backend':[...BACKEND],'plannedActions':_0x29f93a?[]:[{'stage':_0x38988e(0x16e),'method':_0x38988e(0x196),'path':_0x38988e(0x175),'body':_0x1c985f}],'snapshotHash':_0x52613f['hash'],'warnings':_0x29f93a?[_0x38988e(0x15f)]:[]})};}function assertExternalLinkLeaf(_0x1c7b7b){const _0x3a42ad=a113_0x27bc98;if(_0x1c7b7b[_0x3a42ad(0x19b)]!==_0x3a42ad(0x16c)&&_0x1c7b7b[_0x3a42ad(0x19b)]!==_0x3a42ad(0x161))throw menuError(_0x3a42ad(0x168),_0x3a42ad(0x188)+_0x1c7b7b['id']+_0x3a42ad(0x19f)+(_0x1c7b7b[_0x3a42ad(0x19b)]||'unknown')+_0x3a42ad(0x197),_0x3a42ad(0x1a8));if(_0x1c7b7b[_0x3a42ad(0x163)]!==0x0)throw menuError(_0x3a42ad(0x1a3),_0x3a42ad(0x188)+_0x1c7b7b['id']+_0x3a42ad(0x1a7)+_0x1c7b7b[_0x3a42ad(0x163)]+_0x3a42ad(0x17c),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x1c7b7b[_0x3a42ad(0x165)][_0x3a42ad(0x15e)]())throw menuError('menu_external_link_path_missing',_0x3a42ad(0x188)+_0x1c7b7b['id']+_0x3a42ad(0x180),_0x3a42ad(0x186));}function verifyUpdatedFact(_0x4f41ea,_0x307eae,_0x166a4e){const _0x310c61=a113_0x27bc98;assertExternalLinkLeaf(_0x307eae);const _0xc7c8d3=[['id',_0x307eae['id'],_0x4f41ea['id']],['label',_0x307eae['label'],_0x4f41ea[_0x310c61(0x193)]],[_0x310c61(0x19b),_0x307eae[_0x310c61(0x19b)],_0x4f41ea[_0x310c61(0x19b)]],[_0x310c61(0x165),_0x307eae[_0x310c61(0x165)],_0x4f41ea['path']],[_0x310c61(0x187),_0x307eae[_0x310c61(0x187)],_0x4f41ea[_0x310c61(0x187)]],[_0x310c61(0x185),_0x307eae[_0x310c61(0x185)],_0x4f41ea[_0x310c61(0x185)]],[_0x310c61(0x181),_0x307eae[_0x310c61(0x181)],_0x4f41ea[_0x310c61(0x181)]]];for(const [_0x21af07,_0x97e053,_0x16e819]of _0xc7c8d3){assertVerified(_0x97e053===_0x16e819,_0x310c61(0x188)+_0x4f41ea['id']+'\x20'+_0x21af07+'\x20changed\x20during\x20the\x20URL-only\x20update.');}assertVerified(_0x307eae[_0x310c61(0x18a)]===_0x166a4e,_0x310c61(0x188)+_0x4f41ea['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0x512d87,_0x27216d,_0x379435,_0x3d225d,_0x1dcb73){const _0x3d6c70=a113_0x27bc98,_0x3bca74=_0x379435['id'],_0x37fe42=mutationResult({..._0x512d87,'after':_0x379435,'dryRun':![],'succeeded':[{'id':_0x3bca74,'updated':!_0x3d225d,'skipped':_0x3d225d,'recovered':_0x1dcb73}],'verification':{'checkedBy':_0x3d6c70(0x167),'snapshotHash':_0x27216d['hash'],'targetId':_0x3bca74,'matchesRequestedState':!![],'recovered':_0x1dcb73}});return{'ok':!![],'message':_0x1dcb73?_0x3d6c70(0x18b)+_0x3bca74+'.':_0x3d225d?_0x3d6c70(0x188)+_0x3bca74+_0x3d6c70(0x166):_0x3d6c70(0x16b)+_0x3bca74+'.','data':{..._0x37fe42,'recovered':_0x1dcb73}};}async function recoverAfterResponseLoss(_0x42185a,_0xd50061){const _0x30e50d=a113_0x27bc98,{plan:_0x445379,before:_0x2bb57b,body:_0x475bab}=_0xd50061;let _0xdc5893;try{_0xdc5893=await fetchMenuSnapshot(_0x42185a['appCode'],_0x42185a['cookie']);}catch{throw recoveryRequired(_0x445379,_0x42185a['appCode'],{'id':_0x475bab['id'],'readbackFailed':!![]});}const _0x15128a=_0xdc5893[_0x30e50d(0x162)][_0x30e50d(0x173)](_0x475bab['id']);if(!_0x15128a||_0x15128a[_0x30e50d(0x18a)]!==_0x475bab[_0x30e50d(0x18a)])throw recoveryRequired(_0x445379,_0x42185a[_0x30e50d(0x184)],{'id':_0x475bab['id'],'requestedUrlObserved':![],'after':_0x15128a??null});try{verifyUpdatedFact(_0x2bb57b,_0x15128a,_0x475bab[_0x30e50d(0x18a)]);}catch(_0x4f5127){const _0x238af2=asVerificationError(_0x4f5127,_0x30e50d(0x183)+_0x475bab['id']+_0x30e50d(0x1a5));throw menuFailure(_0x238af2,_0x445379,{'stage':'update-recovery','succeeded':[{'id':_0x475bab['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x475bab['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x15128a,'warnings':['The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x30e50d(0x17f),'targetId':_0x475bab['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x42185a['appCode'])}});}return updateSuccess(_0x445379,_0xdc5893,_0x15128a,![],!![]);}function recoveryRequired(_0x1a0701,_0x42a65d,_0x4817d3){const _0x3cb335=a113_0x27bc98,_0xf3cb84=menuError('menu_update_recovery_required',_0x3cb335(0x169),_0x3cb335(0x174)+buildLookupCommand(_0x42a65d)+_0x3cb335(0x1aa));return menuFailure(_0xf3cb84,_0x1a0701,{'stage':'update-recovery','failed':{'id':_0x4817d3['id'],..._0x4817d3[_0x3cb335(0x182)]===undefined?{}:{'requestedUrlObserved':_0x4817d3[_0x3cb335(0x182)]},..._0x4817d3['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x4817d3['after'],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x3cb335(0x17f),'targetId':_0x4817d3['id'],..._0x4817d3[_0x3cb335(0x182)]===undefined?{}:{'requestedUrlObserved':_0x4817d3[_0x3cb335(0x182)]},..._0x4817d3['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x42a65d)}});}function buildLookupCommand(_0x1bc779){const _0x2d8032=a113_0x27bc98,_0x157108='\x27'+_0x1bc779[_0x2d8032(0x177)](/'/g,_0x2d8032(0x16f))+'\x27';return _0x2d8032(0x19a)+_0x157108+_0x2d8032(0x17d);}
1
+ const a118_0x51cdf2=a118_0x322c;(function(_0x3fec96,_0x47535d){const _0x316c17=a118_0x322c,_0x4948f0=_0x3fec96();while(!![]){try{const _0x4b227e=parseInt(_0x316c17(0x122))/0x1*(parseInt(_0x316c17(0xfb))/0x2)+parseInt(_0x316c17(0x12b))/0x3+-parseInt(_0x316c17(0xe2))/0x4*(-parseInt(_0x316c17(0x131))/0x5)+parseInt(_0x316c17(0x10d))/0x6*(parseInt(_0x316c17(0xff))/0x7)+-parseInt(_0x316c17(0x108))/0x8*(parseInt(_0x316c17(0x121))/0x9)+parseInt(_0x316c17(0x125))/0xa+-parseInt(_0x316c17(0x12f))/0xb*(parseInt(_0x316c17(0x124))/0xc);if(_0x4b227e===_0x47535d)break;else _0x4948f0['push'](_0x4948f0['shift']());}catch(_0x4f0b93){_0x4948f0['push'](_0x4948f0['shift']());}}}(a118_0x233f,0xae313));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a118_0x51cdf2(0x11f),'path':a118_0x51cdf2(0x116)}];export const menuExternalLinkUpdate={'service':a118_0x51cdf2(0xdd),'command':'external-link-update','description':'Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','risk':a118_0x51cdf2(0x107),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a118_0x51cdf2(0x10f),'type':a118_0x51cdf2(0x104),'required':!![],'description':a118_0x51cdf2(0xef)},{'name':a118_0x51cdf2(0x11c),'type':a118_0x51cdf2(0x104),'required':!![],'description':a118_0x51cdf2(0x126)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x31073a){validateInput(_0x31073a);},async 'dryRun'(_0x3e4e88){const _0x566d9e=a118_0x51cdf2;validateInput(_0x3e4e88);const _0x3a3745=await buildPlan(_0x3e4e88,!![]);return menuDryRunResult(_0x3a3745[_0x566d9e(0xed)],{'method':_0x566d9e(0x11f),'url':_0x566d9e(0x116),'body':_0x3a3745[_0x566d9e(0xfd)],'description':'Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20'+_0x3a3745[_0x566d9e(0xfd)]['id']+'.'});},async 'execute'(_0x2b1a0f){const _0x227156=a118_0x51cdf2;validateInput(_0x2b1a0f);const _0x10eb6c=await buildPlan(_0x2b1a0f,![]),{plan:_0x2f7a4d,body:_0x302fe8,before:_0x5e7e64,noChanges:_0xc41f19}=_0x10eb6c,_0x5aa230=_0x302fe8['id'];if(_0xc41f19)return updateSuccess(_0x2f7a4d,_0x10eb6c[_0x227156(0x110)],_0x5e7e64,!![],![]);await recheckMutationSnapshot(_0x2b1a0f,_0x2f7a4d,_0x227156(0x101),_0x5aa230);try{await updateMenuEntity(_0x2b1a0f[_0x227156(0x12c)],_0x2b1a0f[_0x227156(0xf7)],{'id':_0x302fe8['id'],'url':_0x302fe8[_0x227156(0x10f)]});}catch(_0x596d24){const _0x320eac=mapMenuApiError(_0x596d24,_0x227156(0x101),_0x5aa230);if(isMenuResponseLoss(_0x596d24)&&_0x320eac[_0x227156(0x11e)]!==_0x227156(0x12d))return recoverAfterResponseLoss(_0x2b1a0f,_0x10eb6c);throw menuFailure(_0x320eac,_0x2f7a4d,{'stage':_0x227156(0x12a),'failed':{'id':_0x5aa230},'warnings':[_0x227156(0xe6)],'verification':{'status':_0x227156(0xe0),'targetId':_0x5aa230,'lookupCommand':buildLookupCommand(_0x2b1a0f[_0x227156(0x12c)])}});}let _0x1f26f9,_0x413295;try{_0x1f26f9=await fetchMenuSnapshot(_0x2b1a0f[_0x227156(0x12c)],_0x2b1a0f[_0x227156(0xf7)]),_0x413295=requireMenu(_0x1f26f9,_0x5aa230),verifyUpdatedFact(_0x5e7e64,_0x413295,_0x302fe8['url']);}catch(_0x13f390){const _0x39e873=describeMenuErrorCause(_0x13f390,_0x227156(0x103),_0x5aa230),_0x46f665=asVerificationError(_0x13f390,_0x227156(0xf1)+_0x5aa230+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x46f665,_0x2f7a4d,{'stage':_0x227156(0xde),'succeeded':[{'id':_0x5aa230,'updateRequested':!![]}],'failed':{'id':_0x5aa230,'requestedStateConfirmed':![],..._0x39e873},'warnings':[_0x227156(0x118)],'verification':{'status':_0x227156(0xe0),'targetId':_0x5aa230,'lookupCommand':buildLookupCommand(_0x2b1a0f['appCode'])}});}return updateSuccess(_0x2f7a4d,_0x1f26f9,_0x413295,![],![]);}};function validateInput(_0x596f94){const _0x34262e=a118_0x51cdf2;validateExactId(_0x596f94),requiredUrl(_0x596f94,_0x34262e(0x10f)),requiredExpectedUrl(_0x596f94),parseParentId(_0x596f94,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x2da86b,_0xfec496){const _0xfcfc2=a118_0x51cdf2;if(!hasFlag(_0x2da86b,_0xfec496)||!_0x2da86b[_0xfcfc2(0xfc)](_0xfec496)[_0xfcfc2(0x133)]())throw CliErrors[_0xfcfc2(0x117)](_0xfec496);return validateExternalMenuUrl(_0x2da86b[_0xfcfc2(0xfc)](_0xfec496));}function requiredExpectedUrl(_0xec8711){const _0x584652=a118_0x51cdf2;if(!hasFlag(_0xec8711,_0x584652(0x11c))||!_0xec8711[_0x584652(0xfc)](_0x584652(0x11c))[_0x584652(0x133)]())throw CliErrors[_0x584652(0x117)](_0x584652(0x11c));return _0xec8711[_0x584652(0xfc)](_0x584652(0x11c))[_0x584652(0x133)]();}function a118_0x322c(_0x49a4b7,_0x584cdc){_0x49a4b7=_0x49a4b7-0xdb;const _0x233f2c=a118_0x233f();let _0x322c82=_0x233f2c[_0x49a4b7];return _0x322c82;}function a118_0x233f(){const _0x5ab5af=['7127260wXragp','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','childrenCount','get','Menu\x20','update','2060892GrjUwa','appCode','menu_permission_denied','\x20direct\x20child\x20menu(s).','11mnaqKr','menu_state_drift','1405420kmCpUM','menu_external_link_not_leaf','trim','after','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','menu','verification','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','failed','iframe','20OlGMyT','path','update-recovery','expect-parent-id','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20changed\x20during\x20the\x20URL-only\x20update.','external-link-update','\x20has\x20an\x20empty\x20platform\x20path.','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','menu_update_recovery_required','hash','plan','menu_external_link_path_missing','New\x20external\x20HTTPS\x20URL','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','Update\x20request\x20for\x20menu\x20','visible','\x20could\x20not\x20be\x20verified\x20safely','menu\x20list','Updated\x20external\x20URL\x20for\x20menu\x20','requestedUrlObserved','cookie','unknown','sort','update-external-link-url','191618XssWdM','str','body','byId','14gFubVt','\x27\x5c\x27\x27','update\x20external\x20menu\x20URL','Run\x20','verify\x20external\x20menu\x20URL\x20update','string','menu_external_link_type_required',',\x20current\x20','write','8lnUBjj','replace','\x20URL\x20update\x20did\x20not\x20take\x20effect.','\x20has\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','2777028frsSGM','readbackFailed','url','snapshot','\x22,\x20not\x20iframe\x20or\x20link.','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','link','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','label','/smartapi/menu/update','flagMissing','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','type','parentId','rabetbase\x20menu\x20list\x20--appcode\x20','expect-url','Response\x20was\x20lost\x20and\x20menu\x20','code','POST','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','6746823GnILbU','1sUsFNk','\x20is\x20type\x20\x22','28361484KpnNyD'];a118_0x233f=function(){return _0x5ab5af;};return a118_0x233f();}async function buildPlan(_0x54b106,_0x43de76){const _0xac3dae=a118_0x51cdf2,_0x3e757f=validateExactId(_0x54b106),_0x5013ae=requiredUrl(_0x54b106,_0xac3dae(0x10f)),_0x5300b0=requiredExpectedUrl(_0x54b106),_0x37a992=parseParentId(_0x54b106,_0xac3dae(0xe5),{'required':!![]}),_0x5dced6=await fetchMutationSnapshot(_0x54b106,_0xac3dae(0x101),_0x3e757f),_0x3a3d52=requireMenu(_0x5dced6,_0x3e757f);assertExternalLinkLeaf(_0x3a3d52);if(_0x3a3d52[_0xac3dae(0x11a)]!==_0x37a992)throw menuError(_0xac3dae(0x130),_0xac3dae(0x129)+_0x3e757f+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x37a992)+_0xac3dae(0x106)+formatParent(_0x3a3d52[_0xac3dae(0x11a)])+'.',_0xac3dae(0xf0));const _0x3d391f=_0x3a3d52[_0xac3dae(0x10f)]===_0x5013ae;if(!_0x3d391f&&_0x3a3d52[_0xac3dae(0x10f)]!==_0x5300b0)throw menuError(_0xac3dae(0x130),'Menu\x20'+_0x3e757f+_0xac3dae(0x120),_0xac3dae(0x10c));const _0x3fda79={'id':_0x3e757f,'appCode':_0x54b106[_0xac3dae(0x12c)],'url':_0x5013ae},_0xb7f73={..._0x3a3d52,'url':_0x5013ae};return{'body':_0x3fda79,'before':_0x3a3d52,'noChanges':_0x3d391f,'snapshot':_0x5dced6,'plan':mutationResult({'operation':_0xac3dae(0xe8),'selector':{'id':_0x3e757f},'before':_0x3a3d52,'after':_0xb7f73,'dryRun':_0x43de76,'backend':[...BACKEND],'plannedActions':_0x3d391f?[]:[{'stage':_0xac3dae(0xfa),'method':'POST','path':_0xac3dae(0x116),'body':_0x3fda79}],'snapshotHash':_0x5dced6[_0xac3dae(0xec)],'warnings':_0x3d391f?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x394d5e){const _0x46c15d=a118_0x51cdf2;if(_0x394d5e[_0x46c15d(0x119)]!==_0x46c15d(0xe1)&&_0x394d5e[_0x46c15d(0x119)]!==_0x46c15d(0x113))throw menuError(_0x46c15d(0x105),_0x46c15d(0x129)+_0x394d5e['id']+_0x46c15d(0x123)+(_0x394d5e[_0x46c15d(0x119)]||_0x46c15d(0xf8))+_0x46c15d(0x111),_0x46c15d(0xdf));if(_0x394d5e[_0x46c15d(0x127)]!==0x0)throw menuError(_0x46c15d(0x132),_0x46c15d(0x129)+_0x394d5e['id']+_0x46c15d(0x10b)+_0x394d5e[_0x46c15d(0x127)]+_0x46c15d(0x12e),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x394d5e[_0x46c15d(0xe3)][_0x46c15d(0x133)]())throw menuError(_0x46c15d(0xee),'Menu\x20'+_0x394d5e['id']+_0x46c15d(0xe9),_0x46c15d(0xea));}function verifyUpdatedFact(_0x2ffe2d,_0x295a9d,_0x5edab5){const _0x3b2327=a118_0x51cdf2;assertExternalLinkLeaf(_0x295a9d);const _0x3de07c=[['id',_0x295a9d['id'],_0x2ffe2d['id']],[_0x3b2327(0x115),_0x295a9d['label'],_0x2ffe2d[_0x3b2327(0x115)]],[_0x3b2327(0x119),_0x295a9d['type'],_0x2ffe2d['type']],[_0x3b2327(0xe3),_0x295a9d[_0x3b2327(0xe3)],_0x2ffe2d['path']],[_0x3b2327(0x11a),_0x295a9d[_0x3b2327(0x11a)],_0x2ffe2d[_0x3b2327(0x11a)]],[_0x3b2327(0xf9),_0x295a9d['sort'],_0x2ffe2d[_0x3b2327(0xf9)]],['visible',_0x295a9d[_0x3b2327(0xf2)],_0x2ffe2d[_0x3b2327(0xf2)]]];for(const [_0x222c55,_0x1ba769,_0x4192bd]of _0x3de07c){assertVerified(_0x1ba769===_0x4192bd,_0x3b2327(0x129)+_0x2ffe2d['id']+'\x20'+_0x222c55+_0x3b2327(0xe7));}assertVerified(_0x295a9d[_0x3b2327(0x10f)]===_0x5edab5,'Menu\x20'+_0x2ffe2d['id']+_0x3b2327(0x10a));}function updateSuccess(_0x4c63a5,_0x44e6e3,_0x3aa7ae,_0x5d2e54,_0x4269c0){const _0x39e879=a118_0x51cdf2,_0x16732d=_0x3aa7ae['id'],_0x151428=mutationResult({..._0x4c63a5,'after':_0x3aa7ae,'dryRun':![],'succeeded':[{'id':_0x16732d,'updated':!_0x5d2e54,'skipped':_0x5d2e54,'recovered':_0x4269c0}],'verification':{'checkedBy':_0x39e879(0xf4),'snapshotHash':_0x44e6e3[_0x39e879(0xec)],'targetId':_0x16732d,'matchesRequestedState':!![],'recovered':_0x4269c0}});return{'ok':!![],'message':_0x4269c0?_0x39e879(0x112)+_0x16732d+'.':_0x5d2e54?'Menu\x20'+_0x16732d+'\x20already\x20matches\x20the\x20requested\x20URL.':_0x39e879(0xf5)+_0x16732d+'.','data':{..._0x151428,'recovered':_0x4269c0}};}async function recoverAfterResponseLoss(_0x7da3d8,_0x219c9a){const _0x18f654=a118_0x51cdf2,{plan:_0x56cd2e,before:_0x3b9c59,body:_0x1d232a}=_0x219c9a;let _0x38bcdd;try{_0x38bcdd=await fetchMenuSnapshot(_0x7da3d8[_0x18f654(0x12c)],_0x7da3d8[_0x18f654(0xf7)]);}catch{throw recoveryRequired(_0x56cd2e,_0x7da3d8[_0x18f654(0x12c)],{'id':_0x1d232a['id'],'readbackFailed':!![]});}const _0x6d8794=_0x38bcdd[_0x18f654(0xfe)][_0x18f654(0x128)](_0x1d232a['id']);if(!_0x6d8794||_0x6d8794[_0x18f654(0x10f)]!==_0x1d232a[_0x18f654(0x10f)])throw recoveryRequired(_0x56cd2e,_0x7da3d8[_0x18f654(0x12c)],{'id':_0x1d232a['id'],'requestedUrlObserved':![],'after':_0x6d8794??null});try{verifyUpdatedFact(_0x3b9c59,_0x6d8794,_0x1d232a['url']);}catch(_0x1742ed){const _0x1c79bc=asVerificationError(_0x1742ed,_0x18f654(0x11d)+_0x1d232a['id']+_0x18f654(0xf3));throw menuFailure(_0x1c79bc,_0x56cd2e,{'stage':_0x18f654(0xe4),'succeeded':[{'id':_0x1d232a['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x1d232a['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x6d8794,'warnings':[_0x18f654(0x114)],'verification':{'status':'failed','targetId':_0x1d232a['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x7da3d8[_0x18f654(0x12c)])}});}return updateSuccess(_0x56cd2e,_0x38bcdd,_0x6d8794,![],!![]);}function recoveryRequired(_0x49253b,_0x1412c3,_0x5a1fdc){const _0x383844=a118_0x51cdf2,_0x3091e3=menuError(_0x383844(0xeb),_0x383844(0xdc),_0x383844(0x102)+buildLookupCommand(_0x1412c3)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x3091e3,_0x49253b,{'stage':_0x383844(0xe4),'failed':{'id':_0x5a1fdc['id'],..._0x5a1fdc[_0x383844(0xf6)]===undefined?{}:{'requestedUrlObserved':_0x5a1fdc[_0x383844(0xf6)]},..._0x5a1fdc[_0x383844(0x10e)]?{'readbackFailed':!![]}:{}},'after':_0x5a1fdc[_0x383844(0xdb)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x383844(0xe0),'targetId':_0x5a1fdc['id'],..._0x5a1fdc[_0x383844(0xf6)]===undefined?{}:{'requestedUrlObserved':_0x5a1fdc[_0x383844(0xf6)]},..._0x5a1fdc[_0x383844(0x10e)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x1412c3)}});}function buildLookupCommand(_0x3f1975){const _0x41af50=a118_0x51cdf2,_0x41f0c3='\x27'+_0x3f1975[_0x41af50(0x109)](/'/g,_0x41af50(0x100))+'\x27';return _0x41af50(0x11b)+_0x41f0c3+'\x20--format\x20compress';}
@@ -1 +1 @@
1
- const a114_0x39f9e4=a114_0x9b40;(function(_0x57e545,_0x102c3f){const _0x2196f7=a114_0x9b40,_0x4f5c72=_0x57e545();while(!![]){try{const _0x315995=-parseInt(_0x2196f7(0x1bd))/0x1*(parseInt(_0x2196f7(0x1c3))/0x2)+parseInt(_0x2196f7(0x1c5))/0x3*(-parseInt(_0x2196f7(0x194))/0x4)+parseInt(_0x2196f7(0x1cd))/0x5*(parseInt(_0x2196f7(0x1b5))/0x6)+-parseInt(_0x2196f7(0x1b9))/0x7*(-parseInt(_0x2196f7(0x1d8))/0x8)+parseInt(_0x2196f7(0x199))/0x9+-parseInt(_0x2196f7(0x1ac))/0xa+-parseInt(_0x2196f7(0x1a8))/0xb;if(_0x315995===_0x102c3f)break;else _0x4f5c72['push'](_0x4f5c72['shift']());}catch(_0x8c1b45){_0x4f5c72['push'](_0x4f5c72['shift']());}}}(a114_0x1bdb,0xad5bd));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';function a114_0x1bdb(){const _0x423a4d=['create\x20folder','sort','11543310ZektYN','create-folder','parent-id','group-create','\x20is\x20missing\x20from\x20menu\x20list.','folder','resources','rabetbase\x20menu\x20list\x20--format\x20json','hash','Would\x20create\x20empty\x20folder\x20\x22','Menu\x20create\x20response\x20for\x20folder\x20','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','\x20has\x20an\x20unexpected\x20label.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','Created\x20menu\x20','523391aGGxnG','create-response-validation','verification','childrenCount','1805480mqxmwL','cookie','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','stringify','parentId','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','after','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','POST','9318VPtXIn','str',';\x20verify\x20it\x20before\x20retrying.','label','133BgIZAX','\x20is\x20not\x20visible.','Folder\x20label','string','1310eYHpYB','appCode','root','Folder\x20','type','/smartapi/menu/create','1270itBlby','\x20has\x20resources.','922353JrqhgR','\x20may\x20exist\x20online\x20at\x20path\x20','failed','length','menu','\x20is\x20not\x20empty.','\x20has\x20an\x20unexpected\x20sort.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','1715Hwinsn','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','Created\x20folder\x20','path','depth','verify\x20folder\x20creation','isSafeInteger','trim','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20is\x20not\x20type\x20folder.','\x20unexpectedly\x20owns\x20a\x20page.','110416LBDLwo','visible','\x20has\x20unexpected\x20parent\x20','menu_create_response_invalid','Created\x20menu\x20folder\x20','get','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','4ELDHoJ','byId','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.'];a114_0x1bdb=function(){return _0x423a4d;};return a114_0x1bdb();}function a114_0x9b40(_0x3be109,_0x56abef){_0x3be109=_0x3be109-0x190;const _0x1bdb7f=a114_0x1bdb();let _0x9b40d9=_0x1bdb7f[_0x3be109];return _0x9b40d9;}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a114_0x39f9e4(0x1b4),'path':a114_0x39f9e4(0x1c2)}];export const menuGroupCreate={'service':a114_0x39f9e4(0x1c9),'command':a114_0x39f9e4(0x19c),'description':a114_0x39f9e4(0x1b1),'risk':'write','structuredErrors':!![],'flags':[{'name':a114_0x39f9e4(0x1b8),'type':a114_0x39f9e4(0x1bc),'required':!![],'description':a114_0x39f9e4(0x1bb)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x14d4ba){validateCreateInput(_0x14d4ba);},async 'dryRun'(_0x180b7c){const _0x31ac87=a114_0x39f9e4,_0x44a66a=await buildCreatePlan(_0x180b7c,!![]),_0x264d00=_0x44a66a[_0x31ac87(0x1b2)];return menuDryRunResult(_0x44a66a,{'method':_0x31ac87(0x1b4),'url':_0x31ac87(0x1c2),'body':{'parentId':toApiParentId(_0x264d00['parentId']),'label':_0x264d00[_0x31ac87(0x1b8)],'type':_0x31ac87(0x19e),'visible':!![],'sort':_0x264d00[_0x31ac87(0x198)],'extend':{}},'description':_0x31ac87(0x1a2)+String(_0x264d00[_0x31ac87(0x1b8)])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x407316){const _0x5336fb=a114_0x39f9e4;validateCreateInput(_0x407316);const _0x136518=await buildCreatePlan(_0x407316,![]),_0x51a577=_0x136518[_0x5336fb(0x1b2)];await recheckMutationSnapshot(_0x407316,_0x136518,_0x5336fb(0x197));let _0xc49a93;try{_0xc49a93=await createMenuEntity(_0x407316[_0x5336fb(0x1be)],_0x407316['cookie'],{'parentId':toApiParentId(_0x51a577['parentId']),'label':String(_0x51a577[_0x5336fb(0x1b8)]),'type':'folder','visible':!![],'sort':Number(_0x51a577[_0x5336fb(0x198)]),'extend':{}});}catch(_0x2f9054){const _0x5c8106=mapMenuApiError(_0x2f9054,_0x5336fb(0x197));throw menuFailure(_0x5c8106,_0x136518,{'stage':'create','failed':{}});}const _0x366169=Number(_0xc49a93['id']);if(!Number[_0x5336fb(0x1d3)](_0x366169)||_0x366169<=0x0){const _0x10fa94=menuError('menu_create_response_invalid',_0x5336fb(0x1cc),_0x5336fb(0x1d5));throw menuFailure(_0x10fa94,_0x136518,{'stage':_0x5336fb(0x1a9),'failed':{'createdId':_0xc49a93['id']??null},'warnings':[_0x5336fb(0x1ce)],'verification':{'status':_0x5336fb(0x1c7),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json'}});}const _0x1a4e6c=typeof _0xc49a93[_0x5336fb(0x1d0)]==='string'?_0xc49a93['path']:'';if(!_0x1a4e6c['trim']()){const _0x10c1d8=menuError(_0x5336fb(0x190),_0x5336fb(0x1a3)+_0x366169+_0x5336fb(0x1a4),'Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.');throw menuFailure(_0x10c1d8,_0x136518,{'stage':_0x5336fb(0x1a9),'succeeded':[{'id':_0x366169,'created':!![]}],'failed':{'id':_0x366169,'generatedPathConfirmed':![]},'warnings':[_0x5336fb(0x1c0)+_0x366169+_0x5336fb(0x1ae)],'after':{..._0x51a577,'id':_0x366169,'path':_0x1a4e6c},'verification':{'status':_0x5336fb(0x1c7),'lookupCommand':_0x5336fb(0x1a0),'targetId':_0x366169}});}let _0x4b8465;try{_0x4b8465=await fetchMenuSnapshot(_0x407316[_0x5336fb(0x1be)],_0x407316[_0x5336fb(0x1ad)]);}catch(_0x5ade3b){const _0x3c0e4c=describeMenuErrorCause(_0x5ade3b,_0x5336fb(0x1d2),_0x366169),_0x552496=asVerificationError(_0x5ade3b,_0x5336fb(0x1c0)+_0x366169+'\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts');throw menuFailure(_0x552496,_0x136518,{'stage':_0x5336fb(0x1aa),'succeeded':[{'id':_0x366169,'created':!![],'path':_0x1a4e6c}],'failed':{'id':_0x366169,'finalFactsConfirmed':![],..._0x3c0e4c},'warnings':['Folder\x20'+_0x366169+_0x5336fb(0x1c6)+JSON[_0x5336fb(0x1af)](_0x1a4e6c)+_0x5336fb(0x1b7)],'after':{..._0x51a577,'id':_0x366169,'path':_0x1a4e6c},'verification':{'status':_0x5336fb(0x1c7),'lookupCommand':_0x5336fb(0x1a0),'targetId':_0x366169}});}const _0x3e840d=_0x4b8465[_0x5336fb(0x195)][_0x5336fb(0x192)](_0x366169);let _0x44d625;try{assertVerified(Boolean(_0x3e840d),_0x5336fb(0x1cf)+_0x366169+_0x5336fb(0x19d)),_0x44d625=_0x3e840d,assertVerified(_0x44d625[_0x5336fb(0x1c1)]===_0x5336fb(0x19e),_0x5336fb(0x1a7)+_0x366169+_0x5336fb(0x1d6)),assertVerified(_0x44d625[_0x5336fb(0x1b8)]===_0x51a577[_0x5336fb(0x1b8)],_0x5336fb(0x1cf)+_0x366169+_0x5336fb(0x1a5)),assertVerified(_0x44d625[_0x5336fb(0x1d0)]===_0x1a4e6c&&Boolean(_0x44d625['path'][_0x5336fb(0x1d4)]()),'Created\x20folder\x20'+_0x366169+_0x5336fb(0x1b3)),assertVerified(_0x44d625[_0x5336fb(0x1d9)]===!![],_0x5336fb(0x1cf)+_0x366169+_0x5336fb(0x1ba)),assertVerified(_0x44d625[_0x5336fb(0x19f)][_0x5336fb(0x1c8)]===0x0,_0x5336fb(0x1cf)+_0x366169+_0x5336fb(0x1c4)),assertVerified(_0x44d625[_0x5336fb(0x1ab)]===0x0,'Created\x20folder\x20'+_0x366169+_0x5336fb(0x1ca)),assertVerified(_0x44d625[_0x5336fb(0x198)]===_0x51a577[_0x5336fb(0x198)],_0x5336fb(0x1cf)+_0x366169+_0x5336fb(0x1cb)),assertVerified(_0x44d625[_0x5336fb(0x1b0)]===_0x51a577[_0x5336fb(0x1b0)],_0x5336fb(0x1cf)+_0x366169+_0x5336fb(0x1da)+(_0x44d625[_0x5336fb(0x1b0)]??_0x5336fb(0x1bf))+'.'),assertVerified(_0x44d625['pageId']==null,_0x5336fb(0x1cf)+_0x366169+_0x5336fb(0x1d7));const _0x331ca3=_0x44d625[_0x5336fb(0x1b0)]==null?undefined:requireFolder(_0x4b8465,_0x44d625[_0x5336fb(0x1b0)]);assertVerified(_0x44d625[_0x5336fb(0x1d1)]===(_0x331ca3?_0x331ca3['depth']+0x1:0x0),_0x5336fb(0x1cf)+_0x366169+_0x5336fb(0x196));}catch(_0x15c28d){const _0x2e6cb0=describeMenuErrorCause(_0x15c28d,_0x5336fb(0x1d2),_0x366169),_0xc253c4=asVerificationError(_0x15c28d,'Folder\x20'+_0x366169+_0x5336fb(0x1a6));throw menuFailure(_0xc253c4,_0x136518,{'stage':_0x5336fb(0x1aa),'succeeded':[{'id':_0x366169,'created':!![],'path':_0x1a4e6c}],'failed':{'id':_0x366169,'finalFactsConfirmed':![],..._0x2e6cb0},'warnings':[_0x5336fb(0x1c0)+_0x366169+_0x5336fb(0x193)],'after':_0x3e840d??{..._0x51a577,'id':_0x366169,'path':_0x1a4e6c},'verification':{'status':_0x5336fb(0x1c7),'lookupCommand':_0x5336fb(0x1a0),'targetId':_0x366169}});}const _0x43f203=mutationResult({..._0x136518,'after':_0x44d625,'dryRun':![],'succeeded':[{'id':_0x366169,'type':_0x5336fb(0x19e),'path':_0x1a4e6c}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x4b8465[_0x5336fb(0x1a1)],'folder':!![],'path':_0x1a4e6c,'emptyResources':!![]}});return{'ok':!![],'data':_0x43f203,'message':_0x5336fb(0x191)+_0x366169+'.'};}};function validateCreateInput(_0x27883d){const _0x2a562e=a114_0x39f9e4,_0x12968d=_0x27883d[_0x2a562e(0x1b6)](_0x2a562e(0x1b8))[_0x2a562e(0x1d4)]();if(!_0x12968d)throw CliErrors['flagMissing'](_0x2a562e(0x1b8));parseParentId(_0x27883d,_0x2a562e(0x19b)),validateSort(_0x27883d);}async function buildCreatePlan(_0x2da247,_0x2c784f){const _0x272017=a114_0x39f9e4,_0x357b03=await fetchMutationSnapshot(_0x2da247,_0x272017(0x197)),_0x325821=parseParentId(_0x2da247,'parent-id')??null;if(_0x325821!=null)requireFolder(_0x357b03,_0x325821);const _0x139051=validateSort(_0x2da247),_0xbe7cbe=_0x139051??nextSiblingSort(_0x357b03,_0x325821,_0x272017(0x19e)),_0x894c84=_0x2da247[_0x272017(0x1b6)]('label')[_0x272017(0x1d4)]();return mutationResult({'operation':_0x272017(0x19c),'selector':{'label':_0x894c84,'parentId':_0x325821},'before':null,'after':{'id':null,'parentId':_0x325821,'label':_0x894c84,'path':'<platform-generated>','type':_0x272017(0x19e),'visible':!![],'sort':_0xbe7cbe,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x2c784f,'backend':[...BACKEND],'plannedActions':[{'stage':_0x272017(0x19a),'method':_0x272017(0x1b4),'path':_0x272017(0x1c2),'body':{'parentId':toApiParentId(_0x325821),'label':_0x894c84,'type':_0x272017(0x19e),'visible':!![],'sort':_0xbe7cbe,'extend':{}}}],'snapshotHash':_0x357b03[_0x272017(0x1a1)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
1
+ function a119_0xa254(){const _0x53a03e=['633730pWUlmu','\x20is\x20not\x20empty.','menu_create_response_invalid','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','pageId','appCode','get','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','group-create','\x20has\x20an\x20unexpected\x20sort.','cookie','\x20has\x20resources.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','\x20is\x20not\x20type\x20folder.','Menu\x20create\x20response\x20for\x20folder\x20','\x22\x20with\x20a\x20platform-generated\x20path.','flagMissing','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','isSafeInteger','Would\x20create\x20empty\x20folder\x20\x22','rabetbase\x20menu\x20list\x20--format\x20json','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','619icAHEk','5530104tYbrQm','3901176XJJHDu','after','verification','parent-id','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','Created\x20folder\x20','type','\x20is\x20not\x20visible.','1263528NAmqfJ','create-response-validation','create-folder','failed','Created\x20menu\x20','6836AqvkOL','399sYOErV','verify\x20folder\x20creation','Folder\x20label','\x20may\x20exist\x20online\x20at\x20path\x20','\x20has\x20unexpected\x20parent\x20','label','string','str','1287nodzLm','<platform-generated>','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','sort','210NeqSSr','parentId','create','resources','trim','folder','childrenCount','\x20unexpectedly\x20owns\x20a\x20page.','path','POST','stringify','hash','\x20has\x20an\x20unexpected\x20label.','/smartapi/menu/create','101580tEZeoT','depth','Folder\x20','create\x20folder','Created\x20menu\x20folder\x20'];a119_0xa254=function(){return _0x53a03e;};return a119_0xa254();}const a119_0x410d52=a119_0xb71f;(function(_0x1aff9f,_0x45d714){const _0x18b08a=a119_0xb71f,_0xe0e246=_0x1aff9f();while(!![]){try{const _0xd75e67=-parseInt(_0x18b08a(0x1d9))/0x1*(-parseInt(_0x18b08a(0x1af))/0x2)+parseInt(_0x18b08a(0x1a3))/0x3*(parseInt(_0x18b08a(0x1e9))/0x4)+parseInt(_0x18b08a(0x1c2))/0x5+-parseInt(_0x18b08a(0x1db))/0x6+-parseInt(_0x18b08a(0x1e4))/0x7+-parseInt(_0x18b08a(0x1da))/0x8+parseInt(_0x18b08a(0x1ab))/0x9*(parseInt(_0x18b08a(0x1bd))/0xa);if(_0xd75e67===_0x45d714)break;else _0xe0e246['push'](_0xe0e246['shift']());}catch(_0x3259a1){_0xe0e246['push'](_0xe0e246['shift']());}}}(a119_0xa254,0x555e5));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';function a119_0xb71f(_0x29f3e7,_0x1c185b){_0x29f3e7=_0x29f3e7-0x1a3;const _0xa254a2=a119_0xa254();let _0xb71f5e=_0xa254a2[_0x29f3e7];return _0xb71f5e;}import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a119_0x410d52(0x1b8),'path':a119_0x410d52(0x1bc)}];export const menuGroupCreate={'service':'menu','command':'group-create','description':'Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','risk':'write','structuredErrors':!![],'flags':[{'name':a119_0x410d52(0x1a8),'type':a119_0x410d52(0x1a9),'required':!![],'description':a119_0x410d52(0x1a5)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1a463e){validateCreateInput(_0x1a463e);},async 'dryRun'(_0x5a6a73){const _0xcc1770=a119_0x410d52,_0x314060=await buildCreatePlan(_0x5a6a73,!![]),_0x35430f=_0x314060[_0xcc1770(0x1dc)];return menuDryRunResult(_0x314060,{'method':_0xcc1770(0x1b8),'url':_0xcc1770(0x1bc),'body':{'parentId':toApiParentId(_0x35430f[_0xcc1770(0x1b0)]),'label':_0x35430f[_0xcc1770(0x1a8)],'type':_0xcc1770(0x1b4),'visible':!![],'sort':_0x35430f[_0xcc1770(0x1ae)],'extend':{}},'description':_0xcc1770(0x1d6)+String(_0x35430f[_0xcc1770(0x1a8)])+_0xcc1770(0x1d2)});},async 'execute'(_0x514980){const _0x5fcd5b=a119_0x410d52;validateCreateInput(_0x514980);const _0x2566b8=await buildCreatePlan(_0x514980,![]),_0x3f661e=_0x2566b8[_0x5fcd5b(0x1dc)];await recheckMutationSnapshot(_0x514980,_0x2566b8,_0x5fcd5b(0x1c0));let _0x489c66;try{_0x489c66=await createMenuEntity(_0x514980[_0x5fcd5b(0x1c7)],_0x514980[_0x5fcd5b(0x1cc)],{'parentId':toApiParentId(_0x3f661e[_0x5fcd5b(0x1b0)]),'label':String(_0x3f661e[_0x5fcd5b(0x1a8)]),'type':_0x5fcd5b(0x1b4),'visible':!![],'sort':Number(_0x3f661e['sort']),'extend':{}});}catch(_0x40ca1d){const _0xefbdc=mapMenuApiError(_0x40ca1d,'create\x20folder');throw menuFailure(_0xefbdc,_0x2566b8,{'stage':_0x5fcd5b(0x1b1),'failed':{}});}const _0x550702=Number(_0x489c66['id']);if(!Number[_0x5fcd5b(0x1d5)](_0x550702)||_0x550702<=0x0){const _0x2e3c6e=menuError('menu_create_response_invalid','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.');throw menuFailure(_0x2e3c6e,_0x2566b8,{'stage':_0x5fcd5b(0x1e5),'failed':{'createdId':_0x489c66['id']??null},'warnings':[_0x5fcd5b(0x1ce)],'verification':{'status':_0x5fcd5b(0x1e7),'lookupCommand':_0x5fcd5b(0x1d7)}});}const _0x14ae22=typeof _0x489c66[_0x5fcd5b(0x1b7)]==='string'?_0x489c66[_0x5fcd5b(0x1b7)]:'';if(!_0x14ae22['trim']()){const _0x4dcfda=menuError(_0x5fcd5b(0x1c4),_0x5fcd5b(0x1d1)+_0x550702+_0x5fcd5b(0x1c9),_0x5fcd5b(0x1df));throw menuFailure(_0x4dcfda,_0x2566b8,{'stage':'create-response-validation','succeeded':[{'id':_0x550702,'created':!![]}],'failed':{'id':_0x550702,'generatedPathConfirmed':![]},'warnings':[_0x5fcd5b(0x1bf)+_0x550702+_0x5fcd5b(0x1cf)],'after':{..._0x3f661e,'id':_0x550702,'path':_0x14ae22},'verification':{'status':_0x5fcd5b(0x1e7),'lookupCommand':_0x5fcd5b(0x1d7),'targetId':_0x550702}});}let _0x533ddf;try{_0x533ddf=await fetchMenuSnapshot(_0x514980[_0x5fcd5b(0x1c7)],_0x514980['cookie']);}catch(_0x3be54e){const _0x1a124b=describeMenuErrorCause(_0x3be54e,_0x5fcd5b(0x1a4),_0x550702),_0x4a6409=asVerificationError(_0x3be54e,_0x5fcd5b(0x1bf)+_0x550702+_0x5fcd5b(0x1e0));throw menuFailure(_0x4a6409,_0x2566b8,{'stage':'verification','succeeded':[{'id':_0x550702,'created':!![],'path':_0x14ae22}],'failed':{'id':_0x550702,'finalFactsConfirmed':![],..._0x1a124b},'warnings':[_0x5fcd5b(0x1bf)+_0x550702+_0x5fcd5b(0x1a6)+JSON[_0x5fcd5b(0x1b9)](_0x14ae22)+';\x20verify\x20it\x20before\x20retrying.'],'after':{..._0x3f661e,'id':_0x550702,'path':_0x14ae22},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x550702}});}const _0x1230ae=_0x533ddf['byId'][_0x5fcd5b(0x1c8)](_0x550702);let _0x29f926;try{assertVerified(Boolean(_0x1230ae),_0x5fcd5b(0x1e1)+_0x550702+'\x20is\x20missing\x20from\x20menu\x20list.'),_0x29f926=_0x1230ae,assertVerified(_0x29f926[_0x5fcd5b(0x1e2)]===_0x5fcd5b(0x1b4),_0x5fcd5b(0x1e8)+_0x550702+_0x5fcd5b(0x1d0)),assertVerified(_0x29f926['label']===_0x3f661e[_0x5fcd5b(0x1a8)],'Created\x20folder\x20'+_0x550702+_0x5fcd5b(0x1bb)),assertVerified(_0x29f926['path']===_0x14ae22&&Boolean(_0x29f926[_0x5fcd5b(0x1b7)]['trim']()),_0x5fcd5b(0x1e1)+_0x550702+_0x5fcd5b(0x1d8)),assertVerified(_0x29f926['visible']===!![],'Created\x20folder\x20'+_0x550702+_0x5fcd5b(0x1e3)),assertVerified(_0x29f926[_0x5fcd5b(0x1b2)]['length']===0x0,_0x5fcd5b(0x1e1)+_0x550702+_0x5fcd5b(0x1cd)),assertVerified(_0x29f926[_0x5fcd5b(0x1b5)]===0x0,_0x5fcd5b(0x1e1)+_0x550702+_0x5fcd5b(0x1c3)),assertVerified(_0x29f926[_0x5fcd5b(0x1ae)]===_0x3f661e[_0x5fcd5b(0x1ae)],_0x5fcd5b(0x1e1)+_0x550702+_0x5fcd5b(0x1cb)),assertVerified(_0x29f926[_0x5fcd5b(0x1b0)]===_0x3f661e['parentId'],'Created\x20folder\x20'+_0x550702+_0x5fcd5b(0x1a7)+(_0x29f926[_0x5fcd5b(0x1b0)]??'root')+'.'),assertVerified(_0x29f926[_0x5fcd5b(0x1c6)]==null,_0x5fcd5b(0x1e1)+_0x550702+_0x5fcd5b(0x1b6));const _0x10e6f5=_0x29f926['parentId']==null?undefined:requireFolder(_0x533ddf,_0x29f926[_0x5fcd5b(0x1b0)]);assertVerified(_0x29f926[_0x5fcd5b(0x1be)]===(_0x10e6f5?_0x10e6f5[_0x5fcd5b(0x1be)]+0x1:0x0),'Created\x20folder\x20'+_0x550702+_0x5fcd5b(0x1c5));}catch(_0x2d045d){const _0x8dc017=describeMenuErrorCause(_0x2d045d,_0x5fcd5b(0x1a4),_0x550702),_0x481b3d=asVerificationError(_0x2d045d,_0x5fcd5b(0x1bf)+_0x550702+_0x5fcd5b(0x1d4));throw menuFailure(_0x481b3d,_0x2566b8,{'stage':_0x5fcd5b(0x1dd),'succeeded':[{'id':_0x550702,'created':!![],'path':_0x14ae22}],'failed':{'id':_0x550702,'finalFactsConfirmed':![],..._0x8dc017},'warnings':['Folder\x20'+_0x550702+_0x5fcd5b(0x1ad)],'after':_0x1230ae??{..._0x3f661e,'id':_0x550702,'path':_0x14ae22},'verification':{'status':_0x5fcd5b(0x1e7),'lookupCommand':_0x5fcd5b(0x1d7),'targetId':_0x550702}});}const _0x7f3981=mutationResult({..._0x2566b8,'after':_0x29f926,'dryRun':![],'succeeded':[{'id':_0x550702,'type':'folder','path':_0x14ae22}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x533ddf[_0x5fcd5b(0x1ba)],'folder':!![],'path':_0x14ae22,'emptyResources':!![]}});return{'ok':!![],'data':_0x7f3981,'message':_0x5fcd5b(0x1c1)+_0x550702+'.'};}};function validateCreateInput(_0x4a9149){const _0x1bd6ec=a119_0x410d52,_0x30b657=_0x4a9149[_0x1bd6ec(0x1aa)](_0x1bd6ec(0x1a8))[_0x1bd6ec(0x1b3)]();if(!_0x30b657)throw CliErrors[_0x1bd6ec(0x1d3)](_0x1bd6ec(0x1a8));parseParentId(_0x4a9149,'parent-id'),validateSort(_0x4a9149);}async function buildCreatePlan(_0x276d17,_0x48117e){const _0x52ef36=a119_0x410d52,_0x1c6165=await fetchMutationSnapshot(_0x276d17,_0x52ef36(0x1c0)),_0x3910bc=parseParentId(_0x276d17,_0x52ef36(0x1de))??null;if(_0x3910bc!=null)requireFolder(_0x1c6165,_0x3910bc);const _0x34314a=validateSort(_0x276d17),_0x5f0a0c=_0x34314a??nextSiblingSort(_0x1c6165,_0x3910bc,_0x52ef36(0x1b4)),_0x5cd721=_0x276d17[_0x52ef36(0x1aa)]('label')[_0x52ef36(0x1b3)]();return mutationResult({'operation':_0x52ef36(0x1ca),'selector':{'label':_0x5cd721,'parentId':_0x3910bc},'before':null,'after':{'id':null,'parentId':_0x3910bc,'label':_0x5cd721,'path':_0x52ef36(0x1ac),'type':_0x52ef36(0x1b4),'visible':!![],'sort':_0x5f0a0c,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x48117e,'backend':[...BACKEND],'plannedActions':[{'stage':_0x52ef36(0x1e6),'method':_0x52ef36(0x1b8),'path':_0x52ef36(0x1bc),'body':{'parentId':toApiParentId(_0x3910bc),'label':_0x5cd721,'type':_0x52ef36(0x1b4),'visible':!![],'sort':_0x5f0a0c,'extend':{}}}],'snapshotHash':_0x1c6165[_0x52ef36(0x1ba)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}