@lovrabet/rabetbase-cli 2.3.7-beta.1 → 2.3.7-beta.3

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 (243) 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/dry-run.js +1 -1
  48. package/lib/commands/common/flags.js +1 -1
  49. package/lib/commands/common/local-file.js +1 -1
  50. package/lib/commands/common/validate.js +1 -1
  51. package/lib/commands/config/get.js +1 -1
  52. package/lib/commands/config/index.js +1 -1
  53. package/lib/commands/config/list.js +1 -1
  54. package/lib/commands/config/set.js +1 -1
  55. package/lib/commands/config/shared.js +1 -1
  56. package/lib/commands/data/filter.js +1 -1
  57. package/lib/commands/data/getOne.js +1 -1
  58. package/lib/commands/data/index.js +1 -1
  59. package/lib/commands/data/shared.js +1 -1
  60. package/lib/commands/dataset/business-group-update.js +1 -1
  61. package/lib/commands/dataset/capability.js +1 -1
  62. package/lib/commands/dataset/delete.js +1 -1
  63. package/lib/commands/dataset/detail.js +1 -1
  64. package/lib/commands/dataset/extend-update.js +1 -1
  65. package/lib/commands/dataset/field-update.js +1 -1
  66. package/lib/commands/dataset/generate.js +1 -1
  67. package/lib/commands/dataset/index.js +1 -1
  68. package/lib/commands/dataset/list.js +1 -1
  69. package/lib/commands/dataset/operations.js +1 -1
  70. package/lib/commands/dataset/relation-audit.js +1 -1
  71. package/lib/commands/dataset/relation-create.js +1 -1
  72. package/lib/commands/dataset/relation-delete.js +1 -1
  73. package/lib/commands/dataset/relation-shared.js +1 -1
  74. package/lib/commands/dataset/relation-update.js +1 -1
  75. package/lib/commands/dataset/relations.js +1 -1
  76. package/lib/commands/dataset/rename.js +1 -1
  77. package/lib/commands/dataset/restore.js +1 -1
  78. package/lib/commands/db/analysis-batching.js +1 -0
  79. package/lib/commands/db/analyze-batch-plan.js +1 -0
  80. package/lib/commands/db/analyze-cancel.js +1 -1
  81. package/lib/commands/db/analyze-start.js +1 -1
  82. package/lib/commands/db/analyze-status.js +1 -1
  83. package/lib/commands/db/create.js +1 -1
  84. package/lib/commands/db/delete.js +1 -1
  85. package/lib/commands/db/detail.js +1 -1
  86. package/lib/commands/db/diff.js +1 -1
  87. package/lib/commands/db/index.js +1 -1
  88. package/lib/commands/db/list.js +1 -1
  89. package/lib/commands/db/shared.js +1 -1
  90. package/lib/commands/db/tables.js +1 -1
  91. package/lib/commands/db/test.js +1 -1
  92. package/lib/commands/db/update.js +1 -1
  93. package/lib/commands/doctor.js +1 -1
  94. package/lib/commands/file/index.js +1 -1
  95. package/lib/commands/init/index.js +1 -1
  96. package/lib/commands/issue/index.js +1 -1
  97. package/lib/commands/issue/nudge.js +1 -1
  98. package/lib/commands/issue/report.js +1 -1
  99. package/lib/commands/issue/shared.js +1 -1
  100. package/lib/commands/logs/index.js +1 -1
  101. package/lib/commands/menu/index.js +1 -1
  102. package/lib/commands/menu/list.js +1 -1
  103. package/lib/commands/menu/shared/compare-table.js +1 -1
  104. package/lib/commands/menu/shared/index.js +1 -1
  105. package/lib/commands/menu/shared/inquirer.js +1 -1
  106. package/lib/commands/menu/shared/local-pages.js +1 -1
  107. package/lib/commands/menu/shared/logic.js +1 -1
  108. package/lib/commands/menu/shared/service.js +1 -1
  109. package/lib/commands/menu/shared/sync-core.js +1 -1
  110. package/lib/commands/menu/shared/update-core.js +1 -1
  111. package/lib/commands/menu/shared/valid-url.js +1 -1
  112. package/lib/commands/menu/sync.js +1 -1
  113. package/lib/commands/menu/update.js +1 -1
  114. package/lib/commands/page/generate-start.js +1 -1
  115. package/lib/commands/page/generate-status.js +1 -1
  116. package/lib/commands/page/index.js +1 -1
  117. package/lib/commands/page/pull.js +1 -1
  118. package/lib/commands/page/push.js +1 -1
  119. package/lib/commands/page/relation-audit.js +1 -1
  120. package/lib/commands/page/shared.js +1 -1
  121. package/lib/commands/page/standard-page-status.js +1 -1
  122. package/lib/commands/page/sync.js +1 -1
  123. package/lib/commands/permit/index.js +1 -1
  124. package/lib/commands/permit/page-get.js +1 -1
  125. package/lib/commands/permit/page-set.js +1 -1
  126. package/lib/commands/permit/role-apis-set.js +1 -1
  127. package/lib/commands/permit/role-menus-set.js +1 -1
  128. package/lib/commands/permit/role-menus.js +1 -1
  129. package/lib/commands/permit/shared.js +1 -1
  130. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  131. package/lib/commands/project/create/format-elapsed.js +1 -1
  132. package/lib/commands/project/create/main.js +1 -1
  133. package/lib/commands/project/create/non-interactive.js +1 -1
  134. package/lib/commands/project/create/project-template-path.js +1 -1
  135. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  136. package/lib/commands/project/create/use-format-code.js +1 -1
  137. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  138. package/lib/commands/project/index.js +1 -1
  139. package/lib/commands/project/init.js +1 -1
  140. package/lib/commands/project/upgrade.js +1 -1
  141. package/lib/commands/registry.js +1 -1
  142. package/lib/commands/role/create.js +1 -1
  143. package/lib/commands/role/delete.js +1 -1
  144. package/lib/commands/role/detail.js +1 -1
  145. package/lib/commands/role/index.js +1 -1
  146. package/lib/commands/role/list.js +1 -1
  147. package/lib/commands/role/shared.js +1 -1
  148. package/lib/commands/role/update.js +1 -1
  149. package/lib/commands/role/user-add.js +1 -1
  150. package/lib/commands/role/user-remove.js +1 -1
  151. package/lib/commands/role/user-resolve.js +1 -1
  152. package/lib/commands/run/index.js +1 -1
  153. package/lib/commands/schema.js +1 -1
  154. package/lib/commands/sql/create.js +1 -1
  155. package/lib/commands/sql/delete.js +1 -1
  156. package/lib/commands/sql/detail.js +1 -1
  157. package/lib/commands/sql/exec.js +1 -1
  158. package/lib/commands/sql/index.js +1 -1
  159. package/lib/commands/sql/list.js +1 -1
  160. package/lib/commands/sql/pull.js +1 -1
  161. package/lib/commands/sql/push.js +1 -1
  162. package/lib/commands/sql/save.js +1 -1
  163. package/lib/commands/sql/shared.js +1 -1
  164. package/lib/commands/sql/status.js +1 -1
  165. package/lib/commands/sql/validate.js +1 -1
  166. package/lib/commands/workspace/add.js +1 -1
  167. package/lib/commands/workspace/index.js +1 -1
  168. package/lib/commands/workspace/remove.js +1 -1
  169. package/lib/config/schema.js +1 -1
  170. package/lib/constant/cdn.js +1 -1
  171. package/lib/constant/cli.js +1 -1
  172. package/lib/constant/defaults.js +1 -1
  173. package/lib/constant/domain.js +1 -1
  174. package/lib/constant/env.js +1 -1
  175. package/lib/constant/output.js +1 -1
  176. package/lib/constant/paths.js +1 -1
  177. package/lib/constant/risk.js +1 -1
  178. package/lib/context/app-resolver.js +1 -1
  179. package/lib/context/auth-resolver.js +1 -1
  180. package/lib/context/config-loader.js +1 -1
  181. package/lib/context.js +1 -1
  182. package/lib/core/alias-resolver.js +1 -1
  183. package/lib/core/api-client.js +1 -1
  184. package/lib/core/bff/config.js +1 -1
  185. package/lib/core/bff/file-system.js +1 -1
  186. package/lib/core/bff/hash.js +1 -1
  187. package/lib/core/bff/lock.js +1 -1
  188. package/lib/core/bff/utils.js +1 -1
  189. package/lib/core/db-resolver.js +1 -1
  190. package/lib/core/page/file-system.js +1 -1
  191. package/lib/core/page/hash.js +1 -1
  192. package/lib/core/page/lock.js +1 -1
  193. package/lib/core/sql-sync/config.js +1 -1
  194. package/lib/core/sql-sync/file-system.js +1 -1
  195. package/lib/core/sql-sync/hash.js +1 -1
  196. package/lib/core/sql-sync/lock.js +1 -1
  197. package/lib/core/sql-sync/utils.js +1 -1
  198. package/lib/core/sql-validator.js +1 -1
  199. package/lib/errors.js +1 -1
  200. package/lib/framework/build-all-flags.js +1 -1
  201. package/lib/framework/flags.js +1 -1
  202. package/lib/framework/help.js +1 -1
  203. package/lib/framework/index.js +1 -1
  204. package/lib/framework/output.js +1 -1
  205. package/lib/framework/response.js +1 -1
  206. package/lib/framework/runner-alias.js +1 -1
  207. package/lib/framework/runner.js +1 -1
  208. package/lib/framework/schema-export.js +1 -1
  209. package/lib/framework/types.js +1 -1
  210. package/lib/generated/build-info.js +1 -1
  211. package/lib/help.js +1 -1
  212. package/lib/skills/main.js +1 -1
  213. package/lib/skills/npx-skills-add.js +1 -1
  214. package/lib/telemetry/cli-command-trace.js +1 -1
  215. package/lib/telemetry/cli-help-trace.js +1 -1
  216. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  217. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  218. package/lib/telemetry/send-cli-trace-log.js +1 -1
  219. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  220. package/lib/utils/ai_config.js +1 -1
  221. package/lib/utils/apply-jq-filter.js +1 -1
  222. package/lib/utils/cdn-config.js +1 -1
  223. package/lib/utils/check-sdk-version.js +1 -1
  224. package/lib/utils/cli-version-check.js +1 -1
  225. package/lib/utils/cli-version-policy.js +1 -1
  226. package/lib/utils/config.js +1 -1
  227. package/lib/utils/copy-directory.js +1 -1
  228. package/lib/utils/entity-with-id.js +1 -1
  229. package/lib/utils/file-utils.js +1 -1
  230. package/lib/utils/guides-cdn.js +1 -1
  231. package/lib/utils/http-client.js +1 -1
  232. package/lib/utils/is-non-interactive.js +1 -1
  233. package/lib/utils/logger.js +1 -1
  234. package/lib/utils/params.js +1 -1
  235. package/lib/utils/platform.js +1 -1
  236. package/lib/utils/rules-cdn.js +1 -1
  237. package/lib/utils/sleep.js +1 -1
  238. package/lib/utils/template-replacer.js +1 -1
  239. package/lib/utils/update-notice.js +1 -1
  240. package/lib/utils/version.js +1 -1
  241. package/lib/utils/with-active-cookie.js +1 -1
  242. package/lib/utils/write-cli-side-channel.js +1 -1
  243. package/package.json +1 -1
