@lovrabet/rabetbase-cli 2.3.16-beta.6 → 2.4.1-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (436) 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.d.ts +1 -1
  229. package/lib/context.js +1 -1
  230. package/lib/core/alias-resolver.js +1 -1
  231. package/lib/core/api-client.d.ts +117 -0
  232. package/lib/core/api-client.js +1 -1
  233. package/lib/core/bff/config.js +1 -1
  234. package/lib/core/bff/file-system.js +1 -1
  235. package/lib/core/bff/hash.js +1 -1
  236. package/lib/core/bff/lock.js +1 -1
  237. package/lib/core/bff/utils.js +1 -1
  238. package/lib/core/db-resolver.js +1 -1
  239. package/lib/core/page/file-system.js +1 -1
  240. package/lib/core/page/hash.js +1 -1
  241. package/lib/core/page/lock.js +1 -1
  242. package/lib/core/sql-index-auditor.js +1 -1
  243. package/lib/core/sql-sync/config.js +1 -1
  244. package/lib/core/sql-sync/file-system.js +1 -1
  245. package/lib/core/sql-sync/hash.js +1 -1
  246. package/lib/core/sql-sync/lock.js +1 -1
  247. package/lib/core/sql-sync/utils.js +1 -1
  248. package/lib/core/sql-validator.js +1 -1
  249. package/lib/errors.js +1 -1
  250. package/lib/framework/build-all-flags.js +1 -1
  251. package/lib/framework/error-output.js +1 -1
  252. package/lib/framework/explicit-yes.js +1 -1
  253. package/lib/framework/flags.js +1 -1
  254. package/lib/framework/help.js +1 -1
  255. package/lib/framework/index.js +1 -1
  256. package/lib/framework/output.js +1 -1
  257. package/lib/framework/response.js +1 -1
  258. package/lib/framework/runner-alias.js +1 -1
  259. package/lib/framework/runner.js +1 -1
  260. package/lib/framework/schema-export.js +1 -1
  261. package/lib/framework/types.js +1 -1
  262. package/lib/generated/build-info.d.ts +4 -4
  263. package/lib/generated/build-info.js +1 -1
  264. package/lib/help.js +1 -1
  265. package/lib/postinstall.d.ts +3 -0
  266. package/lib/postinstall.js +1 -0
  267. package/lib/runtime/confirmation.js +1 -1
  268. package/lib/runtime/event.js +1 -1
  269. package/lib/runtime/index.js +1 -1
  270. package/lib/runtime/queue.js +1 -1
  271. package/lib/runtime/resolve.js +1 -1
  272. package/lib/skills/builtin-skill.d.ts +37 -0
  273. package/lib/skills/builtin-skill.js +1 -0
  274. package/lib/skills/main.js +1 -1
  275. package/lib/skills/npx-skills-add.d.ts +4 -2
  276. package/lib/skills/npx-skills-add.js +1 -1
  277. package/lib/skills/skill-presence.js +1 -1
  278. package/lib/telemetry/cli-command-trace.js +1 -1
  279. package/lib/telemetry/cli-help-trace.js +1 -1
  280. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  281. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  282. package/lib/telemetry/send-cli-trace-log.js +1 -1
  283. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  284. package/lib/utils/ai_config.js +1 -1
  285. package/lib/utils/apply-jq-filter.js +1 -1
  286. package/lib/utils/cdn-config.js +1 -1
  287. package/lib/utils/check-sdk-version.js +1 -1
  288. package/lib/utils/cli-version-check.js +1 -1
  289. package/lib/utils/cli-version-policy.js +1 -1
  290. package/lib/utils/config.js +1 -1
  291. package/lib/utils/copy-directory.js +1 -1
  292. package/lib/utils/entity-with-id.js +1 -1
  293. package/lib/utils/file-utils.js +1 -1
  294. package/lib/utils/guides-cdn.js +1 -1
  295. package/lib/utils/http-client.js +1 -1
  296. package/lib/utils/is-non-interactive.js +1 -1
  297. package/lib/utils/logger.js +1 -1
  298. package/lib/utils/params.js +1 -1
  299. package/lib/utils/platform.js +1 -1
  300. package/lib/utils/rules-cdn.js +1 -1
  301. package/lib/utils/sleep.js +1 -1
  302. package/lib/utils/template-replacer.js +1 -1
  303. package/lib/utils/update-notice.js +1 -1
  304. package/lib/utils/version.js +1 -1
  305. package/lib/utils/with-active-cookie.js +1 -1
  306. package/lib/utils/write-cli-side-channel.js +1 -1
  307. package/package.json +9 -3
  308. package/scripts/postinstall.mjs +24 -0
  309. package/skills/rabetbase/SKILL.md +493 -0
  310. package/skills/rabetbase/guides/backend-function.md +835 -0
  311. package/skills/rabetbase/guides/best-practices.md +137 -0
  312. package/skills/rabetbase/guides/bff-creation-workflow.md +148 -0
  313. package/skills/rabetbase/guides/conflict-detection.md +119 -0
  314. package/skills/rabetbase/guides/data-api-guidelines.md +414 -0
  315. package/skills/rabetbase/guides/database-connection-workflow.md +169 -0
  316. package/skills/rabetbase/guides/frontend-development.md +179 -0
  317. package/skills/rabetbase/guides/legacy-application-blueprint-workflow.md +495 -0
  318. package/skills/rabetbase/guides/menu-anomaly-manual-cleanup.md +137 -0
  319. package/skills/rabetbase/guides/page-development-workflow.md +187 -0
  320. package/skills/rabetbase/guides/react-custom-page-workflow.md +184 -0
  321. package/skills/rabetbase/guides/role-permit-workflow.md +127 -0
  322. package/skills/rabetbase/guides/sql-creation-workflow.md +173 -0
  323. package/skills/rabetbase/guides/sql-mybatis.md +126 -0
  324. package/skills/rabetbase/guides/troubleshooting.md +67 -0
  325. package/skills/rabetbase/guides/typescript-sdk.md +227 -0
  326. package/skills/rabetbase/knowledge/page-schema/LrSmartCreate.md +367 -0
  327. package/skills/rabetbase/knowledge/page-schema/LrSmartDetail.md +153 -0
  328. package/skills/rabetbase/knowledge/page-schema/LrSmartEcharts.md +291 -0
  329. package/skills/rabetbase/knowledge/page-schema/LrSmartFilter.md +478 -0
  330. package/skills/rabetbase/knowledge/page-schema/LrSmartJsx.md +119 -0
  331. package/skills/rabetbase/knowledge/page-schema/LrSmartStatistic.md +223 -0
  332. package/skills/rabetbase/knowledge/page-schema/LrSmartTable.md +632 -0
  333. package/skills/rabetbase/knowledge/page-schema/YtPage.md +172 -0
  334. package/skills/rabetbase/knowledge/page-schema/dataset-relations.md +126 -0
  335. package/skills/rabetbase/knowledge/page-schema/external-resources-usage.md +232 -0
  336. package/skills/rabetbase/knowledge/page-schema/field-components.md +312 -0
  337. package/skills/rabetbase/knowledge/page-schema/syntax-reference.md +278 -0
  338. package/skills/rabetbase/knowledge/react-page/components.md +225 -0
  339. package/skills/rabetbase/knowledge/react-page/generation-standards.md +385 -0
  340. package/skills/rabetbase/references/rabetbase-api-list.md +58 -0
  341. package/skills/rabetbase/references/rabetbase-api-pull.md +82 -0
  342. package/skills/rabetbase/references/rabetbase-app-config.md +95 -0
  343. package/skills/rabetbase/references/rabetbase-app-list.md +79 -0
  344. package/skills/rabetbase/references/rabetbase-app-members-list.md +64 -0
  345. package/skills/rabetbase/references/rabetbase-auth-login.md +53 -0
  346. package/skills/rabetbase/references/rabetbase-auth-logout.md +29 -0
  347. package/skills/rabetbase/references/rabetbase-bff-create.md +59 -0
  348. package/skills/rabetbase/references/rabetbase-bff-delete.md +42 -0
  349. package/skills/rabetbase/references/rabetbase-bff-detail.md +38 -0
  350. package/skills/rabetbase/references/rabetbase-bff-list.md +61 -0
  351. package/skills/rabetbase/references/rabetbase-bff-pull.md +42 -0
  352. package/skills/rabetbase/references/rabetbase-bff-push.md +65 -0
  353. package/skills/rabetbase/references/rabetbase-bff-save.md +63 -0
  354. package/skills/rabetbase/references/rabetbase-bff-status.md +37 -0
  355. package/skills/rabetbase/references/rabetbase-cli-skill-install.md +42 -0
  356. package/skills/rabetbase/references/rabetbase-codegen-sdk.md +35 -0
  357. package/skills/rabetbase/references/rabetbase-codegen-sql.md +33 -0
  358. package/skills/rabetbase/references/rabetbase-config.md +296 -0
  359. package/skills/rabetbase/references/rabetbase-dataset-business-group-update.md +84 -0
  360. package/skills/rabetbase/references/rabetbase-dataset-delete.md +54 -0
  361. package/skills/rabetbase/references/rabetbase-dataset-detail.md +106 -0
  362. package/skills/rabetbase/references/rabetbase-dataset-extend-update.md +70 -0
  363. package/skills/rabetbase/references/rabetbase-dataset-field-update.md +117 -0
  364. package/skills/rabetbase/references/rabetbase-dataset-generate.md +206 -0
  365. package/skills/rabetbase/references/rabetbase-dataset-list.md +42 -0
  366. package/skills/rabetbase/references/rabetbase-dataset-operations.md +34 -0
  367. package/skills/rabetbase/references/rabetbase-dataset-relation-audit.md +63 -0
  368. package/skills/rabetbase/references/rabetbase-dataset-relation-mutations.md +141 -0
  369. package/skills/rabetbase/references/rabetbase-dataset-relations.md +71 -0
  370. package/skills/rabetbase/references/rabetbase-dataset-rename.md +107 -0
  371. package/skills/rabetbase/references/rabetbase-dataset-restore.md +54 -0
  372. package/skills/rabetbase/references/rabetbase-db-analyze.md +135 -0
  373. package/skills/rabetbase/references/rabetbase-db-create.md +54 -0
  374. package/skills/rabetbase/references/rabetbase-db-delete.md +26 -0
  375. package/skills/rabetbase/references/rabetbase-db-detail.md +27 -0
  376. package/skills/rabetbase/references/rabetbase-db-diff.md +57 -0
  377. package/skills/rabetbase/references/rabetbase-db-list.md +37 -0
  378. package/skills/rabetbase/references/rabetbase-db-tables.md +25 -0
  379. package/skills/rabetbase/references/rabetbase-db-test.md +29 -0
  380. package/skills/rabetbase/references/rabetbase-db-update.md +29 -0
  381. package/skills/rabetbase/references/rabetbase-doctor.md +62 -0
  382. package/skills/rabetbase/references/rabetbase-file.md +35 -0
  383. package/skills/rabetbase/references/rabetbase-init.md +70 -0
  384. package/skills/rabetbase/references/rabetbase-issue-report.md +132 -0
  385. package/skills/rabetbase/references/rabetbase-kb.md +62 -0
  386. package/skills/rabetbase/references/rabetbase-menu-asset-update.md +135 -0
  387. package/skills/rabetbase/references/rabetbase-menu-delete.md +54 -0
  388. package/skills/rabetbase/references/rabetbase-menu-external-link-create.md +63 -0
  389. package/skills/rabetbase/references/rabetbase-menu-external-link-update.md +74 -0
  390. package/skills/rabetbase/references/rabetbase-menu-group-create.md +33 -0
  391. package/skills/rabetbase/references/rabetbase-menu-group-update.md +38 -0
  392. package/skills/rabetbase/references/rabetbase-menu-list.md +144 -0
  393. package/skills/rabetbase/references/rabetbase-menu-move.md +54 -0
  394. package/skills/rabetbase/references/rabetbase-menu-regroup-start.md +45 -0
  395. package/skills/rabetbase/references/rabetbase-menu-rename.md +48 -0
  396. package/skills/rabetbase/references/rabetbase-menu-sync.md +60 -0
  397. package/skills/rabetbase/references/rabetbase-notification-config-list.md +80 -0
  398. package/skills/rabetbase/references/rabetbase-ocr.md +86 -0
  399. package/skills/rabetbase/references/rabetbase-page-generate-start.md +32 -0
  400. package/skills/rabetbase/references/rabetbase-page-generate-status.md +32 -0
  401. package/skills/rabetbase/references/rabetbase-page-pull.md +47 -0
  402. package/skills/rabetbase/references/rabetbase-page-push.md +45 -0
  403. package/skills/rabetbase/references/rabetbase-page-react-create.md +29 -0
  404. package/skills/rabetbase/references/rabetbase-page-react-detail.md +26 -0
  405. package/skills/rabetbase/references/rabetbase-page-react-list.md +23 -0
  406. package/skills/rabetbase/references/rabetbase-page-react-publish.md +23 -0
  407. package/skills/rabetbase/references/rabetbase-page-react-update.md +24 -0
  408. package/skills/rabetbase/references/rabetbase-page-relation-binding.md +72 -0
  409. package/skills/rabetbase/references/rabetbase-page-restore.md +45 -0
  410. package/skills/rabetbase/references/rabetbase-page-sync.md +36 -0
  411. package/skills/rabetbase/references/rabetbase-permit-page-set.md +69 -0
  412. package/skills/rabetbase/references/rabetbase-permit-role-apis-set.md +53 -0
  413. package/skills/rabetbase/references/rabetbase-permit-role-menus-set.md +57 -0
  414. package/skills/rabetbase/references/rabetbase-project-create.md +46 -0
  415. package/skills/rabetbase/references/rabetbase-project-upgrade.md +57 -0
  416. package/skills/rabetbase/references/rabetbase-role-list.md +68 -0
  417. package/skills/rabetbase/references/rabetbase-role-user-add.md +54 -0
  418. package/skills/rabetbase/references/rabetbase-role-user-resolve.md +27 -0
  419. package/skills/rabetbase/references/rabetbase-run.md +53 -0
  420. package/skills/rabetbase/references/rabetbase-schema.md +22 -0
  421. package/skills/rabetbase/references/rabetbase-sql-create.md +41 -0
  422. package/skills/rabetbase/references/rabetbase-sql-delete.md +37 -0
  423. package/skills/rabetbase/references/rabetbase-sql-detail.md +32 -0
  424. package/skills/rabetbase/references/rabetbase-sql-exec.md +34 -0
  425. package/skills/rabetbase/references/rabetbase-sql-list.md +54 -0
  426. package/skills/rabetbase/references/rabetbase-sql-pull.md +54 -0
  427. package/skills/rabetbase/references/rabetbase-sql-push.md +46 -0
  428. package/skills/rabetbase/references/rabetbase-sql-status.md +39 -0
  429. package/skills/rabetbase/references/rabetbase-sql-validate.md +73 -0
  430. package/skills/rabetbase/references/rabetbase-standard-page-status.md +31 -0
  431. package/skills/rabetbase/references/rabetbase-task-status.md +40 -0
  432. package/skills/rabetbase/references/rabetbase-tenant-members-list.md +69 -0
  433. package/skills/rabetbase/references/rabetbase-update.md +56 -0
  434. package/skills/rabetbase/references/rabetbase-user-account.md +45 -0
  435. package/skills/rabetbase/references/rabetbase-workspace.md +60 -0
  436. package/skills/rabetbase.manifest.json +137 -0
