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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (435) hide show
  1. package/README.md +4 -10
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.js +1 -1
  11. package/lib/auth/login-success-html.js +1 -1
  12. package/lib/auth/logout.js +1 -1
  13. package/lib/cli-flags.js +1 -1
  14. package/lib/cli.js +1 -1
  15. package/lib/commands/api/generate.js +1 -1
  16. package/lib/commands/api/index.js +1 -1
  17. package/lib/commands/api/list.js +1 -1
  18. package/lib/commands/api/pull.js +1 -1
  19. package/lib/commands/api/shared.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/members-list.js +1 -1
  23. package/lib/commands/app/remote-directory.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/get.js +1 -1
  53. package/lib/commands/config/index.js +1 -1
  54. package/lib/commands/config/list.js +1 -1
  55. package/lib/commands/config/set.js +1 -1
  56. package/lib/commands/config/shared.js +1 -1
  57. package/lib/commands/data/filter.js +1 -1
  58. package/lib/commands/data/getOne.js +1 -1
  59. package/lib/commands/data/index.js +1 -1
  60. package/lib/commands/data/shared.js +1 -1
  61. package/lib/commands/dataset/business-group-update.js +1 -1
  62. package/lib/commands/dataset/capability.js +1 -1
  63. package/lib/commands/dataset/delete.js +1 -1
  64. package/lib/commands/dataset/detail.js +1 -1
  65. package/lib/commands/dataset/extend-update.js +1 -1
  66. package/lib/commands/dataset/field-update.js +1 -1
  67. package/lib/commands/dataset/generate.js +1 -1
  68. package/lib/commands/dataset/index.js +1 -1
  69. package/lib/commands/dataset/list.js +1 -1
  70. package/lib/commands/dataset/operations.js +1 -1
  71. package/lib/commands/dataset/relation-audit.js +1 -1
  72. package/lib/commands/dataset/relation-create.js +1 -1
  73. package/lib/commands/dataset/relation-delete.js +1 -1
  74. package/lib/commands/dataset/relation-shared.js +1 -1
  75. package/lib/commands/dataset/relation-update.js +1 -1
  76. package/lib/commands/dataset/relations.js +1 -1
  77. package/lib/commands/dataset/rename.js +1 -1
  78. package/lib/commands/dataset/restore.js +1 -1
  79. package/lib/commands/db/analysis-batching.js +1 -1
  80. package/lib/commands/db/analyze-batch-plan.js +1 -1
  81. package/lib/commands/db/analyze-cancel.js +1 -1
  82. package/lib/commands/db/analyze-start.js +1 -1
  83. package/lib/commands/db/analyze-status.js +1 -1
  84. package/lib/commands/db/create.js +1 -1
  85. package/lib/commands/db/delete.js +1 -1
  86. package/lib/commands/db/detail.js +1 -1
  87. package/lib/commands/db/diff.js +1 -1
  88. package/lib/commands/db/index.js +1 -1
  89. package/lib/commands/db/list.js +1 -1
  90. package/lib/commands/db/shared.js +1 -1
  91. package/lib/commands/db/tables.js +1 -1
  92. package/lib/commands/db/test.js +1 -1
  93. package/lib/commands/db/update.js +1 -1
  94. package/lib/commands/doctor.js +1 -1
  95. package/lib/commands/file/index.js +1 -1
  96. package/lib/commands/init/index.js +1 -1
  97. package/lib/commands/issue/index.js +1 -1
  98. package/lib/commands/issue/nudge.js +1 -1
  99. package/lib/commands/issue/report.js +1 -1
  100. package/lib/commands/issue/shared.js +1 -1
  101. package/lib/commands/kb/create.js +1 -1
  102. package/lib/commands/kb/delete.js +1 -1
  103. package/lib/commands/kb/detail.js +1 -1
  104. package/lib/commands/kb/index.js +1 -1
  105. package/lib/commands/kb/list.js +1 -1
  106. package/lib/commands/kb/shared.js +1 -1
  107. package/lib/commands/kb/update.js +1 -1
  108. package/lib/commands/logs/index.js +1 -1
  109. package/lib/commands/menu/asset-update.js +1 -1
  110. package/lib/commands/menu/delete.js +1 -1
  111. package/lib/commands/menu/external-link-create.js +1 -1
  112. package/lib/commands/menu/external-link-update.js +1 -1
  113. package/lib/commands/menu/group-create.js +1 -1
  114. package/lib/commands/menu/group-update.js +1 -1
  115. package/lib/commands/menu/index.js +1 -1
  116. package/lib/commands/menu/list.js +1 -1
  117. package/lib/commands/menu/move.js +1 -1
  118. package/lib/commands/menu/regroup-start.js +1 -1
  119. package/lib/commands/menu/rename.js +1 -1
  120. package/lib/commands/menu/shared/compare-table.js +1 -1
  121. package/lib/commands/menu/shared/delete-plan.js +1 -1
  122. package/lib/commands/menu/shared/facts.js +1 -1
  123. package/lib/commands/menu/shared/index.js +1 -1
  124. package/lib/commands/menu/shared/inquirer.js +1 -1
  125. package/lib/commands/menu/shared/local-pages.js +1 -1
  126. package/lib/commands/menu/shared/logic.js +1 -1
  127. package/lib/commands/menu/shared/mutations.js +1 -1
  128. package/lib/commands/menu/shared/service.js +1 -1
  129. package/lib/commands/menu/shared/sync-core.js +1 -1
  130. package/lib/commands/menu/shared/update-core.js +1 -1
  131. package/lib/commands/menu/shared/valid-url.js +1 -1
  132. package/lib/commands/menu/sync.js +1 -1
  133. package/lib/commands/notification/config-list.js +1 -1
  134. package/lib/commands/notification/index.js +1 -1
  135. package/lib/commands/ocr/index.js +1 -1
  136. package/lib/commands/page/generate-start.js +1 -1
  137. package/lib/commands/page/generate-status.js +1 -1
  138. package/lib/commands/page/index.js +1 -1
  139. package/lib/commands/page/pull.js +1 -1
  140. package/lib/commands/page/push.js +1 -1
  141. package/lib/commands/page/react/create.d.ts +2 -0
  142. package/lib/commands/page/react/create.js +1 -0
  143. package/lib/commands/page/react/detail.d.ts +2 -0
  144. package/lib/commands/page/react/detail.js +1 -0
  145. package/lib/commands/page/react/list.d.ts +2 -0
  146. package/lib/commands/page/react/list.js +1 -0
  147. package/lib/commands/page/react/publish.d.ts +2 -0
  148. package/lib/commands/page/react/publish.js +1 -0
  149. package/lib/commands/page/react/shared.d.ts +78 -0
  150. package/lib/commands/page/react/shared.js +1 -0
  151. package/lib/commands/page/react/syntax.d.ts +18 -0
  152. package/lib/commands/page/react/syntax.js +1 -0
  153. package/lib/commands/page/react/template.d.ts +8 -0
  154. package/lib/commands/page/react/template.js +1 -0
  155. package/lib/commands/page/react/update.d.ts +2 -0
  156. package/lib/commands/page/react/update.js +1 -0
  157. package/lib/commands/page/relation-audit.js +1 -1
  158. package/lib/commands/page/restore.js +1 -1
  159. package/lib/commands/page/shared.d.ts +1 -0
  160. package/lib/commands/page/shared.js +1 -1
  161. package/lib/commands/page/standard-page-status.js +1 -1
  162. package/lib/commands/page/sync.js +1 -1
  163. package/lib/commands/permit/index.js +1 -1
  164. package/lib/commands/permit/page-get.js +1 -1
  165. package/lib/commands/permit/page-set.js +1 -1
  166. package/lib/commands/permit/role-apis-set.js +1 -1
  167. package/lib/commands/permit/role-menus-set.js +1 -1
  168. package/lib/commands/permit/role-menus.js +1 -1
  169. package/lib/commands/permit/shared.js +1 -1
  170. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  171. package/lib/commands/project/create/format-elapsed.js +1 -1
  172. package/lib/commands/project/create/main.js +1 -1
  173. package/lib/commands/project/create/non-interactive.js +1 -1
  174. package/lib/commands/project/create/project-template-path.js +1 -1
  175. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  176. package/lib/commands/project/create/use-format-code.js +1 -1
  177. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  178. package/lib/commands/project/index.js +1 -1
  179. package/lib/commands/project/upgrade.js +1 -1
  180. package/lib/commands/registry.js +1 -1
  181. package/lib/commands/role/create.js +1 -1
  182. package/lib/commands/role/delete.js +1 -1
  183. package/lib/commands/role/detail.js +1 -1
  184. package/lib/commands/role/index.js +1 -1
  185. package/lib/commands/role/list.js +1 -1
  186. package/lib/commands/role/shared.js +1 -1
  187. package/lib/commands/role/update.js +1 -1
  188. package/lib/commands/role/user-add.js +1 -1
  189. package/lib/commands/role/user-remove.js +1 -1
  190. package/lib/commands/role/user-resolve.js +1 -1
  191. package/lib/commands/run/index.js +1 -1
  192. package/lib/commands/schema.js +1 -1
  193. package/lib/commands/sql/create.js +1 -1
  194. package/lib/commands/sql/delete.js +1 -1
  195. package/lib/commands/sql/detail.js +1 -1
  196. package/lib/commands/sql/exec.js +1 -1
  197. package/lib/commands/sql/index.js +1 -1
  198. package/lib/commands/sql/list.js +1 -1
  199. package/lib/commands/sql/pull.js +1 -1
  200. package/lib/commands/sql/push.js +1 -1
  201. package/lib/commands/sql/shared.js +1 -1
  202. package/lib/commands/sql/status.js +1 -1
  203. package/lib/commands/sql/validate.js +1 -1
  204. package/lib/commands/task/index.js +1 -1
  205. package/lib/commands/task/status.js +1 -1
  206. package/lib/commands/tenant/index.js +1 -1
  207. package/lib/commands/tenant/members-list.js +1 -1
  208. package/lib/commands/tenant/shared.js +1 -1
  209. package/lib/commands/user-account/dingding-sandbox-bind.d.ts +2 -0
  210. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -0
  211. package/lib/commands/user-account/index.d.ts +2 -0
  212. package/lib/commands/user-account/index.js +1 -0
  213. package/lib/commands/workspace/add.js +1 -1
  214. package/lib/commands/workspace/index.js +1 -1
  215. package/lib/commands/workspace/remove.js +1 -1
  216. package/lib/config/schema.js +1 -1
  217. package/lib/constant/cdn.js +1 -1
  218. package/lib/constant/cli.js +1 -1
  219. package/lib/constant/defaults.js +1 -1
  220. package/lib/constant/domain.js +1 -1
  221. package/lib/constant/env.js +1 -1
  222. package/lib/constant/output.js +1 -1
  223. package/lib/constant/paths.js +1 -1
  224. package/lib/constant/risk.js +1 -1
  225. package/lib/context/app-resolver.js +1 -1
  226. package/lib/context/auth-resolver.js +1 -1
  227. package/lib/context/config-loader.js +1 -1
  228. package/lib/context.js +1 -1
  229. package/lib/core/alias-resolver.js +1 -1
  230. package/lib/core/api-client.d.ts +117 -0
  231. package/lib/core/api-client.js +1 -1
  232. package/lib/core/bff/config.js +1 -1
  233. package/lib/core/bff/file-system.js +1 -1
  234. package/lib/core/bff/hash.js +1 -1
  235. package/lib/core/bff/lock.js +1 -1
  236. package/lib/core/bff/utils.js +1 -1
  237. package/lib/core/db-resolver.js +1 -1
  238. package/lib/core/page/file-system.js +1 -1
  239. package/lib/core/page/hash.js +1 -1
  240. package/lib/core/page/lock.js +1 -1
  241. package/lib/core/sql-index-auditor.js +1 -1
  242. package/lib/core/sql-sync/config.js +1 -1
  243. package/lib/core/sql-sync/file-system.js +1 -1
  244. package/lib/core/sql-sync/hash.js +1 -1
  245. package/lib/core/sql-sync/lock.js +1 -1
  246. package/lib/core/sql-sync/utils.js +1 -1
  247. package/lib/core/sql-validator.js +1 -1
  248. package/lib/errors.js +1 -1
  249. package/lib/framework/build-all-flags.js +1 -1
  250. package/lib/framework/error-output.js +1 -1
  251. package/lib/framework/explicit-yes.js +1 -1
  252. package/lib/framework/flags.js +1 -1
  253. package/lib/framework/help.js +1 -1
  254. package/lib/framework/index.js +1 -1
  255. package/lib/framework/output.js +1 -1
  256. package/lib/framework/response.js +1 -1
  257. package/lib/framework/runner-alias.js +1 -1
  258. package/lib/framework/runner.js +1 -1
  259. package/lib/framework/schema-export.js +1 -1
  260. package/lib/framework/types.js +1 -1
  261. package/lib/generated/build-info.d.ts +4 -4
  262. package/lib/generated/build-info.js +1 -1
  263. package/lib/help.js +1 -1
  264. package/lib/postinstall.d.ts +3 -0
  265. package/lib/postinstall.js +1 -0
  266. package/lib/runtime/confirmation.js +1 -1
  267. package/lib/runtime/event.js +1 -1
  268. package/lib/runtime/index.js +1 -1
  269. package/lib/runtime/queue.js +1 -1
  270. package/lib/runtime/resolve.js +1 -1
  271. package/lib/skills/builtin-skill.d.ts +37 -0
  272. package/lib/skills/builtin-skill.js +1 -0
  273. package/lib/skills/main.js +1 -1
  274. package/lib/skills/npx-skills-add.d.ts +4 -2
  275. package/lib/skills/npx-skills-add.js +1 -1
  276. package/lib/skills/skill-presence.js +1 -1
  277. package/lib/telemetry/cli-command-trace.js +1 -1
  278. package/lib/telemetry/cli-help-trace.js +1 -1
  279. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  280. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  281. package/lib/telemetry/send-cli-trace-log.js +1 -1
  282. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  283. package/lib/utils/ai_config.js +1 -1
  284. package/lib/utils/apply-jq-filter.js +1 -1
  285. package/lib/utils/cdn-config.js +1 -1
  286. package/lib/utils/check-sdk-version.js +1 -1
  287. package/lib/utils/cli-version-check.js +1 -1
  288. package/lib/utils/cli-version-policy.js +1 -1
  289. package/lib/utils/config.js +1 -1
  290. package/lib/utils/copy-directory.js +1 -1
  291. package/lib/utils/entity-with-id.js +1 -1
  292. package/lib/utils/file-utils.js +1 -1
  293. package/lib/utils/guides-cdn.js +1 -1
  294. package/lib/utils/http-client.js +1 -1
  295. package/lib/utils/is-non-interactive.js +1 -1
  296. package/lib/utils/logger.js +1 -1
  297. package/lib/utils/params.js +1 -1
  298. package/lib/utils/platform.js +1 -1
  299. package/lib/utils/rules-cdn.js +1 -1
  300. package/lib/utils/sleep.js +1 -1
  301. package/lib/utils/template-replacer.js +1 -1
  302. package/lib/utils/update-notice.js +1 -1
  303. package/lib/utils/version.js +1 -1
  304. package/lib/utils/with-active-cookie.js +1 -1
  305. package/lib/utils/write-cli-side-channel.js +1 -1
  306. package/package.json +9 -3
  307. package/scripts/postinstall.mjs +24 -0
  308. package/skills/rabetbase/SKILL.md +493 -0
  309. package/skills/rabetbase/guides/backend-function.md +835 -0
  310. package/skills/rabetbase/guides/best-practices.md +137 -0
  311. package/skills/rabetbase/guides/bff-creation-workflow.md +148 -0
  312. package/skills/rabetbase/guides/conflict-detection.md +119 -0
  313. package/skills/rabetbase/guides/data-api-guidelines.md +414 -0
  314. package/skills/rabetbase/guides/database-connection-workflow.md +169 -0
  315. package/skills/rabetbase/guides/frontend-development.md +179 -0
  316. package/skills/rabetbase/guides/legacy-application-blueprint-workflow.md +495 -0
  317. package/skills/rabetbase/guides/menu-anomaly-manual-cleanup.md +137 -0
  318. package/skills/rabetbase/guides/page-development-workflow.md +187 -0
  319. package/skills/rabetbase/guides/react-custom-page-workflow.md +184 -0
  320. package/skills/rabetbase/guides/role-permit-workflow.md +127 -0
  321. package/skills/rabetbase/guides/sql-creation-workflow.md +173 -0
  322. package/skills/rabetbase/guides/sql-mybatis.md +126 -0
  323. package/skills/rabetbase/guides/troubleshooting.md +67 -0
  324. package/skills/rabetbase/guides/typescript-sdk.md +227 -0
  325. package/skills/rabetbase/knowledge/page-schema/LrSmartCreate.md +367 -0
  326. package/skills/rabetbase/knowledge/page-schema/LrSmartDetail.md +153 -0
  327. package/skills/rabetbase/knowledge/page-schema/LrSmartEcharts.md +291 -0
  328. package/skills/rabetbase/knowledge/page-schema/LrSmartFilter.md +478 -0
  329. package/skills/rabetbase/knowledge/page-schema/LrSmartJsx.md +119 -0
  330. package/skills/rabetbase/knowledge/page-schema/LrSmartStatistic.md +223 -0
  331. package/skills/rabetbase/knowledge/page-schema/LrSmartTable.md +632 -0
  332. package/skills/rabetbase/knowledge/page-schema/YtPage.md +172 -0
  333. package/skills/rabetbase/knowledge/page-schema/dataset-relations.md +126 -0
  334. package/skills/rabetbase/knowledge/page-schema/external-resources-usage.md +232 -0
  335. package/skills/rabetbase/knowledge/page-schema/field-components.md +312 -0
  336. package/skills/rabetbase/knowledge/page-schema/syntax-reference.md +278 -0
  337. package/skills/rabetbase/knowledge/react-page/components.md +225 -0
  338. package/skills/rabetbase/knowledge/react-page/generation-standards.md +385 -0
  339. package/skills/rabetbase/references/rabetbase-api-list.md +58 -0
  340. package/skills/rabetbase/references/rabetbase-api-pull.md +82 -0
  341. package/skills/rabetbase/references/rabetbase-app-config.md +95 -0
  342. package/skills/rabetbase/references/rabetbase-app-list.md +79 -0
  343. package/skills/rabetbase/references/rabetbase-app-members-list.md +64 -0
  344. package/skills/rabetbase/references/rabetbase-auth-login.md +53 -0
  345. package/skills/rabetbase/references/rabetbase-auth-logout.md +29 -0
  346. package/skills/rabetbase/references/rabetbase-bff-create.md +59 -0
  347. package/skills/rabetbase/references/rabetbase-bff-delete.md +42 -0
  348. package/skills/rabetbase/references/rabetbase-bff-detail.md +38 -0
  349. package/skills/rabetbase/references/rabetbase-bff-list.md +61 -0
  350. package/skills/rabetbase/references/rabetbase-bff-pull.md +42 -0
  351. package/skills/rabetbase/references/rabetbase-bff-push.md +65 -0
  352. package/skills/rabetbase/references/rabetbase-bff-save.md +63 -0
  353. package/skills/rabetbase/references/rabetbase-bff-status.md +37 -0
  354. package/skills/rabetbase/references/rabetbase-cli-skill-install.md +42 -0
  355. package/skills/rabetbase/references/rabetbase-codegen-sdk.md +35 -0
  356. package/skills/rabetbase/references/rabetbase-codegen-sql.md +33 -0
  357. package/skills/rabetbase/references/rabetbase-config.md +296 -0
  358. package/skills/rabetbase/references/rabetbase-dataset-business-group-update.md +84 -0
  359. package/skills/rabetbase/references/rabetbase-dataset-delete.md +54 -0
  360. package/skills/rabetbase/references/rabetbase-dataset-detail.md +106 -0
  361. package/skills/rabetbase/references/rabetbase-dataset-extend-update.md +70 -0
  362. package/skills/rabetbase/references/rabetbase-dataset-field-update.md +117 -0
  363. package/skills/rabetbase/references/rabetbase-dataset-generate.md +206 -0
  364. package/skills/rabetbase/references/rabetbase-dataset-list.md +42 -0
  365. package/skills/rabetbase/references/rabetbase-dataset-operations.md +34 -0
  366. package/skills/rabetbase/references/rabetbase-dataset-relation-audit.md +63 -0
  367. package/skills/rabetbase/references/rabetbase-dataset-relation-mutations.md +141 -0
  368. package/skills/rabetbase/references/rabetbase-dataset-relations.md +71 -0
  369. package/skills/rabetbase/references/rabetbase-dataset-rename.md +107 -0
  370. package/skills/rabetbase/references/rabetbase-dataset-restore.md +54 -0
  371. package/skills/rabetbase/references/rabetbase-db-analyze.md +135 -0
  372. package/skills/rabetbase/references/rabetbase-db-create.md +54 -0
  373. package/skills/rabetbase/references/rabetbase-db-delete.md +26 -0
  374. package/skills/rabetbase/references/rabetbase-db-detail.md +27 -0
  375. package/skills/rabetbase/references/rabetbase-db-diff.md +57 -0
  376. package/skills/rabetbase/references/rabetbase-db-list.md +37 -0
  377. package/skills/rabetbase/references/rabetbase-db-tables.md +25 -0
  378. package/skills/rabetbase/references/rabetbase-db-test.md +29 -0
  379. package/skills/rabetbase/references/rabetbase-db-update.md +29 -0
  380. package/skills/rabetbase/references/rabetbase-doctor.md +62 -0
  381. package/skills/rabetbase/references/rabetbase-file.md +35 -0
  382. package/skills/rabetbase/references/rabetbase-init.md +70 -0
  383. package/skills/rabetbase/references/rabetbase-issue-report.md +132 -0
  384. package/skills/rabetbase/references/rabetbase-kb.md +62 -0
  385. package/skills/rabetbase/references/rabetbase-menu-asset-update.md +135 -0
  386. package/skills/rabetbase/references/rabetbase-menu-delete.md +54 -0
  387. package/skills/rabetbase/references/rabetbase-menu-external-link-create.md +63 -0
  388. package/skills/rabetbase/references/rabetbase-menu-external-link-update.md +74 -0
  389. package/skills/rabetbase/references/rabetbase-menu-group-create.md +33 -0
  390. package/skills/rabetbase/references/rabetbase-menu-group-update.md +38 -0
  391. package/skills/rabetbase/references/rabetbase-menu-list.md +144 -0
  392. package/skills/rabetbase/references/rabetbase-menu-move.md +54 -0
  393. package/skills/rabetbase/references/rabetbase-menu-regroup-start.md +45 -0
  394. package/skills/rabetbase/references/rabetbase-menu-rename.md +48 -0
  395. package/skills/rabetbase/references/rabetbase-menu-sync.md +60 -0
  396. package/skills/rabetbase/references/rabetbase-notification-config-list.md +80 -0
  397. package/skills/rabetbase/references/rabetbase-ocr.md +86 -0
  398. package/skills/rabetbase/references/rabetbase-page-generate-start.md +32 -0
  399. package/skills/rabetbase/references/rabetbase-page-generate-status.md +32 -0
  400. package/skills/rabetbase/references/rabetbase-page-pull.md +47 -0
  401. package/skills/rabetbase/references/rabetbase-page-push.md +45 -0
  402. package/skills/rabetbase/references/rabetbase-page-react-create.md +29 -0
  403. package/skills/rabetbase/references/rabetbase-page-react-detail.md +26 -0
  404. package/skills/rabetbase/references/rabetbase-page-react-list.md +23 -0
  405. package/skills/rabetbase/references/rabetbase-page-react-publish.md +23 -0
  406. package/skills/rabetbase/references/rabetbase-page-react-update.md +24 -0
  407. package/skills/rabetbase/references/rabetbase-page-relation-binding.md +72 -0
  408. package/skills/rabetbase/references/rabetbase-page-restore.md +45 -0
  409. package/skills/rabetbase/references/rabetbase-page-sync.md +36 -0
  410. package/skills/rabetbase/references/rabetbase-permit-page-set.md +69 -0
  411. package/skills/rabetbase/references/rabetbase-permit-role-apis-set.md +53 -0
  412. package/skills/rabetbase/references/rabetbase-permit-role-menus-set.md +57 -0
  413. package/skills/rabetbase/references/rabetbase-project-create.md +46 -0
  414. package/skills/rabetbase/references/rabetbase-project-upgrade.md +57 -0
  415. package/skills/rabetbase/references/rabetbase-role-list.md +68 -0
  416. package/skills/rabetbase/references/rabetbase-role-user-add.md +54 -0
  417. package/skills/rabetbase/references/rabetbase-role-user-resolve.md +27 -0
  418. package/skills/rabetbase/references/rabetbase-run.md +53 -0
  419. package/skills/rabetbase/references/rabetbase-schema.md +22 -0
  420. package/skills/rabetbase/references/rabetbase-sql-create.md +41 -0
  421. package/skills/rabetbase/references/rabetbase-sql-delete.md +37 -0
  422. package/skills/rabetbase/references/rabetbase-sql-detail.md +32 -0
  423. package/skills/rabetbase/references/rabetbase-sql-exec.md +34 -0
  424. package/skills/rabetbase/references/rabetbase-sql-list.md +54 -0
  425. package/skills/rabetbase/references/rabetbase-sql-pull.md +54 -0
  426. package/skills/rabetbase/references/rabetbase-sql-push.md +46 -0
  427. package/skills/rabetbase/references/rabetbase-sql-status.md +39 -0
  428. package/skills/rabetbase/references/rabetbase-sql-validate.md +73 -0
  429. package/skills/rabetbase/references/rabetbase-standard-page-status.md +31 -0
  430. package/skills/rabetbase/references/rabetbase-task-status.md +40 -0
  431. package/skills/rabetbase/references/rabetbase-tenant-members-list.md +69 -0
  432. package/skills/rabetbase/references/rabetbase-update.md +56 -0
  433. package/skills/rabetbase/references/rabetbase-user-account.md +45 -0
  434. package/skills/rabetbase/references/rabetbase-workspace.md +60 -0
  435. package/skills/rabetbase.manifest.json +137 -0
