@lovrabet/rabetbase-cli 2.3.7 → 2.3.8

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 (245) 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 -1
  79. package/lib/commands/db/analyze-batch-plan.js +1 -1
  80. package/lib/commands/db/analyze-cancel.js +1 -1
  81. package/lib/commands/db/analyze-start.js +1 -1
  82. package/lib/commands/db/analyze-status.js +1 -1
  83. package/lib/commands/db/create.js +1 -1
  84. package/lib/commands/db/delete.js +1 -1
  85. package/lib/commands/db/detail.js +1 -1
  86. package/lib/commands/db/diff.js +1 -1
  87. package/lib/commands/db/index.js +1 -1
  88. package/lib/commands/db/list.js +1 -1
  89. package/lib/commands/db/shared.js +1 -1
  90. package/lib/commands/db/tables.js +1 -1
  91. package/lib/commands/db/test.js +1 -1
  92. package/lib/commands/db/update.js +1 -1
  93. package/lib/commands/doctor.js +1 -1
  94. package/lib/commands/file/index.js +1 -1
  95. package/lib/commands/init/index.js +1 -1
  96. package/lib/commands/issue/index.js +1 -1
  97. package/lib/commands/issue/nudge.js +1 -1
  98. package/lib/commands/issue/report.js +1 -1
  99. package/lib/commands/issue/shared.js +1 -1
  100. package/lib/commands/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/notification/config-list.js +1 -1
  115. package/lib/commands/notification/index.js +1 -1
  116. package/lib/commands/page/generate-start.js +1 -1
  117. package/lib/commands/page/generate-status.js +1 -1
  118. package/lib/commands/page/index.js +1 -1
  119. package/lib/commands/page/pull.js +1 -1
  120. package/lib/commands/page/push.js +1 -1
  121. package/lib/commands/page/relation-audit.js +1 -1
  122. package/lib/commands/page/shared.js +1 -1
  123. package/lib/commands/page/standard-page-status.js +1 -1
  124. package/lib/commands/page/sync.js +1 -1
  125. package/lib/commands/permit/index.js +1 -1
  126. package/lib/commands/permit/page-get.js +1 -1
  127. package/lib/commands/permit/page-set.js +1 -1
  128. package/lib/commands/permit/role-apis-set.js +1 -1
  129. package/lib/commands/permit/role-menus-set.js +1 -1
  130. package/lib/commands/permit/role-menus.js +1 -1
  131. package/lib/commands/permit/shared.js +1 -1
  132. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  133. package/lib/commands/project/create/format-elapsed.js +1 -1
  134. package/lib/commands/project/create/main.js +1 -1
  135. package/lib/commands/project/create/non-interactive.js +1 -1
  136. package/lib/commands/project/create/project-template-path.js +1 -1
  137. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  138. package/lib/commands/project/create/use-format-code.js +1 -1
  139. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  140. package/lib/commands/project/index.js +1 -1
  141. package/lib/commands/project/init.js +1 -1
  142. package/lib/commands/project/upgrade.js +1 -1
  143. package/lib/commands/registry.js +1 -1
  144. package/lib/commands/role/create.js +1 -1
  145. package/lib/commands/role/delete.js +1 -1
  146. package/lib/commands/role/detail.js +1 -1
  147. package/lib/commands/role/index.js +1 -1
  148. package/lib/commands/role/list.js +1 -1
  149. package/lib/commands/role/shared.js +1 -1
  150. package/lib/commands/role/update.js +1 -1
  151. package/lib/commands/role/user-add.js +1 -1
  152. package/lib/commands/role/user-remove.js +1 -1
  153. package/lib/commands/role/user-resolve.js +1 -1
  154. package/lib/commands/run/index.js +1 -1
  155. package/lib/commands/schema.js +1 -1
  156. package/lib/commands/sql/create.js +1 -1
  157. package/lib/commands/sql/delete.js +1 -1
  158. package/lib/commands/sql/detail.js +1 -1
  159. package/lib/commands/sql/exec.js +1 -1
  160. package/lib/commands/sql/index.js +1 -1
  161. package/lib/commands/sql/list.js +1 -1
  162. package/lib/commands/sql/pull.js +1 -1
  163. package/lib/commands/sql/push.js +1 -1
  164. package/lib/commands/sql/save.js +1 -1
  165. package/lib/commands/sql/shared.js +1 -1
  166. package/lib/commands/sql/status.js +1 -1
  167. package/lib/commands/sql/validate.js +1 -1
  168. package/lib/commands/workspace/add.js +1 -1
  169. package/lib/commands/workspace/index.js +1 -1
  170. package/lib/commands/workspace/remove.js +1 -1
  171. package/lib/config/schema.js +1 -1
  172. package/lib/constant/cdn.js +1 -1
  173. package/lib/constant/cli.js +1 -1
  174. package/lib/constant/defaults.js +1 -1
  175. package/lib/constant/domain.js +1 -1
  176. package/lib/constant/env.js +1 -1
  177. package/lib/constant/output.js +1 -1
  178. package/lib/constant/paths.js +1 -1
  179. package/lib/constant/risk.js +1 -1
  180. package/lib/context/app-resolver.js +1 -1
  181. package/lib/context/auth-resolver.js +1 -1
  182. package/lib/context/config-loader.js +1 -1
  183. package/lib/context.js +1 -1
  184. package/lib/core/alias-resolver.js +1 -1
  185. package/lib/core/api-client.js +1 -1
  186. package/lib/core/bff/config.js +1 -1
  187. package/lib/core/bff/file-system.js +1 -1
  188. package/lib/core/bff/hash.js +1 -1
  189. package/lib/core/bff/lock.js +1 -1
  190. package/lib/core/bff/utils.js +1 -1
  191. package/lib/core/db-resolver.js +1 -1
  192. package/lib/core/page/file-system.js +1 -1
  193. package/lib/core/page/hash.js +1 -1
  194. package/lib/core/page/lock.js +1 -1
  195. package/lib/core/sql-sync/config.js +1 -1
  196. package/lib/core/sql-sync/file-system.js +1 -1
  197. package/lib/core/sql-sync/hash.js +1 -1
  198. package/lib/core/sql-sync/lock.js +1 -1
  199. package/lib/core/sql-sync/utils.js +1 -1
  200. package/lib/core/sql-validator.js +1 -1
  201. package/lib/errors.js +1 -1
  202. package/lib/framework/build-all-flags.js +1 -1
  203. package/lib/framework/flags.js +1 -1
  204. package/lib/framework/help.js +1 -1
  205. package/lib/framework/index.js +1 -1
  206. package/lib/framework/output.js +1 -1
  207. package/lib/framework/response.js +1 -1
  208. package/lib/framework/runner-alias.js +1 -1
  209. package/lib/framework/runner.js +1 -1
  210. package/lib/framework/schema-export.js +1 -1
  211. package/lib/framework/types.js +1 -1
  212. package/lib/generated/build-info.js +1 -1
  213. package/lib/help.js +1 -1
  214. package/lib/skills/main.js +1 -1
  215. package/lib/skills/npx-skills-add.js +1 -1
  216. package/lib/telemetry/cli-command-trace.js +1 -1
  217. package/lib/telemetry/cli-help-trace.js +1 -1
  218. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  219. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  220. package/lib/telemetry/send-cli-trace-log.js +1 -1
  221. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  222. package/lib/utils/ai_config.js +1 -1
  223. package/lib/utils/apply-jq-filter.js +1 -1
  224. package/lib/utils/cdn-config.js +1 -1
  225. package/lib/utils/check-sdk-version.js +1 -1
  226. package/lib/utils/cli-version-check.js +1 -1
  227. package/lib/utils/cli-version-policy.js +1 -1
  228. package/lib/utils/config.js +1 -1
  229. package/lib/utils/copy-directory.js +1 -1
  230. package/lib/utils/entity-with-id.js +1 -1
  231. package/lib/utils/file-utils.js +1 -1
  232. package/lib/utils/guides-cdn.js +1 -1
  233. package/lib/utils/http-client.js +1 -1
  234. package/lib/utils/is-non-interactive.js +1 -1
  235. package/lib/utils/logger.js +1 -1
  236. package/lib/utils/params.js +1 -1
  237. package/lib/utils/platform.js +1 -1
  238. package/lib/utils/rules-cdn.js +1 -1
  239. package/lib/utils/sleep.js +1 -1
  240. package/lib/utils/template-replacer.js +1 -1
  241. package/lib/utils/update-notice.js +1 -1
  242. package/lib/utils/version.js +1 -1
  243. package/lib/utils/with-active-cookie.js +1 -1
  244. package/lib/utils/write-cli-side-channel.js +1 -1
  245. package/package.json +1 -1
