@lovrabet/rabetbase-cli 2.5.2-beta.2 → 2.5.2-beta.4

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 (354) hide show
  1. package/README.md +2 -2
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/api/generate-sdk-config-file.js +1 -1
  6. package/lib/auth/auth-server-ui.js +1 -1
  7. package/lib/auth/auth-server.js +1 -1
  8. package/lib/auth/constant.js +1 -1
  9. package/lib/auth/get-cookie.js +1 -1
  10. package/lib/auth/get-session-user.js +1 -1
  11. package/lib/auth/is-session-valid.js +1 -1
  12. package/lib/auth/login-success-html.js +1 -1
  13. package/lib/auth/logout.js +1 -1
  14. package/lib/cli-flags.js +1 -1
  15. package/lib/cli.js +1 -1
  16. package/lib/commands/api/generate.js +1 -1
  17. package/lib/commands/api/index.js +1 -1
  18. package/lib/commands/api/list.js +1 -1
  19. package/lib/commands/api/pull.js +1 -1
  20. package/lib/commands/api/shared.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/members-list.js +1 -1
  24. package/lib/commands/app/remote-directory.js +1 -1
  25. package/lib/commands/app/shared.d.ts +1 -0
  26. package/lib/commands/app/shared.js +1 -1
  27. package/lib/commands/app-config/delete.js +1 -1
  28. package/lib/commands/app-config/get.js +1 -1
  29. package/lib/commands/app-config/index.js +1 -1
  30. package/lib/commands/app-config/list.js +1 -1
  31. package/lib/commands/app-config/set.js +1 -1
  32. package/lib/commands/app-config/shared.js +1 -1
  33. package/lib/commands/auth/index.js +1 -1
  34. package/lib/commands/bff/create.js +1 -1
  35. package/lib/commands/bff/delete.js +1 -1
  36. package/lib/commands/bff/detail.js +1 -1
  37. package/lib/commands/bff/index.js +1 -1
  38. package/lib/commands/bff/list.js +1 -1
  39. package/lib/commands/bff/pull.js +1 -1
  40. package/lib/commands/bff/push.js +1 -1
  41. package/lib/commands/bff/status.js +1 -1
  42. package/lib/commands/cli-skill/index.js +1 -1
  43. package/lib/commands/cli-update.js +1 -1
  44. package/lib/commands/codegen/index.js +1 -1
  45. package/lib/commands/codegen/sdk.js +1 -1
  46. package/lib/commands/codegen/sql.js +1 -1
  47. package/lib/commands/common/app-registry.js +1 -1
  48. package/lib/commands/common/app-selector.js +1 -1
  49. package/lib/commands/common/async-task.js +1 -1
  50. package/lib/commands/common/dry-run.js +1 -1
  51. package/lib/commands/common/flags.js +1 -1
  52. package/lib/commands/common/local-file.js +1 -1
  53. package/lib/commands/common/validate.js +1 -1
  54. package/lib/commands/config/delete.js +1 -1
  55. package/lib/commands/config/get.js +1 -1
  56. package/lib/commands/config/index.js +1 -1
  57. package/lib/commands/config/init.js +1 -1
  58. package/lib/commands/config/list.js +1 -1
  59. package/lib/commands/config/set.js +1 -1
  60. package/lib/commands/config/shared.js +1 -1
  61. package/lib/commands/dataset/business-group-update.js +1 -1
  62. package/lib/commands/dataset/business-groups.js +1 -1
  63. package/lib/commands/dataset/capability.js +1 -1
  64. package/lib/commands/dataset/delete.js +1 -1
  65. package/lib/commands/dataset/detail.js +1 -1
  66. package/lib/commands/dataset/extend-update.js +1 -1
  67. package/lib/commands/dataset/field-restore.js +1 -1
  68. package/lib/commands/dataset/field-update.js +1 -1
  69. package/lib/commands/dataset/generate.js +1 -1
  70. package/lib/commands/dataset/index.js +1 -1
  71. package/lib/commands/dataset/list.js +1 -1
  72. package/lib/commands/dataset/operations.js +1 -1
  73. package/lib/commands/dataset/relation-audit.js +1 -1
  74. package/lib/commands/dataset/relation-create.js +1 -1
  75. package/lib/commands/dataset/relation-delete.js +1 -1
  76. package/lib/commands/dataset/relation-shared.js +1 -1
  77. package/lib/commands/dataset/relation-update.js +1 -1
  78. package/lib/commands/dataset/relations.js +1 -1
  79. package/lib/commands/dataset/rename.js +1 -1
  80. package/lib/commands/dataset/restore.js +1 -1
  81. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  82. package/lib/commands/db/analysis-batching.js +1 -1
  83. package/lib/commands/db/analyze-batch-plan.js +1 -1
  84. package/lib/commands/db/analyze-cancel.js +1 -1
  85. package/lib/commands/db/analyze-start.js +1 -1
  86. package/lib/commands/db/analyze-status.js +1 -1
  87. package/lib/commands/db/create.js +1 -1
  88. package/lib/commands/db/delete.js +1 -1
  89. package/lib/commands/db/detail.js +1 -1
  90. package/lib/commands/db/diff-refresh-start.js +1 -1
  91. package/lib/commands/db/diff-refresh-status.js +1 -1
  92. package/lib/commands/db/diff.js +1 -1
  93. package/lib/commands/db/index.js +1 -1
  94. package/lib/commands/db/list.js +1 -1
  95. package/lib/commands/db/shared.js +1 -1
  96. package/lib/commands/db/table-diff-shared.js +1 -1
  97. package/lib/commands/db/tables.js +1 -1
  98. package/lib/commands/db/test.js +1 -1
  99. package/lib/commands/db/update.js +1 -1
  100. package/lib/commands/deployment/auto-sync.js +1 -1
  101. package/lib/commands/deployment/index.js +1 -1
  102. package/lib/commands/deployment/sync-all.js +1 -1
  103. package/lib/commands/deployment/sync-jobs.js +1 -1
  104. package/lib/commands/deployment/sync-status.js +1 -1
  105. package/lib/commands/deployment/sync.js +1 -1
  106. package/lib/commands/doctor.js +1 -1
  107. package/lib/commands/file/index.js +1 -1
  108. package/lib/commands/instant-api-policy/current.js +1 -1
  109. package/lib/commands/instant-api-policy/index.js +1 -1
  110. package/lib/commands/instant-api-policy/init.js +1 -1
  111. package/lib/commands/instant-api-policy/publish.js +1 -1
  112. package/lib/commands/instant-api-policy/pull.js +1 -1
  113. package/lib/commands/instant-api-policy/revision.js +1 -1
  114. package/lib/commands/instant-api-policy/revisions.js +1 -1
  115. package/lib/commands/instant-api-policy/rollback.js +1 -1
  116. package/lib/commands/instant-api-policy/shared.js +1 -1
  117. package/lib/commands/instant-api-policy/validate.js +1 -1
  118. package/lib/commands/issue/index.js +1 -1
  119. package/lib/commands/issue/nudge.js +1 -1
  120. package/lib/commands/issue/report.js +1 -1
  121. package/lib/commands/issue/shared.js +1 -1
  122. package/lib/commands/kb/create.js +1 -1
  123. package/lib/commands/kb/delete.js +1 -1
  124. package/lib/commands/kb/detail.js +1 -1
  125. package/lib/commands/kb/index.js +1 -1
  126. package/lib/commands/kb/list.js +1 -1
  127. package/lib/commands/kb/search.js +1 -1
  128. package/lib/commands/kb/shared.js +1 -1
  129. package/lib/commands/kb/update.js +1 -1
  130. package/lib/commands/logs/index.js +1 -1
  131. package/lib/commands/menu/asset-update.js +1 -1
  132. package/lib/commands/menu/delete.js +1 -1
  133. package/lib/commands/menu/external-link-create.js +1 -1
  134. package/lib/commands/menu/external-link-update.js +1 -1
  135. package/lib/commands/menu/group-create.js +1 -1
  136. package/lib/commands/menu/group-update.js +1 -1
  137. package/lib/commands/menu/index.js +1 -1
  138. package/lib/commands/menu/list.js +1 -1
  139. package/lib/commands/menu/move.js +1 -1
  140. package/lib/commands/menu/regroup-start.js +1 -1
  141. package/lib/commands/menu/rename.js +1 -1
  142. package/lib/commands/menu/shared/compare-table.js +1 -1
  143. package/lib/commands/menu/shared/delete-plan.js +1 -1
  144. package/lib/commands/menu/shared/facts.js +1 -1
  145. package/lib/commands/menu/shared/index.js +1 -1
  146. package/lib/commands/menu/shared/inquirer.js +1 -1
  147. package/lib/commands/menu/shared/local-pages.js +1 -1
  148. package/lib/commands/menu/shared/logic.js +1 -1
  149. package/lib/commands/menu/shared/mutations.js +1 -1
  150. package/lib/commands/menu/shared/service.js +1 -1
  151. package/lib/commands/menu/shared/sync-core.js +1 -1
  152. package/lib/commands/menu/shared/update-core.js +1 -1
  153. package/lib/commands/menu/shared/valid-url.js +1 -1
  154. package/lib/commands/menu/sync.js +1 -1
  155. package/lib/commands/menu/visibility-update.js +1 -1
  156. package/lib/commands/notification/config-create.js +1 -1
  157. package/lib/commands/notification/config-delete.js +1 -1
  158. package/lib/commands/notification/config-list.js +1 -1
  159. package/lib/commands/notification/config-update.js +1 -1
  160. package/lib/commands/notification/index.js +1 -1
  161. package/lib/commands/notification/shared.js +1 -1
  162. package/lib/commands/ocr/index.js +1 -1
  163. package/lib/commands/page/create.js +1 -1
  164. package/lib/commands/page/custom/detail.js +1 -1
  165. package/lib/commands/page/custom/list.js +1 -1
  166. package/lib/commands/page/custom/publish.js +1 -1
  167. package/lib/commands/page/custom/shared.d.ts +0 -8
  168. package/lib/commands/page/custom/shared.js +1 -1
  169. package/lib/commands/page/custom/syntax.js +1 -1
  170. package/lib/commands/page/custom/update.js +1 -1
  171. package/lib/commands/page/data-list-status.js +1 -1
  172. package/lib/commands/page/generate-start.js +1 -1
  173. package/lib/commands/page/generate-status.js +1 -1
  174. package/lib/commands/page/index.js +1 -1
  175. package/lib/commands/page/pull.js +1 -1
  176. package/lib/commands/page/push.js +1 -1
  177. package/lib/commands/page/relation-audit.js +1 -1
  178. package/lib/commands/page/restore.js +1 -1
  179. package/lib/commands/page/shared.js +1 -1
  180. package/lib/commands/page/sync.js +1 -1
  181. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  182. package/lib/commands/project/create/format-elapsed.js +1 -1
  183. package/lib/commands/project/create/main.js +1 -1
  184. package/lib/commands/project/create/materialize-project-template.js +1 -1
  185. package/lib/commands/project/create/project-name.js +1 -1
  186. package/lib/commands/project/create/project-template-archive.js +1 -1
  187. package/lib/commands/project/create/project-template-path.js +1 -1
  188. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  189. package/lib/commands/project/create/use-format-code.js +1 -1
  190. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  191. package/lib/commands/project/domain-routing-sync.js +1 -1
  192. package/lib/commands/project/index.js +1 -1
  193. package/lib/commands/project/upgrade.js +1 -1
  194. package/lib/commands/registry.js +1 -1
  195. package/lib/commands/role/delete.js +1 -1
  196. package/lib/commands/role/detail.js +1 -1
  197. package/lib/commands/role/index.js +1 -1
  198. package/lib/commands/role/list.js +1 -1
  199. package/lib/commands/role/shared.js +1 -1
  200. package/lib/commands/role/update.js +1 -1
  201. package/lib/commands/role/user-add.js +1 -1
  202. package/lib/commands/role/user-remove.js +1 -1
  203. package/lib/commands/role/user-resolve.js +1 -1
  204. package/lib/commands/rule/get.js +1 -1
  205. package/lib/commands/rule/index.js +1 -1
  206. package/lib/commands/rule/list.js +1 -1
  207. package/lib/commands/rule/set.js +1 -1
  208. package/lib/commands/rule/shared.js +1 -1
  209. package/lib/commands/run/index.d.ts +4 -0
  210. package/lib/commands/run/index.js +1 -1
  211. package/lib/commands/schema.js +1 -1
  212. package/lib/commands/sql/create.js +1 -1
  213. package/lib/commands/sql/delete.js +1 -1
  214. package/lib/commands/sql/detail.js +1 -1
  215. package/lib/commands/sql/exec.js +1 -1
  216. package/lib/commands/sql/index.js +1 -1
  217. package/lib/commands/sql/list.js +1 -1
  218. package/lib/commands/sql/pull.js +1 -1
  219. package/lib/commands/sql/push.js +1 -1
  220. package/lib/commands/sql/shared.js +1 -1
  221. package/lib/commands/sql/status.js +1 -1
  222. package/lib/commands/sql/validate.js +1 -1
  223. package/lib/commands/task/index.js +1 -1
  224. package/lib/commands/task/status.js +1 -1
  225. package/lib/commands/tenant/index.js +1 -1
  226. package/lib/commands/tenant/members-list.js +1 -1
  227. package/lib/commands/tenant/shared.js +1 -1
  228. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  229. package/lib/commands/user-account/index.js +1 -1
  230. package/lib/commands/workspace/add.js +1 -1
  231. package/lib/commands/workspace/index.js +1 -1
  232. package/lib/commands/workspace/remove.js +1 -1
  233. package/lib/config/domain-config.d.ts +3 -7
  234. package/lib/config/domain-config.js +1 -1
  235. package/lib/config/project-domain-routing.d.ts +5 -1
  236. package/lib/config/project-domain-routing.js +1 -1
  237. package/lib/config/schema.js +1 -1
  238. package/lib/constant/cdn.js +1 -1
  239. package/lib/constant/cli.js +1 -1
  240. package/lib/constant/defaults.js +1 -1
  241. package/lib/constant/domain.js +1 -1
  242. package/lib/constant/env.js +1 -1
  243. package/lib/constant/output.js +1 -1
  244. package/lib/constant/paths.js +1 -1
  245. package/lib/constant/region.js +1 -1
  246. package/lib/constant/risk.js +1 -1
  247. package/lib/constant/routing-profile.js +1 -1
  248. package/lib/context/app-resolver.js +1 -1
  249. package/lib/context/auth-resolver.js +1 -1
  250. package/lib/context/config-loader.js +1 -1
  251. package/lib/context.js +1 -1
  252. package/lib/core/alias-resolver.js +1 -1
  253. package/lib/core/api-client.d.ts +1 -26
  254. package/lib/core/api-client.js +1 -1
  255. package/lib/core/bff/config.js +1 -1
  256. package/lib/core/bff/file-system.js +1 -1
  257. package/lib/core/bff/hash.js +1 -1
  258. package/lib/core/bff/lock.js +1 -1
  259. package/lib/core/bff/utils.js +1 -1
  260. package/lib/core/db-resolver.js +1 -1
  261. package/lib/core/instant-api-policy/config.js +1 -1
  262. package/lib/core/kb-search-client.js +1 -1
  263. package/lib/core/page/file-system.d.ts +43 -0
  264. package/lib/core/page/file-system.js +1 -1
  265. package/lib/core/page/hash.js +1 -1
  266. package/lib/core/page/lock.js +1 -1
  267. package/lib/core/sql-index-auditor.js +1 -1
  268. package/lib/core/sql-sync/config.js +1 -1
  269. package/lib/core/sql-sync/file-system.js +1 -1
  270. package/lib/core/sql-sync/hash.js +1 -1
  271. package/lib/core/sql-sync/lock.js +1 -1
  272. package/lib/core/sql-sync/utils.js +1 -1
  273. package/lib/core/sql-validator.js +1 -1
  274. package/lib/errors.js +1 -1
  275. package/lib/framework/build-all-flags.js +1 -1
  276. package/lib/framework/error-output.js +1 -1
  277. package/lib/framework/explicit-yes.js +1 -1
  278. package/lib/framework/flags.js +1 -1
  279. package/lib/framework/help.js +1 -1
  280. package/lib/framework/index.js +1 -1
  281. package/lib/framework/output.js +1 -1
  282. package/lib/framework/response.js +1 -1
  283. package/lib/framework/runner-alias.js +1 -1
  284. package/lib/framework/runner.js +1 -1
  285. package/lib/framework/schema-export.js +1 -1
  286. package/lib/framework/supported-flags.js +1 -1
  287. package/lib/framework/types.js +1 -1
  288. package/lib/generated/build-info.d.ts +4 -4
  289. package/lib/generated/build-info.js +1 -1
  290. package/lib/generated/official-routing.d.ts +1 -1
  291. package/lib/generated/official-routing.js +1 -1
  292. package/lib/generated/routing-contract.d.ts +1 -3
  293. package/lib/generated/routing-contract.js +1 -1
  294. package/lib/help.js +1 -1
  295. package/lib/postinstall.js +1 -1
  296. package/lib/runtime/confirmation.js +1 -1
  297. package/lib/runtime/event.js +1 -1
  298. package/lib/runtime/index.js +1 -1
  299. package/lib/runtime/queue.js +1 -1
  300. package/lib/runtime/resolve.js +1 -1
  301. package/lib/skills/builtin-skill.js +1 -1
  302. package/lib/skills/main.js +1 -1
  303. package/lib/skills/npx-skills-add.js +1 -1
  304. package/lib/skills/skill-presence.js +1 -1
  305. package/lib/telemetry/cli-command-trace.js +1 -1
  306. package/lib/telemetry/cli-help-trace.js +1 -1
  307. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  308. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  309. package/lib/telemetry/send-cli-trace-log.js +1 -1
  310. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  311. package/lib/utils/ai_config.js +1 -1
  312. package/lib/utils/apply-jq-filter.js +1 -1
  313. package/lib/utils/cdn-config.js +1 -1
  314. package/lib/utils/check-sdk-version.js +1 -1
  315. package/lib/utils/cli-version-check.js +1 -1
  316. package/lib/utils/cli-version-policy.js +1 -1
  317. package/lib/utils/config.js +1 -1
  318. package/lib/utils/entity-with-id.js +1 -1
  319. package/lib/utils/file-utils.js +1 -1
  320. package/lib/utils/guides-cdn.js +1 -1
  321. package/lib/utils/http-client.js +1 -1
  322. package/lib/utils/is-non-interactive.js +1 -1
  323. package/lib/utils/logger.js +1 -1
  324. package/lib/utils/params.js +1 -1
  325. package/lib/utils/platform.js +1 -1
  326. package/lib/utils/sleep.js +1 -1
  327. package/lib/utils/template-replacer.js +1 -1
  328. package/lib/utils/update-notice.js +1 -1
  329. package/lib/utils/version.js +1 -1
  330. package/lib/utils/with-active-cookie.js +1 -1
  331. package/lib/utils/write-cli-side-channel.js +1 -1
  332. package/package.json +2 -1
  333. package/skills/rabetbase/SKILL.md +6 -6
  334. package/skills/rabetbase/guides/custom-page-workflow.md +35 -17
  335. package/skills/rabetbase/guides/page-development-workflow.md +1 -1
  336. package/skills/rabetbase/knowledge/components.md +292 -0
  337. package/skills/rabetbase/knowledge/custom-page/generation-standards.md +74 -4
  338. package/skills/rabetbase/knowledge/custom-page/page-templates.md +68 -0
  339. package/skills/rabetbase/references/rabetbase-app-members-list.md +2 -0
  340. package/skills/rabetbase/references/rabetbase-page-create.md +21 -9
  341. package/skills/rabetbase/references/rabetbase-page-custom-detail.md +1 -1
  342. package/skills/rabetbase/references/rabetbase-page-custom-update.md +13 -9
  343. package/skills/rabetbase/references/rabetbase-project-create.md +5 -2
  344. package/skills/rabetbase/references/rabetbase-project-domain-routing-sync.md +2 -2
  345. package/skills/rabetbase/references/rabetbase-run.md +1 -0
  346. package/skills/rabetbase.manifest.json +5 -4
  347. package/templates/README.md +10 -4
  348. package/templates/custom-pages/blank.json +5 -0
  349. package/templates/custom-pages/dashboard.json +5 -0
  350. package/templates/custom-pages/onepage.json +5 -0
  351. package/templates/generate-api/api.ts.tpl +1 -1
  352. package/lib/commands/page/custom/template.d.ts +0 -8
  353. package/lib/commands/page/custom/template.js +0 -1
  354. package/skills/rabetbase/knowledge/custom-page/components.md +0 -225
