@lovrabet/rabetbase-cli 2.4.3-beta.1 → 2.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (294) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/index.js +1 -1
  20. package/lib/commands/app/list.js +1 -1
  21. package/lib/commands/app/members-list.js +1 -1
  22. package/lib/commands/app/remote-directory.js +1 -1
  23. package/lib/commands/app/shared.js +1 -1
  24. package/lib/commands/app-config/delete.js +1 -1
  25. package/lib/commands/app-config/get.js +1 -1
  26. package/lib/commands/app-config/index.js +1 -1
  27. package/lib/commands/app-config/list.js +1 -1
  28. package/lib/commands/app-config/set.js +1 -1
  29. package/lib/commands/app-config/shared.js +1 -1
  30. package/lib/commands/auth/index.js +1 -1
  31. package/lib/commands/bff/create.js +1 -1
  32. package/lib/commands/bff/delete.js +1 -1
  33. package/lib/commands/bff/detail.js +1 -1
  34. package/lib/commands/bff/index.js +1 -1
  35. package/lib/commands/bff/list.js +1 -1
  36. package/lib/commands/bff/pull.js +1 -1
  37. package/lib/commands/bff/push.js +1 -1
  38. package/lib/commands/bff/status.js +1 -1
  39. package/lib/commands/cli-skill/index.js +1 -1
  40. package/lib/commands/cli-update.js +1 -1
  41. package/lib/commands/codegen/index.js +1 -1
  42. package/lib/commands/codegen/sdk.js +1 -1
  43. package/lib/commands/codegen/sql.js +1 -1
  44. package/lib/commands/common/app-registry.js +1 -1
  45. package/lib/commands/common/app-selector.js +1 -1
  46. package/lib/commands/common/async-task.js +1 -1
  47. package/lib/commands/common/dry-run.js +1 -1
  48. package/lib/commands/common/flags.js +1 -1
  49. package/lib/commands/common/local-file.js +1 -1
  50. package/lib/commands/common/validate.js +1 -1
  51. package/lib/commands/config/get.js +1 -1
  52. package/lib/commands/config/index.js +1 -1
  53. package/lib/commands/config/list.js +1 -1
  54. package/lib/commands/config/set.js +1 -1
  55. package/lib/commands/config/shared.js +1 -1
  56. package/lib/commands/data/filter.js +1 -1
  57. package/lib/commands/data/getOne.js +1 -1
  58. package/lib/commands/data/index.js +1 -1
  59. package/lib/commands/data/shared.js +1 -1
  60. package/lib/commands/dataset/business-group-update.js +1 -1
  61. package/lib/commands/dataset/capability.js +1 -1
  62. package/lib/commands/dataset/delete.js +1 -1
  63. package/lib/commands/dataset/detail.js +1 -1
  64. package/lib/commands/dataset/extend-update.js +1 -1
  65. package/lib/commands/dataset/field-update.js +1 -1
  66. package/lib/commands/dataset/generate.js +1 -1
  67. package/lib/commands/dataset/index.js +1 -1
  68. package/lib/commands/dataset/list.js +1 -1
  69. package/lib/commands/dataset/operations.js +1 -1
  70. package/lib/commands/dataset/relation-audit.js +1 -1
  71. package/lib/commands/dataset/relation-create.js +1 -1
  72. package/lib/commands/dataset/relation-delete.js +1 -1
  73. package/lib/commands/dataset/relation-shared.js +1 -1
  74. package/lib/commands/dataset/relation-update.js +1 -1
  75. package/lib/commands/dataset/relations.js +1 -1
  76. package/lib/commands/dataset/rename.js +1 -1
  77. package/lib/commands/dataset/restore.js +1 -1
  78. package/lib/commands/db/analysis-batching.js +1 -1
  79. package/lib/commands/db/analyze-batch-plan.js +1 -1
  80. package/lib/commands/db/analyze-cancel.js +1 -1
  81. package/lib/commands/db/analyze-start.js +1 -1
  82. package/lib/commands/db/analyze-status.js +1 -1
  83. package/lib/commands/db/create.js +1 -1
  84. package/lib/commands/db/delete.js +1 -1
  85. package/lib/commands/db/detail.js +1 -1
  86. package/lib/commands/db/diff.js +1 -1
  87. package/lib/commands/db/index.js +1 -1
  88. package/lib/commands/db/list.js +1 -1
  89. package/lib/commands/db/shared.js +1 -1
  90. package/lib/commands/db/tables.js +1 -1
  91. package/lib/commands/db/test.js +1 -1
  92. package/lib/commands/db/update.js +1 -1
  93. package/lib/commands/doctor.js +1 -1
  94. package/lib/commands/file/index.js +1 -1
  95. package/lib/commands/init/index.js +1 -1
  96. package/lib/commands/issue/index.js +1 -1
  97. package/lib/commands/issue/nudge.js +1 -1
  98. package/lib/commands/issue/report.js +1 -1
  99. package/lib/commands/issue/shared.js +1 -1
  100. package/lib/commands/kb/create.js +1 -1
  101. package/lib/commands/kb/delete.js +1 -1
  102. package/lib/commands/kb/detail.js +1 -1
  103. package/lib/commands/kb/index.js +1 -1
  104. package/lib/commands/kb/list.js +1 -1
  105. package/lib/commands/kb/shared.js +1 -1
  106. package/lib/commands/kb/update.js +1 -1
  107. package/lib/commands/logs/index.js +1 -1
  108. package/lib/commands/menu/asset-update.js +1 -1
  109. package/lib/commands/menu/delete.js +1 -1
  110. package/lib/commands/menu/external-link-create.js +1 -1
  111. package/lib/commands/menu/external-link-update.js +1 -1
  112. package/lib/commands/menu/group-create.js +1 -1
  113. package/lib/commands/menu/group-update.js +1 -1
  114. package/lib/commands/menu/index.js +1 -1
  115. package/lib/commands/menu/list.js +1 -1
  116. package/lib/commands/menu/move.js +1 -1
  117. package/lib/commands/menu/regroup-start.js +1 -1
  118. package/lib/commands/menu/rename.js +1 -1
  119. package/lib/commands/menu/shared/compare-table.js +1 -1
  120. package/lib/commands/menu/shared/delete-plan.js +1 -1
  121. package/lib/commands/menu/shared/facts.js +1 -1
  122. package/lib/commands/menu/shared/index.js +1 -1
  123. package/lib/commands/menu/shared/inquirer.js +1 -1
  124. package/lib/commands/menu/shared/local-pages.js +1 -1
  125. package/lib/commands/menu/shared/logic.js +1 -1
  126. package/lib/commands/menu/shared/mutations.js +1 -1
  127. package/lib/commands/menu/shared/service.js +1 -1
  128. package/lib/commands/menu/shared/sync-core.js +1 -1
  129. package/lib/commands/menu/shared/update-core.js +1 -1
  130. package/lib/commands/menu/shared/valid-url.js +1 -1
  131. package/lib/commands/menu/sync.js +1 -1
  132. package/lib/commands/notification/config-list.js +1 -1
  133. package/lib/commands/notification/index.js +1 -1
  134. package/lib/commands/ocr/index.js +1 -1
  135. package/lib/commands/page/generate-start.js +1 -1
  136. package/lib/commands/page/generate-status.js +1 -1
  137. package/lib/commands/page/index.js +1 -1
  138. package/lib/commands/page/pull.js +1 -1
  139. package/lib/commands/page/push.js +1 -1
  140. package/lib/commands/page/react/create.js +1 -1
  141. package/lib/commands/page/react/detail.js +1 -1
  142. package/lib/commands/page/react/list.js +1 -1
  143. package/lib/commands/page/react/publish.js +1 -1
  144. package/lib/commands/page/react/shared.js +1 -1
  145. package/lib/commands/page/react/syntax.js +1 -1
  146. package/lib/commands/page/react/template.js +1 -1
  147. package/lib/commands/page/react/update.js +1 -1
  148. package/lib/commands/page/relation-audit.js +1 -1
  149. package/lib/commands/page/restore.js +1 -1
  150. package/lib/commands/page/shared.js +1 -1
  151. package/lib/commands/page/standard-page-status.js +1 -1
  152. package/lib/commands/page/sync.js +1 -1
  153. package/lib/commands/permit/index.js +1 -1
  154. package/lib/commands/permit/page-get.js +1 -1
  155. package/lib/commands/permit/page-set.js +1 -1
  156. package/lib/commands/permit/role-apis-set.js +1 -1
  157. package/lib/commands/permit/role-menus-set.js +1 -1
  158. package/lib/commands/permit/role-menus.js +1 -1
  159. package/lib/commands/permit/shared.js +1 -1
  160. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  161. package/lib/commands/project/create/format-elapsed.js +1 -1
  162. package/lib/commands/project/create/main.js +1 -1
  163. package/lib/commands/project/create/non-interactive.js +1 -1
  164. package/lib/commands/project/create/project-template-path.js +1 -1
  165. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  166. package/lib/commands/project/create/use-format-code.js +1 -1
  167. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  168. package/lib/commands/project/index.js +1 -1
  169. package/lib/commands/project/upgrade.js +1 -1
  170. package/lib/commands/registry.js +1 -1
  171. package/lib/commands/role/create.js +1 -1
  172. package/lib/commands/role/delete.js +1 -1
  173. package/lib/commands/role/detail.js +1 -1
  174. package/lib/commands/role/index.js +1 -1
  175. package/lib/commands/role/list.js +1 -1
  176. package/lib/commands/role/shared.js +1 -1
  177. package/lib/commands/role/update.js +1 -1
  178. package/lib/commands/role/user-add.js +1 -1
  179. package/lib/commands/role/user-remove.js +1 -1
  180. package/lib/commands/role/user-resolve.js +1 -1
  181. package/lib/commands/run/index.js +1 -1
  182. package/lib/commands/schema.js +1 -1
  183. package/lib/commands/sql/create.js +1 -1
  184. package/lib/commands/sql/delete.js +1 -1
  185. package/lib/commands/sql/detail.js +1 -1
  186. package/lib/commands/sql/exec.js +1 -1
  187. package/lib/commands/sql/index.js +1 -1
  188. package/lib/commands/sql/list.js +1 -1
  189. package/lib/commands/sql/pull.js +1 -1
  190. package/lib/commands/sql/push.js +1 -1
  191. package/lib/commands/sql/shared.js +1 -1
  192. package/lib/commands/sql/status.js +1 -1
  193. package/lib/commands/sql/validate.js +1 -1
  194. package/lib/commands/task/index.js +1 -1
  195. package/lib/commands/task/status.js +1 -1
  196. package/lib/commands/tenant/index.js +1 -1
  197. package/lib/commands/tenant/members-list.js +1 -1
  198. package/lib/commands/tenant/shared.js +1 -1
  199. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  200. package/lib/commands/user-account/index.js +1 -1
  201. package/lib/commands/workspace/add.js +1 -1
  202. package/lib/commands/workspace/index.js +1 -1
  203. package/lib/commands/workspace/remove.js +1 -1
  204. package/lib/config/schema.js +1 -1
  205. package/lib/constant/cdn.js +1 -1
  206. package/lib/constant/cli.js +1 -1
  207. package/lib/constant/defaults.js +1 -1
  208. package/lib/constant/domain.js +1 -1
  209. package/lib/constant/env.js +1 -1
  210. package/lib/constant/output.js +1 -1
  211. package/lib/constant/paths.js +1 -1
  212. package/lib/constant/risk.js +1 -1
  213. package/lib/context/app-resolver.js +1 -1
  214. package/lib/context/auth-resolver.js +1 -1
  215. package/lib/context/config-loader.js +1 -1
  216. package/lib/context.js +1 -1
  217. package/lib/core/alias-resolver.js +1 -1
  218. package/lib/core/api-client.js +1 -1
  219. package/lib/core/bff/config.js +1 -1
  220. package/lib/core/bff/file-system.js +1 -1
  221. package/lib/core/bff/hash.js +1 -1
  222. package/lib/core/bff/lock.js +1 -1
  223. package/lib/core/bff/utils.js +1 -1
  224. package/lib/core/db-resolver.js +1 -1
  225. package/lib/core/page/file-system.js +1 -1
  226. package/lib/core/page/hash.js +1 -1
  227. package/lib/core/page/lock.js +1 -1
  228. package/lib/core/sql-index-auditor.js +1 -1
  229. package/lib/core/sql-sync/config.js +1 -1
  230. package/lib/core/sql-sync/file-system.js +1 -1
  231. package/lib/core/sql-sync/hash.js +1 -1
  232. package/lib/core/sql-sync/lock.js +1 -1
  233. package/lib/core/sql-sync/utils.js +1 -1
  234. package/lib/core/sql-validator.js +1 -1
  235. package/lib/errors.js +1 -1
  236. package/lib/framework/build-all-flags.js +1 -1
  237. package/lib/framework/error-output.js +1 -1
  238. package/lib/framework/explicit-yes.js +1 -1
  239. package/lib/framework/flags.js +1 -1
  240. package/lib/framework/help.js +1 -1
  241. package/lib/framework/index.js +1 -1
  242. package/lib/framework/output.js +1 -1
  243. package/lib/framework/response.js +1 -1
  244. package/lib/framework/runner-alias.js +1 -1
  245. package/lib/framework/runner.js +1 -1
  246. package/lib/framework/schema-export.js +1 -1
  247. package/lib/framework/types.js +1 -1
  248. package/lib/generated/build-info.d.ts +4 -4
  249. package/lib/generated/build-info.js +1 -1
  250. package/lib/help.js +1 -1
  251. package/lib/postinstall.js +1 -1
  252. package/lib/runtime/confirmation.js +1 -1
  253. package/lib/runtime/event.js +1 -1
  254. package/lib/runtime/index.js +1 -1
  255. package/lib/runtime/queue.js +1 -1
  256. package/lib/runtime/resolve.js +1 -1
  257. package/lib/skills/builtin-skill.js +1 -1
  258. package/lib/skills/main.js +1 -1
  259. package/lib/skills/npx-skills-add.js +1 -1
  260. package/lib/skills/skill-presence.js +1 -1
  261. package/lib/telemetry/cli-command-trace.js +1 -1
  262. package/lib/telemetry/cli-help-trace.js +1 -1
  263. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  264. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  265. package/lib/telemetry/send-cli-trace-log.js +1 -1
  266. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  267. package/lib/utils/ai_config.js +1 -1
  268. package/lib/utils/apply-jq-filter.js +1 -1
  269. package/lib/utils/cdn-config.js +1 -1
  270. package/lib/utils/check-sdk-version.js +1 -1
  271. package/lib/utils/cli-version-check.js +1 -1
  272. package/lib/utils/cli-version-policy.js +1 -1
  273. package/lib/utils/config.js +1 -1
  274. package/lib/utils/copy-directory.js +1 -1
  275. package/lib/utils/entity-with-id.js +1 -1
  276. package/lib/utils/file-utils.js +1 -1
  277. package/lib/utils/guides-cdn.js +1 -1
  278. package/lib/utils/http-client.js +1 -1
  279. package/lib/utils/is-non-interactive.js +1 -1
  280. package/lib/utils/logger.js +1 -1
  281. package/lib/utils/params.js +1 -1
  282. package/lib/utils/platform.js +1 -1
  283. package/lib/utils/rules-cdn.js +1 -1
  284. package/lib/utils/sleep.js +1 -1
  285. package/lib/utils/template-replacer.js +1 -1
  286. package/lib/utils/update-notice.js +1 -1
  287. package/lib/utils/version.js +1 -1
  288. package/lib/utils/with-active-cookie.js +1 -1
  289. package/lib/utils/write-cli-side-channel.js +1 -1
  290. package/package.json +1 -1
  291. package/skills/rabetbase/SKILL.md +1 -1
  292. package/skills/rabetbase/guides/react-custom-page-workflow.md +9 -3
  293. package/skills/rabetbase/knowledge/react-page/generation-standards.md +13 -2
  294. package/skills/rabetbase.manifest.json +3 -3
