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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/index.js +1 -1
  20. package/lib/commands/app/list.js +1 -1
  21. package/lib/commands/app/members-list.js +1 -1
  22. package/lib/commands/app/remote-directory.js +1 -1
  23. package/lib/commands/app/shared.js +1 -1
  24. package/lib/commands/app-config/delete.js +1 -1
  25. package/lib/commands/app-config/get.js +1 -1
  26. package/lib/commands/app-config/index.js +1 -1
  27. package/lib/commands/app-config/list.js +1 -1
  28. package/lib/commands/app-config/set.js +1 -1
  29. package/lib/commands/app-config/shared.js +1 -1
  30. package/lib/commands/auth/index.js +1 -1
  31. package/lib/commands/bff/create.js +1 -1
  32. package/lib/commands/bff/delete.js +1 -1
  33. package/lib/commands/bff/detail.js +1 -1
  34. package/lib/commands/bff/index.js +1 -1
  35. package/lib/commands/bff/list.js +1 -1
  36. package/lib/commands/bff/pull.js +1 -1
  37. package/lib/commands/bff/push.js +1 -1
  38. package/lib/commands/bff/status.js +1 -1
  39. package/lib/commands/cli-skill/index.js +1 -1
  40. package/lib/commands/cli-update.js +1 -1
  41. package/lib/commands/codegen/index.js +1 -1
  42. package/lib/commands/codegen/sdk.js +1 -1
  43. package/lib/commands/codegen/sql.js +1 -1
  44. package/lib/commands/common/app-registry.js +1 -1
  45. package/lib/commands/common/app-selector.js +1 -1
  46. package/lib/commands/common/async-task.js +1 -1
  47. package/lib/commands/common/dry-run.js +1 -1
  48. package/lib/commands/common/flags.js +1 -1
  49. package/lib/commands/common/local-file.js +1 -1
  50. package/lib/commands/common/validate.js +1 -1
  51. package/lib/commands/config/get.js +1 -1
  52. package/lib/commands/config/index.js +1 -1
  53. package/lib/commands/config/list.js +1 -1
  54. package/lib/commands/config/set.js +1 -1
  55. package/lib/commands/config/shared.js +1 -1
  56. package/lib/commands/data/filter.js +1 -1
  57. package/lib/commands/data/getOne.js +1 -1
  58. package/lib/commands/data/index.js +1 -1
  59. package/lib/commands/data/shared.js +1 -1
  60. package/lib/commands/dataset/business-group-update.js +1 -1
  61. package/lib/commands/dataset/capability.js +1 -1
  62. package/lib/commands/dataset/delete.js +1 -1
  63. package/lib/commands/dataset/detail.js +1 -1
  64. package/lib/commands/dataset/extend-update.js +1 -1
  65. package/lib/commands/dataset/field-update.js +1 -1
  66. package/lib/commands/dataset/generate.js +1 -1
  67. package/lib/commands/dataset/index.js +1 -1
  68. package/lib/commands/dataset/list.js +1 -1
  69. package/lib/commands/dataset/operations.js +1 -1
  70. package/lib/commands/dataset/relation-audit.js +1 -1
  71. package/lib/commands/dataset/relation-create.js +1 -1
  72. package/lib/commands/dataset/relation-delete.js +1 -1
  73. package/lib/commands/dataset/relation-shared.js +1 -1
  74. package/lib/commands/dataset/relation-update.js +1 -1
  75. package/lib/commands/dataset/relations.js +1 -1
  76. package/lib/commands/dataset/rename.js +1 -1
  77. package/lib/commands/dataset/restore.js +1 -1
  78. package/lib/commands/db/analysis-batching.js +1 -1
  79. package/lib/commands/db/analyze-batch-plan.js +1 -1
  80. package/lib/commands/db/analyze-cancel.js +1 -1
  81. package/lib/commands/db/analyze-start.js +1 -1
  82. package/lib/commands/db/analyze-status.js +1 -1
  83. package/lib/commands/db/create.js +1 -1
  84. package/lib/commands/db/delete.js +1 -1
  85. package/lib/commands/db/detail.js +1 -1
  86. package/lib/commands/db/diff.js +1 -1
  87. package/lib/commands/db/index.js +1 -1
  88. package/lib/commands/db/list.js +1 -1
  89. package/lib/commands/db/shared.js +1 -1
  90. package/lib/commands/db/tables.js +1 -1
  91. package/lib/commands/db/test.js +1 -1
  92. package/lib/commands/db/update.js +1 -1
  93. package/lib/commands/doctor.js +1 -1
  94. package/lib/commands/file/index.js +1 -1
  95. package/lib/commands/init/index.js +1 -1
  96. package/lib/commands/issue/index.js +1 -1
  97. package/lib/commands/issue/nudge.js +1 -1
  98. package/lib/commands/issue/report.js +1 -1
  99. package/lib/commands/issue/shared.js +1 -1
  100. package/lib/commands/kb/create.js +1 -1
  101. package/lib/commands/kb/delete.js +1 -1
  102. package/lib/commands/kb/detail.js +1 -1
  103. package/lib/commands/kb/index.js +1 -1
  104. package/lib/commands/kb/list.js +1 -1
  105. package/lib/commands/kb/shared.js +1 -1
  106. package/lib/commands/kb/update.js +1 -1
  107. package/lib/commands/logs/index.js +1 -1
  108. package/lib/commands/menu/asset-update.js +1 -1
  109. package/lib/commands/menu/delete.js +1 -1
  110. package/lib/commands/menu/external-link-create.js +1 -1
  111. package/lib/commands/menu/external-link-update.js +1 -1
  112. package/lib/commands/menu/group-create.js +1 -1
  113. package/lib/commands/menu/group-update.js +1 -1
  114. package/lib/commands/menu/index.js +1 -1
  115. package/lib/commands/menu/list.js +1 -1
  116. package/lib/commands/menu/move.js +1 -1
  117. package/lib/commands/menu/regroup-start.js +1 -1
  118. package/lib/commands/menu/rename.js +1 -1
  119. package/lib/commands/menu/shared/compare-table.js +1 -1
  120. package/lib/commands/menu/shared/delete-plan.js +1 -1
  121. package/lib/commands/menu/shared/facts.js +1 -1
  122. package/lib/commands/menu/shared/index.js +1 -1
  123. package/lib/commands/menu/shared/inquirer.js +1 -1
  124. package/lib/commands/menu/shared/local-pages.js +1 -1
  125. package/lib/commands/menu/shared/logic.js +1 -1
  126. package/lib/commands/menu/shared/mutations.js +1 -1
  127. package/lib/commands/menu/shared/service.js +1 -1
  128. package/lib/commands/menu/shared/sync-core.js +1 -1
  129. package/lib/commands/menu/shared/update-core.js +1 -1
  130. package/lib/commands/menu/shared/valid-url.js +1 -1
  131. package/lib/commands/menu/sync.js +1 -1
  132. package/lib/commands/notification/config-list.js +1 -1
  133. package/lib/commands/notification/index.js +1 -1
  134. package/lib/commands/ocr/index.js +1 -1
  135. package/lib/commands/page/generate-start.js +1 -1
  136. package/lib/commands/page/generate-status.js +1 -1
  137. package/lib/commands/page/index.js +1 -1
  138. package/lib/commands/page/pull.js +1 -1
  139. package/lib/commands/page/push.js +1 -1
  140. package/lib/commands/page/relation-audit.js +1 -1
  141. package/lib/commands/page/restore.js +1 -1
  142. package/lib/commands/page/shared.js +1 -1
  143. package/lib/commands/page/standard-page-status.js +1 -1
  144. package/lib/commands/page/sync.js +1 -1
  145. package/lib/commands/permit/index.js +1 -1
  146. package/lib/commands/permit/page-get.js +1 -1
  147. package/lib/commands/permit/page-set.js +1 -1
  148. package/lib/commands/permit/role-apis-set.js +1 -1
  149. package/lib/commands/permit/role-menus-set.js +1 -1
  150. package/lib/commands/permit/role-menus.js +1 -1
  151. package/lib/commands/permit/shared.js +1 -1
  152. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  153. package/lib/commands/project/create/format-elapsed.js +1 -1
  154. package/lib/commands/project/create/main.js +1 -1
  155. package/lib/commands/project/create/non-interactive.js +1 -1
  156. package/lib/commands/project/create/project-template-path.js +1 -1
  157. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  158. package/lib/commands/project/create/use-format-code.js +1 -1
  159. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  160. package/lib/commands/project/index.js +1 -1
  161. package/lib/commands/project/upgrade.js +1 -1
  162. package/lib/commands/registry.js +1 -1
  163. package/lib/commands/role/create.js +1 -1
  164. package/lib/commands/role/delete.js +1 -1
  165. package/lib/commands/role/detail.js +1 -1
  166. package/lib/commands/role/index.js +1 -1
  167. package/lib/commands/role/list.js +1 -1
  168. package/lib/commands/role/shared.js +1 -1
  169. package/lib/commands/role/update.js +1 -1
  170. package/lib/commands/role/user-add.js +1 -1
  171. package/lib/commands/role/user-remove.js +1 -1
  172. package/lib/commands/role/user-resolve.js +1 -1
  173. package/lib/commands/run/index.js +1 -1
  174. package/lib/commands/schema.js +1 -1
  175. package/lib/commands/sql/create.js +1 -1
  176. package/lib/commands/sql/delete.js +1 -1
  177. package/lib/commands/sql/detail.js +1 -1
  178. package/lib/commands/sql/exec.js +1 -1
  179. package/lib/commands/sql/index.js +1 -1
  180. package/lib/commands/sql/list.js +1 -1
  181. package/lib/commands/sql/pull.js +1 -1
  182. package/lib/commands/sql/push.js +1 -1
  183. package/lib/commands/sql/shared.js +1 -1
  184. package/lib/commands/sql/status.js +1 -1
  185. package/lib/commands/sql/validate.js +1 -1
  186. package/lib/commands/task/index.js +1 -1
  187. package/lib/commands/task/status.js +1 -1
  188. package/lib/commands/tenant/index.js +1 -1
  189. package/lib/commands/tenant/members-list.js +1 -1
  190. package/lib/commands/tenant/shared.js +1 -1
  191. package/lib/commands/workspace/add.js +1 -1
  192. package/lib/commands/workspace/index.js +1 -1
  193. package/lib/commands/workspace/remove.js +1 -1
  194. package/lib/config/schema.js +1 -1
  195. package/lib/constant/cdn.js +1 -1
  196. package/lib/constant/cli.js +1 -1
  197. package/lib/constant/defaults.js +1 -1
  198. package/lib/constant/domain.js +1 -1
  199. package/lib/constant/env.js +1 -1
  200. package/lib/constant/output.js +1 -1
  201. package/lib/constant/paths.js +1 -1
  202. package/lib/constant/risk.js +1 -1
  203. package/lib/context/app-resolver.js +1 -1
  204. package/lib/context/auth-resolver.js +1 -1
  205. package/lib/context/config-loader.js +1 -1
  206. package/lib/context.d.ts +1 -1
  207. package/lib/context.js +1 -1
  208. package/lib/core/alias-resolver.js +1 -1
  209. package/lib/core/api-client.js +1 -1
  210. package/lib/core/bff/config.js +1 -1
  211. package/lib/core/bff/file-system.js +1 -1
  212. package/lib/core/bff/hash.js +1 -1
  213. package/lib/core/bff/lock.js +1 -1
  214. package/lib/core/bff/utils.js +1 -1
  215. package/lib/core/db-resolver.js +1 -1
  216. package/lib/core/page/file-system.js +1 -1
  217. package/lib/core/page/hash.js +1 -1
  218. package/lib/core/page/lock.js +1 -1
  219. package/lib/core/sql-index-auditor.js +1 -1
  220. package/lib/core/sql-sync/config.js +1 -1
  221. package/lib/core/sql-sync/file-system.js +1 -1
  222. package/lib/core/sql-sync/hash.js +1 -1
  223. package/lib/core/sql-sync/lock.js +1 -1
  224. package/lib/core/sql-sync/utils.js +1 -1
  225. package/lib/core/sql-validator.js +1 -1
  226. package/lib/errors.js +1 -1
  227. package/lib/framework/build-all-flags.js +1 -1
  228. package/lib/framework/error-output.js +1 -1
  229. package/lib/framework/explicit-yes.js +1 -1
  230. package/lib/framework/flags.js +1 -1
  231. package/lib/framework/help.js +1 -1
  232. package/lib/framework/index.js +1 -1
  233. package/lib/framework/output.js +1 -1
  234. package/lib/framework/response.js +1 -1
  235. package/lib/framework/runner-alias.js +1 -1
  236. package/lib/framework/runner.js +1 -1
  237. package/lib/framework/schema-export.js +1 -1
  238. package/lib/framework/types.js +1 -1
  239. package/lib/generated/build-info.d.ts +4 -4
  240. package/lib/generated/build-info.js +1 -1
  241. package/lib/help.js +1 -1
  242. package/lib/runtime/confirmation.js +1 -1
  243. package/lib/runtime/event.js +1 -1
  244. package/lib/runtime/index.js +1 -1
  245. package/lib/runtime/queue.js +1 -1
  246. package/lib/runtime/resolve.js +1 -1
  247. package/lib/skills/main.js +1 -1
  248. package/lib/skills/npx-skills-add.js +1 -1
  249. package/lib/skills/skill-presence.js +1 -1
  250. package/lib/telemetry/cli-command-trace.js +1 -1
  251. package/lib/telemetry/cli-help-trace.js +1 -1
  252. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  253. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  254. package/lib/telemetry/send-cli-trace-log.js +1 -1
  255. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  256. package/lib/utils/ai_config.js +1 -1
  257. package/lib/utils/apply-jq-filter.js +1 -1
  258. package/lib/utils/cdn-config.js +1 -1
  259. package/lib/utils/check-sdk-version.js +1 -1
  260. package/lib/utils/cli-version-check.js +1 -1
  261. package/lib/utils/cli-version-policy.js +1 -1
  262. package/lib/utils/config.js +1 -1
  263. package/lib/utils/copy-directory.js +1 -1
  264. package/lib/utils/entity-with-id.js +1 -1
  265. package/lib/utils/file-utils.js +1 -1
  266. package/lib/utils/guides-cdn.js +1 -1
  267. package/lib/utils/http-client.js +1 -1
  268. package/lib/utils/is-non-interactive.js +1 -1
  269. package/lib/utils/logger.js +1 -1
  270. package/lib/utils/params.js +1 -1
  271. package/lib/utils/platform.js +1 -1
  272. package/lib/utils/rules-cdn.js +1 -1
  273. package/lib/utils/sleep.js +1 -1
  274. package/lib/utils/template-replacer.js +1 -1
  275. package/lib/utils/update-notice.js +1 -1
  276. package/lib/utils/version.js +1 -1
  277. package/lib/utils/with-active-cookie.js +1 -1
  278. package/lib/utils/write-cli-side-channel.js +1 -1
  279. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x46d0e8,_0x49a1f5){const _0x37fd0d=a159_0xdcd4,_0x43e8cc=_0x46d0e8();while(!![]){try{const _0x42c972=parseInt(_0x37fd0d(0x162))/0x1+parseInt(_0x37fd0d(0x15b))/0x2+parseInt(_0x37fd0d(0x15c))/0x3*(parseInt(_0x37fd0d(0x159))/0x4)+-parseInt(_0x37fd0d(0x153))/0x5+parseInt(_0x37fd0d(0x15a))/0x6+parseInt(_0x37fd0d(0x152))/0x7*(parseInt(_0x37fd0d(0x15e))/0x8)+-parseInt(_0x37fd0d(0x161))/0x9*(parseInt(_0x37fd0d(0x15d))/0xa);if(_0x42c972===_0x49a1f5)break;else _0x43e8cc['push'](_0x43e8cc['shift']());}catch(_0x1af927){_0x43e8cc['push'](_0x43e8cc['shift']());}}}(a159_0x326c,0x79364));import a159_0x3377eb from'node:path';import{execa}from'execa';function a159_0xdcd4(_0xab0867,_0x5da34c){_0xab0867=_0xab0867-0x152;const _0x326c06=a159_0x326c();let _0xdcd4bc=_0x326c06[_0xab0867];return _0xdcd4bc;}function a159_0x326c(){const _0x1f5620=['490136TnVzWB','info','install','error','resolve','45052dpNdes','1351385ThzDzC','message','开始安装依赖','npm','cwd','--registry','68TNDvPK','1110588kopfNU','233002WoXSYf','150723cVWsHL','350lovcCo','1072twcsWc','依赖安装完成','now','447813hswJPc'];a159_0x326c=function(){return _0x1f5620;};return a159_0x326c();}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x323a0d){const _0x408c2d=a159_0xdcd4,_0x204f9d=Date['now'](),_0x19ff30=a159_0x3377eb[_0x408c2d(0x166)](process[_0x408c2d(0x157)](),_0x323a0d);try{logger[_0x408c2d(0x163)](_0x408c2d(0x164),_0x408c2d(0x155),{'projectCode':_0x323a0d,'registry':'https://registry.npmmirror.com'}),await execa(resolveNpmBin(_0x408c2d(0x156)),[_0x408c2d(0x164),_0x408c2d(0x158),'https://registry.npmmirror.com'],{'cwd':_0x19ff30});const _0x45aaf6=Date[_0x408c2d(0x160)]()-_0x204f9d;logger['success'](_0x408c2d(0x164),_0x408c2d(0x15f),_0x45aaf6,{'projectCode':_0x323a0d});}catch(_0x57f7b9){const _0x2584d8=Date[_0x408c2d(0x160)]()-_0x204f9d;logger[_0x408c2d(0x165)](_0x408c2d(0x164),'依赖安装失败',{'projectCode':_0x323a0d,'error':_0x57f7b9 instanceof Error?_0x57f7b9[_0x408c2d(0x154)]:String(_0x57f7b9),'duration':_0x2584d8});throw _0x57f7b9;}return formatElapsed(_0x204f9d);}
