@lovrabet/rabetbase-cli 2.3.15 → 2.3.16-beta.2

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 (277) hide show
  1. package/README.md +8 -3
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.js +1 -1
  11. package/lib/auth/login-success-html.js +1 -1
  12. package/lib/auth/logout.js +1 -1
  13. package/lib/cli-flags.js +1 -1
  14. package/lib/cli.js +1 -1
  15. package/lib/commands/api/generate.js +1 -1
  16. package/lib/commands/api/index.js +1 -1
  17. package/lib/commands/api/list.js +1 -1
  18. package/lib/commands/api/pull.js +1 -1
  19. package/lib/commands/api/shared.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/members-list.js +1 -0
  23. package/lib/commands/app/remote-directory.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/get.js +1 -1
  53. package/lib/commands/config/index.js +1 -1
  54. package/lib/commands/config/list.js +1 -1
  55. package/lib/commands/config/set.js +1 -1
  56. package/lib/commands/config/shared.js +1 -1
  57. package/lib/commands/data/filter.js +1 -1
  58. package/lib/commands/data/getOne.js +1 -1
  59. package/lib/commands/data/index.js +1 -1
  60. package/lib/commands/data/shared.js +1 -1
  61. package/lib/commands/dataset/business-group-update.js +1 -1
  62. package/lib/commands/dataset/capability.js +1 -1
  63. package/lib/commands/dataset/delete.js +1 -1
  64. package/lib/commands/dataset/detail.js +1 -1
  65. package/lib/commands/dataset/extend-update.js +1 -1
  66. package/lib/commands/dataset/field-update.js +1 -1
  67. package/lib/commands/dataset/generate.js +1 -1
  68. package/lib/commands/dataset/index.js +1 -1
  69. package/lib/commands/dataset/list.js +1 -1
  70. package/lib/commands/dataset/operations.js +1 -1
  71. package/lib/commands/dataset/relation-audit.js +1 -1
  72. package/lib/commands/dataset/relation-create.js +1 -1
  73. package/lib/commands/dataset/relation-delete.js +1 -1
  74. package/lib/commands/dataset/relation-shared.js +1 -1
  75. package/lib/commands/dataset/relation-update.js +1 -1
  76. package/lib/commands/dataset/relations.js +1 -1
  77. package/lib/commands/dataset/rename.js +1 -1
  78. package/lib/commands/dataset/restore.js +1 -1
  79. package/lib/commands/db/analysis-batching.js +1 -1
  80. package/lib/commands/db/analyze-batch-plan.js +1 -1
  81. package/lib/commands/db/analyze-cancel.js +1 -1
  82. package/lib/commands/db/analyze-start.js +1 -1
  83. package/lib/commands/db/analyze-status.js +1 -1
  84. package/lib/commands/db/create.js +1 -1
  85. package/lib/commands/db/delete.js +1 -1
  86. package/lib/commands/db/detail.js +1 -1
  87. package/lib/commands/db/diff.js +1 -1
  88. package/lib/commands/db/index.js +1 -1
  89. package/lib/commands/db/list.js +1 -1
  90. package/lib/commands/db/shared.js +1 -1
  91. package/lib/commands/db/tables.js +1 -1
  92. package/lib/commands/db/test.js +1 -1
  93. package/lib/commands/db/update.js +1 -1
  94. package/lib/commands/doctor.js +1 -1
  95. package/lib/commands/file/index.js +1 -1
  96. package/lib/commands/init/index.js +1 -1
  97. package/lib/commands/issue/index.js +1 -1
  98. package/lib/commands/issue/nudge.js +1 -1
  99. package/lib/commands/issue/report.js +1 -1
  100. package/lib/commands/issue/shared.js +1 -1
  101. package/lib/commands/kb/create.js +1 -0
  102. package/lib/commands/kb/delete.js +1 -0
  103. package/lib/commands/kb/detail.js +1 -0
  104. package/lib/commands/kb/index.js +1 -0
  105. package/lib/commands/kb/list.js +1 -0
  106. package/lib/commands/kb/shared.js +1 -0
  107. package/lib/commands/kb/update.js +1 -0
  108. package/lib/commands/logs/index.js +1 -1
  109. package/lib/commands/menu/asset-update.js +1 -1
  110. package/lib/commands/menu/delete.js +1 -1
  111. package/lib/commands/menu/external-link-create.js +1 -1
  112. package/lib/commands/menu/external-link-update.js +1 -1
  113. package/lib/commands/menu/group-create.js +1 -1
  114. package/lib/commands/menu/group-update.js +1 -1
  115. package/lib/commands/menu/index.js +1 -1
  116. package/lib/commands/menu/list.js +1 -1
  117. package/lib/commands/menu/move.js +1 -1
  118. package/lib/commands/menu/regroup-start.js +1 -1
  119. package/lib/commands/menu/rename.js +1 -1
  120. package/lib/commands/menu/shared/compare-table.js +1 -1
  121. package/lib/commands/menu/shared/delete-plan.js +1 -1
  122. package/lib/commands/menu/shared/facts.js +1 -1
  123. package/lib/commands/menu/shared/index.js +1 -1
  124. package/lib/commands/menu/shared/inquirer.js +1 -1
  125. package/lib/commands/menu/shared/local-pages.js +1 -1
  126. package/lib/commands/menu/shared/logic.js +1 -1
  127. package/lib/commands/menu/shared/mutations.js +1 -1
  128. package/lib/commands/menu/shared/service.js +1 -1
  129. package/lib/commands/menu/shared/sync-core.js +1 -1
  130. package/lib/commands/menu/shared/update-core.js +1 -1
  131. package/lib/commands/menu/shared/valid-url.js +1 -1
  132. package/lib/commands/menu/sync.js +1 -1
  133. package/lib/commands/notification/config-list.js +1 -1
  134. package/lib/commands/notification/index.js +1 -1
  135. package/lib/commands/ocr/index.js +1 -1
  136. package/lib/commands/page/generate-start.js +1 -1
  137. package/lib/commands/page/generate-status.js +1 -1
  138. package/lib/commands/page/index.js +1 -1
  139. package/lib/commands/page/pull.js +1 -1
  140. package/lib/commands/page/push.js +1 -1
  141. package/lib/commands/page/relation-audit.js +1 -1
  142. package/lib/commands/page/restore.js +1 -1
  143. package/lib/commands/page/shared.js +1 -1
  144. package/lib/commands/page/standard-page-status.js +1 -1
  145. package/lib/commands/page/sync.js +1 -1
  146. package/lib/commands/permit/index.js +1 -1
  147. package/lib/commands/permit/page-get.js +1 -1
  148. package/lib/commands/permit/page-set.js +1 -1
  149. package/lib/commands/permit/role-apis-set.js +1 -1
  150. package/lib/commands/permit/role-menus-set.js +1 -1
  151. package/lib/commands/permit/role-menus.js +1 -1
  152. package/lib/commands/permit/shared.js +1 -1
  153. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  154. package/lib/commands/project/create/format-elapsed.js +1 -1
  155. package/lib/commands/project/create/main.js +1 -1
  156. package/lib/commands/project/create/non-interactive.js +1 -1
  157. package/lib/commands/project/create/project-template-path.js +1 -1
  158. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  159. package/lib/commands/project/create/use-format-code.js +1 -1
  160. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  161. package/lib/commands/project/index.js +1 -1
  162. package/lib/commands/project/init.js +1 -1
  163. package/lib/commands/project/upgrade.js +1 -1
  164. package/lib/commands/registry.js +1 -1
  165. package/lib/commands/role/create.js +1 -1
  166. package/lib/commands/role/delete.js +1 -1
  167. package/lib/commands/role/detail.js +1 -1
  168. package/lib/commands/role/index.js +1 -1
  169. package/lib/commands/role/list.js +1 -1
  170. package/lib/commands/role/shared.js +1 -1
  171. package/lib/commands/role/update.js +1 -1
  172. package/lib/commands/role/user-add.js +1 -1
  173. package/lib/commands/role/user-remove.js +1 -1
  174. package/lib/commands/role/user-resolve.js +1 -1
  175. package/lib/commands/run/index.js +1 -1
  176. package/lib/commands/schema.js +1 -1
  177. package/lib/commands/sql/create.js +1 -1
  178. package/lib/commands/sql/delete.js +1 -1
  179. package/lib/commands/sql/detail.js +1 -1
  180. package/lib/commands/sql/exec.js +1 -1
  181. package/lib/commands/sql/index.js +1 -1
  182. package/lib/commands/sql/list.js +1 -1
  183. package/lib/commands/sql/pull.js +1 -1
  184. package/lib/commands/sql/push.js +1 -1
  185. package/lib/commands/sql/save.js +1 -1
  186. package/lib/commands/sql/shared.js +1 -1
  187. package/lib/commands/sql/status.js +1 -1
  188. package/lib/commands/sql/validate.js +1 -1
  189. package/lib/commands/task/index.js +1 -1
  190. package/lib/commands/task/status.js +1 -1
  191. package/lib/commands/tenant/index.js +1 -0
  192. package/lib/commands/tenant/members-list.js +1 -0
  193. package/lib/commands/tenant/shared.js +1 -0
  194. package/lib/commands/workspace/add.js +1 -1
  195. package/lib/commands/workspace/index.js +1 -1
  196. package/lib/commands/workspace/remove.js +1 -1
  197. package/lib/config/schema.js +1 -1
  198. package/lib/constant/cdn.js +1 -1
  199. package/lib/constant/cli.js +1 -1
  200. package/lib/constant/defaults.js +1 -1
  201. package/lib/constant/domain.js +1 -1
  202. package/lib/constant/env.js +1 -1
  203. package/lib/constant/output.js +1 -1
  204. package/lib/constant/paths.js +1 -1
  205. package/lib/constant/risk.js +1 -1
  206. package/lib/context/app-resolver.js +1 -1
  207. package/lib/context/auth-resolver.js +1 -1
  208. package/lib/context/config-loader.js +1 -1
  209. package/lib/context.js +1 -1
  210. package/lib/core/alias-resolver.js +1 -1
  211. package/lib/core/api-client.js +1 -1
  212. package/lib/core/bff/config.js +1 -1
  213. package/lib/core/bff/file-system.js +1 -1
  214. package/lib/core/bff/hash.js +1 -1
  215. package/lib/core/bff/lock.js +1 -1
  216. package/lib/core/bff/utils.js +1 -1
  217. package/lib/core/db-resolver.js +1 -1
  218. package/lib/core/page/file-system.js +1 -1
  219. package/lib/core/page/hash.js +1 -1
  220. package/lib/core/page/lock.js +1 -1
  221. package/lib/core/sql-index-auditor.js +1 -1
  222. package/lib/core/sql-sync/config.js +1 -1
  223. package/lib/core/sql-sync/file-system.js +1 -1
  224. package/lib/core/sql-sync/hash.js +1 -1
  225. package/lib/core/sql-sync/lock.js +1 -1
  226. package/lib/core/sql-sync/utils.js +1 -1
  227. package/lib/core/sql-validator.js +1 -1
  228. package/lib/errors.js +1 -1
  229. package/lib/framework/build-all-flags.js +1 -1
  230. package/lib/framework/error-output.js +1 -1
  231. package/lib/framework/explicit-yes.js +1 -1
  232. package/lib/framework/flags.js +1 -1
  233. package/lib/framework/help.js +1 -1
  234. package/lib/framework/index.js +1 -1
  235. package/lib/framework/output.js +1 -1
  236. package/lib/framework/response.js +1 -1
  237. package/lib/framework/runner-alias.js +1 -1
  238. package/lib/framework/runner.js +1 -1
  239. package/lib/framework/schema-export.js +1 -1
  240. package/lib/framework/types.js +1 -1
  241. package/lib/generated/build-info.js +1 -1
  242. package/lib/help.js +1 -1
  243. package/lib/skills/main.js +1 -1
  244. package/lib/skills/npx-skills-add.js +1 -1
  245. package/lib/skills/skill-presence.js +1 -0
  246. package/lib/telemetry/cli-command-trace.js +1 -1
  247. package/lib/telemetry/cli-help-trace.js +1 -1
  248. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  249. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  250. package/lib/telemetry/send-cli-trace-log.js +1 -1
  251. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  252. package/lib/utils/ai_config.js +1 -1
  253. package/lib/utils/apply-jq-filter.js +1 -1
  254. package/lib/utils/cdn-config.js +1 -1
  255. package/lib/utils/check-sdk-version.js +1 -1
  256. package/lib/utils/cli-version-check.js +1 -1
  257. package/lib/utils/cli-version-policy.js +1 -1
  258. package/lib/utils/config.js +1 -1
  259. package/lib/utils/copy-directory.js +1 -1
  260. package/lib/utils/entity-with-id.js +1 -1
  261. package/lib/utils/file-utils.js +1 -1
  262. package/lib/utils/guides-cdn.js +1 -1
  263. package/lib/utils/http-client.js +1 -1
  264. package/lib/utils/is-non-interactive.js +1 -1
  265. package/lib/utils/logger.js +1 -1
  266. package/lib/utils/params.js +1 -1
  267. package/lib/utils/platform.js +1 -1
  268. package/lib/utils/rules-cdn.js +1 -1
  269. package/lib/utils/sleep.js +1 -1
  270. package/lib/utils/template-replacer.js +1 -1
  271. package/lib/utils/update-notice.js +1 -1
  272. package/lib/utils/version.js +1 -1
  273. package/lib/utils/with-active-cookie.js +1 -1
  274. package/lib/utils/write-cli-side-channel.js +1 -1
  275. package/package.json +2 -2
  276. package/lib/commands/app/add.js +0 -1
  277. package/lib/commands/app/remove.js +0 -1