@@ -1 +1 @@
1
- const a190_0x110ff0=a190_0x454d;(function(_0x2e35ce,_0x4a473d){const _0xdafd77=a190_0x454d,_0x35ab7d=_0x2e35ce();while(!![]){try{const _0x5978d6=parseInt(_0xdafd77(0x18c))/0x1+parseInt(_0xdafd77(0x166))/0x2+parseInt(_0xdafd77(0x182))/0x3*(parseInt(_0xdafd77(0x172))/0x4)+-parseInt(_0xdafd77(0x16b))/0x5*(-parseInt(_0xdafd77(0x184))/0x6)+parseInt(_0xdafd77(0x189))/0x7*(parseInt(_0xdafd77(0x17f))/0x8)+parseInt(_0xdafd77(0x16f))/0x9+parseInt(_0xdafd77(0x174))/0xa*(-parseInt(_0xdafd77(0x18e))/0xb);if(_0x5978d6===_0x4a473d)break;else _0x35ab7d['push'](_0x35ab7d['shift']());}catch(_0xab9e04){_0x35ab7d['push'](_0x35ab7d['shift']());}}}(a190_0x4a68,0xaf2e3));import{CliErrors}from'../../errors.js';function a190_0x4a68(){const _0x1a05f3=['7137027LVdOBS','yes','--current-dir\x20cannot\x20be\x20combined\x20with\x20a\x20project\x20name.','1268ZnqtAE','Skip\x20confirmation\x20prompt','40419550ZUKNyW','name','project-name','trim','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','cookie','upgrade','nonInteractive','../../commands/project/create/main.js','str','Prepared\x20local\x20project\x20template\x20directory','12400TdhhpX','Target\x20environment','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','7143iMrkje','string','5112aNIAel','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]\x20from\x20the\x20empty\x20target\x20directory.','bool','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]\x20or\x20','current-dir','861KOfZZH','Project\x20name','appcode','1130674fFHXFj','create','11DxUXGr','env','write','1938756yVXnxp','project','Initialize\x20the\x20current\x20empty\x20directory\x20instead\x20of\x20creating\x20a\x20child\x20directory','Create\x20a\x20new\x20project','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]','5405xGnZMw','template-source','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','boolean'];a190_0x4a68=function(){return _0x1a05f3;};return a190_0x4a68();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{upgradeApp}from'../../commands/project/upgrade.js';import{projectDomainRoutingSyncDefinition}from'../../commands/project/domain-routing-sync.js';const createFlags=[{'name':a190_0x110ff0(0x175),'type':a190_0x110ff0(0x183),'description':a190_0x110ff0(0x18a)},{'name':a190_0x110ff0(0x18f),'type':a190_0x110ff0(0x183),'description':a190_0x110ff0(0x180)},{'name':a190_0x110ff0(0x18b),'type':a190_0x110ff0(0x183),'description':'App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)'},{'name':a190_0x110ff0(0x188),'type':a190_0x110ff0(0x16e),'description':a190_0x110ff0(0x168),'default':![]},{'name':a190_0x110ff0(0x16c),'type':a190_0x110ff0(0x183),'description':a190_0x110ff0(0x17e)}],upgradeFlags=[{'name':a190_0x110ff0(0x170),'type':a190_0x110ff0(0x16e),'description':a190_0x110ff0(0x173),'default':![]}];function a190_0x454d(_0x4de06b,_0x1c1402){_0x4de06b=_0x4de06b-0x165;const _0x4a6892=a190_0x4a68();let _0x454d9e=_0x4a6892[_0x4de06b];return _0x454d9e;}export const projectDefinitions=[{'service':a190_0x110ff0(0x167),'command':a190_0x110ff0(0x18d),'description':a190_0x110ff0(0x169),'risk':a190_0x110ff0(0x165),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a190_0x110ff0(0x176),'description':a190_0x110ff0(0x181),'required':![]}],'flags':createFlags,async 'execute'(_0x4e9242){const _0x121c51=a190_0x110ff0,{createApp:_0xe922c0}=await import(_0x121c51(0x17c)),_0x2a69d9=_0x4e9242[_0x121c51(0x17d)](_0x121c51(0x175))[_0x121c51(0x177)]()||_0x4e9242['args'][0x0]?.[_0x121c51(0x177)](),_0x1cf64d=_0x4e9242[_0x121c51(0x17d)](_0x121c51(0x18f))||undefined,_0x34b939=_0x4e9242[_0x121c51(0x17d)]('appcode')||undefined,_0x88bc4f=_0x4e9242[_0x121c51(0x17d)]('template-source')[_0x121c51(0x177)]()||undefined,_0x198c94=_0x4e9242[_0x121c51(0x186)](_0x121c51(0x188));if(_0x198c94&&_0x2a69d9)throw CliErrors['validation'](_0x121c51(0x171),'Run\x20'+CLI_BIN_NAME+_0x121c51(0x185));if(_0x4e9242[_0x121c51(0x17b)]){if(!_0x2a69d9&&!_0x198c94)throw CliErrors['validation'](_0x121c51(0x16d),'Usage:\x20'+CLI_BIN_NAME+_0x121c51(0x187)+CLI_BIN_NAME+_0x121c51(0x16a));await _0xe922c0({'projectCode':_0x2a69d9,'appCode':_0x34b939,'env':_0x1cf64d,'cookie':_0x4e9242[_0x121c51(0x179)],'currentDir':_0x198c94,'nonInteractive':!![],'templateSource':_0x88bc4f});}else await _0xe922c0({'projectCode':_0x2a69d9,'appCode':_0x34b939,'env':_0x1cf64d,'cookie':_0x4e9242[_0x121c51(0x179)],'currentDir':_0x198c94,'templateSource':_0x88bc4f});return{'ok':!![]};}},projectDomainRoutingSyncDefinition,{'service':a190_0x110ff0(0x167),'command':a190_0x110ff0(0x17a),'description':a190_0x110ff0(0x178),'risk':a190_0x110ff0(0x165),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x22604d){return await upgradeApp(_0x22604d['nonInteractive'],{'yes':_0x22604d['bool']('yes')}),{'ok':!![]};}}];
1
+ const a189_0x25d93d=a189_0x3ae4;(function(_0xd027f5,_0x469d6){const _0x130c51=a189_0x3ae4,_0x5c0859=_0xd027f5();while(!![]){try{const _0x34a8dd=parseInt(_0x130c51(0x12d))/0x1+parseInt(_0x130c51(0x121))/0x2+parseInt(_0x130c51(0x135))/0x3+-parseInt(_0x130c51(0x12f))/0x4+-parseInt(_0x130c51(0x122))/0x5+-parseInt(_0x130c51(0x132))/0x6*(-parseInt(_0x130c51(0x116))/0x7)+-parseInt(_0x130c51(0x120))/0x8*(parseInt(_0x130c51(0x112))/0x9);if(_0x34a8dd===_0x469d6)break;else _0x5c0859['push'](_0x5c0859['shift']());}catch(_0x283bac){_0x5c0859['push'](_0x5c0859['shift']());}}}(a189_0x1354,0x5a424));function a189_0x1354(){const _0x199f55=['Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','1333299MBnkQZ','cookie','Create\x20a\x20new\x20project','72nCiGJG','bool','yes','str','3422839mihcoF','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]\x20from\x20the\x20empty\x20target\x20directory.','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','upgrade','env','write','validation','project-name','Target\x20environment','string','737576EiRREs','1405272xNBfgB','2139040SaZpZi','Run\x20','boolean','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]\x20or\x20','nonInteractive','create','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]','Prepared\x20local\x20project\x20template\x20directory','trim','Project\x20name','project','201092xAEmbh','name','1208216ruRNlJ','../../commands/project/create/main.js','appcode','6yuDHEe','template-source'];a189_0x1354=function(){return _0x199f55;};return a189_0x1354();}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a189_0x3ae4(_0x54fbe7,_0x4916cb){_0x54fbe7=_0x54fbe7-0x111;const _0x13548c=a189_0x1354();let _0x3ae4f0=_0x13548c[_0x54fbe7];return _0x3ae4f0;}import{upgradeApp}from'../../commands/project/upgrade.js';import{projectDomainRoutingSyncDefinition}from'../../commands/project/domain-routing-sync.js';const createFlags=[{'name':a189_0x25d93d(0x12e),'type':'string','description':a189_0x25d93d(0x12b)},{'name':a189_0x25d93d(0x11a),'type':a189_0x25d93d(0x11f),'description':a189_0x25d93d(0x11e)},{'name':'appcode','type':a189_0x25d93d(0x11f),'description':'App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)'},{'name':'current-dir','type':a189_0x25d93d(0x124),'description':'Initialize\x20the\x20current\x20empty\x20directory\x20instead\x20of\x20creating\x20a\x20child\x20directory','default':![]},{'name':a189_0x25d93d(0x133),'type':'string','description':a189_0x25d93d(0x129)}],upgradeFlags=[{'name':a189_0x25d93d(0x114),'type':a189_0x25d93d(0x124),'description':'Skip\x20confirmation\x20prompt','default':![]}];export const projectDefinitions=[{'service':a189_0x25d93d(0x12c),'command':a189_0x25d93d(0x127),'description':a189_0x25d93d(0x111),'risk':'write','requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a189_0x25d93d(0x11d),'description':a189_0x25d93d(0x118),'required':![]}],'flags':createFlags,async 'execute'(_0x4aecb9){const _0x176973=a189_0x25d93d,{createApp:_0x5e21ca}=await import(_0x176973(0x130)),_0x3c23e1=_0x4aecb9[_0x176973(0x115)](_0x176973(0x12e))[_0x176973(0x12a)]()||_0x4aecb9['args'][0x0]?.[_0x176973(0x12a)](),_0x585492=_0x4aecb9[_0x176973(0x115)](_0x176973(0x11a))||undefined,_0x199165=_0x4aecb9[_0x176973(0x115)](_0x176973(0x131))||undefined,_0x7765e5=_0x4aecb9[_0x176973(0x115)](_0x176973(0x133))['trim']()||undefined,_0xc31c87=_0x4aecb9[_0x176973(0x113)]('current-dir');if(_0xc31c87&&_0x3c23e1)throw CliErrors[_0x176973(0x11c)]('--current-dir\x20cannot\x20be\x20combined\x20with\x20a\x20project\x20name.',_0x176973(0x123)+CLI_BIN_NAME+_0x176973(0x117));if(_0x4aecb9[_0x176973(0x126)]){if(!_0x3c23e1&&!_0xc31c87)throw CliErrors['validation']('Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','Usage:\x20'+CLI_BIN_NAME+_0x176973(0x125)+CLI_BIN_NAME+_0x176973(0x128));await _0x5e21ca({'projectCode':_0x3c23e1,'appCode':_0x199165,'env':_0x585492,'cookie':_0x4aecb9[_0x176973(0x136)],'currentDir':_0xc31c87,'nonInteractive':!![],'templateSource':_0x7765e5});}else await _0x5e21ca({'projectCode':_0x3c23e1,'appCode':_0x199165,'env':_0x585492,'cookie':_0x4aecb9[_0x176973(0x136)],'currentDir':_0xc31c87,'templateSource':_0x7765e5});return{'ok':!![]};}},projectDomainRoutingSyncDefinition,{'service':a189_0x25d93d(0x12c),'command':a189_0x25d93d(0x119),'description':a189_0x25d93d(0x134),'risk':a189_0x25d93d(0x11b),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x5f4ab5){const _0xdc9eaf=a189_0x25d93d;return await upgradeApp(_0x5f4ab5[_0xdc9eaf(0x126)],{'yes':_0x5f4ab5['bool'](_0xdc9eaf(0x114))}),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a191_0x16ee30=a191_0x250b;(function(_0x45144a,_0x4c4c4b){const _0x17301e=a191_0x250b,_0x485470=_0x45144a();while(!![]){try{const _0x4a3a08=parseInt(_0x17301e(0x1e6))/0x1*(-parseInt(_0x17301e(0x201))/0x2)+-parseInt(_0x17301e(0x210))/0x3+-parseInt(_0x17301e(0x20a))/0x4*(parseInt(_0x17301e(0x24f))/0x5)+-parseInt(_0x17301e(0x234))/0x6+parseInt(_0x17301e(0x24c))/0x7*(parseInt(_0x17301e(0x204))/0x8)+-parseInt(_0x17301e(0x208))/0x9+parseInt(_0x17301e(0x21e))/0xa*(parseInt(_0x17301e(0x22f))/0xb);if(_0x4a3a08===_0x4c4c4b)break;else _0x485470['push'](_0x485470['shift']());}catch(_0xe53588){_0x485470['push'](_0x485470['shift']());}}}(a191_0x430f,0x252c9));import a191_0x2845ed from'chalk';import a191_0x3a8b4f from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';function a191_0x430f(){const _0x1d022e=['Upgrade\x20completed\x20successfully!','push','FOUND','.lovrabetrc','Legacy\x20artifacts:','keys','utf8','\x20\x20Step\x20','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','stringify','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','isArray','detail','1029xsjDJb','undefined','yellow','1375875hvoWRZ','devDependencies','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','status','lovrabet/lovrabet-skill\x20removed','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','Remove\x20.lovrabet/','Step\x201/7:\x20Migrating\x20config...','\x20→\x20latest','\x20→\x20','no\x20legacy\x20entry','args','needed','mcpServers','5DcfHYB','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','oldMcpConfig','Step\x205/7:\x20Removing\x20old\x20skill...','dependencies','done','object','some','log','length','\x20\x20npm\x20install','cyan','includes','no\x20legacy\x20config\x20found','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','join','white','isDirectory','values','parse','\x20\x20#\x20or','Step\x206/7:\x20Installing\x20new\x20skill...','message','.lovrabet','Skill\x20swap:','filter','Step\x204/7:\x20Cleaning\x20MCP\x20config...','115358NkQvAo','oldArtifacts','oldPath','15736ktxJOs','cwd','\x20\x20New\x20config\x20(.rabetbase.json):\x20','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','2367459IePcLH','package.json','4oODkdy','latest','inherit','Step\x201/7:\x20Config\x20migration\x20—\x20','@lovrabet/sdk:','@lovrabet/sdk','667194AamgzA','sdkUpgrade','none\x20found','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','not\x20found\x20(will\x20create)','configMigration','removed\x20','.cursor/rules/lovrabet_rules.mdc','Step\x204/7:\x20MCP\x20config\x20—\x20','skipped','===\x20Upgrade\x20Summary\x20===','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','MCP\x20config:','10vBFOOk','exit\x20','Remove\x20legacy\x20artifacts','green','Config\x20file:','@lovrabet/dataset-mcp-server','\x20(backup:\x20','Remove\x20old\x20skill','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','gray','failed','start','files','Clean\x20MCP\x20config','.bak','red','.claude/skills/lovrabet','11590458pwTctn','fail','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','Upgrade\x20cancelled.','[\x22@lovrabet/sdk\x22]:\x20','849258sBLUQf','.cursor/mcp.json','path','succeed','not\x20needed','===\x20Upgrade\x20Analysis\x20===','bold','Upgrade\x20@lovrabet/sdk','CANCEL','Step\x207/7:\x20@lovrabet/sdk\x20—\x20'];a191_0x430f=function(){return _0x1d022e;};return a191_0x430f();}import{resolve}from'node:path';import{NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';function a191_0x250b(_0x2daf97,_0x58ebc8){_0x2daf97=_0x2daf97-0x1db;const _0x430f13=a191_0x430f();let _0x250b84=_0x430f13[_0x2daf97];return _0x250b84;}import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=['.lovrabet.json',a191_0x16ee30(0x241)];function collectIdeSkillFiles(_0x40bfe1){const _0xf247b8=a191_0x16ee30,_0x170979=[];for(const _0x3f44ee of Object[_0xf247b8(0x1f8)](CORE_IDE_CONFIGS)){if(_0x3f44ee[_0xf247b8(0x22a)])for(const _0x459ead of _0x3f44ee['files']){_0x170979['push'](resolve(_0x40bfe1,_0x459ead['path']));}}return _0x170979;}function analyse(_0x3e3df9){const _0x3e8435=a191_0x16ee30;let _0x4b8f24=null;const _0x3883a7=resolve(_0x3e3df9,NEW_CONFIG_NAME),_0x3317d4=existsSync(_0x3883a7);for(const _0x2fc43f of LEGACY_CONFIG_NAMES){const _0x55b90b=resolve(_0x3e3df9,_0x2fc43f);if(existsSync(_0x55b90b)){const _0x2ff339=readConfigFile(_0x55b90b),_0x3d72f6=Object[_0x3e8435(0x243)](_0x2ff339)[_0x3e8435(0x1ff)](_0x3465e9=>typeof _0x2ff339[_0x3465e9]!==_0x3e8435(0x24d));_0x4b8f24={'oldPath':_0x55b90b,'hasNewConfig':_0x3317d4,'fields':_0x3d72f6};break;}}const _0x5ae51d=[],_0x54ff23=resolve(_0x3e3df9,'.lovrabet');if(existsSync(_0x54ff23))_0x5ae51d['push'](_0x54ff23);const _0x54226c=resolve(_0x3e3df9,_0x3e8435(0x217));if(existsSync(_0x54226c))_0x5ae51d['push'](_0x54226c);const _0x4fc8c7=resolve(_0x3e3df9,_0x3e8435(0x22e));if(existsSync(_0x4fc8c7))_0x5ae51d['push'](_0x4fc8c7);for(const _0x597b6f of collectIdeSkillFiles(_0x3e3df9)){if(existsSync(_0x597b6f))_0x5ae51d['push'](_0x597b6f);}let _0x3242bd=null;const _0x34f700=resolve(_0x3e3df9,_0x3e8435(0x235));if(existsSync(_0x34f700))try{const _0x4fdd40=JSON[_0x3e8435(0x1f9)](readFileSync(_0x34f700,_0x3e8435(0x244)));if(_0x4fdd40?.['mcpServers']&&typeof _0x4fdd40['mcpServers']==='object'){const _0x568228=[];for(const [_0x3333cd,_0x342dbb]of Object['entries'](_0x4fdd40['mcpServers'])){const _0x38d7f5=_0x342dbb;_0x38d7f5?.[_0x3e8435(0x1e3)]&&Array[_0x3e8435(0x24a)](_0x38d7f5[_0x3e8435(0x1e3)])&&_0x38d7f5[_0x3e8435(0x1e3)]['some'](_0x68512b=>typeof _0x68512b==='string'&&_0x68512b[_0x3e8435(0x1f2)](_0x3e8435(0x223)))&&_0x568228[_0x3e8435(0x23f)](_0x3333cd);}_0x568228[_0x3e8435(0x1ef)]>0x0&&(_0x3242bd={'path':_0x34f700,'keys':_0x568228});}}catch{}const _0x91fb2a=_0x5ae51d[_0x3e8435(0x1ef)]>0x0||_0x4b8f24!==null;let _0x2388bd=null;const _0x3542b2=resolve(_0x3e3df9,_0x3e8435(0x209));if(existsSync(_0x3542b2))try{const _0x347f62=JSON[_0x3e8435(0x1f9)](readFileSync(_0x3542b2,_0x3e8435(0x244)));for(const _0x74fce1 of[_0x3e8435(0x1ea),_0x3e8435(0x250)]){const _0x18186d=_0x347f62?.[_0x74fce1]?.['@lovrabet/sdk'];if(typeof _0x18186d==='string'){_0x18186d!==_0x3e8435(0x20b)&&(_0x2388bd={'pkgPath':_0x3542b2,'currentVersion':_0x18186d,'field':_0x74fce1});break;}}}catch{}return{'configMigration':_0x4b8f24,'oldArtifacts':_0x5ae51d,'oldMcpConfig':_0x3242bd,'needsSkillSwap':_0x91fb2a,'sdkUpgrade':_0x2388bd};}function printReport(_0x1813aa){const _0x287310=a191_0x16ee30,{configMigration:_0x25f583,oldArtifacts:_0x5c8261,oldMcpConfig:_0xba911d,needsSkillSwap:_0x5c010f}=_0x1813aa;console[_0x287310(0x1ee)](''),console[_0x287310(0x1ee)](a191_0x2845ed[_0x287310(0x23a)](_0x287310(0x239))),console[_0x287310(0x1ee)]('');_0x25f583?(console[_0x287310(0x1ee)](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x222))+('\x20\x20'+a191_0x2845ed[_0x287310(0x24e)](_0x25f583['oldPath']))),console[_0x287310(0x1ee)](_0x287310(0x206)+(_0x25f583['hasNewConfig']?a191_0x2845ed['green']('already\x20exists\x20(will\x20merge)'):a191_0x2845ed['gray'](_0x287310(0x214)))),console[_0x287310(0x1ee)]('\x20\x20Fields\x20to\x20migrate:\x20'+_0x25f583['fields'][_0x287310(0x1f5)](',\x20')),console[_0x287310(0x1ee)](_0x287310(0x249))):console[_0x287310(0x1ee)](a191_0x2845ed['cyan'](_0x287310(0x222))+'\x20\x20'+a191_0x2845ed[_0x287310(0x227)](_0x287310(0x1f3)));console[_0x287310(0x1ee)]('');if(_0x5c8261[_0x287310(0x1ef)]>0x0){console[_0x287310(0x1ee)](a191_0x2845ed['cyan'](_0x287310(0x242)));for(const _0x498a3d of _0x5c8261){console[_0x287310(0x1ee)]('\x20\x20'+a191_0x2845ed[_0x287310(0x22d)](_0x287310(0x240))+'\x20\x20'+_0x498a3d);}console['log']('\x20\x20Action:\x20delete');}else console[_0x287310(0x1ee)](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x242))+'\x20\x20'+a191_0x2845ed[_0x287310(0x227)](_0x287310(0x212)));console['log']('');_0xba911d?(console[_0x287310(0x1ee)](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x21d))+('\x20\x20'+a191_0x2845ed[_0x287310(0x24e)](_0xba911d[_0x287310(0x236)])+'\x20→\x20keys:\x20'+_0xba911d[_0x287310(0x243)][_0x287310(0x1f5)](',\x20'))),console[_0x287310(0x1ee)](_0x287310(0x226))):console[_0x287310(0x1ee)](a191_0x2845ed['cyan']('MCP\x20config:')+'\x20\x20'+a191_0x2845ed[_0x287310(0x227)](_0x287310(0x1e2)));console[_0x287310(0x1ee)](''),console['log'](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x1fe))+('\x20\x20'+(_0x5c010f?a191_0x2845ed[_0x287310(0x24e)](_0x287310(0x1e4)):a191_0x2845ed[_0x287310(0x221)](_0x287310(0x238)))));_0x5c010f&&console['log'](_0x287310(0x207)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x287310(0x1ee)]('');if(_0x1813aa[_0x287310(0x211)]){const {currentVersion:_0x1df409,field:_0x2d9e78,pkgPath:_0x52ef74}=_0x1813aa[_0x287310(0x211)];console[_0x287310(0x1ee)](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x20e))+('\x20\x20'+a191_0x2845ed['yellow'](_0x52ef74))),console[_0x287310(0x1ee)]('\x20\x20Current\x20version\x20in\x20'+_0x2d9e78+':\x20'+a191_0x2845ed[_0x287310(0x24e)](_0x1df409)+_0x287310(0x1e1)+a191_0x2845ed['green'](_0x287310(0x20b))),console['log'](_0x287310(0x21c));}else console['log'](a191_0x2845ed[_0x287310(0x1f1)](_0x287310(0x20e))+'\x20\x20'+a191_0x2845ed[_0x287310(0x227)]('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x287310(0x1ee)]('');}function execConfigMigration(_0x3031d3,_0x4d6a64){const _0x17c31b=a191_0x16ee30,{configMigration:_0x23af15}=_0x3031d3;if(!_0x23af15?.[_0x17c31b(0x203)])return{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x1d62e5=readConfigFile(_0x23af15[_0x17c31b(0x203)]),_0x3f3bd9=resolve(_0x4d6a64,NEW_CONFIG_NAME),_0x3ab1de=_0x23af15['hasNewConfig']?readConfigFile(_0x3f3bd9):{};for(const [_0x11e123,_0x3ff3ee]of Object['entries'](_0x1d62e5)){!(_0x11e123 in _0x3ab1de)&&(_0x3ab1de[_0x11e123]=_0x3ff3ee);}writeConfigFile(_0x3f3bd9,_0x3ab1de);const _0x360969=_0x23af15[_0x17c31b(0x203)]+_0x17c31b(0x22c);return renameSync(_0x23af15['oldPath'],_0x360969),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x23af15[_0x17c31b(0x203)]+_0x17c31b(0x1e1)+_0x3f3bd9+_0x17c31b(0x224)+_0x360969+')'};}function execRemoveOldArtifacts(_0x3aa07e){const _0x246425=a191_0x16ee30,_0x5a0a60=[];for(const _0x56ef5d of _0x3aa07e){try{if(!existsSync(_0x56ef5d))continue;const _0x29e664=tryStat(_0x56ef5d);_0x29e664?.[_0x246425(0x1f7)]()?rmSync(_0x56ef5d,{'recursive':!![],'force':!![]}):unlinkSync(_0x56ef5d);}catch(_0x119bff){_0x5a0a60[_0x246425(0x23f)](_0x56ef5d+':\x20'+_0x119bff['message']);}}return{'step':0x3,'label':_0x246425(0x220),'ok':_0x5a0a60['length']===0x0,'detail':_0x5a0a60[_0x246425(0x1ef)]>0x0?_0x3aa07e[_0x246425(0x1ef)]-_0x5a0a60[_0x246425(0x1ef)]+'/'+_0x3aa07e[_0x246425(0x1ef)]+'\x20removed\x20('+_0x5a0a60[_0x246425(0x1f5)](';\x20')+')':_0x3aa07e[_0x246425(0x1ef)]+'\x20removed'};}function execCleanMcp(_0x821c37){const _0x3c3ff8=a191_0x16ee30;if(!_0x821c37[_0x3c3ff8(0x1e8)])return{'step':0x4,'label':_0x3c3ff8(0x22b),'ok':!![],'detail':_0x3c3ff8(0x219)};try{const _0x14b999=readFileSync(_0x821c37[_0x3c3ff8(0x1e8)]['path'],_0x3c3ff8(0x244)),_0x4e2d9f=JSON[_0x3c3ff8(0x1f9)](_0x14b999);if(_0x4e2d9f?.[_0x3c3ff8(0x1e5)]&&typeof _0x4e2d9f[_0x3c3ff8(0x1e5)]===_0x3c3ff8(0x1ec)){const _0x31e1a7=[];for(const [_0x27979d,_0x1efdf1]of Object['entries'](_0x4e2d9f[_0x3c3ff8(0x1e5)])){_0x1efdf1?.[_0x3c3ff8(0x1e3)]&&Array['isArray'](_0x1efdf1[_0x3c3ff8(0x1e3)])&&_0x1efdf1[_0x3c3ff8(0x1e3)][_0x3c3ff8(0x1ed)](_0x164193=>typeof _0x164193==='string'&&_0x164193[_0x3c3ff8(0x1f2)](_0x3c3ff8(0x223)))&&_0x31e1a7['push'](_0x27979d);}for(const _0xb2346b of _0x31e1a7){delete _0x4e2d9f[_0x3c3ff8(0x1e5)][_0xb2346b];}return _0x31e1a7['length']>0x0&&writeFileSync(_0x821c37[_0x3c3ff8(0x1e8)][_0x3c3ff8(0x236)],JSON[_0x3c3ff8(0x247)](_0x4e2d9f,null,0x2)+'\x0a',_0x3c3ff8(0x244)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x3c3ff8(0x216)+_0x31e1a7[_0x3c3ff8(0x1f5)](',\x20')+'\x20from\x20'+_0x821c37[_0x3c3ff8(0x1e8)][_0x3c3ff8(0x236)]};}return{'step':0x4,'label':_0x3c3ff8(0x22b),'ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x585b6f){return{'step':0x4,'label':_0x3c3ff8(0x22b),'ok':![],'detail':_0x585b6f[_0x3c3ff8(0x1fc)]};}}function execSkillsRemove(_0x278455,_0x44c53d){const _0x10977c=a191_0x16ee30,_0x1d265e=runNpxSkillsRemove(_0x278455,{'stdio':_0x10977c(0x20c),'yes':_0x44c53d});return{'step':0x5,'label':_0x10977c(0x225),'ok':_0x1d265e['ok'],'detail':_0x1d265e['ok']?_0x10977c(0x1dc):_0x1d265e['error']??'exit\x20'+_0x1d265e[_0x10977c(0x1db)]};}function execSkillsAdd(_0x5b0348,_0x5808b5){const _0x11c632=a191_0x16ee30,_0x5d4d6f=runNpxSkillsAddGlobal(_0x5b0348,'lovrabet/rabetbase',{'stdio':_0x11c632(0x20c),'yes':_0x5808b5});return{'step':0x6,'label':'Install\x20new\x20skill','ok':_0x5d4d6f['ok'],'detail':_0x5d4d6f['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x5d4d6f['error']??_0x11c632(0x21f)+_0x5d4d6f[_0x11c632(0x1db)]};}function execUpgradeSdk(_0x4a7332){const _0x548daa=a191_0x16ee30;if(!_0x4a7332[_0x548daa(0x211)])return{'step':0x7,'label':_0x548daa(0x23b),'ok':!![],'detail':_0x548daa(0x246)};const {pkgPath:_0x55568e,currentVersion:_0x17ef21,field:_0x59abc7}=_0x4a7332[_0x548daa(0x211)];try{const _0x4c80ea=readFileSync(_0x55568e,_0x548daa(0x244)),_0x1ab9f2=JSON[_0x548daa(0x1f9)](_0x4c80ea);return _0x1ab9f2[_0x59abc7][_0x548daa(0x20f)]='latest',writeFileSync(_0x55568e,JSON[_0x548daa(0x247)](_0x1ab9f2,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x548daa(0x23b),'ok':!![],'detail':_0x59abc7+_0x548daa(0x233)+_0x17ef21+_0x548daa(0x1e0)};}catch(_0x38d7de){return{'step':0x7,'label':_0x548daa(0x23b),'ok':![],'detail':_0x38d7de[_0x548daa(0x1fc)]};}}function tryStat(_0x8ac591){try{return statSync(_0x8ac591);}catch{return undefined;}}function printSummary(_0x4a2e9d){const _0x5953c6=a191_0x16ee30;console[_0x5953c6(0x1ee)](''),console['log'](a191_0x2845ed[_0x5953c6(0x23a)](_0x5953c6(0x21a))),console[_0x5953c6(0x1ee)]('');for(const _0x20d285 of _0x4a2e9d){const _0x3df99c=_0x20d285['ok']?a191_0x2845ed[_0x5953c6(0x221)]('OK'):a191_0x2845ed[_0x5953c6(0x22d)]('FAIL');console['log']('\x20\x20'+_0x3df99c+_0x5953c6(0x245)+_0x20d285['step']+':\x20'+_0x20d285['label']);if(_0x20d285[_0x5953c6(0x24b)])console[_0x5953c6(0x1ee)]('\x20\x20\x20\x20\x20\x20\x20'+a191_0x2845ed[_0x5953c6(0x227)](_0x20d285['detail']));}console[_0x5953c6(0x1ee)]('');}export async function upgradeApp(_0x2a226d,_0x41261a){const _0x164e71=a191_0x16ee30,_0x578acf=process[_0x164e71(0x205)](),_0x20de4c=analyse(_0x578acf),_0x27f0ac=!_0x20de4c[_0x164e71(0x215)]&&_0x20de4c[_0x164e71(0x202)][_0x164e71(0x1ef)]===0x0&&!_0x20de4c[_0x164e71(0x1e8)]&&!_0x20de4c['needsSkillSwap']&&!_0x20de4c[_0x164e71(0x211)];if(_0x27f0ac){console[_0x164e71(0x1ee)](a191_0x2845ed[_0x164e71(0x221)](_0x164e71(0x231)));return;}printReport(_0x20de4c);const _0x1d7243=!!(_0x41261a['yes']||_0x41261a['Y']||_0x2a226d);if(!_0x1d7243)try{const _0x6fb295=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x6fb295){console[_0x164e71(0x1ee)](a191_0x2845ed[_0x164e71(0x227)](_0x164e71(0x232)));return;}}catch(_0x2c3783){if(_0x2c3783?.[_0x164e71(0x1fc)]===_0x164e71(0x23c)){console[_0x164e71(0x1ee)](a191_0x2845ed[_0x164e71(0x227)](_0x164e71(0x232)));return;}throw _0x2c3783;}const _0x3804e5=[],_0x34fdca=a191_0x3a8b4f({'text':_0x164e71(0x1df),'color':_0x164e71(0x1f1)})[_0x164e71(0x229)](),_0x586775=execConfigMigration(_0x20de4c,_0x578acf);_0x3804e5[_0x164e71(0x23f)](_0x586775),_0x34fdca[_0x586775['ok']?'succeed':_0x164e71(0x230)](_0x164e71(0x20d)+(_0x586775[_0x164e71(0x24b)]??(_0x586775['ok']?_0x164e71(0x1eb):_0x164e71(0x228))));const _0x3be705=resolve(_0x578acf,_0x164e71(0x1fd)),_0x198652=a191_0x3a8b4f({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x164e71(0x1f1)})[_0x164e71(0x229)]();if(existsSync(_0x3be705))try{rmSync(_0x3be705,{'recursive':!![],'force':!![]}),_0x198652[_0x164e71(0x237)](_0x164e71(0x251)),_0x3804e5['push']({'step':0x2,'label':_0x164e71(0x1de),'ok':!![]});}catch(_0x2626af){_0x198652[_0x164e71(0x230)]('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x2626af[_0x164e71(0x1fc)]),_0x3804e5['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x2626af[_0x164e71(0x1fc)]});}else _0x198652['info'](_0x164e71(0x1e7)),_0x3804e5[_0x164e71(0x23f)]({'step':0x2,'label':_0x164e71(0x1de),'ok':!![],'detail':_0x164e71(0x219)});const _0x198f81=a191_0x3a8b4f({'text':_0x164e71(0x1dd),'color':'cyan'})['start'](),_0x52958e=execRemoveOldArtifacts(_0x20de4c['oldArtifacts']);_0x3804e5[_0x164e71(0x23f)](_0x52958e),_0x198f81[_0x52958e['ok']?_0x164e71(0x237):_0x164e71(0x230)]('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x52958e[_0x164e71(0x24b)]??(_0x52958e['ok']?_0x164e71(0x1eb):'failed')));const _0x5b23aa=a191_0x3a8b4f({'text':_0x164e71(0x200),'color':_0x164e71(0x1f1)})[_0x164e71(0x229)](),_0x2a1188=execCleanMcp(_0x20de4c);_0x3804e5[_0x164e71(0x23f)](_0x2a1188),_0x5b23aa[_0x2a1188['ok']?_0x164e71(0x237):_0x164e71(0x230)](_0x164e71(0x218)+(_0x2a1188[_0x164e71(0x24b)]??(_0x2a1188['ok']?_0x164e71(0x1eb):_0x164e71(0x228))));const _0x1d3894=a191_0x3a8b4f({'text':_0x164e71(0x1e9),'color':_0x164e71(0x1f1)})['start'](),_0x8900b1=execSkillsRemove(_0x578acf,_0x1d7243);_0x3804e5[_0x164e71(0x23f)](_0x8900b1),_0x1d3894[_0x8900b1['ok']?'succeed':_0x164e71(0x230)]('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0x8900b1[_0x164e71(0x24b)]??(_0x8900b1['ok']?'done':_0x164e71(0x228))));const _0x2d7fe7=a191_0x3a8b4f({'text':_0x164e71(0x1fb),'color':'cyan'})['start'](),_0x41c163=execSkillsAdd(_0x578acf,_0x1d7243);_0x3804e5[_0x164e71(0x23f)](_0x41c163),_0x2d7fe7[_0x41c163['ok']?_0x164e71(0x237):_0x164e71(0x230)](_0x164e71(0x213)+(_0x41c163['detail']??(_0x41c163['ok']?_0x164e71(0x1eb):_0x164e71(0x228))));const _0x394d00=a191_0x3a8b4f({'text':_0x164e71(0x21b),'color':_0x164e71(0x1f1)})[_0x164e71(0x229)](),_0x4a716e=execUpgradeSdk(_0x20de4c);_0x3804e5[_0x164e71(0x23f)](_0x4a716e),_0x394d00[_0x4a716e['ok']?_0x164e71(0x237):_0x164e71(0x230)](_0x164e71(0x23d)+(_0x4a716e[_0x164e71(0x24b)]??(_0x4a716e['ok']?'done':_0x164e71(0x228)))),printSummary(_0x3804e5);const _0x456f86=_0x3804e5[_0x164e71(0x1ed)](_0x56d9d3=>!_0x56d9d3['ok']);_0x456f86?console[_0x164e71(0x1ee)](a191_0x2845ed['yellow'](_0x164e71(0x1f4))):console[_0x164e71(0x1ee)](a191_0x2845ed[_0x164e71(0x221)](_0x164e71(0x23e))),_0x4a716e['ok']&&_0x20de4c[_0x164e71(0x211)]&&(console[_0x164e71(0x1ee)](''),console[_0x164e71(0x1ee)](a191_0x2845ed['bold'][_0x164e71(0x1f1)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x164e71(0x1ee)](a191_0x2845ed[_0x164e71(0x1f1)](_0x164e71(0x248))),console['log'](''),console['log'](a191_0x2845ed[_0x164e71(0x1f6)](_0x164e71(0x1f0))),console['log'](a191_0x2845ed[_0x164e71(0x1f6)](_0x164e71(0x1fa))),console['log'](a191_0x2845ed[_0x164e71(0x1f6)]('\x20\x20bun\x20install')),console[_0x164e71(0x1ee)](''));}
1
+ const a190_0x352005=a190_0x24c2;(function(_0x5346b6,_0x307ea9){const _0x4675b1=a190_0x24c2,_0x4adc4b=_0x5346b6();while(!![]){try{const _0x48889e=parseInt(_0x4675b1(0xd1))/0x1+-parseInt(_0x4675b1(0xe1))/0x2+parseInt(_0x4675b1(0x100))/0x3*(-parseInt(_0x4675b1(0xec))/0x4)+parseInt(_0x4675b1(0x97))/0x5*(-parseInt(_0x4675b1(0x8a))/0x6)+parseInt(_0x4675b1(0xc0))/0x7+-parseInt(_0x4675b1(0xca))/0x8+parseInt(_0x4675b1(0xdf))/0x9;if(_0x48889e===_0x307ea9)break;else _0x4adc4b['push'](_0x4adc4b['shift']());}catch(_0x593203){_0x4adc4b['push'](_0x4adc4b['shift']());}}}(a190_0x3429,0xaceed));import a190_0x52a7b6 from'chalk';import a190_0xd85a8e from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';function a190_0x24c2(_0x234748,_0x5b352e){_0x234748=_0x234748-0x87;const _0x34290d=a190_0x3429();let _0x24c2f5=_0x34290d[_0x234748];return _0x24c2f5;}import{NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=[a190_0x352005(0xf5),a190_0x352005(0xcd)];function collectIdeSkillFiles(_0x8a8f77){const _0x25ea8b=a190_0x352005,_0xf3c556=[];for(const _0x38596a of Object[_0x25ea8b(0xf3)](CORE_IDE_CONFIGS)){if(_0x38596a[_0x25ea8b(0xea)])for(const _0x2fd233 of _0x38596a[_0x25ea8b(0xea)]){_0xf3c556[_0x25ea8b(0xc2)](resolve(_0x8a8f77,_0x2fd233[_0x25ea8b(0xb2)]));}}return _0xf3c556;}function a190_0x3429(){const _0x45cf95=['Upgrade\x20@lovrabet/sdk','latest','1174789nhzigJ','Install\x20new\x20skill','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','done','Config\x20file:','@lovrabet/sdk','yellow','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','includes','stringify','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','keys','Step\x201/7:\x20Config\x20migration\x20—\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','1855278bHpeCM','===\x20Upgrade\x20Analysis\x20===','570476KmrHbI','isArray','devDependencies','status','cwd','removed\x20','@lovrabet/sdk:','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','isDirectory','files','no\x20legacy\x20entry','966796HVIKRL','step','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','failed','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Config\x20migration','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','values','red','.lovrabet.json','some','.cursor/mcp.json','[\x22@lovrabet/sdk\x22]:\x20','length','Clean\x20MCP\x20config','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','parse','start','no\x20legacy\x20config\x20found','needsSkillSwap','3nvjnHV','info','.claude/skills/lovrabet','\x20\x20#\x20or','752724QvNLDp','MCP\x20config:','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','Upgrade\x20cancelled.','\x20\x20New\x20config\x20(.rabetbase.json):\x20','dependencies','gray','Step\x206/7:\x20Installing\x20new\x20skill...','Upgrade\x20completed\x20successfully!','oldPath','\x20\x20Action:\x20delete','oldMcpConfig','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','55VoCNLq','.cursor/rules/lovrabet_rules.mdc','Legacy\x20artifacts:','not\x20found\x20or\x20already\x20at\x20latest','log','label','Remove\x20.lovrabet/','not\x20needed','entries','oldArtifacts','bold','\x20→\x20','join','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','not\x20found\x20(will\x20create)','Remove\x20legacy\x20artifacts','inherit','args','hasNewConfig','green','message','\x20\x20npm\x20install','Step\x204/7:\x20MCP\x20config\x20—\x20','\x20(backup:\x20','.bak','yes','fields','path','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','string','.lovrabet','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','utf8','exit\x20','sdkUpgrade','FAIL','cyan','detail','Step\x205/7:\x20Removing\x20old\x20skill...','object','Step\x204/7:\x20Cleaning\x20MCP\x20config...','9467528PMEexx','mcpServers','push','\x20\x20Fields\x20to\x20migrate:\x20','\x20→\x20keys:\x20','succeed','\x20→\x20latest','fail','error','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','945368Ltvoht','\x20\x20Current\x20version\x20in\x20','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','.lovrabetrc','white'];a190_0x3429=function(){return _0x45cf95;};return a190_0x3429();}function analyse(_0x19449d){const _0x198fd9=a190_0x352005;let _0x1535c4=null;const _0x35fe68=resolve(_0x19449d,NEW_CONFIG_NAME),_0x5925ee=existsSync(_0x35fe68);for(const _0x1d57e0 of LEGACY_CONFIG_NAMES){const _0x36fb9d=resolve(_0x19449d,_0x1d57e0);if(existsSync(_0x36fb9d)){const _0x31144d=readConfigFile(_0x36fb9d),_0x5e4c64=Object['keys'](_0x31144d)['filter'](_0x1b5b9e=>typeof _0x31144d[_0x1b5b9e]!=='undefined');_0x1535c4={'oldPath':_0x36fb9d,'hasNewConfig':_0x5925ee,'fields':_0x5e4c64};break;}}const _0x39ecdc=[],_0x2b4210=resolve(_0x19449d,_0x198fd9(0xb5));if(existsSync(_0x2b4210))_0x39ecdc[_0x198fd9(0xc2)](_0x2b4210);const _0x507d41=resolve(_0x19449d,_0x198fd9(0x98));if(existsSync(_0x507d41))_0x39ecdc['push'](_0x507d41);const _0x29fbff=resolve(_0x19449d,_0x198fd9(0x88));if(existsSync(_0x29fbff))_0x39ecdc[_0x198fd9(0xc2)](_0x29fbff);for(const _0x485ef0 of collectIdeSkillFiles(_0x19449d)){if(existsSync(_0x485ef0))_0x39ecdc[_0x198fd9(0xc2)](_0x485ef0);}let _0x447792=null;const _0x328784=resolve(_0x19449d,_0x198fd9(0xf7));if(existsSync(_0x328784))try{const _0x14f94f=JSON[_0x198fd9(0xfc)](readFileSync(_0x328784,_0x198fd9(0xb7)));if(_0x14f94f?.[_0x198fd9(0xc1)]&&typeof _0x14f94f['mcpServers']===_0x198fd9(0xbe)){const _0x88fabb=[];for(const [_0x90d99c,_0x59aa4]of Object[_0x198fd9(0x9f)](_0x14f94f['mcpServers'])){const _0x59ea7b=_0x59aa4;_0x59ea7b?.[_0x198fd9(0xa8)]&&Array[_0x198fd9(0xe2)](_0x59ea7b[_0x198fd9(0xa8)])&&_0x59ea7b[_0x198fd9(0xa8)]['some'](_0x32e3ec=>typeof _0x32e3ec===_0x198fd9(0xb4)&&_0x32e3ec[_0x198fd9(0xd9)]('@lovrabet/dataset-mcp-server'))&&_0x88fabb[_0x198fd9(0xc2)](_0x90d99c);}_0x88fabb[_0x198fd9(0xf9)]>0x0&&(_0x447792={'path':_0x328784,'keys':_0x88fabb});}}catch{}const _0x6619bd=_0x39ecdc[_0x198fd9(0xf9)]>0x0||_0x1535c4!==null;let _0x22f7ab=null;const _0x3f7de6=resolve(_0x19449d,'package.json');if(existsSync(_0x3f7de6))try{const _0x1bada1=JSON['parse'](readFileSync(_0x3f7de6,_0x198fd9(0xb7)));for(const _0x537e3b of[_0x198fd9(0x8f),_0x198fd9(0xe3)]){const _0x9b16bb=_0x1bada1?.[_0x537e3b]?.['@lovrabet/sdk'];if(typeof _0x9b16bb==='string'){_0x9b16bb!==_0x198fd9(0xd0)&&(_0x22f7ab={'pkgPath':_0x3f7de6,'currentVersion':_0x9b16bb,'field':_0x537e3b});break;}}}catch{}return{'configMigration':_0x1535c4,'oldArtifacts':_0x39ecdc,'oldMcpConfig':_0x447792,'needsSkillSwap':_0x6619bd,'sdkUpgrade':_0x22f7ab};}function printReport(_0x126e54){const _0x41a66b=a190_0x352005,{configMigration:_0xbd0f40,oldArtifacts:_0x529215,oldMcpConfig:_0x1d5cfc,needsSkillSwap:_0x51893e}=_0x126e54;console[_0x41a66b(0x9b)](''),console[_0x41a66b(0x9b)](a190_0x52a7b6[_0x41a66b(0xa1)](_0x41a66b(0xe0))),console[_0x41a66b(0x9b)]('');_0xbd0f40?(console[_0x41a66b(0x9b)](a190_0x52a7b6[_0x41a66b(0xbb)](_0x41a66b(0xd5))+('\x20\x20'+a190_0x52a7b6[_0x41a66b(0xd7)](_0xbd0f40[_0x41a66b(0x93)]))),console['log'](_0x41a66b(0x8e)+(_0xbd0f40[_0x41a66b(0xa9)]?a190_0x52a7b6[_0x41a66b(0xaa)]('already\x20exists\x20(will\x20merge)'):a190_0x52a7b6[_0x41a66b(0x90)](_0x41a66b(0xa5)))),console[_0x41a66b(0x9b)](_0x41a66b(0xc3)+_0xbd0f40[_0x41a66b(0xb1)]['join'](',\x20')),console[_0x41a66b(0x9b)](_0x41a66b(0xd8))):console[_0x41a66b(0x9b)](a190_0x52a7b6[_0x41a66b(0xbb)](_0x41a66b(0xd5))+'\x20\x20'+a190_0x52a7b6[_0x41a66b(0x90)](_0x41a66b(0xfe)));console[_0x41a66b(0x9b)]('');if(_0x529215[_0x41a66b(0xf9)]>0x0){console[_0x41a66b(0x9b)](a190_0x52a7b6[_0x41a66b(0xbb)](_0x41a66b(0x99)));for(const _0x529366 of _0x529215){console[_0x41a66b(0x9b)]('\x20\x20'+a190_0x52a7b6[_0x41a66b(0xf4)]('FOUND')+'\x20\x20'+_0x529366);}console[_0x41a66b(0x9b)](_0x41a66b(0x94));}else console[_0x41a66b(0x9b)](a190_0x52a7b6['cyan'](_0x41a66b(0x99))+'\x20\x20'+a190_0x52a7b6[_0x41a66b(0x90)]('none\x20found'));console['log']('');_0x1d5cfc?(console['log'](a190_0x52a7b6[_0x41a66b(0xbb)](_0x41a66b(0x8b))+('\x20\x20'+a190_0x52a7b6[_0x41a66b(0xd7)](_0x1d5cfc[_0x41a66b(0xb2)])+_0x41a66b(0xc4)+_0x1d5cfc[_0x41a66b(0xdc)][_0x41a66b(0xa3)](',\x20'))),console['log'](_0x41a66b(0xb3))):console['log'](a190_0x52a7b6[_0x41a66b(0xbb)](_0x41a66b(0x8b))+'\x20\x20'+a190_0x52a7b6[_0x41a66b(0x90)](_0x41a66b(0xeb)));console[_0x41a66b(0x9b)](''),console[_0x41a66b(0x9b)](a190_0x52a7b6[_0x41a66b(0xbb)]('Skill\x20swap:')+('\x20\x20'+(_0x51893e?a190_0x52a7b6[_0x41a66b(0xd7)]('needed'):a190_0x52a7b6['green'](_0x41a66b(0x9e)))));_0x51893e&&console[_0x41a66b(0x9b)](_0x41a66b(0x8c)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x41a66b(0x9b)]('');if(_0x126e54[_0x41a66b(0xb9)]){const {currentVersion:_0x3cdb66,field:_0x423dbd,pkgPath:_0x546752}=_0x126e54[_0x41a66b(0xb9)];console['log'](a190_0x52a7b6[_0x41a66b(0xbb)](_0x41a66b(0xe7))+('\x20\x20'+a190_0x52a7b6[_0x41a66b(0xd7)](_0x546752))),console['log'](_0x41a66b(0xcb)+_0x423dbd+':\x20'+a190_0x52a7b6[_0x41a66b(0xd7)](_0x3cdb66)+_0x41a66b(0xa2)+a190_0x52a7b6['green'](_0x41a66b(0xd0))),console[_0x41a66b(0x9b)](_0x41a66b(0xde));}else console['log'](a190_0x52a7b6[_0x41a66b(0xbb)]('@lovrabet/sdk:')+'\x20\x20'+a190_0x52a7b6[_0x41a66b(0x90)](_0x41a66b(0x9a)));console[_0x41a66b(0x9b)]('');}function execConfigMigration(_0x182bb8,_0x3e8f88){const _0x468b6a=a190_0x352005,{configMigration:_0x17ccfe}=_0x182bb8;if(!_0x17ccfe?.[_0x468b6a(0x93)])return{'step':0x1,'label':_0x468b6a(0xf1),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x43e05f=readConfigFile(_0x17ccfe[_0x468b6a(0x93)]),_0x18b22c=resolve(_0x3e8f88,NEW_CONFIG_NAME),_0x2de474=_0x17ccfe[_0x468b6a(0xa9)]?readConfigFile(_0x18b22c):{};for(const [_0x161885,_0x3c05db]of Object[_0x468b6a(0x9f)](_0x43e05f)){!(_0x161885 in _0x2de474)&&(_0x2de474[_0x161885]=_0x3c05db);}writeConfigFile(_0x18b22c,_0x2de474);const _0x2ea930=_0x17ccfe['oldPath']+_0x468b6a(0xaf);return renameSync(_0x17ccfe[_0x468b6a(0x93)],_0x2ea930),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x17ccfe['oldPath']+_0x468b6a(0xa2)+_0x18b22c+_0x468b6a(0xae)+_0x2ea930+')'};}function execRemoveOldArtifacts(_0x1398fe){const _0x5a2876=a190_0x352005,_0x4a121c=[];for(const _0x555116 of _0x1398fe){try{if(!existsSync(_0x555116))continue;const _0xa195ad=tryStat(_0x555116);_0xa195ad?.[_0x5a2876(0xe9)]()?rmSync(_0x555116,{'recursive':!![],'force':!![]}):unlinkSync(_0x555116);}catch(_0x5d573b){_0x4a121c[_0x5a2876(0xc2)](_0x555116+':\x20'+_0x5d573b[_0x5a2876(0xab)]);}}return{'step':0x3,'label':_0x5a2876(0xa6),'ok':_0x4a121c['length']===0x0,'detail':_0x4a121c[_0x5a2876(0xf9)]>0x0?_0x1398fe[_0x5a2876(0xf9)]-_0x4a121c[_0x5a2876(0xf9)]+'/'+_0x1398fe[_0x5a2876(0xf9)]+'\x20removed\x20('+_0x4a121c[_0x5a2876(0xa3)](';\x20')+')':_0x1398fe[_0x5a2876(0xf9)]+'\x20removed'};}function execCleanMcp(_0x34c5bd){const _0x17981a=a190_0x352005;if(!_0x34c5bd[_0x17981a(0x95)])return{'step':0x4,'label':_0x17981a(0xfa),'ok':!![],'detail':'skipped'};try{const _0x54a469=readFileSync(_0x34c5bd[_0x17981a(0x95)]['path'],_0x17981a(0xb7)),_0x370abb=JSON['parse'](_0x54a469);if(_0x370abb?.['mcpServers']&&typeof _0x370abb[_0x17981a(0xc1)]===_0x17981a(0xbe)){const _0x15c192=[];for(const [_0x73b9bb,_0x16afe0]of Object[_0x17981a(0x9f)](_0x370abb[_0x17981a(0xc1)])){_0x16afe0?.[_0x17981a(0xa8)]&&Array[_0x17981a(0xe2)](_0x16afe0[_0x17981a(0xa8)])&&_0x16afe0[_0x17981a(0xa8)][_0x17981a(0xf6)](_0x14813=>typeof _0x14813===_0x17981a(0xb4)&&_0x14813[_0x17981a(0xd9)]('@lovrabet/dataset-mcp-server'))&&_0x15c192[_0x17981a(0xc2)](_0x73b9bb);}for(const _0x38c7c7 of _0x15c192){delete _0x370abb['mcpServers'][_0x38c7c7];}return _0x15c192['length']>0x0&&writeFileSync(_0x34c5bd[_0x17981a(0x95)]['path'],JSON[_0x17981a(0xda)](_0x370abb,null,0x2)+'\x0a',_0x17981a(0xb7)),{'step':0x4,'label':_0x17981a(0xfa),'ok':!![],'detail':_0x17981a(0xe6)+_0x15c192[_0x17981a(0xa3)](',\x20')+'\x20from\x20'+_0x34c5bd[_0x17981a(0x95)][_0x17981a(0xb2)]};}return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x48ca3b){return{'step':0x4,'label':_0x17981a(0xfa),'ok':![],'detail':_0x48ca3b[_0x17981a(0xab)]};}}function execSkillsRemove(_0x4a7c75,_0x2b57cc){const _0x146e70=a190_0x352005,_0x28b88b=runNpxSkillsRemove(_0x4a7c75,{'stdio':'inherit','yes':_0x2b57cc});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x28b88b['ok'],'detail':_0x28b88b['ok']?'lovrabet/lovrabet-skill\x20removed':_0x28b88b[_0x146e70(0xc8)]??_0x146e70(0xb8)+_0x28b88b[_0x146e70(0xe4)]};}function execSkillsAdd(_0x41c3de,_0x32069d){const _0x4f8d79=a190_0x352005,_0x3dc78b=runNpxSkillsAddGlobal(_0x41c3de,'lovrabet/rabetbase',{'stdio':_0x4f8d79(0xa7),'yes':_0x32069d});return{'step':0x6,'label':_0x4f8d79(0xd2),'ok':_0x3dc78b['ok'],'detail':_0x3dc78b['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x3dc78b[_0x4f8d79(0xc8)]??_0x4f8d79(0xb8)+_0x3dc78b['status']};}function execUpgradeSdk(_0x3ce974){const _0x19e93a=a190_0x352005;if(!_0x3ce974[_0x19e93a(0xb9)])return{'step':0x7,'label':_0x19e93a(0xcf),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x30b3c9,currentVersion:_0x3a0ee3,field:_0x20b836}=_0x3ce974['sdkUpgrade'];try{const _0x5082e1=readFileSync(_0x30b3c9,_0x19e93a(0xb7)),_0x573f2d=JSON[_0x19e93a(0xfc)](_0x5082e1);return _0x573f2d[_0x20b836][_0x19e93a(0xd6)]=_0x19e93a(0xd0),writeFileSync(_0x30b3c9,JSON[_0x19e93a(0xda)](_0x573f2d,null,0x2)+'\x0a',_0x19e93a(0xb7)),{'step':0x7,'label':_0x19e93a(0xcf),'ok':!![],'detail':_0x20b836+_0x19e93a(0xf8)+_0x3a0ee3+_0x19e93a(0xc6)};}catch(_0x1d4a14){return{'step':0x7,'label':_0x19e93a(0xcf),'ok':![],'detail':_0x1d4a14[_0x19e93a(0xab)]};}}function tryStat(_0x10ae85){try{return statSync(_0x10ae85);}catch{return undefined;}}function printSummary(_0x52f307){const _0x449458=a190_0x352005;console['log'](''),console[_0x449458(0x9b)](a190_0x52a7b6[_0x449458(0xa1)]('===\x20Upgrade\x20Summary\x20===')),console[_0x449458(0x9b)]('');for(const _0x44c6ce of _0x52f307){const _0x251a53=_0x44c6ce['ok']?a190_0x52a7b6[_0x449458(0xaa)]('OK'):a190_0x52a7b6[_0x449458(0xf4)](_0x449458(0xba));console[_0x449458(0x9b)]('\x20\x20'+_0x251a53+'\x20\x20Step\x20'+_0x44c6ce[_0x449458(0xed)]+':\x20'+_0x44c6ce[_0x449458(0x9c)]);if(_0x44c6ce[_0x449458(0xbc)])console['log']('\x20\x20\x20\x20\x20\x20\x20'+a190_0x52a7b6[_0x449458(0x90)](_0x44c6ce[_0x449458(0xbc)]));}console[_0x449458(0x9b)]('');}export async function upgradeApp(_0x33598b,_0x14f240){const _0x369028=a190_0x352005,_0xc2560b=process[_0x369028(0xe5)](),_0x2b549d=analyse(_0xc2560b),_0x435477=!_0x2b549d['configMigration']&&_0x2b549d[_0x369028(0xa0)][_0x369028(0xf9)]===0x0&&!_0x2b549d['oldMcpConfig']&&!_0x2b549d[_0x369028(0xff)]&&!_0x2b549d['sdkUpgrade'];if(_0x435477){console['log'](a190_0x52a7b6[_0x369028(0xaa)](_0x369028(0xcc)));return;}printReport(_0x2b549d);const _0x29e22a=!!(_0x14f240[_0x369028(0xb0)]||_0x14f240['Y']||_0x33598b);if(!_0x29e22a)try{const _0x35840a=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x35840a){console[_0x369028(0x9b)](a190_0x52a7b6[_0x369028(0x90)](_0x369028(0x8d)));return;}}catch(_0x6fc536){if(_0x6fc536?.['message']==='CANCEL'){console[_0x369028(0x9b)](a190_0x52a7b6['gray'](_0x369028(0x8d)));return;}throw _0x6fc536;}const _0x27746c=[],_0x17de8f=a190_0xd85a8e({'text':'Step\x201/7:\x20Migrating\x20config...','color':'cyan'})['start'](),_0x2ff891=execConfigMigration(_0x2b549d,_0xc2560b);_0x27746c['push'](_0x2ff891),_0x17de8f[_0x2ff891['ok']?_0x369028(0xc5):_0x369028(0xc7)](_0x369028(0xdd)+(_0x2ff891[_0x369028(0xbc)]??(_0x2ff891['ok']?_0x369028(0xd4):_0x369028(0xef))));const _0x13d36d=resolve(_0xc2560b,_0x369028(0xb5)),_0x1d6b22=a190_0xd85a8e({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x369028(0xbb)})['start']();if(existsSync(_0x13d36d))try{rmSync(_0x13d36d,{'recursive':!![],'force':!![]}),_0x1d6b22[_0x369028(0xc5)]('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x27746c[_0x369028(0xc2)]({'step':0x2,'label':_0x369028(0x9d),'ok':!![]});}catch(_0x19ceb5){_0x1d6b22[_0x369028(0xc7)](_0x369028(0xc9)+_0x19ceb5[_0x369028(0xab)]),_0x27746c[_0x369028(0xc2)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x19ceb5[_0x369028(0xab)]});}else _0x1d6b22[_0x369028(0x87)](_0x369028(0x96)),_0x27746c[_0x369028(0xc2)]({'step':0x2,'label':_0x369028(0x9d),'ok':!![],'detail':'skipped'});const _0x1c49bb=a190_0xd85a8e({'text':_0x369028(0xa4),'color':'cyan'})[_0x369028(0xfd)](),_0x102120=execRemoveOldArtifacts(_0x2b549d[_0x369028(0xa0)]);_0x27746c[_0x369028(0xc2)](_0x102120),_0x1c49bb[_0x102120['ok']?_0x369028(0xc5):_0x369028(0xc7)](_0x369028(0xb6)+(_0x102120[_0x369028(0xbc)]??(_0x102120['ok']?_0x369028(0xd4):_0x369028(0xef))));const _0xc01cb7=a190_0xd85a8e({'text':_0x369028(0xbf),'color':'cyan'})[_0x369028(0xfd)](),_0x5da8e7=execCleanMcp(_0x2b549d);_0x27746c[_0x369028(0xc2)](_0x5da8e7),_0xc01cb7[_0x5da8e7['ok']?'succeed':'fail'](_0x369028(0xad)+(_0x5da8e7[_0x369028(0xbc)]??(_0x5da8e7['ok']?_0x369028(0xd4):_0x369028(0xef))));const _0x561031=a190_0xd85a8e({'text':_0x369028(0xbd),'color':_0x369028(0xbb)})[_0x369028(0xfd)](),_0x12b23e=execSkillsRemove(_0xc2560b,_0x29e22a);_0x27746c[_0x369028(0xc2)](_0x12b23e),_0x561031[_0x12b23e['ok']?'succeed':'fail'](_0x369028(0xfb)+(_0x12b23e['detail']??(_0x12b23e['ok']?_0x369028(0xd4):_0x369028(0xef))));const _0x35fdb1=a190_0xd85a8e({'text':_0x369028(0x91),'color':'cyan'})[_0x369028(0xfd)](),_0xcaedf7=execSkillsAdd(_0xc2560b,_0x29e22a);_0x27746c[_0x369028(0xc2)](_0xcaedf7),_0x35fdb1[_0xcaedf7['ok']?_0x369028(0xc5):_0x369028(0xc7)](_0x369028(0xd3)+(_0xcaedf7[_0x369028(0xbc)]??(_0xcaedf7['ok']?_0x369028(0xd4):'failed')));const _0x4402c2=a190_0xd85a8e({'text':_0x369028(0xe8),'color':_0x369028(0xbb)})[_0x369028(0xfd)](),_0x4ab13f=execUpgradeSdk(_0x2b549d);_0x27746c['push'](_0x4ab13f),_0x4402c2[_0x4ab13f['ok']?_0x369028(0xc5):_0x369028(0xc7)](_0x369028(0xdb)+(_0x4ab13f[_0x369028(0xbc)]??(_0x4ab13f['ok']?_0x369028(0xd4):'failed'))),printSummary(_0x27746c);const _0x36947f=_0x27746c[_0x369028(0xf6)](_0x881ec6=>!_0x881ec6['ok']);_0x36947f?console['log'](a190_0x52a7b6[_0x369028(0xd7)](_0x369028(0xee))):console[_0x369028(0x9b)](a190_0x52a7b6[_0x369028(0xaa)](_0x369028(0x92))),_0x4ab13f['ok']&&_0x2b549d[_0x369028(0xb9)]&&(console[_0x369028(0x9b)](''),console[_0x369028(0x9b)](a190_0x52a7b6[_0x369028(0xa1)][_0x369028(0xbb)](_0x369028(0xf2))),console[_0x369028(0x9b)](a190_0x52a7b6[_0x369028(0xbb)](_0x369028(0xf0))),console['log'](''),console[_0x369028(0x9b)](a190_0x52a7b6[_0x369028(0xce)](_0x369028(0xac))),console[_0x369028(0x9b)](a190_0x52a7b6[_0x369028(0xce)](_0x369028(0x89))),console[_0x369028(0x9b)](a190_0x52a7b6[_0x369028(0xce)]('\x20\x20bun\x20install')),console[_0x369028(0x9b)](''));}
@@ -1 +1 @@
1
- const a192_0x22574d=a192_0x466e;(function(_0x22d4c9,_0x7e56b8){const _0x306132=a192_0x466e,_0x507cff=_0x22d4c9();while(!![]){try{const _0x565957=-parseInt(_0x306132(0x1ae))/0x1+parseInt(_0x306132(0x15f))/0x2+parseInt(_0x306132(0x18c))/0x3+parseInt(_0x306132(0x153))/0x4+parseInt(_0x306132(0x1aa))/0x5+parseInt(_0x306132(0x191))/0x6*(parseInt(_0x306132(0x15c))/0x7)+-parseInt(_0x306132(0x1a8))/0x8*(parseInt(_0x306132(0x163))/0x9);if(_0x565957===_0x7e56b8)break;else _0x507cff['push'](_0x507cff['shift']());}catch(_0x59b3d2){_0x507cff['push'](_0x507cff['shift']());}}}(a192_0xba74,0x35406));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';function a192_0x466e(_0x444c27,_0x56451a){_0x444c27=_0x444c27-0x153;const _0xba7401=a192_0xba74();let _0x466e52=_0xba7401[_0x444c27];return _0x466e52;}import{dbDefinitions}from'../commands/db/index.js';import{deploymentDefinitions}from'../commands/deployment/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{taskDefinitions}from'../commands/task/index.js';import{tenantDefinitions}from'../commands/tenant/index.js';import{roleDefinitions}from'../commands/role/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{kbDefinitions}from'../commands/kb/index.js';import{ruleDefinitions}from'../commands/rule/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{instantApiPolicyDefinitions}from'../commands/instant-api-policy/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{fileDefinitions}from'../commands/file/index.js';import{ocrDefinitions}from'../commands/ocr/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{userAccountDefinitions}from'../commands/user-account/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x3e07b8){const _0x2411c6=a192_0x466e;for(const _0x1290af of _0x3e07b8){definitions[_0x2411c6(0x161)](_0x1290af[_0x2411c6(0x178)]+':'+_0x1290af['command'],_0x1290af);let _0x482f39=serviceGroups[_0x2411c6(0x1a0)](_0x1290af[_0x2411c6(0x178)]);!_0x482f39&&(_0x482f39=[],serviceGroups[_0x2411c6(0x161)](_0x1290af[_0x2411c6(0x178)],_0x482f39)),_0x482f39['push'](_0x1290af);}}function registerDeclarativeService(_0x3b738c,_0x1c2aa4,_0x5d4fed){const _0x1d3571=a192_0x466e;registerDefinitions(_0x1c2aa4);_0x5d4fed?.['wildcardDef']&&registerDefinitions([_0x5d4fed[_0x1d3571(0x155)]]);const _0x447768=_0x3e70dd=>_0x3e70dd===_0x1d3571(0x157)?'':_0x3e70dd==='write'?_0x1d3571(0x16f):_0x1d3571(0x1bf),_0x187ef9={'service':_0x1c2aa4[0x0][_0x1d3571(0x178)],'label':_0x3b738c,'commands':_0x1c2aa4[_0x1d3571(0x1b9)](_0x4ee4f2=>!_0x4ee4f2[_0x1d3571(0x1a6)])['map'](_0x126944=>({'command':_0x126944[_0x1d3571(0x182)],'description':_0x126944[_0x1d3571(0x16a)],'tag':_0x447768(_0x126944[_0x1d3571(0x199)])})),'declarative':!![],'defaultCommand':_0x5d4fed?.[_0x1d3571(0x19f)]??(_0x5d4fed?.['isSingleCommand']?_0x1c2aa4[0x0][_0x1d3571(0x182)]:undefined),'wildcardDef':_0x5d4fed?.[_0x1d3571(0x155)],'isSingleCommand':_0x5d4fed?.[_0x1d3571(0x196)]};serviceRegistry[_0x1d3571(0x18e)](_0x187ef9),serviceByName[_0x1d3571(0x161)](_0x187ef9[_0x1d3571(0x178)],_0x187ef9);}registerDeclarativeService(a192_0x22574d(0x1b0),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService(a192_0x22574d(0x1c2),appDefinitions),registerDeclarativeService(a192_0x22574d(0x198),authDefinitions,{'defaultCommand':a192_0x22574d(0x1a7)}),registerDeclarativeService(a192_0x22574d(0x19b),tenantDefinitions),registerDeclarativeService(a192_0x22574d(0x1bb),userAccountDefinitions),registerDeclarativeService(a192_0x22574d(0x188),datasetDefinitions),registerDeclarativeService(a192_0x22574d(0x1b1),pageDefinitions),registerDeclarativeService(a192_0x22574d(0x1c0),apiDefinitions),registerDeclarativeService('Backend\x20Function\x20Scripts',bffDefinitions),registerDeclarativeService(a192_0x22574d(0x1b7),instantApiPolicyDefinitions),registerDeclarativeService(a192_0x22574d(0x1af),notificationDefinitions),registerDeclarativeService('SQL\x20Queries',sqlDefinitions),registerDeclarativeService(a192_0x22574d(0x18a),dbDefinitions),registerDeclarativeService(a192_0x22574d(0x1a4),deploymentDefinitions),registerDeclarativeService(a192_0x22574d(0x1bd),menuDefinitions),registerDeclarativeService(a192_0x22574d(0x166),taskDefinitions),registerDeclarativeService('Roles',roleDefinitions),registerDeclarativeService(a192_0x22574d(0x176),appConfigDefinitions),registerDeclarativeService('Company\x20Knowledge\x20Base',kbDefinitions),registerDeclarativeService('Agent\x20Context\x20Rules',ruleDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a192_0x22574d(0x185),fileDefinitions),registerDeclarativeService(a192_0x22574d(0x167),ocrDefinitions),registerDeclarativeService(a192_0x22574d(0x16d),codegenDefinitions),registerDeclarativeService(a192_0x22574d(0x168),configDefinitions),registerDeclarativeService(a192_0x22574d(0x187),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a192_0x22574d(0x164),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a192_0x22574d(0x16c),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a192_0x22574d(0x183),cliSkillDefinitions,{'defaultCommand':a192_0x22574d(0x1b3)}),registerDeclarativeService(a192_0x22574d(0x193),logsDefinitions,{'defaultCommand':a192_0x22574d(0x1bc)}),registerDeclarativeService(a192_0x22574d(0x17a),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a192_0x22574d(0x18b)]-0x1];last['commands']=[{'command':'<script>','description':'Run\x20any\x20package.json\x20script','tag':a192_0x22574d(0x16b)+runDefinition[a192_0x22574d(0x199)]+']'}];}const REMOVED_COMMAND_REPLACEMENTS=new Map([[a192_0x22574d(0x169),a192_0x22574d(0x17b)],[a192_0x22574d(0x1ad),'rabetbase\x20bff\x20create'],[a192_0x22574d(0x18f),'rabetbase\x20sql\x20create'],['menu:update',a192_0x22574d(0x1a3)],[a192_0x22574d(0x195),'rabetbase\x20workspace\x20init\x20--appcode\x20<code>'],[a192_0x22574d(0x1ac),a192_0x22574d(0x175)],[a192_0x22574d(0x186),a192_0x22574d(0x175)],[a192_0x22574d(0x19d),a192_0x22574d(0x175)],[a192_0x22574d(0x156),a192_0x22574d(0x175)],[a192_0x22574d(0x19a),'rabetbase\x20app\x20list\x20--remote'],[a192_0x22574d(0x17e),'rabetbase\x20workspace\x20use\x20--app\x20<name>'],['app:add',a192_0x22574d(0x1a1)],[a192_0x22574d(0x160),a192_0x22574d(0x190)],[a192_0x22574d(0x192),a192_0x22574d(0x184)],[a192_0x22574d(0x180),a192_0x22574d(0x18d)],[a192_0x22574d(0x1a5),a192_0x22574d(0x17c)],[a192_0x22574d(0x179),a192_0x22574d(0x15d)],[a192_0x22574d(0x172),a192_0x22574d(0x197)],[a192_0x22574d(0x15b),a192_0x22574d(0x1b4)],['data:filter',a192_0x22574d(0x159)],[a192_0x22574d(0x1be),a192_0x22574d(0x171)],[a192_0x22574d(0x1a2),'rabetbase\x20page\x20data-list-status'],[a192_0x22574d(0x19e),a192_0x22574d(0x16e)],[a192_0x22574d(0x158),a192_0x22574d(0x16e)],['page:react-list',a192_0x22574d(0x15e)],[a192_0x22574d(0x19c),a192_0x22574d(0x173)],['page:react-update',a192_0x22574d(0x154)],['page:react-publish','rabetbase\x20page\x20custom-publish']]),REMOVED_COMMAND_HINTS=new Map([[a192_0x22574d(0x15a),a192_0x22574d(0x165)],['permit:page-set',a192_0x22574d(0x165)],['permit:role-menus',a192_0x22574d(0x165)],[a192_0x22574d(0x1b5),'No\x20executable\x20CLI\x20replacement\x20is\x20available\x20under\x20the\x20current\x20server\x20authentication\x20contract.'],[a192_0x22574d(0x1ba),a192_0x22574d(0x165)]]),REMOVED_FLAT_COMMAND_REPLACEMENTS=new Map([[a192_0x22574d(0x189),'rabetbase\x20project\x20create\x20<project-name>'],[a192_0x22574d(0x1a9),a192_0x22574d(0x194)],[a192_0x22574d(0x17d),a192_0x22574d(0x1c1)],[a192_0x22574d(0x1ab),a192_0x22574d(0x170)],['logout',a192_0x22574d(0x162)]]);function a192_0xba74(){const _0x21e1fa=['rabetbase\x20run\x20build','App\x20Management','1581844jbqipR','rabetbase\x20page\x20custom-update','wildcardDef','skills:install','read','page:custom-create','lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27<json>\x27','permit:page-get','role:create','49FpRMvC','rabetbase\x20kb\x20update','rabetbase\x20page\x20custom-list','257858lYCQQU','app:remove','set','rabetbase\x20auth\x20logout','513YcsDIZ','Schema','No\x20executable\x20CLI\x20replacement\x20is\x20available\x20under\x20the\x20current\x20server\x20authentication\x20contract.','Async\x20Tasks','OCR','Configuration','sql:save','description','\x20\x20[','Self\x20Update','Code\x20Generation','rabetbase\x20page\x20create\x20--page-pattern\x20BLANK','\x20\x20[write]','rabetbase\x20run\x20preview','lovrabet\x20data\x20getOne\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22id\x22:123}\x27','knowledge-base:delete','rabetbase\x20page\x20custom-detail','from','rabetbase\x20cli-skill\x20install','Runtime\x20App\x20Config\x20Management','values','service','knowledge-base:update','Run\x20Scripts','rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml','rabetbase\x20kb\x20create','build','app:use','`\x20instead.','knowledge-base:detail','`\x20has\x20been\x20removed.','command','CLI\x20Built-in\x20Skill','rabetbase\x20kb\x20list','File','skill:install','Diagnostics','Dataset\x20&\x20Operations','create','Database\x20Connections','length','288336mrNyuB','rabetbase\x20kb\x20detail','push','sql:new','rabetbase\x20workspace\x20remove\x20<name>','94854KNeNpB','knowledge-base:list','Logs','rabetbase\x20run\x20start','project:init','isSingleCommand','rabetbase\x20kb\x20delete','Authentication','risk','app:remote','Tenant\x20Members','page:react-detail','skills:','page:react-create','defaultCommand','get','rabetbase\x20workspace\x20add\x20<name>\x20--appcode\x20<code>','page:standard-page-status','rabetbase\x20menu\x20asset-update','Deployment','knowledge-base:create','hidden','login','93680ZAzfet','start','1522100FCVtQO','preview','skill:','bff:new','149997sWOdpC','Notification\x20Configuration','Project','Data\x20List\x20Pages\x20&\x20Custom\x20Pages','Use\x20`','install','rabetbase\x20role\x20list','permit:role-menus-set','`rabetbase\x20','Instant\x20API\x20Policy','has','filter','permit:role-apis-set','User\x20Accounts','show','Menu','data:getOne','\x20\x20[high-risk-write]','API\x20Development'];a192_0xba74=function(){return _0x21e1fa;};return a192_0xba74();}export function resolveRemovedCommand(_0x2cfab1,_0x404db2){const _0x2db3d3=a192_0x22574d;if(!_0x2cfab1)return undefined;const _0x39d9e3=REMOVED_COMMAND_REPLACEMENTS[_0x2db3d3(0x1a0)](_0x2cfab1+':'+(_0x404db2??'')),_0x17cf6b=REMOVED_FLAT_COMMAND_REPLACEMENTS[_0x2db3d3(0x1a0)](_0x2cfab1),_0x40955a=_0x39d9e3??_0x17cf6b,_0x1ac10=REMOVED_COMMAND_HINTS[_0x2db3d3(0x1a0)](_0x2cfab1+':'+(_0x404db2??''));if(!_0x40955a&&!_0x1ac10)return undefined;const _0x5696c6=_0x17cf6b?_0x2cfab1:_0x404db2?_0x2cfab1+'\x20'+_0x404db2:_0x2cfab1;return{'command':_0x5696c6,'message':_0x2db3d3(0x1b6)+_0x5696c6+_0x2db3d3(0x181),'hint':_0x1ac10??_0x2db3d3(0x1b2)+_0x40955a+_0x2db3d3(0x17f)};}export function findDefinition(_0x2b0243,_0x3304a9){return definitions['get'](_0x2b0243+':'+_0x3304a9);}export function isKnownService(_0x56dc42){const _0x2315ea=a192_0x22574d;return serviceByName[_0x2315ea(0x1b8)](_0x56dc42);}export function isDeclarativeService(_0x53a4c6){const _0x4a777d=a192_0x22574d;return serviceGroups[_0x4a777d(0x1b8)](_0x53a4c6)||serviceByName[_0x4a777d(0x1a0)](_0x53a4c6)?.['wildcardDef']!==undefined;}export function getServiceEntry(_0x4d814a){const _0x1a505c=a192_0x22574d;return serviceByName[_0x1a505c(0x1a0)](_0x4d814a);}export function getLegacyHandler(_0x2e90f9,_0x549169){return undefined;}export function getAllDefinitions(){const _0x25ff90=a192_0x22574d;return Array[_0x25ff90(0x174)](definitions[_0x25ff90(0x177)]());}
1
+ const a191_0x493490=a191_0x5659;(function(_0x262c26,_0x43fcfd){const _0x1a3e0f=a191_0x5659,_0x188d73=_0x262c26();while(!![]){try{const _0x577c33=-parseInt(_0x1a3e0f(0x164))/0x1*(-parseInt(_0x1a3e0f(0x1b2))/0x2)+parseInt(_0x1a3e0f(0x162))/0x3*(-parseInt(_0x1a3e0f(0x17e))/0x4)+-parseInt(_0x1a3e0f(0x17a))/0x5*(-parseInt(_0x1a3e0f(0x198))/0x6)+parseInt(_0x1a3e0f(0x1b4))/0x7+-parseInt(_0x1a3e0f(0x188))/0x8*(parseInt(_0x1a3e0f(0x173))/0x9)+parseInt(_0x1a3e0f(0x1b6))/0xa*(parseInt(_0x1a3e0f(0x19c))/0xb)+-parseInt(_0x1a3e0f(0x169))/0xc*(-parseInt(_0x1a3e0f(0x17c))/0xd);if(_0x577c33===_0x43fcfd)break;else _0x188d73['push'](_0x188d73['shift']());}catch(_0x2295a6){_0x188d73['push'](_0x188d73['shift']());}}}(a191_0x37ff,0x43058));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dbDefinitions}from'../commands/db/index.js';import{deploymentDefinitions}from'../commands/deployment/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{taskDefinitions}from'../commands/task/index.js';import{tenantDefinitions}from'../commands/tenant/index.js';import{roleDefinitions}from'../commands/role/index.js';import{appDefinitions}from'../commands/app/index.js';function a191_0x37ff(){const _0x159c04=['116qGiXKv','rabetbase\x20kb\x20create','2040234fGvjsM','permit:role-apis-set','1262060twjXyn','Async\x20Tasks','sql:new','rabetbase\x20run\x20preview','length','`\x20instead.','knowledge-base:list','permit:page-get','File','set','project:init','page:standard-page-status','rabetbase\x20sql\x20create','wildcardDef','install','rabetbase\x20workspace\x20add\x20<name>\x20--appcode\x20<code>','rabetbase\x20project\x20create\x20<project-name>','knowledge-base:update','rabetbase\x20page\x20custom-publish','build','Run\x20Scripts','menu:update','1459905yMHDcW','rabetbase\x20page\x20custom-update','1612rgNDGB','Instant\x20API\x20Policy','Configuration','Database\x20Connections','rabetbase\x20page\x20data-list-status','9564xbYIaH','command','isSingleCommand','`rabetbase\x20','Code\x20Generation','rabetbase\x20workspace\x20remove\x20<name>','\x20\x20[','rabetbase\x20page\x20custom-list','Platform\x20Issue','rabetbase\x20kb\x20update','9TDLOCm','data:getOne','push','read','rabetbase\x20workspace\x20init\x20--appcode\x20<code>','page:react-update','preview','860gVXLBc','data:filter','1937UhtNfY','rabetbase\x20cli-skill\x20install','4cQApmP','service','`\x20has\x20been\x20removed.','No\x20executable\x20CLI\x20replacement\x20is\x20available\x20under\x20the\x20current\x20server\x20authentication\x20contract.','app:remote','knowledge-base:delete','start','Use\x20`','rabetbase\x20page\x20create\x20--page-pattern\x20BLANK','from','196416NnerBs','rabetbase\x20run\x20start','page:react-publish','Runtime\x20App\x20Config\x20Management','page:react-detail','rabetbase\x20kb\x20list','login','app:remove','page:react-create','skills:install','Workspace','has','User\x20Accounts','show','Agent\x20Context\x20Rules','logout','1032kcnDSh','<script>','knowledge-base:create','skills:','22KOjmDk','rabetbase\x20run\x20build','Menu','rabetbase\x20role\x20list','permit:role-menus','rabetbase\x20auth\x20logout','get','Schema','sql:save','values','skill:','Logs','SQL\x20Queries','description','Data\x20List\x20Pages\x20&\x20Custom\x20Pages','rabetbase\x20menu\x20asset-update','Project','page:custom-create','page:react-list','CLI\x20Built-in\x20Skill','map','Notification\x20Configuration'];a191_0x37ff=function(){return _0x159c04;};return a191_0x37ff();}import{appConfigDefinitions}from'../commands/app-config/index.js';import{kbDefinitions}from'../commands/kb/index.js';import{ruleDefinitions}from'../commands/rule/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{instantApiPolicyDefinitions}from'../commands/instant-api-policy/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{fileDefinitions}from'../commands/file/index.js';import{ocrDefinitions}from'../commands/ocr/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{userAccountDefinitions}from'../commands/user-account/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';function a191_0x5659(_0x146d7d,_0x3e4924){_0x146d7d=_0x146d7d-0x162;const _0x37ff04=a191_0x37ff();let _0x56594e=_0x37ff04[_0x146d7d];return _0x56594e;}import{projectDefinitions}from'../commands/project/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0xfd81cb){const _0xae037a=a191_0x5659;for(const _0x371062 of _0xfd81cb){definitions[_0xae037a(0x1bf)](_0x371062[_0xae037a(0x17f)]+':'+_0x371062[_0xae037a(0x16a)],_0x371062);let _0x46efb8=serviceGroups[_0xae037a(0x1a2)](_0x371062[_0xae037a(0x17f)]);!_0x46efb8&&(_0x46efb8=[],serviceGroups[_0xae037a(0x1bf)](_0x371062[_0xae037a(0x17f)],_0x46efb8)),_0x46efb8['push'](_0x371062);}}function registerDeclarativeService(_0x5b3e76,_0x1d1362,_0x398a5e){const _0x37b288=a191_0x5659;registerDefinitions(_0x1d1362);_0x398a5e?.['wildcardDef']&&registerDefinitions([_0x398a5e[_0x37b288(0x1c3)]]);const _0x3017bc=_0x4d2d83=>_0x4d2d83===_0x37b288(0x176)?'':_0x4d2d83==='write'?'\x20\x20[write]':'\x20\x20[high-risk-write]',_0x422ead={'service':_0x1d1362[0x0][_0x37b288(0x17f)],'label':_0x5b3e76,'commands':_0x1d1362['filter'](_0x179429=>!_0x179429['hidden'])[_0x37b288(0x1b0)](_0x5224d6=>({'command':_0x5224d6['command'],'description':_0x5224d6[_0x37b288(0x1a9)],'tag':_0x3017bc(_0x5224d6['risk'])})),'declarative':!![],'defaultCommand':_0x398a5e?.['defaultCommand']??(_0x398a5e?.[_0x37b288(0x16b)]?_0x1d1362[0x0][_0x37b288(0x16a)]:undefined),'wildcardDef':_0x398a5e?.[_0x37b288(0x1c3)],'isSingleCommand':_0x398a5e?.[_0x37b288(0x16b)]};serviceRegistry[_0x37b288(0x175)](_0x422ead),serviceByName['set'](_0x422ead[_0x37b288(0x17f)],_0x422ead);}registerDeclarativeService(a191_0x493490(0x1ac),projectDefinitions),registerDeclarativeService(a191_0x493490(0x192),workspaceDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a191_0x493490(0x18e)}),registerDeclarativeService('Tenant\x20Members',tenantDefinitions),registerDeclarativeService(a191_0x493490(0x194),userAccountDefinitions),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService(a191_0x493490(0x1aa),pageDefinitions),registerDeclarativeService('API\x20Development',apiDefinitions),registerDeclarativeService('Backend\x20Function\x20Scripts',bffDefinitions),registerDeclarativeService(a191_0x493490(0x165),instantApiPolicyDefinitions),registerDeclarativeService(a191_0x493490(0x1b1),notificationDefinitions),registerDeclarativeService(a191_0x493490(0x1a8),sqlDefinitions),registerDeclarativeService(a191_0x493490(0x167),dbDefinitions),registerDeclarativeService('Deployment',deploymentDefinitions),registerDeclarativeService(a191_0x493490(0x19e),menuDefinitions),registerDeclarativeService(a191_0x493490(0x1b7),taskDefinitions),registerDeclarativeService('Roles',roleDefinitions),registerDeclarativeService(a191_0x493490(0x18b),appConfigDefinitions),registerDeclarativeService('Company\x20Knowledge\x20Base',kbDefinitions),registerDeclarativeService(a191_0x493490(0x196),ruleDefinitions),registerDeclarativeService(a191_0x493490(0x171),issueDefinitions),registerDeclarativeService(a191_0x493490(0x1be),fileDefinitions),registerDeclarativeService('OCR',ocrDefinitions),registerDeclarativeService(a191_0x493490(0x16d),codegenDefinitions),registerDeclarativeService(a191_0x493490(0x166),configDefinitions),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a191_0x493490(0x1a3),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a191_0x493490(0x1af),cliSkillDefinitions,{'defaultCommand':a191_0x493490(0x1c4)}),registerDeclarativeService(a191_0x493490(0x1a7),logsDefinitions,{'defaultCommand':a191_0x493490(0x195)}),registerDeclarativeService(a191_0x493490(0x1ca),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a191_0x493490(0x1ba)]-0x1];last['commands']=[{'command':a191_0x493490(0x199),'description':'Run\x20any\x20package.json\x20script','tag':a191_0x493490(0x16f)+runDefinition['risk']+']'}];}const REMOVED_COMMAND_REPLACEMENTS=new Map([[a191_0x493490(0x1a4),'rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml'],['bff:new','rabetbase\x20bff\x20create'],[a191_0x493490(0x1b8),a191_0x493490(0x1c2)],[a191_0x493490(0x1cb),a191_0x493490(0x1ab)],[a191_0x493490(0x1c0),a191_0x493490(0x177)],[a191_0x493490(0x1a6),a191_0x493490(0x17d)],['skill:install',a191_0x493490(0x17d)],[a191_0x493490(0x19b),a191_0x493490(0x17d)],[a191_0x493490(0x191),a191_0x493490(0x17d)],[a191_0x493490(0x182),'rabetbase\x20app\x20list\x20--remote'],['app:use','rabetbase\x20workspace\x20use\x20--app\x20<name>'],['app:add',a191_0x493490(0x1c5)],[a191_0x493490(0x18f),a191_0x493490(0x16e)],[a191_0x493490(0x1bc),a191_0x493490(0x18d)],['knowledge-base:detail','rabetbase\x20kb\x20detail'],[a191_0x493490(0x19a),a191_0x493490(0x1b3)],[a191_0x493490(0x1c7),a191_0x493490(0x172)],[a191_0x493490(0x183),'rabetbase\x20kb\x20delete'],['role:create',a191_0x493490(0x19f)],[a191_0x493490(0x17b),'lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27<json>\x27'],[a191_0x493490(0x174),'lovrabet\x20data\x20getOne\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22id\x22:123}\x27'],[a191_0x493490(0x1c1),a191_0x493490(0x168)],[a191_0x493490(0x190),a191_0x493490(0x186)],[a191_0x493490(0x1ad),a191_0x493490(0x186)],[a191_0x493490(0x1ae),a191_0x493490(0x170)],[a191_0x493490(0x18c),'rabetbase\x20page\x20custom-detail'],[a191_0x493490(0x178),a191_0x493490(0x163)],[a191_0x493490(0x18a),a191_0x493490(0x1c8)]]),REMOVED_COMMAND_HINTS=new Map([[a191_0x493490(0x1bd),'No\x20executable\x20CLI\x20replacement\x20is\x20available\x20under\x20the\x20current\x20server\x20authentication\x20contract.'],['permit:page-set',a191_0x493490(0x181)],[a191_0x493490(0x1a0),'No\x20executable\x20CLI\x20replacement\x20is\x20available\x20under\x20the\x20current\x20server\x20authentication\x20contract.'],['permit:role-menus-set',a191_0x493490(0x181)],[a191_0x493490(0x1b5),'No\x20executable\x20CLI\x20replacement\x20is\x20available\x20under\x20the\x20current\x20server\x20authentication\x20contract.']]),REMOVED_FLAT_COMMAND_REPLACEMENTS=new Map([['create',a191_0x493490(0x1c6)],[a191_0x493490(0x184),a191_0x493490(0x189)],[a191_0x493490(0x1c9),a191_0x493490(0x19d)],[a191_0x493490(0x179),a191_0x493490(0x1b9)],[a191_0x493490(0x197),a191_0x493490(0x1a1)]]);export function resolveRemovedCommand(_0x1593d9,_0x3aa1dc){const _0x34e9ff=a191_0x493490;if(!_0x1593d9)return undefined;const _0x1e85af=REMOVED_COMMAND_REPLACEMENTS[_0x34e9ff(0x1a2)](_0x1593d9+':'+(_0x3aa1dc??'')),_0x442459=REMOVED_FLAT_COMMAND_REPLACEMENTS[_0x34e9ff(0x1a2)](_0x1593d9),_0xb96480=_0x1e85af??_0x442459,_0x4c118e=REMOVED_COMMAND_HINTS[_0x34e9ff(0x1a2)](_0x1593d9+':'+(_0x3aa1dc??''));if(!_0xb96480&&!_0x4c118e)return undefined;const _0x7bd63b=_0x442459?_0x1593d9:_0x3aa1dc?_0x1593d9+'\x20'+_0x3aa1dc:_0x1593d9;return{'command':_0x7bd63b,'message':_0x34e9ff(0x16c)+_0x7bd63b+_0x34e9ff(0x180),'hint':_0x4c118e??_0x34e9ff(0x185)+_0xb96480+_0x34e9ff(0x1bb)};}export function findDefinition(_0x4f6dd6,_0x49eaa8){const _0x113ff7=a191_0x493490;return definitions[_0x113ff7(0x1a2)](_0x4f6dd6+':'+_0x49eaa8);}export function isKnownService(_0x2e96f2){const _0x4f23d0=a191_0x493490;return serviceByName[_0x4f23d0(0x193)](_0x2e96f2);}export function isDeclarativeService(_0x2a45d6){const _0x3a79ce=a191_0x493490;return serviceGroups[_0x3a79ce(0x193)](_0x2a45d6)||serviceByName[_0x3a79ce(0x1a2)](_0x2a45d6)?.[_0x3a79ce(0x1c3)]!==undefined;}export function getServiceEntry(_0x580f3a){return serviceByName['get'](_0x580f3a);}export function getLegacyHandler(_0x2fb223,_0x74839f){return undefined;}export function getAllDefinitions(){const _0x2f1343=a191_0x493490;return Array[_0x2f1343(0x187)](definitions[_0x2f1343(0x1a5)]());}
@@ -1 +1 @@
1
- const a193_0x5d68ce=a193_0x1416;(function(_0x507565,_0x4cf955){const _0x214c82=a193_0x1416,_0xc06f60=_0x507565();while(!![]){try{const _0x16bbfc=parseInt(_0x214c82(0x123))/0x1*(parseInt(_0x214c82(0x118))/0x2)+-parseInt(_0x214c82(0x113))/0x3*(-parseInt(_0x214c82(0x114))/0x4)+-parseInt(_0x214c82(0x11b))/0x5*(-parseInt(_0x214c82(0x112))/0x6)+parseInt(_0x214c82(0x11d))/0x7*(-parseInt(_0x214c82(0x111))/0x8)+-parseInt(_0x214c82(0x124))/0x9+-parseInt(_0x214c82(0x10e))/0xa+-parseInt(_0x214c82(0x11e))/0xb*(-parseInt(_0x214c82(0x11a))/0xc);if(_0x16bbfc===_0x4cf955)break;else _0xc06f60['push'](_0xc06f60['shift']());}catch(_0x742eff){_0xc06f60['push'](_0xc06f60['shift']());}}}(a193_0x38fd,0xc1ece));import{deleteAppRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a193_0x38fd(){const _0x8d2322=['5100705LrwWDu','num','userCount','10093360LccjCP','appCode','POST','7352IEyIJb','6IMZidP','3674319IDHdhd','4lbTBts','roleName','role','Delete\x20a\x20CUSTOM\x20role\x20(built-in\x20roles\x20rejected);\x20requires\x20--yes','2pOyFnq','high-risk-write','34644BFOcCt','5226085yhAghF','/smartapi/permit/role/delete','7POqTTP','11jzAsqO','\x20(id=','dev','Role\x20still\x20has\x20','delete','98441XVfyFX'];a193_0x38fd=function(){return _0x8d2322;};return a193_0x38fd();}import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';const DELETE_PATH=a193_0x5d68ce(0x11c);function a193_0x1416(_0x48ce09,_0x27ace7){_0x48ce09=_0x48ce09-0x10d;const _0x38fda2=a193_0x38fd();let _0x14161b=_0x38fda2[_0x48ce09];return _0x14161b;}export const roleDelete={'service':a193_0x5d68ce(0x116),'command':'delete','description':a193_0x5d68ce(0x117),'risk':a193_0x5d68ce(0x119),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x3ed307){const _0x4b9430=a193_0x5d68ce,_0x2bc439=_0x3ed307['num']('id'),_0x5dd3cb=await getRoleById(_0x3ed307[_0x4b9430(0x10f)],_0x2bc439);return assertCustomRole(_0x5dd3cb,_0x4b9430(0x122)),asDryRunResult({'scope':_0x4b9430(0x120),'operation':_0x4b9430(0x122),'selector':{'appCode':_0x3ed307[_0x4b9430(0x10f)],'roleId':_0x2bc439,'roleName':_0x5dd3cb[_0x4b9430(0x115)]},'before':projectRole(_0x5dd3cb),'after':null,'dryRun':!![],'backend':{'method':_0x4b9430(0x110),'path':DELETE_PATH},'warnings':_0x5dd3cb[_0x4b9430(0x10d)]>0x0?[_0x4b9430(0x121)+_0x5dd3cb[_0x4b9430(0x10d)]+'\x20member(s);\x20they\x20will\x20lose\x20this\x20group.']:[]},{'method':'POST','url':DELETE_PATH});},async 'execute'(_0x2f8450){const _0x29efc5=a193_0x5d68ce,_0x28c398=_0x2f8450[_0x29efc5(0x125)]('id'),_0x21092e=await getRoleById(_0x2f8450[_0x29efc5(0x10f)],_0x28c398);return assertCustomRole(_0x21092e,_0x29efc5(0x122)),await deleteAppRole(_0x28c398),{'ok':!![],'data':{'scope':_0x29efc5(0x120),'operation':'delete','selector':{'appCode':_0x2f8450['appCode'],'roleId':_0x28c398,'roleName':_0x21092e['roleName']},'before':projectRole(_0x21092e),'after':null,'dryRun':![],'backend':{'method':_0x29efc5(0x110),'path':DELETE_PATH},'warnings':[]},'message':'Deleted\x20role\x20'+_0x21092e[_0x29efc5(0x115)]+_0x29efc5(0x11f)+_0x28c398+')'};}};
1
+ const a192_0x44f0ac=a192_0x5b65;(function(_0xef2828,_0x26ab5b){const _0x1c66bb=a192_0x5b65,_0x9db5b0=_0xef2828();while(!![]){try{const _0x1ec817=parseInt(_0x1c66bb(0x1ee))/0x1+parseInt(_0x1c66bb(0x1e1))/0x2+parseInt(_0x1c66bb(0x1e8))/0x3+-parseInt(_0x1c66bb(0x1de))/0x4+parseInt(_0x1c66bb(0x1e3))/0x5+-parseInt(_0x1c66bb(0x1e5))/0x6*(parseInt(_0x1c66bb(0x1df))/0x7)+-parseInt(_0x1c66bb(0x1e4))/0x8;if(_0x1ec817===_0x26ab5b)break;else _0x9db5b0['push'](_0x9db5b0['shift']());}catch(_0x10b155){_0x9db5b0['push'](_0x9db5b0['shift']());}}}(a192_0x5aba,0xbe1eb));function a192_0x5b65(_0x3f9a8e,_0x15a325){_0x3f9a8e=_0x3f9a8e-0x1dc;const _0x5abace=a192_0x5aba();let _0x5b6555=_0x5abace[_0x3f9a8e];return _0x5b6555;}import{deleteAppRole}from'../../core/api-client.js';function a192_0x5aba(){const _0x4c2bc6=['delete','4383378mPfCeq','num','roleName','POST','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','userCount','148257COoGjT','role','appCode','2329984ZqZSKh','38507LYPaVt','dev','1091990lbGSBC','Delete\x20a\x20CUSTOM\x20role\x20(built-in\x20roles\x20rejected);\x20requires\x20--yes','3735185GblpEP','2075640vYQWQV','1398rEKEwZ','\x20(id='];a192_0x5aba=function(){return _0x4c2bc6;};return a192_0x5aba();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';const DELETE_PATH='/smartapi/permit/role/delete';export const roleDelete={'service':a192_0x44f0ac(0x1dc),'command':'delete','description':a192_0x44f0ac(0x1e2),'risk':'high-risk-write','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x170e2a){const _0x186655=a192_0x44f0ac,_0x5201ce=_0x170e2a[_0x186655(0x1e9)]('id'),_0x1153fe=await getRoleById(_0x170e2a['appCode'],_0x5201ce);return assertCustomRole(_0x1153fe,_0x186655(0x1e7)),asDryRunResult({'scope':_0x186655(0x1e0),'operation':_0x186655(0x1e7),'selector':{'appCode':_0x170e2a[_0x186655(0x1dd)],'roleId':_0x5201ce,'roleName':_0x1153fe[_0x186655(0x1ea)]},'before':projectRole(_0x1153fe),'after':null,'dryRun':!![],'backend':{'method':_0x186655(0x1eb),'path':DELETE_PATH},'warnings':_0x1153fe[_0x186655(0x1ed)]>0x0?['Role\x20still\x20has\x20'+_0x1153fe[_0x186655(0x1ed)]+_0x186655(0x1ec)]:[]},{'method':_0x186655(0x1eb),'url':DELETE_PATH});},async 'execute'(_0x33424f){const _0x35a83b=a192_0x44f0ac,_0x4f4c71=_0x33424f['num']('id'),_0x466bce=await getRoleById(_0x33424f[_0x35a83b(0x1dd)],_0x4f4c71);return assertCustomRole(_0x466bce,'delete'),await deleteAppRole(_0x4f4c71),{'ok':!![],'data':{'scope':_0x35a83b(0x1e0),'operation':_0x35a83b(0x1e7),'selector':{'appCode':_0x33424f[_0x35a83b(0x1dd)],'roleId':_0x4f4c71,'roleName':_0x466bce[_0x35a83b(0x1ea)]},'before':projectRole(_0x466bce),'after':null,'dryRun':![],'backend':{'method':_0x35a83b(0x1eb),'path':DELETE_PATH},'warnings':[]},'message':'Deleted\x20role\x20'+_0x466bce[_0x35a83b(0x1ea)]+_0x35a83b(0x1e6)+_0x4f4c71+')'};}};
@@ -1 +1 @@
1
- const a194_0x36ba44=a194_0x3e42;function a194_0x3e42(_0x57dc33,_0xcd5a62){_0x57dc33=_0x57dc33-0x102;const _0x4113f8=a194_0x4113();let _0x3e4208=_0x4113f8[_0x57dc33];return _0x3e4208;}(function(_0x2f8b42,_0xeeebec){const _0x164c73=a194_0x3e42,_0x1bd5e7=_0x2f8b42();while(!![]){try{const _0x4ee8d0=-parseInt(_0x164c73(0x110))/0x1+-parseInt(_0x164c73(0x106))/0x2+-parseInt(_0x164c73(0x10d))/0x3*(parseInt(_0x164c73(0x104))/0x4)+-parseInt(_0x164c73(0x108))/0x5+parseInt(_0x164c73(0x109))/0x6+parseInt(_0x164c73(0x10b))/0x7+-parseInt(_0x164c73(0x10a))/0x8*(-parseInt(_0x164c73(0x10e))/0x9);if(_0x4ee8d0===_0xeeebec)break;else _0x1bd5e7['push'](_0x1bd5e7['shift']());}catch(_0x348fe4){_0x1bd5e7['push'](_0x1bd5e7['shift']());}}}(a194_0x4113,0x81413));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a194_0x4113(){const _0x41eeaa=['read','role','14844MmVfRa','roleType','1555684McSqFN','detail','2217610NKJOTG','2662866iAgWVa','289088qxqYGb','4537197SeSDCd','Show\x20a\x20single\x20role\x27s\x20detail','498IitcjJ','522kaITJj','num','821053qgPEyA'];a194_0x4113=function(){return _0x41eeaa;};return a194_0x4113();}import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';export const roleDetail={'service':a194_0x36ba44(0x103),'command':a194_0x36ba44(0x107),'description':a194_0x36ba44(0x10c),'risk':a194_0x36ba44(0x102),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x15dea3){const _0x38920e=a194_0x36ba44,_0x1ef4e4=_0x15dea3[_0x38920e(0x10f)]('id'),_0x3a0024=await getRoleById(_0x15dea3['appCode'],_0x1ef4e4);return{'ok':!![],'data':{'scope':'dev','role':projectRole(_0x3a0024)},'message':'Role\x20'+_0x3a0024['roleName']+'\x20('+_0x3a0024[_0x38920e(0x105)]+')'};}};
1
+ const a193_0x4b2ccd=a193_0x3e39;(function(_0xfaaefc,_0x1b4b30){const _0x480fb2=a193_0x3e39,_0x28e5fb=_0xfaaefc();while(!![]){try{const _0x59366f=parseInt(_0x480fb2(0x183))/0x1+parseInt(_0x480fb2(0x179))/0x2+parseInt(_0x480fb2(0x17e))/0x3*(parseInt(_0x480fb2(0x17a))/0x4)+parseInt(_0x480fb2(0x187))/0x5+-parseInt(_0x480fb2(0x182))/0x6*(-parseInt(_0x480fb2(0x17d))/0x7)+-parseInt(_0x480fb2(0x189))/0x8+-parseInt(_0x480fb2(0x181))/0x9;if(_0x59366f===_0x1b4b30)break;else _0x28e5fb['push'](_0x28e5fb['shift']());}catch(_0x312667){_0x28e5fb['push'](_0x28e5fb['shift']());}}}(a193_0x1824,0x74661));function a193_0x1824(){const _0x1c0c6e=['Show\x20a\x20single\x20role\x27s\x20detail','1653141XzhCLM','15DrSuwY','num','dev','10397178EyrajS','18xUdvPm','923563jdDCaf','role','roleName','read','473920QGSrSh','roleType','7484392kIDHip','detail','appCode','972058AnmuDw','283756PAGxOC','Role\x20'];a193_0x1824=function(){return _0x1c0c6e;};return a193_0x1824();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a193_0x3e39(_0x162ea2,_0x26a7a6){_0x162ea2=_0x162ea2-0x178;const _0x18249e=a193_0x1824();let _0x3e3911=_0x18249e[_0x162ea2];return _0x3e3911;}export const roleDetail={'service':a193_0x4b2ccd(0x184),'command':a193_0x4b2ccd(0x18a),'description':a193_0x4b2ccd(0x17c),'risk':a193_0x4b2ccd(0x186),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x176c92){const _0x17b9ec=a193_0x4b2ccd,_0x3e8ee0=_0x176c92[_0x17b9ec(0x17f)]('id'),_0x336e4e=await getRoleById(_0x176c92[_0x17b9ec(0x178)],_0x3e8ee0);return{'ok':!![],'data':{'scope':_0x17b9ec(0x180),'role':projectRole(_0x336e4e)},'message':_0x17b9ec(0x17b)+_0x336e4e[_0x17b9ec(0x185)]+'\x20('+_0x336e4e[_0x17b9ec(0x188)]+')'};}};
@@ -1 +1 @@
1
- (function(_0x20b2c9,_0x3654a7){const _0x16c938=a195_0x1886,_0x120304=_0x20b2c9();while(!![]){try{const _0x4dd989=-parseInt(_0x16c938(0x16b))/0x1*(-parseInt(_0x16c938(0x166))/0x2)+parseInt(_0x16c938(0x167))/0x3+-parseInt(_0x16c938(0x169))/0x4+-parseInt(_0x16c938(0x168))/0x5*(-parseInt(_0x16c938(0x16a))/0x6)+-parseInt(_0x16c938(0x162))/0x7*(parseInt(_0x16c938(0x164))/0x8)+parseInt(_0x16c938(0x165))/0x9+parseInt(_0x16c938(0x163))/0xa;if(_0x4dd989===_0x3654a7)break;else _0x120304['push'](_0x120304['shift']());}catch(_0x20db7f){_0x120304['push'](_0x120304['shift']());}}}(a195_0x15fe,0x92a26));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';import{roleUpdate}from'../../commands/role/update.js';import{roleDelete}from'../../commands/role/delete.js';function a195_0x1886(_0x2e6cbc,_0x26b061){_0x2e6cbc=_0x2e6cbc-0x162;const _0x15fea6=a195_0x15fe();let _0x188666=_0x15fea6[_0x2e6cbc];return _0x188666;}function a195_0x15fe(){const _0x6c77f0=['2988400zsBmiD','24ehyiSH','3656052cnKmQZ','65534MczgaO','1829277zapKJq','1307230sIZVGX','4801636bgZcIV','12RznQoC','9OJXrYl','773731oEJQOP'];a195_0x15fe=function(){return _0x6c77f0;};return a195_0x15fe();}import{roleUserResolve}from'../../commands/role/user-resolve.js';import{roleUserAdd}from'../../commands/role/user-add.js';import{roleUserRemove}from'../../commands/role/user-remove.js';export const roleDefinitions=[roleList,roleDetail,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
1
+ (function(_0x34ed66,_0x345833){const _0x2acb3a=a194_0x4fe0,_0x327a90=_0x34ed66();while(!![]){try{const _0x5bc7fe=parseInt(_0x2acb3a(0x71))/0x1*(-parseInt(_0x2acb3a(0x70))/0x2)+-parseInt(_0x2acb3a(0x6b))/0x3+parseInt(_0x2acb3a(0x73))/0x4+parseInt(_0x2acb3a(0x6e))/0x5*(parseInt(_0x2acb3a(0x6d))/0x6)+-parseInt(_0x2acb3a(0x6c))/0x7+parseInt(_0x2acb3a(0x6f))/0x8+parseInt(_0x2acb3a(0x72))/0x9;if(_0x5bc7fe===_0x345833)break;else _0x327a90['push'](_0x327a90['shift']());}catch(_0x5b9062){_0x327a90['push'](_0x327a90['shift']());}}}(a194_0x5814,0x7f4cc));import{roleList}from'../../commands/role/list.js';function a194_0x4fe0(_0x47a8a6,_0x44f840){_0x47a8a6=_0x47a8a6-0x6b;const _0x581403=a194_0x5814();let _0x4fe0cb=_0x581403[_0x47a8a6];return _0x4fe0cb;}import{roleDetail}from'../../commands/role/detail.js';import{roleUpdate}from'../../commands/role/update.js';import{roleDelete}from'../../commands/role/delete.js';function a194_0x5814(){const _0x5a14bf=['1629444iPMroT','6388865KlofmX','3924504OKbgvi','5RHgAcz','4109896GBWZCG','2362DfTQty','506TGcbkL','6123924OPzpVA','2906368pdkMSJ'];a194_0x5814=function(){return _0x5a14bf;};return a194_0x5814();}import{roleUserResolve}from'../../commands/role/user-resolve.js';import{roleUserAdd}from'../../commands/role/user-add.js';import{roleUserRemove}from'../../commands/role/user-remove.js';export const roleDefinitions=[roleList,roleDetail,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
@@ -1 +1 @@
1
- const a196_0x5a73f2=a196_0x3bdb;(function(_0x3f6c92,_0x1463af){const _0x350288=a196_0x3bdb,_0x519969=_0x3f6c92();while(!![]){try{const _0x2b5f81=-parseInt(_0x350288(0x1a4))/0x1+-parseInt(_0x350288(0x1a8))/0x2*(-parseInt(_0x350288(0x1ac))/0x3)+parseInt(_0x350288(0x1ae))/0x4+parseInt(_0x350288(0x197))/0x5+-parseInt(_0x350288(0x1b6))/0x6+parseInt(_0x350288(0x198))/0x7+parseInt(_0x350288(0x1b2))/0x8*(-parseInt(_0x350288(0x1aa))/0x9);if(_0x2b5f81===_0x1463af)break;else _0x519969['push'](_0x519969['shift']());}catch(_0x9468ef){_0x519969['push'](_0x519969['shift']());}}}(a196_0x35ce,0x1e73a));import{listAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a196_0x35ce(){const _0x439de5=['pagesize','Use\x20one\x20of:\x20','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','Filter\x20by\x20role\x20type','roleType','str','dev','539820aEwAIJ','722603ligRJH','validation','appCode','Page\x20size\x20(1-100)','filter','CUSTOM','num','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','DEV','Invalid\x20--type\x20\x22','type','map','242470mSuKfo','role','page','Page\x20index\x20(1-based)','1006MjwJQW','read','126QpRbGE','includes','1485xttwoZ','toUpperCase','607388LOnPsU','Found\x20','trim','number','132360uOLSug','length','ADMIN','join','79170gELevn'];a196_0x35ce=function(){return _0x439de5;};return a196_0x35ce();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=[a196_0x5a73f2(0x1b4),a196_0x5a73f2(0x1a0),'OWNER',a196_0x5a73f2(0x19d)];function a196_0x3bdb(_0x20e817,_0x2eaf21){_0x20e817=_0x20e817-0x192;const _0x35ce25=a196_0x35ce();let _0x3bdbc1=_0x35ce25[_0x20e817];return _0x3bdbc1;}export const roleList={'service':a196_0x5a73f2(0x1a5),'command':'list','description':a196_0x5a73f2(0x19f),'risk':a196_0x5a73f2(0x1a9),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a196_0x5a73f2(0x1a2),'type':'string','required':![],'description':a196_0x5a73f2(0x193),'enum':ROLE_TYPES},{'name':a196_0x5a73f2(0x1a6),'type':'number','description':a196_0x5a73f2(0x1a7),'default':0x1},{'name':a196_0x5a73f2(0x1b7),'type':a196_0x5a73f2(0x1b1),'description':a196_0x5a73f2(0x19b),'default':0x64}],async 'validate'(_0x703cbc){const _0x5d7ad9=a196_0x5a73f2,_0x439625=_0x703cbc[_0x5d7ad9(0x195)](_0x5d7ad9(0x1a2))[_0x5d7ad9(0x1b0)]();if(_0x439625&&!ROLE_TYPES[_0x5d7ad9(0x1ab)](_0x439625[_0x5d7ad9(0x1ad)]()))throw CliErrors[_0x5d7ad9(0x199)](_0x5d7ad9(0x1a1)+_0x439625+'\x22.',_0x5d7ad9(0x1b8)+ROLE_TYPES[_0x5d7ad9(0x1b5)](',\x20')+'.');const _0x2644be=_0x703cbc[_0x5d7ad9(0x19e)](_0x5d7ad9(0x1a6),0x1),_0x5bfd60=_0x703cbc['num'](_0x5d7ad9(0x1b7),0x64);if(_0x2644be<0x1)throw CliErrors['validation'](_0x5d7ad9(0x192));if(_0x5bfd60<0x1||_0x5bfd60>0x64)throw CliErrors[_0x5d7ad9(0x199)]('--pagesize\x20must\x20be\x20between\x201\x20and\x20100.');},async 'execute'(_0x3c637a){const _0x6f33fd=a196_0x5a73f2,_0x13e1b9=_0x3c637a['num'](_0x6f33fd(0x1a6),0x1)||0x1,_0x3327b1=_0x3c637a['num']('pagesize',0x64)||0x64,_0x45b4f1=_0x3c637a[_0x6f33fd(0x195)](_0x6f33fd(0x1a2))[_0x6f33fd(0x1b0)]()[_0x6f33fd(0x1ad)](),{items:_0x1f76e4,paging:_0x43340a}=await listAppRoles(_0x3c637a[_0x6f33fd(0x19a)],{'currentPage':_0x13e1b9,'pageSize':_0x3327b1}),_0x3192eb=_0x45b4f1?_0x1f76e4[_0x6f33fd(0x19c)](_0x242bbd=>_0x242bbd[_0x6f33fd(0x194)]===_0x45b4f1):_0x1f76e4,_0x22bb52=_0x3192eb[_0x6f33fd(0x1a3)](projectRole);return{'ok':!![],'data':{'scope':_0x6f33fd(0x196),'roles':_0x22bb52,'paging':_0x43340a},'message':_0x6f33fd(0x1af)+_0x22bb52[_0x6f33fd(0x1b3)]+'\x20role(s)'};}};
1
+ const a195_0x5c878c=a195_0x2c13;(function(_0x52cd1e,_0x3f6e6d){const _0x365647=a195_0x2c13,_0x26a4d9=_0x52cd1e();while(!![]){try{const _0x1d3f79=parseInt(_0x365647(0x14f))/0x1*(-parseInt(_0x365647(0x149))/0x2)+-parseInt(_0x365647(0x148))/0x3*(parseInt(_0x365647(0x16c))/0x4)+-parseInt(_0x365647(0x166))/0x5*(parseInt(_0x365647(0x16b))/0x6)+-parseInt(_0x365647(0x164))/0x7*(-parseInt(_0x365647(0x152))/0x8)+-parseInt(_0x365647(0x163))/0x9*(parseInt(_0x365647(0x162))/0xa)+parseInt(_0x365647(0x15c))/0xb*(-parseInt(_0x365647(0x14d))/0xc)+-parseInt(_0x365647(0x157))/0xd*(-parseInt(_0x365647(0x15e))/0xe);if(_0x1d3f79===_0x3f6e6d)break;else _0x26a4d9['push'](_0x26a4d9['shift']());}catch(_0x1c9eec){_0x26a4d9['push'](_0x26a4d9['shift']());}}}(a195_0x11fb,0x9684f));import{listAppRoles}from'../../core/api-client.js';function a195_0x2c13(_0x52e848,_0x48557a){_0x52e848=_0x52e848-0x148;const _0x11fb92=a195_0x11fb();let _0x2c13ef=_0x11fb92[_0x52e848];return _0x2c13ef;}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a195_0x11fb(){const _0x50d3f0=['Page\x20size\x20(1-100)','CUSTOM','filter','72PvDPFR','172bgFEIA','number','map','trim','pagesize','70251LQjMdc','4GfPLGA','read','appCode','length','103704tfzzOM','type','454273xanSZM','\x20role(s)','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','8mFluzW','Page\x20index\x20(1-based)','page','join','roleType','6058247vmwJfw','num','str','validation','Invalid\x20--type\x20\x22','979lqbYLZ','Filter\x20by\x20role\x20type','112AeSaCx','dev','includes','Found\x20','2255530MAPXkQ','9LctGar','1165409dIYUAr','role','153310xJZtng','toUpperCase'];a195_0x11fb=function(){return _0x50d3f0;};return a195_0x11fb();}import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=['ADMIN','DEV','OWNER',a195_0x5c878c(0x169)];export const roleList={'service':a195_0x5c878c(0x165),'command':'list','description':'List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','risk':a195_0x5c878c(0x14a),'flags':[APPCODE_FLAG_OPTIONAL,{'name':'type','type':'string','required':![],'description':a195_0x5c878c(0x15d),'enum':ROLE_TYPES},{'name':'page','type':'number','description':a195_0x5c878c(0x153),'default':0x1},{'name':a195_0x5c878c(0x170),'type':a195_0x5c878c(0x16d),'description':a195_0x5c878c(0x168),'default':0x64}],async 'validate'(_0x36bd69){const _0x3ea142=a195_0x5c878c,_0x256cd8=_0x36bd69[_0x3ea142(0x159)](_0x3ea142(0x14e))[_0x3ea142(0x16f)]();if(_0x256cd8&&!ROLE_TYPES[_0x3ea142(0x160)](_0x256cd8[_0x3ea142(0x167)]()))throw CliErrors[_0x3ea142(0x15a)](_0x3ea142(0x15b)+_0x256cd8+'\x22.','Use\x20one\x20of:\x20'+ROLE_TYPES[_0x3ea142(0x155)](',\x20')+'.');const _0x17c037=_0x36bd69[_0x3ea142(0x158)](_0x3ea142(0x154),0x1),_0x149fd0=_0x36bd69['num'](_0x3ea142(0x170),0x64);if(_0x17c037<0x1)throw CliErrors['validation'](_0x3ea142(0x151));if(_0x149fd0<0x1||_0x149fd0>0x64)throw CliErrors[_0x3ea142(0x15a)]('--pagesize\x20must\x20be\x20between\x201\x20and\x20100.');},async 'execute'(_0x247a6f){const _0xaa61c0=a195_0x5c878c,_0x373688=_0x247a6f[_0xaa61c0(0x158)]('page',0x1)||0x1,_0x208919=_0x247a6f[_0xaa61c0(0x158)](_0xaa61c0(0x170),0x64)||0x64,_0x1db76c=_0x247a6f['str']('type')['trim']()[_0xaa61c0(0x167)](),{items:_0x12fbd3,paging:_0x21a418}=await listAppRoles(_0x247a6f[_0xaa61c0(0x14b)],{'currentPage':_0x373688,'pageSize':_0x208919}),_0x315a90=_0x1db76c?_0x12fbd3[_0xaa61c0(0x16a)](_0x537d28=>_0x537d28[_0xaa61c0(0x156)]===_0x1db76c):_0x12fbd3,_0x4a8acf=_0x315a90[_0xaa61c0(0x16e)](projectRole);return{'ok':!![],'data':{'scope':_0xaa61c0(0x15f),'roles':_0x4a8acf,'paging':_0x21a418},'message':_0xaa61c0(0x161)+_0x4a8acf[_0xaa61c0(0x14c)]+_0xaa61c0(0x150)};}};
@@ -1 +1 @@
1
- const a197_0x221196=a197_0x5ba6;(function(_0x35c83f,_0x30fb69){const _0x57e9c3=a197_0x5ba6,_0x89e9fd=_0x35c83f();while(!![]){try{const _0x2616e6=parseInt(_0x57e9c3(0x18a))/0x1+-parseInt(_0x57e9c3(0x181))/0x2+-parseInt(_0x57e9c3(0x17c))/0x3+parseInt(_0x57e9c3(0x178))/0x4*(-parseInt(_0x57e9c3(0x182))/0x5)+-parseInt(_0x57e9c3(0x173))/0x6*(-parseInt(_0x57e9c3(0x183))/0x7)+parseInt(_0x57e9c3(0x17d))/0x8+parseInt(_0x57e9c3(0x161))/0x9;if(_0x2616e6===_0x30fb69)break;else _0x89e9fd['push'](_0x89e9fd['shift']());}catch(_0x4431f5){_0x89e9fd['push'](_0x89e9fd['shift']());}}}(a197_0x4ebe,0x6fc30));function a197_0x4ebe(){const _0x57478d=['Missing\x20role\x20reference.','POST','\x22\x20is\x20ambiguous\x20(ids:\x20','remark','nickname','appCode','Use\x20the\x20platform\x20ownership-transfer\x20workflow\x20to\x20change\x20the\x20application\x20owner.','push','Removed\x20','totalCount','expect-user-count','Missing\x20user\x20reference.','/smartapi/permit/user-role/delete','OWNER','string','Cannot\x20','3901473bifjnr','str','userCount','\x20duplicate\x20memberships\x20for\x20user\x20','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','Role\x20name','roleName','Role\x20id\x20or\x20exact\x20role\x20name','username','\x22:\x20','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','expectUserCount',';\x20no\x20change.','Role\x20name\x20\x22','DEV','\x20is\x20not\x20a\x20member\x20of\x20role\x20','roleType','length','108cisxxA','map','trim','user-add','name','7116sKFKpH','flagMissing','Anti-drift\x20check\x20failed:\x20expected\x20','\x20built-in\x20role\x20','743292csgweP','4740728rBsohr','tenant_code','toLowerCase','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','1715812ahFmRL','510FNDKKT','56077qxGMpH','includes','Pass\x20--user\x20<id|name>.','dryRun','User\x20','authRequired','find','574618jyFteY','Pass\x20--user\x20<id>.','number','user','\x20not\x20found\x20in\x20app\x20','dev','flag','tenant','Optional\x20role\x20remark/description','\x20is\x20already\x20a\x20member\x20of\x20role\x20','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','\x20member(s)\x20but\x20role\x20has\x20','userId','Disambiguate\x20with\x20--role\x20<id>.','/smartapi/permit/user-role/create','validation','join','role','filter','test','\x20members\x20of\x20the\x20OWNER\x20role.','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','Role\x20id\x20'];a197_0x4ebe=function(){return _0x57478d;};return a197_0x4ebe();}import{getTenantMembers,listDevUserRoleRelations,listAppRoles}from'../../core/api-client.js';function a197_0x5ba6(_0x784cf4,_0x2837ed){_0x784cf4=_0x784cf4-0x160;const _0x4ebed2=a197_0x4ebe();let _0x5ba6e7=_0x4ebed2[_0x784cf4];return _0x5ba6e7;}import{getSessionUserInfo}from'../../auth/get-session-user.js';import{CliErrors}from'../../errors.js';export const ROLE_ID_FLAG={'name':'id','type':'number','required':!![],'description':'Role\x20id\x20(from\x20`role\x20list`)'};export const ROLE_REF_FLAG={'name':'role','type':a197_0x221196(0x1af),'required':!![],'description':a197_0x221196(0x168)};export const USER_REF_FLAG={'name':a197_0x221196(0x18d),'type':'string','required':!![],'description':'User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId'};export const NAME_FLAG={'name':a197_0x221196(0x177),'type':a197_0x221196(0x1af),'required':!![],'description':a197_0x221196(0x166)};export const USER_NAME_FLAG={'name':a197_0x221196(0x177),'type':'string','required':!![],'description':a197_0x221196(0x180)};export const REMARK_FLAG={'name':a197_0x221196(0x1a4),'type':a197_0x221196(0x1af),'required':![],'description':a197_0x221196(0x192)};export const EXPECT_USER_COUNT_FLAG={'name':a197_0x221196(0x1ab),'type':a197_0x221196(0x18c),'required':![],'description':'Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs'};export const BUILTIN_ROLE_TYPES=['ADMIN',a197_0x221196(0x16f),a197_0x221196(0x1ae)];export function isBuiltinRole(_0x2aa66b){const _0x879453=a197_0x221196;return BUILTIN_ROLE_TYPES[_0x879453(0x184)](_0x2aa66b);}export function assertCustomRole(_0x3e85c3,_0x15f354){const _0x2c28e6=a197_0x221196;if(_0x3e85c3[_0x2c28e6(0x171)]!=='CUSTOM')throw CliErrors[_0x2c28e6(0x199)](_0x2c28e6(0x160)+_0x15f354+_0x2c28e6(0x17b)+_0x3e85c3[_0x2c28e6(0x167)]+'\x20('+_0x3e85c3[_0x2c28e6(0x171)]+').',_0x2c28e6(0x165));}export function projectRole(_0x14f25a){const _0x412c58=a197_0x221196;return{'id':_0x14f25a['id'],'roleName':_0x14f25a[_0x412c58(0x167)],'roleType':_0x14f25a[_0x412c58(0x171)],'remark':_0x14f25a[_0x412c58(0x1a4)],'userCount':_0x14f25a[_0x412c58(0x163)],'permitCount':_0x14f25a['permitCount'],'builtin':isBuiltinRole(_0x14f25a['roleType'])};}export async function resolveRoleRef(_0x2429b7,_0xa1a74c){const _0x48a65a=a197_0x221196,_0x4a4dd2=_0xa1a74c[_0x48a65a(0x175)]();if(!_0x4a4dd2)throw CliErrors[_0x48a65a(0x199)](_0x48a65a(0x1a1),'Pass\x20--role\x20<id|name>.');if(/^\d+$/[_0x48a65a(0x19d)](_0x4a4dd2))return getRoleById(_0x2429b7,Number(_0x4a4dd2));const _0xef4cc8=await listAllAppRoles(_0x2429b7),_0x4f5793=_0xef4cc8[_0x48a65a(0x19c)](_0x587afb=>_0x587afb['roleName']===_0x4a4dd2);if(_0x4f5793[_0x48a65a(0x172)]===0x0)throw CliErrors[_0x48a65a(0x199)](_0x48a65a(0x16e)+_0x4a4dd2+'\x22\x20not\x20found\x20in\x20app\x20'+_0x2429b7+'.',_0x48a65a(0x194));if(_0x4f5793[_0x48a65a(0x172)]>0x1){const _0x168b45=_0x4f5793[_0x48a65a(0x174)](_0x22bb5c=>_0x22bb5c['id'])[_0x48a65a(0x19a)](',\x20');throw CliErrors['validation']('Role\x20name\x20\x22'+_0x4a4dd2+_0x48a65a(0x1a3)+_0x168b45+').',_0x48a65a(0x197));}return _0x4f5793[0x0];}export async function getRoleById(_0x3affd4,_0x3990c9){const _0xe26230=a197_0x221196,_0x540ea4=await listAllAppRoles(_0x3affd4),_0xbc5d41=_0x540ea4[_0xe26230(0x19c)](_0x1d6b9b=>_0x1d6b9b['id']===_0x3990c9&&(!_0x1d6b9b[_0xe26230(0x1a6)]||_0x1d6b9b[_0xe26230(0x1a6)]===_0x3affd4));if(_0xbc5d41[_0xe26230(0x172)]!==0x1)throw CliErrors[_0xe26230(0x199)](_0xe26230(0x1a0)+_0x3990c9+_0xe26230(0x18e)+_0x3affd4+'.',_0xe26230(0x16b));return _0xbc5d41[0x0];}async function listAllAppRoles(_0x1c076c){const _0x4ed7cd=a197_0x221196,_0x1ecbe9=0x64,_0x3851c9=[];for(let _0x50b419=0x1;;_0x50b419+=0x1){const {items:_0x137f28,paging:_0x3d7986}=await listAppRoles(_0x1c076c,{'currentPage':_0x50b419,'pageSize':_0x1ecbe9});_0x3851c9[_0x4ed7cd(0x1a8)](..._0x137f28);if(_0x137f28[_0x4ed7cd(0x172)]<_0x1ecbe9||_0x3d7986&&_0x3851c9[_0x4ed7cd(0x172)]>=_0x3d7986[_0x4ed7cd(0x1aa)])return _0x3851c9;}}export async function resolveTenantCode(){const _0x5863f9=a197_0x221196,_0x62c77c=await getSessionUserInfo(),_0x2e9e74=_0x62c77c?.[_0x5863f9(0x18d)]?.[_0x5863f9(0x191)]?.[_0x5863f9(0x17e)];if(!_0x2e9e74)throw CliErrors[_0x5863f9(0x188)]('Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.');return _0x2e9e74;}function matchMember(_0x336425,_0x9f2df6){const _0xa74803=a197_0x221196,_0x3c5312=_0x9f2df6[_0xa74803(0x175)]()['toLowerCase']();return(_0x336425['nickname']??'')[_0xa74803(0x17f)]()===_0x3c5312||(_0x336425['username']??'')[_0xa74803(0x17f)]()===_0x3c5312;}export async function resolveUserRef(_0x25ae8a,_0xb96b06=a197_0x221196(0x18b)){const _0x340ae5=a197_0x221196,_0x3f37e7=_0x25ae8a[_0x340ae5(0x175)]();if(!_0x3f37e7)throw CliErrors['validation'](_0x340ae5(0x1ac),_0x340ae5(0x185));const _0x4d3bc5=await resolveTenantCode(),_0x70cebc=await getTenantMembers(_0x4d3bc5);if(/^\d+$/[_0x340ae5(0x19d)](_0x3f37e7)){const _0x2a7171=Number(_0x3f37e7),_0x2eafdf=_0x70cebc[_0x340ae5(0x189)](_0x105a2f=>_0x105a2f[_0x340ae5(0x196)]===_0x2a7171);return{'userId':_0x2a7171,'username':_0x2eafdf?.[_0x340ae5(0x169)]??String(_0x2a7171),'nickname':_0x2eafdf?.[_0x340ae5(0x1a5)],'matchedBy':'id'};}const _0x549bed=_0x70cebc[_0x340ae5(0x19c)](_0x56086d=>matchMember(_0x56086d,_0x3f37e7));if(_0x549bed[_0x340ae5(0x172)]===0x0)throw CliErrors['validation']('No\x20tenant\x20member\x20matches\x20\x22'+_0x3f37e7+'\x22.','Check\x20the\x20nickname/username.\x20'+_0xb96b06);if(_0x549bed[_0x340ae5(0x172)]>0x1){const _0x5471d4=_0x549bed[_0x340ae5(0x174)](_0x27842f=>(_0x27842f[_0x340ae5(0x1a5)]??_0x27842f[_0x340ae5(0x169)]??'?')+'('+_0x27842f[_0x340ae5(0x196)]+')')[_0x340ae5(0x19a)](',\x20');throw CliErrors[_0x340ae5(0x199)]('Multiple\x20tenant\x20members\x20match\x20\x22'+_0x3f37e7+_0x340ae5(0x16a)+_0x5471d4+'.',_0xb96b06);}const _0x1e9d3a=_0x549bed[0x0];return{'userId':_0x1e9d3a['userId'],'username':_0x1e9d3a[_0x340ae5(0x169)]??String(_0x1e9d3a[_0x340ae5(0x196)]),'nickname':_0x1e9d3a['nickname'],'matchedBy':'name'};}export const CREATE_USER_ROLE_PATH=a197_0x221196(0x198);export const DELETE_USER_ROLE_PATH=a197_0x221196(0x1ad);export function computeRoleUserMutation(_0x38b90a){const _0x3e2e4a=a197_0x221196,{operation:_0x2ae2ab,appCode:_0x41324a,role:_0x4bfc6a,relations:_0x2ca29b,user:_0x4adf71}=_0x38b90a,_0x28d099=[...new Set(_0x2ca29b[_0x3e2e4a(0x174)](_0x4eb126=>_0x4eb126[_0x3e2e4a(0x196)]))],_0x48d051=[];if(_0x38b90a[_0x3e2e4a(0x16c)]!==undefined&&_0x38b90a[_0x3e2e4a(0x16c)]!==_0x28d099[_0x3e2e4a(0x172)])throw CliErrors[_0x3e2e4a(0x199)](_0x3e2e4a(0x17a)+_0x38b90a[_0x3e2e4a(0x16c)]+_0x3e2e4a(0x195)+_0x28d099['length']+'.',_0x3e2e4a(0x19f));const _0x1ca257=_0x28d099[_0x3e2e4a(0x184)](_0x4adf71[_0x3e2e4a(0x196)]),_0x3dd080=_0x2ca29b[_0x3e2e4a(0x19c)](_0x4cad9d=>_0x4cad9d[_0x3e2e4a(0x196)]===_0x4adf71[_0x3e2e4a(0x196)])[_0x3e2e4a(0x174)](_0x1bc54b=>_0x1bc54b['id']),_0x338fb8=_0x2ae2ab===_0x3e2e4a(0x176)?!_0x1ca257:_0x1ca257;let _0x25bdef=_0x28d099;_0x2ae2ab===_0x3e2e4a(0x176)?_0x1ca257?_0x48d051['push'](_0x3e2e4a(0x187)+_0x4adf71[_0x3e2e4a(0x196)]+_0x3e2e4a(0x193)+_0x4bfc6a['roleName']+_0x3e2e4a(0x16d)):_0x25bdef=[..._0x28d099,_0x4adf71[_0x3e2e4a(0x196)]]:!_0x1ca257?_0x48d051[_0x3e2e4a(0x1a8)](_0x3e2e4a(0x187)+_0x4adf71['userId']+_0x3e2e4a(0x170)+_0x4bfc6a[_0x3e2e4a(0x167)]+_0x3e2e4a(0x16d)):(_0x25bdef=_0x28d099['filter'](_0x4f141c=>_0x4f141c!==_0x4adf71[_0x3e2e4a(0x196)]),_0x3dd080[_0x3e2e4a(0x172)]>0x1&&_0x48d051[_0x3e2e4a(0x1a8)](_0x3e2e4a(0x1a9)+_0x3dd080[_0x3e2e4a(0x172)]+_0x3e2e4a(0x164)+_0x4adf71['userId']+'.'));const _0x57a4b3={'scope':_0x3e2e4a(0x18f),'operation':_0x2ae2ab,'selector':{'appCode':_0x41324a,'roleId':_0x4bfc6a['id'],'roleName':_0x4bfc6a['roleName'],'userId':_0x4adf71[_0x3e2e4a(0x196)]},'before':{'userIds':_0x28d099},'after':{'userIds':_0x25bdef},'dryRun':_0x38b90a[_0x3e2e4a(0x186)],'backend':{'method':_0x3e2e4a(0x1a2),'path':_0x2ae2ab===_0x3e2e4a(0x176)?CREATE_USER_ROLE_PATH:DELETE_USER_ROLE_PATH},'warnings':_0x48d051};return{'mutation':_0x57a4b3,'changed':_0x338fb8,'matchingRelationIds':_0x3dd080};}export async function loadDevRoleRelations(_0x51c1ff,_0x251f03){const _0x5c07b2=a197_0x221196,_0x21019a=0x64,_0x2219a4=[];for(let _0x4ec1e2=0x1;;_0x4ec1e2+=0x1){const {items:_0x150719,paging:_0x4544b1}=await listDevUserRoleRelations(_0x51c1ff,{'roleId':_0x251f03,'currentPage':_0x4ec1e2,'pageSize':_0x21019a});_0x2219a4['push'](..._0x150719);if(_0x150719[_0x5c07b2(0x172)]<_0x21019a||_0x4544b1&&_0x2219a4[_0x5c07b2(0x172)]>=_0x4544b1['totalCount'])return _0x2219a4;}}export function readRoleRef(_0x1be247){const _0x38ce51=a197_0x221196,_0x250872=_0x1be247[_0x38ce51(0x162)](_0x38ce51(0x19b))[_0x38ce51(0x175)]();if(!_0x250872)throw CliErrors[_0x38ce51(0x179)]('role','Pass\x20--role\x20<id|name>.');return _0x250872;}export async function prepareUserMutation(_0x15d92d,_0x52ce31,_0xa75cbe){const _0x43d9c0=a197_0x221196,_0x546bfd=readRoleRef(_0x15d92d),_0x47cccd=_0x15d92d[_0x43d9c0(0x162)](_0x43d9c0(0x18d))['trim']();if(!_0x47cccd)throw CliErrors[_0x43d9c0(0x179)](_0x43d9c0(0x18d),_0x43d9c0(0x185));const _0xe64d56=_0x15d92d[_0x43d9c0(0x190)](_0x43d9c0(0x1ab)),_0x2622e9=_0xe64d56===undefined||_0xe64d56===null?undefined:Number(_0xe64d56),_0x33ae4e=await resolveRoleRef(_0x15d92d[_0x43d9c0(0x1a6)],_0x546bfd);if(_0x33ae4e[_0x43d9c0(0x171)]===_0x43d9c0(0x1ae))throw CliErrors[_0x43d9c0(0x199)](_0x43d9c0(0x160)+_0x52ce31+_0x43d9c0(0x19e),_0x43d9c0(0x1a7));const _0x4a8531=await resolveUserRef(_0x47cccd),_0x2d25e5=await loadDevRoleRelations(_0x15d92d[_0x43d9c0(0x1a6)],_0x33ae4e['id']);return{...computeRoleUserMutation({'operation':_0x52ce31,'appCode':_0x15d92d[_0x43d9c0(0x1a6)],'role':_0x33ae4e,'relations':_0x2d25e5,'user':{'userId':_0x4a8531[_0x43d9c0(0x196)],'username':_0x4a8531[_0x43d9c0(0x169)],'nickname':_0x4a8531[_0x43d9c0(0x1a5)]},'dryRun':_0xa75cbe,..._0x2622e9!==undefined?{'expectUserCount':_0x2622e9}:{}}),'role':_0x33ae4e,'user':_0x4a8531};}
1
+ const a196_0x5690c5=a196_0x1e3e;(function(_0x5a0788,_0x36b714){const _0x26906a=a196_0x1e3e,_0x49b866=_0x5a0788();while(!![]){try{const _0x3b5c96=-parseInt(_0x26906a(0x1d9))/0x1+-parseInt(_0x26906a(0x1cf))/0x2+parseInt(_0x26906a(0x19d))/0x3+parseInt(_0x26906a(0x1af))/0x4*(parseInt(_0x26906a(0x1ad))/0x5)+parseInt(_0x26906a(0x1ca))/0x6+-parseInt(_0x26906a(0x1a9))/0x7+parseInt(_0x26906a(0x18e))/0x8;if(_0x3b5c96===_0x36b714)break;else _0x49b866['push'](_0x49b866['shift']());}catch(_0x3fe9f9){_0x49b866['push'](_0x49b866['shift']());}}}(a196_0x1417,0x5ed85));import{getTenantMembers,listDevUserRoleRelations,listAppRoles}from'../../core/api-client.js';import{getSessionUserInfo}from'../../auth/get-session-user.js';import{CliErrors}from'../../errors.js';export const ROLE_ID_FLAG={'name':'id','type':a196_0x5690c5(0x193),'required':!![],'description':a196_0x5690c5(0x1b5)};export const ROLE_REF_FLAG={'name':a196_0x5690c5(0x1b1),'type':a196_0x5690c5(0x1c7),'required':!![],'description':a196_0x5690c5(0x1c3)};export const USER_REF_FLAG={'name':'user','type':a196_0x5690c5(0x1c7),'required':!![],'description':'User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId'};export const NAME_FLAG={'name':'name','type':a196_0x5690c5(0x1c7),'required':!![],'description':a196_0x5690c5(0x196)};export const USER_NAME_FLAG={'name':'name','type':a196_0x5690c5(0x1c7),'required':!![],'description':a196_0x5690c5(0x195)};export const REMARK_FLAG={'name':a196_0x5690c5(0x19c),'type':a196_0x5690c5(0x1c7),'required':![],'description':a196_0x5690c5(0x1b7)};export const EXPECT_USER_COUNT_FLAG={'name':'expect-user-count','type':'number','required':![],'description':a196_0x5690c5(0x1a4)};function a196_0x1e3e(_0x3a3e28,_0x1d9866){_0x3a3e28=_0x3a3e28-0x18e;const _0x1417ee=a196_0x1417();let _0x1e3e9d=_0x1417ee[_0x3a3e28];return _0x1e3e9d;}function a196_0x1417(){const _0x2d4976=['Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','\x22\x20is\x20ambiguous\x20(ids:\x20','dev','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','Role\x20id\x20or\x20exact\x20role\x20name','Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.','Role\x20name\x20\x22','trim','string','roleName','join','136914zYDqqo','dryRun','Pass\x20--user\x20<id>.','DEV','Role\x20id\x20','40116ltbrPp','Cannot\x20','filter','\x20members\x20of\x20the\x20OWNER\x20role.','expectUserCount','permitCount','OWNER','POST','CUSTOM','User\x20','240367rpBNjd','\x22:\x20','user',';\x20no\x20change.','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','Removed\x20','nickname','/smartapi/permit/user-role/create','2437856fRWWWs','\x20duplicate\x20memberships\x20for\x20user\x20','includes','\x20is\x20not\x20a\x20member\x20of\x20role\x20','roleType','number','flagMissing','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','Role\x20name','totalCount','map','Disambiguate\x20with\x20--role\x20<id>.','\x20not\x20found\x20in\x20app\x20','appCode','remark','475161tNhyYU','Missing\x20role\x20reference.','userId','toLowerCase','Check\x20the\x20nickname/username.\x20','find','validation','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','str','name','tenant','expect-user-count','708134CNhaRz','Anti-drift\x20check\x20failed:\x20expected\x20','Use\x20the\x20platform\x20ownership-transfer\x20workflow\x20to\x20change\x20the\x20application\x20owner.','\x20is\x20already\x20a\x20member\x20of\x20role\x20','130JWuKEW','length','40636mcalit','\x22\x20not\x20found\x20in\x20app\x20','role','username','push','test','Role\x20id\x20(from\x20`role\x20list`)','user-add','Optional\x20role\x20remark/description','Pass\x20--user\x20<id|name>.','flag','tenant_code','authRequired','No\x20tenant\x20member\x20matches\x20\x22','\x20member(s)\x20but\x20role\x20has\x20','Missing\x20user\x20reference.'];a196_0x1417=function(){return _0x2d4976;};return a196_0x1417();}export const BUILTIN_ROLE_TYPES=['ADMIN',a196_0x5690c5(0x1cd),a196_0x5690c5(0x1d5)];export function isBuiltinRole(_0x2a150c){const _0x2cc92e=a196_0x5690c5;return BUILTIN_ROLE_TYPES[_0x2cc92e(0x190)](_0x2a150c);}export function assertCustomRole(_0x2c5cdf,_0x43a578){const _0x2fb109=a196_0x5690c5;if(_0x2c5cdf[_0x2fb109(0x192)]!==_0x2fb109(0x1d7))throw CliErrors[_0x2fb109(0x1a3)](_0x2fb109(0x1d0)+_0x43a578+'\x20built-in\x20role\x20'+_0x2c5cdf[_0x2fb109(0x1c8)]+'\x20('+_0x2c5cdf[_0x2fb109(0x192)]+').',_0x2fb109(0x1dd));}export function projectRole(_0x1dd026){const _0x10e81b=a196_0x5690c5;return{'id':_0x1dd026['id'],'roleName':_0x1dd026[_0x10e81b(0x1c8)],'roleType':_0x1dd026[_0x10e81b(0x192)],'remark':_0x1dd026[_0x10e81b(0x19c)],'userCount':_0x1dd026['userCount'],'permitCount':_0x1dd026[_0x10e81b(0x1d4)],'builtin':isBuiltinRole(_0x1dd026[_0x10e81b(0x192)])};}export async function resolveRoleRef(_0x2c4b82,_0x3bf751){const _0x2a8d9b=a196_0x5690c5,_0xe5cf6f=_0x3bf751[_0x2a8d9b(0x1c6)]();if(!_0xe5cf6f)throw CliErrors[_0x2a8d9b(0x1a3)](_0x2a8d9b(0x19e),'Pass\x20--role\x20<id|name>.');if(/^\d+$/[_0x2a8d9b(0x1b4)](_0xe5cf6f))return getRoleById(_0x2c4b82,Number(_0xe5cf6f));const _0x24b6d2=await listAllAppRoles(_0x2c4b82),_0x14c17d=_0x24b6d2[_0x2a8d9b(0x1d1)](_0x400b93=>_0x400b93['roleName']===_0xe5cf6f);if(_0x14c17d[_0x2a8d9b(0x1ae)]===0x0)throw CliErrors['validation'](_0x2a8d9b(0x1c5)+_0xe5cf6f+_0x2a8d9b(0x1b0)+_0x2c4b82+'.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.');if(_0x14c17d[_0x2a8d9b(0x1ae)]>0x1){const _0x40d20a=_0x14c17d['map'](_0x55d721=>_0x55d721['id'])['join'](',\x20');throw CliErrors[_0x2a8d9b(0x1a3)](_0x2a8d9b(0x1c5)+_0xe5cf6f+_0x2a8d9b(0x1c0)+_0x40d20a+').',_0x2a8d9b(0x199));}return _0x14c17d[0x0];}export async function getRoleById(_0x118d3a,_0x9f8bec){const _0x8c8c87=a196_0x5690c5,_0xcbe336=await listAllAppRoles(_0x118d3a),_0x5805d3=_0xcbe336[_0x8c8c87(0x1d1)](_0x461e22=>_0x461e22['id']===_0x9f8bec&&(!_0x461e22[_0x8c8c87(0x19b)]||_0x461e22[_0x8c8c87(0x19b)]===_0x118d3a));if(_0x5805d3[_0x8c8c87(0x1ae)]!==0x1)throw CliErrors['validation'](_0x8c8c87(0x1ce)+_0x9f8bec+_0x8c8c87(0x19a)+_0x118d3a+'.',_0x8c8c87(0x1c2));return _0x5805d3[0x0];}async function listAllAppRoles(_0x2ade4a){const _0x19c4c0=a196_0x5690c5,_0x1fa27e=0x64,_0x51c363=[];for(let _0x3559f5=0x1;;_0x3559f5+=0x1){const {items:_0x42848d,paging:_0x599a61}=await listAppRoles(_0x2ade4a,{'currentPage':_0x3559f5,'pageSize':_0x1fa27e});_0x51c363[_0x19c4c0(0x1b3)](..._0x42848d);if(_0x42848d[_0x19c4c0(0x1ae)]<_0x1fa27e||_0x599a61&&_0x51c363['length']>=_0x599a61[_0x19c4c0(0x197)])return _0x51c363;}}export async function resolveTenantCode(){const _0x5a4d18=a196_0x5690c5,_0x36465d=await getSessionUserInfo(),_0x397983=_0x36465d?.[_0x5a4d18(0x1db)]?.[_0x5a4d18(0x1a7)]?.[_0x5a4d18(0x1ba)];if(!_0x397983)throw CliErrors[_0x5a4d18(0x1bb)](_0x5a4d18(0x1c4));return _0x397983;}function matchMember(_0x217d5a,_0x1af130){const _0x10d338=a196_0x5690c5,_0x39dfc1=_0x1af130[_0x10d338(0x1c6)]()[_0x10d338(0x1a0)]();return(_0x217d5a['nickname']??'')[_0x10d338(0x1a0)]()===_0x39dfc1||(_0x217d5a[_0x10d338(0x1b2)]??'')[_0x10d338(0x1a0)]()===_0x39dfc1;}export async function resolveUserRef(_0x48283e,_0x1b6a63=a196_0x5690c5(0x1cc)){const _0x5004a3=a196_0x5690c5,_0x2643f5=_0x48283e[_0x5004a3(0x1c6)]();if(!_0x2643f5)throw CliErrors[_0x5004a3(0x1a3)](_0x5004a3(0x1be),_0x5004a3(0x1b8));const _0xed79bc=await resolveTenantCode(),_0x2d522a=await getTenantMembers(_0xed79bc);if(/^\d+$/[_0x5004a3(0x1b4)](_0x2643f5)){const _0x2eae34=Number(_0x2643f5),_0x421c45=_0x2d522a[_0x5004a3(0x1a2)](_0x200c0b=>_0x200c0b['userId']===_0x2eae34);return{'userId':_0x2eae34,'username':_0x421c45?.['username']??String(_0x2eae34),'nickname':_0x421c45?.[_0x5004a3(0x1df)],'matchedBy':'id'};}const _0x56e8c9=_0x2d522a[_0x5004a3(0x1d1)](_0x5bfc6f=>matchMember(_0x5bfc6f,_0x2643f5));if(_0x56e8c9[_0x5004a3(0x1ae)]===0x0)throw CliErrors['validation'](_0x5004a3(0x1bc)+_0x2643f5+'\x22.',_0x5004a3(0x1a1)+_0x1b6a63);if(_0x56e8c9[_0x5004a3(0x1ae)]>0x1){const _0x40eefa=_0x56e8c9[_0x5004a3(0x198)](_0x453925=>(_0x453925[_0x5004a3(0x1df)]??_0x453925[_0x5004a3(0x1b2)]??'?')+'('+_0x453925['userId']+')')[_0x5004a3(0x1c9)](',\x20');throw CliErrors['validation']('Multiple\x20tenant\x20members\x20match\x20\x22'+_0x2643f5+_0x5004a3(0x1da)+_0x40eefa+'.',_0x1b6a63);}const _0x442477=_0x56e8c9[0x0];return{'userId':_0x442477[_0x5004a3(0x19f)],'username':_0x442477[_0x5004a3(0x1b2)]??String(_0x442477[_0x5004a3(0x19f)]),'nickname':_0x442477[_0x5004a3(0x1df)],'matchedBy':_0x5004a3(0x1a6)};}export const CREATE_USER_ROLE_PATH=a196_0x5690c5(0x1e0);export const DELETE_USER_ROLE_PATH='/smartapi/permit/user-role/delete';export function computeRoleUserMutation(_0xde5f8c){const _0x5af10d=a196_0x5690c5,{operation:_0x312460,appCode:_0x56c2a5,role:_0x5d3b87,relations:_0x3c77cd,user:_0x53a9fd}=_0xde5f8c,_0x1c4f94=[...new Set(_0x3c77cd[_0x5af10d(0x198)](_0x416450=>_0x416450['userId']))],_0x5a0d28=[];if(_0xde5f8c[_0x5af10d(0x1d3)]!==undefined&&_0xde5f8c['expectUserCount']!==_0x1c4f94['length'])throw CliErrors[_0x5af10d(0x1a3)](_0x5af10d(0x1aa)+_0xde5f8c[_0x5af10d(0x1d3)]+_0x5af10d(0x1bd)+_0x1c4f94['length']+'.',_0x5af10d(0x1bf));const _0x5e1052=_0x1c4f94[_0x5af10d(0x190)](_0x53a9fd[_0x5af10d(0x19f)]),_0x555c36=_0x3c77cd[_0x5af10d(0x1d1)](_0x33b68f=>_0x33b68f[_0x5af10d(0x19f)]===_0x53a9fd[_0x5af10d(0x19f)])['map'](_0xd63676=>_0xd63676['id']),_0x4f4057=_0x312460===_0x5af10d(0x1b6)?!_0x5e1052:_0x5e1052;let _0x5c6b86=_0x1c4f94;_0x312460===_0x5af10d(0x1b6)?_0x5e1052?_0x5a0d28[_0x5af10d(0x1b3)](_0x5af10d(0x1d8)+_0x53a9fd['userId']+_0x5af10d(0x1ac)+_0x5d3b87['roleName']+_0x5af10d(0x1dc)):_0x5c6b86=[..._0x1c4f94,_0x53a9fd['userId']]:!_0x5e1052?_0x5a0d28[_0x5af10d(0x1b3)](_0x5af10d(0x1d8)+_0x53a9fd['userId']+_0x5af10d(0x191)+_0x5d3b87[_0x5af10d(0x1c8)]+_0x5af10d(0x1dc)):(_0x5c6b86=_0x1c4f94['filter'](_0x39635b=>_0x39635b!==_0x53a9fd[_0x5af10d(0x19f)]),_0x555c36['length']>0x1&&_0x5a0d28[_0x5af10d(0x1b3)](_0x5af10d(0x1de)+_0x555c36['length']+_0x5af10d(0x18f)+_0x53a9fd[_0x5af10d(0x19f)]+'.'));const _0x1421af={'scope':_0x5af10d(0x1c1),'operation':_0x312460,'selector':{'appCode':_0x56c2a5,'roleId':_0x5d3b87['id'],'roleName':_0x5d3b87[_0x5af10d(0x1c8)],'userId':_0x53a9fd[_0x5af10d(0x19f)]},'before':{'userIds':_0x1c4f94},'after':{'userIds':_0x5c6b86},'dryRun':_0xde5f8c[_0x5af10d(0x1cb)],'backend':{'method':_0x5af10d(0x1d6),'path':_0x312460===_0x5af10d(0x1b6)?CREATE_USER_ROLE_PATH:DELETE_USER_ROLE_PATH},'warnings':_0x5a0d28};return{'mutation':_0x1421af,'changed':_0x4f4057,'matchingRelationIds':_0x555c36};}export async function loadDevRoleRelations(_0xae81d,_0x1ac40e){const _0x498c28=a196_0x5690c5,_0x33a954=0x64,_0x3e8521=[];for(let _0x4c77e0=0x1;;_0x4c77e0+=0x1){const {items:_0xe1fb4c,paging:_0x4fddb6}=await listDevUserRoleRelations(_0xae81d,{'roleId':_0x1ac40e,'currentPage':_0x4c77e0,'pageSize':_0x33a954});_0x3e8521[_0x498c28(0x1b3)](..._0xe1fb4c);if(_0xe1fb4c['length']<_0x33a954||_0x4fddb6&&_0x3e8521[_0x498c28(0x1ae)]>=_0x4fddb6[_0x498c28(0x197)])return _0x3e8521;}}export function readRoleRef(_0x2c0805){const _0x60f192=a196_0x5690c5,_0xdff959=_0x2c0805[_0x60f192(0x1a5)]('role')['trim']();if(!_0xdff959)throw CliErrors[_0x60f192(0x194)](_0x60f192(0x1b1),'Pass\x20--role\x20<id|name>.');return _0xdff959;}export async function prepareUserMutation(_0x3347b2,_0x5c552d,_0x2516ee){const _0x222ab9=a196_0x5690c5,_0x59321f=readRoleRef(_0x3347b2),_0x10f6d7=_0x3347b2['str'](_0x222ab9(0x1db))[_0x222ab9(0x1c6)]();if(!_0x10f6d7)throw CliErrors[_0x222ab9(0x194)]('user',_0x222ab9(0x1b8));const _0x12fc9d=_0x3347b2[_0x222ab9(0x1b9)](_0x222ab9(0x1a8)),_0x5980af=_0x12fc9d===undefined||_0x12fc9d===null?undefined:Number(_0x12fc9d),_0x433db3=await resolveRoleRef(_0x3347b2['appCode'],_0x59321f);if(_0x433db3['roleType']===_0x222ab9(0x1d5))throw CliErrors[_0x222ab9(0x1a3)](_0x222ab9(0x1d0)+_0x5c552d+_0x222ab9(0x1d2),_0x222ab9(0x1ab));const _0x1628aa=await resolveUserRef(_0x10f6d7),_0x5230bc=await loadDevRoleRelations(_0x3347b2[_0x222ab9(0x19b)],_0x433db3['id']);return{...computeRoleUserMutation({'operation':_0x5c552d,'appCode':_0x3347b2[_0x222ab9(0x19b)],'role':_0x433db3,'relations':_0x5230bc,'user':{'userId':_0x1628aa[_0x222ab9(0x19f)],'username':_0x1628aa[_0x222ab9(0x1b2)],'nickname':_0x1628aa[_0x222ab9(0x1df)]},'dryRun':_0x2516ee,..._0x5980af!==undefined?{'expectUserCount':_0x5980af}:{}}),'role':_0x433db3,'user':_0x1628aa};}
@@ -1 +1 @@
1
- const a198_0x8173cd=a198_0x591b;(function(_0x4b0678,_0x13ec2c){const _0x125be7=a198_0x591b,_0x2295fd=_0x4b0678();while(!![]){try{const _0x27bfec=parseInt(_0x125be7(0xae))/0x1+-parseInt(_0x125be7(0xb9))/0x2+parseInt(_0x125be7(0xb8))/0x3+parseInt(_0x125be7(0xb0))/0x4+-parseInt(_0x125be7(0xac))/0x5+parseInt(_0x125be7(0xb7))/0x6*(parseInt(_0x125be7(0xa2))/0x7)+parseInt(_0x125be7(0xb3))/0x8*(-parseInt(_0x125be7(0xa7))/0x9);if(_0x27bfec===_0x13ec2c)break;else _0x2295fd['push'](_0x2295fd['shift']());}catch(_0x3d1cc3){_0x2295fd['push'](_0x2295fd['shift']());}}}(a198_0x3624,0xe5c93));function a198_0x591b(_0x56b336,_0xfa0e1e){_0x56b336=_0x56b336-0xa1;const _0x36248d=a198_0x3624();let _0x591bd7=_0x36248d[_0x56b336];return _0x591bd7;}import{updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a198_0x3624(){const _0x533956=['flag','18yuviPK','3546855MBmfSY','952988ExKxEf','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(built-in\x20roles\x20rejected)','validation','780283wXGweb','POST','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','--name\x20cannot\x20be\x20empty.','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','1200393rCbEFu','Updated\x20role\x20','write','appCode','remark','5680675OBQhlD','num','194090tFnRjX','Nothing\x20to\x20update.','4972724EUtpLx','update','name','24ukLRsa','trim','roleName'];a198_0x3624=function(){return _0x533956;};return a198_0x3624();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,REMARK_FLAG,ROLE_ID_FLAG}from'../../commands/role/shared.js';const UPDATE_PATH='/smartapi/permit/role/update';function readPatch(_0x4a7736){const _0x5e421f=a198_0x591b,_0x526d4a=_0x4a7736[_0x5e421f(0xb6)](_0x5e421f(0xb2)),_0x3c51f8=_0x4a7736['flag'](_0x5e421f(0xab)),_0x3370d6={};if(_0x526d4a!==undefined&&_0x526d4a!==null){const _0x2ac175=String(_0x526d4a)[_0x5e421f(0xb4)]();if(!_0x2ac175)throw CliErrors[_0x5e421f(0xa1)](_0x5e421f(0xa5));if(_0x2ac175['length']>0x40)throw CliErrors[_0x5e421f(0xa1)](_0x5e421f(0xa4));_0x3370d6[_0x5e421f(0xb5)]=_0x2ac175;}_0x3c51f8!==undefined&&_0x3c51f8!==null&&(_0x3370d6[_0x5e421f(0xab)]=String(_0x3c51f8));if(_0x3370d6[_0x5e421f(0xb5)]===undefined&&_0x3370d6[_0x5e421f(0xab)]===undefined)throw CliErrors[_0x5e421f(0xa1)](_0x5e421f(0xaf),_0x5e421f(0xa6));return _0x3370d6;}export const roleUpdate={'service':'role','command':a198_0x8173cd(0xb1),'description':a198_0x8173cd(0xba),'risk':a198_0x8173cd(0xa9),'flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a198_0x8173cd(0xb2),'type':'string','required':![],'description':'New\x20role\x20name'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x2adc46){readPatch(_0x2adc46);},async 'dryRun'(_0x5b54a7){const _0x5cad70=a198_0x8173cd,_0x17cb2f=_0x5b54a7['num']('id'),_0x1674be=readPatch(_0x5b54a7),_0x2298c6=await getRoleById(_0x5b54a7[_0x5cad70(0xaa)],_0x17cb2f);return assertCustomRole(_0x2298c6,_0x5cad70(0xb1)),asDryRunResult({'scope':'dev','operation':_0x5cad70(0xb1),'selector':{'appCode':_0x5b54a7[_0x5cad70(0xaa)],'roleId':_0x17cb2f,'roleName':_0x2298c6[_0x5cad70(0xb5)]},'before':projectRole(_0x2298c6),'after':projectRole({..._0x2298c6,..._0x1674be[_0x5cad70(0xb5)]!==undefined?{'roleName':_0x1674be[_0x5cad70(0xb5)]}:{},..._0x1674be[_0x5cad70(0xab)]!==undefined?{'remark':_0x1674be[_0x5cad70(0xab)]}:{}}),'dryRun':!![],'backend':{'method':_0x5cad70(0xa3),'path':UPDATE_PATH},'warnings':[]},{'method':_0x5cad70(0xa3),'url':UPDATE_PATH});},async 'execute'(_0x335d74){const _0x5480d7=a198_0x8173cd,_0x2f58d5=_0x335d74[_0x5480d7(0xad)]('id'),_0x3068e2=readPatch(_0x335d74),_0x3bf7e2=await getRoleById(_0x335d74[_0x5480d7(0xaa)],_0x2f58d5);assertCustomRole(_0x3bf7e2,_0x5480d7(0xb1)),await updateAppRole({'id':_0x2f58d5,'appCode':_0x335d74[_0x5480d7(0xaa)],..._0x3068e2[_0x5480d7(0xb5)]!==undefined?{'roleName':_0x3068e2[_0x5480d7(0xb5)]}:{},..._0x3068e2[_0x5480d7(0xab)]!==undefined?{'remark':_0x3068e2['remark']}:{}});const _0x6c599d=await getRoleById(_0x335d74['appCode'],_0x2f58d5);return{'ok':!![],'data':{'scope':'dev','operation':_0x5480d7(0xb1),'selector':{'appCode':_0x335d74[_0x5480d7(0xaa)],'roleId':_0x2f58d5,'roleName':_0x6c599d[_0x5480d7(0xb5)]},'before':projectRole(_0x3bf7e2),'after':projectRole(_0x6c599d),'dryRun':![],'backend':{'method':_0x5480d7(0xa3),'path':UPDATE_PATH},'warnings':[]},'message':_0x5480d7(0xa8)+_0x6c599d['roleName']+'\x20(id='+_0x2f58d5+')'};}};
1
+ const a197_0x1b1df6=a197_0x3f34;(function(_0x357b00,_0x342f77){const _0x23c804=a197_0x3f34,_0x3480ff=_0x357b00();while(!![]){try{const _0x51ab5e=-parseInt(_0x23c804(0x176))/0x1*(parseInt(_0x23c804(0x177))/0x2)+parseInt(_0x23c804(0x17a))/0x3*(parseInt(_0x23c804(0x16c))/0x4)+parseInt(_0x23c804(0x182))/0x5*(parseInt(_0x23c804(0x173))/0x6)+-parseInt(_0x23c804(0x17c))/0x7+parseInt(_0x23c804(0x16e))/0x8+-parseInt(_0x23c804(0x16a))/0x9+parseInt(_0x23c804(0x17e))/0xa;if(_0x51ab5e===_0x342f77)break;else _0x3480ff['push'](_0x3480ff['shift']());}catch(_0x96b4dc){_0x3480ff['push'](_0x3480ff['shift']());}}}(a197_0x3e5f,0x45e94));import{updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a197_0x3e5f(){const _0x32a99d=['4hRziSz','POST','3912776BLqqiR','trim','length','dev','name','1646022IiNvNj','appCode','\x20(id=','15704zQUgSv','66ZBVCfU','Nothing\x20to\x20update.','validation','95163aaKhWu','roleName','1929039byyuac','update','3905720BLHfLl','Updated\x20role\x20','role','num','5VXiztw','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(built-in\x20roles\x20rejected)','/smartapi/permit/role/update','remark','New\x20role\x20name','flag','950058WvsHjz','string'];a197_0x3e5f=function(){return _0x32a99d;};return a197_0x3e5f();}function a197_0x3f34(_0x3380d8,_0x56dbd9){_0x3380d8=_0x3380d8-0x167;const _0x3e5f41=a197_0x3e5f();let _0x3f348e=_0x3e5f41[_0x3380d8];return _0x3f348e;}import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,REMARK_FLAG,ROLE_ID_FLAG}from'../../commands/role/shared.js';const UPDATE_PATH=a197_0x1b1df6(0x184);function readPatch(_0x16d094){const _0xc826b6=a197_0x1b1df6,_0x2614e9=_0x16d094['flag'](_0xc826b6(0x172)),_0x5e5bb9=_0x16d094[_0xc826b6(0x169)](_0xc826b6(0x167)),_0x59f2eb={};if(_0x2614e9!==undefined&&_0x2614e9!==null){const _0x11697d=String(_0x2614e9)[_0xc826b6(0x16f)]();if(!_0x11697d)throw CliErrors['validation']('--name\x20cannot\x20be\x20empty.');if(_0x11697d[_0xc826b6(0x170)]>0x40)throw CliErrors[_0xc826b6(0x179)]('Role\x20name\x20cannot\x20exceed\x2064\x20characters.');_0x59f2eb[_0xc826b6(0x17b)]=_0x11697d;}_0x5e5bb9!==undefined&&_0x5e5bb9!==null&&(_0x59f2eb['remark']=String(_0x5e5bb9));if(_0x59f2eb[_0xc826b6(0x17b)]===undefined&&_0x59f2eb[_0xc826b6(0x167)]===undefined)throw CliErrors[_0xc826b6(0x179)](_0xc826b6(0x178),'Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.');return _0x59f2eb;}export const roleUpdate={'service':a197_0x1b1df6(0x180),'command':'update','description':a197_0x1b1df6(0x183),'risk':'write','flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a197_0x1b1df6(0x172),'type':a197_0x1b1df6(0x16b),'required':![],'description':a197_0x1b1df6(0x168)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3e3ca3){readPatch(_0x3e3ca3);},async 'dryRun'(_0x1fa173){const _0x2c07dd=a197_0x1b1df6,_0x3f2f2b=_0x1fa173[_0x2c07dd(0x181)]('id'),_0x365cfb=readPatch(_0x1fa173),_0x46e11c=await getRoleById(_0x1fa173[_0x2c07dd(0x174)],_0x3f2f2b);return assertCustomRole(_0x46e11c,_0x2c07dd(0x17d)),asDryRunResult({'scope':'dev','operation':_0x2c07dd(0x17d),'selector':{'appCode':_0x1fa173[_0x2c07dd(0x174)],'roleId':_0x3f2f2b,'roleName':_0x46e11c['roleName']},'before':projectRole(_0x46e11c),'after':projectRole({..._0x46e11c,..._0x365cfb[_0x2c07dd(0x17b)]!==undefined?{'roleName':_0x365cfb[_0x2c07dd(0x17b)]}:{},..._0x365cfb['remark']!==undefined?{'remark':_0x365cfb['remark']}:{}}),'dryRun':!![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':[]},{'method':_0x2c07dd(0x16d),'url':UPDATE_PATH});},async 'execute'(_0x27ee17){const _0x2bbdf6=a197_0x1b1df6,_0x5daa89=_0x27ee17['num']('id'),_0xd679fc=readPatch(_0x27ee17),_0x1bf32d=await getRoleById(_0x27ee17['appCode'],_0x5daa89);assertCustomRole(_0x1bf32d,_0x2bbdf6(0x17d)),await updateAppRole({'id':_0x5daa89,'appCode':_0x27ee17[_0x2bbdf6(0x174)],..._0xd679fc[_0x2bbdf6(0x17b)]!==undefined?{'roleName':_0xd679fc[_0x2bbdf6(0x17b)]}:{},..._0xd679fc['remark']!==undefined?{'remark':_0xd679fc[_0x2bbdf6(0x167)]}:{}});const _0x4d7cc0=await getRoleById(_0x27ee17[_0x2bbdf6(0x174)],_0x5daa89);return{'ok':!![],'data':{'scope':_0x2bbdf6(0x171),'operation':_0x2bbdf6(0x17d),'selector':{'appCode':_0x27ee17[_0x2bbdf6(0x174)],'roleId':_0x5daa89,'roleName':_0x4d7cc0[_0x2bbdf6(0x17b)]},'before':projectRole(_0x1bf32d),'after':projectRole(_0x4d7cc0),'dryRun':![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':[]},'message':_0x2bbdf6(0x17f)+_0x4d7cc0[_0x2bbdf6(0x17b)]+_0x2bbdf6(0x175)+_0x5daa89+')'};}};
@@ -1 +1 @@
1
- function a199_0x59b0(){const _0x479e6f=['305275SyiEeB','3063706qhpstP','\x20already\x20in\x20role\x20','1236447yLnzZn','No\x20change:\x20user\x20','36bBNjhu','Added\x20user\x20','408310HfPmGr','569184ncmZdL','userId','2086152rdgtbo','user-add','roleId','Add\x20a\x20user\x20to\x20a\x20role\x20(OWNER\x20rejected);\x20requires\x20--yes','high-risk-write','selector','roleName','3052108uZhSwn'];a199_0x59b0=function(){return _0x479e6f;};return a199_0x59b0();}const a199_0x9072f4=a199_0x1533;function a199_0x1533(_0xc2af7b,_0x28447a){_0xc2af7b=_0xc2af7b-0x169;const _0x59b0ff=a199_0x59b0();let _0x15331b=_0x59b0ff[_0xc2af7b];return _0x15331b;}(function(_0x333f6e,_0x5780c1){const _0x51453f=a199_0x1533,_0x240cc7=_0x333f6e();while(!![]){try{const _0x16e524=parseInt(_0x51453f(0x16a))/0x1+-parseInt(_0x51453f(0x17a))/0x2+parseInt(_0x51453f(0x171))/0x3+parseInt(_0x51453f(0x178))/0x4+-parseInt(_0x51453f(0x179))/0x5*(parseInt(_0x51453f(0x16c))/0x6)+-parseInt(_0x51453f(0x16e))/0x7+parseInt(_0x51453f(0x16f))/0x8;if(_0x16e524===_0x5780c1)break;else _0x240cc7['push'](_0x240cc7['shift']());}catch(_0x5d437d){_0x240cc7['push'](_0x240cc7['shift']());}}}(a199_0x59b0,0xc5a15));import{createDevUserRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,CREATE_USER_ROLE_PATH,prepareUserMutation,ROLE_REF_FLAG,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserAdd={'service':'role','command':a199_0x9072f4(0x172),'description':a199_0x9072f4(0x174),'risk':a199_0x9072f4(0x175),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x213860){const _0x4ad69e=a199_0x9072f4,{mutation:_0xd3188b}=await prepareUserMutation(_0x213860,_0x4ad69e(0x172),!![]);return asDryRunResult(_0xd3188b,{'method':'POST','url':CREATE_USER_ROLE_PATH});},async 'execute'(_0x2994d6){const _0x363ba3=a199_0x9072f4,{mutation:_0x4e6ce0,changed:_0x102bbe,role:_0x461edf,user:_0x33f619}=await prepareUserMutation(_0x2994d6,_0x363ba3(0x172),![]);return _0x102bbe&&await createDevUserRole({'appCode':_0x2994d6['appCode'],'userId':_0x33f619[_0x363ba3(0x170)],'username':_0x33f619['username'],'roleType':_0x461edf['roleType'],'roleId':_0x4e6ce0[_0x363ba3(0x176)][_0x363ba3(0x173)]}),{'ok':!![],'data':_0x4e6ce0,'message':_0x102bbe?_0x363ba3(0x16d)+_0x4e6ce0[_0x363ba3(0x176)][_0x363ba3(0x170)]+'\x20to\x20role\x20'+_0x4e6ce0[_0x363ba3(0x176)][_0x363ba3(0x177)]:_0x363ba3(0x16b)+_0x4e6ce0[_0x363ba3(0x176)]['userId']+_0x363ba3(0x169)+_0x4e6ce0['selector'][_0x363ba3(0x177)]};}};
1
+ const a198_0x1061a4=a198_0x496a;(function(_0x54a138,_0x372b08){const _0x4297b3=a198_0x496a,_0x43cf83=_0x54a138();while(!![]){try{const _0x4f156d=-parseInt(_0x4297b3(0x17d))/0x1+-parseInt(_0x4297b3(0x183))/0x2+parseInt(_0x4297b3(0x182))/0x3*(-parseInt(_0x4297b3(0x184))/0x4)+parseInt(_0x4297b3(0x17f))/0x5*(-parseInt(_0x4297b3(0x174))/0x6)+parseInt(_0x4297b3(0x179))/0x7*(parseInt(_0x4297b3(0x181))/0x8)+-parseInt(_0x4297b3(0x16f))/0x9*(-parseInt(_0x4297b3(0x172))/0xa)+parseInt(_0x4297b3(0x17a))/0xb*(parseInt(_0x4297b3(0x16d))/0xc);if(_0x4f156d===_0x372b08)break;else _0x43cf83['push'](_0x43cf83['shift']());}catch(_0x3cb7a2){_0x43cf83['push'](_0x43cf83['shift']());}}}(a198_0x182e,0x93d5d));import{createDevUserRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a198_0x496a(_0x244e5a,_0x45adba){_0x244e5a=_0x244e5a-0x16d;const _0x182e5d=a198_0x182e();let _0x496a6b=_0x182e5d[_0x244e5a];return _0x496a6b;}function a198_0x182e(){const _0x571577=['appCode','14uNCZjJ','24565343cpIzjt','Add\x20a\x20user\x20to\x20a\x20role\x20(OWNER\x20rejected);\x20requires\x20--yes','POST','490461UQavsv','userId','5OqyPkZ','user-add','3707160RFBYZa','327399OVlWhC','1631124NbDJbG','36GxzoZU','12qFpaVg','high-risk-write','9LOqUuC','role','username','9034210QuYEGh','\x20already\x20in\x20role\x20','7018026LtDoWQ','roleId','No\x20change:\x20user\x20','selector'];a198_0x182e=function(){return _0x571577;};return a198_0x182e();}import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,CREATE_USER_ROLE_PATH,prepareUserMutation,ROLE_REF_FLAG,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserAdd={'service':a198_0x1061a4(0x170),'command':'user-add','description':a198_0x1061a4(0x17b),'risk':a198_0x1061a4(0x16e),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x410384){const _0x56c405=a198_0x1061a4,{mutation:_0x48f322}=await prepareUserMutation(_0x410384,_0x56c405(0x180),!![]);return asDryRunResult(_0x48f322,{'method':_0x56c405(0x17c),'url':CREATE_USER_ROLE_PATH});},async 'execute'(_0x590b58){const _0x17b9b7=a198_0x1061a4,{mutation:_0x35b18c,changed:_0x3d1970,role:_0x5d5853,user:_0x6456f3}=await prepareUserMutation(_0x590b58,'user-add',![]);return _0x3d1970&&await createDevUserRole({'appCode':_0x590b58[_0x17b9b7(0x178)],'userId':_0x6456f3[_0x17b9b7(0x17e)],'username':_0x6456f3[_0x17b9b7(0x171)],'roleType':_0x5d5853['roleType'],'roleId':_0x35b18c[_0x17b9b7(0x177)][_0x17b9b7(0x175)]}),{'ok':!![],'data':_0x35b18c,'message':_0x3d1970?'Added\x20user\x20'+_0x35b18c[_0x17b9b7(0x177)][_0x17b9b7(0x17e)]+'\x20to\x20role\x20'+_0x35b18c[_0x17b9b7(0x177)]['roleName']:_0x17b9b7(0x176)+_0x35b18c['selector'][_0x17b9b7(0x17e)]+_0x17b9b7(0x173)+_0x35b18c[_0x17b9b7(0x177)]['roleName']};}};
@@ -1 +1 @@
1
- const a200_0x1aa24d=a200_0x42aa;function a200_0x42aa(_0x40dab1,_0x3aebf3){_0x40dab1=_0x40dab1-0x168;const _0x2e74cc=a200_0x2e74();let _0x42aa7a=_0x2e74cc[_0x40dab1];return _0x42aa7a;}(function(_0x526e3e,_0x20331a){const _0x4a95d5=a200_0x42aa,_0x16db97=_0x526e3e();while(!![]){try{const _0xfd6577=parseInt(_0x4a95d5(0x16f))/0x1*(-parseInt(_0x4a95d5(0x17a))/0x2)+-parseInt(_0x4a95d5(0x16b))/0x3*(parseInt(_0x4a95d5(0x172))/0x4)+-parseInt(_0x4a95d5(0x171))/0x5*(parseInt(_0x4a95d5(0x173))/0x6)+-parseInt(_0x4a95d5(0x177))/0x7*(parseInt(_0x4a95d5(0x176))/0x8)+parseInt(_0x4a95d5(0x174))/0x9*(parseInt(_0x4a95d5(0x17d))/0xa)+-parseInt(_0x4a95d5(0x16e))/0xb*(parseInt(_0x4a95d5(0x16a))/0xc)+parseInt(_0x4a95d5(0x16c))/0xd;if(_0xfd6577===_0x20331a)break;else _0x16db97['push'](_0x16db97['shift']());}catch(_0x5b3c65){_0x16db97['push'](_0x16db97['shift']());}}}(a200_0x2e74,0x32f83));import{deleteDevUserRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,DELETE_USER_ROLE_PATH,prepareUserMutation,ROLE_REF_FLAG,USER_REF_FLAG}from'../../commands/role/shared.js';function a200_0x2e74(){const _0x3665f4=['688266vrzeRv','10907988DqVUdT','POST','209JtQfXT','4QfQbRo','Removed\x20user\x20','5njjmfq','4AhMBOW','578658CbvgFf','5877MQULMJ','high-risk-write','4168ECVmQL','1988jjIKaA','userId','user-remove','202102bkcrhM','\x20from\x20role\x20','\x20not\x20in\x20role\x20','6170JSlyaY','roleName','selector','No\x20change:\x20user\x20','98004kJKouq'];a200_0x2e74=function(){return _0x3665f4;};return a200_0x2e74();}export const roleUserRemove={'service':'role','command':a200_0x1aa24d(0x179),'description':'Remove\x20a\x20user\x20from\x20a\x20role\x20(OWNER\x20rejected);\x20requires\x20--yes','risk':a200_0x1aa24d(0x175),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x494697){const _0x41161e=a200_0x1aa24d,{mutation:_0x2db567}=await prepareUserMutation(_0x494697,'user-remove',!![]);return asDryRunResult(_0x2db567,{'method':_0x41161e(0x16d),'url':DELETE_USER_ROLE_PATH});},async 'execute'(_0x8aacbc){const _0x53d23e=a200_0x1aa24d,{matchingRelationIds:_0x21fabb,mutation:_0x32d4bf,changed:_0x2061bd}=await prepareUserMutation(_0x8aacbc,'user-remove',![]);if(_0x2061bd)for(const _0x4ab297 of _0x21fabb){await deleteDevUserRole(_0x4ab297);}return{'ok':!![],'data':_0x32d4bf,'message':_0x2061bd?_0x53d23e(0x170)+_0x32d4bf[_0x53d23e(0x168)][_0x53d23e(0x178)]+_0x53d23e(0x17b)+_0x32d4bf[_0x53d23e(0x168)][_0x53d23e(0x17e)]:_0x53d23e(0x169)+_0x32d4bf['selector'][_0x53d23e(0x178)]+_0x53d23e(0x17c)+_0x32d4bf[_0x53d23e(0x168)]['roleName']};}};
1
+ const a199_0x162156=a199_0x4874;function a199_0x5b9a(){const _0x2fb731=['423WEzPZB','userId','POST','role','810738pXTQvZ','6864280bqUfNz','60FKzBjH','51190oDwdcn','roleName','user-remove','Removed\x20user\x20','Remove\x20a\x20user\x20from\x20a\x20role\x20(OWNER\x20rejected);\x20requires\x20--yes','\x20not\x20in\x20role\x20','No\x20change:\x20user\x20','selector','3AFxOej','322710PKttYf','14439909QdpQSE','692596iXnlqZ','7KzcIhr','68844SqaiVP'];a199_0x5b9a=function(){return _0x2fb731;};return a199_0x5b9a();}(function(_0x24cea5,_0x46b45b){const _0x1bee2c=a199_0x4874,_0xfb5c6e=_0x24cea5();while(!![]){try{const _0x2e8b8e=parseInt(_0x1bee2c(0xde))/0x1+parseInt(_0x1bee2c(0xe7))/0x2+parseInt(_0x1bee2c(0xdd))/0x3*(-parseInt(_0x1bee2c(0xe0))/0x4)+-parseInt(_0x1bee2c(0xe9))/0x5*(parseInt(_0x1bee2c(0xe2))/0x6)+-parseInt(_0x1bee2c(0xe1))/0x7*(parseInt(_0x1bee2c(0xe8))/0x8)+-parseInt(_0x1bee2c(0xe3))/0x9*(parseInt(_0x1bee2c(0xea))/0xa)+parseInt(_0x1bee2c(0xdf))/0xb;if(_0x2e8b8e===_0x46b45b)break;else _0xfb5c6e['push'](_0xfb5c6e['shift']());}catch(_0x3f10bd){_0xfb5c6e['push'](_0xfb5c6e['shift']());}}}(a199_0x5b9a,0x9a225));import{deleteDevUserRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,DELETE_USER_ROLE_PATH,prepareUserMutation,ROLE_REF_FLAG,USER_REF_FLAG}from'../../commands/role/shared.js';function a199_0x4874(_0x311ab3,_0x1822c3){_0x311ab3=_0x311ab3-0xdc;const _0x5b9af9=a199_0x5b9a();let _0x48740e=_0x5b9af9[_0x311ab3];return _0x48740e;}export const roleUserRemove={'service':a199_0x162156(0xe6),'command':a199_0x162156(0xec),'description':a199_0x162156(0xee),'risk':'high-risk-write','flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0xb2f88e){const _0x36a418=a199_0x162156,{mutation:_0x4c32f7}=await prepareUserMutation(_0xb2f88e,_0x36a418(0xec),!![]);return asDryRunResult(_0x4c32f7,{'method':_0x36a418(0xe5),'url':DELETE_USER_ROLE_PATH});},async 'execute'(_0x1b149c){const _0x1b3ace=a199_0x162156,{matchingRelationIds:_0x118164,mutation:_0x5aacc3,changed:_0x1ff522}=await prepareUserMutation(_0x1b149c,'user-remove',![]);if(_0x1ff522)for(const _0x401cef of _0x118164){await deleteDevUserRole(_0x401cef);}return{'ok':!![],'data':_0x5aacc3,'message':_0x1ff522?_0x1b3ace(0xed)+_0x5aacc3[_0x1b3ace(0xdc)][_0x1b3ace(0xe4)]+'\x20from\x20role\x20'+_0x5aacc3['selector'][_0x1b3ace(0xeb)]:_0x1b3ace(0xf0)+_0x5aacc3[_0x1b3ace(0xdc)][_0x1b3ace(0xe4)]+_0x1b3ace(0xef)+_0x5aacc3[_0x1b3ace(0xdc)][_0x1b3ace(0xeb)]};}};
@@ -1 +1 @@
1
- function a201_0x2fe8(_0x259965,_0x27b3b3){_0x259965=_0x259965-0x80;const _0x243cbf=a201_0x243c();let _0x2fe83e=_0x243cbf[_0x259965];return _0x2fe83e;}const a201_0x5cd265=a201_0x2fe8;(function(_0x216fca,_0x36b77a){const _0x19e270=a201_0x2fe8,_0x507ff1=_0x216fca();while(!![]){try{const _0x407056=-parseInt(_0x19e270(0x8a))/0x1*(parseInt(_0x19e270(0x8f))/0x2)+parseInt(_0x19e270(0x87))/0x3*(-parseInt(_0x19e270(0x84))/0x4)+parseInt(_0x19e270(0x96))/0x5*(-parseInt(_0x19e270(0x90))/0x6)+parseInt(_0x19e270(0x8b))/0x7*(parseInt(_0x19e270(0x92))/0x8)+-parseInt(_0x19e270(0x97))/0x9*(parseInt(_0x19e270(0x98))/0xa)+parseInt(_0x19e270(0x80))/0xb*(-parseInt(_0x19e270(0x8c))/0xc)+parseInt(_0x19e270(0x91))/0xd;if(_0x407056===_0x36b77a)break;else _0x507ff1['push'](_0x507ff1['shift']());}catch(_0x25caaf){_0x507ff1['push'](_0x507ff1['shift']());}}}(a201_0x243c,0x4fb33));import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';function a201_0x243c(){const _0x2109f1=['role','read','name','1761208QCnaXV','\x22\x20→\x20userId\x20','userId','3TjLDWc','Resolved\x20\x22','user-resolve','3PcMWwO','2213764Udhded','384108wTwIkU','trim','flagMissing','5174SNglRQ','12mDMALT','24862929ShMvvV','8kztUWL','str','matchedBy','username','485960LyHpNQ','801VVUdsn','69630UMpMJj','nickname','220kiOnEA'];a201_0x243c=function(){return _0x2109f1;};return a201_0x243c();}export const roleUserResolve={'service':a201_0x5cd265(0x81),'command':a201_0x5cd265(0x89),'description':'Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','risk':a201_0x5cd265(0x82),'flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x556b0f){const _0x10181a=a201_0x5cd265;if(!_0x556b0f[_0x10181a(0x93)](_0x10181a(0x83))[_0x10181a(0x8d)]())throw CliErrors[_0x10181a(0x8e)](_0x10181a(0x83),'Pass\x20--name\x20<nickname|username>.');},async 'execute'(_0x1dcb6f){const _0x1ff4a=a201_0x5cd265,_0x563e8b=_0x1dcb6f[_0x1ff4a(0x93)](_0x1ff4a(0x83))[_0x1ff4a(0x8d)](),_0xd26637=await resolveUserRef(_0x563e8b,'Select\x20a\x20listed\x20userId,\x20then\x20pass\x20it\x20to\x20`role\x20user-add`\x20or\x20`role\x20user-remove`\x20with\x20--user\x20<id>.');return{'ok':!![],'data':{'user':{'userId':_0xd26637[_0x1ff4a(0x86)],'username':_0xd26637[_0x1ff4a(0x95)],'nickname':_0xd26637[_0x1ff4a(0x99)],'matchedBy':_0xd26637[_0x1ff4a(0x94)]}},'message':_0x1ff4a(0x88)+_0x563e8b+_0x1ff4a(0x85)+_0xd26637[_0x1ff4a(0x86)]};}};
1
+ const a200_0x5928c7=a200_0x5a4a;(function(_0x5ac62f,_0x59bc8c){const _0x32160e=a200_0x5a4a,_0x3e697d=_0x5ac62f();while(!![]){try{const _0x1b316b=-parseInt(_0x32160e(0x1e4))/0x1+-parseInt(_0x32160e(0x1eb))/0x2+-parseInt(_0x32160e(0x1e0))/0x3+-parseInt(_0x32160e(0x1e2))/0x4+parseInt(_0x32160e(0x1e9))/0x5+-parseInt(_0x32160e(0x1e6))/0x6+parseInt(_0x32160e(0x1f0))/0x7;if(_0x1b316b===_0x59bc8c)break;else _0x3e697d['push'](_0x3e697d['shift']());}catch(_0x3e88da){_0x3e697d['push'](_0x3e697d['shift']());}}}(a200_0x5612,0xd4de7));import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';function a200_0x5a4a(_0x2af39b,_0x3c34a8){_0x2af39b=_0x2af39b-0x1e0;const _0x561234=a200_0x5612();let _0x5a4aea=_0x561234[_0x2af39b];return _0x5a4aea;}export const roleUserResolve={'service':a200_0x5928c7(0x1ed),'command':'user-resolve','description':'Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','risk':'read','flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x195ab6){const _0x49436f=a200_0x5928c7;if(!_0x195ab6[_0x49436f(0x1ef)](_0x49436f(0x1e1))[_0x49436f(0x1e5)]())throw CliErrors['flagMissing']('name',_0x49436f(0x1ee));},async 'execute'(_0x3a5f1c){const _0x450ff9=a200_0x5928c7,_0x19de5d=_0x3a5f1c['str'](_0x450ff9(0x1e1))[_0x450ff9(0x1e5)](),_0x539147=await resolveUserRef(_0x19de5d,_0x450ff9(0x1f1));return{'ok':!![],'data':{'user':{'userId':_0x539147['userId'],'username':_0x539147[_0x450ff9(0x1e7)],'nickname':_0x539147['nickname'],'matchedBy':_0x539147[_0x450ff9(0x1ec)]}},'message':_0x450ff9(0x1e3)+_0x19de5d+_0x450ff9(0x1e8)+_0x539147[_0x450ff9(0x1ea)]};}};function a200_0x5612(){const _0x12f77c=['1592216gzrkUg','matchedBy','role','Pass\x20--name\x20<nickname|username>.','str','37427789spYqsi','Select\x20a\x20listed\x20userId,\x20then\x20pass\x20it\x20to\x20`role\x20user-add`\x20or\x20`role\x20user-remove`\x20with\x20--user\x20<id>.','4779915SZpgIV','name','1887268WVMKKt','Resolved\x20\x22','1492838PTlGmb','trim','9309492vshesS','username','\x22\x20→\x20userId\x20','7153670qlPKvR','userId'];a200_0x5612=function(){return _0x12f77c;};return a200_0x5612();}
@@ -1 +1 @@
1
- function a202_0x1626(){const _0x262a0a=['514568hElJcC','7577958sDmTHC','650206CYqxwU','Get\x20one\x20agent\x20context\x20rule\x20for\x20the\x20resolved\x20app','66KmAnhq','56vXuxky','\x20--file\x20<path>\x20--dry-run`.','content','cookie','\x20for\x20','817119qjsBUI','30QcILVJ','5oEnRok','4551036SxOLQo','2GCNWvw','\x20is\x20not\x20configured\x20for\x20app\x20','1288248YYEskO','rule','appCode','1296253rQCszr','read'];a202_0x1626=function(){return _0x262a0a;};return a202_0x1626();}const a202_0x139060=a202_0x533b;(function(_0x533083,_0x59d693){const _0x52c82e=a202_0x533b,_0x4988d8=_0x533083();while(!![]){try{const _0xeca25c=-parseInt(_0x52c82e(0xba))/0x1+-parseInt(_0x52c82e(0xc6))/0x2*(parseInt(_0x52c82e(0xb3))/0x3)+-parseInt(_0x52c82e(0xb8))/0x4+parseInt(_0x52c82e(0xc4))/0x5*(parseInt(_0x52c82e(0xb9))/0x6)+parseInt(_0x52c82e(0xb6))/0x7*(-parseInt(_0x52c82e(0xbd))/0x8)+-parseInt(_0x52c82e(0xc2))/0x9*(parseInt(_0x52c82e(0xc3))/0xa)+-parseInt(_0x52c82e(0xbc))/0xb*(-parseInt(_0x52c82e(0xc5))/0xc);if(_0xeca25c===_0x59d693)break;else _0x4988d8['push'](_0x4988d8['shift']());}catch(_0x13c205){_0x4988d8['push'](_0x4988d8['shift']());}}}(a202_0x1626,0xb9f15));import{getAppRule}from'../../core/api-client.js';function a202_0x533b(_0x42859b,_0x334ff8){_0x42859b=_0x42859b-0xb2;const _0x16268c=a202_0x1626();let _0x533b2e=_0x16268c[_0x42859b];return _0x533b2e;}import{APP_RULE_TYPE_FLAG,appRuleError,appRuleFileName,projectAppRule,readAppRuleType}from'../../commands/rule/shared.js';export const ruleGet={'service':a202_0x139060(0xb4),'command':'get','description':a202_0x139060(0xbb),'risk':a202_0x139060(0xb7),'requiresAppCode':!![],'structuredErrors':!![],'flags':[APP_RULE_TYPE_FLAG],async 'validate'(_0x27acc1){readAppRuleType(_0x27acc1);},async 'execute'(_0x385301){const _0x320a5f=a202_0x139060,_0x58b499=readAppRuleType(_0x385301),_0x32cb9d=await getAppRule(_0x385301[_0x320a5f(0xc0)],{'appCode':_0x385301['appCode'],'type':_0x58b499});if(!_0x32cb9d)throw appRuleError('app_rule_not_found',appRuleFileName(_0x58b499)+_0x320a5f(0xb2)+_0x385301[_0x320a5f(0xb5)]+'.','Create\x20it\x20with\x20`rabetbase\x20rule\x20set\x20--type\x20'+_0x58b499+_0x320a5f(0xbe));return{'ok':!![],'data':{'rule':{...projectAppRule(_0x58b499,_0x32cb9d),'content':_0x32cb9d[_0x320a5f(0xbf)]}},'message':'Loaded\x20'+appRuleFileName(_0x58b499)+_0x320a5f(0xc1)+_0x385301[_0x320a5f(0xb5)]};}};
1
+ const a201_0x569f03=a201_0x5125;function a201_0x2591(){const _0x170d36=['1680qTqgvn','get','1087129SDMzOx','2evZhJc','Loaded\x20','content','\x20for\x20','1270TfsIWJ','66IngKZD','Create\x20it\x20with\x20`rabetbase\x20rule\x20set\x20--type\x20','\x20--file\x20<path>\x20--dry-run`.','\x20is\x20not\x20configured\x20for\x20app\x20','read','appCode','101502HLNxLG','cookie','rule','3218356EHOVRx','1129446NprCGX','5lWLvai','3031032vjdkzW','app_rule_not_found','474831KnYqeS','329318cuJoYI'];a201_0x2591=function(){return _0x170d36;};return a201_0x2591();}(function(_0x1ee4c4,_0x4ef43f){const _0x52f10f=a201_0x5125,_0x4a47af=_0x1ee4c4();while(!![]){try{const _0x588911=parseInt(_0x52f10f(0x17d))/0x1*(-parseInt(_0x52f10f(0x17e))/0x2)+parseInt(_0x52f10f(0x175))/0x3+-parseInt(_0x52f10f(0x174))/0x4*(parseInt(_0x52f10f(0x176))/0x5)+-parseInt(_0x52f10f(0x183))/0x6*(parseInt(_0x52f10f(0x179))/0x7)+parseInt(_0x52f10f(0x177))/0x8+parseInt(_0x52f10f(0x171))/0x9*(-parseInt(_0x52f10f(0x182))/0xa)+-parseInt(_0x52f10f(0x17a))/0xb*(-parseInt(_0x52f10f(0x17b))/0xc);if(_0x588911===_0x4ef43f)break;else _0x4a47af['push'](_0x4a47af['shift']());}catch(_0x57b8d1){_0x4a47af['push'](_0x4a47af['shift']());}}}(a201_0x2591,0xd5fce));import{getAppRule}from'../../core/api-client.js';function a201_0x5125(_0x47f6c9,_0xb9b886){_0x47f6c9=_0x47f6c9-0x16d;const _0x259148=a201_0x2591();let _0x5125b4=_0x259148[_0x47f6c9];return _0x5125b4;}import{APP_RULE_TYPE_FLAG,appRuleError,appRuleFileName,projectAppRule,readAppRuleType}from'../../commands/rule/shared.js';export const ruleGet={'service':a201_0x569f03(0x173),'command':a201_0x569f03(0x17c),'description':'Get\x20one\x20agent\x20context\x20rule\x20for\x20the\x20resolved\x20app','risk':a201_0x569f03(0x16f),'requiresAppCode':!![],'structuredErrors':!![],'flags':[APP_RULE_TYPE_FLAG],async 'validate'(_0x220216){readAppRuleType(_0x220216);},async 'execute'(_0x420a0a){const _0x22db6b=a201_0x569f03,_0x226326=readAppRuleType(_0x420a0a),_0x5381a0=await getAppRule(_0x420a0a[_0x22db6b(0x172)],{'appCode':_0x420a0a[_0x22db6b(0x170)],'type':_0x226326});if(!_0x5381a0)throw appRuleError(_0x22db6b(0x178),appRuleFileName(_0x226326)+_0x22db6b(0x16e)+_0x420a0a[_0x22db6b(0x170)]+'.',_0x22db6b(0x184)+_0x226326+_0x22db6b(0x16d));return{'ok':!![],'data':{'rule':{...projectAppRule(_0x226326,_0x5381a0),'content':_0x5381a0[_0x22db6b(0x180)]}},'message':_0x22db6b(0x17f)+appRuleFileName(_0x226326)+_0x22db6b(0x181)+_0x420a0a[_0x22db6b(0x170)]};}};
@@ -1 +1 @@
1
- (function(_0xf1d30b,_0x104f03){const _0x5b28b5=a203_0x2ed5,_0x5c03e9=_0xf1d30b();while(!![]){try{const _0x4cfecb=parseInt(_0x5b28b5(0x1cd))/0x1*(parseInt(_0x5b28b5(0x1cb))/0x2)+-parseInt(_0x5b28b5(0x1c9))/0x3*(parseInt(_0x5b28b5(0x1cc))/0x4)+parseInt(_0x5b28b5(0x1ce))/0x5+parseInt(_0x5b28b5(0x1ca))/0x6*(parseInt(_0x5b28b5(0x1cf))/0x7)+parseInt(_0x5b28b5(0x1d2))/0x8*(-parseInt(_0x5b28b5(0x1d1))/0x9)+-parseInt(_0x5b28b5(0x1c7))/0xa*(-parseInt(_0x5b28b5(0x1d0))/0xb)+parseInt(_0x5b28b5(0x1c8))/0xc;if(_0x4cfecb===_0x104f03)break;else _0x5c03e9['push'](_0x5c03e9['shift']());}catch(_0xa5b46b){_0x5c03e9['push'](_0x5c03e9['shift']());}}}(a203_0x409d,0x46736));import{ruleGet}from'../../commands/rule/get.js';function a203_0x409d(){const _0x1e8993=['1981pNtuue','450625CCjEsO','49zQomAa','332365UXkmxt','6507vwzwBy','2640UdVJQZ','50KfRleh','1702680eUXWjV','6lEiBIa','355854yzkWbS','154ZGjZjD','847268hMushF'];a203_0x409d=function(){return _0x1e8993;};return a203_0x409d();}import{ruleList}from'../../commands/rule/list.js';function a203_0x2ed5(_0x29fad4,_0x53e050){_0x29fad4=_0x29fad4-0x1c7;const _0x409d66=a203_0x409d();let _0x2ed54d=_0x409d66[_0x29fad4];return _0x2ed54d;}import{ruleSet}from'../../commands/rule/set.js';export const ruleDefinitions=[ruleList,ruleGet,ruleSet];
1
+ function a202_0x31c5(){const _0xcc0c04=['3450555BZHRIQ','652577yEhLAi','5dqNNKX','2jWGGnE','350670XKpfCs','696UJlddR','18858lAqHOa','17451030KbaKAE','2122352RoPUZu','646986POzBGL'];a202_0x31c5=function(){return _0xcc0c04;};return a202_0x31c5();}(function(_0x330a58,_0x57de6e){const _0x2b29b6=a202_0x180e,_0x59f12a=_0x330a58();while(!![]){try{const _0x59c95c=-parseInt(_0x2b29b6(0x130))/0x1*(parseInt(_0x2b29b6(0x132))/0x2)+parseInt(_0x2b29b6(0x133))/0x3+-parseInt(_0x2b29b6(0x12d))/0x4+-parseInt(_0x2b29b6(0x131))/0x5*(parseInt(_0x2b29b6(0x12e))/0x6)+-parseInt(_0x2b29b6(0x135))/0x7*(-parseInt(_0x2b29b6(0x134))/0x8)+-parseInt(_0x2b29b6(0x12f))/0x9+parseInt(_0x2b29b6(0x136))/0xa;if(_0x59c95c===_0x57de6e)break;else _0x59f12a['push'](_0x59f12a['shift']());}catch(_0x19f95f){_0x59f12a['push'](_0x59f12a['shift']());}}}(a202_0x31c5,0x6705c));import{ruleGet}from'../../commands/rule/get.js';import{ruleList}from'../../commands/rule/list.js';import{ruleSet}from'../../commands/rule/set.js';function a202_0x180e(_0x3f28b2,_0x43d0fc){_0x3f28b2=_0x3f28b2-0x12d;const _0x31c50c=a202_0x31c5();let _0x180e21=_0x31c50c[_0x3f28b2];return _0x180e21;}export const ruleDefinitions=[ruleList,ruleGet,ruleSet];
@@ -1 +1 @@
1
- const a204_0x5aec35=a204_0x5cf9;(function(_0x487e03,_0x3930b1){const _0x1ce8aa=a204_0x5cf9,_0x4e84ef=_0x487e03();while(!![]){try{const _0x39e183=-parseInt(_0x1ce8aa(0xf6))/0x1*(-parseInt(_0x1ce8aa(0xf7))/0x2)+parseInt(_0x1ce8aa(0xf8))/0x3+parseInt(_0x1ce8aa(0xf4))/0x4+-parseInt(_0x1ce8aa(0xf5))/0x5*(parseInt(_0x1ce8aa(0xfb))/0x6)+parseInt(_0x1ce8aa(0xf3))/0x7*(parseInt(_0x1ce8aa(0x101))/0x8)+-parseInt(_0x1ce8aa(0xff))/0x9*(parseInt(_0x1ce8aa(0xfc))/0xa)+-parseInt(_0x1ce8aa(0xf2))/0xb;if(_0x39e183===_0x3930b1)break;else _0x4e84ef['push'](_0x4e84ef['shift']());}catch(_0x33aa24){_0x4e84ef['push'](_0x4e84ef['shift']());}}}(a204_0x1b81,0xf162f));import{getAppRule}from'../../core/api-client.js';function a204_0x5cf9(_0x1b3b33,_0x447ef6){_0x1b3b33=_0x1b3b33-0xf1;const _0x1b81c7=a204_0x1b81();let _0x5cf957=_0x1b81c7[_0x1b3b33];return _0x5cf957;}import{APP_RULE_TYPES,projectAppRule}from'../../commands/rule/shared.js';function a204_0x1b81(){const _0x2e2456=['9RSTMyt','List\x20agent\x20context\x20rules\x20for\x20the\x20resolved\x20app','4281168wJkBtp','Loaded\x20app\x20rule\x20configuration\x20for\x20','read','all','35778127NsBAbd','21uXXSVw','4219660YCPmNq','56270DkrwFo','1926788VQFkQn','2BhGmfr','4677534KrCpCO','map','length','666dSAUzp','6558490EYCtJk','appCode','list'];a204_0x1b81=function(){return _0x2e2456;};return a204_0x1b81();}export const ruleList={'service':'rule','command':a204_0x5aec35(0xfe),'description':a204_0x5aec35(0x100),'risk':a204_0x5aec35(0x103),'requiresAppCode':!![],'structuredErrors':!![],'flags':[],async 'execute'(_0x3da0fc){const _0x237ee8=a204_0x5aec35,_0x97e65c=await Promise[_0x237ee8(0xf1)](APP_RULE_TYPES[_0x237ee8(0xf9)](_0x9486a1=>getAppRule(_0x3da0fc['cookie'],{'appCode':_0x3da0fc[_0x237ee8(0xfd)],'type':_0x9486a1}))),_0x32051e=APP_RULE_TYPES[_0x237ee8(0xf9)]((_0xd211e8,_0x5a107a)=>projectAppRule(_0xd211e8,_0x97e65c[_0x5a107a]??null));return{'ok':!![],'data':{'total':_0x32051e[_0x237ee8(0xfa)],'rules':_0x32051e},'message':_0x237ee8(0x102)+_0x3da0fc[_0x237ee8(0xfd)]};}};
1
+ const a203_0x515fee=a203_0xc412;(function(_0x3443e0,_0x3e3e25){const _0x21e0a2=a203_0xc412,_0x44740d=_0x3443e0();while(!![]){try{const _0x4b83db=-parseInt(_0x21e0a2(0x72))/0x1+-parseInt(_0x21e0a2(0x73))/0x2*(-parseInt(_0x21e0a2(0x69))/0x3)+-parseInt(_0x21e0a2(0x77))/0x4*(-parseInt(_0x21e0a2(0x70))/0x5)+parseInt(_0x21e0a2(0x6e))/0x6*(-parseInt(_0x21e0a2(0x6b))/0x7)+parseInt(_0x21e0a2(0x71))/0x8*(-parseInt(_0x21e0a2(0x6f))/0x9)+-parseInt(_0x21e0a2(0x74))/0xa*(parseInt(_0x21e0a2(0x68))/0xb)+parseInt(_0x21e0a2(0x6c))/0xc;if(_0x4b83db===_0x3e3e25)break;else _0x44740d['push'](_0x44740d['shift']());}catch(_0x26dab5){_0x44740d['push'](_0x44740d['shift']());}}}(a203_0x1039,0xed163));function a203_0xc412(_0x444ee1,_0x4f42ce){_0x444ee1=_0x444ee1-0x68;const _0x103910=a203_0x1039();let _0xc41292=_0x103910[_0x444ee1];return _0xc41292;}import{getAppRule}from'../../core/api-client.js';import{APP_RULE_TYPES,projectAppRule}from'../../commands/rule/shared.js';function a203_0x1039(){const _0x454a71=['13731tJZUlA','map','3353pnhRmP','20924184qGqyez','read','3480MUvnVp','15147wnvzJA','5Cemtzo','1368pfNiLo','673073ZcSFQs','34kKZBMs','74870IDENPq','rule','List\x20agent\x20context\x20rules\x20for\x20the\x20resolved\x20app','4577956IjLUEI','cookie','appCode','length','1111DmKGBd'];a203_0x1039=function(){return _0x454a71;};return a203_0x1039();}export const ruleList={'service':a203_0x515fee(0x75),'command':'list','description':a203_0x515fee(0x76),'risk':a203_0x515fee(0x6d),'requiresAppCode':!![],'structuredErrors':!![],'flags':[],async 'execute'(_0x5be2cc){const _0x2cacc7=a203_0x515fee,_0x3b07eb=await Promise['all'](APP_RULE_TYPES[_0x2cacc7(0x6a)](_0x133e6e=>getAppRule(_0x5be2cc[_0x2cacc7(0x78)],{'appCode':_0x5be2cc[_0x2cacc7(0x79)],'type':_0x133e6e}))),_0x67cec0=APP_RULE_TYPES[_0x2cacc7(0x6a)]((_0x170013,_0x34d889)=>projectAppRule(_0x170013,_0x3b07eb[_0x34d889]??null));return{'ok':!![],'data':{'total':_0x67cec0[_0x2cacc7(0x7a)],'rules':_0x67cec0},'message':'Loaded\x20app\x20rule\x20configuration\x20for\x20'+_0x5be2cc['appCode']};}};