@@ -1 +1 @@
1
- const a151_0x714ad8=a151_0xcb0b;(function(_0x2e16c7,_0x5eb52c){const _0x50ce35=a151_0xcb0b,_0x42d508=_0x2e16c7();while(!![]){try{const _0x366723=-parseInt(_0x50ce35(0x21f))/0x1*(-parseInt(_0x50ce35(0x223))/0x2)+-parseInt(_0x50ce35(0x211))/0x3*(parseInt(_0x50ce35(0x1eb))/0x4)+-parseInt(_0x50ce35(0x228))/0x5+parseInt(_0x50ce35(0x1ee))/0x6+-parseInt(_0x50ce35(0x1f5))/0x7*(-parseInt(_0x50ce35(0x1df))/0x8)+parseInt(_0x50ce35(0x1fb))/0x9+-parseInt(_0x50ce35(0x20a))/0xa;if(_0x366723===_0x5eb52c)break;else _0x42d508['push'](_0x42d508['shift']());}catch(_0x34bef9){_0x42d508['push'](_0x42d508['shift']());}}}(a151_0x3712,0x4c274));import{listPermitRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const MENU_ID_FLAG={'name':a151_0x714ad8(0x1f2),'type':a151_0x714ad8(0x210),'required':!![],'description':'Menu\x20id\x20(from\x20`menu\x20list`)'};function a151_0xcb0b(_0x5f4670,_0x1a1a85){_0x5f4670=_0x5f4670-0x1de;const _0x37127e=a151_0x3712();let _0xcb0b63=_0x37127e[_0x5f4670];return _0xcb0b63;}export const ROLE_REF_FLAG={'name':a151_0x714ad8(0x1ed),'type':a151_0x714ad8(0x22f),'required':!![],'description':a151_0x714ad8(0x217)};export const GRANT_FLAG={'name':a151_0x714ad8(0x21a),'type':a151_0x714ad8(0x1e6),'required':![],'description':a151_0x714ad8(0x1f3)};export const REVOKE_FLAG={'name':a151_0x714ad8(0x206),'type':a151_0x714ad8(0x1e6),'required':![],'description':'Revoke\x20access\x20to\x20the\x20listed\x20resources'};export const MENUS_FLAG={'name':a151_0x714ad8(0x22c),'type':a151_0x714ad8(0x22f),'required':!![],'description':a151_0x714ad8(0x22a)};export const DATASETS_FLAG={'name':a151_0x714ad8(0x202),'type':a151_0x714ad8(0x22f),'required':!![],'description':a151_0x714ad8(0x233)};export const PAGE_SLOT_SPECS=[{'flag':a151_0x714ad8(0x1ec),'key':a151_0x714ad8(0x1f6),'allowSelf':![],'label':a151_0x714ad8(0x212)},{'flag':'create-roles','key':a151_0x714ad8(0x1e7),'allowSelf':![],'label':a151_0x714ad8(0x203)},{'flag':a151_0x714ad8(0x227),'key':a151_0x714ad8(0x1e0),'allowSelf':![],'label':a151_0x714ad8(0x1fe)},{'flag':a151_0x714ad8(0x214),'key':'dataDelete','allowSelf':![],'label':a151_0x714ad8(0x1e8)},{'flag':a151_0x714ad8(0x208),'key':a151_0x714ad8(0x1f7),'allowSelf':![],'label':a151_0x714ad8(0x219)},{'flag':'export-roles','key':a151_0x714ad8(0x22d),'allowSelf':![],'label':'data\x20export'},{'flag':a151_0x714ad8(0x21b),'key':a151_0x714ad8(0x232),'allowSelf':!![],'label':a151_0x714ad8(0x200)}];function a151_0x3712(){const _0x37d56f=['row-roles','test','SELF\x20(row-level)\x20applies\x20only\x20to\x20--row-roles.','resourceName','303775JmEiAJ','resourceCode','some','pageNodeList','2GFNYcx','Pass\x20--role\x20<id|name>.','allowSelf','\x22\x20is\x20ambiguous\x20(ids:\x20','update-roles','1596815xJdece','access','Comma-separated\x20menu\x20resourceCodes\x20to\x20grant/revoke','\x20(comma-separated\x20SELF/ALL/id/name)','menus','dataExport','length','string','SELF','Run\x20`role\x20list`.','dataPermit','Comma-separated\x20datasetCodes\x20to\x20revoke\x20API\x20access\x20for','set','get','validation','1662448Waxhim','dataUpdate','Pass\x20exactly\x20one\x20of\x20--grant\x20/\x20--revoke.','push','SELF\x20is\x20not\x20allowed\x20for\x20','Roles\x20for\x20','datasetCode','boolean','dataCreate','data\x20delete','roleType','join','348QYUnhx','menu-roles','role','243582JUhGYi','rolePermit','\x20not\x20found.','--grant\x20and\x20--revoke\x20are\x20mutually\x20exclusive.','menu-id','Grant\x20access\x20to\x20the\x20listed\x20resources','map','14lkswDK','menuPermit','dataDetail','appCode','bool','split','4654035FdLyJh','roleName','find','data\x20update','Run\x20`role\x20list`,\x20or\x20use\x20SELF/ALL/<id>.','row\x20visibility','filter','datasets','data\x20create','menuId','Role\x20\x22','revoke',';\x20SELF\x20=\x20only\x20own\x20rows','detail-roles','key','4023860PmSJgK','\x22\x20not\x20found.','flagMissing','action','apiList','Disambiguate\x20with\x20an\x20id.','number','8394zeenxO','menu\x20visibility','trim','delete-roles','Special\x20role\x20','Missing\x20action.','Role\x20id\x20or\x20role\x20name','\x20is\x20not\x20available\x20for\x20this\x20app.','data\x20detail','grant'];a151_0x3712=function(){return _0x37d56f;};return a151_0x3712();}export const PAGE_SET_ROLE_FLAGS=PAGE_SLOT_SPECS['map'](_0x2fb7ee=>({'name':_0x2fb7ee['flag'],'type':'string','required':![],'description':a151_0x714ad8(0x1e4)+_0x2fb7ee['label']+a151_0x714ad8(0x22b)+(_0x2fb7ee[a151_0x714ad8(0x225)]?a151_0x714ad8(0x207):'')}));export function splitList(_0x124d05){const _0x1f7290=a151_0x714ad8;return _0x124d05[_0x1f7290(0x1fa)](',')[_0x1f7290(0x1f4)](_0x4bef1c=>_0x4bef1c[_0x1f7290(0x213)]())[_0x1f7290(0x201)](Boolean);}export function projectRoleRef(_0x467d4e){const _0x4cb582=a151_0x714ad8;return{'id':_0x467d4e['id'],'roleName':_0x467d4e[_0x4cb582(0x1fc)],'roleType':_0x467d4e[_0x4cb582(0x1e9)]};}export async function resolvePermitRoles(_0x216164,_0x27e108,_0x29ecc2){const _0x49f7c9=a151_0x714ad8,_0x146085=await listPermitRoles(_0x216164,{'needSelf':!![],'needPublic':!![]}),_0x5b9e02=[];for(const _0x3742dd of _0x27e108){const _0x36510b=resolveOnePermitRole(_0x146085,_0x3742dd);if(!_0x29ecc2[_0x49f7c9(0x225)]&&_0x36510b[_0x49f7c9(0x1e9)]==='SELF')throw CliErrors[_0x49f7c9(0x1de)](_0x49f7c9(0x1e3)+_0x29ecc2['label']+'.',_0x49f7c9(0x21d));if(!_0x5b9e02[_0x49f7c9(0x221)](_0x1ffbbb=>_0x1ffbbb['id']===_0x36510b['id']))_0x5b9e02[_0x49f7c9(0x1e2)](_0x36510b);}return _0x5b9e02;}function resolveOnePermitRole(_0x155190,_0x5c766e){const _0x269aff=a151_0x714ad8,_0x5d8d59=_0x5c766e[_0x269aff(0x213)](),_0x352bbd=_0x5d8d59['toUpperCase']();if(_0x352bbd===_0x269aff(0x230)||_0x352bbd==='ALL'){const _0x3c8d1e=_0x155190[_0x269aff(0x1fd)](_0x4c3868=>_0x4c3868['roleType']===_0x352bbd);if(!_0x3c8d1e)throw CliErrors[_0x269aff(0x1de)](_0x269aff(0x215)+_0x352bbd+_0x269aff(0x218));return _0x3c8d1e;}if(/^-?\d+$/[_0x269aff(0x21c)](_0x5d8d59)){const _0x1d9f77=Number(_0x5d8d59),_0x2bde85=_0x155190[_0x269aff(0x1fd)](_0x2811d3=>_0x2811d3['id']===_0x1d9f77);if(!_0x2bde85)throw CliErrors[_0x269aff(0x1de)]('Role\x20id\x20'+_0x1d9f77+_0x269aff(0x1f0),_0x269aff(0x231));return _0x2bde85;}const _0x323ae2=_0x155190[_0x269aff(0x201)](_0x253988=>_0x253988[_0x269aff(0x1fc)]===_0x5d8d59);if(_0x323ae2[_0x269aff(0x22e)]===0x0)throw CliErrors[_0x269aff(0x1de)](_0x269aff(0x205)+_0x5d8d59+_0x269aff(0x20b),_0x269aff(0x1ff));if(_0x323ae2[_0x269aff(0x22e)]>0x1)throw CliErrors[_0x269aff(0x1de)]('Role\x20\x22'+_0x5d8d59+_0x269aff(0x226)+_0x323ae2[_0x269aff(0x1f4)](_0x3c4890=>_0x3c4890['id'])[_0x269aff(0x1ea)](',\x20')+').',_0x269aff(0x20f));return _0x323ae2[0x0];}export function projectPageSlot(_0x949396){const _0x2f1a9e=a151_0x714ad8;if(!_0x949396)return null;return{'resourceCode':_0x949396['resourceCode'],'roles':(_0x949396[_0x2f1a9e(0x1ef)]??[])[_0x2f1a9e(0x1f4)](projectRoleRef)};}export function projectPagePermit(_0x33a593){const _0x51f581=a151_0x714ad8,_0x4135b4={'menuId':_0x33a593[_0x51f581(0x204)],'appCode':_0x33a593[_0x51f581(0x1f8)],'menuPermit':projectPageSlot(_0x33a593[_0x51f581(0x1f6)])};for(const _0x2eb9e9 of PAGE_SLOT_SPECS){if(_0x2eb9e9['key']==='menuPermit')continue;_0x4135b4[_0x2eb9e9[_0x51f581(0x209)]]=projectPageSlot(_0x33a593[_0x2eb9e9['key']]);}return _0x4135b4;}export function flattenMenuResources(_0x1e2c81){const _0x2c07c8=new Map(),_0xc36a7b=_0x409a0b=>{const _0x5dd923=a151_0xcb0b;for(const _0x3d65e9 of _0x409a0b??[]){_0x2c07c8['set'](_0x3d65e9[_0x5dd923(0x220)],{'resourceCode':_0x3d65e9['resourceCode'],'resourceName':_0x3d65e9[_0x5dd923(0x21e)],'action':_0x3d65e9['allowedActions']?.[0x0]??'0'});if(_0x3d65e9[_0x5dd923(0x222)])_0xc36a7b(_0x3d65e9['pageNodeList']);}};return _0xc36a7b(_0x1e2c81),_0x2c07c8;}export function flattenApiResources(_0x58df56){const _0x1afb58=a151_0x714ad8,_0x59eff5=new Map(),_0x2a1c15=new Map();for(const _0x192fc0 of _0x58df56){const _0x5976a2=_0x192fc0[_0x1afb58(0x20e)]??{};for(const [_0x385b32,_0xca3abe]of Object['entries'](_0x5976a2)){_0x59eff5[_0x1afb58(0x234)](_0x385b32,{'resourceCode':_0x385b32,'resourceName':_0x192fc0['resourceName'],'datasetCode':_0x192fc0[_0x1afb58(0x1e5)],'action':_0xca3abe?.[0x0]??'0'});const _0x449b1c=_0x2a1c15[_0x1afb58(0x235)](_0x192fc0['datasetCode'])??[];_0x449b1c['push'](_0x385b32),_0x2a1c15[_0x1afb58(0x234)](_0x192fc0[_0x1afb58(0x1e5)],_0x449b1c);}}return{'byCode':_0x59eff5,'byDataset':_0x2a1c15};}export function buildPermits(_0x4ab411,_0x570867){const _0x360bd2=a151_0x714ad8,_0x37df4a={};for(const [_0x4bd36d,_0x107e04]of _0x4ab411){const _0x4017e3=_0x570867[_0x360bd2(0x235)](_0x4bd36d)??_0x107e04[_0x360bd2(0x20d)];_0x37df4a[_0x4bd36d]=[_0x4017e3];}return _0x37df4a;}export function readRoleRef(_0x23f88c){const _0x29d4a2=a151_0x714ad8,_0x4bafe6=_0x23f88c['str'](_0x29d4a2(0x1ed))[_0x29d4a2(0x213)]();if(!_0x4bafe6)throw CliErrors[_0x29d4a2(0x20c)](_0x29d4a2(0x1ed),_0x29d4a2(0x224));return _0x4bafe6;}export function readGrantRevoke(_0x3be3ac){const _0x2a5b5b=a151_0x714ad8,_0x21022b=_0x3be3ac[_0x2a5b5b(0x1f9)](_0x2a5b5b(0x21a)),_0x5e16c1=_0x3be3ac[_0x2a5b5b(0x1f9)](_0x2a5b5b(0x206));if(_0x21022b&&_0x5e16c1)throw CliErrors[_0x2a5b5b(0x1de)](_0x2a5b5b(0x1f1));if(!_0x21022b&&!_0x5e16c1)throw CliErrors[_0x2a5b5b(0x1de)](_0x2a5b5b(0x216),_0x2a5b5b(0x1e1));return _0x21022b?_0x2a5b5b(0x229):'0';}
1
+ const a159_0x2882cc=a159_0x511c;(function(_0x5759ca,_0x52ca1b){const _0x4c2137=a159_0x511c,_0x5d7f67=_0x5759ca();while(!![]){try{const _0x4a8f0d=parseInt(_0x4c2137(0xa9))/0x1+-parseInt(_0x4c2137(0xd4))/0x2+parseInt(_0x4c2137(0xa7))/0x3+parseInt(_0x4c2137(0xa1))/0x4*(-parseInt(_0x4c2137(0xc3))/0x5)+parseInt(_0x4c2137(0xb2))/0x6+parseInt(_0x4c2137(0xbd))/0x7+-parseInt(_0x4c2137(0x99))/0x8*(-parseInt(_0x4c2137(0xad))/0x9);if(_0x4a8f0d===_0x52ca1b)break;else _0x5d7f67['push'](_0x5d7f67['shift']());}catch(_0xe9bac6){_0x5d7f67['push'](_0x5d7f67['shift']());}}}(a159_0x2e88,0x66126));import{listPermitRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const MENU_ID_FLAG={'name':a159_0x2882cc(0xa6),'type':a159_0x2882cc(0xd3),'required':!![],'description':a159_0x2882cc(0xbc)};export const ROLE_REF_FLAG={'name':'role','type':'string','required':!![],'description':a159_0x2882cc(0xae)};export const GRANT_FLAG={'name':a159_0x2882cc(0xdf),'type':a159_0x2882cc(0xb7),'required':![],'description':a159_0x2882cc(0xb8)};export const REVOKE_FLAG={'name':'revoke','type':a159_0x2882cc(0xb7),'required':![],'description':'Revoke\x20access\x20to\x20the\x20listed\x20resources'};function a159_0x2e88(){const _0x2d1a75=['length','roleType','label','access','dataExport','dataPermit','dataDelete','Pass\x20exactly\x20one\x20of\x20--grant\x20/\x20--revoke.','menuPermit','Disambiguate\x20with\x20an\x20id.','row-roles','validation','join','SELF\x20(row-level)\x20applies\x20only\x20to\x20--row-roles.','find','number','637176FHoVCu','map','pageNodeList','bool','allowedActions','set','rolePermit','Pass\x20--role\x20<id|name>.','menu\x20visibility','delete-roles','get','grant','filter','str','Role\x20\x22','data\x20detail','SELF\x20is\x20not\x20allowed\x20for\x20','\x22\x20not\x20found.','263288tvKWse','\x20is\x20not\x20available\x20for\x20this\x20app.','export-roles','allowSelf','test','datasets','push','dataCreate','1619240PXNzlC','role','Roles\x20for\x20','trim','resourceName','menu-id','1375446zcwDGc','Missing\x20action.','76240brWhVo','create-roles','entries','string','36AgxLWO','Role\x20id\x20or\x20role\x20name','Comma-separated\x20menu\x20resourceCodes\x20to\x20grant/revoke','data\x20create','data\x20export','4726164ljvlQM','Role\x20id\x20','--grant\x20and\x20--revoke\x20are\x20mutually\x20exclusive.','appCode','dataDetail','boolean','Grant\x20access\x20to\x20the\x20listed\x20resources','action','flagMissing','toUpperCase','Menu\x20id\x20(from\x20`menu\x20list`)','645638SfOsGZ','menu-roles','resourceCode','split','key',';\x20SELF\x20=\x20only\x20own\x20rows','10kkfnql'];a159_0x2e88=function(){return _0x2d1a75;};return a159_0x2e88();}export const MENUS_FLAG={'name':'menus','type':a159_0x2882cc(0xac),'required':!![],'description':a159_0x2882cc(0xaf)};export const DATASETS_FLAG={'name':a159_0x2882cc(0x9e),'type':'string','required':!![],'description':'Comma-separated\x20datasetCodes\x20to\x20revoke\x20API\x20access\x20for'};export const PAGE_SLOT_SPECS=[{'flag':a159_0x2882cc(0xbe),'key':a159_0x2882cc(0xcc),'allowSelf':![],'label':a159_0x2882cc(0xdc)},{'flag':a159_0x2882cc(0xaa),'key':a159_0x2882cc(0xa0),'allowSelf':![],'label':a159_0x2882cc(0xb0)},{'flag':'update-roles','key':'dataUpdate','allowSelf':![],'label':'data\x20update'},{'flag':a159_0x2882cc(0xdd),'key':a159_0x2882cc(0xca),'allowSelf':![],'label':'data\x20delete'},{'flag':'detail-roles','key':a159_0x2882cc(0xb6),'allowSelf':![],'label':a159_0x2882cc(0xe3)},{'flag':a159_0x2882cc(0x9b),'key':a159_0x2882cc(0xc8),'allowSelf':![],'label':a159_0x2882cc(0xb1)},{'flag':a159_0x2882cc(0xce),'key':a159_0x2882cc(0xc9),'allowSelf':!![],'label':'row\x20visibility'}];function a159_0x511c(_0x2b7774,_0x1a04cc){_0x2b7774=_0x2b7774-0x98;const _0x2e880d=a159_0x2e88();let _0x511c42=_0x2e880d[_0x2b7774];return _0x511c42;}export const PAGE_SET_ROLE_FLAGS=PAGE_SLOT_SPECS[a159_0x2882cc(0xd5)](_0x29b36d=>({'name':_0x29b36d['flag'],'type':'string','required':![],'description':a159_0x2882cc(0xa3)+_0x29b36d[a159_0x2882cc(0xc6)]+'\x20(comma-separated\x20SELF/ALL/id/name)'+(_0x29b36d[a159_0x2882cc(0x9c)]?a159_0x2882cc(0xc2):'')}));export function splitList(_0x3c9b69){const _0x8e5e09=a159_0x2882cc;return _0x3c9b69[_0x8e5e09(0xc0)](',')[_0x8e5e09(0xd5)](_0x48dec6=>_0x48dec6[_0x8e5e09(0xa4)]())['filter'](Boolean);}export function projectRoleRef(_0x1669a7){const _0x381b40=a159_0x2882cc;return{'id':_0x1669a7['id'],'roleName':_0x1669a7['roleName'],'roleType':_0x1669a7[_0x381b40(0xc5)]};}export async function resolvePermitRoles(_0x1281e1,_0x54a291,_0xefc30c){const _0x2f2325=a159_0x2882cc,_0x969072=await listPermitRoles(_0x1281e1,{'needSelf':!![],'needPublic':!![]}),_0x208b3c=[];for(const _0x76ded9 of _0x54a291){const _0x42150b=resolveOnePermitRole(_0x969072,_0x76ded9);if(!_0xefc30c[_0x2f2325(0x9c)]&&_0x42150b[_0x2f2325(0xc5)]==='SELF')throw CliErrors[_0x2f2325(0xcf)](_0x2f2325(0xe4)+_0xefc30c[_0x2f2325(0xc6)]+'.',_0x2f2325(0xd1));if(!_0x208b3c['some'](_0x14e45b=>_0x14e45b['id']===_0x42150b['id']))_0x208b3c[_0x2f2325(0x9f)](_0x42150b);}return _0x208b3c;}function resolveOnePermitRole(_0x425259,_0x4ff025){const _0x1cf5e3=a159_0x2882cc,_0x20068d=_0x4ff025['trim'](),_0x190374=_0x20068d[_0x1cf5e3(0xbb)]();if(_0x190374==='SELF'||_0x190374==='ALL'){const _0x27cf33=_0x425259[_0x1cf5e3(0xd2)](_0x1211e1=>_0x1211e1[_0x1cf5e3(0xc5)]===_0x190374);if(!_0x27cf33)throw CliErrors['validation']('Special\x20role\x20'+_0x190374+_0x1cf5e3(0x9a));return _0x27cf33;}if(/^-?\d+$/[_0x1cf5e3(0x9d)](_0x20068d)){const _0x52d495=Number(_0x20068d),_0x1d9588=_0x425259[_0x1cf5e3(0xd2)](_0x2927c7=>_0x2927c7['id']===_0x52d495);if(!_0x1d9588)throw CliErrors[_0x1cf5e3(0xcf)](_0x1cf5e3(0xb3)+_0x52d495+'\x20not\x20found.','Run\x20`role\x20list`.');return _0x1d9588;}const _0x2e6a5b=_0x425259[_0x1cf5e3(0xe0)](_0x4443c8=>_0x4443c8['roleName']===_0x20068d);if(_0x2e6a5b[_0x1cf5e3(0xc4)]===0x0)throw CliErrors[_0x1cf5e3(0xcf)](_0x1cf5e3(0xe2)+_0x20068d+_0x1cf5e3(0x98),'Run\x20`role\x20list`,\x20or\x20use\x20SELF/ALL/<id>.');if(_0x2e6a5b[_0x1cf5e3(0xc4)]>0x1)throw CliErrors[_0x1cf5e3(0xcf)](_0x1cf5e3(0xe2)+_0x20068d+'\x22\x20is\x20ambiguous\x20(ids:\x20'+_0x2e6a5b[_0x1cf5e3(0xd5)](_0x1629aa=>_0x1629aa['id'])[_0x1cf5e3(0xd0)](',\x20')+').',_0x1cf5e3(0xcd));return _0x2e6a5b[0x0];}export function projectPageSlot(_0x2daccf){const _0x12ac0e=a159_0x2882cc;if(!_0x2daccf)return null;return{'resourceCode':_0x2daccf[_0x12ac0e(0xbf)],'roles':(_0x2daccf[_0x12ac0e(0xda)]??[])[_0x12ac0e(0xd5)](projectRoleRef)};}export function projectPagePermit(_0x1db755){const _0x3521b6=a159_0x2882cc,_0x1be523={'menuId':_0x1db755['menuId'],'appCode':_0x1db755[_0x3521b6(0xb5)],'menuPermit':projectPageSlot(_0x1db755[_0x3521b6(0xcc)])};for(const _0xf50a71 of PAGE_SLOT_SPECS){if(_0xf50a71[_0x3521b6(0xc1)]===_0x3521b6(0xcc))continue;_0x1be523[_0xf50a71[_0x3521b6(0xc1)]]=projectPageSlot(_0x1db755[_0xf50a71[_0x3521b6(0xc1)]]);}return _0x1be523;}export function flattenMenuResources(_0x3a9bc9){const _0x295d57=new Map(),_0x191697=_0xe7d05a=>{const _0x305322=a159_0x511c;for(const _0x2f2594 of _0xe7d05a??[]){_0x295d57[_0x305322(0xd9)](_0x2f2594[_0x305322(0xbf)],{'resourceCode':_0x2f2594[_0x305322(0xbf)],'resourceName':_0x2f2594[_0x305322(0xa5)],'action':_0x2f2594[_0x305322(0xd8)]?.[0x0]??'0'});if(_0x2f2594['pageNodeList'])_0x191697(_0x2f2594[_0x305322(0xd6)]);}};return _0x191697(_0x3a9bc9),_0x295d57;}export function flattenApiResources(_0xc5d8b6){const _0x194b5e=a159_0x2882cc,_0x830f39=new Map(),_0x3d12ab=new Map();for(const _0x52e792 of _0xc5d8b6){const _0x5862a4=_0x52e792['apiList']??{};for(const [_0xe5afe,_0x50ebd1]of Object[_0x194b5e(0xab)](_0x5862a4)){_0x830f39[_0x194b5e(0xd9)](_0xe5afe,{'resourceCode':_0xe5afe,'resourceName':_0x52e792[_0x194b5e(0xa5)],'datasetCode':_0x52e792['datasetCode'],'action':_0x50ebd1?.[0x0]??'0'});const _0x4e4450=_0x3d12ab[_0x194b5e(0xde)](_0x52e792['datasetCode'])??[];_0x4e4450[_0x194b5e(0x9f)](_0xe5afe),_0x3d12ab[_0x194b5e(0xd9)](_0x52e792['datasetCode'],_0x4e4450);}}return{'byCode':_0x830f39,'byDataset':_0x3d12ab};}export function buildPermits(_0x455584,_0x4a4def){const _0x12233a=a159_0x2882cc,_0x59f196={};for(const [_0x395a11,_0x47af2f]of _0x455584){const _0x476f9c=_0x4a4def[_0x12233a(0xde)](_0x395a11)??_0x47af2f[_0x12233a(0xb9)];_0x59f196[_0x395a11]=[_0x476f9c];}return _0x59f196;}export function readRoleRef(_0x2823f3){const _0x997a88=a159_0x2882cc,_0x23ae27=_0x2823f3[_0x997a88(0xe1)](_0x997a88(0xa2))[_0x997a88(0xa4)]();if(!_0x23ae27)throw CliErrors[_0x997a88(0xba)]('role',_0x997a88(0xdb));return _0x23ae27;}export function readGrantRevoke(_0x280044){const _0x3eea50=a159_0x2882cc,_0x480eee=_0x280044[_0x3eea50(0xd7)](_0x3eea50(0xdf)),_0x22110a=_0x280044[_0x3eea50(0xd7)]('revoke');if(_0x480eee&&_0x22110a)throw CliErrors[_0x3eea50(0xcf)](_0x3eea50(0xb4));if(!_0x480eee&&!_0x22110a)throw CliErrors[_0x3eea50(0xcf)](_0x3eea50(0xa8),_0x3eea50(0xcb));return _0x480eee?_0x3eea50(0xc7):'0';}
@@ -1 +1 @@
1
- (function(_0x2193a7,_0x11afb4){const _0x276113=a152_0x66bc,_0xa82ab1=_0x2193a7();while(!![]){try{const _0x10c657=parseInt(_0x276113(0x128))/0x1+-parseInt(_0x276113(0x115))/0x2*(-parseInt(_0x276113(0x116))/0x3)+parseInt(_0x276113(0x11e))/0x4*(parseInt(_0x276113(0x12e))/0x5)+-parseInt(_0x276113(0x118))/0x6+-parseInt(_0x276113(0x123))/0x7*(-parseInt(_0x276113(0x120))/0x8)+-parseInt(_0x276113(0x113))/0x9*(parseInt(_0x276113(0x131))/0xa)+parseInt(_0x276113(0x121))/0xb*(parseInt(_0x276113(0x124))/0xc);if(_0x10c657===_0x11afb4)break;else _0xa82ab1['push'](_0xa82ab1['shift']());}catch(_0x14bbb0){_0xa82ab1['push'](_0xa82ab1['shift']());}}}(a152_0x2770,0x469d4));import{existsSync}from'node:fs';import a152_0x289b26 from'node:path';function a152_0x66bc(_0x3d5e76,_0x275a22){_0x3d5e76=_0x3d5e76-0x113;const _0x277065=a152_0x2770();let _0x66bcfa=_0x277065[_0x3d5e76];return _0x66bcfa;}function a152_0x2770(){const _0x5b9e44=['log','500LlFYNJ','100089XKRvLH','env','914882XsIkCr','3XkKTDa','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','2682738oRibmN','trim','√\x20App\x20Code:\x20','green','Project\x20name:','Skipped','4TDzPzy','cwd','86696PIuThc','11chUCns','resolve','14PrPBcD','1713468gaMrir','test','string','Logged\x20in','530213mYfRkk','√\x20Project\x20Name:\x20','Project\x20name\x20cannot\x20exceed\x2050\x20characters','my-app','√\x20Login\x20status:\x20','production','701460ZENElg','cyan'];a152_0x2770=function(){return _0x5b9e44;};return a152_0x2770();}import a152_0x138336 from'chalk';import{input,confirm}from'@inquirer/prompts';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(_0x248f1a,_0x17902e,_0x3c0b80){const _0xd1fcae=a152_0x66bc,_0x765a1e=_0xd1fcae(0x12b),_0xf063fe=readConfig(),_0x5b064d=typeof _0xf063fe['env']===_0xd1fcae(0x126)?_0xf063fe[_0xd1fcae(0x114)]:undefined,_0x152a3d=await input({'message':_0xd1fcae(0x11c),'default':_0x765a1e,'validate':_0x3b984f=>{const _0x3e86dd=_0xd1fcae,_0x43e5ed=_0x3b984f[_0x3e86dd(0x119)]()||_0x765a1e;if(_0x43e5ed['length']>0x32)return _0x3e86dd(0x12a);const _0x417401=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(_0x43e5ed&&!_0x417401[_0x3e86dd(0x125)](_0x43e5ed))return'Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_';const _0xb6967b=a152_0x289b26[_0x3e86dd(0x122)](process[_0x3e86dd(0x11f)](),_0x43e5ed);if(existsSync(_0xb6967b))return'Directory\x20\x22'+_0x43e5ed+'\x22\x20already\x20exists';return!![];}});console[_0xd1fcae(0x130)](a152_0x138336[_0xd1fcae(0x11b)](_0xd1fcae(0x129)+a152_0x138336[_0xd1fcae(0x12f)](_0x152a3d)));const _0x49ff08=await selectSingleAppcode(_0x3c0b80);console[_0xd1fcae(0x130)](a152_0x138336[_0xd1fcae(0x11b)](_0xd1fcae(0x11a)+a152_0x138336[_0xd1fcae(0x12f)](_0x49ff08||'Not\x20set')));if(_0x49ff08){const _0x50a940=await getIsSessionValid();if(!_0x50a940){const _0x1ff4e7=await confirm({'message':_0xd1fcae(0x117),'default':!![]});if(_0x1ff4e7){const _0x50acc0=await authServer({'silent':!![]});console[_0xd1fcae(0x130)](a152_0x138336[_0xd1fcae(0x11b)](_0xd1fcae(0x12c)+a152_0x138336['cyan'](_0x50acc0?_0xd1fcae(0x127):'Login\x20failed')));}else console[_0xd1fcae(0x130)](a152_0x138336[_0xd1fcae(0x11b)](_0xd1fcae(0x12c)+a152_0x138336[_0xd1fcae(0x12f)](_0xd1fcae(0x11d))));}await _0x248f1a({'projectName':_0x152a3d,'appCode':_0x49ff08,'env':_0x17902e||_0x5b064d||_0xd1fcae(0x12d)});}else await _0x248f1a({'projectName':_0x152a3d,'env':_0x17902e||_0x5b064d||_0xd1fcae(0x12d)});}
1
+ (function(_0x4492c9,_0x3d49e1){const _0x4ed9a5=a160_0x4540,_0x6d551e=_0x4492c9();while(!![]){try{const _0x18cf3a=-parseInt(_0x4ed9a5(0x8d))/0x1+parseInt(_0x4ed9a5(0x91))/0x2*(parseInt(_0x4ed9a5(0x8e))/0x3)+-parseInt(_0x4ed9a5(0x99))/0x4+parseInt(_0x4ed9a5(0x95))/0x5+parseInt(_0x4ed9a5(0x93))/0x6+parseInt(_0x4ed9a5(0x98))/0x7+-parseInt(_0x4ed9a5(0x85))/0x8*(parseInt(_0x4ed9a5(0x9b))/0x9);if(_0x18cf3a===_0x3d49e1)break;else _0x6d551e['push'](_0x6d551e['shift']());}catch(_0x4b2724){_0x6d551e['push'](_0x6d551e['shift']());}}}(a160_0x82da,0x233ae));import{existsSync}from'node:fs';import a160_0x3aeb3b from'node:path';import a160_0x31a6d1 from'chalk';import{input,confirm}from'@inquirer/prompts';import{getIsSessionValid}from'../../../auth/is-session-valid.js';function a160_0x82da(){const _0x718d79=['my-app','test','2NYwgUK','Not\x20set','643608uuFAfE','Skipped','1264405HAEsYr','production','Directory\x20\x22','710717CFFRRy','191464WMNdZF','resolve','738yREjWQ','env','Project\x20name:','log','cyan','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','Logged\x20in','√\x20App\x20Code:\x20','23704mJEwzm','trim','green','Project\x20name\x20cannot\x20exceed\x2050\x20characters','√\x20Project\x20Name:\x20','√\x20Login\x20status:\x20','length','\x22\x20already\x20exists','226357sroxnj','599433uAcIzI'];a160_0x82da=function(){return _0x718d79;};return a160_0x82da();}import{authServer}from'../../../auth/auth-server.js';import{readConfig}from'../../../utils/config.js';function a160_0x4540(_0x443bec,_0x5cb2a0){_0x443bec=_0x443bec-0x7e;const _0x82da43=a160_0x82da();let _0x4540d4=_0x82da43[_0x443bec];return _0x4540d4;}import{selectSingleAppcode}from'../../../commands/common/app-selector.js';export async function guidedCreateProject(_0x54d553,_0x2b4c56,_0x4f60b1){const _0x7adcf1=a160_0x4540,_0x449a72=_0x7adcf1(0x8f),_0x2df05d=readConfig(),_0x20a1c5=typeof _0x2df05d['env']==='string'?_0x2df05d[_0x7adcf1(0x7e)]:undefined,_0x742eb5=await input({'message':_0x7adcf1(0x7f),'default':_0x449a72,'validate':_0x27af0a=>{const _0x3d62cf=_0x7adcf1,_0x373ecf=_0x27af0a[_0x3d62cf(0x86)]()||_0x449a72;if(_0x373ecf[_0x3d62cf(0x8b)]>0x32)return _0x3d62cf(0x88);const _0x26a6a8=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(_0x373ecf&&!_0x26a6a8[_0x3d62cf(0x90)](_0x373ecf))return'Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_';const _0x180dea=a160_0x3aeb3b[_0x3d62cf(0x9a)](process['cwd'](),_0x373ecf);if(existsSync(_0x180dea))return _0x3d62cf(0x97)+_0x373ecf+_0x3d62cf(0x8c);return!![];}});console[_0x7adcf1(0x80)](a160_0x31a6d1[_0x7adcf1(0x87)](_0x7adcf1(0x89)+a160_0x31a6d1[_0x7adcf1(0x81)](_0x742eb5)));const _0x5d48a4=await selectSingleAppcode(_0x4f60b1);console['log'](a160_0x31a6d1[_0x7adcf1(0x87)](_0x7adcf1(0x84)+a160_0x31a6d1[_0x7adcf1(0x81)](_0x5d48a4||_0x7adcf1(0x92))));if(_0x5d48a4){const _0x2e58c4=await getIsSessionValid();if(!_0x2e58c4){const _0x1f5588=await confirm({'message':_0x7adcf1(0x82),'default':!![]});if(_0x1f5588){const _0x1e5f31=await authServer({'silent':!![]});console[_0x7adcf1(0x80)](a160_0x31a6d1[_0x7adcf1(0x87)](_0x7adcf1(0x8a)+a160_0x31a6d1[_0x7adcf1(0x81)](_0x1e5f31?_0x7adcf1(0x83):'Login\x20failed')));}else console[_0x7adcf1(0x80)](a160_0x31a6d1[_0x7adcf1(0x87)](_0x7adcf1(0x8a)+a160_0x31a6d1[_0x7adcf1(0x81)](_0x7adcf1(0x94))));}await _0x54d553({'projectName':_0x742eb5,'appCode':_0x5d48a4,'env':_0x2b4c56||_0x20a1c5||_0x7adcf1(0x96)});}else await _0x54d553({'projectName':_0x742eb5,'env':_0x2b4c56||_0x20a1c5||_0x7adcf1(0x96)});}
@@ -1 +1 @@
1
- function a153_0xd5ba(){const _0x4fd61f=['26248gHnVKJ','14KOyHPh','5872869qiFKIF','169456IwZhdP','24446510YGbyDg','replace','6741828LOlznO','8MxFNHn','2842580OmkWXY','1662535WiuJsy','408hmsTDJ'];a153_0xd5ba=function(){return _0x4fd61f;};return a153_0xd5ba();}function a153_0x2d99(_0x4ac479,_0x297de1){_0x4ac479=_0x4ac479-0x1d2;const _0xd5ba0f=a153_0xd5ba();let _0x2d99de=_0xd5ba0f[_0x4ac479];return _0x2d99de;}(function(_0x34bd8a,_0x318d52){const _0x1f71f8=a153_0x2d99,_0x2fa08f=_0x34bd8a();while(!![]){try{const _0xea9608=-parseInt(_0x1f71f8(0x1d6))/0x1*(-parseInt(_0x1f71f8(0x1d8))/0x2)+parseInt(_0x1f71f8(0x1d4))/0x3*(parseInt(_0x1f71f8(0x1d5))/0x4)+-parseInt(_0x1f71f8(0x1d2))/0x5+parseInt(_0x1f71f8(0x1db))/0x6+-parseInt(_0x1f71f8(0x1d3))/0x7*(parseInt(_0x1f71f8(0x1dc))/0x8)+parseInt(_0x1f71f8(0x1d7))/0x9+-parseInt(_0x1f71f8(0x1d9))/0xa;if(_0xea9608===_0x318d52)break;else _0x2fa08f['push'](_0x2fa08f['shift']());}catch(_0xad7d2a){_0x2fa08f['push'](_0x2fa08f['shift']());}}}(a153_0xd5ba,0x937e3));export function formatElapsed(_0x261257){const _0x1f4742=a153_0x2d99,_0x2095b4=Date['now']()-_0x261257;if(_0x2095b4<0x3e8)return _0x2095b4+'ms';const _0x57767b=(_0x2095b4/0x3e8)['toFixed'](0x2),_0x1e7c9c=_0x57767b[_0x1f4742(0x1da)](/\.?0+$/u,'');return _0x1e7c9c+'s';}
1
+ function a161_0x4a69(){const _0x4e6cdf=['140tmuGtd','12701223KlrUYh','toFixed','248796orkCSv','133jBnlkc','now','11352416XjtyWu','47802sirYKs','1165010KrpSYN','3315385tlhKMI','replace','20ggDOyt','856506oUpqLK'];a161_0x4a69=function(){return _0x4e6cdf;};return a161_0x4a69();}function a161_0x224a(_0x13288b,_0x28833f){_0x13288b=_0x13288b-0x16d;const _0x4a69bb=a161_0x4a69();let _0x224a19=_0x4a69bb[_0x13288b];return _0x224a19;}(function(_0x522321,_0x3e6109){const _0x35253c=a161_0x224a,_0x4264a2=_0x522321();while(!![]){try{const _0x4d05a4=-parseInt(_0x35253c(0x175))/0x1+-parseInt(_0x35253c(0x171))/0x2+parseInt(_0x35253c(0x170))/0x3*(-parseInt(_0x35253c(0x176))/0x4)+-parseInt(_0x35253c(0x172))/0x5+-parseInt(_0x35253c(0x179))/0x6*(parseInt(_0x35253c(0x16d))/0x7)+parseInt(_0x35253c(0x16f))/0x8+-parseInt(_0x35253c(0x177))/0x9*(-parseInt(_0x35253c(0x174))/0xa);if(_0x4d05a4===_0x3e6109)break;else _0x4264a2['push'](_0x4264a2['shift']());}catch(_0x5cd9d6){_0x4264a2['push'](_0x4264a2['shift']());}}}(a161_0x4a69,0xc1d3a));export function formatElapsed(_0x1b4962){const _0xf87a44=a161_0x224a,_0x3a55fb=Date[_0xf87a44(0x16e)]()-_0x1b4962;if(_0x3a55fb<0x3e8)return _0x3a55fb+'ms';const _0x245a81=(_0x3a55fb/0x3e8)[_0xf87a44(0x178)](0x2),_0x5be0e9=_0x245a81[_0xf87a44(0x173)](/\.?0+$/u,'');return _0x5be0e9+'s';}
@@ -1 +1 @@
1
- (function(_0x489807,_0x8ade53){const _0x9f8fa5=a154_0x31f7,_0x324de0=_0x489807();while(!![]){try{const _0x3ca3f6=parseInt(_0x9f8fa5(0x10a))/0x1+-parseInt(_0x9f8fa5(0xf5))/0x2+-parseInt(_0x9f8fa5(0x111))/0x3*(parseInt(_0x9f8fa5(0x10b))/0x4)+parseInt(_0x9f8fa5(0xe2))/0x5*(-parseInt(_0x9f8fa5(0xea))/0x6)+-parseInt(_0x9f8fa5(0x11b))/0x7+-parseInt(_0x9f8fa5(0x108))/0x8+parseInt(_0x9f8fa5(0xd4))/0x9;if(_0x3ca3f6===_0x8ade53)break;else _0x324de0['push'](_0x324de0['shift']());}catch(_0x41da1d){_0x324de0['push'](_0x324de0['shift']());}}}(a154_0x5333,0x79eb3));import a154_0x1c4608 from'path';import a154_0x4c40ce from'fs';import a154_0x23c5ea from'chalk';import a154_0x3e6580 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';function a154_0x31f7(_0x54d93e,_0x4b4f3a){_0x54d93e=_0x54d93e-0xc5;const _0x533362=a154_0x5333();let _0x31f731=_0x533362[_0x54d93e];return _0x31f731;}import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';function a154_0x5333(){const _0x7417c8=['stringify','repeat','\x20|\x20Default:\x20','projectCode','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','6CKcWjO','Project\x20directory\x20','Project\x20name\x20cannot\x20be\x20empty','1.0.0','cwd','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','...','配置应用AppCode失败','error','env','readFileSync','1582656qfAWYx','\x20run\x20start','\x20model(s)','writeFileSync','\x20√\x20','join','utf8','CLI\x20版本检查','*\x20Pulling\x20API\x20configuration...','toLocaleString','chdir','version','needsUpgrade','green','appCode','Install\x20dependencies','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','production','bold','645816FRJVzv','apps','522368HyDViS','201844KAfqsx','package.json','keys','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','\x20|\x20AppCode:\x20','cyan','3PZjrgy','\x20api\x20pull','API\x20配置拉取异常','\x20already\x20exists','success','log','create','项目创建完成:\x20','stop','warn','5646648kLWCNp','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','项目创建失败:\x20','dirname','更新\x20package.json\x20name','description','setLogPath','start','🚀\x20Next\x20Steps:','Format\x20code','string','message','\x20Generated\x20by\x20rabetbase\x20cli\x20','\x20dataset(s),\x20generated\x20','\x20\x202.\x20Pull\x20API\x20configuration:\x20','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','existsSync','16688340zoBlWx','modelCount','parse','projectName','更新\x20package.json\x20失败','√\x20Configuration\x20file\x20created,\x20Apps:\x20','currentVersion','\x20config\x20set\x20appcode\x20<app-code>\x27','cookie','*\x20Configuring\x20AppCode\x20for\x20project\x20','resolve','belowMinimum','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','info','740345LXxWeI','length','配置应用AppCode:\x20'];a154_0x5333=function(){return _0x7417c8;};return a154_0x5333();}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(_0xc1f49b){const _0x1a4736=a154_0x31f7,_0x4dcf6e=await checkCliVersion();(_0x4dcf6e[_0x1a4736(0x101)]||_0x4dcf6e['belowMinimum'])&&(printCliUpgradeWarning(_0x4dcf6e),assertCliVersionSupported(_0x4dcf6e),logger['info'](_0x1a4736(0x117),_0x1a4736(0xfc),{'currentVersion':_0x4dcf6e[_0x1a4736(0xda)],'stableVersion':_0x4dcf6e['stableVersion'],'minimumVersion':_0x4dcf6e['minimumVersion'],'needsUpgrade':_0x4dcf6e[_0x1a4736(0x101)],'belowMinimum':_0x4dcf6e[_0x1a4736(0xdf)]}));if(_0xc1f49b[_0x1a4736(0xe8)]&&_0xc1f49b['appCode'])await runCreate({'projectName':_0xc1f49b['projectCode'],'appCode':_0xc1f49b[_0x1a4736(0x103)],'env':_0xc1f49b[_0x1a4736(0xf3)]},_0xc1f49b);else{if(_0xc1f49b[_0x1a4736(0xe8)]){const _0x208a8c=await selectSingleAppcode(_0xc1f49b[_0x1a4736(0xdc)]);await runCreate({'projectName':_0xc1f49b['projectCode'],'appCode':_0x208a8c||undefined,'env':_0xc1f49b[_0x1a4736(0xf3)]},_0xc1f49b);}else await guidedCreateProject(_0x2f7b14=>runCreate(_0x2f7b14,_0xc1f49b),_0xc1f49b[_0x1a4736(0xf3)],_0xc1f49b[_0x1a4736(0xdc)]);}}async function runCreate(_0x1388fe,_0x1f9fe5){const _0x4cb3e0=a154_0x31f7;if(!_0x1388fe[_0x4cb3e0(0xd7)]||_0x1388fe[_0x4cb3e0(0xd7)]['trim']()==='')throw new Error(_0x4cb3e0(0xec));const _0x5d558a=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x5d558a['test'](_0x1388fe[_0x4cb3e0(0xd7)]))throw new Error(_0x4cb3e0(0xd2));if(_0x1388fe[_0x4cb3e0(0xd7)][_0x4cb3e0(0xe3)]>0x64)throw new Error(_0x4cb3e0(0xef));const _0x1e1aef=a154_0x1c4608[_0x4cb3e0(0xde)](process['cwd'](),_0x1388fe[_0x4cb3e0(0xd7)]);if(a154_0x4c40ce[_0x4cb3e0(0xd3)](_0x1e1aef))throw new Error(_0x4cb3e0(0xeb)+_0x1388fe[_0x4cb3e0(0xd7)]+_0x4cb3e0(0x114));try{a154_0x4c40ce['accessSync'](a154_0x1c4608[_0x4cb3e0(0xc6)](_0x1e1aef),a154_0x4c40ce['constants']['W_OK']);}catch{throw new Error('Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions');}logger[_0x4cb3e0(0xc9)](_0x1e1aef),logger[_0x4cb3e0(0xe1)](_0x4cb3e0(0x117),'开始创建项目:\x20'+_0x1388fe[_0x4cb3e0(0xd7)],{'projectDir':_0x1e1aef,'appCode':_0x1388fe['appCode']}),console[_0x4cb3e0(0x116)](),console['log'](a154_0x23c5ea[_0x4cb3e0(0x102)](_0x4cb3e0(0xf9))+'Project\x20name:\x20'+a154_0x23c5ea[_0x4cb3e0(0x102)](_0x1388fe[_0x4cb3e0(0xd7)])+(_0x1388fe[_0x4cb3e0(0x103)]?_0x4cb3e0(0x10f)+a154_0x23c5ea[_0x4cb3e0(0x110)](_0x1388fe['appCode']):''));try{await runTask('Copy\x20project\x20files',()=>copyProjectTemplate(_0x1388fe[_0x4cb3e0(0xd7)])),await updatePackageJsonName(_0x1388fe[_0x4cb3e0(0xd7)]),await runTask(_0x4cb3e0(0x104),()=>installDependencies(_0x1388fe['projectName'])),await runTask(_0x4cb3e0(0xcc),()=>formatProjectCode(_0x1388fe[_0x4cb3e0(0xd7)])),await configureAppCode(_0x1388fe['projectName'],_0x1388fe[_0x4cb3e0(0x103)]||'',_0x1388fe[_0x4cb3e0(0xf3)]);let _0x46870e=![];if(_0x1388fe['appCode']){console['log'](_0x4cb3e0(0xfd));const _0x4d2345=process[_0x4cb3e0(0xee)]();try{process['chdir'](_0x1e1aef);const _0x33c793=_0x1388fe[_0x4cb3e0(0xf3)]||_0x4cb3e0(0x106);initEnv(_0x33c793);const {configArray:_0x4d2235}=await fetchModelList(_0x1388fe[_0x4cb3e0(0x103)],_0x1f9fe5[_0x4cb3e0(0xdc)]||''),_0x2cc289=DEFAULT_API_DIR,_0x226ea3=await generateApiFile(_0x4d2235,'',_0x1388fe[_0x4cb3e0(0x103)],!![],_0x33c793,_0x2cc289);console[_0x4cb3e0(0x116)]('√\x20Pulled\x20'+_0x4d2235[_0x4cb3e0(0xe3)]+_0x4cb3e0(0xd0)+_0x226ea3[_0x4cb3e0(0xd5)]+_0x4cb3e0(0xf7)),logger[_0x4cb3e0(0xe1)]('create','API\x20configuration\x20pulled:\x20'+_0x1388fe[_0x4cb3e0(0x103)]);}catch(_0x2e3af4){_0x46870e=!![],console[_0x4cb3e0(0x116)](_0x4cb3e0(0xe9)),logger[_0x4cb3e0(0x11a)](_0x4cb3e0(0x117),_0x4cb3e0(0x113),{'error':_0x2e3af4 instanceof Error?_0x2e3af4[_0x4cb3e0(0xce)]:String(_0x2e3af4)});}finally{process[_0x4cb3e0(0xff)](_0x4d2345);}}logger[_0x4cb3e0(0x115)](_0x4cb3e0(0x117),_0x4cb3e0(0x118)+_0x1388fe[_0x4cb3e0(0xd7)]),console[_0x4cb3e0(0x116)](),console[_0x4cb3e0(0x116)](a154_0x23c5ea['green']('─'[_0x4cb3e0(0xe6)](0x3c))),console[_0x4cb3e0(0x116)](a154_0x23c5ea[_0x4cb3e0(0x110)][_0x4cb3e0(0x107)](_0x4cb3e0(0xcb))),console[_0x4cb3e0(0x116)](),console[_0x4cb3e0(0x116)]('\x20\x201.\x20Start\x20project:\x20'+a154_0x23c5ea['cyan'][_0x4cb3e0(0x107)]('cd\x20'+_0x1388fe[_0x4cb3e0(0xd7)]+'\x20&&\x20'+CLI_BIN_NAME+_0x4cb3e0(0xf6))),_0x46870e&&console[_0x4cb3e0(0x116)](_0x4cb3e0(0xd1)+a154_0x23c5ea[_0x4cb3e0(0x110)][_0x4cb3e0(0x107)](CLI_BIN_NAME+_0x4cb3e0(0x112))),console[_0x4cb3e0(0x116)](a154_0x23c5ea[_0x4cb3e0(0x102)]('─'[_0x4cb3e0(0xe6)](0x3c)));}catch(_0x4b40e7){logger[_0x4cb3e0(0xf2)](_0x4cb3e0(0x117),_0x4cb3e0(0xc5)+_0x1388fe['projectName'],{'error':_0x4b40e7 instanceof Error?_0x4b40e7[_0x4cb3e0(0xce)]:String(_0x4b40e7)});try{a154_0x4c40ce['existsSync'](_0x1e1aef)&&(console[_0x4cb3e0(0x116)](_0x4cb3e0(0x105)+_0x1e1aef),a154_0x4c40ce['rmSync'](_0x1e1aef,{'recursive':!![],'force':!![]}));}catch{logger[_0x4cb3e0(0x11a)](_0x4cb3e0(0x117),'清理项目目录失败:\x20'+_0x1e1aef);}throw _0x4b40e7;}}async function runTask(_0x1fa2d6,_0x58d33f){const _0x5b9aa2=a154_0x31f7,_0x21827d=a154_0x3e6580(_0x1fa2d6+_0x5b9aa2(0xf0))[_0x5b9aa2(0xca)]();try{const _0x4ccd21=await _0x58d33f();_0x21827d[_0x5b9aa2(0x119)](),console['log'](''+a154_0x23c5ea[_0x5b9aa2(0x102)]('\x20√\x20')+_0x1fa2d6+'\x20'+a154_0x23c5ea['gray']('['+_0x4ccd21+']'));}catch(_0x20a9a5){_0x21827d['fail'](_0x1fa2d6);throw _0x20a9a5;}}async function updatePackageJsonName(_0x23ed8a){const _0x22e138=a154_0x31f7,_0x23b9c8=a154_0x1c4608[_0x22e138(0xde)](process[_0x22e138(0xee)](),_0x23ed8a),_0x349a56=a154_0x1c4608[_0x22e138(0xfa)](_0x23b9c8,_0x22e138(0x10c));try{console[_0x22e138(0x116)](_0x22e138(0x11c));const _0x139d03=getRabetbaseCliPackageRoot(),_0x4cf360=a154_0x1c4608[_0x22e138(0xfa)](_0x139d03,_0x22e138(0x10c));let _0x287f24=_0x22e138(0xed);try{const _0x1bac1f=JSON['parse'](a154_0x4c40ce[_0x22e138(0xf4)](_0x4cf360,'utf8'));_0x287f24=_0x1bac1f[_0x22e138(0x100)]||'1.0.0';}catch{}const _0x328762=a154_0x4c40ce[_0x22e138(0xf4)](_0x349a56,_0x22e138(0xfb)),_0x2783ab=JSON[_0x22e138(0xd6)](_0x328762);_0x2783ab['name']=_0x23ed8a,_0x2783ab[_0x22e138(0xc8)]=_0x23ed8a+_0x22e138(0xcf)+_0x287f24,a154_0x4c40ce[_0x22e138(0xf8)](_0x349a56,JSON[_0x22e138(0xe5)](_0x2783ab,null,0x2)+'\x0a',_0x22e138(0xfb)),console[_0x22e138(0x116)]('√\x20package.json\x20updated:\x20name='+_0x23ed8a),logger[_0x22e138(0xe1)]('create',_0x22e138(0xc7));}catch(_0x193d5a){logger[_0x22e138(0xf2)](_0x22e138(0x117),_0x22e138(0xd8));throw _0x193d5a;}}async function configureAppCode(_0x251052,_0x29ec47,_0x1a5b52){const _0x4dff74=a154_0x31f7,_0x3ecb12=a154_0x1c4608['resolve'](process[_0x4dff74(0xee)](),_0x251052),_0x3d7749=a154_0x1c4608[_0x4dff74(0xfa)](_0x3ecb12,NEW_CONFIG_NAME);try{_0x29ec47?console[_0x4dff74(0x116)](_0x4dff74(0xdd)+_0x251052+':\x20'+_0x29ec47):console['log'](_0x4dff74(0xe0)+_0x251052);const _0x23dfc3=getRabetbaseCliPackageRoot(),_0x4bca39=a154_0x1c4608['join'](_0x23dfc3,_0x4dff74(0x10c));let _0x13e953=_0x4dff74(0xed);try{const _0x1def39=JSON[_0x4dff74(0xd6)](a154_0x4c40ce[_0x4dff74(0xf4)](_0x4bca39,_0x4dff74(0xfb)));_0x13e953=_0x1def39[_0x4dff74(0x100)]||_0x4dff74(0xed);}catch{}const _0x101f37=readConfig(),_0x5c3bf2=typeof _0x101f37['env']===_0x4dff74(0xcd)?_0x101f37[_0x4dff74(0xf3)]:undefined,_0x19d9fd={};for(const _0x45a067 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x101f37[_0x45a067]!=null)_0x19d9fd[_0x45a067]=_0x101f37[_0x45a067];}const _0x2eaa75=buildCanonicalProjectConfig(_0x19d9fd,{'appCodes':_0x29ec47?[_0x29ec47]:[],'env':_0x1a5b52||_0x5c3bf2||_0x4dff74(0x106),'metadata':{'createdAt':new Date()[_0x4dff74(0xfe)](),'version':_0x13e953}});writeConfigFile(_0x3d7749,_0x2eaa75),_0x29ec47?console['log'](_0x4dff74(0xd9)+Object[_0x4dff74(0x10d)](_0x2eaa75[_0x4dff74(0x109)]||{})[_0x4dff74(0xfa)](',\x20')+_0x4dff74(0xe7)+_0x2eaa75['defaultApp']):console[_0x4dff74(0x116)](_0x4dff74(0x10e)+CLI_BIN_NAME+_0x4dff74(0xdb)),logger['info'](_0x4dff74(0x117),_0x4dff74(0xe4)+_0x29ec47);}catch(_0xc9835f){logger['error'](_0x4dff74(0x117),_0x4dff74(0xf1));}}
1
+ (function(_0x3ba52f,_0x31a04a){const _0x28bedb=a162_0xa06d,_0x408121=_0x3ba52f();while(!![]){try{const _0x3d9abc=-parseInt(_0x28bedb(0x117))/0x1+parseInt(_0x28bedb(0x101))/0x2+parseInt(_0x28bedb(0xed))/0x3*(parseInt(_0x28bedb(0xe2))/0x4)+parseInt(_0x28bedb(0x12a))/0x5*(parseInt(_0x28bedb(0x126))/0x6)+-parseInt(_0x28bedb(0xe9))/0x7+parseInt(_0x28bedb(0xfd))/0x8+-parseInt(_0x28bedb(0xdb))/0x9*(-parseInt(_0x28bedb(0xf7))/0xa);if(_0x3d9abc===_0x31a04a)break;else _0x408121['push'](_0x408121['shift']());}catch(_0x21000b){_0x408121['push'](_0x408121['shift']());}}}(a162_0x288e,0xc0046));import a162_0x465dd8 from'path';import a162_0x1dea26 from'fs';import a162_0x412a71 from'chalk';import a162_0x4183f6 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';function a162_0xa06d(_0x2ecc0e,_0x511477){_0x2ecc0e=_0x2ecc0e-0xd4;const _0x288e85=a162_0x288e();let _0xa06db6=_0x288e85[_0x2ecc0e];return _0xa06db6;}import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';function a162_0x288e(){const _0x5d3f42=['defaultApp','log','rmSync','207eTxHJp','constants','\x20\x201.\x20Start\x20project:\x20','readFileSync','更新\x20package.json\x20失败','√\x20Configuration\x20file\x20created,\x20Apps:\x20','utf8','20NNMLoj','Project\x20directory\x20','Install\x20dependencies','needsUpgrade','√\x20package.json\x20updated:\x20name=','setLogPath','gray','7779352SzqiNm','projectName','\x20already\x20exists','appCode','177663vizRvb','Project\x20name:\x20','开始创建项目:\x20','join','stableVersion','projectCode','belowMinimum','accessSync','writeFileSync','currentVersion','43930sWpQyM','\x20dataset(s),\x20generated\x20','env','cyan','existsSync','CLI\x20版本检查','5026336JIzsaF','\x20\x202.\x20Pull\x20API\x20configuration:\x20','\x20model(s)','\x20run\x20start','3048926qkvkxK','...','更新\x20package.json\x20name','toLocaleString','API\x20配置拉取异常','🚀\x20Next\x20Steps:','info','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','W_OK','1.0.0','modelCount','create','配置应用AppCode失败','string','description','Format\x20code','cwd','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','apps','message','package.json','项目创建失败:\x20','824524HerDFL','fail','minimumVersion','\x20config\x20set\x20appcode\x20<app-code>\x27','length','error','version','parse','production','cd\x20','success','项目创建完成:\x20','√\x20Pulled\x20','\x20√\x20','resolve','114uZUxrf','test','cookie','*\x20Configuring\x20AppCode\x20for\x20project\x20','45385QvHKsp','name','\x20&&\x20','green','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','repeat','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','bold','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20'];a162_0x288e=function(){return _0x5d3f42;};return a162_0x288e();}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(_0x29d34b){const _0x4ad853=a162_0xa06d,_0x43a351=await checkCliVersion();(_0x43a351['needsUpgrade']||_0x43a351[_0x4ad853(0xf3)])&&(printCliUpgradeWarning(_0x43a351),assertCliVersionSupported(_0x43a351),logger[_0x4ad853(0x107)](_0x4ad853(0x10c),_0x4ad853(0xfc),{'currentVersion':_0x43a351[_0x4ad853(0xf6)],'stableVersion':_0x43a351[_0x4ad853(0xf1)],'minimumVersion':_0x43a351[_0x4ad853(0x119)],'needsUpgrade':_0x43a351[_0x4ad853(0xe5)],'belowMinimum':_0x43a351[_0x4ad853(0xf3)]}));if(_0x29d34b['projectCode']&&_0x29d34b[_0x4ad853(0xec)])await runCreate({'projectName':_0x29d34b[_0x4ad853(0xf2)],'appCode':_0x29d34b[_0x4ad853(0xec)],'env':_0x29d34b[_0x4ad853(0xf9)]},_0x29d34b);else{if(_0x29d34b[_0x4ad853(0xf2)]){const _0x4dfb94=await selectSingleAppcode(_0x29d34b[_0x4ad853(0x128)]);await runCreate({'projectName':_0x29d34b[_0x4ad853(0xf2)],'appCode':_0x4dfb94||undefined,'env':_0x29d34b['env']},_0x29d34b);}else await guidedCreateProject(_0x2ef762=>runCreate(_0x2ef762,_0x29d34b),_0x29d34b['env'],_0x29d34b[_0x4ad853(0x128)]);}}async function runCreate(_0x1ea9ad,_0x1a0842){const _0x437afc=a162_0xa06d;if(!_0x1ea9ad[_0x437afc(0xea)]||_0x1ea9ad[_0x437afc(0xea)]['trim']()==='')throw new Error('Project\x20name\x20cannot\x20be\x20empty');const _0x56acff=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x56acff[_0x437afc(0x127)](_0x1ea9ad[_0x437afc(0xea)]))throw new Error(_0x437afc(0x112));if(_0x1ea9ad[_0x437afc(0xea)][_0x437afc(0x11b)]>0x64)throw new Error(_0x437afc(0x12e));const _0x3434d4=a162_0x465dd8['resolve'](process['cwd'](),_0x1ea9ad[_0x437afc(0xea)]);if(a162_0x1dea26['existsSync'](_0x3434d4))throw new Error(_0x437afc(0xe3)+_0x1ea9ad[_0x437afc(0xea)]+_0x437afc(0xeb));try{a162_0x1dea26[_0x437afc(0xf4)](a162_0x465dd8['dirname'](_0x3434d4),a162_0x1dea26[_0x437afc(0xdc)][_0x437afc(0x109)]);}catch{throw new Error('Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions');}logger[_0x437afc(0xe7)](_0x3434d4),logger['info'](_0x437afc(0x10c),_0x437afc(0xef)+_0x1ea9ad['projectName'],{'projectDir':_0x3434d4,'appCode':_0x1ea9ad[_0x437afc(0xec)]}),console['log'](),console[_0x437afc(0xd9)](a162_0x412a71[_0x437afc(0x12d)](_0x437afc(0x124))+_0x437afc(0xee)+a162_0x412a71[_0x437afc(0x12d)](_0x1ea9ad[_0x437afc(0xea)])+(_0x1ea9ad[_0x437afc(0xec)]?'\x20|\x20AppCode:\x20'+a162_0x412a71[_0x437afc(0xfa)](_0x1ea9ad[_0x437afc(0xec)]):''));try{await runTask('Copy\x20project\x20files',()=>copyProjectTemplate(_0x1ea9ad[_0x437afc(0xea)])),await updatePackageJsonName(_0x1ea9ad['projectName']),await runTask(_0x437afc(0xe4),()=>installDependencies(_0x1ea9ad[_0x437afc(0xea)])),await runTask(_0x437afc(0x110),()=>formatProjectCode(_0x1ea9ad[_0x437afc(0xea)])),await configureAppCode(_0x1ea9ad[_0x437afc(0xea)],_0x1ea9ad[_0x437afc(0xec)]||'',_0x1ea9ad[_0x437afc(0xf9)]);let _0x5e31fb=![];if(_0x1ea9ad[_0x437afc(0xec)]){console['log']('*\x20Pulling\x20API\x20configuration...');const _0x37410b=process[_0x437afc(0x111)]();try{process['chdir'](_0x3434d4);const _0x1b297e=_0x1ea9ad[_0x437afc(0xf9)]||_0x437afc(0x11f);initEnv(_0x1b297e);const {configArray:_0x2cc81f}=await fetchModelList(_0x1ea9ad[_0x437afc(0xec)],_0x1a0842['cookie']||''),_0xde02a5=DEFAULT_API_DIR,_0x4bb1b9=await generateApiFile(_0x2cc81f,'',_0x1ea9ad[_0x437afc(0xec)],!![],_0x1b297e,_0xde02a5);console[_0x437afc(0xd9)](_0x437afc(0x123)+_0x2cc81f[_0x437afc(0x11b)]+_0x437afc(0xf8)+_0x4bb1b9[_0x437afc(0x10b)]+_0x437afc(0xff)),logger[_0x437afc(0x107)](_0x437afc(0x10c),'API\x20configuration\x20pulled:\x20'+_0x1ea9ad[_0x437afc(0xec)]);}catch(_0x3ae1a8){_0x5e31fb=!![],console[_0x437afc(0xd9)](_0x437afc(0xd5)),logger['warn'](_0x437afc(0x10c),_0x437afc(0x105),{'error':_0x3ae1a8 instanceof Error?_0x3ae1a8[_0x437afc(0x114)]:String(_0x3ae1a8)});}finally{process['chdir'](_0x37410b);}}logger[_0x437afc(0x121)]('create',_0x437afc(0x122)+_0x1ea9ad[_0x437afc(0xea)]),console['log'](),console['log'](a162_0x412a71[_0x437afc(0x12d)]('─'[_0x437afc(0xd4)](0x3c))),console[_0x437afc(0xd9)](a162_0x412a71[_0x437afc(0xfa)]['bold'](_0x437afc(0x106))),console[_0x437afc(0xd9)](),console[_0x437afc(0xd9)](_0x437afc(0xdd)+a162_0x412a71[_0x437afc(0xfa)][_0x437afc(0xd6)](_0x437afc(0x120)+_0x1ea9ad['projectName']+_0x437afc(0x12c)+CLI_BIN_NAME+_0x437afc(0x100))),_0x5e31fb&&console[_0x437afc(0xd9)](_0x437afc(0xfe)+a162_0x412a71['cyan'][_0x437afc(0xd6)](CLI_BIN_NAME+'\x20api\x20pull')),console[_0x437afc(0xd9)](a162_0x412a71[_0x437afc(0x12d)]('─'['repeat'](0x3c)));}catch(_0x39646a){logger['error']('create',_0x437afc(0x116)+_0x1ea9ad[_0x437afc(0xea)],{'error':_0x39646a instanceof Error?_0x39646a[_0x437afc(0x114)]:String(_0x39646a)});try{a162_0x1dea26[_0x437afc(0xfb)](_0x3434d4)&&(console[_0x437afc(0xd9)](_0x437afc(0xd7)+_0x3434d4),a162_0x1dea26[_0x437afc(0xda)](_0x3434d4,{'recursive':!![],'force':!![]}));}catch{logger['warn'](_0x437afc(0x10c),'清理项目目录失败:\x20'+_0x3434d4);}throw _0x39646a;}}async function runTask(_0x2c213e,_0x259987){const _0x96836c=a162_0xa06d,_0x149085=a162_0x4183f6(_0x2c213e+_0x96836c(0x102))['start']();try{const _0x38bc81=await _0x259987();_0x149085['stop'](),console[_0x96836c(0xd9)](''+a162_0x412a71[_0x96836c(0x12d)](_0x96836c(0x124))+_0x2c213e+'\x20'+a162_0x412a71[_0x96836c(0xe8)]('['+_0x38bc81+']'));}catch(_0x7804a9){_0x149085[_0x96836c(0x118)](_0x2c213e);throw _0x7804a9;}}async function updatePackageJsonName(_0x46c5d8){const _0x24cda6=a162_0xa06d,_0xa717af=a162_0x465dd8[_0x24cda6(0x125)](process[_0x24cda6(0x111)](),_0x46c5d8),_0x347b47=a162_0x465dd8[_0x24cda6(0xf0)](_0xa717af,_0x24cda6(0x115));try{console[_0x24cda6(0xd9)]('*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields');const _0x3f7ffc=getRabetbaseCliPackageRoot(),_0x208f00=a162_0x465dd8[_0x24cda6(0xf0)](_0x3f7ffc,'package.json');let _0x3b81bb='1.0.0';try{const _0x1b345b=JSON['parse'](a162_0x1dea26[_0x24cda6(0xde)](_0x208f00,'utf8'));_0x3b81bb=_0x1b345b['version']||_0x24cda6(0x10a);}catch{}const _0x143671=a162_0x1dea26['readFileSync'](_0x347b47,_0x24cda6(0xe1)),_0x1497c8=JSON[_0x24cda6(0x11e)](_0x143671);_0x1497c8[_0x24cda6(0x12b)]=_0x46c5d8,_0x1497c8[_0x24cda6(0x10f)]=_0x46c5d8+'\x20Generated\x20by\x20rabetbase\x20cli\x20'+_0x3b81bb,a162_0x1dea26[_0x24cda6(0xf5)](_0x347b47,JSON['stringify'](_0x1497c8,null,0x2)+'\x0a','utf8'),console['log'](_0x24cda6(0xe6)+_0x46c5d8),logger[_0x24cda6(0x107)](_0x24cda6(0x10c),_0x24cda6(0x103));}catch(_0x1df4ae){logger[_0x24cda6(0x11c)](_0x24cda6(0x10c),_0x24cda6(0xdf));throw _0x1df4ae;}}async function configureAppCode(_0x333b16,_0x2eda46,_0x3dbd49){const _0x5a6040=a162_0xa06d,_0x2e9e99=a162_0x465dd8[_0x5a6040(0x125)](process['cwd'](),_0x333b16),_0x3a3b1e=a162_0x465dd8[_0x5a6040(0xf0)](_0x2e9e99,NEW_CONFIG_NAME);try{_0x2eda46?console[_0x5a6040(0xd9)](_0x5a6040(0x129)+_0x333b16+':\x20'+_0x2eda46):console[_0x5a6040(0xd9)](_0x5a6040(0x108)+_0x333b16);const _0x37c5e9=getRabetbaseCliPackageRoot(),_0x1acfc8=a162_0x465dd8['join'](_0x37c5e9,'package.json');let _0x6a5443='1.0.0';try{const _0xbfd75d=JSON[_0x5a6040(0x11e)](a162_0x1dea26['readFileSync'](_0x1acfc8,_0x5a6040(0xe1)));_0x6a5443=_0xbfd75d[_0x5a6040(0x11d)]||_0x5a6040(0x10a);}catch{}const _0x1b6025=readConfig(),_0x5c9dd1=typeof _0x1b6025['env']===_0x5a6040(0x10e)?_0x1b6025[_0x5a6040(0xf9)]:undefined,_0x13581a={};for(const _0x3e7306 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x1b6025[_0x3e7306]!=null)_0x13581a[_0x3e7306]=_0x1b6025[_0x3e7306];}const _0x12e3ad=buildCanonicalProjectConfig(_0x13581a,{'appCodes':_0x2eda46?[_0x2eda46]:[],'env':_0x3dbd49||_0x5c9dd1||'production','metadata':{'createdAt':new Date()[_0x5a6040(0x104)](),'version':_0x6a5443}});writeConfigFile(_0x3a3b1e,_0x12e3ad),_0x2eda46?console[_0x5a6040(0xd9)](_0x5a6040(0xe0)+Object['keys'](_0x12e3ad[_0x5a6040(0x113)]||{})[_0x5a6040(0xf0)](',\x20')+'\x20|\x20Default:\x20'+_0x12e3ad[_0x5a6040(0xd8)]):console[_0x5a6040(0xd9)]('√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27'+CLI_BIN_NAME+_0x5a6040(0x11a)),logger[_0x5a6040(0x107)](_0x5a6040(0x10c),'配置应用AppCode:\x20'+_0x2eda46);}catch(_0x58606e){logger[_0x5a6040(0x11c)]('create',_0x5a6040(0x10d));}}
@@ -1 +1 @@
1
- (function(_0x395b25,_0x339846){const _0x37fd9b=a155_0x4d9a,_0x19ef02=_0x395b25();while(!![]){try{const _0x49e2fd=-parseInt(_0x37fd9b(0x19f))/0x1+-parseInt(_0x37fd9b(0x19a))/0x2+parseInt(_0x37fd9b(0x1ba))/0x3*(parseInt(_0x37fd9b(0x197))/0x4)+-parseInt(_0x37fd9b(0x1a5))/0x5+-parseInt(_0x37fd9b(0x1ad))/0x6+parseInt(_0x37fd9b(0x1b5))/0x7+parseInt(_0x37fd9b(0x1b3))/0x8;if(_0x49e2fd===_0x339846)break;else _0x19ef02['push'](_0x19ef02['shift']());}catch(_0x292779){_0x19ef02['push'](_0x19ef02['shift']());}}}(a155_0x250c,0xf1b04));import a155_0x3bc7fd from'path';import a155_0x2ae80b from'fs/promises';import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';function a155_0x4d9a(_0x212fd4,_0x433c52){_0x212fd4=_0x212fd4-0x18a;const _0x250c95=a155_0x250c();let _0x4d9a13=_0x250c95[_0x212fd4];return _0x4d9a13;}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_0x250c(){const _0x3c7f8a=['268945LAfcjy','toLocaleString','description','W_OK','bun\x20run\x20format','writeFile','\x0a\x20\x20cd\x20','Project\x20directory\x20\x22','7668996oLZwjx','ignore','modelCount','Cannot\x20create\x20project\x20in\x20current\x20directory.','\x20\x20√\x20Code\x20formatted','\x20dataset(s),\x20generated\x20','34509912DdScTl','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','3864287vOIGDt','cwd','readFile','\x20\x20√\x20Pulled\x20','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','2597355kkgrIl','length','test','bun','\x20api\x20pull`\x20manually\x20later.','constants','Use\x20a\x20different\x20project\x20name.','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','env','npm','name','join','bun\x20--version','...','access','Project\x20name\x20cannot\x20be\x20empty.','log','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','4tXzddz','validation','parse','3769168AWGWhx','*\x20Creating\x20project\x20','production','chdir','resolve','1525070kqqaxn','needsUpgrade','\x20\x20√\x20Project\x20template\x20created','stringify','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','\x22\x20already\x20exists.'];a155_0x250c=function(){return _0x3c7f8a;};return a155_0x250c();}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(_0x3cbcbc,_0xa5d811,_0x1091fd,_0x442f7a){const _0x1c60c8=a155_0x4d9a,_0x10443e=await checkCliVersion();(_0x10443e[_0x1c60c8(0x1a0)]||_0x10443e['belowMinimum'])&&(printCliUpgradeWarning(_0x10443e),assertCliVersionSupported(_0x10443e));if(!_0x3cbcbc||_0x3cbcbc['trim']()==='')throw CliErrors[_0x1c60c8(0x198)](_0x1c60c8(0x194));const _0x2abae2=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x2abae2[_0x1c60c8(0x1bc)](_0x3cbcbc))throw CliErrors['validation']('Project\x20name\x20contains\x20invalid\x20characters.',_0x1c60c8(0x1a3));if(_0x3cbcbc[_0x1c60c8(0x1bb)]>0x64)throw CliErrors[_0x1c60c8(0x198)](_0x1c60c8(0x196));const _0x5c668c=a155_0x3bc7fd[_0x1c60c8(0x19e)](process[_0x1c60c8(0x1b6)](),_0x3cbcbc);if(existsSync(_0x5c668c))throw CliErrors[_0x1c60c8(0x198)](_0x1c60c8(0x1ac)+_0x3cbcbc+_0x1c60c8(0x1a4),_0x1c60c8(0x18b));try{const _0x2f15d9=a155_0x3bc7fd['dirname'](_0x5c668c);await a155_0x2ae80b[_0x1c60c8(0x193)](_0x2f15d9,a155_0x2ae80b[_0x1c60c8(0x18a)][_0x1c60c8(0x1a8)]);}catch{throw CliErrors[_0x1c60c8(0x198)](_0x1c60c8(0x1b0),'Check\x20directory\x20permissions.');}try{console[_0x1c60c8(0x195)](_0x1c60c8(0x19b)+_0x3cbcbc+_0x1c60c8(0x192));const _0x56329d=getSubAppReactDemoTemplateDir();await copyDirectory(_0x56329d,_0x5c668c),console[_0x1c60c8(0x195)](_0x1c60c8(0x1a1)),await updatePackageJsonName(_0x3cbcbc),console['log']('\x20\x20√\x20package.json\x20updated'),console[_0x1c60c8(0x195)]('\x20\x20Installing\x20dependencies...'),console[_0x1c60c8(0x195)](_0x1c60c8(0x1b9)),await formatCode(_0x5c668c),console['log'](_0x1c60c8(0x1b1)),await configureProject(_0x3cbcbc,_0x1091fd,_0xa5d811),console[_0x1c60c8(0x195)]('\x20\x20√\x20Configuration\x20file\x20created'),_0x1091fd&&await pullApiConfig(_0x5c668c,_0x1091fd,_0xa5d811,_0x442f7a),console[_0x1c60c8(0x195)]('\x0a√\x20Project\x20'+_0x3cbcbc+'\x20created\x20successfully!'),console[_0x1c60c8(0x195)](_0x1c60c8(0x1ab)+_0x3cbcbc),console[_0x1c60c8(0x195)]('\x20\x20rabetbase\x20run\x20start\x0a');}catch(_0x245236){try{existsSync(_0x5c668c)&&await a155_0x2ae80b['rm'](_0x5c668c,{'recursive':!![],'force':!![]});}catch{}throw _0x245236;}}async function updatePackageJsonName(_0x29eb18){const _0xc56250=a155_0x4d9a,_0x373218=a155_0x3bc7fd[_0xc56250(0x19e)](process['cwd'](),_0x29eb18),_0x5012ca=a155_0x3bc7fd[_0xc56250(0x190)](_0x373218,'package.json'),_0x167c31=await a155_0x2ae80b[_0xc56250(0x1b7)](_0x5012ca,'utf-8'),_0x3ce19f=JSON[_0xc56250(0x199)](_0x167c31);_0x3ce19f[_0xc56250(0x18f)]=_0x29eb18,_0x3ce19f[_0xc56250(0x1a7)]=_0xc56250(0x18c),await a155_0x2ae80b[_0xc56250(0x1aa)](_0x5012ca,JSON[_0xc56250(0x1a2)](_0x3ce19f,null,0x2)+'\x0a');}function detectPackageManager(){const _0x3ab8a2=a155_0x4d9a;try{return execSync(_0x3ab8a2(0x191),{'stdio':_0x3ab8a2(0x1ae)}),_0x3ab8a2(0x1bd);}catch{return _0x3ab8a2(0x18e);}}async function formatCode(_0x1edd41){const _0x4e6855=a155_0x4d9a;try{await execAsync(_0x4e6855(0x1a9),{'cwd':_0x1edd41});}catch{}}async function configureProject(_0x5967f6,_0x27da72,_0x1a1ff3){const _0x4948f6=a155_0x4d9a,_0x33d532=a155_0x3bc7fd['resolve'](process['cwd'](),_0x5967f6),_0x16225b=a155_0x3bc7fd[_0x4948f6(0x190)](_0x33d532,NEW_CONFIG_NAME),_0x4d0e9d=readConfig(),_0xd50367=typeof _0x4d0e9d[_0x4948f6(0x18d)]==='string'?_0x4d0e9d['env']:undefined,_0x2a39de={};for(const _0x47721c of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x4d0e9d[_0x47721c]!=null)_0x2a39de[_0x47721c]=_0x4d0e9d[_0x47721c];}const _0x98c524=buildCanonicalProjectConfig(_0x2a39de,{'appCodes':_0x27da72?[_0x27da72]:[],'env':_0x1a1ff3||_0xd50367||_0x4948f6(0x19c),'metadata':{'createdAt':new Date()[_0x4948f6(0x1a6)](),'version':getCliVersion()}});writeConfigFile(_0x16225b,_0x98c524);}async function pullApiConfig(_0x22244c,_0x146a1c,_0xb0c541,_0x3db003){const _0x4826ca=a155_0x4d9a,_0x241bc1=process[_0x4826ca(0x1b6)]();try{process['chdir'](_0x22244c);const _0x4e95e5=_0xb0c541||'production';initEnv(_0x4e95e5),console[_0x4826ca(0x195)]('\x20\x20Pulling\x20API\x20configuration...');const {configArray:_0x407fd0}=await fetchModelList(_0x146a1c,_0x3db003||''),_0x23586f=await generateApiFile(_0x407fd0,'',_0x146a1c,!![],_0x4e95e5,DEFAULT_API_DIR);console['log'](_0x4826ca(0x1b8)+_0x407fd0[_0x4826ca(0x1bb)]+_0x4826ca(0x1b2)+_0x23586f[_0x4826ca(0x1af)]+'\x20model(s)');}catch(_0x37dd68){console[_0x4826ca(0x195)](_0x4826ca(0x1b4)+CLI_BIN_NAME+_0x4826ca(0x1be));}finally{process[_0x4826ca(0x19d)](_0x241bc1);}}
1
+ function a163_0x1e37(_0x10f88a,_0x209850){_0x10f88a=_0x10f88a-0x9f;const _0x3c1e6f=a163_0x3c1e();let _0x1e378c=_0x3c1e6f[_0x10f88a];return _0x1e378c;}(function(_0x4dc408,_0x323cee){const _0xbd419f=a163_0x1e37,_0x386ab4=_0x4dc408();while(!![]){try{const _0x4f66fd=parseInt(_0xbd419f(0xb3))/0x1+-parseInt(_0xbd419f(0xc4))/0x2*(-parseInt(_0xbd419f(0xce))/0x3)+-parseInt(_0xbd419f(0xcb))/0x4+parseInt(_0xbd419f(0xa2))/0x5*(parseInt(_0xbd419f(0xb7))/0x6)+parseInt(_0xbd419f(0xd3))/0x7+parseInt(_0xbd419f(0xd4))/0x8*(-parseInt(_0xbd419f(0xd0))/0x9)+-parseInt(_0xbd419f(0xa8))/0xa*(parseInt(_0xbd419f(0xba))/0xb);if(_0x4f66fd===_0x323cee)break;else _0x386ab4['push'](_0x386ab4['shift']());}catch(_0x2660df){_0x386ab4['push'](_0x386ab4['shift']());}}}(a163_0x3c1e,0xc10fb));import a163_0x729ebe from'path';import a163_0x5832af 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';function a163_0x3c1e(){const _0xb29d2f=['\x20\x20√\x20Pulled\x20','\x22\x20already\x20exists.','ignore','stringify','utf-8','trim','509336XzquOY','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','needsUpgrade','dirname','log','production','package.json','4021832gIByqP','*\x20Creating\x20project\x20','join','15cRzArR','\x20\x20Pulling\x20API\x20configuration...','5607SJekbF','\x0a\x20\x20cd\x20','\x20dataset(s),\x20generated\x20','8046969qHFvAe','15096KZASON','Use\x20a\x20different\x20project\x20name.','length','W_OK','1385QDZOgR','cwd','\x20\x20√\x20Code\x20formatted','Project\x20directory\x20\x22','parse','bun\x20run\x20format','50HGLLaD','npm','bun','string','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','chdir','env','bun\x20--version','\x20\x20√\x20Configuration\x20file\x20created','\x20\x20rabetbase\x20run\x20start\x0a','constants','321167JUyDuq','writeFile','\x20model(s)','\x20\x20√\x20package.json\x20updated','30342QatxPX','description','modelCount','2580655SQjExV','resolve','validation','Cannot\x20create\x20project\x20in\x20current\x20directory.'];a163_0x3c1e=function(){return _0xb29d2f;};return a163_0x3c1e();}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';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(_0x234bb1,_0x20baab,_0x16fb82,_0xf74c34){const _0x19c5f6=a163_0x1e37,_0x3262ba=await checkCliVersion();(_0x3262ba[_0x19c5f6(0xc6)]||_0x3262ba['belowMinimum'])&&(printCliUpgradeWarning(_0x3262ba),assertCliVersionSupported(_0x3262ba));if(!_0x234bb1||_0x234bb1[_0x19c5f6(0xc3)]()==='')throw CliErrors[_0x19c5f6(0xbc)]('Project\x20name\x20cannot\x20be\x20empty.');const _0x313785=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x313785['test'](_0x234bb1))throw CliErrors[_0x19c5f6(0xbc)]('Project\x20name\x20contains\x20invalid\x20characters.',_0x19c5f6(0xac));if(_0x234bb1[_0x19c5f6(0xa0)]>0x64)throw CliErrors[_0x19c5f6(0xbc)]('Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.');const _0x41875e=a163_0x729ebe['resolve'](process[_0x19c5f6(0xa3)](),_0x234bb1);if(existsSync(_0x41875e))throw CliErrors[_0x19c5f6(0xbc)](_0x19c5f6(0xa5)+_0x234bb1+_0x19c5f6(0xbf),_0x19c5f6(0x9f));try{const _0x3b2b7d=a163_0x729ebe[_0x19c5f6(0xc7)](_0x41875e);await a163_0x5832af['access'](_0x3b2b7d,a163_0x5832af[_0x19c5f6(0xb2)][_0x19c5f6(0xa1)]);}catch{throw CliErrors['validation'](_0x19c5f6(0xbd),'Check\x20directory\x20permissions.');}try{console[_0x19c5f6(0xc8)](_0x19c5f6(0xcc)+_0x234bb1+'...');const _0x2f07bc=getSubAppReactDemoTemplateDir();await copyDirectory(_0x2f07bc,_0x41875e),console[_0x19c5f6(0xc8)]('\x20\x20√\x20Project\x20template\x20created'),await updatePackageJsonName(_0x234bb1),console['log'](_0x19c5f6(0xb6)),console[_0x19c5f6(0xc8)]('\x20\x20Installing\x20dependencies...'),console[_0x19c5f6(0xc8)]('\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)'),await formatCode(_0x41875e),console[_0x19c5f6(0xc8)](_0x19c5f6(0xa4)),await configureProject(_0x234bb1,_0x16fb82,_0x20baab),console['log'](_0x19c5f6(0xb0)),_0x16fb82&&await pullApiConfig(_0x41875e,_0x16fb82,_0x20baab,_0xf74c34),console[_0x19c5f6(0xc8)]('\x0a√\x20Project\x20'+_0x234bb1+'\x20created\x20successfully!'),console[_0x19c5f6(0xc8)](_0x19c5f6(0xd1)+_0x234bb1),console[_0x19c5f6(0xc8)](_0x19c5f6(0xb1));}catch(_0x577a45){try{existsSync(_0x41875e)&&await a163_0x5832af['rm'](_0x41875e,{'recursive':!![],'force':!![]});}catch{}throw _0x577a45;}}async function updatePackageJsonName(_0x183901){const _0x287510=a163_0x1e37,_0x457174=a163_0x729ebe['resolve'](process[_0x287510(0xa3)](),_0x183901),_0x5a6047=a163_0x729ebe[_0x287510(0xcd)](_0x457174,_0x287510(0xca)),_0x45bc5f=await a163_0x5832af['readFile'](_0x5a6047,_0x287510(0xc2)),_0x1fb94d=JSON[_0x287510(0xa6)](_0x45bc5f);_0x1fb94d['name']=_0x183901,_0x1fb94d[_0x287510(0xb8)]=_0x287510(0xc5),await a163_0x5832af[_0x287510(0xb4)](_0x5a6047,JSON[_0x287510(0xc1)](_0x1fb94d,null,0x2)+'\x0a');}function detectPackageManager(){const _0x15e96c=a163_0x1e37;try{return execSync(_0x15e96c(0xaf),{'stdio':_0x15e96c(0xc0)}),_0x15e96c(0xaa);}catch{return _0x15e96c(0xa9);}}async function formatCode(_0x4ba49c){const _0x3ec3fc=a163_0x1e37;try{await execAsync(_0x3ec3fc(0xa7),{'cwd':_0x4ba49c});}catch{}}async function configureProject(_0x40104b,_0x41e4c2,_0x26b5a8){const _0x113d6b=a163_0x1e37,_0x8bb392=a163_0x729ebe[_0x113d6b(0xbb)](process[_0x113d6b(0xa3)](),_0x40104b),_0x5c15c3=a163_0x729ebe['join'](_0x8bb392,NEW_CONFIG_NAME),_0x166711=readConfig(),_0x4b8e8a=typeof _0x166711[_0x113d6b(0xae)]===_0x113d6b(0xab)?_0x166711['env']:undefined,_0x10c894={};for(const _0x3d6851 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x166711[_0x3d6851]!=null)_0x10c894[_0x3d6851]=_0x166711[_0x3d6851];}const _0x53b67f=buildCanonicalProjectConfig(_0x10c894,{'appCodes':_0x41e4c2?[_0x41e4c2]:[],'env':_0x26b5a8||_0x4b8e8a||_0x113d6b(0xc9),'metadata':{'createdAt':new Date()['toLocaleString'](),'version':getCliVersion()}});writeConfigFile(_0x5c15c3,_0x53b67f);}async function pullApiConfig(_0x125464,_0x20b4db,_0xd4d36e,_0x24e12d){const _0x13fe6d=a163_0x1e37,_0x389501=process['cwd']();try{process['chdir'](_0x125464);const _0x28374f=_0xd4d36e||_0x13fe6d(0xc9);initEnv(_0x28374f),console[_0x13fe6d(0xc8)](_0x13fe6d(0xcf));const {configArray:_0x324f4c}=await fetchModelList(_0x20b4db,_0x24e12d||''),_0x5419e8=await generateApiFile(_0x324f4c,'',_0x20b4db,!![],_0x28374f,DEFAULT_API_DIR);console[_0x13fe6d(0xc8)](_0x13fe6d(0xbe)+_0x324f4c[_0x13fe6d(0xa0)]+_0x13fe6d(0xd2)+_0x5419e8[_0x13fe6d(0xb9)]+_0x13fe6d(0xb5));}catch(_0x5bd464){console[_0x13fe6d(0xc8)]('\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`'+CLI_BIN_NAME+'\x20api\x20pull`\x20manually\x20later.');}finally{process[_0x13fe6d(0xad)](_0x389501);}}
@@ -1 +1 @@
1
- function a156_0x4139(){const _0x2c3161=['205920ziSvea','../../../../','10608633sBDVqg','templates','dirname','6602766HeLosv','24YiajGk','2448733cfuPbk','143558wAkIGT','24861dzMbgc','resolve','8nPFRyw','202805TzPnGv','join'];a156_0x4139=function(){return _0x2c3161;};return a156_0x4139();}const a156_0x4b4b9d=a156_0x32c3;(function(_0x111b4f,_0x5873d7){const _0x519b88=a156_0x32c3,_0x433c86=_0x111b4f();while(!![]){try{const _0x17414a=-parseInt(_0x519b88(0xcc))/0x1+-parseInt(_0x519b88(0xc6))/0x2+parseInt(_0x519b88(0xc7))/0x3+parseInt(_0x519b88(0xc9))/0x4*(parseInt(_0x519b88(0xca))/0x5)+-parseInt(_0x519b88(0xc3))/0x6+-parseInt(_0x519b88(0xc5))/0x7*(-parseInt(_0x519b88(0xc4))/0x8)+parseInt(_0x519b88(0xc0))/0x9;if(_0x17414a===_0x5873d7)break;else _0x433c86['push'](_0x433c86['shift']());}catch(_0x2292b6){_0x433c86['push'](_0x433c86['shift']());}}}(a156_0x4139,0xe55b3));function a156_0x32c3(_0x5cf0db,_0x3042b4){_0x5cf0db=_0x5cf0db-0xbf;const _0x413985=a156_0x4139();let _0x32c399=_0x413985[_0x5cf0db];return _0x32c399;}import a156_0x536f45 from'node:path';import{fileURLToPath}from'node:url';const __dirname=a156_0x536f45[a156_0x4b4b9d(0xc2)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x185e2f=a156_0x4b4b9d;return a156_0x536f45[_0x185e2f(0xc8)](__dirname,_0x185e2f(0xbf));}export function getSubAppReactDemoTemplateDir(){const _0x5c92cd=a156_0x4b4b9d;return a156_0x536f45[_0x5c92cd(0xcb)](getRabetbaseCliPackageRoot(),_0x5c92cd(0xc1),'projects','sub-app-react-demo');}
1
+ function a164_0x2298(){const _0x264fd9=['14iyKAQX','4nuirOH','9vTEwYH','11067048WGyotd','55bdFgqV','join','resolve','1194650TwLJmg','8215576VTLCIn','2973873DYGXSP','4GZVYPw','432001wAANCm','sub-app-react-demo','691422NvwTqI','projects','../../../../','dirname','1230490WmyXZm','templates'];a164_0x2298=function(){return _0x264fd9;};return a164_0x2298();}const a164_0xd489f9=a164_0x3614;(function(_0x272ab3,_0x3d081c){const _0x5a0967=a164_0x3614,_0x166f3d=_0x272ab3();while(!![]){try{const _0x1a5c62=-parseInt(_0x5a0967(0x1b2))/0x1*(-parseInt(_0x5a0967(0x1a8))/0x2)+parseInt(_0x5a0967(0x1b0))/0x3*(-parseInt(_0x5a0967(0x1b1))/0x4)+parseInt(_0x5a0967(0x1a5))/0x5+-parseInt(_0x5a0967(0x1a1))/0x6*(parseInt(_0x5a0967(0x1a7))/0x7)+parseInt(_0x5a0967(0x1af))/0x8*(parseInt(_0x5a0967(0x1a9))/0x9)+parseInt(_0x5a0967(0x1ae))/0xa*(parseInt(_0x5a0967(0x1ab))/0xb)+-parseInt(_0x5a0967(0x1aa))/0xc;if(_0x1a5c62===_0x3d081c)break;else _0x166f3d['push'](_0x166f3d['shift']());}catch(_0x5f72fe){_0x166f3d['push'](_0x166f3d['shift']());}}}(a164_0x2298,0x90211));import a164_0x6ed5b6 from'node:path';import{fileURLToPath}from'node:url';const __dirname=a164_0x6ed5b6[a164_0xd489f9(0x1a4)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x19028a=a164_0xd489f9;return a164_0x6ed5b6[_0x19028a(0x1ad)](__dirname,_0x19028a(0x1a3));}function a164_0x3614(_0x377c58,_0x3a6335){_0x377c58=_0x377c58-0x1a1;const _0x22989a=a164_0x2298();let _0x3614b1=_0x22989a[_0x377c58];return _0x3614b1;}export function getSubAppReactDemoTemplateDir(){const _0x27bc9c=a164_0xd489f9;return a164_0x6ed5b6[_0x27bc9c(0x1ac)](getRabetbaseCliPackageRoot(),_0x27bc9c(0x1a6),_0x27bc9c(0x1a2),_0x27bc9c(0x1b3));}
@@ -1 +1 @@
1
- (function(_0x75b324,_0x40f7eb){const _0x57bc84=a157_0x22aa,_0x16cd3d=_0x75b324();while(!![]){try{const _0xdb6b3e=-parseInt(_0x57bc84(0x121))/0x1+-parseInt(_0x57bc84(0x11d))/0x2*(parseInt(_0x57bc84(0x12f))/0x3)+parseInt(_0x57bc84(0x125))/0x4*(parseInt(_0x57bc84(0x12e))/0x5)+parseInt(_0x57bc84(0x126))/0x6+parseInt(_0x57bc84(0x12d))/0x7*(-parseInt(_0x57bc84(0x130))/0x8)+parseInt(_0x57bc84(0x129))/0x9*(-parseInt(_0x57bc84(0x127))/0xa)+parseInt(_0x57bc84(0x124))/0xb;if(_0xdb6b3e===_0x40f7eb)break;else _0x16cd3d['push'](_0x16cd3d['shift']());}catch(_0x10b565){_0x16cd3d['push'](_0x16cd3d['shift']());}}}(a157_0x54dc,0xd3178));import a157_0x32d6dd from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';function a157_0x22aa(_0x117760,_0x30079c){_0x117760=_0x117760-0x11d;const _0x54dc29=a157_0x54dc();let _0x22aa59=_0x54dc29[_0x117760];return _0x22aa59;}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a157_0x54dc(){const _0x502900=['8567720qftDTl','error','9QIYecO','开始复制项目模板','info','now','7514619BzARpw','28915gUEPzh','3DqAffA','8uCiaKz','项目模板复制完成','1728516qSplac','resolve','项目模板复制失败','message','985459WvjUUr','copy','cwd','25125375ISkPtR','572xWVsoL','9201264ILJoZR'];a157_0x54dc=function(){return _0x502900;};return a157_0x54dc();}import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x1fe4a4){const _0x503ba3=a157_0x22aa,_0x52000b=Date[_0x503ba3(0x12c)](),_0x32d370=a157_0x32d6dd[_0x503ba3(0x11e)](process[_0x503ba3(0x123)](),_0x1fe4a4);try{logger[_0x503ba3(0x12b)]('copy',_0x503ba3(0x12a),{'projectCode':_0x1fe4a4,'templateDir':templateDir}),await copyDirectory(templateDir,_0x32d370);const _0x4c7be2=Date[_0x503ba3(0x12c)]()-_0x52000b;logger['success'](_0x503ba3(0x122),_0x503ba3(0x131),_0x4c7be2,{'projectCode':_0x1fe4a4});}catch(_0x53302f){const _0x3680ed=Date[_0x503ba3(0x12c)]()-_0x52000b;logger[_0x503ba3(0x128)](_0x503ba3(0x122),_0x503ba3(0x11f),{'projectCode':_0x1fe4a4,'error':_0x53302f instanceof Error?_0x53302f[_0x503ba3(0x120)]:String(_0x53302f),'duration':_0x3680ed});throw _0x53302f;}return formatElapsed(_0x52000b);}
1
+ (function(_0x1f4686,_0x51cf6e){const _0x582142=a165_0x4b2f,_0x3266e4=_0x1f4686();while(!![]){try{const _0x592fa8=parseInt(_0x582142(0x169))/0x1*(-parseInt(_0x582142(0x179))/0x2)+parseInt(_0x582142(0x170))/0x3*(-parseInt(_0x582142(0x178))/0x4)+parseInt(_0x582142(0x168))/0x5*(-parseInt(_0x582142(0x175))/0x6)+parseInt(_0x582142(0x177))/0x7+-parseInt(_0x582142(0x171))/0x8*(parseInt(_0x582142(0x176))/0x9)+parseInt(_0x582142(0x172))/0xa*(parseInt(_0x582142(0x173))/0xb)+-parseInt(_0x582142(0x17a))/0xc*(-parseInt(_0x582142(0x166))/0xd);if(_0x592fa8===_0x51cf6e)break;else _0x3266e4['push'](_0x3266e4['shift']());}catch(_0x9791b1){_0x3266e4['push'](_0x3266e4['shift']());}}}(a165_0x2fa1,0x3ac3e));import a165_0x40fdf0 from'node:path';function a165_0x4b2f(_0x224143,_0x4e3245){_0x224143=_0x224143-0x166;const _0x2fa1b3=a165_0x2fa1();let _0x4b2f78=_0x2fa1b3[_0x224143];return _0x4b2f78;}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_0x2fa1(){const _0x2fbf53=['cwd','copy','项目模板复制完成','error','now','success','489vaXNoT','58376mMDTuE','605090NEPsUr','55hykwIp','resolve','1662894dMCTeZ','513YlkAtD','2313822TbldGx','10324IHSAHS','22Pkpdig','996VTEDvd','149461srQKqc','message','5pQwEmn','21169IdRavg'];a165_0x2fa1=function(){return _0x2fbf53;};return a165_0x2fa1();}const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x3c2690){const _0x424639=a165_0x4b2f,_0x3645b3=Date[_0x424639(0x16e)](),_0x261013=a165_0x40fdf0[_0x424639(0x174)](process[_0x424639(0x16a)](),_0x3c2690);try{logger['info']('copy','开始复制项目模板',{'projectCode':_0x3c2690,'templateDir':templateDir}),await copyDirectory(templateDir,_0x261013);const _0x48414e=Date[_0x424639(0x16e)]()-_0x3645b3;logger[_0x424639(0x16f)](_0x424639(0x16b),_0x424639(0x16c),_0x48414e,{'projectCode':_0x3c2690});}catch(_0x582d77){const _0x5306f3=Date[_0x424639(0x16e)]()-_0x3645b3;logger[_0x424639(0x16d)](_0x424639(0x16b),'项目模板复制失败',{'projectCode':_0x3c2690,'error':_0x582d77 instanceof Error?_0x582d77[_0x424639(0x167)]:String(_0x582d77),'duration':_0x5306f3});throw _0x582d77;}return formatElapsed(_0x3645b3);}
@@ -1 +1 @@
1
- function a158_0x5eef(){const _0xd7b869=['18599vnmvjb','cwd','281224wRdYTa','--write','代码格式化完成','11256odwWOS','resolve','代码格式化失败','success','format','message','63MuqINK','1632205esoYVS','610068DpqPWC','now','94380sWIyLa','175756ghTyTI','prettier','6RaEzgx','npx'];a158_0x5eef=function(){return _0xd7b869;};return a158_0x5eef();}(function(_0xa24776,_0x30f4fd){const _0x75b34=a158_0x36ba,_0x1f98d8=_0xa24776();while(!![]){try{const _0x211588=parseInt(_0x75b34(0xbf))/0x1+parseInt(_0x75b34(0xce))/0x2+parseInt(_0x75b34(0xcc))/0x3+parseInt(_0x75b34(0xc4))/0x4+-parseInt(_0x75b34(0xcb))/0x5*(parseInt(_0x75b34(0xbd))/0x6)+-parseInt(_0x75b34(0xbb))/0x7+parseInt(_0x75b34(0xc1))/0x8*(parseInt(_0x75b34(0xca))/0x9);if(_0x211588===_0x30f4fd)break;else _0x1f98d8['push'](_0x1f98d8['shift']());}catch(_0x356005){_0x1f98d8['push'](_0x1f98d8['shift']());}}}(a158_0x5eef,0x28a51));import a158_0x39804c from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a158_0x36ba(_0x25d251,_0x1025c4){_0x25d251=_0x25d251-0xbb;const _0x5eefe1=a158_0x5eef();let _0x36baff=_0x5eefe1[_0x25d251];return _0x36baff;}import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x265f6a){const _0x35ff74=a158_0x36ba,_0x3a948f=Date[_0x35ff74(0xcd)](),_0x1b29c2=a158_0x39804c[_0x35ff74(0xc5)](process[_0x35ff74(0xc0)](),_0x265f6a);try{logger['info'](_0x35ff74(0xc8),'开始格式化代码',{'projectCode':_0x265f6a}),await execa(resolveNpmBin(_0x35ff74(0xbe)),[_0x35ff74(0xbc),_0x35ff74(0xc2),'.'],{'cwd':_0x1b29c2});const _0x448f5d=Date['now']()-_0x3a948f;logger[_0x35ff74(0xc7)]('format',_0x35ff74(0xc3),_0x448f5d,{'projectCode':_0x265f6a});}catch(_0x1002e8){const _0x29123b=Date[_0x35ff74(0xcd)]()-_0x3a948f;logger['error']('format',_0x35ff74(0xc6),{'projectCode':_0x265f6a,'error':_0x1002e8 instanceof Error?_0x1002e8[_0x35ff74(0xc9)]:String(_0x1002e8),'duration':_0x29123b});throw _0x1002e8;}return formatElapsed(_0x3a948f);}
1
+ (function(_0x53719d,_0x4b5702){const _0x1cfdd3=a166_0x15de,_0x882717=_0x53719d();while(!![]){try{const _0x3dd82f=-parseInt(_0x1cfdd3(0x1e5))/0x1*(parseInt(_0x1cfdd3(0x1d3))/0x2)+-parseInt(_0x1cfdd3(0x1d9))/0x3*(-parseInt(_0x1cfdd3(0x1d7))/0x4)+parseInt(_0x1cfdd3(0x1db))/0x5+-parseInt(_0x1cfdd3(0x1d5))/0x6+parseInt(_0x1cfdd3(0x1d2))/0x7*(parseInt(_0x1cfdd3(0x1e2))/0x8)+-parseInt(_0x1cfdd3(0x1da))/0x9+parseInt(_0x1cfdd3(0x1d4))/0xa*(-parseInt(_0x1cfdd3(0x1e1))/0xb);if(_0x3dd82f===_0x4b5702)break;else _0x882717['push'](_0x882717['shift']());}catch(_0x542a1b){_0x882717['push'](_0x882717['shift']());}}}(a166_0x4ba4,0xaa48e));function a166_0x15de(_0x241886,_0x422579){_0x241886=_0x241886-0x1d2;const _0x4ba49e=a166_0x4ba4();let _0x15dec3=_0x4ba49e[_0x241886];return _0x15dec3;}import a166_0x36b054 from'node:path';function a166_0x4ba4(){const _0x2024b0=['8QUUqms','resolve','message','353011TQpECB','3318154mhvOnG','2tUIKbl','20RstzpW','2698554BBgEMh','format','4ZBNqBY','now','3668106ezAqVL','9449217TLcsWL','5716635TCkRFW','npx','prettier','--write','success','代码格式化完成','1594351ZLGEKV'];a166_0x4ba4=function(){return _0x2024b0;};return a166_0x4ba4();}import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x18f604){const _0x30fbcc=a166_0x15de,_0x1d36ad=Date[_0x30fbcc(0x1d8)](),_0x15d0a4=a166_0x36b054[_0x30fbcc(0x1e3)](process['cwd'](),_0x18f604);try{logger['info']('format','开始格式化代码',{'projectCode':_0x18f604}),await execa(resolveNpmBin(_0x30fbcc(0x1dc)),[_0x30fbcc(0x1dd),_0x30fbcc(0x1de),'.'],{'cwd':_0x15d0a4});const _0x48724b=Date[_0x30fbcc(0x1d8)]()-_0x1d36ad;logger[_0x30fbcc(0x1df)]('format',_0x30fbcc(0x1e0),_0x48724b,{'projectCode':_0x18f604});}catch(_0x555661){const _0x1c1802=Date[_0x30fbcc(0x1d8)]()-_0x1d36ad;logger['error'](_0x30fbcc(0x1d6),'代码格式化失败',{'projectCode':_0x18f604,'error':_0x555661 instanceof Error?_0x555661[_0x30fbcc(0x1e4)]:String(_0x555661),'duration':_0x1c1802});throw _0x555661;}return formatElapsed(_0x1d36ad);}
@@ -1 +1 @@
1
- (function(_0x46d0e8,_0x49a1f5){const _0x37fd0d=a159_0xdcd4,_0x43e8cc=_0x46d0e8();while(!![]){try{const _0x42c972=parseInt(_0x37fd0d(0x162))/0x1+parseInt(_0x37fd0d(0x15b))/0x2+parseInt(_0x37fd0d(0x15c))/0x3*(parseInt(_0x37fd0d(0x159))/0x4)+-parseInt(_0x37fd0d(0x153))/0x5+parseInt(_0x37fd0d(0x15a))/0x6+parseInt(_0x37fd0d(0x152))/0x7*(parseInt(_0x37fd0d(0x15e))/0x8)+-parseInt(_0x37fd0d(0x161))/0x9*(parseInt(_0x37fd0d(0x15d))/0xa);if(_0x42c972===_0x49a1f5)break;else _0x43e8cc['push'](_0x43e8cc['shift']());}catch(_0x1af927){_0x43e8cc['push'](_0x43e8cc['shift']());}}}(a159_0x326c,0x79364));import a159_0x3377eb from'node:path';import{execa}from'execa';function a159_0xdcd4(_0xab0867,_0x5da34c){_0xab0867=_0xab0867-0x152;const _0x326c06=a159_0x326c();let _0xdcd4bc=_0x326c06[_0xab0867];return _0xdcd4bc;}function a159_0x326c(){const _0x1f5620=['490136TnVzWB','info','install','error','resolve','45052dpNdes','1351385ThzDzC','message','开始安装依赖','npm','cwd','--registry','68TNDvPK','1110588kopfNU','233002WoXSYf','150723cVWsHL','350lovcCo','1072twcsWc','依赖安装完成','now','447813hswJPc'];a159_0x326c=function(){return _0x1f5620;};return a159_0x326c();}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x323a0d){const _0x408c2d=a159_0xdcd4,_0x204f9d=Date['now'](),_0x19ff30=a159_0x3377eb[_0x408c2d(0x166)](process[_0x408c2d(0x157)](),_0x323a0d);try{logger[_0x408c2d(0x163)](_0x408c2d(0x164),_0x408c2d(0x155),{'projectCode':_0x323a0d,'registry':'https://registry.npmmirror.com'}),await execa(resolveNpmBin(_0x408c2d(0x156)),[_0x408c2d(0x164),_0x408c2d(0x158),'https://registry.npmmirror.com'],{'cwd':_0x19ff30});const _0x45aaf6=Date[_0x408c2d(0x160)]()-_0x204f9d;logger['success'](_0x408c2d(0x164),_0x408c2d(0x15f),_0x45aaf6,{'projectCode':_0x323a0d});}catch(_0x57f7b9){const _0x2584d8=Date[_0x408c2d(0x160)]()-_0x204f9d;logger[_0x408c2d(0x165)](_0x408c2d(0x164),'依赖安装失败',{'projectCode':_0x323a0d,'error':_0x57f7b9 instanceof Error?_0x57f7b9[_0x408c2d(0x154)]:String(_0x57f7b9),'duration':_0x2584d8});throw _0x57f7b9;}return formatElapsed(_0x204f9d);}
1
+ (function(_0x427760,_0x4a11d7){const _0x2cebcf=a167_0xbd5e,_0x5758c2=_0x427760();while(!![]){try{const _0x35e940=parseInt(_0x2cebcf(0x1e8))/0x1*(parseInt(_0x2cebcf(0x1dc))/0x2)+parseInt(_0x2cebcf(0x1d4))/0x3+-parseInt(_0x2cebcf(0x1da))/0x4*(-parseInt(_0x2cebcf(0x1de))/0x5)+-parseInt(_0x2cebcf(0x1e5))/0x6*(-parseInt(_0x2cebcf(0x1e9))/0x7)+parseInt(_0x2cebcf(0x1d3))/0x8*(parseInt(_0x2cebcf(0x1df))/0x9)+parseInt(_0x2cebcf(0x1d9))/0xa+-parseInt(_0x2cebcf(0x1d8))/0xb*(parseInt(_0x2cebcf(0x1e2))/0xc);if(_0x35e940===_0x4a11d7)break;else _0x5758c2['push'](_0x5758c2['shift']());}catch(_0x20ef4e){_0x5758c2['push'](_0x5758c2['shift']());}}}(a167_0xaf6d,0xda47c));import a167_0x1c5799 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';function a167_0xbd5e(_0xaed843,_0x8fcd7b){_0xaed843=_0xaed843-0x1d0;const _0xaf6de8=a167_0xaf6d();let _0xbd5e64=_0xaf6de8[_0xaed843];return _0xbd5e64;}export async function installDependencies(_0x2a52a5){const _0x14e49c=a167_0xbd5e,_0x1d899e=Date['now'](),_0x37c4c2=a167_0x1c5799[_0x14e49c(0x1d0)](process[_0x14e49c(0x1e0)](),_0x2a52a5);try{logger[_0x14e49c(0x1d5)](_0x14e49c(0x1d7),_0x14e49c(0x1d2),{'projectCode':_0x2a52a5,'registry':'https://registry.npmmirror.com'}),await execa(resolveNpmBin(_0x14e49c(0x1e1)),['install',_0x14e49c(0x1d6),_0x14e49c(0x1dd)],{'cwd':_0x37c4c2});const _0x411bdd=Date[_0x14e49c(0x1e7)]()-_0x1d899e;logger[_0x14e49c(0x1db)](_0x14e49c(0x1d7),_0x14e49c(0x1e3),_0x411bdd,{'projectCode':_0x2a52a5});}catch(_0x40014b){const _0x560643=Date[_0x14e49c(0x1e7)]()-_0x1d899e;logger[_0x14e49c(0x1e4)]('install',_0x14e49c(0x1d1),{'projectCode':_0x2a52a5,'error':_0x40014b instanceof Error?_0x40014b[_0x14e49c(0x1e6)]:String(_0x40014b),'duration':_0x560643});throw _0x40014b;}return formatElapsed(_0x1d899e);}function a167_0xaf6d(){const _0x2bf25d=['2464lYyYqg','8010740ePnxqh','2008GExOXN','success','120138AtKUDo','https://registry.npmmirror.com','9140nLkgmS','92781JvRraU','cwd','npm','271092zPRGZu','依赖安装完成','error','8657238TduixE','message','now','16aLpSGk','7RxgMHh','resolve','依赖安装失败','开始安装依赖','1336TNIwqo','330450qILMCM','info','--registry','install'];a167_0xaf6d=function(){return _0x2bf25d;};return a167_0xaf6d();}
@@ -1 +1 @@
1
- function a160_0x5bab(){const _0x2a0ee4=['nonInteractive','project','5628762bnSRLo','cookie','11086LOdFOa','string','str','7EnwyMo','project-name','create','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','name','validation','write','args','7125792tRmyxn','trim','appcode','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','bool','Usage:\x20','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','env','22xhWXbY','6306664riuJAr','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','../../commands/project/create/non-interactive.js','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','173427JuPkER','../../commands/project/create/main.js','7636635LuBxxC','13378491cKhBoc','yes'];a160_0x5bab=function(){return _0x2a0ee4;};return a160_0x5bab();}function a160_0x15da(_0x26ede5,_0x56702e){_0x26ede5=_0x26ede5-0x95;const _0x5babf9=a160_0x5bab();let _0x15da53=_0x5babf9[_0x26ede5];return _0x15da53;}const a160_0x46cda0=a160_0x15da;(function(_0x31889d,_0x2c7621){const _0x509adf=a160_0x15da,_0x44fe92=_0x31889d();while(!![]){try{const _0x5bbdfb=-parseInt(_0x509adf(0xa1))/0x1+parseInt(_0x509adf(0xb4))/0x2*(-parseInt(_0x509adf(0x98))/0x3)+parseInt(_0x509adf(0xac))/0x4+-parseInt(_0x509adf(0x9a))/0x5+-parseInt(_0x509adf(0x9f))/0x6*(parseInt(_0x509adf(0xa4))/0x7)+parseInt(_0x509adf(0xb5))/0x8+parseInt(_0x509adf(0x9b))/0x9;if(_0x5bbdfb===_0x2c7621)break;else _0x44fe92['push'](_0x44fe92['shift']());}catch(_0x37c9cf){_0x44fe92['push'](_0x44fe92['shift']());}}}(a160_0x5bab,0xe66e1));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{upgradeApp}from'../../commands/project/upgrade.js';const createFlags=[{'name':'name','type':a160_0x46cda0(0xa2),'description':'Project\x20name'},{'name':a160_0x46cda0(0xb3),'type':a160_0x46cda0(0xa2),'description':'Target\x20environment'},{'name':a160_0x46cda0(0xae),'type':a160_0x46cda0(0xa2),'description':a160_0x46cda0(0xb2)}],upgradeFlags=[{'name':a160_0x46cda0(0x9c),'type':'boolean','description':'Skip\x20confirmation\x20prompt','default':![]}];export const projectDefinitions=[{'service':a160_0x46cda0(0x9e),'command':a160_0x46cda0(0xa6),'description':'Create\x20a\x20new\x20project','risk':a160_0x46cda0(0xaa),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a160_0x46cda0(0xa5),'description':a160_0x46cda0(0xa7),'required':![]}],'flags':createFlags,async 'execute'(_0x3b5c4){const _0x2c3727=a160_0x46cda0,{createApp:_0x5038f6}=await import(_0x2c3727(0x99)),{createProjectNonInteractive:_0xa105c1}=await import(_0x2c3727(0x96)),_0x229da2=_0x3b5c4[_0x2c3727(0xa3)](_0x2c3727(0xa8))[_0x2c3727(0xad)]()||_0x3b5c4[_0x2c3727(0xab)][0x0]?.[_0x2c3727(0xad)](),_0x52c236=_0x3b5c4[_0x2c3727(0xa3)](_0x2c3727(0xb3))||undefined,_0x2dec75=_0x3b5c4[_0x2c3727(0xa3)]('appcode')||undefined;if(_0x3b5c4[_0x2c3727(0x9d)]){if(!_0x229da2)throw CliErrors[_0x2c3727(0xa9)](_0x2c3727(0xaf),_0x2c3727(0xb1)+CLI_BIN_NAME+_0x2c3727(0x95));await _0xa105c1(_0x229da2,_0x52c236,_0x2dec75,_0x3b5c4[_0x2c3727(0xa0)]);}else await _0x5038f6({'projectCode':_0x229da2,'appCode':_0x2dec75,'env':_0x52c236,'cookie':_0x3b5c4[_0x2c3727(0xa0)]});return{'ok':!![]};}},{'service':'project','command':'upgrade','description':a160_0x46cda0(0x97),'risk':a160_0x46cda0(0xaa),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x395c54){const _0x9eca9b=a160_0x46cda0;return await upgradeApp(_0x395c54['nonInteractive'],{'yes':_0x395c54[_0x9eca9b(0xb0)]('yes')}),{'ok':!![]};}}];
1
+ const a168_0x592da4=a168_0x511e;(function(_0x1d7c61,_0x4cf22c){const _0x2e801c=a168_0x511e,_0x3dfb5f=_0x1d7c61();while(!![]){try{const _0x40cdf4=parseInt(_0x2e801c(0x1d0))/0x1*(parseInt(_0x2e801c(0x1bb))/0x2)+parseInt(_0x2e801c(0x1b5))/0x3+parseInt(_0x2e801c(0x1cd))/0x4*(parseInt(_0x2e801c(0x1c6))/0x5)+parseInt(_0x2e801c(0x1c3))/0x6*(parseInt(_0x2e801c(0x1cf))/0x7)+-parseInt(_0x2e801c(0x1c1))/0x8+parseInt(_0x2e801c(0x1d4))/0x9*(parseInt(_0x2e801c(0x1ba))/0xa)+-parseInt(_0x2e801c(0x1c7))/0xb;if(_0x40cdf4===_0x4cf22c)break;else _0x3dfb5f['push'](_0x3dfb5f['shift']());}catch(_0x4254ab){_0x3dfb5f['push'](_0x3dfb5f['shift']());}}}(a168_0x4c9b,0x43561));import{CliErrors}from'../../errors.js';function a168_0x511e(_0x52000c,_0x3c70d3){_0x52000c=_0x52000c-0x1b4;const _0x4c9b82=a168_0x4c9b();let _0x511e38=_0x4c9b82[_0x52000c];return _0x511e38;}function a168_0x4c9b(){const _0x57c515=['7868036nEYbwt','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','bool','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','boolean','Target\x20environment','827608gkNALt','upgrade','1895341PKYJaB','465637sMUDKY','Skip\x20confirmation\x20prompt','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','str','9TzRdTH','trim','env','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','string','452298vBnJIW','Create\x20a\x20new\x20project','create','name','../../commands/project/create/main.js','791950ybLhrm','2XmCIJu','Project\x20name','write','project','nonInteractive','appcode','3623528bWLQmZ','yes','12OViXcU','Usage:\x20','../../commands/project/create/non-interactive.js','5KgkAiz'];a168_0x4c9b=function(){return _0x57c515;};return a168_0x4c9b();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{upgradeApp}from'../../commands/project/upgrade.js';const createFlags=[{'name':'name','type':a168_0x592da4(0x1b4),'description':a168_0x592da4(0x1bc)},{'name':a168_0x592da4(0x1d6),'type':'string','description':a168_0x592da4(0x1cc)},{'name':a168_0x592da4(0x1c0),'type':a168_0x592da4(0x1b4),'description':a168_0x592da4(0x1d7)}],upgradeFlags=[{'name':a168_0x592da4(0x1c2),'type':a168_0x592da4(0x1cb),'description':a168_0x592da4(0x1d1),'default':![]}];export const projectDefinitions=[{'service':'project','command':a168_0x592da4(0x1b7),'description':a168_0x592da4(0x1b6),'risk':a168_0x592da4(0x1bd),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'project-name','description':a168_0x592da4(0x1c8),'required':![]}],'flags':createFlags,async 'execute'(_0x1c3ed7){const _0x26ccf8=a168_0x592da4,{createApp:_0x4dbe9f}=await import(_0x26ccf8(0x1b9)),{createProjectNonInteractive:_0x32ed04}=await import(_0x26ccf8(0x1c5)),_0x2220a8=_0x1c3ed7[_0x26ccf8(0x1d3)](_0x26ccf8(0x1b8))[_0x26ccf8(0x1d5)]()||_0x1c3ed7['args'][0x0]?.[_0x26ccf8(0x1d5)](),_0x406af0=_0x1c3ed7[_0x26ccf8(0x1d3)]('env')||undefined,_0x5d2057=_0x1c3ed7[_0x26ccf8(0x1d3)](_0x26ccf8(0x1c0))||undefined;if(_0x1c3ed7[_0x26ccf8(0x1bf)]){if(!_0x2220a8)throw CliErrors['validation'](_0x26ccf8(0x1d2),_0x26ccf8(0x1c4)+CLI_BIN_NAME+_0x26ccf8(0x1d8));await _0x32ed04(_0x2220a8,_0x406af0,_0x5d2057,_0x1c3ed7['cookie']);}else await _0x4dbe9f({'projectCode':_0x2220a8,'appCode':_0x5d2057,'env':_0x406af0,'cookie':_0x1c3ed7['cookie']});return{'ok':!![]};}},{'service':a168_0x592da4(0x1be),'command':a168_0x592da4(0x1ce),'description':a168_0x592da4(0x1ca),'risk':a168_0x592da4(0x1bd),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x27292d){const _0x313b2c=a168_0x592da4;return await upgradeApp(_0x27292d['nonInteractive'],{'yes':_0x27292d[_0x313b2c(0x1c9)](_0x313b2c(0x1c2))}),{'ok':!![]};}}];
@@ -1 +1 @@
1
- (function(_0x177d03,_0x267507){const _0x3041be=a161_0x5081,_0xdecd8=_0x177d03();while(!![]){try{const _0x48df19=parseInt(_0x3041be(0xa1))/0x1*(parseInt(_0x3041be(0xe8))/0x2)+-parseInt(_0x3041be(0xc2))/0x3+parseInt(_0x3041be(0xf8))/0x4+-parseInt(_0x3041be(0x105))/0x5+parseInt(_0x3041be(0xae))/0x6*(-parseInt(_0x3041be(0x10b))/0x7)+parseInt(_0x3041be(0xcb))/0x8+parseInt(_0x3041be(0xc3))/0x9;if(_0x48df19===_0x267507)break;else _0xdecd8['push'](_0xdecd8['shift']());}catch(_0xa6201e){_0xdecd8['push'](_0xdecd8['shift']());}}}(a161_0xcd73,0xd3691));import a161_0xedf86f from'chalk';import a161_0x35b839 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';function a161_0x5081(_0x1e485b,_0x2cf2b7){_0x1e485b=_0x1e485b-0x90;const _0xcd73d3=a161_0xcd73();let _0x5081ff=_0xcd73d3[_0x1e485b];return _0x5081ff;}const LEGACY_CONFIG_NAMES=CONFIG_NAMES['filter'](_0xf82426=>_0xf82426!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x10d5d8){const _0x59b3e5=a161_0x5081,_0x2128c9=[];for(const _0x587ce3 of Object[_0x59b3e5(0xe9)](CORE_IDE_CONFIGS)){if(_0x587ce3[_0x59b3e5(0xda)])for(const _0x3caf4b of _0x587ce3[_0x59b3e5(0xda)]){_0x2128c9['push'](resolve(_0x10d5d8,_0x3caf4b['path']));}}return _0x2128c9;}function analyse(_0x1e4240){const _0x2e9289=a161_0x5081;let _0x3046d6=null;const _0x721d4a=resolve(_0x1e4240,NEW_CONFIG_NAME),_0x327175=existsSync(_0x721d4a);for(const _0x3e0323 of LEGACY_CONFIG_NAMES){const _0x39a9f2=resolve(_0x1e4240,_0x3e0323);if(existsSync(_0x39a9f2)){const _0x4bb279=readConfigFile(_0x39a9f2),_0x4d8028=Object[_0x2e9289(0x104)](_0x4bb279)[_0x2e9289(0xa2)](_0x19e264=>typeof _0x4bb279[_0x19e264]!==_0x2e9289(0x99));_0x3046d6={'oldPath':_0x39a9f2,'hasNewConfig':_0x327175,'fields':_0x4d8028};break;}}const _0x2e8be4=[],_0x2c1556=resolve(_0x1e4240,_0x2e9289(0x9f));if(existsSync(_0x2c1556))_0x2e8be4[_0x2e9289(0xe4)](_0x2c1556);const _0x53bdfe=resolve(_0x1e4240,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x53bdfe))_0x2e8be4[_0x2e9289(0xe4)](_0x53bdfe);const _0xc41ccd=resolve(_0x1e4240,_0x2e9289(0xa0));if(existsSync(_0xc41ccd))_0x2e8be4['push'](_0xc41ccd);for(const _0x195010 of collectIdeSkillFiles(_0x1e4240)){if(existsSync(_0x195010))_0x2e8be4['push'](_0x195010);}let _0x10fbb5=null;const _0x5f42df=resolve(_0x1e4240,_0x2e9289(0xd5));if(existsSync(_0x5f42df))try{const _0x11e83b=JSON['parse'](readFileSync(_0x5f42df,_0x2e9289(0xab)));if(_0x11e83b?.[_0x2e9289(0xfd)]&&typeof _0x11e83b[_0x2e9289(0xfd)]===_0x2e9289(0xc0)){const _0x5284a7=[];for(const [_0x3286b7,_0x4af255]of Object[_0x2e9289(0x10f)](_0x11e83b['mcpServers'])){const _0x3a099e=_0x4af255;_0x3a099e?.[_0x2e9289(0xd7)]&&Array[_0x2e9289(0xc9)](_0x3a099e[_0x2e9289(0xd7)])&&_0x3a099e[_0x2e9289(0xd7)]['some'](_0x39922f=>typeof _0x39922f===_0x2e9289(0xb8)&&_0x39922f[_0x2e9289(0xb3)](_0x2e9289(0x92)))&&_0x5284a7[_0x2e9289(0xe4)](_0x3286b7);}_0x5284a7[_0x2e9289(0xd2)]>0x0&&(_0x10fbb5={'path':_0x5f42df,'keys':_0x5284a7});}}catch{}const _0x1e7d10=_0x2e8be4[_0x2e9289(0xd2)]>0x0||_0x3046d6!==null;let _0x448038=null;const _0x3dd46a=resolve(_0x1e4240,_0x2e9289(0xcd));if(existsSync(_0x3dd46a))try{const _0x1707f0=JSON[_0x2e9289(0xde)](readFileSync(_0x3dd46a,_0x2e9289(0xab)));for(const _0x58b602 of[_0x2e9289(0xbd),_0x2e9289(0xeb)]){const _0x568d11=_0x1707f0?.[_0x58b602]?.[_0x2e9289(0x9d)];if(typeof _0x568d11===_0x2e9289(0xb8)){_0x568d11!==_0x2e9289(0x101)&&(_0x448038={'pkgPath':_0x3dd46a,'currentVersion':_0x568d11,'field':_0x58b602});break;}}}catch{}return{'configMigration':_0x3046d6,'oldArtifacts':_0x2e8be4,'oldMcpConfig':_0x10fbb5,'needsSkillSwap':_0x1e7d10,'sdkUpgrade':_0x448038};}function printReport(_0x3f953c){const _0x46e378=a161_0x5081,{configMigration:_0x325046,oldArtifacts:_0x479cd9,oldMcpConfig:_0x2d3cba,needsSkillSwap:_0x331eb5}=_0x3f953c;console[_0x46e378(0xf1)](''),console['log'](a161_0xedf86f[_0x46e378(0xaf)](_0x46e378(0x97))),console[_0x46e378(0xf1)]('');_0x325046?(console['log'](a161_0xedf86f[_0x46e378(0xa3)]('Config\x20file:')+('\x20\x20'+a161_0xedf86f['yellow'](_0x325046[_0x46e378(0xe2)]))),console[_0x46e378(0xf1)](_0x46e378(0x9a)+(_0x325046[_0x46e378(0x102)]?a161_0xedf86f[_0x46e378(0xad)](_0x46e378(0xdc)):a161_0xedf86f['gray'](_0x46e378(0x10d)))),console[_0x46e378(0xf1)]('\x20\x20Fields\x20to\x20migrate:\x20'+_0x325046['fields'][_0x46e378(0xd3)](',\x20')),console['log']('\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak')):console[_0x46e378(0xf1)](a161_0xedf86f[_0x46e378(0xa3)]('Config\x20file:')+'\x20\x20'+a161_0xedf86f[_0x46e378(0xa8)](_0x46e378(0xfe)));console['log']('');if(_0x479cd9['length']>0x0){console[_0x46e378(0xf1)](a161_0xedf86f['cyan'](_0x46e378(0xca)));for(const _0x2de8cf of _0x479cd9){console[_0x46e378(0xf1)]('\x20\x20'+a161_0xedf86f[_0x46e378(0x9b)]('FOUND')+'\x20\x20'+_0x2de8cf);}console[_0x46e378(0xf1)](_0x46e378(0xc8));}else console[_0x46e378(0xf1)](a161_0xedf86f['cyan'](_0x46e378(0xca))+'\x20\x20'+a161_0xedf86f[_0x46e378(0xa8)](_0x46e378(0xf6)));console[_0x46e378(0xf1)]('');_0x2d3cba?(console[_0x46e378(0xf1)](a161_0xedf86f[_0x46e378(0xa3)](_0x46e378(0xcf))+('\x20\x20'+a161_0xedf86f[_0x46e378(0x108)](_0x2d3cba[_0x46e378(0xe5)])+_0x46e378(0xac)+_0x2d3cba[_0x46e378(0x104)][_0x46e378(0xd3)](',\x20'))),console[_0x46e378(0xf1)](_0x46e378(0xa4))):console[_0x46e378(0xf1)](a161_0xedf86f[_0x46e378(0xa3)]('MCP\x20config:')+'\x20\x20'+a161_0xedf86f[_0x46e378(0xa8)]('no\x20legacy\x20entry'));console['log'](''),console[_0x46e378(0xf1)](a161_0xedf86f[_0x46e378(0xa3)](_0x46e378(0x96))+('\x20\x20'+(_0x331eb5?a161_0xedf86f['yellow'](_0x46e378(0x9e)):a161_0xedf86f[_0x46e378(0xad)](_0x46e378(0xed)))));_0x331eb5&&console[_0x46e378(0xf1)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x46e378(0xf1)]('');if(_0x3f953c[_0x46e378(0xb6)]){const {currentVersion:_0x255bba,field:_0x2da99d,pkgPath:_0x1751ce}=_0x3f953c[_0x46e378(0xb6)];console['log'](a161_0xedf86f[_0x46e378(0xa3)](_0x46e378(0xf2))+('\x20\x20'+a161_0xedf86f[_0x46e378(0x108)](_0x1751ce))),console[_0x46e378(0xf1)](_0x46e378(0xf0)+_0x2da99d+':\x20'+a161_0xedf86f[_0x46e378(0x108)](_0x255bba)+_0x46e378(0xc6)+a161_0xedf86f['green']('latest')),console['log'](_0x46e378(0xb7));}else console[_0x46e378(0xf1)](a161_0xedf86f[_0x46e378(0xa3)](_0x46e378(0xf2))+'\x20\x20'+a161_0xedf86f[_0x46e378(0xa8)](_0x46e378(0x90)));console[_0x46e378(0xf1)]('');}function execConfigMigration(_0x39c9d4,_0x5d040b){const _0xc86adc=a161_0x5081,{configMigration:_0x4aa2ad}=_0x39c9d4;if(!_0x4aa2ad?.[_0xc86adc(0xe2)])return{'step':0x1,'label':_0xc86adc(0x91),'ok':!![],'detail':_0xc86adc(0xb4)};const _0x549eb9=readConfigFile(_0x4aa2ad['oldPath']),_0x3b435d=resolve(_0x5d040b,NEW_CONFIG_NAME),_0x452aa2=_0x4aa2ad[_0xc86adc(0x102)]?readConfigFile(_0x3b435d):{};for(const [_0x17e52b,_0x361f01]of Object['entries'](_0x549eb9)){!(_0x17e52b in _0x452aa2)&&(_0x452aa2[_0x17e52b]=_0x361f01);}writeConfigFile(_0x3b435d,_0x452aa2);const _0x4aa0eb=_0x4aa2ad['oldPath']+'.bak';return renameSync(_0x4aa2ad[_0xc86adc(0xe2)],_0x4aa0eb),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x4aa2ad['oldPath']+_0xc86adc(0xc6)+_0x3b435d+_0xc86adc(0xf4)+_0x4aa0eb+')'};}function execRemoveOldArtifacts(_0x20d7ab){const _0x28c648=a161_0x5081,_0x3be4c9=[];for(const _0x85aa of _0x20d7ab){try{if(!existsSync(_0x85aa))continue;const _0x363a08=tryStat(_0x85aa);_0x363a08?.[_0x28c648(0xb5)]()?rmSync(_0x85aa,{'recursive':!![],'force':!![]}):unlinkSync(_0x85aa);}catch(_0x10dfde){_0x3be4c9[_0x28c648(0xe4)](_0x85aa+':\x20'+_0x10dfde[_0x28c648(0xf5)]);}}return{'step':0x3,'label':_0x28c648(0x95),'ok':_0x3be4c9[_0x28c648(0xd2)]===0x0,'detail':_0x3be4c9[_0x28c648(0xd2)]>0x0?_0x20d7ab['length']-_0x3be4c9['length']+'/'+_0x20d7ab['length']+_0x28c648(0xc4)+_0x3be4c9[_0x28c648(0xd3)](';\x20')+')':_0x20d7ab[_0x28c648(0xd2)]+_0x28c648(0xa9)};}function execCleanMcp(_0x40a2a4){const _0x4028b4=a161_0x5081;if(!_0x40a2a4[_0x4028b4(0x110)])return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x4028b4(0x106)};try{const _0x53828b=readFileSync(_0x40a2a4[_0x4028b4(0x110)][_0x4028b4(0xe5)],_0x4028b4(0xab)),_0x769dc1=JSON[_0x4028b4(0xde)](_0x53828b);if(_0x769dc1?.[_0x4028b4(0xfd)]&&typeof _0x769dc1['mcpServers']===_0x4028b4(0xc0)){const _0x572e8f=[];for(const [_0x1a4c2c,_0xbcbaa3]of Object[_0x4028b4(0x10f)](_0x769dc1['mcpServers'])){_0xbcbaa3?.[_0x4028b4(0xd7)]&&Array[_0x4028b4(0xc9)](_0xbcbaa3[_0x4028b4(0xd7)])&&_0xbcbaa3[_0x4028b4(0xd7)][_0x4028b4(0xd4)](_0x4d6cac=>typeof _0x4d6cac===_0x4028b4(0xb8)&&_0x4d6cac[_0x4028b4(0xb3)](_0x4028b4(0x92)))&&_0x572e8f['push'](_0x1a4c2c);}for(const _0xb25e59 of _0x572e8f){delete _0x769dc1[_0x4028b4(0xfd)][_0xb25e59];}return _0x572e8f[_0x4028b4(0xd2)]>0x0&&writeFileSync(_0x40a2a4['oldMcpConfig'][_0x4028b4(0xe5)],JSON[_0x4028b4(0xe6)](_0x769dc1,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x4028b4(0xce)+_0x572e8f[_0x4028b4(0xd3)](',\x20')+_0x4028b4(0x103)+_0x40a2a4[_0x4028b4(0x110)][_0x4028b4(0xe5)]};}return{'step':0x4,'label':_0x4028b4(0x9c),'ok':!![],'detail':_0x4028b4(0xc1)};}catch(_0x4621dc){return{'step':0x4,'label':_0x4028b4(0x9c),'ok':![],'detail':_0x4621dc[_0x4028b4(0xf5)]};}}function execSkillsRemove(_0x537f7c,_0x4af115){const _0x26e289=a161_0x5081,_0x5a7f79=runNpxSkillsRemove(_0x537f7c,{'stdio':'inherit','yes':_0x4af115});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x5a7f79['ok'],'detail':_0x5a7f79['ok']?_0x26e289(0x10c):_0x5a7f79[_0x26e289(0xaa)]??_0x26e289(0x107)+_0x5a7f79[_0x26e289(0xfb)]};}function execSkillsAdd(_0x3d6020,_0x5ce3d8){const _0xbac686=a161_0x5081,_0x73d2df=runNpxSkillsAddGlobal(_0x3d6020,_0xbac686(0x100),{'stdio':_0xbac686(0xfa),'yes':_0x5ce3d8});return{'step':0x6,'label':'Install\x20new\x20skill','ok':_0x73d2df['ok'],'detail':_0x73d2df['ok']?_0xbac686(0x10a):_0x73d2df['error']??'exit\x20'+_0x73d2df['status']};}function execUpgradeSdk(_0x385552){const _0x2411ba=a161_0x5081;if(!_0x385552['sdkUpgrade'])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x2411ba(0xd8)};const {pkgPath:_0x17c9de,currentVersion:_0x303870,field:_0x4ba727}=_0x385552[_0x2411ba(0xb6)];try{const _0x1a1307=readFileSync(_0x17c9de,_0x2411ba(0xab)),_0x3f3935=JSON[_0x2411ba(0xde)](_0x1a1307);return _0x3f3935[_0x4ba727][_0x2411ba(0x9d)]=_0x2411ba(0x101),writeFileSync(_0x17c9de,JSON[_0x2411ba(0xe6)](_0x3f3935,null,0x2)+'\x0a',_0x2411ba(0xab)),{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x4ba727+_0x2411ba(0xd9)+_0x303870+'\x20→\x20latest'};}catch(_0xe05918){return{'step':0x7,'label':_0x2411ba(0xe7),'ok':![],'detail':_0xe05918[_0x2411ba(0xf5)]};}}function a161_0xcd73(){const _0x3be7c0=['start','\x20→\x20','failed','\x20\x20Action:\x20delete','isArray','Legacy\x20artifacts:','11683448SPGroD','Remove\x20.lovrabet/','package.json','removed\x20','MCP\x20config:','FAIL','succeed','length','join','some','.cursor/mcp.json','detail','args','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','[\x22@lovrabet/sdk\x22]:\x20','files','fail','already\x20exists\x20(will\x20merge)','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','parse','label','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','done','oldPath','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','push','path','stringify','Upgrade\x20@lovrabet/sdk','881218LmJLyG','values','Step\x206/7:\x20Installing\x20new\x20skill...','devDependencies','Step\x204/7:\x20MCP\x20config\x20—\x20','not\x20needed','\x20\x20npm\x20install','Step\x201/7:\x20Config\x20migration\x20—\x20','\x20\x20Current\x20version\x20in\x20','log','@lovrabet/sdk:','step','\x20(backup:\x20','message','none\x20found','Upgrade\x20cancelled.','2081444TDhNaK','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','inherit','status','Proceed\x20with\x20upgrade?','mcpServers','no\x20legacy\x20config\x20found','Step\x204/7:\x20Cleaning\x20MCP\x20config...','lovrabet/rabetbase','latest','hasNewConfig','\x20from\x20','keys','6967140ZaFCKK','skipped','exit\x20','yellow','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','lovrabet/rabetbase\x20installed\x20globally','9793119qoWjXx','lovrabet/lovrabet-skill\x20removed','not\x20found\x20(will\x20create)','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','entries','oldMcpConfig','not\x20found\x20or\x20already\x20at\x20latest','Config\x20migration','@lovrabet/dataset-mcp-server','configMigration','cwd','Remove\x20legacy\x20artifacts','Skill\x20swap:','===\x20Upgrade\x20Analysis\x20===','Step\x205/7:\x20Removing\x20old\x20skill...','undefined','\x20\x20New\x20config\x20(.rabetbase.json):\x20','red','Clean\x20MCP\x20config','@lovrabet/sdk','needed','.lovrabet','.claude/skills/lovrabet','2VcyNXM','filter','cyan','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','yes','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','gray','\x20removed','error','utf8','\x20→\x20keys:\x20','green','6xAsRSY','bold','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','\x20\x20#\x20or','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','includes','skipped\x20(no\x20legacy\x20config)','isDirectory','sdkUpgrade','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','string','white','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','info','needsSkillSwap','dependencies','===\x20Upgrade\x20Summary\x20===','Upgrade\x20completed\x20successfully!','object','no\x20matching\x20entry\x20found','4080462qUwXPR','19408734kVwGrM','\x20removed\x20('];a161_0xcd73=function(){return _0x3be7c0;};return a161_0xcd73();}function tryStat(_0x3b7a3d){try{return statSync(_0x3b7a3d);}catch{return undefined;}}function printSummary(_0x44fd60){const _0x504504=a161_0x5081;console[_0x504504(0xf1)](''),console['log'](a161_0xedf86f['bold'](_0x504504(0xbe))),console[_0x504504(0xf1)]('');for(const _0x132d6f of _0x44fd60){const _0x45fe14=_0x132d6f['ok']?a161_0xedf86f[_0x504504(0xad)]('OK'):a161_0xedf86f[_0x504504(0x9b)](_0x504504(0xd0));console[_0x504504(0xf1)]('\x20\x20'+_0x45fe14+'\x20\x20Step\x20'+_0x132d6f[_0x504504(0xf3)]+':\x20'+_0x132d6f[_0x504504(0xdf)]);if(_0x132d6f[_0x504504(0xd6)])console['log']('\x20\x20\x20\x20\x20\x20\x20'+a161_0xedf86f['gray'](_0x132d6f[_0x504504(0xd6)]));}console['log']('');}export async function upgradeApp(_0x58edeb,_0x15a6ed){const _0x4e6a4b=a161_0x5081,_0x3294fe=process[_0x4e6a4b(0x94)](),_0x16c080=analyse(_0x3294fe),_0x53ca3a=!_0x16c080[_0x4e6a4b(0x93)]&&_0x16c080['oldArtifacts']['length']===0x0&&!_0x16c080[_0x4e6a4b(0x110)]&&!_0x16c080[_0x4e6a4b(0xbc)]&&!_0x16c080[_0x4e6a4b(0xb6)];if(_0x53ca3a){console[_0x4e6a4b(0xf1)](a161_0xedf86f[_0x4e6a4b(0xad)]('No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.'));return;}printReport(_0x16c080);const _0x1324e8=!!(_0x15a6ed[_0x4e6a4b(0xa6)]||_0x15a6ed['Y']||_0x58edeb);if(!_0x1324e8)try{const _0x59f098=await askConfirm(_0x4e6a4b(0xfc));if(!_0x59f098){console[_0x4e6a4b(0xf1)](a161_0xedf86f[_0x4e6a4b(0xa8)](_0x4e6a4b(0xf7)));return;}}catch(_0x2faeb7){if(_0x2faeb7?.['message']==='CANCEL'){console['log'](a161_0xedf86f['gray'](_0x4e6a4b(0xf7)));return;}throw _0x2faeb7;}const _0x47e9b5=[],_0x3e9774=a161_0x35b839({'text':'Step\x201/7:\x20Migrating\x20config...','color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)](),_0x2b2bd1=execConfigMigration(_0x16c080,_0x3294fe);_0x47e9b5[_0x4e6a4b(0xe4)](_0x2b2bd1),_0x3e9774[_0x2b2bd1['ok']?'succeed':_0x4e6a4b(0xdb)](_0x4e6a4b(0xef)+(_0x2b2bd1['detail']??(_0x2b2bd1['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7))));const _0x2fe313=resolve(_0x3294fe,'.lovrabet'),_0x5f45f6=a161_0x35b839({'text':_0x4e6a4b(0xb0),'color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)]();if(existsSync(_0x2fe313))try{rmSync(_0x2fe313,{'recursive':!![],'force':!![]}),_0x5f45f6[_0x4e6a4b(0xd1)](_0x4e6a4b(0xa7)),_0x47e9b5['push']({'step':0x2,'label':_0x4e6a4b(0xcc),'ok':!![]});}catch(_0x1632f0){_0x5f45f6[_0x4e6a4b(0xdb)](_0x4e6a4b(0xb2)+_0x1632f0[_0x4e6a4b(0xf5)]),_0x47e9b5['push']({'step':0x2,'label':_0x4e6a4b(0xcc),'ok':![],'detail':_0x1632f0[_0x4e6a4b(0xf5)]});}else _0x5f45f6[_0x4e6a4b(0xbb)](_0x4e6a4b(0xdd)),_0x47e9b5[_0x4e6a4b(0xe4)]({'step':0x2,'label':_0x4e6a4b(0xcc),'ok':!![],'detail':_0x4e6a4b(0x106)});const _0x197ed7=a161_0x35b839({'text':_0x4e6a4b(0xba),'color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)](),_0x3d59da=execRemoveOldArtifacts(_0x16c080['oldArtifacts']);_0x47e9b5[_0x4e6a4b(0xe4)](_0x3d59da),_0x197ed7[_0x3d59da['ok']?_0x4e6a4b(0xd1):_0x4e6a4b(0xdb)](_0x4e6a4b(0xe0)+(_0x3d59da[_0x4e6a4b(0xd6)]??(_0x3d59da['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7))));const _0x42db00=a161_0x35b839({'text':_0x4e6a4b(0xff),'color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)](),_0x295650=execCleanMcp(_0x16c080);_0x47e9b5[_0x4e6a4b(0xe4)](_0x295650),_0x42db00[_0x295650['ok']?_0x4e6a4b(0xd1):_0x4e6a4b(0xdb)](_0x4e6a4b(0xec)+(_0x295650[_0x4e6a4b(0xd6)]??(_0x295650['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7))));const _0x5454de=a161_0x35b839({'text':_0x4e6a4b(0x98),'color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)](),_0x359d6a=execSkillsRemove(_0x3294fe,_0x1324e8);_0x47e9b5[_0x4e6a4b(0xe4)](_0x359d6a),_0x5454de[_0x359d6a['ok']?_0x4e6a4b(0xd1):'fail'](_0x4e6a4b(0x109)+(_0x359d6a[_0x4e6a4b(0xd6)]??(_0x359d6a['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7))));const _0x1caab0=a161_0x35b839({'text':_0x4e6a4b(0xea),'color':_0x4e6a4b(0xa3)})[_0x4e6a4b(0xc5)](),_0x1a6825=execSkillsAdd(_0x3294fe,_0x1324e8);_0x47e9b5['push'](_0x1a6825),_0x1caab0[_0x1a6825['ok']?'succeed':_0x4e6a4b(0xdb)](_0x4e6a4b(0xf9)+(_0x1a6825[_0x4e6a4b(0xd6)]??(_0x1a6825['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7))));const _0x51e723=a161_0x35b839({'text':_0x4e6a4b(0xe3),'color':_0x4e6a4b(0xa3)})['start'](),_0x2a2583=execUpgradeSdk(_0x16c080);_0x47e9b5[_0x4e6a4b(0xe4)](_0x2a2583),_0x51e723[_0x2a2583['ok']?_0x4e6a4b(0xd1):_0x4e6a4b(0xdb)](_0x4e6a4b(0x10e)+(_0x2a2583['detail']??(_0x2a2583['ok']?_0x4e6a4b(0xe1):_0x4e6a4b(0xc7)))),printSummary(_0x47e9b5);const _0x52d2bd=_0x47e9b5[_0x4e6a4b(0xd4)](_0x2bbab3=>!_0x2bbab3['ok']);_0x52d2bd?console[_0x4e6a4b(0xf1)](a161_0xedf86f[_0x4e6a4b(0x108)]('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x4e6a4b(0xf1)](a161_0xedf86f[_0x4e6a4b(0xad)](_0x4e6a4b(0xbf))),_0x2a2583['ok']&&_0x16c080[_0x4e6a4b(0xb6)]&&(console[_0x4e6a4b(0xf1)](''),console[_0x4e6a4b(0xf1)](a161_0xedf86f['bold'][_0x4e6a4b(0xa3)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console['log'](a161_0xedf86f[_0x4e6a4b(0xa3)](_0x4e6a4b(0xa5))),console[_0x4e6a4b(0xf1)](''),console[_0x4e6a4b(0xf1)](a161_0xedf86f['white'](_0x4e6a4b(0xee))),console[_0x4e6a4b(0xf1)](a161_0xedf86f[_0x4e6a4b(0xb9)](_0x4e6a4b(0xb1))),console['log'](a161_0xedf86f['white']('\x20\x20bun\x20install')),console[_0x4e6a4b(0xf1)](''));}
1
+ const a169_0x398952=a169_0x80d2;(function(_0x46a45f,_0x8b99ce){const _0x11c804=a169_0x80d2,_0xdc7f9f=_0x46a45f();while(!![]){try{const _0x4d2df9=-parseInt(_0x11c804(0xc9))/0x1+-parseInt(_0x11c804(0x87))/0x2*(-parseInt(_0x11c804(0x9f))/0x3)+parseInt(_0x11c804(0x8a))/0x4+parseInt(_0x11c804(0x8d))/0x5+-parseInt(_0x11c804(0x66))/0x6*(parseInt(_0x11c804(0x8e))/0x7)+-parseInt(_0x11c804(0x85))/0x8*(-parseInt(_0x11c804(0x7c))/0x9)+-parseInt(_0x11c804(0xc7))/0xa;if(_0x4d2df9===_0x8b99ce)break;else _0xdc7f9f['push'](_0xdc7f9f['shift']());}catch(_0x224d0a){_0xdc7f9f['push'](_0xdc7f9f['shift']());}}}(a169_0x1b53,0xceeab));import a169_0x20efdb from'chalk';import a169_0x2ab5a5 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[a169_0x398952(0x9d)](_0x261ca0=>_0x261ca0!==NEW_CONFIG_NAME);function a169_0x80d2(_0x378fd3,_0x3127ec){_0x378fd3=_0x378fd3-0x64;const _0x1b5379=a169_0x1b53();let _0x80d283=_0x1b5379[_0x378fd3];return _0x80d283;}function collectIdeSkillFiles(_0x3b70e8){const _0x48f094=a169_0x398952,_0x46bd2c=[];for(const _0x4a4938 of Object[_0x48f094(0x6b)](CORE_IDE_CONFIGS)){if(_0x4a4938[_0x48f094(0xd7)])for(const _0x5a24b8 of _0x4a4938['files']){_0x46bd2c['push'](resolve(_0x3b70e8,_0x5a24b8[_0x48f094(0xb7)]));}}return _0x46bd2c;}function analyse(_0xa0bfe5){const _0x1e0313=a169_0x398952;let _0x29c1da=null;const _0x114d3c=resolve(_0xa0bfe5,NEW_CONFIG_NAME),_0x49633f=existsSync(_0x114d3c);for(const _0x5ce595 of LEGACY_CONFIG_NAMES){const _0x39ab37=resolve(_0xa0bfe5,_0x5ce595);if(existsSync(_0x39ab37)){const _0x71cf51=readConfigFile(_0x39ab37),_0xf00720=Object['keys'](_0x71cf51)[_0x1e0313(0x9d)](_0x1f6f9e=>typeof _0x71cf51[_0x1f6f9e]!=='undefined');_0x29c1da={'oldPath':_0x39ab37,'hasNewConfig':_0x49633f,'fields':_0xf00720};break;}}const _0x34630e=[],_0x102dcf=resolve(_0xa0bfe5,_0x1e0313(0xc0));if(existsSync(_0x102dcf))_0x34630e[_0x1e0313(0xd8)](_0x102dcf);const _0x141a2b=resolve(_0xa0bfe5,_0x1e0313(0x6e));if(existsSync(_0x141a2b))_0x34630e[_0x1e0313(0xd8)](_0x141a2b);const _0x3648ea=resolve(_0xa0bfe5,_0x1e0313(0x99));if(existsSync(_0x3648ea))_0x34630e[_0x1e0313(0xd8)](_0x3648ea);for(const _0x45a73b of collectIdeSkillFiles(_0xa0bfe5)){if(existsSync(_0x45a73b))_0x34630e[_0x1e0313(0xd8)](_0x45a73b);}let _0x9a783d=null;const _0x5eb243=resolve(_0xa0bfe5,_0x1e0313(0x7d));if(existsSync(_0x5eb243))try{const _0x385f81=JSON[_0x1e0313(0xe0)](readFileSync(_0x5eb243,_0x1e0313(0x79)));if(_0x385f81?.[_0x1e0313(0xce)]&&typeof _0x385f81['mcpServers']===_0x1e0313(0xcb)){const _0x123ac5=[];for(const [_0x3bb510,_0x274f46]of Object['entries'](_0x385f81['mcpServers'])){const _0x4535fe=_0x274f46;_0x4535fe?.[_0x1e0313(0xa5)]&&Array[_0x1e0313(0x75)](_0x4535fe[_0x1e0313(0xa5)])&&_0x4535fe['args'][_0x1e0313(0xa6)](_0x4e0d61=>typeof _0x4e0d61===_0x1e0313(0xdb)&&_0x4e0d61[_0x1e0313(0xa2)](_0x1e0313(0xcc)))&&_0x123ac5['push'](_0x3bb510);}_0x123ac5[_0x1e0313(0xa1)]>0x0&&(_0x9a783d={'path':_0x5eb243,'keys':_0x123ac5});}}catch{}const _0x11b00d=_0x34630e[_0x1e0313(0xa1)]>0x0||_0x29c1da!==null;let _0x125780=null;const _0x280781=resolve(_0xa0bfe5,_0x1e0313(0x9c));if(existsSync(_0x280781))try{const _0x3a30af=JSON[_0x1e0313(0xe0)](readFileSync(_0x280781,_0x1e0313(0x79)));for(const _0x226d3e of[_0x1e0313(0x6f),_0x1e0313(0x90)]){const _0x38edef=_0x3a30af?.[_0x226d3e]?.[_0x1e0313(0x81)];if(typeof _0x38edef===_0x1e0313(0xdb)){_0x38edef!==_0x1e0313(0xca)&&(_0x125780={'pkgPath':_0x280781,'currentVersion':_0x38edef,'field':_0x226d3e});break;}}}catch{}return{'configMigration':_0x29c1da,'oldArtifacts':_0x34630e,'oldMcpConfig':_0x9a783d,'needsSkillSwap':_0x11b00d,'sdkUpgrade':_0x125780};}function printReport(_0x529941){const _0x57a9c5=a169_0x398952,{configMigration:_0x206566,oldArtifacts:_0x454d17,oldMcpConfig:_0x561104,needsSkillSwap:_0x12464d}=_0x529941;console[_0x57a9c5(0xaa)](''),console[_0x57a9c5(0xaa)](a169_0x20efdb[_0x57a9c5(0xd5)](_0x57a9c5(0xd6))),console[_0x57a9c5(0xaa)]('');_0x206566?(console[_0x57a9c5(0xaa)](a169_0x20efdb[_0x57a9c5(0xb6)](_0x57a9c5(0x7f))+('\x20\x20'+a169_0x20efdb[_0x57a9c5(0xb5)](_0x206566[_0x57a9c5(0xbd)]))),console[_0x57a9c5(0xaa)](_0x57a9c5(0xa8)+(_0x206566[_0x57a9c5(0x97)]?a169_0x20efdb[_0x57a9c5(0x67)]('already\x20exists\x20(will\x20merge)'):a169_0x20efdb[_0x57a9c5(0x95)](_0x57a9c5(0xa9)))),console[_0x57a9c5(0xaa)](_0x57a9c5(0x77)+_0x206566[_0x57a9c5(0xc4)][_0x57a9c5(0x76)](',\x20')),console[_0x57a9c5(0xaa)](_0x57a9c5(0xd3))):console[_0x57a9c5(0xaa)](a169_0x20efdb['cyan'](_0x57a9c5(0x7f))+'\x20\x20'+a169_0x20efdb[_0x57a9c5(0x95)](_0x57a9c5(0x70)));console[_0x57a9c5(0xaa)]('');if(_0x454d17['length']>0x0){console[_0x57a9c5(0xaa)](a169_0x20efdb['cyan'](_0x57a9c5(0x83)));for(const _0xe940a9 of _0x454d17){console[_0x57a9c5(0xaa)]('\x20\x20'+a169_0x20efdb[_0x57a9c5(0x9e)]('FOUND')+'\x20\x20'+_0xe940a9);}console[_0x57a9c5(0xaa)](_0x57a9c5(0x65));}else console[_0x57a9c5(0xaa)](a169_0x20efdb[_0x57a9c5(0xb6)]('Legacy\x20artifacts:')+'\x20\x20'+a169_0x20efdb[_0x57a9c5(0x95)]('none\x20found'));console[_0x57a9c5(0xaa)]('');_0x561104?(console['log'](a169_0x20efdb[_0x57a9c5(0xb6)](_0x57a9c5(0xb8))+('\x20\x20'+a169_0x20efdb[_0x57a9c5(0xb5)](_0x561104[_0x57a9c5(0xb7)])+_0x57a9c5(0xba)+_0x561104[_0x57a9c5(0xd9)][_0x57a9c5(0x76)](',\x20'))),console[_0x57a9c5(0xaa)]('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console[_0x57a9c5(0xaa)](a169_0x20efdb[_0x57a9c5(0xb6)](_0x57a9c5(0xb8))+'\x20\x20'+a169_0x20efdb[_0x57a9c5(0x95)](_0x57a9c5(0x64)));console[_0x57a9c5(0xaa)](''),console[_0x57a9c5(0xaa)](a169_0x20efdb['cyan']('Skill\x20swap:')+('\x20\x20'+(_0x12464d?a169_0x20efdb[_0x57a9c5(0xb5)](_0x57a9c5(0x80)):a169_0x20efdb[_0x57a9c5(0x67)](_0x57a9c5(0xab)))));_0x12464d&&console[_0x57a9c5(0xaa)]('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x57a9c5(0xaa)]('');if(_0x529941[_0x57a9c5(0x91)]){const {currentVersion:_0x5e7e6d,field:_0x13a7ad,pkgPath:_0xbdf5e8}=_0x529941['sdkUpgrade'];console['log'](a169_0x20efdb[_0x57a9c5(0xb6)](_0x57a9c5(0xad))+('\x20\x20'+a169_0x20efdb['yellow'](_0xbdf5e8))),console[_0x57a9c5(0xaa)](_0x57a9c5(0x96)+_0x13a7ad+':\x20'+a169_0x20efdb[_0x57a9c5(0xb5)](_0x5e7e6d)+_0x57a9c5(0xcf)+a169_0x20efdb[_0x57a9c5(0x67)]('latest')),console[_0x57a9c5(0xaa)](_0x57a9c5(0xa0));}else console[_0x57a9c5(0xaa)](a169_0x20efdb[_0x57a9c5(0xb6)](_0x57a9c5(0xad))+'\x20\x20'+a169_0x20efdb[_0x57a9c5(0x95)](_0x57a9c5(0x7b)));console['log']('');}function execConfigMigration(_0x5a91f0,_0x1aa302){const _0x313140=a169_0x398952,{configMigration:_0x1846b5}=_0x5a91f0;if(!_0x1846b5?.[_0x313140(0xbd)])return{'step':0x1,'label':_0x313140(0xde),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x53f719=readConfigFile(_0x1846b5[_0x313140(0xbd)]),_0x25f184=resolve(_0x1aa302,NEW_CONFIG_NAME),_0x270815=_0x1846b5[_0x313140(0x97)]?readConfigFile(_0x25f184):{};for(const [_0xbae0e8,_0x2dea27]of Object[_0x313140(0x86)](_0x53f719)){!(_0xbae0e8 in _0x270815)&&(_0x270815[_0xbae0e8]=_0x2dea27);}writeConfigFile(_0x25f184,_0x270815);const _0x49b125=_0x1846b5[_0x313140(0xbd)]+_0x313140(0x92);return renameSync(_0x1846b5[_0x313140(0xbd)],_0x49b125),{'step':0x1,'label':_0x313140(0xde),'ok':!![],'detail':_0x1846b5['oldPath']+_0x313140(0xcf)+_0x25f184+'\x20(backup:\x20'+_0x49b125+')'};}function a169_0x1b53(){const _0x4161e0=['Step\x201/7:\x20Migrating\x20config...','26999270xRpcWR','[\x22@lovrabet/sdk\x22]:\x20','79397MNfYvx','latest','object','@lovrabet/dataset-mcp-server','exit\x20','mcpServers','\x20→\x20','Step\x206/7:\x20Installing\x20new\x20skill...','Step\x205/7:\x20Removing\x20old\x20skill...','oldMcpConfig','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','stringify','bold','===\x20Upgrade\x20Analysis\x20===','files','push','keys','fail','string','error','needsSkillSwap','Config\x20migration','label','parse','no\x20legacy\x20entry','\x20\x20Action:\x20delete','18kSvKyp','green','failed','Remove\x20old\x20skill','Remove\x20legacy\x20artifacts','values','\x20removed\x20(','CANCEL','.cursor/rules/lovrabet_rules.mdc','dependencies','no\x20legacy\x20config\x20found','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','start','\x20from\x20','removed\x20','isArray','join','\x20\x20Fields\x20to\x20migrate:\x20','lovrabet/rabetbase','utf8','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','not\x20found\x20or\x20already\x20at\x20latest','59337KQLsZC','.cursor/mcp.json','\x20\x20npm\x20install','Config\x20file:','needed','@lovrabet/sdk','Step\x201/7:\x20Config\x20migration\x20—\x20','Legacy\x20artifacts:','no\x20matching\x20entry\x20found','1768aRdWsL','entries','4448aYLAhN','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','2838248LGKdCl','yes','Upgrade\x20@lovrabet/sdk','8298855XqIbZq','2110591cXICWG','Upgrade\x20cancelled.','devDependencies','sdkUpgrade','.bak','Clean\x20MCP\x20config','succeed','gray','\x20\x20Current\x20version\x20in\x20','hasNewConfig','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','.claude/skills/lovrabet','message','Step\x204/7:\x20MCP\x20config\x20—\x20','package.json','filter','red','951AfZSjz','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','length','includes','Remove\x20.lovrabet/','info','args','some','white','\x20\x20New\x20config\x20(.rabetbase.json):\x20','not\x20found\x20(will\x20create)','log','not\x20needed','status','@lovrabet/sdk:','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','lovrabet/rabetbase\x20installed\x20globally','detail','Upgrade\x20completed\x20successfully!','skipped','isDirectory','inherit','yellow','cyan','path','MCP\x20config:','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','\x20→\x20keys:\x20','\x20\x20#\x20or','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','oldPath','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','.lovrabet','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','\x20\x20\x20\x20\x20\x20\x20','done','fields','Step\x207/7:\x20@lovrabet/sdk\x20—\x20'];a169_0x1b53=function(){return _0x4161e0;};return a169_0x1b53();}function execRemoveOldArtifacts(_0x5c3dd1){const _0xa0ac2e=a169_0x398952,_0x32fb33=[];for(const _0x415945 of _0x5c3dd1){try{if(!existsSync(_0x415945))continue;const _0x56ec9a=tryStat(_0x415945);_0x56ec9a?.[_0xa0ac2e(0xb3)]()?rmSync(_0x415945,{'recursive':!![],'force':!![]}):unlinkSync(_0x415945);}catch(_0x3467db){_0x32fb33[_0xa0ac2e(0xd8)](_0x415945+':\x20'+_0x3467db[_0xa0ac2e(0x9a)]);}}return{'step':0x3,'label':_0xa0ac2e(0x6a),'ok':_0x32fb33[_0xa0ac2e(0xa1)]===0x0,'detail':_0x32fb33[_0xa0ac2e(0xa1)]>0x0?_0x5c3dd1['length']-_0x32fb33[_0xa0ac2e(0xa1)]+'/'+_0x5c3dd1[_0xa0ac2e(0xa1)]+_0xa0ac2e(0x6c)+_0x32fb33[_0xa0ac2e(0x76)](';\x20')+')':_0x5c3dd1[_0xa0ac2e(0xa1)]+'\x20removed'};}function execCleanMcp(_0x5a7eff){const _0x1bdbd4=a169_0x398952;if(!_0x5a7eff[_0x1bdbd4(0xd2)])return{'step':0x4,'label':_0x1bdbd4(0x93),'ok':!![],'detail':'skipped'};try{const _0x2b8ab4=readFileSync(_0x5a7eff[_0x1bdbd4(0xd2)][_0x1bdbd4(0xb7)],_0x1bdbd4(0x79)),_0x39f8e1=JSON[_0x1bdbd4(0xe0)](_0x2b8ab4);if(_0x39f8e1?.[_0x1bdbd4(0xce)]&&typeof _0x39f8e1[_0x1bdbd4(0xce)]===_0x1bdbd4(0xcb)){const _0x2d07c6=[];for(const [_0x4987eb,_0x56ea8d]of Object['entries'](_0x39f8e1[_0x1bdbd4(0xce)])){_0x56ea8d?.[_0x1bdbd4(0xa5)]&&Array[_0x1bdbd4(0x75)](_0x56ea8d['args'])&&_0x56ea8d['args']['some'](_0x40f115=>typeof _0x40f115===_0x1bdbd4(0xdb)&&_0x40f115['includes'](_0x1bdbd4(0xcc)))&&_0x2d07c6[_0x1bdbd4(0xd8)](_0x4987eb);}for(const _0x54b315 of _0x2d07c6){delete _0x39f8e1['mcpServers'][_0x54b315];}return _0x2d07c6[_0x1bdbd4(0xa1)]>0x0&&writeFileSync(_0x5a7eff[_0x1bdbd4(0xd2)][_0x1bdbd4(0xb7)],JSON[_0x1bdbd4(0xd4)](_0x39f8e1,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x1bdbd4(0x93),'ok':!![],'detail':_0x1bdbd4(0x74)+_0x2d07c6[_0x1bdbd4(0x76)](',\x20')+_0x1bdbd4(0x73)+_0x5a7eff[_0x1bdbd4(0xd2)][_0x1bdbd4(0xb7)]};}return{'step':0x4,'label':_0x1bdbd4(0x93),'ok':!![],'detail':_0x1bdbd4(0x84)};}catch(_0x219494){return{'step':0x4,'label':_0x1bdbd4(0x93),'ok':![],'detail':_0x219494[_0x1bdbd4(0x9a)]};}}function execSkillsRemove(_0x1fc7cc,_0x46d9c2){const _0x529232=a169_0x398952,_0xb468aa=runNpxSkillsRemove(_0x1fc7cc,{'stdio':_0x529232(0xb4),'yes':_0x46d9c2});return{'step':0x5,'label':_0x529232(0x69),'ok':_0xb468aa['ok'],'detail':_0xb468aa['ok']?'lovrabet/lovrabet-skill\x20removed':_0xb468aa[_0x529232(0xdc)]??'exit\x20'+_0xb468aa[_0x529232(0xac)]};}function execSkillsAdd(_0x6f8a9e,_0x2d42c1){const _0x1b622d=a169_0x398952,_0x293d3a=runNpxSkillsAddGlobal(_0x6f8a9e,_0x1b622d(0x78),{'stdio':_0x1b622d(0xb4),'yes':_0x2d42c1});return{'step':0x6,'label':'Install\x20new\x20skill','ok':_0x293d3a['ok'],'detail':_0x293d3a['ok']?_0x1b622d(0xaf):_0x293d3a[_0x1b622d(0xdc)]??_0x1b622d(0xcd)+_0x293d3a[_0x1b622d(0xac)]};}function execUpgradeSdk(_0x3425ee){const _0x37d603=a169_0x398952;if(!_0x3425ee[_0x37d603(0x91)])return{'step':0x7,'label':_0x37d603(0x8c),'ok':!![],'detail':_0x37d603(0xb9)};const {pkgPath:_0x35d8fc,currentVersion:_0x33060b,field:_0x410457}=_0x3425ee[_0x37d603(0x91)];try{const _0x5c0460=readFileSync(_0x35d8fc,_0x37d603(0x79)),_0x11be56=JSON[_0x37d603(0xe0)](_0x5c0460);return _0x11be56[_0x410457][_0x37d603(0x81)]='latest',writeFileSync(_0x35d8fc,JSON[_0x37d603(0xd4)](_0x11be56,null,0x2)+'\x0a',_0x37d603(0x79)),{'step':0x7,'label':_0x37d603(0x8c),'ok':!![],'detail':_0x410457+_0x37d603(0xc8)+_0x33060b+'\x20→\x20latest'};}catch(_0x3f636f){return{'step':0x7,'label':_0x37d603(0x8c),'ok':![],'detail':_0x3f636f['message']};}}function tryStat(_0x4f7820){try{return statSync(_0x4f7820);}catch{return undefined;}}function printSummary(_0x35c3df){const _0x4dcc6d=a169_0x398952;console[_0x4dcc6d(0xaa)](''),console[_0x4dcc6d(0xaa)](a169_0x20efdb[_0x4dcc6d(0xd5)]('===\x20Upgrade\x20Summary\x20===')),console[_0x4dcc6d(0xaa)]('');for(const _0x36c4ba of _0x35c3df){const _0x37afa2=_0x36c4ba['ok']?a169_0x20efdb[_0x4dcc6d(0x67)]('OK'):a169_0x20efdb[_0x4dcc6d(0x9e)]('FAIL');console[_0x4dcc6d(0xaa)]('\x20\x20'+_0x37afa2+'\x20\x20Step\x20'+_0x36c4ba['step']+':\x20'+_0x36c4ba[_0x4dcc6d(0xdf)]);if(_0x36c4ba[_0x4dcc6d(0xb0)])console[_0x4dcc6d(0xaa)](_0x4dcc6d(0xc2)+a169_0x20efdb[_0x4dcc6d(0x95)](_0x36c4ba[_0x4dcc6d(0xb0)]));}console[_0x4dcc6d(0xaa)]('');}export async function upgradeApp(_0x21c011,_0x4d8a51){const _0xb26ede=a169_0x398952,_0x32e87c=process['cwd'](),_0x5d35f7=analyse(_0x32e87c),_0x34011e=!_0x5d35f7['configMigration']&&_0x5d35f7['oldArtifacts']['length']===0x0&&!_0x5d35f7[_0xb26ede(0xd2)]&&!_0x5d35f7[_0xb26ede(0xdd)]&&!_0x5d35f7[_0xb26ede(0x91)];if(_0x34011e){console['log'](a169_0x20efdb[_0xb26ede(0x67)](_0xb26ede(0xbc)));return;}printReport(_0x5d35f7);const _0x369e62=!!(_0x4d8a51[_0xb26ede(0x8b)]||_0x4d8a51['Y']||_0x21c011);if(!_0x369e62)try{const _0x52d277=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x52d277){console[_0xb26ede(0xaa)](a169_0x20efdb[_0xb26ede(0x95)](_0xb26ede(0x8f)));return;}}catch(_0x587482){if(_0x587482?.[_0xb26ede(0x9a)]===_0xb26ede(0x6d)){console['log'](a169_0x20efdb[_0xb26ede(0x95)]('Upgrade\x20cancelled.'));return;}throw _0x587482;}const _0x1c8595=[],_0x3de1b0=a169_0x2ab5a5({'text':_0xb26ede(0xc6),'color':_0xb26ede(0xb6)})['start'](),_0x4d3b4d=execConfigMigration(_0x5d35f7,_0x32e87c);_0x1c8595['push'](_0x4d3b4d),_0x3de1b0[_0x4d3b4d['ok']?_0xb26ede(0x94):_0xb26ede(0xda)](_0xb26ede(0x82)+(_0x4d3b4d[_0xb26ede(0xb0)]??(_0x4d3b4d['ok']?_0xb26ede(0xc3):'failed')));const _0x10308d=resolve(_0x32e87c,'.lovrabet'),_0x1ebdee=a169_0x2ab5a5({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0xb26ede(0xb6)})['start']();if(existsSync(_0x10308d))try{rmSync(_0x10308d,{'recursive':!![],'force':!![]}),_0x1ebdee['succeed'](_0xb26ede(0x7a)),_0x1c8595[_0xb26ede(0xd8)]({'step':0x2,'label':_0xb26ede(0xa3),'ok':!![]});}catch(_0x14dcdc){_0x1ebdee[_0xb26ede(0xda)](_0xb26ede(0xbe)+_0x14dcdc[_0xb26ede(0x9a)]),_0x1c8595[_0xb26ede(0xd8)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x14dcdc[_0xb26ede(0x9a)]});}else _0x1ebdee[_0xb26ede(0xa4)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x1c8595[_0xb26ede(0xd8)]({'step':0x2,'label':_0xb26ede(0xa3),'ok':!![],'detail':_0xb26ede(0xb2)});const _0x1f2e2c=a169_0x2ab5a5({'text':_0xb26ede(0xbf),'color':_0xb26ede(0xb6)})['start'](),_0x300dcd=execRemoveOldArtifacts(_0x5d35f7['oldArtifacts']);_0x1c8595[_0xb26ede(0xd8)](_0x300dcd),_0x1f2e2c[_0x300dcd['ok']?_0xb26ede(0x94):'fail']('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x300dcd[_0xb26ede(0xb0)]??(_0x300dcd['ok']?_0xb26ede(0xc3):_0xb26ede(0x68))));const _0x1ed386=a169_0x2ab5a5({'text':'Step\x204/7:\x20Cleaning\x20MCP\x20config...','color':_0xb26ede(0xb6)})[_0xb26ede(0x72)](),_0x3f8120=execCleanMcp(_0x5d35f7);_0x1c8595[_0xb26ede(0xd8)](_0x3f8120),_0x1ed386[_0x3f8120['ok']?_0xb26ede(0x94):_0xb26ede(0xda)](_0xb26ede(0x9b)+(_0x3f8120[_0xb26ede(0xb0)]??(_0x3f8120['ok']?_0xb26ede(0xc3):_0xb26ede(0x68))));const _0x38bfbc=a169_0x2ab5a5({'text':_0xb26ede(0xd1),'color':_0xb26ede(0xb6)})[_0xb26ede(0x72)](),_0x2c7be2=execSkillsRemove(_0x32e87c,_0x369e62);_0x1c8595[_0xb26ede(0xd8)](_0x2c7be2),_0x38bfbc[_0x2c7be2['ok']?_0xb26ede(0x94):_0xb26ede(0xda)](_0xb26ede(0x98)+(_0x2c7be2[_0xb26ede(0xb0)]??(_0x2c7be2['ok']?_0xb26ede(0xc3):_0xb26ede(0x68))));const _0xa7b954=a169_0x2ab5a5({'text':_0xb26ede(0xd0),'color':_0xb26ede(0xb6)})[_0xb26ede(0x72)](),_0x32013c=execSkillsAdd(_0x32e87c,_0x369e62);_0x1c8595[_0xb26ede(0xd8)](_0x32013c),_0xa7b954[_0x32013c['ok']?_0xb26ede(0x94):_0xb26ede(0xda)](_0xb26ede(0x89)+(_0x32013c[_0xb26ede(0xb0)]??(_0x32013c['ok']?'done':_0xb26ede(0x68))));const _0x30f4ff=a169_0x2ab5a5({'text':_0xb26ede(0x71),'color':_0xb26ede(0xb6)})[_0xb26ede(0x72)](),_0x3ae785=execUpgradeSdk(_0x5d35f7);_0x1c8595['push'](_0x3ae785),_0x30f4ff[_0x3ae785['ok']?_0xb26ede(0x94):_0xb26ede(0xda)](_0xb26ede(0xc5)+(_0x3ae785['detail']??(_0x3ae785['ok']?_0xb26ede(0xc3):_0xb26ede(0x68)))),printSummary(_0x1c8595);const _0x254f55=_0x1c8595[_0xb26ede(0xa6)](_0x5aeb49=>!_0x5aeb49['ok']);_0x254f55?console[_0xb26ede(0xaa)](a169_0x20efdb[_0xb26ede(0xb5)](_0xb26ede(0x88))):console[_0xb26ede(0xaa)](a169_0x20efdb['green'](_0xb26ede(0xb1))),_0x3ae785['ok']&&_0x5d35f7[_0xb26ede(0x91)]&&(console['log'](''),console['log'](a169_0x20efdb['bold'][_0xb26ede(0xb6)](_0xb26ede(0xc1))),console[_0xb26ede(0xaa)](a169_0x20efdb[_0xb26ede(0xb6)](_0xb26ede(0xae))),console[_0xb26ede(0xaa)](''),console['log'](a169_0x20efdb[_0xb26ede(0xa7)](_0xb26ede(0x7e))),console[_0xb26ede(0xaa)](a169_0x20efdb[_0xb26ede(0xa7)](_0xb26ede(0xbb))),console['log'](a169_0x20efdb['white']('\x20\x20bun\x20install')),console[_0xb26ede(0xaa)](''));}
@@ -1 +1 @@
1
- const a162_0x488395=a162_0x2dac;(function(_0x3e1b5a,_0x4bb0af){const _0x543fe9=a162_0x2dac,_0x3b4ad8=_0x3e1b5a();while(!![]){try{const _0x2e5d16=-parseInt(_0x543fe9(0xc7))/0x1+parseInt(_0x543fe9(0x84))/0x2*(parseInt(_0x543fe9(0x86))/0x3)+parseInt(_0x543fe9(0x99))/0x4+parseInt(_0x543fe9(0xd4))/0x5+-parseInt(_0x543fe9(0xb7))/0x6*(parseInt(_0x543fe9(0x91))/0x7)+-parseInt(_0x543fe9(0xac))/0x8*(-parseInt(_0x543fe9(0xb6))/0x9)+parseInt(_0x543fe9(0xd1))/0xa*(-parseInt(_0x543fe9(0xab))/0xb);if(_0x2e5d16===_0x4bb0af)break;else _0x3b4ad8['push'](_0x3b4ad8['shift']());}catch(_0x373365){_0x3b4ad8['push'](_0x3b4ad8['shift']());}}}(a162_0x48e3,0x8ce7b));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';function a162_0x48e3(){const _0x3e92bf=['build','2191185mmknEW','rabetbase\x20cli-skill\x20install','Database\x20Connections','Code\x20Generation','rabetbase\x20sql\x20create','bff:new','from','<script>','command','OCR','rabetbase\x20app\x20list\x20--remote','sql:new','skills:install','CLI\x20Built-in\x20Skill','rabetbase\x20project\x20create\x20<project-name>','Run\x20any\x20package.json\x20script','678086BEQDHe','isSingleCommand','3pKFfFd','Self\x20Update','create','API\x20Development','Smart\x20List\x20Pages','Run\x20Scripts','map','risk','rabetbase\x20kb\x20update','rabetbase\x20auth\x20logout','run','42gltirv','rabetbase\x20kb\x20create','knowledge-base:create','Use\x20`','Schema','Platform\x20Issue','Dataset\x20&\x20Operations','rabetbase\x20workspace\x20use\x20--app\x20<name>','2852396ithiJB','rabetbase\x20workspace\x20remove\x20<name>','rabetbase\x20kb\x20list','rabetbase\x20workspace\x20add\x20<name>\x20--appcode\x20<code>','skill:','wildcardDef','SQL\x20Queries','project:init','set','get','BFF\x20Scripts','\x20\x20[','app:use','`rabetbase\x20','commands','Logs','knowledge-base:update','rabetbase\x20run\x20build','319uEqFHb','2639192jPpCkc','knowledge-base:delete','\x20\x20[high-risk-write]','defaultCommand','app:remote','hidden','read','`\x20instead.','File','Async\x20Tasks','9AkooFR','43242LZQgRq','menu:update','Notification\x20Configuration','rabetbase\x20workspace\x20init\x20--appcode\x20<code>','skill:install','show','Instant\x20API','preview','logout','rabetbase\x20kb\x20detail','rabetbase\x20bff\x20create','rabetbase\x20run\x20preview','skills:','login','Quick\x20Start','Permissions','19705YoMYes','Menu','Authentication','`\x20has\x20been\x20removed.','sql:save','Project','knowledge-base:detail','service','write','values','406960FqPhEc','Diagnostics'];a162_0x48e3=function(){return _0x3e92bf;};return a162_0x48e3();}import{appDefinitions}from'../commands/app/index.js';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';function a162_0x2dac(_0x2b5bef,_0x209c0b){_0x2b5bef=_0x2b5bef-0x79;const _0x48e32f=a162_0x48e3();let _0x2dac24=_0x48e32f[_0x2b5bef];return _0x2dac24;}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(_0x4adeb8){const _0x16523b=a162_0x2dac;for(const _0x13e74f of _0x4adeb8){definitions[_0x16523b(0xa1)](_0x13e74f[_0x16523b(0xce)]+':'+_0x13e74f['command'],_0x13e74f);let _0x28d1b6=serviceGroups[_0x16523b(0xa2)](_0x13e74f[_0x16523b(0xce)]);!_0x28d1b6&&(_0x28d1b6=[],serviceGroups[_0x16523b(0xa1)](_0x13e74f[_0x16523b(0xce)],_0x28d1b6)),_0x28d1b6['push'](_0x13e74f);}}function registerDeclarativeService(_0x64781b,_0x47736d,_0xa9aaa3){const _0x15bb90=a162_0x2dac;registerDefinitions(_0x47736d);_0xa9aaa3?.[_0x15bb90(0x9e)]&&registerDefinitions([_0xa9aaa3['wildcardDef']]);const _0x19e181=_0x53eb99=>_0x53eb99===_0x15bb90(0xb2)?'':_0x53eb99===_0x15bb90(0xcf)?'\x20\x20[write]':_0x15bb90(0xae),_0x3fde63={'service':_0x47736d[0x0]['service'],'label':_0x64781b,'commands':_0x47736d['filter'](_0x4c0107=>!_0x4c0107[_0x15bb90(0xb1)])[_0x15bb90(0x8c)](_0x1b6f78=>({'command':_0x1b6f78[_0x15bb90(0x7c)],'description':_0x1b6f78['description'],'tag':_0x19e181(_0x1b6f78[_0x15bb90(0x8d)])})),'declarative':!![],'defaultCommand':_0xa9aaa3?.[_0x15bb90(0xaf)]??(_0xa9aaa3?.[_0x15bb90(0x85)]?_0x47736d[0x0]['command']:undefined),'wildcardDef':_0xa9aaa3?.[_0x15bb90(0x9e)],'isSingleCommand':_0xa9aaa3?.[_0x15bb90(0x85)]};serviceRegistry['push'](_0x3fde63),serviceByName[_0x15bb90(0xa1)](_0x3fde63[_0x15bb90(0xce)],_0x3fde63);}registerDeclarativeService(a162_0x488395(0xc5),initDefinitions,{'defaultCommand':a162_0x488395(0x90),'isSingleCommand':!![]}),registerDeclarativeService(a162_0x488395(0xcc),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService(a162_0x488395(0xc9),authDefinitions,{'defaultCommand':a162_0x488395(0xc4)}),registerDeclarativeService('Tenant\x20Members',tenantDefinitions),registerDeclarativeService(a162_0x488395(0x97),datasetDefinitions),registerDeclarativeService(a162_0x488395(0x8a),pageDefinitions),registerDeclarativeService(a162_0x488395(0x89),apiDefinitions),registerDeclarativeService(a162_0x488395(0xbd),dataDefinitions),registerDeclarativeService(a162_0x488395(0xa3),bffDefinitions),registerDeclarativeService(a162_0x488395(0xb9),notificationDefinitions),registerDeclarativeService(a162_0x488395(0x9f),sqlDefinitions),registerDeclarativeService(a162_0x488395(0xd6),dbDefinitions),registerDeclarativeService(a162_0x488395(0xc8),menuDefinitions),registerDeclarativeService(a162_0x488395(0xb5),taskDefinitions),registerDeclarativeService('Roles',roleDefinitions),registerDeclarativeService(a162_0x488395(0xc6),permitDefinitions),registerDeclarativeService('Runtime\x20App\x20Config\x20Management',appConfigDefinitions),registerDeclarativeService('Company\x20Knowledge\x20Base',kbDefinitions),registerDeclarativeService(a162_0x488395(0x96),issueDefinitions),registerDeclarativeService(a162_0x488395(0xb4),fileDefinitions),registerDeclarativeService(a162_0x488395(0x7d),ocrDefinitions),registerDeclarativeService(a162_0x488395(0xd7),codegenDefinitions),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService(a162_0x488395(0xd2),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x488395(0x95),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x488395(0x87),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a162_0x488395(0x81),cliSkillDefinitions,{'defaultCommand':'install'}),registerDeclarativeService(a162_0x488395(0xa8),logsDefinitions,{'defaultCommand':a162_0x488395(0xbc)}),registerDeclarativeService(a162_0x488395(0x8b),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry['length']-0x1];last[a162_0x488395(0xa7)]=[{'command':a162_0x488395(0x7b),'description':a162_0x488395(0x83),'tag':a162_0x488395(0xa4)+runDefinition[a162_0x488395(0x8d)]+']'}];}const REMOVED_COMMAND_REPLACEMENTS=new Map([[a162_0x488395(0xcb),'rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml'],[a162_0x488395(0x79),a162_0x488395(0xc1)],[a162_0x488395(0x7f),a162_0x488395(0xd8)],[a162_0x488395(0xb8),'rabetbase\x20menu\x20asset-update'],[a162_0x488395(0xa0),a162_0x488395(0xba)],[a162_0x488395(0x9d),a162_0x488395(0xd5)],[a162_0x488395(0xbb),a162_0x488395(0xd5)],[a162_0x488395(0xc3),a162_0x488395(0xd5)],[a162_0x488395(0x80),a162_0x488395(0xd5)],[a162_0x488395(0xb0),a162_0x488395(0x7e)],[a162_0x488395(0xa5),a162_0x488395(0x98)],['app:add',a162_0x488395(0x9c)],['app:remove',a162_0x488395(0x9a)],['knowledge-base:list',a162_0x488395(0x9b)],[a162_0x488395(0xcd),a162_0x488395(0xc0)],[a162_0x488395(0x93),a162_0x488395(0x92)],[a162_0x488395(0xa9),a162_0x488395(0x8e)],[a162_0x488395(0xad),'rabetbase\x20kb\x20delete']]),REMOVED_FLAT_COMMAND_REPLACEMENTS=new Map([[a162_0x488395(0x88),a162_0x488395(0x82)],['start','rabetbase\x20run\x20start'],[a162_0x488395(0xd3),a162_0x488395(0xaa)],[a162_0x488395(0xbe),a162_0x488395(0xc2)],[a162_0x488395(0xbf),a162_0x488395(0x8f)]]);export function resolveRemovedCommand(_0x55fc0e,_0x10b63b){const _0x1fac9e=a162_0x488395;if(!_0x55fc0e)return undefined;const _0x2a25f7=REMOVED_COMMAND_REPLACEMENTS[_0x1fac9e(0xa2)](_0x55fc0e+':'+(_0x10b63b??'')),_0x3397c1=REMOVED_FLAT_COMMAND_REPLACEMENTS[_0x1fac9e(0xa2)](_0x55fc0e),_0xaba252=_0x2a25f7??_0x3397c1;if(!_0xaba252)return undefined;const _0x336b0e=_0x3397c1?_0x55fc0e:_0x10b63b?_0x55fc0e+'\x20'+_0x10b63b:_0x55fc0e;return{'command':_0x336b0e,'message':_0x1fac9e(0xa6)+_0x336b0e+_0x1fac9e(0xca),'hint':_0x1fac9e(0x94)+_0xaba252+_0x1fac9e(0xb3)};}export function findDefinition(_0x5b7771,_0x179be8){const _0x54a9ff=a162_0x488395;return definitions[_0x54a9ff(0xa2)](_0x5b7771+':'+_0x179be8);}export function isKnownService(_0x141a17){return serviceByName['has'](_0x141a17);}export function isDeclarativeService(_0x2f9d53){const _0x3daaf7=a162_0x488395;return serviceGroups['has'](_0x2f9d53)||serviceByName[_0x3daaf7(0xa2)](_0x2f9d53)?.[_0x3daaf7(0x9e)]!==undefined;}export function getServiceEntry(_0x10e63a){const _0x3657d9=a162_0x488395;return serviceByName[_0x3657d9(0xa2)](_0x10e63a);}export function getLegacyHandler(_0x3456d6,_0x43c754){return undefined;}export function getAllDefinitions(){const _0x3557c8=a162_0x488395;return Array[_0x3557c8(0x7a)](definitions[_0x3557c8(0xd0)]());}
1
+ const a170_0x5efb48=a170_0x4e9c;(function(_0x52c3f3,_0x5a9b92){const _0x3745ca=a170_0x4e9c,_0x233171=_0x52c3f3();while(!![]){try{const _0x11595c=parseInt(_0x3745ca(0x9d))/0x1+-parseInt(_0x3745ca(0x8a))/0x2+parseInt(_0x3745ca(0xd6))/0x3+parseInt(_0x3745ca(0xa3))/0x4*(parseInt(_0x3745ca(0x9b))/0x5)+-parseInt(_0x3745ca(0xb5))/0x6*(-parseInt(_0x3745ca(0xab))/0x7)+parseInt(_0x3745ca(0x99))/0x8*(parseInt(_0x3745ca(0xb8))/0x9)+-parseInt(_0x3745ca(0x96))/0xa*(parseInt(_0x3745ca(0xc0))/0xb);if(_0x11595c===_0x5a9b92)break;else _0x233171['push'](_0x233171['shift']());}catch(_0x4b21f8){_0x233171['push'](_0x233171['shift']());}}}(a170_0x4a01,0x9b39e));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_0x4a01(){const _0x3fbf38=['rabetbase\x20menu\x20asset-update','<script>','knowledge-base:list','rabetbase\x20kb\x20delete','rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml','`rabetbase\x20','API\x20Development','2472504jumMmo','Authentication','Tenant\x20Members','skill:install','rabetbase\x20auth\x20logout','File','rabetbase\x20workspace\x20remove\x20<name>','User\x20Accounts','Quick\x20Start','Instant\x20API','Runtime\x20App\x20Config\x20Management','Run\x20Scripts','rabetbase\x20sql\x20create','Database\x20Connections','length','1039390ltupmA','knowledge-base:create','rabetbase\x20run\x20preview','values','Permissions','show','rabetbase\x20run\x20start','risk','sql:new','Platform\x20Issue','filter','logout','30296690ZHZYdo','command','create','8AABIrs','Run\x20any\x20package.json\x20script','20FWMteH','service','922014nEYnbH','knowledge-base:update','has','`\x20instead.','knowledge-base:detail','Self\x20Update','683068IaHJsg','rabetbase\x20workspace\x20use\x20--app\x20<name>','start','rabetbase\x20project\x20create\x20<project-name>','Notification\x20Configuration','isSingleCommand','wildcardDef','rabetbase\x20workspace\x20init\x20--appcode\x20<code>','7YBjauc','Async\x20Tasks','\x20\x20[high-risk-write]','login','from','app:remote','get','Roles','menu:update','push','6125346Fyuinj','Menu','skills:','6615261hCQWOt','Use\x20`','app:add','commands','defaultCommand','SQL\x20Queries','run','build','11nfGdKY','Project','bff:new','project:init','rabetbase\x20kb\x20create','Configuration','hidden','knowledge-base:delete','set','\x20\x20[','read','Logs','write','BFF\x20Scripts','rabetbase\x20cli-skill\x20install'];a170_0x4a01=function(){return _0x3fbf38;};return a170_0x4a01();}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(_0x124c40){const _0x21adb1=a170_0x4e9c;for(const _0x3e9e4a of _0x124c40){definitions[_0x21adb1(0xc8)](_0x3e9e4a[_0x21adb1(0x9c)]+':'+_0x3e9e4a[_0x21adb1(0x97)],_0x3e9e4a);let _0x534122=serviceGroups[_0x21adb1(0xb1)](_0x3e9e4a[_0x21adb1(0x9c)]);!_0x534122&&(_0x534122=[],serviceGroups[_0x21adb1(0xc8)](_0x3e9e4a[_0x21adb1(0x9c)],_0x534122)),_0x534122[_0x21adb1(0xb4)](_0x3e9e4a);}}function a170_0x4e9c(_0x380a98,_0x223e1a){_0x380a98=_0x380a98-0x84;const _0x4a01ce=a170_0x4a01();let _0x4e9c35=_0x4a01ce[_0x380a98];return _0x4e9c35;}function registerDeclarativeService(_0x59edda,_0x2162c7,_0x35d50d){const _0x90cad4=a170_0x4e9c;registerDefinitions(_0x2162c7);_0x35d50d?.[_0x90cad4(0xa9)]&&registerDefinitions([_0x35d50d['wildcardDef']]);const _0x5d7445=_0x100702=>_0x100702===_0x90cad4(0xca)?'':_0x100702===_0x90cad4(0xcc)?'\x20\x20[write]':_0x90cad4(0xad),_0x54c28b={'service':_0x2162c7[0x0]['service'],'label':_0x59edda,'commands':_0x2162c7[_0x90cad4(0x94)](_0xd4aa10=>!_0xd4aa10[_0x90cad4(0xc6)])['map'](_0x57acb9=>({'command':_0x57acb9[_0x90cad4(0x97)],'description':_0x57acb9['description'],'tag':_0x5d7445(_0x57acb9[_0x90cad4(0x91)])})),'declarative':!![],'defaultCommand':_0x35d50d?.[_0x90cad4(0xbc)]??(_0x35d50d?.[_0x90cad4(0xa8)]?_0x2162c7[0x0][_0x90cad4(0x97)]:undefined),'wildcardDef':_0x35d50d?.[_0x90cad4(0xa9)],'isSingleCommand':_0x35d50d?.[_0x90cad4(0xa8)]};serviceRegistry[_0x90cad4(0xb4)](_0x54c28b),serviceByName[_0x90cad4(0xc8)](_0x54c28b[_0x90cad4(0x9c)],_0x54c28b);}registerDeclarativeService(a170_0x5efb48(0xde),initDefinitions,{'defaultCommand':a170_0x5efb48(0xbe),'isSingleCommand':!![]}),registerDeclarativeService(a170_0x5efb48(0xc1),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService(a170_0x5efb48(0xd7),authDefinitions,{'defaultCommand':a170_0x5efb48(0xae)}),registerDeclarativeService(a170_0x5efb48(0xd8),tenantDefinitions),registerDeclarativeService(a170_0x5efb48(0xdd),userAccountDefinitions),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService('Smart\x20List\x20Pages\x20&\x20React\x20Custom\x20Pages',pageDefinitions),registerDeclarativeService(a170_0x5efb48(0xd5),apiDefinitions),registerDeclarativeService(a170_0x5efb48(0x84),dataDefinitions),registerDeclarativeService(a170_0x5efb48(0xcd),bffDefinitions),registerDeclarativeService(a170_0x5efb48(0xa7),notificationDefinitions),registerDeclarativeService(a170_0x5efb48(0xbd),sqlDefinitions),registerDeclarativeService(a170_0x5efb48(0x88),dbDefinitions),registerDeclarativeService(a170_0x5efb48(0xb6),menuDefinitions),registerDeclarativeService(a170_0x5efb48(0xac),taskDefinitions),registerDeclarativeService(a170_0x5efb48(0xb2),roleDefinitions),registerDeclarativeService(a170_0x5efb48(0x8e),permitDefinitions),registerDeclarativeService(a170_0x5efb48(0x85),appConfigDefinitions),registerDeclarativeService('Company\x20Knowledge\x20Base',kbDefinitions),registerDeclarativeService(a170_0x5efb48(0x93),issueDefinitions),registerDeclarativeService(a170_0x5efb48(0xdb),fileDefinitions),registerDeclarativeService('OCR',ocrDefinitions),registerDeclarativeService('Code\x20Generation',codegenDefinitions),registerDeclarativeService(a170_0x5efb48(0xc5),configDefinitions),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Schema',[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a170_0x5efb48(0xa2),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('CLI\x20Built-in\x20Skill',cliSkillDefinitions,{'defaultCommand':'install'}),registerDeclarativeService(a170_0x5efb48(0xcb),logsDefinitions,{'defaultCommand':a170_0x5efb48(0x8f)}),registerDeclarativeService(a170_0x5efb48(0x86),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a170_0x5efb48(0x89)]-0x1];last[a170_0x5efb48(0xbb)]=[{'command':a170_0x5efb48(0xd0),'description':a170_0x5efb48(0x9a),'tag':a170_0x5efb48(0xc9)+runDefinition[a170_0x5efb48(0x91)]+']'}];}const REMOVED_COMMAND_REPLACEMENTS=new Map([['sql:save',a170_0x5efb48(0xd3)],[a170_0x5efb48(0xc2),'rabetbase\x20bff\x20create'],[a170_0x5efb48(0x92),a170_0x5efb48(0x87)],[a170_0x5efb48(0xb3),a170_0x5efb48(0xcf)],[a170_0x5efb48(0xc3),a170_0x5efb48(0xaa)],['skill:',a170_0x5efb48(0xce)],[a170_0x5efb48(0xd9),a170_0x5efb48(0xce)],[a170_0x5efb48(0xb7),'rabetbase\x20cli-skill\x20install'],['skills:install',a170_0x5efb48(0xce)],[a170_0x5efb48(0xb0),'rabetbase\x20app\x20list\x20--remote'],['app:use',a170_0x5efb48(0xa4)],[a170_0x5efb48(0xba),'rabetbase\x20workspace\x20add\x20<name>\x20--appcode\x20<code>'],['app:remove',a170_0x5efb48(0xdc)],[a170_0x5efb48(0xd1),'rabetbase\x20kb\x20list'],[a170_0x5efb48(0xa1),'rabetbase\x20kb\x20detail'],[a170_0x5efb48(0x8b),a170_0x5efb48(0xc4)],[a170_0x5efb48(0x9e),'rabetbase\x20kb\x20update'],[a170_0x5efb48(0xc7),a170_0x5efb48(0xd2)]]),REMOVED_FLAT_COMMAND_REPLACEMENTS=new Map([[a170_0x5efb48(0x98),a170_0x5efb48(0xa6)],[a170_0x5efb48(0xa5),a170_0x5efb48(0x90)],[a170_0x5efb48(0xbf),'rabetbase\x20run\x20build'],['preview',a170_0x5efb48(0x8c)],[a170_0x5efb48(0x95),a170_0x5efb48(0xda)]]);export function resolveRemovedCommand(_0x5c8af1,_0x3f072c){const _0x33f958=a170_0x5efb48;if(!_0x5c8af1)return undefined;const _0x2f4d3a=REMOVED_COMMAND_REPLACEMENTS[_0x33f958(0xb1)](_0x5c8af1+':'+(_0x3f072c??'')),_0x8fb66b=REMOVED_FLAT_COMMAND_REPLACEMENTS[_0x33f958(0xb1)](_0x5c8af1),_0x5e23de=_0x2f4d3a??_0x8fb66b;if(!_0x5e23de)return undefined;const _0x55ceb5=_0x8fb66b?_0x5c8af1:_0x3f072c?_0x5c8af1+'\x20'+_0x3f072c:_0x5c8af1;return{'command':_0x55ceb5,'message':_0x33f958(0xd4)+_0x55ceb5+'`\x20has\x20been\x20removed.','hint':_0x33f958(0xb9)+_0x5e23de+_0x33f958(0xa0)};}export function findDefinition(_0x2f8134,_0x4912e4){return definitions['get'](_0x2f8134+':'+_0x4912e4);}export function isKnownService(_0x11ba99){const _0x53b6d7=a170_0x5efb48;return serviceByName[_0x53b6d7(0x9f)](_0x11ba99);}export function isDeclarativeService(_0x407e40){const _0xbde64d=a170_0x5efb48;return serviceGroups[_0xbde64d(0x9f)](_0x407e40)||serviceByName[_0xbde64d(0xb1)](_0x407e40)?.['wildcardDef']!==undefined;}export function getServiceEntry(_0x4d44e9){return serviceByName['get'](_0x4d44e9);}export function getLegacyHandler(_0x279c6f,_0x487a78){return undefined;}export function getAllDefinitions(){const _0x19fe46=a170_0x5efb48;return Array[_0x19fe46(0xaf)](definitions[_0x19fe46(0x8d)]());}