@lovrabet/rabetbase-cli 2.5.3-beta.2 → 2.5.3-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (387) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/api-group.d.ts +22 -0
  3. package/lib/api/api-group.js +1 -0
  4. package/lib/api/fetch-model-list.js +1 -1
  5. package/lib/api/generate-api-file.d.ts +18 -2
  6. package/lib/api/generate-api-file.js +1 -1
  7. package/lib/api/generate-sdk-config-file.js +1 -1
  8. package/lib/api/legacy-api-file.d.ts +11 -0
  9. package/lib/api/legacy-api-file.js +1 -0
  10. package/lib/api/model-registry-file.d.ts +36 -0
  11. package/lib/api/model-registry-file.js +1 -0
  12. package/lib/api/model-registry-scaffold.d.ts +7 -0
  13. package/lib/api/model-registry-scaffold.js +1 -0
  14. package/lib/api/model-source.d.ts +6 -0
  15. package/lib/api/model-source.js +1 -0
  16. package/lib/auth/auth-server-ui.js +1 -1
  17. package/lib/auth/auth-server.js +1 -1
  18. package/lib/auth/constant.js +1 -1
  19. package/lib/auth/get-cookie.js +1 -1
  20. package/lib/auth/get-session-user.js +1 -1
  21. package/lib/auth/is-session-valid.js +1 -1
  22. package/lib/auth/login-success-html.js +1 -1
  23. package/lib/auth/logout.js +1 -1
  24. package/lib/cli-flags.js +1 -1
  25. package/lib/cli.js +1 -1
  26. package/lib/commands/api/generate.js +1 -1
  27. package/lib/commands/api/index.js +1 -1
  28. package/lib/commands/api/list.js +1 -1
  29. package/lib/commands/api/pull.js +1 -1
  30. package/lib/commands/api/shared.js +1 -1
  31. package/lib/commands/app/index.js +1 -1
  32. package/lib/commands/app/list.js +1 -1
  33. package/lib/commands/app/members-list.js +1 -1
  34. package/lib/commands/app/remote-directory.js +1 -1
  35. package/lib/commands/app/shared.js +1 -1
  36. package/lib/commands/app-config/delete.js +1 -1
  37. package/lib/commands/app-config/get.js +1 -1
  38. package/lib/commands/app-config/index.js +1 -1
  39. package/lib/commands/app-config/list.js +1 -1
  40. package/lib/commands/app-config/set.js +1 -1
  41. package/lib/commands/app-config/shared.js +1 -1
  42. package/lib/commands/auth/index.js +1 -1
  43. package/lib/commands/bff/create.js +1 -1
  44. package/lib/commands/bff/delete.js +1 -1
  45. package/lib/commands/bff/detail.js +1 -1
  46. package/lib/commands/bff/index.js +1 -1
  47. package/lib/commands/bff/list.js +1 -1
  48. package/lib/commands/bff/logs.js +1 -1
  49. package/lib/commands/bff/pull.js +1 -1
  50. package/lib/commands/bff/push.js +1 -1
  51. package/lib/commands/bff/status.js +1 -1
  52. package/lib/commands/cli-skill/index.js +1 -1
  53. package/lib/commands/cli-update.js +1 -1
  54. package/lib/commands/codegen/index.js +1 -1
  55. package/lib/commands/codegen/sdk.js +1 -1
  56. package/lib/commands/codegen/sql.js +1 -1
  57. package/lib/commands/common/app-registry.js +1 -1
  58. package/lib/commands/common/app-selector.js +1 -1
  59. package/lib/commands/common/async-task.js +1 -1
  60. package/lib/commands/common/dry-run.js +1 -1
  61. package/lib/commands/common/flags.d.ts +7 -0
  62. package/lib/commands/common/flags.js +1 -1
  63. package/lib/commands/common/local-file.js +1 -1
  64. package/lib/commands/common/validate.js +1 -1
  65. package/lib/commands/config/delete.js +1 -1
  66. package/lib/commands/config/get.js +1 -1
  67. package/lib/commands/config/index.js +1 -1
  68. package/lib/commands/config/init.js +1 -1
  69. package/lib/commands/config/list.js +1 -1
  70. package/lib/commands/config/set.js +1 -1
  71. package/lib/commands/config/shared.js +1 -1
  72. package/lib/commands/dataset/batch-design.js +1 -1
  73. package/lib/commands/dataset/business-group-update.js +1 -1
  74. package/lib/commands/dataset/business-groups.js +1 -1
  75. package/lib/commands/dataset/capability.js +1 -1
  76. package/lib/commands/dataset/cross-relation-create.d.ts +2 -0
  77. package/lib/commands/dataset/cross-relation-create.js +1 -0
  78. package/lib/commands/dataset/cross-relation-delete.d.ts +2 -0
  79. package/lib/commands/dataset/cross-relation-delete.js +1 -0
  80. package/lib/commands/dataset/cross-relation-list.d.ts +2 -0
  81. package/lib/commands/dataset/cross-relation-list.js +1 -0
  82. package/lib/commands/dataset/cross-relation-shared.d.ts +190 -0
  83. package/lib/commands/dataset/cross-relation-shared.js +1 -0
  84. package/lib/commands/dataset/cross-relation-update.d.ts +2 -0
  85. package/lib/commands/dataset/cross-relation-update.js +1 -0
  86. package/lib/commands/dataset/delete.js +1 -1
  87. package/lib/commands/dataset/detail.js +1 -1
  88. package/lib/commands/dataset/extend-update.js +1 -1
  89. package/lib/commands/dataset/field-restore.js +1 -1
  90. package/lib/commands/dataset/field-update.js +1 -1
  91. package/lib/commands/dataset/generate.js +1 -1
  92. package/lib/commands/dataset/index.js +1 -1
  93. package/lib/commands/dataset/list.js +1 -1
  94. package/lib/commands/dataset/operations.js +1 -1
  95. package/lib/commands/dataset/relation-audit.js +1 -1
  96. package/lib/commands/dataset/relation-create.js +1 -1
  97. package/lib/commands/dataset/relation-delete.js +1 -1
  98. package/lib/commands/dataset/relation-shared.js +1 -1
  99. package/lib/commands/dataset/relation-update.js +1 -1
  100. package/lib/commands/dataset/relations.js +1 -1
  101. package/lib/commands/dataset/rename.js +1 -1
  102. package/lib/commands/dataset/restore.js +1 -1
  103. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  104. package/lib/commands/db/analysis-batching.js +1 -1
  105. package/lib/commands/db/analyze-batch-plan.js +1 -1
  106. package/lib/commands/db/analyze-cancel.js +1 -1
  107. package/lib/commands/db/analyze-start.js +1 -1
  108. package/lib/commands/db/analyze-status.js +1 -1
  109. package/lib/commands/db/create.js +1 -1
  110. package/lib/commands/db/delete.js +1 -1
  111. package/lib/commands/db/detail.js +1 -1
  112. package/lib/commands/db/diff-refresh-start.js +1 -1
  113. package/lib/commands/db/diff-refresh-status.js +1 -1
  114. package/lib/commands/db/diff.js +1 -1
  115. package/lib/commands/db/index.js +1 -1
  116. package/lib/commands/db/list.js +1 -1
  117. package/lib/commands/db/shared.js +1 -1
  118. package/lib/commands/db/table-diff-shared.js +1 -1
  119. package/lib/commands/db/tables.js +1 -1
  120. package/lib/commands/db/test.js +1 -1
  121. package/lib/commands/db/update.js +1 -1
  122. package/lib/commands/deployment/index.js +1 -1
  123. package/lib/commands/deployment/sync-all.js +1 -1
  124. package/lib/commands/deployment/sync-jobs.js +1 -1
  125. package/lib/commands/deployment/sync-status.js +1 -1
  126. package/lib/commands/doctor.js +1 -1
  127. package/lib/commands/file/index.js +1 -1
  128. package/lib/commands/flow/create.js +1 -1
  129. package/lib/commands/flow/detail.js +1 -1
  130. package/lib/commands/flow/index.js +1 -1
  131. package/lib/commands/flow/list.js +1 -1
  132. package/lib/commands/flow/publish.js +1 -1
  133. package/lib/commands/flow/runtime-resources-shared.js +1 -1
  134. package/lib/commands/flow/runtime-role-list.js +1 -1
  135. package/lib/commands/flow/runtime-role-user-list.js +1 -1
  136. package/lib/commands/flow/runtime-user-search.js +1 -1
  137. package/lib/commands/flow/shared.js +1 -1
  138. package/lib/commands/flow/update.js +1 -1
  139. package/lib/commands/flow/validate.js +1 -1
  140. package/lib/commands/instant-api-policy/current.js +1 -1
  141. package/lib/commands/instant-api-policy/index.js +1 -1
  142. package/lib/commands/instant-api-policy/init.js +1 -1
  143. package/lib/commands/instant-api-policy/publish.js +1 -1
  144. package/lib/commands/instant-api-policy/pull.js +1 -1
  145. package/lib/commands/instant-api-policy/revision.js +1 -1
  146. package/lib/commands/instant-api-policy/revisions.js +1 -1
  147. package/lib/commands/instant-api-policy/rollback.js +1 -1
  148. package/lib/commands/instant-api-policy/shared.js +1 -1
  149. package/lib/commands/instant-api-policy/validate.js +1 -1
  150. package/lib/commands/issue/index.js +1 -1
  151. package/lib/commands/issue/nudge.js +1 -1
  152. package/lib/commands/issue/report.js +1 -1
  153. package/lib/commands/issue/shared.js +1 -1
  154. package/lib/commands/kb/create.js +1 -1
  155. package/lib/commands/kb/delete.js +1 -1
  156. package/lib/commands/kb/detail.js +1 -1
  157. package/lib/commands/kb/index.js +1 -1
  158. package/lib/commands/kb/list.js +1 -1
  159. package/lib/commands/kb/search.js +1 -1
  160. package/lib/commands/kb/shared.js +1 -1
  161. package/lib/commands/kb/update.js +1 -1
  162. package/lib/commands/logs/index.js +1 -1
  163. package/lib/commands/menu/asset-update.js +1 -1
  164. package/lib/commands/menu/delete.js +1 -1
  165. package/lib/commands/menu/external-link-create.js +1 -1
  166. package/lib/commands/menu/external-link-update.js +1 -1
  167. package/lib/commands/menu/group-create.js +1 -1
  168. package/lib/commands/menu/group-update.js +1 -1
  169. package/lib/commands/menu/index.js +1 -1
  170. package/lib/commands/menu/list.js +1 -1
  171. package/lib/commands/menu/move.js +1 -1
  172. package/lib/commands/menu/regroup-start.js +1 -1
  173. package/lib/commands/menu/rename.js +1 -1
  174. package/lib/commands/menu/shared/compare-table.js +1 -1
  175. package/lib/commands/menu/shared/delete-plan.js +1 -1
  176. package/lib/commands/menu/shared/facts.js +1 -1
  177. package/lib/commands/menu/shared/index.js +1 -1
  178. package/lib/commands/menu/shared/inquirer.js +1 -1
  179. package/lib/commands/menu/shared/local-pages.js +1 -1
  180. package/lib/commands/menu/shared/logic.js +1 -1
  181. package/lib/commands/menu/shared/mutations.js +1 -1
  182. package/lib/commands/menu/shared/service.js +1 -1
  183. package/lib/commands/menu/shared/sync-core.js +1 -1
  184. package/lib/commands/menu/shared/update-core.js +1 -1
  185. package/lib/commands/menu/shared/valid-url.js +1 -1
  186. package/lib/commands/menu/sync.js +1 -1
  187. package/lib/commands/menu/visibility-update.js +1 -1
  188. package/lib/commands/notification/config-create.js +1 -1
  189. package/lib/commands/notification/config-delete.js +1 -1
  190. package/lib/commands/notification/config-list.js +1 -1
  191. package/lib/commands/notification/config-update.js +1 -1
  192. package/lib/commands/notification/index.js +1 -1
  193. package/lib/commands/notification/shared.js +1 -1
  194. package/lib/commands/ocr/index.js +1 -1
  195. package/lib/commands/page/create.js +1 -1
  196. package/lib/commands/page/custom/detail.js +1 -1
  197. package/lib/commands/page/custom/list.js +1 -1
  198. package/lib/commands/page/custom/publish.js +1 -1
  199. package/lib/commands/page/custom/shared.js +1 -1
  200. package/lib/commands/page/custom/syntax.js +1 -1
  201. package/lib/commands/page/custom/update.js +1 -1
  202. package/lib/commands/page/data-list-status.js +1 -1
  203. package/lib/commands/page/generate-start.js +1 -1
  204. package/lib/commands/page/generate-status.js +1 -1
  205. package/lib/commands/page/index.js +1 -1
  206. package/lib/commands/page/pull.js +1 -1
  207. package/lib/commands/page/push.js +1 -1
  208. package/lib/commands/page/relation-audit.js +1 -1
  209. package/lib/commands/page/restore.js +1 -1
  210. package/lib/commands/page/shared.js +1 -1
  211. package/lib/commands/page/sync.js +1 -1
  212. package/lib/commands/project/api-architecture-upgrade.d.ts +28 -0
  213. package/lib/commands/project/api-architecture-upgrade.js +1 -0
  214. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  215. package/lib/commands/project/create/format-elapsed.js +1 -1
  216. package/lib/commands/project/create/main.js +1 -1
  217. package/lib/commands/project/create/materialize-project-template.js +1 -1
  218. package/lib/commands/project/create/project-name.js +1 -1
  219. package/lib/commands/project/create/project-template-archive.js +1 -1
  220. package/lib/commands/project/create/project-template-path.js +1 -1
  221. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  222. package/lib/commands/project/create/use-format-code.js +1 -1
  223. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  224. package/lib/commands/project/domain-routing-sync.js +1 -1
  225. package/lib/commands/project/index.js +1 -1
  226. package/lib/commands/project/upgrade.d.ts +30 -1
  227. package/lib/commands/project/upgrade.js +1 -1
  228. package/lib/commands/registry.js +1 -1
  229. package/lib/commands/role/delete.js +1 -1
  230. package/lib/commands/role/detail.js +1 -1
  231. package/lib/commands/role/index.js +1 -1
  232. package/lib/commands/role/list.js +1 -1
  233. package/lib/commands/role/shared.js +1 -1
  234. package/lib/commands/role/update.js +1 -1
  235. package/lib/commands/role/user-add.js +1 -1
  236. package/lib/commands/role/user-remove.js +1 -1
  237. package/lib/commands/role/user-resolve.js +1 -1
  238. package/lib/commands/rule/get.js +1 -1
  239. package/lib/commands/rule/index.js +1 -1
  240. package/lib/commands/rule/list.js +1 -1
  241. package/lib/commands/rule/set.js +1 -1
  242. package/lib/commands/rule/shared.js +1 -1
  243. package/lib/commands/run/index.js +1 -1
  244. package/lib/commands/schema.js +1 -1
  245. package/lib/commands/sql/create.js +1 -1
  246. package/lib/commands/sql/delete.js +1 -1
  247. package/lib/commands/sql/detail.js +1 -1
  248. package/lib/commands/sql/exec.js +1 -1
  249. package/lib/commands/sql/index.js +1 -1
  250. package/lib/commands/sql/list.js +1 -1
  251. package/lib/commands/sql/pull.js +1 -1
  252. package/lib/commands/sql/push.js +1 -1
  253. package/lib/commands/sql/shared.js +1 -1
  254. package/lib/commands/sql/status.js +1 -1
  255. package/lib/commands/sql/validate.js +1 -1
  256. package/lib/commands/task/index.js +1 -1
  257. package/lib/commands/task/status.js +1 -1
  258. package/lib/commands/tenant/index.js +1 -1
  259. package/lib/commands/tenant/members-list.js +1 -1
  260. package/lib/commands/tenant/shared.js +1 -1
  261. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  262. package/lib/commands/user-account/index.js +1 -1
  263. package/lib/commands/workspace/add.js +1 -1
  264. package/lib/commands/workspace/index.js +1 -1
  265. package/lib/commands/workspace/remove.js +1 -1
  266. package/lib/config/domain-config.js +1 -1
  267. package/lib/config/project-domain-routing.js +1 -1
  268. package/lib/config/region-config.js +1 -1
  269. package/lib/config/schema.js +1 -1
  270. package/lib/constant/cdn.js +1 -1
  271. package/lib/constant/cli.js +1 -1
  272. package/lib/constant/defaults.js +1 -1
  273. package/lib/constant/domain.js +1 -1
  274. package/lib/constant/env.js +1 -1
  275. package/lib/constant/output.js +1 -1
  276. package/lib/constant/paths.js +1 -1
  277. package/lib/constant/region.js +1 -1
  278. package/lib/constant/risk.js +1 -1
  279. package/lib/constant/routing-profile.js +1 -1
  280. package/lib/context/app-resolver.d.ts +2 -0
  281. package/lib/context/app-resolver.js +1 -1
  282. package/lib/context/auth-resolver.js +1 -1
  283. package/lib/context/config-loader.js +1 -1
  284. package/lib/context.d.ts +2 -1
  285. package/lib/context.js +1 -1
  286. package/lib/core/alias-resolver.d.ts +13 -17
  287. package/lib/core/alias-resolver.js +1 -1
  288. package/lib/core/api-client.d.ts +6 -0
  289. package/lib/core/api-client.js +1 -1
  290. package/lib/core/bff/config.js +1 -1
  291. package/lib/core/bff/file-system.js +1 -1
  292. package/lib/core/bff/hash.js +1 -1
  293. package/lib/core/bff/hook-directory.js +1 -1
  294. package/lib/core/bff/lock.js +1 -1
  295. package/lib/core/bff/utils.js +1 -1
  296. package/lib/core/cross-db-relation.d.ts +41 -0
  297. package/lib/core/cross-db-relation.js +1 -0
  298. package/lib/core/db-resolver.js +1 -1
  299. package/lib/core/flow-config.js +1 -1
  300. package/lib/core/instant-api-policy/config.js +1 -1
  301. package/lib/core/kb-search-client.js +1 -1
  302. package/lib/core/page/file-system.js +1 -1
  303. package/lib/core/page/hash.js +1 -1
  304. package/lib/core/page/lock.js +1 -1
  305. package/lib/core/page/lr-smart-jsx.js +1 -1
  306. package/lib/core/sql-index-auditor.js +1 -1
  307. package/lib/core/sql-sync/config.js +1 -1
  308. package/lib/core/sql-sync/file-system.js +1 -1
  309. package/lib/core/sql-sync/hash.js +1 -1
  310. package/lib/core/sql-sync/lock.js +1 -1
  311. package/lib/core/sql-sync/utils.js +1 -1
  312. package/lib/core/sql-validator.js +1 -1
  313. package/lib/errors.js +1 -1
  314. package/lib/framework/build-all-flags.js +1 -1
  315. package/lib/framework/error-output.js +1 -1
  316. package/lib/framework/explicit-yes.js +1 -1
  317. package/lib/framework/flags.js +1 -1
  318. package/lib/framework/help.js +1 -1
  319. package/lib/framework/index.js +1 -1
  320. package/lib/framework/output.js +1 -1
  321. package/lib/framework/response.js +1 -1
  322. package/lib/framework/runner-alias.d.ts +1 -1
  323. package/lib/framework/runner-alias.js +1 -1
  324. package/lib/framework/runner.js +1 -1
  325. package/lib/framework/schema-export.js +1 -1
  326. package/lib/framework/supported-flags.js +1 -1
  327. package/lib/framework/types.js +1 -1
  328. package/lib/generated/build-info.d.ts +4 -4
  329. package/lib/generated/build-info.js +1 -1
  330. package/lib/generated/official-routing.js +1 -1
  331. package/lib/generated/routing-contract.js +1 -1
  332. package/lib/help.js +1 -1
  333. package/lib/postinstall.js +1 -1
  334. package/lib/runtime/confirmation.js +1 -1
  335. package/lib/runtime/event.js +1 -1
  336. package/lib/runtime/index.js +1 -1
  337. package/lib/runtime/queue.js +1 -1
  338. package/lib/runtime/resolve.js +1 -1
  339. package/lib/skills/builtin-skill.js +1 -1
  340. package/lib/skills/main.js +1 -1
  341. package/lib/skills/npx-skills-add.d.ts +0 -10
  342. package/lib/skills/npx-skills-add.js +1 -1
  343. package/lib/skills/skill-presence.js +1 -1
  344. package/lib/telemetry/cli-command-trace.js +1 -1
  345. package/lib/telemetry/cli-help-trace.js +1 -1
  346. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  347. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  348. package/lib/telemetry/send-cli-trace-log.js +1 -1
  349. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  350. package/lib/types/index.d.ts +11 -1
  351. package/lib/utils/ai_config.js +1 -1
  352. package/lib/utils/apply-jq-filter.js +1 -1
  353. package/lib/utils/cdn-config.js +1 -1
  354. package/lib/utils/check-sdk-version.js +1 -1
  355. package/lib/utils/cli-version-check.js +1 -1
  356. package/lib/utils/cli-version-policy.d.ts +12 -0
  357. package/lib/utils/cli-version-policy.js +1 -1
  358. package/lib/utils/config.js +1 -1
  359. package/lib/utils/entity-with-id.js +1 -1
  360. package/lib/utils/file-utils.js +1 -1
  361. package/lib/utils/guides-cdn.js +1 -1
  362. package/lib/utils/http-client.js +1 -1
  363. package/lib/utils/is-non-interactive.js +1 -1
  364. package/lib/utils/logger.js +1 -1
  365. package/lib/utils/params.js +1 -1
  366. package/lib/utils/platform.js +1 -1
  367. package/lib/utils/sleep.js +1 -1
  368. package/lib/utils/template-replacer.js +1 -1
  369. package/lib/utils/update-notice.js +1 -1
  370. package/lib/utils/version.js +1 -1
  371. package/lib/utils/with-active-cookie.js +1 -1
  372. package/lib/utils/write-cli-side-channel.js +1 -1
  373. package/package.json +4 -1
  374. package/skills/rabetbase/SKILL.md +10 -6
  375. package/skills/rabetbase/guides/sdk-client-generation.md +112 -61
  376. package/skills/rabetbase/guides/typescript-sdk.md +9 -0
  377. package/skills/rabetbase/references/rabetbase-api-pull.md +30 -19
  378. package/skills/rabetbase/references/rabetbase-app-list.md +1 -1
  379. package/skills/rabetbase/references/rabetbase-config.md +2 -1
  380. package/skills/rabetbase/references/rabetbase-dataset-cross-relations.md +60 -0
  381. package/skills/rabetbase/references/rabetbase-project-create.md +3 -3
  382. package/skills/rabetbase/references/rabetbase-project-upgrade.md +24 -13
  383. package/skills/rabetbase.manifest.json +4 -3
  384. package/templates/README.md +16 -4
  385. package/templates/generate-api/model-runtime.ts.tpl +101 -0
  386. package/templates/generate-api/profile-api.ts.tpl +21 -0
  387. package/templates/generate-api/profile-client.ts.tpl +14 -0