@@ -1 +1 @@
1
- const a151_0x5ace85=a151_0x33f6;(function(_0x1c5036,_0x5d1bd7){const _0x2aee85=a151_0x33f6,_0x17c067=_0x1c5036();while(!![]){try{const _0x502881=-parseInt(_0x2aee85(0x200))/0x1*(-parseInt(_0x2aee85(0x1ee))/0x2)+parseInt(_0x2aee85(0x236))/0x3*(parseInt(_0x2aee85(0x1f1))/0x4)+-parseInt(_0x2aee85(0x1e7))/0x5+-parseInt(_0x2aee85(0x1fa))/0x6*(parseInt(_0x2aee85(0x1fb))/0x7)+-parseInt(_0x2aee85(0x21c))/0x8+-parseInt(_0x2aee85(0x210))/0x9*(-parseInt(_0x2aee85(0x224))/0xa)+parseInt(_0x2aee85(0x1ec))/0xb;if(_0x502881===_0x5d1bd7)break;else _0x17c067['push'](_0x17c067['shift']());}catch(_0x40e416){_0x17c067['push'](_0x17c067['shift']());}}}(a151_0x405f,0x2dc10));import{listPermitRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const MENU_ID_FLAG={'name':a151_0x5ace85(0x21f),'type':'number','required':!![],'description':a151_0x5ace85(0x1e9)};export const ROLE_REF_FLAG={'name':a151_0x5ace85(0x20e),'type':a151_0x5ace85(0x233),'required':!![],'description':a151_0x5ace85(0x1fd)};export const GRANT_FLAG={'name':a151_0x5ace85(0x231),'type':a151_0x5ace85(0x22b),'required':![],'description':'Grant\x20access\x20to\x20the\x20listed\x20resources'};function a151_0x405f(){const _0x22cf0f=['631750bXTELd','Missing\x20action.','Menu\x20id\x20(from\x20`menu\x20list`)','validation','data\x20export','3292256RVSkhw','SELF','1384DqEubo','menu\x20visibility',';\x20SELF\x20=\x20only\x20own\x20rows','4272stTJKE','data\x20update','Comma-separated\x20datasetCodes\x20to\x20revoke\x20API\x20access\x20for','Run\x20`role\x20list`.','row\x20visibility','pageNodeList','resourceName','Pass\x20--role\x20<id|name>.','update-roles','16806jckeyb','637qmekGg','dataPermit','Role\x20id\x20or\x20role\x20name','Pass\x20exactly\x20one\x20of\x20--grant\x20/\x20--revoke.','\x20is\x20not\x20available\x20for\x20this\x20app.','80btFmMk','Revoke\x20access\x20to\x20the\x20listed\x20resources','label','find','menuPermit','allowSelf','entries','bool','toUpperCase','roleType','resourceCode','row-roles','map','Role\x20id\x20','role','split','603ezqwZb','Roles\x20for\x20','\x20(comma-separated\x20SELF/ALL/id/name)','rolePermit','set','push','detail-roles','SELF\x20is\x20not\x20allowed\x20for\x20','Run\x20`role\x20list`,\x20or\x20use\x20SELF/ALL/<id>.','data\x20create','dataDetail','Disambiguate\x20with\x20an\x20id.','2329712TVVEVZ','trim','SELF\x20(row-level)\x20applies\x20only\x20to\x20--row-roles.','menu-id','ALL','datasetCode','export-roles','length','31090sQFavp','delete-roles','\x22\x20not\x20found.','action','menuId','dataDelete','filter','boolean','dataUpdate','create-roles','data\x20delete','\x20not\x20found.','get','grant','access','string','Role\x20\x22','roleName','834SHjlbg','flagMissing','Comma-separated\x20menu\x20resourceCodes\x20to\x20grant/revoke','menus','Special\x20role\x20','dataCreate','allowedActions','flag','\x22\x20is\x20ambiguous\x20(ids:\x20','dataExport'];a151_0x405f=function(){return _0x22cf0f;};return a151_0x405f();}export const REVOKE_FLAG={'name':'revoke','type':a151_0x5ace85(0x22b),'required':![],'description':a151_0x5ace85(0x201)};export const MENUS_FLAG={'name':a151_0x5ace85(0x1e0),'type':a151_0x5ace85(0x233),'required':!![],'description':a151_0x5ace85(0x1df)};export const DATASETS_FLAG={'name':'datasets','type':a151_0x5ace85(0x233),'required':!![],'description':a151_0x5ace85(0x1f3)};export const PAGE_SLOT_SPECS=[{'flag':'menu-roles','key':a151_0x5ace85(0x204),'allowSelf':![],'label':a151_0x5ace85(0x1ef)},{'flag':a151_0x5ace85(0x22d),'key':a151_0x5ace85(0x1e2),'allowSelf':![],'label':a151_0x5ace85(0x219)},{'flag':a151_0x5ace85(0x1f9),'key':a151_0x5ace85(0x22c),'allowSelf':![],'label':a151_0x5ace85(0x1f2)},{'flag':a151_0x5ace85(0x225),'key':a151_0x5ace85(0x229),'allowSelf':![],'label':a151_0x5ace85(0x22e)},{'flag':a151_0x5ace85(0x216),'key':a151_0x5ace85(0x21a),'allowSelf':![],'label':'data\x20detail'},{'flag':a151_0x5ace85(0x222),'key':a151_0x5ace85(0x1e6),'allowSelf':![],'label':a151_0x5ace85(0x1eb)},{'flag':a151_0x5ace85(0x20b),'key':a151_0x5ace85(0x1fc),'allowSelf':!![],'label':a151_0x5ace85(0x1f5)}];export const PAGE_SET_ROLE_FLAGS=PAGE_SLOT_SPECS[a151_0x5ace85(0x20c)](_0x33ed80=>({'name':_0x33ed80[a151_0x5ace85(0x1e4)],'type':a151_0x5ace85(0x233),'required':![],'description':a151_0x5ace85(0x211)+_0x33ed80[a151_0x5ace85(0x202)]+a151_0x5ace85(0x212)+(_0x33ed80['allowSelf']?a151_0x5ace85(0x1f0):'')}));export function splitList(_0x325074){const _0x1619fb=a151_0x5ace85;return _0x325074[_0x1619fb(0x20f)](',')[_0x1619fb(0x20c)](_0x396e80=>_0x396e80[_0x1619fb(0x21d)]())[_0x1619fb(0x22a)](Boolean);}export function projectRoleRef(_0x454b82){const _0x18dd63=a151_0x5ace85;return{'id':_0x454b82['id'],'roleName':_0x454b82[_0x18dd63(0x235)],'roleType':_0x454b82[_0x18dd63(0x209)]};}export async function resolvePermitRoles(_0x42b16b,_0x4dcb65,_0x3de304){const _0x263856=a151_0x5ace85,_0x584421=await listPermitRoles(_0x42b16b,{'needSelf':!![],'needPublic':!![]}),_0x3d52ff=[];for(const _0x17d807 of _0x4dcb65){const _0x485d2e=resolveOnePermitRole(_0x584421,_0x17d807);if(!_0x3de304[_0x263856(0x205)]&&_0x485d2e[_0x263856(0x209)]===_0x263856(0x1ed))throw CliErrors[_0x263856(0x1ea)](_0x263856(0x217)+_0x3de304[_0x263856(0x202)]+'.',_0x263856(0x21e));if(!_0x3d52ff['some'](_0x4813f5=>_0x4813f5['id']===_0x485d2e['id']))_0x3d52ff[_0x263856(0x215)](_0x485d2e);}return _0x3d52ff;}function resolveOnePermitRole(_0x27a126,_0x1fe466){const _0x352c8d=a151_0x5ace85,_0x4ce5aa=_0x1fe466[_0x352c8d(0x21d)](),_0x41f525=_0x4ce5aa[_0x352c8d(0x208)]();if(_0x41f525==='SELF'||_0x41f525===_0x352c8d(0x220)){const _0x5ea09e=_0x27a126[_0x352c8d(0x203)](_0xebb36b=>_0xebb36b['roleType']===_0x41f525);if(!_0x5ea09e)throw CliErrors[_0x352c8d(0x1ea)](_0x352c8d(0x1e1)+_0x41f525+_0x352c8d(0x1ff));return _0x5ea09e;}if(/^-?\d+$/['test'](_0x4ce5aa)){const _0x5e65d2=Number(_0x4ce5aa),_0x2f02ac=_0x27a126[_0x352c8d(0x203)](_0x486bd5=>_0x486bd5['id']===_0x5e65d2);if(!_0x2f02ac)throw CliErrors['validation'](_0x352c8d(0x20d)+_0x5e65d2+_0x352c8d(0x22f),_0x352c8d(0x1f4));return _0x2f02ac;}const _0x1d3d18=_0x27a126['filter'](_0x28eac5=>_0x28eac5[_0x352c8d(0x235)]===_0x4ce5aa);if(_0x1d3d18['length']===0x0)throw CliErrors[_0x352c8d(0x1ea)]('Role\x20\x22'+_0x4ce5aa+_0x352c8d(0x226),_0x352c8d(0x218));if(_0x1d3d18[_0x352c8d(0x223)]>0x1)throw CliErrors[_0x352c8d(0x1ea)](_0x352c8d(0x234)+_0x4ce5aa+_0x352c8d(0x1e5)+_0x1d3d18[_0x352c8d(0x20c)](_0x44cf09=>_0x44cf09['id'])['join'](',\x20')+').',_0x352c8d(0x21b));return _0x1d3d18[0x0];}function a151_0x33f6(_0x16f0f3,_0x47d4cf){_0x16f0f3=_0x16f0f3-0x1df;const _0x405f46=a151_0x405f();let _0x33f6c5=_0x405f46[_0x16f0f3];return _0x33f6c5;}export function projectPageSlot(_0x12633f){const _0x42cc4c=a151_0x5ace85;if(!_0x12633f)return null;return{'resourceCode':_0x12633f[_0x42cc4c(0x20a)],'roles':(_0x12633f[_0x42cc4c(0x213)]??[])[_0x42cc4c(0x20c)](projectRoleRef)};}export function projectPagePermit(_0x499c45){const _0x5d5bc2=a151_0x5ace85,_0xf03c49={'menuId':_0x499c45[_0x5d5bc2(0x228)],'appCode':_0x499c45['appCode'],'menuPermit':projectPageSlot(_0x499c45['menuPermit'])};for(const _0x36cdbe of PAGE_SLOT_SPECS){if(_0x36cdbe['key']===_0x5d5bc2(0x204))continue;_0xf03c49[_0x36cdbe['key']]=projectPageSlot(_0x499c45[_0x36cdbe['key']]);}return _0xf03c49;}export function flattenMenuResources(_0x436aa1){const _0xb49a81=new Map(),_0x5e0cb8=_0x58e716=>{const _0x2aea77=a151_0x33f6;for(const _0x345c47 of _0x58e716??[]){_0xb49a81[_0x2aea77(0x214)](_0x345c47[_0x2aea77(0x20a)],{'resourceCode':_0x345c47[_0x2aea77(0x20a)],'resourceName':_0x345c47[_0x2aea77(0x1f7)],'action':_0x345c47[_0x2aea77(0x1e3)]?.[0x0]??'0'});if(_0x345c47[_0x2aea77(0x1f6)])_0x5e0cb8(_0x345c47[_0x2aea77(0x1f6)]);}};return _0x5e0cb8(_0x436aa1),_0xb49a81;}export function flattenApiResources(_0x4fcddc){const _0x48f913=a151_0x5ace85,_0x2ca96f=new Map(),_0x16c432=new Map();for(const _0x391a61 of _0x4fcddc){const _0x4afae2=_0x391a61['apiList']??{};for(const [_0x2b5a45,_0x3428e4]of Object[_0x48f913(0x206)](_0x4afae2)){_0x2ca96f['set'](_0x2b5a45,{'resourceCode':_0x2b5a45,'resourceName':_0x391a61[_0x48f913(0x1f7)],'datasetCode':_0x391a61['datasetCode'],'action':_0x3428e4?.[0x0]??'0'});const _0x2fb5ab=_0x16c432[_0x48f913(0x230)](_0x391a61[_0x48f913(0x221)])??[];_0x2fb5ab[_0x48f913(0x215)](_0x2b5a45),_0x16c432[_0x48f913(0x214)](_0x391a61[_0x48f913(0x221)],_0x2fb5ab);}}return{'byCode':_0x2ca96f,'byDataset':_0x16c432};}export function buildPermits(_0x4ce975,_0x3edde6){const _0x59950=a151_0x5ace85,_0x2e3bac={};for(const [_0x55e285,_0x3d4ec2]of _0x4ce975){const _0x4140d5=_0x3edde6[_0x59950(0x230)](_0x55e285)??_0x3d4ec2[_0x59950(0x227)];_0x2e3bac[_0x55e285]=[_0x4140d5];}return _0x2e3bac;}export function readRoleRef(_0x48f681){const _0x2a6433=a151_0x5ace85,_0x3ad985=_0x48f681['str'](_0x2a6433(0x20e))[_0x2a6433(0x21d)]();if(!_0x3ad985)throw CliErrors[_0x2a6433(0x237)](_0x2a6433(0x20e),_0x2a6433(0x1f8));return _0x3ad985;}export function readGrantRevoke(_0x407076){const _0x343b31=a151_0x5ace85,_0x2e2bff=_0x407076['bool'](_0x343b31(0x231)),_0x3a934d=_0x407076[_0x343b31(0x207)]('revoke');if(_0x2e2bff&&_0x3a934d)throw CliErrors[_0x343b31(0x1ea)]('--grant\x20and\x20--revoke\x20are\x20mutually\x20exclusive.');if(!_0x2e2bff&&!_0x3a934d)throw CliErrors[_0x343b31(0x1ea)](_0x343b31(0x1e8),_0x343b31(0x1fe));return _0x2e2bff?_0x343b31(0x232):'0';}
1
+ const a159_0x5465b9=a159_0x5844;(function(_0x54b1a,_0xb167d0){const _0xe43956=a159_0x5844,_0x4cda84=_0x54b1a();while(!![]){try{const _0x451db4=parseInt(_0xe43956(0xf6))/0x1+-parseInt(_0xe43956(0xcc))/0x2+parseInt(_0xe43956(0xeb))/0x3*(-parseInt(_0xe43956(0xf8))/0x4)+-parseInt(_0xe43956(0xd5))/0x5*(-parseInt(_0xe43956(0xe4))/0x6)+-parseInt(_0xe43956(0xfc))/0x7*(parseInt(_0xe43956(0xe2))/0x8)+parseInt(_0xe43956(0xcd))/0x9+-parseInt(_0xe43956(0xdc))/0xa*(-parseInt(_0xe43956(0xf7))/0xb);if(_0x451db4===_0xb167d0)break;else _0x4cda84['push'](_0x4cda84['shift']());}catch(_0x262f4e){_0x4cda84['push'](_0x4cda84['shift']());}}}(a159_0x5464,0xa3fe6));import{listPermitRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const MENU_ID_FLAG={'name':a159_0x5465b9(0xd2),'type':'number','required':!![],'description':'Menu\x20id\x20(from\x20`menu\x20list`)'};export const ROLE_REF_FLAG={'name':a159_0x5465b9(0xbf),'type':'string','required':!![],'description':'Role\x20id\x20or\x20role\x20name'};export const GRANT_FLAG={'name':a159_0x5465b9(0xe7),'type':'boolean','required':![],'description':a159_0x5465b9(0xe6)};export const REVOKE_FLAG={'name':a159_0x5465b9(0xf3),'type':'boolean','required':![],'description':a159_0x5465b9(0xee)};export const MENUS_FLAG={'name':a159_0x5465b9(0xe1),'type':a159_0x5465b9(0xbc),'required':!![],'description':a159_0x5465b9(0x105)};export const DATASETS_FLAG={'name':'datasets','type':a159_0x5465b9(0xbc),'required':!![],'description':a159_0x5465b9(0xcf)};export const PAGE_SLOT_SPECS=[{'flag':a159_0x5465b9(0xc5),'key':a159_0x5465b9(0x109),'allowSelf':![],'label':'menu\x20visibility'},{'flag':a159_0x5465b9(0x104),'key':a159_0x5465b9(0xe3),'allowSelf':![],'label':a159_0x5465b9(0xc1)},{'flag':a159_0x5465b9(0xd1),'key':a159_0x5465b9(0xd4),'allowSelf':![],'label':a159_0x5465b9(0xda)},{'flag':'delete-roles','key':a159_0x5465b9(0xbd),'allowSelf':![],'label':a159_0x5465b9(0xf4)},{'flag':'detail-roles','key':'dataDetail','allowSelf':![],'label':a159_0x5465b9(0xe8)},{'flag':'export-roles','key':a159_0x5465b9(0xe0),'allowSelf':![],'label':a159_0x5465b9(0xc6)},{'flag':'row-roles','key':'dataPermit','allowSelf':!![],'label':'row\x20visibility'}];export const PAGE_SET_ROLE_FLAGS=PAGE_SLOT_SPECS[a159_0x5465b9(0xec)](_0x5ba909=>({'name':_0x5ba909[a159_0x5465b9(0xd8)],'type':a159_0x5465b9(0xbc),'required':![],'description':'Roles\x20for\x20'+_0x5ba909[a159_0x5465b9(0x108)]+a159_0x5465b9(0xc2)+(_0x5ba909[a159_0x5465b9(0xc3)]?a159_0x5465b9(0xba):'')}));export function splitList(_0x25b0c2){const _0x5bf26a=a159_0x5465b9;return _0x25b0c2[_0x5bf26a(0xcb)](',')[_0x5bf26a(0xec)](_0x13bbb6=>_0x13bbb6[_0x5bf26a(0xce)]())[_0x5bf26a(0xd7)](Boolean);}export function projectRoleRef(_0x4edec0){const _0x26def8=a159_0x5465b9;return{'id':_0x4edec0['id'],'roleName':_0x4edec0[_0x26def8(0xe9)],'roleType':_0x4edec0[_0x26def8(0xfa)]};}export async function resolvePermitRoles(_0x269a12,_0x382a61,_0x56b0ad){const _0x4a9ca2=a159_0x5465b9,_0x4073fd=await listPermitRoles(_0x269a12,{'needSelf':!![],'needPublic':!![]}),_0x3b961=[];for(const _0x2f5684 of _0x382a61){const _0x195511=resolveOnePermitRole(_0x4073fd,_0x2f5684);if(!_0x56b0ad[_0x4a9ca2(0xc3)]&&_0x195511[_0x4a9ca2(0xfa)]===_0x4a9ca2(0xf1))throw CliErrors[_0x4a9ca2(0xbe)](_0x4a9ca2(0xbb)+_0x56b0ad[_0x4a9ca2(0x108)]+'.','SELF\x20(row-level)\x20applies\x20only\x20to\x20--row-roles.');if(!_0x3b961['some'](_0x137f54=>_0x137f54['id']===_0x195511['id']))_0x3b961[_0x4a9ca2(0xea)](_0x195511);}return _0x3b961;}function resolveOnePermitRole(_0x253b23,_0x3fe634){const _0x42f2b0=a159_0x5465b9,_0x281c50=_0x3fe634[_0x42f2b0(0xce)](),_0x45bc2b=_0x281c50[_0x42f2b0(0xf0)]();if(_0x45bc2b===_0x42f2b0(0xf1)||_0x45bc2b===_0x42f2b0(0xd3)){const _0x555c1a=_0x253b23['find'](_0x587b12=>_0x587b12[_0x42f2b0(0xfa)]===_0x45bc2b);if(!_0x555c1a)throw CliErrors[_0x42f2b0(0xbe)](_0x42f2b0(0xd0)+_0x45bc2b+'\x20is\x20not\x20available\x20for\x20this\x20app.');return _0x555c1a;}if(/^-?\d+$/[_0x42f2b0(0xd9)](_0x281c50)){const _0x3a4f80=Number(_0x281c50),_0x12f8bb=_0x253b23[_0x42f2b0(0xfe)](_0x69103b=>_0x69103b['id']===_0x3a4f80);if(!_0x12f8bb)throw CliErrors[_0x42f2b0(0xbe)](_0x42f2b0(0xc8)+_0x3a4f80+_0x42f2b0(0x101),_0x42f2b0(0x106));return _0x12f8bb;}const _0x34b026=_0x253b23[_0x42f2b0(0xd7)](_0x177f4c=>_0x177f4c[_0x42f2b0(0xe9)]===_0x281c50);if(_0x34b026[_0x42f2b0(0xdf)]===0x0)throw CliErrors['validation'](_0x42f2b0(0x103)+_0x281c50+_0x42f2b0(0xff),_0x42f2b0(0xef));if(_0x34b026['length']>0x1)throw CliErrors[_0x42f2b0(0xbe)]('Role\x20\x22'+_0x281c50+'\x22\x20is\x20ambiguous\x20(ids:\x20'+_0x34b026['map'](_0x24e2e1=>_0x24e2e1['id'])['join'](',\x20')+').',_0x42f2b0(0xca));return _0x34b026[0x0];}export function projectPageSlot(_0xe33120){const _0xb0132f=a159_0x5465b9;if(!_0xe33120)return null;return{'resourceCode':_0xe33120['resourceCode'],'roles':(_0xe33120[_0xb0132f(0xc7)]??[])[_0xb0132f(0xec)](projectRoleRef)};}export function projectPagePermit(_0x359bc3){const _0x582e8d=a159_0x5465b9,_0x2d3309={'menuId':_0x359bc3[_0x582e8d(0xe5)],'appCode':_0x359bc3[_0x582e8d(0xc4)],'menuPermit':projectPageSlot(_0x359bc3['menuPermit'])};for(const _0x55fa74 of PAGE_SLOT_SPECS){if(_0x55fa74['key']===_0x582e8d(0x109))continue;_0x2d3309[_0x55fa74[_0x582e8d(0xf2)]]=projectPageSlot(_0x359bc3[_0x55fa74[_0x582e8d(0xf2)]]);}return _0x2d3309;}function a159_0x5464(){const _0x1d5ddc=['push','3orNAfK','map','set','Revoke\x20access\x20to\x20the\x20listed\x20resources','Run\x20`role\x20list`,\x20or\x20use\x20SELF/ALL/<id>.','toUpperCase','SELF','key','revoke','data\x20delete','str','317444uoCzPE','22cRXcPS','4895224HCrNTZ','flagMissing','roleType','get','378546YtPAyv','bool','find','\x22\x20not\x20found.','pageNodeList','\x20not\x20found.','resourceCode','Role\x20\x22','create-roles','Comma-separated\x20menu\x20resourceCodes\x20to\x20grant/revoke','Run\x20`role\x20list`.','datasetCode','label','menuPermit',';\x20SELF\x20=\x20only\x20own\x20rows','SELF\x20is\x20not\x20allowed\x20for\x20','string','dataDelete','validation','role','apiList','data\x20create','\x20(comma-separated\x20SELF/ALL/id/name)','allowSelf','appCode','menu-roles','data\x20export','rolePermit','Role\x20id\x20','entries','Disambiguate\x20with\x20an\x20id.','split','2684904yASUin','8260929IXmiLu','trim','Comma-separated\x20datasetCodes\x20to\x20revoke\x20API\x20access\x20for','Special\x20role\x20','update-roles','menu-id','ALL','dataUpdate','85whHgzh','allowedActions','filter','flag','test','data\x20update','access','6585690RKOepk','--grant\x20and\x20--revoke\x20are\x20mutually\x20exclusive.','resourceName','length','dataExport','menus','96lNlnrr','dataCreate','470982kYqBlw','menuId','Grant\x20access\x20to\x20the\x20listed\x20resources','grant','data\x20detail','roleName'];a159_0x5464=function(){return _0x1d5ddc;};return a159_0x5464();}function a159_0x5844(_0x2e3fc3,_0x402f51){_0x2e3fc3=_0x2e3fc3-0xba;const _0x5464e3=a159_0x5464();let _0x5844d8=_0x5464e3[_0x2e3fc3];return _0x5844d8;}export function flattenMenuResources(_0x3855f7){const _0x37649d=new Map(),_0x295c16=_0x4a6d6b=>{const _0x462895=a159_0x5844;for(const _0x3e6f9f of _0x4a6d6b??[]){_0x37649d[_0x462895(0xed)](_0x3e6f9f[_0x462895(0x102)],{'resourceCode':_0x3e6f9f['resourceCode'],'resourceName':_0x3e6f9f[_0x462895(0xde)],'action':_0x3e6f9f[_0x462895(0xd6)]?.[0x0]??'0'});if(_0x3e6f9f['pageNodeList'])_0x295c16(_0x3e6f9f[_0x462895(0x100)]);}};return _0x295c16(_0x3855f7),_0x37649d;}export function flattenApiResources(_0x27e249){const _0x1199a2=a159_0x5465b9,_0x1bebef=new Map(),_0x59dff6=new Map();for(const _0x1a1019 of _0x27e249){const _0x1aa8c9=_0x1a1019[_0x1199a2(0xc0)]??{};for(const [_0x43ef49,_0x5b2bcd]of Object[_0x1199a2(0xc9)](_0x1aa8c9)){_0x1bebef[_0x1199a2(0xed)](_0x43ef49,{'resourceCode':_0x43ef49,'resourceName':_0x1a1019[_0x1199a2(0xde)],'datasetCode':_0x1a1019[_0x1199a2(0x107)],'action':_0x5b2bcd?.[0x0]??'0'});const _0x4f6ee8=_0x59dff6['get'](_0x1a1019[_0x1199a2(0x107)])??[];_0x4f6ee8['push'](_0x43ef49),_0x59dff6[_0x1199a2(0xed)](_0x1a1019['datasetCode'],_0x4f6ee8);}}return{'byCode':_0x1bebef,'byDataset':_0x59dff6};}export function buildPermits(_0x355a92,_0x5e4725){const _0x284fd7=a159_0x5465b9,_0x2efd07={};for(const [_0x308132,_0x96951d]of _0x355a92){const _0x30f445=_0x5e4725[_0x284fd7(0xfb)](_0x308132)??_0x96951d['action'];_0x2efd07[_0x308132]=[_0x30f445];}return _0x2efd07;}export function readRoleRef(_0x3bf693){const _0x246f45=a159_0x5465b9,_0x4e1e74=_0x3bf693[_0x246f45(0xf5)](_0x246f45(0xbf))[_0x246f45(0xce)]();if(!_0x4e1e74)throw CliErrors[_0x246f45(0xf9)](_0x246f45(0xbf),'Pass\x20--role\x20<id|name>.');return _0x4e1e74;}export function readGrantRevoke(_0x4f9b79){const _0x1355dd=a159_0x5465b9,_0x55ba00=_0x4f9b79[_0x1355dd(0xfd)](_0x1355dd(0xe7)),_0x414970=_0x4f9b79[_0x1355dd(0xfd)](_0x1355dd(0xf3));if(_0x55ba00&&_0x414970)throw CliErrors[_0x1355dd(0xbe)](_0x1355dd(0xdd));if(!_0x55ba00&&!_0x414970)throw CliErrors[_0x1355dd(0xbe)]('Missing\x20action.','Pass\x20exactly\x20one\x20of\x20--grant\x20/\x20--revoke.');return _0x55ba00?_0x1355dd(0xdb):'0';}
@@ -1 +1 @@
1
- (function(_0x2fcb32,_0x332529){const _0x30f48b=a152_0x5d3f,_0x7260cf=_0x2fcb32();while(!![]){try{const _0x34e8af=parseInt(_0x30f48b(0xc5))/0x1*(-parseInt(_0x30f48b(0xc1))/0x2)+parseInt(_0x30f48b(0xdb))/0x3*(-parseInt(_0x30f48b(0xcf))/0x4)+parseInt(_0x30f48b(0xc9))/0x5+-parseInt(_0x30f48b(0xbd))/0x6+-parseInt(_0x30f48b(0xd7))/0x7*(parseInt(_0x30f48b(0xdc))/0x8)+parseInt(_0x30f48b(0xca))/0x9*(-parseInt(_0x30f48b(0xd4))/0xa)+parseInt(_0x30f48b(0xd2))/0xb;if(_0x34e8af===_0x332529)break;else _0x7260cf['push'](_0x7260cf['shift']());}catch(_0x39a4b4){_0x7260cf['push'](_0x7260cf['shift']());}}}(a152_0x25ca,0xa3d99));import{existsSync}from'node:fs';function a152_0x5d3f(_0x50a831,_0x348005){_0x50a831=_0x50a831-0xbd;const _0x25cab1=a152_0x25ca();let _0x5d3fc0=_0x25cab1[_0x50a831];return _0x5d3fc0;}import a152_0x2c3817 from'node:path';import a152_0x14b680 from'chalk';import{input,confirm}from'@inquirer/prompts';function a152_0x25ca(){const _0x11e740=['Not\x20set','4OqUmcD','Logged\x20in','test','27236847iHAzSH','log','3640FlhVUH','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','string','2067877fDlgQs','√\x20Login\x20status:\x20','my-app','resolve','1171119juMJJR','8rtuFoI','1343988yodqWa','Project\x20name\x20cannot\x20exceed\x2050\x20characters','env','Project\x20name:','484MDsTLQ','Directory\x20\x22','cyan','cwd','2951BsurbN','√\x20Project\x20Name:\x20','Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','green','4061660ACyQHk','24561dGJCtC','production','\x22\x20already\x20exists','√\x20App\x20Code:\x20'];a152_0x25ca=function(){return _0x11e740;};return a152_0x25ca();}import{getIsSessionValid}from'../../../auth/is-session-valid.js';import{authServer}from'../../../auth/auth-server.js';import{readConfig}from'../../../utils/config.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';export async function guidedCreateProject(_0x1f25a5,_0xe09957,_0x3a21c0){const _0x3ba432=a152_0x5d3f,_0x1228bb=_0x3ba432(0xd9),_0x2aab83=readConfig(),_0x4fe431=typeof _0x2aab83[_0x3ba432(0xbf)]===_0x3ba432(0xd6)?_0x2aab83[_0x3ba432(0xbf)]:undefined,_0x568f9a=await input({'message':_0x3ba432(0xc0),'default':_0x1228bb,'validate':_0x5855c5=>{const _0x21f625=_0x3ba432,_0xc06f7b=_0x5855c5['trim']()||_0x1228bb;if(_0xc06f7b['length']>0x32)return _0x21f625(0xbe);const _0x594356=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(_0xc06f7b&&!_0x594356[_0x21f625(0xd1)](_0xc06f7b))return _0x21f625(0xc7);const _0x42f793=a152_0x2c3817[_0x21f625(0xda)](process[_0x21f625(0xc4)](),_0xc06f7b);if(existsSync(_0x42f793))return _0x21f625(0xc2)+_0xc06f7b+_0x21f625(0xcc);return!![];}});console[_0x3ba432(0xd3)](a152_0x14b680[_0x3ba432(0xc8)](_0x3ba432(0xc6)+a152_0x14b680[_0x3ba432(0xc3)](_0x568f9a)));const _0x26d741=await selectSingleAppcode(_0x3a21c0);console['log'](a152_0x14b680[_0x3ba432(0xc8)](_0x3ba432(0xcd)+a152_0x14b680[_0x3ba432(0xc3)](_0x26d741||_0x3ba432(0xce))));if(_0x26d741){const _0x22e384=await getIsSessionValid();if(!_0x22e384){const _0x11f4d6=await confirm({'message':_0x3ba432(0xd5),'default':!![]});if(_0x11f4d6){const _0x10a04c=await authServer({'silent':!![]});console[_0x3ba432(0xd3)](a152_0x14b680[_0x3ba432(0xc8)](_0x3ba432(0xd8)+a152_0x14b680[_0x3ba432(0xc3)](_0x10a04c?_0x3ba432(0xd0):'Login\x20failed')));}else console['log'](a152_0x14b680[_0x3ba432(0xc8)](_0x3ba432(0xd8)+a152_0x14b680[_0x3ba432(0xc3)]('Skipped')));}await _0x1f25a5({'projectName':_0x568f9a,'appCode':_0x26d741,'env':_0xe09957||_0x4fe431||_0x3ba432(0xcb)});}else await _0x1f25a5({'projectName':_0x568f9a,'env':_0xe09957||_0x4fe431||_0x3ba432(0xcb)});}
1
+ (function(_0x36ab73,_0x113be4){const _0x251165=a160_0x28b2,_0x117898=_0x36ab73();while(!![]){try{const _0x5d7da8=parseInt(_0x251165(0xfa))/0x1*(parseInt(_0x251165(0xee))/0x2)+parseInt(_0x251165(0xf2))/0x3*(parseInt(_0x251165(0xf0))/0x4)+parseInt(_0x251165(0xf5))/0x5+parseInt(_0x251165(0x100))/0x6+-parseInt(_0x251165(0xfd))/0x7*(parseInt(_0x251165(0xed))/0x8)+parseInt(_0x251165(0xf6))/0x9+-parseInt(_0x251165(0xef))/0xa;if(_0x5d7da8===_0x113be4)break;else _0x117898['push'](_0x117898['shift']());}catch(_0x30bb4b){_0x117898['push'](_0x117898['shift']());}}}(a160_0x4809,0x205d9));import{existsSync}from'node:fs';import a160_0x3ec2b2 from'node:path';import a160_0x5eb40a from'chalk';import{input,confirm}from'@inquirer/prompts';import{getIsSessionValid}from'../../../auth/is-session-valid.js';import{authServer}from'../../../auth/auth-server.js';function a160_0x4809(){const _0x486661=['96pbxJPv','3236450rmSvSP','4FogEKN','my-app','464175ddBpMn','log','√\x20App\x20Code:\x20','1273245lvKvYa','892314icnmqs','Not\x20set','length','Project\x20name:','2983alhKXT','test','cyan','742945xaVCLv','Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','√\x20Login\x20status:\x20','100680FKrbnP','Directory\x20\x22','env','trim','green','string','cwd','Skipped','√\x20Project\x20Name:\x20','Logged\x20in','Login\x20failed','production','16KdabnU'];a160_0x4809=function(){return _0x486661;};return a160_0x4809();}import{readConfig}from'../../../utils/config.js';function a160_0x28b2(_0x9d9dd9,_0xbc0818){_0x9d9dd9=_0x9d9dd9-0xe2;const _0x480922=a160_0x4809();let _0x28b20d=_0x480922[_0x9d9dd9];return _0x28b20d;}import{selectSingleAppcode}from'../../../commands/common/app-selector.js';export async function guidedCreateProject(_0x614520,_0x2b2471,_0x44016a){const _0x71cd9c=a160_0x28b2,_0x289539=_0x71cd9c(0xf1),_0x3d66be=readConfig(),_0x37a2b2=typeof _0x3d66be[_0x71cd9c(0xe3)]===_0x71cd9c(0xe6)?_0x3d66be[_0x71cd9c(0xe3)]:undefined,_0x4dfa41=await input({'message':_0x71cd9c(0xf9),'default':_0x289539,'validate':_0x4e2bb7=>{const _0x362b00=_0x71cd9c,_0x3de11c=_0x4e2bb7[_0x362b00(0xe4)]()||_0x289539;if(_0x3de11c[_0x362b00(0xf8)]>0x32)return'Project\x20name\x20cannot\x20exceed\x2050\x20characters';const _0x464009=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(_0x3de11c&&!_0x464009[_0x362b00(0xfb)](_0x3de11c))return _0x362b00(0xfe);const _0x584363=a160_0x3ec2b2['resolve'](process[_0x362b00(0xe7)](),_0x3de11c);if(existsSync(_0x584363))return _0x362b00(0xe2)+_0x3de11c+'\x22\x20already\x20exists';return!![];}});console[_0x71cd9c(0xf3)](a160_0x5eb40a['green'](_0x71cd9c(0xe9)+a160_0x5eb40a[_0x71cd9c(0xfc)](_0x4dfa41)));const _0x17487f=await selectSingleAppcode(_0x44016a);console[_0x71cd9c(0xf3)](a160_0x5eb40a[_0x71cd9c(0xe5)](_0x71cd9c(0xf4)+a160_0x5eb40a[_0x71cd9c(0xfc)](_0x17487f||_0x71cd9c(0xf7))));if(_0x17487f){const _0x50fc5e=await getIsSessionValid();if(!_0x50fc5e){const _0x5a50cf=await confirm({'message':'No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','default':!![]});if(_0x5a50cf){const _0x355e95=await authServer({'silent':!![]});console[_0x71cd9c(0xf3)](a160_0x5eb40a[_0x71cd9c(0xe5)](_0x71cd9c(0xff)+a160_0x5eb40a['cyan'](_0x355e95?_0x71cd9c(0xea):_0x71cd9c(0xeb))));}else console[_0x71cd9c(0xf3)](a160_0x5eb40a['green'](_0x71cd9c(0xff)+a160_0x5eb40a[_0x71cd9c(0xfc)](_0x71cd9c(0xe8))));}await _0x614520({'projectName':_0x4dfa41,'appCode':_0x17487f,'env':_0x2b2471||_0x37a2b2||'production'});}else await _0x614520({'projectName':_0x4dfa41,'env':_0x2b2471||_0x37a2b2||_0x71cd9c(0xec)});}
@@ -1 +1 @@
1
- function a153_0x1a24(){const _0x15bd55=['toFixed','2026bWYfeu','1387245uSgRSB','275376RAuZRz','850772AmybJZ','57659YlelXH','66YlSPYu','replace','550592TqSaEF','583790HflGEm','now','59CpGgol','36TaeqFn'];a153_0x1a24=function(){return _0x15bd55;};return a153_0x1a24();}(function(_0x960799,_0x583d9d){const _0x3a3c98=a153_0x22cb,_0x5b6be6=_0x960799();while(!![]){try{const _0x17332d=parseInt(_0x3a3c98(0x116))/0x1*(-parseInt(_0x3a3c98(0x10c))/0x2)+-parseInt(_0x3a3c98(0x10e))/0x3+-parseInt(_0x3a3c98(0x10f))/0x4+parseInt(_0x3a3c98(0x10d))/0x5+parseInt(_0x3a3c98(0x111))/0x6*(parseInt(_0x3a3c98(0x110))/0x7)+-parseInt(_0x3a3c98(0x113))/0x8+parseInt(_0x3a3c98(0x10a))/0x9*(parseInt(_0x3a3c98(0x114))/0xa);if(_0x17332d===_0x583d9d)break;else _0x5b6be6['push'](_0x5b6be6['shift']());}catch(_0xd34cea){_0x5b6be6['push'](_0x5b6be6['shift']());}}}(a153_0x1a24,0x29230));function a153_0x22cb(_0x144d8f,_0x16ca5f){_0x144d8f=_0x144d8f-0x10a;const _0x1a2486=a153_0x1a24();let _0x22cbdf=_0x1a2486[_0x144d8f];return _0x22cbdf;}export function formatElapsed(_0x1437bb){const _0x8f0588=a153_0x22cb,_0x47eb33=Date[_0x8f0588(0x115)]()-_0x1437bb;if(_0x47eb33<0x3e8)return _0x47eb33+'ms';const _0x40505d=(_0x47eb33/0x3e8)[_0x8f0588(0x10b)](0x2),_0xf916be=_0x40505d[_0x8f0588(0x112)](/\.?0+$/u,'');return _0xf916be+'s';}
1
+ function a161_0x3adc(_0x169468,_0x5a0cd0){_0x169468=_0x169468-0x141;const _0x2354b2=a161_0x2354();let _0x3adc30=_0x2354b2[_0x169468];return _0x3adc30;}function a161_0x2354(){const _0x2baa59=['2211728TiZfdh','12035BqzvOP','3324272RSCPuN','1226jfohGE','180EQRZkz','toFixed','1486723qZBSRA','12207141xYNfTZ','replace','435770xZrWOY','now','1326OGbPXx'];a161_0x2354=function(){return _0x2baa59;};return a161_0x2354();}(function(_0x39283a,_0x4bd17a){const _0x5ec1c0=a161_0x3adc,_0x248839=_0x39283a();while(!![]){try{const _0x3206cf=parseInt(_0x5ec1c0(0x146))/0x1+-parseInt(_0x5ec1c0(0x14c))/0x2*(parseInt(_0x5ec1c0(0x141))/0x3)+-parseInt(_0x5ec1c0(0x14b))/0x4+-parseInt(_0x5ec1c0(0x14a))/0x5*(parseInt(_0x5ec1c0(0x148))/0x6)+-parseInt(_0x5ec1c0(0x143))/0x7+parseInt(_0x5ec1c0(0x149))/0x8+parseInt(_0x5ec1c0(0x144))/0x9;if(_0x3206cf===_0x4bd17a)break;else _0x248839['push'](_0x248839['shift']());}catch(_0x1132ce){_0x248839['push'](_0x248839['shift']());}}}(a161_0x2354,0x6f6d1));export function formatElapsed(_0x5a9bb6){const _0x17873d=a161_0x3adc,_0x5451c3=Date[_0x17873d(0x147)]()-_0x5a9bb6;if(_0x5451c3<0x3e8)return _0x5451c3+'ms';const _0x492ae5=(_0x5451c3/0x3e8)[_0x17873d(0x142)](0x2),_0x2846a0=_0x492ae5[_0x17873d(0x145)](/\.?0+$/u,'');return _0x2846a0+'s';}
@@ -1 +1 @@
1
- function a154_0x3ce1(){const _0x67b658=['gray','√\x20Pulled\x20','434344eDjLAC','description','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','\x20√\x20','length','\x20\x201.\x20Start\x20project:\x20','env','*\x20Configuring\x20AppCode\x20for\x20project\x20','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','更新\x20package.json\x20name','projectName','package.json','Install\x20dependencies','36DGsjqA','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','项目创建失败:\x20','constants','test','currentVersion','清理项目目录失败:\x20','Project\x20name:\x20','API\x20配置拉取异常','error','stringify','配置应用AppCode:\x20','stableVersion','\x20|\x20AppCode:\x20','\x20run\x20start','Project\x20name\x20cannot\x20be\x20empty','stop','readFileSync','utf8','204ikIfWL','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','\x20&&\x20','fail','message','appCode','minimumVersion','cookie','\x20Generated\x20by\x20rabetbase\x20cli\x20','accessSync','bold','production','cyan','71810KMCToB','1.0.0','version','repeat','green','chdir','setLogPath','name','132DVWLPz','\x20config\x20set\x20appcode\x20<app-code>\x27','log','配置应用AppCode失败','keys','rmSync','\x20|\x20Default:\x20','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','existsSync','27792yQKfMT','defaultApp','\x20model(s)','info','开始创建项目:\x20','string','join','projectCode','W_OK','\x20api\x20pull','resolve','更新\x20package.json\x20失败','writeFileSync','parse','...','cwd','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','apps','warn','436316CXzPrU','create','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','\x20dataset(s),\x20generated\x20','Project\x20directory\x20','API\x20configuration\x20pulled:\x20','needsUpgrade','√\x20Configuration\x20file\x20created,\x20Apps:\x20','belowMinimum','6930450MSwKUb','\x20\x202.\x20Pull\x20API\x20configuration:\x20','145924bmsVKG','227668LfQHxr'];a154_0x3ce1=function(){return _0x67b658;};return a154_0x3ce1();}(function(_0x47b7fb,_0x2f6269){const _0xe5d29b=a154_0x2e91,_0x2db588=_0x47b7fb();while(!![]){try{const _0x3e637a=-parseInt(_0xe5d29b(0x1f6))/0x1+parseInt(_0xe5d29b(0x243))/0x2*(-parseInt(_0xe5d29b(0x23a))/0x3)+parseInt(_0xe5d29b(0x201))/0x4+-parseInt(_0xe5d29b(0x232))/0x5*(-parseInt(_0xe5d29b(0x225))/0x6)+-parseInt(_0xe5d29b(0x202))/0x7+-parseInt(_0xe5d29b(0x205))/0x8*(-parseInt(_0xe5d29b(0x212))/0x9)+parseInt(_0xe5d29b(0x1ff))/0xa;if(_0x3e637a===_0x2f6269)break;else _0x2db588['push'](_0x2db588['shift']());}catch(_0x2d1538){_0x2db588['push'](_0x2db588['shift']());}}}(a154_0x3ce1,0x569b6));import a154_0x17b4b0 from'path';import a154_0x30fc83 from'fs';import a154_0x170465 from'chalk';import a154_0x3aee1a from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../core/api-client.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{readConfig}from'../../../utils/config.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';import{logger}from'../../../utils/logger.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getRabetbaseCliPackageRoot}from'../../../commands/project/create/project-template-path.js';export async function createApp(_0x238e07){const _0xe37168=a154_0x2e91,_0x37ec32=await checkCliVersion();(_0x37ec32['needsUpgrade']||_0x37ec32[_0xe37168(0x1fe)])&&(printCliUpgradeWarning(_0x37ec32),assertCliVersionSupported(_0x37ec32),logger[_0xe37168(0x246)](_0xe37168(0x1f7),'CLI\x20版本检查',{'currentVersion':_0x37ec32[_0xe37168(0x217)],'stableVersion':_0x37ec32[_0xe37168(0x21e)],'minimumVersion':_0x37ec32[_0xe37168(0x22b)],'needsUpgrade':_0x37ec32[_0xe37168(0x1fc)],'belowMinimum':_0x37ec32[_0xe37168(0x1fe)]}));if(_0x238e07[_0xe37168(0x24a)]&&_0x238e07[_0xe37168(0x22a)])await runCreate({'projectName':_0x238e07[_0xe37168(0x24a)],'appCode':_0x238e07['appCode'],'env':_0x238e07[_0xe37168(0x20b)]},_0x238e07);else{if(_0x238e07[_0xe37168(0x24a)]){const _0x2c4a35=await selectSingleAppcode(_0x238e07[_0xe37168(0x22c)]);await runCreate({'projectName':_0x238e07[_0xe37168(0x24a)],'appCode':_0x2c4a35||undefined,'env':_0x238e07[_0xe37168(0x20b)]},_0x238e07);}else await guidedCreateProject(_0x45c4ce=>runCreate(_0x45c4ce,_0x238e07),_0x238e07[_0xe37168(0x20b)],_0x238e07['cookie']);}}async function runCreate(_0x45d06f,_0x4bedaf){const _0x34c8be=a154_0x2e91;if(!_0x45d06f[_0x34c8be(0x20f)]||_0x45d06f[_0x34c8be(0x20f)]['trim']()==='')throw new Error(_0x34c8be(0x221));const _0x2f48c9=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x2f48c9[_0x34c8be(0x216)](_0x45d06f[_0x34c8be(0x20f)]))throw new Error(_0x34c8be(0x213));if(_0x45d06f[_0x34c8be(0x20f)][_0x34c8be(0x209)]>0x64)throw new Error(_0x34c8be(0x1f8));const _0x31ce65=a154_0x17b4b0['resolve'](process[_0x34c8be(0x1f2)](),_0x45d06f[_0x34c8be(0x20f)]);if(a154_0x30fc83['existsSync'](_0x31ce65))throw new Error(_0x34c8be(0x1fa)+_0x45d06f['projectName']+'\x20already\x20exists');try{a154_0x30fc83[_0x34c8be(0x22e)](a154_0x17b4b0['dirname'](_0x31ce65),a154_0x30fc83[_0x34c8be(0x215)][_0x34c8be(0x1eb)]);}catch{throw new Error('Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions');}logger[_0x34c8be(0x238)](_0x31ce65),logger['info'](_0x34c8be(0x1f7),_0x34c8be(0x247)+_0x45d06f[_0x34c8be(0x20f)],{'projectDir':_0x31ce65,'appCode':_0x45d06f[_0x34c8be(0x22a)]}),console[_0x34c8be(0x23c)](),console[_0x34c8be(0x23c)](a154_0x170465['green'](_0x34c8be(0x208))+_0x34c8be(0x219)+a154_0x170465[_0x34c8be(0x236)](_0x45d06f[_0x34c8be(0x20f)])+(_0x45d06f[_0x34c8be(0x22a)]?_0x34c8be(0x21f)+a154_0x170465[_0x34c8be(0x231)](_0x45d06f[_0x34c8be(0x22a)]):''));try{await runTask('Copy\x20project\x20files',()=>copyProjectTemplate(_0x45d06f['projectName'])),await updatePackageJsonName(_0x45d06f['projectName']),await runTask(_0x34c8be(0x211),()=>installDependencies(_0x45d06f[_0x34c8be(0x20f)])),await runTask('Format\x20code',()=>formatProjectCode(_0x45d06f[_0x34c8be(0x20f)])),await configureAppCode(_0x45d06f[_0x34c8be(0x20f)],_0x45d06f[_0x34c8be(0x22a)]||'',_0x45d06f['env']);let _0x6a82a9=![];if(_0x45d06f[_0x34c8be(0x22a)]){console['log']('*\x20Pulling\x20API\x20configuration...');const _0x428ea4=process[_0x34c8be(0x1f2)]();try{process[_0x34c8be(0x237)](_0x31ce65);const _0x2ae696=_0x45d06f[_0x34c8be(0x20b)]||_0x34c8be(0x230);initEnv(_0x2ae696);const {configArray:_0x10034b}=await fetchModelList(_0x45d06f[_0x34c8be(0x22a)],_0x4bedaf['cookie']||''),_0x3613bc=DEFAULT_API_DIR,_0x52fa79=await generateApiFile(_0x10034b,'',_0x45d06f[_0x34c8be(0x22a)],!![],_0x2ae696,_0x3613bc);console['log'](_0x34c8be(0x204)+_0x10034b[_0x34c8be(0x209)]+_0x34c8be(0x1f9)+_0x52fa79['modelCount']+_0x34c8be(0x245)),logger[_0x34c8be(0x246)](_0x34c8be(0x1f7),_0x34c8be(0x1fb)+_0x45d06f[_0x34c8be(0x22a)]);}catch(_0x23707c){_0x6a82a9=!![],console[_0x34c8be(0x23c)](_0x34c8be(0x207)),logger[_0x34c8be(0x1f5)](_0x34c8be(0x1f7),_0x34c8be(0x21a),{'error':_0x23707c instanceof Error?_0x23707c[_0x34c8be(0x229)]:String(_0x23707c)});}finally{process[_0x34c8be(0x237)](_0x428ea4);}}logger['success'](_0x34c8be(0x1f7),'项目创建完成:\x20'+_0x45d06f[_0x34c8be(0x20f)]),console['log'](),console['log'](a154_0x170465[_0x34c8be(0x236)]('─'[_0x34c8be(0x235)](0x3c))),console[_0x34c8be(0x23c)](a154_0x170465['cyan']['bold']('🚀\x20Next\x20Steps:')),console[_0x34c8be(0x23c)](),console['log'](_0x34c8be(0x20a)+a154_0x170465[_0x34c8be(0x231)][_0x34c8be(0x22f)]('cd\x20'+_0x45d06f[_0x34c8be(0x20f)]+_0x34c8be(0x227)+CLI_BIN_NAME+_0x34c8be(0x220))),_0x6a82a9&&console['log'](_0x34c8be(0x200)+a154_0x170465[_0x34c8be(0x231)][_0x34c8be(0x22f)](CLI_BIN_NAME+_0x34c8be(0x1ec))),console['log'](a154_0x170465['green']('─'[_0x34c8be(0x235)](0x3c)));}catch(_0x5eba62){logger[_0x34c8be(0x21b)]('create',_0x34c8be(0x214)+_0x45d06f[_0x34c8be(0x20f)],{'error':_0x5eba62 instanceof Error?_0x5eba62[_0x34c8be(0x229)]:String(_0x5eba62)});try{a154_0x30fc83[_0x34c8be(0x242)](_0x31ce65)&&(console['log'](_0x34c8be(0x241)+_0x31ce65),a154_0x30fc83[_0x34c8be(0x23f)](_0x31ce65,{'recursive':!![],'force':!![]}));}catch{logger[_0x34c8be(0x1f5)](_0x34c8be(0x1f7),_0x34c8be(0x218)+_0x31ce65);}throw _0x5eba62;}}async function runTask(_0x1dd5e6,_0x53f98c){const _0x460a17=a154_0x2e91,_0x4dd50a=a154_0x3aee1a(_0x1dd5e6+_0x460a17(0x1f1))['start']();try{const _0x289282=await _0x53f98c();_0x4dd50a[_0x460a17(0x222)](),console[_0x460a17(0x23c)](''+a154_0x170465['green'](_0x460a17(0x208))+_0x1dd5e6+'\x20'+a154_0x170465[_0x460a17(0x203)]('['+_0x289282+']'));}catch(_0x4275d5){_0x4dd50a[_0x460a17(0x228)](_0x1dd5e6);throw _0x4275d5;}}async function updatePackageJsonName(_0x207dfe){const _0xd01793=a154_0x2e91,_0x3c149e=a154_0x17b4b0['resolve'](process[_0xd01793(0x1f2)](),_0x207dfe),_0x40bfda=a154_0x17b4b0['join'](_0x3c149e,_0xd01793(0x210));try{console[_0xd01793(0x23c)](_0xd01793(0x226));const _0x268220=getRabetbaseCliPackageRoot(),_0x2f4c83=a154_0x17b4b0[_0xd01793(0x249)](_0x268220,_0xd01793(0x210));let _0x123f93=_0xd01793(0x233);try{const _0x547142=JSON[_0xd01793(0x1f0)](a154_0x30fc83[_0xd01793(0x223)](_0x2f4c83,'utf8'));_0x123f93=_0x547142[_0xd01793(0x234)]||_0xd01793(0x233);}catch{}const _0x163b39=a154_0x30fc83['readFileSync'](_0x40bfda,_0xd01793(0x224)),_0x1c4f2b=JSON[_0xd01793(0x1f0)](_0x163b39);_0x1c4f2b[_0xd01793(0x239)]=_0x207dfe,_0x1c4f2b[_0xd01793(0x206)]=_0x207dfe+_0xd01793(0x22d)+_0x123f93,a154_0x30fc83[_0xd01793(0x1ef)](_0x40bfda,JSON[_0xd01793(0x21c)](_0x1c4f2b,null,0x2)+'\x0a',_0xd01793(0x224)),console[_0xd01793(0x23c)]('√\x20package.json\x20updated:\x20name='+_0x207dfe),logger[_0xd01793(0x246)](_0xd01793(0x1f7),_0xd01793(0x20e));}catch(_0x119d04){logger[_0xd01793(0x21b)](_0xd01793(0x1f7),_0xd01793(0x1ee));throw _0x119d04;}}function a154_0x2e91(_0x977a97,_0x3563e5){_0x977a97=_0x977a97-0x1eb;const _0x3ce149=a154_0x3ce1();let _0x2e910d=_0x3ce149[_0x977a97];return _0x2e910d;}async function configureAppCode(_0x488642,_0x59598a,_0xec2f1f){const _0x231ebd=a154_0x2e91,_0x2c7ec4=a154_0x17b4b0[_0x231ebd(0x1ed)](process[_0x231ebd(0x1f2)](),_0x488642),_0xc621d6=a154_0x17b4b0[_0x231ebd(0x249)](_0x2c7ec4,NEW_CONFIG_NAME);try{_0x59598a?console[_0x231ebd(0x23c)](_0x231ebd(0x20c)+_0x488642+':\x20'+_0x59598a):console[_0x231ebd(0x23c)](_0x231ebd(0x20d)+_0x488642);const _0x2e8c19=getRabetbaseCliPackageRoot(),_0x1b3f50=a154_0x17b4b0[_0x231ebd(0x249)](_0x2e8c19,_0x231ebd(0x210));let _0x475cc0=_0x231ebd(0x233);try{const _0x5a8c10=JSON[_0x231ebd(0x1f0)](a154_0x30fc83['readFileSync'](_0x1b3f50,_0x231ebd(0x224)));_0x475cc0=_0x5a8c10['version']||_0x231ebd(0x233);}catch{}const _0x1aaa5b=readConfig(),_0x4ea3c9=typeof _0x1aaa5b['env']===_0x231ebd(0x248)?_0x1aaa5b[_0x231ebd(0x20b)]:undefined,_0x3641c2={};for(const _0x3d43e9 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x1aaa5b[_0x3d43e9]!=null)_0x3641c2[_0x3d43e9]=_0x1aaa5b[_0x3d43e9];}const _0x1ecbf6=buildCanonicalProjectConfig(_0x3641c2,{'appCodes':_0x59598a?[_0x59598a]:[],'env':_0xec2f1f||_0x4ea3c9||_0x231ebd(0x230),'metadata':{'createdAt':new Date()['toLocaleString'](),'version':_0x475cc0}});writeConfigFile(_0xc621d6,_0x1ecbf6),_0x59598a?console[_0x231ebd(0x23c)](_0x231ebd(0x1fd)+Object[_0x231ebd(0x23e)](_0x1ecbf6[_0x231ebd(0x1f4)]||{})[_0x231ebd(0x249)](',\x20')+_0x231ebd(0x240)+_0x1ecbf6[_0x231ebd(0x244)]):console[_0x231ebd(0x23c)](_0x231ebd(0x1f3)+CLI_BIN_NAME+_0x231ebd(0x23b)),logger[_0x231ebd(0x246)](_0x231ebd(0x1f7),_0x231ebd(0x21d)+_0x59598a);}catch(_0x516512){logger[_0x231ebd(0x21b)](_0x231ebd(0x1f7),_0x231ebd(0x23d));}}
1
+ (function(_0x4dc3d4,_0x602a74){const _0x387c78=a162_0x4c3f,_0x49f4cd=_0x4dc3d4();while(!![]){try{const _0x136925=parseInt(_0x387c78(0x149))/0x1*(-parseInt(_0x387c78(0x161))/0x2)+parseInt(_0x387c78(0x168))/0x3*(parseInt(_0x387c78(0x136))/0x4)+-parseInt(_0x387c78(0x128))/0x5*(-parseInt(_0x387c78(0x10f))/0x6)+parseInt(_0x387c78(0x12e))/0x7+parseInt(_0x387c78(0x16c))/0x8*(parseInt(_0x387c78(0x131))/0x9)+parseInt(_0x387c78(0x127))/0xa*(-parseInt(_0x387c78(0x143))/0xb)+-parseInt(_0x387c78(0x12b))/0xc;if(_0x136925===_0x602a74)break;else _0x49f4cd['push'](_0x49f4cd['shift']());}catch(_0x59ebae){_0x49f4cd['push'](_0x49f4cd['shift']());}}}(a162_0x5dde,0x463f1));import a162_0x28399a from'path';import a162_0x32c14e from'fs';import a162_0x9fc1ae from'chalk';import a162_0x4afa81 from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../core/api-client.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{readConfig}from'../../../utils/config.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';import{logger}from'../../../utils/logger.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getRabetbaseCliPackageRoot}from'../../../commands/project/create/project-template-path.js';export async function createApp(_0x33f296){const _0x242bd4=a162_0x4c3f,_0x5bd6c5=await checkCliVersion();(_0x5bd6c5[_0x242bd4(0x122)]||_0x5bd6c5[_0x242bd4(0x114)])&&(printCliUpgradeWarning(_0x5bd6c5),assertCliVersionSupported(_0x5bd6c5),logger['info']('create','CLI\x20版本检查',{'currentVersion':_0x5bd6c5[_0x242bd4(0x135)],'stableVersion':_0x5bd6c5[_0x242bd4(0x158)],'minimumVersion':_0x5bd6c5[_0x242bd4(0x123)],'needsUpgrade':_0x5bd6c5['needsUpgrade'],'belowMinimum':_0x5bd6c5[_0x242bd4(0x114)]}));if(_0x33f296[_0x242bd4(0x153)]&&_0x33f296[_0x242bd4(0x148)])await runCreate({'projectName':_0x33f296['projectCode'],'appCode':_0x33f296[_0x242bd4(0x148)],'env':_0x33f296[_0x242bd4(0x142)]},_0x33f296);else{if(_0x33f296[_0x242bd4(0x153)]){const _0x480948=await selectSingleAppcode(_0x33f296[_0x242bd4(0x150)]);await runCreate({'projectName':_0x33f296['projectCode'],'appCode':_0x480948||undefined,'env':_0x33f296[_0x242bd4(0x142)]},_0x33f296);}else await guidedCreateProject(_0x55d609=>runCreate(_0x55d609,_0x33f296),_0x33f296['env'],_0x33f296[_0x242bd4(0x150)]);}}function a162_0x4c3f(_0x1d2338,_0x14dbed){_0x1d2338=_0x1d2338-0x10c;const _0x5dde53=a162_0x5dde();let _0x4c3f78=_0x5dde53[_0x1d2338];return _0x4c3f78;}async function runCreate(_0x5b00fd,_0x497d5a){const _0x29aae2=a162_0x4c3f;if(!_0x5b00fd[_0x29aae2(0x163)]||_0x5b00fd['projectName'][_0x29aae2(0x133)]()==='')throw new Error(_0x29aae2(0x11a));const _0x54cb02=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x54cb02[_0x29aae2(0x160)](_0x5b00fd[_0x29aae2(0x163)]))throw new Error(_0x29aae2(0x110));if(_0x5b00fd[_0x29aae2(0x163)][_0x29aae2(0x16a)]>0x64)throw new Error('Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters');const _0x4827fb=a162_0x28399a[_0x29aae2(0x119)](process[_0x29aae2(0x13b)](),_0x5b00fd[_0x29aae2(0x163)]);if(a162_0x32c14e['existsSync'](_0x4827fb))throw new Error(_0x29aae2(0x116)+_0x5b00fd['projectName']+_0x29aae2(0x15b));try{a162_0x32c14e[_0x29aae2(0x13e)](a162_0x28399a[_0x29aae2(0x11c)](_0x4827fb),a162_0x32c14e[_0x29aae2(0x12a)][_0x29aae2(0x12c)]);}catch{throw new Error(_0x29aae2(0x144));}logger['setLogPath'](_0x4827fb),logger[_0x29aae2(0x156)](_0x29aae2(0x14c),_0x29aae2(0x13a)+_0x5b00fd[_0x29aae2(0x163)],{'projectDir':_0x4827fb,'appCode':_0x5b00fd['appCode']}),console[_0x29aae2(0x146)](),console[_0x29aae2(0x146)](a162_0x9fc1ae[_0x29aae2(0x11d)](_0x29aae2(0x120))+_0x29aae2(0x14a)+a162_0x9fc1ae[_0x29aae2(0x11d)](_0x5b00fd['projectName'])+(_0x5b00fd[_0x29aae2(0x148)]?_0x29aae2(0x15d)+a162_0x9fc1ae[_0x29aae2(0x124)](_0x5b00fd[_0x29aae2(0x148)]):''));try{await runTask(_0x29aae2(0x138),()=>copyProjectTemplate(_0x5b00fd[_0x29aae2(0x163)])),await updatePackageJsonName(_0x5b00fd[_0x29aae2(0x163)]),await runTask(_0x29aae2(0x118),()=>installDependencies(_0x5b00fd[_0x29aae2(0x163)])),await runTask(_0x29aae2(0x152),()=>formatProjectCode(_0x5b00fd['projectName'])),await configureAppCode(_0x5b00fd['projectName'],_0x5b00fd[_0x29aae2(0x148)]||'',_0x5b00fd[_0x29aae2(0x142)]);let _0x3edb0d=![];if(_0x5b00fd[_0x29aae2(0x148)]){console[_0x29aae2(0x146)](_0x29aae2(0x145));const _0x4ac9a7=process['cwd']();try{process[_0x29aae2(0x10c)](_0x4827fb);const _0x2d82a1=_0x5b00fd[_0x29aae2(0x142)]||_0x29aae2(0x11f);initEnv(_0x2d82a1);const {configArray:_0x245b00}=await fetchModelList(_0x5b00fd['appCode'],_0x497d5a[_0x29aae2(0x150)]||''),_0x1baa68=DEFAULT_API_DIR,_0xb549eb=await generateApiFile(_0x245b00,'',_0x5b00fd[_0x29aae2(0x148)],!![],_0x2d82a1,_0x1baa68);console[_0x29aae2(0x146)](_0x29aae2(0x14d)+_0x245b00[_0x29aae2(0x16a)]+_0x29aae2(0x155)+_0xb549eb[_0x29aae2(0x14e)]+_0x29aae2(0x121)),logger[_0x29aae2(0x156)]('create',_0x29aae2(0x13f)+_0x5b00fd[_0x29aae2(0x148)]);}catch(_0x4fa56f){_0x3edb0d=!![],console['log'](_0x29aae2(0x125)),logger[_0x29aae2(0x16b)]('create','API\x20配置拉取异常',{'error':_0x4fa56f instanceof Error?_0x4fa56f[_0x29aae2(0x13d)]:String(_0x4fa56f)});}finally{process[_0x29aae2(0x10c)](_0x4ac9a7);}}logger['success']('create','项目创建完成:\x20'+_0x5b00fd[_0x29aae2(0x163)]),console[_0x29aae2(0x146)](),console[_0x29aae2(0x146)](a162_0x9fc1ae[_0x29aae2(0x11d)]('─'[_0x29aae2(0x10e)](0x3c))),console[_0x29aae2(0x146)](a162_0x9fc1ae[_0x29aae2(0x124)][_0x29aae2(0x162)](_0x29aae2(0x157))),console[_0x29aae2(0x146)](),console[_0x29aae2(0x146)](_0x29aae2(0x126)+a162_0x9fc1ae[_0x29aae2(0x124)][_0x29aae2(0x162)](_0x29aae2(0x140)+_0x5b00fd['projectName']+_0x29aae2(0x11b)+CLI_BIN_NAME+'\x20run\x20start')),_0x3edb0d&&console['log'](_0x29aae2(0x132)+a162_0x9fc1ae[_0x29aae2(0x124)]['bold'](CLI_BIN_NAME+'\x20api\x20pull')),console['log'](a162_0x9fc1ae[_0x29aae2(0x11d)]('─'[_0x29aae2(0x10e)](0x3c)));}catch(_0x111a0b){logger[_0x29aae2(0x13c)](_0x29aae2(0x14c),_0x29aae2(0x14b)+_0x5b00fd['projectName'],{'error':_0x111a0b instanceof Error?_0x111a0b[_0x29aae2(0x13d)]:String(_0x111a0b)});try{a162_0x32c14e['existsSync'](_0x4827fb)&&(console[_0x29aae2(0x146)]('*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20'+_0x4827fb),a162_0x32c14e['rmSync'](_0x4827fb,{'recursive':!![],'force':!![]}));}catch{logger['warn'](_0x29aae2(0x14c),_0x29aae2(0x147)+_0x4827fb);}throw _0x111a0b;}}async function runTask(_0x22a1cc,_0x112fcc){const _0xf22d54=a162_0x4c3f,_0x128b79=a162_0x4afa81(_0x22a1cc+_0xf22d54(0x14f))['start']();try{const _0x3af75e=await _0x112fcc();_0x128b79[_0xf22d54(0x12d)](),console['log'](''+a162_0x9fc1ae[_0xf22d54(0x11d)](_0xf22d54(0x120))+_0x22a1cc+'\x20'+a162_0x9fc1ae[_0xf22d54(0x15e)]('['+_0x3af75e+']'));}catch(_0x4b05b6){_0x128b79[_0xf22d54(0x111)](_0x22a1cc);throw _0x4b05b6;}}async function updatePackageJsonName(_0x22cea6){const _0x11b234=a162_0x4c3f,_0x46bbb1=a162_0x28399a[_0x11b234(0x119)](process[_0x11b234(0x13b)](),_0x22cea6),_0x25035d=a162_0x28399a[_0x11b234(0x15f)](_0x46bbb1,_0x11b234(0x134));try{console[_0x11b234(0x146)](_0x11b234(0x15a));const _0x4c18c5=getRabetbaseCliPackageRoot(),_0x4f1ba0=a162_0x28399a[_0x11b234(0x15f)](_0x4c18c5,_0x11b234(0x134));let _0x260603=_0x11b234(0x11e);try{const _0x2e04f6=JSON[_0x11b234(0x167)](a162_0x32c14e[_0x11b234(0x115)](_0x4f1ba0,_0x11b234(0x139)));_0x260603=_0x2e04f6[_0x11b234(0x117)]||_0x11b234(0x11e);}catch{}const _0x42614=a162_0x32c14e[_0x11b234(0x115)](_0x25035d,_0x11b234(0x139)),_0x35e987=JSON[_0x11b234(0x167)](_0x42614);_0x35e987[_0x11b234(0x129)]=_0x22cea6,_0x35e987[_0x11b234(0x113)]=_0x22cea6+_0x11b234(0x151)+_0x260603,a162_0x32c14e['writeFileSync'](_0x25035d,JSON[_0x11b234(0x15c)](_0x35e987,null,0x2)+'\x0a',_0x11b234(0x139)),console[_0x11b234(0x146)](_0x11b234(0x166)+_0x22cea6),logger[_0x11b234(0x156)](_0x11b234(0x14c),_0x11b234(0x141));}catch(_0x16e1d2){logger['error'](_0x11b234(0x14c),'更新\x20package.json\x20失败');throw _0x16e1d2;}}function a162_0x5dde(){const _0x156b07=['constants','5771088OuUCBx','W_OK','stop','512715mtkMfG','defaultApp','apps','63DcKhvs','\x20\x202.\x20Pull\x20API\x20configuration:\x20','trim','package.json','currentVersion','14580OrmMzN','\x20config\x20set\x20appcode\x20<app-code>\x27','Copy\x20project\x20files','utf8','开始创建项目:\x20','cwd','error','message','accessSync','API\x20configuration\x20pulled:\x20','cd\x20','更新\x20package.json\x20name','env','27841mXAOBa','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','*\x20Pulling\x20API\x20configuration...','log','清理项目目录失败:\x20','appCode','59513zJyhem','Project\x20name:\x20','项目创建失败:\x20','create','√\x20Pulled\x20','modelCount','...','cookie','\x20Generated\x20by\x20rabetbase\x20cli\x20','Format\x20code','projectCode','toLocaleString','\x20dataset(s),\x20generated\x20','info','🚀\x20Next\x20Steps:','stableVersion','√\x20Configuration\x20file\x20created,\x20Apps:\x20','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','\x20already\x20exists','stringify','\x20|\x20AppCode:\x20','gray','join','test','2dQhFZT','bold','projectName','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','string','√\x20package.json\x20updated:\x20name=','parse','60QTDolm','*\x20Configuring\x20AppCode\x20for\x20project\x20','length','warn','570432Poogcx','chdir','配置应用AppCode:\x20','repeat','1248GUgMDu','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','fail','keys','description','belowMinimum','readFileSync','Project\x20directory\x20','version','Install\x20dependencies','resolve','Project\x20name\x20cannot\x20be\x20empty','\x20&&\x20','dirname','green','1.0.0','production','\x20√\x20','\x20model(s)','needsUpgrade','minimumVersion','cyan','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','\x20\x201.\x20Start\x20project:\x20','1290PhSUev','12245EhVcSi','name'];a162_0x5dde=function(){return _0x156b07;};return a162_0x5dde();}async function configureAppCode(_0x5d62bc,_0x1c204e,_0x30d36e){const _0x40b06a=a162_0x4c3f,_0x40a6d7=a162_0x28399a[_0x40b06a(0x119)](process[_0x40b06a(0x13b)](),_0x5d62bc),_0x430eeb=a162_0x28399a[_0x40b06a(0x15f)](_0x40a6d7,NEW_CONFIG_NAME);try{_0x1c204e?console['log'](_0x40b06a(0x169)+_0x5d62bc+':\x20'+_0x1c204e):console[_0x40b06a(0x146)](_0x40b06a(0x164)+_0x5d62bc);const _0x2e5773=getRabetbaseCliPackageRoot(),_0x2b7e48=a162_0x28399a[_0x40b06a(0x15f)](_0x2e5773,_0x40b06a(0x134));let _0x15ade1=_0x40b06a(0x11e);try{const _0x66706a=JSON[_0x40b06a(0x167)](a162_0x32c14e[_0x40b06a(0x115)](_0x2b7e48,_0x40b06a(0x139)));_0x15ade1=_0x66706a[_0x40b06a(0x117)]||_0x40b06a(0x11e);}catch{}const _0x41b39b=readConfig(),_0x1fa9e8=typeof _0x41b39b['env']===_0x40b06a(0x165)?_0x41b39b['env']:undefined,_0x120a60={};for(const _0x1bdac5 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x41b39b[_0x1bdac5]!=null)_0x120a60[_0x1bdac5]=_0x41b39b[_0x1bdac5];}const _0x276eb5=buildCanonicalProjectConfig(_0x120a60,{'appCodes':_0x1c204e?[_0x1c204e]:[],'env':_0x30d36e||_0x1fa9e8||'production','metadata':{'createdAt':new Date()[_0x40b06a(0x154)](),'version':_0x15ade1}});writeConfigFile(_0x430eeb,_0x276eb5),_0x1c204e?console[_0x40b06a(0x146)](_0x40b06a(0x159)+Object[_0x40b06a(0x112)](_0x276eb5[_0x40b06a(0x130)]||{})[_0x40b06a(0x15f)](',\x20')+'\x20|\x20Default:\x20'+_0x276eb5[_0x40b06a(0x12f)]):console[_0x40b06a(0x146)]('√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27'+CLI_BIN_NAME+_0x40b06a(0x137)),logger['info'](_0x40b06a(0x14c),_0x40b06a(0x10d)+_0x1c204e);}catch(_0x1bd33d){logger[_0x40b06a(0x13c)]('create','配置应用AppCode失败');}}
@@ -1 +1 @@
1
- (function(_0x133fad,_0x5ced96){const _0x2ea296=a155_0x2aab,_0x38da9d=_0x133fad();while(!![]){try{const _0x4661b7=-parseInt(_0x2ea296(0x9f))/0x1+parseInt(_0x2ea296(0x9d))/0x2*(-parseInt(_0x2ea296(0xad))/0x3)+parseInt(_0x2ea296(0xaa))/0x4+-parseInt(_0x2ea296(0x78))/0x5*(-parseInt(_0x2ea296(0xa1))/0x6)+-parseInt(_0x2ea296(0xa6))/0x7+parseInt(_0x2ea296(0x8c))/0x8*(-parseInt(_0x2ea296(0x98))/0x9)+-parseInt(_0x2ea296(0x77))/0xa*(-parseInt(_0x2ea296(0x7c))/0xb);if(_0x4661b7===_0x5ced96)break;else _0x38da9d['push'](_0x38da9d['shift']());}catch(_0x34588e){_0x38da9d['push'](_0x38da9d['shift']());}}}(a155_0x2739,0x84c51));import a155_0x3ba32b from'path';import a155_0x18131d from'fs/promises';import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';import{fetchModelList}from'../../../core/api-client.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';function a155_0x2aab(_0x42fc82,_0x1c56f5){_0x42fc82=_0x42fc82-0x76;const _0x2739d5=a155_0x2739();let _0x2aabf2=_0x2739d5[_0x42fc82];return _0x2aabf2;}import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';const execAsync=promisify(exec);function a155_0x2739(){const _0x3b537a=['\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','\x0a\x20\x20cd\x20','\x20model(s)','trim','4TsjeUA','\x0a√\x20Project\x20','1010120IfUSph','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','344298YgqvzB','ignore','length','needsUpgrade','parse','2377487xKmujk','Project\x20name\x20cannot\x20be\x20empty.','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','modelCount','2955524lucPOx','env','toLocaleString','1075449POsFaS','dirname','6416170wtAoXb','85nnpHLL','\x20\x20√\x20Pulled\x20','writeFile','\x20\x20rabetbase\x20run\x20start\x0a','22JuiMBK','Check\x20directory\x20permissions.','test','chdir','*\x20Creating\x20project\x20','stringify','readFile','Cannot\x20create\x20project\x20in\x20current\x20directory.','\x20\x20√\x20package.json\x20updated','name','\x20created\x20successfully!','\x22\x20already\x20exists.','Project\x20directory\x20\x22','string','join','cwd','15032emvccD','belowMinimum','Use\x20a\x20different\x20project\x20name.','validation','resolve','bun\x20--version','production','\x20\x20√\x20Project\x20template\x20created','npm','package.json','\x20\x20√\x20Configuration\x20file\x20created','log','1854jlVete'];a155_0x2739=function(){return _0x3b537a;};return a155_0x2739();}export async function createProjectNonInteractive(_0x2860b0,_0x1d9de1,_0x5b6402,_0x96acb1){const _0x502f08=a155_0x2aab,_0x561740=await checkCliVersion();(_0x561740[_0x502f08(0xa4)]||_0x561740[_0x502f08(0x8d)])&&(printCliUpgradeWarning(_0x561740),assertCliVersionSupported(_0x561740));if(!_0x2860b0||_0x2860b0[_0x502f08(0x9c)]()==='')throw CliErrors['validation'](_0x502f08(0xa7));const _0x5a8951=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x5a8951[_0x502f08(0x7e)](_0x2860b0))throw CliErrors[_0x502f08(0x8f)]('Project\x20name\x20contains\x20invalid\x20characters.','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters');if(_0x2860b0[_0x502f08(0xa3)]>0x64)throw CliErrors[_0x502f08(0x8f)](_0x502f08(0xa8));const _0x2149ad=a155_0x3ba32b[_0x502f08(0x90)](process[_0x502f08(0x8b)](),_0x2860b0);if(existsSync(_0x2149ad))throw CliErrors['validation'](_0x502f08(0x88)+_0x2860b0+_0x502f08(0x87),_0x502f08(0x8e));try{const _0x491e80=a155_0x3ba32b[_0x502f08(0x76)](_0x2149ad);await a155_0x18131d['access'](_0x491e80,a155_0x18131d['constants']['W_OK']);}catch{throw CliErrors[_0x502f08(0x8f)](_0x502f08(0x83),_0x502f08(0x7d));}try{console[_0x502f08(0x97)](_0x502f08(0x80)+_0x2860b0+'...');const _0x32fd29=getSubAppReactDemoTemplateDir();await copyDirectory(_0x32fd29,_0x2149ad),console[_0x502f08(0x97)](_0x502f08(0x93)),await updatePackageJsonName(_0x2860b0),console['log'](_0x502f08(0x84)),console[_0x502f08(0x97)]('\x20\x20Installing\x20dependencies...'),console[_0x502f08(0x97)]('\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)'),await formatCode(_0x2149ad),console[_0x502f08(0x97)]('\x20\x20√\x20Code\x20formatted'),await configureProject(_0x2860b0,_0x5b6402,_0x1d9de1),console[_0x502f08(0x97)](_0x502f08(0x96)),_0x5b6402&&await pullApiConfig(_0x2149ad,_0x5b6402,_0x1d9de1,_0x96acb1),console['log'](_0x502f08(0x9e)+_0x2860b0+_0x502f08(0x86)),console[_0x502f08(0x97)](_0x502f08(0x9a)+_0x2860b0),console[_0x502f08(0x97)](_0x502f08(0x7b));}catch(_0x471b46){try{existsSync(_0x2149ad)&&await a155_0x18131d['rm'](_0x2149ad,{'recursive':!![],'force':!![]});}catch{}throw _0x471b46;}}async function updatePackageJsonName(_0x51aafd){const _0x5acdb2=a155_0x2aab,_0x1e54aa=a155_0x3ba32b[_0x5acdb2(0x90)](process['cwd'](),_0x51aafd),_0x550728=a155_0x3ba32b['join'](_0x1e54aa,_0x5acdb2(0x95)),_0x148d00=await a155_0x18131d[_0x5acdb2(0x82)](_0x550728,'utf-8'),_0x35b8e7=JSON[_0x5acdb2(0xa5)](_0x148d00);_0x35b8e7[_0x5acdb2(0x85)]=_0x51aafd,_0x35b8e7['description']=_0x5acdb2(0xa0),await a155_0x18131d[_0x5acdb2(0x7a)](_0x550728,JSON[_0x5acdb2(0x81)](_0x35b8e7,null,0x2)+'\x0a');}function detectPackageManager(){const _0x4ddb30=a155_0x2aab;try{return execSync(_0x4ddb30(0x91),{'stdio':_0x4ddb30(0xa2)}),'bun';}catch{return _0x4ddb30(0x94);}}async function formatCode(_0x273617){try{await execAsync('bun\x20run\x20format',{'cwd':_0x273617});}catch{}}async function configureProject(_0x1ecef0,_0x48c6e5,_0x28e6a9){const _0x57dea6=a155_0x2aab,_0x1af53e=a155_0x3ba32b[_0x57dea6(0x90)](process[_0x57dea6(0x8b)](),_0x1ecef0),_0x48a855=a155_0x3ba32b[_0x57dea6(0x8a)](_0x1af53e,NEW_CONFIG_NAME),_0x10985b=readConfig(),_0x2b434b=typeof _0x10985b[_0x57dea6(0xab)]===_0x57dea6(0x89)?_0x10985b[_0x57dea6(0xab)]:undefined,_0x4cce23={};for(const _0x103dd3 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x10985b[_0x103dd3]!=null)_0x4cce23[_0x103dd3]=_0x10985b[_0x103dd3];}const _0x261e84=buildCanonicalProjectConfig(_0x4cce23,{'appCodes':_0x48c6e5?[_0x48c6e5]:[],'env':_0x28e6a9||_0x2b434b||_0x57dea6(0x92),'metadata':{'createdAt':new Date()[_0x57dea6(0xac)](),'version':getCliVersion()}});writeConfigFile(_0x48a855,_0x261e84);}async function pullApiConfig(_0x4cff96,_0x5197ba,_0x6a64bd,_0x4c61ed){const _0xd3c5fc=a155_0x2aab,_0x26630e=process[_0xd3c5fc(0x8b)]();try{process[_0xd3c5fc(0x7f)](_0x4cff96);const _0x5ea57f=_0x6a64bd||_0xd3c5fc(0x92);initEnv(_0x5ea57f),console[_0xd3c5fc(0x97)]('\x20\x20Pulling\x20API\x20configuration...');const {configArray:_0x198dc6}=await fetchModelList(_0x5197ba,_0x4c61ed||''),_0x35f86d=await generateApiFile(_0x198dc6,'',_0x5197ba,!![],_0x5ea57f,DEFAULT_API_DIR);console[_0xd3c5fc(0x97)](_0xd3c5fc(0x79)+_0x198dc6[_0xd3c5fc(0xa3)]+'\x20dataset(s),\x20generated\x20'+_0x35f86d[_0xd3c5fc(0xa9)]+_0xd3c5fc(0x9b));}catch(_0x42aca6){console[_0xd3c5fc(0x97)](_0xd3c5fc(0x99)+CLI_BIN_NAME+'\x20api\x20pull`\x20manually\x20later.');}finally{process['chdir'](_0x26630e);}}
1
+ function a163_0x1660(){const _0x199698=['validation','2996890jniDcP','760311TdqZQW','5369lAjEpi','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','2ESbChS','chdir','description','cwd','toLocaleString','\x20model(s)','\x20\x20√\x20Pulled\x20','bun\x20--version','modelCount','package.json','41197IFynmP','\x20dataset(s),\x20generated\x20','log','belowMinimum','\x20\x20Pulling\x20API\x20configuration...','...','767403ypAqtO','W_OK','npm','\x20created\x20successfully!','trim','dirname','6gBUPEC','29508QofWzh','*\x20Creating\x20project\x20','env','name','bun\x20run\x20format','Use\x20a\x20different\x20project\x20name.','4jGnToY','readFile','test','168570YCQtau','\x0a√\x20Project\x20','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','\x20\x20Installing\x20dependencies...','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','\x22\x20already\x20exists.','production','11qnwSBl','16IcPwSu','ignore','length','join','access','Project\x20name\x20cannot\x20be\x20empty.','stringify','Check\x20directory\x20permissions.','parse','\x20\x20rabetbase\x20run\x20start\x0a','writeFile','resolve','utf-8','300937baYlCp','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)'];a163_0x1660=function(){return _0x199698;};return a163_0x1660();}(function(_0x240099,_0x342824){const _0x2b2f84=a163_0x57e9,_0x48368a=_0x240099();while(!![]){try{const _0x32ddd1=-parseInt(_0x2b2f84(0xd2))/0x1+parseInt(_0x2b2f84(0x105))/0x2*(-parseInt(_0x2b2f84(0xd8))/0x3)+parseInt(_0x2b2f84(0xe5))/0x4*(-parseInt(_0x2b2f84(0xe8))/0x5)+parseInt(_0x2b2f84(0xde))/0x6*(-parseInt(_0x2b2f84(0xfe))/0x7)+parseInt(_0x2b2f84(0xf1))/0x8*(-parseInt(_0x2b2f84(0x102))/0x9)+-parseInt(_0x2b2f84(0x101))/0xa*(parseInt(_0x2b2f84(0xf0))/0xb)+-parseInt(_0x2b2f84(0xdf))/0xc*(-parseInt(_0x2b2f84(0x103))/0xd);if(_0x32ddd1===_0x342824)break;else _0x48368a['push'](_0x48368a['shift']());}catch(_0x2f4480){_0x48368a['push'](_0x48368a['shift']());}}}(a163_0x1660,0x2a4a1));import a163_0xe2e705 from'path';import a163_0x49354c from'fs/promises';import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';import{fetchModelList}from'../../../core/api-client.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';function a163_0x57e9(_0x381623,_0x27bdfc){_0x381623=_0x381623-0xcb;const _0x16606e=a163_0x1660();let _0x57e95a=_0x16606e[_0x381623];return _0x57e95a;}import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';const execAsync=promisify(exec);export async function createProjectNonInteractive(_0x17fe40,_0x47d2dd,_0x41bcdc,_0x4d1506){const _0x257c22=a163_0x57e9,_0x2fa563=await checkCliVersion();(_0x2fa563['needsUpgrade']||_0x2fa563[_0x257c22(0xd5)])&&(printCliUpgradeWarning(_0x2fa563),assertCliVersionSupported(_0x2fa563));if(!_0x17fe40||_0x17fe40[_0x257c22(0xdc)]()==='')throw CliErrors[_0x257c22(0x100)](_0x257c22(0xf6));const _0x401a1f=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x401a1f[_0x257c22(0xe7)](_0x17fe40))throw CliErrors[_0x257c22(0x100)]('Project\x20name\x20contains\x20invalid\x20characters.',_0x257c22(0xea));if(_0x17fe40[_0x257c22(0xf3)]>0x64)throw CliErrors[_0x257c22(0x100)](_0x257c22(0x104));const _0x58702f=a163_0xe2e705['resolve'](process[_0x257c22(0xcb)](),_0x17fe40);if(existsSync(_0x58702f))throw CliErrors[_0x257c22(0x100)]('Project\x20directory\x20\x22'+_0x17fe40+_0x257c22(0xee),_0x257c22(0xe4));try{const _0x5a0aa3=a163_0xe2e705[_0x257c22(0xdd)](_0x58702f);await a163_0x49354c[_0x257c22(0xf5)](_0x5a0aa3,a163_0x49354c['constants'][_0x257c22(0xd9)]);}catch{throw CliErrors[_0x257c22(0x100)]('Cannot\x20create\x20project\x20in\x20current\x20directory.',_0x257c22(0xf8));}try{console[_0x257c22(0xd4)](_0x257c22(0xe0)+_0x17fe40+_0x257c22(0xd7));const _0x261033=getSubAppReactDemoTemplateDir();await copyDirectory(_0x261033,_0x58702f),console[_0x257c22(0xd4)]('\x20\x20√\x20Project\x20template\x20created'),await updatePackageJsonName(_0x17fe40),console[_0x257c22(0xd4)]('\x20\x20√\x20package.json\x20updated'),console['log'](_0x257c22(0xec)),console[_0x257c22(0xd4)](_0x257c22(0xff)),await formatCode(_0x58702f),console[_0x257c22(0xd4)]('\x20\x20√\x20Code\x20formatted'),await configureProject(_0x17fe40,_0x41bcdc,_0x47d2dd),console[_0x257c22(0xd4)]('\x20\x20√\x20Configuration\x20file\x20created'),_0x41bcdc&&await pullApiConfig(_0x58702f,_0x41bcdc,_0x47d2dd,_0x4d1506),console[_0x257c22(0xd4)](_0x257c22(0xe9)+_0x17fe40+_0x257c22(0xdb)),console['log']('\x0a\x20\x20cd\x20'+_0x17fe40),console[_0x257c22(0xd4)](_0x257c22(0xfa));}catch(_0x10e698){try{existsSync(_0x58702f)&&await a163_0x49354c['rm'](_0x58702f,{'recursive':!![],'force':!![]});}catch{}throw _0x10e698;}}async function updatePackageJsonName(_0x41b331){const _0x59a12c=a163_0x57e9,_0x14bdaf=a163_0xe2e705[_0x59a12c(0xfc)](process[_0x59a12c(0xcb)](),_0x41b331),_0x3f4c96=a163_0xe2e705[_0x59a12c(0xf4)](_0x14bdaf,_0x59a12c(0xd1)),_0x438389=await a163_0x49354c[_0x59a12c(0xe6)](_0x3f4c96,_0x59a12c(0xfd)),_0x178eab=JSON[_0x59a12c(0xf9)](_0x438389);_0x178eab[_0x59a12c(0xe2)]=_0x41b331,_0x178eab[_0x59a12c(0x107)]=_0x59a12c(0xeb),await a163_0x49354c[_0x59a12c(0xfb)](_0x3f4c96,JSON[_0x59a12c(0xf7)](_0x178eab,null,0x2)+'\x0a');}function detectPackageManager(){const _0x20f8f1=a163_0x57e9;try{return execSync(_0x20f8f1(0xcf),{'stdio':_0x20f8f1(0xf2)}),'bun';}catch{return _0x20f8f1(0xda);}}async function formatCode(_0x55b3a2){const _0x5f3870=a163_0x57e9;try{await execAsync(_0x5f3870(0xe3),{'cwd':_0x55b3a2});}catch{}}async function configureProject(_0x573146,_0x2e1827,_0x19cde5){const _0x3bf2ba=a163_0x57e9,_0x2c0e8b=a163_0xe2e705[_0x3bf2ba(0xfc)](process['cwd'](),_0x573146),_0x23b2ac=a163_0xe2e705[_0x3bf2ba(0xf4)](_0x2c0e8b,NEW_CONFIG_NAME),_0x2b3624=readConfig(),_0x26b4b8=typeof _0x2b3624[_0x3bf2ba(0xe1)]==='string'?_0x2b3624[_0x3bf2ba(0xe1)]:undefined,_0x2be765={};for(const _0x4aa321 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x2b3624[_0x4aa321]!=null)_0x2be765[_0x4aa321]=_0x2b3624[_0x4aa321];}const _0x3be92f=buildCanonicalProjectConfig(_0x2be765,{'appCodes':_0x2e1827?[_0x2e1827]:[],'env':_0x19cde5||_0x26b4b8||'production','metadata':{'createdAt':new Date()[_0x3bf2ba(0xcc)](),'version':getCliVersion()}});writeConfigFile(_0x23b2ac,_0x3be92f);}async function pullApiConfig(_0x37c077,_0x44aa32,_0x1dcdaf,_0x352dad){const _0x4897b4=a163_0x57e9,_0x2de971=process['cwd']();try{process['chdir'](_0x37c077);const _0x5ce1a2=_0x1dcdaf||_0x4897b4(0xef);initEnv(_0x5ce1a2),console[_0x4897b4(0xd4)](_0x4897b4(0xd6));const {configArray:_0x51e2fd}=await fetchModelList(_0x44aa32,_0x352dad||''),_0x5c0c59=await generateApiFile(_0x51e2fd,'',_0x44aa32,!![],_0x5ce1a2,DEFAULT_API_DIR);console[_0x4897b4(0xd4)](_0x4897b4(0xce)+_0x51e2fd[_0x4897b4(0xf3)]+_0x4897b4(0xd3)+_0x5c0c59[_0x4897b4(0xd0)]+_0x4897b4(0xcd));}catch(_0x1d662e){console['log'](_0x4897b4(0xed)+CLI_BIN_NAME+'\x20api\x20pull`\x20manually\x20later.');}finally{process[_0x4897b4(0x106)](_0x2de971);}}
@@ -1 +1 @@
1
- const a156_0x433557=a156_0x18c2;function a156_0x48bc(){const _0x4488d6=['1173716qlczJB','5945780SIiEkv','../../../../','resolve','454795JVVWRM','1906998ZCmasd','3702440MBDrOh','dirname','7497NABbuz','templates','29056ylxycw','2gshhRt','198VRjGmD'];a156_0x48bc=function(){return _0x4488d6;};return a156_0x48bc();}(function(_0x242300,_0x485e44){const _0x1c0288=a156_0x18c2,_0x33ffb8=_0x242300();while(!![]){try{const _0x5ea8e8=-parseInt(_0x1c0288(0x198))/0x1+-parseInt(_0x1c0288(0x192))/0x2*(parseInt(_0x1c0288(0x19c))/0x3)+parseInt(_0x1c0288(0x194))/0x4+parseInt(_0x1c0288(0x195))/0x5+parseInt(_0x1c0288(0x199))/0x6+-parseInt(_0x1c0288(0x19a))/0x7+-parseInt(_0x1c0288(0x191))/0x8*(parseInt(_0x1c0288(0x193))/0x9);if(_0x5ea8e8===_0x485e44)break;else _0x33ffb8['push'](_0x33ffb8['shift']());}catch(_0x1993ac){_0x33ffb8['push'](_0x33ffb8['shift']());}}}(a156_0x48bc,0xb345c));import a156_0x392a40 from'node:path';function a156_0x18c2(_0x4432d4,_0x44638c){_0x4432d4=_0x4432d4-0x190;const _0x48bc6c=a156_0x48bc();let _0x18c2e7=_0x48bc6c[_0x4432d4];return _0x18c2e7;}import{fileURLToPath}from'node:url';const __dirname=a156_0x392a40[a156_0x433557(0x19b)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x51554c=a156_0x433557;return a156_0x392a40[_0x51554c(0x197)](__dirname,_0x51554c(0x196));}export function getSubAppReactDemoTemplateDir(){const _0x3c7aad=a156_0x433557;return a156_0x392a40['join'](getRabetbaseCliPackageRoot(),_0x3c7aad(0x190),'projects','sub-app-react-demo');}
1
+ const a164_0x40708e=a164_0x2639;(function(_0x4d6d85,_0x2a0939){const _0x50ff5f=a164_0x2639,_0x444475=_0x4d6d85();while(!![]){try{const _0x3fd990=-parseInt(_0x50ff5f(0x106))/0x1*(parseInt(_0x50ff5f(0x10c))/0x2)+parseInt(_0x50ff5f(0x10e))/0x3*(parseInt(_0x50ff5f(0x100))/0x4)+-parseInt(_0x50ff5f(0x105))/0x5+parseInt(_0x50ff5f(0x108))/0x6*(parseInt(_0x50ff5f(0x10a))/0x7)+-parseInt(_0x50ff5f(0x107))/0x8*(-parseInt(_0x50ff5f(0x103))/0x9)+parseInt(_0x50ff5f(0x101))/0xa+-parseInt(_0x50ff5f(0x102))/0xb;if(_0x3fd990===_0x2a0939)break;else _0x444475['push'](_0x444475['shift']());}catch(_0x5729d2){_0x444475['push'](_0x444475['shift']());}}}(a164_0xd5a8,0xb5763));import a164_0xaff788 from'node:path';import{fileURLToPath}from'node:url';function a164_0xd5a8(){const _0x4655c5=['../../../../','4194921FidpuB','projects','dirname','4TwTLfG','13342480sVFIGT','35465320fRIYMW','9HGWscq','sub-app-react-demo','1016830wMcMPR','218857FVsYbW','10938568upVAmB','4364688XNAQqc','templates','7DgLZgl','resolve','6AQcNUH'];a164_0xd5a8=function(){return _0x4655c5;};return a164_0xd5a8();}const __dirname=a164_0xaff788[a164_0x40708e(0xff)](fileURLToPath(import.meta.url));function a164_0x2639(_0x40a39a,_0x4bcf1a){_0x40a39a=_0x40a39a-0xff;const _0xd5a8d=a164_0xd5a8();let _0x2639b0=_0xd5a8d[_0x40a39a];return _0x2639b0;}export function getRabetbaseCliPackageRoot(){const _0x37768e=a164_0x40708e;return a164_0xaff788[_0x37768e(0x10b)](__dirname,_0x37768e(0x10d));}export function getSubAppReactDemoTemplateDir(){const _0x4c0ad7=a164_0x40708e;return a164_0xaff788['join'](getRabetbaseCliPackageRoot(),_0x4c0ad7(0x109),_0x4c0ad7(0x10f),_0x4c0ad7(0x104));}
@@ -1 +1 @@
1
- (function(_0x1d3864,_0x982409){const _0x588595=a157_0x2e4f,_0x25e4ef=_0x1d3864();while(!![]){try{const _0x8507e4=parseInt(_0x588595(0x1c6))/0x1+-parseInt(_0x588595(0x1c9))/0x2*(-parseInt(_0x588595(0x1ba))/0x3)+parseInt(_0x588595(0x1c0))/0x4*(parseInt(_0x588595(0x1bb))/0x5)+parseInt(_0x588595(0x1c5))/0x6*(parseInt(_0x588595(0x1b8))/0x7)+parseInt(_0x588595(0x1c7))/0x8+-parseInt(_0x588595(0x1b7))/0x9*(-parseInt(_0x588595(0x1c3))/0xa)+-parseInt(_0x588595(0x1b9))/0xb;if(_0x8507e4===_0x982409)break;else _0x25e4ef['push'](_0x25e4ef['shift']());}catch(_0x2def90){_0x25e4ef['push'](_0x25e4ef['shift']());}}}(a157_0x48f9,0x41aa2));import a157_0x31a4d6 from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x10fd74){const _0x3ff098=a157_0x2e4f,_0x550ebc=Date[_0x3ff098(0x1be)](),_0x45b7ce=a157_0x31a4d6[_0x3ff098(0x1bf)](process['cwd'](),_0x10fd74);try{logger[_0x3ff098(0x1bd)]('copy','开始复制项目模板',{'projectCode':_0x10fd74,'templateDir':templateDir}),await copyDirectory(templateDir,_0x45b7ce);const _0x402e2c=Date[_0x3ff098(0x1be)]()-_0x550ebc;logger[_0x3ff098(0x1bc)](_0x3ff098(0x1c2),'项目模板复制完成',_0x402e2c,{'projectCode':_0x10fd74});}catch(_0x1b11b7){const _0x3031a8=Date[_0x3ff098(0x1be)]()-_0x550ebc;logger[_0x3ff098(0x1c1)]('copy',_0x3ff098(0x1c8),{'projectCode':_0x10fd74,'error':_0x1b11b7 instanceof Error?_0x1b11b7[_0x3ff098(0x1c4)]:String(_0x1b11b7),'duration':_0x3031a8});throw _0x1b11b7;}return formatElapsed(_0x550ebc);}function a157_0x2e4f(_0x181751,_0x172240){_0x181751=_0x181751-0x1b7;const _0x48f9d1=a157_0x48f9();let _0x2e4fc1=_0x48f9d1[_0x181751];return _0x2e4fc1;}function a157_0x48f9(){const _0x4f1480=['526963BFWdoS','3094448KXzdRx','项目模板复制失败','7850jJREZR','9APqSZx','14Pwlswr','14946338PYSSvs','6FYFLZu','10RHBwxX','success','info','now','resolve','349340UdNYGX','error','copy','3904690DtWiPN','message','422886xNNocv'];a157_0x48f9=function(){return _0x4f1480;};return a157_0x48f9();}
1
+ (function(_0x49946b,_0x80e2bf){const _0x249803=a165_0x31b3,_0x386350=_0x49946b();while(!![]){try{const _0x407fc4=-parseInt(_0x249803(0x194))/0x1*(-parseInt(_0x249803(0x18d))/0x2)+-parseInt(_0x249803(0x197))/0x3+-parseInt(_0x249803(0x19f))/0x4*(-parseInt(_0x249803(0x18f))/0x5)+-parseInt(_0x249803(0x193))/0x6+-parseInt(_0x249803(0x196))/0x7*(parseInt(_0x249803(0x190))/0x8)+-parseInt(_0x249803(0x191))/0x9+parseInt(_0x249803(0x195))/0xa*(parseInt(_0x249803(0x199))/0xb);if(_0x407fc4===_0x80e2bf)break;else _0x386350['push'](_0x386350['shift']());}catch(_0x4cad16){_0x386350['push'](_0x386350['shift']());}}}(a165_0x2494,0x2e78a));import a165_0x513ce2 from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';function a165_0x2494(){const _0x3d3d4b=['197528oiwXpO','1477062WguWqy','开始复制项目模板','582840AJUXWv','147293NZehjf','1504070YxTNyr','63RtveoD','254646eDNqlV','copy','22PJlBhs','info','now','项目模板复制失败','success','message','1242392KgiwFZ','项目模板复制完成','2NPzPtp','resolve','5UcdjRW'];a165_0x2494=function(){return _0x3d3d4b;};return a165_0x2494();}const templateDir=getSubAppReactDemoTemplateDir();function a165_0x31b3(_0x14c6ba,_0x139bbe){_0x14c6ba=_0x14c6ba-0x18d;const _0x249467=a165_0x2494();let _0x31b351=_0x249467[_0x14c6ba];return _0x31b351;}export async function copyProjectTemplate(_0x3bb4c0){const _0xa77dff=a165_0x31b3,_0xf67f27=Date[_0xa77dff(0x19b)](),_0x271afb=a165_0x513ce2[_0xa77dff(0x18e)](process['cwd'](),_0x3bb4c0);try{logger[_0xa77dff(0x19a)](_0xa77dff(0x198),_0xa77dff(0x192),{'projectCode':_0x3bb4c0,'templateDir':templateDir}),await copyDirectory(templateDir,_0x271afb);const _0x2e99c2=Date[_0xa77dff(0x19b)]()-_0xf67f27;logger[_0xa77dff(0x19d)](_0xa77dff(0x198),_0xa77dff(0x1a0),_0x2e99c2,{'projectCode':_0x3bb4c0});}catch(_0x1985e3){const _0x6fa3e4=Date[_0xa77dff(0x19b)]()-_0xf67f27;logger['error']('copy',_0xa77dff(0x19c),{'projectCode':_0x3bb4c0,'error':_0x1985e3 instanceof Error?_0x1985e3[_0xa77dff(0x19e)]:String(_0x1985e3),'duration':_0x6fa3e4});throw _0x1985e3;}return formatElapsed(_0xf67f27);}
@@ -1 +1 @@
1
- (function(_0x42b0c1,_0x58f94e){const _0x29d914=a158_0x2752,_0x510a59=_0x42b0c1();while(!![]){try{const _0x54d020=-parseInt(_0x29d914(0x7c))/0x1*(-parseInt(_0x29d914(0x73))/0x2)+-parseInt(_0x29d914(0x7e))/0x3+-parseInt(_0x29d914(0x82))/0x4+parseInt(_0x29d914(0x74))/0x5*(-parseInt(_0x29d914(0x88))/0x6)+parseInt(_0x29d914(0x89))/0x7*(parseInt(_0x29d914(0x85))/0x8)+parseInt(_0x29d914(0x87))/0x9*(parseInt(_0x29d914(0x79))/0xa)+parseInt(_0x29d914(0x84))/0xb;if(_0x54d020===_0x58f94e)break;else _0x510a59['push'](_0x510a59['shift']());}catch(_0x144d53){_0x510a59['push'](_0x510a59['shift']());}}}(a158_0x1d71,0x41858));import a158_0x1453f4 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a158_0x1d71(){const _0x34c80b=['2LTeJtA','30HCbcPy','开始格式化代码','resolve','prettier','npx','121960qmLSvF','代码格式化完成','now','154249VtyPNQ','format','740346gPzYUY','--write','info','error','740876hOuTOR','message','3041115nWVSoh','8ROXMLp','代码格式化失败','279dInCtS','324864iSQNrn','1515157uaFgRB','cwd','success'];a158_0x1d71=function(){return _0x34c80b;};return a158_0x1d71();}function a158_0x2752(_0x40743,_0x71fb1a){_0x40743=_0x40743-0x72;const _0x1d71df=a158_0x1d71();let _0x275251=_0x1d71df[_0x40743];return _0x275251;}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x442137){const _0x271a0b=a158_0x2752,_0x138981=Date[_0x271a0b(0x7b)](),_0x5cedd0=a158_0x1453f4[_0x271a0b(0x76)](process[_0x271a0b(0x8a)](),_0x442137);try{logger[_0x271a0b(0x80)](_0x271a0b(0x7d),_0x271a0b(0x75),{'projectCode':_0x442137}),await execa(resolveNpmBin(_0x271a0b(0x78)),[_0x271a0b(0x77),_0x271a0b(0x7f),'.'],{'cwd':_0x5cedd0});const _0x234ef6=Date[_0x271a0b(0x7b)]()-_0x138981;logger[_0x271a0b(0x72)](_0x271a0b(0x7d),_0x271a0b(0x7a),_0x234ef6,{'projectCode':_0x442137});}catch(_0x459fb8){const _0x402c25=Date[_0x271a0b(0x7b)]()-_0x138981;logger[_0x271a0b(0x81)](_0x271a0b(0x7d),_0x271a0b(0x86),{'projectCode':_0x442137,'error':_0x459fb8 instanceof Error?_0x459fb8[_0x271a0b(0x83)]:String(_0x459fb8),'duration':_0x402c25});throw _0x459fb8;}return formatElapsed(_0x138981);}
1
+ (function(_0x240404,_0x13bffc){const _0x54c72f=a166_0x6090,_0x9678a9=_0x240404();while(!![]){try{const _0x52f4d6=-parseInt(_0x54c72f(0x16f))/0x1*(-parseInt(_0x54c72f(0x176))/0x2)+-parseInt(_0x54c72f(0x16a))/0x3*(-parseInt(_0x54c72f(0x16e))/0x4)+parseInt(_0x54c72f(0x172))/0x5+-parseInt(_0x54c72f(0x174))/0x6+parseInt(_0x54c72f(0x177))/0x7*(-parseInt(_0x54c72f(0x16b))/0x8)+-parseInt(_0x54c72f(0x171))/0x9*(-parseInt(_0x54c72f(0x169))/0xa)+parseInt(_0x54c72f(0x175))/0xb*(parseInt(_0x54c72f(0x168))/0xc);if(_0x52f4d6===_0x13bffc)break;else _0x9678a9['push'](_0x9678a9['shift']());}catch(_0x285735){_0x9678a9['push'](_0x9678a9['shift']());}}}(a166_0x2f53,0xd438b));import a166_0x15b546 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a166_0x6090(_0xc5f07e,_0x185b55){_0xc5f07e=_0xc5f07e-0x161;const _0x2f530a=a166_0x2f53();let _0x609022=_0x2f530a[_0xc5f07e];return _0x609022;}import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x17d261){const _0x2858b3=a166_0x6090,_0x33a87a=Date[_0x2858b3(0x166)](),_0x3ec19c=a166_0x15b546[_0x2858b3(0x170)](process[_0x2858b3(0x16c)](),_0x17d261);try{logger[_0x2858b3(0x165)](_0x2858b3(0x16d),_0x2858b3(0x164),{'projectCode':_0x17d261}),await execa(resolveNpmBin(_0x2858b3(0x167)),[_0x2858b3(0x162),'--write','.'],{'cwd':_0x3ec19c});const _0x36f7a3=Date['now']()-_0x33a87a;logger[_0x2858b3(0x173)](_0x2858b3(0x16d),_0x2858b3(0x161),_0x36f7a3,{'projectCode':_0x17d261});}catch(_0x581308){const _0x28edfc=Date[_0x2858b3(0x166)]()-_0x33a87a;logger[_0x2858b3(0x163)](_0x2858b3(0x16d),'代码格式化失败',{'projectCode':_0x17d261,'error':_0x581308 instanceof Error?_0x581308['message']:String(_0x581308),'duration':_0x28edfc});throw _0x581308;}return formatElapsed(_0x33a87a);}function a166_0x2f53(){const _0x4f8d10=['cwd','format','20HHQGki','8cPhwkr','resolve','1512855spGumd','1201785YfOCso','success','10071654rauBdH','22RiWvhf','259632fWHqmw','7PCDQZE','代码格式化完成','prettier','error','开始格式化代码','info','now','npx','2794632hXEseD','10XpoZYb','428919EwbfUu','637992jMoSuT'];a166_0x2f53=function(){return _0x4f8d10;};return a166_0x2f53();}
@@ -1 +1 @@
1
- (function(_0x18fedf,_0x2cc77c){const _0x27fd91=a159_0x5ae8,_0xf2f891=_0x18fedf();while(!![]){try{const _0x2787db=-parseInt(_0x27fd91(0xb8))/0x1+-parseInt(_0x27fd91(0xb6))/0x2+parseInt(_0x27fd91(0xae))/0x3*(parseInt(_0x27fd91(0xaa))/0x4)+parseInt(_0x27fd91(0xb4))/0x5+-parseInt(_0x27fd91(0xb0))/0x6*(parseInt(_0x27fd91(0xb1))/0x7)+-parseInt(_0x27fd91(0xbd))/0x8*(parseInt(_0x27fd91(0xb9))/0x9)+parseInt(_0x27fd91(0xac))/0xa;if(_0x2787db===_0x2cc77c)break;else _0xf2f891['push'](_0xf2f891['shift']());}catch(_0x3a2fdd){_0xf2f891['push'](_0xf2f891['shift']());}}}(a159_0x1e48,0xdda7f));import a159_0xe35697 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a159_0x1e48(){const _0x298a2e=['1968ecljYR','message','42661980XJWomA','cwd','3294mcOfPq','install','14850qllGMl','5117TFsURp','依赖安装失败','success','6515390BZhRVM','info','3100330yvoaZt','依赖安装完成','543453BNUHRd','9054hsBgmI','error','开始安装依赖','now','10328usGjjr'];a159_0x1e48=function(){return _0x298a2e;};return a159_0x1e48();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';function a159_0x5ae8(_0x22c1d5,_0x9cb457){_0x22c1d5=_0x22c1d5-0xaa;const _0x1e4812=a159_0x1e48();let _0x5ae8c3=_0x1e4812[_0x22c1d5];return _0x5ae8c3;}export async function installDependencies(_0x2be0d0){const _0x3f0de6=a159_0x5ae8,_0x395006=Date[_0x3f0de6(0xbc)](),_0x57223f=a159_0xe35697['resolve'](process[_0x3f0de6(0xad)](),_0x2be0d0);try{logger[_0x3f0de6(0xb5)]('install',_0x3f0de6(0xbb),{'projectCode':_0x2be0d0,'registry':'https://registry.npmmirror.com'}),await execa(resolveNpmBin('npm'),[_0x3f0de6(0xaf),'--registry','https://registry.npmmirror.com'],{'cwd':_0x57223f});const _0x466ce8=Date[_0x3f0de6(0xbc)]()-_0x395006;logger[_0x3f0de6(0xb3)](_0x3f0de6(0xaf),_0x3f0de6(0xb7),_0x466ce8,{'projectCode':_0x2be0d0});}catch(_0x3e7af8){const _0x2d46b5=Date['now']()-_0x395006;logger[_0x3f0de6(0xba)](_0x3f0de6(0xaf),_0x3f0de6(0xb2),{'projectCode':_0x2be0d0,'error':_0x3e7af8 instanceof Error?_0x3e7af8[_0x3f0de6(0xab)]:String(_0x3e7af8),'duration':_0x2d46b5});throw _0x3e7af8;}return formatElapsed(_0x395006);}
1
+ (function(_0x1604e7,_0x3a6d08){const _0x52cdf7=a167_0x291c,_0x507d91=_0x1604e7();while(!![]){try{const _0x3d3d7a=-parseInt(_0x52cdf7(0x7b))/0x1*(-parseInt(_0x52cdf7(0x73))/0x2)+-parseInt(_0x52cdf7(0x79))/0x3+parseInt(_0x52cdf7(0x82))/0x4+-parseInt(_0x52cdf7(0x76))/0x5*(-parseInt(_0x52cdf7(0x75))/0x6)+parseInt(_0x52cdf7(0x74))/0x7*(-parseInt(_0x52cdf7(0x72))/0x8)+parseInt(_0x52cdf7(0x78))/0x9*(parseInt(_0x52cdf7(0x81))/0xa)+-parseInt(_0x52cdf7(0x6f))/0xb*(parseInt(_0x52cdf7(0x71))/0xc);if(_0x3d3d7a===_0x3a6d08)break;else _0x507d91['push'](_0x507d91['shift']());}catch(_0x250f11){_0x507d91['push'](_0x507d91['shift']());}}}(a167_0x2870,0xf192a));import a167_0x3190af from'node:path';function a167_0x291c(_0x37577f,_0xe1286e){_0x37577f=_0x37577f-0x6e;const _0x2870fd=a167_0x2870();let _0x291c34=_0x2870fd[_0x37577f];return _0x291c34;}import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a167_0x2870(){const _0xa9dfa8=['9VrBAHd','950079JMpiuz','依赖安装完成','153887uqnLAc','开始安装依赖','npm','install','now','success','10572910XrcLJu','1191880CFKsvM','resolve','143mCxBXk','error','1196844jbvGfC','3851216JhZSdK','8CsYOKK','14cUZizX','416022xTufYU','115oHNDHv','https://registry.npmmirror.com'];a167_0x2870=function(){return _0xa9dfa8;};return a167_0x2870();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x5730ed){const _0x33865c=a167_0x291c,_0x5c93fe=Date['now'](),_0x1ce296=a167_0x3190af[_0x33865c(0x6e)](process['cwd'](),_0x5730ed);try{logger['info'](_0x33865c(0x7e),_0x33865c(0x7c),{'projectCode':_0x5730ed,'registry':_0x33865c(0x77)}),await execa(resolveNpmBin(_0x33865c(0x7d)),[_0x33865c(0x7e),'--registry',_0x33865c(0x77)],{'cwd':_0x1ce296});const _0x39703f=Date[_0x33865c(0x7f)]()-_0x5c93fe;logger[_0x33865c(0x80)](_0x33865c(0x7e),_0x33865c(0x7a),_0x39703f,{'projectCode':_0x5730ed});}catch(_0x4fa644){const _0x24ead0=Date[_0x33865c(0x7f)]()-_0x5c93fe;logger[_0x33865c(0x70)](_0x33865c(0x7e),'依赖安装失败',{'projectCode':_0x5730ed,'error':_0x4fa644 instanceof Error?_0x4fa644['message']:String(_0x4fa644),'duration':_0x24ead0});throw _0x4fa644;}return formatElapsed(_0x5c93fe);}
@@ -1 +1 @@
1
- function a160_0x39f8(){const _0x24da27=['name','cookie','yes','bool','Usage:\x20','create','6961640AasjEI','1770069gCRClV','boolean','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','string','appcode','../../commands/project/create/main.js','validation','Create\x20a\x20new\x20project','args','nonInteractive','write','105YKwVES','785NqIYmk','1220MWVivb','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','10910241blUPnr','Target\x20environment','str','40AufycC','57894tVSPSQ','367079pZGCrz','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','trim','project','env','Project\x20name','Skip\x20confirmation\x20prompt','upgrade','44789060OWPJlM'];a160_0x39f8=function(){return _0x24da27;};return a160_0x39f8();}const a160_0x4ec5a3=a160_0x4e50;(function(_0xab0896,_0x31188e){const _0x122713=a160_0x4e50,_0x3e521f=_0xab0896();while(!![]){try{const _0x1aeae7=-parseInt(_0x122713(0x1d1))/0x1+parseInt(_0x122713(0x1ca))/0x2*(parseInt(_0x122713(0x1c8))/0x3)+parseInt(_0x122713(0x1e0))/0x4+-parseInt(_0x122713(0x1c9))/0x5*(-parseInt(_0x122713(0x1d0))/0x6)+-parseInt(_0x122713(0x1e1))/0x7*(-parseInt(_0x122713(0x1cf))/0x8)+parseInt(_0x122713(0x1cc))/0x9+-parseInt(_0x122713(0x1d9))/0xa;if(_0x1aeae7===_0x31188e)break;else _0x3e521f['push'](_0x3e521f['shift']());}catch(_0x26ba85){_0x3e521f['push'](_0x3e521f['shift']());}}}(a160_0x39f8,0xdd7f4));import{CliErrors}from'../../errors.js';function a160_0x4e50(_0x3d910c,_0x1fae6f){_0x3d910c=_0x3d910c-0x1bf;const _0x39f8b1=a160_0x39f8();let _0x4e505c=_0x39f8b1[_0x3d910c];return _0x4e505c;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{upgradeApp}from'../../commands/project/upgrade.js';const createFlags=[{'name':a160_0x4ec5a3(0x1da),'type':'string','description':a160_0x4ec5a3(0x1d6)},{'name':'env','type':a160_0x4ec5a3(0x1c0),'description':a160_0x4ec5a3(0x1cd)},{'name':a160_0x4ec5a3(0x1c1),'type':a160_0x4ec5a3(0x1c0),'description':a160_0x4ec5a3(0x1bf)}],upgradeFlags=[{'name':a160_0x4ec5a3(0x1dc),'type':a160_0x4ec5a3(0x1e2),'description':a160_0x4ec5a3(0x1d7),'default':![]}];export const projectDefinitions=[{'service':a160_0x4ec5a3(0x1d4),'command':a160_0x4ec5a3(0x1df),'description':a160_0x4ec5a3(0x1c4),'risk':'write','requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'project-name','description':'Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','required':![]}],'flags':createFlags,async 'execute'(_0xc5da00){const _0x287097=a160_0x4ec5a3,{createApp:_0x91f349}=await import(_0x287097(0x1c2)),{createProjectNonInteractive:_0x40ff45}=await import('../../commands/project/create/non-interactive.js'),_0x22b52a=_0xc5da00[_0x287097(0x1ce)](_0x287097(0x1da))['trim']()||_0xc5da00[_0x287097(0x1c5)][0x0]?.[_0x287097(0x1d3)](),_0x59fddc=_0xc5da00[_0x287097(0x1ce)](_0x287097(0x1d5))||undefined,_0x18fbef=_0xc5da00[_0x287097(0x1ce)](_0x287097(0x1c1))||undefined;if(_0xc5da00[_0x287097(0x1c6)]){if(!_0x22b52a)throw CliErrors[_0x287097(0x1c3)](_0x287097(0x1cb),_0x287097(0x1de)+CLI_BIN_NAME+'\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]');await _0x40ff45(_0x22b52a,_0x59fddc,_0x18fbef,_0xc5da00[_0x287097(0x1db)]);}else await _0x91f349({'projectCode':_0x22b52a,'appCode':_0x18fbef,'env':_0x59fddc,'cookie':_0xc5da00[_0x287097(0x1db)]});return{'ok':!![]};}},{'service':a160_0x4ec5a3(0x1d4),'command':a160_0x4ec5a3(0x1d8),'description':a160_0x4ec5a3(0x1d2),'risk':a160_0x4ec5a3(0x1c7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x5634f6){const _0x56a1bf=a160_0x4ec5a3;return await upgradeApp(_0x5634f6[_0x56a1bf(0x1c6)],{'yes':_0x5634f6[_0x56a1bf(0x1dd)](_0x56a1bf(0x1dc))}),{'ok':!![]};}}];
1
+ const a168_0x58d02e=a168_0x3f8c;function a168_0x237e(){const _0x69d74e=['116WLHJRN','1072555GnFiRY','bool','trim','project-name','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','args','Create\x20a\x20new\x20project','480583hWDojQ','nonInteractive','str','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','write','string','Project\x20name','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','yes','15091400cDXWVe','create','env','5986290zXQcwV','Skip\x20confirmation\x20prompt','48666VCFFxJ','1865912Egyhht','project','upgrade','validation','1035202SqHcbj','name','Usage:\x20','appcode','boolean','Target\x20environment'];a168_0x237e=function(){return _0x69d74e;};return a168_0x237e();}(function(_0x5ecaf3,_0x4e1b2c){const _0x455436=a168_0x3f8c,_0x1de8d1=_0x5ecaf3();while(!![]){try{const _0x4cad65=parseInt(_0x455436(0x1d1))/0x1+-parseInt(_0x455436(0x1bf))/0x2+-parseInt(_0x455436(0x1be))/0x3*(-parseInt(_0x455436(0x1c9))/0x4)+-parseInt(_0x455436(0x1ca))/0x5+-parseInt(_0x455436(0x1dd))/0x6+-parseInt(_0x455436(0x1c3))/0x7+parseInt(_0x455436(0x1da))/0x8;if(_0x4cad65===_0x4e1b2c)break;else _0x1de8d1['push'](_0x1de8d1['shift']());}catch(_0x49db1a){_0x1de8d1['push'](_0x1de8d1['shift']());}}}(a168_0x237e,0x84e7a));function a168_0x3f8c(_0xb6ab5,_0x2d7cff){_0xb6ab5=_0xb6ab5-0x1be;const _0x237e3a=a168_0x237e();let _0x3f8c7b=_0x237e3a[_0xb6ab5];return _0x3f8c7b;}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{upgradeApp}from'../../commands/project/upgrade.js';const createFlags=[{'name':a168_0x58d02e(0x1c4),'type':'string','description':a168_0x58d02e(0x1d7)},{'name':a168_0x58d02e(0x1dc),'type':a168_0x58d02e(0x1d6),'description':a168_0x58d02e(0x1c8)},{'name':a168_0x58d02e(0x1c6),'type':'string','description':a168_0x58d02e(0x1ce)}],upgradeFlags=[{'name':a168_0x58d02e(0x1d9),'type':a168_0x58d02e(0x1c7),'description':a168_0x58d02e(0x1de),'default':![]}];export const projectDefinitions=[{'service':'project','command':a168_0x58d02e(0x1db),'description':a168_0x58d02e(0x1d0),'risk':a168_0x58d02e(0x1d5),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a168_0x58d02e(0x1cd),'description':'Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','required':![]}],'flags':createFlags,async 'execute'(_0x2f692a){const _0x2b3174=a168_0x58d02e,{createApp:_0x2c2b98}=await import('../../commands/project/create/main.js'),{createProjectNonInteractive:_0x457689}=await import('../../commands/project/create/non-interactive.js'),_0x1fb21e=_0x2f692a[_0x2b3174(0x1d3)]('name')[_0x2b3174(0x1cc)]()||_0x2f692a[_0x2b3174(0x1cf)][0x0]?.[_0x2b3174(0x1cc)](),_0x903b10=_0x2f692a['str']('env')||undefined,_0x283ab7=_0x2f692a[_0x2b3174(0x1d3)]('appcode')||undefined;if(_0x2f692a[_0x2b3174(0x1d2)]){if(!_0x1fb21e)throw CliErrors[_0x2b3174(0x1c2)]('Non-interactive\x20mode\x20requires\x20a\x20project\x20name.',_0x2b3174(0x1c5)+CLI_BIN_NAME+_0x2b3174(0x1d8));await _0x457689(_0x1fb21e,_0x903b10,_0x283ab7,_0x2f692a['cookie']);}else await _0x2c2b98({'projectCode':_0x1fb21e,'appCode':_0x283ab7,'env':_0x903b10,'cookie':_0x2f692a['cookie']});return{'ok':!![]};}},{'service':a168_0x58d02e(0x1c0),'command':a168_0x58d02e(0x1c1),'description':a168_0x58d02e(0x1d4),'risk':a168_0x58d02e(0x1d5),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x1f0bf7){const _0x358e87=a168_0x58d02e;return await upgradeApp(_0x1f0bf7['nonInteractive'],{'yes':_0x1f0bf7[_0x358e87(0x1cb)](_0x358e87(0x1d9))}),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a161_0x546960=a161_0x36bb;(function(_0x5374c6,_0x531bbf){const _0x4acbcf=a161_0x36bb,_0x599852=_0x5374c6();while(!![]){try{const _0x2fb121=-parseInt(_0x4acbcf(0xff))/0x1+parseInt(_0x4acbcf(0x109))/0x2*(-parseInt(_0x4acbcf(0x113))/0x3)+-parseInt(_0x4acbcf(0xd8))/0x4+-parseInt(_0x4acbcf(0x11c))/0x5+parseInt(_0x4acbcf(0x11f))/0x6*(-parseInt(_0x4acbcf(0x13b))/0x7)+-parseInt(_0x4acbcf(0x12c))/0x8+parseInt(_0x4acbcf(0xcf))/0x9;if(_0x2fb121===_0x531bbf)break;else _0x599852['push'](_0x599852['shift']());}catch(_0x459b93){_0x599852['push'](_0x599852['shift']());}}}(a161_0x56c9,0x8529e));import a161_0x580608 from'chalk';import a161_0x205ec4 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a161_0x546960(0x105)](_0x3e91c1=>_0x3e91c1!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x31f0f6){const _0x1b29e5=a161_0x546960,_0x216bb7=[];for(const _0x25d3e3 of Object[_0x1b29e5(0xec)](CORE_IDE_CONFIGS)){if(_0x25d3e3[_0x1b29e5(0xd3)])for(const _0xd08403 of _0x25d3e3[_0x1b29e5(0xd3)]){_0x216bb7['push'](resolve(_0x31f0f6,_0xd08403[_0x1b29e5(0xc3)]));}}return _0x216bb7;}function analyse(_0x1752da){const _0x4aa8c6=a161_0x546960;let _0x36ebaa=null;const _0x17d3fc=resolve(_0x1752da,NEW_CONFIG_NAME),_0x23e190=existsSync(_0x17d3fc);for(const _0x50e566 of LEGACY_CONFIG_NAMES){const _0x4530e1=resolve(_0x1752da,_0x50e566);if(existsSync(_0x4530e1)){const _0x42d64b=readConfigFile(_0x4530e1),_0x42e6de=Object[_0x4aa8c6(0xc9)](_0x42d64b)['filter'](_0x4888c3=>typeof _0x42d64b[_0x4888c3]!=='undefined');_0x36ebaa={'oldPath':_0x4530e1,'hasNewConfig':_0x23e190,'fields':_0x42e6de};break;}}const _0x3e2d62=[],_0xeaaa5e=resolve(_0x1752da,_0x4aa8c6(0x13a));if(existsSync(_0xeaaa5e))_0x3e2d62[_0x4aa8c6(0xf4)](_0xeaaa5e);const _0x5622dd=resolve(_0x1752da,_0x4aa8c6(0xc7));if(existsSync(_0x5622dd))_0x3e2d62[_0x4aa8c6(0xf4)](_0x5622dd);const _0x534b57=resolve(_0x1752da,_0x4aa8c6(0xe8));if(existsSync(_0x534b57))_0x3e2d62[_0x4aa8c6(0xf4)](_0x534b57);for(const _0xb0bc11 of collectIdeSkillFiles(_0x1752da)){if(existsSync(_0xb0bc11))_0x3e2d62['push'](_0xb0bc11);}let _0x5a9519=null;const _0x20086d=resolve(_0x1752da,_0x4aa8c6(0xd9));if(existsSync(_0x20086d))try{const _0x578dcb=JSON[_0x4aa8c6(0x127)](readFileSync(_0x20086d,_0x4aa8c6(0xe7)));if(_0x578dcb?.[_0x4aa8c6(0x145)]&&typeof _0x578dcb['mcpServers']==='object'){const _0x4821=[];for(const [_0x2fb87d,_0x33c6c0]of Object[_0x4aa8c6(0xf0)](_0x578dcb[_0x4aa8c6(0x145)])){const _0x535b78=_0x33c6c0;_0x535b78?.[_0x4aa8c6(0x13e)]&&Array[_0x4aa8c6(0xcb)](_0x535b78['args'])&&_0x535b78[_0x4aa8c6(0x13e)][_0x4aa8c6(0xf7)](_0x4784e4=>typeof _0x4784e4===_0x4aa8c6(0xdd)&&_0x4784e4[_0x4aa8c6(0xf2)](_0x4aa8c6(0x11a)))&&_0x4821[_0x4aa8c6(0xf4)](_0x2fb87d);}_0x4821[_0x4aa8c6(0x134)]>0x0&&(_0x5a9519={'path':_0x20086d,'keys':_0x4821});}}catch{}const _0x3c6a6c=_0x3e2d62[_0x4aa8c6(0x134)]>0x0||_0x36ebaa!==null;let _0x45c926=null;const _0x7e2173=resolve(_0x1752da,'package.json');if(existsSync(_0x7e2173))try{const _0x306cbe=JSON[_0x4aa8c6(0x127)](readFileSync(_0x7e2173,'utf8'));for(const _0x36ccce of[_0x4aa8c6(0xef),_0x4aa8c6(0x123)]){const _0x5e93ff=_0x306cbe?.[_0x36ccce]?.[_0x4aa8c6(0x138)];if(typeof _0x5e93ff===_0x4aa8c6(0xdd)){_0x5e93ff!==_0x4aa8c6(0x114)&&(_0x45c926={'pkgPath':_0x7e2173,'currentVersion':_0x5e93ff,'field':_0x36ccce});break;}}}catch{}return{'configMigration':_0x36ebaa,'oldArtifacts':_0x3e2d62,'oldMcpConfig':_0x5a9519,'needsSkillSwap':_0x3c6a6c,'sdkUpgrade':_0x45c926};}function a161_0x56c9(){const _0x5c5b5d=['===\x20Upgrade\x20Summary\x20===','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','\x20→\x20latest','values','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','info','dependencies','entries','yellow','includes','not\x20needed','push','CANCEL','MCP\x20config:','some','\x20from\x20','object','isDirectory','\x20\x20#\x20or','\x20removed','\x20\x20bun\x20install','Config\x20migration','329986DWhYbo','oldPath','yes','inherit','===\x20Upgrade\x20Analysis\x20===','lovrabet/rabetbase\x20installed\x20globally','filter','Upgrade\x20cancelled.','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','Remove\x20legacy\x20artifacts','2tzTbYt','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','not\x20found\x20(will\x20create)','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Step\x204/7:\x20Cleaning\x20MCP\x20config...','oldMcpConfig','Proceed\x20with\x20upgrade?','\x20\x20Action:\x20delete','red','gray','578997yRVfrr','latest','none\x20found','not\x20found\x20or\x20already\x20at\x20latest','fail','skipped','join','@lovrabet/dataset-mcp-server','\x20\x20Fields\x20to\x20migrate:\x20','3667135EhNIiq','succeed','cyan','1022454czfsip','Step\x205/7:\x20Removing\x20old\x20skill...','\x20\x20New\x20config\x20(.rabetbase.json):\x20','hasNewConfig','devDependencies','Step\x201/7:\x20Migrating\x20config...','log','Legacy\x20artifacts:','parse','configMigration','Upgrade\x20@lovrabet/sdk','.bak','Config\x20file:','8198528VPQOVd','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','done','green','failed','status','needed','length','error','Step\x204/7:\x20MCP\x20config\x20—\x20','skipped\x20(no\x20legacy\x20config)','@lovrabet/sdk','needsSkillSwap','.lovrabet','28baTrQr','Step\x206/7:\x20Installing\x20new\x20skill...','no\x20legacy\x20entry','args','FOUND','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','\x20→\x20keys:\x20','\x20(backup:\x20','cwd','\x20\x20\x20\x20\x20\x20\x20','mcpServers','path','stringify','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','step','.cursor/rules/lovrabet_rules.mdc','[\x22@lovrabet/sdk\x22]:\x20','keys','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','isArray','Install\x20new\x20skill','oldArtifacts','message','34631541lPAzoQ','Step\x201/7:\x20Config\x20migration\x20—\x20','exit\x20','\x20\x20Current\x20version\x20in\x20','files','sdkUpgrade','\x20→\x20','bold','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','1358588ZzJZPd','.cursor/mcp.json','already\x20exists\x20(will\x20merge)','start','lovrabet/rabetbase','string','detail','FAIL','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','Remove\x20.lovrabet/','fields','Clean\x20MCP\x20config','@lovrabet/sdk:','white','utf8','.claude/skills/lovrabet'];a161_0x56c9=function(){return _0x5c5b5d;};return a161_0x56c9();}function printReport(_0x5789b1){const _0x4b69fc=a161_0x546960,{configMigration:_0x2e2f52,oldArtifacts:_0x48d5ea,oldMcpConfig:_0x5ccd93,needsSkillSwap:_0x340496}=_0x5789b1;console['log'](''),console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0xd6)](_0x4b69fc(0x103))),console['log']('');_0x2e2f52?(console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)](_0x4b69fc(0x12b))+('\x20\x20'+a161_0x580608[_0x4b69fc(0xf1)](_0x2e2f52['oldPath']))),console[_0x4b69fc(0x125)](_0x4b69fc(0x121)+(_0x2e2f52[_0x4b69fc(0x122)]?a161_0x580608['green'](_0x4b69fc(0xda)):a161_0x580608[_0x4b69fc(0x112)](_0x4b69fc(0x10b)))),console[_0x4b69fc(0x125)](_0x4b69fc(0x11b)+_0x2e2f52[_0x4b69fc(0xe3)][_0x4b69fc(0x119)](',\x20')),console[_0x4b69fc(0x125)](_0x4b69fc(0x140))):console[_0x4b69fc(0x125)](a161_0x580608['cyan'](_0x4b69fc(0x12b))+'\x20\x20'+a161_0x580608[_0x4b69fc(0x112)]('no\x20legacy\x20config\x20found'));console[_0x4b69fc(0x125)]('');if(_0x48d5ea[_0x4b69fc(0x134)]>0x0){console['log'](a161_0x580608[_0x4b69fc(0x11e)]('Legacy\x20artifacts:'));for(const _0x55dddc of _0x48d5ea){console[_0x4b69fc(0x125)]('\x20\x20'+a161_0x580608[_0x4b69fc(0x111)](_0x4b69fc(0x13f))+'\x20\x20'+_0x55dddc);}console['log'](_0x4b69fc(0x110));}else console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)](_0x4b69fc(0x126))+'\x20\x20'+a161_0x580608[_0x4b69fc(0x112)](_0x4b69fc(0x115)));console['log']('');_0x5ccd93?(console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)](_0x4b69fc(0xf6))+('\x20\x20'+a161_0x580608[_0x4b69fc(0xf1)](_0x5ccd93[_0x4b69fc(0xc3)])+_0x4b69fc(0x141)+_0x5ccd93[_0x4b69fc(0xc9)][_0x4b69fc(0x119)](',\x20'))),console[_0x4b69fc(0x125)]('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)]('MCP\x20config:')+'\x20\x20'+a161_0x580608[_0x4b69fc(0x112)](_0x4b69fc(0x13d)));console['log'](''),console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)]('Skill\x20swap:')+('\x20\x20'+(_0x340496?a161_0x580608['yellow'](_0x4b69fc(0x133)):a161_0x580608[_0x4b69fc(0x130)](_0x4b69fc(0xf3)))));_0x340496&&console[_0x4b69fc(0x125)](_0x4b69fc(0xe1)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x4b69fc(0x125)]('');if(_0x5789b1['sdkUpgrade']){const {currentVersion:_0xa2077f,field:_0x3c1ad7,pkgPath:_0xba676f}=_0x5789b1[_0x4b69fc(0xd4)];console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)](_0x4b69fc(0xe5))+('\x20\x20'+a161_0x580608['yellow'](_0xba676f))),console['log'](_0x4b69fc(0xd2)+_0x3c1ad7+':\x20'+a161_0x580608[_0x4b69fc(0xf1)](_0xa2077f)+_0x4b69fc(0xd5)+a161_0x580608['green'](_0x4b69fc(0x114))),console['log']('\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)');}else console[_0x4b69fc(0x125)](a161_0x580608[_0x4b69fc(0x11e)]('@lovrabet/sdk:')+'\x20\x20'+a161_0x580608['gray'](_0x4b69fc(0x116)));console[_0x4b69fc(0x125)]('');}function execConfigMigration(_0x7cca7f,_0x4867ea){const _0x51d37d=a161_0x546960,{configMigration:_0x4ddba1}=_0x7cca7f;if(!_0x4ddba1?.[_0x51d37d(0x100)])return{'step':0x1,'label':_0x51d37d(0xfe),'ok':!![],'detail':_0x51d37d(0x137)};const _0x10c3b2=readConfigFile(_0x4ddba1[_0x51d37d(0x100)]),_0x1ca36a=resolve(_0x4867ea,NEW_CONFIG_NAME),_0x4dc36e=_0x4ddba1[_0x51d37d(0x122)]?readConfigFile(_0x1ca36a):{};for(const [_0x776b30,_0x45a4ce]of Object[_0x51d37d(0xf0)](_0x10c3b2)){!(_0x776b30 in _0x4dc36e)&&(_0x4dc36e[_0x776b30]=_0x45a4ce);}writeConfigFile(_0x1ca36a,_0x4dc36e);const _0x42c00b=_0x4ddba1['oldPath']+_0x51d37d(0x12a);return renameSync(_0x4ddba1[_0x51d37d(0x100)],_0x42c00b),{'step':0x1,'label':_0x51d37d(0xfe),'ok':!![],'detail':_0x4ddba1[_0x51d37d(0x100)]+_0x51d37d(0xd5)+_0x1ca36a+_0x51d37d(0x142)+_0x42c00b+')'};}function execRemoveOldArtifacts(_0x29ed53){const _0x91440f=a161_0x546960,_0xec9080=[];for(const _0x4584f8 of _0x29ed53){try{if(!existsSync(_0x4584f8))continue;const _0x13d74e=tryStat(_0x4584f8);_0x13d74e?.[_0x91440f(0xfa)]()?rmSync(_0x4584f8,{'recursive':!![],'force':!![]}):unlinkSync(_0x4584f8);}catch(_0x5c486c){_0xec9080[_0x91440f(0xf4)](_0x4584f8+':\x20'+_0x5c486c['message']);}}return{'step':0x3,'label':_0x91440f(0x108),'ok':_0xec9080[_0x91440f(0x134)]===0x0,'detail':_0xec9080[_0x91440f(0x134)]>0x0?_0x29ed53['length']-_0xec9080[_0x91440f(0x134)]+'/'+_0x29ed53[_0x91440f(0x134)]+'\x20removed\x20('+_0xec9080[_0x91440f(0x119)](';\x20')+')':_0x29ed53[_0x91440f(0x134)]+_0x91440f(0xfc)};}function execCleanMcp(_0x2119d1){const _0x4c8885=a161_0x546960;if(!_0x2119d1[_0x4c8885(0x10e)])return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x4c8885(0x118)};try{const _0x18ffe4=readFileSync(_0x2119d1[_0x4c8885(0x10e)][_0x4c8885(0xc3)],'utf8'),_0x15a900=JSON[_0x4c8885(0x127)](_0x18ffe4);if(_0x15a900?.['mcpServers']&&typeof _0x15a900[_0x4c8885(0x145)]===_0x4c8885(0xf9)){const _0x178c1e=[];for(const [_0x42adf2,_0x346300]of Object[_0x4c8885(0xf0)](_0x15a900['mcpServers'])){_0x346300?.['args']&&Array[_0x4c8885(0xcb)](_0x346300['args'])&&_0x346300[_0x4c8885(0x13e)][_0x4c8885(0xf7)](_0x1ed975=>typeof _0x1ed975==='string'&&_0x1ed975[_0x4c8885(0xf2)](_0x4c8885(0x11a)))&&_0x178c1e[_0x4c8885(0xf4)](_0x42adf2);}for(const _0x1fc04c of _0x178c1e){delete _0x15a900[_0x4c8885(0x145)][_0x1fc04c];}return _0x178c1e[_0x4c8885(0x134)]>0x0&&writeFileSync(_0x2119d1['oldMcpConfig'][_0x4c8885(0xc3)],JSON[_0x4c8885(0xc4)](_0x15a900,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x4c8885(0xe4),'ok':!![],'detail':'removed\x20'+_0x178c1e[_0x4c8885(0x119)](',\x20')+_0x4c8885(0xf8)+_0x2119d1[_0x4c8885(0x10e)][_0x4c8885(0xc3)]};}return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x17f693){return{'step':0x4,'label':_0x4c8885(0xe4),'ok':![],'detail':_0x17f693['message']};}}function execSkillsRemove(_0x10085c,_0x52c33e){const _0x37dd40=a161_0x546960,_0x3333ee=runNpxSkillsRemove(_0x10085c,{'stdio':'inherit','yes':_0x52c33e});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x3333ee['ok'],'detail':_0x3333ee['ok']?'lovrabet/lovrabet-skill\x20removed':_0x3333ee[_0x37dd40(0x135)]??_0x37dd40(0xd1)+_0x3333ee['status']};}function execSkillsAdd(_0x3ca6a7,_0x40463c){const _0x425fdb=a161_0x546960,_0x17059e=runNpxSkillsAddGlobal(_0x3ca6a7,_0x425fdb(0xdc),{'stdio':_0x425fdb(0x102),'yes':_0x40463c});return{'step':0x6,'label':_0x425fdb(0xcc),'ok':_0x17059e['ok'],'detail':_0x17059e['ok']?_0x425fdb(0x104):_0x17059e['error']??'exit\x20'+_0x17059e[_0x425fdb(0x132)]};}function execUpgradeSdk(_0x44c3d2){const _0xbe4a78=a161_0x546960;if(!_0x44c3d2[_0xbe4a78(0xd4)])return{'step':0x7,'label':_0xbe4a78(0x129),'ok':!![],'detail':_0xbe4a78(0xc5)};const {pkgPath:_0x5a5c68,currentVersion:_0x2f5627,field:_0x8a65fb}=_0x44c3d2[_0xbe4a78(0xd4)];try{const _0x131368=readFileSync(_0x5a5c68,_0xbe4a78(0xe7)),_0x282baf=JSON[_0xbe4a78(0x127)](_0x131368);return _0x282baf[_0x8a65fb]['@lovrabet/sdk']=_0xbe4a78(0x114),writeFileSync(_0x5a5c68,JSON['stringify'](_0x282baf,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x8a65fb+_0xbe4a78(0xc8)+_0x2f5627+_0xbe4a78(0xeb)};}catch(_0x213aee){return{'step':0x7,'label':_0xbe4a78(0x129),'ok':![],'detail':_0x213aee[_0xbe4a78(0xce)]};}}function tryStat(_0x20bb03){try{return statSync(_0x20bb03);}catch{return undefined;}}function a161_0x36bb(_0xffcdbd,_0x27620f){_0xffcdbd=_0xffcdbd-0xc3;const _0x56c9f5=a161_0x56c9();let _0x36bb0f=_0x56c9f5[_0xffcdbd];return _0x36bb0f;}function printSummary(_0x446ff9){const _0x2e4055=a161_0x546960;console['log'](''),console[_0x2e4055(0x125)](a161_0x580608[_0x2e4055(0xd6)](_0x2e4055(0xe9))),console[_0x2e4055(0x125)]('');for(const _0x4095c8 of _0x446ff9){const _0x404950=_0x4095c8['ok']?a161_0x580608[_0x2e4055(0x130)]('OK'):a161_0x580608[_0x2e4055(0x111)](_0x2e4055(0xdf));console[_0x2e4055(0x125)]('\x20\x20'+_0x404950+'\x20\x20Step\x20'+_0x4095c8[_0x2e4055(0xc6)]+':\x20'+_0x4095c8['label']);if(_0x4095c8['detail'])console[_0x2e4055(0x125)](_0x2e4055(0x144)+a161_0x580608['gray'](_0x4095c8[_0x2e4055(0xde)]));}console[_0x2e4055(0x125)]('');}export async function upgradeApp(_0x2690fd,_0x153419){const _0x1e26c1=a161_0x546960,_0x325bad=process[_0x1e26c1(0x143)](),_0x3118d1=analyse(_0x325bad),_0x129547=!_0x3118d1[_0x1e26c1(0x128)]&&_0x3118d1[_0x1e26c1(0xcd)][_0x1e26c1(0x134)]===0x0&&!_0x3118d1[_0x1e26c1(0x10e)]&&!_0x3118d1[_0x1e26c1(0x139)]&&!_0x3118d1[_0x1e26c1(0xd4)];if(_0x129547){console[_0x1e26c1(0x125)](a161_0x580608[_0x1e26c1(0x130)](_0x1e26c1(0xe0)));return;}printReport(_0x3118d1);const _0x1e0aa5=!!(_0x153419[_0x1e26c1(0x101)]||_0x153419['Y']||_0x2690fd);if(!_0x1e0aa5)try{const _0x301c2c=await askConfirm(_0x1e26c1(0x10f));if(!_0x301c2c){console['log'](a161_0x580608[_0x1e26c1(0x112)](_0x1e26c1(0x106)));return;}}catch(_0x5e13de){if(_0x5e13de?.[_0x1e26c1(0xce)]===_0x1e26c1(0xf5)){console[_0x1e26c1(0x125)](a161_0x580608[_0x1e26c1(0x112)]('Upgrade\x20cancelled.'));return;}throw _0x5e13de;}const _0x62d48d=[],_0x473834=a161_0x205ec4({'text':_0x1e26c1(0x124),'color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)](),_0x38e888=execConfigMigration(_0x3118d1,_0x325bad);_0x62d48d[_0x1e26c1(0xf4)](_0x38e888),_0x473834[_0x38e888['ok']?_0x1e26c1(0x11d):'fail'](_0x1e26c1(0xd0)+(_0x38e888['detail']??(_0x38e888['ok']?_0x1e26c1(0x12f):_0x1e26c1(0x131))));const _0x41348a=resolve(_0x325bad,'.lovrabet'),_0x2e9a80=a161_0x205ec4({'text':_0x1e26c1(0x107),'color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)]();if(existsSync(_0x41348a))try{rmSync(_0x41348a,{'recursive':!![],'force':!![]}),_0x2e9a80[_0x1e26c1(0x11d)]('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x62d48d[_0x1e26c1(0xf4)]({'step':0x2,'label':_0x1e26c1(0xe2),'ok':!![]});}catch(_0x40320e){_0x2e9a80[_0x1e26c1(0x117)](_0x1e26c1(0x12e)+_0x40320e[_0x1e26c1(0xce)]),_0x62d48d['push']({'step':0x2,'label':_0x1e26c1(0xe2),'ok':![],'detail':_0x40320e[_0x1e26c1(0xce)]});}else _0x2e9a80[_0x1e26c1(0xee)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x62d48d['push']({'step':0x2,'label':_0x1e26c1(0xe2),'ok':!![],'detail':_0x1e26c1(0x118)});const _0x1ceed6=a161_0x205ec4({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)](),_0x220d53=execRemoveOldArtifacts(_0x3118d1['oldArtifacts']);_0x62d48d[_0x1e26c1(0xf4)](_0x220d53),_0x1ceed6[_0x220d53['ok']?_0x1e26c1(0x11d):'fail'](_0x1e26c1(0x10a)+(_0x220d53[_0x1e26c1(0xde)]??(_0x220d53['ok']?_0x1e26c1(0x12f):_0x1e26c1(0x131))));const _0x585eae=a161_0x205ec4({'text':_0x1e26c1(0x10d),'color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)](),_0x58f141=execCleanMcp(_0x3118d1);_0x62d48d[_0x1e26c1(0xf4)](_0x58f141),_0x585eae[_0x58f141['ok']?_0x1e26c1(0x11d):_0x1e26c1(0x117)](_0x1e26c1(0x136)+(_0x58f141[_0x1e26c1(0xde)]??(_0x58f141['ok']?'done':'failed')));const _0x45dc1c=a161_0x205ec4({'text':_0x1e26c1(0x120),'color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)](),_0x4979fb=execSkillsRemove(_0x325bad,_0x1e0aa5);_0x62d48d[_0x1e26c1(0xf4)](_0x4979fb),_0x45dc1c[_0x4979fb['ok']?'succeed':'fail'](_0x1e26c1(0x12d)+(_0x4979fb['detail']??(_0x4979fb['ok']?_0x1e26c1(0x12f):_0x1e26c1(0x131))));const _0x2c05c3=a161_0x205ec4({'text':_0x1e26c1(0x13c),'color':_0x1e26c1(0x11e)})[_0x1e26c1(0xdb)](),_0x835d01=execSkillsAdd(_0x325bad,_0x1e0aa5);_0x62d48d['push'](_0x835d01),_0x2c05c3[_0x835d01['ok']?_0x1e26c1(0x11d):_0x1e26c1(0x117)](_0x1e26c1(0xd7)+(_0x835d01[_0x1e26c1(0xde)]??(_0x835d01['ok']?_0x1e26c1(0x12f):_0x1e26c1(0x131))));const _0x224d82=a161_0x205ec4({'text':_0x1e26c1(0xea),'color':_0x1e26c1(0x11e)})['start'](),_0x480b16=execUpgradeSdk(_0x3118d1);_0x62d48d[_0x1e26c1(0xf4)](_0x480b16),_0x224d82[_0x480b16['ok']?_0x1e26c1(0x11d):_0x1e26c1(0x117)](_0x1e26c1(0xed)+(_0x480b16[_0x1e26c1(0xde)]??(_0x480b16['ok']?_0x1e26c1(0x12f):_0x1e26c1(0x131)))),printSummary(_0x62d48d);const _0x1fe02a=_0x62d48d[_0x1e26c1(0xf7)](_0x1913a6=>!_0x1913a6['ok']);_0x1fe02a?console['log'](a161_0x580608[_0x1e26c1(0xf1)](_0x1e26c1(0xca))):console['log'](a161_0x580608['green']('Upgrade\x20completed\x20successfully!')),_0x480b16['ok']&&_0x3118d1[_0x1e26c1(0xd4)]&&(console[_0x1e26c1(0x125)](''),console[_0x1e26c1(0x125)](a161_0x580608[_0x1e26c1(0xd6)][_0x1e26c1(0x11e)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x1e26c1(0x125)](a161_0x580608['cyan'](_0x1e26c1(0x10c))),console[_0x1e26c1(0x125)](''),console[_0x1e26c1(0x125)](a161_0x580608['white']('\x20\x20npm\x20install')),console[_0x1e26c1(0x125)](a161_0x580608['white'](_0x1e26c1(0xfb))),console[_0x1e26c1(0x125)](a161_0x580608[_0x1e26c1(0xe6)](_0x1e26c1(0xfd))),console[_0x1e26c1(0x125)](''));}
1
+ const a169_0x12f620=a169_0x960f;(function(_0x1c9bb2,_0x25d0c3){const _0x4b8624=a169_0x960f,_0x47e28d=_0x1c9bb2();while(!![]){try{const _0x337e69=parseInt(_0x4b8624(0x244))/0x1*(-parseInt(_0x4b8624(0x269))/0x2)+parseInt(_0x4b8624(0x22c))/0x3+-parseInt(_0x4b8624(0x235))/0x4+-parseInt(_0x4b8624(0x259))/0x5*(parseInt(_0x4b8624(0x264))/0x6)+-parseInt(_0x4b8624(0x257))/0x7*(parseInt(_0x4b8624(0x25c))/0x8)+parseInt(_0x4b8624(0x1f9))/0x9*(-parseInt(_0x4b8624(0x208))/0xa)+-parseInt(_0x4b8624(0x252))/0xb*(-parseInt(_0x4b8624(0x1f1))/0xc);if(_0x337e69===_0x25d0c3)break;else _0x47e28d['push'](_0x47e28d['shift']());}catch(_0x22a87d){_0x47e28d['push'](_0x47e28d['shift']());}}}(a169_0x49f0,0x82b4a));import a169_0x1e0e4f from'chalk';import a169_0x29510e from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';function a169_0x49f0(){const _0x78e24=['Step\x202/7:\x20.lovrabet/\x20directory\x20removed','Step\x206/7:\x20Installing\x20new\x20skill...','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','object','\x20\x20bun\x20install','label','cwd','Legacy\x20artifacts:','package.json','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','dependencies','2101221rYROav','stringify','succeed','removed\x20','\x20\x20Fields\x20to\x20migrate:\x20','fail','step','no\x20matching\x20entry\x20found','lovrabet/lovrabet-skill\x20removed','3693840sPWEyx','parse','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','isDirectory','\x20\x20#\x20or','fields','needed','FOUND','MCP\x20config:','failed','message','yes','Clean\x20MCP\x20config','sdkUpgrade','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','6776RelCHq','some','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','no\x20legacy\x20entry','CANCEL','Step\x204/7:\x20Cleaning\x20MCP\x20config...','lovrabet/rabetbase','bold','includes','\x20→\x20','white','FAIL','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Step\x201/7:\x20Migrating\x20config...','39889641cTqzSn','already\x20exists\x20(will\x20merge)','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','\x20\x20Current\x20version\x20in\x20','isArray','322vjuoXi','@lovrabet/sdk:','5295190DdBmZE','undefined','Step\x204/7:\x20MCP\x20config\x20—\x20','183152advLmo','filter','Proceed\x20with\x20upgrade?','\x20(backup:\x20','hasNewConfig','Config\x20migration','green','error','6sLvxkq','gray','cyan','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','\x20\x20Action:\x20delete','72IbUHsW','Remove\x20.lovrabet/','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','start','\x20removed','Upgrade\x20completed\x20successfully!','exit\x20','mcpServers','\x20\x20Step\x20','oldPath','detail','yellow','not\x20needed','Step\x201/7:\x20Config\x20migration\x20—\x20','Skill\x20swap:','12DfWfEw','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','.cursor/mcp.json','done','not\x20found\x20(will\x20create)','length','log','1395kfDkIs','oldMcpConfig','join','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','string','\x20removed\x20(','latest','entries','oldArtifacts','\x20\x20New\x20config\x20(.rabetbase.json):\x20','status','configMigration','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','\x20→\x20latest','lovrabet/rabetbase\x20installed\x20globally','33020cshlzp','values','Upgrade\x20cancelled.','Remove\x20legacy\x20artifacts','@lovrabet/sdk','inherit','\x20→\x20keys:\x20','skipped','push','red','info','.claude/skills/lovrabet','@lovrabet/dataset-mcp-server','files','Install\x20new\x20skill','Config\x20file:','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','Upgrade\x20@lovrabet/sdk','args','keys','path','utf8','[\x22@lovrabet/sdk\x22]:\x20','===\x20Upgrade\x20Summary\x20==='];a169_0x49f0=function(){return _0x78e24;};return a169_0x49f0();}import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a169_0x12f620(0x25d)](_0x245a99=>_0x245a99!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x32871c){const _0x5789e0=a169_0x12f620,_0x4caf16=[];for(const _0x406e05 of Object[_0x5789e0(0x209)](CORE_IDE_CONFIGS)){if(_0x406e05[_0x5789e0(0x215)])for(const _0x2b74da of _0x406e05[_0x5789e0(0x215)]){_0x4caf16['push'](resolve(_0x32871c,_0x2b74da['path']));}}return _0x4caf16;}function analyse(_0x1af116){const _0x8b3677=a169_0x12f620;let _0x2ebd08=null;const _0x1c52f2=resolve(_0x1af116,NEW_CONFIG_NAME),_0x2f04c1=existsSync(_0x1c52f2);for(const _0x191da0 of LEGACY_CONFIG_NAMES){const _0x56e96f=resolve(_0x1af116,_0x191da0);if(existsSync(_0x56e96f)){const _0x3b0cd1=readConfigFile(_0x56e96f),_0x1797f2=Object[_0x8b3677(0x21b)](_0x3b0cd1)[_0x8b3677(0x25d)](_0x898131=>typeof _0x3b0cd1[_0x898131]!==_0x8b3677(0x25a));_0x2ebd08={'oldPath':_0x56e96f,'hasNewConfig':_0x2f04c1,'fields':_0x1797f2};break;}}const _0x2dd1cb=[],_0x4b35ac=resolve(_0x1af116,'.lovrabet');if(existsSync(_0x4b35ac))_0x2dd1cb[_0x8b3677(0x210)](_0x4b35ac);const _0x3199b4=resolve(_0x1af116,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x3199b4))_0x2dd1cb[_0x8b3677(0x210)](_0x3199b4);const _0x6b9362=resolve(_0x1af116,_0x8b3677(0x213));if(existsSync(_0x6b9362))_0x2dd1cb['push'](_0x6b9362);for(const _0xf0816a of collectIdeSkillFiles(_0x1af116)){if(existsSync(_0xf0816a))_0x2dd1cb[_0x8b3677(0x210)](_0xf0816a);}let _0x24dfaf=null;const _0x311487=resolve(_0x1af116,_0x8b3677(0x1f4));if(existsSync(_0x311487))try{const _0x1e52a6=JSON[_0x8b3677(0x236)](readFileSync(_0x311487,_0x8b3677(0x21d)));if(_0x1e52a6?.[_0x8b3677(0x270)]&&typeof _0x1e52a6[_0x8b3677(0x270)]===_0x8b3677(0x224)){const _0x3f6513=[];for(const [_0x33ea68,_0x2784b1]of Object[_0x8b3677(0x200)](_0x1e52a6[_0x8b3677(0x270)])){const _0x2a97d8=_0x2784b1;_0x2a97d8?.['args']&&Array[_0x8b3677(0x256)](_0x2a97d8[_0x8b3677(0x21a)])&&_0x2a97d8[_0x8b3677(0x21a)][_0x8b3677(0x245)](_0x414390=>typeof _0x414390===_0x8b3677(0x1fd)&&_0x414390[_0x8b3677(0x24c)](_0x8b3677(0x214)))&&_0x3f6513[_0x8b3677(0x210)](_0x33ea68);}_0x3f6513[_0x8b3677(0x1f7)]>0x0&&(_0x24dfaf={'path':_0x311487,'keys':_0x3f6513});}}catch{}const _0x3a0f38=_0x2dd1cb[_0x8b3677(0x1f7)]>0x0||_0x2ebd08!==null;let _0x390b90=null;const _0x12e498=resolve(_0x1af116,_0x8b3677(0x229));if(existsSync(_0x12e498))try{const _0x3c730e=JSON['parse'](readFileSync(_0x12e498,'utf8'));for(const _0x38db7d of[_0x8b3677(0x22b),'devDependencies']){const _0x20ec8d=_0x3c730e?.[_0x38db7d]?.[_0x8b3677(0x20c)];if(typeof _0x20ec8d===_0x8b3677(0x1fd)){_0x20ec8d!==_0x8b3677(0x1ff)&&(_0x390b90={'pkgPath':_0x12e498,'currentVersion':_0x20ec8d,'field':_0x38db7d});break;}}}catch{}return{'configMigration':_0x2ebd08,'oldArtifacts':_0x2dd1cb,'oldMcpConfig':_0x24dfaf,'needsSkillSwap':_0x3a0f38,'sdkUpgrade':_0x390b90};}function printReport(_0xa799f9){const _0x197a94=a169_0x12f620,{configMigration:_0x3b0d02,oldArtifacts:_0x54e384,oldMcpConfig:_0x483a14,needsSkillSwap:_0xbb4cd4}=_0xa799f9;console['log'](''),console[_0x197a94(0x1f8)](a169_0x1e0e4f[_0x197a94(0x24b)]('===\x20Upgrade\x20Analysis\x20===')),console[_0x197a94(0x1f8)]('');_0x3b0d02?(console[_0x197a94(0x1f8)](a169_0x1e0e4f[_0x197a94(0x266)](_0x197a94(0x217))+('\x20\x20'+a169_0x1e0e4f['yellow'](_0x3b0d02[_0x197a94(0x272)]))),console['log'](_0x197a94(0x202)+(_0x3b0d02[_0x197a94(0x260)]?a169_0x1e0e4f[_0x197a94(0x262)](_0x197a94(0x253)):a169_0x1e0e4f['gray'](_0x197a94(0x1f6)))),console[_0x197a94(0x1f8)](_0x197a94(0x230)+_0x3b0d02[_0x197a94(0x23a)]['join'](',\x20')),console[_0x197a94(0x1f8)](_0x197a94(0x1f3))):console['log'](a169_0x1e0e4f[_0x197a94(0x266)](_0x197a94(0x217))+'\x20\x20'+a169_0x1e0e4f[_0x197a94(0x265)]('no\x20legacy\x20config\x20found'));console['log']('');if(_0x54e384[_0x197a94(0x1f7)]>0x0){console[_0x197a94(0x1f8)](a169_0x1e0e4f['cyan'](_0x197a94(0x228)));for(const _0x3b126f of _0x54e384){console[_0x197a94(0x1f8)]('\x20\x20'+a169_0x1e0e4f['red'](_0x197a94(0x23c))+'\x20\x20'+_0x3b126f);}console[_0x197a94(0x1f8)](_0x197a94(0x268));}else console['log'](a169_0x1e0e4f['cyan']('Legacy\x20artifacts:')+'\x20\x20'+a169_0x1e0e4f[_0x197a94(0x265)]('none\x20found'));console['log']('');_0x483a14?(console['log'](a169_0x1e0e4f[_0x197a94(0x266)]('MCP\x20config:')+('\x20\x20'+a169_0x1e0e4f[_0x197a94(0x1ed)](_0x483a14[_0x197a94(0x21c)])+_0x197a94(0x20e)+_0x483a14[_0x197a94(0x21b)][_0x197a94(0x1fb)](',\x20'))),console[_0x197a94(0x1f8)](_0x197a94(0x237))):console[_0x197a94(0x1f8)](a169_0x1e0e4f[_0x197a94(0x266)](_0x197a94(0x23d))+'\x20\x20'+a169_0x1e0e4f[_0x197a94(0x265)](_0x197a94(0x247)));console[_0x197a94(0x1f8)](''),console[_0x197a94(0x1f8)](a169_0x1e0e4f[_0x197a94(0x266)](_0x197a94(0x1f0))+('\x20\x20'+(_0xbb4cd4?a169_0x1e0e4f[_0x197a94(0x1ed)](_0x197a94(0x23b)):a169_0x1e0e4f[_0x197a94(0x262)](_0x197a94(0x1ee)))));_0xbb4cd4&&console[_0x197a94(0x1f8)](_0x197a94(0x205)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x197a94(0x1f8)]('');if(_0xa799f9[_0x197a94(0x242)]){const {currentVersion:_0x496fac,field:_0x714ed4,pkgPath:_0x3ea492}=_0xa799f9['sdkUpgrade'];console[_0x197a94(0x1f8)](a169_0x1e0e4f[_0x197a94(0x266)]('@lovrabet/sdk:')+('\x20\x20'+a169_0x1e0e4f[_0x197a94(0x1ed)](_0x3ea492))),console[_0x197a94(0x1f8)](_0x197a94(0x255)+_0x714ed4+':\x20'+a169_0x1e0e4f[_0x197a94(0x1ed)](_0x496fac)+_0x197a94(0x24d)+a169_0x1e0e4f[_0x197a94(0x262)](_0x197a94(0x1ff))),console[_0x197a94(0x1f8)](_0x197a94(0x218));}else console[_0x197a94(0x1f8)](a169_0x1e0e4f[_0x197a94(0x266)](_0x197a94(0x258))+'\x20\x20'+a169_0x1e0e4f[_0x197a94(0x265)]('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x197a94(0x1f8)]('');}function execConfigMigration(_0x8e0859,_0x3673b0){const _0x3c0535=a169_0x12f620,{configMigration:_0x1b121e}=_0x8e0859;if(!_0x1b121e?.[_0x3c0535(0x272)])return{'step':0x1,'label':_0x3c0535(0x261),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x36d231=readConfigFile(_0x1b121e[_0x3c0535(0x272)]),_0x3286e3=resolve(_0x3673b0,NEW_CONFIG_NAME),_0x585065=_0x1b121e[_0x3c0535(0x260)]?readConfigFile(_0x3286e3):{};for(const [_0x42b229,_0x5a8073]of Object[_0x3c0535(0x200)](_0x36d231)){!(_0x42b229 in _0x585065)&&(_0x585065[_0x42b229]=_0x5a8073);}writeConfigFile(_0x3286e3,_0x585065);const _0x4e8754=_0x1b121e['oldPath']+'.bak';return renameSync(_0x1b121e[_0x3c0535(0x272)],_0x4e8754),{'step':0x1,'label':_0x3c0535(0x261),'ok':!![],'detail':_0x1b121e['oldPath']+_0x3c0535(0x24d)+_0x3286e3+_0x3c0535(0x25f)+_0x4e8754+')'};}function a169_0x960f(_0x2552a5,_0x4bd8e6){_0x2552a5=_0x2552a5-0x1ec;const _0x49f009=a169_0x49f0();let _0x960f62=_0x49f009[_0x2552a5];return _0x960f62;}function execRemoveOldArtifacts(_0x1e6468){const _0x5b613c=a169_0x12f620,_0x4988fc=[];for(const _0x48070d of _0x1e6468){try{if(!existsSync(_0x48070d))continue;const _0x31ddd1=tryStat(_0x48070d);_0x31ddd1?.[_0x5b613c(0x238)]()?rmSync(_0x48070d,{'recursive':!![],'force':!![]}):unlinkSync(_0x48070d);}catch(_0x53d852){_0x4988fc['push'](_0x48070d+':\x20'+_0x53d852[_0x5b613c(0x23f)]);}}return{'step':0x3,'label':_0x5b613c(0x20b),'ok':_0x4988fc[_0x5b613c(0x1f7)]===0x0,'detail':_0x4988fc[_0x5b613c(0x1f7)]>0x0?_0x1e6468[_0x5b613c(0x1f7)]-_0x4988fc[_0x5b613c(0x1f7)]+'/'+_0x1e6468[_0x5b613c(0x1f7)]+_0x5b613c(0x1fe)+_0x4988fc[_0x5b613c(0x1fb)](';\x20')+')':_0x1e6468[_0x5b613c(0x1f7)]+_0x5b613c(0x26d)};}function execCleanMcp(_0xb217ac){const _0x2b1cff=a169_0x12f620;if(!_0xb217ac[_0x2b1cff(0x1fa)])return{'step':0x4,'label':_0x2b1cff(0x241),'ok':!![],'detail':_0x2b1cff(0x20f)};try{const _0x39ccd6=readFileSync(_0xb217ac[_0x2b1cff(0x1fa)][_0x2b1cff(0x21c)],'utf8'),_0x5da3ec=JSON[_0x2b1cff(0x236)](_0x39ccd6);if(_0x5da3ec?.[_0x2b1cff(0x270)]&&typeof _0x5da3ec['mcpServers']===_0x2b1cff(0x224)){const _0x39ae4f=[];for(const [_0x198711,_0x472764]of Object[_0x2b1cff(0x200)](_0x5da3ec[_0x2b1cff(0x270)])){_0x472764?.['args']&&Array['isArray'](_0x472764[_0x2b1cff(0x21a)])&&_0x472764[_0x2b1cff(0x21a)][_0x2b1cff(0x245)](_0x5a4037=>typeof _0x5a4037===_0x2b1cff(0x1fd)&&_0x5a4037[_0x2b1cff(0x24c)](_0x2b1cff(0x214)))&&_0x39ae4f['push'](_0x198711);}for(const _0x263d08 of _0x39ae4f){delete _0x5da3ec['mcpServers'][_0x263d08];}return _0x39ae4f[_0x2b1cff(0x1f7)]>0x0&&writeFileSync(_0xb217ac['oldMcpConfig'][_0x2b1cff(0x21c)],JSON[_0x2b1cff(0x22d)](_0x5da3ec,null,0x2)+'\x0a',_0x2b1cff(0x21d)),{'step':0x4,'label':_0x2b1cff(0x241),'ok':!![],'detail':_0x2b1cff(0x22f)+_0x39ae4f[_0x2b1cff(0x1fb)](',\x20')+'\x20from\x20'+_0xb217ac[_0x2b1cff(0x1fa)][_0x2b1cff(0x21c)]};}return{'step':0x4,'label':_0x2b1cff(0x241),'ok':!![],'detail':_0x2b1cff(0x233)};}catch(_0xb271a9){return{'step':0x4,'label':_0x2b1cff(0x241),'ok':![],'detail':_0xb271a9[_0x2b1cff(0x23f)]};}}function execSkillsRemove(_0x56cdbd,_0x257d7e){const _0x451aff=a169_0x12f620,_0x253ef4=runNpxSkillsRemove(_0x56cdbd,{'stdio':_0x451aff(0x20d),'yes':_0x257d7e});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x253ef4['ok'],'detail':_0x253ef4['ok']?_0x451aff(0x234):_0x253ef4[_0x451aff(0x263)]??'exit\x20'+_0x253ef4[_0x451aff(0x203)]};}function execSkillsAdd(_0x11f331,_0x274cb4){const _0xcdd998=a169_0x12f620,_0x4c6d3d=runNpxSkillsAddGlobal(_0x11f331,_0xcdd998(0x24a),{'stdio':_0xcdd998(0x20d),'yes':_0x274cb4});return{'step':0x6,'label':_0xcdd998(0x216),'ok':_0x4c6d3d['ok'],'detail':_0x4c6d3d['ok']?_0xcdd998(0x207):_0x4c6d3d['error']??_0xcdd998(0x26f)+_0x4c6d3d[_0xcdd998(0x203)]};}function execUpgradeSdk(_0x4a1668){const _0x363345=a169_0x12f620;if(!_0x4a1668[_0x363345(0x242)])return{'step':0x7,'label':_0x363345(0x219),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x5e5fe8,currentVersion:_0x28b1e3,field:_0x3ee405}=_0x4a1668[_0x363345(0x242)];try{const _0x125fa2=readFileSync(_0x5e5fe8,_0x363345(0x21d)),_0x115a13=JSON['parse'](_0x125fa2);return _0x115a13[_0x3ee405][_0x363345(0x20c)]='latest',writeFileSync(_0x5e5fe8,JSON[_0x363345(0x22d)](_0x115a13,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x363345(0x219),'ok':!![],'detail':_0x3ee405+_0x363345(0x21e)+_0x28b1e3+_0x363345(0x206)};}catch(_0x559078){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x559078[_0x363345(0x23f)]};}}function tryStat(_0x571119){try{return statSync(_0x571119);}catch{return undefined;}}function printSummary(_0x541d67){const _0x5854ad=a169_0x12f620;console[_0x5854ad(0x1f8)](''),console['log'](a169_0x1e0e4f[_0x5854ad(0x24b)](_0x5854ad(0x21f))),console['log']('');for(const _0xe25cb4 of _0x541d67){const _0x3ebb79=_0xe25cb4['ok']?a169_0x1e0e4f[_0x5854ad(0x262)]('OK'):a169_0x1e0e4f[_0x5854ad(0x211)](_0x5854ad(0x24f));console[_0x5854ad(0x1f8)]('\x20\x20'+_0x3ebb79+_0x5854ad(0x271)+_0xe25cb4[_0x5854ad(0x232)]+':\x20'+_0xe25cb4[_0x5854ad(0x226)]);if(_0xe25cb4['detail'])console[_0x5854ad(0x1f8)]('\x20\x20\x20\x20\x20\x20\x20'+a169_0x1e0e4f[_0x5854ad(0x265)](_0xe25cb4[_0x5854ad(0x1ec)]));}console[_0x5854ad(0x1f8)]('');}export async function upgradeApp(_0x1d11f3,_0x30d892){const _0x1bfe0c=a169_0x12f620,_0x3d36bb=process[_0x1bfe0c(0x227)](),_0x511f91=analyse(_0x3d36bb),_0x489bfc=!_0x511f91[_0x1bfe0c(0x204)]&&_0x511f91[_0x1bfe0c(0x201)]['length']===0x0&&!_0x511f91['oldMcpConfig']&&!_0x511f91['needsSkillSwap']&&!_0x511f91[_0x1bfe0c(0x242)];if(_0x489bfc){console[_0x1bfe0c(0x1f8)](a169_0x1e0e4f[_0x1bfe0c(0x262)](_0x1bfe0c(0x243)));return;}printReport(_0x511f91);const _0x358461=!!(_0x30d892[_0x1bfe0c(0x240)]||_0x30d892['Y']||_0x1d11f3);if(!_0x358461)try{const _0x5c1d46=await askConfirm(_0x1bfe0c(0x25e));if(!_0x5c1d46){console[_0x1bfe0c(0x1f8)](a169_0x1e0e4f['gray'](_0x1bfe0c(0x20a)));return;}}catch(_0x3db419){if(_0x3db419?.[_0x1bfe0c(0x23f)]===_0x1bfe0c(0x248)){console['log'](a169_0x1e0e4f[_0x1bfe0c(0x265)]('Upgrade\x20cancelled.'));return;}throw _0x3db419;}const _0x5afcb2=[],_0x15dbe1=a169_0x29510e({'text':_0x1bfe0c(0x251),'color':_0x1bfe0c(0x266)})['start'](),_0x138146=execConfigMigration(_0x511f91,_0x3d36bb);_0x5afcb2[_0x1bfe0c(0x210)](_0x138146),_0x15dbe1[_0x138146['ok']?'succeed':_0x1bfe0c(0x231)](_0x1bfe0c(0x1ef)+(_0x138146['detail']??(_0x138146['ok']?_0x1bfe0c(0x1f5):_0x1bfe0c(0x23e))));const _0x41f9ba=resolve(_0x3d36bb,'.lovrabet'),_0x23c14f=a169_0x29510e({'text':_0x1bfe0c(0x223),'color':_0x1bfe0c(0x266)})['start']();if(existsSync(_0x41f9ba))try{rmSync(_0x41f9ba,{'recursive':!![],'force':!![]}),_0x23c14f[_0x1bfe0c(0x22e)](_0x1bfe0c(0x220)),_0x5afcb2[_0x1bfe0c(0x210)]({'step':0x2,'label':_0x1bfe0c(0x26a),'ok':!![]});}catch(_0x4852e4){_0x23c14f[_0x1bfe0c(0x231)](_0x1bfe0c(0x254)+_0x4852e4[_0x1bfe0c(0x23f)]),_0x5afcb2['push']({'step':0x2,'label':_0x1bfe0c(0x26a),'ok':![],'detail':_0x4852e4['message']});}else _0x23c14f[_0x1bfe0c(0x212)](_0x1bfe0c(0x246)),_0x5afcb2['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':_0x1bfe0c(0x20f)});const _0x54aa25=a169_0x29510e({'text':_0x1bfe0c(0x1fc),'color':_0x1bfe0c(0x266)})[_0x1bfe0c(0x26c)](),_0x4ecd91=execRemoveOldArtifacts(_0x511f91[_0x1bfe0c(0x201)]);_0x5afcb2[_0x1bfe0c(0x210)](_0x4ecd91),_0x54aa25[_0x4ecd91['ok']?_0x1bfe0c(0x22e):'fail']('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x4ecd91[_0x1bfe0c(0x1ec)]??(_0x4ecd91['ok']?_0x1bfe0c(0x1f5):'failed')));const _0x11f1ad=a169_0x29510e({'text':_0x1bfe0c(0x249),'color':_0x1bfe0c(0x266)})[_0x1bfe0c(0x26c)](),_0x3d4a4c=execCleanMcp(_0x511f91);_0x5afcb2['push'](_0x3d4a4c),_0x11f1ad[_0x3d4a4c['ok']?_0x1bfe0c(0x22e):'fail'](_0x1bfe0c(0x25b)+(_0x3d4a4c['detail']??(_0x3d4a4c['ok']?'done':_0x1bfe0c(0x23e))));const _0x270fe5=a169_0x29510e({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':_0x1bfe0c(0x266)})[_0x1bfe0c(0x26c)](),_0x377e09=execSkillsRemove(_0x3d36bb,_0x358461);_0x5afcb2['push'](_0x377e09),_0x270fe5[_0x377e09['ok']?_0x1bfe0c(0x22e):_0x1bfe0c(0x231)](_0x1bfe0c(0x22a)+(_0x377e09[_0x1bfe0c(0x1ec)]??(_0x377e09['ok']?_0x1bfe0c(0x1f5):_0x1bfe0c(0x23e))));const _0x5d8ca6=a169_0x29510e({'text':_0x1bfe0c(0x221),'color':_0x1bfe0c(0x266)})[_0x1bfe0c(0x26c)](),_0x1c1958=execSkillsAdd(_0x3d36bb,_0x358461);_0x5afcb2[_0x1bfe0c(0x210)](_0x1c1958),_0x5d8ca6[_0x1c1958['ok']?_0x1bfe0c(0x22e):'fail'](_0x1bfe0c(0x1f2)+(_0x1c1958['detail']??(_0x1c1958['ok']?_0x1bfe0c(0x1f5):_0x1bfe0c(0x23e))));const _0x58459a=a169_0x29510e({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':_0x1bfe0c(0x266)})[_0x1bfe0c(0x26c)](),_0x39cc86=execUpgradeSdk(_0x511f91);_0x5afcb2['push'](_0x39cc86),_0x58459a[_0x39cc86['ok']?_0x1bfe0c(0x22e):_0x1bfe0c(0x231)](_0x1bfe0c(0x267)+(_0x39cc86[_0x1bfe0c(0x1ec)]??(_0x39cc86['ok']?'done':_0x1bfe0c(0x23e)))),printSummary(_0x5afcb2);const _0x464df7=_0x5afcb2[_0x1bfe0c(0x245)](_0x233b83=>!_0x233b83['ok']);_0x464df7?console[_0x1bfe0c(0x1f8)](a169_0x1e0e4f[_0x1bfe0c(0x1ed)](_0x1bfe0c(0x26b))):console[_0x1bfe0c(0x1f8)](a169_0x1e0e4f[_0x1bfe0c(0x262)](_0x1bfe0c(0x26e))),_0x39cc86['ok']&&_0x511f91[_0x1bfe0c(0x242)]&&(console[_0x1bfe0c(0x1f8)](''),console[_0x1bfe0c(0x1f8)](a169_0x1e0e4f[_0x1bfe0c(0x24b)][_0x1bfe0c(0x266)](_0x1bfe0c(0x222))),console[_0x1bfe0c(0x1f8)](a169_0x1e0e4f[_0x1bfe0c(0x266)](_0x1bfe0c(0x250))),console[_0x1bfe0c(0x1f8)](''),console[_0x1bfe0c(0x1f8)](a169_0x1e0e4f[_0x1bfe0c(0x24e)]('\x20\x20npm\x20install')),console[_0x1bfe0c(0x1f8)](a169_0x1e0e4f[_0x1bfe0c(0x24e)](_0x1bfe0c(0x239))),console['log'](a169_0x1e0e4f[_0x1bfe0c(0x24e)](_0x1bfe0c(0x225))),console[_0x1bfe0c(0x1f8)](''));}
@@ -1 +1 @@
1
- const a162_0x4e3059=a162_0x3a34;(function(_0x27be71,_0x1c812e){const _0x53750b=a162_0x3a34,_0x48dad9=_0x27be71();while(!![]){try{const _0x40e81f=parseInt(_0x53750b(0x19d))/0x1+parseInt(_0x53750b(0x18f))/0x2+parseInt(_0x53750b(0x15a))/0x3*(parseInt(_0x53750b(0x1a7))/0x4)+parseInt(_0x53750b(0x197))/0x5+parseInt(_0x53750b(0x16c))/0x6+-parseInt(_0x53750b(0x19f))/0x7+-parseInt(_0x53750b(0x1a0))/0x8;if(_0x40e81f===_0x1c812e)break;else _0x48dad9['push'](_0x48dad9['shift']());}catch(_0x15d41c){_0x48dad9['push'](_0x48dad9['shift']());}}}(a162_0x482e,0xafa12));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{taskDefinitions}from'../commands/task/index.js';import{tenantDefinitions}from'../commands/tenant/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';function a162_0x3a34(_0x50b047,_0x168860){_0x50b047=_0x50b047-0x150;const _0x482ebc=a162_0x482e();let _0x3a348e=_0x482ebc[_0x50b047];return _0x3a348e;}import{kbDefinitions}from'../commands/kb/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{fileDefinitions}from'../commands/file/index.js';import{ocrDefinitions}from'../commands/ocr/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x18a0f1){const _0x55bece=a162_0x3a34;for(const _0x437074 of _0x18a0f1){definitions['set'](_0x437074[_0x55bece(0x151)]+':'+_0x437074[_0x55bece(0x17b)],_0x437074);let _0x324b7a=serviceGroups[_0x55bece(0x15f)](_0x437074[_0x55bece(0x151)]);!_0x324b7a&&(_0x324b7a=[],serviceGroups[_0x55bece(0x199)](_0x437074[_0x55bece(0x151)],_0x324b7a)),_0x324b7a[_0x55bece(0x1a6)](_0x437074);}}function registerDeclarativeService(_0x52dd90,_0x6280b3,_0x16a9ef){const _0x4a39a3=a162_0x3a34;registerDefinitions(_0x6280b3);_0x16a9ef?.[_0x4a39a3(0x19e)]&&registerDefinitions([_0x16a9ef[_0x4a39a3(0x19e)]]);const _0x3f5a5e=_0x11289b=>_0x11289b==='read'?'':_0x11289b===_0x4a39a3(0x16b)?_0x4a39a3(0x187):'\x20\x20[high-risk-write]',_0x4dfeee={'service':_0x6280b3[0x0][_0x4a39a3(0x151)],'label':_0x52dd90,'commands':_0x6280b3[_0x4a39a3(0x168)](_0x134676=>!_0x134676['hidden'])[_0x4a39a3(0x165)](_0x4548c7=>({'command':_0x4548c7[_0x4a39a3(0x17b)],'description':_0x4548c7[_0x4a39a3(0x158)],'tag':_0x3f5a5e(_0x4548c7['risk'])})),'declarative':!![],'defaultCommand':_0x16a9ef?.[_0x4a39a3(0x194)]??(_0x16a9ef?.[_0x4a39a3(0x17c)]?_0x6280b3[0x0][_0x4a39a3(0x17b)]:undefined),'wildcardDef':_0x16a9ef?.[_0x4a39a3(0x19e)],'isSingleCommand':_0x16a9ef?.[_0x4a39a3(0x17c)]};serviceRegistry['push'](_0x4dfeee),serviceByName[_0x4a39a3(0x199)](_0x4dfeee['service'],_0x4dfeee);}registerDeclarativeService(a162_0x4e3059(0x170),initDefinitions,{'defaultCommand':'run','isSingleCommand':!![]}),registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a162_0x4e3059(0x19a),workspaceDefinitions),registerDeclarativeService(a162_0x4e3059(0x157),appDefinitions),registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':'login'}),registerDeclarativeService(a162_0x4e3059(0x16a),tenantDefinitions),registerDeclarativeService(a162_0x4e3059(0x180),datasetDefinitions),registerDeclarativeService(a162_0x4e3059(0x156),pageDefinitions),registerDeclarativeService(a162_0x4e3059(0x19b),apiDefinitions),registerDeclarativeService('Instant\x20API',dataDefinitions),registerDeclarativeService('BFF\x20Scripts',bffDefinitions),registerDeclarativeService('Notification\x20Configuration',notificationDefinitions),registerDeclarativeService(a162_0x4e3059(0x176),sqlDefinitions),registerDeclarativeService(a162_0x4e3059(0x190),dbDefinitions),registerDeclarativeService(a162_0x4e3059(0x152),menuDefinitions),registerDeclarativeService(a162_0x4e3059(0x1a4),taskDefinitions),registerDeclarativeService(a162_0x4e3059(0x16f),roleDefinitions),registerDeclarativeService(a162_0x4e3059(0x16d),permitDefinitions),registerDeclarativeService(a162_0x4e3059(0x166),appConfigDefinitions),registerDeclarativeService(a162_0x4e3059(0x185),kbDefinitions),registerDeclarativeService(a162_0x4e3059(0x174),issueDefinitions),registerDeclarativeService('File',fileDefinitions),registerDeclarativeService(a162_0x4e3059(0x15e),ocrDefinitions),registerDeclarativeService(a162_0x4e3059(0x15c),codegenDefinitions),registerDeclarativeService(a162_0x4e3059(0x186),configDefinitions),registerDeclarativeService(a162_0x4e3059(0x153),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x4e3059(0x184),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x4e3059(0x18c),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x4e3059(0x167),cliSkillDefinitions,{'defaultCommand':a162_0x4e3059(0x17d)}),registerDeclarativeService('Logs',logsDefinitions,{'defaultCommand':'show'}),registerDeclarativeService(a162_0x4e3059(0x178),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a162_0x4e3059(0x192)]-0x1];last[a162_0x4e3059(0x196)]=[{'command':a162_0x4e3059(0x18a),'description':a162_0x4e3059(0x160),'tag':'\x20\x20['+runDefinition[a162_0x4e3059(0x195)]+']'}];}const REMOVED_COMMAND_REPLACEMENTS=new Map([[a162_0x4e3059(0x177),'rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml'],['bff:new',a162_0x4e3059(0x175)],[a162_0x4e3059(0x19c),a162_0x4e3059(0x155)],[a162_0x4e3059(0x171),'rabetbase\x20menu\x20asset-update'],[a162_0x4e3059(0x172),'rabetbase\x20workspace\x20init\x20--appcode\x20<code>'],[a162_0x4e3059(0x163),'rabetbase\x20cli-skill\x20install'],[a162_0x4e3059(0x164),a162_0x4e3059(0x18e)],[a162_0x4e3059(0x188),a162_0x4e3059(0x18e)],['skills:install','rabetbase\x20cli-skill\x20install'],[a162_0x4e3059(0x183),a162_0x4e3059(0x169)],['app:use','rabetbase\x20workspace\x20use\x20--app\x20<name>'],[a162_0x4e3059(0x173),a162_0x4e3059(0x1a5)],[a162_0x4e3059(0x179),a162_0x4e3059(0x191)],[a162_0x4e3059(0x15d),a162_0x4e3059(0x16e)],['knowledge-base:detail',a162_0x4e3059(0x193)],[a162_0x4e3059(0x18b),a162_0x4e3059(0x189)],['knowledge-base:update',a162_0x4e3059(0x1a2)],[a162_0x4e3059(0x1a1),a162_0x4e3059(0x17e)]]),REMOVED_FLAT_COMMAND_REPLACEMENTS=new Map([['create',a162_0x4e3059(0x1a3)],[a162_0x4e3059(0x150),a162_0x4e3059(0x159)],[a162_0x4e3059(0x198),a162_0x4e3059(0x18d)],['preview',a162_0x4e3059(0x17a)],[a162_0x4e3059(0x161),a162_0x4e3059(0x154)]]);function a162_0x482e(){const _0xed8d76=['knowledge-base:create','Self\x20Update','rabetbase\x20run\x20build','rabetbase\x20cli-skill\x20install','2501900sUtlrS','Database\x20Connections','rabetbase\x20workspace\x20remove\x20<name>','length','rabetbase\x20kb\x20detail','defaultCommand','risk','commands','6134170yeCqHB','build','set','Workspace','API\x20Development','sql:new','633992CeQFMD','wildcardDef','131915iVRRiG','25147816qVApNE','knowledge-base:delete','rabetbase\x20kb\x20update','rabetbase\x20project\x20create\x20<project-name>','Async\x20Tasks','rabetbase\x20workspace\x20add\x20<name>\x20--appcode\x20<code>','push','4EJiBGl','start','service','Menu','Diagnostics','rabetbase\x20auth\x20logout','rabetbase\x20sql\x20create','Smart\x20List\x20Pages','App\x20Management','description','rabetbase\x20run\x20start','1268127bGmajK','Use\x20`','Code\x20Generation','knowledge-base:list','OCR','get','Run\x20any\x20package.json\x20script','logout','`\x20instead.','skill:','skill:install','map','Runtime\x20App\x20Config\x20Management','CLI\x20Built-in\x20Skill','filter','rabetbase\x20app\x20list\x20--remote','Tenant\x20Members','write','2083290cUClud','Permissions','rabetbase\x20kb\x20list','Roles','Quick\x20Start','menu:update','project:init','app:add','Platform\x20Issue','rabetbase\x20bff\x20create','SQL\x20Queries','sql:save','Run\x20Scripts','app:remove','rabetbase\x20run\x20preview','command','isSingleCommand','install','rabetbase\x20kb\x20delete','has','Dataset\x20&\x20Operations','`rabetbase\x20','values','app:remote','Schema','Company\x20Knowledge\x20Base','Configuration','\x20\x20[write]','skills:','rabetbase\x20kb\x20create','<script>'];a162_0x482e=function(){return _0xed8d76;};return a162_0x482e();}export function resolveRemovedCommand(_0x1842db,_0xee84be){const _0x39cfa4=a162_0x4e3059;if(!_0x1842db)return undefined;const _0x18fcc7=REMOVED_COMMAND_REPLACEMENTS[_0x39cfa4(0x15f)](_0x1842db+':'+(_0xee84be??'')),_0x25d585=REMOVED_FLAT_COMMAND_REPLACEMENTS[_0x39cfa4(0x15f)](_0x1842db),_0x476835=_0x18fcc7??_0x25d585;if(!_0x476835)return undefined;const _0x3b9af5=_0x25d585?_0x1842db:_0xee84be?_0x1842db+'\x20'+_0xee84be:_0x1842db;return{'command':_0x3b9af5,'message':_0x39cfa4(0x181)+_0x3b9af5+'`\x20has\x20been\x20removed.','hint':_0x39cfa4(0x15b)+_0x476835+_0x39cfa4(0x162)};}export function findDefinition(_0x2f1f72,_0x42e278){return definitions['get'](_0x2f1f72+':'+_0x42e278);}export function isKnownService(_0x509d11){const _0x342ac8=a162_0x4e3059;return serviceByName[_0x342ac8(0x17f)](_0x509d11);}export function isDeclarativeService(_0x1ed702){const _0x52fa41=a162_0x4e3059;return serviceGroups[_0x52fa41(0x17f)](_0x1ed702)||serviceByName[_0x52fa41(0x15f)](_0x1ed702)?.['wildcardDef']!==undefined;}export function getServiceEntry(_0x4253fc){const _0x39f124=a162_0x4e3059;return serviceByName[_0x39f124(0x15f)](_0x4253fc);}export function getLegacyHandler(_0x1be9a0,_0x1140a2){return undefined;}export function getAllDefinitions(){const _0x35b228=a162_0x4e3059;return Array['from'](definitions[_0x35b228(0x182)]());}
1
+ const a170_0x4da3eb=a170_0x4d33;function a170_0x4d33(_0x529a2e,_0x2b5f3d){_0x529a2e=_0x529a2e-0x113;const _0x45889b=a170_0x4588();let _0x4d3315=_0x45889b[_0x529a2e];return _0x4d3315;}(function(_0x4732d2,_0x1ce1d2){const _0x3fcb77=a170_0x4d33,_0xf5f428=_0x4732d2();while(!![]){try{const _0x12d1f2=parseInt(_0x3fcb77(0x16f))/0x1*(parseInt(_0x3fcb77(0x159))/0x2)+-parseInt(_0x3fcb77(0x116))/0x3*(-parseInt(_0x3fcb77(0x125))/0x4)+-parseInt(_0x3fcb77(0x174))/0x5+-parseInt(_0x3fcb77(0x14b))/0x6*(parseInt(_0x3fcb77(0x11d))/0x7)+parseInt(_0x3fcb77(0x170))/0x8+-parseInt(_0x3fcb77(0x15c))/0x9*(-parseInt(_0x3fcb77(0x16b))/0xa)+-parseInt(_0x3fcb77(0x149))/0xb;if(_0x12d1f2===_0x1ce1d2)break;else _0xf5f428['push'](_0xf5f428['shift']());}catch(_0x159b9d){_0xf5f428['push'](_0xf5f428['shift']());}}}(a170_0x4588,0x7a654));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{taskDefinitions}from'../commands/task/index.js';import{tenantDefinitions}from'../commands/tenant/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';function a170_0x4588(){const _0xba3ef0=['values','Async\x20Tasks','rabetbase\x20run\x20preview','start','1633500Swxzqf','\x20\x20[write]','1838814EPTayZ','knowledge-base:list','Smart\x20List\x20Pages\x20&\x20React\x20Custom\x20Pages','Run\x20any\x20package.json\x20script','rabetbase\x20project\x20create\x20<project-name>','Permissions','rabetbase\x20kb\x20update','<script>','bff:new','length','rabetbase\x20run\x20build','map','\x20\x20[high-risk-write]','app:add','12ozsfkH','Runtime\x20App\x20Config\x20Management','rabetbase\x20workspace\x20remove\x20<name>','143433YdOYpy','Workspace','rabetbase\x20menu\x20asset-update','Roles','sql:save','run','rabetbase\x20kb\x20create','app:use','rabetbase\x20workspace\x20init\x20--appcode\x20<code>','Notification\x20Configuration','API\x20Development','push','menu:update','login','rabetbase\x20cli-skill\x20install','220PSbRrZ','install','`rabetbase\x20','knowledge-base:detail','9363iGdeOt','1994944eUSUDq','rabetbase\x20kb\x20detail','Authentication','set','1330010YRgXSq','knowledge-base:delete','Schema','rabetbase\x20kb\x20list','Logs','4731NITgPy','Code\x20Generation','skill:install','rabetbase\x20workspace\x20add\x20<name>\x20--appcode\x20<code>','Quick\x20Start','sql:new','rabetbase\x20app\x20list\x20--remote','7jvohOV','knowledge-base:update','CLI\x20Built-in\x20Skill','App\x20Management','get','create','File','risk','1436MfaWBj','has','knowledge-base:create','Company\x20Knowledge\x20Base','rabetbase\x20kb\x20delete','preview','BFF\x20Scripts','Tenant\x20Members','read','service','logout','wildcardDef','Menu','description','hidden','filter','rabetbase\x20sql\x20create','skill:','Database\x20Connections','rabetbase\x20auth\x20logout','SQL\x20Queries','Use\x20`','Configuration','app:remove','project:init','rabetbase\x20workspace\x20use\x20--app\x20<name>','command','isSingleCommand','rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml','Project','\x20\x20[','commands'];a170_0x4588=function(){return _0xba3ef0;};return a170_0x4588();}import{appConfigDefinitions}from'../commands/app-config/index.js';import{kbDefinitions}from'../commands/kb/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{fileDefinitions}from'../commands/file/index.js';import{ocrDefinitions}from'../commands/ocr/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{userAccountDefinitions}from'../commands/user-account/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x1e7eff){const _0x4fec83=a170_0x4d33;for(const _0x138023 of _0x1e7eff){definitions['set'](_0x138023[_0x4fec83(0x12e)]+':'+_0x138023[_0x4fec83(0x13f)],_0x138023);let _0x3401af=serviceGroups[_0x4fec83(0x121)](_0x138023[_0x4fec83(0x12e)]);!_0x3401af&&(_0x3401af=[],serviceGroups[_0x4fec83(0x173)](_0x138023['service'],_0x3401af)),_0x3401af[_0x4fec83(0x167)](_0x138023);}}function registerDeclarativeService(_0x48029b,_0x26d6bb,_0x414f74){const _0xc7766d=a170_0x4d33;registerDefinitions(_0x26d6bb);_0x414f74?.[_0xc7766d(0x130)]&&registerDefinitions([_0x414f74[_0xc7766d(0x130)]]);const _0x1ad7f7=_0x1566aa=>_0x1566aa===_0xc7766d(0x12d)?'':_0x1566aa==='write'?_0xc7766d(0x14a):_0xc7766d(0x157),_0x1ae170={'service':_0x26d6bb[0x0][_0xc7766d(0x12e)],'label':_0x48029b,'commands':_0x26d6bb[_0xc7766d(0x134)](_0x53865=>!_0x53865[_0xc7766d(0x133)])[_0xc7766d(0x156)](_0x11a675=>({'command':_0x11a675[_0xc7766d(0x13f)],'description':_0x11a675[_0xc7766d(0x132)],'tag':_0x1ad7f7(_0x11a675[_0xc7766d(0x124)])})),'declarative':!![],'defaultCommand':_0x414f74?.['defaultCommand']??(_0x414f74?.[_0xc7766d(0x140)]?_0x26d6bb[0x0]['command']:undefined),'wildcardDef':_0x414f74?.[_0xc7766d(0x130)],'isSingleCommand':_0x414f74?.['isSingleCommand']};serviceRegistry[_0xc7766d(0x167)](_0x1ae170),serviceByName['set'](_0x1ae170[_0xc7766d(0x12e)],_0x1ae170);}registerDeclarativeService(a170_0x4da3eb(0x11a),initDefinitions,{'defaultCommand':a170_0x4da3eb(0x161),'isSingleCommand':!![]}),registerDeclarativeService(a170_0x4da3eb(0x142),projectDefinitions),registerDeclarativeService(a170_0x4da3eb(0x15d),workspaceDefinitions),registerDeclarativeService(a170_0x4da3eb(0x120),appDefinitions),registerDeclarativeService(a170_0x4da3eb(0x172),authDefinitions,{'defaultCommand':a170_0x4da3eb(0x169)}),registerDeclarativeService(a170_0x4da3eb(0x12c),tenantDefinitions),registerDeclarativeService('User\x20Accounts',userAccountDefinitions),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService(a170_0x4da3eb(0x14d),pageDefinitions),registerDeclarativeService(a170_0x4da3eb(0x166),apiDefinitions),registerDeclarativeService('Instant\x20API',dataDefinitions),registerDeclarativeService(a170_0x4da3eb(0x12b),bffDefinitions),registerDeclarativeService(a170_0x4da3eb(0x165),notificationDefinitions),registerDeclarativeService(a170_0x4da3eb(0x139),sqlDefinitions),registerDeclarativeService(a170_0x4da3eb(0x137),dbDefinitions),registerDeclarativeService(a170_0x4da3eb(0x131),menuDefinitions),registerDeclarativeService(a170_0x4da3eb(0x146),taskDefinitions),registerDeclarativeService(a170_0x4da3eb(0x15f),roleDefinitions),registerDeclarativeService(a170_0x4da3eb(0x150),permitDefinitions),registerDeclarativeService(a170_0x4da3eb(0x15a),appConfigDefinitions),registerDeclarativeService(a170_0x4da3eb(0x128),kbDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a170_0x4da3eb(0x123),fileDefinitions),registerDeclarativeService('OCR',ocrDefinitions),registerDeclarativeService(a170_0x4da3eb(0x117),codegenDefinitions),registerDeclarativeService(a170_0x4da3eb(0x13b),configDefinitions),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a170_0x4da3eb(0x113),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a170_0x4da3eb(0x11f),cliSkillDefinitions,{'defaultCommand':a170_0x4da3eb(0x16c)}),registerDeclarativeService(a170_0x4da3eb(0x115),logsDefinitions,{'defaultCommand':'show'}),registerDeclarativeService('Run\x20Scripts',[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a170_0x4da3eb(0x154)]-0x1];last[a170_0x4da3eb(0x144)]=[{'command':a170_0x4da3eb(0x152),'description':a170_0x4da3eb(0x14e),'tag':a170_0x4da3eb(0x143)+runDefinition['risk']+']'}];}const REMOVED_COMMAND_REPLACEMENTS=new Map([[a170_0x4da3eb(0x160),a170_0x4da3eb(0x141)],[a170_0x4da3eb(0x153),'rabetbase\x20bff\x20create'],[a170_0x4da3eb(0x11b),a170_0x4da3eb(0x135)],[a170_0x4da3eb(0x168),a170_0x4da3eb(0x15e)],[a170_0x4da3eb(0x13d),a170_0x4da3eb(0x164)],[a170_0x4da3eb(0x136),'rabetbase\x20cli-skill\x20install'],[a170_0x4da3eb(0x118),a170_0x4da3eb(0x16a)],['skills:',a170_0x4da3eb(0x16a)],['skills:install',a170_0x4da3eb(0x16a)],['app:remote',a170_0x4da3eb(0x11c)],[a170_0x4da3eb(0x163),a170_0x4da3eb(0x13e)],[a170_0x4da3eb(0x158),a170_0x4da3eb(0x119)],[a170_0x4da3eb(0x13c),a170_0x4da3eb(0x15b)],[a170_0x4da3eb(0x14c),a170_0x4da3eb(0x114)],[a170_0x4da3eb(0x16e),a170_0x4da3eb(0x171)],[a170_0x4da3eb(0x127),a170_0x4da3eb(0x162)],[a170_0x4da3eb(0x11e),a170_0x4da3eb(0x151)],[a170_0x4da3eb(0x175),a170_0x4da3eb(0x129)]]),REMOVED_FLAT_COMMAND_REPLACEMENTS=new Map([[a170_0x4da3eb(0x122),a170_0x4da3eb(0x14f)],[a170_0x4da3eb(0x148),'rabetbase\x20run\x20start'],['build',a170_0x4da3eb(0x155)],[a170_0x4da3eb(0x12a),a170_0x4da3eb(0x147)],[a170_0x4da3eb(0x12f),a170_0x4da3eb(0x138)]]);export function resolveRemovedCommand(_0x319fa4,_0x647b33){const _0x4b5030=a170_0x4da3eb;if(!_0x319fa4)return undefined;const _0x3e60af=REMOVED_COMMAND_REPLACEMENTS[_0x4b5030(0x121)](_0x319fa4+':'+(_0x647b33??'')),_0x36da2d=REMOVED_FLAT_COMMAND_REPLACEMENTS['get'](_0x319fa4),_0x40b8dc=_0x3e60af??_0x36da2d;if(!_0x40b8dc)return undefined;const _0x1a3a22=_0x36da2d?_0x319fa4:_0x647b33?_0x319fa4+'\x20'+_0x647b33:_0x319fa4;return{'command':_0x1a3a22,'message':_0x4b5030(0x16d)+_0x1a3a22+'`\x20has\x20been\x20removed.','hint':_0x4b5030(0x13a)+_0x40b8dc+'`\x20instead.'};}export function findDefinition(_0x2e976c,_0x2dc4d2){return definitions['get'](_0x2e976c+':'+_0x2dc4d2);}export function isKnownService(_0x45e4f6){const _0x5c7bb9=a170_0x4da3eb;return serviceByName[_0x5c7bb9(0x126)](_0x45e4f6);}export function isDeclarativeService(_0x4c88ed){const _0xdaa28c=a170_0x4da3eb;return serviceGroups[_0xdaa28c(0x126)](_0x4c88ed)||serviceByName[_0xdaa28c(0x121)](_0x4c88ed)?.[_0xdaa28c(0x130)]!==undefined;}export function getServiceEntry(_0x3a9bf3){const _0x189d89=a170_0x4da3eb;return serviceByName[_0x189d89(0x121)](_0x3a9bf3);}export function getLegacyHandler(_0x39607d,_0x5dd8d6){return undefined;}export function getAllDefinitions(){const _0x153dd2=a170_0x4da3eb;return Array['from'](definitions[_0x153dd2(0x145)]());}
@@ -1 +1 @@
1
- function a163_0x560a(){const _0x504ab7=['716kwnxoK','\x20(id=','flagMissing','12624577ZOiTUI','3507160mKLLOq','4146ENubLe','90ryFNaJ','appCode','486514rDKdjB','remark','Pass\x20--name\x20<roleName>.','validation','POST','role','str','18WXjypn','508565BkFaRl','/smartapi/permit/role/create','name','trim','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','2176904QMiXeJ','create','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','CUSTOM','length','263872NliKub','write'];a163_0x560a=function(){return _0x504ab7;};return a163_0x560a();}const a163_0x52d900=a163_0x4dd6;(function(_0x4eb98e,_0x48fd91){const _0x509ad3=a163_0x4dd6,_0x9f9b1c=_0x4eb98e();while(!![]){try{const _0x1fbe0e=-parseInt(_0x509ad3(0xb6))/0x1+parseInt(_0x509ad3(0xc0))/0x2+-parseInt(_0x509ad3(0xbd))/0x3*(parseInt(_0x509ad3(0xb8))/0x4)+parseInt(_0x509ad3(0xc8))/0x5*(-parseInt(_0x509ad3(0xbe))/0x6)+parseInt(_0x509ad3(0xbb))/0x7+parseInt(_0x509ad3(0xb1))/0x8*(parseInt(_0x509ad3(0xc7))/0x9)+parseInt(_0x509ad3(0xbc))/0xa;if(_0x1fbe0e===_0x48fd91)break;else _0x9f9b1c['push'](_0x9f9b1c['shift']());}catch(_0x4f76da){_0x9f9b1c['push'](_0x9f9b1c['shift']());}}}(a163_0x560a,0xdce3d));import{createAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a163_0x4dd6(_0x1771a9,_0x5ed8b7){_0x1771a9=_0x1771a9-0xae;const _0x560a60=a163_0x560a();let _0x4dd6ca=_0x560a60[_0x1771a9];return _0x4dd6ca;}import{asDryRunResult}from'../../commands/common/dry-run.js';import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a163_0x52d900(0xc9);function readName(_0xffe457){const _0x15a25d=a163_0x52d900,_0x565095=_0xffe457['str'](_0x15a25d(0xae))[_0x15a25d(0xaf)]();if(!_0x565095)throw CliErrors[_0x15a25d(0xba)](_0x15a25d(0xae),_0x15a25d(0xc2));if(_0x565095[_0x15a25d(0xb5)]>0x40)throw CliErrors[_0x15a25d(0xc3)](_0x15a25d(0xb0));return _0x565095;}export const roleCreate={'service':a163_0x52d900(0xc5),'command':'create','description':a163_0x52d900(0xb3),'risk':a163_0x52d900(0xb7),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x64ad1d){readName(_0x64ad1d);},async 'dryRun'(_0x34d7f2){const _0x560c68=a163_0x52d900,_0x555f2b=readName(_0x34d7f2),_0x463abc=_0x34d7f2[_0x560c68(0xc6)](_0x560c68(0xc1))[_0x560c68(0xaf)]()||undefined;return asDryRunResult({'operation':_0x560c68(0xb2),'selector':{'appCode':_0x34d7f2[_0x560c68(0xbf)],'roleName':_0x555f2b},'before':null,'after':{'roleName':_0x555f2b,'roleType':_0x560c68(0xb4),'remark':_0x463abc},'dryRun':!![],'backend':{'method':'POST','path':CREATE_PATH},'warnings':[]},{'method':'POST','url':CREATE_PATH});},async 'execute'(_0x3122ec){const _0x402606=a163_0x52d900,_0x473345=readName(_0x3122ec),_0x573c46=_0x3122ec['str'](_0x402606(0xc1))[_0x402606(0xaf)]()||undefined,_0x2fe986=await createAppRole({'appCode':_0x3122ec[_0x402606(0xbf)],'roleName':_0x473345,..._0x573c46?{'remark':_0x573c46}:{}});return{'ok':!![],'data':{'operation':'create','selector':{'appCode':_0x3122ec[_0x402606(0xbf)],'roleId':_0x2fe986['id'],'roleName':_0x473345},'before':null,'after':projectRole(_0x2fe986),'dryRun':![],'backend':{'method':_0x402606(0xc4),'path':CREATE_PATH},'warnings':[]},'message':'Created\x20role\x20'+_0x2fe986['roleName']+_0x402606(0xb9)+_0x2fe986['id']+')'};}};
1
+ const a171_0x2171b5=a171_0x4045;(function(_0x4142ce,_0x5ccc74){const _0xb18fb=a171_0x4045,_0x502a43=_0x4142ce();while(!![]){try{const _0x21d003=parseInt(_0xb18fb(0x18d))/0x1+parseInt(_0xb18fb(0x19a))/0x2*(-parseInt(_0xb18fb(0x194))/0x3)+-parseInt(_0xb18fb(0x18b))/0x4*(-parseInt(_0xb18fb(0x196))/0x5)+parseInt(_0xb18fb(0x186))/0x6*(-parseInt(_0xb18fb(0x190))/0x7)+-parseInt(_0xb18fb(0x198))/0x8+-parseInt(_0xb18fb(0x188))/0x9*(-parseInt(_0xb18fb(0x192))/0xa)+parseInt(_0xb18fb(0x195))/0xb;if(_0x21d003===_0x5ccc74)break;else _0x502a43['push'](_0x502a43['shift']());}catch(_0x43cef3){_0x502a43['push'](_0x502a43['shift']());}}}(a171_0x47f3,0x41b4a));import{createAppRole}from'../../core/api-client.js';function a171_0x47f3(){const _0x4eb11a=['str','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','write','trim','424716RsRrYn','CUSTOM','794421TTRofH','role','length','48764fsYKEt','Created\x20role\x20','29414UbTQdt','\x20(id=','appCode','7rNyTYW','/smartapi/permit/role/create','30amaFZP','roleName','9894SUHyHo','4138728WeulYi','65KnYkfO','flagMissing','746208cPbWse','name','240xndaKZ','remark','create','POST'];a171_0x47f3=function(){return _0x4eb11a;};return a171_0x47f3();}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a171_0x4045(_0x1da2bd,_0xf55b26){_0x1da2bd=_0x1da2bd-0x183;const _0x47f3ea=a171_0x47f3();let _0x40458b=_0x47f3ea[_0x1da2bd];return _0x40458b;}import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a171_0x2171b5(0x191);function readName(_0x32da9f){const _0x34d2fa=a171_0x2171b5,_0x465e93=_0x32da9f[_0x34d2fa(0x19e)](_0x34d2fa(0x199))[_0x34d2fa(0x185)]();if(!_0x465e93)throw CliErrors[_0x34d2fa(0x197)](_0x34d2fa(0x199),'Pass\x20--name\x20<roleName>.');if(_0x465e93[_0x34d2fa(0x18a)]>0x40)throw CliErrors['validation']('Role\x20name\x20cannot\x20exceed\x2064\x20characters.');return _0x465e93;}export const roleCreate={'service':a171_0x2171b5(0x189),'command':a171_0x2171b5(0x19c),'description':a171_0x2171b5(0x183),'risk':a171_0x2171b5(0x184),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x55e581){readName(_0x55e581);},async 'dryRun'(_0x308304){const _0x494b38=a171_0x2171b5,_0x14b2e2=readName(_0x308304),_0x5ae3c1=_0x308304[_0x494b38(0x19e)](_0x494b38(0x19b))['trim']()||undefined;return asDryRunResult({'operation':_0x494b38(0x19c),'selector':{'appCode':_0x308304['appCode'],'roleName':_0x14b2e2},'before':null,'after':{'roleName':_0x14b2e2,'roleType':_0x494b38(0x187),'remark':_0x5ae3c1},'dryRun':!![],'backend':{'method':'POST','path':CREATE_PATH},'warnings':[]},{'method':_0x494b38(0x19d),'url':CREATE_PATH});},async 'execute'(_0x556b5f){const _0x1cb10d=a171_0x2171b5,_0x45f889=readName(_0x556b5f),_0x38fc41=_0x556b5f[_0x1cb10d(0x19e)](_0x1cb10d(0x19b))[_0x1cb10d(0x185)]()||undefined,_0x269bcd=await createAppRole({'appCode':_0x556b5f['appCode'],'roleName':_0x45f889,..._0x38fc41?{'remark':_0x38fc41}:{}});return{'ok':!![],'data':{'operation':'create','selector':{'appCode':_0x556b5f[_0x1cb10d(0x18f)],'roleId':_0x269bcd['id'],'roleName':_0x45f889},'before':null,'after':projectRole(_0x269bcd),'dryRun':![],'backend':{'method':'POST','path':CREATE_PATH},'warnings':[]},'message':_0x1cb10d(0x18c)+_0x269bcd[_0x1cb10d(0x193)]+_0x1cb10d(0x18e)+_0x269bcd['id']+')'};}};