@lovrabet/rabetbase-cli 2.3.6-beta.1 → 2.3.7-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 (241) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/add.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/remote-directory.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/dry-run.js +1 -1
  48. package/lib/commands/common/flags.js +1 -1
  49. package/lib/commands/common/local-file.js +1 -0
  50. package/lib/commands/common/validate.js +1 -1
  51. package/lib/commands/config/get.js +1 -1
  52. package/lib/commands/config/index.js +1 -1
  53. package/lib/commands/config/list.js +1 -1
  54. package/lib/commands/config/set.js +1 -1
  55. package/lib/commands/config/shared.js +1 -1
  56. package/lib/commands/data/filter.js +1 -1
  57. package/lib/commands/data/getOne.js +1 -1
  58. package/lib/commands/data/index.js +1 -1
  59. package/lib/commands/data/shared.js +1 -1
  60. package/lib/commands/dataset/business-group-update.js +1 -1
  61. package/lib/commands/dataset/capability.js +1 -1
  62. package/lib/commands/dataset/delete.js +1 -1
  63. package/lib/commands/dataset/detail.js +1 -1
  64. package/lib/commands/dataset/extend-update.js +1 -1
  65. package/lib/commands/dataset/field-update.js +1 -1
  66. package/lib/commands/dataset/generate.js +1 -1
  67. package/lib/commands/dataset/index.js +1 -1
  68. package/lib/commands/dataset/list.js +1 -1
  69. package/lib/commands/dataset/operations.js +1 -1
  70. package/lib/commands/dataset/relation-audit.js +1 -1
  71. package/lib/commands/dataset/relation-create.js +1 -1
  72. package/lib/commands/dataset/relation-delete.js +1 -1
  73. package/lib/commands/dataset/relation-shared.js +1 -1
  74. package/lib/commands/dataset/relation-update.js +1 -1
  75. package/lib/commands/dataset/relations.js +1 -1
  76. package/lib/commands/dataset/rename.js +1 -1
  77. package/lib/commands/dataset/restore.js +1 -1
  78. package/lib/commands/db/analyze-cancel.js +1 -1
  79. package/lib/commands/db/analyze-start.js +1 -1
  80. package/lib/commands/db/analyze-status.js +1 -1
  81. package/lib/commands/db/create.js +1 -1
  82. package/lib/commands/db/delete.js +1 -1
  83. package/lib/commands/db/detail.js +1 -1
  84. package/lib/commands/db/diff.js +1 -1
  85. package/lib/commands/db/index.js +1 -1
  86. package/lib/commands/db/list.js +1 -1
  87. package/lib/commands/db/shared.js +1 -1
  88. package/lib/commands/db/tables.js +1 -1
  89. package/lib/commands/db/test.js +1 -1
  90. package/lib/commands/db/update.js +1 -1
  91. package/lib/commands/doctor.js +1 -1
  92. package/lib/commands/file/index.js +1 -0
  93. package/lib/commands/init/index.js +1 -1
  94. package/lib/commands/issue/index.js +1 -1
  95. package/lib/commands/issue/nudge.js +1 -1
  96. package/lib/commands/issue/report.js +1 -1
  97. package/lib/commands/issue/shared.js +1 -1
  98. package/lib/commands/logs/index.js +1 -1
  99. package/lib/commands/menu/index.js +1 -1
  100. package/lib/commands/menu/list.js +1 -1
  101. package/lib/commands/menu/shared/compare-table.js +1 -1
  102. package/lib/commands/menu/shared/index.js +1 -1
  103. package/lib/commands/menu/shared/inquirer.js +1 -1
  104. package/lib/commands/menu/shared/local-pages.js +1 -1
  105. package/lib/commands/menu/shared/logic.js +1 -1
  106. package/lib/commands/menu/shared/service.js +1 -1
  107. package/lib/commands/menu/shared/sync-core.js +1 -1
  108. package/lib/commands/menu/shared/update-core.js +1 -1
  109. package/lib/commands/menu/shared/valid-url.js +1 -1
  110. package/lib/commands/menu/sync.js +1 -1
  111. package/lib/commands/menu/update.js +1 -1
  112. package/lib/commands/page/generate-start.js +1 -1
  113. package/lib/commands/page/generate-status.js +1 -1
  114. package/lib/commands/page/index.js +1 -1
  115. package/lib/commands/page/pull.js +1 -1
  116. package/lib/commands/page/push.js +1 -1
  117. package/lib/commands/page/relation-audit.js +1 -1
  118. package/lib/commands/page/shared.js +1 -1
  119. package/lib/commands/page/standard-page-status.js +1 -1
  120. package/lib/commands/page/sync.js +1 -1
  121. package/lib/commands/permit/index.js +1 -1
  122. package/lib/commands/permit/page-get.js +1 -1
  123. package/lib/commands/permit/page-set.js +1 -1
  124. package/lib/commands/permit/role-apis-set.js +1 -1
  125. package/lib/commands/permit/role-menus-set.js +1 -1
  126. package/lib/commands/permit/role-menus.js +1 -1
  127. package/lib/commands/permit/shared.js +1 -1
  128. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  129. package/lib/commands/project/create/format-elapsed.js +1 -1
  130. package/lib/commands/project/create/main.js +1 -1
  131. package/lib/commands/project/create/non-interactive.js +1 -1
  132. package/lib/commands/project/create/project-template-path.js +1 -1
  133. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  134. package/lib/commands/project/create/use-format-code.js +1 -1
  135. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  136. package/lib/commands/project/index.js +1 -1
  137. package/lib/commands/project/init.js +1 -1
  138. package/lib/commands/project/upgrade.js +1 -1
  139. package/lib/commands/registry.js +1 -1
  140. package/lib/commands/role/create.js +1 -1
  141. package/lib/commands/role/delete.js +1 -1
  142. package/lib/commands/role/detail.js +1 -1
  143. package/lib/commands/role/index.js +1 -1
  144. package/lib/commands/role/list.js +1 -1
  145. package/lib/commands/role/shared.js +1 -1
  146. package/lib/commands/role/update.js +1 -1
  147. package/lib/commands/role/user-add.js +1 -1
  148. package/lib/commands/role/user-remove.js +1 -1
  149. package/lib/commands/role/user-resolve.js +1 -1
  150. package/lib/commands/run/index.js +1 -1
  151. package/lib/commands/schema.js +1 -1
  152. package/lib/commands/sql/create.js +1 -1
  153. package/lib/commands/sql/delete.js +1 -1
  154. package/lib/commands/sql/detail.js +1 -1
  155. package/lib/commands/sql/exec.js +1 -1
  156. package/lib/commands/sql/index.js +1 -1
  157. package/lib/commands/sql/list.js +1 -1
  158. package/lib/commands/sql/pull.js +1 -1
  159. package/lib/commands/sql/push.js +1 -1
  160. package/lib/commands/sql/save.js +1 -1
  161. package/lib/commands/sql/shared.js +1 -1
  162. package/lib/commands/sql/status.js +1 -1
  163. package/lib/commands/sql/validate.js +1 -1
  164. package/lib/commands/workspace/add.js +1 -1
  165. package/lib/commands/workspace/index.js +1 -1
  166. package/lib/commands/workspace/remove.js +1 -1
  167. package/lib/config/schema.js +1 -1
  168. package/lib/constant/cdn.js +1 -1
  169. package/lib/constant/cli.js +1 -1
  170. package/lib/constant/defaults.js +1 -1
  171. package/lib/constant/domain.js +1 -1
  172. package/lib/constant/env.js +1 -1
  173. package/lib/constant/output.js +1 -1
  174. package/lib/constant/paths.js +1 -1
  175. package/lib/constant/risk.js +1 -1
  176. package/lib/context/app-resolver.js +1 -1
  177. package/lib/context/auth-resolver.js +1 -1
  178. package/lib/context/config-loader.js +1 -1
  179. package/lib/context.js +1 -1
  180. package/lib/core/alias-resolver.js +1 -1
  181. package/lib/core/api-client.js +1 -1
  182. package/lib/core/bff/config.js +1 -1
  183. package/lib/core/bff/file-system.js +1 -1
  184. package/lib/core/bff/hash.js +1 -1
  185. package/lib/core/bff/lock.js +1 -1
  186. package/lib/core/bff/utils.js +1 -1
  187. package/lib/core/db-resolver.js +1 -1
  188. package/lib/core/page/file-system.js +1 -1
  189. package/lib/core/page/hash.js +1 -1
  190. package/lib/core/page/lock.js +1 -1
  191. package/lib/core/sql-sync/config.js +1 -1
  192. package/lib/core/sql-sync/file-system.js +1 -1
  193. package/lib/core/sql-sync/hash.js +1 -1
  194. package/lib/core/sql-sync/lock.js +1 -1
  195. package/lib/core/sql-sync/utils.js +1 -1
  196. package/lib/core/sql-validator.js +1 -1
  197. package/lib/errors.js +1 -1
  198. package/lib/framework/build-all-flags.js +1 -1
  199. package/lib/framework/flags.js +1 -1
  200. package/lib/framework/help.js +1 -1
  201. package/lib/framework/index.js +1 -1
  202. package/lib/framework/output.js +1 -1
  203. package/lib/framework/response.js +1 -1
  204. package/lib/framework/runner-alias.js +1 -1
  205. package/lib/framework/runner.js +1 -1
  206. package/lib/framework/schema-export.js +1 -1
  207. package/lib/framework/types.js +1 -1
  208. package/lib/generated/build-info.js +1 -1
  209. package/lib/help.js +1 -1
  210. package/lib/skills/main.js +1 -1
  211. package/lib/skills/npx-skills-add.js +1 -1
  212. package/lib/telemetry/cli-command-trace.js +1 -1
  213. package/lib/telemetry/cli-help-trace.js +1 -1
  214. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  215. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  216. package/lib/telemetry/send-cli-trace-log.js +1 -1
  217. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  218. package/lib/utils/ai_config.js +1 -1
  219. package/lib/utils/apply-jq-filter.js +1 -1
  220. package/lib/utils/cdn-config.js +1 -1
  221. package/lib/utils/check-sdk-version.js +1 -1
  222. package/lib/utils/cli-version-check.js +1 -1
  223. package/lib/utils/cli-version-policy.js +1 -1
  224. package/lib/utils/config.js +1 -1
  225. package/lib/utils/copy-directory.js +1 -1
  226. package/lib/utils/entity-with-id.js +1 -1
  227. package/lib/utils/file-utils.js +1 -1
  228. package/lib/utils/guides-cdn.js +1 -1
  229. package/lib/utils/http-client.js +1 -1
  230. package/lib/utils/is-non-interactive.js +1 -1
  231. package/lib/utils/logger.js +1 -1
  232. package/lib/utils/params.js +1 -1
  233. package/lib/utils/platform.js +1 -1
  234. package/lib/utils/rules-cdn.js +1 -1
  235. package/lib/utils/sleep.js +1 -1
  236. package/lib/utils/template-replacer.js +1 -1
  237. package/lib/utils/update-notice.js +1 -1
  238. package/lib/utils/version.js +1 -1
  239. package/lib/utils/with-active-cookie.js +1 -1
  240. package/lib/utils/write-cli-side-channel.js +1 -1
  241. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x47fcaa,_0x338f76){const _0x495ec3=a127_0x396e,_0x911199=_0x47fcaa();while(!![]){try{const _0x4b861a=parseInt(_0x495ec3(0xcd))/0x1+parseInt(_0x495ec3(0xca))/0x2+parseInt(_0x495ec3(0xcc))/0x3+parseInt(_0x495ec3(0xc9))/0x4*(parseInt(_0x495ec3(0xc5))/0x5)+parseInt(_0x495ec3(0xc6))/0x6+parseInt(_0x495ec3(0xc3))/0x7+-parseInt(_0x495ec3(0xcb))/0x8;if(_0x4b861a===_0x338f76)break;else _0x911199['push'](_0x911199['shift']());}catch(_0x493506){_0x911199['push'](_0x911199['shift']());}}}(a127_0x1ecc,0x92263));function a127_0x1ecc(){const _0x27e3a8=['88760ZAzEFe','1239960reiTjC','toFixed','now','172VnjAhm','1697622yYQHIG','24170304CGYkvh','1088394nRLtOM','370235RWOuif','7476525YtFetZ','replace'];a127_0x1ecc=function(){return _0x27e3a8;};return a127_0x1ecc();}function a127_0x396e(_0x347552,_0x42d315){_0x347552=_0x347552-0xc3;const _0x1ecc1e=a127_0x1ecc();let _0x396e67=_0x1ecc1e[_0x347552];return _0x396e67;}export function formatElapsed(_0x3deade){const _0xf585e3=a127_0x396e,_0x331d67=Date[_0xf585e3(0xc8)]()-_0x3deade;if(_0x331d67<0x3e8)return _0x331d67+'ms';const _0x335f5d=(_0x331d67/0x3e8)[_0xf585e3(0xc7)](0x2),_0x5e5e8f=_0x335f5d[_0xf585e3(0xc4)](/\.?0+$/u,'');return _0x5e5e8f+'s';}
