@lovrabet/rabetbase-cli 2.3.16-beta.4 → 2.3.16-beta.5

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 (560) hide show
  1. package/lib/api/api-doc.d.ts +9 -0
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.d.ts +2 -0
  4. package/lib/api/fetch-model-list.js +1 -1
  5. package/lib/api/generate-api-file.d.ts +8 -0
  6. package/lib/api/generate-api-file.js +1 -1
  7. package/lib/auth/auth-server-ui.d.ts +13 -0
  8. package/lib/auth/auth-server-ui.js +1 -1
  9. package/lib/auth/auth-server.d.ts +25 -0
  10. package/lib/auth/auth-server.js +1 -1
  11. package/lib/auth/constant.d.ts +2 -0
  12. package/lib/auth/constant.js +1 -1
  13. package/lib/auth/get-cookie.d.ts +1 -0
  14. package/lib/auth/get-cookie.js +1 -1
  15. package/lib/auth/get-session-user.d.ts +51 -0
  16. package/lib/auth/get-session-user.js +1 -1
  17. package/lib/auth/is-session-valid.d.ts +1 -0
  18. package/lib/auth/is-session-valid.js +1 -1
  19. package/lib/auth/login-success-html.d.ts +5 -0
  20. package/lib/auth/login-success-html.js +1 -1
  21. package/lib/auth/logout.d.ts +1 -0
  22. package/lib/auth/logout.js +1 -1
  23. package/lib/cli-flags.d.ts +12 -0
  24. package/lib/cli-flags.js +1 -1
  25. package/lib/cli.d.ts +2 -0
  26. package/lib/cli.js +1 -1
  27. package/lib/commands/api/generate.d.ts +2 -0
  28. package/lib/commands/api/generate.js +1 -1
  29. package/lib/commands/api/index.d.ts +2 -0
  30. package/lib/commands/api/index.js +1 -1
  31. package/lib/commands/api/list.d.ts +2 -0
  32. package/lib/commands/api/list.js +1 -1
  33. package/lib/commands/api/pull.d.ts +2 -0
  34. package/lib/commands/api/pull.js +1 -1
  35. package/lib/commands/api/shared.d.ts +18 -0
  36. package/lib/commands/api/shared.js +1 -1
  37. package/lib/commands/app/index.d.ts +5 -0
  38. package/lib/commands/app/index.js +1 -1
  39. package/lib/commands/app/list.d.ts +10 -0
  40. package/lib/commands/app/list.js +1 -1
  41. package/lib/commands/app/members-list.d.ts +2 -0
  42. package/lib/commands/app/members-list.js +1 -1
  43. package/lib/commands/app/remote-directory.d.ts +11 -0
  44. package/lib/commands/app/remote-directory.js +1 -1
  45. package/lib/commands/app/shared.d.ts +46 -0
  46. package/lib/commands/app/shared.js +1 -1
  47. package/lib/commands/app-config/delete.d.ts +2 -0
  48. package/lib/commands/app-config/delete.js +1 -1
  49. package/lib/commands/app-config/get.d.ts +2 -0
  50. package/lib/commands/app-config/get.js +1 -1
  51. package/lib/commands/app-config/index.d.ts +2 -0
  52. package/lib/commands/app-config/index.js +1 -1
  53. package/lib/commands/app-config/list.d.ts +2 -0
  54. package/lib/commands/app-config/list.js +1 -1
  55. package/lib/commands/app-config/set.d.ts +2 -0
  56. package/lib/commands/app-config/set.js +1 -1
  57. package/lib/commands/app-config/shared.d.ts +105 -0
  58. package/lib/commands/app-config/shared.js +1 -1
  59. package/lib/commands/auth/index.d.ts +2 -0
  60. package/lib/commands/auth/index.js +1 -1
  61. package/lib/commands/bff/create.d.ts +4 -0
  62. package/lib/commands/bff/create.js +1 -1
  63. package/lib/commands/bff/delete.d.ts +2 -0
  64. package/lib/commands/bff/delete.js +1 -1
  65. package/lib/commands/bff/detail.d.ts +2 -0
  66. package/lib/commands/bff/detail.js +1 -1
  67. package/lib/commands/bff/index.d.ts +5 -0
  68. package/lib/commands/bff/index.js +1 -1
  69. package/lib/commands/bff/list.d.ts +2 -0
  70. package/lib/commands/bff/list.js +1 -1
  71. package/lib/commands/bff/pull.d.ts +2 -0
  72. package/lib/commands/bff/pull.js +1 -1
  73. package/lib/commands/bff/push.d.ts +2 -0
  74. package/lib/commands/bff/push.js +1 -1
  75. package/lib/commands/bff/status.d.ts +2 -0
  76. package/lib/commands/bff/status.js +1 -1
  77. package/lib/commands/cli-skill/index.d.ts +8 -0
  78. package/lib/commands/cli-skill/index.js +1 -1
  79. package/lib/commands/cli-update.d.ts +2 -0
  80. package/lib/commands/cli-update.js +1 -1
  81. package/lib/commands/codegen/index.d.ts +2 -0
  82. package/lib/commands/codegen/index.js +1 -1
  83. package/lib/commands/codegen/sdk.d.ts +2 -0
  84. package/lib/commands/codegen/sdk.js +1 -1
  85. package/lib/commands/codegen/sql.d.ts +2 -0
  86. package/lib/commands/codegen/sql.js +1 -1
  87. package/lib/commands/common/app-registry.d.ts +17 -0
  88. package/lib/commands/common/app-registry.js +1 -1
  89. package/lib/commands/common/app-selector.d.ts +17 -0
  90. package/lib/commands/common/app-selector.js +1 -1
  91. package/lib/commands/common/async-task.d.ts +11 -0
  92. package/lib/commands/common/async-task.js +1 -1
  93. package/lib/commands/common/dry-run.d.ts +12 -0
  94. package/lib/commands/common/dry-run.js +1 -1
  95. package/lib/commands/common/flags.d.ts +26 -0
  96. package/lib/commands/common/flags.js +1 -1
  97. package/lib/commands/common/local-file.d.ts +6 -0
  98. package/lib/commands/common/local-file.js +1 -1
  99. package/lib/commands/common/validate.d.ts +13 -0
  100. package/lib/commands/common/validate.js +1 -1
  101. package/lib/commands/config/get.d.ts +5 -0
  102. package/lib/commands/config/get.js +1 -1
  103. package/lib/commands/config/index.d.ts +5 -0
  104. package/lib/commands/config/index.js +1 -1
  105. package/lib/commands/config/list.d.ts +5 -0
  106. package/lib/commands/config/list.js +1 -1
  107. package/lib/commands/config/set.d.ts +5 -0
  108. package/lib/commands/config/set.js +1 -1
  109. package/lib/commands/config/shared.d.ts +16 -0
  110. package/lib/commands/config/shared.js +1 -1
  111. package/lib/commands/data/filter.d.ts +7 -0
  112. package/lib/commands/data/filter.js +1 -1
  113. package/lib/commands/data/getOne.d.ts +7 -0
  114. package/lib/commands/data/getOne.js +1 -1
  115. package/lib/commands/data/index.d.ts +8 -0
  116. package/lib/commands/data/index.js +1 -1
  117. package/lib/commands/data/shared.d.ts +33 -0
  118. package/lib/commands/data/shared.js +1 -1
  119. package/lib/commands/dataset/business-group-update.d.ts +18 -0
  120. package/lib/commands/dataset/business-group-update.js +1 -1
  121. package/lib/commands/dataset/capability.d.ts +11 -0
  122. package/lib/commands/dataset/capability.js +1 -1
  123. package/lib/commands/dataset/delete.d.ts +2 -0
  124. package/lib/commands/dataset/delete.js +1 -1
  125. package/lib/commands/dataset/detail.d.ts +2 -0
  126. package/lib/commands/dataset/detail.js +1 -1
  127. package/lib/commands/dataset/extend-update.d.ts +26 -0
  128. package/lib/commands/dataset/extend-update.js +1 -1
  129. package/lib/commands/dataset/field-update.d.ts +27 -0
  130. package/lib/commands/dataset/field-update.js +1 -1
  131. package/lib/commands/dataset/generate.d.ts +3 -0
  132. package/lib/commands/dataset/generate.js +1 -1
  133. package/lib/commands/dataset/index.d.ts +2 -0
  134. package/lib/commands/dataset/index.js +1 -1
  135. package/lib/commands/dataset/list.d.ts +2 -0
  136. package/lib/commands/dataset/list.js +1 -1
  137. package/lib/commands/dataset/operations.d.ts +2 -0
  138. package/lib/commands/dataset/operations.js +1 -1
  139. package/lib/commands/dataset/relation-audit.d.ts +2 -0
  140. package/lib/commands/dataset/relation-audit.js +1 -1
  141. package/lib/commands/dataset/relation-create.d.ts +2 -0
  142. package/lib/commands/dataset/relation-create.js +1 -1
  143. package/lib/commands/dataset/relation-delete.d.ts +2 -0
  144. package/lib/commands/dataset/relation-delete.js +1 -1
  145. package/lib/commands/dataset/relation-shared.d.ts +128 -0
  146. package/lib/commands/dataset/relation-shared.js +1 -1
  147. package/lib/commands/dataset/relation-update.d.ts +2 -0
  148. package/lib/commands/dataset/relation-update.js +1 -1
  149. package/lib/commands/dataset/relations.d.ts +53 -0
  150. package/lib/commands/dataset/relations.js +1 -1
  151. package/lib/commands/dataset/rename.d.ts +17 -0
  152. package/lib/commands/dataset/rename.js +1 -1
  153. package/lib/commands/dataset/restore.d.ts +2 -0
  154. package/lib/commands/dataset/restore.js +1 -1
  155. package/lib/commands/db/analysis-batching.d.ts +30 -0
  156. package/lib/commands/db/analysis-batching.js +1 -1
  157. package/lib/commands/db/analyze-batch-plan.d.ts +2 -0
  158. package/lib/commands/db/analyze-batch-plan.js +1 -1
  159. package/lib/commands/db/analyze-cancel.d.ts +2 -0
  160. package/lib/commands/db/analyze-cancel.js +1 -1
  161. package/lib/commands/db/analyze-start.d.ts +2 -0
  162. package/lib/commands/db/analyze-start.js +1 -1
  163. package/lib/commands/db/analyze-status.d.ts +2 -0
  164. package/lib/commands/db/analyze-status.js +1 -1
  165. package/lib/commands/db/create.d.ts +2 -0
  166. package/lib/commands/db/create.js +1 -1
  167. package/lib/commands/db/delete.d.ts +2 -0
  168. package/lib/commands/db/delete.js +1 -1
  169. package/lib/commands/db/detail.d.ts +2 -0
  170. package/lib/commands/db/detail.js +1 -1
  171. package/lib/commands/db/diff.d.ts +2 -0
  172. package/lib/commands/db/diff.js +1 -1
  173. package/lib/commands/db/index.d.ts +5 -0
  174. package/lib/commands/db/index.js +1 -1
  175. package/lib/commands/db/list.d.ts +2 -0
  176. package/lib/commands/db/list.js +1 -1
  177. package/lib/commands/db/shared.d.ts +15 -0
  178. package/lib/commands/db/shared.js +1 -1
  179. package/lib/commands/db/tables.d.ts +2 -0
  180. package/lib/commands/db/tables.js +1 -1
  181. package/lib/commands/db/test.d.ts +2 -0
  182. package/lib/commands/db/test.js +1 -1
  183. package/lib/commands/db/update.d.ts +2 -0
  184. package/lib/commands/db/update.js +1 -1
  185. package/lib/commands/doctor.d.ts +2 -0
  186. package/lib/commands/doctor.js +1 -1
  187. package/lib/commands/file/index.d.ts +2 -0
  188. package/lib/commands/file/index.js +1 -1
  189. package/lib/commands/init/index.d.ts +11 -0
  190. package/lib/commands/init/index.js +1 -1
  191. package/lib/commands/issue/index.d.ts +2 -0
  192. package/lib/commands/issue/index.js +1 -1
  193. package/lib/commands/issue/nudge.d.ts +23 -0
  194. package/lib/commands/issue/nudge.js +1 -1
  195. package/lib/commands/issue/report.d.ts +2 -0
  196. package/lib/commands/issue/report.js +1 -1
  197. package/lib/commands/issue/shared.d.ts +32 -0
  198. package/lib/commands/issue/shared.js +1 -1
  199. package/lib/commands/kb/create.d.ts +2 -0
  200. package/lib/commands/kb/create.js +1 -1
  201. package/lib/commands/kb/delete.d.ts +2 -0
  202. package/lib/commands/kb/delete.js +1 -1
  203. package/lib/commands/kb/detail.d.ts +2 -0
  204. package/lib/commands/kb/detail.js +1 -1
  205. package/lib/commands/kb/index.d.ts +2 -0
  206. package/lib/commands/kb/index.js +1 -1
  207. package/lib/commands/kb/list.d.ts +2 -0
  208. package/lib/commands/kb/list.js +1 -1
  209. package/lib/commands/kb/shared.d.ts +33 -0
  210. package/lib/commands/kb/shared.js +1 -1
  211. package/lib/commands/kb/update.d.ts +2 -0
  212. package/lib/commands/kb/update.js +1 -1
  213. package/lib/commands/logs/index.d.ts +5 -0
  214. package/lib/commands/logs/index.js +1 -1
  215. package/lib/commands/menu/asset-update.d.ts +2 -0
  216. package/lib/commands/menu/asset-update.js +1 -1
  217. package/lib/commands/menu/delete.d.ts +2 -0
  218. package/lib/commands/menu/delete.js +1 -1
  219. package/lib/commands/menu/external-link-create.d.ts +3 -0
  220. package/lib/commands/menu/external-link-create.js +1 -1
  221. package/lib/commands/menu/external-link-update.d.ts +2 -0
  222. package/lib/commands/menu/external-link-update.js +1 -1
  223. package/lib/commands/menu/group-create.d.ts +2 -0
  224. package/lib/commands/menu/group-create.js +1 -1
  225. package/lib/commands/menu/group-update.d.ts +2 -0
  226. package/lib/commands/menu/group-update.js +1 -1
  227. package/lib/commands/menu/index.d.ts +17 -0
  228. package/lib/commands/menu/index.js +1 -1
  229. package/lib/commands/menu/list.d.ts +2 -0
  230. package/lib/commands/menu/list.js +1 -1
  231. package/lib/commands/menu/move.d.ts +2 -0
  232. package/lib/commands/menu/move.js +1 -1
  233. package/lib/commands/menu/regroup-start.d.ts +2 -0
  234. package/lib/commands/menu/regroup-start.js +1 -1
  235. package/lib/commands/menu/rename.d.ts +2 -0
  236. package/lib/commands/menu/rename.js +1 -1
  237. package/lib/commands/menu/shared/compare-table.d.ts +27 -0
  238. package/lib/commands/menu/shared/compare-table.js +1 -1
  239. package/lib/commands/menu/shared/delete-plan.d.ts +51 -0
  240. package/lib/commands/menu/shared/delete-plan.js +1 -1
  241. package/lib/commands/menu/shared/facts.d.ts +12 -0
  242. package/lib/commands/menu/shared/facts.js +1 -1
  243. package/lib/commands/menu/shared/index.d.ts +12 -0
  244. package/lib/commands/menu/shared/index.js +1 -1
  245. package/lib/commands/menu/shared/inquirer.d.ts +10 -0
  246. package/lib/commands/menu/shared/inquirer.js +1 -1
  247. package/lib/commands/menu/shared/local-pages.d.ts +12 -0
  248. package/lib/commands/menu/shared/local-pages.js +1 -1
  249. package/lib/commands/menu/shared/logic.d.ts +28 -0
  250. package/lib/commands/menu/shared/logic.js +1 -1
  251. package/lib/commands/menu/shared/mutations.d.ts +69 -0
  252. package/lib/commands/menu/shared/mutations.js +1 -1
  253. package/lib/commands/menu/shared/service.d.ts +17 -0
  254. package/lib/commands/menu/shared/service.js +1 -1
  255. package/lib/commands/menu/shared/sync-core.d.ts +7 -0
  256. package/lib/commands/menu/shared/sync-core.js +1 -1
  257. package/lib/commands/menu/shared/types.d.ts +162 -0
  258. package/lib/commands/menu/shared/update-core.d.ts +11 -0
  259. package/lib/commands/menu/shared/update-core.js +1 -1
  260. package/lib/commands/menu/shared/valid-url.d.ts +6 -0
  261. package/lib/commands/menu/shared/valid-url.js +1 -1
  262. package/lib/commands/menu/sync.d.ts +2 -0
  263. package/lib/commands/menu/sync.js +1 -1
  264. package/lib/commands/notification/config-list.d.ts +2 -0
  265. package/lib/commands/notification/config-list.js +1 -1
  266. package/lib/commands/notification/index.d.ts +2 -0
  267. package/lib/commands/notification/index.js +1 -1
  268. package/lib/commands/ocr/index.d.ts +2 -0
  269. package/lib/commands/ocr/index.js +1 -1
  270. package/lib/commands/page/generate-start.d.ts +2 -0
  271. package/lib/commands/page/generate-start.js +1 -1
  272. package/lib/commands/page/generate-status.d.ts +2 -0
  273. package/lib/commands/page/generate-status.js +1 -1
  274. package/lib/commands/page/index.d.ts +2 -0
  275. package/lib/commands/page/index.js +1 -1
  276. package/lib/commands/page/pull.d.ts +2 -0
  277. package/lib/commands/page/pull.js +1 -1
  278. package/lib/commands/page/push.d.ts +2 -0
  279. package/lib/commands/page/push.js +1 -1
  280. package/lib/commands/page/relation-audit.d.ts +2 -0
  281. package/lib/commands/page/relation-audit.js +1 -1
  282. package/lib/commands/page/restore.d.ts +2 -0
  283. package/lib/commands/page/restore.js +1 -1
  284. package/lib/commands/page/shared.d.ts +105 -0
  285. package/lib/commands/page/shared.js +1 -1
  286. package/lib/commands/page/standard-page-status.d.ts +2 -0
  287. package/lib/commands/page/standard-page-status.js +1 -1
  288. package/lib/commands/page/sync.d.ts +2 -0
  289. package/lib/commands/page/sync.js +1 -1
  290. package/lib/commands/permit/index.d.ts +2 -0
  291. package/lib/commands/permit/index.js +1 -1
  292. package/lib/commands/permit/page-get.d.ts +2 -0
  293. package/lib/commands/permit/page-get.js +1 -1
  294. package/lib/commands/permit/page-set.d.ts +2 -0
  295. package/lib/commands/permit/page-set.js +1 -1
  296. package/lib/commands/permit/role-apis-set.d.ts +2 -0
  297. package/lib/commands/permit/role-apis-set.js +1 -1
  298. package/lib/commands/permit/role-menus-set.d.ts +2 -0
  299. package/lib/commands/permit/role-menus-set.js +1 -1
  300. package/lib/commands/permit/role-menus.d.ts +2 -0
  301. package/lib/commands/permit/role-menus.js +1 -1
  302. package/lib/commands/permit/shared.d.ts +74 -0
  303. package/lib/commands/permit/shared.js +1 -1
  304. package/lib/commands/project/create/enhanced-guided-create.d.ts +7 -0
  305. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  306. package/lib/commands/project/create/format-elapsed.d.ts +1 -0
  307. package/lib/commands/project/create/format-elapsed.js +1 -1
  308. package/lib/commands/project/create/main.d.ts +6 -0
  309. package/lib/commands/project/create/main.js +1 -1
  310. package/lib/commands/project/create/non-interactive.d.ts +9 -0
  311. package/lib/commands/project/create/non-interactive.js +1 -1
  312. package/lib/commands/project/create/project-template-path.d.ts +4 -0
  313. package/lib/commands/project/create/project-template-path.js +1 -1
  314. package/lib/commands/project/create/use-copy-project-template.d.ts +1 -0
  315. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  316. package/lib/commands/project/create/use-format-code.d.ts +1 -0
  317. package/lib/commands/project/create/use-format-code.js +1 -1
  318. package/lib/commands/project/create/use-install-dependencies.d.ts +1 -0
  319. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  320. package/lib/commands/project/index.d.ts +2 -0
  321. package/lib/commands/project/index.js +1 -1
  322. package/lib/commands/project/upgrade.d.ts +1 -0
  323. package/lib/commands/project/upgrade.js +1 -1
  324. package/lib/commands/registry.d.ts +66 -0
  325. package/lib/commands/registry.js +1 -1
  326. package/lib/commands/role/create.d.ts +2 -0
  327. package/lib/commands/role/create.js +1 -1
  328. package/lib/commands/role/delete.d.ts +2 -0
  329. package/lib/commands/role/delete.js +1 -1
  330. package/lib/commands/role/detail.d.ts +2 -0
  331. package/lib/commands/role/detail.js +1 -1
  332. package/lib/commands/role/index.d.ts +2 -0
  333. package/lib/commands/role/index.js +1 -1
  334. package/lib/commands/role/list.d.ts +2 -0
  335. package/lib/commands/role/list.js +1 -1
  336. package/lib/commands/role/shared.d.ts +107 -0
  337. package/lib/commands/role/shared.js +1 -1
  338. package/lib/commands/role/update.d.ts +2 -0
  339. package/lib/commands/role/update.js +1 -1
  340. package/lib/commands/role/user-add.d.ts +2 -0
  341. package/lib/commands/role/user-add.js +1 -1
  342. package/lib/commands/role/user-remove.d.ts +2 -0
  343. package/lib/commands/role/user-remove.js +1 -1
  344. package/lib/commands/role/user-resolve.d.ts +2 -0
  345. package/lib/commands/role/user-resolve.js +1 -1
  346. package/lib/commands/run/index.d.ts +2 -0
  347. package/lib/commands/run/index.js +1 -1
  348. package/lib/commands/schema.d.ts +5 -0
  349. package/lib/commands/schema.js +1 -1
  350. package/lib/commands/sql/create.d.ts +10 -0
  351. package/lib/commands/sql/create.js +1 -1
  352. package/lib/commands/sql/delete.d.ts +5 -0
  353. package/lib/commands/sql/delete.js +1 -1
  354. package/lib/commands/sql/detail.d.ts +2 -0
  355. package/lib/commands/sql/detail.js +1 -1
  356. package/lib/commands/sql/exec.d.ts +2 -0
  357. package/lib/commands/sql/exec.js +1 -1
  358. package/lib/commands/sql/index.d.ts +5 -0
  359. package/lib/commands/sql/index.js +1 -1
  360. package/lib/commands/sql/list.d.ts +2 -0
  361. package/lib/commands/sql/list.js +1 -1
  362. package/lib/commands/sql/pull.d.ts +5 -0
  363. package/lib/commands/sql/pull.js +1 -1
  364. package/lib/commands/sql/push.d.ts +5 -0
  365. package/lib/commands/sql/push.js +1 -1
  366. package/lib/commands/sql/shared.d.ts +23 -0
  367. package/lib/commands/sql/shared.js +1 -1
  368. package/lib/commands/sql/status.d.ts +5 -0
  369. package/lib/commands/sql/status.js +1 -1
  370. package/lib/commands/sql/validate.d.ts +2 -0
  371. package/lib/commands/sql/validate.js +1 -1
  372. package/lib/commands/task/index.d.ts +2 -0
  373. package/lib/commands/task/index.js +1 -1
  374. package/lib/commands/task/status.d.ts +2 -0
  375. package/lib/commands/task/status.js +1 -1
  376. package/lib/commands/tenant/index.d.ts +2 -0
  377. package/lib/commands/tenant/index.js +1 -1
  378. package/lib/commands/tenant/members-list.d.ts +2 -0
  379. package/lib/commands/tenant/members-list.js +1 -1
  380. package/lib/commands/tenant/shared.d.ts +10 -0
  381. package/lib/commands/tenant/shared.js +1 -1
  382. package/lib/commands/workspace/add.d.ts +6 -0
  383. package/lib/commands/workspace/add.js +1 -1
  384. package/lib/commands/workspace/index.d.ts +11 -0
  385. package/lib/commands/workspace/index.js +1 -1
  386. package/lib/commands/workspace/remove.d.ts +6 -0
  387. package/lib/commands/workspace/remove.js +1 -1
  388. package/lib/config/schema.d.ts +50 -0
  389. package/lib/config/schema.js +1 -1
  390. package/lib/constant/cdn.d.ts +1 -0
  391. package/lib/constant/cdn.js +1 -1
  392. package/lib/constant/cli.d.ts +34 -0
  393. package/lib/constant/cli.js +1 -1
  394. package/lib/constant/defaults.d.ts +10 -0
  395. package/lib/constant/defaults.js +1 -1
  396. package/lib/constant/domain.d.ts +14 -0
  397. package/lib/constant/domain.js +1 -1
  398. package/lib/constant/env.d.ts +11 -0
  399. package/lib/constant/env.js +1 -1
  400. package/lib/constant/output.d.ts +1 -0
  401. package/lib/constant/output.js +1 -1
  402. package/lib/constant/paths.d.ts +5 -0
  403. package/lib/constant/paths.js +1 -1
  404. package/lib/constant/risk.d.ts +1 -0
  405. package/lib/constant/risk.js +1 -1
  406. package/lib/context/app-resolver.d.ts +36 -0
  407. package/lib/context/app-resolver.js +1 -1
  408. package/lib/context/auth-resolver.d.ts +5 -0
  409. package/lib/context/auth-resolver.js +1 -1
  410. package/lib/context/config-loader.d.ts +61 -0
  411. package/lib/context/config-loader.js +1 -1
  412. package/lib/context.d.ts +102 -0
  413. package/lib/context.js +1 -1
  414. package/lib/core/alias-resolver.d.ts +31 -0
  415. package/lib/core/alias-resolver.js +1 -1
  416. package/lib/core/api-client.d.ts +1018 -0
  417. package/lib/core/api-client.js +1 -1
  418. package/lib/core/bff/config.d.ts +8 -0
  419. package/lib/core/bff/config.js +1 -1
  420. package/lib/core/bff/file-system.d.ts +28 -0
  421. package/lib/core/bff/file-system.js +1 -1
  422. package/lib/core/bff/hash.d.ts +7 -0
  423. package/lib/core/bff/hash.js +1 -1
  424. package/lib/core/bff/lock.d.ts +25 -0
  425. package/lib/core/bff/lock.js +1 -1
  426. package/lib/core/bff/types.d.ts +92 -0
  427. package/lib/core/bff/utils.d.ts +25 -0
  428. package/lib/core/bff/utils.js +1 -1
  429. package/lib/core/db-resolver.d.ts +43 -0
  430. package/lib/core/db-resolver.js +1 -1
  431. package/lib/core/page/file-system.d.ts +6 -0
  432. package/lib/core/page/file-system.js +1 -1
  433. package/lib/core/page/hash.d.ts +4 -0
  434. package/lib/core/page/hash.js +1 -1
  435. package/lib/core/page/lock.d.ts +8 -0
  436. package/lib/core/page/lock.js +1 -1
  437. package/lib/core/page/types.d.ts +22 -0
  438. package/lib/core/sql-index-auditor.d.ts +33 -0
  439. package/lib/core/sql-index-auditor.js +1 -1
  440. package/lib/core/sql-sync/config.d.ts +7 -0
  441. package/lib/core/sql-sync/config.js +1 -1
  442. package/lib/core/sql-sync/file-system.d.ts +7 -0
  443. package/lib/core/sql-sync/file-system.js +1 -1
  444. package/lib/core/sql-sync/hash.d.ts +5 -0
  445. package/lib/core/sql-sync/hash.js +1 -1
  446. package/lib/core/sql-sync/lock.d.ts +14 -0
  447. package/lib/core/sql-sync/lock.js +1 -1
  448. package/lib/core/sql-sync/types.d.ts +43 -0
  449. package/lib/core/sql-sync/utils.d.ts +10 -0
  450. package/lib/core/sql-sync/utils.js +1 -1
  451. package/lib/core/sql-validator.d.ts +34 -0
  452. package/lib/core/sql-validator.js +1 -1
  453. package/lib/errors.d.ts +3 -0
  454. package/lib/errors.js +1 -1
  455. package/lib/framework/build-all-flags.d.ts +2 -0
  456. package/lib/framework/build-all-flags.js +1 -1
  457. package/lib/framework/error-output.d.ts +9 -0
  458. package/lib/framework/error-output.js +1 -1
  459. package/lib/framework/explicit-yes.d.ts +3 -0
  460. package/lib/framework/explicit-yes.js +1 -1
  461. package/lib/framework/flags.d.ts +3 -0
  462. package/lib/framework/flags.js +1 -1
  463. package/lib/framework/help.d.ts +4 -0
  464. package/lib/framework/help.js +1 -1
  465. package/lib/framework/index.d.ts +11 -0
  466. package/lib/framework/index.js +1 -1
  467. package/lib/framework/output.d.ts +15 -0
  468. package/lib/framework/output.js +1 -1
  469. package/lib/framework/response.d.ts +2 -0
  470. package/lib/framework/response.js +1 -1
  471. package/lib/framework/runner-alias.d.ts +14 -0
  472. package/lib/framework/runner-alias.js +1 -1
  473. package/lib/framework/runner.d.ts +36 -0
  474. package/lib/framework/runner.js +1 -1
  475. package/lib/framework/schema-export.d.ts +3 -0
  476. package/lib/framework/schema-export.js +1 -1
  477. package/lib/framework/types.d.ts +63 -0
  478. package/lib/framework/types.js +1 -1
  479. package/lib/generated/build-info.d.ts +4 -0
  480. package/lib/generated/build-info.js +1 -1
  481. package/lib/help.d.ts +1 -0
  482. package/lib/help.js +1 -1
  483. package/lib/runtime/confirmation.d.ts +4 -0
  484. package/lib/runtime/confirmation.js +1 -0
  485. package/lib/runtime/event.d.ts +5 -0
  486. package/lib/runtime/event.js +1 -0
  487. package/lib/runtime/index.d.ts +7 -0
  488. package/lib/runtime/index.js +1 -0
  489. package/lib/runtime/queue.d.ts +5 -0
  490. package/lib/runtime/queue.js +1 -0
  491. package/lib/runtime/resolve.d.ts +8 -0
  492. package/lib/runtime/resolve.js +1 -0
  493. package/lib/runtime/types.d.ts +50 -0
  494. package/lib/runtime/types.js +1 -0
  495. package/lib/skills/main.d.ts +41 -0
  496. package/lib/skills/main.js +1 -1
  497. package/lib/skills/npx-skills-add.d.ts +99 -0
  498. package/lib/skills/npx-skills-add.js +1 -1
  499. package/lib/skills/skill-presence.d.ts +44 -0
  500. package/lib/skills/skill-presence.js +1 -1
  501. package/lib/telemetry/cli-command-trace.d.ts +12 -0
  502. package/lib/telemetry/cli-command-trace.js +1 -1
  503. package/lib/telemetry/cli-help-trace.d.ts +8 -0
  504. package/lib/telemetry/cli-help-trace.js +1 -1
  505. package/lib/telemetry/ensure-cli-otel-config.d.ts +6 -0
  506. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  507. package/lib/telemetry/register-otel-exit-shutdown.d.ts +3 -0
  508. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  509. package/lib/telemetry/send-cli-trace-log.d.ts +17 -0
  510. package/lib/telemetry/send-cli-trace-log.js +1 -1
  511. package/lib/telemetry/send-platform-issue-collect-log.d.ts +26 -0
  512. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  513. package/lib/types/index.d.ts +93 -0
  514. package/lib/utils/ai_config.d.ts +47 -0
  515. package/lib/utils/ai_config.js +1 -1
  516. package/lib/utils/apply-jq-filter.d.ts +1 -0
  517. package/lib/utils/apply-jq-filter.js +1 -1
  518. package/lib/utils/cdn-config.d.ts +42 -0
  519. package/lib/utils/cdn-config.js +1 -1
  520. package/lib/utils/check-sdk-version.d.ts +23 -0
  521. package/lib/utils/check-sdk-version.js +1 -1
  522. package/lib/utils/cli-version-check.d.ts +37 -0
  523. package/lib/utils/cli-version-check.js +1 -1
  524. package/lib/utils/cli-version-policy.d.ts +9 -0
  525. package/lib/utils/cli-version-policy.js +1 -1
  526. package/lib/utils/config.d.ts +42 -0
  527. package/lib/utils/config.js +1 -1
  528. package/lib/utils/copy-directory.d.ts +1 -0
  529. package/lib/utils/copy-directory.js +1 -1
  530. package/lib/utils/entity-with-id.d.ts +30 -0
  531. package/lib/utils/entity-with-id.js +1 -1
  532. package/lib/utils/file-utils.d.ts +25 -0
  533. package/lib/utils/file-utils.js +1 -1
  534. package/lib/utils/guides-cdn.d.ts +80 -0
  535. package/lib/utils/guides-cdn.js +1 -1
  536. package/lib/utils/http-client.d.ts +30 -0
  537. package/lib/utils/http-client.js +1 -1
  538. package/lib/utils/is-non-interactive.d.ts +7 -0
  539. package/lib/utils/is-non-interactive.js +1 -1
  540. package/lib/utils/logger.d.ts +62 -0
  541. package/lib/utils/logger.js +1 -1
  542. package/lib/utils/params.d.ts +15 -0
  543. package/lib/utils/params.js +1 -1
  544. package/lib/utils/platform.d.ts +21 -0
  545. package/lib/utils/platform.js +1 -1
  546. package/lib/utils/rules-cdn.d.ts +38 -0
  547. package/lib/utils/rules-cdn.js +1 -1
  548. package/lib/utils/sleep.d.ts +1 -0
  549. package/lib/utils/sleep.js +1 -1
  550. package/lib/utils/template-replacer.d.ts +55 -0
  551. package/lib/utils/template-replacer.js +1 -1
  552. package/lib/utils/update-notice.d.ts +10 -0
  553. package/lib/utils/update-notice.js +1 -1
  554. package/lib/utils/version.d.ts +1 -0
  555. package/lib/utils/version.js +1 -1
  556. package/lib/utils/with-active-cookie.d.ts +1 -0
  557. package/lib/utils/with-active-cookie.js +1 -1
  558. package/lib/utils/write-cli-side-channel.d.ts +6 -0
  559. package/lib/utils/write-cli-side-channel.js +1 -1
  560. package/package.json +9 -1
