@lovrabet/rabetbase-cli 2.3.10 → 2.3.11-beta.1

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 (260) 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/add.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/remote-directory.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/get.js +1 -1
  53. package/lib/commands/config/index.js +1 -1
  54. package/lib/commands/config/list.js +1 -1
  55. package/lib/commands/config/set.js +1 -1
  56. package/lib/commands/config/shared.js +1 -1
  57. package/lib/commands/data/filter.js +1 -1
  58. package/lib/commands/data/getOne.js +1 -1
  59. package/lib/commands/data/index.js +1 -1
  60. package/lib/commands/data/shared.js +1 -1
  61. package/lib/commands/dataset/business-group-update.js +1 -1
  62. package/lib/commands/dataset/capability.js +1 -1
  63. package/lib/commands/dataset/delete.js +1 -1
  64. package/lib/commands/dataset/detail.js +1 -1
  65. package/lib/commands/dataset/extend-update.js +1 -1
  66. package/lib/commands/dataset/field-update.js +1 -1
  67. package/lib/commands/dataset/generate.js +1 -1
  68. package/lib/commands/dataset/index.js +1 -1
  69. package/lib/commands/dataset/list.js +1 -1
  70. package/lib/commands/dataset/operations.js +1 -1
  71. package/lib/commands/dataset/relation-audit.js +1 -1
  72. package/lib/commands/dataset/relation-create.js +1 -1
  73. package/lib/commands/dataset/relation-delete.js +1 -1
  74. package/lib/commands/dataset/relation-shared.js +1 -1
  75. package/lib/commands/dataset/relation-update.js +1 -1
  76. package/lib/commands/dataset/relations.js +1 -1
  77. package/lib/commands/dataset/rename.js +1 -1
  78. package/lib/commands/dataset/restore.js +1 -1
  79. package/lib/commands/db/analysis-batching.js +1 -1
  80. package/lib/commands/db/analyze-batch-plan.js +1 -1
  81. package/lib/commands/db/analyze-cancel.js +1 -1
  82. package/lib/commands/db/analyze-start.js +1 -1
  83. package/lib/commands/db/analyze-status.js +1 -1
  84. package/lib/commands/db/create.js +1 -1
  85. package/lib/commands/db/delete.js +1 -1
  86. package/lib/commands/db/detail.js +1 -1
  87. package/lib/commands/db/diff.js +1 -1
  88. package/lib/commands/db/index.js +1 -1
  89. package/lib/commands/db/list.js +1 -1
  90. package/lib/commands/db/shared.js +1 -1
  91. package/lib/commands/db/tables.js +1 -1
  92. package/lib/commands/db/test.js +1 -1
  93. package/lib/commands/db/update.js +1 -1
  94. package/lib/commands/doctor.js +1 -1
  95. package/lib/commands/file/index.js +1 -1
  96. package/lib/commands/init/index.js +1 -1
  97. package/lib/commands/issue/index.js +1 -1
  98. package/lib/commands/issue/nudge.js +1 -1
  99. package/lib/commands/issue/report.js +1 -1
  100. package/lib/commands/issue/shared.js +1 -1
  101. package/lib/commands/logs/index.js +1 -1
  102. package/lib/commands/menu/delete.js +1 -1
  103. package/lib/commands/menu/external-link-create.js +1 -1
  104. package/lib/commands/menu/group-create.js +1 -1
  105. package/lib/commands/menu/group-update.js +1 -1
  106. package/lib/commands/menu/index.js +1 -1
  107. package/lib/commands/menu/list.js +1 -1
  108. package/lib/commands/menu/move.js +1 -0
  109. package/lib/commands/menu/regroup-start.js +1 -1
  110. package/lib/commands/menu/shared/compare-table.js +1 -1
  111. package/lib/commands/menu/shared/delete-plan.js +1 -1
  112. package/lib/commands/menu/shared/facts.js +1 -1
  113. package/lib/commands/menu/shared/index.js +1 -1
  114. package/lib/commands/menu/shared/inquirer.js +1 -1
  115. package/lib/commands/menu/shared/local-pages.js +1 -1
  116. package/lib/commands/menu/shared/logic.js +1 -1
  117. package/lib/commands/menu/shared/mutations.js +1 -1
  118. package/lib/commands/menu/shared/service.js +1 -1
  119. package/lib/commands/menu/shared/sync-core.js +1 -1
  120. package/lib/commands/menu/shared/update-core.js +1 -1
  121. package/lib/commands/menu/shared/valid-url.js +1 -1
  122. package/lib/commands/menu/sync.js +1 -1
  123. package/lib/commands/menu/update.js +1 -1
  124. package/lib/commands/notification/config-list.js +1 -1
  125. package/lib/commands/notification/index.js +1 -1
  126. package/lib/commands/page/generate-start.js +1 -1
  127. package/lib/commands/page/generate-status.js +1 -1
  128. package/lib/commands/page/index.js +1 -1
  129. package/lib/commands/page/pull.js +1 -1
  130. package/lib/commands/page/push.js +1 -1
  131. package/lib/commands/page/relation-audit.js +1 -1
  132. package/lib/commands/page/shared.js +1 -1
  133. package/lib/commands/page/standard-page-status.js +1 -1
  134. package/lib/commands/page/sync.js +1 -1
  135. package/lib/commands/permit/index.js +1 -1
  136. package/lib/commands/permit/page-get.js +1 -1
  137. package/lib/commands/permit/page-set.js +1 -1
  138. package/lib/commands/permit/role-apis-set.js +1 -1
  139. package/lib/commands/permit/role-menus-set.js +1 -1
  140. package/lib/commands/permit/role-menus.js +1 -1
  141. package/lib/commands/permit/shared.js +1 -1
  142. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  143. package/lib/commands/project/create/format-elapsed.js +1 -1
  144. package/lib/commands/project/create/main.js +1 -1
  145. package/lib/commands/project/create/non-interactive.js +1 -1
  146. package/lib/commands/project/create/project-template-path.js +1 -1
  147. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  148. package/lib/commands/project/create/use-format-code.js +1 -1
  149. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  150. package/lib/commands/project/index.js +1 -1
  151. package/lib/commands/project/init.js +1 -1
  152. package/lib/commands/project/upgrade.js +1 -1
  153. package/lib/commands/registry.js +1 -1
  154. package/lib/commands/role/create.js +1 -1
  155. package/lib/commands/role/delete.js +1 -1
  156. package/lib/commands/role/detail.js +1 -1
  157. package/lib/commands/role/index.js +1 -1
  158. package/lib/commands/role/list.js +1 -1
  159. package/lib/commands/role/shared.js +1 -1
  160. package/lib/commands/role/update.js +1 -1
  161. package/lib/commands/role/user-add.js +1 -1
  162. package/lib/commands/role/user-remove.js +1 -1
  163. package/lib/commands/role/user-resolve.js +1 -1
  164. package/lib/commands/run/index.js +1 -1
  165. package/lib/commands/schema.js +1 -1
  166. package/lib/commands/sql/create.js +1 -1
  167. package/lib/commands/sql/delete.js +1 -1
  168. package/lib/commands/sql/detail.js +1 -1
  169. package/lib/commands/sql/exec.js +1 -1
  170. package/lib/commands/sql/index.js +1 -1
  171. package/lib/commands/sql/list.js +1 -1
  172. package/lib/commands/sql/pull.js +1 -1
  173. package/lib/commands/sql/push.js +1 -1
  174. package/lib/commands/sql/save.js +1 -1
  175. package/lib/commands/sql/shared.js +1 -1
  176. package/lib/commands/sql/status.js +1 -1
  177. package/lib/commands/sql/validate.js +1 -1
  178. package/lib/commands/task/index.js +1 -1
  179. package/lib/commands/task/status.js +1 -1
  180. package/lib/commands/workspace/add.js +1 -1
  181. package/lib/commands/workspace/index.js +1 -1
  182. package/lib/commands/workspace/remove.js +1 -1
  183. package/lib/config/schema.js +1 -1
  184. package/lib/constant/cdn.js +1 -1
  185. package/lib/constant/cli.js +1 -1
  186. package/lib/constant/defaults.js +1 -1
  187. package/lib/constant/domain.js +1 -1
  188. package/lib/constant/env.js +1 -1
  189. package/lib/constant/output.js +1 -1
  190. package/lib/constant/paths.js +1 -1
  191. package/lib/constant/risk.js +1 -1
  192. package/lib/context/app-resolver.js +1 -1
  193. package/lib/context/auth-resolver.js +1 -1
  194. package/lib/context/config-loader.js +1 -1
  195. package/lib/context.js +1 -1
  196. package/lib/core/alias-resolver.js +1 -1
  197. package/lib/core/api-client.js +1 -1
  198. package/lib/core/bff/config.js +1 -1
  199. package/lib/core/bff/file-system.js +1 -1
  200. package/lib/core/bff/hash.js +1 -1
  201. package/lib/core/bff/lock.js +1 -1
  202. package/lib/core/bff/utils.js +1 -1
  203. package/lib/core/db-resolver.js +1 -1
  204. package/lib/core/page/file-system.js +1 -1
  205. package/lib/core/page/hash.js +1 -1
  206. package/lib/core/page/lock.js +1 -1
  207. package/lib/core/sql-index-auditor.js +1 -1
  208. package/lib/core/sql-sync/config.js +1 -1
  209. package/lib/core/sql-sync/file-system.js +1 -1
  210. package/lib/core/sql-sync/hash.js +1 -1
  211. package/lib/core/sql-sync/lock.js +1 -1
  212. package/lib/core/sql-sync/utils.js +1 -1
  213. package/lib/core/sql-validator.js +1 -1
  214. package/lib/errors.js +1 -1
  215. package/lib/framework/build-all-flags.js +1 -1
  216. package/lib/framework/error-output.js +1 -1
  217. package/lib/framework/explicit-yes.js +1 -1
  218. package/lib/framework/flags.js +1 -1
  219. package/lib/framework/help.js +1 -1
  220. package/lib/framework/index.js +1 -1
  221. package/lib/framework/output.js +1 -1
  222. package/lib/framework/response.js +1 -1
  223. package/lib/framework/runner-alias.js +1 -1
  224. package/lib/framework/runner.js +1 -1
  225. package/lib/framework/schema-export.js +1 -1
  226. package/lib/framework/types.js +1 -1
  227. package/lib/generated/build-info.js +1 -1
  228. package/lib/help.js +1 -1
  229. package/lib/skills/main.js +1 -1
  230. package/lib/skills/npx-skills-add.js +1 -1
  231. package/lib/telemetry/cli-command-trace.js +1 -1
  232. package/lib/telemetry/cli-help-trace.js +1 -1
  233. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  234. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  235. package/lib/telemetry/send-cli-trace-log.js +1 -1
  236. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  237. package/lib/utils/ai_config.js +1 -1
  238. package/lib/utils/apply-jq-filter.js +1 -1
  239. package/lib/utils/cdn-config.js +1 -1
  240. package/lib/utils/check-sdk-version.js +1 -1
  241. package/lib/utils/cli-version-check.js +1 -1
  242. package/lib/utils/cli-version-policy.js +1 -1
  243. package/lib/utils/config.js +1 -1
  244. package/lib/utils/copy-directory.js +1 -1
  245. package/lib/utils/entity-with-id.js +1 -1
  246. package/lib/utils/file-utils.js +1 -1
  247. package/lib/utils/guides-cdn.js +1 -1
  248. package/lib/utils/http-client.js +1 -1
  249. package/lib/utils/is-non-interactive.js +1 -1
  250. package/lib/utils/logger.js +1 -1
  251. package/lib/utils/params.js +1 -1
  252. package/lib/utils/platform.js +1 -1
  253. package/lib/utils/rules-cdn.js +1 -1
  254. package/lib/utils/sleep.js +1 -1
  255. package/lib/utils/template-replacer.js +1 -1
  256. package/lib/utils/update-notice.js +1 -1
  257. package/lib/utils/version.js +1 -1
  258. package/lib/utils/with-active-cookie.js +1 -1
  259. package/lib/utils/write-cli-side-channel.js +1 -1
  260. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x2b71a7,_0x406eb3){const _0x559eac=a150_0x329e,_0x2ea1b9=_0x2b71a7();while(!![]){try{const _0x3facff=-parseInt(_0x559eac(0x18d))/0x1+parseInt(_0x559eac(0x18c))/0x2+-parseInt(_0x559eac(0x179))/0x3+parseInt(_0x559eac(0x19f))/0x4*(-parseInt(_0x559eac(0x196))/0x5)+parseInt(_0x559eac(0x178))/0x6+parseInt(_0x559eac(0x199))/0x7*(parseInt(_0x559eac(0x180))/0x8)+parseInt(_0x559eac(0x171))/0x9;if(_0x3facff===_0x406eb3)break;else _0x2ea1b9['push'](_0x2ea1b9['shift']());}catch(_0x34d6d0){_0x2ea1b9['push'](_0x2ea1b9['shift']());}}}(a150_0x1bcb,0xa957f));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a150_0x1e9896 from'chalk';import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x4e78bd){const _0x3789dd=a150_0x329e,{appcode:_0x5767f7,env:_0x41a95f,autoYes:_0x3c75e0}=_0x4e78bd,_0x2f76a5=process['cwd']();if(getProjectConfigPath())throw new Error('.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.');let _0x1d86f7;for(const _0x28acb of LEGACY_CONFIG_NAMES){const _0x5d8e2f=resolve(_0x2f76a5,_0x28acb);if(existsSync(_0x5d8e2f)){_0x1d86f7=_0x5d8e2f;break;}}if(_0x1d86f7){let _0x65a2fc={};try{_0x65a2fc=JSON['parse'](readFileSync(_0x1d86f7,_0x3789dd(0x19b)));}catch{}const _0x45b288=basename(_0x1d86f7),_0x4f195e=_0x65a2fc?.[_0x3789dd(0x19c)]||_0x65a2fc?.[_0x3789dd(0x189)];let _0x46ee07=_0x3c75e0;!_0x3c75e0&&(console[_0x3789dd(0x17a)](a150_0x1e9896['yellow']('⚠\x20Found\x20legacy\x20configuration\x20file:\x20'+a150_0x1e9896[_0x3789dd(0x18f)](_0x45b288))),_0x4f195e&&console[_0x3789dd(0x17a)](a150_0x1e9896[_0x3789dd(0x17c)](_0x3789dd(0x181)+_0x4f195e)),_0x46ee07=await confirm({'message':_0x3789dd(0x174)+a150_0x1e9896[_0x3789dd(0x18f)]('.rabetbase.json')+_0x3789dd(0x173),'default':!![]}));if(!_0x46ee07){console[_0x3789dd(0x17a)](_0x3789dd(0x192)+CLI_BIN_NAME+_0x3789dd(0x177));return;}const _0x2793a0=resolve(_0x2f76a5,NEW_CONFIG_NAME),_0x4d44ea=getCliVersionFromPkg(),_0x4b2291=readRawConfig(),_0x57a6ef=_0x5767f7||(typeof _0x65a2fc?.[_0x3789dd(0x19c)]===_0x3789dd(0x197)?_0x65a2fc[_0x3789dd(0x19c)]:undefined)||(typeof _0x65a2fc?.[_0x3789dd(0x189)]===_0x3789dd(0x197)?_0x65a2fc[_0x3789dd(0x189)]:undefined)||await askAppcode(),_0x4e7919=typeof _0x65a2fc?.['env']==='string'?_0x65a2fc[_0x3789dd(0x183)]:typeof _0x4b2291[_0x3789dd(0x183)]==='string'?_0x4b2291[_0x3789dd(0x183)]:_0x3789dd(0x185),_0x5b31e8=buildCanonicalProjectConfig({..._0x4b2291,..._0x65a2fc},{'appCodes':[_0x57a6ef],'env':_0x4e7919,'metadata':{'version':_0x4d44ea,'migratedAt':new Date()[_0x3789dd(0x19d)](),'migratedFrom':_0x1d86f7}});writeConfigFile(_0x2793a0,_0x5b31e8);const _0x10d5be=_0x1d86f7+_0x3789dd(0x186);renameSync(_0x1d86f7,_0x10d5be),logger[_0x3789dd(0x175)](_0x2f76a5),logger[_0x3789dd(0x187)]('init',_0x3789dd(0x19a),{'from':_0x1d86f7,'to':_0x2793a0,'appcode':_0x57a6ef,'env':_0x5b31e8[_0x3789dd(0x183)]}),console[_0x3789dd(0x17a)](a150_0x1e9896[_0x3789dd(0x182)](_0x3789dd(0x193)+_0x45b288+_0x3789dd(0x18e))),console['log'](a150_0x1e9896[_0x3789dd(0x17c)](_0x3789dd(0x176)+Object[_0x3789dd(0x198)](_0x5b31e8[_0x3789dd(0x184)]||{})[_0x3789dd(0x188)](',\x20'))),console['log'](a150_0x1e9896[_0x3789dd(0x17c)](_0x3789dd(0x172)+_0x5b31e8[_0x3789dd(0x190)])),console['log'](a150_0x1e9896[_0x3789dd(0x195)]('\x20\x20Old\x20file\x20backed\x20up\x20as\x20'+_0x45b288+'.bak'));return;}const _0x28175e=_0x5767f7||await askAppcode(),_0x57a605=resolve(_0x2f76a5,NEW_CONFIG_NAME),_0x5d5b69=getCliVersionFromPkg(),_0xa0b702=readRawConfig(),_0x5e2723=typeof _0xa0b702[_0x3789dd(0x183)]===_0x3789dd(0x197)?_0xa0b702['env']:undefined,_0x31f1ce=buildCanonicalProjectConfig({},{'appCodes':[_0x28175e],'env':_0x41a95f||_0x5e2723||_0x3789dd(0x185),'metadata':{'version':_0x5d5b69,'createdAt':new Date()[_0x3789dd(0x19d)]()}});writeConfigFile(_0x57a605,_0x31f1ce),logger[_0x3789dd(0x175)](_0x2f76a5),logger[_0x3789dd(0x187)](_0x3789dd(0x194),_0x3789dd(0x17e),{'appcode':_0x28175e,'env':_0x31f1ce[_0x3789dd(0x183)],'version':_0x31f1ce['version'],'configPath':_0x57a605}),console[_0x3789dd(0x17a)](a150_0x1e9896[_0x3789dd(0x182)]('✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory')),console['log'](a150_0x1e9896['cyan'](_0x3789dd(0x176)+Object[_0x3789dd(0x198)](_0x31f1ce[_0x3789dd(0x184)]||{})['join'](',\x20'))),console[_0x3789dd(0x17a)](a150_0x1e9896[_0x3789dd(0x17c)](_0x3789dd(0x172)+_0x31f1ce[_0x3789dd(0x190)])),console['log']('\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27'+CLI_BIN_NAME+_0x3789dd(0x18b)+CLI_BIN_NAME+'\x20api\x20pull\x27');}function a150_0x329e(_0x251dab,_0x3bc738){_0x251dab=_0x251dab-0x170;const _0x1bcb4e=a150_0x1bcb();let _0x329e22=_0x1bcb4e[_0x251dab];return _0x329e22;}function askAppcode(){return input({'message':'Please\x20enter\x20App\x20Code:','validate':_0x54b6ef=>{const _0x11ba63=a150_0x329e;if(!_0x54b6ef[_0x11ba63(0x18a)]())return _0x11ba63(0x17f);const {valid:_0x2aa5b4,message:_0x122043}=validateAppcode(_0x54b6ef[_0x11ba63(0x18a)]());return _0x2aa5b4||_0x122043||_0x11ba63(0x17b);}});}function getCliVersionFromPkg(){const _0x30749b=a150_0x329e;try{const _0x227e7a=fileURLToPath(import.meta.url),_0x1244c0=resolve(dirname(_0x227e7a),_0x30749b(0x170)),_0x465115=JSON[_0x30749b(0x191)](readFileSync(resolve(_0x1244c0,_0x30749b(0x19e)),_0x30749b(0x19b)));return _0x465115['version']||_0x30749b(0x17d);}catch{return _0x30749b(0x17d);}}function a150_0x1bcb(){const _0x4e2f9c=['setLogPath','\x20\x20Apps:\x20','\x20workspace\x20init`\x20to\x20start\x20fresh.','1095588FWYBrV','1389558qCcihZ','log','Invalid\x20App\x20Code','cyan','1.0.0','初始化项目配置文件成功','App\x20Code\x20cannot\x20be\x20empty','3800liEbJW','\x20\x20appcode:\x20','green','env','apps','production','.bak','info','join','app','trim','\x20api\x20generate\x27\x20and\x20\x27','1186846bHIwEk','361080GnhnOl','\x20→\x20.rabetbase.json','bold','defaultApp','parse','Migration\x20cancelled.\x20Run\x20`','✓\x20Upgraded\x20','init','gray','7430igssDl','string','keys','16954adYiCZ','从旧配置文件升级成功','utf8','appcode','toLocaleString','package.json','1708SlnnPK','../..','2033532Fyvcar','\x20\x20Default:\x20','?\x20(Old\x20file\x20→\x20*.bak)','Upgrade\x20it\x20to\x20'];a150_0x1bcb=function(){return _0x4e2f9c;};return a150_0x1bcb();}