@@ -1 +1 @@
1
- const a104_0x4b1a26=a104_0x4332;(function(_0x302e6e,_0xe2bf60){const _0x335c35=a104_0x4332,_0x4e1fde=_0x302e6e();while(!![]){try{const _0x314659=-parseInt(_0x335c35(0x23b))/0x1+-parseInt(_0x335c35(0x202))/0x2+parseInt(_0x335c35(0x21e))/0x3+parseInt(_0x335c35(0x20d))/0x4*(parseInt(_0x335c35(0x1ef))/0x5)+parseInt(_0x335c35(0x21f))/0x6*(-parseInt(_0x335c35(0x212))/0x7)+parseInt(_0x335c35(0x22a))/0x8+parseInt(_0x335c35(0x1ed))/0x9;if(_0x314659===_0xe2bf60)break;else _0x4e1fde['push'](_0x4e1fde['shift']());}catch(_0x1f751c){_0x4e1fde['push'](_0x4e1fde['shift']());}}}(a104_0x44eb,0x84840));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';import{CliError}from'../../errors.js';const LIST_PAGE_SIZE=0x32,DATA_NOT_EXIST_ERROR_CODE=a104_0x4b1a26(0x1f6);export function kbError(_0x56a2c9,_0xcc361e,_0x52ad40){return new CliError(_0x56a2c9,0x1,_0xcc361e,_0x52ad40);}export function readKbId(_0x3e714f){const _0x1e06d5=a104_0x4b1a26,_0x24c146=_0x3e714f[_0x1e06d5(0x23a)]('id');if(!Number[_0x1e06d5(0x237)](_0x24c146)||_0x24c146<=0x0)throw kbError('kb_id_invalid','--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.');return _0x24c146;}export function requireKbExplicitYes(_0x28d074){const _0xd0ef68=a104_0x4b1a26;if(_0x28d074[_0xd0ef68(0x1e4)](_0xd0ef68(0x219))||_0x28d074[_0xd0ef68(0x1e4)](_0xd0ef68(0x213)))return;throw kbError(_0xd0ef68(0x200),'This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.',_0xd0ef68(0x1ee));}function sha256(_0x446c6c){const _0x3b544b=a104_0x4b1a26;return _0x3b544b(0x218)+createHash(_0x3b544b(0x201))['update'](_0x446c6c)[_0x3b544b(0x238)](_0x3b544b(0x224));}export function inspectKbContent(_0x2e2a60){const _0x2d93c1=a104_0x4b1a26,_0x548529=Buffer[_0x2d93c1(0x211)](_0x2e2a60,'utf8');return{'content':_0x2e2a60,'byteSize':_0x548529[_0x2d93c1(0x207)],'contentHash':sha256(_0x548529)};}export async function readKbFile(_0x4126b6){const _0x589062=a104_0x4b1a26,_0xc353f7=_0x4126b6[_0x589062(0x21c)]();if(!_0xc353f7)throw kbError(_0x589062(0x21d),'Knowledge-base\x20content\x20file\x20path\x20is\x20required.',_0x589062(0x1ea));const _0x233666=resolve(_0xc353f7);let _0x4427ac;try{_0x4427ac=await stat(_0x233666);}catch(_0x217dc4){throw kbError(_0x589062(0x215),'Cannot\x20access\x20knowledge-base\x20content\x20file:\x20'+_0xc353f7,_0x217dc4 instanceof Error?_0x217dc4['message']:String(_0x217dc4));}if(!_0x4427ac[_0x589062(0x214)]())throw kbError(_0x589062(0x20b),_0x589062(0x216)+_0xc353f7);let _0x44fa38;try{_0x44fa38=await readFile(_0x233666);}catch(_0x245c2b){throw kbError(_0x589062(0x215),_0x589062(0x1e8)+_0xc353f7,_0x245c2b instanceof Error?_0x245c2b[_0x589062(0x225)]:String(_0x245c2b));}let _0x32f82f;try{_0x32f82f=new TextDecoder(_0x589062(0x1f5),{'fatal':!![],'ignoreBOM':!![]})['decode'](_0x44fa38);}catch{throw kbError(_0x589062(0x227),_0x589062(0x22d)+_0xc353f7);}if(!_0x32f82f[_0x589062(0x21c)]())throw kbError(_0x589062(0x227),_0x589062(0x21b)+_0xc353f7);return inspectKbContent(_0x32f82f);}export async function verifyKbMutationReadback(_0x116a4e,_0x2babaf,_0xce3ec7){const _0x138c9a=a104_0x4b1a26;try{return await _0xce3ec7();}catch(_0x188080){const _0x40c55b=kbError(_0x138c9a(0x234)+_0x116a4e+'_'+(_0x2babaf?_0x138c9a(0x22c):_0x138c9a(0x210)),_0x138c9a(0x236)+_0x116a4e+_0x138c9a(0x1f7),_0x138c9a(0x1fb));Object[_0x138c9a(0x209)](_0x40c55b,_0x138c9a(0x22b),{'value':_0x188080,'enumerable':![]});throw _0x40c55b;}}function requireRecordText(_0x172107,_0x2975a9,_0x2c571e,_0x59db27={}){const _0x470914=a104_0x4b1a26;if(typeof _0x172107===_0x470914(0x20e)&&(_0x59db27[_0x470914(0x206)]||_0x172107[_0x470914(0x21c)]()))return _0x172107;throw kbError('kb_response_invalid',_0x470914(0x20f)+String(_0x2c571e)+_0x470914(0x208)+_0x2975a9+'.');}export function projectKb(_0x5a89d7){const _0x176e55=a104_0x4b1a26;if(!Number[_0x176e55(0x237)](_0x5a89d7['id'])||_0x5a89d7['id']<=0x0)throw kbError(_0x176e55(0x221),_0x176e55(0x1e3));if(!Number[_0x176e55(0x237)](_0x5a89d7[_0x176e55(0x20a)])||_0x5a89d7[_0x176e55(0x20a)]<0x0)throw kbError('kb_response_invalid',_0x176e55(0x20f)+_0x5a89d7['id']+'\x20response\x20contains\x20an\x20invalid\x20version.');if(_0x5a89d7[_0x176e55(0x1e7)]!==_0x176e55(0x1ff))throw kbError('kb_scope_mismatch',_0x176e55(0x20f)+_0x5a89d7['id']+_0x176e55(0x229));const _0x14cc75=requireRecordText(_0x5a89d7['appCode'],_0x176e55(0x239),_0x5a89d7['id']),_0x5b35e5=requireRecordText(_0x5a89d7[_0x176e55(0x217)],'title',_0x5a89d7['id']),_0x4a650e=inspectKbContent(requireRecordText(_0x5a89d7[_0x176e55(0x228)],_0x176e55(0x228),_0x5a89d7['id'],{'allowEmpty':!![]})),_0x2f374e=typeof _0x5a89d7[_0x176e55(0x1fc)]===_0x176e55(0x20e)||typeof _0x5a89d7['createTime']===_0x176e55(0x1fd)?_0x5a89d7[_0x176e55(0x1fc)]:undefined,_0x54a2fb=typeof _0x5a89d7['updateTime']===_0x176e55(0x20e)||typeof _0x5a89d7[_0x176e55(0x204)]==='number'?_0x5a89d7[_0x176e55(0x204)]:undefined,_0x208ff4=sha256(JSON[_0x176e55(0x230)]({'id':_0x5a89d7['id'],'scope':_0x5a89d7[_0x176e55(0x1e7)],'appCode':_0x14cc75,'title':_0x5b35e5,'version':_0x5a89d7[_0x176e55(0x20a)],'contentHash':_0x4a650e[_0x176e55(0x1e6)],'createTime':_0x2f374e,'updateTime':_0x54a2fb}));return{'id':_0x5a89d7['id'],'scope':'company','appCode':_0x14cc75,'title':_0x5b35e5,'version':_0x5a89d7[_0x176e55(0x20a)],'contentByteSize':_0x4a650e[_0x176e55(0x1f1)],'contentHash':_0x4a650e[_0x176e55(0x1e6)],'snapshotHash':_0x208ff4,..._0x2f374e!==undefined?{'createTime':_0x2f374e}:{},..._0x54a2fb!==undefined?{'updateTime':_0x54a2fb}:{}};}export function assertCompanyKnowledgeBase(_0x10223f,_0x4e5787,_0x1f0482){const _0x41c3ba=a104_0x4b1a26;if(_0x1f0482!==undefined&&_0x10223f['id']!==_0x1f0482)throw kbError(_0x41c3ba(0x221),_0x41c3ba(0x1ec)+_0x10223f['id']+_0x41c3ba(0x1e2)+_0x1f0482+_0x41c3ba(0x1f3));if(_0x10223f[_0x41c3ba(0x1e7)]!==_0x41c3ba(0x1ff)||_0x10223f[_0x41c3ba(0x239)]!==_0x4e5787)throw kbError(_0x41c3ba(0x220),'Knowledge\x20base\x20'+_0x10223f['id']+_0x41c3ba(0x22e)+_0x4e5787+'.');}export async function fetchAllCompanyKnowledgeBases(_0x51dcba,_0x4bfb7f){const _0x4ace5e=a104_0x4b1a26,_0x17c693=[],_0x2a7e84=new Set();let _0xfc79a=0x1,_0x3031fd=0x0,_0x1691d9;while(!![]){const _0x2e5d50=await listEnterpriseKnowledgeBases(_0x51dcba[_0x4ace5e(0x232)],{'currentPage':_0xfc79a,'pageSize':LIST_PAGE_SIZE,'appCode':_0x51dcba[_0x4ace5e(0x239)],..._0x4bfb7f}),_0x7afc3=_0x2e5d50['paging']?.[_0x4ace5e(0x1fa)];if(_0x2e5d50[_0x4ace5e(0x203)]?.[_0x4ace5e(0x1e5)]!==undefined&&_0x2e5d50[_0x4ace5e(0x203)][_0x4ace5e(0x1e5)]!==_0xfc79a)throw kbError(_0x4ace5e(0x1e9),_0x4ace5e(0x1f4)+_0x2e5d50[_0x4ace5e(0x203)][_0x4ace5e(0x1e5)]+_0x4ace5e(0x222)+_0xfc79a+'\x20was\x20requested.');if(_0x7afc3!==undefined){if(_0x1691d9!==undefined&&_0x7afc3!==_0x1691d9)throw kbError(_0x4ace5e(0x1e9),_0x4ace5e(0x20c)+_0x1691d9+_0x4ace5e(0x1f0)+_0x7afc3+_0x4ace5e(0x1f8),'Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.');_0x1691d9=_0x7afc3;}for(const _0x1afded of _0x2e5d50[_0x4ace5e(0x223)]){if(!Number['isSafeInteger'](_0x1afded['id'])||_0x2a7e84[_0x4ace5e(0x1fe)](_0x1afded['id']))throw kbError(_0x4ace5e(0x1e9),_0x4ace5e(0x1f2)+String(_0x1afded['id'])+'.');_0x2a7e84[_0x4ace5e(0x205)](_0x1afded['id']),_0x1afded[_0x4ace5e(0x1e7)]===_0x4ace5e(0x1ff)&&_0x1afded[_0x4ace5e(0x239)]===_0x51dcba[_0x4ace5e(0x239)]&&_0x17c693[_0x4ace5e(0x21a)](_0x1afded);}_0x3031fd+=_0x2e5d50[_0x4ace5e(0x223)][_0x4ace5e(0x1eb)];if(_0x7afc3!==undefined&&_0x3031fd>=_0x7afc3)break;if(_0x2e5d50[_0x4ace5e(0x223)][_0x4ace5e(0x1eb)]<LIST_PAGE_SIZE){if(_0x7afc3!==undefined&&_0x3031fd<_0x7afc3)throw kbError(_0x4ace5e(0x1e9),'Knowledge-base\x20list\x20stopped\x20at\x20'+_0x3031fd+_0x4ace5e(0x1f9)+_0x7afc3+'\x20records.');break;}_0xfc79a+=0x1;}return _0x17c693;}function a104_0x4332(_0x113fb0,_0x13f85f){_0x113fb0=_0x113fb0-0x1e2;const _0x44eb38=a104_0x44eb();let _0x433223=_0x44eb38[_0x113fb0];return _0x433223;}function a104_0x44eb(){const _0x4d6a74=['cause','outcome_unknown','Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20','Company\x20knowledge\x20base\x20not\x20found:\x20','stringify','filter','cookie','Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.','kb_','kb_not_found','The\x20','isSafeInteger','digest','appCode','num','412215ZMIkGf','\x20while\x20id\x20','Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.','bool','currentPage','contentHash','scope','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','kb_list_contract_invalid','Pass\x20--file\x20<knowledge.md>.','length','Knowledge-base\x20get-one\x20returned\x20id\x20','595755yLmJin','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','17075ZWhZBH','\x20to\x20','byteSize','Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20','\x20was\x20requested.','Knowledge-base\x20list\x20returned\x20page\x20','utf-8','306','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','\x20during\x20paging.','\x20of\x20','totalCount','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','createTime','number','has','company','kb_confirmation_required','sha256','900208fAzXFL','paging','updateTime','add','allowEmpty','byteLength','\x20response\x20is\x20missing\x20','defineProperty','version','kb_file_invalid','Knowledge-base\x20list\x20total\x20changed\x20from\x20','232jnmGbF','string','Knowledge\x20base\x20','verification_unavailable','from','665FPvBsr','yes','isFile','kb_file_unreadable','Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','title','sha256:','dry-run','push','Knowledge-base\x20content\x20file\x20is\x20blank:\x20','trim','kb_file_required','2408091oClNTe','12678WWJiZx','kb_scope_mismatch','kb_response_invalid','\x20while\x20page\x20','items','hex','message','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.','kb_content_invalid','content','\x20is\x20not\x20company-scoped.','4311008UOwAMj'];a104_0x44eb=function(){return _0x4d6a74;};return a104_0x44eb();}export function findExactCompanyKnowledgeBases(_0x5e426a,_0x172c1c,_0x17d571){const _0x1df2b5=a104_0x4b1a26;return _0x5e426a[_0x1df2b5(0x231)](_0x1b4bc3=>_0x1b4bc3[_0x1df2b5(0x1e7)]===_0x1df2b5(0x1ff)&&_0x1b4bc3[_0x1df2b5(0x239)]===_0x172c1c&&_0x1b4bc3[_0x1df2b5(0x217)]===_0x17d571);}export async function getKbOrNull(_0x428d0a,_0x35c8d9){const _0x3b1315=a104_0x4b1a26;try{const _0x365686=await getEnterpriseKnowledgeBase(_0x428d0a[_0x3b1315(0x232)],_0x35c8d9);return assertCompanyKnowledgeBase(_0x365686,_0x428d0a['appCode'],_0x35c8d9),_0x365686;}catch(_0x151c3c){if(getPlatformErrorCode(_0x151c3c)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x151c3c;}}export async function requireKb(_0x3475ae,_0x124b9a){const _0x21e99d=a104_0x4b1a26,_0x2aed1f=await getKbOrNull(_0x3475ae,_0x124b9a);if(!_0x2aed1f)throw kbError(_0x21e99d(0x235),_0x21e99d(0x22f)+_0x124b9a,_0x21e99d(0x233));return _0x2aed1f;}export function assertExpectedKbVersion(_0x207c11,_0x3e82e3){const _0x578c27=a104_0x4b1a26;if(_0x3e82e3===undefined||_0x207c11[_0x578c27(0x20a)]===_0x3e82e3)return;throw kbError('kb_state_drift',_0x578c27(0x20f)+_0x207c11['id']+'\x20version\x20changed:\x20expected\x20'+_0x3e82e3+',\x20current\x20'+_0x207c11[_0x578c27(0x20a)]+'.',_0x578c27(0x226));}
1
+ const a104_0x1474cf=a104_0xf323;(function(_0x362bed,_0x411a0c){const _0x46ffa7=a104_0xf323,_0x2d7987=_0x362bed();while(!![]){try{const _0x2d085f=-parseInt(_0x46ffa7(0x1f4))/0x1*(parseInt(_0x46ffa7(0x1fc))/0x2)+-parseInt(_0x46ffa7(0x1b1))/0x3*(-parseInt(_0x46ffa7(0x202))/0x4)+parseInt(_0x46ffa7(0x1ab))/0x5+parseInt(_0x46ffa7(0x1ee))/0x6*(parseInt(_0x46ffa7(0x1fa))/0x7)+-parseInt(_0x46ffa7(0x1b9))/0x8+-parseInt(_0x46ffa7(0x1e0))/0x9*(parseInt(_0x46ffa7(0x1c2))/0xa)+parseInt(_0x46ffa7(0x1e8))/0xb;if(_0x2d085f===_0x411a0c)break;else _0x2d7987['push'](_0x2d7987['shift']());}catch(_0x453425){_0x2d7987['push'](_0x2d7987['shift']());}}}(a104_0xf45a,0x24b18));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';import{CliError}from'../../errors.js';const LIST_PAGE_SIZE=0x32,DATA_NOT_EXIST_ERROR_CODE=a104_0x1474cf(0x1d0);export function kbError(_0x428675,_0x197526,_0x2b85f2){return new CliError(_0x428675,0x1,_0x197526,_0x2b85f2);}export function readKbId(_0x43a99b){const _0x1e24b5=a104_0x1474cf,_0x15635b=_0x43a99b['num']('id');if(!Number[_0x1e24b5(0x1e5)](_0x15635b)||_0x15635b<=0x0)throw kbError(_0x1e24b5(0x1c5),_0x1e24b5(0x201));return _0x15635b;}export function requireKbExplicitYes(_0x194eb3){const _0x481123=a104_0x1474cf;if(_0x194eb3[_0x481123(0x1c8)](_0x481123(0x1d9))||_0x194eb3['bool'](_0x481123(0x1b8)))return;throw kbError(_0x481123(0x1dd),_0x481123(0x1e2),_0x481123(0x1fb));}function sha256(_0x357327){const _0x40f2ae=a104_0x1474cf;return _0x40f2ae(0x1ff)+createHash('sha256')[_0x40f2ae(0x1df)](_0x357327)[_0x40f2ae(0x1ad)]('hex');}function a104_0xf323(_0x113531,_0x3a735d){_0x113531=_0x113531-0x1a8;const _0xf45a7a=a104_0xf45a();let _0xf3234c=_0xf45a7a[_0x113531];return _0xf3234c;}export function inspectKbContent(_0x1ab1ea){const _0x190ea7=a104_0x1474cf,_0x46f752=Buffer[_0x190ea7(0x1c1)](_0x1ab1ea,_0x190ea7(0x1b2));return{'content':_0x1ab1ea,'byteSize':_0x46f752['byteLength'],'contentHash':sha256(_0x46f752)};}export async function readKbFile(_0x258fc6){const _0x394970=a104_0x1474cf,_0xb0d18=_0x258fc6['trim']();if(!_0xb0d18)throw kbError(_0x394970(0x1b4),_0x394970(0x1ea),_0x394970(0x1e9));const _0xe7f0b9=resolve(_0xb0d18);let _0x4a8bb3;try{_0x4a8bb3=await stat(_0xe7f0b9);}catch(_0x4e286d){throw kbError(_0x394970(0x1b7),_0x394970(0x1d4)+_0xb0d18,_0x4e286d instanceof Error?_0x4e286d[_0x394970(0x203)]:String(_0x4e286d));}if(!_0x4a8bb3['isFile']())throw kbError(_0x394970(0x1c0),_0x394970(0x1e7)+_0xb0d18);let _0x2b5584;try{_0x2b5584=await readFile(_0xe7f0b9);}catch(_0x295f34){throw kbError(_0x394970(0x1b7),_0x394970(0x1fd)+_0xb0d18,_0x295f34 instanceof Error?_0x295f34[_0x394970(0x203)]:String(_0x295f34));}let _0x14559b;try{_0x14559b=new TextDecoder('utf-8',{'fatal':!![],'ignoreBOM':!![]})[_0x394970(0x200)](_0x2b5584);}catch{throw kbError(_0x394970(0x1bb),_0x394970(0x1c6)+_0xb0d18);}if(!_0x14559b[_0x394970(0x1e4)]())throw kbError(_0x394970(0x1bb),_0x394970(0x1c4)+_0xb0d18);return inspectKbContent(_0x14559b);}function a104_0xf45a(){const _0x3c7c8b=['cause','trim','isSafeInteger','Knowledge-base\x20response\x20contains\x20an\x20invalid\x20id.','Knowledge-base\x20content\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','2299869QXBfCy','Pass\x20--file\x20<knowledge.md>.','Knowledge-base\x20content\x20file\x20path\x20is\x20required.','kb_not_found','Knowledge-base\x20get-one\x20returned\x20id\x20','add','6KyMlGw','Retry\x20the\x20read\x20after\x20concurrent\x20updates\x20have\x20settled.','length','\x20response\x20is\x20missing\x20','\x20during\x20paging.',',\x20current\x20','1EyoMBV','\x20while\x20page\x20','\x20is\x20not\x20company-scoped.','company','kb_','items','1448559DzJipd','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','494334UTXKzX','Cannot\x20read\x20knowledge-base\x20content\x20file:\x20','\x20version\x20changed:\x20expected\x20','sha256:','decode','--id\x20must\x20be\x20a\x20positive\x20safe\x20integer.','4owuFGG','message','outcome_unknown','version','Knowledge\x20base\x20','title','Run\x20`rabetbase\x20kb\x20list\x20--format\x20compress`\x20to\x20inspect\x20the\x20resolved\x20app.','verification_unavailable','paging','1468170XxljAa','appCode','digest','\x20of\x20','kb_response_invalid','\x20response\x20contains\x20an\x20invalid\x20version.','413121nStSld','utf8','kb_scope_mismatch','kb_file_required','createTime','\x20was\x20requested.','kb_file_unreadable','yes','1881248ketyHz','has','kb_content_invalid','content','contentHash','The\x20','Do\x20not\x20resubmit\x20automatically.\x20Resolve\x20the\x20app\x20again\x20and\x20inspect\x20the\x20target\x20state\x20manually.','kb_file_invalid','from','20qApleH','scope','Knowledge-base\x20content\x20file\x20is\x20blank:\x20','kb_id_invalid','Knowledge-base\x20content\x20file\x20is\x20not\x20valid\x20UTF-8:\x20','filter','bool','\x20does\x20not\x20belong\x20to\x20company\x20scope\x20for\x20app\x20','totalCount','\x20while\x20id\x20','\x20to\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20version\x20before\x20retrying.','\x20records.','\x20request\x20was\x20sent,\x20but\x20its\x20final\x20company\x20knowledge-base\x20state\x20could\x20not\x20be\x20verified.','306','kb_list_contract_invalid','kb_state_drift','defineProperty','Cannot\x20access\x20knowledge-base\x20content\x20file:\x20','cookie','Knowledge-base\x20list\x20stopped\x20at\x20','Company\x20knowledge\x20base\x20not\x20found:\x20','updateTime','dry-run','Knowledge-base\x20list\x20total\x20changed\x20from\x20','currentPage','number','kb_confirmation_required','stringify','update','966321QzEhxJ','Knowledge-base\x20list\x20returned\x20an\x20invalid\x20or\x20repeated\x20id:\x20','This\x20company\x20knowledge-base\x20mutation\x20requires\x20explicit\x20--yes.'];a104_0xf45a=function(){return _0x3c7c8b;};return a104_0xf45a();}export async function verifyKbMutationReadback(_0x1a554f,_0x29c75c,_0x2e1a35){const _0x48a109=a104_0x1474cf;try{return await _0x2e1a35();}catch(_0x3a72cc){const _0x4c0b04=kbError(_0x48a109(0x1f8)+_0x1a554f+'_'+(_0x29c75c?_0x48a109(0x204):_0x48a109(0x1a9)),_0x48a109(0x1be)+_0x1a554f+_0x48a109(0x1cf),_0x48a109(0x1bf));Object[_0x48a109(0x1d3)](_0x4c0b04,_0x48a109(0x1e3),{'value':_0x3a72cc,'enumerable':![]});throw _0x4c0b04;}}function requireRecordText(_0x499a47,_0x6e733e,_0x302408,_0x3db817={}){const _0x23e4b5=a104_0x1474cf;if(typeof _0x499a47==='string'&&(_0x3db817['allowEmpty']||_0x499a47[_0x23e4b5(0x1e4)]()))return _0x499a47;throw kbError('kb_response_invalid',_0x23e4b5(0x206)+String(_0x302408)+_0x23e4b5(0x1f1)+_0x6e733e+'.');}export function projectKb(_0x49ab1f){const _0x20146d=a104_0x1474cf;if(!Number[_0x20146d(0x1e5)](_0x49ab1f['id'])||_0x49ab1f['id']<=0x0)throw kbError(_0x20146d(0x1af),_0x20146d(0x1e6));if(!Number[_0x20146d(0x1e5)](_0x49ab1f[_0x20146d(0x205)])||_0x49ab1f['version']<0x0)throw kbError(_0x20146d(0x1af),'Knowledge\x20base\x20'+_0x49ab1f['id']+_0x20146d(0x1b0));if(_0x49ab1f[_0x20146d(0x1c3)]!==_0x20146d(0x1f7))throw kbError(_0x20146d(0x1b3),_0x20146d(0x206)+_0x49ab1f['id']+_0x20146d(0x1f6));const _0x1fb8bc=requireRecordText(_0x49ab1f[_0x20146d(0x1ac)],'appCode',_0x49ab1f['id']),_0x1cbec1=requireRecordText(_0x49ab1f[_0x20146d(0x207)],_0x20146d(0x207),_0x49ab1f['id']),_0xc8b0be=inspectKbContent(requireRecordText(_0x49ab1f[_0x20146d(0x1bc)],_0x20146d(0x1bc),_0x49ab1f['id'],{'allowEmpty':!![]})),_0x2a7d0b=typeof _0x49ab1f['createTime']==='string'||typeof _0x49ab1f[_0x20146d(0x1b5)]===_0x20146d(0x1dc)?_0x49ab1f[_0x20146d(0x1b5)]:undefined,_0x530c51=typeof _0x49ab1f[_0x20146d(0x1d8)]==='string'||typeof _0x49ab1f[_0x20146d(0x1d8)]===_0x20146d(0x1dc)?_0x49ab1f[_0x20146d(0x1d8)]:undefined,_0x13ebe8=sha256(JSON[_0x20146d(0x1de)]({'id':_0x49ab1f['id'],'scope':_0x49ab1f[_0x20146d(0x1c3)],'appCode':_0x1fb8bc,'title':_0x1cbec1,'version':_0x49ab1f['version'],'contentHash':_0xc8b0be[_0x20146d(0x1bd)],'createTime':_0x2a7d0b,'updateTime':_0x530c51}));return{'id':_0x49ab1f['id'],'scope':'company','appCode':_0x1fb8bc,'title':_0x1cbec1,'version':_0x49ab1f['version'],'contentByteSize':_0xc8b0be['byteSize'],'contentHash':_0xc8b0be[_0x20146d(0x1bd)],'snapshotHash':_0x13ebe8,..._0x2a7d0b!==undefined?{'createTime':_0x2a7d0b}:{},..._0x530c51!==undefined?{'updateTime':_0x530c51}:{}};}export function assertCompanyKnowledgeBase(_0x483e2b,_0x4a1a04,_0x3cf04a){const _0x2914f8=a104_0x1474cf;if(_0x3cf04a!==undefined&&_0x483e2b['id']!==_0x3cf04a)throw kbError(_0x2914f8(0x1af),_0x2914f8(0x1ec)+_0x483e2b['id']+_0x2914f8(0x1cb)+_0x3cf04a+_0x2914f8(0x1b6));if(_0x483e2b['scope']!==_0x2914f8(0x1f7)||_0x483e2b[_0x2914f8(0x1ac)]!==_0x4a1a04)throw kbError(_0x2914f8(0x1b3),'Knowledge\x20base\x20'+_0x483e2b['id']+_0x2914f8(0x1c9)+_0x4a1a04+'.');}export async function fetchAllCompanyKnowledgeBases(_0x451595,_0x767a11){const _0x90c883=a104_0x1474cf,_0x4aaaaf=[],_0x5580c3=new Set();let _0x327b77=0x1,_0x5432d7=0x0,_0x3ad5b9;while(!![]){const _0x22fc69=await listEnterpriseKnowledgeBases(_0x451595['cookie'],{'currentPage':_0x327b77,'pageSize':LIST_PAGE_SIZE,'appCode':_0x451595[_0x90c883(0x1ac)],..._0x767a11}),_0x46c382=_0x22fc69[_0x90c883(0x1aa)]?.[_0x90c883(0x1ca)];if(_0x22fc69[_0x90c883(0x1aa)]?.[_0x90c883(0x1db)]!==undefined&&_0x22fc69[_0x90c883(0x1aa)][_0x90c883(0x1db)]!==_0x327b77)throw kbError(_0x90c883(0x1d1),'Knowledge-base\x20list\x20returned\x20page\x20'+_0x22fc69[_0x90c883(0x1aa)][_0x90c883(0x1db)]+_0x90c883(0x1f5)+_0x327b77+_0x90c883(0x1b6));if(_0x46c382!==undefined){if(_0x3ad5b9!==undefined&&_0x46c382!==_0x3ad5b9)throw kbError(_0x90c883(0x1d1),_0x90c883(0x1da)+_0x3ad5b9+_0x90c883(0x1cc)+_0x46c382+_0x90c883(0x1f2),_0x90c883(0x1ef));_0x3ad5b9=_0x46c382;}for(const _0x53b8cf of _0x22fc69[_0x90c883(0x1f9)]){if(!Number['isSafeInteger'](_0x53b8cf['id'])||_0x5580c3[_0x90c883(0x1ba)](_0x53b8cf['id']))throw kbError('kb_list_contract_invalid',_0x90c883(0x1e1)+String(_0x53b8cf['id'])+'.');_0x5580c3[_0x90c883(0x1ed)](_0x53b8cf['id']),_0x53b8cf[_0x90c883(0x1c3)]==='company'&&_0x53b8cf['appCode']===_0x451595[_0x90c883(0x1ac)]&&_0x4aaaaf['push'](_0x53b8cf);}_0x5432d7+=_0x22fc69[_0x90c883(0x1f9)][_0x90c883(0x1f0)];if(_0x46c382!==undefined&&_0x5432d7>=_0x46c382)break;if(_0x22fc69[_0x90c883(0x1f9)]['length']<LIST_PAGE_SIZE){if(_0x46c382!==undefined&&_0x5432d7<_0x46c382)throw kbError(_0x90c883(0x1d1),_0x90c883(0x1d6)+_0x5432d7+_0x90c883(0x1ae)+_0x46c382+_0x90c883(0x1ce));break;}_0x327b77+=0x1;}return _0x4aaaaf;}export function findExactCompanyKnowledgeBases(_0x1b2770,_0x58668d,_0x39733a){const _0x162c14=a104_0x1474cf;return _0x1b2770[_0x162c14(0x1c7)](_0x7d7f84=>_0x7d7f84['scope']===_0x162c14(0x1f7)&&_0x7d7f84[_0x162c14(0x1ac)]===_0x58668d&&_0x7d7f84[_0x162c14(0x207)]===_0x39733a);}export async function getKbOrNull(_0xf3fe02,_0x150d6b){const _0x4343f1=a104_0x1474cf;try{const _0x243579=await getEnterpriseKnowledgeBase(_0xf3fe02[_0x4343f1(0x1d5)],_0x150d6b);return assertCompanyKnowledgeBase(_0x243579,_0xf3fe02[_0x4343f1(0x1ac)],_0x150d6b),_0x243579;}catch(_0x54cef9){if(getPlatformErrorCode(_0x54cef9)===DATA_NOT_EXIST_ERROR_CODE)return null;throw _0x54cef9;}}export async function requireKb(_0x12a732,_0x3623de){const _0x488c04=a104_0x1474cf,_0x4c9cab=await getKbOrNull(_0x12a732,_0x3623de);if(!_0x4c9cab)throw kbError(_0x488c04(0x1eb),_0x488c04(0x1d7)+_0x3623de,_0x488c04(0x1a8));return _0x4c9cab;}export function assertExpectedKbVersion(_0x143761,_0x45ed48){const _0x505550=a104_0x1474cf;if(_0x45ed48===undefined||_0x143761[_0x505550(0x205)]===_0x45ed48)return;throw kbError(_0x505550(0x1d2),'Knowledge\x20base\x20'+_0x143761['id']+_0x505550(0x1fe)+_0x45ed48+_0x505550(0x1f3)+_0x143761['version']+'.',_0x505550(0x1cd));}
@@ -1 +1 @@
1
- function a105_0x1e58(_0x166d1f,_0x346761){_0x166d1f=_0x166d1f-0x115;const _0x5830e6=a105_0x5830();let _0x1e5802=_0x5830e6[_0x166d1f];return _0x1e5802;}const a105_0x2ae079=a105_0x1e58;(function(_0x568ec7,_0x1822d8){const _0x15d57d=a105_0x1e58,_0x444022=_0x568ec7();while(!![]){try{const _0x24633f=-parseInt(_0x15d57d(0x11b))/0x1+parseInt(_0x15d57d(0x134))/0x2+parseInt(_0x15d57d(0x131))/0x3+-parseInt(_0x15d57d(0x144))/0x4*(parseInt(_0x15d57d(0x13a))/0x5)+parseInt(_0x15d57d(0x132))/0x6+parseInt(_0x15d57d(0x122))/0x7*(-parseInt(_0x15d57d(0x11c))/0x8)+parseInt(_0x15d57d(0x12c))/0x9*(parseInt(_0x15d57d(0x12e))/0xa);if(_0x24633f===_0x1822d8)break;else _0x444022['push'](_0x444022['shift']());}catch(_0xff472){_0x444022['push'](_0x444022['shift']());}}}(a105_0x5830,0xb1a3c));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_0x2ae079(0x127),NON_ATOMIC_WARNING=a105_0x2ae079(0x11e);function readUpdatePatch(_0x47ba1b){const _0x2d3a9a=a105_0x2ae079,_0xf2e8b9=readKbId(_0x47ba1b),_0x634596=_0x47ba1b['flag']('title'),_0x4ccb3f=_0x47ba1b['flag'](_0x2d3a9a(0x143)),_0x2ba146=_0x47ba1b[_0x2d3a9a(0x126)]('expected-version'),_0x487c80=_0x634596===undefined?undefined:String(_0x634596)[_0x2d3a9a(0x123)]();if(_0x634596!==undefined&&!_0x487c80)throw kbError(_0x2d3a9a(0x118),_0x2d3a9a(0x120));const _0x56ddfb=_0x4ccb3f===undefined?undefined:String(_0x4ccb3f)[_0x2d3a9a(0x123)]();if(_0x4ccb3f!==undefined&&!_0x56ddfb)throw kbError(_0x2d3a9a(0x11d),_0x2d3a9a(0x12d));if(_0x487c80===undefined&&_0x56ddfb===undefined)throw kbError(_0x2d3a9a(0x12f),_0x2d3a9a(0x146),'Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.');let _0x133650;if(_0x2ba146!==undefined){_0x133650=Number(_0x2ba146);if(!Number[_0x2d3a9a(0x116)](_0x133650)||_0x133650<0x0)throw kbError(_0x2d3a9a(0x130),_0x2d3a9a(0x11f));}return{'id':_0xf2e8b9,'title':_0x487c80,'file':_0x56ddfb,'expectedVersion':_0x133650};}function a105_0x5830(){const _0x45233a=['Nothing\x20to\x20update.','contentHash','kb_update_outcome_unknown','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','patch','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','replacement','isSafeInteger','version','kb_title_invalid','before','expectedVersion','689198qbeCiC','616744IdraNn','kb_file_required','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','--title\x20cannot\x20be\x20empty.','push','70trJlqC','trim','New\x20knowledge-base\x20title','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','flag','/admin/knowledge-base/update','planned','expected-version','Updated\x20company\x20knowledge\x20base\x20','company','468pxJijH','--file\x20cannot\x20be\x20empty.','54590ACHVjG','kb_update_empty','kb_expected_version_invalid','4318269bWoDDX','7118520Edmlbt','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','185608PuIcRD','content','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','update','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','\x20--format\x20compress','2875GpfSjP','cookie','number','Company\x20knowledge-base\x20id','POST','rabetbase\x20kb\x20detail\x20--id\x20','beforeRecord','title','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','file','5668ulWTkZ','appCode'];a105_0x5830=function(){return _0x45233a;};return a105_0x5830();}async function prepareUpdate(_0x32c286){const _0x4ae602=a105_0x2ae079,_0x107c2e=readUpdatePatch(_0x32c286),_0xc40aeb=await requireKb(_0x32c286,_0x107c2e['id']);assertExpectedKbVersion(_0xc40aeb,_0x107c2e[_0x4ae602(0x11a)]);const _0x9291e6=_0x107c2e[_0x4ae602(0x143)]?await readKbFile(_0x107c2e[_0x4ae602(0x143)]):undefined,_0x319af1=projectKb(_0xc40aeb),_0x182dc6=projectKb({..._0xc40aeb,..._0x107c2e[_0x4ae602(0x141)]!==undefined?{'title':_0x107c2e[_0x4ae602(0x141)]}:{},..._0x9291e6?{'content':_0x9291e6[_0x4ae602(0x135)]}:{}});return{'patch':_0x107c2e,'beforeRecord':_0xc40aeb,'before':_0x319af1,'planned':_0x182dc6,'replacement':_0x9291e6};}export const kbUpdate={'service':'kb','command':a105_0x2ae079(0x137),'description':a105_0x2ae079(0x125),'risk':'high-risk-write','requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':a105_0x2ae079(0x13c),'required':!![],'description':a105_0x2ae079(0x13d)},{'name':a105_0x2ae079(0x141),'type':'string','required':![],'description':a105_0x2ae079(0x124)},{'name':'file','type':'string','required':![],'description':a105_0x2ae079(0x14b)},{'name':a105_0x2ae079(0x129),'type':'number','required':![],'description':a105_0x2ae079(0x136)}],async 'validate'(_0x304138){readUpdatePatch(_0x304138),requireKbExplicitYes(_0x304138);},async 'dryRun'(_0x5f125d){const _0x5ec235=a105_0x2ae079,_0x5b15e2=await prepareUpdate(_0x5f125d),_0x1662b5=_0x5b15e2[_0x5ec235(0x14a)]['expectedVersion']!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x5ec235(0x137),'selector':{'id':_0x5b15e2['before']['id'],'scope':'company','appCode':_0x5b15e2[_0x5ec235(0x119)][_0x5ec235(0x145)]},'before':_0x5b15e2[_0x5ec235(0x119)],'after':_0x5b15e2[_0x5ec235(0x128)],'dryRun':!![],'backend':{'method':_0x5ec235(0x13e),'path':UPDATE_PATH},'warnings':_0x1662b5,'verification':{'expectedVersion':_0x5b15e2['patch'][_0x5ec235(0x11a)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x5b15e2[_0x5ec235(0x119)]['snapshotHash'],'lookupCommand':_0x5ec235(0x13f)+_0x5b15e2[_0x5ec235(0x119)]['id']+'\x20--format\x20compress'}},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x3f1e65){const _0x4c2a0a=a105_0x2ae079;requireKbExplicitYes(_0x3f1e65);const _0x3a207b=await prepareUpdate(_0x3f1e65),_0x3d43f7={'id':_0x3a207b[_0x4c2a0a(0x14a)]['id'],..._0x3a207b[_0x4c2a0a(0x14a)][_0x4c2a0a(0x141)]!==undefined?{'title':_0x3a207b[_0x4c2a0a(0x14a)][_0x4c2a0a(0x141)]}:{},..._0x3a207b['replacement']?{'content':_0x3a207b['replacement'][_0x4c2a0a(0x135)]}:{}};let _0x4f10e0=![];try{const _0x4ac810=await updateEnterpriseKnowledgeBase(_0x3f1e65[_0x4c2a0a(0x13b)],_0x3d43f7);assertCompanyKnowledgeBase(_0x4ac810,_0x3f1e65[_0x4c2a0a(0x145)],_0x3a207b[_0x4c2a0a(0x14a)]['id']);}catch(_0x4e487a){if(!isPlatformTransportFailure(_0x4e487a))throw _0x4e487a;_0x4f10e0=!![];}const _0x3588ae=await verifyKbMutationReadback(_0x4c2a0a(0x137),_0x4f10e0,()=>requireKb(_0x3f1e65,_0x3a207b[_0x4c2a0a(0x14a)]['id'])),_0x1c3c73=projectKb(_0x3588ae),_0x570c7e=_0x3a207b[_0x4c2a0a(0x14a)][_0x4c2a0a(0x141)]===undefined||_0x3588ae[_0x4c2a0a(0x141)]===_0x3a207b[_0x4c2a0a(0x14a)]['title'],_0x4c3f90=!_0x3a207b[_0x4c2a0a(0x115)]||inspectKbContent(_0x3588ae[_0x4c2a0a(0x135)])[_0x4c2a0a(0x147)]===_0x3a207b[_0x4c2a0a(0x115)][_0x4c2a0a(0x147)],_0x41b186=!_0x3a207b['replacement']||_0x3588ae[_0x4c2a0a(0x117)]>_0x3a207b[_0x4c2a0a(0x140)][_0x4c2a0a(0x117)],_0x21331f=!_0x4f10e0||_0x3a207b[_0x4c2a0a(0x115)]!==undefined||_0x3a207b[_0x4c2a0a(0x14a)]['title']===undefined||_0x3a207b[_0x4c2a0a(0x140)]['title']!==_0x3a207b[_0x4c2a0a(0x14a)][_0x4c2a0a(0x141)];if(!_0x570c7e||!_0x4c3f90||!_0x41b186||!_0x21331f)throw kbError(_0x4f10e0?_0x4c2a0a(0x148):'kb_verification_failed','Company\x20knowledge\x20base\x20'+_0x3a207b['patch']['id']+_0x4c2a0a(0x133),_0x4c2a0a(0x149)+_0x3a207b[_0x4c2a0a(0x14a)]['id']+_0x4c2a0a(0x142));const _0x14c229=[];return _0x3a207b[_0x4c2a0a(0x14a)][_0x4c2a0a(0x11a)]!==undefined&&_0x14c229[_0x4c2a0a(0x121)](NON_ATOMIC_WARNING),_0x4f10e0&&_0x14c229[_0x4c2a0a(0x121)](_0x4c2a0a(0x138)),{'ok':!![],'data':{'operation':'update','selector':{'id':_0x1c3c73['id'],'scope':_0x4c2a0a(0x12b),'appCode':_0x1c3c73[_0x4c2a0a(0x145)]},'before':_0x3a207b[_0x4c2a0a(0x119)],'after':_0x1c3c73,'dryRun':![],'backend':{'method':_0x4c2a0a(0x13e),'path':UPDATE_PATH},'warnings':_0x14c229,'verification':{'status':'verified','recoveredAfterUnknownResponse':_0x4f10e0,'expectedVersion':_0x3a207b[_0x4c2a0a(0x14a)][_0x4c2a0a(0x11a)]??null,'atomicCompareAndSet':![],'lookupCommand':_0x4c2a0a(0x13f)+_0x1c3c73['id']+_0x4c2a0a(0x139)}},'message':_0x4c2a0a(0x12a)+_0x1c3c73['id']};}};
1
+ const a105_0xcaa95f=a105_0x1167;(function(_0x4902a4,_0x313322){const _0x4f75ab=a105_0x1167,_0x4090ab=_0x4902a4();while(!![]){try{const _0x4f77ea=parseInt(_0x4f75ab(0x10a))/0x1+parseInt(_0x4f75ab(0x113))/0x2+parseInt(_0x4f75ab(0x103))/0x3*(parseInt(_0x4f75ab(0x10b))/0x4)+-parseInt(_0x4f75ab(0x124))/0x5+-parseInt(_0x4f75ab(0x128))/0x6+parseInt(_0x4f75ab(0x106))/0x7*(-parseInt(_0x4f75ab(0x115))/0x8)+parseInt(_0x4f75ab(0x11d))/0x9*(parseInt(_0x4f75ab(0x119))/0xa);if(_0x4f77ea===_0x313322)break;else _0x4090ab['push'](_0x4090ab['shift']());}catch(_0xd94bfb){_0x4090ab['push'](_0x4090ab['shift']());}}}(a105_0x590b,0xaaf59));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_0xcaa95f(0x127);function readUpdatePatch(_0xe9263f){const _0x1af124=a105_0xcaa95f,_0x220435=readKbId(_0xe9263f),_0x19c8d8=_0xe9263f[_0x1af124(0x110)](_0x1af124(0x11a)),_0x385c74=_0xe9263f['flag'](_0x1af124(0x114)),_0x4688fa=_0xe9263f[_0x1af124(0x110)](_0x1af124(0x120)),_0x528d81=_0x19c8d8===undefined?undefined:String(_0x19c8d8)[_0x1af124(0x108)]();if(_0x19c8d8!==undefined&&!_0x528d81)throw kbError('kb_title_invalid','--title\x20cannot\x20be\x20empty.');const _0x1bc45c=_0x385c74===undefined?undefined:String(_0x385c74)[_0x1af124(0x108)]();if(_0x385c74!==undefined&&!_0x1bc45c)throw kbError(_0x1af124(0x10e),_0x1af124(0xfc));if(_0x528d81===undefined&&_0x1bc45c===undefined)throw kbError(_0x1af124(0x125),_0x1af124(0x105),_0x1af124(0x123));let _0x101c96;if(_0x4688fa!==undefined){_0x101c96=Number(_0x4688fa);if(!Number['isSafeInteger'](_0x101c96)||_0x101c96<0x0)throw kbError('kb_expected_version_invalid',_0x1af124(0xfe));}return{'id':_0x220435,'title':_0x528d81,'file':_0x1bc45c,'expectedVersion':_0x101c96};}function a105_0x590b(){const _0x4fc256=['title','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','115470mcDzZZ','rabetbase\x20kb\x20detail\x20--id\x20','kb_verification_failed','expected-version','string','New\x20knowledge-base\x20title','Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.','4338910GufkKZ','kb_update_empty','patch','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','4868142QoXTHl','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','version','replacement','appCode','POST','--file\x20cannot\x20be\x20empty.','number','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','cookie','before','Company\x20knowledge\x20base\x20','3PSLFfN','verified','Nothing\x20to\x20update.','2109569JFWxvd','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','trim','expectedVersion','554821ccgTVL','519460ZoFBYv','company','contentHash','kb_file_required','push','flag','\x20--format\x20compress','beforeRecord','2092746lKuVWn','file','24NCEXVc','Company\x20knowledge-base\x20id','update','kb_update_outcome_unknown','1210IfWkcL'];a105_0x590b=function(){return _0x4fc256;};return a105_0x590b();}async function prepareUpdate(_0x5175a3){const _0x30e939=a105_0xcaa95f,_0x2abfc1=readUpdatePatch(_0x5175a3),_0x43e99e=await requireKb(_0x5175a3,_0x2abfc1['id']);assertExpectedKbVersion(_0x43e99e,_0x2abfc1[_0x30e939(0x109)]);const _0x206d12=_0x2abfc1[_0x30e939(0x114)]?await readKbFile(_0x2abfc1[_0x30e939(0x114)]):undefined,_0x51fed9=projectKb(_0x43e99e),_0x510186=projectKb({..._0x43e99e,..._0x2abfc1[_0x30e939(0x11a)]!==undefined?{'title':_0x2abfc1[_0x30e939(0x11a)]}:{},..._0x206d12?{'content':_0x206d12['content']}:{}});return{'patch':_0x2abfc1,'beforeRecord':_0x43e99e,'before':_0x51fed9,'planned':_0x510186,'replacement':_0x206d12};}function a105_0x1167(_0x1ae639,_0x48899f){_0x1ae639=_0x1ae639-0xfb;const _0x590baa=a105_0x590b();let _0x11676a=_0x590baa[_0x1ae639];return _0x11676a;}export const kbUpdate={'service':'kb','command':'update','description':'Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','risk':'high-risk-write','requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':'number','required':!![],'description':a105_0xcaa95f(0x116)},{'name':a105_0xcaa95f(0x11a),'type':a105_0xcaa95f(0x121),'required':![],'description':a105_0xcaa95f(0x122)},{'name':'file','type':'string','required':![],'description':a105_0xcaa95f(0x107)},{'name':a105_0xcaa95f(0x120),'type':a105_0xcaa95f(0xfd),'required':![],'description':a105_0xcaa95f(0x11b)}],async 'validate'(_0x4cd95d){readUpdatePatch(_0x4cd95d),requireKbExplicitYes(_0x4cd95d);},async 'dryRun'(_0x1693ea){const _0x54c2e9=a105_0xcaa95f,_0x912e33=await prepareUpdate(_0x1693ea),_0x1df792=_0x912e33[_0x54c2e9(0x126)][_0x54c2e9(0x109)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x54c2e9(0x117),'selector':{'id':_0x912e33[_0x54c2e9(0x101)]['id'],'scope':_0x54c2e9(0x10c),'appCode':_0x912e33['before']['appCode']},'before':_0x912e33[_0x54c2e9(0x101)],'after':_0x912e33['planned'],'dryRun':!![],'backend':{'method':_0x54c2e9(0xfb),'path':UPDATE_PATH},'warnings':_0x1df792,'verification':{'expectedVersion':_0x912e33[_0x54c2e9(0x126)][_0x54c2e9(0x109)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x912e33[_0x54c2e9(0x101)]['snapshotHash'],'lookupCommand':_0x54c2e9(0x11e)+_0x912e33['before']['id']+'\x20--format\x20compress'}},{'method':_0x54c2e9(0xfb),'url':UPDATE_PATH});},async 'execute'(_0x5e9688){const _0x1864e3=a105_0xcaa95f;requireKbExplicitYes(_0x5e9688);const _0x1e93ec=await prepareUpdate(_0x5e9688),_0x4a7013={'id':_0x1e93ec['patch']['id'],..._0x1e93ec[_0x1864e3(0x126)][_0x1864e3(0x11a)]!==undefined?{'title':_0x1e93ec[_0x1864e3(0x126)][_0x1864e3(0x11a)]}:{},..._0x1e93ec[_0x1864e3(0x12b)]?{'content':_0x1e93ec['replacement']['content']}:{}};let _0x19acd0=![];try{const _0xa5c62e=await updateEnterpriseKnowledgeBase(_0x5e9688[_0x1864e3(0x100)],_0x4a7013);assertCompanyKnowledgeBase(_0xa5c62e,_0x5e9688[_0x1864e3(0x12c)],_0x1e93ec['patch']['id']);}catch(_0x5bb583){if(!isPlatformTransportFailure(_0x5bb583))throw _0x5bb583;_0x19acd0=!![];}const _0x4c9bd8=await verifyKbMutationReadback(_0x1864e3(0x117),_0x19acd0,()=>requireKb(_0x5e9688,_0x1e93ec[_0x1864e3(0x126)]['id'])),_0x2a9776=projectKb(_0x4c9bd8),_0x3e2240=_0x1e93ec[_0x1864e3(0x126)][_0x1864e3(0x11a)]===undefined||_0x4c9bd8[_0x1864e3(0x11a)]===_0x1e93ec[_0x1864e3(0x126)]['title'],_0x5d1d9c=!_0x1e93ec['replacement']||inspectKbContent(_0x4c9bd8['content'])[_0x1864e3(0x10d)]===_0x1e93ec[_0x1864e3(0x12b)][_0x1864e3(0x10d)],_0x49b7c0=!_0x1e93ec[_0x1864e3(0x12b)]||_0x4c9bd8[_0x1864e3(0x12a)]>_0x1e93ec[_0x1864e3(0x112)][_0x1864e3(0x12a)],_0x42433c=!_0x19acd0||_0x1e93ec[_0x1864e3(0x12b)]!==undefined||_0x1e93ec[_0x1864e3(0x126)][_0x1864e3(0x11a)]===undefined||_0x1e93ec[_0x1864e3(0x112)][_0x1864e3(0x11a)]!==_0x1e93ec[_0x1864e3(0x126)][_0x1864e3(0x11a)];if(!_0x3e2240||!_0x5d1d9c||!_0x49b7c0||!_0x42433c)throw kbError(_0x19acd0?_0x1864e3(0x118):_0x1864e3(0x11f),_0x1864e3(0x102)+_0x1e93ec[_0x1864e3(0x126)]['id']+'\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.',_0x1864e3(0xff)+_0x1e93ec[_0x1864e3(0x126)]['id']+_0x1864e3(0x129));const _0x3cfd16=[];return _0x1e93ec[_0x1864e3(0x126)][_0x1864e3(0x109)]!==undefined&&_0x3cfd16[_0x1864e3(0x10f)](NON_ATOMIC_WARNING),_0x19acd0&&_0x3cfd16['push'](_0x1864e3(0x11c)),{'ok':!![],'data':{'operation':_0x1864e3(0x117),'selector':{'id':_0x2a9776['id'],'scope':'company','appCode':_0x2a9776[_0x1864e3(0x12c)]},'before':_0x1e93ec[_0x1864e3(0x101)],'after':_0x2a9776,'dryRun':![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0x3cfd16,'verification':{'status':_0x1864e3(0x104),'recoveredAfterUnknownResponse':_0x19acd0,'expectedVersion':_0x1e93ec[_0x1864e3(0x126)]['expectedVersion']??null,'atomicCompareAndSet':![],'lookupCommand':'rabetbase\x20kb\x20detail\x20--id\x20'+_0x2a9776['id']+_0x1864e3(0x111)}},'message':'Updated\x20company\x20knowledge\x20base\x20'+_0x2a9776['id']};}};
@@ -1 +1 @@
1
- const a106_0x4e2f7a=a106_0x1f81;(function(_0x2797a2,_0x24424f){const _0x1dad34=a106_0x1f81,_0x456cda=_0x2797a2();while(!![]){try{const _0x3c180e=parseInt(_0x1dad34(0xe2))/0x1+parseInt(_0x1dad34(0xe9))/0x2+-parseInt(_0x1dad34(0xe4))/0x3*(-parseInt(_0x1dad34(0xd9))/0x4)+-parseInt(_0x1dad34(0xdd))/0x5*(parseInt(_0x1dad34(0xcc))/0x6)+parseInt(_0x1dad34(0xe5))/0x7+parseInt(_0x1dad34(0xd5))/0x8+-parseInt(_0x1dad34(0xdb))/0x9;if(_0x3c180e===_0x24424f)break;else _0x456cda['push'](_0x456cda['shift']());}catch(_0x2cf9e){_0x456cda['push'](_0x456cda['shift']());}}}(a106_0x1e01,0x44902));import{logger}from'../../utils/logger.js';function printLogs(_0x395124){const _0x47bbb7=a106_0x1f81;if(_0x395124['length']===0x0){console[_0x47bbb7(0xca)](_0x47bbb7(0xe8));return;}console[_0x47bbb7(0xca)](_0x47bbb7(0xe7)),_0x395124[_0x47bbb7(0xe1)]((_0x341aa0,_0x2a3533)=>{const _0x12a205=_0x47bbb7,_0x35812e=new Date(_0x341aa0['timestamp'])[_0x12a205(0xda)](_0x12a205(0xcb)),_0x294f81=_0x341aa0[_0x12a205(0xe6)]==='success'?'√':_0x341aa0[_0x12a205(0xe6)]===_0x12a205(0xd6)?'×':_0x341aa0[_0x12a205(0xe6)]==='warn'?'!':'i';console[_0x12a205(0xca)](_0x2a3533+0x1+'.\x20'+_0x294f81+'\x20['+_0x341aa0[_0x12a205(0xd8)]+']\x20'+_0x341aa0[_0x12a205(0xde)]),console[_0x12a205(0xca)](_0x12a205(0xcd)+_0x35812e),_0x341aa0['duration']&&console['log']('\x20\x20\x20Duration:\x20'+_0x341aa0[_0x12a205(0xe3)]+'ms'),_0x341aa0[_0x12a205(0xd7)]&&Object[_0x12a205(0xe0)](_0x341aa0['details'])[_0x12a205(0xd4)]>0x0&&console[_0x12a205(0xca)](_0x12a205(0xd1)+JSON[_0x12a205(0xdf)](_0x341aa0[_0x12a205(0xd7)],null,0x2)),console[_0x12a205(0xca)]('');});}function a106_0x1f81(_0x560cd2,_0x43f708){_0x560cd2=_0x560cd2-0xc9;const _0x1e0132=a106_0x1e01();let _0x1f81b9=_0x1e0132[_0x560cd2];return _0x1f81b9;}export const logsDefinitions=[{'service':a106_0x4e2f7a(0xdc),'command':a106_0x4e2f7a(0xce),'description':a106_0x4e2f7a(0xd2),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4d6a93){return printLogs(logger['readLogs']()),{'ok':!![]};}},{'service':a106_0x4e2f7a(0xdc),'command':a106_0x4e2f7a(0xd0),'description':a106_0x4e2f7a(0xcf),'risk':a106_0x4e2f7a(0xd3),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x58e57b){const _0x145ec4=a106_0x4e2f7a;return logger['clearLogs'](),console['log'](_0x145ec4(0xc9)),{'ok':!![]};}}];function a106_0x1e01(){const _0x3075b5=['Clear\x20command\x20history\x20logs','clear','\x20\x20\x20Details:\x20','View\x20command\x20history\x20logs','write','length','2018264pDiKLX','error','details','command','32ZYaLYL','toLocaleString','2290311UTKyrE','logs','565VXuVBD','message','stringify','keys','forEach','363341VWGzoy','duration','45717VxqDkK','922936zzTwIu','level','*\x20Lovrabet\x20CLI\x20logs:\x0a','*\x20No\x20logs\x20found','373944tvWPgU','*\x20Logs\x20cleared','log','en-US','27666mdzYMb','\x20\x20\x20Time:\x20','show'];a106_0x1e01=function(){return _0x3075b5;};return a106_0x1e01();}
1
+ const a106_0x221489=a106_0x3ee8;function a106_0x3ee8(_0x27459b,_0x16dd6f){_0x27459b=_0x27459b-0x152;const _0x21712c=a106_0x2171();let _0x3ee80f=_0x21712c[_0x27459b];return _0x3ee80f;}(function(_0x236322,_0x26f03c){const _0x3c0f2d=a106_0x3ee8,_0x5147ce=_0x236322();while(!![]){try{const _0xe49e57=parseInt(_0x3c0f2d(0x15c))/0x1*(-parseInt(_0x3c0f2d(0x167))/0x2)+parseInt(_0x3c0f2d(0x152))/0x3*(-parseInt(_0x3c0f2d(0x165))/0x4)+-parseInt(_0x3c0f2d(0x159))/0x5*(parseInt(_0x3c0f2d(0x172))/0x6)+parseInt(_0x3c0f2d(0x170))/0x7*(-parseInt(_0x3c0f2d(0x15a))/0x8)+-parseInt(_0x3c0f2d(0x156))/0x9+-parseInt(_0x3c0f2d(0x174))/0xa*(parseInt(_0x3c0f2d(0x16d))/0xb)+parseInt(_0x3c0f2d(0x154))/0xc;if(_0xe49e57===_0x26f03c)break;else _0x5147ce['push'](_0x5147ce['shift']());}catch(_0x17ce1e){_0x5147ce['push'](_0x5147ce['shift']());}}}(a106_0x2171,0xbceca));import{logger}from'../../utils/logger.js';function printLogs(_0x101b61){const _0x5ea851=a106_0x3ee8;if(_0x101b61['length']===0x0){console['log'](_0x5ea851(0x16e));return;}console[_0x5ea851(0x164)](_0x5ea851(0x171)),_0x101b61[_0x5ea851(0x160)]((_0x2324dc,_0x4be023)=>{const _0x2b43e1=_0x5ea851,_0x37594b=new Date(_0x2324dc[_0x2b43e1(0x168)])[_0x2b43e1(0x16f)](_0x2b43e1(0x16c)),_0x2aa31e=_0x2324dc[_0x2b43e1(0x153)]==='success'?'√':_0x2324dc[_0x2b43e1(0x153)]==='error'?'×':_0x2324dc[_0x2b43e1(0x153)]===_0x2b43e1(0x16b)?'!':'i';console[_0x2b43e1(0x164)](_0x4be023+0x1+'.\x20'+_0x2aa31e+'\x20['+_0x2324dc['command']+']\x20'+_0x2324dc[_0x2b43e1(0x163)]),console['log'](_0x2b43e1(0x173)+_0x37594b),_0x2324dc['duration']&&console[_0x2b43e1(0x164)]('\x20\x20\x20Duration:\x20'+_0x2324dc[_0x2b43e1(0x16a)]+'ms'),_0x2324dc[_0x2b43e1(0x155)]&&Object['keys'](_0x2324dc[_0x2b43e1(0x155)])[_0x2b43e1(0x157)]>0x0&&console[_0x2b43e1(0x164)](_0x2b43e1(0x166)+JSON['stringify'](_0x2324dc[_0x2b43e1(0x155)],null,0x2)),console[_0x2b43e1(0x164)]('');});}export const logsDefinitions=[{'service':a106_0x221489(0x15b),'command':a106_0x221489(0x169),'description':a106_0x221489(0x15e),'risk':a106_0x221489(0x158),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x658cb1){return printLogs(logger['readLogs']()),{'ok':!![]};}},{'service':a106_0x221489(0x15b),'command':a106_0x221489(0x161),'description':a106_0x221489(0x15f),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x99a12e){const _0x551239=a106_0x221489;return logger[_0x551239(0x15d)](),console[_0x551239(0x164)](_0x551239(0x162)),{'ok':!![]};}}];function a106_0x2171(){const _0xb33a11=['\x20\x20\x20Time:\x20','23730gwcowe','3hzcdKX','level','70707912PnoPPJ','details','4966848AinVyb','length','read','2365HYIWoR','800824VdQRxn','logs','22433qKIGMR','clearLogs','View\x20command\x20history\x20logs','Clear\x20command\x20history\x20logs','forEach','clear','*\x20Logs\x20cleared','message','log','5412604brEcNG','\x20\x20\x20Details:\x20','82bbQhEF','timestamp','show','duration','warn','en-US','682MkfICI','*\x20No\x20logs\x20found','toLocaleString','91NoWiaP','*\x20Lovrabet\x20CLI\x20logs:\x0a','10722zAWQuw'];a106_0x2171=function(){return _0xb33a11;};return a106_0x2171();}
@@ -1 +1 @@
1
- const a107_0xd31b9e=a107_0xe87f;(function(_0x26603e,_0x58d168){const _0x32b8e7=a107_0xe87f,_0xee62e=_0x26603e();while(!![]){try{const _0x583419=-parseInt(_0x32b8e7(0x1a5))/0x1+parseInt(_0x32b8e7(0x1c2))/0x2+parseInt(_0x32b8e7(0x1bc))/0x3*(-parseInt(_0x32b8e7(0x1b7))/0x4)+parseInt(_0x32b8e7(0x1f3))/0x5*(-parseInt(_0x32b8e7(0x1a7))/0x6)+parseInt(_0x32b8e7(0x19e))/0x7*(parseInt(_0x32b8e7(0x1ef))/0x8)+-parseInt(_0x32b8e7(0x1eb))/0x9+parseInt(_0x32b8e7(0x1d4))/0xa;if(_0x583419===_0x58d168)break;else _0xee62e['push'](_0xee62e['shift']());}catch(_0x580565){_0xee62e['push'](_0xee62e['shift']());}}}(a107_0xf930,0x3a9cd));import a107_0x5bf979 from'chalk';function a107_0xe87f(_0x2d3184,_0x301e83){_0x2d3184=_0x2d3184-0x19d;const _0xf930c3=a107_0xf930();let _0xe87fbd=_0xf930c3[_0x2d3184];return _0xe87fbd;}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';import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':'menu','command':'asset-update','description':a107_0xd31b9e(0x1a2),'risk':a107_0xd31b9e(0x1bf),'flags':[{'name':a107_0xd31b9e(0x1ee),'type':'string','description':'Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20'+'JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}'},{'name':a107_0xd31b9e(0x1b6),'type':'string','description':a107_0xd31b9e(0x1be)+a107_0xd31b9e(0x1cc),'enum':[a107_0xd31b9e(0x1c8),a107_0xd31b9e(0x1e0)],'default':'patch'},{'name':a107_0xd31b9e(0x1a1),'type':a107_0xd31b9e(0x1c4),'description':a107_0xd31b9e(0x1b2)},{'name':'menu-ids','type':a107_0xd31b9e(0x1d5),'description':a107_0xd31b9e(0x1e3)},{'name':a107_0xd31b9e(0x1d9),'type':'string','description':'Exact\x20comma-separated\x20menu\x20paths\x20to\x20update'},{'name':a107_0xd31b9e(0x1de),'type':a107_0xd31b9e(0x1c4),'description':a107_0xd31b9e(0x1df)},{'name':a107_0xd31b9e(0x1a8),'type':'string','enum':[a107_0xd31b9e(0x1db),a107_0xd31b9e(0x1cd),a107_0xd31b9e(0x1e2)],'description':a107_0xd31b9e(0x1d3)}],async 'dryRun'(_0x248ef6){const _0x12ebe4=a107_0xd31b9e;ensureRunnableContext(_0x248ef6[_0x12ebe4(0x1d8)],_0x248ef6[_0x12ebe4(0x1e6)]);const _0xfce768=await runMenuUpdateCore(_0x248ef6[_0x12ebe4(0x1e7)],_0x248ef6[_0x12ebe4(0x1e8)],_0x248ef6[_0x12ebe4(0x1c7)]('params'),{'mode':parseMode(_0x248ef6[_0x12ebe4(0x1c7)]('mode')),'dryRun':!![],'force':_0x248ef6['bool']('force'),'selection':parseSelection(_0x248ef6),'loadScriptMode':parseLoadScriptMode(_0x248ef6[_0x12ebe4(0x1c7)](_0x12ebe4(0x1a8)))});return{'method':'POST','url':_0x12ebe4(0x1d6),'body':_0xfce768,'description':_0xfce768['skipped']?_0x12ebe4(0x1a9):_0x12ebe4(0x1d1)+(_0xfce768[_0x12ebe4(0x1b1)]?.['length']??0x0)+_0x12ebe4(0x1c3)};},async 'execute'(_0x1d9f20){const _0x471e03=a107_0xd31b9e;ensureRunnableContext(_0x1d9f20['rawFlags'],_0x1d9f20[_0x471e03(0x1e6)]);const _0x542889=_0x1d9f20[_0x471e03(0x1a6)]('yes'),_0x3e5825=_0x1d9f20[_0x471e03(0x1c7)](_0x471e03(0x1ee)),_0x5ec290=parseMode(_0x1d9f20[_0x471e03(0x1c7)](_0x471e03(0x1b6))),_0x371e5f=_0x1d9f20[_0x471e03(0x1a3)](_0x471e03(0x1a1)),_0x41191a=parseLoadScriptMode(_0x1d9f20[_0x471e03(0x1c7)]('load-mode')),_0x29e47b=parseParams(_0x3e5825),_0x4e1956=!!(_0x29e47b[_0x471e03(0x1d2)]||_0x29e47b[_0x471e03(0x1af)]);if(_0x542889||_0x4e1956&&!isInteractive()){const _0x5c8a44=await runMenuUpdateCore(_0x1d9f20[_0x471e03(0x1e7)],_0x1d9f20[_0x471e03(0x1e8)],_0x3e5825,{'mode':_0x5ec290,'force':_0x371e5f,'selection':parseSelection(_0x1d9f20),'loadScriptMode':_0x41191a});return _0x5c8a44[_0x471e03(0x1c9)]?writeCliSideChannelLine(_0x471e03(0x19d)):(writeCliSideChannelLine(_0x471e03(0x1f1)+_0x5c8a44[_0x471e03(0x1c1)]+_0x471e03(0x1da)),_0x5c8a44[_0x471e03(0x1ea)]>0x0&&writeCliSideChannelLine('!\x20'+_0x5c8a44[_0x471e03(0x1ea)]+'\x20menu(s)\x20failed')),{'ok':_0x5c8a44['failed']===0x0,'data':_0x5c8a44,'message':_0x5c8a44[_0x471e03(0x1c9)]?_0x471e03(0x1cb):_0x471e03(0x1ed)+_0x5c8a44[_0x471e03(0x1c1)]+_0x471e03(0x1b9)+_0x5c8a44[_0x471e03(0x1ea)]+_0x471e03(0x1ec)};}requireInteractive();const _0x3b301f=startSpinner(_0x471e03(0x1dc));let _0x1e2be5;try{_0x1e2be5=await fetchOnlineMenuList(_0x1d9f20['appCode'],_0x1d9f20['cookie']),stopSpinner(_0x3b301f,'Online\x20menu\x20list\x20fetched',!![]);}catch(_0x11c4ef){stopSpinner(_0x3b301f,_0x471e03(0x1b4),![]);throw CliErrors[_0x471e03(0x1b5)](_0x11c4ef instanceof Error?_0x11c4ef['message']:_0x471e03(0x1b4));}const _0x2313b6=filterMenusWithResources(_0x1e2be5),_0x20f8f5=parseSelection(_0x1d9f20,![]),_0x338b0e=_0x20f8f5?selectMenusForUpdate(_0x2313b6,_0x20f8f5):_0x2313b6;if(_0x338b0e[_0x471e03(0x1f0)]===0x0)return writeCliSideChannelLine(a107_0x5bf979[_0x471e03(0x1b8)]('\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found')),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a107_0x5bf979[_0x471e03(0x1ca)]('\x20\x20Found\x20'+_0x338b0e[_0x471e03(0x1f0)]+_0x471e03(0x1ae))),writeCliSideChannelLine(renderUpdateSummary(_0x338b0e[_0x471e03(0x1b3)](_0x3a2013=>_0x3a2013[_0x471e03(0x1ce)]),[_0x29e47b[_0x471e03(0x1d2)],_0x29e47b['cssUrl']])),writeCliSideChannelLine('');let _0x31aee7=_0x29e47b[_0x471e03(0x1d2)],_0x235187=_0x29e47b[_0x471e03(0x1af)];!_0x31aee7&&(_0x31aee7=await askJsUrl());!_0x235187&&(_0x235187=await askCssUrl());const _0x176173=await askConfirm('\x20\x20Update\x20'+_0x338b0e[_0x471e03(0x1f0)]+_0x471e03(0x1d0)+_0x31aee7+_0x471e03(0x1bd)+_0x235187+'?');if(!_0x176173)return writeCliSideChannelLine(a107_0x5bf979[_0x471e03(0x1ad)](_0x471e03(0x1e9))),{'ok':!![]};const _0x544625=startSpinner('Updating\x20'+_0x338b0e[_0x471e03(0x1f0)]+_0x471e03(0x1a0));try{const _0x381ac5=await runMenuUpdateCore(_0x1d9f20[_0x471e03(0x1e7)],_0x1d9f20['cookie'],JSON[_0x471e03(0x1cf)]({'jsUrl':_0x31aee7,'cssUrl':_0x235187}),{'mode':_0x5ec290,'force':_0x371e5f,'selection':{'all':![],'menuIds':_0x338b0e[_0x471e03(0x1b3)](_0x46b91a=>_0x46b91a['id']),'paths':[]},'loadScriptMode':_0x41191a});return stopSpinner(_0x544625,_0x471e03(0x1e4)+_0x381ac5['updated']+_0x471e03(0x1c0),_0x381ac5['failed']===0x0),{'ok':_0x381ac5[_0x471e03(0x1ea)]===0x0,'data':_0x381ac5,'message':_0x381ac5[_0x471e03(0x1ea)]>0x0?'Menu\x20asset\x20update\x20completed:\x20'+_0x381ac5[_0x471e03(0x1c1)]+'\x20updated,\x20'+_0x381ac5[_0x471e03(0x1ea)]+'\x20failed.':_0x471e03(0x1ed)+_0x381ac5[_0x471e03(0x1c1)]+_0x471e03(0x19f)};}catch(_0x3874d0){stopSpinner(_0x544625,_0x471e03(0x1dd),![]);throw CliErrors['validation'](_0x3874d0 instanceof Error?_0x3874d0['message']:'Menu\x20asset\x20update\x20failed');}}};function a107_0xf930(){const _0x319a9d=['Menu\x20asset\x20update\x20completed:\x20','params','344LeMNio','length','✓\x20Menu\x20asset\x20update\x20completed:\x20','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','40ojJaNh','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','34517GOkCOW','\x20updated.','\x20menu(s)...','force','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','bool','object','107535AOUlvS','flag','320766uvgcrT','load-mode','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','isArray','split','gray','\x20menu(s)\x20with\x20existing\x20resources','cssUrl','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','diffs','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','map','Failed\x20to\x20fetch\x20online\x20menu\x20list','validation','mode','28KpvqhU','yellow','\x20updated,\x20','some','trim','117435ESGIBp','\x20and\x20CSS:\x20','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','high-risk-write','\x20menu(s)','updated','299838GenQIL','\x20menu\x20resource\x20set(s).','boolean','filter','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','str','replace','skipped','cyan','Menu\x20asset\x20update\x20skipped','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','script','label','stringify','\x20menu(s)\x20with\x20JS:\x20','Would\x20update\x20','jsUrl','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','11214010nozJWS','string','/smartapi/menu/update','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','rawFlags','paths','\x20menu(s)\x20updated','import','Fetching\x20online\x20menu\x20list...','Menu\x20asset\x20update\x20failed','all','Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources','patch','isSafeInteger','fetch','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','Updated\x20','appcode','selectedAppName','appCode','cookie','\x20\x20Cancelled.','failed','3906342CUapml','\x20failed.'];a107_0xf930=function(){return _0x319a9d;};return a107_0xf930();}function ensureRunnableContext(_0x591cf5,_0x5e886c){const _0x46420a=a107_0xd31b9e,_0x356ed0=_0x591cf5[_0x46420a(0x1e5)]?String(_0x591cf5[_0x46420a(0x1e5)])[_0x46420a(0x1bb)]():'';if(!isInProject()&&!_0x5e886c&&!_0x356ed0)throw CliErrors[_0x46420a(0x1b5)](_0x46420a(0x1c6)+_0x46420a(0x1aa));}function parseMode(_0x3f3002){const _0x4ed771=a107_0xd31b9e;if(!_0x3f3002)return'patch';if(_0x3f3002==='replace'||_0x3f3002===_0x4ed771(0x1e0))return _0x3f3002;throw CliErrors['validation'](_0x4ed771(0x1d7));}function parseSelection(_0x2ae24f,_0x300466=!![]){const _0x18816e=a107_0xd31b9e,_0x36a18c=_0x2ae24f[_0x18816e(0x1a3)](_0x18816e(0x1de)),_0x528e63=parseMenuIds(_0x2ae24f[_0x18816e(0x1c7)]('menu-ids')),_0x3c43b7=parseCsv(_0x2ae24f[_0x18816e(0x1c7)](_0x18816e(0x1d9))),_0x468fca=_0x528e63[_0x18816e(0x1f0)]>0x0||_0x3c43b7[_0x18816e(0x1f0)]>0x0;if(_0x36a18c&&_0x468fca)throw CliErrors['validation']('--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.');if(!_0x36a18c&&!_0x468fca){if(!_0x300466)return undefined;throw CliErrors[_0x18816e(0x1b5)](_0x18816e(0x1b0));}return{'all':_0x36a18c,'menuIds':_0x528e63,'paths':_0x3c43b7};}function parseMenuIds(_0x6be1de){const _0x4d5164=a107_0xd31b9e,_0x49dee5=parseCsv(_0x6be1de),_0x196b64=_0x49dee5['map'](Number);if(_0x196b64[_0x4d5164(0x1ba)](_0x596636=>!Number[_0x4d5164(0x1e1)](_0x596636)||_0x596636<=0x0))throw CliErrors[_0x4d5164(0x1b5)](_0x4d5164(0x1f2));return[...new Set(_0x196b64)];}function parseCsv(_0x3e30c2){const _0x41882c=a107_0xd31b9e;return[...new Set(_0x3e30c2[_0x41882c(0x1ac)](',')['map'](_0x539ac8=>_0x539ac8['trim']())[_0x41882c(0x1c5)](Boolean))];}function parseLoadScriptMode(_0x11a67c){const _0x682eef=a107_0xd31b9e;if(!_0x11a67c)return undefined;if(_0x11a67c===_0x682eef(0x1db)||_0x11a67c===_0x682eef(0x1cd)||_0x11a67c==='fetch')return _0x11a67c;throw CliErrors['validation']('Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch');}function parseParams(_0x201ab0){const _0x3f3a4b=a107_0xd31b9e;if(!_0x201ab0)return{};try{const _0x417a20=JSON['parse'](_0x201ab0);if(typeof _0x417a20!==_0x3f3a4b(0x1a4)||_0x417a20===null||Array[_0x3f3a4b(0x1ab)](_0x417a20))return{};return{'jsUrl':typeof _0x417a20[_0x3f3a4b(0x1d2)]===_0x3f3a4b(0x1d5)?_0x417a20[_0x3f3a4b(0x1d2)]['trim']():undefined,'cssUrl':typeof _0x417a20[_0x3f3a4b(0x1af)]===_0x3f3a4b(0x1d5)?_0x417a20['cssUrl'][_0x3f3a4b(0x1bb)]():undefined};}catch{return{};}}
1
+ const a107_0x1f4477=a107_0x1bba;(function(_0x5d57a2,_0x1612e6){const _0x56976c=a107_0x1bba,_0x1eb9a7=_0x5d57a2();while(!![]){try{const _0x5c34e7=-parseInt(_0x56976c(0x172))/0x1+-parseInt(_0x56976c(0x179))/0x2+-parseInt(_0x56976c(0x197))/0x3*(-parseInt(_0x56976c(0x19c))/0x4)+parseInt(_0x56976c(0x192))/0x5+parseInt(_0x56976c(0x1b1))/0x6*(-parseInt(_0x56976c(0x18f))/0x7)+parseInt(_0x56976c(0x173))/0x8+-parseInt(_0x56976c(0x175))/0x9*(-parseInt(_0x56976c(0x178))/0xa);if(_0x5c34e7===_0x1612e6)break;else _0x1eb9a7['push'](_0x1eb9a7['shift']());}catch(_0x1d9808){_0x1eb9a7['push'](_0x1eb9a7['shift']());}}}(a107_0x553d,0x25c65));import a107_0x39ddea 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_0x553d(){const _0x5e8664=['Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','\x20\x20Cancelled.','patch','params','paths','menu','diffs','\x20menu(s)\x20with\x20existing\x20resources','\x20menu(s)\x20with\x20JS:\x20','isSafeInteger','parse','144LKBGUz','yes','stringify','appCode','✓\x20Menu\x20asset\x20update\x20completed:\x20','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','trim','Updated\x20','force','\x20updated,\x20','yellow','replace','\x20failed.','load-mode','\x20and\x20CSS:\x20','filter','script','rawFlags','boolean','isArray','skipped','split','\x20menu(s)\x20updated','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','string','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','failed','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','Online\x20menu\x20list\x20fetched','cssUrl','length','246068EmTgCU','1982504LDJYTp','fetch','1440HplvNR','POST','Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch','5910BWIMnv','3500REtGuM','selectedAppName','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','Fetching\x20online\x20menu\x20list...','Menu\x20asset\x20update\x20completed:\x20','/smartapi/menu/update','jsUrl','flag','updated','map','cyan','appcode','Would\x20update\x20','asset-update','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','mode','\x20menu(s)','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','validation','object','\x20\x20Update\x20','Menu\x20asset\x20update\x20failed','30548wAzGEr','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','Menu\x20asset\x20update\x20skipped','656660nHLsgj','menu-ids','Failed\x20to\x20fetch\x20online\x20menu\x20list','bool','message','100722PDjLdQ','all','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','Updating\x20','some','4bWvgWk','str','high-risk-write','\x20menu(s)...','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','cookie','\x20\x20Found\x20','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update'];a107_0x553d=function(){return _0x5e8664;};return a107_0x553d();}import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':a107_0x1f4477(0x1ab),'command':a107_0x1f4477(0x186),'description':a107_0x1f4477(0x199),'risk':a107_0x1f4477(0x19e),'flags':[{'name':a107_0x1f4477(0x1a9),'type':a107_0x1f4477(0x16b),'description':a107_0x1f4477(0x17b)+a107_0x1f4477(0x190)},{'name':a107_0x1f4477(0x188),'type':a107_0x1f4477(0x16b),'description':a107_0x1f4477(0x16c)+a107_0x1f4477(0x1a2),'enum':[a107_0x1f4477(0x15d),a107_0x1f4477(0x1a8)],'default':a107_0x1f4477(0x1a8)},{'name':a107_0x1f4477(0x1b9),'type':'boolean','description':a107_0x1f4477(0x187)},{'name':a107_0x1f4477(0x193),'type':a107_0x1f4477(0x16b),'description':'Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update'},{'name':a107_0x1f4477(0x1aa),'type':a107_0x1f4477(0x16b),'description':a107_0x1f4477(0x1a5)},{'name':a107_0x1f4477(0x198),'type':a107_0x1f4477(0x164),'description':a107_0x1f4477(0x1a1)},{'name':a107_0x1f4477(0x15f),'type':a107_0x1f4477(0x16b),'enum':['import','script','fetch'],'description':a107_0x1f4477(0x1b6)}],async 'dryRun'(_0x198236){const _0x3dcfb5=a107_0x1f4477;ensureRunnableContext(_0x198236[_0x3dcfb5(0x163)],_0x198236[_0x3dcfb5(0x17a)]);const _0x474743=await runMenuUpdateCore(_0x198236[_0x3dcfb5(0x1b4)],_0x198236[_0x3dcfb5(0x1a3)],_0x198236[_0x3dcfb5(0x19d)](_0x3dcfb5(0x1a9)),{'mode':parseMode(_0x198236['str'](_0x3dcfb5(0x188))),'dryRun':!![],'force':_0x198236[_0x3dcfb5(0x195)](_0x3dcfb5(0x1b9)),'selection':parseSelection(_0x198236),'loadScriptMode':parseLoadScriptMode(_0x198236[_0x3dcfb5(0x19d)](_0x3dcfb5(0x15f)))});return{'method':_0x3dcfb5(0x176),'url':_0x3dcfb5(0x17e),'body':_0x474743,'description':_0x474743[_0x3dcfb5(0x166)]?_0x3dcfb5(0x169):_0x3dcfb5(0x185)+(_0x474743[_0x3dcfb5(0x1ac)]?.[_0x3dcfb5(0x171)]??0x0)+'\x20menu\x20resource\x20set(s).'};},async 'execute'(_0x1b652b){const _0xeae68d=a107_0x1f4477;ensureRunnableContext(_0x1b652b[_0xeae68d(0x163)],_0x1b652b[_0xeae68d(0x17a)]);const _0x4ff0da=_0x1b652b[_0xeae68d(0x180)](_0xeae68d(0x1b2)),_0x3edc7b=_0x1b652b[_0xeae68d(0x19d)](_0xeae68d(0x1a9)),_0x315188=parseMode(_0x1b652b['str'](_0xeae68d(0x188))),_0x2e3d0b=_0x1b652b[_0xeae68d(0x195)](_0xeae68d(0x1b9)),_0x22fcdd=parseLoadScriptMode(_0x1b652b[_0xeae68d(0x19d)](_0xeae68d(0x15f))),_0x43d5c1=parseParams(_0x3edc7b),_0x39c7e8=!!(_0x43d5c1[_0xeae68d(0x17f)]||_0x43d5c1[_0xeae68d(0x170)]);if(_0x4ff0da||_0x39c7e8&&!isInteractive()){const _0x1b0a84=await runMenuUpdateCore(_0x1b652b[_0xeae68d(0x1b4)],_0x1b652b['cookie'],_0x3edc7b,{'mode':_0x315188,'force':_0x2e3d0b,'selection':parseSelection(_0x1b652b),'loadScriptMode':_0x22fcdd});return _0x1b0a84[_0xeae68d(0x166)]?writeCliSideChannelLine(_0xeae68d(0x18a)):(writeCliSideChannelLine(_0xeae68d(0x1b5)+_0x1b0a84[_0xeae68d(0x181)]+_0xeae68d(0x168)),_0x1b0a84['failed']>0x0&&writeCliSideChannelLine('!\x20'+_0x1b0a84[_0xeae68d(0x16d)]+'\x20menu(s)\x20failed')),{'ok':_0x1b0a84[_0xeae68d(0x16d)]===0x0,'data':_0x1b0a84,'message':_0x1b0a84[_0xeae68d(0x166)]?_0xeae68d(0x191):_0xeae68d(0x17d)+_0x1b0a84[_0xeae68d(0x181)]+'\x20updated,\x20'+_0x1b0a84[_0xeae68d(0x16d)]+_0xeae68d(0x15e)};}requireInteractive();const _0x12cf00=startSpinner(_0xeae68d(0x17c));let _0x5693e0;try{_0x5693e0=await fetchOnlineMenuList(_0x1b652b['appCode'],_0x1b652b[_0xeae68d(0x1a3)]),stopSpinner(_0x12cf00,_0xeae68d(0x16f),!![]);}catch(_0x235c75){stopSpinner(_0x12cf00,_0xeae68d(0x194),![]);throw CliErrors[_0xeae68d(0x18b)](_0x235c75 instanceof Error?_0x235c75[_0xeae68d(0x196)]:'Failed\x20to\x20fetch\x20online\x20menu\x20list');}const _0x2faca0=filterMenusWithResources(_0x5693e0),_0x1e33b8=parseSelection(_0x1b652b,![]),_0xf8ee69=_0x1e33b8?selectMenusForUpdate(_0x2faca0,_0x1e33b8):_0x2faca0;if(_0xf8ee69[_0xeae68d(0x171)]===0x0)return writeCliSideChannelLine(a107_0x39ddea[_0xeae68d(0x15c)](_0xeae68d(0x1a0))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a107_0x39ddea[_0xeae68d(0x183)](_0xeae68d(0x1a4)+_0xf8ee69['length']+_0xeae68d(0x1ad))),writeCliSideChannelLine(renderUpdateSummary(_0xf8ee69['map'](_0x435afc=>_0x435afc['label']),[_0x43d5c1[_0xeae68d(0x17f)],_0x43d5c1[_0xeae68d(0x170)]])),writeCliSideChannelLine('');let _0x2b197a=_0x43d5c1[_0xeae68d(0x17f)],_0x49fdc0=_0x43d5c1['cssUrl'];!_0x2b197a&&(_0x2b197a=await askJsUrl());!_0x49fdc0&&(_0x49fdc0=await askCssUrl());const _0x361899=await askConfirm(_0xeae68d(0x18d)+_0xf8ee69['length']+_0xeae68d(0x1ae)+_0x2b197a+_0xeae68d(0x160)+_0x49fdc0+'?');if(!_0x361899)return writeCliSideChannelLine(a107_0x39ddea['gray'](_0xeae68d(0x1a7))),{'ok':!![]};const _0x3cf43a=startSpinner(_0xeae68d(0x19a)+_0xf8ee69['length']+_0xeae68d(0x19f));try{const _0x16b7c4=await runMenuUpdateCore(_0x1b652b[_0xeae68d(0x1b4)],_0x1b652b['cookie'],JSON[_0xeae68d(0x1b3)]({'jsUrl':_0x2b197a,'cssUrl':_0x49fdc0}),{'mode':_0x315188,'force':_0x2e3d0b,'selection':{'all':![],'menuIds':_0xf8ee69[_0xeae68d(0x182)](_0xd79bdf=>_0xd79bdf['id']),'paths':[]},'loadScriptMode':_0x22fcdd});return stopSpinner(_0x3cf43a,_0xeae68d(0x1b8)+_0x16b7c4['updated']+_0xeae68d(0x189),_0x16b7c4[_0xeae68d(0x16d)]===0x0),{'ok':_0x16b7c4[_0xeae68d(0x16d)]===0x0,'data':_0x16b7c4,'message':_0x16b7c4[_0xeae68d(0x16d)]>0x0?_0xeae68d(0x17d)+_0x16b7c4[_0xeae68d(0x181)]+_0xeae68d(0x1ba)+_0x16b7c4[_0xeae68d(0x16d)]+_0xeae68d(0x15e):_0xeae68d(0x17d)+_0x16b7c4[_0xeae68d(0x181)]+'\x20updated.'};}catch(_0x5c684a){stopSpinner(_0x3cf43a,'Menu\x20asset\x20update\x20failed',![]);throw CliErrors[_0xeae68d(0x18b)](_0x5c684a instanceof Error?_0x5c684a['message']:_0xeae68d(0x18e));}}};function ensureRunnableContext(_0x1ad19c,_0x8d4b8d){const _0x22215f=a107_0x1f4477,_0x572ec1=_0x1ad19c[_0x22215f(0x184)]?String(_0x1ad19c[_0x22215f(0x184)])[_0x22215f(0x1b7)]():'';if(!isInProject()&&!_0x8d4b8d&&!_0x572ec1)throw CliErrors[_0x22215f(0x18b)]('menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20'+_0x22215f(0x16e));}function parseMode(_0x542fac){const _0x430f66=a107_0x1f4477;if(!_0x542fac)return _0x430f66(0x1a8);if(_0x542fac===_0x430f66(0x15d)||_0x542fac==='patch')return _0x542fac;throw CliErrors[_0x430f66(0x18b)](_0x430f66(0x1a6));}function parseSelection(_0x2186be,_0x124b12=!![]){const _0x145562=a107_0x1f4477,_0x190eb9=_0x2186be[_0x145562(0x195)](_0x145562(0x198)),_0x14b18e=parseMenuIds(_0x2186be['str'](_0x145562(0x193))),_0x647da4=parseCsv(_0x2186be[_0x145562(0x19d)](_0x145562(0x1aa))),_0x28555f=_0x14b18e[_0x145562(0x171)]>0x0||_0x647da4['length']>0x0;if(_0x190eb9&&_0x28555f)throw CliErrors['validation'](_0x145562(0x16a));if(!_0x190eb9&&!_0x28555f){if(!_0x124b12)return undefined;throw CliErrors[_0x145562(0x18b)]('menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.');}return{'all':_0x190eb9,'menuIds':_0x14b18e,'paths':_0x647da4};}function a107_0x1bba(_0x4c2e0a,_0x4e474c){_0x4c2e0a=_0x4c2e0a-0x15c;const _0x553d66=a107_0x553d();let _0x1bba72=_0x553d66[_0x4c2e0a];return _0x1bba72;}function parseMenuIds(_0x17027d){const _0x4ea63d=a107_0x1f4477,_0x495a35=parseCsv(_0x17027d),_0x24e5bb=_0x495a35[_0x4ea63d(0x182)](Number);if(_0x24e5bb[_0x4ea63d(0x19b)](_0x22c9f1=>!Number[_0x4ea63d(0x1af)](_0x22c9f1)||_0x22c9f1<=0x0))throw CliErrors[_0x4ea63d(0x18b)]('--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.');return[...new Set(_0x24e5bb)];}function parseCsv(_0x5aef22){const _0x2f7d63=a107_0x1f4477;return[...new Set(_0x5aef22[_0x2f7d63(0x167)](',')[_0x2f7d63(0x182)](_0x25b091=>_0x25b091[_0x2f7d63(0x1b7)]())[_0x2f7d63(0x161)](Boolean))];}function parseLoadScriptMode(_0x5c836b){const _0x2b651a=a107_0x1f4477;if(!_0x5c836b)return undefined;if(_0x5c836b==='import'||_0x5c836b===_0x2b651a(0x162)||_0x5c836b===_0x2b651a(0x174))return _0x5c836b;throw CliErrors[_0x2b651a(0x18b)](_0x2b651a(0x177));}function parseParams(_0x2f4da2){const _0xefbe48=a107_0x1f4477;if(!_0x2f4da2)return{};try{const _0x5c5334=JSON[_0xefbe48(0x1b0)](_0x2f4da2);if(typeof _0x5c5334!==_0xefbe48(0x18c)||_0x5c5334===null||Array[_0xefbe48(0x165)](_0x5c5334))return{};return{'jsUrl':typeof _0x5c5334[_0xefbe48(0x17f)]===_0xefbe48(0x16b)?_0x5c5334[_0xefbe48(0x17f)][_0xefbe48(0x1b7)]():undefined,'cssUrl':typeof _0x5c5334['cssUrl']===_0xefbe48(0x16b)?_0x5c5334[_0xefbe48(0x170)]['trim']():undefined};}catch{return{};}}
@@ -1 +1 @@
1
- const a108_0x4b1a15=a108_0x205a;(function(_0x297b5f,_0xecf17c){const _0x24f870=a108_0x205a,_0x47d6bc=_0x297b5f();while(!![]){try{const _0x1d14f4=-parseInt(_0x24f870(0x20c))/0x1+parseInt(_0x24f870(0x26a))/0x2+-parseInt(_0x24f870(0x204))/0x3*(-parseInt(_0x24f870(0x248))/0x4)+-parseInt(_0x24f870(0x25c))/0x5*(parseInt(_0x24f870(0x23c))/0x6)+parseInt(_0x24f870(0x25b))/0x7+-parseInt(_0x24f870(0x225))/0x8+-parseInt(_0x24f870(0x242))/0x9*(-parseInt(_0x24f870(0x205))/0xa);if(_0x1d14f4===_0xecf17c)break;else _0x47d6bc['push'](_0x47d6bc['shift']());}catch(_0x28664d){_0x47d6bc['push'](_0x47d6bc['shift']());}}}(a108_0x4d1a,0xbb7d6));function a108_0x4d1a(){const _0x35bd3f=['\x20->\x20menu\x20','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','childrenIds','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','string','menu_folder_has_resources','\x20still\x20references\x20','type','str','join','1848511yLzKUK','30010TNSSOu','trim','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','pageId','filter','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','Menu\x20','failed','pages','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','):\x20',';\x20execution\x20must\x20consume\x20','message','stringify','2334902TVcCov','menu_delete_page_bound','size','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','causeCode','menu_page_shared','flagMissing','batch-delete','appCode','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','\x20deleted\x20menus;\x20expected\x20','resources','recursive','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','Backend\x20reported\x20','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','plan','target','get','menu','childrenCount','Post-failure\x20menu\x20readback\x20failed\x20(','unconfirmed','\x20menu(s)\x20under\x20exact\x20id\x20','33DPVmSl','7260YFWPHY','batch\x20delete','remainingIds','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','Would\x20batch\x20delete\x20','rabetbase\x20menu\x20list\x20--format\x20json','selector','1121220bjXick','menu_folder_resources_invalid','Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','expected-children-count','add','\x20has\x20','The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','cookie','\x20references\x20missing\x20child\x20','createdAt','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','snapshot','menu_non_empty','menu_verification_failed','/smartapi/menu/batchDelete','expect-parent-id','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','forEach','Folder\x20','dry-run','menu\x20list','length','4779848Zqgpvh','toLowerCase','absentIds','verification','has','POST','Deleted\x20','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.','deleteOrder','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','Post-mismatch\x20menu\x20readback\x20failed\x20(','hash','push','unknown','high-risk-write','Batch\x20delete\x20request\x20for\x20menu\x20','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','path','resourcesValid','cascade','plan-out','map','1524pmyNzm','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','plan\x20delete','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','\x20is\x20not\x20a\x20folder.','boolean','24453lGHuMZ','delete','validation','menu_plan_invalid','byId','menus','220764Akncto','plan-validation','causeMessage','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','menu_tree_invalid','menu_recursive_requires_folder','folder','Recursive\x20menu\x20delete\x20plan\x20root\x20'];a108_0x4d1a=function(){return _0x35bd3f;};return a108_0x4d1a();}function a108_0x205a(_0x36228a,_0x45dd8a){_0x36228a=_0x36228a-0x1f0;const _0x4d1a8f=a108_0x4d1a();let _0x205a4b=_0x4d1a8f[_0x36228a];return _0x205a4b;}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_0x4b1a15(0x22a),'path':a108_0x4b1a15(0x21d)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':a108_0x4b1a15(0x1f8),'type':a108_0x4b1a15(0x241),'description':a108_0x4b1a15(0x254)},MENU_DELETE_PLAN_OUT_FLAG={'name':a108_0x4b1a15(0x23a),'type':a108_0x4b1a15(0x255),'description':a108_0x4b1a15(0x251)},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a108_0x4b1a15(0x255),'description':a108_0x4b1a15(0x21f)};export const menuDelete={'service':a108_0x4b1a15(0x1ff),'command':a108_0x4b1a15(0x243),'description':'Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','risk':a108_0x4b1a15(0x234),'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'(_0x49454d){const _0x318285=a108_0x4b1a15;_0x49454d['bool'](_0x318285(0x222))?validateDeleteDryRunInput(_0x49454d):validateDeleteExecuteInput(_0x49454d),requireExplicitYes(_0x49454d);},async 'dryRun'(_0x553140){const _0x498142=a108_0x4b1a15;validateDeleteDryRunInput(_0x553140);const _0x1c637b=await buildDeletePlan(_0x553140),_0x2c6b3a=createMenuDeletePlanFile(_0x553140[_0x498142(0x1f4)],_0x1c637b),_0x400715=await writeMenuDeletePlan(_0x553140[_0x498142(0x259)](_0x498142(0x23a)),_0x2c6b3a),_0x1dbb43=mutationResult({..._0x1c637b,'planFile':{'path':_0x400715,'createdAt':_0x2c6b3a[_0x498142(0x217)],'expiresAt':_0x2c6b3a['expiresAt']}});return menuDryRunResult(_0x1dbb43,{'method':'POST','url':_0x498142(0x21d),'body':{'idList':_0x1dbb43[_0x498142(0x22e)]},'description':_0x498142(0x209)+(_0x1dbb43['deleteOrder']?.[_0x498142(0x224)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x1dbb43[_0x498142(0x20b)]['id']+_0x498142(0x267)+_0x400715+'.'});},async 'execute'(_0x2980c1){const _0xd2a855=a108_0x4b1a15;requireExplicitYes(_0x2980c1),validateDeleteExecuteInput(_0x2980c1);const _0x2e7fa9=await readMenuDeletePlan(_0x2980c1['str'](_0xd2a855(0x1fc))),_0x3af3c2=mutationPlanFromDeleteFile(_0x2e7fa9[_0xd2a855(0x1fc)],_0x2e7fa9[_0xd2a855(0x237)]),_0x2807a6=_0x2e7fa9[_0xd2a855(0x1fc)][_0xd2a855(0x1fd)]['id'];try{assertMenuDeletePlanExecutable(_0x2e7fa9[_0xd2a855(0x1fc)],_0x2980c1[_0xd2a855(0x1f4)]);}catch(_0x230418){throw menuFailure(asMenuError(_0x230418),_0x3af3c2,{'stage':_0xd2a855(0x249),'failed':{'id':_0x2807a6}});}let _0x45eb0b,_0x10e854;try{_0x45eb0b=await fetchMutationSnapshot(_0x2980c1,'execute\x20reviewed\x20delete\x20plan',_0x2807a6),_0x10e854=assertMenuDeletePlanCurrent(_0x2e7fa9['plan'],_0x2980c1[_0xd2a855(0x1f4)],_0x45eb0b),assertDeleteTargetsComplete(_0x2e7fa9[_0xd2a855(0x1fc)],_0x45eb0b),_0x10e854[_0xd2a855(0x220)](_0x454e61=>assertDeleteSafety(_0x454e61,_0x2e7fa9[_0xd2a855(0x1fc)][_0xd2a855(0x1f8)])),assertNoSharedPages(_0x45eb0b,_0x10e854),assertCascadeMatchesPlan(_0x3af3c2,_0x10e854);}catch(_0x50c19c){throw menuFailure(asMenuError(_0x50c19c),_0x3af3c2,{'stage':'pre-write-plan-validation','failed':{'id':_0x2807a6}});}const _0x2cddfb=_0x2e7fa9[_0xd2a855(0x1fc)]['deleteOrder'];let _0x38225d;try{_0x38225d=await batchDeleteMenuEntities(_0x2980c1[_0xd2a855(0x215)],_0x2cddfb);}catch(_0x1ea5c2){const _0x4d44f7=mapMenuApiError(_0x1ea5c2,_0xd2a855(0x206)),_0x48bfb6=[_0xd2a855(0x213)];let _0x463945;try{_0x463945=await readDeleteOutcome(_0x2980c1,_0x2cddfb);}catch(_0x204e6a){const _0x28e985=describeMenuErrorCause(_0x204e6a,_0xd2a855(0x1fb),_0x2807a6);_0x48bfb6['push'](_0xd2a855(0x201)+_0x28e985[_0xd2a855(0x1f0)]+_0xd2a855(0x266)+_0x28e985[_0xd2a855(0x24a)]);throw menuFailure(_0x4d44f7,_0x3af3c2,{'stage':_0xd2a855(0x1f3),'failed':{'targetIds':_0x2cddfb,'targetIdsAbsent':_0xd2a855(0x202),..._0x28e985},'warnings':_0x48bfb6,'verification':{'status':_0xd2a855(0x263),'lookupCommand':_0xd2a855(0x20a),'targetIds':_0x2cddfb}});}throw menuFailure(_0x4d44f7,_0x3af3c2,{'stage':_0xd2a855(0x1f3),'succeeded':_0x463945[_0xd2a855(0x227)][_0xd2a855(0x23b)](_0x258e9c=>({'id':_0x258e9c,'deleted':!![]})),'failed':{'targetIds':_0x2cddfb,'absentIds':_0x463945[_0xd2a855(0x227)],'remainingIds':_0x463945[_0xd2a855(0x207)]},'warnings':_0x48bfb6,'verification':verificationFromOutcome(_0x463945)});}if(_0x38225d!==_0x2cddfb['length']){const _0x40ee6b=menuError('menu_batch_delete_count_mismatch',_0xd2a855(0x1fa)+_0x38225d+_0xd2a855(0x1f6)+_0x2cddfb[_0xd2a855(0x224)]+'.',_0xd2a855(0x24b)),_0x619466=[_0xd2a855(0x25e)];let _0x224491;try{_0x224491=await readDeleteOutcome(_0x2980c1,_0x2cddfb);}catch(_0x426ebc){const _0x252b57=describeMenuErrorCause(_0x426ebc,_0xd2a855(0x20f),_0x2807a6);_0x619466[_0xd2a855(0x232)](_0xd2a855(0x230)+_0x252b57[_0xd2a855(0x1f0)]+'):\x20'+_0x252b57[_0xd2a855(0x24a)]);throw menuFailure(_0x40ee6b,_0x3af3c2,{'stage':'batch-delete','failed':{'targetIds':_0x2cddfb,'expectedCount':_0x2cddfb['length'],'reportedDeletedCount':_0x38225d,'targetIdsAbsent':_0xd2a855(0x202),..._0x252b57},'warnings':_0x619466,'verification':{'status':_0xd2a855(0x263),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x2cddfb}});}throw menuFailure(_0x40ee6b,_0x3af3c2,{'stage':_0xd2a855(0x1f3),'succeeded':_0x224491['absentIds'][_0xd2a855(0x23b)](_0x402d13=>({'id':_0x402d13,'deleted':!![]})),'failed':{'targetIds':_0x2cddfb,'expectedCount':_0x2cddfb['length'],'reportedDeletedCount':_0x38225d,'absentIds':_0x224491[_0xd2a855(0x227)],'remainingIds':_0x224491[_0xd2a855(0x207)]},'warnings':_0x619466,'verification':verificationFromOutcome(_0x224491)});}let _0x305dca;try{_0x305dca=await readDeleteOutcome(_0x2980c1,_0x2cddfb);}catch(_0x4e37a3){const _0x1b5d81=describeMenuErrorCause(_0x4e37a3,'verify\x20batch\x20delete',_0x2807a6),_0x4d2bf4=asVerificationError(_0x4e37a3,_0xd2a855(0x235)+_0x2807a6+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x4d2bf4,_0x3af3c2,{'stage':_0xd2a855(0x228),'succeeded':_0x2cddfb[_0xd2a855(0x23b)](_0x4f0a41=>({'id':_0x4f0a41,'deleteRequested':!![]})),'failed':{'id':_0x2807a6,'targetIds':_0x2cddfb,'targetIdsAbsent':_0xd2a855(0x202),..._0x1b5d81},'warnings':['The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.'],'verification':{'status':'failed','lookupCommand':_0xd2a855(0x20a),'targetIds':_0x2cddfb}});}if(_0x305dca[_0xd2a855(0x207)][_0xd2a855(0x224)]>0x0){const _0x2ea8a5=menuError(_0xd2a855(0x21c),'One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20'+_0x305dca[_0xd2a855(0x207)][_0xd2a855(0x25a)](',\x20')+'.',_0xd2a855(0x24b));throw menuFailure(_0x2ea8a5,_0x3af3c2,{'stage':_0xd2a855(0x228),'succeeded':_0x2cddfb[_0xd2a855(0x23b)](_0x2de68b=>({'id':_0x2de68b,'deleteRequested':!![]})),'failed':{'id':_0x2807a6,'targetIds':_0x2cddfb,'absentIds':_0x305dca['absentIds'],'remainingIds':_0x305dca[_0xd2a855(0x207)]},'warnings':[_0xd2a855(0x261)],'verification':verificationFromOutcome(_0x305dca)});}const _0x249384=_0x2cddfb['map'](_0x1e710c=>({'id':_0x1e710c,'deleted':!![]})),_0x539aeb=mutationResult({..._0x3af3c2,'dryRun':![],'succeeded':_0x249384,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x3af3c2['snapshotHash'],'finalSnapshotHash':_0x305dca['snapshot'][_0xd2a855(0x231)],'reportedDeletedCount':_0x38225d,'targetAbsent':!_0x305dca[_0xd2a855(0x21a)][_0xd2a855(0x246)][_0xd2a855(0x229)](_0x2807a6),'allTargetsAbsent':!![],'targetIds':_0x2cddfb}});return{'ok':!![],'data':_0x539aeb,'message':_0xd2a855(0x22b)+_0x249384['length']+_0xd2a855(0x203)+_0x2807a6+'.'};}};async function readDeleteOutcome(_0x506873,_0x58f307){const _0x31281f=a108_0x4b1a15,_0x389f9f=await fetchMenuSnapshot(_0x506873[_0x31281f(0x1f4)],_0x506873[_0x31281f(0x215)]);return{'snapshot':_0x389f9f,'absentIds':_0x58f307[_0x31281f(0x260)](_0x31e5f8=>!_0x389f9f[_0x31281f(0x246)][_0x31281f(0x229)](_0x31e5f8)),'remainingIds':_0x58f307[_0x31281f(0x260)](_0x44840b=>_0x389f9f[_0x31281f(0x246)][_0x31281f(0x229)](_0x44840b))};}function verificationFromOutcome(_0x1558bf){const _0x3a09b3=a108_0x4b1a15;return{'checkedBy':_0x3a09b3(0x223),'absentIds':_0x1558bf['absentIds'],'remainingIds':_0x1558bf['remainingIds']};}function validateDeleteDryRunInput(_0x22df65){const _0x41becc=a108_0x4b1a15;validateExactId(_0x22df65);if(!hasFlag(_0x22df65,_0x41becc(0x23a))||!_0x22df65[_0x41becc(0x259)](_0x41becc(0x23a))[_0x41becc(0x25d)]())throw CliErrors[_0x41becc(0x1f2)](_0x41becc(0x23a),_0x41becc(0x265));if(hasFlag(_0x22df65,'plan'))throw CliErrors[_0x41becc(0x244)](_0x41becc(0x253));}function validateDeleteExecuteInput(_0x387f78){const _0x453748=a108_0x4b1a15;if(!hasFlag(_0x387f78,'plan')||!_0x387f78[_0x453748(0x259)](_0x453748(0x1fc))[_0x453748(0x25d)]())throw CliErrors[_0x453748(0x1f2)](_0x453748(0x1fc),_0x453748(0x236));const _0x36e9f1=['id',_0x453748(0x1f8),_0x453748(0x23a),_0x453748(0x21e),'expect-path',_0x453748(0x210)]['filter'](_0x5e0cdd=>hasFlag(_0x387f78,_0x5e0cdd));if(_0x36e9f1[_0x453748(0x224)]>0x0)throw CliErrors[_0x453748(0x244)](_0x453748(0x1f9)+_0x36e9f1[_0x453748(0x23b)](_0x2a36a1=>'--'+_0x2a36a1)['join'](',\x20')+'.');}async function buildDeletePlan(_0x19dc74){const _0x4be727=a108_0x4b1a15,_0x51c561=validateExactId(_0x19dc74),_0x450e31=await fetchMutationSnapshot(_0x19dc74,_0x4be727(0x23e),_0x51c561),_0x3263c0=requireMenu(_0x450e31,_0x51c561);assertExpectedState(_0x19dc74,_0x3263c0);const _0x25d3ea=_0x19dc74['bool'](_0x4be727(0x1f8));let _0x23b1c0;if(_0x25d3ea){if(_0x3263c0['type']['trim']()[_0x4be727(0x226)]()!=='folder')throw menuError(_0x4be727(0x24d),_0x4be727(0x262)+_0x3263c0['id']+'\x20is\x20type\x20\x22'+(_0x3263c0[_0x4be727(0x258)]||_0x4be727(0x233))+_0x4be727(0x214));_0x23b1c0=collectDeleteTargets(_0x450e31,_0x3263c0),_0x23b1c0[_0x4be727(0x220)](_0x28865d=>assertDeleteSafety(_0x28865d,!![]));}else assertDeleteSafety(_0x3263c0),_0x23b1c0=[_0x3263c0];assertNoSharedPages(_0x450e31,_0x23b1c0);const _0x602cf7=_0x23b1c0[_0x4be727(0x23b)](_0x1cdb56=>_0x1cdb56['id']),_0x54ba9c=cascadeForTargets(_0x23b1c0),_0x125e3c=_0x54ba9c[_0x4be727(0x264)]['length']>0x0?[_0x4be727(0x23d)]:[];return mutationResult({'operation':_0x4be727(0x243),'selector':{'id':_0x51c561,'recursive':_0x25d3ea},'before':_0x3263c0,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x4be727(0x22a),'path':_0x4be727(0x21d),'body':{'idList':_0x602cf7}}],'targets':_0x23b1c0,'deleteOrder':_0x602cf7,'snapshotHash':_0x450e31[_0x4be727(0x231)],'cascade':_0x54ba9c,'warnings':_0x125e3c});}function assertDeleteSafety(_0x38afaf,_0x149753=![]){const _0x4fbff6=a108_0x4b1a15,_0x34c192=_0x38afaf[_0x4fbff6(0x258)][_0x4fbff6(0x25d)]()[_0x4fbff6(0x226)]()===_0x4fbff6(0x24e);if(_0x38afaf[_0x4fbff6(0x200)]>0x0&&(!_0x149753||!_0x34c192))throw menuError(_0x4fbff6(0x21b),_0x4fbff6(0x262)+_0x38afaf['id']+_0x4fbff6(0x212)+_0x38afaf[_0x4fbff6(0x200)]+_0x4fbff6(0x22c),'Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20'+_0x38afaf[_0x4fbff6(0x252)]['join'](',\x20'));if(_0x34c192&&_0x38afaf[_0x4fbff6(0x25f)]!=null)throw menuError(_0x4fbff6(0x26b),_0x4fbff6(0x221)+_0x38afaf['id']+'\x20is\x20unexpectedly\x20bound\x20to\x20page\x20'+_0x38afaf[_0x4fbff6(0x25f)]+'\x20and\x20cannot\x20be\x20deleted\x20safely.',_0x4fbff6(0x22d));if(!_0x34c192)return;if(!_0x38afaf[_0x4fbff6(0x238)])throw menuError(_0x4fbff6(0x20d),_0x4fbff6(0x221)+_0x38afaf['id']+_0x4fbff6(0x26d),_0x4fbff6(0x22f));if(_0x38afaf[_0x4fbff6(0x1f7)][_0x4fbff6(0x224)]>0x0)throw menuError(_0x4fbff6(0x256),_0x4fbff6(0x221)+_0x38afaf['id']+_0x4fbff6(0x257)+_0x38afaf[_0x4fbff6(0x1f7)]['length']+'\x20resource\x20URL(s).','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.');}function collectDeleteTargets(_0x41bed3,_0x35ad29){const _0x3b2eb8=[],_0x58591f=new Set(),_0x2b575b=new Set(),_0x174128=_0x426da2=>{const _0x345205=a108_0x205a;if(_0x58591f[_0x345205(0x229)](_0x426da2['id']))throw menuError(_0x345205(0x24c),_0x345205(0x219)+_0x426da2['id']+'.');if(_0x2b575b['has'](_0x426da2['id']))return;_0x58591f[_0x345205(0x211)](_0x426da2['id']);for(const _0x1c08d5 of _0x426da2['childrenIds']){const _0xd62a8c=_0x41bed3['byId'][_0x345205(0x1fe)](_0x1c08d5);if(!_0xd62a8c)throw menuError('menu_tree_invalid','Menu\x20'+_0x426da2['id']+_0x345205(0x216)+_0x1c08d5+'.');_0x174128(_0xd62a8c);}_0x58591f[_0x345205(0x243)](_0x426da2['id']),_0x2b575b[_0x345205(0x211)](_0x426da2['id']),_0x3b2eb8[_0x345205(0x232)](_0x426da2);};return _0x174128(_0x35ad29),_0x3b2eb8;}function assertDeleteTargetsComplete(_0x362b8c,_0x23704c){const _0x446990=a108_0x4b1a15,_0x1a9594=requireMenu(_0x23704c,_0x362b8c['target']['id']);if(_0x362b8c[_0x446990(0x1f8)]&&_0x1a9594[_0x446990(0x258)]['trim']()[_0x446990(0x226)]()!==_0x446990(0x24e))throw menuError('menu_plan_invalid',_0x446990(0x24f)+_0x1a9594['id']+_0x446990(0x240));const _0x1634fb=_0x362b8c[_0x446990(0x1f8)]?collectDeleteTargets(_0x23704c,_0x1a9594)[_0x446990(0x23b)](_0x10ccb3=>_0x10ccb3['id']):[_0x1a9594['id']];if(JSON[_0x446990(0x269)](_0x362b8c[_0x446990(0x22e)])!==JSON[_0x446990(0x269)](_0x1634fb))throw menuError('menu_plan_invalid',_0x446990(0x1f5),_0x446990(0x208));}function assertNoSharedPages(_0xd31f71,_0x401024){const _0x5c7f0e=a108_0x4b1a15,_0x5e0832=new Set(_0x401024[_0x5c7f0e(0x23b)](_0x433a42=>_0x433a42['id'])),_0x53e2a5=new Set(_0x401024[_0x5c7f0e(0x23b)](_0x4dd507=>_0x4dd507[_0x5c7f0e(0x25f)])[_0x5c7f0e(0x260)](_0x225506=>_0x225506!=null));if(_0x53e2a5[_0x5c7f0e(0x26c)]===0x0)return;const _0x584f77=_0xd31f71[_0x5c7f0e(0x247)][_0x5c7f0e(0x260)](_0x20c223=>!_0x5e0832[_0x5c7f0e(0x229)](_0x20c223['id'])&&_0x20c223[_0x5c7f0e(0x25f)]!=null&&_0x53e2a5[_0x5c7f0e(0x229)](_0x20c223[_0x5c7f0e(0x25f)]));if(_0x584f77[_0x5c7f0e(0x224)]===0x0)return;const _0x323494=_0x584f77[_0x5c7f0e(0x23b)](_0x1ea5cd=>'page\x20'+_0x1ea5cd[_0x5c7f0e(0x25f)]+_0x5c7f0e(0x250)+_0x1ea5cd['id'])[_0x5c7f0e(0x25a)](',\x20');throw menuError(_0x5c7f0e(0x1f1),_0x5c7f0e(0x20e)+_0x323494+'.',_0x5c7f0e(0x218));}function assertCascadeMatchesPlan(_0x580145,_0x52266d){const _0x8e74bc=a108_0x4b1a15,_0x205d3f=cascadeForTargets(_0x52266d);if(JSON[_0x8e74bc(0x269)](_0x580145[_0x8e74bc(0x239)])!==JSON[_0x8e74bc(0x269)](_0x205d3f))throw menuError('menu_plan_invalid',_0x8e74bc(0x23f));}function cascadeForTargets(_0x3859e9){const _0xd7919c=a108_0x4b1a15,_0x3d42c3=_0x3859e9['map'](_0x418e6f=>_0x418e6f['pageId'])['filter'](_0x5e26b8=>_0x5e26b8!=null)['filter']((_0x155e14,_0x281d97,_0x19f225)=>_0x19f225['indexOf'](_0x155e14)===_0x281d97);return{'pages':_0x3d42c3,'pageSchemaAffected':_0x3d42c3[_0xd7919c(0x224)]>0x0};}function asMenuError(_0x1a7ede){const _0x383c43=a108_0x4b1a15;return _0x1a7ede instanceof CliError?_0x1a7ede:menuError(_0x383c43(0x245),_0x1a7ede instanceof Error?_0x1a7ede[_0x383c43(0x268)]:String(_0x1a7ede));}
1
+ function a108_0xffa8(_0xc270d1,_0x31d89f){_0xc270d1=_0xc270d1-0x133;const _0x4be481=a108_0x4be4();let _0xffa8c7=_0x4be481[_0xc270d1];return _0xffa8c7;}const a108_0xf501f1=a108_0xffa8;(function(_0x462e7d,_0x3740ae){const _0xaa2c63=a108_0xffa8,_0x1d863d=_0x462e7d();while(!![]){try{const _0x57cbd1=-parseInt(_0xaa2c63(0x19f))/0x1*(-parseInt(_0xaa2c63(0x188))/0x2)+-parseInt(_0xaa2c63(0x14f))/0x3*(-parseInt(_0xaa2c63(0x166))/0x4)+-parseInt(_0xaa2c63(0x161))/0x5+-parseInt(_0xaa2c63(0x17b))/0x6+-parseInt(_0xaa2c63(0x13a))/0x7*(-parseInt(_0xaa2c63(0x147))/0x8)+parseInt(_0xaa2c63(0x174))/0x9+-parseInt(_0xaa2c63(0x149))/0xa;if(_0x57cbd1===_0x3740ae)break;else _0x1d863d['push'](_0x1d863d['shift']());}catch(_0xd9a6b9){_0x1d863d['push'](_0x1d863d['shift']());}}}(a108_0x4be4,0xc5643));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_0xf501f1(0x19c),'path':'/smartapi/menu/batchDelete'}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a108_0xf501f1(0x18c)},MENU_DELETE_RECURSIVE_FLAG={'name':'recursive','type':a108_0xf501f1(0x13e),'description':a108_0xf501f1(0x196)},MENU_DELETE_PLAN_OUT_FLAG={'name':a108_0xf501f1(0x16c),'type':'string','description':'Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file'},MENU_DELETE_PLAN_FLAG={'name':a108_0xf501f1(0x140),'type':a108_0xf501f1(0x187),'description':a108_0xf501f1(0x18e)};export const menuDelete={'service':a108_0xf501f1(0x165),'command':a108_0xf501f1(0x184),'description':a108_0xf501f1(0x14d),'risk':a108_0xf501f1(0x1a0),'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'(_0x205b03){const _0x2d9048=a108_0xf501f1;_0x205b03[_0x2d9048(0x175)](_0x2d9048(0x1a5))?validateDeleteDryRunInput(_0x205b03):validateDeleteExecuteInput(_0x205b03),requireExplicitYes(_0x205b03);},async 'dryRun'(_0x55ff76){const _0x810a49=a108_0xf501f1;validateDeleteDryRunInput(_0x55ff76);const _0x543ea7=await buildDeletePlan(_0x55ff76),_0x80fe7f=createMenuDeletePlanFile(_0x55ff76['appCode'],_0x543ea7),_0x1b7f4f=await writeMenuDeletePlan(_0x55ff76['str'](_0x810a49(0x16c)),_0x80fe7f),_0x4b0954=mutationResult({..._0x543ea7,'planFile':{'path':_0x1b7f4f,'createdAt':_0x80fe7f[_0x810a49(0x194)],'expiresAt':_0x80fe7f['expiresAt']}});return menuDryRunResult(_0x4b0954,{'method':'POST','url':_0x810a49(0x18d),'body':{'idList':_0x4b0954[_0x810a49(0x19d)]},'description':_0x810a49(0x172)+(_0x4b0954[_0x810a49(0x19d)]?.[_0x810a49(0x190)]??0x1)+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x4b0954[_0x810a49(0x156)]['id']+_0x810a49(0x15c)+_0x1b7f4f+'.'});},async 'execute'(_0x457046){const _0x3f942e=a108_0xf501f1;requireExplicitYes(_0x457046),validateDeleteExecuteInput(_0x457046);const _0x3baf2f=await readMenuDeletePlan(_0x457046[_0x3f942e(0x16e)](_0x3f942e(0x140))),_0x45e541=mutationPlanFromDeleteFile(_0x3baf2f[_0x3f942e(0x140)],_0x3baf2f[_0x3f942e(0x18b)]),_0x1e9694=_0x3baf2f[_0x3f942e(0x140)][_0x3f942e(0x139)]['id'];try{assertMenuDeletePlanExecutable(_0x3baf2f['plan'],_0x457046[_0x3f942e(0x1a8)]);}catch(_0x28ec44){throw menuFailure(asMenuError(_0x28ec44),_0x45e541,{'stage':_0x3f942e(0x183),'failed':{'id':_0x1e9694}});}let _0x1ef1bc,_0xc42b6b;try{_0x1ef1bc=await fetchMutationSnapshot(_0x457046,_0x3f942e(0x19a),_0x1e9694),_0xc42b6b=assertMenuDeletePlanCurrent(_0x3baf2f[_0x3f942e(0x140)],_0x457046[_0x3f942e(0x1a8)],_0x1ef1bc),assertDeleteTargetsComplete(_0x3baf2f[_0x3f942e(0x140)],_0x1ef1bc),_0xc42b6b[_0x3f942e(0x191)](_0x19d734=>assertDeleteSafety(_0x19d734,_0x3baf2f[_0x3f942e(0x140)]['recursive'])),assertNoSharedPages(_0x1ef1bc,_0xc42b6b),assertCascadeMatchesPlan(_0x45e541,_0xc42b6b);}catch(_0x4e6490){throw menuFailure(asMenuError(_0x4e6490),_0x45e541,{'stage':_0x3f942e(0x18f),'failed':{'id':_0x1e9694}});}const _0x522ff7=_0x3baf2f[_0x3f942e(0x140)][_0x3f942e(0x19d)];let _0x438295;try{_0x438295=await batchDeleteMenuEntities(_0x457046[_0x3f942e(0x193)],_0x522ff7);}catch(_0x2ad158){const _0x40fab0=mapMenuApiError(_0x2ad158,_0x3f942e(0x13c)),_0x4096a0=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0x3d3d63;try{_0x3d3d63=await readDeleteOutcome(_0x457046,_0x522ff7);}catch(_0x3f17eb){const _0x3d9b44=describeMenuErrorCause(_0x3f17eb,'read\x20menu\x20state\x20after\x20batch\x20delete\x20failure',_0x1e9694);_0x4096a0[_0x3f942e(0x1a6)](_0x3f942e(0x17f)+_0x3d9b44[_0x3f942e(0x16f)]+_0x3f942e(0x144)+_0x3d9b44[_0x3f942e(0x178)]);throw menuFailure(_0x40fab0,_0x45e541,{'stage':'batch-delete','failed':{'targetIds':_0x522ff7,'targetIdsAbsent':_0x3f942e(0x180),..._0x3d9b44},'warnings':_0x4096a0,'verification':{'status':_0x3f942e(0x158),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x522ff7}});}throw menuFailure(_0x40fab0,_0x45e541,{'stage':_0x3f942e(0x142),'succeeded':_0x3d3d63[_0x3f942e(0x176)][_0x3f942e(0x154)](_0xa4cca8=>({'id':_0xa4cca8,'deleted':!![]})),'failed':{'targetIds':_0x522ff7,'absentIds':_0x3d3d63[_0x3f942e(0x176)],'remainingIds':_0x3d3d63[_0x3f942e(0x197)]},'warnings':_0x4096a0,'verification':verificationFromOutcome(_0x3d3d63)});}if(_0x438295!==_0x522ff7['length']){const _0x6d844d=menuError('menu_batch_delete_count_mismatch',_0x3f942e(0x15a)+_0x438295+_0x3f942e(0x141)+_0x522ff7[_0x3f942e(0x190)]+'.',_0x3f942e(0x14b)),_0x59d6e6=[_0x3f942e(0x148)];let _0x415187;try{_0x415187=await readDeleteOutcome(_0x457046,_0x522ff7);}catch(_0x2a5be0){const _0x203e08=describeMenuErrorCause(_0x2a5be0,'read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch',_0x1e9694);_0x59d6e6['push'](_0x3f942e(0x15b)+_0x203e08[_0x3f942e(0x16f)]+_0x3f942e(0x144)+_0x203e08[_0x3f942e(0x178)]);throw menuFailure(_0x6d844d,_0x45e541,{'stage':_0x3f942e(0x142),'failed':{'targetIds':_0x522ff7,'expectedCount':_0x522ff7[_0x3f942e(0x190)],'reportedDeletedCount':_0x438295,'targetIdsAbsent':'unconfirmed',..._0x203e08},'warnings':_0x59d6e6,'verification':{'status':'failed','lookupCommand':_0x3f942e(0x177),'targetIds':_0x522ff7}});}throw menuFailure(_0x6d844d,_0x45e541,{'stage':_0x3f942e(0x142),'succeeded':_0x415187['absentIds'][_0x3f942e(0x154)](_0x250c3e=>({'id':_0x250c3e,'deleted':!![]})),'failed':{'targetIds':_0x522ff7,'expectedCount':_0x522ff7['length'],'reportedDeletedCount':_0x438295,'absentIds':_0x415187[_0x3f942e(0x176)],'remainingIds':_0x415187[_0x3f942e(0x197)]},'warnings':_0x59d6e6,'verification':verificationFromOutcome(_0x415187)});}let _0x56dc5e;try{_0x56dc5e=await readDeleteOutcome(_0x457046,_0x522ff7);}catch(_0x1323b9){const _0x157f43=describeMenuErrorCause(_0x1323b9,_0x3f942e(0x155),_0x1e9694),_0x437f8f=asVerificationError(_0x1323b9,_0x3f942e(0x168)+_0x1e9694+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x437f8f,_0x45e541,{'stage':_0x3f942e(0x15f),'succeeded':_0x522ff7['map'](_0x55bf2d=>({'id':_0x55bf2d,'deleteRequested':!![]})),'failed':{'id':_0x1e9694,'targetIds':_0x522ff7,'targetIdsAbsent':_0x3f942e(0x180),..._0x157f43},'warnings':[_0x3f942e(0x16a)],'verification':{'status':_0x3f942e(0x158),'lookupCommand':_0x3f942e(0x177),'targetIds':_0x522ff7}});}if(_0x56dc5e['remainingIds'][_0x3f942e(0x190)]>0x0){const _0x29de64=menuError(_0x3f942e(0x19b),'One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20'+_0x56dc5e[_0x3f942e(0x197)][_0x3f942e(0x1a2)](',\x20')+'.',_0x3f942e(0x14b));throw menuFailure(_0x29de64,_0x45e541,{'stage':_0x3f942e(0x15f),'succeeded':_0x522ff7['map'](_0x48c802=>({'id':_0x48c802,'deleteRequested':!![]})),'failed':{'id':_0x1e9694,'targetIds':_0x522ff7,'absentIds':_0x56dc5e[_0x3f942e(0x176)],'remainingIds':_0x56dc5e[_0x3f942e(0x197)]},'warnings':[_0x3f942e(0x1a1)],'verification':verificationFromOutcome(_0x56dc5e)});}const _0x2a7304=_0x522ff7[_0x3f942e(0x154)](_0x592861=>({'id':_0x592861,'deleted':!![]})),_0x470630=mutationResult({..._0x45e541,'dryRun':![],'succeeded':_0x2a7304,'verification':{'checkedBy':_0x3f942e(0x185),'plannedSnapshotHash':_0x45e541['snapshotHash'],'finalSnapshotHash':_0x56dc5e['snapshot']['hash'],'reportedDeletedCount':_0x438295,'targetAbsent':!_0x56dc5e[_0x3f942e(0x181)][_0x3f942e(0x143)][_0x3f942e(0x17e)](_0x1e9694),'allTargetsAbsent':!![],'targetIds':_0x522ff7}});return{'ok':!![],'data':_0x470630,'message':_0x3f942e(0x15d)+_0x2a7304['length']+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x1e9694+'.'};}};async function readDeleteOutcome(_0x3a2c69,_0x4e5cbe){const _0x12772c=a108_0xf501f1,_0x31f2bd=await fetchMenuSnapshot(_0x3a2c69[_0x12772c(0x1a8)],_0x3a2c69[_0x12772c(0x193)]);return{'snapshot':_0x31f2bd,'absentIds':_0x4e5cbe['filter'](_0x40981f=>!_0x31f2bd[_0x12772c(0x143)][_0x12772c(0x17e)](_0x40981f)),'remainingIds':_0x4e5cbe['filter'](_0x1c8a0d=>_0x31f2bd[_0x12772c(0x143)][_0x12772c(0x17e)](_0x1c8a0d))};}function verificationFromOutcome(_0x5bd62b){const _0x221248=a108_0xf501f1;return{'checkedBy':_0x221248(0x185),'absentIds':_0x5bd62b[_0x221248(0x176)],'remainingIds':_0x5bd62b['remainingIds']};}function validateDeleteDryRunInput(_0x51b64c){const _0x14ffeb=a108_0xf501f1;validateExactId(_0x51b64c);if(!hasFlag(_0x51b64c,'plan-out')||!_0x51b64c['str']('plan-out')[_0x14ffeb(0x13d)]())throw CliErrors[_0x14ffeb(0x146)](_0x14ffeb(0x16c),'--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x51b64c,_0x14ffeb(0x140)))throw CliErrors[_0x14ffeb(0x164)](_0x14ffeb(0x1a4));}function validateDeleteExecuteInput(_0x58581a){const _0x2a46f9=a108_0xf501f1;if(!hasFlag(_0x58581a,_0x2a46f9(0x140))||!_0x58581a[_0x2a46f9(0x16e)](_0x2a46f9(0x140))['trim']())throw CliErrors[_0x2a46f9(0x146)]('plan',_0x2a46f9(0x1aa));const _0x192334=['id','recursive',_0x2a46f9(0x16c),_0x2a46f9(0x17a),_0x2a46f9(0x1a9),_0x2a46f9(0x169)][_0x2a46f9(0x189)](_0x419c48=>hasFlag(_0x58581a,_0x419c48));if(_0x192334[_0x2a46f9(0x190)]>0x0)throw CliErrors[_0x2a46f9(0x164)](_0x2a46f9(0x179)+_0x192334['map'](_0xdf4395=>'--'+_0xdf4395)[_0x2a46f9(0x1a2)](',\x20')+'.');}async function buildDeletePlan(_0x4a06fa){const _0x33c34f=a108_0xf501f1,_0x3b49fc=validateExactId(_0x4a06fa),_0x12049b=await fetchMutationSnapshot(_0x4a06fa,_0x33c34f(0x14c),_0x3b49fc),_0x1f92c8=requireMenu(_0x12049b,_0x3b49fc);assertExpectedState(_0x4a06fa,_0x1f92c8);const _0x4a34a9=_0x4a06fa[_0x33c34f(0x175)]('recursive');let _0x44cc81;if(_0x4a34a9){if(_0x1f92c8[_0x33c34f(0x151)]['trim']()[_0x33c34f(0x171)]()!==_0x33c34f(0x173))throw menuError(_0x33c34f(0x136),_0x33c34f(0x162)+_0x1f92c8['id']+_0x33c34f(0x137)+(_0x1f92c8[_0x33c34f(0x151)]||_0x33c34f(0x133))+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x44cc81=collectDeleteTargets(_0x12049b,_0x1f92c8),_0x44cc81[_0x33c34f(0x191)](_0x75fefc=>assertDeleteSafety(_0x75fefc,!![]));}else assertDeleteSafety(_0x1f92c8),_0x44cc81=[_0x1f92c8];assertNoSharedPages(_0x12049b,_0x44cc81);const _0x2ef047=_0x44cc81[_0x33c34f(0x154)](_0x3be4ab=>_0x3be4ab['id']),_0x3e0e78=cascadeForTargets(_0x44cc81),_0x2cb326=_0x3e0e78[_0x33c34f(0x186)][_0x33c34f(0x190)]>0x0?[_0x33c34f(0x1ab)]:[];return mutationResult({'operation':_0x33c34f(0x184),'selector':{'id':_0x3b49fc,'recursive':_0x4a34a9},'before':_0x1f92c8,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':'batch-delete-menu','method':_0x33c34f(0x19c),'path':'/smartapi/menu/batchDelete','body':{'idList':_0x2ef047}}],'targets':_0x44cc81,'deleteOrder':_0x2ef047,'snapshotHash':_0x12049b['hash'],'cascade':_0x3e0e78,'warnings':_0x2cb326});}function assertDeleteSafety(_0xc4aea9,_0x4186a8=![]){const _0x3ae274=a108_0xf501f1,_0x167e72=_0xc4aea9[_0x3ae274(0x151)][_0x3ae274(0x13d)]()[_0x3ae274(0x171)]()===_0x3ae274(0x173);if(_0xc4aea9[_0x3ae274(0x153)]>0x0&&(!_0x4186a8||!_0x167e72))throw menuError('menu_non_empty',_0x3ae274(0x162)+_0xc4aea9['id']+_0x3ae274(0x135)+_0xc4aea9['childrenCount']+_0x3ae274(0x170),_0x3ae274(0x17d)+_0xc4aea9[_0x3ae274(0x160)][_0x3ae274(0x1a2)](',\x20'));if(_0x167e72&&_0xc4aea9[_0x3ae274(0x16b)]!=null)throw menuError(_0x3ae274(0x163),_0x3ae274(0x198)+_0xc4aea9['id']+'\x20is\x20unexpectedly\x20bound\x20to\x20page\x20'+_0xc4aea9[_0x3ae274(0x16b)]+_0x3ae274(0x13b),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x167e72)return;if(!_0xc4aea9['resourcesValid'])throw menuError(_0x3ae274(0x167),_0x3ae274(0x198)+_0xc4aea9['id']+_0x3ae274(0x152),_0x3ae274(0x1ac));if(_0xc4aea9[_0x3ae274(0x159)][_0x3ae274(0x190)]>0x0)throw menuError(_0x3ae274(0x14a),'Folder\x20'+_0xc4aea9['id']+'\x20still\x20references\x20'+_0xc4aea9[_0x3ae274(0x159)][_0x3ae274(0x190)]+'\x20resource\x20URL(s).',_0x3ae274(0x195));}function collectDeleteTargets(_0x45db57,_0x1e5bcb){const _0x1d465a=[],_0x280752=new Set(),_0x4d766a=new Set(),_0x3f0ffc=_0x4877a4=>{const _0x56fc94=a108_0xffa8;if(_0x280752[_0x56fc94(0x17e)](_0x4877a4['id']))throw menuError(_0x56fc94(0x192),'Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20'+_0x4877a4['id']+'.');if(_0x4d766a[_0x56fc94(0x17e)](_0x4877a4['id']))return;_0x280752['add'](_0x4877a4['id']);for(const _0x3e1988 of _0x4877a4[_0x56fc94(0x160)]){const _0x28e79b=_0x45db57[_0x56fc94(0x143)][_0x56fc94(0x138)](_0x3e1988);if(!_0x28e79b)throw menuError('menu_tree_invalid','Menu\x20'+_0x4877a4['id']+_0x56fc94(0x13f)+_0x3e1988+'.');_0x3f0ffc(_0x28e79b);}_0x280752[_0x56fc94(0x184)](_0x4877a4['id']),_0x4d766a[_0x56fc94(0x18a)](_0x4877a4['id']),_0x1d465a[_0x56fc94(0x1a6)](_0x4877a4);};return _0x3f0ffc(_0x1e5bcb),_0x1d465a;}function assertDeleteTargetsComplete(_0x3a69d9,_0x2c0893){const _0x5dc129=a108_0xf501f1,_0x532566=requireMenu(_0x2c0893,_0x3a69d9[_0x5dc129(0x139)]['id']);if(_0x3a69d9[_0x5dc129(0x157)]&&_0x532566[_0x5dc129(0x151)][_0x5dc129(0x13d)]()['toLowerCase']()!==_0x5dc129(0x173))throw menuError(_0x5dc129(0x19e),_0x5dc129(0x182)+_0x532566['id']+_0x5dc129(0x14e));const _0x12e44f=_0x3a69d9[_0x5dc129(0x157)]?collectDeleteTargets(_0x2c0893,_0x532566)[_0x5dc129(0x154)](_0x33d4be=>_0x33d4be['id']):[_0x532566['id']];if(JSON[_0x5dc129(0x15e)](_0x3a69d9[_0x5dc129(0x19d)])!==JSON['stringify'](_0x12e44f))throw menuError(_0x5dc129(0x19e),'Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.',_0x5dc129(0x134));}function assertNoSharedPages(_0x11a100,_0x5936a2){const _0xcb09a2=a108_0xf501f1,_0x477d88=new Set(_0x5936a2[_0xcb09a2(0x154)](_0x31ddea=>_0x31ddea['id'])),_0x28f254=new Set(_0x5936a2['map'](_0xe2d32f=>_0xe2d32f['pageId'])[_0xcb09a2(0x189)](_0x46af71=>_0x46af71!=null));if(_0x28f254['size']===0x0)return;const _0x314999=_0x11a100[_0xcb09a2(0x17c)][_0xcb09a2(0x189)](_0x55475d=>!_0x477d88[_0xcb09a2(0x17e)](_0x55475d['id'])&&_0x55475d['pageId']!=null&&_0x28f254[_0xcb09a2(0x17e)](_0x55475d[_0xcb09a2(0x16b)]));if(_0x314999[_0xcb09a2(0x190)]===0x0)return;const _0x191fb8=_0x314999[_0xcb09a2(0x154)](_0x43eb37=>_0xcb09a2(0x16d)+_0x43eb37[_0xcb09a2(0x16b)]+'\x20->\x20menu\x20'+_0x43eb37['id'])[_0xcb09a2(0x1a2)](',\x20');throw menuError(_0xcb09a2(0x150),'Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x191fb8+'.',_0xcb09a2(0x1a3));}function assertCascadeMatchesPlan(_0x3f3126,_0x2074dd){const _0x2fb311=a108_0xf501f1,_0x228651=cascadeForTargets(_0x2074dd);if(JSON['stringify'](_0x3f3126['cascade'])!==JSON[_0x2fb311(0x15e)](_0x228651))throw menuError(_0x2fb311(0x19e),_0x2fb311(0x1a7));}function cascadeForTargets(_0x5db98f){const _0x45feb0=a108_0xf501f1,_0x368ce6=_0x5db98f[_0x45feb0(0x154)](_0x2e9622=>_0x2e9622[_0x45feb0(0x16b)])[_0x45feb0(0x189)](_0x50cfb9=>_0x50cfb9!=null)['filter']((_0x361a10,_0x77381a,_0x28fb12)=>_0x28fb12[_0x45feb0(0x145)](_0x361a10)===_0x77381a);return{'pages':_0x368ce6,'pageSchemaAffected':_0x368ce6['length']>0x0};}function a108_0x4be4(){const _0x4eacaf=['):\x20','indexOf','flagMissing','3592zPxIBC','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','12843140RLjjyk','menu_folder_has_resources','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','plan\x20delete','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','\x20is\x20not\x20a\x20folder.','3032664xDKJpH','menu_page_shared','type','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','childrenCount','map','verify\x20batch\x20delete','selector','recursive','failed','resources','Backend\x20reported\x20','Post-mismatch\x20menu\x20readback\x20failed\x20(',';\x20execution\x20must\x20consume\x20','Deleted\x20','stringify','verification','childrenIds','4990475ITRchj','Menu\x20','menu_delete_page_bound','validation','menu','4lftMlg','menu_folder_resources_invalid','Batch\x20delete\x20request\x20for\x20menu\x20','expected-children-count','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','pageId','plan-out','page\x20','str','causeCode','\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','toLowerCase','Would\x20batch\x20delete\x20','folder','5315040aQoHMu','bool','absentIds','rabetbase\x20menu\x20list\x20--format\x20json','causeMessage','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','expect-parent-id','2377548ioKEuB','menus','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','has','Post-failure\x20menu\x20readback\x20failed\x20(','unconfirmed','snapshot','Recursive\x20menu\x20delete\x20plan\x20root\x20','plan-validation','delete','menu\x20list','pages','string','2zdzdAA','filter','add','path','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','/smartapi/menu/batchDelete','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','pre-write-plan-validation','length','forEach','menu_tree_invalid','cookie','createdAt','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','remainingIds','Folder\x20','message','execute\x20reviewed\x20delete\x20plan','menu_verification_failed','POST','deleteOrder','menu_plan_invalid','1269257DJRzdj','high-risk-write','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','join','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','dry-run','push','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.','appCode','expect-path','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','unknown','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','\x20has\x20','menu_recursive_requires_folder','\x20is\x20type\x20\x22','get','target','9611JBOYpd','\x20and\x20cannot\x20be\x20deleted\x20safely.','batch\x20delete','trim','boolean','\x20references\x20missing\x20child\x20','plan','\x20deleted\x20menus;\x20expected\x20','batch-delete','byId'];a108_0x4be4=function(){return _0x4eacaf;};return a108_0x4be4();}function asMenuError(_0x4c3c6c){const _0x391e27=a108_0xf501f1;return _0x4c3c6c instanceof CliError?_0x4c3c6c:menuError(_0x391e27(0x19e),_0x4c3c6c instanceof Error?_0x4c3c6c[_0x391e27(0x199)]:String(_0x4c3c6c));}
@@ -1 +1 @@
1
- const a109_0x2b3a4d=a109_0x5a61;function a109_0x5a61(_0x19e65f,_0x6768a5){_0x19e65f=_0x19e65f-0x14f;const _0x31bd30=a109_0x31bd();let _0x5a61bb=_0x31bd30[_0x19e65f];return _0x5a61bb;}(function(_0x1dd4ae,_0x15da2b){const _0x676efc=a109_0x5a61,_0x369e52=_0x1dd4ae();while(!![]){try{const _0x15d51b=parseInt(_0x676efc(0x195))/0x1*(parseInt(_0x676efc(0x16d))/0x2)+-parseInt(_0x676efc(0x166))/0x3+parseInt(_0x676efc(0x1cd))/0x4*(-parseInt(_0x676efc(0x16a))/0x5)+-parseInt(_0x676efc(0x1c1))/0x6*(parseInt(_0x676efc(0x187))/0x7)+-parseInt(_0x676efc(0x15c))/0x8+-parseInt(_0x676efc(0x163))/0x9*(parseInt(_0x676efc(0x1cf))/0xa)+parseInt(_0x676efc(0x17c))/0xb;if(_0x15d51b===_0x15da2b)break;else _0x369e52['push'](_0x369e52['shift']());}catch(_0x4f709f){_0x369e52['push'](_0x369e52['shift']());}}}(a109_0x31bd,0xbdb9d));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_0x2b3a4d(0x184),'new-window':a109_0x2b3a4d(0x164)};export function validateExternalMenuUrl(_0x39e886){const _0x4a9bdd=a109_0x2b3a4d,_0x2a9553=_0x39e886['trim']();let _0x1f6757;try{_0x1f6757=new URL(_0x2a9553);}catch{throw menuError('menu_url_invalid',_0x4a9bdd(0x1b9),'Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x1f6757[_0x4a9bdd(0x15a)]!==_0x4a9bdd(0x18c))throw menuError(_0x4a9bdd(0x1a9),_0x4a9bdd(0x19e),_0x4a9bdd(0x1c7));if(_0x1f6757[_0x4a9bdd(0x1b5)]||_0x1f6757[_0x4a9bdd(0x153)])throw menuError(_0x4a9bdd(0x1cb),_0x4a9bdd(0x151),'Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.');return _0x2a9553;}export const menuExternalLinkCreate={'service':a109_0x2b3a4d(0x1c0),'command':a109_0x2b3a4d(0x172),'description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':a109_0x2b3a4d(0x15b),'structuredErrors':!![],'flags':[{'name':'label','type':a109_0x2b3a4d(0x181),'required':!![],'description':'Menu\x20label'},{'name':a109_0x2b3a4d(0x196),'type':'string','required':!![],'enum':[a109_0x2b3a4d(0x1bb),a109_0x2b3a4d(0x1c3)],'description':'How\x20to\x20open\x20the\x20external\x20website'},{'name':a109_0x2b3a4d(0x178),'type':'string','required':!![],'description':a109_0x2b3a4d(0x1b4)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a109_0x2b3a4d(0x1bf),'type':a109_0x2b3a4d(0x19c),'default':!![],'description':a109_0x2b3a4d(0x190)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x34b630){validateAddInput(_0x34b630);},async 'dryRun'(_0x339896){const _0x110084=a109_0x2b3a4d;validateAddInput(_0x339896);const {plan:_0x327dea}=await buildSafeAddPlan(_0x339896,!![]),_0x3019ed=_0x327dea[_0x110084(0x155)],_0x1537f1=createBody(_0x3019ed);return menuDryRunResult(_0x327dea,{'method':_0x110084(0x1bc),'url':_0x110084(0x152),'body':_0x1537f1,'description':_0x110084(0x1d7)+JSON[_0x110084(0x1d5)](_0x3019ed[_0x110084(0x19a)])+'\x20with\x20'+_0x339896[_0x110084(0x1a4)](_0x110084(0x196))+_0x110084(0x170)});},async 'execute'(_0x155c56){const _0x319749=a109_0x2b3a4d;validateAddInput(_0x155c56);const _0x598139=await buildSafeAddPlan(_0x155c56,![]),{plan:_0x5bdcdf,snapshot:_0x3c8928}=_0x598139,_0x5b3a25=_0x5bdcdf[_0x319749(0x155)],_0x320da9=buildMenuLookupCommand(_0x155c56[_0x319749(0x1aa)]);await recheckAddSnapshot(_0x155c56,_0x5bdcdf);let _0x3e0a3f;try{_0x3e0a3f=await createMenuEntity(_0x155c56[_0x319749(0x1aa)],_0x155c56[_0x319749(0x1ad)],createBody(_0x5b3a25));}catch(_0x1f38fe){const _0x50b264=mapMenuApiError(_0x1f38fe,_0x319749(0x158));if(!isMenuResponseLoss(_0x1f38fe)||_0x50b264[_0x319749(0x16c)]===_0x319749(0x1ab))throw externalLinkCreateFailure(_0x50b264,_0x5bdcdf,{'stage':_0x319749(0x1ae),'failed':{},'verification':{'status':_0x319749(0x156),'lookupCommand':_0x320da9}});return recoverAfterResponseLoss(_0x155c56,_0x598139,_0x320da9);}const _0x24db19=Number(_0x3e0a3f?.['id']),_0x54c61f=typeof _0x3e0a3f?.[_0x319749(0x1a0)]===_0x319749(0x181)?_0x3e0a3f['path']:'';if(!Number[_0x319749(0x199)](_0x24db19)||_0x24db19<=0x0||!_0x54c61f[_0x319749(0x1a6)]()){const _0x1a8760=menuError(_0x319749(0x1d0),_0x319749(0x1d8),_0x319749(0x17d)+_0x320da9+_0x319749(0x179));throw externalLinkCreateFailure(_0x1a8760,_0x5bdcdf,{'stage':_0x319749(0x192),'succeeded':Number[_0x319749(0x199)](_0x24db19)&&_0x24db19>0x0?[{'id':_0x24db19,'created':!![]}]:[],'failed':{'createdId':Number[_0x319749(0x199)](_0x24db19)?_0x24db19:null,'generatedPathConfirmed':Boolean(_0x54c61f['trim']())},'warnings':[_0x319749(0x193)],'after':Number[_0x319749(0x199)](_0x24db19)&&_0x24db19>0x0?{..._0x5b3a25,'id':_0x24db19,'path':_0x54c61f}:_0x5b3a25,'verification':{'status':_0x319749(0x156),'lookupCommand':_0x320da9,...Number['isSafeInteger'](_0x24db19)&&_0x24db19>0x0?{'targetId':_0x24db19}:{}}});}const _0x4dc60b=await readAndVerifyCreatedMenu({'appCode':_0x155c56[_0x319749(0x1aa)],'cookie':_0x155c56['cookie'],'plan':_0x5bdcdf,'afterPlan':_0x5b3a25,'createdId':_0x24db19,'expectedPath':_0x54c61f,'lookupCommand':_0x320da9,'recovered':![]});return creationSuccess(_0x5bdcdf,_0x4dc60b['snapshot'],_0x4dc60b['fact'],![]);}};function validateAddInput(_0x1062ff){const _0x4f3803=a109_0x2b3a4d;if(!_0x1062ff['str'](_0x4f3803(0x19a))[_0x4f3803(0x1a6)]())throw CliErrors[_0x4f3803(0x189)](_0x4f3803(0x19a));resolveExternalMenuType(_0x1062ff),validateExternalMenuUrl(_0x1062ff[_0x4f3803(0x1a4)]('url')),parseParentId(_0x1062ff,_0x4f3803(0x1d6)),validateSort(_0x1062ff);}function a109_0x31bd(){const _0x4c3652=['Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','body','embedded','POST','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','menus','visible','menu','703536JpNITP','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','new-window','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','\x20after\x20response\x20loss.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Provide\x20an\x20HTTPS\x20URL.','readbackerror','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','menu_url_credentials_forbidden','rawerror','4HZtppW','fromEntries','4612970zizuFG','menu_create_response_invalid','Created\x20menu\x20','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','stringify','parent-id','Would\x20create\x20external\x20website\x20link\x20menu\x20','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','/smartapi/menu/create','password','\x27\x5c\x27\x27','after','failed','<redacted>','create\x20external\x20menu','length','protocol','write','4924960oipzMD','object','recovered','verification','lookupCommand','causemessage','entries','27DmGUPt','link','map','3717660lgmQlu','expectedPath','afterPlan','menu_state_drift','3336750RULaPj','menu_create_recovery_required','code','16lwoKaG','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','menu_mutation_failed','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','Menu\x20','external-link-create','create-recovery','plannedActions','hash','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','URL','url','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','rawFlags','toLowerCase','49220314nAuhJo','Run\x20','before','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','data','string','replace','Recovered\x20menu\x20','iframe','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','menu_not_found','21zyhcPb','call','flagMissing','isArray','plan','https:','\x20has\x20an\x20unexpected\x20','menu\x20list','pre-write-recheck','Whether\x20the\x20menu\x20is\x20visible','succeeded','create-response-validation','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','cause','70049ZZSTay','open-mode','sort','<platform-generated>','isSafeInteger','label','External\x20menu\x20creation\x20failed.','boolean','menu_open_mode_invalid','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','parent','path','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','bool','menu_verification_failed','str','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','trim','\x20could\x20not\x20be\x20verified.','filter','menu_url_https_required','appCode','menu_permission_denied','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','cookie','create','byId','type','has','parentId','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','External\x20HTTPS\x20URL','username','createdId','selector'];a109_0x31bd=function(){return _0x4c3652;};return a109_0x31bd();}function resolveExternalMenuType(_0x264acc){const _0x20f4e1=a109_0x2b3a4d,_0x486336=_0x264acc[_0x20f4e1(0x1a4)](_0x20f4e1(0x196))['trim']();if(!_0x486336)throw CliErrors[_0x20f4e1(0x189)]('open-mode');const _0x303d78=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x486336];if(!_0x303d78)throw menuError(_0x20f4e1(0x19d),_0x20f4e1(0x1d2),_0x20f4e1(0x1bd));return _0x303d78;}async function buildAddPlan(_0x20b291,_0x50d7a9){const _0x3fc073=a109_0x2b3a4d,_0x58f53f=await fetchMutationSnapshot(_0x20b291,_0x3fc073(0x158)),_0x520472=parseParentId(_0x20b291,_0x3fc073(0x1d6))??null;if(_0x520472!=null)requireFolder(_0x58f53f,_0x520472);const _0x4ef2b4=validateSort(_0x20b291),_0x18f553=_0x4ef2b4??nextSiblingSort(_0x58f53f,_0x520472,_0x3fc073(0x1c0)),_0x3e6952=_0x20b291[_0x3fc073(0x1a4)](_0x3fc073(0x19a))[_0x3fc073(0x1a6)](),_0x5e57ad=resolveExternalMenuType(_0x20b291),_0x3b22d8=validateExternalMenuUrl(_0x20b291[_0x3fc073(0x1a4)](_0x3fc073(0x178))),_0x2b378e=Object['prototype']['hasOwnProperty'][_0x3fc073(0x188)](_0x20b291[_0x3fc073(0x17a)],'visible')?_0x20b291[_0x3fc073(0x1a2)]('visible'):!![],_0x4f4065={'id':null,'parentId':_0x520472,'label':_0x3e6952,'path':_0x3fc073(0x198),'url':_0x3b22d8,'type':_0x5e57ad,'visible':_0x2b378e,'sort':_0x18f553},_0x1373d8=buildMenuLookupCommand(_0x20b291[_0x3fc073(0x1aa)]),_0x1fa776=mutationResult({'operation':'add','selector':{'parentId':_0x520472,'type':_0x5e57ad,'label':_0x3e6952,'url':_0x3b22d8},'before':null,'after':_0x4f4065,'dryRun':_0x50d7a9,'backend':[{'method':'POST','path':_0x3fc073(0x152)}],'plannedActions':[{'stage':'create-menu','method':_0x3fc073(0x1bc),'path':_0x3fc073(0x152),'body':createBody(_0x4f4065)}],'snapshotHash':_0x58f53f[_0x3fc073(0x175)],'warnings':[_0x3fc073(0x1a5)],'verification':{'lookupCommand':_0x1373d8}});return{'plan':_0x1fa776,'snapshot':_0x58f53f};}async function buildSafeAddPlan(_0x7b0825,_0x44c055){try{return await buildAddPlan(_0x7b0825,_0x44c055);}catch(_0x3e84d8){throw safeMenuAddError(_0x3e84d8);}}async function recheckAddSnapshot(_0x2cecb3,_0x45b412){const _0x16b3af=a109_0x2b3a4d;try{await recheckMutationSnapshot(_0x2cecb3,_0x45b412,_0x16b3af(0x158));}catch(_0x501c26){const _0x4382af=getFailureRecord(_0x501c26);throw externalLinkCreateFailure(_0x501c26,_0x45b412,{'stage':_0x16b3af(0x18f),'failed':{..._0x4382af?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0x4382af['expectedSnapshotHash']}:{},..._0x4382af?.['currentSnapshotHash']?{'currentSnapshotHash':_0x4382af['currentSnapshotHash']}:{}}});}}function createBody(_0x166ddb){const _0x5a0e55=a109_0x2b3a4d;return{'parentId':toApiParentId(_0x166ddb[_0x5a0e55(0x1b2)]),'label':String(_0x166ddb[_0x5a0e55(0x19a)]),'type':String(_0x166ddb[_0x5a0e55(0x1b0)]),'url':String(_0x166ddb[_0x5a0e55(0x178)]),'visible':Boolean(_0x166ddb[_0x5a0e55(0x1bf)]),'sort':Number(_0x166ddb[_0x5a0e55(0x197)]),'extend':{}};}function buildMenuLookupCommand(_0x492545){const _0x18e879=a109_0x2b3a4d,_0x121b52='\x27'+_0x492545['replace'](/'/g,_0x18e879(0x154))+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x121b52+'\x20--format\x20compress';}async function recoverAfterResponseLoss(_0x5bb242,_0x13d6a0,_0x249897){const _0x4e4e9a=a109_0x2b3a4d,{plan:_0x42e047,snapshot:_0x59cc9e}=_0x13d6a0,_0x34163f=_0x42e047[_0x4e4e9a(0x155)];let _0x343846;try{_0x343846=await fetchMenuSnapshot(_0x5bb242['appCode'],_0x5bb242[_0x4e4e9a(0x1ad)]);}catch(_0x1fe374){throw recoveryRequiredFailure(_0x42e047,_0x249897,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x327e77=_0x343846[_0x4e4e9a(0x1be)][_0x4e4e9a(0x1a8)](_0x562b0b=>_0x562b0b[_0x4e4e9a(0x1b2)]===_0x34163f[_0x4e4e9a(0x1b2)]&&_0x562b0b['type']===_0x34163f[_0x4e4e9a(0x1b0)]&&_0x562b0b[_0x4e4e9a(0x19a)]===_0x34163f[_0x4e4e9a(0x19a)]&&_0x562b0b['url']===_0x34163f[_0x4e4e9a(0x178)]),_0x34ec79=_0x327e77[_0x4e4e9a(0x1a8)](_0x41d8ee=>!_0x59cc9e[_0x4e4e9a(0x1af)][_0x4e4e9a(0x1b1)](_0x41d8ee['id'])),_0x228400=_0x327e77[_0x4e4e9a(0x1a8)](_0x3097b2=>_0x59cc9e[_0x4e4e9a(0x1af)][_0x4e4e9a(0x1b1)](_0x3097b2['id']));if(_0x327e77[_0x4e4e9a(0x159)]!==0x1||_0x34ec79[_0x4e4e9a(0x159)]!==0x1)throw recoveryRequiredFailure(_0x42e047,_0x249897,{'matchCount':_0x327e77[_0x4e4e9a(0x159)],'newMatchCount':_0x34ec79[_0x4e4e9a(0x159)],'preexistingMatchCount':_0x228400[_0x4e4e9a(0x159)]});const _0x517951=_0x34ec79[0x0];try{verifyCreatedFact(_0x517951,_0x517951['id'],_0x34163f,null);}catch(_0x3b4d2f){const _0x1771cf=_0x3b4d2f instanceof Error&&_0x4e4e9a(0x16c)in _0x3b4d2f?_0x3b4d2f:menuError('menu_verification_failed',_0x4e4e9a(0x183)+_0x517951['id']+_0x4e4e9a(0x1a7),_0x4e4e9a(0x17d)+_0x249897+'\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x1771cf,_0x42e047,{'stage':_0x4e4e9a(0x15f),'succeeded':[{'id':_0x517951['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x517951['id'],'finalFactsConfirmed':![]},'after':_0x517951,'warnings':[_0x4e4e9a(0x171)+_0x517951['id']+_0x4e4e9a(0x185)],'verification':{'status':_0x4e4e9a(0x156),'targetId':_0x517951['id'],'recovered':!![],'lookupCommand':_0x249897}});}return creationSuccess(_0x42e047,_0x343846,_0x517951,!![]);}function recoveryRequiredFailure(_0x1d100f,_0x2e63ac,_0x4107da){const _0x29c06f=a109_0x2b3a4d,_0x44ecb0=menuError(_0x29c06f(0x16b),'The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Run\x20'+_0x2e63ac+'\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.');return externalLinkCreateFailure(_0x44ecb0,_0x1d100f,{'stage':_0x29c06f(0x173),'failed':_0x4107da,'warnings':[_0x29c06f(0x1c9)],'verification':{'status':_0x29c06f(0x156),..._0x4107da,'lookupCommand':_0x2e63ac}});}async function readAndVerifyCreatedMenu(_0x2640be){const _0x3845b7=a109_0x2b3a4d;let _0x47a985;try{_0x47a985=await fetchMenuSnapshot(_0x2640be[_0x3845b7(0x1aa)],_0x2640be[_0x3845b7(0x1ad)]);}catch(_0xbe6112){const _0x3c7ec8=menuError(_0x3845b7(0x1a3),_0x3845b7(0x171)+_0x2640be[_0x3845b7(0x1b6)]+'\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.',_0x3845b7(0x17d)+_0x2640be[_0x3845b7(0x160)]+_0x3845b7(0x1ac));throw externalLinkCreateFailure(_0x3c7ec8,_0x2640be[_0x3845b7(0x18b)],{'stage':_0x3845b7(0x15f),'succeeded':[{'id':_0x2640be[_0x3845b7(0x1b6)],'created':!![]}],'failed':{'id':_0x2640be['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x2640be['afterPlan'],'id':_0x2640be[_0x3845b7(0x1b6)],'path':_0x2640be[_0x3845b7(0x167)]},'warnings':[_0x3845b7(0x171)+_0x2640be[_0x3845b7(0x1b6)]+_0x3845b7(0x176)],'verification':{'status':_0x3845b7(0x156),'targetId':_0x2640be[_0x3845b7(0x1b6)],'lookupCommand':_0x2640be[_0x3845b7(0x160)]}});}const _0x1e9628=_0x47a985[_0x3845b7(0x1af)]['get'](_0x2640be[_0x3845b7(0x1b6)]);try{if(!_0x1e9628)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x2640be[_0x3845b7(0x1b6)]+_0x3845b7(0x1c4),_0x3845b7(0x17d)+_0x2640be[_0x3845b7(0x160)]+_0x3845b7(0x1ac));verifyCreatedFact(_0x1e9628,_0x2640be['createdId'],_0x2640be[_0x3845b7(0x168)],_0x2640be[_0x3845b7(0x167)]);}catch(_0x341e87){const _0x118745=_0x341e87 instanceof Error&&_0x3845b7(0x16c)in _0x341e87?_0x341e87:menuError(_0x3845b7(0x1a3),'Created\x20menu\x20'+_0x2640be[_0x3845b7(0x1b6)]+'\x20failed\x20final\x20verification.',_0x3845b7(0x17d)+_0x2640be[_0x3845b7(0x160)]+_0x3845b7(0x1ac));throw externalLinkCreateFailure(_0x118745,_0x2640be[_0x3845b7(0x18b)],{'stage':_0x3845b7(0x15f),'succeeded':[{'id':_0x2640be['createdId'],'created':!![]}],'failed':{'id':_0x2640be['createdId'],'finalFactsConfirmed':![]},'after':_0x1e9628??{..._0x2640be[_0x3845b7(0x168)],'id':_0x2640be['createdId'],'path':_0x2640be[_0x3845b7(0x167)]},'warnings':[_0x3845b7(0x171)+_0x2640be[_0x3845b7(0x1b6)]+_0x3845b7(0x14f)],'verification':{'status':'failed','targetId':_0x2640be[_0x3845b7(0x1b6)],'recovered':_0x2640be[_0x3845b7(0x15e)],'lookupCommand':_0x2640be[_0x3845b7(0x160)]}});}return{'snapshot':_0x47a985,'fact':_0x1e9628};}function verifyCreatedFact(_0x154e04,_0x11f08f,_0x306ac1,_0x43ffac){const _0x4d25cd=a109_0x2b3a4d;if(!Number[_0x4d25cd(0x199)](_0x154e04['id'])||_0x154e04['id']<=0x0||_0x154e04['id']!==_0x11f08f)throw menuError(_0x4d25cd(0x1a3),'Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.',_0x4d25cd(0x1b8));const _0x35a3d5=[[_0x4d25cd(0x19f),_0x154e04['parentId'],_0x306ac1['parentId']],[_0x4d25cd(0x1b0),_0x154e04[_0x4d25cd(0x1b0)],_0x306ac1['type']],['label',_0x154e04[_0x4d25cd(0x19a)],_0x306ac1[_0x4d25cd(0x19a)]],[_0x4d25cd(0x177),_0x154e04[_0x4d25cd(0x178)],_0x306ac1[_0x4d25cd(0x178)]],['visibility',_0x154e04[_0x4d25cd(0x1bf)],_0x306ac1['visible']],['sort',_0x154e04[_0x4d25cd(0x197)],_0x306ac1[_0x4d25cd(0x197)]]];for(const [_0x38c265,_0x772360,_0xf6ef18]of _0x35a3d5){if(_0x772360!==_0xf6ef18)throw menuError('menu_verification_failed',_0x4d25cd(0x1d1)+_0x154e04['id']+_0x4d25cd(0x18d)+_0x38c265+'.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.');}if(!_0x154e04['path'][_0x4d25cd(0x1a6)]()||_0x43ffac!==null&&_0x154e04[_0x4d25cd(0x1a0)]!==_0x43ffac)throw menuError(_0x4d25cd(0x1a3),_0x4d25cd(0x1d1)+_0x154e04['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x4d25cd(0x17f));}function creationSuccess(_0x229c4a,_0x1f97b5,_0x4d0546,_0x5d20aa){const _0x239d69=a109_0x2b3a4d,_0x57c965=mutationResult({..._0x229c4a,'after':_0x4d0546,'dryRun':![],'succeeded':[{'id':_0x4d0546['id'],'created':!![],'recovered':_0x5d20aa}],'verification':{'checkedBy':_0x239d69(0x18e),'snapshotHash':_0x1f97b5['hash'],'targetId':_0x4d0546['id'],'recovered':_0x5d20aa,'path':_0x4d0546['path']}});return{'ok':!![],'message':_0x5d20aa?'Recovered\x20created\x20external\x20menu\x20'+_0x4d0546['id']+_0x239d69(0x1c5):'Created\x20external\x20menu\x20'+_0x4d0546['id']+'.','data':{..._0x57c965,'recovered':_0x5d20aa}};}function externalLinkCreateFailure(_0x4ab8dd,_0x4851bd,_0x2ba561){const _0x3c0dbf=a109_0x2b3a4d;return menuFailure(safeMenuAddError(_0x4ab8dd),redactFailurePlan(_0x4851bd),{..._0x2ba561,'succeeded':_0x2ba561[_0x3c0dbf(0x191)]?.['map'](redactFailureRecord),'failed':_0x2ba561[_0x3c0dbf(0x156)]?redactFailureRecord(_0x2ba561[_0x3c0dbf(0x156)]):undefined,'verification':_0x2ba561['verification']?redactFailureRecord(_0x2ba561[_0x3c0dbf(0x15f)]):undefined,'after':_0x2ba561[_0x3c0dbf(0x155)]===undefined?undefined:redactFailureValue(_0x2ba561[_0x3c0dbf(0x155)])});}function redactFailurePlan(_0x579908){const _0x5ef3e8=a109_0x2b3a4d;return{..._0x579908,'selector':redactFailureRecord(_0x579908[_0x5ef3e8(0x1b7)]),'before':redactFailureValue(_0x579908[_0x5ef3e8(0x17e)]),'after':redactFailureValue(_0x579908['after']),'plannedActions':_0x579908[_0x5ef3e8(0x174)]?.[_0x5ef3e8(0x165)](_0x5c85de=>({..._0x5c85de,'body':redactFailureRecord(_0x5c85de[_0x5ef3e8(0x1ba)])})),'succeeded':_0x579908[_0x5ef3e8(0x191)]['map'](redactFailureRecord),'failed':_0x579908[_0x5ef3e8(0x156)][_0x5ef3e8(0x165)](redactFailureRecord),'verification':_0x579908[_0x5ef3e8(0x15f)]?redactFailureRecord(_0x579908['verification']):undefined};}function redactFailureRecord(_0x19b65d){return redactFailureValue(_0x19b65d);}function redactFailureValue(_0x52c1b6,_0x457d31=''){const _0x4ffe28=a109_0x2b3a4d,_0x4b9eb5=_0x457d31[_0x4ffe28(0x17b)]()[_0x4ffe28(0x182)](/[^a-z0-9]/g,'');if([_0x4ffe28(0x194),_0x4ffe28(0x161),_0x4ffe28(0x1c8),_0x4ffe28(0x1cc)]['includes'](_0x4b9eb5))return _0x4ffe28(0x157);if(Array[_0x4ffe28(0x18a)](_0x52c1b6))return _0x52c1b6['map'](_0x19e0f9=>redactFailureValue(_0x19e0f9));if(_0x52c1b6&&typeof _0x52c1b6===_0x4ffe28(0x15d))return Object[_0x4ffe28(0x1ce)](Object[_0x4ffe28(0x162)](_0x52c1b6)[_0x4ffe28(0x165)](([_0x77dc34,_0x1fef13])=>[_0x77dc34,redactFailureValue(_0x1fef13,_0x77dc34)]));return _0x52c1b6;}function safeMenuAddError(_0x12c9da){const _0x3f9ee7=a109_0x2b3a4d,_0x506558=_0x12c9da instanceof CliError?_0x12c9da[_0x3f9ee7(0x16c)]:_0x3f9ee7(0x16f);switch(_0x506558){case _0x3f9ee7(0x169):return menuError(_0x506558,_0x3f9ee7(0x1ca),_0x3f9ee7(0x1c6));case _0x3f9ee7(0x1ab):return menuError(_0x506558,_0x3f9ee7(0x1d4),_0x3f9ee7(0x150));case'menu_create_response_invalid':return menuError(_0x506558,_0x3f9ee7(0x1d3),_0x3f9ee7(0x1c2));case _0x3f9ee7(0x1a3):return menuError(_0x506558,_0x3f9ee7(0x1b3),_0x3f9ee7(0x1c2));case _0x3f9ee7(0x16b):return menuError(_0x506558,_0x3f9ee7(0x16e),_0x3f9ee7(0x1a1));case'menu_mutation_failed':case _0x3f9ee7(0x186):case'menu_parent_not_folder':case'menu_sort_invalid':case'menu_sort_overflow':return menuError(_0x506558,_0x3f9ee7(0x19b),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError('menu_mutation_failed',_0x3f9ee7(0x19b),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x3a8a2b){const _0x54998e=a109_0x2b3a4d;if(!(_0x3a8a2b instanceof Error)||!(_0x54998e(0x180)in _0x3a8a2b))return undefined;const _0x184b72=_0x3a8a2b['data'];if(!_0x184b72||typeof _0x184b72!=='object')return undefined;const _0x5a53eb=_0x184b72[_0x54998e(0x156)];if(!Array['isArray'](_0x5a53eb)||!_0x5a53eb[0x0]||typeof _0x5a53eb[0x0]!=='object')return undefined;return _0x5a53eb[0x0];}
1
+ const a109_0x4ada2a=a109_0x1042;(function(_0x282be5,_0x8eeb8){const _0x39fe17=a109_0x1042,_0x1616bc=_0x282be5();while(!![]){try{const _0x45e73a=parseInt(_0x39fe17(0x1e7))/0x1+parseInt(_0x39fe17(0x1b5))/0x2*(-parseInt(_0x39fe17(0x221))/0x3)+-parseInt(_0x39fe17(0x1cd))/0x4+parseInt(_0x39fe17(0x1cc))/0x5*(-parseInt(_0x39fe17(0x1f3))/0x6)+parseInt(_0x39fe17(0x1a1))/0x7*(-parseInt(_0x39fe17(0x19b))/0x8)+parseInt(_0x39fe17(0x1b3))/0x9+-parseInt(_0x39fe17(0x209))/0xa*(-parseInt(_0x39fe17(0x1a7))/0xb);if(_0x45e73a===_0x8eeb8)break;else _0x1616bc['push'](_0x1616bc['shift']());}catch(_0x300673){_0x1616bc['push'](_0x1616bc['shift']());}}}(a109_0x1a48,0xe33f1));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_0x4ada2a(0x210),'new-window':a109_0x4ada2a(0x1fa)};export function validateExternalMenuUrl(_0x27a6a3){const _0x137419=a109_0x4ada2a,_0x3029d3=_0x27a6a3[_0x137419(0x1e9)]();let _0x19e6a9;try{_0x19e6a9=new URL(_0x3029d3);}catch{throw menuError(_0x137419(0x214),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.',_0x137419(0x1eb));}if(_0x19e6a9['protocol']!==_0x137419(0x216))throw menuError(_0x137419(0x1c7),_0x137419(0x1ab),_0x137419(0x1f5));if(_0x19e6a9[_0x137419(0x22c)]||_0x19e6a9['password'])throw menuError(_0x137419(0x1ad),'External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.',_0x137419(0x21b));return _0x3029d3;}export const menuExternalLinkCreate={'service':a109_0x4ada2a(0x206),'command':'external-link-create','description':a109_0x4ada2a(0x208),'risk':a109_0x4ada2a(0x1f1),'structuredErrors':!![],'flags':[{'name':'label','type':a109_0x4ada2a(0x222),'required':!![],'description':a109_0x4ada2a(0x20b)},{'name':'open-mode','type':a109_0x4ada2a(0x222),'required':!![],'enum':[a109_0x4ada2a(0x201),a109_0x4ada2a(0x1da)],'description':a109_0x4ada2a(0x1d7)},{'name':'url','type':a109_0x4ada2a(0x222),'required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a109_0x4ada2a(0x1f9),'type':'boolean','default':!![],'description':a109_0x4ada2a(0x1a0)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x348fca){validateAddInput(_0x348fca);},async 'dryRun'(_0xb1015b){const _0x2655ac=a109_0x4ada2a;validateAddInput(_0xb1015b);const {plan:_0x52dc73}=await buildSafeAddPlan(_0xb1015b,!![]),_0x429c8a=_0x52dc73[_0x2655ac(0x1c9)],_0x3ddb69=createBody(_0x429c8a);return menuDryRunResult(_0x52dc73,{'method':_0x2655ac(0x223),'url':'/smartapi/menu/create','body':_0x3ddb69,'description':'Would\x20create\x20external\x20website\x20link\x20menu\x20'+JSON['stringify'](_0x429c8a[_0x2655ac(0x1d2)])+_0x2655ac(0x1be)+_0xb1015b[_0x2655ac(0x1cb)](_0x2655ac(0x1a6))+_0x2655ac(0x226)});},async 'execute'(_0x36f804){const _0x285da4=a109_0x4ada2a;validateAddInput(_0x36f804);const _0xb63931=await buildSafeAddPlan(_0x36f804,![]),{plan:_0x3a035e,snapshot:_0x3c153f}=_0xb63931,_0x3c72bc=_0x3a035e[_0x285da4(0x1c9)],_0x58ef03=buildMenuLookupCommand(_0x36f804['appCode']);await recheckAddSnapshot(_0x36f804,_0x3a035e);let _0x2d2645;try{_0x2d2645=await createMenuEntity(_0x36f804[_0x285da4(0x1b2)],_0x36f804[_0x285da4(0x200)],createBody(_0x3c72bc));}catch(_0x159881){const _0x8bf05f=mapMenuApiError(_0x159881,'create\x20external\x20menu');if(!isMenuResponseLoss(_0x159881)||_0x8bf05f[_0x285da4(0x1c2)]===_0x285da4(0x202))throw externalLinkCreateFailure(_0x8bf05f,_0x3a035e,{'stage':'create','failed':{},'verification':{'status':_0x285da4(0x19d),'lookupCommand':_0x58ef03}});return recoverAfterResponseLoss(_0x36f804,_0xb63931,_0x58ef03);}const _0x5cdb5a=Number(_0x2d2645?.['id']),_0x3d7eb7=typeof _0x2d2645?.['path']===_0x285da4(0x222)?_0x2d2645[_0x285da4(0x1a9)]:'';if(!Number['isSafeInteger'](_0x5cdb5a)||_0x5cdb5a<=0x0||!_0x3d7eb7['trim']()){const _0x157e02=menuError('menu_create_response_invalid',_0x285da4(0x1ba),_0x285da4(0x1b4)+_0x58ef03+_0x285da4(0x1ac));throw externalLinkCreateFailure(_0x157e02,_0x3a035e,{'stage':'create-response-validation','succeeded':Number['isSafeInteger'](_0x5cdb5a)&&_0x5cdb5a>0x0?[{'id':_0x5cdb5a,'created':!![]}]:[],'failed':{'createdId':Number[_0x285da4(0x1d6)](_0x5cdb5a)?_0x5cdb5a:null,'generatedPathConfirmed':Boolean(_0x3d7eb7['trim']())},'warnings':[_0x285da4(0x1c5)],'after':Number['isSafeInteger'](_0x5cdb5a)&&_0x5cdb5a>0x0?{..._0x3c72bc,'id':_0x5cdb5a,'path':_0x3d7eb7}:_0x3c72bc,'verification':{'status':_0x285da4(0x19d),'lookupCommand':_0x58ef03,...Number[_0x285da4(0x1d6)](_0x5cdb5a)&&_0x5cdb5a>0x0?{'targetId':_0x5cdb5a}:{}}});}const _0x481ef4=await readAndVerifyCreatedMenu({'appCode':_0x36f804[_0x285da4(0x1b2)],'cookie':_0x36f804['cookie'],'plan':_0x3a035e,'afterPlan':_0x3c72bc,'createdId':_0x5cdb5a,'expectedPath':_0x3d7eb7,'lookupCommand':_0x58ef03,'recovered':![]});return creationSuccess(_0x3a035e,_0x481ef4[_0x285da4(0x1ed)],_0x481ef4[_0x285da4(0x1c3)],![]);}};function validateAddInput(_0xcb295b){const _0x14fe11=a109_0x4ada2a;if(!_0xcb295b[_0x14fe11(0x1cb)]('label')[_0x14fe11(0x1e9)]())throw CliErrors[_0x14fe11(0x203)](_0x14fe11(0x1d2));resolveExternalMenuType(_0xcb295b),validateExternalMenuUrl(_0xcb295b[_0x14fe11(0x1cb)](_0x14fe11(0x1c0))),parseParentId(_0xcb295b,'parent-id'),validateSort(_0xcb295b);}function resolveExternalMenuType(_0x32adbc){const _0x87c69f=a109_0x4ada2a,_0x1c87a4=_0x32adbc[_0x87c69f(0x1cb)](_0x87c69f(0x1a6))[_0x87c69f(0x1e9)]();if(!_0x1c87a4)throw CliErrors['flagMissing'](_0x87c69f(0x1a6));const _0x43c54c=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x1c87a4];if(!_0x43c54c)throw menuError(_0x87c69f(0x1e6),_0x87c69f(0x1f7),_0x87c69f(0x1e2));return _0x43c54c;}async function buildAddPlan(_0x3779dd,_0x9efc41){const _0x33bb6a=a109_0x4ada2a,_0xea63e8=await fetchMutationSnapshot(_0x3779dd,_0x33bb6a(0x205)),_0x1ded47=parseParentId(_0x3779dd,_0x33bb6a(0x19e))??null;if(_0x1ded47!=null)requireFolder(_0xea63e8,_0x1ded47);const _0x1bb3c2=validateSort(_0x3779dd),_0x24609b=_0x1bb3c2??nextSiblingSort(_0xea63e8,_0x1ded47,_0x33bb6a(0x206)),_0x54cc6f=_0x3779dd[_0x33bb6a(0x1cb)]('label')[_0x33bb6a(0x1e9)](),_0x491cad=resolveExternalMenuType(_0x3779dd),_0x26d267=validateExternalMenuUrl(_0x3779dd[_0x33bb6a(0x1cb)](_0x33bb6a(0x1c0))),_0x46a3c4=Object[_0x33bb6a(0x1b8)][_0x33bb6a(0x1d1)][_0x33bb6a(0x1f0)](_0x3779dd[_0x33bb6a(0x1f8)],_0x33bb6a(0x1f9))?_0x3779dd[_0x33bb6a(0x217)](_0x33bb6a(0x1f9)):!![],_0x24140f={'id':null,'parentId':_0x1ded47,'label':_0x54cc6f,'path':_0x33bb6a(0x1d0),'url':_0x26d267,'type':_0x491cad,'visible':_0x46a3c4,'sort':_0x24609b},_0x2629c7=buildMenuLookupCommand(_0x3779dd[_0x33bb6a(0x1b2)]),_0x5479fc=mutationResult({'operation':_0x33bb6a(0x1b6),'selector':{'parentId':_0x1ded47,'type':_0x491cad,'label':_0x54cc6f,'url':_0x26d267},'before':null,'after':_0x24140f,'dryRun':_0x9efc41,'backend':[{'method':'POST','path':'/smartapi/menu/create'}],'plannedActions':[{'stage':_0x33bb6a(0x20f),'method':_0x33bb6a(0x223),'path':'/smartapi/menu/create','body':createBody(_0x24140f)}],'snapshotHash':_0xea63e8[_0x33bb6a(0x1de)],'warnings':[_0x33bb6a(0x1cf)],'verification':{'lookupCommand':_0x2629c7}});return{'plan':_0x5479fc,'snapshot':_0xea63e8};}async function buildSafeAddPlan(_0xf1d1e3,_0x548dfe){try{return await buildAddPlan(_0xf1d1e3,_0x548dfe);}catch(_0x47ea96){throw safeMenuAddError(_0x47ea96);}}async function recheckAddSnapshot(_0x11c67c,_0x21f881){const _0xbd0f34=a109_0x4ada2a;try{await recheckMutationSnapshot(_0x11c67c,_0x21f881,'create\x20external\x20menu');}catch(_0x17d6d5){const _0xae396a=getFailureRecord(_0x17d6d5);throw externalLinkCreateFailure(_0x17d6d5,_0x21f881,{'stage':_0xbd0f34(0x1f4),'failed':{..._0xae396a?.[_0xbd0f34(0x211)]?{'expectedSnapshotHash':_0xae396a[_0xbd0f34(0x211)]}:{},..._0xae396a?.[_0xbd0f34(0x207)]?{'currentSnapshotHash':_0xae396a[_0xbd0f34(0x207)]}:{}}});}}function createBody(_0x525414){const _0x2d0f2b=a109_0x4ada2a;return{'parentId':toApiParentId(_0x525414[_0x2d0f2b(0x1df)]),'label':String(_0x525414[_0x2d0f2b(0x1d2)]),'type':String(_0x525414[_0x2d0f2b(0x20c)]),'url':String(_0x525414['url']),'visible':Boolean(_0x525414[_0x2d0f2b(0x1f9)]),'sort':Number(_0x525414[_0x2d0f2b(0x1a8)]),'extend':{}};}function a109_0x1042(_0x267bc1,_0x321e41){_0x267bc1=_0x267bc1-0x19a;const _0x1a4823=a109_0x1a48();let _0x1042c4=_0x1a4823[_0x267bc1];return _0x1042c4;}function buildMenuLookupCommand(_0x1978fc){const _0x2e1f84=a109_0x4ada2a,_0x3dbc30='\x27'+_0x1978fc[_0x2e1f84(0x1f2)](/'/g,_0x2e1f84(0x1ca))+'\x27';return _0x2e1f84(0x1d5)+_0x3dbc30+_0x2e1f84(0x1f6);}async function recoverAfterResponseLoss(_0x1a8834,_0x2868a4,_0xf25cc5){const _0x3ddee0=a109_0x4ada2a,{plan:_0x303e65,snapshot:_0x33d3be}=_0x2868a4,_0x89f30f=_0x303e65[_0x3ddee0(0x1c9)];let _0x222ddd;try{_0x222ddd=await fetchMenuSnapshot(_0x1a8834[_0x3ddee0(0x1b2)],_0x1a8834['cookie']);}catch(_0x5cb267){throw recoveryRequiredFailure(_0x303e65,_0xf25cc5,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x2c9f1f=_0x222ddd[_0x3ddee0(0x224)][_0x3ddee0(0x1fb)](_0x228ad1=>_0x228ad1['parentId']===_0x89f30f['parentId']&&_0x228ad1[_0x3ddee0(0x20c)]===_0x89f30f[_0x3ddee0(0x20c)]&&_0x228ad1[_0x3ddee0(0x1d2)]===_0x89f30f[_0x3ddee0(0x1d2)]&&_0x228ad1[_0x3ddee0(0x1c0)]===_0x89f30f[_0x3ddee0(0x1c0)]),_0x27c1d8=_0x2c9f1f['filter'](_0x190fc0=>!_0x33d3be['byId'][_0x3ddee0(0x20a)](_0x190fc0['id'])),_0x4ffb35=_0x2c9f1f[_0x3ddee0(0x1fb)](_0x1a9304=>_0x33d3be[_0x3ddee0(0x21c)][_0x3ddee0(0x20a)](_0x1a9304['id']));if(_0x2c9f1f[_0x3ddee0(0x212)]!==0x1||_0x27c1d8['length']!==0x1)throw recoveryRequiredFailure(_0x303e65,_0xf25cc5,{'matchCount':_0x2c9f1f[_0x3ddee0(0x212)],'newMatchCount':_0x27c1d8[_0x3ddee0(0x212)],'preexistingMatchCount':_0x4ffb35[_0x3ddee0(0x212)]});const _0x40f25e=_0x27c1d8[0x0];try{verifyCreatedFact(_0x40f25e,_0x40f25e['id'],_0x89f30f,null);}catch(_0x1fde8b){const _0x13d86d=_0x1fde8b instanceof Error&&_0x3ddee0(0x1c2)in _0x1fde8b?_0x1fde8b:menuError(_0x3ddee0(0x19c),_0x3ddee0(0x1c8)+_0x40f25e['id']+_0x3ddee0(0x228),_0x3ddee0(0x1b4)+_0xf25cc5+_0x3ddee0(0x1e0));throw externalLinkCreateFailure(_0x13d86d,_0x303e65,{'stage':_0x3ddee0(0x1bd),'succeeded':[{'id':_0x40f25e['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x40f25e['id'],'finalFactsConfirmed':![]},'after':_0x40f25e,'warnings':[_0x3ddee0(0x22b)+_0x40f25e['id']+_0x3ddee0(0x1ee)],'verification':{'status':_0x3ddee0(0x19d),'targetId':_0x40f25e['id'],'recovered':!![],'lookupCommand':_0xf25cc5}});}return creationSuccess(_0x303e65,_0x222ddd,_0x40f25e,!![]);}function recoveryRequiredFailure(_0x363e98,_0x484213,_0x3eaa85){const _0x31e94c=a109_0x4ada2a,_0x39f578=menuError('menu_create_recovery_required',_0x31e94c(0x225),'Run\x20'+_0x484213+_0x31e94c(0x1ea));return externalLinkCreateFailure(_0x39f578,_0x363e98,{'stage':_0x31e94c(0x1af),'failed':_0x3eaa85,'warnings':[_0x31e94c(0x1fd)],'verification':{'status':'failed',..._0x3eaa85,'lookupCommand':_0x484213}});}async function readAndVerifyCreatedMenu(_0x39cedb){const _0x553c00=a109_0x4ada2a;let _0x3193f8;try{_0x3193f8=await fetchMenuSnapshot(_0x39cedb[_0x553c00(0x1b2)],_0x39cedb[_0x553c00(0x200)]);}catch(_0x453d08){const _0x1d49a7=menuError(_0x553c00(0x19c),_0x553c00(0x22b)+_0x39cedb[_0x553c00(0x22a)]+_0x553c00(0x1db),'Run\x20'+_0x39cedb['lookupCommand']+_0x553c00(0x1c1));throw externalLinkCreateFailure(_0x1d49a7,_0x39cedb[_0x553c00(0x1ec)],{'stage':_0x553c00(0x1bd),'succeeded':[{'id':_0x39cedb[_0x553c00(0x22a)],'created':!![]}],'failed':{'id':_0x39cedb[_0x553c00(0x22a)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x39cedb[_0x553c00(0x1e3)],'id':_0x39cedb[_0x553c00(0x22a)],'path':_0x39cedb[_0x553c00(0x21e)]},'warnings':['Menu\x20'+_0x39cedb[_0x553c00(0x22a)]+_0x553c00(0x1d3)],'verification':{'status':'failed','targetId':_0x39cedb['createdId'],'lookupCommand':_0x39cedb[_0x553c00(0x1aa)]}});}const _0x1c043e=_0x3193f8['byId'][_0x553c00(0x1ae)](_0x39cedb[_0x553c00(0x22a)]);try{if(!_0x1c043e)throw menuError(_0x553c00(0x19c),'Created\x20menu\x20'+_0x39cedb[_0x553c00(0x22a)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.','Run\x20'+_0x39cedb[_0x553c00(0x1aa)]+_0x553c00(0x1c1));verifyCreatedFact(_0x1c043e,_0x39cedb[_0x553c00(0x22a)],_0x39cedb['afterPlan'],_0x39cedb[_0x553c00(0x21e)]);}catch(_0x40aca4){const _0x193010=_0x40aca4 instanceof Error&&_0x553c00(0x1c2)in _0x40aca4?_0x40aca4:menuError(_0x553c00(0x19c),_0x553c00(0x1e5)+_0x39cedb[_0x553c00(0x22a)]+_0x553c00(0x1ff),'Run\x20'+_0x39cedb[_0x553c00(0x1aa)]+_0x553c00(0x1c1));throw externalLinkCreateFailure(_0x193010,_0x39cedb[_0x553c00(0x1ec)],{'stage':'verification','succeeded':[{'id':_0x39cedb[_0x553c00(0x22a)],'created':!![]}],'failed':{'id':_0x39cedb[_0x553c00(0x22a)],'finalFactsConfirmed':![]},'after':_0x1c043e??{..._0x39cedb['afterPlan'],'id':_0x39cedb[_0x553c00(0x22a)],'path':_0x39cedb[_0x553c00(0x21e)]},'warnings':[_0x553c00(0x22b)+_0x39cedb['createdId']+_0x553c00(0x20d)],'verification':{'status':_0x553c00(0x19d),'targetId':_0x39cedb['createdId'],'recovered':_0x39cedb[_0x553c00(0x1d8)],'lookupCommand':_0x39cedb['lookupCommand']}});}return{'snapshot':_0x3193f8,'fact':_0x1c043e};}function verifyCreatedFact(_0x4149cf,_0x911f55,_0x34ba3e,_0x30542a){const _0x3fc069=a109_0x4ada2a;if(!Number['isSafeInteger'](_0x4149cf['id'])||_0x4149cf['id']<=0x0||_0x4149cf['id']!==_0x911f55)throw menuError(_0x3fc069(0x19c),_0x3fc069(0x22d),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x3a03b9=[[_0x3fc069(0x21a),_0x4149cf[_0x3fc069(0x1df)],_0x34ba3e['parentId']],[_0x3fc069(0x20c),_0x4149cf[_0x3fc069(0x20c)],_0x34ba3e[_0x3fc069(0x20c)]],[_0x3fc069(0x1d2),_0x4149cf[_0x3fc069(0x1d2)],_0x34ba3e[_0x3fc069(0x1d2)]],[_0x3fc069(0x227),_0x4149cf[_0x3fc069(0x1c0)],_0x34ba3e[_0x3fc069(0x1c0)]],[_0x3fc069(0x1bf),_0x4149cf[_0x3fc069(0x1f9)],_0x34ba3e[_0x3fc069(0x1f9)]],[_0x3fc069(0x1a8),_0x4149cf[_0x3fc069(0x1a8)],_0x34ba3e[_0x3fc069(0x1a8)]]];for(const [_0x457bf8,_0x38ba7a,_0x37a510]of _0x3a03b9){if(_0x38ba7a!==_0x37a510)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x4149cf['id']+_0x3fc069(0x1b9)+_0x457bf8+'.',_0x3fc069(0x19a));}if(!_0x4149cf[_0x3fc069(0x1a9)]['trim']()||_0x30542a!==null&&_0x4149cf[_0x3fc069(0x1a9)]!==_0x30542a)throw menuError(_0x3fc069(0x19c),_0x3fc069(0x1e5)+_0x4149cf['id']+_0x3fc069(0x215),_0x3fc069(0x19a));}function a109_0x1a48(){const _0x21a817=['toLowerCase','create-menu','iframe','expectedSnapshotHash','length','isArray','menu_url_invalid','\x20has\x20an\x20unexpected\x20generated\x20path.','https:','bool','entries','selector','parent','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','byId','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','expectedPath','fromEntries','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','984jHyacs','string','POST','menus','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','URL','\x20could\x20not\x20be\x20verified.','rawerror','createdId','Menu\x20','username','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','8KULnCJ','menu_verification_failed','failed','parent-id','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','Whether\x20the\x20menu\x20is\x20visible','4430251jpFssC','menu_mutation_failed','readbackerror','includes','before','open-mode','4093914hofyNM','sort','path','lookupCommand','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','menu_url_credentials_forbidden','get','create-recovery','data','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','appCode','771021OOawkI','Run\x20','1580MTnFVe','add','External\x20menu\x20creation\x20failed.','prototype','\x20has\x20an\x20unexpected\x20','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','\x20after\x20response\x20loss.','Recovered\x20created\x20external\x20menu\x20','verification','\x20with\x20','visibility','url','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','code','fact','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','menu_create_response_invalid','menu_url_https_required','Recovered\x20menu\x20','after','\x27\x5c\x27\x27','str','2941655OJxgyx','1145184WxLcwu','succeeded','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','<platform-generated>','hasOwnProperty','label','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','menu_sort_overflow','rabetbase\x20menu\x20list\x20--appcode\x20','isSafeInteger','How\x20to\x20open\x20the\x20external\x20website','recovered','body','new-window','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','<redacted>','menu\x20list','hash','parentId','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','causemessage','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','afterPlan','menu_create_recovery_required','Created\x20menu\x20','menu_open_mode_invalid','438868WiVMJa','plannedActions','trim','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.','plan','snapshot','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','object','call','write','replace','18gDhDog','pre-write-recheck','Provide\x20an\x20HTTPS\x20URL.','\x20--format\x20compress','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','rawFlags','visible','link','filter','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','menu_not_found','\x20failed\x20final\x20verification.','cookie','embedded','menu_permission_denied','flagMissing','map','create\x20external\x20menu','menu','currentSnapshotHash','Create\x20an\x20external\x20website\x20link\x20menu','90xsIuar','has','Menu\x20label','type','\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'];a109_0x1a48=function(){return _0x21a817;};return a109_0x1a48();}function creationSuccess(_0xecc78b,_0x286f10,_0x34063a,_0x701684){const _0x5ab9d5=a109_0x4ada2a,_0x6028d1=mutationResult({..._0xecc78b,'after':_0x34063a,'dryRun':![],'succeeded':[{'id':_0x34063a['id'],'created':!![],'recovered':_0x701684}],'verification':{'checkedBy':_0x5ab9d5(0x1dd),'snapshotHash':_0x286f10['hash'],'targetId':_0x34063a['id'],'recovered':_0x701684,'path':_0x34063a['path']}});return{'ok':!![],'message':_0x701684?_0x5ab9d5(0x1bc)+_0x34063a['id']+_0x5ab9d5(0x1bb):'Created\x20external\x20menu\x20'+_0x34063a['id']+'.','data':{..._0x6028d1,'recovered':_0x701684}};}function externalLinkCreateFailure(_0x14b21f,_0x30dcc1,_0x4cf53b){const _0x314ad2=a109_0x4ada2a;return menuFailure(safeMenuAddError(_0x14b21f),redactFailurePlan(_0x30dcc1),{..._0x4cf53b,'succeeded':_0x4cf53b[_0x314ad2(0x1ce)]?.[_0x314ad2(0x204)](redactFailureRecord),'failed':_0x4cf53b['failed']?redactFailureRecord(_0x4cf53b[_0x314ad2(0x19d)]):undefined,'verification':_0x4cf53b['verification']?redactFailureRecord(_0x4cf53b['verification']):undefined,'after':_0x4cf53b['after']===undefined?undefined:redactFailureValue(_0x4cf53b[_0x314ad2(0x1c9)])});}function redactFailurePlan(_0x12167d){const _0x22a17e=a109_0x4ada2a;return{..._0x12167d,'selector':redactFailureRecord(_0x12167d[_0x22a17e(0x219)]),'before':redactFailureValue(_0x12167d[_0x22a17e(0x1a5)]),'after':redactFailureValue(_0x12167d['after']),'plannedActions':_0x12167d[_0x22a17e(0x1e8)]?.[_0x22a17e(0x204)](_0x5ee569=>({..._0x5ee569,'body':redactFailureRecord(_0x5ee569[_0x22a17e(0x1d9)])})),'succeeded':_0x12167d['succeeded'][_0x22a17e(0x204)](redactFailureRecord),'failed':_0x12167d[_0x22a17e(0x19d)][_0x22a17e(0x204)](redactFailureRecord),'verification':_0x12167d[_0x22a17e(0x1bd)]?redactFailureRecord(_0x12167d[_0x22a17e(0x1bd)]):undefined};}function redactFailureRecord(_0x32f84a){return redactFailureValue(_0x32f84a);}function redactFailureValue(_0x485d23,_0x565a8d=''){const _0x4dc58b=a109_0x4ada2a,_0x2a1008=_0x565a8d[_0x4dc58b(0x20e)]()[_0x4dc58b(0x1f2)](/[^a-z0-9]/g,'');if(['cause',_0x4dc58b(0x1e1),_0x4dc58b(0x1a3),_0x4dc58b(0x229)][_0x4dc58b(0x1a4)](_0x2a1008))return _0x4dc58b(0x1dc);if(Array[_0x4dc58b(0x213)](_0x485d23))return _0x485d23[_0x4dc58b(0x204)](_0x2a9a4b=>redactFailureValue(_0x2a9a4b));if(_0x485d23&&typeof _0x485d23===_0x4dc58b(0x1ef))return Object[_0x4dc58b(0x21f)](Object[_0x4dc58b(0x218)](_0x485d23)['map'](([_0x54a7db,_0x2c918f])=>[_0x54a7db,redactFailureValue(_0x2c918f,_0x54a7db)]));return _0x485d23;}function safeMenuAddError(_0x32b5e1){const _0x47142b=a109_0x4ada2a,_0x37c2e8=_0x32b5e1 instanceof CliError?_0x32b5e1[_0x47142b(0x1c2)]:_0x47142b(0x1a2);switch(_0x37c2e8){case'menu_state_drift':return menuError(_0x37c2e8,_0x47142b(0x1c4),'Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.');case _0x47142b(0x202):return menuError(_0x37c2e8,_0x47142b(0x21d),_0x47142b(0x1b1));case _0x47142b(0x1c6):return menuError(_0x37c2e8,_0x47142b(0x220),_0x47142b(0x1fc));case _0x47142b(0x19c):return menuError(_0x37c2e8,'Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.');case _0x47142b(0x1e4):return menuError(_0x37c2e8,'The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.',_0x47142b(0x19f));case'menu_mutation_failed':case _0x47142b(0x1fe):case'menu_parent_not_folder':case'menu_sort_invalid':case _0x47142b(0x1d4):return menuError(_0x37c2e8,_0x47142b(0x1b7),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');default:return menuError(_0x47142b(0x1a2),'External\x20menu\x20creation\x20failed.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x156d68){const _0x5cb189=a109_0x4ada2a;if(!(_0x156d68 instanceof Error)||!(_0x5cb189(0x1b0)in _0x156d68))return undefined;const _0x55c9e2=_0x156d68[_0x5cb189(0x1b0)];if(!_0x55c9e2||typeof _0x55c9e2!==_0x5cb189(0x1ef))return undefined;const _0x18ef72=_0x55c9e2[_0x5cb189(0x19d)];if(!Array[_0x5cb189(0x213)](_0x18ef72)||!_0x18ef72[0x0]||typeof _0x18ef72[0x0]!==_0x5cb189(0x1ef))return undefined;return _0x18ef72[0x0];}
@@ -1 +1 @@
1
- const a110_0x357d3d=a110_0x52c8;(function(_0x1db33f,_0x35cbdb){const _0x2da83c=a110_0x52c8,_0x378d8c=_0x1db33f();while(!![]){try{const _0x1f18b0=-parseInt(_0x2da83c(0xc5))/0x1*(parseInt(_0x2da83c(0xe0))/0x2)+parseInt(_0x2da83c(0xd5))/0x3+parseInt(_0x2da83c(0xb2))/0x4+-parseInt(_0x2da83c(0xbc))/0x5*(parseInt(_0x2da83c(0xe9))/0x6)+parseInt(_0x2da83c(0xaa))/0x7+-parseInt(_0x2da83c(0xb8))/0x8*(-parseInt(_0x2da83c(0xaf))/0x9)+parseInt(_0x2da83c(0xe8))/0xa*(-parseInt(_0x2da83c(0xbd))/0xb);if(_0x1f18b0===_0x35cbdb)break;else _0x378d8c['push'](_0x378d8c['shift']());}catch(_0x26bcc6){_0x378d8c['push'](_0x378d8c['shift']());}}}(a110_0x3106,0x74222));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';function a110_0x3106(){const _0x30accf=['str','url','1074654dqYVSk','Response\x20was\x20lost\x20and\x20menu\x20','high-risk-write','/smartapi/menu/update','string','27FjTCzb','requestedUrlObserved','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','1383624QxRgrB','trim','code','menu_update_recovery_required','update\x20external\x20menu\x20URL','menu_external_link_not_leaf','1614952vAvBFn','\x27\x5c\x27\x27','POST','visible','40lEhyBg','7634mIEeLI','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','type','verify\x20external\x20menu\x20URL\x20update','label','rabetbase\x20menu\x20list\x20--appcode\x20','hash','update','39579wdpMNg','menu_state_drift','New\x20external\x20HTTPS\x20URL','flagMissing','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','after','Run\x20','childrenCount','unknown','\x20--format\x20compress','parentId','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20direct\x20child\x20menu(s).','get','Menu\x20','Update\x20request\x20for\x20menu\x20','1722009RJXQOs','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','iframe','replace','expect-url','expect-parent-id','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','menu','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','menu_external_link_type_required','20VjXSvI','\x20could\x20not\x20be\x20verified\x20safely','failed','Updated\x20external\x20URL\x20for\x20menu\x20',',\x20current\x20','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','cookie','sort','7330obEjlF','224148nVQpzP','external-link-update','link','\x20URL\x20update\x20did\x20not\x20take\x20effect.','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','\x20changed\x20during\x20the\x20URL-only\x20update.','readbackFailed','\x20already\x20matches\x20the\x20requested\x20URL.','path','appCode','\x20parent\x20changed:\x20expected\x20','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','snapshot','update-recovery'];a110_0x3106=function(){return _0x30accf;};return a110_0x3106();}import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a110_0x357d3d(0xba),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a110_0x357d3d(0xdd),'command':'external-link-update','description':a110_0x357d3d(0xc9),'risk':a110_0x357d3d(0xac),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a110_0x357d3d(0xa9),'type':'string','required':!![],'description':a110_0x357d3d(0xc7)},{'name':'expect-url','type':a110_0x357d3d(0xae),'required':!![],'description':a110_0x357d3d(0xed)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1839c0){validateInput(_0x1839c0),requireExplicitYes(_0x1839c0);},async 'dryRun'(_0x544a98){const _0x1e4bc3=a110_0x357d3d;validateInput(_0x544a98);const _0x39f454=await buildPlan(_0x544a98,!![]);return menuDryRunResult(_0x39f454['plan'],{'method':_0x1e4bc3(0xba),'url':_0x1e4bc3(0xad),'body':_0x39f454['body'],'description':_0x1e4bc3(0xd7)+_0x39f454['body']['id']+'.'});},async 'execute'(_0x5ba5bb){const _0x380041=a110_0x357d3d;validateInput(_0x5ba5bb),requireExplicitYes(_0x5ba5bb);const _0x2c4923=await buildPlan(_0x5ba5bb,![]),{plan:_0x4aa939,body:_0x2f4bad,before:_0x3be778,noChanges:_0x5bfa43}=_0x2c4923,_0x20d0a7=_0x2f4bad['id'];if(_0x5bfa43)return updateSuccess(_0x4aa939,_0x2c4923[_0x380041(0xa6)],_0x3be778,!![],![]);await recheckMutationSnapshot(_0x5ba5bb,_0x4aa939,_0x380041(0xb6),_0x20d0a7);try{await updateMenuEntity(_0x5ba5bb['appCode'],_0x5ba5bb[_0x380041(0xe6)],{'id':_0x2f4bad['id'],'url':_0x2f4bad[_0x380041(0xa9)]});}catch(_0x540d7b){const _0x1d4527=mapMenuApiError(_0x540d7b,_0x380041(0xb6),_0x20d0a7);if(isMenuResponseLoss(_0x540d7b)&&_0x1d4527[_0x380041(0xb4)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x5ba5bb,_0x2c4923);throw menuFailure(_0x1d4527,_0x4aa939,{'stage':_0x380041(0xc4),'failed':{'id':_0x20d0a7},'warnings':[_0x380041(0xd0)],'verification':{'status':'failed','targetId':_0x20d0a7,'lookupCommand':buildLookupCommand(_0x5ba5bb['appCode'])}});}let _0x1e5a87,_0x19209b;try{_0x1e5a87=await fetchMenuSnapshot(_0x5ba5bb[_0x380041(0xa2)],_0x5ba5bb['cookie']),_0x19209b=requireMenu(_0x1e5a87,_0x20d0a7),verifyUpdatedFact(_0x3be778,_0x19209b,_0x2f4bad['url']);}catch(_0x19f641){const _0x4b58c0=describeMenuErrorCause(_0x19f641,_0x380041(0xc0),_0x20d0a7),_0x5da282=asVerificationError(_0x19f641,_0x380041(0xd4)+_0x20d0a7+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x5da282,_0x4aa939,{'stage':'verification','succeeded':[{'id':_0x20d0a7,'updateRequested':!![]}],'failed':{'id':_0x20d0a7,'requestedStateConfirmed':![],..._0x4b58c0},'warnings':[_0x380041(0xd6)],'verification':{'status':_0x380041(0xe2),'targetId':_0x20d0a7,'lookupCommand':buildLookupCommand(_0x5ba5bb[_0x380041(0xa2)])}});}return updateSuccess(_0x4aa939,_0x1e5a87,_0x19209b,![],![]);}};function validateInput(_0x75545d){const _0x36009b=a110_0x357d3d;validateExactId(_0x75545d),requiredUrl(_0x75545d,_0x36009b(0xa9)),requiredExpectedUrl(_0x75545d),parseParentId(_0x75545d,_0x36009b(0xdb),{'required':!![]});}function requiredUrl(_0x2c5a50,_0x35e434){const _0x2fd370=a110_0x357d3d;if(!hasFlag(_0x2c5a50,_0x35e434)||!_0x2c5a50[_0x2fd370(0xa8)](_0x35e434)[_0x2fd370(0xb3)]())throw CliErrors[_0x2fd370(0xc8)](_0x35e434);return validateExternalMenuUrl(_0x2c5a50[_0x2fd370(0xa8)](_0x35e434));}function requiredExpectedUrl(_0x3dd366){const _0x1cf84d=a110_0x357d3d;if(!hasFlag(_0x3dd366,'expect-url')||!_0x3dd366[_0x1cf84d(0xa8)](_0x1cf84d(0xda))[_0x1cf84d(0xb3)]())throw CliErrors['flagMissing'](_0x1cf84d(0xda));return _0x3dd366[_0x1cf84d(0xa8)](_0x1cf84d(0xda))['trim']();}async function buildPlan(_0x4821b7,_0x23c545){const _0x1d73ba=a110_0x357d3d,_0x534c87=validateExactId(_0x4821b7),_0x5a3267=requiredUrl(_0x4821b7,_0x1d73ba(0xa9)),_0x383742=requiredExpectedUrl(_0x4821b7),_0x480c7d=parseParentId(_0x4821b7,_0x1d73ba(0xdb),{'required':!![]}),_0x2c7ec1=await fetchMutationSnapshot(_0x4821b7,_0x1d73ba(0xb6),_0x534c87),_0x3fa580=requireMenu(_0x2c7ec1,_0x534c87);assertExternalLinkLeaf(_0x3fa580);if(_0x3fa580['parentId']!==_0x480c7d)throw menuError(_0x1d73ba(0xc6),'Menu\x20'+_0x534c87+_0x1d73ba(0xa3)+formatParent(_0x480c7d)+_0x1d73ba(0xe4)+formatParent(_0x3fa580['parentId'])+'.',_0x1d73ba(0xbe));const _0x506c2f=_0x3fa580['url']===_0x5a3267;if(!_0x506c2f&&_0x3fa580['url']!==_0x383742)throw menuError(_0x1d73ba(0xc6),_0x1d73ba(0xd3)+_0x534c87+'\x20URL\x20no\x20longer\x20matches\x20--expect-url.',_0x1d73ba(0xa5));const _0xe66105={'id':_0x534c87,'appCode':_0x4821b7[_0x1d73ba(0xa2)],'url':_0x5a3267},_0x190dab={..._0x3fa580,'url':_0x5a3267};return{'body':_0xe66105,'before':_0x3fa580,'noChanges':_0x506c2f,'snapshot':_0x2c7ec1,'plan':mutationResult({'operation':_0x1d73ba(0xea),'selector':{'id':_0x534c87},'before':_0x3fa580,'after':_0x190dab,'dryRun':_0x23c545,'backend':[...BACKEND],'plannedActions':_0x506c2f?[]:[{'stage':'update-external-link-url','method':'POST','path':_0x1d73ba(0xad),'body':_0xe66105}],'snapshotHash':_0x2c7ec1[_0x1d73ba(0xc3)],'warnings':_0x506c2f?[_0x1d73ba(0xde)]:[]})};}function assertExternalLinkLeaf(_0x1caf0e){const _0x34258c=a110_0x357d3d;if(_0x1caf0e[_0x34258c(0xbf)]!==_0x34258c(0xd8)&&_0x1caf0e[_0x34258c(0xbf)]!==_0x34258c(0xeb))throw menuError(_0x34258c(0xdf),_0x34258c(0xd3)+_0x1caf0e['id']+'\x20is\x20type\x20\x22'+(_0x1caf0e[_0x34258c(0xbf)]||_0x34258c(0xcd))+'\x22,\x20not\x20iframe\x20or\x20link.',_0x34258c(0xb1));if(_0x1caf0e[_0x34258c(0xcc)]!==0x0)throw menuError(_0x34258c(0xb7),'Menu\x20'+_0x1caf0e['id']+'\x20has\x20'+_0x1caf0e['childrenCount']+_0x34258c(0xd1),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x1caf0e[_0x34258c(0xa1)][_0x34258c(0xb3)]())throw menuError('menu_external_link_path_missing','Menu\x20'+_0x1caf0e['id']+'\x20has\x20an\x20empty\x20platform\x20path.','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x2e5f70,_0x386b5b,_0xcf1b96){const _0x48f311=a110_0x357d3d;assertExternalLinkLeaf(_0x386b5b);const _0xdb0d40=[['id',_0x386b5b['id'],_0x2e5f70['id']],[_0x48f311(0xc1),_0x386b5b[_0x48f311(0xc1)],_0x2e5f70[_0x48f311(0xc1)]],[_0x48f311(0xbf),_0x386b5b['type'],_0x2e5f70[_0x48f311(0xbf)]],['path',_0x386b5b[_0x48f311(0xa1)],_0x2e5f70['path']],[_0x48f311(0xcf),_0x386b5b['parentId'],_0x2e5f70[_0x48f311(0xcf)]],['sort',_0x386b5b[_0x48f311(0xe7)],_0x2e5f70[_0x48f311(0xe7)]],[_0x48f311(0xbb),_0x386b5b[_0x48f311(0xbb)],_0x2e5f70[_0x48f311(0xbb)]]];for(const [_0x3dee64,_0xd3152,_0x26f8c1]of _0xdb0d40){assertVerified(_0xd3152===_0x26f8c1,_0x48f311(0xd3)+_0x2e5f70['id']+'\x20'+_0x3dee64+_0x48f311(0xee));}assertVerified(_0x386b5b[_0x48f311(0xa9)]===_0xcf1b96,_0x48f311(0xd3)+_0x2e5f70['id']+_0x48f311(0xec));}function updateSuccess(_0x364a6a,_0xd41734,_0x54b428,_0x161ade,_0x1379da){const _0x4133e2=a110_0x357d3d,_0x43a2e3=_0x54b428['id'],_0x1fa6ac=mutationResult({..._0x364a6a,'after':_0x54b428,'dryRun':![],'succeeded':[{'id':_0x43a2e3,'updated':!_0x161ade,'skipped':_0x161ade,'recovered':_0x1379da}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0xd41734[_0x4133e2(0xc3)],'targetId':_0x43a2e3,'matchesRequestedState':!![],'recovered':_0x1379da}});return{'ok':!![],'message':_0x1379da?_0x4133e2(0xa4)+_0x43a2e3+'.':_0x161ade?_0x4133e2(0xd3)+_0x43a2e3+_0x4133e2(0xa0):_0x4133e2(0xe3)+_0x43a2e3+'.','data':{..._0x1fa6ac,'recovered':_0x1379da}};}async function recoverAfterResponseLoss(_0x271cc3,_0x1b9220){const _0x244c48=a110_0x357d3d,{plan:_0x39b9c5,before:_0x1870c2,body:_0x5dad24}=_0x1b9220;let _0x21e387;try{_0x21e387=await fetchMenuSnapshot(_0x271cc3['appCode'],_0x271cc3[_0x244c48(0xe6)]);}catch{throw recoveryRequired(_0x39b9c5,_0x271cc3[_0x244c48(0xa2)],{'id':_0x5dad24['id'],'readbackFailed':!![]});}const _0x1e5b4a=_0x21e387['byId'][_0x244c48(0xd2)](_0x5dad24['id']);if(!_0x1e5b4a||_0x1e5b4a['url']!==_0x5dad24[_0x244c48(0xa9)])throw recoveryRequired(_0x39b9c5,_0x271cc3['appCode'],{'id':_0x5dad24['id'],'requestedUrlObserved':![],'after':_0x1e5b4a??null});try{verifyUpdatedFact(_0x1870c2,_0x1e5b4a,_0x5dad24['url']);}catch(_0x8fdf7a){const _0x547a91=asVerificationError(_0x8fdf7a,_0x244c48(0xab)+_0x5dad24['id']+_0x244c48(0xe1));throw menuFailure(_0x547a91,_0x39b9c5,{'stage':'update-recovery','succeeded':[{'id':_0x5dad24['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x5dad24['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x1e5b4a,'warnings':[_0x244c48(0xe5)],'verification':{'status':'failed','targetId':_0x5dad24['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x271cc3[_0x244c48(0xa2)])}});}return updateSuccess(_0x39b9c5,_0x21e387,_0x1e5b4a,![],!![]);}function recoveryRequired(_0xf871b7,_0x2645e1,_0x13813e){const _0xddaf8f=a110_0x357d3d,_0x4bf921=menuError(_0xddaf8f(0xb5),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.',_0xddaf8f(0xcb)+buildLookupCommand(_0x2645e1)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x4bf921,_0xf871b7,{'stage':_0xddaf8f(0xa7),'failed':{'id':_0x13813e['id'],..._0x13813e[_0xddaf8f(0xb0)]===undefined?{}:{'requestedUrlObserved':_0x13813e[_0xddaf8f(0xb0)]},..._0x13813e[_0xddaf8f(0xef)]?{'readbackFailed':!![]}:{}},'after':_0x13813e[_0xddaf8f(0xca)],'warnings':[_0xddaf8f(0xdc)],'verification':{'status':_0xddaf8f(0xe2),'targetId':_0x13813e['id'],..._0x13813e[_0xddaf8f(0xb0)]===undefined?{}:{'requestedUrlObserved':_0x13813e[_0xddaf8f(0xb0)]},..._0x13813e[_0xddaf8f(0xef)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x2645e1)}});}function a110_0x52c8(_0x4e26ab,_0x308594){_0x4e26ab=_0x4e26ab-0xa0;const _0x310600=a110_0x3106();let _0x52c814=_0x310600[_0x4e26ab];return _0x52c814;}function buildLookupCommand(_0x58b72f){const _0x31f7d0=a110_0x357d3d,_0x178681='\x27'+_0x58b72f[_0x31f7d0(0xd9)](/'/g,_0x31f7d0(0xb9))+'\x27';return _0x31f7d0(0xc2)+_0x178681+_0x31f7d0(0xce);}
1
+ function a110_0x5766(_0x3ae0dd,_0xc4a7c5){_0x3ae0dd=_0x3ae0dd-0xa1;const _0x5931e9=a110_0x5931();let _0x5766a8=_0x5931e9[_0x3ae0dd];return _0x5766a8;}const a110_0x4fb22b=a110_0x5766;(function(_0x54d100,_0x14260f){const _0x2e5bbd=a110_0x5766,_0x4c58f9=_0x54d100();while(!![]){try{const _0x24d478=parseInt(_0x2e5bbd(0xd7))/0x1*(-parseInt(_0x2e5bbd(0xa6))/0x2)+parseInt(_0x2e5bbd(0xbf))/0x3+-parseInt(_0x2e5bbd(0xcd))/0x4*(-parseInt(_0x2e5bbd(0xd5))/0x5)+-parseInt(_0x2e5bbd(0xdf))/0x6+-parseInt(_0x2e5bbd(0xa3))/0x7*(parseInt(_0x2e5bbd(0xcf))/0x8)+-parseInt(_0x2e5bbd(0xd2))/0x9*(parseInt(_0x2e5bbd(0xe8))/0xa)+-parseInt(_0x2e5bbd(0xce))/0xb*(-parseInt(_0x2e5bbd(0xc9))/0xc);if(_0x24d478===_0x14260f)break;else _0x4c58f9['push'](_0x4c58f9['shift']());}catch(_0x2ee5b7){_0x4c58f9['push'](_0x4c58f9['shift']());}}}(a110_0x5931,0xe0609));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a110_0x5931(){const _0x2757ee=['Run\x20','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','menu','External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','failed','menu_update_recovery_required','\x20has\x20an\x20empty\x20platform\x20path.','menu_external_link_not_leaf','sort','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','byId','update-recovery','update\x20external\x20menu\x20URL','high-risk-write','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','1133991ITLbZr','menu_external_link_path_missing','\x20already\x20matches\x20the\x20requested\x20URL.','/smartapi/menu/update','update-external-link-url','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','appCode','\x20URL\x20update\x20did\x20not\x20take\x20effect.','visible','15536520WcCVBU','code','after','verify\x20external\x20menu\x20URL\x20update','3375436ZAolHH','11TJnRTZ','8BFpEAw','replace','cookie','212049UMbBWm','requestedUrlObserved','menu\x20list','5MklRwv','type','251nbISPw','parentId','string','expect-url','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','link','flagMissing','snapshot','3114822NYgZYI','url','\x20could\x20not\x20be\x20verified\x20safely','POST','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','menu_external_link_type_required','hash','path','iframe','10bfMpOl','menu_state_drift','readbackFailed','\x20parent\x20changed:\x20expected\x20','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','body','rabetbase\x20menu\x20list\x20--appcode\x20','\x27\x5c\x27\x27','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','trim','external-link-update','\x20changed\x20during\x20the\x20URL-only\x20update.','6347103OQfNMo','childrenCount','\x22,\x20not\x20iframe\x20or\x20link.','1180VsCpWv','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','verification','str','Menu\x20','Updated\x20external\x20URL\x20for\x20menu\x20','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','label'];a110_0x5931=function(){return _0x2757ee;};return a110_0x5931();}import{validateExternalMenuUrl}from'../../commands/menu/external-link-create.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_PARENT_ID_FLAG,MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,formatParent,hasFlag,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,parseParentId,recheckMutationSnapshot,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a110_0x4fb22b(0xc2)}];export const menuExternalLinkUpdate={'service':a110_0x4fb22b(0xb1),'command':'external-link-update','description':a110_0x4fb22b(0xbe),'risk':a110_0x4fb22b(0xbd),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a110_0x4fb22b(0xe0),'type':a110_0x4fb22b(0xd9),'required':!![],'description':'New\x20external\x20HTTPS\x20URL'},{'name':a110_0x4fb22b(0xda),'type':a110_0x4fb22b(0xd9),'required':!![],'description':a110_0x4fb22b(0xad)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1b0bd6){validateInput(_0x1b0bd6),requireExplicitYes(_0x1b0bd6);},async 'dryRun'(_0x3e6cc0){const _0x28652d=a110_0x4fb22b;validateInput(_0x3e6cc0);const _0xc907aa=await buildPlan(_0x3e6cc0,!![]);return menuDryRunResult(_0xc907aa['plan'],{'method':_0x28652d(0xe2),'url':_0x28652d(0xc2),'body':_0xc907aa['body'],'description':_0x28652d(0xf0)+_0xc907aa[_0x28652d(0xed)]['id']+'.'});},async 'execute'(_0xc083d2){const _0x5d9395=a110_0x4fb22b;validateInput(_0xc083d2),requireExplicitYes(_0xc083d2);const _0x1a533d=await buildPlan(_0xc083d2,![]),{plan:_0x3da595,body:_0x5ed68b,before:_0x2cdc5c,noChanges:_0x5d6f32}=_0x1a533d,_0x214e13=_0x5ed68b['id'];if(_0x5d6f32)return updateSuccess(_0x3da595,_0x1a533d[_0x5d9395(0xde)],_0x2cdc5c,!![],![]);await recheckMutationSnapshot(_0xc083d2,_0x3da595,_0x5d9395(0xbc),_0x214e13);try{await updateMenuEntity(_0xc083d2[_0x5d9395(0xc6)],_0xc083d2[_0x5d9395(0xd1)],{'id':_0x5ed68b['id'],'url':_0x5ed68b[_0x5d9395(0xe0)]});}catch(_0x2235cf){const _0x34bc6a=mapMenuApiError(_0x2235cf,'update\x20external\x20menu\x20URL',_0x214e13);if(isMenuResponseLoss(_0x2235cf)&&_0x34bc6a[_0x5d9395(0xca)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0xc083d2,_0x1a533d);throw menuFailure(_0x34bc6a,_0x3da595,{'stage':'update','failed':{'id':_0x214e13},'warnings':['The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x214e13,'lookupCommand':buildLookupCommand(_0xc083d2[_0x5d9395(0xc6)])}});}let _0x2fdea3,_0x5990c5;try{_0x2fdea3=await fetchMenuSnapshot(_0xc083d2[_0x5d9395(0xc6)],_0xc083d2[_0x5d9395(0xd1)]),_0x5990c5=requireMenu(_0x2fdea3,_0x214e13),verifyUpdatedFact(_0x2cdc5c,_0x5990c5,_0x5ed68b['url']);}catch(_0x47ae4f){const _0x4227a1=describeMenuErrorCause(_0x47ae4f,_0x5d9395(0xcc),_0x214e13),_0x4b146f=asVerificationError(_0x47ae4f,'Update\x20request\x20for\x20menu\x20'+_0x214e13+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x4b146f,_0x3da595,{'stage':_0x5d9395(0xa8),'succeeded':[{'id':_0x214e13,'updateRequested':!![]}],'failed':{'id':_0x214e13,'requestedStateConfirmed':![],..._0x4227a1},'warnings':[_0x5d9395(0xac)],'verification':{'status':'failed','targetId':_0x214e13,'lookupCommand':buildLookupCommand(_0xc083d2[_0x5d9395(0xc6)])}});}return updateSuccess(_0x3da595,_0x2fdea3,_0x5990c5,![],![]);}};function validateInput(_0x26b874){validateExactId(_0x26b874),requiredUrl(_0x26b874,'url'),requiredExpectedUrl(_0x26b874),parseParentId(_0x26b874,'expect-parent-id',{'required':!![]});}function requiredUrl(_0x149fec,_0x45d92e){const _0x5f0c53=a110_0x4fb22b;if(!hasFlag(_0x149fec,_0x45d92e)||!_0x149fec[_0x5f0c53(0xa9)](_0x45d92e)[_0x5f0c53(0xf1)]())throw CliErrors[_0x5f0c53(0xdd)](_0x45d92e);return validateExternalMenuUrl(_0x149fec[_0x5f0c53(0xa9)](_0x45d92e));}function requiredExpectedUrl(_0x4fb4f5){const _0x128313=a110_0x4fb22b;if(!hasFlag(_0x4fb4f5,_0x128313(0xda))||!_0x4fb4f5[_0x128313(0xa9)](_0x128313(0xda))[_0x128313(0xf1)]())throw CliErrors['flagMissing'](_0x128313(0xda));return _0x4fb4f5[_0x128313(0xa9)]('expect-url')[_0x128313(0xf1)]();}async function buildPlan(_0x592ea2,_0x8fa15a){const _0x32168f=a110_0x4fb22b,_0x4fabc4=validateExactId(_0x592ea2),_0x5370a8=requiredUrl(_0x592ea2,_0x32168f(0xe0)),_0x440a10=requiredExpectedUrl(_0x592ea2),_0x1aee73=parseParentId(_0x592ea2,'expect-parent-id',{'required':!![]}),_0x145c43=await fetchMutationSnapshot(_0x592ea2,_0x32168f(0xbc),_0x4fabc4),_0x21367d=requireMenu(_0x145c43,_0x4fabc4);assertExternalLinkLeaf(_0x21367d);if(_0x21367d[_0x32168f(0xd8)]!==_0x1aee73)throw menuError(_0x32168f(0xe9),'Menu\x20'+_0x4fabc4+_0x32168f(0xeb)+formatParent(_0x1aee73)+',\x20current\x20'+formatParent(_0x21367d['parentId'])+'.',_0x32168f(0xe3));const _0x448bf4=_0x21367d[_0x32168f(0xe0)]===_0x5370a8;if(!_0x448bf4&&_0x21367d[_0x32168f(0xe0)]!==_0x440a10)throw menuError(_0x32168f(0xe9),_0x32168f(0xaa)+_0x4fabc4+_0x32168f(0xb9),_0x32168f(0xb3));const _0x947996={'id':_0x4fabc4,'appCode':_0x592ea2[_0x32168f(0xc6)],'url':_0x5370a8},_0x30cd9b={..._0x21367d,'url':_0x5370a8};return{'body':_0x947996,'before':_0x21367d,'noChanges':_0x448bf4,'snapshot':_0x145c43,'plan':mutationResult({'operation':_0x32168f(0xa1),'selector':{'id':_0x4fabc4},'before':_0x21367d,'after':_0x30cd9b,'dryRun':_0x8fa15a,'backend':[...BACKEND],'plannedActions':_0x448bf4?[]:[{'stage':_0x32168f(0xc3),'method':'POST','path':_0x32168f(0xc2),'body':_0x947996}],'snapshotHash':_0x145c43[_0x32168f(0xe5)],'warnings':_0x448bf4?[_0x32168f(0xdb)]:[]})};}function assertExternalLinkLeaf(_0x1d09b2){const _0x5491f4=a110_0x4fb22b;if(_0x1d09b2[_0x5491f4(0xd6)]!==_0x5491f4(0xe7)&&_0x1d09b2['type']!==_0x5491f4(0xdc))throw menuError(_0x5491f4(0xe4),'Menu\x20'+_0x1d09b2['id']+'\x20is\x20type\x20\x22'+(_0x1d09b2[_0x5491f4(0xd6)]||'unknown')+_0x5491f4(0xa5),_0x5491f4(0xec));if(_0x1d09b2[_0x5491f4(0xa4)]!==0x0)throw menuError(_0x5491f4(0xb7),'Menu\x20'+_0x1d09b2['id']+'\x20has\x20'+_0x1d09b2['childrenCount']+'\x20direct\x20child\x20menu(s).',_0x5491f4(0xb2));if(!_0x1d09b2[_0x5491f4(0xe6)][_0x5491f4(0xf1)]())throw menuError(_0x5491f4(0xc0),'Menu\x20'+_0x1d09b2['id']+_0x5491f4(0xb6),_0x5491f4(0xc4));}function verifyUpdatedFact(_0xb72e73,_0x373d2e,_0x544888){const _0x5478c0=a110_0x4fb22b;assertExternalLinkLeaf(_0x373d2e);const _0x5ec7a8=[['id',_0x373d2e['id'],_0xb72e73['id']],[_0x5478c0(0xae),_0x373d2e[_0x5478c0(0xae)],_0xb72e73['label']],['type',_0x373d2e['type'],_0xb72e73[_0x5478c0(0xd6)]],[_0x5478c0(0xe6),_0x373d2e[_0x5478c0(0xe6)],_0xb72e73['path']],[_0x5478c0(0xd8),_0x373d2e[_0x5478c0(0xd8)],_0xb72e73['parentId']],[_0x5478c0(0xb8),_0x373d2e[_0x5478c0(0xb8)],_0xb72e73[_0x5478c0(0xb8)]],[_0x5478c0(0xc8),_0x373d2e[_0x5478c0(0xc8)],_0xb72e73[_0x5478c0(0xc8)]]];for(const [_0x675c2e,_0x22fd03,_0x215ea7]of _0x5ec7a8){assertVerified(_0x22fd03===_0x215ea7,_0x5478c0(0xaa)+_0xb72e73['id']+'\x20'+_0x675c2e+_0x5478c0(0xa2));}assertVerified(_0x373d2e['url']===_0x544888,_0x5478c0(0xaa)+_0xb72e73['id']+_0x5478c0(0xc7));}function updateSuccess(_0x441fb2,_0x3659b1,_0x3d83a0,_0x817f38,_0x20538b){const _0x566714=a110_0x4fb22b,_0x45acfb=_0x3d83a0['id'],_0x3e4a47=mutationResult({..._0x441fb2,'after':_0x3d83a0,'dryRun':![],'succeeded':[{'id':_0x45acfb,'updated':!_0x817f38,'skipped':_0x817f38,'recovered':_0x20538b}],'verification':{'checkedBy':_0x566714(0xd4),'snapshotHash':_0x3659b1[_0x566714(0xe5)],'targetId':_0x45acfb,'matchesRequestedState':!![],'recovered':_0x20538b}});return{'ok':!![],'message':_0x20538b?_0x566714(0xb0)+_0x45acfb+'.':_0x817f38?_0x566714(0xaa)+_0x45acfb+_0x566714(0xc1):_0x566714(0xab)+_0x45acfb+'.','data':{..._0x3e4a47,'recovered':_0x20538b}};}async function recoverAfterResponseLoss(_0x285248,_0x1ee122){const _0x4f0f74=a110_0x4fb22b,{plan:_0x50de7f,before:_0x108822,body:_0x520a7e}=_0x1ee122;let _0x315ef4;try{_0x315ef4=await fetchMenuSnapshot(_0x285248[_0x4f0f74(0xc6)],_0x285248[_0x4f0f74(0xd1)]);}catch{throw recoveryRequired(_0x50de7f,_0x285248[_0x4f0f74(0xc6)],{'id':_0x520a7e['id'],'readbackFailed':!![]});}const _0x33b0e6=_0x315ef4[_0x4f0f74(0xba)]['get'](_0x520a7e['id']);if(!_0x33b0e6||_0x33b0e6[_0x4f0f74(0xe0)]!==_0x520a7e[_0x4f0f74(0xe0)])throw recoveryRequired(_0x50de7f,_0x285248[_0x4f0f74(0xc6)],{'id':_0x520a7e['id'],'requestedUrlObserved':![],'after':_0x33b0e6??null});try{verifyUpdatedFact(_0x108822,_0x33b0e6,_0x520a7e['url']);}catch(_0x2da299){const _0x19d9db=asVerificationError(_0x2da299,'Response\x20was\x20lost\x20and\x20menu\x20'+_0x520a7e['id']+_0x4f0f74(0xe1));throw menuFailure(_0x19d9db,_0x50de7f,{'stage':_0x4f0f74(0xbb),'succeeded':[{'id':_0x520a7e['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x520a7e['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x33b0e6,'warnings':[_0x4f0f74(0xa7)],'verification':{'status':'failed','targetId':_0x520a7e['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x285248[_0x4f0f74(0xc6)])}});}return updateSuccess(_0x50de7f,_0x315ef4,_0x33b0e6,![],!![]);}function recoveryRequired(_0x4b817c,_0x5bc728,_0x524084){const _0x454399=a110_0x4fb22b,_0x281134=menuError(_0x454399(0xb5),_0x454399(0xc5),_0x454399(0xaf)+buildLookupCommand(_0x5bc728)+'\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.');return menuFailure(_0x281134,_0x4b817c,{'stage':_0x454399(0xbb),'failed':{'id':_0x524084['id'],..._0x524084[_0x454399(0xd3)]===undefined?{}:{'requestedUrlObserved':_0x524084[_0x454399(0xd3)]},..._0x524084['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x524084[_0x454399(0xcb)],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0x454399(0xb4),'targetId':_0x524084['id'],..._0x524084[_0x454399(0xd3)]===undefined?{}:{'requestedUrlObserved':_0x524084['requestedUrlObserved']},..._0x524084[_0x454399(0xea)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x5bc728)}});}function buildLookupCommand(_0x464b6e){const _0x582f8c=a110_0x4fb22b,_0x533b7c='\x27'+_0x464b6e[_0x582f8c(0xd0)](/'/g,_0x582f8c(0xef))+'\x27';return _0x582f8c(0xee)+_0x533b7c+'\x20--format\x20compress';}