@@ -1 +1 @@
1
- const a139_0x408446=a139_0x2f5e;(function(_0xa72788,_0x1fb856){const _0x1b8318=a139_0x2f5e,_0x4db640=_0xa72788();while(!![]){try{const _0x18d650=-parseInt(_0x1b8318(0x209))/0x1+parseInt(_0x1b8318(0x201))/0x2+parseInt(_0x1b8318(0x1f4))/0x3*(-parseInt(_0x1b8318(0x20f))/0x4)+parseInt(_0x1b8318(0x1f2))/0x5*(parseInt(_0x1b8318(0x1db))/0x6)+-parseInt(_0x1b8318(0x1f0))/0x7*(parseInt(_0x1b8318(0x1de))/0x8)+parseInt(_0x1b8318(0x200))/0x9+-parseInt(_0x1b8318(0x20c))/0xa*(parseInt(_0x1b8318(0x1d2))/0xb);if(_0x18d650===_0x1fb856)break;else _0x4db640['push'](_0x4db640['shift']());}catch(_0x280435){_0x4db640['push'](_0x4db640['shift']());}}}(a139_0x3c19,0x9d5d1));import{apiDefinitions}from'../commands/api/index.js';function a139_0x2f5e(_0x49e80d,_0x225588){_0x49e80d=_0x49e80d-0x1c8;const _0x3c1954=a139_0x3c19();let _0x2f5e10=_0x3c1954[_0x49e80d];return _0x2f5e10;}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{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{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{fileDefinitions}from'../commands/file/index.js';import{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(_0x5e0541){const _0x1c94e4=a139_0x2f5e;for(const _0x5661b3 of _0x5e0541){definitions[_0x1c94e4(0x1e3)](_0x5661b3['service']+':'+_0x5661b3['command'],_0x5661b3);let _0x32dfc9=serviceGroups[_0x1c94e4(0x1dc)](_0x5661b3[_0x1c94e4(0x1e1)]);!_0x32dfc9&&(_0x32dfc9=[],serviceGroups[_0x1c94e4(0x1e3)](_0x5661b3['service'],_0x32dfc9)),_0x32dfc9[_0x1c94e4(0x1d0)](_0x5661b3);}}function registerDeclarativeService(_0x4e7b94,_0x28f99b,_0x2ba740){const _0x13295d=a139_0x2f5e;registerDefinitions(_0x28f99b);_0x2ba740?.[_0x13295d(0x1f5)]&&registerDefinitions([_0x2ba740[_0x13295d(0x1f5)]]);const _0x41f137=_0x5f50f5=>_0x5f50f5===_0x13295d(0x1f1)?'':_0x5f50f5===_0x13295d(0x1fb)?_0x13295d(0x20e):'\x20\x20[high-risk-write]',_0x3e0eb7={'service':_0x28f99b[0x0][_0x13295d(0x1e1)],'label':_0x4e7b94,'commands':_0x28f99b['filter'](_0x23934b=>!_0x23934b[_0x13295d(0x1e5)])[_0x13295d(0x1e0)](_0x2b8bc7=>({'command':_0x2b8bc7[_0x13295d(0x1e6)],'description':_0x2b8bc7[_0x13295d(0x1d5)],'tag':_0x41f137(_0x2b8bc7['risk'])})),'declarative':!![],'defaultCommand':_0x2ba740?.['defaultCommand']??(_0x2ba740?.[_0x13295d(0x1ed)]?_0x28f99b[0x0][_0x13295d(0x1e6)]:undefined),'wildcardDef':_0x2ba740?.[_0x13295d(0x1f5)],'isSingleCommand':_0x2ba740?.['isSingleCommand']};serviceRegistry[_0x13295d(0x1d0)](_0x3e0eb7),serviceByName['set'](_0x3e0eb7[_0x13295d(0x1e1)],_0x3e0eb7);}registerDeclarativeService(a139_0x408446(0x1c9),initDefinitions,{'defaultCommand':a139_0x408446(0x1d6),'isSingleCommand':!![]}),registerDeclarativeService(a139_0x408446(0x1df),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a139_0x408446(0x1fe)}),registerDeclarativeService(a139_0x408446(0x1d4),datasetDefinitions),registerDeclarativeService(a139_0x408446(0x1ea),pageDefinitions),registerDeclarativeService(a139_0x408446(0x1c8),apiDefinitions),registerDeclarativeService(a139_0x408446(0x208),dataDefinitions),registerDeclarativeService(a139_0x408446(0x1e7),bffDefinitions),registerDeclarativeService(a139_0x408446(0x1f9),sqlDefinitions),registerDeclarativeService(a139_0x408446(0x1d7),dbDefinitions),registerDeclarativeService(a139_0x408446(0x1cb),menuDefinitions),registerDeclarativeService(a139_0x408446(0x204),roleDefinitions),registerDeclarativeService('Permissions',permitDefinitions),registerDeclarativeService(a139_0x408446(0x1e2),appConfigDefinitions),registerDeclarativeService(a139_0x408446(0x1f7),issueDefinitions),registerDeclarativeService(a139_0x408446(0x1ec),fileDefinitions),registerDeclarativeService(a139_0x408446(0x1e8),codegenDefinitions),registerDeclarativeService(a139_0x408446(0x206),configDefinitions),registerDeclarativeService(a139_0x408446(0x1f8),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a139_0x408446(0x1cf),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a139_0x408446(0x1ca),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('CLI\x20Built-in\x20Skill',cliSkillDefinitions,{'defaultCommand':'install'}),registerDeclarativeService(a139_0x408446(0x1da),logsDefinitions,{'defaultCommand':a139_0x408446(0x1f6)}),registerDeclarativeService(a139_0x408446(0x1ee),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a139_0x408446(0x1d3)]-0x1];last[a139_0x408446(0x1d9)]=[{'command':a139_0x408446(0x1fa),'description':'Run\x20any\x20package.json\x20script','tag':''}];}export const deprecatedAliases={'create':{'service':a139_0x408446(0x1dd),'command':a139_0x408446(0x20b)},'start':{'service':a139_0x408446(0x1d6),'command':a139_0x408446(0x1ef)},'build':{'service':a139_0x408446(0x1d6),'command':a139_0x408446(0x1fc)},'preview':{'service':a139_0x408446(0x1d6),'command':a139_0x408446(0x205)},'logout':{'service':a139_0x408446(0x1cd),'command':a139_0x408446(0x1e9)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a139_0x408446(0x1eb),APP_REMOTE_REMOVED_HINT='Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.',APP_USE_REMOVED_HINT='Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.';export function resolveRemovedCommand(_0x29f293,_0x19dbf1){const _0x25eaa2=a139_0x408446;if(_0x29f293==='skill'){const _0x3f15de=_0x19dbf1?_0x25eaa2(0x202)+_0x19dbf1:_0x25eaa2(0x1e4);return{'command':_0x3f15de,'message':'`rabetbase\x20'+_0x3f15de+_0x25eaa2(0x203),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x29f293==='skills')return{'command':_0x25eaa2(0x1cc),'message':_0x25eaa2(0x1ce),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x29f293==='app'&&_0x19dbf1===_0x25eaa2(0x1d8))return{'command':_0x25eaa2(0x207),'message':_0x25eaa2(0x1fd),'hint':APP_REMOTE_REMOVED_HINT};if(_0x29f293===_0x25eaa2(0x20a)&&_0x19dbf1==='use')return{'command':'app\x20use','message':_0x25eaa2(0x1ff),'hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a139_0x408446(0x20b)},'sql':{'new':a139_0x408446(0x20b)}};export function resolveDeprecatedSubcommand(_0x4896e7,_0x1ddbe0){return deprecatedSubcommands[_0x4896e7]?.[_0x1ddbe0];}function a139_0x3c19(){const _0x71d8df=['API\x20Development','Quick\x20Start','Self\x20Update','Menu','skills','auth','`rabetbase\x20skills`\x20has\x20been\x20removed.','Schema','push','has','275yPtdTv','length','Dataset\x20&\x20Operations','description','run','Database\x20Connections','remote','commands','Logs','6idzPPy','get','project','176uSGWsd','Project','map','service','Runtime\x20App\x20Config\x20Management','set','skill','hidden','command','BFF\x20Scripts','Code\x20Generation','logout','Smart\x20List\x20Pages','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','File','isSingleCommand','Run\x20Scripts','start','301896lOpWsB','read','4435190UKvFOP','from','21lnSXVc','wildcardDef','show','Platform\x20Issue','Diagnostics','SQL\x20Queries','<script>','write','build','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','login','`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','7052724ivQqlP','1963866eqKmWh','skill\x20','`\x20has\x20been\x20removed.','Roles','preview','Configuration','app\x20remote','Instant\x20API','428377qBJjeT','app','create','59270TfkPTF','values','\x20\x20[write]','275816mWZfuH'];a139_0x3c19=function(){return _0x71d8df;};return a139_0x3c19();}export function findDefinition(_0x36e8e5,_0x16b7dd){const _0x402e68=a139_0x408446;return definitions[_0x402e68(0x1dc)](_0x36e8e5+':'+_0x16b7dd);}export function isKnownService(_0x51e2ef){const _0xa0899c=a139_0x408446;return serviceByName[_0xa0899c(0x1d1)](_0x51e2ef);}export function isDeclarativeService(_0x4a4897){const _0x116112=a139_0x408446;return serviceGroups[_0x116112(0x1d1)](_0x4a4897)||serviceByName[_0x116112(0x1dc)](_0x4a4897)?.['wildcardDef']!==undefined;}export function getServiceEntry(_0x52543a){const _0x5d1a7b=a139_0x408446;return serviceByName[_0x5d1a7b(0x1dc)](_0x52543a);}export function getLegacyHandler(_0x562a6a,_0x542834){return undefined;}export function getAllDefinitions(){const _0x1b9953=a139_0x408446;return Array[_0x1b9953(0x1f3)](definitions[_0x1b9953(0x20d)]());}
1
+ const a141_0x2e329a=a141_0xfa8d;(function(_0x567a9d,_0x4275ad){const _0x3de6e9=a141_0xfa8d,_0x478143=_0x567a9d();while(!![]){try{const _0x267db8=parseInt(_0x3de6e9(0x17d))/0x1*(parseInt(_0x3de6e9(0x19c))/0x2)+parseInt(_0x3de6e9(0x1a3))/0x3+parseInt(_0x3de6e9(0x1a0))/0x4+parseInt(_0x3de6e9(0x196))/0x5*(-parseInt(_0x3de6e9(0x18b))/0x6)+parseInt(_0x3de6e9(0x16a))/0x7+-parseInt(_0x3de6e9(0x187))/0x8*(-parseInt(_0x3de6e9(0x17a))/0x9)+-parseInt(_0x3de6e9(0x17b))/0xa;if(_0x267db8===_0x4275ad)break;else _0x478143['push'](_0x478143['shift']());}catch(_0x1e8649){_0x478143['push'](_0x478143['shift']());}}}(a141_0x1c0e,0x7c4f7));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';function a141_0x1c0e(){const _0x53a14f=['18298pOGTNb','hidden','\x20\x20[write]','show','75648lsZmMQ','logout','Schema','980964lMzhbr','App\x20Management','Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.','BFF\x20Scripts','get','Dataset\x20&\x20Operations','File','Database\x20Connections','Workspace','skills','install','CLI\x20Built-in\x20Skill','3612686RZMTHf','skill\x20','skill','set','run','filter','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','command','Permissions','Configuration','Roles','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','Project','write','Instant\x20API','`\x20has\x20been\x20removed.','9rHZfXa','21080810LzkIau','Diagnostics','110nlSYoS','commands','wildcardDef','Code\x20Generation','Smart\x20List\x20Pages','Run\x20any\x20package.json\x20script','from','defaultCommand','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','use','7409680FCiydT','length','SQL\x20Queries','preview','18YlZTLq','app\x20use','Self\x20Update','has','service','isSingleCommand','Runtime\x20App\x20Config\x20Management','login','`rabetbase\x20skills`\x20has\x20been\x20removed.','read','push','295570qGxFnt','Quick\x20Start','start','<script>','API\x20Development','risk'];a141_0x1c0e=function(){return _0x53a14f;};return a141_0x1c0e();}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{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{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{fileDefinitions}from'../commands/file/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';function a141_0xfa8d(_0x10dbb1,_0x5ac724){_0x10dbb1=_0x10dbb1-0x162;const _0x1c0eb5=a141_0x1c0e();let _0xfa8d05=_0x1c0eb5[_0x10dbb1];return _0xfa8d05;}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(_0x49a5b7){const _0x307354=a141_0xfa8d;for(const _0x22b1df of _0x49a5b7){definitions[_0x307354(0x16d)](_0x22b1df['service']+':'+_0x22b1df[_0x307354(0x171)],_0x22b1df);let _0x5c2ebd=serviceGroups[_0x307354(0x162)](_0x22b1df[_0x307354(0x18f)]);!_0x5c2ebd&&(_0x5c2ebd=[],serviceGroups[_0x307354(0x16d)](_0x22b1df['service'],_0x5c2ebd)),_0x5c2ebd[_0x307354(0x195)](_0x22b1df);}}function registerDeclarativeService(_0x32d292,_0x4f9e23,_0x33e840){const _0x23e06d=a141_0xfa8d;registerDefinitions(_0x4f9e23);_0x33e840?.['wildcardDef']&&registerDefinitions([_0x33e840[_0x23e06d(0x17f)]]);const _0x84ade1=_0x4f349f=>_0x4f349f===_0x23e06d(0x194)?'':_0x4f349f===_0x23e06d(0x177)?_0x23e06d(0x19e):'\x20\x20[high-risk-write]',_0xfd619d={'service':_0x4f9e23[0x0][_0x23e06d(0x18f)],'label':_0x32d292,'commands':_0x4f9e23[_0x23e06d(0x16f)](_0x4466b9=>!_0x4466b9[_0x23e06d(0x19d)])['map'](_0x10f457=>({'command':_0x10f457[_0x23e06d(0x171)],'description':_0x10f457['description'],'tag':_0x84ade1(_0x10f457[_0x23e06d(0x19b)])})),'declarative':!![],'defaultCommand':_0x33e840?.[_0x23e06d(0x184)]??(_0x33e840?.[_0x23e06d(0x190)]?_0x4f9e23[0x0][_0x23e06d(0x171)]:undefined),'wildcardDef':_0x33e840?.[_0x23e06d(0x17f)],'isSingleCommand':_0x33e840?.[_0x23e06d(0x190)]};serviceRegistry[_0x23e06d(0x195)](_0xfd619d),serviceByName['set'](_0xfd619d['service'],_0xfd619d);}registerDeclarativeService(a141_0x2e329a(0x197),initDefinitions,{'defaultCommand':a141_0x2e329a(0x16e),'isSingleCommand':!![]}),registerDeclarativeService(a141_0x2e329a(0x176),projectDefinitions),registerDeclarativeService(a141_0x2e329a(0x166),workspaceDefinitions),registerDeclarativeService(a141_0x2e329a(0x1a4),appDefinitions),registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a141_0x2e329a(0x192)}),registerDeclarativeService(a141_0x2e329a(0x163),datasetDefinitions),registerDeclarativeService(a141_0x2e329a(0x181),pageDefinitions),registerDeclarativeService(a141_0x2e329a(0x19a),apiDefinitions),registerDeclarativeService(a141_0x2e329a(0x178),dataDefinitions),registerDeclarativeService(a141_0x2e329a(0x1a6),bffDefinitions),registerDeclarativeService(a141_0x2e329a(0x189),sqlDefinitions),registerDeclarativeService(a141_0x2e329a(0x165),dbDefinitions),registerDeclarativeService('Menu',menuDefinitions),registerDeclarativeService(a141_0x2e329a(0x174),roleDefinitions),registerDeclarativeService(a141_0x2e329a(0x172),permitDefinitions),registerDeclarativeService(a141_0x2e329a(0x191),appConfigDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a141_0x2e329a(0x164),fileDefinitions),registerDeclarativeService(a141_0x2e329a(0x180),codegenDefinitions),registerDeclarativeService(a141_0x2e329a(0x173),configDefinitions),registerDeclarativeService(a141_0x2e329a(0x17c),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a141_0x2e329a(0x1a2),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a141_0x2e329a(0x18d),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a141_0x2e329a(0x169),cliSkillDefinitions,{'defaultCommand':a141_0x2e329a(0x168)}),registerDeclarativeService('Logs',logsDefinitions,{'defaultCommand':a141_0x2e329a(0x19f)}),registerDeclarativeService('Run\x20Scripts',[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a141_0x2e329a(0x188)]-0x1];last[a141_0x2e329a(0x17e)]=[{'command':a141_0x2e329a(0x199),'description':a141_0x2e329a(0x182),'tag':''}];}export const deprecatedAliases={'create':{'service':'project','command':'create'},'start':{'service':a141_0x2e329a(0x16e),'command':a141_0x2e329a(0x198)},'build':{'service':a141_0x2e329a(0x16e),'command':'build'},'preview':{'service':'run','command':a141_0x2e329a(0x18a)},'logout':{'service':'auth','command':a141_0x2e329a(0x1a1)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a141_0x2e329a(0x175),APP_REMOTE_REMOVED_HINT=a141_0x2e329a(0x185),APP_USE_REMOVED_HINT=a141_0x2e329a(0x1a5);export function resolveRemovedCommand(_0x47a95a,_0x58f6dc){const _0x11fda8=a141_0x2e329a;if(_0x47a95a===_0x11fda8(0x16c)){const _0xe25a8d=_0x58f6dc?_0x11fda8(0x16b)+_0x58f6dc:'skill';return{'command':_0xe25a8d,'message':'`rabetbase\x20'+_0xe25a8d+_0x11fda8(0x179),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x47a95a===_0x11fda8(0x167))return{'command':_0x11fda8(0x167),'message':_0x11fda8(0x193),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x47a95a==='app'&&_0x58f6dc==='remote')return{'command':'app\x20remote','message':_0x11fda8(0x170),'hint':APP_REMOTE_REMOVED_HINT};if(_0x47a95a==='app'&&_0x58f6dc===_0x11fda8(0x186))return{'command':_0x11fda8(0x18c),'message':'`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':'create'},'sql':{'new':'create'}};export function resolveDeprecatedSubcommand(_0x244e7d,_0x46646a){return deprecatedSubcommands[_0x244e7d]?.[_0x46646a];}export function findDefinition(_0x49f90d,_0x58e53a){const _0x15ced7=a141_0x2e329a;return definitions[_0x15ced7(0x162)](_0x49f90d+':'+_0x58e53a);}export function isKnownService(_0xfb57e5){const _0x4653f8=a141_0x2e329a;return serviceByName[_0x4653f8(0x18e)](_0xfb57e5);}export function isDeclarativeService(_0x5005d3){const _0xbcce78=a141_0x2e329a;return serviceGroups[_0xbcce78(0x18e)](_0x5005d3)||serviceByName['get'](_0x5005d3)?.[_0xbcce78(0x17f)]!==undefined;}export function getServiceEntry(_0x181dee){const _0x173742=a141_0x2e329a;return serviceByName[_0x173742(0x162)](_0x181dee);}export function getLegacyHandler(_0x40e1dc,_0x5781eb){return undefined;}export function getAllDefinitions(){const _0x1f21e9=a141_0x2e329a;return Array[_0x1f21e9(0x183)](definitions['values']());}
@@ -1 +1 @@
1
- function a140_0x5541(_0x3f5ee5,_0x11fd3c){_0x3f5ee5=_0x3f5ee5-0x140;const _0x4df730=a140_0x4df7();let _0x55417f=_0x4df730[_0x3f5ee5];return _0x55417f;}const a140_0x4b0b7f=a140_0x5541;(function(_0x1e84d1,_0x4aad09){const _0x498d51=a140_0x5541,_0x4bc4f4=_0x1e84d1();while(!![]){try{const _0xc1588f=-parseInt(_0x498d51(0x154))/0x1*(parseInt(_0x498d51(0x140))/0x2)+-parseInt(_0x498d51(0x14f))/0x3+parseInt(_0x498d51(0x141))/0x4+-parseInt(_0x498d51(0x155))/0x5+parseInt(_0x498d51(0x142))/0x6*(-parseInt(_0x498d51(0x150))/0x7)+-parseInt(_0x498d51(0x158))/0x8+parseInt(_0x498d51(0x157))/0x9*(parseInt(_0x498d51(0x159))/0xa);if(_0xc1588f===_0x4aad09)break;else _0x4bc4f4['push'](_0x4bc4f4['shift']());}catch(_0x5973ae){_0x4bc4f4['push'](_0x4bc4f4['shift']());}}}(a140_0x4df7,0x9c358));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 a140_0x4df7(){const _0xd2c80f=['roleName','validation','CUSTOM','/smartapi/permit/role/create','create','length','Pass\x20--name\x20<roleName>.','2579049CHVMEg','9149OXmPxe','role','remark','flagMissing','1msVxgA','1892350LcRXIk','trim','2412OAnIqW','8209664hfOgNj','147910TVCWKA','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','1083682FVmoAp','2617700TKZmvF','5382gtaQYr','name','str','\x20(id=','POST','appCode'];a140_0x4df7=function(){return _0xd2c80f;};return a140_0x4df7();}import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a140_0x4b0b7f(0x14b);function readName(_0xcde91d){const _0x125f69=a140_0x4b0b7f,_0x3fd06e=_0xcde91d['str'](_0x125f69(0x143))[_0x125f69(0x156)]();if(!_0x3fd06e)throw CliErrors[_0x125f69(0x153)](_0x125f69(0x143),_0x125f69(0x14e));if(_0x3fd06e[_0x125f69(0x14d)]>0x40)throw CliErrors[_0x125f69(0x149)]('Role\x20name\x20cannot\x20exceed\x2064\x20characters.');return _0x3fd06e;}export const roleCreate={'service':a140_0x4b0b7f(0x151),'command':a140_0x4b0b7f(0x14c),'description':a140_0x4b0b7f(0x15a),'risk':'write','flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x155e8c){readName(_0x155e8c);},async 'dryRun'(_0x1d2726){const _0x3b8ada=a140_0x4b0b7f,_0x2dd99c=readName(_0x1d2726),_0x59286e=_0x1d2726[_0x3b8ada(0x144)](_0x3b8ada(0x152))[_0x3b8ada(0x156)]()||undefined;return asDryRunResult({'operation':_0x3b8ada(0x14c),'selector':{'appCode':_0x1d2726['appCode'],'roleName':_0x2dd99c},'before':null,'after':{'roleName':_0x2dd99c,'roleType':_0x3b8ada(0x14a),'remark':_0x59286e},'dryRun':!![],'backend':{'method':_0x3b8ada(0x146),'path':CREATE_PATH},'warnings':[]},{'method':_0x3b8ada(0x146),'url':CREATE_PATH});},async 'execute'(_0x179c18){const _0x480222=a140_0x4b0b7f,_0x3cbb26=readName(_0x179c18),_0x58db62=_0x179c18['str'](_0x480222(0x152))[_0x480222(0x156)]()||undefined,_0x27773f=await createAppRole({'appCode':_0x179c18[_0x480222(0x147)],'roleName':_0x3cbb26,..._0x58db62?{'remark':_0x58db62}:{}});return{'ok':!![],'data':{'operation':_0x480222(0x14c),'selector':{'appCode':_0x179c18[_0x480222(0x147)],'roleId':_0x27773f['id'],'roleName':_0x3cbb26},'before':null,'after':projectRole(_0x27773f),'dryRun':![],'backend':{'method':_0x480222(0x146),'path':CREATE_PATH},'warnings':[]},'message':'Created\x20role\x20'+_0x27773f[_0x480222(0x148)]+_0x480222(0x145)+_0x27773f['id']+')'};}};
1
+ function a142_0x33a9(){const _0x556495=['390FWokxM','3891UZlcJR','53479019usPYYL','CUSTOM','886fjAShT','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','/smartapi/permit/role/create','remark','POST','name','12YqHphI','112GZXUvq','create','trim','length','18898490Rghxrd','appCode','1248429msxssy','193627lLfQkh','11673WKrAuh','311435AVxQwL','1280Vfsnsy','str'];a142_0x33a9=function(){return _0x556495;};return a142_0x33a9();}const a142_0x6719b2=a142_0x4b26;(function(_0x34fec9,_0x43d478){const _0x579e3e=a142_0x4b26,_0x873776=_0x34fec9();while(!![]){try{const _0x3c1da6=parseInt(_0x579e3e(0xf3))/0x1*(parseInt(_0x579e3e(0xf6))/0x2)+-parseInt(_0x579e3e(0x103))/0x3+-parseInt(_0x579e3e(0xfd))/0x4*(parseInt(_0x579e3e(0xef))/0x5)+-parseInt(_0x579e3e(0xf2))/0x6*(parseInt(_0x579e3e(0x104))/0x7)+parseInt(_0x579e3e(0xf0))/0x8*(parseInt(_0x579e3e(0xee))/0x9)+-parseInt(_0x579e3e(0x101))/0xa+parseInt(_0x579e3e(0xf4))/0xb*(parseInt(_0x579e3e(0xfc))/0xc);if(_0x3c1da6===_0x43d478)break;else _0x873776['push'](_0x873776['shift']());}catch(_0x1621cf){_0x873776['push'](_0x873776['shift']());}}}(a142_0x33a9,0xe6b49));function a142_0x4b26(_0x190893,_0x16dbd5){_0x190893=_0x190893-0xee;const _0x33a96c=a142_0x33a9();let _0x4b265e=_0x33a96c[_0x190893];return _0x4b265e;}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=a142_0x6719b2(0xf8);function readName(_0x22d9fd){const _0x585a00=a142_0x6719b2,_0x51ac97=_0x22d9fd[_0x585a00(0xf1)](_0x585a00(0xfb))['trim']();if(!_0x51ac97)throw CliErrors['flagMissing']('name','Pass\x20--name\x20<roleName>.');if(_0x51ac97[_0x585a00(0x100)]>0x40)throw CliErrors['validation'](_0x585a00(0xf7));return _0x51ac97;}export const roleCreate={'service':'role','command':a142_0x6719b2(0xfe),'description':'Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','risk':'write','flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5be14a){readName(_0x5be14a);},async 'dryRun'(_0x59e785){const _0x3e98d1=a142_0x6719b2,_0x21cd40=readName(_0x59e785),_0x339489=_0x59e785[_0x3e98d1(0xf1)](_0x3e98d1(0xf9))[_0x3e98d1(0xff)]()||undefined;return asDryRunResult({'operation':_0x3e98d1(0xfe),'selector':{'appCode':_0x59e785[_0x3e98d1(0x102)],'roleName':_0x21cd40},'before':null,'after':{'roleName':_0x21cd40,'roleType':_0x3e98d1(0xf5),'remark':_0x339489},'dryRun':!![],'backend':{'method':_0x3e98d1(0xfa),'path':CREATE_PATH},'warnings':[]},{'method':_0x3e98d1(0xfa),'url':CREATE_PATH});},async 'execute'(_0x366cb4){const _0x410be9=a142_0x6719b2,_0x5d7f1b=readName(_0x366cb4),_0x33b31a=_0x366cb4[_0x410be9(0xf1)]('remark')[_0x410be9(0xff)]()||undefined,_0x3e5243=await createAppRole({'appCode':_0x366cb4[_0x410be9(0x102)],'roleName':_0x5d7f1b,..._0x33b31a?{'remark':_0x33b31a}:{}});return{'ok':!![],'data':{'operation':_0x410be9(0xfe),'selector':{'appCode':_0x366cb4[_0x410be9(0x102)],'roleId':_0x3e5243['id'],'roleName':_0x5d7f1b},'before':null,'after':projectRole(_0x3e5243),'dryRun':![],'backend':{'method':'POST','path':CREATE_PATH},'warnings':[]},'message':'Created\x20role\x20'+_0x3e5243['roleName']+'\x20(id='+_0x3e5243['id']+')'};}};
@@ -1 +1 @@
1
- const a141_0x457426=a141_0x10cb;(function(_0x29ecf7,_0x1bfe21){const _0x222cdf=a141_0x10cb,_0x319ef1=_0x29ecf7();while(!![]){try{const _0x480bee=parseInt(_0x222cdf(0xd3))/0x1+parseInt(_0x222cdf(0xd7))/0x2*(parseInt(_0x222cdf(0xd8))/0x3)+-parseInt(_0x222cdf(0xd4))/0x4+-parseInt(_0x222cdf(0xcd))/0x5+parseInt(_0x222cdf(0xdb))/0x6*(-parseInt(_0x222cdf(0xcf))/0x7)+-parseInt(_0x222cdf(0xdd))/0x8*(parseInt(_0x222cdf(0xd1))/0x9)+parseInt(_0x222cdf(0xda))/0xa*(parseInt(_0x222cdf(0xd6))/0xb);if(_0x480bee===_0x1bfe21)break;else _0x319ef1['push'](_0x319ef1['shift']());}catch(_0x5088db){_0x319ef1['push'](_0x319ef1['shift']());}}}(a141_0x5279,0x816e4));import{deleteAppRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a141_0x10cb(_0x16803c,_0x56780d){_0x16803c=_0x16803c-0xcd;const _0x5279d6=a141_0x5279();let _0x10cbd0=_0x5279d6[_0x16803c];return _0x10cbd0;}import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a141_0x5279(){const _0x2e5943=['/smartapi/permit/role/delete','39881LRCffG','1241544srrOxa','Deleted\x20role\x20','406538kTWAUK','1026738LstcCG','3uhAINH','appCode','260WGXNSB','2075652EBqpNW','roleName','7160ZxYPHq','POST','userCount','Role\x20still\x20has\x20','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','1137210ZQwLXq','delete','7ekFBMv','num','1008hHOIiF'];a141_0x5279=function(){return _0x2e5943;};return a141_0x5279();}const DELETE_PATH=a141_0x457426(0xd2);export const roleDelete={'service':'role','command':a141_0x457426(0xce),'description':'Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','risk':'high-risk-write','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x4edf96){const _0x22a921=a141_0x457426,_0x294de=_0x4edf96[_0x22a921(0xd0)]('id'),_0x2e8c60=await getRoleById(_0x4edf96[_0x22a921(0xd9)],_0x294de);return assertCustomRole(_0x2e8c60,_0x22a921(0xce)),asDryRunResult({'operation':'delete','selector':{'appCode':_0x4edf96[_0x22a921(0xd9)],'roleId':_0x294de,'roleName':_0x2e8c60['roleName']},'before':projectRole(_0x2e8c60),'after':null,'dryRun':!![],'backend':{'method':_0x22a921(0xde),'path':DELETE_PATH},'warnings':_0x2e8c60[_0x22a921(0xdf)]>0x0?[_0x22a921(0xe0)+_0x2e8c60[_0x22a921(0xdf)]+_0x22a921(0xe1)]:[]},{'method':'POST','url':DELETE_PATH});},async 'execute'(_0x1ab792){const _0x4aa418=a141_0x457426,_0x464fc5=_0x1ab792[_0x4aa418(0xd0)]('id'),_0x5aec35=await getRoleById(_0x1ab792['appCode'],_0x464fc5);return assertCustomRole(_0x5aec35,_0x4aa418(0xce)),await deleteAppRole(_0x464fc5),{'ok':!![],'data':{'operation':_0x4aa418(0xce),'selector':{'appCode':_0x1ab792[_0x4aa418(0xd9)],'roleId':_0x464fc5,'roleName':_0x5aec35['roleName']},'before':projectRole(_0x5aec35),'after':null,'dryRun':![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':[]},'message':_0x4aa418(0xd5)+_0x5aec35[_0x4aa418(0xdc)]+'\x20(id='+_0x464fc5+')'};}};
1
+ const a143_0x240ee5=a143_0x169c;(function(_0x490250,_0x1b81b0){const _0x430da1=a143_0x169c,_0x128aa9=_0x490250();while(!![]){try{const _0x27d850=-parseInt(_0x430da1(0x81))/0x1+-parseInt(_0x430da1(0x80))/0x2*(-parseInt(_0x430da1(0x76))/0x3)+parseInt(_0x430da1(0x82))/0x4*(-parseInt(_0x430da1(0x75))/0x5)+-parseInt(_0x430da1(0x85))/0x6*(-parseInt(_0x430da1(0x84))/0x7)+parseInt(_0x430da1(0x7e))/0x8*(parseInt(_0x430da1(0x86))/0x9)+parseInt(_0x430da1(0x7c))/0xa*(-parseInt(_0x430da1(0x79))/0xb)+parseInt(_0x430da1(0x83))/0xc*(parseInt(_0x430da1(0x74))/0xd);if(_0x27d850===_0x1b81b0)break;else _0x128aa9['push'](_0x128aa9['shift']());}catch(_0x3d0f62){_0x128aa9['push'](_0x128aa9['shift']());}}}(a143_0x7c35,0x6307e));import{deleteAppRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';const DELETE_PATH=a143_0x240ee5(0x7d);function a143_0x169c(_0x5605a9,_0x1881a7){_0x5605a9=_0x5605a9-0x71;const _0x7c3551=a143_0x7c35();let _0x169cb1=_0x7c3551[_0x5605a9];return _0x169cb1;}export const roleDelete={'service':'role','command':a143_0x240ee5(0x77),'description':a143_0x240ee5(0x7f),'risk':'high-risk-write','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x511d81){const _0x7cc642=a143_0x240ee5,_0x41d085=_0x511d81[_0x7cc642(0x72)]('id'),_0x693c61=await getRoleById(_0x511d81[_0x7cc642(0x71)],_0x41d085);return assertCustomRole(_0x693c61,_0x7cc642(0x77)),asDryRunResult({'operation':_0x7cc642(0x77),'selector':{'appCode':_0x511d81[_0x7cc642(0x71)],'roleId':_0x41d085,'roleName':_0x693c61[_0x7cc642(0x73)]},'before':projectRole(_0x693c61),'after':null,'dryRun':!![],'backend':{'method':_0x7cc642(0x78),'path':DELETE_PATH},'warnings':_0x693c61[_0x7cc642(0x88)]>0x0?[_0x7cc642(0x7a)+_0x693c61[_0x7cc642(0x88)]+_0x7cc642(0x87)]:[]},{'method':_0x7cc642(0x78),'url':DELETE_PATH});},async 'execute'(_0x25ea84){const _0x34c777=a143_0x240ee5,_0x378da6=_0x25ea84[_0x34c777(0x72)]('id'),_0x15a34a=await getRoleById(_0x25ea84[_0x34c777(0x71)],_0x378da6);return assertCustomRole(_0x15a34a,_0x34c777(0x77)),await deleteAppRole(_0x378da6),{'ok':!![],'data':{'operation':_0x34c777(0x77),'selector':{'appCode':_0x25ea84['appCode'],'roleId':_0x378da6,'roleName':_0x15a34a[_0x34c777(0x73)]},'before':projectRole(_0x15a34a),'after':null,'dryRun':![],'backend':{'method':_0x34c777(0x78),'path':DELETE_PATH},'warnings':[]},'message':'Deleted\x20role\x20'+_0x15a34a[_0x34c777(0x73)]+_0x34c777(0x7b)+_0x378da6+')'};}};function a143_0x7c35(){const _0x459f93=['26nMdikr','10oNtiJC','38466txrkmV','delete','POST','22PqoTVX','Role\x20still\x20has\x20','\x20(id=','115390fRUziA','/smartapi/permit/role/delete','24ZzTFKl','Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','2vUDfRQ','241326IuNmdK','1567788ObPsCi','6107244doiAYc','2618371QKdEtP','6QXaMAn','147537KYQzHX','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','userCount','appCode','num','roleName'];a143_0x7c35=function(){return _0x459f93;};return a143_0x7c35();}
@@ -1 +1 @@
1
- const a142_0x44f620=a142_0x5d15;(function(_0x177559,_0x3a7cae){const _0x4b34cd=a142_0x5d15,_0x25620e=_0x177559();while(!![]){try{const _0x11e3a4=parseInt(_0x4b34cd(0x15a))/0x1+-parseInt(_0x4b34cd(0x15b))/0x2*(-parseInt(_0x4b34cd(0x155))/0x3)+parseInt(_0x4b34cd(0x152))/0x4*(-parseInt(_0x4b34cd(0x15e))/0x5)+-parseInt(_0x4b34cd(0x15d))/0x6+parseInt(_0x4b34cd(0x150))/0x7+-parseInt(_0x4b34cd(0x154))/0x8+-parseInt(_0x4b34cd(0x159))/0x9*(-parseInt(_0x4b34cd(0x157))/0xa);if(_0x11e3a4===_0x3a7cae)break;else _0x25620e['push'](_0x25620e['shift']());}catch(_0x25f2de){_0x25620e['push'](_0x25620e['shift']());}}}(a142_0x2a3d,0xa5b94));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a142_0x5d15(_0x114e47,_0xf3338b){_0x114e47=_0x114e47-0x14f;const _0x2a3de4=a142_0x2a3d();let _0x5d159f=_0x2a3de4[_0x114e47];return _0x5d159f;}function a142_0x2a3d(){const _0x148f00=['4432141bghTQk','roleType','4RDkHCo','num','4547816hYooaX','182883XUanCw','roleName','24101740xSCZTI','read','9AzFLWW','692713DarCOL','2zWbYwQ','detail','7182114MVSWHg','6763555ovjnzF','Role\x20'];a142_0x2a3d=function(){return _0x148f00;};return a142_0x2a3d();}export const roleDetail={'service':'role','command':a142_0x44f620(0x15c),'description':'Show\x20a\x20single\x20role\x27s\x20detail','risk':a142_0x44f620(0x158),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x118ac9){const _0x2649cd=a142_0x44f620,_0x2df979=_0x118ac9[_0x2649cd(0x153)]('id'),_0x2bcfe3=await getRoleById(_0x118ac9['appCode'],_0x2df979);return{'ok':!![],'data':{'role':projectRole(_0x2bcfe3)},'message':_0x2649cd(0x14f)+_0x2bcfe3[_0x2649cd(0x156)]+'\x20('+_0x2bcfe3[_0x2649cd(0x151)]+')'};}};
1
+ function a144_0x2d13(){const _0x3fe20e=['3741950uOTHuT','role','read','Show\x20a\x20single\x20role\x27s\x20detail','368ZerzbE','appCode','7150690SSKahe','765KnlEco','418168jGBYff','117108oXmoMA','1603582NEsksX','42ihybHe','3292xoqunD','63301KbRyit','roleName','Role\x20','detail'];a144_0x2d13=function(){return _0x3fe20e;};return a144_0x2d13();}const a144_0x2de43e=a144_0x65b6;(function(_0x4ee284,_0x50df65){const _0x1ec2c0=a144_0x65b6,_0x30b990=_0x4ee284();while(!![]){try{const _0x3204a1=parseInt(_0x1ec2c0(0x7f))/0x1+-parseInt(_0x1ec2c0(0x81))/0x2+parseInt(_0x1ec2c0(0x7e))/0x3*(parseInt(_0x1ec2c0(0x83))/0x4)+-parseInt(_0x1ec2c0(0x77))/0x5+parseInt(_0x1ec2c0(0x82))/0x6*(parseInt(_0x1ec2c0(0x84))/0x7)+-parseInt(_0x1ec2c0(0x7b))/0x8*(-parseInt(_0x1ec2c0(0x80))/0x9)+parseInt(_0x1ec2c0(0x7d))/0xa;if(_0x3204a1===_0x50df65)break;else _0x30b990['push'](_0x30b990['shift']());}catch(_0x4a62a5){_0x30b990['push'](_0x30b990['shift']());}}}(a144_0x2d13,0x6f076));function a144_0x65b6(_0xb8e2a,_0x121c0c){_0xb8e2a=_0xb8e2a-0x76;const _0x2d13c2=a144_0x2d13();let _0x65b615=_0x2d13c2[_0xb8e2a];return _0x65b615;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';export const roleDetail={'service':a144_0x2de43e(0x78),'command':a144_0x2de43e(0x76),'description':a144_0x2de43e(0x7a),'risk':a144_0x2de43e(0x79),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x518d57){const _0x1cde55=a144_0x2de43e,_0x6b92b=_0x518d57['num']('id'),_0xfe3ced=await getRoleById(_0x518d57[_0x1cde55(0x7c)],_0x6b92b);return{'ok':!![],'data':{'role':projectRole(_0xfe3ced)},'message':_0x1cde55(0x86)+_0xfe3ced[_0x1cde55(0x85)]+'\x20('+_0xfe3ced['roleType']+')'};}};
@@ -1 +1 @@
1
- (function(_0x20b137,_0x16fc78){const _0x540548=a143_0x2df9,_0x33a2f=_0x20b137();while(!![]){try{const _0x40e291=parseInt(_0x540548(0x133))/0x1+parseInt(_0x540548(0x139))/0x2+-parseInt(_0x540548(0x130))/0x3*(parseInt(_0x540548(0x13a))/0x4)+-parseInt(_0x540548(0x136))/0x5*(parseInt(_0x540548(0x132))/0x6)+-parseInt(_0x540548(0x131))/0x7*(parseInt(_0x540548(0x138))/0x8)+-parseInt(_0x540548(0x13b))/0x9*(-parseInt(_0x540548(0x134))/0xa)+parseInt(_0x540548(0x137))/0xb*(-parseInt(_0x540548(0x135))/0xc);if(_0x40e291===_0x16fc78)break;else _0x33a2f['push'](_0x33a2f['shift']());}catch(_0x5aa744){_0x33a2f['push'](_0x33a2f['shift']());}}}(a143_0x4766,0xdbc9c));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';function a143_0x4766(){const _0x5c631d=['576bAbRVX','31077bZAGnB','7LyxTSv','25242ChEWrD','589262IcejtD','143270JxBxQG','6698892GKbFpp','575MmuVFE','11JmQLjj','357688ouVVWH','3095592smbAaM','412FTCSDG'];a143_0x4766=function(){return _0x5c631d;};return a143_0x4766();}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';import{roleUserRemove}from'../../commands/role/user-remove.js';function a143_0x2df9(_0x21bdf5,_0x5e95b3){_0x21bdf5=_0x21bdf5-0x130;const _0x4766fc=a143_0x4766();let _0x2df97e=_0x4766fc[_0x21bdf5];return _0x2df97e;}export const roleDefinitions=[roleList,roleDetail,roleCreate,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
1
+ (function(_0x4e0fcf,_0x5d6771){const _0x412237=a145_0x2351,_0x7b7e41=_0x4e0fcf();while(!![]){try{const _0x24dbf3=-parseInt(_0x412237(0xfe))/0x1+-parseInt(_0x412237(0x100))/0x2+-parseInt(_0x412237(0xfb))/0x3+parseInt(_0x412237(0x102))/0x4*(-parseInt(_0x412237(0xff))/0x5)+-parseInt(_0x412237(0xfc))/0x6+-parseInt(_0x412237(0x103))/0x7*(parseInt(_0x412237(0x101))/0x8)+-parseInt(_0x412237(0xfd))/0x9*(-parseInt(_0x412237(0x104))/0xa);if(_0x24dbf3===_0x5d6771)break;else _0x7b7e41['push'](_0x7b7e41['shift']());}catch(_0x3de9ef){_0x7b7e41['push'](_0x7b7e41['shift']());}}}(a145_0xf6e1,0x2f7d7));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 a145_0x2351(_0xe3e8c,_0x10588d){_0xe3e8c=_0xe3e8c-0xfb;const _0xf6e1f0=a145_0xf6e1();let _0x235145=_0xf6e1f0[_0xe3e8c];return _0x235145;}import{roleUserRemove}from'../../commands/role/user-remove.js';function a145_0xf6e1(){const _0x2d69c8=['360184lhhWPo','3928exChnC','96uBEOXE','3199ezkypJ','7175050fnBVqy','263025ThFeUE','605034fNTJoN','18gmahcZ','354074zkXhTj','61130sOXbvU'];a145_0xf6e1=function(){return _0x2d69c8;};return a145_0xf6e1();}export const roleDefinitions=[roleList,roleDetail,roleCreate,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
@@ -1 +1 @@
1
- const a144_0x45e292=a144_0x30ec;function a144_0x30ec(_0x88fd67,_0x35134a){_0x88fd67=_0x88fd67-0x11f;const _0x2a7d84=a144_0x2a7d();let _0x30ec9c=_0x2a7d84[_0x88fd67];return _0x30ec9c;}(function(_0xfea005,_0x410d3e){const _0x1e3c38=a144_0x30ec,_0x1c31f1=_0xfea005();while(!![]){try{const _0x34ba12=parseInt(_0x1e3c38(0x121))/0x1+parseInt(_0x1e3c38(0x130))/0x2+-parseInt(_0x1e3c38(0x123))/0x3*(parseInt(_0x1e3c38(0x139))/0x4)+parseInt(_0x1e3c38(0x136))/0x5+-parseInt(_0x1e3c38(0x13b))/0x6+parseInt(_0x1e3c38(0x12f))/0x7*(parseInt(_0x1e3c38(0x127))/0x8)+parseInt(_0x1e3c38(0x138))/0x9*(-parseInt(_0x1e3c38(0x143))/0xa);if(_0x34ba12===_0x410d3e)break;else _0x1c31f1['push'](_0x1c31f1['shift']());}catch(_0x29f9f2){_0x1c31f1['push'](_0x1c31f1['shift']());}}}(a144_0x2a7d,0x258ae));import{listAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a144_0x2a7d(){const _0xe886d3=['Page\x20size\x20(1-100)','page','type','includes','10YLJTbN','Invalid\x20--type\x20\x22','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','number','list','135328ofQJSN','USER','3rdHSAU','ADMIN','pagesize','validation','80oJvMWl','string','length','--pagesize\x20must\x20be\x20between\x201\x20and\x20100.','join','\x20role(s)','read','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','211512kAshUZ','592884JXpDRt','DEV','num','toUpperCase','roleType','trim','1425250IZpNot','str','4418937qhWjpv','962068fxfmTy','filter','802176DNvbUR','Use\x20one\x20of:\x20','Filter\x20by\x20role\x20type','Page\x20index\x20(1-based)'];a144_0x2a7d=function(){return _0xe886d3;};return a144_0x2a7d();}import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=[a144_0x45e292(0x124),a144_0x45e292(0x131),a144_0x45e292(0x122),'CUSTOM'];export const roleList={'service':'role','command':a144_0x45e292(0x120),'description':a144_0x45e292(0x145),'risk':a144_0x45e292(0x12d),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a144_0x45e292(0x141),'type':a144_0x45e292(0x128),'required':![],'description':a144_0x45e292(0x13d),'enum':ROLE_TYPES},{'name':a144_0x45e292(0x140),'type':a144_0x45e292(0x11f),'description':a144_0x45e292(0x13e),'default':0x1},{'name':a144_0x45e292(0x125),'type':a144_0x45e292(0x11f),'description':a144_0x45e292(0x13f),'default':0x64}],async 'validate'(_0x9df23){const _0x2dc7de=a144_0x45e292,_0x48df71=_0x9df23[_0x2dc7de(0x137)]('type')[_0x2dc7de(0x135)]();if(_0x48df71&&!ROLE_TYPES[_0x2dc7de(0x142)](_0x48df71['toUpperCase']()))throw CliErrors[_0x2dc7de(0x126)](_0x2dc7de(0x144)+_0x48df71+'\x22.',_0x2dc7de(0x13c)+ROLE_TYPES[_0x2dc7de(0x12b)](',\x20')+'.');const _0x41a8cf=_0x9df23['num'](_0x2dc7de(0x140),0x1),_0x39b1f4=_0x9df23[_0x2dc7de(0x132)](_0x2dc7de(0x125),0x64);if(_0x41a8cf<0x1)throw CliErrors['validation'](_0x2dc7de(0x12e));if(_0x39b1f4<0x1||_0x39b1f4>0x64)throw CliErrors['validation'](_0x2dc7de(0x12a));},async 'execute'(_0x480ee3){const _0x47cbcb=a144_0x45e292,_0x3a1bfc=_0x480ee3['num'](_0x47cbcb(0x140),0x1)||0x1,_0x57c34c=_0x480ee3[_0x47cbcb(0x132)](_0x47cbcb(0x125),0x64)||0x64,_0x1d3664=_0x480ee3['str'](_0x47cbcb(0x141))[_0x47cbcb(0x135)]()[_0x47cbcb(0x133)](),{items:_0x272ba5,paging:_0x6fe783}=await listAppRoles(_0x480ee3['appCode'],{'currentPage':_0x3a1bfc,'pageSize':_0x57c34c}),_0x14a6e2=_0x1d3664?_0x272ba5[_0x47cbcb(0x13a)](_0x3193f1=>_0x3193f1[_0x47cbcb(0x134)]===_0x1d3664):_0x272ba5,_0xea2cc2=_0x14a6e2['map'](projectRole);return{'ok':!![],'data':{'roles':_0xea2cc2,'paging':_0x6fe783},'message':'Found\x20'+_0xea2cc2[_0x47cbcb(0x129)]+_0x47cbcb(0x12c)};}};
1
+ const a146_0x4ea971=a146_0x1205;(function(_0x2571c6,_0x944dbe){const _0x492d6d=a146_0x1205,_0xc76e24=_0x2571c6();while(!![]){try{const _0x49e070=-parseInt(_0x492d6d(0x9c))/0x1+-parseInt(_0x492d6d(0x9d))/0x2+-parseInt(_0x492d6d(0x99))/0x3*(parseInt(_0x492d6d(0xb4))/0x4)+-parseInt(_0x492d6d(0xa4))/0x5*(parseInt(_0x492d6d(0xb0))/0x6)+parseInt(_0x492d6d(0xa9))/0x7*(parseInt(_0x492d6d(0x96))/0x8)+-parseInt(_0x492d6d(0xb8))/0x9*(parseInt(_0x492d6d(0x9e))/0xa)+-parseInt(_0x492d6d(0xba))/0xb*(-parseInt(_0x492d6d(0xb7))/0xc);if(_0x49e070===_0x944dbe)break;else _0xc76e24['push'](_0xc76e24['shift']());}catch(_0x1265ee){_0xc76e24['push'](_0xc76e24['shift']());}}}(a146_0x12d3,0x1c93d));function a146_0x1205(_0x9474d8,_0x5c1cd5){_0x9474d8=_0x9474d8-0x95;const _0x12d369=a146_0x12d3();let _0x12058f=_0x12d369[_0x9474d8];return _0x12058f;}import{listAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=['ADMIN',a146_0x4ea971(0x9a),a146_0x4ea971(0xb2),'CUSTOM'];function a146_0x12d3(){const _0x47bcd8=['string','read','type','pagesize','Page\x20size\x20(1-100)','738bYuQgI','toUpperCase','USER','Page\x20index\x20(1-based)','50972cZsAHR','page','length','60AOidyA','1764315KEzAsp','includes','1224795ruTrRY','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','1562984JLRpcN','validation','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','3vGUUHf','DEV','map','225237VCgbqf','49788QzPxwl','10USKiDO','number','--pagesize\x20must\x20be\x20between\x201\x20and\x20100.','Use\x20one\x20of:\x20','str','num','7160iZrsaM','Found\x20','list','join','Filter\x20by\x20role\x20type','7GVCSdM','filter'];a146_0x12d3=function(){return _0x47bcd8;};return a146_0x12d3();}export const roleList={'service':'role','command':a146_0x4ea971(0xa6),'description':a146_0x4ea971(0x95),'risk':a146_0x4ea971(0xac),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a146_0x4ea971(0xad),'type':a146_0x4ea971(0xab),'required':![],'description':a146_0x4ea971(0xa8),'enum':ROLE_TYPES},{'name':a146_0x4ea971(0xb5),'type':a146_0x4ea971(0x9f),'description':a146_0x4ea971(0xb3),'default':0x1},{'name':a146_0x4ea971(0xae),'type':'number','description':a146_0x4ea971(0xaf),'default':0x64}],async 'validate'(_0x3860e6){const _0x43984f=a146_0x4ea971,_0x9df034=_0x3860e6['str'](_0x43984f(0xad))['trim']();if(_0x9df034&&!ROLE_TYPES[_0x43984f(0xb9)](_0x9df034[_0x43984f(0xb1)]()))throw CliErrors[_0x43984f(0x97)]('Invalid\x20--type\x20\x22'+_0x9df034+'\x22.',_0x43984f(0xa1)+ROLE_TYPES[_0x43984f(0xa7)](',\x20')+'.');const _0x126df6=_0x3860e6[_0x43984f(0xa3)]('page',0x1),_0x4eeb8c=_0x3860e6[_0x43984f(0xa3)](_0x43984f(0xae),0x64);if(_0x126df6<0x1)throw CliErrors['validation'](_0x43984f(0x98));if(_0x4eeb8c<0x1||_0x4eeb8c>0x64)throw CliErrors[_0x43984f(0x97)](_0x43984f(0xa0));},async 'execute'(_0x2559dc){const _0x311cf5=a146_0x4ea971,_0x4fee93=_0x2559dc[_0x311cf5(0xa3)](_0x311cf5(0xb5),0x1)||0x1,_0xb51469=_0x2559dc['num']('pagesize',0x64)||0x64,_0x529283=_0x2559dc[_0x311cf5(0xa2)](_0x311cf5(0xad))['trim']()[_0x311cf5(0xb1)](),{items:_0x3a2973,paging:_0x40f2a8}=await listAppRoles(_0x2559dc['appCode'],{'currentPage':_0x4fee93,'pageSize':_0xb51469}),_0x5b656d=_0x529283?_0x3a2973[_0x311cf5(0xaa)](_0x5e7a5a=>_0x5e7a5a['roleType']===_0x529283):_0x3a2973,_0x5473ce=_0x5b656d[_0x311cf5(0x9b)](projectRole);return{'ok':!![],'data':{'roles':_0x5473ce,'paging':_0x40f2a8},'message':_0x311cf5(0xa5)+_0x5473ce[_0x311cf5(0xb6)]+'\x20role(s)'};}};
@@ -1 +1 @@
1
- const a145_0x5b0cc8=a145_0x5077;(function(_0x4ec0b0,_0x15c280){const _0x3b90f7=a145_0x5077,_0x187b6b=_0x4ec0b0();while(!![]){try{const _0xc977d=-parseInt(_0x3b90f7(0x19d))/0x1+-parseInt(_0x3b90f7(0x1bc))/0x2*(parseInt(_0x3b90f7(0x1b5))/0x3)+-parseInt(_0x3b90f7(0x1c4))/0x4+-parseInt(_0x3b90f7(0x19c))/0x5*(-parseInt(_0x3b90f7(0x1bd))/0x6)+parseInt(_0x3b90f7(0x1b7))/0x7+-parseInt(_0x3b90f7(0x1b8))/0x8+parseInt(_0x3b90f7(0x1d2))/0x9;if(_0xc977d===_0x15c280)break;else _0x187b6b['push'](_0x187b6b['shift']());}catch(_0x5d58bd){_0x187b6b['push'](_0x187b6b['shift']());}}}(a145_0x1230,0x33098));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':a145_0x5b0cc8(0x1aa),'required':!![],'description':'Role\x20id\x20(from\x20`role\x20list`)'};export const ROLE_REF_FLAG={'name':a145_0x5b0cc8(0x195),'type':a145_0x5b0cc8(0x1cb),'required':!![],'description':a145_0x5b0cc8(0x1d7)};export const USER_REF_FLAG={'name':'user','type':a145_0x5b0cc8(0x1cb),'required':!![],'description':a145_0x5b0cc8(0x199)};function a145_0x1230(){const _0x304f0e=['string','name','\x20not\x20found\x20in\x20the\x20user-role\x20list.','Disambiguate\x20with\x20--role\x20<id>.','\x20not\x20found\x20in\x20app\x20','flagMissing','nickname','10323936SCZQlW','Pass\x20--user\x20<id|name>.','user-add','userCount','includes','Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)','filter','str','Role\x20id\x20',';\x20no\x20change.','expectUserCount','remark','\x20built-in\x20role\x20','role','Multiple\x20tenant\x20members\x20match\x20\x22','flag','Pass\x20--role\x20<id|name>.','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','userId','toLowerCase','138965LEzvar','127624PJetjD','test','findIndex','splice','length','appCode','Role\x20name','Missing\x20user\x20reference.','POST','roleType','Anti-drift\x20check\x20failed:\x20expected\x20','user','/smartapi/permit/user-role/update-user-list','number','join','totalCount','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','User\x20','validation','CUSTOM','permitCount','\x20is\x20not\x20a\x20member\x20of\x20role\x20','54YsQnva','\x22:\x20','21595LvvXmT','3337152HzFNWT','No\x20tenant\x20member\x20matches\x20\x22','username','push','32690sTjNeo','36naKaUD','tenant','userList','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.','Missing\x20role\x20reference.','roleName','map','1075684PAKUMx','expect-user-count','find','ADMIN','DEV','dryRun','trim'];a145_0x1230=function(){return _0x304f0e;};return a145_0x1230();}export const NAME_FLAG={'name':a145_0x5b0cc8(0x1cc),'type':a145_0x5b0cc8(0x1cb),'required':!![],'description':a145_0x5b0cc8(0x1a3)};export const USER_NAME_FLAG={'name':'name','type':a145_0x5b0cc8(0x1cb),'required':!![],'description':a145_0x5b0cc8(0x1ad)};export const REMARK_FLAG={'name':a145_0x5b0cc8(0x193),'type':'string','required':![],'description':'Optional\x20role\x20remark/description'};export const EXPECT_USER_COUNT_FLAG={'name':a145_0x5b0cc8(0x1c5),'type':a145_0x5b0cc8(0x1aa),'required':![],'description':'Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs'};export const BUILTIN_ROLE_TYPES=['ADMIN',a145_0x5b0cc8(0x1c8),'USER'];export function isBuiltinRole(_0x4ce9e7){const _0x5df071=a145_0x5b0cc8;return BUILTIN_ROLE_TYPES[_0x5df071(0x1d6)](_0x4ce9e7);}export function assertCustomRole(_0x253e06,_0x50fe01){const _0x169dc0=a145_0x5b0cc8;if(_0x253e06[_0x169dc0(0x1a6)]!==_0x169dc0(0x1b2))throw CliErrors[_0x169dc0(0x1b1)]('Cannot\x20'+_0x50fe01+_0x169dc0(0x194)+_0x253e06[_0x169dc0(0x1c2)]+'\x20('+_0x253e06[_0x169dc0(0x1a6)]+').',_0x169dc0(0x1ae));}export function assertPermConfigurable(_0x1d9f03){const _0x835a84=a145_0x5b0cc8;if(_0x1d9f03[_0x835a84(0x1a6)]==='DEV'||_0x1d9f03[_0x835a84(0x1a6)]===_0x835a84(0x1c7))throw CliErrors[_0x835a84(0x1b1)]('Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20'+_0x1d9f03[_0x835a84(0x1c2)]+'\x20('+_0x1d9f03[_0x835a84(0x1a6)]+').','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.');}export function projectRole(_0x52b4c6){const _0x4b514e=a145_0x5b0cc8;return{'id':_0x52b4c6['id'],'roleName':_0x52b4c6[_0x4b514e(0x1c2)],'roleType':_0x52b4c6[_0x4b514e(0x1a6)],'remark':_0x52b4c6[_0x4b514e(0x193)],'userCount':_0x52b4c6[_0x4b514e(0x1d5)],'permitCount':_0x52b4c6[_0x4b514e(0x1b3)],'builtin':isBuiltinRole(_0x52b4c6[_0x4b514e(0x1a6)])};}export async function resolveRoleRef(_0x421343,_0x320b6f){const _0x4f3dc2=a145_0x5b0cc8,_0x5c6bf2=_0x320b6f['trim']();if(!_0x5c6bf2)throw CliErrors[_0x4f3dc2(0x1b1)](_0x4f3dc2(0x1c1),_0x4f3dc2(0x198));if(/^\d+$/[_0x4f3dc2(0x19e)](_0x5c6bf2))return getRoleById(_0x421343,Number(_0x5c6bf2));const _0x55ed0b=await listAllAppRoles(_0x421343),_0x4caf72=_0x55ed0b[_0x4f3dc2(0x18e)](_0x1bff60=>_0x1bff60[_0x4f3dc2(0x1c2)]===_0x5c6bf2);if(_0x4caf72[_0x4f3dc2(0x1a1)]===0x0)throw CliErrors['validation']('Role\x20name\x20\x22'+_0x5c6bf2+'\x22\x20not\x20found\x20in\x20app\x20'+_0x421343+'.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.');if(_0x4caf72['length']>0x1){const _0x48791b=_0x4caf72[_0x4f3dc2(0x1c3)](_0x17265e=>_0x17265e['id'])[_0x4f3dc2(0x1ab)](',\x20');throw CliErrors[_0x4f3dc2(0x1b1)]('Role\x20name\x20\x22'+_0x5c6bf2+'\x22\x20is\x20ambiguous\x20(ids:\x20'+_0x48791b+').',_0x4f3dc2(0x1ce));}return _0x4caf72[0x0];}export async function getRoleById(_0x15a1a3,_0x42cca9){const _0xc67f6a=a145_0x5b0cc8,_0x4ff817=await getAppRole(_0x42cca9);if(!_0x4ff817)throw CliErrors['validation'](_0xc67f6a(0x190)+_0x42cca9+_0xc67f6a(0x1cf)+_0x15a1a3+'.',_0xc67f6a(0x1af));return _0x4ff817;}async function listAllAppRoles(_0x2dae3c){const _0x5afcd2=a145_0x5b0cc8,_0x23c540=0x64,_0x4fd008=[];for(let _0x2e9993=0x1;;_0x2e9993+=0x1){const {items:_0x4718c0,paging:_0x16c5f0}=await listAppRoles(_0x2dae3c,{'currentPage':_0x2e9993,'pageSize':_0x23c540});_0x4fd008[_0x5afcd2(0x1bb)](..._0x4718c0);if(_0x4718c0[_0x5afcd2(0x1a1)]<_0x23c540||_0x16c5f0&&_0x4fd008[_0x5afcd2(0x1a1)]>=_0x16c5f0[_0x5afcd2(0x1ac)])return _0x4fd008;}}export async function resolveTenantCode(){const _0x20d344=a145_0x5b0cc8,_0x47aae3=await getSessionUserInfo(),_0x399b1a=_0x47aae3?.[_0x20d344(0x1a8)]?.[_0x20d344(0x1be)]?.['tenant_code'];if(!_0x399b1a)throw CliErrors['authRequired']('Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.');return _0x399b1a;}function matchMember(_0x433a47,_0x37050b){const _0x52b575=a145_0x5b0cc8,_0x87215b=_0x37050b[_0x52b575(0x1ca)]()[_0x52b575(0x19b)]();return(_0x433a47[_0x52b575(0x1d1)]??'')[_0x52b575(0x19b)]()===_0x87215b||(_0x433a47[_0x52b575(0x1ba)]??'')[_0x52b575(0x19b)]()===_0x87215b;}export async function resolveUserRef(_0x46a4c0){const _0x43af47=a145_0x5b0cc8,_0x11c325=_0x46a4c0[_0x43af47(0x1ca)]();if(!_0x11c325)throw CliErrors[_0x43af47(0x1b1)](_0x43af47(0x1a4),'Pass\x20--user\x20<id|name>.');const _0xa19ee4=await resolveTenantCode(),_0x54de3f=await getTenantMembers(_0xa19ee4);if(/^\d+$/['test'](_0x11c325)){const _0x226cb6=Number(_0x11c325),_0x5a19a1=_0x54de3f[_0x43af47(0x1c6)](_0x10fc4b=>_0x10fc4b[_0x43af47(0x19a)]===_0x226cb6);return{'userId':_0x226cb6,'username':_0x5a19a1?.[_0x43af47(0x1ba)]??String(_0x226cb6),'nickname':_0x5a19a1?.[_0x43af47(0x1d1)],'matchedBy':'id'};}const _0x2a0747=_0x54de3f['filter'](_0x595067=>matchMember(_0x595067,_0x11c325));if(_0x2a0747[_0x43af47(0x1a1)]===0x0)throw CliErrors[_0x43af47(0x1b1)](_0x43af47(0x1b9)+_0x11c325+'\x22.',_0x43af47(0x1c0));if(_0x2a0747[_0x43af47(0x1a1)]>0x1){const _0x4cc8a1=_0x2a0747[_0x43af47(0x1c3)](_0x3a83fa=>(_0x3a83fa[_0x43af47(0x1d1)]??_0x3a83fa[_0x43af47(0x1ba)]??'?')+'('+_0x3a83fa[_0x43af47(0x19a)]+')')[_0x43af47(0x1ab)](',\x20');throw CliErrors[_0x43af47(0x1b1)](_0x43af47(0x196)+_0x11c325+_0x43af47(0x1b6)+_0x4cc8a1+'.','Disambiguate\x20with\x20--user\x20<id>.');}const _0x4cb822=_0x2a0747[0x0];return{'userId':_0x4cb822['userId'],'username':_0x4cb822[_0x43af47(0x1ba)]??String(_0x4cb822[_0x43af47(0x19a)]),'nickname':_0x4cb822[_0x43af47(0x1d1)],'matchedBy':_0x43af47(0x1cc)};}export const UPDATE_USER_LIST_PATH=a145_0x5b0cc8(0x1a9);function userIdsOf(_0x38d545){const _0x360fae=a145_0x5b0cc8;return(_0x38d545?.[_0x360fae(0x1bf)]??[])['map'](_0x5e1430=>_0x5e1430[_0x360fae(0x19a)]);}function a145_0x5077(_0x4732f2,_0x3fa785){_0x4732f2=_0x4732f2-0x18e;const _0x1230f0=a145_0x1230();let _0x5077bf=_0x1230f0[_0x4732f2];return _0x5077bf;}export function computeRoleUserMutation(_0x2e9358){const _0x9a028e=a145_0x5b0cc8,{operation:_0x4fcc86,appCode:_0x3ea095,roleUsers:_0x391232,targetRoleId:_0x6867ba,user:_0x5af6d9}=_0x2e9358,_0x1fad28=_0x391232[_0x9a028e(0x1c6)](_0x23c562=>_0x23c562['id']===_0x6867ba);if(!_0x1fad28)throw CliErrors[_0x9a028e(0x1b1)](_0x9a028e(0x190)+_0x6867ba+_0x9a028e(0x1cd),'Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');const _0x164019=userIdsOf(_0x1fad28),_0x1abd62=[];if(_0x2e9358['expectUserCount']!==undefined&&_0x2e9358[_0x9a028e(0x192)]!==_0x164019[_0x9a028e(0x1a1)])throw CliErrors[_0x9a028e(0x1b1)](_0x9a028e(0x1a7)+_0x2e9358[_0x9a028e(0x192)]+'\x20member(s)\x20but\x20role\x20has\x20'+_0x164019['length']+'.','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.');const _0x334584=_0x164019['includes'](_0x5af6d9[_0x9a028e(0x19a)]);let _0x5a77bf=![];const _0x5078a3=[..._0x1fad28['userList']];if(_0x4fcc86===_0x9a028e(0x1d4))_0x334584?_0x1abd62[_0x9a028e(0x1bb)](_0x9a028e(0x1b0)+_0x5af6d9[_0x9a028e(0x19a)]+'\x20is\x20already\x20a\x20member\x20of\x20role\x20'+_0x1fad28['roleName']+';\x20no\x20change.'):(_0x5078a3[_0x9a028e(0x1bb)]({'userId':_0x5af6d9[_0x9a028e(0x19a)],'username':_0x5af6d9[_0x9a028e(0x1ba)],..._0x5af6d9['nickname']?{'nickname':_0x5af6d9[_0x9a028e(0x1d1)]}:{}}),_0x5a77bf=!![]);else{if(!_0x334584)_0x1abd62[_0x9a028e(0x1bb)]('User\x20'+_0x5af6d9[_0x9a028e(0x19a)]+_0x9a028e(0x1b4)+_0x1fad28[_0x9a028e(0x1c2)]+_0x9a028e(0x191));else{const _0x4ac2fc=_0x5078a3[_0x9a028e(0x19f)](_0x523e63=>_0x523e63['userId']===_0x5af6d9[_0x9a028e(0x19a)]);if(_0x4ac2fc>=0x0)_0x5078a3[_0x9a028e(0x1a0)](_0x4ac2fc,0x1);_0x5a77bf=!![];}}const _0x54683f=_0x391232[_0x9a028e(0x1c3)](_0x54c799=>_0x54c799['id']===_0x6867ba?{..._0x54c799,'userList':_0x5078a3}:_0x54c799),_0x266cb5=_0x5078a3[_0x9a028e(0x1c3)](_0x803b4e=>_0x803b4e[_0x9a028e(0x19a)]),_0x3ab11f={'operation':_0x4fcc86,'selector':{'appCode':_0x3ea095,'roleId':_0x6867ba,'roleName':_0x1fad28[_0x9a028e(0x1c2)],'userId':_0x5af6d9['userId']},'before':{'userIds':_0x164019},'after':{'userIds':_0x266cb5},'dryRun':_0x2e9358[_0x9a028e(0x1c9)],'backend':{'method':_0x9a028e(0x1a5),'path':UPDATE_USER_LIST_PATH},'warnings':_0x1abd62};return{'roleList':_0x54683f,'mutation':_0x3ab11f,'changed':_0x5a77bf};}export async function loadRoleUsers(_0x6a4b87){return listRoleUsers(_0x6a4b87);}export function readRoleRef(_0x12ce1a){const _0x17a459=a145_0x5b0cc8,_0x58dcc4=_0x12ce1a['str']('role')[_0x17a459(0x1ca)]();if(!_0x58dcc4)throw CliErrors[_0x17a459(0x1d0)](_0x17a459(0x195),_0x17a459(0x198));return _0x58dcc4;}export async function prepareUserMutation(_0x40783f,_0x27ca88,_0xfdb42c){const _0x1d8e26=a145_0x5b0cc8,_0x3c3e6f=readRoleRef(_0x40783f),_0x144adb=_0x40783f[_0x1d8e26(0x18f)]('user')['trim']();if(!_0x144adb)throw CliErrors[_0x1d8e26(0x1d0)](_0x1d8e26(0x1a8),_0x1d8e26(0x1d3));const _0x20c6d7=_0x40783f[_0x1d8e26(0x197)]('expect-user-count'),_0x262fa7=_0x20c6d7===undefined||_0x20c6d7===null?undefined:Number(_0x20c6d7),_0x559365=await resolveRoleRef(_0x40783f['appCode'],_0x3c3e6f),_0x13b275=await resolveUserRef(_0x144adb),_0x5e10e5=await loadRoleUsers(_0x40783f[_0x1d8e26(0x1a2)]);return computeRoleUserMutation({'operation':_0x27ca88,'appCode':_0x40783f[_0x1d8e26(0x1a2)],'roleUsers':_0x5e10e5,'targetRoleId':_0x559365['id'],'user':{'userId':_0x13b275[_0x1d8e26(0x19a)],'username':_0x13b275['username'],'nickname':_0x13b275[_0x1d8e26(0x1d1)]},'dryRun':_0xfdb42c,..._0x262fa7!==undefined?{'expectUserCount':_0x262fa7}:{}});}
1
+ const a147_0x37981f=a147_0x99de;(function(_0x4472ae,_0x179a16){const _0x37c757=a147_0x99de,_0x271bdb=_0x4472ae();while(!![]){try{const _0x240c56=-parseInt(_0x37c757(0x1d4))/0x1+-parseInt(_0x37c757(0x1c2))/0x2*(-parseInt(_0x37c757(0x204))/0x3)+parseInt(_0x37c757(0x1d6))/0x4*(-parseInt(_0x37c757(0x1d2))/0x5)+parseInt(_0x37c757(0x201))/0x6+-parseInt(_0x37c757(0x205))/0x7*(parseInt(_0x37c757(0x1c7))/0x8)+-parseInt(_0x37c757(0x1c4))/0x9*(parseInt(_0x37c757(0x1dc))/0xa)+-parseInt(_0x37c757(0x1d1))/0xb*(-parseInt(_0x37c757(0x1c9))/0xc);if(_0x240c56===_0x179a16)break;else _0x271bdb['push'](_0x271bdb['shift']());}catch(_0x3946ee){_0x271bdb['push'](_0x271bdb['shift']());}}}(a147_0x4afe,0x4e662));import{getAppRole,getTenantMembers,listAppRoles,listRoleUsers}from'../../core/api-client.js';import{getSessionUserInfo}from'../../auth/get-session-user.js';import{CliErrors}from'../../errors.js';function a147_0x4afe(){const _0x1f8a69=['697980TdKVDX','join','expectUserCount','User\x20','Role\x20id\x20','dryRun','test','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','286rPhoHz','39135ObKRDd','user-add','328685dyVlvS','findIndex','200pLcrKy','nickname','userCount','appCode','length','Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)','12910fGvBHg','user','push','POST','\x22\x20not\x20found\x20in\x20app\x20','\x20is\x20already\x20a\x20member\x20of\x20role\x20','includes','\x20member(s)\x20but\x20role\x20has\x20','toLowerCase','role','map','userId','Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.','flag','filter','trim','totalCount','Missing\x20role\x20reference.','str',';\x20no\x20change.','splice','\x20not\x20found\x20in\x20app\x20','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','Missing\x20user\x20reference.','Role\x20name\x20\x22','expect-user-count','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','\x20not\x20found\x20in\x20the\x20user-role\x20list.','tenant_code','Anti-drift\x20check\x20failed:\x20expected\x20','DEV','userList','/smartapi/permit/user-role/update-user-list','\x20is\x20not\x20a\x20member\x20of\x20role\x20','Pass\x20--user\x20<id|name>.','find','137580wRJCsx','validation','\x22\x20is\x20ambiguous\x20(ids:\x20','2109MgfsDk','21UTJEyG','ADMIN','Role\x20name','flagMissing','name','Pass\x20--role\x20<id|name>.','roleType','string','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','roleName','tenant','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.','authRequired','Role\x20id\x20(from\x20`role\x20list`)','username','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','Disambiguate\x20with\x20--role\x20<id>.','502YkLuzh','permitCount','1035CORsHd','remark','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','1392136KkzavU','number'];a147_0x4afe=function(){return _0x1f8a69;};return a147_0x4afe();}export const ROLE_ID_FLAG={'name':'id','type':a147_0x37981f(0x1c8),'required':!![],'description':a147_0x37981f(0x1be)};export const ROLE_REF_FLAG={'name':'role','type':a147_0x37981f(0x1b8),'required':!![],'description':a147_0x37981f(0x1db)};export const USER_REF_FLAG={'name':a147_0x37981f(0x1dd),'type':a147_0x37981f(0x1b8),'required':!![],'description':a147_0x37981f(0x1f7)};export const NAME_FLAG={'name':a147_0x37981f(0x209),'type':a147_0x37981f(0x1b8),'required':!![],'description':a147_0x37981f(0x207)};export const USER_NAME_FLAG={'name':a147_0x37981f(0x209),'type':a147_0x37981f(0x1b8),'required':!![],'description':a147_0x37981f(0x1d0)};export const REMARK_FLAG={'name':a147_0x37981f(0x1c5),'type':'string','required':![],'description':'Optional\x20role\x20remark/description'};export const EXPECT_USER_COUNT_FLAG={'name':a147_0x37981f(0x1f5),'type':a147_0x37981f(0x1c8),'required':![],'description':a147_0x37981f(0x1b9)};export const BUILTIN_ROLE_TYPES=[a147_0x37981f(0x206),a147_0x37981f(0x1fb),'USER'];export function isBuiltinRole(_0x1d2f63){const _0x3f585f=a147_0x37981f;return BUILTIN_ROLE_TYPES[_0x3f585f(0x1e2)](_0x1d2f63);}export function assertCustomRole(_0xaf57ed,_0xd24bf8){const _0x2c97d4=a147_0x37981f;if(_0xaf57ed['roleType']!=='CUSTOM')throw CliErrors['validation']('Cannot\x20'+_0xd24bf8+'\x20built-in\x20role\x20'+_0xaf57ed['roleName']+'\x20('+_0xaf57ed[_0x2c97d4(0x1b7)]+').','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.');}export function assertPermConfigurable(_0xe15f59){const _0x11ad4e=a147_0x37981f;if(_0xe15f59[_0x11ad4e(0x1b7)]===_0x11ad4e(0x1fb)||_0xe15f59['roleType']===_0x11ad4e(0x206))throw CliErrors[_0x11ad4e(0x202)]('Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20'+_0xe15f59['roleName']+'\x20('+_0xe15f59[_0x11ad4e(0x1b7)]+').',_0x11ad4e(0x1f2));}export function projectRole(_0x218efb){const _0x2e8acc=a147_0x37981f;return{'id':_0x218efb['id'],'roleName':_0x218efb[_0x2e8acc(0x1ba)],'roleType':_0x218efb[_0x2e8acc(0x1b7)],'remark':_0x218efb['remark'],'userCount':_0x218efb[_0x2e8acc(0x1d8)],'permitCount':_0x218efb[_0x2e8acc(0x1c3)],'builtin':isBuiltinRole(_0x218efb[_0x2e8acc(0x1b7)])};}export async function resolveRoleRef(_0xca6d62,_0x4fbfe2){const _0x4173b7=a147_0x37981f,_0x57d187=_0x4fbfe2[_0x4173b7(0x1eb)]();if(!_0x57d187)throw CliErrors[_0x4173b7(0x202)](_0x4173b7(0x1ed),_0x4173b7(0x1b6));if(/^\d+$/[_0x4173b7(0x1cf)](_0x57d187))return getRoleById(_0xca6d62,Number(_0x57d187));const _0x323692=await listAllAppRoles(_0xca6d62),_0x49d5cc=_0x323692[_0x4173b7(0x1ea)](_0x462573=>_0x462573[_0x4173b7(0x1ba)]===_0x57d187);if(_0x49d5cc[_0x4173b7(0x1da)]===0x0)throw CliErrors[_0x4173b7(0x202)]('Role\x20name\x20\x22'+_0x57d187+_0x4173b7(0x1e0)+_0xca6d62+'.',_0x4173b7(0x1c0));if(_0x49d5cc[_0x4173b7(0x1da)]>0x1){const _0x390a03=_0x49d5cc[_0x4173b7(0x1e6)](_0x1c936f=>_0x1c936f['id'])[_0x4173b7(0x1ca)](',\x20');throw CliErrors[_0x4173b7(0x202)](_0x4173b7(0x1f4)+_0x57d187+_0x4173b7(0x203)+_0x390a03+').',_0x4173b7(0x1c1));}return _0x49d5cc[0x0];}export async function getRoleById(_0x36f113,_0x2da52d){const _0x57d505=a147_0x37981f,_0x5cc8fc=await getAppRole(_0x2da52d);if(!_0x5cc8fc)throw CliErrors[_0x57d505(0x202)](_0x57d505(0x1cd)+_0x2da52d+_0x57d505(0x1f1)+_0x36f113+'.',_0x57d505(0x1c6));return _0x5cc8fc;}async function listAllAppRoles(_0x240a3d){const _0x5bc8b6=a147_0x37981f,_0x186f0d=0x64,_0x5d8a9f=[];for(let _0x142ee2=0x1;;_0x142ee2+=0x1){const {items:_0x26d469,paging:_0x54b6fe}=await listAppRoles(_0x240a3d,{'currentPage':_0x142ee2,'pageSize':_0x186f0d});_0x5d8a9f[_0x5bc8b6(0x1de)](..._0x26d469);if(_0x26d469[_0x5bc8b6(0x1da)]<_0x186f0d||_0x54b6fe&&_0x5d8a9f[_0x5bc8b6(0x1da)]>=_0x54b6fe[_0x5bc8b6(0x1ec)])return _0x5d8a9f;}}export async function resolveTenantCode(){const _0x1a1df8=a147_0x37981f,_0x1fda9a=await getSessionUserInfo(),_0x233662=_0x1fda9a?.['user']?.[_0x1a1df8(0x1bb)]?.[_0x1a1df8(0x1f9)];if(!_0x233662)throw CliErrors[_0x1a1df8(0x1bd)](_0x1a1df8(0x1e8));return _0x233662;}function matchMember(_0x339c60,_0x2fa31c){const _0x2fa8a6=a147_0x37981f,_0x50ac26=_0x2fa31c[_0x2fa8a6(0x1eb)]()['toLowerCase']();return(_0x339c60[_0x2fa8a6(0x1d7)]??'')[_0x2fa8a6(0x1e4)]()===_0x50ac26||(_0x339c60[_0x2fa8a6(0x1bf)]??'')[_0x2fa8a6(0x1e4)]()===_0x50ac26;}export async function resolveUserRef(_0x4ca9cb){const _0x1d6a05=a147_0x37981f,_0x2469dc=_0x4ca9cb['trim']();if(!_0x2469dc)throw CliErrors['validation'](_0x1d6a05(0x1f3),_0x1d6a05(0x1ff));const _0x2ad914=await resolveTenantCode(),_0x5bf105=await getTenantMembers(_0x2ad914);if(/^\d+$/[_0x1d6a05(0x1cf)](_0x2469dc)){const _0x4e2746=Number(_0x2469dc),_0x34c2c3=_0x5bf105['find'](_0x1c06e7=>_0x1c06e7[_0x1d6a05(0x1e7)]===_0x4e2746);return{'userId':_0x4e2746,'username':_0x34c2c3?.[_0x1d6a05(0x1bf)]??String(_0x4e2746),'nickname':_0x34c2c3?.['nickname'],'matchedBy':'id'};}const _0x33590e=_0x5bf105['filter'](_0xa33bee=>matchMember(_0xa33bee,_0x2469dc));if(_0x33590e[_0x1d6a05(0x1da)]===0x0)throw CliErrors[_0x1d6a05(0x202)]('No\x20tenant\x20member\x20matches\x20\x22'+_0x2469dc+'\x22.',_0x1d6a05(0x1bc));if(_0x33590e[_0x1d6a05(0x1da)]>0x1){const _0x17e4da=_0x33590e[_0x1d6a05(0x1e6)](_0x126acb=>(_0x126acb[_0x1d6a05(0x1d7)]??_0x126acb['username']??'?')+'('+_0x126acb[_0x1d6a05(0x1e7)]+')')['join'](',\x20');throw CliErrors['validation']('Multiple\x20tenant\x20members\x20match\x20\x22'+_0x2469dc+'\x22:\x20'+_0x17e4da+'.','Disambiguate\x20with\x20--user\x20<id>.');}const _0x213957=_0x33590e[0x0];return{'userId':_0x213957[_0x1d6a05(0x1e7)],'username':_0x213957[_0x1d6a05(0x1bf)]??String(_0x213957[_0x1d6a05(0x1e7)]),'nickname':_0x213957[_0x1d6a05(0x1d7)],'matchedBy':_0x1d6a05(0x209)};}export const UPDATE_USER_LIST_PATH=a147_0x37981f(0x1fd);function userIdsOf(_0xabb1f0){const _0x4049b7=a147_0x37981f;return(_0xabb1f0?.[_0x4049b7(0x1fc)]??[])[_0x4049b7(0x1e6)](_0x13faf2=>_0x13faf2['userId']);}export function computeRoleUserMutation(_0x337e58){const _0x17fb0a=a147_0x37981f,{operation:_0x165e0b,appCode:_0x3c6a99,roleUsers:_0x1dc9f6,targetRoleId:_0x58bea8,user:_0x4dec45}=_0x337e58,_0x1c217c=_0x1dc9f6[_0x17fb0a(0x200)](_0x10ced8=>_0x10ced8['id']===_0x58bea8);if(!_0x1c217c)throw CliErrors['validation'](_0x17fb0a(0x1cd)+_0x58bea8+_0x17fb0a(0x1f8),_0x17fb0a(0x1c6));const _0x100f69=userIdsOf(_0x1c217c),_0x2d41c8=[];if(_0x337e58[_0x17fb0a(0x1cb)]!==undefined&&_0x337e58[_0x17fb0a(0x1cb)]!==_0x100f69[_0x17fb0a(0x1da)])throw CliErrors[_0x17fb0a(0x202)](_0x17fb0a(0x1fa)+_0x337e58[_0x17fb0a(0x1cb)]+_0x17fb0a(0x1e3)+_0x100f69[_0x17fb0a(0x1da)]+'.',_0x17fb0a(0x1f6));const _0x2025c5=_0x100f69[_0x17fb0a(0x1e2)](_0x4dec45['userId']);let _0x36e334=![];const _0xda7980=[..._0x1c217c[_0x17fb0a(0x1fc)]];if(_0x165e0b===_0x17fb0a(0x1d3))_0x2025c5?_0x2d41c8['push']('User\x20'+_0x4dec45['userId']+_0x17fb0a(0x1e1)+_0x1c217c[_0x17fb0a(0x1ba)]+_0x17fb0a(0x1ef)):(_0xda7980[_0x17fb0a(0x1de)]({'userId':_0x4dec45['userId'],'username':_0x4dec45[_0x17fb0a(0x1bf)],..._0x4dec45['nickname']?{'nickname':_0x4dec45[_0x17fb0a(0x1d7)]}:{}}),_0x36e334=!![]);else{if(!_0x2025c5)_0x2d41c8[_0x17fb0a(0x1de)](_0x17fb0a(0x1cc)+_0x4dec45['userId']+_0x17fb0a(0x1fe)+_0x1c217c[_0x17fb0a(0x1ba)]+_0x17fb0a(0x1ef));else{const _0x19f8e9=_0xda7980[_0x17fb0a(0x1d5)](_0x48eb64=>_0x48eb64['userId']===_0x4dec45[_0x17fb0a(0x1e7)]);if(_0x19f8e9>=0x0)_0xda7980[_0x17fb0a(0x1f0)](_0x19f8e9,0x1);_0x36e334=!![];}}const _0x4c438f=_0x1dc9f6[_0x17fb0a(0x1e6)](_0x258db0=>_0x258db0['id']===_0x58bea8?{..._0x258db0,'userList':_0xda7980}:_0x258db0),_0x208aa6=_0xda7980[_0x17fb0a(0x1e6)](_0xccbff5=>_0xccbff5[_0x17fb0a(0x1e7)]),_0x119694={'operation':_0x165e0b,'selector':{'appCode':_0x3c6a99,'roleId':_0x58bea8,'roleName':_0x1c217c[_0x17fb0a(0x1ba)],'userId':_0x4dec45[_0x17fb0a(0x1e7)]},'before':{'userIds':_0x100f69},'after':{'userIds':_0x208aa6},'dryRun':_0x337e58[_0x17fb0a(0x1ce)],'backend':{'method':_0x17fb0a(0x1df),'path':UPDATE_USER_LIST_PATH},'warnings':_0x2d41c8};return{'roleList':_0x4c438f,'mutation':_0x119694,'changed':_0x36e334};}export async function loadRoleUsers(_0x1e38a3){return listRoleUsers(_0x1e38a3);}function a147_0x99de(_0x2374f8,_0x1ec8e4){_0x2374f8=_0x2374f8-0x1b6;const _0x4afe95=a147_0x4afe();let _0x99de87=_0x4afe95[_0x2374f8];return _0x99de87;}export function readRoleRef(_0x562d61){const _0x106d9a=a147_0x37981f,_0x100596=_0x562d61[_0x106d9a(0x1ee)](_0x106d9a(0x1e5))['trim']();if(!_0x100596)throw CliErrors[_0x106d9a(0x208)](_0x106d9a(0x1e5),_0x106d9a(0x1b6));return _0x100596;}export async function prepareUserMutation(_0x55e64e,_0x2577a3,_0x2c24dd){const _0x24599f=a147_0x37981f,_0x3c7fff=readRoleRef(_0x55e64e),_0x5b161f=_0x55e64e[_0x24599f(0x1ee)](_0x24599f(0x1dd))[_0x24599f(0x1eb)]();if(!_0x5b161f)throw CliErrors['flagMissing']('user',_0x24599f(0x1ff));const _0x4750b0=_0x55e64e[_0x24599f(0x1e9)]('expect-user-count'),_0xf99800=_0x4750b0===undefined||_0x4750b0===null?undefined:Number(_0x4750b0),_0x98574b=await resolveRoleRef(_0x55e64e[_0x24599f(0x1d9)],_0x3c7fff),_0x38e9a5=await resolveUserRef(_0x5b161f),_0x1c4cc9=await loadRoleUsers(_0x55e64e['appCode']);return computeRoleUserMutation({'operation':_0x2577a3,'appCode':_0x55e64e[_0x24599f(0x1d9)],'roleUsers':_0x1c4cc9,'targetRoleId':_0x98574b['id'],'user':{'userId':_0x38e9a5[_0x24599f(0x1e7)],'username':_0x38e9a5[_0x24599f(0x1bf)],'nickname':_0x38e9a5[_0x24599f(0x1d7)]},'dryRun':_0x2c24dd,..._0xf99800!==undefined?{'expectUserCount':_0xf99800}:{}});}
@@ -1 +1 @@
1
- const a146_0x5baf7f=a146_0x1c6e;(function(_0x2b53f8,_0x392529){const _0x2dd72c=a146_0x1c6e,_0x34e048=_0x2b53f8();while(!![]){try{const _0x20adb4=-parseInt(_0x2dd72c(0xf1))/0x1*(-parseInt(_0x2dd72c(0xf2))/0x2)+-parseInt(_0x2dd72c(0xea))/0x3*(-parseInt(_0x2dd72c(0xd7))/0x4)+parseInt(_0x2dd72c(0xeb))/0x5*(parseInt(_0x2dd72c(0xdf))/0x6)+-parseInt(_0x2dd72c(0xf3))/0x7+-parseInt(_0x2dd72c(0xda))/0x8*(parseInt(_0x2dd72c(0xd9))/0x9)+parseInt(_0x2dd72c(0xf5))/0xa+-parseInt(_0x2dd72c(0xdc))/0xb*(parseInt(_0x2dd72c(0xdb))/0xc);if(_0x20adb4===_0x392529)break;else _0x34e048['push'](_0x34e048['shift']());}catch(_0x455389){_0x34e048['push'](_0x34e048['shift']());}}}(a146_0x505f,0xd94ce));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';function a146_0x505f(){const _0x5d6e07=['17116250OMRjyM','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','string','write','2971960mQSDdA','/smartapi/permit/role/update','31338WLSHLl','3088NCAZXe','77712fIeetv','1859bjBmLC','trim','remark','256428CduozR','POST','flag','name','roleName','appCode','validation','num','role','\x20(id=','--name\x20cannot\x20be\x20empty.','3fnwugH','25KkczBW','Updated\x20role\x20','length','New\x20role\x20name','Nothing\x20to\x20update.','update','64811HJKzZJ','38WwMXXM','3998092EpOZgS','Role\x20name\x20cannot\x20exceed\x2064\x20characters.'];a146_0x505f=function(){return _0x5d6e07;};return a146_0x505f();}import{assertCustomRole,getRoleById,projectRole,REMARK_FLAG,ROLE_ID_FLAG}from'../../commands/role/shared.js';const UPDATE_PATH=a146_0x5baf7f(0xd8);function readPatch(_0x34b0c9){const _0x537097=a146_0x5baf7f,_0x394ad9=_0x34b0c9['flag'](_0x537097(0xe2)),_0xcdacc5=_0x34b0c9[_0x537097(0xe1)](_0x537097(0xde)),_0x11d549={};if(_0x394ad9!==undefined&&_0x394ad9!==null){const _0x2338fd=String(_0x394ad9)[_0x537097(0xdd)]();if(!_0x2338fd)throw CliErrors[_0x537097(0xe5)](_0x537097(0xe9));if(_0x2338fd[_0x537097(0xed)]>0x40)throw CliErrors[_0x537097(0xe5)](_0x537097(0xf4));_0x11d549['roleName']=_0x2338fd;}_0xcdacc5!==undefined&&_0xcdacc5!==null&&(_0x11d549['remark']=String(_0xcdacc5));if(_0x11d549[_0x537097(0xe3)]===undefined&&_0x11d549['remark']===undefined)throw CliErrors[_0x537097(0xe5)](_0x537097(0xef),'Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.');return _0x11d549;}function a146_0x1c6e(_0x16659a,_0x577600){_0x16659a=_0x16659a-0xd5;const _0x505f36=a146_0x505f();let _0x1c6e96=_0x505f36[_0x16659a];return _0x1c6e96;}export const roleUpdate={'service':a146_0x5baf7f(0xe7),'command':a146_0x5baf7f(0xf0),'description':a146_0x5baf7f(0xf6),'risk':a146_0x5baf7f(0xd6),'flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a146_0x5baf7f(0xe2),'type':a146_0x5baf7f(0xd5),'required':![],'description':a146_0x5baf7f(0xee)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1c7e96){readPatch(_0x1c7e96);},async 'dryRun'(_0x3169c7){const _0x5d51fa=a146_0x5baf7f,_0x3ce66a=_0x3169c7[_0x5d51fa(0xe6)]('id'),_0x53f9b7=readPatch(_0x3169c7),_0x542cc3=await getRoleById(_0x3169c7[_0x5d51fa(0xe4)],_0x3ce66a);return assertCustomRole(_0x542cc3,_0x5d51fa(0xf0)),asDryRunResult({'operation':_0x5d51fa(0xf0),'selector':{'appCode':_0x3169c7['appCode'],'roleId':_0x3ce66a,'roleName':_0x542cc3[_0x5d51fa(0xe3)]},'before':projectRole(_0x542cc3),'after':projectRole({..._0x542cc3,..._0x53f9b7[_0x5d51fa(0xe3)]!==undefined?{'roleName':_0x53f9b7[_0x5d51fa(0xe3)]}:{},..._0x53f9b7[_0x5d51fa(0xde)]!==undefined?{'remark':_0x53f9b7['remark']}:{}}),'dryRun':!![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':[]},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x382884){const _0x3b3545=a146_0x5baf7f,_0x1b6fcc=_0x382884[_0x3b3545(0xe6)]('id'),_0x3a3c64=readPatch(_0x382884),_0x67cc91=await getRoleById(_0x382884[_0x3b3545(0xe4)],_0x1b6fcc);assertCustomRole(_0x67cc91,_0x3b3545(0xf0)),await updateAppRole({'id':_0x1b6fcc,'appCode':_0x382884[_0x3b3545(0xe4)],..._0x3a3c64[_0x3b3545(0xe3)]!==undefined?{'roleName':_0x3a3c64[_0x3b3545(0xe3)]}:{},..._0x3a3c64[_0x3b3545(0xde)]!==undefined?{'remark':_0x3a3c64[_0x3b3545(0xde)]}:{}});const _0x410407=await getRoleById(_0x382884[_0x3b3545(0xe4)],_0x1b6fcc);return{'ok':!![],'data':{'operation':_0x3b3545(0xf0),'selector':{'appCode':_0x382884[_0x3b3545(0xe4)],'roleId':_0x1b6fcc,'roleName':_0x410407['roleName']},'before':projectRole(_0x67cc91),'after':projectRole(_0x410407),'dryRun':![],'backend':{'method':_0x3b3545(0xe0),'path':UPDATE_PATH},'warnings':[]},'message':_0x3b3545(0xec)+_0x410407[_0x3b3545(0xe3)]+_0x3b3545(0xe8)+_0x1b6fcc+')'};}};
1
+ const a148_0x4d0ebb=a148_0x568a;(function(_0x276d52,_0x46238c){const _0x35c46f=a148_0x568a,_0x439003=_0x276d52();while(!![]){try{const _0x3940ec=parseInt(_0x35c46f(0x1a9))/0x1*(-parseInt(_0x35c46f(0x1a3))/0x2)+-parseInt(_0x35c46f(0x1a5))/0x3+parseInt(_0x35c46f(0x19a))/0x4*(-parseInt(_0x35c46f(0x197))/0x5)+-parseInt(_0x35c46f(0x1aa))/0x6*(parseInt(_0x35c46f(0x1a1))/0x7)+parseInt(_0x35c46f(0x19c))/0x8+-parseInt(_0x35c46f(0x192))/0x9*(-parseInt(_0x35c46f(0x193))/0xa)+-parseInt(_0x35c46f(0x19f))/0xb*(-parseInt(_0x35c46f(0x191))/0xc);if(_0x3940ec===_0x46238c)break;else _0x439003['push'](_0x439003['shift']());}catch(_0x387b7f){_0x439003['push'](_0x439003['shift']());}}}(a148_0x5d37,0x94653));import{updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,REMARK_FLAG,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a148_0x5d37(){const _0x2a9feb=['roleName','num','129869FPxhMJ','642JQAFNx','flag','write','/smartapi/permit/role/update','Nothing\x20to\x20update.','appCode','length','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','8796LSgONg','36hWJawL','1704520yNwjSx','string','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','trim','15VewDcf','Updated\x20role\x20','update','1512316zsMeME','POST','5543328TocDoR','\x20(id=','validation','45727bXdvxZ','New\x20role\x20name','53809SXClnX','name','10tBjlyZ','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','3623661bYgrUX','remark'];a148_0x5d37=function(){return _0x2a9feb;};return a148_0x5d37();}function a148_0x568a(_0x37d4a3,_0x4f3cc){_0x37d4a3=_0x37d4a3-0x18a;const _0x5d3705=a148_0x5d37();let _0x568a95=_0x5d3705[_0x37d4a3];return _0x568a95;}const UPDATE_PATH=a148_0x4d0ebb(0x18c);function readPatch(_0x2d0f66){const _0x86fa4e=a148_0x4d0ebb,_0x22a355=_0x2d0f66[_0x86fa4e(0x18a)](_0x86fa4e(0x1a2)),_0x56d339=_0x2d0f66['flag'](_0x86fa4e(0x1a6)),_0x1f9b3d={};if(_0x22a355!==undefined&&_0x22a355!==null){const _0x4924d1=String(_0x22a355)[_0x86fa4e(0x196)]();if(!_0x4924d1)throw CliErrors['validation']('--name\x20cannot\x20be\x20empty.');if(_0x4924d1[_0x86fa4e(0x18f)]>0x40)throw CliErrors[_0x86fa4e(0x19e)](_0x86fa4e(0x195));_0x1f9b3d[_0x86fa4e(0x1a7)]=_0x4924d1;}_0x56d339!==undefined&&_0x56d339!==null&&(_0x1f9b3d[_0x86fa4e(0x1a6)]=String(_0x56d339));if(_0x1f9b3d['roleName']===undefined&&_0x1f9b3d['remark']===undefined)throw CliErrors[_0x86fa4e(0x19e)](_0x86fa4e(0x18d),_0x86fa4e(0x1a4));return _0x1f9b3d;}export const roleUpdate={'service':'role','command':a148_0x4d0ebb(0x199),'description':a148_0x4d0ebb(0x190),'risk':a148_0x4d0ebb(0x18b),'flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a148_0x4d0ebb(0x1a2),'type':a148_0x4d0ebb(0x194),'required':![],'description':a148_0x4d0ebb(0x1a0)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x53d9a2){readPatch(_0x53d9a2);},async 'dryRun'(_0x42f24e){const _0x2a70ba=a148_0x4d0ebb,_0x4dc0b4=_0x42f24e[_0x2a70ba(0x1a8)]('id'),_0x101758=readPatch(_0x42f24e),_0x1d7b31=await getRoleById(_0x42f24e[_0x2a70ba(0x18e)],_0x4dc0b4);return assertCustomRole(_0x1d7b31,_0x2a70ba(0x199)),asDryRunResult({'operation':_0x2a70ba(0x199),'selector':{'appCode':_0x42f24e[_0x2a70ba(0x18e)],'roleId':_0x4dc0b4,'roleName':_0x1d7b31[_0x2a70ba(0x1a7)]},'before':projectRole(_0x1d7b31),'after':projectRole({..._0x1d7b31,..._0x101758[_0x2a70ba(0x1a7)]!==undefined?{'roleName':_0x101758[_0x2a70ba(0x1a7)]}:{},..._0x101758[_0x2a70ba(0x1a6)]!==undefined?{'remark':_0x101758[_0x2a70ba(0x1a6)]}:{}}),'dryRun':!![],'backend':{'method':_0x2a70ba(0x19b),'path':UPDATE_PATH},'warnings':[]},{'method':_0x2a70ba(0x19b),'url':UPDATE_PATH});},async 'execute'(_0x2a0b85){const _0x2e4efe=a148_0x4d0ebb,_0x3c0a10=_0x2a0b85[_0x2e4efe(0x1a8)]('id'),_0x3cd6b1=readPatch(_0x2a0b85),_0x2e31fd=await getRoleById(_0x2a0b85['appCode'],_0x3c0a10);assertCustomRole(_0x2e31fd,_0x2e4efe(0x199)),await updateAppRole({'id':_0x3c0a10,'appCode':_0x2a0b85[_0x2e4efe(0x18e)],..._0x3cd6b1['roleName']!==undefined?{'roleName':_0x3cd6b1[_0x2e4efe(0x1a7)]}:{},..._0x3cd6b1[_0x2e4efe(0x1a6)]!==undefined?{'remark':_0x3cd6b1['remark']}:{}});const _0x3625fb=await getRoleById(_0x2a0b85[_0x2e4efe(0x18e)],_0x3c0a10);return{'ok':!![],'data':{'operation':_0x2e4efe(0x199),'selector':{'appCode':_0x2a0b85[_0x2e4efe(0x18e)],'roleId':_0x3c0a10,'roleName':_0x3625fb[_0x2e4efe(0x1a7)]},'before':projectRole(_0x2e31fd),'after':projectRole(_0x3625fb),'dryRun':![],'backend':{'method':_0x2e4efe(0x19b),'path':UPDATE_PATH},'warnings':[]},'message':_0x2e4efe(0x198)+_0x3625fb[_0x2e4efe(0x1a7)]+_0x2e4efe(0x19d)+_0x3c0a10+')'};}};
@@ -1 +1 @@
1
- const a147_0x9684ff=a147_0x3179;(function(_0x9520b3,_0x57c67c){const _0x699912=a147_0x3179,_0x958073=_0x9520b3();while(!![]){try{const _0x3646b6=-parseInt(_0x699912(0x1a4))/0x1+-parseInt(_0x699912(0x1a3))/0x2*(-parseInt(_0x699912(0x1a5))/0x3)+parseInt(_0x699912(0x198))/0x4+parseInt(_0x699912(0x1a1))/0x5+parseInt(_0x699912(0x1aa))/0x6*(parseInt(_0x699912(0x1ac))/0x7)+parseInt(_0x699912(0x19c))/0x8+-parseInt(_0x699912(0x19e))/0x9*(parseInt(_0x699912(0x19b))/0xa);if(_0x3646b6===_0x57c67c)break;else _0x958073['push'](_0x958073['shift']());}catch(_0x2e72e7){_0x958073['push'](_0x958073['shift']());}}}(a147_0x1e88,0x3d62c));import{updateRoleUsers}from'../../core/api-client.js';function a147_0x3179(_0x17602f,_0x416890){_0x17602f=_0x17602f-0x197;const _0x1e88f1=a147_0x1e88();let _0x317928=_0x1e88f1[_0x17602f];return _0x317928;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a147_0x1e88(){const _0x38edf9=['userId','354912GGkxEJ','high-risk-write','28ZbZmDj','roleName','332492ccCjKT','\x20to\x20role\x20','\x20already\x20in\x20role\x20','10tuTvIL','3830480pAEiMN','appCode','3687489vqAEwP','role','No\x20change:\x20user\x20','388725QdrzkC','POST','2OIHYRN','225572VsovHq','31329JGHcgJ','selector','user-add','Added\x20user\x20'];a147_0x1e88=function(){return _0x38edf9;};return a147_0x1e88();}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':a147_0x9684ff(0x19f),'command':a147_0x9684ff(0x1a7),'description':'Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','risk':a147_0x9684ff(0x1ab),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x2c82b7){const _0x166531=a147_0x9684ff,{mutation:_0x41ba5b}=await prepareUserMutation(_0x2c82b7,_0x166531(0x1a7),!![]);return asDryRunResult(_0x41ba5b,{'method':_0x166531(0x1a2),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x562b33){const _0x3f35ab=a147_0x9684ff,{roleList:_0x41ffdc,mutation:_0x1799f3,changed:_0x3c8672}=await prepareUserMutation(_0x562b33,_0x3f35ab(0x1a7),![]);return _0x3c8672&&await updateRoleUsers(_0x562b33[_0x3f35ab(0x19d)],_0x41ffdc),{'ok':!![],'data':_0x1799f3,'message':_0x3c8672?_0x3f35ab(0x1a8)+_0x1799f3[_0x3f35ab(0x1a6)]['userId']+_0x3f35ab(0x199)+_0x1799f3[_0x3f35ab(0x1a6)]['roleName']:_0x3f35ab(0x1a0)+_0x1799f3[_0x3f35ab(0x1a6)][_0x3f35ab(0x1a9)]+_0x3f35ab(0x19a)+_0x1799f3[_0x3f35ab(0x1a6)][_0x3f35ab(0x197)]};}};
1
+ function a149_0x2ee0(_0x4b528c,_0x4fe181){_0x4b528c=_0x4b528c-0x8f;const _0x5d8471=a149_0x5d84();let _0x2ee0ae=_0x5d8471[_0x4b528c];return _0x2ee0ae;}const a149_0x5891c4=a149_0x2ee0;(function(_0x3d55ff,_0x36fc83){const _0x398e19=a149_0x2ee0,_0x235cc4=_0x3d55ff();while(!![]){try{const _0x2c76fa=parseInt(_0x398e19(0x94))/0x1+-parseInt(_0x398e19(0x9a))/0x2*(-parseInt(_0x398e19(0x91))/0x3)+-parseInt(_0x398e19(0x8f))/0x4*(-parseInt(_0x398e19(0xa1))/0x5)+-parseInt(_0x398e19(0x90))/0x6+parseInt(_0x398e19(0x9d))/0x7+-parseInt(_0x398e19(0x99))/0x8+parseInt(_0x398e19(0xa0))/0x9*(-parseInt(_0x398e19(0x9c))/0xa);if(_0x2c76fa===_0x36fc83)break;else _0x235cc4['push'](_0x235cc4['shift']());}catch(_0x5bbb68){_0x235cc4['push'](_0x235cc4['shift']());}}}(a149_0x5d84,0xcb509));import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a149_0x5d84(){const _0x4db90a=['selector','7870gpsMLY','1814218TkZndK','user-add','high-risk-write','13581uCHorj','588825BaHJil','52evBQxm','2673636qHtcvq','3HfiKmr','\x20to\x20role\x20','No\x20change:\x20user\x20','1422896lpYhfD','POST','roleName','userId','role','13280896ryJmoA','1826126noKdXT'];a149_0x5d84=function(){return _0x4db90a;};return a149_0x5d84();}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':a149_0x5891c4(0x98),'command':a149_0x5891c4(0x9e),'description':'Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','risk':a149_0x5891c4(0x9f),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x2975a8){const _0x3e997f=a149_0x5891c4,{mutation:_0x2f8f91}=await prepareUserMutation(_0x2975a8,_0x3e997f(0x9e),!![]);return asDryRunResult(_0x2f8f91,{'method':_0x3e997f(0x95),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x3fc886){const _0x9b2e7=a149_0x5891c4,{roleList:_0x5241db,mutation:_0x59f17c,changed:_0x35249e}=await prepareUserMutation(_0x3fc886,_0x9b2e7(0x9e),![]);return _0x35249e&&await updateRoleUsers(_0x3fc886['appCode'],_0x5241db),{'ok':!![],'data':_0x59f17c,'message':_0x35249e?'Added\x20user\x20'+_0x59f17c[_0x9b2e7(0x9b)][_0x9b2e7(0x97)]+_0x9b2e7(0x92)+_0x59f17c[_0x9b2e7(0x9b)][_0x9b2e7(0x96)]:_0x9b2e7(0x93)+_0x59f17c[_0x9b2e7(0x9b)][_0x9b2e7(0x97)]+'\x20already\x20in\x20role\x20'+_0x59f17c['selector'][_0x9b2e7(0x96)]};}};
@@ -1 +1 @@
1
- const a148_0x5e7d75=a148_0x3da3;(function(_0xe85dfe,_0x3281ee){const _0x594e46=a148_0x3da3,_0x1c3c26=_0xe85dfe();while(!![]){try{const _0x407e21=parseInt(_0x594e46(0xeb))/0x1+-parseInt(_0x594e46(0xea))/0x2*(parseInt(_0x594e46(0xec))/0x3)+-parseInt(_0x594e46(0xf6))/0x4*(-parseInt(_0x594e46(0xf7))/0x5)+parseInt(_0x594e46(0xee))/0x6+parseInt(_0x594e46(0xfb))/0x7+parseInt(_0x594e46(0xf3))/0x8+-parseInt(_0x594e46(0xf5))/0x9;if(_0x407e21===_0x3281ee)break;else _0x1c3c26['push'](_0x1c3c26['shift']());}catch(_0x526323){_0x1c3c26['push'](_0x1c3c26['shift']());}}}(a148_0x3c0f,0x4c251));function a148_0x3c0f(){const _0xb18fa2=['high-risk-write','12270kOQmEy','342922voAztT','141NbfGKu','\x20from\x20role\x20','520602CbpFbv','\x20not\x20in\x20role\x20','POST','Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','appCode','3654264eZsRPO','No\x20change:\x20user\x20','8569908ypMmoX','112KXvpLV','42095EqDjrd','user-remove','userId','selector','3011694ItLiLR','role'];a148_0x3c0f=function(){return _0xb18fa2;};return a148_0x3c0f();}import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';function a148_0x3da3(_0x2fa38b,_0x50ab19){_0x2fa38b=_0x2fa38b-0xe9;const _0x3c0fe5=a148_0x3c0f();let _0x3da347=_0x3c0fe5[_0x2fa38b];return _0x3da347;}export const roleUserRemove={'service':a148_0x5e7d75(0xfc),'command':a148_0x5e7d75(0xf8),'description':a148_0x5e7d75(0xf1),'risk':a148_0x5e7d75(0xe9),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x7549a5){const _0x31e775=a148_0x5e7d75,{mutation:_0x5a4960}=await prepareUserMutation(_0x7549a5,_0x31e775(0xf8),!![]);return asDryRunResult(_0x5a4960,{'method':_0x31e775(0xf0),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x5c6161){const _0x2c6091=a148_0x5e7d75,{roleList:_0x151878,mutation:_0x3b16fa,changed:_0x175917}=await prepareUserMutation(_0x5c6161,_0x2c6091(0xf8),![]);return _0x175917&&await updateRoleUsers(_0x5c6161[_0x2c6091(0xf2)],_0x151878),{'ok':!![],'data':_0x3b16fa,'message':_0x175917?'Removed\x20user\x20'+_0x3b16fa[_0x2c6091(0xfa)][_0x2c6091(0xf9)]+_0x2c6091(0xed)+_0x3b16fa[_0x2c6091(0xfa)]['roleName']:_0x2c6091(0xf4)+_0x3b16fa['selector'][_0x2c6091(0xf9)]+_0x2c6091(0xef)+_0x3b16fa[_0x2c6091(0xfa)]['roleName']};}};
1
+ const a150_0x574f44=a150_0x5e99;function a150_0x5e99(_0x540daa,_0x14b3ca){_0x540daa=_0x540daa-0xd4;const _0x47f78e=a150_0x47f7();let _0x5e9933=_0x47f78e[_0x540daa];return _0x5e9933;}(function(_0x177810,_0x541e72){const _0x5aedf0=a150_0x5e99,_0x53b922=_0x177810();while(!![]){try{const _0x1fbeba=parseInt(_0x5aedf0(0xe6))/0x1*(-parseInt(_0x5aedf0(0xdf))/0x2)+parseInt(_0x5aedf0(0xda))/0x3*(-parseInt(_0x5aedf0(0xe8))/0x4)+parseInt(_0x5aedf0(0xe2))/0x5*(parseInt(_0x5aedf0(0xe1))/0x6)+parseInt(_0x5aedf0(0xde))/0x7*(-parseInt(_0x5aedf0(0xe3))/0x8)+-parseInt(_0x5aedf0(0xd6))/0x9*(parseInt(_0x5aedf0(0xd8))/0xa)+parseInt(_0x5aedf0(0xe9))/0xb+parseInt(_0x5aedf0(0xdb))/0xc*(parseInt(_0x5aedf0(0xd7))/0xd);if(_0x1fbeba===_0x541e72)break;else _0x53b922['push'](_0x53b922['shift']());}catch(_0x16064b){_0x53b922['push'](_0x53b922['shift']());}}}(a150_0x47f7,0xe0182));import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a150_0x47f7(){const _0x3e6150=['481630ZTFZYf','\x20not\x20in\x20role\x20','78150FTtnYe','475MaHdwm','9080fPVPYE','\x20from\x20role\x20','userId','6CVTDDP','user-remove','1331396SMmqsI','4738283RLdCNw','Removed\x20user\x20','No\x20change:\x20user\x20','appCode','selector','POST','21969RAXlGn','64127557mARqAT','6710MuIucm','high-risk-write','12eMbAhQ','12emyhmY','roleName','role','7826qwDnmD'];a150_0x47f7=function(){return _0x3e6150;};return a150_0x47f7();}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':a150_0x574f44(0xdd),'command':a150_0x574f44(0xe7),'description':'Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','risk':a150_0x574f44(0xd9),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0xc27be){const _0x443436=a150_0x574f44,{mutation:_0xdee089}=await prepareUserMutation(_0xc27be,'user-remove',!![]);return asDryRunResult(_0xdee089,{'method':_0x443436(0xd5),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x1ad9a1){const _0x18f74c=a150_0x574f44,{roleList:_0x4c8aed,mutation:_0x313389,changed:_0x464843}=await prepareUserMutation(_0x1ad9a1,_0x18f74c(0xe7),![]);return _0x464843&&await updateRoleUsers(_0x1ad9a1[_0x18f74c(0xec)],_0x4c8aed),{'ok':!![],'data':_0x313389,'message':_0x464843?_0x18f74c(0xea)+_0x313389['selector'][_0x18f74c(0xe5)]+_0x18f74c(0xe4)+_0x313389['selector'][_0x18f74c(0xdc)]:_0x18f74c(0xeb)+_0x313389[_0x18f74c(0xd4)][_0x18f74c(0xe5)]+_0x18f74c(0xe0)+_0x313389['selector'][_0x18f74c(0xdc)]};}};
@@ -1 +1 @@
1
- function a149_0x18de(){const _0x1eaa3c=['6WSeupz','Pass\x20--name\x20<nickname|username>.','63nQLarq','9TLmSUA','userId','str','98087iyqlJX','13kutvGs','user-resolve','23442nQyEtZ','52DkyFEx','flagMissing','role','\x22\x20→\x20userId\x20','26165EsawXz','107356yduEnJ','matchedBy','trim','370XlOMga','269936kLlvWp','2496872JfIgpL','read','nickname','434424MHJpYP','name'];a149_0x18de=function(){return _0x1eaa3c;};return a149_0x18de();}const a149_0x4a052b=a149_0x383c;(function(_0x5edadf,_0x3bd6d9){const _0x110fa5=a149_0x383c,_0x241e8a=_0x5edadf();while(!![]){try{const _0x50c71d=-parseInt(_0x110fa5(0x85))/0x1+-parseInt(_0x110fa5(0x81))/0x2*(parseInt(_0x110fa5(0x8b))/0x3)+-parseInt(_0x110fa5(0x7c))/0x4*(parseInt(_0x110fa5(0x80))/0x5)+parseInt(_0x110fa5(0x7b))/0x6*(parseInt(_0x110fa5(0x74))/0x7)+-parseInt(_0x110fa5(0x86))/0x8*(-parseInt(_0x110fa5(0x75))/0x9)+parseInt(_0x110fa5(0x84))/0xa*(parseInt(_0x110fa5(0x78))/0xb)+parseInt(_0x110fa5(0x89))/0xc*(-parseInt(_0x110fa5(0x79))/0xd);if(_0x50c71d===_0x3bd6d9)break;else _0x241e8a['push'](_0x241e8a['shift']());}catch(_0x36d718){_0x241e8a['push'](_0x241e8a['shift']());}}}(a149_0x18de,0x2fc5e));import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a149_0x383c(_0x3d9670,_0x5e9e59){_0x3d9670=_0x3d9670-0x73;const _0x18deb2=a149_0x18de();let _0x383cae=_0x18deb2[_0x3d9670];return _0x383cae;}import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';export const roleUserResolve={'service':a149_0x4a052b(0x7e),'command':a149_0x4a052b(0x7a),'description':'Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','risk':a149_0x4a052b(0x87),'flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x36a604){const _0x46fce7=a149_0x4a052b;if(!_0x36a604[_0x46fce7(0x77)](_0x46fce7(0x8a))[_0x46fce7(0x83)]())throw CliErrors[_0x46fce7(0x7d)]('name',_0x46fce7(0x73));},async 'execute'(_0x5846c0){const _0x3efdce=a149_0x4a052b,_0x4e3c35=_0x5846c0[_0x3efdce(0x77)](_0x3efdce(0x8a))[_0x3efdce(0x83)](),_0x23b05d=await resolveUserRef(_0x4e3c35);return{'ok':!![],'data':{'user':{'userId':_0x23b05d[_0x3efdce(0x76)],'username':_0x23b05d['username'],'nickname':_0x23b05d[_0x3efdce(0x88)],'matchedBy':_0x23b05d[_0x3efdce(0x82)]}},'message':'Resolved\x20\x22'+_0x4e3c35+_0x3efdce(0x7f)+_0x23b05d['userId']};}};
1
+ const a151_0x384cca=a151_0x5429;(function(_0x725c77,_0x2f4333){const _0x44d3fa=a151_0x5429,_0x2d81f3=_0x725c77();while(!![]){try{const _0x3db02e=-parseInt(_0x44d3fa(0xdd))/0x1*(-parseInt(_0x44d3fa(0xcc))/0x2)+parseInt(_0x44d3fa(0xd8))/0x3+-parseInt(_0x44d3fa(0xd1))/0x4+parseInt(_0x44d3fa(0xd3))/0x5*(parseInt(_0x44d3fa(0xd2))/0x6)+parseInt(_0x44d3fa(0xda))/0x7*(parseInt(_0x44d3fa(0xe0))/0x8)+parseInt(_0x44d3fa(0xdc))/0x9+parseInt(_0x44d3fa(0xcd))/0xa*(-parseInt(_0x44d3fa(0xde))/0xb);if(_0x3db02e===_0x2f4333)break;else _0x2d81f3['push'](_0x2d81f3['shift']());}catch(_0x572d10){_0x2d81f3['push'](_0x2d81f3['shift']());}}}(a151_0x13dc,0x9ac14));import{CliErrors}from'../../errors.js';function a151_0x5429(_0xa1da59,_0x29f603){_0xa1da59=_0xa1da59-0xca;const _0x13dc34=a151_0x13dc();let _0x54295a=_0x13dc34[_0xa1da59];return _0x54295a;}function a151_0x13dc(){const _0x22a470=['530yRSDYV','Resolved\x20\x22','Pass\x20--name\x20<nickname|username>.','userId','3491696quyhfi','58020fANRrw','545YxkIHz','username','user-resolve','matchedBy','Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','2484162YjFehN','flagMissing','133gStcjS','str','5865165lNROPL','2077WizMZG','414722QnIyji','trim','46888NEaGct','nickname','name','\x22\x20→\x20userId\x20','828GcURdn'];a151_0x13dc=function(){return _0x22a470;};return a151_0x13dc();}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':a151_0x384cca(0xd5),'description':a151_0x384cca(0xd7),'risk':'read','flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x25b6b2){const _0x5c4453=a151_0x384cca;if(!_0x25b6b2['str'](_0x5c4453(0xca))[_0x5c4453(0xdf)]())throw CliErrors[_0x5c4453(0xd9)](_0x5c4453(0xca),_0x5c4453(0xcf));},async 'execute'(_0x597c6e){const _0x2b7d82=a151_0x384cca,_0x3b9a11=_0x597c6e[_0x2b7d82(0xdb)](_0x2b7d82(0xca))['trim'](),_0x237296=await resolveUserRef(_0x3b9a11);return{'ok':!![],'data':{'user':{'userId':_0x237296['userId'],'username':_0x237296[_0x2b7d82(0xd4)],'nickname':_0x237296[_0x2b7d82(0xe1)],'matchedBy':_0x237296[_0x2b7d82(0xd6)]}},'message':_0x2b7d82(0xce)+_0x3b9a11+_0x2b7d82(0xcb)+_0x237296[_0x2b7d82(0xd0)]};}};
@@ -1 +1 @@
1
- const a150_0x2001f7=a150_0x2ee5;(function(_0x1981b1,_0x28103b){const _0x2a11a5=a150_0x2ee5,_0x4fd8b2=_0x1981b1();while(!![]){try{const _0x3ce552=-parseInt(_0x2a11a5(0x10e))/0x1+-parseInt(_0x2a11a5(0x121))/0x2*(parseInt(_0x2a11a5(0x107))/0x3)+-parseInt(_0x2a11a5(0x10d))/0x4*(-parseInt(_0x2a11a5(0x139))/0x5)+parseInt(_0x2a11a5(0x10b))/0x6+parseInt(_0x2a11a5(0x120))/0x7+parseInt(_0x2a11a5(0x11e))/0x8+-parseInt(_0x2a11a5(0x11d))/0x9;if(_0x3ce552===_0x28103b)break;else _0x4fd8b2['push'](_0x4fd8b2['shift']());}catch(_0x2b4ede){_0x4fd8b2['push'](_0x4fd8b2['shift']());}}}(a150_0x4097,0x4a6b4));import{readFileSync,existsSync}from'node:fs';function a150_0x4097(){const _0x38c2eb=['\x0a\x20\x20Usage:\x20','join','inherit','(none)','needsUpgrade','vite','log','Enable\x20watch\x20mode\x20for\x20preview','preview','1579707LRVZdL','1717904Zhhupo','cwd','1885562edFPPv','1700TwRYhI','boolean','bun.lockb','close','vite\x20preview\x20exited\x20with\x20code\x20','Script\x20name\x20defined\x20in\x20package.json','parse','bool','scripts','package.json','\x20\x20\x20\x20','length','Available:\x20','push','node_modules','all','dev','has','script','\x0a\x20\x20Available\x20scripts:\x0a','error','\x20run\x20preview\x20--watch','\x22\x20not\x20found\x20in\x20package.json.','\x20run\x20start','15395xtaIuW','\x20exited\x20with\x20code\x20','pnpm-lock.yaml','.bin','\x20run\x20preview','Run\x20a\x20package.json\x20script','validation','--watch','start','1893rPEvCu','build','keys','bun.lock','3423540pLrVqm','run','348YkCbYN','305874FIRSCv','args','yarn','watch','\x20run\x20<script>\x0a','No\x20package.json\x20found\x20in\x20current\x20directory.'];a150_0x4097=function(){return _0x38c2eb;};return a150_0x4097();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';import{CliErrors}from'../../errors.js';import{checkSdkVersion,printSdkUpgradeWarning}from'../../utils/check-sdk-version.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../utils/cli-version-check.js';const VERSION_CHECK_SCRIPTS=new Set([a150_0x2001f7(0x106),a150_0x2001f7(0x131)]);function readPackageScripts(_0x3962c9){const _0x3e6d30=a150_0x2001f7,_0x6c0e9=resolve(_0x3962c9,_0x3e6d30(0x12a));if(!existsSync(_0x6c0e9))return null;try{const _0x52a9db=JSON[_0x3e6d30(0x127)](readFileSync(_0x6c0e9,'utf-8'));return _0x52a9db[_0x3e6d30(0x129)]??{};}catch{return null;}}function a150_0x2ee5(_0x3954a1,_0x1cff37){_0x3954a1=_0x3954a1-0xff;const _0x4097c8=a150_0x4097();let _0x2ee50d=_0x4097c8[_0x3954a1];return _0x2ee50d;}function detectPackageManager(_0x5d727d){const _0x36fe63=a150_0x2001f7;if(existsSync(resolve(_0x5d727d,_0x36fe63(0x123)))||existsSync(resolve(_0x5d727d,_0x36fe63(0x10a))))return'bun';if(existsSync(resolve(_0x5d727d,_0x36fe63(0x100))))return'pnpm';if(existsSync(resolve(_0x5d727d,'yarn.lock')))return _0x36fe63(0x110);return'npm';}async function versionCheck(_0xe4a096){const _0x19b898=a150_0x2001f7,_0x24b174=await checkCliVersion();(_0x24b174['needsUpgrade']||_0x24b174['belowMinimum'])&&(printCliUpgradeWarning(_0x24b174),assertCliVersionSupported(_0x24b174));const _0x559bfd=await checkSdkVersion(_0xe4a096);if(_0x559bfd[_0x19b898(0x118)])printSdkUpgradeWarning(_0x559bfd);}function spawnScript(_0x57de41,_0x20c1dd,_0x501a33,_0x2f71e4){return new Promise((_0x5aaa25,_0x5caadb)=>{const _0x196762=a150_0x2ee5,_0x3c9d4c=[_0x196762(0x10c),_0x20c1dd,..._0x501a33],_0x50be3c=spawn(_0x57de41,_0x3c9d4c,{'cwd':_0x2f71e4,'stdio':_0x196762(0x116),'shell':!![],'env':{...process.env,'PATH':''+join(_0x2f71e4,_0x196762(0x12f),_0x196762(0x101))+delimiter+process.env.PATH}});_0x50be3c['on']('close',_0x13bf96=>{const _0x2a6b38=_0x196762;if(_0x13bf96===0x0||_0x13bf96===null)_0x5aaa25();else _0x5caadb(new Error(_0x57de41+'\x20run\x20'+_0x20c1dd+_0x2a6b38(0xff)+_0x13bf96));}),_0x50be3c['on'](_0x196762(0x135),_0x5caadb);});}function spawnViteBuildWatch(_0x7429bc){return new Promise((_0xb7cd40,_0x26b289)=>{const _0x23564a=a150_0x2ee5,_0x511117=spawn(_0x23564a(0x119),[_0x23564a(0x108),_0x23564a(0x105)],{'cwd':_0x7429bc,'stdio':_0x23564a(0x116),'shell':!![],'env':{...process.env,'PATH':''+join(_0x7429bc,_0x23564a(0x12f),_0x23564a(0x101))+delimiter+process.env.PATH}});_0x511117['on'](_0x23564a(0x124),_0x160598=>{if(_0x160598===0x0||_0x160598===null)_0xb7cd40();else _0x26b289(new Error('vite\x20build\x20--watch\x20exited\x20with\x20code\x20'+_0x160598));}),_0x511117['on'](_0x23564a(0x135),_0x26b289);});}function spawnVitePreview(_0x3256f3){return new Promise((_0xcf1b01,_0x4460c1)=>{const _0x5cd302=a150_0x2ee5,_0x140aa1=spawn('vite',['preview'],{'cwd':_0x3256f3,'stdio':_0x5cd302(0x116),'shell':!![],'env':{...process.env,'PATH':''+join(_0x3256f3,_0x5cd302(0x12f),_0x5cd302(0x101))+delimiter+process.env.PATH}});_0x140aa1['on'](_0x5cd302(0x124),_0x3b8242=>{const _0x2dbe1f=_0x5cd302;if(_0x3b8242===0x0||_0x3b8242===null)_0xcf1b01();else _0x4460c1(new Error(_0x2dbe1f(0x125)+_0x3b8242));}),_0x140aa1['on'](_0x5cd302(0x135),_0x4460c1);});}const runFlags=[{'name':a150_0x2001f7(0x111),'type':a150_0x2001f7(0x122),'description':a150_0x2001f7(0x11b),'default':![]}];export const runDefinition={'service':a150_0x2001f7(0x10c),'command':a150_0x2001f7(0x10c),'description':a150_0x2001f7(0x103),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a150_0x2001f7(0x133),'description':a150_0x2001f7(0x126),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x3e03c2=a150_0x2001f7,_0x45f421=[];return _0x45f421['push']('\x20\x20EXAMPLES'),_0x45f421[_0x3e03c2(0x12e)](_0x3e03c2(0x12b)+CLI_BIN_NAME+_0x3e03c2(0x138)),_0x45f421[_0x3e03c2(0x12e)](_0x3e03c2(0x12b)+CLI_BIN_NAME+'\x20run\x20build'),_0x45f421[_0x3e03c2(0x12e)](_0x3e03c2(0x12b)+CLI_BIN_NAME+_0x3e03c2(0x102)),_0x45f421[_0x3e03c2(0x12e)](_0x3e03c2(0x12b)+CLI_BIN_NAME+_0x3e03c2(0x136)),_0x45f421[_0x3e03c2(0x115)]('\x0a');},async 'execute'(_0x54bb4f){const _0x4a86d6=a150_0x2001f7,_0x5cd036=process[_0x4a86d6(0x11f)](),_0x3b4156=_0x54bb4f[_0x4a86d6(0x10f)][0x0],_0xb65597=_0x54bb4f[_0x4a86d6(0x10f)]['slice'](0x1),_0x4fef94=readPackageScripts(_0x5cd036);if(!_0x4fef94)throw CliErrors[_0x4a86d6(0x104)](_0x4a86d6(0x113));if(!_0x3b4156){const _0x41f86e=Object[_0x4a86d6(0x109)](_0x4fef94);if(_0x41f86e[_0x4a86d6(0x12c)]===0x0)console[_0x4a86d6(0x11a)]('No\x20scripts\x20defined\x20in\x20package.json.');else{console[_0x4a86d6(0x11a)](_0x4a86d6(0x134));for(const _0x25a6d9 of _0x41f86e){console[_0x4a86d6(0x11a)](_0x4a86d6(0x12b)+_0x25a6d9);}console[_0x4a86d6(0x11a)](_0x4a86d6(0x114)+CLI_BIN_NAME+_0x4a86d6(0x112));}return{'ok':!![]};}if(!_0x4fef94[_0x3b4156])throw CliErrors['validation']('Script\x20\x22'+_0x3b4156+_0x4a86d6(0x137),_0x4a86d6(0x12d)+(Object[_0x4a86d6(0x109)](_0x4fef94)[_0x4a86d6(0x115)](',\x20')||_0x4a86d6(0x117)));const _0x328497=detectPackageManager(_0x5cd036);VERSION_CHECK_SCRIPTS[_0x4a86d6(0x132)](_0x3b4156)&&await versionCheck(_0x5cd036);if(_0x3b4156===_0x4a86d6(0x11c)&&_0x54bb4f[_0x4a86d6(0x128)]('watch'))return await Promise[_0x4a86d6(0x130)]([spawnViteBuildWatch(_0x5cd036),spawnVitePreview(_0x5cd036)]),{'ok':!![]};return await spawnScript(_0x328497,_0x3b4156,_0xb65597,_0x5cd036),{'ok':!![]};}};
1
+ const a152_0x2db26=a152_0x14c0;(function(_0x30b1ac,_0x76b632){const _0x3d9f59=a152_0x14c0,_0x216f32=_0x30b1ac();while(!![]){try{const _0xfbc11f=-parseInt(_0x3d9f59(0x126))/0x1*(-parseInt(_0x3d9f59(0x131))/0x2)+parseInt(_0x3d9f59(0x10f))/0x3*(parseInt(_0x3d9f59(0x13a))/0x4)+-parseInt(_0x3d9f59(0x115))/0x5+parseInt(_0x3d9f59(0x10b))/0x6*(parseInt(_0x3d9f59(0x109))/0x7)+-parseInt(_0x3d9f59(0x13f))/0x8+parseInt(_0x3d9f59(0x124))/0x9+-parseInt(_0x3d9f59(0x125))/0xa*(parseInt(_0x3d9f59(0x121))/0xb);if(_0xfbc11f===_0x76b632)break;else _0x216f32['push'](_0x216f32['shift']());}catch(_0x2f82da){_0x216f32['push'](_0x216f32['shift']());}}}(a152_0x4828,0xf2953));import{readFileSync,existsSync}from'node:fs';function a152_0x14c0(_0x18e6be,_0x35c094){_0x18e6be=_0x18e6be-0x107;const _0x482853=a152_0x4828();let _0x14c0e5=_0x482853[_0x18e6be];return _0x14c0e5;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';import{CliErrors}from'../../errors.js';import{checkSdkVersion,printSdkUpgradeWarning}from'../../utils/check-sdk-version.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../utils/cli-version-check.js';const VERSION_CHECK_SCRIPTS=new Set([a152_0x2db26(0x13d),a152_0x2db26(0x114)]);function readPackageScripts(_0x1871da){const _0x1af047=a152_0x2db26,_0x2251ba=resolve(_0x1871da,'package.json');if(!existsSync(_0x2251ba))return null;try{const _0x2ac03a=JSON[_0x1af047(0x12a)](readFileSync(_0x2251ba,_0x1af047(0x117)));return _0x2ac03a['scripts']??{};}catch{return null;}}function detectPackageManager(_0x22f697){const _0x3f5fd7=a152_0x2db26;if(existsSync(resolve(_0x22f697,_0x3f5fd7(0x108)))||existsSync(resolve(_0x22f697,_0x3f5fd7(0x144))))return _0x3f5fd7(0x11b);if(existsSync(resolve(_0x22f697,_0x3f5fd7(0x133))))return _0x3f5fd7(0x143);if(existsSync(resolve(_0x22f697,'yarn.lock')))return _0x3f5fd7(0x11d);return _0x3f5fd7(0x13e);}async function versionCheck(_0x240821){const _0x3724b9=a152_0x2db26,_0xc5c60d=await checkCliVersion();(_0xc5c60d[_0x3724b9(0x137)]||_0xc5c60d[_0x3724b9(0x142)])&&(printCliUpgradeWarning(_0xc5c60d),assertCliVersionSupported(_0xc5c60d));const _0x4b6228=await checkSdkVersion(_0x240821);if(_0x4b6228['needsUpgrade'])printSdkUpgradeWarning(_0x4b6228);}function a152_0x4828(){const _0x37e394=['21mfLYju','script','length','(none)','keys','dev','5193230sEcCDQ','\x20run\x20preview','utf-8','error','bool','close','bun','log','yarn','No\x20scripts\x20defined\x20in\x20package.json.','has','Available:\x20','11Ofyxyl','\x20run\x20build','\x0a\x20\x20Usage:\x20','14174406nJDxPd','5132230seknEt','1187197RANClL','run','read','preview','parse','.bin','No\x20package.json\x20found\x20in\x20current\x20directory.','slice','Script\x20\x22','vite','build','2dQIUwz','args','pnpm-lock.yaml','watch','Script\x20name\x20defined\x20in\x20package.json','boolean','needsUpgrade','Run\x20a\x20package.json\x20script','\x20run\x20<script>\x0a','154524XKSpPs','all','\x20exited\x20with\x20code\x20','start','npm','12768960MdVpcC','\x20run\x20start','\x20run\x20','belowMinimum','pnpm','bun.lock','\x20run\x20preview\x20--watch','\x20\x20\x20\x20','node_modules','join','inherit','validation','push','\x0a\x20\x20Available\x20scripts:\x0a','--watch','bun.lockb','168770dptoBm','cwd','276xjScYN','vite\x20preview\x20exited\x20with\x20code\x20','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','Enable\x20watch\x20mode\x20for\x20preview'];a152_0x4828=function(){return _0x37e394;};return a152_0x4828();}function spawnScript(_0x22ebaa,_0x349f18,_0x5daf12,_0x5f97fa){return new Promise((_0x48208d,_0x3a0102)=>{const _0xfdb8bb=a152_0x14c0,_0x3cd759=[_0xfdb8bb(0x127),_0x349f18,..._0x5daf12],_0x2360d3=spawn(_0x22ebaa,_0x3cd759,{'cwd':_0x5f97fa,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0x5f97fa,_0xfdb8bb(0x147),_0xfdb8bb(0x12b))+delimiter+process.env.PATH}});_0x2360d3['on'](_0xfdb8bb(0x11a),_0x1dffeb=>{const _0x1f6bee=_0xfdb8bb;if(_0x1dffeb===0x0||_0x1dffeb===null)_0x48208d();else _0x3a0102(new Error(_0x22ebaa+_0x1f6bee(0x141)+_0x349f18+_0x1f6bee(0x13c)+_0x1dffeb));}),_0x2360d3['on']('error',_0x3a0102);});}function spawnViteBuildWatch(_0xb57963){return new Promise((_0x2166a0,_0x38846c)=>{const _0x5d00ad=a152_0x14c0,_0x2ba976=spawn(_0x5d00ad(0x12f),[_0x5d00ad(0x130),_0x5d00ad(0x107)],{'cwd':_0xb57963,'stdio':_0x5d00ad(0x149),'shell':!![],'env':{...process.env,'PATH':''+join(_0xb57963,_0x5d00ad(0x147),_0x5d00ad(0x12b))+delimiter+process.env.PATH}});_0x2ba976['on']('close',_0x55cb9f=>{const _0x510573=_0x5d00ad;if(_0x55cb9f===0x0||_0x55cb9f===null)_0x2166a0();else _0x38846c(new Error(_0x510573(0x10d)+_0x55cb9f));}),_0x2ba976['on'](_0x5d00ad(0x118),_0x38846c);});}function spawnVitePreview(_0x24aedb){return new Promise((_0x590867,_0x11c939)=>{const _0x49fbfc=a152_0x14c0,_0x4b7916=spawn('vite',[_0x49fbfc(0x129)],{'cwd':_0x24aedb,'stdio':_0x49fbfc(0x149),'shell':!![],'env':{...process.env,'PATH':''+join(_0x24aedb,_0x49fbfc(0x147),_0x49fbfc(0x12b))+delimiter+process.env.PATH}});_0x4b7916['on'](_0x49fbfc(0x11a),_0x3fa229=>{const _0x1b2c44=_0x49fbfc;if(_0x3fa229===0x0||_0x3fa229===null)_0x590867();else _0x11c939(new Error(_0x1b2c44(0x10c)+_0x3fa229));}),_0x4b7916['on'](_0x49fbfc(0x118),_0x11c939);});}const runFlags=[{'name':a152_0x2db26(0x134),'type':a152_0x2db26(0x136),'description':a152_0x2db26(0x10e),'default':![]}];export const runDefinition={'service':'run','command':'run','description':a152_0x2db26(0x138),'risk':a152_0x2db26(0x128),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a152_0x2db26(0x110),'description':a152_0x2db26(0x135),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x4999f6=a152_0x2db26,_0x5a8d13=[];return _0x5a8d13[_0x4999f6(0x14b)]('\x20\x20EXAMPLES'),_0x5a8d13[_0x4999f6(0x14b)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x4999f6(0x140)),_0x5a8d13['push'](_0x4999f6(0x146)+CLI_BIN_NAME+_0x4999f6(0x122)),_0x5a8d13[_0x4999f6(0x14b)](_0x4999f6(0x146)+CLI_BIN_NAME+_0x4999f6(0x116)),_0x5a8d13[_0x4999f6(0x14b)](_0x4999f6(0x146)+CLI_BIN_NAME+_0x4999f6(0x145)),_0x5a8d13[_0x4999f6(0x148)]('\x0a');},async 'execute'(_0x11c3eb){const _0x4abbd8=a152_0x2db26,_0x4e7167=process[_0x4abbd8(0x10a)](),_0x3b2633=_0x11c3eb[_0x4abbd8(0x132)][0x0],_0x1d2fe5=_0x11c3eb['args'][_0x4abbd8(0x12d)](0x1),_0x26b0c8=readPackageScripts(_0x4e7167);if(!_0x26b0c8)throw CliErrors[_0x4abbd8(0x14a)](_0x4abbd8(0x12c));if(!_0x3b2633){const _0x32546e=Object[_0x4abbd8(0x113)](_0x26b0c8);if(_0x32546e[_0x4abbd8(0x111)]===0x0)console[_0x4abbd8(0x11c)](_0x4abbd8(0x11e));else{console[_0x4abbd8(0x11c)](_0x4abbd8(0x14c));for(const _0x4fbcf8 of _0x32546e){console[_0x4abbd8(0x11c)](_0x4abbd8(0x146)+_0x4fbcf8);}console['log'](_0x4abbd8(0x123)+CLI_BIN_NAME+_0x4abbd8(0x139));}return{'ok':!![]};}if(!_0x26b0c8[_0x3b2633])throw CliErrors['validation'](_0x4abbd8(0x12e)+_0x3b2633+'\x22\x20not\x20found\x20in\x20package.json.',_0x4abbd8(0x120)+(Object[_0x4abbd8(0x113)](_0x26b0c8)[_0x4abbd8(0x148)](',\x20')||_0x4abbd8(0x112)));const _0x5e39ae=detectPackageManager(_0x4e7167);VERSION_CHECK_SCRIPTS[_0x4abbd8(0x11f)](_0x3b2633)&&await versionCheck(_0x4e7167);if(_0x3b2633===_0x4abbd8(0x129)&&_0x11c3eb[_0x4abbd8(0x119)]('watch'))return await Promise[_0x4abbd8(0x13b)]([spawnViteBuildWatch(_0x4e7167),spawnVitePreview(_0x4e7167)]),{'ok':!![]};return await spawnScript(_0x5e39ae,_0x3b2633,_0x1d2fe5,_0x4e7167),{'ok':!![]};}};
@@ -1 +1 @@
1
- const a151_0x53c91f=a151_0x551e;(function(_0x1f0e26,_0x35fd20){const _0x5e17b0=a151_0x551e,_0x22c581=_0x1f0e26();while(!![]){try{const _0xe8200f=parseInt(_0x5e17b0(0x16f))/0x1+parseInt(_0x5e17b0(0x173))/0x2+-parseInt(_0x5e17b0(0x16d))/0x3+-parseInt(_0x5e17b0(0x16a))/0x4+parseInt(_0x5e17b0(0x167))/0x5*(parseInt(_0x5e17b0(0x168))/0x6)+parseInt(_0x5e17b0(0x172))/0x7*(parseInt(_0x5e17b0(0x169))/0x8)+parseInt(_0x5e17b0(0x16c))/0x9;if(_0xe8200f===_0x35fd20)break;else _0x22c581['push'](_0x22c581['shift']());}catch(_0x41bb58){_0x22c581['push'](_0x22c581['shift']());}}}(a151_0x2a0a,0xcdbec));function a151_0x2a0a(){const _0x5243b7=['2702226csxZtU','json','29287aXZBdM','schema','read','100702bJbZVa','757654tNMVjR','699065eBZLeA','36baIEhV','168nuYWlV','5592112XrLsAG','export','14331636Uyrdvd'];a151_0x2a0a=function(){return _0x5243b7;};return a151_0x2a0a();}import{buildSchemaPayload}from'../framework/schema-export.js';function a151_0x551e(_0x536821,_0x3dce7f){_0x536821=_0x536821-0x167;const _0x2a0aac=a151_0x2a0a();let _0x551ea1=_0x2a0aac[_0x536821];return _0x551ea1;}async function execute(_0x22ab7b){const _0x504b06=await buildSchemaPayload();return{'ok':!![],'data':_0x504b06};}export const schemaDefinition={'service':a151_0x53c91f(0x170),'command':a151_0x53c91f(0x16b),'description':'Export\x20machine-readable\x20command\x20schema\x20(JSON)','risk':a151_0x53c91f(0x171),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a151_0x53c91f(0x16e),'flags':[],'execute':execute};
1
+ const a153_0x439f15=a153_0x3cbb;(function(_0x1069e4,_0x27ac12){const _0x3dd3e0=a153_0x3cbb,_0x392804=_0x1069e4();while(!![]){try{const _0x422295=-parseInt(_0x3dd3e0(0xe8))/0x1*(-parseInt(_0x3dd3e0(0xe7))/0x2)+-parseInt(_0x3dd3e0(0xe1))/0x3*(parseInt(_0x3dd3e0(0xe6))/0x4)+parseInt(_0x3dd3e0(0xdb))/0x5+parseInt(_0x3dd3e0(0xe4))/0x6+-parseInt(_0x3dd3e0(0xdd))/0x7*(parseInt(_0x3dd3e0(0xde))/0x8)+parseInt(_0x3dd3e0(0xe0))/0x9+-parseInt(_0x3dd3e0(0xdf))/0xa;if(_0x422295===_0x27ac12)break;else _0x392804['push'](_0x392804['shift']());}catch(_0x26ab4c){_0x392804['push'](_0x392804['shift']());}}}(a153_0xc033,0x2add4));import{buildSchemaPayload}from'../framework/schema-export.js';function a153_0x3cbb(_0x235582,_0x1391f0){_0x235582=_0x235582-0xdb;const _0xc0333f=a153_0xc033();let _0x3cbba9=_0xc0333f[_0x235582];return _0x3cbba9;}async function execute(_0x2238a6){const _0x189278=await buildSchemaPayload();return{'ok':!![],'data':_0x189278};}function a153_0xc033(){const _0x2f92b3=['read','1766352qhcwCx','schema','12ZNAsHp','2FXGhjM','246784tjBFuE','1445795BeXEkS','Export\x20machine-readable\x20command\x20schema\x20(JSON)','402843OCGhcU','24gJoBoH','5679730yENIxw','1447902tDoYfq','75021BpArlR','json'];a153_0xc033=function(){return _0x2f92b3;};return a153_0xc033();}export const schemaDefinition={'service':a153_0x439f15(0xe5),'command':'export','description':a153_0x439f15(0xdc),'risk':a153_0x439f15(0xe3),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a153_0x439f15(0xe2),'flags':[],'execute':execute};
@@ -1 +1 @@
1
- const a152_0x34191c=a152_0x1c9a;(function(_0xd26d1e,_0x2a299c){const _0x132356=a152_0x1c9a,_0x393014=_0xd26d1e();while(!![]){try{const _0x1effc1=-parseInt(_0x132356(0x10f))/0x1*(parseInt(_0x132356(0xe7))/0x2)+-parseInt(_0x132356(0x113))/0x3+-parseInt(_0x132356(0xf5))/0x4*(-parseInt(_0x132356(0x108))/0x5)+-parseInt(_0x132356(0xe5))/0x6+parseInt(_0x132356(0xf6))/0x7+-parseInt(_0x132356(0x111))/0x8*(parseInt(_0x132356(0x127))/0x9)+parseInt(_0x132356(0x10c))/0xa;if(_0x1effc1===_0x2a299c)break;else _0x393014['push'](_0x393014['shift']());}catch(_0x2890d8){_0x393014['push'](_0x393014['shift']());}}}(a152_0x49f6,0xea48f));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';function a152_0x1c9a(_0x1b7214,_0xe7f202){_0x1b7214=_0x1b7214-0xe3;const _0x49f694=a152_0x49f6();let _0x1c9a6f=_0x49f694[_0x1b7214];return _0x1c9a6f;}import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';function a152_0x49f6(){const _0x2ed4ec=['sqls','适合带动态标签的\x20MyBatis\x20XML\x20SQL','28TfwUgT','name','427104joheAF','description','3233454aeiNGw','join','POST','MyBatis\x20XML(mybatisXml)','validation','number','SQL\x20名称不能为空','请选择目标数据库:','isFinite','Target\x20database\x20ID','</select>','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','mode','isInteger','sqlName','\x20\x20SELECT\x201\x20AS\x20id','请选择本地\x20SQL\x20模式:','File\x20already\x20exists:\x20','string','请输入\x20SQL\x20名称:','162XFajVd','SQL\x20query\x20display\x20name','db-id','2568312SAEfoG','catch','13778rOGzJy','Invalid\x20database\x20selection\x20payload:\x20','请输入目标数据库\x20dbId:','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','length','sql','SELECT\x201\x20AS\x20id;','__manual__','flagMissing','sqlCode','lastSync','utf8','appCode','dbName','1303556RXvMZf','235739szSsOT','high-risk-write','sqlRoot','toISOString','dbId','flag','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','普通\x20SQL(sql)','sqlRootDir','stringify','nonInteractive','mybatisXml','✎\x20手动输入\x20dbId','/smartapi/custom/saveUserCustomSql','create','dbId\x20必须为正整数','str','map','15VLiZKe','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','new','trim','26080330Iqikbc'];a152_0x49f6=function(){return _0x2ed4ec;};return a152_0x49f6();}import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x1265e2){const _0x1871b0=a152_0x1c9a;if(_0x1265e2==='mybatisXml')return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>',_0x1871b0(0x122),_0x1871b0(0x11d),'']['join']('\x0a');return[_0x1871b0(0xed),''][_0x1871b0(0x114)]('\x0a');}export const sqlCreate={'service':a152_0x34191c(0xec),'command':a152_0x34191c(0x104),'description':'Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','risk':a152_0x34191c(0xf7),'flags':[{'name':a152_0x34191c(0x110),'type':'string','description':a152_0x34191c(0xe3)},{'name':'db-id','type':a152_0x34191c(0x118),'description':a152_0x34191c(0x11c)},{'name':'mode','type':a152_0x34191c(0x125),'enum':['sql',a152_0x34191c(0x101)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0x22c360){const _0x3e8a6c=a152_0x34191c;if(!_0x22c360[_0x3e8a6c(0x100)])return;if(!_0x22c360[_0x3e8a6c(0x106)](_0x3e8a6c(0x110))[_0x3e8a6c(0x10b)]())throw CliErrors[_0x3e8a6c(0xef)](_0x3e8a6c(0x110),_0x3e8a6c(0xfc));const _0x19200b=resolveProvidedDbId(_0x22c360);if(typeof _0x19200b!=='number'||!Number[_0x3e8a6c(0x11b)](_0x19200b)||_0x19200b<=0x0)throw CliErrors[_0x3e8a6c(0xef)](_0x3e8a6c(0xe4),_0x3e8a6c(0xea));if(!_0x22c360[_0x3e8a6c(0x106)](_0x3e8a6c(0x11f))[_0x3e8a6c(0x10b)]())throw CliErrors[_0x3e8a6c(0xef)](_0x3e8a6c(0x11f),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');},async 'dryRun'(_0x5d428a){const _0x196289=a152_0x34191c,_0x4924ad=loadSqlProjectConfig(_0x5d428a['appCode']),{sqlName:_0x3fa51d,dbId:_0x6e224b,dbName:_0x34cc32,mode:_0x215e6b}=await resolveSqlNewInputs(_0x5d428a),_0x229d43=buildSqlRelativePath('<server-generated-sqlCode>',_0x3fa51d,_0x34cc32,_0x215e6b,_0x6e224b),_0x55c0b8=_0x4924ad[_0x196289(0xfe)]+'/'+_0x229d43;return{'method':_0x196289(0x115),'url':_0x196289(0x103),'body':{'appCode':_0x5d428a['appCode'],'sqlName':_0x3fa51d,'dbId':_0x6e224b,'mode':_0x215e6b,'localPath':_0x55c0b8},'description':_0x196289(0x109)+_0x4924ad['sqlRootDir']};},async 'execute'(_0x290d58){const _0x1845ac=a152_0x34191c,_0x48cf21=loadSqlProjectConfig(_0x290d58['appCode']),{sqlName:_0x16f06e,dbId:_0x54f8ac,dbName:_0x422387,mode:_0x4a8248}=await resolveSqlNewInputs(_0x290d58),_0x468d87=generateSqlTemplate(_0x4a8248),_0xd47c97=await createSqlQuery({'appCode':_0x290d58[_0x1845ac(0xf3)],'sqlName':_0x16f06e,'dbId':_0x54f8ac,'sqlContent':_0x468d87}),_0xc35ff0=ensureRemoteSqlContent(_0xd47c97),_0x29a5cd=_0x422387||await getDbName(_0x290d58['appCode'],_0x54f8ac)[_0x1845ac(0xe6)](()=>undefined),_0x3b7472=buildSqlRelativePath(_0xd47c97['sqlCode'],_0xd47c97[_0x1845ac(0x121)],_0x29a5cd,_0x4a8248,_0x54f8ac),_0x5a0b08=_0x48cf21[_0x1845ac(0xfe)]+'/'+_0x3b7472,_0x3cabf4=buildLocalSqlFileContent({'sqlCode':_0xd47c97[_0x1845ac(0xf0)],'sqlName':_0xd47c97[_0x1845ac(0x121)],'dbId':_0xd47c97[_0x1845ac(0xfa)]},_0xc35ff0,{'dbName':_0x29a5cd,'mode':_0x4a8248,'syncedAt':new Date()[_0x1845ac(0xf9)](),'description':_0xd47c97[_0x1845ac(0x112)]});if(await fileExists(_0x5a0b08))throw CliErrors[_0x1845ac(0x117)](_0x1845ac(0x124)+_0x5a0b08);await ensureParentDirectory(_0x5a0b08),await writeFile(_0x5a0b08,_0x3cabf4,_0x1845ac(0xf2));const _0x571fac=await readSqlLockFile(_0x48cf21['lockFilePath']),{lockData:_0x436f9b,appLock:_0x40a57f}=ensureSqlLockScope(_0x571fac??createEmptySqlLock(),_0x48cf21[_0x1845ac(0xf3)],_0x48cf21[_0x1845ac(0xf8)],_0x1845ac(0x10a));return _0x40a57f[_0x1845ac(0x10d)][_0xd47c97[_0x1845ac(0xf0)]]={...buildSqlLockEntry(_0xd47c97,_0xc35ff0,computeSqlContentHash(_0x3cabf4),{'dbName':_0x29a5cd}),'path':_0x3b7472,'mode':_0x4a8248},_0x40a57f[_0x1845ac(0xf1)]=new Date()[_0x1845ac(0xf9)](),await writeSqlLockFile(_0x48cf21['lockFilePath'],_0x436f9b),{'ok':!![],'data':{'id':_0xd47c97['id'],'sqlCode':_0xd47c97[_0x1845ac(0xf0)],'sqlName':_0xd47c97[_0x1845ac(0x121)],'dbId':_0xd47c97[_0x1845ac(0xfa)],'path':_0x5a0b08,'mode':_0x4a8248},'message':'Created\x20SQL\x20query\x20'+_0xd47c97[_0x1845ac(0xf0)]};}};async function resolveSqlNewInputs(_0x3c89d4){const _0x42196a=await resolveSqlNameInput(_0x3c89d4),{dbId:_0x2516e0,dbName:_0x247f86}=await resolveDbSelection(_0x3c89d4),_0x3efc90=await resolveSqlModeInput(_0x3c89d4);return{'sqlName':_0x42196a,'dbId':_0x2516e0,'dbName':_0x247f86,'mode':_0x3efc90};}async function resolveSqlNameInput(_0x33b961){const _0x2580e5=a152_0x34191c,_0x1ee938=_0x33b961[_0x2580e5(0x106)](_0x2580e5(0x110))[_0x2580e5(0x10b)]();if(_0x1ee938)return _0x1ee938;if(_0x33b961[_0x2580e5(0x100)])throw CliErrors[_0x2580e5(0xef)]('name',_0x2580e5(0xfc));return(await input({'message':_0x2580e5(0x126),'validate':_0x2c7872=>_0x2c7872[_0x2580e5(0x10b)]()?!![]:_0x2580e5(0x119)}))[_0x2580e5(0x10b)]();}async function resolveDbSelection(_0x48e459){const _0x3bc509=a152_0x34191c,_0x24cda6=resolveProvidedDbId(_0x48e459);if(typeof _0x24cda6==='number'&&Number['isFinite'](_0x24cda6)&&_0x24cda6>0x0)return{'dbId':_0x24cda6,'dbName':await getDbName(_0x48e459[_0x3bc509(0xf3)],_0x24cda6)['catch'](()=>undefined)};if(_0x48e459['nonInteractive'])throw CliErrors[_0x3bc509(0xef)](_0x3bc509(0xe4),_0x3bc509(0xea));const _0x14eaa6=await listDatabases(_0x48e459['appCode'])['catch'](()=>[]);if(_0x14eaa6[_0x3bc509(0xeb)]===0x1)return{'dbId':_0x14eaa6[0x0][_0x3bc509(0xfa)],'dbName':_0x14eaa6[0x0][_0x3bc509(0xf4)]};if(_0x14eaa6[_0x3bc509(0xeb)]>0x1){const _0x86c6b5=await select({'message':_0x3bc509(0x11a),'choices':[..._0x14eaa6[_0x3bc509(0x107)](_0x32f6c6=>({'name':_0x32f6c6['dbName']+'\x20('+_0x32f6c6[_0x3bc509(0xfa)]+')','value':serializeDbSelection(_0x32f6c6)})),{'name':_0x3bc509(0x102),'value':_0x3bc509(0xee)}]});if(_0x86c6b5!==_0x3bc509(0xee))return deserializeDbSelection(_0x86c6b5);}const _0x10bff7=await input({'message':_0x3bc509(0xe9),'validate':_0x1a3c8f=>{const _0x330c39=_0x3bc509,_0x6b6d71=_0x1a3c8f[_0x330c39(0x10b)]();if(!_0x6b6d71)return'dbId\x20不能为空';const _0xf3409d=Number(_0x6b6d71);if(!Number[_0x330c39(0x120)](_0xf3409d)||_0xf3409d<=0x0)return _0x330c39(0x105);return!![];}});return{'dbId':Number(_0x10bff7['trim']())};}async function resolveSqlModeInput(_0x4bb57e){const _0x33e00f=a152_0x34191c,_0x1399a3=_0x4bb57e[_0x33e00f(0x106)]('mode')[_0x33e00f(0x10b)]();if(_0x1399a3===_0x33e00f(0xec)||_0x1399a3===_0x33e00f(0x101))return _0x1399a3;if(_0x4bb57e[_0x33e00f(0x100)])throw CliErrors[_0x33e00f(0xef)](_0x33e00f(0x11f),_0x33e00f(0x11e));return await select({'message':_0x33e00f(0x123),'choices':[{'name':_0x33e00f(0xfd),'value':_0x33e00f(0xec),'description':'适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句'},{'name':_0x33e00f(0x116),'value':_0x33e00f(0x101),'description':_0x33e00f(0x10e)}]});}function serializeDbSelection(_0x40b964){const _0x4186aa=a152_0x34191c;return JSON[_0x4186aa(0xff)]({'dbId':_0x40b964[_0x4186aa(0xfa)],'dbName':_0x40b964['dbName']});}function deserializeDbSelection(_0x172879){const _0x4c42b6=a152_0x34191c;try{const _0x24ca2c=JSON['parse'](_0x172879);if(typeof _0x24ca2c[_0x4c42b6(0xfa)]===_0x4c42b6(0x118)&&Number[_0x4c42b6(0x11b)](_0x24ca2c[_0x4c42b6(0xfa)]))return{'dbId':_0x24ca2c[_0x4c42b6(0xfa)],'dbName':_0x24ca2c['dbName']};}catch{}throw CliErrors[_0x4c42b6(0x117)](_0x4c42b6(0xe8)+_0x172879);}function resolveProvidedDbId(_0x4e33b9){const _0x4beb13=a152_0x34191c,_0x314485=_0x4e33b9[_0x4beb13(0xfb)](_0x4beb13(0xe4));if(typeof _0x314485===_0x4beb13(0x118)&&Number[_0x4beb13(0x11b)](_0x314485))return _0x314485;return undefined;}
1
+ const a154_0x157fd8=a154_0x5587;(function(_0x588dd0,_0x329d63){const _0x20a8a4=a154_0x5587,_0x2927f8=_0x588dd0();while(!![]){try{const _0x298708=-parseInt(_0x20a8a4(0x11b))/0x1+parseInt(_0x20a8a4(0x102))/0x2*(-parseInt(_0x20a8a4(0xf8))/0x3)+parseInt(_0x20a8a4(0x111))/0x4+parseInt(_0x20a8a4(0xff))/0x5+parseInt(_0x20a8a4(0x10a))/0x6*(-parseInt(_0x20a8a4(0xf6))/0x7)+-parseInt(_0x20a8a4(0xfe))/0x8+parseInt(_0x20a8a4(0x119))/0x9;if(_0x298708===_0x329d63)break;else _0x2927f8['push'](_0x2927f8['shift']());}catch(_0x57e2b2){_0x2927f8['push'](_0x2927f8['shift']());}}}(a154_0x18dd,0xaf58a));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';function a154_0x5587(_0x470e8e,_0x151cbf){_0x470e8e=_0x470e8e-0xf2;const _0x18dda6=a154_0x18dd();let _0x55873d=_0x18dda6[_0x470e8e];return _0x55873d;}import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';function a154_0x18dd(){const _0x215a85=['mode','Invalid\x20database\x20selection\x20payload:\x20','sqlName','description','trim','SQL\x20query\x20display\x20name','12800529JRTvZc','普通\x20SQL(sql)','166614OIVPxy','dbId','high-risk-write','isFinite','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','flagMissing','dbName','sqlCode','请选择本地\x20SQL\x20模式:','length','catch','sqlRoot','map','/smartapi/custom/saveUserCustomSql','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','mybatisXml','Local\x20SQL\x20file\x20mode','sql','lastSync','validation','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','__manual__','dbId\x20必须为正整数','File\x20already\x20exists:\x20','请输入\x20SQL\x20名称:','请选择目标数据库:','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','<server-generated-sqlCode>','POST','nonInteractive','Created\x20SQL\x20query\x20','SQL\x20名称不能为空','6293UqnkUf','utf8','3Lfnphj','SELECT\x201\x20AS\x20id;','dbId\x20不能为空','lockFilePath','MyBatis\x20XML(mybatisXml)','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','7993072LBsTdQ','2479680brWdyJ','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','适合带动态标签的\x20MyBatis\x20XML\x20SQL','232802yDmVkZ','number','str','db-id','string','new','sqlRootDir','✎\x20手动输入\x20dbId','2316Lzorzf','join','sqls','toISOString','name','isInteger','appCode','1716656mWdxbl','</select>'];a154_0x18dd=function(){return _0x215a85;};return a154_0x18dd();}import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x3b47b7){const _0x56bc8e=a154_0x5587;if(_0x3b47b7===_0x56bc8e(0x12a))return[_0x56bc8e(0x129),'\x20\x20SELECT\x201\x20AS\x20id',_0x56bc8e(0x112),''][_0x56bc8e(0x10b)]('\x0a');return[_0x56bc8e(0xf9),''][_0x56bc8e(0x10b)]('\x0a');}export const sqlCreate={'service':a154_0x157fd8(0x12c),'command':'create','description':'Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','risk':a154_0x157fd8(0x11d),'flags':[{'name':a154_0x157fd8(0x10e),'type':a154_0x157fd8(0x106),'description':a154_0x157fd8(0x118)},{'name':'db-id','type':'number','description':'Target\x20database\x20ID'},{'name':'mode','type':'string','enum':['sql','mybatisXml'],'description':a154_0x157fd8(0x12b)}],async 'validate'(_0x2d04bd){const _0x2b10d8=a154_0x157fd8;if(!_0x2d04bd[_0x2b10d8(0xf3)])return;if(!_0x2d04bd[_0x2b10d8(0x104)](_0x2b10d8(0x10e))[_0x2b10d8(0x117)]())throw CliErrors[_0x2b10d8(0x120)](_0x2b10d8(0x10e),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x3a079e=resolveProvidedDbId(_0x2d04bd);if(typeof _0x3a079e!=='number'||!Number[_0x2b10d8(0x11e)](_0x3a079e)||_0x3a079e<=0x0)throw CliErrors['flagMissing'](_0x2b10d8(0x105),_0x2b10d8(0x135));if(!_0x2d04bd['str'](_0x2b10d8(0x113))[_0x2b10d8(0x117)]())throw CliErrors[_0x2b10d8(0x120)]('mode',_0x2b10d8(0x12f));},async 'dryRun'(_0x5a7cad){const _0x3b6220=a154_0x157fd8,_0x137ed5=loadSqlProjectConfig(_0x5a7cad[_0x3b6220(0x110)]),{sqlName:_0x5c3bed,dbId:_0x59d3aa,dbName:_0x2c319f,mode:_0x40b509}=await resolveSqlNewInputs(_0x5a7cad),_0x2f061e=buildSqlRelativePath(_0x3b6220(0x136),_0x5c3bed,_0x2c319f,_0x40b509,_0x59d3aa),_0x5223cd=_0x137ed5[_0x3b6220(0x108)]+'/'+_0x2f061e;return{'method':_0x3b6220(0xf2),'url':_0x3b6220(0x128),'body':{'appCode':_0x5a7cad[_0x3b6220(0x110)],'sqlName':_0x5c3bed,'dbId':_0x59d3aa,'mode':_0x40b509,'localPath':_0x5223cd},'description':_0x3b6220(0x11f)+_0x137ed5[_0x3b6220(0x108)]};},async 'execute'(_0x19e64c){const _0x313ee3=a154_0x157fd8,_0xf5370=loadSqlProjectConfig(_0x19e64c['appCode']),{sqlName:_0x13dabd,dbId:_0x4fd21b,dbName:_0x4dd741,mode:_0x5d044c}=await resolveSqlNewInputs(_0x19e64c),_0x978e14=generateSqlTemplate(_0x5d044c),_0xdf8345=await createSqlQuery({'appCode':_0x19e64c[_0x313ee3(0x110)],'sqlName':_0x13dabd,'dbId':_0x4fd21b,'sqlContent':_0x978e14}),_0x20221a=ensureRemoteSqlContent(_0xdf8345),_0x2d6996=_0x4dd741||await getDbName(_0x19e64c[_0x313ee3(0x110)],_0x4fd21b)[_0x313ee3(0x125)](()=>undefined),_0x21c158=buildSqlRelativePath(_0xdf8345['sqlCode'],_0xdf8345[_0x313ee3(0x115)],_0x2d6996,_0x5d044c,_0x4fd21b),_0x32b715=_0xf5370[_0x313ee3(0x108)]+'/'+_0x21c158,_0x48ad3a=buildLocalSqlFileContent({'sqlCode':_0xdf8345['sqlCode'],'sqlName':_0xdf8345[_0x313ee3(0x115)],'dbId':_0xdf8345['dbId']},_0x20221a,{'dbName':_0x2d6996,'mode':_0x5d044c,'syncedAt':new Date()[_0x313ee3(0x10d)](),'description':_0xdf8345[_0x313ee3(0x116)]});if(await fileExists(_0x32b715))throw CliErrors[_0x313ee3(0x12e)](_0x313ee3(0x132)+_0x32b715);await ensureParentDirectory(_0x32b715),await writeFile(_0x32b715,_0x48ad3a,_0x313ee3(0xf7));const _0x13a539=await readSqlLockFile(_0xf5370[_0x313ee3(0xfb)]),{lockData:_0xd4c6a2,appLock:_0x58fd82}=ensureSqlLockScope(_0x13a539??createEmptySqlLock(),_0xf5370[_0x313ee3(0x110)],_0xf5370[_0x313ee3(0x126)],_0x313ee3(0x107));return _0x58fd82[_0x313ee3(0x10c)][_0xdf8345[_0x313ee3(0x122)]]={...buildSqlLockEntry(_0xdf8345,_0x20221a,computeSqlContentHash(_0x48ad3a),{'dbName':_0x2d6996}),'path':_0x21c158,'mode':_0x5d044c},_0x58fd82[_0x313ee3(0x12d)]=new Date()[_0x313ee3(0x10d)](),await writeSqlLockFile(_0xf5370[_0x313ee3(0xfb)],_0xd4c6a2),{'ok':!![],'data':{'id':_0xdf8345['id'],'sqlCode':_0xdf8345['sqlCode'],'sqlName':_0xdf8345[_0x313ee3(0x115)],'dbId':_0xdf8345[_0x313ee3(0x11c)],'path':_0x32b715,'mode':_0x5d044c},'message':_0x313ee3(0xf4)+_0xdf8345[_0x313ee3(0x122)]};}};async function resolveSqlNewInputs(_0x5c8be3){const _0x523254=await resolveSqlNameInput(_0x5c8be3),{dbId:_0x11fe8c,dbName:_0x2a0130}=await resolveDbSelection(_0x5c8be3),_0x398c70=await resolveSqlModeInput(_0x5c8be3);return{'sqlName':_0x523254,'dbId':_0x11fe8c,'dbName':_0x2a0130,'mode':_0x398c70};}async function resolveSqlNameInput(_0x325837){const _0x5c6ee9=a154_0x157fd8,_0x19c06f=_0x325837['str']('name')['trim']();if(_0x19c06f)return _0x19c06f;if(_0x325837[_0x5c6ee9(0xf3)])throw CliErrors[_0x5c6ee9(0x120)]('name',_0x5c6ee9(0x100));return(await input({'message':_0x5c6ee9(0x133),'validate':_0x28bf2d=>_0x28bf2d['trim']()?!![]:_0x5c6ee9(0xf5)}))['trim']();}async function resolveDbSelection(_0x3e636c){const _0x1e6244=a154_0x157fd8,_0x2c47f1=resolveProvidedDbId(_0x3e636c);if(typeof _0x2c47f1==='number'&&Number[_0x1e6244(0x11e)](_0x2c47f1)&&_0x2c47f1>0x0)return{'dbId':_0x2c47f1,'dbName':await getDbName(_0x3e636c[_0x1e6244(0x110)],_0x2c47f1)[_0x1e6244(0x125)](()=>undefined)};if(_0x3e636c['nonInteractive'])throw CliErrors[_0x1e6244(0x120)]('db-id','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x12658a=await listDatabases(_0x3e636c[_0x1e6244(0x110)])[_0x1e6244(0x125)](()=>[]);if(_0x12658a[_0x1e6244(0x124)]===0x1)return{'dbId':_0x12658a[0x0]['dbId'],'dbName':_0x12658a[0x0][_0x1e6244(0x121)]};if(_0x12658a[_0x1e6244(0x124)]>0x1){const _0x4a0a2a=await select({'message':_0x1e6244(0x134),'choices':[..._0x12658a[_0x1e6244(0x127)](_0x2bc70d=>({'name':_0x2bc70d[_0x1e6244(0x121)]+'\x20('+_0x2bc70d['dbId']+')','value':serializeDbSelection(_0x2bc70d)})),{'name':_0x1e6244(0x109),'value':_0x1e6244(0x130)}]});if(_0x4a0a2a!==_0x1e6244(0x130))return deserializeDbSelection(_0x4a0a2a);}const _0x2e6331=await input({'message':'请输入目标数据库\x20dbId:','validate':_0x2dffa6=>{const _0x235958=_0x1e6244,_0x312f12=_0x2dffa6['trim']();if(!_0x312f12)return _0x235958(0xfa);const _0x2d4191=Number(_0x312f12);if(!Number[_0x235958(0x10f)](_0x2d4191)||_0x2d4191<=0x0)return _0x235958(0x131);return!![];}});return{'dbId':Number(_0x2e6331['trim']())};}async function resolveSqlModeInput(_0x1f5b1b){const _0x48cdf7=a154_0x157fd8,_0x3cae12=_0x1f5b1b['str'](_0x48cdf7(0x113))[_0x48cdf7(0x117)]();if(_0x3cae12===_0x48cdf7(0x12c)||_0x3cae12===_0x48cdf7(0x12a))return _0x3cae12;if(_0x1f5b1b[_0x48cdf7(0xf3)])throw CliErrors[_0x48cdf7(0x120)](_0x48cdf7(0x113),_0x48cdf7(0x12f));return await select({'message':_0x48cdf7(0x123),'choices':[{'name':_0x48cdf7(0x11a),'value':'sql','description':_0x48cdf7(0xfd)},{'name':_0x48cdf7(0xfc),'value':_0x48cdf7(0x12a),'description':_0x48cdf7(0x101)}]});}function serializeDbSelection(_0x4fbbab){const _0x4cb7da=a154_0x157fd8;return JSON['stringify']({'dbId':_0x4fbbab[_0x4cb7da(0x11c)],'dbName':_0x4fbbab[_0x4cb7da(0x121)]});}function deserializeDbSelection(_0xb704f4){const _0x19d23f=a154_0x157fd8;try{const _0x46a84e=JSON['parse'](_0xb704f4);if(typeof _0x46a84e[_0x19d23f(0x11c)]===_0x19d23f(0x103)&&Number['isFinite'](_0x46a84e[_0x19d23f(0x11c)]))return{'dbId':_0x46a84e['dbId'],'dbName':_0x46a84e[_0x19d23f(0x121)]};}catch{}throw CliErrors[_0x19d23f(0x12e)](_0x19d23f(0x114)+_0xb704f4);}function resolveProvidedDbId(_0x373a4d){const _0x3cfd0f=a154_0x157fd8,_0x1584f8=_0x373a4d['flag']('db-id');if(typeof _0x1584f8===_0x3cfd0f(0x103)&&Number['isFinite'](_0x1584f8))return _0x1584f8;return undefined;}
@@ -1 +1 @@
1
- function a153_0x7f70(){const _0x13f485=['trashedTo','projectRoot','SQL\x20lock\x20file\x20not\x20found.','appCode','POST','6965490okMPNX','sqlRootDir','delete','\x20(local\x20file\x20moved\x20to\x20trash)','validation','lockFilePath','trashDir','sqls','Deleted\x20','sqlcode','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','5298460DIlmfm','9HEYaCV','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','72JNBovQ','sqlRoot','lastSync','replace','fromEntries','remoteId','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','2645370UWsPSU','Would\x20delete\x20SQL\x20','length','toISOString','str','1003778oUlIZi','973686BuTjBt','1990377PsiefP','5180658YsPajP','filter'];a153_0x7f70=function(){return _0x13f485;};return a153_0x7f70();}const a153_0x4f5b78=a153_0x4798;(function(_0x52b148,_0x46fe83){const _0x660ae0=a153_0x4798,_0x3f9036=_0x52b148();while(!![]){try{const _0x5c5795=-parseInt(_0x660ae0(0x11f))/0x1+-parseInt(_0x660ae0(0x11e))/0x2*(-parseInt(_0x660ae0(0x110))/0x3)+parseInt(_0x660ae0(0x134))/0x4+parseInt(_0x660ae0(0x119))/0x5+parseInt(_0x660ae0(0x128))/0x6+-parseInt(_0x660ae0(0x121))/0x7+-parseInt(_0x660ae0(0x112))/0x8*(parseInt(_0x660ae0(0x120))/0x9);if(_0x5c5795===_0x46fe83)break;else _0x3f9036['push'](_0x3f9036['shift']());}catch(_0x2b804c){_0x3f9036['push'](_0x3f9036['shift']());}}}(a153_0x7f70,0xc73f2));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{fileExists}from'../../core/bff/file-system.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDelete={'service':'sql','command':a153_0x4f5b78(0x12a),'description':a153_0x4f5b78(0x118),'risk':'high-risk-write','flags':[SQLCODE_FLAG],async 'validate'(_0x52fdc4){const _0x3e25ff=a153_0x4f5b78,_0x5c0d91=loadSqlProjectConfig(_0x52fdc4[_0x3e25ff(0x126)]),_0x5043a=await readSqlLockFile(_0x5c0d91['lockFilePath']);if(!_0x5043a)throw CliErrors[_0x3e25ff(0x12c)](_0x3e25ff(0x132));},async 'dryRun'(_0x312b04){const _0x2ec200=a153_0x4f5b78,_0x3eab94=loadSqlProjectConfig(_0x312b04[_0x2ec200(0x126)]),_0x30bebb=await readSqlLockFile(_0x3eab94[_0x2ec200(0x12d)]);if(!_0x30bebb)throw CliErrors['validation'](_0x2ec200(0x132));const {appLock:_0x159ab5}=ensureSqlLockScope(_0x30bebb,_0x312b04[_0x2ec200(0x126)],_0x3eab94[_0x2ec200(0x113)],_0x2ec200(0x12a)),_0x39c1e7=_0x312b04[_0x2ec200(0x11d)](_0x2ec200(0x131)),_0x3fe166=_0x159ab5[_0x2ec200(0x12f)][_0x39c1e7];if(!_0x3fe166)throw CliErrors[_0x2ec200(0x12c)](_0x2ec200(0x133)+_0x39c1e7+'\x22.');return{'method':_0x2ec200(0x127),'url':'/smartapi/custom/deleteUserCustomSql','body':{'sqlCode':_0x39c1e7,'id':_0x3fe166[_0x2ec200(0x117)],'localPath':resolveLocalSqlFilePath(_0x3eab94,_0x39c1e7,_0x3fe166)},'description':_0x2ec200(0x11a)+_0x39c1e7+_0x2ec200(0x111)+_0x3eab94[_0x2ec200(0x12e)]};},async 'execute'(_0x365748){const _0x3991e6=a153_0x4f5b78,_0x24918e=loadSqlProjectConfig(_0x365748[_0x3991e6(0x126)]),_0x3268e3=await readSqlLockFile(_0x24918e['lockFilePath']);if(!_0x3268e3)throw CliErrors[_0x3991e6(0x12c)](_0x3991e6(0x125));const {lockData:_0x29d8ce,appLock:_0x4324f0}=ensureSqlLockScope(_0x3268e3,_0x365748[_0x3991e6(0x126)],_0x24918e['sqlRoot'],_0x3991e6(0x12a)),_0x2f2dca=_0x365748[_0x3991e6(0x11d)](_0x3991e6(0x131)),_0x299da7=_0x4324f0[_0x3991e6(0x12f)][_0x2f2dca];if(!_0x299da7)throw CliErrors[_0x3991e6(0x12c)](_0x3991e6(0x133)+_0x2f2dca+'\x22.');await deleteSqlQuery({'id':_0x299da7[_0x3991e6(0x117)],'sqlCode':_0x2f2dca}),_0x4324f0[_0x3991e6(0x12f)]=Object[_0x3991e6(0x116)](Object['entries'](_0x4324f0[_0x3991e6(0x12f)])[_0x3991e6(0x122)](([_0x4c4c26])=>_0x4c4c26!==_0x2f2dca)),_0x4324f0[_0x3991e6(0x114)]=new Date()[_0x3991e6(0x11c)](),await writeSqlLockFile(_0x24918e[_0x3991e6(0x12d)],_0x29d8ce);const _0x2b88d0=resolveLocalSqlFilePath(_0x24918e,_0x2f2dca,_0x299da7);let _0x5c946a;await fileExists(_0x2b88d0)&&(_0x5c946a=await moveToTrash(_0x24918e[_0x3991e6(0x124)],_0x24918e[_0x3991e6(0x12e)],_0x2b88d0),await cleanupEmptyDirectories(dirname(_0x2b88d0),_0x24918e[_0x3991e6(0x129)]));const _0x4b2cf6={'deleted':_0x2f2dca,'remoteId':_0x299da7['remoteId']};if(_0x5c946a)_0x4b2cf6[_0x3991e6(0x123)]=_0x5c946a;return{'ok':!![],'data':_0x4b2cf6,'message':_0x3991e6(0x130)+_0x2f2dca+(_0x5c946a?_0x3991e6(0x12b):'')};}};function a153_0x4798(_0x18b8b1,_0x4b8259){_0x18b8b1=_0x18b8b1-0x110;const _0x7f703a=a153_0x7f70();let _0x4798fa=_0x7f703a[_0x18b8b1];return _0x4798fa;}async function moveToTrash(_0x542dfd,_0x321a56,_0x184c2){const _0x490207=a153_0x4f5b78,_0x2a057f=new Date()[_0x490207(0x11c)]()[_0x490207(0x115)](/[:.]/g,'-'),_0x2729ea=relative(_0x542dfd,_0x184c2),_0x296cf1=join(_0x321a56,_0x2a057f,_0x2729ea);return await mkdir(dirname(_0x296cf1),{'recursive':!![]}),await rename(_0x184c2,_0x296cf1),_0x296cf1;}async function cleanupEmptyDirectories(_0xdeb603,_0x538875){const _0x9441d8=a153_0x4f5b78;let _0x49f072=resolve(_0xdeb603);const _0x269ae6=resolve(_0x538875);while(_0x49f072['startsWith'](''+_0x269ae6+sep)||_0x49f072===_0x269ae6){if(_0x49f072===_0x269ae6)return;try{const _0x206d6c=await readdir(_0x49f072);if(_0x206d6c[_0x9441d8(0x11b)]>0x0)return;await rmdir(_0x49f072);}catch{return;}_0x49f072=dirname(_0x49f072);}}
1
+ const a155_0x5ab722=a155_0x4f42;(function(_0x59943c,_0x53d6a6){const _0x5c9e10=a155_0x4f42,_0x5ea636=_0x59943c();while(!![]){try{const _0x3bef4d=-parseInt(_0x5c9e10(0x19a))/0x1+-parseInt(_0x5c9e10(0x1b0))/0x2*(-parseInt(_0x5c9e10(0x1b8))/0x3)+parseInt(_0x5c9e10(0x19f))/0x4*(-parseInt(_0x5c9e10(0x1a3))/0x5)+parseInt(_0x5c9e10(0x1aa))/0x6*(parseInt(_0x5c9e10(0x196))/0x7)+parseInt(_0x5c9e10(0x1af))/0x8+parseInt(_0x5c9e10(0x1a0))/0x9+-parseInt(_0x5c9e10(0x192))/0xa;if(_0x3bef4d===_0x53d6a6)break;else _0x5ea636['push'](_0x5ea636['shift']());}catch(_0xf0e6b5){_0x5ea636['push'](_0x5ea636['shift']());}}}(a155_0x5142,0xe9e54));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteSqlQuery}from'../../core/api-client.js';function a155_0x5142(){const _0x46858d=['8sUvySv','9394542HmWEut','SQL\x20lock\x20file\x20not\x20found.','sqlRoot','2423605MdwRwt','filter','trashDir','/smartapi/custom/deleteUserCustomSql','validation','str','trashedTo','508764lZSGju','replace','projectRoot','entries','sqlcode','12814288OfFIIv','12tttQPU','startsWith','delete','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','\x20(local\x20file\x20moved\x20to\x20trash)','appCode','sqls','Would\x20delete\x20SQL\x20','303699IAaMqd','high-risk-write','5336450PDzaGx','fromEntries','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','POST','84QmIdmJ','Deleted\x20','remoteId','length','1809427quGmjS','lockFilePath','toISOString','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20'];a155_0x5142=function(){return _0x46858d;};return a155_0x5142();}import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{fileExists}from'../../core/bff/file-system.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{CliErrors}from'../../errors.js';function a155_0x4f42(_0x3c00df,_0x4107bb){_0x3c00df=_0x3c00df-0x191;const _0x514254=a155_0x5142();let _0x4f423b=_0x514254[_0x3c00df];return _0x4f423b;}import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDelete={'service':'sql','command':'delete','description':a155_0x5ab722(0x1b3),'risk':a155_0x5ab722(0x191),'flags':[SQLCODE_FLAG],async 'validate'(_0x284df7){const _0x42732e=a155_0x5ab722,_0x22021e=loadSqlProjectConfig(_0x284df7[_0x42732e(0x1b5)]),_0x102cf5=await readSqlLockFile(_0x22021e[_0x42732e(0x19b)]);if(!_0x102cf5)throw CliErrors[_0x42732e(0x1a7)](_0x42732e(0x194));},async 'dryRun'(_0x2b925a){const _0x52dbe5=a155_0x5ab722,_0x3d24b6=loadSqlProjectConfig(_0x2b925a[_0x52dbe5(0x1b5)]),_0x3d968b=await readSqlLockFile(_0x3d24b6['lockFilePath']);if(!_0x3d968b)throw CliErrors[_0x52dbe5(0x1a7)](_0x52dbe5(0x194));const {appLock:_0x364f84}=ensureSqlLockScope(_0x3d968b,_0x2b925a[_0x52dbe5(0x1b5)],_0x3d24b6[_0x52dbe5(0x1a2)],_0x52dbe5(0x1b2)),_0x30b808=_0x2b925a[_0x52dbe5(0x1a8)](_0x52dbe5(0x1ae)),_0xf278bd=_0x364f84[_0x52dbe5(0x1b6)][_0x30b808];if(!_0xf278bd)throw CliErrors[_0x52dbe5(0x1a7)](_0x52dbe5(0x19d)+_0x30b808+'\x22.');return{'method':_0x52dbe5(0x195),'url':_0x52dbe5(0x1a6),'body':{'sqlCode':_0x30b808,'id':_0xf278bd[_0x52dbe5(0x198)],'localPath':resolveLocalSqlFilePath(_0x3d24b6,_0x30b808,_0xf278bd)},'description':_0x52dbe5(0x1b7)+_0x30b808+_0x52dbe5(0x19e)+_0x3d24b6[_0x52dbe5(0x1a5)]};},async 'execute'(_0x5388ae){const _0x16b597=a155_0x5ab722,_0x5a53e7=loadSqlProjectConfig(_0x5388ae['appCode']),_0x243cf3=await readSqlLockFile(_0x5a53e7['lockFilePath']);if(!_0x243cf3)throw CliErrors[_0x16b597(0x1a7)](_0x16b597(0x1a1));const {lockData:_0x36b54d,appLock:_0x36c3bd}=ensureSqlLockScope(_0x243cf3,_0x5388ae['appCode'],_0x5a53e7[_0x16b597(0x1a2)],_0x16b597(0x1b2)),_0xe059c9=_0x5388ae['str']('sqlcode'),_0x741ec0=_0x36c3bd[_0x16b597(0x1b6)][_0xe059c9];if(!_0x741ec0)throw CliErrors['validation'](_0x16b597(0x19d)+_0xe059c9+'\x22.');await deleteSqlQuery({'id':_0x741ec0[_0x16b597(0x198)],'sqlCode':_0xe059c9}),_0x36c3bd[_0x16b597(0x1b6)]=Object[_0x16b597(0x193)](Object[_0x16b597(0x1ad)](_0x36c3bd['sqls'])[_0x16b597(0x1a4)](([_0x4293ac])=>_0x4293ac!==_0xe059c9)),_0x36c3bd['lastSync']=new Date()[_0x16b597(0x19c)](),await writeSqlLockFile(_0x5a53e7[_0x16b597(0x19b)],_0x36b54d);const _0x570823=resolveLocalSqlFilePath(_0x5a53e7,_0xe059c9,_0x741ec0);let _0x36f91c;await fileExists(_0x570823)&&(_0x36f91c=await moveToTrash(_0x5a53e7[_0x16b597(0x1ac)],_0x5a53e7[_0x16b597(0x1a5)],_0x570823),await cleanupEmptyDirectories(dirname(_0x570823),_0x5a53e7['sqlRootDir']));const _0x2e2fff={'deleted':_0xe059c9,'remoteId':_0x741ec0['remoteId']};if(_0x36f91c)_0x2e2fff[_0x16b597(0x1a9)]=_0x36f91c;return{'ok':!![],'data':_0x2e2fff,'message':_0x16b597(0x197)+_0xe059c9+(_0x36f91c?_0x16b597(0x1b4):'')};}};async function moveToTrash(_0x31f384,_0x42abfb,_0x24b68b){const _0x4656ae=a155_0x5ab722,_0x4c818a=new Date()[_0x4656ae(0x19c)]()[_0x4656ae(0x1ab)](/[:.]/g,'-'),_0x4d195d=relative(_0x31f384,_0x24b68b),_0x4bb0d=join(_0x42abfb,_0x4c818a,_0x4d195d);return await mkdir(dirname(_0x4bb0d),{'recursive':!![]}),await rename(_0x24b68b,_0x4bb0d),_0x4bb0d;}async function cleanupEmptyDirectories(_0x1f8630,_0x3a3d6c){const _0xeafa8a=a155_0x5ab722;let _0x49ce47=resolve(_0x1f8630);const _0x467212=resolve(_0x3a3d6c);while(_0x49ce47[_0xeafa8a(0x1b1)](''+_0x467212+sep)||_0x49ce47===_0x467212){if(_0x49ce47===_0x467212)return;try{const _0x7e0c9a=await readdir(_0x49ce47);if(_0x7e0c9a[_0xeafa8a(0x199)]>0x0)return;await rmdir(_0x49ce47);}catch{return;}_0x49ce47=dirname(_0x49ce47);}}