@@ -1 +1 @@
1
- const a143_0x3a4a37=a143_0x3af6;(function(_0x3bff0a,_0x2179ac){const _0x32ac75=a143_0x3af6,_0x279bbb=_0x3bff0a();while(!![]){try{const _0x16a300=-parseInt(_0x32ac75(0x146))/0x1*(parseInt(_0x32ac75(0x137))/0x2)+-parseInt(_0x32ac75(0x147))/0x3*(parseInt(_0x32ac75(0x12e))/0x4)+-parseInt(_0x32ac75(0x11d))/0x5+parseInt(_0x32ac75(0x11f))/0x6+-parseInt(_0x32ac75(0x126))/0x7+-parseInt(_0x32ac75(0x130))/0x8*(-parseInt(_0x32ac75(0x124))/0x9)+-parseInt(_0x32ac75(0x135))/0xa*(-parseInt(_0x32ac75(0x120))/0xb);if(_0x16a300===_0x2179ac)break;else _0x279bbb['push'](_0x279bbb['shift']());}catch(_0x3e5cf4){_0x279bbb['push'](_0x279bbb['shift']());}}}(a143_0x1d9a,0xa45ea));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';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(_0x1f04d5){const _0xcce16=a143_0x3af6;for(const _0x476ae8 of _0x1f04d5){definitions[_0xcce16(0x113)](_0x476ae8[_0xcce16(0x140)]+':'+_0x476ae8[_0xcce16(0x12f)],_0x476ae8);let _0x16c4e3=serviceGroups[_0xcce16(0x143)](_0x476ae8[_0xcce16(0x140)]);!_0x16c4e3&&(_0x16c4e3=[],serviceGroups[_0xcce16(0x113)](_0x476ae8[_0xcce16(0x140)],_0x16c4e3)),_0x16c4e3['push'](_0x476ae8);}}function registerDeclarativeService(_0x5f08f6,_0x55cd3b,_0x3db168){const _0x5169c9=a143_0x3af6;registerDefinitions(_0x55cd3b);_0x3db168?.[_0x5169c9(0x134)]&&registerDefinitions([_0x3db168[_0x5169c9(0x134)]]);const _0x8e04f1=_0x434ed4=>_0x434ed4===_0x5169c9(0x10c)?'':_0x434ed4===_0x5169c9(0x117)?'\x20\x20[write]':'\x20\x20[high-risk-write]',_0x41ad42={'service':_0x55cd3b[0x0][_0x5169c9(0x140)],'label':_0x5f08f6,'commands':_0x55cd3b[_0x5169c9(0x12a)](_0x1fc2bb=>!_0x1fc2bb[_0x5169c9(0x129)])[_0x5169c9(0x12b)](_0x512544=>({'command':_0x512544[_0x5169c9(0x12f)],'description':_0x512544['description'],'tag':_0x8e04f1(_0x512544['risk'])})),'declarative':!![],'defaultCommand':_0x3db168?.['defaultCommand']??(_0x3db168?.[_0x5169c9(0x112)]?_0x55cd3b[0x0]['command']:undefined),'wildcardDef':_0x3db168?.[_0x5169c9(0x134)],'isSingleCommand':_0x3db168?.[_0x5169c9(0x112)]};serviceRegistry[_0x5169c9(0x12d)](_0x41ad42),serviceByName[_0x5169c9(0x113)](_0x41ad42[_0x5169c9(0x140)],_0x41ad42);}registerDeclarativeService(a143_0x3a4a37(0x12c),initDefinitions,{'defaultCommand':a143_0x3a4a37(0x13e),'isSingleCommand':!![]}),registerDeclarativeService(a143_0x3a4a37(0x115),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService(a143_0x3a4a37(0x118),appDefinitions),registerDeclarativeService(a143_0x3a4a37(0x111),authDefinitions,{'defaultCommand':a143_0x3a4a37(0x127)}),registerDeclarativeService(a143_0x3a4a37(0x125),datasetDefinitions),registerDeclarativeService(a143_0x3a4a37(0x123),pageDefinitions),registerDeclarativeService(a143_0x3a4a37(0x136),apiDefinitions),registerDeclarativeService(a143_0x3a4a37(0x139),dataDefinitions),registerDeclarativeService(a143_0x3a4a37(0x145),bffDefinitions),registerDeclarativeService(a143_0x3a4a37(0x13f),notificationDefinitions),registerDeclarativeService(a143_0x3a4a37(0x10f),sqlDefinitions),registerDeclarativeService(a143_0x3a4a37(0x142),dbDefinitions),registerDeclarativeService(a143_0x3a4a37(0x114),menuDefinitions),registerDeclarativeService(a143_0x3a4a37(0x10a),roleDefinitions),registerDeclarativeService(a143_0x3a4a37(0x11b),permitDefinitions),registerDeclarativeService('Runtime\x20App\x20Config\x20Management',appConfigDefinitions),registerDeclarativeService(a143_0x3a4a37(0x116),issueDefinitions),registerDeclarativeService('File',fileDefinitions),registerDeclarativeService(a143_0x3a4a37(0x11e),codegenDefinitions),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a143_0x3a4a37(0x13d),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a143_0x3a4a37(0x10d),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('CLI\x20Built-in\x20Skill',cliSkillDefinitions,{'defaultCommand':a143_0x3a4a37(0x13a)}),registerDeclarativeService(a143_0x3a4a37(0x107),logsDefinitions,{'defaultCommand':'show'}),registerDeclarativeService('Run\x20Scripts',[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a143_0x3a4a37(0x122)]-0x1];last[a143_0x3a4a37(0x105)]=[{'command':a143_0x3a4a37(0x108),'description':a143_0x3a4a37(0x10e),'tag':''}];}function a143_0x3af6(_0x1345f3,_0x5e4c33){_0x1345f3=_0x1345f3-0x105;const _0x1d9ace=a143_0x1d9a();let _0x3af673=_0x1d9ace[_0x1345f3];return _0x3af673;}export const deprecatedAliases={'create':{'service':a143_0x3a4a37(0x133),'command':'create'},'start':{'service':a143_0x3a4a37(0x13e),'command':'start'},'build':{'service':a143_0x3a4a37(0x13e),'command':'build'},'preview':{'service':a143_0x3a4a37(0x13e),'command':a143_0x3a4a37(0x109)},'logout':{'service':'auth','command':a143_0x3a4a37(0x121)}};function a143_0x1d9a(){const _0x4b4bc3=['has','3921070mBXXMS','Code\x20Generation','3662028cqejbk','98186pgcvQu','logout','length','Smart\x20List\x20Pages','18BwcBby','Dataset\x20&\x20Operations','4144070Ecaxea','login','skill\x20','hidden','filter','map','Quick\x20Start','push','360188aZQfzZ','command','3896272dNPwZJ','app','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','project','wildcardDef','1310ICpptU','API\x20Development','2vwmNdo','`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','Instant\x20API','install','app\x20use','`rabetbase\x20','Schema','run','Notification\x20Configuration','service','from','Database\x20Connections','get','skills','BFF\x20Scripts','73901xuOnrm','21eCsPEF','commands','Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.','Logs','<script>','preview','Roles','`rabetbase\x20skills`\x20has\x20been\x20removed.','read','Self\x20Update','Run\x20any\x20package.json\x20script','SQL\x20Queries','create','Authentication','isSingleCommand','set','Menu','Project','Platform\x20Issue','write','App\x20Management','use','skill','Permissions'];a143_0x1d9a=function(){return _0x4b4bc3;};return a143_0x1d9a();}const CLI_SKILL_INSTALL_REMOVED_HINT='Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.',APP_REMOTE_REMOVED_HINT='Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.',APP_USE_REMOVED_HINT=a143_0x3a4a37(0x106);export function resolveRemovedCommand(_0x1a185e,_0x4dea69){const _0x1defd0=a143_0x3a4a37;if(_0x1a185e===_0x1defd0(0x11a)){const _0x4e6964=_0x4dea69?_0x1defd0(0x128)+_0x4dea69:'skill';return{'command':_0x4e6964,'message':_0x1defd0(0x13c)+_0x4e6964+'`\x20has\x20been\x20removed.','hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x1a185e===_0x1defd0(0x144))return{'command':_0x1defd0(0x144),'message':_0x1defd0(0x10b),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x1a185e===_0x1defd0(0x131)&&_0x4dea69==='remote')return{'command':'app\x20remote','message':_0x1defd0(0x132),'hint':APP_REMOTE_REMOVED_HINT};if(_0x1a185e==='app'&&_0x4dea69===_0x1defd0(0x119))return{'command':_0x1defd0(0x13b),'message':_0x1defd0(0x138),'hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a143_0x3a4a37(0x110)},'sql':{'new':a143_0x3a4a37(0x110)}};export function resolveDeprecatedSubcommand(_0x5a24f2,_0x3c7678){return deprecatedSubcommands[_0x5a24f2]?.[_0x3c7678];}export function findDefinition(_0x4b36a8,_0x209267){const _0x11dab5=a143_0x3a4a37;return definitions[_0x11dab5(0x143)](_0x4b36a8+':'+_0x209267);}export function isKnownService(_0x5c3fcf){const _0x2b206c=a143_0x3a4a37;return serviceByName[_0x2b206c(0x11c)](_0x5c3fcf);}export function isDeclarativeService(_0x40a983){const _0x320a6b=a143_0x3a4a37;return serviceGroups['has'](_0x40a983)||serviceByName[_0x320a6b(0x143)](_0x40a983)?.['wildcardDef']!==undefined;}export function getServiceEntry(_0x2942fb){return serviceByName['get'](_0x2942fb);}export function getLegacyHandler(_0x34038a,_0x1f0821){return undefined;}export function getAllDefinitions(){const _0x1235e0=a143_0x3a4a37;return Array[_0x1235e0(0x141)](definitions['values']());}
1
+ const a143_0x34b905=a143_0x1cbc;(function(_0x45ec5c,_0x41ce5c){const _0x3dbcbf=a143_0x1cbc,_0x24bf44=_0x45ec5c();while(!![]){try{const _0x156ddd=-parseInt(_0x3dbcbf(0x6b))/0x1*(-parseInt(_0x3dbcbf(0x79))/0x2)+-parseInt(_0x3dbcbf(0x85))/0x3*(-parseInt(_0x3dbcbf(0x99))/0x4)+-parseInt(_0x3dbcbf(0xb3))/0x5*(-parseInt(_0x3dbcbf(0xb4))/0x6)+-parseInt(_0x3dbcbf(0x7e))/0x7*(parseInt(_0x3dbcbf(0x78))/0x8)+parseInt(_0x3dbcbf(0x8f))/0x9+-parseInt(_0x3dbcbf(0x73))/0xa*(-parseInt(_0x3dbcbf(0x7b))/0xb)+-parseInt(_0x3dbcbf(0x70))/0xc;if(_0x156ddd===_0x41ce5c)break;else _0x24bf44['push'](_0x24bf44['shift']());}catch(_0x52108a){_0x24bf44['push'](_0x24bf44['shift']());}}}(a143_0x4bdd,0xce43e));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';function a143_0x4bdd(){const _0x484d27=['Self\x20Update','Notification\x20Configuration','CLI\x20Built-in\x20Skill','risk','write','5635998XWHRYF','`rabetbase\x20','wildcardDef','App\x20Management','Run\x20any\x20package.json\x20script','set','Platform\x20Issue','Schema','Workspace','`rabetbase\x20skills`\x20has\x20been\x20removed.','819176lILaje','Run\x20Scripts','service','install','Authentication','\x20\x20[high-risk-write]','use','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','skill','command','remote','Roles','`\x20has\x20been\x20removed.','project','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','from','start','read','app\x20use','preview','Quick\x20Start','show','Diagnostics','get','skills','Code\x20Generation','6141160LcGrUw','6BaEzHI','170914eIMFGf','defaultCommand','auth','Permissions','hidden','27782880mzjxYv','has','login','11184850pvPHZk','BFF\x20Scripts','isSingleCommand','build','app','155656pAdrtR','4uRJtHH','Runtime\x20App\x20Config\x20Management','11IugtCD','run','app\x20remote','203HpTQPl','filter','\x20\x20[write]','create','Configuration','logout','SQL\x20Queries','6HvmLmj','File','Dataset\x20&\x20Operations','Smart\x20List\x20Pages','push'];a143_0x4bdd=function(){return _0x484d27;};return a143_0x4bdd();}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';function a143_0x1cbc(_0x9526d,_0x56535f){_0x9526d=_0x9526d-0x6b;const _0x4bdd39=a143_0x4bdd();let _0x1cbc8a=_0x4bdd39[_0x9526d];return _0x1cbc8a;}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(_0x27b4b8){const _0x2cedc0=a143_0x1cbc;for(const _0x36ad95 of _0x27b4b8){definitions[_0x2cedc0(0x94)](_0x36ad95[_0x2cedc0(0x9b)]+':'+_0x36ad95[_0x2cedc0(0xa2)],_0x36ad95);let _0x3135be=serviceGroups[_0x2cedc0(0xb0)](_0x36ad95[_0x2cedc0(0x9b)]);!_0x3135be&&(_0x3135be=[],serviceGroups['set'](_0x36ad95['service'],_0x3135be)),_0x3135be[_0x2cedc0(0x89)](_0x36ad95);}}function registerDeclarativeService(_0x48d0ee,_0x20fdd0,_0x1c4f02){const _0x1e4dba=a143_0x1cbc;registerDefinitions(_0x20fdd0);_0x1c4f02?.[_0x1e4dba(0x91)]&&registerDefinitions([_0x1c4f02[_0x1e4dba(0x91)]]);const _0x2b8b8c=_0x2068d1=>_0x2068d1===_0x1e4dba(0xaa)?'':_0x2068d1===_0x1e4dba(0x8e)?_0x1e4dba(0x80):_0x1e4dba(0x9e),_0x3c8cc3={'service':_0x20fdd0[0x0][_0x1e4dba(0x9b)],'label':_0x48d0ee,'commands':_0x20fdd0[_0x1e4dba(0x7f)](_0x43eba6=>!_0x43eba6[_0x1e4dba(0x6f)])['map'](_0x4b1cbe=>({'command':_0x4b1cbe[_0x1e4dba(0xa2)],'description':_0x4b1cbe['description'],'tag':_0x2b8b8c(_0x4b1cbe[_0x1e4dba(0x8d)])})),'declarative':!![],'defaultCommand':_0x1c4f02?.[_0x1e4dba(0x6c)]??(_0x1c4f02?.[_0x1e4dba(0x75)]?_0x20fdd0[0x0][_0x1e4dba(0xa2)]:undefined),'wildcardDef':_0x1c4f02?.[_0x1e4dba(0x91)],'isSingleCommand':_0x1c4f02?.['isSingleCommand']};serviceRegistry[_0x1e4dba(0x89)](_0x3c8cc3),serviceByName[_0x1e4dba(0x94)](_0x3c8cc3['service'],_0x3c8cc3);}registerDeclarativeService(a143_0x34b905(0xad),initDefinitions,{'defaultCommand':a143_0x34b905(0x7c),'isSingleCommand':!![]}),registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a143_0x34b905(0x97),workspaceDefinitions),registerDeclarativeService(a143_0x34b905(0x92),appDefinitions),registerDeclarativeService(a143_0x34b905(0x9d),authDefinitions,{'defaultCommand':a143_0x34b905(0x72)}),registerDeclarativeService(a143_0x34b905(0x87),datasetDefinitions),registerDeclarativeService(a143_0x34b905(0x88),pageDefinitions),registerDeclarativeService('API\x20Development',apiDefinitions),registerDeclarativeService('Instant\x20API',dataDefinitions),registerDeclarativeService(a143_0x34b905(0x74),bffDefinitions),registerDeclarativeService(a143_0x34b905(0x8b),notificationDefinitions),registerDeclarativeService(a143_0x34b905(0x84),sqlDefinitions),registerDeclarativeService('Database\x20Connections',dbDefinitions),registerDeclarativeService('Menu',menuDefinitions),registerDeclarativeService(a143_0x34b905(0xa4),roleDefinitions),registerDeclarativeService(a143_0x34b905(0x6e),permitDefinitions),registerDeclarativeService(a143_0x34b905(0x7a),appConfigDefinitions),registerDeclarativeService(a143_0x34b905(0x95),issueDefinitions),registerDeclarativeService(a143_0x34b905(0x86),fileDefinitions),registerDeclarativeService(a143_0x34b905(0xb2),codegenDefinitions),registerDeclarativeService(a143_0x34b905(0x82),configDefinitions),registerDeclarativeService(a143_0x34b905(0xaf),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a143_0x34b905(0x96),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a143_0x34b905(0x8a),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a143_0x34b905(0x8c),cliSkillDefinitions,{'defaultCommand':a143_0x34b905(0x9c)}),registerDeclarativeService('Logs',logsDefinitions,{'defaultCommand':a143_0x34b905(0xae)}),registerDeclarativeService(a143_0x34b905(0x9a),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry['length']-0x1];last['commands']=[{'command':'<script>','description':a143_0x34b905(0x93),'tag':''}];}export const deprecatedAliases={'create':{'service':a143_0x34b905(0xa6),'command':a143_0x34b905(0x81)},'start':{'service':a143_0x34b905(0x7c),'command':a143_0x34b905(0xa9)},'build':{'service':a143_0x34b905(0x7c),'command':a143_0x34b905(0x76)},'preview':{'service':a143_0x34b905(0x7c),'command':a143_0x34b905(0xac)},'logout':{'service':a143_0x34b905(0x6d),'command':a143_0x34b905(0x83)}};const CLI_SKILL_INSTALL_REMOVED_HINT='Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.',APP_REMOTE_REMOVED_HINT=a143_0x34b905(0xa7),APP_USE_REMOVED_HINT='Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.';export function resolveRemovedCommand(_0x3e4f87,_0xb80bcf){const _0x10b21d=a143_0x34b905;if(_0x3e4f87===_0x10b21d(0xa1)){const _0x30d09e=_0xb80bcf?'skill\x20'+_0xb80bcf:_0x10b21d(0xa1);return{'command':_0x30d09e,'message':_0x10b21d(0x90)+_0x30d09e+_0x10b21d(0xa5),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x3e4f87===_0x10b21d(0xb1))return{'command':_0x10b21d(0xb1),'message':_0x10b21d(0x98),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x3e4f87===_0x10b21d(0x77)&&_0xb80bcf===_0x10b21d(0xa3))return{'command':_0x10b21d(0x7d),'message':_0x10b21d(0xa0),'hint':APP_REMOTE_REMOVED_HINT};if(_0x3e4f87===_0x10b21d(0x77)&&_0xb80bcf===_0x10b21d(0x9f))return{'command':_0x10b21d(0xab),'message':'`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a143_0x34b905(0x81)},'sql':{'new':a143_0x34b905(0x81)}};export function resolveDeprecatedSubcommand(_0x38edb1,_0x5ab224){return deprecatedSubcommands[_0x38edb1]?.[_0x5ab224];}export function findDefinition(_0x9075ec,_0x42a297){const _0x245fed=a143_0x34b905;return definitions[_0x245fed(0xb0)](_0x9075ec+':'+_0x42a297);}export function isKnownService(_0x30a42d){const _0x305804=a143_0x34b905;return serviceByName[_0x305804(0x71)](_0x30a42d);}export function isDeclarativeService(_0x42ab80){const _0x5f1856=a143_0x34b905;return serviceGroups[_0x5f1856(0x71)](_0x42ab80)||serviceByName[_0x5f1856(0xb0)](_0x42ab80)?.[_0x5f1856(0x91)]!==undefined;}export function getServiceEntry(_0x541fdb){return serviceByName['get'](_0x541fdb);}export function getLegacyHandler(_0x152189,_0x1a8a14){return undefined;}export function getAllDefinitions(){const _0x2afb87=a143_0x34b905;return Array[_0x2afb87(0xa8)](definitions['values']());}
@@ -1 +1 @@
1
- const a144_0x142a1a=a144_0x1763;(function(_0x4e4a99,_0x366c20){const _0x4383bd=a144_0x1763,_0x57f1ed=_0x4e4a99();while(!![]){try{const _0xb1b919=parseInt(_0x4383bd(0x1cf))/0x1*(parseInt(_0x4383bd(0x1d4))/0x2)+parseInt(_0x4383bd(0x1da))/0x3*(parseInt(_0x4383bd(0x1e2))/0x4)+-parseInt(_0x4383bd(0x1d2))/0x5*(parseInt(_0x4383bd(0x1cc))/0x6)+-parseInt(_0x4383bd(0x1df))/0x7+-parseInt(_0x4383bd(0x1e0))/0x8+-parseInt(_0x4383bd(0x1de))/0x9+-parseInt(_0x4383bd(0x1db))/0xa;if(_0xb1b919===_0x366c20)break;else _0x57f1ed['push'](_0x57f1ed['shift']());}catch(_0x1aef3e){_0x57f1ed['push'](_0x57f1ed['shift']());}}}(a144_0x5004,0x9fee1));import{createAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a144_0x1763(_0x29bdba,_0x59f9de){_0x29bdba=_0x29bdba-0x1c9;const _0x5004ad=a144_0x5004();let _0x1763d4=_0x5004ad[_0x29bdba];return _0x1763d4;}import{asDryRunResult}from'../../commands/common/dry-run.js';function a144_0x5004(){const _0x10bb2c=['6908972aWNxtQ','528laOZrL','trim','164EDQrxe','Pass\x20--name\x20<roleName>.','name','write','/smartapi/permit/role/create','role','4962USuCRj','roleName','validation','121skNvpP','Created\x20role\x20','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','1020WoPkZk','create','17122LamPbG','length','str','flagMissing','POST','appCode','90777gkNAKT','1310960cAuaUO','CUSTOM','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','3011049JuUTwX'];a144_0x5004=function(){return _0x10bb2c;};return a144_0x5004();}import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a144_0x142a1a(0x1ca);function readName(_0x45b7c3){const _0x169ff6=a144_0x142a1a,_0xaebb1a=_0x45b7c3[_0x169ff6(0x1d6)](_0x169ff6(0x1e4))[_0x169ff6(0x1e1)]();if(!_0xaebb1a)throw CliErrors[_0x169ff6(0x1d7)](_0x169ff6(0x1e4),_0x169ff6(0x1e3));if(_0xaebb1a[_0x169ff6(0x1d5)]>0x40)throw CliErrors[_0x169ff6(0x1ce)](_0x169ff6(0x1dd));return _0xaebb1a;}export const roleCreate={'service':a144_0x142a1a(0x1cb),'command':a144_0x142a1a(0x1d3),'description':a144_0x142a1a(0x1d1),'risk':a144_0x142a1a(0x1c9),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x59da1e){readName(_0x59da1e);},async 'dryRun'(_0x5c9760){const _0xe9980b=a144_0x142a1a,_0x5966b5=readName(_0x5c9760),_0x2179e9=_0x5c9760[_0xe9980b(0x1d6)]('remark')[_0xe9980b(0x1e1)]()||undefined;return asDryRunResult({'operation':_0xe9980b(0x1d3),'selector':{'appCode':_0x5c9760['appCode'],'roleName':_0x5966b5},'before':null,'after':{'roleName':_0x5966b5,'roleType':_0xe9980b(0x1dc),'remark':_0x2179e9},'dryRun':!![],'backend':{'method':_0xe9980b(0x1d8),'path':CREATE_PATH},'warnings':[]},{'method':_0xe9980b(0x1d8),'url':CREATE_PATH});},async 'execute'(_0x293d48){const _0x142b9f=a144_0x142a1a,_0x27dfd0=readName(_0x293d48),_0x8e158a=_0x293d48['str']('remark')[_0x142b9f(0x1e1)]()||undefined,_0x1eddf8=await createAppRole({'appCode':_0x293d48[_0x142b9f(0x1d9)],'roleName':_0x27dfd0,..._0x8e158a?{'remark':_0x8e158a}:{}});return{'ok':!![],'data':{'operation':_0x142b9f(0x1d3),'selector':{'appCode':_0x293d48[_0x142b9f(0x1d9)],'roleId':_0x1eddf8['id'],'roleName':_0x27dfd0},'before':null,'after':projectRole(_0x1eddf8),'dryRun':![],'backend':{'method':_0x142b9f(0x1d8),'path':CREATE_PATH},'warnings':[]},'message':_0x142b9f(0x1d0)+_0x1eddf8[_0x142b9f(0x1cd)]+'\x20(id='+_0x1eddf8['id']+')'};}};
1
+ function a144_0x5f9b(){const _0x1608c4=['36819ITCoIo','POST','1340102bnYwUX','30zNhQvT','1704364HkxZbi','CUSTOM','3WdBLOL','flagMissing','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','remark','trim','length','5636835dUaUBk','353881tCnCPZ','12PKvUtd','str','7VNjHhO','roleName','appCode','2166544JlnFDC','name','/smartapi/permit/role/create','create','1572430CqGhra','Created\x20role\x20','role','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)'];a144_0x5f9b=function(){return _0x1608c4;};return a144_0x5f9b();}const a144_0x4a4d51=a144_0x3e37;(function(_0x389dde,_0x3efaac){const _0x73fdea=a144_0x3e37,_0x24e6be=_0x389dde();while(!![]){try{const _0x48ffc2=parseInt(_0x73fdea(0x174))/0x1+-parseInt(_0x73fdea(0x176))/0x2+parseInt(_0x73fdea(0x15f))/0x3*(-parseInt(_0x73fdea(0x15d))/0x4)+-parseInt(_0x73fdea(0x170))/0x5*(-parseInt(_0x73fdea(0x167))/0x6)+parseInt(_0x73fdea(0x169))/0x7*(parseInt(_0x73fdea(0x16c))/0x8)+parseInt(_0x73fdea(0x165))/0x9+-parseInt(_0x73fdea(0x15c))/0xa*(parseInt(_0x73fdea(0x166))/0xb);if(_0x48ffc2===_0x3efaac)break;else _0x24e6be['push'](_0x24e6be['shift']());}catch(_0x3e81e7){_0x24e6be['push'](_0x24e6be['shift']());}}}(a144_0x5f9b,0x5a65d));import{createAppRole}from'../../core/api-client.js';function a144_0x3e37(_0x26b44c,_0x46e0c7){_0x26b44c=_0x26b44c-0x15c;const _0x5f9b12=a144_0x5f9b();let _0x3e3763=_0x5f9b12[_0x26b44c];return _0x3e3763;}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=a144_0x4a4d51(0x16e);function readName(_0x63fc5b){const _0x51b885=a144_0x4a4d51,_0x19146c=_0x63fc5b[_0x51b885(0x168)](_0x51b885(0x16d))[_0x51b885(0x163)]();if(!_0x19146c)throw CliErrors[_0x51b885(0x160)](_0x51b885(0x16d),'Pass\x20--name\x20<roleName>.');if(_0x19146c[_0x51b885(0x164)]>0x40)throw CliErrors['validation'](_0x51b885(0x161));return _0x19146c;}export const roleCreate={'service':a144_0x4a4d51(0x172),'command':a144_0x4a4d51(0x16f),'description':a144_0x4a4d51(0x173),'risk':'write','flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x527bd7){readName(_0x527bd7);},async 'dryRun'(_0x103fc5){const _0x40b1c7=a144_0x4a4d51,_0x44042f=readName(_0x103fc5),_0x17a219=_0x103fc5[_0x40b1c7(0x168)](_0x40b1c7(0x162))[_0x40b1c7(0x163)]()||undefined;return asDryRunResult({'operation':'create','selector':{'appCode':_0x103fc5[_0x40b1c7(0x16b)],'roleName':_0x44042f},'before':null,'after':{'roleName':_0x44042f,'roleType':_0x40b1c7(0x15e),'remark':_0x17a219},'dryRun':!![],'backend':{'method':_0x40b1c7(0x175),'path':CREATE_PATH},'warnings':[]},{'method':'POST','url':CREATE_PATH});},async 'execute'(_0x43444c){const _0x1bbbc8=a144_0x4a4d51,_0x24b0d3=readName(_0x43444c),_0x100345=_0x43444c['str'](_0x1bbbc8(0x162))['trim']()||undefined,_0x56d181=await createAppRole({'appCode':_0x43444c['appCode'],'roleName':_0x24b0d3,..._0x100345?{'remark':_0x100345}:{}});return{'ok':!![],'data':{'operation':_0x1bbbc8(0x16f),'selector':{'appCode':_0x43444c['appCode'],'roleId':_0x56d181['id'],'roleName':_0x24b0d3},'before':null,'after':projectRole(_0x56d181),'dryRun':![],'backend':{'method':_0x1bbbc8(0x175),'path':CREATE_PATH},'warnings':[]},'message':_0x1bbbc8(0x171)+_0x56d181[_0x1bbbc8(0x16a)]+'\x20(id='+_0x56d181['id']+')'};}};
@@ -1 +1 @@
1
- function a145_0x399f(_0x4d2868,_0x3e1978){_0x4d2868=_0x4d2868-0x1c7;const _0x3df80f=a145_0x3df8();let _0x399fd3=_0x3df80f[_0x4d2868];return _0x399fd3;}const a145_0x5701ac=a145_0x399f;(function(_0x3b14a2,_0x449898){const _0x2242ff=a145_0x399f,_0x4c304c=_0x3b14a2();while(!![]){try{const _0x4df758=-parseInt(_0x2242ff(0x1d0))/0x1*(parseInt(_0x2242ff(0x1d6))/0x2)+-parseInt(_0x2242ff(0x1ce))/0x3+parseInt(_0x2242ff(0x1d4))/0x4*(parseInt(_0x2242ff(0x1c7))/0x5)+parseInt(_0x2242ff(0x1d3))/0x6+-parseInt(_0x2242ff(0x1d9))/0x7+-parseInt(_0x2242ff(0x1db))/0x8*(-parseInt(_0x2242ff(0x1c8))/0x9)+-parseInt(_0x2242ff(0x1d2))/0xa;if(_0x4df758===_0x449898)break;else _0x4c304c['push'](_0x4c304c['shift']());}catch(_0x205b73){_0x4c304c['push'](_0x4c304c['shift']());}}}(a145_0x3df8,0xd4ef5));import{deleteAppRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a145_0x3df8(){const _0x554e76=['83210sUPFsq','3362895YZjUAe','POST','delete','Deleted\x20role\x20','num','role','3537039xrIATf','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','2781fdwMOC','high-risk-write','7365660ULPyqU','5395542rptxOT','372XpGEci','Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','146Odvybc','Role\x20still\x20has\x20','appCode','1424500YApOIH','roleName','16Pozkrb'];a145_0x3df8=function(){return _0x554e76;};return a145_0x3df8();}import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';const DELETE_PATH='/smartapi/permit/role/delete';export const roleDelete={'service':a145_0x5701ac(0x1cd),'command':'delete','description':a145_0x5701ac(0x1d5),'risk':a145_0x5701ac(0x1d1),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x5eaa8a){const _0x49fad1=a145_0x5701ac,_0x3c8694=_0x5eaa8a[_0x49fad1(0x1cc)]('id'),_0x195c91=await getRoleById(_0x5eaa8a[_0x49fad1(0x1d8)],_0x3c8694);return assertCustomRole(_0x195c91,_0x49fad1(0x1ca)),asDryRunResult({'operation':_0x49fad1(0x1ca),'selector':{'appCode':_0x5eaa8a[_0x49fad1(0x1d8)],'roleId':_0x3c8694,'roleName':_0x195c91[_0x49fad1(0x1da)]},'before':projectRole(_0x195c91),'after':null,'dryRun':!![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':_0x195c91['userCount']>0x0?[_0x49fad1(0x1d7)+_0x195c91['userCount']+_0x49fad1(0x1cf)]:[]},{'method':_0x49fad1(0x1c9),'url':DELETE_PATH});},async 'execute'(_0xb2db7d){const _0x2d7a02=a145_0x5701ac,_0x3d70c0=_0xb2db7d[_0x2d7a02(0x1cc)]('id'),_0x3614b9=await getRoleById(_0xb2db7d[_0x2d7a02(0x1d8)],_0x3d70c0);return assertCustomRole(_0x3614b9,_0x2d7a02(0x1ca)),await deleteAppRole(_0x3d70c0),{'ok':!![],'data':{'operation':_0x2d7a02(0x1ca),'selector':{'appCode':_0xb2db7d[_0x2d7a02(0x1d8)],'roleId':_0x3d70c0,'roleName':_0x3614b9[_0x2d7a02(0x1da)]},'before':projectRole(_0x3614b9),'after':null,'dryRun':![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':[]},'message':_0x2d7a02(0x1cb)+_0x3614b9[_0x2d7a02(0x1da)]+'\x20(id='+_0x3d70c0+')'};}};
1
+ const a145_0x922a1c=a145_0x4ca5;(function(_0x5efeef,_0x401ba5){const _0x3d1f2b=a145_0x4ca5,_0x2f53c5=_0x5efeef();while(!![]){try{const _0x5a7945=parseInt(_0x3d1f2b(0x1e1))/0x1+-parseInt(_0x3d1f2b(0x1e4))/0x2*(parseInt(_0x3d1f2b(0x1e0))/0x3)+-parseInt(_0x3d1f2b(0x1e9))/0x4+-parseInt(_0x3d1f2b(0x1dd))/0x5+parseInt(_0x3d1f2b(0x1de))/0x6*(parseInt(_0x3d1f2b(0x1eb))/0x7)+parseInt(_0x3d1f2b(0x1ea))/0x8+-parseInt(_0x3d1f2b(0x1ec))/0x9;if(_0x5a7945===_0x401ba5)break;else _0x2f53c5['push'](_0x2f53c5['shift']());}catch(_0x342c6c){_0x2f53c5['push'](_0x2f53c5['shift']());}}}(a145_0xa803,0x578da));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=a145_0x922a1c(0x1e6);function a145_0xa803(){const _0x5eed13=['619373PVMxoJ','POST','userCount','2ndoiSI','num','/smartapi/permit/role/delete','appCode','roleName','572588syyMvs','4969608lvNrZs','14nPBjDx','2185245DAJxZg','delete','high-risk-write','\x20(id=','role','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','258375VgtFia','477372JqLllK','Deleted\x20role\x20','1810359wUuIzd'];a145_0xa803=function(){return _0x5eed13;};return a145_0xa803();}function a145_0x4ca5(_0x734ae9,_0x41373f){_0x734ae9=_0x734ae9-0x1d8;const _0xa803a1=a145_0xa803();let _0x4ca5d7=_0xa803a1[_0x734ae9];return _0x4ca5d7;}export const roleDelete={'service':a145_0x922a1c(0x1db),'command':'delete','description':'Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','risk':a145_0x922a1c(0x1d9),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x272cd7){const _0x47caf7=a145_0x922a1c,_0x57e71b=_0x272cd7[_0x47caf7(0x1e5)]('id'),_0x41cc1f=await getRoleById(_0x272cd7[_0x47caf7(0x1e7)],_0x57e71b);return assertCustomRole(_0x41cc1f,'delete'),asDryRunResult({'operation':_0x47caf7(0x1d8),'selector':{'appCode':_0x272cd7[_0x47caf7(0x1e7)],'roleId':_0x57e71b,'roleName':_0x41cc1f['roleName']},'before':projectRole(_0x41cc1f),'after':null,'dryRun':!![],'backend':{'method':_0x47caf7(0x1e2),'path':DELETE_PATH},'warnings':_0x41cc1f[_0x47caf7(0x1e3)]>0x0?['Role\x20still\x20has\x20'+_0x41cc1f[_0x47caf7(0x1e3)]+_0x47caf7(0x1dc)]:[]},{'method':_0x47caf7(0x1e2),'url':DELETE_PATH});},async 'execute'(_0x50c137){const _0x1b124b=a145_0x922a1c,_0x3bb5b2=_0x50c137[_0x1b124b(0x1e5)]('id'),_0x100581=await getRoleById(_0x50c137['appCode'],_0x3bb5b2);return assertCustomRole(_0x100581,_0x1b124b(0x1d8)),await deleteAppRole(_0x3bb5b2),{'ok':!![],'data':{'operation':'delete','selector':{'appCode':_0x50c137['appCode'],'roleId':_0x3bb5b2,'roleName':_0x100581['roleName']},'before':projectRole(_0x100581),'after':null,'dryRun':![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':[]},'message':_0x1b124b(0x1df)+_0x100581[_0x1b124b(0x1e8)]+_0x1b124b(0x1da)+_0x3bb5b2+')'};}};
@@ -1 +1 @@
1
- const a146_0x12d756=a146_0x38e8;function a146_0x1ec6(){const _0x461136=['9PACvfJ','1637902cwcAxv','6pFlQsM','appCode','detail','Show\x20a\x20single\x20role\x27s\x20detail','Role\x20','917725GnkiTs','480558wMcpcj','1016530NgpFYR','918841ZzzyYV','2gtzCil','num','53566MLNXuh','read','2395816ROEflq','8lXjXWt','roleType','role'];a146_0x1ec6=function(){return _0x461136;};return a146_0x1ec6();}(function(_0x22ebd5,_0x2c94ad){const _0x168282=a146_0x38e8,_0x2bf747=_0x22ebd5();while(!![]){try{const _0x2b6cbf=parseInt(_0x168282(0x12d))/0x1*(parseInt(_0x168282(0x12f))/0x2)+parseInt(_0x168282(0x12a))/0x3*(parseInt(_0x168282(0x132))/0x4)+parseInt(_0x168282(0x129))/0x5+-parseInt(_0x168282(0x124))/0x6*(parseInt(_0x168282(0x123))/0x7)+parseInt(_0x168282(0x131))/0x8*(-parseInt(_0x168282(0x122))/0x9)+parseInt(_0x168282(0x12b))/0xa+parseInt(_0x168282(0x12c))/0xb;if(_0x2b6cbf===_0x2c94ad)break;else _0x2bf747['push'](_0x2bf747['shift']());}catch(_0x36a158){_0x2bf747['push'](_0x2bf747['shift']());}}}(a146_0x1ec6,0x33134));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a146_0x38e8(_0x1617f8,_0x4722a9){_0x1617f8=_0x1617f8-0x120;const _0x1ec6b8=a146_0x1ec6();let _0x38e8b7=_0x1ec6b8[_0x1617f8];return _0x38e8b7;}import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';export const roleDetail={'service':a146_0x12d756(0x121),'command':a146_0x12d756(0x126),'description':a146_0x12d756(0x127),'risk':a146_0x12d756(0x130),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x2c44fb){const _0x3d2734=a146_0x12d756,_0x16af2a=_0x2c44fb[_0x3d2734(0x12e)]('id'),_0x2a432b=await getRoleById(_0x2c44fb[_0x3d2734(0x125)],_0x16af2a);return{'ok':!![],'data':{'role':projectRole(_0x2a432b)},'message':_0x3d2734(0x128)+_0x2a432b['roleName']+'\x20('+_0x2a432b[_0x3d2734(0x120)]+')'};}};
1
+ function a146_0xea84(_0x3abe6e,_0x75b263){_0x3abe6e=_0x3abe6e-0x6b;const _0x209cb8=a146_0x209c();let _0xea8402=_0x209cb8[_0x3abe6e];return _0xea8402;}function a146_0x209c(){const _0x5723b5=['3863220qpIuSH','113lcEYNn','read','Role\x20','590018YSsuHP','2873000kRhNNw','4EkVFeu','60KDxWuj','appCode','roleType','7666qRNeID','role','8yVtySY','Show\x20a\x20single\x20role\x27s\x20detail','1239123yeocie','3779361oIkZHp','num','2002301IDfayK'];a146_0x209c=function(){return _0x5723b5;};return a146_0x209c();}const a146_0x8b4382=a146_0xea84;(function(_0x53ebd7,_0x50a22c){const _0x32249c=a146_0xea84,_0x530563=_0x53ebd7();while(!![]){try{const _0x235341=-parseInt(_0x32249c(0x7c))/0x1*(parseInt(_0x32249c(0x73))/0x2)+-parseInt(_0x32249c(0x77))/0x3*(-parseInt(_0x32249c(0x6f))/0x4)+parseInt(_0x32249c(0x6e))/0x5+-parseInt(_0x32249c(0x7b))/0x6+-parseInt(_0x32249c(0x7a))/0x7*(parseInt(_0x32249c(0x75))/0x8)+parseInt(_0x32249c(0x78))/0x9+parseInt(_0x32249c(0x70))/0xa*(parseInt(_0x32249c(0x6d))/0xb);if(_0x235341===_0x50a22c)break;else _0x530563['push'](_0x530563['shift']());}catch(_0x5edbf8){_0x530563['push'](_0x530563['shift']());}}}(a146_0x209c,0x59714));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';export const roleDetail={'service':a146_0x8b4382(0x74),'command':'detail','description':a146_0x8b4382(0x76),'risk':a146_0x8b4382(0x6b),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x41c468){const _0x58a9e6=a146_0x8b4382,_0x56cf99=_0x41c468[_0x58a9e6(0x79)]('id'),_0x8ee5f5=await getRoleById(_0x41c468[_0x58a9e6(0x71)],_0x56cf99);return{'ok':!![],'data':{'role':projectRole(_0x8ee5f5)},'message':_0x58a9e6(0x6c)+_0x8ee5f5['roleName']+'\x20('+_0x8ee5f5[_0x58a9e6(0x72)]+')'};}};
@@ -1 +1 @@
1
- function a147_0x5011(){const _0xa70000=['125379DcTgQE','1396908kQDKOO','216ZmsMMD','37361360GyWqYB','160AjvFLo','1449940MDvxXi','156fUWaFd','167573yUpHha','2236047NsJGyW','118280HvMjwU'];a147_0x5011=function(){return _0xa70000;};return a147_0x5011();}(function(_0x488932,_0x1ae4d7){const _0x57132f=a147_0xacad,_0x562579=_0x488932();while(!![]){try{const _0x525234=-parseInt(_0x57132f(0x184))/0x1+-parseInt(_0x57132f(0x188))/0x2+-parseInt(_0x57132f(0x181))/0x3+-parseInt(_0x57132f(0x182))/0x4*(-parseInt(_0x57132f(0x187))/0x5)+-parseInt(_0x57132f(0x189))/0x6*(parseInt(_0x57132f(0x180))/0x7)+parseInt(_0x57132f(0x185))/0x8*(-parseInt(_0x57132f(0x183))/0x9)+parseInt(_0x57132f(0x186))/0xa;if(_0x525234===_0x1ae4d7)break;else _0x562579['push'](_0x562579['shift']());}catch(_0x42be14){_0x562579['push'](_0x562579['shift']());}}}(a147_0x5011,0xc75d6));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';import{roleCreate}from'../../commands/role/create.js';import{roleUpdate}from'../../commands/role/update.js';function a147_0xacad(_0x13ca3e,_0x38e523){_0x13ca3e=_0x13ca3e-0x180;const _0x501174=a147_0x5011();let _0xacad64=_0x501174[_0x13ca3e];return _0xacad64;}import{roleDelete}from'../../commands/role/delete.js';import{roleUserResolve}from'../../commands/role/user-resolve.js';import{roleUserAdd}from'../../commands/role/user-add.js';import{roleUserRemove}from'../../commands/role/user-remove.js';export const roleDefinitions=[roleList,roleDetail,roleCreate,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
1
+ (function(_0x4e9e7e,_0x564347){const _0x5b5b4e=a147_0xc1e7,_0xb6bf7c=_0x4e9e7e();while(!![]){try{const _0x176874=-parseInt(_0x5b5b4e(0xb4))/0x1+-parseInt(_0x5b5b4e(0xb1))/0x2*(-parseInt(_0x5b5b4e(0xb0))/0x3)+-parseInt(_0x5b5b4e(0xb2))/0x4*(-parseInt(_0x5b5b4e(0xaf))/0x5)+parseInt(_0x5b5b4e(0xb3))/0x6+parseInt(_0x5b5b4e(0xb5))/0x7*(-parseInt(_0x5b5b4e(0xb8))/0x8)+-parseInt(_0x5b5b4e(0xb9))/0x9+-parseInt(_0x5b5b4e(0xb6))/0xa*(-parseInt(_0x5b5b4e(0xb7))/0xb);if(_0x176874===_0x564347)break;else _0xb6bf7c['push'](_0xb6bf7c['shift']());}catch(_0x5524de){_0xb6bf7c['push'](_0xb6bf7c['shift']());}}}(a147_0x22f6,0x91c95));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';import{roleCreate}from'../../commands/role/create.js';import{roleUpdate}from'../../commands/role/update.js';function a147_0x22f6(){const _0xc151d=['337288WrxFHF','2573034pSZBZf','1144424fKqnvY','35gbFkdu','18146670GbnpKe','11rHmPhq','1377416qPEygy','6212673zaZDrf','5UCHheE','125859yzuUoG','46cDZFmQ'];a147_0x22f6=function(){return _0xc151d;};return a147_0x22f6();}import{roleDelete}from'../../commands/role/delete.js';function a147_0xc1e7(_0x4fed15,_0x6848df){_0x4fed15=_0x4fed15-0xaf;const _0x22f665=a147_0x22f6();let _0xc1e742=_0x22f665[_0x4fed15];return _0xc1e742;}import{roleUserResolve}from'../../commands/role/user-resolve.js';import{roleUserAdd}from'../../commands/role/user-add.js';import{roleUserRemove}from'../../commands/role/user-remove.js';export const roleDefinitions=[roleList,roleDetail,roleCreate,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
@@ -1 +1 @@
1
- const a148_0xffe787=a148_0xf01b;function a148_0xc4ee(){const _0x5847f3=['string','read','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','USER','filter','toUpperCase','str','includes','Use\x20one\x20of:\x20','Invalid\x20--type\x20\x22','29772HDXFKW','page','map','3713178ftqYqM','CUSTOM','join','58GYjHUF','list','Filter\x20by\x20role\x20type','259987qWvcjB','11417HqyaKH','trim','validation','num','263547OivZjV','pagesize','22IIeqaA','number','roleType','role','DEV','type','112870RKeqXQ','72hRuhbu','Found\x20','ADMIN','32OlLAzx','779730PBYYqJ'];a148_0xc4ee=function(){return _0x5847f3;};return a148_0xc4ee();}(function(_0x7be9fe,_0x554985){const _0x5d7a91=a148_0xf01b,_0x1c3faa=_0x7be9fe();while(!![]){try{const _0x559938=parseInt(_0x5d7a91(0x103))/0x1*(parseInt(_0x5d7a91(0x125))/0x2)+parseInt(_0x5d7a91(0x11f))/0x3+parseInt(_0x5d7a91(0x113))/0x4*(-parseInt(_0x5d7a91(0x10f))/0x5)+parseInt(_0x5d7a91(0x122))/0x6+-parseInt(_0x5d7a91(0x102))/0x7+parseInt(_0x5d7a91(0x110))/0x8*(-parseInt(_0x5d7a91(0x107))/0x9)+parseInt(_0x5d7a91(0x114))/0xa*(-parseInt(_0x5d7a91(0x109))/0xb);if(_0x559938===_0x554985)break;else _0x1c3faa['push'](_0x1c3faa['shift']());}catch(_0x22fdf3){_0x1c3faa['push'](_0x1c3faa['shift']());}}}(a148_0xc4ee,0x4ec5e));function a148_0xf01b(_0x7e4ff1,_0x36f6fb){_0x7e4ff1=_0x7e4ff1-0x102;const _0xc4ee17=a148_0xc4ee();let _0xf01b2d=_0xc4ee17[_0x7e4ff1];return _0xf01b2d;}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=[a148_0xffe787(0x112),a148_0xffe787(0x10d),a148_0xffe787(0x118),a148_0xffe787(0x123)];export const roleList={'service':a148_0xffe787(0x10c),'command':a148_0xffe787(0x126),'description':'List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','risk':a148_0xffe787(0x116),'flags':[APPCODE_FLAG_OPTIONAL,{'name':'type','type':a148_0xffe787(0x115),'required':![],'description':a148_0xffe787(0x127),'enum':ROLE_TYPES},{'name':a148_0xffe787(0x120),'type':'number','description':'Page\x20index\x20(1-based)','default':0x1},{'name':a148_0xffe787(0x108),'type':a148_0xffe787(0x10a),'description':'Page\x20size\x20(1-100)','default':0x64}],async 'validate'(_0xc273a9){const _0x2b30ca=a148_0xffe787,_0x3aa214=_0xc273a9[_0x2b30ca(0x11b)]('type')[_0x2b30ca(0x104)]();if(_0x3aa214&&!ROLE_TYPES[_0x2b30ca(0x11c)](_0x3aa214[_0x2b30ca(0x11a)]()))throw CliErrors[_0x2b30ca(0x105)](_0x2b30ca(0x11e)+_0x3aa214+'\x22.',_0x2b30ca(0x11d)+ROLE_TYPES[_0x2b30ca(0x124)](',\x20')+'.');const _0x4c2ed2=_0xc273a9[_0x2b30ca(0x106)]('page',0x1),_0x6887fd=_0xc273a9[_0x2b30ca(0x106)](_0x2b30ca(0x108),0x64);if(_0x4c2ed2<0x1)throw CliErrors[_0x2b30ca(0x105)](_0x2b30ca(0x117));if(_0x6887fd<0x1||_0x6887fd>0x64)throw CliErrors[_0x2b30ca(0x105)]('--pagesize\x20must\x20be\x20between\x201\x20and\x20100.');},async 'execute'(_0x3ba632){const _0x3f9702=a148_0xffe787,_0x51625c=_0x3ba632[_0x3f9702(0x106)](_0x3f9702(0x120),0x1)||0x1,_0x561daf=_0x3ba632[_0x3f9702(0x106)](_0x3f9702(0x108),0x64)||0x64,_0x29e598=_0x3ba632[_0x3f9702(0x11b)](_0x3f9702(0x10e))[_0x3f9702(0x104)]()[_0x3f9702(0x11a)](),{items:_0x66d4a1,paging:_0x54808f}=await listAppRoles(_0x3ba632['appCode'],{'currentPage':_0x51625c,'pageSize':_0x561daf}),_0x1683bd=_0x29e598?_0x66d4a1[_0x3f9702(0x119)](_0x47a150=>_0x47a150[_0x3f9702(0x10b)]===_0x29e598):_0x66d4a1,_0x51dea7=_0x1683bd[_0x3f9702(0x121)](projectRole);return{'ok':!![],'data':{'roles':_0x51dea7,'paging':_0x54808f},'message':_0x3f9702(0x111)+_0x51dea7['length']+'\x20role(s)'};}};
1
+ const a148_0x5eb534=a148_0x322a;(function(_0x474790,_0x33c0cc){const _0x2c9a36=a148_0x322a,_0x395996=_0x474790();while(!![]){try{const _0x3145f0=-parseInt(_0x2c9a36(0x194))/0x1+parseInt(_0x2c9a36(0x1a2))/0x2+parseInt(_0x2c9a36(0x198))/0x3*(-parseInt(_0x2c9a36(0x1a4))/0x4)+-parseInt(_0x2c9a36(0x1ad))/0x5*(-parseInt(_0x2c9a36(0x19c))/0x6)+-parseInt(_0x2c9a36(0x1ab))/0x7*(-parseInt(_0x2c9a36(0x1b3))/0x8)+parseInt(_0x2c9a36(0x196))/0x9*(parseInt(_0x2c9a36(0x193))/0xa)+-parseInt(_0x2c9a36(0x1af))/0xb*(parseInt(_0x2c9a36(0x1a0))/0xc);if(_0x3145f0===_0x33c0cc)break;else _0x395996['push'](_0x395996['shift']());}catch(_0x531b9b){_0x395996['push'](_0x395996['shift']());}}}(a148_0xd9ba,0x96ceb));function a148_0xd9ba(){const _0x464922=['Use\x20one\x20of:\x20','length','validation','411114pyphPF','pagesize','CUSTOM','Page\x20index\x20(1-based)','36esJJwM','ADMIN','791744jMGBDB','num','44HADLfK','Page\x20size\x20(1-100)','str','map','toUpperCase','roleType','role','7301322jOwnuf','number','35sOjoLK','Invalid\x20--type\x20\x22','3064897zTxWce','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','DEV','type','8EUdOGI','page','USER','string','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','trim','8367050wpIrzC','821771OQClac','join','9ccrHbV','appCode','130881jyPweL'];a148_0xd9ba=function(){return _0x464922;};return a148_0xd9ba();}import{listAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectRole}from'../../commands/role/shared.js';function a148_0x322a(_0x1c3869,_0x285d9c){_0x1c3869=_0x1c3869-0x191;const _0xd9baba=a148_0xd9ba();let _0x322ab4=_0xd9baba[_0x1c3869];return _0x322ab4;}const ROLE_TYPES=[a148_0x5eb534(0x1a1),a148_0x5eb534(0x1b1),a148_0x5eb534(0x1b5),a148_0x5eb534(0x19e)];export const roleList={'service':a148_0x5eb534(0x1aa),'command':'list','description':a148_0x5eb534(0x191),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a148_0x5eb534(0x1b2),'type':a148_0x5eb534(0x1b6),'required':![],'description':'Filter\x20by\x20role\x20type','enum':ROLE_TYPES},{'name':a148_0x5eb534(0x1b4),'type':a148_0x5eb534(0x1ac),'description':a148_0x5eb534(0x19f),'default':0x1},{'name':'pagesize','type':'number','description':a148_0x5eb534(0x1a5),'default':0x64}],async 'validate'(_0xb70cac){const _0x2e4e86=a148_0x5eb534,_0x455d0f=_0xb70cac[_0x2e4e86(0x1a6)]('type')['trim']();if(_0x455d0f&&!ROLE_TYPES['includes'](_0x455d0f[_0x2e4e86(0x1a8)]()))throw CliErrors[_0x2e4e86(0x19b)](_0x2e4e86(0x1ae)+_0x455d0f+'\x22.',_0x2e4e86(0x199)+ROLE_TYPES[_0x2e4e86(0x195)](',\x20')+'.');const _0x271830=_0xb70cac[_0x2e4e86(0x1a3)](_0x2e4e86(0x1b4),0x1),_0x1a41c0=_0xb70cac[_0x2e4e86(0x1a3)](_0x2e4e86(0x19d),0x64);if(_0x271830<0x1)throw CliErrors[_0x2e4e86(0x19b)](_0x2e4e86(0x1b0));if(_0x1a41c0<0x1||_0x1a41c0>0x64)throw CliErrors[_0x2e4e86(0x19b)]('--pagesize\x20must\x20be\x20between\x201\x20and\x20100.');},async 'execute'(_0x1573ed){const _0x1b1ad7=a148_0x5eb534,_0x1e99e6=_0x1573ed['num']('page',0x1)||0x1,_0x81c1d6=_0x1573ed[_0x1b1ad7(0x1a3)](_0x1b1ad7(0x19d),0x64)||0x64,_0x4ecd71=_0x1573ed[_0x1b1ad7(0x1a6)](_0x1b1ad7(0x1b2))[_0x1b1ad7(0x192)]()[_0x1b1ad7(0x1a8)](),{items:_0x411d38,paging:_0xf46e4d}=await listAppRoles(_0x1573ed[_0x1b1ad7(0x197)],{'currentPage':_0x1e99e6,'pageSize':_0x81c1d6}),_0x2417ab=_0x4ecd71?_0x411d38['filter'](_0x15b45e=>_0x15b45e[_0x1b1ad7(0x1a9)]===_0x4ecd71):_0x411d38,_0x19b119=_0x2417ab[_0x1b1ad7(0x1a7)](projectRole);return{'ok':!![],'data':{'roles':_0x19b119,'paging':_0xf46e4d},'message':'Found\x20'+_0x19b119[_0x1b1ad7(0x19a)]+'\x20role(s)'};}};
@@ -1 +1 @@
1
- const a149_0x3c5b2f=a149_0x2728;function a149_0x2728(_0xd16c2c,_0x29a8a3){_0xd16c2c=_0xd16c2c-0xa0;const _0x173180=a149_0x1731();let _0x27280c=_0x173180[_0xd16c2c];return _0x27280c;}(function(_0x1f97cc,_0xecaa24){const _0x55d44e=a149_0x2728,_0x120ec9=_0x1f97cc();while(!![]){try{const _0x5cc6b5=parseInt(_0x55d44e(0xe2))/0x1+-parseInt(_0x55d44e(0xdc))/0x2+parseInt(_0x55d44e(0xca))/0x3+-parseInt(_0x55d44e(0xb7))/0x4*(-parseInt(_0x55d44e(0xad))/0x5)+-parseInt(_0x55d44e(0xd4))/0x6*(-parseInt(_0x55d44e(0xbb))/0x7)+parseInt(_0x55d44e(0xd2))/0x8*(-parseInt(_0x55d44e(0xb9))/0x9)+-parseInt(_0x55d44e(0xbf))/0xa*(-parseInt(_0x55d44e(0xa6))/0xb);if(_0x5cc6b5===_0xecaa24)break;else _0x120ec9['push'](_0x120ec9['shift']());}catch(_0x1fdf73){_0x120ec9['push'](_0x120ec9['shift']());}}}(a149_0x1731,0xe0953));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':a149_0x3c5b2f(0xdf),'required':!![],'description':a149_0x3c5b2f(0xe1)};export const ROLE_REF_FLAG={'name':a149_0x3c5b2f(0xdb),'type':a149_0x3c5b2f(0xb0),'required':!![],'description':'Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)'};export const USER_REF_FLAG={'name':'user','type':'string','required':!![],'description':a149_0x3c5b2f(0xa5)};export const NAME_FLAG={'name':'name','type':a149_0x3c5b2f(0xb0),'required':!![],'description':'Role\x20name'};export const USER_NAME_FLAG={'name':a149_0x3c5b2f(0xe9),'type':'string','required':!![],'description':a149_0x3c5b2f(0xcf)};export const REMARK_FLAG={'name':a149_0x3c5b2f(0xe7),'type':a149_0x3c5b2f(0xb0),'required':![],'description':'Optional\x20role\x20remark/description'};export const EXPECT_USER_COUNT_FLAG={'name':'expect-user-count','type':a149_0x3c5b2f(0xdf),'required':![],'description':a149_0x3c5b2f(0xa7)};export const BUILTIN_ROLE_TYPES=[a149_0x3c5b2f(0xbd),a149_0x3c5b2f(0xc3),a149_0x3c5b2f(0xc1)];export function isBuiltinRole(_0x5baa7f){const _0x59bf82=a149_0x3c5b2f;return BUILTIN_ROLE_TYPES[_0x59bf82(0xef)](_0x5baa7f);}export function assertCustomRole(_0x586ba0,_0x4cc6be){const _0x422a59=a149_0x3c5b2f;if(_0x586ba0[_0x422a59(0xa0)]!==_0x422a59(0xeb))throw CliErrors[_0x422a59(0xa1)]('Cannot\x20'+_0x4cc6be+'\x20built-in\x20role\x20'+_0x586ba0[_0x422a59(0xb5)]+'\x20('+_0x586ba0['roleType']+').',_0x422a59(0xda));}export function assertPermConfigurable(_0x265cfb){const _0x254a05=a149_0x3c5b2f;if(_0x265cfb['roleType']==='DEV'||_0x265cfb[_0x254a05(0xa0)]===_0x254a05(0xbd))throw CliErrors[_0x254a05(0xa1)](_0x254a05(0xb6)+_0x265cfb['roleName']+'\x20('+_0x265cfb[_0x254a05(0xa0)]+').',_0x254a05(0xa3));}export function projectRole(_0x30983c){const _0x4d7dfa=a149_0x3c5b2f;return{'id':_0x30983c['id'],'roleName':_0x30983c['roleName'],'roleType':_0x30983c[_0x4d7dfa(0xa0)],'remark':_0x30983c['remark'],'userCount':_0x30983c[_0x4d7dfa(0xcd)],'permitCount':_0x30983c[_0x4d7dfa(0xc9)],'builtin':isBuiltinRole(_0x30983c[_0x4d7dfa(0xa0)])};}export async function resolveRoleRef(_0xe3f66,_0x4a323e){const _0x91b71e=a149_0x3c5b2f,_0x3ef99d=_0x4a323e[_0x91b71e(0xe6)]();if(!_0x3ef99d)throw CliErrors['validation'](_0x91b71e(0xcb),_0x91b71e(0xd0));if(/^\d+$/[_0x91b71e(0xe5)](_0x3ef99d))return getRoleById(_0xe3f66,Number(_0x3ef99d));const _0xfa9745=await listAllAppRoles(_0xe3f66),_0x3fd1fc=_0xfa9745['filter'](_0x55d5a2=>_0x55d5a2['roleName']===_0x3ef99d);if(_0x3fd1fc[_0x91b71e(0xc7)]===0x0)throw CliErrors[_0x91b71e(0xa1)](_0x91b71e(0xa2)+_0x3ef99d+'\x22\x20not\x20found\x20in\x20app\x20'+_0xe3f66+'.',_0x91b71e(0xd6));if(_0x3fd1fc[_0x91b71e(0xc7)]>0x1){const _0x2556ca=_0x3fd1fc[_0x91b71e(0xd3)](_0x3836ee=>_0x3836ee['id'])[_0x91b71e(0xa4)](',\x20');throw CliErrors[_0x91b71e(0xa1)]('Role\x20name\x20\x22'+_0x3ef99d+_0x91b71e(0xd5)+_0x2556ca+').',_0x91b71e(0xe3));}return _0x3fd1fc[0x0];}export async function getRoleById(_0xbaeb48,_0x382625){const _0x12f467=a149_0x3c5b2f,_0x549fe0=await getAppRole(_0x382625);if(!_0x549fe0)throw CliErrors['validation'](_0x12f467(0xe8)+_0x382625+_0x12f467(0xcc)+_0xbaeb48+'.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');return _0x549fe0;}async function listAllAppRoles(_0x16ce87){const _0x585022=a149_0x3c5b2f,_0x4d2213=0x64,_0x20650d=[];for(let _0xd4c530=0x1;;_0xd4c530+=0x1){const {items:_0x5de846,paging:_0x4b81a7}=await listAppRoles(_0x16ce87,{'currentPage':_0xd4c530,'pageSize':_0x4d2213});_0x20650d[_0x585022(0xbe)](..._0x5de846);if(_0x5de846['length']<_0x4d2213||_0x4b81a7&&_0x20650d['length']>=_0x4b81a7[_0x585022(0xc8)])return _0x20650d;}}export async function resolveTenantCode(){const _0x49d8c0=a149_0x3c5b2f,_0x587f3f=await getSessionUserInfo(),_0xa2ebdd=_0x587f3f?.['user']?.['tenant']?.[_0x49d8c0(0xa8)];if(!_0xa2ebdd)throw CliErrors[_0x49d8c0(0xd1)](_0x49d8c0(0xbc));return _0xa2ebdd;}function matchMember(_0x1b4a13,_0x2ef13b){const _0x475576=a149_0x3c5b2f,_0x2eea1e=_0x2ef13b[_0x475576(0xe6)]()[_0x475576(0xab)]();return(_0x1b4a13[_0x475576(0xd7)]??'')[_0x475576(0xab)]()===_0x2eea1e||(_0x1b4a13['username']??'')[_0x475576(0xab)]()===_0x2eea1e;}export async function resolveUserRef(_0x95d31){const _0x2fa8ca=a149_0x3c5b2f,_0x1a1adb=_0x95d31[_0x2fa8ca(0xe6)]();if(!_0x1a1adb)throw CliErrors[_0x2fa8ca(0xa1)](_0x2fa8ca(0xaf),_0x2fa8ca(0xec));const _0x204db9=await resolveTenantCode(),_0x1866f8=await getTenantMembers(_0x204db9);if(/^\d+$/[_0x2fa8ca(0xe5)](_0x1a1adb)){const _0x3f3e3b=Number(_0x1a1adb),_0x3ccfff=_0x1866f8[_0x2fa8ca(0xce)](_0x4c0437=>_0x4c0437[_0x2fa8ca(0xaa)]===_0x3f3e3b);return{'userId':_0x3f3e3b,'username':_0x3ccfff?.['username']??String(_0x3f3e3b),'nickname':_0x3ccfff?.[_0x2fa8ca(0xd7)],'matchedBy':'id'};}const _0x904d9e=_0x1866f8[_0x2fa8ca(0xb4)](_0x393e4e=>matchMember(_0x393e4e,_0x1a1adb));if(_0x904d9e[_0x2fa8ca(0xc7)]===0x0)throw CliErrors[_0x2fa8ca(0xa1)](_0x2fa8ca(0xc4)+_0x1a1adb+'\x22.',_0x2fa8ca(0xe4));if(_0x904d9e[_0x2fa8ca(0xc7)]>0x1){const _0x5ed61c=_0x904d9e[_0x2fa8ca(0xd3)](_0x835834=>(_0x835834[_0x2fa8ca(0xd7)]??_0x835834['username']??'?')+'('+_0x835834[_0x2fa8ca(0xaa)]+')')[_0x2fa8ca(0xa4)](',\x20');throw CliErrors['validation'](_0x2fa8ca(0xe0)+_0x1a1adb+_0x2fa8ca(0xb3)+_0x5ed61c+'.','Disambiguate\x20with\x20--user\x20<id>.');}const _0x35264b=_0x904d9e[0x0];return{'userId':_0x35264b[_0x2fa8ca(0xaa)],'username':_0x35264b[_0x2fa8ca(0xae)]??String(_0x35264b[_0x2fa8ca(0xaa)]),'nickname':_0x35264b[_0x2fa8ca(0xd7)],'matchedBy':'name'};}export const UPDATE_USER_LIST_PATH='/smartapi/permit/user-role/update-user-list';function userIdsOf(_0xdd33c){const _0x2e0110=a149_0x3c5b2f;return(_0xdd33c?.[_0x2e0110(0xea)]??[])[_0x2e0110(0xd3)](_0x2ef342=>_0x2ef342[_0x2e0110(0xaa)]);}export function computeRoleUserMutation(_0x9c4758){const _0x5aef7b=a149_0x3c5b2f,{operation:_0x7626b1,appCode:_0x55ef5e,roleUsers:_0x1c41b7,targetRoleId:_0x5b4f45,user:_0x5dd48f}=_0x9c4758,_0x1fa8ed=_0x1c41b7[_0x5aef7b(0xce)](_0xba6064=>_0xba6064['id']===_0x5b4f45);if(!_0x1fa8ed)throw CliErrors[_0x5aef7b(0xa1)](_0x5aef7b(0xe8)+_0x5b4f45+_0x5aef7b(0xdd),'Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');const _0x2c22ee=userIdsOf(_0x1fa8ed),_0xde47c=[];if(_0x9c4758[_0x5aef7b(0xc0)]!==undefined&&_0x9c4758[_0x5aef7b(0xc0)]!==_0x2c22ee[_0x5aef7b(0xc7)])throw CliErrors['validation']('Anti-drift\x20check\x20failed:\x20expected\x20'+_0x9c4758[_0x5aef7b(0xc0)]+_0x5aef7b(0xb2)+_0x2c22ee['length']+'.',_0x5aef7b(0xc5));const _0x16ca51=_0x2c22ee[_0x5aef7b(0xef)](_0x5dd48f[_0x5aef7b(0xaa)]);let _0x1587cd=![];const _0x4ff630=[..._0x1fa8ed[_0x5aef7b(0xea)]];if(_0x7626b1===_0x5aef7b(0xb8))_0x16ca51?_0xde47c[_0x5aef7b(0xbe)](_0x5aef7b(0xf0)+_0x5dd48f['userId']+_0x5aef7b(0xf1)+_0x1fa8ed[_0x5aef7b(0xb5)]+_0x5aef7b(0xd9)):(_0x4ff630[_0x5aef7b(0xbe)]({'userId':_0x5dd48f['userId'],'username':_0x5dd48f[_0x5aef7b(0xae)],..._0x5dd48f[_0x5aef7b(0xd7)]?{'nickname':_0x5dd48f['nickname']}:{}}),_0x1587cd=!![]);else{if(!_0x16ca51)_0xde47c['push'](_0x5aef7b(0xf0)+_0x5dd48f[_0x5aef7b(0xaa)]+'\x20is\x20not\x20a\x20member\x20of\x20role\x20'+_0x1fa8ed[_0x5aef7b(0xb5)]+_0x5aef7b(0xd9));else{const _0x193840=_0x4ff630[_0x5aef7b(0xc6)](_0x239057=>_0x239057[_0x5aef7b(0xaa)]===_0x5dd48f[_0x5aef7b(0xaa)]);if(_0x193840>=0x0)_0x4ff630[_0x5aef7b(0xee)](_0x193840,0x1);_0x1587cd=!![];}}const _0xa3e5ca=_0x1c41b7['map'](_0xcc1868=>_0xcc1868['id']===_0x5b4f45?{..._0xcc1868,'userList':_0x4ff630}:_0xcc1868),_0x58524b=_0x4ff630[_0x5aef7b(0xd3)](_0xd87949=>_0xd87949['userId']),_0x15ace7={'operation':_0x7626b1,'selector':{'appCode':_0x55ef5e,'roleId':_0x5b4f45,'roleName':_0x1fa8ed[_0x5aef7b(0xb5)],'userId':_0x5dd48f[_0x5aef7b(0xaa)]},'before':{'userIds':_0x2c22ee},'after':{'userIds':_0x58524b},'dryRun':_0x9c4758[_0x5aef7b(0xd8)],'backend':{'method':_0x5aef7b(0xba),'path':UPDATE_USER_LIST_PATH},'warnings':_0xde47c};return{'roleList':_0xa3e5ca,'mutation':_0x15ace7,'changed':_0x1587cd};}export async function loadRoleUsers(_0x232244){return listRoleUsers(_0x232244);}export function readRoleRef(_0x24dd73){const _0x2f5e2e=a149_0x3c5b2f,_0x5e7efd=_0x24dd73[_0x2f5e2e(0xde)](_0x2f5e2e(0xdb))[_0x2f5e2e(0xe6)]();if(!_0x5e7efd)throw CliErrors[_0x2f5e2e(0xed)](_0x2f5e2e(0xdb),_0x2f5e2e(0xd0));return _0x5e7efd;}function a149_0x1731(){const _0x263841=['map','30jgeCBB','\x22\x20is\x20ambiguous\x20(ids:\x20','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','nickname','dryRun',';\x20no\x20change.','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','role','1191250LRmeXb','\x20not\x20found\x20in\x20the\x20user-role\x20list.','str','number','Multiple\x20tenant\x20members\x20match\x20\x22','Role\x20id\x20(from\x20`role\x20list`)','752918kkDdDi','Disambiguate\x20with\x20--role\x20<id>.','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.','test','trim','remark','Role\x20id\x20','name','userList','CUSTOM','Pass\x20--user\x20<id|name>.','flagMissing','splice','includes','User\x20','\x20is\x20already\x20a\x20member\x20of\x20role\x20','roleType','validation','Role\x20name\x20\x22','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','join','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','55253hEFVYj','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','tenant_code','appCode','userId','toLowerCase','flag','1542515AEDzSD','username','Missing\x20user\x20reference.','string','user','\x20member(s)\x20but\x20role\x20has\x20','\x22:\x20','filter','roleName','Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20','4eMzmpB','user-add','54XZNvqx','POST','2570533oNtSAx','Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.','ADMIN','push','130tTmgCU','expectUserCount','USER','expect-user-count','DEV','No\x20tenant\x20member\x20matches\x20\x22','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','findIndex','length','totalCount','permitCount','920961SkprHA','Missing\x20role\x20reference.','\x20not\x20found\x20in\x20app\x20','userCount','find','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','Pass\x20--role\x20<id|name>.','authRequired','2339048bNkXNZ'];a149_0x1731=function(){return _0x263841;};return a149_0x1731();}export async function prepareUserMutation(_0x2ec444,_0x103c97,_0x58da80){const _0x3a3501=a149_0x3c5b2f,_0xeaad81=readRoleRef(_0x2ec444),_0x359de8=_0x2ec444[_0x3a3501(0xde)](_0x3a3501(0xb1))[_0x3a3501(0xe6)]();if(!_0x359de8)throw CliErrors['flagMissing'](_0x3a3501(0xb1),_0x3a3501(0xec));const _0x12a9bb=_0x2ec444[_0x3a3501(0xac)](_0x3a3501(0xc2)),_0x64c108=_0x12a9bb===undefined||_0x12a9bb===null?undefined:Number(_0x12a9bb),_0x19581c=await resolveRoleRef(_0x2ec444[_0x3a3501(0xa9)],_0xeaad81),_0x31acf8=await resolveUserRef(_0x359de8),_0x2cd270=await loadRoleUsers(_0x2ec444[_0x3a3501(0xa9)]);return computeRoleUserMutation({'operation':_0x103c97,'appCode':_0x2ec444[_0x3a3501(0xa9)],'roleUsers':_0x2cd270,'targetRoleId':_0x19581c['id'],'user':{'userId':_0x31acf8['userId'],'username':_0x31acf8[_0x3a3501(0xae)],'nickname':_0x31acf8[_0x3a3501(0xd7)]},'dryRun':_0x58da80,..._0x64c108!==undefined?{'expectUserCount':_0x64c108}:{}});}
1
+ const a149_0x2c3fcd=a149_0x2591;(function(_0x38c0f7,_0x45824c){const _0xf64411=a149_0x2591,_0x230e77=_0x38c0f7();while(!![]){try{const _0x445b3c=-parseInt(_0xf64411(0x1e9))/0x1+parseInt(_0xf64411(0x1ce))/0x2+-parseInt(_0xf64411(0x1ec))/0x3*(-parseInt(_0xf64411(0x1c3))/0x4)+parseInt(_0xf64411(0x1b3))/0x5+-parseInt(_0xf64411(0x1b5))/0x6+parseInt(_0xf64411(0x1e4))/0x7+-parseInt(_0xf64411(0x1cf))/0x8;if(_0x445b3c===_0x45824c)break;else _0x230e77['push'](_0x230e77['shift']());}catch(_0x22c7a4){_0x230e77['push'](_0x230e77['shift']());}}}(a149_0x3f12,0x81d05));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':a149_0x2c3fcd(0x1ef),'required':!![],'description':'Role\x20id\x20(from\x20`role\x20list`)'};export const ROLE_REF_FLAG={'name':'role','type':'string','required':!![],'description':a149_0x2c3fcd(0x1b6)};export const USER_REF_FLAG={'name':a149_0x2c3fcd(0x1eb),'type':a149_0x2c3fcd(0x1aa),'required':!![],'description':a149_0x2c3fcd(0x1a6)};export const NAME_FLAG={'name':a149_0x2c3fcd(0x1bc),'type':a149_0x2c3fcd(0x1aa),'required':!![],'description':a149_0x2c3fcd(0x1c1)};export const USER_NAME_FLAG={'name':a149_0x2c3fcd(0x1bc),'type':a149_0x2c3fcd(0x1aa),'required':!![],'description':a149_0x2c3fcd(0x1cd)};export const REMARK_FLAG={'name':a149_0x2c3fcd(0x1d0),'type':a149_0x2c3fcd(0x1aa),'required':![],'description':a149_0x2c3fcd(0x1b7)};export const EXPECT_USER_COUNT_FLAG={'name':'expect-user-count','type':'number','required':![],'description':a149_0x2c3fcd(0x1c5)};export const BUILTIN_ROLE_TYPES=['ADMIN',a149_0x2c3fcd(0x1c4),a149_0x2c3fcd(0x1d1)];function a149_0x2591(_0xd3379a,_0x279736){_0xd3379a=_0xd3379a-0x1a4;const _0x3f12e4=a149_0x3f12();let _0x2591ac=_0x3f12e4[_0xd3379a];return _0x2591ac;}export function isBuiltinRole(_0x4485e8){const _0x56099c=a149_0x2c3fcd;return BUILTIN_ROLE_TYPES[_0x56099c(0x1c7)](_0x4485e8);}export function assertCustomRole(_0x9a1556,_0x2f518b){const _0x1426ef=a149_0x2c3fcd;if(_0x9a1556[_0x1426ef(0x1c9)]!==_0x1426ef(0x1a9))throw CliErrors['validation'](_0x1426ef(0x1a5)+_0x2f518b+'\x20built-in\x20role\x20'+_0x9a1556[_0x1426ef(0x1b1)]+'\x20('+_0x9a1556[_0x1426ef(0x1c9)]+').','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.');}export function assertPermConfigurable(_0x581aa8){const _0x5f14c2=a149_0x2c3fcd;if(_0x581aa8[_0x5f14c2(0x1c9)]===_0x5f14c2(0x1c4)||_0x581aa8[_0x5f14c2(0x1c9)]===_0x5f14c2(0x1ba))throw CliErrors[_0x5f14c2(0x1d3)]('Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20'+_0x581aa8[_0x5f14c2(0x1b1)]+'\x20('+_0x581aa8[_0x5f14c2(0x1c9)]+').',_0x5f14c2(0x1ca));}export function projectRole(_0x532bb8){const _0xcfad0e=a149_0x2c3fcd;return{'id':_0x532bb8['id'],'roleName':_0x532bb8[_0xcfad0e(0x1b1)],'roleType':_0x532bb8['roleType'],'remark':_0x532bb8[_0xcfad0e(0x1d0)],'userCount':_0x532bb8['userCount'],'permitCount':_0x532bb8[_0xcfad0e(0x1de)],'builtin':isBuiltinRole(_0x532bb8[_0xcfad0e(0x1c9)])};}export async function resolveRoleRef(_0x1128a3,_0x37e476){const _0x44a27d=a149_0x2c3fcd,_0x4dc629=_0x37e476[_0x44a27d(0x1ed)]();if(!_0x4dc629)throw CliErrors['validation'](_0x44a27d(0x1ab),_0x44a27d(0x1b0));if(/^\d+$/[_0x44a27d(0x1ea)](_0x4dc629))return getRoleById(_0x1128a3,Number(_0x4dc629));const _0x41b554=await listAllAppRoles(_0x1128a3),_0x11f676=_0x41b554[_0x44a27d(0x1cb)](_0x510482=>_0x510482[_0x44a27d(0x1b1)]===_0x4dc629);if(_0x11f676[_0x44a27d(0x1bb)]===0x0)throw CliErrors[_0x44a27d(0x1d3)]('Role\x20name\x20\x22'+_0x4dc629+'\x22\x20not\x20found\x20in\x20app\x20'+_0x1128a3+'.',_0x44a27d(0x1e3));if(_0x11f676['length']>0x1){const _0x29aeb7=_0x11f676[_0x44a27d(0x1cc)](_0x28ee4c=>_0x28ee4c['id'])[_0x44a27d(0x1dd)](',\x20');throw CliErrors[_0x44a27d(0x1d3)](_0x44a27d(0x1db)+_0x4dc629+_0x44a27d(0x1c2)+_0x29aeb7+').',_0x44a27d(0x1e7));}return _0x11f676[0x0];}export async function getRoleById(_0x3627ba,_0x11757e){const _0xdbdbf5=a149_0x2c3fcd,_0x5dc1f7=await getAppRole(_0x11757e);if(!_0x5dc1f7)throw CliErrors[_0xdbdbf5(0x1d3)](_0xdbdbf5(0x1ad)+_0x11757e+_0xdbdbf5(0x1d6)+_0x3627ba+'.',_0xdbdbf5(0x1e5));return _0x5dc1f7;}async function listAllAppRoles(_0x107f0e){const _0x4b3ea8=a149_0x2c3fcd,_0x527fcf=0x64,_0x20eee7=[];for(let _0x277bf2=0x1;;_0x277bf2+=0x1){const {items:_0x62dde4,paging:_0x4f2b7c}=await listAppRoles(_0x107f0e,{'currentPage':_0x277bf2,'pageSize':_0x527fcf});_0x20eee7[_0x4b3ea8(0x1bf)](..._0x62dde4);if(_0x62dde4[_0x4b3ea8(0x1bb)]<_0x527fcf||_0x4f2b7c&&_0x20eee7[_0x4b3ea8(0x1bb)]>=_0x4f2b7c['totalCount'])return _0x20eee7;}}export async function resolveTenantCode(){const _0x40195a=a149_0x2c3fcd,_0x3f84c1=await getSessionUserInfo(),_0x4c9bf4=_0x3f84c1?.[_0x40195a(0x1eb)]?.['tenant']?.[_0x40195a(0x1d8)];if(!_0x4c9bf4)throw CliErrors[_0x40195a(0x1a8)](_0x40195a(0x1e2));return _0x4c9bf4;}function matchMember(_0x3e8a6f,_0x451d45){const _0x572059=a149_0x2c3fcd,_0x44667e=_0x451d45[_0x572059(0x1ed)]()['toLowerCase']();return(_0x3e8a6f[_0x572059(0x1b8)]??'')[_0x572059(0x1b4)]()===_0x44667e||(_0x3e8a6f[_0x572059(0x1d5)]??'')[_0x572059(0x1b4)]()===_0x44667e;}export async function resolveUserRef(_0x44b17b){const _0x319ba=a149_0x2c3fcd,_0x4a56de=_0x44b17b[_0x319ba(0x1ed)]();if(!_0x4a56de)throw CliErrors[_0x319ba(0x1d3)](_0x319ba(0x1c8),_0x319ba(0x1b9));const _0x24d2db=await resolveTenantCode(),_0x1a0b5d=await getTenantMembers(_0x24d2db);if(/^\d+$/['test'](_0x4a56de)){const _0xe7d63e=Number(_0x4a56de),_0x4287e4=_0x1a0b5d['find'](_0x292c98=>_0x292c98[_0x319ba(0x1d9)]===_0xe7d63e);return{'userId':_0xe7d63e,'username':_0x4287e4?.[_0x319ba(0x1d5)]??String(_0xe7d63e),'nickname':_0x4287e4?.[_0x319ba(0x1b8)],'matchedBy':'id'};}const _0x3fac7d=_0x1a0b5d['filter'](_0x1217bb=>matchMember(_0x1217bb,_0x4a56de));if(_0x3fac7d[_0x319ba(0x1bb)]===0x0)throw CliErrors[_0x319ba(0x1d3)](_0x319ba(0x1a7)+_0x4a56de+'\x22.','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.');if(_0x3fac7d[_0x319ba(0x1bb)]>0x1){const _0x20bb2c=_0x3fac7d[_0x319ba(0x1cc)](_0x4a17e6=>(_0x4a17e6[_0x319ba(0x1b8)]??_0x4a17e6[_0x319ba(0x1d5)]??'?')+'('+_0x4a17e6['userId']+')')[_0x319ba(0x1dd)](',\x20');throw CliErrors[_0x319ba(0x1d3)](_0x319ba(0x1d2)+_0x4a56de+_0x319ba(0x1be)+_0x20bb2c+'.',_0x319ba(0x1df));}const _0x5dd732=_0x3fac7d[0x0];return{'userId':_0x5dd732[_0x319ba(0x1d9)],'username':_0x5dd732[_0x319ba(0x1d5)]??String(_0x5dd732[_0x319ba(0x1d9)]),'nickname':_0x5dd732['nickname'],'matchedBy':_0x319ba(0x1bc)};}export const UPDATE_USER_LIST_PATH=a149_0x2c3fcd(0x1dc);function userIdsOf(_0x55014a){const _0x2551cd=a149_0x2c3fcd;return(_0x55014a?.[_0x2551cd(0x1c6)]??[])[_0x2551cd(0x1cc)](_0x19c360=>_0x19c360[_0x2551cd(0x1d9)]);}export function computeRoleUserMutation(_0x3d64f3){const _0x5abbd8=a149_0x2c3fcd,{operation:_0x308320,appCode:_0x59fdea,roleUsers:_0x54e7e6,targetRoleId:_0x5185f1,user:_0x423f62}=_0x3d64f3,_0x2bd183=_0x54e7e6[_0x5abbd8(0x1bd)](_0x479e0c=>_0x479e0c['id']===_0x5185f1);if(!_0x2bd183)throw CliErrors['validation'](_0x5abbd8(0x1ad)+_0x5185f1+'\x20not\x20found\x20in\x20the\x20user-role\x20list.',_0x5abbd8(0x1e5));const _0x4f8ddd=userIdsOf(_0x2bd183),_0x4d53e3=[];if(_0x3d64f3[_0x5abbd8(0x1e1)]!==undefined&&_0x3d64f3[_0x5abbd8(0x1e1)]!==_0x4f8ddd[_0x5abbd8(0x1bb)])throw CliErrors['validation'](_0x5abbd8(0x1e6)+_0x3d64f3[_0x5abbd8(0x1e1)]+'\x20member(s)\x20but\x20role\x20has\x20'+_0x4f8ddd[_0x5abbd8(0x1bb)]+'.',_0x5abbd8(0x1e0));const _0x1d2344=_0x4f8ddd[_0x5abbd8(0x1c7)](_0x423f62[_0x5abbd8(0x1d9)]);let _0x7385fc=![];const _0x2be81b=[..._0x2bd183[_0x5abbd8(0x1c6)]];if(_0x308320===_0x5abbd8(0x1a4))_0x1d2344?_0x4d53e3['push'](_0x5abbd8(0x1f1)+_0x423f62[_0x5abbd8(0x1d9)]+'\x20is\x20already\x20a\x20member\x20of\x20role\x20'+_0x2bd183[_0x5abbd8(0x1b1)]+_0x5abbd8(0x1b2)):(_0x2be81b[_0x5abbd8(0x1bf)]({'userId':_0x423f62['userId'],'username':_0x423f62['username'],..._0x423f62[_0x5abbd8(0x1b8)]?{'nickname':_0x423f62[_0x5abbd8(0x1b8)]}:{}}),_0x7385fc=!![]);else{if(!_0x1d2344)_0x4d53e3['push']('User\x20'+_0x423f62[_0x5abbd8(0x1d9)]+_0x5abbd8(0x1c0)+_0x2bd183[_0x5abbd8(0x1b1)]+_0x5abbd8(0x1b2));else{const _0x3c465f=_0x2be81b[_0x5abbd8(0x1af)](_0x45359e=>_0x45359e[_0x5abbd8(0x1d9)]===_0x423f62[_0x5abbd8(0x1d9)]);if(_0x3c465f>=0x0)_0x2be81b[_0x5abbd8(0x1ae)](_0x3c465f,0x1);_0x7385fc=!![];}}const _0x44d7aa=_0x54e7e6[_0x5abbd8(0x1cc)](_0x990bcf=>_0x990bcf['id']===_0x5185f1?{..._0x990bcf,'userList':_0x2be81b}:_0x990bcf),_0x349dd7=_0x2be81b[_0x5abbd8(0x1cc)](_0x1e47b0=>_0x1e47b0[_0x5abbd8(0x1d9)]),_0x1b858c={'operation':_0x308320,'selector':{'appCode':_0x59fdea,'roleId':_0x5185f1,'roleName':_0x2bd183[_0x5abbd8(0x1b1)],'userId':_0x423f62[_0x5abbd8(0x1d9)]},'before':{'userIds':_0x4f8ddd},'after':{'userIds':_0x349dd7},'dryRun':_0x3d64f3['dryRun'],'backend':{'method':_0x5abbd8(0x1d7),'path':UPDATE_USER_LIST_PATH},'warnings':_0x4d53e3};return{'roleList':_0x44d7aa,'mutation':_0x1b858c,'changed':_0x7385fc};}export async function loadRoleUsers(_0x3758c9){return listRoleUsers(_0x3758c9);}export function readRoleRef(_0x105c66){const _0x466456=a149_0x2c3fcd,_0xa9912a=_0x105c66[_0x466456(0x1ac)](_0x466456(0x1ee))[_0x466456(0x1ed)]();if(!_0xa9912a)throw CliErrors['flagMissing'](_0x466456(0x1ee),_0x466456(0x1b0));return _0xa9912a;}function a149_0x3f12(){const _0xb8553=['push','\x20is\x20not\x20a\x20member\x20of\x20role\x20','Role\x20name','\x22\x20is\x20ambiguous\x20(ids:\x20','269528MJvvhu','DEV','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','userList','includes','Missing\x20user\x20reference.','roleType','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','filter','map','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','354520iDVAZL','5668728SJQkWF','remark','USER','Multiple\x20tenant\x20members\x20match\x20\x22','validation','flag','username','\x20not\x20found\x20in\x20app\x20','POST','tenant_code','userId','expect-user-count','Role\x20name\x20\x22','/smartapi/permit/user-role/update-user-list','join','permitCount','Disambiguate\x20with\x20--user\x20<id>.','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','expectUserCount','Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','611401nozirT','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','Anti-drift\x20check\x20failed:\x20expected\x20','Disambiguate\x20with\x20--role\x20<id>.','appCode','116480NQSUCX','test','user','39aDmOoD','trim','role','number','flagMissing','User\x20','user-add','Cannot\x20','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','No\x20tenant\x20member\x20matches\x20\x22','authRequired','CUSTOM','string','Missing\x20role\x20reference.','str','Role\x20id\x20','splice','findIndex','Pass\x20--role\x20<id|name>.','roleName',';\x20no\x20change.','4270375xEMtOr','toLowerCase','3827136mcyAzp','Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)','Optional\x20role\x20remark/description','nickname','Pass\x20--user\x20<id|name>.','ADMIN','length','name','find','\x22:\x20'];a149_0x3f12=function(){return _0xb8553;};return a149_0x3f12();}export async function prepareUserMutation(_0x3b17c4,_0x1a643f,_0x41be41){const _0xd1fc1f=a149_0x2c3fcd,_0x1dc949=readRoleRef(_0x3b17c4),_0x59e5d2=_0x3b17c4['str']('user')[_0xd1fc1f(0x1ed)]();if(!_0x59e5d2)throw CliErrors[_0xd1fc1f(0x1f0)](_0xd1fc1f(0x1eb),_0xd1fc1f(0x1b9));const _0x2dcd36=_0x3b17c4[_0xd1fc1f(0x1d4)](_0xd1fc1f(0x1da)),_0x18c7f6=_0x2dcd36===undefined||_0x2dcd36===null?undefined:Number(_0x2dcd36),_0x24a025=await resolveRoleRef(_0x3b17c4[_0xd1fc1f(0x1e8)],_0x1dc949),_0x5ae7ff=await resolveUserRef(_0x59e5d2),_0x2711e4=await loadRoleUsers(_0x3b17c4[_0xd1fc1f(0x1e8)]);return computeRoleUserMutation({'operation':_0x1a643f,'appCode':_0x3b17c4[_0xd1fc1f(0x1e8)],'roleUsers':_0x2711e4,'targetRoleId':_0x24a025['id'],'user':{'userId':_0x5ae7ff['userId'],'username':_0x5ae7ff['username'],'nickname':_0x5ae7ff['nickname']},'dryRun':_0x41be41,..._0x18c7f6!==undefined?{'expectUserCount':_0x18c7f6}:{}});}
@@ -1 +1 @@
1
- const a150_0xe11534=a150_0x4e10;(function(_0x1ff1b2,_0x30abb5){const _0x3d5a45=a150_0x4e10,_0x367ebf=_0x1ff1b2();while(!![]){try{const _0x517875=-parseInt(_0x3d5a45(0xc1))/0x1*(-parseInt(_0x3d5a45(0xba))/0x2)+-parseInt(_0x3d5a45(0xb4))/0x3+parseInt(_0x3d5a45(0xbe))/0x4+-parseInt(_0x3d5a45(0xc8))/0x5*(-parseInt(_0x3d5a45(0xc6))/0x6)+parseInt(_0x3d5a45(0xb8))/0x7*(parseInt(_0x3d5a45(0xc3))/0x8)+parseInt(_0x3d5a45(0xc7))/0x9+-parseInt(_0x3d5a45(0xb7))/0xa*(parseInt(_0x3d5a45(0xb2))/0xb);if(_0x517875===_0x30abb5)break;else _0x367ebf['push'](_0x367ebf['shift']());}catch(_0x51af8f){_0x367ebf['push'](_0x367ebf['shift']());}}}(a150_0x2dd9,0x290d5));import{updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a150_0x2dd9(){const _0x34a592=['num','Nothing\x20to\x20update.','1johqsi','write','1256hnzrKy','roleName','update','31062eJLACx','19161QtqINT','90dsolov','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','appCode','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','POST','946oPmKrh','name','597663rZZcDD','role','\x20(id=','25170RBqFzO','8337BCshRu','remark','14702WFoUBL','validation','trim','--name\x20cannot\x20be\x20empty.','1176716TDWczL'];a150_0x2dd9=function(){return _0x34a592;};return a150_0x2dd9();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a150_0x4e10(_0x312405,_0x484387){_0x312405=_0x312405-0xad;const _0x2dd910=a150_0x2dd9();let _0x4e10ae=_0x2dd910[_0x312405];return _0x4e10ae;}import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,REMARK_FLAG,ROLE_ID_FLAG}from'../../commands/role/shared.js';const UPDATE_PATH='/smartapi/permit/role/update';function readPatch(_0x581792){const _0x4067c8=a150_0x4e10,_0x3744ea=_0x581792['flag'](_0x4067c8(0xb3)),_0x5279f6=_0x581792['flag']('remark'),_0x4ac54b={};if(_0x3744ea!==undefined&&_0x3744ea!==null){const _0x2e2394=String(_0x3744ea)[_0x4067c8(0xbc)]();if(!_0x2e2394)throw CliErrors['validation'](_0x4067c8(0xbd));if(_0x2e2394['length']>0x40)throw CliErrors[_0x4067c8(0xbb)](_0x4067c8(0xae));_0x4ac54b[_0x4067c8(0xc4)]=_0x2e2394;}_0x5279f6!==undefined&&_0x5279f6!==null&&(_0x4ac54b[_0x4067c8(0xb9)]=String(_0x5279f6));if(_0x4ac54b[_0x4067c8(0xc4)]===undefined&&_0x4ac54b['remark']===undefined)throw CliErrors[_0x4067c8(0xbb)](_0x4067c8(0xc0),_0x4067c8(0xad));return _0x4ac54b;}export const roleUpdate={'service':a150_0xe11534(0xb5),'command':a150_0xe11534(0xc5),'description':a150_0xe11534(0xb0),'risk':a150_0xe11534(0xc2),'flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a150_0xe11534(0xb3),'type':'string','required':![],'description':'New\x20role\x20name'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x24bc4f){readPatch(_0x24bc4f);},async 'dryRun'(_0x36ecd0){const _0x1276cd=a150_0xe11534,_0x2c8e16=_0x36ecd0[_0x1276cd(0xbf)]('id'),_0x3a06ee=readPatch(_0x36ecd0),_0x179e80=await getRoleById(_0x36ecd0[_0x1276cd(0xaf)],_0x2c8e16);return assertCustomRole(_0x179e80,_0x1276cd(0xc5)),asDryRunResult({'operation':_0x1276cd(0xc5),'selector':{'appCode':_0x36ecd0[_0x1276cd(0xaf)],'roleId':_0x2c8e16,'roleName':_0x179e80[_0x1276cd(0xc4)]},'before':projectRole(_0x179e80),'after':projectRole({..._0x179e80,..._0x3a06ee[_0x1276cd(0xc4)]!==undefined?{'roleName':_0x3a06ee[_0x1276cd(0xc4)]}:{},..._0x3a06ee[_0x1276cd(0xb9)]!==undefined?{'remark':_0x3a06ee[_0x1276cd(0xb9)]}:{}}),'dryRun':!![],'backend':{'method':_0x1276cd(0xb1),'path':UPDATE_PATH},'warnings':[]},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x1de9d5){const _0x1d4ac9=a150_0xe11534,_0x462f27=_0x1de9d5[_0x1d4ac9(0xbf)]('id'),_0x1f1e87=readPatch(_0x1de9d5),_0x2ae416=await getRoleById(_0x1de9d5[_0x1d4ac9(0xaf)],_0x462f27);assertCustomRole(_0x2ae416,_0x1d4ac9(0xc5)),await updateAppRole({'id':_0x462f27,'appCode':_0x1de9d5[_0x1d4ac9(0xaf)],..._0x1f1e87[_0x1d4ac9(0xc4)]!==undefined?{'roleName':_0x1f1e87[_0x1d4ac9(0xc4)]}:{},..._0x1f1e87[_0x1d4ac9(0xb9)]!==undefined?{'remark':_0x1f1e87[_0x1d4ac9(0xb9)]}:{}});const _0x14d52b=await getRoleById(_0x1de9d5[_0x1d4ac9(0xaf)],_0x462f27);return{'ok':!![],'data':{'operation':_0x1d4ac9(0xc5),'selector':{'appCode':_0x1de9d5['appCode'],'roleId':_0x462f27,'roleName':_0x14d52b[_0x1d4ac9(0xc4)]},'before':projectRole(_0x2ae416),'after':projectRole(_0x14d52b),'dryRun':![],'backend':{'method':_0x1d4ac9(0xb1),'path':UPDATE_PATH},'warnings':[]},'message':'Updated\x20role\x20'+_0x14d52b[_0x1d4ac9(0xc4)]+_0x1d4ac9(0xb6)+_0x462f27+')'};}};
1
+ const a150_0xa828ce=a150_0x4cf2;(function(_0x2bd842,_0x489f86){const _0x164ff9=a150_0x4cf2,_0x1c573f=_0x2bd842();while(!![]){try{const _0xe8ea76=-parseInt(_0x164ff9(0x85))/0x1*(parseInt(_0x164ff9(0x6d))/0x2)+parseInt(_0x164ff9(0x71))/0x3+-parseInt(_0x164ff9(0x75))/0x4+parseInt(_0x164ff9(0x84))/0x5*(-parseInt(_0x164ff9(0x7b))/0x6)+-parseInt(_0x164ff9(0x79))/0x7+-parseInt(_0x164ff9(0x86))/0x8+parseInt(_0x164ff9(0x7d))/0x9;if(_0xe8ea76===_0x489f86)break;else _0x1c573f['push'](_0x1c573f['shift']());}catch(_0x25eb66){_0x1c573f['push'](_0x1c573f['shift']());}}}(a150_0x288a,0x7e945));import{updateAppRole}from'../../core/api-client.js';function a150_0x288a(){const _0x26834b=['validation','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','update','1173318sANlGq','remark','string','roleName','66884yerJtB','flag','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','appCode','375690cUFmKD','Updated\x20role\x20','6nTGZWx','--name\x20cannot\x20be\x20empty.','12476619Avqvle','name','trim','/smartapi/permit/role/update','length','\x20(id=','Nothing\x20to\x20update.','4610530APqOZF','1REHsnH','2093448hooQyw','9500MnhvQu'];a150_0x288a=function(){return _0x26834b;};return a150_0x288a();}import{CliErrors}from'../../errors.js';function a150_0x4cf2(_0x35622a,_0x316cfd){_0x35622a=_0x35622a-0x6d;const _0x288ac6=a150_0x288a();let _0x4cf24d=_0x288ac6[_0x35622a];return _0x4cf24d;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,REMARK_FLAG,ROLE_ID_FLAG}from'../../commands/role/shared.js';const UPDATE_PATH=a150_0xa828ce(0x80);function readPatch(_0x1c79f0){const _0x5254bb=a150_0xa828ce,_0x401a72=_0x1c79f0[_0x5254bb(0x76)](_0x5254bb(0x7e)),_0x574b48=_0x1c79f0[_0x5254bb(0x76)](_0x5254bb(0x72)),_0x809de6={};if(_0x401a72!==undefined&&_0x401a72!==null){const _0x16b616=String(_0x401a72)[_0x5254bb(0x7f)]();if(!_0x16b616)throw CliErrors[_0x5254bb(0x6e)](_0x5254bb(0x7c));if(_0x16b616[_0x5254bb(0x81)]>0x40)throw CliErrors['validation']('Role\x20name\x20cannot\x20exceed\x2064\x20characters.');_0x809de6[_0x5254bb(0x74)]=_0x16b616;}_0x574b48!==undefined&&_0x574b48!==null&&(_0x809de6[_0x5254bb(0x72)]=String(_0x574b48));if(_0x809de6[_0x5254bb(0x74)]===undefined&&_0x809de6[_0x5254bb(0x72)]===undefined)throw CliErrors[_0x5254bb(0x6e)](_0x5254bb(0x83),_0x5254bb(0x77));return _0x809de6;}export const roleUpdate={'service':'role','command':a150_0xa828ce(0x70),'description':a150_0xa828ce(0x6f),'risk':'write','flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a150_0xa828ce(0x7e),'type':a150_0xa828ce(0x73),'required':![],'description':'New\x20role\x20name'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4d1017){readPatch(_0x4d1017);},async 'dryRun'(_0x4300bf){const _0x6e63a8=a150_0xa828ce,_0x3a6afc=_0x4300bf['num']('id'),_0x5be051=readPatch(_0x4300bf),_0x1c0a34=await getRoleById(_0x4300bf[_0x6e63a8(0x78)],_0x3a6afc);return assertCustomRole(_0x1c0a34,_0x6e63a8(0x70)),asDryRunResult({'operation':_0x6e63a8(0x70),'selector':{'appCode':_0x4300bf[_0x6e63a8(0x78)],'roleId':_0x3a6afc,'roleName':_0x1c0a34[_0x6e63a8(0x74)]},'before':projectRole(_0x1c0a34),'after':projectRole({..._0x1c0a34,..._0x5be051[_0x6e63a8(0x74)]!==undefined?{'roleName':_0x5be051[_0x6e63a8(0x74)]}:{},..._0x5be051[_0x6e63a8(0x72)]!==undefined?{'remark':_0x5be051[_0x6e63a8(0x72)]}:{}}),'dryRun':!![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':[]},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0xed75ab){const _0x11aac1=a150_0xa828ce,_0x1d4381=_0xed75ab['num']('id'),_0x20df04=readPatch(_0xed75ab),_0x112d0d=await getRoleById(_0xed75ab[_0x11aac1(0x78)],_0x1d4381);assertCustomRole(_0x112d0d,'update'),await updateAppRole({'id':_0x1d4381,'appCode':_0xed75ab[_0x11aac1(0x78)],..._0x20df04[_0x11aac1(0x74)]!==undefined?{'roleName':_0x20df04[_0x11aac1(0x74)]}:{},..._0x20df04['remark']!==undefined?{'remark':_0x20df04[_0x11aac1(0x72)]}:{}});const _0x66b80b=await getRoleById(_0xed75ab[_0x11aac1(0x78)],_0x1d4381);return{'ok':!![],'data':{'operation':_0x11aac1(0x70),'selector':{'appCode':_0xed75ab[_0x11aac1(0x78)],'roleId':_0x1d4381,'roleName':_0x66b80b[_0x11aac1(0x74)]},'before':projectRole(_0x112d0d),'after':projectRole(_0x66b80b),'dryRun':![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':[]},'message':_0x11aac1(0x7a)+_0x66b80b[_0x11aac1(0x74)]+_0x11aac1(0x82)+_0x1d4381+')'};}};
@@ -1 +1 @@
1
- function a151_0x10d3(){const _0x466115=['user-add','roleName','\x20already\x20in\x20role\x20','354cWVvQu','5883110eTfeLA','575588oGMGqz','9183231rOSWYO','Added\x20user\x20','POST','1897813lFJttK','selector','appCode','884409ZpNBnN','userId','role','45mgnyuU','9132816WcgMVJ','2sxphql','high-risk-write','25039eHPWiS','44umYgkY','\x20to\x20role\x20','8bwhUFK'];a151_0x10d3=function(){return _0x466115;};return a151_0x10d3();}const a151_0x3c1fc9=a151_0x2010;(function(_0x1d41e1,_0x5b6fd8){const _0x3a62e4=a151_0x2010,_0x15592e=_0x1d41e1();while(!![]){try{const _0x241624=-parseInt(_0x3a62e4(0xe1))/0x1+-parseInt(_0x3a62e4(0xe9))/0x2*(parseInt(_0x3a62e4(0xe4))/0x3)+-parseInt(_0x3a62e4(0xf4))/0x4*(parseInt(_0x3a62e4(0xe7))/0x5)+parseInt(_0x3a62e4(0xf2))/0x6*(-parseInt(_0x3a62e4(0xeb))/0x7)+parseInt(_0x3a62e4(0xee))/0x8*(parseInt(_0x3a62e4(0xf5))/0x9)+parseInt(_0x3a62e4(0xf3))/0xa+-parseInt(_0x3a62e4(0xec))/0xb*(-parseInt(_0x3a62e4(0xe8))/0xc);if(_0x241624===_0x5b6fd8)break;else _0x15592e['push'](_0x15592e['shift']());}catch(_0xbc243){_0x15592e['push'](_0x15592e['shift']());}}}(a151_0x10d3,0xe8f62));import{updateRoleUsers}from'../../core/api-client.js';function a151_0x2010(_0x51c314,_0x532532){_0x51c314=_0x51c314-0xdf;const _0x10d3f7=a151_0x10d3();let _0x2010b6=_0x10d3f7[_0x51c314];return _0x2010b6;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserAdd={'service':a151_0x3c1fc9(0xe6),'command':a151_0x3c1fc9(0xef),'description':'Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','risk':a151_0x3c1fc9(0xea),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x576955){const _0x4cb226=a151_0x3c1fc9,{mutation:_0x187172}=await prepareUserMutation(_0x576955,_0x4cb226(0xef),!![]);return asDryRunResult(_0x187172,{'method':_0x4cb226(0xe0),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x2f4304){const _0x20d734=a151_0x3c1fc9,{roleList:_0x38f85f,mutation:_0x273a11,changed:_0x45642b}=await prepareUserMutation(_0x2f4304,_0x20d734(0xef),![]);return _0x45642b&&await updateRoleUsers(_0x2f4304[_0x20d734(0xe3)],_0x38f85f),{'ok':!![],'data':_0x273a11,'message':_0x45642b?_0x20d734(0xdf)+_0x273a11[_0x20d734(0xe2)][_0x20d734(0xe5)]+_0x20d734(0xed)+_0x273a11[_0x20d734(0xe2)][_0x20d734(0xf0)]:'No\x20change:\x20user\x20'+_0x273a11[_0x20d734(0xe2)][_0x20d734(0xe5)]+_0x20d734(0xf1)+_0x273a11['selector'][_0x20d734(0xf0)]};}};
1
+ const a151_0x5e40f8=a151_0x193a;(function(_0x3a75c3,_0x4b6c3b){const _0x36f085=a151_0x193a,_0x2ad334=_0x3a75c3();while(!![]){try{const _0x11994a=-parseInt(_0x36f085(0x16f))/0x1+parseInt(_0x36f085(0x17a))/0x2+-parseInt(_0x36f085(0x17c))/0x3+parseInt(_0x36f085(0x171))/0x4+-parseInt(_0x36f085(0x177))/0x5+parseInt(_0x36f085(0x179))/0x6+-parseInt(_0x36f085(0x170))/0x7*(-parseInt(_0x36f085(0x174))/0x8);if(_0x11994a===_0x4b6c3b)break;else _0x2ad334['push'](_0x2ad334['shift']());}catch(_0x778ed0){_0x2ad334['push'](_0x2ad334['shift']());}}}(a151_0x588f,0xbe131));import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a151_0x588f(){const _0xefc711=['603224yUxcZP','selector','user-add','7692100iOToJK','userId','821310xZeJyj','2110324hcbiGo','Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','208239nslyEu','appCode','198444aToAjy','112dCghCl','745308eRbIgR','roleName','No\x20change:\x20user\x20'];a151_0x588f=function(){return _0xefc711;};return a151_0x588f();}function a151_0x193a(_0x12c9e8,_0xce3375){_0x12c9e8=_0x12c9e8-0x16e;const _0x588f03=a151_0x588f();let _0x193a40=_0x588f03[_0x12c9e8];return _0x193a40;}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':'role','command':a151_0x5e40f8(0x176),'description':a151_0x5e40f8(0x17b),'risk':'high-risk-write','flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x23fed4){const {mutation:_0x1507ba}=await prepareUserMutation(_0x23fed4,'user-add',!![]);return asDryRunResult(_0x1507ba,{'method':'POST','url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x37e223){const _0x44e9ac=a151_0x5e40f8,{roleList:_0x42bad5,mutation:_0x24ee18,changed:_0x2277bd}=await prepareUserMutation(_0x37e223,'user-add',![]);return _0x2277bd&&await updateRoleUsers(_0x37e223[_0x44e9ac(0x16e)],_0x42bad5),{'ok':!![],'data':_0x24ee18,'message':_0x2277bd?'Added\x20user\x20'+_0x24ee18[_0x44e9ac(0x175)]['userId']+'\x20to\x20role\x20'+_0x24ee18[_0x44e9ac(0x175)][_0x44e9ac(0x172)]:_0x44e9ac(0x173)+_0x24ee18[_0x44e9ac(0x175)][_0x44e9ac(0x178)]+'\x20already\x20in\x20role\x20'+_0x24ee18['selector'][_0x44e9ac(0x172)]};}};
@@ -1 +1 @@
1
- const a152_0x191e23=a152_0x2fcb;function a152_0x2fcb(_0x1467a5,_0x33fc07){_0x1467a5=_0x1467a5-0x7b;const _0x351104=a152_0x3511();let _0x2fcb6b=_0x351104[_0x1467a5];return _0x2fcb6b;}(function(_0x295242,_0x97dd0d){const _0x3b9a16=a152_0x2fcb,_0x2a72cb=_0x295242();while(!![]){try{const _0x3789af=-parseInt(_0x3b9a16(0x84))/0x1*(-parseInt(_0x3b9a16(0x80))/0x2)+parseInt(_0x3b9a16(0x90))/0x3*(-parseInt(_0x3b9a16(0x83))/0x4)+-parseInt(_0x3b9a16(0x8a))/0x5*(parseInt(_0x3b9a16(0x7b))/0x6)+-parseInt(_0x3b9a16(0x8b))/0x7*(parseInt(_0x3b9a16(0x7c))/0x8)+parseInt(_0x3b9a16(0x87))/0x9*(-parseInt(_0x3b9a16(0x85))/0xa)+parseInt(_0x3b9a16(0x86))/0xb*(-parseInt(_0x3b9a16(0x8d))/0xc)+parseInt(_0x3b9a16(0x89))/0xd*(parseInt(_0x3b9a16(0x7d))/0xe);if(_0x3789af===_0x97dd0d)break;else _0x2a72cb['push'](_0x2a72cb['shift']());}catch(_0x2c820f){_0x2a72cb['push'](_0x2a72cb['shift']());}}}(a152_0x3511,0xc0e8b));import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a152_0x3511(){const _0xc436c8=['40dNtTtr','997541ZkTFPa','130wntmtH','258643DcDTVw','559809CRNlea','selector','13rihJhx','1945omGTnP','513821qltYoi','POST','264seNLYP','roleName','high-risk-write','197100KOLgjD','Removed\x20user\x20','19914oXtvku','136AJoZzL','60402370uflOFd','\x20from\x20role\x20','role','2EaQwBE','userId','user-remove'];a152_0x3511=function(){return _0xc436c8;};return a152_0x3511();}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':a152_0x191e23(0x7f),'command':a152_0x191e23(0x82),'description':'Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','risk':a152_0x191e23(0x8f),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x1825dd){const _0x1355ec=a152_0x191e23,{mutation:_0x4be93e}=await prepareUserMutation(_0x1825dd,'user-remove',!![]);return asDryRunResult(_0x4be93e,{'method':_0x1355ec(0x8c),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x527168){const _0x102168=a152_0x191e23,{roleList:_0x14b42e,mutation:_0xf4bd4c,changed:_0x4dda63}=await prepareUserMutation(_0x527168,_0x102168(0x82),![]);return _0x4dda63&&await updateRoleUsers(_0x527168['appCode'],_0x14b42e),{'ok':!![],'data':_0xf4bd4c,'message':_0x4dda63?_0x102168(0x91)+_0xf4bd4c['selector'][_0x102168(0x81)]+_0x102168(0x7e)+_0xf4bd4c[_0x102168(0x88)][_0x102168(0x8e)]:'No\x20change:\x20user\x20'+_0xf4bd4c[_0x102168(0x88)]['userId']+'\x20not\x20in\x20role\x20'+_0xf4bd4c[_0x102168(0x88)][_0x102168(0x8e)]};}};
1
+ function a152_0x5e4a(){const _0x263bb8=['\x20not\x20in\x20role\x20','22384zSakwm','311268FeVJFS','userId','250IVwOoS','POST','584910CzJuBk','2304564VmyvWh','509836OJVMlm','34SEUfBP','roleName','role','3AcnYCh','selector','4457rAyaBn','Removed\x20user\x20','119HieHun','41166ULKtkW','user-remove','11RffPdN'];a152_0x5e4a=function(){return _0x263bb8;};return a152_0x5e4a();}const a152_0x113823=a152_0x255a;(function(_0x3edab2,_0x5b4fd6){const _0x267da2=a152_0x255a,_0x29ac4b=_0x3edab2();while(!![]){try{const _0x36187e=-parseInt(_0x267da2(0x1da))/0x1*(-parseInt(_0x267da2(0x1d5))/0x2)+parseInt(_0x267da2(0x1d8))/0x3*(parseInt(_0x267da2(0x1d4))/0x4)+-parseInt(_0x267da2(0x1d2))/0x5+parseInt(_0x267da2(0x1e2))/0x6+-parseInt(_0x267da2(0x1dc))/0x7*(-parseInt(_0x267da2(0x1e1))/0x8)+-parseInt(_0x267da2(0x1dd))/0x9*(-parseInt(_0x267da2(0x1e4))/0xa)+-parseInt(_0x267da2(0x1df))/0xb*(parseInt(_0x267da2(0x1d3))/0xc);if(_0x36187e===_0x5b4fd6)break;else _0x29ac4b['push'](_0x29ac4b['shift']());}catch(_0x44cb60){_0x29ac4b['push'](_0x29ac4b['shift']());}}}(a152_0x5e4a,0x1a5d9));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 a152_0x255a(_0x51b3e7,_0x4c3684){_0x51b3e7=_0x51b3e7-0x1d1;const _0x5e4a56=a152_0x5e4a();let _0x255ae8=_0x5e4a56[_0x51b3e7];return _0x255ae8;}export const roleUserRemove={'service':a152_0x113823(0x1d7),'command':a152_0x113823(0x1de),'description':'Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','risk':'high-risk-write','flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x533790){const _0x54aaed=a152_0x113823,{mutation:_0x4b11c5}=await prepareUserMutation(_0x533790,_0x54aaed(0x1de),!![]);return asDryRunResult(_0x4b11c5,{'method':_0x54aaed(0x1d1),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x205133){const _0x1944f3=a152_0x113823,{roleList:_0x18f83b,mutation:_0x589b9e,changed:_0x1586ed}=await prepareUserMutation(_0x205133,_0x1944f3(0x1de),![]);return _0x1586ed&&await updateRoleUsers(_0x205133['appCode'],_0x18f83b),{'ok':!![],'data':_0x589b9e,'message':_0x1586ed?_0x1944f3(0x1db)+_0x589b9e[_0x1944f3(0x1d9)][_0x1944f3(0x1e3)]+'\x20from\x20role\x20'+_0x589b9e[_0x1944f3(0x1d9)][_0x1944f3(0x1d6)]:'No\x20change:\x20user\x20'+_0x589b9e['selector'][_0x1944f3(0x1e3)]+_0x1944f3(0x1e0)+_0x589b9e[_0x1944f3(0x1d9)]['roleName']};}};
@@ -1 +1 @@
1
- const a153_0x2d0046=a153_0x5c22;(function(_0x4e4699,_0x365183){const _0x3f3b4f=a153_0x5c22,_0x2c6a33=_0x4e4699();while(!![]){try{const _0x335625=-parseInt(_0x3f3b4f(0x112))/0x1*(parseInt(_0x3f3b4f(0xfb))/0x2)+parseInt(_0x3f3b4f(0x10f))/0x3*(parseInt(_0x3f3b4f(0x10e))/0x4)+-parseInt(_0x3f3b4f(0x111))/0x5*(-parseInt(_0x3f3b4f(0x107))/0x6)+parseInt(_0x3f3b4f(0x110))/0x7+-parseInt(_0x3f3b4f(0x108))/0x8+parseInt(_0x3f3b4f(0x10d))/0x9+parseInt(_0x3f3b4f(0x10a))/0xa*(-parseInt(_0x3f3b4f(0x10c))/0xb);if(_0x335625===_0x365183)break;else _0x2c6a33['push'](_0x2c6a33['shift']());}catch(_0x498488){_0x2c6a33['push'](_0x2c6a33['shift']());}}}(a153_0x256c,0x322cb));function a153_0x5c22(_0x5f1e83,_0x46cd53){_0x5f1e83=_0x5f1e83-0xfb;const _0x256cbb=a153_0x256c();let _0x5c22fe=_0x256cbb[_0x5f1e83];return _0x5c22fe;}function a153_0x256c(){const _0x2f0d15=['561698cOmpbN','role','Pass\x20--name\x20<nickname|username>.','username','Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','user-resolve','userId','read','trim','\x22\x20→\x20userId\x20','Resolved\x20\x22','flagMissing','930660IyuwBO','1171664fdqXkq','str','910GaSNnb','name','34023AWGTvp','2620539nwoZwc','4bewbqR','504552SGLUER','2098740zFGHAP','5tmogXz','1EoEUDU'];a153_0x256c=function(){return _0x2f0d15;};return a153_0x256c();}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';export const roleUserResolve={'service':a153_0x2d0046(0xfc),'command':a153_0x2d0046(0x100),'description':a153_0x2d0046(0xff),'risk':a153_0x2d0046(0x102),'flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1fc171){const _0x5c9d34=a153_0x2d0046;if(!_0x1fc171[_0x5c9d34(0x109)](_0x5c9d34(0x10b))[_0x5c9d34(0x103)]())throw CliErrors[_0x5c9d34(0x106)](_0x5c9d34(0x10b),_0x5c9d34(0xfd));},async 'execute'(_0x38495d){const _0x19778d=a153_0x2d0046,_0x21f080=_0x38495d[_0x19778d(0x109)](_0x19778d(0x10b))[_0x19778d(0x103)](),_0xe93d81=await resolveUserRef(_0x21f080);return{'ok':!![],'data':{'user':{'userId':_0xe93d81[_0x19778d(0x101)],'username':_0xe93d81[_0x19778d(0xfe)],'nickname':_0xe93d81['nickname'],'matchedBy':_0xe93d81['matchedBy']}},'message':_0x19778d(0x105)+_0x21f080+_0x19778d(0x104)+_0xe93d81[_0x19778d(0x101)]};}};
1
+ const a153_0x58e6ea=a153_0x34c7;(function(_0x4ca5cf,_0x1727e0){const _0x19a665=a153_0x34c7,_0xd532cd=_0x4ca5cf();while(!![]){try{const _0x3ef993=-parseInt(_0x19a665(0x1ab))/0x1*(parseInt(_0x19a665(0x1ba))/0x2)+parseInt(_0x19a665(0x1bd))/0x3*(parseInt(_0x19a665(0x1b8))/0x4)+parseInt(_0x19a665(0x1b1))/0x5+-parseInt(_0x19a665(0x1ae))/0x6+parseInt(_0x19a665(0x1af))/0x7+parseInt(_0x19a665(0x1b7))/0x8+-parseInt(_0x19a665(0x1ac))/0x9*(-parseInt(_0x19a665(0x1b4))/0xa);if(_0x3ef993===_0x1727e0)break;else _0xd532cd['push'](_0xd532cd['shift']());}catch(_0x3b981a){_0xd532cd['push'](_0xd532cd['shift']());}}}(a153_0x5001,0x502a3));import{CliErrors}from'../../errors.js';function a153_0x34c7(_0xf6e78c,_0xb79f14){_0xf6e78c=_0xf6e78c-0x1ab;const _0x5001e9=a153_0x5001();let _0x34c71c=_0x5001e9[_0xf6e78c];return _0x34c71c;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a153_0x5001(){const _0x51e172=['role','6PyHEvE','Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','trim','57xhqxaV','124361sWIUye','828KGNoSc','name','2874510eCgcTr','2486701pjQZvg','matchedBy','224910ZNGcjV','user-resolve','userId','9530oeKBSm','Resolved\x20\x22','flagMissing','2216584LAjnWH','87484JQgbNT'];a153_0x5001=function(){return _0x51e172;};return a153_0x5001();}import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';export const roleUserResolve={'service':a153_0x58e6ea(0x1b9),'command':a153_0x58e6ea(0x1b2),'description':a153_0x58e6ea(0x1bb),'risk':'read','flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xba88cb){const _0x12ed80=a153_0x58e6ea;if(!_0xba88cb['str'](_0x12ed80(0x1ad))[_0x12ed80(0x1bc)]())throw CliErrors[_0x12ed80(0x1b6)]('name','Pass\x20--name\x20<nickname|username>.');},async 'execute'(_0x5b1676){const _0x3ae1e3=a153_0x58e6ea,_0x443be6=_0x5b1676['str'](_0x3ae1e3(0x1ad))[_0x3ae1e3(0x1bc)](),_0xd0c35d=await resolveUserRef(_0x443be6);return{'ok':!![],'data':{'user':{'userId':_0xd0c35d[_0x3ae1e3(0x1b3)],'username':_0xd0c35d['username'],'nickname':_0xd0c35d['nickname'],'matchedBy':_0xd0c35d[_0x3ae1e3(0x1b0)]}},'message':_0x3ae1e3(0x1b5)+_0x443be6+'\x22\x20→\x20userId\x20'+_0xd0c35d['userId']};}};
@@ -1 +1 @@
1
- const a154_0x431b3b=a154_0x245a;(function(_0x2972ad,_0x4499a2){const _0x5465e1=a154_0x245a,_0x3fe6b9=_0x2972ad();while(!![]){try{const _0x6d4df1=-parseInt(_0x5465e1(0x1de))/0x1+-parseInt(_0x5465e1(0x1c2))/0x2+-parseInt(_0x5465e1(0x1f0))/0x3*(-parseInt(_0x5465e1(0x1c6))/0x4)+parseInt(_0x5465e1(0x1df))/0x5+parseInt(_0x5465e1(0x1dc))/0x6+-parseInt(_0x5465e1(0x1e9))/0x7*(parseInt(_0x5465e1(0x1be))/0x8)+parseInt(_0x5465e1(0x1f3))/0x9*(-parseInt(_0x5465e1(0x1f2))/0xa);if(_0x6d4df1===_0x4499a2)break;else _0x3fe6b9['push'](_0x3fe6b9['shift']());}catch(_0x11cb40){_0x3fe6b9['push'](_0x3fe6b9['shift']());}}}(a154_0x44a0,0x44640));import{readFileSync,existsSync}from'node:fs';import{CLI_BIN_NAME}from'../../constant/cli.js';function a154_0x245a(_0x24bf29,_0x171f35){_0x24bf29=_0x24bf29-0x1bc;const _0x44a002=a154_0x44a0();let _0x245ab4=_0x44a002[_0x24bf29];return _0x245ab4;}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([a154_0x431b3b(0x1ce),a154_0x431b3b(0x1e6)]);function a154_0x44a0(){const _0x35cc1d=['\x20\x20\x20\x20','start','run','Enable\x20watch\x20mode\x20for\x20preview','\x0a\x20\x20Usage:\x20','No\x20scripts\x20defined\x20in\x20package.json.','scripts','Run\x20a\x20package.json\x20script','.bin','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','vite\x20preview\x20exited\x20with\x20code\x20','preview','\x20run\x20start','node_modules','\x0a\x20\x20Available\x20scripts:\x0a','2989746OSHLhM','npm','241272erAFbr','2014320kRYouE','validation','vite','bun.lockb','boolean','\x20\x20EXAMPLES','script','dev','watch','keys','36197dVxZmp','join','error','cwd','Available:\x20','parse','(none)','3ZveFRe','all','2410DcRGdb','11331CSkYhA','\x20exited\x20with\x20code\x20','bool','push','\x20run\x20preview\x20--watch','close','length','inherit','176orwgsM','\x20run\x20build','log','No\x20package.json\x20found\x20in\x20current\x20directory.','307658vBaFlr','read','pnpm-lock.yaml','Script\x20\x22','765020OBXYCW','utf-8','Script\x20name\x20defined\x20in\x20package.json','args','\x22\x20not\x20found\x20in\x20package.json.','needsUpgrade','pnpm'];a154_0x44a0=function(){return _0x35cc1d;};return a154_0x44a0();}function readPackageScripts(_0x25fefc){const _0x30febb=a154_0x431b3b,_0xaea202=resolve(_0x25fefc,'package.json');if(!existsSync(_0xaea202))return null;try{const _0x13d4d4=JSON[_0x30febb(0x1ee)](readFileSync(_0xaea202,_0x30febb(0x1c7)));return _0x13d4d4[_0x30febb(0x1d3)]??{};}catch{return null;}}function detectPackageManager(_0x22afeb){const _0x238e57=a154_0x431b3b;if(existsSync(resolve(_0x22afeb,_0x238e57(0x1e2)))||existsSync(resolve(_0x22afeb,'bun.lock')))return'bun';if(existsSync(resolve(_0x22afeb,_0x238e57(0x1c4))))return _0x238e57(0x1cc);if(existsSync(resolve(_0x22afeb,'yarn.lock')))return'yarn';return _0x238e57(0x1dd);}async function versionCheck(_0x2bbfb1){const _0x51c64d=a154_0x431b3b,_0xb04736=await checkCliVersion();(_0xb04736[_0x51c64d(0x1cb)]||_0xb04736['belowMinimum'])&&(printCliUpgradeWarning(_0xb04736),assertCliVersionSupported(_0xb04736));const _0x453939=await checkSdkVersion(_0x2bbfb1);if(_0x453939['needsUpgrade'])printSdkUpgradeWarning(_0x453939);}function spawnScript(_0x5c380c,_0x45be24,_0xba9b68,_0x32fbdc){return new Promise((_0x3e2f2c,_0x80ade0)=>{const _0x12de6e=a154_0x245a,_0x2e5126=['run',_0x45be24,..._0xba9b68],_0x47835f=spawn(_0x5c380c,_0x2e5126,{'cwd':_0x32fbdc,'stdio':_0x12de6e(0x1bd),'shell':!![],'env':{...process.env,'PATH':''+join(_0x32fbdc,_0x12de6e(0x1da),_0x12de6e(0x1d5))+delimiter+process.env.PATH}});_0x47835f['on'](_0x12de6e(0x1f8),_0x41d212=>{const _0x334664=_0x12de6e;if(_0x41d212===0x0||_0x41d212===null)_0x3e2f2c();else _0x80ade0(new Error(_0x5c380c+'\x20run\x20'+_0x45be24+_0x334664(0x1f4)+_0x41d212));}),_0x47835f['on'](_0x12de6e(0x1eb),_0x80ade0);});}function spawnViteBuildWatch(_0x404a63){return new Promise((_0x2fa001,_0x1cb42b)=>{const _0x2b55e9=a154_0x245a,_0x361142=spawn(_0x2b55e9(0x1e1),['build','--watch'],{'cwd':_0x404a63,'stdio':_0x2b55e9(0x1bd),'shell':!![],'env':{...process.env,'PATH':''+join(_0x404a63,_0x2b55e9(0x1da),_0x2b55e9(0x1d5))+delimiter+process.env.PATH}});_0x361142['on'](_0x2b55e9(0x1f8),_0x4854e0=>{const _0x2bb41d=_0x2b55e9;if(_0x4854e0===0x0||_0x4854e0===null)_0x2fa001();else _0x1cb42b(new Error(_0x2bb41d(0x1d6)+_0x4854e0));}),_0x361142['on']('error',_0x1cb42b);});}function spawnVitePreview(_0x5e6058){return new Promise((_0x5abeeb,_0x4956f8)=>{const _0xdfb2f1=a154_0x245a,_0x3a1b06=spawn('vite',[_0xdfb2f1(0x1d8)],{'cwd':_0x5e6058,'stdio':_0xdfb2f1(0x1bd),'shell':!![],'env':{...process.env,'PATH':''+join(_0x5e6058,_0xdfb2f1(0x1da),_0xdfb2f1(0x1d5))+delimiter+process.env.PATH}});_0x3a1b06['on']('close',_0x53a38f=>{const _0x28290c=_0xdfb2f1;if(_0x53a38f===0x0||_0x53a38f===null)_0x5abeeb();else _0x4956f8(new Error(_0x28290c(0x1d7)+_0x53a38f));}),_0x3a1b06['on'](_0xdfb2f1(0x1eb),_0x4956f8);});}const runFlags=[{'name':a154_0x431b3b(0x1e7),'type':a154_0x431b3b(0x1e3),'description':a154_0x431b3b(0x1d0),'default':![]}];export const runDefinition={'service':a154_0x431b3b(0x1cf),'command':a154_0x431b3b(0x1cf),'description':a154_0x431b3b(0x1d4),'risk':a154_0x431b3b(0x1c3),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a154_0x431b3b(0x1e5),'description':a154_0x431b3b(0x1c8),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x3fa59f=a154_0x431b3b,_0x3e0139=[];return _0x3e0139[_0x3fa59f(0x1f6)](_0x3fa59f(0x1e4)),_0x3e0139[_0x3fa59f(0x1f6)](_0x3fa59f(0x1cd)+CLI_BIN_NAME+_0x3fa59f(0x1d9)),_0x3e0139[_0x3fa59f(0x1f6)](_0x3fa59f(0x1cd)+CLI_BIN_NAME+_0x3fa59f(0x1bf)),_0x3e0139[_0x3fa59f(0x1f6)](_0x3fa59f(0x1cd)+CLI_BIN_NAME+'\x20run\x20preview'),_0x3e0139[_0x3fa59f(0x1f6)](_0x3fa59f(0x1cd)+CLI_BIN_NAME+_0x3fa59f(0x1f7)),_0x3e0139[_0x3fa59f(0x1ea)]('\x0a');},async 'execute'(_0x58c201){const _0x33531a=a154_0x431b3b,_0x7083a9=process[_0x33531a(0x1ec)](),_0x663500=_0x58c201[_0x33531a(0x1c9)][0x0],_0x11fa38=_0x58c201[_0x33531a(0x1c9)]['slice'](0x1),_0x12138a=readPackageScripts(_0x7083a9);if(!_0x12138a)throw CliErrors['validation'](_0x33531a(0x1c1));if(!_0x663500){const _0x3dce97=Object['keys'](_0x12138a);if(_0x3dce97[_0x33531a(0x1bc)]===0x0)console['log'](_0x33531a(0x1d2));else{console[_0x33531a(0x1c0)](_0x33531a(0x1db));for(const _0x5ec19d of _0x3dce97){console[_0x33531a(0x1c0)](_0x33531a(0x1cd)+_0x5ec19d);}console['log'](_0x33531a(0x1d1)+CLI_BIN_NAME+'\x20run\x20<script>\x0a');}return{'ok':!![]};}if(!_0x12138a[_0x663500])throw CliErrors[_0x33531a(0x1e0)](_0x33531a(0x1c5)+_0x663500+_0x33531a(0x1ca),_0x33531a(0x1ed)+(Object[_0x33531a(0x1e8)](_0x12138a)[_0x33531a(0x1ea)](',\x20')||_0x33531a(0x1ef)));const _0x21af6d=detectPackageManager(_0x7083a9);VERSION_CHECK_SCRIPTS['has'](_0x663500)&&await versionCheck(_0x7083a9);if(_0x663500===_0x33531a(0x1d8)&&_0x58c201[_0x33531a(0x1f5)]('watch'))return await Promise[_0x33531a(0x1f1)]([spawnViteBuildWatch(_0x7083a9),spawnVitePreview(_0x7083a9)]),{'ok':!![]};return await spawnScript(_0x21af6d,_0x663500,_0x11fa38,_0x7083a9),{'ok':!![]};}};
1
+ const a154_0x41cc60=a154_0x52e9;(function(_0x161013,_0x180f55){const _0xe49ffc=a154_0x52e9,_0xb5db7f=_0x161013();while(!![]){try{const _0x93d98d=parseInt(_0xe49ffc(0xdf))/0x1*(parseInt(_0xe49ffc(0xf2))/0x2)+-parseInt(_0xe49ffc(0xdd))/0x3*(parseInt(_0xe49ffc(0xe4))/0x4)+parseInt(_0xe49ffc(0xe8))/0x5*(-parseInt(_0xe49ffc(0xbd))/0x6)+parseInt(_0xe49ffc(0xcc))/0x7+parseInt(_0xe49ffc(0xed))/0x8*(-parseInt(_0xe49ffc(0xe9))/0x9)+parseInt(_0xe49ffc(0xb7))/0xa+parseInt(_0xe49ffc(0xd6))/0xb;if(_0x93d98d===_0x180f55)break;else _0xb5db7f['push'](_0xb5db7f['shift']());}catch(_0x17c3d7){_0xb5db7f['push'](_0xb5db7f['shift']());}}}(a154_0x3fb5,0x42cd7));import{readFileSync,existsSync}from'node:fs';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([a154_0x41cc60(0xe3),'dev']);function readPackageScripts(_0x46ee2d){const _0x50609e=a154_0x41cc60,_0xbb4810=resolve(_0x46ee2d,_0x50609e(0xf7));if(!existsSync(_0xbb4810))return null;try{const _0xc0000e=JSON[_0x50609e(0xf5)](readFileSync(_0xbb4810,_0x50609e(0xd4)));return _0xc0000e[_0x50609e(0xc1)]??{};}catch{return null;}}function detectPackageManager(_0x5d6566){const _0x5efc4e=a154_0x41cc60;if(existsSync(resolve(_0x5d6566,_0x5efc4e(0xdc)))||existsSync(resolve(_0x5d6566,_0x5efc4e(0xcd))))return _0x5efc4e(0xc4);if(existsSync(resolve(_0x5d6566,_0x5efc4e(0xeb))))return _0x5efc4e(0xf1);if(existsSync(resolve(_0x5d6566,_0x5efc4e(0xca))))return _0x5efc4e(0xbc);return _0x5efc4e(0xd8);}async function versionCheck(_0x401f88){const _0x203c4e=a154_0x41cc60,_0x384c71=await checkCliVersion();(_0x384c71[_0x203c4e(0xf4)]||_0x384c71['belowMinimum'])&&(printCliUpgradeWarning(_0x384c71),assertCliVersionSupported(_0x384c71));const _0x4cdcb5=await checkSdkVersion(_0x401f88);if(_0x4cdcb5[_0x203c4e(0xf4)])printSdkUpgradeWarning(_0x4cdcb5);}function a154_0x52e9(_0x5d1a98,_0x3ffdcb){_0x5d1a98=_0x5d1a98-0xb7;const _0x3fb592=a154_0x3fb5();let _0x52e915=_0x3fb592[_0x5d1a98];return _0x52e915;}function spawnScript(_0x5cc001,_0x493b87,_0x3aaa8e,_0x245389){return new Promise((_0x27ff66,_0xf86568)=>{const _0x395ece=a154_0x52e9,_0x409943=[_0x395ece(0xc8),_0x493b87,..._0x3aaa8e],_0x5b5fd9=spawn(_0x5cc001,_0x409943,{'cwd':_0x245389,'stdio':_0x395ece(0xc0),'shell':!![],'env':{...process.env,'PATH':''+join(_0x245389,_0x395ece(0xc7),_0x395ece(0xd5))+delimiter+process.env.PATH}});_0x5b5fd9['on'](_0x395ece(0xe6),_0x8e9787=>{const _0x5e330a=_0x395ece;if(_0x8e9787===0x0||_0x8e9787===null)_0x27ff66();else _0xf86568(new Error(_0x5cc001+_0x5e330a(0xe7)+_0x493b87+'\x20exited\x20with\x20code\x20'+_0x8e9787));}),_0x5b5fd9['on'](_0x395ece(0xf6),_0xf86568);});}function spawnViteBuildWatch(_0x470042){return new Promise((_0x101ef3,_0x2c757f)=>{const _0x825ad1=a154_0x52e9,_0x56e256=spawn(_0x825ad1(0xd2),[_0x825ad1(0xd1),_0x825ad1(0xbb)],{'cwd':_0x470042,'stdio':_0x825ad1(0xc0),'shell':!![],'env':{...process.env,'PATH':''+join(_0x470042,_0x825ad1(0xc7),_0x825ad1(0xd5))+delimiter+process.env.PATH}});_0x56e256['on'](_0x825ad1(0xe6),_0x33da68=>{const _0x4515b9=_0x825ad1;if(_0x33da68===0x0||_0x33da68===null)_0x101ef3();else _0x2c757f(new Error(_0x4515b9(0xbe)+_0x33da68));}),_0x56e256['on'](_0x825ad1(0xf6),_0x2c757f);});}function spawnVitePreview(_0x2b4f46){return new Promise((_0xee0d40,_0x268e0a)=>{const _0x3f7d14=a154_0x52e9,_0x3bfe76=spawn(_0x3f7d14(0xd2),['preview'],{'cwd':_0x2b4f46,'stdio':_0x3f7d14(0xc0),'shell':!![],'env':{...process.env,'PATH':''+join(_0x2b4f46,_0x3f7d14(0xc7),'.bin')+delimiter+process.env.PATH}});_0x3bfe76['on'](_0x3f7d14(0xe6),_0x142ca4=>{if(_0x142ca4===0x0||_0x142ca4===null)_0xee0d40();else _0x268e0a(new Error('vite\x20preview\x20exited\x20with\x20code\x20'+_0x142ca4));}),_0x3bfe76['on'](_0x3f7d14(0xf6),_0x268e0a);});}function a154_0x3fb5(){const _0x563ae1=['vite','Enable\x20watch\x20mode\x20for\x20preview','utf-8','.bin','149666dUDeJc','log','npm','watch','join','slice','bun.lockb','27kkBrPC','read','7017QLvYyT','\x22\x20not\x20found\x20in\x20package.json.','all','\x20\x20\x20\x20','start','133604wTwKOP','args','close','\x20run\x20','5925qbIsPv','20583LXvPrA','has','pnpm-lock.yaml','No\x20scripts\x20defined\x20in\x20package.json.','384hoEvUx','\x20run\x20preview','length','validation','pnpm','66ZdUbzb','Script\x20\x22','needsUpgrade','parse','error','package.json','keys','1622000rtnBbL','Script\x20name\x20defined\x20in\x20package.json','No\x20package.json\x20found\x20in\x20current\x20directory.','bool','--watch','yarn','150stZgRM','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','\x20run\x20start','inherit','scripts','Available:\x20','(none)','bun','push','\x20run\x20preview\x20--watch','node_modules','run','boolean','yarn.lock','Run\x20a\x20package.json\x20script','2143862UFzyYc','bun.lock','\x0a\x20\x20Usage:\x20','script','\x20run\x20<script>\x0a','build'];a154_0x3fb5=function(){return _0x563ae1;};return a154_0x3fb5();}const runFlags=[{'name':a154_0x41cc60(0xd9),'type':a154_0x41cc60(0xc9),'description':a154_0x41cc60(0xd3),'default':![]}];export const runDefinition={'service':a154_0x41cc60(0xc8),'command':a154_0x41cc60(0xc8),'description':a154_0x41cc60(0xcb),'risk':a154_0x41cc60(0xde),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a154_0x41cc60(0xcf),'description':a154_0x41cc60(0xb8),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x4dcb4f=a154_0x41cc60,_0x88b7c0=[];return _0x88b7c0['push']('\x20\x20EXAMPLES'),_0x88b7c0['push']('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x4dcb4f(0xbf)),_0x88b7c0[_0x4dcb4f(0xc5)](_0x4dcb4f(0xe2)+CLI_BIN_NAME+'\x20run\x20build'),_0x88b7c0[_0x4dcb4f(0xc5)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x4dcb4f(0xee)),_0x88b7c0['push'](_0x4dcb4f(0xe2)+CLI_BIN_NAME+_0x4dcb4f(0xc6)),_0x88b7c0[_0x4dcb4f(0xda)]('\x0a');},async 'execute'(_0x15ef5f){const _0x5e3a15=a154_0x41cc60,_0x18c252=process['cwd'](),_0x3fc743=_0x15ef5f[_0x5e3a15(0xe5)][0x0],_0x3ea004=_0x15ef5f[_0x5e3a15(0xe5)][_0x5e3a15(0xdb)](0x1),_0xc12dcf=readPackageScripts(_0x18c252);if(!_0xc12dcf)throw CliErrors[_0x5e3a15(0xf0)](_0x5e3a15(0xb9));if(!_0x3fc743){const _0x44fb56=Object[_0x5e3a15(0xf8)](_0xc12dcf);if(_0x44fb56[_0x5e3a15(0xef)]===0x0)console[_0x5e3a15(0xd7)](_0x5e3a15(0xec));else{console[_0x5e3a15(0xd7)]('\x0a\x20\x20Available\x20scripts:\x0a');for(const _0x2d3ff7 of _0x44fb56){console[_0x5e3a15(0xd7)](_0x5e3a15(0xe2)+_0x2d3ff7);}console['log'](_0x5e3a15(0xce)+CLI_BIN_NAME+_0x5e3a15(0xd0));}return{'ok':!![]};}if(!_0xc12dcf[_0x3fc743])throw CliErrors['validation'](_0x5e3a15(0xf3)+_0x3fc743+_0x5e3a15(0xe0),_0x5e3a15(0xc2)+(Object[_0x5e3a15(0xf8)](_0xc12dcf)['join'](',\x20')||_0x5e3a15(0xc3)));const _0x1ed2a3=detectPackageManager(_0x18c252);VERSION_CHECK_SCRIPTS[_0x5e3a15(0xea)](_0x3fc743)&&await versionCheck(_0x18c252);if(_0x3fc743==='preview'&&_0x15ef5f[_0x5e3a15(0xba)](_0x5e3a15(0xd9)))return await Promise[_0x5e3a15(0xe1)]([spawnViteBuildWatch(_0x18c252),spawnVitePreview(_0x18c252)]),{'ok':!![]};return await spawnScript(_0x1ed2a3,_0x3fc743,_0x3ea004,_0x18c252),{'ok':!![]};}};
@@ -1 +1 @@
1
- const a155_0x23819d=a155_0x5d9e;function a155_0x5d9e(_0x56b927,_0x36d4eb){_0x56b927=_0x56b927-0x78;const _0x3756e6=a155_0x3756();let _0x5d9ed2=_0x3756e6[_0x56b927];return _0x5d9ed2;}(function(_0x2cfa9d,_0x44bfb3){const _0x3b3247=a155_0x5d9e,_0x418e4a=_0x2cfa9d();while(!![]){try{const _0x1a4764=parseInt(_0x3b3247(0x86))/0x1*(parseInt(_0x3b3247(0x7e))/0x2)+parseInt(_0x3b3247(0x7c))/0x3+parseInt(_0x3b3247(0x84))/0x4+-parseInt(_0x3b3247(0x85))/0x5*(parseInt(_0x3b3247(0x80))/0x6)+parseInt(_0x3b3247(0x7f))/0x7+parseInt(_0x3b3247(0x79))/0x8*(-parseInt(_0x3b3247(0x7b))/0x9)+parseInt(_0x3b3247(0x81))/0xa;if(_0x1a4764===_0x44bfb3)break;else _0x418e4a['push'](_0x418e4a['shift']());}catch(_0x902a04){_0x418e4a['push'](_0x418e4a['shift']());}}}(a155_0x3756,0xb0602));function a155_0x3756(){const _0xda033c=['347258rsDlRF','4732994HHMVjp','4505538TOAdqm','4498330seACSK','json','schema','216308lIQLqv','5lhYUGz','4QIDqSQ','export','1079672VGtvOu','Export\x20machine-readable\x20command\x20schema\x20(JSON)','72tazzvD','2035383GuOCEf','read'];a155_0x3756=function(){return _0xda033c;};return a155_0x3756();}import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x5ad4f0){const _0xf619bc=await buildSchemaPayload();return{'ok':!![],'data':_0xf619bc};}export const schemaDefinition={'service':a155_0x23819d(0x83),'command':a155_0x23819d(0x78),'description':a155_0x23819d(0x7a),'risk':a155_0x23819d(0x7d),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a155_0x23819d(0x82),'flags':[],'execute':execute};
1
+ const a155_0x42f173=a155_0x5cd2;(function(_0x5e6aab,_0x41d5ab){const _0x35622f=a155_0x5cd2,_0x6c6cb8=_0x5e6aab();while(!![]){try{const _0x5dccbc=-parseInt(_0x35622f(0x17d))/0x1+-parseInt(_0x35622f(0x180))/0x2+parseInt(_0x35622f(0x184))/0x3*(-parseInt(_0x35622f(0x182))/0x4)+parseInt(_0x35622f(0x17a))/0x5*(parseInt(_0x35622f(0x17f))/0x6)+parseInt(_0x35622f(0x187))/0x7*(parseInt(_0x35622f(0x17e))/0x8)+-parseInt(_0x35622f(0x186))/0x9*(parseInt(_0x35622f(0x17c))/0xa)+parseInt(_0x35622f(0x185))/0xb;if(_0x5dccbc===_0x41d5ab)break;else _0x6c6cb8['push'](_0x6c6cb8['shift']());}catch(_0x539e45){_0x6c6cb8['push'](_0x6c6cb8['shift']());}}}(a155_0xf38b,0xd0f88));function a155_0xf38b(){const _0x3f56dd=['6191870FPflPp','431410sIUXwJ','200LYELoU','8124918noSNIX','1905278mpDKAD','schema','3424592QaOwNf','export','3DkMifa','10013850caKoZX','9pMNJnK','406231egPUOC','read','Export\x20machine-readable\x20command\x20schema\x20(JSON)','5HimZTW','json'];a155_0xf38b=function(){return _0x3f56dd;};return a155_0xf38b();}import{buildSchemaPayload}from'../framework/schema-export.js';function a155_0x5cd2(_0x425170,_0xbfce2e){_0x425170=_0x425170-0x178;const _0xf38b8d=a155_0xf38b();let _0x5cd21b=_0xf38b8d[_0x425170];return _0x5cd21b;}async function execute(_0x1ca923){const _0x575cf7=await buildSchemaPayload();return{'ok':!![],'data':_0x575cf7};}export const schemaDefinition={'service':a155_0x42f173(0x181),'command':a155_0x42f173(0x183),'description':a155_0x42f173(0x179),'risk':a155_0x42f173(0x178),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a155_0x42f173(0x17b),'flags':[],'execute':execute};
@@ -1 +1 @@
1
- const a156_0x3c243a=a156_0x44f6;(function(_0x3d803e,_0x1dfefa){const _0x15c1ba=a156_0x44f6,_0x4c656e=_0x3d803e();while(!![]){try{const _0x4a7b4c=parseInt(_0x15c1ba(0x19f))/0x1*(parseInt(_0x15c1ba(0x1bf))/0x2)+parseInt(_0x15c1ba(0x1c3))/0x3+-parseInt(_0x15c1ba(0x1b3))/0x4*(-parseInt(_0x15c1ba(0x1b6))/0x5)+parseInt(_0x15c1ba(0x1a5))/0x6+parseInt(_0x15c1ba(0x1c4))/0x7*(parseInt(_0x15c1ba(0x1c9))/0x8)+-parseInt(_0x15c1ba(0x18a))/0x9+parseInt(_0x15c1ba(0x19c))/0xa*(-parseInt(_0x15c1ba(0x1cb))/0xb);if(_0x4a7b4c===_0x1dfefa)break;else _0x4c656e['push'](_0x4c656e['shift']());}catch(_0x4db87e){_0x4c656e['push'](_0x4c656e['shift']());}}}(a156_0x3555,0x43c6f));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';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';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x3e5128){const _0x395d1e=a156_0x44f6;if(_0x3e5128===_0x395d1e(0x1ad))return[_0x395d1e(0x19d),_0x395d1e(0x189),_0x395d1e(0x1bb),''][_0x395d1e(0x1a4)]('\x0a');return[_0x395d1e(0x1b0),''][_0x395d1e(0x1a4)]('\x0a');}export const sqlCreate={'service':a156_0x3c243a(0x197),'command':'create','description':a156_0x3c243a(0x1be),'risk':a156_0x3c243a(0x198),'flags':[{'name':a156_0x3c243a(0x1bc),'type':a156_0x3c243a(0x1a0),'description':a156_0x3c243a(0x195)},{'name':a156_0x3c243a(0x190),'type':a156_0x3c243a(0x1b4),'description':a156_0x3c243a(0x19e)},{'name':a156_0x3c243a(0x184),'type':a156_0x3c243a(0x1a0),'enum':[a156_0x3c243a(0x197),a156_0x3c243a(0x1ad)],'description':a156_0x3c243a(0x1c0)}],async 'validate'(_0x1484ff){const _0xa1a7d8=a156_0x3c243a;if(!_0x1484ff[_0xa1a7d8(0x1b8)])return;if(!_0x1484ff[_0xa1a7d8(0x1c2)](_0xa1a7d8(0x1bc))[_0xa1a7d8(0x1c6)]())throw CliErrors['flagMissing'](_0xa1a7d8(0x1bc),_0xa1a7d8(0x191));const _0x503303=resolveProvidedDbId(_0x1484ff);if(typeof _0x503303!=='number'||!Number[_0xa1a7d8(0x1b5)](_0x503303)||_0x503303<=0x0)throw CliErrors[_0xa1a7d8(0x1b2)](_0xa1a7d8(0x190),_0xa1a7d8(0x183));if(!_0x1484ff[_0xa1a7d8(0x1c2)]('mode')['trim']())throw CliErrors[_0xa1a7d8(0x1b2)](_0xa1a7d8(0x184),_0xa1a7d8(0x192));},async 'dryRun'(_0x4ca986){const _0x53b5c7=a156_0x3c243a,_0x248bcf=loadSqlProjectConfig(_0x4ca986['appCode']),{sqlName:_0x50cc15,dbId:_0x346245,dbName:_0x1baaa3,mode:_0x5aa848}=await resolveSqlNewInputs(_0x4ca986),_0x4a253a=buildSqlRelativePath(_0x53b5c7(0x1b9),_0x50cc15,_0x1baaa3,_0x5aa848,_0x346245),_0x2f3977=_0x248bcf[_0x53b5c7(0x1b7)]+'/'+_0x4a253a;return{'method':_0x53b5c7(0x18e),'url':_0x53b5c7(0x1ca),'body':{'appCode':_0x4ca986['appCode'],'sqlName':_0x50cc15,'dbId':_0x346245,'mode':_0x5aa848,'localPath':_0x2f3977},'description':_0x53b5c7(0x19b)+_0x248bcf[_0x53b5c7(0x1b7)]};},async 'execute'(_0x5265dd){const _0x447481=a156_0x3c243a,_0x5d8a8b=loadSqlProjectConfig(_0x5265dd[_0x447481(0x1a2)]),{sqlName:_0xc68207,dbId:_0x2b69fa,dbName:_0x199301,mode:_0xb1c6b5}=await resolveSqlNewInputs(_0x5265dd),_0x161f13=generateSqlTemplate(_0xb1c6b5),_0x1cc766=await createSqlQuery({'appCode':_0x5265dd[_0x447481(0x1a2)],'sqlName':_0xc68207,'dbId':_0x2b69fa,'sqlContent':_0x161f13}),_0x4e4e3f=ensureRemoteSqlContent(_0x1cc766),_0x2dcfd6=_0x199301||await getDbName(_0x5265dd[_0x447481(0x1a2)],_0x2b69fa)[_0x447481(0x1b1)](()=>undefined),_0x45a7e4=buildSqlRelativePath(_0x1cc766[_0x447481(0x18b)],_0x1cc766[_0x447481(0x1a3)],_0x2dcfd6,_0xb1c6b5,_0x2b69fa),_0x4b3e27=_0x5d8a8b[_0x447481(0x1b7)]+'/'+_0x45a7e4,_0x440da0=buildLocalSqlFileContent({'sqlCode':_0x1cc766[_0x447481(0x18b)],'sqlName':_0x1cc766['sqlName'],'dbId':_0x1cc766[_0x447481(0x188)]},_0x4e4e3f,{'dbName':_0x2dcfd6,'mode':_0xb1c6b5,'syncedAt':new Date()[_0x447481(0x187)](),'description':_0x1cc766[_0x447481(0x1c1)]});if(await fileExists(_0x4b3e27))throw CliErrors[_0x447481(0x18d)](_0x447481(0x185)+_0x4b3e27);await ensureParentDirectory(_0x4b3e27),await writeFile(_0x4b3e27,_0x440da0,_0x447481(0x186));const _0x342c79=await readSqlLockFile(_0x5d8a8b['lockFilePath']),{lockData:_0x577ce8,appLock:_0x54e105}=ensureSqlLockScope(_0x342c79??createEmptySqlLock(),_0x5d8a8b[_0x447481(0x1a2)],_0x5d8a8b[_0x447481(0x18f)],_0x447481(0x1bd));return _0x54e105[_0x447481(0x1a1)][_0x1cc766[_0x447481(0x18b)]]={...buildSqlLockEntry(_0x1cc766,_0x4e4e3f,computeSqlContentHash(_0x440da0),{'dbName':_0x2dcfd6}),'path':_0x45a7e4,'mode':_0xb1c6b5},_0x54e105[_0x447481(0x1ae)]=new Date()[_0x447481(0x187)](),await writeSqlLockFile(_0x5d8a8b['lockFilePath'],_0x577ce8),{'ok':!![],'data':{'id':_0x1cc766['id'],'sqlCode':_0x1cc766[_0x447481(0x18b)],'sqlName':_0x1cc766['sqlName'],'dbId':_0x1cc766[_0x447481(0x188)],'path':_0x4b3e27,'mode':_0xb1c6b5},'message':_0x447481(0x1a6)+_0x1cc766['sqlCode']};}};function a156_0x44f6(_0x51cd2b,_0x10eacd){_0x51cd2b=_0x51cd2b-0x183;const _0x355535=a156_0x3555();let _0x44f6c1=_0x355535[_0x51cd2b];return _0x44f6c1;}async function resolveSqlNewInputs(_0x14b6c5){const _0x5af075=await resolveSqlNameInput(_0x14b6c5),{dbId:_0x2b871c,dbName:_0x480a37}=await resolveDbSelection(_0x14b6c5),_0x514ea2=await resolveSqlModeInput(_0x14b6c5);return{'sqlName':_0x5af075,'dbId':_0x2b871c,'dbName':_0x480a37,'mode':_0x514ea2};}async function resolveSqlNameInput(_0x33d5b3){const _0x249516=a156_0x3c243a,_0x510ca8=_0x33d5b3[_0x249516(0x1c2)](_0x249516(0x1bc))[_0x249516(0x1c6)]();if(_0x510ca8)return _0x510ca8;if(_0x33d5b3['nonInteractive'])throw CliErrors[_0x249516(0x1b2)](_0x249516(0x1bc),_0x249516(0x191));return(await input({'message':_0x249516(0x1aa),'validate':_0x1e9428=>_0x1e9428[_0x249516(0x1c6)]()?!![]:_0x249516(0x199)}))[_0x249516(0x1c6)]();}async function resolveDbSelection(_0x18a7ba){const _0x39b4cb=a156_0x3c243a,_0x59125d=resolveProvidedDbId(_0x18a7ba);if(typeof _0x59125d===_0x39b4cb(0x1b4)&&Number['isFinite'](_0x59125d)&&_0x59125d>0x0)return{'dbId':_0x59125d,'dbName':await getDbName(_0x18a7ba[_0x39b4cb(0x1a2)],_0x59125d)[_0x39b4cb(0x1b1)](()=>undefined)};if(_0x18a7ba[_0x39b4cb(0x1b8)])throw CliErrors['flagMissing'](_0x39b4cb(0x190),_0x39b4cb(0x183));const _0x170099=await listDatabases(_0x18a7ba[_0x39b4cb(0x1a2)])[_0x39b4cb(0x1b1)](()=>[]);if(_0x170099['length']===0x1)return{'dbId':_0x170099[0x0][_0x39b4cb(0x188)],'dbName':_0x170099[0x0]['dbName']};if(_0x170099['length']>0x1){const _0x5f557b=await select({'message':_0x39b4cb(0x1ba),'choices':[..._0x170099[_0x39b4cb(0x194)](_0x27cdc2=>({'name':_0x27cdc2[_0x39b4cb(0x196)]+'\x20('+_0x27cdc2['dbId']+')','value':serializeDbSelection(_0x27cdc2)})),{'name':_0x39b4cb(0x1ac),'value':_0x39b4cb(0x1c8)}]});if(_0x5f557b!==_0x39b4cb(0x1c8))return deserializeDbSelection(_0x5f557b);}const _0x2e0476=await input({'message':_0x39b4cb(0x1ab),'validate':_0x2f30b9=>{const _0x579df5=_0x39b4cb,_0xc89304=_0x2f30b9[_0x579df5(0x1c6)]();if(!_0xc89304)return _0x579df5(0x1a9);const _0x484949=Number(_0xc89304);if(!Number[_0x579df5(0x19a)](_0x484949)||_0x484949<=0x0)return _0x579df5(0x1af);return!![];}});return{'dbId':Number(_0x2e0476[_0x39b4cb(0x1c6)]())};}async function resolveSqlModeInput(_0x3a80af){const _0x443304=a156_0x3c243a,_0x196034=_0x3a80af[_0x443304(0x1c2)](_0x443304(0x184))['trim']();if(_0x196034===_0x443304(0x197)||_0x196034===_0x443304(0x1ad))return _0x196034;if(_0x3a80af[_0x443304(0x1b8)])throw CliErrors['flagMissing']('mode',_0x443304(0x192));return await select({'message':_0x443304(0x1c7),'choices':[{'name':_0x443304(0x18c),'value':_0x443304(0x197),'description':_0x443304(0x1a8)},{'name':'MyBatis\x20XML(mybatisXml)','value':_0x443304(0x1ad),'description':_0x443304(0x1a7)}]});}function serializeDbSelection(_0x21917f){const _0x5c5098=a156_0x3c243a;return JSON[_0x5c5098(0x193)]({'dbId':_0x21917f[_0x5c5098(0x188)],'dbName':_0x21917f[_0x5c5098(0x196)]});}function deserializeDbSelection(_0x41290d){const _0x5ae969=a156_0x3c243a;try{const _0x15f243=JSON['parse'](_0x41290d);if(typeof _0x15f243['dbId']===_0x5ae969(0x1b4)&&Number[_0x5ae969(0x1b5)](_0x15f243['dbId']))return{'dbId':_0x15f243[_0x5ae969(0x188)],'dbName':_0x15f243[_0x5ae969(0x196)]};}catch{}throw CliErrors[_0x5ae969(0x18d)]('Invalid\x20database\x20selection\x20payload:\x20'+_0x41290d);}function a156_0x3555(){const _0x442e64=['join','1636914oYoOUg','Created\x20SQL\x20query\x20','适合带动态标签的\x20MyBatis\x20XML\x20SQL','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','dbId\x20不能为空','请输入\x20SQL\x20名称:','请输入目标数据库\x20dbId:','✎\x20手动输入\x20dbId','mybatisXml','lastSync','dbId\x20必须为正整数','SELECT\x201\x20AS\x20id;','catch','flagMissing','4WNTfCa','number','isFinite','1506570HLAjQU','sqlRootDir','nonInteractive','<server-generated-sqlCode>','请选择目标数据库:','</select>','name','new','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','4CkAWgQ','Local\x20SQL\x20file\x20mode','description','str','243078QmdTbH','3012947sCBRzp','flag','trim','请选择本地\x20SQL\x20模式:','__manual__','8NcQYZR','/smartapi/custom/saveUserCustomSql','11PLtysG','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','mode','File\x20already\x20exists:\x20','utf8','toISOString','dbId','\x20\x20SELECT\x201\x20AS\x20id','3236913mPIEGB','sqlCode','普通\x20SQL(sql)','validation','POST','sqlRoot','db-id','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','stringify','map','SQL\x20query\x20display\x20name','dbName','sql','high-risk-write','SQL\x20名称不能为空','isInteger','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','10016620zPjdAx','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','Target\x20database\x20ID','276677UhGdwy','string','sqls','appCode','sqlName'];a156_0x3555=function(){return _0x442e64;};return a156_0x3555();}function resolveProvidedDbId(_0x5aa14d){const _0x562023=a156_0x3c243a,_0x510c2b=_0x5aa14d[_0x562023(0x1c5)](_0x562023(0x190));if(typeof _0x510c2b===_0x562023(0x1b4)&&Number[_0x562023(0x1b5)](_0x510c2b))return _0x510c2b;return undefined;}
1
+ const a156_0x126934=a156_0xb299;(function(_0x265eb0,_0xe11e9b){const _0xf47180=a156_0xb299,_0x25eccb=_0x265eb0();while(!![]){try{const _0x378c51=-parseInt(_0xf47180(0x210))/0x1+-parseInt(_0xf47180(0x1fc))/0x2*(-parseInt(_0xf47180(0x1e1))/0x3)+parseInt(_0xf47180(0x1e9))/0x4*(parseInt(_0xf47180(0x20f))/0x5)+parseInt(_0xf47180(0x1e7))/0x6+-parseInt(_0xf47180(0x203))/0x7+-parseInt(_0xf47180(0x1eb))/0x8*(-parseInt(_0xf47180(0x21e))/0x9)+-parseInt(_0xf47180(0x1f7))/0xa*(-parseInt(_0xf47180(0x1ec))/0xb);if(_0x378c51===_0xe11e9b)break;else _0x25eccb['push'](_0x25eccb['shift']());}catch(_0x2be3ec){_0x25eccb['push'](_0x25eccb['shift']());}}}(a156_0xa852,0xea145));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';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';function a156_0xb299(_0x2ccf74,_0x41b4de){_0x2ccf74=_0x2ccf74-0x1df;const _0xa8522a=a156_0xa852();let _0xb2991=_0xa8522a[_0x2ccf74];return _0xb2991;}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 a156_0xa852(){const _0x151b6a=['utf8','✎\x20手动输入\x20dbId','3860088jqFvpg','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','24036eCNTJL','validation','155704LDNbYr','516527pHOjVE','number','sqlRootDir','SQL\x20query\x20display\x20name','name','dbId\x20不能为空','join','<server-generated-sqlCode>','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','dbName','sqlCode','150wLehNG','Target\x20database\x20ID','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','Local\x20SQL\x20file\x20mode','POST','2BXuUVr','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','普通\x20SQL(sql)','db-id','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','stringify','sqlRoot','5743038YbhxON','sqls','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','__manual__','SQL\x20名称不能为空','MyBatis\x20XML(mybatisXml)','Created\x20SQL\x20query\x20','lastSync','flag','appCode','sql','dbId\x20必须为正整数','1025kQrtFs','1606565WQqryv','lockFilePath','请选择目标数据库:','trim','请输入\x20SQL\x20名称:','high-risk-write','dbId','create','SELECT\x201\x20AS\x20id;','new','isInteger','mode','mybatisXml','parse','9NcwOpk','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','isFinite','description','catch','nonInteractive','string','length','sqlName','2360331JPpMqt','str','map','flagMissing'];a156_0xa852=function(){return _0x151b6a;};return a156_0xa852();}function generateSqlTemplate(_0x487975){const _0x380888=a156_0xb299;if(_0x487975===_0x380888(0x21c))return[_0x380888(0x205),'\x20\x20SELECT\x201\x20AS\x20id','</select>',''][_0x380888(0x1f2)]('\x0a');return[_0x380888(0x218),''][_0x380888(0x1f2)]('\x0a');}export const sqlCreate={'service':a156_0x126934(0x20d),'command':a156_0x126934(0x217),'description':a156_0x126934(0x1e8),'risk':a156_0x126934(0x215),'flags':[{'name':a156_0x126934(0x1f0),'type':a156_0x126934(0x224),'description':a156_0x126934(0x1ef)},{'name':a156_0x126934(0x1ff),'type':a156_0x126934(0x1ed),'description':a156_0x126934(0x1f8)},{'name':a156_0x126934(0x21b),'type':a156_0x126934(0x224),'enum':['sql',a156_0x126934(0x21c)],'description':a156_0x126934(0x1fa)}],async 'validate'(_0xe86012){const _0x49e3bd=a156_0x126934;if(!_0xe86012[_0x49e3bd(0x223)])return;if(!_0xe86012['str'](_0x49e3bd(0x1f0))['trim']())throw CliErrors[_0x49e3bd(0x1e4)](_0x49e3bd(0x1f0),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x1aa3e1=resolveProvidedDbId(_0xe86012);if(typeof _0x1aa3e1!==_0x49e3bd(0x1ed)||!Number[_0x49e3bd(0x220)](_0x1aa3e1)||_0x1aa3e1<=0x0)throw CliErrors[_0x49e3bd(0x1e4)](_0x49e3bd(0x1ff),_0x49e3bd(0x1fd));if(!_0xe86012['str'](_0x49e3bd(0x21b))[_0x49e3bd(0x213)]())throw CliErrors[_0x49e3bd(0x1e4)](_0x49e3bd(0x21b),_0x49e3bd(0x1f9));},async 'dryRun'(_0x2223ed){const _0x4de32a=a156_0x126934,_0x450d33=loadSqlProjectConfig(_0x2223ed[_0x4de32a(0x20c)]),{sqlName:_0x3f7029,dbId:_0x329031,dbName:_0x4c6074,mode:_0x4598bf}=await resolveSqlNewInputs(_0x2223ed),_0x4461e1=buildSqlRelativePath(_0x4de32a(0x1f3),_0x3f7029,_0x4c6074,_0x4598bf,_0x329031),_0x48370a=_0x450d33[_0x4de32a(0x1ee)]+'/'+_0x4461e1;return{'method':_0x4de32a(0x1fb),'url':'/smartapi/custom/saveUserCustomSql','body':{'appCode':_0x2223ed[_0x4de32a(0x20c)],'sqlName':_0x3f7029,'dbId':_0x329031,'mode':_0x4598bf,'localPath':_0x48370a},'description':_0x4de32a(0x21f)+_0x450d33['sqlRootDir']};},async 'execute'(_0x2a363d){const _0x399b65=a156_0x126934,_0x4e8fc1=loadSqlProjectConfig(_0x2a363d[_0x399b65(0x20c)]),{sqlName:_0x26f7b8,dbId:_0xbad78,dbName:_0x3a86d1,mode:_0x597344}=await resolveSqlNewInputs(_0x2a363d),_0x11b50e=generateSqlTemplate(_0x597344),_0xbe28d3=await createSqlQuery({'appCode':_0x2a363d['appCode'],'sqlName':_0x26f7b8,'dbId':_0xbad78,'sqlContent':_0x11b50e}),_0x3d3a94=ensureRemoteSqlContent(_0xbe28d3),_0x2a5005=_0x3a86d1||await getDbName(_0x2a363d[_0x399b65(0x20c)],_0xbad78)[_0x399b65(0x222)](()=>undefined),_0x28133d=buildSqlRelativePath(_0xbe28d3[_0x399b65(0x1f6)],_0xbe28d3['sqlName'],_0x2a5005,_0x597344,_0xbad78),_0x709b8d=_0x4e8fc1['sqlRootDir']+'/'+_0x28133d,_0x2d36d9=buildLocalSqlFileContent({'sqlCode':_0xbe28d3[_0x399b65(0x1f6)],'sqlName':_0xbe28d3[_0x399b65(0x1e0)],'dbId':_0xbe28d3['dbId']},_0x3d3a94,{'dbName':_0x2a5005,'mode':_0x597344,'syncedAt':new Date()['toISOString'](),'description':_0xbe28d3[_0x399b65(0x221)]});if(await fileExists(_0x709b8d))throw CliErrors['validation']('File\x20already\x20exists:\x20'+_0x709b8d);await ensureParentDirectory(_0x709b8d),await writeFile(_0x709b8d,_0x2d36d9,_0x399b65(0x1e5));const _0x4c96ef=await readSqlLockFile(_0x4e8fc1['lockFilePath']),{lockData:_0x3f2790,appLock:_0x533925}=ensureSqlLockScope(_0x4c96ef??createEmptySqlLock(),_0x4e8fc1[_0x399b65(0x20c)],_0x4e8fc1[_0x399b65(0x202)],_0x399b65(0x219));return _0x533925[_0x399b65(0x204)][_0xbe28d3[_0x399b65(0x1f6)]]={...buildSqlLockEntry(_0xbe28d3,_0x3d3a94,computeSqlContentHash(_0x2d36d9),{'dbName':_0x2a5005}),'path':_0x28133d,'mode':_0x597344},_0x533925[_0x399b65(0x20a)]=new Date()['toISOString'](),await writeSqlLockFile(_0x4e8fc1[_0x399b65(0x211)],_0x3f2790),{'ok':!![],'data':{'id':_0xbe28d3['id'],'sqlCode':_0xbe28d3[_0x399b65(0x1f6)],'sqlName':_0xbe28d3[_0x399b65(0x1e0)],'dbId':_0xbe28d3[_0x399b65(0x216)],'path':_0x709b8d,'mode':_0x597344},'message':_0x399b65(0x209)+_0xbe28d3[_0x399b65(0x1f6)]};}};async function resolveSqlNewInputs(_0x52efdc){const _0xb4f495=await resolveSqlNameInput(_0x52efdc),{dbId:_0x382c9c,dbName:_0x5805b7}=await resolveDbSelection(_0x52efdc),_0x1b926e=await resolveSqlModeInput(_0x52efdc);return{'sqlName':_0xb4f495,'dbId':_0x382c9c,'dbName':_0x5805b7,'mode':_0x1b926e};}async function resolveSqlNameInput(_0x38cafc){const _0x128abf=a156_0x126934,_0x3f264c=_0x38cafc['str'](_0x128abf(0x1f0))[_0x128abf(0x213)]();if(_0x3f264c)return _0x3f264c;if(_0x38cafc[_0x128abf(0x223)])throw CliErrors['flagMissing']('name',_0x128abf(0x1f4));return(await input({'message':_0x128abf(0x214),'validate':_0x4aeea6=>_0x4aeea6[_0x128abf(0x213)]()?!![]:_0x128abf(0x207)}))[_0x128abf(0x213)]();}async function resolveDbSelection(_0x25bb1e){const _0x1a35c5=a156_0x126934,_0xc6f185=resolveProvidedDbId(_0x25bb1e);if(typeof _0xc6f185==='number'&&Number[_0x1a35c5(0x220)](_0xc6f185)&&_0xc6f185>0x0)return{'dbId':_0xc6f185,'dbName':await getDbName(_0x25bb1e['appCode'],_0xc6f185)['catch'](()=>undefined)};if(_0x25bb1e[_0x1a35c5(0x223)])throw CliErrors['flagMissing'](_0x1a35c5(0x1ff),_0x1a35c5(0x1fd));const _0x27b6bc=await listDatabases(_0x25bb1e['appCode'])[_0x1a35c5(0x222)](()=>[]);if(_0x27b6bc[_0x1a35c5(0x1df)]===0x1)return{'dbId':_0x27b6bc[0x0][_0x1a35c5(0x216)],'dbName':_0x27b6bc[0x0][_0x1a35c5(0x1f5)]};if(_0x27b6bc[_0x1a35c5(0x1df)]>0x1){const _0xf33337=await select({'message':_0x1a35c5(0x212),'choices':[..._0x27b6bc[_0x1a35c5(0x1e3)](_0x1476f1=>({'name':_0x1476f1['dbName']+'\x20('+_0x1476f1[_0x1a35c5(0x216)]+')','value':serializeDbSelection(_0x1476f1)})),{'name':_0x1a35c5(0x1e6),'value':_0x1a35c5(0x206)}]});if(_0xf33337!==_0x1a35c5(0x206))return deserializeDbSelection(_0xf33337);}const _0xbfb197=await input({'message':'请输入目标数据库\x20dbId:','validate':_0x54ddbe=>{const _0x4b037c=_0x1a35c5,_0x36e95c=_0x54ddbe[_0x4b037c(0x213)]();if(!_0x36e95c)return _0x4b037c(0x1f1);const _0x32b88f=Number(_0x36e95c);if(!Number[_0x4b037c(0x21a)](_0x32b88f)||_0x32b88f<=0x0)return _0x4b037c(0x20e);return!![];}});return{'dbId':Number(_0xbfb197['trim']())};}async function resolveSqlModeInput(_0x23194d){const _0x3fdbe3=a156_0x126934,_0x2f146a=_0x23194d[_0x3fdbe3(0x1e2)]('mode')[_0x3fdbe3(0x213)]();if(_0x2f146a===_0x3fdbe3(0x20d)||_0x2f146a===_0x3fdbe3(0x21c))return _0x2f146a;if(_0x23194d[_0x3fdbe3(0x223)])throw CliErrors[_0x3fdbe3(0x1e4)](_0x3fdbe3(0x21b),_0x3fdbe3(0x1f9));return await select({'message':'请选择本地\x20SQL\x20模式:','choices':[{'name':_0x3fdbe3(0x1fe),'value':_0x3fdbe3(0x20d),'description':_0x3fdbe3(0x200)},{'name':_0x3fdbe3(0x208),'value':_0x3fdbe3(0x21c),'description':'适合带动态标签的\x20MyBatis\x20XML\x20SQL'}]});}function serializeDbSelection(_0x271ce5){const _0x3fe400=a156_0x126934;return JSON[_0x3fe400(0x201)]({'dbId':_0x271ce5[_0x3fe400(0x216)],'dbName':_0x271ce5[_0x3fe400(0x1f5)]});}function deserializeDbSelection(_0x52b772){const _0x3e11d8=a156_0x126934;try{const _0x20043f=JSON[_0x3e11d8(0x21d)](_0x52b772);if(typeof _0x20043f[_0x3e11d8(0x216)]===_0x3e11d8(0x1ed)&&Number[_0x3e11d8(0x220)](_0x20043f['dbId']))return{'dbId':_0x20043f[_0x3e11d8(0x216)],'dbName':_0x20043f[_0x3e11d8(0x1f5)]};}catch{}throw CliErrors[_0x3e11d8(0x1ea)]('Invalid\x20database\x20selection\x20payload:\x20'+_0x52b772);}function resolveProvidedDbId(_0xecc950){const _0x1aad52=a156_0x126934,_0x345def=_0xecc950[_0x1aad52(0x20b)](_0x1aad52(0x1ff));if(typeof _0x345def===_0x1aad52(0x1ed)&&Number[_0x1aad52(0x220)](_0x345def))return _0x345def;return undefined;}
@@ -1 +1 @@
1
- const a157_0x4fb267=a157_0x252e;(function(_0x4f7418,_0x2987e7){const _0x149afa=a157_0x252e,_0x1a81f2=_0x4f7418();while(!![]){try{const _0x4ffcd4=-parseInt(_0x149afa(0x74))/0x1*(parseInt(_0x149afa(0x8f))/0x2)+-parseInt(_0x149afa(0x7b))/0x3+parseInt(_0x149afa(0x80))/0x4*(-parseInt(_0x149afa(0x7d))/0x5)+-parseInt(_0x149afa(0x8b))/0x6+-parseInt(_0x149afa(0x75))/0x7+-parseInt(_0x149afa(0x79))/0x8*(-parseInt(_0x149afa(0x90))/0x9)+-parseInt(_0x149afa(0x7f))/0xa*(-parseInt(_0x149afa(0x95))/0xb);if(_0x4ffcd4===_0x2987e7)break;else _0x1a81f2['push'](_0x1a81f2['shift']());}catch(_0x387ddc){_0x1a81f2['push'](_0x1a81f2['shift']());}}}(a157_0xfdc2,0x2ab5a));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';function a157_0x252e(_0x12d80b,_0x2a16e5){_0x12d80b=_0x12d80b-0x72;const _0xfdc2ab=a157_0xfdc2();let _0x252e8b=_0xfdc2ab[_0x12d80b];return _0x252e8b;}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':a157_0x4fb267(0x97),'description':a157_0x4fb267(0x85),'risk':a157_0x4fb267(0x84),'flags':[SQLCODE_FLAG],async 'validate'(_0x5109b5){const _0x24b8de=a157_0x4fb267,_0x497cdb=loadSqlProjectConfig(_0x5109b5[_0x24b8de(0x86)]),_0x1f5f17=await readSqlLockFile(_0x497cdb[_0x24b8de(0x78)]);if(!_0x1f5f17)throw CliErrors[_0x24b8de(0x83)](_0x24b8de(0x72));},async 'dryRun'(_0x4d5709){const _0x107283=a157_0x4fb267,_0x9cd7ab=loadSqlProjectConfig(_0x4d5709[_0x107283(0x86)]),_0x3f1862=await readSqlLockFile(_0x9cd7ab[_0x107283(0x78)]);if(!_0x3f1862)throw CliErrors[_0x107283(0x83)](_0x107283(0x72));const {appLock:_0x10467e}=ensureSqlLockScope(_0x3f1862,_0x4d5709[_0x107283(0x86)],_0x9cd7ab[_0x107283(0x76)],_0x107283(0x97)),_0x632e81=_0x4d5709[_0x107283(0x7a)](_0x107283(0x89)),_0x105e4b=_0x10467e[_0x107283(0x8d)][_0x632e81];if(!_0x105e4b)throw CliErrors[_0x107283(0x83)](_0x107283(0x92)+_0x632e81+'\x22.');return{'method':_0x107283(0x8c),'url':_0x107283(0x8a),'body':{'sqlCode':_0x632e81,'id':_0x105e4b[_0x107283(0x94)],'localPath':resolveLocalSqlFilePath(_0x9cd7ab,_0x632e81,_0x105e4b)},'description':'Would\x20delete\x20SQL\x20'+_0x632e81+_0x107283(0x87)+_0x9cd7ab[_0x107283(0x88)]};},async 'execute'(_0x216a17){const _0x5c4b40=a157_0x4fb267,_0x1ae90a=loadSqlProjectConfig(_0x216a17[_0x5c4b40(0x86)]),_0x412706=await readSqlLockFile(_0x1ae90a[_0x5c4b40(0x78)]);if(!_0x412706)throw CliErrors[_0x5c4b40(0x83)]('SQL\x20lock\x20file\x20not\x20found.');const {lockData:_0x1997d6,appLock:_0x3c944e}=ensureSqlLockScope(_0x412706,_0x216a17[_0x5c4b40(0x86)],_0x1ae90a['sqlRoot'],'delete'),_0x24a0b9=_0x216a17[_0x5c4b40(0x7a)]('sqlcode'),_0x45f0d8=_0x3c944e[_0x5c4b40(0x8d)][_0x24a0b9];if(!_0x45f0d8)throw CliErrors[_0x5c4b40(0x83)](_0x5c4b40(0x92)+_0x24a0b9+'\x22.');await deleteSqlQuery({'id':_0x45f0d8[_0x5c4b40(0x94)],'sqlCode':_0x24a0b9}),_0x3c944e[_0x5c4b40(0x8d)]=Object[_0x5c4b40(0x8e)](Object[_0x5c4b40(0x82)](_0x3c944e[_0x5c4b40(0x8d)])[_0x5c4b40(0x77)](([_0x13d99c])=>_0x13d99c!==_0x24a0b9)),_0x3c944e[_0x5c4b40(0x7c)]=new Date()[_0x5c4b40(0x93)](),await writeSqlLockFile(_0x1ae90a[_0x5c4b40(0x78)],_0x1997d6);const _0x4c3990=resolveLocalSqlFilePath(_0x1ae90a,_0x24a0b9,_0x45f0d8);let _0x204eca;await fileExists(_0x4c3990)&&(_0x204eca=await moveToTrash(_0x1ae90a[_0x5c4b40(0x73)],_0x1ae90a[_0x5c4b40(0x88)],_0x4c3990),await cleanupEmptyDirectories(dirname(_0x4c3990),_0x1ae90a[_0x5c4b40(0x91)]));const _0x488eed={'deleted':_0x24a0b9,'remoteId':_0x45f0d8['remoteId']};if(_0x204eca)_0x488eed[_0x5c4b40(0x7e)]=_0x204eca;return{'ok':!![],'data':_0x488eed,'message':_0x5c4b40(0x81)+_0x24a0b9+(_0x204eca?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};async function moveToTrash(_0x23b7df,_0x2328bc,_0x302df9){const _0x1ca968=a157_0x4fb267,_0x4539dd=new Date()[_0x1ca968(0x93)]()[_0x1ca968(0x96)](/[:.]/g,'-'),_0x129933=relative(_0x23b7df,_0x302df9),_0x2dd885=join(_0x2328bc,_0x4539dd,_0x129933);return await mkdir(dirname(_0x2dd885),{'recursive':!![]}),await rename(_0x302df9,_0x2dd885),_0x2dd885;}async function cleanupEmptyDirectories(_0x35f29f,_0x22699e){let _0x53a17e=resolve(_0x35f29f);const _0x213b12=resolve(_0x22699e);while(_0x53a17e['startsWith'](''+_0x213b12+sep)||_0x53a17e===_0x213b12){if(_0x53a17e===_0x213b12)return;try{const _0x1ae3ff=await readdir(_0x53a17e);if(_0x1ae3ff['length']>0x0)return;await rmdir(_0x53a17e);}catch{return;}_0x53a17e=dirname(_0x53a17e);}}function a157_0xfdc2(){const _0x16cc6f=['49643RoaYQX','replace','delete','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','projectRoot','5hIpyqK','48461qpRbsK','sqlRoot','filter','lockFilePath','3736ogliPp','str','841782ceUXpS','lastSync','1000KUiSzK','trashedTo','1790APvAVH','5552GuwDrr','Deleted\x20','entries','validation','high-risk-write','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','appCode','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','trashDir','sqlcode','/smartapi/custom/deleteUserCustomSql','403392ZiAvoc','POST','sqls','fromEntries','49718YOONSB','2385suVEvb','sqlRootDir','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','toISOString','remoteId'];a157_0xfdc2=function(){return _0x16cc6f;};return a157_0xfdc2();}
1
+ const a157_0x10c2ba=a157_0x20d3;function a157_0x20d3(_0x814ee2,_0x35f7f8){_0x814ee2=_0x814ee2-0x118;const _0x544bfd=a157_0x544b();let _0x20d308=_0x544bfd[_0x814ee2];return _0x20d308;}(function(_0x381a56,_0x30d5e2){const _0x107fb7=a157_0x20d3,_0x94d8ef=_0x381a56();while(!![]){try{const _0x342990=-parseInt(_0x107fb7(0x123))/0x1*(-parseInt(_0x107fb7(0x138))/0x2)+-parseInt(_0x107fb7(0x11a))/0x3+parseInt(_0x107fb7(0x13a))/0x4+-parseInt(_0x107fb7(0x137))/0x5+-parseInt(_0x107fb7(0x11f))/0x6*(parseInt(_0x107fb7(0x136))/0x7)+parseInt(_0x107fb7(0x139))/0x8+-parseInt(_0x107fb7(0x133))/0x9*(parseInt(_0x107fb7(0x135))/0xa);if(_0x342990===_0x30d5e2)break;else _0x94d8ef['push'](_0x94d8ef['shift']());}catch(_0x4e0b6f){_0x94d8ef['push'](_0x94d8ef['shift']());}}}(a157_0x544b,0xbbf80));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';function a157_0x544b(){const _0x4f09c9=['sqlcode','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','sqls','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','projectRoot','/smartapi/custom/deleteUserCustomSql','delete','trashedTo','validation','toISOString','appCode','2367NTknSI','Would\x20delete\x20SQL\x20','12370SVZzLa','105XExKwF','2496205FnOsoI','302506hCruAZ','8151592ReOakA','3993572Smrbjq','remoteId','POST','SQL\x20lock\x20file\x20not\x20found.','996240vrEkpQ','sql','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','lockFilePath','entries','338814cvfOJW','fromEntries','lastSync','sqlRoot','5ogNgMy','replace','startsWith','str'];a157_0x544b=function(){return _0x4f09c9;};return a157_0x544b();}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':a157_0x10c2ba(0x11b),'command':'delete','description':a157_0x10c2ba(0x128),'risk':'high-risk-write','flags':[SQLCODE_FLAG],async 'validate'(_0x187146){const _0x5c9c29=a157_0x10c2ba,_0x3fbfc0=loadSqlProjectConfig(_0x187146[_0x5c9c29(0x132)]),_0x39dfce=await readSqlLockFile(_0x3fbfc0[_0x5c9c29(0x11d)]);if(!_0x39dfce)throw CliErrors[_0x5c9c29(0x130)](_0x5c9c29(0x129));},async 'dryRun'(_0x481645){const _0x314e19=a157_0x10c2ba,_0x5da991=loadSqlProjectConfig(_0x481645['appCode']),_0x575c00=await readSqlLockFile(_0x5da991[_0x314e19(0x11d)]);if(!_0x575c00)throw CliErrors[_0x314e19(0x130)](_0x314e19(0x129));const {appLock:_0x304d3c}=ensureSqlLockScope(_0x575c00,_0x481645[_0x314e19(0x132)],_0x5da991[_0x314e19(0x122)],_0x314e19(0x12e)),_0x42afab=_0x481645[_0x314e19(0x126)](_0x314e19(0x127)),_0x24be2a=_0x304d3c['sqls'][_0x42afab];if(!_0x24be2a)throw CliErrors[_0x314e19(0x130)](_0x314e19(0x12b)+_0x42afab+'\x22.');return{'method':_0x314e19(0x118),'url':_0x314e19(0x12d),'body':{'sqlCode':_0x42afab,'id':_0x24be2a[_0x314e19(0x13b)],'localPath':resolveLocalSqlFilePath(_0x5da991,_0x42afab,_0x24be2a)},'description':_0x314e19(0x134)+_0x42afab+_0x314e19(0x11c)+_0x5da991['trashDir']};},async 'execute'(_0x5d423f){const _0x37d633=a157_0x10c2ba,_0x8b3d5d=loadSqlProjectConfig(_0x5d423f[_0x37d633(0x132)]),_0x49412e=await readSqlLockFile(_0x8b3d5d['lockFilePath']);if(!_0x49412e)throw CliErrors[_0x37d633(0x130)](_0x37d633(0x119));const {lockData:_0x2f043e,appLock:_0x95d098}=ensureSqlLockScope(_0x49412e,_0x5d423f['appCode'],_0x8b3d5d[_0x37d633(0x122)],_0x37d633(0x12e)),_0x84bf93=_0x5d423f[_0x37d633(0x126)](_0x37d633(0x127)),_0x3662d9=_0x95d098[_0x37d633(0x12a)][_0x84bf93];if(!_0x3662d9)throw CliErrors[_0x37d633(0x130)](_0x37d633(0x12b)+_0x84bf93+'\x22.');await deleteSqlQuery({'id':_0x3662d9[_0x37d633(0x13b)],'sqlCode':_0x84bf93}),_0x95d098[_0x37d633(0x12a)]=Object[_0x37d633(0x120)](Object[_0x37d633(0x11e)](_0x95d098[_0x37d633(0x12a)])['filter'](([_0x449909])=>_0x449909!==_0x84bf93)),_0x95d098[_0x37d633(0x121)]=new Date()[_0x37d633(0x131)](),await writeSqlLockFile(_0x8b3d5d[_0x37d633(0x11d)],_0x2f043e);const _0x38dc36=resolveLocalSqlFilePath(_0x8b3d5d,_0x84bf93,_0x3662d9);let _0x207b24;await fileExists(_0x38dc36)&&(_0x207b24=await moveToTrash(_0x8b3d5d[_0x37d633(0x12c)],_0x8b3d5d['trashDir'],_0x38dc36),await cleanupEmptyDirectories(dirname(_0x38dc36),_0x8b3d5d['sqlRootDir']));const _0x41e0fc={'deleted':_0x84bf93,'remoteId':_0x3662d9[_0x37d633(0x13b)]};if(_0x207b24)_0x41e0fc[_0x37d633(0x12f)]=_0x207b24;return{'ok':!![],'data':_0x41e0fc,'message':'Deleted\x20'+_0x84bf93+(_0x207b24?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};async function moveToTrash(_0x37f44b,_0x38ea88,_0x25cf7c){const _0x370eca=a157_0x10c2ba,_0x574c12=new Date()[_0x370eca(0x131)]()[_0x370eca(0x124)](/[:.]/g,'-'),_0x412ef7=relative(_0x37f44b,_0x25cf7c),_0x52e9f5=join(_0x38ea88,_0x574c12,_0x412ef7);return await mkdir(dirname(_0x52e9f5),{'recursive':!![]}),await rename(_0x25cf7c,_0x52e9f5),_0x52e9f5;}async function cleanupEmptyDirectories(_0x2fb3fe,_0x5ecbf2){const _0x3c5703=a157_0x10c2ba;let _0x4bb58c=resolve(_0x2fb3fe);const _0x503377=resolve(_0x5ecbf2);while(_0x4bb58c[_0x3c5703(0x125)](''+_0x503377+sep)||_0x4bb58c===_0x503377){if(_0x4bb58c===_0x503377)return;try{const _0x53f580=await readdir(_0x4bb58c);if(_0x53f580['length']>0x0)return;await rmdir(_0x4bb58c);}catch{return;}_0x4bb58c=dirname(_0x4bb58c);}}