1
+ (function(_0x16d298,_0x45c20b){const _0x56a6e4=a151_0x3191,_0x21c722=_0x16d298();while(!![]){try{const _0x3c40fd=-parseInt(_0x56a6e4(0x1a4))/0x1*(-parseInt(_0x56a6e4(0x19b))/0x2)+-parseInt(_0x56a6e4(0x189))/0x3+-parseInt(_0x56a6e4(0x187))/0x4+-parseInt(_0x56a6e4(0x18d))/0x5*(-parseInt(_0x56a6e4(0x193))/0x6)+parseInt(_0x56a6e4(0x1b7))/0x7+parseInt(_0x56a6e4(0x198))/0x8+parseInt(_0x56a6e4(0x1a5))/0x9*(-parseInt(_0x56a6e4(0x195))/0xa);if(_0x3c40fd===_0x45c20b)break;else _0x21c722['push'](_0x21c722['shift']());}catch(_0x3e8d7e){_0x21c722['push'](_0x21c722['shift']());}}}(a151_0x2ec2,0x4bbf0));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a151_0x5f1046 from'chalk';import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';function a151_0x3191(_0x3f7057,_0x5de8ba){_0x3f7057=_0x3f7057-0x187;const _0x2ec233=a151_0x2ec2();let _0x319142=_0x2ec233[_0x3f7057];return _0x319142;}import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x40fd9c){const _0x2086b8=a151_0x3191,{appcode:_0x2069be,env:_0x1ae15f,autoYes:_0x1493ce}=_0x40fd9c,_0x4e160f=process[_0x2086b8(0x199)]();if(getProjectConfigPath())throw new Error(_0x2086b8(0x1b5));let _0x436e77;for(const _0x430e95 of LEGACY_CONFIG_NAMES){const _0x5764a6=resolve(_0x4e160f,_0x430e95);if(existsSync(_0x5764a6)){_0x436e77=_0x5764a6;break;}}if(_0x436e77){let _0x261946={};try{_0x261946=JSON[_0x2086b8(0x19a)](readFileSync(_0x436e77,_0x2086b8(0x1a9)));}catch{}const _0x1ec76f=basename(_0x436e77),_0x4552e8=_0x261946?.['appcode']||_0x261946?.[_0x2086b8(0x1b1)];let _0x39a5cc=_0x1493ce;!_0x1493ce&&(console[_0x2086b8(0x1b0)](a151_0x5f1046[_0x2086b8(0x19c)]('⚠\x20Found\x20legacy\x20configuration\x20file:\x20'+a151_0x5f1046['bold'](_0x1ec76f))),_0x4552e8&&console[_0x2086b8(0x1b0)](a151_0x5f1046[_0x2086b8(0x1af)]('\x20\x20appcode:\x20'+_0x4552e8)),_0x39a5cc=await confirm({'message':'Upgrade\x20it\x20to\x20'+a151_0x5f1046[_0x2086b8(0x197)]('.rabetbase.json')+_0x2086b8(0x1a1),'default':!![]}));if(!_0x39a5cc){console[_0x2086b8(0x1b0)]('Migration\x20cancelled.\x20Run\x20`'+CLI_BIN_NAME+_0x2086b8(0x18c));return;}const _0x1f2aab=resolve(_0x4e160f,NEW_CONFIG_NAME),_0x396786=getCliVersionFromPkg(),_0x23083c=readRawConfig(),_0x4134c8=_0x2069be||(typeof _0x261946?.[_0x2086b8(0x1b2)]===_0x2086b8(0x18e)?_0x261946[_0x2086b8(0x1b2)]:undefined)||(typeof _0x261946?.['app']==='string'?_0x261946[_0x2086b8(0x1b1)]:undefined)||await askAppcode(),_0x555c60=typeof _0x261946?.[_0x2086b8(0x19e)]===_0x2086b8(0x18e)?_0x261946[_0x2086b8(0x19e)]:typeof _0x23083c[_0x2086b8(0x19e)]===_0x2086b8(0x18e)?_0x23083c[_0x2086b8(0x19e)]:_0x2086b8(0x1ad),_0x565665=buildCanonicalProjectConfig({..._0x23083c,..._0x261946},{'appCodes':[_0x4134c8],'env':_0x555c60,'metadata':{'version':_0x396786,'migratedAt':new Date()[_0x2086b8(0x194)](),'migratedFrom':_0x436e77}});writeConfigFile(_0x1f2aab,_0x565665);const _0x146d3a=_0x436e77+_0x2086b8(0x18a);renameSync(_0x436e77,_0x146d3a),logger[_0x2086b8(0x1ac)](_0x4e160f),logger['info'](_0x2086b8(0x1b6),'从旧配置文件升级成功',{'from':_0x436e77,'to':_0x1f2aab,'appcode':_0x4134c8,'env':_0x565665['env']}),console['log'](a151_0x5f1046[_0x2086b8(0x1a6)]('✓\x20Upgraded\x20'+_0x1ec76f+_0x2086b8(0x1a0))),console[_0x2086b8(0x1b0)](a151_0x5f1046['cyan']('\x20\x20Apps:\x20'+Object['keys'](_0x565665[_0x2086b8(0x188)]||{})[_0x2086b8(0x1aa)](',\x20'))),console[_0x2086b8(0x1b0)](a151_0x5f1046[_0x2086b8(0x1af)](_0x2086b8(0x196)+_0x565665['defaultApp'])),console['log'](a151_0x5f1046[_0x2086b8(0x1b4)](_0x2086b8(0x1ab)+_0x1ec76f+'.bak'));return;}const _0x343cab=_0x2069be||await askAppcode(),_0x4b46e2=resolve(_0x4e160f,NEW_CONFIG_NAME),_0x4f8581=getCliVersionFromPkg(),_0x5967d6=readRawConfig(),_0x1fc12e=typeof _0x5967d6['env']===_0x2086b8(0x18e)?_0x5967d6['env']:undefined,_0x47ed6f=buildCanonicalProjectConfig({},{'appCodes':[_0x343cab],'env':_0x1ae15f||_0x1fc12e||_0x2086b8(0x1ad),'metadata':{'version':_0x4f8581,'createdAt':new Date()[_0x2086b8(0x194)]()}});writeConfigFile(_0x4b46e2,_0x47ed6f),logger[_0x2086b8(0x1ac)](_0x4e160f),logger[_0x2086b8(0x1a3)]('init','初始化项目配置文件成功',{'appcode':_0x343cab,'env':_0x47ed6f[_0x2086b8(0x19e)],'version':_0x47ed6f[_0x2086b8(0x1a2)],'configPath':_0x4b46e2}),console[_0x2086b8(0x1b0)](a151_0x5f1046['green']('✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory')),console[_0x2086b8(0x1b0)](a151_0x5f1046[_0x2086b8(0x1af)](_0x2086b8(0x19f)+Object[_0x2086b8(0x18f)](_0x47ed6f[_0x2086b8(0x188)]||{})[_0x2086b8(0x1aa)](',\x20'))),console['log'](a151_0x5f1046[_0x2086b8(0x1af)](_0x2086b8(0x196)+_0x47ed6f[_0x2086b8(0x18b)])),console[_0x2086b8(0x1b0)](_0x2086b8(0x190)+CLI_BIN_NAME+_0x2086b8(0x192)+CLI_BIN_NAME+_0x2086b8(0x1ae));}function a151_0x2ec2(){const _0x300fbd=['info','2309WFsYOo','1897794KDOZBJ','green','../..','trim','utf8','join','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','setLogPath','production','\x20api\x20pull\x27','cyan','log','app','appcode','Invalid\x20App\x20Code','gray','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','init','3434326rfUsPn','package.json','1173244TtZfJL','apps','1175976IhFEMZ','.bak','defaultApp','\x20workspace\x20init`\x20to\x20start\x20fresh.','15gvkgIF','string','keys','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','1.0.0','\x20api\x20generate\x27\x20and\x20\x27','821544nHDxlr','toLocaleString','20IbQOMq','\x20\x20Default:\x20','bold','2150704AZLpFb','cwd','parse','214cqoGSa','yellow','App\x20Code\x20cannot\x20be\x20empty','env','\x20\x20Apps:\x20','\x20→\x20.rabetbase.json','?\x20(Old\x20file\x20→\x20*.bak)','version'];a151_0x2ec2=function(){return _0x300fbd;};return a151_0x2ec2();}function askAppcode(){return input({'message':'Please\x20enter\x20App\x20Code:','validate':_0x2b4fe2=>{const _0x3e9985=a151_0x3191;if(!_0x2b4fe2[_0x3e9985(0x1a8)]())return _0x3e9985(0x19d);const {valid:_0x11ca8d,message:_0x205cb9}=validateAppcode(_0x2b4fe2['trim']());return _0x11ca8d||_0x205cb9||_0x3e9985(0x1b3);}});}function getCliVersionFromPkg(){const _0xa3d6f4=a151_0x3191;try{const _0x148b26=fileURLToPath(import.meta.url),_0x328135=resolve(dirname(_0x148b26),_0xa3d6f4(0x1a7)),_0x2dc916=JSON[_0xa3d6f4(0x19a)](readFileSync(resolve(_0x328135,_0xa3d6f4(0x1b8)),_0xa3d6f4(0x1a9)));return _0x2dc916[_0xa3d6f4(0x1a2)]||'1.0.0';}catch{return _0xa3d6f4(0x191);}}
@@ -1 +1 @@
1
- (function(_0x20de5e,_0x452392){const _0x5476e7=a151_0x2b86,_0x1c4b87=_0x20de5e();while(!![]){try{const _0x2837d0=parseInt(_0x5476e7(0x1b3))/0x1+parseInt(_0x5476e7(0x1a5))/0x2+parseInt(_0x5476e7(0x1cd))/0x3+parseInt(_0x5476e7(0x187))/0x4*(parseInt(_0x5476e7(0x1e1))/0x5)+parseInt(_0x5476e7(0x1fc))/0x6*(-parseInt(_0x5476e7(0x189))/0x7)+-parseInt(_0x5476e7(0x1dc))/0x8+parseInt(_0x5476e7(0x1ca))/0x9;if(_0x2837d0===_0x452392)break;else _0x1c4b87['push'](_0x1c4b87['shift']());}catch(_0x1dc3d0){_0x1c4b87['push'](_0x1c4b87['shift']());}}}(a151_0x2c88,0x6180d));import a151_0x5e5f3f from'chalk';import a151_0x583159 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['filter'](_0x2f475b=>_0x2f475b!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x3ba21e){const _0x7ef930=a151_0x2b86,_0x36d41a=[];for(const _0xcaa5b4 of Object[_0x7ef930(0x1f4)](CORE_IDE_CONFIGS)){if(_0xcaa5b4[_0x7ef930(0x1db)])for(const _0x27b805 of _0xcaa5b4[_0x7ef930(0x1db)]){_0x36d41a[_0x7ef930(0x1f6)](resolve(_0x3ba21e,_0x27b805[_0x7ef930(0x196)]));}}return _0x36d41a;}function analyse(_0x442a5b){const _0x25baee=a151_0x2b86;let _0x1d1db2=null;const _0x34c92e=resolve(_0x442a5b,NEW_CONFIG_NAME),_0x3b12d1=existsSync(_0x34c92e);for(const _0x171cc6 of LEGACY_CONFIG_NAMES){const _0x46a87e=resolve(_0x442a5b,_0x171cc6);if(existsSync(_0x46a87e)){const _0x330bb5=readConfigFile(_0x46a87e),_0x187e0e=Object[_0x25baee(0x1a7)](_0x330bb5)[_0x25baee(0x186)](_0x4cab0b=>typeof _0x330bb5[_0x4cab0b]!=='undefined');_0x1d1db2={'oldPath':_0x46a87e,'hasNewConfig':_0x3b12d1,'fields':_0x187e0e};break;}}const _0x1ffacb=[],_0x526d6b=resolve(_0x442a5b,'.lovrabet');if(existsSync(_0x526d6b))_0x1ffacb[_0x25baee(0x1f6)](_0x526d6b);const _0x2f9a2d=resolve(_0x442a5b,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x2f9a2d))_0x1ffacb[_0x25baee(0x1f6)](_0x2f9a2d);const _0x2ec19d=resolve(_0x442a5b,_0x25baee(0x1df));if(existsSync(_0x2ec19d))_0x1ffacb[_0x25baee(0x1f6)](_0x2ec19d);for(const _0x555da9 of collectIdeSkillFiles(_0x442a5b)){if(existsSync(_0x555da9))_0x1ffacb[_0x25baee(0x1f6)](_0x555da9);}let _0x515a46=null;const _0x44be61=resolve(_0x442a5b,'.cursor/mcp.json');if(existsSync(_0x44be61))try{const _0x16a214=JSON[_0x25baee(0x1c2)](readFileSync(_0x44be61,'utf8'));if(_0x16a214?.[_0x25baee(0x1bd)]&&typeof _0x16a214[_0x25baee(0x1bd)]===_0x25baee(0x1b6)){const _0x40a4b6=[];for(const [_0x33fea3,_0x148772]of Object[_0x25baee(0x1ec)](_0x16a214[_0x25baee(0x1bd)])){const _0x12de74=_0x148772;_0x12de74?.[_0x25baee(0x1e4)]&&Array['isArray'](_0x12de74[_0x25baee(0x1e4)])&&_0x12de74[_0x25baee(0x1e4)][_0x25baee(0x18c)](_0x1aeb42=>typeof _0x1aeb42==='string'&&_0x1aeb42[_0x25baee(0x1f2)]('@lovrabet/dataset-mcp-server'))&&_0x40a4b6[_0x25baee(0x1f6)](_0x33fea3);}_0x40a4b6[_0x25baee(0x1cb)]>0x0&&(_0x515a46={'path':_0x44be61,'keys':_0x40a4b6});}}catch{}const _0x343a34=_0x1ffacb[_0x25baee(0x1cb)]>0x0||_0x1d1db2!==null;let _0x3314e7=null;const _0x471497=resolve(_0x442a5b,_0x25baee(0x1c7));if(existsSync(_0x471497))try{const _0x2b62b7=JSON['parse'](readFileSync(_0x471497,'utf8'));for(const _0x3c969e of[_0x25baee(0x1d5),_0x25baee(0x1b2)]){const _0x4ab8cc=_0x2b62b7?.[_0x3c969e]?.[_0x25baee(0x19a)];if(typeof _0x4ab8cc===_0x25baee(0x1fa)){_0x4ab8cc!==_0x25baee(0x1e5)&&(_0x3314e7={'pkgPath':_0x471497,'currentVersion':_0x4ab8cc,'field':_0x3c969e});break;}}}catch{}return{'configMigration':_0x1d1db2,'oldArtifacts':_0x1ffacb,'oldMcpConfig':_0x515a46,'needsSkillSwap':_0x343a34,'sdkUpgrade':_0x3314e7};}function printReport(_0x4279b5){const _0x2c9872=a151_0x2b86,{configMigration:_0x15a0ff,oldArtifacts:_0x20faec,oldMcpConfig:_0x2dcf76,needsSkillSwap:_0x1f12b9}=_0x4279b5;console[_0x2c9872(0x1ac)](''),console[_0x2c9872(0x1ac)](a151_0x5e5f3f[_0x2c9872(0x1dd)]('===\x20Upgrade\x20Analysis\x20===')),console[_0x2c9872(0x1ac)]('');_0x15a0ff?(console[_0x2c9872(0x1ac)](a151_0x5e5f3f[_0x2c9872(0x188)](_0x2c9872(0x1c3))+('\x20\x20'+a151_0x5e5f3f[_0x2c9872(0x1e3)](_0x15a0ff[_0x2c9872(0x1a8)]))),console[_0x2c9872(0x1ac)](_0x2c9872(0x1d1)+(_0x15a0ff[_0x2c9872(0x193)]?a151_0x5e5f3f[_0x2c9872(0x1af)](_0x2c9872(0x1e6)):a151_0x5e5f3f[_0x2c9872(0x1f9)](_0x2c9872(0x1b7)))),console['log']('\x20\x20Fields\x20to\x20migrate:\x20'+_0x15a0ff[_0x2c9872(0x1c5)]['join'](',\x20')),console[_0x2c9872(0x1ac)](_0x2c9872(0x1bb))):console[_0x2c9872(0x1ac)](a151_0x5e5f3f[_0x2c9872(0x188)](_0x2c9872(0x1c3))+'\x20\x20'+a151_0x5e5f3f[_0x2c9872(0x1f9)]('no\x20legacy\x20config\x20found'));console[_0x2c9872(0x1ac)]('');if(_0x20faec['length']>0x0){console[_0x2c9872(0x1ac)](a151_0x5e5f3f[_0x2c9872(0x188)](_0x2c9872(0x18b)));for(const _0x43ab53 of _0x20faec){console[_0x2c9872(0x1ac)]('\x20\x20'+a151_0x5e5f3f['red'](_0x2c9872(0x197))+'\x20\x20'+_0x43ab53);}console[_0x2c9872(0x1ac)](_0x2c9872(0x1e7));}else console[_0x2c9872(0x1ac)](a151_0x5e5f3f[_0x2c9872(0x188)](_0x2c9872(0x18b))+'\x20\x20'+a151_0x5e5f3f['gray'](_0x2c9872(0x1ea)));console['log']('');_0x2dcf76?(console[_0x2c9872(0x1ac)](a151_0x5e5f3f[_0x2c9872(0x188)](_0x2c9872(0x19b))+('\x20\x20'+a151_0x5e5f3f[_0x2c9872(0x1e3)](_0x2dcf76[_0x2c9872(0x196)])+'\x20→\x20keys:\x20'+_0x2dcf76[_0x2c9872(0x1a7)][_0x2c9872(0x1ce)](',\x20'))),console[_0x2c9872(0x1ac)](_0x2c9872(0x1e0))):console[_0x2c9872(0x1ac)](a151_0x5e5f3f[_0x2c9872(0x188)](_0x2c9872(0x19b))+'\x20\x20'+a151_0x5e5f3f['gray']('no\x20legacy\x20entry'));console[_0x2c9872(0x1ac)](''),console[_0x2c9872(0x1ac)](a151_0x5e5f3f[_0x2c9872(0x188)]('Skill\x20swap:')+('\x20\x20'+(_0x1f12b9?a151_0x5e5f3f['yellow'](_0x2c9872(0x1e9)):a151_0x5e5f3f['green']('not\x20needed'))));_0x1f12b9&&console[_0x2c9872(0x1ac)](_0x2c9872(0x1eb)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x2c9872(0x1ac)]('');if(_0x4279b5[_0x2c9872(0x191)]){const {currentVersion:_0x34f5c5,field:_0x5680ae,pkgPath:_0xc91be1}=_0x4279b5['sdkUpgrade'];console['log'](a151_0x5e5f3f[_0x2c9872(0x188)](_0x2c9872(0x1a1))+('\x20\x20'+a151_0x5e5f3f[_0x2c9872(0x1e3)](_0xc91be1))),console[_0x2c9872(0x1ac)](_0x2c9872(0x1b1)+_0x5680ae+':\x20'+a151_0x5e5f3f[_0x2c9872(0x1e3)](_0x34f5c5)+_0x2c9872(0x1b0)+a151_0x5e5f3f['green'](_0x2c9872(0x1e5))),console[_0x2c9872(0x1ac)](_0x2c9872(0x1fd));}else console['log'](a151_0x5e5f3f[_0x2c9872(0x188)](_0x2c9872(0x1a1))+'\x20\x20'+a151_0x5e5f3f[_0x2c9872(0x1f9)]('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x2c9872(0x1ac)]('');}function execConfigMigration(_0x360bb4,_0x31ea6d){const _0x13387a=a151_0x2b86,{configMigration:_0x336b6c}=_0x360bb4;if(!_0x336b6c?.[_0x13387a(0x1a8)])return{'step':0x1,'label':_0x13387a(0x195),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x2d179e=readConfigFile(_0x336b6c[_0x13387a(0x1a8)]),_0x2c54df=resolve(_0x31ea6d,NEW_CONFIG_NAME),_0x533bcd=_0x336b6c[_0x13387a(0x193)]?readConfigFile(_0x2c54df):{};for(const [_0x200fad,_0x13cd11]of Object[_0x13387a(0x1ec)](_0x2d179e)){!(_0x200fad in _0x533bcd)&&(_0x533bcd[_0x200fad]=_0x13cd11);}writeConfigFile(_0x2c54df,_0x533bcd);const _0x25886f=_0x336b6c[_0x13387a(0x1a8)]+'.bak';return renameSync(_0x336b6c['oldPath'],_0x25886f),{'step':0x1,'label':_0x13387a(0x195),'ok':!![],'detail':_0x336b6c[_0x13387a(0x1a8)]+_0x13387a(0x1b0)+_0x2c54df+'\x20(backup:\x20'+_0x25886f+')'};}function execRemoveOldArtifacts(_0x438a01){const _0x428de9=a151_0x2b86,_0x442fd3=[];for(const _0x52b3b0 of _0x438a01){try{if(!existsSync(_0x52b3b0))continue;const _0x74679c=tryStat(_0x52b3b0);_0x74679c?.[_0x428de9(0x1ba)]()?rmSync(_0x52b3b0,{'recursive':!![],'force':!![]}):unlinkSync(_0x52b3b0);}catch(_0x3c053d){_0x442fd3[_0x428de9(0x1f6)](_0x52b3b0+':\x20'+_0x3c053d[_0x428de9(0x1f1)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x442fd3['length']===0x0,'detail':_0x442fd3['length']>0x0?_0x438a01['length']-_0x442fd3[_0x428de9(0x1cb)]+'/'+_0x438a01[_0x428de9(0x1cb)]+_0x428de9(0x1ab)+_0x442fd3[_0x428de9(0x1ce)](';\x20')+')':_0x438a01['length']+_0x428de9(0x1c1)};}function execCleanMcp(_0x256684){const _0x44439f=a151_0x2b86;if(!_0x256684[_0x44439f(0x1b9)])return{'step':0x4,'label':_0x44439f(0x1ad),'ok':!![],'detail':_0x44439f(0x1fe)};try{const _0xb3fa47=readFileSync(_0x256684[_0x44439f(0x1b9)][_0x44439f(0x196)],_0x44439f(0x1cf)),_0x530379=JSON[_0x44439f(0x1c2)](_0xb3fa47);if(_0x530379?.[_0x44439f(0x1bd)]&&typeof _0x530379[_0x44439f(0x1bd)]===_0x44439f(0x1b6)){const _0x19a249=[];for(const [_0x169cc7,_0x55c8c3]of Object[_0x44439f(0x1ec)](_0x530379[_0x44439f(0x1bd)])){_0x55c8c3?.['args']&&Array[_0x44439f(0x1bc)](_0x55c8c3[_0x44439f(0x1e4)])&&_0x55c8c3[_0x44439f(0x1e4)]['some'](_0x9c5eb3=>typeof _0x9c5eb3===_0x44439f(0x1fa)&&_0x9c5eb3[_0x44439f(0x1f2)](_0x44439f(0x1e2)))&&_0x19a249['push'](_0x169cc7);}for(const _0x534045 of _0x19a249){delete _0x530379['mcpServers'][_0x534045];}return _0x19a249[_0x44439f(0x1cb)]>0x0&&writeFileSync(_0x256684[_0x44439f(0x1b9)][_0x44439f(0x196)],JSON['stringify'](_0x530379,null,0x2)+'\x0a',_0x44439f(0x1cf)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':'removed\x20'+_0x19a249[_0x44439f(0x1ce)](',\x20')+_0x44439f(0x1f8)+_0x256684[_0x44439f(0x1b9)][_0x44439f(0x196)]};}return{'step':0x4,'label':_0x44439f(0x1ad),'ok':!![],'detail':_0x44439f(0x1f5)};}catch(_0x34a139){return{'step':0x4,'label':_0x44439f(0x1ad),'ok':![],'detail':_0x34a139[_0x44439f(0x1f1)]};}}function execSkillsRemove(_0x481329,_0x5e61de){const _0xe7151=a151_0x2b86,_0x593ae0=runNpxSkillsRemove(_0x481329,{'stdio':_0xe7151(0x1ef),'yes':_0x5e61de});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x593ae0['ok'],'detail':_0x593ae0['ok']?_0xe7151(0x19d):_0x593ae0[_0xe7151(0x1bf)]??_0xe7151(0x1d3)+_0x593ae0[_0xe7151(0x1c4)]};}function execSkillsAdd(_0x586d33,_0x4d1efb){const _0x12439d=a151_0x2b86,_0x5c18b6=runNpxSkillsAddGlobal(_0x586d33,_0x12439d(0x19f),{'stdio':_0x12439d(0x1ef),'yes':_0x4d1efb});return{'step':0x6,'label':_0x12439d(0x1b4),'ok':_0x5c18b6['ok'],'detail':_0x5c18b6['ok']?_0x12439d(0x19c):_0x5c18b6[_0x12439d(0x1bf)]??_0x12439d(0x1d3)+_0x5c18b6[_0x12439d(0x1c4)]};}function execUpgradeSdk(_0x2eaa9b){const _0xd3d3a7=a151_0x2b86;if(!_0x2eaa9b[_0xd3d3a7(0x191)])return{'step':0x7,'label':_0xd3d3a7(0x18d),'ok':!![],'detail':_0xd3d3a7(0x1d6)};const {pkgPath:_0x4edb75,currentVersion:_0x35b4fa,field:_0x3952e8}=_0x2eaa9b[_0xd3d3a7(0x191)];try{const _0x18fc71=readFileSync(_0x4edb75,'utf8'),_0x50f6a8=JSON[_0xd3d3a7(0x1c2)](_0x18fc71);return _0x50f6a8[_0x3952e8][_0xd3d3a7(0x19a)]=_0xd3d3a7(0x1e5),writeFileSync(_0x4edb75,JSON[_0xd3d3a7(0x190)](_0x50f6a8,null,0x2)+'\x0a',_0xd3d3a7(0x1cf)),{'step':0x7,'label':_0xd3d3a7(0x18d),'ok':!![],'detail':_0x3952e8+_0xd3d3a7(0x1d2)+_0x35b4fa+'\x20→\x20latest'};}catch(_0x2295f6){return{'step':0x7,'label':_0xd3d3a7(0x18d),'ok':![],'detail':_0x2295f6[_0xd3d3a7(0x1f1)]};}}function tryStat(_0x945a6b){try{return statSync(_0x945a6b);}catch{return undefined;}}function a151_0x2b86(_0x630fa1,_0x133eaf){_0x630fa1=_0x630fa1-0x186;const _0x2c88af=a151_0x2c88();let _0x2b865f=_0x2c88af[_0x630fa1];return _0x2b865f;}function printSummary(_0x49f792){const _0x582423=a151_0x2b86;console[_0x582423(0x1ac)](''),console[_0x582423(0x1ac)](a151_0x5e5f3f[_0x582423(0x1dd)](_0x582423(0x1a4))),console[_0x582423(0x1ac)]('');for(const _0x42c96 of _0x49f792){const _0x502f0a=_0x42c96['ok']?a151_0x5e5f3f[_0x582423(0x1af)]('OK'):a151_0x5e5f3f[_0x582423(0x1cc)](_0x582423(0x1aa));console['log']('\x20\x20'+_0x502f0a+_0x582423(0x1ae)+_0x42c96['step']+':\x20'+_0x42c96[_0x582423(0x1d0)]);if(_0x42c96[_0x582423(0x18a)])console[_0x582423(0x1ac)](_0x582423(0x1c8)+a151_0x5e5f3f[_0x582423(0x1f9)](_0x42c96[_0x582423(0x18a)]));}console[_0x582423(0x1ac)]('');}export async function upgradeApp(_0x5aa046,_0x4f8243){const _0x1500d6=a151_0x2b86,_0x2bb805=process[_0x1500d6(0x1f0)](),_0x201f44=analyse(_0x2bb805),_0x374e23=!_0x201f44[_0x1500d6(0x18e)]&&_0x201f44[_0x1500d6(0x1a0)][_0x1500d6(0x1cb)]===0x0&&!_0x201f44['oldMcpConfig']&&!_0x201f44['needsSkillSwap']&&!_0x201f44[_0x1500d6(0x191)];if(_0x374e23){console[_0x1500d6(0x1ac)](a151_0x5e5f3f[_0x1500d6(0x1af)](_0x1500d6(0x1a6)));return;}printReport(_0x201f44);const _0x5564d0=!!(_0x4f8243[_0x1500d6(0x1d9)]||_0x4f8243['Y']||_0x5aa046);if(!_0x5564d0)try{const _0x45edd5=await askConfirm(_0x1500d6(0x1d4));if(!_0x45edd5){console[_0x1500d6(0x1ac)](a151_0x5e5f3f['gray']('Upgrade\x20cancelled.'));return;}}catch(_0x1ea618){if(_0x1ea618?.[_0x1500d6(0x1f1)]===_0x1500d6(0x192)){console[_0x1500d6(0x1ac)](a151_0x5e5f3f['gray'](_0x1500d6(0x1f7)));return;}throw _0x1ea618;}const _0x41061b=[],_0x292956=a151_0x583159({'text':_0x1500d6(0x1d7),'color':_0x1500d6(0x188)})['start'](),_0x98d800=execConfigMigration(_0x201f44,_0x2bb805);_0x41061b[_0x1500d6(0x1f6)](_0x98d800),_0x292956[_0x98d800['ok']?_0x1500d6(0x1de):'fail'](_0x1500d6(0x1ff)+(_0x98d800[_0x1500d6(0x18a)]??(_0x98d800['ok']?_0x1500d6(0x1a2):'failed')));const _0x267815=resolve(_0x2bb805,'.lovrabet'),_0x28482a=a151_0x583159({'text':_0x1500d6(0x1a9),'color':_0x1500d6(0x188)})[_0x1500d6(0x1d8)]();if(existsSync(_0x267815))try{rmSync(_0x267815,{'recursive':!![],'force':!![]}),_0x28482a[_0x1500d6(0x1de)](_0x1500d6(0x1c0)),_0x41061b[_0x1500d6(0x1f6)]({'step':0x2,'label':_0x1500d6(0x1f3),'ok':!![]});}catch(_0x181fc6){_0x28482a[_0x1500d6(0x200)]('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x181fc6['message']),_0x41061b[_0x1500d6(0x1f6)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x181fc6[_0x1500d6(0x1f1)]});}else _0x28482a['info'](_0x1500d6(0x18f)),_0x41061b[_0x1500d6(0x1f6)]({'step':0x2,'label':_0x1500d6(0x1f3),'ok':!![],'detail':_0x1500d6(0x1fe)});const _0x511a6f=a151_0x583159({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x1500d6(0x188)})[_0x1500d6(0x1d8)](),_0x32b0f6=execRemoveOldArtifacts(_0x201f44['oldArtifacts']);_0x41061b['push'](_0x32b0f6),_0x511a6f[_0x32b0f6['ok']?_0x1500d6(0x1de):_0x1500d6(0x200)](_0x1500d6(0x1da)+(_0x32b0f6['detail']??(_0x32b0f6['ok']?_0x1500d6(0x1a2):'failed')));const _0xfef491=a151_0x583159({'text':_0x1500d6(0x1ed),'color':_0x1500d6(0x188)})[_0x1500d6(0x1d8)](),_0x1b179f=execCleanMcp(_0x201f44);_0x41061b[_0x1500d6(0x1f6)](_0x1b179f),_0xfef491[_0x1b179f['ok']?'succeed':'fail'](_0x1500d6(0x19e)+(_0x1b179f[_0x1500d6(0x18a)]??(_0x1b179f['ok']?'done':_0x1500d6(0x1fb))));const _0x4ba804=a151_0x583159({'text':_0x1500d6(0x1b8),'color':_0x1500d6(0x188)})[_0x1500d6(0x1d8)](),_0x44c26d=execSkillsRemove(_0x2bb805,_0x5564d0);_0x41061b[_0x1500d6(0x1f6)](_0x44c26d),_0x4ba804[_0x44c26d['ok']?_0x1500d6(0x1de):_0x1500d6(0x200)](_0x1500d6(0x198)+(_0x44c26d['detail']??(_0x44c26d['ok']?_0x1500d6(0x1a2):_0x1500d6(0x1fb))));const _0x46b964=a151_0x583159({'text':_0x1500d6(0x1ee),'color':_0x1500d6(0x188)})['start'](),_0x1a1c36=execSkillsAdd(_0x2bb805,_0x5564d0);_0x41061b['push'](_0x1a1c36),_0x46b964[_0x1a1c36['ok']?_0x1500d6(0x1de):_0x1500d6(0x200)](_0x1500d6(0x1a3)+(_0x1a1c36[_0x1500d6(0x18a)]??(_0x1a1c36['ok']?_0x1500d6(0x1a2):'failed')));const _0x9ef819=a151_0x583159({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':_0x1500d6(0x188)})['start'](),_0x3f28df=execUpgradeSdk(_0x201f44);_0x41061b['push'](_0x3f28df),_0x9ef819[_0x3f28df['ok']?_0x1500d6(0x1de):_0x1500d6(0x200)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0x3f28df['detail']??(_0x3f28df['ok']?_0x1500d6(0x1a2):_0x1500d6(0x1fb)))),printSummary(_0x41061b);const _0x3ef786=_0x41061b['some'](_0x59ae85=>!_0x59ae85['ok']);_0x3ef786?console[_0x1500d6(0x1ac)](a151_0x5e5f3f[_0x1500d6(0x1e3)](_0x1500d6(0x1c6))):console[_0x1500d6(0x1ac)](a151_0x5e5f3f[_0x1500d6(0x1af)](_0x1500d6(0x1e8))),_0x3f28df['ok']&&_0x201f44[_0x1500d6(0x191)]&&(console[_0x1500d6(0x1ac)](''),console[_0x1500d6(0x1ac)](a151_0x5e5f3f[_0x1500d6(0x1dd)][_0x1500d6(0x188)](_0x1500d6(0x1b5))),console[_0x1500d6(0x1ac)](a151_0x5e5f3f[_0x1500d6(0x188)](_0x1500d6(0x199))),console[_0x1500d6(0x1ac)](''),console[_0x1500d6(0x1ac)](a151_0x5e5f3f[_0x1500d6(0x1c9)](_0x1500d6(0x194))),console[_0x1500d6(0x1ac)](a151_0x5e5f3f['white']('\x20\x20#\x20or')),console[_0x1500d6(0x1ac)](a151_0x5e5f3f[_0x1500d6(0x1c9)](_0x1500d6(0x1be))),console['log'](''));}function a151_0x2c88(){const _0x1ff135=['cyan','282212MzAMeS','detail','Legacy\x20artifacts:','some','Upgrade\x20@lovrabet/sdk','configMigration','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','stringify','sdkUpgrade','CANCEL','hasNewConfig','\x20\x20npm\x20install','Config\x20migration','path','FOUND','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','@lovrabet/sdk','MCP\x20config:','lovrabet/rabetbase\x20installed\x20globally','lovrabet/lovrabet-skill\x20removed','Step\x204/7:\x20MCP\x20config\x20—\x20','lovrabet/rabetbase','oldArtifacts','@lovrabet/sdk:','done','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','===\x20Upgrade\x20Summary\x20===','270304NbGAtT','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','keys','oldPath','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','FAIL','\x20removed\x20(','log','Clean\x20MCP\x20config','\x20\x20Step\x20','green','\x20→\x20','\x20\x20Current\x20version\x20in\x20','devDependencies','491570WxVxXz','Install\x20new\x20skill','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','object','not\x20found\x20(will\x20create)','Step\x205/7:\x20Removing\x20old\x20skill...','oldMcpConfig','isDirectory','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','isArray','mcpServers','\x20\x20bun\x20install','error','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','\x20removed','parse','Config\x20file:','status','fields','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','package.json','\x20\x20\x20\x20\x20\x20\x20','white','2327787HAOGxf','length','red','957591hgSFqG','join','utf8','label','\x20\x20New\x20config\x20(.rabetbase.json):\x20','[\x22@lovrabet/sdk\x22]:\x20','exit\x20','Proceed\x20with\x20upgrade?','dependencies','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','Step\x201/7:\x20Migrating\x20config...','start','yes','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','files','5787464mshMrz','bold','succeed','.claude/skills/lovrabet','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','220nxKIFE','@lovrabet/dataset-mcp-server','yellow','args','latest','already\x20exists\x20(will\x20merge)','\x20\x20Action:\x20delete','Upgrade\x20completed\x20successfully!','needed','none\x20found','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','entries','Step\x204/7:\x20Cleaning\x20MCP\x20config...','Step\x206/7:\x20Installing\x20new\x20skill...','inherit','cwd','message','includes','Remove\x20.lovrabet/','values','no\x20matching\x20entry\x20found','push','Upgrade\x20cancelled.','\x20from\x20','gray','string','failed','24txnHkU','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','skipped','Step\x201/7:\x20Config\x20migration\x20—\x20','fail','filter','7228klchTL'];a151_0x2c88=function(){return _0x1ff135;};return a151_0x2c88();}
1
+ const a152_0x2a75be=a152_0x5453;function a152_0x5453(_0x48c7bb,_0x198f20){_0x48c7bb=_0x48c7bb-0x88;const _0x164be1=a152_0x164b();let _0x5453c2=_0x164be1[_0x48c7bb];return _0x5453c2;}(function(_0x5e6d0a,_0x5245e7){const _0xba902d=a152_0x5453,_0x540b73=_0x5e6d0a();while(!![]){try{const _0x5123a6=-parseInt(_0xba902d(0xac))/0x1*(parseInt(_0xba902d(0xbc))/0x2)+-parseInt(_0xba902d(0x10a))/0x3+parseInt(_0xba902d(0xf0))/0x4+-parseInt(_0xba902d(0x101))/0x5*(-parseInt(_0xba902d(0xdc))/0x6)+-parseInt(_0xba902d(0xb3))/0x7*(parseInt(_0xba902d(0xb4))/0x8)+parseInt(_0xba902d(0xe4))/0x9*(-parseInt(_0xba902d(0xca))/0xa)+-parseInt(_0xba902d(0x9d))/0xb*(-parseInt(_0xba902d(0xa0))/0xc);if(_0x5123a6===_0x5245e7)break;else _0x540b73['push'](_0x540b73['shift']());}catch(_0x26b123){_0x540b73['push'](_0x540b73['shift']());}}}(a152_0x164b,0x59a59));import a152_0x17a978 from'chalk';import a152_0x320e4c 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[a152_0x2a75be(0xa5)](_0x457cb0=>_0x457cb0!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x147fd7){const _0x51a591=a152_0x2a75be,_0x1d0e74=[];for(const _0x31b381 of Object[_0x51a591(0x97)](CORE_IDE_CONFIGS)){if(_0x31b381[_0x51a591(0xa4)])for(const _0x3c79f5 of _0x31b381[_0x51a591(0xa4)]){_0x1d0e74[_0x51a591(0xbd)](resolve(_0x147fd7,_0x3c79f5[_0x51a591(0xc7)]));}}return _0x1d0e74;}function analyse(_0x4ef322){const _0x4b56ea=a152_0x2a75be;let _0x1b1799=null;const _0x1c9246=resolve(_0x4ef322,NEW_CONFIG_NAME),_0x5386a8=existsSync(_0x1c9246);for(const _0x50e467 of LEGACY_CONFIG_NAMES){const _0x3d6933=resolve(_0x4ef322,_0x50e467);if(existsSync(_0x3d6933)){const _0x3090f3=readConfigFile(_0x3d6933),_0x1e4564=Object[_0x4b56ea(0xf9)](_0x3090f3)[_0x4b56ea(0xa5)](_0x33c697=>typeof _0x3090f3[_0x33c697]!=='undefined');_0x1b1799={'oldPath':_0x3d6933,'hasNewConfig':_0x5386a8,'fields':_0x1e4564};break;}}const _0x5bc26d=[],_0x456d89=resolve(_0x4ef322,_0x4b56ea(0x105));if(existsSync(_0x456d89))_0x5bc26d[_0x4b56ea(0xbd)](_0x456d89);const _0x2e0e02=resolve(_0x4ef322,_0x4b56ea(0xe3));if(existsSync(_0x2e0e02))_0x5bc26d['push'](_0x2e0e02);const _0x2ffd44=resolve(_0x4ef322,_0x4b56ea(0xc8));if(existsSync(_0x2ffd44))_0x5bc26d[_0x4b56ea(0xbd)](_0x2ffd44);for(const _0x35cfea of collectIdeSkillFiles(_0x4ef322)){if(existsSync(_0x35cfea))_0x5bc26d[_0x4b56ea(0xbd)](_0x35cfea);}let _0x1e6b41=null;const _0x3914dc=resolve(_0x4ef322,_0x4b56ea(0xbe));if(existsSync(_0x3914dc))try{const _0x5215be=JSON['parse'](readFileSync(_0x3914dc,_0x4b56ea(0x88)));if(_0x5215be?.[_0x4b56ea(0xd2)]&&typeof _0x5215be[_0x4b56ea(0xd2)]===_0x4b56ea(0xa8)){const _0x112ebc=[];for(const [_0x13a575,_0x2ce702]of Object['entries'](_0x5215be[_0x4b56ea(0xd2)])){const _0x2b5a07=_0x2ce702;_0x2b5a07?.[_0x4b56ea(0xd1)]&&Array[_0x4b56ea(0xea)](_0x2b5a07[_0x4b56ea(0xd1)])&&_0x2b5a07['args'][_0x4b56ea(0x89)](_0x3be56c=>typeof _0x3be56c==='string'&&_0x3be56c[_0x4b56ea(0xd6)](_0x4b56ea(0xe2)))&&_0x112ebc[_0x4b56ea(0xbd)](_0x13a575);}_0x112ebc[_0x4b56ea(0xf7)]>0x0&&(_0x1e6b41={'path':_0x3914dc,'keys':_0x112ebc});}}catch{}const _0x828ebb=_0x5bc26d['length']>0x0||_0x1b1799!==null;let _0x1473c7=null;const _0x4bddc2=resolve(_0x4ef322,_0x4b56ea(0xc6));if(existsSync(_0x4bddc2))try{const _0x55e24d=JSON[_0x4b56ea(0x96)](readFileSync(_0x4bddc2,'utf8'));for(const _0x4d9428 of['dependencies',_0x4b56ea(0xa7)]){const _0x4da548=_0x55e24d?.[_0x4d9428]?.['@lovrabet/sdk'];if(typeof _0x4da548===_0x4b56ea(0xae)){_0x4da548!=='latest'&&(_0x1473c7={'pkgPath':_0x4bddc2,'currentVersion':_0x4da548,'field':_0x4d9428});break;}}}catch{}return{'configMigration':_0x1b1799,'oldArtifacts':_0x5bc26d,'oldMcpConfig':_0x1e6b41,'needsSkillSwap':_0x828ebb,'sdkUpgrade':_0x1473c7};}function printReport(_0x22a61b){const _0x44d8bc=a152_0x2a75be,{configMigration:_0x56d556,oldArtifacts:_0x205787,oldMcpConfig:_0x2a7ab9,needsSkillSwap:_0x4462f4}=_0x22a61b;console[_0x44d8bc(0x8b)](''),console['log'](a152_0x17a978[_0x44d8bc(0x8e)](_0x44d8bc(0x8d))),console[_0x44d8bc(0x8b)]('');_0x56d556?(console[_0x44d8bc(0x8b)](a152_0x17a978[_0x44d8bc(0xa1)]('Config\x20file:')+('\x20\x20'+a152_0x17a978[_0x44d8bc(0xc2)](_0x56d556[_0x44d8bc(0xad)]))),console[_0x44d8bc(0x8b)](_0x44d8bc(0xa2)+(_0x56d556[_0x44d8bc(0xe8)]?a152_0x17a978[_0x44d8bc(0xdf)](_0x44d8bc(0xce)):a152_0x17a978['gray'](_0x44d8bc(0x8c)))),console[_0x44d8bc(0x8b)](_0x44d8bc(0x10b)+_0x56d556[_0x44d8bc(0xaa)]['join'](',\x20')),console[_0x44d8bc(0x8b)](_0x44d8bc(0xf6))):console[_0x44d8bc(0x8b)](a152_0x17a978[_0x44d8bc(0xa1)]('Config\x20file:')+'\x20\x20'+a152_0x17a978[_0x44d8bc(0xa9)]('no\x20legacy\x20config\x20found'));console[_0x44d8bc(0x8b)]('');if(_0x205787[_0x44d8bc(0xf7)]>0x0){console[_0x44d8bc(0x8b)](a152_0x17a978[_0x44d8bc(0xa1)](_0x44d8bc(0x92)));for(const _0x1562f6 of _0x205787){console[_0x44d8bc(0x8b)]('\x20\x20'+a152_0x17a978[_0x44d8bc(0xb1)](_0x44d8bc(0xbb))+'\x20\x20'+_0x1562f6);}console[_0x44d8bc(0x8b)](_0x44d8bc(0xeb));}else console['log'](a152_0x17a978[_0x44d8bc(0xa1)]('Legacy\x20artifacts:')+'\x20\x20'+a152_0x17a978[_0x44d8bc(0xa9)](_0x44d8bc(0xd5)));console[_0x44d8bc(0x8b)]('');_0x2a7ab9?(console[_0x44d8bc(0x8b)](a152_0x17a978['cyan'](_0x44d8bc(0xcf))+('\x20\x20'+a152_0x17a978['yellow'](_0x2a7ab9[_0x44d8bc(0xc7)])+_0x44d8bc(0xc1)+_0x2a7ab9[_0x44d8bc(0xf9)][_0x44d8bc(0xaf)](',\x20'))),console[_0x44d8bc(0x8b)]('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console[_0x44d8bc(0x8b)](a152_0x17a978[_0x44d8bc(0xa1)](_0x44d8bc(0xcf))+'\x20\x20'+a152_0x17a978[_0x44d8bc(0xa9)](_0x44d8bc(0xcd)));console[_0x44d8bc(0x8b)](''),console[_0x44d8bc(0x8b)](a152_0x17a978['cyan'](_0x44d8bc(0x9f))+('\x20\x20'+(_0x4462f4?a152_0x17a978['yellow'](_0x44d8bc(0xd7)):a152_0x17a978[_0x44d8bc(0xdf)](_0x44d8bc(0xa3)))));_0x4462f4&&console['log'](_0x44d8bc(0xe6)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x22a61b[_0x44d8bc(0xd0)]){const {currentVersion:_0x3b1c91,field:_0x331e42,pkgPath:_0x56d727}=_0x22a61b[_0x44d8bc(0xd0)];console['log'](a152_0x17a978[_0x44d8bc(0xa1)](_0x44d8bc(0xb7))+('\x20\x20'+a152_0x17a978['yellow'](_0x56d727))),console[_0x44d8bc(0x8b)](_0x44d8bc(0x9b)+_0x331e42+':\x20'+a152_0x17a978[_0x44d8bc(0xc2)](_0x3b1c91)+_0x44d8bc(0xc5)+a152_0x17a978[_0x44d8bc(0xdf)](_0x44d8bc(0x9a))),console[_0x44d8bc(0x8b)](_0x44d8bc(0x106));}else console['log'](a152_0x17a978[_0x44d8bc(0xa1)]('@lovrabet/sdk:')+'\x20\x20'+a152_0x17a978[_0x44d8bc(0xa9)](_0x44d8bc(0x95)));console[_0x44d8bc(0x8b)]('');}function execConfigMigration(_0x16459e,_0xe84415){const _0x5d7c2e=a152_0x2a75be,{configMigration:_0x3ec15f}=_0x16459e;if(!_0x3ec15f?.[_0x5d7c2e(0xad)])return{'step':0x1,'label':_0x5d7c2e(0x93),'ok':!![],'detail':_0x5d7c2e(0xf2)};const _0x46149e=readConfigFile(_0x3ec15f[_0x5d7c2e(0xad)]),_0xcaea2e=resolve(_0xe84415,NEW_CONFIG_NAME),_0x3b537c=_0x3ec15f['hasNewConfig']?readConfigFile(_0xcaea2e):{};for(const [_0x56a350,_0x2f606b]of Object[_0x5d7c2e(0xe7)](_0x46149e)){!(_0x56a350 in _0x3b537c)&&(_0x3b537c[_0x56a350]=_0x2f606b);}writeConfigFile(_0xcaea2e,_0x3b537c);const _0x3ee538=_0x3ec15f['oldPath']+_0x5d7c2e(0xb6);return renameSync(_0x3ec15f[_0x5d7c2e(0xad)],_0x3ee538),{'step':0x1,'label':_0x5d7c2e(0x93),'ok':!![],'detail':_0x3ec15f[_0x5d7c2e(0xad)]+_0x5d7c2e(0xc5)+_0xcaea2e+_0x5d7c2e(0x103)+_0x3ee538+')'};}function execRemoveOldArtifacts(_0x27ee8f){const _0x40b59a=a152_0x2a75be,_0x52390a=[];for(const _0x3e837e of _0x27ee8f){try{if(!existsSync(_0x3e837e))continue;const _0x53b178=tryStat(_0x3e837e);_0x53b178?.[_0x40b59a(0xd8)]()?rmSync(_0x3e837e,{'recursive':!![],'force':!![]}):unlinkSync(_0x3e837e);}catch(_0x44e59a){_0x52390a[_0x40b59a(0xbd)](_0x3e837e+':\x20'+_0x44e59a[_0x40b59a(0x90)]);}}return{'step':0x3,'label':_0x40b59a(0xbf),'ok':_0x52390a[_0x40b59a(0xf7)]===0x0,'detail':_0x52390a[_0x40b59a(0xf7)]>0x0?_0x27ee8f[_0x40b59a(0xf7)]-_0x52390a[_0x40b59a(0xf7)]+'/'+_0x27ee8f[_0x40b59a(0xf7)]+_0x40b59a(0xfa)+_0x52390a[_0x40b59a(0xaf)](';\x20')+')':_0x27ee8f[_0x40b59a(0xf7)]+'\x20removed'};}function execCleanMcp(_0x528fc7){const _0x53832f=a152_0x2a75be;if(!_0x528fc7[_0x53832f(0xd3)])return{'step':0x4,'label':_0x53832f(0xda),'ok':!![],'detail':_0x53832f(0xf4)};try{const _0x443b7d=readFileSync(_0x528fc7[_0x53832f(0xd3)]['path'],'utf8'),_0x17964a=JSON[_0x53832f(0x96)](_0x443b7d);if(_0x17964a?.[_0x53832f(0xd2)]&&typeof _0x17964a[_0x53832f(0xd2)]===_0x53832f(0xa8)){const _0x3718d0=[];for(const [_0x14195d,_0x3cb3d9]of Object[_0x53832f(0xe7)](_0x17964a[_0x53832f(0xd2)])){_0x3cb3d9?.['args']&&Array[_0x53832f(0xea)](_0x3cb3d9[_0x53832f(0xd1)])&&_0x3cb3d9['args'][_0x53832f(0x89)](_0x33d300=>typeof _0x33d300==='string'&&_0x33d300['includes']('@lovrabet/dataset-mcp-server'))&&_0x3718d0[_0x53832f(0xbd)](_0x14195d);}for(const _0x1b5e29 of _0x3718d0){delete _0x17964a['mcpServers'][_0x1b5e29];}return _0x3718d0['length']>0x0&&writeFileSync(_0x528fc7[_0x53832f(0xd3)][_0x53832f(0xc7)],JSON['stringify'](_0x17964a,null,0x2)+'\x0a',_0x53832f(0x88)),{'step':0x4,'label':_0x53832f(0xda),'ok':!![],'detail':_0x53832f(0xcc)+_0x3718d0[_0x53832f(0xaf)](',\x20')+_0x53832f(0xee)+_0x528fc7[_0x53832f(0xd3)][_0x53832f(0xc7)]};}return{'step':0x4,'label':_0x53832f(0xda),'ok':!![],'detail':_0x53832f(0x9e)};}catch(_0x831e77){return{'step':0x4,'label':_0x53832f(0xda),'ok':![],'detail':_0x831e77[_0x53832f(0x90)]};}}function execSkillsRemove(_0x6eef66,_0x33abd9){const _0x583b11=a152_0x2a75be,_0x845faf=runNpxSkillsRemove(_0x6eef66,{'stdio':_0x583b11(0xa6),'yes':_0x33abd9});return{'step':0x5,'label':_0x583b11(0xf3),'ok':_0x845faf['ok'],'detail':_0x845faf['ok']?_0x583b11(0xcb):_0x845faf[_0x583b11(0x104)]??_0x583b11(0xc3)+_0x845faf[_0x583b11(0xc4)]};}function a152_0x164b(){const _0x220a48=['Legacy\x20artifacts:','Config\x20migration','stringify','not\x20found\x20or\x20already\x20at\x20latest','parse','values','Proceed\x20with\x20upgrade?','done','latest','\x20\x20Current\x20version\x20in\x20','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','14269607mVuemH','no\x20matching\x20entry\x20found','Skill\x20swap:','12zZqfpd','cyan','\x20\x20New\x20config\x20(.rabetbase.json):\x20','not\x20needed','files','filter','inherit','devDependencies','object','gray','fields','Upgrade\x20cancelled.','365137hDxyVG','oldPath','string','join','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','red','Upgrade\x20@lovrabet/sdk','14RVONwS','1973672VaPoSU','Step\x205/7:\x20Removing\x20old\x20skill...','.bak','@lovrabet/sdk:','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','Upgrade\x20completed\x20successfully!','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','FOUND','2hAFgAZ','push','.cursor/mcp.json','Remove\x20legacy\x20artifacts','yes','\x20→\x20keys:\x20','yellow','exit\x20','status','\x20→\x20','package.json','path','.claude/skills/lovrabet','label','10UHtADd','lovrabet/lovrabet-skill\x20removed','removed\x20','no\x20legacy\x20entry','already\x20exists\x20(will\x20merge)','MCP\x20config:','sdkUpgrade','args','mcpServers','oldMcpConfig','\x20→\x20latest','none\x20found','includes','needed','isDirectory','\x20\x20Step\x20','Clean\x20MCP\x20config','\x20\x20bun\x20install','1412556MQVjSt','Step\x201/7:\x20Migrating\x20config...','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','green','configMigration','failed','@lovrabet/dataset-mcp-server','.cursor/rules/lovrabet_rules.mdc','1583793HEfaqA','succeed','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','entries','hasNewConfig','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','isArray','\x20\x20Action:\x20delete','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','\x20from\x20','fail','1346892VqLBEO','\x20\x20#\x20or','skipped\x20(no\x20legacy\x20config)','Remove\x20old\x20skill','skipped','Remove\x20.lovrabet/','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','length','Step\x204/7:\x20Cleaning\x20MCP\x20config...','keys','\x20removed\x20(','white','lovrabet/rabetbase\x20installed\x20globally','start','detail','FAIL','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','10WZpCyZ','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','\x20(backup:\x20','error','.lovrabet','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','Step\x204/7:\x20MCP\x20config\x20—\x20','Install\x20new\x20skill','\x20\x20\x20\x20\x20\x20\x20','2109261vEiEbj','\x20\x20Fields\x20to\x20migrate:\x20','utf8','some','[\x22@lovrabet/sdk\x22]:\x20','log','not\x20found\x20(will\x20create)','===\x20Upgrade\x20Analysis\x20===','bold','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','message','lovrabet/rabetbase'];a152_0x164b=function(){return _0x220a48;};return a152_0x164b();}function execSkillsAdd(_0x1d4082,_0x2f6fe0){const _0x1285c4=a152_0x2a75be,_0x347aac=runNpxSkillsAddGlobal(_0x1d4082,_0x1285c4(0x91),{'stdio':_0x1285c4(0xa6),'yes':_0x2f6fe0});return{'step':0x6,'label':_0x1285c4(0x108),'ok':_0x347aac['ok'],'detail':_0x347aac['ok']?_0x1285c4(0xfc):_0x347aac[_0x1285c4(0x104)]??_0x1285c4(0xc3)+_0x347aac[_0x1285c4(0xc4)]};}function execUpgradeSdk(_0x290b07){const _0x5ce419=a152_0x2a75be;if(!_0x290b07[_0x5ce419(0xd0)])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x5ce419(0xed)};const {pkgPath:_0x4436a5,currentVersion:_0x1b1e07,field:_0x56a39f}=_0x290b07[_0x5ce419(0xd0)];try{const _0x5c7d6d=readFileSync(_0x4436a5,_0x5ce419(0x88)),_0x1c6b4e=JSON[_0x5ce419(0x96)](_0x5c7d6d);return _0x1c6b4e[_0x56a39f]['@lovrabet/sdk']=_0x5ce419(0x9a),writeFileSync(_0x4436a5,JSON[_0x5ce419(0x94)](_0x1c6b4e,null,0x2)+'\x0a',_0x5ce419(0x88)),{'step':0x7,'label':_0x5ce419(0xb2),'ok':!![],'detail':_0x56a39f+_0x5ce419(0x8a)+_0x1b1e07+_0x5ce419(0xd4)};}catch(_0x24a07d){return{'step':0x7,'label':_0x5ce419(0xb2),'ok':![],'detail':_0x24a07d['message']};}}function tryStat(_0x599977){try{return statSync(_0x599977);}catch{return undefined;}}function printSummary(_0x4d041c){const _0xe44951=a152_0x2a75be;console[_0xe44951(0x8b)](''),console['log'](a152_0x17a978['bold']('===\x20Upgrade\x20Summary\x20===')),console[_0xe44951(0x8b)]('');for(const _0x10a1ed of _0x4d041c){const _0x224505=_0x10a1ed['ok']?a152_0x17a978[_0xe44951(0xdf)]('OK'):a152_0x17a978['red'](_0xe44951(0xff));console['log']('\x20\x20'+_0x224505+_0xe44951(0xd9)+_0x10a1ed['step']+':\x20'+_0x10a1ed[_0xe44951(0xc9)]);if(_0x10a1ed[_0xe44951(0xfe)])console[_0xe44951(0x8b)](_0xe44951(0x109)+a152_0x17a978[_0xe44951(0xa9)](_0x10a1ed['detail']));}console[_0xe44951(0x8b)]('');}export async function upgradeApp(_0x42c08b,_0xf639a8){const _0x25fab5=a152_0x2a75be,_0x5c0e4a=process['cwd'](),_0x37e21f=analyse(_0x5c0e4a),_0x36a4c3=!_0x37e21f[_0x25fab5(0xe0)]&&_0x37e21f['oldArtifacts'][_0x25fab5(0xf7)]===0x0&&!_0x37e21f['oldMcpConfig']&&!_0x37e21f['needsSkillSwap']&&!_0x37e21f[_0x25fab5(0xd0)];if(_0x36a4c3){console[_0x25fab5(0x8b)](a152_0x17a978[_0x25fab5(0xdf)](_0x25fab5(0x8f)));return;}printReport(_0x37e21f);const _0x1af576=!!(_0xf639a8[_0x25fab5(0xc0)]||_0xf639a8['Y']||_0x42c08b);if(!_0x1af576)try{const _0x548829=await askConfirm(_0x25fab5(0x98));if(!_0x548829){console[_0x25fab5(0x8b)](a152_0x17a978[_0x25fab5(0xa9)](_0x25fab5(0xab)));return;}}catch(_0x41ed2d){if(_0x41ed2d?.['message']==='CANCEL'){console[_0x25fab5(0x8b)](a152_0x17a978['gray'](_0x25fab5(0xab)));return;}throw _0x41ed2d;}const _0x4df3a0=[],_0x640752=a152_0x320e4c({'text':_0x25fab5(0xdd),'color':_0x25fab5(0xa1)})[_0x25fab5(0xfd)](),_0x1c5666=execConfigMigration(_0x37e21f,_0x5c0e4a);_0x4df3a0[_0x25fab5(0xbd)](_0x1c5666),_0x640752[_0x1c5666['ok']?'succeed':_0x25fab5(0xef)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x1c5666[_0x25fab5(0xfe)]??(_0x1c5666['ok']?'done':_0x25fab5(0xe1))));const _0x503f03=resolve(_0x5c0e4a,_0x25fab5(0x105)),_0x587ca1=a152_0x320e4c({'text':_0x25fab5(0xe9),'color':_0x25fab5(0xa1)})['start']();if(existsSync(_0x503f03))try{rmSync(_0x503f03,{'recursive':!![],'force':!![]}),_0x587ca1[_0x25fab5(0xe5)](_0x25fab5(0x100)),_0x4df3a0['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x5e6627){_0x587ca1['fail']('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x5e6627[_0x25fab5(0x90)]),_0x4df3a0[_0x25fab5(0xbd)]({'step':0x2,'label':_0x25fab5(0xf5),'ok':![],'detail':_0x5e6627['message']});}else _0x587ca1['info'](_0x25fab5(0xb0)),_0x4df3a0[_0x25fab5(0xbd)]({'step':0x2,'label':_0x25fab5(0xf5),'ok':!![],'detail':'skipped'});const _0x2694d9=a152_0x320e4c({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x25fab5(0xa1)})[_0x25fab5(0xfd)](),_0x432282=execRemoveOldArtifacts(_0x37e21f['oldArtifacts']);_0x4df3a0[_0x25fab5(0xbd)](_0x432282),_0x2694d9[_0x432282['ok']?_0x25fab5(0xe5):_0x25fab5(0xef)](_0x25fab5(0xb8)+(_0x432282[_0x25fab5(0xfe)]??(_0x432282['ok']?'done':'failed')));const _0x2715ed=a152_0x320e4c({'text':_0x25fab5(0xf8),'color':_0x25fab5(0xa1)})['start'](),_0x2a7da1=execCleanMcp(_0x37e21f);_0x4df3a0[_0x25fab5(0xbd)](_0x2a7da1),_0x2715ed[_0x2a7da1['ok']?_0x25fab5(0xe5):_0x25fab5(0xef)](_0x25fab5(0x107)+(_0x2a7da1[_0x25fab5(0xfe)]??(_0x2a7da1['ok']?_0x25fab5(0x99):_0x25fab5(0xe1))));const _0x2e7da2=a152_0x320e4c({'text':_0x25fab5(0xb5),'color':_0x25fab5(0xa1)})[_0x25fab5(0xfd)](),_0x13bfdd=execSkillsRemove(_0x5c0e4a,_0x1af576);_0x4df3a0[_0x25fab5(0xbd)](_0x13bfdd),_0x2e7da2[_0x13bfdd['ok']?_0x25fab5(0xe5):_0x25fab5(0xef)]('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0x13bfdd[_0x25fab5(0xfe)]??(_0x13bfdd['ok']?_0x25fab5(0x99):_0x25fab5(0xe1))));const _0x4e77c2=a152_0x320e4c({'text':'Step\x206/7:\x20Installing\x20new\x20skill...','color':'cyan'})[_0x25fab5(0xfd)](),_0xc003b8=execSkillsAdd(_0x5c0e4a,_0x1af576);_0x4df3a0[_0x25fab5(0xbd)](_0xc003b8),_0x4e77c2[_0xc003b8['ok']?_0x25fab5(0xe5):_0x25fab5(0xef)]('Step\x206/7:\x20Install\x20new\x20skill\x20—\x20'+(_0xc003b8[_0x25fab5(0xfe)]??(_0xc003b8['ok']?_0x25fab5(0x99):_0x25fab5(0xe1))));const _0x5a6f26=a152_0x320e4c({'text':_0x25fab5(0xba),'color':_0x25fab5(0xa1)})['start'](),_0x416a77=execUpgradeSdk(_0x37e21f);_0x4df3a0['push'](_0x416a77),_0x5a6f26[_0x416a77['ok']?_0x25fab5(0xe5):_0x25fab5(0xef)](_0x25fab5(0xde)+(_0x416a77[_0x25fab5(0xfe)]??(_0x416a77['ok']?_0x25fab5(0x99):_0x25fab5(0xe1)))),printSummary(_0x4df3a0);const _0x38bf01=_0x4df3a0[_0x25fab5(0x89)](_0x188430=>!_0x188430['ok']);_0x38bf01?console['log'](a152_0x17a978[_0x25fab5(0xc2)](_0x25fab5(0x102))):console[_0x25fab5(0x8b)](a152_0x17a978['green'](_0x25fab5(0xb9))),_0x416a77['ok']&&_0x37e21f[_0x25fab5(0xd0)]&&(console['log'](''),console[_0x25fab5(0x8b)](a152_0x17a978[_0x25fab5(0x8e)]['cyan'](_0x25fab5(0x9c))),console[_0x25fab5(0x8b)](a152_0x17a978[_0x25fab5(0xa1)](_0x25fab5(0xec))),console[_0x25fab5(0x8b)](''),console[_0x25fab5(0x8b)](a152_0x17a978[_0x25fab5(0xfb)]('\x20\x20npm\x20install')),console[_0x25fab5(0x8b)](a152_0x17a978[_0x25fab5(0xfb)](_0x25fab5(0xf1))),console[_0x25fab5(0x8b)](a152_0x17a978[_0x25fab5(0xfb)](_0x25fab5(0xdb))),console[_0x25fab5(0x8b)](''));}
@@ -1 +1 @@
1
- const a152_0x9bbd11=a152_0x4ea7;(function(_0xd462f6,_0x139995){const _0x2fd447=a152_0x4ea7,_0x58c815=_0xd462f6();while(!![]){try{const _0x403875=-parseInt(_0x2fd447(0x15a))/0x1+parseInt(_0x2fd447(0x166))/0x2*(parseInt(_0x2fd447(0x169))/0x3)+-parseInt(_0x2fd447(0x13e))/0x4*(parseInt(_0x2fd447(0x148))/0x5)+parseInt(_0x2fd447(0x127))/0x6+-parseInt(_0x2fd447(0x155))/0x7+parseInt(_0x2fd447(0x15d))/0x8*(parseInt(_0x2fd447(0x129))/0x9)+parseInt(_0x2fd447(0x14b))/0xa;if(_0x403875===_0x139995)break;else _0x58c815['push'](_0x58c815['shift']());}catch(_0x579b51){_0x58c815['push'](_0x58c815['shift']());}}}(a152_0x1882,0x84108));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';function a152_0x1882(){const _0x38cdfd=['`\x20has\x20been\x20removed.','values','Diagnostics','26588nejTQW','Roles','Async\x20Tasks','SQL\x20Queries','app\x20remote','start','app','Code\x20Generation','wildcardDef','Runtime\x20App\x20Config\x20Management','655soDoTy','skill\x20','Project','6725800npVYRi','auth','push','filter','Smart\x20List\x20Pages','read','command','build','get','project','3555342ptTjqx','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','Self\x20Update','\x20\x20[high-risk-write]','952361LcCRjr','map','login','8166336umXlKQ','Authentication','Schema','Configuration','description','create','commands','logout','Run\x20Scripts','22lwxlsn','service','use','125859VnixFV','show','app\x20use','`rabetbase\x20skills`\x20has\x20been\x20removed.','4302630kGsfPd','`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','9owFXCD','Database\x20Connections','run','Permissions','Dataset\x20&\x20Operations','set','Notification\x20Configuration','install','Logs','Run\x20any\x20package.json\x20script','`rabetbase\x20','defaultCommand','BFF\x20Scripts','CLI\x20Built-in\x20Skill','length','hidden','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','File'];a152_0x1882=function(){return _0x38cdfd;};return a152_0x1882();}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{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';import{notificationDefinitions}from'../commands/notification/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';function a152_0x4ea7(_0xd1c32d,_0x2306a0){_0xd1c32d=_0xd1c32d-0x124;const _0x1882fe=a152_0x1882();let _0x4ea770=_0x1882fe[_0xd1c32d];return _0x4ea770;}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{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(_0x556dbe){const _0x19a348=a152_0x4ea7;for(const _0x2f81b2 of _0x556dbe){definitions[_0x19a348(0x12e)](_0x2f81b2[_0x19a348(0x167)]+':'+_0x2f81b2['command'],_0x2f81b2);let _0x4aaae8=serviceGroups['get'](_0x2f81b2['service']);!_0x4aaae8&&(_0x4aaae8=[],serviceGroups['set'](_0x2f81b2[_0x19a348(0x167)],_0x4aaae8)),_0x4aaae8[_0x19a348(0x14d)](_0x2f81b2);}}function registerDeclarativeService(_0x15306b,_0x3478e7,_0x183ab6){const _0x1cb273=a152_0x4ea7;registerDefinitions(_0x3478e7);_0x183ab6?.['wildcardDef']&&registerDefinitions([_0x183ab6[_0x1cb273(0x146)]]);const _0x252d49=_0x59f236=>_0x59f236===_0x1cb273(0x150)?'':_0x59f236==='write'?'\x20\x20[write]':_0x1cb273(0x159),_0xf55ff5={'service':_0x3478e7[0x0][_0x1cb273(0x167)],'label':_0x15306b,'commands':_0x3478e7[_0x1cb273(0x14e)](_0x3b2c04=>!_0x3b2c04[_0x1cb273(0x138)])[_0x1cb273(0x15b)](_0x593ce9=>({'command':_0x593ce9[_0x1cb273(0x151)],'description':_0x593ce9[_0x1cb273(0x161)],'tag':_0x252d49(_0x593ce9['risk'])})),'declarative':!![],'defaultCommand':_0x183ab6?.[_0x1cb273(0x134)]??(_0x183ab6?.['isSingleCommand']?_0x3478e7[0x0]['command']:undefined),'wildcardDef':_0x183ab6?.[_0x1cb273(0x146)],'isSingleCommand':_0x183ab6?.['isSingleCommand']};serviceRegistry[_0x1cb273(0x14d)](_0xf55ff5),serviceByName['set'](_0xf55ff5[_0x1cb273(0x167)],_0xf55ff5);}registerDeclarativeService('Quick\x20Start',initDefinitions,{'defaultCommand':a152_0x9bbd11(0x12b),'isSingleCommand':!![]}),registerDeclarativeService(a152_0x9bbd11(0x14a),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService(a152_0x9bbd11(0x15e),authDefinitions,{'defaultCommand':a152_0x9bbd11(0x15c)}),registerDeclarativeService(a152_0x9bbd11(0x12d),datasetDefinitions),registerDeclarativeService(a152_0x9bbd11(0x14f),pageDefinitions),registerDeclarativeService('API\x20Development',apiDefinitions),registerDeclarativeService('Instant\x20API',dataDefinitions),registerDeclarativeService(a152_0x9bbd11(0x135),bffDefinitions),registerDeclarativeService(a152_0x9bbd11(0x12f),notificationDefinitions),registerDeclarativeService(a152_0x9bbd11(0x141),sqlDefinitions),registerDeclarativeService(a152_0x9bbd11(0x12a),dbDefinitions),registerDeclarativeService('Menu',menuDefinitions),registerDeclarativeService(a152_0x9bbd11(0x140),taskDefinitions),registerDeclarativeService(a152_0x9bbd11(0x13f),roleDefinitions),registerDeclarativeService(a152_0x9bbd11(0x12c),permitDefinitions),registerDeclarativeService(a152_0x9bbd11(0x147),appConfigDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a152_0x9bbd11(0x13a),fileDefinitions),registerDeclarativeService(a152_0x9bbd11(0x145),codegenDefinitions),registerDeclarativeService(a152_0x9bbd11(0x160),configDefinitions),registerDeclarativeService(a152_0x9bbd11(0x13d),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a152_0x9bbd11(0x15f),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a152_0x9bbd11(0x158),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a152_0x9bbd11(0x136),cliSkillDefinitions,{'defaultCommand':a152_0x9bbd11(0x130)}),registerDeclarativeService(a152_0x9bbd11(0x131),logsDefinitions,{'defaultCommand':a152_0x9bbd11(0x124)}),registerDeclarativeService(a152_0x9bbd11(0x165),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a152_0x9bbd11(0x137)]-0x1];last[a152_0x9bbd11(0x163)]=[{'command':'<script>','description':a152_0x9bbd11(0x132),'tag':''}];}export const deprecatedAliases={'create':{'service':a152_0x9bbd11(0x154),'command':a152_0x9bbd11(0x162)},'start':{'service':a152_0x9bbd11(0x12b),'command':a152_0x9bbd11(0x143)},'build':{'service':a152_0x9bbd11(0x12b),'command':a152_0x9bbd11(0x152)},'preview':{'service':a152_0x9bbd11(0x12b),'command':'preview'},'logout':{'service':a152_0x9bbd11(0x14c),'command':a152_0x9bbd11(0x164)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a152_0x9bbd11(0x157),APP_REMOTE_REMOVED_HINT=a152_0x9bbd11(0x156),APP_USE_REMOVED_HINT='Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.';export function resolveRemovedCommand(_0x35648c,_0x407ec9){const _0x161788=a152_0x9bbd11;if(_0x35648c==='skill'){const _0x485803=_0x407ec9?_0x161788(0x149)+_0x407ec9:'skill';return{'command':_0x485803,'message':_0x161788(0x133)+_0x485803+_0x161788(0x13b),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x35648c==='skills')return{'command':'skills','message':_0x161788(0x126),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x35648c===_0x161788(0x144)&&_0x407ec9==='remote')return{'command':_0x161788(0x142),'message':_0x161788(0x139),'hint':APP_REMOTE_REMOVED_HINT};if(_0x35648c===_0x161788(0x144)&&_0x407ec9===_0x161788(0x168))return{'command':_0x161788(0x125),'message':_0x161788(0x128),'hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':'create'},'sql':{'new':a152_0x9bbd11(0x162)}};export function resolveDeprecatedSubcommand(_0x5349ce,_0x975aa1){return deprecatedSubcommands[_0x5349ce]?.[_0x975aa1];}export function findDefinition(_0x9a9c65,_0x4fa3a6){const _0x1339bc=a152_0x9bbd11;return definitions[_0x1339bc(0x153)](_0x9a9c65+':'+_0x4fa3a6);}export function isKnownService(_0x4b31bf){return serviceByName['has'](_0x4b31bf);}export function isDeclarativeService(_0xc3bf45){const _0x2bcca7=a152_0x9bbd11;return serviceGroups['has'](_0xc3bf45)||serviceByName['get'](_0xc3bf45)?.[_0x2bcca7(0x146)]!==undefined;}export function getServiceEntry(_0x1ad3a9){const _0x502293=a152_0x9bbd11;return serviceByName[_0x502293(0x153)](_0x1ad3a9);}export function getLegacyHandler(_0x12e391,_0x57deb0){return undefined;}export function getAllDefinitions(){const _0x47c9ee=a152_0x9bbd11;return Array['from'](definitions[_0x47c9ee(0x13c)]());}
1
+ const a153_0x3fa643=a153_0x1e23;(function(_0x13beea,_0x11b69c){const _0x2e17ff=a153_0x1e23,_0x25b18a=_0x13beea();while(!![]){try{const _0x3283a4=parseInt(_0x2e17ff(0x1df))/0x1*(-parseInt(_0x2e17ff(0x1fb))/0x2)+parseInt(_0x2e17ff(0x1e3))/0x3+-parseInt(_0x2e17ff(0x1c0))/0x4*(parseInt(_0x2e17ff(0x1fe))/0x5)+parseInt(_0x2e17ff(0x200))/0x6*(parseInt(_0x2e17ff(0x1cb))/0x7)+parseInt(_0x2e17ff(0x1c1))/0x8*(-parseInt(_0x2e17ff(0x1bd))/0x9)+parseInt(_0x2e17ff(0x1e5))/0xa+-parseInt(_0x2e17ff(0x1dd))/0xb*(-parseInt(_0x2e17ff(0x1f6))/0xc);if(_0x3283a4===_0x11b69c)break;else _0x25b18a['push'](_0x25b18a['shift']());}catch(_0x2015c3){_0x25b18a['push'](_0x25b18a['shift']());}}}(a153_0x5c13,0xaebd5));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{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';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';function a153_0x5c13(){const _0x4893c7=['2005461VwnVwD','Schema','13679540EbmzeU','Logs','use','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','CLI\x20Built-in\x20Skill','set','app','Roles','`\x20has\x20been\x20removed.','build','\x20\x20[write]','map','App\x20Management','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','commands','from','isSingleCommand','12TdMemn','File','push','filter','Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.','86rKCaRe','BFF\x20Scripts','remote','145zEeGAn','`rabetbase\x20skills`\x20has\x20been\x20removed.','556746IfTshg','get','skill','Notification\x20Configuration','hidden','Instant\x20API','7705998FuhFRb','API\x20Development','command','147572tfUpDw','8FfQMhB','skill\x20','Code\x20Generation','Run\x20any\x20package.json\x20script','\x20\x20[high-risk-write]','run','login','install','Menu','SQL\x20Queries','14tTtqor','Self\x20Update','start','project','app\x20use','Async\x20Tasks','Project','Runtime\x20App\x20Config\x20Management','service','Quick\x20Start','length','read','create','logout','Authentication','Platform\x20Issue','has','wildcardDef','17622308obvIbt','Smart\x20List\x20Pages','27493eJlGQE','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','auth','`rabetbase\x20'];a153_0x5c13=function(){return _0x4893c7;};return a153_0x5c13();}import{fileDefinitions}from'../commands/file/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';function a153_0x1e23(_0x21c996,_0x3ce993){_0x21c996=_0x21c996-0x1bc;const _0x5c1317=a153_0x5c13();let _0x1e2347=_0x5c1317[_0x21c996];return _0x1e2347;}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(_0x5554dd){const _0x7d7f7e=a153_0x1e23;for(const _0x1a891f of _0x5554dd){definitions[_0x7d7f7e(0x1ea)](_0x1a891f[_0x7d7f7e(0x1d3)]+':'+_0x1a891f['command'],_0x1a891f);let _0x63d8ca=serviceGroups[_0x7d7f7e(0x201)](_0x1a891f[_0x7d7f7e(0x1d3)]);!_0x63d8ca&&(_0x63d8ca=[],serviceGroups['set'](_0x1a891f[_0x7d7f7e(0x1d3)],_0x63d8ca)),_0x63d8ca['push'](_0x1a891f);}}function registerDeclarativeService(_0x23dc49,_0x2623e6,_0x201783){const _0x2be231=a153_0x1e23;registerDefinitions(_0x2623e6);_0x201783?.[_0x2be231(0x1dc)]&&registerDefinitions([_0x201783[_0x2be231(0x1dc)]]);const _0x33521a=_0x240f22=>_0x240f22===_0x2be231(0x1d6)?'':_0x240f22==='write'?_0x2be231(0x1ef):_0x2be231(0x1c5),_0x461552={'service':_0x2623e6[0x0][_0x2be231(0x1d3)],'label':_0x23dc49,'commands':_0x2623e6[_0x2be231(0x1f9)](_0x14bf7e=>!_0x14bf7e[_0x2be231(0x204)])[_0x2be231(0x1f0)](_0x378247=>({'command':_0x378247[_0x2be231(0x1bf)],'description':_0x378247['description'],'tag':_0x33521a(_0x378247['risk'])})),'declarative':!![],'defaultCommand':_0x201783?.['defaultCommand']??(_0x201783?.[_0x2be231(0x1f5)]?_0x2623e6[0x0][_0x2be231(0x1bf)]:undefined),'wildcardDef':_0x201783?.[_0x2be231(0x1dc)],'isSingleCommand':_0x201783?.[_0x2be231(0x1f5)]};serviceRegistry[_0x2be231(0x1f8)](_0x461552),serviceByName[_0x2be231(0x1ea)](_0x461552['service'],_0x461552);}registerDeclarativeService(a153_0x3fa643(0x1d4),initDefinitions,{'defaultCommand':a153_0x3fa643(0x1c6),'isSingleCommand':!![]}),registerDeclarativeService(a153_0x3fa643(0x1d1),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService(a153_0x3fa643(0x1f1),appDefinitions),registerDeclarativeService(a153_0x3fa643(0x1d9),authDefinitions,{'defaultCommand':a153_0x3fa643(0x1c7)}),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService(a153_0x3fa643(0x1de),pageDefinitions),registerDeclarativeService(a153_0x3fa643(0x1be),apiDefinitions),registerDeclarativeService(a153_0x3fa643(0x1bc),dataDefinitions),registerDeclarativeService(a153_0x3fa643(0x1fc),bffDefinitions),registerDeclarativeService(a153_0x3fa643(0x203),notificationDefinitions),registerDeclarativeService(a153_0x3fa643(0x1ca),sqlDefinitions),registerDeclarativeService('Database\x20Connections',dbDefinitions),registerDeclarativeService(a153_0x3fa643(0x1c9),menuDefinitions),registerDeclarativeService(a153_0x3fa643(0x1d0),taskDefinitions),registerDeclarativeService(a153_0x3fa643(0x1ec),roleDefinitions),registerDeclarativeService('Permissions',permitDefinitions),registerDeclarativeService(a153_0x3fa643(0x1d2),appConfigDefinitions),registerDeclarativeService(a153_0x3fa643(0x1da),issueDefinitions),registerDeclarativeService(a153_0x3fa643(0x1f7),fileDefinitions),registerDeclarativeService(a153_0x3fa643(0x1c3),codegenDefinitions),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a153_0x3fa643(0x1e4),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a153_0x3fa643(0x1cc),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a153_0x3fa643(0x1e9),cliSkillDefinitions,{'defaultCommand':a153_0x3fa643(0x1c8)}),registerDeclarativeService(a153_0x3fa643(0x1e6),logsDefinitions,{'defaultCommand':'show'}),registerDeclarativeService('Run\x20Scripts',[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a153_0x3fa643(0x1d5)]-0x1];last[a153_0x3fa643(0x1f3)]=[{'command':'<script>','description':a153_0x3fa643(0x1c4),'tag':''}];}export const deprecatedAliases={'create':{'service':a153_0x3fa643(0x1ce),'command':'create'},'start':{'service':'run','command':a153_0x3fa643(0x1cd)},'build':{'service':a153_0x3fa643(0x1c6),'command':a153_0x3fa643(0x1ee)},'preview':{'service':a153_0x3fa643(0x1c6),'command':'preview'},'logout':{'service':a153_0x3fa643(0x1e1),'command':a153_0x3fa643(0x1d8)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a153_0x3fa643(0x1e8),APP_REMOTE_REMOVED_HINT=a153_0x3fa643(0x1e0),APP_USE_REMOVED_HINT=a153_0x3fa643(0x1fa);export function resolveRemovedCommand(_0x5b465a,_0x2699b0){const _0x2a39bf=a153_0x3fa643;if(_0x5b465a==='skill'){const _0x23e32d=_0x2699b0?_0x2a39bf(0x1c2)+_0x2699b0:_0x2a39bf(0x202);return{'command':_0x23e32d,'message':_0x2a39bf(0x1e2)+_0x23e32d+_0x2a39bf(0x1ed),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x5b465a==='skills')return{'command':'skills','message':_0x2a39bf(0x1ff),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x5b465a===_0x2a39bf(0x1eb)&&_0x2699b0===_0x2a39bf(0x1fd))return{'command':'app\x20remote','message':_0x2a39bf(0x1f2),'hint':APP_REMOTE_REMOVED_HINT};if(_0x5b465a===_0x2a39bf(0x1eb)&&_0x2699b0===_0x2a39bf(0x1e7))return{'command':_0x2a39bf(0x1cf),'message':'`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':'create'},'sql':{'new':a153_0x3fa643(0x1d7)}};export function resolveDeprecatedSubcommand(_0x46f170,_0x4a935d){return deprecatedSubcommands[_0x46f170]?.[_0x4a935d];}export function findDefinition(_0xffbf0e,_0x220697){const _0x16213a=a153_0x3fa643;return definitions[_0x16213a(0x201)](_0xffbf0e+':'+_0x220697);}export function isKnownService(_0x5e3281){const _0xb6831a=a153_0x3fa643;return serviceByName[_0xb6831a(0x1db)](_0x5e3281);}export function isDeclarativeService(_0x2b685d){const _0x4b8f76=a153_0x3fa643;return serviceGroups[_0x4b8f76(0x1db)](_0x2b685d)||serviceByName['get'](_0x2b685d)?.[_0x4b8f76(0x1dc)]!==undefined;}export function getServiceEntry(_0x115aa3){const _0x23b022=a153_0x3fa643;return serviceByName[_0x23b022(0x201)](_0x115aa3);}export function getLegacyHandler(_0xf1fa61,_0x4aeb8b){return undefined;}export function getAllDefinitions(){const _0x4990e6=a153_0x3fa643;return Array[_0x4990e6(0x1f4)](definitions['values']());}
@@ -1 +1 @@
1
- const a153_0x1fe630=a153_0x1bd7;(function(_0x516999,_0x53d6ee){const _0x48aa24=a153_0x1bd7,_0x39dc55=_0x516999();while(!![]){try{const _0x577034=parseInt(_0x48aa24(0x194))/0x1*(-parseInt(_0x48aa24(0x18d))/0x2)+parseInt(_0x48aa24(0x188))/0x3*(parseInt(_0x48aa24(0x185))/0x4)+parseInt(_0x48aa24(0x193))/0x5+parseInt(_0x48aa24(0x181))/0x6+-parseInt(_0x48aa24(0x17e))/0x7+-parseInt(_0x48aa24(0x197))/0x8*(parseInt(_0x48aa24(0x186))/0x9)+parseInt(_0x48aa24(0x18a))/0xa*(-parseInt(_0x48aa24(0x18b))/0xb);if(_0x577034===_0x53d6ee)break;else _0x39dc55['push'](_0x39dc55['shift']());}catch(_0x6bc5f2){_0x39dc55['push'](_0x39dc55['shift']());}}}(a153_0x5c29,0xc66a7));import{createAppRole}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';function a153_0x1bd7(_0x34862b,_0xf4f32f){_0x34862b=_0x34862b-0x17c;const _0x5c298f=a153_0x5c29();let _0x1bd7d1=_0x5c298f[_0x34862b];return _0x1bd7d1;}import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a153_0x1fe630(0x17d);function readName(_0xd87060){const _0x5557fc=a153_0x1fe630,_0x1fbbf0=_0xd87060[_0x5557fc(0x180)]('name')['trim']();if(!_0x1fbbf0)throw CliErrors[_0x5557fc(0x182)](_0x5557fc(0x191),'Pass\x20--name\x20<roleName>.');if(_0x1fbbf0[_0x5557fc(0x183)]>0x40)throw CliErrors[_0x5557fc(0x187)](_0x5557fc(0x18c));return _0x1fbbf0;}function a153_0x5c29(){const _0x1a9928=['6yYDGwE','write','3786390pjkyUI','44opFeYl','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','11912SHkIMw','appCode','create','role','name','remark','6418605JUGifm','163aueCGo','trim','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','41704ZuQnzO','\x20(id=','/smartapi/permit/role/create','1256570tcEgpe','POST','str','7371234cDgjyw','flagMissing','length','Created\x20role\x20','2775196GWtrzj','729ZIxdZC','validation'];a153_0x5c29=function(){return _0x1a9928;};return a153_0x5c29();}export const roleCreate={'service':a153_0x1fe630(0x190),'command':a153_0x1fe630(0x18f),'description':a153_0x1fe630(0x196),'risk':a153_0x1fe630(0x189),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3edbbf){readName(_0x3edbbf);},async 'dryRun'(_0x468ab0){const _0x35c4c5=a153_0x1fe630,_0x1572c6=readName(_0x468ab0),_0x3602ee=_0x468ab0[_0x35c4c5(0x180)]('remark')['trim']()||undefined;return asDryRunResult({'operation':'create','selector':{'appCode':_0x468ab0[_0x35c4c5(0x18e)],'roleName':_0x1572c6},'before':null,'after':{'roleName':_0x1572c6,'roleType':'CUSTOM','remark':_0x3602ee},'dryRun':!![],'backend':{'method':_0x35c4c5(0x17f),'path':CREATE_PATH},'warnings':[]},{'method':'POST','url':CREATE_PATH});},async 'execute'(_0x5373fc){const _0x4afd0c=a153_0x1fe630,_0x6f710b=readName(_0x5373fc),_0x516655=_0x5373fc[_0x4afd0c(0x180)](_0x4afd0c(0x192))[_0x4afd0c(0x195)]()||undefined,_0x4811c9=await createAppRole({'appCode':_0x5373fc['appCode'],'roleName':_0x6f710b,..._0x516655?{'remark':_0x516655}:{}});return{'ok':!![],'data':{'operation':_0x4afd0c(0x18f),'selector':{'appCode':_0x5373fc[_0x4afd0c(0x18e)],'roleId':_0x4811c9['id'],'roleName':_0x6f710b},'before':null,'after':projectRole(_0x4811c9),'dryRun':![],'backend':{'method':_0x4afd0c(0x17f),'path':CREATE_PATH},'warnings':[]},'message':_0x4afd0c(0x184)+_0x4811c9['roleName']+_0x4afd0c(0x17c)+_0x4811c9['id']+')'};}};
1
+ const a154_0x41efb4=a154_0x1fe0;(function(_0x489eb4,_0x2ba6b3){const _0x555f5b=a154_0x1fe0,_0x51be66=_0x489eb4();while(!![]){try{const _0xdf7eec=-parseInt(_0x555f5b(0xa1))/0x1+-parseInt(_0x555f5b(0xb3))/0x2*(parseInt(_0x555f5b(0xb7))/0x3)+-parseInt(_0x555f5b(0xa8))/0x4+parseInt(_0x555f5b(0xb8))/0x5+parseInt(_0x555f5b(0xa4))/0x6*(-parseInt(_0x555f5b(0xb1))/0x7)+parseInt(_0x555f5b(0xa6))/0x8+parseInt(_0x555f5b(0xba))/0x9*(parseInt(_0x555f5b(0xa5))/0xa);if(_0xdf7eec===_0x2ba6b3)break;else _0x51be66['push'](_0x51be66['shift']());}catch(_0x5eaa8e){_0x51be66['push'](_0x51be66['shift']());}}}(a154_0x28fd,0x57430));function a154_0x1fe0(_0x32aa7f,_0x34f942){_0x32aa7f=_0x32aa7f-0xa1;const _0x28fd89=a154_0x28fd();let _0x1fe0fc=_0x28fd89[_0x32aa7f];return _0x1fe0fc;}import{createAppRole}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{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a154_0x41efb4(0xa2);function a154_0x28fd(){const _0x46b60b=['CUSTOM','90vHQiEU','558230voWTqF','4946304zyhFTr','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','2852852quEYKO','write','role','name','appCode','Created\x20role\x20','validation','length','Pass\x20--name\x20<roleName>.','88851MCOMJt','flagMissing','331374qWySxr','POST','remark','\x20(id=','3BmZIqN','1663685jaWzJJ','create','180OstIGa','trim','640766wvPXye','/smartapi/permit/role/create'];a154_0x28fd=function(){return _0x46b60b;};return a154_0x28fd();}function readName(_0x424a1a){const _0x1eaf7f=a154_0x41efb4,_0x8d21b8=_0x424a1a['str'](_0x1eaf7f(0xab))[_0x1eaf7f(0xbb)]();if(!_0x8d21b8)throw CliErrors[_0x1eaf7f(0xb2)](_0x1eaf7f(0xab),_0x1eaf7f(0xb0));if(_0x8d21b8[_0x1eaf7f(0xaf)]>0x40)throw CliErrors[_0x1eaf7f(0xae)](_0x1eaf7f(0xa7));return _0x8d21b8;}export const roleCreate={'service':a154_0x41efb4(0xaa),'command':'create','description':'Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','risk':a154_0x41efb4(0xa9),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x235f03){readName(_0x235f03);},async 'dryRun'(_0x2e318b){const _0x38dda3=a154_0x41efb4,_0x4edba0=readName(_0x2e318b),_0x591ad6=_0x2e318b['str'](_0x38dda3(0xb5))['trim']()||undefined;return asDryRunResult({'operation':'create','selector':{'appCode':_0x2e318b[_0x38dda3(0xac)],'roleName':_0x4edba0},'before':null,'after':{'roleName':_0x4edba0,'roleType':_0x38dda3(0xa3),'remark':_0x591ad6},'dryRun':!![],'backend':{'method':_0x38dda3(0xb4),'path':CREATE_PATH},'warnings':[]},{'method':_0x38dda3(0xb4),'url':CREATE_PATH});},async 'execute'(_0x11bc86){const _0x31088b=a154_0x41efb4,_0x5e8fed=readName(_0x11bc86),_0x147630=_0x11bc86['str'](_0x31088b(0xb5))[_0x31088b(0xbb)]()||undefined,_0x51f8c=await createAppRole({'appCode':_0x11bc86[_0x31088b(0xac)],'roleName':_0x5e8fed,..._0x147630?{'remark':_0x147630}:{}});return{'ok':!![],'data':{'operation':_0x31088b(0xb9),'selector':{'appCode':_0x11bc86[_0x31088b(0xac)],'roleId':_0x51f8c['id'],'roleName':_0x5e8fed},'before':null,'after':projectRole(_0x51f8c),'dryRun':![],'backend':{'method':'POST','path':CREATE_PATH},'warnings':[]},'message':_0x31088b(0xad)+_0x51f8c['roleName']+_0x31088b(0xb6)+_0x51f8c['id']+')'};}};
@@ -1 +1 @@
1
- const a154_0x376283=a154_0x1c6f;(function(_0x40f34c,_0x2313e6){const _0x5b6d3e=a154_0x1c6f,_0x1d2b02=_0x40f34c();while(!![]){try{const _0x6d3d07=parseInt(_0x5b6d3e(0x178))/0x1*(-parseInt(_0x5b6d3e(0x184))/0x2)+parseInt(_0x5b6d3e(0x18a))/0x3*(parseInt(_0x5b6d3e(0x17f))/0x4)+-parseInt(_0x5b6d3e(0x174))/0x5*(parseInt(_0x5b6d3e(0x187))/0x6)+parseInt(_0x5b6d3e(0x175))/0x7*(parseInt(_0x5b6d3e(0x17d))/0x8)+-parseInt(_0x5b6d3e(0x183))/0x9+parseInt(_0x5b6d3e(0x179))/0xa*(parseInt(_0x5b6d3e(0x181))/0xb)+parseInt(_0x5b6d3e(0x182))/0xc;if(_0x6d3d07===_0x2313e6)break;else _0x1d2b02['push'](_0x1d2b02['shift']());}catch(_0x4bad0d){_0x1d2b02['push'](_0x1d2b02['shift']());}}}(a154_0x2afc,0xd8c04));import{deleteAppRole}from'../../core/api-client.js';function a154_0x1c6f(_0x4a4b51,_0x52ccc5){_0x4a4b51=_0x4a4b51-0x174;const _0x2afc36=a154_0x2afc();let _0x1c6f38=_0x2afc36[_0x4a4b51];return _0x1c6f38;}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';function a154_0x2afc(){const _0x107ea3=['8GKWmKJ','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','2596LWLhya','26801244NvMMQy','3352914vCZUdZ','14KSvaVc','appCode','roleName','1502778rBsGiu','/smartapi/permit/role/delete','Role\x20still\x20has\x20','1813698cIKxsB','high-risk-write','35BRcpYn','196007tYRwHs','POST','delete','233009BxubHW','26020rCgTuB','role','num','Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','168eUKFyQ','userCount'];a154_0x2afc=function(){return _0x107ea3;};return a154_0x2afc();}const DELETE_PATH=a154_0x376283(0x188);export const roleDelete={'service':a154_0x376283(0x17a),'command':a154_0x376283(0x177),'description':a154_0x376283(0x17c),'risk':a154_0x376283(0x18b),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x349316){const _0x869d6e=a154_0x376283,_0x2c2b59=_0x349316[_0x869d6e(0x17b)]('id'),_0x3f99c2=await getRoleById(_0x349316[_0x869d6e(0x185)],_0x2c2b59);return assertCustomRole(_0x3f99c2,'delete'),asDryRunResult({'operation':_0x869d6e(0x177),'selector':{'appCode':_0x349316[_0x869d6e(0x185)],'roleId':_0x2c2b59,'roleName':_0x3f99c2['roleName']},'before':projectRole(_0x3f99c2),'after':null,'dryRun':!![],'backend':{'method':_0x869d6e(0x176),'path':DELETE_PATH},'warnings':_0x3f99c2[_0x869d6e(0x17e)]>0x0?[_0x869d6e(0x189)+_0x3f99c2[_0x869d6e(0x17e)]+_0x869d6e(0x180)]:[]},{'method':_0x869d6e(0x176),'url':DELETE_PATH});},async 'execute'(_0x271bb3){const _0x1eb0d4=a154_0x376283,_0x1a05aa=_0x271bb3[_0x1eb0d4(0x17b)]('id'),_0x1e826a=await getRoleById(_0x271bb3[_0x1eb0d4(0x185)],_0x1a05aa);return assertCustomRole(_0x1e826a,_0x1eb0d4(0x177)),await deleteAppRole(_0x1a05aa),{'ok':!![],'data':{'operation':_0x1eb0d4(0x177),'selector':{'appCode':_0x271bb3['appCode'],'roleId':_0x1a05aa,'roleName':_0x1e826a[_0x1eb0d4(0x186)]},'before':projectRole(_0x1e826a),'after':null,'dryRun':![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':[]},'message':'Deleted\x20role\x20'+_0x1e826a[_0x1eb0d4(0x186)]+'\x20(id='+_0x1a05aa+')'};}};
1
+ const a155_0x30f8e7=a155_0x59aa;function a155_0x59aa(_0x12d83f,_0x5a6888){_0x12d83f=_0x12d83f-0x6e;const _0x3c8213=a155_0x3c82();let _0x59aafb=_0x3c8213[_0x12d83f];return _0x59aafb;}(function(_0x2ca274,_0x2cdbbf){const _0xc59eb9=a155_0x59aa,_0xf22ebd=_0x2ca274();while(!![]){try{const _0x2b0c43=parseInt(_0xc59eb9(0x87))/0x1*(parseInt(_0xc59eb9(0x73))/0x2)+-parseInt(_0xc59eb9(0x7a))/0x3*(parseInt(_0xc59eb9(0x85))/0x4)+-parseInt(_0xc59eb9(0x82))/0x5*(-parseInt(_0xc59eb9(0x76))/0x6)+-parseInt(_0xc59eb9(0x70))/0x7+-parseInt(_0xc59eb9(0x78))/0x8+parseInt(_0xc59eb9(0x7e))/0x9*(-parseInt(_0xc59eb9(0x81))/0xa)+-parseInt(_0xc59eb9(0x7d))/0xb*(-parseInt(_0xc59eb9(0x7b))/0xc);if(_0x2b0c43===_0x2cdbbf)break;else _0xf22ebd['push'](_0xf22ebd['shift']());}catch(_0x50ce3e){_0xf22ebd['push'](_0xf22ebd['shift']());}}}(a155_0x3c82,0x5d382));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';function a155_0x3c82(){const _0x2f8d55=['delete','/smartapi/permit/role/delete','6CandaQ','Deleted\x20role\x20','1457752jOxqli','appCode','63594SSrROk','14470788OPnhhZ','Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','11tXdLbO','9qnAKYF','userCount','num','6762190HyLAbm','1207275bnJOqq','roleName','\x20(id=','8QNRmdi','Role\x20still\x20has\x20','380QtSnid','high-risk-write','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','1458758kyeFos','POST','role','230vAUGyA'];a155_0x3c82=function(){return _0x2f8d55;};return a155_0x3c82();}const DELETE_PATH=a155_0x30f8e7(0x75);export const roleDelete={'service':a155_0x30f8e7(0x72),'command':'delete','description':a155_0x30f8e7(0x7c),'risk':a155_0x30f8e7(0x6e),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x2061c2){const _0x508c79=a155_0x30f8e7,_0x154607=_0x2061c2[_0x508c79(0x80)]('id'),_0x2f1e06=await getRoleById(_0x2061c2[_0x508c79(0x79)],_0x154607);return assertCustomRole(_0x2f1e06,_0x508c79(0x74)),asDryRunResult({'operation':_0x508c79(0x74),'selector':{'appCode':_0x2061c2[_0x508c79(0x79)],'roleId':_0x154607,'roleName':_0x2f1e06[_0x508c79(0x83)]},'before':projectRole(_0x2f1e06),'after':null,'dryRun':!![],'backend':{'method':_0x508c79(0x71),'path':DELETE_PATH},'warnings':_0x2f1e06[_0x508c79(0x7f)]>0x0?[_0x508c79(0x86)+_0x2f1e06[_0x508c79(0x7f)]+_0x508c79(0x6f)]:[]},{'method':_0x508c79(0x71),'url':DELETE_PATH});},async 'execute'(_0x107e82){const _0x353d8f=a155_0x30f8e7,_0x4a9a02=_0x107e82[_0x353d8f(0x80)]('id'),_0x26fdbf=await getRoleById(_0x107e82[_0x353d8f(0x79)],_0x4a9a02);return assertCustomRole(_0x26fdbf,'delete'),await deleteAppRole(_0x4a9a02),{'ok':!![],'data':{'operation':_0x353d8f(0x74),'selector':{'appCode':_0x107e82[_0x353d8f(0x79)],'roleId':_0x4a9a02,'roleName':_0x26fdbf[_0x353d8f(0x83)]},'before':projectRole(_0x26fdbf),'after':null,'dryRun':![],'backend':{'method':_0x353d8f(0x71),'path':DELETE_PATH},'warnings':[]},'message':_0x353d8f(0x77)+_0x26fdbf[_0x353d8f(0x83)]+_0x353d8f(0x84)+_0x4a9a02+')'};}};
@@ -1 +1 @@
1
- const a155_0x502e00=a155_0x1bd9;(function(_0x51c5bc,_0x552a40){const _0x33c51d=a155_0x1bd9,_0x5a7371=_0x51c5bc();while(!![]){try{const _0x91ef09=-parseInt(_0x33c51d(0x1d0))/0x1+parseInt(_0x33c51d(0x1c8))/0x2*(parseInt(_0x33c51d(0x1c3))/0x3)+-parseInt(_0x33c51d(0x1cd))/0x4+parseInt(_0x33c51d(0x1c6))/0x5*(parseInt(_0x33c51d(0x1ce))/0x6)+-parseInt(_0x33c51d(0x1ca))/0x7+parseInt(_0x33c51d(0x1c4))/0x8*(-parseInt(_0x33c51d(0x1c7))/0x9)+parseInt(_0x33c51d(0x1d2))/0xa;if(_0x91ef09===_0x552a40)break;else _0x5a7371['push'](_0x5a7371['shift']());}catch(_0x35d696){_0x5a7371['push'](_0x5a7371['shift']());}}}(a155_0x17d4,0x5182e));function a155_0x1bd9(_0xe71bb6,_0x553204){_0xe71bb6=_0xe71bb6-0x1c3;const _0x17d493=a155_0x17d4();let _0x1bd965=_0x17d493[_0xe71bb6];return _0x1bd965;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';export const roleDetail={'service':a155_0x502e00(0x1cb),'command':'detail','description':a155_0x502e00(0x1c5),'risk':a155_0x502e00(0x1d3),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x4cf3c6){const _0x50c320=a155_0x502e00,_0x402726=_0x4cf3c6[_0x50c320(0x1cf)]('id'),_0xba8840=await getRoleById(_0x4cf3c6[_0x50c320(0x1d1)],_0x402726);return{'ok':!![],'data':{'role':projectRole(_0xba8840)},'message':'Role\x20'+_0xba8840[_0x50c320(0x1c9)]+'\x20('+_0xba8840[_0x50c320(0x1cc)]+')'};}};function a155_0x17d4(){const _0x2be75f=['3140893tNmbRB','role','roleType','1883356WIVYlG','6bMkfqF','num','194109wMpuPs','appCode','11606450jgJXBB','read','12513ZwVZEO','3646584mXrzhh','Show\x20a\x20single\x20role\x27s\x20detail','1753105muzrJJ','9yBCToW','188XxOlLo','roleName'];a155_0x17d4=function(){return _0x2be75f;};return a155_0x17d4();}
1
+ const a156_0xa3917e=a156_0x1aff;(function(_0x4081a4,_0x17fa9e){const _0x1b6aaa=a156_0x1aff,_0x2817ac=_0x4081a4();while(!![]){try{const _0x59f5d=parseInt(_0x1b6aaa(0x1c0))/0x1*(-parseInt(_0x1b6aaa(0x1c3))/0x2)+parseInt(_0x1b6aaa(0x1bb))/0x3+-parseInt(_0x1b6aaa(0x1ca))/0x4*(-parseInt(_0x1b6aaa(0x1c4))/0x5)+parseInt(_0x1b6aaa(0x1c8))/0x6+-parseInt(_0x1b6aaa(0x1ba))/0x7*(-parseInt(_0x1b6aaa(0x1c7))/0x8)+parseInt(_0x1b6aaa(0x1c5))/0x9+-parseInt(_0x1b6aaa(0x1c2))/0xa*(parseInt(_0x1b6aaa(0x1bd))/0xb);if(_0x59f5d===_0x17fa9e)break;else _0x2817ac['push'](_0x2817ac['shift']());}catch(_0x2c1ad5){_0x2817ac['push'](_0x2817ac['shift']());}}}(a156_0x1379,0x6d264));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a156_0x1aff(_0x49780b,_0x482720){_0x49780b=_0x49780b-0x1b9;const _0x1379f8=a156_0x1379();let _0x1aff60=_0x1379f8[_0x49780b];return _0x1aff60;}export const roleDetail={'service':a156_0xa3917e(0x1c9),'command':a156_0xa3917e(0x1b9),'description':a156_0xa3917e(0x1c6),'risk':'read','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0xd76587){const _0x29bd25=a156_0xa3917e,_0x4cc121=_0xd76587[_0x29bd25(0x1c1)]('id'),_0x196960=await getRoleById(_0xd76587[_0x29bd25(0x1bf)],_0x4cc121);return{'ok':!![],'data':{'role':projectRole(_0x196960)},'message':_0x29bd25(0x1be)+_0x196960[_0x29bd25(0x1bc)]+'\x20('+_0x196960['roleType']+')'};}};function a156_0x1379(){const _0x275922=['detail','112WDNbEr','931317HzeNNy','roleName','176pOqpGj','Role\x20','appCode','1hVaZbs','num','971970SPfLWb','526402HGktDn','531880VHTNJm','6568146Fqxzop','Show\x20a\x20single\x20role\x27s\x20detail','349336wmaWzK','1882632cicGil','role','8ereIPQ'];a156_0x1379=function(){return _0x275922;};return a156_0x1379();}
@@ -1 +1 @@
1
- (function(_0x4c755b,_0x5aebb9){const _0x3eb444=a156_0x4370,_0x4752d3=_0x4c755b();while(!![]){try{const _0x178176=parseInt(_0x3eb444(0x1d6))/0x1*(parseInt(_0x3eb444(0x1d8))/0x2)+parseInt(_0x3eb444(0x1d3))/0x3+parseInt(_0x3eb444(0x1d1))/0x4*(-parseInt(_0x3eb444(0x1d7))/0x5)+-parseInt(_0x3eb444(0x1d4))/0x6+parseInt(_0x3eb444(0x1d5))/0x7+-parseInt(_0x3eb444(0x1d2))/0x8*(parseInt(_0x3eb444(0x1cf))/0x9)+parseInt(_0x3eb444(0x1d0))/0xa*(parseInt(_0x3eb444(0x1ce))/0xb);if(_0x178176===_0x5aebb9)break;else _0x4752d3['push'](_0x4752d3['shift']());}catch(_0xf0fc66){_0x4752d3['push'](_0x4752d3['shift']());}}}(a156_0x372b,0x49075));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';import{roleCreate}from'../../commands/role/create.js';function a156_0x4370(_0x5143e0,_0x464d86){_0x5143e0=_0x5143e0-0x1ce;const _0x372b8f=a156_0x372b();let _0x437030=_0x372b8f[_0x5143e0];return _0x437030;}import{roleUpdate}from'../../commands/role/update.js';import{roleDelete}from'../../commands/role/delete.js';import{roleUserResolve}from'../../commands/role/user-resolve.js';function a156_0x372b(){const _0xe2b0ac=['6bFrEyY','902638qIUiKC','117pGSNvL','40rOmsSf','145648ZnuktQ','168616CzZksE','690534YmNEjx','1459398pJbDDn','204974Zswrtt','100497pszuVd','10fBECsR'];a156_0x372b=function(){return _0xe2b0ac;};return a156_0x372b();}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(_0x15e420,_0x28ab72){const _0x2f0a64=a157_0x1a24,_0x935705=_0x15e420();while(!![]){try{const _0x21780f=-parseInt(_0x2f0a64(0x8e))/0x1+parseInt(_0x2f0a64(0x87))/0x2*(parseInt(_0x2f0a64(0x8b))/0x3)+-parseInt(_0x2f0a64(0x90))/0x4*(-parseInt(_0x2f0a64(0x86))/0x5)+parseInt(_0x2f0a64(0x8f))/0x6*(parseInt(_0x2f0a64(0x8a))/0x7)+-parseInt(_0x2f0a64(0x89))/0x8+-parseInt(_0x2f0a64(0x91))/0x9*(parseInt(_0x2f0a64(0x8c))/0xa)+-parseInt(_0x2f0a64(0x8d))/0xb*(-parseInt(_0x2f0a64(0x88))/0xc);if(_0x21780f===_0x28ab72)break;else _0x935705['push'](_0x935705['shift']());}catch(_0xb56117){_0x935705['push'](_0x935705['shift']());}}}(a157_0x5ab5,0x946e5));function a157_0x5ab5(){const _0x217beb=['4meVbVj','1512ZKJkAX','7865784gkQbXp','2750867vnZocE','1240917ArtjZY','613240Ilmvpm','2772umPqnH','512077IOYZcW','6DcBTHY','217944mcIMQy','27pkBRFW','95Faucoc'];a157_0x5ab5=function(){return _0x217beb;};return a157_0x5ab5();}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';import{roleDelete}from'../../commands/role/delete.js';import{roleUserResolve}from'../../commands/role/user-resolve.js';import{roleUserAdd}from'../../commands/role/user-add.js';function a157_0x1a24(_0x158e87,_0x35bede){_0x158e87=_0x158e87-0x86;const _0x5ab5f3=a157_0x5ab5();let _0x1a24a6=_0x5ab5f3[_0x158e87];return _0x1a24a6;}import{roleUserRemove}from'../../commands/role/user-remove.js';export const roleDefinitions=[roleList,roleDetail,roleCreate,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
@@ -1 +1 @@
1
- const a157_0x56b413=a157_0x4290;(function(_0x10e5d6,_0x1f5901){const _0x324922=a157_0x4290,_0x18c4cf=_0x10e5d6();while(!![]){try{const _0x39efe6=parseInt(_0x324922(0xd3))/0x1*(parseInt(_0x324922(0xc6))/0x2)+parseInt(_0x324922(0xcc))/0x3*(parseInt(_0x324922(0xd8))/0x4)+-parseInt(_0x324922(0xc4))/0x5+parseInt(_0x324922(0xcd))/0x6+-parseInt(_0x324922(0xc5))/0x7+-parseInt(_0x324922(0xb9))/0x8*(parseInt(_0x324922(0xd0))/0x9)+-parseInt(_0x324922(0xc2))/0xa;if(_0x39efe6===_0x1f5901)break;else _0x18c4cf['push'](_0x18c4cf['shift']());}catch(_0x538a13){_0x18c4cf['push'](_0x18c4cf['shift']());}}}(a157_0x25a5,0xcd0db));import{listAppRoles}from'../../core/api-client.js';function a157_0x25a5(){const _0x40fe7a=['map','roleType','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','\x20role(s)','Filter\x20by\x20role\x20type','Invalid\x20--type\x20\x22','Use\x20one\x20of:\x20','13693900jLqUIN','CUSTOM','3471515JNOkHm','2645258apVPSp','2950586BwHLap','role','string','read','page','num','4654539QXEEDu','9917430sLJjcf','DEV','appCode','225FxXhrM','ADMIN','trim','1JcgYUm','pagesize','toUpperCase','validation','type','4UttcqF','447432yHdXsR','str'];a157_0x25a5=function(){return _0x40fe7a;};return a157_0x25a5();}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=[a157_0x56b413(0xd1),a157_0x56b413(0xce),'USER',a157_0x56b413(0xc3)];function a157_0x4290(_0x291d3b,_0x22c091){_0x291d3b=_0x291d3b-0xb9;const _0x25a5fc=a157_0x25a5();let _0x4290ba=_0x25a5fc[_0x291d3b];return _0x4290ba;}export const roleList={'service':a157_0x56b413(0xc7),'command':'list','description':'List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','risk':a157_0x56b413(0xc9),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a157_0x56b413(0xd7),'type':a157_0x56b413(0xc8),'required':![],'description':a157_0x56b413(0xbf),'enum':ROLE_TYPES},{'name':'page','type':'number','description':'Page\x20index\x20(1-based)','default':0x1},{'name':a157_0x56b413(0xd4),'type':'number','description':'Page\x20size\x20(1-100)','default':0x64}],async 'validate'(_0xe15798){const _0x3e70ec=a157_0x56b413,_0x5cd0b0=_0xe15798['str'](_0x3e70ec(0xd7))['trim']();if(_0x5cd0b0&&!ROLE_TYPES['includes'](_0x5cd0b0[_0x3e70ec(0xd5)]()))throw CliErrors[_0x3e70ec(0xd6)](_0x3e70ec(0xc0)+_0x5cd0b0+'\x22.',_0x3e70ec(0xc1)+ROLE_TYPES['join'](',\x20')+'.');const _0x157342=_0xe15798[_0x3e70ec(0xcb)](_0x3e70ec(0xca),0x1),_0x30efbe=_0xe15798['num'](_0x3e70ec(0xd4),0x64);if(_0x157342<0x1)throw CliErrors[_0x3e70ec(0xd6)](_0x3e70ec(0xbd));if(_0x30efbe<0x1||_0x30efbe>0x64)throw CliErrors['validation']('--pagesize\x20must\x20be\x20between\x201\x20and\x20100.');},async 'execute'(_0x4b41d6){const _0x19901f=a157_0x56b413,_0x3da904=_0x4b41d6[_0x19901f(0xcb)](_0x19901f(0xca),0x1)||0x1,_0x2ff4ed=_0x4b41d6[_0x19901f(0xcb)]('pagesize',0x64)||0x64,_0x5487be=_0x4b41d6[_0x19901f(0xba)]('type')[_0x19901f(0xd2)]()[_0x19901f(0xd5)](),{items:_0x50bb44,paging:_0xc9df2a}=await listAppRoles(_0x4b41d6[_0x19901f(0xcf)],{'currentPage':_0x3da904,'pageSize':_0x2ff4ed}),_0x140ded=_0x5487be?_0x50bb44['filter'](_0x4f77e8=>_0x4f77e8[_0x19901f(0xbc)]===_0x5487be):_0x50bb44,_0x501f6b=_0x140ded[_0x19901f(0xbb)](projectRole);return{'ok':!![],'data':{'roles':_0x501f6b,'paging':_0xc9df2a},'message':'Found\x20'+_0x501f6b['length']+_0x19901f(0xbe)};}};
1
+ const a158_0x45ef7a=a158_0xdb48;(function(_0x3bd4bb,_0x2b0c01){const _0x17a561=a158_0xdb48,_0x32b569=_0x3bd4bb();while(!![]){try{const _0x217d42=parseInt(_0x17a561(0x14a))/0x1*(parseInt(_0x17a561(0x162))/0x2)+parseInt(_0x17a561(0x14c))/0x3+parseInt(_0x17a561(0x15a))/0x4+parseInt(_0x17a561(0x14d))/0x5*(parseInt(_0x17a561(0x163))/0x6)+-parseInt(_0x17a561(0x152))/0x7+-parseInt(_0x17a561(0x13a))/0x8*(-parseInt(_0x17a561(0x141))/0x9)+parseInt(_0x17a561(0x15f))/0xa*(-parseInt(_0x17a561(0x13c))/0xb);if(_0x217d42===_0x2b0c01)break;else _0x32b569['push'](_0x32b569['shift']());}catch(_0x265aa6){_0x32b569['push'](_0x32b569['shift']());}}}(a158_0x1dae,0x880ca));import{listAppRoles}from'../../core/api-client.js';function a158_0xdb48(_0x2f969a,_0x11b9ed){_0x2f969a=_0x2f969a-0x13a;const _0x1daed0=a158_0x1dae();let _0xdb48ab=_0x1daed0[_0x2f969a];return _0xdb48ab;}import{CliErrors}from'../../errors.js';function a158_0x1dae(){const _0x4d7e60=['DEV','map','join','trim','426123GSNOqs','Page\x20index\x20(1-based)','Invalid\x20--type\x20\x22','pagesize','appCode','validation','type','Found\x20','read','4jkmBdL','str','3338652fDuXyC','85210tawqxQ','Page\x20size\x20(1-100)','includes','num','length','6596408tiyTHR','USER','number','list','--pagesize\x20must\x20be\x20between\x201\x20and\x20100.','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','CUSTOM','roleType','1963152sRZdPw','ADMIN','\x20role(s)','Filter\x20by\x20role\x20type','toUpperCase','60ZByLQY','role','Use\x20one\x20of:\x20','126014TFXUcw','216pkaVxA','64DFqVzs','page','2472041RXGEmZ'];a158_0x1dae=function(){return _0x4d7e60;};return a158_0x1dae();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=[a158_0x45ef7a(0x15b),a158_0x45ef7a(0x13d),a158_0x45ef7a(0x153),a158_0x45ef7a(0x158)];export const roleList={'service':a158_0x45ef7a(0x160),'command':a158_0x45ef7a(0x155),'description':a158_0x45ef7a(0x157),'risk':a158_0x45ef7a(0x149),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a158_0x45ef7a(0x147),'type':'string','required':![],'description':a158_0x45ef7a(0x15d),'enum':ROLE_TYPES},{'name':a158_0x45ef7a(0x13b),'type':a158_0x45ef7a(0x154),'description':a158_0x45ef7a(0x142),'default':0x1},{'name':a158_0x45ef7a(0x144),'type':a158_0x45ef7a(0x154),'description':a158_0x45ef7a(0x14e),'default':0x64}],async 'validate'(_0x1d91e6){const _0x390fcc=a158_0x45ef7a,_0x58b6ad=_0x1d91e6[_0x390fcc(0x14b)](_0x390fcc(0x147))[_0x390fcc(0x140)]();if(_0x58b6ad&&!ROLE_TYPES[_0x390fcc(0x14f)](_0x58b6ad[_0x390fcc(0x15e)]()))throw CliErrors[_0x390fcc(0x146)](_0x390fcc(0x143)+_0x58b6ad+'\x22.',_0x390fcc(0x161)+ROLE_TYPES[_0x390fcc(0x13f)](',\x20')+'.');const _0x2e7c70=_0x1d91e6[_0x390fcc(0x150)]('page',0x1),_0x19cb6a=_0x1d91e6[_0x390fcc(0x150)]('pagesize',0x64);if(_0x2e7c70<0x1)throw CliErrors[_0x390fcc(0x146)]('--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.');if(_0x19cb6a<0x1||_0x19cb6a>0x64)throw CliErrors['validation'](_0x390fcc(0x156));},async 'execute'(_0x171293){const _0x2279be=a158_0x45ef7a,_0x4ac536=_0x171293['num'](_0x2279be(0x13b),0x1)||0x1,_0x58cf5f=_0x171293[_0x2279be(0x150)](_0x2279be(0x144),0x64)||0x64,_0x2dca4b=_0x171293[_0x2279be(0x14b)](_0x2279be(0x147))[_0x2279be(0x140)]()[_0x2279be(0x15e)](),{items:_0x46d696,paging:_0x3fba37}=await listAppRoles(_0x171293[_0x2279be(0x145)],{'currentPage':_0x4ac536,'pageSize':_0x58cf5f}),_0x265baf=_0x2dca4b?_0x46d696['filter'](_0x370057=>_0x370057[_0x2279be(0x159)]===_0x2dca4b):_0x46d696,_0xd5ff3d=_0x265baf[_0x2279be(0x13e)](projectRole);return{'ok':!![],'data':{'roles':_0xd5ff3d,'paging':_0x3fba37},'message':_0x2279be(0x148)+_0xd5ff3d[_0x2279be(0x151)]+_0x2279be(0x15c)};}};
@@ -1 +1 @@
1
- const a158_0x5842ea=a158_0x570f;(function(_0x3eb83e,_0x4f25ad){const _0x3e46c4=a158_0x570f,_0x431c99=_0x3eb83e();while(!![]){try{const _0xb0019b=parseInt(_0x3e46c4(0x15e))/0x1+parseInt(_0x3e46c4(0x137))/0x2*(-parseInt(_0x3e46c4(0x163))/0x3)+-parseInt(_0x3e46c4(0x14c))/0x4+parseInt(_0x3e46c4(0x152))/0x5+parseInt(_0x3e46c4(0x161))/0x6*(parseInt(_0x3e46c4(0x138))/0x7)+-parseInt(_0x3e46c4(0x169))/0x8*(parseInt(_0x3e46c4(0x13d))/0x9)+-parseInt(_0x3e46c4(0x12d))/0xa;if(_0xb0019b===_0x4f25ad)break;else _0x431c99['push'](_0x431c99['shift']());}catch(_0x3e144f){_0x431c99['push'](_0x431c99['shift']());}}}(a158_0x4dea,0x6e4ee));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':a158_0x5842ea(0x16d),'required':!![],'description':a158_0x5842ea(0x159)};export const ROLE_REF_FLAG={'name':a158_0x5842ea(0x16b),'type':a158_0x5842ea(0x12f),'required':!![],'description':'Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)'};export const USER_REF_FLAG={'name':a158_0x5842ea(0x140),'type':a158_0x5842ea(0x12f),'required':!![],'description':a158_0x5842ea(0x173)};export const NAME_FLAG={'name':a158_0x5842ea(0x141),'type':a158_0x5842ea(0x12f),'required':!![],'description':'Role\x20name'};function a158_0x570f(_0x4d8618,_0x10c43d){_0x4d8618=_0x4d8618-0x12c;const _0x4deaae=a158_0x4dea();let _0x570f20=_0x4deaae[_0x4d8618];return _0x570f20;}export const USER_NAME_FLAG={'name':a158_0x5842ea(0x141),'type':a158_0x5842ea(0x12f),'required':!![],'description':a158_0x5842ea(0x145)};export const REMARK_FLAG={'name':a158_0x5842ea(0x155),'type':a158_0x5842ea(0x12f),'required':![],'description':'Optional\x20role\x20remark/description'};export const EXPECT_USER_COUNT_FLAG={'name':a158_0x5842ea(0x164),'type':a158_0x5842ea(0x16d),'required':![],'description':'Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs'};export const BUILTIN_ROLE_TYPES=[a158_0x5842ea(0x167),'DEV',a158_0x5842ea(0x177)];export function isBuiltinRole(_0x503fa7){return BUILTIN_ROLE_TYPES['includes'](_0x503fa7);}export function assertCustomRole(_0x3b437f,_0x167626){const _0x4aa3cb=a158_0x5842ea;if(_0x3b437f[_0x4aa3cb(0x133)]!=='CUSTOM')throw CliErrors['validation'](_0x4aa3cb(0x14f)+_0x167626+'\x20built-in\x20role\x20'+_0x3b437f['roleName']+'\x20('+_0x3b437f[_0x4aa3cb(0x133)]+').','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.');}function a158_0x4dea(){const _0x3350c6=['splice','355606yRiqVj','2367085pzsbLR','flagMissing','\x20member(s)\x20but\x20role\x20has\x20','Role\x20id\x20','test','23373TsEVtF','DEV','Multiple\x20tenant\x20members\x20match\x20\x22','user','name','user-add','totalCount','findIndex','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','toLowerCase','POST','expectUserCount','dryRun','map','User\x20','1168324cWRGiU','Role\x20name\x20\x22','roleName','Cannot\x20','length','appCode','3261255kSVfjh','authRequired','nickname','remark','userCount','userList','trim','Role\x20id\x20(from\x20`role\x20list`)','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','find','push','815604ZOdFFX','Pass\x20--role\x20<id|name>.','validation','6TOwoFO','\x22\x20is\x20ambiguous\x20(ids:\x20','6PBXmeV','expect-user-count','tenant','\x22\x20not\x20found\x20in\x20app\x20','ADMIN','permitCount','1048NhCmqZ','str','role','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.','number','filter','tenant_code','Disambiguate\x20with\x20--role\x20<id>.','/smartapi/permit/user-role/update-user-list','Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','\x20not\x20found\x20in\x20app\x20','username','flag','USER','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','Disambiguate\x20with\x20--user\x20<id>.','3662940hGMnqQ','Pass\x20--user\x20<id|name>.','string','No\x20tenant\x20member\x20matches\x20\x22','\x20is\x20already\x20a\x20member\x20of\x20role\x20','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','roleType','\x20not\x20found\x20in\x20the\x20user-role\x20list.','userId'];a158_0x4dea=function(){return _0x3350c6;};return a158_0x4dea();}export function assertPermConfigurable(_0x257266){const _0x2daf26=a158_0x5842ea;if(_0x257266['roleType']===_0x2daf26(0x13e)||_0x257266[_0x2daf26(0x133)]===_0x2daf26(0x167))throw CliErrors['validation'](_0x2daf26(0x172)+_0x257266['roleName']+'\x20('+_0x257266[_0x2daf26(0x133)]+').',_0x2daf26(0x132));}export function projectRole(_0x57e767){const _0x263aa4=a158_0x5842ea;return{'id':_0x57e767['id'],'roleName':_0x57e767['roleName'],'roleType':_0x57e767[_0x263aa4(0x133)],'remark':_0x57e767[_0x263aa4(0x155)],'userCount':_0x57e767[_0x263aa4(0x156)],'permitCount':_0x57e767[_0x263aa4(0x168)],'builtin':isBuiltinRole(_0x57e767[_0x263aa4(0x133)])};}export async function resolveRoleRef(_0x30e551,_0x172ab1){const _0x138c02=a158_0x5842ea,_0x8c6fe5=_0x172ab1[_0x138c02(0x158)]();if(!_0x8c6fe5)throw CliErrors[_0x138c02(0x160)]('Missing\x20role\x20reference.','Pass\x20--role\x20<id|name>.');if(/^\d+$/[_0x138c02(0x13c)](_0x8c6fe5))return getRoleById(_0x30e551,Number(_0x8c6fe5));const _0x78583b=await listAllAppRoles(_0x30e551),_0x27701f=_0x78583b[_0x138c02(0x16e)](_0x174294=>_0x174294[_0x138c02(0x14e)]===_0x8c6fe5);if(_0x27701f[_0x138c02(0x150)]===0x0)throw CliErrors[_0x138c02(0x160)]('Role\x20name\x20\x22'+_0x8c6fe5+_0x138c02(0x166)+_0x30e551+'.',_0x138c02(0x15a));if(_0x27701f[_0x138c02(0x150)]>0x1){const _0x3b8d23=_0x27701f[_0x138c02(0x14a)](_0x2b62c7=>_0x2b62c7['id'])['join'](',\x20');throw CliErrors[_0x138c02(0x160)](_0x138c02(0x14d)+_0x8c6fe5+_0x138c02(0x162)+_0x3b8d23+').',_0x138c02(0x170));}return _0x27701f[0x0];}export async function getRoleById(_0x104e28,_0xb00f3b){const _0x2822aa=a158_0x5842ea,_0x3f26b6=await getAppRole(_0xb00f3b);if(!_0x3f26b6)throw CliErrors[_0x2822aa(0x160)]('Role\x20id\x20'+_0xb00f3b+_0x2822aa(0x174)+_0x104e28+'.',_0x2822aa(0x178));return _0x3f26b6;}async function listAllAppRoles(_0xc0348){const _0x218922=a158_0x5842ea,_0x5dfab9=0x64,_0x48867e=[];for(let _0x1daefc=0x1;;_0x1daefc+=0x1){const {items:_0x17816a,paging:_0x166d75}=await listAppRoles(_0xc0348,{'currentPage':_0x1daefc,'pageSize':_0x5dfab9});_0x48867e[_0x218922(0x15d)](..._0x17816a);if(_0x17816a[_0x218922(0x150)]<_0x5dfab9||_0x166d75&&_0x48867e[_0x218922(0x150)]>=_0x166d75[_0x218922(0x143)])return _0x48867e;}}export async function resolveTenantCode(){const _0xa2b9ca=a158_0x5842ea,_0x18beb8=await getSessionUserInfo(),_0x64afc0=_0x18beb8?.[_0xa2b9ca(0x140)]?.[_0xa2b9ca(0x165)]?.[_0xa2b9ca(0x16f)];if(!_0x64afc0)throw CliErrors[_0xa2b9ca(0x153)]('Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.');return _0x64afc0;}function matchMember(_0x412451,_0x305f8b){const _0x2904e3=a158_0x5842ea,_0x5752f2=_0x305f8b['trim']()[_0x2904e3(0x146)]();return(_0x412451['nickname']??'')[_0x2904e3(0x146)]()===_0x5752f2||(_0x412451[_0x2904e3(0x175)]??'')[_0x2904e3(0x146)]()===_0x5752f2;}export async function resolveUserRef(_0xcc38bf){const _0x34eafd=a158_0x5842ea,_0x3eefa7=_0xcc38bf[_0x34eafd(0x158)]();if(!_0x3eefa7)throw CliErrors['validation']('Missing\x20user\x20reference.','Pass\x20--user\x20<id|name>.');const _0x4a4793=await resolveTenantCode(),_0x86dfef=await getTenantMembers(_0x4a4793);if(/^\d+$/[_0x34eafd(0x13c)](_0x3eefa7)){const _0x5bb81f=Number(_0x3eefa7),_0x3c36b6=_0x86dfef[_0x34eafd(0x15c)](_0x3ee1a4=>_0x3ee1a4[_0x34eafd(0x135)]===_0x5bb81f);return{'userId':_0x5bb81f,'username':_0x3c36b6?.['username']??String(_0x5bb81f),'nickname':_0x3c36b6?.[_0x34eafd(0x154)],'matchedBy':'id'};}const _0x2af304=_0x86dfef[_0x34eafd(0x16e)](_0x4392db=>matchMember(_0x4392db,_0x3eefa7));if(_0x2af304[_0x34eafd(0x150)]===0x0)throw CliErrors[_0x34eafd(0x160)](_0x34eafd(0x130)+_0x3eefa7+'\x22.',_0x34eafd(0x16c));if(_0x2af304['length']>0x1){const _0x11a36b=_0x2af304[_0x34eafd(0x14a)](_0xc3d18b=>(_0xc3d18b['nickname']??_0xc3d18b[_0x34eafd(0x175)]??'?')+'('+_0xc3d18b['userId']+')')['join'](',\x20');throw CliErrors[_0x34eafd(0x160)](_0x34eafd(0x13f)+_0x3eefa7+'\x22:\x20'+_0x11a36b+'.',_0x34eafd(0x12c));}const _0x3e33a2=_0x2af304[0x0];return{'userId':_0x3e33a2['userId'],'username':_0x3e33a2[_0x34eafd(0x175)]??String(_0x3e33a2['userId']),'nickname':_0x3e33a2[_0x34eafd(0x154)],'matchedBy':_0x34eafd(0x141)};}export const UPDATE_USER_LIST_PATH=a158_0x5842ea(0x171);function userIdsOf(_0xba0bc7){const _0x27f756=a158_0x5842ea;return(_0xba0bc7?.[_0x27f756(0x157)]??[])['map'](_0x391d0e=>_0x391d0e[_0x27f756(0x135)]);}export function computeRoleUserMutation(_0x8f638a){const _0xef893b=a158_0x5842ea,{operation:_0x32bd89,appCode:_0x1d734b,roleUsers:_0x68acaa,targetRoleId:_0x4c2f79,user:_0x3c21cd}=_0x8f638a,_0x531578=_0x68acaa[_0xef893b(0x15c)](_0xace78d=>_0xace78d['id']===_0x4c2f79);if(!_0x531578)throw CliErrors[_0xef893b(0x160)](_0xef893b(0x13b)+_0x4c2f79+_0xef893b(0x134),'Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');const _0x343872=userIdsOf(_0x531578),_0x1e5288=[];if(_0x8f638a[_0xef893b(0x148)]!==undefined&&_0x8f638a[_0xef893b(0x148)]!==_0x343872['length'])throw CliErrors[_0xef893b(0x160)]('Anti-drift\x20check\x20failed:\x20expected\x20'+_0x8f638a[_0xef893b(0x148)]+_0xef893b(0x13a)+_0x343872[_0xef893b(0x150)]+'.',_0xef893b(0x15b));const _0xf1cbe2=_0x343872['includes'](_0x3c21cd['userId']);let _0x27e1c3=![];const _0x369e3c=[..._0x531578[_0xef893b(0x157)]];if(_0x32bd89===_0xef893b(0x142))_0xf1cbe2?_0x1e5288[_0xef893b(0x15d)]('User\x20'+_0x3c21cd[_0xef893b(0x135)]+_0xef893b(0x131)+_0x531578[_0xef893b(0x14e)]+';\x20no\x20change.'):(_0x369e3c[_0xef893b(0x15d)]({'userId':_0x3c21cd['userId'],'username':_0x3c21cd['username'],..._0x3c21cd[_0xef893b(0x154)]?{'nickname':_0x3c21cd[_0xef893b(0x154)]}:{}}),_0x27e1c3=!![]);else{if(!_0xf1cbe2)_0x1e5288['push'](_0xef893b(0x14b)+_0x3c21cd[_0xef893b(0x135)]+'\x20is\x20not\x20a\x20member\x20of\x20role\x20'+_0x531578[_0xef893b(0x14e)]+';\x20no\x20change.');else{const _0x525982=_0x369e3c[_0xef893b(0x144)](_0x4d1556=>_0x4d1556[_0xef893b(0x135)]===_0x3c21cd[_0xef893b(0x135)]);if(_0x525982>=0x0)_0x369e3c[_0xef893b(0x136)](_0x525982,0x1);_0x27e1c3=!![];}}const _0x21f1a5=_0x68acaa[_0xef893b(0x14a)](_0x2e39b1=>_0x2e39b1['id']===_0x4c2f79?{..._0x2e39b1,'userList':_0x369e3c}:_0x2e39b1),_0x5994c1=_0x369e3c[_0xef893b(0x14a)](_0x25d2ce=>_0x25d2ce[_0xef893b(0x135)]),_0x266bed={'operation':_0x32bd89,'selector':{'appCode':_0x1d734b,'roleId':_0x4c2f79,'roleName':_0x531578['roleName'],'userId':_0x3c21cd[_0xef893b(0x135)]},'before':{'userIds':_0x343872},'after':{'userIds':_0x5994c1},'dryRun':_0x8f638a[_0xef893b(0x149)],'backend':{'method':_0xef893b(0x147),'path':UPDATE_USER_LIST_PATH},'warnings':_0x1e5288};return{'roleList':_0x21f1a5,'mutation':_0x266bed,'changed':_0x27e1c3};}export async function loadRoleUsers(_0x246eec){return listRoleUsers(_0x246eec);}export function readRoleRef(_0x16c7b7){const _0x2061b1=a158_0x5842ea,_0x1089c9=_0x16c7b7[_0x2061b1(0x16a)](_0x2061b1(0x16b))[_0x2061b1(0x158)]();if(!_0x1089c9)throw CliErrors[_0x2061b1(0x139)](_0x2061b1(0x16b),_0x2061b1(0x15f));return _0x1089c9;}export async function prepareUserMutation(_0x1f8704,_0x269fbc,_0x171eba){const _0x2f6ecc=a158_0x5842ea,_0x54a0eb=readRoleRef(_0x1f8704),_0x32af4a=_0x1f8704['str'](_0x2f6ecc(0x140))[_0x2f6ecc(0x158)]();if(!_0x32af4a)throw CliErrors[_0x2f6ecc(0x139)](_0x2f6ecc(0x140),_0x2f6ecc(0x12e));const _0x4c71a3=_0x1f8704[_0x2f6ecc(0x176)](_0x2f6ecc(0x164)),_0x41a458=_0x4c71a3===undefined||_0x4c71a3===null?undefined:Number(_0x4c71a3),_0x39937a=await resolveRoleRef(_0x1f8704[_0x2f6ecc(0x151)],_0x54a0eb),_0x480dd9=await resolveUserRef(_0x32af4a),_0x3ab1ba=await loadRoleUsers(_0x1f8704[_0x2f6ecc(0x151)]);return computeRoleUserMutation({'operation':_0x269fbc,'appCode':_0x1f8704[_0x2f6ecc(0x151)],'roleUsers':_0x3ab1ba,'targetRoleId':_0x39937a['id'],'user':{'userId':_0x480dd9[_0x2f6ecc(0x135)],'username':_0x480dd9[_0x2f6ecc(0x175)],'nickname':_0x480dd9[_0x2f6ecc(0x154)]},'dryRun':_0x171eba,..._0x41a458!==undefined?{'expectUserCount':_0x41a458}:{}});}
1
+ const a159_0x586e31=a159_0x211b;(function(_0x36b2a3,_0x1cbcd4){const _0x4ef080=a159_0x211b,_0x472658=_0x36b2a3();while(!![]){try{const _0x1f1798=-parseInt(_0x4ef080(0x16c))/0x1*(parseInt(_0x4ef080(0x13f))/0x2)+parseInt(_0x4ef080(0x159))/0x3*(parseInt(_0x4ef080(0x175))/0x4)+parseInt(_0x4ef080(0x153))/0x5*(parseInt(_0x4ef080(0x16d))/0x6)+parseInt(_0x4ef080(0x147))/0x7*(-parseInt(_0x4ef080(0x15e))/0x8)+-parseInt(_0x4ef080(0x137))/0x9+-parseInt(_0x4ef080(0x132))/0xa*(parseInt(_0x4ef080(0x173))/0xb)+-parseInt(_0x4ef080(0x165))/0xc*(-parseInt(_0x4ef080(0x146))/0xd);if(_0x1f1798===_0x1cbcd4)break;else _0x472658['push'](_0x472658['shift']());}catch(_0x1e6450){_0x472658['push'](_0x472658['shift']());}}}(a159_0x4d4f,0xb1cc3));import{getAppRole,getTenantMembers,listAppRoles,listRoleUsers}from'../../core/api-client.js';function a159_0x4d4f(){const _0x7ec97c=['appCode',';\x20no\x20change.','Optional\x20role\x20remark/description','808LhwcGe','Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.','Disambiguate\x20with\x20--role\x20<id>.','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.','userId','find','DEV','18836616QNKzIH','User\x20','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','Role\x20name','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','includes','string','401867GUlgmW','66606OuvlEi','\x20not\x20found\x20in\x20the\x20user-role\x20list.','Role\x20id\x20(from\x20`role\x20list`)','Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20','number','dryRun','1936066PNSknl','length','4fqoSlB','Role\x20id\x20','Missing\x20user\x20reference.','Multiple\x20tenant\x20members\x20match\x20\x22','flag','Disambiguate\x20with\x20--user\x20<id>.','userList','No\x20tenant\x20member\x20matches\x20\x22','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','validation','expectUserCount','roleType','role','filter','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','10HyKTQV','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','username','userCount','Anti-drift\x20check\x20failed:\x20expected\x20','7784082nmTsDM','expect-user-count','Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)','nickname','Pass\x20--role\x20<id|name>.','push','trim','test','2EYHXUs','/smartapi/permit/user-role/update-user-list','tenant','splice','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','roleName','toLowerCase','13kFjMPA','75019rzaKzK','USER','permitCount','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','\x20member(s)\x20but\x20role\x20has\x20','remark','map','Cannot\x20','name','str','user','\x20is\x20already\x20a\x20member\x20of\x20role\x20','510pWRErg','\x20built-in\x20role\x20','tenant_code','\x22\x20is\x20ambiguous\x20(ids:\x20','Pass\x20--user\x20<id|name>.','flagMissing','1654281LsPAJF','\x22\x20not\x20found\x20in\x20app\x20'];a159_0x4d4f=function(){return _0x7ec97c;};return a159_0x4d4f();}function a159_0x211b(_0x3ec6ac,_0x5c651e){_0x3ec6ac=_0x3ec6ac-0x125;const _0x4d4ffc=a159_0x4d4f();let _0x211b23=_0x4d4ffc[_0x3ec6ac];return _0x211b23;}import{getSessionUserInfo}from'../../auth/get-session-user.js';import{CliErrors}from'../../errors.js';export const ROLE_ID_FLAG={'name':'id','type':a159_0x586e31(0x171),'required':!![],'description':a159_0x586e31(0x16f)};export const ROLE_REF_FLAG={'name':a159_0x586e31(0x12f),'type':a159_0x586e31(0x16b),'required':!![],'description':a159_0x586e31(0x139)};export const USER_REF_FLAG={'name':'user','type':'string','required':!![],'description':a159_0x586e31(0x133)};export const NAME_FLAG={'name':a159_0x586e31(0x14f),'type':a159_0x586e31(0x16b),'required':!![],'description':a159_0x586e31(0x168)};export const USER_NAME_FLAG={'name':a159_0x586e31(0x14f),'type':a159_0x586e31(0x16b),'required':!![],'description':a159_0x586e31(0x143)};export const REMARK_FLAG={'name':'remark','type':'string','required':![],'description':a159_0x586e31(0x15d)};export const EXPECT_USER_COUNT_FLAG={'name':a159_0x586e31(0x138),'type':a159_0x586e31(0x171),'required':![],'description':'Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs'};export const BUILTIN_ROLE_TYPES=['ADMIN',a159_0x586e31(0x164),a159_0x586e31(0x148)];export function isBuiltinRole(_0xd6a555){const _0x40ef89=a159_0x586e31;return BUILTIN_ROLE_TYPES[_0x40ef89(0x16a)](_0xd6a555);}export function assertCustomRole(_0x3b1a3c,_0x331f0b){const _0x54b6a2=a159_0x586e31;if(_0x3b1a3c[_0x54b6a2(0x12e)]!=='CUSTOM')throw CliErrors['validation'](_0x54b6a2(0x14e)+_0x331f0b+_0x54b6a2(0x154)+_0x3b1a3c[_0x54b6a2(0x144)]+'\x20('+_0x3b1a3c[_0x54b6a2(0x12e)]+').',_0x54b6a2(0x169));}export function assertPermConfigurable(_0x59bb2d){const _0x35e77a=a159_0x586e31;if(_0x59bb2d[_0x35e77a(0x12e)]===_0x35e77a(0x164)||_0x59bb2d[_0x35e77a(0x12e)]==='ADMIN')throw CliErrors[_0x35e77a(0x12c)](_0x35e77a(0x170)+_0x59bb2d[_0x35e77a(0x144)]+'\x20('+_0x59bb2d['roleType']+').',_0x35e77a(0x167));}export function projectRole(_0x29e3d2){const _0x311e02=a159_0x586e31;return{'id':_0x29e3d2['id'],'roleName':_0x29e3d2[_0x311e02(0x144)],'roleType':_0x29e3d2[_0x311e02(0x12e)],'remark':_0x29e3d2[_0x311e02(0x14c)],'userCount':_0x29e3d2[_0x311e02(0x135)],'permitCount':_0x29e3d2[_0x311e02(0x149)],'builtin':isBuiltinRole(_0x29e3d2['roleType'])};}export async function resolveRoleRef(_0x1f9be1,_0x143ed2){const _0x24cf14=a159_0x586e31,_0x339f9d=_0x143ed2[_0x24cf14(0x13d)]();if(!_0x339f9d)throw CliErrors[_0x24cf14(0x12c)]('Missing\x20role\x20reference.',_0x24cf14(0x13b));if(/^\d+$/[_0x24cf14(0x13e)](_0x339f9d))return getRoleById(_0x1f9be1,Number(_0x339f9d));const _0x549736=await listAllAppRoles(_0x1f9be1),_0x34ca29=_0x549736[_0x24cf14(0x130)](_0x54704e=>_0x54704e[_0x24cf14(0x144)]===_0x339f9d);if(_0x34ca29['length']===0x0)throw CliErrors[_0x24cf14(0x12c)]('Role\x20name\x20\x22'+_0x339f9d+_0x24cf14(0x15a)+_0x1f9be1+'.',_0x24cf14(0x12b));if(_0x34ca29[_0x24cf14(0x174)]>0x1){const _0x969e2a=_0x34ca29[_0x24cf14(0x14d)](_0x18fc8e=>_0x18fc8e['id'])['join'](',\x20');throw CliErrors[_0x24cf14(0x12c)]('Role\x20name\x20\x22'+_0x339f9d+_0x24cf14(0x156)+_0x969e2a+').',_0x24cf14(0x160));}return _0x34ca29[0x0];}export async function getRoleById(_0x3a59e5,_0x240fa0){const _0x4e1d07=a159_0x586e31,_0x50323b=await getAppRole(_0x240fa0);if(!_0x50323b)throw CliErrors[_0x4e1d07(0x12c)](_0x4e1d07(0x176)+_0x240fa0+'\x20not\x20found\x20in\x20app\x20'+_0x3a59e5+'.',_0x4e1d07(0x14a));return _0x50323b;}async function listAllAppRoles(_0x5b95a5){const _0x222a64=a159_0x586e31,_0x49ed6a=0x64,_0x3ca275=[];for(let _0x44272b=0x1;;_0x44272b+=0x1){const {items:_0x5047a4,paging:_0x3abbdb}=await listAppRoles(_0x5b95a5,{'currentPage':_0x44272b,'pageSize':_0x49ed6a});_0x3ca275['push'](..._0x5047a4);if(_0x5047a4[_0x222a64(0x174)]<_0x49ed6a||_0x3abbdb&&_0x3ca275[_0x222a64(0x174)]>=_0x3abbdb['totalCount'])return _0x3ca275;}}export async function resolveTenantCode(){const _0xc278c5=a159_0x586e31,_0x13fa28=await getSessionUserInfo(),_0x2335e5=_0x13fa28?.['user']?.[_0xc278c5(0x141)]?.[_0xc278c5(0x155)];if(!_0x2335e5)throw CliErrors['authRequired'](_0xc278c5(0x15f));return _0x2335e5;}function matchMember(_0x5e9ed9,_0x19d861){const _0x590a2d=a159_0x586e31,_0x46359c=_0x19d861[_0x590a2d(0x13d)]()[_0x590a2d(0x145)]();return(_0x5e9ed9[_0x590a2d(0x13a)]??'')['toLowerCase']()===_0x46359c||(_0x5e9ed9['username']??'')[_0x590a2d(0x145)]()===_0x46359c;}export async function resolveUserRef(_0x3d929a){const _0x32dc77=a159_0x586e31,_0x5efa65=_0x3d929a['trim']();if(!_0x5efa65)throw CliErrors['validation'](_0x32dc77(0x125),_0x32dc77(0x157));const _0x4378e9=await resolveTenantCode(),_0x403e66=await getTenantMembers(_0x4378e9);if(/^\d+$/['test'](_0x5efa65)){const _0x4660e0=Number(_0x5efa65),_0x133a19=_0x403e66[_0x32dc77(0x163)](_0x5e9f61=>_0x5e9f61['userId']===_0x4660e0);return{'userId':_0x4660e0,'username':_0x133a19?.[_0x32dc77(0x134)]??String(_0x4660e0),'nickname':_0x133a19?.[_0x32dc77(0x13a)],'matchedBy':'id'};}const _0x42712d=_0x403e66['filter'](_0x5a4519=>matchMember(_0x5a4519,_0x5efa65));if(_0x42712d[_0x32dc77(0x174)]===0x0)throw CliErrors[_0x32dc77(0x12c)](_0x32dc77(0x12a)+_0x5efa65+'\x22.',_0x32dc77(0x161));if(_0x42712d['length']>0x1){const _0x4a35e9=_0x42712d[_0x32dc77(0x14d)](_0x244bc2=>(_0x244bc2['nickname']??_0x244bc2['username']??'?')+'('+_0x244bc2[_0x32dc77(0x162)]+')')['join'](',\x20');throw CliErrors[_0x32dc77(0x12c)](_0x32dc77(0x126)+_0x5efa65+'\x22:\x20'+_0x4a35e9+'.',_0x32dc77(0x128));}const _0x585132=_0x42712d[0x0];return{'userId':_0x585132[_0x32dc77(0x162)],'username':_0x585132[_0x32dc77(0x134)]??String(_0x585132[_0x32dc77(0x162)]),'nickname':_0x585132[_0x32dc77(0x13a)],'matchedBy':_0x32dc77(0x14f)};}export const UPDATE_USER_LIST_PATH=a159_0x586e31(0x140);function userIdsOf(_0x54ecee){const _0x5603d7=a159_0x586e31;return(_0x54ecee?.['userList']??[])['map'](_0x14283c=>_0x14283c[_0x5603d7(0x162)]);}export function computeRoleUserMutation(_0x5c7eaf){const _0x24c540=a159_0x586e31,{operation:_0x40cfe3,appCode:_0x272af6,roleUsers:_0x8cbcb4,targetRoleId:_0x36669d,user:_0x1877a9}=_0x5c7eaf,_0x1e5254=_0x8cbcb4[_0x24c540(0x163)](_0x571c3f=>_0x571c3f['id']===_0x36669d);if(!_0x1e5254)throw CliErrors[_0x24c540(0x12c)](_0x24c540(0x176)+_0x36669d+_0x24c540(0x16e),'Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');const _0x43d859=userIdsOf(_0x1e5254),_0x2eb6bb=[];if(_0x5c7eaf[_0x24c540(0x12d)]!==undefined&&_0x5c7eaf[_0x24c540(0x12d)]!==_0x43d859[_0x24c540(0x174)])throw CliErrors[_0x24c540(0x12c)](_0x24c540(0x136)+_0x5c7eaf['expectUserCount']+_0x24c540(0x14b)+_0x43d859[_0x24c540(0x174)]+'.',_0x24c540(0x131));const _0x5c39bd=_0x43d859['includes'](_0x1877a9[_0x24c540(0x162)]);let _0x462d37=![];const _0x4440a6=[..._0x1e5254[_0x24c540(0x129)]];if(_0x40cfe3==='user-add')_0x5c39bd?_0x2eb6bb[_0x24c540(0x13c)](_0x24c540(0x166)+_0x1877a9['userId']+_0x24c540(0x152)+_0x1e5254['roleName']+_0x24c540(0x15c)):(_0x4440a6[_0x24c540(0x13c)]({'userId':_0x1877a9[_0x24c540(0x162)],'username':_0x1877a9[_0x24c540(0x134)],..._0x1877a9[_0x24c540(0x13a)]?{'nickname':_0x1877a9[_0x24c540(0x13a)]}:{}}),_0x462d37=!![]);else{if(!_0x5c39bd)_0x2eb6bb[_0x24c540(0x13c)](_0x24c540(0x166)+_0x1877a9[_0x24c540(0x162)]+'\x20is\x20not\x20a\x20member\x20of\x20role\x20'+_0x1e5254[_0x24c540(0x144)]+';\x20no\x20change.');else{const _0x1d7b9e=_0x4440a6['findIndex'](_0x2f2fd9=>_0x2f2fd9['userId']===_0x1877a9['userId']);if(_0x1d7b9e>=0x0)_0x4440a6[_0x24c540(0x142)](_0x1d7b9e,0x1);_0x462d37=!![];}}const _0x365258=_0x8cbcb4[_0x24c540(0x14d)](_0x4a8607=>_0x4a8607['id']===_0x36669d?{..._0x4a8607,'userList':_0x4440a6}:_0x4a8607),_0x46d794=_0x4440a6[_0x24c540(0x14d)](_0x129c6b=>_0x129c6b[_0x24c540(0x162)]),_0x21181f={'operation':_0x40cfe3,'selector':{'appCode':_0x272af6,'roleId':_0x36669d,'roleName':_0x1e5254[_0x24c540(0x144)],'userId':_0x1877a9[_0x24c540(0x162)]},'before':{'userIds':_0x43d859},'after':{'userIds':_0x46d794},'dryRun':_0x5c7eaf[_0x24c540(0x172)],'backend':{'method':'POST','path':UPDATE_USER_LIST_PATH},'warnings':_0x2eb6bb};return{'roleList':_0x365258,'mutation':_0x21181f,'changed':_0x462d37};}export async function loadRoleUsers(_0x8ffac8){return listRoleUsers(_0x8ffac8);}export function readRoleRef(_0x4923ff){const _0x4c2f2e=a159_0x586e31,_0xafc39=_0x4923ff['str']('role')[_0x4c2f2e(0x13d)]();if(!_0xafc39)throw CliErrors[_0x4c2f2e(0x158)]('role',_0x4c2f2e(0x13b));return _0xafc39;}export async function prepareUserMutation(_0x2ffc85,_0x517240,_0x5856f0){const _0x2d42e7=a159_0x586e31,_0x1925c4=readRoleRef(_0x2ffc85),_0x3cf92d=_0x2ffc85[_0x2d42e7(0x150)](_0x2d42e7(0x151))[_0x2d42e7(0x13d)]();if(!_0x3cf92d)throw CliErrors[_0x2d42e7(0x158)](_0x2d42e7(0x151),_0x2d42e7(0x157));const _0x35c592=_0x2ffc85[_0x2d42e7(0x127)]('expect-user-count'),_0x309dcd=_0x35c592===undefined||_0x35c592===null?undefined:Number(_0x35c592),_0x1b00b1=await resolveRoleRef(_0x2ffc85[_0x2d42e7(0x15b)],_0x1925c4),_0x3db354=await resolveUserRef(_0x3cf92d),_0x303071=await loadRoleUsers(_0x2ffc85[_0x2d42e7(0x15b)]);return computeRoleUserMutation({'operation':_0x517240,'appCode':_0x2ffc85[_0x2d42e7(0x15b)],'roleUsers':_0x303071,'targetRoleId':_0x1b00b1['id'],'user':{'userId':_0x3db354[_0x2d42e7(0x162)],'username':_0x3db354[_0x2d42e7(0x134)],'nickname':_0x3db354[_0x2d42e7(0x13a)]},'dryRun':_0x5856f0,..._0x309dcd!==undefined?{'expectUserCount':_0x309dcd}:{}});}
@@ -1 +1 @@
1
- const a159_0xee5aad=a159_0x14f2;(function(_0xb21753,_0x25bfbf){const _0x48d708=a159_0x14f2,_0x36afa5=_0xb21753();while(!![]){try{const _0x243d6a=-parseInt(_0x48d708(0x11b))/0x1*(-parseInt(_0x48d708(0x122))/0x2)+parseInt(_0x48d708(0x120))/0x3*(-parseInt(_0x48d708(0x125))/0x4)+parseInt(_0x48d708(0x12a))/0x5+-parseInt(_0x48d708(0x12b))/0x6+parseInt(_0x48d708(0x118))/0x7+-parseInt(_0x48d708(0x11a))/0x8*(parseInt(_0x48d708(0x111))/0x9)+-parseInt(_0x48d708(0x127))/0xa;if(_0x243d6a===_0x25bfbf)break;else _0x36afa5['push'](_0x36afa5['shift']());}catch(_0x5a5631){_0x36afa5['push'](_0x36afa5['shift']());}}}(a159_0x5aaf,0xc9e06));import{updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a159_0x14f2(_0x2adb9b,_0x2e79a4){_0x2adb9b=_0x2adb9b-0x111;const _0x5aaf71=a159_0x5aaf();let _0x14f232=_0x5aaf71[_0x2adb9b];return _0x14f232;}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=a159_0xee5aad(0x11f);function readPatch(_0x20554b){const _0x41b276=a159_0xee5aad,_0x5c4e0a=_0x20554b[_0x41b276(0x121)]('name'),_0x1fe6a9=_0x20554b[_0x41b276(0x121)](_0x41b276(0x11e)),_0x2b1c93={};if(_0x5c4e0a!==undefined&&_0x5c4e0a!==null){const _0x391812=String(_0x5c4e0a)['trim']();if(!_0x391812)throw CliErrors[_0x41b276(0x117)](_0x41b276(0x112));if(_0x391812['length']>0x40)throw CliErrors[_0x41b276(0x117)]('Role\x20name\x20cannot\x20exceed\x2064\x20characters.');_0x2b1c93['roleName']=_0x391812;}_0x1fe6a9!==undefined&&_0x1fe6a9!==null&&(_0x2b1c93[_0x41b276(0x11e)]=String(_0x1fe6a9));if(_0x2b1c93['roleName']===undefined&&_0x2b1c93[_0x41b276(0x11e)]===undefined)throw CliErrors[_0x41b276(0x117)]('Nothing\x20to\x20update.',_0x41b276(0x114));return _0x2b1c93;}export const roleUpdate={'service':'role','command':'update','description':a159_0xee5aad(0x128),'risk':a159_0xee5aad(0x115),'flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a159_0xee5aad(0x11d),'type':a159_0xee5aad(0x11c),'required':![],'description':a159_0xee5aad(0x126)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x13cb65){readPatch(_0x13cb65);},async 'dryRun'(_0x25d90a){const _0x2ebf36=a159_0xee5aad,_0x3b96a9=_0x25d90a[_0x2ebf36(0x129)]('id'),_0x4fe657=readPatch(_0x25d90a),_0x52994e=await getRoleById(_0x25d90a['appCode'],_0x3b96a9);return assertCustomRole(_0x52994e,_0x2ebf36(0x116)),asDryRunResult({'operation':_0x2ebf36(0x116),'selector':{'appCode':_0x25d90a[_0x2ebf36(0x113)],'roleId':_0x3b96a9,'roleName':_0x52994e[_0x2ebf36(0x123)]},'before':projectRole(_0x52994e),'after':projectRole({..._0x52994e,..._0x4fe657[_0x2ebf36(0x123)]!==undefined?{'roleName':_0x4fe657[_0x2ebf36(0x123)]}:{},..._0x4fe657[_0x2ebf36(0x11e)]!==undefined?{'remark':_0x4fe657['remark']}:{}}),'dryRun':!![],'backend':{'method':_0x2ebf36(0x124),'path':UPDATE_PATH},'warnings':[]},{'method':_0x2ebf36(0x124),'url':UPDATE_PATH});},async 'execute'(_0x36374b){const _0x33b779=a159_0xee5aad,_0x20fe7b=_0x36374b[_0x33b779(0x129)]('id'),_0x5495d7=readPatch(_0x36374b),_0x4221dd=await getRoleById(_0x36374b['appCode'],_0x20fe7b);assertCustomRole(_0x4221dd,_0x33b779(0x116)),await updateAppRole({'id':_0x20fe7b,'appCode':_0x36374b[_0x33b779(0x113)],..._0x5495d7[_0x33b779(0x123)]!==undefined?{'roleName':_0x5495d7[_0x33b779(0x123)]}:{},..._0x5495d7[_0x33b779(0x11e)]!==undefined?{'remark':_0x5495d7[_0x33b779(0x11e)]}:{}});const _0x5291ca=await getRoleById(_0x36374b[_0x33b779(0x113)],_0x20fe7b);return{'ok':!![],'data':{'operation':'update','selector':{'appCode':_0x36374b[_0x33b779(0x113)],'roleId':_0x20fe7b,'roleName':_0x5291ca[_0x33b779(0x123)]},'before':projectRole(_0x4221dd),'after':projectRole(_0x5291ca),'dryRun':![],'backend':{'method':_0x33b779(0x124),'path':UPDATE_PATH},'warnings':[]},'message':'Updated\x20role\x20'+_0x5291ca[_0x33b779(0x123)]+_0x33b779(0x119)+_0x20fe7b+')'};}};function a159_0x5aaf(){const _0x541477=['2643085KVWtyT','768234TMhNwh','72NDFZjs','--name\x20cannot\x20be\x20empty.','appCode','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','write','update','validation','10989475trEYWG','\x20(id=','187640BnJJIp','6253mjQCMP','string','name','remark','/smartapi/permit/role/update','3oxPzbm','flag','448GIRQNd','roleName','POST','473644iQkvOa','New\x20role\x20name','22382380gnSNXm','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','num'];a159_0x5aaf=function(){return _0x541477;};return a159_0x5aaf();}
1
+ const a160_0x25319e=a160_0x4868;function a160_0x34ee(){const _0x42c58=['4184889YKNIyW','5046330oAJSqC','New\x20role\x20name','update','remark','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','string','3448GeLZTQ','Updated\x20role\x20','length','1915DZPydf','1GFxVmu','num','flag','roleName','trim','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','15968260BrLFUr','\x20(id=','validation','6SFltlm','9jZSHXm','appCode','role','POST','1506911MwXFQR','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','10692336yFyCSj','2114102VHEnkG','--name\x20cannot\x20be\x20empty.'];a160_0x34ee=function(){return _0x42c58;};return a160_0x34ee();}(function(_0x3fd2ef,_0x5a71da){const _0x3058b8=a160_0x4868,_0x2b9d64=_0x3fd2ef();while(!![]){try{const _0x32456c=parseInt(_0x3058b8(0x1a7))/0x1*(parseInt(_0x3058b8(0x19a))/0x2)+-parseInt(_0x3058b8(0x19c))/0x3+-parseInt(_0x3058b8(0x1a3))/0x4*(-parseInt(_0x3058b8(0x1a6))/0x5)+parseInt(_0x3058b8(0x1b0))/0x6*(parseInt(_0x3058b8(0x197))/0x7)+-parseInt(_0x3058b8(0x199))/0x8+parseInt(_0x3058b8(0x1b1))/0x9*(parseInt(_0x3058b8(0x19d))/0xa)+parseInt(_0x3058b8(0x1ad))/0xb;if(_0x32456c===_0x5a71da)break;else _0x2b9d64['push'](_0x2b9d64['shift']());}catch(_0x2a5e11){_0x2b9d64['push'](_0x2b9d64['shift']());}}}(a160_0x34ee,0xc9f7a));function a160_0x4868(_0x474a8d,_0x469bbd){_0x474a8d=_0x474a8d-0x195;const _0x34ee68=a160_0x34ee();let _0x486871=_0x34ee68[_0x474a8d];return _0x486871;}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='/smartapi/permit/role/update';function readPatch(_0x27d5c4){const _0x273105=a160_0x4868,_0x5ae0df=_0x27d5c4[_0x273105(0x1a9)]('name'),_0x4efdb3=_0x27d5c4['flag'](_0x273105(0x1a0)),_0x5a80c8={};if(_0x5ae0df!==undefined&&_0x5ae0df!==null){const _0x29e26f=String(_0x5ae0df)[_0x273105(0x1ab)]();if(!_0x29e26f)throw CliErrors['validation'](_0x273105(0x19b));if(_0x29e26f[_0x273105(0x1a5)]>0x40)throw CliErrors[_0x273105(0x1af)](_0x273105(0x1a1));_0x5a80c8[_0x273105(0x1aa)]=_0x29e26f;}_0x4efdb3!==undefined&&_0x4efdb3!==null&&(_0x5a80c8[_0x273105(0x1a0)]=String(_0x4efdb3));if(_0x5a80c8['roleName']===undefined&&_0x5a80c8['remark']===undefined)throw CliErrors['validation']('Nothing\x20to\x20update.',_0x273105(0x198));return _0x5a80c8;}export const roleUpdate={'service':a160_0x25319e(0x195),'command':a160_0x25319e(0x19f),'description':a160_0x25319e(0x1ac),'risk':'write','flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':'name','type':a160_0x25319e(0x1a2),'required':![],'description':a160_0x25319e(0x19e)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x42d94c){readPatch(_0x42d94c);},async 'dryRun'(_0x4779f3){const _0x2163fd=a160_0x25319e,_0x3e744f=_0x4779f3[_0x2163fd(0x1a8)]('id'),_0x2798d5=readPatch(_0x4779f3),_0xf2522b=await getRoleById(_0x4779f3[_0x2163fd(0x1b2)],_0x3e744f);return assertCustomRole(_0xf2522b,_0x2163fd(0x19f)),asDryRunResult({'operation':_0x2163fd(0x19f),'selector':{'appCode':_0x4779f3[_0x2163fd(0x1b2)],'roleId':_0x3e744f,'roleName':_0xf2522b['roleName']},'before':projectRole(_0xf2522b),'after':projectRole({..._0xf2522b,..._0x2798d5[_0x2163fd(0x1aa)]!==undefined?{'roleName':_0x2798d5[_0x2163fd(0x1aa)]}:{},..._0x2798d5['remark']!==undefined?{'remark':_0x2798d5[_0x2163fd(0x1a0)]}:{}}),'dryRun':!![],'backend':{'method':_0x2163fd(0x196),'path':UPDATE_PATH},'warnings':[]},{'method':_0x2163fd(0x196),'url':UPDATE_PATH});},async 'execute'(_0x5891db){const _0x2fd733=a160_0x25319e,_0x36f586=_0x5891db[_0x2fd733(0x1a8)]('id'),_0x41bb88=readPatch(_0x5891db),_0x326722=await getRoleById(_0x5891db[_0x2fd733(0x1b2)],_0x36f586);assertCustomRole(_0x326722,_0x2fd733(0x19f)),await updateAppRole({'id':_0x36f586,'appCode':_0x5891db[_0x2fd733(0x1b2)],..._0x41bb88[_0x2fd733(0x1aa)]!==undefined?{'roleName':_0x41bb88[_0x2fd733(0x1aa)]}:{},..._0x41bb88['remark']!==undefined?{'remark':_0x41bb88[_0x2fd733(0x1a0)]}:{}});const _0xc0f9a9=await getRoleById(_0x5891db[_0x2fd733(0x1b2)],_0x36f586);return{'ok':!![],'data':{'operation':'update','selector':{'appCode':_0x5891db[_0x2fd733(0x1b2)],'roleId':_0x36f586,'roleName':_0xc0f9a9[_0x2fd733(0x1aa)]},'before':projectRole(_0x326722),'after':projectRole(_0xc0f9a9),'dryRun':![],'backend':{'method':_0x2fd733(0x196),'path':UPDATE_PATH},'warnings':[]},'message':_0x2fd733(0x1a4)+_0xc0f9a9[_0x2fd733(0x1aa)]+_0x2fd733(0x1ae)+_0x36f586+')'};}};
@@ -1 +1 @@
1
- const a160_0x39eaac=a160_0x2cda;(function(_0x1c9cc5,_0x2cb4d5){const _0x28b633=a160_0x2cda,_0x3773b1=_0x1c9cc5();while(!![]){try{const _0x42f961=-parseInt(_0x28b633(0xf6))/0x1+-parseInt(_0x28b633(0xf2))/0x2+-parseInt(_0x28b633(0xfb))/0x3*(-parseInt(_0x28b633(0xf8))/0x4)+-parseInt(_0x28b633(0xf5))/0x5+-parseInt(_0x28b633(0xf1))/0x6*(parseInt(_0x28b633(0xee))/0x7)+parseInt(_0x28b633(0xeb))/0x8+parseInt(_0x28b633(0xf4))/0x9;if(_0x42f961===_0x2cb4d5)break;else _0x3773b1['push'](_0x3773b1['shift']());}catch(_0x4afdc7){_0x3773b1['push'](_0x3773b1['shift']());}}}(a160_0x4b3e,0x5d2aa));function a160_0x2cda(_0x3fe608,_0x20ca6b){_0x3fe608=_0x3fe608-0xea;const _0x4b3ec7=a160_0x4b3e();let _0x2cda67=_0x4b3ec7[_0x3fe608];return _0x2cda67;}import{updateRoleUsers}from'../../core/api-client.js';function a160_0x4b3e(){const _0x3bd862=['485856PdqRDq','userId','role','1106InAiXH','user-add','No\x20change:\x20user\x20','7224xogUxL','1488746NKsBSq','roleName','8141067kFcIaQ','243540dYPbOx','96002tHVlFU','POST','60NgGJaf','high-risk-write','Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','99126gfWnQR','selector','\x20already\x20in\x20role\x20'];a160_0x4b3e=function(){return _0x3bd862;};return a160_0x4b3e();}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':a160_0x39eaac(0xed),'command':a160_0x39eaac(0xef),'description':a160_0x39eaac(0xfa),'risk':a160_0x39eaac(0xf9),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x1f7482){const _0x133489=a160_0x39eaac,{mutation:_0x398509}=await prepareUserMutation(_0x1f7482,_0x133489(0xef),!![]);return asDryRunResult(_0x398509,{'method':_0x133489(0xf7),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x2d0a6f){const _0x2bd15a=a160_0x39eaac,{roleList:_0x10b81b,mutation:_0x1412f6,changed:_0x5e7d66}=await prepareUserMutation(_0x2d0a6f,_0x2bd15a(0xef),![]);return _0x5e7d66&&await updateRoleUsers(_0x2d0a6f['appCode'],_0x10b81b),{'ok':!![],'data':_0x1412f6,'message':_0x5e7d66?'Added\x20user\x20'+_0x1412f6['selector']['userId']+'\x20to\x20role\x20'+_0x1412f6['selector'][_0x2bd15a(0xf3)]:_0x2bd15a(0xf0)+_0x1412f6[_0x2bd15a(0xfc)][_0x2bd15a(0xec)]+_0x2bd15a(0xea)+_0x1412f6[_0x2bd15a(0xfc)][_0x2bd15a(0xf3)]};}};
1
+ const a161_0x3ce22e=a161_0x4def;(function(_0x17bcf5,_0x476b1d){const _0x5e7cd6=a161_0x4def,_0x4f7286=_0x17bcf5();while(!![]){try{const _0x3230bc=parseInt(_0x5e7cd6(0x6b))/0x1*(parseInt(_0x5e7cd6(0x76))/0x2)+-parseInt(_0x5e7cd6(0x77))/0x3+parseInt(_0x5e7cd6(0x7c))/0x4+parseInt(_0x5e7cd6(0x73))/0x5*(-parseInt(_0x5e7cd6(0x72))/0x6)+-parseInt(_0x5e7cd6(0x70))/0x7+-parseInt(_0x5e7cd6(0x6c))/0x8+parseInt(_0x5e7cd6(0x71))/0x9*(parseInt(_0x5e7cd6(0x74))/0xa);if(_0x3230bc===_0x476b1d)break;else _0x4f7286['push'](_0x4f7286['shift']());}catch(_0x27eb9a){_0x4f7286['push'](_0x4f7286['shift']());}}}(a161_0x4935,0x1b500));import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a161_0x4935(){const _0x2d8b24=['appCode','No\x20change:\x20user\x20','role','726124AHPXlF','873ZFGSDi','68814yMCSuR','25EDXPCp','11830CkMxpI','selector','386CxpHzg','197139BEOOja','roleName','Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','user-add','Added\x20user\x20','571112AhzStz','userId','POST','539yiFcBc','183152QNGXwd'];a161_0x4935=function(){return _0x2d8b24;};return a161_0x4935();}import{asDryRunResult}from'../../commands/common/dry-run.js';function a161_0x4def(_0x13ed86,_0x33783c){_0x13ed86=_0x13ed86-0x69;const _0x493558=a161_0x4935();let _0x4def00=_0x493558[_0x13ed86];return _0x4def00;}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':a161_0x3ce22e(0x6f),'command':'user-add','description':a161_0x3ce22e(0x79),'risk':'high-risk-write','flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x260a3f){const _0x11cd4c=a161_0x3ce22e,{mutation:_0x167b3e}=await prepareUserMutation(_0x260a3f,_0x11cd4c(0x7a),!![]);return asDryRunResult(_0x167b3e,{'method':_0x11cd4c(0x6a),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x4c4073){const _0x4ad3b3=a161_0x3ce22e,{roleList:_0x4aab99,mutation:_0x4213cf,changed:_0xad274b}=await prepareUserMutation(_0x4c4073,_0x4ad3b3(0x7a),![]);return _0xad274b&&await updateRoleUsers(_0x4c4073[_0x4ad3b3(0x6d)],_0x4aab99),{'ok':!![],'data':_0x4213cf,'message':_0xad274b?_0x4ad3b3(0x7b)+_0x4213cf['selector'][_0x4ad3b3(0x69)]+'\x20to\x20role\x20'+_0x4213cf[_0x4ad3b3(0x75)][_0x4ad3b3(0x78)]:_0x4ad3b3(0x6e)+_0x4213cf[_0x4ad3b3(0x75)][_0x4ad3b3(0x69)]+'\x20already\x20in\x20role\x20'+_0x4213cf[_0x4ad3b3(0x75)]['roleName']};}};
@@ -1 +1 @@
1
- const a161_0xecc0fc=a161_0x4adf;(function(_0x1c24cc,_0x8cdfcb){const _0x20feba=a161_0x4adf,_0x119f7f=_0x1c24cc();while(!![]){try{const _0x2b2379=-parseInt(_0x20feba(0xce))/0x1+-parseInt(_0x20feba(0xbf))/0x2*(-parseInt(_0x20feba(0xcf))/0x3)+parseInt(_0x20feba(0xc7))/0x4+parseInt(_0x20feba(0xbe))/0x5*(parseInt(_0x20feba(0xc5))/0x6)+-parseInt(_0x20feba(0xbc))/0x7+parseInt(_0x20feba(0xc3))/0x8*(-parseInt(_0x20feba(0xcb))/0x9)+-parseInt(_0x20feba(0xcd))/0xa;if(_0x2b2379===_0x8cdfcb)break;else _0x119f7f['push'](_0x119f7f['shift']());}catch(_0x4c413b){_0x119f7f['push'](_0x119f7f['shift']());}}}(a161_0x475a,0x88929));import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a161_0x4adf(_0x2b8da3,_0x38ad18){_0x2b8da3=_0x2b8da3-0xba;const _0x475aca=a161_0x475a();let _0x4adf0a=_0x475aca[_0x2b8da3];return _0x4adf0a;}import{EXPECT_USER_COUNT_FLAG,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';function a161_0x475a(){const _0x58f1e9=['1149lzSmgA','POST','No\x20change:\x20user\x20','Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','1258152ViAFAz','high-risk-write','2275265PhxQsR','4842FKVJXB','role','appCode','Removed\x20user\x20','31152xIcAvD','selector','6NAxafZ','user-remove','4196320ClpUIS','\x20not\x20in\x20role\x20','roleName','userId','1962xyJzPh','\x20from\x20role\x20','7488690lUQFJV','94478uGABaJ'];a161_0x475a=function(){return _0x58f1e9;};return a161_0x475a();}export const roleUserRemove={'service':a161_0xecc0fc(0xc0),'command':a161_0xecc0fc(0xc6),'description':a161_0xecc0fc(0xbb),'risk':a161_0xecc0fc(0xbd),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x762282){const _0x25d339=a161_0xecc0fc,{mutation:_0x3df757}=await prepareUserMutation(_0x762282,_0x25d339(0xc6),!![]);return asDryRunResult(_0x3df757,{'method':_0x25d339(0xd0),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x1dcc30){const _0x4034e0=a161_0xecc0fc,{roleList:_0x2eb26c,mutation:_0x4fec7f,changed:_0x3eec4e}=await prepareUserMutation(_0x1dcc30,_0x4034e0(0xc6),![]);return _0x3eec4e&&await updateRoleUsers(_0x1dcc30[_0x4034e0(0xc1)],_0x2eb26c),{'ok':!![],'data':_0x4fec7f,'message':_0x3eec4e?_0x4034e0(0xc2)+_0x4fec7f[_0x4034e0(0xc4)]['userId']+_0x4034e0(0xcc)+_0x4fec7f[_0x4034e0(0xc4)][_0x4034e0(0xc9)]:_0x4034e0(0xba)+_0x4fec7f['selector'][_0x4034e0(0xca)]+_0x4034e0(0xc8)+_0x4fec7f['selector'][_0x4034e0(0xc9)]};}};
1
+ const a162_0x37024a=a162_0x2022;function a162_0x2022(_0x1f5600,_0x292a9f){_0x1f5600=_0x1f5600-0x187;const _0x128f1c=a162_0x128f();let _0x2022dd=_0x128f1c[_0x1f5600];return _0x2022dd;}(function(_0x2fc050,_0x1122b6){const _0x401557=a162_0x2022,_0x557bb3=_0x2fc050();while(!![]){try{const _0x376bc4=-parseInt(_0x401557(0x187))/0x1*(-parseInt(_0x401557(0x198))/0x2)+-parseInt(_0x401557(0x19b))/0x3*(-parseInt(_0x401557(0x190))/0x4)+parseInt(_0x401557(0x195))/0x5+parseInt(_0x401557(0x18d))/0x6+-parseInt(_0x401557(0x18f))/0x7+-parseInt(_0x401557(0x194))/0x8+-parseInt(_0x401557(0x18e))/0x9;if(_0x376bc4===_0x1122b6)break;else _0x557bb3['push'](_0x557bb3['shift']());}catch(_0x2f5bcf){_0x557bb3['push'](_0x557bb3['shift']());}}}(a162_0x128f,0xc5043));import{updateRoleUsers}from'../../core/api-client.js';function a162_0x128f(){const _0x216f06=['Removed\x20user\x20','userId','Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','2962722IQsAQC','730854WfjYFJ','11223275cPkfnR','9308Vydayo','user-remove','selector','POST','11274528HZXTLT','5737555ynpNqx','\x20from\x20role\x20','roleName','2978582VnKXcr','No\x20change:\x20user\x20','role','993hRPSfP','1jUZBHq','\x20not\x20in\x20role\x20','appCode'];a162_0x128f=function(){return _0x216f06;};return a162_0x128f();}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':a162_0x37024a(0x19a),'command':a162_0x37024a(0x191),'description':a162_0x37024a(0x18c),'risk':'high-risk-write','flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x1bb58b){const _0x3efa45=a162_0x37024a,{mutation:_0x356fe8}=await prepareUserMutation(_0x1bb58b,_0x3efa45(0x191),!![]);return asDryRunResult(_0x356fe8,{'method':_0x3efa45(0x193),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x3d153e){const _0x2a9f41=a162_0x37024a,{roleList:_0x54efba,mutation:_0x4a364e,changed:_0x23b5f1}=await prepareUserMutation(_0x3d153e,_0x2a9f41(0x191),![]);return _0x23b5f1&&await updateRoleUsers(_0x3d153e[_0x2a9f41(0x189)],_0x54efba),{'ok':!![],'data':_0x4a364e,'message':_0x23b5f1?_0x2a9f41(0x18a)+_0x4a364e[_0x2a9f41(0x192)][_0x2a9f41(0x18b)]+_0x2a9f41(0x196)+_0x4a364e[_0x2a9f41(0x192)][_0x2a9f41(0x197)]:_0x2a9f41(0x199)+_0x4a364e[_0x2a9f41(0x192)][_0x2a9f41(0x18b)]+_0x2a9f41(0x188)+_0x4a364e[_0x2a9f41(0x192)][_0x2a9f41(0x197)]};}};
@@ -1 +1 @@
1
- const a162_0x59b7b1=a162_0x7d19;(function(_0xef55a8,_0x552855){const _0x352ce0=a162_0x7d19,_0x269a1d=_0xef55a8();while(!![]){try{const _0x5086e3=parseInt(_0x352ce0(0x6a))/0x1*(parseInt(_0x352ce0(0x74))/0x2)+-parseInt(_0x352ce0(0x75))/0x3*(-parseInt(_0x352ce0(0x6c))/0x4)+parseInt(_0x352ce0(0x72))/0x5+-parseInt(_0x352ce0(0x70))/0x6+-parseInt(_0x352ce0(0x68))/0x7*(-parseInt(_0x352ce0(0x6d))/0x8)+-parseInt(_0x352ce0(0x7a))/0x9+-parseInt(_0x352ce0(0x78))/0xa;if(_0x5086e3===_0x552855)break;else _0x269a1d['push'](_0x269a1d['shift']());}catch(_0x185798){_0x269a1d['push'](_0x269a1d['shift']());}}}(a162_0x4782,0x6ef30));import{CliErrors}from'../../errors.js';function a162_0x7d19(_0x3f6682,_0x13582b){_0x3f6682=_0x3f6682-0x68;const _0x478226=a162_0x4782();let _0x7d1928=_0x478226[_0x3f6682];return _0x7d1928;}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':'user-resolve','description':'Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','risk':a162_0x59b7b1(0x69),'flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x540acf){const _0x32d304=a162_0x59b7b1;if(!_0x540acf[_0x32d304(0x76)]('name')[_0x32d304(0x73)]())throw CliErrors[_0x32d304(0x6f)](_0x32d304(0x7d),_0x32d304(0x6e));},async 'execute'(_0x49e8fc){const _0xd5eefb=a162_0x59b7b1,_0x4d665d=_0x49e8fc[_0xd5eefb(0x76)](_0xd5eefb(0x7d))[_0xd5eefb(0x73)](),_0x973285=await resolveUserRef(_0x4d665d);return{'ok':!![],'data':{'user':{'userId':_0x973285[_0xd5eefb(0x7c)],'username':_0x973285[_0xd5eefb(0x77)],'nickname':_0x973285[_0xd5eefb(0x71)],'matchedBy':_0x973285[_0xd5eefb(0x79)]}},'message':_0xd5eefb(0x7b)+_0x4d665d+_0xd5eefb(0x6b)+_0x973285['userId']};}};function a162_0x4782(){const _0x56c5b3=['flagMissing','1835364DiYdIp','nickname','2586245ZuBTif','trim','3224EntcvQ','274233cZwGRx','str','username','14045880zrjNeH','matchedBy','1508724aXcJcI','Resolved\x20\x22','userId','name','5634111tHSNbe','read','400oNXFdX','\x22\x20→\x20userId\x20','16xTzDIr','8jRcTeI','Pass\x20--name\x20<nickname|username>.'];a162_0x4782=function(){return _0x56c5b3;};return a162_0x4782();}
1
+ const a163_0x4aadd7=a163_0x465f;(function(_0x6948ed,_0x3a99a6){const _0x135652=a163_0x465f,_0x599993=_0x6948ed();while(!![]){try{const _0x1774d7=parseInt(_0x135652(0x17f))/0x1+-parseInt(_0x135652(0x17b))/0x2*(parseInt(_0x135652(0x16c))/0x3)+parseInt(_0x135652(0x16f))/0x4*(parseInt(_0x135652(0x174))/0x5)+-parseInt(_0x135652(0x17d))/0x6*(-parseInt(_0x135652(0x16d))/0x7)+parseInt(_0x135652(0x175))/0x8+parseInt(_0x135652(0x171))/0x9*(parseInt(_0x135652(0x179))/0xa)+-parseInt(_0x135652(0x16a))/0xb;if(_0x1774d7===_0x3a99a6)break;else _0x599993['push'](_0x599993['shift']());}catch(_0x3de31b){_0x599993['push'](_0x599993['shift']());}}}(a163_0x5297,0x958b4));import{CliErrors}from'../../errors.js';function a163_0x5297(){const _0x531231=['6UUbUGI','Resolved\x20\x22','1194507YYHIyE','role','nickname','username','20889473kmavOq','flagMissing','342591UxKewh','2780911ZLHGBz','read','195460AtMnuN','userId','693jGduOQ','name','Pass\x20--name\x20<nickname|username>.','35CcfBTm','3994032mSDudO','user-resolve','str','trim','143670JubrXS','Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','18HFfjEZ','\x22\x20→\x20userId\x20'];a163_0x5297=function(){return _0x531231;};return a163_0x5297();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';function a163_0x465f(_0x217156,_0x2d8d5a){_0x217156=_0x217156-0x16a;const _0x5297b9=a163_0x5297();let _0x465fb5=_0x5297b9[_0x217156];return _0x465fb5;}export const roleUserResolve={'service':a163_0x4aadd7(0x180),'command':a163_0x4aadd7(0x176),'description':a163_0x4aadd7(0x17a),'risk':a163_0x4aadd7(0x16e),'flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4ad6fa){const _0x3b6536=a163_0x4aadd7;if(!_0x4ad6fa[_0x3b6536(0x177)]('name')['trim']())throw CliErrors[_0x3b6536(0x16b)](_0x3b6536(0x172),_0x3b6536(0x173));},async 'execute'(_0x1fea4b){const _0x4e0043=a163_0x4aadd7,_0x29a5a4=_0x1fea4b['str'](_0x4e0043(0x172))[_0x4e0043(0x178)](),_0x4e8ca4=await resolveUserRef(_0x29a5a4);return{'ok':!![],'data':{'user':{'userId':_0x4e8ca4[_0x4e0043(0x170)],'username':_0x4e8ca4[_0x4e0043(0x182)],'nickname':_0x4e8ca4[_0x4e0043(0x181)],'matchedBy':_0x4e8ca4['matchedBy']}},'message':_0x4e0043(0x17e)+_0x29a5a4+_0x4e0043(0x17c)+_0x4e8ca4[_0x4e0043(0x170)]};}};