@lovrabet/rabetbase-cli 2.3.16-beta.6 → 2.3.16-beta.7

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 (279) 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/relation-audit.js +1 -1
  141. package/lib/commands/page/restore.js +1 -1
  142. package/lib/commands/page/shared.js +1 -1
  143. package/lib/commands/page/standard-page-status.js +1 -1
  144. package/lib/commands/page/sync.js +1 -1
  145. package/lib/commands/permit/index.js +1 -1
  146. package/lib/commands/permit/page-get.js +1 -1
  147. package/lib/commands/permit/page-set.js +1 -1
  148. package/lib/commands/permit/role-apis-set.js +1 -1
  149. package/lib/commands/permit/role-menus-set.js +1 -1
  150. package/lib/commands/permit/role-menus.js +1 -1
  151. package/lib/commands/permit/shared.js +1 -1
  152. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  153. package/lib/commands/project/create/format-elapsed.js +1 -1
  154. package/lib/commands/project/create/main.js +1 -1
  155. package/lib/commands/project/create/non-interactive.js +1 -1
  156. package/lib/commands/project/create/project-template-path.js +1 -1
  157. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  158. package/lib/commands/project/create/use-format-code.js +1 -1
  159. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  160. package/lib/commands/project/index.js +1 -1
  161. package/lib/commands/project/upgrade.js +1 -1
  162. package/lib/commands/registry.js +1 -1
  163. package/lib/commands/role/create.js +1 -1
  164. package/lib/commands/role/delete.js +1 -1
  165. package/lib/commands/role/detail.js +1 -1
  166. package/lib/commands/role/index.js +1 -1
  167. package/lib/commands/role/list.js +1 -1
  168. package/lib/commands/role/shared.js +1 -1
  169. package/lib/commands/role/update.js +1 -1
  170. package/lib/commands/role/user-add.js +1 -1
  171. package/lib/commands/role/user-remove.js +1 -1
  172. package/lib/commands/role/user-resolve.js +1 -1
  173. package/lib/commands/run/index.js +1 -1
  174. package/lib/commands/schema.js +1 -1
  175. package/lib/commands/sql/create.js +1 -1
  176. package/lib/commands/sql/delete.js +1 -1
  177. package/lib/commands/sql/detail.js +1 -1
  178. package/lib/commands/sql/exec.js +1 -1
  179. package/lib/commands/sql/index.js +1 -1
  180. package/lib/commands/sql/list.js +1 -1
  181. package/lib/commands/sql/pull.js +1 -1
  182. package/lib/commands/sql/push.js +1 -1
  183. package/lib/commands/sql/shared.js +1 -1
  184. package/lib/commands/sql/status.js +1 -1
  185. package/lib/commands/sql/validate.js +1 -1
  186. package/lib/commands/task/index.js +1 -1
  187. package/lib/commands/task/status.js +1 -1
  188. package/lib/commands/tenant/index.js +1 -1
  189. package/lib/commands/tenant/members-list.js +1 -1
  190. package/lib/commands/tenant/shared.js +1 -1
  191. package/lib/commands/workspace/add.js +1 -1
  192. package/lib/commands/workspace/index.js +1 -1
  193. package/lib/commands/workspace/remove.js +1 -1
  194. package/lib/config/schema.js +1 -1
  195. package/lib/constant/cdn.js +1 -1
  196. package/lib/constant/cli.js +1 -1
  197. package/lib/constant/defaults.js +1 -1
  198. package/lib/constant/domain.js +1 -1
  199. package/lib/constant/env.js +1 -1
  200. package/lib/constant/output.js +1 -1
  201. package/lib/constant/paths.js +1 -1
  202. package/lib/constant/risk.js +1 -1
  203. package/lib/context/app-resolver.js +1 -1
  204. package/lib/context/auth-resolver.js +1 -1
  205. package/lib/context/config-loader.js +1 -1
  206. package/lib/context.d.ts +1 -1
  207. package/lib/context.js +1 -1
  208. package/lib/core/alias-resolver.js +1 -1
  209. package/lib/core/api-client.js +1 -1
  210. package/lib/core/bff/config.js +1 -1
  211. package/lib/core/bff/file-system.js +1 -1
  212. package/lib/core/bff/hash.js +1 -1
  213. package/lib/core/bff/lock.js +1 -1
  214. package/lib/core/bff/utils.js +1 -1
  215. package/lib/core/db-resolver.js +1 -1
  216. package/lib/core/page/file-system.js +1 -1
  217. package/lib/core/page/hash.js +1 -1
  218. package/lib/core/page/lock.js +1 -1
  219. package/lib/core/sql-index-auditor.js +1 -1
  220. package/lib/core/sql-sync/config.js +1 -1
  221. package/lib/core/sql-sync/file-system.js +1 -1
  222. package/lib/core/sql-sync/hash.js +1 -1
  223. package/lib/core/sql-sync/lock.js +1 -1
  224. package/lib/core/sql-sync/utils.js +1 -1
  225. package/lib/core/sql-validator.js +1 -1
  226. package/lib/errors.js +1 -1
  227. package/lib/framework/build-all-flags.js +1 -1
  228. package/lib/framework/error-output.js +1 -1
  229. package/lib/framework/explicit-yes.js +1 -1
  230. package/lib/framework/flags.js +1 -1
  231. package/lib/framework/help.js +1 -1
  232. package/lib/framework/index.js +1 -1
  233. package/lib/framework/output.js +1 -1
  234. package/lib/framework/response.js +1 -1
  235. package/lib/framework/runner-alias.js +1 -1
  236. package/lib/framework/runner.js +1 -1
  237. package/lib/framework/schema-export.js +1 -1
  238. package/lib/framework/types.js +1 -1
  239. package/lib/generated/build-info.d.ts +4 -4
  240. package/lib/generated/build-info.js +1 -1
  241. package/lib/help.js +1 -1
  242. package/lib/runtime/confirmation.js +1 -1
  243. package/lib/runtime/event.js +1 -1
  244. package/lib/runtime/index.js +1 -1
  245. package/lib/runtime/queue.js +1 -1
  246. package/lib/runtime/resolve.js +1 -1
  247. package/lib/skills/main.js +1 -1
  248. package/lib/skills/npx-skills-add.js +1 -1
  249. package/lib/skills/skill-presence.js +1 -1
  250. package/lib/telemetry/cli-command-trace.js +1 -1
  251. package/lib/telemetry/cli-help-trace.js +1 -1
  252. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  253. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  254. package/lib/telemetry/send-cli-trace-log.js +1 -1
  255. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  256. package/lib/utils/ai_config.js +1 -1
  257. package/lib/utils/apply-jq-filter.js +1 -1
  258. package/lib/utils/cdn-config.js +1 -1
  259. package/lib/utils/check-sdk-version.js +1 -1
  260. package/lib/utils/cli-version-check.js +1 -1
  261. package/lib/utils/cli-version-policy.js +1 -1
  262. package/lib/utils/config.js +1 -1
  263. package/lib/utils/copy-directory.js +1 -1
  264. package/lib/utils/entity-with-id.js +1 -1
  265. package/lib/utils/file-utils.js +1 -1
  266. package/lib/utils/guides-cdn.js +1 -1
  267. package/lib/utils/http-client.js +1 -1
  268. package/lib/utils/is-non-interactive.js +1 -1
  269. package/lib/utils/logger.js +1 -1
  270. package/lib/utils/params.js +1 -1
  271. package/lib/utils/platform.js +1 -1
  272. package/lib/utils/rules-cdn.js +1 -1
  273. package/lib/utils/sleep.js +1 -1
  274. package/lib/utils/template-replacer.js +1 -1
  275. package/lib/utils/update-notice.js +1 -1
  276. package/lib/utils/version.js +1 -1
  277. package/lib/utils/with-active-cookie.js +1 -1
  278. package/lib/utils/write-cli-side-channel.js +1 -1
  279. package/package.json +1 -1