1
+ (function(_0x18fedf,_0x2cc77c){const _0x27fd91=a159_0x5ae8,_0xf2f891=_0x18fedf();while(!![]){try{const _0x2787db=-parseInt(_0x27fd91(0xb8))/0x1+-parseInt(_0x27fd91(0xb6))/0x2+parseInt(_0x27fd91(0xae))/0x3*(parseInt(_0x27fd91(0xaa))/0x4)+parseInt(_0x27fd91(0xb4))/0x5+-parseInt(_0x27fd91(0xb0))/0x6*(parseInt(_0x27fd91(0xb1))/0x7)+-parseInt(_0x27fd91(0xbd))/0x8*(parseInt(_0x27fd91(0xb9))/0x9)+parseInt(_0x27fd91(0xac))/0xa;if(_0x2787db===_0x2cc77c)break;else _0xf2f891['push'](_0xf2f891['shift']());}catch(_0x3a2fdd){_0xf2f891['push'](_0xf2f891['shift']());}}}(a159_0x1e48,0xdda7f));import a159_0xe35697 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a159_0x1e48(){const _0x298a2e=['1968ecljYR','message','42661980XJWomA','cwd','3294mcOfPq','install','14850qllGMl','5117TFsURp','依赖安装失败','success','6515390BZhRVM','info','3100330yvoaZt','依赖安装完成','543453BNUHRd','9054hsBgmI','error','开始安装依赖','now','10328usGjjr'];a159_0x1e48=function(){return _0x298a2e;};return a159_0x1e48();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';function a159_0x5ae8(_0x22c1d5,_0x9cb457){_0x22c1d5=_0x22c1d5-0xaa;const _0x1e4812=a159_0x1e48();let _0x5ae8c3=_0x1e4812[_0x22c1d5];return _0x5ae8c3;}export async function installDependencies(_0x2be0d0){const _0x3f0de6=a159_0x5ae8,_0x395006=Date[_0x3f0de6(0xbc)](),_0x57223f=a159_0xe35697['resolve'](process[_0x3f0de6(0xad)](),_0x2be0d0);try{logger[_0x3f0de6(0xb5)]('install',_0x3f0de6(0xbb),{'projectCode':_0x2be0d0,'registry':'https://registry.npmmirror.com'}),await execa(resolveNpmBin('npm'),[_0x3f0de6(0xaf),'--registry','https://registry.npmmirror.com'],{'cwd':_0x57223f});const _0x466ce8=Date[_0x3f0de6(0xbc)]()-_0x395006;logger[_0x3f0de6(0xb3)](_0x3f0de6(0xaf),_0x3f0de6(0xb7),_0x466ce8,{'projectCode':_0x2be0d0});}catch(_0x3e7af8){const _0x2d46b5=Date['now']()-_0x395006;logger[_0x3f0de6(0xba)](_0x3f0de6(0xaf),_0x3f0de6(0xb2),{'projectCode':_0x2be0d0,'error':_0x3e7af8 instanceof Error?_0x3e7af8[_0x3f0de6(0xab)]:String(_0x3e7af8),'duration':_0x2d46b5});throw _0x3e7af8;}return formatElapsed(_0x395006);}
@@ -1 +1 @@
1
- function a160_0x5bab(){const _0x2a0ee4=['nonInteractive','project','5628762bnSRLo','cookie','11086LOdFOa','string','str','7EnwyMo','project-name','create','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','name','validation','write','args','7125792tRmyxn','trim','appcode','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','bool','Usage:\x20','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','env','22xhWXbY','6306664riuJAr','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','../../commands/project/create/non-interactive.js','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','173427JuPkER','../../commands/project/create/main.js','7636635LuBxxC','13378491cKhBoc','yes'];a160_0x5bab=function(){return _0x2a0ee4;};return a160_0x5bab();}function a160_0x15da(_0x26ede5,_0x56702e){_0x26ede5=_0x26ede5-0x95;const _0x5babf9=a160_0x5bab();let _0x15da53=_0x5babf9[_0x26ede5];return _0x15da53;}const a160_0x46cda0=a160_0x15da;(function(_0x31889d,_0x2c7621){const _0x509adf=a160_0x15da,_0x44fe92=_0x31889d();while(!![]){try{const _0x5bbdfb=-parseInt(_0x509adf(0xa1))/0x1+parseInt(_0x509adf(0xb4))/0x2*(-parseInt(_0x509adf(0x98))/0x3)+parseInt(_0x509adf(0xac))/0x4+-parseInt(_0x509adf(0x9a))/0x5+-parseInt(_0x509adf(0x9f))/0x6*(parseInt(_0x509adf(0xa4))/0x7)+parseInt(_0x509adf(0xb5))/0x8+parseInt(_0x509adf(0x9b))/0x9;if(_0x5bbdfb===_0x2c7621)break;else _0x44fe92['push'](_0x44fe92['shift']());}catch(_0x37c9cf){_0x44fe92['push'](_0x44fe92['shift']());}}}(a160_0x5bab,0xe66e1));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{upgradeApp}from'../../commands/project/upgrade.js';const createFlags=[{'name':'name','type':a160_0x46cda0(0xa2),'description':'Project\x20name'},{'name':a160_0x46cda0(0xb3),'type':a160_0x46cda0(0xa2),'description':'Target\x20environment'},{'name':a160_0x46cda0(0xae),'type':a160_0x46cda0(0xa2),'description':a160_0x46cda0(0xb2)}],upgradeFlags=[{'name':a160_0x46cda0(0x9c),'type':'boolean','description':'Skip\x20confirmation\x20prompt','default':![]}];export const projectDefinitions=[{'service':a160_0x46cda0(0x9e),'command':a160_0x46cda0(0xa6),'description':'Create\x20a\x20new\x20project','risk':a160_0x46cda0(0xaa),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a160_0x46cda0(0xa5),'description':a160_0x46cda0(0xa7),'required':![]}],'flags':createFlags,async 'execute'(_0x3b5c4){const _0x2c3727=a160_0x46cda0,{createApp:_0x5038f6}=await import(_0x2c3727(0x99)),{createProjectNonInteractive:_0xa105c1}=await import(_0x2c3727(0x96)),_0x229da2=_0x3b5c4[_0x2c3727(0xa3)](_0x2c3727(0xa8))[_0x2c3727(0xad)]()||_0x3b5c4[_0x2c3727(0xab)][0x0]?.[_0x2c3727(0xad)](),_0x52c236=_0x3b5c4[_0x2c3727(0xa3)](_0x2c3727(0xb3))||undefined,_0x2dec75=_0x3b5c4[_0x2c3727(0xa3)]('appcode')||undefined;if(_0x3b5c4[_0x2c3727(0x9d)]){if(!_0x229da2)throw CliErrors[_0x2c3727(0xa9)](_0x2c3727(0xaf),_0x2c3727(0xb1)+CLI_BIN_NAME+_0x2c3727(0x95));await _0xa105c1(_0x229da2,_0x52c236,_0x2dec75,_0x3b5c4[_0x2c3727(0xa0)]);}else await _0x5038f6({'projectCode':_0x229da2,'appCode':_0x2dec75,'env':_0x52c236,'cookie':_0x3b5c4[_0x2c3727(0xa0)]});return{'ok':!![]};}},{'service':'project','command':'upgrade','description':a160_0x46cda0(0x97),'risk':a160_0x46cda0(0xaa),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x395c54){const _0x9eca9b=a160_0x46cda0;return await upgradeApp(_0x395c54['nonInteractive'],{'yes':_0x395c54[_0x9eca9b(0xb0)]('yes')}),{'ok':!![]};}}];
1
+ function a160_0x39f8(){const _0x24da27=['name','cookie','yes','bool','Usage:\x20','create','6961640AasjEI','1770069gCRClV','boolean','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','string','appcode','../../commands/project/create/main.js','validation','Create\x20a\x20new\x20project','args','nonInteractive','write','105YKwVES','785NqIYmk','1220MWVivb','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','10910241blUPnr','Target\x20environment','str','40AufycC','57894tVSPSQ','367079pZGCrz','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','trim','project','env','Project\x20name','Skip\x20confirmation\x20prompt','upgrade','44789060OWPJlM'];a160_0x39f8=function(){return _0x24da27;};return a160_0x39f8();}const a160_0x4ec5a3=a160_0x4e50;(function(_0xab0896,_0x31188e){const _0x122713=a160_0x4e50,_0x3e521f=_0xab0896();while(!![]){try{const _0x1aeae7=-parseInt(_0x122713(0x1d1))/0x1+parseInt(_0x122713(0x1ca))/0x2*(parseInt(_0x122713(0x1c8))/0x3)+parseInt(_0x122713(0x1e0))/0x4+-parseInt(_0x122713(0x1c9))/0x5*(-parseInt(_0x122713(0x1d0))/0x6)+-parseInt(_0x122713(0x1e1))/0x7*(-parseInt(_0x122713(0x1cf))/0x8)+parseInt(_0x122713(0x1cc))/0x9+-parseInt(_0x122713(0x1d9))/0xa;if(_0x1aeae7===_0x31188e)break;else _0x3e521f['push'](_0x3e521f['shift']());}catch(_0x26ba85){_0x3e521f['push'](_0x3e521f['shift']());}}}(a160_0x39f8,0xdd7f4));import{CliErrors}from'../../errors.js';function a160_0x4e50(_0x3d910c,_0x1fae6f){_0x3d910c=_0x3d910c-0x1bf;const _0x39f8b1=a160_0x39f8();let _0x4e505c=_0x39f8b1[_0x3d910c];return _0x4e505c;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{upgradeApp}from'../../commands/project/upgrade.js';const createFlags=[{'name':a160_0x4ec5a3(0x1da),'type':'string','description':a160_0x4ec5a3(0x1d6)},{'name':'env','type':a160_0x4ec5a3(0x1c0),'description':a160_0x4ec5a3(0x1cd)},{'name':a160_0x4ec5a3(0x1c1),'type':a160_0x4ec5a3(0x1c0),'description':a160_0x4ec5a3(0x1bf)}],upgradeFlags=[{'name':a160_0x4ec5a3(0x1dc),'type':a160_0x4ec5a3(0x1e2),'description':a160_0x4ec5a3(0x1d7),'default':![]}];export const projectDefinitions=[{'service':a160_0x4ec5a3(0x1d4),'command':a160_0x4ec5a3(0x1df),'description':a160_0x4ec5a3(0x1c4),'risk':'write','requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'project-name','description':'Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','required':![]}],'flags':createFlags,async 'execute'(_0xc5da00){const _0x287097=a160_0x4ec5a3,{createApp:_0x91f349}=await import(_0x287097(0x1c2)),{createProjectNonInteractive:_0x40ff45}=await import('../../commands/project/create/non-interactive.js'),_0x22b52a=_0xc5da00[_0x287097(0x1ce)](_0x287097(0x1da))['trim']()||_0xc5da00[_0x287097(0x1c5)][0x0]?.[_0x287097(0x1d3)](),_0x59fddc=_0xc5da00[_0x287097(0x1ce)](_0x287097(0x1d5))||undefined,_0x18fbef=_0xc5da00[_0x287097(0x1ce)](_0x287097(0x1c1))||undefined;if(_0xc5da00[_0x287097(0x1c6)]){if(!_0x22b52a)throw CliErrors[_0x287097(0x1c3)](_0x287097(0x1cb),_0x287097(0x1de)+CLI_BIN_NAME+'\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]');await _0x40ff45(_0x22b52a,_0x59fddc,_0x18fbef,_0xc5da00[_0x287097(0x1db)]);}else await _0x91f349({'projectCode':_0x22b52a,'appCode':_0x18fbef,'env':_0x59fddc,'cookie':_0xc5da00[_0x287097(0x1db)]});return{'ok':!![]};}},{'service':a160_0x4ec5a3(0x1d4),'command':a160_0x4ec5a3(0x1d8),'description':a160_0x4ec5a3(0x1d2),'risk':a160_0x4ec5a3(0x1c7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x5634f6){const _0x56a1bf=a160_0x4ec5a3;return await upgradeApp(_0x5634f6[_0x56a1bf(0x1c6)],{'yes':_0x5634f6[_0x56a1bf(0x1dd)](_0x56a1bf(0x1dc))}),{'ok':!![]};}}];
@@ -1 +1 @@
1
- (function(_0x177d03,_0x267507){const _0x3041be=a161_0x5081,_0xdecd8=_0x177d03();while(!![]){try{const _0x48df19=parseInt(_0x3041be(0xa1))/0x1*(parseInt(_0x3041be(0xe8))/0x2)+-parseInt(_0x3041be(0xc2))/0x3+parseInt(_0x3041be(0xf8))/0x4+-parseInt(_0x3041be(0x105))/0x5+parseInt(_0x3041be(0xae))/0x6*(-parseInt(_0x3041be(0x10b))/0x7)+parseInt(_0x3041be(0xcb))/0x8+parseInt(_0x3041be(0xc3))/0x9;if(_0x48df19===_0x267507)break;else _0xdecd8['push'](_0xdecd8['shift']());}catch(_0xa6201e){_0xdecd8['push'](_0xdecd8['shift']());}}}(a161_0xcd73,0xd3691));import a161_0xedf86f from'chalk';import a161_0x35b839 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,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';function a161_0x5081(_0x1e485b,_0x2cf2b7){_0x1e485b=_0x1e485b-0x90;const _0xcd73d3=a161_0xcd73();let _0x5081ff=_0xcd73d3[_0x1e485b];return _0x5081ff;}const LEGACY_CONFIG_NAMES=CONFIG_NAMES['filter'](_0xf82426=>_0xf82426!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x10d5d8){const _0x59b3e5=a161_0x5081,_0x2128c9=[];for(const _0x587ce3 of Object[_0x59b3e5(0xe9)](CORE_IDE_CONFIGS)){if(_0x587ce3[_0x59b3e5(0xda)])for(const _0x3caf4b of _0x587ce3[_0x59b3e5(0xda)]){_0x2128c9['push'](resolve(_0x10d5d8,_0x3caf4b['path']));}}return _0x2128c9;}function analyse(_0x1e4240){const _0x2e9289=a161_0x5081;let _0x3046d6=null;const _0x721d4a=resolve(_0x1e4240,NEW_CONFIG_NAME),_0x327175=existsSync(_0x721d4a);for(const _0x3e0323 of LEGACY_CONFIG_NAMES){const _0x39a9f2=resolve(_0x1e4240,_0x3e0323);if(existsSync(_0x39a9f2)){const _0x4bb279=readConfigFile(_0x39a9f2),_0x4d8028=Object[_0x2e9289(0x104)](_0x4bb279)[_0x2e9289(0xa2)](_0x19e264=>typeof _0x4bb279[_0x19e264]!==_0x2e9289(0x99));_0x3046d6={'oldPath':_0x39a9f2,'hasNewConfig':_0x327175,'fields':_0x4d8028};break;}}const _0x2e8be4=[],_0x2c1556=resolve(_0x1e4240,_0x2e9289(0x9f));if(existsSync(_0x2c1556))_0x2e8be4[_0x2e9289(0xe4)](_0x2c1556);const _0x53bdfe=resolve(_0x1e4240,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x53bdfe))_0x2e8be4[_0x2e9289(0xe4)](_0x53bdfe);const _0xc41ccd=resolve(_0x1e4240,_0x2e9289(0xa0));if(existsSync(_0xc41ccd))_0x2e8be4['push'](_0xc41ccd);for(const _0x195010 of collectIdeSkillFiles(_0x1e4240)){if(existsSync(_0x195010))_0x2e8be4['push'](_0x195010);}let _0x10fbb5=null;const _0x5f42df=resolve(_0x1e4240,_0x2e9289(0xd5));if(existsSync(_0x5f42df))try{const _0x11e83b=JSON['parse'](readFileSync(_0x5f42df,_0x2e9289(0xab)));if(_0x11e83b?.[_0x2e9289(0xfd)]&&typeof _0x11e83b[_0x2e9289(0xfd)]===_0x2e9289(0xc0)){const _0x5284a7=[];for(const [_0x3286b7,_0x4af255]of Object[_0x2e9289(0x10f)](_0x11e83b['mcpServers'])){const _0x3a099e=_0x4af255;_0x3a099e?.[_0x2e9289(0xd7)]&&Array[_0x2e9289(0xc9)](_0x3a099e[_0x2e9289(0xd7)])&&_0x3a099e[_0x2e9289(0xd7)]['some'](_0x39922f=>typeof _0x39922f===_0x2e9289(0xb8)&&_0x39922f[_0x2e9289(0xb3)](_0x2e9289(0x92)))&&_0x5284a7[_0x2e9289(0xe4)](_0x3286b7);}_0x5284a7[_0x2e9289(0xd2)]>0x0&&(_0x10fbb5={'path':_0x5f42df,'keys':_0x5284a7});}}catch{}const _0x1e7d10=_0x2e8be4[_0x2e9289(0xd2)]>0x0||_0x3046d6!==null;let _0x448038=null;const _0x3dd46a=resolve(_0x1e4240,_0x2e9289(0xcd));if(existsSync(_0x3dd46a))try{const _0x1707f0=JSON[_0x2e9289(0xde)](readFileSync(_0x3dd46a,_0x2e9289(0xab)));for(const _0x58b602 of[_0x2e9289(0xbd),_0x2e9289(0xeb)]){const _0x568d11=_0x1707f0?.[_0x58b602]?.[_0x2e9289(0x9d)];if(typeof _0x568d11===_0x2e9289(0xb8)){_0x568d11!==_0x2e9289(0x101)&&(_0x448038={'pkgPath':_0x3dd46a,'currentVersion':_0x568d11,'field':_0x58b602});break;}}}catch{}return{'configMigration':_0x3046d6,'oldArtifacts':_0x2e8be4,'oldMcpConfig':_0x10fbb5,'needsSkillSwap':_0x1e7d10,'sdkUpgrade':_0x448038};}function printReport(_0x3f953c){const _0x46e378=a161_0x5081,{configMigration:_0x325046,oldArtifacts:_0x479cd9,oldMcpConfig:_0x2d3cba,needsSkillSwap:_0x331eb5}=_0x3f953c;console[_0x46e378(0xf1)](''),console['log'](a161_0xedf86f[_0x46e378(0xaf)](_0x46e378(0x97))),console[_0x46e378(0xf1)]('');_0x325046?(console['log'](a161_0xedf86f[_0x46e378(0xa3)]('Config\x20file:')+('\x20\x20'+a161_0xedf86f['yellow'](_0x325046[_0x46e378(0xe2)]))),console[_0x46e378(0xf1)](_0x46e378(0x9a)+(_0x325046[_0x46e378(0x102)]?a161_0xedf86f[_0x46e378(0xad)](_0x46e378(0xdc)):a161_0xedf86f['gray'](_0x46e378(0x10d)))),console[_0x46e378(0xf1)]('\x20\x20Fields\x20to\x20migrate:\x20'+_0x325046['fields'][_0x46e378(0xd3)](',\x20')),console['log']('\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak')):console[_0x46e378(0xf1)](a161_0xedf86f[_0x46e378(0xa3)]('Config\x20file:')+'\x20\x20'+a161_0xedf86f[_0x46e378(0xa8)](_0x46e378(0xfe)));console['log']('');if(_0x479cd9['length']>0x0){console[_0x46e378(0xf1)](a161_0xedf86f['cyan'](_0x46e378(0xca)));for(const _0x2de8cf of _0x479cd9){console[_0x46e378(0xf1)]('\x20\x20'+a161_0xedf86f[_0x46e378(0x9b)]('FOUND')+'\x20\x20'+_0x2de8cf);}console[_0x46e378(0xf1)](_0x46e378(0xc8));}else console[_0x46e378(0xf1)](a161_0xedf86f['cyan'](_0x46e378(0xca))+'\x20\x20'+a161_0xedf86f[_0x46e378(0xa8)](_0x46e378(0xf6)));console[_0x46e378(0xf1)]('');_0x2d3cba?(console[_0x46e378(0xf1)](a161_0xedf86f[_0x46e378(0xa3)](_0x46e378(0xcf))+('\x20\x20'+a161_0xedf86f[_0x46e378(0x108)](_0x2d3cba[_0x46e378(0xe5)])+_0x46e378(0xac)+_0x2d3cba[_0x46e378(0x104)][_0x46e378(0xd3)](',\x20'))),console[_0x46e378(0xf1)](_0x46e378(0xa4))):console[_0x46e378(0xf1)](a161_0xedf86f[_0x46e378(0xa3)]('MCP\x20config:')+'\x20\x20'+a161_0xedf86f[_0x46e378(0xa8)]('no\x20legacy\x20entry'));console['log'](''),console[_0x46e378(0xf1)](a161_0xedf86f[_0x46e378(0xa3)](_0x46e378(0x96))+('\x20\x20'+(_0x331eb5?a161_0xedf86f['yellow'](_0x46e378(0x9e)):a161_0xedf86f[_0x46e378(0xad)](_0x46e378(0xed)))));_0x331eb5&&console[_0x46e378(0xf1)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x46e378(0xf1)]('');if(_0x3f953c[_0x46e378(0xb6)]){const {currentVersion:_0x255bba,field:_0x2da99d,pkgPath:_0x1751ce}=_0x3f953c[_0x46e378(0xb6)];console['log'](a161_0xedf86f[_0x46e378(0xa3)](_0x46e378(0xf2))+('\x20\x20'+a161_0xedf86f[_0x46e378(0x108)](_0x1751ce))),console[_0x46e378(0xf1)](_0x46e378(0xf0)+_0x2da99d+':\x20'+a161_0xedf86f[_0x46e378(0x108)](_0x255bba)+_0x46e378(0xc6)+a161_0xedf86f['green']('latest')),console['log'](_0x46e378(0xb7));}else console[_0x46e378(0xf1)](a161_0xedf86f[_0x46e378(0xa3)](_0x46e378(0xf2))+'\x20\x20'+a161_0xedf86f[_0x46e378(0xa8)](_0x46e378(0x90)));console[_0x46e378(0xf1)]('');}function execConfigMigration(_0x39c9d4,_0x5d040b){const _0xc86adc=a161_0x5081,{configMigration:_0x4aa2ad}=_0x39c9d4;if(!_0x4aa2ad?.[_0xc86adc(0xe2)])return{'step':0x1,'label':_0xc86adc(0x91),'ok':!![],'detail':_0xc86adc(0xb4)};const _0x549eb9=readConfigFile(_0x4aa2ad['oldPath']),_0x3b435d=resolve(_0x5d040b,NEW_CONFIG_NAME),_0x452aa2=_0x4aa2ad[_0xc86adc(0x102)]?readConfigFile(_0x3b435d):{};for(const [_0x17e52b,_0x361f01]of Object['entries'](_0x549eb9)){!(_0x17e52b in _0x452aa2)&&(_0x452aa2[_0x17e52b]=_0x361f01);}writeConfigFile(_0x3b435d,_0x452aa2);const _0x4aa0eb=_0x4aa2ad['oldPath']+'.bak';return renameSync(_0x4aa2ad[_0xc86adc(0xe2)],_0x4aa0eb),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x4aa2ad['oldPath']+_0xc86adc(0xc6)+_0x3b435d+_0xc86adc(0xf4)+_0x4aa0eb+')'};}function execRemoveOldArtifacts(_0x20d7ab){const _0x28c648=a161_0x5081,_0x3be4c9=[];for(const _0x85aa of _0x20d7ab){try{if(!existsSync(_0x85aa))continue;const _0x363a08=tryStat(_0x85aa);_0x363a08?.[_0x28c648(0xb5)]()?rmSync(_0x85aa,{'recursive':!![],'force':!![]}):unlinkSync(_0x85aa);}catch(_0x10dfde){_0x3be4c9[_0x28c648(0xe4)](_0x85aa+':\x20'+_0x10dfde[_0x28c648(0xf5)]);}}return{'step':0x3,'label':_0x28c648(0x95),'ok':_0x3be4c9[_0x28c648(0xd2)]===0x0,'detail':_0x3be4c9[_0x28c648(0xd2)]>0x0?_0x20d7ab['length']-_0x3be4c9['length']+'/'+_0x20d7ab['length']+_0x28c648(0xc4)+_0x3be4c9[_0x28c648(0xd3)](';\x20')+')':_0x20d7ab[_0x28c648(0xd2)]+_0x28c648(0xa9)};}function execCleanMcp(_0x40a2a4){const _0x4028b4=a161_0x5081;if(!_0x40a2a4[_0x4028b4(0x110)])return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x4028b4(0x106)};try{const _0x53828b=readFileSync(_0x40a2a4[_0x4028b4(0x110)][_0x4028b4(0xe5)],_0x4028b4(0xab)),_0x769dc1=JSON[_0x4028b4(0xde)](_0x53828b);if(_0x769dc1?.[_0x4028b4(0xfd)]&&typeof _0x769dc1['mcpServers']===_0x4028b4(0xc0)){const _0x572e8f=[];for(const [_0x1a4c2c,_0xbcbaa3]of Object[_0x4028b4(0x10f)](_0x769dc1['mcpServers'])){_0xbcbaa3?.[_0x4028b4(0xd7)]&&Array[_0x4028b4(0xc9)](_0xbcbaa3[_0x4028b4(0xd7)])&&_0xbcbaa3[_0x4028b4(0xd7)][_0x4028b4(0xd4)](_0x4d6cac=>typeof _0x4d6cac===_0x4028b4(0xb8)&&_0x4d6cac[_0x4028b4(0xb3)](_0x4028b4(0x92)))&&_0x572e8f['push'](_0x1a4c2c);}for(const _0xb25e59 of _0x572e8f){delete _0x769dc1[_0x4028b4(0xfd)][_0xb25e59];}return _0x572e8f[_0x4028b4(0xd2)]>0x0&&writeFileSync(_0x40a2a4['oldMcpConfig'][_0x4028b4(0xe5)],JSON[_0x4028b4(0xe6)](_0x769dc1,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x4028b4(0xce)+_0x572e8f[_0x4028b4(0xd3)](',\x20')+_0x4028b4(0x103)+_0x40a2a4[_0x4028b4(0x110)][_0x4028b4(0xe5)]};}return{'step':0x4,'label':_0x4028b4(0x9c),'ok':!![],'detail':_0x4028b4(0xc1)};}catch(_0x4621dc){return{'step':0x4,'label':_0x4028b4(0x9c),'ok':![],'detail':_0x4621dc[_0x4028b4(0xf5)]};}}function execSkillsRemove(_0x537f7c,_0x4af115){const _0x26e289=a161_0x5081,_0x5a7f79=runNpxSkillsRemove(_0x537f7c,{'stdio':'inherit','yes':_0x4af115});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x5a7f79['ok'],'detail':_0x5a7f79['ok']?_0x26e289(0x10c):_0x5a7f79[_0x26e289(0xaa)]??_0x26e289(0x107)+_0x5a7f79[_0x26e289(0xfb)]};}function execSkillsAdd(_0x3d6020,_0x5ce3d8){const _0xbac686=a161_0x5081,_0x73d2df=runNpxSkillsAddGlobal(_0x3d6020,_0xbac686(0x100),{'stdio':_0xbac686(0xfa),'yes':_0x5ce3d8});return{'step':0x6,'label':'Install\x20new\x20skill','ok':_0x73d2df['ok'],'detail':_0x73d2df['ok']?_0xbac686(0x10a):_0x73d2df['error']??'exit\x20'+_0x73d2df['status']};}function execUpgradeSdk(_0x385552){const _0x2411ba=a161_0x5081;if(!_0x385552['sdkUpgrade'])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x2411ba(0xd8)};const {pkgPath:_0x17c9de,currentVersion:_0x303870,field:_0x4ba727}=_0x385552[_0x2411ba(0xb6)];try{const _0x1a1307=readFileSync(_0x17c9de,_0x2411ba(0xab)),_0x3f3935=JSON[_0x2411ba(0xde)](_0x1a1307);return _0x3f3935[_0x4ba727][_0x2411ba(0x9d)]=_0x2411ba(0x101),writeFileSync(_0x17c9de,JSON[_0x2411ba(0xe6)](_0x3f3935,null,0x2)+'\x0a',_0x2411ba(0xab)),{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x4ba727+_0x2411ba(0xd9)+_0x303870+'\x20→\x20latest'};}catch(_0xe05918){return{'step':0x7,'label':_0x2411ba(0xe7),'ok':![],'detail':_0xe05918[_0x2411ba(0xf5)]};}}function a161_0xcd73(){const _0x3be7c0=['start','\x20→\x20','failed','\x20\x20Action:\x20delete','isArray','Legacy\x20artifacts:','11683448SPGroD','Remove\x20.lovrabet/','package.json','removed\x20','MCP\x20config:','FAIL','succeed','length','join','some','.cursor/mcp.json','detail','args','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','[\x22@lovrabet/sdk\x22]:\x20','files','fail','already\x20exists\x20(will\x20merge)','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','parse','label','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','done','oldPath','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','push','path','stringify','Upgrade\x20@lovrabet/sdk','881218LmJLyG','values','Step\x206/7:\x20Installing\x20new\x20skill...','devDependencies','Step\x204/7:\x20MCP\x20config\x20—\x20','not\x20needed','\x20\x20npm\x20install','Step\x201/7:\x20Config\x20migration\x20—\x20','\x20\x20Current\x20version\x20in\x20','log','@lovrabet/sdk:','step','\x20(backup:\x20','message','none\x20found','Upgrade\x20cancelled.','2081444TDhNaK','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','inherit','status','Proceed\x20with\x20upgrade?','mcpServers','no\x20legacy\x20config\x20found','Step\x204/7:\x20Cleaning\x20MCP\x20config...','lovrabet/rabetbase','latest','hasNewConfig','\x20from\x20','keys','6967140ZaFCKK','skipped','exit\x20','yellow','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','lovrabet/rabetbase\x20installed\x20globally','9793119qoWjXx','lovrabet/lovrabet-skill\x20removed','not\x20found\x20(will\x20create)','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','entries','oldMcpConfig','not\x20found\x20or\x20already\x20at\x20latest','Config\x20migration','@lovrabet/dataset-mcp-server','configMigration','cwd','Remove\x20legacy\x20artifacts','Skill\x20swap:','===\x20Upgrade\x20Analysis\x20===','Step\x205/7:\x20Removing\x20old\x20skill...','undefined','\x20\x20New\x20config\x20(.rabetbase.json):\x20','red','Clean\x20MCP\x20config','@lovrabet/sdk','needed','.lovrabet','.claude/skills/lovrabet','2VcyNXM','filter','cyan','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','yes','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','gray','\x20removed','error','utf8','\x20→\x20keys:\x20','green','6xAsRSY','bold','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','\x20\x20#\x20or','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','includes','skipped\x20(no\x20legacy\x20config)','isDirectory','sdkUpgrade','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','string','white','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','info','needsSkillSwap','dependencies','===\x20Upgrade\x20Summary\x20===','Upgrade\x20completed\x20successfully!','object','no\x20matching\x20entry\x20found','4080462qUwXPR','19408734kVwGrM','\x20removed\x20('];a161_0xcd73=function(){return _0x3be7c0;};return a161_0xcd73();}function tryStat(_0x3b7a3d){try{return statSync(_0x3b7a3d);}catch{return undefined;}}function printSummary(_0x44fd60){const _0x504504=a161_0x5081;console[_0x504504(0xf1)](''),console['log'](a161_0xedf86f['bold'](_0x504504(0xbe))),console[_0x504504(0xf1)]('');for(const _0x132d6f of _0x44fd60){const _0x45fe14=_0x132d6f['ok']?a161_0xedf86f[_0x504504(0xad)]('OK'):a161_0xedf86f[_0x504504(0x9b)](_0x504504(0xd0));console[_0x504504(0xf1)]('\x20\x20'+_0x45fe14+'\x20\x20Step\x20'+_0x132d6f[_0x504504(0xf3)]+':\x20'+_0x132d6f[_0x504504(0xdf)]);if(_0x132d6f[_0x504504(0xd6)])console['log']('\x20\x20\x20\x20\x20\x20\x20'+a161_0xedf86f['gray'](_0x132d6f[_0x504504(0xd6)]));}console['log']('');}export async function upgradeApp(_0x58edeb,_0x15a6ed){const _0x4e6a4b=a161_0x5081,_0x3294fe=process[_0x4e6a4b(0x94)](),_0x16c080=analyse(_0x3294fe),_0x53ca3a=!_0x16c080[_0x4e6a4b(0x93)]&&_0x16c080['oldArtifacts']['length']===0x0&&!_0x16c080[_0x4e6a4b(0x110)]&&!_0x16c080[_0x4e6a4b(0xbc)]&&!_0x16c080[_0x4e6a4b(0xb6)];if(_0x53ca3a){console[_0x4e6a4b(0xf1)](a161_0xedf86f[_0x4e6a4b(0xad)]('No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.'));return;}printReport(_0x16c080);const _0x1324e8=!!(_0x15a6ed[_0x4e6a4b(0xa6)]||_0x15a6ed['Y']||_0x58edeb);if(!_0x1324e8)try{const _0x59f098=await askConfirm(_0x4e6a4b(0xfc));if(!_0x59f098){console[_0x4e6a4b(0xf1)](a161_0xedf86f[_0x4e6a4b(0xa8)](_0x4e6a4b(0xf7)));return;}}catch(_0x2faeb7){if(_0x2faeb7?.['message']==='CANCEL'){console['log'](a161_0xedf86f['gray'](_0x4e6a4b(0xf7)));return;}throw _0x2faeb7;}const _0x47e9b5=[],_0x3e9774=a161_0x35b839({'text':'Step\x201/7:\x20Migrating\x20config...','color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)](),_0x2b2bd1=execConfigMigration(_0x16c080,_0x3294fe);_0x47e9b5[_0x4e6a4b(0xe4)](_0x2b2bd1),_0x3e9774[_0x2b2bd1['ok']?'succeed':_0x4e6a4b(0xdb)](_0x4e6a4b(0xef)+(_0x2b2bd1['detail']??(_0x2b2bd1['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7))));const _0x2fe313=resolve(_0x3294fe,'.lovrabet'),_0x5f45f6=a161_0x35b839({'text':_0x4e6a4b(0xb0),'color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)]();if(existsSync(_0x2fe313))try{rmSync(_0x2fe313,{'recursive':!![],'force':!![]}),_0x5f45f6[_0x4e6a4b(0xd1)](_0x4e6a4b(0xa7)),_0x47e9b5['push']({'step':0x2,'label':_0x4e6a4b(0xcc),'ok':!![]});}catch(_0x1632f0){_0x5f45f6[_0x4e6a4b(0xdb)](_0x4e6a4b(0xb2)+_0x1632f0[_0x4e6a4b(0xf5)]),_0x47e9b5['push']({'step':0x2,'label':_0x4e6a4b(0xcc),'ok':![],'detail':_0x1632f0[_0x4e6a4b(0xf5)]});}else _0x5f45f6[_0x4e6a4b(0xbb)](_0x4e6a4b(0xdd)),_0x47e9b5[_0x4e6a4b(0xe4)]({'step':0x2,'label':_0x4e6a4b(0xcc),'ok':!![],'detail':_0x4e6a4b(0x106)});const _0x197ed7=a161_0x35b839({'text':_0x4e6a4b(0xba),'color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)](),_0x3d59da=execRemoveOldArtifacts(_0x16c080['oldArtifacts']);_0x47e9b5[_0x4e6a4b(0xe4)](_0x3d59da),_0x197ed7[_0x3d59da['ok']?_0x4e6a4b(0xd1):_0x4e6a4b(0xdb)](_0x4e6a4b(0xe0)+(_0x3d59da[_0x4e6a4b(0xd6)]??(_0x3d59da['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7))));const _0x42db00=a161_0x35b839({'text':_0x4e6a4b(0xff),'color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)](),_0x295650=execCleanMcp(_0x16c080);_0x47e9b5[_0x4e6a4b(0xe4)](_0x295650),_0x42db00[_0x295650['ok']?_0x4e6a4b(0xd1):_0x4e6a4b(0xdb)](_0x4e6a4b(0xec)+(_0x295650[_0x4e6a4b(0xd6)]??(_0x295650['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7))));const _0x5454de=a161_0x35b839({'text':_0x4e6a4b(0x98),'color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)](),_0x359d6a=execSkillsRemove(_0x3294fe,_0x1324e8);_0x47e9b5[_0x4e6a4b(0xe4)](_0x359d6a),_0x5454de[_0x359d6a['ok']?_0x4e6a4b(0xd1):'fail'](_0x4e6a4b(0x109)+(_0x359d6a[_0x4e6a4b(0xd6)]??(_0x359d6a['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7))));const _0x1caab0=a161_0x35b839({'text':_0x4e6a4b(0xea),'color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)](),_0x1a6825=execSkillsAdd(_0x3294fe,_0x1324e8);_0x47e9b5['push'](_0x1a6825),_0x1caab0[_0x1a6825['ok']?'succeed':_0x4e6a4b(0xdb)](_0x4e6a4b(0xf9)+(_0x1a6825[_0x4e6a4b(0xd6)]??(_0x1a6825['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7))));const _0x51e723=a161_0x35b839({'text':_0x4e6a4b(0xe3),'color':_0x4e6a4b(0xa3)})['start'](),_0x2a2583=execUpgradeSdk(_0x16c080);_0x47e9b5[_0x4e6a4b(0xe4)](_0x2a2583),_0x51e723[_0x2a2583['ok']?_0x4e6a4b(0xd1):_0x4e6a4b(0xdb)](_0x4e6a4b(0x10e)+(_0x2a2583['detail']??(_0x2a2583['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7)))),printSummary(_0x47e9b5);const _0x52d2bd=_0x47e9b5[_0x4e6a4b(0xd4)](_0x2bbab3=>!_0x2bbab3['ok']);_0x52d2bd?console[_0x4e6a4b(0xf1)](a161_0xedf86f[_0x4e6a4b(0x108)]('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x4e6a4b(0xf1)](a161_0xedf86f[_0x4e6a4b(0xad)](_0x4e6a4b(0xbf))),_0x2a2583['ok']&&_0x16c080[_0x4e6a4b(0xb6)]&&(console[_0x4e6a4b(0xf1)](''),console[_0x4e6a4b(0xf1)](a161_0xedf86f['bold'][_0x4e6a4b(0xa3)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console['log'](a161_0xedf86f[_0x4e6a4b(0xa3)](_0x4e6a4b(0xa5))),console[_0x4e6a4b(0xf1)](''),console[_0x4e6a4b(0xf1)](a161_0xedf86f['white'](_0x4e6a4b(0xee))),console[_0x4e6a4b(0xf1)](a161_0xedf86f[_0x4e6a4b(0xb9)](_0x4e6a4b(0xb1))),console['log'](a161_0xedf86f['white']('\x20\x20bun\x20install')),console[_0x4e6a4b(0xf1)](''));}
1
+ const a161_0x546960=a161_0x36bb;(function(_0x5374c6,_0x531bbf){const _0x4acbcf=a161_0x36bb,_0x599852=_0x5374c6();while(!![]){try{const _0x2fb121=-parseInt(_0x4acbcf(0xff))/0x1+parseInt(_0x4acbcf(0x109))/0x2*(-parseInt(_0x4acbcf(0x113))/0x3)+-parseInt(_0x4acbcf(0xd8))/0x4+-parseInt(_0x4acbcf(0x11c))/0x5+parseInt(_0x4acbcf(0x11f))/0x6*(-parseInt(_0x4acbcf(0x13b))/0x7)+-parseInt(_0x4acbcf(0x12c))/0x8+parseInt(_0x4acbcf(0xcf))/0x9;if(_0x2fb121===_0x531bbf)break;else _0x599852['push'](_0x599852['shift']());}catch(_0x459b93){_0x599852['push'](_0x599852['shift']());}}}(a161_0x56c9,0x8529e));import a161_0x580608 from'chalk';import a161_0x205ec4 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,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=CONFIG_NAMES[a161_0x546960(0x105)](_0x3e91c1=>_0x3e91c1!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x31f0f6){const _0x1b29e5=a161_0x546960,_0x216bb7=[];for(const _0x25d3e3 of Object[_0x1b29e5(0xec)](CORE_IDE_CONFIGS)){if(_0x25d3e3[_0x1b29e5(0xd3)])for(const _0xd08403 of _0x25d3e3[_0x1b29e5(0xd3)]){_0x216bb7['push'](resolve(_0x31f0f6,_0xd08403[_0x1b29e5(0xc3)]));}}return _0x216bb7;}function analyse(_0x1752da){const _0x4aa8c6=a161_0x546960;let _0x36ebaa=null;const _0x17d3fc=resolve(_0x1752da,NEW_CONFIG_NAME),_0x23e190=existsSync(_0x17d3fc);for(const _0x50e566 of LEGACY_CONFIG_NAMES){const _0x4530e1=resolve(_0x1752da,_0x50e566);if(existsSync(_0x4530e1)){const _0x42d64b=readConfigFile(_0x4530e1),_0x42e6de=Object[_0x4aa8c6(0xc9)](_0x42d64b)['filter'](_0x4888c3=>typeof _0x42d64b[_0x4888c3]!=='undefined');_0x36ebaa={'oldPath':_0x4530e1,'hasNewConfig':_0x23e190,'fields':_0x42e6de};break;}}const _0x3e2d62=[],_0xeaaa5e=resolve(_0x1752da,_0x4aa8c6(0x13a));if(existsSync(_0xeaaa5e))_0x3e2d62[_0x4aa8c6(0xf4)](_0xeaaa5e);const _0x5622dd=resolve(_0x1752da,_0x4aa8c6(0xc7));if(existsSync(_0x5622dd))_0x3e2d62[_0x4aa8c6(0xf4)](_0x5622dd);const _0x534b57=resolve(_0x1752da,_0x4aa8c6(0xe8));if(existsSync(_0x534b57))_0x3e2d62[_0x4aa8c6(0xf4)](_0x534b57);for(const _0xb0bc11 of collectIdeSkillFiles(_0x1752da)){if(existsSync(_0xb0bc11))_0x3e2d62['push'](_0xb0bc11);}let _0x5a9519=null;const _0x20086d=resolve(_0x1752da,_0x4aa8c6(0xd9));if(existsSync(_0x20086d))try{const _0x578dcb=JSON[_0x4aa8c6(0x127)](readFileSync(_0x20086d,_0x4aa8c6(0xe7)));if(_0x578dcb?.[_0x4aa8c6(0x145)]&&typeof _0x578dcb['mcpServers']==='object'){const _0x4821=[];for(const [_0x2fb87d,_0x33c6c0]of Object[_0x4aa8c6(0xf0)](_0x578dcb[_0x4aa8c6(0x145)])){const _0x535b78=_0x33c6c0;_0x535b78?.[_0x4aa8c6(0x13e)]&&Array[_0x4aa8c6(0xcb)](_0x535b78['args'])&&_0x535b78[_0x4aa8c6(0x13e)][_0x4aa8c6(0xf7)](_0x4784e4=>typeof _0x4784e4===_0x4aa8c6(0xdd)&&_0x4784e4[_0x4aa8c6(0xf2)](_0x4aa8c6(0x11a)))&&_0x4821[_0x4aa8c6(0xf4)](_0x2fb87d);}_0x4821[_0x4aa8c6(0x134)]>0x0&&(_0x5a9519={'path':_0x20086d,'keys':_0x4821});}}catch{}const _0x3c6a6c=_0x3e2d62[_0x4aa8c6(0x134)]>0x0||_0x36ebaa!==null;let _0x45c926=null;const _0x7e2173=resolve(_0x1752da,'package.json');if(existsSync(_0x7e2173))try{const _0x306cbe=JSON[_0x4aa8c6(0x127)](readFileSync(_0x7e2173,'utf8'));for(const _0x36ccce of[_0x4aa8c6(0xef),_0x4aa8c6(0x123)]){const _0x5e93ff=_0x306cbe?.[_0x36ccce]?.[_0x4aa8c6(0x138)];if(typeof _0x5e93ff===_0x4aa8c6(0xdd)){_0x5e93ff!==_0x4aa8c6(0x114)&&(_0x45c926={'pkgPath':_0x7e2173,'currentVersion':_0x5e93ff,'field':_0x36ccce});break;}}}catch{}return{'configMigration':_0x36ebaa,'oldArtifacts':_0x3e2d62,'oldMcpConfig':_0x5a9519,'needsSkillSwap':_0x3c6a6c,'sdkUpgrade':_0x45c926};}function a161_0x56c9(){const _0x5c5b5d=['===\x20Upgrade\x20Summary\x20===','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','\x20→\x20latest','values','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','info','dependencies','entries','yellow','includes','not\x20needed','push','CANCEL','MCP\x20config:','some','\x20from\x20','object','isDirectory','\x20\x20#\x20or','\x20removed','\x20\x20bun\x20install','Config\x20migration','329986DWhYbo','oldPath','yes','inherit','===\x20Upgrade\x20Analysis\x20===','lovrabet/rabetbase\x20installed\x20globally','filter','Upgrade\x20cancelled.','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','Remove\x20legacy\x20artifacts','2tzTbYt','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','not\x20found\x20(will\x20create)','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Step\x204/7:\x20Cleaning\x20MCP\x20config...','oldMcpConfig','Proceed\x20with\x20upgrade?','\x20\x20Action:\x20delete','red','gray','578997yRVfrr','latest','none\x20found','not\x20found\x20or\x20already\x20at\x20latest','fail','skipped','join','@lovrabet/dataset-mcp-server','\x20\x20Fields\x20to\x20migrate:\x20','3667135EhNIiq','succeed','cyan','1022454czfsip','Step\x205/7:\x20Removing\x20old\x20skill...','\x20\x20New\x20config\x20(.rabetbase.json):\x20','hasNewConfig','devDependencies','Step\x201/7:\x20Migrating\x20config...','log','Legacy\x20artifacts:','parse','configMigration','Upgrade\x20@lovrabet/sdk','.bak','Config\x20file:','8198528VPQOVd','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','done','green','failed','status','needed','length','error','Step\x204/7:\x20MCP\x20config\x20—\x20','skipped\x20(no\x20legacy\x20config)','@lovrabet/sdk','needsSkillSwap','.lovrabet','28baTrQr','Step\x206/7:\x20Installing\x20new\x20skill...','no\x20legacy\x20entry','args','FOUND','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','\x20→\x20keys:\x20','\x20(backup:\x20','cwd','\x20\x20\x20\x20\x20\x20\x20','mcpServers','path','stringify','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','step','.cursor/rules/lovrabet_rules.mdc','[\x22@lovrabet/sdk\x22]:\x20','keys','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','isArray','Install\x20new\x20skill','oldArtifacts','message','34631541lPAzoQ','Step\x201/7:\x20Config\x20migration\x20—\x20','exit\x20','\x20\x20Current\x20version\x20in\x20','files','sdkUpgrade','\x20→\x20','bold','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','1358588ZzJZPd','.cursor/mcp.json','already\x20exists\x20(will\x20merge)','start','lovrabet/rabetbase','string','detail','FAIL','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','Remove\x20.lovrabet/','fields','Clean\x20MCP\x20config','@lovrabet/sdk:','white','utf8','.claude/skills/lovrabet'];a161_0x56c9=function(){return _0x5c5b5d;};return a161_0x56c9();}function printReport(_0x5789b1){const _0x4b69fc=a161_0x546960,{configMigration:_0x2e2f52,oldArtifacts:_0x48d5ea,oldMcpConfig:_0x5ccd93,needsSkillSwap:_0x340496}=_0x5789b1;console['log'](''),console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0xd6)](_0x4b69fc(0x103))),console['log']('');_0x2e2f52?(console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)](_0x4b69fc(0x12b))+('\x20\x20'+a161_0x580608[_0x4b69fc(0xf1)](_0x2e2f52['oldPath']))),console[_0x4b69fc(0x125)](_0x4b69fc(0x121)+(_0x2e2f52[_0x4b69fc(0x122)]?a161_0x580608['green'](_0x4b69fc(0xda)):a161_0x580608[_0x4b69fc(0x112)](_0x4b69fc(0x10b)))),console[_0x4b69fc(0x125)](_0x4b69fc(0x11b)+_0x2e2f52[_0x4b69fc(0xe3)][_0x4b69fc(0x119)](',\x20')),console[_0x4b69fc(0x125)](_0x4b69fc(0x140))):console[_0x4b69fc(0x125)](a161_0x580608['cyan'](_0x4b69fc(0x12b))+'\x20\x20'+a161_0x580608[_0x4b69fc(0x112)]('no\x20legacy\x20config\x20found'));console[_0x4b69fc(0x125)]('');if(_0x48d5ea[_0x4b69fc(0x134)]>0x0){console['log'](a161_0x580608[_0x4b69fc(0x11e)]('Legacy\x20artifacts:'));for(const _0x55dddc of _0x48d5ea){console[_0x4b69fc(0x125)]('\x20\x20'+a161_0x580608[_0x4b69fc(0x111)](_0x4b69fc(0x13f))+'\x20\x20'+_0x55dddc);}console['log'](_0x4b69fc(0x110));}else console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)](_0x4b69fc(0x126))+'\x20\x20'+a161_0x580608[_0x4b69fc(0x112)](_0x4b69fc(0x115)));console['log']('');_0x5ccd93?(console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)](_0x4b69fc(0xf6))+('\x20\x20'+a161_0x580608[_0x4b69fc(0xf1)](_0x5ccd93[_0x4b69fc(0xc3)])+_0x4b69fc(0x141)+_0x5ccd93[_0x4b69fc(0xc9)][_0x4b69fc(0x119)](',\x20'))),console[_0x4b69fc(0x125)]('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)]('MCP\x20config:')+'\x20\x20'+a161_0x580608[_0x4b69fc(0x112)](_0x4b69fc(0x13d)));console['log'](''),console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)]('Skill\x20swap:')+('\x20\x20'+(_0x340496?a161_0x580608['yellow'](_0x4b69fc(0x133)):a161_0x580608[_0x4b69fc(0x130)](_0x4b69fc(0xf3)))));_0x340496&&console[_0x4b69fc(0x125)](_0x4b69fc(0xe1)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x4b69fc(0x125)]('');if(_0x5789b1['sdkUpgrade']){const {currentVersion:_0xa2077f,field:_0x3c1ad7,pkgPath:_0xba676f}=_0x5789b1[_0x4b69fc(0xd4)];console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)](_0x4b69fc(0xe5))+('\x20\x20'+a161_0x580608['yellow'](_0xba676f))),console['log'](_0x4b69fc(0xd2)+_0x3c1ad7+':\x20'+a161_0x580608[_0x4b69fc(0xf1)](_0xa2077f)+_0x4b69fc(0xd5)+a161_0x580608['green'](_0x4b69fc(0x114))),console['log']('\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)');}else console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)]('@lovrabet/sdk:')+'\x20\x20'+a161_0x580608['gray'](_0x4b69fc(0x116)));console[_0x4b69fc(0x125)]('');}function execConfigMigration(_0x7cca7f,_0x4867ea){const _0x51d37d=a161_0x546960,{configMigration:_0x4ddba1}=_0x7cca7f;if(!_0x4ddba1?.[_0x51d37d(0x100)])return{'step':0x1,'label':_0x51d37d(0xfe),'ok':!![],'detail':_0x51d37d(0x137)};const _0x10c3b2=readConfigFile(_0x4ddba1[_0x51d37d(0x100)]),_0x1ca36a=resolve(_0x4867ea,NEW_CONFIG_NAME),_0x4dc36e=_0x4ddba1[_0x51d37d(0x122)]?readConfigFile(_0x1ca36a):{};for(const [_0x776b30,_0x45a4ce]of Object[_0x51d37d(0xf0)](_0x10c3b2)){!(_0x776b30 in _0x4dc36e)&&(_0x4dc36e[_0x776b30]=_0x45a4ce);}writeConfigFile(_0x1ca36a,_0x4dc36e);const _0x42c00b=_0x4ddba1['oldPath']+_0x51d37d(0x12a);return renameSync(_0x4ddba1[_0x51d37d(0x100)],_0x42c00b),{'step':0x1,'label':_0x51d37d(0xfe),'ok':!![],'detail':_0x4ddba1[_0x51d37d(0x100)]+_0x51d37d(0xd5)+_0x1ca36a+_0x51d37d(0x142)+_0x42c00b+')'};}function execRemoveOldArtifacts(_0x29ed53){const _0x91440f=a161_0x546960,_0xec9080=[];for(const _0x4584f8 of _0x29ed53){try{if(!existsSync(_0x4584f8))continue;const _0x13d74e=tryStat(_0x4584f8);_0x13d74e?.[_0x91440f(0xfa)]()?rmSync(_0x4584f8,{'recursive':!![],'force':!![]}):unlinkSync(_0x4584f8);}catch(_0x5c486c){_0xec9080[_0x91440f(0xf4)](_0x4584f8+':\x20'+_0x5c486c['message']);}}return{'step':0x3,'label':_0x91440f(0x108),'ok':_0xec9080[_0x91440f(0x134)]===0x0,'detail':_0xec9080[_0x91440f(0x134)]>0x0?_0x29ed53['length']-_0xec9080[_0x91440f(0x134)]+'/'+_0x29ed53[_0x91440f(0x134)]+'\x20removed\x20('+_0xec9080[_0x91440f(0x119)](';\x20')+')':_0x29ed53[_0x91440f(0x134)]+_0x91440f(0xfc)};}function execCleanMcp(_0x2119d1){const _0x4c8885=a161_0x546960;if(!_0x2119d1[_0x4c8885(0x10e)])return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x4c8885(0x118)};try{const _0x18ffe4=readFileSync(_0x2119d1[_0x4c8885(0x10e)][_0x4c8885(0xc3)],'utf8'),_0x15a900=JSON[_0x4c8885(0x127)](_0x18ffe4);if(_0x15a900?.['mcpServers']&&typeof _0x15a900[_0x4c8885(0x145)]===_0x4c8885(0xf9)){const _0x178c1e=[];for(const [_0x42adf2,_0x346300]of Object[_0x4c8885(0xf0)](_0x15a900['mcpServers'])){_0x346300?.['args']&&Array[_0x4c8885(0xcb)](_0x346300['args'])&&_0x346300[_0x4c8885(0x13e)][_0x4c8885(0xf7)](_0x1ed975=>typeof _0x1ed975==='string'&&_0x1ed975[_0x4c8885(0xf2)](_0x4c8885(0x11a)))&&_0x178c1e[_0x4c8885(0xf4)](_0x42adf2);}for(const _0x1fc04c of _0x178c1e){delete _0x15a900[_0x4c8885(0x145)][_0x1fc04c];}return _0x178c1e[_0x4c8885(0x134)]>0x0&&writeFileSync(_0x2119d1['oldMcpConfig'][_0x4c8885(0xc3)],JSON[_0x4c8885(0xc4)](_0x15a900,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x4c8885(0xe4),'ok':!![],'detail':'removed\x20'+_0x178c1e[_0x4c8885(0x119)](',\x20')+_0x4c8885(0xf8)+_0x2119d1[_0x4c8885(0x10e)][_0x4c8885(0xc3)]};}return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x17f693){return{'step':0x4,'label':_0x4c8885(0xe4),'ok':![],'detail':_0x17f693['message']};}}function execSkillsRemove(_0x10085c,_0x52c33e){const _0x37dd40=a161_0x546960,_0x3333ee=runNpxSkillsRemove(_0x10085c,{'stdio':'inherit','yes':_0x52c33e});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x3333ee['ok'],'detail':_0x3333ee['ok']?'lovrabet/lovrabet-skill\x20removed':_0x3333ee[_0x37dd40(0x135)]??_0x37dd40(0xd1)+_0x3333ee['status']};}function execSkillsAdd(_0x3ca6a7,_0x40463c){const _0x425fdb=a161_0x546960,_0x17059e=runNpxSkillsAddGlobal(_0x3ca6a7,_0x425fdb(0xdc),{'stdio':_0x425fdb(0x102),'yes':_0x40463c});return{'step':0x6,'label':_0x425fdb(0xcc),'ok':_0x17059e['ok'],'detail':_0x17059e['ok']?_0x425fdb(0x104):_0x17059e['error']??'exit\x20'+_0x17059e[_0x425fdb(0x132)]};}function execUpgradeSdk(_0x44c3d2){const _0xbe4a78=a161_0x546960;if(!_0x44c3d2[_0xbe4a78(0xd4)])return{'step':0x7,'label':_0xbe4a78(0x129),'ok':!![],'detail':_0xbe4a78(0xc5)};const {pkgPath:_0x5a5c68,currentVersion:_0x2f5627,field:_0x8a65fb}=_0x44c3d2[_0xbe4a78(0xd4)];try{const _0x131368=readFileSync(_0x5a5c68,_0xbe4a78(0xe7)),_0x282baf=JSON[_0xbe4a78(0x127)](_0x131368);return _0x282baf[_0x8a65fb]['@lovrabet/sdk']=_0xbe4a78(0x114),writeFileSync(_0x5a5c68,JSON['stringify'](_0x282baf,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x8a65fb+_0xbe4a78(0xc8)+_0x2f5627+_0xbe4a78(0xeb)};}catch(_0x213aee){return{'step':0x7,'label':_0xbe4a78(0x129),'ok':![],'detail':_0x213aee[_0xbe4a78(0xce)]};}}function tryStat(_0x20bb03){try{return statSync(_0x20bb03);}catch{return undefined;}}function a161_0x36bb(_0xffcdbd,_0x27620f){_0xffcdbd=_0xffcdbd-0xc3;const _0x56c9f5=a161_0x56c9();let _0x36bb0f=_0x56c9f5[_0xffcdbd];return _0x36bb0f;}function printSummary(_0x446ff9){const _0x2e4055=a161_0x546960;console['log'](''),console[_0x2e4055(0x125)](a161_0x580608[_0x2e4055(0xd6)](_0x2e4055(0xe9))),console[_0x2e4055(0x125)]('');for(const _0x4095c8 of _0x446ff9){const _0x404950=_0x4095c8['ok']?a161_0x580608[_0x2e4055(0x130)]('OK'):a161_0x580608[_0x2e4055(0x111)](_0x2e4055(0xdf));console[_0x2e4055(0x125)]('\x20\x20'+_0x404950+'\x20\x20Step\x20'+_0x4095c8[_0x2e4055(0xc6)]+':\x20'+_0x4095c8['label']);if(_0x4095c8['detail'])console[_0x2e4055(0x125)](_0x2e4055(0x144)+a161_0x580608['gray'](_0x4095c8[_0x2e4055(0xde)]));}console[_0x2e4055(0x125)]('');}export async function upgradeApp(_0x2690fd,_0x153419){const _0x1e26c1=a161_0x546960,_0x325bad=process[_0x1e26c1(0x143)](),_0x3118d1=analyse(_0x325bad),_0x129547=!_0x3118d1[_0x1e26c1(0x128)]&&_0x3118d1[_0x1e26c1(0xcd)][_0x1e26c1(0x134)]===0x0&&!_0x3118d1[_0x1e26c1(0x10e)]&&!_0x3118d1[_0x1e26c1(0x139)]&&!_0x3118d1[_0x1e26c1(0xd4)];if(_0x129547){console[_0x1e26c1(0x125)](a161_0x580608[_0x1e26c1(0x130)](_0x1e26c1(0xe0)));return;}printReport(_0x3118d1);const _0x1e0aa5=!!(_0x153419[_0x1e26c1(0x101)]||_0x153419['Y']||_0x2690fd);if(!_0x1e0aa5)try{const _0x301c2c=await askConfirm(_0x1e26c1(0x10f));if(!_0x301c2c){console['log'](a161_0x580608[_0x1e26c1(0x112)](_0x1e26c1(0x106)));return;}}catch(_0x5e13de){if(_0x5e13de?.[_0x1e26c1(0xce)]===_0x1e26c1(0xf5)){console[_0x1e26c1(0x125)](a161_0x580608[_0x1e26c1(0x112)]('Upgrade\x20cancelled.'));return;}throw _0x5e13de;}const _0x62d48d=[],_0x473834=a161_0x205ec4({'text':_0x1e26c1(0x124),'color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)](),_0x38e888=execConfigMigration(_0x3118d1,_0x325bad);_0x62d48d[_0x1e26c1(0xf4)](_0x38e888),_0x473834[_0x38e888['ok']?_0x1e26c1(0x11d):'fail'](_0x1e26c1(0xd0)+(_0x38e888['detail']??(_0x38e888['ok']?_0x1e26c1(0x12f):_0x1e26c1(0x131))));const _0x41348a=resolve(_0x325bad,'.lovrabet'),_0x2e9a80=a161_0x205ec4({'text':_0x1e26c1(0x107),'color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)]();if(existsSync(_0x41348a))try{rmSync(_0x41348a,{'recursive':!![],'force':!![]}),_0x2e9a80[_0x1e26c1(0x11d)]('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x62d48d[_0x1e26c1(0xf4)]({'step':0x2,'label':_0x1e26c1(0xe2),'ok':!![]});}catch(_0x40320e){_0x2e9a80[_0x1e26c1(0x117)](_0x1e26c1(0x12e)+_0x40320e[_0x1e26c1(0xce)]),_0x62d48d['push']({'step':0x2,'label':_0x1e26c1(0xe2),'ok':![],'detail':_0x40320e[_0x1e26c1(0xce)]});}else _0x2e9a80[_0x1e26c1(0xee)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x62d48d['push']({'step':0x2,'label':_0x1e26c1(0xe2),'ok':!![],'detail':_0x1e26c1(0x118)});const _0x1ceed6=a161_0x205ec4({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)](),_0x220d53=execRemoveOldArtifacts(_0x3118d1['oldArtifacts']);_0x62d48d[_0x1e26c1(0xf4)](_0x220d53),_0x1ceed6[_0x220d53['ok']?_0x1e26c1(0x11d):'fail'](_0x1e26c1(0x10a)+(_0x220d53[_0x1e26c1(0xde)]??(_0x220d53['ok']?_0x1e26c1(0x12f):_0x1e26c1(0x131))));const _0x585eae=a161_0x205ec4({'text':_0x1e26c1(0x10d),'color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)](),_0x58f141=execCleanMcp(_0x3118d1);_0x62d48d[_0x1e26c1(0xf4)](_0x58f141),_0x585eae[_0x58f141['ok']?_0x1e26c1(0x11d):_0x1e26c1(0x117)](_0x1e26c1(0x136)+(_0x58f141[_0x1e26c1(0xde)]??(_0x58f141['ok']?'done':'failed')));const _0x45dc1c=a161_0x205ec4({'text':_0x1e26c1(0x120),'color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)](),_0x4979fb=execSkillsRemove(_0x325bad,_0x1e0aa5);_0x62d48d[_0x1e26c1(0xf4)](_0x4979fb),_0x45dc1c[_0x4979fb['ok']?'succeed':'fail'](_0x1e26c1(0x12d)+(_0x4979fb['detail']??(_0x4979fb['ok']?_0x1e26c1(0x12f):_0x1e26c1(0x131))));const _0x2c05c3=a161_0x205ec4({'text':_0x1e26c1(0x13c),'color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)](),_0x835d01=execSkillsAdd(_0x325bad,_0x1e0aa5);_0x62d48d['push'](_0x835d01),_0x2c05c3[_0x835d01['ok']?_0x1e26c1(0x11d):_0x1e26c1(0x117)](_0x1e26c1(0xd7)+(_0x835d01[_0x1e26c1(0xde)]??(_0x835d01['ok']?_0x1e26c1(0x12f):_0x1e26c1(0x131))));const _0x224d82=a161_0x205ec4({'text':_0x1e26c1(0xea),'color':_0x1e26c1(0x11e)})['start'](),_0x480b16=execUpgradeSdk(_0x3118d1);_0x62d48d[_0x1e26c1(0xf4)](_0x480b16),_0x224d82[_0x480b16['ok']?_0x1e26c1(0x11d):_0x1e26c1(0x117)](_0x1e26c1(0xed)+(_0x480b16[_0x1e26c1(0xde)]??(_0x480b16['ok']?_0x1e26c1(0x12f):_0x1e26c1(0x131)))),printSummary(_0x62d48d);const _0x1fe02a=_0x62d48d[_0x1e26c1(0xf7)](_0x1913a6=>!_0x1913a6['ok']);_0x1fe02a?console['log'](a161_0x580608[_0x1e26c1(0xf1)](_0x1e26c1(0xca))):console['log'](a161_0x580608['green']('Upgrade\x20completed\x20successfully!')),_0x480b16['ok']&&_0x3118d1[_0x1e26c1(0xd4)]&&(console[_0x1e26c1(0x125)](''),console[_0x1e26c1(0x125)](a161_0x580608[_0x1e26c1(0xd6)][_0x1e26c1(0x11e)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x1e26c1(0x125)](a161_0x580608['cyan'](_0x1e26c1(0x10c))),console[_0x1e26c1(0x125)](''),console[_0x1e26c1(0x125)](a161_0x580608['white']('\x20\x20npm\x20install')),console[_0x1e26c1(0x125)](a161_0x580608['white'](_0x1e26c1(0xfb))),console[_0x1e26c1(0x125)](a161_0x580608[_0x1e26c1(0xe6)](_0x1e26c1(0xfd))),console[_0x1e26c1(0x125)](''));}
@@ -1 +1 @@
1
- const a162_0x488395=a162_0x2dac;(function(_0x3e1b5a,_0x4bb0af){const _0x543fe9=a162_0x2dac,_0x3b4ad8=_0x3e1b5a();while(!![]){try{const _0x2e5d16=-parseInt(_0x543fe9(0xc7))/0x1+parseInt(_0x543fe9(0x84))/0x2*(parseInt(_0x543fe9(0x86))/0x3)+parseInt(_0x543fe9(0x99))/0x4+parseInt(_0x543fe9(0xd4))/0x5+-parseInt(_0x543fe9(0xb7))/0x6*(parseInt(_0x543fe9(0x91))/0x7)+-parseInt(_0x543fe9(0xac))/0x8*(-parseInt(_0x543fe9(0xb6))/0x9)+parseInt(_0x543fe9(0xd1))/0xa*(-parseInt(_0x543fe9(0xab))/0xb);if(_0x2e5d16===_0x4bb0af)break;else _0x3b4ad8['push'](_0x3b4ad8['shift']());}catch(_0x373365){_0x3b4ad8['push'](_0x3b4ad8['shift']());}}}(a162_0x48e3,0x8ce7b));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{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/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{permitDefinitions}from'../commands/permit/index.js';function a162_0x48e3(){const _0x3e92bf=['build','2191185mmknEW','rabetbase\x20cli-skill\x20install','Database\x20Connections','Code\x20Generation','rabetbase\x20sql\x20create','bff:new','from','<script>','command','OCR','rabetbase\x20app\x20list\x20--remote','sql:new','skills:install','CLI\x20Built-in\x20Skill','rabetbase\x20project\x20create\x20<project-name>','Run\x20any\x20package.json\x20script','678086BEQDHe','isSingleCommand','3pKFfFd','Self\x20Update','create','API\x20Development','Smart\x20List\x20Pages','Run\x20Scripts','map','risk','rabetbase\x20kb\x20update','rabetbase\x20auth\x20logout','run','42gltirv','rabetbase\x20kb\x20create','knowledge-base:create','Use\x20`','Schema','Platform\x20Issue','Dataset\x20&\x20Operations','rabetbase\x20workspace\x20use\x20--app\x20<name>','2852396ithiJB','rabetbase\x20workspace\x20remove\x20<name>','rabetbase\x20kb\x20list','rabetbase\x20workspace\x20add\x20<name>\x20--appcode\x20<code>','skill:','wildcardDef','SQL\x20Queries','project:init','set','get','BFF\x20Scripts','\x20\x20[','app:use','`rabetbase\x20','commands','Logs','knowledge-base:update','rabetbase\x20run\x20build','319uEqFHb','2639192jPpCkc','knowledge-base:delete','\x20\x20[high-risk-write]','defaultCommand','app:remote','hidden','read','`\x20instead.','File','Async\x20Tasks','9AkooFR','43242LZQgRq','menu:update','Notification\x20Configuration','rabetbase\x20workspace\x20init\x20--appcode\x20<code>','skill:install','show','Instant\x20API','preview','logout','rabetbase\x20kb\x20detail','rabetbase\x20bff\x20create','rabetbase\x20run\x20preview','skills:','login','Quick\x20Start','Permissions','19705YoMYes','Menu','Authentication','`\x20has\x20been\x20removed.','sql:save','Project','knowledge-base:detail','service','write','values','406960FqPhEc','Diagnostics'];a162_0x48e3=function(){return _0x3e92bf;};return a162_0x48e3();}import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{kbDefinitions}from'../commands/kb/index.js';import{notificationDefinitions}from'../commands/notification/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';function a162_0x2dac(_0x2b5bef,_0x209c0b){_0x2b5bef=_0x2b5bef-0x79;const _0x48e32f=a162_0x48e3();let _0x2dac24=_0x48e32f[_0x2b5bef];return _0x2dac24;}import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/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(_0x4adeb8){const _0x16523b=a162_0x2dac;for(const _0x13e74f of _0x4adeb8){definitions[_0x16523b(0xa1)](_0x13e74f[_0x16523b(0xce)]+':'+_0x13e74f['command'],_0x13e74f);let _0x28d1b6=serviceGroups[_0x16523b(0xa2)](_0x13e74f[_0x16523b(0xce)]);!_0x28d1b6&&(_0x28d1b6=[],serviceGroups[_0x16523b(0xa1)](_0x13e74f[_0x16523b(0xce)],_0x28d1b6)),_0x28d1b6['push'](_0x13e74f);}}function registerDeclarativeService(_0x64781b,_0x47736d,_0xa9aaa3){const _0x15bb90=a162_0x2dac;registerDefinitions(_0x47736d);_0xa9aaa3?.[_0x15bb90(0x9e)]&&registerDefinitions([_0xa9aaa3['wildcardDef']]);const _0x19e181=_0x53eb99=>_0x53eb99===_0x15bb90(0xb2)?'':_0x53eb99===_0x15bb90(0xcf)?'\x20\x20[write]':_0x15bb90(0xae),_0x3fde63={'service':_0x47736d[0x0]['service'],'label':_0x64781b,'commands':_0x47736d['filter'](_0x4c0107=>!_0x4c0107[_0x15bb90(0xb1)])[_0x15bb90(0x8c)](_0x1b6f78=>({'command':_0x1b6f78[_0x15bb90(0x7c)],'description':_0x1b6f78['description'],'tag':_0x19e181(_0x1b6f78[_0x15bb90(0x8d)])})),'declarative':!![],'defaultCommand':_0xa9aaa3?.[_0x15bb90(0xaf)]??(_0xa9aaa3?.[_0x15bb90(0x85)]?_0x47736d[0x0]['command']:undefined),'wildcardDef':_0xa9aaa3?.[_0x15bb90(0x9e)],'isSingleCommand':_0xa9aaa3?.[_0x15bb90(0x85)]};serviceRegistry['push'](_0x3fde63),serviceByName[_0x15bb90(0xa1)](_0x3fde63[_0x15bb90(0xce)],_0x3fde63);}registerDeclarativeService(a162_0x488395(0xc5),initDefinitions,{'defaultCommand':a162_0x488395(0x90),'isSingleCommand':!![]}),registerDeclarativeService(a162_0x488395(0xcc),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService(a162_0x488395(0xc9),authDefinitions,{'defaultCommand':a162_0x488395(0xc4)}),registerDeclarativeService('Tenant\x20Members',tenantDefinitions),registerDeclarativeService(a162_0x488395(0x97),datasetDefinitions),registerDeclarativeService(a162_0x488395(0x8a),pageDefinitions),registerDeclarativeService(a162_0x488395(0x89),apiDefinitions),registerDeclarativeService(a162_0x488395(0xbd),dataDefinitions),registerDeclarativeService(a162_0x488395(0xa3),bffDefinitions),registerDeclarativeService(a162_0x488395(0xb9),notificationDefinitions),registerDeclarativeService(a162_0x488395(0x9f),sqlDefinitions),registerDeclarativeService(a162_0x488395(0xd6),dbDefinitions),registerDeclarativeService(a162_0x488395(0xc8),menuDefinitions),registerDeclarativeService(a162_0x488395(0xb5),taskDefinitions),registerDeclarativeService('Roles',roleDefinitions),registerDeclarativeService(a162_0x488395(0xc6),permitDefinitions),registerDeclarativeService('Runtime\x20App\x20Config\x20Management',appConfigDefinitions),registerDeclarativeService('Company\x20Knowledge\x20Base',kbDefinitions),registerDeclarativeService(a162_0x488395(0x96),issueDefinitions),registerDeclarativeService(a162_0x488395(0xb4),fileDefinitions),registerDeclarativeService(a162_0x488395(0x7d),ocrDefinitions),registerDeclarativeService(a162_0x488395(0xd7),codegenDefinitions),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService(a162_0x488395(0xd2),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x488395(0x95),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x488395(0x87),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x488395(0x81),cliSkillDefinitions,{'defaultCommand':'install'}),registerDeclarativeService(a162_0x488395(0xa8),logsDefinitions,{'defaultCommand':a162_0x488395(0xbc)}),registerDeclarativeService(a162_0x488395(0x8b),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry['length']-0x1];last[a162_0x488395(0xa7)]=[{'command':a162_0x488395(0x7b),'description':a162_0x488395(0x83),'tag':a162_0x488395(0xa4)+runDefinition[a162_0x488395(0x8d)]+']'}];}const REMOVED_COMMAND_REPLACEMENTS=new Map([[a162_0x488395(0xcb),'rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml'],[a162_0x488395(0x79),a162_0x488395(0xc1)],[a162_0x488395(0x7f),a162_0x488395(0xd8)],[a162_0x488395(0xb8),'rabetbase\x20menu\x20asset-update'],[a162_0x488395(0xa0),a162_0x488395(0xba)],[a162_0x488395(0x9d),a162_0x488395(0xd5)],[a162_0x488395(0xbb),a162_0x488395(0xd5)],[a162_0x488395(0xc3),a162_0x488395(0xd5)],[a162_0x488395(0x80),a162_0x488395(0xd5)],[a162_0x488395(0xb0),a162_0x488395(0x7e)],[a162_0x488395(0xa5),a162_0x488395(0x98)],['app:add',a162_0x488395(0x9c)],['app:remove',a162_0x488395(0x9a)],['knowledge-base:list',a162_0x488395(0x9b)],[a162_0x488395(0xcd),a162_0x488395(0xc0)],[a162_0x488395(0x93),a162_0x488395(0x92)],[a162_0x488395(0xa9),a162_0x488395(0x8e)],[a162_0x488395(0xad),'rabetbase\x20kb\x20delete']]),REMOVED_FLAT_COMMAND_REPLACEMENTS=new Map([[a162_0x488395(0x88),a162_0x488395(0x82)],['start','rabetbase\x20run\x20start'],[a162_0x488395(0xd3),a162_0x488395(0xaa)],[a162_0x488395(0xbe),a162_0x488395(0xc2)],[a162_0x488395(0xbf),a162_0x488395(0x8f)]]);export function resolveRemovedCommand(_0x55fc0e,_0x10b63b){const _0x1fac9e=a162_0x488395;if(!_0x55fc0e)return undefined;const _0x2a25f7=REMOVED_COMMAND_REPLACEMENTS[_0x1fac9e(0xa2)](_0x55fc0e+':'+(_0x10b63b??'')),_0x3397c1=REMOVED_FLAT_COMMAND_REPLACEMENTS[_0x1fac9e(0xa2)](_0x55fc0e),_0xaba252=_0x2a25f7??_0x3397c1;if(!_0xaba252)return undefined;const _0x336b0e=_0x3397c1?_0x55fc0e:_0x10b63b?_0x55fc0e+'\x20'+_0x10b63b:_0x55fc0e;return{'command':_0x336b0e,'message':_0x1fac9e(0xa6)+_0x336b0e+_0x1fac9e(0xca),'hint':_0x1fac9e(0x94)+_0xaba252+_0x1fac9e(0xb3)};}export function findDefinition(_0x5b7771,_0x179be8){const _0x54a9ff=a162_0x488395;return definitions[_0x54a9ff(0xa2)](_0x5b7771+':'+_0x179be8);}export function isKnownService(_0x141a17){return serviceByName['has'](_0x141a17);}export function isDeclarativeService(_0x2f9d53){const _0x3daaf7=a162_0x488395;return serviceGroups['has'](_0x2f9d53)||serviceByName[_0x3daaf7(0xa2)](_0x2f9d53)?.[_0x3daaf7(0x9e)]!==undefined;}export function getServiceEntry(_0x10e63a){const _0x3657d9=a162_0x488395;return serviceByName[_0x3657d9(0xa2)](_0x10e63a);}export function getLegacyHandler(_0x3456d6,_0x43c754){return undefined;}export function getAllDefinitions(){const _0x3557c8=a162_0x488395;return Array[_0x3557c8(0x7a)](definitions[_0x3557c8(0xd0)]());}
1
+ const a162_0x4e3059=a162_0x3a34;(function(_0x27be71,_0x1c812e){const _0x53750b=a162_0x3a34,_0x48dad9=_0x27be71();while(!![]){try{const _0x40e81f=parseInt(_0x53750b(0x19d))/0x1+parseInt(_0x53750b(0x18f))/0x2+parseInt(_0x53750b(0x15a))/0x3*(parseInt(_0x53750b(0x1a7))/0x4)+parseInt(_0x53750b(0x197))/0x5+parseInt(_0x53750b(0x16c))/0x6+-parseInt(_0x53750b(0x19f))/0x7+-parseInt(_0x53750b(0x1a0))/0x8;if(_0x40e81f===_0x1c812e)break;else _0x48dad9['push'](_0x48dad9['shift']());}catch(_0x15d41c){_0x48dad9['push'](_0x48dad9['shift']());}}}(a162_0x482e,0xafa12));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{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/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{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';function a162_0x3a34(_0x50b047,_0x168860){_0x50b047=_0x50b047-0x150;const _0x482ebc=a162_0x482e();let _0x3a348e=_0x482ebc[_0x50b047];return _0x3a348e;}import{kbDefinitions}from'../commands/kb/index.js';import{notificationDefinitions}from'../commands/notification/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{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/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(_0x18a0f1){const _0x55bece=a162_0x3a34;for(const _0x437074 of _0x18a0f1){definitions['set'](_0x437074[_0x55bece(0x151)]+':'+_0x437074[_0x55bece(0x17b)],_0x437074);let _0x324b7a=serviceGroups[_0x55bece(0x15f)](_0x437074[_0x55bece(0x151)]);!_0x324b7a&&(_0x324b7a=[],serviceGroups[_0x55bece(0x199)](_0x437074[_0x55bece(0x151)],_0x324b7a)),_0x324b7a[_0x55bece(0x1a6)](_0x437074);}}function registerDeclarativeService(_0x52dd90,_0x6280b3,_0x16a9ef){const _0x4a39a3=a162_0x3a34;registerDefinitions(_0x6280b3);_0x16a9ef?.[_0x4a39a3(0x19e)]&&registerDefinitions([_0x16a9ef[_0x4a39a3(0x19e)]]);const _0x3f5a5e=_0x11289b=>_0x11289b==='read'?'':_0x11289b===_0x4a39a3(0x16b)?_0x4a39a3(0x187):'\x20\x20[high-risk-write]',_0x4dfeee={'service':_0x6280b3[0x0][_0x4a39a3(0x151)],'label':_0x52dd90,'commands':_0x6280b3[_0x4a39a3(0x168)](_0x134676=>!_0x134676['hidden'])[_0x4a39a3(0x165)](_0x4548c7=>({'command':_0x4548c7[_0x4a39a3(0x17b)],'description':_0x4548c7[_0x4a39a3(0x158)],'tag':_0x3f5a5e(_0x4548c7['risk'])})),'declarative':!![],'defaultCommand':_0x16a9ef?.[_0x4a39a3(0x194)]??(_0x16a9ef?.[_0x4a39a3(0x17c)]?_0x6280b3[0x0][_0x4a39a3(0x17b)]:undefined),'wildcardDef':_0x16a9ef?.[_0x4a39a3(0x19e)],'isSingleCommand':_0x16a9ef?.[_0x4a39a3(0x17c)]};serviceRegistry['push'](_0x4dfeee),serviceByName[_0x4a39a3(0x199)](_0x4dfeee['service'],_0x4dfeee);}registerDeclarativeService(a162_0x4e3059(0x170),initDefinitions,{'defaultCommand':'run','isSingleCommand':!![]}),registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a162_0x4e3059(0x19a),workspaceDefinitions),registerDeclarativeService(a162_0x4e3059(0x157),appDefinitions),registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':'login'}),registerDeclarativeService(a162_0x4e3059(0x16a),tenantDefinitions),registerDeclarativeService(a162_0x4e3059(0x180),datasetDefinitions),registerDeclarativeService(a162_0x4e3059(0x156),pageDefinitions),registerDeclarativeService(a162_0x4e3059(0x19b),apiDefinitions),registerDeclarativeService('Instant\x20API',dataDefinitions),registerDeclarativeService('BFF\x20Scripts',bffDefinitions),registerDeclarativeService('Notification\x20Configuration',notificationDefinitions),registerDeclarativeService(a162_0x4e3059(0x176),sqlDefinitions),registerDeclarativeService(a162_0x4e3059(0x190),dbDefinitions),registerDeclarativeService(a162_0x4e3059(0x152),menuDefinitions),registerDeclarativeService(a162_0x4e3059(0x1a4),taskDefinitions),registerDeclarativeService(a162_0x4e3059(0x16f),roleDefinitions),registerDeclarativeService(a162_0x4e3059(0x16d),permitDefinitions),registerDeclarativeService(a162_0x4e3059(0x166),appConfigDefinitions),registerDeclarativeService(a162_0x4e3059(0x185),kbDefinitions),registerDeclarativeService(a162_0x4e3059(0x174),issueDefinitions),registerDeclarativeService('File',fileDefinitions),registerDeclarativeService(a162_0x4e3059(0x15e),ocrDefinitions),registerDeclarativeService(a162_0x4e3059(0x15c),codegenDefinitions),registerDeclarativeService(a162_0x4e3059(0x186),configDefinitions),registerDeclarativeService(a162_0x4e3059(0x153),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x4e3059(0x184),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x4e3059(0x18c),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x4e3059(0x167),cliSkillDefinitions,{'defaultCommand':a162_0x4e3059(0x17d)}),registerDeclarativeService('Logs',logsDefinitions,{'defaultCommand':'show'}),registerDeclarativeService(a162_0x4e3059(0x178),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a162_0x4e3059(0x192)]-0x1];last[a162_0x4e3059(0x196)]=[{'command':a162_0x4e3059(0x18a),'description':a162_0x4e3059(0x160),'tag':'\x20\x20['+runDefinition[a162_0x4e3059(0x195)]+']'}];}const REMOVED_COMMAND_REPLACEMENTS=new Map([[a162_0x4e3059(0x177),'rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml'],['bff:new',a162_0x4e3059(0x175)],[a162_0x4e3059(0x19c),a162_0x4e3059(0x155)],[a162_0x4e3059(0x171),'rabetbase\x20menu\x20asset-update'],[a162_0x4e3059(0x172),'rabetbase\x20workspace\x20init\x20--appcode\x20<code>'],[a162_0x4e3059(0x163),'rabetbase\x20cli-skill\x20install'],[a162_0x4e3059(0x164),a162_0x4e3059(0x18e)],[a162_0x4e3059(0x188),a162_0x4e3059(0x18e)],['skills:install','rabetbase\x20cli-skill\x20install'],[a162_0x4e3059(0x183),a162_0x4e3059(0x169)],['app:use','rabetbase\x20workspace\x20use\x20--app\x20<name>'],[a162_0x4e3059(0x173),a162_0x4e3059(0x1a5)],[a162_0x4e3059(0x179),a162_0x4e3059(0x191)],[a162_0x4e3059(0x15d),a162_0x4e3059(0x16e)],['knowledge-base:detail',a162_0x4e3059(0x193)],[a162_0x4e3059(0x18b),a162_0x4e3059(0x189)],['knowledge-base:update',a162_0x4e3059(0x1a2)],[a162_0x4e3059(0x1a1),a162_0x4e3059(0x17e)]]),REMOVED_FLAT_COMMAND_REPLACEMENTS=new Map([['create',a162_0x4e3059(0x1a3)],[a162_0x4e3059(0x150),a162_0x4e3059(0x159)],[a162_0x4e3059(0x198),a162_0x4e3059(0x18d)],['preview',a162_0x4e3059(0x17a)],[a162_0x4e3059(0x161),a162_0x4e3059(0x154)]]);function a162_0x482e(){const _0xed8d76=['knowledge-base:create','Self\x20Update','rabetbase\x20run\x20build','rabetbase\x20cli-skill\x20install','2501900sUtlrS','Database\x20Connections','rabetbase\x20workspace\x20remove\x20<name>','length','rabetbase\x20kb\x20detail','defaultCommand','risk','commands','6134170yeCqHB','build','set','Workspace','API\x20Development','sql:new','633992CeQFMD','wildcardDef','131915iVRRiG','25147816qVApNE','knowledge-base:delete','rabetbase\x20kb\x20update','rabetbase\x20project\x20create\x20<project-name>','Async\x20Tasks','rabetbase\x20workspace\x20add\x20<name>\x20--appcode\x20<code>','push','4EJiBGl','start','service','Menu','Diagnostics','rabetbase\x20auth\x20logout','rabetbase\x20sql\x20create','Smart\x20List\x20Pages','App\x20Management','description','rabetbase\x20run\x20start','1268127bGmajK','Use\x20`','Code\x20Generation','knowledge-base:list','OCR','get','Run\x20any\x20package.json\x20script','logout','`\x20instead.','skill:','skill:install','map','Runtime\x20App\x20Config\x20Management','CLI\x20Built-in\x20Skill','filter','rabetbase\x20app\x20list\x20--remote','Tenant\x20Members','write','2083290cUClud','Permissions','rabetbase\x20kb\x20list','Roles','Quick\x20Start','menu:update','project:init','app:add','Platform\x20Issue','rabetbase\x20bff\x20create','SQL\x20Queries','sql:save','Run\x20Scripts','app:remove','rabetbase\x20run\x20preview','command','isSingleCommand','install','rabetbase\x20kb\x20delete','has','Dataset\x20&\x20Operations','`rabetbase\x20','values','app:remote','Schema','Company\x20Knowledge\x20Base','Configuration','\x20\x20[write]','skills:','rabetbase\x20kb\x20create','<script>'];a162_0x482e=function(){return _0xed8d76;};return a162_0x482e();}export function resolveRemovedCommand(_0x1842db,_0xee84be){const _0x39cfa4=a162_0x4e3059;if(!_0x1842db)return undefined;const _0x18fcc7=REMOVED_COMMAND_REPLACEMENTS[_0x39cfa4(0x15f)](_0x1842db+':'+(_0xee84be??'')),_0x25d585=REMOVED_FLAT_COMMAND_REPLACEMENTS[_0x39cfa4(0x15f)](_0x1842db),_0x476835=_0x18fcc7??_0x25d585;if(!_0x476835)return undefined;const _0x3b9af5=_0x25d585?_0x1842db:_0xee84be?_0x1842db+'\x20'+_0xee84be:_0x1842db;return{'command':_0x3b9af5,'message':_0x39cfa4(0x181)+_0x3b9af5+'`\x20has\x20been\x20removed.','hint':_0x39cfa4(0x15b)+_0x476835+_0x39cfa4(0x162)};}export function findDefinition(_0x2f1f72,_0x42e278){return definitions['get'](_0x2f1f72+':'+_0x42e278);}export function isKnownService(_0x509d11){const _0x342ac8=a162_0x4e3059;return serviceByName[_0x342ac8(0x17f)](_0x509d11);}export function isDeclarativeService(_0x1ed702){const _0x52fa41=a162_0x4e3059;return serviceGroups[_0x52fa41(0x17f)](_0x1ed702)||serviceByName[_0x52fa41(0x15f)](_0x1ed702)?.['wildcardDef']!==undefined;}export function getServiceEntry(_0x4253fc){const _0x39f124=a162_0x4e3059;return serviceByName[_0x39f124(0x15f)](_0x4253fc);}export function getLegacyHandler(_0x1be9a0,_0x1140a2){return undefined;}export function getAllDefinitions(){const _0x35b228=a162_0x4e3059;return Array['from'](definitions[_0x35b228(0x182)]());}
@@ -1 +1 @@
1
- const a163_0x7bdea0=a163_0x40e0;(function(_0xb176b9,_0x5e686e){const _0x4ff845=a163_0x40e0,_0x2370e6=_0xb176b9();while(!![]){try{const _0x21e9af=-parseInt(_0x4ff845(0x106))/0x1+-parseInt(_0x4ff845(0x117))/0x2*(parseInt(_0x4ff845(0x107))/0x3)+parseInt(_0x4ff845(0x116))/0x4*(parseInt(_0x4ff845(0xff))/0x5)+-parseInt(_0x4ff845(0x108))/0x6+parseInt(_0x4ff845(0x109))/0x7*(parseInt(_0x4ff845(0x105))/0x8)+parseInt(_0x4ff845(0x111))/0x9+parseInt(_0x4ff845(0x10c))/0xa;if(_0x21e9af===_0x5e686e)break;else _0x2370e6['push'](_0x2370e6['shift']());}catch(_0x5285bd){_0x2370e6['push'](_0x2370e6['shift']());}}}(a163_0xf64f,0xa10c3));import{createAppRole}from'../../core/api-client.js';function a163_0x40e0(_0x2e859d,_0x667be2){_0x2e859d=_0x2e859d-0xfe;const _0xf64fec=a163_0xf64f();let _0x40e0bc=_0xf64fec[_0x2e859d];return _0x40e0bc;}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a163_0x7bdea0(0x101);function a163_0xf64f(){const _0x1d9503=['role','Created\x20role\x20','8465Nrytob','flagMissing','/smartapi/permit/role/create','create','str','remark','21416wgHQDc','452419wAoRaN','435PQBDjR','6474930gVBhqs','1127YpIuYa','validation','appCode','14214070mkcNXP','length','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','\x20(id=','trim','554931fdzbrK','write','name','Pass\x20--name\x20<roleName>.','CUSTOM','1796GMftjG','6662DJXIZC','POST'];a163_0xf64f=function(){return _0x1d9503;};return a163_0xf64f();}function readName(_0x47da2e){const _0x9078d0=a163_0x7bdea0,_0x54077a=_0x47da2e[_0x9078d0(0x103)](_0x9078d0(0x113))['trim']();if(!_0x54077a)throw CliErrors[_0x9078d0(0x100)](_0x9078d0(0x113),_0x9078d0(0x114));if(_0x54077a[_0x9078d0(0x10d)]>0x40)throw CliErrors[_0x9078d0(0x10a)](_0x9078d0(0x10e));return _0x54077a;}export const roleCreate={'service':a163_0x7bdea0(0x119),'command':'create','description':'Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','risk':a163_0x7bdea0(0x112),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1c1f7a){readName(_0x1c1f7a);},async 'dryRun'(_0x17629d){const _0x4ad3b8=a163_0x7bdea0,_0x57bfdb=readName(_0x17629d),_0x190258=_0x17629d[_0x4ad3b8(0x103)]('remark')[_0x4ad3b8(0x110)]()||undefined;return asDryRunResult({'operation':'create','selector':{'appCode':_0x17629d[_0x4ad3b8(0x10b)],'roleName':_0x57bfdb},'before':null,'after':{'roleName':_0x57bfdb,'roleType':_0x4ad3b8(0x115),'remark':_0x190258},'dryRun':!![],'backend':{'method':_0x4ad3b8(0x118),'path':CREATE_PATH},'warnings':[]},{'method':_0x4ad3b8(0x118),'url':CREATE_PATH});},async 'execute'(_0x3f55b5){const _0x5a1933=a163_0x7bdea0,_0x3c86df=readName(_0x3f55b5),_0x5b0c6a=_0x3f55b5['str'](_0x5a1933(0x104))['trim']()||undefined,_0x196cb8=await createAppRole({'appCode':_0x3f55b5['appCode'],'roleName':_0x3c86df,..._0x5b0c6a?{'remark':_0x5b0c6a}:{}});return{'ok':!![],'data':{'operation':_0x5a1933(0x102),'selector':{'appCode':_0x3f55b5['appCode'],'roleId':_0x196cb8['id'],'roleName':_0x3c86df},'before':null,'after':projectRole(_0x196cb8),'dryRun':![],'backend':{'method':_0x5a1933(0x118),'path':CREATE_PATH},'warnings':[]},'message':_0x5a1933(0xfe)+_0x196cb8['roleName']+_0x5a1933(0x10f)+_0x196cb8['id']+')'};}};
1
+ function a163_0x560a(){const _0x504ab7=['716kwnxoK','\x20(id=','flagMissing','12624577ZOiTUI','3507160mKLLOq','4146ENubLe','90ryFNaJ','appCode','486514rDKdjB','remark','Pass\x20--name\x20<roleName>.','validation','POST','role','str','18WXjypn','508565BkFaRl','/smartapi/permit/role/create','name','trim','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','2176904QMiXeJ','create','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','CUSTOM','length','263872NliKub','write'];a163_0x560a=function(){return _0x504ab7;};return a163_0x560a();}const a163_0x52d900=a163_0x4dd6;(function(_0x4eb98e,_0x48fd91){const _0x509ad3=a163_0x4dd6,_0x9f9b1c=_0x4eb98e();while(!![]){try{const _0x1fbe0e=-parseInt(_0x509ad3(0xb6))/0x1+parseInt(_0x509ad3(0xc0))/0x2+-parseInt(_0x509ad3(0xbd))/0x3*(parseInt(_0x509ad3(0xb8))/0x4)+parseInt(_0x509ad3(0xc8))/0x5*(-parseInt(_0x509ad3(0xbe))/0x6)+parseInt(_0x509ad3(0xbb))/0x7+parseInt(_0x509ad3(0xb1))/0x8*(parseInt(_0x509ad3(0xc7))/0x9)+parseInt(_0x509ad3(0xbc))/0xa;if(_0x1fbe0e===_0x48fd91)break;else _0x9f9b1c['push'](_0x9f9b1c['shift']());}catch(_0x4f76da){_0x9f9b1c['push'](_0x9f9b1c['shift']());}}}(a163_0x560a,0xdce3d));import{createAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a163_0x4dd6(_0x1771a9,_0x5ed8b7){_0x1771a9=_0x1771a9-0xae;const _0x560a60=a163_0x560a();let _0x4dd6ca=_0x560a60[_0x1771a9];return _0x4dd6ca;}import{asDryRunResult}from'../../commands/common/dry-run.js';import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a163_0x52d900(0xc9);function readName(_0xffe457){const _0x15a25d=a163_0x52d900,_0x565095=_0xffe457['str'](_0x15a25d(0xae))[_0x15a25d(0xaf)]();if(!_0x565095)throw CliErrors[_0x15a25d(0xba)](_0x15a25d(0xae),_0x15a25d(0xc2));if(_0x565095[_0x15a25d(0xb5)]>0x40)throw CliErrors[_0x15a25d(0xc3)](_0x15a25d(0xb0));return _0x565095;}export const roleCreate={'service':a163_0x52d900(0xc5),'command':'create','description':a163_0x52d900(0xb3),'risk':a163_0x52d900(0xb7),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x64ad1d){readName(_0x64ad1d);},async 'dryRun'(_0x34d7f2){const _0x560c68=a163_0x52d900,_0x555f2b=readName(_0x34d7f2),_0x463abc=_0x34d7f2[_0x560c68(0xc6)](_0x560c68(0xc1))[_0x560c68(0xaf)]()||undefined;return asDryRunResult({'operation':_0x560c68(0xb2),'selector':{'appCode':_0x34d7f2[_0x560c68(0xbf)],'roleName':_0x555f2b},'before':null,'after':{'roleName':_0x555f2b,'roleType':_0x560c68(0xb4),'remark':_0x463abc},'dryRun':!![],'backend':{'method':'POST','path':CREATE_PATH},'warnings':[]},{'method':'POST','url':CREATE_PATH});},async 'execute'(_0x3122ec){const _0x402606=a163_0x52d900,_0x473345=readName(_0x3122ec),_0x573c46=_0x3122ec['str'](_0x402606(0xc1))[_0x402606(0xaf)]()||undefined,_0x2fe986=await createAppRole({'appCode':_0x3122ec[_0x402606(0xbf)],'roleName':_0x473345,..._0x573c46?{'remark':_0x573c46}:{}});return{'ok':!![],'data':{'operation':'create','selector':{'appCode':_0x3122ec[_0x402606(0xbf)],'roleId':_0x2fe986['id'],'roleName':_0x473345},'before':null,'after':projectRole(_0x2fe986),'dryRun':![],'backend':{'method':_0x402606(0xc4),'path':CREATE_PATH},'warnings':[]},'message':'Created\x20role\x20'+_0x2fe986['roleName']+_0x402606(0xb9)+_0x2fe986['id']+')'};}};
@@ -1 +1 @@
1
- const a164_0x393b92=a164_0x2577;function a164_0x2577(_0x453ff9,_0x5c4db0){_0x453ff9=_0x453ff9-0x1e2;const _0x214547=a164_0x2145();let _0x25779b=_0x214547[_0x453ff9];return _0x25779b;}(function(_0x30ff5a,_0x48c83f){const _0x248476=a164_0x2577,_0x1b3306=_0x30ff5a();while(!![]){try{const _0x3f695e=parseInt(_0x248476(0x1e9))/0x1*(-parseInt(_0x248476(0x1ea))/0x2)+-parseInt(_0x248476(0x1f2))/0x3*(parseInt(_0x248476(0x1f7))/0x4)+parseInt(_0x248476(0x1e4))/0x5+-parseInt(_0x248476(0x1f6))/0x6+-parseInt(_0x248476(0x1ed))/0x7+parseInt(_0x248476(0x1e2))/0x8*(-parseInt(_0x248476(0x1e5))/0x9)+parseInt(_0x248476(0x1ef))/0xa*(parseInt(_0x248476(0x1ec))/0xb);if(_0x3f695e===_0x48c83f)break;else _0x1b3306['push'](_0x1b3306['shift']());}catch(_0xf558f4){_0x1b3306['push'](_0x1b3306['shift']());}}}(a164_0x2145,0xb8f8a));import{deleteAppRole}from'../../core/api-client.js';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=a164_0x393b92(0x1ee);export const roleDelete={'service':a164_0x393b92(0x1f1),'command':a164_0x393b92(0x1e3),'description':a164_0x393b92(0x1e6),'risk':a164_0x393b92(0x1f4),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x3ac3d1){const _0x1366ee=a164_0x393b92,_0x530fc8=_0x3ac3d1[_0x1366ee(0x1f3)]('id'),_0x3f7ebc=await getRoleById(_0x3ac3d1['appCode'],_0x530fc8);return assertCustomRole(_0x3f7ebc,_0x1366ee(0x1e3)),asDryRunResult({'operation':_0x1366ee(0x1e3),'selector':{'appCode':_0x3ac3d1['appCode'],'roleId':_0x530fc8,'roleName':_0x3f7ebc['roleName']},'before':projectRole(_0x3f7ebc),'after':null,'dryRun':!![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':_0x3f7ebc['userCount']>0x0?[_0x1366ee(0x1f8)+_0x3f7ebc[_0x1366ee(0x1f0)]+_0x1366ee(0x1e7)]:[]},{'method':_0x1366ee(0x1eb),'url':DELETE_PATH});},async 'execute'(_0x3e3803){const _0x3218cf=a164_0x393b92,_0x45c2c7=_0x3e3803['num']('id'),_0x3904c0=await getRoleById(_0x3e3803[_0x3218cf(0x1e8)],_0x45c2c7);return assertCustomRole(_0x3904c0,'delete'),await deleteAppRole(_0x45c2c7),{'ok':!![],'data':{'operation':_0x3218cf(0x1e3),'selector':{'appCode':_0x3e3803[_0x3218cf(0x1e8)],'roleId':_0x45c2c7,'roleName':_0x3904c0[_0x3218cf(0x1f5)]},'before':projectRole(_0x3904c0),'after':null,'dryRun':![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':[]},'message':'Deleted\x20role\x20'+_0x3904c0['roleName']+'\x20(id='+_0x45c2c7+')'};}};function a164_0x2145(){const _0x335b58=['Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','appCode','4358UkzeKo','214AktZVq','POST','11DGBsqs','953974ljOAJG','/smartapi/permit/role/delete','11523450cOprfP','userCount','role','99GcrgOL','num','high-risk-write','roleName','1177464ihiZEm','39992WpcRzg','Role\x20still\x20has\x20','4474344wdjSaX','delete','6466780kFyBaw','9XgCmJG'];a164_0x2145=function(){return _0x335b58;};return a164_0x2145();}
1
+ const a164_0x532571=a164_0x99a4;(function(_0xfdfef3,_0x18a945){const _0x361445=a164_0x99a4,_0x3bd8fb=_0xfdfef3();while(!![]){try{const _0x36bb2d=-parseInt(_0x361445(0x1b6))/0x1+-parseInt(_0x361445(0x1b8))/0x2*(parseInt(_0x361445(0x1c9))/0x3)+parseInt(_0x361445(0x1b7))/0x4*(parseInt(_0x361445(0x1b9))/0x5)+-parseInt(_0x361445(0x1be))/0x6+-parseInt(_0x361445(0x1bb))/0x7+-parseInt(_0x361445(0x1ba))/0x8*(-parseInt(_0x361445(0x1bd))/0x9)+parseInt(_0x361445(0x1c1))/0xa;if(_0x36bb2d===_0x18a945)break;else _0x3bd8fb['push'](_0x3bd8fb['shift']());}catch(_0x5d1ded){_0x3bd8fb['push'](_0x3bd8fb['shift']());}}}(a164_0x3754,0x36f33));function a164_0x99a4(_0x166cf0,_0xfd9991){_0x166cf0=_0x166cf0-0x1b5;const _0x375447=a164_0x3754();let _0x99a466=_0x375447[_0x166cf0];return _0x99a466;}import{deleteAppRole}from'../../core/api-client.js';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=a164_0x532571(0x1c3);export const roleDelete={'service':a164_0x532571(0x1b5),'command':a164_0x532571(0x1c8),'description':'Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','risk':a164_0x532571(0x1c2),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x24ea1f){const _0x2b09db=a164_0x532571,_0x24c6a7=_0x24ea1f[_0x2b09db(0x1c4)]('id'),_0x1126d0=await getRoleById(_0x24ea1f[_0x2b09db(0x1c7)],_0x24c6a7);return assertCustomRole(_0x1126d0,_0x2b09db(0x1c8)),asDryRunResult({'operation':_0x2b09db(0x1c8),'selector':{'appCode':_0x24ea1f[_0x2b09db(0x1c7)],'roleId':_0x24c6a7,'roleName':_0x1126d0[_0x2b09db(0x1bf)]},'before':projectRole(_0x1126d0),'after':null,'dryRun':!![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':_0x1126d0[_0x2b09db(0x1c5)]>0x0?[_0x2b09db(0x1c0)+_0x1126d0['userCount']+'\x20member(s);\x20they\x20will\x20lose\x20this\x20group.']:[]},{'method':_0x2b09db(0x1bc),'url':DELETE_PATH});},async 'execute'(_0x4f14c9){const _0x135fb2=a164_0x532571,_0x42106e=_0x4f14c9['num']('id'),_0x3f87a9=await getRoleById(_0x4f14c9[_0x135fb2(0x1c7)],_0x42106e);return assertCustomRole(_0x3f87a9,_0x135fb2(0x1c8)),await deleteAppRole(_0x42106e),{'ok':!![],'data':{'operation':'delete','selector':{'appCode':_0x4f14c9['appCode'],'roleId':_0x42106e,'roleName':_0x3f87a9[_0x135fb2(0x1bf)]},'before':projectRole(_0x3f87a9),'after':null,'dryRun':![],'backend':{'method':_0x135fb2(0x1bc),'path':DELETE_PATH},'warnings':[]},'message':_0x135fb2(0x1c6)+_0x3f87a9['roleName']+_0x135fb2(0x1ca)+_0x42106e+')'};}};function a164_0x3754(){const _0x574a4f=['/smartapi/permit/role/delete','num','userCount','Deleted\x20role\x20','appCode','delete','6rQmrkt','\x20(id=','role','270215FHUIQq','808nxsXVb','391610QEgWOF','1955uuSrdG','2468584DxuJqX','3008152DKZdMU','POST','9SddIGj','662754qboHug','roleName','Role\x20still\x20has\x20','10395400klQFPW','high-risk-write'];a164_0x3754=function(){return _0x574a4f;};return a164_0x3754();}
@@ -1 +1 @@
1
- const a165_0x14af5f=a165_0x4bc4;function a165_0xeb48(){const _0x51d5ab=['1174868NPLmsF','num','appCode','detail','roleType','roleName','1576595jqeeYn','12164080fqKKKP','role','3631398HbtkQJ','15900YZgkbT','416971VYIbwa','2329880pDeHuc','Role\x20','62sGhwla','Show\x20a\x20single\x20role\x27s\x20detail'];a165_0xeb48=function(){return _0x51d5ab;};return a165_0xeb48();}(function(_0x3fae6b,_0x31301a){const _0x632cf5=a165_0x4bc4,_0xcf749e=_0x3fae6b();while(!![]){try{const _0x33ca64=-parseInt(_0x632cf5(0x1bb))/0x1+-parseInt(_0x632cf5(0x1be))/0x2*(-parseInt(_0x632cf5(0x1ba))/0x3)+-parseInt(_0x632cf5(0x1c0))/0x4+parseInt(_0x632cf5(0x1c6))/0x5+-parseInt(_0x632cf5(0x1c9))/0x6+-parseInt(_0x632cf5(0x1bc))/0x7+parseInt(_0x632cf5(0x1c7))/0x8;if(_0x33ca64===_0x31301a)break;else _0xcf749e['push'](_0xcf749e['shift']());}catch(_0x50afce){_0xcf749e['push'](_0xcf749e['shift']());}}}(a165_0xeb48,0x55c88));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a165_0x4bc4(_0x4907bd,_0x323458){_0x4907bd=_0x4907bd-0x1ba;const _0xeb48a2=a165_0xeb48();let _0x4bc451=_0xeb48a2[_0x4907bd];return _0x4bc451;}export const roleDetail={'service':a165_0x14af5f(0x1c8),'command':a165_0x14af5f(0x1c3),'description':a165_0x14af5f(0x1bf),'risk':'read','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x2c677c){const _0x3b0a75=a165_0x14af5f,_0x25966f=_0x2c677c[_0x3b0a75(0x1c1)]('id'),_0x3eb01b=await getRoleById(_0x2c677c[_0x3b0a75(0x1c2)],_0x25966f);return{'ok':!![],'data':{'role':projectRole(_0x3eb01b)},'message':_0x3b0a75(0x1bd)+_0x3eb01b[_0x3b0a75(0x1c5)]+'\x20('+_0x3eb01b[_0x3b0a75(0x1c4)]+')'};}};
1
+ function a165_0x5868(){const _0x2ff7fd=['330280LdUaUz','Role\x20','398648mskHxp','4455038sKONFw','roleName','825750cSfIDG','6xZltJR','role','13399210IZSdtt','detail','108umILXF','roleType','10180mEGUxu','Show\x20a\x20single\x20role\x27s\x20detail','1661665pTYtAd','151IYtbcn','read'];a165_0x5868=function(){return _0x2ff7fd;};return a165_0x5868();}const a165_0x5c5906=a165_0xfda5;(function(_0x25b21c,_0x487d55){const _0x2b052a=a165_0xfda5,_0x935133=_0x25b21c();while(!![]){try{const _0x4159e9=-parseInt(_0x2b052a(0x10f))/0x1*(-parseInt(_0x2b052a(0x11d))/0x2)+-parseInt(_0x2b052a(0x116))/0x3+-parseInt(_0x2b052a(0x111))/0x4+-parseInt(_0x2b052a(0x10e))/0x5*(-parseInt(_0x2b052a(0x117))/0x6)+parseInt(_0x2b052a(0x114))/0x7+parseInt(_0x2b052a(0x113))/0x8*(parseInt(_0x2b052a(0x11b))/0x9)+-parseInt(_0x2b052a(0x119))/0xa;if(_0x4159e9===_0x487d55)break;else _0x935133['push'](_0x935133['shift']());}catch(_0x552a34){_0x935133['push'](_0x935133['shift']());}}}(a165_0x5868,0x9ba94));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a165_0xfda5(_0x4cdfb3,_0x322889){_0x4cdfb3=_0x4cdfb3-0x10e;const _0x5868b0=a165_0x5868();let _0xfda57a=_0x5868b0[_0x4cdfb3];return _0xfda57a;}import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';export const roleDetail={'service':a165_0x5c5906(0x118),'command':a165_0x5c5906(0x11a),'description':a165_0x5c5906(0x11e),'risk':a165_0x5c5906(0x110),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0xeb0b6b){const _0x44c2cb=a165_0x5c5906,_0x5b36b9=_0xeb0b6b['num']('id'),_0x4e43e0=await getRoleById(_0xeb0b6b['appCode'],_0x5b36b9);return{'ok':!![],'data':{'role':projectRole(_0x4e43e0)},'message':_0x44c2cb(0x112)+_0x4e43e0[_0x44c2cb(0x115)]+'\x20('+_0x4e43e0[_0x44c2cb(0x11c)]+')'};}};
@@ -1 +1 @@
1
- (function(_0x1fe42b,_0x1ff2e1){const _0x49f303=a166_0x28cf,_0x4f4783=_0x1fe42b();while(!![]){try{const _0x470f78=-parseInt(_0x49f303(0x8e))/0x1+-parseInt(_0x49f303(0x89))/0x2*(-parseInt(_0x49f303(0x8a))/0x3)+parseInt(_0x49f303(0x90))/0x4+parseInt(_0x49f303(0x88))/0x5*(-parseInt(_0x49f303(0x8c))/0x6)+parseInt(_0x49f303(0x8b))/0x7+-parseInt(_0x49f303(0x8f))/0x8*(-parseInt(_0x49f303(0x8d))/0x9)+-parseInt(_0x49f303(0x91))/0xa*(parseInt(_0x49f303(0x92))/0xb);if(_0x470f78===_0x1ff2e1)break;else _0x4f4783['push'](_0x4f4783['shift']());}catch(_0xed772d){_0x4f4783['push'](_0x4f4783['shift']());}}}(a166_0x26ef,0xeee1e));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';function a166_0x26ef(){const _0x2dda18=['48MAIJJX','128989oEtdZk','5245518HvZfHd','9TDZQsK','1723360QBamjY','13567672pcIWtR','7809640hLoups','3198830HotUJU','33XipjEK','5mnJXBq','108616XuKVGv'];a166_0x26ef=function(){return _0x2dda18;};return a166_0x26ef();}import{roleCreate}from'../../commands/role/create.js';import{roleUpdate}from'../../commands/role/update.js';import{roleDelete}from'../../commands/role/delete.js';function a166_0x28cf(_0x59abd8,_0x23ce2d){_0x59abd8=_0x59abd8-0x88;const _0x26ef18=a166_0x26ef();let _0x28cf87=_0x26ef18[_0x59abd8];return _0x28cf87;}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,roleCreate,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
1
+ (function(_0x59e2ba,_0x15ae21){const _0x432376=a166_0x58de,_0x26c4d2=_0x59e2ba();while(!![]){try{const _0x1f6724=-parseInt(_0x432376(0x75))/0x1+-parseInt(_0x432376(0x74))/0x2+parseInt(_0x432376(0x79))/0x3*(-parseInt(_0x432376(0x76))/0x4)+-parseInt(_0x432376(0x72))/0x5+-parseInt(_0x432376(0x7a))/0x6+-parseInt(_0x432376(0x78))/0x7*(parseInt(_0x432376(0x77))/0x8)+parseInt(_0x432376(0x73))/0x9;if(_0x1f6724===_0x15ae21)break;else _0x26c4d2['push'](_0x26c4d2['shift']());}catch(_0x150ab3){_0x26c4d2['push'](_0x26c4d2['shift']());}}}(a166_0xc9bd,0xe6c43));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';import{roleCreate}from'../../commands/role/create.js';import{roleUpdate}from'../../commands/role/update.js';function a166_0xc9bd(){const _0x25aa77=['120AgbdWb','692965hJsgeL','3DUNCmT','372168IxosvY','6901465goyfin','60159834NBSclE','2174222PHfPna','1446666AEtZSO','1112736PCLLsG'];a166_0xc9bd=function(){return _0x25aa77;};return a166_0xc9bd();}function a166_0x58de(_0x347393,_0x2fabfe){_0x347393=_0x347393-0x72;const _0xc9bddf=a166_0xc9bd();let _0x58de87=_0xc9bddf[_0x347393];return _0x58de87;}import{roleDelete}from'../../commands/role/delete.js';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,roleCreate,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
@@ -1 +1 @@
1
- const a167_0x407a8f=a167_0x1e57;(function(_0x57a6ae,_0x39a649){const _0x15fd89=a167_0x1e57,_0x41f2b1=_0x57a6ae();while(!![]){try{const _0x4b668b=-parseInt(_0x15fd89(0xf7))/0x1*(-parseInt(_0x15fd89(0x106))/0x2)+-parseInt(_0x15fd89(0x118))/0x3*(-parseInt(_0x15fd89(0x10e))/0x4)+-parseInt(_0x15fd89(0x10b))/0x5*(-parseInt(_0x15fd89(0xfe))/0x6)+-parseInt(_0x15fd89(0x101))/0x7*(parseInt(_0x15fd89(0x10c))/0x8)+-parseInt(_0x15fd89(0x11c))/0x9*(-parseInt(_0x15fd89(0x105))/0xa)+parseInt(_0x15fd89(0x107))/0xb*(-parseInt(_0x15fd89(0xfa))/0xc)+-parseInt(_0x15fd89(0x100))/0xd;if(_0x4b668b===_0x39a649)break;else _0x41f2b1['push'](_0x41f2b1['shift']());}catch(_0x10ef2d){_0x41f2b1['push'](_0x41f2b1['shift']());}}}(a167_0x258f,0xf170b));import{listAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a167_0x1e57(_0x3fe0d0,_0x3c5af9){_0x3fe0d0=_0x3fe0d0-0xf5;const _0x258fd5=a167_0x258f();let _0x1e571e=_0x258fd5[_0x3fe0d0];return _0x1e571e;}function a167_0x258f(){const _0x5ea75c=['12UTaMUS','Page\x20index\x20(1-based)','16684096MHgAtc','672SblSCI','map','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','--pagesize\x20must\x20be\x20between\x201\x20and\x20100.','2309420ELsPsu','4qlPOYX','6588362yoTtXX','length','USER','join','1876115DWfMyM','80072vDHLtq','number','5036OORtna','num','string','read','trim','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','validation','page','Found\x20','ADMIN','21bBAcqz','\x20role(s)','pagesize','str','54JfWGdP','type','CUSTOM','appCode','includes','843613oYhmTw','toUpperCase','DEV','12BwhMJJ','Use\x20one\x20of:\x20','Invalid\x20--type\x20\x22','filter'];a167_0x258f=function(){return _0x5ea75c;};return a167_0x258f();}import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=[a167_0x407a8f(0x117),a167_0x407a8f(0xf9),a167_0x407a8f(0x109),a167_0x407a8f(0x11e)];export const roleList={'service':'role','command':'list','description':a167_0x407a8f(0x103),'risk':a167_0x407a8f(0x111),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a167_0x407a8f(0x11d),'type':a167_0x407a8f(0x110),'required':![],'description':'Filter\x20by\x20role\x20type','enum':ROLE_TYPES},{'name':a167_0x407a8f(0x115),'type':a167_0x407a8f(0x10d),'description':a167_0x407a8f(0xff),'default':0x1},{'name':'pagesize','type':a167_0x407a8f(0x10d),'description':'Page\x20size\x20(1-100)','default':0x64}],async 'validate'(_0x354c61){const _0x458800=a167_0x407a8f,_0x5ba450=_0x354c61['str'](_0x458800(0x11d))[_0x458800(0x112)]();if(_0x5ba450&&!ROLE_TYPES[_0x458800(0xf6)](_0x5ba450[_0x458800(0xf8)]()))throw CliErrors[_0x458800(0x114)](_0x458800(0xfc)+_0x5ba450+'\x22.',_0x458800(0xfb)+ROLE_TYPES[_0x458800(0x10a)](',\x20')+'.');const _0x1c0e78=_0x354c61[_0x458800(0x10f)]('page',0x1),_0xd922c0=_0x354c61['num'](_0x458800(0x11a),0x64);if(_0x1c0e78<0x1)throw CliErrors['validation'](_0x458800(0x113));if(_0xd922c0<0x1||_0xd922c0>0x64)throw CliErrors[_0x458800(0x114)](_0x458800(0x104));},async 'execute'(_0x8bd5e6){const _0x49cc38=a167_0x407a8f,_0x50a85f=_0x8bd5e6[_0x49cc38(0x10f)](_0x49cc38(0x115),0x1)||0x1,_0x2f90f7=_0x8bd5e6[_0x49cc38(0x10f)](_0x49cc38(0x11a),0x64)||0x64,_0x552708=_0x8bd5e6[_0x49cc38(0x11b)](_0x49cc38(0x11d))[_0x49cc38(0x112)]()[_0x49cc38(0xf8)](),{items:_0x38beed,paging:_0x5118f6}=await listAppRoles(_0x8bd5e6[_0x49cc38(0xf5)],{'currentPage':_0x50a85f,'pageSize':_0x2f90f7}),_0xbfccd0=_0x552708?_0x38beed[_0x49cc38(0xfd)](_0x5134b8=>_0x5134b8['roleType']===_0x552708):_0x38beed,_0x437ff5=_0xbfccd0[_0x49cc38(0x102)](projectRole);return{'ok':!![],'data':{'roles':_0x437ff5,'paging':_0x5118f6},'message':_0x49cc38(0x116)+_0x437ff5[_0x49cc38(0x108)]+_0x49cc38(0x119)};}};
1
+ const a167_0x4252ef=a167_0x31af;(function(_0x412667,_0xbeec24){const _0x776b02=a167_0x31af,_0x26999e=_0x412667();while(!![]){try{const _0x4db53f=parseInt(_0x776b02(0xfe))/0x1*(-parseInt(_0x776b02(0x105))/0x2)+parseInt(_0x776b02(0xf6))/0x3*(-parseInt(_0x776b02(0x111))/0x4)+-parseInt(_0x776b02(0x102))/0x5*(parseInt(_0x776b02(0xfc))/0x6)+-parseInt(_0x776b02(0x103))/0x7*(parseInt(_0x776b02(0x117))/0x8)+parseInt(_0x776b02(0x106))/0x9*(parseInt(_0x776b02(0xf8))/0xa)+parseInt(_0x776b02(0xf9))/0xb+parseInt(_0x776b02(0x107))/0xc;if(_0x4db53f===_0xbeec24)break;else _0x26999e['push'](_0x26999e['shift']());}catch(_0x4801f1){_0x26999e['push'](_0x26999e['shift']());}}}(a167_0x4192,0x4039b));function a167_0x4192(){const _0x40580c=['ADMIN','type','CUSTOM','Use\x20one\x20of:\x20','str','3HFYmrw','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','10qrhUEl','3233153trLhie','read','list','7074FlVYZK','trim','3796yBqzJz','toUpperCase','pagesize','validation','1200uYXKyo','35819fcYCyr','number','82JCcjcg','3012777UrGATg','9144108TTUScY','--pagesize\x20must\x20be\x20between\x201\x20and\x20100.','\x20role(s)','map','Found\x20','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','Page\x20index\x20(1-based)','DEV','page','Page\x20size\x20(1-100)','1507540zpDmFP','string','length','filter','num','includes','488PqAwGR','Filter\x20by\x20role\x20type'];a167_0x4192=function(){return _0x40580c;};return a167_0x4192();}import{listAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectRole}from'../../commands/role/shared.js';function a167_0x31af(_0x3ce872,_0x2c7a85){_0x3ce872=_0x3ce872-0xf3;const _0x4192e7=a167_0x4192();let _0x31af5a=_0x4192e7[_0x3ce872];return _0x31af5a;}const ROLE_TYPES=[a167_0x4252ef(0x119),a167_0x4252ef(0x10e),'USER',a167_0x4252ef(0xf3)];export const roleList={'service':'role','command':a167_0x4252ef(0xfb),'description':a167_0x4252ef(0x10c),'risk':a167_0x4252ef(0xfa),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a167_0x4252ef(0x11a),'type':a167_0x4252ef(0x112),'required':![],'description':a167_0x4252ef(0x118),'enum':ROLE_TYPES},{'name':a167_0x4252ef(0x10f),'type':a167_0x4252ef(0x104),'description':a167_0x4252ef(0x10d),'default':0x1},{'name':a167_0x4252ef(0x100),'type':'number','description':a167_0x4252ef(0x110),'default':0x64}],async 'validate'(_0x246f13){const _0x26fa99=a167_0x4252ef,_0x2e754b=_0x246f13['str'](_0x26fa99(0x11a))[_0x26fa99(0xfd)]();if(_0x2e754b&&!ROLE_TYPES[_0x26fa99(0x116)](_0x2e754b[_0x26fa99(0xff)]()))throw CliErrors[_0x26fa99(0x101)]('Invalid\x20--type\x20\x22'+_0x2e754b+'\x22.',_0x26fa99(0xf4)+ROLE_TYPES['join'](',\x20')+'.');const _0x22aad7=_0x246f13[_0x26fa99(0x115)](_0x26fa99(0x10f),0x1),_0x5d5df2=_0x246f13[_0x26fa99(0x115)]('pagesize',0x64);if(_0x22aad7<0x1)throw CliErrors[_0x26fa99(0x101)](_0x26fa99(0xf7));if(_0x5d5df2<0x1||_0x5d5df2>0x64)throw CliErrors[_0x26fa99(0x101)](_0x26fa99(0x108));},async 'execute'(_0x839e8a){const _0x2b9a57=a167_0x4252ef,_0x215e16=_0x839e8a[_0x2b9a57(0x115)](_0x2b9a57(0x10f),0x1)||0x1,_0x5020e6=_0x839e8a['num'](_0x2b9a57(0x100),0x64)||0x64,_0x5b0e4b=_0x839e8a[_0x2b9a57(0xf5)](_0x2b9a57(0x11a))['trim']()[_0x2b9a57(0xff)](),{items:_0x2d7c52,paging:_0x25e8b4}=await listAppRoles(_0x839e8a['appCode'],{'currentPage':_0x215e16,'pageSize':_0x5020e6}),_0x5a7322=_0x5b0e4b?_0x2d7c52[_0x2b9a57(0x114)](_0x3f5ffb=>_0x3f5ffb['roleType']===_0x5b0e4b):_0x2d7c52,_0x162aac=_0x5a7322[_0x2b9a57(0x10a)](projectRole);return{'ok':!![],'data':{'roles':_0x162aac,'paging':_0x25e8b4},'message':_0x2b9a57(0x10b)+_0x162aac[_0x2b9a57(0x113)]+_0x2b9a57(0x109)};}};
@@ -1 +1 @@
1
- const a168_0x174918=a168_0x326d;(function(_0xcb8909,_0x41290c){const _0x4cca78=a168_0x326d,_0x3c242a=_0xcb8909();while(!![]){try{const _0x1496f5=parseInt(_0x4cca78(0xba))/0x1+parseInt(_0x4cca78(0xab))/0x2*(-parseInt(_0x4cca78(0x97))/0x3)+-parseInt(_0x4cca78(0x8d))/0x4+-parseInt(_0x4cca78(0xb1))/0x5+-parseInt(_0x4cca78(0x7f))/0x6+parseInt(_0x4cca78(0x9d))/0x7+parseInt(_0x4cca78(0xbd))/0x8;if(_0x1496f5===_0x41290c)break;else _0x3c242a['push'](_0x3c242a['shift']());}catch(_0x421a70){_0x3c242a['push'](_0x3c242a['shift']());}}}(a168_0x3de6,0x1fc4b));import{getAppRole,getTenantMembers,listAppRoles,listRoleUsers}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':'number','required':!![],'description':a168_0x174918(0xb3)};export const ROLE_REF_FLAG={'name':a168_0x174918(0x9b),'type':a168_0x174918(0xb4),'required':!![],'description':a168_0x174918(0x89)};export const USER_REF_FLAG={'name':'user','type':a168_0x174918(0xb4),'required':!![],'description':a168_0x174918(0x86)};export const NAME_FLAG={'name':'name','type':a168_0x174918(0xb4),'required':!![],'description':a168_0x174918(0x94)};export const USER_NAME_FLAG={'name':'name','type':'string','required':!![],'description':'Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId'};export const REMARK_FLAG={'name':'remark','type':a168_0x174918(0xb4),'required':![],'description':a168_0x174918(0xaa)};export const EXPECT_USER_COUNT_FLAG={'name':a168_0x174918(0x9f),'type':a168_0x174918(0x8e),'required':![],'description':a168_0x174918(0xa4)};export const BUILTIN_ROLE_TYPES=[a168_0x174918(0xbe),'DEV',a168_0x174918(0xc1)];export function isBuiltinRole(_0x3e09f6){const _0x28480e=a168_0x174918;return BUILTIN_ROLE_TYPES[_0x28480e(0xa6)](_0x3e09f6);}export function assertCustomRole(_0x377141,_0x3596ef){const _0x300d72=a168_0x174918;if(_0x377141['roleType']!==_0x300d72(0xb0))throw CliErrors['validation'](_0x300d72(0x7c)+_0x3596ef+_0x300d72(0xc0)+_0x377141[_0x300d72(0x80)]+'\x20('+_0x377141['roleType']+').',_0x300d72(0x87));}export function assertPermConfigurable(_0x54a9f4){const _0x46f6bb=a168_0x174918;if(_0x54a9f4[_0x46f6bb(0xa8)]==='DEV'||_0x54a9f4[_0x46f6bb(0xa8)]===_0x46f6bb(0xbe))throw CliErrors[_0x46f6bb(0x8f)](_0x46f6bb(0x83)+_0x54a9f4['roleName']+'\x20('+_0x54a9f4['roleType']+').',_0x46f6bb(0x88));}export function projectRole(_0x47e596){const _0x1b6445=a168_0x174918;return{'id':_0x47e596['id'],'roleName':_0x47e596[_0x1b6445(0x80)],'roleType':_0x47e596[_0x1b6445(0xa8)],'remark':_0x47e596['remark'],'userCount':_0x47e596[_0x1b6445(0xb8)],'permitCount':_0x47e596['permitCount'],'builtin':isBuiltinRole(_0x47e596[_0x1b6445(0xa8)])};}function a168_0x326d(_0x3706ff,_0x143fe3){_0x3706ff=_0x3706ff-0x7c;const _0x3de6fc=a168_0x3de6();let _0x326da6=_0x3de6fc[_0x3706ff];return _0x326da6;}export async function resolveRoleRef(_0x17dfa8,_0x49f055){const _0x13910c=a168_0x174918,_0x3bef42=_0x49f055['trim']();if(!_0x3bef42)throw CliErrors[_0x13910c(0x8f)](_0x13910c(0xac),'Pass\x20--role\x20<id|name>.');if(/^\d+$/['test'](_0x3bef42))return getRoleById(_0x17dfa8,Number(_0x3bef42));const _0x8c3099=await listAllAppRoles(_0x17dfa8),_0x41c2d5=_0x8c3099['filter'](_0x308e9e=>_0x308e9e[_0x13910c(0x80)]===_0x3bef42);if(_0x41c2d5['length']===0x0)throw CliErrors[_0x13910c(0x8f)]('Role\x20name\x20\x22'+_0x3bef42+_0x13910c(0x98)+_0x17dfa8+'.',_0x13910c(0xb7));if(_0x41c2d5['length']>0x1){const _0x967e13=_0x41c2d5[_0x13910c(0x9c)](_0xe936a6=>_0xe936a6['id'])[_0x13910c(0xa2)](',\x20');throw CliErrors['validation'](_0x13910c(0xc9)+_0x3bef42+_0x13910c(0x95)+_0x967e13+').','Disambiguate\x20with\x20--role\x20<id>.');}return _0x41c2d5[0x0];}export async function getRoleById(_0x2f19ce,_0x5ec16b){const _0x1a8b1c=a168_0x174918,_0x26839a=await getAppRole(_0x5ec16b);if(!_0x26839a)throw CliErrors['validation']('Role\x20id\x20'+_0x5ec16b+'\x20not\x20found\x20in\x20app\x20'+_0x2f19ce+'.',_0x1a8b1c(0x7e));return _0x26839a;}async function listAllAppRoles(_0x5d461e){const _0x526e40=a168_0x174918,_0x3159cc=0x64,_0x16897d=[];for(let _0x56ada0=0x1;;_0x56ada0+=0x1){const {items:_0x41d77d,paging:_0x2f295b}=await listAppRoles(_0x5d461e,{'currentPage':_0x56ada0,'pageSize':_0x3159cc});_0x16897d['push'](..._0x41d77d);if(_0x41d77d['length']<_0x3159cc||_0x2f295b&&_0x16897d['length']>=_0x2f295b[_0x526e40(0x90)])return _0x16897d;}}export async function resolveTenantCode(){const _0x3f298c=a168_0x174918,_0x2052b9=await getSessionUserInfo(),_0x2423b4=_0x2052b9?.[_0x3f298c(0xbf)]?.[_0x3f298c(0xc8)]?.[_0x3f298c(0xaf)];if(!_0x2423b4)throw CliErrors[_0x3f298c(0x8a)]('Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.');return _0x2423b4;}function matchMember(_0x13e998,_0x3399e1){const _0x10ffdc=a168_0x174918,_0x48afed=_0x3399e1[_0x10ffdc(0xbb)]()[_0x10ffdc(0xae)]();return(_0x13e998['nickname']??'')['toLowerCase']()===_0x48afed||(_0x13e998[_0x10ffdc(0x84)]??'')[_0x10ffdc(0xae)]()===_0x48afed;}export async function resolveUserRef(_0x2f7d11){const _0x1a8412=a168_0x174918,_0x477066=_0x2f7d11[_0x1a8412(0xbb)]();if(!_0x477066)throw CliErrors['validation'](_0x1a8412(0xbc),_0x1a8412(0xb2));const _0x153ac6=await resolveTenantCode(),_0x58fb6e=await getTenantMembers(_0x153ac6);if(/^\d+$/[_0x1a8412(0xa9)](_0x477066)){const _0x27da5d=Number(_0x477066),_0x4c1323=_0x58fb6e[_0x1a8412(0xc6)](_0x36444d=>_0x36444d[_0x1a8412(0xb9)]===_0x27da5d);return{'userId':_0x27da5d,'username':_0x4c1323?.[_0x1a8412(0x84)]??String(_0x27da5d),'nickname':_0x4c1323?.[_0x1a8412(0xc7)],'matchedBy':'id'};}const _0x5493ca=_0x58fb6e[_0x1a8412(0x93)](_0x59a9ef=>matchMember(_0x59a9ef,_0x477066));if(_0x5493ca[_0x1a8412(0xa1)]===0x0)throw CliErrors['validation'](_0x1a8412(0x92)+_0x477066+'\x22.',_0x1a8412(0x9a));if(_0x5493ca[_0x1a8412(0xa1)]>0x1){const _0x18e243=_0x5493ca[_0x1a8412(0x9c)](_0x970869=>(_0x970869[_0x1a8412(0xc7)]??_0x970869['username']??'?')+'('+_0x970869[_0x1a8412(0xb9)]+')')[_0x1a8412(0xa2)](',\x20');throw CliErrors[_0x1a8412(0x8f)](_0x1a8412(0xa3)+_0x477066+_0x1a8412(0x81)+_0x18e243+'.',_0x1a8412(0xa0));}const _0x2ab5af=_0x5493ca[0x0];return{'userId':_0x2ab5af[_0x1a8412(0xb9)],'username':_0x2ab5af[_0x1a8412(0x84)]??String(_0x2ab5af[_0x1a8412(0xb9)]),'nickname':_0x2ab5af[_0x1a8412(0xc7)],'matchedBy':'name'};}export const UPDATE_USER_LIST_PATH='/smartapi/permit/user-role/update-user-list';function userIdsOf(_0x25f63c){const _0xb217d9=a168_0x174918;return(_0x25f63c?.[_0xb217d9(0x82)]??[])[_0xb217d9(0x9c)](_0x117f5b=>_0x117f5b[_0xb217d9(0xb9)]);}export function computeRoleUserMutation(_0x228e7a){const _0xc4448=a168_0x174918,{operation:_0x11a668,appCode:_0x402f3f,roleUsers:_0x532d80,targetRoleId:_0x1a8a66,user:_0x440339}=_0x228e7a,_0xc13d4f=_0x532d80[_0xc4448(0xc6)](_0x27c144=>_0x27c144['id']===_0x1a8a66);if(!_0xc13d4f)throw CliErrors[_0xc4448(0x8f)](_0xc4448(0x96)+_0x1a8a66+_0xc4448(0x85),_0xc4448(0x7e));const _0x484695=userIdsOf(_0xc13d4f),_0x10b2bc=[];if(_0x228e7a[_0xc4448(0xc3)]!==undefined&&_0x228e7a[_0xc4448(0xc3)]!==_0x484695['length'])throw CliErrors[_0xc4448(0x8f)]('Anti-drift\x20check\x20failed:\x20expected\x20'+_0x228e7a[_0xc4448(0xc3)]+'\x20member(s)\x20but\x20role\x20has\x20'+_0x484695[_0xc4448(0xa1)]+'.',_0xc4448(0x99));const _0x3833c8=_0x484695[_0xc4448(0xa6)](_0x440339[_0xc4448(0xb9)]);let _0x251118=![];const _0x3fb839=[..._0xc13d4f[_0xc4448(0x82)]];if(_0x11a668===_0xc4448(0xa7))_0x3833c8?_0x10b2bc[_0xc4448(0xad)](_0xc4448(0xc2)+_0x440339[_0xc4448(0xb9)]+_0xc4448(0xb6)+_0xc13d4f[_0xc4448(0x80)]+';\x20no\x20change.'):(_0x3fb839['push']({'userId':_0x440339[_0xc4448(0xb9)],'username':_0x440339[_0xc4448(0x84)],..._0x440339[_0xc4448(0xc7)]?{'nickname':_0x440339[_0xc4448(0xc7)]}:{}}),_0x251118=!![]);else{if(!_0x3833c8)_0x10b2bc[_0xc4448(0xad)](_0xc4448(0xc2)+_0x440339[_0xc4448(0xb9)]+_0xc4448(0x9e)+_0xc13d4f[_0xc4448(0x80)]+';\x20no\x20change.');else{const _0x494e03=_0x3fb839['findIndex'](_0x22750b=>_0x22750b[_0xc4448(0xb9)]===_0x440339['userId']);if(_0x494e03>=0x0)_0x3fb839[_0xc4448(0xa5)](_0x494e03,0x1);_0x251118=!![];}}const _0x26fff2=_0x532d80['map'](_0x445a95=>_0x445a95['id']===_0x1a8a66?{..._0x445a95,'userList':_0x3fb839}:_0x445a95),_0x7717c8=_0x3fb839[_0xc4448(0x9c)](_0x32f3b3=>_0x32f3b3['userId']),_0x2a1a3d={'operation':_0x11a668,'selector':{'appCode':_0x402f3f,'roleId':_0x1a8a66,'roleName':_0xc13d4f[_0xc4448(0x80)],'userId':_0x440339[_0xc4448(0xb9)]},'before':{'userIds':_0x484695},'after':{'userIds':_0x7717c8},'dryRun':_0x228e7a[_0xc4448(0x91)],'backend':{'method':_0xc4448(0x8b),'path':UPDATE_USER_LIST_PATH},'warnings':_0x10b2bc};return{'roleList':_0x26fff2,'mutation':_0x2a1a3d,'changed':_0x251118};}export async function loadRoleUsers(_0xef465f){return listRoleUsers(_0xef465f);}export function readRoleRef(_0x466e4f){const _0x4a0f39=a168_0x174918,_0x3d501f=_0x466e4f[_0x4a0f39(0x7d)](_0x4a0f39(0x9b))[_0x4a0f39(0xbb)]();if(!_0x3d501f)throw CliErrors[_0x4a0f39(0x8c)](_0x4a0f39(0x9b),_0x4a0f39(0xc4));return _0x3d501f;}export async function prepareUserMutation(_0x2e74f0,_0x2874cc,_0x5a8fd9){const _0x277104=a168_0x174918,_0x805879=readRoleRef(_0x2e74f0),_0x277a69=_0x2e74f0['str'](_0x277104(0xbf))[_0x277104(0xbb)]();if(!_0x277a69)throw CliErrors['flagMissing']('user','Pass\x20--user\x20<id|name>.');const _0x283c6f=_0x2e74f0[_0x277104(0xb5)]('expect-user-count'),_0x1eee7f=_0x283c6f===undefined||_0x283c6f===null?undefined:Number(_0x283c6f),_0x5cb1fc=await resolveRoleRef(_0x2e74f0[_0x277104(0xc5)],_0x805879),_0x3b9f05=await resolveUserRef(_0x277a69),_0x2984f0=await loadRoleUsers(_0x2e74f0['appCode']);return computeRoleUserMutation({'operation':_0x2874cc,'appCode':_0x2e74f0[_0x277104(0xc5)],'roleUsers':_0x2984f0,'targetRoleId':_0x5cb1fc['id'],'user':{'userId':_0x3b9f05['userId'],'username':_0x3b9f05[_0x277104(0x84)],'nickname':_0x3b9f05[_0x277104(0xc7)]},'dryRun':_0x5a8fd9,..._0x1eee7f!==undefined?{'expectUserCount':_0x1eee7f}:{}});}function a168_0x3de6(){const _0xda5af3=['length','join','Multiple\x20tenant\x20members\x20match\x20\x22','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','splice','includes','user-add','roleType','test','Optional\x20role\x20remark/description','2846yZAQkH','Missing\x20role\x20reference.','push','toLowerCase','tenant_code','CUSTOM','760525xRiEYa','Pass\x20--user\x20<id|name>.','Role\x20id\x20(from\x20`role\x20list`)','string','flag','\x20is\x20already\x20a\x20member\x20of\x20role\x20','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','userCount','userId','216524xxwXom','trim','Missing\x20user\x20reference.','2939648Daoltw','ADMIN','user','\x20built-in\x20role\x20','USER','User\x20','expectUserCount','Pass\x20--role\x20<id|name>.','appCode','find','nickname','tenant','Role\x20name\x20\x22','Cannot\x20','str','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','269202aSgige','roleName','\x22:\x20','userList','Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20','username','\x20not\x20found\x20in\x20the\x20user-role\x20list.','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)','authRequired','POST','flagMissing','982460Vdfkdh','number','validation','totalCount','dryRun','No\x20tenant\x20member\x20matches\x20\x22','filter','Role\x20name','\x22\x20is\x20ambiguous\x20(ids:\x20','Role\x20id\x20','345oMrimA','\x22\x20not\x20found\x20in\x20app\x20','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.','role','map','1066625wduUci','\x20is\x20not\x20a\x20member\x20of\x20role\x20','expect-user-count','Disambiguate\x20with\x20--user\x20<id>.'];a168_0x3de6=function(){return _0xda5af3;};return a168_0x3de6();}
1
+ const a168_0x196cad=a168_0x3308;(function(_0xdfc8c8,_0xa3ed10){const _0x6b0c42=a168_0x3308,_0x1a1e37=_0xdfc8c8();while(!![]){try{const _0x9ffef7=parseInt(_0x6b0c42(0x9b))/0x1*(parseInt(_0x6b0c42(0xb2))/0x2)+-parseInt(_0x6b0c42(0x96))/0x3*(parseInt(_0x6b0c42(0xb8))/0x4)+parseInt(_0x6b0c42(0xaa))/0x5*(-parseInt(_0x6b0c42(0x91))/0x6)+parseInt(_0x6b0c42(0x8a))/0x7*(parseInt(_0x6b0c42(0x98))/0x8)+-parseInt(_0x6b0c42(0xd1))/0x9+-parseInt(_0x6b0c42(0xcb))/0xa+-parseInt(_0x6b0c42(0xd5))/0xb*(-parseInt(_0x6b0c42(0x8b))/0xc);if(_0x9ffef7===_0xa3ed10)break;else _0x1a1e37['push'](_0x1a1e37['shift']());}catch(_0x55cb58){_0x1a1e37['push'](_0x1a1e37['shift']());}}}(a168_0x3640,0x70f49));import{getAppRole,getTenantMembers,listAppRoles,listRoleUsers}from'../../core/api-client.js';import{getSessionUserInfo}from'../../auth/get-session-user.js';function a168_0x3308(_0x1dfc94,_0x4d92df){_0x1dfc94=_0x1dfc94-0x89;const _0x3640ff=a168_0x3640();let _0x3308b3=_0x3640ff[_0x1dfc94];return _0x3308b3;}import{CliErrors}from'../../errors.js';function a168_0x3640(){const _0x35b359=['POST','1045mPgxVa','User\x20','includes','Missing\x20user\x20reference.','find','587447kKJHlk','166884GCweSO','\x22\x20is\x20ambiguous\x20(ids:\x20','findIndex','role','flagMissing','dryRun','12JmzrrS',';\x20no\x20change.','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','Multiple\x20tenant\x20members\x20match\x20\x22','expectUserCount','3TXpzot','userId','16ZnCdVm','join','ADMIN','65hLslwv','USER','expect-user-count','roleType','\x20is\x20already\x20a\x20member\x20of\x20role\x20','push','username','tenant_code','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','\x20not\x20found\x20in\x20app\x20','/smartapi/permit/user-role/update-user-list','userList','Disambiguate\x20with\x20--role\x20<id>.','\x20not\x20found\x20in\x20the\x20user-role\x20list.','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','1853315DsHhob','remark','validation','roleName','appCode','filter','DEV','string','16474bVaimH','length','name','Disambiguate\x20with\x20--user\x20<id>.','Optional\x20role\x20remark/description','test','2479684cxMuXw','permitCount','Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)','\x20built-in\x20role\x20','Missing\x20role\x20reference.','Role\x20name\x20\x22','\x20is\x20not\x20a\x20member\x20of\x20role\x20','userCount','map','user','Role\x20id\x20(from\x20`role\x20list`)','authRequired','Pass\x20--role\x20<id|name>.','nickname','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20','Pass\x20--user\x20<id|name>.','Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.','Role\x20id\x20','594170Ayzali','splice','trim','\x22:\x20','\x22\x20not\x20found\x20in\x20app\x20','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','1269747eCDrGG','toLowerCase','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.'];a168_0x3640=function(){return _0x35b359;};return a168_0x3640();}export const ROLE_ID_FLAG={'name':'id','type':'number','required':!![],'description':a168_0x196cad(0xc2)};export const ROLE_REF_FLAG={'name':a168_0x196cad(0x8e),'type':a168_0x196cad(0xb1),'required':!![],'description':a168_0x196cad(0xba)};export const USER_REF_FLAG={'name':a168_0x196cad(0xc1),'type':'string','required':!![],'description':a168_0x196cad(0x93)};export const NAME_FLAG={'name':a168_0x196cad(0xb4),'type':a168_0x196cad(0xb1),'required':!![],'description':'Role\x20name'};export const USER_NAME_FLAG={'name':a168_0x196cad(0xb4),'type':'string','required':!![],'description':a168_0x196cad(0xd0)};export const REMARK_FLAG={'name':a168_0x196cad(0xab),'type':a168_0x196cad(0xb1),'required':![],'description':a168_0x196cad(0xb6)};export const EXPECT_USER_COUNT_FLAG={'name':'expect-user-count','type':'number','required':![],'description':a168_0x196cad(0xa3)};export const BUILTIN_ROLE_TYPES=[a168_0x196cad(0x9a),'DEV',a168_0x196cad(0x9c)];export function isBuiltinRole(_0x5b006c){const _0x23f377=a168_0x196cad;return BUILTIN_ROLE_TYPES[_0x23f377(0xd7)](_0x5b006c);}export function assertCustomRole(_0x23e4e5,_0x523a76){const _0x261ddc=a168_0x196cad;if(_0x23e4e5['roleType']!=='CUSTOM')throw CliErrors[_0x261ddc(0xac)]('Cannot\x20'+_0x523a76+_0x261ddc(0xbb)+_0x23e4e5[_0x261ddc(0xad)]+'\x20('+_0x23e4e5[_0x261ddc(0x9e)]+').',_0x261ddc(0xa9));}export function assertPermConfigurable(_0x4c449d){const _0x2b4950=a168_0x196cad;if(_0x4c449d[_0x2b4950(0x9e)]===_0x2b4950(0xb0)||_0x4c449d[_0x2b4950(0x9e)]===_0x2b4950(0x9a))throw CliErrors[_0x2b4950(0xac)](_0x2b4950(0xc7)+_0x4c449d['roleName']+'\x20('+_0x4c449d[_0x2b4950(0x9e)]+').','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.');}export function projectRole(_0x40a834){const _0x11b594=a168_0x196cad;return{'id':_0x40a834['id'],'roleName':_0x40a834[_0x11b594(0xad)],'roleType':_0x40a834[_0x11b594(0x9e)],'remark':_0x40a834[_0x11b594(0xab)],'userCount':_0x40a834[_0x11b594(0xbf)],'permitCount':_0x40a834[_0x11b594(0xb9)],'builtin':isBuiltinRole(_0x40a834[_0x11b594(0x9e)])};}export async function resolveRoleRef(_0x3d0bf9,_0x48478e){const _0x43e8e6=a168_0x196cad,_0x4515d5=_0x48478e[_0x43e8e6(0xcd)]();if(!_0x4515d5)throw CliErrors[_0x43e8e6(0xac)](_0x43e8e6(0xbc),_0x43e8e6(0xc4));if(/^\d+$/[_0x43e8e6(0xb7)](_0x4515d5))return getRoleById(_0x3d0bf9,Number(_0x4515d5));const _0xbbc6bd=await listAllAppRoles(_0x3d0bf9),_0x17f3a7=_0xbbc6bd[_0x43e8e6(0xaf)](_0x297145=>_0x297145['roleName']===_0x4515d5);if(_0x17f3a7[_0x43e8e6(0xb3)]===0x0)throw CliErrors[_0x43e8e6(0xac)](_0x43e8e6(0xbd)+_0x4515d5+_0x43e8e6(0xcf)+_0x3d0bf9+'.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.');if(_0x17f3a7['length']>0x1){const _0x34f2a5=_0x17f3a7['map'](_0xf66bb0=>_0xf66bb0['id'])['join'](',\x20');throw CliErrors['validation'](_0x43e8e6(0xbd)+_0x4515d5+_0x43e8e6(0x8c)+_0x34f2a5+').',_0x43e8e6(0xa7));}return _0x17f3a7[0x0];}export async function getRoleById(_0x3c6b24,_0x9c5dcd){const _0x2e75ed=a168_0x196cad,_0x33a46d=await getAppRole(_0x9c5dcd);if(!_0x33a46d)throw CliErrors[_0x2e75ed(0xac)](_0x2e75ed(0xca)+_0x9c5dcd+_0x2e75ed(0xa4)+_0x3c6b24+'.',_0x2e75ed(0xd3));return _0x33a46d;}async function listAllAppRoles(_0x29d6a1){const _0x52c714=a168_0x196cad,_0x11917f=0x64,_0x4e5db4=[];for(let _0x2f2df3=0x1;;_0x2f2df3+=0x1){const {items:_0x562efa,paging:_0x121a91}=await listAppRoles(_0x29d6a1,{'currentPage':_0x2f2df3,'pageSize':_0x11917f});_0x4e5db4[_0x52c714(0xa0)](..._0x562efa);if(_0x562efa[_0x52c714(0xb3)]<_0x11917f||_0x121a91&&_0x4e5db4[_0x52c714(0xb3)]>=_0x121a91['totalCount'])return _0x4e5db4;}}export async function resolveTenantCode(){const _0x5d5546=a168_0x196cad,_0x28994a=await getSessionUserInfo(),_0x226a15=_0x28994a?.['user']?.['tenant']?.[_0x5d5546(0xa2)];if(!_0x226a15)throw CliErrors[_0x5d5546(0xc3)](_0x5d5546(0xc9));return _0x226a15;}function matchMember(_0x1f96e0,_0x15444b){const _0x39747d=a168_0x196cad,_0x8e7b24=_0x15444b[_0x39747d(0xcd)]()[_0x39747d(0xd2)]();return(_0x1f96e0[_0x39747d(0xc5)]??'')[_0x39747d(0xd2)]()===_0x8e7b24||(_0x1f96e0['username']??'')[_0x39747d(0xd2)]()===_0x8e7b24;}export async function resolveUserRef(_0x5683af){const _0x165db2=a168_0x196cad,_0x401246=_0x5683af[_0x165db2(0xcd)]();if(!_0x401246)throw CliErrors['validation'](_0x165db2(0xd8),_0x165db2(0xc8));const _0x4e3607=await resolveTenantCode(),_0x3bfc52=await getTenantMembers(_0x4e3607);if(/^\d+$/['test'](_0x401246)){const _0x5565b4=Number(_0x401246),_0xc3060b=_0x3bfc52[_0x165db2(0x89)](_0x2672ce=>_0x2672ce[_0x165db2(0x97)]===_0x5565b4);return{'userId':_0x5565b4,'username':_0xc3060b?.['username']??String(_0x5565b4),'nickname':_0xc3060b?.[_0x165db2(0xc5)],'matchedBy':'id'};}const _0x540a58=_0x3bfc52['filter'](_0x376818=>matchMember(_0x376818,_0x401246));if(_0x540a58[_0x165db2(0xb3)]===0x0)throw CliErrors[_0x165db2(0xac)]('No\x20tenant\x20member\x20matches\x20\x22'+_0x401246+'\x22.','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.');if(_0x540a58['length']>0x1){const _0x52e696=_0x540a58[_0x165db2(0xc0)](_0x417414=>(_0x417414['nickname']??_0x417414[_0x165db2(0xa1)]??'?')+'('+_0x417414[_0x165db2(0x97)]+')')[_0x165db2(0x99)](',\x20');throw CliErrors[_0x165db2(0xac)](_0x165db2(0x94)+_0x401246+_0x165db2(0xce)+_0x52e696+'.',_0x165db2(0xb5));}const _0x5e9b0e=_0x540a58[0x0];return{'userId':_0x5e9b0e[_0x165db2(0x97)],'username':_0x5e9b0e[_0x165db2(0xa1)]??String(_0x5e9b0e['userId']),'nickname':_0x5e9b0e[_0x165db2(0xc5)],'matchedBy':_0x165db2(0xb4)};}export const UPDATE_USER_LIST_PATH=a168_0x196cad(0xa5);function userIdsOf(_0x59bb62){return(_0x59bb62?.['userList']??[])['map'](_0x403803=>_0x403803['userId']);}export function computeRoleUserMutation(_0x5ba2f7){const _0x16984a=a168_0x196cad,{operation:_0x2c4d7f,appCode:_0x3f9539,roleUsers:_0x39f172,targetRoleId:_0x51619b,user:_0x267e0a}=_0x5ba2f7,_0x147064=_0x39f172[_0x16984a(0x89)](_0x39b3c9=>_0x39b3c9['id']===_0x51619b);if(!_0x147064)throw CliErrors[_0x16984a(0xac)](_0x16984a(0xca)+_0x51619b+_0x16984a(0xa8),_0x16984a(0xd3));const _0x118a84=userIdsOf(_0x147064),_0x12eb8d=[];if(_0x5ba2f7[_0x16984a(0x95)]!==undefined&&_0x5ba2f7['expectUserCount']!==_0x118a84[_0x16984a(0xb3)])throw CliErrors['validation']('Anti-drift\x20check\x20failed:\x20expected\x20'+_0x5ba2f7[_0x16984a(0x95)]+'\x20member(s)\x20but\x20role\x20has\x20'+_0x118a84[_0x16984a(0xb3)]+'.',_0x16984a(0xc6));const _0x2c0a8f=_0x118a84[_0x16984a(0xd7)](_0x267e0a[_0x16984a(0x97)]);let _0x1a63dc=![];const _0x3a7947=[..._0x147064[_0x16984a(0xa6)]];if(_0x2c4d7f==='user-add')_0x2c0a8f?_0x12eb8d['push']('User\x20'+_0x267e0a['userId']+_0x16984a(0x9f)+_0x147064[_0x16984a(0xad)]+_0x16984a(0x92)):(_0x3a7947[_0x16984a(0xa0)]({'userId':_0x267e0a[_0x16984a(0x97)],'username':_0x267e0a[_0x16984a(0xa1)],..._0x267e0a[_0x16984a(0xc5)]?{'nickname':_0x267e0a[_0x16984a(0xc5)]}:{}}),_0x1a63dc=!![]);else{if(!_0x2c0a8f)_0x12eb8d[_0x16984a(0xa0)](_0x16984a(0xd6)+_0x267e0a[_0x16984a(0x97)]+_0x16984a(0xbe)+_0x147064['roleName']+_0x16984a(0x92));else{const _0x36819c=_0x3a7947[_0x16984a(0x8d)](_0x3eb80b=>_0x3eb80b[_0x16984a(0x97)]===_0x267e0a[_0x16984a(0x97)]);if(_0x36819c>=0x0)_0x3a7947[_0x16984a(0xcc)](_0x36819c,0x1);_0x1a63dc=!![];}}const _0x25102a=_0x39f172[_0x16984a(0xc0)](_0x4cda65=>_0x4cda65['id']===_0x51619b?{..._0x4cda65,'userList':_0x3a7947}:_0x4cda65),_0x21a04f=_0x3a7947[_0x16984a(0xc0)](_0x36e1df=>_0x36e1df[_0x16984a(0x97)]),_0x1854ee={'operation':_0x2c4d7f,'selector':{'appCode':_0x3f9539,'roleId':_0x51619b,'roleName':_0x147064[_0x16984a(0xad)],'userId':_0x267e0a['userId']},'before':{'userIds':_0x118a84},'after':{'userIds':_0x21a04f},'dryRun':_0x5ba2f7[_0x16984a(0x90)],'backend':{'method':_0x16984a(0xd4),'path':UPDATE_USER_LIST_PATH},'warnings':_0x12eb8d};return{'roleList':_0x25102a,'mutation':_0x1854ee,'changed':_0x1a63dc};}export async function loadRoleUsers(_0x239877){return listRoleUsers(_0x239877);}export function readRoleRef(_0x55c2ec){const _0x451c1d=a168_0x196cad,_0x5f57a4=_0x55c2ec['str'](_0x451c1d(0x8e))[_0x451c1d(0xcd)]();if(!_0x5f57a4)throw CliErrors[_0x451c1d(0x8f)](_0x451c1d(0x8e),_0x451c1d(0xc4));return _0x5f57a4;}export async function prepareUserMutation(_0x261ceb,_0x34218f,_0x58be6c){const _0x10a06f=a168_0x196cad,_0x50c0ab=readRoleRef(_0x261ceb),_0xdb4cc8=_0x261ceb['str']('user')['trim']();if(!_0xdb4cc8)throw CliErrors['flagMissing'](_0x10a06f(0xc1),'Pass\x20--user\x20<id|name>.');const _0x4c3ff0=_0x261ceb['flag'](_0x10a06f(0x9d)),_0x482e11=_0x4c3ff0===undefined||_0x4c3ff0===null?undefined:Number(_0x4c3ff0),_0x436621=await resolveRoleRef(_0x261ceb[_0x10a06f(0xae)],_0x50c0ab),_0x3cb2e8=await resolveUserRef(_0xdb4cc8),_0x9274a8=await loadRoleUsers(_0x261ceb['appCode']);return computeRoleUserMutation({'operation':_0x34218f,'appCode':_0x261ceb['appCode'],'roleUsers':_0x9274a8,'targetRoleId':_0x436621['id'],'user':{'userId':_0x3cb2e8[_0x10a06f(0x97)],'username':_0x3cb2e8[_0x10a06f(0xa1)],'nickname':_0x3cb2e8['nickname']},'dryRun':_0x58be6c,..._0x482e11!==undefined?{'expectUserCount':_0x482e11}:{}});}
@@ -1 +1 @@
1
- const a169_0xdfbb37=a169_0x18d2;(function(_0x2b8940,_0x92571a){const _0x5753cc=a169_0x18d2,_0xc74409=_0x2b8940();while(!![]){try{const _0x5ad707=-parseInt(_0x5753cc(0xb6))/0x1+-parseInt(_0x5753cc(0xbe))/0x2+parseInt(_0x5753cc(0xa6))/0x3+parseInt(_0x5753cc(0xb3))/0x4+-parseInt(_0x5753cc(0xac))/0x5*(parseInt(_0x5753cc(0xbb))/0x6)+parseInt(_0x5753cc(0xb1))/0x7*(parseInt(_0x5753cc(0xc0))/0x8)+-parseInt(_0x5753cc(0xb5))/0x9*(-parseInt(_0x5753cc(0xb2))/0xa);if(_0x5ad707===_0x92571a)break;else _0xc74409['push'](_0xc74409['shift']());}catch(_0x213a1c){_0xc74409['push'](_0xc74409['shift']());}}}(a169_0x403f,0xdeb32));import{updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';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=a169_0xdfbb37(0xaf);function a169_0x403f(){const _0x5e608f=['validation','\x20(id=','2536566TjzkTu','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','1645792ZbIfxh','appCode','355272DdlfGA','roleName','update','--name\x20cannot\x20be\x20empty.','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','length','1021475cMkWJB','trim','Updated\x20role\x20','/smartapi/permit/role/update','write','56qAyYbS','1803370Bcacgf','7155360ESoLFG','POST','45lMEuWp','1661395qXdQCX','remark','num','flag','name','18JdUGGI'];a169_0x403f=function(){return _0x5e608f;};return a169_0x403f();}function a169_0x18d2(_0x257215,_0x364ba9){_0x257215=_0x257215-0xa5;const _0x403f3c=a169_0x403f();let _0x18d23d=_0x403f3c[_0x257215];return _0x18d23d;}function readPatch(_0x13b641){const _0x471123=a169_0xdfbb37,_0x400af1=_0x13b641['flag'](_0x471123(0xba)),_0x233f11=_0x13b641[_0x471123(0xb9)](_0x471123(0xb7)),_0x28904e={};if(_0x400af1!==undefined&&_0x400af1!==null){const _0x25bafb=String(_0x400af1)[_0x471123(0xad)]();if(!_0x25bafb)throw CliErrors[_0x471123(0xbc)](_0x471123(0xa9));if(_0x25bafb[_0x471123(0xab)]>0x40)throw CliErrors[_0x471123(0xbc)](_0x471123(0xaa));_0x28904e[_0x471123(0xa7)]=_0x25bafb;}_0x233f11!==undefined&&_0x233f11!==null&&(_0x28904e[_0x471123(0xb7)]=String(_0x233f11));if(_0x28904e[_0x471123(0xa7)]===undefined&&_0x28904e[_0x471123(0xb7)]===undefined)throw CliErrors[_0x471123(0xbc)]('Nothing\x20to\x20update.',_0x471123(0xbf));return _0x28904e;}export const roleUpdate={'service':'role','command':a169_0xdfbb37(0xa8),'description':'Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','risk':a169_0xdfbb37(0xb0),'flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a169_0xdfbb37(0xba),'type':'string','required':![],'description':'New\x20role\x20name'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x32a4e7){readPatch(_0x32a4e7);},async 'dryRun'(_0x2bdcd7){const _0x7d911a=a169_0xdfbb37,_0x2cec36=_0x2bdcd7[_0x7d911a(0xb8)]('id'),_0x388ce2=readPatch(_0x2bdcd7),_0x14652f=await getRoleById(_0x2bdcd7[_0x7d911a(0xa5)],_0x2cec36);return assertCustomRole(_0x14652f,'update'),asDryRunResult({'operation':_0x7d911a(0xa8),'selector':{'appCode':_0x2bdcd7[_0x7d911a(0xa5)],'roleId':_0x2cec36,'roleName':_0x14652f[_0x7d911a(0xa7)]},'before':projectRole(_0x14652f),'after':projectRole({..._0x14652f,..._0x388ce2[_0x7d911a(0xa7)]!==undefined?{'roleName':_0x388ce2['roleName']}:{},..._0x388ce2['remark']!==undefined?{'remark':_0x388ce2[_0x7d911a(0xb7)]}:{}}),'dryRun':!![],'backend':{'method':_0x7d911a(0xb4),'path':UPDATE_PATH},'warnings':[]},{'method':_0x7d911a(0xb4),'url':UPDATE_PATH});},async 'execute'(_0x349904){const _0x15f7b0=a169_0xdfbb37,_0x5371b9=_0x349904[_0x15f7b0(0xb8)]('id'),_0x31173b=readPatch(_0x349904),_0x27be5f=await getRoleById(_0x349904[_0x15f7b0(0xa5)],_0x5371b9);assertCustomRole(_0x27be5f,_0x15f7b0(0xa8)),await updateAppRole({'id':_0x5371b9,'appCode':_0x349904[_0x15f7b0(0xa5)],..._0x31173b[_0x15f7b0(0xa7)]!==undefined?{'roleName':_0x31173b[_0x15f7b0(0xa7)]}:{},..._0x31173b[_0x15f7b0(0xb7)]!==undefined?{'remark':_0x31173b[_0x15f7b0(0xb7)]}:{}});const _0x341178=await getRoleById(_0x349904[_0x15f7b0(0xa5)],_0x5371b9);return{'ok':!![],'data':{'operation':_0x15f7b0(0xa8),'selector':{'appCode':_0x349904[_0x15f7b0(0xa5)],'roleId':_0x5371b9,'roleName':_0x341178['roleName']},'before':projectRole(_0x27be5f),'after':projectRole(_0x341178),'dryRun':![],'backend':{'method':_0x15f7b0(0xb4),'path':UPDATE_PATH},'warnings':[]},'message':_0x15f7b0(0xae)+_0x341178[_0x15f7b0(0xa7)]+_0x15f7b0(0xbd)+_0x5371b9+')'};}};
1
+ const a169_0x3f4b9e=a169_0x2715;(function(_0x8d42bf,_0x57fe1c){const _0x4ba4b0=a169_0x2715,_0x2e6712=_0x8d42bf();while(!![]){try{const _0x46f2de=-parseInt(_0x4ba4b0(0xad))/0x1*(parseInt(_0x4ba4b0(0xbf))/0x2)+-parseInt(_0x4ba4b0(0xc2))/0x3+parseInt(_0x4ba4b0(0xb9))/0x4+-parseInt(_0x4ba4b0(0xc0))/0x5*(parseInt(_0x4ba4b0(0xb7))/0x6)+-parseInt(_0x4ba4b0(0xb8))/0x7+-parseInt(_0x4ba4b0(0xc1))/0x8*(parseInt(_0x4ba4b0(0xc3))/0x9)+parseInt(_0x4ba4b0(0xba))/0xa;if(_0x46f2de===_0x57fe1c)break;else _0x2e6712['push'](_0x2e6712['shift']());}catch(_0x1d38ce){_0x2e6712['push'](_0x2e6712['shift']());}}}(a169_0x3e07,0x4544a));import{updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';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';function a169_0x2715(_0x19348f,_0xa48146){_0x19348f=_0x19348f-0xa8;const _0x3e0753=a169_0x3e07();let _0x27151d=_0x3e0753[_0x19348f];return _0x27151d;}const UPDATE_PATH=a169_0x3f4b9e(0xbd);function readPatch(_0x18cd44){const _0x20adf9=a169_0x3f4b9e,_0x4b1d6a=_0x18cd44['flag'](_0x20adf9(0xb1)),_0x1269e3=_0x18cd44['flag']('remark'),_0x5eeb5b={};if(_0x4b1d6a!==undefined&&_0x4b1d6a!==null){const _0x51641e=String(_0x4b1d6a)[_0x20adf9(0xac)]();if(!_0x51641e)throw CliErrors[_0x20adf9(0xae)](_0x20adf9(0xbe));if(_0x51641e['length']>0x40)throw CliErrors['validation']('Role\x20name\x20cannot\x20exceed\x2064\x20characters.');_0x5eeb5b[_0x20adf9(0xb6)]=_0x51641e;}_0x1269e3!==undefined&&_0x1269e3!==null&&(_0x5eeb5b[_0x20adf9(0xaa)]=String(_0x1269e3));if(_0x5eeb5b[_0x20adf9(0xb6)]===undefined&&_0x5eeb5b[_0x20adf9(0xaa)]===undefined)throw CliErrors[_0x20adf9(0xae)](_0x20adf9(0xaf),_0x20adf9(0xb2));return _0x5eeb5b;}function a169_0x3e07(){const _0x5afa27=['5274tFdfRe','935arBYzw','951600McovpG','649452AWRqAX','18WeAdcJ','string','Updated\x20role\x20','remark','POST','trim','88EFEVSF','validation','Nothing\x20to\x20update.','\x20(id=','name','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','num','update','roleName','15402Ngabzc','2790830MmyJNd','92160KTASoA','18258410FEjgzZ','write','appCode','/smartapi/permit/role/update','--name\x20cannot\x20be\x20empty.'];a169_0x3e07=function(){return _0x5afa27;};return a169_0x3e07();}export const roleUpdate={'service':'role','command':a169_0x3f4b9e(0xb5),'description':a169_0x3f4b9e(0xb3),'risk':a169_0x3f4b9e(0xbb),'flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a169_0x3f4b9e(0xb1),'type':a169_0x3f4b9e(0xa8),'required':![],'description':'New\x20role\x20name'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x39ac56){readPatch(_0x39ac56);},async 'dryRun'(_0xbec861){const _0x1905d4=a169_0x3f4b9e,_0x3e29e8=_0xbec861['num']('id'),_0xb4607d=readPatch(_0xbec861),_0x370c66=await getRoleById(_0xbec861['appCode'],_0x3e29e8);return assertCustomRole(_0x370c66,'update'),asDryRunResult({'operation':_0x1905d4(0xb5),'selector':{'appCode':_0xbec861['appCode'],'roleId':_0x3e29e8,'roleName':_0x370c66[_0x1905d4(0xb6)]},'before':projectRole(_0x370c66),'after':projectRole({..._0x370c66,..._0xb4607d['roleName']!==undefined?{'roleName':_0xb4607d[_0x1905d4(0xb6)]}:{},..._0xb4607d[_0x1905d4(0xaa)]!==undefined?{'remark':_0xb4607d[_0x1905d4(0xaa)]}:{}}),'dryRun':!![],'backend':{'method':_0x1905d4(0xab),'path':UPDATE_PATH},'warnings':[]},{'method':_0x1905d4(0xab),'url':UPDATE_PATH});},async 'execute'(_0x3c2712){const _0x150d45=a169_0x3f4b9e,_0x321732=_0x3c2712[_0x150d45(0xb4)]('id'),_0x120e3a=readPatch(_0x3c2712),_0x257b79=await getRoleById(_0x3c2712['appCode'],_0x321732);assertCustomRole(_0x257b79,_0x150d45(0xb5)),await updateAppRole({'id':_0x321732,'appCode':_0x3c2712[_0x150d45(0xbc)],..._0x120e3a[_0x150d45(0xb6)]!==undefined?{'roleName':_0x120e3a['roleName']}:{},..._0x120e3a[_0x150d45(0xaa)]!==undefined?{'remark':_0x120e3a[_0x150d45(0xaa)]}:{}});const _0x5ed75f=await getRoleById(_0x3c2712[_0x150d45(0xbc)],_0x321732);return{'ok':!![],'data':{'operation':_0x150d45(0xb5),'selector':{'appCode':_0x3c2712['appCode'],'roleId':_0x321732,'roleName':_0x5ed75f[_0x150d45(0xb6)]},'before':projectRole(_0x257b79),'after':projectRole(_0x5ed75f),'dryRun':![],'backend':{'method':_0x150d45(0xab),'path':UPDATE_PATH},'warnings':[]},'message':_0x150d45(0xa9)+_0x5ed75f['roleName']+_0x150d45(0xb0)+_0x321732+')'};}};
@@ -1 +1 @@
1
- const a170_0x53ee88=a170_0x4a16;function a170_0x549f(){const _0x27255b=['2IDlZyn','4332pcUITH','POST','122868swHfLd','657763BZdCUZ','1342530hoxQDv','75somHHd','14888nFawYm','roleName','47368hQPozS','Added\x20user\x20','Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','559cAInMk','\x20already\x20in\x20role\x20','\x20to\x20role\x20','10mIlJcj','appCode','3630BiuUwL','selector','5160331HoZvYr','userId','user-add','2177kOJacY','role'];a170_0x549f=function(){return _0x27255b;};return a170_0x549f();}(function(_0x556795,_0x119359){const _0x9015df=a170_0x4a16,_0x2ce141=_0x556795();while(!![]){try{const _0x365bc5=-parseInt(_0x9015df(0xf7))/0x1*(-parseInt(_0x9015df(0xf3))/0x2)+parseInt(_0x9015df(0xe1))/0x3*(-parseInt(_0x9015df(0xe4))/0x4)+parseInt(_0x9015df(0xec))/0x5*(parseInt(_0x9015df(0xf4))/0x6)+-parseInt(_0x9015df(0xf1))/0x7*(parseInt(_0x9015df(0xe2))/0x8)+parseInt(_0x9015df(0xf8))/0x9+parseInt(_0x9015df(0xea))/0xa*(parseInt(_0x9015df(0xee))/0xb)+parseInt(_0x9015df(0xf6))/0xc*(-parseInt(_0x9015df(0xe7))/0xd);if(_0x365bc5===_0x119359)break;else _0x2ce141['push'](_0x2ce141['shift']());}catch(_0x4c3d2a){_0x2ce141['push'](_0x2ce141['shift']());}}}(a170_0x549f,0x76708));function a170_0x4a16(_0x31d269,_0x4d3bcc){_0x31d269=_0x31d269-0xe1;const _0x549fd7=a170_0x549f();let _0x4a1608=_0x549fd7[_0x31d269];return _0x4a1608;}import{updateRoleUsers}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,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserAdd={'service':a170_0x53ee88(0xf2),'command':a170_0x53ee88(0xf0),'description':a170_0x53ee88(0xe6),'risk':'high-risk-write','flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x126574){const _0x4e7f60=a170_0x53ee88,{mutation:_0xd64f28}=await prepareUserMutation(_0x126574,_0x4e7f60(0xf0),!![]);return asDryRunResult(_0xd64f28,{'method':_0x4e7f60(0xf5),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x7bb7c){const _0x177826=a170_0x53ee88,{roleList:_0x96ba3,mutation:_0x55ba78,changed:_0x56cdd0}=await prepareUserMutation(_0x7bb7c,_0x177826(0xf0),![]);return _0x56cdd0&&await updateRoleUsers(_0x7bb7c[_0x177826(0xeb)],_0x96ba3),{'ok':!![],'data':_0x55ba78,'message':_0x56cdd0?_0x177826(0xe5)+_0x55ba78[_0x177826(0xed)][_0x177826(0xef)]+_0x177826(0xe9)+_0x55ba78['selector']['roleName']:'No\x20change:\x20user\x20'+_0x55ba78[_0x177826(0xed)][_0x177826(0xef)]+_0x177826(0xe8)+_0x55ba78[_0x177826(0xed)][_0x177826(0xe3)]};}};
1
+ function a170_0xe5d3(_0x4d6fa7,_0x53d8b7){_0x4d6fa7=_0x4d6fa7-0x158;const _0x379d24=a170_0x379d();let _0xe5d3bc=_0x379d24[_0x4d6fa7];return _0xe5d3bc;}const a170_0x1bb0e3=a170_0xe5d3;(function(_0x148df0,_0x1c4279){const _0x1389f4=a170_0xe5d3,_0x1ee8a5=_0x148df0();while(!![]){try{const _0x18e2de=parseInt(_0x1389f4(0x160))/0x1+-parseInt(_0x1389f4(0x16b))/0x2*(-parseInt(_0x1389f4(0x16c))/0x3)+-parseInt(_0x1389f4(0x167))/0x4+-parseInt(_0x1389f4(0x168))/0x5*(-parseInt(_0x1389f4(0x169))/0x6)+-parseInt(_0x1389f4(0x15f))/0x7+-parseInt(_0x1389f4(0x15b))/0x8+-parseInt(_0x1389f4(0x159))/0x9;if(_0x18e2de===_0x1c4279)break;else _0x1ee8a5['push'](_0x1ee8a5['shift']());}catch(_0x1cc606){_0x1ee8a5['push'](_0x1ee8a5['shift']());}}}(a170_0x379d,0x445b8));import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a170_0x379d(){const _0x534ab9=['roleName','selector','appCode','303768sMAZBc','15tdwlCL','691098DdTBDb','user-add','12fhEhMN','118770GAZpum','role','53091lJLzge','No\x20change:\x20user\x20','677400GwksUG','POST','Added\x20user\x20','high-risk-write','1556968HpCrZC','85843Hsgplt','Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','\x20already\x20in\x20role\x20','userId'];a170_0x379d=function(){return _0x534ab9;};return a170_0x379d();}import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserAdd={'service':a170_0x1bb0e3(0x158),'command':a170_0x1bb0e3(0x16a),'description':a170_0x1bb0e3(0x161),'risk':a170_0x1bb0e3(0x15e),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x4cf27b){const _0x53d6cb=a170_0x1bb0e3,{mutation:_0xc91a05}=await prepareUserMutation(_0x4cf27b,_0x53d6cb(0x16a),!![]);return asDryRunResult(_0xc91a05,{'method':_0x53d6cb(0x15c),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x226d33){const _0x59191f=a170_0x1bb0e3,{roleList:_0x289f70,mutation:_0x5a266e,changed:_0x438465}=await prepareUserMutation(_0x226d33,'user-add',![]);return _0x438465&&await updateRoleUsers(_0x226d33[_0x59191f(0x166)],_0x289f70),{'ok':!![],'data':_0x5a266e,'message':_0x438465?_0x59191f(0x15d)+_0x5a266e[_0x59191f(0x165)][_0x59191f(0x163)]+'\x20to\x20role\x20'+_0x5a266e['selector'][_0x59191f(0x164)]:_0x59191f(0x15a)+_0x5a266e[_0x59191f(0x165)][_0x59191f(0x163)]+_0x59191f(0x162)+_0x5a266e[_0x59191f(0x165)]['roleName']};}};
@@ -1 +1 @@
1
- const a171_0x54fcab=a171_0xd8f5;(function(_0xec5e10,_0x10ef8f){const _0x1ee03a=a171_0xd8f5,_0x35c93b=_0xec5e10();while(!![]){try{const _0x53377b=parseInt(_0x1ee03a(0x177))/0x1*(parseInt(_0x1ee03a(0x174))/0x2)+-parseInt(_0x1ee03a(0x173))/0x3*(parseInt(_0x1ee03a(0x183))/0x4)+-parseInt(_0x1ee03a(0x179))/0x5*(-parseInt(_0x1ee03a(0x17f))/0x6)+-parseInt(_0x1ee03a(0x180))/0x7+parseInt(_0x1ee03a(0x185))/0x8+parseInt(_0x1ee03a(0x17c))/0x9*(-parseInt(_0x1ee03a(0x189))/0xa)+parseInt(_0x1ee03a(0x17e))/0xb;if(_0x53377b===_0x10ef8f)break;else _0x35c93b['push'](_0x35c93b['shift']());}catch(_0x9386e2){_0x35c93b['push'](_0x35c93b['shift']());}}}(a171_0x3371,0xa8068));import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a171_0xd8f5(_0x28911e,_0x30ec5e){_0x28911e=_0x28911e-0x173;const _0x337161=a171_0x3371();let _0xd8f535=_0x337161[_0x28911e];return _0xd8f535;}import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserRemove={'service':'role','command':a171_0x54fcab(0x184),'description':a171_0x54fcab(0x181),'risk':a171_0x54fcab(0x182),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x2c6356){const _0x1834a5=a171_0x54fcab,{mutation:_0x2630e5}=await prepareUserMutation(_0x2c6356,_0x1834a5(0x184),!![]);return asDryRunResult(_0x2630e5,{'method':_0x1834a5(0x17b),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x5f36fc){const _0x51d734=a171_0x54fcab,{roleList:_0x46d70d,mutation:_0x215dcf,changed:_0x5c5e85}=await prepareUserMutation(_0x5f36fc,_0x51d734(0x184),![]);return _0x5c5e85&&await updateRoleUsers(_0x5f36fc[_0x51d734(0x187)],_0x46d70d),{'ok':!![],'data':_0x215dcf,'message':_0x5c5e85?_0x51d734(0x175)+_0x215dcf['selector'][_0x51d734(0x17a)]+_0x51d734(0x176)+_0x215dcf[_0x51d734(0x188)][_0x51d734(0x186)]:_0x51d734(0x178)+_0x215dcf['selector'][_0x51d734(0x17a)]+_0x51d734(0x17d)+_0x215dcf[_0x51d734(0x188)][_0x51d734(0x186)]};}};function a171_0x3371(){const _0x49337d=['31326NhOMno','4751754gXpqtT','Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','high-risk-write','4653892RtWrRQ','user-remove','1529008VRdkJz','roleName','appCode','selector','12990HlfsGR','3YAchus','1010736RHArgg','Removed\x20user\x20','\x20from\x20role\x20','2WnjVxX','No\x20change:\x20user\x20','355icjWtX','userId','POST','4878SGsHEq','\x20not\x20in\x20role\x20','18282352ESrfRy'];a171_0x3371=function(){return _0x49337d;};return a171_0x3371();}
1
+ const a171_0x439366=a171_0x36a1;(function(_0x194556,_0x1f19a9){const _0x4c0278=a171_0x36a1,_0x48629b=_0x194556();while(!![]){try{const _0x23d5f1=parseInt(_0x4c0278(0xdc))/0x1+-parseInt(_0x4c0278(0xd8))/0x2+parseInt(_0x4c0278(0xcd))/0x3+-parseInt(_0x4c0278(0xdb))/0x4*(parseInt(_0x4c0278(0xcf))/0x5)+-parseInt(_0x4c0278(0xd7))/0x6*(-parseInt(_0x4c0278(0xd1))/0x7)+-parseInt(_0x4c0278(0xd5))/0x8+parseInt(_0x4c0278(0xd9))/0x9;if(_0x23d5f1===_0x1f19a9)break;else _0x48629b['push'](_0x48629b['shift']());}catch(_0x7c4fa5){_0x48629b['push'](_0x48629b['shift']());}}}(a171_0x54a5,0xc0938));function a171_0x54a5(){const _0x54c8fc=['high-risk-write','3423720uqVwWU','No\x20change:\x20user\x20','63805bleTiO','roleName','7wXDEnX','appCode','selector','user-remove','9028312pPDbhq','userId','5053242yrcObU','2844hIbzfj','1957833XXtWtD','\x20not\x20in\x20role\x20','476cGrREn','1236328kOEFID'];a171_0x54a5=function(){return _0x54c8fc;};return a171_0x54a5();}function a171_0x36a1(_0x5d6c8f,_0x191bd4){_0x5d6c8f=_0x5d6c8f-0xcc;const _0x54a536=a171_0x54a5();let _0x36a15f=_0x54a536[_0x5d6c8f];return _0x36a15f;}import{updateRoleUsers}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,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserRemove={'service':'role','command':a171_0x439366(0xd4),'description':'Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','risk':a171_0x439366(0xcc),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x3c4aa8){const _0x4107ee=a171_0x439366,{mutation:_0x17e65a}=await prepareUserMutation(_0x3c4aa8,_0x4107ee(0xd4),!![]);return asDryRunResult(_0x17e65a,{'method':'POST','url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x12874c){const _0x2a8c2f=a171_0x439366,{roleList:_0x1da6dd,mutation:_0x47cfde,changed:_0x654b81}=await prepareUserMutation(_0x12874c,_0x2a8c2f(0xd4),![]);return _0x654b81&&await updateRoleUsers(_0x12874c[_0x2a8c2f(0xd2)],_0x1da6dd),{'ok':!![],'data':_0x47cfde,'message':_0x654b81?'Removed\x20user\x20'+_0x47cfde['selector'][_0x2a8c2f(0xd6)]+'\x20from\x20role\x20'+_0x47cfde[_0x2a8c2f(0xd3)][_0x2a8c2f(0xd0)]:_0x2a8c2f(0xce)+_0x47cfde[_0x2a8c2f(0xd3)][_0x2a8c2f(0xd6)]+_0x2a8c2f(0xda)+_0x47cfde[_0x2a8c2f(0xd3)]['roleName']};}};
@@ -1 +1 @@
1
- function a172_0x19ba(){const _0x1e3336=['userId','6hEmrNr','2860767bpzUNH','2591729awGMCi','username','704918KHaNfB','user-resolve','1228875SrfEHH','read','nickname','2827770ZnQVQy','str','name','flagMissing','5757544ZhWCbP','1074188ReRAEN','6jcOOcO','Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','2tAbQew'];a172_0x19ba=function(){return _0x1e3336;};return a172_0x19ba();}const a172_0x5f2e45=a172_0xf736;(function(_0x3502a2,_0x2c6a71){const _0x288f0e=a172_0xf736,_0x367a21=_0x3502a2();while(!![]){try{const _0x110fe8=parseInt(_0x288f0e(0x1af))/0x1*(parseInt(_0x288f0e(0x1b5))/0x2)+parseInt(_0x288f0e(0x1ad))/0x3*(parseInt(_0x288f0e(0x1ac))/0x4)+parseInt(_0x288f0e(0x1b7))/0x5+parseInt(_0x288f0e(0x1b1))/0x6*(-parseInt(_0x288f0e(0x1b3))/0x7)+-parseInt(_0x288f0e(0x1ab))/0x8+parseInt(_0x288f0e(0x1b2))/0x9+-parseInt(_0x288f0e(0x1ba))/0xa;if(_0x110fe8===_0x2c6a71)break;else _0x367a21['push'](_0x367a21['shift']());}catch(_0x24dc9c){_0x367a21['push'](_0x367a21['shift']());}}}(a172_0x19ba,0x69b25));function a172_0xf736(_0xc2cfc0,_0xca1826){_0xc2cfc0=_0xc2cfc0-0x1ab;const _0x19ba04=a172_0x19ba();let _0xf736e8=_0x19ba04[_0xc2cfc0];return _0xf736e8;}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';export const roleUserResolve={'service':'role','command':a172_0x5f2e45(0x1b6),'description':a172_0x5f2e45(0x1ae),'risk':a172_0x5f2e45(0x1b8),'flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x37e1ca){const _0x2964bb=a172_0x5f2e45;if(!_0x37e1ca['str']('name')['trim']())throw CliErrors[_0x2964bb(0x1bd)](_0x2964bb(0x1bc),'Pass\x20--name\x20<nickname|username>.');},async 'execute'(_0x1d5abe){const _0x592d95=a172_0x5f2e45,_0x3805e3=_0x1d5abe[_0x592d95(0x1bb)](_0x592d95(0x1bc))['trim'](),_0x43a63e=await resolveUserRef(_0x3805e3);return{'ok':!![],'data':{'user':{'userId':_0x43a63e[_0x592d95(0x1b0)],'username':_0x43a63e[_0x592d95(0x1b4)],'nickname':_0x43a63e[_0x592d95(0x1b9)],'matchedBy':_0x43a63e['matchedBy']}},'message':'Resolved\x20\x22'+_0x3805e3+'\x22\x20→\x20userId\x20'+_0x43a63e[_0x592d95(0x1b0)]};}};
1
+ const a172_0x1d333e=a172_0x1e4b;(function(_0x505880,_0x56bf44){const _0x173868=a172_0x1e4b,_0x1936a6=_0x505880();while(!![]){try{const _0x5ba8df=parseInt(_0x173868(0x1fe))/0x1*(-parseInt(_0x173868(0x205))/0x2)+-parseInt(_0x173868(0x209))/0x3*(-parseInt(_0x173868(0x1fa))/0x4)+-parseInt(_0x173868(0x20b))/0x5*(-parseInt(_0x173868(0x203))/0x6)+parseInt(_0x173868(0x1f4))/0x7*(parseInt(_0x173868(0x1ff))/0x8)+parseInt(_0x173868(0x208))/0x9+parseInt(_0x173868(0x1fd))/0xa+-parseInt(_0x173868(0x200))/0xb*(parseInt(_0x173868(0x1f6))/0xc);if(_0x5ba8df===_0x56bf44)break;else _0x1936a6['push'](_0x1936a6['shift']());}catch(_0x5cd6e3){_0x1936a6['push'](_0x1936a6['shift']());}}}(a172_0x24ee,0xb349c));import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a172_0x1e4b(_0x18d1ef,_0x2b79a0){_0x18d1ef=_0x18d1ef-0x1f3;const _0x24ee42=a172_0x24ee();let _0x1e4bd5=_0x24ee42[_0x18d1ef];return _0x1e4bd5;}import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';function a172_0x24ee(){const _0x7737bd=['20UrjgBe','33896xHKsUt','55dDeNfH','trim','role','552FaiEId','userId','2398beXJhg','name','Resolved\x20\x22','3301191XOjXsf','2352mHFYyR','Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','16925ukJGTg','username','1603zPKyJd','nickname','4865268AYqaSJ','read','flagMissing','matchedBy','5376SSxWOp','user-resolve','str','833510zYXqZf'];a172_0x24ee=function(){return _0x7737bd;};return a172_0x24ee();}export const roleUserResolve={'service':a172_0x1d333e(0x202),'command':a172_0x1d333e(0x1fb),'description':a172_0x1d333e(0x20a),'risk':a172_0x1d333e(0x1f7),'flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x44b76a){const _0x240d05=a172_0x1d333e;if(!_0x44b76a['str']('name')[_0x240d05(0x201)]())throw CliErrors[_0x240d05(0x1f8)](_0x240d05(0x206),'Pass\x20--name\x20<nickname|username>.');},async 'execute'(_0xa3f747){const _0x530a99=a172_0x1d333e,_0x528e56=_0xa3f747[_0x530a99(0x1fc)](_0x530a99(0x206))[_0x530a99(0x201)](),_0x2ee22c=await resolveUserRef(_0x528e56);return{'ok':!![],'data':{'user':{'userId':_0x2ee22c[_0x530a99(0x204)],'username':_0x2ee22c[_0x530a99(0x1f3)],'nickname':_0x2ee22c[_0x530a99(0x1f5)],'matchedBy':_0x2ee22c[_0x530a99(0x1f9)]}},'message':_0x530a99(0x207)+_0x528e56+'\x22\x20→\x20userId\x20'+_0x2ee22c[_0x530a99(0x204)]};}};