@lovrabet/rabetbase-cli 2.5.4-beta.3 → 2.5.4-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (389) hide show
  1. package/README.md +8 -2
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/api-group.js +1 -1
  4. package/lib/api/fetch-model-list.js +1 -1
  5. package/lib/api/generate-api-file.js +1 -1
  6. package/lib/api/generate-sdk-config-file.js +1 -1
  7. package/lib/api/legacy-api-file.js +1 -1
  8. package/lib/api/model-registry-file.js +1 -1
  9. package/lib/api/model-registry-scaffold.js +1 -1
  10. package/lib/api/model-source.js +1 -1
  11. package/lib/auth/auth-server-ui.js +1 -1
  12. package/lib/auth/auth-server.js +1 -1
  13. package/lib/auth/constant.js +1 -1
  14. package/lib/auth/get-cookie.js +1 -1
  15. package/lib/auth/get-session-user.js +1 -1
  16. package/lib/auth/is-session-valid.js +1 -1
  17. package/lib/auth/login-success-html.js +1 -1
  18. package/lib/auth/logout.js +1 -1
  19. package/lib/cli-flags.js +1 -1
  20. package/lib/cli.js +1 -1
  21. package/lib/commands/api/generate.js +1 -1
  22. package/lib/commands/api/index.js +1 -1
  23. package/lib/commands/api/list.js +1 -1
  24. package/lib/commands/api/pull.js +1 -1
  25. package/lib/commands/api/shared.js +1 -1
  26. package/lib/commands/app/detail.d.ts +2 -0
  27. package/lib/commands/app/detail.js +1 -0
  28. package/lib/commands/app/index.js +1 -1
  29. package/lib/commands/app/list.js +1 -1
  30. package/lib/commands/app/members-list.js +1 -1
  31. package/lib/commands/app/remote-directory.js +1 -1
  32. package/lib/commands/app/shared.js +1 -1
  33. package/lib/commands/app-config/delete.js +1 -1
  34. package/lib/commands/app-config/get.js +1 -1
  35. package/lib/commands/app-config/index.js +1 -1
  36. package/lib/commands/app-config/list.js +1 -1
  37. package/lib/commands/app-config/set.js +1 -1
  38. package/lib/commands/app-config/shared.js +1 -1
  39. package/lib/commands/auth/index.js +1 -1
  40. package/lib/commands/bff/create.js +1 -1
  41. package/lib/commands/bff/delete.js +1 -1
  42. package/lib/commands/bff/detail.js +1 -1
  43. package/lib/commands/bff/index.js +1 -1
  44. package/lib/commands/bff/list.js +1 -1
  45. package/lib/commands/bff/logs.js +1 -1
  46. package/lib/commands/bff/pull.js +1 -1
  47. package/lib/commands/bff/push.js +1 -1
  48. package/lib/commands/bff/status.js +1 -1
  49. package/lib/commands/cli-skill/index.js +1 -1
  50. package/lib/commands/cli-update.js +1 -1
  51. package/lib/commands/codegen/index.js +1 -1
  52. package/lib/commands/codegen/sdk.js +1 -1
  53. package/lib/commands/codegen/sql.js +1 -1
  54. package/lib/commands/common/app-registry.js +1 -1
  55. package/lib/commands/common/app-selector.js +1 -1
  56. package/lib/commands/common/async-task.js +1 -1
  57. package/lib/commands/common/dry-run.js +1 -1
  58. package/lib/commands/common/flags.js +1 -1
  59. package/lib/commands/common/local-file.js +1 -1
  60. package/lib/commands/common/validate.js +1 -1
  61. package/lib/commands/config/delete.js +1 -1
  62. package/lib/commands/config/get.js +1 -1
  63. package/lib/commands/config/index.js +1 -1
  64. package/lib/commands/config/init.js +1 -1
  65. package/lib/commands/config/list.js +1 -1
  66. package/lib/commands/config/set.js +1 -1
  67. package/lib/commands/config/shared.js +1 -1
  68. package/lib/commands/dataset/batch-design.js +1 -1
  69. package/lib/commands/dataset/business-group-update.js +1 -1
  70. package/lib/commands/dataset/business-groups.js +1 -1
  71. package/lib/commands/dataset/capability.js +1 -1
  72. package/lib/commands/dataset/cross-relation-create.js +1 -1
  73. package/lib/commands/dataset/cross-relation-delete.js +1 -1
  74. package/lib/commands/dataset/cross-relation-list.js +1 -1
  75. package/lib/commands/dataset/cross-relation-shared.js +1 -1
  76. package/lib/commands/dataset/cross-relation-update.js +1 -1
  77. package/lib/commands/dataset/delete.js +1 -1
  78. package/lib/commands/dataset/detail.js +1 -1
  79. package/lib/commands/dataset/extend-update.js +1 -1
  80. package/lib/commands/dataset/field-restore.js +1 -1
  81. package/lib/commands/dataset/field-update.js +1 -1
  82. package/lib/commands/dataset/generate.js +1 -1
  83. package/lib/commands/dataset/index.js +1 -1
  84. package/lib/commands/dataset/list.js +1 -1
  85. package/lib/commands/dataset/operations.js +1 -1
  86. package/lib/commands/dataset/relation-audit.js +1 -1
  87. package/lib/commands/dataset/relation-create.js +1 -1
  88. package/lib/commands/dataset/relation-delete.js +1 -1
  89. package/lib/commands/dataset/relation-shared.js +1 -1
  90. package/lib/commands/dataset/relation-update.js +1 -1
  91. package/lib/commands/dataset/relations.js +1 -1
  92. package/lib/commands/dataset/rename.js +1 -1
  93. package/lib/commands/dataset/restore.js +1 -1
  94. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  95. package/lib/commands/db/analysis-batching.js +1 -1
  96. package/lib/commands/db/analyze-batch-plan.js +1 -1
  97. package/lib/commands/db/analyze-cancel.js +1 -1
  98. package/lib/commands/db/analyze-start.js +1 -1
  99. package/lib/commands/db/analyze-status.js +1 -1
  100. package/lib/commands/db/create.js +1 -1
  101. package/lib/commands/db/delete.js +1 -1
  102. package/lib/commands/db/detail.js +1 -1
  103. package/lib/commands/db/diff-refresh-start.js +1 -1
  104. package/lib/commands/db/diff-refresh-status.js +1 -1
  105. package/lib/commands/db/diff.js +1 -1
  106. package/lib/commands/db/index.js +1 -1
  107. package/lib/commands/db/list.js +1 -1
  108. package/lib/commands/db/shared.js +1 -1
  109. package/lib/commands/db/table-diff-shared.js +1 -1
  110. package/lib/commands/db/tables.js +1 -1
  111. package/lib/commands/db/test.js +1 -1
  112. package/lib/commands/db/update.js +1 -1
  113. package/lib/commands/deployment/index.js +1 -1
  114. package/lib/commands/deployment/sync-all.js +1 -1
  115. package/lib/commands/deployment/sync-jobs.js +1 -1
  116. package/lib/commands/deployment/sync-status.js +1 -1
  117. package/lib/commands/doctor.js +1 -1
  118. package/lib/commands/file/index.js +1 -1
  119. package/lib/commands/flow/create.js +1 -1
  120. package/lib/commands/flow/detail.js +1 -1
  121. package/lib/commands/flow/index.js +1 -1
  122. package/lib/commands/flow/list.js +1 -1
  123. package/lib/commands/flow/publish.js +1 -1
  124. package/lib/commands/flow/runtime-resources-shared.js +1 -1
  125. package/lib/commands/flow/runtime-role-list.js +1 -1
  126. package/lib/commands/flow/runtime-role-user-list.js +1 -1
  127. package/lib/commands/flow/runtime-user-search.js +1 -1
  128. package/lib/commands/flow/shared.js +1 -1
  129. package/lib/commands/flow/update.js +1 -1
  130. package/lib/commands/flow/validate.js +1 -1
  131. package/lib/commands/instant-api-policy/current.js +1 -1
  132. package/lib/commands/instant-api-policy/index.js +1 -1
  133. package/lib/commands/instant-api-policy/init.js +1 -1
  134. package/lib/commands/instant-api-policy/publish.js +1 -1
  135. package/lib/commands/instant-api-policy/pull.js +1 -1
  136. package/lib/commands/instant-api-policy/revision.js +1 -1
  137. package/lib/commands/instant-api-policy/revisions.js +1 -1
  138. package/lib/commands/instant-api-policy/rollback.js +1 -1
  139. package/lib/commands/instant-api-policy/shared.js +1 -1
  140. package/lib/commands/instant-api-policy/validate.js +1 -1
  141. package/lib/commands/issue/index.js +1 -1
  142. package/lib/commands/issue/nudge.js +1 -1
  143. package/lib/commands/issue/report.js +1 -1
  144. package/lib/commands/issue/shared.js +1 -1
  145. package/lib/commands/kb/create.js +1 -1
  146. package/lib/commands/kb/delete.js +1 -1
  147. package/lib/commands/kb/detail.js +1 -1
  148. package/lib/commands/kb/index.js +1 -1
  149. package/lib/commands/kb/list.js +1 -1
  150. package/lib/commands/kb/search.js +1 -1
  151. package/lib/commands/kb/shared.js +1 -1
  152. package/lib/commands/kb/update.js +1 -1
  153. package/lib/commands/logs/index.js +1 -1
  154. package/lib/commands/menu/asset-update.js +1 -1
  155. package/lib/commands/menu/delete.js +1 -1
  156. package/lib/commands/menu/external-link-create.js +1 -1
  157. package/lib/commands/menu/external-link-update.js +1 -1
  158. package/lib/commands/menu/group-create.js +1 -1
  159. package/lib/commands/menu/group-update.js +1 -1
  160. package/lib/commands/menu/index.js +1 -1
  161. package/lib/commands/menu/list.js +1 -1
  162. package/lib/commands/menu/move.js +1 -1
  163. package/lib/commands/menu/regroup-start.js +1 -1
  164. package/lib/commands/menu/rename.js +1 -1
  165. package/lib/commands/menu/shared/compare-table.js +1 -1
  166. package/lib/commands/menu/shared/delete-plan.js +1 -1
  167. package/lib/commands/menu/shared/facts.js +1 -1
  168. package/lib/commands/menu/shared/index.js +1 -1
  169. package/lib/commands/menu/shared/inquirer.js +1 -1
  170. package/lib/commands/menu/shared/local-pages.d.ts +1 -1
  171. package/lib/commands/menu/shared/local-pages.js +1 -1
  172. package/lib/commands/menu/shared/logic.d.ts +3 -1
  173. package/lib/commands/menu/shared/logic.js +1 -1
  174. package/lib/commands/menu/shared/mutations.js +1 -1
  175. package/lib/commands/menu/shared/path.d.ts +2 -0
  176. package/lib/commands/menu/shared/path.js +1 -0
  177. package/lib/commands/menu/shared/service.d.ts +6 -1
  178. package/lib/commands/menu/shared/service.js +1 -1
  179. package/lib/commands/menu/shared/subapp-assets.d.ts +28 -0
  180. package/lib/commands/menu/shared/subapp-assets.js +1 -0
  181. package/lib/commands/menu/shared/sync-core.d.ts +2 -1
  182. package/lib/commands/menu/shared/sync-core.js +1 -1
  183. package/lib/commands/menu/shared/types.d.ts +14 -4
  184. package/lib/commands/menu/shared/update-core.js +1 -1
  185. package/lib/commands/menu/shared/valid-url.js +1 -1
  186. package/lib/commands/menu/subapp-assets-status.d.ts +2 -0
  187. package/lib/commands/menu/subapp-assets-status.js +1 -0
  188. package/lib/commands/menu/subapp-assets-update.d.ts +2 -0
  189. package/lib/commands/menu/subapp-assets-update.js +1 -0
  190. package/lib/commands/menu/sync.js +1 -1
  191. package/lib/commands/menu/visibility-update.js +1 -1
  192. package/lib/commands/notification/config-create.js +1 -1
  193. package/lib/commands/notification/config-delete.js +1 -1
  194. package/lib/commands/notification/config-list.js +1 -1
  195. package/lib/commands/notification/config-update.js +1 -1
  196. package/lib/commands/notification/index.js +1 -1
  197. package/lib/commands/notification/shared.js +1 -1
  198. package/lib/commands/ocr/index.js +1 -1
  199. package/lib/commands/page/create.js +1 -1
  200. package/lib/commands/page/custom/detail.js +1 -1
  201. package/lib/commands/page/custom/list.js +1 -1
  202. package/lib/commands/page/custom/publish.js +1 -1
  203. package/lib/commands/page/custom/shared.js +1 -1
  204. package/lib/commands/page/custom/syntax.js +1 -1
  205. package/lib/commands/page/custom/update.js +1 -1
  206. package/lib/commands/page/data-list-status.js +1 -1
  207. package/lib/commands/page/generate-start.js +1 -1
  208. package/lib/commands/page/generate-status.js +1 -1
  209. package/lib/commands/page/index.js +1 -1
  210. package/lib/commands/page/pull.js +1 -1
  211. package/lib/commands/page/push.js +1 -1
  212. package/lib/commands/page/relation-audit.js +1 -1
  213. package/lib/commands/page/restore.js +1 -1
  214. package/lib/commands/page/shared.js +1 -1
  215. package/lib/commands/page/sync.js +1 -1
  216. package/lib/commands/project/api-architecture-upgrade.js +1 -1
  217. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  218. package/lib/commands/project/create/format-elapsed.js +1 -1
  219. package/lib/commands/project/create/main.js +1 -1
  220. package/lib/commands/project/create/materialize-project-template.js +1 -1
  221. package/lib/commands/project/create/project-name.js +1 -1
  222. package/lib/commands/project/create/project-template-archive.js +1 -1
  223. package/lib/commands/project/create/project-template-path.js +1 -1
  224. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  225. package/lib/commands/project/create/use-format-code.js +1 -1
  226. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  227. package/lib/commands/project/domain-routing-sync.js +1 -1
  228. package/lib/commands/project/index.js +1 -1
  229. package/lib/commands/project/upgrade.js +1 -1
  230. package/lib/commands/registry.js +1 -1
  231. package/lib/commands/role/delete.js +1 -1
  232. package/lib/commands/role/detail.js +1 -1
  233. package/lib/commands/role/index.js +1 -1
  234. package/lib/commands/role/list.js +1 -1
  235. package/lib/commands/role/shared.js +1 -1
  236. package/lib/commands/role/update.js +1 -1
  237. package/lib/commands/role/user-add.js +1 -1
  238. package/lib/commands/role/user-remove.js +1 -1
  239. package/lib/commands/role/user-resolve.js +1 -1
  240. package/lib/commands/rule/get.js +1 -1
  241. package/lib/commands/rule/index.js +1 -1
  242. package/lib/commands/rule/list.js +1 -1
  243. package/lib/commands/rule/set.js +1 -1
  244. package/lib/commands/rule/shared.js +1 -1
  245. package/lib/commands/run/index.js +1 -1
  246. package/lib/commands/schema.js +1 -1
  247. package/lib/commands/sql/create.js +1 -1
  248. package/lib/commands/sql/delete.js +1 -1
  249. package/lib/commands/sql/detail.js +1 -1
  250. package/lib/commands/sql/exec.js +1 -1
  251. package/lib/commands/sql/index.js +1 -1
  252. package/lib/commands/sql/list.js +1 -1
  253. package/lib/commands/sql/pull.js +1 -1
  254. package/lib/commands/sql/push.js +1 -1
  255. package/lib/commands/sql/shared.js +1 -1
  256. package/lib/commands/sql/status.js +1 -1
  257. package/lib/commands/sql/validate.js +1 -1
  258. package/lib/commands/task/index.js +1 -1
  259. package/lib/commands/task/status.js +1 -1
  260. package/lib/commands/tenant/index.js +1 -1
  261. package/lib/commands/tenant/members-list.js +1 -1
  262. package/lib/commands/tenant/shared.js +1 -1
  263. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  264. package/lib/commands/user-account/feishu-bind.js +1 -1
  265. package/lib/commands/user-account/index.js +1 -1
  266. package/lib/commands/workspace/add.js +1 -1
  267. package/lib/commands/workspace/index.js +1 -1
  268. package/lib/commands/workspace/remove.js +1 -1
  269. package/lib/config/domain-config.js +1 -1
  270. package/lib/config/project-domain-routing.js +1 -1
  271. package/lib/config/region-config.js +1 -1
  272. package/lib/config/schema.js +1 -1
  273. package/lib/constant/cdn.js +1 -1
  274. package/lib/constant/cli.js +1 -1
  275. package/lib/constant/defaults.js +1 -1
  276. package/lib/constant/domain.js +1 -1
  277. package/lib/constant/env.js +1 -1
  278. package/lib/constant/output.js +1 -1
  279. package/lib/constant/paths.js +1 -1
  280. package/lib/constant/region.js +1 -1
  281. package/lib/constant/risk.js +1 -1
  282. package/lib/constant/routing-profile.js +1 -1
  283. package/lib/context/app-resolver.js +1 -1
  284. package/lib/context/auth-resolver.js +1 -1
  285. package/lib/context/config-loader.js +1 -1
  286. package/lib/context.js +1 -1
  287. package/lib/core/alias-resolver.js +1 -1
  288. package/lib/core/api-client.d.ts +16 -1
  289. package/lib/core/api-client.js +1 -1
  290. package/lib/core/bff/config.js +1 -1
  291. package/lib/core/bff/file-system.js +1 -1
  292. package/lib/core/bff/hash.js +1 -1
  293. package/lib/core/bff/hook-directory.js +1 -1
  294. package/lib/core/bff/lock.js +1 -1
  295. package/lib/core/bff/utils.js +1 -1
  296. package/lib/core/cross-db-relation.js +1 -1
  297. package/lib/core/db-resolver.js +1 -1
  298. package/lib/core/flow-config.js +1 -1
  299. package/lib/core/instant-api-policy/config.js +1 -1
  300. package/lib/core/kb-search-client.js +1 -1
  301. package/lib/core/page/file-system.js +1 -1
  302. package/lib/core/page/hash.js +1 -1
  303. package/lib/core/page/lock.js +1 -1
  304. package/lib/core/page/lr-smart-jsx.js +1 -1
  305. package/lib/core/sql-index-auditor.js +1 -1
  306. package/lib/core/sql-sync/config.js +1 -1
  307. package/lib/core/sql-sync/file-system.js +1 -1
  308. package/lib/core/sql-sync/hash.js +1 -1
  309. package/lib/core/sql-sync/lock.js +1 -1
  310. package/lib/core/sql-sync/utils.js +1 -1
  311. package/lib/core/sql-validator.js +1 -1
  312. package/lib/errors.js +1 -1
  313. package/lib/framework/build-all-flags.js +1 -1
  314. package/lib/framework/error-output.js +1 -1
  315. package/lib/framework/explicit-yes.js +1 -1
  316. package/lib/framework/flags.js +1 -1
  317. package/lib/framework/help.js +1 -1
  318. package/lib/framework/index.js +1 -1
  319. package/lib/framework/output.js +1 -1
  320. package/lib/framework/response.js +1 -1
  321. package/lib/framework/runner-alias.js +1 -1
  322. package/lib/framework/runner.js +1 -1
  323. package/lib/framework/schema-export.js +1 -1
  324. package/lib/framework/supported-flags.js +1 -1
  325. package/lib/framework/types.js +1 -1
  326. package/lib/generated/build-info.d.ts +4 -4
  327. package/lib/generated/build-info.js +1 -1
  328. package/lib/generated/official-routing.js +1 -1
  329. package/lib/generated/routing-contract.js +1 -1
  330. package/lib/help.js +1 -1
  331. package/lib/postinstall.js +1 -1
  332. package/lib/runtime/confirmation.js +1 -1
  333. package/lib/runtime/event.js +1 -1
  334. package/lib/runtime/index.js +1 -1
  335. package/lib/runtime/queue.js +1 -1
  336. package/lib/runtime/resolve.js +1 -1
  337. package/lib/skills/builtin-skill.js +1 -1
  338. package/lib/skills/main.js +1 -1
  339. package/lib/skills/npx-skills-add.js +1 -1
  340. package/lib/skills/skill-presence.js +1 -1
  341. package/lib/telemetry/cli-command-trace.js +1 -1
  342. package/lib/telemetry/cli-help-trace.js +1 -1
  343. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  344. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  345. package/lib/telemetry/send-cli-trace-log.js +1 -1
  346. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  347. package/lib/utils/ai_config.js +1 -1
  348. package/lib/utils/apply-jq-filter.js +1 -1
  349. package/lib/utils/cdn-config.js +1 -1
  350. package/lib/utils/check-sdk-version.js +1 -1
  351. package/lib/utils/cli-version-check.js +1 -1
  352. package/lib/utils/cli-version-policy.js +1 -1
  353. package/lib/utils/config.js +1 -1
  354. package/lib/utils/entity-with-id.js +1 -1
  355. package/lib/utils/file-utils.js +1 -1
  356. package/lib/utils/guides-cdn.js +1 -1
  357. package/lib/utils/http-client.js +1 -1
  358. package/lib/utils/is-non-interactive.js +1 -1
  359. package/lib/utils/logger.js +1 -1
  360. package/lib/utils/params.js +1 -1
  361. package/lib/utils/platform.js +1 -1
  362. package/lib/utils/sleep.js +1 -1
  363. package/lib/utils/template-replacer.js +1 -1
  364. package/lib/utils/update-notice.js +1 -1
  365. package/lib/utils/version.js +1 -1
  366. package/lib/utils/with-active-cookie.js +1 -1
  367. package/lib/utils/write-cli-side-channel.js +1 -1
  368. package/package.json +1 -1
  369. package/skills/rabetbase/SKILL.md +22 -13
  370. package/skills/rabetbase/guides/backend-function.md +2 -7
  371. package/skills/rabetbase/guides/bff-creation-workflow.md +24 -23
  372. package/skills/rabetbase/guides/host-frontend-integration.md +62 -0
  373. package/skills/rabetbase/guides/independent-deployment.md +45 -0
  374. package/skills/rabetbase/guides/troubleshooting.md +9 -1
  375. package/skills/rabetbase/references/rabetbase-app-detail.md +31 -0
  376. package/skills/rabetbase/references/rabetbase-bff-detail.md +1 -1
  377. package/skills/rabetbase/references/rabetbase-bff-push.md +2 -2
  378. package/skills/rabetbase/references/rabetbase-data-list-status.md +1 -0
  379. package/skills/rabetbase/references/rabetbase-deployment-sync-all.md +5 -1
  380. package/skills/rabetbase/references/rabetbase-menu-asset-update.md +9 -7
  381. package/skills/rabetbase/references/rabetbase-menu-list.md +2 -2
  382. package/skills/rabetbase/references/rabetbase-menu-subapp-assets-status.md +19 -0
  383. package/skills/rabetbase/references/rabetbase-menu-subapp-assets-update.md +27 -0
  384. package/skills/rabetbase/references/rabetbase-menu-sync.md +40 -14
  385. package/skills/rabetbase/references/rabetbase-page-create.md +1 -1
  386. package/skills/rabetbase/references/rabetbase-page-generate-start.md +5 -3
  387. package/skills/rabetbase/references/rabetbase-page-generate-status.md +1 -0
  388. package/skills/rabetbase/references/rabetbase-user-account.md +8 -8
  389. package/skills/rabetbase.manifest.json +8 -3