@@ -0,0 +1,33 @@
1
+ import type { KnowledgeBaseListFilters, KnowledgeBaseRecord } from "../../core/api-client.js";
2
+ import { CliError } from "../../errors.js";
3
+ import type { RuntimeContext } from "../../framework/types.js";
4
+ export interface KbContentMetadata {
5
+ content: string;
6
+ byteSize: number;
7
+ contentHash: string;
8
+ }
9
+ export interface KbProjection {
10
+ id: number;
11
+ scope: "company";
12
+ appCode: string;
13
+ title: string;
14
+ version: number;
15
+ contentByteSize: number;
16
+ contentHash: string;
17
+ snapshotHash: string;
18
+ createTime?: string | number;
19
+ updateTime?: string | number;
20
+ }
21
+ export declare function kbError(code: string, message: string, hint?: string): CliError;
22
+ export declare function readKbId(ctx: RuntimeContext): number;
23
+ export declare function requireKbExplicitYes(ctx: RuntimeContext): void;
24
+ export declare function inspectKbContent(content: string): KbContentMetadata;
25
+ export declare function readKbFile(filePath: string): Promise<KbContentMetadata>;
26
+ export declare function verifyKbMutationReadback<T>(operation: "create" | "update" | "delete", writeOutcomeUnknown: boolean, readback: () => Promise<T>): Promise<T>;
27
+ export declare function projectKb(record: KnowledgeBaseRecord): KbProjection;
28
+ export declare function assertCompanyKnowledgeBase(record: KnowledgeBaseRecord, appCode: string, expectedId?: number): void;
29
+ export declare function fetchAllCompanyKnowledgeBases(ctx: Pick<RuntimeContext, "cookie" | "appCode">, filters: Omit<KnowledgeBaseListFilters, "currentPage" | "pageSize" | "appCode">): Promise<KnowledgeBaseRecord[]>;
30
+ export declare function findExactCompanyKnowledgeBases(records: KnowledgeBaseRecord[], appCode: string, title: string): KnowledgeBaseRecord[];
31
+ export declare function getKbOrNull(ctx: Pick<RuntimeContext, "cookie" | "appCode">, id: number): Promise<KnowledgeBaseRecord | null>;
32
+ export declare function requireKb(ctx: Pick<RuntimeContext, "cookie" | "appCode">, id: number): Promise<KnowledgeBaseRecord>;
33
+ export declare function assertExpectedKbVersion(record: KnowledgeBaseRecord, expectedVersion: number | undefined): void;
@@ -1 +1 @@
1
- const a104_0x49fd87=a104_0x382b;(function(_0x112255,_0x529430){const _0x1f78d4=a104_0x382b,_0x2df4b7=_0x112255();while(!![]){try{const _0x5c9e49=-parseInt(_0x1f78d4(0x1b6))/0x1+-parseInt(_0x1f78d4(0x188))/0x2*(parseInt(_0x1f78d4(0x1c8))/0x3)+parseInt(_0x1f78d4(0x195))/0x4*(parseInt(_0x1f78d4(0x1cc))/0x5)+parseInt(_0x1f78d4(0x1b9))/0x6*(parseInt(_0x1f78d4(0x1b1))/0x7)+parseInt(_0x1f78d4(0x1d8))/0x8+-parseInt(_0x1f78d4(0x18e))/0x9*(parseInt(_0x1f78d4(0x1bd))/0xa)+-parseInt(_0x1f78d4(0x18a))/0xb;if(_0x5c9e49===_0x529430)break;else _0x2df4b7['push'](_0x2df4b7['shift']());}catch(_0x3e3b21){_0x2df4b7['push'](_0x2df4b7['shift']());}}}(a104_0x539d,0x2ed79));import{createHash}from'node:crypto';function a104_0x539d(){const _0x3038e3=['30pkOjXr','sha256','\x20response\x20contains\x20an\x20invalid\x20version.','Cannot\x20access\x20knowledge-base\x20content\x20file:\x20','defineProperty','The\x20','yes','Knowledge-base\x20list\x20returned\x20page\x20','createTime','Knowledge-base\x20content\x20file\x20path\x20is\x20required.','bool','3Aehzkp','hex','\x20while\x20page\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.','35RERaQK','Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','kb_confirmation_required','number','kb_list_contract_invalid','Knowledge-base\x20list\x20total\x20changed\x20from\x20','update','Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','string','stringify','num','1410496xxfOHr','from','utf-8','updateTime','Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.','byteLength','Pass\x20--file\x20<knowledge.md>.','Knowledge-base\x20content\x20file\x20is\x20blank:\x20','kb_file_required','393478QKMeEY','This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.','15334XkFnpH','scope','decode','version','533061dIBptB','add','company','digest','paging','\x20version\x20changed:\x20expected\x20','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','60344nSmFwb','Knowledge-base\x20list\x20stopped\x20at\x20','kb_response_invalid','message','dry-run','contentHash','outcome_unknown','length','--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.','cause','306','filter','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','Knowledge-base\x20get-one\x20returned\x20id\x20','kb_content_invalid','push','currentPage','totalCount','\x20to\x20','Knowledge\x20base\x20','Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.','appCode','\x20was\x20requested.','title','items','Company\x20knowledge\x20base\x20not\x20found:\x20','Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','kb_scope_mismatch','7WyILiA','verification_unavailable','isSafeInteger',',\x20current\x20','kb_file_invalid','44815kcpeGI','content','trim','1983516zedTak','\x20records.','kb_file_unreadable','has'];a104_0x539d=function(){return _0x3038e3;};return a104_0x539d();}import{readFile,stat}from'node:fs/promises';import{resolve}from'node:path';import{TextDecoder}from'node:util';import{getEnterpriseKnowledgeBase,getPlatformErrorCode,listEnterpriseKnowledgeBases}from'../../core/api-client.js';import{CliError}from'../../errors.js';function a104_0x382b(_0x52a675,_0x3e7947){_0x52a675=_0x52a675-0x180;const _0x539d36=a104_0x539d();let _0x382b72=_0x539d36[_0x52a675];return _0x382b72;}const LIST_PAGE_SIZE=0x32,DATA_NOT_EXIST_ERROR_CODE=a104_0x49fd87(0x19f);export function kbError(_0x559824,_0x533c0c,_0x1ebfe7){return new CliError(_0x559824,0x1,_0x533c0c,_0x1ebfe7);}export function readKbId(_0x34b2b4){const _0xb3a94a=a104_0x49fd87,_0x3bfcf2=_0x34b2b4[_0xb3a94a(0x1d7)]('id');if(!Number[_0xb3a94a(0x1b3)](_0x3bfcf2)||_0x3bfcf2<=0x0)throw kbError('kb_id_invalid',_0xb3a94a(0x19d));return _0x3bfcf2;}export function requireKbExplicitYes(_0x412d62){const _0x26a218=a104_0x49fd87;if(_0x412d62[_0x26a218(0x1c7)](_0x26a218(0x199))||_0x412d62[_0x26a218(0x1c7)](_0x26a218(0x1c3)))return;throw kbError(_0x26a218(0x1ce),_0x26a218(0x189),'Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.');}function sha256(_0xb78341){const _0x33f12b=a104_0x49fd87;return'sha256:'+createHash(_0x33f12b(0x1be))[_0x33f12b(0x1d2)](_0xb78341)[_0x33f12b(0x191)](_0x33f12b(0x1c9));}export function inspectKbContent(_0x509a11){const _0x2ab43d=a104_0x49fd87,_0x3d00ed=Buffer[_0x2ab43d(0x180)](_0x509a11,'utf8');return{'content':_0x509a11,'byteSize':_0x3d00ed[_0x2ab43d(0x184)],'contentHash':sha256(_0x3d00ed)};}export async function readKbFile(_0x3fb04b){const _0x3436f1=a104_0x49fd87,_0x20bb10=_0x3fb04b[_0x3436f1(0x1b8)]();if(!_0x20bb10)throw kbError(_0x3436f1(0x187),_0x3436f1(0x1c6),_0x3436f1(0x185));const _0x37541e=resolve(_0x20bb10);let _0xd3f7c8;try{_0xd3f7c8=await stat(_0x37541e);}catch(_0x15915f){throw kbError(_0x3436f1(0x1bb),_0x3436f1(0x1c0)+_0x20bb10,_0x15915f instanceof Error?_0x15915f[_0x3436f1(0x198)]:String(_0x15915f));}if(!_0xd3f7c8['isFile']())throw kbError(_0x3436f1(0x1b5),_0x3436f1(0x1af)+_0x20bb10);let _0x51cfe0;try{_0x51cfe0=await readFile(_0x37541e);}catch(_0x4fda02){throw kbError('kb_file_unreadable',_0x3436f1(0x1d4)+_0x20bb10,_0x4fda02 instanceof Error?_0x4fda02[_0x3436f1(0x198)]:String(_0x4fda02));}let _0x14bcac;try{_0x14bcac=new TextDecoder(_0x3436f1(0x181),{'fatal':!![],'ignoreBOM':!![]})[_0x3436f1(0x18c)](_0x51cfe0);}catch{throw kbError(_0x3436f1(0x1a3),_0x3436f1(0x1cd)+_0x20bb10);}if(!_0x14bcac[_0x3436f1(0x1b8)]())throw kbError(_0x3436f1(0x1a3),_0x3436f1(0x186)+_0x20bb10);return inspectKbContent(_0x14bcac);}export async function verifyKbMutationReadback(_0x257285,_0x4a6b90,_0x5959b1){const _0x5ae9df=a104_0x49fd87;try{return await _0x5959b1();}catch(_0x1607c5){const _0x4848cb=kbError('kb_'+_0x257285+'_'+(_0x4a6b90?_0x5ae9df(0x19b):_0x5ae9df(0x1b2)),_0x5ae9df(0x1c2)+_0x257285+_0x5ae9df(0x1a1),_0x5ae9df(0x194));Object[_0x5ae9df(0x1c1)](_0x4848cb,_0x5ae9df(0x19e),{'value':_0x1607c5,'enumerable':![]});throw _0x4848cb;}}function requireRecordText(_0x270b63,_0x3fefa2,_0x44a017,_0x528602={}){const _0x21dcc1=a104_0x49fd87;if(typeof _0x270b63===_0x21dcc1(0x1d5)&&(_0x528602['allowEmpty']||_0x270b63[_0x21dcc1(0x1b8)]()))return _0x270b63;throw kbError('kb_response_invalid',_0x21dcc1(0x1a8)+String(_0x44a017)+'\x20response\x20is\x20missing\x20'+_0x3fefa2+'.');}export function projectKb(_0x346beb){const _0x4e8c4d=a104_0x49fd87;if(!Number[_0x4e8c4d(0x1b3)](_0x346beb['id'])||_0x346beb['id']<=0x0)throw kbError(_0x4e8c4d(0x197),_0x4e8c4d(0x1d3));if(!Number[_0x4e8c4d(0x1b3)](_0x346beb['version'])||_0x346beb[_0x4e8c4d(0x18d)]<0x0)throw kbError(_0x4e8c4d(0x197),_0x4e8c4d(0x1a8)+_0x346beb['id']+_0x4e8c4d(0x1bf));if(_0x346beb['scope']!==_0x4e8c4d(0x190))throw kbError(_0x4e8c4d(0x1b0),_0x4e8c4d(0x1a8)+_0x346beb['id']+'\x20is\x20not\x20company-scoped.');const _0x306a6d=requireRecordText(_0x346beb[_0x4e8c4d(0x1aa)],_0x4e8c4d(0x1aa),_0x346beb['id']),_0x32b777=requireRecordText(_0x346beb[_0x4e8c4d(0x1ac)],'title',_0x346beb['id']),_0x49811c=inspectKbContent(requireRecordText(_0x346beb[_0x4e8c4d(0x1b7)],_0x4e8c4d(0x1b7),_0x346beb['id'],{'allowEmpty':!![]})),_0x369fcd=typeof _0x346beb['createTime']===_0x4e8c4d(0x1d5)||typeof _0x346beb['createTime']===_0x4e8c4d(0x1cf)?_0x346beb[_0x4e8c4d(0x1c5)]:undefined,_0x1b9998=typeof _0x346beb[_0x4e8c4d(0x182)]===_0x4e8c4d(0x1d5)||typeof _0x346beb[_0x4e8c4d(0x182)]==='number'?_0x346beb[_0x4e8c4d(0x182)]:undefined,_0x223fa4=sha256(JSON[_0x4e8c4d(0x1d6)]({'id':_0x346beb['id'],'scope':_0x346beb[_0x4e8c4d(0x18b)],'appCode':_0x306a6d,'title':_0x32b777,'version':_0x346beb[_0x4e8c4d(0x18d)],'contentHash':_0x49811c[_0x4e8c4d(0x19a)],'createTime':_0x369fcd,'updateTime':_0x1b9998}));return{'id':_0x346beb['id'],'scope':_0x4e8c4d(0x190),'appCode':_0x306a6d,'title':_0x32b777,'version':_0x346beb[_0x4e8c4d(0x18d)],'contentByteSize':_0x49811c['byteSize'],'contentHash':_0x49811c['contentHash'],'snapshotHash':_0x223fa4,..._0x369fcd!==undefined?{'createTime':_0x369fcd}:{},..._0x1b9998!==undefined?{'updateTime':_0x1b9998}:{}};}export function assertCompanyKnowledgeBase(_0xd34ad9,_0x2806ae,_0x3bbae6){const _0x2e6f05=a104_0x49fd87;if(_0x3bbae6!==undefined&&_0xd34ad9['id']!==_0x3bbae6)throw kbError(_0x2e6f05(0x197),_0x2e6f05(0x1a2)+_0xd34ad9['id']+'\x20while\x20id\x20'+_0x3bbae6+_0x2e6f05(0x1ab));if(_0xd34ad9[_0x2e6f05(0x18b)]!==_0x2e6f05(0x190)||_0xd34ad9[_0x2e6f05(0x1aa)]!==_0x2806ae)throw kbError(_0x2e6f05(0x1b0),_0x2e6f05(0x1a8)+_0xd34ad9['id']+'\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20'+_0x2806ae+'.');}export async function fetchAllCompanyKnowledgeBases(_0xa7f148,_0x50bc71){const _0x2058fb=a104_0x49fd87,_0x52c652=[],_0x4a35e9=new Set();let _0x441aba=0x1,_0x1a0c6b=0x0,_0x3b73c9;while(!![]){const _0x551f2f=await listEnterpriseKnowledgeBases(_0xa7f148['cookie'],{'currentPage':_0x441aba,'pageSize':LIST_PAGE_SIZE,'appCode':_0xa7f148[_0x2058fb(0x1aa)],..._0x50bc71}),_0x1f7d98=_0x551f2f[_0x2058fb(0x192)]?.[_0x2058fb(0x1a6)];if(_0x551f2f['paging']?.['currentPage']!==undefined&&_0x551f2f['paging'][_0x2058fb(0x1a5)]!==_0x441aba)throw kbError('kb_list_contract_invalid',_0x2058fb(0x1c4)+_0x551f2f['paging']['currentPage']+_0x2058fb(0x1ca)+_0x441aba+_0x2058fb(0x1ab));if(_0x1f7d98!==undefined){if(_0x3b73c9!==undefined&&_0x1f7d98!==_0x3b73c9)throw kbError(_0x2058fb(0x1d0),_0x2058fb(0x1d1)+_0x3b73c9+_0x2058fb(0x1a7)+_0x1f7d98+'\x20during\x20paging.',_0x2058fb(0x183));_0x3b73c9=_0x1f7d98;}for(const _0x5c4eaa of _0x551f2f[_0x2058fb(0x1ad)]){if(!Number[_0x2058fb(0x1b3)](_0x5c4eaa['id'])||_0x4a35e9[_0x2058fb(0x1bc)](_0x5c4eaa['id']))throw kbError('kb_list_contract_invalid','Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20'+String(_0x5c4eaa['id'])+'.');_0x4a35e9[_0x2058fb(0x18f)](_0x5c4eaa['id']),_0x5c4eaa[_0x2058fb(0x18b)]===_0x2058fb(0x190)&&_0x5c4eaa[_0x2058fb(0x1aa)]===_0xa7f148[_0x2058fb(0x1aa)]&&_0x52c652[_0x2058fb(0x1a4)](_0x5c4eaa);}_0x1a0c6b+=_0x551f2f[_0x2058fb(0x1ad)][_0x2058fb(0x19c)];if(_0x1f7d98!==undefined&&_0x1a0c6b>=_0x1f7d98)break;if(_0x551f2f[_0x2058fb(0x1ad)][_0x2058fb(0x19c)]<LIST_PAGE_SIZE){if(_0x1f7d98!==undefined&&_0x1a0c6b<_0x1f7d98)throw kbError(_0x2058fb(0x1d0),_0x2058fb(0x196)+_0x1a0c6b+'\x20of\x20'+_0x1f7d98+_0x2058fb(0x1ba));break;}_0x441aba+=0x1;}return _0x52c652;}export function findExactCompanyKnowledgeBases(_0x3ae302,_0x12857f,_0x5492c6){const _0x218663=a104_0x49fd87;return _0x3ae302[_0x218663(0x1a0)](_0x4b0b63=>_0x4b0b63['scope']==='company'&&_0x4b0b63[_0x218663(0x1aa)]===_0x12857f&&_0x4b0b63['title']===_0x5492c6);}export async function getKbOrNull(_0xb108dd,_0x30df57){const _0x468efd=a104_0x49fd87;try{const _0x1e6c18=await getEnterpriseKnowledgeBase(_0xb108dd['cookie'],_0x30df57);return assertCompanyKnowledgeBase(_0x1e6c18,_0xb108dd[_0x468efd(0x1aa)],_0x30df57),_0x1e6c18;}catch(_0x5dbf22){if(getPlatformErrorCode(_0x5dbf22)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x5dbf22;}}export async function requireKb(_0x410396,_0x237d9f){const _0x37942c=a104_0x49fd87,_0x36b924=await getKbOrNull(_0x410396,_0x237d9f);if(!_0x36b924)throw kbError('kb_not_found',_0x37942c(0x1ae)+_0x237d9f,_0x37942c(0x1a9));return _0x36b924;}export function assertExpectedKbVersion(_0xf41dd7,_0x11da89){const _0x571aea=a104_0x49fd87;if(_0x11da89===undefined||_0xf41dd7[_0x571aea(0x18d)]===_0x11da89)return;throw kbError('kb_state_drift',_0x571aea(0x1a8)+_0xf41dd7['id']+_0x571aea(0x193)+_0x11da89+_0x571aea(0x1b4)+_0xf41dd7['version']+'.',_0x571aea(0x1cb));}
1
+ function a104_0x24db(){const _0xda666=['items','length','Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','\x20while\x20page\x20','kb_id_invalid','isFile','num','kb_scope_mismatch','\x20was\x20requested.','scope','This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.','content','push','yes','\x20version\x20changed:\x20expected\x20','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','kb_response_invalid','168135klHGho','isSafeInteger','paging','dry-run','stringify','2ynHGic','bool','kb_file_required','has','verification_unavailable','allowEmpty','update','kb_content_invalid','kb_list_contract_invalid','defineProperty','sha256','contentHash','currentPage','createTime','outcome_unknown','Company\x20knowledge\x20base\x20not\x20found:\x20','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','digest','\x20records.','Knowledge-base\x20get-one\x20returned\x20id\x20','Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20','kb_state_drift','8ipajUi','Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.','\x20of\x20',',\x20current\x20','company','Pass\x20--file\x20<knowledge.md>.','1777230BwYrYx','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','\x20during\x20paging.','\x20response\x20contains\x20an\x20invalid\x20version.','title','\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20','kb_file_invalid','\x20to\x20','Knowledge\x20base\x20','trim','version','--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.','filter','message','byteLength','byteSize','133940BHVOBE','utf-8','totalCount','cookie','from','Knowledge-base\x20content\x20file\x20path\x20is\x20required.','306','117695JKorGI','Knowledge-base\x20list\x20total\x20changed\x20from\x20','2570445tZQjwQ','1741128GirtPK','updateTime','appCode','number','kb_not_found','string','1111950LTSoqv','cause'];a104_0x24db=function(){return _0xda666;};return a104_0x24db();}const a104_0x522eaa=a104_0x4b8b;(function(_0xc1602a,_0x202496){const _0xa80349=a104_0x4b8b,_0x2f734d=_0xc1602a();while(!![]){try{const _0x71dab4=-parseInt(_0xa80349(0x98))/0x1*(-parseInt(_0xa80349(0xc5))/0x2)+-parseInt(_0xa80349(0x93))/0x3+-parseInt(_0xa80349(0xae))/0x4*(parseInt(_0xa80349(0xcc))/0x5)+-parseInt(_0xa80349(0xd5))/0x6+parseInt(_0xa80349(0xb5))/0x7+-parseInt(_0xa80349(0xcf))/0x8+parseInt(_0xa80349(0xce))/0x9;if(_0x71dab4===_0x202496)break;else _0x2f734d['push'](_0x2f734d['shift']());}catch(_0x1c74c6){_0x2f734d['push'](_0x2f734d['shift']());}}}(a104_0x24db,0x28db2));import{createHash}from'node:crypto';import{readFile,stat}from'node:fs/promises';import{resolve}from'node:path';import{TextDecoder}from'node:util';import{getEnterpriseKnowledgeBase,getPlatformErrorCode,listEnterpriseKnowledgeBases}from'../../core/api-client.js';function a104_0x4b8b(_0x38a55f,_0x65771d){_0x38a55f=_0x38a55f-0x89;const _0x24db26=a104_0x24db();let _0x4b8b22=_0x24db26[_0x38a55f];return _0x4b8b22;}import{CliError}from'../../errors.js';const LIST_PAGE_SIZE=0x32,DATA_NOT_EXIST_ERROR_CODE=a104_0x522eaa(0xcb);export function kbError(_0x362644,_0x4f8331,_0xd32e76){return new CliError(_0x362644,0x1,_0x4f8331,_0xd32e76);}export function readKbId(_0x1d4e03){const _0x17984e=a104_0x522eaa,_0x2df25f=_0x1d4e03[_0x17984e(0xdd)]('id');if(!Number['isSafeInteger'](_0x2df25f)||_0x2df25f<=0x0)throw kbError(_0x17984e(0xdb),_0x17984e(0xc0));return _0x2df25f;}export function requireKbExplicitYes(_0x45a3b3){const _0x3d4c73=a104_0x522eaa;if(_0x45a3b3[_0x3d4c73(0x99)](_0x3d4c73(0x96))||_0x45a3b3[_0x3d4c73(0x99)](_0x3d4c73(0x8f)))return;throw kbError('kb_confirmation_required',_0x3d4c73(0x8c),_0x3d4c73(0xa8));}function sha256(_0x535267){const _0x16c465=a104_0x522eaa;return'sha256:'+createHash(_0x16c465(0xa2))[_0x16c465(0x9e)](_0x535267)[_0x16c465(0xa9)]('hex');}export function inspectKbContent(_0x5c5cbf){const _0xf31bbf=a104_0x522eaa,_0x4f4e95=Buffer[_0xf31bbf(0xc9)](_0x5c5cbf,'utf8');return{'content':_0x5c5cbf,'byteSize':_0x4f4e95[_0xf31bbf(0xc3)],'contentHash':sha256(_0x4f4e95)};}export async function readKbFile(_0x26c5e9){const _0xe59c5f=a104_0x522eaa,_0x14386d=_0x26c5e9[_0xe59c5f(0xbe)]();if(!_0x14386d)throw kbError(_0xe59c5f(0x9a),_0xe59c5f(0xca),_0xe59c5f(0xb4));const _0xa10da0=resolve(_0x14386d);let _0x520d70;try{_0x520d70=await stat(_0xa10da0);}catch(_0x316562){throw kbError('kb_file_unreadable','Cannot\x20access\x20knowledge-base\x20content\x20file:\x20'+_0x14386d,_0x316562 instanceof Error?_0x316562[_0xe59c5f(0xc2)]:String(_0x316562));}if(!_0x520d70[_0xe59c5f(0xdc)]())throw kbError(_0xe59c5f(0xbb),_0xe59c5f(0xd9)+_0x14386d);let _0x48a85e;try{_0x48a85e=await readFile(_0xa10da0);}catch(_0x2c81ea){throw kbError('kb_file_unreadable',_0xe59c5f(0xb6)+_0x14386d,_0x2c81ea instanceof Error?_0x2c81ea['message']:String(_0x2c81ea));}let _0xdcf691;try{_0xdcf691=new TextDecoder(_0xe59c5f(0xc6),{'fatal':!![],'ignoreBOM':!![]})['decode'](_0x48a85e);}catch{throw kbError(_0xe59c5f(0x9f),'Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20'+_0x14386d);}if(!_0xdcf691[_0xe59c5f(0xbe)]())throw kbError(_0xe59c5f(0x9f),'Knowledge-base\x20content\x20file\x20is\x20blank:\x20'+_0x14386d);return inspectKbContent(_0xdcf691);}export async function verifyKbMutationReadback(_0x544f6a,_0x43fa3a,_0x17f69f){const _0x5cef36=a104_0x522eaa;try{return await _0x17f69f();}catch(_0x2cfe71){const _0x5318aa=kbError('kb_'+_0x544f6a+'_'+(_0x43fa3a?_0x5cef36(0xa6):_0x5cef36(0x9c)),'The\x20'+_0x544f6a+_0x5cef36(0x91),'Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.');Object[_0x5cef36(0xa1)](_0x5318aa,_0x5cef36(0xd6),{'value':_0x2cfe71,'enumerable':![]});throw _0x5318aa;}}function requireRecordText(_0x4d082a,_0x399673,_0x26c935,_0x39f7f9={}){const _0x100ad1=a104_0x522eaa;if(typeof _0x4d082a===_0x100ad1(0xd4)&&(_0x39f7f9[_0x100ad1(0x9d)]||_0x4d082a[_0x100ad1(0xbe)]()))return _0x4d082a;throw kbError('kb_response_invalid',_0x100ad1(0xbd)+String(_0x26c935)+'\x20response\x20is\x20missing\x20'+_0x399673+'.');}export function projectKb(_0x146038){const _0x2322f9=a104_0x522eaa;if(!Number[_0x2322f9(0x94)](_0x146038['id'])||_0x146038['id']<=0x0)throw kbError('kb_response_invalid','Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.');if(!Number[_0x2322f9(0x94)](_0x146038[_0x2322f9(0xbf)])||_0x146038['version']<0x0)throw kbError(_0x2322f9(0x92),'Knowledge\x20base\x20'+_0x146038['id']+_0x2322f9(0xb8));if(_0x146038[_0x2322f9(0x8b)]!==_0x2322f9(0xb3))throw kbError(_0x2322f9(0x89),_0x2322f9(0xbd)+_0x146038['id']+'\x20is\x20not\x20company-scoped.');const _0x17a998=requireRecordText(_0x146038[_0x2322f9(0xd1)],_0x2322f9(0xd1),_0x146038['id']),_0x132591=requireRecordText(_0x146038['title'],_0x2322f9(0xb9),_0x146038['id']),_0x43a101=inspectKbContent(requireRecordText(_0x146038['content'],_0x2322f9(0x8d),_0x146038['id'],{'allowEmpty':!![]})),_0x31b726=typeof _0x146038[_0x2322f9(0xa5)]===_0x2322f9(0xd4)||typeof _0x146038[_0x2322f9(0xa5)]===_0x2322f9(0xd2)?_0x146038['createTime']:undefined,_0x5632d2=typeof _0x146038[_0x2322f9(0xd0)]==='string'||typeof _0x146038[_0x2322f9(0xd0)]===_0x2322f9(0xd2)?_0x146038['updateTime']:undefined,_0x2aab87=sha256(JSON[_0x2322f9(0x97)]({'id':_0x146038['id'],'scope':_0x146038[_0x2322f9(0x8b)],'appCode':_0x17a998,'title':_0x132591,'version':_0x146038['version'],'contentHash':_0x43a101[_0x2322f9(0xa3)],'createTime':_0x31b726,'updateTime':_0x5632d2}));return{'id':_0x146038['id'],'scope':_0x2322f9(0xb3),'appCode':_0x17a998,'title':_0x132591,'version':_0x146038[_0x2322f9(0xbf)],'contentByteSize':_0x43a101[_0x2322f9(0xc4)],'contentHash':_0x43a101[_0x2322f9(0xa3)],'snapshotHash':_0x2aab87,..._0x31b726!==undefined?{'createTime':_0x31b726}:{},..._0x5632d2!==undefined?{'updateTime':_0x5632d2}:{}};}export function assertCompanyKnowledgeBase(_0x3120be,_0x56bcdd,_0xea7e){const _0x39d7f7=a104_0x522eaa;if(_0xea7e!==undefined&&_0x3120be['id']!==_0xea7e)throw kbError(_0x39d7f7(0x92),_0x39d7f7(0xab)+_0x3120be['id']+'\x20while\x20id\x20'+_0xea7e+_0x39d7f7(0x8a));if(_0x3120be[_0x39d7f7(0x8b)]!=='company'||_0x3120be[_0x39d7f7(0xd1)]!==_0x56bcdd)throw kbError('kb_scope_mismatch',_0x39d7f7(0xbd)+_0x3120be['id']+_0x39d7f7(0xba)+_0x56bcdd+'.');}export async function fetchAllCompanyKnowledgeBases(_0xf5d570,_0x2f1485){const _0x3f386f=a104_0x522eaa,_0x1bb431=[],_0x26e4a5=new Set();let _0x4c50c5=0x1,_0x269237=0x0,_0x52a067;while(!![]){const _0x404eca=await listEnterpriseKnowledgeBases(_0xf5d570[_0x3f386f(0xc8)],{'currentPage':_0x4c50c5,'pageSize':LIST_PAGE_SIZE,'appCode':_0xf5d570[_0x3f386f(0xd1)],..._0x2f1485}),_0x3be297=_0x404eca[_0x3f386f(0x95)]?.[_0x3f386f(0xc7)];if(_0x404eca[_0x3f386f(0x95)]?.['currentPage']!==undefined&&_0x404eca[_0x3f386f(0x95)]['currentPage']!==_0x4c50c5)throw kbError(_0x3f386f(0xa0),'Knowledge-base\x20list\x20returned\x20page\x20'+_0x404eca[_0x3f386f(0x95)][_0x3f386f(0xa4)]+_0x3f386f(0xda)+_0x4c50c5+_0x3f386f(0x8a));if(_0x3be297!==undefined){if(_0x52a067!==undefined&&_0x3be297!==_0x52a067)throw kbError(_0x3f386f(0xa0),_0x3f386f(0xcd)+_0x52a067+_0x3f386f(0xbc)+_0x3be297+_0x3f386f(0xb7),_0x3f386f(0xaf));_0x52a067=_0x3be297;}for(const _0x466f61 of _0x404eca['items']){if(!Number[_0x3f386f(0x94)](_0x466f61['id'])||_0x26e4a5[_0x3f386f(0x9b)](_0x466f61['id']))throw kbError(_0x3f386f(0xa0),_0x3f386f(0xac)+String(_0x466f61['id'])+'.');_0x26e4a5['add'](_0x466f61['id']),_0x466f61['scope']===_0x3f386f(0xb3)&&_0x466f61[_0x3f386f(0xd1)]===_0xf5d570[_0x3f386f(0xd1)]&&_0x1bb431[_0x3f386f(0x8e)](_0x466f61);}_0x269237+=_0x404eca[_0x3f386f(0xd7)][_0x3f386f(0xd8)];if(_0x3be297!==undefined&&_0x269237>=_0x3be297)break;if(_0x404eca[_0x3f386f(0xd7)][_0x3f386f(0xd8)]<LIST_PAGE_SIZE){if(_0x3be297!==undefined&&_0x269237<_0x3be297)throw kbError(_0x3f386f(0xa0),'Knowledge-base\x20list\x20stopped\x20at\x20'+_0x269237+_0x3f386f(0xb1)+_0x3be297+_0x3f386f(0xaa));break;}_0x4c50c5+=0x1;}return _0x1bb431;}export function findExactCompanyKnowledgeBases(_0x3fe1e1,_0x5bc3d6,_0x5e7d13){const _0xa04a8c=a104_0x522eaa;return _0x3fe1e1[_0xa04a8c(0xc1)](_0x2b0fe5=>_0x2b0fe5[_0xa04a8c(0x8b)]===_0xa04a8c(0xb3)&&_0x2b0fe5[_0xa04a8c(0xd1)]===_0x5bc3d6&&_0x2b0fe5[_0xa04a8c(0xb9)]===_0x5e7d13);}export async function getKbOrNull(_0x2ab78d,_0x1bb710){const _0x41610b=a104_0x522eaa;try{const _0xf4fd61=await getEnterpriseKnowledgeBase(_0x2ab78d[_0x41610b(0xc8)],_0x1bb710);return assertCompanyKnowledgeBase(_0xf4fd61,_0x2ab78d[_0x41610b(0xd1)],_0x1bb710),_0xf4fd61;}catch(_0x3c8ad0){if(getPlatformErrorCode(_0x3c8ad0)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x3c8ad0;}}export async function requireKb(_0x35ee16,_0x1246d8){const _0xe314b5=a104_0x522eaa,_0x5db205=await getKbOrNull(_0x35ee16,_0x1246d8);if(!_0x5db205)throw kbError(_0xe314b5(0xd3),_0xe314b5(0xa7)+_0x1246d8,'Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.');return _0x5db205;}export function assertExpectedKbVersion(_0xfdc637,_0x30d7f5){const _0x5e1e60=a104_0x522eaa;if(_0x30d7f5===undefined||_0xfdc637[_0x5e1e60(0xbf)]===_0x30d7f5)return;throw kbError(_0x5e1e60(0xad),_0x5e1e60(0xbd)+_0xfdc637['id']+_0x5e1e60(0x90)+_0x30d7f5+_0x5e1e60(0xb2)+_0xfdc637[_0x5e1e60(0xbf)]+'.',_0x5e1e60(0xb0));}
@@ -0,0 +1,2 @@
1
+ import type { CommandDefinition } from "../../framework/types.js";
2
+ export declare const kbUpdate: CommandDefinition;
@@ -1 +1 @@
1
- const a105_0x32a7be=a105_0x3725;function a105_0x3ace(){const _0xb8980b=['push','expected-version','--title\x20cannot\x20be\x20empty.','version','title','before','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','5530938oThEfL','kb_expected_version_invalid','91DWdaOf','5fQAsgc','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','file','New\x20knowledge-base\x20title','1381750tBxADR','replacement','kb_update_empty','/admin/knowledge-base/update','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','\x20--format\x20compress','20917941FPHdXl','beforeRecord','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','cookie','flag','kb_title_invalid','kb_update_outcome_unknown','update','isSafeInteger','8599IoUKXV','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','26gXLjhA','kb_verification_failed','2140636Rxxnpn','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','appCode','--file\x20cannot\x20be\x20empty.','content','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','patch','2403969ScWoWH','9rZFiGu','contentHash','company','POST','587768LWKAUj','expectedVersion','Company\x20knowledge-base\x20id','rabetbase\x20kb\x20detail\x20--id\x20','Company\x20knowledge\x20base\x20','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','trim'];a105_0x3ace=function(){return _0xb8980b;};return a105_0x3ace();}(function(_0x14ebc5,_0x1b8d78){const _0x95f6f0=a105_0x3725,_0x449ed6=_0x14ebc5();while(!![]){try{const _0x2f0269=-parseInt(_0x95f6f0(0x108))/0x1*(-parseInt(_0x95f6f0(0x10a))/0x2)+parseInt(_0x95f6f0(0x114))/0x3+-parseInt(_0x95f6f0(0x10c))/0x4*(parseInt(_0x95f6f0(0x12a))/0x5)+parseInt(_0x95f6f0(0x127))/0x6+-parseInt(_0x95f6f0(0x129))/0x7*(-parseInt(_0x95f6f0(0x119))/0x8)+-parseInt(_0x95f6f0(0x115))/0x9*(-parseInt(_0x95f6f0(0x12e))/0xa)+-parseInt(_0x95f6f0(0x134))/0xb;if(_0x2f0269===_0x1b8d78)break;else _0x449ed6['push'](_0x449ed6['shift']());}catch(_0x1fe02d){_0x449ed6['push'](_0x449ed6['shift']());}}}(a105_0x3ace,0x77fb1));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,requireKbExplicitYes,verifyKbMutationReadback}from'../../commands/kb/shared.js';const UPDATE_PATH=a105_0x32a7be(0x131),NON_ATOMIC_WARNING=a105_0x32a7be(0x132);function a105_0x3725(_0x3017b8,_0x5845ba){_0x3017b8=_0x3017b8-0x102;const _0x3acef7=a105_0x3ace();let _0x3725cf=_0x3acef7[_0x3017b8];return _0x3725cf;}function readUpdatePatch(_0x2797fc){const _0x1a63df=a105_0x32a7be,_0x7dd45b=readKbId(_0x2797fc),_0x4cb6fc=_0x2797fc[_0x1a63df(0x103)](_0x1a63df(0x124)),_0x316809=_0x2797fc[_0x1a63df(0x103)]('file'),_0x25c325=_0x2797fc['flag'](_0x1a63df(0x121)),_0x14a525=_0x4cb6fc===undefined?undefined:String(_0x4cb6fc)[_0x1a63df(0x11f)]();if(_0x4cb6fc!==undefined&&!_0x14a525)throw kbError(_0x1a63df(0x104),_0x1a63df(0x122));const _0x380b6a=_0x316809===undefined?undefined:String(_0x316809)[_0x1a63df(0x11f)]();if(_0x316809!==undefined&&!_0x380b6a)throw kbError('kb_file_required',_0x1a63df(0x10f));if(_0x14a525===undefined&&_0x380b6a===undefined)throw kbError(_0x1a63df(0x130),'Nothing\x20to\x20update.',_0x1a63df(0x136));let _0x2940ff;if(_0x25c325!==undefined){_0x2940ff=Number(_0x25c325);if(!Number[_0x1a63df(0x107)](_0x2940ff)||_0x2940ff<0x0)throw kbError(_0x1a63df(0x128),_0x1a63df(0x112));}return{'id':_0x7dd45b,'title':_0x14a525,'file':_0x380b6a,'expectedVersion':_0x2940ff};}async function prepareUpdate(_0x3932cf){const _0x322b9b=a105_0x32a7be,_0x1940d2=readUpdatePatch(_0x3932cf),_0x10725b=await requireKb(_0x3932cf,_0x1940d2['id']);assertExpectedKbVersion(_0x10725b,_0x1940d2['expectedVersion']);const _0x2d0ac6=_0x1940d2['file']?await readKbFile(_0x1940d2[_0x322b9b(0x12c)]):undefined,_0x2b8eb3=projectKb(_0x10725b),_0x5ddb94=projectKb({..._0x10725b,..._0x1940d2[_0x322b9b(0x124)]!==undefined?{'title':_0x1940d2['title']}:{},..._0x2d0ac6?{'content':_0x2d0ac6['content']}:{}});return{'patch':_0x1940d2,'beforeRecord':_0x10725b,'before':_0x2b8eb3,'planned':_0x5ddb94,'replacement':_0x2d0ac6};}export const kbUpdate={'service':'kb','command':a105_0x32a7be(0x106),'description':a105_0x32a7be(0x109),'risk':'high-risk-write','requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':'number','required':!![],'description':a105_0x32a7be(0x11b)},{'name':a105_0x32a7be(0x124),'type':'string','required':![],'description':a105_0x32a7be(0x12d)},{'name':a105_0x32a7be(0x12c),'type':'string','required':![],'description':a105_0x32a7be(0x126)},{'name':a105_0x32a7be(0x121),'type':'number','required':![],'description':a105_0x32a7be(0x12b)}],async 'validate'(_0x3c41cd){readUpdatePatch(_0x3c41cd),requireKbExplicitYes(_0x3c41cd);},async 'dryRun'(_0x4a8ebc){const _0x26cf77=a105_0x32a7be,_0x1f895c=await prepareUpdate(_0x4a8ebc),_0xcb14bf=_0x1f895c[_0x26cf77(0x113)][_0x26cf77(0x11a)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x26cf77(0x106),'selector':{'id':_0x1f895c[_0x26cf77(0x125)]['id'],'scope':_0x26cf77(0x117),'appCode':_0x1f895c[_0x26cf77(0x125)][_0x26cf77(0x10e)]},'before':_0x1f895c[_0x26cf77(0x125)],'after':_0x1f895c['planned'],'dryRun':!![],'backend':{'method':_0x26cf77(0x118),'path':UPDATE_PATH},'warnings':_0xcb14bf,'verification':{'expectedVersion':_0x1f895c[_0x26cf77(0x113)][_0x26cf77(0x11a)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x1f895c['before']['snapshotHash'],'lookupCommand':'rabetbase\x20kb\x20detail\x20--id\x20'+_0x1f895c[_0x26cf77(0x125)]['id']+'\x20--format\x20compress'}},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x3e6854){const _0x5a5913=a105_0x32a7be;requireKbExplicitYes(_0x3e6854);const _0x145a19=await prepareUpdate(_0x3e6854),_0x4e4e61={'id':_0x145a19['patch']['id'],..._0x145a19[_0x5a5913(0x113)][_0x5a5913(0x124)]!==undefined?{'title':_0x145a19[_0x5a5913(0x113)]['title']}:{},..._0x145a19['replacement']?{'content':_0x145a19[_0x5a5913(0x12f)]['content']}:{}};let _0x467a9d=![];try{const _0x57bfdb=await updateEnterpriseKnowledgeBase(_0x3e6854[_0x5a5913(0x102)],_0x4e4e61);assertCompanyKnowledgeBase(_0x57bfdb,_0x3e6854[_0x5a5913(0x10e)],_0x145a19[_0x5a5913(0x113)]['id']);}catch(_0x27778e){if(!isPlatformTransportFailure(_0x27778e))throw _0x27778e;_0x467a9d=!![];}const _0x2abcdd=await verifyKbMutationReadback(_0x5a5913(0x106),_0x467a9d,()=>requireKb(_0x3e6854,_0x145a19[_0x5a5913(0x113)]['id'])),_0x247425=projectKb(_0x2abcdd),_0x16bcdc=_0x145a19[_0x5a5913(0x113)][_0x5a5913(0x124)]===undefined||_0x2abcdd[_0x5a5913(0x124)]===_0x145a19[_0x5a5913(0x113)]['title'],_0x1be268=!_0x145a19[_0x5a5913(0x12f)]||inspectKbContent(_0x2abcdd[_0x5a5913(0x110)])[_0x5a5913(0x116)]===_0x145a19[_0x5a5913(0x12f)]['contentHash'],_0x31218a=!_0x145a19[_0x5a5913(0x12f)]||_0x2abcdd[_0x5a5913(0x123)]>_0x145a19[_0x5a5913(0x135)][_0x5a5913(0x123)],_0x1568b0=!_0x467a9d||_0x145a19['replacement']!==undefined||_0x145a19[_0x5a5913(0x113)][_0x5a5913(0x124)]===undefined||_0x145a19[_0x5a5913(0x135)][_0x5a5913(0x124)]!==_0x145a19[_0x5a5913(0x113)][_0x5a5913(0x124)];if(!_0x16bcdc||!_0x1be268||!_0x31218a||!_0x1568b0)throw kbError(_0x467a9d?_0x5a5913(0x105):_0x5a5913(0x10b),_0x5a5913(0x11d)+_0x145a19[_0x5a5913(0x113)]['id']+_0x5a5913(0x10d),'Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20'+_0x145a19[_0x5a5913(0x113)]['id']+_0x5a5913(0x111));const _0x392377=[];return _0x145a19[_0x5a5913(0x113)][_0x5a5913(0x11a)]!==undefined&&_0x392377[_0x5a5913(0x120)](NON_ATOMIC_WARNING),_0x467a9d&&_0x392377['push'](_0x5a5913(0x11e)),{'ok':!![],'data':{'operation':_0x5a5913(0x106),'selector':{'id':_0x247425['id'],'scope':_0x5a5913(0x117),'appCode':_0x247425[_0x5a5913(0x10e)]},'before':_0x145a19[_0x5a5913(0x125)],'after':_0x247425,'dryRun':![],'backend':{'method':_0x5a5913(0x118),'path':UPDATE_PATH},'warnings':_0x392377,'verification':{'status':'verified','recoveredAfterUnknownResponse':_0x467a9d,'expectedVersion':_0x145a19[_0x5a5913(0x113)][_0x5a5913(0x11a)]??null,'atomicCompareAndSet':![],'lookupCommand':_0x5a5913(0x11c)+_0x247425['id']+_0x5a5913(0x133)}},'message':'Updated\x20company\x20knowledge\x20base\x20'+_0x247425['id']};}};
1
+ const a105_0x4460e=a105_0x2ebc;(function(_0x34dccc,_0x512f3a){const _0x587ab3=a105_0x2ebc,_0x3d4899=_0x34dccc();while(!![]){try{const _0xbba468=parseInt(_0x587ab3(0x16d))/0x1+parseInt(_0x587ab3(0x149))/0x2+parseInt(_0x587ab3(0x165))/0x3*(-parseInt(_0x587ab3(0x174))/0x4)+parseInt(_0x587ab3(0x141))/0x5*(parseInt(_0x587ab3(0x159))/0x6)+parseInt(_0x587ab3(0x14e))/0x7+parseInt(_0x587ab3(0x15c))/0x8*(-parseInt(_0x587ab3(0x14a))/0x9)+parseInt(_0x587ab3(0x16e))/0xa*(-parseInt(_0x587ab3(0x14d))/0xb);if(_0xbba468===_0x512f3a)break;else _0x3d4899['push'](_0x3d4899['shift']());}catch(_0x31604d){_0x3d4899['push'](_0x3d4899['shift']());}}}(a105_0x4c4f,0x2ebf2));function a105_0x4c4f(){const _0x126e31=['snapshotHash','84TNfVdD','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','planned','\x20--format\x20compress','kb_verification_failed','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','beforeRecord','kb_update_outcome_unknown','815ZOcyKq','New\x20knowledge-base\x20title','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','expected-version','cookie','version','title','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','114214KdZKNf','192429eYrsuu','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','update','121UByLzS','2163791UXvrZl','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','before','Nothing\x20to\x20update.','--title\x20cannot\x20be\x20empty.','kb_expected_version_invalid','POST','expectedVersion','rabetbase\x20kb\x20detail\x20--id\x20','Company\x20knowledge-base\x20id','flag','2676NQuOad','number','verified','88gLyOnR','file','trim','kb_title_invalid','patch','kb_update_empty','string','appCode','company','27723VkZuTZ','high-risk-write','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','Company\x20knowledge\x20base\x20','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','--file\x20cannot\x20be\x20empty.','355014meoePH','157460zXYWwJ','replacement','contentHash','push','content'];a105_0x4c4f=function(){return _0x126e31;};return a105_0x4c4f();}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,requireKbExplicitYes,verifyKbMutationReadback}from'../../commands/kb/shared.js';const UPDATE_PATH='/admin/knowledge-base/update',NON_ATOMIC_WARNING=a105_0x4460e(0x13e);function readUpdatePatch(_0x29eb2b){const _0x2de200=a105_0x4460e,_0x4119de=readKbId(_0x29eb2b),_0x4cd2c3=_0x29eb2b['flag'](_0x2de200(0x147)),_0x30890d=_0x29eb2b[_0x2de200(0x158)](_0x2de200(0x15d)),_0x13133a=_0x29eb2b['flag'](_0x2de200(0x144)),_0x4fa5d6=_0x4cd2c3===undefined?undefined:String(_0x4cd2c3)[_0x2de200(0x15e)]();if(_0x4cd2c3!==undefined&&!_0x4fa5d6)throw kbError(_0x2de200(0x15f),_0x2de200(0x152));const _0x1ef662=_0x30890d===undefined?undefined:String(_0x30890d)[_0x2de200(0x15e)]();if(_0x30890d!==undefined&&!_0x1ef662)throw kbError('kb_file_required',_0x2de200(0x16c));if(_0x4fa5d6===undefined&&_0x1ef662===undefined)throw kbError(_0x2de200(0x161),_0x2de200(0x151),_0x2de200(0x16b));let _0x4c9d22;if(_0x13133a!==undefined){_0x4c9d22=Number(_0x13133a);if(!Number['isSafeInteger'](_0x4c9d22)||_0x4c9d22<0x0)throw kbError(_0x2de200(0x153),_0x2de200(0x167));}return{'id':_0x4119de,'title':_0x4fa5d6,'file':_0x1ef662,'expectedVersion':_0x4c9d22};}function a105_0x2ebc(_0x5ce82c,_0x55edeb){_0x5ce82c=_0x5ce82c-0x13c;const _0x4c4fa8=a105_0x4c4f();let _0x2ebcad=_0x4c4fa8[_0x5ce82c];return _0x2ebcad;}async function prepareUpdate(_0x53576e){const _0x4eb4bc=a105_0x4460e,_0x1a8191=readUpdatePatch(_0x53576e),_0x57c9ea=await requireKb(_0x53576e,_0x1a8191['id']);assertExpectedKbVersion(_0x57c9ea,_0x1a8191['expectedVersion']);const _0xecf56b=_0x1a8191['file']?await readKbFile(_0x1a8191[_0x4eb4bc(0x15d)]):undefined,_0x4bb49e=projectKb(_0x57c9ea),_0x16e7a9=projectKb({..._0x57c9ea,..._0x1a8191[_0x4eb4bc(0x147)]!==undefined?{'title':_0x1a8191[_0x4eb4bc(0x147)]}:{},..._0xecf56b?{'content':_0xecf56b[_0x4eb4bc(0x172)]}:{}});return{'patch':_0x1a8191,'beforeRecord':_0x57c9ea,'before':_0x4bb49e,'planned':_0x16e7a9,'replacement':_0xecf56b};}export const kbUpdate={'service':'kb','command':a105_0x4460e(0x14c),'description':a105_0x4460e(0x148),'risk':a105_0x4460e(0x166),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':a105_0x4460e(0x15a),'required':!![],'description':a105_0x4460e(0x157)},{'name':a105_0x4460e(0x147),'type':a105_0x4460e(0x162),'required':![],'description':a105_0x4460e(0x142)},{'name':a105_0x4460e(0x15d),'type':a105_0x4460e(0x162),'required':![],'description':a105_0x4460e(0x16a)},{'name':a105_0x4460e(0x144),'type':a105_0x4460e(0x15a),'required':![],'description':a105_0x4460e(0x14b)}],async 'validate'(_0x14474d){readUpdatePatch(_0x14474d),requireKbExplicitYes(_0x14474d);},async 'dryRun'(_0x3a8b5b){const _0x5dd10e=a105_0x4460e,_0x59fc3b=await prepareUpdate(_0x3a8b5b),_0x14f0b8=_0x59fc3b[_0x5dd10e(0x160)][_0x5dd10e(0x155)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':'update','selector':{'id':_0x59fc3b[_0x5dd10e(0x150)]['id'],'scope':_0x5dd10e(0x164),'appCode':_0x59fc3b[_0x5dd10e(0x150)]['appCode']},'before':_0x59fc3b[_0x5dd10e(0x150)],'after':_0x59fc3b[_0x5dd10e(0x176)],'dryRun':!![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0x14f0b8,'verification':{'expectedVersion':_0x59fc3b[_0x5dd10e(0x160)][_0x5dd10e(0x155)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x59fc3b[_0x5dd10e(0x150)][_0x5dd10e(0x173)],'lookupCommand':_0x5dd10e(0x156)+_0x59fc3b[_0x5dd10e(0x150)]['id']+_0x5dd10e(0x13c)}},{'method':_0x5dd10e(0x154),'url':UPDATE_PATH});},async 'execute'(_0x10552e){const _0x538f5a=a105_0x4460e;requireKbExplicitYes(_0x10552e);const _0x20e901=await prepareUpdate(_0x10552e),_0x4913f8={'id':_0x20e901[_0x538f5a(0x160)]['id'],..._0x20e901[_0x538f5a(0x160)][_0x538f5a(0x147)]!==undefined?{'title':_0x20e901[_0x538f5a(0x160)]['title']}:{},..._0x20e901[_0x538f5a(0x16f)]?{'content':_0x20e901[_0x538f5a(0x16f)]['content']}:{}};let _0x2b8037=![];try{const _0x5785c7=await updateEnterpriseKnowledgeBase(_0x10552e[_0x538f5a(0x145)],_0x4913f8);assertCompanyKnowledgeBase(_0x5785c7,_0x10552e['appCode'],_0x20e901[_0x538f5a(0x160)]['id']);}catch(_0x2c4027){if(!isPlatformTransportFailure(_0x2c4027))throw _0x2c4027;_0x2b8037=!![];}const _0x305cc8=await verifyKbMutationReadback('update',_0x2b8037,()=>requireKb(_0x10552e,_0x20e901[_0x538f5a(0x160)]['id'])),_0x381e6c=projectKb(_0x305cc8),_0x59b391=_0x20e901[_0x538f5a(0x160)]['title']===undefined||_0x305cc8['title']===_0x20e901['patch']['title'],_0x4d0d20=!_0x20e901['replacement']||inspectKbContent(_0x305cc8[_0x538f5a(0x172)])[_0x538f5a(0x170)]===_0x20e901[_0x538f5a(0x16f)][_0x538f5a(0x170)],_0x12dd24=!_0x20e901[_0x538f5a(0x16f)]||_0x305cc8[_0x538f5a(0x146)]>_0x20e901[_0x538f5a(0x13f)][_0x538f5a(0x146)],_0x5b7d55=!_0x2b8037||_0x20e901[_0x538f5a(0x16f)]!==undefined||_0x20e901[_0x538f5a(0x160)][_0x538f5a(0x147)]===undefined||_0x20e901[_0x538f5a(0x13f)][_0x538f5a(0x147)]!==_0x20e901[_0x538f5a(0x160)][_0x538f5a(0x147)];if(!_0x59b391||!_0x4d0d20||!_0x12dd24||!_0x5b7d55)throw kbError(_0x2b8037?_0x538f5a(0x140):_0x538f5a(0x13d),_0x538f5a(0x169)+_0x20e901[_0x538f5a(0x160)]['id']+_0x538f5a(0x14f),_0x538f5a(0x168)+_0x20e901[_0x538f5a(0x160)]['id']+_0x538f5a(0x175));const _0x4fa528=[];return _0x20e901[_0x538f5a(0x160)]['expectedVersion']!==undefined&&_0x4fa528[_0x538f5a(0x171)](NON_ATOMIC_WARNING),_0x2b8037&&_0x4fa528['push'](_0x538f5a(0x143)),{'ok':!![],'data':{'operation':_0x538f5a(0x14c),'selector':{'id':_0x381e6c['id'],'scope':_0x538f5a(0x164),'appCode':_0x381e6c[_0x538f5a(0x163)]},'before':_0x20e901[_0x538f5a(0x150)],'after':_0x381e6c,'dryRun':![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0x4fa528,'verification':{'status':_0x538f5a(0x15b),'recoveredAfterUnknownResponse':_0x2b8037,'expectedVersion':_0x20e901[_0x538f5a(0x160)][_0x538f5a(0x155)]??null,'atomicCompareAndSet':![],'lookupCommand':'rabetbase\x20kb\x20detail\x20--id\x20'+_0x381e6c['id']+_0x538f5a(0x13c)}},'message':'Updated\x20company\x20knowledge\x20base\x20'+_0x381e6c['id']};}};
@@ -0,0 +1,5 @@
1
+ /**
2
+ * logs —— 查看/清空 CLI 日志(声明式)
3
+ */
4
+ import type { CommandDefinition } from "../../framework/types.js";
5
+ export declare const logsDefinitions: CommandDefinition[];
@@ -1 +1 @@
1
- function a106_0x5d94(_0x465a5d,_0x15fbf6){_0x465a5d=_0x465a5d-0x1a4;const _0x5ba1ad=a106_0x5ba1();let _0x5d9442=_0x5ba1ad[_0x465a5d];return _0x5d9442;}const a106_0x56460d=a106_0x5d94;(function(_0x3b8c35,_0x1c6b66){const _0x23e85d=a106_0x5d94,_0x2cbe9b=_0x3b8c35();while(!![]){try{const _0x125e8e=-parseInt(_0x23e85d(0x1b1))/0x1*(parseInt(_0x23e85d(0x1ad))/0x2)+-parseInt(_0x23e85d(0x1b0))/0x3*(-parseInt(_0x23e85d(0x1a4))/0x4)+parseInt(_0x23e85d(0x1c1))/0x5+parseInt(_0x23e85d(0x1b8))/0x6*(parseInt(_0x23e85d(0x1c6))/0x7)+-parseInt(_0x23e85d(0x1aa))/0x8*(parseInt(_0x23e85d(0x1bc))/0x9)+parseInt(_0x23e85d(0x1c5))/0xa+-parseInt(_0x23e85d(0x1a9))/0xb;if(_0x125e8e===_0x1c6b66)break;else _0x2cbe9b['push'](_0x2cbe9b['shift']());}catch(_0x2fff71){_0x2cbe9b['push'](_0x2cbe9b['shift']());}}}(a106_0x5ba1,0xa2397));function a106_0x5ba1(){const _0x367c00=['9997296vkIOPA','logs','\x20\x20\x20Details:\x20','12422RdSphi','\x20\x20\x20Time:\x20','details','15dbGuHV','61ZenjBe','clear','en-US','*\x20Logs\x20cleared','toLocaleString','timestamp','show','12QVrpuZ','clearLogs','*\x20Lovrabet\x20CLI\x20logs:\x0a','length','9JTctno','level','\x20\x20\x20Duration:\x20','warn','write','5860450sSXfJh','*\x20No\x20logs\x20found','log','View\x20command\x20history\x20logs','12293870YsiWfO','1196097nfZZKW','708252bptELm','Clear\x20command\x20history\x20logs','duration','success','message','14690830BwMjND'];a106_0x5ba1=function(){return _0x367c00;};return a106_0x5ba1();}import{logger}from'../../utils/logger.js';function printLogs(_0x39d56e){const _0x1223ef=a106_0x5d94;if(_0x39d56e[_0x1223ef(0x1bb)]===0x0){console['log'](_0x1223ef(0x1c2));return;}console['log'](_0x1223ef(0x1ba)),_0x39d56e['forEach']((_0x93b44a,_0x582ec8)=>{const _0x305da3=_0x1223ef,_0x39aa48=new Date(_0x93b44a[_0x305da3(0x1b6)])[_0x305da3(0x1b5)](_0x305da3(0x1b3)),_0x3f49f8=_0x93b44a[_0x305da3(0x1bd)]===_0x305da3(0x1a7)?'√':_0x93b44a[_0x305da3(0x1bd)]==='error'?'×':_0x93b44a[_0x305da3(0x1bd)]===_0x305da3(0x1bf)?'!':'i';console['log'](_0x582ec8+0x1+'.\x20'+_0x3f49f8+'\x20['+_0x93b44a['command']+']\x20'+_0x93b44a[_0x305da3(0x1a8)]),console[_0x305da3(0x1c3)](_0x305da3(0x1ae)+_0x39aa48),_0x93b44a[_0x305da3(0x1a6)]&&console[_0x305da3(0x1c3)](_0x305da3(0x1be)+_0x93b44a[_0x305da3(0x1a6)]+'ms'),_0x93b44a[_0x305da3(0x1af)]&&Object['keys'](_0x93b44a['details'])[_0x305da3(0x1bb)]>0x0&&console[_0x305da3(0x1c3)](_0x305da3(0x1ac)+JSON['stringify'](_0x93b44a['details'],null,0x2)),console['log']('');});}export const logsDefinitions=[{'service':a106_0x56460d(0x1ab),'command':a106_0x56460d(0x1b7),'description':a106_0x56460d(0x1c4),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x2eb16d){return printLogs(logger['readLogs']()),{'ok':!![]};}},{'service':a106_0x56460d(0x1ab),'command':a106_0x56460d(0x1b2),'description':a106_0x56460d(0x1a5),'risk':a106_0x56460d(0x1c0),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4210bf){const _0x26d487=a106_0x56460d;return logger[_0x26d487(0x1b9)](),console[_0x26d487(0x1c3)](_0x26d487(0x1b4)),{'ok':!![]};}}];
1
+ function a106_0x55ed(_0x2d17d1,_0x2e6fa3){_0x2d17d1=_0x2d17d1-0x1cf;const _0x4147b9=a106_0x4147();let _0x55eda7=_0x4147b9[_0x2d17d1];return _0x55eda7;}const a106_0x3508f6=a106_0x55ed;function a106_0x4147(){const _0x39d4b5=['729086ZFDlTy','readLogs','toLocaleString','696ZhCaJI','timestamp','level','9387CBmPMF','2007019ijibuF','clear','*\x20No\x20logs\x20found','\x20\x20\x20Details:\x20','\x20\x20\x20Time:\x20','log','en-US','details','408XNNMMh','length','1TajwQE','logs','234356DKmxas','warn','850422EdmcYZ','4902850XZDyPj','success','read','\x20\x20\x20Duration:\x20','duration','keys','stringify','3110PlLqIV','forEach','error'];a106_0x4147=function(){return _0x39d4b5;};return a106_0x4147();}(function(_0x187ae7,_0x418cdd){const _0x26f017=a106_0x55ed,_0x294934=_0x187ae7();while(!![]){try{const _0x5b6cfd=parseInt(_0x26f017(0x1d7))/0x1*(-parseInt(_0x26f017(0x1e6))/0x2)+parseInt(_0x26f017(0x1db))/0x3+-parseInt(_0x26f017(0x1d9))/0x4+parseInt(_0x26f017(0x1e3))/0x5*(parseInt(_0x26f017(0x1e9))/0x6)+-parseInt(_0x26f017(0x1ed))/0x7+parseInt(_0x26f017(0x1d5))/0x8*(parseInt(_0x26f017(0x1ec))/0x9)+parseInt(_0x26f017(0x1dc))/0xa;if(_0x5b6cfd===_0x418cdd)break;else _0x294934['push'](_0x294934['shift']());}catch(_0x472116){_0x294934['push'](_0x294934['shift']());}}}(a106_0x4147,0x2e347));import{logger}from'../../utils/logger.js';function printLogs(_0x141b93){const _0x58d818=a106_0x55ed;if(_0x141b93['length']===0x0){console['log'](_0x58d818(0x1cf));return;}console[_0x58d818(0x1d2)]('*\x20Lovrabet\x20CLI\x20logs:\x0a'),_0x141b93[_0x58d818(0x1e4)]((_0x2bbfc2,_0x55be58)=>{const _0x13c891=_0x58d818,_0x22c2ca=new Date(_0x2bbfc2[_0x13c891(0x1ea)])[_0x13c891(0x1e8)](_0x13c891(0x1d3)),_0x1787ad=_0x2bbfc2[_0x13c891(0x1eb)]===_0x13c891(0x1dd)?'√':_0x2bbfc2[_0x13c891(0x1eb)]===_0x13c891(0x1e5)?'×':_0x2bbfc2[_0x13c891(0x1eb)]===_0x13c891(0x1da)?'!':'i';console[_0x13c891(0x1d2)](_0x55be58+0x1+'.\x20'+_0x1787ad+'\x20['+_0x2bbfc2['command']+']\x20'+_0x2bbfc2['message']),console[_0x13c891(0x1d2)](_0x13c891(0x1d1)+_0x22c2ca),_0x2bbfc2[_0x13c891(0x1e0)]&&console[_0x13c891(0x1d2)](_0x13c891(0x1df)+_0x2bbfc2[_0x13c891(0x1e0)]+'ms'),_0x2bbfc2[_0x13c891(0x1d4)]&&Object[_0x13c891(0x1e1)](_0x2bbfc2[_0x13c891(0x1d4)])[_0x13c891(0x1d6)]>0x0&&console[_0x13c891(0x1d2)](_0x13c891(0x1d0)+JSON[_0x13c891(0x1e2)](_0x2bbfc2[_0x13c891(0x1d4)],null,0x2)),console[_0x13c891(0x1d2)]('');});}export const logsDefinitions=[{'service':a106_0x3508f6(0x1d8),'command':'show','description':'View\x20command\x20history\x20logs','risk':a106_0x3508f6(0x1de),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x36dd1b){const _0xf37d45=a106_0x3508f6;return printLogs(logger[_0xf37d45(0x1e7)]()),{'ok':!![]};}},{'service':a106_0x3508f6(0x1d8),'command':a106_0x3508f6(0x1ee),'description':'Clear\x20command\x20history\x20logs','risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x125f2c){const _0x2fd932=a106_0x3508f6;return logger['clearLogs'](),console[_0x2fd932(0x1d2)]('*\x20Logs\x20cleared'),{'ok':!![]};}}];
@@ -0,0 +1,2 @@
1
+ import type { CommandDefinition } from "../../framework/types.js";
2
+ export declare const menuAssetUpdate: CommandDefinition;
@@ -1 +1 @@
1
- const a107_0x127c55=a107_0x5bec;(function(_0xda4147,_0x5bcb12){const _0x5e8200=a107_0x5bec,_0x5a4402=_0xda4147();while(!![]){try{const _0x51a21d=parseInt(_0x5e8200(0x183))/0x1*(-parseInt(_0x5e8200(0x1a9))/0x2)+-parseInt(_0x5e8200(0x19d))/0x3+parseInt(_0x5e8200(0x1b5))/0x4+parseInt(_0x5e8200(0x1a4))/0x5+-parseInt(_0x5e8200(0x19f))/0x6*(-parseInt(_0x5e8200(0x182))/0x7)+parseInt(_0x5e8200(0x18c))/0x8*(-parseInt(_0x5e8200(0x18e))/0x9)+-parseInt(_0x5e8200(0x198))/0xa*(-parseInt(_0x5e8200(0x16a))/0xb);if(_0x51a21d===_0x5bcb12)break;else _0x5a4402['push'](_0x5a4402['shift']());}catch(_0x27f0fe){_0x5a4402['push'](_0x5a4402['shift']());}}}(a107_0x513c,0x2b9e1));import a107_0x1772e9 from'chalk';import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,isInteractive,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';function a107_0x513c(){const _0x26b117=['191424NautnO','yes','trim','filter','Menu\x20asset\x20update\x20completed:\x20','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','params','yellow','/smartapi/menu/update','Fetching\x20online\x20menu\x20list...','message','selectedAppName','length','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','110zfLjlY','\x20\x20Found\x20','\x20\x20Update\x20','validation','asset-update','isSafeInteger','replace','\x20menu(s)\x20failed','split','load-mode','failed','cyan','skipped','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','\x20updated,\x20','import','mode','updated','appcode','string','diffs','appCode','map','746599cOCcrt','4AWQqVa','bool','POST','\x20menu(s)...','Failed\x20to\x20fetch\x20online\x20menu\x20list','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','str','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','8zXCogu','label','2970162tZJnNh','paths','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','Menu\x20asset\x20update\x20failed','high-risk-write','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','jsUrl','isArray','\x20updated.','207430fXXuvw','menu-ids','Updating\x20','flag','patch','483663vNgALz','force','18FRVJue','Updated\x20','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','766255SOktRT','✓\x20Menu\x20asset\x20update\x20completed:\x20','menu','some','boolean','29306OACZMP','cssUrl','cookie','\x20menu(s)\x20updated','stringify','Menu\x20asset\x20update\x20skipped','fetch','\x20failed.','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','rawFlags','!\x20No\x20menus\x20with\x20existing\x20resources\x20found'];a107_0x513c=function(){return _0x26b117;};return a107_0x513c();}import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':a107_0x127c55(0x1a6),'command':a107_0x127c55(0x16e),'description':a107_0x127c55(0x1a1),'risk':a107_0x127c55(0x193),'flags':[{'name':a107_0x127c55(0x1bb),'type':a107_0x127c55(0x17e),'description':'Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20'+a107_0x127c55(0x18b)},{'name':a107_0x127c55(0x17b),'type':a107_0x127c55(0x17e),'description':a107_0x127c55(0x190)+a107_0x127c55(0x18a),'enum':[a107_0x127c55(0x170),'patch'],'default':a107_0x127c55(0x19c)},{'name':'force','type':'boolean','description':a107_0x127c55(0x169)},{'name':a107_0x127c55(0x199),'type':a107_0x127c55(0x17e),'description':a107_0x127c55(0x188)},{'name':a107_0x127c55(0x18f),'type':a107_0x127c55(0x17e),'description':a107_0x127c55(0x191)},{'name':'all','type':a107_0x127c55(0x1a8),'description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':a107_0x127c55(0x173),'type':'string','enum':[a107_0x127c55(0x17a),'script',a107_0x127c55(0x1af)],'description':a107_0x127c55(0x177)}],async 'dryRun'(_0x229109){const _0xdb4002=a107_0x127c55;ensureRunnableContext(_0x229109['rawFlags'],_0x229109[_0xdb4002(0x167)]);const _0x213987=await runMenuUpdateCore(_0x229109[_0xdb4002(0x180)],_0x229109[_0xdb4002(0x1ab)],_0x229109[_0xdb4002(0x189)](_0xdb4002(0x1bb)),{'mode':parseMode(_0x229109[_0xdb4002(0x189)]('mode')),'dryRun':!![],'force':_0x229109[_0xdb4002(0x184)](_0xdb4002(0x19e)),'selection':parseSelection(_0x229109),'loadScriptMode':parseLoadScriptMode(_0x229109[_0xdb4002(0x189)](_0xdb4002(0x173)))});return{'method':_0xdb4002(0x185),'url':_0xdb4002(0x1bd),'body':_0x213987,'description':_0x213987['skipped']?_0xdb4002(0x1a3):'Would\x20update\x20'+(_0x213987[_0xdb4002(0x17f)]?.[_0xdb4002(0x168)]??0x0)+'\x20menu\x20resource\x20set(s).'};},async 'execute'(_0x443b58){const _0x455908=a107_0x127c55;ensureRunnableContext(_0x443b58[_0x455908(0x1b3)],_0x443b58[_0x455908(0x167)]);const _0x404fbc=_0x443b58[_0x455908(0x19b)](_0x455908(0x1b6)),_0x3f6dd9=_0x443b58['str'](_0x455908(0x1bb)),_0x306474=parseMode(_0x443b58[_0x455908(0x189)](_0x455908(0x17b))),_0x458838=_0x443b58['bool'](_0x455908(0x19e)),_0x1258ef=parseLoadScriptMode(_0x443b58[_0x455908(0x189)](_0x455908(0x173))),_0x119fc1=parseParams(_0x3f6dd9),_0x58b0f8=!!(_0x119fc1[_0x455908(0x195)]||_0x119fc1['cssUrl']);if(_0x404fbc||_0x58b0f8&&!isInteractive()){const _0xcd7b31=await runMenuUpdateCore(_0x443b58[_0x455908(0x180)],_0x443b58[_0x455908(0x1ab)],_0x3f6dd9,{'mode':_0x306474,'force':_0x458838,'selection':parseSelection(_0x443b58),'loadScriptMode':_0x1258ef});return _0xcd7b31['skipped']?writeCliSideChannelLine(_0x455908(0x1b4)):(writeCliSideChannelLine(_0x455908(0x1a5)+_0xcd7b31[_0x455908(0x17c)]+_0x455908(0x1ac)),_0xcd7b31[_0x455908(0x174)]>0x0&&writeCliSideChannelLine('!\x20'+_0xcd7b31[_0x455908(0x174)]+_0x455908(0x171))),{'ok':_0xcd7b31[_0x455908(0x174)]===0x0,'data':_0xcd7b31,'message':_0xcd7b31[_0x455908(0x176)]?_0x455908(0x1ae):_0x455908(0x1b9)+_0xcd7b31[_0x455908(0x17c)]+_0x455908(0x179)+_0xcd7b31['failed']+_0x455908(0x1b0)};}requireInteractive();const _0x5202b9=startSpinner(_0x455908(0x1be));let _0x1fef31;try{_0x1fef31=await fetchOnlineMenuList(_0x443b58[_0x455908(0x180)],_0x443b58[_0x455908(0x1ab)]),stopSpinner(_0x5202b9,'Online\x20menu\x20list\x20fetched',!![]);}catch(_0x4d982b){stopSpinner(_0x5202b9,_0x455908(0x187),![]);throw CliErrors['validation'](_0x4d982b instanceof Error?_0x4d982b[_0x455908(0x1bf)]:'Failed\x20to\x20fetch\x20online\x20menu\x20list');}const _0x28b48e=filterMenusWithResources(_0x1fef31),_0x17ffb7=parseSelection(_0x443b58,![]),_0x35bc6b=_0x17ffb7?selectMenusForUpdate(_0x28b48e,_0x17ffb7):_0x28b48e;if(_0x35bc6b[_0x455908(0x168)]===0x0)return writeCliSideChannelLine(a107_0x1772e9[_0x455908(0x1bc)](_0x455908(0x1a2))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a107_0x1772e9[_0x455908(0x175)](_0x455908(0x16b)+_0x35bc6b[_0x455908(0x168)]+'\x20menu(s)\x20with\x20existing\x20resources')),writeCliSideChannelLine(renderUpdateSummary(_0x35bc6b[_0x455908(0x181)](_0x398f40=>_0x398f40[_0x455908(0x18d)]),[_0x119fc1[_0x455908(0x195)],_0x119fc1[_0x455908(0x1aa)]])),writeCliSideChannelLine('');let _0x269e12=_0x119fc1[_0x455908(0x195)],_0x3a9d69=_0x119fc1[_0x455908(0x1aa)];!_0x269e12&&(_0x269e12=await askJsUrl());!_0x3a9d69&&(_0x3a9d69=await askCssUrl());const _0xab2a4d=await askConfirm(_0x455908(0x16c)+_0x35bc6b[_0x455908(0x168)]+'\x20menu(s)\x20with\x20JS:\x20'+_0x269e12+'\x20and\x20CSS:\x20'+_0x3a9d69+'?');if(!_0xab2a4d)return writeCliSideChannelLine(a107_0x1772e9['gray']('\x20\x20Cancelled.')),{'ok':!![]};const _0x4ebd61=startSpinner(_0x455908(0x19a)+_0x35bc6b[_0x455908(0x168)]+_0x455908(0x186));try{const _0x127f8b=await runMenuUpdateCore(_0x443b58[_0x455908(0x180)],_0x443b58[_0x455908(0x1ab)],JSON[_0x455908(0x1ad)]({'jsUrl':_0x269e12,'cssUrl':_0x3a9d69}),{'mode':_0x306474,'force':_0x458838,'selection':{'all':![],'menuIds':_0x35bc6b[_0x455908(0x181)](_0x9bacea=>_0x9bacea['id']),'paths':[]},'loadScriptMode':_0x1258ef});return stopSpinner(_0x4ebd61,_0x455908(0x1a0)+_0x127f8b[_0x455908(0x17c)]+'\x20menu(s)',_0x127f8b[_0x455908(0x174)]===0x0),{'ok':_0x127f8b[_0x455908(0x174)]===0x0,'data':_0x127f8b,'message':_0x127f8b[_0x455908(0x174)]>0x0?_0x455908(0x1b9)+_0x127f8b[_0x455908(0x17c)]+_0x455908(0x179)+_0x127f8b['failed']+'\x20failed.':_0x455908(0x1b9)+_0x127f8b['updated']+_0x455908(0x197)};}catch(_0x4e7db1){stopSpinner(_0x4ebd61,_0x455908(0x192),![]);throw CliErrors[_0x455908(0x16d)](_0x4e7db1 instanceof Error?_0x4e7db1[_0x455908(0x1bf)]:_0x455908(0x192));}}};function ensureRunnableContext(_0x5741b3,_0x18868d){const _0x238aa1=a107_0x127c55,_0x635274=_0x5741b3[_0x238aa1(0x17d)]?String(_0x5741b3[_0x238aa1(0x17d)])[_0x238aa1(0x1b7)]():'';if(!isInProject()&&!_0x18868d&&!_0x635274)throw CliErrors[_0x238aa1(0x16d)]('menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20'+_0x238aa1(0x1b2));}function a107_0x5bec(_0x55afb0,_0xd9710){_0x55afb0=_0x55afb0-0x167;const _0x513cd2=a107_0x513c();let _0x5bec80=_0x513cd2[_0x55afb0];return _0x5bec80;}function parseMode(_0x39f0a5){const _0xd85c06=a107_0x127c55;if(!_0x39f0a5)return _0xd85c06(0x19c);if(_0x39f0a5===_0xd85c06(0x170)||_0x39f0a5===_0xd85c06(0x19c))return _0x39f0a5;throw CliErrors['validation'](_0xd85c06(0x1b1));}function parseSelection(_0x8caaac,_0x238921=!![]){const _0x2966af=a107_0x127c55,_0x6bae5b=_0x8caaac[_0x2966af(0x184)]('all'),_0x30f1ac=parseMenuIds(_0x8caaac[_0x2966af(0x189)](_0x2966af(0x199))),_0x3e0260=parseCsv(_0x8caaac[_0x2966af(0x189)](_0x2966af(0x18f))),_0x1c26b0=_0x30f1ac[_0x2966af(0x168)]>0x0||_0x3e0260[_0x2966af(0x168)]>0x0;if(_0x6bae5b&&_0x1c26b0)throw CliErrors['validation']('--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.');if(!_0x6bae5b&&!_0x1c26b0){if(!_0x238921)return undefined;throw CliErrors[_0x2966af(0x16d)](_0x2966af(0x178));}return{'all':_0x6bae5b,'menuIds':_0x30f1ac,'paths':_0x3e0260};}function parseMenuIds(_0x32f133){const _0x56000b=a107_0x127c55,_0x22b503=parseCsv(_0x32f133),_0x46c1e0=_0x22b503[_0x56000b(0x181)](Number);if(_0x46c1e0[_0x56000b(0x1a7)](_0x59473d=>!Number[_0x56000b(0x16f)](_0x59473d)||_0x59473d<=0x0))throw CliErrors[_0x56000b(0x16d)](_0x56000b(0x194));return[...new Set(_0x46c1e0)];}function parseCsv(_0x47b8a8){const _0xdd02ad=a107_0x127c55;return[...new Set(_0x47b8a8[_0xdd02ad(0x172)](',')[_0xdd02ad(0x181)](_0x4bccbc=>_0x4bccbc[_0xdd02ad(0x1b7)]())[_0xdd02ad(0x1b8)](Boolean))];}function parseLoadScriptMode(_0x510b83){const _0xf912e=a107_0x127c55;if(!_0x510b83)return undefined;if(_0x510b83===_0xf912e(0x17a)||_0x510b83==='script'||_0x510b83===_0xf912e(0x1af))return _0x510b83;throw CliErrors[_0xf912e(0x16d)](_0xf912e(0x1ba));}function parseParams(_0x7cffe5){const _0x4a7b6d=a107_0x127c55;if(!_0x7cffe5)return{};try{const _0x19a831=JSON['parse'](_0x7cffe5);if(typeof _0x19a831!=='object'||_0x19a831===null||Array[_0x4a7b6d(0x196)](_0x19a831))return{};return{'jsUrl':typeof _0x19a831[_0x4a7b6d(0x195)]===_0x4a7b6d(0x17e)?_0x19a831[_0x4a7b6d(0x195)][_0x4a7b6d(0x1b7)]():undefined,'cssUrl':typeof _0x19a831[_0x4a7b6d(0x1aa)]==='string'?_0x19a831[_0x4a7b6d(0x1aa)][_0x4a7b6d(0x1b7)]():undefined};}catch{return{};}}
1
+ function a107_0x3555(_0x113720,_0x3c82a){_0x113720=_0x113720-0x83;const _0xbcd4dd=a107_0xbcd4();let _0x35550b=_0xbcd4dd[_0x113720];return _0x35550b;}const a107_0x5b3fec=a107_0x3555;(function(_0x55da59,_0x9a1894){const _0x15f56e=a107_0x3555,_0x176397=_0x55da59();while(!![]){try{const _0x28f8bd=parseInt(_0x15f56e(0xd7))/0x1*(parseInt(_0x15f56e(0x84))/0x2)+parseInt(_0x15f56e(0xab))/0x3*(parseInt(_0x15f56e(0x8e))/0x4)+parseInt(_0x15f56e(0x95))/0x5+parseInt(_0x15f56e(0xda))/0x6+parseInt(_0x15f56e(0xc2))/0x7+-parseInt(_0x15f56e(0x94))/0x8+-parseInt(_0x15f56e(0x99))/0x9*(parseInt(_0x15f56e(0xa6))/0xa);if(_0x28f8bd===_0x9a1894)break;else _0x176397['push'](_0x176397['shift']());}catch(_0x165483){_0x176397['push'](_0x176397['shift']());}}}(a107_0xbcd4,0x95f39));import a107_0x1a5300 from'chalk';import{filterMenusWithResources,fetchOnlineMenuList}from'../../commands/menu/shared/logic.js';import{renderUpdateSummary}from'../../commands/menu/shared/compare-table.js';import{askJsUrl,askCssUrl,askConfirm,startSpinner,stopSpinner,isInteractive,requireInteractive}from'../../commands/menu/shared/inquirer.js';import{CliErrors}from'../../errors.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';function a107_0xbcd4(){const _0x5b7e04=['mode','isArray','params','\x20menu(s)\x20failed','some','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','label','\x20menu(s)\x20with\x20JS:\x20','script','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','/smartapi/menu/update','replace','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','selectedAppName','\x20updated,\x20','force','fetch','message','1332793eDyjNL','\x20menu(s)\x20with\x20existing\x20resources','\x20failed.','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','validation','map','Would\x20update\x20','\x20menu(s)','gray','str','length','POST','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','\x20menu(s)...','load-mode','boolean','Updating\x20','updated','cssUrl','\x20\x20Update\x20','skipped','147YFRpbc','jsUrl','appcode','5489268AnOtXF','stringify','trim','yes','patch','menu','Updated\x20','9896VSaJgE','menu-ids','import','\x20updated.','parse','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','flag','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','filter','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','28ssKmGF','\x20menu\x20resource\x20set(s).','Fetching\x20online\x20menu\x20list...','string','isSafeInteger','high-risk-write','6083720sTylfT','4875325ZENtsA','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','Failed\x20to\x20fetch\x20online\x20menu\x20list','cookie','45ZYMJGg','appCode','\x20menu(s)\x20updated','paths','Online\x20menu\x20list\x20fetched','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','✓\x20Menu\x20asset\x20update\x20completed:\x20','cyan','Menu\x20asset\x20update\x20completed:\x20','Menu\x20asset\x20update\x20failed','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','yellow','3841430xvIpnZ','\x20\x20Found\x20','bool','diffs','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','209007cUFjMO','Menu\x20asset\x20update\x20skipped','failed','!\x20No\x20menus\x20with\x20existing\x20resources\x20found'];a107_0xbcd4=function(){return _0x5b7e04;};return a107_0xbcd4();}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':a107_0x5b3fec(0xdf),'command':'asset-update','description':a107_0x5b3fec(0xa4),'risk':a107_0x5b3fec(0x93),'flags':[{'name':'params','type':a107_0x5b3fec(0x91),'description':a107_0x5b3fec(0x96)+a107_0x5b3fec(0xb4)},{'name':a107_0x5b3fec(0xaf),'type':'string','description':'Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20'+a107_0x5b3fec(0xbc),'enum':['replace',a107_0x5b3fec(0xde)],'default':a107_0x5b3fec(0xde)},{'name':a107_0x5b3fec(0xbf),'type':a107_0x5b3fec(0xd1),'description':a107_0x5b3fec(0xaa)},{'name':a107_0x5b3fec(0x85),'type':a107_0x5b3fec(0x91),'description':a107_0x5b3fec(0xa3)},{'name':a107_0x5b3fec(0x9c),'type':a107_0x5b3fec(0x91),'description':a107_0x5b3fec(0xc5)},{'name':'all','type':a107_0x5b3fec(0xd1),'description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':'load-mode','type':a107_0x5b3fec(0x91),'enum':['import',a107_0x5b3fec(0xb7),a107_0x5b3fec(0xc0)],'description':a107_0x5b3fec(0xb9)}],async 'dryRun'(_0x4db3ac){const _0x583716=a107_0x5b3fec;ensureRunnableContext(_0x4db3ac['rawFlags'],_0x4db3ac[_0x583716(0xbd)]);const _0x1bbbb9=await runMenuUpdateCore(_0x4db3ac[_0x583716(0x9a)],_0x4db3ac[_0x583716(0x98)],_0x4db3ac[_0x583716(0xcb)](_0x583716(0xb1)),{'mode':parseMode(_0x4db3ac[_0x583716(0xcb)](_0x583716(0xaf))),'dryRun':!![],'force':_0x4db3ac[_0x583716(0xa8)]('force'),'selection':parseSelection(_0x4db3ac),'loadScriptMode':parseLoadScriptMode(_0x4db3ac[_0x583716(0xcb)](_0x583716(0xd0)))});return{'method':_0x583716(0xcd),'url':_0x583716(0xba),'body':_0x1bbbb9,'description':_0x1bbbb9[_0x583716(0xd6)]?_0x583716(0xb8):_0x583716(0xc8)+(_0x1bbbb9[_0x583716(0xa9)]?.[_0x583716(0xcc)]??0x0)+_0x583716(0x8f)};},async 'execute'(_0x2e7228){const _0x17987c=a107_0x5b3fec;ensureRunnableContext(_0x2e7228['rawFlags'],_0x2e7228[_0x17987c(0xbd)]);const _0x4efa23=_0x2e7228[_0x17987c(0x8a)](_0x17987c(0xdd)),_0x23d676=_0x2e7228[_0x17987c(0xcb)](_0x17987c(0xb1)),_0x51e67e=parseMode(_0x2e7228[_0x17987c(0xcb)](_0x17987c(0xaf))),_0x48ad19=_0x2e7228['bool'](_0x17987c(0xbf)),_0x21c1c9=parseLoadScriptMode(_0x2e7228[_0x17987c(0xcb)](_0x17987c(0xd0))),_0x51c7e2=parseParams(_0x23d676),_0x4ef86b=!!(_0x51c7e2[_0x17987c(0xd8)]||_0x51c7e2[_0x17987c(0xd4)]);if(_0x4efa23||_0x4ef86b&&!isInteractive()){const _0x149351=await runMenuUpdateCore(_0x2e7228[_0x17987c(0x9a)],_0x2e7228['cookie'],_0x23d676,{'mode':_0x51e67e,'force':_0x48ad19,'selection':parseSelection(_0x2e7228),'loadScriptMode':_0x21c1c9});return _0x149351[_0x17987c(0xd6)]?writeCliSideChannelLine(_0x17987c(0xae)):(writeCliSideChannelLine(_0x17987c(0x9f)+_0x149351[_0x17987c(0xd3)]+_0x17987c(0x9b)),_0x149351[_0x17987c(0xad)]>0x0&&writeCliSideChannelLine('!\x20'+_0x149351[_0x17987c(0xad)]+_0x17987c(0xb2))),{'ok':_0x149351[_0x17987c(0xad)]===0x0,'data':_0x149351,'message':_0x149351[_0x17987c(0xd6)]?_0x17987c(0xac):'Menu\x20asset\x20update\x20completed:\x20'+_0x149351[_0x17987c(0xd3)]+'\x20updated,\x20'+_0x149351[_0x17987c(0xad)]+_0x17987c(0xc4)};}requireInteractive();const _0x326dc6=startSpinner(_0x17987c(0x90));let _0x5877b6;try{_0x5877b6=await fetchOnlineMenuList(_0x2e7228[_0x17987c(0x9a)],_0x2e7228['cookie']),stopSpinner(_0x326dc6,_0x17987c(0x9d),!![]);}catch(_0x1f551f){stopSpinner(_0x326dc6,_0x17987c(0x97),![]);throw CliErrors[_0x17987c(0xc6)](_0x1f551f instanceof Error?_0x1f551f[_0x17987c(0xc1)]:_0x17987c(0x97));}const _0xa20370=filterMenusWithResources(_0x5877b6),_0x581edb=parseSelection(_0x2e7228,![]),_0xb54212=_0x581edb?selectMenusForUpdate(_0xa20370,_0x581edb):_0xa20370;if(_0xb54212[_0x17987c(0xcc)]===0x0)return writeCliSideChannelLine(a107_0x1a5300[_0x17987c(0xa5)](_0x17987c(0x8b))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a107_0x1a5300[_0x17987c(0xa0)](_0x17987c(0xa7)+_0xb54212[_0x17987c(0xcc)]+_0x17987c(0xc3))),writeCliSideChannelLine(renderUpdateSummary(_0xb54212[_0x17987c(0xc7)](_0x4c28e1=>_0x4c28e1[_0x17987c(0xb5)]),[_0x51c7e2['jsUrl'],_0x51c7e2[_0x17987c(0xd4)]])),writeCliSideChannelLine('');let _0x4dba86=_0x51c7e2[_0x17987c(0xd8)],_0x414e59=_0x51c7e2[_0x17987c(0xd4)];!_0x4dba86&&(_0x4dba86=await askJsUrl());!_0x414e59&&(_0x414e59=await askCssUrl());const _0xd2bf67=await askConfirm(_0x17987c(0xd5)+_0xb54212[_0x17987c(0xcc)]+_0x17987c(0xb6)+_0x4dba86+'\x20and\x20CSS:\x20'+_0x414e59+'?');if(!_0xd2bf67)return writeCliSideChannelLine(a107_0x1a5300[_0x17987c(0xca)]('\x20\x20Cancelled.')),{'ok':!![]};const _0x35b92b=startSpinner(_0x17987c(0xd2)+_0xb54212['length']+_0x17987c(0xcf));try{const _0x45487d=await runMenuUpdateCore(_0x2e7228['appCode'],_0x2e7228[_0x17987c(0x98)],JSON[_0x17987c(0xdb)]({'jsUrl':_0x4dba86,'cssUrl':_0x414e59}),{'mode':_0x51e67e,'force':_0x48ad19,'selection':{'all':![],'menuIds':_0xb54212['map'](_0x1b22d0=>_0x1b22d0['id']),'paths':[]},'loadScriptMode':_0x21c1c9});return stopSpinner(_0x35b92b,_0x17987c(0x83)+_0x45487d[_0x17987c(0xd3)]+_0x17987c(0xc9),_0x45487d['failed']===0x0),{'ok':_0x45487d['failed']===0x0,'data':_0x45487d,'message':_0x45487d[_0x17987c(0xad)]>0x0?_0x17987c(0xa1)+_0x45487d['updated']+_0x17987c(0xbe)+_0x45487d[_0x17987c(0xad)]+_0x17987c(0xc4):_0x17987c(0xa1)+_0x45487d[_0x17987c(0xd3)]+_0x17987c(0x87)};}catch(_0x5a5acb){stopSpinner(_0x35b92b,_0x17987c(0xa2),![]);throw CliErrors[_0x17987c(0xc6)](_0x5a5acb instanceof Error?_0x5a5acb[_0x17987c(0xc1)]:'Menu\x20asset\x20update\x20failed');}}};function ensureRunnableContext(_0x219de6,_0x5c9e0c){const _0xa8e913=a107_0x5b3fec,_0x4fa4d3=_0x219de6[_0xa8e913(0xd9)]?String(_0x219de6[_0xa8e913(0xd9)])['trim']():'';if(!isInProject()&&!_0x5c9e0c&&!_0x4fa4d3)throw CliErrors[_0xa8e913(0xc6)]('menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20'+_0xa8e913(0xce));}function parseMode(_0x55ac4f){const _0x52b852=a107_0x5b3fec;if(!_0x55ac4f)return _0x52b852(0xde);if(_0x55ac4f===_0x52b852(0xbb)||_0x55ac4f===_0x52b852(0xde))return _0x55ac4f;throw CliErrors[_0x52b852(0xc6)](_0x52b852(0x8d));}function parseSelection(_0x21f6e2,_0x2ee932=!![]){const _0x57f501=a107_0x5b3fec,_0x5c60ff=_0x21f6e2[_0x57f501(0xa8)]('all'),_0x2e52fc=parseMenuIds(_0x21f6e2[_0x57f501(0xcb)](_0x57f501(0x85))),_0x248035=parseCsv(_0x21f6e2[_0x57f501(0xcb)]('paths')),_0x5f0189=_0x2e52fc[_0x57f501(0xcc)]>0x0||_0x248035[_0x57f501(0xcc)]>0x0;if(_0x5c60ff&&_0x5f0189)throw CliErrors[_0x57f501(0xc6)](_0x57f501(0x9e));if(!_0x5c60ff&&!_0x5f0189){if(!_0x2ee932)return undefined;throw CliErrors[_0x57f501(0xc6)]('menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.');}return{'all':_0x5c60ff,'menuIds':_0x2e52fc,'paths':_0x248035};}function parseMenuIds(_0x222c69){const _0x3070f6=a107_0x5b3fec,_0x1759ed=parseCsv(_0x222c69),_0x385cd9=_0x1759ed[_0x3070f6(0xc7)](Number);if(_0x385cd9[_0x3070f6(0xb3)](_0xc54288=>!Number[_0x3070f6(0x92)](_0xc54288)||_0xc54288<=0x0))throw CliErrors[_0x3070f6(0xc6)](_0x3070f6(0x89));return[...new Set(_0x385cd9)];}function parseCsv(_0x5c6739){const _0x28233e=a107_0x5b3fec;return[...new Set(_0x5c6739['split'](',')[_0x28233e(0xc7)](_0x5ee020=>_0x5ee020[_0x28233e(0xdc)]())[_0x28233e(0x8c)](Boolean))];}function parseLoadScriptMode(_0x3d0dc2){const _0x24d58b=a107_0x5b3fec;if(!_0x3d0dc2)return undefined;if(_0x3d0dc2===_0x24d58b(0x86)||_0x3d0dc2===_0x24d58b(0xb7)||_0x3d0dc2===_0x24d58b(0xc0))return _0x3d0dc2;throw CliErrors['validation']('Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch');}function parseParams(_0x38e9d4){const _0x18de75=a107_0x5b3fec;if(!_0x38e9d4)return{};try{const _0x2fdd2f=JSON[_0x18de75(0x88)](_0x38e9d4);if(typeof _0x2fdd2f!=='object'||_0x2fdd2f===null||Array[_0x18de75(0xb0)](_0x2fdd2f))return{};return{'jsUrl':typeof _0x2fdd2f[_0x18de75(0xd8)]==='string'?_0x2fdd2f[_0x18de75(0xd8)]['trim']():undefined,'cssUrl':typeof _0x2fdd2f[_0x18de75(0xd4)]===_0x18de75(0x91)?_0x2fdd2f[_0x18de75(0xd4)][_0x18de75(0xdc)]():undefined};}catch{return{};}}
@@ -0,0 +1,2 @@
1
+ import type { CommandDefinition } from "../../framework/types.js";
2
+ export declare const menuDelete: CommandDefinition;
@@ -1 +1 @@
1
- function a108_0x4b3f(){const _0x1e0a43=['Deleted\x20','stringify','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','pageId','resources','plan\x20delete','cookie','causeCode','menu_verification_failed','pre-write-plan-validation','length','expect-path','menu_recursive_requires_folder','failed','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','rabetbase\x20menu\x20list\x20--format\x20json','map','indexOf','path','snapshot','verification','filter','expiresAt','cascade','high-risk-write','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','menu\x20list','173745RUnvUz','str','\x20deleted\x20menus;\x20expected\x20','Recursive\x20menu\x20delete\x20plan\x20root\x20','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','592956BVzQdn','push','385TgJpOt','4665knzlmB','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','flagMissing','join','target','Folder\x20','Batch\x20delete\x20request\x20for\x20menu\x20','appCode','bool','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','plan-validation','menus','107581UnafLb','Menu\x20','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','unknown','string','createdAt','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','causeMessage','add','44IwFOIP','POST','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','absentIds','\x20->\x20menu\x20','remainingIds','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','delete','809868rhICec','2KBWdHw','menu_batch_delete_count_mismatch','Post-mismatch\x20menu\x20readback\x20failed\x20(','menu_delete_page_bound','forEach','snapshotHash','menu_plan_invalid','17919UGuKls','deleteOrder','batch\x20delete','16984ovTjhr','\x20resource\x20URL(s).','batch-delete','plan','childrenCount','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','dry-run','unconfirmed','childrenIds','recursive','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','\x20references\x20missing\x20child\x20','message','menu_folder_resources_invalid','pages','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','execute\x20reviewed\x20delete\x20plan','trim','hash','Would\x20batch\x20delete\x20','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','menu_tree_invalid','menu_folder_has_resources','\x20menu(s)\x20under\x20exact\x20id\x20','plan-out','batch-delete-menu','selector','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','validation','resourcesValid','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','folder','260pFRQbB','page\x20','byId',';\x20execution\x20must\x20consume\x20','\x20is\x20not\x20a\x20folder.','toLowerCase','type','has','/smartapi/menu/batchDelete','\x20and\x20cannot\x20be\x20deleted\x20safely.','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file'];a108_0x4b3f=function(){return _0x1e0a43;};return a108_0x4b3f();}const a108_0x5d4f38=a108_0x1873;(function(_0x2702af,_0x4ddbc4){const _0x2d4804=a108_0x1873,_0x36145e=_0x2702af();while(!![]){try{const _0x7ef509=parseInt(_0x2d4804(0x115))/0x1*(-parseInt(_0x2d4804(0x128))/0x2)+parseInt(_0x2d4804(0x101))/0x3+-parseInt(_0x2d4804(0x11f))/0x4*(-parseInt(_0x2d4804(0x109))/0x5)+parseInt(_0x2d4804(0x127))/0x6+parseInt(_0x2d4804(0x108))/0x7*(parseInt(_0x2d4804(0xb9))/0x8)+-parseInt(_0x2d4804(0x106))/0x9+parseInt(_0x2d4804(0xdb))/0xa*(-parseInt(_0x2d4804(0xb6))/0xb);if(_0x7ef509===_0x4ddbc4)break;else _0x36145e['push'](_0x36145e['shift']());}catch(_0x1d3c20){_0x36145e['push'](_0x36145e['shift']());}}}(a108_0x4b3f,0x196a6));function a108_0x1873(_0x390073,_0x59ad0a){_0x390073=_0x390073-0xb1;const _0x4b3fd9=a108_0x4b3f();let _0x187323=_0x4b3fd9[_0x390073];return _0x187323;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a108_0x5d4f38(0xe3)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a108_0x5d4f38(0xff)},MENU_DELETE_RECURSIVE_FLAG={'name':a108_0x5d4f38(0xc2),'type':'boolean','description':a108_0x5d4f38(0xc4)},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':a108_0x5d4f38(0x11a),'description':a108_0x5d4f38(0xe5)},MENU_DELETE_PLAN_FLAG={'name':a108_0x5d4f38(0xbc),'type':a108_0x5d4f38(0x11a),'description':a108_0x5d4f38(0xce)};export const menuDelete={'service':'menu','command':a108_0x5d4f38(0x126),'description':a108_0x5d4f38(0xd5),'risk':a108_0x5d4f38(0xfe),'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'(_0x143fdf){const _0x32c0a1=a108_0x5d4f38;_0x143fdf[_0x32c0a1(0x111)](_0x32c0a1(0xbf))?validateDeleteDryRunInput(_0x143fdf):validateDeleteExecuteInput(_0x143fdf),requireExplicitYes(_0x143fdf);},async 'dryRun'(_0x21d2f2){const _0x29ea87=a108_0x5d4f38;validateDeleteDryRunInput(_0x21d2f2);const _0x2da480=await buildDeletePlan(_0x21d2f2),_0x1f2257=createMenuDeletePlanFile(_0x21d2f2['appCode'],_0x2da480),_0x1424d3=await writeMenuDeletePlan(_0x21d2f2[_0x29ea87(0x102)](_0x29ea87(0xd2)),_0x1f2257),_0x1ff235=mutationResult({..._0x2da480,'planFile':{'path':_0x1424d3,'createdAt':_0x1f2257[_0x29ea87(0x11b)],'expiresAt':_0x1f2257[_0x29ea87(0xfc)]}});return menuDryRunResult(_0x1ff235,{'method':_0x29ea87(0x120),'url':'/smartapi/menu/batchDelete','body':{'idList':_0x1ff235[_0x29ea87(0xb7)]},'description':_0x29ea87(0xcd)+(_0x1ff235[_0x29ea87(0xb7)]?.['length']??0x1)+_0x29ea87(0xd1)+_0x1ff235[_0x29ea87(0xd4)]['id']+_0x29ea87(0xde)+_0x1424d3+'.'});},async 'execute'(_0x333608){const _0x700c4d=a108_0x5d4f38;requireExplicitYes(_0x333608),validateDeleteExecuteInput(_0x333608);const _0x5d68fb=await readMenuDeletePlan(_0x333608[_0x700c4d(0x102)](_0x700c4d(0xbc))),_0x1315f1=mutationPlanFromDeleteFile(_0x5d68fb['plan'],_0x5d68fb[_0x700c4d(0xf8)]),_0x42e785=_0x5d68fb[_0x700c4d(0xbc)][_0x700c4d(0x10d)]['id'];try{assertMenuDeletePlanExecutable(_0x5d68fb['plan'],_0x333608['appCode']);}catch(_0x4c9303){throw menuFailure(asMenuError(_0x4c9303),_0x1315f1,{'stage':_0x700c4d(0x113),'failed':{'id':_0x42e785}});}let _0x2756be,_0x24e750;try{_0x2756be=await fetchMutationSnapshot(_0x333608,_0x700c4d(0xca),_0x42e785),_0x24e750=assertMenuDeletePlanCurrent(_0x5d68fb['plan'],_0x333608[_0x700c4d(0x110)],_0x2756be),assertDeleteTargetsComplete(_0x5d68fb[_0x700c4d(0xbc)],_0x2756be),_0x24e750['forEach'](_0x25b79e=>assertDeleteSafety(_0x25b79e,_0x5d68fb[_0x700c4d(0xbc)][_0x700c4d(0xc2)])),assertNoSharedPages(_0x2756be,_0x24e750),assertCascadeMatchesPlan(_0x1315f1,_0x24e750);}catch(_0x12b263){throw menuFailure(asMenuError(_0x12b263),_0x1315f1,{'stage':_0x700c4d(0xef),'failed':{'id':_0x42e785}});}const _0xdfb15d=_0x5d68fb['plan'][_0x700c4d(0xb7)];let _0x4d8699;try{_0x4d8699=await batchDeleteMenuEntities(_0x333608[_0x700c4d(0xec)],_0xdfb15d);}catch(_0x509ed8){const _0x4d6d80=mapMenuApiError(_0x509ed8,_0x700c4d(0xb8)),_0x3497da=[_0x700c4d(0xc3)];let _0x39416d;try{_0x39416d=await readDeleteOutcome(_0x333608,_0xdfb15d);}catch(_0x17ac4c){const _0x2a2b98=describeMenuErrorCause(_0x17ac4c,_0x700c4d(0x118),_0x42e785);_0x3497da['push']('Post-failure\x20menu\x20readback\x20failed\x20('+_0x2a2b98[_0x700c4d(0xed)]+'):\x20'+_0x2a2b98[_0x700c4d(0x11d)]);throw menuFailure(_0x4d6d80,_0x1315f1,{'stage':_0x700c4d(0xbb),'failed':{'targetIds':_0xdfb15d,'targetIdsAbsent':_0x700c4d(0xc0),..._0x2a2b98},'warnings':_0x3497da,'verification':{'status':'failed','lookupCommand':_0x700c4d(0xf5),'targetIds':_0xdfb15d}});}throw menuFailure(_0x4d6d80,_0x1315f1,{'stage':_0x700c4d(0xbb),'succeeded':_0x39416d[_0x700c4d(0x122)][_0x700c4d(0xf6)](_0xd4a1e4=>({'id':_0xd4a1e4,'deleted':!![]})),'failed':{'targetIds':_0xdfb15d,'absentIds':_0x39416d[_0x700c4d(0x122)],'remainingIds':_0x39416d[_0x700c4d(0x124)]},'warnings':_0x3497da,'verification':verificationFromOutcome(_0x39416d)});}if(_0x4d8699!==_0xdfb15d[_0x700c4d(0xf0)]){const _0x3ad6a5=menuError(_0x700c4d(0x129),'Backend\x20reported\x20'+_0x4d8699+_0x700c4d(0x103)+_0xdfb15d['length']+'.',_0x700c4d(0xf4)),_0x2ef97c=['The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.'];let _0x15ccac;try{_0x15ccac=await readDeleteOutcome(_0x333608,_0xdfb15d);}catch(_0x23fac0){const _0x134598=describeMenuErrorCause(_0x23fac0,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x42e785);_0x2ef97c[_0x700c4d(0x107)](_0x700c4d(0xb1)+_0x134598['causeCode']+'):\x20'+_0x134598[_0x700c4d(0x11d)]);throw menuFailure(_0x3ad6a5,_0x1315f1,{'stage':_0x700c4d(0xbb),'failed':{'targetIds':_0xdfb15d,'expectedCount':_0xdfb15d[_0x700c4d(0xf0)],'reportedDeletedCount':_0x4d8699,'targetIdsAbsent':_0x700c4d(0xc0),..._0x134598},'warnings':_0x2ef97c,'verification':{'status':_0x700c4d(0xf3),'lookupCommand':_0x700c4d(0xf5),'targetIds':_0xdfb15d}});}throw menuFailure(_0x3ad6a5,_0x1315f1,{'stage':_0x700c4d(0xbb),'succeeded':_0x15ccac[_0x700c4d(0x122)][_0x700c4d(0xf6)](_0x25335b=>({'id':_0x25335b,'deleted':!![]})),'failed':{'targetIds':_0xdfb15d,'expectedCount':_0xdfb15d['length'],'reportedDeletedCount':_0x4d8699,'absentIds':_0x15ccac[_0x700c4d(0x122)],'remainingIds':_0x15ccac[_0x700c4d(0x124)]},'warnings':_0x2ef97c,'verification':verificationFromOutcome(_0x15ccac)});}let _0x3abca3;try{_0x3abca3=await readDeleteOutcome(_0x333608,_0xdfb15d);}catch(_0x5ba47f){const _0x121900=describeMenuErrorCause(_0x5ba47f,'verify\x20batch\x20delete',_0x42e785),_0x17b09b=asVerificationError(_0x5ba47f,_0x700c4d(0x10f)+_0x42e785+_0x700c4d(0xe8));throw menuFailure(_0x17b09b,_0x1315f1,{'stage':_0x700c4d(0xfa),'succeeded':_0xdfb15d['map'](_0x1a9912=>({'id':_0x1a9912,'deleteRequested':!![]})),'failed':{'id':_0x42e785,'targetIds':_0xdfb15d,'targetIdsAbsent':_0x700c4d(0xc0),..._0x121900},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0xdfb15d}});}if(_0x3abca3['remainingIds'][_0x700c4d(0xf0)]>0x0){const _0x749441=menuError(_0x700c4d(0xee),'One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20'+_0x3abca3['remainingIds'][_0x700c4d(0x10c)](',\x20')+'.',_0x700c4d(0xf4));throw menuFailure(_0x749441,_0x1315f1,{'stage':_0x700c4d(0xfa),'succeeded':_0xdfb15d[_0x700c4d(0xf6)](_0x3fab2e=>({'id':_0x3fab2e,'deleteRequested':!![]})),'failed':{'id':_0x42e785,'targetIds':_0xdfb15d,'absentIds':_0x3abca3['absentIds'],'remainingIds':_0x3abca3[_0x700c4d(0x124)]},'warnings':['The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.'],'verification':verificationFromOutcome(_0x3abca3)});}const _0x37ebac=_0xdfb15d[_0x700c4d(0xf6)](_0x28c959=>({'id':_0x28c959,'deleted':!![]})),_0x1c7c81=mutationResult({..._0x1315f1,'dryRun':![],'succeeded':_0x37ebac,'verification':{'checkedBy':_0x700c4d(0x100),'plannedSnapshotHash':_0x1315f1[_0x700c4d(0xb4)],'finalSnapshotHash':_0x3abca3[_0x700c4d(0xf9)][_0x700c4d(0xcc)],'reportedDeletedCount':_0x4d8699,'targetAbsent':!_0x3abca3[_0x700c4d(0xf9)][_0x700c4d(0xdd)][_0x700c4d(0xe2)](_0x42e785),'allTargetsAbsent':!![],'targetIds':_0xdfb15d}});return{'ok':!![],'data':_0x1c7c81,'message':_0x700c4d(0xe6)+_0x37ebac['length']+_0x700c4d(0xd1)+_0x42e785+'.'};}};async function readDeleteOutcome(_0x484576,_0xa9ac67){const _0x4aeea6=a108_0x5d4f38,_0x173526=await fetchMenuSnapshot(_0x484576[_0x4aeea6(0x110)],_0x484576[_0x4aeea6(0xec)]);return{'snapshot':_0x173526,'absentIds':_0xa9ac67[_0x4aeea6(0xfb)](_0x24d329=>!_0x173526[_0x4aeea6(0xdd)][_0x4aeea6(0xe2)](_0x24d329)),'remainingIds':_0xa9ac67[_0x4aeea6(0xfb)](_0x4d02e9=>_0x173526[_0x4aeea6(0xdd)][_0x4aeea6(0xe2)](_0x4d02e9))};}function verificationFromOutcome(_0x25667b){const _0x272819=a108_0x5d4f38;return{'checkedBy':_0x272819(0x100),'absentIds':_0x25667b[_0x272819(0x122)],'remainingIds':_0x25667b[_0x272819(0x124)]};}function validateDeleteDryRunInput(_0x4158d0){const _0x314957=a108_0x5d4f38;validateExactId(_0x4158d0);if(!hasFlag(_0x4158d0,_0x314957(0xd2))||!_0x4158d0[_0x314957(0x102)](_0x314957(0xd2))[_0x314957(0xcb)]())throw CliErrors[_0x314957(0x10b)](_0x314957(0xd2),_0x314957(0x117));if(hasFlag(_0x4158d0,_0x314957(0xbc)))throw CliErrors[_0x314957(0xd7)](_0x314957(0x112));}function validateDeleteExecuteInput(_0x1893c3){const _0x4ad3dc=a108_0x5d4f38;if(!hasFlag(_0x1893c3,_0x4ad3dc(0xbc))||!_0x1893c3[_0x4ad3dc(0x102)](_0x4ad3dc(0xbc))[_0x4ad3dc(0xcb)]())throw CliErrors['flagMissing']('plan',_0x4ad3dc(0x125));const _0x4c8ecc=['id',_0x4ad3dc(0xc2),'plan-out','expect-parent-id',_0x4ad3dc(0xf1),'expected-children-count']['filter'](_0xd1672e=>hasFlag(_0x1893c3,_0xd1672e));if(_0x4c8ecc[_0x4ad3dc(0xf0)]>0x0)throw CliErrors[_0x4ad3dc(0xd7)]('Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20'+_0x4c8ecc[_0x4ad3dc(0xf6)](_0x4e45d8=>'--'+_0x4e45d8)[_0x4ad3dc(0x10c)](',\x20')+'.');}async function buildDeletePlan(_0x47134b){const _0x14b525=a108_0x5d4f38,_0x540461=validateExactId(_0x47134b),_0x117291=await fetchMutationSnapshot(_0x47134b,_0x14b525(0xeb),_0x540461),_0x3ede5c=requireMenu(_0x117291,_0x540461);assertExpectedState(_0x47134b,_0x3ede5c);const _0xb5b40a=_0x47134b[_0x14b525(0x111)](_0x14b525(0xc2));let _0x38a288;if(_0xb5b40a){if(_0x3ede5c[_0x14b525(0xe1)][_0x14b525(0xcb)]()[_0x14b525(0xe0)]()!==_0x14b525(0xda))throw menuError(_0x14b525(0xf2),_0x14b525(0x116)+_0x3ede5c['id']+'\x20is\x20type\x20\x22'+(_0x3ede5c[_0x14b525(0xe1)]||_0x14b525(0x119))+_0x14b525(0x10a));_0x38a288=collectDeleteTargets(_0x117291,_0x3ede5c),_0x38a288[_0x14b525(0xb3)](_0x5182c7=>assertDeleteSafety(_0x5182c7,!![]));}else assertDeleteSafety(_0x3ede5c),_0x38a288=[_0x3ede5c];assertNoSharedPages(_0x117291,_0x38a288);const _0x4a6470=_0x38a288[_0x14b525(0xf6)](_0x6869da=>_0x6869da['id']),_0x4f90fd=cascadeForTargets(_0x38a288),_0x5eb811=_0x4f90fd[_0x14b525(0xc8)][_0x14b525(0xf0)]>0x0?[_0x14b525(0xd6)]:[];return mutationResult({'operation':'delete','selector':{'id':_0x540461,'recursive':_0xb5b40a},'before':_0x3ede5c,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x14b525(0xd3),'method':_0x14b525(0x120),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x4a6470}}],'targets':_0x38a288,'deleteOrder':_0x4a6470,'snapshotHash':_0x117291['hash'],'cascade':_0x4f90fd,'warnings':_0x5eb811});}function assertDeleteSafety(_0x209410,_0x4ce334=![]){const _0x4a228e=a108_0x5d4f38,_0x21bd81=_0x209410['type'][_0x4a228e(0xcb)]()[_0x4a228e(0xe0)]()===_0x4a228e(0xda);if(_0x209410[_0x4a228e(0xbd)]>0x0&&(!_0x4ce334||!_0x21bd81))throw menuError('menu_non_empty',_0x4a228e(0x116)+_0x209410['id']+'\x20has\x20'+_0x209410['childrenCount']+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0x4a228e(0xd9)+_0x209410[_0x4a228e(0xc1)][_0x4a228e(0x10c)](',\x20'));if(_0x21bd81&&_0x209410[_0x4a228e(0xe9)]!=null)throw menuError(_0x4a228e(0xb2),_0x4a228e(0x10e)+_0x209410['id']+'\x20is\x20unexpectedly\x20bound\x20to\x20page\x20'+_0x209410['pageId']+_0x4a228e(0xe4),_0x4a228e(0xbe));if(!_0x21bd81)return;if(!_0x209410[_0x4a228e(0xd8)])throw menuError(_0x4a228e(0xc7),'Folder\x20'+_0x209410['id']+'\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.',_0x4a228e(0x11c));if(_0x209410[_0x4a228e(0xea)][_0x4a228e(0xf0)]>0x0)throw menuError(_0x4a228e(0xd0),_0x4a228e(0x10e)+_0x209410['id']+'\x20still\x20references\x20'+_0x209410[_0x4a228e(0xea)][_0x4a228e(0xf0)]+_0x4a228e(0xba),'Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function collectDeleteTargets(_0x96977e,_0x236051){const _0x4e7a68=[],_0x5448a4=new Set(),_0x91dac2=new Set(),_0x4f3360=_0x38cc52=>{const _0x2618e1=a108_0x1873;if(_0x5448a4[_0x2618e1(0xe2)](_0x38cc52['id']))throw menuError(_0x2618e1(0xcf),_0x2618e1(0xc9)+_0x38cc52['id']+'.');if(_0x91dac2[_0x2618e1(0xe2)](_0x38cc52['id']))return;_0x5448a4[_0x2618e1(0x11e)](_0x38cc52['id']);for(const _0x5343f5 of _0x38cc52['childrenIds']){const _0x54506b=_0x96977e[_0x2618e1(0xdd)]['get'](_0x5343f5);if(!_0x54506b)throw menuError(_0x2618e1(0xcf),_0x2618e1(0x116)+_0x38cc52['id']+_0x2618e1(0xc5)+_0x5343f5+'.');_0x4f3360(_0x54506b);}_0x5448a4[_0x2618e1(0x126)](_0x38cc52['id']),_0x91dac2[_0x2618e1(0x11e)](_0x38cc52['id']),_0x4e7a68[_0x2618e1(0x107)](_0x38cc52);};return _0x4f3360(_0x236051),_0x4e7a68;}function assertDeleteTargetsComplete(_0x366b58,_0x283915){const _0x5eea8c=a108_0x5d4f38,_0x1ba40a=requireMenu(_0x283915,_0x366b58[_0x5eea8c(0x10d)]['id']);if(_0x366b58['recursive']&&_0x1ba40a['type']['trim']()[_0x5eea8c(0xe0)]()!=='folder')throw menuError('menu_plan_invalid',_0x5eea8c(0x104)+_0x1ba40a['id']+_0x5eea8c(0xdf));const _0x4607bb=_0x366b58[_0x5eea8c(0xc2)]?collectDeleteTargets(_0x283915,_0x1ba40a)[_0x5eea8c(0xf6)](_0x3aac41=>_0x3aac41['id']):[_0x1ba40a['id']];if(JSON[_0x5eea8c(0xe7)](_0x366b58['deleteOrder'])!==JSON[_0x5eea8c(0xe7)](_0x4607bb))throw menuError(_0x5eea8c(0xb5),'Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.',_0x5eea8c(0x121));}function assertNoSharedPages(_0x2a81eb,_0x13266){const _0x21d8de=a108_0x5d4f38,_0x2999f8=new Set(_0x13266['map'](_0x57c8d7=>_0x57c8d7['id'])),_0x846a72=new Set(_0x13266[_0x21d8de(0xf6)](_0x50c8dc=>_0x50c8dc[_0x21d8de(0xe9)])['filter'](_0x37e258=>_0x37e258!=null));if(_0x846a72['size']===0x0)return;const _0x42749a=_0x2a81eb[_0x21d8de(0x114)][_0x21d8de(0xfb)](_0x4ef7a1=>!_0x2999f8[_0x21d8de(0xe2)](_0x4ef7a1['id'])&&_0x4ef7a1[_0x21d8de(0xe9)]!=null&&_0x846a72[_0x21d8de(0xe2)](_0x4ef7a1['pageId']));if(_0x42749a[_0x21d8de(0xf0)]===0x0)return;const _0x4ceaf2=_0x42749a[_0x21d8de(0xf6)](_0x364fb8=>_0x21d8de(0xdc)+_0x364fb8['pageId']+_0x21d8de(0x123)+_0x364fb8['id'])[_0x21d8de(0x10c)](',\x20');throw menuError('menu_page_shared',_0x21d8de(0x105)+_0x4ceaf2+'.','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.');}function assertCascadeMatchesPlan(_0x27e078,_0x292e20){const _0x49de34=a108_0x5d4f38,_0x54608b=cascadeForTargets(_0x292e20);if(JSON[_0x49de34(0xe7)](_0x27e078[_0x49de34(0xfd)])!==JSON['stringify'](_0x54608b))throw menuError(_0x49de34(0xb5),'Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.');}function cascadeForTargets(_0x385b43){const _0x3b63b9=a108_0x5d4f38,_0x28a563=_0x385b43[_0x3b63b9(0xf6)](_0x2d173c=>_0x2d173c[_0x3b63b9(0xe9)])[_0x3b63b9(0xfb)](_0x28798f=>_0x28798f!=null)[_0x3b63b9(0xfb)]((_0x18cfbb,_0x383a10,_0xc233b2)=>_0xc233b2[_0x3b63b9(0xf7)](_0x18cfbb)===_0x383a10);return{'pages':_0x28a563,'pageSchemaAffected':_0x28a563[_0x3b63b9(0xf0)]>0x0};}function asMenuError(_0x32ae18){const _0x23bfc2=a108_0x5d4f38;return _0x32ae18 instanceof CliError?_0x32ae18:menuError(_0x23bfc2(0xb5),_0x32ae18 instanceof Error?_0x32ae18[_0x23bfc2(0xc6)]:String(_0x32ae18));}
1
+ const a108_0x2330b4=a108_0x2916;(function(_0x2c62c9,_0x283f6c){const _0x22eea1=a108_0x2916,_0x3fd7ef=_0x2c62c9();while(!![]){try{const _0x4f3207=parseInt(_0x22eea1(0x16f))/0x1+-parseInt(_0x22eea1(0x199))/0x2*(parseInt(_0x22eea1(0x144))/0x3)+parseInt(_0x22eea1(0x120))/0x4*(parseInt(_0x22eea1(0x118))/0x5)+-parseInt(_0x22eea1(0x153))/0x6+parseInt(_0x22eea1(0x19d))/0x7*(-parseInt(_0x22eea1(0x139))/0x8)+parseInt(_0x22eea1(0x15c))/0x9*(-parseInt(_0x22eea1(0x170))/0xa)+parseInt(_0x22eea1(0x151))/0xb;if(_0x4f3207===_0x283f6c)break;else _0x3fd7ef['push'](_0x3fd7ef['shift']());}catch(_0xb52426){_0x3fd7ef['push'](_0x3fd7ef['shift']());}}}(a108_0x2cf1,0xd13e1));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':a108_0x2330b4(0x17e),'path':'/smartapi/menu/batchDelete'}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a108_0x2330b4(0x12a)},MENU_DELETE_RECURSIVE_FLAG={'name':a108_0x2330b4(0x138),'type':a108_0x2330b4(0x154),'description':a108_0x2330b4(0x15d)},MENU_DELETE_PLAN_OUT_FLAG={'name':'plan-out','type':'string','description':a108_0x2330b4(0x183)},MENU_DELETE_PLAN_FLAG={'name':a108_0x2330b4(0x198),'type':'string','description':a108_0x2330b4(0x167)};export const menuDelete={'service':a108_0x2330b4(0x119),'command':a108_0x2330b4(0x18b),'description':a108_0x2330b4(0x184),'risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x22938b){const _0x3ff848=a108_0x2330b4;_0x22938b[_0x3ff848(0x137)](_0x3ff848(0x16e))?validateDeleteDryRunInput(_0x22938b):validateDeleteExecuteInput(_0x22938b),requireExplicitYes(_0x22938b);},async 'dryRun'(_0x2cde9a){const _0x36bae9=a108_0x2330b4;validateDeleteDryRunInput(_0x2cde9a);const _0x469f44=await buildDeletePlan(_0x2cde9a),_0x4ba15b=createMenuDeletePlanFile(_0x2cde9a[_0x36bae9(0x164)],_0x469f44),_0x15c157=await writeMenuDeletePlan(_0x2cde9a[_0x36bae9(0x121)](_0x36bae9(0x146)),_0x4ba15b),_0x532396=mutationResult({..._0x469f44,'planFile':{'path':_0x15c157,'createdAt':_0x4ba15b[_0x36bae9(0x127)],'expiresAt':_0x4ba15b['expiresAt']}});return menuDryRunResult(_0x532396,{'method':_0x36bae9(0x17e),'url':'/smartapi/menu/batchDelete','body':{'idList':_0x532396['deleteOrder']},'description':'Would\x20batch\x20delete\x20'+(_0x532396[_0x36bae9(0x13e)]?.[_0x36bae9(0x13a)]??0x1)+_0x36bae9(0x19a)+_0x532396[_0x36bae9(0x13c)]['id']+_0x36bae9(0x123)+_0x15c157+'.'});},async 'execute'(_0x3690be){const _0xf90e02=a108_0x2330b4;requireExplicitYes(_0x3690be),validateDeleteExecuteInput(_0x3690be);const _0x5822a6=await readMenuDeletePlan(_0x3690be['str']('plan')),_0x3f5d7f=mutationPlanFromDeleteFile(_0x5822a6['plan'],_0x5822a6['path']),_0x3eb4aa=_0x5822a6[_0xf90e02(0x198)]['target']['id'];try{assertMenuDeletePlanExecutable(_0x5822a6[_0xf90e02(0x198)],_0x3690be[_0xf90e02(0x164)]);}catch(_0x1c2ebe){throw menuFailure(asMenuError(_0x1c2ebe),_0x3f5d7f,{'stage':_0xf90e02(0x18f),'failed':{'id':_0x3eb4aa}});}let _0x5ca4e0,_0x2f1cbf;try{_0x5ca4e0=await fetchMutationSnapshot(_0x3690be,_0xf90e02(0x197),_0x3eb4aa),_0x2f1cbf=assertMenuDeletePlanCurrent(_0x5822a6[_0xf90e02(0x198)],_0x3690be[_0xf90e02(0x164)],_0x5ca4e0),assertDeleteTargetsComplete(_0x5822a6[_0xf90e02(0x198)],_0x5ca4e0),_0x2f1cbf[_0xf90e02(0x15a)](_0x5006d8=>assertDeleteSafety(_0x5006d8,_0x5822a6[_0xf90e02(0x198)][_0xf90e02(0x138)])),assertNoSharedPages(_0x5ca4e0,_0x2f1cbf),assertCascadeMatchesPlan(_0x3f5d7f,_0x2f1cbf);}catch(_0x59db88){throw menuFailure(asMenuError(_0x59db88),_0x3f5d7f,{'stage':_0xf90e02(0x191),'failed':{'id':_0x3eb4aa}});}const _0x12cbf8=_0x5822a6[_0xf90e02(0x198)][_0xf90e02(0x13e)];let _0x216052;try{_0x216052=await batchDeleteMenuEntities(_0x3690be['cookie'],_0x12cbf8);}catch(_0x2a7f2c){const _0x56e7ec=mapMenuApiError(_0x2a7f2c,_0xf90e02(0x14c)),_0x359ce0=[_0xf90e02(0x148)];let _0x29b6ab;try{_0x29b6ab=await readDeleteOutcome(_0x3690be,_0x12cbf8);}catch(_0x42798e){const _0x24ba62=describeMenuErrorCause(_0x42798e,_0xf90e02(0x12e),_0x3eb4aa);_0x359ce0[_0xf90e02(0x143)](_0xf90e02(0x168)+_0x24ba62[_0xf90e02(0x11a)]+_0xf90e02(0x18c)+_0x24ba62['causeMessage']);throw menuFailure(_0x56e7ec,_0x3f5d7f,{'stage':_0xf90e02(0x17a),'failed':{'targetIds':_0x12cbf8,'targetIdsAbsent':'unconfirmed',..._0x24ba62},'warnings':_0x359ce0,'verification':{'status':'failed','lookupCommand':_0xf90e02(0x13b),'targetIds':_0x12cbf8}});}throw menuFailure(_0x56e7ec,_0x3f5d7f,{'stage':_0xf90e02(0x17a),'succeeded':_0x29b6ab[_0xf90e02(0x152)][_0xf90e02(0x16a)](_0x4ecef8=>({'id':_0x4ecef8,'deleted':!![]})),'failed':{'targetIds':_0x12cbf8,'absentIds':_0x29b6ab[_0xf90e02(0x152)],'remainingIds':_0x29b6ab[_0xf90e02(0x196)]},'warnings':_0x359ce0,'verification':verificationFromOutcome(_0x29b6ab)});}if(_0x216052!==_0x12cbf8[_0xf90e02(0x13a)]){const _0x5b800e=menuError(_0xf90e02(0x156),_0xf90e02(0x171)+_0x216052+_0xf90e02(0x163)+_0x12cbf8[_0xf90e02(0x13a)]+'.',_0xf90e02(0x18d)),_0x2af924=[_0xf90e02(0x135)];let _0xd7fbe9;try{_0xd7fbe9=await readDeleteOutcome(_0x3690be,_0x12cbf8);}catch(_0x414da0){const _0x6bafcb=describeMenuErrorCause(_0x414da0,_0xf90e02(0x17f),_0x3eb4aa);_0x2af924[_0xf90e02(0x143)](_0xf90e02(0x11d)+_0x6bafcb[_0xf90e02(0x11a)]+_0xf90e02(0x18c)+_0x6bafcb[_0xf90e02(0x129)]);throw menuFailure(_0x5b800e,_0x3f5d7f,{'stage':'batch-delete','failed':{'targetIds':_0x12cbf8,'expectedCount':_0x12cbf8['length'],'reportedDeletedCount':_0x216052,'targetIdsAbsent':_0xf90e02(0x166),..._0x6bafcb},'warnings':_0x2af924,'verification':{'status':_0xf90e02(0x12b),'lookupCommand':_0xf90e02(0x13b),'targetIds':_0x12cbf8}});}throw menuFailure(_0x5b800e,_0x3f5d7f,{'stage':'batch-delete','succeeded':_0xd7fbe9[_0xf90e02(0x152)][_0xf90e02(0x16a)](_0xca66bf=>({'id':_0xca66bf,'deleted':!![]})),'failed':{'targetIds':_0x12cbf8,'expectedCount':_0x12cbf8[_0xf90e02(0x13a)],'reportedDeletedCount':_0x216052,'absentIds':_0xd7fbe9[_0xf90e02(0x152)],'remainingIds':_0xd7fbe9[_0xf90e02(0x196)]},'warnings':_0x2af924,'verification':verificationFromOutcome(_0xd7fbe9)});}let _0x14252f;try{_0x14252f=await readDeleteOutcome(_0x3690be,_0x12cbf8);}catch(_0x22b553){const _0x1b57ed=describeMenuErrorCause(_0x22b553,_0xf90e02(0x194),_0x3eb4aa),_0x4bf459=asVerificationError(_0x22b553,_0xf90e02(0x169)+_0x3eb4aa+_0xf90e02(0x161));throw menuFailure(_0x4bf459,_0x3f5d7f,{'stage':_0xf90e02(0x147),'succeeded':_0x12cbf8[_0xf90e02(0x16a)](_0x569a10=>({'id':_0x569a10,'deleteRequested':!![]})),'failed':{'id':_0x3eb4aa,'targetIds':_0x12cbf8,'targetIdsAbsent':_0xf90e02(0x166),..._0x1b57ed},'warnings':[_0xf90e02(0x16b)],'verification':{'status':_0xf90e02(0x12b),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x12cbf8}});}if(_0x14252f[_0xf90e02(0x196)]['length']>0x0){const _0x659269=menuError(_0xf90e02(0x15f),_0xf90e02(0x177)+_0x14252f[_0xf90e02(0x196)][_0xf90e02(0x173)](',\x20')+'.',_0xf90e02(0x18d));throw menuFailure(_0x659269,_0x3f5d7f,{'stage':_0xf90e02(0x147),'succeeded':_0x12cbf8[_0xf90e02(0x16a)](_0x170d28=>({'id':_0x170d28,'deleteRequested':!![]})),'failed':{'id':_0x3eb4aa,'targetIds':_0x12cbf8,'absentIds':_0x14252f[_0xf90e02(0x152)],'remainingIds':_0x14252f[_0xf90e02(0x196)]},'warnings':[_0xf90e02(0x133)],'verification':verificationFromOutcome(_0x14252f)});}const _0x101df8=_0x12cbf8[_0xf90e02(0x16a)](_0x5ce7d4=>({'id':_0x5ce7d4,'deleted':!![]})),_0x18f43d=mutationResult({..._0x3f5d7f,'dryRun':![],'succeeded':_0x101df8,'verification':{'checkedBy':_0xf90e02(0x11c),'plannedSnapshotHash':_0x3f5d7f['snapshotHash'],'finalSnapshotHash':_0x14252f['snapshot'][_0xf90e02(0x14b)],'reportedDeletedCount':_0x216052,'targetAbsent':!_0x14252f[_0xf90e02(0x12f)]['byId'][_0xf90e02(0x162)](_0x3eb4aa),'allTargetsAbsent':!![],'targetIds':_0x12cbf8}});return{'ok':!![],'data':_0x18f43d,'message':_0xf90e02(0x176)+_0x101df8['length']+_0xf90e02(0x19a)+_0x3eb4aa+'.'};}};async function readDeleteOutcome(_0x316efd,_0x117dad){const _0x4fa0bb=a108_0x2330b4,_0x13ae8d=await fetchMenuSnapshot(_0x316efd[_0x4fa0bb(0x164)],_0x316efd[_0x4fa0bb(0x182)]);return{'snapshot':_0x13ae8d,'absentIds':_0x117dad[_0x4fa0bb(0x134)](_0x1325f4=>!_0x13ae8d[_0x4fa0bb(0x19b)][_0x4fa0bb(0x162)](_0x1325f4)),'remainingIds':_0x117dad[_0x4fa0bb(0x134)](_0x683da4=>_0x13ae8d[_0x4fa0bb(0x19b)][_0x4fa0bb(0x162)](_0x683da4))};}function verificationFromOutcome(_0x597a0c){const _0x4fecee=a108_0x2330b4;return{'checkedBy':_0x4fecee(0x11c),'absentIds':_0x597a0c[_0x4fecee(0x152)],'remainingIds':_0x597a0c[_0x4fecee(0x196)]};}function validateDeleteDryRunInput(_0x57fe86){const _0x28885a=a108_0x2330b4;validateExactId(_0x57fe86);if(!hasFlag(_0x57fe86,'plan-out')||!_0x57fe86[_0x28885a(0x121)](_0x28885a(0x146))[_0x28885a(0x181)]())throw CliErrors[_0x28885a(0x122)](_0x28885a(0x146),_0x28885a(0x14e));if(hasFlag(_0x57fe86,_0x28885a(0x198)))throw CliErrors['validation'](_0x28885a(0x172));}function validateDeleteExecuteInput(_0x4d65c8){const _0x401778=a108_0x2330b4;if(!hasFlag(_0x4d65c8,'plan')||!_0x4d65c8[_0x401778(0x121)](_0x401778(0x198))['trim']())throw CliErrors[_0x401778(0x122)](_0x401778(0x198),_0x401778(0x12d));const _0x5e4202=['id',_0x401778(0x138),'plan-out',_0x401778(0x16c),'expect-path',_0x401778(0x15b)][_0x401778(0x134)](_0x3cd279=>hasFlag(_0x4d65c8,_0x3cd279));if(_0x5e4202[_0x401778(0x13a)]>0x0)throw CliErrors[_0x401778(0x11b)](_0x401778(0x155)+_0x5e4202[_0x401778(0x16a)](_0x2b813e=>'--'+_0x2b813e)[_0x401778(0x173)](',\x20')+'.');}function a108_0x2916(_0x12a97c,_0x1d33c2){_0x12a97c=_0x12a97c-0x118;const _0x2cf1f3=a108_0x2cf1();let _0x291665=_0x2cf1f3[_0x12a97c];return _0x291665;}async function buildDeletePlan(_0xd829b1){const _0x19b81a=a108_0x2330b4,_0x2a41c0=validateExactId(_0xd829b1),_0x303d79=await fetchMutationSnapshot(_0xd829b1,_0x19b81a(0x17b),_0x2a41c0),_0x551e19=requireMenu(_0x303d79,_0x2a41c0);assertExpectedState(_0xd829b1,_0x551e19);const _0x5d5b47=_0xd829b1[_0x19b81a(0x137)]('recursive');let _0x4e3220;if(_0x5d5b47){if(_0x551e19[_0x19b81a(0x159)]['trim']()[_0x19b81a(0x16d)]()!==_0x19b81a(0x13d))throw menuError(_0x19b81a(0x160),'Menu\x20'+_0x551e19['id']+_0x19b81a(0x187)+(_0x551e19[_0x19b81a(0x159)]||_0x19b81a(0x124))+_0x19b81a(0x141));_0x4e3220=collectDeleteTargets(_0x303d79,_0x551e19),_0x4e3220['forEach'](_0xe7bc87=>assertDeleteSafety(_0xe7bc87,!![]));}else assertDeleteSafety(_0x551e19),_0x4e3220=[_0x551e19];assertNoSharedPages(_0x303d79,_0x4e3220);const _0x2020f8=_0x4e3220['map'](_0x25b439=>_0x25b439['id']),_0x508abb=cascadeForTargets(_0x4e3220),_0x27dee2=_0x508abb[_0x19b81a(0x185)][_0x19b81a(0x13a)]>0x0?[_0x19b81a(0x178)]:[];return mutationResult({'operation':_0x19b81a(0x18b),'selector':{'id':_0x2a41c0,'recursive':_0x5d5b47},'before':_0x551e19,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x19b81a(0x126),'method':_0x19b81a(0x17e),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x2020f8}}],'targets':_0x4e3220,'deleteOrder':_0x2020f8,'snapshotHash':_0x303d79['hash'],'cascade':_0x508abb,'warnings':_0x27dee2});}function assertDeleteSafety(_0x706ae1,_0x2ba076=![]){const _0x5a9a4c=a108_0x2330b4,_0x2c5251=_0x706ae1[_0x5a9a4c(0x159)][_0x5a9a4c(0x181)]()[_0x5a9a4c(0x16d)]()===_0x5a9a4c(0x13d);if(_0x706ae1[_0x5a9a4c(0x15e)]>0x0&&(!_0x2ba076||!_0x2c5251))throw menuError(_0x5a9a4c(0x145),_0x5a9a4c(0x174)+_0x706ae1['id']+_0x5a9a4c(0x136)+_0x706ae1[_0x5a9a4c(0x15e)]+_0x5a9a4c(0x11e),_0x5a9a4c(0x128)+_0x706ae1[_0x5a9a4c(0x150)][_0x5a9a4c(0x173)](',\x20'));if(_0x2c5251&&_0x706ae1[_0x5a9a4c(0x140)]!=null)throw menuError('menu_delete_page_bound',_0x5a9a4c(0x188)+_0x706ae1['id']+_0x5a9a4c(0x17d)+_0x706ae1['pageId']+_0x5a9a4c(0x18e),_0x5a9a4c(0x14a));if(!_0x2c5251)return;if(!_0x706ae1[_0x5a9a4c(0x19c)])throw menuError(_0x5a9a4c(0x180),_0x5a9a4c(0x188)+_0x706ae1['id']+_0x5a9a4c(0x195),_0x5a9a4c(0x12c));if(_0x706ae1[_0x5a9a4c(0x125)]['length']>0x0)throw menuError('menu_folder_has_resources',_0x5a9a4c(0x188)+_0x706ae1['id']+_0x5a9a4c(0x186)+_0x706ae1[_0x5a9a4c(0x125)]['length']+_0x5a9a4c(0x11f),_0x5a9a4c(0x189));}function collectDeleteTargets(_0x4044d1,_0x254f5e){const _0xff4e8f=[],_0x317279=new Set(),_0x166e58=new Set(),_0x57938c=_0x47b93c=>{const _0x32e55d=a108_0x2916;if(_0x317279['has'](_0x47b93c['id']))throw menuError(_0x32e55d(0x131),'Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20'+_0x47b93c['id']+'.');if(_0x166e58[_0x32e55d(0x162)](_0x47b93c['id']))return;_0x317279[_0x32e55d(0x13f)](_0x47b93c['id']);for(const _0x343b1f of _0x47b93c[_0x32e55d(0x150)]){const _0x598b2d=_0x4044d1[_0x32e55d(0x19b)][_0x32e55d(0x14d)](_0x343b1f);if(!_0x598b2d)throw menuError(_0x32e55d(0x131),_0x32e55d(0x174)+_0x47b93c['id']+_0x32e55d(0x17c)+_0x343b1f+'.');_0x57938c(_0x598b2d);}_0x317279[_0x32e55d(0x18b)](_0x47b93c['id']),_0x166e58[_0x32e55d(0x13f)](_0x47b93c['id']),_0xff4e8f[_0x32e55d(0x143)](_0x47b93c);};return _0x57938c(_0x254f5e),_0xff4e8f;}function assertDeleteTargetsComplete(_0x2bcbb4,_0x34c536){const _0x48c44c=a108_0x2330b4,_0x3872e6=requireMenu(_0x34c536,_0x2bcbb4['target']['id']);if(_0x2bcbb4[_0x48c44c(0x138)]&&_0x3872e6[_0x48c44c(0x159)][_0x48c44c(0x181)]()[_0x48c44c(0x16d)]()!==_0x48c44c(0x13d))throw menuError('menu_plan_invalid',_0x48c44c(0x192)+_0x3872e6['id']+_0x48c44c(0x149));const _0x4e6ae9=_0x2bcbb4[_0x48c44c(0x138)]?collectDeleteTargets(_0x34c536,_0x3872e6)[_0x48c44c(0x16a)](_0x664395=>_0x664395['id']):[_0x3872e6['id']];if(JSON['stringify'](_0x2bcbb4[_0x48c44c(0x13e)])!==JSON[_0x48c44c(0x18a)](_0x4e6ae9))throw menuError(_0x48c44c(0x190),'Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.');}function a108_0x2cf1(){const _0x341f6c=['Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','failed','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','snapshot','size','menu_tree_invalid','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','filter','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','\x20has\x20','bool','recursive','64ZQFrzd','length','rabetbase\x20menu\x20list\x20--format\x20json','selector','folder','deleteOrder','add','pageId','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','cascade','push','858084cCYxAG','menu_non_empty','plan-out','verification','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','\x20is\x20not\x20a\x20folder.','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','hash','batch\x20delete','get','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','childrenIds','29149538NRFDRT','absentIds','3942666gnaJVu','boolean','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','menu_batch_delete_count_mismatch','indexOf','page\x20','type','forEach','expected-children-count','9QhIUeK','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','childrenCount','menu_verification_failed','menu_recursive_requires_folder','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','has','\x20deleted\x20menus;\x20expected\x20','appCode','menus','unconfirmed','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','Post-failure\x20menu\x20readback\x20failed\x20(','Batch\x20delete\x20request\x20for\x20menu\x20','map','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','expect-parent-id','toLowerCase','dry-run','201331IjSgzr','10198210CURWQk','Backend\x20reported\x20','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','join','Menu\x20','menu_page_shared','Deleted\x20','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','message','batch-delete','plan\x20delete','\x20references\x20missing\x20child\x20','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','POST','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','menu_folder_resources_invalid','trim','cookie','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','pages','\x20still\x20references\x20','\x20is\x20type\x20\x22','Folder\x20','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','stringify','delete','):\x20','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','\x20and\x20cannot\x20be\x20deleted\x20safely.','plan-validation','menu_plan_invalid','pre-write-plan-validation','Recursive\x20menu\x20delete\x20plan\x20root\x20','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','verify\x20batch\x20delete','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','remainingIds','execute\x20reviewed\x20delete\x20plan','plan','2LHpiWH','\x20menu(s)\x20under\x20exact\x20id\x20','byId','resourcesValid','953687fbWDfQ','661660WRVaal','menu','causeCode','validation','menu\x20list','Post-mismatch\x20menu\x20readback\x20failed\x20(','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','\x20resource\x20URL(s).','32MNmHGD','str','flagMissing',';\x20execution\x20must\x20consume\x20','unknown','resources','batch-delete-menu','createdAt','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','causeMessage'];a108_0x2cf1=function(){return _0x341f6c;};return a108_0x2cf1();}function assertNoSharedPages(_0x3bb591,_0x4a661d){const _0x4d0541=a108_0x2330b4,_0x5482bf=new Set(_0x4a661d[_0x4d0541(0x16a)](_0x1f5a26=>_0x1f5a26['id'])),_0x531ef4=new Set(_0x4a661d[_0x4d0541(0x16a)](_0xc1cb3c=>_0xc1cb3c[_0x4d0541(0x140)])['filter'](_0x1f91e9=>_0x1f91e9!=null));if(_0x531ef4[_0x4d0541(0x130)]===0x0)return;const _0x952ad2=_0x3bb591[_0x4d0541(0x165)][_0x4d0541(0x134)](_0x2c50ae=>!_0x5482bf[_0x4d0541(0x162)](_0x2c50ae['id'])&&_0x2c50ae['pageId']!=null&&_0x531ef4['has'](_0x2c50ae[_0x4d0541(0x140)]));if(_0x952ad2[_0x4d0541(0x13a)]===0x0)return;const _0x3101b3=_0x952ad2['map'](_0x503673=>_0x4d0541(0x158)+_0x503673['pageId']+'\x20->\x20menu\x20'+_0x503673['id'])['join'](',\x20');throw menuError(_0x4d0541(0x175),_0x4d0541(0x193)+_0x3101b3+'.',_0x4d0541(0x132));}function assertCascadeMatchesPlan(_0x2209ff,_0x2c3532){const _0x1366aa=a108_0x2330b4,_0x1d8182=cascadeForTargets(_0x2c3532);if(JSON['stringify'](_0x2209ff[_0x1366aa(0x142)])!==JSON[_0x1366aa(0x18a)](_0x1d8182))throw menuError('menu_plan_invalid',_0x1366aa(0x14f));}function cascadeForTargets(_0x22fbf7){const _0xac1830=a108_0x2330b4,_0x318e19=_0x22fbf7[_0xac1830(0x16a)](_0xb53764=>_0xb53764[_0xac1830(0x140)])[_0xac1830(0x134)](_0x74338d=>_0x74338d!=null)[_0xac1830(0x134)]((_0x5347f3,_0x5985ef,_0x40be1f)=>_0x40be1f[_0xac1830(0x157)](_0x5347f3)===_0x5985ef);return{'pages':_0x318e19,'pageSchemaAffected':_0x318e19[_0xac1830(0x13a)]>0x0};}function asMenuError(_0x11497d){const _0x30a426=a108_0x2330b4;return _0x11497d instanceof CliError?_0x11497d:menuError(_0x30a426(0x190),_0x11497d instanceof Error?_0x11497d[_0x30a426(0x179)]:String(_0x11497d));}
@@ -0,0 +1,3 @@
1
+ import type { CommandDefinition } from "../../framework/types.js";
2
+ export declare function validateExternalMenuUrl(raw: string): string;
3
+ export declare const menuExternalLinkCreate: CommandDefinition;
@@ -1 +1 @@
1
- const a109_0x543840=a109_0x1f11;function a109_0x1e91(){const _0x4d4f1f=['Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','path','menu_create_response_invalid','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','\x27\x5c\x27\x27','str','code','string','add','failed','selector','appCode','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','create-menu','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','data','type','How\x20to\x20open\x20the\x20external\x20website','stringify','create','currentSnapshotHash','Created\x20menu\x20','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','external-link-create','<platform-generated>','open-mode','Created\x20external\x20menu\x20','cause','766926lNTTHd','map','hasOwnProperty','visible','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','trim','replace','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','hash','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','menu_url_invalid','1915775QTJjVH','Menu\x20','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','create\x20external\x20menu','fact','lookupCommand','\x20has\x20an\x20unexpected\x20','bool','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','plannedActions','https:','<redacted>','isSafeInteger','\x20failed\x20final\x20verification.','verification','menu_sort_overflow','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','byId','Create\x20an\x20external\x20website\x20link\x20menu','Would\x20create\x20external\x20website\x20link\x20menu\x20','entries','menu_state_drift','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','External\x20HTTPS\x20URL','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','menus','succeeded','menu_mutation_failed','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','Whether\x20the\x20menu\x20is\x20visible','Run\x20','label','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','menu','parent-id','expectedPath','662553UvjBYS','fromEntries','toLowerCase','prototype','expectedSnapshotHash','new-window','2908010BYMtMP','create-response-validation','after','filter','username','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','Provide\x20an\x20HTTPS\x20URL.','\x20has\x20an\x20unexpected\x20generated\x20path.','\x20--format\x20compress','link','\x20after\x20response\x20loss.','recovered','createdId','menu_not_found','menu_open_mode_invalid','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','2030556ODPvTC','menu_permission_denied','2249220oNYdbX','has','snapshot','menu_create_recovery_required','get','Recovered\x20created\x20external\x20menu\x20','visibility','before','cookie','write','External\x20menu\x20creation\x20failed.','menu_sort_invalid','url','length','217644fBkraq','object','rawFlags','/smartapi/menu/create','menu_verification_failed','menu_parent_not_folder','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','flagMissing','parentId','menu\x20list','POST','sort','embedded','\x20with\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','protocol','boolean','rawerror','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','afterPlan','plan','menu_url_https_required','Recovered\x20menu\x20','parent','causemessage'];a109_0x1e91=function(){return _0x4d4f1f;};return a109_0x1e91();}(function(_0x38bc74,_0x33a2f3){const _0xb6db5b=a109_0x1f11,_0x4be77a=_0x38bc74();while(!![]){try{const _0x1e50c6=parseInt(_0xb6db5b(0x1ed))/0x1+parseInt(_0xb6db5b(0x1ba))/0x2+parseInt(_0xb6db5b(0x203))/0x3+parseInt(_0xb6db5b(0x184))/0x4+-parseInt(_0xb6db5b(0x1c6))/0x5+-parseInt(_0xb6db5b(0x205))/0x6+-parseInt(_0xb6db5b(0x1f3))/0x7;if(_0x1e50c6===_0x33a2f3)break;else _0x4be77a['push'](_0x4be77a['shift']());}catch(_0x386c60){_0x4be77a['push'](_0x4be77a['shift']());}}}(a109_0x1e91,0x936b0));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':'iframe','new-window':a109_0x543840(0x1fc)};export function validateExternalMenuUrl(_0x3fc3a0){const _0x15c8a9=a109_0x543840,_0x1cfdc8=_0x3fc3a0[_0x15c8a9(0x1bf)]();let _0x5e7fcb;try{_0x5e7fcb=new URL(_0x1cfdc8);}catch{throw menuError(_0x15c8a9(0x1c5),_0x15c8a9(0x18a),_0x15c8a9(0x1c1));}if(_0x5e7fcb[_0x15c8a9(0x194)]!==_0x15c8a9(0x1d3))throw menuError(_0x15c8a9(0x19a),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.',_0x15c8a9(0x1f9));if(_0x5e7fcb[_0x15c8a9(0x1f7)]||_0x5e7fcb['password'])throw menuError('menu_url_credentials_forbidden','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.',_0x15c8a9(0x1a1));return _0x1cfdc8;}export const menuExternalLinkCreate={'service':a109_0x543840(0x1ea),'command':a109_0x543840(0x1b5),'description':a109_0x543840(0x1db),'risk':a109_0x543840(0x17f),'structuredErrors':!![],'flags':[{'name':'label','type':a109_0x543840(0x1a5),'required':!![],'description':'Menu\x20label'},{'name':a109_0x543840(0x1b7),'type':a109_0x543840(0x1a5),'required':!![],'enum':[a109_0x543840(0x191),a109_0x543840(0x1f2)],'description':a109_0x543840(0x1af)},{'name':'url','type':a109_0x543840(0x1a5),'required':!![],'description':a109_0x543840(0x1e0)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a109_0x543840(0x1bd),'type':a109_0x543840(0x195),'default':!![],'description':a109_0x543840(0x1e6)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5787cb){validateAddInput(_0x5787cb);},async 'dryRun'(_0x61d83f){const _0x492705=a109_0x543840;validateAddInput(_0x61d83f);const {plan:_0x529111}=await buildSafeAddPlan(_0x61d83f,!![]),_0x38ba38=_0x529111[_0x492705(0x1f5)],_0x268a74=createBody(_0x38ba38);return menuDryRunResult(_0x529111,{'method':'POST','url':_0x492705(0x187),'body':_0x268a74,'description':_0x492705(0x1dc)+JSON[_0x492705(0x1b0)](_0x38ba38[_0x492705(0x1e8)])+_0x492705(0x192)+_0x61d83f[_0x492705(0x1a3)](_0x492705(0x1b7))+'\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x2b0361){const _0x20db89=a109_0x543840;validateAddInput(_0x2b0361);const _0xda376e=await buildSafeAddPlan(_0x2b0361,![]),{plan:_0x29ea56,snapshot:_0x57ee37}=_0xda376e,_0x4336e0=_0x29ea56['after'],_0x25d842=buildMenuLookupCommand(_0x2b0361[_0x20db89(0x1a9)]);await recheckAddSnapshot(_0x2b0361,_0x29ea56);let _0x4fdabb;try{_0x4fdabb=await createMenuEntity(_0x2b0361[_0x20db89(0x1a9)],_0x2b0361['cookie'],createBody(_0x4336e0));}catch(_0xa254b8){const _0x343a0b=mapMenuApiError(_0xa254b8,'create\x20external\x20menu');if(!isMenuResponseLoss(_0xa254b8)||_0x343a0b[_0x20db89(0x1a4)]===_0x20db89(0x204))throw externalLinkCreateFailure(_0x343a0b,_0x29ea56,{'stage':_0x20db89(0x1b1),'failed':{},'verification':{'status':_0x20db89(0x1a7),'lookupCommand':_0x25d842}});return recoverAfterResponseLoss(_0x2b0361,_0xda376e,_0x25d842);}const _0x1a8980=Number(_0x4fdabb?.['id']),_0x1e8c89=typeof _0x4fdabb?.['path']==='string'?_0x4fdabb[_0x20db89(0x19f)]:'';if(!Number[_0x20db89(0x1d5)](_0x1a8980)||_0x1a8980<=0x0||!_0x1e8c89[_0x20db89(0x1bf)]()){const _0x3643d2=menuError(_0x20db89(0x1a0),_0x20db89(0x1c9),'Run\x20'+_0x25d842+_0x20db89(0x1c4));throw externalLinkCreateFailure(_0x3643d2,_0x29ea56,{'stage':_0x20db89(0x1f4),'succeeded':Number[_0x20db89(0x1d5)](_0x1a8980)&&_0x1a8980>0x0?[{'id':_0x1a8980,'created':!![]}]:[],'failed':{'createdId':Number[_0x20db89(0x1d5)](_0x1a8980)?_0x1a8980:null,'generatedPathConfirmed':Boolean(_0x1e8c89['trim']())},'warnings':[_0x20db89(0x1d1)],'after':Number[_0x20db89(0x1d5)](_0x1a8980)&&_0x1a8980>0x0?{..._0x4336e0,'id':_0x1a8980,'path':_0x1e8c89}:_0x4336e0,'verification':{'status':_0x20db89(0x1a7),'lookupCommand':_0x25d842,...Number[_0x20db89(0x1d5)](_0x1a8980)&&_0x1a8980>0x0?{'targetId':_0x1a8980}:{}}});}const _0x4bfd0c=await readAndVerifyCreatedMenu({'appCode':_0x2b0361['appCode'],'cookie':_0x2b0361[_0x20db89(0x20d)],'plan':_0x29ea56,'afterPlan':_0x4336e0,'createdId':_0x1a8980,'expectedPath':_0x1e8c89,'lookupCommand':_0x25d842,'recovered':![]});return creationSuccess(_0x29ea56,_0x4bfd0c[_0x20db89(0x207)],_0x4bfd0c[_0x20db89(0x1cd)],![]);}};function validateAddInput(_0x412fb3){const _0x1ae4ba=a109_0x543840;if(!_0x412fb3['str'](_0x1ae4ba(0x1e8))[_0x1ae4ba(0x1bf)]())throw CliErrors[_0x1ae4ba(0x18c)](_0x1ae4ba(0x1e8));resolveExternalMenuType(_0x412fb3),validateExternalMenuUrl(_0x412fb3[_0x1ae4ba(0x1a3)](_0x1ae4ba(0x182))),parseParentId(_0x412fb3,_0x1ae4ba(0x1eb)),validateSort(_0x412fb3);}function resolveExternalMenuType(_0x5b9457){const _0x206a7e=a109_0x543840,_0x5f2714=_0x5b9457['str']('open-mode')[_0x206a7e(0x1bf)]();if(!_0x5f2714)throw CliErrors[_0x206a7e(0x18c)]('open-mode');const _0x51718b=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x5f2714];if(!_0x51718b)throw menuError(_0x206a7e(0x201),_0x206a7e(0x1ca),'Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x51718b;}async function buildAddPlan(_0x5ea5ae,_0x7f57df){const _0xf59efc=a109_0x543840,_0xdc4e14=await fetchMutationSnapshot(_0x5ea5ae,_0xf59efc(0x1cc)),_0x158291=parseParentId(_0x5ea5ae,_0xf59efc(0x1eb))??null;if(_0x158291!=null)requireFolder(_0xdc4e14,_0x158291);const _0x1df611=validateSort(_0x5ea5ae),_0x3bc296=_0x1df611??nextSiblingSort(_0xdc4e14,_0x158291,_0xf59efc(0x1ea)),_0x5028fa=_0x5ea5ae['str'](_0xf59efc(0x1e8))[_0xf59efc(0x1bf)](),_0x4ff5fe=resolveExternalMenuType(_0x5ea5ae),_0x4a47e6=validateExternalMenuUrl(_0x5ea5ae[_0xf59efc(0x1a3)](_0xf59efc(0x182))),_0x32e88b=Object[_0xf59efc(0x1f0)][_0xf59efc(0x1bc)]['call'](_0x5ea5ae[_0xf59efc(0x186)],_0xf59efc(0x1bd))?_0x5ea5ae[_0xf59efc(0x1d0)]('visible'):!![],_0x288020={'id':null,'parentId':_0x158291,'label':_0x5028fa,'path':_0xf59efc(0x1b6),'url':_0x4a47e6,'type':_0x4ff5fe,'visible':_0x32e88b,'sort':_0x3bc296},_0x59d745=buildMenuLookupCommand(_0x5ea5ae[_0xf59efc(0x1a9)]),_0xd4d8c7=mutationResult({'operation':_0xf59efc(0x1a6),'selector':{'parentId':_0x158291,'type':_0x4ff5fe,'label':_0x5028fa,'url':_0x4a47e6},'before':null,'after':_0x288020,'dryRun':_0x7f57df,'backend':[{'method':_0xf59efc(0x18f),'path':_0xf59efc(0x187)}],'plannedActions':[{'stage':_0xf59efc(0x1ab),'method':'POST','path':_0xf59efc(0x187),'body':createBody(_0x288020)}],'snapshotHash':_0xdc4e14[_0xf59efc(0x1c3)],'warnings':[_0xf59efc(0x1aa)],'verification':{'lookupCommand':_0x59d745}});return{'plan':_0xd4d8c7,'snapshot':_0xdc4e14};}function a109_0x1f11(_0xad282f,_0x1a2246){_0xad282f=_0xad282f-0x17f;const _0x1e918a=a109_0x1e91();let _0x1f1134=_0x1e918a[_0xad282f];return _0x1f1134;}async function buildSafeAddPlan(_0x26bf62,_0x2675d9){try{return await buildAddPlan(_0x26bf62,_0x2675d9);}catch(_0x4df0ec){throw safeMenuAddError(_0x4df0ec);}}async function recheckAddSnapshot(_0x2e5afd,_0x456e2b){const _0x29c08b=a109_0x543840;try{await recheckMutationSnapshot(_0x2e5afd,_0x456e2b,'create\x20external\x20menu');}catch(_0x7ca8c0){const _0x5374a8=getFailureRecord(_0x7ca8c0);throw externalLinkCreateFailure(_0x7ca8c0,_0x456e2b,{'stage':'pre-write-recheck','failed':{..._0x5374a8?.[_0x29c08b(0x1f1)]?{'expectedSnapshotHash':_0x5374a8['expectedSnapshotHash']}:{},..._0x5374a8?.[_0x29c08b(0x1b2)]?{'currentSnapshotHash':_0x5374a8[_0x29c08b(0x1b2)]}:{}}});}}function createBody(_0x5235d8){const _0x207495=a109_0x543840;return{'parentId':toApiParentId(_0x5235d8[_0x207495(0x18d)]),'label':String(_0x5235d8[_0x207495(0x1e8)]),'type':String(_0x5235d8[_0x207495(0x1ae)]),'url':String(_0x5235d8[_0x207495(0x182)]),'visible':Boolean(_0x5235d8[_0x207495(0x1bd)]),'sort':Number(_0x5235d8[_0x207495(0x190)]),'extend':{}};}function buildMenuLookupCommand(_0x42f055){const _0x3862bb=a109_0x543840,_0x3bac97='\x27'+_0x42f055[_0x3862bb(0x1c0)](/'/g,_0x3862bb(0x1a2))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x3bac97+_0x3862bb(0x1fb);}async function recoverAfterResponseLoss(_0x69c073,_0x3b2540,_0x1aec42){const _0x51d484=a109_0x543840,{plan:_0x346d08,snapshot:_0xbef92a}=_0x3b2540,_0x4cfeea=_0x346d08[_0x51d484(0x1f5)];let _0x41d75c;try{_0x41d75c=await fetchMenuSnapshot(_0x69c073['appCode'],_0x69c073[_0x51d484(0x20d)]);}catch(_0x3f2080){throw recoveryRequiredFailure(_0x346d08,_0x1aec42,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x50cd93=_0x41d75c[_0x51d484(0x1e2)][_0x51d484(0x1f6)](_0x27944b=>_0x27944b[_0x51d484(0x18d)]===_0x4cfeea[_0x51d484(0x18d)]&&_0x27944b[_0x51d484(0x1ae)]===_0x4cfeea[_0x51d484(0x1ae)]&&_0x27944b[_0x51d484(0x1e8)]===_0x4cfeea[_0x51d484(0x1e8)]&&_0x27944b[_0x51d484(0x182)]===_0x4cfeea[_0x51d484(0x182)]),_0x4ecedd=_0x50cd93['filter'](_0x196654=>!_0xbef92a['byId'][_0x51d484(0x206)](_0x196654['id'])),_0x30cb93=_0x50cd93['filter'](_0x47e2be=>_0xbef92a[_0x51d484(0x1da)][_0x51d484(0x206)](_0x47e2be['id']));if(_0x50cd93['length']!==0x1||_0x4ecedd[_0x51d484(0x183)]!==0x1)throw recoveryRequiredFailure(_0x346d08,_0x1aec42,{'matchCount':_0x50cd93['length'],'newMatchCount':_0x4ecedd[_0x51d484(0x183)],'preexistingMatchCount':_0x30cb93[_0x51d484(0x183)]});const _0x192f17=_0x4ecedd[0x0];try{verifyCreatedFact(_0x192f17,_0x192f17['id'],_0x4cfeea,null);}catch(_0x545c9e){const _0x304edf=_0x545c9e instanceof Error&&_0x51d484(0x1a4)in _0x545c9e?_0x545c9e:menuError(_0x51d484(0x188),_0x51d484(0x19b)+_0x192f17['id']+'\x20could\x20not\x20be\x20verified.',_0x51d484(0x1e7)+_0x1aec42+_0x51d484(0x1df));throw externalLinkCreateFailure(_0x304edf,_0x346d08,{'stage':_0x51d484(0x1d7),'succeeded':[{'id':_0x192f17['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x192f17['id'],'finalFactsConfirmed':![]},'after':_0x192f17,'warnings':[_0x51d484(0x1c7)+_0x192f17['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':'failed','targetId':_0x192f17['id'],'recovered':!![],'lookupCommand':_0x1aec42}});}return creationSuccess(_0x346d08,_0x41d75c,_0x192f17,!![]);}function recoveryRequiredFailure(_0x52b927,_0x147d65,_0x1a8b54){const _0x3740bb=a109_0x543840,_0x2aecc7=menuError(_0x3740bb(0x208),_0x3740bb(0x197),_0x3740bb(0x1e7)+_0x147d65+_0x3740bb(0x1e1));return externalLinkCreateFailure(_0x2aecc7,_0x52b927,{'stage':'create-recovery','failed':_0x1a8b54,'warnings':[_0x3740bb(0x1d9)],'verification':{'status':_0x3740bb(0x1a7),..._0x1a8b54,'lookupCommand':_0x147d65}});}async function readAndVerifyCreatedMenu(_0x4c34ce){const _0x502352=a109_0x543840;let _0x3bccfa;try{_0x3bccfa=await fetchMenuSnapshot(_0x4c34ce[_0x502352(0x1a9)],_0x4c34ce[_0x502352(0x20d)]);}catch(_0x119526){const _0x484204=menuError('menu_verification_failed',_0x502352(0x1c7)+_0x4c34ce[_0x502352(0x1ff)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x502352(0x1e7)+_0x4c34ce['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x484204,_0x4c34ce['plan'],{'stage':_0x502352(0x1d7),'succeeded':[{'id':_0x4c34ce['createdId'],'created':!![]}],'failed':{'id':_0x4c34ce[_0x502352(0x1ff)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x4c34ce[_0x502352(0x198)],'id':_0x4c34ce['createdId'],'path':_0x4c34ce['expectedPath']},'warnings':[_0x502352(0x1c7)+_0x4c34ce['createdId']+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':'failed','targetId':_0x4c34ce[_0x502352(0x1ff)],'lookupCommand':_0x4c34ce[_0x502352(0x1ce)]}});}const _0x280e38=_0x3bccfa[_0x502352(0x1da)][_0x502352(0x209)](_0x4c34ce[_0x502352(0x1ff)]);try{if(!_0x280e38)throw menuError(_0x502352(0x188),'Created\x20menu\x20'+_0x4c34ce[_0x502352(0x1ff)]+_0x502352(0x1e5),_0x502352(0x1e7)+_0x4c34ce['lookupCommand']+_0x502352(0x1ac));verifyCreatedFact(_0x280e38,_0x4c34ce['createdId'],_0x4c34ce[_0x502352(0x198)],_0x4c34ce[_0x502352(0x1ec)]);}catch(_0x512d55){const _0x27fcc5=_0x512d55 instanceof Error&&_0x502352(0x1a4)in _0x512d55?_0x512d55:menuError(_0x502352(0x188),_0x502352(0x1b3)+_0x4c34ce[_0x502352(0x1ff)]+_0x502352(0x1d6),_0x502352(0x1e7)+_0x4c34ce[_0x502352(0x1ce)]+_0x502352(0x1ac));throw externalLinkCreateFailure(_0x27fcc5,_0x4c34ce[_0x502352(0x199)],{'stage':_0x502352(0x1d7),'succeeded':[{'id':_0x4c34ce['createdId'],'created':!![]}],'failed':{'id':_0x4c34ce[_0x502352(0x1ff)],'finalFactsConfirmed':![]},'after':_0x280e38??{..._0x4c34ce[_0x502352(0x198)],'id':_0x4c34ce[_0x502352(0x1ff)],'path':_0x4c34ce['expectedPath']},'warnings':[_0x502352(0x1c7)+_0x4c34ce['createdId']+_0x502352(0x1be)],'verification':{'status':_0x502352(0x1a7),'targetId':_0x4c34ce[_0x502352(0x1ff)],'recovered':_0x4c34ce[_0x502352(0x1fe)],'lookupCommand':_0x4c34ce[_0x502352(0x1ce)]}});}return{'snapshot':_0x3bccfa,'fact':_0x280e38};}function verifyCreatedFact(_0x161305,_0x4584c1,_0x928e67,_0x5569ef){const _0x4af1fd=a109_0x543840;if(!Number[_0x4af1fd(0x1d5)](_0x161305['id'])||_0x161305['id']<=0x0||_0x161305['id']!==_0x4584c1)throw menuError('menu_verification_failed',_0x4af1fd(0x1c8),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x2ec50a=[[_0x4af1fd(0x19c),_0x161305[_0x4af1fd(0x18d)],_0x928e67['parentId']],[_0x4af1fd(0x1ae),_0x161305[_0x4af1fd(0x1ae)],_0x928e67[_0x4af1fd(0x1ae)]],[_0x4af1fd(0x1e8),_0x161305[_0x4af1fd(0x1e8)],_0x928e67[_0x4af1fd(0x1e8)]],['URL',_0x161305['url'],_0x928e67[_0x4af1fd(0x182)]],[_0x4af1fd(0x20b),_0x161305[_0x4af1fd(0x1bd)],_0x928e67[_0x4af1fd(0x1bd)]],[_0x4af1fd(0x190),_0x161305[_0x4af1fd(0x190)],_0x928e67[_0x4af1fd(0x190)]]];for(const [_0x170044,_0x35a6b7,_0x5dad65]of _0x2ec50a){if(_0x35a6b7!==_0x5dad65)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x161305['id']+_0x4af1fd(0x1cf)+_0x170044+'.',_0x4af1fd(0x1cb));}if(!_0x161305[_0x4af1fd(0x19f)][_0x4af1fd(0x1bf)]()||_0x5569ef!==null&&_0x161305[_0x4af1fd(0x19f)]!==_0x5569ef)throw menuError(_0x4af1fd(0x188),'Created\x20menu\x20'+_0x161305['id']+_0x4af1fd(0x1fa),_0x4af1fd(0x1cb));}function creationSuccess(_0x1003cc,_0x45c1e8,_0x6b7bf8,_0x4b5bb6){const _0x11ac60=a109_0x543840,_0xbd8cc6=mutationResult({..._0x1003cc,'after':_0x6b7bf8,'dryRun':![],'succeeded':[{'id':_0x6b7bf8['id'],'created':!![],'recovered':_0x4b5bb6}],'verification':{'checkedBy':_0x11ac60(0x18e),'snapshotHash':_0x45c1e8[_0x11ac60(0x1c3)],'targetId':_0x6b7bf8['id'],'recovered':_0x4b5bb6,'path':_0x6b7bf8[_0x11ac60(0x19f)]}});return{'ok':!![],'message':_0x4b5bb6?_0x11ac60(0x20a)+_0x6b7bf8['id']+_0x11ac60(0x1fd):_0x11ac60(0x1b8)+_0x6b7bf8['id']+'.','data':{..._0xbd8cc6,'recovered':_0x4b5bb6}};}function externalLinkCreateFailure(_0x1b5827,_0x3cafad,_0x4ce25a){const _0x49ba98=a109_0x543840;return menuFailure(safeMenuAddError(_0x1b5827),redactFailurePlan(_0x3cafad),{..._0x4ce25a,'succeeded':_0x4ce25a[_0x49ba98(0x1e3)]?.['map'](redactFailureRecord),'failed':_0x4ce25a[_0x49ba98(0x1a7)]?redactFailureRecord(_0x4ce25a[_0x49ba98(0x1a7)]):undefined,'verification':_0x4ce25a[_0x49ba98(0x1d7)]?redactFailureRecord(_0x4ce25a[_0x49ba98(0x1d7)]):undefined,'after':_0x4ce25a['after']===undefined?undefined:redactFailureValue(_0x4ce25a['after'])});}function redactFailurePlan(_0x8587c0){const _0x1bb521=a109_0x543840;return{..._0x8587c0,'selector':redactFailureRecord(_0x8587c0[_0x1bb521(0x1a8)]),'before':redactFailureValue(_0x8587c0[_0x1bb521(0x20c)]),'after':redactFailureValue(_0x8587c0['after']),'plannedActions':_0x8587c0[_0x1bb521(0x1d2)]?.[_0x1bb521(0x1bb)](_0xd4ae35=>({..._0xd4ae35,'body':redactFailureRecord(_0xd4ae35['body'])})),'succeeded':_0x8587c0[_0x1bb521(0x1e3)][_0x1bb521(0x1bb)](redactFailureRecord),'failed':_0x8587c0['failed'][_0x1bb521(0x1bb)](redactFailureRecord),'verification':_0x8587c0[_0x1bb521(0x1d7)]?redactFailureRecord(_0x8587c0['verification']):undefined};}function redactFailureRecord(_0x486b12){return redactFailureValue(_0x486b12);}function redactFailureValue(_0x27bd17,_0x23ae01=''){const _0x584ff1=a109_0x543840,_0x725ec3=_0x23ae01[_0x584ff1(0x1ef)]()[_0x584ff1(0x1c0)](/[^a-z0-9]/g,'');if([_0x584ff1(0x1b9),_0x584ff1(0x19d),'readbackerror',_0x584ff1(0x196)]['includes'](_0x725ec3))return _0x584ff1(0x1d4);if(Array['isArray'](_0x27bd17))return _0x27bd17[_0x584ff1(0x1bb)](_0x2ae210=>redactFailureValue(_0x2ae210));if(_0x27bd17&&typeof _0x27bd17===_0x584ff1(0x185))return Object[_0x584ff1(0x1ee)](Object[_0x584ff1(0x1dd)](_0x27bd17)[_0x584ff1(0x1bb)](([_0x44667c,_0x4cb95e])=>[_0x44667c,redactFailureValue(_0x4cb95e,_0x44667c)]));return _0x27bd17;}function safeMenuAddError(_0x3f11fa){const _0x6bf590=a109_0x543840,_0x49c15f=_0x3f11fa instanceof CliError?_0x3f11fa['code']:'menu_mutation_failed';switch(_0x49c15f){case _0x6bf590(0x1de):return menuError(_0x49c15f,_0x6bf590(0x1f8),_0x6bf590(0x202));case _0x6bf590(0x204):return menuError(_0x49c15f,_0x6bf590(0x1b4),_0x6bf590(0x18b));case _0x6bf590(0x1a0):return menuError(_0x49c15f,_0x6bf590(0x1e9),_0x6bf590(0x193));case'menu_verification_failed':return menuError(_0x49c15f,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x6bf590(0x208):return menuError(_0x49c15f,_0x6bf590(0x1c2),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x6bf590(0x1e4):case _0x6bf590(0x200):case _0x6bf590(0x189):case _0x6bf590(0x181):case _0x6bf590(0x1d8):return menuError(_0x49c15f,'External\x20menu\x20creation\x20failed.',_0x6bf590(0x19e));default:return menuError(_0x6bf590(0x1e4),_0x6bf590(0x180),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x1a7196){const _0x2eaf87=a109_0x543840;if(!(_0x1a7196 instanceof Error)||!('data'in _0x1a7196))return undefined;const _0x2b6124=_0x1a7196[_0x2eaf87(0x1ad)];if(!_0x2b6124||typeof _0x2b6124!==_0x2eaf87(0x185))return undefined;const _0x2ba9ae=_0x2b6124[_0x2eaf87(0x1a7)];if(!Array['isArray'](_0x2ba9ae)||!_0x2ba9ae[0x0]||typeof _0x2ba9ae[0x0]!==_0x2eaf87(0x185))return undefined;return _0x2ba9ae[0x0];}
1
+ const a109_0x45f2a7=a109_0xe071;(function(_0x584526,_0x11fdc7){const _0x6aea30=a109_0xe071,_0x4d10e=_0x584526();while(!![]){try{const _0x34c34c=parseInt(_0x6aea30(0x1e8))/0x1+-parseInt(_0x6aea30(0x213))/0x2*(parseInt(_0x6aea30(0x1e4))/0x3)+parseInt(_0x6aea30(0x1de))/0x4*(parseInt(_0x6aea30(0x233))/0x5)+parseInt(_0x6aea30(0x1b2))/0x6+parseInt(_0x6aea30(0x1b5))/0x7*(parseInt(_0x6aea30(0x1f6))/0x8)+parseInt(_0x6aea30(0x201))/0x9*(-parseInt(_0x6aea30(0x1c0))/0xa)+-parseInt(_0x6aea30(0x1e7))/0xb;if(_0x34c34c===_0x11fdc7)break;else _0x4d10e['push'](_0x4d10e['shift']());}catch(_0x1ba131){_0x4d10e['push'](_0x4d10e['shift']());}}}(a109_0x7486,0xc5224));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':a109_0x45f2a7(0x222),'new-window':a109_0x45f2a7(0x211)};export function validateExternalMenuUrl(_0x5d7423){const _0x4f2f26=a109_0x45f2a7,_0x5139ec=_0x5d7423['trim']();let _0x2e50e0;try{_0x2e50e0=new URL(_0x5139ec);}catch{throw menuError(_0x4f2f26(0x1c1),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x4f2f26(0x1d0));}if(_0x2e50e0[_0x4f2f26(0x1cc)]!==_0x4f2f26(0x217))throw menuError('menu_url_https_required',_0x4f2f26(0x1fb),'Provide\x20an\x20HTTPS\x20URL.');if(_0x2e50e0[_0x4f2f26(0x1f2)]||_0x2e50e0['password'])throw menuError(_0x4f2f26(0x1b4),_0x4f2f26(0x21c),_0x4f2f26(0x1da));return _0x5139ec;}export const menuExternalLinkCreate={'service':a109_0x45f2a7(0x1c7),'command':a109_0x45f2a7(0x226),'description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':'write','structuredErrors':!![],'flags':[{'name':a109_0x45f2a7(0x239),'type':a109_0x45f2a7(0x21e),'required':!![],'description':a109_0x45f2a7(0x1ae)},{'name':a109_0x45f2a7(0x1ac),'type':a109_0x45f2a7(0x21e),'required':!![],'enum':['embedded',a109_0x45f2a7(0x22c)],'description':a109_0x45f2a7(0x1f9)},{'name':a109_0x45f2a7(0x21d),'type':a109_0x45f2a7(0x21e),'required':!![],'description':a109_0x45f2a7(0x1e2)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a109_0x45f2a7(0x1e5),'type':a109_0x45f2a7(0x1eb),'default':!![],'description':a109_0x45f2a7(0x1fa)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x18270f){validateAddInput(_0x18270f);},async 'dryRun'(_0x3d1918){const _0x4e5721=a109_0x45f2a7;validateAddInput(_0x3d1918);const {plan:_0x40f0a7}=await buildSafeAddPlan(_0x3d1918,!![]),_0x207f76=_0x40f0a7[_0x4e5721(0x1cb)],_0xcd60da=createBody(_0x207f76);return menuDryRunResult(_0x40f0a7,{'method':_0x4e5721(0x1b7),'url':'/smartapi/menu/create','body':_0xcd60da,'description':_0x4e5721(0x20a)+JSON[_0x4e5721(0x1bc)](_0x207f76[_0x4e5721(0x239)])+_0x4e5721(0x230)+_0x3d1918[_0x4e5721(0x1c4)](_0x4e5721(0x1ac))+_0x4e5721(0x20d)});},async 'execute'(_0x46731a){const _0x1b096a=a109_0x45f2a7;validateAddInput(_0x46731a);const _0x1f0562=await buildSafeAddPlan(_0x46731a,![]),{plan:_0x494762,snapshot:_0x5bfea7}=_0x1f0562,_0x38b918=_0x494762[_0x1b096a(0x1cb)],_0x53f074=buildMenuLookupCommand(_0x46731a[_0x1b096a(0x228)]);await recheckAddSnapshot(_0x46731a,_0x494762);let _0x49a6f6;try{_0x49a6f6=await createMenuEntity(_0x46731a[_0x1b096a(0x228)],_0x46731a['cookie'],createBody(_0x38b918));}catch(_0x25060d){const _0x2e69ba=mapMenuApiError(_0x25060d,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x25060d)||_0x2e69ba[_0x1b096a(0x1f0)]===_0x1b096a(0x1c2))throw externalLinkCreateFailure(_0x2e69ba,_0x494762,{'stage':'create','failed':{},'verification':{'status':_0x1b096a(0x1e9),'lookupCommand':_0x53f074}});return recoverAfterResponseLoss(_0x46731a,_0x1f0562,_0x53f074);}const _0x1a0146=Number(_0x49a6f6?.['id']),_0x5dd5da=typeof _0x49a6f6?.[_0x1b096a(0x237)]==='string'?_0x49a6f6[_0x1b096a(0x237)]:'';if(!Number[_0x1b096a(0x1d3)](_0x1a0146)||_0x1a0146<=0x0||!_0x5dd5da['trim']()){const _0x13b312=menuError('menu_create_response_invalid',_0x1b096a(0x1f7),'Run\x20'+_0x53f074+_0x1b096a(0x200));throw externalLinkCreateFailure(_0x13b312,_0x494762,{'stage':'create-response-validation','succeeded':Number[_0x1b096a(0x1d3)](_0x1a0146)&&_0x1a0146>0x0?[{'id':_0x1a0146,'created':!![]}]:[],'failed':{'createdId':Number[_0x1b096a(0x1d3)](_0x1a0146)?_0x1a0146:null,'generatedPathConfirmed':Boolean(_0x5dd5da['trim']())},'warnings':['The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.'],'after':Number[_0x1b096a(0x1d3)](_0x1a0146)&&_0x1a0146>0x0?{..._0x38b918,'id':_0x1a0146,'path':_0x5dd5da}:_0x38b918,'verification':{'status':_0x1b096a(0x1e9),'lookupCommand':_0x53f074,...Number['isSafeInteger'](_0x1a0146)&&_0x1a0146>0x0?{'targetId':_0x1a0146}:{}}});}const _0x50b416=await readAndVerifyCreatedMenu({'appCode':_0x46731a[_0x1b096a(0x228)],'cookie':_0x46731a[_0x1b096a(0x1be)],'plan':_0x494762,'afterPlan':_0x38b918,'createdId':_0x1a0146,'expectedPath':_0x5dd5da,'lookupCommand':_0x53f074,'recovered':![]});return creationSuccess(_0x494762,_0x50b416['snapshot'],_0x50b416['fact'],![]);}};function validateAddInput(_0x202ea6){const _0x4c41e1=a109_0x45f2a7;if(!_0x202ea6[_0x4c41e1(0x1c4)](_0x4c41e1(0x239))[_0x4c41e1(0x1df)]())throw CliErrors[_0x4c41e1(0x1c8)](_0x4c41e1(0x239));resolveExternalMenuType(_0x202ea6),validateExternalMenuUrl(_0x202ea6[_0x4c41e1(0x1c4)](_0x4c41e1(0x21d))),parseParentId(_0x202ea6,_0x4c41e1(0x232)),validateSort(_0x202ea6);}function resolveExternalMenuType(_0x471414){const _0xd07182=a109_0x45f2a7,_0x9d6c50=_0x471414[_0xd07182(0x1c4)]('open-mode')[_0xd07182(0x1df)]();if(!_0x9d6c50)throw CliErrors[_0xd07182(0x1c8)](_0xd07182(0x1ac));const _0x5f4470=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x9d6c50];if(!_0x5f4470)throw menuError('menu_open_mode_invalid',_0xd07182(0x205),_0xd07182(0x1e6));return _0x5f4470;}async function buildAddPlan(_0x109b8d,_0x48b213){const _0x1f0579=a109_0x45f2a7,_0x415b54=await fetchMutationSnapshot(_0x109b8d,_0x1f0579(0x1ff)),_0x2282cd=parseParentId(_0x109b8d,_0x1f0579(0x232))??null;if(_0x2282cd!=null)requireFolder(_0x415b54,_0x2282cd);const _0x3590c9=validateSort(_0x109b8d),_0xfb2813=_0x3590c9??nextSiblingSort(_0x415b54,_0x2282cd,_0x1f0579(0x1c7)),_0x1fb4e8=_0x109b8d[_0x1f0579(0x1c4)](_0x1f0579(0x239))['trim'](),_0x3df632=resolveExternalMenuType(_0x109b8d),_0x525063=validateExternalMenuUrl(_0x109b8d[_0x1f0579(0x1c4)]('url')),_0x4f6ef4=Object[_0x1f0579(0x1ee)][_0x1f0579(0x1d4)][_0x1f0579(0x209)](_0x109b8d[_0x1f0579(0x234)],_0x1f0579(0x1e5))?_0x109b8d[_0x1f0579(0x206)](_0x1f0579(0x1e5)):!![],_0x4bebb9={'id':null,'parentId':_0x2282cd,'label':_0x1fb4e8,'path':_0x1f0579(0x1e1),'url':_0x525063,'type':_0x3df632,'visible':_0x4f6ef4,'sort':_0xfb2813},_0x5c1e21=buildMenuLookupCommand(_0x109b8d[_0x1f0579(0x228)]),_0x5ac41a=mutationResult({'operation':_0x1f0579(0x1d1),'selector':{'parentId':_0x2282cd,'type':_0x3df632,'label':_0x1fb4e8,'url':_0x525063},'before':null,'after':_0x4bebb9,'dryRun':_0x48b213,'backend':[{'method':_0x1f0579(0x1b7),'path':_0x1f0579(0x215)}],'plannedActions':[{'stage':_0x1f0579(0x1c6),'method':_0x1f0579(0x1b7),'path':_0x1f0579(0x215),'body':createBody(_0x4bebb9)}],'snapshotHash':_0x415b54['hash'],'warnings':[_0x1f0579(0x238)],'verification':{'lookupCommand':_0x5c1e21}});return{'plan':_0x5ac41a,'snapshot':_0x415b54};}async function buildSafeAddPlan(_0x4e43dc,_0xd95bb1){try{return await buildAddPlan(_0x4e43dc,_0xd95bb1);}catch(_0x537d3d){throw safeMenuAddError(_0x537d3d);}}async function recheckAddSnapshot(_0x1c6e7c,_0x397818){const _0x3ffa77=a109_0x45f2a7;try{await recheckMutationSnapshot(_0x1c6e7c,_0x397818,_0x3ffa77(0x1ff));}catch(_0xbc7113){const _0x51840e=getFailureRecord(_0xbc7113);throw externalLinkCreateFailure(_0xbc7113,_0x397818,{'stage':_0x3ffa77(0x212),'failed':{..._0x51840e?.[_0x3ffa77(0x1af)]?{'expectedSnapshotHash':_0x51840e[_0x3ffa77(0x1af)]}:{},..._0x51840e?.[_0x3ffa77(0x1d2)]?{'currentSnapshotHash':_0x51840e[_0x3ffa77(0x1d2)]}:{}}});}}function a109_0x7486(){const _0x3f4094=['appCode','sort','<redacted>','fromEntries','new-window','hash','\x27\x5c\x27\x27','get','\x20with\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','parent-id','137615rMDGiX','rawFlags','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','data','path','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','label','parent','open-mode','object','Menu\x20label','expectedSnapshotHash','body','\x20after\x20response\x20loss.','6123408VsRkrn','\x20failed\x20final\x20verification.','menu_url_credentials_forbidden','7BWAbwu','\x20could\x20not\x20be\x20verified.','POST','menu_sort_invalid','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','expectedPath','isArray','stringify','menu_not_found','cookie','replace','1365470Olnvnr','menu_url_invalid','menu_permission_denied','\x20has\x20an\x20unexpected\x20','str','type','create-menu','menu','flagMissing','menu_verification_failed','menu_parent_not_folder','after','protocol','\x20--format\x20compress','lookupCommand','Recovered\x20created\x20external\x20menu\x20','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','add','currentSnapshotHash','isSafeInteger','hasOwnProperty','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','menu\x20list','Run\x20','entries','includes','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','recovered','length','verification','36lLphvO','trim','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','<platform-generated>','External\x20HTTPS\x20URL','byId','1917DGliVG','visible','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','7019683hXRpZc','1245624rPNAiW','failed','URL','boolean','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','prototype','cause','code','Recovered\x20menu\x20','username','map','afterPlan','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','10619272zhtVuH','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','has','How\x20to\x20open\x20the\x20external\x20website','Whether\x20the\x20menu\x20is\x20visible','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','createdId','visibility','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','create\x20external\x20menu','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','54CIqfSw','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','causemessage','readbackerror','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','bool','menu_sort_overflow','plan','call','Would\x20create\x20external\x20website\x20link\x20menu\x20','parentId','succeeded','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','\x20has\x20an\x20unexpected\x20generated\x20path.','link','pre-write-recheck','4934GuOzCw','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','/smartapi/menu/create','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','https:','plannedActions','filter','Created\x20menu\x20','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','url','string','Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','menu_mutation_failed','selector','iframe','before','External\x20menu\x20creation\x20failed.','rabetbase\x20menu\x20list\x20--appcode\x20','external-link-create','Menu\x20'];a109_0x7486=function(){return _0x3f4094;};return a109_0x7486();}function createBody(_0x51405b){const _0x24aa28=a109_0x45f2a7;return{'parentId':toApiParentId(_0x51405b['parentId']),'label':String(_0x51405b['label']),'type':String(_0x51405b[_0x24aa28(0x1c5)]),'url':String(_0x51405b[_0x24aa28(0x21d)]),'visible':Boolean(_0x51405b[_0x24aa28(0x1e5)]),'sort':Number(_0x51405b[_0x24aa28(0x229)]),'extend':{}};}function buildMenuLookupCommand(_0x5725fe){const _0x61e18d=a109_0x45f2a7,_0x7a6b3d='\x27'+_0x5725fe['replace'](/'/g,_0x61e18d(0x22e))+'\x27';return _0x61e18d(0x225)+_0x7a6b3d+_0x61e18d(0x1cd);}async function recoverAfterResponseLoss(_0x25965d,_0x543cb3,_0x14e3bd){const _0x2d2078=a109_0x45f2a7,{plan:_0x461b94,snapshot:_0x48a914}=_0x543cb3,_0x338b2d=_0x461b94['after'];let _0x5ae156;try{_0x5ae156=await fetchMenuSnapshot(_0x25965d[_0x2d2078(0x228)],_0x25965d[_0x2d2078(0x1be)]);}catch(_0x42320f){throw recoveryRequiredFailure(_0x461b94,_0x14e3bd,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0xd36560=_0x5ae156['menus'][_0x2d2078(0x219)](_0x2053b9=>_0x2053b9[_0x2d2078(0x20b)]===_0x338b2d[_0x2d2078(0x20b)]&&_0x2053b9[_0x2d2078(0x1c5)]===_0x338b2d[_0x2d2078(0x1c5)]&&_0x2053b9['label']===_0x338b2d[_0x2d2078(0x239)]&&_0x2053b9[_0x2d2078(0x21d)]===_0x338b2d['url']),_0x563769=_0xd36560[_0x2d2078(0x219)](_0x3d17e7=>!_0x48a914[_0x2d2078(0x1e3)][_0x2d2078(0x1f8)](_0x3d17e7['id'])),_0x4871a5=_0xd36560[_0x2d2078(0x219)](_0x520439=>_0x48a914['byId']['has'](_0x520439['id']));if(_0xd36560[_0x2d2078(0x1dc)]!==0x1||_0x563769[_0x2d2078(0x1dc)]!==0x1)throw recoveryRequiredFailure(_0x461b94,_0x14e3bd,{'matchCount':_0xd36560['length'],'newMatchCount':_0x563769[_0x2d2078(0x1dc)],'preexistingMatchCount':_0x4871a5['length']});const _0x361bbd=_0x563769[0x0];try{verifyCreatedFact(_0x361bbd,_0x361bbd['id'],_0x338b2d,null);}catch(_0x1ae62b){const _0x20c618=_0x1ae62b instanceof Error&&_0x2d2078(0x1f0)in _0x1ae62b?_0x1ae62b:menuError(_0x2d2078(0x1c9),_0x2d2078(0x1f1)+_0x361bbd['id']+_0x2d2078(0x1b6),'Run\x20'+_0x14e3bd+_0x2d2078(0x1ed));throw externalLinkCreateFailure(_0x20c618,_0x461b94,{'stage':_0x2d2078(0x1dd),'succeeded':[{'id':_0x361bbd['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x361bbd['id'],'finalFactsConfirmed':![]},'after':_0x361bbd,'warnings':[_0x2d2078(0x227)+_0x361bbd['id']+_0x2d2078(0x1fe)],'verification':{'status':_0x2d2078(0x1e9),'targetId':_0x361bbd['id'],'recovered':!![],'lookupCommand':_0x14e3bd}});}return creationSuccess(_0x461b94,_0x5ae156,_0x361bbd,!![]);}function recoveryRequiredFailure(_0x5c5e37,_0x296d1e,_0x62b9e){const _0x20cc0a=a109_0x45f2a7,_0x20b984=menuError('menu_create_recovery_required',_0x20cc0a(0x1d5),_0x20cc0a(0x1d7)+_0x296d1e+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x20b984,_0x5c5e37,{'stage':'create-recovery','failed':_0x62b9e,'warnings':[_0x20cc0a(0x1b9)],'verification':{'status':'failed',..._0x62b9e,'lookupCommand':_0x296d1e}});}async function readAndVerifyCreatedMenu(_0x33a1bb){const _0x172d58=a109_0x45f2a7;let _0x8daec;try{_0x8daec=await fetchMenuSnapshot(_0x33a1bb['appCode'],_0x33a1bb['cookie']);}catch(_0x15d54b){const _0x3f94e5=menuError(_0x172d58(0x1c9),_0x172d58(0x227)+_0x33a1bb['createdId']+_0x172d58(0x202),'Run\x20'+_0x33a1bb[_0x172d58(0x1ce)]+_0x172d58(0x21b));throw externalLinkCreateFailure(_0x3f94e5,_0x33a1bb[_0x172d58(0x208)],{'stage':_0x172d58(0x1dd),'succeeded':[{'id':_0x33a1bb[_0x172d58(0x1fc)],'created':!![]}],'failed':{'id':_0x33a1bb[_0x172d58(0x1fc)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x33a1bb[_0x172d58(0x1f4)],'id':_0x33a1bb[_0x172d58(0x1fc)],'path':_0x33a1bb[_0x172d58(0x1ba)]},'warnings':['Menu\x20'+_0x33a1bb[_0x172d58(0x1fc)]+'\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x172d58(0x1e9),'targetId':_0x33a1bb['createdId'],'lookupCommand':_0x33a1bb[_0x172d58(0x1ce)]}});}const _0x28faea=_0x8daec[_0x172d58(0x1e3)][_0x172d58(0x22f)](_0x33a1bb[_0x172d58(0x1fc)]);try{if(!_0x28faea)throw menuError(_0x172d58(0x1c9),'Created\x20menu\x20'+_0x33a1bb[_0x172d58(0x1fc)]+_0x172d58(0x1f5),_0x172d58(0x1d7)+_0x33a1bb['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x28faea,_0x33a1bb[_0x172d58(0x1fc)],_0x33a1bb[_0x172d58(0x1f4)],_0x33a1bb[_0x172d58(0x1ba)]);}catch(_0x2f1698){const _0x4bb101=_0x2f1698 instanceof Error&&_0x172d58(0x1f0)in _0x2f1698?_0x2f1698:menuError(_0x172d58(0x1c9),_0x172d58(0x21a)+_0x33a1bb[_0x172d58(0x1fc)]+_0x172d58(0x1b3),_0x172d58(0x1d7)+_0x33a1bb[_0x172d58(0x1ce)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x4bb101,_0x33a1bb[_0x172d58(0x208)],{'stage':_0x172d58(0x1dd),'succeeded':[{'id':_0x33a1bb['createdId'],'created':!![]}],'failed':{'id':_0x33a1bb[_0x172d58(0x1fc)],'finalFactsConfirmed':![]},'after':_0x28faea??{..._0x33a1bb[_0x172d58(0x1f4)],'id':_0x33a1bb['createdId'],'path':_0x33a1bb[_0x172d58(0x1ba)]},'warnings':['Menu\x20'+_0x33a1bb['createdId']+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':'failed','targetId':_0x33a1bb[_0x172d58(0x1fc)],'recovered':_0x33a1bb[_0x172d58(0x1db)],'lookupCommand':_0x33a1bb[_0x172d58(0x1ce)]}});}return{'snapshot':_0x8daec,'fact':_0x28faea};}function verifyCreatedFact(_0x11444c,_0x5b06ce,_0x50c6c6,_0x22162f){const _0x563037=a109_0x45f2a7;if(!Number[_0x563037(0x1d3)](_0x11444c['id'])||_0x11444c['id']<=0x0||_0x11444c['id']!==_0x5b06ce)throw menuError(_0x563037(0x1c9),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x563037(0x21f));const _0x4b50c7=[[_0x563037(0x1ab),_0x11444c[_0x563037(0x20b)],_0x50c6c6[_0x563037(0x20b)]],[_0x563037(0x1c5),_0x11444c[_0x563037(0x1c5)],_0x50c6c6[_0x563037(0x1c5)]],[_0x563037(0x239),_0x11444c[_0x563037(0x239)],_0x50c6c6['label']],[_0x563037(0x1ea),_0x11444c[_0x563037(0x21d)],_0x50c6c6['url']],[_0x563037(0x1fd),_0x11444c[_0x563037(0x1e5)],_0x50c6c6[_0x563037(0x1e5)]],[_0x563037(0x229),_0x11444c[_0x563037(0x229)],_0x50c6c6[_0x563037(0x229)]]];for(const [_0x4a683d,_0x1a6f34,_0x12bfdc]of _0x4b50c7){if(_0x1a6f34!==_0x12bfdc)throw menuError(_0x563037(0x1c9),_0x563037(0x21a)+_0x11444c['id']+_0x563037(0x1c3)+_0x4a683d+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x11444c[_0x563037(0x237)]['trim']()||_0x22162f!==null&&_0x11444c[_0x563037(0x237)]!==_0x22162f)throw menuError(_0x563037(0x1c9),_0x563037(0x21a)+_0x11444c['id']+_0x563037(0x210),_0x563037(0x1e0));}function a109_0xe071(_0x2a6040,_0xb3f242){_0x2a6040=_0x2a6040-0x1ab;const _0x7486bd=a109_0x7486();let _0xe07185=_0x7486bd[_0x2a6040];return _0xe07185;}function creationSuccess(_0x30d098,_0x4c1428,_0x2f2723,_0x5cef37){const _0x44e350=a109_0x45f2a7,_0x456670=mutationResult({..._0x30d098,'after':_0x2f2723,'dryRun':![],'succeeded':[{'id':_0x2f2723['id'],'created':!![],'recovered':_0x5cef37}],'verification':{'checkedBy':_0x44e350(0x1d6),'snapshotHash':_0x4c1428[_0x44e350(0x22d)],'targetId':_0x2f2723['id'],'recovered':_0x5cef37,'path':_0x2f2723[_0x44e350(0x237)]}});return{'ok':!![],'message':_0x5cef37?_0x44e350(0x1cf)+_0x2f2723['id']+_0x44e350(0x1b1):'Created\x20external\x20menu\x20'+_0x2f2723['id']+'.','data':{..._0x456670,'recovered':_0x5cef37}};}function externalLinkCreateFailure(_0x2964ba,_0xd75c75,_0x14ca65){const _0x27d049=a109_0x45f2a7;return menuFailure(safeMenuAddError(_0x2964ba),redactFailurePlan(_0xd75c75),{..._0x14ca65,'succeeded':_0x14ca65['succeeded']?.[_0x27d049(0x1f3)](redactFailureRecord),'failed':_0x14ca65[_0x27d049(0x1e9)]?redactFailureRecord(_0x14ca65['failed']):undefined,'verification':_0x14ca65['verification']?redactFailureRecord(_0x14ca65[_0x27d049(0x1dd)]):undefined,'after':_0x14ca65[_0x27d049(0x1cb)]===undefined?undefined:redactFailureValue(_0x14ca65[_0x27d049(0x1cb)])});}function redactFailurePlan(_0x5e7e00){const _0x2ac5aa=a109_0x45f2a7;return{..._0x5e7e00,'selector':redactFailureRecord(_0x5e7e00[_0x2ac5aa(0x221)]),'before':redactFailureValue(_0x5e7e00[_0x2ac5aa(0x223)]),'after':redactFailureValue(_0x5e7e00[_0x2ac5aa(0x1cb)]),'plannedActions':_0x5e7e00[_0x2ac5aa(0x218)]?.['map'](_0x128fe9=>({..._0x128fe9,'body':redactFailureRecord(_0x128fe9[_0x2ac5aa(0x1b0)])})),'succeeded':_0x5e7e00[_0x2ac5aa(0x20c)]['map'](redactFailureRecord),'failed':_0x5e7e00[_0x2ac5aa(0x1e9)][_0x2ac5aa(0x1f3)](redactFailureRecord),'verification':_0x5e7e00[_0x2ac5aa(0x1dd)]?redactFailureRecord(_0x5e7e00[_0x2ac5aa(0x1dd)]):undefined};}function redactFailureRecord(_0x37e1ce){return redactFailureValue(_0x37e1ce);}function redactFailureValue(_0x14b36b,_0x59b1d5=''){const _0x42968d=a109_0x45f2a7,_0x4dcf4a=_0x59b1d5['toLowerCase']()[_0x42968d(0x1bf)](/[^a-z0-9]/g,'');if([_0x42968d(0x1ef),_0x42968d(0x203),_0x42968d(0x204),'rawerror'][_0x42968d(0x1d9)](_0x4dcf4a))return _0x42968d(0x22a);if(Array[_0x42968d(0x1bb)](_0x14b36b))return _0x14b36b[_0x42968d(0x1f3)](_0x30754e=>redactFailureValue(_0x30754e));if(_0x14b36b&&typeof _0x14b36b===_0x42968d(0x1ad))return Object[_0x42968d(0x22b)](Object[_0x42968d(0x1d8)](_0x14b36b)[_0x42968d(0x1f3)](([_0x536478,_0xcb8e0])=>[_0x536478,redactFailureValue(_0xcb8e0,_0x536478)]));return _0x14b36b;}function safeMenuAddError(_0x1480f6){const _0x368a0e=a109_0x45f2a7,_0xcf23ee=_0x1480f6 instanceof CliError?_0x1480f6[_0x368a0e(0x1f0)]:_0x368a0e(0x220);switch(_0xcf23ee){case'menu_state_drift':return menuError(_0xcf23ee,_0x368a0e(0x216),_0x368a0e(0x214));case _0x368a0e(0x1c2):return menuError(_0xcf23ee,'Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.',_0x368a0e(0x20f));case'menu_create_response_invalid':return menuError(_0xcf23ee,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x368a0e(0x231));case'menu_verification_failed':return menuError(_0xcf23ee,_0x368a0e(0x1ec),_0x368a0e(0x231));case'menu_create_recovery_required':return menuError(_0xcf23ee,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x368a0e(0x235));case _0x368a0e(0x220):case _0x368a0e(0x1bd):case _0x368a0e(0x1ca):case _0x368a0e(0x1b8):case _0x368a0e(0x207):return menuError(_0xcf23ee,_0x368a0e(0x224),_0x368a0e(0x20e));default:return menuError(_0x368a0e(0x220),_0x368a0e(0x224),_0x368a0e(0x20e));}}function getFailureRecord(_0x388144){const _0x3162df=a109_0x45f2a7;if(!(_0x388144 instanceof Error)||!(_0x3162df(0x236)in _0x388144))return undefined;const _0x2767d8=_0x388144[_0x3162df(0x236)];if(!_0x2767d8||typeof _0x2767d8!==_0x3162df(0x1ad))return undefined;const _0x486ba2=_0x2767d8[_0x3162df(0x1e9)];if(!Array[_0x3162df(0x1bb)](_0x486ba2)||!_0x486ba2[0x0]||typeof _0x486ba2[0x0]!==_0x3162df(0x1ad))return undefined;return _0x486ba2[0x0];}
@@ -0,0 +1,2 @@
1
+ import type { CommandDefinition } from "../../framework/types.js";
2
+ export declare const menuExternalLinkUpdate: CommandDefinition;