@@ -1 +1 @@
1
- const a105_0xc23baa=a105_0x4c00;(function(_0x539e20,_0x462bcd){const _0x2a7f4f=a105_0x4c00,_0x5afaa5=_0x539e20();while(!![]){try{const _0x5875e9=parseInt(_0x2a7f4f(0x11d))/0x1*(-parseInt(_0x2a7f4f(0x118))/0x2)+-parseInt(_0x2a7f4f(0x112))/0x3+parseInt(_0x2a7f4f(0x105))/0x4+parseInt(_0x2a7f4f(0x12e))/0x5+parseInt(_0x2a7f4f(0x124))/0x6*(-parseInt(_0x2a7f4f(0x12a))/0x7)+-parseInt(_0x2a7f4f(0x109))/0x8+parseInt(_0x2a7f4f(0x135))/0x9*(parseInt(_0x2a7f4f(0x126))/0xa);if(_0x5875e9===_0x462bcd)break;else _0x5afaa5['push'](_0x5afaa5['shift']());}catch(_0x5817ee){_0x5afaa5['push'](_0x5afaa5['shift']());}}}(a105_0x34ec,0x7af13));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_0xc23baa(0x114),NON_ATOMIC_WARNING=a105_0xc23baa(0x12c);function a105_0x4c00(_0x3992d9,_0x58c616){_0x3992d9=_0x3992d9-0x103;const _0x34ec1c=a105_0x34ec();let _0x4c0054=_0x34ec1c[_0x3992d9];return _0x4c0054;}function readUpdatePatch(_0x59ab0a){const _0x468087=a105_0xc23baa,_0x52a79f=readKbId(_0x59ab0a),_0x183a8e=_0x59ab0a['flag'](_0x468087(0x10e)),_0x3b542f=_0x59ab0a[_0x468087(0x111)](_0x468087(0x12f)),_0x139f77=_0x59ab0a[_0x468087(0x111)](_0x468087(0x113)),_0x4bfc29=_0x183a8e===undefined?undefined:String(_0x183a8e)[_0x468087(0x137)]();if(_0x183a8e!==undefined&&!_0x4bfc29)throw kbError(_0x468087(0x104),'--title\x20cannot\x20be\x20empty.');const _0x197601=_0x3b542f===undefined?undefined:String(_0x3b542f)['trim']();if(_0x3b542f!==undefined&&!_0x197601)throw kbError(_0x468087(0x120),'--file\x20cannot\x20be\x20empty.');if(_0x4bfc29===undefined&&_0x197601===undefined)throw kbError(_0x468087(0x11e),_0x468087(0x131),'Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.');let _0x3af417;if(_0x139f77!==undefined){_0x3af417=Number(_0x139f77);if(!Number[_0x468087(0x115)](_0x3af417)||_0x3af417<0x0)throw kbError(_0x468087(0x11b),'--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.');}return{'id':_0x52a79f,'title':_0x4bfc29,'file':_0x197601,'expectedVersion':_0x3af417};}function a105_0x34ec(){const _0x54b0dd=['isSafeInteger','content','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','42AFpsYx','expectedVersion','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','kb_expected_version_invalid','replacement','12434MAxfIU','kb_update_empty','kb_update_outcome_unknown','kb_file_required','POST','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.','54bYxlFF','\x20--format\x20compress','2250930aTDmEj','number','update','company','632842BgeOkH','snapshotHash','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','New\x20knowledge-base\x20title','2638545zdZIYf','file','patch','Nothing\x20to\x20update.','Updated\x20company\x20knowledge\x20base\x20','string','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','63JYNkMh','verified','trim','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','beforeRecord','kb_title_invalid','3141096MfHnMd','push','contentHash','rabetbase\x20kb\x20detail\x20--id\x20','5957416OoQFVD','high-risk-write','appCode','before','Company\x20knowledge-base\x20id','title','version','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','flag','1696854SWmWaA','expected-version','/admin/knowledge-base/update'];a105_0x34ec=function(){return _0x54b0dd;};return a105_0x34ec();}async function prepareUpdate(_0x4bceca){const _0x1acb2d=a105_0xc23baa,_0x11350d=readUpdatePatch(_0x4bceca),_0x52d95c=await requireKb(_0x4bceca,_0x11350d['id']);assertExpectedKbVersion(_0x52d95c,_0x11350d['expectedVersion']);const _0x4a33d4=_0x11350d[_0x1acb2d(0x12f)]?await readKbFile(_0x11350d['file']):undefined,_0x1e68af=projectKb(_0x52d95c),_0x16212f=projectKb({..._0x52d95c,..._0x11350d['title']!==undefined?{'title':_0x11350d[_0x1acb2d(0x10e)]}:{},..._0x4a33d4?{'content':_0x4a33d4[_0x1acb2d(0x116)]}:{}});return{'patch':_0x11350d,'beforeRecord':_0x52d95c,'before':_0x1e68af,'planned':_0x16212f,'replacement':_0x4a33d4};}export const kbUpdate={'service':'kb','command':'update','description':a105_0xc23baa(0x138),'risk':a105_0xc23baa(0x10a),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':a105_0xc23baa(0x127),'required':!![],'description':a105_0xc23baa(0x10d)},{'name':a105_0xc23baa(0x10e),'type':a105_0xc23baa(0x133),'required':![],'description':a105_0xc23baa(0x12d)},{'name':a105_0xc23baa(0x12f),'type':a105_0xc23baa(0x133),'required':![],'description':a105_0xc23baa(0x110)},{'name':a105_0xc23baa(0x113),'type':'number','required':![],'description':a105_0xc23baa(0x122)}],async 'validate'(_0x27d68c){readUpdatePatch(_0x27d68c),requireKbExplicitYes(_0x27d68c);},async 'dryRun'(_0x22daf6){const _0x243d40=a105_0xc23baa,_0x1adec=await prepareUpdate(_0x22daf6),_0x2ab2cf=_0x1adec[_0x243d40(0x130)][_0x243d40(0x119)]!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':_0x243d40(0x128),'selector':{'id':_0x1adec['before']['id'],'scope':_0x243d40(0x129),'appCode':_0x1adec[_0x243d40(0x10c)]['appCode']},'before':_0x1adec[_0x243d40(0x10c)],'after':_0x1adec['planned'],'dryRun':!![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0x2ab2cf,'verification':{'expectedVersion':_0x1adec['patch']['expectedVersion']??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x1adec['before'][_0x243d40(0x12b)],'lookupCommand':_0x243d40(0x108)+_0x1adec[_0x243d40(0x10c)]['id']+_0x243d40(0x125)}},{'method':_0x243d40(0x121),'url':UPDATE_PATH});},async 'execute'(_0x585c95){const _0x561a5b=a105_0xc23baa;requireKbExplicitYes(_0x585c95);const _0xd5a666=await prepareUpdate(_0x585c95),_0x22c19a={'id':_0xd5a666['patch']['id'],..._0xd5a666[_0x561a5b(0x130)][_0x561a5b(0x10e)]!==undefined?{'title':_0xd5a666['patch'][_0x561a5b(0x10e)]}:{},..._0xd5a666[_0x561a5b(0x11c)]?{'content':_0xd5a666[_0x561a5b(0x11c)][_0x561a5b(0x116)]}:{}};let _0x2913e6=![];try{const _0x3aad1d=await updateEnterpriseKnowledgeBase(_0x585c95['cookie'],_0x22c19a);assertCompanyKnowledgeBase(_0x3aad1d,_0x585c95[_0x561a5b(0x10b)],_0xd5a666[_0x561a5b(0x130)]['id']);}catch(_0x482143){if(!isPlatformTransportFailure(_0x482143))throw _0x482143;_0x2913e6=!![];}const _0x1f834b=await verifyKbMutationReadback('update',_0x2913e6,()=>requireKb(_0x585c95,_0xd5a666[_0x561a5b(0x130)]['id'])),_0x5e0786=projectKb(_0x1f834b),_0x1a9b01=_0xd5a666['patch'][_0x561a5b(0x10e)]===undefined||_0x1f834b[_0x561a5b(0x10e)]===_0xd5a666[_0x561a5b(0x130)][_0x561a5b(0x10e)],_0x33a8a2=!_0xd5a666['replacement']||inspectKbContent(_0x1f834b['content'])[_0x561a5b(0x107)]===_0xd5a666[_0x561a5b(0x11c)][_0x561a5b(0x107)],_0x377afd=!_0xd5a666[_0x561a5b(0x11c)]||_0x1f834b[_0x561a5b(0x10f)]>_0xd5a666[_0x561a5b(0x103)][_0x561a5b(0x10f)],_0x1cfead=!_0x2913e6||_0xd5a666['replacement']!==undefined||_0xd5a666[_0x561a5b(0x130)][_0x561a5b(0x10e)]===undefined||_0xd5a666[_0x561a5b(0x103)]['title']!==_0xd5a666[_0x561a5b(0x130)][_0x561a5b(0x10e)];if(!_0x1a9b01||!_0x33a8a2||!_0x377afd||!_0x1cfead)throw kbError(_0x2913e6?_0x561a5b(0x11f):'kb_verification_failed','Company\x20knowledge\x20base\x20'+_0xd5a666[_0x561a5b(0x130)]['id']+_0x561a5b(0x123),_0x561a5b(0x117)+_0xd5a666[_0x561a5b(0x130)]['id']+_0x561a5b(0x11a));const _0x392213=[];return _0xd5a666['patch'][_0x561a5b(0x119)]!==undefined&&_0x392213[_0x561a5b(0x106)](NON_ATOMIC_WARNING),_0x2913e6&&_0x392213[_0x561a5b(0x106)](_0x561a5b(0x134)),{'ok':!![],'data':{'operation':_0x561a5b(0x128),'selector':{'id':_0x5e0786['id'],'scope':'company','appCode':_0x5e0786[_0x561a5b(0x10b)]},'before':_0xd5a666['before'],'after':_0x5e0786,'dryRun':![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':_0x392213,'verification':{'status':_0x561a5b(0x136),'recoveredAfterUnknownResponse':_0x2913e6,'expectedVersion':_0xd5a666[_0x561a5b(0x130)][_0x561a5b(0x119)]??null,'atomicCompareAndSet':![],'lookupCommand':_0x561a5b(0x108)+_0x5e0786['id']+_0x561a5b(0x125)}},'message':_0x561a5b(0x132)+_0x5e0786['id']};}};
1
+ const a105_0x2762e4=a105_0x3351;(function(_0x32d4e7,_0x1c35cb){const _0x3de42c=a105_0x3351,_0x2b1e04=_0x32d4e7();while(!![]){try{const _0x18e86d=-parseInt(_0x3de42c(0x196))/0x1*(-parseInt(_0x3de42c(0x19a))/0x2)+-parseInt(_0x3de42c(0x181))/0x3*(-parseInt(_0x3de42c(0x198))/0x4)+parseInt(_0x3de42c(0x1a4))/0x5+parseInt(_0x3de42c(0x1a5))/0x6+parseInt(_0x3de42c(0x195))/0x7*(-parseInt(_0x3de42c(0x1ae))/0x8)+-parseInt(_0x3de42c(0x186))/0x9+-parseInt(_0x3de42c(0x194))/0xa;if(_0x18e86d===_0x1c35cb)break;else _0x2b1e04['push'](_0x2b1e04['shift']());}catch(_0x336e34){_0x2b1e04['push'](_0x2b1e04['shift']());}}}(a105_0x321a,0x5b49b));import{isPlatformTransportFailure,updateEnterpriseKnowledgeBase}from'../../core/api-client.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a105_0x3351(_0x158939,_0x3698d8){_0x158939=_0x158939-0x17e;const _0x321a87=a105_0x321a();let _0x335191=_0x321a87[_0x158939];return _0x335191;}import{assertCompanyKnowledgeBase,assertExpectedKbVersion,inspectKbContent,kbError,projectKb,readKbFile,readKbId,requireKb,requireKbExplicitYes,verifyKbMutationReadback}from'../../commands/kb/shared.js';const UPDATE_PATH=a105_0x2762e4(0x18b),NON_ATOMIC_WARNING=a105_0x2762e4(0x1ac);function a105_0x321a(){const _0x36e2fa=['push','beforeRecord','Company\x20knowledge-base\x20id','659700OvJfMo','planned','replacement','version','high-risk-write','/admin/knowledge-base/update','cookie','appCode','verified','trim','Replacement\x20UTF-8\x20text\x20or\x20Markdown\x20content\x20file','Update\x20a\x20company\x20knowledge\x20base\x20with\x20preflight\x20drift\x20protection','file','New\x20knowledge-base\x20title','7825060yxBykz','2352AuQtQI','1GhgIab','Inspect\x20it\x20with\x20`rabetbase\x20kb\x20detail\x20--id\x20','1375732QSJJLv','--expected-version\x20must\x20be\x20a\x20non-negative\x20safe\x20integer.','375886HSnPnH','patch','content','flag','Update\x20response\x20was\x20unavailable;\x20verified\x20applicable\x20postconditions\x20by\x20exact\x20ID\x20without\x20resubmitting.','Non-atomic\x20preflight\x20assertion\x20for\x20the\x20current\x20version','before','string','rabetbase\x20kb\x20detail\x20--id\x20','contentHash','551220ldhiXT','4306584dhpJQb','isSafeInteger','kb_file_required','title','\x20--format\x20compress','Updated\x20company\x20knowledge\x20base\x20','expectedVersion','--expected-version\x20is\x20a\x20non-atomic\x20read-before-write\x20assertion;\x20the\x20server\x20update\x20contract\x20has\x20no\x20version\x20predicate.','company','11288cgMqIQ','\x20--format\x20compress`;\x20do\x20not\x20resubmit\x20automatically.','--title\x20cannot\x20be\x20empty.','Company\x20knowledge\x20base\x20','Nothing\x20to\x20update.','snapshotHash','POST','6qMlPIO','update'];a105_0x321a=function(){return _0x36e2fa;};return a105_0x321a();}function readUpdatePatch(_0x2dad75){const _0x40a965=a105_0x2762e4,_0x34d74c=readKbId(_0x2dad75),_0x4708d3=_0x2dad75['flag']('title'),_0x1bdf97=_0x2dad75['flag'](_0x40a965(0x192)),_0x4baee0=_0x2dad75[_0x40a965(0x19d)]('expected-version'),_0x4c4377=_0x4708d3===undefined?undefined:String(_0x4708d3)['trim']();if(_0x4708d3!==undefined&&!_0x4c4377)throw kbError('kb_title_invalid',_0x40a965(0x1b0));const _0x2b6d06=_0x1bdf97===undefined?undefined:String(_0x1bdf97)[_0x40a965(0x18f)]();if(_0x1bdf97!==undefined&&!_0x2b6d06)throw kbError(_0x40a965(0x1a7),'--file\x20cannot\x20be\x20empty.');if(_0x4c4377===undefined&&_0x2b6d06===undefined)throw kbError('kb_update_empty',_0x40a965(0x17e),'Pass\x20at\x20least\x20one\x20of\x20--title\x20or\x20--file.');let _0x5b0098;if(_0x4baee0!==undefined){_0x5b0098=Number(_0x4baee0);if(!Number[_0x40a965(0x1a6)](_0x5b0098)||_0x5b0098<0x0)throw kbError('kb_expected_version_invalid',_0x40a965(0x199));}return{'id':_0x34d74c,'title':_0x4c4377,'file':_0x2b6d06,'expectedVersion':_0x5b0098};}async function prepareUpdate(_0x3d4aed){const _0x2eaea5=a105_0x2762e4,_0x53b085=readUpdatePatch(_0x3d4aed),_0x50d4c5=await requireKb(_0x3d4aed,_0x53b085['id']);assertExpectedKbVersion(_0x50d4c5,_0x53b085[_0x2eaea5(0x1ab)]);const _0x4c805f=_0x53b085[_0x2eaea5(0x192)]?await readKbFile(_0x53b085[_0x2eaea5(0x192)]):undefined,_0x2a91ea=projectKb(_0x50d4c5),_0x526763=projectKb({..._0x50d4c5,..._0x53b085[_0x2eaea5(0x1a8)]!==undefined?{'title':_0x53b085[_0x2eaea5(0x1a8)]}:{},..._0x4c805f?{'content':_0x4c805f[_0x2eaea5(0x19c)]}:{}});return{'patch':_0x53b085,'beforeRecord':_0x50d4c5,'before':_0x2a91ea,'planned':_0x526763,'replacement':_0x4c805f};}export const kbUpdate={'service':'kb','command':a105_0x2762e4(0x182),'description':a105_0x2762e4(0x191),'risk':a105_0x2762e4(0x18a),'requiresAppCode':!![],'structuredErrors':!![],'flags':[{'name':'id','type':'number','required':!![],'description':a105_0x2762e4(0x185)},{'name':a105_0x2762e4(0x1a8),'type':a105_0x2762e4(0x1a1),'required':![],'description':a105_0x2762e4(0x193)},{'name':a105_0x2762e4(0x192),'type':a105_0x2762e4(0x1a1),'required':![],'description':a105_0x2762e4(0x190)},{'name':'expected-version','type':'number','required':![],'description':a105_0x2762e4(0x19f)}],async 'validate'(_0x11d22b){readUpdatePatch(_0x11d22b),requireKbExplicitYes(_0x11d22b);},async 'dryRun'(_0x48a707){const _0x623a27=a105_0x2762e4,_0x305137=await prepareUpdate(_0x48a707),_0x4aec52=_0x305137[_0x623a27(0x19b)]['expectedVersion']!==undefined?[NON_ATOMIC_WARNING]:[];return asDryRunResult({'operation':'update','selector':{'id':_0x305137[_0x623a27(0x1a0)]['id'],'scope':_0x623a27(0x1ad),'appCode':_0x305137[_0x623a27(0x1a0)]['appCode']},'before':_0x305137['before'],'after':_0x305137[_0x623a27(0x187)],'dryRun':!![],'backend':{'method':_0x623a27(0x180),'path':UPDATE_PATH},'warnings':_0x4aec52,'verification':{'expectedVersion':_0x305137[_0x623a27(0x19b)][_0x623a27(0x1ab)]??null,'atomicCompareAndSet':![],'plannedSnapshotHash':_0x305137[_0x623a27(0x1a0)][_0x623a27(0x17f)],'lookupCommand':_0x623a27(0x1a2)+_0x305137[_0x623a27(0x1a0)]['id']+'\x20--format\x20compress'}},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x1da3e7){const _0x32ea8b=a105_0x2762e4;requireKbExplicitYes(_0x1da3e7);const _0x18ac29=await prepareUpdate(_0x1da3e7),_0x5df1cb={'id':_0x18ac29['patch']['id'],..._0x18ac29[_0x32ea8b(0x19b)][_0x32ea8b(0x1a8)]!==undefined?{'title':_0x18ac29[_0x32ea8b(0x19b)][_0x32ea8b(0x1a8)]}:{},..._0x18ac29['replacement']?{'content':_0x18ac29[_0x32ea8b(0x188)]['content']}:{}};let _0x2b51e7=![];try{const _0x48b3b1=await updateEnterpriseKnowledgeBase(_0x1da3e7[_0x32ea8b(0x18c)],_0x5df1cb);assertCompanyKnowledgeBase(_0x48b3b1,_0x1da3e7[_0x32ea8b(0x18d)],_0x18ac29[_0x32ea8b(0x19b)]['id']);}catch(_0xe309e2){if(!isPlatformTransportFailure(_0xe309e2))throw _0xe309e2;_0x2b51e7=!![];}const _0x32c1b5=await verifyKbMutationReadback(_0x32ea8b(0x182),_0x2b51e7,()=>requireKb(_0x1da3e7,_0x18ac29[_0x32ea8b(0x19b)]['id'])),_0x594285=projectKb(_0x32c1b5),_0x40d7e4=_0x18ac29['patch'][_0x32ea8b(0x1a8)]===undefined||_0x32c1b5['title']===_0x18ac29[_0x32ea8b(0x19b)][_0x32ea8b(0x1a8)],_0x4d6d86=!_0x18ac29['replacement']||inspectKbContent(_0x32c1b5[_0x32ea8b(0x19c)])[_0x32ea8b(0x1a3)]===_0x18ac29[_0x32ea8b(0x188)][_0x32ea8b(0x1a3)],_0x54a6f2=!_0x18ac29['replacement']||_0x32c1b5[_0x32ea8b(0x189)]>_0x18ac29[_0x32ea8b(0x184)][_0x32ea8b(0x189)],_0x2b5335=!_0x2b51e7||_0x18ac29['replacement']!==undefined||_0x18ac29[_0x32ea8b(0x19b)][_0x32ea8b(0x1a8)]===undefined||_0x18ac29[_0x32ea8b(0x184)][_0x32ea8b(0x1a8)]!==_0x18ac29[_0x32ea8b(0x19b)][_0x32ea8b(0x1a8)];if(!_0x40d7e4||!_0x4d6d86||!_0x54a6f2||!_0x2b5335)throw kbError(_0x2b51e7?'kb_update_outcome_unknown':'kb_verification_failed',_0x32ea8b(0x1b1)+_0x18ac29[_0x32ea8b(0x19b)]['id']+'\x20does\x20not\x20prove\x20the\x20requested\x20update\x20state.',_0x32ea8b(0x197)+_0x18ac29[_0x32ea8b(0x19b)]['id']+_0x32ea8b(0x1af));const _0x2979cb=[];return _0x18ac29['patch'][_0x32ea8b(0x1ab)]!==undefined&&_0x2979cb[_0x32ea8b(0x183)](NON_ATOMIC_WARNING),_0x2b51e7&&_0x2979cb['push'](_0x32ea8b(0x19e)),{'ok':!![],'data':{'operation':_0x32ea8b(0x182),'selector':{'id':_0x594285['id'],'scope':'company','appCode':_0x594285[_0x32ea8b(0x18d)]},'before':_0x18ac29[_0x32ea8b(0x1a0)],'after':_0x594285,'dryRun':![],'backend':{'method':_0x32ea8b(0x180),'path':UPDATE_PATH},'warnings':_0x2979cb,'verification':{'status':_0x32ea8b(0x18e),'recoveredAfterUnknownResponse':_0x2b51e7,'expectedVersion':_0x18ac29['patch'][_0x32ea8b(0x1ab)]??null,'atomicCompareAndSet':![],'lookupCommand':_0x32ea8b(0x1a2)+_0x594285['id']+_0x32ea8b(0x1a9)}},'message':_0x32ea8b(0x1aa)+_0x594285['id']};}};
@@ -1 +1 @@
1
- function a106_0x4f99(_0x402faa,_0x5720b5){_0x402faa=_0x402faa-0x157;const _0x42ba90=a106_0x42ba();let _0x4f9911=_0x42ba90[_0x402faa];return _0x4f9911;}const a106_0x5882d5=a106_0x4f99;(function(_0x39afa7,_0x52dc35){const _0x56d4b7=a106_0x4f99,_0x5e04d4=_0x39afa7();while(!![]){try{const _0x110ba4=-parseInt(_0x56d4b7(0x176))/0x1*(parseInt(_0x56d4b7(0x163))/0x2)+-parseInt(_0x56d4b7(0x157))/0x3+parseInt(_0x56d4b7(0x164))/0x4+-parseInt(_0x56d4b7(0x169))/0x5+-parseInt(_0x56d4b7(0x161))/0x6*(parseInt(_0x56d4b7(0x175))/0x7)+parseInt(_0x56d4b7(0x16c))/0x8*(-parseInt(_0x56d4b7(0x16a))/0x9)+parseInt(_0x56d4b7(0x171))/0xa*(parseInt(_0x56d4b7(0x165))/0xb);if(_0x110ba4===_0x52dc35)break;else _0x5e04d4['push'](_0x5e04d4['shift']());}catch(_0x3633c3){_0x5e04d4['push'](_0x5e04d4['shift']());}}}(a106_0x42ba,0x86f51));import{logger}from'../../utils/logger.js';function printLogs(_0x403efc){const _0x9d974e=a106_0x4f99;if(_0x403efc[_0x9d974e(0x160)]===0x0){console[_0x9d974e(0x166)](_0x9d974e(0x177));return;}console[_0x9d974e(0x166)]('*\x20Lovrabet\x20CLI\x20logs:\x0a'),_0x403efc['forEach']((_0x5667fc,_0x140b96)=>{const _0x291005=_0x9d974e,_0x1fd2ae=new Date(_0x5667fc[_0x291005(0x159)])[_0x291005(0x178)](_0x291005(0x179)),_0x29286f=_0x5667fc[_0x291005(0x16e)]===_0x291005(0x16d)?'√':_0x5667fc[_0x291005(0x16e)]==='error'?'×':_0x5667fc[_0x291005(0x16e)]===_0x291005(0x15a)?'!':'i';console[_0x291005(0x166)](_0x140b96+0x1+'.\x20'+_0x29286f+'\x20['+_0x5667fc[_0x291005(0x170)]+']\x20'+_0x5667fc[_0x291005(0x168)]),console['log'](_0x291005(0x17a)+_0x1fd2ae),_0x5667fc[_0x291005(0x15b)]&&console[_0x291005(0x166)](_0x291005(0x173)+_0x5667fc[_0x291005(0x15b)]+'ms'),_0x5667fc[_0x291005(0x172)]&&Object[_0x291005(0x16b)](_0x5667fc['details'])[_0x291005(0x160)]>0x0&&console[_0x291005(0x166)](_0x291005(0x162)+JSON[_0x291005(0x158)](_0x5667fc[_0x291005(0x172)],null,0x2)),console[_0x291005(0x166)]('');});}function a106_0x42ba(){const _0x2948f9=['message','3723345UKFtpk','3225249LiRKFk','keys','8poCSoN','success','level','read','command','2105930RZzTfU','details','\x20\x20\x20Duration:\x20','show','2009DoJvdL','6889tCNiwd','*\x20No\x20logs\x20found','toLocaleString','en-US','\x20\x20\x20Time:\x20','readLogs','2989125gkplrY','stringify','timestamp','warn','duration','write','*\x20Logs\x20cleared','Clear\x20command\x20history\x20logs','clear','length','13134ZwgRGY','\x20\x20\x20Details:\x20','138qgzGZU','3229888nsqpTr','154nmmzzd','log','logs'];a106_0x42ba=function(){return _0x2948f9;};return a106_0x42ba();}export const logsDefinitions=[{'service':a106_0x5882d5(0x167),'command':a106_0x5882d5(0x174),'description':'View\x20command\x20history\x20logs','risk':a106_0x5882d5(0x16f),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x51c488){const _0x1d42f4=a106_0x5882d5;return printLogs(logger[_0x1d42f4(0x17b)]()),{'ok':!![]};}},{'service':'logs','command':a106_0x5882d5(0x15f),'description':a106_0x5882d5(0x15e),'risk':a106_0x5882d5(0x15c),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x2daee8){const _0xd7c222=a106_0x5882d5;return logger['clearLogs'](),console[_0xd7c222(0x166)](_0xd7c222(0x15d)),{'ok':!![]};}}];
1
+ const a106_0x1d7842=a106_0x489a;(function(_0x8242c9,_0xfe62e0){const _0x117a44=a106_0x489a,_0x4497d1=_0x8242c9();while(!![]){try{const _0x3ca215=-parseInt(_0x117a44(0xd9))/0x1+parseInt(_0x117a44(0xd3))/0x2*(-parseInt(_0x117a44(0xcc))/0x3)+parseInt(_0x117a44(0xc6))/0x4*(parseInt(_0x117a44(0xc9))/0x5)+-parseInt(_0x117a44(0xc4))/0x6*(parseInt(_0x117a44(0xd1))/0x7)+-parseInt(_0x117a44(0xc3))/0x8*(-parseInt(_0x117a44(0xbf))/0x9)+-parseInt(_0x117a44(0xcf))/0xa*(parseInt(_0x117a44(0xd4))/0xb)+parseInt(_0x117a44(0xc5))/0xc;if(_0x3ca215===_0xfe62e0)break;else _0x4497d1['push'](_0x4497d1['shift']());}catch(_0x362422){_0x4497d1['push'](_0x4497d1['shift']());}}}(a106_0x16bd,0x5386f));function a106_0x16bd(){const _0x54a706=['en-US','read','keys','\x20\x20\x20Details:\x20','command','153ppFegr','show','clearLogs','warn','89952UgMUEW','426BYMKQf','12231840JzJkhC','14764dHqbxV','*\x20Logs\x20cleared','duration','645xmmsbo','details','logs','47733EezRlt','timestamp','View\x20command\x20history\x20logs','1008310ZOCUFc','clear','49427EIoelG','Clear\x20command\x20history\x20logs','78kBSLuR','11hvkPJb','*\x20Lovrabet\x20CLI\x20logs:\x0a','readLogs','level','\x20\x20\x20Time:\x20','121789fCNyYS','log'];a106_0x16bd=function(){return _0x54a706;};return a106_0x16bd();}import{logger}from'../../utils/logger.js';function printLogs(_0x54f20e){const _0x5b29be=a106_0x489a;if(_0x54f20e['length']===0x0){console[_0x5b29be(0xda)]('*\x20No\x20logs\x20found');return;}console[_0x5b29be(0xda)](_0x5b29be(0xd5)),_0x54f20e['forEach']((_0xdcd9c0,_0x29a374)=>{const _0x573332=_0x5b29be,_0x1383d2=new Date(_0xdcd9c0[_0x573332(0xcd)])['toLocaleString'](_0x573332(0xdb)),_0x4d9600=_0xdcd9c0['level']==='success'?'√':_0xdcd9c0[_0x573332(0xd7)]==='error'?'×':_0xdcd9c0[_0x573332(0xd7)]===_0x573332(0xc2)?'!':'i';console[_0x573332(0xda)](_0x29a374+0x1+'.\x20'+_0x4d9600+'\x20['+_0xdcd9c0[_0x573332(0xbe)]+']\x20'+_0xdcd9c0['message']),console[_0x573332(0xda)](_0x573332(0xd8)+_0x1383d2),_0xdcd9c0['duration']&&console[_0x573332(0xda)]('\x20\x20\x20Duration:\x20'+_0xdcd9c0[_0x573332(0xc8)]+'ms'),_0xdcd9c0['details']&&Object[_0x573332(0xdd)](_0xdcd9c0['details'])['length']>0x0&&console[_0x573332(0xda)](_0x573332(0xbd)+JSON['stringify'](_0xdcd9c0[_0x573332(0xca)],null,0x2)),console[_0x573332(0xda)]('');});}function a106_0x489a(_0x292147,_0x6ce995){_0x292147=_0x292147-0xbd;const _0x16bd8b=a106_0x16bd();let _0x489a40=_0x16bd8b[_0x292147];return _0x489a40;}export const logsDefinitions=[{'service':a106_0x1d7842(0xcb),'command':a106_0x1d7842(0xc0),'description':a106_0x1d7842(0xce),'risk':a106_0x1d7842(0xdc),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x548d49){const _0x5a6ac1=a106_0x1d7842;return printLogs(logger[_0x5a6ac1(0xd6)]()),{'ok':!![]};}},{'service':a106_0x1d7842(0xcb),'command':a106_0x1d7842(0xd0),'description':a106_0x1d7842(0xd2),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x390a8e){const _0x5ae2a7=a106_0x1d7842;return logger[_0x5ae2a7(0xc1)](),console[_0x5ae2a7(0xda)](_0x5ae2a7(0xc7)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a107_0x3bea88=a107_0x568c;(function(_0x1c5267,_0x5c69bf){const _0x3a0794=a107_0x568c,_0x4e16f9=_0x1c5267();while(!![]){try{const _0x17842b=-parseInt(_0x3a0794(0x1b4))/0x1*(-parseInt(_0x3a0794(0x1ac))/0x2)+parseInt(_0x3a0794(0x1e1))/0x3+parseInt(_0x3a0794(0x1b0))/0x4+-parseInt(_0x3a0794(0x1c0))/0x5*(-parseInt(_0x3a0794(0x1ca))/0x6)+-parseInt(_0x3a0794(0x1d4))/0x7+parseInt(_0x3a0794(0x1c5))/0x8*(parseInt(_0x3a0794(0x1e3))/0x9)+parseInt(_0x3a0794(0x1c9))/0xa*(-parseInt(_0x3a0794(0x1c1))/0xb);if(_0x17842b===_0x5c69bf)break;else _0x4e16f9['push'](_0x4e16f9['shift']());}catch(_0x31aa48){_0x4e16f9['push'](_0x4e16f9['shift']());}}}(a107_0x2d60,0xb5d32));import a107_0x129beb 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';import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':a107_0x3bea88(0x1ef),'command':a107_0x3bea88(0x1e8),'description':a107_0x3bea88(0x1d5),'risk':'high-risk-write','flags':[{'name':'params','type':a107_0x3bea88(0x1f9),'description':a107_0x3bea88(0x1b2)+a107_0x3bea88(0x1d8)},{'name':a107_0x3bea88(0x1a0),'type':'string','description':'Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20'+a107_0x3bea88(0x1d3),'enum':['replace',a107_0x3bea88(0x1f6)],'default':a107_0x3bea88(0x1f6)},{'name':a107_0x3bea88(0x1e2),'type':'boolean','description':a107_0x3bea88(0x1b1)},{'name':a107_0x3bea88(0x1f7),'type':'string','description':a107_0x3bea88(0x1d9)},{'name':a107_0x3bea88(0x1e4),'type':a107_0x3bea88(0x1f9),'description':a107_0x3bea88(0x1a9)},{'name':a107_0x3bea88(0x1a5),'type':a107_0x3bea88(0x19f),'description':a107_0x3bea88(0x1f4)},{'name':'load-mode','type':a107_0x3bea88(0x1f9),'enum':[a107_0x3bea88(0x1c4),a107_0x3bea88(0x1de),'fetch'],'description':a107_0x3bea88(0x1a7)}],async 'dryRun'(_0x391359){const _0x48df48=a107_0x3bea88;ensureRunnableContext(_0x391359[_0x48df48(0x1fa)],_0x391359[_0x48df48(0x1e9)]);const _0x4d1267=await runMenuUpdateCore(_0x391359[_0x48df48(0x1be)],_0x391359['cookie'],_0x391359[_0x48df48(0x1c6)](_0x48df48(0x1d6)),{'mode':parseMode(_0x391359[_0x48df48(0x1c6)](_0x48df48(0x1a0))),'dryRun':!![],'force':_0x391359[_0x48df48(0x1ae)](_0x48df48(0x1e2)),'selection':parseSelection(_0x391359),'loadScriptMode':parseLoadScriptMode(_0x391359[_0x48df48(0x1c6)](_0x48df48(0x1a1)))});return{'method':'POST','url':_0x48df48(0x1b6),'body':_0x4d1267,'description':_0x4d1267['skipped']?_0x48df48(0x1bb):'Would\x20update\x20'+(_0x4d1267[_0x48df48(0x1db)]?.[_0x48df48(0x1bd)]??0x0)+_0x48df48(0x1dc)};},async 'execute'(_0x30a371){const _0xd0c534=a107_0x3bea88;ensureRunnableContext(_0x30a371[_0xd0c534(0x1fa)],_0x30a371['selectedAppName']);const _0x5bb1fc=_0x30a371['flag'](_0xd0c534(0x1a4)),_0xe1c856=_0x30a371['str']('params'),_0x2ace5c=parseMode(_0x30a371[_0xd0c534(0x1c6)](_0xd0c534(0x1a0))),_0x67e253=_0x30a371[_0xd0c534(0x1ae)](_0xd0c534(0x1e2)),_0x5c8cd8=parseLoadScriptMode(_0x30a371[_0xd0c534(0x1c6)](_0xd0c534(0x1a1))),_0x4769f7=parseParams(_0xe1c856),_0xaefc85=!!(_0x4769f7[_0xd0c534(0x1c7)]||_0x4769f7['cssUrl']);if(_0x5bb1fc||_0xaefc85&&!isInteractive()){const _0x51cad7=await runMenuUpdateCore(_0x30a371[_0xd0c534(0x1be)],_0x30a371['cookie'],_0xe1c856,{'mode':_0x2ace5c,'force':_0x67e253,'selection':parseSelection(_0x30a371),'loadScriptMode':_0x5c8cd8});return _0x51cad7[_0xd0c534(0x1f5)]?writeCliSideChannelLine(_0xd0c534(0x1ec)):(writeCliSideChannelLine(_0xd0c534(0x1e5)+_0x51cad7[_0xd0c534(0x1b9)]+_0xd0c534(0x1ce)),_0x51cad7[_0xd0c534(0x1b3)]>0x0&&writeCliSideChannelLine('!\x20'+_0x51cad7['failed']+_0xd0c534(0x1eb))),{'ok':_0x51cad7[_0xd0c534(0x1b3)]===0x0,'data':_0x51cad7,'message':_0x51cad7[_0xd0c534(0x1f5)]?_0xd0c534(0x1a2):_0xd0c534(0x1f2)+_0x51cad7['updated']+'\x20updated,\x20'+_0x51cad7[_0xd0c534(0x1b3)]+_0xd0c534(0x1f0)};}requireInteractive();const _0x1c5b6e=startSpinner(_0xd0c534(0x1cc));let _0x422272;try{_0x422272=await fetchOnlineMenuList(_0x30a371['appCode'],_0x30a371[_0xd0c534(0x1a3)]),stopSpinner(_0x1c5b6e,_0xd0c534(0x1e0),!![]);}catch(_0x3d5ac2){stopSpinner(_0x1c5b6e,_0xd0c534(0x1b7),![]);throw CliErrors[_0xd0c534(0x1cb)](_0x3d5ac2 instanceof Error?_0x3d5ac2[_0xd0c534(0x1dd)]:_0xd0c534(0x1b7));}const _0x351c9b=filterMenusWithResources(_0x422272),_0xfc506f=parseSelection(_0x30a371,![]),_0x336615=_0xfc506f?selectMenusForUpdate(_0x351c9b,_0xfc506f):_0x351c9b;if(_0x336615['length']===0x0)return writeCliSideChannelLine(a107_0x129beb[_0xd0c534(0x1c3)]('\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found')),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a107_0x129beb[_0xd0c534(0x1ba)](_0xd0c534(0x1f1)+_0x336615[_0xd0c534(0x1bd)]+'\x20menu(s)\x20with\x20existing\x20resources')),writeCliSideChannelLine(renderUpdateSummary(_0x336615['map'](_0x25909c=>_0x25909c[_0xd0c534(0x1bf)]),[_0x4769f7['jsUrl'],_0x4769f7[_0xd0c534(0x1d0)]])),writeCliSideChannelLine('');let _0x50eb63=_0x4769f7['jsUrl'],_0x405720=_0x4769f7[_0xd0c534(0x1d0)];!_0x50eb63&&(_0x50eb63=await askJsUrl());!_0x405720&&(_0x405720=await askCssUrl());const _0x2e4241=await askConfirm(_0xd0c534(0x1bc)+_0x336615[_0xd0c534(0x1bd)]+_0xd0c534(0x1a8)+_0x50eb63+_0xd0c534(0x19d)+_0x405720+'?');if(!_0x2e4241)return writeCliSideChannelLine(a107_0x129beb['gray'](_0xd0c534(0x1da))),{'ok':!![]};const _0x56ec14=startSpinner(_0xd0c534(0x1e6)+_0x336615[_0xd0c534(0x1bd)]+_0xd0c534(0x1d2));try{const _0x544320=await runMenuUpdateCore(_0x30a371[_0xd0c534(0x1be)],_0x30a371[_0xd0c534(0x1a3)],JSON[_0xd0c534(0x1aa)]({'jsUrl':_0x50eb63,'cssUrl':_0x405720}),{'mode':_0x2ace5c,'force':_0x67e253,'selection':{'all':![],'menuIds':_0x336615[_0xd0c534(0x1cd)](_0xf4b88c=>_0xf4b88c['id']),'paths':[]},'loadScriptMode':_0x5c8cd8});return stopSpinner(_0x56ec14,_0xd0c534(0x1cf)+_0x544320[_0xd0c534(0x1b9)]+_0xd0c534(0x1d1),_0x544320[_0xd0c534(0x1b3)]===0x0),{'ok':_0x544320[_0xd0c534(0x1b3)]===0x0,'data':_0x544320,'message':_0x544320['failed']>0x0?_0xd0c534(0x1f2)+_0x544320['updated']+_0xd0c534(0x1ad)+_0x544320['failed']+_0xd0c534(0x1f0):_0xd0c534(0x1f2)+_0x544320['updated']+'\x20updated.'};}catch(_0x96add7){stopSpinner(_0x56ec14,_0xd0c534(0x1b5),![]);throw CliErrors[_0xd0c534(0x1cb)](_0x96add7 instanceof Error?_0x96add7[_0xd0c534(0x1dd)]:_0xd0c534(0x1b5));}}};function ensureRunnableContext(_0x547bc2,_0x25a620){const _0x303847=a107_0x3bea88,_0x24e62e=_0x547bc2[_0x303847(0x1f3)]?String(_0x547bc2[_0x303847(0x1f3)])[_0x303847(0x1d7)]():'';if(!isInProject()&&!_0x25a620&&!_0x24e62e)throw CliErrors['validation'](_0x303847(0x1af)+_0x303847(0x1a6));}function parseMode(_0x44a24e){const _0x12a2a6=a107_0x3bea88;if(!_0x44a24e)return _0x12a2a6(0x1f6);if(_0x44a24e===_0x12a2a6(0x1df)||_0x44a24e===_0x12a2a6(0x1f6))return _0x44a24e;throw CliErrors[_0x12a2a6(0x1cb)](_0x12a2a6(0x19e));}function parseSelection(_0x5bdde4,_0x4c7925=!![]){const _0x4e93a9=a107_0x3bea88,_0x4e7b60=_0x5bdde4['bool'](_0x4e93a9(0x1a5)),_0x6f1ebf=parseMenuIds(_0x5bdde4[_0x4e93a9(0x1c6)](_0x4e93a9(0x1f7))),_0x262bec=parseCsv(_0x5bdde4['str'](_0x4e93a9(0x1e4))),_0x31c4b8=_0x6f1ebf['length']>0x0||_0x262bec[_0x4e93a9(0x1bd)]>0x0;if(_0x4e7b60&&_0x31c4b8)throw CliErrors[_0x4e93a9(0x1cb)](_0x4e93a9(0x1c2));if(!_0x4e7b60&&!_0x31c4b8){if(!_0x4c7925)return undefined;throw CliErrors['validation'](_0x4e93a9(0x1c8));}return{'all':_0x4e7b60,'menuIds':_0x6f1ebf,'paths':_0x262bec};}function parseMenuIds(_0x865d5){const _0x3e4277=a107_0x3bea88,_0x3e6a36=parseCsv(_0x865d5),_0x5d2517=_0x3e6a36[_0x3e4277(0x1cd)](Number);if(_0x5d2517[_0x3e4277(0x1e7)](_0xdc8e49=>!Number[_0x3e4277(0x1ea)](_0xdc8e49)||_0xdc8e49<=0x0))throw CliErrors[_0x3e4277(0x1cb)]('--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.');return[...new Set(_0x5d2517)];}function a107_0x568c(_0x1c3b09,_0x3bc536){_0x1c3b09=_0x1c3b09-0x19d;const _0x2d602e=a107_0x2d60();let _0x568c83=_0x2d602e[_0x1c3b09];return _0x568c83;}function parseCsv(_0x50a486){const _0x42660e=a107_0x3bea88;return[...new Set(_0x50a486[_0x42660e(0x1ed)](',')[_0x42660e(0x1cd)](_0x4e755f=>_0x4e755f['trim']())[_0x42660e(0x1ee)](Boolean))];}function parseLoadScriptMode(_0x45fd07){const _0x463407=a107_0x3bea88;if(!_0x45fd07)return undefined;if(_0x45fd07===_0x463407(0x1c4)||_0x45fd07==='script'||_0x45fd07===_0x463407(0x1f8))return _0x45fd07;throw CliErrors[_0x463407(0x1cb)]('Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch');}function parseParams(_0x267d61){const _0x40fb13=a107_0x3bea88;if(!_0x267d61)return{};try{const _0x3ac5d5=JSON[_0x40fb13(0x1ab)](_0x267d61);if(typeof _0x3ac5d5!==_0x40fb13(0x1b8)||_0x3ac5d5===null||Array['isArray'](_0x3ac5d5))return{};return{'jsUrl':typeof _0x3ac5d5['jsUrl']===_0x40fb13(0x1f9)?_0x3ac5d5[_0x40fb13(0x1c7)]['trim']():undefined,'cssUrl':typeof _0x3ac5d5[_0x40fb13(0x1d0)]===_0x40fb13(0x1f9)?_0x3ac5d5[_0x40fb13(0x1d0)][_0x40fb13(0x1d7)]():undefined};}catch{return{};}}function a107_0x2d60(){const _0x2eafee=['yes','all','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','\x20menu(s)\x20with\x20JS:\x20','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','stringify','parse','173458plVtsa','\x20updated,\x20','bool','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','4336436bEkNiS','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20','failed','1omtbRH','Menu\x20asset\x20update\x20failed','/smartapi/menu/update','Failed\x20to\x20fetch\x20online\x20menu\x20list','object','updated','cyan','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','\x20\x20Update\x20','length','appCode','label','440dcZLpT','11vqKSOG','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','yellow','import','3198648HOxDem','str','jsUrl','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','11128940SskDXn','26898GJoLXs','validation','Fetching\x20online\x20menu\x20list...','map','\x20menu(s)\x20updated','Updated\x20','cssUrl','\x20menu(s)','\x20menu(s)...','patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','7585879yCdmoP','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','params','trim','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update','\x20\x20Cancelled.','diffs','\x20menu\x20resource\x20set(s).','message','script','replace','Online\x20menu\x20list\x20fetched','2928516pxOwSN','force','9PYZlhc','paths','✓\x20Menu\x20asset\x20update\x20completed:\x20','Updating\x20','some','asset-update','selectedAppName','isSafeInteger','\x20menu(s)\x20failed','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','split','filter','menu','\x20failed.','\x20\x20Found\x20','Menu\x20asset\x20update\x20completed:\x20','appcode','Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources','skipped','patch','menu-ids','fetch','string','rawFlags','\x20and\x20CSS:\x20','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','boolean','mode','load-mode','Menu\x20asset\x20update\x20skipped','cookie'];a107_0x2d60=function(){return _0x2eafee;};return a107_0x2d60();}
1
+ const a107_0x1d3592=a107_0x55e5;(function(_0x5d5dbb,_0x6dd432){const _0x5efaf6=a107_0x55e5,_0x45a227=_0x5d5dbb();while(!![]){try{const _0x2cb815=-parseInt(_0x5efaf6(0x1d2))/0x1*(parseInt(_0x5efaf6(0x1f6))/0x2)+parseInt(_0x5efaf6(0x1e3))/0x3*(parseInt(_0x5efaf6(0x1ff))/0x4)+-parseInt(_0x5efaf6(0x20d))/0x5+parseInt(_0x5efaf6(0x1ca))/0x6*(parseInt(_0x5efaf6(0x1fb))/0x7)+-parseInt(_0x5efaf6(0x1d5))/0x8*(parseInt(_0x5efaf6(0x201))/0x9)+-parseInt(_0x5efaf6(0x1d7))/0xa*(-parseInt(_0x5efaf6(0x1e2))/0xb)+parseInt(_0x5efaf6(0x1c3))/0xc*(parseInt(_0x5efaf6(0x1f1))/0xd);if(_0x2cb815===_0x6dd432)break;else _0x45a227['push'](_0x45a227['shift']());}catch(_0x38db0c){_0x45a227['push'](_0x45a227['shift']());}}}(a107_0x55d2,0x2e761));import a107_0x9501cf 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_0x55e5(_0x109a73,_0x5c7b11){_0x109a73=_0x109a73-0x1b6;const _0x55d2be=a107_0x55d2();let _0x55e551=_0x55d2be[_0x109a73];return _0x55e551;}import{selectMenusForUpdate}from'../../commands/menu/shared/update-core.js';function a107_0x55d2(){const _0x58cd5f=['params','\x20updated.','No\x20menus\x20with\x20existing\x20resources\x20would\x20be\x20updated.','bool','patch','--all\x20cannot\x20be\x20combined\x20with\x20--menu-ids\x20or\x20--paths.','\x20menu(s)\x20updated','31668fnVzuA','length','mode','Menu\x20asset\x20update\x20skipped','\x20menu(s)','\x20menu(s)\x20with\x20existing\x20resources','cookie','13518cTqWBT','\x20menu(s)\x20failed','map','selectedAppName','isArray','message','script','label','3gjEYDk','\x20menu(s)...','gray','2648sulAYU','menu','2002420lNbGhb','str','Run\x20inside\x20a\x20directory\x20with\x20.rabetbase.json,\x20or\x20pass\x20--appcode\x20<code>.','high-risk-write','Would\x20update\x20','force','Allow\x20replace\x20mode\x20to\x20remove\x20existing\x20JS\x20resources','POST','cyan','Fetching\x20online\x20menu\x20list...','replace','11nNnXwj','597XQvmHM','Failed\x20to\x20fetch\x20online\x20menu\x20list','Updating\x20','\x20\x20!\x20No\x20menus\x20with\x20existing\x20resources\x20found','string','JSON:\x20{\x22jsUrl\x22:\x22https://...js\x22,\x22cssUrl\x22:\x22https://...css\x22}','skipped','Update\x20CDN\x20asset\x20URLs\x20for\x20selected\x20online\x20menus\x20with\x20existing\x20resources','rawFlags','some','/smartapi/menu/update','stringify','load-mode','\x20and\x20CSS:\x20','949GNWYBA','appCode','menu-ids','!\x20No\x20menus\x20with\x20existing\x20resources\x20found','import','90178pqOVOu','boolean','\x20\x20Update\x20','Menu\x20asset\x20update\x20failed','\x20menu\x20resource\x20set(s).','49owMcRG','all','diffs','Resource\x20update\x20mode:\x20replace\x20rewrites\x20resources\x20from\x20supplied\x20URLs;\x20','6848qIZVCu','trim','3789HAZyaq','filter','\x20\x20Cancelled.','\x20failed.','✓\x20Menu\x20asset\x20update\x20completed:\x20','\x20menu(s)\x20with\x20JS:\x20','jsUrl','failed','fetch','Explicitly\x20change\x20the\x20microfrontend\x20resource\x20loading\x20mode','validation','Invalid\x20--mode.\x20Allowed\x20values:\x20replace,\x20patch','1422125MrFYzT','menu\x20asset-update\x20requires\x20an\x20explicit\x20target:\x20pass\x20--all,\x20--menu-ids,\x20or\x20--paths.','updated','--menu-ids\x20must\x20contain\x20positive\x20safe\x20integers.','asset-update','cssUrl','appcode','object','Exact\x20comma-separated\x20menu\x20paths\x20to\x20update','menu\x20asset-update\x20requires\x20a\x20project\x20context\x20or\x20explicit\x20--appcode.\x20','Menu\x20asset\x20update\x20completed:\x20','\x20updated,\x20'];a107_0x55d2=function(){return _0x58cd5f;};return a107_0x55d2();}import{isInProject}from'../../context.js';export const menuAssetUpdate={'service':a107_0x1d3592(0x1d6),'command':a107_0x1d3592(0x211),'description':a107_0x1d3592(0x1ea),'risk':a107_0x1d3592(0x1da),'flags':[{'name':a107_0x1d3592(0x1bc),'type':a107_0x1d3592(0x1e7),'description':'Pre-fill\x20JS/CSS\x20URLs\x20to\x20update.\x20'+a107_0x1d3592(0x1e8)},{'name':a107_0x1d3592(0x1c5),'type':a107_0x1d3592(0x1e7),'description':a107_0x1d3592(0x1fe)+'patch\x20replaces\x20a\x20supplied\x20type\x20only\x20when\x20the\x20existing\x20target\x20is\x20unambiguous','enum':[a107_0x1d3592(0x1e1),a107_0x1d3592(0x1c0)],'default':a107_0x1d3592(0x1c0)},{'name':a107_0x1d3592(0x1dc),'type':a107_0x1d3592(0x1f7),'description':a107_0x1d3592(0x1dd)},{'name':a107_0x1d3592(0x1f3),'type':'string','description':'Exact\x20comma-separated\x20menu\x20IDs\x20to\x20update'},{'name':'paths','type':a107_0x1d3592(0x1e7),'description':a107_0x1d3592(0x1b8)},{'name':a107_0x1d3592(0x1fc),'type':'boolean','description':'Explicitly\x20update\x20every\x20menu\x20that\x20has\x20resources'},{'name':a107_0x1d3592(0x1ef),'type':a107_0x1d3592(0x1e7),'enum':['import',a107_0x1d3592(0x1d0),a107_0x1d3592(0x209)],'description':a107_0x1d3592(0x20a)}],async 'dryRun'(_0x2e9f54){const _0x10c5b7=a107_0x1d3592;ensureRunnableContext(_0x2e9f54['rawFlags'],_0x2e9f54[_0x10c5b7(0x1cd)]);const _0x3e5185=await runMenuUpdateCore(_0x2e9f54[_0x10c5b7(0x1f2)],_0x2e9f54['cookie'],_0x2e9f54[_0x10c5b7(0x1d8)]('params'),{'mode':parseMode(_0x2e9f54['str']('mode')),'dryRun':!![],'force':_0x2e9f54[_0x10c5b7(0x1bf)]('force'),'selection':parseSelection(_0x2e9f54),'loadScriptMode':parseLoadScriptMode(_0x2e9f54[_0x10c5b7(0x1d8)](_0x10c5b7(0x1ef)))});return{'method':_0x10c5b7(0x1de),'url':_0x10c5b7(0x1ed),'body':_0x3e5185,'description':_0x3e5185[_0x10c5b7(0x1e9)]?_0x10c5b7(0x1be):_0x10c5b7(0x1db)+(_0x3e5185[_0x10c5b7(0x1fd)]?.['length']??0x0)+_0x10c5b7(0x1fa)};},async 'execute'(_0x251907){const _0x414266=a107_0x1d3592;ensureRunnableContext(_0x251907[_0x414266(0x1eb)],_0x251907['selectedAppName']);const _0xd46ce=_0x251907['flag']('yes'),_0x3c329e=_0x251907[_0x414266(0x1d8)]('params'),_0x37c5dd=parseMode(_0x251907[_0x414266(0x1d8)](_0x414266(0x1c5))),_0x8e9527=_0x251907[_0x414266(0x1bf)](_0x414266(0x1dc)),_0x4acf2e=parseLoadScriptMode(_0x251907[_0x414266(0x1d8)]('load-mode')),_0x39991b=parseParams(_0x3c329e),_0x3a9ff6=!!(_0x39991b[_0x414266(0x207)]||_0x39991b[_0x414266(0x212)]);if(_0xd46ce||_0x3a9ff6&&!isInteractive()){const _0x823bf7=await runMenuUpdateCore(_0x251907[_0x414266(0x1f2)],_0x251907[_0x414266(0x1c9)],_0x3c329e,{'mode':_0x37c5dd,'force':_0x8e9527,'selection':parseSelection(_0x251907),'loadScriptMode':_0x4acf2e});return _0x823bf7['skipped']?writeCliSideChannelLine(_0x414266(0x1f4)):(writeCliSideChannelLine(_0x414266(0x205)+_0x823bf7[_0x414266(0x20f)]+_0x414266(0x1c2)),_0x823bf7[_0x414266(0x208)]>0x0&&writeCliSideChannelLine('!\x20'+_0x823bf7[_0x414266(0x208)]+_0x414266(0x1cb))),{'ok':_0x823bf7[_0x414266(0x208)]===0x0,'data':_0x823bf7,'message':_0x823bf7['skipped']?_0x414266(0x1c6):_0x414266(0x1ba)+_0x823bf7[_0x414266(0x20f)]+_0x414266(0x1bb)+_0x823bf7[_0x414266(0x208)]+_0x414266(0x204)};}requireInteractive();const _0x596099=startSpinner(_0x414266(0x1e0));let _0x300f8f;try{_0x300f8f=await fetchOnlineMenuList(_0x251907['appCode'],_0x251907[_0x414266(0x1c9)]),stopSpinner(_0x596099,'Online\x20menu\x20list\x20fetched',!![]);}catch(_0x141365){stopSpinner(_0x596099,_0x414266(0x1e4),![]);throw CliErrors['validation'](_0x141365 instanceof Error?_0x141365[_0x414266(0x1cf)]:_0x414266(0x1e4));}const _0x2839f9=filterMenusWithResources(_0x300f8f),_0x168ee8=parseSelection(_0x251907,![]),_0x4249ce=_0x168ee8?selectMenusForUpdate(_0x2839f9,_0x168ee8):_0x2839f9;if(_0x4249ce[_0x414266(0x1c4)]===0x0)return writeCliSideChannelLine(a107_0x9501cf['yellow'](_0x414266(0x1e6))),{'ok':!![]};writeCliSideChannelLine(''),writeCliSideChannelLine(a107_0x9501cf[_0x414266(0x1df)]('\x20\x20Found\x20'+_0x4249ce[_0x414266(0x1c4)]+_0x414266(0x1c8))),writeCliSideChannelLine(renderUpdateSummary(_0x4249ce[_0x414266(0x1cc)](_0x3ca7c8=>_0x3ca7c8[_0x414266(0x1d1)]),[_0x39991b[_0x414266(0x207)],_0x39991b[_0x414266(0x212)]])),writeCliSideChannelLine('');let _0x4b2b2e=_0x39991b[_0x414266(0x207)],_0x38a257=_0x39991b['cssUrl'];!_0x4b2b2e&&(_0x4b2b2e=await askJsUrl());!_0x38a257&&(_0x38a257=await askCssUrl());const _0x1e4da9=await askConfirm(_0x414266(0x1f8)+_0x4249ce[_0x414266(0x1c4)]+_0x414266(0x206)+_0x4b2b2e+_0x414266(0x1f0)+_0x38a257+'?');if(!_0x1e4da9)return writeCliSideChannelLine(a107_0x9501cf[_0x414266(0x1d4)](_0x414266(0x203))),{'ok':!![]};const _0x58f918=startSpinner(_0x414266(0x1e5)+_0x4249ce[_0x414266(0x1c4)]+_0x414266(0x1d3));try{const _0x2f1d45=await runMenuUpdateCore(_0x251907['appCode'],_0x251907['cookie'],JSON[_0x414266(0x1ee)]({'jsUrl':_0x4b2b2e,'cssUrl':_0x38a257}),{'mode':_0x37c5dd,'force':_0x8e9527,'selection':{'all':![],'menuIds':_0x4249ce[_0x414266(0x1cc)](_0x3c2d59=>_0x3c2d59['id']),'paths':[]},'loadScriptMode':_0x4acf2e});return stopSpinner(_0x58f918,'Updated\x20'+_0x2f1d45['updated']+_0x414266(0x1c7),_0x2f1d45[_0x414266(0x208)]===0x0),{'ok':_0x2f1d45[_0x414266(0x208)]===0x0,'data':_0x2f1d45,'message':_0x2f1d45['failed']>0x0?_0x414266(0x1ba)+_0x2f1d45['updated']+'\x20updated,\x20'+_0x2f1d45[_0x414266(0x208)]+_0x414266(0x204):_0x414266(0x1ba)+_0x2f1d45['updated']+_0x414266(0x1bd)};}catch(_0x5be3d8){stopSpinner(_0x58f918,_0x414266(0x1f9),![]);throw CliErrors['validation'](_0x5be3d8 instanceof Error?_0x5be3d8[_0x414266(0x1cf)]:_0x414266(0x1f9));}}};function ensureRunnableContext(_0x1e1c20,_0x1ea783){const _0x5c76a6=a107_0x1d3592,_0x47462f=_0x1e1c20[_0x5c76a6(0x1b6)]?String(_0x1e1c20[_0x5c76a6(0x1b6)])[_0x5c76a6(0x200)]():'';if(!isInProject()&&!_0x1ea783&&!_0x47462f)throw CliErrors[_0x5c76a6(0x20b)](_0x5c76a6(0x1b9)+_0x5c76a6(0x1d9));}function parseMode(_0x4f5ffc){const _0x21cfae=a107_0x1d3592;if(!_0x4f5ffc)return'patch';if(_0x4f5ffc===_0x21cfae(0x1e1)||_0x4f5ffc==='patch')return _0x4f5ffc;throw CliErrors['validation'](_0x21cfae(0x20c));}function parseSelection(_0x500d2b,_0x1d3bd6=!![]){const _0x216c3b=a107_0x1d3592,_0xbb6967=_0x500d2b['bool'](_0x216c3b(0x1fc)),_0x1c6181=parseMenuIds(_0x500d2b[_0x216c3b(0x1d8)](_0x216c3b(0x1f3))),_0x142b01=parseCsv(_0x500d2b[_0x216c3b(0x1d8)]('paths')),_0x5a98eb=_0x1c6181[_0x216c3b(0x1c4)]>0x0||_0x142b01[_0x216c3b(0x1c4)]>0x0;if(_0xbb6967&&_0x5a98eb)throw CliErrors[_0x216c3b(0x20b)](_0x216c3b(0x1c1));if(!_0xbb6967&&!_0x5a98eb){if(!_0x1d3bd6)return undefined;throw CliErrors[_0x216c3b(0x20b)](_0x216c3b(0x20e));}return{'all':_0xbb6967,'menuIds':_0x1c6181,'paths':_0x142b01};}function parseMenuIds(_0x37916b){const _0x2ec004=a107_0x1d3592,_0x181a8f=parseCsv(_0x37916b),_0x325eb2=_0x181a8f[_0x2ec004(0x1cc)](Number);if(_0x325eb2[_0x2ec004(0x1ec)](_0x2e0114=>!Number['isSafeInteger'](_0x2e0114)||_0x2e0114<=0x0))throw CliErrors[_0x2ec004(0x20b)](_0x2ec004(0x210));return[...new Set(_0x325eb2)];}function parseCsv(_0xf4df8e){const _0xe585a1=a107_0x1d3592;return[...new Set(_0xf4df8e['split'](',')[_0xe585a1(0x1cc)](_0x4f0c6c=>_0x4f0c6c['trim']())[_0xe585a1(0x202)](Boolean))];}function parseLoadScriptMode(_0x28d8f7){const _0x10cb3c=a107_0x1d3592;if(!_0x28d8f7)return undefined;if(_0x28d8f7===_0x10cb3c(0x1f5)||_0x28d8f7==='script'||_0x28d8f7===_0x10cb3c(0x209))return _0x28d8f7;throw CliErrors['validation']('Invalid\x20--load-mode.\x20Allowed\x20values:\x20import,\x20script,\x20fetch');}function parseParams(_0x359fd1){const _0x45913f=a107_0x1d3592;if(!_0x359fd1)return{};try{const _0x132fd1=JSON['parse'](_0x359fd1);if(typeof _0x132fd1!==_0x45913f(0x1b7)||_0x132fd1===null||Array[_0x45913f(0x1ce)](_0x132fd1))return{};return{'jsUrl':typeof _0x132fd1[_0x45913f(0x207)]===_0x45913f(0x1e7)?_0x132fd1['jsUrl'][_0x45913f(0x200)]():undefined,'cssUrl':typeof _0x132fd1[_0x45913f(0x212)]===_0x45913f(0x1e7)?_0x132fd1[_0x45913f(0x212)][_0x45913f(0x200)]():undefined};}catch{return{};}}
@@ -1 +1 @@
1
- const a108_0x4a07ec=a108_0xb4c9;(function(_0x5aaf5d,_0x3b356c){const _0x5e8858=a108_0xb4c9,_0x438db3=_0x5aaf5d();while(!![]){try{const _0x5c6841=-parseInt(_0x5e8858(0x1b6))/0x1+-parseInt(_0x5e8858(0x1c4))/0x2+parseInt(_0x5e8858(0x1f7))/0x3+parseInt(_0x5e8858(0x1dc))/0x4+parseInt(_0x5e8858(0x1b1))/0x5+-parseInt(_0x5e8858(0x20c))/0x6+parseInt(_0x5e8858(0x211))/0x7;if(_0x5c6841===_0x3b356c)break;else _0x438db3['push'](_0x438db3['shift']());}catch(_0x215311){_0x438db3['push'](_0x438db3['shift']());}}}(a108_0x3c3f,0xbff87));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assertMenuDeletePlanCurrent,assertMenuDeletePlanExecutable,createMenuDeletePlanFile,mutationPlanFromDeleteFile,readMenuDeletePlan,writeMenuDeletePlan}from'../../commands/menu/shared/delete-plan.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_EXPECT_FLAGS,MENU_ID_FLAG,asVerificationError,assertExpectedState,describeMenuErrorCause,fetchMutationSnapshot,hasFlag,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,requireExplicitYes,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{batchDeleteMenuEntities}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':'/smartapi/menu/batchDelete'}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':a108_0x4a07ec(0x1a7)},MENU_DELETE_RECURSIVE_FLAG={'name':a108_0x4a07ec(0x1ad),'type':'boolean','description':a108_0x4a07ec(0x1e3)},MENU_DELETE_PLAN_OUT_FLAG={'name':a108_0x4a07ec(0x1d9),'type':a108_0x4a07ec(0x1b7),'description':a108_0x4a07ec(0x1fd)},MENU_DELETE_PLAN_FLAG={'name':'plan','type':a108_0x4a07ec(0x1b7),'description':a108_0x4a07ec(0x1c8)};function a108_0x3c3f(){const _0x28d151=['target','The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.','Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out','childrenCount','pages','):\x20','expect-parent-id','/smartapi/menu/batchDelete','unconfirmed','childrenIds','batch\x20delete','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','high-risk-write','\x20->\x20menu\x20','menu_batch_delete_count_mismatch','push','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','Menu\x20','plan-out','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','stringify','1529432SUSqjL','validation','menu_delete_page_bound','batch-delete-menu','plan-validation','plan','menu_recursive_requires_folder','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','\x20resource\x20URL(s).','byId','pageId','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','pre-write-plan-validation','bool','menu','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.','createdAt','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','resources','map','cascade','Backend\x20reported\x20','filter','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','plan\x20delete','rabetbase\x20menu\x20list\x20--format\x20json','folder','4204893rQnObI','Deleted\x20','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','Post-failure\x20menu\x20readback\x20failed\x20(','cookie','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file','Would\x20batch\x20delete\x20','message','forEach','toLowerCase','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence','trim','type','absentIds','menu_folder_has_resources','Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.','Recursive\x20menu\x20delete\x20plan\x20root\x20','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','\x20is\x20not\x20a\x20folder.','expect-path','8648844nEizcc','menu\x20list','menu_folder_resources_invalid','menu_plan_invalid','length','5444390INGfPg','add','menu_page_shared','verification','menu_verification_failed','\x20references\x20missing\x20child\x20','causeCode','flagMissing','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','Folder\x20','POST','failed','has','Post-mismatch\x20menu\x20readback\x20failed\x20(','Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)','\x20menu(s)\x20under\x20exact\x20id\x20','delete','causeMessage','\x20deleted\x20menus;\x20expected\x20','unknown','recursive','\x20and\x20cannot\x20be\x20deleted\x20safely.','execute\x20reviewed\x20delete\x20plan','batch-delete','4704010yyRkyK','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','deleteOrder','hash','snapshot','1118144mcXgqF','string','get','The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.','size','remainingIds','selector','\x20is\x20type\x20\x22','join','str','resourcesValid','dry-run','path','appCode','313264CgbrWR','menu_non_empty'];a108_0x3c3f=function(){return _0x28d151;};return a108_0x3c3f();}export const menuDelete={'service':a108_0x4a07ec(0x1ea),'command':a108_0x4a07ec(0x1a9),'description':'Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','risk':a108_0x4a07ec(0x1d2),'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'(_0x2de28f){const _0x557a14=a108_0x4a07ec;_0x2de28f[_0x557a14(0x1e9)](_0x557a14(0x1c1))?validateDeleteDryRunInput(_0x2de28f):validateDeleteExecuteInput(_0x2de28f),requireExplicitYes(_0x2de28f);},async 'dryRun'(_0x1135b1){const _0x55532d=a108_0x4a07ec;validateDeleteDryRunInput(_0x1135b1);const _0x2fc69b=await buildDeletePlan(_0x1135b1),_0x32b903=createMenuDeletePlanFile(_0x1135b1[_0x55532d(0x1c3)],_0x2fc69b),_0xf569d8=await writeMenuDeletePlan(_0x1135b1['str'](_0x55532d(0x1d9)),_0x32b903),_0x21d2bf=mutationResult({..._0x2fc69b,'planFile':{'path':_0xf569d8,'createdAt':_0x32b903[_0x55532d(0x1ec)],'expiresAt':_0x32b903['expiresAt']}});return menuDryRunResult(_0x21d2bf,{'method':_0x55532d(0x1a3),'url':_0x55532d(0x1cd),'body':{'idList':_0x21d2bf[_0x55532d(0x1b3)]},'description':_0x55532d(0x1fe)+(_0x21d2bf[_0x55532d(0x1b3)]?.[_0x55532d(0x210)]??0x1)+_0x55532d(0x1a8)+_0x21d2bf[_0x55532d(0x1bc)]['id']+';\x20execution\x20must\x20consume\x20'+_0xf569d8+'.'});},async 'execute'(_0x400113){const _0x1278e1=a108_0x4a07ec;requireExplicitYes(_0x400113),validateDeleteExecuteInput(_0x400113);const _0x13c4b5=await readMenuDeletePlan(_0x400113[_0x1278e1(0x1bf)](_0x1278e1(0x1e1))),_0x171a6e=mutationPlanFromDeleteFile(_0x13c4b5[_0x1278e1(0x1e1)],_0x13c4b5[_0x1278e1(0x1c2)]),_0x40ceb9=_0x13c4b5['plan'][_0x1278e1(0x1c6)]['id'];try{assertMenuDeletePlanExecutable(_0x13c4b5[_0x1278e1(0x1e1)],_0x400113['appCode']);}catch(_0x297566){throw menuFailure(asMenuError(_0x297566),_0x171a6e,{'stage':_0x1278e1(0x1e0),'failed':{'id':_0x40ceb9}});}let _0x369ce1,_0x3ae15b;try{_0x369ce1=await fetchMutationSnapshot(_0x400113,_0x1278e1(0x1af),_0x40ceb9),_0x3ae15b=assertMenuDeletePlanCurrent(_0x13c4b5[_0x1278e1(0x1e1)],_0x400113[_0x1278e1(0x1c3)],_0x369ce1),assertDeleteTargetsComplete(_0x13c4b5[_0x1278e1(0x1e1)],_0x369ce1),_0x3ae15b[_0x1278e1(0x200)](_0x5ae667=>assertDeleteSafety(_0x5ae667,_0x13c4b5[_0x1278e1(0x1e1)][_0x1278e1(0x1ad)])),assertNoSharedPages(_0x369ce1,_0x3ae15b),assertCascadeMatchesPlan(_0x171a6e,_0x3ae15b);}catch(_0x205dc2){throw menuFailure(asMenuError(_0x205dc2),_0x171a6e,{'stage':_0x1278e1(0x1e8),'failed':{'id':_0x40ceb9}});}const _0x48aba9=_0x13c4b5[_0x1278e1(0x1e1)]['deleteOrder'];let _0x2bad0a;try{_0x2bad0a=await batchDeleteMenuEntities(_0x400113[_0x1278e1(0x1fb)],_0x48aba9);}catch(_0x232445){const _0x538a6d=mapMenuApiError(_0x232445,_0x1278e1(0x1d0)),_0x5cb214=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0x402d06;try{_0x402d06=await readDeleteOutcome(_0x400113,_0x48aba9);}catch(_0x435f8c){const _0x59a659=describeMenuErrorCause(_0x435f8c,'read\x20menu\x20state\x20after\x20batch\x20delete\x20failure',_0x40ceb9);_0x5cb214['push'](_0x1278e1(0x1fa)+_0x59a659['causeCode']+_0x1278e1(0x1cb)+_0x59a659[_0x1278e1(0x1aa)]);throw menuFailure(_0x538a6d,_0x171a6e,{'stage':_0x1278e1(0x1b0),'failed':{'targetIds':_0x48aba9,'targetIdsAbsent':_0x1278e1(0x1ce),..._0x59a659},'warnings':_0x5cb214,'verification':{'status':_0x1278e1(0x1a4),'lookupCommand':_0x1278e1(0x1f5),'targetIds':_0x48aba9}});}throw menuFailure(_0x538a6d,_0x171a6e,{'stage':_0x1278e1(0x1b0),'succeeded':_0x402d06[_0x1278e1(0x205)][_0x1278e1(0x1ef)](_0x2d1301=>({'id':_0x2d1301,'deleted':!![]})),'failed':{'targetIds':_0x48aba9,'absentIds':_0x402d06['absentIds'],'remainingIds':_0x402d06['remainingIds']},'warnings':_0x5cb214,'verification':verificationFromOutcome(_0x402d06)});}if(_0x2bad0a!==_0x48aba9['length']){const _0x5f5bf9=menuError(_0x1278e1(0x1d4),_0x1278e1(0x1f1)+_0x2bad0a+_0x1278e1(0x1ab)+_0x48aba9[_0x1278e1(0x210)]+'.','Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.'),_0x28aa92=[_0x1278e1(0x1c7)];let _0x11e99f;try{_0x11e99f=await readDeleteOutcome(_0x400113,_0x48aba9);}catch(_0x5869f7){const _0x528604=describeMenuErrorCause(_0x5869f7,_0x1278e1(0x1a1),_0x40ceb9);_0x28aa92[_0x1278e1(0x1d5)](_0x1278e1(0x1a6)+_0x528604[_0x1278e1(0x217)]+_0x1278e1(0x1cb)+_0x528604[_0x1278e1(0x1aa)]);throw menuFailure(_0x5f5bf9,_0x171a6e,{'stage':_0x1278e1(0x1b0),'failed':{'targetIds':_0x48aba9,'expectedCount':_0x48aba9['length'],'reportedDeletedCount':_0x2bad0a,'targetIdsAbsent':_0x1278e1(0x1ce),..._0x528604},'warnings':_0x28aa92,'verification':{'status':'failed','lookupCommand':_0x1278e1(0x1f5),'targetIds':_0x48aba9}});}throw menuFailure(_0x5f5bf9,_0x171a6e,{'stage':_0x1278e1(0x1b0),'succeeded':_0x11e99f[_0x1278e1(0x205)]['map'](_0x4e7896=>({'id':_0x4e7896,'deleted':!![]})),'failed':{'targetIds':_0x48aba9,'expectedCount':_0x48aba9[_0x1278e1(0x210)],'reportedDeletedCount':_0x2bad0a,'absentIds':_0x11e99f[_0x1278e1(0x205)],'remainingIds':_0x11e99f['remainingIds']},'warnings':_0x28aa92,'verification':verificationFromOutcome(_0x11e99f)});}let _0x410d26;try{_0x410d26=await readDeleteOutcome(_0x400113,_0x48aba9);}catch(_0x234ffa){const _0x28b8d=describeMenuErrorCause(_0x234ffa,'verify\x20batch\x20delete',_0x40ceb9),_0x94fba6=asVerificationError(_0x234ffa,'Batch\x20delete\x20request\x20for\x20menu\x20'+_0x40ceb9+_0x1278e1(0x202));throw menuFailure(_0x94fba6,_0x171a6e,{'stage':'verification','succeeded':_0x48aba9['map'](_0x1e0173=>({'id':_0x1e0173,'deleteRequested':!![]})),'failed':{'id':_0x40ceb9,'targetIds':_0x48aba9,'targetIdsAbsent':_0x1278e1(0x1ce),..._0x28b8d},'warnings':[_0x1278e1(0x1d6)],'verification':{'status':_0x1278e1(0x1a4),'lookupCommand':_0x1278e1(0x1f5),'targetIds':_0x48aba9}});}if(_0x410d26[_0x1278e1(0x1bb)]['length']>0x0){const _0x4efd27=menuError(_0x1278e1(0x215),_0x1278e1(0x1ed)+_0x410d26['remainingIds'][_0x1278e1(0x1be)](',\x20')+'.',_0x1278e1(0x1b2));throw menuFailure(_0x4efd27,_0x171a6e,{'stage':_0x1278e1(0x214),'succeeded':_0x48aba9['map'](_0x184673=>({'id':_0x184673,'deleteRequested':!![]})),'failed':{'id':_0x40ceb9,'targetIds':_0x48aba9,'absentIds':_0x410d26[_0x1278e1(0x205)],'remainingIds':_0x410d26[_0x1278e1(0x1bb)]},'warnings':[_0x1278e1(0x1b9)],'verification':verificationFromOutcome(_0x410d26)});}const _0x4024cc=_0x48aba9['map'](_0x12235c=>({'id':_0x12235c,'deleted':!![]})),_0x4c7c97=mutationResult({..._0x171a6e,'dryRun':![],'succeeded':_0x4024cc,'verification':{'checkedBy':_0x1278e1(0x20d),'plannedSnapshotHash':_0x171a6e['snapshotHash'],'finalSnapshotHash':_0x410d26[_0x1278e1(0x1b5)][_0x1278e1(0x1b4)],'reportedDeletedCount':_0x2bad0a,'targetAbsent':!_0x410d26[_0x1278e1(0x1b5)]['byId']['has'](_0x40ceb9),'allTargetsAbsent':!![],'targetIds':_0x48aba9}});return{'ok':!![],'data':_0x4c7c97,'message':_0x1278e1(0x1f8)+_0x4024cc[_0x1278e1(0x210)]+_0x1278e1(0x1a8)+_0x40ceb9+'.'};}};async function readDeleteOutcome(_0x2cb260,_0x31400c){const _0xdb65bf=a108_0x4a07ec,_0x3a1dde=await fetchMenuSnapshot(_0x2cb260[_0xdb65bf(0x1c3)],_0x2cb260[_0xdb65bf(0x1fb)]);return{'snapshot':_0x3a1dde,'absentIds':_0x31400c[_0xdb65bf(0x1f2)](_0x42801e=>!_0x3a1dde[_0xdb65bf(0x1e5)][_0xdb65bf(0x1a5)](_0x42801e)),'remainingIds':_0x31400c[_0xdb65bf(0x1f2)](_0x302db5=>_0x3a1dde[_0xdb65bf(0x1e5)][_0xdb65bf(0x1a5)](_0x302db5))};}function verificationFromOutcome(_0xe18ce9){const _0x4de9b6=a108_0x4a07ec;return{'checkedBy':_0x4de9b6(0x20d),'absentIds':_0xe18ce9['absentIds'],'remainingIds':_0xe18ce9[_0x4de9b6(0x1bb)]};}function validateDeleteDryRunInput(_0x46b29f){const _0x47b339=a108_0x4a07ec;validateExactId(_0x46b29f);if(!hasFlag(_0x46b29f,'plan-out')||!_0x46b29f['str'](_0x47b339(0x1d9))[_0x47b339(0x203)]())throw CliErrors['flagMissing'](_0x47b339(0x1d9),_0x47b339(0x1eb));if(hasFlag(_0x46b29f,'plan'))throw CliErrors[_0x47b339(0x1dd)](_0x47b339(0x1f3));}function validateDeleteExecuteInput(_0x2aa2ee){const _0x22c554=a108_0x4a07ec;if(!hasFlag(_0x2aa2ee,_0x22c554(0x1e1))||!_0x2aa2ee['str'](_0x22c554(0x1e1))[_0x22c554(0x203)]())throw CliErrors[_0x22c554(0x1a0)](_0x22c554(0x1e1),_0x22c554(0x1fc));const _0x317f7f=['id',_0x22c554(0x1ad),_0x22c554(0x1d9),_0x22c554(0x1cc),_0x22c554(0x20b),'expected-children-count'][_0x22c554(0x1f2)](_0x946893=>hasFlag(_0x2aa2ee,_0x946893));if(_0x317f7f[_0x22c554(0x210)]>0x0)throw CliErrors[_0x22c554(0x1dd)](_0x22c554(0x209)+_0x317f7f[_0x22c554(0x1ef)](_0x5a5441=>'--'+_0x5a5441)[_0x22c554(0x1be)](',\x20')+'.');}async function buildDeletePlan(_0xf225e4){const _0x488759=a108_0x4a07ec,_0x548b34=validateExactId(_0xf225e4),_0x480fd7=await fetchMutationSnapshot(_0xf225e4,_0x488759(0x1f4),_0x548b34),_0x83cd45=requireMenu(_0x480fd7,_0x548b34);assertExpectedState(_0xf225e4,_0x83cd45);const _0x28ea73=_0xf225e4[_0x488759(0x1e9)](_0x488759(0x1ad));let _0x4fadac;if(_0x28ea73){if(_0x83cd45['type'][_0x488759(0x203)]()[_0x488759(0x201)]()!==_0x488759(0x1f6))throw menuError(_0x488759(0x1e2),_0x488759(0x1d8)+_0x83cd45['id']+_0x488759(0x1bd)+(_0x83cd45[_0x488759(0x204)]||_0x488759(0x1ac))+'\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.');_0x4fadac=collectDeleteTargets(_0x480fd7,_0x83cd45),_0x4fadac[_0x488759(0x200)](_0x5e8a1a=>assertDeleteSafety(_0x5e8a1a,!![]));}else assertDeleteSafety(_0x83cd45),_0x4fadac=[_0x83cd45];assertNoSharedPages(_0x480fd7,_0x4fadac);const _0x34b821=_0x4fadac[_0x488759(0x1ef)](_0x3c2d5c=>_0x3c2d5c['id']),_0x499447=cascadeForTargets(_0x4fadac),_0x2a7eb7=_0x499447[_0x488759(0x1ca)][_0x488759(0x210)]>0x0?['Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.']:[];return mutationResult({'operation':_0x488759(0x1a9),'selector':{'id':_0x548b34,'recursive':_0x28ea73},'before':_0x83cd45,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x488759(0x1df),'method':_0x488759(0x1a3),'path':_0x488759(0x1cd),'body':{'idList':_0x34b821}}],'targets':_0x4fadac,'deleteOrder':_0x34b821,'snapshotHash':_0x480fd7[_0x488759(0x1b4)],'cascade':_0x499447,'warnings':_0x2a7eb7});}function assertDeleteSafety(_0x3e4b44,_0x24fb97=![]){const _0x1f8bb5=a108_0x4a07ec,_0x1c8bd8=_0x3e4b44[_0x1f8bb5(0x204)]['trim']()[_0x1f8bb5(0x201)]()===_0x1f8bb5(0x1f6);if(_0x3e4b44['childrenCount']>0x0&&(!_0x24fb97||!_0x1c8bd8))throw menuError(_0x1f8bb5(0x1c5),_0x1f8bb5(0x1d8)+_0x3e4b44['id']+'\x20has\x20'+_0x3e4b44[_0x1f8bb5(0x1c9)]+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20'+_0x3e4b44[_0x1f8bb5(0x1cf)][_0x1f8bb5(0x1be)](',\x20'));if(_0x1c8bd8&&_0x3e4b44[_0x1f8bb5(0x1e6)]!=null)throw menuError(_0x1f8bb5(0x1de),_0x1f8bb5(0x1a2)+_0x3e4b44['id']+_0x1f8bb5(0x1e7)+_0x3e4b44[_0x1f8bb5(0x1e6)]+_0x1f8bb5(0x1ae),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x1c8bd8)return;if(!_0x3e4b44[_0x1f8bb5(0x1c0)])throw menuError(_0x1f8bb5(0x20e),_0x1f8bb5(0x1a2)+_0x3e4b44['id']+_0x1f8bb5(0x1d7),_0x1f8bb5(0x1da));if(_0x3e4b44[_0x1f8bb5(0x1ee)][_0x1f8bb5(0x210)]>0x0)throw menuError(_0x1f8bb5(0x206),_0x1f8bb5(0x1a2)+_0x3e4b44['id']+'\x20still\x20references\x20'+_0x3e4b44[_0x1f8bb5(0x1ee)]['length']+_0x1f8bb5(0x1e4),_0x1f8bb5(0x1f9));}function a108_0xb4c9(_0x23de66,_0x2d9858){_0x23de66=_0x23de66-0x1a0;const _0x3c3ffb=a108_0x3c3f();let _0xb4c9f7=_0x3c3ffb[_0x23de66];return _0xb4c9f7;}function collectDeleteTargets(_0x3ba1bb,_0x506ff7){const _0x2bbfbd=[],_0x246c42=new Set(),_0x316f20=new Set(),_0x54502b=_0x346cd5=>{const _0x13c46a=a108_0xb4c9;if(_0x246c42[_0x13c46a(0x1a5)](_0x346cd5['id']))throw menuError('menu_tree_invalid','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20'+_0x346cd5['id']+'.');if(_0x316f20['has'](_0x346cd5['id']))return;_0x246c42[_0x13c46a(0x212)](_0x346cd5['id']);for(const _0x1e1145 of _0x346cd5['childrenIds']){const _0x576823=_0x3ba1bb['byId'][_0x13c46a(0x1b8)](_0x1e1145);if(!_0x576823)throw menuError('menu_tree_invalid',_0x13c46a(0x1d8)+_0x346cd5['id']+_0x13c46a(0x216)+_0x1e1145+'.');_0x54502b(_0x576823);}_0x246c42[_0x13c46a(0x1a9)](_0x346cd5['id']),_0x316f20['add'](_0x346cd5['id']),_0x2bbfbd[_0x13c46a(0x1d5)](_0x346cd5);};return _0x54502b(_0x506ff7),_0x2bbfbd;}function assertDeleteTargetsComplete(_0x2da26b,_0x2810e2){const _0x124087=a108_0x4a07ec,_0x4ae977=requireMenu(_0x2810e2,_0x2da26b[_0x124087(0x1c6)]['id']);if(_0x2da26b[_0x124087(0x1ad)]&&_0x4ae977[_0x124087(0x204)]['trim']()[_0x124087(0x201)]()!==_0x124087(0x1f6))throw menuError(_0x124087(0x20f),_0x124087(0x208)+_0x4ae977['id']+_0x124087(0x20a));const _0x4e050c=_0x2da26b[_0x124087(0x1ad)]?collectDeleteTargets(_0x2810e2,_0x4ae977)['map'](_0x1ddb07=>_0x1ddb07['id']):[_0x4ae977['id']];if(JSON[_0x124087(0x1db)](_0x2da26b[_0x124087(0x1b3)])!==JSON[_0x124087(0x1db)](_0x4e050c))throw menuError(_0x124087(0x20f),_0x124087(0x207),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.');}function assertNoSharedPages(_0x1e1f1b,_0xfb2d36){const _0x1235c8=a108_0x4a07ec,_0x4e4950=new Set(_0xfb2d36[_0x1235c8(0x1ef)](_0x342855=>_0x342855['id'])),_0x20bdc6=new Set(_0xfb2d36[_0x1235c8(0x1ef)](_0x4f7377=>_0x4f7377['pageId'])[_0x1235c8(0x1f2)](_0x119432=>_0x119432!=null));if(_0x20bdc6[_0x1235c8(0x1ba)]===0x0)return;const _0x566530=_0x1e1f1b['menus'][_0x1235c8(0x1f2)](_0x5a66ba=>!_0x4e4950[_0x1235c8(0x1a5)](_0x5a66ba['id'])&&_0x5a66ba[_0x1235c8(0x1e6)]!=null&&_0x20bdc6['has'](_0x5a66ba[_0x1235c8(0x1e6)]));if(_0x566530[_0x1235c8(0x210)]===0x0)return;const _0x51c4a3=_0x566530[_0x1235c8(0x1ef)](_0x420c2d=>'page\x20'+_0x420c2d['pageId']+_0x1235c8(0x1d3)+_0x420c2d['id'])['join'](',\x20');throw menuError(_0x1235c8(0x213),'Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x51c4a3+'.',_0x1235c8(0x1d1));}function assertCascadeMatchesPlan(_0x56bcef,_0x39da93){const _0xabac73=a108_0x4a07ec,_0x1d759e=cascadeForTargets(_0x39da93);if(JSON[_0xabac73(0x1db)](_0x56bcef[_0xabac73(0x1f0)])!==JSON[_0xabac73(0x1db)](_0x1d759e))throw menuError('menu_plan_invalid','Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.');}function cascadeForTargets(_0x1a3803){const _0x3027f0=a108_0x4a07ec,_0xf940fc=_0x1a3803['map'](_0x3301f8=>_0x3301f8['pageId'])[_0x3027f0(0x1f2)](_0xc96f51=>_0xc96f51!=null)[_0x3027f0(0x1f2)]((_0x9606d2,_0x353d60,_0x10b401)=>_0x10b401['indexOf'](_0x9606d2)===_0x353d60);return{'pages':_0xf940fc,'pageSchemaAffected':_0xf940fc[_0x3027f0(0x210)]>0x0};}function asMenuError(_0x36e4d5){const _0x39c4aa=a108_0x4a07ec;return _0x36e4d5 instanceof CliError?_0x36e4d5:menuError(_0x39c4aa(0x20f),_0x36e4d5 instanceof Error?_0x36e4d5[_0x39c4aa(0x1ff)]:String(_0x36e4d5));}
1
+ const a108_0x3e3bc2=a108_0x112e;(function(_0x255c7d,_0x392fc5){const _0x3f8603=a108_0x112e,_0xdc07ba=_0x255c7d();while(!![]){try{const _0x4775a4=-parseInt(_0x3f8603(0xd4))/0x1+-parseInt(_0x3f8603(0xec))/0x2*(-parseInt(_0x3f8603(0x97))/0x3)+-parseInt(_0x3f8603(0x8e))/0x4+parseInt(_0x3f8603(0x9d))/0x5*(-parseInt(_0x3f8603(0xdc))/0x6)+parseInt(_0x3f8603(0xaa))/0x7+parseInt(_0x3f8603(0xaf))/0x8+parseInt(_0x3f8603(0x9e))/0x9;if(_0x4775a4===_0x392fc5)break;else _0xdc07ba['push'](_0xdc07ba['shift']());}catch(_0x4115c8){_0xdc07ba['push'](_0xdc07ba['shift']());}}}(a108_0x1ccd,0x2c32f));function a108_0x112e(_0x38547e,_0x33533f){_0x38547e=_0x38547e-0x8e;const _0x1ccd44=a108_0x1ccd();let _0x112eab=_0x1ccd44[_0x38547e];return _0x112eab;}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_0x3e3bc2(0x9f),'path':a108_0x3e3bc2(0xbe)}],MENU_DELETE_ID_FLAG={...MENU_ID_FLAG,'required':![],'description':'Exact\x20menu\x20id\x20(required\x20with\x20--dry-run)'},MENU_DELETE_RECURSIVE_FLAG={'name':a108_0x3e3bc2(0xde),'type':a108_0x3e3bc2(0x93),'description':a108_0x3e3bc2(0x90)},MENU_DELETE_PLAN_OUT_FLAG={'name':a108_0x3e3bc2(0xd2),'type':a108_0x3e3bc2(0xdd),'description':'Required\x20with\x20--dry-run;\x20write\x20the\x20reviewed\x20plan\x20to\x20a\x20new\x20local\x20JSON\x20file'},MENU_DELETE_PLAN_FLAG={'name':a108_0x3e3bc2(0xd0),'type':a108_0x3e3bc2(0xdd),'description':'Required\x20for\x20execution;\x20consume\x20an\x20unexpired\x20plan\x20created\x20by\x20--plan-out'};export const menuDelete={'service':a108_0x3e3bc2(0xe1),'command':'delete','description':a108_0x3e3bc2(0xf0),'risk':'high-risk-write','structuredErrors':!![],'flags':[MENU_DELETE_ID_FLAG,MENU_DELETE_RECURSIVE_FLAG,MENU_DELETE_PLAN_OUT_FLAG,MENU_DELETE_PLAN_FLAG,...MENU_EXPECT_FLAGS,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x40207c){const _0x55f557=a108_0x3e3bc2;_0x40207c[_0x55f557(0xd1)]('dry-run')?validateDeleteDryRunInput(_0x40207c):validateDeleteExecuteInput(_0x40207c),requireExplicitYes(_0x40207c);},async 'dryRun'(_0x2b6fa2){const _0x29a212=a108_0x3e3bc2;validateDeleteDryRunInput(_0x2b6fa2);const _0x3148bb=await buildDeletePlan(_0x2b6fa2),_0x16a09c=createMenuDeletePlanFile(_0x2b6fa2[_0x29a212(0x99)],_0x3148bb),_0x36828c=await writeMenuDeletePlan(_0x2b6fa2[_0x29a212(0xf3)](_0x29a212(0xd2)),_0x16a09c),_0x462559=mutationResult({..._0x3148bb,'planFile':{'path':_0x36828c,'createdAt':_0x16a09c['createdAt'],'expiresAt':_0x16a09c[_0x29a212(0x100)]}});return menuDryRunResult(_0x462559,{'method':_0x29a212(0x9f),'url':_0x29a212(0xbe),'body':{'idList':_0x462559[_0x29a212(0xf6)]},'description':_0x29a212(0x9b)+(_0x462559[_0x29a212(0xf6)]?.[_0x29a212(0xa2)]??0x1)+_0x29a212(0xb1)+_0x462559['selector']['id']+_0x29a212(0xff)+_0x36828c+'.'});},async 'execute'(_0x1a799a){const _0x5ce8eb=a108_0x3e3bc2;requireExplicitYes(_0x1a799a),validateDeleteExecuteInput(_0x1a799a);const _0x4e04b9=await readMenuDeletePlan(_0x1a799a[_0x5ce8eb(0xf3)](_0x5ce8eb(0xd0))),_0x5a43a3=mutationPlanFromDeleteFile(_0x4e04b9[_0x5ce8eb(0xd0)],_0x4e04b9[_0x5ce8eb(0xf1)]),_0x185a6f=_0x4e04b9[_0x5ce8eb(0xd0)][_0x5ce8eb(0xe9)]['id'];try{assertMenuDeletePlanExecutable(_0x4e04b9[_0x5ce8eb(0xd0)],_0x1a799a[_0x5ce8eb(0x99)]);}catch(_0x1165c5){throw menuFailure(asMenuError(_0x1165c5),_0x5a43a3,{'stage':_0x5ce8eb(0xbc),'failed':{'id':_0x185a6f}});}let _0x4dc1c6,_0x3dd592;try{_0x4dc1c6=await fetchMutationSnapshot(_0x1a799a,_0x5ce8eb(0xeb),_0x185a6f),_0x3dd592=assertMenuDeletePlanCurrent(_0x4e04b9[_0x5ce8eb(0xd0)],_0x1a799a[_0x5ce8eb(0x99)],_0x4dc1c6),assertDeleteTargetsComplete(_0x4e04b9[_0x5ce8eb(0xd0)],_0x4dc1c6),_0x3dd592[_0x5ce8eb(0xea)](_0x27a161=>assertDeleteSafety(_0x27a161,_0x4e04b9[_0x5ce8eb(0xd0)][_0x5ce8eb(0xde)])),assertNoSharedPages(_0x4dc1c6,_0x3dd592),assertCascadeMatchesPlan(_0x5a43a3,_0x3dd592);}catch(_0x113b05){throw menuFailure(asMenuError(_0x113b05),_0x5a43a3,{'stage':_0x5ce8eb(0xb7),'failed':{'id':_0x185a6f}});}const _0x1a8854=_0x4e04b9['plan']['deleteOrder'];let _0x10020b;try{_0x10020b=await batchDeleteMenuEntities(_0x1a799a[_0x5ce8eb(0xce)],_0x1a8854);}catch(_0x5eb212){const _0x404665=mapMenuApiError(_0x5eb212,_0x5ce8eb(0xd7)),_0x1acd4a=['The\x20batch\x20delete\x20may\x20have\x20partially\x20applied;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20creating\x20a\x20new\x20plan.'];let _0x3ac7cf;try{_0x3ac7cf=await readDeleteOutcome(_0x1a799a,_0x1a8854);}catch(_0x57783e){const _0x146c50=describeMenuErrorCause(_0x57783e,_0x5ce8eb(0xe7),_0x185a6f);_0x1acd4a[_0x5ce8eb(0xa3)](_0x5ce8eb(0xa8)+_0x146c50[_0x5ce8eb(0xe2)]+_0x5ce8eb(0xb4)+_0x146c50[_0x5ce8eb(0xa0)]);throw menuFailure(_0x404665,_0x5a43a3,{'stage':_0x5ce8eb(0xbf),'failed':{'targetIds':_0x1a8854,'targetIdsAbsent':'unconfirmed',..._0x146c50},'warnings':_0x1acd4a,'verification':{'status':_0x5ce8eb(0xe8),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x1a8854}});}throw menuFailure(_0x404665,_0x5a43a3,{'stage':_0x5ce8eb(0xbf),'succeeded':_0x3ac7cf[_0x5ce8eb(0xdf)][_0x5ce8eb(0xf4)](_0x276a62=>({'id':_0x276a62,'deleted':!![]})),'failed':{'targetIds':_0x1a8854,'absentIds':_0x3ac7cf[_0x5ce8eb(0xdf)],'remainingIds':_0x3ac7cf['remainingIds']},'warnings':_0x1acd4a,'verification':verificationFromOutcome(_0x3ac7cf)});}if(_0x10020b!==_0x1a8854[_0x5ce8eb(0xa2)]){const _0xb38d7b=menuError('menu_batch_delete_count_mismatch','Backend\x20reported\x20'+_0x10020b+_0x5ce8eb(0xda)+_0x1a8854[_0x5ce8eb(0xa2)]+'.',_0x5ce8eb(0xef)),_0x57af7d=['The\x20batch\x20response\x20count\x20did\x20not\x20match\x20the\x20reviewed\x20target\x20count;\x20do\x20not\x20retry\x20the\x20same\x20plan.'];let _0x2e36c9;try{_0x2e36c9=await readDeleteOutcome(_0x1a799a,_0x1a8854);}catch(_0x534528){const _0x21ee4a=describeMenuErrorCause(_0x534528,_0x5ce8eb(0xf9),_0x185a6f);_0x57af7d[_0x5ce8eb(0xa3)](_0x5ce8eb(0x94)+_0x21ee4a[_0x5ce8eb(0xe2)]+'):\x20'+_0x21ee4a['causeMessage']);throw menuFailure(_0xb38d7b,_0x5a43a3,{'stage':'batch-delete','failed':{'targetIds':_0x1a8854,'expectedCount':_0x1a8854[_0x5ce8eb(0xa2)],'reportedDeletedCount':_0x10020b,'targetIdsAbsent':_0x5ce8eb(0xa1),..._0x21ee4a},'warnings':_0x57af7d,'verification':{'status':_0x5ce8eb(0xe8),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetIds':_0x1a8854}});}throw menuFailure(_0xb38d7b,_0x5a43a3,{'stage':_0x5ce8eb(0xbf),'succeeded':_0x2e36c9[_0x5ce8eb(0xdf)]['map'](_0x1a1974=>({'id':_0x1a1974,'deleted':!![]})),'failed':{'targetIds':_0x1a8854,'expectedCount':_0x1a8854[_0x5ce8eb(0xa2)],'reportedDeletedCount':_0x10020b,'absentIds':_0x2e36c9['absentIds'],'remainingIds':_0x2e36c9['remainingIds']},'warnings':_0x57af7d,'verification':verificationFromOutcome(_0x2e36c9)});}let _0x75445f;try{_0x75445f=await readDeleteOutcome(_0x1a799a,_0x1a8854);}catch(_0xe0e053){const _0x5d245c=describeMenuErrorCause(_0xe0e053,_0x5ce8eb(0x92),_0x185a6f),_0x1cd6ff=asVerificationError(_0xe0e053,_0x5ce8eb(0xac)+_0x185a6f+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20absence');throw menuFailure(_0x1cd6ff,_0x5a43a3,{'stage':_0x5ce8eb(0xe3),'succeeded':_0x1a8854[_0x5ce8eb(0xf4)](_0x458b51=>({'id':_0x458b51,'deleteRequested':!![]})),'failed':{'id':_0x185a6f,'targetIds':_0x1a8854,'targetIdsAbsent':'unconfirmed',..._0x5d245c},'warnings':[_0x5ce8eb(0xc2)],'verification':{'status':_0x5ce8eb(0xe8),'lookupCommand':_0x5ce8eb(0xbb),'targetIds':_0x1a8854}});}if(_0x75445f[_0x5ce8eb(0xca)][_0x5ce8eb(0xa2)]>0x0){const _0x27a71e=menuError(_0x5ce8eb(0xd8),_0x5ce8eb(0xf7)+_0x75445f[_0x5ce8eb(0xca)][_0x5ce8eb(0xfb)](',\x20')+'.',_0x5ce8eb(0xef));throw menuFailure(_0x27a71e,_0x5a43a3,{'stage':_0x5ce8eb(0xe3),'succeeded':_0x1a8854[_0x5ce8eb(0xf4)](_0x55b8e2=>({'id':_0x55b8e2,'deleteRequested':!![]})),'failed':{'id':_0x185a6f,'targetIds':_0x1a8854,'absentIds':_0x75445f['absentIds'],'remainingIds':_0x75445f[_0x5ce8eb(0xca)]},'warnings':['The\x20backend\x20acknowledged\x20the\x20batch\x20request,\x20but\x20final\x20menu\x20facts\x20did\x20not\x20confirm\x20every\x20deletion.'],'verification':verificationFromOutcome(_0x75445f)});}const _0x5ebb48=_0x1a8854[_0x5ce8eb(0xf4)](_0x400aae=>({'id':_0x400aae,'deleted':!![]})),_0x35fb83=mutationResult({..._0x5a43a3,'dryRun':![],'succeeded':_0x5ebb48,'verification':{'checkedBy':'menu\x20list','plannedSnapshotHash':_0x5a43a3[_0x5ce8eb(0xba)],'finalSnapshotHash':_0x75445f['snapshot'][_0x5ce8eb(0xc9)],'reportedDeletedCount':_0x10020b,'targetAbsent':!_0x75445f[_0x5ce8eb(0xfe)][_0x5ce8eb(0xe0)][_0x5ce8eb(0xb8)](_0x185a6f),'allTargetsAbsent':!![],'targetIds':_0x1a8854}});return{'ok':!![],'data':_0x35fb83,'message':_0x5ce8eb(0xc0)+_0x5ebb48[_0x5ce8eb(0xa2)]+'\x20menu(s)\x20under\x20exact\x20id\x20'+_0x185a6f+'.'};}};async function readDeleteOutcome(_0x3b3faf,_0x1b9f76){const _0x2824d4=a108_0x3e3bc2,_0x1d1e7d=await fetchMenuSnapshot(_0x3b3faf[_0x2824d4(0x99)],_0x3b3faf[_0x2824d4(0xce)]);return{'snapshot':_0x1d1e7d,'absentIds':_0x1b9f76['filter'](_0x23f869=>!_0x1d1e7d[_0x2824d4(0xe0)][_0x2824d4(0xb8)](_0x23f869)),'remainingIds':_0x1b9f76[_0x2824d4(0xee)](_0x4edf36=>_0x1d1e7d[_0x2824d4(0xe0)][_0x2824d4(0xb8)](_0x4edf36))};}function verificationFromOutcome(_0x3dfe0e){const _0x448ff3=a108_0x3e3bc2;return{'checkedBy':'menu\x20list','absentIds':_0x3dfe0e[_0x448ff3(0xdf)],'remainingIds':_0x3dfe0e[_0x448ff3(0xca)]};}function validateDeleteDryRunInput(_0x3ca94e){const _0xf664ce=a108_0x3e3bc2;validateExactId(_0x3ca94e);if(!hasFlag(_0x3ca94e,'plan-out')||!_0x3ca94e[_0xf664ce(0xf3)]('plan-out')['trim']())throw CliErrors[_0xf664ce(0xa6)]('plan-out','--plan-out\x20is\x20required\x20for\x20menu\x20delete\x20dry-run\x20so\x20execution\x20can\x20consume\x20the\x20reviewed\x20plan.');if(hasFlag(_0x3ca94e,_0xf664ce(0xd0)))throw CliErrors[_0xf664ce(0xa5)](_0xf664ce(0xed));}function validateDeleteExecuteInput(_0xf0eb70){const _0x82890e=a108_0x3e3bc2;if(!hasFlag(_0xf0eb70,'plan')||!_0xf0eb70[_0x82890e(0xf3)](_0x82890e(0xd0))[_0x82890e(0xf5)]())throw CliErrors[_0x82890e(0xa6)](_0x82890e(0xd0),_0x82890e(0x98));const _0x3082e4=['id',_0x82890e(0xde),_0x82890e(0xd2),_0x82890e(0xae),'expect-path',_0x82890e(0x9a)][_0x82890e(0xee)](_0x397a76=>hasFlag(_0xf0eb70,_0x397a76));if(_0x3082e4[_0x82890e(0xa2)]>0x0)throw CliErrors[_0x82890e(0xa5)](_0x82890e(0xd3)+_0x3082e4[_0x82890e(0xf4)](_0x395c43=>'--'+_0x395c43)[_0x82890e(0xfb)](',\x20')+'.');}async function buildDeletePlan(_0x155bed){const _0x4b5376=a108_0x3e3bc2,_0xcba61b=validateExactId(_0x155bed),_0x4579aa=await fetchMutationSnapshot(_0x155bed,_0x4b5376(0xc7),_0xcba61b),_0x464316=requireMenu(_0x4579aa,_0xcba61b);assertExpectedState(_0x155bed,_0x464316);const _0x4a63be=_0x155bed[_0x4b5376(0xd1)](_0x4b5376(0xde));let _0xf60149;if(_0x4a63be){if(_0x464316[_0x4b5376(0xd5)][_0x4b5376(0xf5)]()['toLowerCase']()!==_0x4b5376(0x95))throw menuError(_0x4b5376(0xf2),_0x4b5376(0xc1)+_0x464316['id']+_0x4b5376(0xcb)+(_0x464316['type']||'unknown')+_0x4b5376(0xa7));_0xf60149=collectDeleteTargets(_0x4579aa,_0x464316),_0xf60149['forEach'](_0x5880db=>assertDeleteSafety(_0x5880db,!![]));}else assertDeleteSafety(_0x464316),_0xf60149=[_0x464316];assertNoSharedPages(_0x4579aa,_0xf60149);const _0x3488e1=_0xf60149[_0x4b5376(0xf4)](_0x668a23=>_0x668a23['id']),_0x365035=cascadeForTargets(_0xf60149),_0xef9d7f=_0x365035['pages'][_0x4b5376(0xa2)]>0x0?[_0x4b5376(0x96)]:[];return mutationResult({'operation':_0x4b5376(0xb0),'selector':{'id':_0xcba61b,'recursive':_0x4a63be},'before':_0x464316,'after':null,'dryRun':!![],'backend':[...BACKEND],'plannedActions':[{'stage':_0x4b5376(0xe5),'method':_0x4b5376(0x9f),'path':_0x4b5376(0xbe),'body':{'idList':_0x3488e1}}],'targets':_0xf60149,'deleteOrder':_0x3488e1,'snapshotHash':_0x4579aa[_0x4b5376(0xc9)],'cascade':_0x365035,'warnings':_0xef9d7f});}function assertDeleteSafety(_0x140832,_0x35258d=![]){const _0x248547=a108_0x3e3bc2,_0x483e8a=_0x140832[_0x248547(0xd5)][_0x248547(0xf5)]()['toLowerCase']()===_0x248547(0x95);if(_0x140832[_0x248547(0xb3)]>0x0&&(!_0x35258d||!_0x483e8a))throw menuError('menu_non_empty',_0x248547(0xc1)+_0x140832['id']+_0x248547(0xb9)+_0x140832['childrenCount']+'\x20direct\x20child\x20menu(s)\x20and\x20cannot\x20be\x20deleted.',_0x248547(0xc8)+_0x140832['childrenIds'][_0x248547(0xfb)](',\x20'));if(_0x483e8a&&_0x140832[_0x248547(0xa4)]!=null)throw menuError(_0x248547(0xf8),_0x248547(0x91)+_0x140832['id']+_0x248547(0xc5)+_0x140832[_0x248547(0xa4)]+_0x248547(0xfc),'Inspect\x20the\x20folder\x20in\x20the\x20platform\x20before\x20deleting\x20it.');if(!_0x483e8a)return;if(!_0x140832[_0x248547(0xcc)])throw menuError(_0x248547(0xb5),_0x248547(0x91)+_0x140832['id']+_0x248547(0x9c),_0x248547(0xc3));if(_0x140832[_0x248547(0xcd)][_0x248547(0xa2)]>0x0)throw menuError(_0x248547(0xcf),_0x248547(0x91)+_0x140832['id']+_0x248547(0x8f)+_0x140832[_0x248547(0xcd)][_0x248547(0xa2)]+_0x248547(0xab),_0x248547(0x101));}function collectDeleteTargets(_0x412a42,_0x449e34){const _0x527376=[],_0x18d75a=new Set(),_0x4b9e3d=new Set(),_0x51200e=_0xfcb34e=>{const _0x2e3d6b=a108_0x112e;if(_0x18d75a[_0x2e3d6b(0xb8)](_0xfcb34e['id']))throw menuError('menu_tree_invalid',_0x2e3d6b(0xc6)+_0xfcb34e['id']+'.');if(_0x4b9e3d[_0x2e3d6b(0xb8)](_0xfcb34e['id']))return;_0x18d75a[_0x2e3d6b(0xfd)](_0xfcb34e['id']);for(const _0x2e53e9 of _0xfcb34e[_0x2e3d6b(0xfa)]){const _0xd87859=_0x412a42['byId']['get'](_0x2e53e9);if(!_0xd87859)throw menuError(_0x2e3d6b(0xa9),'Menu\x20'+_0xfcb34e['id']+'\x20references\x20missing\x20child\x20'+_0x2e53e9+'.');_0x51200e(_0xd87859);}_0x18d75a[_0x2e3d6b(0xb0)](_0xfcb34e['id']),_0x4b9e3d[_0x2e3d6b(0xfd)](_0xfcb34e['id']),_0x527376[_0x2e3d6b(0xa3)](_0xfcb34e);};return _0x51200e(_0x449e34),_0x527376;}function assertDeleteTargetsComplete(_0xdb483d,_0x13911e){const _0x56d776=a108_0x3e3bc2,_0x56c743=requireMenu(_0x13911e,_0xdb483d['target']['id']);if(_0xdb483d[_0x56d776(0xde)]&&_0x56c743[_0x56d776(0xd5)]['trim']()[_0x56d776(0xad)]()!==_0x56d776(0x95))throw menuError(_0x56d776(0xe6),'Recursive\x20menu\x20delete\x20plan\x20root\x20'+_0x56c743['id']+'\x20is\x20not\x20a\x20folder.');const _0x35d7b3=_0xdb483d[_0x56d776(0xde)]?collectDeleteTargets(_0x13911e,_0x56c743)[_0x56d776(0xf4)](_0x229cc9=>_0x229cc9['id']):[_0x56c743['id']];if(JSON[_0x56d776(0xb6)](_0xdb483d[_0x56d776(0xf6)])!==JSON[_0x56d776(0xb6)](_0x35d7b3))throw menuError(_0x56d776(0xe6),'Menu\x20delete\x20plan\x20does\x20not\x20contain\x20the\x20complete\x20current\x20subtree\x20in\x20leaf-first\x20order.',_0x56d776(0xdb));}function a108_0x1ccd(){const _0x48ee0e=['Inspect\x20the\x20latest\x20menu\x20facts\x20and\x20generate\x20a\x20new\x20delete\x20plan;\x20do\x20not\x20retry\x20this\x20plan.','Delete\x20an\x20exact\x20menu\x20or\x20a\x20folder\x20subtree\x20from\x20a\x20reviewed\x20plan','path','menu_recursive_requires_folder','str','map','trim','deleteOrder','One\x20or\x20more\x20planned\x20menus\x20are\x20still\x20present\x20after\x20the\x20batch\x20delete\x20request:\x20','menu_delete_page_bound','read\x20menu\x20state\x20after\x20batch\x20delete\x20count\x20mismatch','childrenIds','join','\x20and\x20cannot\x20be\x20deleted\x20safely.','add','snapshot',';\x20execution\x20must\x20consume\x20','expiresAt','Remove\x20or\x20verify\x20the\x20resource\x20bindings\x20in\x20the\x20platform\x20before\x20deleting\x20the\x20folder.','1101300bBuUim','\x20still\x20references\x20','Include\x20every\x20descendant\x20of\x20the\x20exact\x20folder\x20id,\x20deleting\x20leaves\x20first','Folder\x20','verify\x20batch\x20delete','boolean','Post-mismatch\x20menu\x20readback\x20failed\x20(','folder','Deleting\x20page-bound\x20menus\x20invokes\x20the\x20platform\x27s\x20existing\x20page\x20and\x20PageSchema\x20cascade;\x20listed\x20page\x20ids\x20are\x20direct\x20menu\x20bindings.','1323HxOjgG','--plan\x20is\x20required\x20for\x20menu\x20delete\x20execution.','appCode','expected-children-count','Would\x20batch\x20delete\x20','\x20has\x20an\x20unreadable\x20extend.resources\x20value\x20and\x20cannot\x20be\x20proven\x20empty.','2375CMRavD','1089486JiyvYW','POST','causeMessage','unconfirmed','length','push','pageId','validation','flagMissing','\x22;\x20--recursive\x20requires\x20a\x20folder\x20root.','Post-failure\x20menu\x20readback\x20failed\x20(','menu_tree_invalid','2184287NiiMoG','\x20resource\x20URL(s).','Batch\x20delete\x20request\x20for\x20menu\x20','toLowerCase','expect-parent-id','502320AovXXx','delete','\x20menu(s)\x20under\x20exact\x20id\x20','menu_page_shared','childrenCount','):\x20','menu_folder_resources_invalid','stringify','pre-write-plan-validation','has','\x20has\x20','snapshotHash','rabetbase\x20menu\x20list\x20--format\x20json','plan-validation','size','/smartapi/menu/batchDelete','batch-delete','Deleted\x20','Menu\x20','The\x20batch\x20delete\x20request\x20was\x20accepted,\x20but\x20its\x20final\x20online\x20state\x20is\x20unconfirmed.','Inspect\x20and\x20repair\x20the\x20folder\x20resource\x20binding\x20in\x20the\x20platform\x20before\x20deleting\x20it.','page\x20','\x20is\x20unexpectedly\x20bound\x20to\x20page\x20','Menu\x20tree\x20contains\x20a\x20cycle\x20at\x20menu\x20','plan\x20delete','Handle\x20child\x20ids\x20in\x20the\x20platform\x20first:\x20','hash','remainingIds','\x20is\x20type\x20\x22','resourcesValid','resources','cookie','menu_folder_has_resources','plan','bool','plan-out','Menu\x20delete\x20execution\x20consumes\x20only\x20--plan;\x20remove\x20','28175mwnYBE','type','Keep\x20every\x20shared\x20page\x20reference\x20outside\x20this\x20operation,\x20or\x20choose\x20a\x20folder\x20whose\x20complete\x20subtree\x20contains\x20all\x20references.','batch\x20delete','menu_verification_failed','indexOf','\x20deleted\x20menus;\x20expected\x20','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20do\x20not\x20remove\x20or\x20reorder\x20targets.','3870bNVUqi','string','recursive','absentIds','byId','menu','causeCode','verification','\x20->\x20menu\x20','batch-delete-menu','menu_plan_invalid','read\x20menu\x20state\x20after\x20batch\x20delete\x20failure','failed','target','forEach','execute\x20reviewed\x20delete\x20plan','1338aDhDms','--plan\x20cannot\x20be\x20combined\x20with\x20--dry-run;\x20use\x20--plan-out.','filter'];a108_0x1ccd=function(){return _0x48ee0e;};return a108_0x1ccd();}function assertNoSharedPages(_0x3ad981,_0x1239c4){const _0x151947=a108_0x3e3bc2,_0x1af2e1=new Set(_0x1239c4[_0x151947(0xf4)](_0x25ce26=>_0x25ce26['id'])),_0x5d2956=new Set(_0x1239c4[_0x151947(0xf4)](_0x52740b=>_0x52740b[_0x151947(0xa4)])['filter'](_0x54ccae=>_0x54ccae!=null));if(_0x5d2956[_0x151947(0xbd)]===0x0)return;const _0x26da70=_0x3ad981['menus'][_0x151947(0xee)](_0x327648=>!_0x1af2e1[_0x151947(0xb8)](_0x327648['id'])&&_0x327648[_0x151947(0xa4)]!=null&&_0x5d2956[_0x151947(0xb8)](_0x327648[_0x151947(0xa4)]));if(_0x26da70[_0x151947(0xa2)]===0x0)return;const _0x3f5df3=_0x26da70['map'](_0x1b0fbd=>_0x151947(0xc4)+_0x1b0fbd[_0x151947(0xa4)]+_0x151947(0xe4)+_0x1b0fbd['id'])['join'](',\x20');throw menuError(_0x151947(0xb2),'Page\x20bindings\x20are\x20referenced\x20by\x20menus\x20outside\x20the\x20delete\x20plan:\x20'+_0x3f5df3+'.',_0x151947(0xd6));}function assertCascadeMatchesPlan(_0x25e7c0,_0x145de5){const _0x258ccd=a108_0x3e3bc2,_0x3c6490=cascadeForTargets(_0x145de5);if(JSON[_0x258ccd(0xb6)](_0x25e7c0['cascade'])!==JSON[_0x258ccd(0xb6)](_0x3c6490))throw menuError(_0x258ccd(0xe6),'Menu\x20delete\x20plan\x20cascade\x20does\x20not\x20match\x20the\x20reviewed\x20target\x20page\x20facts.');}function cascadeForTargets(_0xf03a11){const _0x3753de=a108_0x3e3bc2,_0x569464=_0xf03a11[_0x3753de(0xf4)](_0x48c6f8=>_0x48c6f8['pageId'])[_0x3753de(0xee)](_0x358675=>_0x358675!=null)[_0x3753de(0xee)]((_0x4fe456,_0x476355,_0x1efada)=>_0x1efada[_0x3753de(0xd9)](_0x4fe456)===_0x476355);return{'pages':_0x569464,'pageSchemaAffected':_0x569464['length']>0x0};}function asMenuError(_0x32feb6){const _0x176677=a108_0x3e3bc2;return _0x32feb6 instanceof CliError?_0x32feb6:menuError(_0x176677(0xe6),_0x32feb6 instanceof Error?_0x32feb6['message']:String(_0x32feb6));}
@@ -1 +1 @@
1
- const a109_0x4a22bb=a109_0xa36e;(function(_0x2c7f8c,_0x1755ed){const _0x3f8198=a109_0xa36e,_0x28f745=_0x2c7f8c();while(!![]){try{const _0x82cb28=parseInt(_0x3f8198(0x156))/0x1*(parseInt(_0x3f8198(0x16c))/0x2)+parseInt(_0x3f8198(0x139))/0x3+parseInt(_0x3f8198(0xfc))/0x4+parseInt(_0x3f8198(0x113))/0x5+parseInt(_0x3f8198(0x13b))/0x6*(-parseInt(_0x3f8198(0x128))/0x7)+parseInt(_0x3f8198(0x15a))/0x8+-parseInt(_0x3f8198(0xf2))/0x9;if(_0x82cb28===_0x1755ed)break;else _0x28f745['push'](_0x28f745['shift']());}catch(_0x147a0e){_0x28f745['push'](_0x28f745['shift']());}}}(a109_0x110f,0x81d8b));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_0x4a22bb(0x122),'new-window':a109_0x4a22bb(0x17e)};export function validateExternalMenuUrl(_0xefd5f7){const _0x2226c3=a109_0x4a22bb,_0x4ff90e=_0xefd5f7[_0x2226c3(0x14b)]();let _0x1525ce;try{_0x1525ce=new URL(_0x4ff90e);}catch{throw menuError('menu_url_invalid',_0x2226c3(0x158),'Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x1525ce[_0x2226c3(0x10e)]!==_0x2226c3(0x166))throw menuError(_0x2226c3(0x109),'External\x20menu\x20URL\x20must\x20use\x20HTTPS.','Provide\x20an\x20HTTPS\x20URL.');if(_0x1525ce[_0x2226c3(0x157)]||_0x1525ce[_0x2226c3(0x144)])throw menuError(_0x2226c3(0x155),_0x2226c3(0x117),_0x2226c3(0x12a));return _0x4ff90e;}export const menuExternalLinkCreate={'service':'menu','command':a109_0x4a22bb(0x13c),'description':'Create\x20an\x20external\x20website\x20link\x20menu','risk':a109_0x4a22bb(0x14c),'structuredErrors':!![],'flags':[{'name':a109_0x4a22bb(0x136),'type':a109_0x4a22bb(0x151),'required':!![],'description':a109_0x4a22bb(0x12b)},{'name':'open-mode','type':'string','required':!![],'enum':[a109_0x4a22bb(0x172),a109_0x4a22bb(0x183)],'description':a109_0x4a22bb(0xf5)},{'name':a109_0x4a22bb(0xf9),'type':'string','required':!![],'description':'External\x20HTTPS\x20URL'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a109_0x4a22bb(0x163),'type':a109_0x4a22bb(0x11d),'default':!![],'description':a109_0x4a22bb(0x121)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xabcc3d){validateAddInput(_0xabcc3d);},async 'dryRun'(_0x1e2d77){const _0x21ad79=a109_0x4a22bb;validateAddInput(_0x1e2d77);const {plan:_0x516833}=await buildSafeAddPlan(_0x1e2d77,!![]),_0x2745aa=_0x516833[_0x21ad79(0x15e)],_0x2ace42=createBody(_0x2745aa);return menuDryRunResult(_0x516833,{'method':'POST','url':'/smartapi/menu/create','body':_0x2ace42,'description':_0x21ad79(0x14d)+JSON[_0x21ad79(0x177)](_0x2745aa[_0x21ad79(0x136)])+_0x21ad79(0x112)+_0x1e2d77[_0x21ad79(0x132)](_0x21ad79(0xf6))+_0x21ad79(0x15c)});},async 'execute'(_0x36a2f6){const _0xd739f7=a109_0x4a22bb;validateAddInput(_0x36a2f6);const _0x59d952=await buildSafeAddPlan(_0x36a2f6,![]),{plan:_0x36ceef,snapshot:_0x41bcb4}=_0x59d952,_0x5eee05=_0x36ceef[_0xd739f7(0x15e)],_0x521c91=buildMenuLookupCommand(_0x36a2f6[_0xd739f7(0xfb)]);await recheckAddSnapshot(_0x36a2f6,_0x36ceef);let _0xd14b91;try{_0xd14b91=await createMenuEntity(_0x36a2f6[_0xd739f7(0xfb)],_0x36a2f6[_0xd739f7(0x126)],createBody(_0x5eee05));}catch(_0x2d8078){const _0x58c397=mapMenuApiError(_0x2d8078,_0xd739f7(0x160));if(!isMenuResponseLoss(_0x2d8078)||_0x58c397[_0xd739f7(0x10d)]===_0xd739f7(0xf0))throw externalLinkCreateFailure(_0x58c397,_0x36ceef,{'stage':_0xd739f7(0x180),'failed':{},'verification':{'status':_0xd739f7(0x11b),'lookupCommand':_0x521c91}});return recoverAfterResponseLoss(_0x36a2f6,_0x59d952,_0x521c91);}const _0x33b391=Number(_0xd14b91?.['id']),_0x24dfc7=typeof _0xd14b91?.['path']===_0xd739f7(0x151)?_0xd14b91[_0xd739f7(0x165)]:'';if(!Number[_0xd739f7(0x159)](_0x33b391)||_0x33b391<=0x0||!_0x24dfc7['trim']()){const _0x476a6a=menuError('menu_create_response_invalid',_0xd739f7(0x16d),'Run\x20'+_0x521c91+'\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.');throw externalLinkCreateFailure(_0x476a6a,_0x36ceef,{'stage':_0xd739f7(0x110),'succeeded':Number['isSafeInteger'](_0x33b391)&&_0x33b391>0x0?[{'id':_0x33b391,'created':!![]}]:[],'failed':{'createdId':Number[_0xd739f7(0x159)](_0x33b391)?_0x33b391:null,'generatedPathConfirmed':Boolean(_0x24dfc7['trim']())},'warnings':[_0xd739f7(0xfa)],'after':Number['isSafeInteger'](_0x33b391)&&_0x33b391>0x0?{..._0x5eee05,'id':_0x33b391,'path':_0x24dfc7}:_0x5eee05,'verification':{'status':_0xd739f7(0x11b),'lookupCommand':_0x521c91,...Number[_0xd739f7(0x159)](_0x33b391)&&_0x33b391>0x0?{'targetId':_0x33b391}:{}}});}const _0x1693c9=await readAndVerifyCreatedMenu({'appCode':_0x36a2f6[_0xd739f7(0xfb)],'cookie':_0x36a2f6[_0xd739f7(0x126)],'plan':_0x36ceef,'afterPlan':_0x5eee05,'createdId':_0x33b391,'expectedPath':_0x24dfc7,'lookupCommand':_0x521c91,'recovered':![]});return creationSuccess(_0x36ceef,_0x1693c9[_0xd739f7(0x12e)],_0x1693c9['fact'],![]);}};function validateAddInput(_0x3a219c){const _0x155967=a109_0x4a22bb;if(!_0x3a219c[_0x155967(0x132)](_0x155967(0x136))['trim']())throw CliErrors[_0x155967(0x103)](_0x155967(0x136));resolveExternalMenuType(_0x3a219c),validateExternalMenuUrl(_0x3a219c['str'](_0x155967(0xf9))),parseParentId(_0x3a219c,'parent-id'),validateSort(_0x3a219c);}function resolveExternalMenuType(_0x78a0bd){const _0x56e6b0=a109_0x4a22bb,_0x157f63=_0x78a0bd[_0x56e6b0(0x132)](_0x56e6b0(0xf6))[_0x56e6b0(0x14b)]();if(!_0x157f63)throw CliErrors[_0x56e6b0(0x103)]('open-mode');const _0x14a404=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x157f63];if(!_0x14a404)throw menuError(_0x56e6b0(0x100),_0x56e6b0(0x171),_0x56e6b0(0x130));return _0x14a404;}async function buildAddPlan(_0x193392,_0x4ff97e){const _0x2734c2=a109_0x4a22bb,_0x2c65b1=await fetchMutationSnapshot(_0x193392,_0x2734c2(0x160)),_0xae3942=parseParentId(_0x193392,_0x2734c2(0x174))??null;if(_0xae3942!=null)requireFolder(_0x2c65b1,_0xae3942);const _0x9d48d2=validateSort(_0x193392),_0x1aaf56=_0x9d48d2??nextSiblingSort(_0x2c65b1,_0xae3942,'menu'),_0x26c99a=_0x193392[_0x2734c2(0x132)](_0x2734c2(0x136))[_0x2734c2(0x14b)](),_0x84277d=resolveExternalMenuType(_0x193392),_0x157e39=validateExternalMenuUrl(_0x193392[_0x2734c2(0x132)]('url')),_0x253514=Object['prototype'][_0x2734c2(0x153)][_0x2734c2(0x17c)](_0x193392[_0x2734c2(0x181)],_0x2734c2(0x163))?_0x193392[_0x2734c2(0x13e)]('visible'):!![],_0x4b9baa={'id':null,'parentId':_0xae3942,'label':_0x26c99a,'path':_0x2734c2(0x14f),'url':_0x157e39,'type':_0x84277d,'visible':_0x253514,'sort':_0x1aaf56},_0x132d33=buildMenuLookupCommand(_0x193392[_0x2734c2(0xfb)]),_0x2b33f9=mutationResult({'operation':_0x2734c2(0x152),'selector':{'parentId':_0xae3942,'type':_0x84277d,'label':_0x26c99a,'url':_0x157e39},'before':null,'after':_0x4b9baa,'dryRun':_0x4ff97e,'backend':[{'method':'POST','path':_0x2734c2(0x15b)}],'plannedActions':[{'stage':_0x2734c2(0x10c),'method':_0x2734c2(0x138),'path':_0x2734c2(0x15b),'body':createBody(_0x4b9baa)}],'snapshotHash':_0x2c65b1[_0x2734c2(0x137)],'warnings':['The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.'],'verification':{'lookupCommand':_0x132d33}});return{'plan':_0x2b33f9,'snapshot':_0x2c65b1};}async function buildSafeAddPlan(_0x526ef8,_0x41877e){try{return await buildAddPlan(_0x526ef8,_0x41877e);}catch(_0x5d6c61){throw safeMenuAddError(_0x5d6c61);}}async function recheckAddSnapshot(_0x15989f,_0x72966){const _0x2a4d22=a109_0x4a22bb;try{await recheckMutationSnapshot(_0x15989f,_0x72966,_0x2a4d22(0x160));}catch(_0x32ae58){const _0x1e81e4=getFailureRecord(_0x32ae58);throw externalLinkCreateFailure(_0x32ae58,_0x72966,{'stage':_0x2a4d22(0xf1),'failed':{..._0x1e81e4?.[_0x2a4d22(0x116)]?{'expectedSnapshotHash':_0x1e81e4[_0x2a4d22(0x116)]}:{},..._0x1e81e4?.[_0x2a4d22(0x143)]?{'currentSnapshotHash':_0x1e81e4[_0x2a4d22(0x143)]}:{}}});}}function createBody(_0x4573bb){const _0x21a55b=a109_0x4a22bb;return{'parentId':toApiParentId(_0x4573bb[_0x21a55b(0x105)]),'label':String(_0x4573bb[_0x21a55b(0x136)]),'type':String(_0x4573bb[_0x21a55b(0x184)]),'url':String(_0x4573bb['url']),'visible':Boolean(_0x4573bb[_0x21a55b(0x163)]),'sort':Number(_0x4573bb[_0x21a55b(0x17d)]),'extend':{}};}function a109_0xa36e(_0x4d80a2,_0x3aa92d){_0x4d80a2=_0x4d80a2-0xf0;const _0x110fe3=a109_0x110f();let _0xa36e1f=_0x110fe3[_0x4d80a2];return _0xa36e1f;}function buildMenuLookupCommand(_0x9aae23){const _0x580250=a109_0x4a22bb,_0x6f0aa8='\x27'+_0x9aae23[_0x580250(0xfd)](/'/g,_0x580250(0x170))+'\x27';return _0x580250(0x118)+_0x6f0aa8+_0x580250(0x146);}async function recoverAfterResponseLoss(_0x4be1b1,_0x360e37,_0x4a3db5){const _0x231787=a109_0x4a22bb,{plan:_0x1f7f57,snapshot:_0x45ca28}=_0x360e37,_0x45959b=_0x1f7f57[_0x231787(0x15e)];let _0x2d205c;try{_0x2d205c=await fetchMenuSnapshot(_0x4be1b1[_0x231787(0xfb)],_0x4be1b1[_0x231787(0x126)]);}catch(_0xf7f8ee){throw recoveryRequiredFailure(_0x1f7f57,_0x4a3db5,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x2a9f15=_0x2d205c[_0x231787(0x104)]['filter'](_0x465438=>_0x465438[_0x231787(0x105)]===_0x45959b[_0x231787(0x105)]&&_0x465438[_0x231787(0x184)]===_0x45959b[_0x231787(0x184)]&&_0x465438[_0x231787(0x136)]===_0x45959b['label']&&_0x465438[_0x231787(0xf9)]===_0x45959b[_0x231787(0xf9)]),_0x1319d6=_0x2a9f15[_0x231787(0x115)](_0x41af08=>!_0x45ca28[_0x231787(0x123)][_0x231787(0x11c)](_0x41af08['id'])),_0x2fcf93=_0x2a9f15[_0x231787(0x115)](_0x21ebdc=>_0x45ca28[_0x231787(0x123)][_0x231787(0x11c)](_0x21ebdc['id']));if(_0x2a9f15['length']!==0x1||_0x1319d6[_0x231787(0x148)]!==0x1)throw recoveryRequiredFailure(_0x1f7f57,_0x4a3db5,{'matchCount':_0x2a9f15[_0x231787(0x148)],'newMatchCount':_0x1319d6[_0x231787(0x148)],'preexistingMatchCount':_0x2fcf93[_0x231787(0x148)]});const _0x378027=_0x1319d6[0x0];try{verifyCreatedFact(_0x378027,_0x378027['id'],_0x45959b,null);}catch(_0x3cf816){const _0x540ce4=_0x3cf816 instanceof Error&&_0x231787(0x10d)in _0x3cf816?_0x3cf816:menuError(_0x231787(0x147),_0x231787(0x16f)+_0x378027['id']+_0x231787(0x15d),_0x231787(0x127)+_0x4a3db5+_0x231787(0x16a));throw externalLinkCreateFailure(_0x540ce4,_0x1f7f57,{'stage':_0x231787(0x149),'succeeded':[{'id':_0x378027['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x378027['id'],'finalFactsConfirmed':![]},'after':_0x378027,'warnings':[_0x231787(0x12d)+_0x378027['id']+'\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.'],'verification':{'status':_0x231787(0x11b),'targetId':_0x378027['id'],'recovered':!![],'lookupCommand':_0x4a3db5}});}return creationSuccess(_0x1f7f57,_0x2d205c,_0x378027,!![]);}function recoveryRequiredFailure(_0x4ce771,_0x1d32da,_0x2a7009){const _0xa83183=a109_0x4a22bb,_0x1e65a5=menuError(_0xa83183(0x14a),_0xa83183(0x11a),_0xa83183(0x127)+_0x1d32da+_0xa83183(0x150));return externalLinkCreateFailure(_0x1e65a5,_0x4ce771,{'stage':_0xa83183(0x107),'failed':_0x2a7009,'warnings':[_0xa83183(0x17f)],'verification':{'status':_0xa83183(0x11b),..._0x2a7009,'lookupCommand':_0x1d32da}});}async function readAndVerifyCreatedMenu(_0x16fa0a){const _0x1677e1=a109_0x4a22bb;let _0x3c0b8f;try{_0x3c0b8f=await fetchMenuSnapshot(_0x16fa0a[_0x1677e1(0xfb)],_0x16fa0a[_0x1677e1(0x126)]);}catch(_0x26cb1f){const _0x218b34=menuError(_0x1677e1(0x147),_0x1677e1(0x12d)+_0x16fa0a[_0x1677e1(0x131)]+_0x1677e1(0x133),'Run\x20'+_0x16fa0a[_0x1677e1(0x168)]+_0x1677e1(0x13f));throw externalLinkCreateFailure(_0x218b34,_0x16fa0a[_0x1677e1(0x167)],{'stage':_0x1677e1(0x149),'succeeded':[{'id':_0x16fa0a['createdId'],'created':!![]}],'failed':{'id':_0x16fa0a['createdId'],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x16fa0a[_0x1677e1(0x173)],'id':_0x16fa0a['createdId'],'path':_0x16fa0a[_0x1677e1(0x14e)]},'warnings':[_0x1677e1(0x12d)+_0x16fa0a[_0x1677e1(0x131)]+_0x1677e1(0x10f)],'verification':{'status':_0x1677e1(0x11b),'targetId':_0x16fa0a[_0x1677e1(0x131)],'lookupCommand':_0x16fa0a[_0x1677e1(0x168)]}});}const _0xa86257=_0x3c0b8f['byId'][_0x1677e1(0x145)](_0x16fa0a[_0x1677e1(0x131)]);try{if(!_0xa86257)throw menuError(_0x1677e1(0x147),_0x1677e1(0x101)+_0x16fa0a[_0x1677e1(0x131)]+_0x1677e1(0x106),_0x1677e1(0x127)+_0x16fa0a[_0x1677e1(0x168)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0xa86257,_0x16fa0a['createdId'],_0x16fa0a['afterPlan'],_0x16fa0a['expectedPath']);}catch(_0x2cb393){const _0x3a698f=_0x2cb393 instanceof Error&&_0x1677e1(0x10d)in _0x2cb393?_0x2cb393:menuError(_0x1677e1(0x147),_0x1677e1(0x101)+_0x16fa0a[_0x1677e1(0x131)]+_0x1677e1(0x108),_0x1677e1(0x127)+_0x16fa0a[_0x1677e1(0x168)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x3a698f,_0x16fa0a[_0x1677e1(0x167)],{'stage':_0x1677e1(0x149),'succeeded':[{'id':_0x16fa0a[_0x1677e1(0x131)],'created':!![]}],'failed':{'id':_0x16fa0a[_0x1677e1(0x131)],'finalFactsConfirmed':![]},'after':_0xa86257??{..._0x16fa0a['afterPlan'],'id':_0x16fa0a[_0x1677e1(0x131)],'path':_0x16fa0a['expectedPath']},'warnings':[_0x1677e1(0x12d)+_0x16fa0a[_0x1677e1(0x131)]+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x1677e1(0x11b),'targetId':_0x16fa0a[_0x1677e1(0x131)],'recovered':_0x16fa0a[_0x1677e1(0x169)],'lookupCommand':_0x16fa0a[_0x1677e1(0x168)]}});}return{'snapshot':_0x3c0b8f,'fact':_0xa86257};}function verifyCreatedFact(_0x2c893a,_0x5e7055,_0x2b46ab,_0x2a4dbb){const _0x483a29=a109_0x4a22bb;if(!Number[_0x483a29(0x159)](_0x2c893a['id'])||_0x2c893a['id']<=0x0||_0x2c893a['id']!==_0x5e7055)throw menuError(_0x483a29(0x147),_0x483a29(0x134),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x596dde=[['parent',_0x2c893a[_0x483a29(0x105)],_0x2b46ab[_0x483a29(0x105)]],[_0x483a29(0x184),_0x2c893a[_0x483a29(0x184)],_0x2b46ab['type']],[_0x483a29(0x136),_0x2c893a[_0x483a29(0x136)],_0x2b46ab[_0x483a29(0x136)]],['URL',_0x2c893a[_0x483a29(0xf9)],_0x2b46ab[_0x483a29(0xf9)]],[_0x483a29(0x124),_0x2c893a[_0x483a29(0x163)],_0x2b46ab[_0x483a29(0x163)]],[_0x483a29(0x17d),_0x2c893a[_0x483a29(0x17d)],_0x2b46ab[_0x483a29(0x17d)]]];for(const [_0xbfb24a,_0x53fb33,_0x821dc9]of _0x596dde){if(_0x53fb33!==_0x821dc9)throw menuError(_0x483a29(0x147),_0x483a29(0x101)+_0x2c893a['id']+_0x483a29(0x154)+_0xbfb24a+'.',_0x483a29(0xff));}if(!_0x2c893a[_0x483a29(0x165)][_0x483a29(0x14b)]()||_0x2a4dbb!==null&&_0x2c893a['path']!==_0x2a4dbb)throw menuError(_0x483a29(0x147),_0x483a29(0x101)+_0x2c893a['id']+'\x20has\x20an\x20unexpected\x20generated\x20path.',_0x483a29(0xff));}function creationSuccess(_0x12dea3,_0x565f1b,_0x20d1e7,_0x3ce356){const _0x547d6f=a109_0x4a22bb,_0x20b52a=mutationResult({..._0x12dea3,'after':_0x20d1e7,'dryRun':![],'succeeded':[{'id':_0x20d1e7['id'],'created':!![],'recovered':_0x3ce356}],'verification':{'checkedBy':_0x547d6f(0xf8),'snapshotHash':_0x565f1b[_0x547d6f(0x137)],'targetId':_0x20d1e7['id'],'recovered':_0x3ce356,'path':_0x20d1e7['path']}});return{'ok':!![],'message':_0x3ce356?'Recovered\x20created\x20external\x20menu\x20'+_0x20d1e7['id']+_0x547d6f(0x15f):_0x547d6f(0x135)+_0x20d1e7['id']+'.','data':{..._0x20b52a,'recovered':_0x3ce356}};}function externalLinkCreateFailure(_0x45de62,_0x82a001,_0x37762a){const _0x1d097b=a109_0x4a22bb;return menuFailure(safeMenuAddError(_0x45de62),redactFailurePlan(_0x82a001),{..._0x37762a,'succeeded':_0x37762a[_0x1d097b(0x120)]?.['map'](redactFailureRecord),'failed':_0x37762a[_0x1d097b(0x11b)]?redactFailureRecord(_0x37762a[_0x1d097b(0x11b)]):undefined,'verification':_0x37762a['verification']?redactFailureRecord(_0x37762a['verification']):undefined,'after':_0x37762a['after']===undefined?undefined:redactFailureValue(_0x37762a[_0x1d097b(0x15e)])});}function redactFailurePlan(_0x2f048c){const _0x333102=a109_0x4a22bb;return{..._0x2f048c,'selector':redactFailureRecord(_0x2f048c[_0x333102(0x17b)]),'before':redactFailureValue(_0x2f048c['before']),'after':redactFailureValue(_0x2f048c[_0x333102(0x15e)]),'plannedActions':_0x2f048c[_0x333102(0x142)]?.['map'](_0x120591=>({..._0x120591,'body':redactFailureRecord(_0x120591[_0x333102(0x10a)])})),'succeeded':_0x2f048c[_0x333102(0x120)][_0x333102(0x13a)](redactFailureRecord),'failed':_0x2f048c['failed'][_0x333102(0x13a)](redactFailureRecord),'verification':_0x2f048c[_0x333102(0x149)]?redactFailureRecord(_0x2f048c[_0x333102(0x149)]):undefined};}function redactFailureRecord(_0x5ecc57){return redactFailureValue(_0x5ecc57);}function redactFailureValue(_0x513630,_0xca9294=''){const _0x4fcd6f=a109_0x4a22bb,_0x4f1ec7=_0xca9294[_0x4fcd6f(0x162)]()['replace'](/[^a-z0-9]/g,'');if([_0x4fcd6f(0x102),_0x4fcd6f(0x16b),_0x4fcd6f(0x10b),_0x4fcd6f(0xf7)][_0x4fcd6f(0x11f)](_0x4f1ec7))return _0x4fcd6f(0x17a);if(Array[_0x4fcd6f(0x182)](_0x513630))return _0x513630[_0x4fcd6f(0x13a)](_0x14ace0=>redactFailureValue(_0x14ace0));if(_0x513630&&typeof _0x513630==='object')return Object[_0x4fcd6f(0xf4)](Object[_0x4fcd6f(0x176)](_0x513630)['map'](([_0x5e5afc,_0x489cf8])=>[_0x5e5afc,redactFailureValue(_0x489cf8,_0x5e5afc)]));return _0x513630;}function safeMenuAddError(_0x4e35ae){const _0x524bfb=a109_0x4a22bb,_0x254e67=_0x4e35ae instanceof CliError?_0x4e35ae[_0x524bfb(0x10d)]:'menu_mutation_failed';switch(_0x254e67){case _0x524bfb(0x13d):return menuError(_0x254e67,_0x524bfb(0x179),_0x524bfb(0x178));case _0x524bfb(0xf0):return menuError(_0x254e67,_0x524bfb(0xfe),_0x524bfb(0x12f));case _0x524bfb(0x125):return menuError(_0x254e67,_0x524bfb(0x114),_0x524bfb(0x16e));case _0x524bfb(0x147):return menuError(_0x254e67,_0x524bfb(0x141),_0x524bfb(0x16e));case _0x524bfb(0x14a):return menuError(_0x254e67,_0x524bfb(0x161),_0x524bfb(0x119));case _0x524bfb(0x129):case'menu_not_found':case _0x524bfb(0xf3):case _0x524bfb(0x140):case _0x524bfb(0x175):return menuError(_0x254e67,_0x524bfb(0x11e),_0x524bfb(0x164));default:return menuError(_0x524bfb(0x129),_0x524bfb(0x11e),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x1d4abd){const _0x35db2e=a109_0x4a22bb;if(!(_0x1d4abd instanceof Error)||!(_0x35db2e(0x111)in _0x1d4abd))return undefined;const _0x427969=_0x1d4abd['data'];if(!_0x427969||typeof _0x427969!==_0x35db2e(0x12c))return undefined;const _0x121335=_0x427969[_0x35db2e(0x11b)];if(!Array[_0x35db2e(0x182)](_0x121335)||!_0x121335[0x0]||typeof _0x121335[0x0]!==_0x35db2e(0x12c))return undefined;return _0x121335[0x0];}function a109_0x110f(){const _0x19eab6=['<redacted>','selector','call','sort','link','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','create','rawFlags','isArray','new-window','type','menu_permission_denied','pre-write-recheck','8997300QXPAZk','menu_parent_not_folder','fromEntries','How\x20to\x20open\x20the\x20external\x20website','open-mode','rawerror','menu\x20list','url','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','appCode','3059448osJmqW','replace','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','menu_open_mode_invalid','Created\x20menu\x20','cause','flagMissing','menus','parentId','\x20is\x20missing\x20from\x20final\x20menu\x20facts.','create-recovery','\x20failed\x20final\x20verification.','menu_url_https_required','body','readbackerror','create-menu','code','protocol','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','create-response-validation','data','\x20with\x20','3553055WwFAZv','Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.','filter','expectedSnapshotHash','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','rabetbase\x20menu\x20list\x20--appcode\x20','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','failed','has','boolean','External\x20menu\x20creation\x20failed.','includes','succeeded','Whether\x20the\x20menu\x20is\x20visible','iframe','byId','visibility','menu_create_response_invalid','cookie','Run\x20','18263xoFJEf','menu_mutation_failed','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','Menu\x20label','object','Menu\x20','snapshot','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.','createdId','str','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Created\x20external\x20menu\x20','label','hash','POST','610239TEEVfb','map','966dCgThb','external-link-create','menu_state_drift','bool','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','menu_sort_invalid','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','plannedActions','currentSnapshotHash','password','get','\x20--format\x20compress','menu_verification_failed','length','verification','menu_create_recovery_required','trim','write','Would\x20create\x20external\x20website\x20link\x20menu\x20','expectedPath','<platform-generated>','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','string','add','hasOwnProperty','\x20has\x20an\x20unexpected\x20','menu_url_credentials_forbidden','3134sahBCw','username','External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','isSafeInteger','1078544mJcvKt','/smartapi/menu/create','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','\x20could\x20not\x20be\x20verified.','after','\x20after\x20response\x20loss.','create\x20external\x20menu','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','toLowerCase','visible','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','path','https:','plan','lookupCommand','recovered','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','causemessage','88auJAlr','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','Recovered\x20menu\x20','\x27\x5c\x27\x27','--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','embedded','afterPlan','parent-id','menu_sort_overflow','entries','stringify','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.'];a109_0x110f=function(){return _0x19eab6;};return a109_0x110f();}
1
+ const a109_0x38b90c=a109_0x493b;(function(_0x544216,_0x2a4b27){const _0x243350=a109_0x493b,_0x224144=_0x544216();while(!![]){try{const _0x331c67=-parseInt(_0x243350(0x20b))/0x1*(parseInt(_0x243350(0x1d9))/0x2)+-parseInt(_0x243350(0x1d7))/0x3*(parseInt(_0x243350(0x1bb))/0x4)+parseInt(_0x243350(0x196))/0x5+parseInt(_0x243350(0x211))/0x6+parseInt(_0x243350(0x192))/0x7*(parseInt(_0x243350(0x1ea))/0x8)+parseInt(_0x243350(0x1b7))/0x9+-parseInt(_0x243350(0x20f))/0xa;if(_0x331c67===_0x2a4b27)break;else _0x224144['push'](_0x224144['shift']());}catch(_0x519c1a){_0x224144['push'](_0x224144['shift']());}}}(a109_0x4820,0x89858));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,fetchMutationSnapshot,menuDryRunResult,menuError,menuFailure,mapMenuApiError,isMenuResponseLoss,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliError,CliErrors}from'../../errors.js';function a109_0x4820(){const _0x115f9b=['Provide\x20an\x20HTTPS\x20URL.','menu_open_mode_invalid','open-mode','The\x20create\x20response\x20was\x20lost\x20and\x20the\x20created\x20menu\x20cannot\x20be\x20identified\x20safely.','Whether\x20the\x20menu\x20is\x20visible','afterPlan','label','create-response-validation','<platform-generated>','hasOwnProperty','menu_url_invalid','\x20was\x20observed\x20after\x20response\x20loss;\x20inspect\x20it\x20before\x20any\x20retry.','selector','causemessage','bool','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','isArray','currentSnapshotHash','\x20could\x20not\x20be\x20verified.','The\x20create\x20request\x20may\x20have\x20succeeded.\x20Automatic\x20retry\x20is\x20disabled\x20to\x20prevent\x20duplicates.','plannedActions','readbackerror','5418639NQWhDM','rawerror','Menu\x20label','filter','100YuyrMK','menu_create_response_invalid','menu\x20list','visible','password','has','cause','parent','\x20failed\x20final\x20verification.','menu_parent_not_folder','rawFlags','cookie','External\x20HTTPS\x20URL','create','toLowerCase','\x20has\x20an\x20unexpected\x20generated\x20path.','length','protocol','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot.','parentId','\x20--format\x20compress','Use\x20the\x20structured\x20verification\x20lookup\x20command\x20before\x20retrying.','External\x20menu\x20URL\x20must\x20use\x20HTTPS.','verification','expectedPath','after','menu','menu_permission_denied','1560LtsmCn','Inspect\x20the\x20created\x20menu\x20before\x20retrying\x20the\x20operation.','209930mIaddP','create-recovery','External\x20menu\x20URL\x20must\x20not\x20contain\x20embedded\x20credentials.','recovered','code','replace','data','\x20may\x20exist\x20online;\x20inspect\x20it\x20before\x20any\x20retry.','url','map','lookupCommand','Run\x20','Recovered\x20menu\x20','includes','Remove\x20credentials\x20from\x20the\x20URL\x20and\x20use\x20platform-managed\x20authentication.','link','path','32zoraus','\x20opening\x20mode\x20and\x20a\x20platform-generated\x20path.','iframe','flagMissing','URL','createdId','add','Menu\x20','How\x20to\x20open\x20the\x20external\x20website','Created\x20menu\x20has\x20an\x20invalid\x20or\x20unexpected\x20id.','Inspect\x20current\x20menu\x20facts\x20before\x20retrying.','menu_sort_overflow','Create\x20an\x20external\x20website\x20link\x20menu','appCode','POST','object','Would\x20create\x20external\x20website\x20link\x20menu\x20','type','\x20and\x20inspect\x20current\x20menu\x20facts;\x20do\x20not\x20retry\x20creation\x20while\x20the\x20outcome\x20is\x20uncertain.','menu_create_recovery_required','entries','snapshot','Recovered\x20created\x20external\x20menu\x20','\x27\x5c\x27\x27','new-window','create-menu','plan','prototype','trim','expectedSnapshotHash','menu_sort_invalid','sort','str','8kTcwKc','menu_verification_failed','Created\x20menu\x20facts\x20could\x20not\x20be\x20verified\x20safely.','fromEntries','391480nojfui','\x20has\x20an\x20unexpected\x20','2220630ZHCaIt','failed','\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.','fact','menu_mutation_failed','isSafeInteger','\x20with\x20','\x20before\x20retrying;\x20the\x20menu\x20may\x20already\x20exist.','/smartapi/menu/create','stringify','succeeded','rabetbase\x20menu\x20list\x20--appcode\x20','body','External\x20menu\x20creation\x20failed.','parent-id','The\x20platform\x20assigns\x20the\x20menu\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.','pre-write-recheck','The\x20external\x20menu\x20create\x20outcome\x20could\x20not\x20be\x20recovered\x20safely.','811153vHGvqN','create\x20external\x20menu','Permission\x20denied\x20while\x20creating\x20the\x20external\x20menu.','\x20after\x20response\x20loss.','97320tjdoUy','write','visibility','get','\x20was\x20created\x20but\x20final\x20facts\x20could\x20not\x20be\x20read.','call','\x20and\x20inspect\x20the\x20recovered\x20id\x20before\x20retrying.','byId','The\x20create\x20request\x20may\x20have\x20succeeded;\x20inspect\x20current\x20menu\x20facts\x20before\x20any\x20retry.','Created\x20menu\x20','string'];a109_0x4820=function(){return _0x115f9b;};return a109_0x4820();}const EXTERNAL_MENU_TYPES_BY_OPEN_MODE={'embedded':a109_0x38b90c(0x1ec),'new-window':a109_0x38b90c(0x1e8)};export function validateExternalMenuUrl(_0x1a280b){const _0x1095ac=a109_0x38b90c,_0x4c32df=_0x1a280b['trim']();let _0x141908;try{_0x141908=new URL(_0x4c32df);}catch{throw menuError(_0x1095ac(0x1ab),'External\x20menu\x20URL\x20must\x20be\x20a\x20valid\x20absolute\x20URL.','Provide\x20an\x20absolute\x20HTTPS\x20URL\x20without\x20embedded\x20credentials.');}if(_0x141908[_0x1095ac(0x1cc)]!=='https:')throw menuError('menu_url_https_required',_0x1095ac(0x1d1),_0x1095ac(0x1a1));if(_0x141908['username']||_0x141908[_0x1095ac(0x1bf)])throw menuError('menu_url_credentials_forbidden',_0x1095ac(0x1db),_0x1095ac(0x1e7));return _0x4c32df;}export const menuExternalLinkCreate={'service':a109_0x38b90c(0x1d5),'command':'external-link-create','description':a109_0x38b90c(0x1f6),'risk':a109_0x38b90c(0x197),'structuredErrors':!![],'flags':[{'name':a109_0x38b90c(0x1a7),'type':a109_0x38b90c(0x1a0),'required':!![],'description':a109_0x38b90c(0x1b9)},{'name':a109_0x38b90c(0x1a3),'type':a109_0x38b90c(0x1a0),'required':!![],'enum':['embedded',a109_0x38b90c(0x202)],'description':a109_0x38b90c(0x1f2)},{'name':a109_0x38b90c(0x1e1),'type':a109_0x38b90c(0x1a0),'required':!![],'description':a109_0x38b90c(0x1c7)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,{'name':a109_0x38b90c(0x1be),'type':'boolean','default':!![],'description':a109_0x38b90c(0x1a5)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x9ba43e){validateAddInput(_0x9ba43e);},async 'dryRun'(_0x1a88b7){const _0x1227af=a109_0x38b90c;validateAddInput(_0x1a88b7);const {plan:_0x31de40}=await buildSafeAddPlan(_0x1a88b7,!![]),_0x1400db=_0x31de40[_0x1227af(0x1d4)],_0x2a37ea=createBody(_0x1400db);return menuDryRunResult(_0x31de40,{'method':_0x1227af(0x1f8),'url':_0x1227af(0x188),'body':_0x2a37ea,'description':_0x1227af(0x1fa)+JSON[_0x1227af(0x189)](_0x1400db['label'])+_0x1227af(0x186)+_0x1a88b7[_0x1227af(0x20a)](_0x1227af(0x1a3))+_0x1227af(0x1eb)});},async 'execute'(_0x5e83ba){const _0x5db0d4=a109_0x38b90c;validateAddInput(_0x5e83ba);const _0x377374=await buildSafeAddPlan(_0x5e83ba,![]),{plan:_0xfd2493,snapshot:_0x13e7af}=_0x377374,_0x3fb150=_0xfd2493['after'],_0x14d33b=buildMenuLookupCommand(_0x5e83ba[_0x5db0d4(0x1f7)]);await recheckAddSnapshot(_0x5e83ba,_0xfd2493);let _0x1f1ac0;try{_0x1f1ac0=await createMenuEntity(_0x5e83ba[_0x5db0d4(0x1f7)],_0x5e83ba[_0x5db0d4(0x1c6)],createBody(_0x3fb150));}catch(_0x3b40e5){const _0x4495e8=mapMenuApiError(_0x3b40e5,_0x5db0d4(0x193));if(!isMenuResponseLoss(_0x3b40e5)||_0x4495e8[_0x5db0d4(0x1dd)]==='menu_permission_denied')throw externalLinkCreateFailure(_0x4495e8,_0xfd2493,{'stage':_0x5db0d4(0x1c8),'failed':{},'verification':{'status':_0x5db0d4(0x212),'lookupCommand':_0x14d33b}});return recoverAfterResponseLoss(_0x5e83ba,_0x377374,_0x14d33b);}const _0x586166=Number(_0x1f1ac0?.['id']),_0x354938=typeof _0x1f1ac0?.['path']==='string'?_0x1f1ac0[_0x5db0d4(0x1e9)]:'';if(!Number['isSafeInteger'](_0x586166)||_0x586166<=0x0||!_0x354938['trim']()){const _0x1b8e3e=menuError(_0x5db0d4(0x1bc),'Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20id\x20and\x20non-empty\x20generated\x20path.',_0x5db0d4(0x1e4)+_0x14d33b+_0x5db0d4(0x187));throw externalLinkCreateFailure(_0x1b8e3e,_0xfd2493,{'stage':_0x5db0d4(0x1a8),'succeeded':Number[_0x5db0d4(0x185)](_0x586166)&&_0x586166>0x0?[{'id':_0x586166,'created':!![]}]:[],'failed':{'createdId':Number[_0x5db0d4(0x185)](_0x586166)?_0x586166:null,'generatedPathConfirmed':Boolean(_0x354938[_0x5db0d4(0x206)]())},'warnings':[_0x5db0d4(0x19e)],'after':Number['isSafeInteger'](_0x586166)&&_0x586166>0x0?{..._0x3fb150,'id':_0x586166,'path':_0x354938}:_0x3fb150,'verification':{'status':_0x5db0d4(0x212),'lookupCommand':_0x14d33b,...Number['isSafeInteger'](_0x586166)&&_0x586166>0x0?{'targetId':_0x586166}:{}}});}const _0x159f31=await readAndVerifyCreatedMenu({'appCode':_0x5e83ba[_0x5db0d4(0x1f7)],'cookie':_0x5e83ba[_0x5db0d4(0x1c6)],'plan':_0xfd2493,'afterPlan':_0x3fb150,'createdId':_0x586166,'expectedPath':_0x354938,'lookupCommand':_0x14d33b,'recovered':![]});return creationSuccess(_0xfd2493,_0x159f31[_0x5db0d4(0x1ff)],_0x159f31[_0x5db0d4(0x183)],![]);}};function validateAddInput(_0x457225){const _0x4b0362=a109_0x38b90c;if(!_0x457225[_0x4b0362(0x20a)]('label')[_0x4b0362(0x206)]())throw CliErrors[_0x4b0362(0x1ed)](_0x4b0362(0x1a7));resolveExternalMenuType(_0x457225),validateExternalMenuUrl(_0x457225[_0x4b0362(0x20a)]('url')),parseParentId(_0x457225,_0x4b0362(0x18e)),validateSort(_0x457225);}function resolveExternalMenuType(_0x212be5){const _0x37d911=a109_0x38b90c,_0x45c9b4=_0x212be5[_0x37d911(0x20a)](_0x37d911(0x1a3))[_0x37d911(0x206)]();if(!_0x45c9b4)throw CliErrors['flagMissing'](_0x37d911(0x1a3));const _0x17e951=EXTERNAL_MENU_TYPES_BY_OPEN_MODE[_0x45c9b4];if(!_0x17e951)throw menuError(_0x37d911(0x1a2),'--open-mode\x20must\x20be\x20embedded\x20or\x20new-window.','Choose\x20embedded\x20to\x20keep\x20the\x20application\x20shell,\x20or\x20new-window\x20to\x20open\x20the\x20website\x20separately.');return _0x17e951;}async function buildAddPlan(_0x1a4050,_0x30c816){const _0x31a274=a109_0x38b90c,_0x434c08=await fetchMutationSnapshot(_0x1a4050,_0x31a274(0x193)),_0x4d8c05=parseParentId(_0x1a4050,_0x31a274(0x18e))??null;if(_0x4d8c05!=null)requireFolder(_0x434c08,_0x4d8c05);const _0x591506=validateSort(_0x1a4050),_0x50d081=_0x591506??nextSiblingSort(_0x434c08,_0x4d8c05,_0x31a274(0x1d5)),_0x2ab313=_0x1a4050[_0x31a274(0x20a)]('label')[_0x31a274(0x206)](),_0x4f8214=resolveExternalMenuType(_0x1a4050),_0x190427=validateExternalMenuUrl(_0x1a4050[_0x31a274(0x20a)](_0x31a274(0x1e1))),_0x31cbf7=Object[_0x31a274(0x205)][_0x31a274(0x1aa)][_0x31a274(0x19b)](_0x1a4050[_0x31a274(0x1c5)],_0x31a274(0x1be))?_0x1a4050[_0x31a274(0x1af)]('visible'):!![],_0x422fef={'id':null,'parentId':_0x4d8c05,'label':_0x2ab313,'path':_0x31a274(0x1a9),'url':_0x190427,'type':_0x4f8214,'visible':_0x31cbf7,'sort':_0x50d081},_0x13d69e=buildMenuLookupCommand(_0x1a4050[_0x31a274(0x1f7)]),_0xf52728=mutationResult({'operation':_0x31a274(0x1f0),'selector':{'parentId':_0x4d8c05,'type':_0x4f8214,'label':_0x2ab313,'url':_0x190427},'before':null,'after':_0x422fef,'dryRun':_0x30c816,'backend':[{'method':_0x31a274(0x1f8),'path':_0x31a274(0x188)}],'plannedActions':[{'stage':_0x31a274(0x203),'method':_0x31a274(0x1f8),'path':_0x31a274(0x188),'body':createBody(_0x422fef)}],'snapshotHash':_0x434c08['hash'],'warnings':[_0x31a274(0x18f)],'verification':{'lookupCommand':_0x13d69e}});return{'plan':_0xf52728,'snapshot':_0x434c08};}function a109_0x493b(_0x4b5ab9,_0x247622){_0x4b5ab9=_0x4b5ab9-0x182;const _0x4820b3=a109_0x4820();let _0x493b95=_0x4820b3[_0x4b5ab9];return _0x493b95;}async function buildSafeAddPlan(_0x452fb1,_0x2a323b){try{return await buildAddPlan(_0x452fb1,_0x2a323b);}catch(_0x2f2fdc){throw safeMenuAddError(_0x2f2fdc);}}async function recheckAddSnapshot(_0x4ae2ad,_0xfa31b1){const _0x26d6ef=a109_0x38b90c;try{await recheckMutationSnapshot(_0x4ae2ad,_0xfa31b1,_0x26d6ef(0x193));}catch(_0x5a4091){const _0x175d93=getFailureRecord(_0x5a4091);throw externalLinkCreateFailure(_0x5a4091,_0xfa31b1,{'stage':_0x26d6ef(0x190),'failed':{..._0x175d93?.['expectedSnapshotHash']?{'expectedSnapshotHash':_0x175d93[_0x26d6ef(0x207)]}:{},..._0x175d93?.['currentSnapshotHash']?{'currentSnapshotHash':_0x175d93[_0x26d6ef(0x1b2)]}:{}}});}}function createBody(_0x145a4b){const _0x5b7c14=a109_0x38b90c;return{'parentId':toApiParentId(_0x145a4b[_0x5b7c14(0x1ce)]),'label':String(_0x145a4b[_0x5b7c14(0x1a7)]),'type':String(_0x145a4b['type']),'url':String(_0x145a4b[_0x5b7c14(0x1e1)]),'visible':Boolean(_0x145a4b[_0x5b7c14(0x1be)]),'sort':Number(_0x145a4b[_0x5b7c14(0x209)]),'extend':{}};}function buildMenuLookupCommand(_0xdcb91d){const _0x44b484=a109_0x38b90c,_0x348b14='\x27'+_0xdcb91d['replace'](/'/g,_0x44b484(0x201))+'\x27';return _0x44b484(0x18b)+_0x348b14+_0x44b484(0x1cf);}async function recoverAfterResponseLoss(_0x484d74,_0x5cbbd3,_0x53da58){const _0x3dc31a=a109_0x38b90c,{plan:_0x584ff1,snapshot:_0x3b2ccd}=_0x5cbbd3,_0x530c28=_0x584ff1['after'];let _0x14150b;try{_0x14150b=await fetchMenuSnapshot(_0x484d74[_0x3dc31a(0x1f7)],_0x484d74[_0x3dc31a(0x1c6)]);}catch(_0x15adff){throw recoveryRequiredFailure(_0x584ff1,_0x53da58,{'matchCount':null,'newMatchCount':null,'preexistingMatchCount':null,'readbackFailed':!![]});}const _0x4d470a=_0x14150b['menus'][_0x3dc31a(0x1ba)](_0xd6d40a=>_0xd6d40a[_0x3dc31a(0x1ce)]===_0x530c28['parentId']&&_0xd6d40a[_0x3dc31a(0x1fb)]===_0x530c28[_0x3dc31a(0x1fb)]&&_0xd6d40a[_0x3dc31a(0x1a7)]===_0x530c28[_0x3dc31a(0x1a7)]&&_0xd6d40a[_0x3dc31a(0x1e1)]===_0x530c28['url']),_0x2a680b=_0x4d470a[_0x3dc31a(0x1ba)](_0x3dba71=>!_0x3b2ccd[_0x3dc31a(0x19d)]['has'](_0x3dba71['id'])),_0x255ced=_0x4d470a[_0x3dc31a(0x1ba)](_0x2fbffb=>_0x3b2ccd[_0x3dc31a(0x19d)][_0x3dc31a(0x1c0)](_0x2fbffb['id']));if(_0x4d470a[_0x3dc31a(0x1cb)]!==0x1||_0x2a680b[_0x3dc31a(0x1cb)]!==0x1)throw recoveryRequiredFailure(_0x584ff1,_0x53da58,{'matchCount':_0x4d470a['length'],'newMatchCount':_0x2a680b[_0x3dc31a(0x1cb)],'preexistingMatchCount':_0x255ced[_0x3dc31a(0x1cb)]});const _0x74fe3a=_0x2a680b[0x0];try{verifyCreatedFact(_0x74fe3a,_0x74fe3a['id'],_0x530c28,null);}catch(_0x15e0b3){const _0x427208=_0x15e0b3 instanceof Error&&_0x3dc31a(0x1dd)in _0x15e0b3?_0x15e0b3:menuError(_0x3dc31a(0x20c),_0x3dc31a(0x1e5)+_0x74fe3a['id']+_0x3dc31a(0x1b3),_0x3dc31a(0x1e4)+_0x53da58+_0x3dc31a(0x19c));throw externalLinkCreateFailure(_0x427208,_0x584ff1,{'stage':_0x3dc31a(0x1d2),'succeeded':[{'id':_0x74fe3a['id'],'created':!![],'recovered':!![]}],'failed':{'id':_0x74fe3a['id'],'finalFactsConfirmed':![]},'after':_0x74fe3a,'warnings':[_0x3dc31a(0x1f1)+_0x74fe3a['id']+_0x3dc31a(0x1ac)],'verification':{'status':'failed','targetId':_0x74fe3a['id'],'recovered':!![],'lookupCommand':_0x53da58}});}return creationSuccess(_0x584ff1,_0x14150b,_0x74fe3a,!![]);}function recoveryRequiredFailure(_0x3362b9,_0x79365e,_0x45f28a){const _0xec245b=a109_0x38b90c,_0x2abed7=menuError(_0xec245b(0x1fd),_0xec245b(0x1a4),_0xec245b(0x1e4)+_0x79365e+_0xec245b(0x1fc));return externalLinkCreateFailure(_0x2abed7,_0x3362b9,{'stage':_0xec245b(0x1da),'failed':_0x45f28a,'warnings':[_0xec245b(0x1b4)],'verification':{'status':_0xec245b(0x212),..._0x45f28a,'lookupCommand':_0x79365e}});}async function readAndVerifyCreatedMenu(_0x44b7b9){const _0x352dd0=a109_0x38b90c;let _0xa6eefe;try{_0xa6eefe=await fetchMenuSnapshot(_0x44b7b9[_0x352dd0(0x1f7)],_0x44b7b9[_0x352dd0(0x1c6)]);}catch(_0x16eb0b){const _0x9c11ab=menuError('menu_verification_failed','Menu\x20'+_0x44b7b9[_0x352dd0(0x1ef)]+_0x352dd0(0x19a),_0x352dd0(0x1e4)+_0x44b7b9['lookupCommand']+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');throw externalLinkCreateFailure(_0x9c11ab,_0x44b7b9[_0x352dd0(0x204)],{'stage':_0x352dd0(0x1d2),'succeeded':[{'id':_0x44b7b9['createdId'],'created':!![]}],'failed':{'id':_0x44b7b9[_0x352dd0(0x1ef)],'finalFactsConfirmed':![],'readbackFailed':!![]},'after':{..._0x44b7b9[_0x352dd0(0x1a6)],'id':_0x44b7b9['createdId'],'path':_0x44b7b9[_0x352dd0(0x1d3)]},'warnings':['Menu\x20'+_0x44b7b9[_0x352dd0(0x1ef)]+_0x352dd0(0x1e0)],'verification':{'status':_0x352dd0(0x212),'targetId':_0x44b7b9[_0x352dd0(0x1ef)],'lookupCommand':_0x44b7b9['lookupCommand']}});}const _0x3dae05=_0xa6eefe[_0x352dd0(0x19d)][_0x352dd0(0x199)](_0x44b7b9[_0x352dd0(0x1ef)]);try{if(!_0x3dae05)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x44b7b9[_0x352dd0(0x1ef)]+'\x20is\x20missing\x20from\x20final\x20menu\x20facts.','Run\x20'+_0x44b7b9[_0x352dd0(0x1e3)]+'\x20and\x20inspect\x20the\x20created\x20id\x20before\x20retrying.');verifyCreatedFact(_0x3dae05,_0x44b7b9[_0x352dd0(0x1ef)],_0x44b7b9['afterPlan'],_0x44b7b9['expectedPath']);}catch(_0x9c7520){const _0x2a88a4=_0x9c7520 instanceof Error&&'code'in _0x9c7520?_0x9c7520:menuError(_0x352dd0(0x20c),_0x352dd0(0x19f)+_0x44b7b9[_0x352dd0(0x1ef)]+_0x352dd0(0x1c3),_0x352dd0(0x1e4)+_0x44b7b9[_0x352dd0(0x1e3)]+_0x352dd0(0x182));throw externalLinkCreateFailure(_0x2a88a4,_0x44b7b9[_0x352dd0(0x204)],{'stage':_0x352dd0(0x1d2),'succeeded':[{'id':_0x44b7b9[_0x352dd0(0x1ef)],'created':!![]}],'failed':{'id':_0x44b7b9[_0x352dd0(0x1ef)],'finalFactsConfirmed':![]},'after':_0x3dae05??{..._0x44b7b9[_0x352dd0(0x1a6)],'id':_0x44b7b9['createdId'],'path':_0x44b7b9[_0x352dd0(0x1d3)]},'warnings':[_0x352dd0(0x1f1)+_0x44b7b9[_0x352dd0(0x1ef)]+'\x20remains\x20available\x20for\x20manual\x20inspection;\x20do\x20not\x20retry\x20blindly.'],'verification':{'status':_0x352dd0(0x212),'targetId':_0x44b7b9['createdId'],'recovered':_0x44b7b9[_0x352dd0(0x1dc)],'lookupCommand':_0x44b7b9['lookupCommand']}});}return{'snapshot':_0xa6eefe,'fact':_0x3dae05};}function verifyCreatedFact(_0x5cdd75,_0x4643b0,_0x22c44d,_0x1389b8){const _0x2385ad=a109_0x38b90c;if(!Number['isSafeInteger'](_0x5cdd75['id'])||_0x5cdd75['id']<=0x0||_0x5cdd75['id']!==_0x4643b0)throw menuError('menu_verification_failed',_0x2385ad(0x1f3),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying\x20the\x20operation.');const _0x432ce3=[[_0x2385ad(0x1c2),_0x5cdd75[_0x2385ad(0x1ce)],_0x22c44d[_0x2385ad(0x1ce)]],[_0x2385ad(0x1fb),_0x5cdd75['type'],_0x22c44d['type']],[_0x2385ad(0x1a7),_0x5cdd75['label'],_0x22c44d['label']],[_0x2385ad(0x1ee),_0x5cdd75[_0x2385ad(0x1e1)],_0x22c44d['url']],[_0x2385ad(0x198),_0x5cdd75[_0x2385ad(0x1be)],_0x22c44d['visible']],[_0x2385ad(0x209),_0x5cdd75[_0x2385ad(0x209)],_0x22c44d[_0x2385ad(0x209)]]];for(const [_0x8fbdb3,_0x461945,_0x297a18]of _0x432ce3){if(_0x461945!==_0x297a18)throw menuError(_0x2385ad(0x20c),_0x2385ad(0x19f)+_0x5cdd75['id']+_0x2385ad(0x210)+_0x8fbdb3+'.',_0x2385ad(0x1d8));}if(!_0x5cdd75[_0x2385ad(0x1e9)][_0x2385ad(0x206)]()||_0x1389b8!==null&&_0x5cdd75['path']!==_0x1389b8)throw menuError('menu_verification_failed','Created\x20menu\x20'+_0x5cdd75['id']+_0x2385ad(0x1ca),_0x2385ad(0x1d8));}function creationSuccess(_0x3153f9,_0x3db5a9,_0x387688,_0x459bb0){const _0x54930a=a109_0x38b90c,_0x29013b=mutationResult({..._0x3153f9,'after':_0x387688,'dryRun':![],'succeeded':[{'id':_0x387688['id'],'created':!![],'recovered':_0x459bb0}],'verification':{'checkedBy':_0x54930a(0x1bd),'snapshotHash':_0x3db5a9['hash'],'targetId':_0x387688['id'],'recovered':_0x459bb0,'path':_0x387688[_0x54930a(0x1e9)]}});return{'ok':!![],'message':_0x459bb0?_0x54930a(0x200)+_0x387688['id']+_0x54930a(0x195):'Created\x20external\x20menu\x20'+_0x387688['id']+'.','data':{..._0x29013b,'recovered':_0x459bb0}};}function externalLinkCreateFailure(_0x32851c,_0x491d8a,_0x47d033){const _0x46484e=a109_0x38b90c;return menuFailure(safeMenuAddError(_0x32851c),redactFailurePlan(_0x491d8a),{..._0x47d033,'succeeded':_0x47d033[_0x46484e(0x18a)]?.[_0x46484e(0x1e2)](redactFailureRecord),'failed':_0x47d033[_0x46484e(0x212)]?redactFailureRecord(_0x47d033['failed']):undefined,'verification':_0x47d033[_0x46484e(0x1d2)]?redactFailureRecord(_0x47d033[_0x46484e(0x1d2)]):undefined,'after':_0x47d033[_0x46484e(0x1d4)]===undefined?undefined:redactFailureValue(_0x47d033['after'])});}function redactFailurePlan(_0x4f5781){const _0xb24a66=a109_0x38b90c;return{..._0x4f5781,'selector':redactFailureRecord(_0x4f5781[_0xb24a66(0x1ad)]),'before':redactFailureValue(_0x4f5781['before']),'after':redactFailureValue(_0x4f5781[_0xb24a66(0x1d4)]),'plannedActions':_0x4f5781[_0xb24a66(0x1b5)]?.[_0xb24a66(0x1e2)](_0x3a2b14=>({..._0x3a2b14,'body':redactFailureRecord(_0x3a2b14[_0xb24a66(0x18c)])})),'succeeded':_0x4f5781[_0xb24a66(0x18a)]['map'](redactFailureRecord),'failed':_0x4f5781[_0xb24a66(0x212)][_0xb24a66(0x1e2)](redactFailureRecord),'verification':_0x4f5781[_0xb24a66(0x1d2)]?redactFailureRecord(_0x4f5781[_0xb24a66(0x1d2)]):undefined};}function redactFailureRecord(_0x3a8661){return redactFailureValue(_0x3a8661);}function redactFailureValue(_0x43f97b,_0x22b39=''){const _0x1dd6b5=a109_0x38b90c,_0x5ecb1b=_0x22b39[_0x1dd6b5(0x1c9)]()[_0x1dd6b5(0x1de)](/[^a-z0-9]/g,'');if([_0x1dd6b5(0x1c1),_0x1dd6b5(0x1ae),_0x1dd6b5(0x1b6),_0x1dd6b5(0x1b8)][_0x1dd6b5(0x1e6)](_0x5ecb1b))return'<redacted>';if(Array[_0x1dd6b5(0x1b1)](_0x43f97b))return _0x43f97b[_0x1dd6b5(0x1e2)](_0x3bfd7c=>redactFailureValue(_0x3bfd7c));if(_0x43f97b&&typeof _0x43f97b==='object')return Object[_0x1dd6b5(0x20e)](Object[_0x1dd6b5(0x1fe)](_0x43f97b)[_0x1dd6b5(0x1e2)](([_0x5e2ce3,_0x457728])=>[_0x5e2ce3,redactFailureValue(_0x457728,_0x5e2ce3)]));return _0x43f97b;}function safeMenuAddError(_0x3a6a3d){const _0x45aa3d=a109_0x38b90c,_0x179e12=_0x3a6a3d instanceof CliError?_0x3a6a3d[_0x45aa3d(0x1dd)]:_0x45aa3d(0x184);switch(_0x179e12){case'menu_state_drift':return menuError(_0x179e12,'Online\x20menu\x20state\x20changed\x20before\x20external\x20menu\x20creation.',_0x45aa3d(0x1cd));case _0x45aa3d(0x1d6):return menuError(_0x179e12,_0x45aa3d(0x194),_0x45aa3d(0x1b0));case _0x45aa3d(0x1bc):return menuError(_0x179e12,'Menu\x20create\x20response\x20could\x20not\x20be\x20verified\x20safely.',_0x45aa3d(0x1d0));case _0x45aa3d(0x20c):return menuError(_0x179e12,_0x45aa3d(0x20d),_0x45aa3d(0x1d0));case'menu_create_recovery_required':return menuError(_0x179e12,_0x45aa3d(0x191),'Use\x20the\x20structured\x20verification\x20lookup\x20command\x20and\x20do\x20not\x20retry\x20blindly.');case _0x45aa3d(0x184):case'menu_not_found':case _0x45aa3d(0x1c4):case _0x45aa3d(0x208):case _0x45aa3d(0x1f5):return menuError(_0x179e12,'External\x20menu\x20creation\x20failed.',_0x45aa3d(0x1f4));default:return menuError(_0x45aa3d(0x184),_0x45aa3d(0x18d),'Inspect\x20current\x20menu\x20facts\x20before\x20retrying.');}}function getFailureRecord(_0x7c9f12){const _0x426256=a109_0x38b90c;if(!(_0x7c9f12 instanceof Error)||!('data'in _0x7c9f12))return undefined;const _0x3b4a6f=_0x7c9f12[_0x426256(0x1df)];if(!_0x3b4a6f||typeof _0x3b4a6f!==_0x426256(0x1f9))return undefined;const _0x3c7d1c=_0x3b4a6f[_0x426256(0x212)];if(!Array[_0x426256(0x1b1)](_0x3c7d1c)||!_0x3c7d1c[0x0]||typeof _0x3c7d1c[0x0]!=='object')return undefined;return _0x3c7d1c[0x0];}
@@ -1 +1 @@
1
- const a110_0x1cf5d4=a110_0x1325;(function(_0x57b5fd,_0x552002){const _0x4a0f99=a110_0x1325,_0xe1a1e8=_0x57b5fd();while(!![]){try{const _0x1305ee=parseInt(_0x4a0f99(0x19b))/0x1*(parseInt(_0x4a0f99(0x198))/0x2)+parseInt(_0x4a0f99(0x15d))/0x3*(-parseInt(_0x4a0f99(0x178))/0x4)+-parseInt(_0x4a0f99(0x18f))/0x5*(parseInt(_0x4a0f99(0x194))/0x6)+-parseInt(_0x4a0f99(0x18d))/0x7+-parseInt(_0x4a0f99(0x19f))/0x8+-parseInt(_0x4a0f99(0x1a8))/0x9*(parseInt(_0x4a0f99(0x165))/0xa)+parseInt(_0x4a0f99(0x16d))/0xb*(parseInt(_0x4a0f99(0x172))/0xc);if(_0x1305ee===_0x552002)break;else _0xe1a1e8['push'](_0xe1a1e8['shift']());}catch(_0x27ce1e){_0xe1a1e8['push'](_0xe1a1e8['shift']());}}}(a110_0x3966,0x285f9));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';import{updateMenuEntity}from'../../commands/menu/shared/service.js';function a110_0x3966(){const _0x2c5413=['requestedUrlObserved','hash','url','20IAxZGE','\x20parent\x20changed:\x20expected\x20','childrenCount','menu','verify\x20external\x20menu\x20URL\x20update','byId','Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.','iframe','9522326kvCsGF','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','\x20URL\x20update\x20did\x20not\x20take\x20effect.','link','menu_state_drift','12BuwRCP','update','external-link-update','update-recovery','visible','POST','16BGOXVZ','readbackFailed','Menu\x20','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','Updated\x20external\x20URL\x20for\x20menu\x20','\x20--format\x20compress','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','expect-parent-id','Run\x20','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','menu_external_link_not_leaf','appCode','\x20could\x20not\x20be\x20verified\x20safely','path','update\x20external\x20menu\x20URL','The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.','high-risk-write','\x20has\x20an\x20empty\x20platform\x20path.','flagMissing','168rMYHJb','Response\x20was\x20lost\x20and\x20menu\x20','5Fvypwn','failed','\x22,\x20not\x20iframe\x20or\x20link.','menu_external_link_path_missing','str','1828578UrYzlI','replace','trim','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','2ZpCZsH','expect-url','cookie','56506WOQDLu','New\x20external\x20HTTPS\x20URL','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','Update\x20request\x20for\x20menu\x20','2168016wqMbUk','unknown','/smartapi/menu/update','parentId','type','\x20direct\x20child\x20menu(s).','menu\x20list','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','menu_permission_denied','531189ucHeUj','label','rabetbase\x20menu\x20list\x20--appcode\x20','Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.','get','plan','\x20already\x20matches\x20the\x20requested\x20URL.','\x20changed\x20during\x20the\x20URL-only\x20update.','sort','string','The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','\x20has\x20','47229hfYrsa','body','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','menu_external_link_type_required','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.'];a110_0x3966=function(){return _0x2c5413;};return a110_0x3966();}import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a110_0x1cf5d4(0x177),'path':'/smartapi/menu/update'}];export const menuExternalLinkUpdate={'service':a110_0x1cf5d4(0x168),'command':a110_0x1cf5d4(0x174),'description':a110_0x1cf5d4(0x17c),'risk':a110_0x1cf5d4(0x18a),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'url','type':'string','required':!![],'description':a110_0x1cf5d4(0x19c)},{'name':'expect-url','type':a110_0x1cf5d4(0x15a),'required':!![],'description':a110_0x1cf5d4(0x183)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3e6fe3){validateInput(_0x3e6fe3),requireExplicitYes(_0x3e6fe3);},async 'dryRun'(_0x30c186){const _0x548b18=a110_0x1cf5d4;validateInput(_0x30c186);const _0x1c87d5=await buildPlan(_0x30c186,!![]);return menuDryRunResult(_0x1c87d5[_0x548b18(0x156)],{'method':'POST','url':'/smartapi/menu/update','body':_0x1c87d5[_0x548b18(0x15e)],'description':_0x548b18(0x15f)+_0x1c87d5[_0x548b18(0x15e)]['id']+'.'});},async 'execute'(_0x4fc63b){const _0x3cee82=a110_0x1cf5d4;validateInput(_0x4fc63b),requireExplicitYes(_0x4fc63b);const _0x1a05fb=await buildPlan(_0x4fc63b,![]),{plan:_0x581522,body:_0x479038,before:_0x208799,noChanges:_0x85f44}=_0x1a05fb,_0x51f8f7=_0x479038['id'];if(_0x85f44)return updateSuccess(_0x581522,_0x1a05fb['snapshot'],_0x208799,!![],![]);await recheckMutationSnapshot(_0x4fc63b,_0x581522,'update\x20external\x20menu\x20URL',_0x51f8f7);try{await updateMenuEntity(_0x4fc63b[_0x3cee82(0x185)],_0x4fc63b[_0x3cee82(0x19a)],{'id':_0x479038['id'],'url':_0x479038['url']});}catch(_0x12a42e){const _0x593f66=mapMenuApiError(_0x12a42e,'update\x20external\x20menu\x20URL',_0x51f8f7);if(isMenuResponseLoss(_0x12a42e)&&_0x593f66['code']!==_0x3cee82(0x1a7))return recoverAfterResponseLoss(_0x4fc63b,_0x1a05fb);throw menuFailure(_0x593f66,_0x581522,{'stage':_0x3cee82(0x173),'failed':{'id':_0x51f8f7},'warnings':[_0x3cee82(0x19d)],'verification':{'status':_0x3cee82(0x190),'targetId':_0x51f8f7,'lookupCommand':buildLookupCommand(_0x4fc63b[_0x3cee82(0x185)])}});}let _0x2a4e43,_0x25d18a;try{_0x2a4e43=await fetchMenuSnapshot(_0x4fc63b[_0x3cee82(0x185)],_0x4fc63b[_0x3cee82(0x19a)]),_0x25d18a=requireMenu(_0x2a4e43,_0x51f8f7),verifyUpdatedFact(_0x208799,_0x25d18a,_0x479038[_0x3cee82(0x164)]);}catch(_0x1d421e){const _0x568902=describeMenuErrorCause(_0x1d421e,_0x3cee82(0x169),_0x51f8f7),_0x1bf9a8=asVerificationError(_0x1d421e,_0x3cee82(0x19e)+_0x51f8f7+_0x3cee82(0x1a6));throw menuFailure(_0x1bf9a8,_0x581522,{'stage':'verification','succeeded':[{'id':_0x51f8f7,'updateRequested':!![]}],'failed':{'id':_0x51f8f7,'requestedStateConfirmed':![],..._0x568902},'warnings':['The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x51f8f7,'lookupCommand':buildLookupCommand(_0x4fc63b[_0x3cee82(0x185)])}});}return updateSuccess(_0x581522,_0x2a4e43,_0x25d18a,![],![]);}};function validateInput(_0x26a1c1){const _0x5ba20a=a110_0x1cf5d4;validateExactId(_0x26a1c1),requiredUrl(_0x26a1c1,_0x5ba20a(0x164)),requiredExpectedUrl(_0x26a1c1),parseParentId(_0x26a1c1,_0x5ba20a(0x181),{'required':!![]});}function a110_0x1325(_0x8ed3b1,_0x3142e2){_0x8ed3b1=_0x8ed3b1-0x156;const _0x396662=a110_0x3966();let _0x1325ea=_0x396662[_0x8ed3b1];return _0x1325ea;}function requiredUrl(_0x29cf06,_0x152ba3){const _0x33ec04=a110_0x1cf5d4;if(!hasFlag(_0x29cf06,_0x152ba3)||!_0x29cf06['str'](_0x152ba3)[_0x33ec04(0x196)]())throw CliErrors[_0x33ec04(0x18c)](_0x152ba3);return validateExternalMenuUrl(_0x29cf06['str'](_0x152ba3));}function requiredExpectedUrl(_0x3ac277){const _0x5eb8dd=a110_0x1cf5d4;if(!hasFlag(_0x3ac277,_0x5eb8dd(0x199))||!_0x3ac277['str'](_0x5eb8dd(0x199))[_0x5eb8dd(0x196)]())throw CliErrors[_0x5eb8dd(0x18c)](_0x5eb8dd(0x199));return _0x3ac277[_0x5eb8dd(0x193)](_0x5eb8dd(0x199))['trim']();}async function buildPlan(_0x544f21,_0x18281a){const _0x383dba=a110_0x1cf5d4,_0x4ea727=validateExactId(_0x544f21),_0x1526ea=requiredUrl(_0x544f21,_0x383dba(0x164)),_0x444b1d=requiredExpectedUrl(_0x544f21),_0xc88ca3=parseParentId(_0x544f21,'expect-parent-id',{'required':!![]}),_0x4a2d13=await fetchMutationSnapshot(_0x544f21,_0x383dba(0x188),_0x4ea727),_0x38e487=requireMenu(_0x4a2d13,_0x4ea727);assertExternalLinkLeaf(_0x38e487);if(_0x38e487[_0x383dba(0x1a2)]!==_0xc88ca3)throw menuError(_0x383dba(0x171),'Menu\x20'+_0x4ea727+_0x383dba(0x166)+formatParent(_0xc88ca3)+',\x20current\x20'+formatParent(_0x38e487[_0x383dba(0x1a2)])+'.',_0x383dba(0x17f));const _0x16f3f5=_0x38e487[_0x383dba(0x164)]===_0x1526ea;if(!_0x16f3f5&&_0x38e487[_0x383dba(0x164)]!==_0x444b1d)throw menuError(_0x383dba(0x171),'Menu\x20'+_0x4ea727+_0x383dba(0x16e),_0x383dba(0x161));const _0x50f02a={'id':_0x4ea727,'appCode':_0x544f21[_0x383dba(0x185)],'url':_0x1526ea},_0x30116e={..._0x38e487,'url':_0x1526ea};return{'body':_0x50f02a,'before':_0x38e487,'noChanges':_0x16f3f5,'snapshot':_0x4a2d13,'plan':mutationResult({'operation':_0x383dba(0x174),'selector':{'id':_0x4ea727},'before':_0x38e487,'after':_0x30116e,'dryRun':_0x18281a,'backend':[...BACKEND],'plannedActions':_0x16f3f5?[]:[{'stage':'update-external-link-url','method':_0x383dba(0x177),'path':_0x383dba(0x1a1),'body':_0x50f02a}],'snapshotHash':_0x4a2d13[_0x383dba(0x163)],'warnings':_0x16f3f5?[_0x383dba(0x189)]:[]})};}function assertExternalLinkLeaf(_0x4f5184){const _0x4dac6f=a110_0x1cf5d4;if(_0x4f5184[_0x4dac6f(0x1a3)]!==_0x4dac6f(0x16c)&&_0x4f5184[_0x4dac6f(0x1a3)]!==_0x4dac6f(0x170))throw menuError(_0x4dac6f(0x160),_0x4dac6f(0x17a)+_0x4f5184['id']+'\x20is\x20type\x20\x22'+(_0x4f5184[_0x4dac6f(0x1a3)]||_0x4dac6f(0x1a0))+_0x4dac6f(0x191),_0x4dac6f(0x16b));if(_0x4f5184['childrenCount']!==0x0)throw menuError(_0x4dac6f(0x184),_0x4dac6f(0x17a)+_0x4f5184['id']+_0x4dac6f(0x15c)+_0x4f5184[_0x4dac6f(0x167)]+_0x4dac6f(0x1a4),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x4f5184['path'][_0x4dac6f(0x196)]())throw menuError(_0x4dac6f(0x192),_0x4dac6f(0x17a)+_0x4f5184['id']+_0x4dac6f(0x18b),_0x4dac6f(0x1ab));}function verifyUpdatedFact(_0x585b1c,_0x264e65,_0x12f2da){const _0x5a5cb5=a110_0x1cf5d4;assertExternalLinkLeaf(_0x264e65);const _0x44ac68=[['id',_0x264e65['id'],_0x585b1c['id']],[_0x5a5cb5(0x1a9),_0x264e65['label'],_0x585b1c['label']],[_0x5a5cb5(0x1a3),_0x264e65[_0x5a5cb5(0x1a3)],_0x585b1c['type']],['path',_0x264e65[_0x5a5cb5(0x187)],_0x585b1c[_0x5a5cb5(0x187)]],[_0x5a5cb5(0x1a2),_0x264e65[_0x5a5cb5(0x1a2)],_0x585b1c['parentId']],['sort',_0x264e65[_0x5a5cb5(0x159)],_0x585b1c[_0x5a5cb5(0x159)]],[_0x5a5cb5(0x176),_0x264e65[_0x5a5cb5(0x176)],_0x585b1c['visible']]];for(const [_0x28b2be,_0x2a2126,_0x200071]of _0x44ac68){assertVerified(_0x2a2126===_0x200071,_0x5a5cb5(0x17a)+_0x585b1c['id']+'\x20'+_0x28b2be+_0x5a5cb5(0x158));}assertVerified(_0x264e65[_0x5a5cb5(0x164)]===_0x12f2da,_0x5a5cb5(0x17a)+_0x585b1c['id']+_0x5a5cb5(0x16f));}function updateSuccess(_0x4675cf,_0x2594c4,_0x44fdc9,_0x1e0980,_0x2c134b){const _0x4a0312=a110_0x1cf5d4,_0x14e0b9=_0x44fdc9['id'],_0x2651a7=mutationResult({..._0x4675cf,'after':_0x44fdc9,'dryRun':![],'succeeded':[{'id':_0x14e0b9,'updated':!_0x1e0980,'skipped':_0x1e0980,'recovered':_0x2c134b}],'verification':{'checkedBy':_0x4a0312(0x1a5),'snapshotHash':_0x2594c4[_0x4a0312(0x163)],'targetId':_0x14e0b9,'matchesRequestedState':!![],'recovered':_0x2c134b}});return{'ok':!![],'message':_0x2c134b?_0x4a0312(0x17b)+_0x14e0b9+'.':_0x1e0980?_0x4a0312(0x17a)+_0x14e0b9+_0x4a0312(0x157):_0x4a0312(0x17d)+_0x14e0b9+'.','data':{..._0x2651a7,'recovered':_0x2c134b}};}async function recoverAfterResponseLoss(_0x20f337,_0xcb6a39){const _0x222af2=a110_0x1cf5d4,{plan:_0x4f0560,before:_0x368adc,body:_0xc8fb84}=_0xcb6a39;let _0x2c3c6f;try{_0x2c3c6f=await fetchMenuSnapshot(_0x20f337[_0x222af2(0x185)],_0x20f337[_0x222af2(0x19a)]);}catch{throw recoveryRequired(_0x4f0560,_0x20f337['appCode'],{'id':_0xc8fb84['id'],'readbackFailed':!![]});}const _0x3e10fd=_0x2c3c6f[_0x222af2(0x16a)][_0x222af2(0x1ac)](_0xc8fb84['id']);if(!_0x3e10fd||_0x3e10fd['url']!==_0xc8fb84[_0x222af2(0x164)])throw recoveryRequired(_0x4f0560,_0x20f337[_0x222af2(0x185)],{'id':_0xc8fb84['id'],'requestedUrlObserved':![],'after':_0x3e10fd??null});try{verifyUpdatedFact(_0x368adc,_0x3e10fd,_0xc8fb84['url']);}catch(_0x47a80e){const _0x497622=asVerificationError(_0x47a80e,_0x222af2(0x18e)+_0xc8fb84['id']+_0x222af2(0x186));throw menuFailure(_0x497622,_0x4f0560,{'stage':_0x222af2(0x175),'succeeded':[{'id':_0xc8fb84['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0xc8fb84['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x3e10fd,'warnings':[_0x222af2(0x180)],'verification':{'status':_0x222af2(0x190),'targetId':_0xc8fb84['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x20f337[_0x222af2(0x185)])}});}return updateSuccess(_0x4f0560,_0x2c3c6f,_0x3e10fd,![],!![]);}function recoveryRequired(_0x508373,_0x5325d6,_0x4b5fb7){const _0xe01ca9=a110_0x1cf5d4,_0x4a3f65=menuError('menu_update_recovery_required',_0xe01ca9(0x15b),_0xe01ca9(0x182)+buildLookupCommand(_0x5325d6)+_0xe01ca9(0x197));return menuFailure(_0x4a3f65,_0x508373,{'stage':'update-recovery','failed':{'id':_0x4b5fb7['id'],..._0x4b5fb7[_0xe01ca9(0x162)]===undefined?{}:{'requestedUrlObserved':_0x4b5fb7[_0xe01ca9(0x162)]},..._0x4b5fb7[_0xe01ca9(0x179)]?{'readbackFailed':!![]}:{}},'after':_0x4b5fb7['after'],'warnings':['The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.'],'verification':{'status':_0xe01ca9(0x190),'targetId':_0x4b5fb7['id'],..._0x4b5fb7[_0xe01ca9(0x162)]===undefined?{}:{'requestedUrlObserved':_0x4b5fb7[_0xe01ca9(0x162)]},..._0x4b5fb7[_0xe01ca9(0x179)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x5325d6)}});}function buildLookupCommand(_0x2e298e){const _0x4a9cb0=a110_0x1cf5d4,_0x298a42='\x27'+_0x2e298e[_0x4a9cb0(0x195)](/'/g,'\x27\x5c\x27\x27')+'\x27';return _0x4a9cb0(0x1aa)+_0x298a42+_0x4a9cb0(0x17e);}
1
+ const a110_0x2568f9=a110_0x11fa;(function(_0x3b98a1,_0x124b8a){const _0x551908=a110_0x11fa,_0x40356f=_0x3b98a1();while(!![]){try{const _0x342ed7=parseInt(_0x551908(0x18b))/0x1*(-parseInt(_0x551908(0x18a))/0x2)+parseInt(_0x551908(0x17e))/0x3*(parseInt(_0x551908(0x1b2))/0x4)+parseInt(_0x551908(0x1cc))/0x5+-parseInt(_0x551908(0x1b5))/0x6+-parseInt(_0x551908(0x1c9))/0x7*(parseInt(_0x551908(0x1aa))/0x8)+parseInt(_0x551908(0x19d))/0x9+parseInt(_0x551908(0x19e))/0xa*(parseInt(_0x551908(0x1a3))/0xb);if(_0x342ed7===_0x124b8a)break;else _0x40356f['push'](_0x40356f['shift']());}catch(_0x36af96){_0x40356f['push'](_0x40356f['shift']());}}}(a110_0x332d,0xaee96));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';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a110_0x2568f9(0x1c1)}];export const menuExternalLinkUpdate={'service':a110_0x2568f9(0x1b6),'command':a110_0x2568f9(0x1a6),'description':a110_0x2568f9(0x1bc),'risk':a110_0x2568f9(0x1c3),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a110_0x2568f9(0x1af),'type':a110_0x2568f9(0x1be),'required':!![],'description':a110_0x2568f9(0x1a5)},{'name':a110_0x2568f9(0x1a0),'type':a110_0x2568f9(0x1be),'required':!![],'description':a110_0x2568f9(0x187)},{...MENU_EXPECT_PARENT_ID_FLAG,'required':!![]},APPCODE_FLAG_OPTIONAL],async 'validate'(_0xff6ea6){validateInput(_0xff6ea6),requireExplicitYes(_0xff6ea6);},async 'dryRun'(_0x47dbed){const _0x44473a=a110_0x2568f9;validateInput(_0x47dbed);const _0x532b2e=await buildPlan(_0x47dbed,!![]);return menuDryRunResult(_0x532b2e[_0x44473a(0x1b1)],{'method':_0x44473a(0x1b0),'url':_0x44473a(0x1c1),'body':_0x532b2e[_0x44473a(0x194)],'description':_0x44473a(0x1bf)+_0x532b2e[_0x44473a(0x194)]['id']+'.'});},async 'execute'(_0x5498a0){const _0x5815de=a110_0x2568f9;validateInput(_0x5498a0),requireExplicitYes(_0x5498a0);const _0x2482e0=await buildPlan(_0x5498a0,![]),{plan:_0x348880,body:_0x2ea69b,before:_0x5ea131,noChanges:_0x3fc66f}=_0x2482e0,_0xc7340c=_0x2ea69b['id'];if(_0x3fc66f)return updateSuccess(_0x348880,_0x2482e0[_0x5815de(0x188)],_0x5ea131,!![],![]);await recheckMutationSnapshot(_0x5498a0,_0x348880,_0x5815de(0x185),_0xc7340c);try{await updateMenuEntity(_0x5498a0['appCode'],_0x5498a0['cookie'],{'id':_0x2ea69b['id'],'url':_0x2ea69b[_0x5815de(0x1af)]});}catch(_0x253599){const _0x15396a=mapMenuApiError(_0x253599,_0x5815de(0x185),_0xc7340c);if(isMenuResponseLoss(_0x253599)&&_0x15396a[_0x5815de(0x1c2)]!=='menu_permission_denied')return recoverAfterResponseLoss(_0x5498a0,_0x2482e0);throw menuFailure(_0x15396a,_0x348880,{'stage':_0x5815de(0x1a9),'failed':{'id':_0xc7340c},'warnings':[_0x5815de(0x1a8)],'verification':{'status':_0x5815de(0x1a1),'targetId':_0xc7340c,'lookupCommand':buildLookupCommand(_0x5498a0[_0x5815de(0x192)])}});}let _0x5657e8,_0x550fba;try{_0x5657e8=await fetchMenuSnapshot(_0x5498a0[_0x5815de(0x192)],_0x5498a0[_0x5815de(0x199)]),_0x550fba=requireMenu(_0x5657e8,_0xc7340c),verifyUpdatedFact(_0x5ea131,_0x550fba,_0x2ea69b['url']);}catch(_0x2cbeb1){const _0x14638a=describeMenuErrorCause(_0x2cbeb1,_0x5815de(0x197),_0xc7340c),_0x4ce913=asVerificationError(_0x2cbeb1,_0x5815de(0x18f)+_0xc7340c+'\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state');throw menuFailure(_0x4ce913,_0x348880,{'stage':_0x5815de(0x1ab),'succeeded':[{'id':_0xc7340c,'updateRequested':!![]}],'failed':{'id':_0xc7340c,'requestedStateConfirmed':![],..._0x14638a},'warnings':[_0x5815de(0x19f)],'verification':{'status':'failed','targetId':_0xc7340c,'lookupCommand':buildLookupCommand(_0x5498a0['appCode'])}});}return updateSuccess(_0x348880,_0x5657e8,_0x550fba,![],![]);}};function validateInput(_0x2bcb07){const _0x5ef05a=a110_0x2568f9;validateExactId(_0x2bcb07),requiredUrl(_0x2bcb07,_0x5ef05a(0x1af)),requiredExpectedUrl(_0x2bcb07),parseParentId(_0x2bcb07,_0x5ef05a(0x1ca),{'required':!![]});}function requiredUrl(_0x49babe,_0xbd2d76){const _0x3c93ce=a110_0x2568f9;if(!hasFlag(_0x49babe,_0xbd2d76)||!_0x49babe[_0x3c93ce(0x1b9)](_0xbd2d76)[_0x3c93ce(0x198)]())throw CliErrors['flagMissing'](_0xbd2d76);return validateExternalMenuUrl(_0x49babe[_0x3c93ce(0x1b9)](_0xbd2d76));}function requiredExpectedUrl(_0x28bf11){const _0x8eecd8=a110_0x2568f9;if(!hasFlag(_0x28bf11,'expect-url')||!_0x28bf11[_0x8eecd8(0x1b9)](_0x8eecd8(0x1a0))[_0x8eecd8(0x198)]())throw CliErrors[_0x8eecd8(0x195)](_0x8eecd8(0x1a0));return _0x28bf11['str'](_0x8eecd8(0x1a0))[_0x8eecd8(0x198)]();}function a110_0x11fa(_0x428e2f,_0x4cc80c){_0x428e2f=_0x428e2f-0x17e;const _0x332db6=a110_0x332d();let _0x11fa74=_0x332db6[_0x428e2f];return _0x11fa74;}async function buildPlan(_0x29a16c,_0x1549bd){const _0x660b48=a110_0x2568f9,_0x3d195d=validateExactId(_0x29a16c),_0x50c111=requiredUrl(_0x29a16c,'url'),_0xb0be4=requiredExpectedUrl(_0x29a16c),_0x4dddad=parseParentId(_0x29a16c,_0x660b48(0x1ca),{'required':!![]}),_0x284d1a=await fetchMutationSnapshot(_0x29a16c,_0x660b48(0x185),_0x3d195d),_0x4c196d=requireMenu(_0x284d1a,_0x3d195d);assertExternalLinkLeaf(_0x4c196d);if(_0x4c196d[_0x660b48(0x183)]!==_0x4dddad)throw menuError('menu_state_drift','Menu\x20'+_0x3d195d+_0x660b48(0x1c6)+formatParent(_0x4dddad)+_0x660b48(0x1b3)+formatParent(_0x4c196d['parentId'])+'.',_0x660b48(0x184));const _0x10c7af=_0x4c196d[_0x660b48(0x1af)]===_0x50c111;if(!_0x10c7af&&_0x4c196d[_0x660b48(0x1af)]!==_0xb0be4)throw menuError('menu_state_drift',_0x660b48(0x17f)+_0x3d195d+_0x660b48(0x1cb),_0x660b48(0x196));const _0x161a44={'id':_0x3d195d,'appCode':_0x29a16c['appCode'],'url':_0x50c111},_0x344618={..._0x4c196d,'url':_0x50c111};return{'body':_0x161a44,'before':_0x4c196d,'noChanges':_0x10c7af,'snapshot':_0x284d1a,'plan':mutationResult({'operation':_0x660b48(0x1a6),'selector':{'id':_0x3d195d},'before':_0x4c196d,'after':_0x344618,'dryRun':_0x1549bd,'backend':[...BACKEND],'plannedActions':_0x10c7af?[]:[{'stage':_0x660b48(0x1c0),'method':_0x660b48(0x1b0),'path':_0x660b48(0x1c1),'body':_0x161a44}],'snapshotHash':_0x284d1a[_0x660b48(0x1c5)],'warnings':_0x10c7af?['The\x20menu\x20already\x20has\x20the\x20requested\x20URL;\x20no\x20write\x20is\x20needed.']:[]})};}function assertExternalLinkLeaf(_0x38af72){const _0x5eacf3=a110_0x2568f9;if(_0x38af72[_0x5eacf3(0x18c)]!=='iframe'&&_0x38af72[_0x5eacf3(0x18c)]!=='link')throw menuError('menu_external_link_type_required','Menu\x20'+_0x38af72['id']+'\x20is\x20type\x20\x22'+(_0x38af72[_0x5eacf3(0x18c)]||_0x5eacf3(0x189))+_0x5eacf3(0x186),'Choose\x20the\x20exact\x20id\x20of\x20an\x20existing\x20iframe\x20or\x20link\x20menu.');if(_0x38af72[_0x5eacf3(0x1c7)]!==0x0)throw menuError(_0x5eacf3(0x1a2),_0x5eacf3(0x17f)+_0x38af72['id']+'\x20has\x20'+_0x38af72[_0x5eacf3(0x1c7)]+_0x5eacf3(0x1cd),'External\x20link\x20URL\x20updates\x20are\x20limited\x20to\x20leaf\x20menus.');if(!_0x38af72['path'][_0x5eacf3(0x198)]())throw menuError('menu_external_link_path_missing',_0x5eacf3(0x17f)+_0x38af72['id']+_0x5eacf3(0x1c8),'Repair\x20the\x20menu\x20record\x20before\x20attempting\x20a\x20URL-only\x20update.');}function verifyUpdatedFact(_0x3a5865,_0x15845b,_0x164397){const _0x1e47b5=a110_0x2568f9;assertExternalLinkLeaf(_0x15845b);const _0x417dd8=[['id',_0x15845b['id'],_0x3a5865['id']],['label',_0x15845b['label'],_0x3a5865['label']],[_0x1e47b5(0x18c),_0x15845b[_0x1e47b5(0x18c)],_0x3a5865['type']],[_0x1e47b5(0x19b),_0x15845b[_0x1e47b5(0x19b)],_0x3a5865['path']],[_0x1e47b5(0x183),_0x15845b[_0x1e47b5(0x183)],_0x3a5865[_0x1e47b5(0x183)]],[_0x1e47b5(0x19a),_0x15845b[_0x1e47b5(0x19a)],_0x3a5865[_0x1e47b5(0x19a)]],[_0x1e47b5(0x1ae),_0x15845b['visible'],_0x3a5865['visible']]];for(const [_0x3bcd60,_0x5c3ea5,_0xf21f7]of _0x417dd8){assertVerified(_0x5c3ea5===_0xf21f7,_0x1e47b5(0x17f)+_0x3a5865['id']+'\x20'+_0x3bcd60+_0x1e47b5(0x1c4));}assertVerified(_0x15845b['url']===_0x164397,'Menu\x20'+_0x3a5865['id']+'\x20URL\x20update\x20did\x20not\x20take\x20effect.');}function updateSuccess(_0xf14558,_0xa7a1db,_0x51b396,_0x256af3,_0x1f0311){const _0x59cc3e=a110_0x2568f9,_0x35b711=_0x51b396['id'],_0x561438=mutationResult({..._0xf14558,'after':_0x51b396,'dryRun':![],'succeeded':[{'id':_0x35b711,'updated':!_0x256af3,'skipped':_0x256af3,'recovered':_0x1f0311}],'verification':{'checkedBy':_0x59cc3e(0x191),'snapshotHash':_0xa7a1db[_0x59cc3e(0x1c5)],'targetId':_0x35b711,'matchesRequestedState':!![],'recovered':_0x1f0311}});return{'ok':!![],'message':_0x1f0311?_0x59cc3e(0x190)+_0x35b711+'.':_0x256af3?'Menu\x20'+_0x35b711+_0x59cc3e(0x1bb):_0x59cc3e(0x1ad)+_0x35b711+'.','data':{..._0x561438,'recovered':_0x1f0311}};}async function recoverAfterResponseLoss(_0x5697c4,_0x56dbd1){const _0x2d06c2=a110_0x2568f9,{plan:_0x2261f4,before:_0x3f6758,body:_0x43d11a}=_0x56dbd1;let _0x42ee0b;try{_0x42ee0b=await fetchMenuSnapshot(_0x5697c4[_0x2d06c2(0x192)],_0x5697c4[_0x2d06c2(0x199)]);}catch{throw recoveryRequired(_0x2261f4,_0x5697c4[_0x2d06c2(0x192)],{'id':_0x43d11a['id'],'readbackFailed':!![]});}const _0x5e81a7=_0x42ee0b['byId'][_0x2d06c2(0x180)](_0x43d11a['id']);if(!_0x5e81a7||_0x5e81a7[_0x2d06c2(0x1af)]!==_0x43d11a[_0x2d06c2(0x1af)])throw recoveryRequired(_0x2261f4,_0x5697c4['appCode'],{'id':_0x43d11a['id'],'requestedUrlObserved':![],'after':_0x5e81a7??null});try{verifyUpdatedFact(_0x3f6758,_0x5e81a7,_0x43d11a['url']);}catch(_0x5311fa){const _0x4704e2=asVerificationError(_0x5311fa,_0x2d06c2(0x1a7)+_0x43d11a['id']+_0x2d06c2(0x1b7));throw menuFailure(_0x4704e2,_0x2261f4,{'stage':'update-recovery','succeeded':[{'id':_0x43d11a['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x43d11a['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![]},'after':_0x5e81a7,'warnings':[_0x2d06c2(0x1ba)],'verification':{'status':'failed','targetId':_0x43d11a['id'],'requestedUrlObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5697c4['appCode'])}});}return updateSuccess(_0x2261f4,_0x42ee0b,_0x5e81a7,![],!![]);}function recoveryRequired(_0x51ec9a,_0x4909ab,_0x426ee1){const _0x3237a3=a110_0x2568f9,_0xa63624=menuError(_0x3237a3(0x1ac),'The\x20update\x20response\x20was\x20lost\x20and\x20the\x20requested\x20URL\x20cannot\x20be\x20confirmed\x20safely.','Run\x20'+buildLookupCommand(_0x4909ab)+_0x3237a3(0x1a4));return menuFailure(_0xa63624,_0x51ec9a,{'stage':_0x3237a3(0x1b8),'failed':{'id':_0x426ee1['id'],..._0x426ee1[_0x3237a3(0x1bd)]===undefined?{}:{'requestedUrlObserved':_0x426ee1[_0x3237a3(0x1bd)]},..._0x426ee1[_0x3237a3(0x18e)]?{'readbackFailed':!![]}:{}},'after':_0x426ee1[_0x3237a3(0x181)],'warnings':[_0x3237a3(0x182)],'verification':{'status':'failed','targetId':_0x426ee1['id'],..._0x426ee1[_0x3237a3(0x1bd)]===undefined?{}:{'requestedUrlObserved':_0x426ee1[_0x3237a3(0x1bd)]},..._0x426ee1['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x4909ab)}});}function buildLookupCommand(_0x1b84b0){const _0x5ce0de=a110_0x2568f9,_0x5214e2='\x27'+_0x1b84b0[_0x5ce0de(0x1b4)](/'/g,_0x5ce0de(0x19c))+'\x27';return _0x5ce0de(0x193)+_0x5214e2+_0x5ce0de(0x18d);}function a110_0x332d(){const _0x8056b=['2064nqGpet','verification','menu_update_recovery_required','Updated\x20external\x20URL\x20for\x20menu\x20','visible','url','POST','plan','565948UkUwRC',',\x20current\x20','replace','2388798VouPHf','menu','\x20could\x20not\x20be\x20verified\x20safely','update-recovery','str','The\x20requested\x20URL\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','\x20already\x20matches\x20the\x20requested\x20URL.','Update\x20only\x20the\x20URL\x20of\x20one\x20existing\x20iframe\x20or\x20link\x20menu','requestedUrlObserved','string','Would\x20update\x20only\x20the\x20external\x20URL\x20of\x20menu\x20','update-external-link-url','/smartapi/menu/update','code','high-risk-write','\x20changed\x20during\x20the\x20URL-only\x20update.','hash','\x20parent\x20changed:\x20expected\x20','childrenCount','\x20has\x20an\x20empty\x20platform\x20path.','32921KUtzzQ','expect-parent-id','\x20URL\x20no\x20longer\x20matches\x20--expect-url.','4512835icBUrT','\x20direct\x20child\x20menu(s).','6ZeBiUV','Menu\x20','get','after','The\x20update\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','parentId','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-parent-id.','update\x20external\x20menu\x20URL','\x22,\x20not\x20iframe\x20or\x20link.','Abort\x20unless\x20the\x20current\x20URL\x20matches\x20before\x20a\x20write\x20is\x20needed','snapshot','unknown','12910NSiTtO','170DJpcOy','type','\x20--format\x20compress','readbackFailed','Update\x20request\x20for\x20menu\x20','Recovered\x20confirmed\x20external\x20URL\x20update\x20for\x20menu\x20','menu\x20list','appCode','rabetbase\x20menu\x20list\x20--appcode\x20','body','flagMissing','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-url.','verify\x20external\x20menu\x20URL\x20update','trim','cookie','sort','path','\x27\x5c\x27\x27','6709914gFXZZZ','14942080zGmmhJ','The\x20URL\x20update\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','expect-url','failed','menu_external_link_not_leaf','11MTSZvu','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','New\x20external\x20HTTPS\x20URL','external-link-update','Response\x20was\x20lost\x20and\x20menu\x20','The\x20update\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','update'];a110_0x332d=function(){return _0x8056b;};return a110_0x332d();}
@@ -1 +1 @@
1
- const a111_0xce6f3b=a111_0x22b5;(function(_0x2607f6,_0x2c0328){const _0x3982a0=a111_0x22b5,_0x59606a=_0x2607f6();while(!![]){try{const _0x39b10b=parseInt(_0x3982a0(0xf5))/0x1*(parseInt(_0x3982a0(0x12d))/0x2)+-parseInt(_0x3982a0(0xef))/0x3+-parseInt(_0x3982a0(0x125))/0x4*(parseInt(_0x3982a0(0x10f))/0x5)+-parseInt(_0x3982a0(0x11d))/0x6+-parseInt(_0x3982a0(0xf0))/0x7*(-parseInt(_0x3982a0(0x114))/0x8)+parseInt(_0x3982a0(0xfd))/0x9+parseInt(_0x3982a0(0x104))/0xa*(parseInt(_0x3982a0(0x130))/0xb);if(_0x39b10b===_0x2c0328)break;else _0x59606a['push'](_0x59606a['shift']());}catch(_0x52b165){_0x59606a['push'](_0x59606a['shift']());}}}(a111_0x8a53,0x66779));function a111_0x8a53(){const _0x15430b=['appCode','write','\x20is\x20not\x20type\x20folder.','2598948HHgRed','\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.','Would\x20create\x20empty\x20folder\x20\x22','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','failed','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','12805430TJyJtO','path','\x20has\x20unexpected\x20parent\x20','stringify','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','cookie','rabetbase\x20menu\x20list\x20--format\x20json','Menu\x20create\x20response\x20for\x20folder\x20','flagMissing','str','50pUDLRg','string','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','verify\x20folder\x20creation','\x20has\x20an\x20unexpected\x20sort.','491896rIycQa','parentId','folder','create','depth','trim','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','type','menu_create_response_invalid','3742230OrnUUO','\x20is\x20not\x20visible.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','\x20may\x20exist\x20online\x20at\x20path\x20','verification','Created\x20menu\x20folder\x20','sort','parent-id','185116PhAYwr','menu\x20list','POST','label','Created\x20folder\x20','length','Folder\x20label','Created\x20menu\x20','6718BAsQvv','/smartapi/menu/create','Folder\x20','11CRCCki','create\x20folder','get','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','666039xfwGtB','7homAiC','root','\x20is\x20missing\x20from\x20menu\x20list.','create-response-validation','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','29nbzhXo','resources',';\x20verify\x20it\x20before\x20retrying.','hash','\x20has\x20an\x20unexpected\x20label.'];a111_0x8a53=function(){return _0x15430b;};return a111_0x8a53();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a111_0xce6f3b(0x127),'path':a111_0xce6f3b(0x12e)}];function a111_0x22b5(_0x298c12,_0x43b75f){_0x298c12=_0x298c12-0xee;const _0x8a5374=a111_0x8a53();let _0x22b524=_0x8a5374[_0x298c12];return _0x22b524;}export const menuGroupCreate={'service':'menu','command':'group-create','description':a111_0xce6f3b(0xee),'risk':a111_0xce6f3b(0xfb),'structuredErrors':!![],'flags':[{'name':a111_0xce6f3b(0x128),'type':a111_0xce6f3b(0x110),'required':!![],'description':a111_0xce6f3b(0x12b)},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3c1fbb){validateCreateInput(_0x3c1fbb);},async 'dryRun'(_0x4560a8){const _0x18bd56=a111_0xce6f3b,_0x38ba52=await buildCreatePlan(_0x4560a8,!![]),_0x5d1bf1=_0x38ba52['after'];return menuDryRunResult(_0x38ba52,{'method':_0x18bd56(0x127),'url':_0x18bd56(0x12e),'body':{'parentId':toApiParentId(_0x5d1bf1['parentId']),'label':_0x5d1bf1[_0x18bd56(0x128)],'type':_0x18bd56(0x116),'visible':!![],'sort':_0x5d1bf1[_0x18bd56(0x123)],'extend':{}},'description':_0x18bd56(0xff)+String(_0x5d1bf1[_0x18bd56(0x128)])+'\x22\x20with\x20a\x20platform-generated\x20path.'});},async 'execute'(_0x198a23){const _0x41bb3c=a111_0xce6f3b;validateCreateInput(_0x198a23);const _0x5038f7=await buildCreatePlan(_0x198a23,![]),_0x241008=_0x5038f7['after'];await recheckMutationSnapshot(_0x198a23,_0x5038f7,'create\x20folder');let _0x175b38;try{_0x175b38=await createMenuEntity(_0x198a23[_0x41bb3c(0xfa)],_0x198a23[_0x41bb3c(0x10a)],{'parentId':toApiParentId(_0x241008[_0x41bb3c(0x115)]),'label':String(_0x241008['label']),'type':_0x41bb3c(0x116),'visible':!![],'sort':Number(_0x241008['sort']),'extend':{}});}catch(_0x31c7b1){const _0x36eea5=mapMenuApiError(_0x31c7b1,_0x41bb3c(0x131));throw menuFailure(_0x36eea5,_0x5038f7,{'stage':_0x41bb3c(0x117),'failed':{}});}const _0x418b54=Number(_0x175b38['id']);if(!Number['isSafeInteger'](_0x418b54)||_0x418b54<=0x0){const _0x405307=menuError('menu_create_response_invalid','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.',_0x41bb3c(0x103));throw menuFailure(_0x405307,_0x5038f7,{'stage':'create-response-validation','failed':{'createdId':_0x175b38['id']??null},'warnings':[_0x41bb3c(0x11a)],'verification':{'status':_0x41bb3c(0x101),'lookupCommand':_0x41bb3c(0x10b)}});}const _0x196ba6=typeof _0x175b38[_0x41bb3c(0x105)]===_0x41bb3c(0x110)?_0x175b38[_0x41bb3c(0x105)]:'';if(!_0x196ba6['trim']()){const _0x4aa1f6=menuError(_0x41bb3c(0x11c),_0x41bb3c(0x10c)+_0x418b54+_0x41bb3c(0xfe),_0x41bb3c(0x100));throw menuFailure(_0x4aa1f6,_0x5038f7,{'stage':_0x41bb3c(0xf3),'succeeded':[{'id':_0x418b54,'created':!![]}],'failed':{'id':_0x418b54,'generatedPathConfirmed':![]},'warnings':[_0x41bb3c(0x12f)+_0x418b54+_0x41bb3c(0x111)],'after':{..._0x241008,'id':_0x418b54,'path':_0x196ba6},'verification':{'status':'failed','lookupCommand':_0x41bb3c(0x10b),'targetId':_0x418b54}});}let _0x5e583b;try{_0x5e583b=await fetchMenuSnapshot(_0x198a23['appCode'],_0x198a23['cookie']);}catch(_0x1a751d){const _0x40ebb1=describeMenuErrorCause(_0x1a751d,_0x41bb3c(0x112),_0x418b54),_0x69fa81=asVerificationError(_0x1a751d,_0x41bb3c(0x12f)+_0x418b54+_0x41bb3c(0x109));throw menuFailure(_0x69fa81,_0x5038f7,{'stage':'verification','succeeded':[{'id':_0x418b54,'created':!![],'path':_0x196ba6}],'failed':{'id':_0x418b54,'finalFactsConfirmed':![],..._0x40ebb1},'warnings':[_0x41bb3c(0x12f)+_0x418b54+_0x41bb3c(0x120)+JSON[_0x41bb3c(0x107)](_0x196ba6)+_0x41bb3c(0xf7)],'after':{..._0x241008,'id':_0x418b54,'path':_0x196ba6},'verification':{'status':'failed','lookupCommand':_0x41bb3c(0x10b),'targetId':_0x418b54}});}const _0x5cefe8=_0x5e583b['byId'][_0x41bb3c(0x132)](_0x418b54);let _0x113846;try{assertVerified(Boolean(_0x5cefe8),_0x41bb3c(0x129)+_0x418b54+_0x41bb3c(0xf2)),_0x113846=_0x5cefe8,assertVerified(_0x113846[_0x41bb3c(0x11b)]===_0x41bb3c(0x116),_0x41bb3c(0x12c)+_0x418b54+_0x41bb3c(0xfc)),assertVerified(_0x113846[_0x41bb3c(0x128)]===_0x241008['label'],_0x41bb3c(0x129)+_0x418b54+_0x41bb3c(0xf9)),assertVerified(_0x113846['path']===_0x196ba6&&Boolean(_0x113846[_0x41bb3c(0x105)][_0x41bb3c(0x119)]()),'Created\x20folder\x20'+_0x418b54+_0x41bb3c(0x108)),assertVerified(_0x113846['visible']===!![],_0x41bb3c(0x129)+_0x418b54+_0x41bb3c(0x11e)),assertVerified(_0x113846[_0x41bb3c(0xf6)][_0x41bb3c(0x12a)]===0x0,_0x41bb3c(0x129)+_0x418b54+'\x20has\x20resources.'),assertVerified(_0x113846['childrenCount']===0x0,_0x41bb3c(0x129)+_0x418b54+'\x20is\x20not\x20empty.'),assertVerified(_0x113846[_0x41bb3c(0x123)]===_0x241008['sort'],_0x41bb3c(0x129)+_0x418b54+_0x41bb3c(0x113)),assertVerified(_0x113846[_0x41bb3c(0x115)]===_0x241008[_0x41bb3c(0x115)],_0x41bb3c(0x129)+_0x418b54+_0x41bb3c(0x106)+(_0x113846[_0x41bb3c(0x115)]??_0x41bb3c(0xf1))+'.'),assertVerified(_0x113846['pageId']==null,_0x41bb3c(0x129)+_0x418b54+'\x20unexpectedly\x20owns\x20a\x20page.');const _0x4bc507=_0x113846['parentId']==null?undefined:requireFolder(_0x5e583b,_0x113846['parentId']);assertVerified(_0x113846[_0x41bb3c(0x118)]===(_0x4bc507?_0x4bc507[_0x41bb3c(0x118)]+0x1:0x0),'Created\x20folder\x20'+_0x418b54+_0x41bb3c(0x102));}catch(_0x228fff){const _0x27f245=describeMenuErrorCause(_0x228fff,_0x41bb3c(0x112),_0x418b54),_0x5cdf1a=asVerificationError(_0x228fff,_0x41bb3c(0x12f)+_0x418b54+_0x41bb3c(0x11f));throw menuFailure(_0x5cdf1a,_0x5038f7,{'stage':_0x41bb3c(0x121),'succeeded':[{'id':_0x418b54,'created':!![],'path':_0x196ba6}],'failed':{'id':_0x418b54,'finalFactsConfirmed':![],..._0x27f245},'warnings':['Folder\x20'+_0x418b54+_0x41bb3c(0xf4)],'after':_0x5cefe8??{..._0x241008,'id':_0x418b54,'path':_0x196ba6},'verification':{'status':_0x41bb3c(0x101),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x418b54}});}const _0x576b31=mutationResult({..._0x5038f7,'after':_0x113846,'dryRun':![],'succeeded':[{'id':_0x418b54,'type':_0x41bb3c(0x116),'path':_0x196ba6}],'verification':{'checkedBy':_0x41bb3c(0x126),'snapshotHash':_0x5e583b[_0x41bb3c(0xf8)],'folder':!![],'path':_0x196ba6,'emptyResources':!![]}});return{'ok':!![],'data':_0x576b31,'message':_0x41bb3c(0x122)+_0x418b54+'.'};}};function validateCreateInput(_0x446f81){const _0x567b5c=a111_0xce6f3b,_0x169a3c=_0x446f81[_0x567b5c(0x10e)](_0x567b5c(0x128))[_0x567b5c(0x119)]();if(!_0x169a3c)throw CliErrors[_0x567b5c(0x10d)](_0x567b5c(0x128));parseParentId(_0x446f81,_0x567b5c(0x124)),validateSort(_0x446f81);}async function buildCreatePlan(_0x53aef5,_0x3687c7){const _0x20390d=a111_0xce6f3b,_0x20d3a6=await fetchMutationSnapshot(_0x53aef5,_0x20390d(0x131)),_0x4a400a=parseParentId(_0x53aef5,_0x20390d(0x124))??null;if(_0x4a400a!=null)requireFolder(_0x20d3a6,_0x4a400a);const _0x4aee3e=validateSort(_0x53aef5),_0x1c8786=_0x4aee3e??nextSiblingSort(_0x20d3a6,_0x4a400a,_0x20390d(0x116)),_0x4f07ff=_0x53aef5[_0x20390d(0x10e)]('label')[_0x20390d(0x119)]();return mutationResult({'operation':'group-create','selector':{'label':_0x4f07ff,'parentId':_0x4a400a},'before':null,'after':{'id':null,'parentId':_0x4a400a,'label':_0x4f07ff,'path':'<platform-generated>','type':'folder','visible':!![],'sort':_0x1c8786,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x3687c7,'backend':[...BACKEND],'plannedActions':[{'stage':'create-folder','method':_0x20390d(0x127),'path':_0x20390d(0x12e),'body':{'parentId':toApiParentId(_0x4a400a),'label':_0x4f07ff,'type':_0x20390d(0x116),'visible':!![],'sort':_0x1c8786,'extend':{}}}],'snapshotHash':_0x20d3a6[_0x20390d(0xf8)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}
1
+ const a111_0x3fe6e5=a111_0x2745;(function(_0xba9da7,_0x402760){const _0x509444=a111_0x2745,_0x1e91d1=_0xba9da7();while(!![]){try{const _0x3c4951=parseInt(_0x509444(0xc1))/0x1*(parseInt(_0x509444(0xb2))/0x2)+-parseInt(_0x509444(0xd1))/0x3+parseInt(_0x509444(0xc2))/0x4+-parseInt(_0x509444(0xec))/0x5+parseInt(_0x509444(0xb3))/0x6*(parseInt(_0x509444(0xe3))/0x7)+parseInt(_0x509444(0xde))/0x8*(parseInt(_0x509444(0xd7))/0x9)+-parseInt(_0x509444(0xef))/0xa*(parseInt(_0x509444(0xee))/0xb);if(_0x3c4951===_0x402760)break;else _0x1e91d1['push'](_0x1e91d1['shift']());}catch(_0x351baa){_0x1e91d1['push'](_0x1e91d1['shift']());}}}(a111_0x1b2a,0xc909f));function a111_0x2745(_0x26deea,_0x1ce959){_0x26deea=_0x26deea-0xae;const _0x1b2a5f=a111_0x1b2a();let _0x2745c3=_0x1b2a5f[_0x26deea];return _0x2745c3;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,nextSiblingSort,parseParentId,recheckMutationSnapshot,requireFolder,toApiParentId,validateSort}from'../../commands/menu/shared/mutations.js';function a111_0x1b2a(){const _0x453638=['failed','write','\x20may\x20exist\x20online\x20at\x20path\x20','7TuTABI','after','Created\x20folder\x20','string','\x20is\x20not\x20empty.','root','Folder\x20','/smartapi/menu/create','path','6528650GjQMfz','\x20is\x20not\x20type\x20folder.','17237ljKbCS','5410dTQSyJ','create\x20folder','create','\x20may\x20exist\x20online;\x20verify\x20it\x20by\x20id\x20before\x20retrying.','verify\x20folder\x20creation','create-folder','rabetbase\x20menu\x20list\x20--format\x20json','visible','\x20is\x20missing\x20from\x20menu\x20list.','depth','menu_create_response_invalid','label','\x20remains\x20online;\x20inspect\x20its\x20final\x20facts\x20before\x20any\x20retry.','childrenCount','type','1163066KmsWpp','1353678vwoHcv','group-create','POST','\x20has\x20an\x20unexpected\x20label.','hash','\x20was\x20created\x20but\x20readback\x20could\x20not\x20load\x20its\x20final\x20facts','\x20is\x20not\x20visible.','Created\x20menu\x20','stringify',';\x20verify\x20it\x20before\x20retrying.','Create\x20an\x20empty\x20folder\x20menu\x20at\x20root\x20or\x20under\x20another\x20folder','\x20path\x20does\x20not\x20match\x20the\x20platform-generated\x20path.','length','create-response-validation','2hHjxZH','5071116qzxBOo','str','menu','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20before\x20retrying;\x20the\x20folder\x20may\x20already\x20exist.','\x20has\x20resources.','\x20was\x20created\x20but\x20its\x20final\x20facts\x20violate\x20the\x20folder\x20contract','sort','The\x20create\x20request\x20may\x20have\x20succeeded;\x20verify\x20the\x20online\x20menu\x20list\x20before\x20retrying.','get','parentId','Inspect\x20the\x20created\x20id\x20with\x20`rabetbase\x20menu\x20list\x20--format\x20json`;\x20do\x20not\x20retry\x20creation\x20until\x20its\x20state\x20is\x20known.','trim','Menu\x20create\x20response\x20did\x20not\x20contain\x20a\x20valid\x20menu\x20id.','flagMissing','parent-id','1071978aioaYG','\x20has\x20unexpected\x20parent\x20','<platform-generated>','Menu\x20create\x20response\x20for\x20folder\x20','isSafeInteger','cookie','180XblvoY','Would\x20create\x20empty\x20folder\x20\x22','resources','folder','\x20depth\x20does\x20not\x20match\x20its\x20final\x20parent\x20hierarchy.','verification','\x20unexpectedly\x20owns\x20a\x20page.','271120CGBGxw','\x22\x20with\x20a\x20platform-generated\x20path.'];a111_0x1b2a=function(){return _0x453638;};return a111_0x1b2a();}import{createMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':'POST','path':a111_0x3fe6e5(0xea)}];export const menuGroupCreate={'service':a111_0x3fe6e5(0xc4),'command':a111_0x3fe6e5(0xb4),'description':a111_0x3fe6e5(0xbd),'risk':a111_0x3fe6e5(0xe1),'structuredErrors':!![],'flags':[{'name':'label','type':a111_0x3fe6e5(0xe6),'required':!![],'description':'Folder\x20label'},MENU_PARENT_ID_FLAG,MENU_SORT_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xe74dc){validateCreateInput(_0xe74dc);},async 'dryRun'(_0x51b20f){const _0xd45402=a111_0x3fe6e5,_0x259b48=await buildCreatePlan(_0x51b20f,!![]),_0x54def8=_0x259b48['after'];return menuDryRunResult(_0x259b48,{'method':_0xd45402(0xb5),'url':_0xd45402(0xea),'body':{'parentId':toApiParentId(_0x54def8[_0xd45402(0xcb)]),'label':_0x54def8[_0xd45402(0xae)],'type':'folder','visible':!![],'sort':_0x54def8['sort'],'extend':{}},'description':_0xd45402(0xd8)+String(_0x54def8[_0xd45402(0xae)])+_0xd45402(0xdf)});},async 'execute'(_0x4a9d60){const _0x1562c5=a111_0x3fe6e5;validateCreateInput(_0x4a9d60);const _0xc40376=await buildCreatePlan(_0x4a9d60,![]),_0xdcbca4=_0xc40376[_0x1562c5(0xe4)];await recheckMutationSnapshot(_0x4a9d60,_0xc40376,_0x1562c5(0xf0));let _0x5efcba;try{_0x5efcba=await createMenuEntity(_0x4a9d60['appCode'],_0x4a9d60[_0x1562c5(0xd6)],{'parentId':toApiParentId(_0xdcbca4['parentId']),'label':String(_0xdcbca4[_0x1562c5(0xae)]),'type':_0x1562c5(0xda),'visible':!![],'sort':Number(_0xdcbca4[_0x1562c5(0xc8)]),'extend':{}});}catch(_0x3ae12c){const _0x24e972=mapMenuApiError(_0x3ae12c,_0x1562c5(0xf0));throw menuFailure(_0x24e972,_0xc40376,{'stage':_0x1562c5(0xf1),'failed':{}});}const _0x450103=Number(_0x5efcba['id']);if(!Number[_0x1562c5(0xd5)](_0x450103)||_0x450103<=0x0){const _0xf976c4=menuError(_0x1562c5(0xf9),_0x1562c5(0xce),_0x1562c5(0xc5));throw menuFailure(_0xf976c4,_0xc40376,{'stage':_0x1562c5(0xc0),'failed':{'createdId':_0x5efcba['id']??null},'warnings':[_0x1562c5(0xc9)],'verification':{'status':_0x1562c5(0xe0),'lookupCommand':_0x1562c5(0xf5)}});}const _0x3edfc6=typeof _0x5efcba[_0x1562c5(0xeb)]===_0x1562c5(0xe6)?_0x5efcba[_0x1562c5(0xeb)]:'';if(!_0x3edfc6['trim']()){const _0x4a7db5=menuError('menu_create_response_invalid',_0x1562c5(0xd4)+_0x450103+'\x20did\x20not\x20contain\x20a\x20non-empty\x20generated\x20path.',_0x1562c5(0xcc));throw menuFailure(_0x4a7db5,_0xc40376,{'stage':'create-response-validation','succeeded':[{'id':_0x450103,'created':!![]}],'failed':{'id':_0x450103,'generatedPathConfirmed':![]},'warnings':[_0x1562c5(0xe9)+_0x450103+_0x1562c5(0xf2)],'after':{..._0xdcbca4,'id':_0x450103,'path':_0x3edfc6},'verification':{'status':_0x1562c5(0xe0),'lookupCommand':_0x1562c5(0xf5),'targetId':_0x450103}});}let _0x31cdec;try{_0x31cdec=await fetchMenuSnapshot(_0x4a9d60['appCode'],_0x4a9d60[_0x1562c5(0xd6)]);}catch(_0x267d34){const _0x5a5dd8=describeMenuErrorCause(_0x267d34,_0x1562c5(0xf3),_0x450103),_0x6b795b=asVerificationError(_0x267d34,'Folder\x20'+_0x450103+_0x1562c5(0xb8));throw menuFailure(_0x6b795b,_0xc40376,{'stage':_0x1562c5(0xdc),'succeeded':[{'id':_0x450103,'created':!![],'path':_0x3edfc6}],'failed':{'id':_0x450103,'finalFactsConfirmed':![],..._0x5a5dd8},'warnings':[_0x1562c5(0xe9)+_0x450103+_0x1562c5(0xe2)+JSON[_0x1562c5(0xbb)](_0x3edfc6)+_0x1562c5(0xbc)],'after':{..._0xdcbca4,'id':_0x450103,'path':_0x3edfc6},'verification':{'status':_0x1562c5(0xe0),'lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x450103}});}const _0x2a58f0=_0x31cdec['byId'][_0x1562c5(0xca)](_0x450103);let _0x213996;try{assertVerified(Boolean(_0x2a58f0),_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xf7)),_0x213996=_0x2a58f0,assertVerified(_0x213996[_0x1562c5(0xb1)]==='folder',_0x1562c5(0xba)+_0x450103+_0x1562c5(0xed)),assertVerified(_0x213996[_0x1562c5(0xae)]===_0xdcbca4[_0x1562c5(0xae)],_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xb6)),assertVerified(_0x213996[_0x1562c5(0xeb)]===_0x3edfc6&&Boolean(_0x213996[_0x1562c5(0xeb)][_0x1562c5(0xcd)]()),_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xbe)),assertVerified(_0x213996[_0x1562c5(0xf6)]===!![],_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xb9)),assertVerified(_0x213996[_0x1562c5(0xd9)][_0x1562c5(0xbf)]===0x0,'Created\x20folder\x20'+_0x450103+_0x1562c5(0xc6)),assertVerified(_0x213996[_0x1562c5(0xb0)]===0x0,_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xe7)),assertVerified(_0x213996['sort']===_0xdcbca4[_0x1562c5(0xc8)],_0x1562c5(0xe5)+_0x450103+'\x20has\x20an\x20unexpected\x20sort.'),assertVerified(_0x213996[_0x1562c5(0xcb)]===_0xdcbca4[_0x1562c5(0xcb)],_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xd2)+(_0x213996['parentId']??_0x1562c5(0xe8))+'.'),assertVerified(_0x213996['pageId']==null,_0x1562c5(0xe5)+_0x450103+_0x1562c5(0xdd));const _0x56e8e6=_0x213996[_0x1562c5(0xcb)]==null?undefined:requireFolder(_0x31cdec,_0x213996[_0x1562c5(0xcb)]);assertVerified(_0x213996[_0x1562c5(0xf8)]===(_0x56e8e6?_0x56e8e6[_0x1562c5(0xf8)]+0x1:0x0),'Created\x20folder\x20'+_0x450103+_0x1562c5(0xdb));}catch(_0x4feff1){const _0x229e4a=describeMenuErrorCause(_0x4feff1,_0x1562c5(0xf3),_0x450103),_0x2b699c=asVerificationError(_0x4feff1,_0x1562c5(0xe9)+_0x450103+_0x1562c5(0xc7));throw menuFailure(_0x2b699c,_0xc40376,{'stage':_0x1562c5(0xdc),'succeeded':[{'id':_0x450103,'created':!![],'path':_0x3edfc6}],'failed':{'id':_0x450103,'finalFactsConfirmed':![],..._0x229e4a},'warnings':[_0x1562c5(0xe9)+_0x450103+_0x1562c5(0xaf)],'after':_0x2a58f0??{..._0xdcbca4,'id':_0x450103,'path':_0x3edfc6},'verification':{'status':'failed','lookupCommand':'rabetbase\x20menu\x20list\x20--format\x20json','targetId':_0x450103}});}const _0x35901b=mutationResult({..._0xc40376,'after':_0x213996,'dryRun':![],'succeeded':[{'id':_0x450103,'type':'folder','path':_0x3edfc6}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x31cdec['hash'],'folder':!![],'path':_0x3edfc6,'emptyResources':!![]}});return{'ok':!![],'data':_0x35901b,'message':'Created\x20menu\x20folder\x20'+_0x450103+'.'};}};function validateCreateInput(_0x410e93){const _0x305449=a111_0x3fe6e5,_0x50d2f5=_0x410e93[_0x305449(0xc3)](_0x305449(0xae))[_0x305449(0xcd)]();if(!_0x50d2f5)throw CliErrors[_0x305449(0xcf)](_0x305449(0xae));parseParentId(_0x410e93,'parent-id'),validateSort(_0x410e93);}async function buildCreatePlan(_0x308d63,_0x140774){const _0x154eb9=a111_0x3fe6e5,_0x39de8f=await fetchMutationSnapshot(_0x308d63,_0x154eb9(0xf0)),_0x33b40f=parseParentId(_0x308d63,_0x154eb9(0xd0))??null;if(_0x33b40f!=null)requireFolder(_0x39de8f,_0x33b40f);const _0xbb8a7a=validateSort(_0x308d63),_0x431faa=_0xbb8a7a??nextSiblingSort(_0x39de8f,_0x33b40f,'folder'),_0x9c7553=_0x308d63['str'](_0x154eb9(0xae))[_0x154eb9(0xcd)]();return mutationResult({'operation':'group-create','selector':{'label':_0x9c7553,'parentId':_0x33b40f},'before':null,'after':{'id':null,'parentId':_0x33b40f,'label':_0x9c7553,'path':_0x154eb9(0xd3),'type':'folder','visible':!![],'sort':_0x431faa,'resources':[],'childrenIds':[],'childrenCount':0x0},'dryRun':_0x140774,'backend':[...BACKEND],'plannedActions':[{'stage':_0x154eb9(0xf4),'method':_0x154eb9(0xb5),'path':'/smartapi/menu/create','body':{'parentId':toApiParentId(_0x33b40f),'label':_0x9c7553,'type':'folder','visible':!![],'sort':_0x431faa,'extend':{}}}],'snapshotHash':_0x39de8f[_0x154eb9(0xb7)],'warnings':['The\x20platform\x20assigns\x20the\x20folder\x20a\x20non-empty\x20path\x20used\x20by\x20menu\x20routing\x20and\x20keys.']});}