@@ -1 +1 @@
1
- const a110_0x278034=a110_0x31fe;(function(_0x258506,_0x57d8f2){const _0x48159f=a110_0x31fe,_0x35a3e9=_0x258506();while(!![]){try{const _0x53c257=parseInt(_0x48159f(0x99))/0x1+-parseInt(_0x48159f(0xbf))/0x2*(parseInt(_0x48159f(0xc0))/0x3)+-parseInt(_0x48159f(0x98))/0x4+-parseInt(_0x48159f(0x7c))/0x5*(parseInt(_0x48159f(0x8f))/0x6)+-parseInt(_0x48159f(0xc4))/0x7+parseInt(_0x48159f(0xc6))/0x8*(-parseInt(_0x48159f(0x6f))/0x9)+parseInt(_0x48159f(0x7b))/0xa*(parseInt(_0x48159f(0xa1))/0xb);if(_0x53c257===_0x57d8f2)break;else _0x35a3e9['push'](_0x35a3e9['shift']());}catch(_0x5e1e0a){_0x35a3e9['push'](_0x35a3e9['shift']());}}}(a110_0x1e30,0x44b10));function a110_0x1e30(){const _0x532012=['The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','toLowerCase','applied','<new-group-id>','FAILED','trim','childrenIds','appCode','type','70544KTuOyC','42pekNOz','<platform-generated>','readbackError','start\x20menu\x20regroup','1320830crzQLQ','menu_regroup_already_applied','10584LnrcPx','menu_regroup_label_conflict','get','label','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','324zkRNba','size','join','POST','split','input','SUCCESS','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','menu_regroup_target_label_missing','Root\x20folder\x20label\x20','12930yDyThY','5GDcMnz','group','str','unconfirmed','plan','string','plan\x20regroup','regroup-start','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','message','some','\x20and\x20regroup\x20menu\x20ids\x20','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','sort','/smartapi/menu/regroup','\x20menus\x20per\x20regroup\x20request.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.','folder','--menu-ids\x20supports\x20at\x20most\x20','1661922myYTcc','\x27\x5c\x27\x27','Menu\x20','The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.','warnings','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','menus','menu-ids','stringify','225976BXEpRO','523912wYhupH','failed','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','parentId','Menus\x20','menuIds','Regroup\x20readback\x20failed:\x20','6985KipQmW','isTerminal','validation','taskId','submit-regroup-task',';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.','length','Regroup\x20task\x20accepted.\x20','map','byId','isSafeInteger','test','replace','start\x20regroup','status','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','regroup-submit','cookie','knownStatus','hash','menu'];a110_0x1e30=function(){return _0x532012;};return a110_0x1e30();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a110_0x278034(0x72),'path':'/smartapi/menu/regroup'}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a110_0x278034(0xb5),'command':a110_0x278034(0x83),'description':'Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','risk':'high-risk-write','structuredErrors':!![],'flags':[{'name':'label','type':'string','required':!![],'description':'Label\x20of\x20the\x20new\x20root\x20folder'},{'name':a110_0x278034(0x96),'type':a110_0x278034(0x81),'required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3f2e3b){validateRegroupInput(_0x3f2e3b),requireExplicitYes(_0x3f2e3b);},async 'dryRun'(_0x5a07a5){const _0x156ea3=a110_0x278034;validateRegroupInput(_0x5a07a5);const _0x1335b1=await buildRegroupPlan(_0x5a07a5,!![]);return menuDryRunResult(_0x1335b1['plan'],{'method':_0x156ea3(0x72),'url':_0x156ea3(0x8a),'body':_0x1335b1[_0x156ea3(0x74)],'description':_0x156ea3(0x9b)+JSON['stringify'](_0x1335b1[_0x156ea3(0x6d)])+_0x156ea3(0x87)+_0x1335b1[_0x156ea3(0x9f)][_0x156ea3(0x71)](',\x20')+_0x156ea3(0xa6)});},async 'execute'(_0x207be5){const _0x263611=a110_0x278034;validateRegroupInput(_0x207be5),requireExplicitYes(_0x207be5);const _0x483375=await buildRegroupPlan(_0x207be5,![]);await recheckMutationSnapshot(_0x207be5,_0x483375[_0x263611(0x80)],_0x263611(0xae));const _0x2c5307=buildMenuLookupCommand(_0x207be5[_0x263611(0xbd)]);let _0x423580,_0x5cbb7c;try{_0x423580=await startMenuRegroup(_0x207be5[_0x263611(0xb2)],_0x483375[_0x263611(0x74)]),_0x5cbb7c=normalizeAsyncTask(_0x423580);}catch(_0x5316f1){const _0x20fbc1=await inspectRegroupAfterFailure(_0x207be5[_0x263611(0xbd)],_0x207be5[_0x263611(0xb2)],_0x483375['label'],_0x483375[_0x263611(0x9f)]),_0x3a5e42=typeof _0x423580?.[_0x263611(0xa4)]===_0x263611(0x81)&&_0x423580[_0x263611(0xa4)][_0x263611(0xbb)]()?_0x423580[_0x263611(0xa4)][_0x263611(0xbb)]():null,_0x26b9be=_0x3a5e42?{'command':buildAsyncTaskStatusCommand(_0x3a5e42,_0x207be5[_0x263611(0xbd)])}:null,_0x2577d5=mapMenuApiError(_0x5316f1,_0x263611(0xc3));throw menuFailure(_0x2577d5,_0x483375[_0x263611(0x80)],{'stage':_0x263611(0xb1),'failed':{'menuIds':_0x483375[_0x263611(0x9f)],'taskId':_0x3a5e42,'groupingApplied':_0x20fbc1[_0x263611(0xb8)]?!![]:_0x263611(0x7f)},'after':_0x20fbc1[_0x263611(0xb8)]??null,'warnings':['The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.',..._0x20fbc1[_0x263611(0xc2)]?['Regroup\x20readback\x20also\x20failed:\x20'+_0x20fbc1[_0x263611(0xc2)]]:[],..._0x3a5e42?[_0x263611(0x78)]:[]],'verification':{'status':_0x263611(0x9a),'groupingApplied':_0x20fbc1[_0x263611(0xb8)]?!![]:_0x263611(0x7f),'taskId':_0x3a5e42,'query':_0x26b9be,'lookupCommand':_0x2c5307}});}const _0x2e1c4e=buildAsyncTaskStatusCommand(_0x5cbb7c[_0x263611(0xa4)],_0x207be5[_0x263611(0xbd)]);let _0x5c2fde=null,_0x1a990d=null,_0x47efc2=null;try{_0x5c2fde=await fetchMenuSnapshot(_0x207be5[_0x263611(0xbd)],_0x207be5[_0x263611(0xb2)]),_0x1a990d=findAppliedRegroup(_0x5c2fde,_0x483375[_0x263611(0x6d)],_0x483375['menuIds']);}catch(_0x55ac7b){_0x47efc2=_0x55ac7b instanceof Error?_0x55ac7b[_0x263611(0x85)]:String(_0x55ac7b);}const _0x5133cc=mutationResult({..._0x483375[_0x263611(0x80)],'after':_0x1a990d??null,'dryRun':![],'succeeded':[{'groupId':_0x1a990d?.[_0x263611(0x7d)]['id']??null,'menuIds':_0x483375[_0x263611(0x9f)],'taskId':_0x5cbb7c['taskId'],'status':_0x5cbb7c['status'],'groupingApplied':_0x1a990d?!![]:_0x263611(0x7f)}],'verification':{'checkedBy':'menu\x20list','snapshotHash':_0x5c2fde?.[_0x263611(0xb4)]??null,'groupId':_0x1a990d?.[_0x263611(0x7d)]['id']??null,'groupingApplied':_0x1a990d?!![]:'unconfirmed','readbackError':_0x47efc2,'lookupCommand':_0x2c5307},'warnings':[..._0x483375[_0x263611(0x80)][_0x263611(0x93)],...!_0x1a990d?[unconfirmedRegroupWarning(_0x5cbb7c)]:[],..._0x47efc2?[_0x263611(0xa0)+_0x47efc2]:[]]}),_0x468b77=_0x5cbb7c[_0x263611(0xaf)]===_0x263611(0x75)&&!_0x1a990d?'Regroup\x20task\x20'+_0x5cbb7c[_0x263611(0xa4)]+'\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.':_0x263611(0xa8)+asyncTaskMessage(_0x5cbb7c);return{'ok':!![],'message':_0x468b77,'data':{..._0x5133cc,'task':_0x5cbb7c,'query':_0x5cbb7c[_0x263611(0xa2)]?null:{'command':_0x2e1c4e}}};}};function validateRegroupInput(_0x4f3547){const _0x51fd87=a110_0x278034;if(!_0x4f3547[_0x51fd87(0x7e)](_0x51fd87(0x6d))[_0x51fd87(0xbb)]())throw CliErrors['flagMissing']('label');parseMenuIds(_0x4f3547['str'](_0x51fd87(0x96)));}function parseMenuIds(_0xe0546a){const _0x33288e=a110_0x278034,_0x5a69a9=_0xe0546a[_0x33288e(0x73)](',')[_0x33288e(0xa9)](_0x5f21b7=>_0x5f21b7[_0x33288e(0xbb)]());if(_0x5a69a9[_0x33288e(0xa7)]===0x0||_0x5a69a9[_0x33288e(0x86)](_0x544a1b=>!_0x544a1b))throw CliErrors['validation']('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x5f3d18=_0x5a69a9[_0x33288e(0xa9)](_0x2417ec=>{const _0x121f96=_0x33288e;if(!/^\d+$/[_0x121f96(0xac)](_0x2417ec))throw CliErrors[_0x121f96(0xa3)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x42f522=Number(_0x2417ec);if(!Number[_0x121f96(0xab)](_0x42f522)||_0x42f522<=0x0)throw CliErrors[_0x121f96(0xa3)](_0x121f96(0x77));return _0x42f522;});if(new Set(_0x5f3d18)[_0x33288e(0x70)]!==_0x5f3d18[_0x33288e(0xa7)])throw CliErrors['validation']('--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.');if(_0x5f3d18[_0x33288e(0xa7)]>MAX_REGROUP_MENU_COUNT)throw CliErrors['validation'](_0x33288e(0x8e)+MAX_REGROUP_MENU_COUNT+_0x33288e(0x8b));return _0x5f3d18;}function buildMenuLookupCommand(_0xb9c69a){const _0xe5d5c7=a110_0x278034,_0x52e783='\x27'+_0xb9c69a[_0xe5d5c7(0xad)](/'/g,_0xe5d5c7(0x90))+'\x27';return CLI_BIN_NAME+'\x20menu\x20list\x20--appcode\x20'+_0x52e783+'\x20--format\x20compress';}function unconfirmedRegroupWarning(_0x501dee){const _0x22eb02=a110_0x278034;if(_0x501dee[_0x22eb02(0xaf)]==='SUCCESS')return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x501dee[_0x22eb02(0xaf)]===_0x22eb02(0xba))return _0x22eb02(0xb6);if(_0x501dee[_0x22eb02(0xb3)])return _0x22eb02(0x84);return'The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';}function a110_0x31fe(_0x3192fc,_0x1b077c){_0x3192fc=_0x3192fc-0x6d;const _0x1e3040=a110_0x1e30();let _0x31fe1a=_0x1e3040[_0x3192fc];return _0x31fe1a;}async function buildRegroupPlan(_0x11b84d,_0x5ea498){const _0x1ecc45=a110_0x278034,_0x5636b2=_0x11b84d[_0x1ecc45(0x7e)](_0x1ecc45(0x6d))[_0x1ecc45(0xbb)](),_0x2fe956=parseMenuIds(_0x11b84d[_0x1ecc45(0x7e)](_0x1ecc45(0x96))),_0x1e8024=await fetchMutationSnapshot(_0x11b84d,_0x1ecc45(0x82)),_0x4d1370=_0x2fe956[_0x1ecc45(0xa9)](_0x3cc260=>requireMenu(_0x1e8024,_0x3cc260));for(const _0x17a251 of _0x4d1370){if(_0x17a251[_0x1ecc45(0xbe)][_0x1ecc45(0xbb)]()[_0x1ecc45(0xb7)]()===_0x1ecc45(0x8d)||_0x17a251['childrenCount']>0x0)throw menuError('menu_regroup_target_not_leaf',_0x1ecc45(0x91)+_0x17a251['id']+'\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.',_0x1ecc45(0xb0));if(!_0x17a251[_0x1ecc45(0x6d)][_0x1ecc45(0xbb)]())throw menuError(_0x1ecc45(0x79),'Menu\x20'+_0x17a251['id']+_0x1ecc45(0x6e),_0x1ecc45(0x88));}const _0x45fc15=findAppliedRegroup(_0x1e8024,_0x5636b2,_0x2fe956);if(_0x45fc15)throw menuError(_0x1ecc45(0xc5),_0x1ecc45(0x9e)+_0x2fe956[_0x1ecc45(0x71)](',\x20')+_0x1ecc45(0x94)+_0x45fc15['group']['id']+'\x20('+JSON[_0x1ecc45(0x97)](_0x5636b2)+').',_0x1ecc45(0x9c));const _0x450ea4=_0x1e8024[_0x1ecc45(0x95)]['filter'](_0x69cb14=>_0x69cb14[_0x1ecc45(0x9d)]==null&&_0x69cb14[_0x1ecc45(0xbe)][_0x1ecc45(0xbb)]()[_0x1ecc45(0xb7)]()==='folder'&&_0x69cb14[_0x1ecc45(0x6d)]===_0x5636b2);if(_0x450ea4[_0x1ecc45(0xa7)]>0x0)throw menuError(_0x1ecc45(0xc7),_0x1ecc45(0x7a)+JSON[_0x1ecc45(0x97)](_0x5636b2)+'\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'+_0x450ea4[_0x1ecc45(0xa9)](_0x4aef3b=>_0x4aef3b['id'])[_0x1ecc45(0x71)](',\x20')+'.',_0x1ecc45(0x8c));const _0x2f599e={'appCode':_0x11b84d[_0x1ecc45(0xbd)],'menuGroups':[{'label':_0x5636b2,'type':_0x1ecc45(0x8d),'children':_0x4d1370[_0x1ecc45(0xa9)](_0x46eb21=>({'id':_0x46eb21['id'],'label':_0x46eb21[_0x1ecc45(0x6d)]}))}]},_0x586f56=mutationResult({'operation':_0x1ecc45(0x83),'selector':{'label':_0x5636b2,'menuIds':_0x2fe956},'before':{'menus':_0x4d1370},'after':{'group':{'id':null,'parentId':null,'label':_0x5636b2,'path':_0x1ecc45(0xc1),'type':_0x1ecc45(0x8d),'childrenIds':_0x2fe956},'children':_0x4d1370[_0x1ecc45(0xa9)](_0x4f368e=>({'id':_0x4f368e['id'],'label':_0x4f368e[_0x1ecc45(0x6d)],'beforeParentId':_0x4f368e['parentId'],'afterParentId':_0x1ecc45(0xb9)}))},'dryRun':_0x5ea498,'backend':[...BACKEND],'plannedActions':[{'stage':_0x1ecc45(0xa5),'method':'POST','path':_0x1ecc45(0x8a),'body':_0x2f599e}],'snapshotHash':_0x1e8024[_0x1ecc45(0xb4)],'warnings':[_0x1ecc45(0x92),_0x1ecc45(0x76)]});return{'label':_0x5636b2,'menuIds':_0x2fe956,'input':_0x2f599e,'plan':_0x586f56};}function findAppliedRegroup(_0x3d7010,_0x2d39b1,_0x3c7c46){const _0x665f15=a110_0x278034,_0x1420b4=_0x3c7c46[_0x665f15(0xa9)](_0x315b21=>_0x3d7010[_0x665f15(0xaa)]['get'](_0x315b21))['filter'](_0x56e8be=>Boolean(_0x56e8be));if(_0x1420b4[_0x665f15(0xa7)]!==_0x3c7c46['length'])return null;const _0x250c94=_0x1420b4[0x0]?.['parentId'];if(_0x250c94==null||_0x1420b4['some'](_0x5477ee=>_0x5477ee[_0x665f15(0x9d)]!==_0x250c94))return null;const _0x51c315=_0x3d7010[_0x665f15(0xaa)][_0x665f15(0xc8)](_0x250c94);if(!_0x51c315||_0x51c315[_0x665f15(0x9d)]!=null||_0x51c315['type'][_0x665f15(0xbb)]()[_0x665f15(0xb7)]()!==_0x665f15(0x8d)||_0x51c315[_0x665f15(0x6d)]!==_0x2d39b1)return null;const _0x4303e7=[..._0x3c7c46][_0x665f15(0x89)]((_0x1cb31e,_0x1d44f4)=>_0x1cb31e-_0x1d44f4),_0x133fed=[..._0x51c315[_0x665f15(0xbc)]][_0x665f15(0x89)]((_0x161144,_0x285f60)=>_0x161144-_0x285f60);if(JSON[_0x665f15(0x97)](_0x133fed)!==JSON[_0x665f15(0x97)](_0x4303e7))return null;return{'group':_0x51c315,'children':_0x1420b4};}async function inspectRegroupAfterFailure(_0x3b1c0e,_0x17ccb6,_0x54b89f,_0x23cdba){const _0x4e5f70=a110_0x278034;try{const _0x55af0d=await fetchMenuSnapshot(_0x3b1c0e,_0x17ccb6);return{'applied':findAppliedRegroup(_0x55af0d,_0x54b89f,_0x23cdba),'readbackError':null};}catch(_0x257586){return{'applied':null,'readbackError':_0x257586 instanceof Error?_0x257586[_0x4e5f70(0x85)]:String(_0x257586)};}}
1
+ const a116_0x5937f8=a116_0x499e;(function(_0x30d591,_0x5d5c2b){const _0x5478b4=a116_0x499e,_0x35d6c8=_0x30d591();while(!![]){try{const _0x4f8b4a=-parseInt(_0x5478b4(0xa5))/0x1+parseInt(_0x5478b4(0x90))/0x2*(-parseInt(_0x5478b4(0xbc))/0x3)+parseInt(_0x5478b4(0xc3))/0x4*(-parseInt(_0x5478b4(0x96))/0x5)+parseInt(_0x5478b4(0x83))/0x6+parseInt(_0x5478b4(0x9a))/0x7*(-parseInt(_0x5478b4(0x7a))/0x8)+parseInt(_0x5478b4(0xad))/0x9+parseInt(_0x5478b4(0xb7))/0xa;if(_0x4f8b4a===_0x5d5c2b)break;else _0x35d6c8['push'](_0x35d6c8['shift']());}catch(_0x2ccbb9){_0x35d6c8['push'](_0x35d6c8['shift']());}}}(a116_0x5c9c,0x615a4));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{fetchMutationSnapshot,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,requireExplicitYes,requireMenu}from'../../commands/menu/shared/mutations.js';import{startMenuRegroup}from'../../commands/menu/shared/service.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a116_0x5937f8(0xa3),'path':a116_0x5937f8(0xc4)}],MAX_REGROUP_MENU_COUNT=0x64;export const menuRegroupStart={'service':a116_0x5937f8(0x7c),'command':a116_0x5937f8(0xc2),'description':a116_0x5937f8(0x82),'risk':a116_0x5937f8(0xb9),'structuredErrors':!![],'flags':[{'name':a116_0x5937f8(0x95),'type':a116_0x5937f8(0x9f),'required':!![],'description':a116_0x5937f8(0x6e)},{'name':a116_0x5937f8(0x8d),'type':a116_0x5937f8(0x9f),'required':!![],'description':'Comma-separated\x20exact\x20leaf\x20menu\x20ids\x20to\x20place\x20in\x20the\x20new\x20folder'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2fa9fd){validateRegroupInput(_0x2fa9fd),requireExplicitYes(_0x2fa9fd);},async 'dryRun'(_0x5922d4){const _0x203f70=a116_0x5937f8;validateRegroupInput(_0x5922d4);const _0x26086b=await buildRegroupPlan(_0x5922d4,!![]);return menuDryRunResult(_0x26086b[_0x203f70(0xb2)],{'method':'POST','url':_0x203f70(0xc4),'body':_0x26086b[_0x203f70(0xbf)],'description':_0x203f70(0xa7)+JSON[_0x203f70(0xa6)](_0x26086b[_0x203f70(0x95)])+_0x203f70(0x79)+_0x26086b[_0x203f70(0x9e)][_0x203f70(0x71)](',\x20')+';\x20the\x20response\x20will\x20contain\x20a\x20regroup\x20taskId.'});},async 'execute'(_0xadb744){const _0x540aa1=a116_0x5937f8;validateRegroupInput(_0xadb744),requireExplicitYes(_0xadb744);const _0x3de9cf=await buildRegroupPlan(_0xadb744,![]);await recheckMutationSnapshot(_0xadb744,_0x3de9cf[_0x540aa1(0xb2)],'start\x20regroup');const _0x1f742e=buildMenuLookupCommand(_0xadb744[_0x540aa1(0x76)]);let _0x3215ee,_0x12ce0f;try{_0x3215ee=await startMenuRegroup(_0xadb744['cookie'],_0x3de9cf[_0x540aa1(0xbf)]),_0x12ce0f=normalizeAsyncTask(_0x3215ee);}catch(_0x11e62c){const _0x4ccd8a=await inspectRegroupAfterFailure(_0xadb744[_0x540aa1(0x76)],_0xadb744[_0x540aa1(0x99)],_0x3de9cf[_0x540aa1(0x95)],_0x3de9cf[_0x540aa1(0x9e)]),_0x56badd=typeof _0x3215ee?.[_0x540aa1(0x97)]===_0x540aa1(0x9f)&&_0x3215ee[_0x540aa1(0x97)]['trim']()?_0x3215ee[_0x540aa1(0x97)][_0x540aa1(0xb5)]():null,_0x27c7a0=_0x56badd?{'command':buildAsyncTaskStatusCommand(_0x56badd,_0xadb744[_0x540aa1(0x76)])}:null,_0x34708d=mapMenuApiError(_0x11e62c,_0x540aa1(0xa4));throw menuFailure(_0x34708d,_0x3de9cf[_0x540aa1(0xb2)],{'stage':_0x540aa1(0xb4),'failed':{'menuIds':_0x3de9cf[_0x540aa1(0x9e)],'taskId':_0x56badd,'groupingApplied':_0x4ccd8a[_0x540aa1(0xa0)]?!![]:'unconfirmed'},'after':_0x4ccd8a[_0x540aa1(0xa0)]??null,'warnings':[_0x540aa1(0x8a),..._0x4ccd8a['readbackError']?[_0x540aa1(0x7e)+_0x4ccd8a[_0x540aa1(0x69)]]:[],..._0x56badd?[_0x540aa1(0x6b)]:[]],'verification':{'status':_0x540aa1(0x8c),'groupingApplied':_0x4ccd8a[_0x540aa1(0xa0)]?!![]:_0x540aa1(0x94),'taskId':_0x56badd,'query':_0x27c7a0,'lookupCommand':_0x1f742e}});}const _0x20970b=buildAsyncTaskStatusCommand(_0x12ce0f['taskId'],_0xadb744[_0x540aa1(0x76)]);let _0x2e5b78=null,_0x12ff16=null,_0x22eb11=null;try{_0x2e5b78=await fetchMenuSnapshot(_0xadb744[_0x540aa1(0x76)],_0xadb744[_0x540aa1(0x99)]),_0x12ff16=findAppliedRegroup(_0x2e5b78,_0x3de9cf['label'],_0x3de9cf['menuIds']);}catch(_0x4472a5){_0x22eb11=_0x4472a5 instanceof Error?_0x4472a5[_0x540aa1(0xbb)]:String(_0x4472a5);}const _0x5382fa=mutationResult({..._0x3de9cf[_0x540aa1(0xb2)],'after':_0x12ff16??null,'dryRun':![],'succeeded':[{'groupId':_0x12ff16?.[_0x540aa1(0x73)]['id']??null,'menuIds':_0x3de9cf[_0x540aa1(0x9e)],'taskId':_0x12ce0f[_0x540aa1(0x97)],'status':_0x12ce0f[_0x540aa1(0xaf)],'groupingApplied':_0x12ff16?!![]:_0x540aa1(0x94)}],'verification':{'checkedBy':_0x540aa1(0xb1),'snapshotHash':_0x2e5b78?.[_0x540aa1(0x84)]??null,'groupId':_0x12ff16?.['group']['id']??null,'groupingApplied':_0x12ff16?!![]:_0x540aa1(0x94),'readbackError':_0x22eb11,'lookupCommand':_0x1f742e},'warnings':[..._0x3de9cf[_0x540aa1(0xb2)]['warnings'],...!_0x12ff16?[unconfirmedRegroupWarning(_0x12ce0f)]:[],..._0x22eb11?['Regroup\x20readback\x20failed:\x20'+_0x22eb11]:[]]}),_0x337931=_0x12ce0f[_0x540aa1(0xaf)]===_0x540aa1(0xb8)&&!_0x12ff16?_0x540aa1(0x7f)+_0x12ce0f[_0x540aa1(0x97)]+'\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.':_0x540aa1(0xc0)+asyncTaskMessage(_0x12ce0f);return{'ok':!![],'message':_0x337931,'data':{..._0x5382fa,'task':_0x12ce0f,'query':_0x12ce0f[_0x540aa1(0x9c)]?null:{'command':_0x20970b}}};}};function validateRegroupInput(_0x1ad3ce){const _0x444dec=a116_0x5937f8;if(!_0x1ad3ce[_0x444dec(0x7d)](_0x444dec(0x95))[_0x444dec(0xb5)]())throw CliErrors[_0x444dec(0x9d)](_0x444dec(0x95));parseMenuIds(_0x1ad3ce[_0x444dec(0x7d)](_0x444dec(0x8d)));}function a116_0x5c9c(){const _0x471190=['24351210TVIlba','SUCCESS','high-risk-write','Use\x20exact\x20non-folder\x20leaf\x20menu\x20ids.\x20Existing\x20folder\x20hierarchy\x20changes\x20remain\x20platform-owned.','message','3FKJHpv','plan\x20regroup','--menu-ids\x20supports\x20at\x20most\x20','input','Regroup\x20task\x20accepted.\x20','Menu\x20','regroup-start','199252xhTHBM','/smartapi/menu/regroup','readbackError','submit-regroup-task','The\x20response\x20included\x20a\x20taskId.\x20Query\x20that\x20taskId\x20instead\x20of\x20resubmitting\x20regroup.','validation','byId','Label\x20of\x20the\x20new\x20root\x20folder','filter','\x27\x5c\x27\x27','join','Menus\x20','group','\x20menu\x20list\x20--appcode\x20','menu_regroup_label_conflict','appCode','toLowerCase','childrenCount','\x20and\x20regroup\x20menu\x20ids\x20','584296NEAoig','menu_regroup_target_label_missing','menu','str','Regroup\x20readback\x20also\x20failed:\x20','Regroup\x20task\x20','get','FAILED','Start\x20an\x20asynchronous\x20menu\x20regroup;\x20query\x20the\x20returned\x20taskId\x20until\x20SUCCESS\x20or\x20FAILED','1035186jcTywb','hash','\x20has\x20no\x20non-empty\x20label\x20required\x20by\x20the\x20regroup\x20contract.','--menu-ids\x20cannot\x20contain\x20duplicate\x20menu\x20ids.','The\x20regroup\x20task\x20failed,\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Inspect\x20task.errorMessage\x20and\x20do\x20not\x20automatically\x20resubmit\x20this\x20non-idempotent\x20request.','The\x20returned\x20task\x20performs\x20the\x20regroup\x20asynchronously.\x20Keep\x20taskId\x20and\x20never\x20auto-retry\x20this\x20request.','length','The\x20regroup\x20transaction\x20may\x20commit\x20before\x20task\x20scheduling\x20returns.\x20Do\x20not\x20submit\x20the\x20same\x20regroup\x20again\x20until\x20menu\x20list\x20confirms\x20the\x20current\x20grouping.','The\x20regroup\x20task\x20was\x20accepted,\x20but\x20the\x20grouping\x20is\x20not\x20visible\x20yet.\x20Query\x20the\x20returned\x20taskId\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','failed','menu-ids','\x20is\x20not\x20a\x20leaf\x20menu\x20and\x20cannot\x20be\x20regrouped\x20by\x20this\x20command.','map','1406962ODbtXs','folder','--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.','parentId','unconfirmed','label','35CHsOgA','taskId','Do\x20not\x20resubmit\x20the\x20non-idempotent\x20regroup\x20request.\x20Query\x20the\x20original\x20taskId\x20if\x20it\x20is\x20available.','cookie','63JlLepN','size','isTerminal','flagMissing','menuIds','string','applied','<new-group-id>','split','POST','start\x20menu\x20regroup','678388vktERj','stringify','Would\x20submit\x20an\x20asynchronous\x20task\x20to\x20create\x20root\x20folder\x20','some','\x20are\x20already\x20the\x20exact\x20children\x20of\x20root\x20folder\x20','childrenIds','Repair\x20the\x20menu\x20label\x20in\x20the\x20platform\x20before\x20regrouping\x20it.','The\x20regroup\x20task\x20returned\x20an\x20unknown\x20status\x20and\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Review\x20the\x20task\x20manually\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.','1610973cTVBIX','knownStatus','status','sort','menu\x20list','plan','type','regroup-submit','trim','\x20--format\x20compress'];a116_0x5c9c=function(){return _0x471190;};return a116_0x5c9c();}function parseMenuIds(_0x2114c9){const _0x400445=a116_0x5937f8,_0x45463f=_0x2114c9[_0x400445(0xa2)](',')[_0x400445(0x8f)](_0x1df89c=>_0x1df89c[_0x400445(0xb5)]());if(_0x45463f['length']===0x0||_0x45463f[_0x400445(0xa8)](_0x4ff06a=>!_0x4ff06a))throw CliErrors[_0x400445(0x6c)]('--menu-ids\x20must\x20contain\x20comma-separated\x20positive\x20integer\x20menu\x20ids.');const _0x536e6a=_0x45463f['map'](_0x56fe26=>{const _0x54d5fc=_0x400445;if(!/^\d+$/['test'](_0x56fe26))throw CliErrors[_0x54d5fc(0x6c)](_0x54d5fc(0x92));const _0x1c7535=Number(_0x56fe26);if(!Number['isSafeInteger'](_0x1c7535)||_0x1c7535<=0x0)throw CliErrors[_0x54d5fc(0x6c)](_0x54d5fc(0x92));return _0x1c7535;});if(new Set(_0x536e6a)[_0x400445(0x9b)]!==_0x536e6a[_0x400445(0x89)])throw CliErrors[_0x400445(0x6c)](_0x400445(0x86));if(_0x536e6a['length']>MAX_REGROUP_MENU_COUNT)throw CliErrors[_0x400445(0x6c)](_0x400445(0xbe)+MAX_REGROUP_MENU_COUNT+'\x20menus\x20per\x20regroup\x20request.');return _0x536e6a;}function buildMenuLookupCommand(_0x1bf245){const _0x4cc950=a116_0x5937f8,_0x1bd36f='\x27'+_0x1bf245['replace'](/'/g,_0x4cc950(0x70))+'\x27';return CLI_BIN_NAME+_0x4cc950(0x74)+_0x1bd36f+_0x4cc950(0xb6);}function unconfirmedRegroupWarning(_0x341ecd){const _0x56639d=a116_0x5937f8;if(_0x341ecd[_0x56639d(0xaf)]===_0x56639d(0xb8))return'The\x20regroup\x20task\x20succeeded,\x20but\x20final\x20menu\x20grouping\x20is\x20unconfirmed.\x20Run\x20data.verification.lookupCommand\x20and\x20do\x20not\x20resubmit\x20this\x20non-idempotent\x20request.';if(_0x341ecd[_0x56639d(0xaf)]===_0x56639d(0x81))return _0x56639d(0x87);if(_0x341ecd[_0x56639d(0xae)])return _0x56639d(0x8b);return _0x56639d(0xac);}async function buildRegroupPlan(_0x280495,_0x346890){const _0x3638e5=a116_0x5937f8,_0x2f218a=_0x280495[_0x3638e5(0x7d)](_0x3638e5(0x95))[_0x3638e5(0xb5)](),_0x5ebd09=parseMenuIds(_0x280495[_0x3638e5(0x7d)]('menu-ids')),_0x348e69=await fetchMutationSnapshot(_0x280495,_0x3638e5(0xbd)),_0x38f301=_0x5ebd09[_0x3638e5(0x8f)](_0x36f34e=>requireMenu(_0x348e69,_0x36f34e));for(const _0x338aa1 of _0x38f301){if(_0x338aa1[_0x3638e5(0xb3)][_0x3638e5(0xb5)]()[_0x3638e5(0x77)]()===_0x3638e5(0x91)||_0x338aa1[_0x3638e5(0x78)]>0x0)throw menuError('menu_regroup_target_not_leaf',_0x3638e5(0xc1)+_0x338aa1['id']+_0x3638e5(0x8e),_0x3638e5(0xba));if(!_0x338aa1[_0x3638e5(0x95)][_0x3638e5(0xb5)]())throw menuError(_0x3638e5(0x7b),_0x3638e5(0xc1)+_0x338aa1['id']+_0x3638e5(0x85),_0x3638e5(0xab));}const _0x1ae28c=findAppliedRegroup(_0x348e69,_0x2f218a,_0x5ebd09);if(_0x1ae28c)throw menuError('menu_regroup_already_applied',_0x3638e5(0x72)+_0x5ebd09[_0x3638e5(0x71)](',\x20')+_0x3638e5(0xa9)+_0x1ae28c['group']['id']+'\x20('+JSON[_0x3638e5(0xa6)](_0x2f218a)+').',_0x3638e5(0x98));const _0x29b302=_0x348e69['menus'][_0x3638e5(0x6f)](_0x372721=>_0x372721[_0x3638e5(0x93)]==null&&_0x372721[_0x3638e5(0xb3)]['trim']()[_0x3638e5(0x77)]()===_0x3638e5(0x91)&&_0x372721['label']===_0x2f218a);if(_0x29b302[_0x3638e5(0x89)]>0x0)throw menuError(_0x3638e5(0x75),'Root\x20folder\x20label\x20'+JSON[_0x3638e5(0xa6)](_0x2f218a)+'\x20already\x20belongs\x20to\x20menu\x20id(s)\x20'+_0x29b302[_0x3638e5(0x8f)](_0x133906=>_0x133906['id'])['join'](',\x20')+'.','Choose\x20a\x20unique\x20root\x20folder\x20label\x20or\x20inspect\x20the\x20existing\x20folder\x20before\x20regrouping.');const _0x38d11d={'appCode':_0x280495[_0x3638e5(0x76)],'menuGroups':[{'label':_0x2f218a,'type':'folder','children':_0x38f301[_0x3638e5(0x8f)](_0x243d62=>({'id':_0x243d62['id'],'label':_0x243d62[_0x3638e5(0x95)]}))}]},_0x5819af=mutationResult({'operation':'regroup-start','selector':{'label':_0x2f218a,'menuIds':_0x5ebd09},'before':{'menus':_0x38f301},'after':{'group':{'id':null,'parentId':null,'label':_0x2f218a,'path':'<platform-generated>','type':_0x3638e5(0x91),'childrenIds':_0x5ebd09},'children':_0x38f301['map'](_0x4346ad=>({'id':_0x4346ad['id'],'label':_0x4346ad['label'],'beforeParentId':_0x4346ad[_0x3638e5(0x93)],'afterParentId':_0x3638e5(0xa1)}))},'dryRun':_0x346890,'backend':[...BACKEND],'plannedActions':[{'stage':_0x3638e5(0x6a),'method':_0x3638e5(0xa3),'path':_0x3638e5(0xc4),'body':_0x38d11d}],'snapshotHash':_0x348e69[_0x3638e5(0x84)],'warnings':['The\x20regroup\x20endpoint\x20is\x20non-idempotent:\x20every\x20accepted\x20request\x20creates\x20a\x20new\x20root\x20folder.',_0x3638e5(0x88)]});return{'label':_0x2f218a,'menuIds':_0x5ebd09,'input':_0x38d11d,'plan':_0x5819af};}function findAppliedRegroup(_0x1308d8,_0x33c3d6,_0x305ff6){const _0x145963=a116_0x5937f8,_0x4e6abd=_0x305ff6[_0x145963(0x8f)](_0x233f90=>_0x1308d8[_0x145963(0x6d)]['get'](_0x233f90))['filter'](_0x3615b0=>Boolean(_0x3615b0));if(_0x4e6abd[_0x145963(0x89)]!==_0x305ff6['length'])return null;const _0x39d5e3=_0x4e6abd[0x0]?.[_0x145963(0x93)];if(_0x39d5e3==null||_0x4e6abd['some'](_0x21eec4=>_0x21eec4[_0x145963(0x93)]!==_0x39d5e3))return null;const _0x2e179d=_0x1308d8['byId'][_0x145963(0x80)](_0x39d5e3);if(!_0x2e179d||_0x2e179d[_0x145963(0x93)]!=null||_0x2e179d[_0x145963(0xb3)][_0x145963(0xb5)]()['toLowerCase']()!==_0x145963(0x91)||_0x2e179d['label']!==_0x33c3d6)return null;const _0x573ca2=[..._0x305ff6]['sort']((_0xdd585c,_0x3dc7f2)=>_0xdd585c-_0x3dc7f2),_0x5a2653=[..._0x2e179d[_0x145963(0xaa)]][_0x145963(0xb0)]((_0x220d35,_0x49e6ad)=>_0x220d35-_0x49e6ad);if(JSON[_0x145963(0xa6)](_0x5a2653)!==JSON['stringify'](_0x573ca2))return null;return{'group':_0x2e179d,'children':_0x4e6abd};}function a116_0x499e(_0x39ed8d,_0x3995d2){_0x39ed8d=_0x39ed8d-0x69;const _0x5c9c90=a116_0x5c9c();let _0x499e86=_0x5c9c90[_0x39ed8d];return _0x499e86;}async function inspectRegroupAfterFailure(_0x242150,_0x26c2cd,_0x29ec9c,_0x24d43d){try{const _0x3a66f1=await fetchMenuSnapshot(_0x242150,_0x26c2cd);return{'applied':findAppliedRegroup(_0x3a66f1,_0x29ec9c,_0x24d43d),'readbackError':null};}catch(_0x45ab88){return{'applied':null,'readbackError':_0x45ab88 instanceof Error?_0x45ab88['message']:String(_0x45ab88)};}}
@@ -1 +1 @@
1
- const a111_0x578e2b=a111_0x2ecc;(function(_0x48a1ca,_0x1d15bf){const _0x570b95=a111_0x2ecc,_0x5d46b5=_0x48a1ca();while(!![]){try{const _0x2df1c4=parseInt(_0x570b95(0x1a5))/0x1*(parseInt(_0x570b95(0x18e))/0x2)+-parseInt(_0x570b95(0x182))/0x3+parseInt(_0x570b95(0x166))/0x4*(-parseInt(_0x570b95(0x17c))/0x5)+-parseInt(_0x570b95(0x186))/0x6*(parseInt(_0x570b95(0x19d))/0x7)+-parseInt(_0x570b95(0x175))/0x8*(parseInt(_0x570b95(0x1ad))/0x9)+-parseInt(_0x570b95(0x18a))/0xa+parseInt(_0x570b95(0x19e))/0xb;if(_0x2df1c4===_0x1d15bf)break;else _0x5d46b5['push'](_0x5d46b5['shift']());}catch(_0x2cec20){_0x5d46b5['push'](_0x5d46b5['shift']());}}}(a111_0x3041,0x20126));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,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':a111_0x578e2b(0x1a1),'path':'/smartapi/menu/update'}];export const menuRename={'service':a111_0x578e2b(0x195),'command':a111_0x578e2b(0x1a6),'description':a111_0x578e2b(0x174),'risk':a111_0x578e2b(0x16a),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a111_0x578e2b(0x162),'type':a111_0x578e2b(0x168),'required':!![],'description':a111_0x578e2b(0x16f)},{'name':a111_0x578e2b(0x1b7),'type':'string','required':!![],'description':a111_0x578e2b(0x1b0)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5ba57f){validateInput(_0x5ba57f),requireExplicitYes(_0x5ba57f);},async 'dryRun'(_0x19d81e){const _0x518fbe=a111_0x578e2b;validateInput(_0x19d81e);const _0x2873e0=await buildPlan(_0x19d81e,!![]);return menuDryRunResult(_0x2873e0[_0x518fbe(0x178)],{'method':_0x518fbe(0x1a1),'url':_0x518fbe(0x1ac),'body':_0x2873e0[_0x518fbe(0x1af)],'description':_0x518fbe(0x19f)+_0x2873e0[_0x518fbe(0x1af)]['id']+'.'});},async 'execute'(_0x131e29){const _0x57cec9=a111_0x578e2b;validateInput(_0x131e29),requireExplicitYes(_0x131e29);const _0x70fe22=await buildPlan(_0x131e29,![]),{plan:_0x560aad,body:_0x20e621,before:_0x39a02f,noChanges:_0x2df9dd}=_0x70fe22,_0x183b78=_0x20e621['id'];if(_0x2df9dd)return renameSuccess(_0x560aad,_0x70fe22[_0x57cec9(0x193)],_0x39a02f,!![],![]);await recheckMutationSnapshot(_0x131e29,_0x560aad,_0x57cec9(0x190),_0x183b78);try{await updateMenuEntity(_0x131e29['appCode'],_0x131e29[_0x57cec9(0x1ae)],{'id':_0x183b78,'label':_0x20e621[_0x57cec9(0x162)]});}catch(_0x354dba){const _0x2060bb=mapMenuApiError(_0x354dba,_0x57cec9(0x1a6),_0x183b78);if(isMenuResponseLoss(_0x354dba)&&_0x2060bb['code']!==_0x57cec9(0x16e))return recoverAfterResponseLoss(_0x131e29,_0x70fe22);throw menuFailure(_0x2060bb,_0x560aad,{'stage':_0x57cec9(0x164),'failed':{'id':_0x183b78},'warnings':[_0x57cec9(0x1b3)],'verification':{'status':_0x57cec9(0x194),'targetId':_0x183b78,'lookupCommand':buildLookupCommand(_0x131e29[_0x57cec9(0x169)])}});}let _0x144a52,_0x6c0a54;try{_0x144a52=await fetchMenuSnapshot(_0x131e29['appCode'],_0x131e29['cookie']),_0x6c0a54=requireMenu(_0x144a52,_0x183b78),verifyRenamedFact(_0x39a02f,_0x6c0a54,_0x20e621[_0x57cec9(0x162)]);}catch(_0x8ba3e){const _0x230a64=describeMenuErrorCause(_0x8ba3e,_0x57cec9(0x17d),_0x183b78),_0x53cc38=asVerificationError(_0x8ba3e,'Rename\x20request\x20for\x20menu\x20'+_0x183b78+_0x57cec9(0x18c));throw menuFailure(_0x53cc38,_0x560aad,{'stage':_0x57cec9(0x1a8),'succeeded':[{'id':_0x183b78,'updateRequested':!![]}],'failed':{'id':_0x183b78,'requestedStateConfirmed':![],..._0x230a64},'warnings':[_0x57cec9(0x167)],'verification':{'status':_0x57cec9(0x194),'targetId':_0x183b78,'lookupCommand':buildLookupCommand(_0x131e29['appCode'])}});}return renameSuccess(_0x560aad,_0x144a52,_0x6c0a54,![],![]);}};function validateInput(_0x2cf62f){const _0x2c9e36=a111_0x578e2b;validateExactId(_0x2cf62f);if(!_0x2cf62f[_0x2c9e36(0x177)]('label')['trim']())throw CliErrors[_0x2c9e36(0x19b)](_0x2c9e36(0x197));if(!_0x2cf62f[_0x2c9e36(0x177)](_0x2c9e36(0x1b7))[_0x2c9e36(0x181)]())throw CliErrors['flagMissing'](_0x2c9e36(0x1b7));}function a111_0x2ecc(_0x24c8ad,_0x1139fb){_0x24c8ad=_0x24c8ad-0x162;const _0x304115=a111_0x3041();let _0x2ecc8d=_0x304115[_0x24c8ad];return _0x2ecc8d;}async function buildPlan(_0x53bbb3,_0x44f1be){const _0x12def3=a111_0x578e2b,_0x1b8904=validateExactId(_0x53bbb3),_0x1cf5a0=_0x53bbb3[_0x12def3(0x177)]('label')['trim'](),_0x3b2cd2=_0x53bbb3[_0x12def3(0x177)](_0x12def3(0x1b7)),_0x45183c=await fetchMutationSnapshot(_0x53bbb3,'rename\x20menu',_0x1b8904),_0x3d64c8=requireMenu(_0x45183c,_0x1b8904);if(_0x3d64c8['label']!==_0x3b2cd2)throw menuError('menu_state_drift',_0x12def3(0x172)+_0x1b8904+_0x12def3(0x165)+JSON[_0x12def3(0x17f)](_0x3b2cd2)+_0x12def3(0x189)+JSON[_0x12def3(0x17f)](_0x3d64c8[_0x12def3(0x162)])+'.',_0x12def3(0x1a7));const _0x546571={'id':_0x1b8904,'appCode':_0x53bbb3['appCode'],'label':_0x1cf5a0},_0x5596ee={..._0x3d64c8,'label':_0x1cf5a0},_0x598d83=_0x3d64c8[_0x12def3(0x162)]===_0x1cf5a0,_0x123ab2=_0x598d83?[]:[{'stage':_0x12def3(0x196),'method':_0x12def3(0x1a1),'path':_0x12def3(0x1ac),'body':_0x546571}];return{'snapshot':_0x45183c,'before':_0x3d64c8,'body':_0x546571,'noChanges':_0x598d83,'plan':mutationResult({'operation':_0x12def3(0x1a6),'selector':{'id':_0x1b8904},'before':_0x3d64c8,'after':_0x5596ee,'dryRun':_0x44f1be,'backend':[...BACKEND],'plannedActions':_0x123ab2,'snapshotHash':_0x45183c[_0x12def3(0x18d)],'warnings':_0x598d83?[_0x12def3(0x1ab)]:[]})};}function verifyRenamedFact(_0x27bdd6,_0x9d3de9,_0x5bb6b5){const _0xd7a5ba=a111_0x578e2b,_0x37b4a3=[['id',_0x9d3de9['id'],_0x27bdd6['id']],['parentId',_0x9d3de9['parentId'],_0x27bdd6[_0xd7a5ba(0x184)]],[_0xd7a5ba(0x17e),_0x9d3de9[_0xd7a5ba(0x17e)],_0x27bdd6[_0xd7a5ba(0x17e)]],[_0xd7a5ba(0x1a0),_0x9d3de9[_0xd7a5ba(0x1a0)],_0x27bdd6[_0xd7a5ba(0x1a0)]],[_0xd7a5ba(0x1b5),_0x9d3de9[_0xd7a5ba(0x1b5)],_0x27bdd6[_0xd7a5ba(0x1b5)]],['type',_0x9d3de9['type'],_0x27bdd6[_0xd7a5ba(0x17b)]],[_0xd7a5ba(0x19c),_0x9d3de9[_0xd7a5ba(0x19c)],_0x27bdd6[_0xd7a5ba(0x19c)]],[_0xd7a5ba(0x198),_0x9d3de9[_0xd7a5ba(0x198)],_0x27bdd6[_0xd7a5ba(0x198)]],['resources',_0x9d3de9['resources'],_0x27bdd6[_0xd7a5ba(0x1a2)]],[_0xd7a5ba(0x1a4),_0x9d3de9[_0xd7a5ba(0x1a4)],_0x27bdd6['resourcesValid']],['childrenIds',_0x9d3de9[_0xd7a5ba(0x179)],_0x27bdd6[_0xd7a5ba(0x179)]],['childrenCount',_0x9d3de9['childrenCount'],_0x27bdd6[_0xd7a5ba(0x192)]],[_0xd7a5ba(0x170),_0x9d3de9['pageId'],_0x27bdd6[_0xd7a5ba(0x170)]],['pageType',_0x9d3de9[_0xd7a5ba(0x16b)],_0x27bdd6[_0xd7a5ba(0x16b)]],[_0xd7a5ba(0x187),_0x9d3de9['modelType'],_0x27bdd6[_0xd7a5ba(0x187)]],[_0xd7a5ba(0x183),_0x9d3de9[_0xd7a5ba(0x183)],_0x27bdd6[_0xd7a5ba(0x183)]],[_0xd7a5ba(0x16c),_0x9d3de9[_0xd7a5ba(0x16c)],_0x27bdd6[_0xd7a5ba(0x16c)]]];for(const [_0x576b92,_0x54ec89,_0x459026]of _0x37b4a3){assertVerified(sameValue(_0x54ec89,_0x459026),_0xd7a5ba(0x172)+_0x27bdd6['id']+'\x20'+_0x576b92+_0xd7a5ba(0x19a));}assertVerified(_0x9d3de9[_0xd7a5ba(0x162)]===_0x5bb6b5,_0xd7a5ba(0x172)+_0x27bdd6['id']+'\x20label\x20update\x20did\x20not\x20take\x20effect.');}function sameValue(_0x34e600,_0xa27ea4){const _0x931c4a=a111_0x578e2b;if(Array[_0x931c4a(0x1b6)](_0x34e600)||Array['isArray'](_0xa27ea4))return JSON[_0x931c4a(0x17f)](_0x34e600)===JSON[_0x931c4a(0x17f)](_0xa27ea4);return _0x34e600===_0xa27ea4;}function renameSuccess(_0x409708,_0x7d0620,_0x309c6f,_0x1bbaff,_0x589cd3){const _0x578059=a111_0x578e2b,_0x25131b=_0x309c6f['id'],_0xd8b20e=mutationResult({..._0x409708,'after':_0x309c6f,'dryRun':![],'succeeded':[{'id':_0x25131b,'updated':!_0x1bbaff,'skipped':_0x1bbaff,'recovered':_0x589cd3}],'verification':{'checkedBy':_0x578059(0x188),'snapshotHash':_0x7d0620[_0x578059(0x18d)],'targetId':_0x25131b,'matchesRequestedState':!![],'recovered':_0x589cd3}});return{'ok':!![],'message':_0x589cd3?_0x578059(0x16d)+_0x25131b+'.':_0x1bbaff?'Menu\x20'+_0x25131b+'\x20already\x20has\x20the\x20requested\x20label.':_0x578059(0x1a9)+_0x25131b+'.','data':{..._0xd8b20e,'recovered':_0x589cd3}};}async function recoverAfterResponseLoss(_0x2aa059,_0xcb8a7e){const _0x2c8d12=a111_0x578e2b,{plan:_0x7295de,before:_0x328fbe,body:_0x2dbd7a}=_0xcb8a7e;let _0x24babf;try{_0x24babf=await fetchMenuSnapshot(_0x2aa059[_0x2c8d12(0x169)],_0x2aa059[_0x2c8d12(0x1ae)]);}catch{throw recoveryRequired(_0x7295de,_0x2aa059['appCode'],{'id':_0x2dbd7a['id'],'readbackFailed':!![]});}const _0x4c49df=_0x24babf[_0x2c8d12(0x18f)][_0x2c8d12(0x180)](_0x2dbd7a['id']);if(!_0x4c49df||_0x4c49df['label']!==_0x2dbd7a[_0x2c8d12(0x162)])throw recoveryRequired(_0x7295de,_0x2aa059['appCode'],{'id':_0x2dbd7a['id'],'requestedLabelObserved':![],'after':_0x4c49df??null});try{verifyRenamedFact(_0x328fbe,_0x4c49df,_0x2dbd7a[_0x2c8d12(0x162)]);}catch(_0x5aa5e6){const _0x2745f2=asVerificationError(_0x5aa5e6,_0x2c8d12(0x171)+_0x2dbd7a['id']+_0x2c8d12(0x1a3));throw menuFailure(_0x2745f2,_0x7295de,{'stage':_0x2c8d12(0x173),'succeeded':[{'id':_0x2dbd7a['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x2dbd7a['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x4c49df,'warnings':['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':_0x2c8d12(0x194),'targetId':_0x2dbd7a['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x2aa059[_0x2c8d12(0x169)])}});}return renameSuccess(_0x7295de,_0x24babf,_0x4c49df,![],!![]);}function recoveryRequired(_0x391a8f,_0x4c04fb,_0x162d07){const _0x49c8ab=a111_0x578e2b,_0x5024e3=menuError(_0x49c8ab(0x17a),_0x49c8ab(0x1b2),'Run\x20'+buildLookupCommand(_0x4c04fb)+_0x49c8ab(0x185));return menuFailure(_0x5024e3,_0x391a8f,{'stage':_0x49c8ab(0x173),'failed':{'id':_0x162d07['id'],..._0x162d07['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x162d07['requestedLabelObserved']},..._0x162d07[_0x49c8ab(0x199)]?{'readbackFailed':!![]}:{}},'after':_0x162d07[_0x49c8ab(0x1b1)],'warnings':[_0x49c8ab(0x1aa)],'verification':{'status':'failed','targetId':_0x162d07['id'],..._0x162d07[_0x49c8ab(0x163)]===undefined?{}:{'requestedLabelObserved':_0x162d07[_0x49c8ab(0x163)]},..._0x162d07[_0x49c8ab(0x199)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x4c04fb)}});}function buildLookupCommand(_0x1dcabb){const _0x1ec9b5=a111_0x578e2b,_0x14fe84='\x27'+_0x1dcabb[_0x1ec9b5(0x18b)](/'/g,_0x1ec9b5(0x176))+'\x27';return _0x1ec9b5(0x191)+_0x14fe84+_0x1ec9b5(0x1b4);}function a111_0x3041(){const _0x512ee3=['byId','rename\x20menu','rabetbase\x20menu\x20list\x20--appcode\x20','childrenCount','snapshot','failed','menu','rename-menu','--label\x20cannot\x20be\x20empty.','sort','readbackFailed','\x20changed\x20during\x20the\x20label-only\x20rename.','validation','visible','910007AFtSVg','5237441zBWhsd','Would\x20rename\x20menu\x20','path','POST','resources','\x20could\x20not\x20be\x20verified\x20safely','resourcesValid','5794fOEzDW','rename','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','verification','Renamed\x20menu\x20','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','/smartapi/menu/update','9DyhyFU','cookie','body','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','after','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','\x20--format\x20compress','url','isArray','expect-label','label','requestedLabelObserved','update','\x20label\x20changed:\x20expected\x20','75388yfAelM','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','string','appCode','high-risk-write','pageType','datasetCode','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','menu_permission_denied','New\x20menu\x20label','pageId','Response\x20was\x20lost\x20and\x20menu\x20','Menu\x20','update-recovery','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','143656KSuDpm','\x27\x5c\x27\x27','str','plan','childrenIds','menu_update_recovery_required','type','5VLTtub','verify\x20menu\x20rename','depth','stringify','get','trim','381891QzshZd','datasetId','parentId','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','12WfLDgj','modelType','menu\x20list',',\x20current\x20','1350400cNIFAZ','replace','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','hash','74xRYHbS'];a111_0x3041=function(){return _0x512ee3;};return a111_0x3041();}
1
+ const a117_0x20186b=a117_0x2493;function a117_0x3a45(){const _0x416ad5=['The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','body','938932jxEBUW','\x20changed\x20during\x20the\x20label-only\x20rename.','--label\x20cannot\x20be\x20empty.','verification','menu_update_recovery_required','childrenIds','pageType','label','isArray','menu\x20list','code','resourcesValid','935lwDMYE','datasetId','\x20--format\x20compress','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','requestedLabelObserved','Renamed\x20menu\x20','\x27\x5c\x27\x27','Run\x20','menu','byId','stringify','validation','plan','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','8shClDO','path','modelType','failed','POST','Would\x20rename\x20menu\x20','990qyLGni','readbackFailed','133509zHSzCT','100vJLXsU','update','rename','appCode','flagMissing','rename\x20menu','expect-label','The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.','get','870793uSeqfk','snapshot','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','menu_permission_denied','visible','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','replace','depth','/smartapi/menu/update','string','high-risk-write','7802060IuDRfb','str','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','url','datasetCode','Menu\x20','23917380NAoUBJ','after','parentId','pageId','hash','cookie','Response\x20was\x20lost\x20and\x20menu\x20','sort','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','\x20could\x20not\x20be\x20verified\x20safely','rename-menu','\x20label\x20changed:\x20expected\x20','type','trim','\x20already\x20has\x20the\x20requested\x20label.','\x20label\x20update\x20did\x20not\x20take\x20effect.','childrenCount','8309610djKIdl','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','rabetbase\x20menu\x20list\x20--appcode\x20','verify\x20menu\x20rename','90tWjHKz','2enFTNa','resources','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.'];a117_0x3a45=function(){return _0x416ad5;};return a117_0x3a45();}(function(_0x3ed749,_0x4712b9){const _0x4c7c2f=a117_0x2493,_0xf55839=_0x3ed749();while(!![]){try{const _0xadc429=parseInt(_0x4c7c2f(0x174))/0x1*(-parseInt(_0x4c7c2f(0x179))/0x2)+parseInt(_0x4c7c2f(0x19b))/0x3*(parseInt(_0x4c7c2f(0x19c))/0x4)+parseInt(_0x4c7c2f(0x185))/0x5*(-parseInt(_0x4c7c2f(0x199))/0x6)+-parseInt(_0x4c7c2f(0x1b0))/0x7*(parseInt(_0x4c7c2f(0x193))/0x8)+-parseInt(_0x4c7c2f(0x16f))/0x9+parseInt(_0x4c7c2f(0x173))/0xa*(parseInt(_0x4c7c2f(0x1a5))/0xb)+parseInt(_0x4c7c2f(0x1b6))/0xc;if(_0xadc429===_0x4712b9)break;else _0xf55839['push'](_0xf55839['shift']());}catch(_0xc8b9c9){_0xf55839['push'](_0xf55839['shift']());}}}(a117_0x3a45,0xc5e04));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{fetchMenuSnapshot}from'../../commands/menu/shared/facts.js';import{MENU_ID_FLAG,asVerificationError,assertVerified,describeMenuErrorCause,fetchMutationSnapshot,isMenuResponseLoss,mapMenuApiError,menuDryRunResult,menuError,menuFailure,mutationResult,recheckMutationSnapshot,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':a117_0x20186b(0x197),'path':a117_0x20186b(0x1ad)}];export const menuRename={'service':a117_0x20186b(0x18d),'command':a117_0x20186b(0x19e),'description':'Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','risk':a117_0x20186b(0x1af),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a117_0x20186b(0x180),'type':a117_0x20186b(0x1ae),'required':!![],'description':'New\x20menu\x20label'},{'name':'expect-label','type':a117_0x20186b(0x1ae),'required':!![],'description':a117_0x20186b(0x1be)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1987ca){validateInput(_0x1987ca),requireExplicitYes(_0x1987ca);},async 'dryRun'(_0x4031e3){const _0x41dacc=a117_0x20186b;validateInput(_0x4031e3);const _0x5a934e=await buildPlan(_0x4031e3,!![]);return menuDryRunResult(_0x5a934e[_0x41dacc(0x191)],{'method':_0x41dacc(0x197),'url':_0x41dacc(0x1ad),'body':_0x5a934e['body'],'description':_0x41dacc(0x198)+_0x5a934e[_0x41dacc(0x178)]['id']+'.'});},async 'execute'(_0x1674e9){const _0x15118d=a117_0x20186b;validateInput(_0x1674e9),requireExplicitYes(_0x1674e9);const _0x583509=await buildPlan(_0x1674e9,![]),{plan:_0x5a1221,body:_0xec147f,before:_0x490d75,noChanges:_0x635641}=_0x583509,_0x29eafc=_0xec147f['id'];if(_0x635641)return renameSuccess(_0x5a1221,_0x583509[_0x15118d(0x1a6)],_0x490d75,!![],![]);await recheckMutationSnapshot(_0x1674e9,_0x5a1221,_0x15118d(0x1a1),_0x29eafc);try{await updateMenuEntity(_0x1674e9['appCode'],_0x1674e9[_0x15118d(0x1bb)],{'id':_0x29eafc,'label':_0xec147f[_0x15118d(0x180)]});}catch(_0x1cf615){const _0x40affd=mapMenuApiError(_0x1cf615,_0x15118d(0x19e),_0x29eafc);if(isMenuResponseLoss(_0x1cf615)&&_0x40affd[_0x15118d(0x183)]!==_0x15118d(0x1a8))return recoverAfterResponseLoss(_0x1674e9,_0x583509);throw menuFailure(_0x40affd,_0x5a1221,{'stage':_0x15118d(0x19d),'failed':{'id':_0x29eafc},'warnings':[_0x15118d(0x1a3)],'verification':{'status':_0x15118d(0x196),'targetId':_0x29eafc,'lookupCommand':buildLookupCommand(_0x1674e9[_0x15118d(0x19f)])}});}let _0x3492a2,_0x3027cc;try{_0x3492a2=await fetchMenuSnapshot(_0x1674e9['appCode'],_0x1674e9[_0x15118d(0x1bb)]),_0x3027cc=requireMenu(_0x3492a2,_0x29eafc),verifyRenamedFact(_0x490d75,_0x3027cc,_0xec147f['label']);}catch(_0x139ece){const _0x48b57a=describeMenuErrorCause(_0x139ece,_0x15118d(0x172),_0x29eafc),_0x38fd74=asVerificationError(_0x139ece,'Rename\x20request\x20for\x20menu\x20'+_0x29eafc+_0x15118d(0x1b2));throw menuFailure(_0x38fd74,_0x5a1221,{'stage':_0x15118d(0x17c),'succeeded':[{'id':_0x29eafc,'updateRequested':!![]}],'failed':{'id':_0x29eafc,'requestedStateConfirmed':![],..._0x48b57a},'warnings':[_0x15118d(0x188)],'verification':{'status':_0x15118d(0x196),'targetId':_0x29eafc,'lookupCommand':buildLookupCommand(_0x1674e9['appCode'])}});}return renameSuccess(_0x5a1221,_0x3492a2,_0x3027cc,![],![]);}};function validateInput(_0x21b227){const _0x5a6e1d=a117_0x20186b;validateExactId(_0x21b227);if(!_0x21b227[_0x5a6e1d(0x1b1)]('label')[_0x5a6e1d(0x1c3)]())throw CliErrors[_0x5a6e1d(0x190)](_0x5a6e1d(0x17b));if(!_0x21b227[_0x5a6e1d(0x1b1)](_0x5a6e1d(0x1a2))[_0x5a6e1d(0x1c3)]())throw CliErrors[_0x5a6e1d(0x1a0)](_0x5a6e1d(0x1a2));}async function buildPlan(_0x993c2c,_0x3cdcea){const _0x5629c2=a117_0x20186b,_0x74b13=validateExactId(_0x993c2c),_0x1a04e0=_0x993c2c[_0x5629c2(0x1b1)]('label')[_0x5629c2(0x1c3)](),_0x7df3d5=_0x993c2c[_0x5629c2(0x1b1)]('expect-label'),_0x4edc5f=await fetchMutationSnapshot(_0x993c2c,_0x5629c2(0x1a1),_0x74b13),_0x4fc8c4=requireMenu(_0x4edc5f,_0x74b13);if(_0x4fc8c4[_0x5629c2(0x180)]!==_0x7df3d5)throw menuError('menu_state_drift',_0x5629c2(0x1b5)+_0x74b13+_0x5629c2(0x1c1)+JSON[_0x5629c2(0x18f)](_0x7df3d5)+',\x20current\x20'+JSON[_0x5629c2(0x18f)](_0x4fc8c4['label'])+'.','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.');const _0x46fea5={'id':_0x74b13,'appCode':_0x993c2c[_0x5629c2(0x19f)],'label':_0x1a04e0},_0x5c29d0={..._0x4fc8c4,'label':_0x1a04e0},_0x1342d5=_0x4fc8c4[_0x5629c2(0x180)]===_0x1a04e0,_0x3208e9=_0x1342d5?[]:[{'stage':_0x5629c2(0x1c0),'method':'POST','path':_0x5629c2(0x1ad),'body':_0x46fea5}];return{'snapshot':_0x4edc5f,'before':_0x4fc8c4,'body':_0x46fea5,'noChanges':_0x1342d5,'plan':mutationResult({'operation':_0x5629c2(0x19e),'selector':{'id':_0x74b13},'before':_0x4fc8c4,'after':_0x5c29d0,'dryRun':_0x3cdcea,'backend':[...BACKEND],'plannedActions':_0x3208e9,'snapshotHash':_0x4edc5f[_0x5629c2(0x1ba)],'warnings':_0x1342d5?[_0x5629c2(0x1aa)]:[]})};}function verifyRenamedFact(_0x2d9ef6,_0x1b3f75,_0xc3a66a){const _0x1f7afa=a117_0x20186b,_0x219fbf=[['id',_0x1b3f75['id'],_0x2d9ef6['id']],[_0x1f7afa(0x1b8),_0x1b3f75['parentId'],_0x2d9ef6[_0x1f7afa(0x1b8)]],[_0x1f7afa(0x1ac),_0x1b3f75[_0x1f7afa(0x1ac)],_0x2d9ef6[_0x1f7afa(0x1ac)]],[_0x1f7afa(0x194),_0x1b3f75[_0x1f7afa(0x194)],_0x2d9ef6['path']],['url',_0x1b3f75[_0x1f7afa(0x1b3)],_0x2d9ef6[_0x1f7afa(0x1b3)]],['type',_0x1b3f75[_0x1f7afa(0x1c2)],_0x2d9ef6[_0x1f7afa(0x1c2)]],[_0x1f7afa(0x1a9),_0x1b3f75[_0x1f7afa(0x1a9)],_0x2d9ef6['visible']],[_0x1f7afa(0x1bd),_0x1b3f75[_0x1f7afa(0x1bd)],_0x2d9ef6['sort']],[_0x1f7afa(0x175),_0x1b3f75[_0x1f7afa(0x175)],_0x2d9ef6['resources']],[_0x1f7afa(0x184),_0x1b3f75[_0x1f7afa(0x184)],_0x2d9ef6[_0x1f7afa(0x184)]],[_0x1f7afa(0x17e),_0x1b3f75['childrenIds'],_0x2d9ef6[_0x1f7afa(0x17e)]],[_0x1f7afa(0x16e),_0x1b3f75[_0x1f7afa(0x16e)],_0x2d9ef6[_0x1f7afa(0x16e)]],[_0x1f7afa(0x1b9),_0x1b3f75[_0x1f7afa(0x1b9)],_0x2d9ef6[_0x1f7afa(0x1b9)]],['pageType',_0x1b3f75['pageType'],_0x2d9ef6[_0x1f7afa(0x17f)]],['modelType',_0x1b3f75[_0x1f7afa(0x195)],_0x2d9ef6[_0x1f7afa(0x195)]],[_0x1f7afa(0x186),_0x1b3f75[_0x1f7afa(0x186)],_0x2d9ef6[_0x1f7afa(0x186)]],[_0x1f7afa(0x1b4),_0x1b3f75[_0x1f7afa(0x1b4)],_0x2d9ef6[_0x1f7afa(0x1b4)]]];for(const [_0x16e221,_0x5ad80e,_0x2f7387]of _0x219fbf){assertVerified(sameValue(_0x5ad80e,_0x2f7387),'Menu\x20'+_0x2d9ef6['id']+'\x20'+_0x16e221+_0x1f7afa(0x17a));}assertVerified(_0x1b3f75['label']===_0xc3a66a,'Menu\x20'+_0x2d9ef6['id']+_0x1f7afa(0x16d));}function sameValue(_0x5b6dab,_0x44778a){const _0x3fe0db=a117_0x20186b;if(Array[_0x3fe0db(0x181)](_0x5b6dab)||Array[_0x3fe0db(0x181)](_0x44778a))return JSON[_0x3fe0db(0x18f)](_0x5b6dab)===JSON[_0x3fe0db(0x18f)](_0x44778a);return _0x5b6dab===_0x44778a;}function renameSuccess(_0x9aa31,_0x171ab8,_0xeefca6,_0x12bb6f,_0x2020d7){const _0x3ed315=a117_0x20186b,_0x4e9d97=_0xeefca6['id'],_0x468fbc=mutationResult({..._0x9aa31,'after':_0xeefca6,'dryRun':![],'succeeded':[{'id':_0x4e9d97,'updated':!_0x12bb6f,'skipped':_0x12bb6f,'recovered':_0x2020d7}],'verification':{'checkedBy':_0x3ed315(0x182),'snapshotHash':_0x171ab8[_0x3ed315(0x1ba)],'targetId':_0x4e9d97,'matchesRequestedState':!![],'recovered':_0x2020d7}});return{'ok':!![],'message':_0x2020d7?_0x3ed315(0x192)+_0x4e9d97+'.':_0x12bb6f?_0x3ed315(0x1b5)+_0x4e9d97+_0x3ed315(0x16c):_0x3ed315(0x18a)+_0x4e9d97+'.','data':{..._0x468fbc,'recovered':_0x2020d7}};}async function recoverAfterResponseLoss(_0x59229b,_0x1782f4){const _0x5c0e52=a117_0x20186b,{plan:_0x94d7f8,before:_0x340e6f,body:_0x4d9473}=_0x1782f4;let _0x3c711a;try{_0x3c711a=await fetchMenuSnapshot(_0x59229b[_0x5c0e52(0x19f)],_0x59229b[_0x5c0e52(0x1bb)]);}catch{throw recoveryRequired(_0x94d7f8,_0x59229b[_0x5c0e52(0x19f)],{'id':_0x4d9473['id'],'readbackFailed':!![]});}const _0x5de511=_0x3c711a[_0x5c0e52(0x18e)][_0x5c0e52(0x1a4)](_0x4d9473['id']);if(!_0x5de511||_0x5de511[_0x5c0e52(0x180)]!==_0x4d9473[_0x5c0e52(0x180)])throw recoveryRequired(_0x94d7f8,_0x59229b[_0x5c0e52(0x19f)],{'id':_0x4d9473['id'],'requestedLabelObserved':![],'after':_0x5de511??null});try{verifyRenamedFact(_0x340e6f,_0x5de511,_0x4d9473[_0x5c0e52(0x180)]);}catch(_0x5e6e49){const _0x59ecf0=asVerificationError(_0x5e6e49,_0x5c0e52(0x1bc)+_0x4d9473['id']+_0x5c0e52(0x1bf));throw menuFailure(_0x59ecf0,_0x94d7f8,{'stage':'update-recovery','succeeded':[{'id':_0x4d9473['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x4d9473['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x5de511,'warnings':[_0x5c0e52(0x170)],'verification':{'status':_0x5c0e52(0x196),'targetId':_0x4d9473['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x59229b['appCode'])}});}return renameSuccess(_0x94d7f8,_0x3c711a,_0x5de511,![],!![]);}function recoveryRequired(_0x1d4e59,_0xd516d7,_0x50ae1a){const _0x33d70f=a117_0x20186b,_0x2f011a=menuError(_0x33d70f(0x17d),_0x33d70f(0x177),_0x33d70f(0x18c)+buildLookupCommand(_0xd516d7)+_0x33d70f(0x176));return menuFailure(_0x2f011a,_0x1d4e59,{'stage':'update-recovery','failed':{'id':_0x50ae1a['id'],..._0x50ae1a['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x50ae1a[_0x33d70f(0x189)]},..._0x50ae1a[_0x33d70f(0x19a)]?{'readbackFailed':!![]}:{}},'after':_0x50ae1a[_0x33d70f(0x1b7)],'warnings':[_0x33d70f(0x1a7)],'verification':{'status':_0x33d70f(0x196),'targetId':_0x50ae1a['id'],..._0x50ae1a['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x50ae1a[_0x33d70f(0x189)]},..._0x50ae1a[_0x33d70f(0x19a)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0xd516d7)}});}function a117_0x2493(_0x121307,_0x47343d){_0x121307=_0x121307-0x16c;const _0x3a4590=a117_0x3a45();let _0x249311=_0x3a4590[_0x121307];return _0x249311;}function buildLookupCommand(_0x5716ad){const _0x145688=a117_0x20186b,_0x5f0fa9='\x27'+_0x5716ad[_0x145688(0x1ab)](/'/g,_0x145688(0x18b))+'\x27';return _0x145688(0x171)+_0x5f0fa9+_0x145688(0x187);}
@@ -1 +1 @@
1
- (function(_0x5eff0a,_0x315759){const _0x1ac610=a112_0x5f17,_0x5bb9e5=_0x5eff0a();while(!![]){try{const _0x2cceb2=-parseInt(_0x1ac610(0x1b2))/0x1*(-parseInt(_0x1ac610(0x1a8))/0x2)+parseInt(_0x1ac610(0x1a9))/0x3*(-parseInt(_0x1ac610(0x1c0))/0x4)+-parseInt(_0x1ac610(0x1b1))/0x5*(-parseInt(_0x1ac610(0x1b9))/0x6)+-parseInt(_0x1ac610(0x1ad))/0x7*(parseInt(_0x1ac610(0x1b5))/0x8)+parseInt(_0x1ac610(0x1b6))/0x9+parseInt(_0x1ac610(0x1bc))/0xa*(-parseInt(_0x1ac610(0x1bb))/0xb)+-parseInt(_0x1ac610(0x1a7))/0xc;if(_0x2cceb2===_0x315759)break;else _0x5bb9e5['push'](_0x5bb9e5['shift']());}catch(_0x29d5df){_0x5bb9e5['push'](_0x5bb9e5['shift']());}}}(a112_0x5585,0xbe00c));function strWidth(_0x205490){const _0x3099a5=a112_0x5f17;let _0x2a9c43=0x0;for(const _0x4de4f5 of _0x205490){_0x2a9c43+=/[\u4e00-\u9fa5]/[_0x3099a5(0x1ac)](_0x4de4f5)?0x2:0x1;}return _0x2a9c43;}function padRight(_0x2d4514,_0x5e3603){const _0xb92952=a112_0x5f17,_0x16df81=strWidth(_0x2d4514);return _0x2d4514+'\x20'[_0xb92952(0x1a3)](Math[_0xb92952(0x1aa)](0x0,_0x5e3603-_0x16df81));}export function renderCompareTable(_0x258436,_0x12c63e={}){const _0x29c1ec=a112_0x5f17;if(_0x258436[_0x29c1ec(0x1a4)]===0x0)return'';const _0xff84d6=_0x12c63e['showOnline']??!![],_0x578162=Math[_0x29c1ec(0x1aa)](0x1e,..._0x258436[_0x29c1ec(0x1ba)](_0x4c909c=>strWidth(_0x4c909c[_0x29c1ec(0x1b4)]))),_0x595c6d=Math[_0x29c1ec(0x1aa)](0x18,..._0x258436[_0x29c1ec(0x1ba)](_0x2776c3=>strWidth(_0x2776c3[_0x29c1ec(0x1ab)]))),_0x3bf114=0x4,_0x4cc16e=[],_0x247fa1='\x20\x20'+padRight(_0x29c1ec(0x1bf),_0x578162),_0x64a874=padRight(_0x29c1ec(0x1be),_0x595c6d),_0x1f39d0=padRight('Local',_0x3bf114),_0x318541=_0xff84d6?'\x20\x20'+padRight('Platform',_0x3bf114):'';_0x4cc16e[_0x29c1ec(0x1bd)](_0x247fa1+'\x20\x20'+_0x64a874+'\x20\x20'+_0x1f39d0+(_0xff84d6?_0x318541:'')),_0x4cc16e[_0x29c1ec(0x1bd)]('\x20\x20'+'─'['repeat'](_0x578162)+'\x20\x20'+'─'[_0x29c1ec(0x1a3)](_0x595c6d)+'\x20\x20'+'─'[_0x29c1ec(0x1a3)](_0x3bf114)+(_0xff84d6?'\x20\x20'+'─'[_0x29c1ec(0x1a3)](_0x3bf114):''));for(const _0x1fb5db of _0x258436){const _0x431c86=padRight(_0x1fb5db[_0x29c1ec(0x1b4)],_0x578162),_0x4203f4=padRight(_0x1fb5db[_0x29c1ec(0x1ab)],_0x595c6d),_0x5d817c=_0x1fb5db[_0x29c1ec(0x1a6)]?'✓':'✗',_0x33c138=padRight(_0x5d817c,_0x3bf114);let _0x20f2c9='\x20\x20'+_0x431c86+'\x20\x20'+_0x4203f4+'\x20\x20'+_0x33c138;if(_0xff84d6){const _0x3b2407=_0x1fb5db[_0x29c1ec(0x1c1)]?'✓':'✗';_0x20f2c9+='\x20\x20'+padRight(_0x3b2407,_0x3bf114);}_0x4cc16e[_0x29c1ec(0x1bd)](_0x20f2c9);}return _0x4cc16e[_0x29c1ec(0x1a5)]('\x0a');}function a112_0x5585(){const _0xb22053=['824casuus','6069924edbFsP','\x20\x20\x20\x20JS:\x20\x20','\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','419406vXBoPs','map','11451rnHQaw','310UxdeQO','push','Path','Menu\x20Name','1952vBTTFp','online','\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','repeat','length','join','local','805008rtMvXK','13030LWiWBx','5997aJVIuU','max','path','test','38843moqDpr','\x20\x20\x20\x20•\x20','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','\x20\x20\x20\x20CSS:\x20','25olMBiL','215SrSZcL','(unchanged)','label'];a112_0x5585=function(){return _0xb22053;};return a112_0x5585();}export function renderSyncSummary(_0x556064,_0x46a927){const _0x3a4685=a112_0x5f17;if(_0x556064['length']===0x0)return _0x46a927?'\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.':'\x20\x20No\x20pages\x20to\x20sync.';const _0x2740b6=['\x20\x20'+_0x556064[_0x3a4685(0x1a4)]+_0x3a4685(0x1b8)];for(const _0xaa09d8 of _0x556064){_0x2740b6[_0x3a4685(0x1bd)](_0x3a4685(0x1ae)+_0xaa09d8['label']+'\x20('+_0xaa09d8[_0x3a4685(0x1ab)]+')');}return _0x2740b6[_0x3a4685(0x1a5)]('\x0a');}function a112_0x5f17(_0x7809ef,_0x38d82d){_0x7809ef=_0x7809ef-0x1a3;const _0x558568=a112_0x5585();let _0x5f1789=_0x558568[_0x7809ef];return _0x5f1789;}export function renderUpdateSummary(_0xb7af05,_0x229357){const _0x118cc1=a112_0x5f17;if(_0xb7af05[_0x118cc1(0x1a4)]===0x0)return _0x118cc1(0x1af);const _0x404426=['\x20\x20'+_0xb7af05[_0x118cc1(0x1a4)]+_0x118cc1(0x1c2),_0x118cc1(0x1b7)+(_0x229357[0x0]??_0x118cc1(0x1b3)),_0x118cc1(0x1b0)+(_0x229357[0x1]??_0x118cc1(0x1b3)),'','\x20\x20Affected\x20menus:\x20'+_0xb7af05[_0x118cc1(0x1a5)](',\x20')];return _0x404426['join']('\x0a');}
1
+ (function(_0x2d39de,_0x3def22){const _0x584723=a118_0x1e46,_0x96adf=_0x2d39de();while(!![]){try{const _0x3e89d4=-parseInt(_0x584723(0x1e7))/0x1+-parseInt(_0x584723(0x1da))/0x2+parseInt(_0x584723(0x1e5))/0x3*(parseInt(_0x584723(0x1dd))/0x4)+-parseInt(_0x584723(0x1de))/0x5*(-parseInt(_0x584723(0x1e2))/0x6)+-parseInt(_0x584723(0x1d0))/0x7*(-parseInt(_0x584723(0x1eb))/0x8)+parseInt(_0x584723(0x1d8))/0x9+parseInt(_0x584723(0x1d1))/0xa;if(_0x3e89d4===_0x3def22)break;else _0x96adf['push'](_0x96adf['shift']());}catch(_0x209a7b){_0x96adf['push'](_0x96adf['shift']());}}}(a118_0x50c4,0xe8485));function strWidth(_0x115136){const _0x540c0d=a118_0x1e46;let _0x2074d9=0x0;for(const _0x3fdf4f of _0x115136){_0x2074d9+=/[\u4e00-\u9fa5]/[_0x540c0d(0x1d9)](_0x3fdf4f)?0x2:0x1;}return _0x2074d9;}function a118_0x1e46(_0x329f27,_0x29301d){_0x329f27=_0x329f27-0x1d0;const _0x50c44a=a118_0x50c4();let _0x1e46fa=_0x50c44a[_0x329f27];return _0x1e46fa;}function a118_0x50c4(){const _0x4abfc0=['\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','max','488dcHHTe','25GvLkcC','repeat','\x20\x20\x20\x20JS:\x20\x20','join','51774TCeiYi','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','\x20\x20Affected\x20menus:\x20','39927dsZDXy','Path','751977yrYPeb','map','length','Platform','4110440QClHFJ','\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','\x20\x20\x20\x20CSS:\x20','Menu\x20Name','label','\x20\x20No\x20pages\x20to\x20sync.','7kvkvTP','4668490QbPJyb','path','\x20\x20\x20\x20•\x20','showOnline','local','push','online','2063655RxZFFQ','test','2346772NYWbhP'];a118_0x50c4=function(){return _0x4abfc0;};return a118_0x50c4();}function padRight(_0x204692,_0x41efa4){const _0x22a040=a118_0x1e46,_0x3fa8d4=strWidth(_0x204692);return _0x204692+'\x20'['repeat'](Math[_0x22a040(0x1dc)](0x0,_0x41efa4-_0x3fa8d4));}export function renderCompareTable(_0x3f7f69,_0x230a76={}){const _0x366ff8=a118_0x1e46;if(_0x3f7f69[_0x366ff8(0x1e9)]===0x0)return'';const _0x1634a4=_0x230a76[_0x366ff8(0x1d4)]??!![],_0x26384b=Math[_0x366ff8(0x1dc)](0x1e,..._0x3f7f69[_0x366ff8(0x1e8)](_0x523fde=>strWidth(_0x523fde[_0x366ff8(0x1ef)]))),_0x23947d=Math[_0x366ff8(0x1dc)](0x18,..._0x3f7f69[_0x366ff8(0x1e8)](_0x155409=>strWidth(_0x155409[_0x366ff8(0x1d2)]))),_0x13f646=0x4,_0x434967=[],_0x32aafd='\x20\x20'+padRight(_0x366ff8(0x1ee),_0x26384b),_0x5d75db=padRight(_0x366ff8(0x1e6),_0x23947d),_0x21a5f6=padRight('Local',_0x13f646),_0x123ceb=_0x1634a4?'\x20\x20'+padRight(_0x366ff8(0x1ea),_0x13f646):'';_0x434967[_0x366ff8(0x1d6)](_0x32aafd+'\x20\x20'+_0x5d75db+'\x20\x20'+_0x21a5f6+(_0x1634a4?_0x123ceb:'')),_0x434967[_0x366ff8(0x1d6)]('\x20\x20'+'─'[_0x366ff8(0x1df)](_0x26384b)+'\x20\x20'+'─'[_0x366ff8(0x1df)](_0x23947d)+'\x20\x20'+'─'[_0x366ff8(0x1df)](_0x13f646)+(_0x1634a4?'\x20\x20'+'─'[_0x366ff8(0x1df)](_0x13f646):''));for(const _0x15c658 of _0x3f7f69){const _0x4cbd1f=padRight(_0x15c658[_0x366ff8(0x1ef)],_0x26384b),_0x578d3d=padRight(_0x15c658['path'],_0x23947d),_0x38a899=_0x15c658[_0x366ff8(0x1d5)]?'✓':'✗',_0x30970c=padRight(_0x38a899,_0x13f646);let _0x4b4fb1='\x20\x20'+_0x4cbd1f+'\x20\x20'+_0x578d3d+'\x20\x20'+_0x30970c;if(_0x1634a4){const _0x2fbdd4=_0x15c658[_0x366ff8(0x1d7)]?'✓':'✗';_0x4b4fb1+='\x20\x20'+padRight(_0x2fbdd4,_0x13f646);}_0x434967[_0x366ff8(0x1d6)](_0x4b4fb1);}return _0x434967[_0x366ff8(0x1e1)]('\x0a');}export function renderSyncSummary(_0x133ddc,_0x36d287){const _0x392a53=a118_0x1e46;if(_0x133ddc['length']===0x0)return _0x36d287?_0x392a53(0x1ec):_0x392a53(0x1f0);const _0x210600=['\x20\x20'+_0x133ddc[_0x392a53(0x1e9)]+'\x20page(s)\x20will\x20be\x20created\x20on\x20platform:'];for(const _0x489548 of _0x133ddc){_0x210600[_0x392a53(0x1d6)](_0x392a53(0x1d3)+_0x489548[_0x392a53(0x1ef)]+'\x20('+_0x489548[_0x392a53(0x1d2)]+')');}return _0x210600['join']('\x0a');}export function renderUpdateSummary(_0x10494f,_0x5370ed){const _0x2a25d6=a118_0x1e46;if(_0x10494f[_0x2a25d6(0x1e9)]===0x0)return _0x2a25d6(0x1e3);const _0x366d28=['\x20\x20'+_0x10494f[_0x2a25d6(0x1e9)]+_0x2a25d6(0x1db),_0x2a25d6(0x1e0)+(_0x5370ed[0x0]??'(unchanged)'),_0x2a25d6(0x1ed)+(_0x5370ed[0x1]??'(unchanged)'),'',_0x2a25d6(0x1e4)+_0x10494f[_0x2a25d6(0x1e1)](',\x20')];return _0x366d28[_0x2a25d6(0x1e1)]('\x0a');}
@@ -1 +1 @@
1
- const a113_0x172d4e=a113_0x236a;(function(_0x16b2a1,_0x56b538){const _0x16c8e7=a113_0x236a,_0x14fedb=_0x16b2a1();while(!![]){try{const _0x4ceda8=parseInt(_0x16c8e7(0x130))/0x1+parseInt(_0x16c8e7(0xea))/0x2+-parseInt(_0x16c8e7(0x146))/0x3*(-parseInt(_0x16c8e7(0x106))/0x4)+parseInt(_0x16c8e7(0x129))/0x5*(parseInt(_0x16c8e7(0x10d))/0x6)+-parseInt(_0x16c8e7(0x117))/0x7+parseInt(_0x16c8e7(0x135))/0x8*(-parseInt(_0x16c8e7(0x100))/0x9)+parseInt(_0x16c8e7(0x13c))/0xa;if(_0x4ceda8===_0x56b538)break;else _0x14fedb['push'](_0x14fedb['shift']());}catch(_0x407029){_0x14fedb['push'](_0x14fedb['shift']());}}}(a113_0x53f6,0x6133a));import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND=a113_0x172d4e(0xfa),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x144882,_0x21f9f6,_0x52e36e=new Date()){const _0xdb83dd=a113_0x172d4e;if(!_0x21f9f6[_0xdb83dd(0x13f)]||!isMenuFact(_0x21f9f6['before']))throw menuError(_0xdb83dd(0x140),_0xdb83dd(0x119));const _0x188fcf=_0x21f9f6[_0xdb83dd(0x112)]?.[_0xdb83dd(0xff)]?_0x21f9f6[_0xdb83dd(0x112)]:[_0x21f9f6[_0xdb83dd(0x13f)]],_0x35c060=_0x21f9f6[_0xdb83dd(0x111)]?.[_0xdb83dd(0xff)]?_0x21f9f6['deleteOrder']:_0x188fcf[_0xdb83dd(0x12d)](_0x421f0d=>_0x421f0d['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x144882,'createdAt':_0x52e36e[_0xdb83dd(0x141)](),'expiresAt':new Date(_0x52e36e[_0xdb83dd(0xef)]()+PLAN_TTL_MS)[_0xdb83dd(0x141)](),'snapshotHash':_0x21f9f6['snapshotHash'],'recursive':_0x21f9f6['selector'][_0xdb83dd(0x134)]===!![],'target':_0x21f9f6['before'],'targetFingerprint':fingerprint(_0x21f9f6[_0xdb83dd(0x13f)]),'targets':_0x188fcf,'targetFingerprints':_0x188fcf[_0xdb83dd(0x12d)](fingerprint),'deleteOrder':_0x35c060,'cascade':_0x21f9f6['cascade']??{'pages':_0x21f9f6[_0xdb83dd(0x13f)][_0xdb83dd(0x128)]==null?[]:[_0x21f9f6[_0xdb83dd(0x13f)]['pageId']],'pageSchemaAffected':_0x21f9f6[_0xdb83dd(0x13f)][_0xdb83dd(0x128)]!=null},'warnings':[..._0x21f9f6['warnings']]};}export async function writeMenuDeletePlan(_0x3d06e3,_0x4d5b26){const _0x2e18ce=a113_0x172d4e,_0x2e66af=resolvePlanPath(_0x3d06e3,_0x2e18ce(0x104));await mkdir(dirname(_0x2e66af),{'recursive':!![]});try{await writeFile(_0x2e66af,JSON[_0x2e18ce(0xed)](_0x4d5b26,null,0x2)+'\x0a',{'encoding':_0x2e18ce(0x103),'flag':'wx'});}catch(_0x5eb808){if(_0x5eb808[_0x2e18ce(0xf2)]===_0x2e18ce(0x132))throw menuError(_0x2e18ce(0xf8),_0x2e18ce(0x12b)+_0x2e66af,_0x2e18ce(0x14e));throw menuError(_0x2e18ce(0xfc),_0x2e18ce(0x126)+_0x2e66af+':\x20'+errorMessage(_0x5eb808));}return _0x2e66af;}export async function readMenuDeletePlan(_0x1fbb34){const _0x48fa61=a113_0x172d4e,_0x150f5d=resolvePlanPath(_0x1fbb34,_0x48fa61(0xeb));let _0xda06cd;try{_0xda06cd=(await stat(_0x150f5d))[_0x48fa61(0x102)];}catch(_0x2d60e6){throw menuError(_0x48fa61(0x140),_0x48fa61(0x149)+_0x150f5d+':\x20'+errorMessage(_0x2d60e6));}if(_0xda06cd>MAX_PLAN_BYTES)throw menuError(_0x48fa61(0x140),_0x48fa61(0x10a)+_0xda06cd+'\x20bytes.');let _0x2ebe05;try{_0x2ebe05=JSON[_0x48fa61(0x11d)](await readFile(_0x150f5d,_0x48fa61(0x103)));}catch(_0x243abe){throw menuError('menu_plan_invalid',_0x48fa61(0x10e)+errorMessage(_0x243abe));}if(!isMenuDeletePlanFile(_0x2ebe05))throw menuError(_0x48fa61(0x140),_0x48fa61(0x14d)+PLAN_VERSION+_0x48fa61(0x118)+PLAN_COMMAND+_0x48fa61(0x14b));if(!sameFingerprint(_0x2ebe05[_0x48fa61(0x138)],fingerprint(_0x2ebe05[_0x48fa61(0x10f)])))throw menuError(_0x48fa61(0x140),_0x48fa61(0x116),_0x48fa61(0x122));if(!_0x2ebe05['targets'][_0x48fa61(0x14f)]((_0x2cf33a,_0x2c4a33)=>sameFingerprint(_0x2ebe05[_0x48fa61(0xf5)][_0x2c4a33],fingerprint(_0x2cf33a)))||!sameFingerprint(_0x2ebe05[_0x48fa61(0x138)],fingerprint(_0x2ebe05[_0x48fa61(0x112)][_0x2ebe05[_0x48fa61(0x112)]['length']-0x1])))throw menuError('menu_plan_invalid','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.',_0x48fa61(0x122));return{'path':_0x150f5d,'plan':_0x2ebe05};}function a113_0x53f6(){const _0xea8ecc=['33534pDZQdE','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','target','warnings','deleteOrder','targets','\x20is\x20in\x20the\x20future.','isArray','path','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','4896605KEyLRk','\x20of\x20the\x20','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','childrenIds','depth','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','parse','expiresAt','delete','isInteger','snapshotHash','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','string','sha256','type','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','\x20requires\x20a\x20non-empty\x20file\x20path.','pageId','560BregZl','datasetId','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','Menu\x20delete\x20plan\x20targets\x20app\x20','map','number','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','275257IxDZmz','command','EEXIST','POST','recursive','32lrTrRA','childrenCount','menu_state_drift','targetFingerprint','batch-delete-menu','modelType',',\x20current\x20app\x20is\x20','1745610RhAvgJ','extend','message','before','menu_plan_invalid','toISOString','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','updateUserId','get','sort','665403hTTyCR','datasetCode','resources','Cannot\x20read\x20menu\x20delete\x20plan\x20','trim','\x20contract.','update','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','every','parentId','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','cascade','extendHash','updateTime','28106bfcPVp','plan','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','stringify','Planned\x20menu\x20','getTime','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','appCode','code','label','object','targetFingerprints','resourcesValid','resourcesHash','menu_plan_file_exists','pageSchemaAffected','menu\x20delete','pageType','menu_plan_write_failed','isFinite','byId','length','980523daMCaz','hash','size','utf8','plan-out','boolean','8viMyxP','createdAt','test','version','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','visible','updateUserName'];a113_0x53f6=function(){return _0xea8ecc;};return a113_0x53f6();}export function mutationPlanFromDeleteFile(_0xa0ec37,_0x2902f8){const _0x2bd90a=a113_0x172d4e;return mutationResult({'operation':_0x2bd90a(0x11f),'selector':{'id':_0xa0ec37['target']['id'],'recursive':_0xa0ec37[_0x2bd90a(0x134)]},'before':_0xa0ec37['target'],'after':null,'dryRun':![],'backend':[{'method':'POST','path':'/smartapi/menu/batchDelete'}],'plannedActions':[{'stage':_0x2bd90a(0x139),'method':_0x2bd90a(0x133),'path':'/smartapi/menu/batchDelete','body':{'idList':_0xa0ec37[_0x2bd90a(0x111)]}}],'targets':_0xa0ec37[_0x2bd90a(0x112)],'deleteOrder':_0xa0ec37['deleteOrder'],'snapshotHash':_0xa0ec37[_0x2bd90a(0x121)],'cascade':_0xa0ec37['cascade'],'planFile':{'path':_0x2902f8,'createdAt':_0xa0ec37['createdAt'],'expiresAt':_0xa0ec37[_0x2bd90a(0x11e)]},'warnings':_0xa0ec37['warnings']});}export function assertMenuDeletePlanCurrent(_0x1ee601,_0x1d2cea,_0x44b6fc,_0x5015d1=new Date()){const _0x26c466=a113_0x172d4e;assertMenuDeletePlanExecutable(_0x1ee601,_0x1d2cea,_0x5015d1);if(_0x44b6fc[_0x26c466(0x101)]!==_0x1ee601[_0x26c466(0x121)])throw menuError('menu_state_drift','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.',_0x26c466(0x11c));return _0x1ee601[_0x26c466(0x112)]['map']((_0x34128b,_0x2974a5)=>{const _0x1088b7=_0x26c466,_0x2729a9=_0x44b6fc[_0x1088b7(0xfe)][_0x1088b7(0x144)](_0x34128b['id']);if(!_0x2729a9)throw menuError(_0x1088b7(0x137),_0x1088b7(0xee)+_0x34128b['id']+_0x1088b7(0xf0));if(!sameFingerprint(_0x1ee601['targetFingerprints'][_0x2974a5],fingerprint(_0x2729a9)))throw menuError('menu_state_drift',_0x1088b7(0xee)+_0x34128b['id']+_0x1088b7(0x12f),_0x1088b7(0xec));return _0x2729a9;});}export function assertMenuDeletePlanExecutable(_0x4482c4,_0x548bc3,_0xbf0d7d=new Date()){const _0x10f5ad=a113_0x172d4e;if(_0x4482c4['appCode']!==_0x548bc3)throw menuError('menu_plan_app_mismatch',_0x10f5ad(0x12c)+JSON[_0x10f5ad(0xed)](_0x4482c4['appCode'])+_0x10f5ad(0x13b)+JSON[_0x10f5ad(0xed)](_0x548bc3)+'.');const _0x1a6847=Date['parse'](_0x4482c4[_0x10f5ad(0x107)]),_0x1b238b=Date['parse'](_0x4482c4['expiresAt']);if(!Number[_0x10f5ad(0xfd)](_0x1a6847)||!Number[_0x10f5ad(0xfd)](_0x1b238b)||_0x1b238b-_0x1a6847!==PLAN_TTL_MS)throw menuError(_0x10f5ad(0x140),'Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.');if(_0x1a6847>_0xbf0d7d[_0x10f5ad(0xef)]())throw menuError(_0x10f5ad(0x140),'Menu\x20delete\x20plan\x20creation\x20time\x20'+_0x4482c4[_0x10f5ad(0x107)]+_0x10f5ad(0x113),_0x10f5ad(0x151));if(_0xbf0d7d[_0x10f5ad(0xef)]()>_0x1b238b)throw menuError('menu_plan_expired','Menu\x20delete\x20plan\x20expired\x20at\x20'+_0x4482c4[_0x10f5ad(0x11e)]+'.',_0x10f5ad(0x142));}function fingerprint(_0x24fc5d){const _0x55fd99=a113_0x172d4e;return{'id':_0x24fc5d['id'],'parentId':_0x24fc5d[_0x55fd99(0x150)],'depth':_0x24fc5d[_0x55fd99(0x11b)],'label':_0x24fc5d[_0x55fd99(0xf3)],'path':_0x24fc5d['path'],'type':_0x24fc5d[_0x55fd99(0x125)],'visible':_0x24fc5d[_0x55fd99(0x10b)],'sort':_0x24fc5d[_0x55fd99(0x145)],'pageId':_0x24fc5d[_0x55fd99(0x128)],'pageType':_0x24fc5d[_0x55fd99(0xfb)],'modelType':_0x24fc5d['modelType'],'datasetId':_0x24fc5d['datasetId'],'datasetCode':_0x24fc5d[_0x55fd99(0x147)],'childrenIds':[..._0x24fc5d[_0x55fd99(0x11a)]],'childrenCount':_0x24fc5d[_0x55fd99(0x136)],'resourcesValid':_0x24fc5d[_0x55fd99(0xf6)],'resourcesHash':hashValue(_0x24fc5d[_0x55fd99(0x148)]),'extendHash':hashValue(_0x24fc5d['extend']??null),'updateTime':_0x24fc5d[_0x55fd99(0x154)]};}function hashValue(_0x522e6a){const _0x57b5d9=a113_0x172d4e;return createHash(_0x57b5d9(0x124))[_0x57b5d9(0x14c)](JSON[_0x57b5d9(0xed)](_0x522e6a))['digest']('hex');}function a113_0x236a(_0x51e629,_0xa0ac8a){_0x51e629=_0x51e629-0xea;const _0x53f6ad=a113_0x53f6();let _0x236a7d=_0x53f6ad[_0x51e629];return _0x236a7d;}function sameFingerprint(_0x2f88ad,_0x2b0696){const _0x4e4717=a113_0x172d4e;return JSON[_0x4e4717(0xed)](_0x2f88ad)===JSON['stringify'](_0x2b0696);}function resolvePlanPath(_0x4dbb41,_0xa802fb){const _0x33f654=a113_0x172d4e,_0x47ad22=_0x4dbb41[_0x33f654(0x14a)]();if(!_0x47ad22)throw menuError('menu_plan_invalid','--'+_0xa802fb+_0x33f654(0x127));return resolve(_0x47ad22);}function isMenuDeletePlanFile(_0x21f21b){const _0x146ced=a113_0x172d4e;if(!isRecord(_0x21f21b))return![];return _0x21f21b[_0x146ced(0x109)]===PLAN_VERSION&&_0x21f21b[_0x146ced(0x131)]===PLAN_COMMAND&&typeof _0x21f21b[_0x146ced(0xf1)]===_0x146ced(0x123)&&_0x21f21b[_0x146ced(0xf1)][_0x146ced(0xff)]>0x0&&typeof _0x21f21b[_0x146ced(0x107)]===_0x146ced(0x123)&&typeof _0x21f21b[_0x146ced(0x11e)]===_0x146ced(0x123)&&typeof _0x21f21b[_0x146ced(0x121)]===_0x146ced(0x123)&&/^sha256:[a-f0-9]{64}$/[_0x146ced(0x108)](_0x21f21b[_0x146ced(0x121)])&&typeof _0x21f21b[_0x146ced(0x134)]===_0x146ced(0x105)&&isMenuFact(_0x21f21b[_0x146ced(0x10f)])&&isTargetFingerprint(_0x21f21b[_0x146ced(0x138)])&&Array[_0x146ced(0x114)](_0x21f21b[_0x146ced(0x112)])&&_0x21f21b[_0x146ced(0x112)][_0x146ced(0xff)]>0x0&&_0x21f21b[_0x146ced(0x112)]['every'](isMenuFact)&&Array['isArray'](_0x21f21b[_0x146ced(0xf5)])&&_0x21f21b[_0x146ced(0xf5)][_0x146ced(0xff)]===_0x21f21b[_0x146ced(0x112)][_0x146ced(0xff)]&&_0x21f21b['targetFingerprints'][_0x146ced(0x14f)](isTargetFingerprint)&&Array[_0x146ced(0x114)](_0x21f21b[_0x146ced(0x111)])&&_0x21f21b[_0x146ced(0x111)][_0x146ced(0xff)]===_0x21f21b['targets'][_0x146ced(0xff)]&&_0x21f21b[_0x146ced(0x111)][_0x146ced(0x14f)](isPositiveInteger)&&new Set(_0x21f21b[_0x146ced(0x111)])['size']===_0x21f21b['deleteOrder']['length']&&_0x21f21b[_0x146ced(0x112)][_0x146ced(0x14f)]((_0x3f9352,_0x21039d)=>_0x3f9352['id']===_0x21f21b['deleteOrder'][_0x21039d])&&_0x21f21b[_0x146ced(0x112)][_0x21f21b[_0x146ced(0x112)][_0x146ced(0xff)]-0x1]?.['id']===_0x21f21b['target']['id']&&isRecord(_0x21f21b[_0x146ced(0x152)])&&Array['isArray'](_0x21f21b['cascade']['pages'])&&_0x21f21b[_0x146ced(0x152)]['pages'][_0x146ced(0x14f)](isPositiveInteger)&&typeof _0x21f21b[_0x146ced(0x152)][_0x146ced(0xf9)]===_0x146ced(0x105)&&Array[_0x146ced(0x114)](_0x21f21b[_0x146ced(0x110)])&&_0x21f21b['warnings'][_0x146ced(0x14f)](_0x198400=>typeof _0x198400===_0x146ced(0x123));}function isMenuFact(_0x327f07){const _0x42339e=a113_0x172d4e;if(!isRecord(_0x327f07))return![];return isPositiveInteger(_0x327f07['id'])&&(_0x327f07[_0x42339e(0x150)]===null||isPositiveInteger(_0x327f07[_0x42339e(0x150)]))&&Number['isInteger'](_0x327f07['depth'])&&_0x327f07['depth']>=0x0&&typeof _0x327f07[_0x42339e(0xf3)]===_0x42339e(0x123)&&typeof _0x327f07[_0x42339e(0x115)]===_0x42339e(0x123)&&typeof _0x327f07[_0x42339e(0x125)]==='string'&&(_0x327f07['visible']===null||typeof _0x327f07[_0x42339e(0x10b)]==='boolean')&&(_0x327f07[_0x42339e(0x145)]===null||Number[_0x42339e(0x120)](_0x327f07[_0x42339e(0x145)]))&&Array[_0x42339e(0x114)](_0x327f07[_0x42339e(0x148)])&&_0x327f07[_0x42339e(0x148)][_0x42339e(0x14f)](_0x894326=>typeof _0x894326===_0x42339e(0x123))&&typeof _0x327f07['resourcesValid']===_0x42339e(0x105)&&Array[_0x42339e(0x114)](_0x327f07[_0x42339e(0x11a)])&&_0x327f07[_0x42339e(0x11a)]['every'](isPositiveInteger)&&Number[_0x42339e(0x120)](_0x327f07[_0x42339e(0x136)])&&_0x327f07[_0x42339e(0x136)]>=0x0&&(_0x327f07[_0x42339e(0x128)]===null||isPositiveInteger(_0x327f07['pageId']))&&typeof _0x327f07[_0x42339e(0xfb)]===_0x42339e(0x123)&&typeof _0x327f07[_0x42339e(0x13a)]===_0x42339e(0x123)&&(_0x327f07['datasetId']===null||isPositiveInteger(_0x327f07[_0x42339e(0x12a)]))&&typeof _0x327f07[_0x42339e(0x147)]===_0x42339e(0x123)&&(_0x327f07[_0x42339e(0x143)]===null||typeof _0x327f07['updateUserId']===_0x42339e(0x123))&&(_0x327f07[_0x42339e(0x10c)]===null||typeof _0x327f07[_0x42339e(0x10c)]===_0x42339e(0x123))&&(_0x327f07[_0x42339e(0x154)]===null||typeof _0x327f07[_0x42339e(0x154)]===_0x42339e(0x123)||typeof _0x327f07['updateTime']===_0x42339e(0x12e))&&(_0x327f07['extend']===undefined||_0x327f07[_0x42339e(0x13d)]===null||isRecord(_0x327f07[_0x42339e(0x13d)]));}function isTargetFingerprint(_0x14b42a){const _0x1674a3=a113_0x172d4e;if(!isRecord(_0x14b42a))return![];return isPositiveInteger(_0x14b42a['id'])&&(_0x14b42a['parentId']===null||isPositiveInteger(_0x14b42a[_0x1674a3(0x150)]))&&Number[_0x1674a3(0x120)](_0x14b42a[_0x1674a3(0x11b)])&&_0x14b42a[_0x1674a3(0x11b)]>=0x0&&typeof _0x14b42a['label']===_0x1674a3(0x123)&&typeof _0x14b42a[_0x1674a3(0x115)]===_0x1674a3(0x123)&&typeof _0x14b42a[_0x1674a3(0x125)]===_0x1674a3(0x123)&&(_0x14b42a[_0x1674a3(0x10b)]===null||typeof _0x14b42a[_0x1674a3(0x10b)]===_0x1674a3(0x105))&&(_0x14b42a[_0x1674a3(0x145)]===null||Number['isInteger'](_0x14b42a[_0x1674a3(0x145)]))&&(_0x14b42a[_0x1674a3(0x128)]===null||isPositiveInteger(_0x14b42a[_0x1674a3(0x128)]))&&typeof _0x14b42a[_0x1674a3(0xfb)]===_0x1674a3(0x123)&&typeof _0x14b42a['modelType']==='string'&&(_0x14b42a[_0x1674a3(0x12a)]===null||isPositiveInteger(_0x14b42a['datasetId']))&&typeof _0x14b42a[_0x1674a3(0x147)]===_0x1674a3(0x123)&&Array[_0x1674a3(0x114)](_0x14b42a['childrenIds'])&&_0x14b42a[_0x1674a3(0x11a)][_0x1674a3(0x14f)](isPositiveInteger)&&Number[_0x1674a3(0x120)](_0x14b42a[_0x1674a3(0x136)])&&_0x14b42a['childrenCount']>=0x0&&typeof _0x14b42a[_0x1674a3(0xf6)]===_0x1674a3(0x105)&&typeof _0x14b42a[_0x1674a3(0xf7)]===_0x1674a3(0x123)&&/^[a-f0-9]{64}$/[_0x1674a3(0x108)](_0x14b42a[_0x1674a3(0xf7)])&&typeof _0x14b42a[_0x1674a3(0x153)]===_0x1674a3(0x123)&&/^[a-f0-9]{64}$/[_0x1674a3(0x108)](_0x14b42a[_0x1674a3(0x153)])&&(_0x14b42a['updateTime']===null||typeof _0x14b42a['updateTime']===_0x1674a3(0x123)||typeof _0x14b42a[_0x1674a3(0x154)]===_0x1674a3(0x12e));}function isRecord(_0x1ca5c7){const _0x508ac5=a113_0x172d4e;return typeof _0x1ca5c7===_0x508ac5(0xf4)&&_0x1ca5c7!==null&&!Array[_0x508ac5(0x114)](_0x1ca5c7);}function isPositiveInteger(_0x45f516){return Number['isSafeInteger'](_0x45f516)&&Number(_0x45f516)>0x0;}function errorMessage(_0x131582){const _0x3503bc=a113_0x172d4e;return _0x131582 instanceof Error?_0x131582[_0x3503bc(0x13e)]:String(_0x131582);}
1
+ const a119_0x4fc5ce=a119_0x5126;(function(_0x323158,_0xf4c027){const _0x5c158d=a119_0x5126,_0x368511=_0x323158();while(!![]){try{const _0x10c60f=parseInt(_0x5c158d(0x7b))/0x1+-parseInt(_0x5c158d(0x6c))/0x2+-parseInt(_0x5c158d(0x89))/0x3+-parseInt(_0x5c158d(0x93))/0x4*(parseInt(_0x5c158d(0x7d))/0x5)+parseInt(_0x5c158d(0x9c))/0x6*(parseInt(_0x5c158d(0xa9))/0x7)+-parseInt(_0x5c158d(0x6a))/0x8*(-parseInt(_0x5c158d(0xaa))/0x9)+-parseInt(_0x5c158d(0x9e))/0xa;if(_0x10c60f===_0xf4c027)break;else _0x368511['push'](_0x368511['shift']());}catch(_0xa076a2){_0x368511['push'](_0x368511['shift']());}}}(a119_0x4a5a,0xdb4dc));import{createHash}from'node:crypto';import{mkdir,readFile,stat,writeFile}from'node:fs/promises';function a119_0x4a5a(){const _0xd2cd70=['childrenIds','1402056hdlOpp','updateTime','5WlcAIi','childrenCount','toISOString','resources','\x20bytes.','\x20is\x20in\x20the\x20future.','digest','update','targetFingerprint','sha256','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','number','2975733bGUrOw','utf8','map','visible','EEXIST','test','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','length','updateUserName','pages','6208984ffzpSW','Menu\x20delete\x20plan\x20expired\x20at\x20','\x20requires\x20a\x20non-empty\x20file\x20path.','code','Cannot\x20read\x20menu\x20delete\x20plan\x20','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','menu_plan_app_mismatch','modelType','4534728LOYpsB','resourcesHash','340440mCuKFe','target','datasetId','depth','isInteger','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','parentId','version','expiresAt','warnings','before','7bncspW','477QJzwHy','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','hex','/smartapi/menu/batchDelete','every','byId','parse','batch-delete-menu','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','plan-out','menu_plan_invalid','boolean','get','type','snapshotHash','POST','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','label','menu_plan_expired','hash','updateUserId','pageId','resourcesValid','pageType','size','Menu\x20delete\x20plan\x20creation\x20time\x20','datasetCode','pageSchemaAffected','menu\x20delete','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','menu_plan_file_exists','plan','targets','Planned\x20menu\x20','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','Menu\x20delete\x20plan\x20targets\x20app\x20','getTime','trim','Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.','path','extend','createdAt','menu_state_drift','deleteOrder','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','string','220184IcZBwJ','object','280188YSuOWo','recursive','appCode','stringify','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','message','command','isArray','isFinite','targetFingerprints','cascade','menu_plan_write_failed','sort','selector'];a119_0x4a5a=function(){return _0xd2cd70;};return a119_0x4a5a();}import{dirname,resolve}from'node:path';import{menuError,mutationResult}from'../../../commands/menu/shared/mutations.js';const PLAN_VERSION=0x2,PLAN_COMMAND=a119_0x4fc5ce(0xc6),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x50ed2b,_0x59010d,_0x40f93b=new Date()){const _0x5e296e=a119_0x4fc5ce;if(!_0x59010d['before']||!isMenuFact(_0x59010d[_0x5e296e(0xa8)]))throw menuError(_0x5e296e(0xb4),_0x5e296e(0x99));const _0x1ff577=_0x59010d[_0x5e296e(0xca)]?.[_0x5e296e(0x90)]?_0x59010d['targets']:[_0x59010d['before']],_0x29c44f=_0x59010d['deleteOrder']?.[_0x5e296e(0x90)]?_0x59010d['deleteOrder']:_0x1ff577[_0x5e296e(0x8b)](_0x3bc704=>_0x3bc704['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x50ed2b,'createdAt':_0x40f93b[_0x5e296e(0x7f)](),'expiresAt':new Date(_0x40f93b[_0x5e296e(0xce)]()+PLAN_TTL_MS)['toISOString'](),'snapshotHash':_0x59010d['snapshotHash'],'recursive':_0x59010d[_0x5e296e(0x79)][_0x5e296e(0x6d)]===!![],'target':_0x59010d['before'],'targetFingerprint':fingerprint(_0x59010d[_0x5e296e(0xa8)]),'targets':_0x1ff577,'targetFingerprints':_0x1ff577[_0x5e296e(0x8b)](fingerprint),'deleteOrder':_0x29c44f,'cascade':_0x59010d[_0x5e296e(0x76)]??{'pages':_0x59010d['before'][_0x5e296e(0xbf)]==null?[]:[_0x59010d[_0x5e296e(0xa8)][_0x5e296e(0xbf)]],'pageSchemaAffected':_0x59010d[_0x5e296e(0xa8)][_0x5e296e(0xbf)]!=null},'warnings':[..._0x59010d[_0x5e296e(0xa7)]]};}export async function writeMenuDeletePlan(_0x1fe4af,_0x37ed9f){const _0x3a1d78=a119_0x4fc5ce,_0x18d015=resolvePlanPath(_0x1fe4af,_0x3a1d78(0xb3));await mkdir(dirname(_0x18d015),{'recursive':!![]});try{await writeFile(_0x18d015,JSON[_0x3a1d78(0x6f)](_0x37ed9f,null,0x2)+'\x0a',{'encoding':_0x3a1d78(0x8a),'flag':'wx'});}catch(_0x6904d2){if(_0x6904d2[_0x3a1d78(0x96)]===_0x3a1d78(0x8d))throw menuError(_0x3a1d78(0xc8),_0x3a1d78(0x68)+_0x18d015,_0x3a1d78(0x67));throw menuError(_0x3a1d78(0x77),'Failed\x20to\x20write\x20menu\x20delete\x20plan\x20'+_0x18d015+':\x20'+errorMessage(_0x6904d2));}return _0x18d015;}export async function readMenuDeletePlan(_0x18505d){const _0x26726c=a119_0x4fc5ce,_0x45a1d2=resolvePlanPath(_0x18505d,_0x26726c(0xc9));let _0x52558c;try{_0x52558c=(await stat(_0x45a1d2))[_0x26726c(0xc2)];}catch(_0x1c8ca6){throw menuError(_0x26726c(0xb4),_0x26726c(0x97)+_0x45a1d2+':\x20'+errorMessage(_0x1c8ca6));}if(_0x52558c>MAX_PLAN_BYTES)throw menuError(_0x26726c(0xb4),_0x26726c(0xba)+_0x52558c+_0x26726c(0x81));let _0x119fd1;try{_0x119fd1=JSON[_0x26726c(0xb0)](await readFile(_0x45a1d2,_0x26726c(0x8a)));}catch(_0x5ce4e9){throw menuError(_0x26726c(0xb4),_0x26726c(0x98)+errorMessage(_0x5ce4e9));}if(!isMenuDeletePlanFile(_0x119fd1))throw menuError('menu_plan_invalid',_0x26726c(0x87)+PLAN_VERSION+'\x20of\x20the\x20'+PLAN_COMMAND+'\x20contract.');if(!sameFingerprint(_0x119fd1[_0x26726c(0x85)],fingerprint(_0x119fd1[_0x26726c(0x9f)])))throw menuError(_0x26726c(0xb4),_0x26726c(0xcc),_0x26726c(0x70));if(!_0x119fd1[_0x26726c(0xca)][_0x26726c(0xae)]((_0x3f5272,_0x354a19)=>sameFingerprint(_0x119fd1['targetFingerprints'][_0x354a19],fingerprint(_0x3f5272)))||!sameFingerprint(_0x119fd1[_0x26726c(0x85)],fingerprint(_0x119fd1[_0x26726c(0xca)][_0x119fd1[_0x26726c(0xca)][_0x26726c(0x90)]-0x1])))throw menuError('menu_plan_invalid',_0x26726c(0xa3),_0x26726c(0x70));return{'path':_0x45a1d2,'plan':_0x119fd1};}export function mutationPlanFromDeleteFile(_0xef679d,_0x150417){const _0x4359f8=a119_0x4fc5ce;return mutationResult({'operation':'delete','selector':{'id':_0xef679d['target']['id'],'recursive':_0xef679d['recursive']},'before':_0xef679d['target'],'after':null,'dryRun':![],'backend':[{'method':_0x4359f8(0xb9),'path':_0x4359f8(0xad)}],'plannedActions':[{'stage':_0x4359f8(0xb1),'method':'POST','path':_0x4359f8(0xad),'body':{'idList':_0xef679d[_0x4359f8(0xd5)]}}],'targets':_0xef679d[_0x4359f8(0xca)],'deleteOrder':_0xef679d['deleteOrder'],'snapshotHash':_0xef679d[_0x4359f8(0xb8)],'cascade':_0xef679d['cascade'],'planFile':{'path':_0x150417,'createdAt':_0xef679d[_0x4359f8(0xd3)],'expiresAt':_0xef679d[_0x4359f8(0xa6)]},'warnings':_0xef679d[_0x4359f8(0xa7)]});}export function assertMenuDeletePlanCurrent(_0x92caa5,_0x59fa74,_0x25f261,_0x93f206=new Date()){const _0x5c0755=a119_0x4fc5ce;assertMenuDeletePlanExecutable(_0x92caa5,_0x59fa74,_0x93f206);if(_0x25f261[_0x5c0755(0xbd)]!==_0x92caa5[_0x5c0755(0xb8)])throw menuError(_0x5c0755(0xd4),_0x5c0755(0x8f),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.');return _0x92caa5[_0x5c0755(0xca)]['map']((_0x3e8967,_0x1a6aed)=>{const _0x48e145=_0x5c0755,_0x12f6ed=_0x25f261[_0x48e145(0xaf)][_0x48e145(0xb6)](_0x3e8967['id']);if(!_0x12f6ed)throw menuError(_0x48e145(0xd4),_0x48e145(0xcb)+_0x3e8967['id']+_0x48e145(0xab));if(!sameFingerprint(_0x92caa5[_0x48e145(0x75)][_0x1a6aed],fingerprint(_0x12f6ed)))throw menuError('menu_state_drift',_0x48e145(0xcb)+_0x3e8967['id']+_0x48e145(0xc7),_0x48e145(0xd0));return _0x12f6ed;});}export function assertMenuDeletePlanExecutable(_0xd1657e,_0x263c34,_0x30e784=new Date()){const _0x1c3855=a119_0x4fc5ce;if(_0xd1657e['appCode']!==_0x263c34)throw menuError(_0x1c3855(0x9a),_0x1c3855(0xcd)+JSON[_0x1c3855(0x6f)](_0xd1657e[_0x1c3855(0x6e)])+',\x20current\x20app\x20is\x20'+JSON[_0x1c3855(0x6f)](_0x263c34)+'.');const _0x1092dd=Date['parse'](_0xd1657e[_0x1c3855(0xd3)]),_0x35d2a9=Date[_0x1c3855(0xb0)](_0xd1657e['expiresAt']);if(!Number[_0x1c3855(0x74)](_0x1092dd)||!Number[_0x1c3855(0x74)](_0x35d2a9)||_0x35d2a9-_0x1092dd!==PLAN_TTL_MS)throw menuError(_0x1c3855(0xb4),'Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.');if(_0x1092dd>_0x30e784[_0x1c3855(0xce)]())throw menuError(_0x1c3855(0xb4),_0x1c3855(0xc3)+_0xd1657e[_0x1c3855(0xd3)]+_0x1c3855(0x82),_0x1c3855(0xb2));if(_0x30e784[_0x1c3855(0xce)]()>_0x35d2a9)throw menuError(_0x1c3855(0xbc),_0x1c3855(0x94)+_0xd1657e[_0x1c3855(0xa6)]+'.',_0x1c3855(0x66));}function fingerprint(_0x3179d7){const _0xb6b8c0=a119_0x4fc5ce;return{'id':_0x3179d7['id'],'parentId':_0x3179d7[_0xb6b8c0(0xa4)],'depth':_0x3179d7[_0xb6b8c0(0xa1)],'label':_0x3179d7['label'],'path':_0x3179d7[_0xb6b8c0(0xd1)],'type':_0x3179d7[_0xb6b8c0(0xb7)],'visible':_0x3179d7[_0xb6b8c0(0x8c)],'sort':_0x3179d7[_0xb6b8c0(0x78)],'pageId':_0x3179d7[_0xb6b8c0(0xbf)],'pageType':_0x3179d7['pageType'],'modelType':_0x3179d7['modelType'],'datasetId':_0x3179d7[_0xb6b8c0(0xa0)],'datasetCode':_0x3179d7[_0xb6b8c0(0xc4)],'childrenIds':[..._0x3179d7[_0xb6b8c0(0x7a)]],'childrenCount':_0x3179d7[_0xb6b8c0(0x7e)],'resourcesValid':_0x3179d7[_0xb6b8c0(0xc0)],'resourcesHash':hashValue(_0x3179d7[_0xb6b8c0(0x80)]),'extendHash':hashValue(_0x3179d7[_0xb6b8c0(0xd2)]??null),'updateTime':_0x3179d7[_0xb6b8c0(0x7c)]};}function hashValue(_0x50730a){const _0x447afc=a119_0x4fc5ce;return createHash(_0x447afc(0x86))[_0x447afc(0x84)](JSON[_0x447afc(0x6f)](_0x50730a))[_0x447afc(0x83)](_0x447afc(0xac));}function sameFingerprint(_0x3ec52c,_0x4cd8f1){const _0x3f1466=a119_0x4fc5ce;return JSON['stringify'](_0x3ec52c)===JSON[_0x3f1466(0x6f)](_0x4cd8f1);}function resolvePlanPath(_0xd94483,_0x3452b7){const _0x572dcc=a119_0x4fc5ce,_0x4b31fb=_0xd94483[_0x572dcc(0xcf)]();if(!_0x4b31fb)throw menuError(_0x572dcc(0xb4),'--'+_0x3452b7+_0x572dcc(0x95));return resolve(_0x4b31fb);}function isMenuDeletePlanFile(_0x4d9e97){const _0x50d7ed=a119_0x4fc5ce;if(!isRecord(_0x4d9e97))return![];return _0x4d9e97[_0x50d7ed(0xa5)]===PLAN_VERSION&&_0x4d9e97[_0x50d7ed(0x72)]===PLAN_COMMAND&&typeof _0x4d9e97[_0x50d7ed(0x6e)]==='string'&&_0x4d9e97['appCode']['length']>0x0&&typeof _0x4d9e97[_0x50d7ed(0xd3)]===_0x50d7ed(0x69)&&typeof _0x4d9e97[_0x50d7ed(0xa6)]===_0x50d7ed(0x69)&&typeof _0x4d9e97['snapshotHash']==='string'&&/^sha256:[a-f0-9]{64}$/[_0x50d7ed(0x8e)](_0x4d9e97[_0x50d7ed(0xb8)])&&typeof _0x4d9e97[_0x50d7ed(0x6d)]==='boolean'&&isMenuFact(_0x4d9e97['target'])&&isTargetFingerprint(_0x4d9e97[_0x50d7ed(0x85)])&&Array[_0x50d7ed(0x73)](_0x4d9e97[_0x50d7ed(0xca)])&&_0x4d9e97['targets']['length']>0x0&&_0x4d9e97[_0x50d7ed(0xca)][_0x50d7ed(0xae)](isMenuFact)&&Array[_0x50d7ed(0x73)](_0x4d9e97['targetFingerprints'])&&_0x4d9e97['targetFingerprints']['length']===_0x4d9e97[_0x50d7ed(0xca)][_0x50d7ed(0x90)]&&_0x4d9e97[_0x50d7ed(0x75)][_0x50d7ed(0xae)](isTargetFingerprint)&&Array[_0x50d7ed(0x73)](_0x4d9e97[_0x50d7ed(0xd5)])&&_0x4d9e97[_0x50d7ed(0xd5)][_0x50d7ed(0x90)]===_0x4d9e97[_0x50d7ed(0xca)][_0x50d7ed(0x90)]&&_0x4d9e97['deleteOrder'][_0x50d7ed(0xae)](isPositiveInteger)&&new Set(_0x4d9e97['deleteOrder'])[_0x50d7ed(0xc2)]===_0x4d9e97['deleteOrder'][_0x50d7ed(0x90)]&&_0x4d9e97['targets']['every']((_0x5f1dd7,_0xf4cf0e)=>_0x5f1dd7['id']===_0x4d9e97[_0x50d7ed(0xd5)][_0xf4cf0e])&&_0x4d9e97[_0x50d7ed(0xca)][_0x4d9e97[_0x50d7ed(0xca)]['length']-0x1]?.['id']===_0x4d9e97['target']['id']&&isRecord(_0x4d9e97[_0x50d7ed(0x76)])&&Array[_0x50d7ed(0x73)](_0x4d9e97[_0x50d7ed(0x76)][_0x50d7ed(0x92)])&&_0x4d9e97[_0x50d7ed(0x76)]['pages'][_0x50d7ed(0xae)](isPositiveInteger)&&typeof _0x4d9e97[_0x50d7ed(0x76)][_0x50d7ed(0xc5)]===_0x50d7ed(0xb5)&&Array[_0x50d7ed(0x73)](_0x4d9e97[_0x50d7ed(0xa7)])&&_0x4d9e97['warnings'][_0x50d7ed(0xae)](_0x12c793=>typeof _0x12c793==='string');}function isMenuFact(_0x25d236){const _0x25864f=a119_0x4fc5ce;if(!isRecord(_0x25d236))return![];return isPositiveInteger(_0x25d236['id'])&&(_0x25d236[_0x25864f(0xa4)]===null||isPositiveInteger(_0x25d236[_0x25864f(0xa4)]))&&Number[_0x25864f(0xa2)](_0x25d236[_0x25864f(0xa1)])&&_0x25d236['depth']>=0x0&&typeof _0x25d236[_0x25864f(0xbb)]===_0x25864f(0x69)&&typeof _0x25d236[_0x25864f(0xd1)]==='string'&&typeof _0x25d236[_0x25864f(0xb7)]===_0x25864f(0x69)&&(_0x25d236[_0x25864f(0x8c)]===null||typeof _0x25d236['visible']===_0x25864f(0xb5))&&(_0x25d236[_0x25864f(0x78)]===null||Number[_0x25864f(0xa2)](_0x25d236['sort']))&&Array[_0x25864f(0x73)](_0x25d236[_0x25864f(0x80)])&&_0x25d236[_0x25864f(0x80)][_0x25864f(0xae)](_0x9a8a02=>typeof _0x9a8a02===_0x25864f(0x69))&&typeof _0x25d236[_0x25864f(0xc0)]==='boolean'&&Array['isArray'](_0x25d236[_0x25864f(0x7a)])&&_0x25d236[_0x25864f(0x7a)][_0x25864f(0xae)](isPositiveInteger)&&Number[_0x25864f(0xa2)](_0x25d236[_0x25864f(0x7e)])&&_0x25d236['childrenCount']>=0x0&&(_0x25d236['pageId']===null||isPositiveInteger(_0x25d236['pageId']))&&typeof _0x25d236[_0x25864f(0xc1)]===_0x25864f(0x69)&&typeof _0x25d236[_0x25864f(0x9b)]===_0x25864f(0x69)&&(_0x25d236['datasetId']===null||isPositiveInteger(_0x25d236[_0x25864f(0xa0)]))&&typeof _0x25d236[_0x25864f(0xc4)]==='string'&&(_0x25d236[_0x25864f(0xbe)]===null||typeof _0x25d236[_0x25864f(0xbe)]==='string')&&(_0x25d236[_0x25864f(0x91)]===null||typeof _0x25d236[_0x25864f(0x91)]===_0x25864f(0x69))&&(_0x25d236[_0x25864f(0x7c)]===null||typeof _0x25d236['updateTime']==='string'||typeof _0x25d236[_0x25864f(0x7c)]===_0x25864f(0x88))&&(_0x25d236[_0x25864f(0xd2)]===undefined||_0x25d236[_0x25864f(0xd2)]===null||isRecord(_0x25d236[_0x25864f(0xd2)]));}function a119_0x5126(_0x397666,_0x72f6e4){_0x397666=_0x397666-0x66;const _0x4a5a4b=a119_0x4a5a();let _0x512677=_0x4a5a4b[_0x397666];return _0x512677;}function isTargetFingerprint(_0x5407f9){const _0x550d58=a119_0x4fc5ce;if(!isRecord(_0x5407f9))return![];return isPositiveInteger(_0x5407f9['id'])&&(_0x5407f9[_0x550d58(0xa4)]===null||isPositiveInteger(_0x5407f9[_0x550d58(0xa4)]))&&Number[_0x550d58(0xa2)](_0x5407f9[_0x550d58(0xa1)])&&_0x5407f9[_0x550d58(0xa1)]>=0x0&&typeof _0x5407f9[_0x550d58(0xbb)]==='string'&&typeof _0x5407f9[_0x550d58(0xd1)]===_0x550d58(0x69)&&typeof _0x5407f9[_0x550d58(0xb7)]===_0x550d58(0x69)&&(_0x5407f9[_0x550d58(0x8c)]===null||typeof _0x5407f9[_0x550d58(0x8c)]===_0x550d58(0xb5))&&(_0x5407f9[_0x550d58(0x78)]===null||Number[_0x550d58(0xa2)](_0x5407f9['sort']))&&(_0x5407f9[_0x550d58(0xbf)]===null||isPositiveInteger(_0x5407f9[_0x550d58(0xbf)]))&&typeof _0x5407f9[_0x550d58(0xc1)]===_0x550d58(0x69)&&typeof _0x5407f9['modelType']===_0x550d58(0x69)&&(_0x5407f9[_0x550d58(0xa0)]===null||isPositiveInteger(_0x5407f9['datasetId']))&&typeof _0x5407f9[_0x550d58(0xc4)]===_0x550d58(0x69)&&Array[_0x550d58(0x73)](_0x5407f9[_0x550d58(0x7a)])&&_0x5407f9[_0x550d58(0x7a)][_0x550d58(0xae)](isPositiveInteger)&&Number[_0x550d58(0xa2)](_0x5407f9[_0x550d58(0x7e)])&&_0x5407f9[_0x550d58(0x7e)]>=0x0&&typeof _0x5407f9['resourcesValid']==='boolean'&&typeof _0x5407f9[_0x550d58(0x9d)]===_0x550d58(0x69)&&/^[a-f0-9]{64}$/[_0x550d58(0x8e)](_0x5407f9['resourcesHash'])&&typeof _0x5407f9['extendHash']===_0x550d58(0x69)&&/^[a-f0-9]{64}$/['test'](_0x5407f9['extendHash'])&&(_0x5407f9[_0x550d58(0x7c)]===null||typeof _0x5407f9[_0x550d58(0x7c)]==='string'||typeof _0x5407f9['updateTime']==='number');}function isRecord(_0x25ba75){const _0x2d7bd0=a119_0x4fc5ce;return typeof _0x25ba75===_0x2d7bd0(0x6b)&&_0x25ba75!==null&&!Array[_0x2d7bd0(0x73)](_0x25ba75);}function isPositiveInteger(_0x42fe22){return Number['isSafeInteger'](_0x42fe22)&&Number(_0x42fe22)>0x0;}function errorMessage(_0x30855e){const _0x114455=a119_0x4fc5ce;return _0x30855e instanceof Error?_0x30855e[_0x114455(0x71)]:String(_0x30855e);}
@@ -1 +1 @@
1
- (function(_0x77e1a4,_0x19bd7e){const _0x2d35ac=a114_0x4c98,_0x487e6c=_0x77e1a4();while(!![]){try{const _0x140794=parseInt(_0x2d35ac(0xa0))/0x1+parseInt(_0x2d35ac(0x92))/0x2*(parseInt(_0x2d35ac(0xa7))/0x3)+parseInt(_0x2d35ac(0xa9))/0x4+parseInt(_0x2d35ac(0x8b))/0x5+-parseInt(_0x2d35ac(0x8c))/0x6+-parseInt(_0x2d35ac(0x9b))/0x7+parseInt(_0x2d35ac(0xae))/0x8*(-parseInt(_0x2d35ac(0x9c))/0x9);if(_0x140794===_0x19bd7e)break;else _0x487e6c['push'](_0x487e6c['shift']());}catch(_0x2bab10){_0x487e6c['push'](_0x487e6c['shift']());}}}(a114_0x8b62,0x9f81c));import{createHash}from'node:crypto';import{getMenuTree}from'../../../core/api-client.js';export async function fetchMenuSnapshot(_0x67d02d,_0x382eb0,_0xcfea6d={}){const _0x54c4c3=await getMenuTree(_0x67d02d,_0x382eb0);return buildMenuSnapshot(Array['isArray'](_0x54c4c3)?_0x54c4c3:[],_0xcfea6d);}export function buildMenuSnapshot(_0x374c21,_0x13b41a={}){const _0x41465c=a114_0x4c98,_0x5799a2=flattenMenuItems(_0x374c21,{'verbose':_0x13b41a['verbose']===!![],'parentId':null,'depth':0x0}),_0x376fbb=new Map(_0x5799a2[_0x41465c(0x8e)](_0x5b1297=>[_0x5b1297['id'],_0x5b1297])),_0x48c78e=createHash(_0x41465c(0x89))[_0x41465c(0xa2)](JSON[_0x41465c(0xaa)](_0x5799a2[_0x41465c(0x8e)](toHashInput)))[_0x41465c(0x93)](_0x41465c(0xa6));return{'total':_0x5799a2[_0x41465c(0xa1)],'hash':_0x41465c(0x83)+_0x48c78e,'menus':_0x5799a2,'byId':_0x376fbb};}export function toProcessedMenuItem(_0xffc6c5){const _0x48d84e=a114_0x4c98;return{'id':_0xffc6c5['id'],'path':_0xffc6c5[_0x48d84e(0x8d)],'label':_0xffc6c5[_0x48d84e(0xb2)],'resources':[..._0xffc6c5[_0x48d84e(0x88)]],'extend':_0xffc6c5[_0x48d84e(0x87)]??null};}export function toMenuListItem(_0x4f43a0){const {modelType:_0x3f7f54,datasetId:_0x5f40a1,datasetCode:_0x4f3ba5,resourcesValid:_0x230836,..._0x3d258a}=_0x4f43a0;return _0x3d258a;}export function getChildren(_0x2fe226,_0x5bd20d){const _0x7ae542=a114_0x4c98;return _0x2fe226['menus'][_0x7ae542(0xb1)](_0xe9a76=>_0xe9a76[_0x7ae542(0x90)]===_0x5bd20d);}function flattenMenuItems(_0x1e1790,_0x2ed70c){const _0x3d64d5=a114_0x4c98,_0x32d93f=sortMenuItems(_0x1e1790),_0x2c1094=[];for(const _0x252b7f of _0x32d93f){const _0x1b1adb=sortMenuItems(Array[_0x3d64d5(0x97)](_0x252b7f[_0x3d64d5(0x96)])?_0x252b7f[_0x3d64d5(0x96)]:[]);_0x2c1094[_0x3d64d5(0x9d)](toMenuFact(_0x252b7f,_0x1b1adb,_0x2ed70c)),_0x1b1adb[_0x3d64d5(0xa1)]>0x0&&_0x2c1094[_0x3d64d5(0x9d)](...flattenMenuItems(_0x1b1adb,{'verbose':_0x2ed70c[_0x3d64d5(0x99)],'parentId':_0x252b7f['id'],'depth':_0x2ed70c[_0x3d64d5(0x8a)]+0x1}));}return _0x2c1094;}function sortMenuItems(_0x15961f){const _0x40869d=a114_0x4c98;return _0x15961f['map']((_0x2e0b68,_0x25ffd1)=>({'item':_0x2e0b68,'index':_0x25ffd1}))[_0x40869d(0xa3)]((_0x57b6e5,_0x21653a)=>{const _0x4f8e24=_0x40869d,_0x3d2cba=normalizeSort(_0x57b6e5[_0x4f8e24(0xb4)][_0x4f8e24(0xa3)]),_0x5816dc=normalizeSort(_0x21653a[_0x4f8e24(0xb4)][_0x4f8e24(0xa3)]);if(_0x3d2cba!==_0x5816dc)return _0x3d2cba-_0x5816dc;return _0x57b6e5[_0x4f8e24(0x98)]-_0x21653a[_0x4f8e24(0x98)];})['map'](({item:_0x15ef9c})=>_0x15ef9c);}function toMenuFact(_0x552b90,_0x2c25e2,_0x21dd7c){const _0x33a2f4=a114_0x4c98,_0x2ed38a=normalizeResourceValue(_0x552b90[_0x33a2f4(0x87)]?.[_0x33a2f4(0x88)]),_0xf22874={'id':_0x552b90['id'],'parentId':_0x21dd7c['parentId'],'depth':_0x21dd7c['depth'],'label':normalizeString(_0x552b90[_0x33a2f4(0xb2)]),'path':normalizeString(_0x552b90[_0x33a2f4(0x8d)]),'url':normalizeString(_0x552b90[_0x33a2f4(0x8f)]),'type':normalizeString(_0x552b90[_0x33a2f4(0x9f)]),'visible':typeof _0x552b90[_0x33a2f4(0xa5)]===_0x33a2f4(0x85)?_0x552b90[_0x33a2f4(0xa5)]:null,'sort':typeof _0x552b90[_0x33a2f4(0xa3)]==='number'&&Number[_0x33a2f4(0xac)](_0x552b90[_0x33a2f4(0xa3)])?_0x552b90['sort']:null,'resources':_0x2ed38a[_0x33a2f4(0x91)],'resourcesValid':_0x2ed38a[_0x33a2f4(0xaf)],'childrenIds':_0x2c25e2[_0x33a2f4(0x8e)](_0x8e72a0=>_0x8e72a0['id']),'childrenCount':_0x2c25e2['length'],'pageId':normalizeNullableNumber(_0x552b90['pageId']),'pageType':normalizeString(_0x552b90[_0x33a2f4(0x84)]),'modelType':normalizeString(_0x552b90[_0x33a2f4(0xb0)]),'datasetId':normalizeNullableNumber(_0x552b90[_0x33a2f4(0x9a)]),'datasetCode':normalizeString(_0x552b90[_0x33a2f4(0xa4)]),'updateUserId':normalizeNullableString(_0x552b90[_0x33a2f4(0xad)]),'updateUserName':normalizeNullableString(_0x552b90[_0x33a2f4(0x94)]),'updateTime':normalizeNullableTimestamp(_0x552b90[_0x33a2f4(0x95)])};return _0x21dd7c[_0x33a2f4(0x99)]&&(_0xf22874[_0x33a2f4(0x87)]=_0x552b90['extend']??null),_0xf22874;}function toHashInput(_0x15fd6a){const _0x27f723=a114_0x4c98;return{'id':_0x15fd6a['id'],'parentId':_0x15fd6a['parentId'],'label':_0x15fd6a[_0x27f723(0xb2)],'path':_0x15fd6a[_0x27f723(0x8d)],'url':_0x15fd6a[_0x27f723(0x8f)],'type':_0x15fd6a['type'],'visible':_0x15fd6a['visible'],'sort':_0x15fd6a[_0x27f723(0xa3)],'resources':_0x15fd6a[_0x27f723(0x88)],'resourcesValid':_0x15fd6a[_0x27f723(0xb3)],'childrenIds':_0x15fd6a['childrenIds'],'pageId':_0x15fd6a[_0x27f723(0xa8)],'pageType':_0x15fd6a['pageType'],'modelType':_0x15fd6a[_0x27f723(0xb0)],'datasetId':_0x15fd6a[_0x27f723(0x9a)],'datasetCode':_0x15fd6a[_0x27f723(0xa4)],'updateUserId':_0x15fd6a[_0x27f723(0xad)],'updateUserName':_0x15fd6a[_0x27f723(0x94)],'updateTime':_0x15fd6a[_0x27f723(0x95)]};}function a114_0x4c98(_0xdb6caf,_0x5d4e8a){_0xdb6caf=_0xdb6caf-0x83;const _0x8b6230=a114_0x8b62();let _0x4c98c9=_0x8b6230[_0xdb6caf];return _0x4c98c9;}function normalizeSort(_0x35c217){const _0x55510c=a114_0x4c98;return typeof _0x35c217===_0x55510c(0x9e)&&Number[_0x55510c(0xac)](_0x35c217)?_0x35c217:Number[_0x55510c(0x86)];}function normalizeString(_0x463ed8){const _0x244189=a114_0x4c98;return typeof _0x463ed8===_0x244189(0xab)?_0x463ed8:'';}function normalizeNullableNumber(_0x366ecf){const _0x229f68=a114_0x4c98;return typeof _0x366ecf===_0x229f68(0x9e)&&Number['isFinite'](_0x366ecf)?_0x366ecf:null;}function normalizeNullableString(_0x2c618d){const _0x356ad4=a114_0x4c98;return typeof _0x2c618d===_0x356ad4(0xab)&&_0x2c618d[_0x356ad4(0xa1)]>0x0?_0x2c618d:null;}function normalizeNullableTimestamp(_0x422ae7){const _0x3e4862=a114_0x4c98;if(typeof _0x422ae7===_0x3e4862(0xab))return _0x422ae7[_0x3e4862(0xa1)]>0x0?_0x422ae7:null;return typeof _0x422ae7===_0x3e4862(0x9e)&&Number['isFinite'](_0x422ae7)?_0x422ae7:null;}function a114_0x8b62(){const _0xcdc2e1=['datasetCode','visible','hex','1353nrUEAd','pageId','892012KknwNg','stringify','string','isFinite','updateUserId','1075952qcBEQB','valid','modelType','filter','label','resourcesValid','item','sha256:','pageType','boolean','POSITIVE_INFINITY','extend','resources','sha256','depth','4875855jqMQkl','7682496gqqqgN','path','map','url','parentId','values','5232QClktt','digest','updateUserName','updateTime','children','isArray','index','verbose','datasetId','3090451smuiAS','9HkLgos','push','number','type','131753fvtNQd','length','update','sort'];a114_0x8b62=function(){return _0xcdc2e1;};return a114_0x8b62();}export function normalizeResources(_0x17d8ff){return normalizeResourceValue(_0x17d8ff)['values'];}function normalizeResourceValue(_0x2b0612){const _0x282c03=a114_0x4c98;if(_0x2b0612==null)return{'values':[],'valid':!![]};if(Array[_0x282c03(0x97)](_0x2b0612))return{'values':_0x2b0612[_0x282c03(0x8e)](String),'valid':!![]};if(typeof _0x2b0612!==_0x282c03(0xab))return{'values':[],'valid':![]};try{const _0x8195b3=JSON['parse'](_0x2b0612);return Array[_0x282c03(0x97)](_0x8195b3)?{'values':_0x8195b3[_0x282c03(0x8e)](String),'valid':!![]}:{'values':[],'valid':![]};}catch{return{'values':[],'valid':![]};}}
1
+ (function(_0x5cd968,_0x2a94d0){const _0x1eb94d=a120_0x511b,_0x3c37d1=_0x5cd968();while(!![]){try{const _0x4eb0cc=-parseInt(_0x1eb94d(0x130))/0x1*(-parseInt(_0x1eb94d(0x145))/0x2)+parseInt(_0x1eb94d(0x147))/0x3+parseInt(_0x1eb94d(0x149))/0x4+parseInt(_0x1eb94d(0x14d))/0x5+-parseInt(_0x1eb94d(0x154))/0x6*(parseInt(_0x1eb94d(0x150))/0x7)+parseInt(_0x1eb94d(0x142))/0x8*(parseInt(_0x1eb94d(0x158))/0x9)+-parseInt(_0x1eb94d(0x12c))/0xa*(parseInt(_0x1eb94d(0x13d))/0xb);if(_0x4eb0cc===_0x2a94d0)break;else _0x3c37d1['push'](_0x3c37d1['shift']());}catch(_0x53c233){_0x3c37d1['push'](_0x3c37d1['shift']());}}}(a120_0x13d1,0x1accc));import{createHash}from'node:crypto';import{getMenuTree}from'../../../core/api-client.js';export async function fetchMenuSnapshot(_0x16701e,_0x174ffc,_0x848428={}){const _0x77ec46=a120_0x511b,_0x5b3c0d=await getMenuTree(_0x16701e,_0x174ffc);return buildMenuSnapshot(Array[_0x77ec46(0x144)](_0x5b3c0d)?_0x5b3c0d:[],_0x848428);}export function buildMenuSnapshot(_0x428bfb,_0x292d02={}){const _0x18cf37=a120_0x511b,_0x4a8b81=flattenMenuItems(_0x428bfb,{'verbose':_0x292d02[_0x18cf37(0x155)]===!![],'parentId':null,'depth':0x0}),_0x1dc4b7=new Map(_0x4a8b81['map'](_0x45a319=>[_0x45a319['id'],_0x45a319])),_0x17178b=createHash('sha256')['update'](JSON[_0x18cf37(0x13e)](_0x4a8b81[_0x18cf37(0x148)](toHashInput)))['digest'](_0x18cf37(0x12d));return{'total':_0x4a8b81[_0x18cf37(0x14e)],'hash':_0x18cf37(0x134)+_0x17178b,'menus':_0x4a8b81,'byId':_0x1dc4b7};}export function toProcessedMenuItem(_0x3f68f7){const _0x402dc8=a120_0x511b;return{'id':_0x3f68f7['id'],'path':_0x3f68f7['path'],'label':_0x3f68f7[_0x402dc8(0x141)],'resources':[..._0x3f68f7[_0x402dc8(0x151)]],'extend':_0x3f68f7['extend']??null};}export function toMenuListItem(_0x5ba2b5){const {modelType:_0xcd4c79,datasetId:_0x4bd319,datasetCode:_0x3b92c8,resourcesValid:_0x10c76b,..._0x3612ee}=_0x5ba2b5;return _0x3612ee;}export function getChildren(_0xbe8381,_0x3f3d15){const _0x5e8b79=a120_0x511b;return _0xbe8381[_0x5e8b79(0x146)][_0x5e8b79(0x143)](_0x36a8eb=>_0x36a8eb[_0x5e8b79(0x12a)]===_0x3f3d15);}function flattenMenuItems(_0x5571e4,_0x4e63b1){const _0x4676ef=a120_0x511b,_0x43bcd2=sortMenuItems(_0x5571e4),_0x407f99=[];for(const _0x2b188a of _0x43bcd2){const _0xe0caf4=sortMenuItems(Array[_0x4676ef(0x144)](_0x2b188a[_0x4676ef(0x135)])?_0x2b188a['children']:[]);_0x407f99[_0x4676ef(0x156)](toMenuFact(_0x2b188a,_0xe0caf4,_0x4e63b1)),_0xe0caf4['length']>0x0&&_0x407f99['push'](...flattenMenuItems(_0xe0caf4,{'verbose':_0x4e63b1[_0x4676ef(0x155)],'parentId':_0x2b188a['id'],'depth':_0x4e63b1['depth']+0x1}));}return _0x407f99;}function sortMenuItems(_0x372cb6){const _0x2d0426=a120_0x511b;return _0x372cb6[_0x2d0426(0x148)]((_0x58f94a,_0x27be74)=>({'item':_0x58f94a,'index':_0x27be74}))[_0x2d0426(0x153)]((_0x4581f8,_0x24e0fe)=>{const _0x50bc06=_0x2d0426,_0x45f83e=normalizeSort(_0x4581f8[_0x50bc06(0x137)][_0x50bc06(0x153)]),_0x1be6c6=normalizeSort(_0x24e0fe[_0x50bc06(0x137)]['sort']);if(_0x45f83e!==_0x1be6c6)return _0x45f83e-_0x1be6c6;return _0x4581f8[_0x50bc06(0x131)]-_0x24e0fe[_0x50bc06(0x131)];})[_0x2d0426(0x148)](({item:_0x4c888d})=>_0x4c888d);}function toMenuFact(_0x19ffe4,_0x33f57a,_0x4c594e){const _0x5f5a5b=a120_0x511b,_0x36e030=normalizeResourceValue(_0x19ffe4['extend']?.[_0x5f5a5b(0x151)]),_0x5782e6={'id':_0x19ffe4['id'],'parentId':_0x4c594e[_0x5f5a5b(0x12a)],'depth':_0x4c594e[_0x5f5a5b(0x139)],'label':normalizeString(_0x19ffe4[_0x5f5a5b(0x141)]),'path':normalizeString(_0x19ffe4[_0x5f5a5b(0x13f)]),'url':normalizeString(_0x19ffe4['url']),'type':normalizeString(_0x19ffe4['type']),'visible':typeof _0x19ffe4[_0x5f5a5b(0x13c)]===_0x5f5a5b(0x13a)?_0x19ffe4[_0x5f5a5b(0x13c)]:null,'sort':typeof _0x19ffe4['sort']==='number'&&Number['isFinite'](_0x19ffe4['sort'])?_0x19ffe4[_0x5f5a5b(0x153)]:null,'resources':_0x36e030['values'],'resourcesValid':_0x36e030['valid'],'childrenIds':_0x33f57a[_0x5f5a5b(0x148)](_0x2b7710=>_0x2b7710['id']),'childrenCount':_0x33f57a[_0x5f5a5b(0x14e)],'pageId':normalizeNullableNumber(_0x19ffe4[_0x5f5a5b(0x12b)]),'pageType':normalizeString(_0x19ffe4[_0x5f5a5b(0x138)]),'modelType':normalizeString(_0x19ffe4[_0x5f5a5b(0x136)]),'datasetId':normalizeNullableNumber(_0x19ffe4[_0x5f5a5b(0x140)]),'datasetCode':normalizeString(_0x19ffe4[_0x5f5a5b(0x14a)]),'updateUserId':normalizeNullableString(_0x19ffe4['updateUserId']),'updateUserName':normalizeNullableString(_0x19ffe4[_0x5f5a5b(0x12e)]),'updateTime':normalizeNullableTimestamp(_0x19ffe4[_0x5f5a5b(0x157)])};return _0x4c594e['verbose']&&(_0x5782e6['extend']=_0x19ffe4[_0x5f5a5b(0x152)]??null),_0x5782e6;}function toHashInput(_0x58082e){const _0x2ec949=a120_0x511b;return{'id':_0x58082e['id'],'parentId':_0x58082e[_0x2ec949(0x12a)],'label':_0x58082e[_0x2ec949(0x141)],'path':_0x58082e[_0x2ec949(0x13f)],'url':_0x58082e['url'],'type':_0x58082e['type'],'visible':_0x58082e[_0x2ec949(0x13c)],'sort':_0x58082e[_0x2ec949(0x153)],'resources':_0x58082e[_0x2ec949(0x151)],'resourcesValid':_0x58082e[_0x2ec949(0x133)],'childrenIds':_0x58082e[_0x2ec949(0x14b)],'pageId':_0x58082e[_0x2ec949(0x12b)],'pageType':_0x58082e['pageType'],'modelType':_0x58082e[_0x2ec949(0x136)],'datasetId':_0x58082e['datasetId'],'datasetCode':_0x58082e[_0x2ec949(0x14a)],'updateUserId':_0x58082e[_0x2ec949(0x14c)],'updateUserName':_0x58082e['updateUserName'],'updateTime':_0x58082e[_0x2ec949(0x157)]};}function normalizeSort(_0x539bac){const _0x3aba50=a120_0x511b;return typeof _0x539bac===_0x3aba50(0x12f)&&Number[_0x3aba50(0x132)](_0x539bac)?_0x539bac:Number['POSITIVE_INFINITY'];}function a120_0x511b(_0x4067b0,_0x16714f){_0x4067b0=_0x4067b0-0x12a;const _0x13d1d0=a120_0x13d1();let _0x511bfc=_0x13d1d0[_0x4067b0];return _0x511bfc;}function normalizeString(_0x397b58){const _0x26956e=a120_0x511b;return typeof _0x397b58===_0x26956e(0x14f)?_0x397b58:'';}function normalizeNullableNumber(_0x4b2875){const _0x4d9cc3=a120_0x511b;return typeof _0x4b2875===_0x4d9cc3(0x12f)&&Number[_0x4d9cc3(0x132)](_0x4b2875)?_0x4b2875:null;}function a120_0x13d1(){const _0x173e50=['verbose','push','updateTime','9gSonJa','parentId','pageId','150SSDoYu','hex','updateUserName','number','1UqhNHv','index','isFinite','resourcesValid','sha256:','children','modelType','item','pageType','depth','boolean','values','visible','295614WKscLq','stringify','path','datasetId','label','1226528CeLIrC','filter','isArray','414928UxqyQK','menus','130689nbqEXR','map','674232iZgrrh','datasetCode','childrenIds','updateUserId','192950xpLUHK','length','string','49xwHWDo','resources','extend','sort','84522KEDRwr'];a120_0x13d1=function(){return _0x173e50;};return a120_0x13d1();}function normalizeNullableString(_0x5c3cef){return typeof _0x5c3cef==='string'&&_0x5c3cef['length']>0x0?_0x5c3cef:null;}function normalizeNullableTimestamp(_0x121800){const _0x2c6758=a120_0x511b;if(typeof _0x121800===_0x2c6758(0x14f))return _0x121800[_0x2c6758(0x14e)]>0x0?_0x121800:null;return typeof _0x121800===_0x2c6758(0x12f)&&Number[_0x2c6758(0x132)](_0x121800)?_0x121800:null;}export function normalizeResources(_0x4a4196){const _0x46cb5a=a120_0x511b;return normalizeResourceValue(_0x4a4196)[_0x46cb5a(0x13b)];}function normalizeResourceValue(_0x313dd4){const _0xec24e3=a120_0x511b;if(_0x313dd4==null)return{'values':[],'valid':!![]};if(Array[_0xec24e3(0x144)](_0x313dd4))return{'values':_0x313dd4['map'](String),'valid':!![]};if(typeof _0x313dd4!==_0xec24e3(0x14f))return{'values':[],'valid':![]};try{const _0x33dbf8=JSON['parse'](_0x313dd4);return Array[_0xec24e3(0x144)](_0x33dbf8)?{'values':_0x33dbf8[_0xec24e3(0x148)](String),'valid':!![]}:{'values':[],'valid':![]};}catch{return{'values':[],'valid':![]};}}
@@ -1 +1 @@
1
- (function(_0x16d50b,_0x1a5308){var _0x46d79c=a115_0x3324,_0x2fd3cc=_0x16d50b();while(!![]){try{var _0x157b1b=-parseInt(_0x46d79c(0x1e8))/0x1+-parseInt(_0x46d79c(0x1eb))/0x2*(-parseInt(_0x46d79c(0x1ea))/0x3)+-parseInt(_0x46d79c(0x1e9))/0x4+-parseInt(_0x46d79c(0x1e5))/0x5*(-parseInt(_0x46d79c(0x1e6))/0x6)+parseInt(_0x46d79c(0x1e4))/0x7+parseInt(_0x46d79c(0x1e3))/0x8+-parseInt(_0x46d79c(0x1e7))/0x9;if(_0x157b1b===_0x1a5308)break;else _0x2fd3cc['push'](_0x2fd3cc['shift']());}catch(_0x14955c){_0x2fd3cc['push'](_0x2fd3cc['shift']());}}}(a115_0x4576,0xd8c57));export*from'../../../commands/menu/shared/types.js';export*from'../../../commands/menu/shared/logic.js';export*from'../../../commands/menu/shared/compare-table.js';export*from'../../../commands/menu/shared/inquirer.js';export*from'../../../commands/menu/shared/valid-url.js';export*from'../../../commands/menu/shared/local-pages.js';export*from'../../../commands/menu/shared/service.js';export*from'../../../commands/menu/shared/sync-core.js';function a115_0x3324(_0x38d2b9,_0x3949f6){_0x38d2b9=_0x38d2b9-0x1e3;var _0x4576d8=a115_0x4576();var _0x33245e=_0x4576d8[_0x38d2b9];return _0x33245e;}function a115_0x4576(){var _0x391aca=['4776303RGkKJl','2DKGMNE','12320816goIbNY','4263805KJTzBY','5wVwhCf','2811714bGMSjl','24277419KHQpDz','406229QaOLHF','873288WJvEiY'];a115_0x4576=function(){return _0x391aca;};return a115_0x4576();}export*from'../../../commands/menu/shared/update-core.js';
1
+ (function(_0x3179ae,_0x114617){var _0xd148e=a121_0x152f,_0x31b7aa=_0x3179ae();while(!![]){try{var _0x430eea=-parseInt(_0xd148e(0x146))/0x1*(parseInt(_0xd148e(0x147))/0x2)+parseInt(_0xd148e(0x144))/0x3*(parseInt(_0xd148e(0x145))/0x4)+-parseInt(_0xd148e(0x14b))/0x5+-parseInt(_0xd148e(0x149))/0x6*(parseInt(_0xd148e(0x14a))/0x7)+-parseInt(_0xd148e(0x14c))/0x8*(parseInt(_0xd148e(0x141))/0x9)+-parseInt(_0xd148e(0x148))/0xa*(-parseInt(_0xd148e(0x142))/0xb)+-parseInt(_0xd148e(0x14d))/0xc*(-parseInt(_0xd148e(0x143))/0xd);if(_0x430eea===_0x114617)break;else _0x31b7aa['push'](_0x31b7aa['shift']());}catch(_0x5c5961){_0x31b7aa['push'](_0x31b7aa['shift']());}}}(a121_0x5315,0x812ac));export*from'../../../commands/menu/shared/types.js';export*from'../../../commands/menu/shared/logic.js';export*from'../../../commands/menu/shared/compare-table.js';export*from'../../../commands/menu/shared/inquirer.js';export*from'../../../commands/menu/shared/valid-url.js';export*from'../../../commands/menu/shared/local-pages.js';export*from'../../../commands/menu/shared/service.js';export*from'../../../commands/menu/shared/sync-core.js';function a121_0x152f(_0x378945,_0xb744b2){_0x378945=_0x378945-0x141;var _0x531586=a121_0x5315();var _0x152ffb=_0x531586[_0x378945];return _0x152ffb;}function a121_0x5315(){var _0x505e6d=['819rplZtA','1351105UMaZeE','24uijGWp','16140xwGWCQ','1792458yjVDmq','9977jPmdqg','10517ahjeVa','684SbPOJd','3692eFgtGo','551795XcCVDO','2RLZPys','10460PSYpjS','15318XURnGs'];a121_0x5315=function(){return _0x505e6d;};return a121_0x5315();}export*from'../../../commands/menu/shared/update-core.js';
@@ -1 +1 @@
1
- (function(_0x541a26,_0x53e04f){const _0x231501=a116_0x30d5,_0x271c97=_0x541a26();while(!![]){try{const _0x279f1c=-parseInt(_0x231501(0xee))/0x1*(parseInt(_0x231501(0xe9))/0x2)+-parseInt(_0x231501(0xd3))/0x3+parseInt(_0x231501(0xf1))/0x4+-parseInt(_0x231501(0xf3))/0x5+-parseInt(_0x231501(0xde))/0x6*(-parseInt(_0x231501(0xff))/0x7)+parseInt(_0x231501(0xe6))/0x8*(parseInt(_0x231501(0xf7))/0x9)+parseInt(_0x231501(0xf5))/0xa;if(_0x279f1c===_0x53e04f)break;else _0x271c97['push'](_0x271c97['shift']());}catch(_0x1ad9ca){_0x271c97['push'](_0x271c97['shift']());}}}(a116_0x19d9,0xcaa4e));import a116_0x14982e from'chalk';import{checkbox,input,confirm}from'@inquirer/prompts';import a116_0xd41cbc from'ora';import{isUrlReachable}from'../../../commands/menu/shared/valid-url.js';function a116_0x30d5(_0x2f6426,_0x3e3724){_0x2f6426=_0x2f6426-0xd2;const _0x19d9c1=a116_0x19d9();let _0x30d512=_0x19d9c1[_0x2f6426];return _0x30d512;}import{CliErrors}from'../../../errors.js';function onCancel(_0x27d3b3){const _0x5bb323=a116_0x30d5;return _0x27d3b3[_0x5bb323(0xef)](_0x129602=>{const _0x359776=_0x5bb323;if(_0x129602?.[_0x359776(0xfb)]==='ExitPromptError')throw CliErrors[_0x359776(0xea)]('Cancelled.');throw _0x129602;});}export function startSpinner(_0x479e06){const _0x33735a=a116_0x30d5;return a116_0xd41cbc({'text':_0x479e06,'color':_0x33735a(0xe2)})[_0x33735a(0xeb)]();}export function stopSpinner(_0x251ac3,_0x1db215,_0x4244b9){const _0x160bcc=a116_0x30d5;_0x4244b9?_0x251ac3[_0x160bcc(0xda)](_0x1db215):_0x251ac3['fail'](_0x1db215);}export async function askConfirm(_0x1e1b4c){return onCancel(confirm({'message':_0x1e1b4c,'theme':{'prefix':''}}));}export async function askJsUrl(_0x331884){const _0x56988e=a116_0x30d5;while(!![]){const _0x14bafe=await onCancel(input({'message':_0x56988e(0xd4),'default':_0x331884,'theme':{'prefix':''}}));if(_0x14bafe['trim']()==='')throw CliErrors[_0x56988e(0xea)]('Cancelled.');if(!/^https:\/\/.+\.js(\?.*)?$/[_0x56988e(0xfc)](_0x14bafe[_0x56988e(0xd7)]())){console[_0x56988e(0xd9)](a116_0x14982e['red'](_0x56988e(0xd6)));continue;}const _0x3bdbb2=startSpinner(_0x56988e(0xed));try{const _0x3a7de3=await isUrlReachable(_0x14bafe['trim']());stopSpinner(_0x3bdbb2,'JS\x20URL\x20checked',_0x3a7de3);if(!_0x3a7de3){console[_0x56988e(0xd9)](a116_0x14982e[_0x56988e(0xfe)](_0x56988e(0xdc)));continue;}return _0x14bafe[_0x56988e(0xd7)]();}catch(_0x405053){stopSpinner(_0x3bdbb2,'JS\x20URL\x20check\x20failed',![]);throw _0x405053;}}}export async function askCssUrl(_0x153be1){const _0x4a2925=a116_0x30d5;while(!![]){const _0x3da6aa=await onCancel(input({'message':_0x4a2925(0xf0),'default':_0x153be1,'theme':{'prefix':''}}));if(_0x3da6aa[_0x4a2925(0xd7)]()==='')throw CliErrors[_0x4a2925(0xea)](_0x4a2925(0xe7));if(!/^https:\/\/.+\.css(\?.*)?$/[_0x4a2925(0xfc)](_0x3da6aa[_0x4a2925(0xd7)]())){console[_0x4a2925(0xd9)](a116_0x14982e[_0x4a2925(0xfe)](_0x4a2925(0xdb)));continue;}const _0x1436fe=startSpinner(_0x4a2925(0xe3));try{const _0x5a9729=await isUrlReachable(_0x3da6aa[_0x4a2925(0xd7)]());stopSpinner(_0x1436fe,_0x4a2925(0xd8),_0x5a9729);if(!_0x5a9729){console[_0x4a2925(0xd9)](a116_0x14982e[_0x4a2925(0xfe)](_0x4a2925(0xf2)));continue;}return _0x3da6aa[_0x4a2925(0xd7)]();}catch(_0x58b5d3){stopSpinner(_0x1436fe,'CSS\x20URL\x20check\x20failed',![]);throw _0x58b5d3;}}}export async function selectPages(_0x586a45,_0x5bbaae){const _0x5ddff5=a116_0x30d5,_0x351665=_0x586a45[_0x5ddff5(0xe4)](_0x11cecb=>{const _0x27f9f2=_0x5ddff5,_0x9fc55b=_0x5bbaae['has'](_0x11cecb[_0x27f9f2(0xd2)]);return{'name':_0x11cecb[_0x27f9f2(0xdd)]+'\x20\x20'+a116_0x14982e[_0x27f9f2(0xec)](_0x11cecb['path'])+'\x20\x20'+(_0x9fc55b?a116_0x14982e['gray'](_0x27f9f2(0xe1)):a116_0x14982e[_0x27f9f2(0xf4)](_0x27f9f2(0xf6))),'value':_0x11cecb[_0x27f9f2(0xd2)],'checked':!_0x9fc55b,'disabled':_0x9fc55b};});if(_0x351665[_0x5ddff5(0xfd)]===0x0)throw new Error(_0x5ddff5(0x100));const _0x40b5db=await onCancel(checkbox({'message':_0x5ddff5(0xe0),'choices':_0x351665,'loop':![],'theme':{'prefix':''}}));if(_0x40b5db[_0x5ddff5(0xfd)]===0x0)throw new Error(_0x5ddff5(0xe5));return _0x586a45[_0x5ddff5(0xe8)](_0xb05143=>_0x40b5db[_0x5ddff5(0xfa)](_0xb05143[_0x5ddff5(0xd2)]));}export function isInteractive(){const _0x2e634a=a116_0x30d5;return process[_0x2e634a(0xdf)][_0x2e634a(0xf9)]===!![];}export function requireInteractive(){const _0x39b7ff=a116_0x30d5;if(!isInteractive())throw new Error(_0x39b7ff(0xd5)+_0x39b7ff(0xf8));}function a116_0x19d9(){const _0x254e95=['\x20\x20✗\x20CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','\x20\x20✗\x20JS\x20URL\x20is\x20unreachable','label','1908MdgOOu','stdin','\x20\x20Select\x20menus\x20to\x20sync\x20(space\x20to\x20toggle,\x20a=all,\x20i=invert):','[already\x20on\x20platform]','cyan','\x20\x20Checking\x20CSS\x20URL\x20reachability...','map','No\x20menus\x20selected.','40Kwupax','Cancelled.','filter','77834iRgClK','cancelled','start','gray','\x20\x20Checking\x20JS\x20URL\x20reachability...','39CaTXoR','catch','\x20\x20CSS\x20URL:','181704diERrW','\x20\x20✗\x20CSS\x20URL\x20is\x20unreachable','7120015iiYlnO','green','22537600PvHxKZ','[new]','2363751PoNHZq','Use\x20--yes\x20to\x20run\x20in\x20non-interactive\x20mode,\x20or\x20pipe\x20data\x20via\x20--params.','isTTY','includes','name','test','length','red','19362TMhnil','No\x20local\x20pages\x20found.','path','2160519cgGGWD','\x20\x20JS\x20URL:','This\x20command\x20requires\x20an\x20interactive\x20terminal.\x20','\x20\x20✗\x20JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','trim','CSS\x20URL\x20checked','error','succeed'];a116_0x19d9=function(){return _0x254e95;};return a116_0x19d9();}
1
+ (function(_0x311c56,_0x5a685a){const _0x201efe=a122_0xddbf,_0x493d18=_0x311c56();while(!![]){try{const _0x4782e3=parseInt(_0x201efe(0x1ec))/0x1+-parseInt(_0x201efe(0x1f6))/0x2+-parseInt(_0x201efe(0x1e6))/0x3+parseInt(_0x201efe(0x203))/0x4*(parseInt(_0x201efe(0x1e7))/0x5)+-parseInt(_0x201efe(0x1f0))/0x6+parseInt(_0x201efe(0x1eb))/0x7*(-parseInt(_0x201efe(0x1e8))/0x8)+-parseInt(_0x201efe(0x1f3))/0x9*(-parseInt(_0x201efe(0x1fa))/0xa);if(_0x4782e3===_0x5a685a)break;else _0x493d18['push'](_0x493d18['shift']());}catch(_0x46959a){_0x493d18['push'](_0x493d18['shift']());}}}(a122_0x5306,0x8dfef));import a122_0x771bc2 from'chalk';import{checkbox,input,confirm}from'@inquirer/prompts';import a122_0xee29a0 from'ora';import{isUrlReachable}from'../../../commands/menu/shared/valid-url.js';import{CliErrors}from'../../../errors.js';function onCancel(_0x54e40f){return _0x54e40f['catch'](_0x4dad03=>{const _0x2c9075=a122_0xddbf;if(_0x4dad03?.[_0x2c9075(0x1f2)]===_0x2c9075(0x1dd))throw CliErrors[_0x2c9075(0x1ea)](_0x2c9075(0x1f8));throw _0x4dad03;});}export function startSpinner(_0x568e3f){const _0x533056=a122_0xddbf;return a122_0xee29a0({'text':_0x568e3f,'color':_0x533056(0x1f1)})[_0x533056(0x1f4)]();}export function stopSpinner(_0x44f5c6,_0xe33d30,_0x3f01b9){_0x3f01b9?_0x44f5c6['succeed'](_0xe33d30):_0x44f5c6['fail'](_0xe33d30);}export async function askConfirm(_0x3fb5f3){return onCancel(confirm({'message':_0x3fb5f3,'theme':{'prefix':''}}));}export async function askJsUrl(_0x2c24aa){const _0x2a7557=a122_0xddbf;while(!![]){const _0x2421ee=await onCancel(input({'message':_0x2a7557(0x1de),'default':_0x2c24aa,'theme':{'prefix':''}}));if(_0x2421ee[_0x2a7557(0x1e5)]()==='')throw CliErrors[_0x2a7557(0x1ea)]('Cancelled.');if(!/^https:\/\/.+\.js(\?.*)?$/[_0x2a7557(0x1fe)](_0x2421ee[_0x2a7557(0x1e5)]())){console[_0x2a7557(0x1fd)](a122_0x771bc2[_0x2a7557(0x1e3)](_0x2a7557(0x1e9)));continue;}const _0x1d4db6=startSpinner(_0x2a7557(0x1d8));try{const _0x1ebb85=await isUrlReachable(_0x2421ee['trim']());stopSpinner(_0x1d4db6,_0x2a7557(0x1e0),_0x1ebb85);if(!_0x1ebb85){console['error'](a122_0x771bc2['red']('\x20\x20✗\x20JS\x20URL\x20is\x20unreachable'));continue;}return _0x2421ee[_0x2a7557(0x1e5)]();}catch(_0x2f64e7){stopSpinner(_0x1d4db6,_0x2a7557(0x1d9),![]);throw _0x2f64e7;}}}export async function askCssUrl(_0x3499fc){const _0x42a27a=a122_0xddbf;while(!![]){const _0x19d4ab=await onCancel(input({'message':_0x42a27a(0x1df),'default':_0x3499fc,'theme':{'prefix':''}}));if(_0x19d4ab[_0x42a27a(0x1e5)]()==='')throw CliErrors[_0x42a27a(0x1ea)]('Cancelled.');if(!/^https:\/\/.+\.css(\?.*)?$/[_0x42a27a(0x1fe)](_0x19d4ab['trim']())){console[_0x42a27a(0x1fd)](a122_0x771bc2[_0x42a27a(0x1e3)](_0x42a27a(0x202)));continue;}const _0x563446=startSpinner(_0x42a27a(0x201));try{const _0x19a532=await isUrlReachable(_0x19d4ab['trim']());stopSpinner(_0x563446,_0x42a27a(0x200),_0x19a532);if(!_0x19a532){console[_0x42a27a(0x1fd)](a122_0x771bc2[_0x42a27a(0x1e3)](_0x42a27a(0x1dc)));continue;}return _0x19d4ab[_0x42a27a(0x1e5)]();}catch(_0x325b0c){stopSpinner(_0x563446,_0x42a27a(0x1ef),![]);throw _0x325b0c;}}}export async function selectPages(_0x5ea754,_0x4324cf){const _0x4aafa0=a122_0xddbf,_0x4bc509=_0x5ea754['map'](_0x64c342=>{const _0x26818d=a122_0xddbf,_0x31c5ca=_0x4324cf[_0x26818d(0x1e2)](_0x64c342[_0x26818d(0x1ed)]);return{'name':_0x64c342[_0x26818d(0x1db)]+'\x20\x20'+a122_0x771bc2[_0x26818d(0x1f5)](_0x64c342[_0x26818d(0x1ed)])+'\x20\x20'+(_0x31c5ca?a122_0x771bc2['gray'](_0x26818d(0x1fc)):a122_0x771bc2['green'](_0x26818d(0x1f9))),'value':_0x64c342[_0x26818d(0x1ed)],'checked':!_0x31c5ca,'disabled':_0x31c5ca};});if(_0x4bc509[_0x4aafa0(0x1fb)]===0x0)throw new Error(_0x4aafa0(0x1da));const _0x5ad268=await onCancel(checkbox({'message':'\x20\x20Select\x20menus\x20to\x20sync\x20(space\x20to\x20toggle,\x20a=all,\x20i=invert):','choices':_0x4bc509,'loop':![],'theme':{'prefix':''}}));if(_0x5ad268[_0x4aafa0(0x1fb)]===0x0)throw new Error(_0x4aafa0(0x1e1));return _0x5ea754[_0x4aafa0(0x1f7)](_0x1c65e6=>_0x5ad268[_0x4aafa0(0x1ee)](_0x1c65e6['path']));}export function isInteractive(){const _0x38d5cf=a122_0xddbf;return process[_0x38d5cf(0x1e4)][_0x38d5cf(0x1ff)]===!![];}function a122_0xddbf(_0xe90f3,_0x775698){_0xe90f3=_0xe90f3-0x1d7;const _0x530646=a122_0x5306();let _0xddbf6b=_0x530646[_0xe90f3];return _0xddbf6b;}export function requireInteractive(){const _0x377507=a122_0xddbf;if(!isInteractive())throw new Error('This\x20command\x20requires\x20an\x20interactive\x20terminal.\x20'+_0x377507(0x1d7));}function a122_0x5306(){const _0x183c71=['5661006DKfZWM','cyan','name','10710JaYyWs','start','gray','2251054VkXuCr','filter','Cancelled.','[new]','19490QcLqwI','length','[already\x20on\x20platform]','error','test','isTTY','CSS\x20URL\x20checked','\x20\x20Checking\x20CSS\x20URL\x20reachability...','\x20\x20✗\x20CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','1715344wLoIof','Use\x20--yes\x20to\x20run\x20in\x20non-interactive\x20mode,\x20or\x20pipe\x20data\x20via\x20--params.','\x20\x20Checking\x20JS\x20URL\x20reachability...','JS\x20URL\x20check\x20failed','No\x20local\x20pages\x20found.','label','\x20\x20✗\x20CSS\x20URL\x20is\x20unreachable','ExitPromptError','\x20\x20JS\x20URL:','\x20\x20CSS\x20URL:','JS\x20URL\x20checked','No\x20menus\x20selected.','has','red','stdin','trim','1126314xBjQKh','5ZsroFI','312BmWVIo','\x20\x20✗\x20JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','cancelled','120799prBaLh','950958cmEalb','path','includes','CSS\x20URL\x20check\x20failed'];a122_0x5306=function(){return _0x183c71;};return a122_0x5306();}
@@ -1 +1 @@
1
- function a117_0x249d(_0xf16b81,_0x3ba468){_0xf16b81=_0xf16b81-0xcb;const _0x27077e=a117_0x2707();let _0x249d13=_0x27077e[_0xf16b81];return _0x249d13;}const a117_0x430942=a117_0x249d;(function(_0x67e46d,_0x112506){const _0x242bbb=a117_0x249d,_0x4f1416=_0x67e46d();while(!![]){try{const _0x57149f=parseInt(_0x242bbb(0xdc))/0x1*(-parseInt(_0x242bbb(0xcb))/0x2)+-parseInt(_0x242bbb(0xcc))/0x3+parseInt(_0x242bbb(0xd3))/0x4+-parseInt(_0x242bbb(0xd4))/0x5+-parseInt(_0x242bbb(0xd0))/0x6+parseInt(_0x242bbb(0xd5))/0x7*(parseInt(_0x242bbb(0xdb))/0x8)+parseInt(_0x242bbb(0xcd))/0x9;if(_0x57149f===_0x112506)break;else _0x4f1416['push'](_0x4f1416['shift']());}catch(_0x382545){_0x4f1416['push'](_0x4f1416['shift']());}}}(a117_0x2707,0xc936c));import{readdirSync,statSync,readFileSync}from'fs';import{join,relative,resolve,sep}from'path';const pagesDir=resolve(process[a117_0x430942(0xd7)](),a117_0x430942(0xd8));export function extractTitleFromComment(_0x15711d){const _0x47819d=a117_0x430942;try{const _0x1cc6f4=readFileSync(_0x15711d,_0x47819d(0xdf)),_0x28a58e=_0x1cc6f4['match'](/^\s*\/\*\*?([\s\S]*?)\*\//);if(_0x28a58e&&_0x28a58e[0x1]){const _0x38f52a=_0x28a58e[0x1],_0xb9f838=_0x38f52a[_0x47819d(0xd9)](/^\s*\*?\s*title\s*:\s*(.+)/im);if(_0xb9f838&&_0xb9f838[0x1])return _0xb9f838[0x1]['trim']();}let _0x26aa17=null;const _0x37a055=_0x1cc6f4['match'](/export\s+default\s+([A-Z][a-zA-Z0-9]*)/);_0x37a055&&_0x37a055[0x1]&&(_0x26aa17=_0x37a055[0x1]);if(!_0x26aa17){const _0x38e4d9=_0x1cc6f4[_0x47819d(0xd9)](/export\s+default\s+function\s+([A-Z][a-zA-Z0-9]*)/);_0x38e4d9&&_0x38e4d9[0x1]&&(_0x26aa17=_0x38e4d9[0x1]);}if(_0x26aa17){const _0x52c81a=new RegExp('\x5cb'+_0x26aa17+_0x47819d(0xde)),_0x22c143=_0x1cc6f4[_0x47819d(0xd9)](_0x52c81a);if(_0x22c143&&_0x22c143[0x1])return _0x22c143[0x1];return _0x26aa17;}return null;}catch(_0x4c7867){return null;}}export function getLocalPages(_0x472a09=pagesDir,_0x660edf=pagesDir){const _0x357961=a117_0x430942;let _0x375d6c=[];const _0xbc3379=readdirSync(_0x472a09);return _0xbc3379[_0x357961(0xe0)](_0x177fd3=>{const _0x22a397=_0x357961,_0x126fe8=join(_0x472a09,_0x177fd3),_0x3b06a1=statSync(_0x126fe8);if(_0x3b06a1&&_0x3b06a1['isDirectory']())_0x375d6c=_0x375d6c['concat'](getLocalPages(_0x126fe8,_0x660edf));else{if(_0x177fd3[_0x22a397(0xdd)](_0x22a397(0xcf))){let _0x289749=relative(_0x660edf,_0x126fe8);_0x289749[_0x22a397(0xdd)](_0x22a397(0xda))?_0x289749=_0x289749[_0x22a397(0xd1)](/index\.tsx$/,''):_0x289749=_0x289749[_0x22a397(0xd1)](/\.tsx$/,'');_0x289749[_0x22a397(0xdd)](sep)&&(_0x289749=_0x289749[_0x22a397(0xd6)](0x0,-0x1));const _0x34c608=_0x289749['split'](sep)['join']('/'),_0xedf1a7=extractTitleFromComment(_0x126fe8),_0x2923cc=_0xedf1a7||_0x34c608;_0x375d6c['push']({'path':_0x34c608['replaceAll']('$',':'),'label':_0x2923cc});}}}),_0x375d6c[_0x357961(0xd2)](_0x560477=>_0x560477[_0x357961(0xce)]!=='');}function a117_0x2707(){const _0x42cf8e=['utf-8','forEach','2UYxfoW','3698370epJakK','33858252VmJCSV','path','.tsx','5043624fKiZwA','replace','filter','5076212NTPHtx','8124905lljqfb','973pkAjoO','slice','cwd','src/pages','match','index.tsx','31400YGWLGa','1054109GeoUdW','endsWith','\x5c.displayName\x5cs*=\x5cs*[\x22\x27]([^\x22\x27]+)[\x22\x27]'];a117_0x2707=function(){return _0x42cf8e;};return a117_0x2707();}
1
+ const a123_0x3eb92d=a123_0x2572;function a123_0x51d7(){const _0x48085b=['11333XnxFLd','40KfEawC','\x5c.displayName\x5cs*=\x5cs*[\x22\x27]([^\x22\x27]+)[\x22\x27]','640lunxxX','3315411ZYnGVq','endsWith','cwd','isDirectory','trim','472838PfKlOY','push','replace','split','99410HBHGnW','src/pages','path','810565coBGin','2425530NCAxdL','9OTcdds','forEach','utf-8','index.tsx','616608ZJqcPd','match','filter','.tsx','replaceAll','join'];a123_0x51d7=function(){return _0x48085b;};return a123_0x51d7();}(function(_0x41d601,_0x3320ac){const _0x270f4a=a123_0x2572,_0x315b19=_0x41d601();while(!![]){try{const _0x18badb=-parseInt(_0x270f4a(0x162))/0x1+parseInt(_0x270f4a(0x166))/0x2*(-parseInt(_0x270f4a(0x16b))/0x3)+parseInt(_0x270f4a(0x16f))/0x4+-parseInt(_0x270f4a(0x169))/0x5+-parseInt(_0x270f4a(0x16a))/0x6+-parseInt(_0x270f4a(0x175))/0x7*(parseInt(_0x270f4a(0x178))/0x8)+parseInt(_0x270f4a(0x179))/0x9*(parseInt(_0x270f4a(0x176))/0xa);if(_0x18badb===_0x3320ac)break;else _0x315b19['push'](_0x315b19['shift']());}catch(_0xe25714){_0x315b19['push'](_0x315b19['shift']());}}}(a123_0x51d7,0x4ba43));import{readdirSync,statSync,readFileSync}from'fs';function a123_0x2572(_0x23f8a4,_0x264f87){_0x23f8a4=_0x23f8a4-0x162;const _0x51d782=a123_0x51d7();let _0x25723b=_0x51d782[_0x23f8a4];return _0x25723b;}import{join,relative,resolve,sep}from'path';const pagesDir=resolve(process[a123_0x3eb92d(0x17b)](),a123_0x3eb92d(0x167));export function extractTitleFromComment(_0x560365){const _0x1891d5=a123_0x3eb92d;try{const _0x1c24d3=readFileSync(_0x560365,_0x1891d5(0x16d)),_0x13d5dd=_0x1c24d3[_0x1891d5(0x170)](/^\s*\/\*\*?([\s\S]*?)\*\//);if(_0x13d5dd&&_0x13d5dd[0x1]){const _0x1c88cb=_0x13d5dd[0x1],_0x5b4822=_0x1c88cb['match'](/^\s*\*?\s*title\s*:\s*(.+)/im);if(_0x5b4822&&_0x5b4822[0x1])return _0x5b4822[0x1][_0x1891d5(0x17d)]();}let _0x129c71=null;const _0xe4e561=_0x1c24d3[_0x1891d5(0x170)](/export\s+default\s+([A-Z][a-zA-Z0-9]*)/);_0xe4e561&&_0xe4e561[0x1]&&(_0x129c71=_0xe4e561[0x1]);if(!_0x129c71){const _0x5ccc71=_0x1c24d3[_0x1891d5(0x170)](/export\s+default\s+function\s+([A-Z][a-zA-Z0-9]*)/);_0x5ccc71&&_0x5ccc71[0x1]&&(_0x129c71=_0x5ccc71[0x1]);}if(_0x129c71){const _0x51de67=new RegExp('\x5cb'+_0x129c71+_0x1891d5(0x177)),_0x534ef1=_0x1c24d3[_0x1891d5(0x170)](_0x51de67);if(_0x534ef1&&_0x534ef1[0x1])return _0x534ef1[0x1];return _0x129c71;}return null;}catch(_0x579a2b){return null;}}export function getLocalPages(_0x232eef=pagesDir,_0x587098=pagesDir){const _0x2ed850=a123_0x3eb92d;let _0x2a7153=[];const _0x2579ac=readdirSync(_0x232eef);return _0x2579ac[_0x2ed850(0x16c)](_0x1f3ece=>{const _0x15b185=_0x2ed850,_0xcf7c9c=join(_0x232eef,_0x1f3ece),_0x1dbea7=statSync(_0xcf7c9c);if(_0x1dbea7&&_0x1dbea7[_0x15b185(0x17c)]())_0x2a7153=_0x2a7153['concat'](getLocalPages(_0xcf7c9c,_0x587098));else{if(_0x1f3ece[_0x15b185(0x17a)](_0x15b185(0x172))){let _0x25d19e=relative(_0x587098,_0xcf7c9c);_0x25d19e[_0x15b185(0x17a)](_0x15b185(0x16e))?_0x25d19e=_0x25d19e[_0x15b185(0x164)](/index\.tsx$/,''):_0x25d19e=_0x25d19e[_0x15b185(0x164)](/\.tsx$/,'');_0x25d19e['endsWith'](sep)&&(_0x25d19e=_0x25d19e['slice'](0x0,-0x1));const _0x588d9d=_0x25d19e[_0x15b185(0x165)](sep)[_0x15b185(0x174)]('/'),_0x5bc40e=extractTitleFromComment(_0xcf7c9c),_0xab306f=_0x5bc40e||_0x588d9d;_0x2a7153[_0x15b185(0x163)]({'path':_0x588d9d[_0x15b185(0x173)]('$',':'),'label':_0xab306f});}}}),_0x2a7153[_0x2ed850(0x171)](_0x521112=>_0x521112[_0x2ed850(0x168)]!=='');}
@@ -1 +1 @@
1
- (function(_0x311e5f,_0x241c92){const _0x1be38a=a118_0x5f31,_0x21037e=_0x311e5f();while(!![]){try{const _0x44d45d=parseInt(_0x1be38a(0xda))/0x1*(-parseInt(_0x1be38a(0xcb))/0x2)+parseInt(_0x1be38a(0xd3))/0x3*(parseInt(_0x1be38a(0xcf))/0x4)+parseInt(_0x1be38a(0xdb))/0x5+-parseInt(_0x1be38a(0xcc))/0x6*(-parseInt(_0x1be38a(0xca))/0x7)+parseInt(_0x1be38a(0xdd))/0x8+parseInt(_0x1be38a(0xd1))/0x9*(-parseInt(_0x1be38a(0xd2))/0xa)+-parseInt(_0x1be38a(0xd8))/0xb;if(_0x44d45d===_0x241c92)break;else _0x21037e['push'](_0x21037e['shift']());}catch(_0x2f7aa6){_0x21037e['push'](_0x21037e['shift']());}}}(a118_0x5ef6,0x2e4ae));import{getLocalPages}from'../../../commands/menu/shared/local-pages.js';import{getOnlineMenuList,createMenus}from'../../../commands/menu/shared/service.js';import{isUrlReachable,isValidCssHttpsUrl,isValidJsHttpsUrl}from'../../../commands/menu/shared/valid-url.js';export function validateJsUrl(_0xcc7144){const _0x5aeeb7=a118_0x5f31,_0x2afee4=[];return!isValidJsHttpsUrl(_0xcc7144)&&_0x2afee4[_0x5aeeb7(0xd0)]('JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL'),{'ok':_0x2afee4[_0x5aeeb7(0xcd)]===0x0,'errors':_0x2afee4};}export function validateCssUrl(_0x41ed23){const _0x5caf44=a118_0x5f31,_0x18867f=[];return!isValidCssHttpsUrl(_0x41ed23)&&_0x18867f['push'](_0x5caf44(0xd9)),{'ok':_0x18867f[_0x5caf44(0xcd)]===0x0,'errors':_0x18867f};}export async function validateJsUrlReachable(_0x22d0ca){const _0x367aea=a118_0x5f31,_0x3dabde=validateJsUrl(_0x22d0ca);if(!_0x3dabde['ok'])return _0x3dabde;const _0x1c8476=await isUrlReachable(_0x22d0ca);if(!_0x1c8476)_0x3dabde[_0x367aea(0xd7)][_0x367aea(0xd0)](_0x367aea(0xd5));return{'ok':_0x3dabde[_0x367aea(0xd7)][_0x367aea(0xcd)]===0x0,'errors':_0x3dabde[_0x367aea(0xd7)]};}export async function validateCssUrlReachable(_0x525fe4){const _0x3c7845=a118_0x5f31,_0x298a46=validateCssUrl(_0x525fe4);if(!_0x298a46['ok'])return _0x298a46;const _0x340bfc=await isUrlReachable(_0x525fe4);if(!_0x340bfc)_0x298a46[_0x3c7845(0xd7)][_0x3c7845(0xd0)]('CSS\x20URL\x20is\x20unreachable');return{'ok':_0x298a46[_0x3c7845(0xd7)]['length']===0x0,'errors':_0x298a46[_0x3c7845(0xd7)]};}export function buildCompareRows(_0x31f039,_0x1efd09){const _0x3c7a5e=a118_0x5f31;return _0x31f039[_0x3c7a5e(0xc8)](_0x1a8cf9=>({'label':_0x1a8cf9['label'],'path':_0x1a8cf9[_0x3c7a5e(0xdc)],'local':!![],'online':_0x1efd09[_0x3c7a5e(0xce)](_0x1a8cf9['path'])}));}function a118_0x5f31(_0x265b73,_0x4b0f2e){_0x265b73=_0x265b73-0xc8;const _0x5ef69d=a118_0x5ef6();let _0x5f316c=_0x5ef69d[_0x265b73];return _0x5f316c;}function a118_0x5ef6(){const _0x9668c6=['4996LCcgGp','push','2274219MsyBZB','10wvNJsw','831PvOzWt','filter','JS\x20URL\x20is\x20unreachable','label','errors','2205390kOGEdi','CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','33635pDvekk','366545yFZFpp','path','1956480tcRJuB','map','resources','21rPLqnW','8RPLmjG','226986qysctx','length','has'];a118_0x5ef6=function(){return _0x9668c6;};return a118_0x5ef6();}export async function doCreateMenus(_0x2108f2,_0x3f4fd7,_0xf8a62f,_0x583b28){const _0x56ba7e=a118_0x5f31,_0x540544=await createMenus(_0x2108f2,_0x3f4fd7,_0xf8a62f,_0x583b28);return{'created':_0x540544[_0x56ba7e(0xcd)],'failed':0x0,'labels':_0xf8a62f[_0x56ba7e(0xc8)](_0x47e44f=>_0x47e44f[_0x56ba7e(0xd6)]),'menus':_0x540544};}export function filterMenusWithResources(_0x2fd7d5){const _0x17f86e=a118_0x5f31;return _0x2fd7d5[_0x17f86e(0xd4)](_0x57ef73=>_0x57ef73[_0x17f86e(0xc9)][_0x17f86e(0xcd)]>0x0);}export async function fetchMenuData(_0x1d7caf,_0x41eff5){const _0x559279=a118_0x5f31,_0x3beb90=getLocalPages(),_0x5d5ae4=await getOnlineMenuList(_0x1d7caf,_0x41eff5),_0x18c84f=new Set(_0x5d5ae4[_0x559279(0xc8)](_0x14847a=>_0x14847a[_0x559279(0xdc)]));return{'localPages':_0x3beb90,'onlineMenuList':_0x5d5ae4,'onlinePaths':_0x18c84f};}export async function fetchOnlineMenuList(_0x2c2a04,_0x486496){return getOnlineMenuList(_0x2c2a04,_0x486496);}
1
+ (function(_0x3d51ce,_0x451642){const _0x772a6e=a124_0x3221,_0x443796=_0x3d51ce();while(!![]){try{const _0x10ec4c=parseInt(_0x772a6e(0xa8))/0x1*(-parseInt(_0x772a6e(0xa2))/0x2)+parseInt(_0x772a6e(0xb5))/0x3*(parseInt(_0x772a6e(0xaf))/0x4)+-parseInt(_0x772a6e(0xa3))/0x5+-parseInt(_0x772a6e(0xad))/0x6+-parseInt(_0x772a6e(0xa4))/0x7*(parseInt(_0x772a6e(0xb3))/0x8)+-parseInt(_0x772a6e(0xa0))/0x9+-parseInt(_0x772a6e(0xa5))/0xa*(-parseInt(_0x772a6e(0xa6))/0xb);if(_0x10ec4c===_0x451642)break;else _0x443796['push'](_0x443796['shift']());}catch(_0x32713d){_0x443796['push'](_0x443796['shift']());}}}(a124_0x527e,0xbbbe1));import{getLocalPages}from'../../../commands/menu/shared/local-pages.js';import{getOnlineMenuList,createMenus}from'../../../commands/menu/shared/service.js';import{isUrlReachable,isValidCssHttpsUrl,isValidJsHttpsUrl}from'../../../commands/menu/shared/valid-url.js';export function validateJsUrl(_0x4edc1d){const _0x446687=a124_0x3221,_0x34efbb=[];return!isValidJsHttpsUrl(_0x4edc1d)&&_0x34efbb[_0x446687(0xab)](_0x446687(0xb0)),{'ok':_0x34efbb[_0x446687(0xb2)]===0x0,'errors':_0x34efbb};}export function validateCssUrl(_0x105226){const _0x1ce27d=a124_0x3221,_0x5873e9=[];return!isValidCssHttpsUrl(_0x105226)&&_0x5873e9['push'](_0x1ce27d(0xae)),{'ok':_0x5873e9[_0x1ce27d(0xb2)]===0x0,'errors':_0x5873e9};}export async function validateJsUrlReachable(_0x3cfd3e){const _0x25a2e5=a124_0x3221,_0x57d7ee=validateJsUrl(_0x3cfd3e);if(!_0x57d7ee['ok'])return _0x57d7ee;const _0x2d710a=await isUrlReachable(_0x3cfd3e);if(!_0x2d710a)_0x57d7ee[_0x25a2e5(0xa9)]['push'](_0x25a2e5(0x9f));return{'ok':_0x57d7ee[_0x25a2e5(0xa9)][_0x25a2e5(0xb2)]===0x0,'errors':_0x57d7ee[_0x25a2e5(0xa9)]};}export async function validateCssUrlReachable(_0x1ec581){const _0x2bb707=a124_0x3221,_0x296b07=validateCssUrl(_0x1ec581);if(!_0x296b07['ok'])return _0x296b07;const _0xa9092c=await isUrlReachable(_0x1ec581);if(!_0xa9092c)_0x296b07[_0x2bb707(0xa9)][_0x2bb707(0xab)](_0x2bb707(0xa7));return{'ok':_0x296b07[_0x2bb707(0xa9)]['length']===0x0,'errors':_0x296b07[_0x2bb707(0xa9)]};}export function buildCompareRows(_0x1469bd,_0x2df93e){const _0x2506fe=a124_0x3221;return _0x1469bd[_0x2506fe(0xac)](_0x40025c=>({'label':_0x40025c[_0x2506fe(0xb4)],'path':_0x40025c['path'],'local':!![],'online':_0x2df93e[_0x2506fe(0xaa)](_0x40025c[_0x2506fe(0x9e)])}));}export async function doCreateMenus(_0x21cf83,_0x3804cb,_0x3c467a,_0x3e5c15){const _0x2a3a1b=a124_0x3221,_0x46569e=await createMenus(_0x21cf83,_0x3804cb,_0x3c467a,_0x3e5c15);return{'created':_0x46569e[_0x2a3a1b(0xb2)],'failed':0x0,'labels':_0x3c467a[_0x2a3a1b(0xac)](_0xdce2bd=>_0xdce2bd[_0x2a3a1b(0xb4)]),'menus':_0x46569e};}export function filterMenusWithResources(_0x1d8b8c){const _0x2c2df8=a124_0x3221;return _0x1d8b8c[_0x2c2df8(0xa1)](_0x1499eb=>_0x1499eb[_0x2c2df8(0xb1)][_0x2c2df8(0xb2)]>0x0);}export async function fetchMenuData(_0x1c5743,_0x5f45b1){const _0x318fc9=a124_0x3221,_0x57b1ae=getLocalPages(),_0x220e67=await getOnlineMenuList(_0x1c5743,_0x5f45b1),_0xce988a=new Set(_0x220e67[_0x318fc9(0xac)](_0x4fa7a5=>_0x4fa7a5[_0x318fc9(0x9e)]));return{'localPages':_0x57b1ae,'onlineMenuList':_0x220e67,'onlinePaths':_0xce988a};}export async function fetchOnlineMenuList(_0x5aeb9a,_0x16d9f6){return getOnlineMenuList(_0x5aeb9a,_0x16d9f6);}function a124_0x3221(_0x4ffe7c,_0x6b3fc3){_0x4ffe7c=_0x4ffe7c-0x9e;const _0x527e2f=a124_0x527e();let _0x3221b1=_0x527e2f[_0x4ffe7c];return _0x3221b1;}function a124_0x527e(){const _0x27681e=['length','16IWngYt','label','14475VIfhHw','path','JS\x20URL\x20is\x20unreachable','7920468EwfDmx','filter','53906KSJFXe','7056975YhvUOv','719019xeAtQS','50BDGJKq','9625561ozwesF','CSS\x20URL\x20is\x20unreachable','29bJfCRv','errors','has','push','map','3298164lrCnFn','CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','184JmSllK','JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','resources'];a124_0x527e=function(){return _0x27681e;};return a124_0x527e();}
@@ -1 +1 @@
1
- const a119_0x34087a=a119_0x24aa;(function(_0x35d1f3,_0x41fb01){const _0x4a3982=a119_0x24aa,_0x1161b8=_0x35d1f3();while(!![]){try{const _0x19c6a6=parseInt(_0x4a3982(0x136))/0x1*(parseInt(_0x4a3982(0x148))/0x2)+parseInt(_0x4a3982(0x149))/0x3+-parseInt(_0x4a3982(0x157))/0x4+parseInt(_0x4a3982(0x16d))/0x5+-parseInt(_0x4a3982(0x15b))/0x6+-parseInt(_0x4a3982(0x16b))/0x7+parseInt(_0x4a3982(0x13b))/0x8;if(_0x19c6a6===_0x41fb01)break;else _0x1161b8['push'](_0x1161b8['shift']());}catch(_0x15a551){_0x1161b8['push'](_0x1161b8['shift']());}}}(a119_0x560c,0xad485));import{CliError,CliErrors}from'../../../errors.js';import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';export const MAX_MENU_SORT=0x7fffffff;export const MENU_ID_FLAG={'name':'id','type':a119_0x34087a(0x170),'required':!![],'description':a119_0x34087a(0x145)};export const MENU_SORT_FLAG={'name':'sort','type':a119_0x34087a(0x170),'description':'Sibling\x20sort\x20value\x20(non-negative\x20integer)'};export const MENU_PARENT_ID_FLAG={'name':a119_0x34087a(0x13d),'type':a119_0x34087a(0x12f),'description':a119_0x34087a(0x114)};export const MENU_EXPECT_PARENT_ID_FLAG={'name':a119_0x34087a(0x174),'type':a119_0x34087a(0x12f),'description':a119_0x34087a(0x15a)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a119_0x34087a(0x14e),'type':a119_0x34087a(0x12f),'description':a119_0x34087a(0x160)},{'name':a119_0x34087a(0x118),'type':a119_0x34087a(0x170),'description':a119_0x34087a(0x11c)}];export function validateExactId(_0x1764bf){const _0x58e594=a119_0x34087a,_0x20161d=_0x1764bf[_0x58e594(0x131)]('id');if(!Number['isSafeInteger'](_0x20161d)||_0x20161d<=0x0)throw CliErrors[_0x58e594(0x128)](_0x58e594(0x172));return _0x20161d;}export function validateSort(_0x59838f,_0x4999a4=a119_0x34087a(0x117)){const _0x506fde=a119_0x34087a;if(!hasFlag(_0x59838f,_0x4999a4))return undefined;const _0x3f09ed=_0x59838f[_0x506fde(0x131)](_0x4999a4);if(!Number[_0x506fde(0x12b)](_0x3f09ed)||_0x3f09ed<0x0||_0x3f09ed>MAX_MENU_SORT)throw menuError(_0x506fde(0x121),'--'+_0x4999a4+_0x506fde(0x171)+MAX_MENU_SORT+'.',_0x506fde(0x11f));return _0x3f09ed;}export function nextSiblingSort(_0x1025e7,_0x1db274,_0x518a8b){const _0x19fd37=a119_0x34087a,_0x22ffe0=getChildren(_0x1025e7,_0x1db274)[_0x19fd37(0x126)](_0x591e8=>_0x591e8[_0x19fd37(0x117)])[_0x19fd37(0x120)](_0x10f8be=>typeof _0x10f8be===_0x19fd37(0x170));if(_0x22ffe0['length']===0x0)return 0x0;const _0x254753=Math[_0x19fd37(0x177)](..._0x22ffe0);if(_0x254753>=MAX_MENU_SORT)throw menuError(_0x19fd37(0x11a),_0x19fd37(0x169)+_0x518a8b+'\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20'+_0x254753+'.','Reorder\x20sibling\x20menus\x20below\x20'+MAX_MENU_SORT+_0x19fd37(0x125));return _0x254753+0x1;}function a119_0x24aa(_0xe01bfd,_0x15d8d9){_0xe01bfd=_0xe01bfd-0x112;const _0x560c05=a119_0x560c();let _0x24aad1=_0x560c05[_0xe01bfd];return _0x24aad1;}export function requireExplicitYes(_0x2c0021){const _0x2f9dc1=a119_0x34087a;if(_0x2c0021[_0x2f9dc1(0x14a)](_0x2f9dc1(0x16e)))return;if(!_0x2c0021[_0x2f9dc1(0x14a)](_0x2f9dc1(0x138)))throw menuError(_0x2f9dc1(0x140),_0x2f9dc1(0x155),_0x2f9dc1(0x141));}export async function fetchMutationSnapshot(_0x2f82be,_0x2dac7e,_0x17c90b){const _0xc1c81e=a119_0x34087a;try{return await fetchMenuSnapshot(_0x2f82be['appCode'],_0x2f82be[_0xc1c81e(0x122)]);}catch(_0x10e6ef){throw mapMenuApiError(_0x10e6ef,_0xc1c81e(0x166)+_0x2dac7e,_0x17c90b);}}export async function recheckMutationSnapshot(_0x4991ad,_0x318af4,_0x199d77,_0x170022){const _0x1a9407=a119_0x34087a;let _0x1a1d8d;try{_0x1a1d8d=await fetchMenuSnapshot(_0x4991ad[_0x1a9407(0x178)],_0x4991ad[_0x1a9407(0x122)]);}catch(_0x506b4d){const _0x52ce31=mapMenuApiError(_0x506b4d,_0x1a9407(0x139)+_0x199d77,_0x170022);throw menuFailure(_0x52ce31,_0x318af4,{'stage':'pre-write-recheck','failed':_0x170022==null?{}:{'id':_0x170022}});}if(_0x1a1d8d['hash']!==_0x318af4[_0x1a9407(0x168)]){const _0x10353b=menuError('menu_state_drift',_0x1a9407(0x152)+_0x199d77+_0x1a9407(0x147),'Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.');throw menuFailure(_0x10353b,_0x318af4,{'stage':_0x1a9407(0x133),'failed':{..._0x170022==null?{}:{'id':_0x170022},'expectedSnapshotHash':_0x318af4[_0x1a9407(0x168)],'currentSnapshotHash':_0x1a1d8d['hash']}});}return _0x1a1d8d;}export function parseParentId(_0x1fadd4,_0x4900c2,_0x5dc223={}){const _0x5c8ca9=a119_0x34087a;if(!hasFlag(_0x1fadd4,_0x4900c2)){if(_0x5dc223[_0x5c8ca9(0x142)])throw CliErrors[_0x5c8ca9(0x115)](_0x4900c2);return undefined;}const _0x1d6a58=_0x1fadd4[_0x5c8ca9(0x179)](_0x4900c2)[_0x5c8ca9(0x119)]();if(_0x1d6a58[_0x5c8ca9(0x167)]()===_0x5c8ca9(0x123))return null;if(!/^\d+$/[_0x5c8ca9(0x164)](_0x1d6a58))throw CliErrors['validation']('--'+_0x4900c2+_0x5c8ca9(0x144));const _0x52654f=Number(_0x1d6a58);if(!Number[_0x5c8ca9(0x12b)](_0x52654f)||_0x52654f<=0x0)throw CliErrors[_0x5c8ca9(0x128)]('--'+_0x4900c2+_0x5c8ca9(0x144));return _0x52654f;}export function requireMenu(_0xacf6c0,_0x109daa){const _0x2c3f7b=a119_0x34087a,_0x41c4bb=_0xacf6c0[_0x2c3f7b(0x151)][_0x2c3f7b(0x161)](_0x109daa);if(!_0x41c4bb)throw menuError(_0x2c3f7b(0x124),_0x2c3f7b(0x15f)+_0x109daa,_0x2c3f7b(0x173));return _0x41c4bb;}export function requireFolder(_0x5f2ec5,_0x401d64){const _0x429d13=a119_0x34087a,_0x2f6679=requireMenu(_0x5f2ec5,_0x401d64);if(_0x2f6679[_0x429d13(0x113)]!==_0x429d13(0x154))throw menuError(_0x429d13(0x162),_0x429d13(0x153)+_0x401d64+_0x429d13(0x12d)+(_0x2f6679[_0x429d13(0x113)]||'unknown')+'\x22,\x20not\x20folder.',_0x429d13(0x16c));return _0x2f6679;}export function assertExpectedState(_0x171744,_0x243cee){const _0xd7656d=a119_0x34087a;if(hasFlag(_0x171744,'expect-parent-id')){const _0x6078f1=parseParentId(_0x171744,_0xd7656d(0x174),{'required':!![]});if(_0x243cee['parentId']!==_0x6078f1)throw stateDrift('Menu\x20'+_0x243cee['id']+'\x20parent\x20changed:\x20expected\x20'+formatParent(_0x6078f1)+_0xd7656d(0x143)+formatParent(_0x243cee['parentId'])+'.');}if(hasFlag(_0x171744,'expect-path')){const _0x3c8851=_0x171744[_0xd7656d(0x179)]('expect-path');if(_0x243cee[_0xd7656d(0x129)]!==_0x3c8851)throw stateDrift(_0xd7656d(0x153)+_0x243cee['id']+_0xd7656d(0x13e)+JSON['stringify'](_0x3c8851)+_0xd7656d(0x143)+JSON['stringify'](_0x243cee[_0xd7656d(0x129)])+'.');}if(hasFlag(_0x171744,_0xd7656d(0x118))){const _0x2cea1c=_0x171744[_0xd7656d(0x131)](_0xd7656d(0x118));if(!Number[_0xd7656d(0x12b)](_0x2cea1c)||_0x2cea1c<0x0)throw CliErrors[_0xd7656d(0x128)](_0xd7656d(0x130));if(_0x243cee['childrenCount']!==_0x2cea1c)throw stateDrift(_0xd7656d(0x153)+_0x243cee['id']+_0xd7656d(0x112)+_0x2cea1c+_0xd7656d(0x143)+_0x243cee[_0xd7656d(0x15c)]+'.');}}export function assertVerified(_0x464761,_0x57c7b9,_0x2be6c2='Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.'){if(!_0x464761)throw menuError('menu_verification_failed',_0x57c7b9,_0x2be6c2);}export function mutationResult(_0x5ce71e){const _0x374545=a119_0x34087a;return{'operation':_0x5ce71e[_0x374545(0x132)],'selector':_0x5ce71e[_0x374545(0x11d)],'before':_0x5ce71e[_0x374545(0x13f)],'after':_0x5ce71e['after'],'dryRun':_0x5ce71e['dryRun'],'backend':_0x5ce71e[_0x374545(0x16a)],..._0x5ce71e[_0x374545(0x163)]?{'plannedActions':_0x5ce71e[_0x374545(0x163)]}:{},..._0x5ce71e[_0x374545(0x134)]?{'targets':_0x5ce71e[_0x374545(0x134)]}:{},..._0x5ce71e[_0x374545(0x14d)]?{'deleteOrder':_0x5ce71e[_0x374545(0x14d)]}:{},'snapshotHash':_0x5ce71e[_0x374545(0x168)],..._0x5ce71e[_0x374545(0x156)]?{'cascade':_0x5ce71e['cascade']}:{},..._0x5ce71e[_0x374545(0x175)]?{'planFile':_0x5ce71e[_0x374545(0x175)]}:{},'succeeded':_0x5ce71e[_0x374545(0x176)]??[],'failed':_0x5ce71e[_0x374545(0x13c)]??[],'warnings':_0x5ce71e[_0x374545(0x150)]??[],'verification':_0x5ce71e[_0x374545(0x146)],'error':_0x5ce71e[_0x374545(0x135)]};}export function menuDryRunResult(_0x161ce6,_0x42d858){return{..._0x161ce6,..._0x42d858};}export function menuFailure(_0x3e3cd9,_0x1bcdbe,_0x507c56){const _0x3ca902=a119_0x34087a,_0xe56fdb=mutationResult({..._0x1bcdbe,'after':_0x507c56['after']===undefined?_0x1bcdbe['after']:_0x507c56[_0x3ca902(0x15e)],'backend':_0x507c56[_0x3ca902(0x16a)]??_0x1bcdbe[_0x3ca902(0x16a)],'dryRun':![],'succeeded':_0x507c56[_0x3ca902(0x176)]??[],'failed':[{..._0x507c56['failed']??{},'stage':_0x507c56['stage'],'code':_0x3e3cd9['code'],'message':_0x3e3cd9[_0x3ca902(0x14b)]}],'warnings':[..._0x1bcdbe[_0x3ca902(0x150)],..._0x507c56[_0x3ca902(0x150)]??[]],'verification':_0x507c56[_0x3ca902(0x146)],'error':{'code':_0x3e3cd9[_0x3ca902(0x127)],'message':_0x3e3cd9[_0x3ca902(0x14b)],..._0x3e3cd9[_0x3ca902(0x159)]?{'hint':_0x3e3cd9[_0x3ca902(0x159)]}:{}}});return Object[_0x3ca902(0x137)](_0x3e3cd9,_0x3ca902(0x12c),{'value':_0xe56fdb,'enumerable':!![],'configurable':!![]}),_0x3e3cd9;}function a119_0x560c(){const _0x59892e=['after','Online\x20menu\x20not\x20found:\x20','Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches','get','menu_parent_not_folder','plannedActions','test','api_error','read\x20online\x20menu\x20facts\x20before\x20','toLowerCase','snapshotHash','Cannot\x20append\x20a\x20','backend','9629410ydYmHn','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','504605YgPItT','dry-run','Permission\x20denied\x20while\x20attempting\x20to\x20','number','\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20','--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.','expect-parent-id','planFile','succeeded','max','appCode','str','\x20child\x20count\x20changed:\x20expected\x20','type','Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node','flagMissing','rawFlags','sort','expected-children-count','trim','menu_sort_overflow','hasOwnProperty','Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches','selector','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','filter','menu_sort_invalid','cookie','root','menu_not_found',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','map','code','validation','path','The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.','isSafeInteger','data','\x20is\x20type\x20\x22','menu_verification_failed','string','--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.','num','operation','pre-write-recheck','targets','error','646262DbUTUz','defineProperty','yes','recheck\x20online\x20menu\x20facts\x20before\x20','menu_permission_denied','10345360sOQolt','failed','parent-id','\x20path\x20changed:\x20expected\x20','before','menu_confirmation_required','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','required',',\x20current\x20','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','Exact\x20online\x20menu\x20id','verification',';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.','4lWpauf','1478382DXSKVd','bool','message','Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.','deleteOrder','expect-path','\x20menu\x20','warnings','byId','Online\x20menu\x20state\x20changed\x20before\x20','Menu\x20','folder','This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','cascade','1945268TWUciS','menu_mutation_failed','hint','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','3646182RiaPfv','childrenCount','prototype'];a119_0x560c=function(){return _0x59892e;};return a119_0x560c();}export function asVerificationError(_0x1c672e,_0x1e7bf1){const _0xc759b8=a119_0x34087a;if(_0x1c672e instanceof CliError&&_0x1c672e[_0xc759b8(0x127)]===_0xc759b8(0x12e))return _0x1c672e;const _0x23c498=_0x1c672e instanceof Error?_0x1c672e[_0xc759b8(0x14b)]:String(_0x1c672e);return menuError(_0xc759b8(0x12e),''+_0x1e7bf1+(_0x23c498?':\x20'+_0x23c498:''),_0xc759b8(0x12a));}export function describeMenuErrorCause(_0x4dc606,_0x38572f,_0x56b326){const _0x27a50b=a119_0x34087a,_0x68052e=mapMenuApiError(_0x4dc606,_0x38572f,_0x56b326);return{'causeCode':_0x68052e[_0x27a50b(0x127)],'causeMessage':_0x68052e[_0x27a50b(0x14b)]};}export function hasFlag(_0x4ba02a,_0x406dec){const _0x72a350=a119_0x34087a;return Object[_0x72a350(0x15d)][_0x72a350(0x11b)]['call'](_0x4ba02a[_0x72a350(0x116)],_0x406dec)&&_0x4ba02a[_0x72a350(0x116)][_0x406dec]!==undefined;}export function toApiParentId(_0x4dfe02){return _0x4dfe02??0x0;}export function formatParent(_0xb50186){const _0x4e6385=a119_0x34087a;return _0xb50186==null?_0x4e6385(0x123):String(_0xb50186);}export function menuError(_0x4dccae,_0x37998f,_0x29e65a){return new CliError(_0x4dccae,0x1,_0x37998f,_0x29e65a);}export function mapMenuApiError(_0x3bfb0a,_0x161d2f,_0x35b70f){const _0x4231c6=a119_0x34087a;if(_0x3bfb0a instanceof CliError&&_0x3bfb0a[_0x4231c6(0x127)]!=='api_error')return _0x3bfb0a;const _0x1f93b5=_0x3bfb0a instanceof Error?_0x3bfb0a[_0x4231c6(0x14b)]:String(_0x3bfb0a);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x4231c6(0x164)](_0x1f93b5))return menuError(_0x4231c6(0x13a),_0x4231c6(0x16f)+_0x161d2f+(_0x35b70f?_0x4231c6(0x14f)+_0x35b70f:'')+'.',_0x4231c6(0x11e));return menuError(_0x4231c6(0x158),'Failed\x20to\x20'+_0x161d2f+(_0x35b70f?_0x4231c6(0x14f)+_0x35b70f:'')+':\x20'+_0x1f93b5,_0x4231c6(0x14c));}export function isMenuResponseLoss(_0xa39705){const _0x4ee76d=a119_0x34087a,_0x2df891=_0xa39705 instanceof Error?_0xa39705[_0x4ee76d(0x14b)]:String(_0xa39705);if(_0xa39705 instanceof CliError)return _0xa39705['code']===_0x4ee76d(0x165)&&/^Request (?:failed|timeout):/i[_0x4ee76d(0x164)](_0x2df891);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i[_0x4ee76d(0x164)](_0x2df891);}function stateDrift(_0x4fe5b1){return menuError('menu_state_drift',_0x4fe5b1,'Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.');}
1
+ const a125_0x120514=a125_0xd3ff;(function(_0x4c2137,_0xd6584d){const _0x101553=a125_0xd3ff,_0x63b5da=_0x4c2137();while(!![]){try{const _0x319a4e=-parseInt(_0x101553(0x163))/0x1*(-parseInt(_0x101553(0x154))/0x2)+-parseInt(_0x101553(0x115))/0x3+-parseInt(_0x101553(0x135))/0x4*(-parseInt(_0x101553(0x120))/0x5)+parseInt(_0x101553(0x14d))/0x6*(parseInt(_0x101553(0x157))/0x7)+-parseInt(_0x101553(0x10d))/0x8*(parseInt(_0x101553(0x141))/0x9)+-parseInt(_0x101553(0x11e))/0xa*(parseInt(_0x101553(0x11f))/0xb)+-parseInt(_0x101553(0x177))/0xc*(-parseInt(_0x101553(0x156))/0xd);if(_0x319a4e===_0xd6584d)break;else _0x63b5da['push'](_0x63b5da['shift']());}catch(_0xf7879a){_0x63b5da['push'](_0x63b5da['shift']());}}}(a125_0x2032,0x940d3));import{CliError,CliErrors}from'../../../errors.js';function a125_0xd3ff(_0x159a99,_0x18ac00){_0x159a99=_0x159a99-0x10d;const _0x203288=a125_0x2032();let _0xd3ff7f=_0x203288[_0x159a99];return _0xd3ff7f;}import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';export const MAX_MENU_SORT=0x7fffffff;export const MENU_ID_FLAG={'name':'id','type':a125_0x120514(0x147),'required':!![],'description':a125_0x120514(0x119)};export const MENU_SORT_FLAG={'name':a125_0x120514(0x171),'type':a125_0x120514(0x147),'description':a125_0x120514(0x142)};export const MENU_PARENT_ID_FLAG={'name':a125_0x120514(0x167),'type':a125_0x120514(0x126),'description':a125_0x120514(0x16c)};function a125_0x2032(){const _0x280244=['call','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.','succeeded','menu_permission_denied','map','expect-parent-id','Reorder\x20sibling\x20menus\x20below\x20','1285188aJYsAM','api_error','defineProperty','expect-path','Exact\x20online\x20menu\x20id','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','message','menu_confirmation_required','menu_parent_not_folder','390JEkkPH','205161MFKRaW','5qnEhSa','warnings','error','code','selector','get','string','failed','pre-write-recheck','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','bool','--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.','rawFlags','\x20is\x20type\x20\x22','hash','snapshotHash','\x20menu\x20','after','type','Online\x20menu\x20state\x20changed\x20before\x20','unknown','2131964lLpWgi','menu_not_found','folder','stringify','num','trim','str','Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches','read\x20online\x20menu\x20facts\x20before\x20','test','validation','Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.','1273059TPTNjw','Sibling\x20sort\x20value\x20(non-negative\x20integer)','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','stage','byId','targets','number','recheck\x20online\x20menu\x20facts\x20before\x20','prototype','yes','path','cascade','6QrkTJe','Cannot\x20append\x20a\x20','plannedActions','--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.','\x22,\x20not\x20folder.','deleteOrder','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','708LiRVcF','dryRun','123019dJoACK','7329602vFHlNp','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','menu_state_drift','max','expected-children-count','The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.','operation','menu_verification_failed','hint',';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.','before','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.','1OLYmNr','data','Menu\x20','childrenCount','parent-id','\x20path\x20changed:\x20expected\x20','\x20child\x20count\x20changed:\x20expected\x20','verification','\x20parent\x20changed:\x20expected\x20','Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node','length',',\x20current\x20','\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20','appCode','sort','required','root','Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches','flagMissing','hasOwnProperty','948CAtyud','planFile','Permission\x20denied\x20while\x20attempting\x20to\x20','backend','isSafeInteger','Online\x20menu\x20not\x20found:\x20','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','32QccBnE'];a125_0x2032=function(){return _0x280244;};return a125_0x2032();}export const MENU_EXPECT_PARENT_ID_FLAG={'name':'expect-parent-id','type':a125_0x120514(0x126),'description':a125_0x120514(0x158)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a125_0x120514(0x118),'type':a125_0x120514(0x126),'description':a125_0x120514(0x174)},{'name':a125_0x120514(0x15b),'type':a125_0x120514(0x147),'description':a125_0x120514(0x13c)}];export function validateExactId(_0x222f78){const _0x163223=a125_0x120514,_0x1b3a09=_0x222f78[_0x163223(0x139)]('id');if(!Number[_0x163223(0x17b)](_0x1b3a09)||_0x1b3a09<=0x0)throw CliErrors[_0x163223(0x13f)](_0x163223(0x150));return _0x1b3a09;}export function validateSort(_0x2f15a3,_0xa14306=a125_0x120514(0x171)){const _0x137263=a125_0x120514;if(!hasFlag(_0x2f15a3,_0xa14306))return undefined;const _0x5b5363=_0x2f15a3[_0x137263(0x139)](_0xa14306);if(!Number[_0x137263(0x17b)](_0x5b5363)||_0x5b5363<0x0||_0x5b5363>MAX_MENU_SORT)throw menuError('menu_sort_invalid','--'+_0xa14306+'\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20'+MAX_MENU_SORT+'.','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.');return _0x5b5363;}export function nextSiblingSort(_0x1924ad,_0x52c167,_0x2272c8){const _0x7ae685=a125_0x120514,_0x469ba0=getChildren(_0x1924ad,_0x52c167)[_0x7ae685(0x112)](_0x517b14=>_0x517b14[_0x7ae685(0x171)])['filter'](_0x5f2107=>typeof _0x5f2107===_0x7ae685(0x147));if(_0x469ba0[_0x7ae685(0x16d)]===0x0)return 0x0;const _0x2d4d76=Math[_0x7ae685(0x15a)](..._0x469ba0);if(_0x2d4d76>=MAX_MENU_SORT)throw menuError('menu_sort_overflow',_0x7ae685(0x14e)+_0x2272c8+_0x7ae685(0x16f)+_0x2d4d76+'.',_0x7ae685(0x114)+MAX_MENU_SORT+',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.');return _0x2d4d76+0x1;}export function requireExplicitYes(_0xfab9a0){const _0x3f09cb=a125_0x120514;if(_0xfab9a0[_0x3f09cb(0x12a)]('dry-run'))return;if(!_0xfab9a0[_0x3f09cb(0x12a)](_0x3f09cb(0x14a)))throw menuError(_0x3f09cb(0x11c),'This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.',_0x3f09cb(0x143));}export async function fetchMutationSnapshot(_0x3162f2,_0x4eb4e3,_0x4a217e){const _0x530bf5=a125_0x120514;try{return await fetchMenuSnapshot(_0x3162f2[_0x530bf5(0x170)],_0x3162f2['cookie']);}catch(_0x45dfe7){throw mapMenuApiError(_0x45dfe7,_0x530bf5(0x13d)+_0x4eb4e3,_0x4a217e);}}export async function recheckMutationSnapshot(_0xcb1506,_0x95e5fb,_0x11b5d6,_0x653166){const _0xf69499=a125_0x120514;let _0x32f080;try{_0x32f080=await fetchMenuSnapshot(_0xcb1506[_0xf69499(0x170)],_0xcb1506['cookie']);}catch(_0x3786fa){const _0x42aea2=mapMenuApiError(_0x3786fa,_0xf69499(0x148)+_0x11b5d6,_0x653166);throw menuFailure(_0x42aea2,_0x95e5fb,{'stage':_0xf69499(0x128),'failed':_0x653166==null?{}:{'id':_0x653166}});}if(_0x32f080[_0xf69499(0x12e)]!==_0x95e5fb[_0xf69499(0x12f)]){const _0x3a73d9=menuError(_0xf69499(0x159),_0xf69499(0x133)+_0x11b5d6+_0xf69499(0x160),_0xf69499(0x162));throw menuFailure(_0x3a73d9,_0x95e5fb,{'stage':_0xf69499(0x128),'failed':{..._0x653166==null?{}:{'id':_0x653166},'expectedSnapshotHash':_0x95e5fb['snapshotHash'],'currentSnapshotHash':_0x32f080[_0xf69499(0x12e)]}});}return _0x32f080;}export function parseParentId(_0x8d292a,_0xf50856,_0x37fd3d={}){const _0x2c79af=a125_0x120514;if(!hasFlag(_0x8d292a,_0xf50856)){if(_0x37fd3d[_0x2c79af(0x172)])throw CliErrors[_0x2c79af(0x175)](_0xf50856);return undefined;}const _0xc86be1=_0x8d292a[_0x2c79af(0x13b)](_0xf50856)[_0x2c79af(0x13a)]();if(_0xc86be1['toLowerCase']()==='root')return null;if(!/^\d+$/[_0x2c79af(0x13e)](_0xc86be1))throw CliErrors['validation']('--'+_0xf50856+_0x2c79af(0x11a));const _0x13158b=Number(_0xc86be1);if(!Number[_0x2c79af(0x17b)](_0x13158b)||_0x13158b<=0x0)throw CliErrors['validation']('--'+_0xf50856+_0x2c79af(0x11a));return _0x13158b;}export function requireMenu(_0x4a60a3,_0x418ee8){const _0x2d6df1=a125_0x120514,_0x32ebdc=_0x4a60a3[_0x2d6df1(0x145)][_0x2d6df1(0x125)](_0x418ee8);if(!_0x32ebdc)throw menuError(_0x2d6df1(0x136),_0x2d6df1(0x17c)+_0x418ee8,_0x2d6df1(0x10f));return _0x32ebdc;}export function requireFolder(_0x2b8939,_0x4d6236){const _0x238541=a125_0x120514,_0x477662=requireMenu(_0x2b8939,_0x4d6236);if(_0x477662['type']!==_0x238541(0x137))throw menuError(_0x238541(0x11d),_0x238541(0x165)+_0x4d6236+_0x238541(0x12d)+(_0x477662[_0x238541(0x132)]||_0x238541(0x134))+_0x238541(0x151),_0x238541(0x129));return _0x477662;}export function assertExpectedState(_0x6b18,_0x518b19){const _0x168bc9=a125_0x120514;if(hasFlag(_0x6b18,_0x168bc9(0x113))){const _0x59065a=parseParentId(_0x6b18,'expect-parent-id',{'required':!![]});if(_0x518b19['parentId']!==_0x59065a)throw stateDrift(_0x168bc9(0x165)+_0x518b19['id']+_0x168bc9(0x16b)+formatParent(_0x59065a)+',\x20current\x20'+formatParent(_0x518b19['parentId'])+'.');}if(hasFlag(_0x6b18,_0x168bc9(0x118))){const _0x109d62=_0x6b18['str']('expect-path');if(_0x518b19['path']!==_0x109d62)throw stateDrift(_0x168bc9(0x165)+_0x518b19['id']+_0x168bc9(0x168)+JSON['stringify'](_0x109d62)+_0x168bc9(0x16e)+JSON[_0x168bc9(0x138)](_0x518b19[_0x168bc9(0x14b)])+'.');}if(hasFlag(_0x6b18,_0x168bc9(0x15b))){const _0x20095f=_0x6b18[_0x168bc9(0x139)]('expected-children-count');if(!Number[_0x168bc9(0x17b)](_0x20095f)||_0x20095f<0x0)throw CliErrors[_0x168bc9(0x13f)](_0x168bc9(0x12b));if(_0x518b19[_0x168bc9(0x166)]!==_0x20095f)throw stateDrift(_0x168bc9(0x165)+_0x518b19['id']+_0x168bc9(0x169)+_0x20095f+_0x168bc9(0x16e)+_0x518b19['childrenCount']+'.');}}export function assertVerified(_0x19a99c,_0x190d4e,_0x172698=a125_0x120514(0x153)){const _0x19a9d7=a125_0x120514;if(!_0x19a99c)throw menuError(_0x19a9d7(0x15e),_0x190d4e,_0x172698);}export function mutationResult(_0x43a183){const _0x4412b4=a125_0x120514;return{'operation':_0x43a183[_0x4412b4(0x15d)],'selector':_0x43a183[_0x4412b4(0x124)],'before':_0x43a183[_0x4412b4(0x161)],'after':_0x43a183['after'],'dryRun':_0x43a183[_0x4412b4(0x155)],'backend':_0x43a183['backend'],..._0x43a183[_0x4412b4(0x14f)]?{'plannedActions':_0x43a183[_0x4412b4(0x14f)]}:{},..._0x43a183[_0x4412b4(0x146)]?{'targets':_0x43a183[_0x4412b4(0x146)]}:{},..._0x43a183[_0x4412b4(0x152)]?{'deleteOrder':_0x43a183[_0x4412b4(0x152)]}:{},'snapshotHash':_0x43a183['snapshotHash'],..._0x43a183['cascade']?{'cascade':_0x43a183[_0x4412b4(0x14c)]}:{},..._0x43a183[_0x4412b4(0x178)]?{'planFile':_0x43a183[_0x4412b4(0x178)]}:{},'succeeded':_0x43a183['succeeded']??[],'failed':_0x43a183[_0x4412b4(0x127)]??[],'warnings':_0x43a183['warnings']??[],'verification':_0x43a183[_0x4412b4(0x16a)],'error':_0x43a183[_0x4412b4(0x122)]};}export function menuDryRunResult(_0x288cef,_0x3198f1){return{..._0x288cef,..._0x3198f1};}export function menuFailure(_0x361cc3,_0x2ffca0,_0x55fa91){const _0x3b4afd=a125_0x120514,_0x92ec4=mutationResult({..._0x2ffca0,'after':_0x55fa91[_0x3b4afd(0x131)]===undefined?_0x2ffca0['after']:_0x55fa91[_0x3b4afd(0x131)],'backend':_0x55fa91['backend']??_0x2ffca0[_0x3b4afd(0x17a)],'dryRun':![],'succeeded':_0x55fa91[_0x3b4afd(0x110)]??[],'failed':[{..._0x55fa91[_0x3b4afd(0x127)]??{},'stage':_0x55fa91[_0x3b4afd(0x144)],'code':_0x361cc3['code'],'message':_0x361cc3[_0x3b4afd(0x11b)]}],'warnings':[..._0x2ffca0[_0x3b4afd(0x121)],..._0x55fa91[_0x3b4afd(0x121)]??[]],'verification':_0x55fa91[_0x3b4afd(0x16a)],'error':{'code':_0x361cc3[_0x3b4afd(0x123)],'message':_0x361cc3['message'],..._0x361cc3[_0x3b4afd(0x15f)]?{'hint':_0x361cc3[_0x3b4afd(0x15f)]}:{}}});return Object[_0x3b4afd(0x117)](_0x361cc3,_0x3b4afd(0x164),{'value':_0x92ec4,'enumerable':!![],'configurable':!![]}),_0x361cc3;}export function asVerificationError(_0x2806fa,_0x5bc3b9){const _0x51aafe=a125_0x120514;if(_0x2806fa instanceof CliError&&_0x2806fa['code']===_0x51aafe(0x15e))return _0x2806fa;const _0x46c9fe=_0x2806fa instanceof Error?_0x2806fa[_0x51aafe(0x11b)]:String(_0x2806fa);return menuError(_0x51aafe(0x15e),''+_0x5bc3b9+(_0x46c9fe?':\x20'+_0x46c9fe:''),_0x51aafe(0x15c));}export function describeMenuErrorCause(_0x3e0840,_0x22a4aa,_0x4d05a7){const _0x4825af=a125_0x120514,_0x2ce94a=mapMenuApiError(_0x3e0840,_0x22a4aa,_0x4d05a7);return{'causeCode':_0x2ce94a[_0x4825af(0x123)],'causeMessage':_0x2ce94a[_0x4825af(0x11b)]};}export function hasFlag(_0x333416,_0x5e9850){const _0x2d6e80=a125_0x120514;return Object[_0x2d6e80(0x149)][_0x2d6e80(0x176)][_0x2d6e80(0x10e)](_0x333416[_0x2d6e80(0x12c)],_0x5e9850)&&_0x333416[_0x2d6e80(0x12c)][_0x5e9850]!==undefined;}export function toApiParentId(_0x3048fa){return _0x3048fa??0x0;}export function formatParent(_0x46dad0){const _0x2c4d2e=a125_0x120514;return _0x46dad0==null?_0x2c4d2e(0x173):String(_0x46dad0);}export function menuError(_0x11dbb2,_0x54fd9c,_0x738434){return new CliError(_0x11dbb2,0x1,_0x54fd9c,_0x738434);}export function mapMenuApiError(_0x5cb6e1,_0x5f597c,_0x4395c0){const _0xad2bfb=a125_0x120514;if(_0x5cb6e1 instanceof CliError&&_0x5cb6e1['code']!==_0xad2bfb(0x116))return _0x5cb6e1;const _0x10f35a=_0x5cb6e1 instanceof Error?_0x5cb6e1[_0xad2bfb(0x11b)]:String(_0x5cb6e1);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0xad2bfb(0x13e)](_0x10f35a))return menuError(_0xad2bfb(0x111),_0xad2bfb(0x179)+_0x5f597c+(_0x4395c0?_0xad2bfb(0x130)+_0x4395c0:'')+'.',_0xad2bfb(0x17d));return menuError('menu_mutation_failed','Failed\x20to\x20'+_0x5f597c+(_0x4395c0?_0xad2bfb(0x130)+_0x4395c0:'')+':\x20'+_0x10f35a,'Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.');}export function isMenuResponseLoss(_0x410fef){const _0x3c4c22=a125_0x120514,_0x4c150=_0x410fef instanceof Error?_0x410fef['message']:String(_0x410fef);if(_0x410fef instanceof CliError)return _0x410fef[_0x3c4c22(0x123)]===_0x3c4c22(0x116)&&/^Request (?:failed|timeout):/i[_0x3c4c22(0x13e)](_0x4c150);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i[_0x3c4c22(0x13e)](_0x4c150);}function stateDrift(_0x4e0488){const _0x1740bc=a125_0x120514;return menuError(_0x1740bc(0x159),_0x4e0488,_0x1740bc(0x140));}