@@ -1 +1 @@
1
- (function(_0x2fea83,_0x1a8290){const _0x1df247=a199_0x559e,_0xd86428=_0x2fea83();while(!![]){try{const _0x65facd=-parseInt(_0x1df247(0x1f0))/0x1*(parseInt(_0x1df247(0x1e5))/0x2)+parseInt(_0x1df247(0x1e2))/0x3*(-parseInt(_0x1df247(0x1e3))/0x4)+parseInt(_0x1df247(0x1e4))/0x5*(parseInt(_0x1df247(0x1f1))/0x6)+-parseInt(_0x1df247(0x1f2))/0x7+parseInt(_0x1df247(0x1ee))/0x8*(-parseInt(_0x1df247(0x1ef))/0x9)+-parseInt(_0x1df247(0x1eb))/0xa+-parseInt(_0x1df247(0x1f5))/0xb*(-parseInt(_0x1df247(0x1e6))/0xc);if(_0x65facd===_0x1a8290)break;else _0xd86428['push'](_0xd86428['shift']());}catch(_0x19b1d2){_0xd86428['push'](_0xd86428['shift']());}}}(a199_0x236c,0x36238));import a199_0x5da533 from'node:path';function a199_0x559e(_0x426d75,_0x3acdfc){_0x426d75=_0x426d75-0x1e0;const _0x236cb9=a199_0x236c();let _0x559e14=_0x236cb9[_0x426d75];return _0x559e14;}import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a199_0x236c(){const _0x2eb733=['364420dPuVPh','https://registry.npmmirror.com','Dependency\x20install\x20completed','20344pDJqyr','36tYvyeM','2srqawE','48zgobYM','1250060lwusQl','message','Starting\x20dependency\x20install','2250149nDahQX','install','info','1172079jBLgUO','4PxSJuJ','182755DiBmmI','68446HjXtWn','36fzhakm','npm','--registry','now','success'];a199_0x236c=function(){return _0x2eb733;};return a199_0x236c();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x58c887){const _0x1dd2ad=a199_0x559e,_0x569ea1=Date[_0x1dd2ad(0x1e9)](),_0x9e74f1=a199_0x5da533['resolve'](process['cwd'](),_0x58c887);try{logger[_0x1dd2ad(0x1e1)](_0x1dd2ad(0x1e0),_0x1dd2ad(0x1f4),{'projectCode':_0x58c887,'registry':_0x1dd2ad(0x1ec)}),await execa(resolveNpmBin(_0x1dd2ad(0x1e7)),[_0x1dd2ad(0x1e0),_0x1dd2ad(0x1e8),'https://registry.npmmirror.com'],{'cwd':_0x9e74f1});const _0x11e92f=Date[_0x1dd2ad(0x1e9)]()-_0x569ea1;logger[_0x1dd2ad(0x1ea)]('install',_0x1dd2ad(0x1ed),_0x11e92f,{'projectCode':_0x58c887});}catch(_0x1ccd87){const _0x479b3c=Date[_0x1dd2ad(0x1e9)]()-_0x569ea1;logger['error'](_0x1dd2ad(0x1e0),'Dependency\x20install\x20failed',{'projectCode':_0x58c887,'error':_0x1ccd87 instanceof Error?_0x1ccd87[_0x1dd2ad(0x1f3)]:String(_0x1ccd87),'duration':_0x479b3c});throw _0x1ccd87;}return formatElapsed(_0x569ea1);}
1
+ (function(_0x8961a7,_0x300085){const _0x5a5857=a210_0x4002,_0x1cbbc4=_0x8961a7();while(!![]){try{const _0x135b30=parseInt(_0x5a5857(0x1b3))/0x1+parseInt(_0x5a5857(0x1b8))/0x2+-parseInt(_0x5a5857(0x1ad))/0x3+parseInt(_0x5a5857(0x1ac))/0x4*(parseInt(_0x5a5857(0x1b0))/0x5)+parseInt(_0x5a5857(0x1bb))/0x6*(parseInt(_0x5a5857(0x1af))/0x7)+-parseInt(_0x5a5857(0x1bd))/0x8+-parseInt(_0x5a5857(0x1b1))/0x9;if(_0x135b30===_0x300085)break;else _0x1cbbc4['push'](_0x1cbbc4['shift']());}catch(_0x589c1a){_0x1cbbc4['push'](_0x1cbbc4['shift']());}}}(a210_0x118c,0x8c5c8));import a210_0xbb3246 from'node:path';function a210_0x4002(_0x5ca898,_0xb36f35){_0x5ca898=_0x5ca898-0x1ac;const _0x118ced=a210_0x118c();let _0x4002b3=_0x118ced[_0x5ca898];return _0x4002b3;}function a210_0x118c(){const _0x201179=['2956041RrwoYb','Starting\x20dependency\x20install','131642YFZOqI','2674075ZwIYst','8501742NaVYKQ','npm','911198eIicAP','success','install','--registry','cwd','968982ObilYb','message','https://registry.npmmirror.com','30nzqjmU','now','435552ndrOks','8WhwXrF'];a210_0x118c=function(){return _0x201179;};return a210_0x118c();}import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x58f218){const _0x2650ba=a210_0x4002,_0x3b5ea8=Date['now'](),_0x2f1414=a210_0xbb3246['resolve'](process[_0x2650ba(0x1b7)](),_0x58f218);try{logger['info'](_0x2650ba(0x1b5),_0x2650ba(0x1ae),{'projectCode':_0x58f218,'registry':_0x2650ba(0x1ba)}),await execa(resolveNpmBin(_0x2650ba(0x1b2)),['install',_0x2650ba(0x1b6),_0x2650ba(0x1ba)],{'cwd':_0x2f1414});const _0x185849=Date[_0x2650ba(0x1bc)]()-_0x3b5ea8;logger[_0x2650ba(0x1b4)](_0x2650ba(0x1b5),'Dependency\x20install\x20completed',_0x185849,{'projectCode':_0x58f218});}catch(_0x5a7d49){const _0x39814c=Date[_0x2650ba(0x1bc)]()-_0x3b5ea8;logger['error'](_0x2650ba(0x1b5),'Dependency\x20install\x20failed',{'projectCode':_0x58f218,'error':_0x5a7d49 instanceof Error?_0x5a7d49[_0x2650ba(0x1b9)]:String(_0x5a7d49),'duration':_0x39814c});throw _0x5a7d49;}return formatElapsed(_0x3b5ea8);}
@@ -1 +1 @@
1
- const a200_0x4d08d5=a200_0x2f9d;(function(_0x230168,_0x2f277d){const _0x4b085e=a200_0x2f9d,_0x591832=_0x230168();while(!![]){try{const _0x54938f=parseInt(_0x4b085e(0x9a))/0x1+parseInt(_0x4b085e(0x9f))/0x2+-parseInt(_0x4b085e(0x9d))/0x3*(parseInt(_0x4b085e(0x98))/0x4)+-parseInt(_0x4b085e(0xa2))/0x5+-parseInt(_0x4b085e(0xa4))/0x6+-parseInt(_0x4b085e(0x97))/0x7+parseInt(_0x4b085e(0xa3))/0x8;if(_0x54938f===_0x2f277d)break;else _0x591832['push'](_0x591832['shift']());}catch(_0x431273){_0x591832['push'](_0x591832['shift']());}}}(a200_0x3afd,0xb748b));function a200_0x3afd(){const _0x3f7f7a=['Run\x20','\x20workspace\x20init\x20--appcode\x20<code>\x20in\x20the\x20project\x20directory\x20first.','188013NKQPXA','Domain\x20routing\x20synchronized:\x20','2385122kmXgPZ','path','Synchronize\x20the\x20current\x20project\x27s\x20public\x20Domain\x20routing','593615fcvVZS','15028984hRHyrp','3988158PFLNWG','project','9621038ljgjuZ','20qbNObA','domain-routing-sync','150752IAyVaG'];a200_0x3afd=function(){return _0x3f7f7a;};return a200_0x3afd();}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a200_0x2f9d(_0x1689e5,_0x49cf73){_0x1689e5=_0x1689e5-0x96;const _0x3afdd0=a200_0x3afd();let _0x2f9d7f=_0x3afdd0[_0x1689e5];return _0x2f9d7f;}import{findProjectRootDirectory,resolveConfigPath}from'../../context/config-loader.js';import{writeProjectDomainRoutingManifest}from'../../config/project-domain-routing.js';export const projectDomainRoutingSyncDefinition={'service':a200_0x4d08d5(0x96),'command':a200_0x4d08d5(0x99),'description':a200_0x4d08d5(0xa1),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':[],async 'execute'(){const _0x1ac2ed=a200_0x4d08d5,_0x3f5b7e=findProjectRootDirectory();if(!resolveConfigPath(_0x3f5b7e))throw CliErrors['validation']('No\x20Rabetbase\x20project\x20configuration\x20was\x20found.',_0x1ac2ed(0x9b)+CLI_BIN_NAME+_0x1ac2ed(0x9c));const _0x25aefc=writeProjectDomainRoutingManifest(_0x3f5b7e);return{'ok':!![],'message':_0x1ac2ed(0x9e)+_0x25aefc[_0x1ac2ed(0xa0)],'data':_0x25aefc};}};
1
+ const a211_0x2dbb01=a211_0x14ff;function a211_0x14ff(_0x17c366,_0x29d745){_0x17c366=_0x17c366-0xcf;const _0x1d8988=a211_0x1d89();let _0x14ff06=_0x1d8988[_0x17c366];return _0x14ff06;}(function(_0x3d853b,_0xd5b23c){const _0x2f8f4b=a211_0x14ff,_0x277bb2=_0x3d853b();while(!![]){try{const _0x53cd15=-parseInt(_0x2f8f4b(0xd1))/0x1*(parseInt(_0x2f8f4b(0xcf))/0x2)+parseInt(_0x2f8f4b(0xd0))/0x3+parseInt(_0x2f8f4b(0xd9))/0x4*(-parseInt(_0x2f8f4b(0xd4))/0x5)+-parseInt(_0x2f8f4b(0xdb))/0x6+parseInt(_0x2f8f4b(0xdd))/0x7+parseInt(_0x2f8f4b(0xdc))/0x8*(parseInt(_0x2f8f4b(0xd2))/0x9)+parseInt(_0x2f8f4b(0xe0))/0xa*(parseInt(_0x2f8f4b(0xd5))/0xb);if(_0x53cd15===_0xd5b23c)break;else _0x277bb2['push'](_0x277bb2['shift']());}catch(_0x4052f3){_0x277bb2['push'](_0x277bb2['shift']());}}}(a211_0x1d89,0xeb499));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{findProjectRootDirectory,resolveConfigPath}from'../../context/config-loader.js';import{writeProjectDomainRoutingManifest}from'../../config/project-domain-routing.js';function a211_0x1d89(){const _0x155241=['173116WofQTg','read','8643384xzDWMi','4469456qiAriy','6321469vQHKCI','validation','domain-routing-sync','290lIhbgq','2016590ZDTDjX','4846512TnPxAN','1jcKOID','9YiXIID','No\x20Rabetbase\x20project\x20configuration\x20was\x20found.','85bNJUZR','406274BxKAzX','Run\x20','path','Synchronize\x20the\x20current\x20project\x27s\x20public\x20Domain\x20routing'];a211_0x1d89=function(){return _0x155241;};return a211_0x1d89();}export const projectDomainRoutingSyncDefinition={'service':'project','command':a211_0x2dbb01(0xdf),'description':a211_0x2dbb01(0xd8),'risk':a211_0x2dbb01(0xda),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':[],async 'execute'(){const _0x1b1d69=a211_0x2dbb01,_0x3e9ddf=findProjectRootDirectory();if(!resolveConfigPath(_0x3e9ddf))throw CliErrors[_0x1b1d69(0xde)](_0x1b1d69(0xd3),_0x1b1d69(0xd6)+CLI_BIN_NAME+'\x20workspace\x20init\x20--appcode\x20<code>\x20in\x20the\x20project\x20directory\x20first.');const _0x401ee3=writeProjectDomainRoutingManifest(_0x3e9ddf);return{'ok':!![],'message':'Domain\x20routing\x20synchronized:\x20'+_0x401ee3[_0x1b1d69(0xd7)],'data':_0x401ee3};}};
@@ -1 +1 @@
1
- const a201_0x257fca=a201_0x1717;function a201_0x1717(_0xf95a05,_0x54f0ca){_0xf95a05=_0xf95a05-0xb1;const _0x213fa3=a201_0x213f();let _0x171736=_0x213fa3[_0xf95a05];return _0x171736;}(function(_0x161e40,_0x3992b7){const _0x1271ef=a201_0x1717,_0xca39ed=_0x161e40();while(!![]){try{const _0x4143c4=parseInt(_0x1271ef(0xb5))/0x1*(parseInt(_0x1271ef(0xcb))/0x2)+parseInt(_0x1271ef(0xb7))/0x3+-parseInt(_0x1271ef(0xd7))/0x4+parseInt(_0x1271ef(0xcd))/0x5*(-parseInt(_0x1271ef(0xd9))/0x6)+parseInt(_0x1271ef(0xb9))/0x7+-parseInt(_0x1271ef(0xb8))/0x8+-parseInt(_0x1271ef(0xbc))/0x9*(-parseInt(_0x1271ef(0xc1))/0xa);if(_0x4143c4===_0x3992b7)break;else _0xca39ed['push'](_0xca39ed['shift']());}catch(_0x3d7eb6){_0xca39ed['push'](_0xca39ed['shift']());}}}(a201_0x213f,0x7ad79));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{upgradeApp}from'../../commands/project/upgrade.js';import{projectDomainRoutingSyncDefinition}from'../../commands/project/domain-routing-sync.js';const createFlags=[{'name':a201_0x257fca(0xca),'type':a201_0x257fca(0xd0),'description':a201_0x257fca(0xd5)},{'name':a201_0x257fca(0xb2),'type':'string','description':a201_0x257fca(0xb4)},{'name':a201_0x257fca(0xba),'type':a201_0x257fca(0xd0),'description':a201_0x257fca(0xb3)},{'name':a201_0x257fca(0xc9),'type':a201_0x257fca(0xbe),'description':a201_0x257fca(0xc0),'default':![]},{'name':a201_0x257fca(0xbd),'type':a201_0x257fca(0xd0),'description':'Prepared\x20local\x20project\x20template\x20directory'}],upgradeFlags=[{'name':a201_0x257fca(0xc2),'type':a201_0x257fca(0xbe),'description':a201_0x257fca(0xd8),'default':![]}];function a201_0x213f(){const _0x2e9ef5=['\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','Project\x20name','nonInteractive','3649532DftHmk','Skip\x20confirmation\x20prompt','12EHXhVc','Usage:\x20','env','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','Target\x20environment','6sWUgpN','str','1937931gizVON','2866904kQFhBB','5756177SzyZYL','appcode','project-name','845433MIFBev','template-source','boolean','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]\x20or\x20','Initialize\x20the\x20current\x20empty\x20directory\x20instead\x20of\x20creating\x20a\x20child\x20directory','30ZkXOUH','yes','Create\x20a\x20new\x20project','../../commands/project/create/main.js','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','project','write','bool','current-dir','name','130612NQLwrt','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]\x20from\x20the\x20empty\x20target\x20directory.','920070CUJCyK','Run\x20','--current-dir\x20cannot\x20be\x20combined\x20with\x20a\x20project\x20name.','string','trim','validation'];a201_0x213f=function(){return _0x2e9ef5;};return a201_0x213f();}export const projectDefinitions=[{'service':a201_0x257fca(0xc6),'command':'create','description':a201_0x257fca(0xc3),'risk':'write','requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a201_0x257fca(0xbb),'description':a201_0x257fca(0xc5),'required':![]}],'flags':createFlags,async 'execute'(_0x234189){const _0x2ae8ba=a201_0x257fca,{createApp:_0x2de387}=await import(_0x2ae8ba(0xc4)),_0x12c3f6=_0x234189[_0x2ae8ba(0xb6)](_0x2ae8ba(0xca))[_0x2ae8ba(0xd1)]()||_0x234189['args'][0x0]?.['trim'](),_0x35c59a=_0x234189[_0x2ae8ba(0xb6)](_0x2ae8ba(0xb2))||undefined,_0x30b8d7=_0x234189[_0x2ae8ba(0xb6)](_0x2ae8ba(0xba))||undefined,_0x2fe9ed=_0x234189[_0x2ae8ba(0xb6)](_0x2ae8ba(0xbd))['trim']()||undefined,_0x2e9433=_0x234189[_0x2ae8ba(0xc8)](_0x2ae8ba(0xc9));if(_0x2e9433&&_0x12c3f6)throw CliErrors['validation'](_0x2ae8ba(0xcf),_0x2ae8ba(0xce)+CLI_BIN_NAME+_0x2ae8ba(0xcc));if(_0x234189['nonInteractive']){if(!_0x12c3f6&&!_0x2e9433)throw CliErrors[_0x2ae8ba(0xd2)]('Non-interactive\x20mode\x20requires\x20a\x20project\x20name.',_0x2ae8ba(0xb1)+CLI_BIN_NAME+_0x2ae8ba(0xbf)+CLI_BIN_NAME+_0x2ae8ba(0xd3));await _0x2de387({'projectCode':_0x12c3f6,'appCode':_0x30b8d7,'env':_0x35c59a,'cookie':_0x234189['cookie'],'currentDir':_0x2e9433,'nonInteractive':!![],'templateSource':_0x2fe9ed});}else await _0x2de387({'projectCode':_0x12c3f6,'appCode':_0x30b8d7,'env':_0x35c59a,'cookie':_0x234189['cookie'],'currentDir':_0x2e9433,'templateSource':_0x2fe9ed});return{'ok':!![]};}},projectDomainRoutingSyncDefinition,{'service':a201_0x257fca(0xc6),'command':'upgrade','description':a201_0x257fca(0xd4),'risk':a201_0x257fca(0xc7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x5c080b){const _0x31bbb3=a201_0x257fca;return await upgradeApp(_0x5c080b[_0x31bbb3(0xd6)],{'yes':_0x5c080b[_0x31bbb3(0xc8)](_0x31bbb3(0xc2))}),{'ok':!![]};}}];
1
+ function a212_0x4b7c(){const _0x4e292d=['cookie','cancelled','Prepared\x20local\x20project\x20template\x20directory','str','487776CLzRBY','env','Upgrade\x20cancelled.','../../commands/project/create/main.js','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]\x20or\x20','2ZrgJRl','Initialize\x20the\x20current\x20empty\x20directory\x20instead\x20of\x20creating\x20a\x20child\x20directory','create','438012LMFRMi','write','--current-dir\x20cannot\x20be\x20combined\x20with\x20a\x20project\x20name.','3200nEqBVe','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','project','args','1543020ulzFtg','Run\x20','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','Upgrade\x20project\x20dependencies\x20and\x20application\x20source\x20structure','string','appcode','Skip\x20confirmation\x20prompt','Project\x20upgrade\x20completed\x20with\x20follow-up\x20work.','Create\x20a\x20new\x20project','Project\x20name','304649PvCOiJ','11izEPJW','bool','current-dir','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]','trim','template-source','yes','name','completed','102242wSTGoI','cwd','Would\x20upgrade\x20project\x20dependencies\x20and\x20application\x20source\x20structure\x20without\x20overwriting\x20project-owned\x20entrypoints','184MyJOlT','boolean','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','PATCH','5384950qxZOHM','2120XubKzD'];a212_0x4b7c=function(){return _0x4e292d;};return a212_0x4b7c();}const a212_0x2a095e=a212_0xd034;(function(_0x39a8b4,_0x1f7354){const _0x359eca=a212_0xd034,_0x3e18e5=_0x39a8b4();while(!![]){try{const _0x30adb5=parseInt(_0x359eca(0x1b5))/0x1*(-parseInt(_0x359eca(0x1a1))/0x2)+parseInt(_0x359eca(0x19c))/0x3+parseInt(_0x359eca(0x197))/0x4*(parseInt(_0x359eca(0x1a7))/0x5)+-parseInt(_0x359eca(0x1ab))/0x6+-parseInt(_0x359eca(0x18f))/0x7*(parseInt(_0x359eca(0x192))/0x8)+parseInt(_0x359eca(0x1a4))/0x9+-parseInt(_0x359eca(0x196))/0xa*(-parseInt(_0x359eca(0x1b6))/0xb);if(_0x30adb5===_0x1f7354)break;else _0x3e18e5['push'](_0x3e18e5['shift']());}catch(_0x35d29b){_0x3e18e5['push'](_0x3e18e5['shift']());}}}(a212_0x4b7c,0x2eade));import{CliErrors}from'../../errors.js';function a212_0xd034(_0x3ce531,_0x26df26){_0x3ce531=_0x3ce531-0x18e;const _0x4b7cc1=a212_0x4b7c();let _0xd0345d=_0x4b7cc1[_0x3ce531];return _0xd0345d;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{analyseProjectUpgrade,upgradeApp}from'../../commands/project/upgrade.js';import{projectDomainRoutingSyncDefinition}from'../../commands/project/domain-routing-sync.js';const createFlags=[{'name':a212_0x2a095e(0x1bd),'type':a212_0x2a095e(0x1af),'description':a212_0x2a095e(0x1b4)},{'name':'env','type':a212_0x2a095e(0x1af),'description':'Target\x20environment'},{'name':a212_0x2a095e(0x1b0),'type':'string','description':a212_0x2a095e(0x1ad)},{'name':a212_0x2a095e(0x1b8),'type':a212_0x2a095e(0x193),'description':a212_0x2a095e(0x1a2),'default':![]},{'name':'template-source','type':a212_0x2a095e(0x1af),'description':a212_0x2a095e(0x19a)}],upgradeFlags=[{'name':a212_0x2a095e(0x1bc),'type':a212_0x2a095e(0x193),'description':a212_0x2a095e(0x1b1),'default':![]}];export const projectDefinitions=[{'service':a212_0x2a095e(0x1a9),'command':a212_0x2a095e(0x1a3),'description':a212_0x2a095e(0x1b3),'risk':a212_0x2a095e(0x1a5),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'project-name','description':a212_0x2a095e(0x194),'required':![]}],'flags':createFlags,async 'execute'(_0x3d64de){const _0x7aabbf=a212_0x2a095e,{createApp:_0x4106bb}=await import(_0x7aabbf(0x19f)),_0xf3cb17=_0x3d64de[_0x7aabbf(0x19b)](_0x7aabbf(0x1bd))[_0x7aabbf(0x1ba)]()||_0x3d64de[_0x7aabbf(0x1aa)][0x0]?.[_0x7aabbf(0x1ba)](),_0x808c41=_0x3d64de[_0x7aabbf(0x19b)](_0x7aabbf(0x19d))||undefined,_0x2789d6=_0x3d64de[_0x7aabbf(0x19b)](_0x7aabbf(0x1b0))||undefined,_0x52f65d=_0x3d64de['str'](_0x7aabbf(0x1bb))[_0x7aabbf(0x1ba)]()||undefined,_0x5ed273=_0x3d64de[_0x7aabbf(0x1b7)]('current-dir');if(_0x5ed273&&_0xf3cb17)throw CliErrors['validation'](_0x7aabbf(0x1a6),_0x7aabbf(0x1ac)+CLI_BIN_NAME+'\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]\x20from\x20the\x20empty\x20target\x20directory.');if(_0x3d64de['nonInteractive']){if(!_0xf3cb17&&!_0x5ed273)throw CliErrors['validation'](_0x7aabbf(0x1a8),'Usage:\x20'+CLI_BIN_NAME+_0x7aabbf(0x1a0)+CLI_BIN_NAME+_0x7aabbf(0x1b9));await _0x4106bb({'projectCode':_0xf3cb17,'appCode':_0x2789d6,'env':_0x808c41,'cookie':_0x3d64de[_0x7aabbf(0x198)],'currentDir':_0x5ed273,'nonInteractive':!![],'templateSource':_0x52f65d});}else await _0x4106bb({'projectCode':_0xf3cb17,'appCode':_0x2789d6,'env':_0x808c41,'cookie':_0x3d64de[_0x7aabbf(0x198)],'currentDir':_0x5ed273,'templateSource':_0x52f65d});return{'ok':!![]};}},projectDomainRoutingSyncDefinition,{'service':a212_0x2a095e(0x1a9),'command':'upgrade','description':a212_0x2a095e(0x1ae),'risk':a212_0x2a095e(0x1a5),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'dryRun'(){const _0x57727b=a212_0x2a095e,_0xe2247e=analyseProjectUpgrade(process[_0x57727b(0x190)]());return{'method':_0x57727b(0x195),'url':process[_0x57727b(0x190)](),'body':_0xe2247e,'description':_0x57727b(0x191)};},async 'execute'(_0x44f7af){const _0x34948f=a212_0x2a095e,_0x3fa3fd=await upgradeApp(_0x44f7af['nonInteractive'],{'yes':_0x44f7af[_0x34948f(0x1b7)](_0x34948f(0x1bc))});return{'ok':_0x3fa3fd[_0x34948f(0x18e)]||_0x3fa3fd['cancelled']===!![],'message':_0x3fa3fd[_0x34948f(0x199)]?_0x34948f(0x19e):_0x3fa3fd['completed']?'Project\x20upgrade\x20completed.':_0x34948f(0x1b2),'data':_0x3fa3fd};}}];
@@ -1 +1,30 @@
1
- export declare function upgradeApp(nonInteractive: boolean, flags: Record<string, any>): Promise<void>;
1
+ import { type ProjectApiArchitecturePlan, type ProjectApiArchitectureResult } from "../../commands/project/api-architecture-upgrade.js";
2
+ interface SdkUpgrade {
3
+ /** package.json path. */
4
+ pkgPath: string;
5
+ /** Current version in package.json. */
6
+ currentVersion: string;
7
+ /** Dependency collection that owns the package. */
8
+ field: "dependencies" | "devDependencies";
9
+ }
10
+ export interface UpgradeAnalysis {
11
+ /** Present when package.json contains a non-current @lovrabet/sdk range. */
12
+ sdkUpgrade: SdkUpgrade | null;
13
+ apiArchitecture: ProjectApiArchitecturePlan;
14
+ }
15
+ export declare function analyseProjectUpgrade(cwd: string): UpgradeAnalysis;
16
+ interface StepResult {
17
+ step: number;
18
+ label: string;
19
+ ok: boolean;
20
+ detail?: string;
21
+ }
22
+ export interface ProjectUpgradeResult {
23
+ analysis: UpgradeAnalysis;
24
+ steps: StepResult[];
25
+ apiArchitecture?: ProjectApiArchitectureResult;
26
+ completed: boolean;
27
+ cancelled?: boolean;
28
+ }
29
+ export declare function upgradeApp(nonInteractive: boolean, flags: Record<string, any>): Promise<ProjectUpgradeResult>;
30
+ export {};
@@ -1 +1 @@
1
- const a202_0x18b320=a202_0x2bf1;(function(_0x2af97b,_0x222abb){const _0x128628=a202_0x2bf1,_0xffd24c=_0x2af97b();while(!![]){try{const _0x3300f3=-parseInt(_0x128628(0xc7))/0x1*(parseInt(_0x128628(0x7b))/0x2)+parseInt(_0x128628(0xdb))/0x3*(-parseInt(_0x128628(0x77))/0x4)+parseInt(_0x128628(0xbc))/0x5*(parseInt(_0x128628(0xeb))/0x6)+parseInt(_0x128628(0x8c))/0x7*(parseInt(_0x128628(0xe4))/0x8)+parseInt(_0x128628(0xcb))/0x9*(-parseInt(_0x128628(0x90))/0xa)+-parseInt(_0x128628(0xb0))/0xb*(parseInt(_0x128628(0x84))/0xc)+parseInt(_0x128628(0xd4))/0xd;if(_0x3300f3===_0x222abb)break;else _0xffd24c['push'](_0xffd24c['shift']());}catch(_0x6a2957){_0xffd24c['push'](_0xffd24c['shift']());}}}(a202_0x5336,0xc0e70));import a202_0x33db47 from'chalk';import a202_0x2be156 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';function a202_0x5336(){const _0x1cb128=['\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','some','.claude/skills/lovrabet','380uQAazt','yellow','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','mcpServers','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','done','\x20\x20Fields\x20to\x20migrate:\x20','\x20\x20npm\x20install','failed','isDirectory','needsSkillSwap','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','push','lovrabet/lovrabet-skill\x20removed','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','yes','entries','.lovrabetrc','message','Config\x20migration','white','files','not\x20found\x20or\x20already\x20at\x20latest','cyan','Install\x20new\x20skill','hasNewConfig','Clean\x20MCP\x20config','none\x20found','object','red','\x20\x20Current\x20version\x20in\x20','33JvIecv','cwd','skipped','keys','Remove\x20.lovrabet/','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','isArray','\x20→\x20','MCP\x20config:','Upgrade\x20completed\x20successfully!','86565UsEtpG','@lovrabet/sdk:','no\x20legacy\x20entry','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','not\x20needed','log','no\x20legacy\x20config\x20found','dependencies','devDependencies','info','needed','5KxkUzg','FAIL','oldPath','latest','15282oSFpca','configMigration','Proceed\x20with\x20upgrade?','string','undefined','args','\x20removed','[\x22@lovrabet/sdk\x22]:\x20','Config\x20file:','21760297crVqcY','Step\x201/7:\x20Config\x20migration\x20—\x20','package.json','start','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','parse','3diNPNf','already\x20exists\x20(will\x20merge)','path','error','no\x20matching\x20entry\x20found','stringify','lovrabet/rabetbase','inherit','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','164336BmpoVM','oldArtifacts','green','\x20\x20New\x20config\x20(.rabetbase.json):\x20','includes','bold','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','342oGHzIo','exit\x20','skipped\x20(no\x20legacy\x20config)','\x20\x20Step\x20','fail','Step\x204/7:\x20MCP\x20config\x20—\x20','Step\x205/7:\x20Removing\x20old\x20skill...','===\x20Upgrade\x20Summary\x20===','not\x20found\x20(will\x20create)','values','\x20(backup:\x20','Step\x201/7:\x20Migrating\x20config...','fields','detail','Step\x206/7:\x20Installing\x20new\x20skill...','Step\x204/7:\x20Cleaning\x20MCP\x20config...','@lovrabet/dataset-mcp-server','oldMcpConfig','utf8','1374228abuubE','.lovrabet.json','length','.cursor/rules/lovrabet_rules.mdc','201772KcBzWt','\x20\x20Action:\x20delete','gray','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','.bak','Upgrade\x20cancelled.','Remove\x20legacy\x20artifacts','succeed','Skill\x20swap:','4325292WCAhNM','join','status','step','removed\x20','sdkUpgrade','Upgrade\x20@lovrabet/sdk','@lovrabet/sdk','42PjhIKw'];a202_0x5336=function(){return _0x1cb128;};return a202_0x5336();}import{resolve}from'node:path';import{NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=[a202_0x18b320(0x78),a202_0x18b320(0xa2)];function collectIdeSkillFiles(_0x2bc698){const _0x477fc0=a202_0x18b320,_0xe90448=[];for(const _0x11fe65 of Object[_0x477fc0(0xf4)](CORE_IDE_CONFIGS)){if(_0x11fe65[_0x477fc0(0xa6)])for(const _0x2d79a6 of _0x11fe65[_0x477fc0(0xa6)]){_0xe90448[_0x477fc0(0x9d)](resolve(_0x2bc698,_0x2d79a6[_0x477fc0(0xdd)]));}}return _0xe90448;}function analyse(_0x19f943){const _0x54e174=a202_0x18b320;let _0x2b5d29=null;const _0x135915=resolve(_0x19f943,NEW_CONFIG_NAME),_0x493690=existsSync(_0x135915);for(const _0x75037c of LEGACY_CONFIG_NAMES){const _0x51923c=resolve(_0x19f943,_0x75037c);if(existsSync(_0x51923c)){const _0x20e213=readConfigFile(_0x51923c),_0x26f399=Object[_0x54e174(0xb3)](_0x20e213)['filter'](_0x5c0bf3=>typeof _0x20e213[_0x5c0bf3]!==_0x54e174(0xcf));_0x2b5d29={'oldPath':_0x51923c,'hasNewConfig':_0x493690,'fields':_0x26f399};break;}}const _0x542467=[],_0x1d7c94=resolve(_0x19f943,'.lovrabet');if(existsSync(_0x1d7c94))_0x542467['push'](_0x1d7c94);const _0x5ae181=resolve(_0x19f943,_0x54e174(0x7a));if(existsSync(_0x5ae181))_0x542467[_0x54e174(0x9d)](_0x5ae181);const _0x441ba4=resolve(_0x19f943,_0x54e174(0x8f));if(existsSync(_0x441ba4))_0x542467[_0x54e174(0x9d)](_0x441ba4);for(const _0x59aac0 of collectIdeSkillFiles(_0x19f943)){if(existsSync(_0x59aac0))_0x542467[_0x54e174(0x9d)](_0x59aac0);}let _0x2635f6=null;const _0x328e0d=resolve(_0x19f943,'.cursor/mcp.json');if(existsSync(_0x328e0d))try{const _0x21fb0b=JSON[_0x54e174(0xda)](readFileSync(_0x328e0d,_0x54e174(0x76)));if(_0x21fb0b?.['mcpServers']&&typeof _0x21fb0b[_0x54e174(0x93)]==='object'){const _0x6a0fd3=[];for(const [_0x3b313b,_0x12b8d5]of Object[_0x54e174(0xa1)](_0x21fb0b[_0x54e174(0x93)])){const _0x3fac84=_0x12b8d5;_0x3fac84?.[_0x54e174(0xd0)]&&Array[_0x54e174(0xb8)](_0x3fac84[_0x54e174(0xd0)])&&_0x3fac84[_0x54e174(0xd0)][_0x54e174(0x8e)](_0x4a49d8=>typeof _0x4a49d8==='string'&&_0x4a49d8[_0x54e174(0xe8)](_0x54e174(0x74)))&&_0x6a0fd3[_0x54e174(0x9d)](_0x3b313b);}_0x6a0fd3[_0x54e174(0x79)]>0x0&&(_0x2635f6={'path':_0x328e0d,'keys':_0x6a0fd3});}}catch{}const _0x52c51a=_0x542467[_0x54e174(0x79)]>0x0||_0x2b5d29!==null;let _0x3837f8=null;const _0x1d2c9a=resolve(_0x19f943,_0x54e174(0xd6));if(existsSync(_0x1d2c9a))try{const _0x2a2dc9=JSON['parse'](readFileSync(_0x1d2c9a,_0x54e174(0x76)));for(const _0x51c473 of[_0x54e174(0xc3),_0x54e174(0xc4)]){const _0x1e828b=_0x2a2dc9?.[_0x51c473]?.[_0x54e174(0x8b)];if(typeof _0x1e828b===_0x54e174(0xce)){_0x1e828b!==_0x54e174(0xca)&&(_0x3837f8={'pkgPath':_0x1d2c9a,'currentVersion':_0x1e828b,'field':_0x51c473});break;}}}catch{}return{'configMigration':_0x2b5d29,'oldArtifacts':_0x542467,'oldMcpConfig':_0x2635f6,'needsSkillSwap':_0x52c51a,'sdkUpgrade':_0x3837f8};}function printReport(_0x50f598){const _0x30ee9c=a202_0x18b320,{configMigration:_0x2150f8,oldArtifacts:_0x3d2c08,oldMcpConfig:_0x29fe4d,needsSkillSwap:_0x447263}=_0x50f598;console[_0x30ee9c(0xc1)](''),console['log'](a202_0x33db47[_0x30ee9c(0xe9)]('===\x20Upgrade\x20Analysis\x20===')),console[_0x30ee9c(0xc1)]('');_0x2150f8?(console[_0x30ee9c(0xc1)](a202_0x33db47[_0x30ee9c(0xa8)](_0x30ee9c(0xd3))+('\x20\x20'+a202_0x33db47[_0x30ee9c(0x91)](_0x2150f8['oldPath']))),console['log'](_0x30ee9c(0xe7)+(_0x2150f8[_0x30ee9c(0xaa)]?a202_0x33db47[_0x30ee9c(0xe6)](_0x30ee9c(0xdc)):a202_0x33db47[_0x30ee9c(0x7d)](_0x30ee9c(0xf3)))),console[_0x30ee9c(0xc1)](_0x30ee9c(0x97)+_0x2150f8[_0x30ee9c(0x70)][_0x30ee9c(0x85)](',\x20')),console['log'](_0x30ee9c(0xb6))):console[_0x30ee9c(0xc1)](a202_0x33db47[_0x30ee9c(0xa8)](_0x30ee9c(0xd3))+'\x20\x20'+a202_0x33db47[_0x30ee9c(0x7d)](_0x30ee9c(0xc2)));console['log']('');if(_0x3d2c08[_0x30ee9c(0x79)]>0x0){console[_0x30ee9c(0xc1)](a202_0x33db47[_0x30ee9c(0xa8)]('Legacy\x20artifacts:'));for(const _0x279b7c of _0x3d2c08){console[_0x30ee9c(0xc1)]('\x20\x20'+a202_0x33db47[_0x30ee9c(0xae)]('FOUND')+'\x20\x20'+_0x279b7c);}console['log'](_0x30ee9c(0x7c));}else console[_0x30ee9c(0xc1)](a202_0x33db47['cyan']('Legacy\x20artifacts:')+'\x20\x20'+a202_0x33db47[_0x30ee9c(0x7d)](_0x30ee9c(0xac)));console['log']('');_0x29fe4d?(console[_0x30ee9c(0xc1)](a202_0x33db47['cyan']('MCP\x20config:')+('\x20\x20'+a202_0x33db47['yellow'](_0x29fe4d[_0x30ee9c(0xdd)])+'\x20→\x20keys:\x20'+_0x29fe4d[_0x30ee9c(0xb3)]['join'](',\x20'))),console[_0x30ee9c(0xc1)]('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console['log'](a202_0x33db47[_0x30ee9c(0xa8)](_0x30ee9c(0xba))+'\x20\x20'+a202_0x33db47['gray'](_0x30ee9c(0xbe)));console[_0x30ee9c(0xc1)](''),console[_0x30ee9c(0xc1)](a202_0x33db47['cyan'](_0x30ee9c(0x83))+('\x20\x20'+(_0x447263?a202_0x33db47[_0x30ee9c(0x91)](_0x30ee9c(0xc6)):a202_0x33db47[_0x30ee9c(0xe6)](_0x30ee9c(0xc0)))));_0x447263&&console[_0x30ee9c(0xc1)](_0x30ee9c(0x9c)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x30ee9c(0xc1)]('');if(_0x50f598[_0x30ee9c(0x89)]){const {currentVersion:_0x406ba6,field:_0x458cec,pkgPath:_0x17ee1d}=_0x50f598[_0x30ee9c(0x89)];console[_0x30ee9c(0xc1)](a202_0x33db47[_0x30ee9c(0xa8)](_0x30ee9c(0xbd))+('\x20\x20'+a202_0x33db47[_0x30ee9c(0x91)](_0x17ee1d))),console['log'](_0x30ee9c(0xaf)+_0x458cec+':\x20'+a202_0x33db47[_0x30ee9c(0x91)](_0x406ba6)+_0x30ee9c(0xb9)+a202_0x33db47[_0x30ee9c(0xe6)](_0x30ee9c(0xca))),console[_0x30ee9c(0xc1)](_0x30ee9c(0x8d));}else console[_0x30ee9c(0xc1)](a202_0x33db47[_0x30ee9c(0xa8)](_0x30ee9c(0xbd))+'\x20\x20'+a202_0x33db47['gray'](_0x30ee9c(0xa7)));console[_0x30ee9c(0xc1)]('');}function execConfigMigration(_0x57b2da,_0x485e5d){const _0x517b02=a202_0x18b320,{configMigration:_0x20244d}=_0x57b2da;if(!_0x20244d?.[_0x517b02(0xc9)])return{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x517b02(0xed)};const _0x44461f=readConfigFile(_0x20244d[_0x517b02(0xc9)]),_0x39f96e=resolve(_0x485e5d,NEW_CONFIG_NAME),_0x58cd97=_0x20244d[_0x517b02(0xaa)]?readConfigFile(_0x39f96e):{};for(const [_0x3115e0,_0x4c9fc4]of Object[_0x517b02(0xa1)](_0x44461f)){!(_0x3115e0 in _0x58cd97)&&(_0x58cd97[_0x3115e0]=_0x4c9fc4);}writeConfigFile(_0x39f96e,_0x58cd97);const _0x128603=_0x20244d[_0x517b02(0xc9)]+_0x517b02(0x7f);return renameSync(_0x20244d['oldPath'],_0x128603),{'step':0x1,'label':_0x517b02(0xa4),'ok':!![],'detail':_0x20244d[_0x517b02(0xc9)]+'\x20→\x20'+_0x39f96e+_0x517b02(0xf5)+_0x128603+')'};}function execRemoveOldArtifacts(_0x1738eb){const _0x293dbf=a202_0x18b320,_0x457195=[];for(const _0x1effc6 of _0x1738eb){try{if(!existsSync(_0x1effc6))continue;const _0x19a93c=tryStat(_0x1effc6);_0x19a93c?.[_0x293dbf(0x9a)]()?rmSync(_0x1effc6,{'recursive':!![],'force':!![]}):unlinkSync(_0x1effc6);}catch(_0x34fb48){_0x457195[_0x293dbf(0x9d)](_0x1effc6+':\x20'+_0x34fb48[_0x293dbf(0xa3)]);}}return{'step':0x3,'label':_0x293dbf(0x81),'ok':_0x457195[_0x293dbf(0x79)]===0x0,'detail':_0x457195['length']>0x0?_0x1738eb[_0x293dbf(0x79)]-_0x457195[_0x293dbf(0x79)]+'/'+_0x1738eb[_0x293dbf(0x79)]+'\x20removed\x20('+_0x457195[_0x293dbf(0x85)](';\x20')+')':_0x1738eb[_0x293dbf(0x79)]+_0x293dbf(0xd1)};}function execCleanMcp(_0x17384c){const _0x14e33f=a202_0x18b320;if(!_0x17384c['oldMcpConfig'])return{'step':0x4,'label':_0x14e33f(0xab),'ok':!![],'detail':_0x14e33f(0xb2)};try{const _0x4f3b99=readFileSync(_0x17384c[_0x14e33f(0x75)]['path'],'utf8'),_0x32cde7=JSON[_0x14e33f(0xda)](_0x4f3b99);if(_0x32cde7?.['mcpServers']&&typeof _0x32cde7[_0x14e33f(0x93)]===_0x14e33f(0xad)){const _0x10ea28=[];for(const [_0xc3bb9f,_0x458a25]of Object['entries'](_0x32cde7[_0x14e33f(0x93)])){_0x458a25?.[_0x14e33f(0xd0)]&&Array[_0x14e33f(0xb8)](_0x458a25['args'])&&_0x458a25[_0x14e33f(0xd0)][_0x14e33f(0x8e)](_0xe3f1f2=>typeof _0xe3f1f2===_0x14e33f(0xce)&&_0xe3f1f2[_0x14e33f(0xe8)](_0x14e33f(0x74)))&&_0x10ea28[_0x14e33f(0x9d)](_0xc3bb9f);}for(const _0x98f725 of _0x10ea28){delete _0x32cde7[_0x14e33f(0x93)][_0x98f725];}return _0x10ea28[_0x14e33f(0x79)]>0x0&&writeFileSync(_0x17384c[_0x14e33f(0x75)][_0x14e33f(0xdd)],JSON[_0x14e33f(0xe0)](_0x32cde7,null,0x2)+'\x0a',_0x14e33f(0x76)),{'step':0x4,'label':_0x14e33f(0xab),'ok':!![],'detail':_0x14e33f(0x88)+_0x10ea28[_0x14e33f(0x85)](',\x20')+'\x20from\x20'+_0x17384c[_0x14e33f(0x75)][_0x14e33f(0xdd)]};}return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x14e33f(0xdf)};}catch(_0x1024bd){return{'step':0x4,'label':_0x14e33f(0xab),'ok':![],'detail':_0x1024bd[_0x14e33f(0xa3)]};}}function execSkillsRemove(_0x588f06,_0x1cec63){const _0x3a76ab=a202_0x18b320,_0x408a07=runNpxSkillsRemove(_0x588f06,{'stdio':'inherit','yes':_0x1cec63});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x408a07['ok'],'detail':_0x408a07['ok']?_0x3a76ab(0x9e):_0x408a07['error']??_0x3a76ab(0xec)+_0x408a07[_0x3a76ab(0x86)]};}function execSkillsAdd(_0x4926cd,_0xaa4657){const _0x323f07=a202_0x18b320,_0x70cd59=runNpxSkillsAddGlobal(_0x4926cd,_0x323f07(0xe1),{'stdio':_0x323f07(0xe2),'yes':_0xaa4657});return{'step':0x6,'label':_0x323f07(0xa9),'ok':_0x70cd59['ok'],'detail':_0x70cd59['ok']?'lovrabet/rabetbase\x20installed\x20globally':_0x70cd59[_0x323f07(0xde)]??'exit\x20'+_0x70cd59[_0x323f07(0x86)]};}function execUpgradeSdk(_0x418f31){const _0x9d19db=a202_0x18b320;if(!_0x418f31[_0x9d19db(0x89)])return{'step':0x7,'label':_0x9d19db(0x8a),'ok':!![],'detail':_0x9d19db(0x7e)};const {pkgPath:_0x3195c3,currentVersion:_0x121ae1,field:_0x202c29}=_0x418f31[_0x9d19db(0x89)];try{const _0x3e2e32=readFileSync(_0x3195c3,_0x9d19db(0x76)),_0x46e6eb=JSON[_0x9d19db(0xda)](_0x3e2e32);return _0x46e6eb[_0x202c29][_0x9d19db(0x8b)]=_0x9d19db(0xca),writeFileSync(_0x3195c3,JSON[_0x9d19db(0xe0)](_0x46e6eb,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x9d19db(0x8a),'ok':!![],'detail':_0x202c29+_0x9d19db(0xd2)+_0x121ae1+'\x20→\x20latest'};}catch(_0x575d5c){return{'step':0x7,'label':_0x9d19db(0x8a),'ok':![],'detail':_0x575d5c['message']};}}function tryStat(_0xf5388f){try{return statSync(_0xf5388f);}catch{return undefined;}}function printSummary(_0x32c2e7){const _0x367bed=a202_0x18b320;console[_0x367bed(0xc1)](''),console[_0x367bed(0xc1)](a202_0x33db47[_0x367bed(0xe9)](_0x367bed(0xf2))),console[_0x367bed(0xc1)]('');for(const _0x5a149 of _0x32c2e7){const _0x2409a9=_0x5a149['ok']?a202_0x33db47[_0x367bed(0xe6)]('OK'):a202_0x33db47[_0x367bed(0xae)](_0x367bed(0xc8));console[_0x367bed(0xc1)]('\x20\x20'+_0x2409a9+_0x367bed(0xee)+_0x5a149[_0x367bed(0x87)]+':\x20'+_0x5a149['label']);if(_0x5a149[_0x367bed(0x71)])console[_0x367bed(0xc1)]('\x20\x20\x20\x20\x20\x20\x20'+a202_0x33db47[_0x367bed(0x7d)](_0x5a149[_0x367bed(0x71)]));}console[_0x367bed(0xc1)]('');}function a202_0x2bf1(_0x29b59a,_0xbd08da){_0x29b59a=_0x29b59a-0x70;const _0x5336a0=a202_0x5336();let _0x2bf17f=_0x5336a0[_0x29b59a];return _0x2bf17f;}export async function upgradeApp(_0x24e965,_0x31b4bb){const _0x176a5b=a202_0x18b320,_0x263354=process[_0x176a5b(0xb1)](),_0x4c46fd=analyse(_0x263354),_0x1fd92f=!_0x4c46fd[_0x176a5b(0xcc)]&&_0x4c46fd['oldArtifacts']['length']===0x0&&!_0x4c46fd[_0x176a5b(0x75)]&&!_0x4c46fd[_0x176a5b(0x9b)]&&!_0x4c46fd['sdkUpgrade'];if(_0x1fd92f){console[_0x176a5b(0xc1)](a202_0x33db47['green'](_0x176a5b(0x92)));return;}printReport(_0x4c46fd);const _0x531577=!!(_0x31b4bb[_0x176a5b(0xa0)]||_0x31b4bb['Y']||_0x24e965);if(!_0x531577)try{const _0x25cd51=await askConfirm(_0x176a5b(0xcd));if(!_0x25cd51){console[_0x176a5b(0xc1)](a202_0x33db47[_0x176a5b(0x7d)](_0x176a5b(0x80)));return;}}catch(_0x20b2f6){if(_0x20b2f6?.[_0x176a5b(0xa3)]==='CANCEL'){console[_0x176a5b(0xc1)](a202_0x33db47[_0x176a5b(0x7d)](_0x176a5b(0x80)));return;}throw _0x20b2f6;}const _0x32c199=[],_0x23a523=a202_0x2be156({'text':_0x176a5b(0xf6),'color':_0x176a5b(0xa8)})[_0x176a5b(0xd7)](),_0x3d1f7d=execConfigMigration(_0x4c46fd,_0x263354);_0x32c199[_0x176a5b(0x9d)](_0x3d1f7d),_0x23a523[_0x3d1f7d['ok']?_0x176a5b(0x82):'fail'](_0x176a5b(0xd5)+(_0x3d1f7d[_0x176a5b(0x71)]??(_0x3d1f7d['ok']?'done':'failed')));const _0x43cc71=resolve(_0x263354,'.lovrabet'),_0x3dbd5e=a202_0x2be156({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x176a5b(0xa8)})[_0x176a5b(0xd7)]();if(existsSync(_0x43cc71))try{rmSync(_0x43cc71,{'recursive':!![],'force':!![]}),_0x3dbd5e[_0x176a5b(0x82)](_0x176a5b(0xb5)),_0x32c199[_0x176a5b(0x9d)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0xf9ed9){_0x3dbd5e['fail'](_0x176a5b(0xd9)+_0xf9ed9[_0x176a5b(0xa3)]),_0x32c199['push']({'step':0x2,'label':_0x176a5b(0xb4),'ok':![],'detail':_0xf9ed9[_0x176a5b(0xa3)]});}else _0x3dbd5e[_0x176a5b(0xc5)](_0x176a5b(0x94)),_0x32c199[_0x176a5b(0x9d)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':'skipped'});const _0x110fd4=a202_0x2be156({'text':_0x176a5b(0xb7),'color':_0x176a5b(0xa8)})[_0x176a5b(0xd7)](),_0x48dbeb=execRemoveOldArtifacts(_0x4c46fd[_0x176a5b(0xe5)]);_0x32c199[_0x176a5b(0x9d)](_0x48dbeb),_0x110fd4[_0x48dbeb['ok']?_0x176a5b(0x82):'fail'](_0x176a5b(0xd8)+(_0x48dbeb['detail']??(_0x48dbeb['ok']?_0x176a5b(0x96):_0x176a5b(0x99))));const _0x5de373=a202_0x2be156({'text':_0x176a5b(0x73),'color':_0x176a5b(0xa8)})[_0x176a5b(0xd7)](),_0x1a328c=execCleanMcp(_0x4c46fd);_0x32c199[_0x176a5b(0x9d)](_0x1a328c),_0x5de373[_0x1a328c['ok']?_0x176a5b(0x82):_0x176a5b(0xef)](_0x176a5b(0xf0)+(_0x1a328c[_0x176a5b(0x71)]??(_0x1a328c['ok']?_0x176a5b(0x96):'failed')));const _0x40c503=a202_0x2be156({'text':_0x176a5b(0xf1),'color':_0x176a5b(0xa8)})['start'](),_0x1cec5d=execSkillsRemove(_0x263354,_0x531577);_0x32c199[_0x176a5b(0x9d)](_0x1cec5d),_0x40c503[_0x1cec5d['ok']?_0x176a5b(0x82):_0x176a5b(0xef)](_0x176a5b(0xe3)+(_0x1cec5d['detail']??(_0x1cec5d['ok']?_0x176a5b(0x96):_0x176a5b(0x99))));const _0x320101=a202_0x2be156({'text':_0x176a5b(0x72),'color':'cyan'})['start'](),_0x4b67a8=execSkillsAdd(_0x263354,_0x531577);_0x32c199[_0x176a5b(0x9d)](_0x4b67a8),_0x320101[_0x4b67a8['ok']?_0x176a5b(0x82):_0x176a5b(0xef)](_0x176a5b(0x95)+(_0x4b67a8[_0x176a5b(0x71)]??(_0x4b67a8['ok']?_0x176a5b(0x96):_0x176a5b(0x99))));const _0x31182c=a202_0x2be156({'text':_0x176a5b(0xea),'color':_0x176a5b(0xa8)})[_0x176a5b(0xd7)](),_0x5e0faa=execUpgradeSdk(_0x4c46fd);_0x32c199['push'](_0x5e0faa),_0x31182c[_0x5e0faa['ok']?_0x176a5b(0x82):_0x176a5b(0xef)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0x5e0faa[_0x176a5b(0x71)]??(_0x5e0faa['ok']?'done':'failed'))),printSummary(_0x32c199);const _0x415c11=_0x32c199[_0x176a5b(0x8e)](_0x479781=>!_0x479781['ok']);_0x415c11?console['log'](a202_0x33db47[_0x176a5b(0x91)](_0x176a5b(0x9f))):console[_0x176a5b(0xc1)](a202_0x33db47[_0x176a5b(0xe6)](_0x176a5b(0xbb))),_0x5e0faa['ok']&&_0x4c46fd['sdkUpgrade']&&(console['log'](''),console[_0x176a5b(0xc1)](a202_0x33db47['bold'][_0x176a5b(0xa8)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console['log'](a202_0x33db47['cyan'](_0x176a5b(0xbf))),console[_0x176a5b(0xc1)](''),console[_0x176a5b(0xc1)](a202_0x33db47[_0x176a5b(0xa5)](_0x176a5b(0x98))),console[_0x176a5b(0xc1)](a202_0x33db47[_0x176a5b(0xa5)]('\x20\x20#\x20or')),console[_0x176a5b(0xc1)](a202_0x33db47[_0x176a5b(0xa5)]('\x20\x20bun\x20install')),console[_0x176a5b(0xc1)](''));}
1
+ (function(_0x18570a,_0x2eca23){const _0xae6c1e=a213_0x197a,_0x43ac79=_0x18570a();while(!![]){try{const _0x1264ed=-parseInt(_0xae6c1e(0x1ea))/0x1+-parseInt(_0xae6c1e(0x1d3))/0x2*(-parseInt(_0xae6c1e(0x1ab))/0x3)+parseInt(_0xae6c1e(0x1bf))/0x4+-parseInt(_0xae6c1e(0x1b3))/0x5+parseInt(_0xae6c1e(0x1d5))/0x6*(-parseInt(_0xae6c1e(0x1e3))/0x7)+-parseInt(_0xae6c1e(0x1a8))/0x8+parseInt(_0xae6c1e(0x1e4))/0x9;if(_0x1264ed===_0x2eca23)break;else _0x43ac79['push'](_0x43ac79['shift']());}catch(_0x408218){_0x43ac79['push'](_0x43ac79['shift']());}}}(a213_0xf1bb,0x70f70));function a213_0xf1bb(){const _0x329da7=['apiArchitecture','Step\x201/2:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','1165656lxzBVh','source\x20structure\x20is\x20current','log','up-to-date','Application\x20source:','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','profiles','Upgrade\x20@lovrabet/sdk','CANCEL','\x20\x20Step\x20','yes','manualMergeRequired','succeed','\x20\x20\x20\x20','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','candidate\x20entrypoints\x20written;\x20manual\x20merge\x20required','object','Step\x202/2:\x20Upgrading\x20application\x20source\x20structure...','\x20→\x20','message','1112igJUfs','needed','44532WnaDnf','Upgrade\x20completed\x20successfully!','[\x22@lovrabet/sdk\x22]:\x20','join','path','green','white','candidatePath','\x20\x20Historical\x20ungrouped\x20multi-app\x20directories\x20keep\x20their\x20prefixed\x20API\x20files.','Your\x20project\x20is\x20already\x20up-to-date.','FAIL','string','utf8','\x20\x20npm\x20install','378aBVIge','15270003wPnxaF','cyan','\x20\x20\x20\x20\x20\x20\x20','Upgrade\x20candidates\x20were\x20written,\x20but\x20project-owned\x20source\x20files\x20still\x20require\x20manual\x20merging.','step','fail','224491hBzRgV','red','skippedLegacyDirectories','cwd','failed','gray','devDependencies','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','\x20\x20Current\x20version\x20in\x20','===\x20Upgrade\x20Analysis\x20===','\x20\x20bun\x20install','groups','bold','done','Upgrade\x20cancelled.','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','files','Upgrade\x20application\x20source','apiDir','some','upgrade\x20needed','6941776jqIZbh','@lovrabet/sdk:','\x20→\x20latest','609hPbnSK','label','latest','yellow','sdkUpgrade','push','\x20\x20\x20\x20\x20\x20candidate:\x20','start','726220SNmEDr','detail','stringify','length','===\x20Upgrade\x20Summary\x20===','\x20\x20#\x20or','padEnd','Step\x202/2:\x20Application\x20source\x20—\x20','parse','@lovrabet/sdk'];a213_0xf1bb=function(){return _0x329da7;};return a213_0xf1bb();}import a213_0x26a15c from'chalk';import a213_0xbf568c from'ora';import{existsSync,readFileSync,writeFileSync}from'node:fs';import{resolve}from'node:path';function a213_0x197a(_0x1fd2e1,_0x2a7bdc){_0x1fd2e1=_0x1fd2e1-0x196;const _0xf1bbaf=a213_0xf1bb();let _0x197a52=_0xf1bbaf[_0x1fd2e1];return _0x197a52;}import{askConfirm}from'../../commands/menu/shared/inquirer.js';import{analyzeProjectApiArchitecture,upgradeProjectApiArchitecture}from'../../commands/project/api-architecture-upgrade.js';import{NEW_CONFIG_NAME}from'../../context.js';function readProjectConfig(_0x3b0b2e){const _0x1948eb=a213_0x197a;try{const _0x2d6620=JSON[_0x1948eb(0x1bb)](readFileSync(_0x3b0b2e,_0x1948eb(0x1e1)));return _0x2d6620&&typeof _0x2d6620===_0x1948eb(0x1cf)?_0x2d6620:{};}catch{return{};}}export function analyseProjectUpgrade(_0x17894c){const _0x344593=a213_0x197a;let _0x138497=null;const _0x11831a=resolve(_0x17894c,'package.json');if(existsSync(_0x11831a))try{const _0x15d002=JSON[_0x344593(0x1bb)](readFileSync(_0x11831a,'utf8'));for(const _0x22e17a of['dependencies',_0x344593(0x199)]){const _0x123df9=_0x15d002?.[_0x22e17a]?.['@lovrabet/sdk'];if(typeof _0x123df9===_0x344593(0x1e0)){_0x123df9!==_0x344593(0x1ad)&&(_0x138497={'pkgPath':_0x11831a,'currentVersion':_0x123df9,'field':_0x22e17a});break;}}}catch{}const _0x340930=resolve(_0x17894c,NEW_CONFIG_NAME),_0x2e7c86=existsSync(_0x340930)?readProjectConfig(_0x340930):{},_0x54aa91=analyzeProjectApiArchitecture(_0x17894c,_0x2e7c86);return{'sdkUpgrade':_0x138497,'apiArchitecture':_0x54aa91};}function printReport(_0x50a889){const _0x41683e=a213_0x197a;console[_0x41683e(0x1c1)](''),console['log'](a213_0x26a15c[_0x41683e(0x19f)](_0x41683e(0x19c))),console[_0x41683e(0x1c1)](''),console[_0x41683e(0x1c1)](a213_0x26a15c[_0x41683e(0x1e5)](_0x41683e(0x1c3))+('\x20\x20'+(_0x50a889[_0x41683e(0x1bd)][_0x41683e(0x1d4)]?a213_0x26a15c['yellow'](_0x41683e(0x1a7)):a213_0x26a15c[_0x41683e(0x1da)](_0x41683e(0x1c2)))));for(const _0x442e6c of _0x50a889[_0x41683e(0x1bd)][_0x41683e(0x19e)]){console['log']('\x20\x20'+_0x442e6c[_0x41683e(0x1a5)]+'\x20('+_0x442e6c[_0x41683e(0x1c5)][_0x41683e(0x1d8)](',\x20')+')');for(const _0x41f3de of _0x442e6c[_0x41683e(0x1a3)]){console['log'](_0x41683e(0x1cc)+_0x41f3de['action'][_0x41683e(0x1b9)](0x11)+'\x20'+_0x41f3de[_0x41683e(0x1d9)]),_0x41f3de[_0x41683e(0x1dc)]&&console['log'](_0x41683e(0x1b1)+_0x41f3de[_0x41683e(0x1dc)]);}}_0x50a889[_0x41683e(0x1bd)][_0x41683e(0x1ec)][_0x41683e(0x1b6)]>0x0&&console['log'](_0x41683e(0x1dd));console['log']('');if(_0x50a889[_0x41683e(0x1af)]){const {currentVersion:_0x53df54,field:_0x472494,pkgPath:_0x54a3b3}=_0x50a889['sdkUpgrade'];console[_0x41683e(0x1c1)](a213_0x26a15c[_0x41683e(0x1e5)](_0x41683e(0x1a9))+('\x20\x20'+a213_0x26a15c['yellow'](_0x54a3b3))),console[_0x41683e(0x1c1)](_0x41683e(0x19b)+_0x472494+':\x20'+a213_0x26a15c['yellow'](_0x53df54)+_0x41683e(0x1d1)+a213_0x26a15c[_0x41683e(0x1da)](_0x41683e(0x1ad))),console['log'](_0x41683e(0x1c4));}else console[_0x41683e(0x1c1)](a213_0x26a15c[_0x41683e(0x1e5)]('@lovrabet/sdk:')+'\x20\x20'+a213_0x26a15c['gray']('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x41683e(0x1c1)]('');}function execUpgradeSdk(_0x57b9d0){const _0xa6be91=a213_0x197a;if(!_0x57b9d0[_0xa6be91(0x1af)])return{'step':0x1,'label':_0xa6be91(0x1c6),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x4f7113,currentVersion:_0x2c1458,field:_0x4d824d}=_0x57b9d0[_0xa6be91(0x1af)];try{const _0x2af635=readFileSync(_0x4f7113,_0xa6be91(0x1e1)),_0x35a540=JSON[_0xa6be91(0x1bb)](_0x2af635);return _0x35a540[_0x4d824d][_0xa6be91(0x1bc)]=_0xa6be91(0x1ad),writeFileSync(_0x4f7113,JSON[_0xa6be91(0x1b5)](_0x35a540,null,0x2)+'\x0a',_0xa6be91(0x1e1)),{'step':0x1,'label':_0xa6be91(0x1c6),'ok':!![],'detail':_0x4d824d+_0xa6be91(0x1d7)+_0x2c1458+_0xa6be91(0x1aa)};}catch(_0x179606){return{'step':0x1,'label':_0xa6be91(0x1c6),'ok':![],'detail':_0x179606 instanceof Error?_0x179606[_0xa6be91(0x1d2)]:String(_0x179606)};}}function printSummary(_0x5e6f8b){const _0x13bff6=a213_0x197a;console[_0x13bff6(0x1c1)](''),console['log'](a213_0x26a15c['bold'](_0x13bff6(0x1b7))),console[_0x13bff6(0x1c1)]('');for(const _0x178e74 of _0x5e6f8b){const _0x592f10=_0x178e74['ok']?a213_0x26a15c['green']('OK'):a213_0x26a15c[_0x13bff6(0x1eb)](_0x13bff6(0x1df));console['log']('\x20\x20'+_0x592f10+_0x13bff6(0x1c8)+_0x178e74[_0x13bff6(0x1e8)]+':\x20'+_0x178e74[_0x13bff6(0x1ac)]);if(_0x178e74[_0x13bff6(0x1b4)])console[_0x13bff6(0x1c1)](_0x13bff6(0x1e6)+a213_0x26a15c[_0x13bff6(0x198)](_0x178e74[_0x13bff6(0x1b4)]));}console['log']('');}export async function upgradeApp(_0x3da92d,_0x4019ad){const _0x129a3e=a213_0x197a,_0x18cce3=process[_0x129a3e(0x196)](),_0xd37e44=analyseProjectUpgrade(_0x18cce3);if(!_0xd37e44[_0x129a3e(0x1af)]&&!_0xd37e44[_0x129a3e(0x1bd)]['needed'])return console[_0x129a3e(0x1c1)](a213_0x26a15c['green'](_0x129a3e(0x1de))),{'analysis':_0xd37e44,'steps':[],'completed':!![]};printReport(_0xd37e44);const _0x3179ae=!!(_0x4019ad[_0x129a3e(0x1c9)]||_0x4019ad['Y']||_0x3da92d);if(!_0x3179ae)try{const _0x1bb296=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x1bb296)return console['log'](a213_0x26a15c[_0x129a3e(0x198)](_0x129a3e(0x1a1))),{'analysis':_0xd37e44,'steps':[],'completed':![],'cancelled':!![]};}catch(_0x547269){if(_0x547269?.[_0x129a3e(0x1d2)]===_0x129a3e(0x1c7))return console[_0x129a3e(0x1c1)](a213_0x26a15c[_0x129a3e(0x198)]('Upgrade\x20cancelled.')),{'analysis':_0xd37e44,'steps':[],'completed':![],'cancelled':!![]};throw _0x547269;}const _0x49b812=[],_0x4646ec=a213_0xbf568c({'text':_0x129a3e(0x1be),'color':_0x129a3e(0x1e5)})['start'](),_0xf80539=execUpgradeSdk(_0xd37e44);_0x49b812[_0x129a3e(0x1b0)](_0xf80539),_0x4646ec[_0xf80539['ok']?_0x129a3e(0x1cb):_0x129a3e(0x1e9)]('Step\x201/2:\x20@lovrabet/sdk\x20—\x20'+(_0xf80539['detail']??(_0xf80539['ok']?_0x129a3e(0x1a0):_0x129a3e(0x197))));const _0x251c13=a213_0xbf568c({'text':_0x129a3e(0x1d0),'color':_0x129a3e(0x1e5)})[_0x129a3e(0x1b2)]();let _0x411775;try{_0x411775=await upgradeProjectApiArchitecture(_0x18cce3);const _0x33b4ff=_0x411775[_0x129a3e(0x1ca)]?_0x129a3e(0x1ce):_0x129a3e(0x1c0);_0x251c13[_0x129a3e(0x1cb)](_0x129a3e(0x1ba)+_0x33b4ff),_0x49b812['push']({'step':0x2,'label':_0x129a3e(0x1a4),'ok':!![],'detail':_0x33b4ff});}catch(_0x393db9){const _0x5ad079=_0x393db9 instanceof Error?_0x393db9[_0x129a3e(0x1d2)]:String(_0x393db9);_0x251c13[_0x129a3e(0x1e9)](_0x129a3e(0x1ba)+_0x5ad079),_0x49b812[_0x129a3e(0x1b0)]({'step':0x2,'label':_0x129a3e(0x1a4),'ok':![],'detail':_0x5ad079});}printSummary(_0x49b812);const _0x8b6297=_0x49b812[_0x129a3e(0x1a6)](_0x4d7f00=>!_0x4d7f00['ok']);if(_0x8b6297)console[_0x129a3e(0x1c1)](a213_0x26a15c['yellow'](_0x129a3e(0x1cd)));else _0x411775?.[_0x129a3e(0x1ca)]?console[_0x129a3e(0x1c1)](a213_0x26a15c[_0x129a3e(0x1ae)](_0x129a3e(0x1e7))):console[_0x129a3e(0x1c1)](a213_0x26a15c[_0x129a3e(0x1da)](_0x129a3e(0x1d6)));return _0xf80539['ok']&&_0xd37e44['sdkUpgrade']&&(console[_0x129a3e(0x1c1)](''),console[_0x129a3e(0x1c1)](a213_0x26a15c[_0x129a3e(0x19f)][_0x129a3e(0x1e5)](_0x129a3e(0x1a2))),console[_0x129a3e(0x1c1)](a213_0x26a15c[_0x129a3e(0x1e5)](_0x129a3e(0x19a))),console[_0x129a3e(0x1c1)](''),console[_0x129a3e(0x1c1)](a213_0x26a15c[_0x129a3e(0x1db)](_0x129a3e(0x1e2))),console[_0x129a3e(0x1c1)](a213_0x26a15c[_0x129a3e(0x1db)](_0x129a3e(0x1b8))),console[_0x129a3e(0x1c1)](a213_0x26a15c[_0x129a3e(0x1db)](_0x129a3e(0x19d))),console[_0x129a3e(0x1c1)]('')),{'analysis':_0xd37e44,'steps':_0x49b812,'apiArchitecture':_0x411775,'completed':!_0x8b6297&&!_0x411775?.[_0x129a3e(0x1ca)]};}
@@ -1 +1 @@
1
- const a203_0x45f462=a203_0x3ec2;(function(_0x746359,_0x1a0f6d){const _0x45495d=a203_0x3ec2,_0x24f1c7=_0x746359();while(!![]){try{const _0x55acd9=parseInt(_0x45495d(0x1ac))/0x1+-parseInt(_0x45495d(0x182))/0x2+-parseInt(_0x45495d(0x1c2))/0x3+-parseInt(_0x45495d(0x1ef))/0x4*(parseInt(_0x45495d(0x1da))/0x5)+-parseInt(_0x45495d(0x1cc))/0x6+-parseInt(_0x45495d(0x190))/0x7*(-parseInt(_0x45495d(0x1cb))/0x8)+parseInt(_0x45495d(0x1e9))/0x9*(parseInt(_0x45495d(0x1f3))/0xa);if(_0x55acd9===_0x1a0f6d)break;else _0x24f1c7['push'](_0x24f1c7['shift']());}catch(_0x36f2a9){_0x24f1c7['push'](_0x24f1c7['shift']());}}}(a203_0xc699,0x49ebf));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dbDefinitions}from'../commands/db/index.js';import{deploymentDefinitions}from'../commands/deployment/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{taskDefinitions}from'../commands/task/index.js';import{tenantDefinitions}from'../commands/tenant/index.js';import{roleDefinitions}from'../commands/role/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{kbDefinitions}from'../commands/kb/index.js';import{ruleDefinitions}from'../commands/rule/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{instantApiPolicyDefinitions}from'../commands/instant-api-policy/index.js';function a203_0x3ec2(_0x3fb460,_0x147a64){_0x3fb460=_0x3fb460-0x182;const _0xc69998=a203_0xc699();let _0x3ec2d2=_0xc69998[_0x3fb460];return _0x3ec2d2;}import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';function a203_0xc699(){const _0x143fb0=['page:react-update','rabetbase\x20kb\x20create','`\x20instead.','4fcieBV','`\x20has\x20been\x20removed.','page:standard-page-status','sql:save','13817210QkXHzZ','Workspace','\x20\x20[','app:add','read','Schema','1041436uZUHNs','skills:','wildcardDef','rabetbase\x20project\x20create\x20<project-name>','Tenant\x20Members','This\x20lifecycle\x20operation\x20is\x20no\x20longer\x20exposed\x20by\x20Rabetbase\x20CLI;\x20no\x20replacement\x20command\x20is\x20available.','defaultCommand','\x20\x20[high-risk-write]','Authentication','Roles','rabetbase\x20workspace\x20use\x20--app\x20<name>','app:use','lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27<json>\x27','Instant\x20API\x20Policy','263319IMWzgR','login','knowledge-base:detail','Dataset\x20&\x20Operations','rabetbase\x20app\x20list\x20--remote','command','skills:install','Run\x20any\x20package.json\x20script','page:custom-create','permit:role-menus-set','rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml','bff:new','hidden','data:getOne','skill:install','rabetbase\x20workspace\x20remove\x20<name>','Notification\x20Configuration','Run\x20Scripts','deployment:sync','service','rabetbase\x20workspace\x20add\x20<name>\x20--appcode\x20<code>','permit:role-apis-set','rabetbase\x20sql\x20create','isSingleCommand','flow:disable','push','Code\x20Generation','Menu','439610kUukGN','logout','\x20\x20[write]','Resource\x20saves\x20are\x20synchronized\x20automatically\x20by\x20the\x20server;\x20no\x20manual\x20CLI\x20replacement\x20is\x20required.','install','rabetbase\x20page\x20create\x20--page-pattern\x20BLANK','set','permit:page-set','Self\x20Update','Runtime\x20App\x20Config\x20Management','permit:role-menus','Logs','risk','Agent\x20Context\x20Rules','menu:update','map','page:react-create','Deployment','rabetbase\x20kb\x20update','rabetbase\x20page\x20custom-update','Platform\x20Issue','Use\x20`','1688574ZbwFjd','page:react-list','description','page:react-detail','from','rabetbase\x20page\x20custom-detail','App\x20Management','`rabetbase\x20','Database\x20Connections','56DHkVwt','2288502felOpJ','filter','page:react-publish','API\x20Development','permit:page-get','rabetbase\x20run\x20build','SQL\x20Queries','commands','rabetbase\x20cli-skill\x20install','data:filter','No\x20executable\x20CLI\x20replacement\x20is\x20available\x20under\x20the\x20current\x20server\x20authentication\x20contract.','File','rabetbase\x20kb\x20delete','Backend\x20Function\x20Scripts','1584370GtEgWk','start','knowledge-base:update','rabetbase\x20page\x20data-list-status','show','get','rabetbase\x20role\x20list','knowledge-base:delete','app:remote','Data\x20List\x20Pages\x20&\x20Custom\x20Pages','Diagnostics','Configuration','rabetbase\x20run\x20preview','role:create','Async\x20Tasks','9RmsWsd','preview','User\x20Accounts'];a203_0xc699=function(){return _0x143fb0;};return a203_0xc699();}import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{fileDefinitions}from'../commands/file/index.js';import{ocrDefinitions}from'../commands/ocr/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{userAccountDefinitions}from'../commands/user-account/index.js';import{flowDefinitions}from'../commands/flow/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0xd82efe){const _0x5ec289=a203_0x3ec2;for(const _0x64c414 of _0xd82efe){definitions[_0x5ec289(0x1b2)](_0x64c414['service']+':'+_0x64c414['command'],_0x64c414);let _0x2ecc40=serviceGroups[_0x5ec289(0x1df)](_0x64c414[_0x5ec289(0x1a3)]);!_0x2ecc40&&(_0x2ecc40=[],serviceGroups[_0x5ec289(0x1b2)](_0x64c414[_0x5ec289(0x1a3)],_0x2ecc40)),_0x2ecc40['push'](_0x64c414);}}function registerDeclarativeService(_0x49a5d4,_0x2f465a,_0x12f300){const _0x47210e=a203_0x3ec2;registerDefinitions(_0x2f465a);_0x12f300?.[_0x47210e(0x184)]&&registerDefinitions([_0x12f300[_0x47210e(0x184)]]);const _0x2e5b40=_0x194284=>_0x194284===_0x47210e(0x1f7)?'':_0x194284==='write'?_0x47210e(0x1ae):_0x47210e(0x189),_0x1a13e1={'service':_0x2f465a[0x0][_0x47210e(0x1a3)],'label':_0x49a5d4,'commands':_0x2f465a[_0x47210e(0x1cd)](_0x37ac60=>!_0x37ac60[_0x47210e(0x19c)])[_0x47210e(0x1bb)](_0x10d84d=>({'command':_0x10d84d[_0x47210e(0x195)],'description':_0x10d84d[_0x47210e(0x1c4)],'tag':_0x2e5b40(_0x10d84d[_0x47210e(0x1b8)])})),'declarative':!![],'defaultCommand':_0x12f300?.[_0x47210e(0x188)]??(_0x12f300?.[_0x47210e(0x1a7)]?_0x2f465a[0x0][_0x47210e(0x195)]:undefined),'wildcardDef':_0x12f300?.[_0x47210e(0x184)],'isSingleCommand':_0x12f300?.[_0x47210e(0x1a7)]};serviceRegistry[_0x47210e(0x1a9)](_0x1a13e1),serviceByName[_0x47210e(0x1b2)](_0x1a13e1[_0x47210e(0x1a3)],_0x1a13e1);}registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a203_0x45f462(0x1f4),workspaceDefinitions),registerDeclarativeService(a203_0x45f462(0x1c8),appDefinitions),registerDeclarativeService(a203_0x45f462(0x18a),authDefinitions,{'defaultCommand':a203_0x45f462(0x191)}),registerDeclarativeService(a203_0x45f462(0x186),tenantDefinitions),registerDeclarativeService(a203_0x45f462(0x1eb),userAccountDefinitions),registerDeclarativeService(a203_0x45f462(0x193),datasetDefinitions),registerDeclarativeService(a203_0x45f462(0x1e3),pageDefinitions),registerDeclarativeService(a203_0x45f462(0x1cf),apiDefinitions),registerDeclarativeService(a203_0x45f462(0x1d9),bffDefinitions),registerDeclarativeService(a203_0x45f462(0x18f),instantApiPolicyDefinitions),registerDeclarativeService(a203_0x45f462(0x1a0),notificationDefinitions),registerDeclarativeService(a203_0x45f462(0x1d2),sqlDefinitions),registerDeclarativeService(a203_0x45f462(0x1ca),dbDefinitions),registerDeclarativeService(a203_0x45f462(0x1bd),deploymentDefinitions),registerDeclarativeService(a203_0x45f462(0x1ab),menuDefinitions),registerDeclarativeService(a203_0x45f462(0x1e8),taskDefinitions),registerDeclarativeService(a203_0x45f462(0x18b),roleDefinitions),registerDeclarativeService(a203_0x45f462(0x1b5),appConfigDefinitions),registerDeclarativeService('Company\x20Knowledge\x20Base',kbDefinitions),registerDeclarativeService(a203_0x45f462(0x1b9),ruleDefinitions),registerDeclarativeService(a203_0x45f462(0x1c0),issueDefinitions),registerDeclarativeService(a203_0x45f462(0x1d7),fileDefinitions),registerDeclarativeService('OCR',ocrDefinitions),registerDeclarativeService(a203_0x45f462(0x1aa),codegenDefinitions),registerDeclarativeService(a203_0x45f462(0x1e5),configDefinitions),registerDeclarativeService(a203_0x45f462(0x1e4),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a203_0x45f462(0x1f8),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a203_0x45f462(0x1b4),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('CLI\x20Built-in\x20Skill',cliSkillDefinitions,{'defaultCommand':a203_0x45f462(0x1b0)}),registerDeclarativeService('Approval\x20Flows',flowDefinitions),registerDeclarativeService(a203_0x45f462(0x1b7),logsDefinitions,{'defaultCommand':a203_0x45f462(0x1de)}),registerDeclarativeService(a203_0x45f462(0x1a1),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry['length']-0x1];last[a203_0x45f462(0x1d3)]=[{'command':'<script>','description':a203_0x45f462(0x197),'tag':a203_0x45f462(0x1f5)+runDefinition[a203_0x45f462(0x1b8)]+']'}];}const REMOVED_COMMAND_REPLACEMENTS=new Map([[a203_0x45f462(0x1f2),a203_0x45f462(0x19a)],[a203_0x45f462(0x19b),'rabetbase\x20bff\x20create'],['sql:new',a203_0x45f462(0x1a6)],[a203_0x45f462(0x1ba),'rabetbase\x20menu\x20asset-update'],['project:init','rabetbase\x20workspace\x20init\x20--appcode\x20<code>'],['skill:','rabetbase\x20cli-skill\x20install'],[a203_0x45f462(0x19e),a203_0x45f462(0x1d4)],[a203_0x45f462(0x183),a203_0x45f462(0x1d4)],[a203_0x45f462(0x196),a203_0x45f462(0x1d4)],[a203_0x45f462(0x1e2),a203_0x45f462(0x194)],[a203_0x45f462(0x18d),a203_0x45f462(0x18c)],[a203_0x45f462(0x1f6),a203_0x45f462(0x1a4)],['app:remove',a203_0x45f462(0x19f)],['knowledge-base:list','rabetbase\x20kb\x20list'],[a203_0x45f462(0x192),'rabetbase\x20kb\x20detail'],['knowledge-base:create',a203_0x45f462(0x1ed)],[a203_0x45f462(0x1dc),a203_0x45f462(0x1be)],[a203_0x45f462(0x1e1),a203_0x45f462(0x1d8)],[a203_0x45f462(0x1e7),a203_0x45f462(0x1e0)],[a203_0x45f462(0x1d5),a203_0x45f462(0x18e)],[a203_0x45f462(0x19d),'lovrabet\x20data\x20getOne\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22id\x22:123}\x27'],[a203_0x45f462(0x1f1),a203_0x45f462(0x1dd)],[a203_0x45f462(0x1bc),a203_0x45f462(0x1b1)],[a203_0x45f462(0x198),a203_0x45f462(0x1b1)],[a203_0x45f462(0x1c3),'rabetbase\x20page\x20custom-list'],[a203_0x45f462(0x1c5),a203_0x45f462(0x1c7)],[a203_0x45f462(0x1ec),a203_0x45f462(0x1bf)],[a203_0x45f462(0x1ce),'rabetbase\x20page\x20custom-publish']]),REMOVED_COMMAND_HINTS=new Map([['flow:enable',a203_0x45f462(0x187)],[a203_0x45f462(0x1a8),a203_0x45f462(0x187)],[a203_0x45f462(0x1a2),a203_0x45f462(0x1af)],[a203_0x45f462(0x1d0),a203_0x45f462(0x1d6)],[a203_0x45f462(0x1b3),a203_0x45f462(0x1d6)],[a203_0x45f462(0x1b6),'No\x20executable\x20CLI\x20replacement\x20is\x20available\x20under\x20the\x20current\x20server\x20authentication\x20contract.'],[a203_0x45f462(0x199),'No\x20executable\x20CLI\x20replacement\x20is\x20available\x20under\x20the\x20current\x20server\x20authentication\x20contract.'],[a203_0x45f462(0x1a5),a203_0x45f462(0x1d6)]]),REMOVED_FLAT_COMMAND_REPLACEMENTS=new Map([['create',a203_0x45f462(0x185)],[a203_0x45f462(0x1db),'rabetbase\x20run\x20start'],['build',a203_0x45f462(0x1d1)],[a203_0x45f462(0x1ea),a203_0x45f462(0x1e6)],[a203_0x45f462(0x1ad),'rabetbase\x20auth\x20logout']]);export function resolveRemovedCommand(_0x5bf0c7,_0x1205e9){const _0x2e7e17=a203_0x45f462;if(!_0x5bf0c7)return undefined;const _0x2cd25a=REMOVED_COMMAND_REPLACEMENTS[_0x2e7e17(0x1df)](_0x5bf0c7+':'+(_0x1205e9??'')),_0x88b28d=REMOVED_FLAT_COMMAND_REPLACEMENTS[_0x2e7e17(0x1df)](_0x5bf0c7),_0x30d7e9=_0x2cd25a??_0x88b28d,_0x838d85=REMOVED_COMMAND_HINTS[_0x2e7e17(0x1df)](_0x5bf0c7+':'+(_0x1205e9??''));if(!_0x30d7e9&&!_0x838d85)return undefined;const _0xc4fc7c=_0x88b28d?_0x5bf0c7:_0x1205e9?_0x5bf0c7+'\x20'+_0x1205e9:_0x5bf0c7;return{'command':_0xc4fc7c,'message':_0x2e7e17(0x1c9)+_0xc4fc7c+_0x2e7e17(0x1f0),'hint':_0x838d85??_0x2e7e17(0x1c1)+_0x30d7e9+_0x2e7e17(0x1ee)};}export function findDefinition(_0x443077,_0x5c4af2){const _0x1086e3=a203_0x45f462;return definitions[_0x1086e3(0x1df)](_0x443077+':'+_0x5c4af2);}export function isKnownService(_0x1ecffd){return serviceByName['has'](_0x1ecffd);}export function isDeclarativeService(_0x41b33f){const _0x4a341e=a203_0x45f462;return serviceGroups['has'](_0x41b33f)||serviceByName[_0x4a341e(0x1df)](_0x41b33f)?.['wildcardDef']!==undefined;}export function getServiceEntry(_0x266b3a){const _0x85ea0d=a203_0x45f462;return serviceByName[_0x85ea0d(0x1df)](_0x266b3a);}export function getLegacyHandler(_0x4ff194,_0x2dee57){return undefined;}export function getAllDefinitions(){const _0x34f17a=a203_0x45f462;return Array[_0x34f17a(0x1c6)](definitions['values']());}
1
+ const a214_0x381998=a214_0x42f0;(function(_0x11d7e8,_0x5ddca3){const _0x49c4f4=a214_0x42f0,_0x487e72=_0x11d7e8();while(!![]){try{const _0xbf844b=-parseInt(_0x49c4f4(0xca))/0x1*(-parseInt(_0x49c4f4(0x81))/0x2)+parseInt(_0x49c4f4(0xa2))/0x3+parseInt(_0x49c4f4(0xa5))/0x4+-parseInt(_0x49c4f4(0x76))/0x5*(-parseInt(_0x49c4f4(0x82))/0x6)+-parseInt(_0x49c4f4(0xa3))/0x7*(-parseInt(_0x49c4f4(0xdd))/0x8)+parseInt(_0x49c4f4(0x8f))/0x9*(parseInt(_0x49c4f4(0xd3))/0xa)+-parseInt(_0x49c4f4(0xbf))/0xb;if(_0xbf844b===_0x5ddca3)break;else _0x487e72['push'](_0x487e72['shift']());}catch(_0x4320c7){_0x487e72['push'](_0x487e72['shift']());}}}(a214_0x4b89,0x1f068));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dbDefinitions}from'../commands/db/index.js';import{deploymentDefinitions}from'../commands/deployment/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{taskDefinitions}from'../commands/task/index.js';import{tenantDefinitions}from'../commands/tenant/index.js';import{roleDefinitions}from'../commands/role/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{kbDefinitions}from'../commands/kb/index.js';import{ruleDefinitions}from'../commands/rule/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{instantApiPolicyDefinitions}from'../commands/instant-api-policy/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{fileDefinitions}from'../commands/file/index.js';import{ocrDefinitions}from'../commands/ocr/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{userAccountDefinitions}from'../commands/user-account/index.js';import{flowDefinitions}from'../commands/flow/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x458b31){const _0x1e50e9=a214_0x42f0;for(const _0xbece80 of _0x458b31){definitions[_0x1e50e9(0xcb)](_0xbece80[_0x1e50e9(0x8a)]+':'+_0xbece80[_0x1e50e9(0xce)],_0xbece80);let _0x1a8c11=serviceGroups['get'](_0xbece80['service']);!_0x1a8c11&&(_0x1a8c11=[],serviceGroups[_0x1e50e9(0xcb)](_0xbece80[_0x1e50e9(0x8a)],_0x1a8c11)),_0x1a8c11[_0x1e50e9(0x9c)](_0xbece80);}}function registerDeclarativeService(_0x556c30,_0x7273b3,_0x3a1349){const _0x1bee49=a214_0x42f0;registerDefinitions(_0x7273b3);_0x3a1349?.[_0x1bee49(0xa8)]&&registerDefinitions([_0x3a1349[_0x1bee49(0xa8)]]);const _0x2db19d=_0x528791=>_0x528791===_0x1bee49(0x86)?'':_0x528791===_0x1bee49(0x9a)?_0x1bee49(0x84):'\x20\x20[high-risk-write]',_0x5e73b5={'service':_0x7273b3[0x0]['service'],'label':_0x556c30,'commands':_0x7273b3[_0x1bee49(0xe6)](_0x3211c2=>!_0x3211c2[_0x1bee49(0xd4)])[_0x1bee49(0xbd)](_0x42c847=>({'command':_0x42c847[_0x1bee49(0xce)],'description':_0x42c847[_0x1bee49(0xb4)],'tag':_0x2db19d(_0x42c847['risk'])})),'declarative':!![],'defaultCommand':_0x3a1349?.[_0x1bee49(0x7b)]??(_0x3a1349?.[_0x1bee49(0xbb)]?_0x7273b3[0x0][_0x1bee49(0xce)]:undefined),'wildcardDef':_0x3a1349?.[_0x1bee49(0xa8)],'isSingleCommand':_0x3a1349?.[_0x1bee49(0xbb)]};serviceRegistry[_0x1bee49(0x9c)](_0x5e73b5),serviceByName[_0x1bee49(0xcb)](_0x5e73b5[_0x1bee49(0x8a)],_0x5e73b5);}function a214_0x42f0(_0x1a16b8,_0x1dcfd8){_0x1a16b8=_0x1a16b8-0x76;const _0x4b89db=a214_0x4b89();let _0x42f031=_0x4b89db[_0x1a16b8];return _0x42f031;}registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a214_0x381998(0x78),workspaceDefinitions),registerDeclarativeService(a214_0x381998(0xb9),appDefinitions),registerDeclarativeService(a214_0x381998(0x8e),authDefinitions,{'defaultCommand':a214_0x381998(0x7a)}),registerDeclarativeService(a214_0x381998(0x8b),tenantDefinitions),registerDeclarativeService(a214_0x381998(0xe0),userAccountDefinitions),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService('Data\x20List\x20Pages\x20&\x20Custom\x20Pages',pageDefinitions),registerDeclarativeService(a214_0x381998(0x90),apiDefinitions),registerDeclarativeService(a214_0x381998(0x7f),bffDefinitions),registerDeclarativeService('Instant\x20API\x20Policy',instantApiPolicyDefinitions),registerDeclarativeService(a214_0x381998(0x87),notificationDefinitions),registerDeclarativeService(a214_0x381998(0xdf),sqlDefinitions),registerDeclarativeService(a214_0x381998(0xa4),dbDefinitions),registerDeclarativeService(a214_0x381998(0xa1),deploymentDefinitions),registerDeclarativeService(a214_0x381998(0xd9),menuDefinitions),registerDeclarativeService(a214_0x381998(0xad),taskDefinitions),registerDeclarativeService(a214_0x381998(0x9b),roleDefinitions),registerDeclarativeService('Runtime\x20App\x20Config\x20Management',appConfigDefinitions),registerDeclarativeService(a214_0x381998(0xb2),kbDefinitions),registerDeclarativeService(a214_0x381998(0x83),ruleDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a214_0x381998(0xa9),fileDefinitions),registerDeclarativeService(a214_0x381998(0x79),ocrDefinitions),registerDeclarativeService('Code\x20Generation',codegenDefinitions),registerDeclarativeService(a214_0x381998(0xb0),configDefinitions),registerDeclarativeService(a214_0x381998(0xe5),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a214_0x381998(0x98),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a214_0x381998(0xc6),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a214_0x381998(0xbe),cliSkillDefinitions,{'defaultCommand':a214_0x381998(0xd7)}),registerDeclarativeService('Approval\x20Flows',flowDefinitions),registerDeclarativeService(a214_0x381998(0xe1),logsDefinitions,{'defaultCommand':a214_0x381998(0xa6)}),registerDeclarativeService(a214_0x381998(0xb6),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a214_0x381998(0x9f)]-0x1];last[a214_0x381998(0xd8)]=[{'command':'<script>','description':'Run\x20any\x20package.json\x20script','tag':'\x20\x20['+runDefinition['risk']+']'}];}const REMOVED_COMMAND_REPLACEMENTS=new Map([['sql:save',a214_0x381998(0x92)],[a214_0x381998(0xc3),a214_0x381998(0xb7)],[a214_0x381998(0x9d),a214_0x381998(0xba)],[a214_0x381998(0x8d),'rabetbase\x20menu\x20asset-update'],[a214_0x381998(0x91),a214_0x381998(0x77)],[a214_0x381998(0xe4),a214_0x381998(0x7c)],[a214_0x381998(0xd2),a214_0x381998(0x7c)],[a214_0x381998(0x93),a214_0x381998(0x7c)],[a214_0x381998(0xaa),'rabetbase\x20cli-skill\x20install'],['app:remote',a214_0x381998(0xb5)],[a214_0x381998(0xc5),'rabetbase\x20workspace\x20use\x20--app\x20<name>'],[a214_0x381998(0xda),a214_0x381998(0x7e)],['app:remove',a214_0x381998(0x95)],[a214_0x381998(0xbc),'rabetbase\x20kb\x20list'],[a214_0x381998(0xb3),a214_0x381998(0xb8)],['knowledge-base:create',a214_0x381998(0xc2)],[a214_0x381998(0xdb),a214_0x381998(0xcc)],[a214_0x381998(0xc4),a214_0x381998(0xc7)],['role:create',a214_0x381998(0xe2)],[a214_0x381998(0x99),'lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27<json>\x27'],[a214_0x381998(0xe3),a214_0x381998(0x8c)],['page:standard-page-status',a214_0x381998(0xd6)],['page:react-create',a214_0x381998(0xb1)],[a214_0x381998(0xc0),a214_0x381998(0xb1)],[a214_0x381998(0xc9),a214_0x381998(0xa7)],[a214_0x381998(0xa0),'rabetbase\x20page\x20custom-detail'],['page:react-update',a214_0x381998(0xde)],['page:react-publish','rabetbase\x20page\x20custom-publish']]),REMOVED_COMMAND_HINTS=new Map([['flow:enable',a214_0x381998(0x88)],['flow:disable','This\x20lifecycle\x20operation\x20is\x20no\x20longer\x20exposed\x20by\x20Rabetbase\x20CLI;\x20no\x20replacement\x20command\x20is\x20available.'],[a214_0x381998(0xaf),a214_0x381998(0xdc)],[a214_0x381998(0xab),a214_0x381998(0x85)],[a214_0x381998(0x9e),a214_0x381998(0x85)],[a214_0x381998(0x7d),a214_0x381998(0x85)],['permit:role-menus-set',a214_0x381998(0x85)],[a214_0x381998(0xd1),a214_0x381998(0x85)]]),REMOVED_FLAT_COMMAND_REPLACEMENTS=new Map([[a214_0x381998(0xae),a214_0x381998(0x96)],[a214_0x381998(0xcf),a214_0x381998(0x89)],[a214_0x381998(0xd5),a214_0x381998(0xac)],[a214_0x381998(0xe7),'rabetbase\x20run\x20preview'],[a214_0x381998(0x97),'rabetbase\x20auth\x20logout']]);export function resolveRemovedCommand(_0x3c1b74,_0x534ae4){const _0x483b47=a214_0x381998;if(!_0x3c1b74)return undefined;const _0x51e196=REMOVED_COMMAND_REPLACEMENTS['get'](_0x3c1b74+':'+(_0x534ae4??'')),_0x332ca2=REMOVED_FLAT_COMMAND_REPLACEMENTS[_0x483b47(0xcd)](_0x3c1b74),_0x4fc76f=_0x51e196??_0x332ca2,_0x1b3888=REMOVED_COMMAND_HINTS[_0x483b47(0xcd)](_0x3c1b74+':'+(_0x534ae4??''));if(!_0x4fc76f&&!_0x1b3888)return undefined;const _0x168656=_0x332ca2?_0x3c1b74:_0x534ae4?_0x3c1b74+'\x20'+_0x534ae4:_0x3c1b74;return{'command':_0x168656,'message':_0x483b47(0x80)+_0x168656+_0x483b47(0xc1),'hint':_0x1b3888??_0x483b47(0xc8)+_0x4fc76f+'`\x20instead.'};}function a214_0x4b89(){const _0x181425=['Menu','app:add','knowledge-base:update','Resource\x20saves\x20are\x20synchronized\x20automatically\x20by\x20the\x20server;\x20no\x20manual\x20CLI\x20replacement\x20is\x20required.','152qFEEav','rabetbase\x20page\x20custom-update','SQL\x20Queries','User\x20Accounts','Logs','rabetbase\x20role\x20list','data:getOne','skill:','Diagnostics','filter','preview','1675DlRaZq','rabetbase\x20workspace\x20init\x20--appcode\x20<code>','Workspace','OCR','login','defaultCommand','rabetbase\x20cli-skill\x20install','permit:role-menus','rabetbase\x20workspace\x20add\x20<name>\x20--appcode\x20<code>','Backend\x20Function\x20Scripts','`rabetbase\x20','4xwimhS','4062gKwUgQ','Agent\x20Context\x20Rules','\x20\x20[write]','No\x20executable\x20CLI\x20replacement\x20is\x20available\x20under\x20the\x20current\x20server\x20authentication\x20contract.','read','Notification\x20Configuration','This\x20lifecycle\x20operation\x20is\x20no\x20longer\x20exposed\x20by\x20Rabetbase\x20CLI;\x20no\x20replacement\x20command\x20is\x20available.','rabetbase\x20run\x20start','service','Tenant\x20Members','lovrabet\x20data\x20getOne\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22id\x22:123}\x27','menu:update','Authentication','9AjNvIo','API\x20Development','project:init','rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml','skills:','values','rabetbase\x20workspace\x20remove\x20<name>','rabetbase\x20project\x20create\x20<project-name>','logout','Schema','data:filter','write','Roles','push','sql:new','permit:page-set','length','page:react-detail','Deployment','76635aSAasD','80129CLtFAq','Database\x20Connections','22224EXkrXm','show','rabetbase\x20page\x20custom-list','wildcardDef','File','skills:install','permit:page-get','rabetbase\x20run\x20build','Async\x20Tasks','create','deployment:sync','Configuration','rabetbase\x20page\x20create\x20--page-pattern\x20BLANK','Company\x20Knowledge\x20Base','knowledge-base:detail','description','rabetbase\x20app\x20list\x20--remote','Run\x20Scripts','rabetbase\x20bff\x20create','rabetbase\x20kb\x20detail','App\x20Management','rabetbase\x20sql\x20create','isSingleCommand','knowledge-base:list','map','CLI\x20Built-in\x20Skill','7614024gJiodw','page:custom-create','`\x20has\x20been\x20removed.','rabetbase\x20kb\x20create','bff:new','knowledge-base:delete','app:use','Self\x20Update','rabetbase\x20kb\x20delete','Use\x20`','page:react-list','70274EYEwAp','set','rabetbase\x20kb\x20update','get','command','start','has','permit:role-apis-set','skill:install','2033270fXNNOP','hidden','build','rabetbase\x20page\x20data-list-status','install','commands'];a214_0x4b89=function(){return _0x181425;};return a214_0x4b89();}export function findDefinition(_0x901e47,_0xcca1f8){const _0x5ed84f=a214_0x381998;return definitions[_0x5ed84f(0xcd)](_0x901e47+':'+_0xcca1f8);}export function isKnownService(_0x2a60e3){const _0x41b5d9=a214_0x381998;return serviceByName[_0x41b5d9(0xd0)](_0x2a60e3);}export function isDeclarativeService(_0xc68f6a){const _0x2db6d6=a214_0x381998;return serviceGroups['has'](_0xc68f6a)||serviceByName[_0x2db6d6(0xcd)](_0xc68f6a)?.[_0x2db6d6(0xa8)]!==undefined;}export function getServiceEntry(_0x38520){const _0x1155af=a214_0x381998;return serviceByName[_0x1155af(0xcd)](_0x38520);}export function getLegacyHandler(_0x3ee2cb,_0xb9c671){return undefined;}export function getAllDefinitions(){const _0x5c957e=a214_0x381998;return Array['from'](definitions[_0x5c957e(0x94)]());}
@@ -1 +1 @@
1
- const a204_0x1ea271=a204_0x18a7;(function(_0x28586c,_0x307f7f){const _0x577f95=a204_0x18a7,_0x1f671d=_0x28586c();while(!![]){try{const _0x15d5c7=-parseInt(_0x577f95(0x120))/0x1*(parseInt(_0x577f95(0x11b))/0x2)+-parseInt(_0x577f95(0x110))/0x3*(parseInt(_0x577f95(0x119))/0x4)+parseInt(_0x577f95(0x11d))/0x5+parseInt(_0x577f95(0x10c))/0x6+parseInt(_0x577f95(0x10f))/0x7*(parseInt(_0x577f95(0x121))/0x8)+parseInt(_0x577f95(0x114))/0x9+parseInt(_0x577f95(0x10d))/0xa;if(_0x15d5c7===_0x307f7f)break;else _0x1f671d['push'](_0x1f671d['shift']());}catch(_0x4aae57){_0x1f671d['push'](_0x1f671d['shift']());}}}(a204_0x3a22,0x54351));import{deleteAppRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a204_0x3a22(){const _0x400ed8=['1999986bdnien','Deleted\x20role\x20','roleName','/smartapi/permit/role/delete','1237284umyydJ','Delete\x20a\x20CUSTOM\x20role\x20(built-in\x20roles\x20rejected);\x20requires\x20--yes','role','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','dev','4bKDevt','num','10ufBFKE','appCode','373095LmrgFl','high-risk-write','POST','37387zwEpoD','111408vxBjFC','\x20(id=','175776HFRHcj','3165230tmTMsM','delete','322GhvDIl'];a204_0x3a22=function(){return _0x400ed8;};return a204_0x3a22();}const DELETE_PATH=a204_0x1ea271(0x113);function a204_0x18a7(_0xe001fa,_0x148ed5){_0xe001fa=_0xe001fa-0x10c;const _0x3a2271=a204_0x3a22();let _0x18a74c=_0x3a2271[_0xe001fa];return _0x18a74c;}export const roleDelete={'service':a204_0x1ea271(0x116),'command':a204_0x1ea271(0x10e),'description':a204_0x1ea271(0x115),'risk':a204_0x1ea271(0x11e),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x3bbd49){const _0x3c587d=a204_0x1ea271,_0x89516c=_0x3bbd49[_0x3c587d(0x11a)]('id'),_0x40ffa8=await getRoleById(_0x3bbd49[_0x3c587d(0x11c)],_0x89516c);return assertCustomRole(_0x40ffa8,_0x3c587d(0x10e)),asDryRunResult({'scope':'dev','operation':_0x3c587d(0x10e),'selector':{'appCode':_0x3bbd49['appCode'],'roleId':_0x89516c,'roleName':_0x40ffa8[_0x3c587d(0x112)]},'before':projectRole(_0x40ffa8),'after':null,'dryRun':!![],'backend':{'method':_0x3c587d(0x11f),'path':DELETE_PATH},'warnings':_0x40ffa8['userCount']>0x0?['Role\x20still\x20has\x20'+_0x40ffa8['userCount']+_0x3c587d(0x117)]:[]},{'method':_0x3c587d(0x11f),'url':DELETE_PATH});},async 'execute'(_0x31b0c8){const _0x5f2696=a204_0x1ea271,_0x57b4e4=_0x31b0c8[_0x5f2696(0x11a)]('id'),_0x534fc7=await getRoleById(_0x31b0c8[_0x5f2696(0x11c)],_0x57b4e4);return assertCustomRole(_0x534fc7,'delete'),await deleteAppRole(_0x57b4e4),{'ok':!![],'data':{'scope':_0x5f2696(0x118),'operation':_0x5f2696(0x10e),'selector':{'appCode':_0x31b0c8[_0x5f2696(0x11c)],'roleId':_0x57b4e4,'roleName':_0x534fc7['roleName']},'before':projectRole(_0x534fc7),'after':null,'dryRun':![],'backend':{'method':_0x5f2696(0x11f),'path':DELETE_PATH},'warnings':[]},'message':_0x5f2696(0x111)+_0x534fc7[_0x5f2696(0x112)]+_0x5f2696(0x122)+_0x57b4e4+')'};}};
1
+ const a215_0x2d9ff5=a215_0x440c;(function(_0x4751ce,_0x4893f3){const _0x45db6c=a215_0x440c,_0x129ab1=_0x4751ce();while(!![]){try{const _0x4e29e3=-parseInt(_0x45db6c(0x123))/0x1+parseInt(_0x45db6c(0x126))/0x2*(-parseInt(_0x45db6c(0x12e))/0x3)+-parseInt(_0x45db6c(0x124))/0x4+parseInt(_0x45db6c(0x11d))/0x5+-parseInt(_0x45db6c(0x11f))/0x6+parseInt(_0x45db6c(0x120))/0x7*(parseInt(_0x45db6c(0x127))/0x8)+parseInt(_0x45db6c(0x12f))/0x9;if(_0x4e29e3===_0x4893f3)break;else _0x129ab1['push'](_0x129ab1['shift']());}catch(_0x39386c){_0x129ab1['push'](_0x129ab1['shift']());}}}(a215_0x42bf,0x2cc5b));import{deleteAppRole}from'../../core/api-client.js';function a215_0x440c(_0x2a815c,_0x2495e9){_0x2a815c=_0x2a815c-0x11d;const _0x42bf2c=a215_0x42bf();let _0x440c56=_0x42bf2c[_0x2a815c];return _0x440c56;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a215_0x42bf(){const _0x5e6be5=['282948VEcNmt','301gfBxdL','/smartapi/permit/role/delete','Delete\x20a\x20CUSTOM\x20role\x20(built-in\x20roles\x20rejected);\x20requires\x20--yes','53524smjASW','1280804ssynAb','roleName','11960OhMKIE','52088ESlZup','userCount','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','dev','POST','delete','role','102XODYYj','2153052rPmvzt','\x20(id=','num','appCode','1441945iTDoZc','Deleted\x20role\x20'];a215_0x42bf=function(){return _0x5e6be5;};return a215_0x42bf();}const DELETE_PATH=a215_0x2d9ff5(0x121);export const roleDelete={'service':a215_0x2d9ff5(0x12d),'command':'delete','description':a215_0x2d9ff5(0x122),'risk':'high-risk-write','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x2a9ee4){const _0x4be009=a215_0x2d9ff5,_0x1baf56=_0x2a9ee4[_0x4be009(0x131)]('id'),_0x525cbb=await getRoleById(_0x2a9ee4['appCode'],_0x1baf56);return assertCustomRole(_0x525cbb,_0x4be009(0x12c)),asDryRunResult({'scope':_0x4be009(0x12a),'operation':_0x4be009(0x12c),'selector':{'appCode':_0x2a9ee4[_0x4be009(0x132)],'roleId':_0x1baf56,'roleName':_0x525cbb['roleName']},'before':projectRole(_0x525cbb),'after':null,'dryRun':!![],'backend':{'method':_0x4be009(0x12b),'path':DELETE_PATH},'warnings':_0x525cbb[_0x4be009(0x128)]>0x0?['Role\x20still\x20has\x20'+_0x525cbb[_0x4be009(0x128)]+_0x4be009(0x129)]:[]},{'method':_0x4be009(0x12b),'url':DELETE_PATH});},async 'execute'(_0x1734da){const _0x2f25a7=a215_0x2d9ff5,_0x47a78f=_0x1734da[_0x2f25a7(0x131)]('id'),_0x3b257b=await getRoleById(_0x1734da[_0x2f25a7(0x132)],_0x47a78f);return assertCustomRole(_0x3b257b,_0x2f25a7(0x12c)),await deleteAppRole(_0x47a78f),{'ok':!![],'data':{'scope':_0x2f25a7(0x12a),'operation':_0x2f25a7(0x12c),'selector':{'appCode':_0x1734da[_0x2f25a7(0x132)],'roleId':_0x47a78f,'roleName':_0x3b257b[_0x2f25a7(0x125)]},'before':projectRole(_0x3b257b),'after':null,'dryRun':![],'backend':{'method':_0x2f25a7(0x12b),'path':DELETE_PATH},'warnings':[]},'message':_0x2f25a7(0x11e)+_0x3b257b[_0x2f25a7(0x125)]+_0x2f25a7(0x130)+_0x47a78f+')'};}};
@@ -1 +1 @@
1
- const a205_0x313fe8=a205_0x3698;(function(_0x16b262,_0x5a8fe3){const _0x2448c3=a205_0x3698,_0x524dd7=_0x16b262();while(!![]){try{const _0x5c8c3c=-parseInt(_0x2448c3(0x13f))/0x1*(-parseInt(_0x2448c3(0x13a))/0x2)+parseInt(_0x2448c3(0x13e))/0x3+parseInt(_0x2448c3(0x135))/0x4+parseInt(_0x2448c3(0x146))/0x5*(parseInt(_0x2448c3(0x13b))/0x6)+-parseInt(_0x2448c3(0x148))/0x7*(-parseInt(_0x2448c3(0x147))/0x8)+-parseInt(_0x2448c3(0x145))/0x9*(parseInt(_0x2448c3(0x13c))/0xa)+-parseInt(_0x2448c3(0x140))/0xb*(parseInt(_0x2448c3(0x143))/0xc);if(_0x5c8c3c===_0x5a8fe3)break;else _0x524dd7['push'](_0x524dd7['shift']());}catch(_0xc2a74b){_0x524dd7['push'](_0x524dd7['shift']());}}}(a205_0x5d04,0xeb5b4));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a205_0x5d04(){const _0x4ef116=['Role\x20','6288084PZCTRJ','detail','roleType','num','read','2rViqly','22056XEyLMt','10KHbKCt','appCode','421179ekxWEJ','769277cmkDYq','2982683kVuUyU','roleName','dev','156XXmLsi','role','3476394pqybgH','1315yIGCVD','16rBTxqW','4993786ZbIgYz'];a205_0x5d04=function(){return _0x4ef116;};return a205_0x5d04();}import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a205_0x3698(_0xd273e8,_0xd6ac70){_0xd273e8=_0xd273e8-0x134;const _0x5d0472=a205_0x5d04();let _0x369828=_0x5d0472[_0xd273e8];return _0x369828;}export const roleDetail={'service':a205_0x313fe8(0x144),'command':a205_0x313fe8(0x136),'description':'Show\x20a\x20single\x20role\x27s\x20detail','risk':a205_0x313fe8(0x139),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x391a62){const _0x1b6c5f=a205_0x313fe8,_0x357c35=_0x391a62[_0x1b6c5f(0x138)]('id'),_0x555fbb=await getRoleById(_0x391a62[_0x1b6c5f(0x13d)],_0x357c35);return{'ok':!![],'data':{'scope':_0x1b6c5f(0x142),'role':projectRole(_0x555fbb)},'message':_0x1b6c5f(0x134)+_0x555fbb[_0x1b6c5f(0x141)]+'\x20('+_0x555fbb[_0x1b6c5f(0x137)]+')'};}};
1
+ const a216_0x171147=a216_0x2b8a;function a216_0x2b8a(_0x4bf6e9,_0x18c568){_0x4bf6e9=_0x4bf6e9-0x80;const _0x45e69b=a216_0x45e6();let _0x2b8a95=_0x45e69b[_0x4bf6e9];return _0x2b8a95;}function a216_0x45e6(){const _0x6303b9=['5889960PsGxpm','4CBYtks','25AjtZRq','22ExZXbp','roleType','355592BdykMT','role','detail','2614548HFFnjD','Show\x20a\x20single\x20role\x27s\x20detail','7338114ZnSybB','21vNmmhz','1788453bdKQbI','843xRnSjk','502rFpPsi','5436AJPUgM','Role\x20'];a216_0x45e6=function(){return _0x6303b9;};return a216_0x45e6();}(function(_0x1f2037,_0x35abb2){const _0x7f97d=a216_0x2b8a,_0x1ba9e3=_0x1f2037();while(!![]){try{const _0x15857e=-parseInt(_0x7f97d(0x88))/0x1*(-parseInt(_0x7f97d(0x89))/0x2)+-parseInt(_0x7f97d(0x87))/0x3*(-parseInt(_0x7f97d(0x8d))/0x4)+-parseInt(_0x7f97d(0x8e))/0x5*(parseInt(_0x7f97d(0x8a))/0x6)+-parseInt(_0x7f97d(0x86))/0x7*(parseInt(_0x7f97d(0x80))/0x8)+parseInt(_0x7f97d(0x85))/0x9+-parseInt(_0x7f97d(0x8c))/0xa+-parseInt(_0x7f97d(0x8f))/0xb*(parseInt(_0x7f97d(0x83))/0xc);if(_0x15857e===_0x35abb2)break;else _0x1ba9e3['push'](_0x1ba9e3['shift']());}catch(_0x4fabf0){_0x1ba9e3['push'](_0x1ba9e3['shift']());}}}(a216_0x45e6,0x706ab));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';export const roleDetail={'service':a216_0x171147(0x81),'command':a216_0x171147(0x82),'description':a216_0x171147(0x84),'risk':'read','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x3bdca3){const _0x29ee1c=a216_0x171147,_0x426c02=_0x3bdca3['num']('id'),_0x14bff5=await getRoleById(_0x3bdca3['appCode'],_0x426c02);return{'ok':!![],'data':{'scope':'dev','role':projectRole(_0x14bff5)},'message':_0x29ee1c(0x8b)+_0x14bff5['roleName']+'\x20('+_0x14bff5[_0x29ee1c(0x90)]+')'};}};
@@ -1 +1 @@
1
- (function(_0x24e555,_0x5224c6){const _0x4d215c=a206_0x4842,_0x24edda=_0x24e555();while(!![]){try{const _0x5789f3=-parseInt(_0x4d215c(0x1a0))/0x1+parseInt(_0x4d215c(0x19d))/0x2+-parseInt(_0x4d215c(0x19b))/0x3*(parseInt(_0x4d215c(0x1a4))/0x4)+parseInt(_0x4d215c(0x19c))/0x5*(-parseInt(_0x4d215c(0x1a1))/0x6)+parseInt(_0x4d215c(0x19e))/0x7*(-parseInt(_0x4d215c(0x19f))/0x8)+parseInt(_0x4d215c(0x19a))/0x9+-parseInt(_0x4d215c(0x1a3))/0xa*(-parseInt(_0x4d215c(0x1a2))/0xb);if(_0x5789f3===_0x5224c6)break;else _0x24edda['push'](_0x24edda['shift']());}catch(_0x30746b){_0x24edda['push'](_0x24edda['shift']());}}}(a206_0x4858,0x979db));import{roleList}from'../../commands/role/list.js';function a206_0x4842(_0x44c937,_0x565e5e){_0x44c937=_0x44c937-0x19a;const _0x485864=a206_0x4858();let _0x4842c3=_0x485864[_0x44c937];return _0x4842c3;}import{roleDetail}from'../../commands/role/detail.js';function a206_0x4858(){const _0x3bab77=['10784115ELhAYH','123JYnoAu','75IqQfKc','123444rmiaeK','329wpHbMo','182432tsfdbt','1051770htgxsJ','479772EKNvXr','1379433BONIZj','240qUurCI','31768ckKwoV'];a206_0x4858=function(){return _0x3bab77;};return a206_0x4858();}import{roleUpdate}from'../../commands/role/update.js';import{roleDelete}from'../../commands/role/delete.js';import{roleUserResolve}from'../../commands/role/user-resolve.js';import{roleUserAdd}from'../../commands/role/user-add.js';import{roleUserRemove}from'../../commands/role/user-remove.js';export const roleDefinitions=[roleList,roleDetail,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
1
+ (function(_0x37564b,_0x30afac){const _0x317d06=a217_0x386b,_0x1442d8=_0x37564b();while(!![]){try{const _0x2031ce=-parseInt(_0x317d06(0x96))/0x1*(parseInt(_0x317d06(0x94))/0x2)+parseInt(_0x317d06(0x93))/0x3+-parseInt(_0x317d06(0x91))/0x4*(-parseInt(_0x317d06(0x90))/0x5)+parseInt(_0x317d06(0x8e))/0x6+parseInt(_0x317d06(0x92))/0x7+-parseInt(_0x317d06(0x8d))/0x8+parseInt(_0x317d06(0x95))/0x9*(-parseInt(_0x317d06(0x8f))/0xa);if(_0x2031ce===_0x30afac)break;else _0x1442d8['push'](_0x1442d8['shift']());}catch(_0x1f7009){_0x1442d8['push'](_0x1442d8['shift']());}}}(a217_0x9d27,0x72c3f));import{roleList}from'../../commands/role/list.js';function a217_0x386b(_0x1c6238,_0x121c16){_0x1c6238=_0x1c6238-0x8d;const _0x9d278b=a217_0x9d27();let _0x386b06=_0x9d278b[_0x1c6238];return _0x386b06;}import{roleDetail}from'../../commands/role/detail.js';function a217_0x9d27(){const _0x50e19d=['173596AaJlrl','6461812aCbVvV','1435125epZsJw','3778CJTqKV','531iAMLMI','373uPBJsx','327256SqdSdM','3437496MkzAQe','135970QliGKW','5gvPkuZ'];a217_0x9d27=function(){return _0x50e19d;};return a217_0x9d27();}import{roleUpdate}from'../../commands/role/update.js';import{roleDelete}from'../../commands/role/delete.js';import{roleUserResolve}from'../../commands/role/user-resolve.js';import{roleUserAdd}from'../../commands/role/user-add.js';import{roleUserRemove}from'../../commands/role/user-remove.js';export const roleDefinitions=[roleList,roleDetail,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
@@ -1 +1 @@
1
- const a207_0x24e629=a207_0x3d78;function a207_0x4e10(){const _0x13014a=['9dNBGgK','string','177aRbgLg','length','\x20role(s)','read','join','91044BpbJjw','page','role','num','trim','Found\x20','toUpperCase','includes','6924235zQtzJF','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','Invalid\x20--type\x20\x22','number','dev','105717lRcCDM','type','Filter\x20by\x20role\x20type','filter','5182384dQduxS','list','validation','20353080xTobyy','Page\x20index\x20(1-based)','CUSTOM','appCode','DEV','350DmmzYY','str','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','1622992dCkjJC','--pagesize\x20must\x20be\x20between\x201\x20and\x20100.','36006ElvKBe','ADMIN','Page\x20size\x20(1-100)','pagesize'];a207_0x4e10=function(){return _0x13014a;};return a207_0x4e10();}(function(_0x52e1e4,_0x1693fe){const _0x1c3c1b=a207_0x3d78,_0x35d13d=_0x52e1e4();while(!![]){try{const _0x253912=-parseInt(_0x1c3c1b(0x12d))/0x1+-parseInt(_0x1c3c1b(0x113))/0x2+parseInt(_0x1c3c1b(0x11b))/0x3*(parseInt(_0x1c3c1b(0x120))/0x4)+-parseInt(_0x1c3c1b(0x128))/0x5+parseInt(_0x1c3c1b(0x115))/0x6*(parseInt(_0x1c3c1b(0x110))/0x7)+-parseInt(_0x1c3c1b(0x131))/0x8*(parseInt(_0x1c3c1b(0x119))/0x9)+parseInt(_0x1c3c1b(0x134))/0xa;if(_0x253912===_0x1693fe)break;else _0x35d13d['push'](_0x35d13d['shift']());}catch(_0x5f24ba){_0x35d13d['push'](_0x35d13d['shift']());}}}(a207_0x4e10,0xb1d4f));import{listAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a207_0x3d78(_0x35674e,_0x48a095){_0x35674e=_0x35674e-0x10c;const _0x4e1019=a207_0x4e10();let _0x3d784=_0x4e1019[_0x35674e];return _0x3d784;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=[a207_0x24e629(0x116),a207_0x24e629(0x10f),'OWNER',a207_0x24e629(0x10d)];export const roleList={'service':a207_0x24e629(0x122),'command':a207_0x24e629(0x132),'description':a207_0x24e629(0x112),'risk':a207_0x24e629(0x11e),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a207_0x24e629(0x12e),'type':a207_0x24e629(0x11a),'required':![],'description':a207_0x24e629(0x12f),'enum':ROLE_TYPES},{'name':a207_0x24e629(0x121),'type':a207_0x24e629(0x12b),'description':a207_0x24e629(0x10c),'default':0x1},{'name':a207_0x24e629(0x118),'type':'number','description':a207_0x24e629(0x117),'default':0x64}],async 'validate'(_0x2260bf){const _0x46b1b2=a207_0x24e629,_0xf8b97f=_0x2260bf[_0x46b1b2(0x111)](_0x46b1b2(0x12e))[_0x46b1b2(0x124)]();if(_0xf8b97f&&!ROLE_TYPES[_0x46b1b2(0x127)](_0xf8b97f['toUpperCase']()))throw CliErrors[_0x46b1b2(0x133)](_0x46b1b2(0x12a)+_0xf8b97f+'\x22.','Use\x20one\x20of:\x20'+ROLE_TYPES[_0x46b1b2(0x11f)](',\x20')+'.');const _0x7b4c10=_0x2260bf[_0x46b1b2(0x123)]('page',0x1),_0x55f1b7=_0x2260bf[_0x46b1b2(0x123)]('pagesize',0x64);if(_0x7b4c10<0x1)throw CliErrors[_0x46b1b2(0x133)](_0x46b1b2(0x129));if(_0x55f1b7<0x1||_0x55f1b7>0x64)throw CliErrors['validation'](_0x46b1b2(0x114));},async 'execute'(_0x725e1e){const _0x44a481=a207_0x24e629,_0xa2107b=_0x725e1e[_0x44a481(0x123)](_0x44a481(0x121),0x1)||0x1,_0x5ca580=_0x725e1e[_0x44a481(0x123)](_0x44a481(0x118),0x64)||0x64,_0x13f6fa=_0x725e1e[_0x44a481(0x111)](_0x44a481(0x12e))[_0x44a481(0x124)]()[_0x44a481(0x126)](),{items:_0x5022c7,paging:_0x4d4204}=await listAppRoles(_0x725e1e[_0x44a481(0x10e)],{'currentPage':_0xa2107b,'pageSize':_0x5ca580}),_0x41fb2f=_0x13f6fa?_0x5022c7[_0x44a481(0x130)](_0x312145=>_0x312145['roleType']===_0x13f6fa):_0x5022c7,_0x4133ff=_0x41fb2f['map'](projectRole);return{'ok':!![],'data':{'scope':_0x44a481(0x12c),'roles':_0x4133ff,'paging':_0x4d4204},'message':_0x44a481(0x125)+_0x4133ff[_0x44a481(0x11c)]+_0x44a481(0x11d)};}};
1
+ const a218_0x31cd80=a218_0xccb8;(function(_0x5e69ae,_0x128491){const _0x5e2bb7=a218_0xccb8,_0x552fd9=_0x5e69ae();while(!![]){try{const _0x206644=-parseInt(_0x5e2bb7(0x1b3))/0x1*(-parseInt(_0x5e2bb7(0x19e))/0x2)+-parseInt(_0x5e2bb7(0x1a0))/0x3*(parseInt(_0x5e2bb7(0x19a))/0x4)+parseInt(_0x5e2bb7(0x1a4))/0x5*(-parseInt(_0x5e2bb7(0x1ad))/0x6)+parseInt(_0x5e2bb7(0x195))/0x7+parseInt(_0x5e2bb7(0x1a5))/0x8*(parseInt(_0x5e2bb7(0x197))/0x9)+parseInt(_0x5e2bb7(0x1b0))/0xa*(-parseInt(_0x5e2bb7(0x1a6))/0xb)+parseInt(_0x5e2bb7(0x1b4))/0xc;if(_0x206644===_0x128491)break;else _0x552fd9['push'](_0x552fd9['shift']());}catch(_0x3c75a5){_0x552fd9['push'](_0x552fd9['shift']());}}}(a218_0x1eee,0xadf2a));import{listAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a218_0xccb8(_0x3a2d02,_0x5839f3){_0x3a2d02=_0x3a2d02-0x192;const _0x1eee43=a218_0x1eee();let _0xccb8f2=_0x1eee43[_0x3a2d02];return _0xccb8f2;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=[a218_0x31cd80(0x199),a218_0x31cd80(0x19f),a218_0x31cd80(0x1ac),a218_0x31cd80(0x1a3)];export const roleList={'service':a218_0x31cd80(0x19c),'command':'list','description':a218_0x31cd80(0x198),'risk':a218_0x31cd80(0x1ab),'flags':[APPCODE_FLAG_OPTIONAL,{'name':a218_0x31cd80(0x1a8),'type':a218_0x31cd80(0x1b9),'required':![],'description':a218_0x31cd80(0x19b),'enum':ROLE_TYPES},{'name':a218_0x31cd80(0x1af),'type':'number','description':a218_0x31cd80(0x196),'default':0x1},{'name':a218_0x31cd80(0x1b7),'type':a218_0x31cd80(0x1b6),'description':'Page\x20size\x20(1-100)','default':0x64}],async 'validate'(_0x237fb6){const _0x30ab30=a218_0x31cd80,_0x3de32c=_0x237fb6[_0x30ab30(0x1a7)](_0x30ab30(0x1a8))[_0x30ab30(0x193)]();if(_0x3de32c&&!ROLE_TYPES[_0x30ab30(0x1b5)](_0x3de32c[_0x30ab30(0x192)]()))throw CliErrors[_0x30ab30(0x19d)](_0x30ab30(0x1ae)+_0x3de32c+'\x22.',_0x30ab30(0x1b2)+ROLE_TYPES['join'](',\x20')+'.');const _0x2291e5=_0x237fb6[_0x30ab30(0x1b8)](_0x30ab30(0x1af),0x1),_0x5f276c=_0x237fb6['num'](_0x30ab30(0x1b7),0x64);if(_0x2291e5<0x1)throw CliErrors[_0x30ab30(0x19d)]('--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.');if(_0x5f276c<0x1||_0x5f276c>0x64)throw CliErrors['validation']('--pagesize\x20must\x20be\x20between\x201\x20and\x20100.');},async 'execute'(_0x190db2){const _0xd40a0e=a218_0x31cd80,_0x14bd49=_0x190db2[_0xd40a0e(0x1b8)]('page',0x1)||0x1,_0x526710=_0x190db2[_0xd40a0e(0x1b8)]('pagesize',0x64)||0x64,_0xcc3975=_0x190db2[_0xd40a0e(0x1a7)]('type')[_0xd40a0e(0x193)]()[_0xd40a0e(0x192)](),{items:_0x1b7fcb,paging:_0x3e5053}=await listAppRoles(_0x190db2['appCode'],{'currentPage':_0x14bd49,'pageSize':_0x526710}),_0x3d72ea=_0xcc3975?_0x1b7fcb[_0xd40a0e(0x1a9)](_0x58c5da=>_0x58c5da[_0xd40a0e(0x1aa)]===_0xcc3975):_0x1b7fcb,_0x222ddb=_0x3d72ea[_0xd40a0e(0x1b1)](projectRole);return{'ok':!![],'data':{'scope':_0xd40a0e(0x194),'roles':_0x222ddb,'paging':_0x3e5053},'message':'Found\x20'+_0x222ddb[_0xd40a0e(0x1a1)]+_0xd40a0e(0x1a2)};}};function a218_0x1eee(){const _0x5ec32f=['318451ybJLmC','Page\x20index\x20(1-based)','189yHEuqM','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','ADMIN','8XKwIQp','Filter\x20by\x20role\x20type','role','validation','612rcoZZS','DEV','976863miJciP','length','\x20role(s)','CUSTOM','489665lIkGZr','395704FlAaVq','11RPfaux','str','type','filter','roleType','read','OWNER','6HZxwPD','Invalid\x20--type\x20\x22','page','5663010DZNZvr','map','Use\x20one\x20of:\x20','969ZjgZGF','7766832plFHYj','includes','number','pagesize','num','string','toUpperCase','trim','dev'];a218_0x1eee=function(){return _0x5ec32f;};return a218_0x1eee();}
@@ -1 +1 @@
1
- const a208_0x55f51d=a208_0x51e0;(function(_0x4c01c2,_0x1dfcdc){const _0x52cd86=a208_0x51e0,_0x3ad327=_0x4c01c2();while(!![]){try{const _0x29d05d=-parseInt(_0x52cd86(0x106))/0x1*(parseInt(_0x52cd86(0x12c))/0x2)+parseInt(_0x52cd86(0x138))/0x3*(parseInt(_0x52cd86(0x13a))/0x4)+-parseInt(_0x52cd86(0x133))/0x5+-parseInt(_0x52cd86(0x135))/0x6+-parseInt(_0x52cd86(0x146))/0x7+-parseInt(_0x52cd86(0x10e))/0x8+parseInt(_0x52cd86(0x14c))/0x9;if(_0x29d05d===_0x1dfcdc)break;else _0x3ad327['push'](_0x3ad327['shift']());}catch(_0x3e81c2){_0x3ad327['push'](_0x3ad327['shift']());}}}(a208_0x8a9f,0x2a144));import{getTenantMembers,listDevUserRoleRelations,listAppRoles}from'../../core/api-client.js';import{getSessionUserInfo}from'../../auth/get-session-user.js';import{CliErrors}from'../../errors.js';export const ROLE_ID_FLAG={'name':'id','type':a208_0x55f51d(0x12a),'required':!![],'description':a208_0x55f51d(0x116)};export const ROLE_REF_FLAG={'name':a208_0x55f51d(0x122),'type':'string','required':!![],'description':a208_0x55f51d(0x13f)};export const USER_REF_FLAG={'name':a208_0x55f51d(0x121),'type':'string','required':!![],'description':'User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId'};export const NAME_FLAG={'name':'name','type':a208_0x55f51d(0x104),'required':!![],'description':a208_0x55f51d(0x151)};function a208_0x51e0(_0x1a711d,_0x2847d4){_0x1a711d=_0x1a711d-0x100;const _0x8a9fd4=a208_0x8a9f();let _0x51e082=_0x8a9fd4[_0x1a711d];return _0x51e082;}function a208_0x8a9f(){const _0x3e79c8=['number','Cannot\x20','72322ufTXPK','roleName','Optional\x20role\x20remark/description','map','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','DEV','ADMIN','1263555gwrNTy','filter','1614504PgHxAK',';\x20no\x20change.','\x22:\x20','661935gxgFoN','POST','4BRSpQS','Pass\x20--role\x20<id|name>.','tenant_code','\x22\x20is\x20ambiguous\x20(ids:\x20','\x20is\x20not\x20a\x20member\x20of\x20role\x20','Role\x20id\x20or\x20exact\x20role\x20name','push','length','includes','expect-user-count','Role\x20name\x20\x22','Disambiguate\x20with\x20--role\x20<id>.','1063496rUDMoU','dryRun','authRequired','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','No\x20tenant\x20member\x20matches\x20\x22','flag','9036144AasLZN','toLowerCase','Missing\x20role\x20reference.','username','\x22\x20not\x20found\x20in\x20app\x20','Role\x20name','dev','validation','userId','\x20built-in\x20role\x20','string','remark','3oIWxSX','str','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','test','trim','totalCount','Missing\x20user\x20reference.','/smartapi/permit/user-role/delete','2160792fffZfd','CUSTOM','appCode','/smartapi/permit/user-role/create','nickname','Pass\x20--user\x20<id|name>.','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','find','Role\x20id\x20(from\x20`role\x20list`)','User\x20','expectUserCount','userCount','Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.','tenant','Check\x20the\x20nickname/username.\x20','user-add','\x20member(s)\x20but\x20role\x20has\x20','roleType','Multiple\x20tenant\x20members\x20match\x20\x22','user','role','\x20members\x20of\x20the\x20OWNER\x20role.','join','Anti-drift\x20check\x20failed:\x20expected\x20','OWNER','\x20duplicate\x20memberships\x20for\x20user\x20','flagMissing','Use\x20the\x20platform\x20ownership-transfer\x20workflow\x20to\x20change\x20the\x20application\x20owner.'];a208_0x8a9f=function(){return _0x3e79c8;};return a208_0x8a9f();}export const USER_NAME_FLAG={'name':'name','type':a208_0x55f51d(0x104),'required':!![],'description':a208_0x55f51d(0x108)};export const REMARK_FLAG={'name':'remark','type':a208_0x55f51d(0x104),'required':![],'description':a208_0x55f51d(0x12e)};export const EXPECT_USER_COUNT_FLAG={'name':a208_0x55f51d(0x143),'type':'number','required':![],'description':a208_0x55f51d(0x130)};export const BUILTIN_ROLE_TYPES=[a208_0x55f51d(0x132),a208_0x55f51d(0x131),a208_0x55f51d(0x126)];export function isBuiltinRole(_0x287b2c){return BUILTIN_ROLE_TYPES['includes'](_0x287b2c);}export function assertCustomRole(_0x2ea38c,_0x42d920){const _0xf31ce3=a208_0x55f51d;if(_0x2ea38c[_0xf31ce3(0x11f)]!==_0xf31ce3(0x10f))throw CliErrors['validation'](_0xf31ce3(0x12b)+_0x42d920+_0xf31ce3(0x103)+_0x2ea38c[_0xf31ce3(0x12d)]+'\x20('+_0x2ea38c[_0xf31ce3(0x11f)]+').',_0xf31ce3(0x149));}export function projectRole(_0x3afb85){const _0x357086=a208_0x55f51d;return{'id':_0x3afb85['id'],'roleName':_0x3afb85[_0x357086(0x12d)],'roleType':_0x3afb85[_0x357086(0x11f)],'remark':_0x3afb85[_0x357086(0x105)],'userCount':_0x3afb85[_0x357086(0x119)],'permitCount':_0x3afb85['permitCount'],'builtin':isBuiltinRole(_0x3afb85['roleType'])};}export async function resolveRoleRef(_0x16dc9e,_0x4c7b1a){const _0x2a25ad=a208_0x55f51d,_0x1ccf76=_0x4c7b1a[_0x2a25ad(0x10a)]();if(!_0x1ccf76)throw CliErrors[_0x2a25ad(0x101)](_0x2a25ad(0x14e),_0x2a25ad(0x13b));if(/^\d+$/[_0x2a25ad(0x109)](_0x1ccf76))return getRoleById(_0x16dc9e,Number(_0x1ccf76));const _0x3f823d=await listAllAppRoles(_0x16dc9e),_0x2da1be=_0x3f823d[_0x2a25ad(0x134)](_0xe46fde=>_0xe46fde[_0x2a25ad(0x12d)]===_0x1ccf76);if(_0x2da1be[_0x2a25ad(0x141)]===0x0)throw CliErrors[_0x2a25ad(0x101)](_0x2a25ad(0x144)+_0x1ccf76+_0x2a25ad(0x150)+_0x16dc9e+'.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.');if(_0x2da1be[_0x2a25ad(0x141)]>0x1){const _0x4d7036=_0x2da1be[_0x2a25ad(0x12f)](_0x97e586=>_0x97e586['id'])[_0x2a25ad(0x124)](',\x20');throw CliErrors[_0x2a25ad(0x101)](_0x2a25ad(0x144)+_0x1ccf76+_0x2a25ad(0x13d)+_0x4d7036+').',_0x2a25ad(0x145));}return _0x2da1be[0x0];}export async function getRoleById(_0x556b68,_0x2a54ad){const _0x2ccd28=a208_0x55f51d,_0x349ae5=await listAllAppRoles(_0x556b68),_0x1c64eb=_0x349ae5[_0x2ccd28(0x134)](_0x4cf2f6=>_0x4cf2f6['id']===_0x2a54ad&&(!_0x4cf2f6[_0x2ccd28(0x110)]||_0x4cf2f6[_0x2ccd28(0x110)]===_0x556b68));if(_0x1c64eb[_0x2ccd28(0x141)]!==0x1)throw CliErrors[_0x2ccd28(0x101)]('Role\x20id\x20'+_0x2a54ad+'\x20not\x20found\x20in\x20app\x20'+_0x556b68+'.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');return _0x1c64eb[0x0];}async function listAllAppRoles(_0x4a01f9){const _0x2f0e6b=a208_0x55f51d,_0xed393c=0x64,_0x29a118=[];for(let _0x22941d=0x1;;_0x22941d+=0x1){const {items:_0x43a125,paging:_0x541966}=await listAppRoles(_0x4a01f9,{'currentPage':_0x22941d,'pageSize':_0xed393c});_0x29a118[_0x2f0e6b(0x140)](..._0x43a125);if(_0x43a125[_0x2f0e6b(0x141)]<_0xed393c||_0x541966&&_0x29a118[_0x2f0e6b(0x141)]>=_0x541966[_0x2f0e6b(0x10b)])return _0x29a118;}}export async function resolveTenantCode(){const _0xdc4173=a208_0x55f51d,_0x538d4c=await getSessionUserInfo(),_0x50b13c=_0x538d4c?.[_0xdc4173(0x121)]?.[_0xdc4173(0x11b)]?.[_0xdc4173(0x13c)];if(!_0x50b13c)throw CliErrors[_0xdc4173(0x148)](_0xdc4173(0x11a));return _0x50b13c;}function matchMember(_0x33b4f8,_0x1b15aa){const _0x5d453d=a208_0x55f51d,_0x58c414=_0x1b15aa['trim']()[_0x5d453d(0x14d)]();return(_0x33b4f8[_0x5d453d(0x112)]??'')[_0x5d453d(0x14d)]()===_0x58c414||(_0x33b4f8[_0x5d453d(0x14f)]??'')[_0x5d453d(0x14d)]()===_0x58c414;}export async function resolveUserRef(_0x37caca,_0x207163='Pass\x20--user\x20<id>.'){const _0x2b8698=a208_0x55f51d,_0x530058=_0x37caca['trim']();if(!_0x530058)throw CliErrors['validation'](_0x2b8698(0x10c),_0x2b8698(0x113));const _0x46fff8=await resolveTenantCode(),_0x3ae13a=await getTenantMembers(_0x46fff8);if(/^\d+$/[_0x2b8698(0x109)](_0x530058)){const _0x12df93=Number(_0x530058),_0x4a28e9=_0x3ae13a[_0x2b8698(0x115)](_0x17bbc6=>_0x17bbc6[_0x2b8698(0x102)]===_0x12df93);return{'userId':_0x12df93,'username':_0x4a28e9?.['username']??String(_0x12df93),'nickname':_0x4a28e9?.['nickname'],'matchedBy':'id'};}const _0x146b85=_0x3ae13a[_0x2b8698(0x134)](_0xeffa9=>matchMember(_0xeffa9,_0x530058));if(_0x146b85[_0x2b8698(0x141)]===0x0)throw CliErrors[_0x2b8698(0x101)](_0x2b8698(0x14a)+_0x530058+'\x22.',_0x2b8698(0x11c)+_0x207163);if(_0x146b85['length']>0x1){const _0x59a385=_0x146b85[_0x2b8698(0x12f)](_0x2af327=>(_0x2af327[_0x2b8698(0x112)]??_0x2af327['username']??'?')+'('+_0x2af327[_0x2b8698(0x102)]+')')[_0x2b8698(0x124)](',\x20');throw CliErrors['validation'](_0x2b8698(0x120)+_0x530058+_0x2b8698(0x137)+_0x59a385+'.',_0x207163);}const _0x54fb1f=_0x146b85[0x0];return{'userId':_0x54fb1f['userId'],'username':_0x54fb1f[_0x2b8698(0x14f)]??String(_0x54fb1f[_0x2b8698(0x102)]),'nickname':_0x54fb1f['nickname'],'matchedBy':'name'};}export const CREATE_USER_ROLE_PATH=a208_0x55f51d(0x111);export const DELETE_USER_ROLE_PATH=a208_0x55f51d(0x10d);export function computeRoleUserMutation(_0x557291){const _0x1e0705=a208_0x55f51d,{operation:_0x5cd0cc,appCode:_0x532dea,role:_0x37491e,relations:_0x68f5b3,user:_0x356e8e}=_0x557291,_0xcf8388=[...new Set(_0x68f5b3['map'](_0x4f299c=>_0x4f299c['userId']))],_0x1f94ea=[];if(_0x557291[_0x1e0705(0x118)]!==undefined&&_0x557291[_0x1e0705(0x118)]!==_0xcf8388[_0x1e0705(0x141)])throw CliErrors[_0x1e0705(0x101)](_0x1e0705(0x125)+_0x557291[_0x1e0705(0x118)]+_0x1e0705(0x11e)+_0xcf8388[_0x1e0705(0x141)]+'.',_0x1e0705(0x114));const _0x31f5c6=_0xcf8388[_0x1e0705(0x142)](_0x356e8e['userId']),_0x442a7b=_0x68f5b3[_0x1e0705(0x134)](_0x18d232=>_0x18d232[_0x1e0705(0x102)]===_0x356e8e[_0x1e0705(0x102)])[_0x1e0705(0x12f)](_0x398970=>_0x398970['id']),_0xaaf42a=_0x5cd0cc===_0x1e0705(0x11d)?!_0x31f5c6:_0x31f5c6;let _0x4b56a8=_0xcf8388;_0x5cd0cc==='user-add'?_0x31f5c6?_0x1f94ea['push']('User\x20'+_0x356e8e['userId']+'\x20is\x20already\x20a\x20member\x20of\x20role\x20'+_0x37491e[_0x1e0705(0x12d)]+_0x1e0705(0x136)):_0x4b56a8=[..._0xcf8388,_0x356e8e[_0x1e0705(0x102)]]:!_0x31f5c6?_0x1f94ea['push'](_0x1e0705(0x117)+_0x356e8e[_0x1e0705(0x102)]+_0x1e0705(0x13e)+_0x37491e[_0x1e0705(0x12d)]+_0x1e0705(0x136)):(_0x4b56a8=_0xcf8388[_0x1e0705(0x134)](_0x260513=>_0x260513!==_0x356e8e[_0x1e0705(0x102)]),_0x442a7b['length']>0x1&&_0x1f94ea[_0x1e0705(0x140)]('Removed\x20'+_0x442a7b[_0x1e0705(0x141)]+_0x1e0705(0x127)+_0x356e8e['userId']+'.'));const _0x8ea234={'scope':_0x1e0705(0x100),'operation':_0x5cd0cc,'selector':{'appCode':_0x532dea,'roleId':_0x37491e['id'],'roleName':_0x37491e[_0x1e0705(0x12d)],'userId':_0x356e8e[_0x1e0705(0x102)]},'before':{'userIds':_0xcf8388},'after':{'userIds':_0x4b56a8},'dryRun':_0x557291[_0x1e0705(0x147)],'backend':{'method':_0x1e0705(0x139),'path':_0x5cd0cc===_0x1e0705(0x11d)?CREATE_USER_ROLE_PATH:DELETE_USER_ROLE_PATH},'warnings':_0x1f94ea};return{'mutation':_0x8ea234,'changed':_0xaaf42a,'matchingRelationIds':_0x442a7b};}export async function loadDevRoleRelations(_0x3a45e4,_0x22778a){const _0x119ea7=a208_0x55f51d,_0x1dc0ce=0x64,_0xc6b901=[];for(let _0x4b7833=0x1;;_0x4b7833+=0x1){const {items:_0x7248fe,paging:_0x210c73}=await listDevUserRoleRelations(_0x3a45e4,{'roleId':_0x22778a,'currentPage':_0x4b7833,'pageSize':_0x1dc0ce});_0xc6b901[_0x119ea7(0x140)](..._0x7248fe);if(_0x7248fe[_0x119ea7(0x141)]<_0x1dc0ce||_0x210c73&&_0xc6b901[_0x119ea7(0x141)]>=_0x210c73[_0x119ea7(0x10b)])return _0xc6b901;}}export function readRoleRef(_0x342ff3){const _0x284645=a208_0x55f51d,_0x56653e=_0x342ff3[_0x284645(0x107)](_0x284645(0x122))['trim']();if(!_0x56653e)throw CliErrors[_0x284645(0x128)](_0x284645(0x122),'Pass\x20--role\x20<id|name>.');return _0x56653e;}export async function prepareUserMutation(_0x184691,_0x540843,_0x5af6f0){const _0x376277=a208_0x55f51d,_0x1ae81e=readRoleRef(_0x184691),_0x1f2b3b=_0x184691[_0x376277(0x107)](_0x376277(0x121))['trim']();if(!_0x1f2b3b)throw CliErrors[_0x376277(0x128)](_0x376277(0x121),_0x376277(0x113));const _0x141aa4=_0x184691[_0x376277(0x14b)](_0x376277(0x143)),_0x31f934=_0x141aa4===undefined||_0x141aa4===null?undefined:Number(_0x141aa4),_0x468ac5=await resolveRoleRef(_0x184691[_0x376277(0x110)],_0x1ae81e);if(_0x468ac5[_0x376277(0x11f)]===_0x376277(0x126))throw CliErrors[_0x376277(0x101)](_0x376277(0x12b)+_0x540843+_0x376277(0x123),_0x376277(0x129));const _0x8d786e=await resolveUserRef(_0x1f2b3b),_0x239724=await loadDevRoleRelations(_0x184691[_0x376277(0x110)],_0x468ac5['id']);return{...computeRoleUserMutation({'operation':_0x540843,'appCode':_0x184691[_0x376277(0x110)],'role':_0x468ac5,'relations':_0x239724,'user':{'userId':_0x8d786e[_0x376277(0x102)],'username':_0x8d786e[_0x376277(0x14f)],'nickname':_0x8d786e[_0x376277(0x112)]},'dryRun':_0x5af6f0,..._0x31f934!==undefined?{'expectUserCount':_0x31f934}:{}}),'role':_0x468ac5,'user':_0x8d786e};}
1
+ const a219_0x2dd7c0=a219_0x354a;(function(_0x1c65c6,_0x209581){const _0x9de42=a219_0x354a,_0xadf87f=_0x1c65c6();while(!![]){try{const _0xd3d6ef=-parseInt(_0x9de42(0x101))/0x1+parseInt(_0x9de42(0xf7))/0x2*(-parseInt(_0x9de42(0x137))/0x3)+-parseInt(_0x9de42(0x125))/0x4+-parseInt(_0x9de42(0x113))/0x5*(-parseInt(_0x9de42(0x112))/0x6)+-parseInt(_0x9de42(0x12e))/0x7+parseInt(_0x9de42(0xf4))/0x8*(parseInt(_0x9de42(0x141))/0x9)+parseInt(_0x9de42(0x131))/0xa;if(_0xd3d6ef===_0x209581)break;else _0xadf87f['push'](_0xadf87f['shift']());}catch(_0x320a8f){_0xadf87f['push'](_0xadf87f['shift']());}}}(a219_0x1796,0xeaf9a));import{getTenantMembers,listDevUserRoleRelations,listAppRoles}from'../../core/api-client.js';import{getSessionUserInfo}from'../../auth/get-session-user.js';import{CliErrors}from'../../errors.js';export const ROLE_ID_FLAG={'name':'id','type':a219_0x2dd7c0(0x11a),'required':!![],'description':a219_0x2dd7c0(0x13b)};export const ROLE_REF_FLAG={'name':a219_0x2dd7c0(0x135),'type':a219_0x2dd7c0(0xfc),'required':!![],'description':a219_0x2dd7c0(0x11b)};export const USER_REF_FLAG={'name':a219_0x2dd7c0(0x105),'type':a219_0x2dd7c0(0xfc),'required':!![],'description':a219_0x2dd7c0(0xfd)};export const NAME_FLAG={'name':a219_0x2dd7c0(0x107),'type':a219_0x2dd7c0(0xfc),'required':!![],'description':a219_0x2dd7c0(0x122)};export const USER_NAME_FLAG={'name':a219_0x2dd7c0(0x107),'type':a219_0x2dd7c0(0xfc),'required':!![],'description':'Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId'};export const REMARK_FLAG={'name':a219_0x2dd7c0(0x10b),'type':a219_0x2dd7c0(0xfc),'required':![],'description':a219_0x2dd7c0(0x142)};export const EXPECT_USER_COUNT_FLAG={'name':a219_0x2dd7c0(0x126),'type':'number','required':![],'description':a219_0x2dd7c0(0x120)};export const BUILTIN_ROLE_TYPES=['ADMIN','DEV',a219_0x2dd7c0(0x128)];export function isBuiltinRole(_0x3ae8c5){return BUILTIN_ROLE_TYPES['includes'](_0x3ae8c5);}export function assertCustomRole(_0x214301,_0x1ef740){const _0x200a24=a219_0x2dd7c0;if(_0x214301[_0x200a24(0xf5)]!=='CUSTOM')throw CliErrors['validation'](_0x200a24(0x12d)+_0x1ef740+_0x200a24(0x13f)+_0x214301['roleName']+'\x20('+_0x214301['roleType']+').',_0x200a24(0x10f));}export function projectRole(_0x49fc49){const _0xe7045e=a219_0x2dd7c0;return{'id':_0x49fc49['id'],'roleName':_0x49fc49['roleName'],'roleType':_0x49fc49[_0xe7045e(0xf5)],'remark':_0x49fc49[_0xe7045e(0x10b)],'userCount':_0x49fc49[_0xe7045e(0x11f)],'permitCount':_0x49fc49[_0xe7045e(0x143)],'builtin':isBuiltinRole(_0x49fc49[_0xe7045e(0xf5)])};}export async function resolveRoleRef(_0x18a1f4,_0x456975){const _0x4fbdb8=a219_0x2dd7c0,_0x2a3af0=_0x456975[_0x4fbdb8(0x10e)]();if(!_0x2a3af0)throw CliErrors['validation'](_0x4fbdb8(0x110),_0x4fbdb8(0xf3));if(/^\d+$/[_0x4fbdb8(0x133)](_0x2a3af0))return getRoleById(_0x18a1f4,Number(_0x2a3af0));const _0x2e2f93=await listAllAppRoles(_0x18a1f4),_0xfcd1b1=_0x2e2f93[_0x4fbdb8(0x111)](_0x4b9b36=>_0x4b9b36[_0x4fbdb8(0xfe)]===_0x2a3af0);if(_0xfcd1b1[_0x4fbdb8(0x136)]===0x0)throw CliErrors[_0x4fbdb8(0x144)](_0x4fbdb8(0x116)+_0x2a3af0+_0x4fbdb8(0x100)+_0x18a1f4+'.',_0x4fbdb8(0x138));if(_0xfcd1b1[_0x4fbdb8(0x136)]>0x1){const _0x5af9d6=_0xfcd1b1['map'](_0x4c1e80=>_0x4c1e80['id'])['join'](',\x20');throw CliErrors[_0x4fbdb8(0x144)](_0x4fbdb8(0x116)+_0x2a3af0+_0x4fbdb8(0xf8)+_0x5af9d6+').',_0x4fbdb8(0x115));}return _0xfcd1b1[0x0];}export async function getRoleById(_0x171aca,_0x435b91){const _0x362eca=a219_0x2dd7c0,_0x20ccd6=await listAllAppRoles(_0x171aca),_0x5a1729=_0x20ccd6[_0x362eca(0x111)](_0x25b41d=>_0x25b41d['id']===_0x435b91&&(!_0x25b41d['appCode']||_0x25b41d[_0x362eca(0x119)]===_0x171aca));if(_0x5a1729[_0x362eca(0x136)]!==0x1)throw CliErrors[_0x362eca(0x144)](_0x362eca(0x12f)+_0x435b91+_0x362eca(0x10a)+_0x171aca+'.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');return _0x5a1729[0x0];}async function listAllAppRoles(_0x3bae43){const _0x464e83=a219_0x2dd7c0,_0x45f4ad=0x64,_0x1a6c52=[];for(let _0x25d255=0x1;;_0x25d255+=0x1){const {items:_0x38a97b,paging:_0x12f7a4}=await listAppRoles(_0x3bae43,{'currentPage':_0x25d255,'pageSize':_0x45f4ad});_0x1a6c52[_0x464e83(0x10c)](..._0x38a97b);if(_0x38a97b[_0x464e83(0x136)]<_0x45f4ad||_0x12f7a4&&_0x1a6c52['length']>=_0x12f7a4[_0x464e83(0x103)])return _0x1a6c52;}}export async function resolveTenantCode(){const _0x3cb929=a219_0x2dd7c0,_0x20654f=await getSessionUserInfo(),_0x3d0dc5=_0x20654f?.[_0x3cb929(0x105)]?.[_0x3cb929(0x13c)]?.[_0x3cb929(0x109)];if(!_0x3d0dc5)throw CliErrors['authRequired']('Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.');return _0x3d0dc5;}function matchMember(_0x5017c9,_0x1fce57){const _0x254150=a219_0x2dd7c0,_0x4ba97b=_0x1fce57[_0x254150(0x10e)]()[_0x254150(0x11c)]();return(_0x5017c9[_0x254150(0x10d)]??'')[_0x254150(0x11c)]()===_0x4ba97b||(_0x5017c9[_0x254150(0xf6)]??'')[_0x254150(0x11c)]()===_0x4ba97b;}export async function resolveUserRef(_0x14b11a,_0x1fc267='Pass\x20--user\x20<id>.'){const _0x22ad8d=a219_0x2dd7c0,_0x3c26bd=_0x14b11a[_0x22ad8d(0x10e)]();if(!_0x3c26bd)throw CliErrors[_0x22ad8d(0x144)](_0x22ad8d(0x118),_0x22ad8d(0x121));const _0x1cce2a=await resolveTenantCode(),_0x410183=await getTenantMembers(_0x1cce2a);if(/^\d+$/['test'](_0x3c26bd)){const _0x405d66=Number(_0x3c26bd),_0x4714c1=_0x410183[_0x22ad8d(0xfa)](_0x264341=>_0x264341[_0x22ad8d(0x106)]===_0x405d66);return{'userId':_0x405d66,'username':_0x4714c1?.[_0x22ad8d(0xf6)]??String(_0x405d66),'nickname':_0x4714c1?.[_0x22ad8d(0x10d)],'matchedBy':'id'};}const _0xb5622e=_0x410183[_0x22ad8d(0x111)](_0x455d36=>matchMember(_0x455d36,_0x3c26bd));if(_0xb5622e[_0x22ad8d(0x136)]===0x0)throw CliErrors[_0x22ad8d(0x144)]('No\x20tenant\x20member\x20matches\x20\x22'+_0x3c26bd+'\x22.',_0x22ad8d(0x102)+_0x1fc267);if(_0xb5622e[_0x22ad8d(0x136)]>0x1){const _0x572848=_0xb5622e[_0x22ad8d(0x123)](_0xe0effd=>(_0xe0effd[_0x22ad8d(0x10d)]??_0xe0effd['username']??'?')+'('+_0xe0effd[_0x22ad8d(0x106)]+')')[_0x22ad8d(0x12c)](',\x20');throw CliErrors[_0x22ad8d(0x144)](_0x22ad8d(0x124)+_0x3c26bd+_0x22ad8d(0xf9)+_0x572848+'.',_0x1fc267);}const _0x46e037=_0xb5622e[0x0];return{'userId':_0x46e037[_0x22ad8d(0x106)],'username':_0x46e037[_0x22ad8d(0xf6)]??String(_0x46e037['userId']),'nickname':_0x46e037[_0x22ad8d(0x10d)],'matchedBy':_0x22ad8d(0x107)};}function a219_0x354a(_0x3345c2,_0x340b41){_0x3345c2=_0x3345c2-0xf3;const _0x1796b6=a219_0x1796();let _0x354a11=_0x1796b6[_0x3345c2];return _0x354a11;}export const CREATE_USER_ROLE_PATH=a219_0x2dd7c0(0x134);function a219_0x1796(){const _0x1a1c6d=['\x20members\x20of\x20the\x20OWNER\x20role.','string','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','roleName','\x20member(s)\x20but\x20role\x20has\x20','\x22\x20not\x20found\x20in\x20app\x20','1176024VCRtov','Check\x20the\x20nickname/username.\x20','totalCount',';\x20no\x20change.','user','userId','name','user-add','tenant_code','\x20not\x20found\x20in\x20app\x20','remark','push','nickname','trim','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','Missing\x20role\x20reference.','filter','18PWYzel','1141765tAvQTS','flagMissing','Disambiguate\x20with\x20--role\x20<id>.','Role\x20name\x20\x22','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','Missing\x20user\x20reference.','appCode','number','Role\x20id\x20or\x20exact\x20role\x20name','toLowerCase','\x20duplicate\x20memberships\x20for\x20user\x20','dryRun','userCount','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','Pass\x20--user\x20<id|name>.','Role\x20name','map','Multiple\x20tenant\x20members\x20match\x20\x22','6023896xNdcII','expect-user-count','Removed\x20','OWNER','Anti-drift\x20check\x20failed:\x20expected\x20','\x20is\x20not\x20a\x20member\x20of\x20role\x20','includes','join','Cannot\x20','4409391PWLcoC','Role\x20id\x20','User\x20','38784740Euicbv','dev','test','/smartapi/permit/user-role/create','role','length','417nfmDGC','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','POST','str','Role\x20id\x20(from\x20`role\x20list`)','tenant','/smartapi/permit/user-role/delete','expectUserCount','\x20built-in\x20role\x20','flag','7777071PpRHJS','Optional\x20role\x20remark/description','permitCount','validation','\x20is\x20already\x20a\x20member\x20of\x20role\x20','Pass\x20--role\x20<id|name>.','8vuWQbD','roleType','username','16594sryDSK','\x22\x20is\x20ambiguous\x20(ids:\x20','\x22:\x20','find'];a219_0x1796=function(){return _0x1a1c6d;};return a219_0x1796();}export const DELETE_USER_ROLE_PATH=a219_0x2dd7c0(0x13d);export function computeRoleUserMutation(_0xe275e){const _0x57c918=a219_0x2dd7c0,{operation:_0x3d9ade,appCode:_0x24ce56,role:_0x1e8231,relations:_0x4b112c,user:_0xeef57b}=_0xe275e,_0x3773f9=[...new Set(_0x4b112c[_0x57c918(0x123)](_0x1961f4=>_0x1961f4[_0x57c918(0x106)]))],_0x48a23a=[];if(_0xe275e[_0x57c918(0x13e)]!==undefined&&_0xe275e[_0x57c918(0x13e)]!==_0x3773f9[_0x57c918(0x136)])throw CliErrors['validation'](_0x57c918(0x129)+_0xe275e[_0x57c918(0x13e)]+_0x57c918(0xff)+_0x3773f9[_0x57c918(0x136)]+'.',_0x57c918(0x117));const _0x2464fa=_0x3773f9[_0x57c918(0x12b)](_0xeef57b['userId']),_0x384388=_0x4b112c['filter'](_0x388467=>_0x388467[_0x57c918(0x106)]===_0xeef57b['userId'])[_0x57c918(0x123)](_0x199319=>_0x199319['id']),_0x3d470d=_0x3d9ade===_0x57c918(0x108)?!_0x2464fa:_0x2464fa;let _0x11636a=_0x3773f9;_0x3d9ade===_0x57c918(0x108)?_0x2464fa?_0x48a23a[_0x57c918(0x10c)](_0x57c918(0x130)+_0xeef57b[_0x57c918(0x106)]+_0x57c918(0x145)+_0x1e8231[_0x57c918(0xfe)]+_0x57c918(0x104)):_0x11636a=[..._0x3773f9,_0xeef57b[_0x57c918(0x106)]]:!_0x2464fa?_0x48a23a[_0x57c918(0x10c)]('User\x20'+_0xeef57b['userId']+_0x57c918(0x12a)+_0x1e8231[_0x57c918(0xfe)]+_0x57c918(0x104)):(_0x11636a=_0x3773f9[_0x57c918(0x111)](_0x586b01=>_0x586b01!==_0xeef57b[_0x57c918(0x106)]),_0x384388[_0x57c918(0x136)]>0x1&&_0x48a23a['push'](_0x57c918(0x127)+_0x384388[_0x57c918(0x136)]+_0x57c918(0x11d)+_0xeef57b[_0x57c918(0x106)]+'.'));const _0x451146={'scope':_0x57c918(0x132),'operation':_0x3d9ade,'selector':{'appCode':_0x24ce56,'roleId':_0x1e8231['id'],'roleName':_0x1e8231[_0x57c918(0xfe)],'userId':_0xeef57b[_0x57c918(0x106)]},'before':{'userIds':_0x3773f9},'after':{'userIds':_0x11636a},'dryRun':_0xe275e[_0x57c918(0x11e)],'backend':{'method':_0x57c918(0x139),'path':_0x3d9ade===_0x57c918(0x108)?CREATE_USER_ROLE_PATH:DELETE_USER_ROLE_PATH},'warnings':_0x48a23a};return{'mutation':_0x451146,'changed':_0x3d470d,'matchingRelationIds':_0x384388};}export async function loadDevRoleRelations(_0x434287,_0x2bdf75){const _0x2485e8=a219_0x2dd7c0,_0xd0ce7d=0x64,_0x5ad91a=[];for(let _0x4fcb8a=0x1;;_0x4fcb8a+=0x1){const {items:_0x4803ec,paging:_0x3575ff}=await listDevUserRoleRelations(_0x434287,{'roleId':_0x2bdf75,'currentPage':_0x4fcb8a,'pageSize':_0xd0ce7d});_0x5ad91a[_0x2485e8(0x10c)](..._0x4803ec);if(_0x4803ec[_0x2485e8(0x136)]<_0xd0ce7d||_0x3575ff&&_0x5ad91a[_0x2485e8(0x136)]>=_0x3575ff[_0x2485e8(0x103)])return _0x5ad91a;}}export function readRoleRef(_0x554a98){const _0x204378=a219_0x2dd7c0,_0x6e4f=_0x554a98['str'](_0x204378(0x135))[_0x204378(0x10e)]();if(!_0x6e4f)throw CliErrors[_0x204378(0x114)]('role','Pass\x20--role\x20<id|name>.');return _0x6e4f;}export async function prepareUserMutation(_0x5588ef,_0x58e66c,_0x1e4882){const _0x3c5de1=a219_0x2dd7c0,_0x31e44f=readRoleRef(_0x5588ef),_0x3a567e=_0x5588ef[_0x3c5de1(0x13a)](_0x3c5de1(0x105))[_0x3c5de1(0x10e)]();if(!_0x3a567e)throw CliErrors[_0x3c5de1(0x114)](_0x3c5de1(0x105),'Pass\x20--user\x20<id|name>.');const _0x183de7=_0x5588ef[_0x3c5de1(0x140)](_0x3c5de1(0x126)),_0x59b077=_0x183de7===undefined||_0x183de7===null?undefined:Number(_0x183de7),_0x20bade=await resolveRoleRef(_0x5588ef[_0x3c5de1(0x119)],_0x31e44f);if(_0x20bade[_0x3c5de1(0xf5)]===_0x3c5de1(0x128))throw CliErrors['validation'](_0x3c5de1(0x12d)+_0x58e66c+_0x3c5de1(0xfb),'Use\x20the\x20platform\x20ownership-transfer\x20workflow\x20to\x20change\x20the\x20application\x20owner.');const _0x453ba7=await resolveUserRef(_0x3a567e),_0x36173a=await loadDevRoleRelations(_0x5588ef[_0x3c5de1(0x119)],_0x20bade['id']);return{...computeRoleUserMutation({'operation':_0x58e66c,'appCode':_0x5588ef['appCode'],'role':_0x20bade,'relations':_0x36173a,'user':{'userId':_0x453ba7[_0x3c5de1(0x106)],'username':_0x453ba7[_0x3c5de1(0xf6)],'nickname':_0x453ba7[_0x3c5de1(0x10d)]},'dryRun':_0x1e4882,..._0x59b077!==undefined?{'expectUserCount':_0x59b077}:{}}),'role':_0x20bade,'user':_0x453ba7};}
@@ -1 +1 @@
1
- const a209_0x2c86db=a209_0x3a7f;function a209_0x19fb(){const _0x251482=['flag','update','217452tLcSPX','string','4178658lhIcWh','remark','name','POST','validation','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','140qidRBM','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','num','\x20(id=','roleName','Updated\x20role\x20','4472010bcXUky','145877BZhbTM','appCode','--name\x20cannot\x20be\x20empty.','10Nmbuol','Nothing\x20to\x20update.','4BPzVNd','dev','2679483dDjYYr','trim','136SqJlpp','10934XmxVjE','2162210IcJUMZ','New\x20role\x20name'];a209_0x19fb=function(){return _0x251482;};return a209_0x19fb();}(function(_0x5eccae,_0x2ccfcd){const _0x3a3d3d=a209_0x3a7f,_0x17b7e1=_0x5eccae();while(!![]){try{const _0x3d2e09=-parseInt(_0x3a3d3d(0x140))/0x1+-parseInt(_0x3a3d3d(0x14b))/0x2+-parseInt(_0x3a3d3d(0x147))/0x3*(-parseInt(_0x3a3d3d(0x145))/0x4)+-parseInt(_0x3a3d3d(0x139))/0x5*(-parseInt(_0x3a3d3d(0x131))/0x6)+-parseInt(_0x3a3d3d(0x14a))/0x7*(-parseInt(_0x3a3d3d(0x149))/0x8)+-parseInt(_0x3a3d3d(0x13f))/0x9+parseInt(_0x3a3d3d(0x143))/0xa*(parseInt(_0x3a3d3d(0x133))/0xb);if(_0x3d2e09===_0x2ccfcd)break;else _0x17b7e1['push'](_0x17b7e1['shift']());}catch(_0x4f6215){_0x17b7e1['push'](_0x17b7e1['shift']());}}}(a209_0x19fb,0x902a1));import{updateAppRole}from'../../core/api-client.js';function a209_0x3a7f(_0x3e76af,_0x2efefb){_0x3e76af=_0x3e76af-0x130;const _0x19fb95=a209_0x19fb();let _0x3a7fb1=_0x19fb95[_0x3e76af];return _0x3a7fb1;}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,REMARK_FLAG,ROLE_ID_FLAG}from'../../commands/role/shared.js';const UPDATE_PATH='/smartapi/permit/role/update';function readPatch(_0x16738f){const _0x5a6ec3=a209_0x3a7f,_0xbd1255=_0x16738f['flag'](_0x5a6ec3(0x135)),_0xd85ea3=_0x16738f[_0x5a6ec3(0x14d)](_0x5a6ec3(0x134)),_0x12ae88={};if(_0xbd1255!==undefined&&_0xbd1255!==null){const _0x1c24a7=String(_0xbd1255)[_0x5a6ec3(0x148)]();if(!_0x1c24a7)throw CliErrors[_0x5a6ec3(0x137)](_0x5a6ec3(0x142));if(_0x1c24a7['length']>0x40)throw CliErrors['validation'](_0x5a6ec3(0x138));_0x12ae88[_0x5a6ec3(0x13d)]=_0x1c24a7;}_0xd85ea3!==undefined&&_0xd85ea3!==null&&(_0x12ae88['remark']=String(_0xd85ea3));if(_0x12ae88[_0x5a6ec3(0x13d)]===undefined&&_0x12ae88['remark']===undefined)throw CliErrors['validation'](_0x5a6ec3(0x144),_0x5a6ec3(0x13a));return _0x12ae88;}export const roleUpdate={'service':'role','command':'update','description':'Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(built-in\x20roles\x20rejected)','risk':'write','flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a209_0x2c86db(0x135),'type':a209_0x2c86db(0x132),'required':![],'description':a209_0x2c86db(0x14c)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3b3d46){readPatch(_0x3b3d46);},async 'dryRun'(_0x24697e){const _0x29771b=a209_0x2c86db,_0x8ea271=_0x24697e['num']('id'),_0x1618a9=readPatch(_0x24697e),_0x4a14b9=await getRoleById(_0x24697e[_0x29771b(0x141)],_0x8ea271);return assertCustomRole(_0x4a14b9,'update'),asDryRunResult({'scope':_0x29771b(0x146),'operation':_0x29771b(0x130),'selector':{'appCode':_0x24697e[_0x29771b(0x141)],'roleId':_0x8ea271,'roleName':_0x4a14b9[_0x29771b(0x13d)]},'before':projectRole(_0x4a14b9),'after':projectRole({..._0x4a14b9,..._0x1618a9[_0x29771b(0x13d)]!==undefined?{'roleName':_0x1618a9[_0x29771b(0x13d)]}:{},..._0x1618a9[_0x29771b(0x134)]!==undefined?{'remark':_0x1618a9['remark']}:{}}),'dryRun':!![],'backend':{'method':_0x29771b(0x136),'path':UPDATE_PATH},'warnings':[]},{'method':_0x29771b(0x136),'url':UPDATE_PATH});},async 'execute'(_0x3e3b58){const _0x33c335=a209_0x2c86db,_0x557bfe=_0x3e3b58[_0x33c335(0x13b)]('id'),_0x5d39b6=readPatch(_0x3e3b58),_0x53df3e=await getRoleById(_0x3e3b58[_0x33c335(0x141)],_0x557bfe);assertCustomRole(_0x53df3e,_0x33c335(0x130)),await updateAppRole({'id':_0x557bfe,'appCode':_0x3e3b58[_0x33c335(0x141)],..._0x5d39b6['roleName']!==undefined?{'roleName':_0x5d39b6[_0x33c335(0x13d)]}:{},..._0x5d39b6[_0x33c335(0x134)]!==undefined?{'remark':_0x5d39b6[_0x33c335(0x134)]}:{}});const _0x421826=await getRoleById(_0x3e3b58[_0x33c335(0x141)],_0x557bfe);return{'ok':!![],'data':{'scope':'dev','operation':_0x33c335(0x130),'selector':{'appCode':_0x3e3b58[_0x33c335(0x141)],'roleId':_0x557bfe,'roleName':_0x421826['roleName']},'before':projectRole(_0x53df3e),'after':projectRole(_0x421826),'dryRun':![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':[]},'message':_0x33c335(0x13e)+_0x421826[_0x33c335(0x13d)]+_0x33c335(0x13c)+_0x557bfe+')'};}};
1
+ const a220_0x87e94d=a220_0x356a;(function(_0x4589c2,_0x25d802){const _0x51c79d=a220_0x356a,_0x2844d3=_0x4589c2();while(!![]){try{const _0x2b2cde=-parseInt(_0x51c79d(0x17d))/0x1*(-parseInt(_0x51c79d(0x183))/0x2)+parseInt(_0x51c79d(0x195))/0x3*(parseInt(_0x51c79d(0x18e))/0x4)+parseInt(_0x51c79d(0x194))/0x5+-parseInt(_0x51c79d(0x191))/0x6+-parseInt(_0x51c79d(0x188))/0x7*(parseInt(_0x51c79d(0x17e))/0x8)+-parseInt(_0x51c79d(0x17c))/0x9*(parseInt(_0x51c79d(0x180))/0xa)+parseInt(_0x51c79d(0x18f))/0xb;if(_0x2b2cde===_0x25d802)break;else _0x2844d3['push'](_0x2844d3['shift']());}catch(_0x45b854){_0x2844d3['push'](_0x2844d3['shift']());}}}(a220_0x4f5d,0x57a81));import{updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a220_0x356a(_0x9d91c1,_0x2d5c94){_0x9d91c1=_0x9d91c1-0x17b;const _0x4f5d14=a220_0x4f5d();let _0x356aef=_0x4f5d14[_0x9d91c1];return _0x356aef;}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 a220_0x4f5d(){const _0x2fce14=['2700817vMIAyr','POST','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','appCode','Updated\x20role\x20','trim','8CSUQJg','8065024BUiYqW','flag','3495456drXbUD','write','num','1764010bYZmKu','301047gXDest','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','update','role','\x20(id=','validation','917379EolYNJ','43490uZSvNd','8GWsXwT','remark','60imctPV','New\x20role\x20name','length','30nWeTRs','dev','roleName','name','--name\x20cannot\x20be\x20empty.'];a220_0x4f5d=function(){return _0x2fce14;};return a220_0x4f5d();}function readPatch(_0x4a43b8){const _0x18337c=a220_0x356a,_0x1f1264=_0x4a43b8['flag']('name'),_0x2c9fe5=_0x4a43b8[_0x18337c(0x190)]('remark'),_0xeef030={};if(_0x1f1264!==undefined&&_0x1f1264!==null){const _0x3063b6=String(_0x1f1264)[_0x18337c(0x18d)]();if(!_0x3063b6)throw CliErrors[_0x18337c(0x17b)](_0x18337c(0x187));if(_0x3063b6[_0x18337c(0x182)]>0x40)throw CliErrors[_0x18337c(0x17b)](_0x18337c(0x18a));_0xeef030[_0x18337c(0x185)]=_0x3063b6;}_0x2c9fe5!==undefined&&_0x2c9fe5!==null&&(_0xeef030[_0x18337c(0x17f)]=String(_0x2c9fe5));if(_0xeef030['roleName']===undefined&&_0xeef030[_0x18337c(0x17f)]===undefined)throw CliErrors[_0x18337c(0x17b)]('Nothing\x20to\x20update.',_0x18337c(0x196));return _0xeef030;}export const roleUpdate={'service':a220_0x87e94d(0x198),'command':a220_0x87e94d(0x197),'description':'Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(built-in\x20roles\x20rejected)','risk':a220_0x87e94d(0x192),'flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a220_0x87e94d(0x186),'type':'string','required':![],'description':a220_0x87e94d(0x181)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x38a30f){readPatch(_0x38a30f);},async 'dryRun'(_0x2ad681){const _0x36c2aa=a220_0x87e94d,_0x2f6969=_0x2ad681[_0x36c2aa(0x193)]('id'),_0x505417=readPatch(_0x2ad681),_0x1b91d4=await getRoleById(_0x2ad681['appCode'],_0x2f6969);return assertCustomRole(_0x1b91d4,_0x36c2aa(0x197)),asDryRunResult({'scope':_0x36c2aa(0x184),'operation':_0x36c2aa(0x197),'selector':{'appCode':_0x2ad681[_0x36c2aa(0x18b)],'roleId':_0x2f6969,'roleName':_0x1b91d4[_0x36c2aa(0x185)]},'before':projectRole(_0x1b91d4),'after':projectRole({..._0x1b91d4,..._0x505417[_0x36c2aa(0x185)]!==undefined?{'roleName':_0x505417[_0x36c2aa(0x185)]}:{},..._0x505417['remark']!==undefined?{'remark':_0x505417[_0x36c2aa(0x17f)]}:{}}),'dryRun':!![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':[]},{'method':'POST','url':UPDATE_PATH});},async 'execute'(_0x5a7d8c){const _0x317449=a220_0x87e94d,_0x238c40=_0x5a7d8c['num']('id'),_0x1f20ba=readPatch(_0x5a7d8c),_0x37d177=await getRoleById(_0x5a7d8c['appCode'],_0x238c40);assertCustomRole(_0x37d177,_0x317449(0x197)),await updateAppRole({'id':_0x238c40,'appCode':_0x5a7d8c[_0x317449(0x18b)],..._0x1f20ba[_0x317449(0x185)]!==undefined?{'roleName':_0x1f20ba[_0x317449(0x185)]}:{},..._0x1f20ba[_0x317449(0x17f)]!==undefined?{'remark':_0x1f20ba[_0x317449(0x17f)]}:{}});const _0x5ec058=await getRoleById(_0x5a7d8c[_0x317449(0x18b)],_0x238c40);return{'ok':!![],'data':{'scope':_0x317449(0x184),'operation':_0x317449(0x197),'selector':{'appCode':_0x5a7d8c['appCode'],'roleId':_0x238c40,'roleName':_0x5ec058[_0x317449(0x185)]},'before':projectRole(_0x37d177),'after':projectRole(_0x5ec058),'dryRun':![],'backend':{'method':_0x317449(0x189),'path':UPDATE_PATH},'warnings':[]},'message':_0x317449(0x18c)+_0x5ec058['roleName']+_0x317449(0x199)+_0x238c40+')'};}};
@@ -1 +1 @@
1
- const a210_0x321388=a210_0x4dd6;(function(_0x28f42a,_0x2fdb2a){const _0x3f2078=a210_0x4dd6,_0x3511c2=_0x28f42a();while(!![]){try{const _0x180f5d=-parseInt(_0x3f2078(0xa6))/0x1*(parseInt(_0x3f2078(0xb5))/0x2)+parseInt(_0x3f2078(0xae))/0x3*(parseInt(_0x3f2078(0xb8))/0x4)+-parseInt(_0x3f2078(0xab))/0x5*(-parseInt(_0x3f2078(0xad))/0x6)+-parseInt(_0x3f2078(0xaa))/0x7+-parseInt(_0x3f2078(0xbb))/0x8+-parseInt(_0x3f2078(0xb4))/0x9+parseInt(_0x3f2078(0xb3))/0xa*(parseInt(_0x3f2078(0xa8))/0xb);if(_0x180f5d===_0x2fdb2a)break;else _0x3511c2['push'](_0x3511c2['shift']());}catch(_0x525317){_0x3511c2['push'](_0x3511c2['shift']());}}}(a210_0x4267,0x1aa6f));import{createDevUserRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a210_0x4267(){const _0x273cf8=['\x20to\x20role\x20','1204OxfuHm','POST','role','808976hFUZIk','username','2qGlonm','user-add','91014YjzwyW','roleId','155757YJEsgD','45ANRXKr','userId','103242qwvIin','21WjxRDJ','No\x20change:\x20user\x20','selector','appCode','roleName','240CPllwb','38916XxUdWv','118682WSXwAL','high-risk-write'];a210_0x4267=function(){return _0x273cf8;};return a210_0x4267();}function a210_0x4dd6(_0xeef622,_0x3eeddf){_0xeef622=_0xeef622-0xa6;const _0x426713=a210_0x4267();let _0x4dd66e=_0x426713[_0xeef622];return _0x4dd66e;}import{EXPECT_USER_COUNT_FLAG,CREATE_USER_ROLE_PATH,prepareUserMutation,ROLE_REF_FLAG,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserAdd={'service':a210_0x321388(0xba),'command':a210_0x321388(0xa7),'description':'Add\x20a\x20user\x20to\x20a\x20role\x20(OWNER\x20rejected);\x20requires\x20--yes','risk':a210_0x321388(0xb6),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x39ece5){const _0x3e83ee=a210_0x321388,{mutation:_0x37a574}=await prepareUserMutation(_0x39ece5,_0x3e83ee(0xa7),!![]);return asDryRunResult(_0x37a574,{'method':_0x3e83ee(0xb9),'url':CREATE_USER_ROLE_PATH});},async 'execute'(_0xd995df){const _0x3d7728=a210_0x321388,{mutation:_0x38d39f,changed:_0x5e1f46,role:_0x302938,user:_0x31c94e}=await prepareUserMutation(_0xd995df,_0x3d7728(0xa7),![]);return _0x5e1f46&&await createDevUserRole({'appCode':_0xd995df[_0x3d7728(0xb1)],'userId':_0x31c94e[_0x3d7728(0xac)],'username':_0x31c94e[_0x3d7728(0xbc)],'roleType':_0x302938['roleType'],'roleId':_0x38d39f[_0x3d7728(0xb0)][_0x3d7728(0xa9)]}),{'ok':!![],'data':_0x38d39f,'message':_0x5e1f46?'Added\x20user\x20'+_0x38d39f[_0x3d7728(0xb0)][_0x3d7728(0xac)]+_0x3d7728(0xb7)+_0x38d39f[_0x3d7728(0xb0)][_0x3d7728(0xb2)]:_0x3d7728(0xaf)+_0x38d39f[_0x3d7728(0xb0)][_0x3d7728(0xac)]+'\x20already\x20in\x20role\x20'+_0x38d39f[_0x3d7728(0xb0)]['roleName']};}};
1
+ const a221_0x1e2b5f=a221_0x5da7;(function(_0x3f3dad,_0x354706){const _0x32bfd7=a221_0x5da7,_0x40a1a5=_0x3f3dad();while(!![]){try{const _0x59dcd6=parseInt(_0x32bfd7(0x10e))/0x1+-parseInt(_0x32bfd7(0x113))/0x2+parseInt(_0x32bfd7(0x11d))/0x3+parseInt(_0x32bfd7(0x120))/0x4+parseInt(_0x32bfd7(0x119))/0x5*(-parseInt(_0x32bfd7(0x111))/0x6)+parseInt(_0x32bfd7(0x115))/0x7+-parseInt(_0x32bfd7(0x112))/0x8*(parseInt(_0x32bfd7(0x11b))/0x9);if(_0x59dcd6===_0x354706)break;else _0x40a1a5['push'](_0x40a1a5['shift']());}catch(_0x44bfed){_0x40a1a5['push'](_0x40a1a5['shift']());}}}(a221_0xccb4,0xea979));function a221_0x5da7(_0x2b830c,_0x3e9333){_0x2b830c=_0x2b830c-0x10e;const _0xccb4f2=a221_0xccb4();let _0x5da7e6=_0xccb4f2[_0x2b830c];return _0x5da7e6;}import{createDevUserRole}from'../../core/api-client.js';function a221_0xccb4(){const _0x27fd47=['roleName','userId','308310wIJzqT','17174624eHXNCU','1640596vcWqXQ','Added\x20user\x20','8317127WZFVaA','selector','roleType','high-risk-write','85XkqziG','user-add','9AXOLDa','username','3915108INKQBm','role','Add\x20a\x20user\x20to\x20a\x20role\x20(OWNER\x20rejected);\x20requires\x20--yes','2843164SSnYhH','roleId','\x20already\x20in\x20role\x20','1597572alpvnD'];a221_0xccb4=function(){return _0x27fd47;};return a221_0xccb4();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,CREATE_USER_ROLE_PATH,prepareUserMutation,ROLE_REF_FLAG,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserAdd={'service':a221_0x1e2b5f(0x11e),'command':a221_0x1e2b5f(0x11a),'description':a221_0x1e2b5f(0x11f),'risk':a221_0x1e2b5f(0x118),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0xd2f127){const {mutation:_0x2911ea}=await prepareUserMutation(_0xd2f127,'user-add',!![]);return asDryRunResult(_0x2911ea,{'method':'POST','url':CREATE_USER_ROLE_PATH});},async 'execute'(_0x1d9665){const _0x5018db=a221_0x1e2b5f,{mutation:_0x580345,changed:_0x3a46e7,role:_0x1ec931,user:_0x306098}=await prepareUserMutation(_0x1d9665,'user-add',![]);return _0x3a46e7&&await createDevUserRole({'appCode':_0x1d9665['appCode'],'userId':_0x306098[_0x5018db(0x110)],'username':_0x306098[_0x5018db(0x11c)],'roleType':_0x1ec931[_0x5018db(0x117)],'roleId':_0x580345[_0x5018db(0x116)][_0x5018db(0x121)]}),{'ok':!![],'data':_0x580345,'message':_0x3a46e7?_0x5018db(0x114)+_0x580345[_0x5018db(0x116)][_0x5018db(0x110)]+'\x20to\x20role\x20'+_0x580345[_0x5018db(0x116)][_0x5018db(0x10f)]:'No\x20change:\x20user\x20'+_0x580345['selector'][_0x5018db(0x110)]+_0x5018db(0x122)+_0x580345[_0x5018db(0x116)][_0x5018db(0x10f)]};}};
@@ -1 +1 @@
1
- const a211_0xdab33c=a211_0x3be2;(function(_0x187d7d,_0x48b12b){const _0x3dcb29=a211_0x3be2,_0x22e1d0=_0x187d7d();while(!![]){try{const _0x18f679=-parseInt(_0x3dcb29(0x1e3))/0x1*(-parseInt(_0x3dcb29(0x1e4))/0x2)+-parseInt(_0x3dcb29(0x1f6))/0x3*(parseInt(_0x3dcb29(0x1e6))/0x4)+parseInt(_0x3dcb29(0x1ed))/0x5*(parseInt(_0x3dcb29(0x1f2))/0x6)+-parseInt(_0x3dcb29(0x1f4))/0x7+parseInt(_0x3dcb29(0x1e9))/0x8+-parseInt(_0x3dcb29(0x1f7))/0x9*(parseInt(_0x3dcb29(0x1e8))/0xa)+-parseInt(_0x3dcb29(0x1e5))/0xb;if(_0x18f679===_0x48b12b)break;else _0x22e1d0['push'](_0x22e1d0['shift']());}catch(_0x5e46b3){_0x22e1d0['push'](_0x22e1d0['shift']());}}}(a211_0x7da6,0x48dc2));import{deleteDevUserRole}from'../../core/api-client.js';function a211_0x7da6(){const _0x45957f=['8KqTlpc','\x20from\x20role\x20','10srCFmP','3493672sKNfqh','userId','high-risk-write','roleName','28075tUXsgU','Removed\x20user\x20','POST','user-remove','\x20not\x20in\x20role\x20','228cYtclx','selector','405209EECdIY','No\x20change:\x20user\x20','474537siNALB','726255xqWZjb','236994IiVTEC','2AcEdNQ','1470689crfrKH'];a211_0x7da6=function(){return _0x45957f;};return a211_0x7da6();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a211_0x3be2(_0x5a6db7,_0x4f18ff){_0x5a6db7=_0x5a6db7-0x1e3;const _0x7da6c0=a211_0x7da6();let _0x3be2ed=_0x7da6c0[_0x5a6db7];return _0x3be2ed;}import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,DELETE_USER_ROLE_PATH,prepareUserMutation,ROLE_REF_FLAG,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserRemove={'service':'role','command':'user-remove','description':'Remove\x20a\x20user\x20from\x20a\x20role\x20(OWNER\x20rejected);\x20requires\x20--yes','risk':a211_0xdab33c(0x1eb),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x152846){const _0x1588d9=a211_0xdab33c,{mutation:_0x135855}=await prepareUserMutation(_0x152846,'user-remove',!![]);return asDryRunResult(_0x135855,{'method':_0x1588d9(0x1ef),'url':DELETE_USER_ROLE_PATH});},async 'execute'(_0x388fd5){const _0x4fefa0=a211_0xdab33c,{matchingRelationIds:_0x43d4fc,mutation:_0x38a983,changed:_0x5da938}=await prepareUserMutation(_0x388fd5,_0x4fefa0(0x1f0),![]);if(_0x5da938)for(const _0x2827f6 of _0x43d4fc){await deleteDevUserRole(_0x2827f6);}return{'ok':!![],'data':_0x38a983,'message':_0x5da938?_0x4fefa0(0x1ee)+_0x38a983[_0x4fefa0(0x1f3)][_0x4fefa0(0x1ea)]+_0x4fefa0(0x1e7)+_0x38a983[_0x4fefa0(0x1f3)][_0x4fefa0(0x1ec)]:_0x4fefa0(0x1f5)+_0x38a983[_0x4fefa0(0x1f3)]['userId']+_0x4fefa0(0x1f1)+_0x38a983[_0x4fefa0(0x1f3)][_0x4fefa0(0x1ec)]};}};
1
+ const a222_0x1355c9=a222_0x8fec;function a222_0x4420(){const _0xea0a52=['5381808hwmXyJ','Removed\x20user\x20','role','2328312SeAsgZ','Remove\x20a\x20user\x20from\x20a\x20role\x20(OWNER\x20rejected);\x20requires\x20--yes','14228ADOILr','POST','1080940WJzjjo','high-risk-write','376978HHbaYl','roleName','user-remove','4203VeuNdD','15970aFmhCD','4158150dKfcmC','selector','2xAHuTP','userId','No\x20change:\x20user\x20','3YXeSDk'];a222_0x4420=function(){return _0xea0a52;};return a222_0x4420();}function a222_0x8fec(_0x60834,_0x2fb9a0){_0x60834=_0x60834-0xc3;const _0x44200e=a222_0x4420();let _0x8fec24=_0x44200e[_0x60834];return _0x8fec24;}(function(_0x2ccd7d,_0x54359a){const _0x49d2da=a222_0x8fec,_0x1d61fe=_0x2ccd7d();while(!![]){try{const _0x10f08c=parseInt(_0x49d2da(0xcc))/0x1*(-parseInt(_0x49d2da(0xd3))/0x2)+parseInt(_0x49d2da(0xd6))/0x3*(parseInt(_0x49d2da(0xc8))/0x4)+-parseInt(_0x49d2da(0xca))/0x5+parseInt(_0x49d2da(0xd1))/0x6+parseInt(_0x49d2da(0xc6))/0x7+parseInt(_0x49d2da(0xc3))/0x8+-parseInt(_0x49d2da(0xcf))/0x9*(parseInt(_0x49d2da(0xd0))/0xa);if(_0x10f08c===_0x54359a)break;else _0x1d61fe['push'](_0x1d61fe['shift']());}catch(_0x53a72f){_0x1d61fe['push'](_0x1d61fe['shift']());}}}(a222_0x4420,0x589cf));import{deleteDevUserRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,DELETE_USER_ROLE_PATH,prepareUserMutation,ROLE_REF_FLAG,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserRemove={'service':a222_0x1355c9(0xc5),'command':a222_0x1355c9(0xce),'description':a222_0x1355c9(0xc7),'risk':a222_0x1355c9(0xcb),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x3d9d94){const _0x30eb20=a222_0x1355c9,{mutation:_0x4b8e4a}=await prepareUserMutation(_0x3d9d94,'user-remove',!![]);return asDryRunResult(_0x4b8e4a,{'method':_0x30eb20(0xc9),'url':DELETE_USER_ROLE_PATH});},async 'execute'(_0x4fdbcc){const _0x2bd7a0=a222_0x1355c9,{matchingRelationIds:_0x438ee1,mutation:_0x5c1b53,changed:_0x2afd25}=await prepareUserMutation(_0x4fdbcc,_0x2bd7a0(0xce),![]);if(_0x2afd25)for(const _0xdc2402 of _0x438ee1){await deleteDevUserRole(_0xdc2402);}return{'ok':!![],'data':_0x5c1b53,'message':_0x2afd25?_0x2bd7a0(0xc4)+_0x5c1b53[_0x2bd7a0(0xd2)][_0x2bd7a0(0xd4)]+'\x20from\x20role\x20'+_0x5c1b53[_0x2bd7a0(0xd2)][_0x2bd7a0(0xcd)]:_0x2bd7a0(0xd5)+_0x5c1b53[_0x2bd7a0(0xd2)][_0x2bd7a0(0xd4)]+'\x20not\x20in\x20role\x20'+_0x5c1b53[_0x2bd7a0(0xd2)][_0x2bd7a0(0xcd)]};}};
@@ -1 +1 @@
1
- const a212_0x5063b2=a212_0x10c6;(function(_0x35f4bf,_0x430caa){const _0x23be0e=a212_0x10c6,_0x285b2f=_0x35f4bf();while(!![]){try{const _0xb009b5=-parseInt(_0x23be0e(0x1b5))/0x1+parseInt(_0x23be0e(0x1b3))/0x2+parseInt(_0x23be0e(0x1be))/0x3*(-parseInt(_0x23be0e(0x1bc))/0x4)+-parseInt(_0x23be0e(0x1c3))/0x5+parseInt(_0x23be0e(0x1af))/0x6*(parseInt(_0x23be0e(0x1ba))/0x7)+-parseInt(_0x23be0e(0x1c5))/0x8*(parseInt(_0x23be0e(0x1b8))/0x9)+-parseInt(_0x23be0e(0x1b0))/0xa*(-parseInt(_0x23be0e(0x1c1))/0xb);if(_0xb009b5===_0x430caa)break;else _0x285b2f['push'](_0x285b2f['shift']());}catch(_0x5e178){_0x285b2f['push'](_0x285b2f['shift']());}}}(a212_0x482a,0x411b6));import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a212_0x10c6(_0x12cb4f,_0x41fcb0){_0x12cb4f=_0x12cb4f-0x1af;const _0x482a99=a212_0x482a();let _0x10c683=_0x482a99[_0x12cb4f];return _0x10c683;}function a212_0x482a(){const _0x1262ca=['1031744zAsaYg','str','504387cQcucI','username','Resolved\x20\x22','72EscuMM','name','2198uwUhkz','nickname','172MOkVhS','userId','30018PHTjWH','Select\x20a\x20listed\x20userId,\x20then\x20pass\x20it\x20to\x20`role\x20user-add`\x20or\x20`role\x20user-remove`\x20with\x20--user\x20<id>.','flagMissing','275yEGCuc','Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','1119450ILihuS','user-resolve','520936ZaiDuu','1158KEYmJE','547870VquTbg','Pass\x20--name\x20<nickname|username>.','role'];a212_0x482a=function(){return _0x1262ca;};return a212_0x482a();}import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';export const roleUserResolve={'service':a212_0x5063b2(0x1b2),'command':a212_0x5063b2(0x1c4),'description':a212_0x5063b2(0x1c2),'risk':'read','flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xbb9045){const _0x899cc9=a212_0x5063b2;if(!_0xbb9045[_0x899cc9(0x1b4)]('name')['trim']())throw CliErrors[_0x899cc9(0x1c0)](_0x899cc9(0x1b9),_0x899cc9(0x1b1));},async 'execute'(_0x44c865){const _0x37cb9d=a212_0x5063b2,_0x1fd096=_0x44c865['str'](_0x37cb9d(0x1b9))['trim'](),_0xc15bb3=await resolveUserRef(_0x1fd096,_0x37cb9d(0x1bf));return{'ok':!![],'data':{'user':{'userId':_0xc15bb3[_0x37cb9d(0x1bd)],'username':_0xc15bb3[_0x37cb9d(0x1b6)],'nickname':_0xc15bb3[_0x37cb9d(0x1bb)],'matchedBy':_0xc15bb3['matchedBy']}},'message':_0x37cb9d(0x1b7)+_0x1fd096+'\x22\x20→\x20userId\x20'+_0xc15bb3['userId']};}};
1
+ const a223_0x41081a=a223_0x1a15;(function(_0x517ae5,_0x14065c){const _0x242672=a223_0x1a15,_0xe7e8d6=_0x517ae5();while(!![]){try{const _0x145e6a=parseInt(_0x242672(0xc1))/0x1+-parseInt(_0x242672(0xb1))/0x2*(-parseInt(_0x242672(0xc0))/0x3)+-parseInt(_0x242672(0xc2))/0x4+-parseInt(_0x242672(0xbb))/0x5+parseInt(_0x242672(0xb6))/0x6*(parseInt(_0x242672(0xb0))/0x7)+-parseInt(_0x242672(0xc5))/0x8*(parseInt(_0x242672(0xb7))/0x9)+parseInt(_0x242672(0xbd))/0xa*(-parseInt(_0x242672(0xb4))/0xb);if(_0x145e6a===_0x14065c)break;else _0xe7e8d6['push'](_0xe7e8d6['shift']());}catch(_0x390397){_0xe7e8d6['push'](_0xe7e8d6['shift']());}}}(a223_0x5a28,0xec4c0));import{CliErrors}from'../../errors.js';function a223_0x1a15(_0x5a9ea3,_0x550afe){_0x5a9ea3=_0x5a9ea3-0xad;const _0x5a28d4=a223_0x5a28();let _0x1a1502=_0x5a28d4[_0x5a9ea3];return _0x1a1502;}function a223_0x5a28(){const _0x549228=['userId','30myTtPw','role','Pass\x20--name\x20<nickname|username>.','25611YYdNFN','1409228URjzZn','4509932bQLgMo','str','Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','22296SKpvlF','nickname','flagMissing','read','35cUyObB','162JFtoPq','\x22\x20→\x20userId\x20','trim','235983iWjsWi','name','1293576aPYHgQ','1008MlYfPJ','username','Select\x20a\x20listed\x20userId,\x20then\x20pass\x20it\x20to\x20`role\x20user-add`\x20or\x20`role\x20user-remove`\x20with\x20--user\x20<id>.','user-resolve','3534235SMaRtT'];a223_0x5a28=function(){return _0x549228;};return a223_0x5a28();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';export const roleUserResolve={'service':a223_0x41081a(0xbe),'command':a223_0x41081a(0xba),'description':a223_0x41081a(0xc4),'risk':a223_0x41081a(0xaf),'flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xa42bd2){const _0x4ea60f=a223_0x41081a;if(!_0xa42bd2[_0x4ea60f(0xc3)](_0x4ea60f(0xb5))[_0x4ea60f(0xb3)]())throw CliErrors[_0x4ea60f(0xae)](_0x4ea60f(0xb5),_0x4ea60f(0xbf));},async 'execute'(_0x613ae5){const _0x4fb13e=a223_0x41081a,_0x4bed35=_0x613ae5[_0x4fb13e(0xc3)](_0x4fb13e(0xb5))[_0x4fb13e(0xb3)](),_0x5bc275=await resolveUserRef(_0x4bed35,_0x4fb13e(0xb9));return{'ok':!![],'data':{'user':{'userId':_0x5bc275[_0x4fb13e(0xbc)],'username':_0x5bc275[_0x4fb13e(0xb8)],'nickname':_0x5bc275[_0x4fb13e(0xad)],'matchedBy':_0x5bc275['matchedBy']}},'message':'Resolved\x20\x22'+_0x4bed35+_0x4fb13e(0xb2)+_0x5bc275[_0x4fb13e(0xbc)]};}};
@@ -1 +1 @@
1
- function a213_0x37f2(_0x5d07d0,_0x3f968e){_0x5d07d0=_0x5d07d0-0x8d;const _0x1a0946=a213_0x1a09();let _0x37f2f7=_0x1a0946[_0x5d07d0];return _0x37f2f7;}const a213_0x13c029=a213_0x37f2;(function(_0x58c844,_0xec35d5){const _0x2d5123=a213_0x37f2,_0x38779d=_0x58c844();while(!![]){try{const _0x3a74b4=-parseInt(_0x2d5123(0x8d))/0x1+-parseInt(_0x2d5123(0x90))/0x2*(-parseInt(_0x2d5123(0x98))/0x3)+-parseInt(_0x2d5123(0x95))/0x4+-parseInt(_0x2d5123(0x9d))/0x5+parseInt(_0x2d5123(0x9c))/0x6+-parseInt(_0x2d5123(0x91))/0x7+-parseInt(_0x2d5123(0x94))/0x8*(-parseInt(_0x2d5123(0x8e))/0x9);if(_0x3a74b4===_0xec35d5)break;else _0x38779d['push'](_0x38779d['shift']());}catch(_0x5ccdbb){_0x38779d['push'](_0x38779d['shift']());}}}(a213_0x1a09,0x66c0b));import{getAppRule}from'../../core/api-client.js';import{APP_RULE_TYPE_FLAG,appRuleError,appRuleFileName,projectAppRule,readAppRuleType}from'../../commands/rule/shared.js';function a213_0x1a09(){const _0x33aa5e=['app_rule_not_found','4616XbbxjD','1659260vURxSB','rule','\x20--file\x20<path>\x20--dry-run`.','15gPmdkp','Loaded\x20','appCode','\x20for\x20','1877130elOEyj','4179845lWjvxL','read','533831VvfonU','26964uZxuIi','\x20is\x20not\x20configured\x20for\x20app\x20','189996uSorhy','2177329jNZLjb','Get\x20one\x20agent\x20context\x20rule\x20for\x20the\x20resolved\x20app'];a213_0x1a09=function(){return _0x33aa5e;};return a213_0x1a09();}export const ruleGet={'service':a213_0x13c029(0x96),'command':'get','description':a213_0x13c029(0x92),'risk':a213_0x13c029(0x9e),'requiresAppCode':!![],'structuredErrors':!![],'flags':[APP_RULE_TYPE_FLAG],async 'validate'(_0x31c729){readAppRuleType(_0x31c729);},async 'execute'(_0x189f54){const _0x48dd70=a213_0x13c029,_0x1a7485=readAppRuleType(_0x189f54),_0x5b026a=await getAppRule(_0x189f54['cookie'],{'appCode':_0x189f54[_0x48dd70(0x9a)],'type':_0x1a7485});if(!_0x5b026a)throw appRuleError(_0x48dd70(0x93),appRuleFileName(_0x1a7485)+_0x48dd70(0x8f)+_0x189f54[_0x48dd70(0x9a)]+'.','Create\x20it\x20with\x20`rabetbase\x20rule\x20set\x20--type\x20'+_0x1a7485+_0x48dd70(0x97));return{'ok':!![],'data':{'rule':{...projectAppRule(_0x1a7485,_0x5b026a),'content':_0x5b026a['content']}},'message':_0x48dd70(0x99)+appRuleFileName(_0x1a7485)+_0x48dd70(0x9b)+_0x189f54[_0x48dd70(0x9a)]};}};
1
+ const a224_0x2dcf14=a224_0x5a96;function a224_0x3136(){const _0x5c85cb=['\x20for\x20','454372Bdvjin','11FlVFRV','15EkOHHH','16lJxHQE','422972Ipwnjj','412360xZBXRx','6kZTnzy','Get\x20one\x20agent\x20context\x20rule\x20for\x20the\x20resolved\x20app','read','Loaded\x20','1044687qpkVYL','app_rule_not_found','\x20is\x20not\x20configured\x20for\x20app\x20','1067562OYGrjh','1287000zlwtNi','\x20--file\x20<path>\x20--dry-run`.','185118AwcvVX','appCode','rule'];a224_0x3136=function(){return _0x5c85cb;};return a224_0x3136();}function a224_0x5a96(_0x48ee4d,_0x571b76){_0x48ee4d=_0x48ee4d-0x184;const _0x31361e=a224_0x3136();let _0x5a96c7=_0x31361e[_0x48ee4d];return _0x5a96c7;}(function(_0x2a8251,_0x59a734){const _0x744327=a224_0x5a96,_0x4038e7=_0x2a8251();while(!![]){try{const _0x26a350=parseInt(_0x744327(0x185))/0x1+parseInt(_0x744327(0x18d))/0x2+-parseInt(_0x744327(0x18b))/0x3*(parseInt(_0x744327(0x189))/0x4)+parseInt(_0x744327(0x197))/0x5+parseInt(_0x744327(0x18f))/0x6*(parseInt(_0x744327(0x193))/0x7)+-parseInt(_0x744327(0x18c))/0x8*(-parseInt(_0x744327(0x196))/0x9)+parseInt(_0x744327(0x18e))/0xa*(-parseInt(_0x744327(0x18a))/0xb);if(_0x26a350===_0x59a734)break;else _0x4038e7['push'](_0x4038e7['shift']());}catch(_0x1efe0b){_0x4038e7['push'](_0x4038e7['shift']());}}}(a224_0x3136,0x694b0));import{getAppRule}from'../../core/api-client.js';import{APP_RULE_TYPE_FLAG,appRuleError,appRuleFileName,projectAppRule,readAppRuleType}from'../../commands/rule/shared.js';export const ruleGet={'service':a224_0x2dcf14(0x187),'command':'get','description':a224_0x2dcf14(0x190),'risk':a224_0x2dcf14(0x191),'requiresAppCode':!![],'structuredErrors':!![],'flags':[APP_RULE_TYPE_FLAG],async 'validate'(_0x525bbe){readAppRuleType(_0x525bbe);},async 'execute'(_0x3c1706){const _0x310989=a224_0x2dcf14,_0x4d7f99=readAppRuleType(_0x3c1706),_0x1432b9=await getAppRule(_0x3c1706['cookie'],{'appCode':_0x3c1706[_0x310989(0x186)],'type':_0x4d7f99});if(!_0x1432b9)throw appRuleError(_0x310989(0x194),appRuleFileName(_0x4d7f99)+_0x310989(0x195)+_0x3c1706['appCode']+'.','Create\x20it\x20with\x20`rabetbase\x20rule\x20set\x20--type\x20'+_0x4d7f99+_0x310989(0x184));return{'ok':!![],'data':{'rule':{...projectAppRule(_0x4d7f99,_0x1432b9),'content':_0x1432b9['content']}},'message':_0x310989(0x192)+appRuleFileName(_0x4d7f99)+_0x310989(0x188)+_0x3c1706['appCode']};}};