@@ -1 +1 @@
1
- const a160_0x10af4f=a160_0x118f;(function(_0x1ff388,_0x300b14){const _0x196922=a160_0x118f,_0x16848c=_0x1ff388();while(!![]){try{const _0x44c7d0=parseInt(_0x196922(0x19c))/0x1*(-parseInt(_0x196922(0x182))/0x2)+parseInt(_0x196922(0x1a3))/0x3+parseInt(_0x196922(0x1ab))/0x4+parseInt(_0x196922(0x1ad))/0x5+-parseInt(_0x196922(0x1a1))/0x6*(parseInt(_0x196922(0x190))/0x7)+parseInt(_0x196922(0x16c))/0x8*(parseInt(_0x196922(0x17b))/0x9)+-parseInt(_0x196922(0x1b8))/0xa;if(_0x44c7d0===_0x300b14)break;else _0x16848c['push'](_0x16848c['shift']());}catch(_0x50bf8c){_0x16848c['push'](_0x16848c['shift']());}}}(a160_0xd865,0x790f0));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,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';function a160_0x118f(_0xf6b931,_0x256426){_0xf6b931=_0xf6b931-0x16c;const _0xd865dd=a160_0xd865();let _0x118f5e=_0xd865dd[_0xf6b931];return _0x118f5e;}const BACKEND=[{'method':'POST','path':a160_0x10af4f(0x1b4)}];export const menuRename={'service':a160_0x10af4f(0x19f),'command':a160_0x10af4f(0x1a8),'description':a160_0x10af4f(0x18e),'risk':a160_0x10af4f(0x175),'structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':'label','type':a160_0x10af4f(0x1b7),'required':!![],'description':a160_0x10af4f(0x16d)},{'name':a160_0x10af4f(0x187),'type':a160_0x10af4f(0x1b7),'required':!![],'description':'Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5cfa00){validateInput(_0x5cfa00);},async 'dryRun'(_0x47334a){const _0x1407d4=a160_0x10af4f;validateInput(_0x47334a);const _0x555a58=await buildPlan(_0x47334a,!![]);return menuDryRunResult(_0x555a58['plan'],{'method':_0x1407d4(0x1ba),'url':'/smartapi/menu/update','body':_0x555a58[_0x1407d4(0x17a)],'description':'Would\x20rename\x20menu\x20'+_0x555a58[_0x1407d4(0x17a)]['id']+'.'});},async 'execute'(_0x212c15){const _0x58e0ce=a160_0x10af4f;validateInput(_0x212c15);const _0x5dc695=await buildPlan(_0x212c15,![]),{plan:_0x22bfb6,body:_0x5463c8,before:_0x2e5e55,noChanges:_0x3aae1b}=_0x5dc695,_0xb5675=_0x5463c8['id'];if(_0x3aae1b)return renameSuccess(_0x22bfb6,_0x5dc695[_0x58e0ce(0x17f)],_0x2e5e55,!![],![]);await recheckMutationSnapshot(_0x212c15,_0x22bfb6,_0x58e0ce(0x194),_0xb5675);try{await updateMenuEntity(_0x212c15[_0x58e0ce(0x186)],_0x212c15['cookie'],{'id':_0xb5675,'label':_0x5463c8['label']});}catch(_0x2ed59f){const _0xbf7770=mapMenuApiError(_0x2ed59f,'rename',_0xb5675);if(isMenuResponseLoss(_0x2ed59f)&&_0xbf7770[_0x58e0ce(0x177)]!==_0x58e0ce(0x183))return recoverAfterResponseLoss(_0x212c15,_0x5dc695);throw menuFailure(_0xbf7770,_0x22bfb6,{'stage':_0x58e0ce(0x1a2),'failed':{'id':_0xb5675},'warnings':['The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x58e0ce(0x1b0),'targetId':_0xb5675,'lookupCommand':buildLookupCommand(_0x212c15[_0x58e0ce(0x186)])}});}let _0x1f4fe8,_0x3741f2;try{_0x1f4fe8=await fetchMenuSnapshot(_0x212c15[_0x58e0ce(0x186)],_0x212c15['cookie']),_0x3741f2=requireMenu(_0x1f4fe8,_0xb5675),verifyRenamedFact(_0x2e5e55,_0x3741f2,_0x5463c8[_0x58e0ce(0x19b)]);}catch(_0x5d3d83){const _0x2320e7=describeMenuErrorCause(_0x5d3d83,_0x58e0ce(0x18c),_0xb5675),_0x1df867=asVerificationError(_0x5d3d83,_0x58e0ce(0x16f)+_0xb5675+_0x58e0ce(0x17e));throw menuFailure(_0x1df867,_0x22bfb6,{'stage':_0x58e0ce(0x176),'succeeded':[{'id':_0xb5675,'updateRequested':!![]}],'failed':{'id':_0xb5675,'requestedStateConfirmed':![],..._0x2320e7},'warnings':[_0x58e0ce(0x198)],'verification':{'status':_0x58e0ce(0x1b0),'targetId':_0xb5675,'lookupCommand':buildLookupCommand(_0x212c15[_0x58e0ce(0x186)])}});}return renameSuccess(_0x22bfb6,_0x1f4fe8,_0x3741f2,![],![]);}};function validateInput(_0x29d0ee){const _0x3d8194=a160_0x10af4f;validateExactId(_0x29d0ee);if(!_0x29d0ee[_0x3d8194(0x19a)](_0x3d8194(0x19b))[_0x3d8194(0x1a4)]())throw CliErrors['validation'](_0x3d8194(0x181));if(!_0x29d0ee[_0x3d8194(0x19a)](_0x3d8194(0x187))[_0x3d8194(0x1a4)]())throw CliErrors[_0x3d8194(0x174)](_0x3d8194(0x187));}async function buildPlan(_0x4be0e0,_0x35c492){const _0x965609=a160_0x10af4f,_0x2724ba=validateExactId(_0x4be0e0),_0x9435d8=_0x4be0e0['str'](_0x965609(0x19b))['trim'](),_0x12b1dd=_0x4be0e0[_0x965609(0x19a)](_0x965609(0x187)),_0x4b4969=await fetchMutationSnapshot(_0x4be0e0,'rename\x20menu',_0x2724ba),_0x11e3ee=requireMenu(_0x4b4969,_0x2724ba);if(_0x11e3ee[_0x965609(0x19b)]!==_0x12b1dd)throw menuError('menu_state_drift',_0x965609(0x1a5)+_0x2724ba+_0x965609(0x192)+JSON[_0x965609(0x197)](_0x12b1dd)+_0x965609(0x19d)+JSON[_0x965609(0x197)](_0x11e3ee[_0x965609(0x19b)])+'.',_0x965609(0x195));const _0x334d78={'id':_0x2724ba,'appCode':_0x4be0e0[_0x965609(0x186)],'label':_0x9435d8},_0x257275={..._0x11e3ee,'label':_0x9435d8},_0x502131=_0x11e3ee[_0x965609(0x19b)]===_0x9435d8,_0x10281c=_0x502131?[]:[{'stage':_0x965609(0x179),'method':'POST','path':_0x965609(0x1b4),'body':_0x334d78}];return{'snapshot':_0x4b4969,'before':_0x11e3ee,'body':_0x334d78,'noChanges':_0x502131,'plan':mutationResult({'operation':'rename','selector':{'id':_0x2724ba},'before':_0x11e3ee,'after':_0x257275,'dryRun':_0x35c492,'backend':[...BACKEND],'plannedActions':_0x10281c,'snapshotHash':_0x4b4969['hash'],'warnings':_0x502131?['The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.']:[]})};}function verifyRenamedFact(_0x1783c7,_0x5cce9b,_0x3f6920){const _0x356eda=a160_0x10af4f,_0x35b876=[['id',_0x5cce9b['id'],_0x1783c7['id']],[_0x356eda(0x18a),_0x5cce9b[_0x356eda(0x18a)],_0x1783c7[_0x356eda(0x18a)]],['depth',_0x5cce9b[_0x356eda(0x180)],_0x1783c7['depth']],[_0x356eda(0x1a0),_0x5cce9b[_0x356eda(0x1a0)],_0x1783c7[_0x356eda(0x1a0)]],['url',_0x5cce9b[_0x356eda(0x1aa)],_0x1783c7[_0x356eda(0x1aa)]],[_0x356eda(0x1b9),_0x5cce9b[_0x356eda(0x1b9)],_0x1783c7[_0x356eda(0x1b9)]],['visible',_0x5cce9b[_0x356eda(0x17c)],_0x1783c7[_0x356eda(0x17c)]],[_0x356eda(0x185),_0x5cce9b['sort'],_0x1783c7['sort']],[_0x356eda(0x199),_0x5cce9b[_0x356eda(0x199)],_0x1783c7[_0x356eda(0x199)]],[_0x356eda(0x173),_0x5cce9b['resourcesValid'],_0x1783c7[_0x356eda(0x173)]],[_0x356eda(0x171),_0x5cce9b['childrenIds'],_0x1783c7[_0x356eda(0x171)]],[_0x356eda(0x184),_0x5cce9b[_0x356eda(0x184)],_0x1783c7['childrenCount']],[_0x356eda(0x191),_0x5cce9b[_0x356eda(0x191)],_0x1783c7['pageId']],[_0x356eda(0x170),_0x5cce9b[_0x356eda(0x170)],_0x1783c7[_0x356eda(0x170)]],['modelType',_0x5cce9b[_0x356eda(0x178)],_0x1783c7[_0x356eda(0x178)]],[_0x356eda(0x19e),_0x5cce9b[_0x356eda(0x19e)],_0x1783c7[_0x356eda(0x19e)]],['datasetCode',_0x5cce9b['datasetCode'],_0x1783c7[_0x356eda(0x1bc)]]];for(const [_0x429368,_0x1a1643,_0x55093a]of _0x35b876){assertVerified(sameValue(_0x1a1643,_0x55093a),'Menu\x20'+_0x1783c7['id']+'\x20'+_0x429368+_0x356eda(0x18b));}assertVerified(_0x5cce9b[_0x356eda(0x19b)]===_0x3f6920,'Menu\x20'+_0x1783c7['id']+_0x356eda(0x1a6));}function sameValue(_0x3acf33,_0x13f5c6){const _0xd6c845=a160_0x10af4f;if(Array[_0xd6c845(0x1a9)](_0x3acf33)||Array[_0xd6c845(0x1a9)](_0x13f5c6))return JSON[_0xd6c845(0x197)](_0x3acf33)===JSON[_0xd6c845(0x197)](_0x13f5c6);return _0x3acf33===_0x13f5c6;}function a160_0xd865(){const _0x1b58db=['\x20label\x20changed:\x20expected\x20','cookie','rename\x20menu','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','readbackFailed','stringify','The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.','resources','str','label','556GZnzan',',\x20current\x20','datasetId','menu','path','84llMuoQ','update','2645316TPIyTq','trim','Menu\x20','\x20label\x20update\x20did\x20not\x20take\x20effect.','\x27\x5c\x27\x27','rename','isArray','url','2588516tcIgeU','\x20could\x20not\x20be\x20verified\x20safely','1737305gCBQPf','\x20already\x20has\x20the\x20requested\x20label.','get','failed','requestedLabelObserved','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','menu\x20list','/smartapi/menu/update','hash','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','string','3148940TszpVi','type','POST','Response\x20was\x20lost\x20and\x20menu\x20','datasetCode','272xvgcBp','New\x20menu\x20label','The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.','Rename\x20request\x20for\x20menu\x20','pageType','childrenIds','Renamed\x20menu\x20','resourcesValid','flagMissing','write','verification','code','modelType','rename-menu','body','173385DREzgI','visible','Run\x20','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','snapshot','depth','--label\x20cannot\x20be\x20empty.','2838EwSvgU','menu_permission_denied','childrenCount','sort','appCode','expect-label','menu_update_recovery_required','byId','parentId','\x20changed\x20during\x20the\x20label-only\x20rename.','verify\x20menu\x20rename','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','rabetbase\x20menu\x20list\x20--appcode\x20','465829ntJYPs','pageId'];a160_0xd865=function(){return _0x1b58db;};return a160_0xd865();}function renameSuccess(_0x5b3b8a,_0x5e7e21,_0x204af9,_0x33c253,_0x9c9c42){const _0x47ceb1=a160_0x10af4f,_0x4110b9=_0x204af9['id'],_0x5f0f02=mutationResult({..._0x5b3b8a,'after':_0x204af9,'dryRun':![],'succeeded':[{'id':_0x4110b9,'updated':!_0x33c253,'skipped':_0x33c253,'recovered':_0x9c9c42}],'verification':{'checkedBy':_0x47ceb1(0x1b3),'snapshotHash':_0x5e7e21[_0x47ceb1(0x1b5)],'targetId':_0x4110b9,'matchesRequestedState':!![],'recovered':_0x9c9c42}});return{'ok':!![],'message':_0x9c9c42?_0x47ceb1(0x18d)+_0x4110b9+'.':_0x33c253?_0x47ceb1(0x1a5)+_0x4110b9+_0x47ceb1(0x1ae):_0x47ceb1(0x172)+_0x4110b9+'.','data':{..._0x5f0f02,'recovered':_0x9c9c42}};}async function recoverAfterResponseLoss(_0x21a7e5,_0x224799){const _0x35aee3=a160_0x10af4f,{plan:_0x2b7f4a,before:_0x372437,body:_0x2d49f4}=_0x224799;let _0x34a2b3;try{_0x34a2b3=await fetchMenuSnapshot(_0x21a7e5['appCode'],_0x21a7e5[_0x35aee3(0x193)]);}catch{throw recoveryRequired(_0x2b7f4a,_0x21a7e5['appCode'],{'id':_0x2d49f4['id'],'readbackFailed':!![]});}const _0x1bf090=_0x34a2b3[_0x35aee3(0x189)][_0x35aee3(0x1af)](_0x2d49f4['id']);if(!_0x1bf090||_0x1bf090[_0x35aee3(0x19b)]!==_0x2d49f4[_0x35aee3(0x19b)])throw recoveryRequired(_0x2b7f4a,_0x21a7e5[_0x35aee3(0x186)],{'id':_0x2d49f4['id'],'requestedLabelObserved':![],'after':_0x1bf090??null});try{verifyRenamedFact(_0x372437,_0x1bf090,_0x2d49f4[_0x35aee3(0x19b)]);}catch(_0x4b72f3){const _0x35b5b7=asVerificationError(_0x4b72f3,_0x35aee3(0x1bb)+_0x2d49f4['id']+_0x35aee3(0x1ac));throw menuFailure(_0x35b5b7,_0x2b7f4a,{'stage':'update-recovery','succeeded':[{'id':_0x2d49f4['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x2d49f4['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x1bf090,'warnings':[_0x35aee3(0x16e)],'verification':{'status':'failed','targetId':_0x2d49f4['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x21a7e5[_0x35aee3(0x186)])}});}return renameSuccess(_0x2b7f4a,_0x34a2b3,_0x1bf090,![],!![]);}function recoveryRequired(_0x38bc57,_0x16bca7,_0x5f28fb){const _0x293fa2=a160_0x10af4f,_0x21f2bb=menuError(_0x293fa2(0x188),'The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.',_0x293fa2(0x17d)+buildLookupCommand(_0x16bca7)+_0x293fa2(0x1b2));return menuFailure(_0x21f2bb,_0x38bc57,{'stage':'update-recovery','failed':{'id':_0x5f28fb['id'],..._0x5f28fb[_0x293fa2(0x1b1)]===undefined?{}:{'requestedLabelObserved':_0x5f28fb[_0x293fa2(0x1b1)]},..._0x5f28fb[_0x293fa2(0x196)]?{'readbackFailed':!![]}:{}},'after':_0x5f28fb['after'],'warnings':[_0x293fa2(0x1b6)],'verification':{'status':'failed','targetId':_0x5f28fb['id'],..._0x5f28fb['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x5f28fb[_0x293fa2(0x1b1)]},..._0x5f28fb[_0x293fa2(0x196)]?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0x16bca7)}});}function buildLookupCommand(_0x1d4daf){const _0x3f6f83=a160_0x10af4f,_0x58aa4a='\x27'+_0x1d4daf['replace'](/'/g,_0x3f6f83(0x1a7))+'\x27';return _0x3f6f83(0x18f)+_0x58aa4a+'\x20--format\x20compress';}
1
+ const a161_0x51a6a7=a161_0x5713;(function(_0x55aaec,_0x25b0be){const _0x1fdd09=a161_0x5713,_0x28b2d3=_0x55aaec();while(!![]){try{const _0x4b0e71=-parseInt(_0x1fdd09(0x136))/0x1*(-parseInt(_0x1fdd09(0x10a))/0x2)+-parseInt(_0x1fdd09(0x11d))/0x3+parseInt(_0x1fdd09(0x11b))/0x4*(-parseInt(_0x1fdd09(0x12a))/0x5)+-parseInt(_0x1fdd09(0x12c))/0x6*(parseInt(_0x1fdd09(0x10f))/0x7)+-parseInt(_0x1fdd09(0xe8))/0x8*(-parseInt(_0x1fdd09(0x107))/0x9)+parseInt(_0x1fdd09(0x112))/0xa+parseInt(_0x1fdd09(0xf4))/0xb;if(_0x4b0e71===_0x25b0be)break;else _0x28b2d3['push'](_0x28b2d3['shift']());}catch(_0x40931b){_0x28b2d3['push'](_0x28b2d3['shift']());}}}(a161_0x383c,0x7f3e3));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,requireMenu,validateExactId}from'../../commands/menu/shared/mutations.js';import{updateMenuEntity}from'../../commands/menu/shared/service.js';import{CliErrors}from'../../errors.js';const BACKEND=[{'method':a161_0x51a6a7(0x10d),'path':a161_0x51a6a7(0xf1)}];export const menuRename={'service':a161_0x51a6a7(0x109),'command':a161_0x51a6a7(0x120),'description':a161_0x51a6a7(0x11e),'risk':'write','structuredErrors':!![],'flags':[MENU_ID_FLAG,{'name':a161_0x51a6a7(0x121),'type':a161_0x51a6a7(0x113),'required':!![],'description':a161_0x51a6a7(0x103)},{'name':a161_0x51a6a7(0x11a),'type':'string','required':!![],'description':a161_0x51a6a7(0x116)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x19272b){validateInput(_0x19272b);},async 'dryRun'(_0x2d3035){const _0x50eacc=a161_0x51a6a7;validateInput(_0x2d3035);const _0x1c05a6=await buildPlan(_0x2d3035,!![]);return menuDryRunResult(_0x1c05a6[_0x50eacc(0xe5)],{'method':_0x50eacc(0x10d),'url':_0x50eacc(0xf1),'body':_0x1c05a6[_0x50eacc(0x129)],'description':'Would\x20rename\x20menu\x20'+_0x1c05a6[_0x50eacc(0x129)]['id']+'.'});},async 'execute'(_0xff0566){const _0x23da52=a161_0x51a6a7;validateInput(_0xff0566);const _0x4e9ed4=await buildPlan(_0xff0566,![]),{plan:_0x134dc5,body:_0x3a1a35,before:_0x27c69e,noChanges:_0x552840}=_0x4e9ed4,_0x4507dd=_0x3a1a35['id'];if(_0x552840)return renameSuccess(_0x134dc5,_0x4e9ed4[_0x23da52(0xf5)],_0x27c69e,!![],![]);await recheckMutationSnapshot(_0xff0566,_0x134dc5,_0x23da52(0x119),_0x4507dd);try{await updateMenuEntity(_0xff0566[_0x23da52(0x12f)],_0xff0566[_0x23da52(0x104)],{'id':_0x4507dd,'label':_0x3a1a35[_0x23da52(0x121)]});}catch(_0x561566){const _0x365813=mapMenuApiError(_0x561566,_0x23da52(0x120),_0x4507dd);if(isMenuResponseLoss(_0x561566)&&_0x365813[_0x23da52(0xfa)]!==_0x23da52(0xf2))return recoverAfterResponseLoss(_0xff0566,_0x4e9ed4);throw menuFailure(_0x365813,_0x134dc5,{'stage':_0x23da52(0x125),'failed':{'id':_0x4507dd},'warnings':['The\x20rename\x20request\x20was\x20not\x20retried;\x20inspect\x20current\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':_0x23da52(0x102),'targetId':_0x4507dd,'lookupCommand':buildLookupCommand(_0xff0566[_0x23da52(0x12f)])}});}let _0x5ef7c4,_0x16edde;try{_0x5ef7c4=await fetchMenuSnapshot(_0xff0566[_0x23da52(0x12f)],_0xff0566[_0x23da52(0x104)]),_0x16edde=requireMenu(_0x5ef7c4,_0x4507dd),verifyRenamedFact(_0x27c69e,_0x16edde,_0x3a1a35[_0x23da52(0x121)]);}catch(_0x221f7b){const _0x46e56f=describeMenuErrorCause(_0x221f7b,'verify\x20menu\x20rename',_0x4507dd),_0x398888=asVerificationError(_0x221f7b,_0x23da52(0x101)+_0x4507dd+_0x23da52(0x135));throw menuFailure(_0x398888,_0x134dc5,{'stage':_0x23da52(0x12b),'succeeded':[{'id':_0x4507dd,'updateRequested':!![]}],'failed':{'id':_0x4507dd,'requestedStateConfirmed':![],..._0x46e56f},'warnings':['The\x20rename\x20may\x20have\x20taken\x20effect;\x20inspect\x20the\x20latest\x20menu\x20facts\x20before\x20retrying.'],'verification':{'status':'failed','targetId':_0x4507dd,'lookupCommand':buildLookupCommand(_0xff0566['appCode'])}});}return renameSuccess(_0x134dc5,_0x5ef7c4,_0x16edde,![],![]);}};function validateInput(_0x34b606){const _0x26e2b0=a161_0x51a6a7;validateExactId(_0x34b606);if(!_0x34b606[_0x26e2b0(0xfd)]('label')[_0x26e2b0(0xeb)]())throw CliErrors[_0x26e2b0(0x123)](_0x26e2b0(0x128));if(!_0x34b606['str'](_0x26e2b0(0x11a))['trim']())throw CliErrors['flagMissing'](_0x26e2b0(0x11a));}async function buildPlan(_0x18ecd3,_0x30fc65){const _0x236054=a161_0x51a6a7,_0x4eb15c=validateExactId(_0x18ecd3),_0x4c05f7=_0x18ecd3[_0x236054(0xfd)]('label')[_0x236054(0xeb)](),_0x595acc=_0x18ecd3['str'](_0x236054(0x11a)),_0x44ab9f=await fetchMutationSnapshot(_0x18ecd3,_0x236054(0x119),_0x4eb15c),_0x4fa18f=requireMenu(_0x44ab9f,_0x4eb15c);if(_0x4fa18f['label']!==_0x595acc)throw menuError(_0x236054(0xf3),_0x236054(0x12d)+_0x4eb15c+_0x236054(0x108)+JSON['stringify'](_0x595acc)+_0x236054(0xfb)+JSON[_0x236054(0x114)](_0x4fa18f[_0x236054(0x121)])+'.',_0x236054(0x10c));const _0x4c8225={'id':_0x4eb15c,'appCode':_0x18ecd3['appCode'],'label':_0x4c05f7},_0x4a9fa9={..._0x4fa18f,'label':_0x4c05f7},_0x36b094=_0x4fa18f[_0x236054(0x121)]===_0x4c05f7,_0x31738f=_0x36b094?[]:[{'stage':_0x236054(0xec),'method':_0x236054(0x10d),'path':_0x236054(0xf1),'body':_0x4c8225}];return{'snapshot':_0x44ab9f,'before':_0x4fa18f,'body':_0x4c8225,'noChanges':_0x36b094,'plan':mutationResult({'operation':_0x236054(0x120),'selector':{'id':_0x4eb15c},'before':_0x4fa18f,'after':_0x4a9fa9,'dryRun':_0x30fc65,'backend':[...BACKEND],'plannedActions':_0x31738f,'snapshotHash':_0x44ab9f[_0x236054(0xee)],'warnings':_0x36b094?[_0x236054(0x106)]:[]})};}function verifyRenamedFact(_0xaea24b,_0x5daac,_0x469633){const _0x3c6d6d=a161_0x51a6a7,_0x59ec22=[['id',_0x5daac['id'],_0xaea24b['id']],[_0x3c6d6d(0x117),_0x5daac[_0x3c6d6d(0x117)],_0xaea24b[_0x3c6d6d(0x117)]],[_0x3c6d6d(0x10e),_0x5daac['depth'],_0xaea24b[_0x3c6d6d(0x10e)]],[_0x3c6d6d(0x111),_0x5daac[_0x3c6d6d(0x111)],_0xaea24b[_0x3c6d6d(0x111)]],['url',_0x5daac[_0x3c6d6d(0xed)],_0xaea24b[_0x3c6d6d(0xed)]],['type',_0x5daac[_0x3c6d6d(0xe9)],_0xaea24b[_0x3c6d6d(0xe9)]],[_0x3c6d6d(0x122),_0x5daac[_0x3c6d6d(0x122)],_0xaea24b[_0x3c6d6d(0x122)]],[_0x3c6d6d(0xfc),_0x5daac[_0x3c6d6d(0xfc)],_0xaea24b[_0x3c6d6d(0xfc)]],[_0x3c6d6d(0xe7),_0x5daac[_0x3c6d6d(0xe7)],_0xaea24b[_0x3c6d6d(0xe7)]],['resourcesValid',_0x5daac['resourcesValid'],_0xaea24b[_0x3c6d6d(0x118)]],['childrenIds',_0x5daac[_0x3c6d6d(0xe6)],_0xaea24b[_0x3c6d6d(0xe6)]],[_0x3c6d6d(0xef),_0x5daac[_0x3c6d6d(0xef)],_0xaea24b[_0x3c6d6d(0xef)]],[_0x3c6d6d(0x127),_0x5daac[_0x3c6d6d(0x127)],_0xaea24b['pageId']],['pageType',_0x5daac['pageType'],_0xaea24b[_0x3c6d6d(0x11f)]],['modelType',_0x5daac[_0x3c6d6d(0xea)],_0xaea24b[_0x3c6d6d(0xea)]],[_0x3c6d6d(0xf7),_0x5daac['datasetId'],_0xaea24b[_0x3c6d6d(0xf7)]],['datasetCode',_0x5daac[_0x3c6d6d(0x110)],_0xaea24b[_0x3c6d6d(0x110)]]];for(const [_0x294f47,_0x1e3819,_0x54475b]of _0x59ec22){assertVerified(sameValue(_0x1e3819,_0x54475b),_0x3c6d6d(0x12d)+_0xaea24b['id']+'\x20'+_0x294f47+_0x3c6d6d(0x105));}assertVerified(_0x5daac[_0x3c6d6d(0x121)]===_0x469633,'Menu\x20'+_0xaea24b['id']+_0x3c6d6d(0xf6));}function sameValue(_0x4b2d70,_0x63c3ab){const _0x1a3a2f=a161_0x51a6a7;if(Array[_0x1a3a2f(0xfe)](_0x4b2d70)||Array[_0x1a3a2f(0xfe)](_0x63c3ab))return JSON[_0x1a3a2f(0x114)](_0x4b2d70)===JSON['stringify'](_0x63c3ab);return _0x4b2d70===_0x63c3ab;}function renameSuccess(_0x5ae1c4,_0x12703d,_0x4e0f4b,_0x5e9c0c,_0x3b7595){const _0x4230ae=a161_0x51a6a7,_0x6b843b=_0x4e0f4b['id'],_0x191f9a=mutationResult({..._0x5ae1c4,'after':_0x4e0f4b,'dryRun':![],'succeeded':[{'id':_0x6b843b,'updated':!_0x5e9c0c,'skipped':_0x5e9c0c,'recovered':_0x3b7595}],'verification':{'checkedBy':_0x4230ae(0x133),'snapshotHash':_0x12703d[_0x4230ae(0xee)],'targetId':_0x6b843b,'matchesRequestedState':!![],'recovered':_0x3b7595}});return{'ok':!![],'message':_0x3b7595?_0x4230ae(0x130)+_0x6b843b+'.':_0x5e9c0c?_0x4230ae(0x12d)+_0x6b843b+_0x4230ae(0xe4):_0x4230ae(0x10b)+_0x6b843b+'.','data':{..._0x191f9a,'recovered':_0x3b7595}};}async function recoverAfterResponseLoss(_0x5c058f,_0x28f3fe){const _0xc15a7c=a161_0x51a6a7,{plan:_0x45656b,before:_0x47e4be,body:_0x20b215}=_0x28f3fe;let _0x479bbf;try{_0x479bbf=await fetchMenuSnapshot(_0x5c058f[_0xc15a7c(0x12f)],_0x5c058f[_0xc15a7c(0x104)]);}catch{throw recoveryRequired(_0x45656b,_0x5c058f['appCode'],{'id':_0x20b215['id'],'readbackFailed':!![]});}const _0x2f7f72=_0x479bbf[_0xc15a7c(0xf8)][_0xc15a7c(0x137)](_0x20b215['id']);if(!_0x2f7f72||_0x2f7f72['label']!==_0x20b215[_0xc15a7c(0x121)])throw recoveryRequired(_0x45656b,_0x5c058f[_0xc15a7c(0x12f)],{'id':_0x20b215['id'],'requestedLabelObserved':![],'after':_0x2f7f72??null});try{verifyRenamedFact(_0x47e4be,_0x2f7f72,_0x20b215[_0xc15a7c(0x121)]);}catch(_0x2cdcdd){const _0xd98eb0=asVerificationError(_0x2cdcdd,_0xc15a7c(0x132)+_0x20b215['id']+_0xc15a7c(0x12e));throw menuFailure(_0xd98eb0,_0x45656b,{'stage':'update-recovery','succeeded':[{'id':_0x20b215['id'],'updateRequested':!![],'recovered':!![]}],'failed':{'id':_0x20b215['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![]},'after':_0x2f7f72,'warnings':['The\x20requested\x20label\x20was\x20observed\x20after\x20response\x20loss,\x20but\x20other\x20menu\x20facts\x20changed.'],'verification':{'status':'failed','targetId':_0x20b215['id'],'requestedLabelObserved':!![],'invariantsConfirmed':![],'lookupCommand':buildLookupCommand(_0x5c058f['appCode'])}});}return renameSuccess(_0x45656b,_0x479bbf,_0x2f7f72,![],!![]);}function a161_0x5713(_0x15ada2,_0x3bd5aa){_0x15ada2=_0x15ada2-0xe4;const _0x383c01=a161_0x383c();let _0x5713ca=_0x383c01[_0x15ada2];return _0x5713ca;}function a161_0x383c(){const _0x31379f=['modelType','trim','rename-menu','url','hash','childrenCount','after','/smartapi/menu/update','menu_permission_denied','menu_state_drift','8043453MHTmXD','snapshot','\x20label\x20update\x20did\x20not\x20take\x20effect.','datasetId','byId','The\x20rename\x20may\x20have\x20taken\x20effect.\x20Automatic\x20retry\x20is\x20disabled.','code',',\x20current\x20','sort','str','isArray','\x20and\x20inspect\x20the\x20exact\x20menu\x20id\x20before\x20retrying.','replace','Rename\x20request\x20for\x20menu\x20','failed','New\x20menu\x20label','cookie','\x20changed\x20during\x20the\x20label-only\x20rename.','The\x20menu\x20already\x20has\x20the\x20requested\x20label;\x20no\x20write\x20is\x20needed.','765wHFhjl','\x20label\x20changed:\x20expected\x20','menu','402378SmhPeu','Renamed\x20menu\x20','Run\x20the\x20command\x20with\x20--dry-run\x20again\x20and\x20update\x20--expect-label.','POST','depth','133gohyvl','datasetCode','path','1229980aNRWVJ','string','stringify','requestedLabelObserved','Abort\x20unless\x20the\x20current\x20menu\x20label\x20exactly\x20matches','parentId','resourcesValid','rename\x20menu','expect-label','8AXRILl','Run\x20','1337808PIMtBu','Rename\x20one\x20existing\x20menu\x20without\x20changing\x20its\x20type\x20or\x20page\x20binding','pageType','rename','label','visible','validation','menu_update_recovery_required','update','\x20--format\x20compress','pageId','--label\x20cannot\x20be\x20empty.','body','1927025nHFlUP','verification','202632SWHtSH','Menu\x20','\x20could\x20not\x20be\x20verified\x20safely','appCode','Recovered\x20confirmed\x20rename\x20for\x20menu\x20','The\x20rename\x20response\x20was\x20lost\x20and\x20the\x20requested\x20label\x20cannot\x20be\x20confirmed\x20safely.','Response\x20was\x20lost\x20and\x20menu\x20','menu\x20list','update-recovery','\x20completed\x20but\x20readback\x20could\x20not\x20confirm\x20the\x20requested\x20state','5EpGvJf','get','\x20already\x20has\x20the\x20requested\x20label.','plan','childrenIds','resources','48888fqZUqS','type'];a161_0x383c=function(){return _0x31379f;};return a161_0x383c();}function recoveryRequired(_0x1fa2cf,_0xaffc16,_0x52129a){const _0x1e3ad3=a161_0x51a6a7,_0x533eaa=menuError(_0x1e3ad3(0x124),_0x1e3ad3(0x131),_0x1e3ad3(0x11c)+buildLookupCommand(_0xaffc16)+_0x1e3ad3(0xff));return menuFailure(_0x533eaa,_0x1fa2cf,{'stage':_0x1e3ad3(0x134),'failed':{'id':_0x52129a['id'],..._0x52129a[_0x1e3ad3(0x115)]===undefined?{}:{'requestedLabelObserved':_0x52129a[_0x1e3ad3(0x115)]},..._0x52129a['readbackFailed']?{'readbackFailed':!![]}:{}},'after':_0x52129a[_0x1e3ad3(0xf0)],'warnings':[_0x1e3ad3(0xf9)],'verification':{'status':_0x1e3ad3(0x102),'targetId':_0x52129a['id'],..._0x52129a['requestedLabelObserved']===undefined?{}:{'requestedLabelObserved':_0x52129a['requestedLabelObserved']},..._0x52129a['readbackFailed']?{'readbackFailed':!![]}:{},'lookupCommand':buildLookupCommand(_0xaffc16)}});}function buildLookupCommand(_0x4dbb4b){const _0x594e6d=a161_0x51a6a7,_0x4ca691='\x27'+_0x4dbb4b[_0x594e6d(0x100)](/'/g,'\x27\x5c\x27\x27')+'\x27';return'rabetbase\x20menu\x20list\x20--appcode\x20'+_0x4ca691+_0x594e6d(0x126);}
@@ -1 +1 @@
1
- (function(_0x4cc524,_0x29fcdc){const _0x534de8=a161_0xef28,_0xda186a=_0x4cc524();while(!![]){try{const _0x3ce831=parseInt(_0x534de8(0xea))/0x1+parseInt(_0x534de8(0xe4))/0x2+-parseInt(_0x534de8(0xe3))/0x3*(-parseInt(_0x534de8(0xde))/0x4)+parseInt(_0x534de8(0xe1))/0x5*(-parseInt(_0x534de8(0xd4))/0x6)+-parseInt(_0x534de8(0xd7))/0x7+-parseInt(_0x534de8(0xe5))/0x8*(parseInt(_0x534de8(0xec))/0x9)+parseInt(_0x534de8(0xe9))/0xa*(parseInt(_0x534de8(0xdf))/0xb);if(_0x3ce831===_0x29fcdc)break;else _0xda186a['push'](_0xda186a['shift']());}catch(_0x34de9f){_0xda186a['push'](_0xda186a['shift']());}}}(a161_0x154a,0x90c14));function strWidth(_0x5aa740){const _0x4b08c5=a161_0xef28;let _0x2aa158=0x0;for(const _0x55c725 of _0x5aa740){_0x2aa158+=/[\u4e00-\u9fa5]/[_0x4b08c5(0xeb)](_0x55c725)?0x2:0x1;}return _0x2aa158;}function padRight(_0x43a610,_0x3cdeb9){const _0x4e1c45=a161_0xef28,_0x439032=strWidth(_0x43a610);return _0x43a610+'\x20'[_0x4e1c45(0xf4)](Math[_0x4e1c45(0xf1)](0x0,_0x3cdeb9-_0x439032));}export function renderCompareTable(_0x2f615d,_0x2648ef={}){const _0x19182e=a161_0xef28;if(_0x2f615d[_0x19182e(0xd5)]===0x0)return'';const _0x249e70=_0x2648ef[_0x19182e(0xe6)]??!![],_0x517a91=Math[_0x19182e(0xf1)](0x1e,..._0x2f615d[_0x19182e(0xd8)](_0x57f343=>strWidth(_0x57f343[_0x19182e(0xef)]))),_0x28a5ff=Math[_0x19182e(0xf1)](0x18,..._0x2f615d[_0x19182e(0xd8)](_0x30bf9a=>strWidth(_0x30bf9a['path']))),_0x572bfe=0x4,_0x5f1094=[],_0x9690ff='\x20\x20'+padRight(_0x19182e(0xed),_0x517a91),_0x23f722=padRight(_0x19182e(0xf2),_0x28a5ff),_0x589f83=padRight(_0x19182e(0xd9),_0x572bfe),_0x4d1e7e=_0x249e70?'\x20\x20'+padRight(_0x19182e(0xda),_0x572bfe):'';_0x5f1094[_0x19182e(0xdb)](_0x9690ff+'\x20\x20'+_0x23f722+'\x20\x20'+_0x589f83+(_0x249e70?_0x4d1e7e:'')),_0x5f1094[_0x19182e(0xdb)]('\x20\x20'+'─'['repeat'](_0x517a91)+'\x20\x20'+'─'[_0x19182e(0xf4)](_0x28a5ff)+'\x20\x20'+'─'[_0x19182e(0xf4)](_0x572bfe)+(_0x249e70?'\x20\x20'+'─'[_0x19182e(0xf4)](_0x572bfe):''));for(const _0x364b9e of _0x2f615d){const _0x24b353=padRight(_0x364b9e[_0x19182e(0xef)],_0x517a91),_0x5a048f=padRight(_0x364b9e[_0x19182e(0xf3)],_0x28a5ff),_0x52eb20=_0x364b9e[_0x19182e(0xd6)]?'✓':'✗',_0x53982b=padRight(_0x52eb20,_0x572bfe);let _0x27da36='\x20\x20'+_0x24b353+'\x20\x20'+_0x5a048f+'\x20\x20'+_0x53982b;if(_0x249e70){const _0x104e66=_0x364b9e['online']?'✓':'✗';_0x27da36+='\x20\x20'+padRight(_0x104e66,_0x572bfe);}_0x5f1094[_0x19182e(0xdb)](_0x27da36);}return _0x5f1094['join']('\x0a');}export function renderSyncSummary(_0x1e7b9e,_0x2073a0){const _0x3475a3=a161_0xef28;if(_0x1e7b9e[_0x3475a3(0xd5)]===0x0)return _0x2073a0?_0x3475a3(0xdd):'\x20\x20No\x20pages\x20to\x20sync.';const _0x84f39b=['\x20\x20'+_0x1e7b9e['length']+'\x20page(s)\x20will\x20be\x20created\x20on\x20platform:'];for(const _0x370e7e of _0x1e7b9e){_0x84f39b['push'](_0x3475a3(0xe7)+_0x370e7e[_0x3475a3(0xef)]+'\x20('+_0x370e7e[_0x3475a3(0xf3)]+')');}return _0x84f39b[_0x3475a3(0xee)]('\x0a');}export function renderUpdateSummary(_0x2cf26e,_0x5ee68a){const _0x50b560=a161_0xef28;if(_0x2cf26e[_0x50b560(0xd5)]===0x0)return _0x50b560(0xdc);const _0x3f2d3d=['\x20\x20'+_0x2cf26e['length']+_0x50b560(0xe8),_0x50b560(0xe2)+(_0x5ee68a[0x0]??_0x50b560(0xf0)),'\x20\x20\x20\x20CSS:\x20'+(_0x5ee68a[0x1]??_0x50b560(0xf0)),'',_0x50b560(0xe0)+_0x2cf26e[_0x50b560(0xee)](',\x20')];return _0x3f2d3d['join']('\x0a');}function a161_0xef28(_0x2af3c3,_0x55563b){_0x2af3c3=_0x2af3c3-0xd4;const _0x154ae1=a161_0x154a();let _0xef2855=_0x154ae1[_0x2af3c3];return _0xef2855;}function a161_0x154a(){const _0x212819=['max','Path','path','repeat','438vrXBSv','length','local','5325600rSSItJ','map','Local','Platform','push','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.','\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','2589480IatKeV','11lCVnLQ','\x20\x20Affected\x20menus:\x20','78230Wqmtva','\x20\x20\x20\x20JS:\x20\x20','3OghpLL','1062404VZBJxR','584mCmURR','showOnline','\x20\x20\x20\x20•\x20','\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','18632630KRwXff','458957TioWSu','test','123894acvEDS','Menu\x20Name','join','label','(unchanged)'];a161_0x154a=function(){return _0x212819;};return a161_0x154a();}
1
+ (function(_0x4f23c2,_0x4da4b4){const _0x2c2970=a162_0x3e27,_0x4329e8=_0x4f23c2();while(!![]){try{const _0x4bdfab=parseInt(_0x2c2970(0xea))/0x1+-parseInt(_0x2c2970(0xf4))/0x2*(-parseInt(_0x2c2970(0xfe))/0x3)+-parseInt(_0x2c2970(0xf5))/0x4*(-parseInt(_0x2c2970(0xf1))/0x5)+-parseInt(_0x2c2970(0xeb))/0x6*(parseInt(_0x2c2970(0xec))/0x7)+parseInt(_0x2c2970(0xe9))/0x8*(-parseInt(_0x2c2970(0xff))/0x9)+-parseInt(_0x2c2970(0xf9))/0xa*(-parseInt(_0x2c2970(0xed))/0xb)+parseInt(_0x2c2970(0xf6))/0xc;if(_0x4bdfab===_0x4da4b4)break;else _0x4329e8['push'](_0x4329e8['shift']());}catch(_0x808a93){_0x4329e8['push'](_0x4329e8['shift']());}}}(a162_0x5ecc,0xdcce4));function a162_0x5ecc(){const _0x58dad0=['\x20page(s)\x20will\x20be\x20created\x20on\x20platform:','\x20\x20No\x20pages\x20to\x20sync.','Platform','2392pfhMyN','557239lJcZbE','522zaNfeb','131075eZLDuQ','11khszqF','\x20\x20All\x20local\x20pages\x20are\x20already\x20on\x20platform.','map','max','5xCWuLF','length','join','2xkyTUF','2860384GwwsaA','761700kMKlXO','test','online','2695430UASZaZ','showOnline','push','repeat','label','2996118TbxyEJ','2124fSmZxo','Menu\x20Name','path','\x20\x20\x20\x20•\x20','\x20\x20No\x20menus\x20with\x20existing\x20resources\x20found.'];a162_0x5ecc=function(){return _0x58dad0;};return a162_0x5ecc();}function strWidth(_0x44c1b8){const _0x37a2b6=a162_0x3e27;let _0x295e06=0x0;for(const _0x1e2f35 of _0x44c1b8){_0x295e06+=/[\u4e00-\u9fa5]/[_0x37a2b6(0xf7)](_0x1e2f35)?0x2:0x1;}return _0x295e06;}function padRight(_0x2dec06,_0x1eca8c){const _0x2cedea=a162_0x3e27,_0x1748e2=strWidth(_0x2dec06);return _0x2dec06+'\x20'['repeat'](Math[_0x2cedea(0xf0)](0x0,_0x1eca8c-_0x1748e2));}export function renderCompareTable(_0x3be5f7,_0x5d6f59={}){const _0x42e5a6=a162_0x3e27;if(_0x3be5f7[_0x42e5a6(0xf2)]===0x0)return'';const _0x27e2f4=_0x5d6f59[_0x42e5a6(0xfa)]??!![],_0x2b4a74=Math[_0x42e5a6(0xf0)](0x1e,..._0x3be5f7[_0x42e5a6(0xef)](_0x24ebeb=>strWidth(_0x24ebeb[_0x42e5a6(0xfd)]))),_0x11373c=Math[_0x42e5a6(0xf0)](0x18,..._0x3be5f7[_0x42e5a6(0xef)](_0x202840=>strWidth(_0x202840[_0x42e5a6(0x101)]))),_0x38f14a=0x4,_0x4aff07=[],_0xcfb51c='\x20\x20'+padRight(_0x42e5a6(0x100),_0x2b4a74),_0x478867=padRight('Path',_0x11373c),_0x2cd025=padRight('Local',_0x38f14a),_0x36f5ca=_0x27e2f4?'\x20\x20'+padRight(_0x42e5a6(0xe8),_0x38f14a):'';_0x4aff07['push'](_0xcfb51c+'\x20\x20'+_0x478867+'\x20\x20'+_0x2cd025+(_0x27e2f4?_0x36f5ca:'')),_0x4aff07['push']('\x20\x20'+'─'[_0x42e5a6(0xfc)](_0x2b4a74)+'\x20\x20'+'─'[_0x42e5a6(0xfc)](_0x11373c)+'\x20\x20'+'─'[_0x42e5a6(0xfc)](_0x38f14a)+(_0x27e2f4?'\x20\x20'+'─'['repeat'](_0x38f14a):''));for(const _0xbd52a3 of _0x3be5f7){const _0x12e8dd=padRight(_0xbd52a3[_0x42e5a6(0xfd)],_0x2b4a74),_0x30907a=padRight(_0xbd52a3[_0x42e5a6(0x101)],_0x11373c),_0x43a982=_0xbd52a3['local']?'✓':'✗',_0x1a0946=padRight(_0x43a982,_0x38f14a);let _0x5dd2fc='\x20\x20'+_0x12e8dd+'\x20\x20'+_0x30907a+'\x20\x20'+_0x1a0946;if(_0x27e2f4){const _0x34da43=_0xbd52a3[_0x42e5a6(0xf8)]?'✓':'✗';_0x5dd2fc+='\x20\x20'+padRight(_0x34da43,_0x38f14a);}_0x4aff07[_0x42e5a6(0xfb)](_0x5dd2fc);}return _0x4aff07['join']('\x0a');}function a162_0x3e27(_0xaab337,_0x11e54e){_0xaab337=_0xaab337-0xe4;const _0x5ecce7=a162_0x5ecc();let _0x3e2772=_0x5ecce7[_0xaab337];return _0x3e2772;}export function renderSyncSummary(_0xc666a8,_0x1f2b47){const _0x44698f=a162_0x3e27;if(_0xc666a8[_0x44698f(0xf2)]===0x0)return _0x1f2b47?_0x44698f(0xee):_0x44698f(0xe7);const _0x38a144=['\x20\x20'+_0xc666a8[_0x44698f(0xf2)]+_0x44698f(0xe6)];for(const _0x30957e of _0xc666a8){_0x38a144[_0x44698f(0xfb)](_0x44698f(0xe4)+_0x30957e[_0x44698f(0xfd)]+'\x20('+_0x30957e[_0x44698f(0x101)]+')');}return _0x38a144['join']('\x0a');}export function renderUpdateSummary(_0x4b3466,_0x541ee0){const _0x4d1342=a162_0x3e27;if(_0x4b3466[_0x4d1342(0xf2)]===0x0)return _0x4d1342(0xe5);const _0x19e3dc=['\x20\x20'+_0x4b3466[_0x4d1342(0xf2)]+'\x20menu(s)\x20will\x20be\x20updated\x20with\x20new\x20assets:','\x20\x20\x20\x20JS:\x20\x20'+(_0x541ee0[0x0]??'(unchanged)'),'\x20\x20\x20\x20CSS:\x20'+(_0x541ee0[0x1]??'(unchanged)'),'','\x20\x20Affected\x20menus:\x20'+_0x4b3466['join'](',\x20')];return _0x19e3dc[_0x4d1342(0xf3)]('\x0a');}
@@ -1 +1 @@
1
- const a162_0x3ce4c1=a162_0x5e20;function a162_0x47c0(){const _0x47d3c0=['Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','menu\x20delete','2905881fgpKUr','2960NvyktL','2980568XTOilb','Menu\x20delete\x20plan\x20targets\x20app\x20','childrenCount','depth','extend','cascade','toISOString','\x20is\x20in\x20the\x20future.','createdAt','batch-delete-menu','4020fURHlU','resourcesValid','pageType','/smartapi/menu/batchDelete','plan','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','\x20of\x20the\x20','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','2yrWFAJ','path','every','isArray','datasetId','Planned\x20menu\x20','updateTime','string','updateUserName','menu_plan_write_failed','digest','length','pageId','visible','resources','pages','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.','recursive','POST','Menu\x20delete\x20plan\x20creation\x20time\x20','label','extendHash','8154qYlTUj','Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20','snapshotHash','modelType','test','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.','parentId','5124WnZReu','before','trim','selector','plan-out','childrenIds','size','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','12FUrWgr','deleteOrder','appCode','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','datasetCode','isFinite','targetFingerprints','type','command','\x20bytes.','object','targetFingerprint','code','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.','menu_plan_invalid','stringify','map','warnings','sort','version','updateUserId','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','getTime','boolean','update','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','\x20contract.','3513148jRiuJL','pageSchemaAffected','resourcesHash','Cannot\x20read\x20menu\x20delete\x20plan\x20','number','7FjMuUc','menu_plan_expired','menu_plan_file_exists','delete','4415673oHPYvK','target','targets','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20',',\x20current\x20app\x20is\x20','605093CKRohk','byId','isInteger','menu_state_drift','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','EEXIST'];a162_0x47c0=function(){return _0x47d3c0;};return a162_0x47c0();}(function(_0x4a02f2,_0xa1709e){const _0x5b6bfa=a162_0x5e20,_0x1546c2=_0x4a02f2();while(!![]){try{const _0x347f52=-parseInt(_0x5b6bfa(0xcc))/0x1*(parseInt(_0x5b6bfa(0xe8))/0x2)+parseInt(_0x5b6bfa(0xc7))/0x3+-parseInt(_0x5b6bfa(0xbe))/0x4+-parseInt(_0x5b6bfa(0xd5))/0x5*(-parseInt(_0x5b6bfa(0x106))/0x6)+parseInt(_0x5b6bfa(0xc3))/0x7*(parseInt(_0x5b6bfa(0xd6))/0x8)+parseInt(_0x5b6bfa(0xff))/0x9*(-parseInt(_0x5b6bfa(0xe0))/0xa)+-parseInt(_0x5b6bfa(0xd4))/0xb*(-parseInt(_0x5b6bfa(0x10e))/0xc);if(_0x347f52===_0xa1709e)break;else _0x1546c2['push'](_0x1546c2['shift']());}catch(_0x4d1438){_0x1546c2['push'](_0x1546c2['shift']());}}}(a162_0x47c0,0xbb291));function a162_0x5e20(_0x2d78a7,_0x28c8fc){_0x2d78a7=_0x2d78a7-0xb0;const _0x47c03b=a162_0x47c0();let _0x5e20af=_0x47c03b[_0x2d78a7];return _0x5e20af;}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=a162_0x3ce4c1(0xd3),PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0xb01443,_0x13c242,_0x20cf84=new Date()){const _0x2ba4cc=a162_0x3ce4c1;if(!_0x13c242[_0x2ba4cc(0x107)]||!isMenuFact(_0x13c242[_0x2ba4cc(0x107)]))throw menuError(_0x2ba4cc(0xb1),_0x2ba4cc(0x111));const _0x64e4d4=_0x13c242[_0x2ba4cc(0xc9)]?.[_0x2ba4cc(0xf3)]?_0x13c242[_0x2ba4cc(0xc9)]:[_0x13c242[_0x2ba4cc(0x107)]],_0x4e7dc9=_0x13c242[_0x2ba4cc(0x10f)]?.[_0x2ba4cc(0xf3)]?_0x13c242[_0x2ba4cc(0x10f)]:_0x64e4d4['map'](_0xb539c5=>_0xb539c5['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0xb01443,'createdAt':_0x20cf84[_0x2ba4cc(0xdc)](),'expiresAt':new Date(_0x20cf84[_0x2ba4cc(0xb9)]()+PLAN_TTL_MS)[_0x2ba4cc(0xdc)](),'snapshotHash':_0x13c242[_0x2ba4cc(0x101)],'recursive':_0x13c242[_0x2ba4cc(0x109)]['recursive']===!![],'target':_0x13c242[_0x2ba4cc(0x107)],'targetFingerprint':fingerprint(_0x13c242['before']),'targets':_0x64e4d4,'targetFingerprints':_0x64e4d4[_0x2ba4cc(0xb3)](fingerprint),'deleteOrder':_0x4e7dc9,'cascade':_0x13c242[_0x2ba4cc(0xdb)]??{'pages':_0x13c242[_0x2ba4cc(0x107)][_0x2ba4cc(0xf4)]==null?[]:[_0x13c242[_0x2ba4cc(0x107)]['pageId']],'pageSchemaAffected':_0x13c242[_0x2ba4cc(0x107)][_0x2ba4cc(0xf4)]!=null},'warnings':[..._0x13c242[_0x2ba4cc(0xb4)]]};}export async function writeMenuDeletePlan(_0x6045c9,_0x1fbcf0){const _0x4d8a19=a162_0x3ce4c1,_0x2ea337=resolvePlanPath(_0x6045c9,_0x4d8a19(0x10a));await mkdir(dirname(_0x2ea337),{'recursive':!![]});try{await writeFile(_0x2ea337,JSON['stringify'](_0x1fbcf0,null,0x2)+'\x0a',{'encoding':'utf8','flag':'wx'});}catch(_0x914724){if(_0x914724[_0x4d8a19(0x11a)]===_0x4d8a19(0xd1))throw menuError(_0x4d8a19(0xc5),_0x4d8a19(0xca)+_0x2ea337,'Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.');throw menuError(_0x4d8a19(0xf1),_0x4d8a19(0xb8)+_0x2ea337+':\x20'+errorMessage(_0x914724));}return _0x2ea337;}export async function readMenuDeletePlan(_0x5458dc){const _0x2cf441=a162_0x3ce4c1,_0x546a82=resolvePlanPath(_0x5458dc,_0x2cf441(0xe4));let _0x2ef02a;try{_0x2ef02a=(await stat(_0x546a82))[_0x2cf441(0x10c)];}catch(_0x4f502a){throw menuError('menu_plan_invalid',_0x2cf441(0xc1)+_0x546a82+':\x20'+errorMessage(_0x4f502a));}if(_0x2ef02a>MAX_PLAN_BYTES)throw menuError(_0x2cf441(0xb1),_0x2cf441(0xd0)+_0x2ef02a+_0x2cf441(0x117));let _0x5db327;try{_0x5db327=JSON['parse'](await readFile(_0x546a82,'utf8'));}catch(_0x14bdb5){throw menuError(_0x2cf441(0xb1),_0x2cf441(0x10d)+errorMessage(_0x14bdb5));}if(!isMenuDeletePlanFile(_0x5db327))throw menuError(_0x2cf441(0xb1),_0x2cf441(0x100)+PLAN_VERSION+_0x2cf441(0xe6)+PLAN_COMMAND+_0x2cf441(0xbd));if(!sameFingerprint(_0x5db327[_0x2cf441(0x119)],fingerprint(_0x5db327[_0x2cf441(0xc8)])))throw menuError(_0x2cf441(0xb1),_0x2cf441(0xbc),_0x2cf441(0xe7));if(!_0x5db327['targets']['every']((_0x4ddf2f,_0x21615b)=>sameFingerprint(_0x5db327['targetFingerprints'][_0x21615b],fingerprint(_0x4ddf2f)))||!sameFingerprint(_0x5db327[_0x2cf441(0x119)],fingerprint(_0x5db327[_0x2cf441(0xc9)][_0x5db327['targets'][_0x2cf441(0xf3)]-0x1])))throw menuError(_0x2cf441(0xb1),'Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.',_0x2cf441(0xe7));return{'path':_0x546a82,'plan':_0x5db327};}export function mutationPlanFromDeleteFile(_0x410e67,_0xa15f81){const _0x4800b0=a162_0x3ce4c1;return mutationResult({'operation':_0x4800b0(0xc6),'selector':{'id':_0x410e67['target']['id'],'recursive':_0x410e67[_0x4800b0(0xfa)]},'before':_0x410e67[_0x4800b0(0xc8)],'after':null,'dryRun':![],'backend':[{'method':_0x4800b0(0xfb),'path':_0x4800b0(0xe3)}],'plannedActions':[{'stage':_0x4800b0(0xdf),'method':'POST','path':'/smartapi/menu/batchDelete','body':{'idList':_0x410e67[_0x4800b0(0x10f)]}}],'targets':_0x410e67[_0x4800b0(0xc9)],'deleteOrder':_0x410e67[_0x4800b0(0x10f)],'snapshotHash':_0x410e67[_0x4800b0(0x101)],'cascade':_0x410e67[_0x4800b0(0xdb)],'planFile':{'path':_0xa15f81,'createdAt':_0x410e67[_0x4800b0(0xde)],'expiresAt':_0x410e67['expiresAt']},'warnings':_0x410e67['warnings']});}export function assertMenuDeletePlanCurrent(_0x3bbe02,_0x316f2d,_0x216497,_0x4abf8b=new Date()){const _0xb60af9=a162_0x3ce4c1;assertMenuDeletePlanExecutable(_0x3bbe02,_0x316f2d,_0x4abf8b);if(_0x216497['hash']!==_0x3bbe02[_0xb60af9(0x101)])throw menuError(_0xb60af9(0xcf),_0xb60af9(0xd2),_0xb60af9(0x104));return _0x3bbe02[_0xb60af9(0xc9)][_0xb60af9(0xb3)]((_0x1b1ec9,_0x506edb)=>{const _0x6865be=_0xb60af9,_0x54794e=_0x216497[_0x6865be(0xcd)]['get'](_0x1b1ec9['id']);if(!_0x54794e)throw menuError(_0x6865be(0xcf),_0x6865be(0xed)+_0x1b1ec9['id']+_0x6865be(0xe5));if(!sameFingerprint(_0x3bbe02[_0x6865be(0x114)][_0x506edb],fingerprint(_0x54794e)))throw menuError(_0x6865be(0xcf),_0x6865be(0xed)+_0x1b1ec9['id']+_0x6865be(0xf8),'Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.');return _0x54794e;});}export function assertMenuDeletePlanExecutable(_0x3a6825,_0x11453c,_0x2897c8=new Date()){const _0x5e7c04=a162_0x3ce4c1;if(_0x3a6825[_0x5e7c04(0x110)]!==_0x11453c)throw menuError('menu_plan_app_mismatch',_0x5e7c04(0xd7)+JSON[_0x5e7c04(0xb2)](_0x3a6825[_0x5e7c04(0x110)])+_0x5e7c04(0xcb)+JSON['stringify'](_0x11453c)+'.');const _0x426600=Date['parse'](_0x3a6825[_0x5e7c04(0xde)]),_0xe8fc86=Date['parse'](_0x3a6825['expiresAt']);if(!Number[_0x5e7c04(0x113)](_0x426600)||!Number[_0x5e7c04(0x113)](_0xe8fc86)||_0xe8fc86-_0x426600!==PLAN_TTL_MS)throw menuError('menu_plan_invalid',_0x5e7c04(0xf9));if(_0x426600>_0x2897c8[_0x5e7c04(0xb9)]())throw menuError(_0x5e7c04(0xb1),_0x5e7c04(0xfc)+_0x3a6825[_0x5e7c04(0xde)]+_0x5e7c04(0xdd),_0x5e7c04(0xb0));if(_0x2897c8[_0x5e7c04(0xb9)]()>_0xe8fc86)throw menuError(_0x5e7c04(0xc4),'Menu\x20delete\x20plan\x20expired\x20at\x20'+_0x3a6825['expiresAt']+'.','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.');}function fingerprint(_0x4e8ead){const _0x1076c1=a162_0x3ce4c1;return{'id':_0x4e8ead['id'],'parentId':_0x4e8ead[_0x1076c1(0x105)],'depth':_0x4e8ead[_0x1076c1(0xd9)],'label':_0x4e8ead[_0x1076c1(0xfd)],'path':_0x4e8ead[_0x1076c1(0xe9)],'type':_0x4e8ead[_0x1076c1(0x115)],'visible':_0x4e8ead[_0x1076c1(0xf5)],'sort':_0x4e8ead[_0x1076c1(0xb5)],'pageId':_0x4e8ead[_0x1076c1(0xf4)],'pageType':_0x4e8ead[_0x1076c1(0xe2)],'modelType':_0x4e8ead[_0x1076c1(0x102)],'datasetId':_0x4e8ead[_0x1076c1(0xec)],'datasetCode':_0x4e8ead[_0x1076c1(0x112)],'childrenIds':[..._0x4e8ead[_0x1076c1(0x10b)]],'childrenCount':_0x4e8ead[_0x1076c1(0xd8)],'resourcesValid':_0x4e8ead[_0x1076c1(0xe1)],'resourcesHash':hashValue(_0x4e8ead[_0x1076c1(0xf6)]),'extendHash':hashValue(_0x4e8ead[_0x1076c1(0xda)]??null),'updateTime':_0x4e8ead[_0x1076c1(0xee)]};}function hashValue(_0x38eed0){const _0xa3649a=a162_0x3ce4c1;return createHash('sha256')[_0xa3649a(0xbb)](JSON[_0xa3649a(0xb2)](_0x38eed0))[_0xa3649a(0xf2)]('hex');}function sameFingerprint(_0x431b91,_0x5ca3d0){const _0xe4c726=a162_0x3ce4c1;return JSON[_0xe4c726(0xb2)](_0x431b91)===JSON[_0xe4c726(0xb2)](_0x5ca3d0);}function resolvePlanPath(_0x33a944,_0x21bb6b){const _0x42ad12=a162_0x3ce4c1,_0x39c2cb=_0x33a944[_0x42ad12(0x108)]();if(!_0x39c2cb)throw menuError(_0x42ad12(0xb1),'--'+_0x21bb6b+'\x20requires\x20a\x20non-empty\x20file\x20path.');return resolve(_0x39c2cb);}function isMenuDeletePlanFile(_0xf297e5){const _0x32c229=a162_0x3ce4c1;if(!isRecord(_0xf297e5))return![];return _0xf297e5[_0x32c229(0xb6)]===PLAN_VERSION&&_0xf297e5[_0x32c229(0x116)]===PLAN_COMMAND&&typeof _0xf297e5[_0x32c229(0x110)]===_0x32c229(0xef)&&_0xf297e5[_0x32c229(0x110)][_0x32c229(0xf3)]>0x0&&typeof _0xf297e5['createdAt']===_0x32c229(0xef)&&typeof _0xf297e5['expiresAt']==='string'&&typeof _0xf297e5[_0x32c229(0x101)]===_0x32c229(0xef)&&/^sha256:[a-f0-9]{64}$/[_0x32c229(0x103)](_0xf297e5[_0x32c229(0x101)])&&typeof _0xf297e5['recursive']==='boolean'&&isMenuFact(_0xf297e5['target'])&&isTargetFingerprint(_0xf297e5[_0x32c229(0x119)])&&Array[_0x32c229(0xeb)](_0xf297e5[_0x32c229(0xc9)])&&_0xf297e5[_0x32c229(0xc9)][_0x32c229(0xf3)]>0x0&&_0xf297e5[_0x32c229(0xc9)]['every'](isMenuFact)&&Array['isArray'](_0xf297e5[_0x32c229(0x114)])&&_0xf297e5[_0x32c229(0x114)][_0x32c229(0xf3)]===_0xf297e5['targets'][_0x32c229(0xf3)]&&_0xf297e5[_0x32c229(0x114)][_0x32c229(0xea)](isTargetFingerprint)&&Array[_0x32c229(0xeb)](_0xf297e5['deleteOrder'])&&_0xf297e5[_0x32c229(0x10f)]['length']===_0xf297e5[_0x32c229(0xc9)][_0x32c229(0xf3)]&&_0xf297e5[_0x32c229(0x10f)][_0x32c229(0xea)](isPositiveInteger)&&new Set(_0xf297e5[_0x32c229(0x10f)])[_0x32c229(0x10c)]===_0xf297e5[_0x32c229(0x10f)]['length']&&_0xf297e5[_0x32c229(0xc9)][_0x32c229(0xea)]((_0x56b01f,_0xbd637a)=>_0x56b01f['id']===_0xf297e5[_0x32c229(0x10f)][_0xbd637a])&&_0xf297e5[_0x32c229(0xc9)][_0xf297e5[_0x32c229(0xc9)]['length']-0x1]?.['id']===_0xf297e5[_0x32c229(0xc8)]['id']&&isRecord(_0xf297e5[_0x32c229(0xdb)])&&Array[_0x32c229(0xeb)](_0xf297e5['cascade'][_0x32c229(0xf7)])&&_0xf297e5[_0x32c229(0xdb)][_0x32c229(0xf7)][_0x32c229(0xea)](isPositiveInteger)&&typeof _0xf297e5[_0x32c229(0xdb)][_0x32c229(0xbf)]==='boolean'&&Array[_0x32c229(0xeb)](_0xf297e5[_0x32c229(0xb4)])&&_0xf297e5[_0x32c229(0xb4)][_0x32c229(0xea)](_0x2ecdd3=>typeof _0x2ecdd3===_0x32c229(0xef));}function isMenuFact(_0x533294){const _0x4ef8ed=a162_0x3ce4c1;if(!isRecord(_0x533294))return![];return isPositiveInteger(_0x533294['id'])&&(_0x533294[_0x4ef8ed(0x105)]===null||isPositiveInteger(_0x533294[_0x4ef8ed(0x105)]))&&Number[_0x4ef8ed(0xce)](_0x533294[_0x4ef8ed(0xd9)])&&_0x533294[_0x4ef8ed(0xd9)]>=0x0&&typeof _0x533294['label']===_0x4ef8ed(0xef)&&typeof _0x533294[_0x4ef8ed(0xe9)]===_0x4ef8ed(0xef)&&typeof _0x533294[_0x4ef8ed(0x115)]===_0x4ef8ed(0xef)&&(_0x533294['visible']===null||typeof _0x533294['visible']==='boolean')&&(_0x533294[_0x4ef8ed(0xb5)]===null||Number[_0x4ef8ed(0xce)](_0x533294[_0x4ef8ed(0xb5)]))&&Array[_0x4ef8ed(0xeb)](_0x533294[_0x4ef8ed(0xf6)])&&_0x533294[_0x4ef8ed(0xf6)][_0x4ef8ed(0xea)](_0x4169d3=>typeof _0x4169d3==='string')&&typeof _0x533294[_0x4ef8ed(0xe1)]===_0x4ef8ed(0xba)&&Array[_0x4ef8ed(0xeb)](_0x533294['childrenIds'])&&_0x533294['childrenIds']['every'](isPositiveInteger)&&Number[_0x4ef8ed(0xce)](_0x533294[_0x4ef8ed(0xd8)])&&_0x533294[_0x4ef8ed(0xd8)]>=0x0&&(_0x533294['pageId']===null||isPositiveInteger(_0x533294[_0x4ef8ed(0xf4)]))&&typeof _0x533294[_0x4ef8ed(0xe2)]===_0x4ef8ed(0xef)&&typeof _0x533294[_0x4ef8ed(0x102)]===_0x4ef8ed(0xef)&&(_0x533294['datasetId']===null||isPositiveInteger(_0x533294[_0x4ef8ed(0xec)]))&&typeof _0x533294[_0x4ef8ed(0x112)]==='string'&&(_0x533294[_0x4ef8ed(0xb7)]===null||typeof _0x533294[_0x4ef8ed(0xb7)]===_0x4ef8ed(0xef))&&(_0x533294['updateUserName']===null||typeof _0x533294[_0x4ef8ed(0xf0)]===_0x4ef8ed(0xef))&&(_0x533294[_0x4ef8ed(0xee)]===null||typeof _0x533294['updateTime']===_0x4ef8ed(0xef)||typeof _0x533294[_0x4ef8ed(0xee)]==='number')&&(_0x533294[_0x4ef8ed(0xda)]===undefined||_0x533294[_0x4ef8ed(0xda)]===null||isRecord(_0x533294[_0x4ef8ed(0xda)]));}function isTargetFingerprint(_0x383c49){const _0x38ad2b=a162_0x3ce4c1;if(!isRecord(_0x383c49))return![];return isPositiveInteger(_0x383c49['id'])&&(_0x383c49['parentId']===null||isPositiveInteger(_0x383c49['parentId']))&&Number['isInteger'](_0x383c49[_0x38ad2b(0xd9)])&&_0x383c49[_0x38ad2b(0xd9)]>=0x0&&typeof _0x383c49[_0x38ad2b(0xfd)]===_0x38ad2b(0xef)&&typeof _0x383c49[_0x38ad2b(0xe9)]===_0x38ad2b(0xef)&&typeof _0x383c49[_0x38ad2b(0x115)]===_0x38ad2b(0xef)&&(_0x383c49[_0x38ad2b(0xf5)]===null||typeof _0x383c49[_0x38ad2b(0xf5)]===_0x38ad2b(0xba))&&(_0x383c49[_0x38ad2b(0xb5)]===null||Number[_0x38ad2b(0xce)](_0x383c49['sort']))&&(_0x383c49[_0x38ad2b(0xf4)]===null||isPositiveInteger(_0x383c49['pageId']))&&typeof _0x383c49[_0x38ad2b(0xe2)]===_0x38ad2b(0xef)&&typeof _0x383c49['modelType']===_0x38ad2b(0xef)&&(_0x383c49[_0x38ad2b(0xec)]===null||isPositiveInteger(_0x383c49[_0x38ad2b(0xec)]))&&typeof _0x383c49[_0x38ad2b(0x112)]===_0x38ad2b(0xef)&&Array[_0x38ad2b(0xeb)](_0x383c49['childrenIds'])&&_0x383c49[_0x38ad2b(0x10b)][_0x38ad2b(0xea)](isPositiveInteger)&&Number['isInteger'](_0x383c49[_0x38ad2b(0xd8)])&&_0x383c49[_0x38ad2b(0xd8)]>=0x0&&typeof _0x383c49['resourcesValid']===_0x38ad2b(0xba)&&typeof _0x383c49[_0x38ad2b(0xc0)]===_0x38ad2b(0xef)&&/^[a-f0-9]{64}$/['test'](_0x383c49[_0x38ad2b(0xc0)])&&typeof _0x383c49[_0x38ad2b(0xfe)]===_0x38ad2b(0xef)&&/^[a-f0-9]{64}$/[_0x38ad2b(0x103)](_0x383c49[_0x38ad2b(0xfe)])&&(_0x383c49['updateTime']===null||typeof _0x383c49[_0x38ad2b(0xee)]===_0x38ad2b(0xef)||typeof _0x383c49[_0x38ad2b(0xee)]===_0x38ad2b(0xc2));}function isRecord(_0x428a88){const _0x1c6a2f=a162_0x3ce4c1;return typeof _0x428a88===_0x1c6a2f(0x118)&&_0x428a88!==null&&!Array[_0x1c6a2f(0xeb)](_0x428a88);}function isPositiveInteger(_0x59912c){return Number['isSafeInteger'](_0x59912c)&&Number(_0x59912c)>0x0;}function errorMessage(_0xc86ea){return _0xc86ea instanceof Error?_0xc86ea['message']:String(_0xc86ea);}
1
+ (function(_0x2d232b,_0x4b632a){const _0x3429a4=a163_0x5319,_0x2b334f=_0x2d232b();while(!![]){try{const _0xa19684=parseInt(_0x3429a4(0x7d))/0x1+-parseInt(_0x3429a4(0x95))/0x2*(-parseInt(_0x3429a4(0x92))/0x3)+-parseInt(_0x3429a4(0xbc))/0x4*(-parseInt(_0x3429a4(0x99))/0x5)+parseInt(_0x3429a4(0x73))/0x6+parseInt(_0x3429a4(0x67))/0x7+parseInt(_0x3429a4(0xb3))/0x8*(-parseInt(_0x3429a4(0x71))/0x9)+parseInt(_0x3429a4(0x6e))/0xa*(-parseInt(_0x3429a4(0xa8))/0xb);if(_0xa19684===_0x4b632a)break;else _0x2b334f['push'](_0x2b334f['shift']());}catch(_0x2067b7){_0x2b334f['push'](_0x2b334f['shift']());}}}(a163_0x27c2,0x98e94));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='menu\x20delete',PLAN_TTL_MS=0x1e*0x3c*0x3e8,MAX_PLAN_BYTES=0x400*0x400;export function createMenuDeletePlanFile(_0x7287ac,_0x451e77,_0xbdfbcd=new Date()){const _0xf248dd=a163_0x5319;if(!_0x451e77[_0xf248dd(0x87)]||!isMenuFact(_0x451e77[_0xf248dd(0x87)]))throw menuError('menu_plan_invalid',_0xf248dd(0xab));const _0x5a2f2e=_0x451e77[_0xf248dd(0xb0)]?.[_0xf248dd(0x81)]?_0x451e77[_0xf248dd(0xb0)]:[_0x451e77[_0xf248dd(0x87)]],_0x22bd3d=_0x451e77[_0xf248dd(0x91)]?.[_0xf248dd(0x81)]?_0x451e77[_0xf248dd(0x91)]:_0x5a2f2e['map'](_0x6498c4=>_0x6498c4['id']);return{'version':PLAN_VERSION,'command':PLAN_COMMAND,'appCode':_0x7287ac,'createdAt':_0xbdfbcd[_0xf248dd(0x89)](),'expiresAt':new Date(_0xbdfbcd[_0xf248dd(0x9f)]()+PLAN_TTL_MS)[_0xf248dd(0x89)](),'snapshotHash':_0x451e77['snapshotHash'],'recursive':_0x451e77[_0xf248dd(0x86)]['recursive']===!![],'target':_0x451e77[_0xf248dd(0x87)],'targetFingerprint':fingerprint(_0x451e77['before']),'targets':_0x5a2f2e,'targetFingerprints':_0x5a2f2e[_0xf248dd(0x6b)](fingerprint),'deleteOrder':_0x22bd3d,'cascade':_0x451e77[_0xf248dd(0x8c)]??{'pages':_0x451e77[_0xf248dd(0x87)][_0xf248dd(0x8a)]==null?[]:[_0x451e77['before'][_0xf248dd(0x8a)]],'pageSchemaAffected':_0x451e77['before'][_0xf248dd(0x8a)]!=null},'warnings':[..._0x451e77[_0xf248dd(0xbe)]]};}export async function writeMenuDeletePlan(_0x616c8,_0xa8ebd3){const _0xd079e0=a163_0x5319,_0x6719ae=resolvePlanPath(_0x616c8,'plan-out');await mkdir(dirname(_0x6719ae),{'recursive':!![]});try{await writeFile(_0x6719ae,JSON[_0xd079e0(0x96)](_0xa8ebd3,null,0x2)+'\x0a',{'encoding':'utf8','flag':'wx'});}catch(_0x15693c){if(_0x15693c[_0xd079e0(0x9b)]===_0xd079e0(0x8e))throw menuError(_0xd079e0(0x80),_0xd079e0(0x64)+_0x6719ae,_0xd079e0(0xa5));throw menuError(_0xd079e0(0xc1),_0xd079e0(0xba)+_0x6719ae+':\x20'+errorMessage(_0x15693c));}return _0x6719ae;}export async function readMenuDeletePlan(_0x5b74fe){const _0x1f8350=a163_0x5319,_0x5c2ee5=resolvePlanPath(_0x5b74fe,'plan');let _0x42a819;try{_0x42a819=(await stat(_0x5c2ee5))['size'];}catch(_0x4c7cef){throw menuError(_0x1f8350(0x93),'Cannot\x20read\x20menu\x20delete\x20plan\x20'+_0x5c2ee5+':\x20'+errorMessage(_0x4c7cef));}if(_0x42a819>MAX_PLAN_BYTES)throw menuError(_0x1f8350(0x93),_0x1f8350(0xbd)+_0x42a819+_0x1f8350(0x7a));let _0x31ac6d;try{_0x31ac6d=JSON[_0x1f8350(0xc0)](await readFile(_0x5c2ee5,'utf8'));}catch(_0x410426){throw menuError(_0x1f8350(0x93),_0x1f8350(0x70)+errorMessage(_0x410426));}if(!isMenuDeletePlanFile(_0x31ac6d))throw menuError(_0x1f8350(0x93),'Menu\x20delete\x20plan\x20does\x20not\x20match\x20version\x20'+PLAN_VERSION+_0x1f8350(0xa0)+PLAN_COMMAND+_0x1f8350(0x7b));if(!sameFingerprint(_0x31ac6d[_0x1f8350(0xaf)],fingerprint(_0x31ac6d[_0x1f8350(0x7f)])))throw menuError(_0x1f8350(0x93),_0x1f8350(0xb9),_0x1f8350(0xa4));if(!_0x31ac6d[_0x1f8350(0xb0)][_0x1f8350(0x88)]((_0x9cb887,_0x949579)=>sameFingerprint(_0x31ac6d[_0x1f8350(0xc5)][_0x949579],fingerprint(_0x9cb887)))||!sameFingerprint(_0x31ac6d['targetFingerprint'],fingerprint(_0x31ac6d[_0x1f8350(0xb0)][_0x31ac6d[_0x1f8350(0xb0)][_0x1f8350(0x81)]-0x1])))throw menuError(_0x1f8350(0x93),_0x1f8350(0x78),_0x1f8350(0xa4));return{'path':_0x5c2ee5,'plan':_0x31ac6d};}function a163_0x5319(_0x15d3e6,_0x30e2f6){_0x15d3e6=_0x15d3e6-0x64;const _0x27c204=a163_0x27c2();let _0x5319e6=_0x27c204[_0x15d3e6];return _0x5319e6;}export function mutationPlanFromDeleteFile(_0xccb86c,_0x21edb2){const _0x300f2=a163_0x5319;return mutationResult({'operation':_0x300f2(0x69),'selector':{'id':_0xccb86c[_0x300f2(0x7f)]['id'],'recursive':_0xccb86c['recursive']},'before':_0xccb86c[_0x300f2(0x7f)],'after':null,'dryRun':![],'backend':[{'method':_0x300f2(0x82),'path':'/smartapi/menu/batchDelete'}],'plannedActions':[{'stage':_0x300f2(0x94),'method':'POST','path':_0x300f2(0x85),'body':{'idList':_0xccb86c[_0x300f2(0x91)]}}],'targets':_0xccb86c['targets'],'deleteOrder':_0xccb86c[_0x300f2(0x91)],'snapshotHash':_0xccb86c[_0x300f2(0x66)],'cascade':_0xccb86c[_0x300f2(0x8c)],'planFile':{'path':_0x21edb2,'createdAt':_0xccb86c[_0x300f2(0xa6)],'expiresAt':_0xccb86c[_0x300f2(0x65)]},'warnings':_0xccb86c[_0x300f2(0xbe)]});}export function assertMenuDeletePlanCurrent(_0x5d9dc0,_0x249427,_0x4b6759,_0x4608fb=new Date()){const _0x479f7a=a163_0x5319;assertMenuDeletePlanExecutable(_0x5d9dc0,_0x249427,_0x4608fb);if(_0x4b6759['hash']!==_0x5d9dc0[_0x479f7a(0x66)])throw menuError('menu_state_drift',_0x479f7a(0x9c),'Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out\x20and\x20review\x20the\x20latest\x20cascade.');return _0x5d9dc0[_0x479f7a(0xb0)][_0x479f7a(0x6b)]((_0x2038f4,_0x5a7bf7)=>{const _0x62c8c=_0x479f7a,_0x116d17=_0x4b6759[_0x62c8c(0x72)][_0x62c8c(0xb1)](_0x2038f4['id']);if(!_0x116d17)throw menuError(_0x62c8c(0x98),_0x62c8c(0x8b)+_0x2038f4['id']+_0x62c8c(0x9e));if(!sameFingerprint(_0x5d9dc0[_0x62c8c(0xc5)][_0x5a7bf7],fingerprint(_0x116d17)))throw menuError(_0x62c8c(0x98),_0x62c8c(0x8b)+_0x2038f4['id']+_0x62c8c(0xc2),'Generate\x20a\x20new\x20plan\x20and\x20review\x20parent,\x20path,\x20page,\x20children,\x20resources,\x20and\x20update\x20time.');return _0x116d17;});}function a163_0x27c2(){const _0x404808=['Menu\x20delete\x20plan\x20targets\x20app\x20','Refusing\x20to\x20overwrite\x20existing\x20menu\x20delete\x20plan:\x20','expiresAt','snapshotHash','857486tgfxah','label','delete','update','map','extendHash','string','6730fLaFJu','number','Menu\x20delete\x20plan\x20is\x20not\x20valid\x20JSON:\x20','9pfQlWt','byId','1928094buNrmE','updateUserName','path','parentId','childrenCount','Menu\x20delete\x20plan\x20target\x20list\x20does\x20not\x20match\x20its\x20immutable\x20fingerprints.','datasetId','\x20bytes.','\x20contract.','childrenIds','223126DTDkIk','\x20requires\x20a\x20non-empty\x20file\x20path.','target','menu_plan_file_exists','length','POST','isArray','isFinite','/smartapi/menu/batchDelete','selector','before','every','toISOString','pageId','Planned\x20menu\x20','cascade','digest','EEXIST','pageSchemaAffected','type','deleteOrder','3420369wySPCV','menu_plan_invalid','batch-delete-menu','2snMhpF','stringify','recursive','menu_state_drift','72620iVvuIG','sort','code','Online\x20menu\x20state\x20changed\x20after\x20the\x20delete\x20plan\x20was\x20reviewed.','boolean','\x20is\x20no\x20longer\x20present\x20in\x20the\x20online\x20menu\x20tree.','getTime','\x20of\x20the\x20','test','pages','visible','Generate\x20a\x20new\x20plan\x20with\x20--dry-run\x20--plan-out;\x20do\x20not\x20edit\x20target\x20fields\x20manually.','Choose\x20a\x20new\x20--plan-out\x20path\x20so\x20the\x20reviewed\x20plan\x20remains\x20immutable.','createdAt','appCode','28391RADLYw','resources','resourcesValid','Cannot\x20create\x20a\x20menu\x20delete\x20plan\x20without\x20an\x20exact\x20target\x20snapshot.','message','extend','modelType','targetFingerprint','targets','get','sha256','2637784kACdFi','updateTime','Menu\x20delete\x20plan\x20expired\x20at\x20','resourcesHash','isInteger','menu_plan_app_mismatch','Menu\x20delete\x20plan\x20target\x20facts\x20do\x20not\x20match\x20its\x20immutable\x20fingerprint.','Failed\x20to\x20write\x20menu\x20delete\x20plan\x20','updateUserId','244GoAxSF','Menu\x20delete\x20plan\x20is\x20too\x20large:\x20','warnings','datasetCode','parse','menu_plan_write_failed','\x20no\x20longer\x20matches\x20the\x20reviewed\x20target\x20facts.','depth','version','targetFingerprints'];a163_0x27c2=function(){return _0x404808;};return a163_0x27c2();}export function assertMenuDeletePlanExecutable(_0x6d7146,_0x227d0f,_0xa768ee=new Date()){const _0x141e97=a163_0x5319;if(_0x6d7146[_0x141e97(0xa7)]!==_0x227d0f)throw menuError(_0x141e97(0xb8),_0x141e97(0xc6)+JSON[_0x141e97(0x96)](_0x6d7146[_0x141e97(0xa7)])+',\x20current\x20app\x20is\x20'+JSON[_0x141e97(0x96)](_0x227d0f)+'.');const _0x4c43ca=Date[_0x141e97(0xc0)](_0x6d7146[_0x141e97(0xa6)]),_0x5ba5ce=Date['parse'](_0x6d7146['expiresAt']);if(!Number[_0x141e97(0x84)](_0x4c43ca)||!Number[_0x141e97(0x84)](_0x5ba5ce)||_0x5ba5ce-_0x4c43ca!==PLAN_TTL_MS)throw menuError(_0x141e97(0x93),'Menu\x20delete\x20plan\x20has\x20invalid\x20timestamps.');if(_0x4c43ca>_0xa768ee['getTime']())throw menuError(_0x141e97(0x93),'Menu\x20delete\x20plan\x20creation\x20time\x20'+_0x6d7146[_0x141e97(0xa6)]+'\x20is\x20in\x20the\x20future.','Generate\x20a\x20new\x20plan\x20on\x20a\x20machine\x20with\x20a\x20correct\x20system\x20clock.');if(_0xa768ee[_0x141e97(0x9f)]()>_0x5ba5ce)throw menuError('menu_plan_expired',_0x141e97(0xb5)+_0x6d7146['expiresAt']+'.','Generate\x20and\x20review\x20a\x20new\x20plan\x20before\x20deleting.');}function fingerprint(_0x50b089){const _0x456a57=a163_0x5319;return{'id':_0x50b089['id'],'parentId':_0x50b089[_0x456a57(0x76)],'depth':_0x50b089[_0x456a57(0xc3)],'label':_0x50b089[_0x456a57(0x68)],'path':_0x50b089[_0x456a57(0x75)],'type':_0x50b089[_0x456a57(0x90)],'visible':_0x50b089[_0x456a57(0xa3)],'sort':_0x50b089['sort'],'pageId':_0x50b089[_0x456a57(0x8a)],'pageType':_0x50b089['pageType'],'modelType':_0x50b089[_0x456a57(0xae)],'datasetId':_0x50b089[_0x456a57(0x79)],'datasetCode':_0x50b089['datasetCode'],'childrenIds':[..._0x50b089[_0x456a57(0x7c)]],'childrenCount':_0x50b089[_0x456a57(0x77)],'resourcesValid':_0x50b089[_0x456a57(0xaa)],'resourcesHash':hashValue(_0x50b089[_0x456a57(0xa9)]),'extendHash':hashValue(_0x50b089[_0x456a57(0xad)]??null),'updateTime':_0x50b089['updateTime']};}function hashValue(_0x2d25be){const _0x4fd3f7=a163_0x5319;return createHash(_0x4fd3f7(0xb2))[_0x4fd3f7(0x6a)](JSON['stringify'](_0x2d25be))[_0x4fd3f7(0x8d)]('hex');}function sameFingerprint(_0x42271b,_0x4b806d){const _0x38101f=a163_0x5319;return JSON['stringify'](_0x42271b)===JSON[_0x38101f(0x96)](_0x4b806d);}function resolvePlanPath(_0x54a9e6,_0x398be1){const _0x2d79ea=a163_0x5319,_0x477895=_0x54a9e6['trim']();if(!_0x477895)throw menuError(_0x2d79ea(0x93),'--'+_0x398be1+_0x2d79ea(0x7e));return resolve(_0x477895);}function isMenuDeletePlanFile(_0x4cb973){const _0x182491=a163_0x5319;if(!isRecord(_0x4cb973))return![];return _0x4cb973[_0x182491(0xc4)]===PLAN_VERSION&&_0x4cb973['command']===PLAN_COMMAND&&typeof _0x4cb973[_0x182491(0xa7)]===_0x182491(0x6d)&&_0x4cb973[_0x182491(0xa7)][_0x182491(0x81)]>0x0&&typeof _0x4cb973['createdAt']==='string'&&typeof _0x4cb973[_0x182491(0x65)]==='string'&&typeof _0x4cb973[_0x182491(0x66)]===_0x182491(0x6d)&&/^sha256:[a-f0-9]{64}$/[_0x182491(0xa1)](_0x4cb973[_0x182491(0x66)])&&typeof _0x4cb973[_0x182491(0x97)]==='boolean'&&isMenuFact(_0x4cb973[_0x182491(0x7f)])&&isTargetFingerprint(_0x4cb973[_0x182491(0xaf)])&&Array[_0x182491(0x83)](_0x4cb973['targets'])&&_0x4cb973[_0x182491(0xb0)][_0x182491(0x81)]>0x0&&_0x4cb973[_0x182491(0xb0)][_0x182491(0x88)](isMenuFact)&&Array[_0x182491(0x83)](_0x4cb973[_0x182491(0xc5)])&&_0x4cb973[_0x182491(0xc5)][_0x182491(0x81)]===_0x4cb973['targets'][_0x182491(0x81)]&&_0x4cb973[_0x182491(0xc5)][_0x182491(0x88)](isTargetFingerprint)&&Array[_0x182491(0x83)](_0x4cb973[_0x182491(0x91)])&&_0x4cb973[_0x182491(0x91)][_0x182491(0x81)]===_0x4cb973['targets'][_0x182491(0x81)]&&_0x4cb973[_0x182491(0x91)][_0x182491(0x88)](isPositiveInteger)&&new Set(_0x4cb973['deleteOrder'])['size']===_0x4cb973[_0x182491(0x91)][_0x182491(0x81)]&&_0x4cb973[_0x182491(0xb0)][_0x182491(0x88)]((_0x2774a1,_0x4cdb4)=>_0x2774a1['id']===_0x4cb973[_0x182491(0x91)][_0x4cdb4])&&_0x4cb973[_0x182491(0xb0)][_0x4cb973['targets'][_0x182491(0x81)]-0x1]?.['id']===_0x4cb973['target']['id']&&isRecord(_0x4cb973[_0x182491(0x8c)])&&Array[_0x182491(0x83)](_0x4cb973[_0x182491(0x8c)][_0x182491(0xa2)])&&_0x4cb973[_0x182491(0x8c)][_0x182491(0xa2)][_0x182491(0x88)](isPositiveInteger)&&typeof _0x4cb973[_0x182491(0x8c)][_0x182491(0x8f)]===_0x182491(0x9d)&&Array['isArray'](_0x4cb973[_0x182491(0xbe)])&&_0x4cb973[_0x182491(0xbe)][_0x182491(0x88)](_0x1c4214=>typeof _0x1c4214==='string');}function isMenuFact(_0x38a96b){const _0x2623a8=a163_0x5319;if(!isRecord(_0x38a96b))return![];return isPositiveInteger(_0x38a96b['id'])&&(_0x38a96b[_0x2623a8(0x76)]===null||isPositiveInteger(_0x38a96b['parentId']))&&Number[_0x2623a8(0xb7)](_0x38a96b[_0x2623a8(0xc3)])&&_0x38a96b[_0x2623a8(0xc3)]>=0x0&&typeof _0x38a96b['label']==='string'&&typeof _0x38a96b[_0x2623a8(0x75)]===_0x2623a8(0x6d)&&typeof _0x38a96b[_0x2623a8(0x90)]===_0x2623a8(0x6d)&&(_0x38a96b[_0x2623a8(0xa3)]===null||typeof _0x38a96b[_0x2623a8(0xa3)]==='boolean')&&(_0x38a96b[_0x2623a8(0x9a)]===null||Number[_0x2623a8(0xb7)](_0x38a96b['sort']))&&Array['isArray'](_0x38a96b[_0x2623a8(0xa9)])&&_0x38a96b[_0x2623a8(0xa9)]['every'](_0x221ae3=>typeof _0x221ae3===_0x2623a8(0x6d))&&typeof _0x38a96b[_0x2623a8(0xaa)]===_0x2623a8(0x9d)&&Array[_0x2623a8(0x83)](_0x38a96b[_0x2623a8(0x7c)])&&_0x38a96b[_0x2623a8(0x7c)][_0x2623a8(0x88)](isPositiveInteger)&&Number[_0x2623a8(0xb7)](_0x38a96b[_0x2623a8(0x77)])&&_0x38a96b['childrenCount']>=0x0&&(_0x38a96b[_0x2623a8(0x8a)]===null||isPositiveInteger(_0x38a96b[_0x2623a8(0x8a)]))&&typeof _0x38a96b['pageType']==='string'&&typeof _0x38a96b[_0x2623a8(0xae)]===_0x2623a8(0x6d)&&(_0x38a96b[_0x2623a8(0x79)]===null||isPositiveInteger(_0x38a96b['datasetId']))&&typeof _0x38a96b[_0x2623a8(0xbf)]==='string'&&(_0x38a96b['updateUserId']===null||typeof _0x38a96b[_0x2623a8(0xbb)]===_0x2623a8(0x6d))&&(_0x38a96b['updateUserName']===null||typeof _0x38a96b[_0x2623a8(0x74)]===_0x2623a8(0x6d))&&(_0x38a96b[_0x2623a8(0xb4)]===null||typeof _0x38a96b[_0x2623a8(0xb4)]===_0x2623a8(0x6d)||typeof _0x38a96b[_0x2623a8(0xb4)]===_0x2623a8(0x6f))&&(_0x38a96b[_0x2623a8(0xad)]===undefined||_0x38a96b[_0x2623a8(0xad)]===null||isRecord(_0x38a96b['extend']));}function isTargetFingerprint(_0x21013c){const _0x347516=a163_0x5319;if(!isRecord(_0x21013c))return![];return isPositiveInteger(_0x21013c['id'])&&(_0x21013c['parentId']===null||isPositiveInteger(_0x21013c[_0x347516(0x76)]))&&Number[_0x347516(0xb7)](_0x21013c[_0x347516(0xc3)])&&_0x21013c[_0x347516(0xc3)]>=0x0&&typeof _0x21013c[_0x347516(0x68)]===_0x347516(0x6d)&&typeof _0x21013c[_0x347516(0x75)]==='string'&&typeof _0x21013c[_0x347516(0x90)]==='string'&&(_0x21013c[_0x347516(0xa3)]===null||typeof _0x21013c[_0x347516(0xa3)]==='boolean')&&(_0x21013c['sort']===null||Number[_0x347516(0xb7)](_0x21013c[_0x347516(0x9a)]))&&(_0x21013c['pageId']===null||isPositiveInteger(_0x21013c[_0x347516(0x8a)]))&&typeof _0x21013c['pageType']==='string'&&typeof _0x21013c[_0x347516(0xae)]==='string'&&(_0x21013c['datasetId']===null||isPositiveInteger(_0x21013c[_0x347516(0x79)]))&&typeof _0x21013c[_0x347516(0xbf)]===_0x347516(0x6d)&&Array[_0x347516(0x83)](_0x21013c['childrenIds'])&&_0x21013c[_0x347516(0x7c)][_0x347516(0x88)](isPositiveInteger)&&Number[_0x347516(0xb7)](_0x21013c['childrenCount'])&&_0x21013c[_0x347516(0x77)]>=0x0&&typeof _0x21013c[_0x347516(0xaa)]===_0x347516(0x9d)&&typeof _0x21013c[_0x347516(0xb6)]===_0x347516(0x6d)&&/^[a-f0-9]{64}$/[_0x347516(0xa1)](_0x21013c['resourcesHash'])&&typeof _0x21013c['extendHash']===_0x347516(0x6d)&&/^[a-f0-9]{64}$/[_0x347516(0xa1)](_0x21013c[_0x347516(0x6c)])&&(_0x21013c[_0x347516(0xb4)]===null||typeof _0x21013c['updateTime']===_0x347516(0x6d)||typeof _0x21013c[_0x347516(0xb4)]==='number');}function isRecord(_0x3887d6){const _0x101d15=a163_0x5319;return typeof _0x3887d6==='object'&&_0x3887d6!==null&&!Array[_0x101d15(0x83)](_0x3887d6);}function isPositiveInteger(_0x2f09e9){return Number['isSafeInteger'](_0x2f09e9)&&Number(_0x2f09e9)>0x0;}function errorMessage(_0x26467e){const _0x1c1412=a163_0x5319;return _0x26467e instanceof Error?_0x26467e[_0x1c1412(0xac)]:String(_0x26467e);}
@@ -1 +1 @@
1
- (function(_0x4a2e3f,_0x48e394){const _0x52ff47=a163_0x2ce9,_0x5b8d18=_0x4a2e3f();while(!![]){try{const _0x2dab5c=parseInt(_0x52ff47(0xe2))/0x1+-parseInt(_0x52ff47(0xdb))/0x2+parseInt(_0x52ff47(0xe3))/0x3*(parseInt(_0x52ff47(0xbe))/0x4)+-parseInt(_0x52ff47(0xdc))/0x5+parseInt(_0x52ff47(0xb8))/0x6+-parseInt(_0x52ff47(0xc7))/0x7+parseInt(_0x52ff47(0xbc))/0x8*(parseInt(_0x52ff47(0xcf))/0x9);if(_0x2dab5c===_0x48e394)break;else _0x5b8d18['push'](_0x5b8d18['shift']());}catch(_0x3e63eb){_0x5b8d18['push'](_0x5b8d18['shift']());}}}(a163_0x2e6c,0x753dd));import{createHash}from'node:crypto';import{getMenuTree}from'../../../core/api-client.js';export async function fetchMenuSnapshot(_0x49a7fb,_0x6ec1a,_0x19a891={}){const _0x4d73bf=a163_0x2ce9,_0x50e4e7=await getMenuTree(_0x49a7fb,_0x6ec1a);return buildMenuSnapshot(Array[_0x4d73bf(0xd3)](_0x50e4e7)?_0x50e4e7:[],_0x19a891);}export function buildMenuSnapshot(_0x459fa3,_0x400713={}){const _0x55378a=a163_0x2ce9,_0x7a7678=flattenMenuItems(_0x459fa3,{'verbose':_0x400713['verbose']===!![],'parentId':null,'depth':0x0}),_0x312318=new Map(_0x7a7678[_0x55378a(0xc2)](_0x527269=>[_0x527269['id'],_0x527269])),_0x4d0ff3=createHash(_0x55378a(0xc5))[_0x55378a(0xe1)](JSON['stringify'](_0x7a7678['map'](toHashInput)))[_0x55378a(0xcd)](_0x55378a(0xd6));return{'total':_0x7a7678[_0x55378a(0xe0)],'hash':_0x55378a(0xc4)+_0x4d0ff3,'menus':_0x7a7678,'byId':_0x312318};}export function toProcessedMenuItem(_0x525ab1){const _0x3e1458=a163_0x2ce9;return{'id':_0x525ab1['id'],'path':_0x525ab1[_0x3e1458(0xb6)],'label':_0x525ab1[_0x3e1458(0xd8)],'resources':[..._0x525ab1['resources']],'extend':_0x525ab1['extend']??null};}function a163_0x2e6c(){const _0x456a3e=['2495270eVXybJ','resourcesValid','index','POSITIVE_INFINITY','length','update','578263HBIlmX','150906DiwAmW','path','updateUserName','1612002FvLzVA','visible','resources','filter','16aDmRKC','children','44fDIENG','depth','extend','pageId','map','modelType','sha256:','sha256','item','3720822QRAhnE','verbose','values','isFinite','string','push','digest','boolean','3595905cJBqDW','type','parse','parentId','isArray','sort','number','hex','datasetCode','label','datasetId','updateUserId','1377042DbpJXP'];a163_0x2e6c=function(){return _0x456a3e;};return a163_0x2e6c();}export function toMenuListItem(_0x21b4fd){const {modelType:_0x41f5d4,datasetId:_0x3b8d70,datasetCode:_0x1b7a4b,resourcesValid:_0x42df4a,..._0x5b9b92}=_0x21b4fd;return _0x5b9b92;}export function getChildren(_0x4f6844,_0x2273f5){const _0x3e18e3=a163_0x2ce9;return _0x4f6844['menus'][_0x3e18e3(0xbb)](_0x42fcf2=>_0x42fcf2[_0x3e18e3(0xd2)]===_0x2273f5);}function flattenMenuItems(_0xb0f613,_0xa3c05d){const _0x50b61b=a163_0x2ce9,_0x4a5466=sortMenuItems(_0xb0f613),_0xc871bb=[];for(const _0x317a77 of _0x4a5466){const _0x2ccfbb=sortMenuItems(Array['isArray'](_0x317a77[_0x50b61b(0xbd)])?_0x317a77[_0x50b61b(0xbd)]:[]);_0xc871bb['push'](toMenuFact(_0x317a77,_0x2ccfbb,_0xa3c05d)),_0x2ccfbb[_0x50b61b(0xe0)]>0x0&&_0xc871bb[_0x50b61b(0xcc)](...flattenMenuItems(_0x2ccfbb,{'verbose':_0xa3c05d['verbose'],'parentId':_0x317a77['id'],'depth':_0xa3c05d[_0x50b61b(0xbf)]+0x1}));}return _0xc871bb;}function sortMenuItems(_0x461dc2){const _0x21d46f=a163_0x2ce9;return _0x461dc2[_0x21d46f(0xc2)]((_0x58e35a,_0xbe01af)=>({'item':_0x58e35a,'index':_0xbe01af}))[_0x21d46f(0xd4)]((_0x5e2a14,_0x197007)=>{const _0x306437=_0x21d46f,_0x36f051=normalizeSort(_0x5e2a14['item']['sort']),_0x45e6a1=normalizeSort(_0x197007[_0x306437(0xc6)][_0x306437(0xd4)]);if(_0x36f051!==_0x45e6a1)return _0x36f051-_0x45e6a1;return _0x5e2a14[_0x306437(0xde)]-_0x197007['index'];})[_0x21d46f(0xc2)](({item:_0x5d12bc})=>_0x5d12bc);}function toMenuFact(_0x3ffe85,_0x816c8f,_0x2c164d){const _0x639751=a163_0x2ce9,_0x19f9b3=normalizeResourceValue(_0x3ffe85[_0x639751(0xc0)]?.[_0x639751(0xba)]),_0x1f5024={'id':_0x3ffe85['id'],'parentId':_0x2c164d[_0x639751(0xd2)],'depth':_0x2c164d['depth'],'label':normalizeString(_0x3ffe85['label']),'path':normalizeString(_0x3ffe85['path']),'url':normalizeString(_0x3ffe85['url']),'type':normalizeString(_0x3ffe85[_0x639751(0xd0)]),'visible':typeof _0x3ffe85[_0x639751(0xb9)]===_0x639751(0xce)?_0x3ffe85['visible']:null,'sort':typeof _0x3ffe85[_0x639751(0xd4)]==='number'&&Number[_0x639751(0xca)](_0x3ffe85['sort'])?_0x3ffe85[_0x639751(0xd4)]:null,'resources':_0x19f9b3[_0x639751(0xc9)],'resourcesValid':_0x19f9b3['valid'],'childrenIds':_0x816c8f[_0x639751(0xc2)](_0x521237=>_0x521237['id']),'childrenCount':_0x816c8f[_0x639751(0xe0)],'pageId':normalizeNullableNumber(_0x3ffe85['pageId']),'pageType':normalizeString(_0x3ffe85['pageType']),'modelType':normalizeString(_0x3ffe85['modelType']),'datasetId':normalizeNullableNumber(_0x3ffe85[_0x639751(0xd9)]),'datasetCode':normalizeString(_0x3ffe85[_0x639751(0xd7)]),'updateUserId':normalizeNullableString(_0x3ffe85[_0x639751(0xda)]),'updateUserName':normalizeNullableString(_0x3ffe85[_0x639751(0xb7)]),'updateTime':normalizeNullableTimestamp(_0x3ffe85['updateTime'])};return _0x2c164d[_0x639751(0xc8)]&&(_0x1f5024[_0x639751(0xc0)]=_0x3ffe85[_0x639751(0xc0)]??null),_0x1f5024;}function toHashInput(_0x1b52d9){const _0x298b9c=a163_0x2ce9;return{'id':_0x1b52d9['id'],'parentId':_0x1b52d9[_0x298b9c(0xd2)],'label':_0x1b52d9[_0x298b9c(0xd8)],'path':_0x1b52d9[_0x298b9c(0xb6)],'url':_0x1b52d9['url'],'type':_0x1b52d9['type'],'visible':_0x1b52d9[_0x298b9c(0xb9)],'sort':_0x1b52d9[_0x298b9c(0xd4)],'resources':_0x1b52d9[_0x298b9c(0xba)],'resourcesValid':_0x1b52d9[_0x298b9c(0xdd)],'childrenIds':_0x1b52d9['childrenIds'],'pageId':_0x1b52d9[_0x298b9c(0xc1)],'pageType':_0x1b52d9['pageType'],'modelType':_0x1b52d9[_0x298b9c(0xc3)],'datasetId':_0x1b52d9['datasetId'],'datasetCode':_0x1b52d9[_0x298b9c(0xd7)],'updateUserId':_0x1b52d9[_0x298b9c(0xda)],'updateUserName':_0x1b52d9[_0x298b9c(0xb7)],'updateTime':_0x1b52d9['updateTime']};}function normalizeSort(_0x28f62d){const _0x53ee05=a163_0x2ce9;return typeof _0x28f62d==='number'&&Number[_0x53ee05(0xca)](_0x28f62d)?_0x28f62d:Number[_0x53ee05(0xdf)];}function normalizeString(_0x316a93){return typeof _0x316a93==='string'?_0x316a93:'';}function a163_0x2ce9(_0x5f8814,_0x411be6){_0x5f8814=_0x5f8814-0xb6;const _0x2e6c4e=a163_0x2e6c();let _0x2ce96d=_0x2e6c4e[_0x5f8814];return _0x2ce96d;}function normalizeNullableNumber(_0x515d8e){const _0x3f5d0b=a163_0x2ce9;return typeof _0x515d8e==='number'&&Number[_0x3f5d0b(0xca)](_0x515d8e)?_0x515d8e:null;}function normalizeNullableString(_0x5bf160){const _0x1fe435=a163_0x2ce9;return typeof _0x5bf160===_0x1fe435(0xcb)&&_0x5bf160[_0x1fe435(0xe0)]>0x0?_0x5bf160:null;}function normalizeNullableTimestamp(_0x5278c0){const _0x483b5b=a163_0x2ce9;if(typeof _0x5278c0===_0x483b5b(0xcb))return _0x5278c0[_0x483b5b(0xe0)]>0x0?_0x5278c0:null;return typeof _0x5278c0===_0x483b5b(0xd5)&&Number[_0x483b5b(0xca)](_0x5278c0)?_0x5278c0:null;}export function normalizeResources(_0x256f4f){const _0x7da883=a163_0x2ce9;return normalizeResourceValue(_0x256f4f)[_0x7da883(0xc9)];}function normalizeResourceValue(_0x80b2e2){const _0x23ce4f=a163_0x2ce9;if(_0x80b2e2==null)return{'values':[],'valid':!![]};if(Array[_0x23ce4f(0xd3)](_0x80b2e2))return{'values':_0x80b2e2[_0x23ce4f(0xc2)](String),'valid':!![]};if(typeof _0x80b2e2!==_0x23ce4f(0xcb))return{'values':[],'valid':![]};try{const _0x30b3b9=JSON[_0x23ce4f(0xd1)](_0x80b2e2);return Array[_0x23ce4f(0xd3)](_0x30b3b9)?{'values':_0x30b3b9[_0x23ce4f(0xc2)](String),'valid':!![]}:{'values':[],'valid':![]};}catch{return{'values':[],'valid':![]};}}
1
+ (function(_0x1ad3d5,_0x145c7c){const _0x131596=a164_0x2b0e,_0x51fe38=_0x1ad3d5();while(!![]){try{const _0x3acd99=-parseInt(_0x131596(0xa7))/0x1*(-parseInt(_0x131596(0xa9))/0x2)+-parseInt(_0x131596(0xbf))/0x3*(parseInt(_0x131596(0xb7))/0x4)+parseInt(_0x131596(0x9c))/0x5+parseInt(_0x131596(0xb1))/0x6+-parseInt(_0x131596(0x9e))/0x7+parseInt(_0x131596(0xc3))/0x8*(-parseInt(_0x131596(0xc1))/0x9)+parseInt(_0x131596(0x94))/0xa;if(_0x3acd99===_0x145c7c)break;else _0x51fe38['push'](_0x51fe38['shift']());}catch(_0xdcad7){_0x51fe38['push'](_0x51fe38['shift']());}}}(a164_0x466d,0x8865a));import{createHash}from'node:crypto';import{getMenuTree}from'../../../core/api-client.js';export async function fetchMenuSnapshot(_0x19e0c6,_0x109549,_0x52ed4e={}){const _0x552928=await getMenuTree(_0x19e0c6,_0x109549);return buildMenuSnapshot(Array['isArray'](_0x552928)?_0x552928:[],_0x52ed4e);}export function buildMenuSnapshot(_0xa23b1c,_0x1f67b8={}){const _0x51b008=a164_0x2b0e,_0x4ff5bf=flattenMenuItems(_0xa23b1c,{'verbose':_0x1f67b8[_0x51b008(0xac)]===!![],'parentId':null,'depth':0x0}),_0x1cc531=new Map(_0x4ff5bf[_0x51b008(0xa8)](_0x213e26=>[_0x213e26['id'],_0x213e26])),_0x51e0a6=createHash('sha256')[_0x51b008(0xc2)](JSON[_0x51b008(0xb9)](_0x4ff5bf[_0x51b008(0xa8)](toHashInput)))[_0x51b008(0xbc)](_0x51b008(0xb8));return{'total':_0x4ff5bf[_0x51b008(0x9b)],'hash':_0x51b008(0x9a)+_0x51e0a6,'menus':_0x4ff5bf,'byId':_0x1cc531};}export function toProcessedMenuItem(_0x284d43){const _0x54ab97=a164_0x2b0e;return{'id':_0x284d43['id'],'path':_0x284d43[_0x54ab97(0x99)],'label':_0x284d43[_0x54ab97(0x97)],'resources':[..._0x284d43[_0x54ab97(0x95)]],'extend':_0x284d43['extend']??null,'type':_0x284d43['type'],'parentId':_0x284d43[_0x54ab97(0xa4)]};}export function toMenuListItem(_0x32dedf){const {modelType:_0x9e1f38,datasetId:_0x1bc1b2,datasetCode:_0x1610fb,resourcesValid:_0x139461,..._0xb0f35}=_0x32dedf;return _0xb0f35;}export function getChildren(_0x3a649a,_0x5adcec){const _0x22d22c=a164_0x2b0e;return _0x3a649a[_0x22d22c(0xae)][_0x22d22c(0xba)](_0x162ea1=>_0x162ea1[_0x22d22c(0xa4)]===_0x5adcec);}function a164_0x466d(){const _0x1256cf=['isFinite','values','1001274BCpxLf','datasetCode','2848662PSQqYh','update','16tuLcsW','boolean','string','isArray','visible','5014810WBwBFY','resources','push','label','depth','path','sha256:','length','2419480wNdfjn','index','5057983EasKvb','updateTime','datasetId','parse','updateUserName','pageId','parentId','resourcesValid','type','6053QJANYX','map','188UBMLwd','sort','number','verbose','url','menus','modelType','extend','6164664LFjXki','updateUserId','item','pageType','POSITIVE_INFINITY','childrenIds','8mvGWAk','hex','stringify','filter','children','digest'];a164_0x466d=function(){return _0x1256cf;};return a164_0x466d();}function flattenMenuItems(_0x42d654,_0x24cd36){const _0x2c2730=a164_0x2b0e,_0x2a424c=sortMenuItems(_0x42d654),_0x5b781b=[];for(const _0xec0f9c of _0x2a424c){const _0x29bcf5=sortMenuItems(Array['isArray'](_0xec0f9c[_0x2c2730(0xbb)])?_0xec0f9c['children']:[]);_0x5b781b[_0x2c2730(0x96)](toMenuFact(_0xec0f9c,_0x29bcf5,_0x24cd36)),_0x29bcf5['length']>0x0&&_0x5b781b[_0x2c2730(0x96)](...flattenMenuItems(_0x29bcf5,{'verbose':_0x24cd36[_0x2c2730(0xac)],'parentId':_0xec0f9c['id'],'depth':_0x24cd36['depth']+0x1}));}return _0x5b781b;}function sortMenuItems(_0x2a7f72){const _0x5735b8=a164_0x2b0e;return _0x2a7f72['map']((_0x2aaf19,_0x5be489)=>({'item':_0x2aaf19,'index':_0x5be489}))[_0x5735b8(0xaa)]((_0x579256,_0x5b9349)=>{const _0x3cf6ef=_0x5735b8,_0x1b68c7=normalizeSort(_0x579256['item'][_0x3cf6ef(0xaa)]),_0x21630a=normalizeSort(_0x5b9349[_0x3cf6ef(0xb3)][_0x3cf6ef(0xaa)]);if(_0x1b68c7!==_0x21630a)return _0x1b68c7-_0x21630a;return _0x579256[_0x3cf6ef(0x9d)]-_0x5b9349[_0x3cf6ef(0x9d)];})['map'](({item:_0x224a97})=>_0x224a97);}function a164_0x2b0e(_0x206838,_0x4b89c7){_0x206838=_0x206838-0x94;const _0x466dc6=a164_0x466d();let _0x2b0e06=_0x466dc6[_0x206838];return _0x2b0e06;}function toMenuFact(_0x1c8f26,_0x1d638a,_0x306ea1){const _0x121b6a=a164_0x2b0e,_0x378100=normalizeResourceValue(_0x1c8f26['extend']?.[_0x121b6a(0x95)]),_0x3d3dd9={'id':_0x1c8f26['id'],'parentId':_0x306ea1[_0x121b6a(0xa4)],'depth':_0x306ea1[_0x121b6a(0x98)],'label':normalizeString(_0x1c8f26[_0x121b6a(0x97)]),'path':normalizeString(_0x1c8f26[_0x121b6a(0x99)]),'url':normalizeString(_0x1c8f26[_0x121b6a(0xad)]),'type':normalizeString(_0x1c8f26[_0x121b6a(0xa6)]),'visible':typeof _0x1c8f26[_0x121b6a(0xc7)]===_0x121b6a(0xc4)?_0x1c8f26[_0x121b6a(0xc7)]:null,'sort':typeof _0x1c8f26['sort']===_0x121b6a(0xab)&&Number[_0x121b6a(0xbd)](_0x1c8f26[_0x121b6a(0xaa)])?_0x1c8f26[_0x121b6a(0xaa)]:null,'resources':_0x378100[_0x121b6a(0xbe)],'resourcesValid':_0x378100['valid'],'childrenIds':_0x1d638a[_0x121b6a(0xa8)](_0x1b3ad5=>_0x1b3ad5['id']),'childrenCount':_0x1d638a[_0x121b6a(0x9b)],'pageId':normalizeNullableNumber(_0x1c8f26[_0x121b6a(0xa3)]),'pageType':normalizeString(_0x1c8f26[_0x121b6a(0xb4)]),'modelType':normalizeString(_0x1c8f26[_0x121b6a(0xaf)]),'datasetId':normalizeNullableNumber(_0x1c8f26[_0x121b6a(0xa0)]),'datasetCode':normalizeString(_0x1c8f26[_0x121b6a(0xc0)]),'updateUserId':normalizeNullableString(_0x1c8f26[_0x121b6a(0xb2)]),'updateUserName':normalizeNullableString(_0x1c8f26[_0x121b6a(0xa2)]),'updateTime':normalizeNullableTimestamp(_0x1c8f26[_0x121b6a(0x9f)])};return _0x306ea1[_0x121b6a(0xac)]&&(_0x3d3dd9['extend']=_0x1c8f26[_0x121b6a(0xb0)]??null),_0x3d3dd9;}function toHashInput(_0x1313af){const _0x110a7a=a164_0x2b0e;return{'id':_0x1313af['id'],'parentId':_0x1313af[_0x110a7a(0xa4)],'label':_0x1313af[_0x110a7a(0x97)],'path':_0x1313af['path'],'url':_0x1313af[_0x110a7a(0xad)],'type':_0x1313af[_0x110a7a(0xa6)],'visible':_0x1313af['visible'],'sort':_0x1313af[_0x110a7a(0xaa)],'resources':_0x1313af[_0x110a7a(0x95)],'resourcesValid':_0x1313af[_0x110a7a(0xa5)],'childrenIds':_0x1313af[_0x110a7a(0xb6)],'pageId':_0x1313af[_0x110a7a(0xa3)],'pageType':_0x1313af[_0x110a7a(0xb4)],'modelType':_0x1313af['modelType'],'datasetId':_0x1313af[_0x110a7a(0xa0)],'datasetCode':_0x1313af['datasetCode'],'updateUserId':_0x1313af[_0x110a7a(0xb2)],'updateUserName':_0x1313af[_0x110a7a(0xa2)],'updateTime':_0x1313af['updateTime']};}function normalizeSort(_0x80b8df){const _0x57b010=a164_0x2b0e;return typeof _0x80b8df===_0x57b010(0xab)&&Number[_0x57b010(0xbd)](_0x80b8df)?_0x80b8df:Number[_0x57b010(0xb5)];}function normalizeString(_0x475459){const _0x127ab6=a164_0x2b0e;return typeof _0x475459===_0x127ab6(0xc5)?_0x475459:'';}function normalizeNullableNumber(_0x5b5ce9){const _0x1de229=a164_0x2b0e;return typeof _0x5b5ce9===_0x1de229(0xab)&&Number[_0x1de229(0xbd)](_0x5b5ce9)?_0x5b5ce9:null;}function normalizeNullableString(_0x45a1e4){return typeof _0x45a1e4==='string'&&_0x45a1e4['length']>0x0?_0x45a1e4:null;}function normalizeNullableTimestamp(_0xcb833e){const _0x3414eb=a164_0x2b0e;if(typeof _0xcb833e===_0x3414eb(0xc5))return _0xcb833e['length']>0x0?_0xcb833e:null;return typeof _0xcb833e===_0x3414eb(0xab)&&Number[_0x3414eb(0xbd)](_0xcb833e)?_0xcb833e:null;}export function normalizeResources(_0xa514eb){const _0x3d2ad4=a164_0x2b0e;return normalizeResourceValue(_0xa514eb)[_0x3d2ad4(0xbe)];}function normalizeResourceValue(_0x53fd70){const _0x633a6b=a164_0x2b0e;if(_0x53fd70==null)return{'values':[],'valid':!![]};if(Array[_0x633a6b(0xc6)](_0x53fd70))return{'values':_0x53fd70[_0x633a6b(0xa8)](String),'valid':!![]};if(typeof _0x53fd70!==_0x633a6b(0xc5))return{'values':[],'valid':![]};try{const _0x2ae30d=JSON[_0x633a6b(0xa1)](_0x53fd70);return Array['isArray'](_0x2ae30d)?{'values':_0x2ae30d[_0x633a6b(0xa8)](String),'valid':!![]}:{'values':[],'valid':![]};}catch{return{'values':[],'valid':![]};}}
@@ -1 +1 @@
1
- (function(_0x1b5881,_0x4d5cca){var _0x213253=a164_0x44a6,_0x5baf2f=_0x1b5881();while(!![]){try{var _0x2fa658=parseInt(_0x213253(0x181))/0x1*(parseInt(_0x213253(0x17b))/0x2)+parseInt(_0x213253(0x17a))/0x3*(-parseInt(_0x213253(0x182))/0x4)+-parseInt(_0x213253(0x17c))/0x5+parseInt(_0x213253(0x17d))/0x6*(parseInt(_0x213253(0x17f))/0x7)+parseInt(_0x213253(0x17e))/0x8+-parseInt(_0x213253(0x179))/0x9+-parseInt(_0x213253(0x183))/0xa*(-parseInt(_0x213253(0x180))/0xb);if(_0x2fa658===_0x4d5cca)break;else _0x5baf2f['push'](_0x5baf2f['shift']());}catch(_0x1b243b){_0x5baf2f['push'](_0x5baf2f['shift']());}}}(a164_0x1089,0x2a167));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';function a164_0x44a6(_0x45a3c1,_0xd7f88a){_0x45a3c1=_0x45a3c1-0x179;var _0x108900=a164_0x1089();var _0x44a6e8=_0x108900[_0x45a3c1];return _0x44a6e8;}export*from'../../../commands/menu/shared/valid-url.js';export*from'../../../commands/menu/shared/local-pages.js';export*from'../../../commands/menu/shared/service.js';function a164_0x1089(){var _0x46eea0=['469820OQJiKZ','834eqmQvu','735744WRkJQo','287HsDuAV','2486tvsGCP','16ZFskum','8qnRZQK','15270IoIJkw','2323368lgpgpj','365961JXVDPY','40714KLzItA'];a164_0x1089=function(){return _0x46eea0;};return a164_0x1089();}export*from'../../../commands/menu/shared/sync-core.js';export*from'../../../commands/menu/shared/update-core.js';
1
+ (function(_0x3d00c8,_0x288bd0){var _0xeb82f9=a165_0x4a96,_0x287bd6=_0x3d00c8();while(!![]){try{var _0x34d899=-parseInt(_0xeb82f9(0xe3))/0x1*(parseInt(_0xeb82f9(0xe5))/0x2)+-parseInt(_0xeb82f9(0xda))/0x3*(-parseInt(_0xeb82f9(0xdb))/0x4)+-parseInt(_0xeb82f9(0xd9))/0x5*(-parseInt(_0xeb82f9(0xde))/0x6)+parseInt(_0xeb82f9(0xdf))/0x7*(parseInt(_0xeb82f9(0xe2))/0x8)+-parseInt(_0xeb82f9(0xdd))/0x9*(parseInt(_0xeb82f9(0xe0))/0xa)+-parseInt(_0xeb82f9(0xe4))/0xb*(-parseInt(_0xeb82f9(0xdc))/0xc)+parseInt(_0xeb82f9(0xe6))/0xd*(parseInt(_0xeb82f9(0xe1))/0xe);if(_0x34d899===_0x288bd0)break;else _0x287bd6['push'](_0x287bd6['shift']());}catch(_0x3312dc){_0x287bd6['push'](_0x287bd6['shift']());}}}(a165_0x4877,0x9d674));function a165_0x4a96(_0x4b6536,_0x58593b){_0x4b6536=_0x4b6536-0xd9;var _0x48777e=a165_0x4877();var _0x4a9613=_0x48777e[_0x4b6536];return _0x4a9613;}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';function a165_0x4877(){var _0x35babc=['1519985KeVCut','32457kRaeYP','68PYGXfF','413544UCAHHL','82881IscQQI','6cOxvwh','10045hGmReB','1360SeoBVI','9576DZBvPi','3384xqYkuR','77qezIkn','22QGkjbO','20874ozpSay','29211nbKuJC'];a165_0x4877=function(){return _0x35babc;};return a165_0x4877();}export*from'../../../commands/menu/shared/sync-core.js';export*from'../../../commands/menu/shared/update-core.js';
@@ -1 +1 @@
1
- (function(_0x443a22,_0x5afb3f){const _0x12007b=a165_0x3b86,_0x5f0c29=_0x443a22();while(!![]){try{const _0x3a463c=-parseInt(_0x12007b(0x1a5))/0x1*(-parseInt(_0x12007b(0x1c1))/0x2)+parseInt(_0x12007b(0x1c0))/0x3*(parseInt(_0x12007b(0x1b1))/0x4)+-parseInt(_0x12007b(0x1ae))/0x5+-parseInt(_0x12007b(0x1bf))/0x6*(-parseInt(_0x12007b(0x1a4))/0x7)+-parseInt(_0x12007b(0x1bd))/0x8*(-parseInt(_0x12007b(0x1a7))/0x9)+parseInt(_0x12007b(0x1aa))/0xa*(parseInt(_0x12007b(0x1b7))/0xb)+-parseInt(_0x12007b(0x1b9))/0xc;if(_0x3a463c===_0x5afb3f)break;else _0x5f0c29['push'](_0x5f0c29['shift']());}catch(_0x3a3b25){_0x5f0c29['push'](_0x5f0c29['shift']());}}}(a165_0x15a0,0x99dd8));import a165_0x43033d from'chalk';import{checkbox,input,confirm}from'@inquirer/prompts';function a165_0x15a0(){const _0xfadf9a=['gray','\x20\x20JS\x20URL:','11705570OnLrab','red','JS\x20URL\x20checked','map','5078460ADegrH','has','succeed','41264DGTwGA','\x20\x20CSS\x20URL:','error','CSS\x20URL\x20checked','test','\x20\x20✗\x20CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','11YSZihP','stdin','37820508oLfIcH','No\x20menus\x20selected.','isTTY','cancelled','2437664pMjyBs','CSS\x20URL\x20check\x20failed','68838ujhbDz','282NDcJMl','1936294LJGQXG','JS\x20URL\x20check\x20failed','catch','trim','\x20\x20Checking\x20JS\x20URL\x20reachability...','label','\x20\x20Select\x20menus\x20to\x20sync\x20(space\x20to\x20toggle,\x20a=all,\x20i=invert):','includes','start','No\x20local\x20pages\x20found.','\x20\x20✗\x20JS\x20URL\x20is\x20unreachable','green','path','\x20\x20✗\x20CSS\x20URL\x20is\x20unreachable','[new]','name','287uextDl','1SaoFZT','Cancelled.','36gxjCcD'];a165_0x15a0=function(){return _0xfadf9a;};return a165_0x15a0();}import a165_0xc7d8fd from'ora';import{isUrlReachable}from'../../../commands/menu/shared/valid-url.js';import{CliErrors}from'../../../errors.js';function onCancel(_0x7d6d0){const _0x3136d7=a165_0x3b86;return _0x7d6d0[_0x3136d7(0x1c3)](_0x5b2bb4=>{const _0x1b40e8=_0x3136d7;if(_0x5b2bb4?.[_0x1b40e8(0x1a3)]==='ExitPromptError')throw CliErrors['cancelled'](_0x1b40e8(0x1a6));throw _0x5b2bb4;});}export function startSpinner(_0x39d561){const _0x2d3e76=a165_0x3b86;return a165_0xc7d8fd({'text':_0x39d561,'color':'cyan'})[_0x2d3e76(0x1c9)]();}export function stopSpinner(_0x4bcc89,_0x24678d,_0x2cd79d){const _0x400ee8=a165_0x3b86;_0x2cd79d?_0x4bcc89[_0x400ee8(0x1b0)](_0x24678d):_0x4bcc89['fail'](_0x24678d);}export async function askConfirm(_0x495701){return onCancel(confirm({'message':_0x495701,'theme':{'prefix':''}}));}export async function askJsUrl(_0x963114){const _0x23b767=a165_0x3b86;while(!![]){const _0x442969=await onCancel(input({'message':_0x23b767(0x1a9),'default':_0x963114,'theme':{'prefix':''}}));if(_0x442969[_0x23b767(0x1c4)]()==='')throw CliErrors[_0x23b767(0x1bc)](_0x23b767(0x1a6));if(!/^https:\/\/.+\.js(\?.*)?$/[_0x23b767(0x1b5)](_0x442969[_0x23b767(0x1c4)]())){console[_0x23b767(0x1b3)](a165_0x43033d[_0x23b767(0x1ab)]('\x20\x20✗\x20JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL'));continue;}const _0x23b7a5=startSpinner(_0x23b767(0x1c5));try{const _0x2e03f4=await isUrlReachable(_0x442969[_0x23b767(0x1c4)]());stopSpinner(_0x23b7a5,_0x23b767(0x1ac),_0x2e03f4);if(!_0x2e03f4){console[_0x23b767(0x1b3)](a165_0x43033d['red'](_0x23b767(0x1cb)));continue;}return _0x442969[_0x23b767(0x1c4)]();}catch(_0x1c4ffd){stopSpinner(_0x23b7a5,_0x23b767(0x1c2),![]);throw _0x1c4ffd;}}}export async function askCssUrl(_0x4c616f){const _0x43b261=a165_0x3b86;while(!![]){const _0xa46086=await onCancel(input({'message':_0x43b261(0x1b2),'default':_0x4c616f,'theme':{'prefix':''}}));if(_0xa46086[_0x43b261(0x1c4)]()==='')throw CliErrors[_0x43b261(0x1bc)]('Cancelled.');if(!/^https:\/\/.+\.css(\?.*)?$/[_0x43b261(0x1b5)](_0xa46086[_0x43b261(0x1c4)]())){console['error'](a165_0x43033d[_0x43b261(0x1ab)](_0x43b261(0x1b6)));continue;}const _0x17ced3=startSpinner('\x20\x20Checking\x20CSS\x20URL\x20reachability...');try{const _0x20c31c=await isUrlReachable(_0xa46086[_0x43b261(0x1c4)]());stopSpinner(_0x17ced3,_0x43b261(0x1b4),_0x20c31c);if(!_0x20c31c){console[_0x43b261(0x1b3)](a165_0x43033d[_0x43b261(0x1ab)](_0x43b261(0x1ce)));continue;}return _0xa46086[_0x43b261(0x1c4)]();}catch(_0x574bbf){stopSpinner(_0x17ced3,_0x43b261(0x1be),![]);throw _0x574bbf;}}}export async function selectPages(_0x1f86f2,_0x1c369d){const _0x53ce38=a165_0x3b86,_0x19695f=_0x1f86f2[_0x53ce38(0x1ad)](_0x1f6552=>{const _0x1aacb3=_0x53ce38,_0x7a52db=_0x1c369d[_0x1aacb3(0x1af)](_0x1f6552[_0x1aacb3(0x1cd)]);return{'name':_0x1f6552[_0x1aacb3(0x1c6)]+'\x20\x20'+a165_0x43033d[_0x1aacb3(0x1a8)](_0x1f6552[_0x1aacb3(0x1cd)])+'\x20\x20'+(_0x7a52db?a165_0x43033d[_0x1aacb3(0x1a8)]('[already\x20on\x20platform]'):a165_0x43033d[_0x1aacb3(0x1cc)](_0x1aacb3(0x1cf))),'value':_0x1f6552[_0x1aacb3(0x1cd)],'checked':!_0x7a52db,'disabled':_0x7a52db};});if(_0x19695f['length']===0x0)throw new Error(_0x53ce38(0x1ca));const _0x2b8dfd=await onCancel(checkbox({'message':_0x53ce38(0x1c7),'choices':_0x19695f,'loop':![],'theme':{'prefix':''}}));if(_0x2b8dfd['length']===0x0)throw new Error(_0x53ce38(0x1ba));return _0x1f86f2['filter'](_0x225ac0=>_0x2b8dfd[_0x53ce38(0x1c8)](_0x225ac0[_0x53ce38(0x1cd)]));}export function isInteractive(){const _0x27fd91=a165_0x3b86;return process[_0x27fd91(0x1b8)][_0x27fd91(0x1bb)]===!![];}function a165_0x3b86(_0x442cde,_0x23f2d7){_0x442cde=_0x442cde-0x1a3;const _0x15a0f2=a165_0x15a0();let _0x3b86c2=_0x15a0f2[_0x442cde];return _0x3b86c2;}export function requireInteractive(){if(!isInteractive())throw new Error('This\x20command\x20requires\x20an\x20interactive\x20terminal.\x20'+'Use\x20--yes\x20to\x20run\x20in\x20non-interactive\x20mode,\x20or\x20pipe\x20data\x20via\x20--params.');}
1
+ function a166_0xf87b(){const _0x237319=['No\x20menus\x20selected.','[already\x20on\x20platform]','\x20\x20Checking\x20JS\x20URL\x20reachability...','\x20\x20✗\x20JS\x20URL\x20is\x20unreachable','ExitPromptError','[new]','fail','start','has','\x20\x20✗\x20JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','includes','297070SjQKiy','map','No\x20local\x20pages\x20found.','\x20\x20Select\x20menus\x20to\x20sync\x20(space\x20to\x20toggle,\x20a=all,\x20i=invert):','\x20\x20✗\x20CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','Cancelled.','79010soxznq','isTTY','4880756hBHzxj','green','name','\x20\x20✗\x20CSS\x20URL\x20is\x20unreachable','red','11kvIbdf','stdin','4532384hvjBhn','\x20\x20CSS\x20URL:','filter','\x20\x20Checking\x20CSS\x20URL\x20reachability...','270XeRMli','cancelled','test','error','CSS\x20URL\x20checked','55yDripM','351834bTTtho','CSS\x20URL\x20check\x20failed','4113669Yudgvm','length','trim','Use\x20--yes\x20to\x20run\x20in\x20non-interactive\x20mode,\x20or\x20pipe\x20data\x20via\x20--params.','7798805yOfPrV','path','\x20\x20JS\x20URL:','gray'];a166_0xf87b=function(){return _0x237319;};return a166_0xf87b();}(function(_0x11c4eb,_0x4ec30d){const _0x38b42a=a166_0x4fdf,_0x4eb410=_0x11c4eb();while(!![]){try{const _0x28f727=-parseInt(_0x38b42a(0xe4))/0x1*(parseInt(_0x38b42a(0xdd))/0x2)+parseInt(_0x38b42a(0xf2))/0x3+parseInt(_0x38b42a(0xdf))/0x4+-parseInt(_0x38b42a(0xef))/0x5*(parseInt(_0x38b42a(0xf0))/0x6)+-parseInt(_0x38b42a(0xf6))/0x7+-parseInt(_0x38b42a(0xe6))/0x8+parseInt(_0x38b42a(0xea))/0x9*(parseInt(_0x38b42a(0xd7))/0xa);if(_0x28f727===_0x4ec30d)break;else _0x4eb410['push'](_0x4eb410['shift']());}catch(_0x5d6678){_0x4eb410['push'](_0x4eb410['shift']());}}}(a166_0xf87b,0xb05c7));import a166_0x311a7c from'chalk';import{checkbox,input,confirm}from'@inquirer/prompts';import a166_0x5e2c54 from'ora';import{isUrlReachable}from'../../../commands/menu/shared/valid-url.js';import{menuPathKey}from'../../../commands/menu/shared/path.js';import{CliErrors}from'../../../errors.js';function onCancel(_0x126405){return _0x126405['catch'](_0x2723fa=>{const _0x158a63=a166_0x4fdf;if(_0x2723fa?.[_0x158a63(0xe1)]===_0x158a63(0xfe))throw CliErrors[_0x158a63(0xeb)](_0x158a63(0xdc));throw _0x2723fa;});}export function startSpinner(_0x2868ad){const _0x351bd2=a166_0x4fdf;return a166_0x5e2c54({'text':_0x2868ad,'color':'cyan'})[_0x351bd2(0xd3)]();}export function stopSpinner(_0x1ae292,_0x3ab63e,_0x530ee6){const _0x463a67=a166_0x4fdf;_0x530ee6?_0x1ae292['succeed'](_0x3ab63e):_0x1ae292[_0x463a67(0xd2)](_0x3ab63e);}export async function askConfirm(_0x32c33f){return onCancel(confirm({'message':_0x32c33f,'theme':{'prefix':''}}));}export async function askJsUrl(_0x15d879){const _0x560761=a166_0x4fdf;while(!![]){const _0x15fa4b=await onCancel(input({'message':_0x560761(0xf8),'default':_0x15d879,'theme':{'prefix':''}}));if(_0x15fa4b['trim']()==='')throw CliErrors[_0x560761(0xeb)](_0x560761(0xdc));if(!/^https:\/\/.+\.js(\?.*)?$/[_0x560761(0xec)](_0x15fa4b['trim']())){console['error'](a166_0x311a7c['red'](_0x560761(0xd5)));continue;}const _0x2501ac=startSpinner(_0x560761(0xfc));try{const _0x56c354=await isUrlReachable(_0x15fa4b[_0x560761(0xf4)]());stopSpinner(_0x2501ac,'JS\x20URL\x20checked',_0x56c354);if(!_0x56c354){console[_0x560761(0xed)](a166_0x311a7c[_0x560761(0xe3)](_0x560761(0xfd)));continue;}return _0x15fa4b[_0x560761(0xf4)]();}catch(_0x391187){stopSpinner(_0x2501ac,'JS\x20URL\x20check\x20failed',![]);throw _0x391187;}}}export async function askCssUrl(_0x57b571){const _0xacde34=a166_0x4fdf;while(!![]){const _0x3a6d99=await onCancel(input({'message':_0xacde34(0xe7),'default':_0x57b571,'theme':{'prefix':''}}));if(_0x3a6d99['trim']()==='')throw CliErrors[_0xacde34(0xeb)](_0xacde34(0xdc));if(!/^https:\/\/.+\.css(\?.*)?$/[_0xacde34(0xec)](_0x3a6d99[_0xacde34(0xf4)]())){console[_0xacde34(0xed)](a166_0x311a7c['red'](_0xacde34(0xdb)));continue;}const _0x512326=startSpinner(_0xacde34(0xe9));try{const _0x33b8d9=await isUrlReachable(_0x3a6d99['trim']());stopSpinner(_0x512326,_0xacde34(0xee),_0x33b8d9);if(!_0x33b8d9){console[_0xacde34(0xed)](a166_0x311a7c[_0xacde34(0xe3)](_0xacde34(0xe2)));continue;}return _0x3a6d99[_0xacde34(0xf4)]();}catch(_0x2935e7){stopSpinner(_0x512326,_0xacde34(0xf1),![]);throw _0x2935e7;}}}function a166_0x4fdf(_0x2814d9,_0x4e1e03){_0x2814d9=_0x2814d9-0xd1;const _0xf87b9a=a166_0xf87b();let _0x4fdf39=_0xf87b9a[_0x2814d9];return _0x4fdf39;}export async function selectPages(_0x3a1055,_0x34fd6e){const _0x262e1c=a166_0x4fdf,_0x248b75=_0x3a1055[_0x262e1c(0xd8)](_0x622cb3=>{const _0x460fbf=_0x262e1c,_0x1c6665=_0x34fd6e[_0x460fbf(0xd4)](menuPathKey(_0x622cb3[_0x460fbf(0xf7)]));return{'name':_0x622cb3['label']+'\x20\x20'+a166_0x311a7c[_0x460fbf(0xf9)](_0x622cb3[_0x460fbf(0xf7)])+'\x20\x20'+(_0x1c6665?a166_0x311a7c[_0x460fbf(0xf9)](_0x460fbf(0xfb)):a166_0x311a7c[_0x460fbf(0xe0)](_0x460fbf(0xd1))),'value':_0x622cb3[_0x460fbf(0xf7)],'checked':!_0x1c6665,'disabled':_0x1c6665};});if(_0x248b75[_0x262e1c(0xf3)]===0x0)throw new Error(_0x262e1c(0xd9));const _0x2d08ca=await onCancel(checkbox({'message':_0x262e1c(0xda),'choices':_0x248b75,'loop':![],'theme':{'prefix':''}}));if(_0x2d08ca[_0x262e1c(0xf3)]===0x0)throw new Error(_0x262e1c(0xfa));return _0x3a1055[_0x262e1c(0xe8)](_0x778ea4=>_0x2d08ca[_0x262e1c(0xd6)](_0x778ea4[_0x262e1c(0xf7)]));}export function isInteractive(){const _0x1a334e=a166_0x4fdf;return process[_0x1a334e(0xe5)][_0x1a334e(0xde)]===!![];}export function requireInteractive(){const _0x1f5a27=a166_0x4fdf;if(!isInteractive())throw new Error('This\x20command\x20requires\x20an\x20interactive\x20terminal.\x20'+_0x1f5a27(0xf5));}
@@ -9,4 +9,4 @@ import type { LocalPage } from "../../../commands/menu/shared/types.js";
9
9
  * 4. null (caller falls back to file path)
10
10
  */
11
11
  export declare function extractTitleFromComment(filePath: string): string | null;
12
- export declare function getLocalPages(dir?: string, baseDir?: string): LocalPage[];
12
+ export declare function getLocalPages(dir?: string, baseDir?: string, projectDir?: string): LocalPage[];
@@ -1 +1 @@
1
- const a166_0x2116ab=a166_0x3c57;(function(_0x54e9d5,_0x47b6f1){const _0x1a45f6=a166_0x3c57,_0x429cba=_0x54e9d5();while(!![]){try{const _0x4c0be6=parseInt(_0x1a45f6(0x84))/0x1+-parseInt(_0x1a45f6(0x7c))/0x2*(parseInt(_0x1a45f6(0x85))/0x3)+parseInt(_0x1a45f6(0x83))/0x4+-parseInt(_0x1a45f6(0x7a))/0x5*(-parseInt(_0x1a45f6(0x8b))/0x6)+parseInt(_0x1a45f6(0x82))/0x7+-parseInt(_0x1a45f6(0x7b))/0x8*(parseInt(_0x1a45f6(0x86))/0x9)+-parseInt(_0x1a45f6(0x7f))/0xa;if(_0x4c0be6===_0x47b6f1)break;else _0x429cba['push'](_0x429cba['shift']());}catch(_0xc42224){_0x429cba['push'](_0x429cba['shift']());}}}(a166_0x49ae,0x71bf1));import{readdirSync,statSync,readFileSync}from'fs';import{join,relative,resolve,sep}from'path';const pagesDir=resolve(process[a166_0x2116ab(0x81)](),a166_0x2116ab(0x80));export function extractTitleFromComment(_0x5ad90b){const _0x2b6e3c=a166_0x2116ab;try{const _0x485133=readFileSync(_0x5ad90b,'utf-8'),_0x432454=_0x485133[_0x2b6e3c(0x7d)](/^\s*\/\*\*?([\s\S]*?)\*\//);if(_0x432454&&_0x432454[0x1]){const _0x134f2d=_0x432454[0x1],_0x454c41=_0x134f2d[_0x2b6e3c(0x7d)](/^\s*\*?\s*title\s*:\s*(.+)/im);if(_0x454c41&&_0x454c41[0x1])return _0x454c41[0x1][_0x2b6e3c(0x8d)]();}let _0x2e9802=null;const _0x1cce50=_0x485133['match'](/export\s+default\s+([A-Z][a-zA-Z0-9]*)/);_0x1cce50&&_0x1cce50[0x1]&&(_0x2e9802=_0x1cce50[0x1]);if(!_0x2e9802){const _0x5b4b7c=_0x485133['match'](/export\s+default\s+function\s+([A-Z][a-zA-Z0-9]*)/);_0x5b4b7c&&_0x5b4b7c[0x1]&&(_0x2e9802=_0x5b4b7c[0x1]);}if(_0x2e9802){const _0x16f1b6=new RegExp('\x5cb'+_0x2e9802+'\x5c.displayName\x5cs*=\x5cs*[\x22\x27]([^\x22\x27]+)[\x22\x27]'),_0x3d9aa6=_0x485133[_0x2b6e3c(0x7d)](_0x16f1b6);if(_0x3d9aa6&&_0x3d9aa6[0x1])return _0x3d9aa6[0x1];return _0x2e9802;}return null;}catch(_0x4fa4b4){return null;}}function a166_0x49ae(){const _0x18c4e7=['.tsx','774006INipMV','path','trim','split','replaceAll','replace','join','25ePnPmO','6375368uZzCoI','118rzVkmM','match','isDirectory','1209010mLORXf','src/pages','cwd','3002881XgAJJw','643512MeUYKz','576198ZNLAir','21729WaxGPw','9HAAHvs','slice','filter','forEach'];a166_0x49ae=function(){return _0x18c4e7;};return a166_0x49ae();}function a166_0x3c57(_0x1635ee,_0x4e5696){_0x1635ee=_0x1635ee-0x79;const _0x49ae12=a166_0x49ae();let _0x3c5776=_0x49ae12[_0x1635ee];return _0x3c5776;}export function getLocalPages(_0x3336f0=pagesDir,_0x54eca7=pagesDir){const _0x32539c=a166_0x2116ab;let _0x4388a5=[];const _0x49e47b=readdirSync(_0x3336f0);return _0x49e47b[_0x32539c(0x89)](_0xc4656b=>{const _0x3956d4=_0x32539c,_0x351262=join(_0x3336f0,_0xc4656b),_0x1d052b=statSync(_0x351262);if(_0x1d052b&&_0x1d052b[_0x3956d4(0x7e)]())_0x4388a5=_0x4388a5['concat'](getLocalPages(_0x351262,_0x54eca7));else{if(_0xc4656b['endsWith'](_0x3956d4(0x8a))){let _0x1251e5=relative(_0x54eca7,_0x351262);_0x1251e5['endsWith']('index.tsx')?_0x1251e5=_0x1251e5[_0x3956d4(0x90)](/index\.tsx$/,''):_0x1251e5=_0x1251e5[_0x3956d4(0x90)](/\.tsx$/,'');_0x1251e5['endsWith'](sep)&&(_0x1251e5=_0x1251e5[_0x3956d4(0x87)](0x0,-0x1));const _0x46ef9a=_0x1251e5[_0x3956d4(0x8e)](sep)[_0x3956d4(0x79)]('/'),_0x208eba=extractTitleFromComment(_0x351262),_0x3f8aa8=_0x208eba||_0x46ef9a;_0x4388a5['push']({'path':_0x46ef9a[_0x3956d4(0x8f)]('$',':'),'label':_0x3f8aa8});}}}),_0x4388a5[_0x32539c(0x88)](_0x5cb3fc=>_0x5cb3fc[_0x32539c(0x8c)]!=='');}
1
+ const a167_0x5add7f=a167_0x324d;(function(_0x3f5e08,_0x21ae85){const _0x175eeb=a167_0x324d,_0x49ae83=_0x3f5e08();while(!![]){try{const _0x40407d=-parseInt(_0x175eeb(0x163))/0x1*(parseInt(_0x175eeb(0x14e))/0x2)+parseInt(_0x175eeb(0x165))/0x3+parseInt(_0x175eeb(0x145))/0x4+parseInt(_0x175eeb(0x14d))/0x5+-parseInt(_0x175eeb(0x159))/0x6*(-parseInt(_0x175eeb(0x153))/0x7)+-parseInt(_0x175eeb(0x15c))/0x8+-parseInt(_0x175eeb(0x152))/0x9;if(_0x40407d===_0x21ae85)break;else _0x49ae83['push'](_0x49ae83['shift']());}catch(_0x54cca7){_0x49ae83['push'](_0x49ae83['shift']());}}}(a167_0x2d0a,0x9a98c));import{existsSync,readdirSync,statSync,readFileSync}from'fs';import{join,relative,resolve,sep}from'path';const pagesDir=resolve(process[a167_0x5add7f(0x15e)](),a167_0x5add7f(0x144));export function extractTitleFromComment(_0x41ea23){const _0x2e9d93=a167_0x5add7f;try{const _0x4524b3=readFileSync(_0x41ea23,_0x2e9d93(0x169)),_0x3dcb6a=_0x4524b3[_0x2e9d93(0x162)](/^\s*\/\*\*?([\s\S]*?)\*\//);if(_0x3dcb6a&&_0x3dcb6a[0x1]){const _0x35a055=_0x3dcb6a[0x1],_0x43f907=_0x35a055[_0x2e9d93(0x162)](/^\s*\*?\s*title\s*:\s*(.+)/im);if(_0x43f907&&_0x43f907[0x1])return _0x43f907[0x1][_0x2e9d93(0x15b)]();}let _0xcffdd3=null;const _0x827d2e=_0x4524b3[_0x2e9d93(0x162)](/export\s+default\s+([A-Z][a-zA-Z0-9]*)/);_0x827d2e&&_0x827d2e[0x1]&&(_0xcffdd3=_0x827d2e[0x1]);if(!_0xcffdd3){const _0x217942=_0x4524b3[_0x2e9d93(0x162)](/export\s+default\s+function\s+([A-Z][a-zA-Z0-9]*)/);_0x217942&&_0x217942[0x1]&&(_0xcffdd3=_0x217942[0x1]);}if(_0xcffdd3){const _0x5bea81=new RegExp('\x5cb'+_0xcffdd3+'\x5c.displayName\x5cs*=\x5cs*[\x22\x27]([^\x22\x27]+)[\x22\x27]'),_0xb4a99e=_0x4524b3['match'](_0x5bea81);if(_0xb4a99e&&_0xb4a99e[0x1])return _0xb4a99e[0x1];return _0xcffdd3;}return null;}catch(_0x308263){return null;}}export function getLocalPages(_0x2b7d40=pagesDir,_0x12a06b=pagesDir,_0x1daf0c=process['cwd']()){const _0x52168e=a167_0x5add7f;if(resolve(_0x2b7d40)===resolve(_0x12a06b)){const _0x5238b7=join(_0x1daf0c,_0x52168e(0x140));if(existsSync(_0x5238b7))return getDeclaredPages(_0x5238b7,_0x1daf0c);}let _0x3ae734=[];const _0x3015cc=readdirSync(_0x2b7d40);return _0x3015cc[_0x52168e(0x13f)](_0x1c37ee=>{const _0x177fc6=_0x52168e,_0x49489b=join(_0x2b7d40,_0x1c37ee),_0x471050=statSync(_0x49489b);if(_0x471050&&_0x471050[_0x177fc6(0x15d)]())_0x3ae734=_0x3ae734['concat'](getLocalPages(_0x49489b,_0x12a06b,_0x1daf0c));else{if(_0x1c37ee[_0x177fc6(0x147)](_0x177fc6(0x15a))){let _0x4dd353=relative(_0x12a06b,_0x49489b);_0x4dd353['endsWith'](_0x177fc6(0x151))?_0x4dd353=_0x4dd353['replace'](/index\.tsx$/,''):_0x4dd353=_0x4dd353[_0x177fc6(0x143)](/\.tsx$/,'');_0x4dd353[_0x177fc6(0x147)](sep)&&(_0x4dd353=_0x4dd353[_0x177fc6(0x16a)](0x0,-0x1));const _0x3951d7=_0x4dd353[_0x177fc6(0x148)](sep)['join']('/'),_0xb946e=extractTitleFromComment(_0x49489b),_0x43ac16=_0xb946e||_0x3951d7;_0x3ae734['push']({'path':_0x3951d7[_0x177fc6(0x161)]('$',':'),'label':_0x43ac16});}}}),_0x3ae734['filter'](_0x41d1eb=>_0x41d1eb['path']!=='');}function a167_0x324d(_0x266ac2,_0x10e0e2){_0x266ac2=_0x266ac2-0x13d;const _0x2d0a85=a167_0x2d0a();let _0x324de7=_0x2d0a85[_0x266ac2];return _0x324de7;}function a167_0x2d0a(){const _0x45ac7f=['label','24dUXNoV','.tsx','trim','667624sLyjeT','isDirectory','cwd',';\x20expected\x20','Route\x20page\x20file\x20does\x20not\x20exist:\x20','replaceAll','match','26626nLajhe','src/pages/','2990322IuRTCl','has','order','isArray','utf-8','slice',':$1','Route\x20manifest\x20must\x20contain\x20an\x20array:\x20','Invalid\x20route\x20group\x20for\x20','forEach','src/features/routing/routes.json','utf8','isInteger','replace','src/pages','1034156dmcMFZ','Invalid\x20route\x20manifest\x20row\x20','endsWith','split',':\x20path,\x20label,\x20pageFile\x20and\x20visible\x20are\x20required','map','Route\x20','string','1811405tpfjMy','86JCLoQD','group','index','index.tsx','2259675LIeMLW','866390jwKPGl','length','pageFile','Invalid\x20route\x20order\x20for\x20','Duplicate\x20route\x20path\x20in\x20manifest:\x20'];a167_0x2d0a=function(){return _0x45ac7f;};return a167_0x2d0a();}function getDeclaredPages(_0x214395,_0x18ec7f){const _0x2c27c5=a167_0x5add7f;let _0x3a843a;try{_0x3a843a=JSON['parse'](readFileSync(_0x214395,_0x2c27c5(0x141)));}catch(_0x4fbd08){throw new Error('Invalid\x20route\x20manifest\x20'+_0x214395+':\x20'+String(_0x4fbd08));}if(!Array[_0x2c27c5(0x168)](_0x3a843a))throw new Error(_0x2c27c5(0x13d)+_0x214395);const _0x29352f=new Set();return _0x3a843a[_0x2c27c5(0x14a)]((_0x549c0e,_0x30b9d7)=>{const _0x1a26c9=_0x2c27c5;if(!_0x549c0e||typeof _0x549c0e!=='object'||Array['isArray'](_0x549c0e))throw new Error(_0x1a26c9(0x146)+(_0x30b9d7+0x1));const _0x20e5d2=_0x549c0e,_0x4e7cd4=_0x20e5d2['path'],_0x260e70=_0x20e5d2[_0x1a26c9(0x158)],_0x4f402d=_0x20e5d2[_0x1a26c9(0x155)];if(typeof _0x4e7cd4!==_0x1a26c9(0x14c)||!/^\/(?!\/)[^?#]*$/['test'](_0x4e7cd4)||typeof _0x260e70!==_0x1a26c9(0x14c)||!_0x260e70[_0x1a26c9(0x15b)]()||typeof _0x4f402d!==_0x1a26c9(0x14c)||!/^src\/pages\/(?!.*\.\.)[^/].*\.tsx$/['test'](_0x4f402d)||typeof _0x20e5d2['visible']!=='boolean')throw new Error(_0x1a26c9(0x146)+(_0x30b9d7+0x1)+_0x1a26c9(0x149));if(_0x29352f[_0x1a26c9(0x166)](_0x4e7cd4))throw new Error(_0x1a26c9(0x157)+_0x4e7cd4);_0x29352f['add'](_0x4e7cd4);if(!existsSync(resolve(_0x18ec7f,_0x4f402d)))throw new Error(_0x1a26c9(0x160)+_0x4f402d);const _0x10b016=_0x4f402d[_0x1a26c9(0x16a)](_0x1a26c9(0x164)[_0x1a26c9(0x154)])[_0x1a26c9(0x143)](/\/index\.tsx$/,'')['replace'](/\.tsx$/,'')['replaceAll']('$',':')['replace'](/\[([^/\]]+)\]/g,_0x1a26c9(0x16b)),_0x45a559=_0x10b016===_0x1a26c9(0x150)?'/':'/'+_0x10b016;if(_0x4e7cd4!==_0x45a559)throw new Error(_0x1a26c9(0x14b)+_0x4e7cd4+'\x20disagrees\x20with\x20pageFile\x20'+_0x4f402d+_0x1a26c9(0x15f)+_0x45a559);if(_0x20e5d2[_0x1a26c9(0x14f)]!==undefined&&(typeof _0x20e5d2['group']!==_0x1a26c9(0x14c)||!_0x20e5d2['group'][_0x1a26c9(0x15b)]()))throw new Error(_0x1a26c9(0x13e)+_0x4e7cd4);if(_0x20e5d2['order']!==undefined&&(!Number[_0x1a26c9(0x142)](_0x20e5d2[_0x1a26c9(0x167)])||_0x20e5d2[_0x1a26c9(0x167)]<0x0))throw new Error(_0x1a26c9(0x156)+_0x4e7cd4);return{'path':_0x4e7cd4,'label':_0x260e70[_0x1a26c9(0x15b)](),'visible':_0x20e5d2['visible'],..._0x20e5d2[_0x1a26c9(0x14f)]===undefined?{}:{'group':_0x20e5d2['group']['trim']()},..._0x20e5d2['order']===undefined?{}:{'order':_0x20e5d2[_0x1a26c9(0x167)]}};});}
@@ -13,7 +13,9 @@ export declare function buildCompareRows(localPages: LocalPage[], onlinePaths: S
13
13
  local: boolean;
14
14
  online: boolean;
15
15
  }[];
16
- export declare function doCreateMenus(appCode: string, cookie: string, pages: LocalPage[], resources?: string[]): Promise<{
16
+ export declare function doCreateMenus(appCode: string, cookie: string, pages: LocalPage[], resources?: string[], options?: {
17
+ appName?: string;
18
+ }): Promise<{
17
19
  created: number;
18
20
  failed: number;
19
21
  labels: string[];
@@ -1 +1 @@
1
- (function(_0x1307af,_0x2fbb03){const _0x87e44c=a167_0x5425,_0x238883=_0x1307af();while(!![]){try{const _0x33d0bc=parseInt(_0x87e44c(0x174))/0x1+parseInt(_0x87e44c(0x172))/0x2*(parseInt(_0x87e44c(0x17c))/0x3)+-parseInt(_0x87e44c(0x16e))/0x4*(-parseInt(_0x87e44c(0x16c))/0x5)+parseInt(_0x87e44c(0x171))/0x6+-parseInt(_0x87e44c(0x17a))/0x7*(parseInt(_0x87e44c(0x175))/0x8)+-parseInt(_0x87e44c(0x16f))/0x9+parseInt(_0x87e44c(0x17d))/0xa*(-parseInt(_0x87e44c(0x16b))/0xb);if(_0x33d0bc===_0x2fbb03)break;else _0x238883['push'](_0x238883['shift']());}catch(_0xa2addf){_0x238883['push'](_0x238883['shift']());}}}(a167_0x50ee,0xdc178));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';function a167_0x5425(_0x545fd3,_0x2af388){_0x545fd3=_0x545fd3-0x16a;const _0x50ee71=a167_0x50ee();let _0x54259e=_0x50ee71[_0x545fd3];return _0x54259e;}export function validateJsUrl(_0x1a7c7d){const _0x520022=a167_0x5425,_0x95ded3=[];return!isValidJsHttpsUrl(_0x1a7c7d)&&_0x95ded3[_0x520022(0x176)](_0x520022(0x179)),{'ok':_0x95ded3[_0x520022(0x16a)]===0x0,'errors':_0x95ded3};}export function validateCssUrl(_0x5200b8){const _0x3204ca=a167_0x5425,_0x42f983=[];return!isValidCssHttpsUrl(_0x5200b8)&&_0x42f983[_0x3204ca(0x176)](_0x3204ca(0x170)),{'ok':_0x42f983[_0x3204ca(0x16a)]===0x0,'errors':_0x42f983};}export async function validateJsUrlReachable(_0x977e39){const _0x5343b4=a167_0x5425,_0x11149a=validateJsUrl(_0x977e39);if(!_0x11149a['ok'])return _0x11149a;const _0x12121b=await isUrlReachable(_0x977e39);if(!_0x12121b)_0x11149a[_0x5343b4(0x17b)]['push']('JS\x20URL\x20is\x20unreachable');return{'ok':_0x11149a[_0x5343b4(0x17b)][_0x5343b4(0x16a)]===0x0,'errors':_0x11149a[_0x5343b4(0x17b)]};}export async function validateCssUrlReachable(_0x664b90){const _0x50bbf3=a167_0x5425,_0x670beb=validateCssUrl(_0x664b90);if(!_0x670beb['ok'])return _0x670beb;const _0x3abddb=await isUrlReachable(_0x664b90);if(!_0x3abddb)_0x670beb[_0x50bbf3(0x17b)]['push']('CSS\x20URL\x20is\x20unreachable');return{'ok':_0x670beb[_0x50bbf3(0x17b)][_0x50bbf3(0x16a)]===0x0,'errors':_0x670beb[_0x50bbf3(0x17b)]};}export function buildCompareRows(_0x2d1109,_0x327cd2){const _0x282a5e=a167_0x5425;return _0x2d1109[_0x282a5e(0x177)](_0x63a1d0=>({'label':_0x63a1d0[_0x282a5e(0x16d)],'path':_0x63a1d0['path'],'local':!![],'online':_0x327cd2[_0x282a5e(0x178)](_0x63a1d0[_0x282a5e(0x173)])}));}export async function doCreateMenus(_0x582703,_0x5cca98,_0x275028,_0x18a5d8){const _0xe8845a=a167_0x5425,_0x738bba=await createMenus(_0x582703,_0x5cca98,_0x275028,_0x18a5d8);return{'created':_0x738bba[_0xe8845a(0x16a)],'failed':0x0,'labels':_0x275028[_0xe8845a(0x177)](_0x3c1008=>_0x3c1008[_0xe8845a(0x16d)]),'menus':_0x738bba};}export function filterMenusWithResources(_0x5d1594){const _0x1aa1ad=a167_0x5425;return _0x5d1594['filter'](_0x2c5105=>_0x2c5105['resources'][_0x1aa1ad(0x16a)]>0x0);}export async function fetchMenuData(_0x1c6412,_0x1b8f60){const _0x18ac82=a167_0x5425,_0x2220c3=getLocalPages(),_0x5cbe0c=await getOnlineMenuList(_0x1c6412,_0x1b8f60),_0x50d2e7=new Set(_0x5cbe0c[_0x18ac82(0x177)](_0x3bdc18=>_0x3bdc18[_0x18ac82(0x173)]));return{'localPages':_0x2220c3,'onlineMenuList':_0x5cbe0c,'onlinePaths':_0x50d2e7};}function a167_0x50ee(){const _0x36286d=['path','764237ZzrKdG','4072kPbYQe','push','map','has','JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','17311qAWLHI','errors','3273273cvzpDL','10OMawLW','length','19851403ZDRgbO','85qPbpYb','label','386752FNoPzv','7793082mdqUkd','CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL','7990800hFdGCb','2LIxJjb'];a167_0x50ee=function(){return _0x36286d;};return a167_0x50ee();}export async function fetchOnlineMenuList(_0x59580e,_0x459627){return getOnlineMenuList(_0x59580e,_0x459627);}
1
+ (function(_0x588e49,_0x3b2bdf){const _0x4ad2f1=a168_0x5909,_0x561d29=_0x588e49();while(!![]){try{const _0x59642c=parseInt(_0x4ad2f1(0xd3))/0x1*(parseInt(_0x4ad2f1(0xd6))/0x2)+parseInt(_0x4ad2f1(0xde))/0x3*(-parseInt(_0x4ad2f1(0xd4))/0x4)+-parseInt(_0x4ad2f1(0xe3))/0x5+-parseInt(_0x4ad2f1(0xe0))/0x6*(-parseInt(_0x4ad2f1(0xdf))/0x7)+-parseInt(_0x4ad2f1(0xdb))/0x8+parseInt(_0x4ad2f1(0xd9))/0x9+parseInt(_0x4ad2f1(0xd1))/0xa;if(_0x59642c===_0x3b2bdf)break;else _0x561d29['push'](_0x561d29['shift']());}catch(_0x548926){_0x561d29['push'](_0x561d29['shift']());}}}(a168_0x2033,0xace65));function a168_0x5909(_0x316721,_0x3c1d74){_0x316721=_0x316721-0xd1;const _0x2033a7=a168_0x2033();let _0x5909eb=_0x2033a7[_0x316721];return _0x5909eb;}import{menuPathKey}from'../../../commands/menu/shared/path.js';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(_0x1e6989){const _0x42e172=a168_0x5909,_0x38c763=[];return!isValidJsHttpsUrl(_0x1e6989)&&_0x38c763['push'](_0x42e172(0xda)),{'ok':_0x38c763[_0x42e172(0xe5)]===0x0,'errors':_0x38c763};}export function validateCssUrl(_0xaa3dea){const _0x18efd0=a168_0x5909,_0x5bfab0=[];return!isValidCssHttpsUrl(_0xaa3dea)&&_0x5bfab0[_0x18efd0(0xd5)]('CSS\x20URL\x20must\x20be\x20a\x20valid\x20https://...css\x20URL'),{'ok':_0x5bfab0[_0x18efd0(0xe5)]===0x0,'errors':_0x5bfab0};}function a168_0x2033(){const _0x46e0e8=['JS\x20URL\x20must\x20be\x20a\x20valid\x20https://...js\x20URL','9995664cBEHbE','label','JS\x20URL\x20is\x20unreachable','9iVXolJ','7MarXVN','7415934uPWbIY','errors','path','6185015QAzEJn','map','length','11906220QoXhsp','has','225WRTFmE','1874564hXTTPx','push','8298WAKvIe','CSS\x20URL\x20is\x20unreachable','resources','11164005SuPsRP'];a168_0x2033=function(){return _0x46e0e8;};return a168_0x2033();}export async function validateJsUrlReachable(_0x500e90){const _0xb1942c=a168_0x5909,_0x42787d=validateJsUrl(_0x500e90);if(!_0x42787d['ok'])return _0x42787d;const _0x478e86=await isUrlReachable(_0x500e90);if(!_0x478e86)_0x42787d[_0xb1942c(0xe1)][_0xb1942c(0xd5)](_0xb1942c(0xdd));return{'ok':_0x42787d[_0xb1942c(0xe1)][_0xb1942c(0xe5)]===0x0,'errors':_0x42787d[_0xb1942c(0xe1)]};}export async function validateCssUrlReachable(_0x1c1791){const _0x3b45fe=a168_0x5909,_0x2232e3=validateCssUrl(_0x1c1791);if(!_0x2232e3['ok'])return _0x2232e3;const _0x3d7187=await isUrlReachable(_0x1c1791);if(!_0x3d7187)_0x2232e3[_0x3b45fe(0xe1)]['push'](_0x3b45fe(0xd7));return{'ok':_0x2232e3[_0x3b45fe(0xe1)]['length']===0x0,'errors':_0x2232e3[_0x3b45fe(0xe1)]};}export function buildCompareRows(_0x9b67fa,_0x2c837e){const _0x593fd0=a168_0x5909;return _0x9b67fa[_0x593fd0(0xe4)](_0x2f9001=>({'label':_0x2f9001[_0x593fd0(0xdc)],'path':_0x2f9001['path'],'local':!![],'online':_0x2c837e[_0x593fd0(0xd2)](menuPathKey(_0x2f9001[_0x593fd0(0xe2)]))}));}export async function doCreateMenus(_0x53fdf8,_0x4e528b,_0x49e106,_0x22371c,_0x2cb795){const _0x3ae6c5=a168_0x5909,_0x378315=_0x2cb795?await createMenus(_0x53fdf8,_0x4e528b,_0x49e106,_0x22371c,_0x2cb795):await createMenus(_0x53fdf8,_0x4e528b,_0x49e106,_0x22371c);return{'created':_0x378315['length'],'failed':0x0,'labels':_0x49e106[_0x3ae6c5(0xe4)](_0x523e33=>_0x523e33[_0x3ae6c5(0xdc)]),'menus':_0x378315};}export function filterMenusWithResources(_0x2e9a36){const _0x559454=a168_0x5909;return _0x2e9a36['filter'](_0x54c7f8=>_0x54c7f8[_0x559454(0xd8)][_0x559454(0xe5)]>0x0);}export async function fetchMenuData(_0xa35e22,_0x3bcef9){const _0x25be83=a168_0x5909,_0x482382=getLocalPages(),_0x4822df=await getOnlineMenuList(_0xa35e22,_0x3bcef9),_0x3213a8=new Set(_0x4822df[_0x25be83(0xe4)](_0x3645ce=>menuPathKey(_0x3645ce[_0x25be83(0xe2)])));return{'localPages':_0x482382,'onlineMenuList':_0x4822df,'onlinePaths':_0x3213a8};}export async function fetchOnlineMenuList(_0x993a1d,_0x456f50){return getOnlineMenuList(_0x993a1d,_0x456f50);}
@@ -1 +1 @@
1
- const a168_0x1db2f7=a168_0x2bd3;function a168_0x2bd3(_0x19f25a,_0x1bb6de){_0x19f25a=_0x19f25a-0x10b;const _0xbe0c13=a168_0xbe0c();let _0x2bd3cc=_0xbe0c13[_0x19f25a];return _0x2bd3cc;}(function(_0x308f16,_0x10aab2){const _0x215bba=a168_0x2bd3,_0x24052e=_0x308f16();while(!![]){try{const _0x3af224=parseInt(_0x215bba(0x12f))/0x1*(-parseInt(_0x215bba(0x116))/0x2)+-parseInt(_0x215bba(0x16d))/0x3*(-parseInt(_0x215bba(0x146))/0x4)+-parseInt(_0x215bba(0x12c))/0x5*(-parseInt(_0x215bba(0x12b))/0x6)+-parseInt(_0x215bba(0x164))/0x7*(parseInt(_0x215bba(0x15c))/0x8)+-parseInt(_0x215bba(0x13a))/0x9*(parseInt(_0x215bba(0x132))/0xa)+parseInt(_0x215bba(0x11c))/0xb*(-parseInt(_0x215bba(0x112))/0xc)+parseInt(_0x215bba(0x16c))/0xd*(parseInt(_0x215bba(0x149))/0xe);if(_0x3af224===_0x10aab2)break;else _0x24052e['push'](_0x24052e['shift']());}catch(_0x47a9c6){_0x24052e['push'](_0x24052e['shift']());}}}(a168_0xbe0c,0x9aa49));import{CliError,CliErrors}from'../../../errors.js';import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';function a168_0xbe0c(){const _0x372ebd=['277936lMPOpC','Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches','\x20parent\x20changed:\x20expected\x20','error','menu_permission_denied','hint','backend','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','84eNZMkc','string','number','length','failed','stringify','byId','required','29439878OMXbBw','546DgwivS','Permission\x20denied\x20while\x20attempting\x20to\x20','message','\x20menu\x20','defineProperty','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.','data','cookie','Online\x20menu\x20not\x20found:\x20','bool','menu_not_found','flagMissing','hash','cascade','warnings','3282828cxllvD','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.','max','snapshotHash','1143148furXzf','test','selector','dryRun','sort','\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20','44POGpwW','unknown','type','Menu\x20','root','api_error','dry-run',';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.','\x20child\x20count\x20changed:\x20expected\x20','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','expect-path','menu_sort_invalid','deleteOrder','hasOwnProperty','call','17502eRJltE','830WFBCNK','filter',',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.','1SURdvu','str','Cannot\x20append\x20a\x20','1791670PRKPve','Sibling\x20sort\x20value\x20(non-negative\x20integer)','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.','planFile','after','num','code','9EWScPN','\x20path\x20changed:\x20expected\x20','menu_state_drift','read\x20online\x20menu\x20facts\x20before\x20','folder','appCode','expect-parent-id','Exact\x20online\x20menu\x20id','Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.','targets','validation','toLowerCase','3220PGIlmN','map','succeeded','14IwgJnW','This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','path','verification','plannedActions','parent-id','menu_parent_not_folder','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','trim','rawFlags','parentId','isSafeInteger','Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node','menu_verification_failed','expected-children-count','--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.','Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches','pre-write-recheck',',\x20current\x20'];a168_0xbe0c=function(){return _0x372ebd;};return a168_0xbe0c();}export const MAX_MENU_SORT=0x7fffffff;export const MENU_ID_FLAG={'name':'id','type':a168_0x1db2f7(0x166),'required':!![],'description':a168_0x1db2f7(0x141)};export const MENU_SORT_FLAG={'name':a168_0x1db2f7(0x11a),'type':a168_0x1db2f7(0x166),'description':a168_0x1db2f7(0x133)};export const MENU_PARENT_ID_FLAG={'name':a168_0x1db2f7(0x14e),'type':a168_0x1db2f7(0x165),'description':a168_0x1db2f7(0x155)};export const MENU_EXPECT_PARENT_ID_FLAG={'name':a168_0x1db2f7(0x140),'type':a168_0x1db2f7(0x165),'description':'Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level'};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a168_0x1db2f7(0x126),'type':'string','description':a168_0x1db2f7(0x15d)},{'name':a168_0x1db2f7(0x157),'type':a168_0x1db2f7(0x166),'description':a168_0x1db2f7(0x159)}];export function validateExactId(_0x46c67c){const _0x2171f5=a168_0x1db2f7,_0x11ddf1=_0x46c67c[_0x2171f5(0x138)]('id');if(!Number[_0x2171f5(0x154)](_0x11ddf1)||_0x11ddf1<=0x0)throw CliErrors[_0x2171f5(0x144)](_0x2171f5(0x158));return _0x11ddf1;}export function validateSort(_0x2b35d9,_0x14330a=a168_0x1db2f7(0x11a)){const _0x1d9d8b=a168_0x1db2f7;if(!hasFlag(_0x2b35d9,_0x14330a))return undefined;const _0x42cd77=_0x2b35d9['num'](_0x14330a);if(!Number['isSafeInteger'](_0x42cd77)||_0x42cd77<0x0||_0x42cd77>MAX_MENU_SORT)throw menuError(_0x1d9d8b(0x127),'--'+_0x14330a+'\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20'+MAX_MENU_SORT+'.',_0x1d9d8b(0x150));return _0x42cd77;}export function nextSiblingSort(_0x24a6ce,_0x165592,_0x417cc1){const _0x53cb58=a168_0x1db2f7,_0x33dcb3=getChildren(_0x24a6ce,_0x165592)[_0x53cb58(0x147)](_0x27f61c=>_0x27f61c[_0x53cb58(0x11a)])[_0x53cb58(0x12d)](_0x17a071=>typeof _0x17a071==='number');if(_0x33dcb3[_0x53cb58(0x167)]===0x0)return 0x0;const _0x4529c2=Math[_0x53cb58(0x114)](..._0x33dcb3);if(_0x4529c2>=MAX_MENU_SORT)throw menuError('menu_sort_overflow',_0x53cb58(0x131)+_0x417cc1+_0x53cb58(0x11b)+_0x4529c2+'.','Reorder\x20sibling\x20menus\x20below\x20'+MAX_MENU_SORT+_0x53cb58(0x12e));return _0x4529c2+0x1;}export function requireExplicitYes(_0xed01da){const _0xbaf051=a168_0x1db2f7;if(_0xed01da[_0xbaf051(0x10c)](_0xbaf051(0x122)))return;if(!_0xed01da['bool']('yes'))throw menuError('menu_confirmation_required',_0xbaf051(0x14a),_0xbaf051(0x172));}export async function fetchMutationSnapshot(_0x15302d,_0x1b21a1,_0x21a5b5){const _0x95fd19=a168_0x1db2f7;try{return await fetchMenuSnapshot(_0x15302d['appCode'],_0x15302d['cookie']);}catch(_0x3e22d1){throw mapMenuApiError(_0x3e22d1,_0x95fd19(0x13d)+_0x1b21a1,_0x21a5b5);}}export async function recheckMutationSnapshot(_0x396e1b,_0x1f58e3,_0x4bc343,_0x4f2d83){const _0x1cc362=a168_0x1db2f7;let _0x5dfb41;try{_0x5dfb41=await fetchMenuSnapshot(_0x396e1b[_0x1cc362(0x13f)],_0x396e1b[_0x1cc362(0x174)]);}catch(_0x285dca){const _0x5bb7d4=mapMenuApiError(_0x285dca,'recheck\x20online\x20menu\x20facts\x20before\x20'+_0x4bc343,_0x4f2d83);throw menuFailure(_0x5bb7d4,_0x1f58e3,{'stage':_0x1cc362(0x15a),'failed':_0x4f2d83==null?{}:{'id':_0x4f2d83}});}if(_0x5dfb41['hash']!==_0x1f58e3[_0x1cc362(0x115)]){const _0x3829e0=menuError(_0x1cc362(0x13c),'Online\x20menu\x20state\x20changed\x20before\x20'+_0x4bc343+_0x1cc362(0x123),_0x1cc362(0x113));throw menuFailure(_0x3829e0,_0x1f58e3,{'stage':_0x1cc362(0x15a),'failed':{..._0x4f2d83==null?{}:{'id':_0x4f2d83},'expectedSnapshotHash':_0x1f58e3[_0x1cc362(0x115)],'currentSnapshotHash':_0x5dfb41[_0x1cc362(0x10f)]}});}return _0x5dfb41;}export function parseParentId(_0x45fba1,_0x559ced,_0x3617d2={}){const _0x5ac2ab=a168_0x1db2f7;if(!hasFlag(_0x45fba1,_0x559ced)){if(_0x3617d2[_0x5ac2ab(0x16b)])throw CliErrors[_0x5ac2ab(0x10e)](_0x559ced);return undefined;}const _0x1374d5=_0x45fba1[_0x5ac2ab(0x130)](_0x559ced)[_0x5ac2ab(0x151)]();if(_0x1374d5[_0x5ac2ab(0x145)]()==='root')return null;if(!/^\d+$/[_0x5ac2ab(0x117)](_0x1374d5))throw CliErrors[_0x5ac2ab(0x144)]('--'+_0x559ced+_0x5ac2ab(0x134));const _0x549168=Number(_0x1374d5);if(!Number['isSafeInteger'](_0x549168)||_0x549168<=0x0)throw CliErrors[_0x5ac2ab(0x144)]('--'+_0x559ced+_0x5ac2ab(0x134));return _0x549168;}export function requireMenu(_0x27b9e3,_0x1650b8){const _0x1b8d70=a168_0x1db2f7,_0x47a6fc=_0x27b9e3[_0x1b8d70(0x16a)]['get'](_0x1650b8);if(!_0x47a6fc)throw menuError(_0x1b8d70(0x10d),_0x1b8d70(0x10b)+_0x1650b8,'Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.');return _0x47a6fc;}export function requireFolder(_0xe01ef2,_0x5b1342){const _0x1a0d35=a168_0x1db2f7,_0x56c175=requireMenu(_0xe01ef2,_0x5b1342);if(_0x56c175['type']!==_0x1a0d35(0x13e))throw menuError(_0x1a0d35(0x14f),_0x1a0d35(0x11f)+_0x5b1342+'\x20is\x20type\x20\x22'+(_0x56c175[_0x1a0d35(0x11e)]||_0x1a0d35(0x11d))+'\x22,\x20not\x20folder.','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.');return _0x56c175;}export function assertExpectedState(_0x13572f,_0x4077d7){const _0x54be1b=a168_0x1db2f7;if(hasFlag(_0x13572f,_0x54be1b(0x140))){const _0x22b9b4=parseParentId(_0x13572f,_0x54be1b(0x140),{'required':!![]});if(_0x4077d7[_0x54be1b(0x153)]!==_0x22b9b4)throw stateDrift(_0x54be1b(0x11f)+_0x4077d7['id']+_0x54be1b(0x15e)+formatParent(_0x22b9b4)+_0x54be1b(0x15b)+formatParent(_0x4077d7[_0x54be1b(0x153)])+'.');}if(hasFlag(_0x13572f,_0x54be1b(0x126))){const _0x1ebf31=_0x13572f[_0x54be1b(0x130)](_0x54be1b(0x126));if(_0x4077d7['path']!==_0x1ebf31)throw stateDrift(_0x54be1b(0x11f)+_0x4077d7['id']+_0x54be1b(0x13b)+JSON['stringify'](_0x1ebf31)+_0x54be1b(0x15b)+JSON[_0x54be1b(0x169)](_0x4077d7[_0x54be1b(0x14b)])+'.');}if(hasFlag(_0x13572f,_0x54be1b(0x157))){const _0x39d658=_0x13572f['num']('expected-children-count');if(!Number[_0x54be1b(0x154)](_0x39d658)||_0x39d658<0x0)throw CliErrors[_0x54be1b(0x144)]('--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.');if(_0x4077d7['childrenCount']!==_0x39d658)throw stateDrift(_0x54be1b(0x11f)+_0x4077d7['id']+_0x54be1b(0x124)+_0x39d658+',\x20current\x20'+_0x4077d7['childrenCount']+'.');}}export function assertVerified(_0x214326,_0x3efaac,_0x3cfedc=a168_0x1db2f7(0x163)){const _0x168e67=a168_0x1db2f7;if(!_0x214326)throw menuError(_0x168e67(0x156),_0x3efaac,_0x3cfedc);}export function mutationResult(_0x57f00c){const _0x5f537e=a168_0x1db2f7;return{'operation':_0x57f00c['operation'],'selector':_0x57f00c[_0x5f537e(0x118)],'before':_0x57f00c['before'],'after':_0x57f00c[_0x5f537e(0x137)],'dryRun':_0x57f00c[_0x5f537e(0x119)],'backend':_0x57f00c[_0x5f537e(0x162)],..._0x57f00c[_0x5f537e(0x14d)]?{'plannedActions':_0x57f00c[_0x5f537e(0x14d)]}:{},..._0x57f00c[_0x5f537e(0x143)]?{'targets':_0x57f00c[_0x5f537e(0x143)]}:{},..._0x57f00c[_0x5f537e(0x128)]?{'deleteOrder':_0x57f00c[_0x5f537e(0x128)]}:{},'snapshotHash':_0x57f00c['snapshotHash'],..._0x57f00c[_0x5f537e(0x110)]?{'cascade':_0x57f00c[_0x5f537e(0x110)]}:{},..._0x57f00c[_0x5f537e(0x136)]?{'planFile':_0x57f00c[_0x5f537e(0x136)]}:{},'succeeded':_0x57f00c[_0x5f537e(0x148)]??[],'failed':_0x57f00c[_0x5f537e(0x168)]??[],'warnings':_0x57f00c[_0x5f537e(0x111)]??[],'verification':_0x57f00c[_0x5f537e(0x14c)],'error':_0x57f00c[_0x5f537e(0x15f)]};}export function menuDryRunResult(_0x4b6107,_0x3bb9a9){return{..._0x4b6107,..._0x3bb9a9};}export function menuFailure(_0x1cb584,_0x46a976,_0x81e01c){const _0x2c2ce3=a168_0x1db2f7,_0x134544=mutationResult({..._0x46a976,'after':_0x81e01c[_0x2c2ce3(0x137)]===undefined?_0x46a976[_0x2c2ce3(0x137)]:_0x81e01c['after'],'backend':_0x81e01c[_0x2c2ce3(0x162)]??_0x46a976[_0x2c2ce3(0x162)],'dryRun':![],'succeeded':_0x81e01c[_0x2c2ce3(0x148)]??[],'failed':_0x81e01c['failedRecords']??[{..._0x81e01c[_0x2c2ce3(0x168)]??{},'stage':_0x81e01c['stage'],'code':_0x1cb584[_0x2c2ce3(0x139)],'message':_0x1cb584[_0x2c2ce3(0x16f)]}],'warnings':[..._0x46a976[_0x2c2ce3(0x111)],..._0x81e01c['warnings']??[]],'verification':_0x81e01c[_0x2c2ce3(0x14c)],'error':{'code':_0x1cb584[_0x2c2ce3(0x139)],'message':_0x1cb584[_0x2c2ce3(0x16f)],..._0x1cb584[_0x2c2ce3(0x161)]?{'hint':_0x1cb584['hint']}:{}}});return Object[_0x2c2ce3(0x171)](_0x1cb584,_0x2c2ce3(0x173),{'value':_0x134544,'enumerable':!![],'configurable':!![]}),_0x1cb584;}export function asVerificationError(_0x20e80,_0x54db5b){const _0x248dd2=a168_0x1db2f7;if(_0x20e80 instanceof CliError&&_0x20e80['code']===_0x248dd2(0x156))return _0x20e80;const _0x301d0a=_0x20e80 instanceof Error?_0x20e80[_0x248dd2(0x16f)]:String(_0x20e80);return menuError(_0x248dd2(0x156),''+_0x54db5b+(_0x301d0a?':\x20'+_0x301d0a:''),_0x248dd2(0x135));}export function describeMenuErrorCause(_0x98e12,_0x4d8cfe,_0x19d4b8){const _0x214cb9=a168_0x1db2f7,_0x349466=mapMenuApiError(_0x98e12,_0x4d8cfe,_0x19d4b8);return{'causeCode':_0x349466[_0x214cb9(0x139)],'causeMessage':_0x349466['message']};}export function hasFlag(_0x41c8db,_0x4c0ba6){const _0x5f7821=a168_0x1db2f7;return Object['prototype'][_0x5f7821(0x129)][_0x5f7821(0x12a)](_0x41c8db['rawFlags'],_0x4c0ba6)&&_0x41c8db[_0x5f7821(0x152)][_0x4c0ba6]!==undefined;}export function toApiParentId(_0xea63a6){return _0xea63a6??0x0;}export function formatParent(_0x6a4dff){const _0x184bef=a168_0x1db2f7;return _0x6a4dff==null?_0x184bef(0x120):String(_0x6a4dff);}export function menuError(_0x9d7709,_0x264975,_0x12ec64){return new CliError(_0x9d7709,0x1,_0x264975,_0x12ec64);}export function mapMenuApiError(_0x24cc57,_0x271c9a,_0x215295){const _0x22d2a1=a168_0x1db2f7;if(_0x24cc57 instanceof CliError&&_0x24cc57['code']!==_0x22d2a1(0x121))return _0x24cc57;const _0x170b9e=_0x24cc57 instanceof Error?_0x24cc57[_0x22d2a1(0x16f)]:String(_0x24cc57);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x22d2a1(0x117)](_0x170b9e))return menuError(_0x22d2a1(0x160),_0x22d2a1(0x16e)+_0x271c9a+(_0x215295?_0x22d2a1(0x170)+_0x215295:'')+'.',_0x22d2a1(0x125));return menuError('menu_mutation_failed','Failed\x20to\x20'+_0x271c9a+(_0x215295?'\x20menu\x20'+_0x215295:'')+':\x20'+_0x170b9e,'Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.');}export function isMenuResponseLoss(_0x5e1eec){const _0x39e98b=a168_0x1db2f7,_0x596294=_0x5e1eec instanceof Error?_0x5e1eec['message']:String(_0x5e1eec);if(_0x5e1eec instanceof CliError)return _0x5e1eec[_0x39e98b(0x139)]===_0x39e98b(0x121)&&/^Request (?:failed|timeout):/i[_0x39e98b(0x117)](_0x596294);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i[_0x39e98b(0x117)](_0x596294);}function stateDrift(_0x6e9a08){const _0x447de0=a168_0x1db2f7;return menuError(_0x447de0(0x13c),_0x6e9a08,_0x447de0(0x142));}
1
+ const a169_0xe6f81d=a169_0x2401;(function(_0x4b3751,_0x738c72){const _0x2eee56=a169_0x2401,_0x2a1deb=_0x4b3751();while(!![]){try{const _0x4f3b65=parseInt(_0x2eee56(0x198))/0x1*(-parseInt(_0x2eee56(0x1a2))/0x2)+-parseInt(_0x2eee56(0x1ae))/0x3*(-parseInt(_0x2eee56(0x1ac))/0x4)+parseInt(_0x2eee56(0x19e))/0x5+-parseInt(_0x2eee56(0x149))/0x6+-parseInt(_0x2eee56(0x191))/0x7*(parseInt(_0x2eee56(0x184))/0x8)+-parseInt(_0x2eee56(0x15c))/0x9*(parseInt(_0x2eee56(0x18f))/0xa)+parseInt(_0x2eee56(0x1aa))/0xb*(parseInt(_0x2eee56(0x1ab))/0xc);if(_0x4f3b65===_0x738c72)break;else _0x2a1deb['push'](_0x2a1deb['shift']());}catch(_0x232c47){_0x2a1deb['push'](_0x2a1deb['shift']());}}}(a169_0x51c7,0x8c149));import{CliError,CliErrors}from'../../../errors.js';function a169_0x51c7(){const _0x5b762d=['parent-id','targets','Permission\x20denied\x20while\x20attempting\x20to\x20','after','read\x20online\x20menu\x20facts\x20before\x20','menu_verification_failed','toLowerCase','The\x20write\x20may\x20already\x20have\x20taken\x20effect.\x20Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20inspect\x20the\x20returned\x20id\x20before\x20retrying.','root','expected-children-count','appCode','filter','deleteOrder','failedRecords','trim','Failed\x20to\x20','menu_state_drift','expect-parent-id','456rkkjTy','menu_mutation_failed','map','\x20parent\x20changed:\x20expected\x20','prototype','warnings','validation','test','menu_confirmation_required',',\x20current\x20','Cannot\x20append\x20a\x20','239740eIViBm','parentId','140707bYLEMi','hasOwnProperty','Run\x20the\x20same\x20command\x20with\x20--dry-run\x20again\x20and\x20review\x20the\x20latest\x20snapshot\x20before\x20retrying.','menu_parent_not_folder','message','\x20is\x20type\x20\x22','stage','15269WqMlUx','string','code','selector','hash','recheck\x20online\x20menu\x20facts\x20before\x20','3670740NRUkKy','plannedActions','str','Abort\x20unless\x20the\x20current\x20parent\x20id\x20matches;\x20use\x20root\x20for\x20root\x20level','86DnOLcO','before','\x20must\x20be\x20an\x20integer\x20between\x200\x20and\x20','\x20menu\x20','required','api_error','menu_sort_invalid','backend','6743yKRDLj','50844ZWPcVC','17472nrLLvb','snapshotHash','162MltcSQ','isSafeInteger','Online\x20menu\x20state\x20changed\x20before\x20','Re-run\x20the\x20command\x20with\x20--dry-run\x20and\x20update\x20the\x20expect\x20flags\x20before\x20retrying.','max','length','yes','type','5133432RFxKMO','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20and\x20use\x20an\x20exact\x20id\x20from\x20the\x20current\x20app.','cascade','succeeded','operation','path','--expected-children-count\x20must\x20be\x20a\x20non-negative\x20integer.','pre-write-recheck','planFile','cookie','sort','Menu\x20','\x22,\x20not\x20folder.','expect-path','byId','Exact\x20online\x20menu\x20id','Choose\x20a\x20sort\x20value\x20within\x20the\x20Java\x20Integer\x20range\x20used\x20by\x20the\x20menu\x20service.','menu_sort_overflow','Abort\x20unless\x20the\x20current\x20direct\x20child\x20count\x20matches','126RMdgZP','Re-run\x20menu\x20list\x20to\x20inspect\x20the\x20latest\x20online\x20state\x20before\x20retrying.','\x20must\x20be\x20a\x20positive\x20menu\x20id\x20or\x20root.','stringify','failed','rawFlags','data','hint','number','Run\x20`rabetbase\x20menu\x20list\x20--format\x20json`\x20to\x20inspect\x20the\x20latest\x20online\x20menu\x20state.','\x20path\x20changed:\x20expected\x20','get','This\x20menu\x20mutation\x20requires\x20explicit\x20--yes.','\x20child\x20count\x20changed:\x20expected\x20','Confirm\x20that\x20the\x20current\x20account\x20can\x20manage\x20menus\x20for\x20this\x20app.','childrenCount','verification','menu_not_found','num','dryRun','Choose\x20a\x20menu\x20whose\x20type\x20is\x20folder,\x20or\x20use\x20root.','\x20because\x20the\x20current\x20maximum\x20sibling\x20sort\x20is\x20'];a169_0x51c7=function(){return _0x5b762d;};return a169_0x51c7();}import{fetchMenuSnapshot,getChildren}from'../../../commands/menu/shared/facts.js';export const MAX_MENU_SORT=0x7fffffff;export const MENU_ID_FLAG={'name':'id','type':a169_0xe6f81d(0x164),'required':!![],'description':a169_0xe6f81d(0x158)};export const MENU_SORT_FLAG={'name':a169_0xe6f81d(0x153),'type':a169_0xe6f81d(0x164),'description':'Sibling\x20sort\x20value\x20(non-negative\x20integer)'};export const MENU_PARENT_ID_FLAG={'name':a169_0xe6f81d(0x172),'type':'string','description':'Parent\x20folder\x20id;\x20use\x20root\x20for\x20a\x20root-level\x20node'};export const MENU_EXPECT_PARENT_ID_FLAG={'name':a169_0xe6f81d(0x183),'type':a169_0xe6f81d(0x199),'description':a169_0xe6f81d(0x1a1)};export const MENU_EXPECT_FLAGS=[MENU_EXPECT_PARENT_ID_FLAG,{'name':a169_0xe6f81d(0x156),'type':'string','description':'Abort\x20unless\x20the\x20current\x20menu\x20path\x20exactly\x20matches'},{'name':'expected-children-count','type':'number','description':a169_0xe6f81d(0x15b)}];export function validateExactId(_0x10a988){const _0xc16ee0=a169_0xe6f81d,_0x23bbcf=_0x10a988[_0xc16ee0(0x16e)]('id');if(!Number[_0xc16ee0(0x142)](_0x23bbcf)||_0x23bbcf<=0x0)throw CliErrors['validation']('--id\x20must\x20be\x20a\x20positive\x20integer\x20menu\x20id.');return _0x23bbcf;}export function validateSort(_0xbb673,_0x3d9587=a169_0xe6f81d(0x153)){const _0x2a5a7f=a169_0xe6f81d;if(!hasFlag(_0xbb673,_0x3d9587))return undefined;const _0x2ece6e=_0xbb673[_0x2a5a7f(0x16e)](_0x3d9587);if(!Number['isSafeInteger'](_0x2ece6e)||_0x2ece6e<0x0||_0x2ece6e>MAX_MENU_SORT)throw menuError(_0x2a5a7f(0x1a8),'--'+_0x3d9587+_0x2a5a7f(0x1a4)+MAX_MENU_SORT+'.',_0x2a5a7f(0x159));return _0x2ece6e;}export function nextSiblingSort(_0x4e812f,_0x218ce8,_0x497aae){const _0x930c8=a169_0xe6f81d,_0x1e43b2=getChildren(_0x4e812f,_0x218ce8)[_0x930c8(0x186)](_0x5459d3=>_0x5459d3[_0x930c8(0x153)])[_0x930c8(0x17d)](_0x52be36=>typeof _0x52be36===_0x930c8(0x164));if(_0x1e43b2[_0x930c8(0x146)]===0x0)return 0x0;const _0x1357bb=Math[_0x930c8(0x145)](..._0x1e43b2);if(_0x1357bb>=MAX_MENU_SORT)throw menuError(_0x930c8(0x15a),_0x930c8(0x18e)+_0x497aae+_0x930c8(0x171)+_0x1357bb+'.','Reorder\x20sibling\x20menus\x20below\x20'+MAX_MENU_SORT+',\x20or\x20pass\x20an\x20explicit\x20--sort\x20value.');return _0x1357bb+0x1;}export function requireExplicitYes(_0x3e5803){const _0x19d948=a169_0xe6f81d;if(_0x3e5803['bool']('dry-run'))return;if(!_0x3e5803['bool'](_0x19d948(0x147)))throw menuError(_0x19d948(0x18c),_0x19d948(0x168),'Run\x20the\x20same\x20command\x20with\x20--dry-run\x20first,\x20then\x20add\x20--yes\x20after\x20reviewing\x20the\x20plan.');}export async function fetchMutationSnapshot(_0x2f1ca0,_0x4b1741,_0x154c40){const _0x94db24=a169_0xe6f81d;try{return await fetchMenuSnapshot(_0x2f1ca0[_0x94db24(0x17c)],_0x2f1ca0[_0x94db24(0x152)]);}catch(_0x4949c4){throw mapMenuApiError(_0x4949c4,_0x94db24(0x176)+_0x4b1741,_0x154c40);}}export async function recheckMutationSnapshot(_0x131fae,_0x224d5b,_0x492f7f,_0x57bdf5){const _0x342cc6=a169_0xe6f81d;let _0x3c9d77;try{_0x3c9d77=await fetchMenuSnapshot(_0x131fae[_0x342cc6(0x17c)],_0x131fae[_0x342cc6(0x152)]);}catch(_0xdec9e6){const _0x4c1d1c=mapMenuApiError(_0xdec9e6,_0x342cc6(0x19d)+_0x492f7f,_0x57bdf5);throw menuFailure(_0x4c1d1c,_0x224d5b,{'stage':'pre-write-recheck','failed':_0x57bdf5==null?{}:{'id':_0x57bdf5}});}if(_0x3c9d77[_0x342cc6(0x19c)]!==_0x224d5b[_0x342cc6(0x1ad)]){const _0x81b57f=menuError('menu_state_drift',_0x342cc6(0x143)+_0x492f7f+';\x20the\x20planned\x20snapshot\x20is\x20no\x20longer\x20current.',_0x342cc6(0x193));throw menuFailure(_0x81b57f,_0x224d5b,{'stage':_0x342cc6(0x150),'failed':{..._0x57bdf5==null?{}:{'id':_0x57bdf5},'expectedSnapshotHash':_0x224d5b[_0x342cc6(0x1ad)],'currentSnapshotHash':_0x3c9d77[_0x342cc6(0x19c)]}});}return _0x3c9d77;}export function parseParentId(_0x4f7482,_0x5483b7,_0x28bf95={}){const _0x394cb3=a169_0xe6f81d;if(!hasFlag(_0x4f7482,_0x5483b7)){if(_0x28bf95[_0x394cb3(0x1a6)])throw CliErrors['flagMissing'](_0x5483b7);return undefined;}const _0x4b2cc0=_0x4f7482[_0x394cb3(0x1a0)](_0x5483b7)[_0x394cb3(0x180)]();if(_0x4b2cc0[_0x394cb3(0x178)]()===_0x394cb3(0x17a))return null;if(!/^\d+$/[_0x394cb3(0x18b)](_0x4b2cc0))throw CliErrors[_0x394cb3(0x18a)]('--'+_0x5483b7+_0x394cb3(0x15e));const _0x2c00ca=Number(_0x4b2cc0);if(!Number[_0x394cb3(0x142)](_0x2c00ca)||_0x2c00ca<=0x0)throw CliErrors['validation']('--'+_0x5483b7+_0x394cb3(0x15e));return _0x2c00ca;}export function requireMenu(_0x597db6,_0x646186){const _0x58b9f2=a169_0xe6f81d,_0x3c094d=_0x597db6[_0x58b9f2(0x157)][_0x58b9f2(0x167)](_0x646186);if(!_0x3c094d)throw menuError(_0x58b9f2(0x16d),'Online\x20menu\x20not\x20found:\x20'+_0x646186,_0x58b9f2(0x14a));return _0x3c094d;}function a169_0x2401(_0x1a7bab,_0x46c30b){_0x1a7bab=_0x1a7bab-0x142;const _0x51c740=a169_0x51c7();let _0x240132=_0x51c740[_0x1a7bab];return _0x240132;}export function requireFolder(_0x4dc437,_0x45ebf6){const _0x36abe2=a169_0xe6f81d,_0x166c5b=requireMenu(_0x4dc437,_0x45ebf6);if(_0x166c5b[_0x36abe2(0x148)]!=='folder')throw menuError(_0x36abe2(0x194),'Menu\x20'+_0x45ebf6+_0x36abe2(0x196)+(_0x166c5b[_0x36abe2(0x148)]||'unknown')+_0x36abe2(0x155),_0x36abe2(0x170));return _0x166c5b;}export function assertExpectedState(_0x5d35f6,_0x1e3916){const _0x5342a8=a169_0xe6f81d;if(hasFlag(_0x5d35f6,'expect-parent-id')){const _0x5b701b=parseParentId(_0x5d35f6,_0x5342a8(0x183),{'required':!![]});if(_0x1e3916['parentId']!==_0x5b701b)throw stateDrift(_0x5342a8(0x154)+_0x1e3916['id']+_0x5342a8(0x187)+formatParent(_0x5b701b)+_0x5342a8(0x18d)+formatParent(_0x1e3916[_0x5342a8(0x190)])+'.');}if(hasFlag(_0x5d35f6,_0x5342a8(0x156))){const _0x354b11=_0x5d35f6[_0x5342a8(0x1a0)](_0x5342a8(0x156));if(_0x1e3916[_0x5342a8(0x14e)]!==_0x354b11)throw stateDrift(_0x5342a8(0x154)+_0x1e3916['id']+_0x5342a8(0x166)+JSON[_0x5342a8(0x15f)](_0x354b11)+',\x20current\x20'+JSON[_0x5342a8(0x15f)](_0x1e3916['path'])+'.');}if(hasFlag(_0x5d35f6,_0x5342a8(0x17b))){const _0x30f38f=_0x5d35f6[_0x5342a8(0x16e)]('expected-children-count');if(!Number[_0x5342a8(0x142)](_0x30f38f)||_0x30f38f<0x0)throw CliErrors[_0x5342a8(0x18a)](_0x5342a8(0x14f));if(_0x1e3916[_0x5342a8(0x16b)]!==_0x30f38f)throw stateDrift(_0x5342a8(0x154)+_0x1e3916['id']+_0x5342a8(0x169)+_0x30f38f+_0x5342a8(0x18d)+_0x1e3916[_0x5342a8(0x16b)]+'.');}}export function assertVerified(_0x1e20d3,_0x4af6a1,_0x1026ef=a169_0xe6f81d(0x165)){const _0x571c9c=a169_0xe6f81d;if(!_0x1e20d3)throw menuError(_0x571c9c(0x177),_0x4af6a1,_0x1026ef);}export function mutationResult(_0x1541f4){const _0x52ee32=a169_0xe6f81d;return{'operation':_0x1541f4[_0x52ee32(0x14d)],'selector':_0x1541f4[_0x52ee32(0x19b)],'before':_0x1541f4[_0x52ee32(0x1a3)],'after':_0x1541f4['after'],'dryRun':_0x1541f4[_0x52ee32(0x16f)],'backend':_0x1541f4['backend'],..._0x1541f4[_0x52ee32(0x19f)]?{'plannedActions':_0x1541f4[_0x52ee32(0x19f)]}:{},..._0x1541f4['targets']?{'targets':_0x1541f4[_0x52ee32(0x173)]}:{},..._0x1541f4[_0x52ee32(0x17e)]?{'deleteOrder':_0x1541f4[_0x52ee32(0x17e)]}:{},'snapshotHash':_0x1541f4[_0x52ee32(0x1ad)],..._0x1541f4[_0x52ee32(0x14b)]?{'cascade':_0x1541f4['cascade']}:{},..._0x1541f4[_0x52ee32(0x151)]?{'planFile':_0x1541f4[_0x52ee32(0x151)]}:{},'succeeded':_0x1541f4[_0x52ee32(0x14c)]??[],'failed':_0x1541f4[_0x52ee32(0x160)]??[],'warnings':_0x1541f4[_0x52ee32(0x189)]??[],'verification':_0x1541f4[_0x52ee32(0x16c)],'error':_0x1541f4['error']};}export function menuDryRunResult(_0x496d4b,_0x3f6c52){return{..._0x496d4b,..._0x3f6c52};}export function menuFailure(_0x5d3bc3,_0x20d4fd,_0x11b8d7){const _0x216292=a169_0xe6f81d,_0x1cf98e=mutationResult({..._0x20d4fd,'after':_0x11b8d7['after']===undefined?_0x20d4fd[_0x216292(0x175)]:_0x11b8d7[_0x216292(0x175)],'backend':_0x11b8d7[_0x216292(0x1a9)]??_0x20d4fd['backend'],'dryRun':![],'succeeded':_0x11b8d7[_0x216292(0x14c)]??[],'failed':_0x11b8d7[_0x216292(0x17f)]??[{..._0x11b8d7['failed']??{},'stage':_0x11b8d7[_0x216292(0x197)],'code':_0x5d3bc3['code'],'message':_0x5d3bc3[_0x216292(0x195)]}],'warnings':[..._0x20d4fd['warnings'],..._0x11b8d7[_0x216292(0x189)]??[]],'verification':_0x11b8d7[_0x216292(0x16c)],'error':{'code':_0x5d3bc3['code'],'message':_0x5d3bc3[_0x216292(0x195)],..._0x5d3bc3[_0x216292(0x163)]?{'hint':_0x5d3bc3[_0x216292(0x163)]}:{}}});return Object['defineProperty'](_0x5d3bc3,_0x216292(0x162),{'value':_0x1cf98e,'enumerable':!![],'configurable':!![]}),_0x5d3bc3;}export function asVerificationError(_0x18abc1,_0x2bd56c){const _0xfeed60=a169_0xe6f81d;if(_0x18abc1 instanceof CliError&&_0x18abc1[_0xfeed60(0x19a)]===_0xfeed60(0x177))return _0x18abc1;const _0x302e7e=_0x18abc1 instanceof Error?_0x18abc1['message']:String(_0x18abc1);return menuError('menu_verification_failed',''+_0x2bd56c+(_0x302e7e?':\x20'+_0x302e7e:''),_0xfeed60(0x179));}export function describeMenuErrorCause(_0x4d4c3b,_0x142ddc,_0x33941d){const _0x47d454=a169_0xe6f81d,_0x1482e7=mapMenuApiError(_0x4d4c3b,_0x142ddc,_0x33941d);return{'causeCode':_0x1482e7['code'],'causeMessage':_0x1482e7[_0x47d454(0x195)]};}export function hasFlag(_0x37e296,_0x45ef8a){const _0x22dece=a169_0xe6f81d;return Object[_0x22dece(0x188)][_0x22dece(0x192)]['call'](_0x37e296[_0x22dece(0x161)],_0x45ef8a)&&_0x37e296['rawFlags'][_0x45ef8a]!==undefined;}export function toApiParentId(_0x6e3fa9){return _0x6e3fa9??0x0;}export function formatParent(_0x463832){const _0x2b4293=a169_0xe6f81d;return _0x463832==null?_0x2b4293(0x17a):String(_0x463832);}export function menuError(_0x481262,_0x471fec,_0x44485b){return new CliError(_0x481262,0x1,_0x471fec,_0x44485b);}export function mapMenuApiError(_0x10e468,_0x42987a,_0x241409){const _0x4adb7b=a169_0xe6f81d;if(_0x10e468 instanceof CliError&&_0x10e468[_0x4adb7b(0x19a)]!==_0x4adb7b(0x1a7))return _0x10e468;const _0x9a3c68=_0x10e468 instanceof Error?_0x10e468[_0x4adb7b(0x195)]:String(_0x10e468);if(/HTTP 403|forbidden|permission|无权限|权限不足|没有权限/i[_0x4adb7b(0x18b)](_0x9a3c68))return menuError('menu_permission_denied',_0x4adb7b(0x174)+_0x42987a+(_0x241409?_0x4adb7b(0x1a5)+_0x241409:'')+'.',_0x4adb7b(0x16a));return menuError(_0x4adb7b(0x185),_0x4adb7b(0x181)+_0x42987a+(_0x241409?'\x20menu\x20'+_0x241409:'')+':\x20'+_0x9a3c68,_0x4adb7b(0x15d));}export function isMenuResponseLoss(_0x5d36fe){const _0x34c164=a169_0xe6f81d,_0x3db40a=_0x5d36fe instanceof Error?_0x5d36fe[_0x34c164(0x195)]:String(_0x5d36fe);if(_0x5d36fe instanceof CliError)return _0x5d36fe['code']===_0x34c164(0x1a7)&&/^Request (?:failed|timeout):/i[_0x34c164(0x18b)](_0x3db40a);return/timeout|timed out|ECONNRESET|socket hang up|network|fetch failed|connection closed|aborted|terminated|unexpected end of JSON|premature close|body stream/i['test'](_0x3db40a);}function stateDrift(_0x26600c){const _0x254924=a169_0xe6f81d;return menuError(_0x254924(0x182),_0x26600c,_0x254924(0x144));}
@@ -0,0 +1,2 @@
1
+ /** Canonical comparison key; keep the original page path in requests and output. */
2
+ export declare function menuPathKey(path: string): string;
@@ -0,0 +1 @@
1
+ (function(_0x51d75f,_0x361f18){const _0x4a3d3a=a170_0x62b4,_0x523613=_0x51d75f();while(!![]){try{const _0x445165=-parseInt(_0x4a3d3a(0x99))/0x1+-parseInt(_0x4a3d3a(0x96))/0x2*(parseInt(_0x4a3d3a(0x9f))/0x3)+parseInt(_0x4a3d3a(0x9c))/0x4+-parseInt(_0x4a3d3a(0x9b))/0x5+parseInt(_0x4a3d3a(0x98))/0x6*(-parseInt(_0x4a3d3a(0x9e))/0x7)+parseInt(_0x4a3d3a(0xa1))/0x8*(parseInt(_0x4a3d3a(0x9d))/0x9)+parseInt(_0x4a3d3a(0xa0))/0xa;if(_0x445165===_0x361f18)break;else _0x523613['push'](_0x523613['shift']());}catch(_0x1dcd85){_0x523613['push'](_0x523613['shift']());}}}(a170_0x1c05,0xe884c));function a170_0x1c05(){const _0x28d50d=['1918385JISNDW','1272400pLjgsP','36Httrit','413aTRZVW','3kKXMMx','39772730wiScDE','662896ChPvbb','2483818nUnXHN','trim','166692rSJcXf','409701EgGlls','replace'];a170_0x1c05=function(){return _0x28d50d;};return a170_0x1c05();}function a170_0x62b4(_0x1d2326,_0x523ab0){_0x1d2326=_0x1d2326-0x96;const _0x1c0525=a170_0x1c05();let _0x62b48=_0x1c0525[_0x1d2326];return _0x62b48;}export function menuPathKey(_0x18cb93){const _0x12053b=a170_0x62b4,_0x2f2c20=_0x18cb93[_0x12053b(0x97)]();if(!_0x2f2c20)return'';return _0x2f2c20['replace'](/^\/+/,'')[_0x12053b(0x9a)](/\/+$/,'')||'/';}
@@ -9,7 +9,12 @@ export declare function createMenu(appCode: string, cookie: string, params: {
9
9
  export declare function createMenus(appCode: string, cookie: string, pages: Array<{
10
10
  path: string;
11
11
  label: string;
12
- }>, resources?: string[]): Promise<MenuMutationEntity[]>;
12
+ visible?: boolean;
13
+ parentId?: number;
14
+ order?: number;
15
+ }>, resources?: string[], options?: {
16
+ appName?: string;
17
+ }): Promise<MenuMutationEntity[]>;
13
18
  export declare function updateMenuCdnUrl(appCode: string, cookie: string, params: UpdateMenuCdnUrlParams): Promise<MenuMutationEntity>;
14
19
  export declare function createMenuEntity(appCode: string, cookie: string, params: Omit<Menu, "appCode">): Promise<MenuMutationEntity>;
15
20
  export declare function updateMenuEntity(appCode: string, cookie: string, params: Omit<UpdateMenu, "appCode">): Promise<MenuMutationEntity>;