1
+ function a129_0x1e0a(_0x133365,_0x3cf186){_0x133365=_0x133365-0x167;const _0x517711=a129_0x5177();let _0x1e0a81=_0x517711[_0x133365];return _0x1e0a81;}(function(_0x10f157,_0x119633){const _0x56a339=a129_0x1e0a,_0xd98a0d=_0x10f157();while(!![]){try{const _0x300afa=-parseInt(_0x56a339(0x16f))/0x1*(-parseInt(_0x56a339(0x169))/0x2)+-parseInt(_0x56a339(0x16a))/0x3+-parseInt(_0x56a339(0x168))/0x4*(parseInt(_0x56a339(0x167))/0x5)+-parseInt(_0x56a339(0x171))/0x6+-parseInt(_0x56a339(0x170))/0x7+-parseInt(_0x56a339(0x16c))/0x8+parseInt(_0x56a339(0x16e))/0x9;if(_0x300afa===_0x119633)break;else _0xd98a0d['push'](_0xd98a0d['shift']());}catch(_0x3cbd57){_0xd98a0d['push'](_0xd98a0d['shift']());}}}(a129_0x5177,0xa6561));function a129_0x5177(){const _0x4f40a7=['toFixed','3147280AbkdBi','now','37117035vuwkAL','4BWyAUU','4392899GNxBad','7010328uzJMiS','5rxyCso','5235544iAXEEH','464762OCODmz','2622255EiIOUA'];a129_0x5177=function(){return _0x4f40a7;};return a129_0x5177();}export function formatElapsed(_0x3f2f2f){const _0x4a72c9=a129_0x1e0a,_0x5c7b88=Date[_0x4a72c9(0x16d)]()-_0x3f2f2f;if(_0x5c7b88<0x3e8)return _0x5c7b88+'ms';const _0x4f5bbd=(_0x5c7b88/0x3e8)[_0x4a72c9(0x16b)](0x2),_0x11153a=_0x4f5bbd['replace'](/\.?0+$/u,'');return _0x11153a+'s';}
@@ -1 +1 @@
1
- (function(_0x2b14f6,_0x56b0f7){const _0xd27f36=a128_0x5c3e,_0x2c8c78=_0x2b14f6();while(!![]){try{const _0x3f08cb=parseInt(_0xd27f36(0x14d))/0x1+-parseInt(_0xd27f36(0x131))/0x2*(-parseInt(_0xd27f36(0x119))/0x3)+parseInt(_0xd27f36(0xf8))/0x4*(-parseInt(_0xd27f36(0x12d))/0x5)+-parseInt(_0xd27f36(0x124))/0x6*(parseInt(_0xd27f36(0x11b))/0x7)+parseInt(_0xd27f36(0xfe))/0x8*(-parseInt(_0xd27f36(0x156))/0x9)+-parseInt(_0xd27f36(0x113))/0xa*(parseInt(_0xd27f36(0x121))/0xb)+parseInt(_0xd27f36(0x105))/0xc;if(_0x3f08cb===_0x56b0f7)break;else _0x2c8c78['push'](_0x2c8c78['shift']());}catch(_0x330a66){_0x2c8c78['push'](_0x2c8c78['shift']());}}}(a128_0x28e8,0xb6d7b));import a128_0x35ec80 from'path';import a128_0x4bf135 from'fs';import a128_0x295991 from'chalk';import a128_0x3d14ef 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';function a128_0x5c3e(_0x45214a,_0x5b8be4){_0x45214a=_0x45214a-0xf8;const _0x28e8e7=a128_0x28e8();let _0x5c3e4d=_0x28e8e7[_0x45214a];return _0x5c3e4d;}import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';function a128_0x28e8(){const _0x354f68=['keys','4moRwnW','accessSync','...','existsSync','stableVersion','√\x20Pulled\x20','340432UImBKa','cyan','项目创建失败:\x20','create','bold','env','info','30917184jwzwaH','join','*\x20Pulling\x20API\x20configuration...','message','production','stop','\x20|\x20AppCode:\x20','belowMinimum','readFileSync','更新\x20package.json\x20失败','writeFileSync','apps','Format\x20code','\x20Generated\x20by\x20rabetbase\x20cli\x20','104740ouiypN','\x20√\x20','repeat','🚀\x20Next\x20Steps:','\x20&&\x20','stringify','3995787SgpIed','API\x20configuration\x20pulled:\x20','7ttdmBl','\x20dataset(s),\x20generated\x20','utf8','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','name','Project\x20name:\x20','1243WHYDVO','version','test','3878844MZenxT','needsUpgrade','\x20config\x20set\x20appcode\x20<app-code>\x27','Copy\x20project\x20files','gray','start','length','\x20\x201.\x20Start\x20project:\x20','\x20run\x20start','1740085hruXfF','1.0.0','defaultApp','*\x20Configuring\x20AppCode\x20for\x20project\x20','2LgoBOW','更新\x20package.json\x20name','\x20model(s)','配置应用AppCode失败','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','cookie','cwd','\x20already\x20exists','log','projectName','chdir','√\x20package.json\x20updated:\x20name=','清理项目目录失败:\x20','rmSync','\x20\x202.\x20Pull\x20API\x20configuration:\x20','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','success','resolve','配置应用AppCode:\x20','setLogPath','package.json','currentVersion','modelCount','项目创建完成:\x20','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','green','appCode','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','125019PnLDSb','warn','projectCode','error','√\x20Configuration\x20file\x20created,\x20Apps:\x20','description','parse','trim','W_OK','234oKCztS'];a128_0x28e8=function(){return _0x354f68;};return a128_0x28e8();}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(_0x9dd14d){const _0x51d3fb=a128_0x5c3e,_0x3eeb55=await checkCliVersion();(_0x3eeb55[_0x51d3fb(0x125)]||_0x3eeb55[_0x51d3fb(0x10c)])&&(printCliUpgradeWarning(_0x3eeb55),assertCliVersionSupported(_0x3eeb55),logger[_0x51d3fb(0x104)](_0x51d3fb(0x101),'CLI\x20版本检查',{'currentVersion':_0x3eeb55[_0x51d3fb(0x146)],'stableVersion':_0x3eeb55[_0x51d3fb(0xfc)],'minimumVersion':_0x3eeb55['minimumVersion'],'needsUpgrade':_0x3eeb55[_0x51d3fb(0x125)],'belowMinimum':_0x3eeb55['belowMinimum']}));if(_0x9dd14d[_0x51d3fb(0x14f)]&&_0x9dd14d[_0x51d3fb(0x14b)])await runCreate({'projectName':_0x9dd14d[_0x51d3fb(0x14f)],'appCode':_0x9dd14d[_0x51d3fb(0x14b)],'env':_0x9dd14d[_0x51d3fb(0x103)]},_0x9dd14d);else{if(_0x9dd14d[_0x51d3fb(0x14f)]){const _0x1f9a6d=await selectSingleAppcode(_0x9dd14d['cookie']);await runCreate({'projectName':_0x9dd14d['projectCode'],'appCode':_0x1f9a6d||undefined,'env':_0x9dd14d[_0x51d3fb(0x103)]},_0x9dd14d);}else await guidedCreateProject(_0x14c22d=>runCreate(_0x14c22d,_0x9dd14d),_0x9dd14d['env'],_0x9dd14d[_0x51d3fb(0x136)]);}}async function runCreate(_0x35fe09,_0xcd208c){const _0x32f24c=a128_0x5c3e;if(!_0x35fe09[_0x32f24c(0x13a)]||_0x35fe09[_0x32f24c(0x13a)][_0x32f24c(0x154)]()==='')throw new Error('Project\x20name\x20cannot\x20be\x20empty');const _0x51a7d2=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x51a7d2[_0x32f24c(0x123)](_0x35fe09[_0x32f24c(0x13a)]))throw new Error(_0x32f24c(0x140));if(_0x35fe09[_0x32f24c(0x13a)][_0x32f24c(0x12a)]>0x64)throw new Error('Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters');const _0x50308e=a128_0x35ec80[_0x32f24c(0x142)](process[_0x32f24c(0x137)](),_0x35fe09[_0x32f24c(0x13a)]);if(a128_0x4bf135[_0x32f24c(0xfb)](_0x50308e))throw new Error('Project\x20directory\x20'+_0x35fe09['projectName']+_0x32f24c(0x138));try{a128_0x4bf135[_0x32f24c(0xf9)](a128_0x35ec80['dirname'](_0x50308e),a128_0x4bf135['constants'][_0x32f24c(0x155)]);}catch{throw new Error('Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions');}logger[_0x32f24c(0x144)](_0x50308e),logger[_0x32f24c(0x104)](_0x32f24c(0x101),'开始创建项目:\x20'+_0x35fe09[_0x32f24c(0x13a)],{'projectDir':_0x50308e,'appCode':_0x35fe09[_0x32f24c(0x14b)]}),console[_0x32f24c(0x139)](),console['log'](a128_0x295991[_0x32f24c(0x14a)](_0x32f24c(0x114))+_0x32f24c(0x120)+a128_0x295991[_0x32f24c(0x14a)](_0x35fe09[_0x32f24c(0x13a)])+(_0x35fe09[_0x32f24c(0x14b)]?_0x32f24c(0x10b)+a128_0x295991[_0x32f24c(0xff)](_0x35fe09[_0x32f24c(0x14b)]):''));try{await runTask(_0x32f24c(0x127),()=>copyProjectTemplate(_0x35fe09[_0x32f24c(0x13a)])),await updatePackageJsonName(_0x35fe09[_0x32f24c(0x13a)]),await runTask('Install\x20dependencies',()=>installDependencies(_0x35fe09[_0x32f24c(0x13a)])),await runTask(_0x32f24c(0x111),()=>formatProjectCode(_0x35fe09['projectName'])),await configureAppCode(_0x35fe09[_0x32f24c(0x13a)],_0x35fe09['appCode']||'',_0x35fe09[_0x32f24c(0x103)]);let _0x4a7a85=![];if(_0x35fe09[_0x32f24c(0x14b)]){console[_0x32f24c(0x139)](_0x32f24c(0x107));const _0x24dea8=process[_0x32f24c(0x137)]();try{process['chdir'](_0x50308e);const _0x538efa=_0x35fe09['env']||'production';initEnv(_0x538efa);const {configArray:_0x4d30db}=await fetchModelList(_0x35fe09[_0x32f24c(0x14b)],_0xcd208c[_0x32f24c(0x136)]||''),_0x14e900=DEFAULT_API_DIR,_0x1cde85=await generateApiFile(_0x4d30db,'',_0x35fe09['appCode'],!![],_0x538efa,_0x14e900);console[_0x32f24c(0x139)](_0x32f24c(0xfd)+_0x4d30db[_0x32f24c(0x12a)]+_0x32f24c(0x11c)+_0x1cde85[_0x32f24c(0x147)]+_0x32f24c(0x133)),logger['info'](_0x32f24c(0x101),_0x32f24c(0x11a)+_0x35fe09['appCode']);}catch(_0x40679d){_0x4a7a85=!![],console[_0x32f24c(0x139)](_0x32f24c(0x149)),logger[_0x32f24c(0x14e)](_0x32f24c(0x101),'API\x20配置拉取异常',{'error':_0x40679d instanceof Error?_0x40679d[_0x32f24c(0x108)]:String(_0x40679d)});}finally{process[_0x32f24c(0x13b)](_0x24dea8);}}logger[_0x32f24c(0x141)]('create',_0x32f24c(0x148)+_0x35fe09['projectName']),console[_0x32f24c(0x139)](),console[_0x32f24c(0x139)](a128_0x295991['green']('─'['repeat'](0x3c))),console['log'](a128_0x295991[_0x32f24c(0xff)]['bold'](_0x32f24c(0x116))),console[_0x32f24c(0x139)](),console['log'](_0x32f24c(0x12b)+a128_0x295991['cyan'][_0x32f24c(0x102)]('cd\x20'+_0x35fe09[_0x32f24c(0x13a)]+_0x32f24c(0x117)+CLI_BIN_NAME+_0x32f24c(0x12c))),_0x4a7a85&&console[_0x32f24c(0x139)](_0x32f24c(0x13f)+a128_0x295991[_0x32f24c(0xff)][_0x32f24c(0x102)](CLI_BIN_NAME+'\x20api\x20pull')),console[_0x32f24c(0x139)](a128_0x295991['green']('─'[_0x32f24c(0x115)](0x3c)));}catch(_0x454518){logger[_0x32f24c(0x150)](_0x32f24c(0x101),_0x32f24c(0x100)+_0x35fe09['projectName'],{'error':_0x454518 instanceof Error?_0x454518[_0x32f24c(0x108)]:String(_0x454518)});try{a128_0x4bf135[_0x32f24c(0xfb)](_0x50308e)&&(console['log'](_0x32f24c(0x14c)+_0x50308e),a128_0x4bf135[_0x32f24c(0x13e)](_0x50308e,{'recursive':!![],'force':!![]}));}catch{logger[_0x32f24c(0x14e)](_0x32f24c(0x101),_0x32f24c(0x13d)+_0x50308e);}throw _0x454518;}}async function runTask(_0x16b753,_0x325c83){const _0x17b136=a128_0x5c3e,_0x35f0bb=a128_0x3d14ef(_0x16b753+_0x17b136(0xfa))[_0x17b136(0x129)]();try{const _0x120228=await _0x325c83();_0x35f0bb[_0x17b136(0x10a)](),console[_0x17b136(0x139)](''+a128_0x295991[_0x17b136(0x14a)](_0x17b136(0x114))+_0x16b753+'\x20'+a128_0x295991[_0x17b136(0x128)]('['+_0x120228+']'));}catch(_0x1ebc77){_0x35f0bb['fail'](_0x16b753);throw _0x1ebc77;}}async function updatePackageJsonName(_0x2d46e3){const _0x4672bc=a128_0x5c3e,_0x304ca1=a128_0x35ec80[_0x4672bc(0x142)](process[_0x4672bc(0x137)](),_0x2d46e3),_0x48b0c0=a128_0x35ec80[_0x4672bc(0x106)](_0x304ca1,_0x4672bc(0x145));try{console[_0x4672bc(0x139)](_0x4672bc(0x11e));const _0x59c8a6=getRabetbaseCliPackageRoot(),_0x25db9a=a128_0x35ec80[_0x4672bc(0x106)](_0x59c8a6,_0x4672bc(0x145));let _0x2d84fb=_0x4672bc(0x12e);try{const _0x473603=JSON['parse'](a128_0x4bf135[_0x4672bc(0x10d)](_0x25db9a,_0x4672bc(0x11d)));_0x2d84fb=_0x473603[_0x4672bc(0x122)]||_0x4672bc(0x12e);}catch{}const _0x4e20ff=a128_0x4bf135[_0x4672bc(0x10d)](_0x48b0c0,_0x4672bc(0x11d)),_0x548c63=JSON['parse'](_0x4e20ff);_0x548c63[_0x4672bc(0x11f)]=_0x2d46e3,_0x548c63[_0x4672bc(0x152)]=_0x2d46e3+_0x4672bc(0x112)+_0x2d84fb,a128_0x4bf135[_0x4672bc(0x10f)](_0x48b0c0,JSON[_0x4672bc(0x118)](_0x548c63,null,0x2)+'\x0a',_0x4672bc(0x11d)),console[_0x4672bc(0x139)](_0x4672bc(0x13c)+_0x2d46e3),logger[_0x4672bc(0x104)](_0x4672bc(0x101),_0x4672bc(0x132));}catch(_0x57a03e){logger[_0x4672bc(0x150)](_0x4672bc(0x101),_0x4672bc(0x10e));throw _0x57a03e;}}async function configureAppCode(_0x440508,_0x1b5780,_0x3a4542){const _0x559ab0=a128_0x5c3e,_0x2b4494=a128_0x35ec80['resolve'](process[_0x559ab0(0x137)](),_0x440508),_0x5019aa=a128_0x35ec80[_0x559ab0(0x106)](_0x2b4494,NEW_CONFIG_NAME);try{_0x1b5780?console[_0x559ab0(0x139)](_0x559ab0(0x130)+_0x440508+':\x20'+_0x1b5780):console[_0x559ab0(0x139)](_0x559ab0(0x135)+_0x440508);const _0x2e648f=getRabetbaseCliPackageRoot(),_0x297e59=a128_0x35ec80[_0x559ab0(0x106)](_0x2e648f,_0x559ab0(0x145));let _0x45a375=_0x559ab0(0x12e);try{const _0x4a1dda=JSON[_0x559ab0(0x153)](a128_0x4bf135[_0x559ab0(0x10d)](_0x297e59,_0x559ab0(0x11d)));_0x45a375=_0x4a1dda[_0x559ab0(0x122)]||_0x559ab0(0x12e);}catch{}const _0x1d3cfa=readConfig(),_0x43978e=typeof _0x1d3cfa[_0x559ab0(0x103)]==='string'?_0x1d3cfa['env']:undefined,_0x26a379={};for(const _0x564645 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x1d3cfa[_0x564645]!=null)_0x26a379[_0x564645]=_0x1d3cfa[_0x564645];}const _0x183997=buildCanonicalProjectConfig(_0x26a379,{'appCodes':_0x1b5780?[_0x1b5780]:[],'env':_0x3a4542||_0x43978e||_0x559ab0(0x109),'metadata':{'createdAt':new Date()['toLocaleString'](),'version':_0x45a375}});writeConfigFile(_0x5019aa,_0x183997),_0x1b5780?console['log'](_0x559ab0(0x151)+Object[_0x559ab0(0x157)](_0x183997[_0x559ab0(0x110)]||{})[_0x559ab0(0x106)](',\x20')+'\x20|\x20Default:\x20'+_0x183997[_0x559ab0(0x12f)]):console[_0x559ab0(0x139)]('√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27'+CLI_BIN_NAME+_0x559ab0(0x126)),logger[_0x559ab0(0x104)](_0x559ab0(0x101),_0x559ab0(0x143)+_0x1b5780);}catch(_0x5948b6){logger['error'](_0x559ab0(0x101),_0x559ab0(0x134));}}
1
+ (function(_0x5016dc,_0x41c2e7){const _0x5319dc=a130_0x4fff,_0x253b9a=_0x5016dc();while(!![]){try{const _0x2db88a=parseInt(_0x5319dc(0x9a))/0x1*(parseInt(_0x5319dc(0xc0))/0x2)+-parseInt(_0x5319dc(0x9d))/0x3+-parseInt(_0x5319dc(0x95))/0x4+parseInt(_0x5319dc(0xbd))/0x5*(parseInt(_0x5319dc(0x94))/0x6)+parseInt(_0x5319dc(0xa2))/0x7*(parseInt(_0x5319dc(0xce))/0x8)+-parseInt(_0x5319dc(0xe7))/0x9*(parseInt(_0x5319dc(0xe5))/0xa)+parseInt(_0x5319dc(0xbf))/0xb*(-parseInt(_0x5319dc(0xb6))/0xc);if(_0x2db88a===_0x41c2e7)break;else _0x253b9a['push'](_0x253b9a['shift']());}catch(_0x58aaf5){_0x253b9a['push'](_0x253b9a['shift']());}}}(a130_0x17f6,0x6f7a8));import a130_0x46145a from'path';import a130_0x3746d6 from'fs';import a130_0x804285 from'chalk';import a130_0x26606d 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 a130_0x4fff(_0x9a6810,_0x47f72a){_0x9a6810=_0x9a6810-0x86;const _0x17f641=a130_0x17f6();let _0x4fff64=_0x17f641[_0x9a6810];return _0x4fff64;}import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';import{logger}from'../../../utils/logger.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getRabetbaseCliPackageRoot}from'../../../commands/project/create/project-template-path.js';export async function createApp(_0x5df80e){const _0x3c0a58=a130_0x4fff,_0x466169=await checkCliVersion();(_0x466169[_0x3c0a58(0xb0)]||_0x466169[_0x3c0a58(0xa3)])&&(printCliUpgradeWarning(_0x466169),assertCliVersionSupported(_0x466169),logger[_0x3c0a58(0xdf)]('create',_0x3c0a58(0xd9),{'currentVersion':_0x466169[_0x3c0a58(0xa4)],'stableVersion':_0x466169[_0x3c0a58(0xd3)],'minimumVersion':_0x466169['minimumVersion'],'needsUpgrade':_0x466169[_0x3c0a58(0xb0)],'belowMinimum':_0x466169['belowMinimum']}));if(_0x5df80e[_0x3c0a58(0xd5)]&&_0x5df80e[_0x3c0a58(0xc7)])await runCreate({'projectName':_0x5df80e[_0x3c0a58(0xd5)],'appCode':_0x5df80e[_0x3c0a58(0xc7)],'env':_0x5df80e[_0x3c0a58(0x9c)]},_0x5df80e);else{if(_0x5df80e[_0x3c0a58(0xd5)]){const _0x27f459=await selectSingleAppcode(_0x5df80e[_0x3c0a58(0xb8)]);await runCreate({'projectName':_0x5df80e[_0x3c0a58(0xd5)],'appCode':_0x27f459||undefined,'env':_0x5df80e[_0x3c0a58(0x9c)]},_0x5df80e);}else await guidedCreateProject(_0x33cda3=>runCreate(_0x33cda3,_0x5df80e),_0x5df80e[_0x3c0a58(0x9c)],_0x5df80e[_0x3c0a58(0xb8)]);}}async function runCreate(_0x48bbd2,_0x9ac12d){const _0x3acf67=a130_0x4fff;if(!_0x48bbd2[_0x3acf67(0x98)]||_0x48bbd2[_0x3acf67(0x98)][_0x3acf67(0xe8)]()==='')throw new Error(_0x3acf67(0xc4));const _0x3a9029=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x3a9029[_0x3acf67(0xa1)](_0x48bbd2[_0x3acf67(0x98)]))throw new Error(_0x3acf67(0xde));if(_0x48bbd2[_0x3acf67(0x98)][_0x3acf67(0xac)]>0x64)throw new Error(_0x3acf67(0xaf));const _0x51372d=a130_0x46145a[_0x3acf67(0x9e)](process[_0x3acf67(0x92)](),_0x48bbd2[_0x3acf67(0x98)]);if(a130_0x3746d6[_0x3acf67(0x90)](_0x51372d))throw new Error(_0x3acf67(0x97)+_0x48bbd2['projectName']+_0x3acf67(0xc3));try{a130_0x3746d6[_0x3acf67(0xbc)](a130_0x46145a[_0x3acf67(0xc9)](_0x51372d),a130_0x3746d6[_0x3acf67(0xdb)]['W_OK']);}catch{throw new Error(_0x3acf67(0x89));}logger['setLogPath'](_0x51372d),logger[_0x3acf67(0xdf)](_0x3acf67(0x86),_0x3acf67(0xa6)+_0x48bbd2['projectName'],{'projectDir':_0x51372d,'appCode':_0x48bbd2[_0x3acf67(0xc7)]}),console[_0x3acf67(0xda)](),console[_0x3acf67(0xda)](a130_0x804285[_0x3acf67(0xb5)](_0x3acf67(0x96))+_0x3acf67(0xd0)+a130_0x804285[_0x3acf67(0xb5)](_0x48bbd2[_0x3acf67(0x98)])+(_0x48bbd2[_0x3acf67(0xc7)]?_0x3acf67(0x91)+a130_0x804285['cyan'](_0x48bbd2[_0x3acf67(0xc7)]):''));try{await runTask('Copy\x20project\x20files',()=>copyProjectTemplate(_0x48bbd2[_0x3acf67(0x98)])),await updatePackageJsonName(_0x48bbd2[_0x3acf67(0x98)]),await runTask(_0x3acf67(0xb2),()=>installDependencies(_0x48bbd2[_0x3acf67(0x98)])),await runTask(_0x3acf67(0xdd),()=>formatProjectCode(_0x48bbd2['projectName'])),await configureAppCode(_0x48bbd2['projectName'],_0x48bbd2[_0x3acf67(0xc7)]||'',_0x48bbd2['env']);let _0x28d45d=![];if(_0x48bbd2[_0x3acf67(0xc7)]){console[_0x3acf67(0xda)]('*\x20Pulling\x20API\x20configuration...');const _0x193757=process[_0x3acf67(0x92)]();try{process['chdir'](_0x51372d);const _0x2f5ce6=_0x48bbd2['env']||_0x3acf67(0xcb);initEnv(_0x2f5ce6);const {configArray:_0x2f16c9}=await fetchModelList(_0x48bbd2[_0x3acf67(0xc7)],_0x9ac12d[_0x3acf67(0xb8)]||''),_0x6223a6=DEFAULT_API_DIR,_0x1ef866=await generateApiFile(_0x2f16c9,'',_0x48bbd2[_0x3acf67(0xc7)],!![],_0x2f5ce6,_0x6223a6);console[_0x3acf67(0xda)](_0x3acf67(0xd4)+_0x2f16c9[_0x3acf67(0xac)]+'\x20dataset(s),\x20generated\x20'+_0x1ef866['modelCount']+_0x3acf67(0xb3)),logger[_0x3acf67(0xdf)](_0x3acf67(0x86),_0x3acf67(0xca)+_0x48bbd2[_0x3acf67(0xc7)]);}catch(_0x923c3a){_0x28d45d=!![],console[_0x3acf67(0xda)](_0x3acf67(0xc2)),logger[_0x3acf67(0x87)](_0x3acf67(0x86),_0x3acf67(0xe1),{'error':_0x923c3a instanceof Error?_0x923c3a['message']:String(_0x923c3a)});}finally{process[_0x3acf67(0xa5)](_0x193757);}}logger[_0x3acf67(0xc6)](_0x3acf67(0x86),_0x3acf67(0xad)+_0x48bbd2['projectName']),console[_0x3acf67(0xda)](),console[_0x3acf67(0xda)](a130_0x804285[_0x3acf67(0xb5)]('─'[_0x3acf67(0x88)](0x3c))),console[_0x3acf67(0xda)](a130_0x804285[_0x3acf67(0xba)]['bold']('🚀\x20Next\x20Steps:')),console[_0x3acf67(0xda)](),console[_0x3acf67(0xda)](_0x3acf67(0xbe)+a130_0x804285['cyan'][_0x3acf67(0xe6)](_0x3acf67(0x93)+_0x48bbd2[_0x3acf67(0x98)]+_0x3acf67(0xd2)+CLI_BIN_NAME+'\x20run\x20start')),_0x28d45d&&console['log']('\x20\x202.\x20Pull\x20API\x20configuration:\x20'+a130_0x804285[_0x3acf67(0xba)][_0x3acf67(0xe6)](CLI_BIN_NAME+_0x3acf67(0xa9))),console[_0x3acf67(0xda)](a130_0x804285['green']('─'[_0x3acf67(0x88)](0x3c)));}catch(_0x1113f8){logger[_0x3acf67(0xc1)](_0x3acf67(0x86),_0x3acf67(0xe2)+_0x48bbd2[_0x3acf67(0x98)],{'error':_0x1113f8 instanceof Error?_0x1113f8[_0x3acf67(0xd6)]:String(_0x1113f8)});try{a130_0x3746d6[_0x3acf67(0x90)](_0x51372d)&&(console['log'](_0x3acf67(0xa0)+_0x51372d),a130_0x3746d6[_0x3acf67(0xab)](_0x51372d,{'recursive':!![],'force':!![]}));}catch{logger[_0x3acf67(0x87)](_0x3acf67(0x86),_0x3acf67(0xcf)+_0x51372d);}throw _0x1113f8;}}async function runTask(_0xebaf3,_0xc243e3){const _0x3e4f3a=a130_0x4fff,_0x5f43b2=a130_0x26606d(_0xebaf3+_0x3e4f3a(0x99))[_0x3e4f3a(0xd7)]();try{const _0x5694f7=await _0xc243e3();_0x5f43b2[_0x3e4f3a(0x8b)](),console[_0x3e4f3a(0xda)](''+a130_0x804285['green'](_0x3e4f3a(0x96))+_0xebaf3+'\x20'+a130_0x804285[_0x3e4f3a(0x9b)]('['+_0x5694f7+']'));}catch(_0x53b2f7){_0x5f43b2['fail'](_0xebaf3);throw _0x53b2f7;}}function a130_0x17f6(){const _0x5e4abb=['11IWnxfM','12ZRdiqT','error','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','\x20already\x20exists','Project\x20name\x20cannot\x20be\x20empty','*\x20Configuring\x20AppCode\x20for\x20project\x20','success','appCode','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','dirname','API\x20configuration\x20pulled:\x20','production','√\x20Configuration\x20file\x20created,\x20Apps:\x20','√\x20package.json\x20updated:\x20name=','617176JVEgOG','清理项目目录失败:\x20','Project\x20name:\x20','1.0.0','\x20&&\x20','stableVersion','√\x20Pulled\x20','projectCode','message','start','name','CLI\x20版本检查','log','constants','description','Format\x20code','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','info','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','API\x20配置拉取异常','项目创建失败:\x20','配置应用AppCode:\x20','join','958500KcgLXJ','bold','36BpJcQM','trim','create','warn','repeat','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','stringify','stop','更新\x20package.json\x20失败','keys','\x20config\x20set\x20appcode\x20<app-code>\x27','utf8','existsSync','\x20|\x20AppCode:\x20','cwd','cd\x20','1349976JEaEqg','937356DdmbkJ','\x20√\x20','Project\x20directory\x20','projectName','...','142966ALJcqn','gray','env','332859IrZzzK','resolve','更新\x20package.json\x20name','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','test','49iycSAQ','belowMinimum','currentVersion','chdir','开始创建项目:\x20','apps','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','\x20api\x20pull','\x20Generated\x20by\x20rabetbase\x20cli\x20','rmSync','length','项目创建完成:\x20','parse','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','needsUpgrade','package.json','Install\x20dependencies','\x20model(s)','readFileSync','green','7950108xYzdge','version','cookie','writeFileSync','cyan','string','accessSync','10vXwLmY','\x20\x201.\x20Start\x20project:\x20'];a130_0x17f6=function(){return _0x5e4abb;};return a130_0x17f6();}async function updatePackageJsonName(_0x3050f8){const _0x16ad6b=a130_0x4fff,_0x5dd4ad=a130_0x46145a[_0x16ad6b(0x9e)](process[_0x16ad6b(0x92)](),_0x3050f8),_0x92d3f3=a130_0x46145a['join'](_0x5dd4ad,_0x16ad6b(0xb1));try{console[_0x16ad6b(0xda)](_0x16ad6b(0xc8));const _0x11e947=getRabetbaseCliPackageRoot(),_0xece72f=a130_0x46145a[_0x16ad6b(0xe4)](_0x11e947,_0x16ad6b(0xb1));let _0x3fc976=_0x16ad6b(0xd1);try{const _0x2c5458=JSON[_0x16ad6b(0xae)](a130_0x3746d6[_0x16ad6b(0xb4)](_0xece72f,'utf8'));_0x3fc976=_0x2c5458[_0x16ad6b(0xb7)]||_0x16ad6b(0xd1);}catch{}const _0x2a3054=a130_0x3746d6['readFileSync'](_0x92d3f3,'utf8'),_0x33a176=JSON[_0x16ad6b(0xae)](_0x2a3054);_0x33a176[_0x16ad6b(0xd8)]=_0x3050f8,_0x33a176[_0x16ad6b(0xdc)]=_0x3050f8+_0x16ad6b(0xaa)+_0x3fc976,a130_0x3746d6[_0x16ad6b(0xb9)](_0x92d3f3,JSON[_0x16ad6b(0x8a)](_0x33a176,null,0x2)+'\x0a',_0x16ad6b(0x8f)),console[_0x16ad6b(0xda)](_0x16ad6b(0xcd)+_0x3050f8),logger[_0x16ad6b(0xdf)](_0x16ad6b(0x86),_0x16ad6b(0x9f));}catch(_0x12c57c){logger['error'](_0x16ad6b(0x86),_0x16ad6b(0x8c));throw _0x12c57c;}}async function configureAppCode(_0x31e452,_0xb7e70d,_0x11bc75){const _0x22789b=a130_0x4fff,_0x3ac834=a130_0x46145a[_0x22789b(0x9e)](process[_0x22789b(0x92)](),_0x31e452),_0x59de8c=a130_0x46145a[_0x22789b(0xe4)](_0x3ac834,NEW_CONFIG_NAME);try{_0xb7e70d?console['log'](_0x22789b(0xc5)+_0x31e452+':\x20'+_0xb7e70d):console[_0x22789b(0xda)](_0x22789b(0xa8)+_0x31e452);const _0x12b619=getRabetbaseCliPackageRoot(),_0x76c442=a130_0x46145a['join'](_0x12b619,_0x22789b(0xb1));let _0x2c4dd7=_0x22789b(0xd1);try{const _0x2481e7=JSON[_0x22789b(0xae)](a130_0x3746d6[_0x22789b(0xb4)](_0x76c442,_0x22789b(0x8f)));_0x2c4dd7=_0x2481e7[_0x22789b(0xb7)]||'1.0.0';}catch{}const _0x322ed1=readConfig(),_0x1641a8=typeof _0x322ed1[_0x22789b(0x9c)]===_0x22789b(0xbb)?_0x322ed1['env']:undefined,_0x36615a={};for(const _0x39a62a of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x322ed1[_0x39a62a]!=null)_0x36615a[_0x39a62a]=_0x322ed1[_0x39a62a];}const _0x10e51a=buildCanonicalProjectConfig(_0x36615a,{'appCodes':_0xb7e70d?[_0xb7e70d]:[],'env':_0x11bc75||_0x1641a8||'production','metadata':{'createdAt':new Date()['toLocaleString'](),'version':_0x2c4dd7}});writeConfigFile(_0x59de8c,_0x10e51a),_0xb7e70d?console[_0x22789b(0xda)](_0x22789b(0xcc)+Object[_0x22789b(0x8d)](_0x10e51a[_0x22789b(0xa7)]||{})[_0x22789b(0xe4)](',\x20')+'\x20|\x20Default:\x20'+_0x10e51a['defaultApp']):console[_0x22789b(0xda)](_0x22789b(0xe0)+CLI_BIN_NAME+_0x22789b(0x8e)),logger[_0x22789b(0xdf)](_0x22789b(0x86),_0x22789b(0xe3)+_0xb7e70d);}catch(_0x2aeb7c){logger['error']('create','配置应用AppCode失败');}}
@@ -1 +1 @@
1
- (function(_0x21eb93,_0x1b2ca8){const _0x254e39=a129_0x70df,_0x1b88b2=_0x21eb93();while(!![]){try{const _0x12ceb3=-parseInt(_0x254e39(0x1fb))/0x1+parseInt(_0x254e39(0x1ed))/0x2+parseInt(_0x254e39(0x213))/0x3*(parseInt(_0x254e39(0x207))/0x4)+-parseInt(_0x254e39(0x1ff))/0x5+parseInt(_0x254e39(0x208))/0x6+parseInt(_0x254e39(0x1f6))/0x7*(-parseInt(_0x254e39(0x206))/0x8)+parseInt(_0x254e39(0x1f4))/0x9;if(_0x12ceb3===_0x1b2ca8)break;else _0x1b88b2['push'](_0x1b88b2['shift']());}catch(_0x40b114){_0x1b88b2['push'](_0x1b88b2['shift']());}}}(a129_0x4516,0xdd056));function a129_0x70df(_0x5cffca,_0x28daf3){_0x5cffca=_0x5cffca-0x1e2;const _0x451664=a129_0x4516();let _0x70df56=_0x451664[_0x5cffca];return _0x70df56;}import a129_0x50735c from'path';import a129_0x255b4b from'fs/promises';import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';function a129_0x4516(){const _0x2f0584=['env','package.json','Use\x20a\x20different\x20project\x20name.','\x20\x20Installing\x20dependencies...','\x20dataset(s),\x20generated\x20','writeFile','\x0a√\x20Project\x20','Cannot\x20create\x20project\x20in\x20current\x20directory.','\x20\x20√\x20Project\x20template\x20created','readFile','\x22\x20already\x20exists.','W_OK','chdir','utf-8','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','858572Rrydsy','constants','belowMinimum','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','Project\x20name\x20contains\x20invalid\x20characters.','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','bun\x20run\x20format','4089906XPwvix','toLocaleString','28546tvKxHt','log','needsUpgrade','\x20\x20√\x20Pulled\x20','trim','120739xQUpEe','string','...','Check\x20directory\x20permissions.','4713450pgSSsO','\x20\x20rabetbase\x20run\x20start\x0a','name','validation','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','length','\x0a\x20\x20cd\x20','272fYCJOx','4OwxAzL','5987952WCaelv','\x20api\x20pull`\x20manually\x20later.','Project\x20directory\x20\x22','resolve','join','modelCount','\x20\x20√\x20Code\x20formatted','bun\x20--version','cwd','description','dirname','677013xjKtza','test','\x20model(s)','production','access'];a129_0x4516=function(){return _0x2f0584;};return a129_0x4516();}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(_0x21806d,_0xac9615,_0x23343a,_0x4fa871){const _0x7fa381=a129_0x70df,_0x3b5694=await checkCliVersion();(_0x3b5694[_0x7fa381(0x1f8)]||_0x3b5694[_0x7fa381(0x1ef)])&&(printCliUpgradeWarning(_0x3b5694),assertCliVersionSupported(_0x3b5694));if(!_0x21806d||_0x21806d[_0x7fa381(0x1fa)]()==='')throw CliErrors[_0x7fa381(0x202)]('Project\x20name\x20cannot\x20be\x20empty.');const _0x19652a=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x19652a[_0x7fa381(0x214)](_0x21806d))throw CliErrors[_0x7fa381(0x202)](_0x7fa381(0x1f1),_0x7fa381(0x203));if(_0x21806d['length']>0x64)throw CliErrors[_0x7fa381(0x202)](_0x7fa381(0x1ec));const _0x4e4a34=a129_0x50735c[_0x7fa381(0x20b)](process[_0x7fa381(0x210)](),_0x21806d);if(existsSync(_0x4e4a34))throw CliErrors['validation'](_0x7fa381(0x20a)+_0x21806d+_0x7fa381(0x1e8),_0x7fa381(0x21a));try{const _0x3d514f=a129_0x50735c[_0x7fa381(0x212)](_0x4e4a34);await a129_0x255b4b[_0x7fa381(0x217)](_0x3d514f,a129_0x255b4b[_0x7fa381(0x1ee)][_0x7fa381(0x1e9)]);}catch{throw CliErrors[_0x7fa381(0x202)](_0x7fa381(0x1e5),_0x7fa381(0x1fe));}try{console['log']('*\x20Creating\x20project\x20'+_0x21806d+_0x7fa381(0x1fd));const _0x17a97e=getSubAppReactDemoTemplateDir();await copyDirectory(_0x17a97e,_0x4e4a34),console[_0x7fa381(0x1f7)](_0x7fa381(0x1e6)),await updatePackageJsonName(_0x21806d),console[_0x7fa381(0x1f7)]('\x20\x20√\x20package.json\x20updated'),console['log'](_0x7fa381(0x21b)),console[_0x7fa381(0x1f7)](_0x7fa381(0x1f0)),await formatCode(_0x4e4a34),console[_0x7fa381(0x1f7)](_0x7fa381(0x20e)),await configureProject(_0x21806d,_0x23343a,_0xac9615),console['log']('\x20\x20√\x20Configuration\x20file\x20created'),_0x23343a&&await pullApiConfig(_0x4e4a34,_0x23343a,_0xac9615,_0x4fa871),console[_0x7fa381(0x1f7)](_0x7fa381(0x1e4)+_0x21806d+'\x20created\x20successfully!'),console[_0x7fa381(0x1f7)](_0x7fa381(0x205)+_0x21806d),console['log'](_0x7fa381(0x200));}catch(_0x5e00c8){try{existsSync(_0x4e4a34)&&await a129_0x255b4b['rm'](_0x4e4a34,{'recursive':!![],'force':!![]});}catch{}throw _0x5e00c8;}}async function updatePackageJsonName(_0x4beaa9){const _0x2762a7=a129_0x70df,_0x8becbc=a129_0x50735c[_0x2762a7(0x20b)](process['cwd'](),_0x4beaa9),_0x201e85=a129_0x50735c[_0x2762a7(0x20c)](_0x8becbc,_0x2762a7(0x219)),_0x363a66=await a129_0x255b4b[_0x2762a7(0x1e7)](_0x201e85,_0x2762a7(0x1eb)),_0x3625c3=JSON['parse'](_0x363a66);_0x3625c3[_0x2762a7(0x201)]=_0x4beaa9,_0x3625c3[_0x2762a7(0x211)]='A\x20project\x20created\x20with\x20Lovrabet\x20CLI',await a129_0x255b4b[_0x2762a7(0x1e3)](_0x201e85,JSON['stringify'](_0x3625c3,null,0x2)+'\x0a');}function detectPackageManager(){const _0x13d727=a129_0x70df;try{return execSync(_0x13d727(0x20f),{'stdio':'ignore'}),'bun';}catch{return'npm';}}async function formatCode(_0x1039fb){const _0x22dc4b=a129_0x70df;try{await execAsync(_0x22dc4b(0x1f3),{'cwd':_0x1039fb});}catch{}}async function configureProject(_0x2eadef,_0x55554f,_0x548ed2){const _0x1f9845=a129_0x70df,_0x97f2aa=a129_0x50735c['resolve'](process[_0x1f9845(0x210)](),_0x2eadef),_0x2d5a09=a129_0x50735c['join'](_0x97f2aa,NEW_CONFIG_NAME),_0xe2295f=readConfig(),_0x5975de=typeof _0xe2295f[_0x1f9845(0x218)]===_0x1f9845(0x1fc)?_0xe2295f['env']:undefined,_0x375ae2={};for(const _0x4ffd91 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0xe2295f[_0x4ffd91]!=null)_0x375ae2[_0x4ffd91]=_0xe2295f[_0x4ffd91];}const _0x1a7ebe=buildCanonicalProjectConfig(_0x375ae2,{'appCodes':_0x55554f?[_0x55554f]:[],'env':_0x548ed2||_0x5975de||_0x1f9845(0x216),'metadata':{'createdAt':new Date()[_0x1f9845(0x1f5)](),'version':getCliVersion()}});writeConfigFile(_0x2d5a09,_0x1a7ebe);}async function pullApiConfig(_0x569317,_0x24ed52,_0x497585,_0x2ed49d){const _0x54aec4=a129_0x70df,_0x1f58a9=process[_0x54aec4(0x210)]();try{process['chdir'](_0x569317);const _0x4f658c=_0x497585||_0x54aec4(0x216);initEnv(_0x4f658c),console[_0x54aec4(0x1f7)]('\x20\x20Pulling\x20API\x20configuration...');const {configArray:_0xd95657}=await fetchModelList(_0x24ed52,_0x2ed49d||''),_0x5dc3e5=await generateApiFile(_0xd95657,'',_0x24ed52,!![],_0x4f658c,DEFAULT_API_DIR);console['log'](_0x54aec4(0x1f9)+_0xd95657[_0x54aec4(0x204)]+_0x54aec4(0x1e2)+_0x5dc3e5[_0x54aec4(0x20d)]+_0x54aec4(0x215));}catch(_0x41fd6c){console[_0x54aec4(0x1f7)](_0x54aec4(0x1f2)+CLI_BIN_NAME+_0x54aec4(0x209));}finally{process[_0x54aec4(0x1ea)](_0x1f58a9);}}
1
+ (function(_0x315286,_0x2acc34){const _0x3bfb54=a131_0x1de9,_0x235470=_0x315286();while(!![]){try{const _0x5861f1=-parseInt(_0x3bfb54(0x12f))/0x1+parseInt(_0x3bfb54(0x11b))/0x2+parseInt(_0x3bfb54(0x111))/0x3*(parseInt(_0x3bfb54(0x130))/0x4)+parseInt(_0x3bfb54(0x140))/0x5+-parseInt(_0x3bfb54(0x132))/0x6*(parseInt(_0x3bfb54(0x12d))/0x7)+parseInt(_0x3bfb54(0x118))/0x8*(-parseInt(_0x3bfb54(0x141))/0x9)+parseInt(_0x3bfb54(0x13e))/0xa*(parseInt(_0x3bfb54(0x139))/0xb);if(_0x5861f1===_0x2acc34)break;else _0x235470['push'](_0x235470['shift']());}catch(_0x507878){_0x235470['push'](_0x235470['shift']());}}}(a131_0x1e4c,0x939ee));import a131_0x35bdd2 from'path';import a131_0x562684 from'fs/promises';function a131_0x1e4c(){const _0x2f8179=['\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','bun\x20--version','needsUpgrade','parse','3251624RmENnz','\x0a√\x20Project\x20','validation','1326304BIipcg','chdir','package.json','modelCount','...','log','string','\x20api\x20pull`\x20manually\x20later.','W_OK','utf-8','\x20dataset(s),\x20generated\x20','writeFile','belowMinimum','env','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','trim','\x20\x20Installing\x20dependencies...','length','7370230DzfmPE','\x20model(s)','70598FhYUAS','4bQXhvK','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','6RUBgIa','dirname','stringify','*\x20Creating\x20project\x20','toLocaleString','Cannot\x20create\x20project\x20in\x20current\x20directory.','\x22\x20already\x20exists.','2783kUySIv','ignore','join','Project\x20name\x20contains\x20invalid\x20characters.','\x20\x20√\x20Code\x20formatted','23930XEkuVj','cwd','1540065ZBFMLD','9eqeTte','resolve','constants','Use\x20a\x20different\x20project\x20name.','name','test','\x20\x20Pulling\x20API\x20configuration...','production','access','readFile','1674003Ljbxqb','\x20\x20√\x20package.json\x20updated','Project\x20name\x20cannot\x20be\x20empty.'];a131_0x1e4c=function(){return _0x2f8179;};return a131_0x1e4c();}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';function a131_0x1de9(_0x37b49f,_0x5bcb63){_0x37b49f=_0x37b49f-0x10d;const _0x1e4c43=a131_0x1e4c();let _0x1de993=_0x1e4c43[_0x37b49f];return _0x1de993;}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';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(_0x39d946,_0x2f21e2,_0x2fb7eb,_0x55fdaa){const _0x3d9ce8=a131_0x1de9,_0x285b03=await checkCliVersion();(_0x285b03[_0x3d9ce8(0x116)]||_0x285b03[_0x3d9ce8(0x127)])&&(printCliUpgradeWarning(_0x285b03),assertCliVersionSupported(_0x285b03));if(!_0x39d946||_0x39d946[_0x3d9ce8(0x12a)]()==='')throw CliErrors['validation'](_0x3d9ce8(0x113));const _0x181231=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x181231[_0x3d9ce8(0x146)](_0x39d946))throw CliErrors['validation'](_0x3d9ce8(0x13c),'Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters');if(_0x39d946[_0x3d9ce8(0x12c)]>0x64)throw CliErrors[_0x3d9ce8(0x11a)]('Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.');const _0x240537=a131_0x35bdd2[_0x3d9ce8(0x142)](process[_0x3d9ce8(0x13f)](),_0x39d946);if(existsSync(_0x240537))throw CliErrors[_0x3d9ce8(0x11a)]('Project\x20directory\x20\x22'+_0x39d946+_0x3d9ce8(0x138),_0x3d9ce8(0x144));try{const _0x2d155a=a131_0x35bdd2[_0x3d9ce8(0x133)](_0x240537);await a131_0x562684[_0x3d9ce8(0x10f)](_0x2d155a,a131_0x562684[_0x3d9ce8(0x143)][_0x3d9ce8(0x123)]);}catch{throw CliErrors[_0x3d9ce8(0x11a)](_0x3d9ce8(0x137),'Check\x20directory\x20permissions.');}try{console[_0x3d9ce8(0x120)](_0x3d9ce8(0x135)+_0x39d946+_0x3d9ce8(0x11f));const _0x443123=getSubAppReactDemoTemplateDir();await copyDirectory(_0x443123,_0x240537),console['log']('\x20\x20√\x20Project\x20template\x20created'),await updatePackageJsonName(_0x39d946),console[_0x3d9ce8(0x120)](_0x3d9ce8(0x112)),console[_0x3d9ce8(0x120)](_0x3d9ce8(0x12b)),console[_0x3d9ce8(0x120)](_0x3d9ce8(0x129)),await formatCode(_0x240537),console[_0x3d9ce8(0x120)](_0x3d9ce8(0x13d)),await configureProject(_0x39d946,_0x2fb7eb,_0x2f21e2),console[_0x3d9ce8(0x120)]('\x20\x20√\x20Configuration\x20file\x20created'),_0x2fb7eb&&await pullApiConfig(_0x240537,_0x2fb7eb,_0x2f21e2,_0x55fdaa),console['log'](_0x3d9ce8(0x119)+_0x39d946+'\x20created\x20successfully!'),console[_0x3d9ce8(0x120)]('\x0a\x20\x20cd\x20'+_0x39d946),console[_0x3d9ce8(0x120)]('\x20\x20rabetbase\x20run\x20start\x0a');}catch(_0x4db0e6){try{existsSync(_0x240537)&&await a131_0x562684['rm'](_0x240537,{'recursive':!![],'force':!![]});}catch{}throw _0x4db0e6;}}async function updatePackageJsonName(_0x224628){const _0x870da4=a131_0x1de9,_0x3c5480=a131_0x35bdd2[_0x870da4(0x142)](process[_0x870da4(0x13f)](),_0x224628),_0x221c40=a131_0x35bdd2[_0x870da4(0x13b)](_0x3c5480,_0x870da4(0x11d)),_0x145c01=await a131_0x562684[_0x870da4(0x110)](_0x221c40,_0x870da4(0x124)),_0x24dc4e=JSON[_0x870da4(0x117)](_0x145c01);_0x24dc4e[_0x870da4(0x145)]=_0x224628,_0x24dc4e['description']=_0x870da4(0x131),await a131_0x562684[_0x870da4(0x126)](_0x221c40,JSON[_0x870da4(0x134)](_0x24dc4e,null,0x2)+'\x0a');}function detectPackageManager(){const _0x5e30a3=a131_0x1de9;try{return execSync(_0x5e30a3(0x115),{'stdio':_0x5e30a3(0x13a)}),'bun';}catch{return'npm';}}async function formatCode(_0x3aad45){try{await execAsync('bun\x20run\x20format',{'cwd':_0x3aad45});}catch{}}async function configureProject(_0x4f4d3a,_0x5b13a8,_0x72638e){const _0x32940e=a131_0x1de9,_0x4e7ef2=a131_0x35bdd2[_0x32940e(0x142)](process[_0x32940e(0x13f)](),_0x4f4d3a),_0x4082ed=a131_0x35bdd2[_0x32940e(0x13b)](_0x4e7ef2,NEW_CONFIG_NAME),_0x4e84d8=readConfig(),_0xb23750=typeof _0x4e84d8[_0x32940e(0x128)]===_0x32940e(0x121)?_0x4e84d8['env']:undefined,_0x5caaf6={};for(const _0x92e1c5 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x4e84d8[_0x92e1c5]!=null)_0x5caaf6[_0x92e1c5]=_0x4e84d8[_0x92e1c5];}const _0x59aebe=buildCanonicalProjectConfig(_0x5caaf6,{'appCodes':_0x5b13a8?[_0x5b13a8]:[],'env':_0x72638e||_0xb23750||_0x32940e(0x10e),'metadata':{'createdAt':new Date()[_0x32940e(0x136)](),'version':getCliVersion()}});writeConfigFile(_0x4082ed,_0x59aebe);}async function pullApiConfig(_0x1b0268,_0x306c08,_0x43343d,_0x55d1f0){const _0x5a7f59=a131_0x1de9,_0x1bb2a1=process[_0x5a7f59(0x13f)]();try{process[_0x5a7f59(0x11c)](_0x1b0268);const _0x1a66b5=_0x43343d||_0x5a7f59(0x10e);initEnv(_0x1a66b5),console[_0x5a7f59(0x120)](_0x5a7f59(0x10d));const {configArray:_0x4dfb44}=await fetchModelList(_0x306c08,_0x55d1f0||''),_0x1da547=await generateApiFile(_0x4dfb44,'',_0x306c08,!![],_0x1a66b5,DEFAULT_API_DIR);console['log']('\x20\x20√\x20Pulled\x20'+_0x4dfb44[_0x5a7f59(0x12c)]+_0x5a7f59(0x125)+_0x1da547[_0x5a7f59(0x11e)]+_0x5a7f59(0x12e));}catch(_0x4caeda){console[_0x5a7f59(0x120)](_0x5a7f59(0x114)+CLI_BIN_NAME+_0x5a7f59(0x122));}finally{process[_0x5a7f59(0x11c)](_0x1bb2a1);}}
@@ -1 +1 @@
1
- const a130_0x127c26=a130_0x450d;(function(_0x38695c,_0x139674){const _0x198cfa=a130_0x450d,_0x357928=_0x38695c();while(!![]){try{const _0x26e88b=-parseInt(_0x198cfa(0x15b))/0x1+-parseInt(_0x198cfa(0x157))/0x2+-parseInt(_0x198cfa(0x156))/0x3+parseInt(_0x198cfa(0x158))/0x4+parseInt(_0x198cfa(0x155))/0x5+parseInt(_0x198cfa(0x15a))/0x6*(-parseInt(_0x198cfa(0x160))/0x7)+parseInt(_0x198cfa(0x159))/0x8;if(_0x26e88b===_0x139674)break;else _0x357928['push'](_0x357928['shift']());}catch(_0xa9b9ba){_0x357928['push'](_0x357928['shift']());}}}(a130_0x45a8,0xa2158));import a130_0x1119dc from'node:path';function a130_0x45a8(){const _0x5a220a=['templates','14805KpbTLs','3266676PsGGFa','1603682qQpIKG','5289260exypNp','24421104PVAvLo','12yAhZVg','1112719SgmqMn','../../../../','sub-app-react-demo','projects','join','2486981zBprDB','dirname'];a130_0x45a8=function(){return _0x5a220a;};return a130_0x45a8();}import{fileURLToPath}from'node:url';const __dirname=a130_0x1119dc[a130_0x127c26(0x161)](fileURLToPath(import.meta.url));function a130_0x450d(_0x3ad9bb,_0x33aa27){_0x3ad9bb=_0x3ad9bb-0x155;const _0x45a82e=a130_0x45a8();let _0x450df2=_0x45a82e[_0x3ad9bb];return _0x450df2;}export function getRabetbaseCliPackageRoot(){const _0x1b3dc5=a130_0x127c26;return a130_0x1119dc['resolve'](__dirname,_0x1b3dc5(0x15c));}export function getSubAppReactDemoTemplateDir(){const _0x51c808=a130_0x127c26;return a130_0x1119dc[_0x51c808(0x15f)](getRabetbaseCliPackageRoot(),_0x51c808(0x162),_0x51c808(0x15e),_0x51c808(0x15d));}
1
+ (function(_0x6b2a58,_0x4fa2f4){const _0x50c558=a132_0x54e1,_0x30b801=_0x6b2a58();while(!![]){try{const _0x26e805=parseInt(_0x50c558(0xc6))/0x1*(-parseInt(_0x50c558(0xcb))/0x2)+-parseInt(_0x50c558(0xc5))/0x3+parseInt(_0x50c558(0xc7))/0x4+-parseInt(_0x50c558(0xcc))/0x5*(-parseInt(_0x50c558(0xc1))/0x6)+-parseInt(_0x50c558(0xbf))/0x7*(parseInt(_0x50c558(0xc2))/0x8)+-parseInt(_0x50c558(0xbe))/0x9*(-parseInt(_0x50c558(0xc9))/0xa)+parseInt(_0x50c558(0xc3))/0xb;if(_0x26e805===_0x4fa2f4)break;else _0x30b801['push'](_0x30b801['shift']());}catch(_0xc6560e){_0x30b801['push'](_0x30b801['shift']());}}}(a132_0xa3ba,0xd480c));import a132_0x3f8f22 from'node:path';function a132_0x54e1(_0x4a70af,_0x240176){_0x4a70af=_0x4a70af-0xbd;const _0xa3baa4=a132_0xa3ba();let _0x54e18b=_0xa3baa4[_0x4a70af];return _0x54e18b;}function a132_0xa3ba(){const _0x557fa2=['join','2QzcpCB','1697845BQPQBW','resolve','27pUFrZJ','14SBgUqO','sub-app-react-demo','6QerFzn','525736zdpbhS','4109061zqgNoX','projects','52545YmTYUy','970036dhFTYN','1264472dJrtrf','../../../../','3200530KAZUOs'];a132_0xa3ba=function(){return _0x557fa2;};return a132_0xa3ba();}import{fileURLToPath}from'node:url';const __dirname=a132_0x3f8f22['dirname'](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x2ad623=a132_0x54e1;return a132_0x3f8f22[_0x2ad623(0xbd)](__dirname,_0x2ad623(0xc8));}export function getSubAppReactDemoTemplateDir(){const _0x165610=a132_0x54e1;return a132_0x3f8f22[_0x165610(0xca)](getRabetbaseCliPackageRoot(),'templates',_0x165610(0xc4),_0x165610(0xc0));}
@@ -1 +1 @@
1
- (function(_0x147169,_0x2e77f8){const _0x3dfed1=a131_0x2387,_0x3be929=_0x147169();while(!![]){try{const _0x2e27c1=parseInt(_0x3dfed1(0x82))/0x1+parseInt(_0x3dfed1(0x83))/0x2+-parseInt(_0x3dfed1(0x87))/0x3*(parseInt(_0x3dfed1(0x8e))/0x4)+parseInt(_0x3dfed1(0x8d))/0x5*(-parseInt(_0x3dfed1(0x90))/0x6)+-parseInt(_0x3dfed1(0x8f))/0x7*(-parseInt(_0x3dfed1(0x86))/0x8)+parseInt(_0x3dfed1(0x91))/0x9+-parseInt(_0x3dfed1(0x81))/0xa;if(_0x2e27c1===_0x2e77f8)break;else _0x3be929['push'](_0x3be929['shift']());}catch(_0x43d577){_0x3be929['push'](_0x3be929['shift']());}}}(a131_0x54dc,0x95676));import a131_0x5ece4b from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a131_0x2387(_0x2dc511,_0x119529){_0x2dc511=_0x2dc511-0x80;const _0x54dce4=a131_0x54dc();let _0x23877b=_0x54dce4[_0x2dc511];return _0x23877b;}import{logger}from'../../../utils/logger.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x1dcf36){const _0x2d3dfa=a131_0x2387,_0x4f2927=Date['now'](),_0x37b7cb=a131_0x5ece4b[_0x2d3dfa(0x92)](process[_0x2d3dfa(0x8a)](),_0x1dcf36);try{logger[_0x2d3dfa(0x8b)](_0x2d3dfa(0x89),_0x2d3dfa(0x84),{'projectCode':_0x1dcf36,'templateDir':templateDir}),await copyDirectory(templateDir,_0x37b7cb);const _0x24c15c=Date[_0x2d3dfa(0x88)]()-_0x4f2927;logger[_0x2d3dfa(0x85)]('copy',_0x2d3dfa(0x8c),_0x24c15c,{'projectCode':_0x1dcf36});}catch(_0x16062e){const _0x48b5da=Date[_0x2d3dfa(0x88)]()-_0x4f2927;logger['error'](_0x2d3dfa(0x89),'项目模板复制失败',{'projectCode':_0x1dcf36,'error':_0x16062e instanceof Error?_0x16062e[_0x2d3dfa(0x80)]:String(_0x16062e),'duration':_0x48b5da});throw _0x16062e;}return formatElapsed(_0x4f2927);}function a131_0x54dc(){const _0x2bc64d=['info','项目模板复制完成','205wSfSpR','4415336FoFwaf','1318065JbHfad','4074wenPOv','4972320YdJpjf','resolve','message','5131610oAtqzV','257452EdtQWl','1387360dmfVXI','开始复制项目模板','success','32EPswPh','3gZmCZY','now','copy','cwd'];a131_0x54dc=function(){return _0x2bc64d;};return a131_0x54dc();}
1
+ (function(_0x1d91d2,_0x705537){const _0x3b0706=a133_0x24d4,_0x32b1ee=_0x1d91d2();while(!![]){try{const _0x3464c5=-parseInt(_0x3b0706(0xda))/0x1*(-parseInt(_0x3b0706(0xcf))/0x2)+-parseInt(_0x3b0706(0xd7))/0x3*(-parseInt(_0x3b0706(0xdb))/0x4)+parseInt(_0x3b0706(0xd1))/0x5*(parseInt(_0x3b0706(0xd8))/0x6)+parseInt(_0x3b0706(0xd0))/0x7*(parseInt(_0x3b0706(0xcd))/0x8)+parseInt(_0x3b0706(0xd9))/0x9+parseInt(_0x3b0706(0xd3))/0xa+-parseInt(_0x3b0706(0xdc))/0xb;if(_0x3464c5===_0x705537)break;else _0x32b1ee['push'](_0x32b1ee['shift']());}catch(_0xe9933c){_0x32b1ee['push'](_0x32b1ee['shift']());}}}(a133_0x367b,0x83d5c));import a133_0x1a727a from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';function a133_0x367b(){const _0x52a2cf=['info','success','72VeRueJ','error','94JVRjnl','422149HIibjh','19145eAlFKQ','项目模板复制完成','9457280viKfYy','resolve','cwd','开始复制项目模板','231uTpxtO','78vIyWsU','2286027DTvpne','13613QiBLVZ','12980ezThKa','23561461tLLtFD','now','message'];a133_0x367b=function(){return _0x52a2cf;};return a133_0x367b();}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a133_0x24d4(_0x45bb3f,_0x47625e){_0x45bb3f=_0x45bb3f-0xcc;const _0x367b9b=a133_0x367b();let _0x24d434=_0x367b9b[_0x45bb3f];return _0x24d434;}import{logger}from'../../../utils/logger.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x2fcfc3){const _0x1d4c36=a133_0x24d4,_0x3f7314=Date['now'](),_0x4cc292=a133_0x1a727a[_0x1d4c36(0xd4)](process[_0x1d4c36(0xd5)](),_0x2fcfc3);try{logger[_0x1d4c36(0xdf)]('copy',_0x1d4c36(0xd6),{'projectCode':_0x2fcfc3,'templateDir':templateDir}),await copyDirectory(templateDir,_0x4cc292);const _0x5abb46=Date[_0x1d4c36(0xdd)]()-_0x3f7314;logger[_0x1d4c36(0xcc)]('copy',_0x1d4c36(0xd2),_0x5abb46,{'projectCode':_0x2fcfc3});}catch(_0x17695a){const _0x1b9ed0=Date['now']()-_0x3f7314;logger[_0x1d4c36(0xce)]('copy','项目模板复制失败',{'projectCode':_0x2fcfc3,'error':_0x17695a instanceof Error?_0x17695a[_0x1d4c36(0xde)]:String(_0x17695a),'duration':_0x1b9ed0});throw _0x17695a;}return formatElapsed(_0x3f7314);}
@@ -1 +1 @@
1
- (function(_0x2b9b51,_0x5cc47f){const _0xb5838c=a132_0x268d,_0xec3696=_0x2b9b51();while(!![]){try{const _0x55b265=-parseInt(_0xb5838c(0x19b))/0x1+-parseInt(_0xb5838c(0x196))/0x2+-parseInt(_0xb5838c(0x198))/0x3+-parseInt(_0xb5838c(0x194))/0x4*(parseInt(_0xb5838c(0x193))/0x5)+-parseInt(_0xb5838c(0x1a3))/0x6+-parseInt(_0xb5838c(0x1a1))/0x7*(-parseInt(_0xb5838c(0x1a5))/0x8)+-parseInt(_0xb5838c(0x195))/0x9*(-parseInt(_0xb5838c(0x19a))/0xa);if(_0x55b265===_0x5cc47f)break;else _0xec3696['push'](_0xec3696['shift']());}catch(_0x475048){_0xec3696['push'](_0xec3696['shift']());}}}(a132_0x26f8,0xaea36));import a132_0x4e98ce from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a132_0x26f8(){const _0x338b72=['开始格式化代码','6908904LEDiwr','cwd','608XkIIZh','30190Vbzfxq','444RiVdJS','9pHbIwl','28326HarIJY','info','1487220DuKnIT','--write','35045960bILFsS','1010421mBNKDm','代码格式化完成','format','resolve','now','message','50911aoTFYA'];a132_0x26f8=function(){return _0x338b72;};return a132_0x26f8();}import{resolveNpmBin}from'../../../utils/platform.js';function a132_0x268d(_0x140e09,_0x5adc1b){_0x140e09=_0x140e09-0x193;const _0x26f8c5=a132_0x26f8();let _0x268ded=_0x26f8c5[_0x140e09];return _0x268ded;}export async function formatProjectCode(_0x2650f2){const _0x21f2b7=a132_0x268d,_0x40494e=Date[_0x21f2b7(0x19f)](),_0x788ecb=a132_0x4e98ce[_0x21f2b7(0x19e)](process[_0x21f2b7(0x1a4)](),_0x2650f2);try{logger[_0x21f2b7(0x197)](_0x21f2b7(0x19d),_0x21f2b7(0x1a2),{'projectCode':_0x2650f2}),await execa(resolveNpmBin('npx'),['prettier',_0x21f2b7(0x199),'.'],{'cwd':_0x788ecb});const _0x488bd3=Date[_0x21f2b7(0x19f)]()-_0x40494e;logger['success'](_0x21f2b7(0x19d),_0x21f2b7(0x19c),_0x488bd3,{'projectCode':_0x2650f2});}catch(_0x349171){const _0x5b4a29=Date[_0x21f2b7(0x19f)]()-_0x40494e;logger['error']('format','代码格式化失败',{'projectCode':_0x2650f2,'error':_0x349171 instanceof Error?_0x349171[_0x21f2b7(0x1a0)]:String(_0x349171),'duration':_0x5b4a29});throw _0x349171;}return formatElapsed(_0x40494e);}
1
+ (function(_0x125222,_0x27c81b){const _0x309b34=a134_0x4502,_0x4d8d21=_0x125222();while(!![]){try{const _0x5cd3af=-parseInt(_0x309b34(0x201))/0x1+parseInt(_0x309b34(0x204))/0x2+parseInt(_0x309b34(0x202))/0x3*(parseInt(_0x309b34(0x1fe))/0x4)+parseInt(_0x309b34(0x1f9))/0x5*(parseInt(_0x309b34(0x1f8))/0x6)+parseInt(_0x309b34(0x1fd))/0x7+parseInt(_0x309b34(0x205))/0x8*(-parseInt(_0x309b34(0x203))/0x9)+-parseInt(_0x309b34(0x1f6))/0xa*(parseInt(_0x309b34(0x1fc))/0xb);if(_0x5cd3af===_0x27c81b)break;else _0x4d8d21['push'](_0x4d8d21['shift']());}catch(_0x450f54){_0x4d8d21['push'](_0x4d8d21['shift']());}}}(a134_0x3648,0x2084f));import a134_0x4a1b61 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 a134_0x3648(){const _0xfe378c=['382690PEyydV','4iNRaIv','success','info','54692hMytmG','723531JFqomc','65241iDSCxl','161536OhQVpB','104ZbIWiY','resolve','--write','now','message','cwd','21790Ncymwq','format','84StbsHi','18395bPqLYP','开始格式化代码','error','737HTsnGA'];a134_0x3648=function(){return _0xfe378c;};return a134_0x3648();}function a134_0x4502(_0x2dc7f6,_0xbddce4){_0x2dc7f6=_0x2dc7f6-0x1f2;const _0x364827=a134_0x3648();let _0x450204=_0x364827[_0x2dc7f6];return _0x450204;}export async function formatProjectCode(_0x102019){const _0x2c8006=a134_0x4502,_0xd657f6=Date['now'](),_0x18e42d=a134_0x4a1b61[_0x2c8006(0x206)](process[_0x2c8006(0x1f5)](),_0x102019);try{logger[_0x2c8006(0x200)](_0x2c8006(0x1f7),_0x2c8006(0x1fa),{'projectCode':_0x102019}),await execa(resolveNpmBin('npx'),['prettier',_0x2c8006(0x1f2),'.'],{'cwd':_0x18e42d});const _0x4fe925=Date[_0x2c8006(0x1f3)]()-_0xd657f6;logger[_0x2c8006(0x1ff)](_0x2c8006(0x1f7),'代码格式化完成',_0x4fe925,{'projectCode':_0x102019});}catch(_0x58eae8){const _0xc7a67a=Date[_0x2c8006(0x1f3)]()-_0xd657f6;logger[_0x2c8006(0x1fb)]('format','代码格式化失败',{'projectCode':_0x102019,'error':_0x58eae8 instanceof Error?_0x58eae8[_0x2c8006(0x1f4)]:String(_0x58eae8),'duration':_0xc7a67a});throw _0x58eae8;}return formatElapsed(_0xd657f6);}
@@ -1 +1 @@
1
- function a133_0x1a5f(_0x3d2a33,_0x3c48c1){_0x3d2a33=_0x3d2a33-0x1bd;const _0x231262=a133_0x2312();let _0x1a5f4b=_0x231262[_0x3d2a33];return _0x1a5f4b;}(function(_0x3c6f9f,_0x28c910){const _0x31992e=a133_0x1a5f,_0x188dec=_0x3c6f9f();while(!![]){try{const _0x459fbd=-parseInt(_0x31992e(0x1cc))/0x1*(parseInt(_0x31992e(0x1c0))/0x2)+parseInt(_0x31992e(0x1cb))/0x3*(-parseInt(_0x31992e(0x1c8))/0x4)+parseInt(_0x31992e(0x1c5))/0x5*(-parseInt(_0x31992e(0x1c3))/0x6)+parseInt(_0x31992e(0x1bf))/0x7+parseInt(_0x31992e(0x1c7))/0x8+-parseInt(_0x31992e(0x1c2))/0x9*(-parseInt(_0x31992e(0x1ce))/0xa)+parseInt(_0x31992e(0x1ca))/0xb*(parseInt(_0x31992e(0x1cd))/0xc);if(_0x459fbd===_0x28c910)break;else _0x188dec['push'](_0x188dec['shift']());}catch(_0x3c5c04){_0x188dec['push'](_0x188dec['shift']());}}}(a133_0x2312,0x5d446));import a133_0x37786d from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a133_0x2312(){const _0x5c4dcb=['180JsovEj','7278TfIfet','resolve','2690PgnTEi','https://registry.npmmirror.com','3062208BTEwQv','459236XfXHov','依赖安装失败','286MSVRpN','9eKAcbv','3DOSQBB','617928idNHgI','18890atXhDN','success','message','info','now','install','472549TtYZZH','298576dUQrQu','error'];a133_0x2312=function(){return _0x5c4dcb;};return a133_0x2312();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x1503ea){const _0x40866c=a133_0x1a5f,_0x3f3c4f=Date[_0x40866c(0x1bd)](),_0x4531c4=a133_0x37786d[_0x40866c(0x1c4)](process['cwd'](),_0x1503ea);try{logger[_0x40866c(0x1d1)]('install','开始安装依赖',{'projectCode':_0x1503ea,'registry':_0x40866c(0x1c6)}),await execa(resolveNpmBin('npm'),[_0x40866c(0x1be),'--registry',_0x40866c(0x1c6)],{'cwd':_0x4531c4});const _0x1480c4=Date['now']()-_0x3f3c4f;logger[_0x40866c(0x1cf)](_0x40866c(0x1be),'依赖安装完成',_0x1480c4,{'projectCode':_0x1503ea});}catch(_0x1e7ff2){const _0x1cfa7a=Date['now']()-_0x3f3c4f;logger[_0x40866c(0x1c1)](_0x40866c(0x1be),_0x40866c(0x1c9),{'projectCode':_0x1503ea,'error':_0x1e7ff2 instanceof Error?_0x1e7ff2[_0x40866c(0x1d0)]:String(_0x1e7ff2),'duration':_0x1cfa7a});throw _0x1e7ff2;}return formatElapsed(_0x3f3c4f);}
1
+ (function(_0x216a36,_0x398645){const _0x198028=a135_0x6d50,_0x3b2e44=_0x216a36();while(!![]){try{const _0x2517c6=-parseInt(_0x198028(0x151))/0x1+parseInt(_0x198028(0x14e))/0x2+-parseInt(_0x198028(0x142))/0x3+parseInt(_0x198028(0x14b))/0x4*(parseInt(_0x198028(0x144))/0x5)+-parseInt(_0x198028(0x147))/0x6*(-parseInt(_0x198028(0x146))/0x7)+parseInt(_0x198028(0x141))/0x8+parseInt(_0x198028(0x145))/0x9;if(_0x2517c6===_0x398645)break;else _0x3b2e44['push'](_0x3b2e44['shift']());}catch(_0x263158){_0x3b2e44['push'](_0x3b2e44['shift']());}}}(a135_0xebf2,0x459e0));import a135_0x485ce6 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a135_0x6d50(_0x3bad39,_0xbe0e4){_0x3bad39=_0x3bad39-0x141;const _0xebf212=a135_0xebf2();let _0x6d50f0=_0xebf212[_0x3bad39];return _0x6d50f0;}import{resolveNpmBin}from'../../../utils/platform.js';function a135_0xebf2(){const _0x5edd39=['resolve','info','error','28TmmVip','now','npm','506322bStnrx','install','依赖安装完成','172787nJIeVk','https://registry.npmmirror.com','cwd','1538712QAoGcq','1615383aOFmCR','依赖安装失败','78510kbVBEl','321912ebIvac','7nDBuON','2431308WCHLXu'];a135_0xebf2=function(){return _0x5edd39;};return a135_0xebf2();}export async function installDependencies(_0x177eb0){const _0x560f2a=a135_0x6d50,_0x46b4ab=Date[_0x560f2a(0x14c)](),_0x50e5a9=a135_0x485ce6[_0x560f2a(0x148)](process[_0x560f2a(0x153)](),_0x177eb0);try{logger[_0x560f2a(0x149)](_0x560f2a(0x14f),'开始安装依赖',{'projectCode':_0x177eb0,'registry':_0x560f2a(0x152)}),await execa(resolveNpmBin(_0x560f2a(0x14d)),[_0x560f2a(0x14f),'--registry','https://registry.npmmirror.com'],{'cwd':_0x50e5a9});const _0x2fa69f=Date[_0x560f2a(0x14c)]()-_0x46b4ab;logger['success']('install',_0x560f2a(0x150),_0x2fa69f,{'projectCode':_0x177eb0});}catch(_0x2a7b8f){const _0x449624=Date[_0x560f2a(0x14c)]()-_0x46b4ab;logger[_0x560f2a(0x14a)](_0x560f2a(0x14f),_0x560f2a(0x143),{'projectCode':_0x177eb0,'error':_0x2a7b8f instanceof Error?_0x2a7b8f['message']:String(_0x2a7b8f),'duration':_0x449624});throw _0x2a7b8f;}return formatElapsed(_0x46b4ab);}
@@ -1 +1 @@
1
- const a134_0x29fbbd=a134_0x327e;(function(_0x447356,_0x338cfe){const _0x4ab8ac=a134_0x327e,_0x3d797f=_0x447356();while(!![]){try{const _0x31d1d9=-parseInt(_0x4ab8ac(0x105))/0x1*(parseInt(_0x4ab8ac(0x111))/0x2)+parseInt(_0x4ab8ac(0xf8))/0x3+parseInt(_0x4ab8ac(0x106))/0x4+parseInt(_0x4ab8ac(0x10e))/0x5*(-parseInt(_0x4ab8ac(0xf5))/0x6)+parseInt(_0x4ab8ac(0x10f))/0x7*(parseInt(_0x4ab8ac(0x102))/0x8)+-parseInt(_0x4ab8ac(0xfd))/0x9*(parseInt(_0x4ab8ac(0x10b))/0xa)+parseInt(_0x4ab8ac(0xec))/0xb;if(_0x31d1d9===_0x338cfe)break;else _0x3d797f['push'](_0x3d797f['shift']());}catch(_0x409d74){_0x3d797f['push'](_0x3d797f['shift']());}}}(a134_0x5920,0x9617b));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a134_0x5920(){const _0x51afc0=['16JVkHNi','../../commands/project/create/main.js','boolean','1148773aLGixX','1184640Dpdvbt','str','env','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','1409390PIpPHh','Auto-confirm\x20prompts','nonInteractive','2156835HCyLLI','1196958nQYILA','App\x20code\x20to\x20initialize','2yUDFfK','Deprecated:\x20use\x20workspace\x20init\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','\x20workspace\x20init','name','10935166Exvgux','trim','project','write','appcode','init','args','../../commands/project/create/non-interactive.js','Target\x20environment','6nDiDBB','string','validation','2956446NIuXWn','create','project-name','Create\x20a\x20new\x20project','Project\x20name','27XfbttA','Skip\x20confirmation\x20prompt','yes','Usage:\x20','cookie'];a134_0x5920=function(){return _0x51afc0;};return a134_0x5920();}function a134_0x327e(_0x32f9a0,_0x51894c){_0x32f9a0=_0x32f9a0-0xeb;const _0x592064=a134_0x5920();let _0x327efd=_0x592064[_0x32f9a0];return _0x327efd;}import{initConfig}from'../../commands/project/init.js';import{upgradeApp}from'../../commands/project/upgrade.js';const initFlags=[{'name':a134_0x29fbbd(0xf0),'type':'string','description':a134_0x29fbbd(0x110)},{'name':a134_0x29fbbd(0x108),'type':a134_0x29fbbd(0xf6),'description':'Target\x20environment'},{'name':a134_0x29fbbd(0xff),'type':'boolean','description':a134_0x29fbbd(0x10c),'default':![]}],createFlags=[{'name':a134_0x29fbbd(0xeb),'type':a134_0x29fbbd(0xf6),'description':a134_0x29fbbd(0xfc)},{'name':a134_0x29fbbd(0x108),'type':a134_0x29fbbd(0xf6),'description':a134_0x29fbbd(0xf4)},{'name':a134_0x29fbbd(0xf0),'type':a134_0x29fbbd(0xf6),'description':'App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)'}],upgradeFlags=[{'name':a134_0x29fbbd(0xff),'type':a134_0x29fbbd(0x104),'description':a134_0x29fbbd(0xfe),'default':![]}];export const projectDefinitions=[{'service':a134_0x29fbbd(0xee),'command':a134_0x29fbbd(0xf1),'description':a134_0x29fbbd(0x112),'risk':a134_0x29fbbd(0xef),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'hidden':!![],'deprecated':{'replacement':CLI_BIN_NAME+a134_0x29fbbd(0x113),'since':'2026-07'},'flags':initFlags,async 'execute'(_0x326f1a){const _0x3a5b56=a134_0x29fbbd;return await initConfig({'appcode':_0x326f1a[_0x3a5b56(0x107)](_0x3a5b56(0xf0))||undefined,'env':_0x326f1a['str']('env')||undefined,'autoYes':_0x326f1a['bool'](_0x3a5b56(0xff))}),{'ok':!![]};}},{'service':a134_0x29fbbd(0xee),'command':a134_0x29fbbd(0xf9),'description':a134_0x29fbbd(0xfb),'risk':'write','requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a134_0x29fbbd(0xfa),'description':'Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','required':![]}],'flags':createFlags,async 'execute'(_0x149d3b){const _0x5dd325=a134_0x29fbbd,{createApp:_0x53c063}=await import(_0x5dd325(0x103)),{createProjectNonInteractive:_0x1235d0}=await import(_0x5dd325(0xf3)),_0xbc158f=_0x149d3b[_0x5dd325(0x107)](_0x5dd325(0xeb))['trim']()||_0x149d3b[_0x5dd325(0xf2)][0x0]?.[_0x5dd325(0xed)](),_0x17e9a1=_0x149d3b[_0x5dd325(0x107)](_0x5dd325(0x108))||undefined,_0x460970=_0x149d3b['str'](_0x5dd325(0xf0))||undefined;if(_0x149d3b[_0x5dd325(0x10d)]){if(!_0xbc158f)throw CliErrors[_0x5dd325(0xf7)](_0x5dd325(0x10a),_0x5dd325(0x100)+CLI_BIN_NAME+'\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]');await _0x1235d0(_0xbc158f,_0x17e9a1,_0x460970,_0x149d3b[_0x5dd325(0x101)]);}else await _0x53c063({'projectCode':_0xbc158f,'appCode':_0x460970,'env':_0x17e9a1,'cookie':_0x149d3b[_0x5dd325(0x101)]});return{'ok':!![]};}},{'service':a134_0x29fbbd(0xee),'command':'upgrade','description':a134_0x29fbbd(0x109),'risk':a134_0x29fbbd(0xef),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x4afa6c){const _0x2aef85=a134_0x29fbbd;return await upgradeApp(_0x4afa6c[_0x2aef85(0x10d)],{'yes':_0x4afa6c['bool'](_0x2aef85(0xff))}),{'ok':!![]};}}];
1
+ const a136_0x1f276c=a136_0x953b;(function(_0x139c78,_0x1f468e){const _0x5233db=a136_0x953b,_0x1acb10=_0x139c78();while(!![]){try{const _0x46a73e=-parseInt(_0x5233db(0x116))/0x1+parseInt(_0x5233db(0x124))/0x2+-parseInt(_0x5233db(0x12a))/0x3*(-parseInt(_0x5233db(0x103))/0x4)+-parseInt(_0x5233db(0x101))/0x5+-parseInt(_0x5233db(0x109))/0x6+parseInt(_0x5233db(0x11d))/0x7*(parseInt(_0x5233db(0x11a))/0x8)+parseInt(_0x5233db(0x111))/0x9*(parseInt(_0x5233db(0x10b))/0xa);if(_0x46a73e===_0x1f468e)break;else _0x1acb10['push'](_0x1acb10['shift']());}catch(_0x1c16ab){_0x1acb10['push'](_0x1acb10['shift']());}}}(a136_0x4999,0x75cf6));import{CliErrors}from'../../errors.js';function a136_0x4999(){const _0x2210bc=['Skip\x20confirmation\x20prompt','../../commands/project/create/main.js','494031rNcVdv','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','create','4423850MysvFR','project','16gpHHhU','string','str','Target\x20environment','name','../../commands/project/create/non-interactive.js','5383614eiKmCh','\x20workspace\x20init','20DwksLm','yes','Create\x20a\x20new\x20project','args','2026-07','nonInteractive','6506928AdVNgI','project-name','bool','Usage:\x20','appcode','328530TrhqYb','upgrade','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','validation','16Ppitmj','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','write','201551LhkWqV','init','env','App\x20code\x20to\x20initialize','trim','Auto-confirm\x20prompts','Project\x20name','861682AEoLZT','Deprecated:\x20use\x20workspace\x20init\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','boolean'];a136_0x4999=function(){return _0x2210bc;};return a136_0x4999();}function a136_0x953b(_0x42e7e0,_0x28d7df){_0x42e7e0=_0x42e7e0-0xff;const _0x4999a0=a136_0x4999();let _0x953b1=_0x4999a0[_0x42e7e0];return _0x953b1;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{initConfig}from'../../commands/project/init.js';import{upgradeApp}from'../../commands/project/upgrade.js';const initFlags=[{'name':a136_0x1f276c(0x115),'type':a136_0x1f276c(0x104),'description':a136_0x1f276c(0x120)},{'name':'env','type':'string','description':a136_0x1f276c(0x106)},{'name':'yes','type':a136_0x1f276c(0x127),'description':a136_0x1f276c(0x122),'default':![]}],createFlags=[{'name':a136_0x1f276c(0x107),'type':a136_0x1f276c(0x104),'description':a136_0x1f276c(0x123)},{'name':a136_0x1f276c(0x11f),'type':'string','description':'Target\x20environment'},{'name':a136_0x1f276c(0x115),'type':a136_0x1f276c(0x104),'description':a136_0x1f276c(0x11b)}],upgradeFlags=[{'name':a136_0x1f276c(0x10c),'type':a136_0x1f276c(0x127),'description':a136_0x1f276c(0x128),'default':![]}];export const projectDefinitions=[{'service':a136_0x1f276c(0x102),'command':a136_0x1f276c(0x11e),'description':a136_0x1f276c(0x125),'risk':a136_0x1f276c(0x11c),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'hidden':!![],'deprecated':{'replacement':CLI_BIN_NAME+a136_0x1f276c(0x10a),'since':a136_0x1f276c(0x10f)},'flags':initFlags,async 'execute'(_0x2a4519){const _0x43cfa1=a136_0x1f276c;return await initConfig({'appcode':_0x2a4519[_0x43cfa1(0x105)](_0x43cfa1(0x115))||undefined,'env':_0x2a4519[_0x43cfa1(0x105)](_0x43cfa1(0x11f))||undefined,'autoYes':_0x2a4519[_0x43cfa1(0x113)]('yes')}),{'ok':!![]};}},{'service':a136_0x1f276c(0x102),'command':a136_0x1f276c(0x100),'description':a136_0x1f276c(0x10d),'risk':a136_0x1f276c(0x11c),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a136_0x1f276c(0x112),'description':a136_0x1f276c(0x126),'required':![]}],'flags':createFlags,async 'execute'(_0x48d5da){const _0x2c0f6e=a136_0x1f276c,{createApp:_0x210786}=await import(_0x2c0f6e(0x129)),{createProjectNonInteractive:_0x3ff86d}=await import(_0x2c0f6e(0x108)),_0x8787c1=_0x48d5da[_0x2c0f6e(0x105)](_0x2c0f6e(0x107))['trim']()||_0x48d5da[_0x2c0f6e(0x10e)][0x0]?.[_0x2c0f6e(0x121)](),_0x4e9909=_0x48d5da[_0x2c0f6e(0x105)]('env')||undefined,_0x55c3cd=_0x48d5da['str'](_0x2c0f6e(0x115))||undefined;if(_0x48d5da[_0x2c0f6e(0x110)]){if(!_0x8787c1)throw CliErrors[_0x2c0f6e(0x119)](_0x2c0f6e(0xff),_0x2c0f6e(0x114)+CLI_BIN_NAME+'\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]');await _0x3ff86d(_0x8787c1,_0x4e9909,_0x55c3cd,_0x48d5da['cookie']);}else await _0x210786({'projectCode':_0x8787c1,'appCode':_0x55c3cd,'env':_0x4e9909,'cookie':_0x48d5da['cookie']});return{'ok':!![]};}},{'service':a136_0x1f276c(0x102),'command':a136_0x1f276c(0x117),'description':a136_0x1f276c(0x118),'risk':a136_0x1f276c(0x11c),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x2f742f){const _0x12ee69=a136_0x1f276c;return await upgradeApp(_0x2f742f[_0x12ee69(0x110)],{'yes':_0x2f742f[_0x12ee69(0x113)](_0x12ee69(0x10c))}),{'ok':!![]};}}];
@@ -1 +1 @@
1
- (function(_0x4b1087,_0x18fa97){const _0x2e0f39=a135_0x276a,_0x11cd9b=_0x4b1087();while(!![]){try{const _0x1e0b22=-parseInt(_0x2e0f39(0x8d))/0x1+-parseInt(_0x2e0f39(0xa3))/0x2+-parseInt(_0x2e0f39(0x84))/0x3+-parseInt(_0x2e0f39(0xad))/0x4*(-parseInt(_0x2e0f39(0x92))/0x5)+parseInt(_0x2e0f39(0x95))/0x6+-parseInt(_0x2e0f39(0x9a))/0x7+parseInt(_0x2e0f39(0x78))/0x8*(parseInt(_0x2e0f39(0x9e))/0x9);if(_0x1e0b22===_0x18fa97)break;else _0x11cd9b['push'](_0x11cd9b['shift']());}catch(_0x4ba8ba){_0x11cd9b['push'](_0x11cd9b['shift']());}}}(a135_0x3e9e,0x50277));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a135_0x1f7b43 from'chalk';function a135_0x3e9e(){const _0x23b6f7=['3204590ZvRjbH','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','package.json','3302910pIcKfL','../..','cwd','env','cyan','2016294MfPMzV','info','string','production','22689cmaxhl','.rabetbase.json','.bak','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','green','338808yfUewj','utf8','yellow','Migration\x20cancelled.\x20Run\x20`','parse','trim','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','初始化项目配置文件成功','setLogPath','log','4XDAgEn','1336WGDWGH','toLocaleString','\x20api\x20generate\x27\x20and\x20\x27','version','\x20\x20Default:\x20','\x20→\x20.rabetbase.json','Please\x20enter\x20App\x20Code:','init','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','appcode','\x20\x20appcode:\x20','join','1570395jVnBBW','app','bold','\x20\x20Apps:\x20','1.0.0','\x20workspace\x20init`\x20to\x20start\x20fresh.','✓\x20Upgraded\x20','keys','apps','303188TwoffO','gray','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','defaultApp','Invalid\x20App\x20Code'];a135_0x3e9e=function(){return _0x23b6f7;};return a135_0x3e9e();}import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';function a135_0x276a(_0x208f83,_0x31ceab){_0x208f83=_0x208f83-0x78;const _0x3e9ecd=a135_0x3e9e();let _0x276a2d=_0x3e9ecd[_0x208f83];return _0x276a2d;}import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x49407c){const _0x48a1bf=a135_0x276a,{appcode:_0x4f49ff,env:_0x242513,autoYes:_0x287116}=_0x49407c,_0x8c6f3c=process[_0x48a1bf(0x97)]();if(getProjectConfigPath())throw new Error(_0x48a1bf(0xa9));let _0x32b27f;for(const _0x4c9b28 of LEGACY_CONFIG_NAMES){const _0x402fe1=resolve(_0x8c6f3c,_0x4c9b28);if(existsSync(_0x402fe1)){_0x32b27f=_0x402fe1;break;}}if(_0x32b27f){let _0x12f142={};try{_0x12f142=JSON['parse'](readFileSync(_0x32b27f,_0x48a1bf(0xa4)));}catch{}const _0x2a6362=basename(_0x32b27f),_0x18c7c9=_0x12f142?.[_0x48a1bf(0x81)]||_0x12f142?.[_0x48a1bf(0x85)];let _0x56c0c6=_0x287116;!_0x287116&&(console['log'](a135_0x1f7b43[_0x48a1bf(0xa5)](_0x48a1bf(0xa1)+a135_0x1f7b43[_0x48a1bf(0x86)](_0x2a6362))),_0x18c7c9&&console[_0x48a1bf(0xac)](a135_0x1f7b43[_0x48a1bf(0x99)](_0x48a1bf(0x82)+_0x18c7c9)),_0x56c0c6=await confirm({'message':'Upgrade\x20it\x20to\x20'+a135_0x1f7b43['bold'](_0x48a1bf(0x9f))+'?\x20(Old\x20file\x20→\x20*.bak)','default':!![]}));if(!_0x56c0c6){console[_0x48a1bf(0xac)](_0x48a1bf(0xa6)+CLI_BIN_NAME+_0x48a1bf(0x89));return;}const _0x2c2854=resolve(_0x8c6f3c,NEW_CONFIG_NAME),_0x16fa7b=getCliVersionFromPkg(),_0x228082=readRawConfig(),_0x538e9a=_0x4f49ff||(typeof _0x12f142?.[_0x48a1bf(0x81)]===_0x48a1bf(0x9c)?_0x12f142[_0x48a1bf(0x81)]:undefined)||(typeof _0x12f142?.[_0x48a1bf(0x85)]===_0x48a1bf(0x9c)?_0x12f142[_0x48a1bf(0x85)]:undefined)||await askAppcode(),_0x400229=typeof _0x12f142?.['env']===_0x48a1bf(0x9c)?_0x12f142[_0x48a1bf(0x98)]:typeof _0x228082[_0x48a1bf(0x98)]===_0x48a1bf(0x9c)?_0x228082[_0x48a1bf(0x98)]:_0x48a1bf(0x9d),_0x22972b=buildCanonicalProjectConfig({..._0x228082,..._0x12f142},{'appCodes':[_0x538e9a],'env':_0x400229,'metadata':{'version':_0x16fa7b,'migratedAt':new Date()[_0x48a1bf(0x79)](),'migratedFrom':_0x32b27f}});writeConfigFile(_0x2c2854,_0x22972b);const _0x2cab8a=_0x32b27f+'.bak';renameSync(_0x32b27f,_0x2cab8a),logger[_0x48a1bf(0xab)](_0x8c6f3c),logger['info'](_0x48a1bf(0x7f),'从旧配置文件升级成功',{'from':_0x32b27f,'to':_0x2c2854,'appcode':_0x538e9a,'env':_0x22972b[_0x48a1bf(0x98)]}),console['log'](a135_0x1f7b43[_0x48a1bf(0xa2)](_0x48a1bf(0x8a)+_0x2a6362+_0x48a1bf(0x7d))),console[_0x48a1bf(0xac)](a135_0x1f7b43['cyan']('\x20\x20Apps:\x20'+Object[_0x48a1bf(0x8b)](_0x22972b[_0x48a1bf(0x8c)]||{})[_0x48a1bf(0x83)](',\x20'))),console[_0x48a1bf(0xac)](a135_0x1f7b43[_0x48a1bf(0x99)](_0x48a1bf(0x7c)+_0x22972b[_0x48a1bf(0x90)])),console[_0x48a1bf(0xac)](a135_0x1f7b43[_0x48a1bf(0x8e)](_0x48a1bf(0x93)+_0x2a6362+_0x48a1bf(0xa0)));return;}const _0x5d1bae=_0x4f49ff||await askAppcode(),_0x4d27ee=resolve(_0x8c6f3c,NEW_CONFIG_NAME),_0x2e68cc=getCliVersionFromPkg(),_0xe5524d=readRawConfig(),_0x108936=typeof _0xe5524d['env']==='string'?_0xe5524d[_0x48a1bf(0x98)]:undefined,_0x578785=buildCanonicalProjectConfig({},{'appCodes':[_0x5d1bae],'env':_0x242513||_0x108936||'production','metadata':{'version':_0x2e68cc,'createdAt':new Date()[_0x48a1bf(0x79)]()}});writeConfigFile(_0x4d27ee,_0x578785),logger[_0x48a1bf(0xab)](_0x8c6f3c),logger[_0x48a1bf(0x9b)](_0x48a1bf(0x7f),_0x48a1bf(0xaa),{'appcode':_0x5d1bae,'env':_0x578785[_0x48a1bf(0x98)],'version':_0x578785[_0x48a1bf(0x7b)],'configPath':_0x4d27ee}),console[_0x48a1bf(0xac)](a135_0x1f7b43[_0x48a1bf(0xa2)](_0x48a1bf(0x8f))),console[_0x48a1bf(0xac)](a135_0x1f7b43['cyan'](_0x48a1bf(0x87)+Object[_0x48a1bf(0x8b)](_0x578785[_0x48a1bf(0x8c)]||{})[_0x48a1bf(0x83)](',\x20'))),console['log'](a135_0x1f7b43[_0x48a1bf(0x99)](_0x48a1bf(0x7c)+_0x578785[_0x48a1bf(0x90)])),console[_0x48a1bf(0xac)](_0x48a1bf(0x80)+CLI_BIN_NAME+_0x48a1bf(0x7a)+CLI_BIN_NAME+'\x20api\x20pull\x27');}function askAppcode(){const _0x509c06=a135_0x276a;return input({'message':_0x509c06(0x7e),'validate':_0x506bdb=>{const _0x942d4=_0x509c06;if(!_0x506bdb[_0x942d4(0xa8)]())return'App\x20Code\x20cannot\x20be\x20empty';const {valid:_0x313762,message:_0x41613f}=validateAppcode(_0x506bdb[_0x942d4(0xa8)]());return _0x313762||_0x41613f||_0x942d4(0x91);}});}function getCliVersionFromPkg(){const _0x131a31=a135_0x276a;try{const _0x2e5030=fileURLToPath(import.meta.url),_0xbd7008=resolve(dirname(_0x2e5030),_0x131a31(0x96)),_0x57ae75=JSON[_0x131a31(0xa7)](readFileSync(resolve(_0xbd7008,_0x131a31(0x94)),_0x131a31(0xa4)));return _0x57ae75['version']||_0x131a31(0x88);}catch{return _0x131a31(0x88);}}
1
+ (function(_0x591e1e,_0x12abeb){const _0x2ade15=a137_0x213c,_0x4240ef=_0x591e1e();while(!![]){try{const _0x44aa30=-parseInt(_0x2ade15(0x80))/0x1*(parseInt(_0x2ade15(0xa2))/0x2)+parseInt(_0x2ade15(0xaa))/0x3*(-parseInt(_0x2ade15(0x81))/0x4)+parseInt(_0x2ade15(0x82))/0x5+parseInt(_0x2ade15(0xa5))/0x6*(parseInt(_0x2ade15(0x86))/0x7)+parseInt(_0x2ade15(0x9b))/0x8*(-parseInt(_0x2ade15(0xa9))/0x9)+-parseInt(_0x2ade15(0xaf))/0xa+parseInt(_0x2ade15(0x93))/0xb*(parseInt(_0x2ade15(0xa4))/0xc);if(_0x44aa30===_0x12abeb)break;else _0x4240ef['push'](_0x4240ef['shift']());}catch(_0x51d401){_0x4240ef['push'](_0x4240ef['shift']());}}}(a137_0x50ca,0x8ee89));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';function a137_0x50ca(){const _0x31409d=['Please\x20enter\x20App\x20Code:','apps','Upgrade\x20it\x20to\x20','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','从旧配置文件升级成功','env','../..','App\x20Code\x20cannot\x20be\x20empty','683903VNAZkb','\x20api\x20pull\x27','green','bold','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','info','✓\x20Upgraded\x20','app','5457448GCgBZI','keys','1.0.0','\x20api\x20generate\x27\x20and\x20\x27','join','cyan','setLogPath','2Dsdxmv','\x20\x20Apps:\x20','252LDHmmH','210642mkMVSi','init','gray','version','9ltGGKo','2163813AEmNoX','?\x20(Old\x20file\x20→\x20*.bak)','\x20\x20Default:\x20','.rabetbase.json','.bak','2504470eItXcG','production','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','\x20→\x20.rabetbase.json','trim','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','初始化项目配置文件成功','log','420997UKHfpL','4VeJclv','5017730XDbwdx','cwd','appcode','parse','70KCuZZt','utf8','string','defaultApp','yellow'];a137_0x50ca=function(){return _0x31409d;};return a137_0x50ca();}import a137_0x2c1464 from'chalk';function a137_0x213c(_0xe28b63,_0x41d866){_0xe28b63=_0xe28b63-0x80;const _0x50cae0=a137_0x50ca();let _0x213cbd=_0x50cae0[_0xe28b63];return _0x213cbd;}import{input,confirm}from'@inquirer/prompts';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{readRawConfig,getProjectConfigPath,writeConfigFile,NEW_CONFIG_NAME,LEGACY_CONFIG_NAMES}from'../../context.js';import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x39c6f9){const _0x2028c1=a137_0x213c,{appcode:_0x14a0f2,env:_0x190597,autoYes:_0x18e946}=_0x39c6f9,_0x26336=process[_0x2028c1(0x83)]();if(getProjectConfigPath())throw new Error(_0x2028c1(0x97));let _0xb8a335;for(const _0x19f699 of LEGACY_CONFIG_NAMES){const _0x5daa55=resolve(_0x26336,_0x19f699);if(existsSync(_0x5daa55)){_0xb8a335=_0x5daa55;break;}}if(_0xb8a335){let _0x1a28b5={};try{_0x1a28b5=JSON[_0x2028c1(0x85)](readFileSync(_0xb8a335,'utf8'));}catch{}const _0x17aa0b=basename(_0xb8a335),_0x3d89a5=_0x1a28b5?.[_0x2028c1(0x84)]||_0x1a28b5?.['app'];let _0x1ea263=_0x18e946;!_0x18e946&&(console['log'](a137_0x2c1464[_0x2028c1(0x8a)](_0x2028c1(0xb1)+a137_0x2c1464['bold'](_0x17aa0b))),_0x3d89a5&&console[_0x2028c1(0xb6)](a137_0x2c1464[_0x2028c1(0xa0)]('\x20\x20appcode:\x20'+_0x3d89a5)),_0x1ea263=await confirm({'message':_0x2028c1(0x8d)+a137_0x2c1464[_0x2028c1(0x96)](_0x2028c1(0xad))+_0x2028c1(0xab),'default':!![]}));if(!_0x1ea263){console['log']('Migration\x20cancelled.\x20Run\x20`'+CLI_BIN_NAME+'\x20workspace\x20init`\x20to\x20start\x20fresh.');return;}const _0x51eefe=resolve(_0x26336,NEW_CONFIG_NAME),_0x3b38d1=getCliVersionFromPkg(),_0x42e25f=readRawConfig(),_0x303d49=_0x14a0f2||(typeof _0x1a28b5?.['appcode']===_0x2028c1(0x88)?_0x1a28b5[_0x2028c1(0x84)]:undefined)||(typeof _0x1a28b5?.[_0x2028c1(0x9a)]===_0x2028c1(0x88)?_0x1a28b5['app']:undefined)||await askAppcode(),_0x2c8a35=typeof _0x1a28b5?.['env']==='string'?_0x1a28b5[_0x2028c1(0x90)]:typeof _0x42e25f[_0x2028c1(0x90)]===_0x2028c1(0x88)?_0x42e25f[_0x2028c1(0x90)]:_0x2028c1(0xb0),_0x522170=buildCanonicalProjectConfig({..._0x42e25f,..._0x1a28b5},{'appCodes':[_0x303d49],'env':_0x2c8a35,'metadata':{'version':_0x3b38d1,'migratedAt':new Date()['toLocaleString'](),'migratedFrom':_0xb8a335}});writeConfigFile(_0x51eefe,_0x522170);const _0x57c8cf=_0xb8a335+_0x2028c1(0xae);renameSync(_0xb8a335,_0x57c8cf),logger['setLogPath'](_0x26336),logger['info'](_0x2028c1(0xa6),_0x2028c1(0x8f),{'from':_0xb8a335,'to':_0x51eefe,'appcode':_0x303d49,'env':_0x522170['env']}),console[_0x2028c1(0xb6)](a137_0x2c1464[_0x2028c1(0x95)](_0x2028c1(0x99)+_0x17aa0b+_0x2028c1(0xb2))),console[_0x2028c1(0xb6)](a137_0x2c1464[_0x2028c1(0xa0)](_0x2028c1(0xa3)+Object[_0x2028c1(0x9c)](_0x522170[_0x2028c1(0x8c)]||{})[_0x2028c1(0x9f)](',\x20'))),console[_0x2028c1(0xb6)](a137_0x2c1464[_0x2028c1(0xa0)](_0x2028c1(0xac)+_0x522170[_0x2028c1(0x89)])),console['log'](a137_0x2c1464[_0x2028c1(0xa7)](_0x2028c1(0x8e)+_0x17aa0b+_0x2028c1(0xae)));return;}const _0x531da8=_0x14a0f2||await askAppcode(),_0x14a810=resolve(_0x26336,NEW_CONFIG_NAME),_0x595823=getCliVersionFromPkg(),_0x7db7d=readRawConfig(),_0x134c8f=typeof _0x7db7d[_0x2028c1(0x90)]==='string'?_0x7db7d[_0x2028c1(0x90)]:undefined,_0x56b480=buildCanonicalProjectConfig({},{'appCodes':[_0x531da8],'env':_0x190597||_0x134c8f||_0x2028c1(0xb0),'metadata':{'version':_0x595823,'createdAt':new Date()['toLocaleString']()}});writeConfigFile(_0x14a810,_0x56b480),logger[_0x2028c1(0xa1)](_0x26336),logger[_0x2028c1(0x98)](_0x2028c1(0xa6),_0x2028c1(0xb5),{'appcode':_0x531da8,'env':_0x56b480[_0x2028c1(0x90)],'version':_0x56b480['version'],'configPath':_0x14a810}),console['log'](a137_0x2c1464[_0x2028c1(0x95)](_0x2028c1(0xb4))),console[_0x2028c1(0xb6)](a137_0x2c1464[_0x2028c1(0xa0)](_0x2028c1(0xa3)+Object[_0x2028c1(0x9c)](_0x56b480[_0x2028c1(0x8c)]||{})[_0x2028c1(0x9f)](',\x20'))),console[_0x2028c1(0xb6)](a137_0x2c1464[_0x2028c1(0xa0)](_0x2028c1(0xac)+_0x56b480[_0x2028c1(0x89)])),console['log']('\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27'+CLI_BIN_NAME+_0x2028c1(0x9e)+CLI_BIN_NAME+_0x2028c1(0x94));}function askAppcode(){const _0x10ff1e=a137_0x213c;return input({'message':_0x10ff1e(0x8b),'validate':_0x126336=>{const _0x27c315=_0x10ff1e;if(!_0x126336['trim']())return _0x27c315(0x92);const {valid:_0x30b943,message:_0x5bed3c}=validateAppcode(_0x126336[_0x27c315(0xb3)]());return _0x30b943||_0x5bed3c||'Invalid\x20App\x20Code';}});}function getCliVersionFromPkg(){const _0x36ceac=a137_0x213c;try{const _0x33d911=fileURLToPath(import.meta.url),_0x42a413=resolve(dirname(_0x33d911),_0x36ceac(0x91)),_0x49c4ec=JSON['parse'](readFileSync(resolve(_0x42a413,'package.json'),_0x36ceac(0x87)));return _0x49c4ec[_0x36ceac(0xa8)]||_0x36ceac(0x9d);}catch{return _0x36ceac(0x9d);}}
@@ -1 +1 @@
1
- const a136_0x28fff2=a136_0x15cb;(function(_0x54382d,_0x2cf2c8){const _0x1c29b1=a136_0x15cb,_0x5050ca=_0x54382d();while(!![]){try{const _0x5ae206=-parseInt(_0x1c29b1(0x1d6))/0x1*(-parseInt(_0x1c29b1(0x217))/0x2)+parseInt(_0x1c29b1(0x1e7))/0x3*(-parseInt(_0x1c29b1(0x1e5))/0x4)+parseInt(_0x1c29b1(0x21e))/0x5+parseInt(_0x1c29b1(0x1d9))/0x6+-parseInt(_0x1c29b1(0x1df))/0x7+parseInt(_0x1c29b1(0x216))/0x8*(-parseInt(_0x1c29b1(0x1de))/0x9)+parseInt(_0x1c29b1(0x231))/0xa*(parseInt(_0x1c29b1(0x243))/0xb);if(_0x5ae206===_0x2cf2c8)break;else _0x5050ca['push'](_0x5050ca['shift']());}catch(_0x19cb76){_0x5050ca['push'](_0x5050ca['shift']());}}}(a136_0x2b80,0xa2083));import a136_0x4be9d9 from'chalk';import a136_0x496aa9 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';function a136_0x2b80(){const _0x19a6a4=['devDependencies','step','\x20from\x20','oldPath','no\x20legacy\x20config\x20found','white','isDirectory','Remove\x20old\x20skill','isArray','\x20→\x20keys:\x20','configMigration','info','log','stringify','filter','79039cCivhs','values','gray','683052YDdqnK','Step\x204/7:\x20Cleaning\x20MCP\x20config...','lovrabet/rabetbase','\x20\x20Action:\x20delete','Step\x206/7:\x20Installing\x20new\x20skill...','10929537dmdBXE','6429409szGlYV','detail','FOUND','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','done','Step\x205/7:\x20Removing\x20old\x20skill...','483792GElgzt','@lovrabet/dataset-mcp-server','3rjvbOa','\x20\x20npm\x20install','needed','length','inherit','lovrabet/lovrabet-skill\x20removed','path','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','undefined','.lovrabet','string','failed','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','yellow','none\x20found','green','no\x20legacy\x20entry','cwd','Config\x20file:','sdkUpgrade','\x20(backup:\x20','files','Remove\x20.lovrabet/','.cursor/rules/lovrabet_rules.mdc','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','error','bold','skipped\x20(no\x20legacy\x20config)','latest','CANCEL','\x20→\x20','skipped','\x20\x20bun\x20install','status','push','needsSkillSwap','mcpServers','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','Step\x204/7:\x20MCP\x20config\x20—\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','\x20\x20#\x20or','fields','\x20\x20Current\x20version\x20in\x20','Step\x201/7:\x20Config\x20migration\x20—\x20','Install\x20new\x20skill','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','8HJYokJ','24ZawOXT','Config\x20migration','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','args','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','join','.claude/skills/lovrabet','2838750jZpEkf','includes','cyan','\x20→\x20latest','lovrabet/rabetbase\x20installed\x20globally','entries','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','\x20\x20New\x20config\x20(.rabetbase.json):\x20','message','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','no\x20matching\x20entry\x20found','Remove\x20legacy\x20artifacts','Proceed\x20with\x20upgrade?','===\x20Upgrade\x20Analysis\x20===','red','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','yes','Upgrade\x20@lovrabet/sdk','\x20\x20\x20\x20\x20\x20\x20','10mpFNLr','@lovrabet/sdk:','object','already\x20exists\x20(will\x20merge)','parse','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','oldArtifacts','some','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','.cursor/mcp.json','start','Clean\x20MCP\x20config','\x20removed\x20(','@lovrabet/sdk','oldMcpConfig','Step\x201/7:\x20Migrating\x20config...','fail','\x20\x20Step\x20','14161961qnKRjy','label','\x20\x20Fields\x20to\x20migrate:\x20','succeed','dependencies','Upgrade\x20completed\x20successfully!','\x20removed','hasNewConfig','FAIL','MCP\x20config:','utf8'];a136_0x2b80=function(){return _0x19a6a4;};return a136_0x2b80();}import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a136_0x28fff2(0x1d5)](_0x283855=>_0x283855!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x9e411e){const _0x2f523e=a136_0x28fff2,_0x622588=[];for(const _0xabf3e6 of Object[_0x2f523e(0x1d7)](CORE_IDE_CONFIGS)){if(_0xabf3e6['files'])for(const _0x17e555 of _0xabf3e6[_0x2f523e(0x1fd)]){_0x622588[_0x2f523e(0x20a)](resolve(_0x9e411e,_0x17e555['path']));}}return _0x622588;}function analyse(_0x4b3967){const _0x2ce6f7=a136_0x28fff2;let _0x301e4d=null;const _0x246542=resolve(_0x4b3967,NEW_CONFIG_NAME),_0x1e598b=existsSync(_0x246542);for(const _0x2aeeb2 of LEGACY_CONFIG_NAMES){const _0x2aa795=resolve(_0x4b3967,_0x2aeeb2);if(existsSync(_0x2aa795)){const _0xd7282e=readConfigFile(_0x2aa795),_0x4e9683=Object['keys'](_0xd7282e)[_0x2ce6f7(0x1d5)](_0x551811=>typeof _0xd7282e[_0x551811]!==_0x2ce6f7(0x1f0));_0x301e4d={'oldPath':_0x2aa795,'hasNewConfig':_0x1e598b,'fields':_0x4e9683};break;}}const _0x522e62=[],_0x581d02=resolve(_0x4b3967,_0x2ce6f7(0x1f1));if(existsSync(_0x581d02))_0x522e62[_0x2ce6f7(0x20a)](_0x581d02);const _0x1185bc=resolve(_0x4b3967,_0x2ce6f7(0x1ff));if(existsSync(_0x1185bc))_0x522e62[_0x2ce6f7(0x20a)](_0x1185bc);const _0x5d081c=resolve(_0x4b3967,_0x2ce6f7(0x21d));if(existsSync(_0x5d081c))_0x522e62[_0x2ce6f7(0x20a)](_0x5d081c);for(const _0x237cef of collectIdeSkillFiles(_0x4b3967)){if(existsSync(_0x237cef))_0x522e62['push'](_0x237cef);}let _0x4112c2=null;const _0x1cddac=resolve(_0x4b3967,_0x2ce6f7(0x23a));if(existsSync(_0x1cddac))try{const _0x21d3a5=JSON[_0x2ce6f7(0x235)](readFileSync(_0x1cddac,_0x2ce6f7(0x1c6)));if(_0x21d3a5?.[_0x2ce6f7(0x20c)]&&typeof _0x21d3a5[_0x2ce6f7(0x20c)]===_0x2ce6f7(0x233)){const _0x57a33c=[];for(const [_0x74614c,_0x52f371]of Object[_0x2ce6f7(0x223)](_0x21d3a5[_0x2ce6f7(0x20c)])){const _0x547b51=_0x52f371;_0x547b51?.[_0x2ce6f7(0x21a)]&&Array[_0x2ce6f7(0x1cf)](_0x547b51[_0x2ce6f7(0x21a)])&&_0x547b51[_0x2ce6f7(0x21a)][_0x2ce6f7(0x238)](_0x1c9bf0=>typeof _0x1c9bf0==='string'&&_0x1c9bf0[_0x2ce6f7(0x21f)](_0x2ce6f7(0x1e6)))&&_0x57a33c[_0x2ce6f7(0x20a)](_0x74614c);}_0x57a33c['length']>0x0&&(_0x4112c2={'path':_0x1cddac,'keys':_0x57a33c});}}catch{}const _0x8a8fd3=_0x522e62[_0x2ce6f7(0x1ea)]>0x0||_0x301e4d!==null;let _0x46705d=null;const _0x34c2d9=resolve(_0x4b3967,'package.json');if(existsSync(_0x34c2d9))try{const _0x222808=JSON[_0x2ce6f7(0x235)](readFileSync(_0x34c2d9,_0x2ce6f7(0x1c6)));for(const _0x75e3e2 of[_0x2ce6f7(0x247),_0x2ce6f7(0x1c7)]){const _0x538668=_0x222808?.[_0x75e3e2]?.[_0x2ce6f7(0x23e)];if(typeof _0x538668===_0x2ce6f7(0x1f2)){_0x538668!==_0x2ce6f7(0x204)&&(_0x46705d={'pkgPath':_0x34c2d9,'currentVersion':_0x538668,'field':_0x75e3e2});break;}}}catch{}return{'configMigration':_0x301e4d,'oldArtifacts':_0x522e62,'oldMcpConfig':_0x4112c2,'needsSkillSwap':_0x8a8fd3,'sdkUpgrade':_0x46705d};}function printReport(_0x17c7f8){const _0x4e3a9d=a136_0x28fff2,{configMigration:_0x4539d2,oldArtifacts:_0x3dac26,oldMcpConfig:_0xdc393f,needsSkillSwap:_0x2eec10}=_0x17c7f8;console['log'](''),console['log'](a136_0x4be9d9[_0x4e3a9d(0x202)](_0x4e3a9d(0x22b))),console[_0x4e3a9d(0x1d3)]('');_0x4539d2?(console[_0x4e3a9d(0x1d3)](a136_0x4be9d9[_0x4e3a9d(0x220)](_0x4e3a9d(0x1fa))+('\x20\x20'+a136_0x4be9d9['yellow'](_0x4539d2[_0x4e3a9d(0x1ca)]))),console[_0x4e3a9d(0x1d3)](_0x4e3a9d(0x225)+(_0x4539d2[_0x4e3a9d(0x1c3)]?a136_0x4be9d9[_0x4e3a9d(0x1f7)](_0x4e3a9d(0x234)):a136_0x4be9d9['gray']('not\x20found\x20(will\x20create)'))),console[_0x4e3a9d(0x1d3)](_0x4e3a9d(0x245)+_0x4539d2[_0x4e3a9d(0x211)]['join'](',\x20')),console[_0x4e3a9d(0x1d3)](_0x4e3a9d(0x1ef))):console[_0x4e3a9d(0x1d3)](a136_0x4be9d9[_0x4e3a9d(0x220)](_0x4e3a9d(0x1fa))+'\x20\x20'+a136_0x4be9d9[_0x4e3a9d(0x1d8)](_0x4e3a9d(0x1cb)));console[_0x4e3a9d(0x1d3)]('');if(_0x3dac26['length']>0x0){console[_0x4e3a9d(0x1d3)](a136_0x4be9d9[_0x4e3a9d(0x220)]('Legacy\x20artifacts:'));for(const _0x321fc4 of _0x3dac26){console[_0x4e3a9d(0x1d3)]('\x20\x20'+a136_0x4be9d9[_0x4e3a9d(0x22c)](_0x4e3a9d(0x1e1))+'\x20\x20'+_0x321fc4);}console[_0x4e3a9d(0x1d3)](_0x4e3a9d(0x1dc));}else console[_0x4e3a9d(0x1d3)](a136_0x4be9d9[_0x4e3a9d(0x220)]('Legacy\x20artifacts:')+'\x20\x20'+a136_0x4be9d9[_0x4e3a9d(0x1d8)](_0x4e3a9d(0x1f6)));console[_0x4e3a9d(0x1d3)]('');_0xdc393f?(console['log'](a136_0x4be9d9[_0x4e3a9d(0x220)](_0x4e3a9d(0x1c5))+('\x20\x20'+a136_0x4be9d9[_0x4e3a9d(0x1f5)](_0xdc393f[_0x4e3a9d(0x1ed)])+_0x4e3a9d(0x1d0)+_0xdc393f['keys']['join'](',\x20'))),console[_0x4e3a9d(0x1d3)](_0x4e3a9d(0x236))):console['log'](a136_0x4be9d9[_0x4e3a9d(0x220)]('MCP\x20config:')+'\x20\x20'+a136_0x4be9d9['gray'](_0x4e3a9d(0x1f8)));console[_0x4e3a9d(0x1d3)](''),console['log'](a136_0x4be9d9[_0x4e3a9d(0x220)]('Skill\x20swap:')+('\x20\x20'+(_0x2eec10?a136_0x4be9d9[_0x4e3a9d(0x1f5)](_0x4e3a9d(0x1e9)):a136_0x4be9d9[_0x4e3a9d(0x1f7)]('not\x20needed'))));_0x2eec10&&console[_0x4e3a9d(0x1d3)](_0x4e3a9d(0x1f4)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x17c7f8[_0x4e3a9d(0x1fb)]){const {currentVersion:_0x25dfb9,field:_0x7011bf,pkgPath:_0x1d0fc4}=_0x17c7f8[_0x4e3a9d(0x1fb)];console['log'](a136_0x4be9d9['cyan'](_0x4e3a9d(0x232))+('\x20\x20'+a136_0x4be9d9[_0x4e3a9d(0x1f5)](_0x1d0fc4))),console[_0x4e3a9d(0x1d3)](_0x4e3a9d(0x212)+_0x7011bf+':\x20'+a136_0x4be9d9['yellow'](_0x25dfb9)+_0x4e3a9d(0x206)+a136_0x4be9d9[_0x4e3a9d(0x1f7)](_0x4e3a9d(0x204))),console[_0x4e3a9d(0x1d3)](_0x4e3a9d(0x20f));}else console[_0x4e3a9d(0x1d3)](a136_0x4be9d9['cyan'](_0x4e3a9d(0x232))+'\x20\x20'+a136_0x4be9d9['gray']('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x4e3a9d(0x1d3)]('');}function execConfigMigration(_0x8bc201,_0x3f7e83){const _0x3bbe04=a136_0x28fff2,{configMigration:_0x2a301f}=_0x8bc201;if(!_0x2a301f?.[_0x3bbe04(0x1ca)])return{'step':0x1,'label':_0x3bbe04(0x218),'ok':!![],'detail':_0x3bbe04(0x203)};const _0x5e7745=readConfigFile(_0x2a301f[_0x3bbe04(0x1ca)]),_0x1a246a=resolve(_0x3f7e83,NEW_CONFIG_NAME),_0x53bd00=_0x2a301f['hasNewConfig']?readConfigFile(_0x1a246a):{};for(const [_0x9174a5,_0x3389a2]of Object[_0x3bbe04(0x223)](_0x5e7745)){!(_0x9174a5 in _0x53bd00)&&(_0x53bd00[_0x9174a5]=_0x3389a2);}writeConfigFile(_0x1a246a,_0x53bd00);const _0x3750f2=_0x2a301f['oldPath']+'.bak';return renameSync(_0x2a301f[_0x3bbe04(0x1ca)],_0x3750f2),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x2a301f[_0x3bbe04(0x1ca)]+'\x20→\x20'+_0x1a246a+_0x3bbe04(0x1fc)+_0x3750f2+')'};}function execRemoveOldArtifacts(_0x575308){const _0xfcb29d=a136_0x28fff2,_0x855a16=[];for(const _0x53a5fc of _0x575308){try{if(!existsSync(_0x53a5fc))continue;const _0x5124e8=tryStat(_0x53a5fc);_0x5124e8?.[_0xfcb29d(0x1cd)]()?rmSync(_0x53a5fc,{'recursive':!![],'force':!![]}):unlinkSync(_0x53a5fc);}catch(_0x6e78c2){_0x855a16['push'](_0x53a5fc+':\x20'+_0x6e78c2[_0xfcb29d(0x226)]);}}return{'step':0x3,'label':_0xfcb29d(0x229),'ok':_0x855a16[_0xfcb29d(0x1ea)]===0x0,'detail':_0x855a16['length']>0x0?_0x575308['length']-_0x855a16['length']+'/'+_0x575308[_0xfcb29d(0x1ea)]+_0xfcb29d(0x23d)+_0x855a16[_0xfcb29d(0x21c)](';\x20')+')':_0x575308['length']+_0xfcb29d(0x1c2)};}function execCleanMcp(_0x44942a){const _0xa0a91e=a136_0x28fff2;if(!_0x44942a['oldMcpConfig'])return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0xa0a91e(0x207)};try{const _0x24b4d5=readFileSync(_0x44942a[_0xa0a91e(0x23f)]['path'],_0xa0a91e(0x1c6)),_0x2a6bb6=JSON['parse'](_0x24b4d5);if(_0x2a6bb6?.[_0xa0a91e(0x20c)]&&typeof _0x2a6bb6[_0xa0a91e(0x20c)]==='object'){const _0x2edd59=[];for(const [_0x12237d,_0x44e946]of Object['entries'](_0x2a6bb6[_0xa0a91e(0x20c)])){_0x44e946?.[_0xa0a91e(0x21a)]&&Array[_0xa0a91e(0x1cf)](_0x44e946[_0xa0a91e(0x21a)])&&_0x44e946[_0xa0a91e(0x21a)][_0xa0a91e(0x238)](_0x484ebf=>typeof _0x484ebf==='string'&&_0x484ebf['includes']('@lovrabet/dataset-mcp-server'))&&_0x2edd59['push'](_0x12237d);}for(const _0x42f951 of _0x2edd59){delete _0x2a6bb6['mcpServers'][_0x42f951];}return _0x2edd59[_0xa0a91e(0x1ea)]>0x0&&writeFileSync(_0x44942a[_0xa0a91e(0x23f)][_0xa0a91e(0x1ed)],JSON[_0xa0a91e(0x1d4)](_0x2a6bb6,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':'removed\x20'+_0x2edd59[_0xa0a91e(0x21c)](',\x20')+_0xa0a91e(0x1c9)+_0x44942a[_0xa0a91e(0x23f)][_0xa0a91e(0x1ed)]};}return{'step':0x4,'label':_0xa0a91e(0x23c),'ok':!![],'detail':_0xa0a91e(0x228)};}catch(_0x419322){return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':![],'detail':_0x419322[_0xa0a91e(0x226)]};}}function execSkillsRemove(_0x200a18,_0x1d4b80){const _0x2e0efe=a136_0x28fff2,_0x339341=runNpxSkillsRemove(_0x200a18,{'stdio':_0x2e0efe(0x1eb),'yes':_0x1d4b80});return{'step':0x5,'label':_0x2e0efe(0x1ce),'ok':_0x339341['ok'],'detail':_0x339341['ok']?_0x2e0efe(0x1ec):_0x339341[_0x2e0efe(0x201)]??'exit\x20'+_0x339341[_0x2e0efe(0x209)]};}function a136_0x15cb(_0x4ddd40,_0x37d1df){_0x4ddd40=_0x4ddd40-0x1c2;const _0x2b8067=a136_0x2b80();let _0x15cb51=_0x2b8067[_0x4ddd40];return _0x15cb51;}function execSkillsAdd(_0x2067a5,_0x3235a2){const _0x2907f0=a136_0x28fff2,_0x3195ce=runNpxSkillsAddGlobal(_0x2067a5,_0x2907f0(0x1db),{'stdio':_0x2907f0(0x1eb),'yes':_0x3235a2});return{'step':0x6,'label':_0x2907f0(0x214),'ok':_0x3195ce['ok'],'detail':_0x3195ce['ok']?_0x2907f0(0x222):_0x3195ce[_0x2907f0(0x201)]??'exit\x20'+_0x3195ce['status']};}function execUpgradeSdk(_0x35d601){const _0x4f56bf=a136_0x28fff2;if(!_0x35d601['sdkUpgrade'])return{'step':0x7,'label':_0x4f56bf(0x22f),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x3020e2,currentVersion:_0x4da661,field:_0x523aaf}=_0x35d601['sdkUpgrade'];try{const _0x1df614=readFileSync(_0x3020e2,_0x4f56bf(0x1c6)),_0x4bbaec=JSON[_0x4f56bf(0x235)](_0x1df614);return _0x4bbaec[_0x523aaf][_0x4f56bf(0x23e)]=_0x4f56bf(0x204),writeFileSync(_0x3020e2,JSON[_0x4f56bf(0x1d4)](_0x4bbaec,null,0x2)+'\x0a',_0x4f56bf(0x1c6)),{'step':0x7,'label':_0x4f56bf(0x22f),'ok':!![],'detail':_0x523aaf+'[\x22@lovrabet/sdk\x22]:\x20'+_0x4da661+_0x4f56bf(0x221)};}catch(_0x272e81){return{'step':0x7,'label':_0x4f56bf(0x22f),'ok':![],'detail':_0x272e81['message']};}}function tryStat(_0x39a049){try{return statSync(_0x39a049);}catch{return undefined;}}function printSummary(_0x594c1b){const _0x5d6f6c=a136_0x28fff2;console['log'](''),console['log'](a136_0x4be9d9[_0x5d6f6c(0x202)]('===\x20Upgrade\x20Summary\x20===')),console[_0x5d6f6c(0x1d3)]('');for(const _0x1e8a31 of _0x594c1b){const _0x4f3cd2=_0x1e8a31['ok']?a136_0x4be9d9['green']('OK'):a136_0x4be9d9[_0x5d6f6c(0x22c)](_0x5d6f6c(0x1c4));console[_0x5d6f6c(0x1d3)]('\x20\x20'+_0x4f3cd2+_0x5d6f6c(0x242)+_0x1e8a31[_0x5d6f6c(0x1c8)]+':\x20'+_0x1e8a31[_0x5d6f6c(0x244)]);if(_0x1e8a31['detail'])console[_0x5d6f6c(0x1d3)](_0x5d6f6c(0x230)+a136_0x4be9d9[_0x5d6f6c(0x1d8)](_0x1e8a31['detail']));}console['log']('');}export async function upgradeApp(_0x26d837,_0x1975b2){const _0x2c1ce7=a136_0x28fff2,_0xc2dc09=process[_0x2c1ce7(0x1f9)](),_0x585856=analyse(_0xc2dc09),_0x6f5693=!_0x585856[_0x2c1ce7(0x1d1)]&&_0x585856[_0x2c1ce7(0x237)][_0x2c1ce7(0x1ea)]===0x0&&!_0x585856['oldMcpConfig']&&!_0x585856[_0x2c1ce7(0x20b)]&&!_0x585856[_0x2c1ce7(0x1fb)];if(_0x6f5693){console[_0x2c1ce7(0x1d3)](a136_0x4be9d9[_0x2c1ce7(0x1f7)](_0x2c1ce7(0x200)));return;}printReport(_0x585856);const _0x469b0e=!!(_0x1975b2[_0x2c1ce7(0x22e)]||_0x1975b2['Y']||_0x26d837);if(!_0x469b0e)try{const _0x2b880b=await askConfirm(_0x2c1ce7(0x22a));if(!_0x2b880b){console[_0x2c1ce7(0x1d3)](a136_0x4be9d9['gray']('Upgrade\x20cancelled.'));return;}}catch(_0x19d59f){if(_0x19d59f?.[_0x2c1ce7(0x226)]===_0x2c1ce7(0x205)){console[_0x2c1ce7(0x1d3)](a136_0x4be9d9[_0x2c1ce7(0x1d8)]('Upgrade\x20cancelled.'));return;}throw _0x19d59f;}const _0x4625fe=[],_0x58dfbb=a136_0x496aa9({'text':_0x2c1ce7(0x240),'color':'cyan'})['start'](),_0x31f8de=execConfigMigration(_0x585856,_0xc2dc09);_0x4625fe[_0x2c1ce7(0x20a)](_0x31f8de),_0x58dfbb[_0x31f8de['ok']?_0x2c1ce7(0x246):'fail'](_0x2c1ce7(0x213)+(_0x31f8de[_0x2c1ce7(0x1e0)]??(_0x31f8de['ok']?_0x2c1ce7(0x1e3):_0x2c1ce7(0x1f3))));const _0x2d35f7=resolve(_0xc2dc09,_0x2c1ce7(0x1f1)),_0x4b3d6d=a136_0x496aa9({'text':_0x2c1ce7(0x22d),'color':'cyan'})[_0x2c1ce7(0x23b)]();if(existsSync(_0x2d35f7))try{rmSync(_0x2d35f7,{'recursive':!![],'force':!![]}),_0x4b3d6d[_0x2c1ce7(0x246)]('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x4625fe[_0x2c1ce7(0x20a)]({'step':0x2,'label':_0x2c1ce7(0x1fe),'ok':!![]});}catch(_0x223b78){_0x4b3d6d[_0x2c1ce7(0x241)]('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x223b78[_0x2c1ce7(0x226)]),_0x4625fe['push']({'step':0x2,'label':_0x2c1ce7(0x1fe),'ok':![],'detail':_0x223b78['message']});}else _0x4b3d6d[_0x2c1ce7(0x1d2)](_0x2c1ce7(0x219)),_0x4625fe[_0x2c1ce7(0x20a)]({'step':0x2,'label':_0x2c1ce7(0x1fe),'ok':!![],'detail':_0x2c1ce7(0x207)});const _0x2506b2=a136_0x496aa9({'text':_0x2c1ce7(0x215),'color':_0x2c1ce7(0x220)})[_0x2c1ce7(0x23b)](),_0x185954=execRemoveOldArtifacts(_0x585856[_0x2c1ce7(0x237)]);_0x4625fe[_0x2c1ce7(0x20a)](_0x185954),_0x2506b2[_0x185954['ok']?'succeed':_0x2c1ce7(0x241)](_0x2c1ce7(0x21b)+(_0x185954['detail']??(_0x185954['ok']?_0x2c1ce7(0x1e3):_0x2c1ce7(0x1f3))));const _0x4d4d36=a136_0x496aa9({'text':_0x2c1ce7(0x1da),'color':'cyan'})[_0x2c1ce7(0x23b)](),_0x2d6f16=execCleanMcp(_0x585856);_0x4625fe[_0x2c1ce7(0x20a)](_0x2d6f16),_0x4d4d36[_0x2d6f16['ok']?_0x2c1ce7(0x246):_0x2c1ce7(0x241)](_0x2c1ce7(0x20e)+(_0x2d6f16[_0x2c1ce7(0x1e0)]??(_0x2d6f16['ok']?'done':_0x2c1ce7(0x1f3))));const _0x5ef9bf=a136_0x496aa9({'text':_0x2c1ce7(0x1e4),'color':'cyan'})[_0x2c1ce7(0x23b)](),_0x35d24e=execSkillsRemove(_0xc2dc09,_0x469b0e);_0x4625fe[_0x2c1ce7(0x20a)](_0x35d24e),_0x5ef9bf[_0x35d24e['ok']?_0x2c1ce7(0x246):_0x2c1ce7(0x241)]('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0x35d24e['detail']??(_0x35d24e['ok']?_0x2c1ce7(0x1e3):_0x2c1ce7(0x1f3))));const _0x4d406b=a136_0x496aa9({'text':_0x2c1ce7(0x1dd),'color':_0x2c1ce7(0x220)})[_0x2c1ce7(0x23b)](),_0x587795=execSkillsAdd(_0xc2dc09,_0x469b0e);_0x4625fe[_0x2c1ce7(0x20a)](_0x587795),_0x4d406b[_0x587795['ok']?_0x2c1ce7(0x246):'fail'](_0x2c1ce7(0x239)+(_0x587795['detail']??(_0x587795['ok']?_0x2c1ce7(0x1e3):_0x2c1ce7(0x1f3))));const _0x37c953=a136_0x496aa9({'text':_0x2c1ce7(0x20d),'color':'cyan'})['start'](),_0x339327=execUpgradeSdk(_0x585856);_0x4625fe[_0x2c1ce7(0x20a)](_0x339327),_0x37c953[_0x339327['ok']?_0x2c1ce7(0x246):_0x2c1ce7(0x241)](_0x2c1ce7(0x227)+(_0x339327['detail']??(_0x339327['ok']?_0x2c1ce7(0x1e3):_0x2c1ce7(0x1f3)))),printSummary(_0x4625fe);const _0x4b3e06=_0x4625fe[_0x2c1ce7(0x238)](_0x274540=>!_0x274540['ok']);_0x4b3e06?console[_0x2c1ce7(0x1d3)](a136_0x4be9d9['yellow'](_0x2c1ce7(0x224))):console[_0x2c1ce7(0x1d3)](a136_0x4be9d9[_0x2c1ce7(0x1f7)](_0x2c1ce7(0x248))),_0x339327['ok']&&_0x585856[_0x2c1ce7(0x1fb)]&&(console[_0x2c1ce7(0x1d3)](''),console[_0x2c1ce7(0x1d3)](a136_0x4be9d9[_0x2c1ce7(0x202)]['cyan'](_0x2c1ce7(0x1e2))),console[_0x2c1ce7(0x1d3)](a136_0x4be9d9[_0x2c1ce7(0x220)](_0x2c1ce7(0x1ee))),console[_0x2c1ce7(0x1d3)](''),console[_0x2c1ce7(0x1d3)](a136_0x4be9d9[_0x2c1ce7(0x1cc)](_0x2c1ce7(0x1e8))),console[_0x2c1ce7(0x1d3)](a136_0x4be9d9[_0x2c1ce7(0x1cc)](_0x2c1ce7(0x210))),console['log'](a136_0x4be9d9[_0x2c1ce7(0x1cc)](_0x2c1ce7(0x208))),console[_0x2c1ce7(0x1d3)](''));}
1
+ const a138_0x4115ca=a138_0x4c97;(function(_0x5e7a65,_0xca1008){const _0x31159c=a138_0x4c97,_0x5d2962=_0x5e7a65();while(!![]){try{const _0x3b29c7=-parseInt(_0x31159c(0xdb))/0x1*(parseInt(_0x31159c(0xe7))/0x2)+parseInt(_0x31159c(0xfa))/0x3+-parseInt(_0x31159c(0x116))/0x4*(-parseInt(_0x31159c(0xed))/0x5)+-parseInt(_0x31159c(0x120))/0x6+-parseInt(_0x31159c(0x104))/0x7*(-parseInt(_0x31159c(0xde))/0x8)+-parseInt(_0x31159c(0x122))/0x9+parseInt(_0x31159c(0xec))/0xa;if(_0x3b29c7===_0xca1008)break;else _0x5d2962['push'](_0x5d2962['shift']());}catch(_0x3a6256){_0x5d2962['push'](_0x5d2962['shift']());}}}(a138_0x5a3b,0x5e753));import a138_0x4faac9 from'chalk';function a138_0x4c97(_0x369681,_0x2a7679){_0x369681=_0x369681-0xb7;const _0x5a3b0d=a138_0x5a3b();let _0x4c97c5=_0x5a3b0d[_0x369681];return _0x4c97c5;}import a138_0x500716 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[a138_0x4115ca(0x10b)](_0x463721=>_0x463721!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x36d460){const _0x4d9e0=a138_0x4115ca,_0x524d5c=[];for(const _0x209b02 of Object['values'](CORE_IDE_CONFIGS)){if(_0x209b02[_0x4d9e0(0xf4)])for(const _0x27e760 of _0x209b02['files']){_0x524d5c[_0x4d9e0(0xf3)](resolve(_0x36d460,_0x27e760[_0x4d9e0(0x102)]));}}return _0x524d5c;}function analyse(_0x457dcc){const _0x75689a=a138_0x4115ca;let _0x197f2b=null;const _0x1439a6=resolve(_0x457dcc,NEW_CONFIG_NAME),_0x201cc8=existsSync(_0x1439a6);for(const _0x52f151 of LEGACY_CONFIG_NAMES){const _0x5b02ac=resolve(_0x457dcc,_0x52f151);if(existsSync(_0x5b02ac)){const _0x5daa9e=readConfigFile(_0x5b02ac),_0x41886b=Object[_0x75689a(0x12f)](_0x5daa9e)[_0x75689a(0x10b)](_0x59b318=>typeof _0x5daa9e[_0x59b318]!==_0x75689a(0xf7));_0x197f2b={'oldPath':_0x5b02ac,'hasNewConfig':_0x201cc8,'fields':_0x41886b};break;}}const _0x148b8b=[],_0x7727b=resolve(_0x457dcc,'.lovrabet');if(existsSync(_0x7727b))_0x148b8b[_0x75689a(0xf3)](_0x7727b);const _0x4c2061=resolve(_0x457dcc,_0x75689a(0xb7));if(existsSync(_0x4c2061))_0x148b8b[_0x75689a(0xf3)](_0x4c2061);const _0x3a2fee=resolve(_0x457dcc,'.claude/skills/lovrabet');if(existsSync(_0x3a2fee))_0x148b8b[_0x75689a(0xf3)](_0x3a2fee);for(const _0x34d47c of collectIdeSkillFiles(_0x457dcc)){if(existsSync(_0x34d47c))_0x148b8b[_0x75689a(0xf3)](_0x34d47c);}let _0x35f376=null;const _0x18993f=resolve(_0x457dcc,_0x75689a(0xf9));if(existsSync(_0x18993f))try{const _0x241683=JSON[_0x75689a(0xd0)](readFileSync(_0x18993f,_0x75689a(0x100)));if(_0x241683?.[_0x75689a(0x12b)]&&typeof _0x241683[_0x75689a(0x12b)]==='object'){const _0x10182c=[];for(const [_0x2af53d,_0x1ea329]of Object[_0x75689a(0xe0)](_0x241683[_0x75689a(0x12b)])){const _0x4e8ff7=_0x1ea329;_0x4e8ff7?.[_0x75689a(0xce)]&&Array['isArray'](_0x4e8ff7[_0x75689a(0xce)])&&_0x4e8ff7['args'][_0x75689a(0x11d)](_0x18e265=>typeof _0x18e265===_0x75689a(0xc1)&&_0x18e265[_0x75689a(0x103)](_0x75689a(0xf5)))&&_0x10182c['push'](_0x2af53d);}_0x10182c[_0x75689a(0xd2)]>0x0&&(_0x35f376={'path':_0x18993f,'keys':_0x10182c});}}catch{}const _0x4b37f3=_0x148b8b[_0x75689a(0xd2)]>0x0||_0x197f2b!==null;let _0x232ce0=null;const _0xf676ae=resolve(_0x457dcc,'package.json');if(existsSync(_0xf676ae))try{const _0x4ad5e4=JSON[_0x75689a(0xd0)](readFileSync(_0xf676ae,'utf8'));for(const _0x91014 of[_0x75689a(0xc2),_0x75689a(0xdd)]){const _0x361198=_0x4ad5e4?.[_0x91014]?.['@lovrabet/sdk'];if(typeof _0x361198===_0x75689a(0xc1)){_0x361198!==_0x75689a(0xf0)&&(_0x232ce0={'pkgPath':_0xf676ae,'currentVersion':_0x361198,'field':_0x91014});break;}}}catch{}return{'configMigration':_0x197f2b,'oldArtifacts':_0x148b8b,'oldMcpConfig':_0x35f376,'needsSkillSwap':_0x4b37f3,'sdkUpgrade':_0x232ce0};}function a138_0x5a3b(){const _0x3fbd47=['1PLlStw','not\x20needed','devDependencies','584TlrDuL','stringify','entries','inherit','done','log','Clean\x20MCP\x20config','.bak','Remove\x20.lovrabet/','1437424XsLLnR','white','[\x22@lovrabet/sdk\x22]:\x20','Legacy\x20artifacts:','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','10708900FLlZDS','151465mWluLv','\x20\x20#\x20or','isArray','latest','\x20\x20npm\x20install','\x20removed\x20(','push','files','@lovrabet/dataset-mcp-server','not\x20found\x20or\x20already\x20at\x20latest','undefined','\x20from\x20','.cursor/mcp.json','1319214ryxYUW','skipped','error','@lovrabet/sdk','\x20→\x20keys:\x20','Step\x201/7:\x20Config\x20migration\x20—\x20','utf8','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','path','includes','5663txUGQU','hasNewConfig','\x20\x20New\x20config\x20(.rabetbase.json):\x20','oldMcpConfig','\x20\x20Fields\x20to\x20migrate:\x20','Config\x20file:','Skill\x20swap:','filter','Upgrade\x20@lovrabet/sdk','Step\x204/7:\x20Cleaning\x20MCP\x20config...','bold','\x20→\x20latest','Config\x20migration','label','yellow','Step\x201/7:\x20Migrating\x20config...','succeed','exit\x20','80kcUCSa','.lovrabet','sdkUpgrade','isDirectory','already\x20exists\x20(will\x20merge)','Install\x20new\x20skill','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','some','oldArtifacts','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','2994366cCboHh','no\x20matching\x20entry\x20found','5137857IbNhwy','needed','gray','\x20→\x20','cyan','none\x20found','failed','Proceed\x20with\x20upgrade?','message','mcpServers','===\x20Upgrade\x20Summary\x20===','Step\x206/7:\x20Installing\x20new\x20skill...','===\x20Upgrade\x20Analysis\x20===','keys','red','.cursor/rules/lovrabet_rules.mdc','skipped\x20(no\x20legacy\x20config)','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','@lovrabet/sdk:','\x20removed','info','join','no\x20legacy\x20entry','oldPath','detail','string','dependencies','start','fail','FOUND','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','lovrabet/rabetbase','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','MCP\x20config:','status','\x20\x20bun\x20install','no\x20legacy\x20config\x20found','\x20(backup:\x20','args','Step\x204/7:\x20MCP\x20config\x20—\x20','parse','fields','length','lovrabet/rabetbase\x20installed\x20globally','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','object','Remove\x20old\x20skill','Upgrade\x20cancelled.','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','green'];a138_0x5a3b=function(){return _0x3fbd47;};return a138_0x5a3b();}function printReport(_0x589de8){const _0x38a19d=a138_0x4115ca,{configMigration:_0x346aa1,oldArtifacts:_0x4f0abe,oldMcpConfig:_0x368bbe,needsSkillSwap:_0xfe4186}=_0x589de8;console[_0x38a19d(0xe3)](''),console['log'](a138_0x4faac9[_0x38a19d(0x10e)](_0x38a19d(0x12e))),console[_0x38a19d(0xe3)]('');_0x346aa1?(console['log'](a138_0x4faac9[_0x38a19d(0x126)](_0x38a19d(0x109))+('\x20\x20'+a138_0x4faac9['yellow'](_0x346aa1[_0x38a19d(0xbf)]))),console[_0x38a19d(0xe3)](_0x38a19d(0x106)+(_0x346aa1[_0x38a19d(0x105)]?a138_0x4faac9[_0x38a19d(0xda)](_0x38a19d(0x11a)):a138_0x4faac9[_0x38a19d(0x124)]('not\x20found\x20(will\x20create)'))),console['log'](_0x38a19d(0x108)+_0x346aa1[_0x38a19d(0xd1)][_0x38a19d(0xbd)](',\x20')),console[_0x38a19d(0xe3)](_0x38a19d(0x101))):console['log'](a138_0x4faac9[_0x38a19d(0x126)](_0x38a19d(0x109))+'\x20\x20'+a138_0x4faac9[_0x38a19d(0x124)](_0x38a19d(0xcc)));console[_0x38a19d(0xe3)]('');if(_0x4f0abe[_0x38a19d(0xd2)]>0x0){console[_0x38a19d(0xe3)](a138_0x4faac9['cyan'](_0x38a19d(0xea)));for(const _0xac5109 of _0x4f0abe){console['log']('\x20\x20'+a138_0x4faac9[_0x38a19d(0x130)](_0x38a19d(0xc5))+'\x20\x20'+_0xac5109);}console[_0x38a19d(0xe3)]('\x20\x20Action:\x20delete');}else console[_0x38a19d(0xe3)](a138_0x4faac9[_0x38a19d(0x126)](_0x38a19d(0xea))+'\x20\x20'+a138_0x4faac9[_0x38a19d(0x124)](_0x38a19d(0x127)));console[_0x38a19d(0xe3)]('');_0x368bbe?(console[_0x38a19d(0xe3)](a138_0x4faac9['cyan'](_0x38a19d(0xc9))+('\x20\x20'+a138_0x4faac9[_0x38a19d(0x112)](_0x368bbe[_0x38a19d(0x102)])+_0x38a19d(0xfe)+_0x368bbe[_0x38a19d(0x12f)][_0x38a19d(0xbd)](',\x20'))),console[_0x38a19d(0xe3)](_0x38a19d(0xb9))):console[_0x38a19d(0xe3)](a138_0x4faac9[_0x38a19d(0x126)](_0x38a19d(0xc9))+'\x20\x20'+a138_0x4faac9['gray'](_0x38a19d(0xbe)));console['log'](''),console[_0x38a19d(0xe3)](a138_0x4faac9['cyan'](_0x38a19d(0x10a))+('\x20\x20'+(_0xfe4186?a138_0x4faac9[_0x38a19d(0x112)](_0x38a19d(0x123)):a138_0x4faac9[_0x38a19d(0xda)](_0x38a19d(0xdc)))));_0xfe4186&&console[_0x38a19d(0xe3)](_0x38a19d(0xd9)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x38a19d(0xe3)]('');if(_0x589de8[_0x38a19d(0x118)]){const {currentVersion:_0x14d475,field:_0x23cc1d,pkgPath:_0x322f0e}=_0x589de8[_0x38a19d(0x118)];console[_0x38a19d(0xe3)](a138_0x4faac9[_0x38a19d(0x126)](_0x38a19d(0xba))+('\x20\x20'+a138_0x4faac9[_0x38a19d(0x112)](_0x322f0e))),console[_0x38a19d(0xe3)]('\x20\x20Current\x20version\x20in\x20'+_0x23cc1d+':\x20'+a138_0x4faac9[_0x38a19d(0x112)](_0x14d475)+_0x38a19d(0x125)+a138_0x4faac9['green'](_0x38a19d(0xf0))),console['log'](_0x38a19d(0xd5));}else console[_0x38a19d(0xe3)](a138_0x4faac9[_0x38a19d(0x126)](_0x38a19d(0xba))+'\x20\x20'+a138_0x4faac9[_0x38a19d(0x124)](_0x38a19d(0xf6)));console[_0x38a19d(0xe3)]('');}function execConfigMigration(_0x542ca6,_0x29c2e8){const _0x54fe0c=a138_0x4115ca,{configMigration:_0x871fe1}=_0x542ca6;if(!_0x871fe1?.[_0x54fe0c(0xbf)])return{'step':0x1,'label':_0x54fe0c(0x110),'ok':!![],'detail':_0x54fe0c(0xb8)};const _0x583b6a=readConfigFile(_0x871fe1[_0x54fe0c(0xbf)]),_0x56a802=resolve(_0x29c2e8,NEW_CONFIG_NAME),_0x26fde3=_0x871fe1[_0x54fe0c(0x105)]?readConfigFile(_0x56a802):{};for(const [_0x5e980c,_0xaaa5aa]of Object[_0x54fe0c(0xe0)](_0x583b6a)){!(_0x5e980c in _0x26fde3)&&(_0x26fde3[_0x5e980c]=_0xaaa5aa);}writeConfigFile(_0x56a802,_0x26fde3);const _0xd6317=_0x871fe1[_0x54fe0c(0xbf)]+_0x54fe0c(0xe5);return renameSync(_0x871fe1[_0x54fe0c(0xbf)],_0xd6317),{'step':0x1,'label':_0x54fe0c(0x110),'ok':!![],'detail':_0x871fe1['oldPath']+_0x54fe0c(0x125)+_0x56a802+_0x54fe0c(0xcd)+_0xd6317+')'};}function execRemoveOldArtifacts(_0x54839f){const _0x599524=a138_0x4115ca,_0x4eb8f7=[];for(const _0xdb32b2 of _0x54839f){try{if(!existsSync(_0xdb32b2))continue;const _0x4197c8=tryStat(_0xdb32b2);_0x4197c8?.[_0x599524(0x119)]()?rmSync(_0xdb32b2,{'recursive':!![],'force':!![]}):unlinkSync(_0xdb32b2);}catch(_0x11158d){_0x4eb8f7[_0x599524(0xf3)](_0xdb32b2+':\x20'+_0x11158d[_0x599524(0x12a)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x4eb8f7[_0x599524(0xd2)]===0x0,'detail':_0x4eb8f7['length']>0x0?_0x54839f[_0x599524(0xd2)]-_0x4eb8f7[_0x599524(0xd2)]+'/'+_0x54839f[_0x599524(0xd2)]+_0x599524(0xf2)+_0x4eb8f7[_0x599524(0xbd)](';\x20')+')':_0x54839f[_0x599524(0xd2)]+_0x599524(0xbb)};}function execCleanMcp(_0x149b69){const _0x58aac1=a138_0x4115ca;if(!_0x149b69[_0x58aac1(0x107)])return{'step':0x4,'label':_0x58aac1(0xe4),'ok':!![],'detail':'skipped'};try{const _0x2b05f1=readFileSync(_0x149b69[_0x58aac1(0x107)][_0x58aac1(0x102)],_0x58aac1(0x100)),_0x325926=JSON[_0x58aac1(0xd0)](_0x2b05f1);if(_0x325926?.[_0x58aac1(0x12b)]&&typeof _0x325926[_0x58aac1(0x12b)]===_0x58aac1(0xd6)){const _0x5a8619=[];for(const [_0x372f02,_0x185613]of Object[_0x58aac1(0xe0)](_0x325926[_0x58aac1(0x12b)])){_0x185613?.['args']&&Array[_0x58aac1(0xef)](_0x185613[_0x58aac1(0xce)])&&_0x185613[_0x58aac1(0xce)][_0x58aac1(0x11d)](_0x4d5eb8=>typeof _0x4d5eb8===_0x58aac1(0xc1)&&_0x4d5eb8[_0x58aac1(0x103)](_0x58aac1(0xf5)))&&_0x5a8619[_0x58aac1(0xf3)](_0x372f02);}for(const _0x18b9d4 of _0x5a8619){delete _0x325926[_0x58aac1(0x12b)][_0x18b9d4];}return _0x5a8619[_0x58aac1(0xd2)]>0x0&&writeFileSync(_0x149b69['oldMcpConfig']['path'],JSON[_0x58aac1(0xdf)](_0x325926,null,0x2)+'\x0a',_0x58aac1(0x100)),{'step':0x4,'label':_0x58aac1(0xe4),'ok':!![],'detail':'removed\x20'+_0x5a8619[_0x58aac1(0xbd)](',\x20')+_0x58aac1(0xf8)+_0x149b69[_0x58aac1(0x107)][_0x58aac1(0x102)]};}return{'step':0x4,'label':_0x58aac1(0xe4),'ok':!![],'detail':_0x58aac1(0x121)};}catch(_0x5262a4){return{'step':0x4,'label':_0x58aac1(0xe4),'ok':![],'detail':_0x5262a4['message']};}}function execSkillsRemove(_0xef3f3a,_0x18e385){const _0xf7100=a138_0x4115ca,_0x4325a2=runNpxSkillsRemove(_0xef3f3a,{'stdio':_0xf7100(0xe1),'yes':_0x18e385});return{'step':0x5,'label':_0xf7100(0xd7),'ok':_0x4325a2['ok'],'detail':_0x4325a2['ok']?'lovrabet/lovrabet-skill\x20removed':_0x4325a2[_0xf7100(0xfc)]??_0xf7100(0x115)+_0x4325a2['status']};}function execSkillsAdd(_0x3334ad,_0xa86471){const _0x377598=a138_0x4115ca,_0x2db564=runNpxSkillsAddGlobal(_0x3334ad,_0x377598(0xc7),{'stdio':_0x377598(0xe1),'yes':_0xa86471});return{'step':0x6,'label':_0x377598(0x11b),'ok':_0x2db564['ok'],'detail':_0x2db564['ok']?_0x377598(0xd3):_0x2db564[_0x377598(0xfc)]??'exit\x20'+_0x2db564[_0x377598(0xca)]};}function execUpgradeSdk(_0x46ca74){const _0x41873a=a138_0x4115ca;if(!_0x46ca74[_0x41873a(0x118)])return{'step':0x7,'label':_0x41873a(0x10c),'ok':!![],'detail':'skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)'};const {pkgPath:_0x23d270,currentVersion:_0x1f646e,field:_0x18a8f4}=_0x46ca74[_0x41873a(0x118)];try{const _0x5c4b7a=readFileSync(_0x23d270,'utf8'),_0x1a35e9=JSON[_0x41873a(0xd0)](_0x5c4b7a);return _0x1a35e9[_0x18a8f4][_0x41873a(0xfd)]=_0x41873a(0xf0),writeFileSync(_0x23d270,JSON['stringify'](_0x1a35e9,null,0x2)+'\x0a',_0x41873a(0x100)),{'step':0x7,'label':_0x41873a(0x10c),'ok':!![],'detail':_0x18a8f4+_0x41873a(0xe9)+_0x1f646e+_0x41873a(0x10f)};}catch(_0x45449c){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x45449c[_0x41873a(0x12a)]};}}function tryStat(_0x1c3ba5){try{return statSync(_0x1c3ba5);}catch{return undefined;}}function printSummary(_0x28bc16){const _0x293e0c=a138_0x4115ca;console['log'](''),console[_0x293e0c(0xe3)](a138_0x4faac9[_0x293e0c(0x10e)](_0x293e0c(0x12c))),console[_0x293e0c(0xe3)]('');for(const _0x5652c7 of _0x28bc16){const _0x888e17=_0x5652c7['ok']?a138_0x4faac9[_0x293e0c(0xda)]('OK'):a138_0x4faac9[_0x293e0c(0x130)]('FAIL');console[_0x293e0c(0xe3)]('\x20\x20'+_0x888e17+'\x20\x20Step\x20'+_0x5652c7['step']+':\x20'+_0x5652c7[_0x293e0c(0x111)]);if(_0x5652c7[_0x293e0c(0xc0)])console[_0x293e0c(0xe3)]('\x20\x20\x20\x20\x20\x20\x20'+a138_0x4faac9[_0x293e0c(0x124)](_0x5652c7[_0x293e0c(0xc0)]));}console[_0x293e0c(0xe3)]('');}export async function upgradeApp(_0x3cafcd,_0x4628a9){const _0x42d076=a138_0x4115ca,_0x20e74f=process['cwd'](),_0x5af711=analyse(_0x20e74f),_0x4a5eb6=!_0x5af711['configMigration']&&_0x5af711[_0x42d076(0x11e)][_0x42d076(0xd2)]===0x0&&!_0x5af711[_0x42d076(0x107)]&&!_0x5af711['needsSkillSwap']&&!_0x5af711['sdkUpgrade'];if(_0x4a5eb6){console['log'](a138_0x4faac9['green']('No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.'));return;}printReport(_0x5af711);const _0x5b06db=!!(_0x4628a9['yes']||_0x4628a9['Y']||_0x3cafcd);if(!_0x5b06db)try{const _0x2d5365=await askConfirm(_0x42d076(0x129));if(!_0x2d5365){console[_0x42d076(0xe3)](a138_0x4faac9['gray'](_0x42d076(0xd8)));return;}}catch(_0x4265af){if(_0x4265af?.['message']==='CANCEL'){console['log'](a138_0x4faac9['gray'](_0x42d076(0xd8)));return;}throw _0x4265af;}const _0x2e86ce=[],_0x5886a5=a138_0x500716({'text':_0x42d076(0x113),'color':_0x42d076(0x126)})[_0x42d076(0xc3)](),_0x41eeca=execConfigMigration(_0x5af711,_0x20e74f);_0x2e86ce[_0x42d076(0xf3)](_0x41eeca),_0x5886a5[_0x41eeca['ok']?_0x42d076(0x114):_0x42d076(0xc4)](_0x42d076(0xff)+(_0x41eeca['detail']??(_0x41eeca['ok']?_0x42d076(0xe2):_0x42d076(0x128))));const _0x11cfc5=resolve(_0x20e74f,_0x42d076(0x117)),_0x2ed016=a138_0x500716({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x42d076(0x126)})[_0x42d076(0xc3)]();if(existsSync(_0x11cfc5))try{rmSync(_0x11cfc5,{'recursive':!![],'force':!![]}),_0x2ed016[_0x42d076(0x114)](_0x42d076(0xc8)),_0x2e86ce['push']({'step':0x2,'label':_0x42d076(0xe6),'ok':!![]});}catch(_0x405407){_0x2ed016[_0x42d076(0xc4)]('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x405407[_0x42d076(0x12a)]),_0x2e86ce['push']({'step':0x2,'label':_0x42d076(0xe6),'ok':![],'detail':_0x405407[_0x42d076(0x12a)]});}else _0x2ed016[_0x42d076(0xbc)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x2e86ce[_0x42d076(0xf3)]({'step':0x2,'label':_0x42d076(0xe6),'ok':!![],'detail':_0x42d076(0xfb)});const _0x317bf2=a138_0x500716({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x42d076(0x126)})[_0x42d076(0xc3)](),_0x487094=execRemoveOldArtifacts(_0x5af711[_0x42d076(0x11e)]);_0x2e86ce[_0x42d076(0xf3)](_0x487094),_0x317bf2[_0x487094['ok']?_0x42d076(0x114):_0x42d076(0xc4)]('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x487094[_0x42d076(0xc0)]??(_0x487094['ok']?_0x42d076(0xe2):_0x42d076(0x128))));const _0x229d9f=a138_0x500716({'text':_0x42d076(0x10d),'color':_0x42d076(0x126)})['start'](),_0x4952f0=execCleanMcp(_0x5af711);_0x2e86ce['push'](_0x4952f0),_0x229d9f[_0x4952f0['ok']?_0x42d076(0x114):_0x42d076(0xc4)](_0x42d076(0xcf)+(_0x4952f0[_0x42d076(0xc0)]??(_0x4952f0['ok']?'done':'failed')));const _0x5729fe=a138_0x500716({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':_0x42d076(0x126)})[_0x42d076(0xc3)](),_0x2451da=execSkillsRemove(_0x20e74f,_0x5b06db);_0x2e86ce[_0x42d076(0xf3)](_0x2451da),_0x5729fe[_0x2451da['ok']?_0x42d076(0x114):'fail']('Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20'+(_0x2451da['detail']??(_0x2451da['ok']?'done':_0x42d076(0x128))));const _0x50f1a5=a138_0x500716({'text':_0x42d076(0x12d),'color':_0x42d076(0x126)})[_0x42d076(0xc3)](),_0x202eba=execSkillsAdd(_0x20e74f,_0x5b06db);_0x2e86ce[_0x42d076(0xf3)](_0x202eba),_0x50f1a5[_0x202eba['ok']?_0x42d076(0x114):_0x42d076(0xc4)](_0x42d076(0x11c)+(_0x202eba[_0x42d076(0xc0)]??(_0x202eba['ok']?'done':_0x42d076(0x128))));const _0x226d3c=a138_0x500716({'text':_0x42d076(0xc6),'color':'cyan'})[_0x42d076(0xc3)](),_0x2955ce=execUpgradeSdk(_0x5af711);_0x2e86ce[_0x42d076(0xf3)](_0x2955ce),_0x226d3c[_0x2955ce['ok']?_0x42d076(0x114):_0x42d076(0xc4)](_0x42d076(0xeb)+(_0x2955ce[_0x42d076(0xc0)]??(_0x2955ce['ok']?'done':_0x42d076(0x128)))),printSummary(_0x2e86ce);const _0x4ec9ec=_0x2e86ce[_0x42d076(0x11d)](_0x2210c9=>!_0x2210c9['ok']);_0x4ec9ec?console[_0x42d076(0xe3)](a138_0x4faac9['yellow'](_0x42d076(0xd4))):console['log'](a138_0x4faac9[_0x42d076(0xda)]('Upgrade\x20completed\x20successfully!')),_0x2955ce['ok']&&_0x5af711[_0x42d076(0x118)]&&(console[_0x42d076(0xe3)](''),console[_0x42d076(0xe3)](a138_0x4faac9[_0x42d076(0x10e)]['cyan']('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console['log'](a138_0x4faac9['cyan'](_0x42d076(0x11f))),console[_0x42d076(0xe3)](''),console[_0x42d076(0xe3)](a138_0x4faac9[_0x42d076(0xe8)](_0x42d076(0xf1))),console['log'](a138_0x4faac9[_0x42d076(0xe8)](_0x42d076(0xee))),console['log'](a138_0x4faac9[_0x42d076(0xe8)](_0x42d076(0xcb))),console['log'](''));}
@@ -1 +1 @@
1
- const a137_0x8649c8=a137_0x4460;(function(_0x5d1e90,_0x2ccfa9){const _0x40a705=a137_0x4460,_0x16614a=_0x5d1e90();while(!![]){try{const _0x3ba2f2=-parseInt(_0x40a705(0xe0))/0x1+parseInt(_0x40a705(0x102))/0x2*(-parseInt(_0x40a705(0xf6))/0x3)+parseInt(_0x40a705(0xef))/0x4*(-parseInt(_0x40a705(0xde))/0x5)+parseInt(_0x40a705(0xfc))/0x6+parseInt(_0x40a705(0xd6))/0x7+-parseInt(_0x40a705(0xec))/0x8+parseInt(_0x40a705(0xe4))/0x9;if(_0x3ba2f2===_0x2ccfa9)break;else _0x16614a['push'](_0x16614a['shift']());}catch(_0xa87b9d){_0x16614a['push'](_0x16614a['shift']());}}}(a137_0x13a1,0xae0d1));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';function a137_0x13a1(){const _0x49828a=['skill','description','push','Diagnostics','commands','build','remote','start','preview','get','584157XcYEnM','project','read','Authentication','Configuration','SQL\x20Queries','create','has','3434825owhzaA','hidden','1034748GRkUzn','risk','Code\x20Generation','app','32715630xAZQGH','app\x20use','write','filter','Run\x20any\x20package.json\x20script','length','values','skill\x20','11276168ullqtE','Instant\x20API','Run\x20Scripts','4uLkpLo','Platform\x20Issue','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','Roles','from','`rabetbase\x20','command','603ImDFfA','isSingleCommand','map','`\x20has\x20been\x20removed.','service','Permissions','2344470KMMPtT','Runtime\x20App\x20Config\x20Management','set','API\x20Development','BFF\x20Scripts','Logs','2638BAuwDB','wildcardDef','run','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','Project','auth'];a137_0x13a1=function(){return _0x49828a;};return a137_0x13a1();}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{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=[];function a137_0x4460(_0x2e83c8,_0x43bafe){_0x2e83c8=_0x2e83c8-0xd6;const _0x13a149=a137_0x13a1();let _0x44605c=_0x13a149[_0x2e83c8];return _0x44605c;}const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x3c77b6){const _0x1fcdbf=a137_0x4460;for(const _0x5b121e of _0x3c77b6){definitions[_0x1fcdbf(0xfe)](_0x5b121e['service']+':'+_0x5b121e[_0x1fcdbf(0xf5)],_0x5b121e);let _0xba9a8c=serviceGroups[_0x1fcdbf(0x111)](_0x5b121e[_0x1fcdbf(0xfa)]);!_0xba9a8c&&(_0xba9a8c=[],serviceGroups[_0x1fcdbf(0xfe)](_0x5b121e[_0x1fcdbf(0xfa)],_0xba9a8c)),_0xba9a8c[_0x1fcdbf(0x10a)](_0x5b121e);}}function registerDeclarativeService(_0xaf8ea1,_0x4621e3,_0x350483){const _0x192397=a137_0x4460;registerDefinitions(_0x4621e3);_0x350483?.[_0x192397(0x103)]&&registerDefinitions([_0x350483[_0x192397(0x103)]]);const _0x5226c5=_0x2f554e=>_0x2f554e===_0x192397(0xd8)?'':_0x2f554e===_0x192397(0xe6)?'\x20\x20[write]':'\x20\x20[high-risk-write]',_0x3fc2f8={'service':_0x4621e3[0x0][_0x192397(0xfa)],'label':_0xaf8ea1,'commands':_0x4621e3[_0x192397(0xe7)](_0x2c0b6d=>!_0x2c0b6d[_0x192397(0xdf)])[_0x192397(0xf8)](_0x38edba=>({'command':_0x38edba[_0x192397(0xf5)],'description':_0x38edba[_0x192397(0x109)],'tag':_0x5226c5(_0x38edba[_0x192397(0xe1)])})),'declarative':!![],'defaultCommand':_0x350483?.['defaultCommand']??(_0x350483?.[_0x192397(0xf7)]?_0x4621e3[0x0]['command']:undefined),'wildcardDef':_0x350483?.[_0x192397(0x103)],'isSingleCommand':_0x350483?.[_0x192397(0xf7)]};serviceRegistry[_0x192397(0x10a)](_0x3fc2f8),serviceByName[_0x192397(0xfe)](_0x3fc2f8[_0x192397(0xfa)],_0x3fc2f8);}registerDeclarativeService('Quick\x20Start',initDefinitions,{'defaultCommand':a137_0x8649c8(0x104),'isSingleCommand':!![]}),registerDeclarativeService(a137_0x8649c8(0x106),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService(a137_0x8649c8(0xd9),authDefinitions,{'defaultCommand':'login'}),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService('Smart\x20List\x20Pages',pageDefinitions),registerDeclarativeService(a137_0x8649c8(0xff),apiDefinitions),registerDeclarativeService(a137_0x8649c8(0xed),dataDefinitions),registerDeclarativeService(a137_0x8649c8(0x100),bffDefinitions),registerDeclarativeService(a137_0x8649c8(0xdb),sqlDefinitions),registerDeclarativeService('Database\x20Connections',dbDefinitions),registerDeclarativeService('Menu',menuDefinitions),registerDeclarativeService(a137_0x8649c8(0xf2),roleDefinitions),registerDeclarativeService(a137_0x8649c8(0xfb),permitDefinitions),registerDeclarativeService(a137_0x8649c8(0xfd),appConfigDefinitions),registerDeclarativeService(a137_0x8649c8(0xf0),issueDefinitions),registerDeclarativeService(a137_0x8649c8(0xe2),codegenDefinitions),registerDeclarativeService(a137_0x8649c8(0xda),configDefinitions),registerDeclarativeService(a137_0x8649c8(0x10b),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Schema',[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('CLI\x20Built-in\x20Skill',cliSkillDefinitions,{'defaultCommand':'install'}),registerDeclarativeService(a137_0x8649c8(0x101),logsDefinitions,{'defaultCommand':'show'}),registerDeclarativeService(a137_0x8649c8(0xee),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a137_0x8649c8(0xe9)]-0x1];last[a137_0x8649c8(0x10c)]=[{'command':'<script>','description':a137_0x8649c8(0xe8),'tag':''}];}export const deprecatedAliases={'create':{'service':a137_0x8649c8(0xd7),'command':a137_0x8649c8(0xdc)},'start':{'service':a137_0x8649c8(0x104),'command':a137_0x8649c8(0x10f)},'build':{'service':'run','command':a137_0x8649c8(0x10d)},'preview':{'service':'run','command':a137_0x8649c8(0x110)},'logout':{'service':a137_0x8649c8(0x107),'command':'logout'}};const CLI_SKILL_INSTALL_REMOVED_HINT=a137_0x8649c8(0x105),APP_REMOTE_REMOVED_HINT=a137_0x8649c8(0xf1),APP_USE_REMOVED_HINT='Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.';export function resolveRemovedCommand(_0x3e2c82,_0x2eeb55){const _0x331524=a137_0x8649c8;if(_0x3e2c82===_0x331524(0x108)){const _0x182f32=_0x2eeb55?_0x331524(0xeb)+_0x2eeb55:_0x331524(0x108);return{'command':_0x182f32,'message':_0x331524(0xf4)+_0x182f32+_0x331524(0xf9),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x3e2c82==='skills')return{'command':'skills','message':'`rabetbase\x20skills`\x20has\x20been\x20removed.','hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x3e2c82===_0x331524(0xe3)&&_0x2eeb55===_0x331524(0x10e))return{'command':'app\x20remote','message':'`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','hint':APP_REMOTE_REMOVED_HINT};if(_0x3e2c82==='app'&&_0x2eeb55==='use')return{'command':_0x331524(0xe5),'message':'`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a137_0x8649c8(0xdc)},'sql':{'new':a137_0x8649c8(0xdc)}};export function resolveDeprecatedSubcommand(_0x4bd295,_0x4e2e52){return deprecatedSubcommands[_0x4bd295]?.[_0x4e2e52];}export function findDefinition(_0x41a699,_0x59a486){const _0x3f5950=a137_0x8649c8;return definitions[_0x3f5950(0x111)](_0x41a699+':'+_0x59a486);}export function isKnownService(_0x3b6ec5){return serviceByName['has'](_0x3b6ec5);}export function isDeclarativeService(_0x139597){const _0x2d4853=a137_0x8649c8;return serviceGroups[_0x2d4853(0xdd)](_0x139597)||serviceByName[_0x2d4853(0x111)](_0x139597)?.[_0x2d4853(0x103)]!==undefined;}export function getServiceEntry(_0x377109){const _0x14dff0=a137_0x8649c8;return serviceByName[_0x14dff0(0x111)](_0x377109);}export function getLegacyHandler(_0xaa6aca,_0xf56abc){return undefined;}export function getAllDefinitions(){const _0x4c0163=a137_0x8649c8;return Array[_0x4c0163(0xf3)](definitions[_0x4c0163(0xea)]());}
1
+ const a139_0x408446=a139_0x2f5e;(function(_0xa72788,_0x1fb856){const _0x1b8318=a139_0x2f5e,_0x4db640=_0xa72788();while(!![]){try{const _0x18d650=-parseInt(_0x1b8318(0x209))/0x1+parseInt(_0x1b8318(0x201))/0x2+parseInt(_0x1b8318(0x1f4))/0x3*(-parseInt(_0x1b8318(0x20f))/0x4)+parseInt(_0x1b8318(0x1f2))/0x5*(parseInt(_0x1b8318(0x1db))/0x6)+-parseInt(_0x1b8318(0x1f0))/0x7*(parseInt(_0x1b8318(0x1de))/0x8)+parseInt(_0x1b8318(0x200))/0x9+-parseInt(_0x1b8318(0x20c))/0xa*(parseInt(_0x1b8318(0x1d2))/0xb);if(_0x18d650===_0x1fb856)break;else _0x4db640['push'](_0x4db640['shift']());}catch(_0x280435){_0x4db640['push'](_0x4db640['shift']());}}}(a139_0x3c19,0x9d5d1));import{apiDefinitions}from'../commands/api/index.js';function a139_0x2f5e(_0x49e80d,_0x225588){_0x49e80d=_0x49e80d-0x1c8;const _0x3c1954=a139_0x3c19();let _0x2f5e10=_0x3c1954[_0x49e80d];return _0x2f5e10;}import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{fileDefinitions}from'../commands/file/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x5e0541){const _0x1c94e4=a139_0x2f5e;for(const _0x5661b3 of _0x5e0541){definitions[_0x1c94e4(0x1e3)](_0x5661b3['service']+':'+_0x5661b3['command'],_0x5661b3);let _0x32dfc9=serviceGroups[_0x1c94e4(0x1dc)](_0x5661b3[_0x1c94e4(0x1e1)]);!_0x32dfc9&&(_0x32dfc9=[],serviceGroups[_0x1c94e4(0x1e3)](_0x5661b3['service'],_0x32dfc9)),_0x32dfc9[_0x1c94e4(0x1d0)](_0x5661b3);}}function registerDeclarativeService(_0x4e7b94,_0x28f99b,_0x2ba740){const _0x13295d=a139_0x2f5e;registerDefinitions(_0x28f99b);_0x2ba740?.[_0x13295d(0x1f5)]&&registerDefinitions([_0x2ba740[_0x13295d(0x1f5)]]);const _0x41f137=_0x5f50f5=>_0x5f50f5===_0x13295d(0x1f1)?'':_0x5f50f5===_0x13295d(0x1fb)?_0x13295d(0x20e):'\x20\x20[high-risk-write]',_0x3e0eb7={'service':_0x28f99b[0x0][_0x13295d(0x1e1)],'label':_0x4e7b94,'commands':_0x28f99b['filter'](_0x23934b=>!_0x23934b[_0x13295d(0x1e5)])[_0x13295d(0x1e0)](_0x2b8bc7=>({'command':_0x2b8bc7[_0x13295d(0x1e6)],'description':_0x2b8bc7[_0x13295d(0x1d5)],'tag':_0x41f137(_0x2b8bc7['risk'])})),'declarative':!![],'defaultCommand':_0x2ba740?.['defaultCommand']??(_0x2ba740?.[_0x13295d(0x1ed)]?_0x28f99b[0x0][_0x13295d(0x1e6)]:undefined),'wildcardDef':_0x2ba740?.[_0x13295d(0x1f5)],'isSingleCommand':_0x2ba740?.['isSingleCommand']};serviceRegistry[_0x13295d(0x1d0)](_0x3e0eb7),serviceByName['set'](_0x3e0eb7[_0x13295d(0x1e1)],_0x3e0eb7);}registerDeclarativeService(a139_0x408446(0x1c9),initDefinitions,{'defaultCommand':a139_0x408446(0x1d6),'isSingleCommand':!![]}),registerDeclarativeService(a139_0x408446(0x1df),projectDefinitions),registerDeclarativeService('Workspace',workspaceDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a139_0x408446(0x1fe)}),registerDeclarativeService(a139_0x408446(0x1d4),datasetDefinitions),registerDeclarativeService(a139_0x408446(0x1ea),pageDefinitions),registerDeclarativeService(a139_0x408446(0x1c8),apiDefinitions),registerDeclarativeService(a139_0x408446(0x208),dataDefinitions),registerDeclarativeService(a139_0x408446(0x1e7),bffDefinitions),registerDeclarativeService(a139_0x408446(0x1f9),sqlDefinitions),registerDeclarativeService(a139_0x408446(0x1d7),dbDefinitions),registerDeclarativeService(a139_0x408446(0x1cb),menuDefinitions),registerDeclarativeService(a139_0x408446(0x204),roleDefinitions),registerDeclarativeService('Permissions',permitDefinitions),registerDeclarativeService(a139_0x408446(0x1e2),appConfigDefinitions),registerDeclarativeService(a139_0x408446(0x1f7),issueDefinitions),registerDeclarativeService(a139_0x408446(0x1ec),fileDefinitions),registerDeclarativeService(a139_0x408446(0x1e8),codegenDefinitions),registerDeclarativeService(a139_0x408446(0x206),configDefinitions),registerDeclarativeService(a139_0x408446(0x1f8),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a139_0x408446(0x1cf),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a139_0x408446(0x1ca),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('CLI\x20Built-in\x20Skill',cliSkillDefinitions,{'defaultCommand':'install'}),registerDeclarativeService(a139_0x408446(0x1da),logsDefinitions,{'defaultCommand':a139_0x408446(0x1f6)}),registerDeclarativeService(a139_0x408446(0x1ee),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a139_0x408446(0x1d3)]-0x1];last[a139_0x408446(0x1d9)]=[{'command':a139_0x408446(0x1fa),'description':'Run\x20any\x20package.json\x20script','tag':''}];}export const deprecatedAliases={'create':{'service':a139_0x408446(0x1dd),'command':a139_0x408446(0x20b)},'start':{'service':a139_0x408446(0x1d6),'command':a139_0x408446(0x1ef)},'build':{'service':a139_0x408446(0x1d6),'command':a139_0x408446(0x1fc)},'preview':{'service':a139_0x408446(0x1d6),'command':a139_0x408446(0x205)},'logout':{'service':a139_0x408446(0x1cd),'command':a139_0x408446(0x1e9)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a139_0x408446(0x1eb),APP_REMOTE_REMOVED_HINT='Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.',APP_USE_REMOVED_HINT='Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.';export function resolveRemovedCommand(_0x29f293,_0x19dbf1){const _0x25eaa2=a139_0x408446;if(_0x29f293==='skill'){const _0x3f15de=_0x19dbf1?_0x25eaa2(0x202)+_0x19dbf1:_0x25eaa2(0x1e4);return{'command':_0x3f15de,'message':'`rabetbase\x20'+_0x3f15de+_0x25eaa2(0x203),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x29f293==='skills')return{'command':_0x25eaa2(0x1cc),'message':_0x25eaa2(0x1ce),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x29f293==='app'&&_0x19dbf1===_0x25eaa2(0x1d8))return{'command':_0x25eaa2(0x207),'message':_0x25eaa2(0x1fd),'hint':APP_REMOTE_REMOVED_HINT};if(_0x29f293===_0x25eaa2(0x20a)&&_0x19dbf1==='use')return{'command':'app\x20use','message':_0x25eaa2(0x1ff),'hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a139_0x408446(0x20b)},'sql':{'new':a139_0x408446(0x20b)}};export function resolveDeprecatedSubcommand(_0x4896e7,_0x1ddbe0){return deprecatedSubcommands[_0x4896e7]?.[_0x1ddbe0];}function a139_0x3c19(){const _0x71d8df=['API\x20Development','Quick\x20Start','Self\x20Update','Menu','skills','auth','`rabetbase\x20skills`\x20has\x20been\x20removed.','Schema','push','has','275yPtdTv','length','Dataset\x20&\x20Operations','description','run','Database\x20Connections','remote','commands','Logs','6idzPPy','get','project','176uSGWsd','Project','map','service','Runtime\x20App\x20Config\x20Management','set','skill','hidden','command','BFF\x20Scripts','Code\x20Generation','logout','Smart\x20List\x20Pages','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','File','isSingleCommand','Run\x20Scripts','start','301896lOpWsB','read','4435190UKvFOP','from','21lnSXVc','wildcardDef','show','Platform\x20Issue','Diagnostics','SQL\x20Queries','<script>','write','build','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','login','`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','7052724ivQqlP','1963866eqKmWh','skill\x20','`\x20has\x20been\x20removed.','Roles','preview','Configuration','app\x20remote','Instant\x20API','428377qBJjeT','app','create','59270TfkPTF','values','\x20\x20[write]','275816mWZfuH'];a139_0x3c19=function(){return _0x71d8df;};return a139_0x3c19();}export function findDefinition(_0x36e8e5,_0x16b7dd){const _0x402e68=a139_0x408446;return definitions[_0x402e68(0x1dc)](_0x36e8e5+':'+_0x16b7dd);}export function isKnownService(_0x51e2ef){const _0xa0899c=a139_0x408446;return serviceByName[_0xa0899c(0x1d1)](_0x51e2ef);}export function isDeclarativeService(_0x4a4897){const _0x116112=a139_0x408446;return serviceGroups[_0x116112(0x1d1)](_0x4a4897)||serviceByName[_0x116112(0x1dc)](_0x4a4897)?.['wildcardDef']!==undefined;}export function getServiceEntry(_0x52543a){const _0x5d1a7b=a139_0x408446;return serviceByName[_0x5d1a7b(0x1dc)](_0x52543a);}export function getLegacyHandler(_0x562a6a,_0x542834){return undefined;}export function getAllDefinitions(){const _0x1b9953=a139_0x408446;return Array[_0x1b9953(0x1f3)](definitions[_0x1b9953(0x20d)]());}
@@ -1 +1 @@
1
- const a138_0x12227e=a138_0x29b7;(function(_0x3b2c53,_0x508446){const _0x30d82a=a138_0x29b7,_0x56c8aa=_0x3b2c53();while(!![]){try{const _0x4133e0=parseInt(_0x30d82a(0x1c5))/0x1*(parseInt(_0x30d82a(0x1bf))/0x2)+parseInt(_0x30d82a(0x1b0))/0x3*(-parseInt(_0x30d82a(0x1af))/0x4)+-parseInt(_0x30d82a(0x1c1))/0x5+parseInt(_0x30d82a(0x1b2))/0x6+-parseInt(_0x30d82a(0x1ad))/0x7*(parseInt(_0x30d82a(0x1c4))/0x8)+-parseInt(_0x30d82a(0x1bb))/0x9+parseInt(_0x30d82a(0x1bc))/0xa;if(_0x4133e0===_0x508446)break;else _0x56c8aa['push'](_0x56c8aa['shift']());}catch(_0x5c2d69){_0x56c8aa['push'](_0x56c8aa['shift']());}}}(a138_0x3766,0x53828));import{createAppRole}from'../../core/api-client.js';function a138_0x3766(){const _0x5ce06d=['str','roleName','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','CUSTOM','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','flagMissing','appCode','trim','2699838aWLBxl','7560540EWezJP','role','remark','16894ItFfNc','create','1399260UQTwUN','Created\x20role\x20','POST','16exbQHE','68VFUlTT','validation','name','1701945MnTjNQ','write','41744NBwBNx','60MlJnCo','/smartapi/permit/role/create','1718580qolfjn'];a138_0x3766=function(){return _0x5ce06d;};return a138_0x3766();}function a138_0x29b7(_0xee3b9,_0x11ed8c){_0xee3b9=_0xee3b9-0x1ac;const _0x376620=a138_0x3766();let _0x29b7bc=_0x376620[_0xee3b9];return _0x29b7bc;}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a138_0x12227e(0x1b1);function readName(_0x2b0357){const _0x1c4684=a138_0x12227e,_0xe378e1=_0x2b0357['str'](_0x1c4684(0x1ac))['trim']();if(!_0xe378e1)throw CliErrors[_0x1c4684(0x1b8)](_0x1c4684(0x1ac),'Pass\x20--name\x20<roleName>.');if(_0xe378e1['length']>0x40)throw CliErrors[_0x1c4684(0x1c6)](_0x1c4684(0x1b5));return _0xe378e1;}export const roleCreate={'service':a138_0x12227e(0x1bd),'command':'create','description':a138_0x12227e(0x1b7),'risk':a138_0x12227e(0x1ae),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x438a3b){readName(_0x438a3b);},async 'dryRun'(_0x1a6225){const _0x109b6c=a138_0x12227e,_0x3edf0d=readName(_0x1a6225),_0x3a8b72=_0x1a6225[_0x109b6c(0x1b3)]('remark')[_0x109b6c(0x1ba)]()||undefined;return asDryRunResult({'operation':'create','selector':{'appCode':_0x1a6225[_0x109b6c(0x1b9)],'roleName':_0x3edf0d},'before':null,'after':{'roleName':_0x3edf0d,'roleType':_0x109b6c(0x1b6),'remark':_0x3a8b72},'dryRun':!![],'backend':{'method':_0x109b6c(0x1c3),'path':CREATE_PATH},'warnings':[]},{'method':_0x109b6c(0x1c3),'url':CREATE_PATH});},async 'execute'(_0xcdb1b0){const _0x2c4a65=a138_0x12227e,_0xc71520=readName(_0xcdb1b0),_0x389da1=_0xcdb1b0['str'](_0x2c4a65(0x1be))[_0x2c4a65(0x1ba)]()||undefined,_0x4f838c=await createAppRole({'appCode':_0xcdb1b0[_0x2c4a65(0x1b9)],'roleName':_0xc71520,..._0x389da1?{'remark':_0x389da1}:{}});return{'ok':!![],'data':{'operation':_0x2c4a65(0x1c0),'selector':{'appCode':_0xcdb1b0[_0x2c4a65(0x1b9)],'roleId':_0x4f838c['id'],'roleName':_0xc71520},'before':null,'after':projectRole(_0x4f838c),'dryRun':![],'backend':{'method':_0x2c4a65(0x1c3),'path':CREATE_PATH},'warnings':[]},'message':_0x2c4a65(0x1c2)+_0x4f838c[_0x2c4a65(0x1b4)]+'\x20(id='+_0x4f838c['id']+')'};}};
1
+ function a140_0x5541(_0x3f5ee5,_0x11fd3c){_0x3f5ee5=_0x3f5ee5-0x140;const _0x4df730=a140_0x4df7();let _0x55417f=_0x4df730[_0x3f5ee5];return _0x55417f;}const a140_0x4b0b7f=a140_0x5541;(function(_0x1e84d1,_0x4aad09){const _0x498d51=a140_0x5541,_0x4bc4f4=_0x1e84d1();while(!![]){try{const _0xc1588f=-parseInt(_0x498d51(0x154))/0x1*(parseInt(_0x498d51(0x140))/0x2)+-parseInt(_0x498d51(0x14f))/0x3+parseInt(_0x498d51(0x141))/0x4+-parseInt(_0x498d51(0x155))/0x5+parseInt(_0x498d51(0x142))/0x6*(-parseInt(_0x498d51(0x150))/0x7)+-parseInt(_0x498d51(0x158))/0x8+parseInt(_0x498d51(0x157))/0x9*(parseInt(_0x498d51(0x159))/0xa);if(_0xc1588f===_0x4aad09)break;else _0x4bc4f4['push'](_0x4bc4f4['shift']());}catch(_0x5973ae){_0x4bc4f4['push'](_0x4bc4f4['shift']());}}}(a140_0x4df7,0x9c358));import{createAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a140_0x4df7(){const _0xd2c80f=['roleName','validation','CUSTOM','/smartapi/permit/role/create','create','length','Pass\x20--name\x20<roleName>.','2579049CHVMEg','9149OXmPxe','role','remark','flagMissing','1msVxgA','1892350LcRXIk','trim','2412OAnIqW','8209664hfOgNj','147910TVCWKA','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','1083682FVmoAp','2617700TKZmvF','5382gtaQYr','name','str','\x20(id=','POST','appCode'];a140_0x4df7=function(){return _0xd2c80f;};return a140_0x4df7();}import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH=a140_0x4b0b7f(0x14b);function readName(_0xcde91d){const _0x125f69=a140_0x4b0b7f,_0x3fd06e=_0xcde91d['str'](_0x125f69(0x143))[_0x125f69(0x156)]();if(!_0x3fd06e)throw CliErrors[_0x125f69(0x153)](_0x125f69(0x143),_0x125f69(0x14e));if(_0x3fd06e[_0x125f69(0x14d)]>0x40)throw CliErrors[_0x125f69(0x149)]('Role\x20name\x20cannot\x20exceed\x2064\x20characters.');return _0x3fd06e;}export const roleCreate={'service':a140_0x4b0b7f(0x151),'command':a140_0x4b0b7f(0x14c),'description':a140_0x4b0b7f(0x15a),'risk':'write','flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x155e8c){readName(_0x155e8c);},async 'dryRun'(_0x1d2726){const _0x3b8ada=a140_0x4b0b7f,_0x2dd99c=readName(_0x1d2726),_0x59286e=_0x1d2726[_0x3b8ada(0x144)](_0x3b8ada(0x152))[_0x3b8ada(0x156)]()||undefined;return asDryRunResult({'operation':_0x3b8ada(0x14c),'selector':{'appCode':_0x1d2726['appCode'],'roleName':_0x2dd99c},'before':null,'after':{'roleName':_0x2dd99c,'roleType':_0x3b8ada(0x14a),'remark':_0x59286e},'dryRun':!![],'backend':{'method':_0x3b8ada(0x146),'path':CREATE_PATH},'warnings':[]},{'method':_0x3b8ada(0x146),'url':CREATE_PATH});},async 'execute'(_0x179c18){const _0x480222=a140_0x4b0b7f,_0x3cbb26=readName(_0x179c18),_0x58db62=_0x179c18['str'](_0x480222(0x152))[_0x480222(0x156)]()||undefined,_0x27773f=await createAppRole({'appCode':_0x179c18[_0x480222(0x147)],'roleName':_0x3cbb26,..._0x58db62?{'remark':_0x58db62}:{}});return{'ok':!![],'data':{'operation':_0x480222(0x14c),'selector':{'appCode':_0x179c18[_0x480222(0x147)],'roleId':_0x27773f['id'],'roleName':_0x3cbb26},'before':null,'after':projectRole(_0x27773f),'dryRun':![],'backend':{'method':_0x480222(0x146),'path':CREATE_PATH},'warnings':[]},'message':'Created\x20role\x20'+_0x27773f[_0x480222(0x148)]+_0x480222(0x145)+_0x27773f['id']+')'};}};
@@ -1 +1 @@
1
- function a139_0x56d0(){const _0x4ebae6=['10ohDeKo','2337546JsZIhZ','983872pSWknZ','role','POST','2699540OXjBpE','appCode','1174599HXjbvm','userCount','126604CKwcnY','roleName','Deleted\x20role\x20','high-risk-write','4007409DmRNhO','num','72fsrjje','Role\x20still\x20has\x20','\x20(id=','9346190qrzEnx','delete'];a139_0x56d0=function(){return _0x4ebae6;};return a139_0x56d0();}const a139_0x388033=a139_0x269f;(function(_0x1ca216,_0x1e3c04){const _0x241d50=a139_0x269f,_0x57729c=_0x1ca216();while(!![]){try{const _0x1ab424=parseInt(_0x241d50(0x16b))/0x1+-parseInt(_0x241d50(0x16e))/0x2+parseInt(_0x241d50(0x176))/0x3+-parseInt(_0x241d50(0x172))/0x4*(parseInt(_0x241d50(0x169))/0x5)+-parseInt(_0x241d50(0x16a))/0x6+parseInt(_0x241d50(0x167))/0x7+-parseInt(_0x241d50(0x164))/0x8*(parseInt(_0x241d50(0x170))/0x9);if(_0x1ab424===_0x1e3c04)break;else _0x57729c['push'](_0x57729c['shift']());}catch(_0x4d664d){_0x57729c['push'](_0x57729c['shift']());}}}(a139_0x56d0,0xa56cf));import{deleteAppRole}from'../../core/api-client.js';function a139_0x269f(_0x48710c,_0x4d7b21){_0x48710c=_0x48710c-0x163;const _0x56d0e6=a139_0x56d0();let _0x269fec=_0x56d0e6[_0x48710c];return _0x269fec;}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';const DELETE_PATH='/smartapi/permit/role/delete';export const roleDelete={'service':a139_0x388033(0x16c),'command':a139_0x388033(0x168),'description':'Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','risk':a139_0x388033(0x175),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x5e774a){const _0x6ab585=a139_0x388033,_0x2d0e13=_0x5e774a[_0x6ab585(0x163)]('id'),_0x282c58=await getRoleById(_0x5e774a[_0x6ab585(0x16f)],_0x2d0e13);return assertCustomRole(_0x282c58,_0x6ab585(0x168)),asDryRunResult({'operation':'delete','selector':{'appCode':_0x5e774a[_0x6ab585(0x16f)],'roleId':_0x2d0e13,'roleName':_0x282c58[_0x6ab585(0x173)]},'before':projectRole(_0x282c58),'after':null,'dryRun':!![],'backend':{'method':_0x6ab585(0x16d),'path':DELETE_PATH},'warnings':_0x282c58[_0x6ab585(0x171)]>0x0?[_0x6ab585(0x165)+_0x282c58[_0x6ab585(0x171)]+'\x20member(s);\x20they\x20will\x20lose\x20this\x20group.']:[]},{'method':_0x6ab585(0x16d),'url':DELETE_PATH});},async 'execute'(_0x5987fc){const _0x42313b=a139_0x388033,_0x232911=_0x5987fc['num']('id'),_0x546b38=await getRoleById(_0x5987fc[_0x42313b(0x16f)],_0x232911);return assertCustomRole(_0x546b38,_0x42313b(0x168)),await deleteAppRole(_0x232911),{'ok':!![],'data':{'operation':_0x42313b(0x168),'selector':{'appCode':_0x5987fc[_0x42313b(0x16f)],'roleId':_0x232911,'roleName':_0x546b38[_0x42313b(0x173)]},'before':projectRole(_0x546b38),'after':null,'dryRun':![],'backend':{'method':_0x42313b(0x16d),'path':DELETE_PATH},'warnings':[]},'message':_0x42313b(0x174)+_0x546b38[_0x42313b(0x173)]+_0x42313b(0x166)+_0x232911+')'};}};
1
+ const a141_0x457426=a141_0x10cb;(function(_0x29ecf7,_0x1bfe21){const _0x222cdf=a141_0x10cb,_0x319ef1=_0x29ecf7();while(!![]){try{const _0x480bee=parseInt(_0x222cdf(0xd3))/0x1+parseInt(_0x222cdf(0xd7))/0x2*(parseInt(_0x222cdf(0xd8))/0x3)+-parseInt(_0x222cdf(0xd4))/0x4+-parseInt(_0x222cdf(0xcd))/0x5+parseInt(_0x222cdf(0xdb))/0x6*(-parseInt(_0x222cdf(0xcf))/0x7)+-parseInt(_0x222cdf(0xdd))/0x8*(parseInt(_0x222cdf(0xd1))/0x9)+parseInt(_0x222cdf(0xda))/0xa*(parseInt(_0x222cdf(0xd6))/0xb);if(_0x480bee===_0x1bfe21)break;else _0x319ef1['push'](_0x319ef1['shift']());}catch(_0x5088db){_0x319ef1['push'](_0x319ef1['shift']());}}}(a141_0x5279,0x816e4));import{deleteAppRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a141_0x10cb(_0x16803c,_0x56780d){_0x16803c=_0x16803c-0xcd;const _0x5279d6=a141_0x5279();let _0x10cbd0=_0x5279d6[_0x16803c];return _0x10cbd0;}import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a141_0x5279(){const _0x2e5943=['/smartapi/permit/role/delete','39881LRCffG','1241544srrOxa','Deleted\x20role\x20','406538kTWAUK','1026738LstcCG','3uhAINH','appCode','260WGXNSB','2075652EBqpNW','roleName','7160ZxYPHq','POST','userCount','Role\x20still\x20has\x20','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','1137210ZQwLXq','delete','7ekFBMv','num','1008hHOIiF'];a141_0x5279=function(){return _0x2e5943;};return a141_0x5279();}const DELETE_PATH=a141_0x457426(0xd2);export const roleDelete={'service':'role','command':a141_0x457426(0xce),'description':'Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','risk':'high-risk-write','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x4edf96){const _0x22a921=a141_0x457426,_0x294de=_0x4edf96[_0x22a921(0xd0)]('id'),_0x2e8c60=await getRoleById(_0x4edf96[_0x22a921(0xd9)],_0x294de);return assertCustomRole(_0x2e8c60,_0x22a921(0xce)),asDryRunResult({'operation':'delete','selector':{'appCode':_0x4edf96[_0x22a921(0xd9)],'roleId':_0x294de,'roleName':_0x2e8c60['roleName']},'before':projectRole(_0x2e8c60),'after':null,'dryRun':!![],'backend':{'method':_0x22a921(0xde),'path':DELETE_PATH},'warnings':_0x2e8c60[_0x22a921(0xdf)]>0x0?[_0x22a921(0xe0)+_0x2e8c60[_0x22a921(0xdf)]+_0x22a921(0xe1)]:[]},{'method':'POST','url':DELETE_PATH});},async 'execute'(_0x1ab792){const _0x4aa418=a141_0x457426,_0x464fc5=_0x1ab792[_0x4aa418(0xd0)]('id'),_0x5aec35=await getRoleById(_0x1ab792['appCode'],_0x464fc5);return assertCustomRole(_0x5aec35,_0x4aa418(0xce)),await deleteAppRole(_0x464fc5),{'ok':!![],'data':{'operation':_0x4aa418(0xce),'selector':{'appCode':_0x1ab792[_0x4aa418(0xd9)],'roleId':_0x464fc5,'roleName':_0x5aec35['roleName']},'before':projectRole(_0x5aec35),'after':null,'dryRun':![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':[]},'message':_0x4aa418(0xd5)+_0x5aec35[_0x4aa418(0xdc)]+'\x20(id='+_0x464fc5+')'};}};