@lovrabet/rabetbase-cli 2.3.5 → 2.3.6

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 (239) 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/validate.js +1 -1
  50. package/lib/commands/config/get.js +1 -1
  51. package/lib/commands/config/index.js +1 -1
  52. package/lib/commands/config/list.js +1 -1
  53. package/lib/commands/config/set.js +1 -1
  54. package/lib/commands/config/shared.js +1 -1
  55. package/lib/commands/data/filter.js +1 -1
  56. package/lib/commands/data/getOne.js +1 -1
  57. package/lib/commands/data/index.js +1 -1
  58. package/lib/commands/data/shared.js +1 -1
  59. package/lib/commands/dataset/business-group-update.js +1 -1
  60. package/lib/commands/dataset/capability.js +1 -1
  61. package/lib/commands/dataset/delete.js +1 -1
  62. package/lib/commands/dataset/detail.js +1 -1
  63. package/lib/commands/dataset/extend-update.js +1 -1
  64. package/lib/commands/dataset/field-update.js +1 -1
  65. package/lib/commands/dataset/generate.js +1 -1
  66. package/lib/commands/dataset/index.js +1 -1
  67. package/lib/commands/dataset/list.js +1 -1
  68. package/lib/commands/dataset/operations.js +1 -1
  69. package/lib/commands/dataset/relation-audit.js +1 -1
  70. package/lib/commands/dataset/relation-create.js +1 -1
  71. package/lib/commands/dataset/relation-delete.js +1 -1
  72. package/lib/commands/dataset/relation-shared.js +1 -1
  73. package/lib/commands/dataset/relation-update.js +1 -1
  74. package/lib/commands/dataset/relations.js +1 -1
  75. package/lib/commands/dataset/rename.js +1 -1
  76. package/lib/commands/dataset/restore.js +1 -1
  77. package/lib/commands/db/analyze-cancel.js +1 -1
  78. package/lib/commands/db/analyze-start.js +1 -1
  79. package/lib/commands/db/analyze-status.js +1 -1
  80. package/lib/commands/db/create.js +1 -1
  81. package/lib/commands/db/delete.js +1 -1
  82. package/lib/commands/db/detail.js +1 -1
  83. package/lib/commands/db/diff.js +1 -1
  84. package/lib/commands/db/index.js +1 -1
  85. package/lib/commands/db/list.js +1 -1
  86. package/lib/commands/db/shared.js +1 -1
  87. package/lib/commands/db/tables.js +1 -1
  88. package/lib/commands/db/test.js +1 -1
  89. package/lib/commands/db/update.js +1 -1
  90. package/lib/commands/doctor.js +1 -1
  91. package/lib/commands/init/index.js +1 -1
  92. package/lib/commands/issue/index.js +1 -1
  93. package/lib/commands/issue/nudge.js +1 -1
  94. package/lib/commands/issue/report.js +1 -1
  95. package/lib/commands/issue/shared.js +1 -1
  96. package/lib/commands/logs/index.js +1 -1
  97. package/lib/commands/menu/index.js +1 -1
  98. package/lib/commands/menu/list.js +1 -1
  99. package/lib/commands/menu/shared/compare-table.js +1 -1
  100. package/lib/commands/menu/shared/index.js +1 -1
  101. package/lib/commands/menu/shared/inquirer.js +1 -1
  102. package/lib/commands/menu/shared/local-pages.js +1 -1
  103. package/lib/commands/menu/shared/logic.js +1 -1
  104. package/lib/commands/menu/shared/service.js +1 -1
  105. package/lib/commands/menu/shared/sync-core.js +1 -1
  106. package/lib/commands/menu/shared/update-core.js +1 -1
  107. package/lib/commands/menu/shared/valid-url.js +1 -1
  108. package/lib/commands/menu/sync.js +1 -1
  109. package/lib/commands/menu/update.js +1 -1
  110. package/lib/commands/page/generate-start.js +1 -1
  111. package/lib/commands/page/generate-status.js +1 -1
  112. package/lib/commands/page/index.js +1 -1
  113. package/lib/commands/page/pull.js +1 -1
  114. package/lib/commands/page/push.js +1 -1
  115. package/lib/commands/page/relation-audit.js +1 -1
  116. package/lib/commands/page/shared.js +1 -1
  117. package/lib/commands/page/standard-page-status.js +1 -1
  118. package/lib/commands/page/sync.js +1 -1
  119. package/lib/commands/permit/index.js +1 -1
  120. package/lib/commands/permit/page-get.js +1 -1
  121. package/lib/commands/permit/page-set.js +1 -1
  122. package/lib/commands/permit/role-apis-set.js +1 -1
  123. package/lib/commands/permit/role-menus-set.js +1 -1
  124. package/lib/commands/permit/role-menus.js +1 -1
  125. package/lib/commands/permit/shared.js +1 -1
  126. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  127. package/lib/commands/project/create/format-elapsed.js +1 -1
  128. package/lib/commands/project/create/main.js +1 -1
  129. package/lib/commands/project/create/non-interactive.js +1 -1
  130. package/lib/commands/project/create/project-template-path.js +1 -1
  131. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  132. package/lib/commands/project/create/use-format-code.js +1 -1
  133. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  134. package/lib/commands/project/index.js +1 -1
  135. package/lib/commands/project/init.js +1 -1
  136. package/lib/commands/project/upgrade.js +1 -1
  137. package/lib/commands/registry.js +1 -1
  138. package/lib/commands/role/create.js +1 -1
  139. package/lib/commands/role/delete.js +1 -1
  140. package/lib/commands/role/detail.js +1 -1
  141. package/lib/commands/role/index.js +1 -1
  142. package/lib/commands/role/list.js +1 -1
  143. package/lib/commands/role/shared.js +1 -1
  144. package/lib/commands/role/update.js +1 -1
  145. package/lib/commands/role/user-add.js +1 -1
  146. package/lib/commands/role/user-remove.js +1 -1
  147. package/lib/commands/role/user-resolve.js +1 -1
  148. package/lib/commands/run/index.js +1 -1
  149. package/lib/commands/schema.js +1 -1
  150. package/lib/commands/sql/create.js +1 -1
  151. package/lib/commands/sql/delete.js +1 -1
  152. package/lib/commands/sql/detail.js +1 -1
  153. package/lib/commands/sql/exec.js +1 -1
  154. package/lib/commands/sql/index.js +1 -1
  155. package/lib/commands/sql/list.js +1 -1
  156. package/lib/commands/sql/pull.js +1 -1
  157. package/lib/commands/sql/push.js +1 -1
  158. package/lib/commands/sql/save.js +1 -1
  159. package/lib/commands/sql/shared.js +1 -1
  160. package/lib/commands/sql/status.js +1 -1
  161. package/lib/commands/sql/validate.js +1 -1
  162. package/lib/commands/workspace/add.js +1 -1
  163. package/lib/commands/workspace/index.js +1 -1
  164. package/lib/commands/workspace/remove.js +1 -1
  165. package/lib/config/schema.js +1 -1
  166. package/lib/constant/cdn.js +1 -1
  167. package/lib/constant/cli.js +1 -1
  168. package/lib/constant/defaults.js +1 -1
  169. package/lib/constant/domain.js +1 -1
  170. package/lib/constant/env.js +1 -1
  171. package/lib/constant/output.js +1 -1
  172. package/lib/constant/paths.js +1 -1
  173. package/lib/constant/risk.js +1 -1
  174. package/lib/context/app-resolver.js +1 -1
  175. package/lib/context/auth-resolver.js +1 -1
  176. package/lib/context/config-loader.js +1 -1
  177. package/lib/context.js +1 -1
  178. package/lib/core/alias-resolver.js +1 -1
  179. package/lib/core/api-client.js +1 -1
  180. package/lib/core/bff/config.js +1 -1
  181. package/lib/core/bff/file-system.js +1 -1
  182. package/lib/core/bff/hash.js +1 -1
  183. package/lib/core/bff/lock.js +1 -1
  184. package/lib/core/bff/utils.js +1 -1
  185. package/lib/core/db-resolver.js +1 -1
  186. package/lib/core/page/file-system.js +1 -1
  187. package/lib/core/page/hash.js +1 -1
  188. package/lib/core/page/lock.js +1 -1
  189. package/lib/core/sql-sync/config.js +1 -1
  190. package/lib/core/sql-sync/file-system.js +1 -1
  191. package/lib/core/sql-sync/hash.js +1 -1
  192. package/lib/core/sql-sync/lock.js +1 -1
  193. package/lib/core/sql-sync/utils.js +1 -1
  194. package/lib/core/sql-validator.js +1 -1
  195. package/lib/errors.js +1 -1
  196. package/lib/framework/build-all-flags.js +1 -1
  197. package/lib/framework/flags.js +1 -1
  198. package/lib/framework/help.js +1 -1
  199. package/lib/framework/index.js +1 -1
  200. package/lib/framework/output.js +1 -1
  201. package/lib/framework/response.js +1 -1
  202. package/lib/framework/runner-alias.js +1 -1
  203. package/lib/framework/runner.js +1 -1
  204. package/lib/framework/schema-export.js +1 -1
  205. package/lib/framework/types.js +1 -1
  206. package/lib/generated/build-info.js +1 -1
  207. package/lib/help.js +1 -1
  208. package/lib/skills/main.js +1 -1
  209. package/lib/skills/npx-skills-add.js +1 -1
  210. package/lib/telemetry/cli-command-trace.js +1 -1
  211. package/lib/telemetry/cli-help-trace.js +1 -1
  212. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  213. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  214. package/lib/telemetry/send-cli-trace-log.js +1 -1
  215. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  216. package/lib/utils/ai_config.js +1 -1
  217. package/lib/utils/apply-jq-filter.js +1 -1
  218. package/lib/utils/cdn-config.js +1 -1
  219. package/lib/utils/check-sdk-version.js +1 -1
  220. package/lib/utils/cli-version-check.js +1 -1
  221. package/lib/utils/cli-version-policy.js +1 -1
  222. package/lib/utils/config.js +1 -1
  223. package/lib/utils/copy-directory.js +1 -1
  224. package/lib/utils/entity-with-id.js +1 -1
  225. package/lib/utils/file-utils.js +1 -1
  226. package/lib/utils/guides-cdn.js +1 -1
  227. package/lib/utils/http-client.js +1 -1
  228. package/lib/utils/is-non-interactive.js +1 -1
  229. package/lib/utils/logger.js +1 -1
  230. package/lib/utils/params.js +1 -1
  231. package/lib/utils/platform.js +1 -1
  232. package/lib/utils/rules-cdn.js +1 -1
  233. package/lib/utils/sleep.js +1 -1
  234. package/lib/utils/template-replacer.js +1 -1
  235. package/lib/utils/update-notice.js +1 -1
  236. package/lib/utils/version.js +1 -1
  237. package/lib/utils/with-active-cookie.js +1 -1
  238. package/lib/utils/write-cli-side-channel.js +1 -1
  239. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x536165,_0x4616f5){const _0x8f50f2=a128_0x4d40,_0x45dda6=_0x536165();while(!![]){try{const _0x39305e=-parseInt(_0x8f50f2(0x9a))/0x1*(-parseInt(_0x8f50f2(0x99))/0x2)+-parseInt(_0x8f50f2(0xb5))/0x3*(-parseInt(_0x8f50f2(0x89))/0x4)+-parseInt(_0x8f50f2(0x90))/0x5*(parseInt(_0x8f50f2(0xab))/0x6)+-parseInt(_0x8f50f2(0x9e))/0x7*(-parseInt(_0x8f50f2(0x8c))/0x8)+-parseInt(_0x8f50f2(0xd0))/0x9*(parseInt(_0x8f50f2(0x7b))/0xa)+-parseInt(_0x8f50f2(0x87))/0xb+parseInt(_0x8f50f2(0xca))/0xc;if(_0x39305e===_0x4616f5)break;else _0x45dda6['push'](_0x45dda6['shift']());}catch(_0xcb365d){_0x45dda6['push'](_0x45dda6['shift']());}}}(a128_0xa572,0x29a85));import a128_0x1dcb75 from'path';import a128_0x5e09dc from'fs';import a128_0x5049fa from'chalk';import a128_0x2c6340 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';function a128_0x4d40(_0x252713,_0x4c0bf8){_0x252713=_0x252713-0x6d;const _0xa5725f=a128_0xa572();let _0x4d4056=_0xa5725f[_0x252713];return _0x4d4056;}import{readConfig}from'../../../utils/config.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';function a128_0xa572(){const _0x558de9=['stableVersion','length','233164rhPSNb','1JZYpml','resolve','trim','W_OK','119rbZKuA','...','API\x20配置拉取异常','info','belowMinimum','repeat','minimumVersion','\x20model(s)','Project\x20name:\x20','API\x20configuration\x20pulled:\x20','package.json','warn','create','960seBOOC','bold','keys','setLogPath','项目创建失败:\x20','production','*\x20Pulling\x20API\x20configuration...','\x20dataset(s),\x20generated\x20','\x20\x202.\x20Pull\x20API\x20configuration:\x20','success','715311fkladx','log','\x20\x201.\x20Start\x20project:\x20','gray','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','更新\x20package.json\x20失败','√\x20package.json\x20updated:\x20name=','test','配置应用AppCode:\x20','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','version','stringify','rmSync','CLI\x20版本检查','更新\x20package.json\x20name','\x20|\x20AppCode:\x20','开始创建项目:\x20','existsSync','stop','\x20&&\x20','Install\x20dependencies','1042692KHhXwt','readFileSync','needsUpgrade','modelCount','parse','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','38322eKsnkM','√\x20Pulled\x20','项目创建完成:\x20','\x20|\x20Default:\x20','writeFileSync','\x20api\x20pull','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','utf8','join','Project\x20name\x20cannot\x20be\x20empty','projectName','\x20config\x20set\x20appcode\x20<app-code>\x27','error','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','currentVersion','800PMTVAM','chdir','🚀\x20Next\x20Steps:','green','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','accessSync','\x20Generated\x20by\x20rabetbase\x20cli\x20','\x20√\x20','√\x20Configuration\x20file\x20created,\x20Apps:\x20','Copy\x20project\x20files','defaultApp','\x20already\x20exists','104665qrUJhU','appCode','4SKNVbh','env','cwd','105936rgUisF','message','cookie','\x20run\x20start','4570nPNzhE','Format\x20code','projectCode','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','description','1.0.0','cyan'];a128_0xa572=function(){return _0x558de9;};return a128_0xa572();}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(_0x545e3e){const _0x14e64a=a128_0x4d40,_0x136c50=await checkCliVersion();(_0x136c50[_0x14e64a(0xcc)]||_0x136c50[_0x14e64a(0xa2)])&&(printCliUpgradeWarning(_0x136c50),assertCliVersionSupported(_0x136c50),logger[_0x14e64a(0xa1)]('create',_0x14e64a(0xc2),{'currentVersion':_0x136c50[_0x14e64a(0x7a)],'stableVersion':_0x136c50[_0x14e64a(0x97)],'minimumVersion':_0x136c50[_0x14e64a(0xa4)],'needsUpgrade':_0x136c50['needsUpgrade'],'belowMinimum':_0x136c50['belowMinimum']}));if(_0x545e3e['projectCode']&&_0x545e3e['appCode'])await runCreate({'projectName':_0x545e3e['projectCode'],'appCode':_0x545e3e[_0x14e64a(0x88)],'env':_0x545e3e['env']},_0x545e3e);else{if(_0x545e3e['projectCode']){const _0x48b6d2=await selectSingleAppcode(_0x545e3e[_0x14e64a(0x8e)]);await runCreate({'projectName':_0x545e3e[_0x14e64a(0x92)],'appCode':_0x48b6d2||undefined,'env':_0x545e3e['env']},_0x545e3e);}else await guidedCreateProject(_0x48917c=>runCreate(_0x48917c,_0x545e3e),_0x545e3e[_0x14e64a(0x8a)],_0x545e3e[_0x14e64a(0x8e)]);}}async function runCreate(_0x2e4fb7,_0x48d8fe){const _0xda27be=a128_0x4d40;if(!_0x2e4fb7['projectName']||_0x2e4fb7[_0xda27be(0x76)][_0xda27be(0x9c)]()==='')throw new Error(_0xda27be(0x75));const _0x25c394=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x25c394[_0xda27be(0xbc)](_0x2e4fb7[_0xda27be(0x76)]))throw new Error(_0xda27be(0xb9));if(_0x2e4fb7['projectName'][_0xda27be(0x98)]>0x64)throw new Error(_0xda27be(0xbe));const _0x2d9ea4=a128_0x1dcb75['resolve'](process[_0xda27be(0x8b)](),_0x2e4fb7[_0xda27be(0x76)]);if(a128_0x5e09dc[_0xda27be(0xc6)](_0x2d9ea4))throw new Error('Project\x20directory\x20'+_0x2e4fb7[_0xda27be(0x76)]+_0xda27be(0x86));try{a128_0x5e09dc[_0xda27be(0x80)](a128_0x1dcb75['dirname'](_0x2d9ea4),a128_0x5e09dc['constants'][_0xda27be(0x9d)]);}catch{throw new Error(_0xda27be(0x79));}logger[_0xda27be(0xae)](_0x2d9ea4),logger['info'](_0xda27be(0xaa),_0xda27be(0xc5)+_0x2e4fb7[_0xda27be(0x76)],{'projectDir':_0x2d9ea4,'appCode':_0x2e4fb7[_0xda27be(0x88)]}),console[_0xda27be(0xb6)](),console[_0xda27be(0xb6)](a128_0x5049fa[_0xda27be(0x7e)](_0xda27be(0x82))+_0xda27be(0xa6)+a128_0x5049fa[_0xda27be(0x7e)](_0x2e4fb7['projectName'])+(_0x2e4fb7[_0xda27be(0x88)]?_0xda27be(0xc4)+a128_0x5049fa[_0xda27be(0x96)](_0x2e4fb7[_0xda27be(0x88)]):''));try{await runTask(_0xda27be(0x84),()=>copyProjectTemplate(_0x2e4fb7[_0xda27be(0x76)])),await updatePackageJsonName(_0x2e4fb7[_0xda27be(0x76)]),await runTask(_0xda27be(0xc9),()=>installDependencies(_0x2e4fb7[_0xda27be(0x76)])),await runTask(_0xda27be(0x91),()=>formatProjectCode(_0x2e4fb7[_0xda27be(0x76)])),await configureAppCode(_0x2e4fb7[_0xda27be(0x76)],_0x2e4fb7[_0xda27be(0x88)]||'',_0x2e4fb7['env']);let _0x16ed60=![];if(_0x2e4fb7['appCode']){console[_0xda27be(0xb6)](_0xda27be(0xb1));const _0x5639bd=process['cwd']();try{process[_0xda27be(0x7c)](_0x2d9ea4);const _0x59456b=_0x2e4fb7[_0xda27be(0x8a)]||_0xda27be(0xb0);initEnv(_0x59456b);const {configArray:_0x491fe5}=await fetchModelList(_0x2e4fb7[_0xda27be(0x88)],_0x48d8fe[_0xda27be(0x8e)]||''),_0x92220=DEFAULT_API_DIR,_0x4ee376=await generateApiFile(_0x491fe5,'',_0x2e4fb7[_0xda27be(0x88)],!![],_0x59456b,_0x92220);console[_0xda27be(0xb6)](_0xda27be(0x6d)+_0x491fe5[_0xda27be(0x98)]+_0xda27be(0xb2)+_0x4ee376[_0xda27be(0xcd)]+_0xda27be(0xa5)),logger['info']('create',_0xda27be(0xa7)+_0x2e4fb7[_0xda27be(0x88)]);}catch(_0x6ec517){_0x16ed60=!![],console[_0xda27be(0xb6)](_0xda27be(0x93)),logger[_0xda27be(0xa9)](_0xda27be(0xaa),_0xda27be(0xa0),{'error':_0x6ec517 instanceof Error?_0x6ec517[_0xda27be(0x8d)]:String(_0x6ec517)});}finally{process['chdir'](_0x5639bd);}}logger[_0xda27be(0xb4)](_0xda27be(0xaa),_0xda27be(0x6e)+_0x2e4fb7[_0xda27be(0x76)]),console[_0xda27be(0xb6)](),console[_0xda27be(0xb6)](a128_0x5049fa['green']('─'[_0xda27be(0xa3)](0x3c))),console[_0xda27be(0xb6)](a128_0x5049fa[_0xda27be(0x96)][_0xda27be(0xac)](_0xda27be(0x7d))),console[_0xda27be(0xb6)](),console[_0xda27be(0xb6)](_0xda27be(0xb7)+a128_0x5049fa['cyan']['bold']('cd\x20'+_0x2e4fb7['projectName']+_0xda27be(0xc8)+CLI_BIN_NAME+_0xda27be(0x8f))),_0x16ed60&&console[_0xda27be(0xb6)](_0xda27be(0xb3)+a128_0x5049fa[_0xda27be(0x96)][_0xda27be(0xac)](CLI_BIN_NAME+_0xda27be(0x71))),console[_0xda27be(0xb6)](a128_0x5049fa[_0xda27be(0x7e)]('─'[_0xda27be(0xa3)](0x3c)));}catch(_0x1ad4b5){logger['error'](_0xda27be(0xaa),_0xda27be(0xaf)+_0x2e4fb7[_0xda27be(0x76)],{'error':_0x1ad4b5 instanceof Error?_0x1ad4b5['message']:String(_0x1ad4b5)});try{a128_0x5e09dc[_0xda27be(0xc6)](_0x2d9ea4)&&(console[_0xda27be(0xb6)](_0xda27be(0xcf)+_0x2d9ea4),a128_0x5e09dc[_0xda27be(0xc1)](_0x2d9ea4,{'recursive':!![],'force':!![]}));}catch{logger[_0xda27be(0xa9)]('create','清理项目目录失败:\x20'+_0x2d9ea4);}throw _0x1ad4b5;}}async function runTask(_0x3221b5,_0x4eb694){const _0x4e819d=a128_0x4d40,_0x42e7b5=a128_0x2c6340(_0x3221b5+_0x4e819d(0x9f))['start']();try{const _0x4a164d=await _0x4eb694();_0x42e7b5[_0x4e819d(0xc7)](),console['log'](''+a128_0x5049fa[_0x4e819d(0x7e)](_0x4e819d(0x82))+_0x3221b5+'\x20'+a128_0x5049fa[_0x4e819d(0xb8)]('['+_0x4a164d+']'));}catch(_0x339759){_0x42e7b5['fail'](_0x3221b5);throw _0x339759;}}async function updatePackageJsonName(_0x3bc693){const _0x570311=a128_0x4d40,_0x4183f8=a128_0x1dcb75[_0x570311(0x9b)](process[_0x570311(0x8b)](),_0x3bc693),_0x547fe2=a128_0x1dcb75['join'](_0x4183f8,_0x570311(0xa8));try{console[_0x570311(0xb6)]('*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields');const _0x421d15=getRabetbaseCliPackageRoot(),_0x5ed5a0=a128_0x1dcb75['join'](_0x421d15,_0x570311(0xa8));let _0x245422=_0x570311(0x95);try{const _0x1e659d=JSON[_0x570311(0xce)](a128_0x5e09dc[_0x570311(0xcb)](_0x5ed5a0,_0x570311(0x73)));_0x245422=_0x1e659d[_0x570311(0xbf)]||_0x570311(0x95);}catch{}const _0x1a653b=a128_0x5e09dc[_0x570311(0xcb)](_0x547fe2,_0x570311(0x73)),_0x496b7b=JSON[_0x570311(0xce)](_0x1a653b);_0x496b7b['name']=_0x3bc693,_0x496b7b[_0x570311(0x94)]=_0x3bc693+_0x570311(0x81)+_0x245422,a128_0x5e09dc[_0x570311(0x70)](_0x547fe2,JSON[_0x570311(0xc0)](_0x496b7b,null,0x2)+'\x0a',_0x570311(0x73)),console[_0x570311(0xb6)](_0x570311(0xbb)+_0x3bc693),logger['info'](_0x570311(0xaa),_0x570311(0xc3));}catch(_0xf84fdc){logger[_0x570311(0x78)]('create',_0x570311(0xba));throw _0xf84fdc;}}async function configureAppCode(_0x3dc4fe,_0x9f3049,_0x1a2c78){const _0x3dff1b=a128_0x4d40,_0xb3a303=a128_0x1dcb75['resolve'](process[_0x3dff1b(0x8b)](),_0x3dc4fe),_0x48792f=a128_0x1dcb75[_0x3dff1b(0x74)](_0xb3a303,NEW_CONFIG_NAME);try{_0x9f3049?console[_0x3dff1b(0xb6)]('*\x20Configuring\x20AppCode\x20for\x20project\x20'+_0x3dc4fe+':\x20'+_0x9f3049):console[_0x3dff1b(0xb6)](_0x3dff1b(0x72)+_0x3dc4fe);const _0x3c3a42=getRabetbaseCliPackageRoot(),_0x3aebe4=a128_0x1dcb75[_0x3dff1b(0x74)](_0x3c3a42,'package.json');let _0x2ef790=_0x3dff1b(0x95);try{const _0x586b11=JSON['parse'](a128_0x5e09dc[_0x3dff1b(0xcb)](_0x3aebe4,_0x3dff1b(0x73)));_0x2ef790=_0x586b11['version']||_0x3dff1b(0x95);}catch{}const _0x30bfaa=readConfig(),_0x5abaa0=typeof _0x30bfaa[_0x3dff1b(0x8a)]==='string'?_0x30bfaa[_0x3dff1b(0x8a)]:undefined,_0x5b6280={};for(const _0x1846f9 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x30bfaa[_0x1846f9]!=null)_0x5b6280[_0x1846f9]=_0x30bfaa[_0x1846f9];}const _0x515ef3=buildCanonicalProjectConfig(_0x5b6280,{'appCodes':_0x9f3049?[_0x9f3049]:[],'env':_0x1a2c78||_0x5abaa0||_0x3dff1b(0xb0),'metadata':{'createdAt':new Date()['toLocaleString'](),'version':_0x2ef790}});writeConfigFile(_0x48792f,_0x515ef3),_0x9f3049?console['log'](_0x3dff1b(0x83)+Object[_0x3dff1b(0xad)](_0x515ef3['apps']||{})['join'](',\x20')+_0x3dff1b(0x6f)+_0x515ef3[_0x3dff1b(0x85)]):console[_0x3dff1b(0xb6)](_0x3dff1b(0x7f)+CLI_BIN_NAME+_0x3dff1b(0x77)),logger[_0x3dff1b(0xa1)]('create',_0x3dff1b(0xbd)+_0x9f3049);}catch(_0x4e1041){logger[_0x3dff1b(0x78)]('create','配置应用AppCode失败');}}
1
+ (function(_0x2f8cb3,_0x2d17f0){const _0xa142de=a128_0x382f,_0x44ef4c=_0x2f8cb3();while(!![]){try{const _0xc675f=parseInt(_0xa142de(0x226))/0x1*(parseInt(_0xa142de(0x1e1))/0x2)+parseInt(_0xa142de(0x1f4))/0x3+parseInt(_0xa142de(0x214))/0x4*(-parseInt(_0xa142de(0x200))/0x5)+-parseInt(_0xa142de(0x212))/0x6*(parseInt(_0xa142de(0x1f8))/0x7)+parseInt(_0xa142de(0x1d8))/0x8*(parseInt(_0xa142de(0x21b))/0x9)+parseInt(_0xa142de(0x1fd))/0xa*(parseInt(_0xa142de(0x20d))/0xb)+parseInt(_0xa142de(0x208))/0xc*(-parseInt(_0xa142de(0x219))/0xd);if(_0xc675f===_0x2d17f0)break;else _0x44ef4c['push'](_0x44ef4c['shift']());}catch(_0xd11d8a){_0x44ef4c['push'](_0x44ef4c['shift']());}}}(a128_0x335f,0x2ab34));import a128_0x168414 from'path';import a128_0x15cac6 from'fs';import a128_0x1c108a from'chalk';import a128_0x17b9dd 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 a128_0x382f(_0x4f08a0,_0x44f5a5){_0x4f08a0=_0x4f08a0-0x1d3;const _0x335f14=a128_0x335f();let _0x382f93=_0x335f14[_0x4f08a0];return _0x382f93;}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';function a128_0x335f(){const _0x4968a1=['1.0.0','name','green','utf8','toLocaleString','547Rmdzhg','更新\x20package.json\x20失败','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','更新\x20package.json\x20name','\x20\x202.\x20Pull\x20API\x20configuration:\x20','trim','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','existsSync','cookie','accessSync','projectCode','\x20config\x20set\x20appcode\x20<app-code>\x27','2305928iUaxhZ','配置应用AppCode失败','projectName','test','fail','\x20|\x20AppCode:\x20','readFileSync','Project\x20directory\x20','dirname','68FZXJST','gray','log','needsUpgrade','appCode','setLogPath','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','√\x20package.json\x20updated:\x20name=','package.json','API\x20configuration\x20pulled:\x20','version','🚀\x20Next\x20Steps:','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','\x20Generated\x20by\x20rabetbase\x20cli\x20','\x20run\x20start','API\x20配置拉取异常','join','belowMinimum','rmSync','912432kWthom','\x20dataset(s),\x20generated\x20','\x20√\x20','chdir','584878xtftQt','length','keys','production','\x20\x201.\x20Start\x20project:\x20','4470oXulzP','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','清理项目目录失败:\x20','55GyjVwW','\x20|\x20Default:\x20','stableVersion','bold','√\x20Configuration\x20file\x20created,\x20Apps:\x20','message','stringify','\x20&&\x20','12YRRwEx','cwd','modelCount','currentVersion','error','2959jdKAPX','Format\x20code','defaultApp','info','项目创建完成:\x20','24aDgsvx','cyan','58028hgjVzr','repeat','resolve','W_OK','env','812929GXmZRx','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','9vVDjpP','\x20model(s)','Project\x20name\x20cannot\x20be\x20empty','parse','create','\x20api\x20pull'];a128_0x335f=function(){return _0x4968a1;};return a128_0x335f();}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(_0x368f90){const _0x3164d9=a128_0x382f,_0x1dd3d2=await checkCliVersion();(_0x1dd3d2['needsUpgrade']||_0x1dd3d2['belowMinimum'])&&(printCliUpgradeWarning(_0x1dd3d2),assertCliVersionSupported(_0x1dd3d2),logger[_0x3164d9(0x210)](_0x3164d9(0x21f),'CLI\x20版本检查',{'currentVersion':_0x1dd3d2[_0x3164d9(0x20b)],'stableVersion':_0x1dd3d2[_0x3164d9(0x202)],'minimumVersion':_0x1dd3d2['minimumVersion'],'needsUpgrade':_0x1dd3d2[_0x3164d9(0x1e4)],'belowMinimum':_0x1dd3d2[_0x3164d9(0x1f2)]}));if(_0x368f90[_0x3164d9(0x1d6)]&&_0x368f90[_0x3164d9(0x1e5)])await runCreate({'projectName':_0x368f90[_0x3164d9(0x1d6)],'appCode':_0x368f90[_0x3164d9(0x1e5)],'env':_0x368f90[_0x3164d9(0x218)]},_0x368f90);else{if(_0x368f90[_0x3164d9(0x1d6)]){const _0x4019ee=await selectSingleAppcode(_0x368f90[_0x3164d9(0x1d4)]);await runCreate({'projectName':_0x368f90[_0x3164d9(0x1d6)],'appCode':_0x4019ee||undefined,'env':_0x368f90[_0x3164d9(0x218)]},_0x368f90);}else await guidedCreateProject(_0x27a2f2=>runCreate(_0x27a2f2,_0x368f90),_0x368f90[_0x3164d9(0x218)],_0x368f90[_0x3164d9(0x1d4)]);}}async function runCreate(_0x5a0a3b,_0x19422d){const _0x23c006=a128_0x382f;if(!_0x5a0a3b['projectName']||_0x5a0a3b['projectName'][_0x23c006(0x22b)]()==='')throw new Error(_0x23c006(0x21d));const _0x3eff13=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x3eff13[_0x23c006(0x1db)](_0x5a0a3b['projectName']))throw new Error(_0x23c006(0x1e7));if(_0x5a0a3b['projectName'][_0x23c006(0x1f9)]>0x64)throw new Error(_0x23c006(0x1ed));const _0x182ec9=a128_0x168414['resolve'](process[_0x23c006(0x209)](),_0x5a0a3b['projectName']);if(a128_0x15cac6[_0x23c006(0x1d3)](_0x182ec9))throw new Error(_0x23c006(0x1df)+_0x5a0a3b[_0x23c006(0x1da)]+'\x20already\x20exists');try{a128_0x15cac6[_0x23c006(0x1d5)](a128_0x168414[_0x23c006(0x1e0)](_0x182ec9),a128_0x15cac6['constants'][_0x23c006(0x217)]);}catch{throw new Error('Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions');}logger[_0x23c006(0x1e6)](_0x182ec9),logger[_0x23c006(0x210)]('create','开始创建项目:\x20'+_0x5a0a3b[_0x23c006(0x1da)],{'projectDir':_0x182ec9,'appCode':_0x5a0a3b[_0x23c006(0x1e5)]}),console['log'](),console[_0x23c006(0x1e3)](a128_0x1c108a[_0x23c006(0x223)](_0x23c006(0x1f6))+'Project\x20name:\x20'+a128_0x1c108a['green'](_0x5a0a3b[_0x23c006(0x1da)])+(_0x5a0a3b[_0x23c006(0x1e5)]?_0x23c006(0x1dd)+a128_0x1c108a[_0x23c006(0x213)](_0x5a0a3b[_0x23c006(0x1e5)]):''));try{await runTask('Copy\x20project\x20files',()=>copyProjectTemplate(_0x5a0a3b['projectName'])),await updatePackageJsonName(_0x5a0a3b['projectName']),await runTask('Install\x20dependencies',()=>installDependencies(_0x5a0a3b['projectName'])),await runTask(_0x23c006(0x20e),()=>formatProjectCode(_0x5a0a3b['projectName'])),await configureAppCode(_0x5a0a3b[_0x23c006(0x1da)],_0x5a0a3b[_0x23c006(0x1e5)]||'',_0x5a0a3b[_0x23c006(0x218)]);let _0x567646=![];if(_0x5a0a3b[_0x23c006(0x1e5)]){console['log']('*\x20Pulling\x20API\x20configuration...');const _0x32e30d=process[_0x23c006(0x209)]();try{process[_0x23c006(0x1f7)](_0x182ec9);const _0x53326c=_0x5a0a3b[_0x23c006(0x218)]||_0x23c006(0x1fb);initEnv(_0x53326c);const {configArray:_0x1a5e7b}=await fetchModelList(_0x5a0a3b[_0x23c006(0x1e5)],_0x19422d['cookie']||''),_0x2619f6=DEFAULT_API_DIR,_0x26711d=await generateApiFile(_0x1a5e7b,'',_0x5a0a3b['appCode'],!![],_0x53326c,_0x2619f6);console[_0x23c006(0x1e3)]('√\x20Pulled\x20'+_0x1a5e7b['length']+_0x23c006(0x1f5)+_0x26711d[_0x23c006(0x20a)]+_0x23c006(0x21c)),logger[_0x23c006(0x210)](_0x23c006(0x21f),_0x23c006(0x1ea)+_0x5a0a3b['appCode']);}catch(_0x57bdea){_0x567646=!![],console[_0x23c006(0x1e3)](_0x23c006(0x22c)),logger['warn']('create',_0x23c006(0x1f0),{'error':_0x57bdea instanceof Error?_0x57bdea[_0x23c006(0x205)]:String(_0x57bdea)});}finally{process['chdir'](_0x32e30d);}}logger['success'](_0x23c006(0x21f),_0x23c006(0x211)+_0x5a0a3b['projectName']),console[_0x23c006(0x1e3)](),console[_0x23c006(0x1e3)](a128_0x1c108a[_0x23c006(0x223)]('─'['repeat'](0x3c))),console['log'](a128_0x1c108a['cyan'][_0x23c006(0x203)](_0x23c006(0x1ec))),console[_0x23c006(0x1e3)](),console[_0x23c006(0x1e3)](_0x23c006(0x1fc)+a128_0x1c108a[_0x23c006(0x213)][_0x23c006(0x203)]('cd\x20'+_0x5a0a3b[_0x23c006(0x1da)]+_0x23c006(0x207)+CLI_BIN_NAME+_0x23c006(0x1ef))),_0x567646&&console[_0x23c006(0x1e3)](_0x23c006(0x22a)+a128_0x1c108a[_0x23c006(0x213)][_0x23c006(0x203)](CLI_BIN_NAME+_0x23c006(0x220))),console[_0x23c006(0x1e3)](a128_0x1c108a[_0x23c006(0x223)]('─'[_0x23c006(0x215)](0x3c)));}catch(_0x2336ec){logger[_0x23c006(0x20c)]('create','项目创建失败:\x20'+_0x5a0a3b[_0x23c006(0x1da)],{'error':_0x2336ec instanceof Error?_0x2336ec[_0x23c006(0x205)]:String(_0x2336ec)});try{a128_0x15cac6['existsSync'](_0x182ec9)&&(console[_0x23c006(0x1e3)](_0x23c006(0x1fe)+_0x182ec9),a128_0x15cac6[_0x23c006(0x1f3)](_0x182ec9,{'recursive':!![],'force':!![]}));}catch{logger['warn'](_0x23c006(0x21f),_0x23c006(0x1ff)+_0x182ec9);}throw _0x2336ec;}}async function runTask(_0x305eaf,_0x26a89e){const _0x3f8042=a128_0x382f,_0x5251cd=a128_0x17b9dd(_0x305eaf+'...')['start']();try{const _0x1e2354=await _0x26a89e();_0x5251cd['stop'](),console['log'](''+a128_0x1c108a[_0x3f8042(0x223)](_0x3f8042(0x1f6))+_0x305eaf+'\x20'+a128_0x1c108a[_0x3f8042(0x1e2)]('['+_0x1e2354+']'));}catch(_0x50c81a){_0x5251cd[_0x3f8042(0x1dc)](_0x305eaf);throw _0x50c81a;}}async function updatePackageJsonName(_0x32a451){const _0x21ab23=a128_0x382f,_0x3100f4=a128_0x168414[_0x21ab23(0x216)](process['cwd'](),_0x32a451),_0x5d5237=a128_0x168414[_0x21ab23(0x1f1)](_0x3100f4,_0x21ab23(0x1e9));try{console['log']('*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields');const _0x5710ca=getRabetbaseCliPackageRoot(),_0x1407bc=a128_0x168414['join'](_0x5710ca,'package.json');let _0x1914d5=_0x21ab23(0x221);try{const _0x50b957=JSON['parse'](a128_0x15cac6[_0x21ab23(0x1de)](_0x1407bc,_0x21ab23(0x224)));_0x1914d5=_0x50b957['version']||'1.0.0';}catch{}const _0x1d2d6c=a128_0x15cac6[_0x21ab23(0x1de)](_0x5d5237,_0x21ab23(0x224)),_0x2dbf4c=JSON[_0x21ab23(0x21e)](_0x1d2d6c);_0x2dbf4c[_0x21ab23(0x222)]=_0x32a451,_0x2dbf4c['description']=_0x32a451+_0x21ab23(0x1ee)+_0x1914d5,a128_0x15cac6['writeFileSync'](_0x5d5237,JSON[_0x21ab23(0x206)](_0x2dbf4c,null,0x2)+'\x0a',_0x21ab23(0x224)),console['log'](_0x21ab23(0x1e8)+_0x32a451),logger[_0x21ab23(0x210)]('create',_0x21ab23(0x229));}catch(_0x2e665f){logger[_0x21ab23(0x20c)](_0x21ab23(0x21f),_0x21ab23(0x227));throw _0x2e665f;}}async function configureAppCode(_0x1622ba,_0x5cae60,_0x24ea9b){const _0x360dca=a128_0x382f,_0x42ce3c=a128_0x168414[_0x360dca(0x216)](process[_0x360dca(0x209)](),_0x1622ba),_0x30218c=a128_0x168414[_0x360dca(0x1f1)](_0x42ce3c,NEW_CONFIG_NAME);try{_0x5cae60?console[_0x360dca(0x1e3)]('*\x20Configuring\x20AppCode\x20for\x20project\x20'+_0x1622ba+':\x20'+_0x5cae60):console[_0x360dca(0x1e3)](_0x360dca(0x21a)+_0x1622ba);const _0x32086f=getRabetbaseCliPackageRoot(),_0x1bb71b=a128_0x168414[_0x360dca(0x1f1)](_0x32086f,'package.json');let _0x1d4b3a=_0x360dca(0x221);try{const _0x37d08c=JSON['parse'](a128_0x15cac6[_0x360dca(0x1de)](_0x1bb71b,_0x360dca(0x224)));_0x1d4b3a=_0x37d08c[_0x360dca(0x1eb)]||'1.0.0';}catch{}const _0x11ec7f=readConfig(),_0x3d3cf5=typeof _0x11ec7f['env']==='string'?_0x11ec7f[_0x360dca(0x218)]:undefined,_0x5c9c98={};for(const _0x52567c of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x11ec7f[_0x52567c]!=null)_0x5c9c98[_0x52567c]=_0x11ec7f[_0x52567c];}const _0xbf3a25=buildCanonicalProjectConfig(_0x5c9c98,{'appCodes':_0x5cae60?[_0x5cae60]:[],'env':_0x24ea9b||_0x3d3cf5||_0x360dca(0x1fb),'metadata':{'createdAt':new Date()[_0x360dca(0x225)](),'version':_0x1d4b3a}});writeConfigFile(_0x30218c,_0xbf3a25),_0x5cae60?console[_0x360dca(0x1e3)](_0x360dca(0x204)+Object[_0x360dca(0x1fa)](_0xbf3a25['apps']||{})[_0x360dca(0x1f1)](',\x20')+_0x360dca(0x201)+_0xbf3a25[_0x360dca(0x20f)]):console[_0x360dca(0x1e3)](_0x360dca(0x228)+CLI_BIN_NAME+_0x360dca(0x1d7)),logger['info'](_0x360dca(0x21f),'配置应用AppCode:\x20'+_0x5cae60);}catch(_0x3aac6a){logger[_0x360dca(0x20c)]('create',_0x360dca(0x1d9));}}
@@ -1 +1 @@
1
- function a129_0x1483(){const _0xbd8b24=['*\x20Creating\x20project\x20','bun','43168hlzNro','needsUpgrade','parse','Project\x20name\x20contains\x20invalid\x20characters.','join','validation','1561932peUAoB','40431312QWuCbo','env','utf-8','\x0a\x20\x20cd\x20','test','description','bun\x20--version','constants','...','chdir','bun\x20run\x20format','cwd','Use\x20a\x20different\x20project\x20name.','451jTcDtP','\x20\x20Pulling\x20API\x20configuration...','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','trim','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','\x0a√\x20Project\x20','9JMGNqn','40548ArAaow','resolve','log','length','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','W_OK','dirname','\x20model(s)','1490zymGwp','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','belowMinimum','\x20created\x20successfully!','stringify','readFile','20200PUOCYb','\x20dataset(s),\x20generated\x20','name','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','1358EzayKi','594cFJKKh','modelCount','Project\x20name\x20cannot\x20be\x20empty.','39468hDntag','\x20\x20rabetbase\x20run\x20start\x0a','Check\x20directory\x20permissions.','production','ignore','277010xndBaD'];a129_0x1483=function(){return _0xbd8b24;};return a129_0x1483();}(function(_0x2ff849,_0x22ff22){const _0x349e93=a129_0xed7a,_0xd2646=_0x2ff849();while(!![]){try{const _0x1977b7=-parseInt(_0x349e93(0x1b4))/0x1+-parseInt(_0x349e93(0x1a6))/0x2*(-parseInt(_0x349e93(0x1c8))/0x3)+parseInt(_0x349e93(0x19e))/0x4*(-parseInt(_0x349e93(0x1d1))/0x5)+parseInt(_0x349e93(0x1c9))/0x6*(parseInt(_0x349e93(0x1a2))/0x7)+parseInt(_0x349e93(0x1ae))/0x8*(parseInt(_0x349e93(0x1a3))/0x9)+parseInt(_0x349e93(0x1ab))/0xa*(-parseInt(_0x349e93(0x1c2))/0xb)+parseInt(_0x349e93(0x1b5))/0xc;if(_0x1977b7===_0x22ff22)break;else _0xd2646['push'](_0xd2646['shift']());}catch(_0x291aa3){_0xd2646['push'](_0xd2646['shift']());}}}(a129_0x1483,0xda0a5));import a129_0x510bac from'path';import a129_0x172589 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_0xed7a(_0x246981,_0x1d029f){_0x246981=_0x246981-0x19b;const _0x148372=a129_0x1483();let _0xed7abc=_0x148372[_0x246981];return _0xed7abc;}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(_0x2855f0,_0x16967a,_0x573d7a,_0x5b33a3){const _0x4a5c03=a129_0xed7a,_0x4b45d4=await checkCliVersion();(_0x4b45d4[_0x4a5c03(0x1af)]||_0x4b45d4[_0x4a5c03(0x1d3)])&&(printCliUpgradeWarning(_0x4b45d4),assertCliVersionSupported(_0x4b45d4));if(!_0x2855f0||_0x2855f0[_0x4a5c03(0x1c5)]()==='')throw CliErrors[_0x4a5c03(0x1b3)](_0x4a5c03(0x1a5));const _0x1816b8=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x1816b8[_0x4a5c03(0x1b9)](_0x2855f0))throw CliErrors[_0x4a5c03(0x1b3)](_0x4a5c03(0x1b1),_0x4a5c03(0x1d2));if(_0x2855f0[_0x4a5c03(0x1cc)]>0x64)throw CliErrors[_0x4a5c03(0x1b3)](_0x4a5c03(0x1a1));const _0x414ca9=a129_0x510bac[_0x4a5c03(0x1ca)](process[_0x4a5c03(0x1c0)](),_0x2855f0);if(existsSync(_0x414ca9))throw CliErrors[_0x4a5c03(0x1b3)]('Project\x20directory\x20\x22'+_0x2855f0+'\x22\x20already\x20exists.',_0x4a5c03(0x1c1));try{const _0x1fa885=a129_0x510bac[_0x4a5c03(0x1cf)](_0x414ca9);await a129_0x172589['access'](_0x1fa885,a129_0x172589[_0x4a5c03(0x1bc)][_0x4a5c03(0x1ce)]);}catch{throw CliErrors[_0x4a5c03(0x1b3)]('Cannot\x20create\x20project\x20in\x20current\x20directory.',_0x4a5c03(0x1a8));}try{console[_0x4a5c03(0x1cb)](_0x4a5c03(0x1ac)+_0x2855f0+_0x4a5c03(0x1bd));const _0x5beb6a=getSubAppReactDemoTemplateDir();await copyDirectory(_0x5beb6a,_0x414ca9),console['log']('\x20\x20√\x20Project\x20template\x20created'),await updatePackageJsonName(_0x2855f0),console['log']('\x20\x20√\x20package.json\x20updated'),console[_0x4a5c03(0x1cb)]('\x20\x20Installing\x20dependencies...'),console[_0x4a5c03(0x1cb)](_0x4a5c03(0x1cd)),await formatCode(_0x414ca9),console[_0x4a5c03(0x1cb)]('\x20\x20√\x20Code\x20formatted'),await configureProject(_0x2855f0,_0x573d7a,_0x16967a),console['log']('\x20\x20√\x20Configuration\x20file\x20created'),_0x573d7a&&await pullApiConfig(_0x414ca9,_0x573d7a,_0x16967a,_0x5b33a3),console[_0x4a5c03(0x1cb)](_0x4a5c03(0x1c7)+_0x2855f0+_0x4a5c03(0x19b)),console['log'](_0x4a5c03(0x1b8)+_0x2855f0),console[_0x4a5c03(0x1cb)](_0x4a5c03(0x1a7));}catch(_0x511a37){try{existsSync(_0x414ca9)&&await a129_0x172589['rm'](_0x414ca9,{'recursive':!![],'force':!![]});}catch{}throw _0x511a37;}}async function updatePackageJsonName(_0x310899){const _0x165bea=a129_0xed7a,_0x565e24=a129_0x510bac[_0x165bea(0x1ca)](process['cwd'](),_0x310899),_0x21fc8c=a129_0x510bac[_0x165bea(0x1b2)](_0x565e24,'package.json'),_0x3e6fef=await a129_0x172589[_0x165bea(0x19d)](_0x21fc8c,_0x165bea(0x1b7)),_0x17c443=JSON[_0x165bea(0x1b0)](_0x3e6fef);_0x17c443[_0x165bea(0x1a0)]=_0x310899,_0x17c443[_0x165bea(0x1ba)]=_0x165bea(0x1c6),await a129_0x172589['writeFile'](_0x21fc8c,JSON[_0x165bea(0x19c)](_0x17c443,null,0x2)+'\x0a');}function detectPackageManager(){const _0x18ca38=a129_0xed7a;try{return execSync(_0x18ca38(0x1bb),{'stdio':_0x18ca38(0x1aa)}),_0x18ca38(0x1ad);}catch{return'npm';}}async function formatCode(_0x3b53d0){const _0x132101=a129_0xed7a;try{await execAsync(_0x132101(0x1bf),{'cwd':_0x3b53d0});}catch{}}async function configureProject(_0x5edd10,_0x898f4c,_0x3d7f56){const _0x19ff9c=a129_0xed7a,_0x413b77=a129_0x510bac[_0x19ff9c(0x1ca)](process[_0x19ff9c(0x1c0)](),_0x5edd10),_0x10b096=a129_0x510bac[_0x19ff9c(0x1b2)](_0x413b77,NEW_CONFIG_NAME),_0x28749e=readConfig(),_0xa0153a=typeof _0x28749e[_0x19ff9c(0x1b6)]==='string'?_0x28749e[_0x19ff9c(0x1b6)]:undefined,_0x234e6f={};for(const _0x92ec0c of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x28749e[_0x92ec0c]!=null)_0x234e6f[_0x92ec0c]=_0x28749e[_0x92ec0c];}const _0x177dca=buildCanonicalProjectConfig(_0x234e6f,{'appCodes':_0x898f4c?[_0x898f4c]:[],'env':_0x3d7f56||_0xa0153a||_0x19ff9c(0x1a9),'metadata':{'createdAt':new Date()['toLocaleString'](),'version':getCliVersion()}});writeConfigFile(_0x10b096,_0x177dca);}async function pullApiConfig(_0x3e0efc,_0x51e73e,_0x446c91,_0x7217f0){const _0x319639=a129_0xed7a,_0x5bba65=process[_0x319639(0x1c0)]();try{process[_0x319639(0x1be)](_0x3e0efc);const _0x49c6b8=_0x446c91||'production';initEnv(_0x49c6b8),console[_0x319639(0x1cb)](_0x319639(0x1c3));const {configArray:_0x18371f}=await fetchModelList(_0x51e73e,_0x7217f0||''),_0x59216b=await generateApiFile(_0x18371f,'',_0x51e73e,!![],_0x49c6b8,DEFAULT_API_DIR);console[_0x319639(0x1cb)]('\x20\x20√\x20Pulled\x20'+_0x18371f['length']+_0x319639(0x19f)+_0x59216b[_0x319639(0x1a4)]+_0x319639(0x1d0));}catch(_0x203cea){console[_0x319639(0x1cb)](_0x319639(0x1c4)+CLI_BIN_NAME+'\x20api\x20pull`\x20manually\x20later.');}finally{process[_0x319639(0x1be)](_0x5bba65);}}
1
+ (function(_0xaf725d,_0x25950a){const _0x1988cd=a129_0x5b2c,_0x15b3eb=_0xaf725d();while(!![]){try{const _0x1fb95e=parseInt(_0x1988cd(0x10b))/0x1+-parseInt(_0x1988cd(0x112))/0x2+-parseInt(_0x1988cd(0xf2))/0x3*(-parseInt(_0x1988cd(0x116))/0x4)+parseInt(_0x1988cd(0x104))/0x5*(parseInt(_0x1988cd(0xf7))/0x6)+-parseInt(_0x1988cd(0xff))/0x7+parseInt(_0x1988cd(0x105))/0x8+-parseInt(_0x1988cd(0x115))/0x9*(parseInt(_0x1988cd(0x106))/0xa);if(_0x1fb95e===_0x25950a)break;else _0x15b3eb['push'](_0x15b3eb['shift']());}catch(_0x17ab7c){_0x15b3eb['push'](_0x15b3eb['shift']());}}}(a129_0xa64e,0x987e4));import a129_0x48f310 from'path';import a129_0x3d43fc 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_0xa64e(){const _0x3fb43d=['11320MClvCe','\x20\x20rabetbase\x20run\x20start\x0a','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','resolve','string','349301tpSKxf','test','join','constants','access','cwd','\x20\x20√\x20package.json\x20updated','724606ohXUfN','\x20\x20√\x20Code\x20formatted','bun\x20--version','6957gaTpdF','2984KqZMVe','Project\x20directory\x20\x22','modelCount','package.json','bun','*\x20Creating\x20project\x20','length','\x20created\x20successfully!','validation','\x20model(s)','Cannot\x20create\x20project\x20in\x20current\x20directory.','chdir','trim','belowMinimum','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','\x20dataset(s),\x20generated\x20','\x0a\x20\x20cd\x20','Use\x20a\x20different\x20project\x20name.','1986QnxclN','\x22\x20already\x20exists.','Project\x20name\x20contains\x20invalid\x20characters.','...','production','6463794MttdTp','ignore','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','dirname','log','\x20\x20Pulling\x20API\x20configuration...','\x20\x20Installing\x20dependencies...','W_OK','937622dVcfmh','env','bun\x20run\x20format','name','\x0a√\x20Project\x20','5yFhTpR','603560qRpzvr'];a129_0xa64e=function(){return _0x3fb43d;};return a129_0xa64e();}import{CliErrors}from'../../../errors.js';import{fetchModelList}from'../../../core/api-client.js';function a129_0x5b2c(_0x25fae5,_0x39dfa5){_0x25fae5=_0x25fae5-0xed;const _0xa64e34=a129_0xa64e();let _0x5b2c57=_0xa64e34[_0x25fae5];return _0x5b2c57;}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(_0x495d2f,_0x3871b0,_0x222e52,_0x52e894){const _0x3f0863=a129_0x5b2c,_0x4698d4=await checkCliVersion();(_0x4698d4['needsUpgrade']||_0x4698d4[_0x3f0863(0xed)])&&(printCliUpgradeWarning(_0x4698d4),assertCliVersionSupported(_0x4698d4));if(!_0x495d2f||_0x495d2f[_0x3f0863(0x122)]()==='')throw CliErrors['validation']('Project\x20name\x20cannot\x20be\x20empty.');const _0x1deeb3=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x1deeb3[_0x3f0863(0x10c)](_0x495d2f))throw CliErrors[_0x3f0863(0x11e)](_0x3f0863(0xf4),_0x3f0863(0xf9));if(_0x495d2f[_0x3f0863(0x11c)]>0x64)throw CliErrors[_0x3f0863(0x11e)](_0x3f0863(0x108));const _0x571c92=a129_0x48f310['resolve'](process[_0x3f0863(0x110)](),_0x495d2f);if(existsSync(_0x571c92))throw CliErrors[_0x3f0863(0x11e)](_0x3f0863(0x117)+_0x495d2f+_0x3f0863(0xf3),_0x3f0863(0xf1));try{const _0x3fe371=a129_0x48f310[_0x3f0863(0xfa)](_0x571c92);await a129_0x3d43fc[_0x3f0863(0x10f)](_0x3fe371,a129_0x3d43fc[_0x3f0863(0x10e)][_0x3f0863(0xfe)]);}catch{throw CliErrors[_0x3f0863(0x11e)](_0x3f0863(0x120),'Check\x20directory\x20permissions.');}try{console['log'](_0x3f0863(0x11b)+_0x495d2f+_0x3f0863(0xf5));const _0xefbe94=getSubAppReactDemoTemplateDir();await copyDirectory(_0xefbe94,_0x571c92),console['log']('\x20\x20√\x20Project\x20template\x20created'),await updatePackageJsonName(_0x495d2f),console[_0x3f0863(0xfb)](_0x3f0863(0x111)),console[_0x3f0863(0xfb)](_0x3f0863(0xfd)),console['log']('\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)'),await formatCode(_0x571c92),console[_0x3f0863(0xfb)](_0x3f0863(0x113)),await configureProject(_0x495d2f,_0x222e52,_0x3871b0),console[_0x3f0863(0xfb)]('\x20\x20√\x20Configuration\x20file\x20created'),_0x222e52&&await pullApiConfig(_0x571c92,_0x222e52,_0x3871b0,_0x52e894),console[_0x3f0863(0xfb)](_0x3f0863(0x103)+_0x495d2f+_0x3f0863(0x11d)),console['log'](_0x3f0863(0xf0)+_0x495d2f),console['log'](_0x3f0863(0x107));}catch(_0x180008){try{existsSync(_0x571c92)&&await a129_0x3d43fc['rm'](_0x571c92,{'recursive':!![],'force':!![]});}catch{}throw _0x180008;}}async function updatePackageJsonName(_0x4d47db){const _0x4e7bb1=a129_0x5b2c,_0x1a2cc2=a129_0x48f310[_0x4e7bb1(0x109)](process[_0x4e7bb1(0x110)](),_0x4d47db),_0x26f9e0=a129_0x48f310['join'](_0x1a2cc2,_0x4e7bb1(0x119)),_0x46312d=await a129_0x3d43fc['readFile'](_0x26f9e0,'utf-8'),_0x507a37=JSON['parse'](_0x46312d);_0x507a37[_0x4e7bb1(0x102)]=_0x4d47db,_0x507a37['description']=_0x4e7bb1(0xee),await a129_0x3d43fc['writeFile'](_0x26f9e0,JSON['stringify'](_0x507a37,null,0x2)+'\x0a');}function detectPackageManager(){const _0x436f04=a129_0x5b2c;try{return execSync(_0x436f04(0x114),{'stdio':_0x436f04(0xf8)}),_0x436f04(0x11a);}catch{return'npm';}}async function formatCode(_0x4366b2){const _0x30fcf8=a129_0x5b2c;try{await execAsync(_0x30fcf8(0x101),{'cwd':_0x4366b2});}catch{}}async function configureProject(_0x49f3cf,_0x6348eb,_0x20be0d){const _0x2058d9=a129_0x5b2c,_0x762c23=a129_0x48f310[_0x2058d9(0x109)](process[_0x2058d9(0x110)](),_0x49f3cf),_0x56267d=a129_0x48f310[_0x2058d9(0x10d)](_0x762c23,NEW_CONFIG_NAME),_0x4cbab6=readConfig(),_0x1fa2fd=typeof _0x4cbab6['env']===_0x2058d9(0x10a)?_0x4cbab6[_0x2058d9(0x100)]:undefined,_0x5d0757={};for(const _0x27abeb of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x4cbab6[_0x27abeb]!=null)_0x5d0757[_0x27abeb]=_0x4cbab6[_0x27abeb];}const _0x26b98f=buildCanonicalProjectConfig(_0x5d0757,{'appCodes':_0x6348eb?[_0x6348eb]:[],'env':_0x20be0d||_0x1fa2fd||'production','metadata':{'createdAt':new Date()['toLocaleString'](),'version':getCliVersion()}});writeConfigFile(_0x56267d,_0x26b98f);}async function pullApiConfig(_0x35b9b9,_0x4c10b8,_0x4d54bc,_0x21cf1d){const _0x16ea66=a129_0x5b2c,_0x3327f9=process[_0x16ea66(0x110)]();try{process[_0x16ea66(0x121)](_0x35b9b9);const _0x500268=_0x4d54bc||_0x16ea66(0xf6);initEnv(_0x500268),console[_0x16ea66(0xfb)](_0x16ea66(0xfc));const {configArray:_0x5ba39e}=await fetchModelList(_0x4c10b8,_0x21cf1d||''),_0x3b8593=await generateApiFile(_0x5ba39e,'',_0x4c10b8,!![],_0x500268,DEFAULT_API_DIR);console[_0x16ea66(0xfb)]('\x20\x20√\x20Pulled\x20'+_0x5ba39e[_0x16ea66(0x11c)]+_0x16ea66(0xef)+_0x3b8593[_0x16ea66(0x118)]+_0x16ea66(0x11f));}catch(_0x37f76c){console[_0x16ea66(0xfb)]('\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`'+CLI_BIN_NAME+'\x20api\x20pull`\x20manually\x20later.');}finally{process[_0x16ea66(0x121)](_0x3327f9);}}
@@ -1 +1 @@
1
- const a130_0x1bf43b=a130_0xdfba;(function(_0x5b3a03,_0x3fcd56){const _0xe8f7ee=a130_0xdfba,_0x194541=_0x5b3a03();while(!![]){try{const _0x3dd5c0=-parseInt(_0xe8f7ee(0x88))/0x1*(-parseInt(_0xe8f7ee(0x7f))/0x2)+-parseInt(_0xe8f7ee(0x86))/0x3+parseInt(_0xe8f7ee(0x83))/0x4+parseInt(_0xe8f7ee(0x84))/0x5+-parseInt(_0xe8f7ee(0x8b))/0x6*(-parseInt(_0xe8f7ee(0x87))/0x7)+parseInt(_0xe8f7ee(0x8a))/0x8+-parseInt(_0xe8f7ee(0x81))/0x9*(parseInt(_0xe8f7ee(0x85))/0xa);if(_0x3dd5c0===_0x3fcd56)break;else _0x194541['push'](_0x194541['shift']());}catch(_0xe53d84){_0x194541['push'](_0x194541['shift']());}}}(a130_0x12c6,0x21c49));function a130_0xdfba(_0x259ed8,_0x30ee32){_0x259ed8=_0x259ed8-0x7d;const _0x12c636=a130_0x12c6();let _0xdfbaef=_0x12c636[_0x259ed8];return _0xdfbaef;}import a130_0x3d7d83 from'node:path';import{fileURLToPath}from'node:url';const __dirname=a130_0x3d7d83[a130_0x1bf43b(0x7d)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){return a130_0x3d7d83['resolve'](__dirname,'../../../../');}function a130_0x12c6(){const _0x41be76=['693246caJRlj','79156tuBSFt','1uNtTkx','join','1353472DMnpsx','102wxxJPM','dirname','projects','480924olNOcj','templates','9jrzSca','sub-app-react-demo','666044DJNSOr','787195lNOEVh','5564370YyZPbO'];a130_0x12c6=function(){return _0x41be76;};return a130_0x12c6();}export function getSubAppReactDemoTemplateDir(){const _0xf96ac=a130_0x1bf43b;return a130_0x3d7d83[_0xf96ac(0x89)](getRabetbaseCliPackageRoot(),_0xf96ac(0x80),_0xf96ac(0x7e),_0xf96ac(0x82));}
1
+ const a130_0x149be3=a130_0x378f;(function(_0x1f8abb,_0x53a23f){const _0x49b364=a130_0x378f,_0x2597a9=_0x1f8abb();while(!![]){try{const _0x4c8a55=parseInt(_0x49b364(0x12a))/0x1*(parseInt(_0x49b364(0x134))/0x2)+-parseInt(_0x49b364(0x135))/0x3*(-parseInt(_0x49b364(0x12e))/0x4)+-parseInt(_0x49b364(0x129))/0x5+-parseInt(_0x49b364(0x12f))/0x6*(-parseInt(_0x49b364(0x132))/0x7)+-parseInt(_0x49b364(0x12d))/0x8*(-parseInt(_0x49b364(0x127))/0x9)+parseInt(_0x49b364(0x133))/0xa+-parseInt(_0x49b364(0x131))/0xb*(parseInt(_0x49b364(0x12c))/0xc);if(_0x4c8a55===_0x53a23f)break;else _0x2597a9['push'](_0x2597a9['shift']());}catch(_0x4d8d6d){_0x2597a9['push'](_0x2597a9['shift']());}}}(a130_0x544a,0x4bfc6));import a130_0x2dae96 from'node:path';function a130_0x544a(){const _0x2882e9=['join','241571UUeexN','7igoiNu','2207830JgCylj','526RXYbCU','21qKgRBC','dirname','projects','templates','531JcscxB','resolve','903890pJRTCt','667nlNnUb','../../../../','336zJniyt','11616QozUDo','108532SwsaHZ','2610726trOdiX'];a130_0x544a=function(){return _0x2882e9;};return a130_0x544a();}import{fileURLToPath}from'node:url';function a130_0x378f(_0x3b1783,_0x317566){_0x3b1783=_0x3b1783-0x126;const _0x544a9f=a130_0x544a();let _0x378fa1=_0x544a9f[_0x3b1783];return _0x378fa1;}const __dirname=a130_0x2dae96[a130_0x149be3(0x136)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x2f7695=a130_0x149be3;return a130_0x2dae96[_0x2f7695(0x128)](__dirname,_0x2f7695(0x12b));}export function getSubAppReactDemoTemplateDir(){const _0xb22065=a130_0x149be3;return a130_0x2dae96[_0xb22065(0x130)](getRabetbaseCliPackageRoot(),_0xb22065(0x126),_0xb22065(0x137),'sub-app-react-demo');}
@@ -1 +1 @@
1
- (function(_0x218c6f,_0x24376c){const _0x29c3f3=a131_0x153d,_0xae79f7=_0x218c6f();while(!![]){try{const _0x3fc5f1=-parseInt(_0x29c3f3(0xb3))/0x1+-parseInt(_0x29c3f3(0xb0))/0x2*(-parseInt(_0x29c3f3(0xbf))/0x3)+-parseInt(_0x29c3f3(0xb6))/0x4*(-parseInt(_0x29c3f3(0xbe))/0x5)+parseInt(_0x29c3f3(0xae))/0x6*(-parseInt(_0x29c3f3(0xad))/0x7)+-parseInt(_0x29c3f3(0xbd))/0x8*(-parseInt(_0x29c3f3(0xb5))/0x9)+parseInt(_0x29c3f3(0xb7))/0xa*(parseInt(_0x29c3f3(0xb4))/0xb)+-parseInt(_0x29c3f3(0xba))/0xc*(parseInt(_0x29c3f3(0xbc))/0xd);if(_0x3fc5f1===_0x24376c)break;else _0xae79f7['push'](_0xae79f7['shift']());}catch(_0x31d512){_0xae79f7['push'](_0xae79f7['shift']());}}}(a131_0x3614,0x84694));import a131_0x137378 from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';function a131_0x153d(_0x3bdfe8,_0x139703){_0x3bdfe8=_0x3bdfe8-0xad;const _0x3614b5=a131_0x3614();let _0x153df7=_0x3614b5[_0x3bdfe8];return _0x153df7;}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x5e8902){const _0x12238d=a131_0x153d,_0x4677e7=Date[_0x12238d(0xbb)](),_0x464b96=a131_0x137378[_0x12238d(0xb8)](process[_0x12238d(0xaf)](),_0x5e8902);try{logger[_0x12238d(0xc0)]('copy',_0x12238d(0xc1),{'projectCode':_0x5e8902,'templateDir':templateDir}),await copyDirectory(templateDir,_0x464b96);const _0x4a84ff=Date[_0x12238d(0xbb)]()-_0x4677e7;logger['success']('copy',_0x12238d(0xb1),_0x4a84ff,{'projectCode':_0x5e8902});}catch(_0x176761){const _0x1e5eec=Date[_0x12238d(0xbb)]()-_0x4677e7;logger[_0x12238d(0xb2)]('copy',_0x12238d(0xb9),{'projectCode':_0x5e8902,'error':_0x176761 instanceof Error?_0x176761[_0x12238d(0xc2)]:String(_0x176761),'duration':_0x1e5eec});throw _0x176761;}return formatElapsed(_0x4677e7);}function a131_0x3614(){const _0x2aecde=['message','67690BLtEvU','648nJGrOb','cwd','101672wWIwfN','项目模板复制完成','error','460456lcssTB','146729MwXQrS','5193YWisln','269464IcqOBJ','730YXhHtD','resolve','项目模板复制失败','195228GDfFkJ','now','832ZdcmvJ','9160vJFnOj','40dUmmAm','54PJoDNS','info','开始复制项目模板'];a131_0x3614=function(){return _0x2aecde;};return a131_0x3614();}
1
+ function a131_0x868b(){const _0x277613=['236DxebjE','项目模板复制失败','cwd','8076432kKDmHS','2856716IlOqlq','resolve','now','3563766ZsrHik','6GKuzSC','copy','223011gnYDMS','3193570kAlOVP','7800800ANhsNj','70JyparB','开始复制项目模板','error','5295vTyFJh','success'];a131_0x868b=function(){return _0x277613;};return a131_0x868b();}(function(_0x58b2d8,_0x15a6dd){const _0x5c319a=a131_0x2959,_0x425d39=_0x58b2d8();while(!![]){try{const _0x7f1170=-parseInt(_0x5c319a(0x1fb))/0x1*(parseInt(_0x5c319a(0x1fd))/0x2)+parseInt(_0x5c319a(0x204))/0x3+parseInt(_0x5c319a(0x201))/0x4+-parseInt(_0x5c319a(0x1f6))/0x5*(parseInt(_0x5c319a(0x1f3))/0x6)+-parseInt(_0x5c319a(0x1f7))/0x7+parseInt(_0x5c319a(0x200))/0x8+parseInt(_0x5c319a(0x1f5))/0x9*(parseInt(_0x5c319a(0x1f8))/0xa);if(_0x7f1170===_0x15a6dd)break;else _0x425d39['push'](_0x425d39['shift']());}catch(_0xf4615c){_0x425d39['push'](_0x425d39['shift']());}}}(a131_0x868b,0xaca70));import a131_0x2d8d6c from'node:path';import{copyDirectory}from'../../../utils/copy-directory.js';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a131_0x2959(_0xd4d17e,_0x5282df){_0xd4d17e=_0xd4d17e-0x1f3;const _0x868b7e=a131_0x868b();let _0x2959fc=_0x868b7e[_0xd4d17e];return _0x2959fc;}import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x2e43d3){const _0x255272=a131_0x2959,_0x1bcf30=Date['now'](),_0x399d6f=a131_0x2d8d6c[_0x255272(0x202)](process[_0x255272(0x1ff)](),_0x2e43d3);try{logger['info'](_0x255272(0x1f4),_0x255272(0x1f9),{'projectCode':_0x2e43d3,'templateDir':templateDir}),await copyDirectory(templateDir,_0x399d6f);const _0x5a9618=Date['now']()-_0x1bcf30;logger[_0x255272(0x1fc)](_0x255272(0x1f4),'项目模板复制完成',_0x5a9618,{'projectCode':_0x2e43d3});}catch(_0x74ed1d){const _0x53c085=Date[_0x255272(0x203)]()-_0x1bcf30;logger[_0x255272(0x1fa)](_0x255272(0x1f4),_0x255272(0x1fe),{'projectCode':_0x2e43d3,'error':_0x74ed1d instanceof Error?_0x74ed1d['message']:String(_0x74ed1d),'duration':_0x53c085});throw _0x74ed1d;}return formatElapsed(_0x1bcf30);}
@@ -1 +1 @@
1
- (function(_0x3f1ab3,_0x24818a){const _0x3c6df6=a132_0x3fc2,_0x15ab8f=_0x3f1ab3();while(!![]){try{const _0x2975f9=parseInt(_0x3c6df6(0x1d5))/0x1+-parseInt(_0x3c6df6(0x1c4))/0x2+-parseInt(_0x3c6df6(0x1d2))/0x3*(-parseInt(_0x3c6df6(0x1ce))/0x4)+parseInt(_0x3c6df6(0x1d3))/0x5+-parseInt(_0x3c6df6(0x1cd))/0x6+parseInt(_0x3c6df6(0x1cb))/0x7*(parseInt(_0x3c6df6(0x1d4))/0x8)+-parseInt(_0x3c6df6(0x1ca))/0x9*(parseInt(_0x3c6df6(0x1cc))/0xa);if(_0x2975f9===_0x24818a)break;else _0x15ab8f['push'](_0x15ab8f['shift']());}catch(_0x2883f5){_0x15ab8f['push'](_0x15ab8f['shift']());}}}(a132_0x5f15,0x4570a));import a132_0x20b0e5 from'node:path';import{execa}from'execa';function a132_0x3fc2(_0x559b08,_0x46e022){_0x559b08=_0x559b08-0x1c4;const _0x5f15ea=a132_0x5f15();let _0x3fc2e1=_0x5f15ea[_0x559b08];return _0x3fc2e1;}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a132_0x5f15(){const _0x104698=['1180sKFmRi','2472840nUXBim','10792SPqJRl','error','now','info','243PYzDKj','1884695lmdfWz','1214632kLvHvF','192322itEnAp','185312BNKovV','resolve','代码格式化完成','success','开始格式化代码','format','34632dpSpUx','21OvmSdU'];a132_0x5f15=function(){return _0x104698;};return a132_0x5f15();}import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x15ce5b){const _0x535d57=a132_0x3fc2,_0xe5bdbb=Date[_0x535d57(0x1d0)](),_0x29f62f=a132_0x20b0e5[_0x535d57(0x1c5)](process['cwd'](),_0x15ce5b);try{logger[_0x535d57(0x1d1)](_0x535d57(0x1c9),_0x535d57(0x1c8),{'projectCode':_0x15ce5b}),await execa(resolveNpmBin('npx'),['prettier','--write','.'],{'cwd':_0x29f62f});const _0x2ef207=Date[_0x535d57(0x1d0)]()-_0xe5bdbb;logger[_0x535d57(0x1c7)]('format',_0x535d57(0x1c6),_0x2ef207,{'projectCode':_0x15ce5b});}catch(_0x11599c){const _0x4e365d=Date[_0x535d57(0x1d0)]()-_0xe5bdbb;logger[_0x535d57(0x1cf)](_0x535d57(0x1c9),'代码格式化失败',{'projectCode':_0x15ce5b,'error':_0x11599c instanceof Error?_0x11599c['message']:String(_0x11599c),'duration':_0x4e365d});throw _0x11599c;}return formatElapsed(_0xe5bdbb);}
1
+ (function(_0x26d379,_0x44ff62){const _0x217cb3=a132_0x3e50,_0x3d21da=_0x26d379();while(!![]){try{const _0x306a44=-parseInt(_0x217cb3(0x1eb))/0x1*(parseInt(_0x217cb3(0x1e5))/0x2)+-parseInt(_0x217cb3(0x1e3))/0x3*(parseInt(_0x217cb3(0x1de))/0x4)+parseInt(_0x217cb3(0x1e9))/0x5+parseInt(_0x217cb3(0x1ec))/0x6+-parseInt(_0x217cb3(0x1e7))/0x7+-parseInt(_0x217cb3(0x1e8))/0x8+-parseInt(_0x217cb3(0x1e4))/0x9*(-parseInt(_0x217cb3(0x1e2))/0xa);if(_0x306a44===_0x44ff62)break;else _0x3d21da['push'](_0x3d21da['shift']());}catch(_0x37ea24){_0x3d21da['push'](_0x3d21da['shift']());}}}(a132_0x5bd4,0xa5df5));import a132_0x551d9b from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a132_0x3e50(_0x35af0f,_0x513a32){_0x35af0f=_0x35af0f-0x1de;const _0x5bd45c=a132_0x5bd4();let _0x3e50c7=_0x5bd45c[_0x35af0f];return _0x3e50c7;}function a132_0x5bd4(){const _0x1ee29=['5454302aitfZC','5984512OBAqkg','4524580FLpMLG','format','9svhUBP','4146426gFpaaM','now','prettier','error','success','cwd','代码格式化失败','代码格式化完成','144iPngaZ','--write','开始格式化代码','npx','10drtRck','105741ozbdZl','21702969QbPDrv','118194HtQirn','info'];a132_0x5bd4=function(){return _0x1ee29;};return a132_0x5bd4();}import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x25bebb){const _0x138fe8=a132_0x3e50,_0x21f40e=Date[_0x138fe8(0x1ed)](),_0x566ed3=a132_0x551d9b['resolve'](process[_0x138fe8(0x1f1)](),_0x25bebb);try{logger[_0x138fe8(0x1e6)](_0x138fe8(0x1ea),_0x138fe8(0x1e0),{'projectCode':_0x25bebb}),await execa(resolveNpmBin(_0x138fe8(0x1e1)),[_0x138fe8(0x1ee),_0x138fe8(0x1df),'.'],{'cwd':_0x566ed3});const _0x3690fb=Date[_0x138fe8(0x1ed)]()-_0x21f40e;logger[_0x138fe8(0x1f0)](_0x138fe8(0x1ea),_0x138fe8(0x1f3),_0x3690fb,{'projectCode':_0x25bebb});}catch(_0x5c7ff8){const _0x4f16cb=Date[_0x138fe8(0x1ed)]()-_0x21f40e;logger[_0x138fe8(0x1ef)]('format',_0x138fe8(0x1f2),{'projectCode':_0x25bebb,'error':_0x5c7ff8 instanceof Error?_0x5c7ff8['message']:String(_0x5c7ff8),'duration':_0x4f16cb});throw _0x5c7ff8;}return formatElapsed(_0x21f40e);}
@@ -1 +1 @@
1
- (function(_0x312ad9,_0xf0114a){const _0x1e6be1=a133_0x574c,_0x452162=_0x312ad9();while(!![]){try{const _0x1141f1=parseInt(_0x1e6be1(0xa3))/0x1*(parseInt(_0x1e6be1(0xb6))/0x2)+parseInt(_0x1e6be1(0xb1))/0x3*(parseInt(_0x1e6be1(0xb2))/0x4)+-parseInt(_0x1e6be1(0xae))/0x5+parseInt(_0x1e6be1(0xa9))/0x6*(-parseInt(_0x1e6be1(0xb7))/0x7)+parseInt(_0x1e6be1(0xb5))/0x8+-parseInt(_0x1e6be1(0xaa))/0x9+-parseInt(_0x1e6be1(0xb3))/0xa*(-parseInt(_0x1e6be1(0xac))/0xb);if(_0x1141f1===_0xf0114a)break;else _0x452162['push'](_0x452162['shift']());}catch(_0x4ccc0c){_0x452162['push'](_0x452162['shift']());}}}(a133_0x35c5,0xb4d42));import a133_0x3edab6 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a133_0x574c(_0x376c38,_0x3af8a4){_0x376c38=_0x376c38-0xa1;const _0x35c5e5=a133_0x35c5();let _0x574c0c=_0x35c5e5[_0x376c38];return _0x574c0c;}function a133_0x35c5(){const _0x1f4558=['https://registry.npmmirror.com','now','3IEFpey','5570484ueSVeb','5776270DSjiBs','info','8949944MpjiGd','3726ckOHlv','3611804rxtxSi','cwd','依赖安装失败','25ZQURjo','message','success','resolve','--registry','npm','12SqDqrX','2543895npcnPE','开始安装依赖','11aBOyom','install','5401465QiHIOg'];a133_0x35c5=function(){return _0x1f4558;};return a133_0x35c5();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x4dec29){const _0x1d70c7=a133_0x574c,_0x412b6a=Date[_0x1d70c7(0xb0)](),_0x44166a=a133_0x3edab6[_0x1d70c7(0xa6)](process[_0x1d70c7(0xa1)](),_0x4dec29);try{logger[_0x1d70c7(0xb4)](_0x1d70c7(0xad),_0x1d70c7(0xab),{'projectCode':_0x4dec29,'registry':_0x1d70c7(0xaf)}),await execa(resolveNpmBin(_0x1d70c7(0xa8)),['install',_0x1d70c7(0xa7),_0x1d70c7(0xaf)],{'cwd':_0x44166a});const _0x4941c1=Date[_0x1d70c7(0xb0)]()-_0x412b6a;logger[_0x1d70c7(0xa5)](_0x1d70c7(0xad),'依赖安装完成',_0x4941c1,{'projectCode':_0x4dec29});}catch(_0x840d03){const _0x1e97b0=Date[_0x1d70c7(0xb0)]()-_0x412b6a;logger['error'](_0x1d70c7(0xad),_0x1d70c7(0xa2),{'projectCode':_0x4dec29,'error':_0x840d03 instanceof Error?_0x840d03[_0x1d70c7(0xa4)]:String(_0x840d03),'duration':_0x1e97b0});throw _0x840d03;}return formatElapsed(_0x412b6a);}
1
+ (function(_0x227b1c,_0x430893){const _0x548888=a133_0xb623,_0x418f0f=_0x227b1c();while(!![]){try{const _0x232cb2=parseInt(_0x548888(0xa3))/0x1+parseInt(_0x548888(0xa5))/0x2+parseInt(_0x548888(0xaa))/0x3*(parseInt(_0x548888(0xa0))/0x4)+parseInt(_0x548888(0xb0))/0x5+parseInt(_0x548888(0xa2))/0x6+parseInt(_0x548888(0xad))/0x7+parseInt(_0x548888(0xac))/0x8*(-parseInt(_0x548888(0xab))/0x9);if(_0x232cb2===_0x430893)break;else _0x418f0f['push'](_0x418f0f['shift']());}catch(_0x3d85cf){_0x418f0f['push'](_0x418f0f['shift']());}}}(a133_0x51fb,0x8c5d0));import a133_0x368a9c 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 a133_0xb623(_0x42bf63,_0x394fe7){_0x42bf63=_0x42bf63-0xa0;const _0x51fbe2=a133_0x51fb();let _0xb62353=_0x51fbe2[_0x42bf63];return _0xb62353;}function a133_0x51fb(){const _0x5363fc=['2247035rtCbgQ','1912204OLsMim','error','745080lnAWvm','626763YnkZVz','依赖安装失败','916742qVVzgg','now','--registry','https://registry.npmmirror.com','success','3GHYKpG','21367701jbTXcV','8uCbWBB','5686415KilCaX','cwd','install'];a133_0x51fb=function(){return _0x5363fc;};return a133_0x51fb();}export async function installDependencies(_0x1ca770){const _0x3a1a6c=a133_0xb623,_0x3af29d=Date[_0x3a1a6c(0xa6)](),_0x4922c9=a133_0x368a9c['resolve'](process[_0x3a1a6c(0xae)](),_0x1ca770);try{logger['info']('install','开始安装依赖',{'projectCode':_0x1ca770,'registry':_0x3a1a6c(0xa8)}),await execa(resolveNpmBin('npm'),[_0x3a1a6c(0xaf),_0x3a1a6c(0xa7),_0x3a1a6c(0xa8)],{'cwd':_0x4922c9});const _0x46d3a0=Date[_0x3a1a6c(0xa6)]()-_0x3af29d;logger[_0x3a1a6c(0xa9)](_0x3a1a6c(0xaf),'依赖安装完成',_0x46d3a0,{'projectCode':_0x1ca770});}catch(_0x2dc919){const _0x223950=Date[_0x3a1a6c(0xa6)]()-_0x3af29d;logger[_0x3a1a6c(0xa1)](_0x3a1a6c(0xaf),_0x3a1a6c(0xa4),{'projectCode':_0x1ca770,'error':_0x2dc919 instanceof Error?_0x2dc919['message']:String(_0x2dc919),'duration':_0x223950});throw _0x2dc919;}return formatElapsed(_0x3af29d);}
@@ -1 +1 @@
1
- function a134_0x15ea(_0x4b2197,_0x41ad3f){_0x4b2197=_0x4b2197-0x1c6;const _0x223bed=a134_0x223b();let _0x15eaac=_0x223bed[_0x4b2197];return _0x15eaac;}const a134_0x4775d1=a134_0x15ea;(function(_0xece5f6,_0x10d82f){const _0x33137e=a134_0x15ea,_0x19b9cf=_0xece5f6();while(!![]){try{const _0x27cf18=-parseInt(_0x33137e(0x1d4))/0x1+-parseInt(_0x33137e(0x1d8))/0x2*(parseInt(_0x33137e(0x1e9))/0x3)+parseInt(_0x33137e(0x1cc))/0x4+parseInt(_0x33137e(0x1dc))/0x5*(parseInt(_0x33137e(0x1d7))/0x6)+parseInt(_0x33137e(0x1ec))/0x7*(-parseInt(_0x33137e(0x1ee))/0x8)+-parseInt(_0x33137e(0x1e0))/0x9*(-parseInt(_0x33137e(0x1e3))/0xa)+-parseInt(_0x33137e(0x1e4))/0xb;if(_0x27cf18===_0x10d82f)break;else _0x19b9cf['push'](_0x19b9cf['shift']());}catch(_0x51b9c1){_0x19b9cf['push'](_0x19b9cf['shift']());}}}(a134_0x223b,0x8372e));function a134_0x223b(){const _0x54d65a=['Deprecated:\x20use\x20workspace\x20init\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','../../commands/project/create/main.js','27IcaqRn','env','trim','2106430QmVMgh','96492poDIVP','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','Project\x20name','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','64002CbxWpV','Usage:\x20','Skip\x20confirmation\x20prompt','2051ZHvcRZ','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','20328tzkpge','2026-07','project','../../commands/project/create/non-interactive.js','App\x20code\x20to\x20initialize','nonInteractive','create','project-name','yes','3925068bzEfrM','boolean','cookie','string','args','\x20workspace\x20init','name','init','797817yUTwKR','appcode','bool','2985924bitFzy','2QsZUcD','write','Auto-confirm\x20prompts','upgrade','5fsUVor','str'];a134_0x223b=function(){return _0x54d65a;};return a134_0x223b();}import{CliErrors}from'../../errors.js';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':'appcode','type':a134_0x4775d1(0x1cf),'description':a134_0x4775d1(0x1c7)},{'name':a134_0x4775d1(0x1e1),'type':a134_0x4775d1(0x1cf),'description':'Target\x20environment'},{'name':a134_0x4775d1(0x1cb),'type':a134_0x4775d1(0x1cd),'description':a134_0x4775d1(0x1da),'default':![]}],createFlags=[{'name':a134_0x4775d1(0x1d2),'type':a134_0x4775d1(0x1cf),'description':a134_0x4775d1(0x1e7)},{'name':a134_0x4775d1(0x1e1),'type':a134_0x4775d1(0x1cf),'description':'Target\x20environment'},{'name':a134_0x4775d1(0x1d5),'type':'string','description':a134_0x4775d1(0x1ed)}],upgradeFlags=[{'name':a134_0x4775d1(0x1cb),'type':a134_0x4775d1(0x1cd),'description':a134_0x4775d1(0x1eb),'default':![]}];export const projectDefinitions=[{'service':a134_0x4775d1(0x1f0),'command':a134_0x4775d1(0x1d3),'description':a134_0x4775d1(0x1de),'risk':a134_0x4775d1(0x1d9),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'hidden':!![],'deprecated':{'replacement':CLI_BIN_NAME+a134_0x4775d1(0x1d1),'since':a134_0x4775d1(0x1ef)},'flags':initFlags,async 'execute'(_0x472fe6){const _0x34b6d5=a134_0x4775d1;return await initConfig({'appcode':_0x472fe6[_0x34b6d5(0x1dd)](_0x34b6d5(0x1d5))||undefined,'env':_0x472fe6[_0x34b6d5(0x1dd)](_0x34b6d5(0x1e1))||undefined,'autoYes':_0x472fe6[_0x34b6d5(0x1d6)](_0x34b6d5(0x1cb))}),{'ok':!![]};}},{'service':'project','command':a134_0x4775d1(0x1c9),'description':'Create\x20a\x20new\x20project','risk':a134_0x4775d1(0x1d9),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a134_0x4775d1(0x1ca),'description':a134_0x4775d1(0x1e6),'required':![]}],'flags':createFlags,async 'execute'(_0x3bcbd6){const _0x386247=a134_0x4775d1,{createApp:_0x1c7704}=await import(_0x386247(0x1df)),{createProjectNonInteractive:_0x56aaee}=await import(_0x386247(0x1c6)),_0xbea383=_0x3bcbd6[_0x386247(0x1dd)](_0x386247(0x1d2))[_0x386247(0x1e2)]()||_0x3bcbd6[_0x386247(0x1d0)][0x0]?.['trim'](),_0x35a85b=_0x3bcbd6['str']('env')||undefined,_0x4a3389=_0x3bcbd6['str']('appcode')||undefined;if(_0x3bcbd6[_0x386247(0x1c8)]){if(!_0xbea383)throw CliErrors['validation']('Non-interactive\x20mode\x20requires\x20a\x20project\x20name.',_0x386247(0x1ea)+CLI_BIN_NAME+_0x386247(0x1e5));await _0x56aaee(_0xbea383,_0x35a85b,_0x4a3389,_0x3bcbd6[_0x386247(0x1ce)]);}else await _0x1c7704({'projectCode':_0xbea383,'appCode':_0x4a3389,'env':_0x35a85b,'cookie':_0x3bcbd6[_0x386247(0x1ce)]});return{'ok':!![]};}},{'service':a134_0x4775d1(0x1f0),'command':a134_0x4775d1(0x1db),'description':a134_0x4775d1(0x1e8),'risk':a134_0x4775d1(0x1d9),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x1dbf20){const _0x287888=a134_0x4775d1;return await upgradeApp(_0x1dbf20['nonInteractive'],{'yes':_0x1dbf20[_0x287888(0x1d6)]('yes')}),{'ok':!![]};}}];
1
+ const a134_0x4fbc1d=a134_0x588e;(function(_0x356d84,_0x314be3){const _0x8cb358=a134_0x588e,_0x25ce9b=_0x356d84();while(!![]){try{const _0x528a21=-parseInt(_0x8cb358(0x1d1))/0x1*(parseInt(_0x8cb358(0x1d2))/0x2)+parseInt(_0x8cb358(0x1e9))/0x3+-parseInt(_0x8cb358(0x1de))/0x4+parseInt(_0x8cb358(0x1d4))/0x5*(parseInt(_0x8cb358(0x1ea))/0x6)+parseInt(_0x8cb358(0x1d3))/0x7*(parseInt(_0x8cb358(0x1e4))/0x8)+-parseInt(_0x8cb358(0x1ef))/0x9+-parseInt(_0x8cb358(0x1ce))/0xa;if(_0x528a21===_0x314be3)break;else _0x25ce9b['push'](_0x25ce9b['shift']());}catch(_0x3e5560){_0x25ce9b['push'](_0x25ce9b['shift']());}}}(a134_0x4aa8,0xc2f19));import{CliErrors}from'../../errors.js';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':'appcode','type':'string','description':'App\x20code\x20to\x20initialize'},{'name':a134_0x4fbc1d(0x1f0),'type':a134_0x4fbc1d(0x1d8),'description':a134_0x4fbc1d(0x1f1)},{'name':a134_0x4fbc1d(0x1e0),'type':a134_0x4fbc1d(0x1ed),'description':a134_0x4fbc1d(0x1eb),'default':![]}],createFlags=[{'name':a134_0x4fbc1d(0x1ec),'type':a134_0x4fbc1d(0x1d8),'description':a134_0x4fbc1d(0x1dd)},{'name':a134_0x4fbc1d(0x1f0),'type':'string','description':'Target\x20environment'},{'name':a134_0x4fbc1d(0x1da),'type':a134_0x4fbc1d(0x1d8),'description':'App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)'}],upgradeFlags=[{'name':a134_0x4fbc1d(0x1e0),'type':'boolean','description':a134_0x4fbc1d(0x1d9),'default':![]}];function a134_0x4aa8(){const _0x49d0bb=['create','string','Skip\x20confirmation\x20prompt','appcode','2026-07','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','Project\x20name','80820fIGhTA','bool','yes','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','Deprecated:\x20use\x20workspace\x20init\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','../../commands/project/create/main.js','11099656MzvpJt','trim','\x20workspace\x20init','nonInteractive','write','4448496LeUEGq','6jpwrjk','Auto-confirm\x20prompts','name','boolean','project','8488368CZQwcu','env','Target\x20environment','args','Create\x20a\x20new\x20project','9278850IIxUtf','upgrade','str','40345rmVhhD','78wWAMTY','7GglbDp','6964485PMUcZf','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]'];a134_0x4aa8=function(){return _0x49d0bb;};return a134_0x4aa8();}function a134_0x588e(_0x40a999,_0x64ec68){_0x40a999=_0x40a999-0x1ce;const _0x4aa88b=a134_0x4aa8();let _0x588edc=_0x4aa88b[_0x40a999];return _0x588edc;}export const projectDefinitions=[{'service':a134_0x4fbc1d(0x1ee),'command':'init','description':a134_0x4fbc1d(0x1e2),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'hidden':!![],'deprecated':{'replacement':CLI_BIN_NAME+a134_0x4fbc1d(0x1e6),'since':a134_0x4fbc1d(0x1db)},'flags':initFlags,async 'execute'(_0x47d001){const _0x152e58=a134_0x4fbc1d;return await initConfig({'appcode':_0x47d001[_0x152e58(0x1d0)](_0x152e58(0x1da))||undefined,'env':_0x47d001['str']('env')||undefined,'autoYes':_0x47d001['bool']('yes')}),{'ok':!![]};}},{'service':a134_0x4fbc1d(0x1ee),'command':a134_0x4fbc1d(0x1d7),'description':a134_0x4fbc1d(0x1f3),'risk':a134_0x4fbc1d(0x1e8),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'project-name','description':a134_0x4fbc1d(0x1dc),'required':![]}],'flags':createFlags,async 'execute'(_0x1478ca){const _0x589123=a134_0x4fbc1d,{createApp:_0x2f333b}=await import(_0x589123(0x1e3)),{createProjectNonInteractive:_0x5a1673}=await import('../../commands/project/create/non-interactive.js'),_0x485130=_0x1478ca[_0x589123(0x1d0)](_0x589123(0x1ec))[_0x589123(0x1e5)]()||_0x1478ca[_0x589123(0x1f2)][0x0]?.['trim'](),_0x37b442=_0x1478ca[_0x589123(0x1d0)](_0x589123(0x1f0))||undefined,_0xfce26b=_0x1478ca['str']('appcode')||undefined;if(_0x1478ca['nonInteractive']){if(!_0x485130)throw CliErrors['validation'](_0x589123(0x1e1),'Usage:\x20'+CLI_BIN_NAME+_0x589123(0x1d6));await _0x5a1673(_0x485130,_0x37b442,_0xfce26b,_0x1478ca['cookie']);}else await _0x2f333b({'projectCode':_0x485130,'appCode':_0xfce26b,'env':_0x37b442,'cookie':_0x1478ca['cookie']});return{'ok':!![]};}},{'service':'project','command':a134_0x4fbc1d(0x1cf),'description':a134_0x4fbc1d(0x1d5),'risk':a134_0x4fbc1d(0x1e8),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x5b60db){const _0x1df72c=a134_0x4fbc1d;return await upgradeApp(_0x5b60db[_0x1df72c(0x1e7)],{'yes':_0x5b60db[_0x1df72c(0x1df)](_0x1df72c(0x1e0))}),{'ok':!![]};}}];
@@ -1 +1 @@
1
- (function(_0x43d69a,_0x356937){const _0x462cf3=a135_0x2060,_0x5bf8bf=_0x43d69a();while(!![]){try{const _0xcbc065=parseInt(_0x462cf3(0x1e1))/0x1*(parseInt(_0x462cf3(0x208))/0x2)+-parseInt(_0x462cf3(0x1ec))/0x3*(-parseInt(_0x462cf3(0x1f3))/0x4)+parseInt(_0x462cf3(0x206))/0x5+parseInt(_0x462cf3(0x1d6))/0x6+-parseInt(_0x462cf3(0x1fc))/0x7+-parseInt(_0x462cf3(0x1e6))/0x8*(parseInt(_0x462cf3(0x1f8))/0x9)+-parseInt(_0x462cf3(0x207))/0xa*(parseInt(_0x462cf3(0x1dc))/0xb);if(_0xcbc065===_0x356937)break;else _0x5bf8bf['push'](_0x5bf8bf['shift']());}catch(_0x3836ad){_0x5bf8bf['push'](_0x5bf8bf['shift']());}}}(a135_0x29f5,0xeb1d9));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a135_0x4b2f8f from'chalk';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';function a135_0x29f5(){const _0x55911d=['toLocaleString','\x20\x20Default:\x20','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory','从旧配置文件升级成功','231XVnDMw','apps','setLogPath','appcode','\x20\x20appcode:\x20','1761371VrLprZ','\x20api\x20pull\x27','Invalid\x20App\x20Code','production','parse','584dkpxjT','\x20\x20Apps:\x20','✓\x20Upgraded\x20','version','yellow','log','96ibmNGB','defaultApp','string','app','../..','\x20api\x20generate\x27\x20and\x20\x27','init','175264cFRLsc','\x20→\x20.rabetbase.json','1.0.0','cyan','package.json','153981kperKA','App\x20Code\x20cannot\x20be\x20empty','green','gray','3476928OnPDmu','keys','cwd','join','初始化项目配置文件成功','env','?\x20(Old\x20file\x20→\x20*.bak)','trim','\x20workspace\x20init`\x20to\x20start\x20fresh.','bold','2212670DgCXtb','499410QVDWRV','2orpcQZ','.bak','utf8','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','Please\x20enter\x20App\x20Code:','info','908628pnmlvR'];a135_0x29f5=function(){return _0x55911d;};return a135_0x29f5();}import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x56f079){const _0x59c6c6=a135_0x2060,{appcode:_0x426d51,env:_0x352cdd,autoYes:_0x42b155}=_0x56f079,_0x194d23=process[_0x59c6c6(0x1fe)]();if(getProjectConfigPath())throw new Error(_0x59c6c6(0x20b));let _0x35ff94;for(const _0x31d0e5 of LEGACY_CONFIG_NAMES){const _0x24fab9=resolve(_0x194d23,_0x31d0e5);if(existsSync(_0x24fab9)){_0x35ff94=_0x24fab9;break;}}if(_0x35ff94){let _0x26678a={};try{_0x26678a=JSON[_0x59c6c6(0x1e5)](readFileSync(_0x35ff94,_0x59c6c6(0x20a)));}catch{}const _0x49927c=basename(_0x35ff94),_0x3459db=_0x26678a?.[_0x59c6c6(0x1df)]||_0x26678a?.[_0x59c6c6(0x1ef)];let _0x143dc8=_0x42b155;!_0x42b155&&(console[_0x59c6c6(0x1eb)](a135_0x4b2f8f[_0x59c6c6(0x1ea)]('⚠\x20Found\x20legacy\x20configuration\x20file:\x20'+a135_0x4b2f8f[_0x59c6c6(0x205)](_0x49927c))),_0x3459db&&console[_0x59c6c6(0x1eb)](a135_0x4b2f8f[_0x59c6c6(0x1f6)](_0x59c6c6(0x1e0)+_0x3459db)),_0x143dc8=await confirm({'message':'Upgrade\x20it\x20to\x20'+a135_0x4b2f8f['bold']('.rabetbase.json')+_0x59c6c6(0x202),'default':!![]}));if(!_0x143dc8){console[_0x59c6c6(0x1eb)]('Migration\x20cancelled.\x20Run\x20`'+CLI_BIN_NAME+_0x59c6c6(0x204));return;}const _0x3e9230=resolve(_0x194d23,NEW_CONFIG_NAME),_0x18b09d=getCliVersionFromPkg(),_0x2e5b9e=readRawConfig(),_0x1d1b6=_0x426d51||(typeof _0x26678a?.[_0x59c6c6(0x1df)]===_0x59c6c6(0x1ee)?_0x26678a[_0x59c6c6(0x1df)]:undefined)||(typeof _0x26678a?.['app']===_0x59c6c6(0x1ee)?_0x26678a[_0x59c6c6(0x1ef)]:undefined)||await askAppcode(),_0x1c2c48=typeof _0x26678a?.[_0x59c6c6(0x201)]===_0x59c6c6(0x1ee)?_0x26678a[_0x59c6c6(0x201)]:typeof _0x2e5b9e[_0x59c6c6(0x201)]===_0x59c6c6(0x1ee)?_0x2e5b9e[_0x59c6c6(0x201)]:_0x59c6c6(0x1e4),_0x55123f=buildCanonicalProjectConfig({..._0x2e5b9e,..._0x26678a},{'appCodes':[_0x1d1b6],'env':_0x1c2c48,'metadata':{'version':_0x18b09d,'migratedAt':new Date()[_0x59c6c6(0x1d7)](),'migratedFrom':_0x35ff94}});writeConfigFile(_0x3e9230,_0x55123f);const _0x17375b=_0x35ff94+_0x59c6c6(0x209);renameSync(_0x35ff94,_0x17375b),logger[_0x59c6c6(0x1de)](_0x194d23),logger[_0x59c6c6(0x1d5)](_0x59c6c6(0x1f2),_0x59c6c6(0x1db),{'from':_0x35ff94,'to':_0x3e9230,'appcode':_0x1d1b6,'env':_0x55123f[_0x59c6c6(0x201)]}),console[_0x59c6c6(0x1eb)](a135_0x4b2f8f[_0x59c6c6(0x1fa)](_0x59c6c6(0x1e8)+_0x49927c+_0x59c6c6(0x1f4))),console['log'](a135_0x4b2f8f['cyan']('\x20\x20Apps:\x20'+Object['keys'](_0x55123f[_0x59c6c6(0x1dd)]||{})['join'](',\x20'))),console[_0x59c6c6(0x1eb)](a135_0x4b2f8f[_0x59c6c6(0x1f6)](_0x59c6c6(0x1d8)+_0x55123f['defaultApp'])),console[_0x59c6c6(0x1eb)](a135_0x4b2f8f[_0x59c6c6(0x1fb)]('\x20\x20Old\x20file\x20backed\x20up\x20as\x20'+_0x49927c+_0x59c6c6(0x209)));return;}const _0x4ae277=_0x426d51||await askAppcode(),_0x376244=resolve(_0x194d23,NEW_CONFIG_NAME),_0x4bcfc7=getCliVersionFromPkg(),_0x22c24d=readRawConfig(),_0x494011=typeof _0x22c24d[_0x59c6c6(0x201)]===_0x59c6c6(0x1ee)?_0x22c24d[_0x59c6c6(0x201)]:undefined,_0x31799c=buildCanonicalProjectConfig({},{'appCodes':[_0x4ae277],'env':_0x352cdd||_0x494011||_0x59c6c6(0x1e4),'metadata':{'version':_0x4bcfc7,'createdAt':new Date()[_0x59c6c6(0x1d7)]()}});writeConfigFile(_0x376244,_0x31799c),logger[_0x59c6c6(0x1de)](_0x194d23),logger['info']('init',_0x59c6c6(0x200),{'appcode':_0x4ae277,'env':_0x31799c[_0x59c6c6(0x201)],'version':_0x31799c[_0x59c6c6(0x1e9)],'configPath':_0x376244}),console[_0x59c6c6(0x1eb)](a135_0x4b2f8f[_0x59c6c6(0x1fa)](_0x59c6c6(0x1da))),console[_0x59c6c6(0x1eb)](a135_0x4b2f8f[_0x59c6c6(0x1f6)](_0x59c6c6(0x1e7)+Object[_0x59c6c6(0x1fd)](_0x31799c[_0x59c6c6(0x1dd)]||{})[_0x59c6c6(0x1ff)](',\x20'))),console['log'](a135_0x4b2f8f[_0x59c6c6(0x1f6)](_0x59c6c6(0x1d8)+_0x31799c[_0x59c6c6(0x1ed)])),console[_0x59c6c6(0x1eb)](_0x59c6c6(0x1d9)+CLI_BIN_NAME+_0x59c6c6(0x1f1)+CLI_BIN_NAME+_0x59c6c6(0x1e2));}function askAppcode(){const _0xa86cb9=a135_0x2060;return input({'message':_0xa86cb9(0x1d4),'validate':_0x59f557=>{const _0x5e8d7c=_0xa86cb9;if(!_0x59f557['trim']())return _0x5e8d7c(0x1f9);const {valid:_0xca9cea,message:_0x2ba9bd}=validateAppcode(_0x59f557[_0x5e8d7c(0x203)]());return _0xca9cea||_0x2ba9bd||_0x5e8d7c(0x1e3);}});}function a135_0x2060(_0x515905,_0x416073){_0x515905=_0x515905-0x1d4;const _0x29f5c4=a135_0x29f5();let _0x206076=_0x29f5c4[_0x515905];return _0x206076;}function getCliVersionFromPkg(){const _0x2e299b=a135_0x2060;try{const _0x2d824d=fileURLToPath(import.meta.url),_0x368d46=resolve(dirname(_0x2d824d),_0x2e299b(0x1f0)),_0x562d1f=JSON[_0x2e299b(0x1e5)](readFileSync(resolve(_0x368d46,_0x2e299b(0x1f7)),'utf8'));return _0x562d1f['version']||_0x2e299b(0x1f5);}catch{return _0x2e299b(0x1f5);}}
1
+ (function(_0x3b7a6f,_0x227890){const _0x4dcbc8=a135_0xd1e3,_0x269282=_0x3b7a6f();while(!![]){try{const _0x4c8ce9=parseInt(_0x4dcbc8(0xf5))/0x1*(parseInt(_0x4dcbc8(0xf4))/0x2)+-parseInt(_0x4dcbc8(0xfa))/0x3*(-parseInt(_0x4dcbc8(0x106))/0x4)+-parseInt(_0x4dcbc8(0xfc))/0x5+parseInt(_0x4dcbc8(0x111))/0x6+parseInt(_0x4dcbc8(0x114))/0x7*(-parseInt(_0x4dcbc8(0xef))/0x8)+parseInt(_0x4dcbc8(0xf0))/0x9+-parseInt(_0x4dcbc8(0xfe))/0xa;if(_0x4c8ce9===_0x227890)break;else _0x269282['push'](_0x269282['shift']());}catch(_0x3f1d27){_0x269282['push'](_0x269282['shift']());}}}(a135_0xce74,0xa3b99));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a135_0x41ce3a from'chalk';import{input,confirm}from'@inquirer/prompts';function a135_0xce74(){const _0x1fcf6c=['\x20\x20Apps:\x20','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','bold','1726NwIDzS','931DsTbuA','\x20\x20Default:\x20','Invalid\x20App\x20Code','appcode','?\x20(Old\x20file\x20→\x20*.bak)','1097343CQhQlW','\x20\x20appcode:\x20','6587725wslVEs','string','4999480ZuzdFC','初始化项目配置文件成功','keys','yellow','../..','env','init','1.0.0','8YFeFNH','version','parse','join','\x20api\x20pull\x27','log','app','apps','从旧配置文件升级成功','production','package.json','1767444oJWbXy','gray','utf8','13671nwjHrl','\x20workspace\x20init`\x20to\x20start\x20fresh.','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','cwd','.bak','toLocaleString','trim','.rabetbase.json','cyan','defaultApp','56RFfTwb','6049728daWBkg'];a135_0xce74=function(){return _0x1fcf6c;};return a135_0xce74();}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';function a135_0xd1e3(_0x141153,_0x164210){_0x141153=_0x141153-0xea;const _0xce74a3=a135_0xce74();let _0xd1e3c=_0xce74a3[_0x141153];return _0xd1e3c;}import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x8cb983){const _0x35c567=a135_0xd1e3,{appcode:_0xcc03d6,env:_0x339901,autoYes:_0x246d99}=_0x8cb983,_0x26fb6b=process[_0x35c567(0x117)]();if(getProjectConfigPath())throw new Error(_0x35c567(0xf2));let _0x5e0dbb;for(const _0x4a2e32 of LEGACY_CONFIG_NAMES){const _0x4a1dbe=resolve(_0x26fb6b,_0x4a2e32);if(existsSync(_0x4a1dbe)){_0x5e0dbb=_0x4a1dbe;break;}}if(_0x5e0dbb){let _0x52d689={};try{_0x52d689=JSON[_0x35c567(0x108)](readFileSync(_0x5e0dbb,_0x35c567(0x113)));}catch{}const _0x33d609=basename(_0x5e0dbb),_0x249132=_0x52d689?.[_0x35c567(0xf8)]||_0x52d689?.[_0x35c567(0x10c)];let _0x1038f6=_0x246d99;!_0x246d99&&(console[_0x35c567(0x10b)](a135_0x41ce3a[_0x35c567(0x101)]('⚠\x20Found\x20legacy\x20configuration\x20file:\x20'+a135_0x41ce3a[_0x35c567(0xf3)](_0x33d609))),_0x249132&&console[_0x35c567(0x10b)](a135_0x41ce3a[_0x35c567(0xed)](_0x35c567(0xfb)+_0x249132)),_0x1038f6=await confirm({'message':'Upgrade\x20it\x20to\x20'+a135_0x41ce3a['bold'](_0x35c567(0xec))+_0x35c567(0xf9),'default':!![]}));if(!_0x1038f6){console['log']('Migration\x20cancelled.\x20Run\x20`'+CLI_BIN_NAME+_0x35c567(0x115));return;}const _0x30db8d=resolve(_0x26fb6b,NEW_CONFIG_NAME),_0x565706=getCliVersionFromPkg(),_0x3ccd34=readRawConfig(),_0x3358a6=_0xcc03d6||(typeof _0x52d689?.[_0x35c567(0xf8)]===_0x35c567(0xfd)?_0x52d689[_0x35c567(0xf8)]:undefined)||(typeof _0x52d689?.[_0x35c567(0x10c)]===_0x35c567(0xfd)?_0x52d689[_0x35c567(0x10c)]:undefined)||await askAppcode(),_0x319a6d=typeof _0x52d689?.[_0x35c567(0x103)]===_0x35c567(0xfd)?_0x52d689[_0x35c567(0x103)]:typeof _0x3ccd34[_0x35c567(0x103)]==='string'?_0x3ccd34[_0x35c567(0x103)]:_0x35c567(0x10f),_0x50eacd=buildCanonicalProjectConfig({..._0x3ccd34,..._0x52d689},{'appCodes':[_0x3358a6],'env':_0x319a6d,'metadata':{'version':_0x565706,'migratedAt':new Date()[_0x35c567(0xea)](),'migratedFrom':_0x5e0dbb}});writeConfigFile(_0x30db8d,_0x50eacd);const _0xc62d25=_0x5e0dbb+_0x35c567(0x118);renameSync(_0x5e0dbb,_0xc62d25),logger['setLogPath'](_0x26fb6b),logger['info'](_0x35c567(0x104),_0x35c567(0x10e),{'from':_0x5e0dbb,'to':_0x30db8d,'appcode':_0x3358a6,'env':_0x50eacd[_0x35c567(0x103)]}),console[_0x35c567(0x10b)](a135_0x41ce3a['green']('✓\x20Upgraded\x20'+_0x33d609+'\x20→\x20.rabetbase.json')),console[_0x35c567(0x10b)](a135_0x41ce3a[_0x35c567(0xed)]('\x20\x20Apps:\x20'+Object[_0x35c567(0x100)](_0x50eacd[_0x35c567(0x10d)]||{})[_0x35c567(0x109)](',\x20'))),console['log'](a135_0x41ce3a[_0x35c567(0xed)](_0x35c567(0xf6)+_0x50eacd['defaultApp'])),console[_0x35c567(0x10b)](a135_0x41ce3a[_0x35c567(0x112)]('\x20\x20Old\x20file\x20backed\x20up\x20as\x20'+_0x33d609+_0x35c567(0x118)));return;}const _0x426bf2=_0xcc03d6||await askAppcode(),_0x2ca23c=resolve(_0x26fb6b,NEW_CONFIG_NAME),_0x3cc434=getCliVersionFromPkg(),_0x1c0e77=readRawConfig(),_0x1e9eb5=typeof _0x1c0e77['env']===_0x35c567(0xfd)?_0x1c0e77[_0x35c567(0x103)]:undefined,_0x363525=buildCanonicalProjectConfig({},{'appCodes':[_0x426bf2],'env':_0x339901||_0x1e9eb5||'production','metadata':{'version':_0x3cc434,'createdAt':new Date()[_0x35c567(0xea)]()}});writeConfigFile(_0x2ca23c,_0x363525),logger['setLogPath'](_0x26fb6b),logger['info']('init',_0x35c567(0xff),{'appcode':_0x426bf2,'env':_0x363525[_0x35c567(0x103)],'version':_0x363525[_0x35c567(0x107)],'configPath':_0x2ca23c}),console[_0x35c567(0x10b)](a135_0x41ce3a['green']('✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory')),console[_0x35c567(0x10b)](a135_0x41ce3a[_0x35c567(0xed)](_0x35c567(0xf1)+Object[_0x35c567(0x100)](_0x363525[_0x35c567(0x10d)]||{})[_0x35c567(0x109)](',\x20'))),console['log'](a135_0x41ce3a[_0x35c567(0xed)](_0x35c567(0xf6)+_0x363525[_0x35c567(0xee)])),console[_0x35c567(0x10b)](_0x35c567(0x116)+CLI_BIN_NAME+'\x20api\x20generate\x27\x20and\x20\x27'+CLI_BIN_NAME+_0x35c567(0x10a));}function askAppcode(){return input({'message':'Please\x20enter\x20App\x20Code:','validate':_0x5f0d50=>{const _0x224205=a135_0xd1e3;if(!_0x5f0d50[_0x224205(0xeb)]())return'App\x20Code\x20cannot\x20be\x20empty';const {valid:_0x1e1e20,message:_0x27edf5}=validateAppcode(_0x5f0d50[_0x224205(0xeb)]());return _0x1e1e20||_0x27edf5||_0x224205(0xf7);}});}function getCliVersionFromPkg(){const _0xe98fd4=a135_0xd1e3;try{const _0x2f563f=fileURLToPath(import.meta.url),_0x3ca619=resolve(dirname(_0x2f563f),_0xe98fd4(0x102)),_0x2a35df=JSON['parse'](readFileSync(resolve(_0x3ca619,_0xe98fd4(0x110)),_0xe98fd4(0x113)));return _0x2a35df['version']||_0xe98fd4(0x105);}catch{return _0xe98fd4(0x105);}}
@@ -1 +1 @@
1
- const a136_0x1eca33=a136_0x2a8a;(function(_0xb49438,_0x3a8f7c){const _0x5382bf=a136_0x2a8a,_0x5bd076=_0xb49438();while(!![]){try{const _0x166375=-parseInt(_0x5382bf(0x183))/0x1*(parseInt(_0x5382bf(0x11e))/0x2)+-parseInt(_0x5382bf(0x154))/0x3+parseInt(_0x5382bf(0x155))/0x4*(parseInt(_0x5382bf(0x19d))/0x5)+parseInt(_0x5382bf(0x170))/0x6*(-parseInt(_0x5382bf(0x176))/0x7)+parseInt(_0x5382bf(0x17f))/0x8*(-parseInt(_0x5382bf(0x149))/0x9)+parseInt(_0x5382bf(0x166))/0xa*(parseInt(_0x5382bf(0x125))/0xb)+parseInt(_0x5382bf(0x138))/0xc*(parseInt(_0x5382bf(0x195))/0xd);if(_0x166375===_0x3a8f7c)break;else _0x5bd076['push'](_0x5bd076['shift']());}catch(_0x43d988){_0x5bd076['push'](_0x5bd076['shift']());}}}(a136_0x15ed,0x37ed1));import a136_0xf079f0 from'chalk';import a136_0x2c2eb8 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[a136_0x1eca33(0x18f)](_0x1934bc=>_0x1934bc!==NEW_CONFIG_NAME);function a136_0x15ed(){const _0x11cd8e=['info','fail','\x20→\x20','isArray','.cursor/rules/lovrabet_rules.mdc','some','Remove\x20old\x20skill','exit\x20','\x20→\x20latest','oldArtifacts','white','189110FhMsdo','.lovrabet','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','includes','entries','Step\x204/7:\x20MCP\x20config\x20—\x20','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','failed','red','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','174XRbEow','sdkUpgrade','cyan','package.json','fields','join','22715nwxOtv','FAIL','not\x20found\x20(will\x20create)','bold','log','files','object','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','MCP\x20config:','2985624ESpRZz','.claude/skills/lovrabet','mcpServers','push','1eciRFS','inherit','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','@lovrabet/dataset-mcp-server','lovrabet/rabetbase','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','oldMcpConfig','oldPath','none\x20found','hasNewConfig','configMigration','===\x20Upgrade\x20Summary\x20===','filter','yellow','yes','not\x20found\x20or\x20already\x20at\x20latest','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','\x20\x20Action:\x20delete','5134766EAYnZP','@lovrabet/sdk:','keys','Step\x201/7:\x20Migrating\x20config...','Upgrade\x20@lovrabet/sdk','cwd','skipped\x20(no\x20legacy\x20config)','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','90290bmxPjs','lovrabet/rabetbase\x20installed\x20globally','Install\x20new\x20skill','Skill\x20swap:','string','Legacy\x20artifacts:','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','isDirectory','\x20removed','Config\x20file:','344870gryjKk','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','Clean\x20MCP\x20config','Config\x20migration','stringify','\x20→\x20keys:\x20','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','209uEZvDH','needed','detail','error','\x20\x20bun\x20install','already\x20exists\x20(will\x20merge)','gray','succeed','green','path','done','length','FOUND','\x20removed\x20(','needsSkillSwap','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','message','\x20\x20#\x20or','skipped','12GhTAHP','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','\x20\x20Step\x20','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','.bak','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','values','removed\x20','\x20\x20Current\x20version\x20in\x20','Upgrade\x20cancelled.','parse','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','latest','[\x22@lovrabet/sdk\x22]:\x20','start','9tdzlvO','devDependencies','undefined','Upgrade\x20completed\x20successfully!','===\x20Upgrade\x20Analysis\x20===','\x20(backup:\x20','\x20\x20New\x20config\x20(.rabetbase.json):\x20','utf8','Step\x206/7:\x20Installing\x20new\x20skill...','step','args','414861UKjjZH','56VbYGhz','not\x20needed','Remove\x20.lovrabet/','no\x20legacy\x20entry','label','@lovrabet/sdk'];a136_0x15ed=function(){return _0x11cd8e;};return a136_0x15ed();}function collectIdeSkillFiles(_0x2e1c60){const _0xaabf13=a136_0x1eca33,_0x4b155d=[];for(const _0x32e475 of Object[_0xaabf13(0x13f)](CORE_IDE_CONFIGS)){if(_0x32e475[_0xaabf13(0x17b)])for(const _0x184c6d of _0x32e475[_0xaabf13(0x17b)]){_0x4b155d['push'](resolve(_0x2e1c60,_0x184c6d[_0xaabf13(0x12e)]));}}return _0x4b155d;}function analyse(_0x29ae53){const _0x4fc2f3=a136_0x1eca33;let _0x421e83=null;const _0xb9148a=resolve(_0x29ae53,NEW_CONFIG_NAME),_0x9e4bb5=existsSync(_0xb9148a);for(const _0x3c3812 of LEGACY_CONFIG_NAMES){const _0x49dbdf=resolve(_0x29ae53,_0x3c3812);if(existsSync(_0x49dbdf)){const _0x3f098f=readConfigFile(_0x49dbdf),_0x28f761=Object[_0x4fc2f3(0x197)](_0x3f098f)[_0x4fc2f3(0x18f)](_0x9396e3=>typeof _0x3f098f[_0x9396e3]!==_0x4fc2f3(0x14b));_0x421e83={'oldPath':_0x49dbdf,'hasNewConfig':_0x9e4bb5,'fields':_0x28f761};break;}}const _0x19f875=[],_0x276b6b=resolve(_0x29ae53,'.lovrabet');if(existsSync(_0x276b6b))_0x19f875['push'](_0x276b6b);const _0x67f9a4=resolve(_0x29ae53,_0x4fc2f3(0x15f));if(existsSync(_0x67f9a4))_0x19f875[_0x4fc2f3(0x182)](_0x67f9a4);const _0x5013eb=resolve(_0x29ae53,_0x4fc2f3(0x180));if(existsSync(_0x5013eb))_0x19f875['push'](_0x5013eb);for(const _0x57be05 of collectIdeSkillFiles(_0x29ae53)){if(existsSync(_0x57be05))_0x19f875['push'](_0x57be05);}let _0x35bbc3=null;const _0x42dfa1=resolve(_0x29ae53,'.cursor/mcp.json');if(existsSync(_0x42dfa1))try{const _0x4afbf8=JSON[_0x4fc2f3(0x143)](readFileSync(_0x42dfa1,_0x4fc2f3(0x150)));if(_0x4afbf8?.[_0x4fc2f3(0x181)]&&typeof _0x4afbf8[_0x4fc2f3(0x181)]===_0x4fc2f3(0x17c)){const _0x3dfee3=[];for(const [_0x391e95,_0x38e6d2]of Object[_0x4fc2f3(0x16a)](_0x4afbf8[_0x4fc2f3(0x181)])){const _0x5c1730=_0x38e6d2;_0x5c1730?.[_0x4fc2f3(0x153)]&&Array['isArray'](_0x5c1730['args'])&&_0x5c1730[_0x4fc2f3(0x153)][_0x4fc2f3(0x160)](_0x3a307b=>typeof _0x3a307b==='string'&&_0x3a307b[_0x4fc2f3(0x169)](_0x4fc2f3(0x186)))&&_0x3dfee3[_0x4fc2f3(0x182)](_0x391e95);}_0x3dfee3[_0x4fc2f3(0x130)]>0x0&&(_0x35bbc3={'path':_0x42dfa1,'keys':_0x3dfee3});}}catch{}const _0x262c8c=_0x19f875[_0x4fc2f3(0x130)]>0x0||_0x421e83!==null;let _0x196b68=null;const _0x4e452c=resolve(_0x29ae53,_0x4fc2f3(0x173));if(existsSync(_0x4e452c))try{const _0x291b3c=JSON['parse'](readFileSync(_0x4e452c,_0x4fc2f3(0x150)));for(const _0x45e804 of['dependencies',_0x4fc2f3(0x14a)]){const _0x91685=_0x291b3c?.[_0x45e804]?.[_0x4fc2f3(0x15a)];if(typeof _0x91685===_0x4fc2f3(0x1a1)){_0x91685!==_0x4fc2f3(0x146)&&(_0x196b68={'pkgPath':_0x4e452c,'currentVersion':_0x91685,'field':_0x45e804});break;}}}catch{}return{'configMigration':_0x421e83,'oldArtifacts':_0x19f875,'oldMcpConfig':_0x35bbc3,'needsSkillSwap':_0x262c8c,'sdkUpgrade':_0x196b68};}function a136_0x2a8a(_0x1dc0a1,_0x2db43a){_0x1dc0a1=_0x1dc0a1-0x119;const _0x15ed59=a136_0x15ed();let _0x2a8a70=_0x15ed59[_0x1dc0a1];return _0x2a8a70;}function printReport(_0x3b644b){const _0x4f0f3=a136_0x1eca33,{configMigration:_0x44ac84,oldArtifacts:_0x194681,oldMcpConfig:_0x3fd9f8,needsSkillSwap:_0x56c9d5}=_0x3b644b;console[_0x4f0f3(0x17a)](''),console[_0x4f0f3(0x17a)](a136_0xf079f0['bold'](_0x4f0f3(0x14d))),console[_0x4f0f3(0x17a)]('');_0x44ac84?(console['log'](a136_0xf079f0[_0x4f0f3(0x172)](_0x4f0f3(0x11d))+('\x20\x20'+a136_0xf079f0[_0x4f0f3(0x190)](_0x44ac84['oldPath']))),console[_0x4f0f3(0x17a)](_0x4f0f3(0x14f)+(_0x44ac84[_0x4f0f3(0x18c)]?a136_0xf079f0[_0x4f0f3(0x12d)](_0x4f0f3(0x12a)):a136_0xf079f0[_0x4f0f3(0x12b)](_0x4f0f3(0x178)))),console['log']('\x20\x20Fields\x20to\x20migrate:\x20'+_0x44ac84[_0x4f0f3(0x174)][_0x4f0f3(0x175)](',\x20')),console[_0x4f0f3(0x17a)](_0x4f0f3(0x145))):console[_0x4f0f3(0x17a)](a136_0xf079f0[_0x4f0f3(0x172)](_0x4f0f3(0x11d))+'\x20\x20'+a136_0xf079f0[_0x4f0f3(0x12b)]('no\x20legacy\x20config\x20found'));console['log']('');if(_0x194681[_0x4f0f3(0x130)]>0x0){console[_0x4f0f3(0x17a)](a136_0xf079f0[_0x4f0f3(0x172)]('Legacy\x20artifacts:'));for(const _0x5ea8d7 of _0x194681){console[_0x4f0f3(0x17a)]('\x20\x20'+a136_0xf079f0[_0x4f0f3(0x16e)](_0x4f0f3(0x131))+'\x20\x20'+_0x5ea8d7);}console['log'](_0x4f0f3(0x194));}else console[_0x4f0f3(0x17a)](a136_0xf079f0[_0x4f0f3(0x172)](_0x4f0f3(0x119))+'\x20\x20'+a136_0xf079f0[_0x4f0f3(0x12b)](_0x4f0f3(0x18b)));console[_0x4f0f3(0x17a)]('');_0x3fd9f8?(console[_0x4f0f3(0x17a)](a136_0xf079f0[_0x4f0f3(0x172)](_0x4f0f3(0x17e))+('\x20\x20'+a136_0xf079f0[_0x4f0f3(0x190)](_0x3fd9f8[_0x4f0f3(0x12e)])+_0x4f0f3(0x123)+_0x3fd9f8[_0x4f0f3(0x197)][_0x4f0f3(0x175)](',\x20'))),console['log'](_0x4f0f3(0x19c))):console[_0x4f0f3(0x17a)](a136_0xf079f0[_0x4f0f3(0x172)](_0x4f0f3(0x17e))+'\x20\x20'+a136_0xf079f0[_0x4f0f3(0x12b)](_0x4f0f3(0x158)));console[_0x4f0f3(0x17a)](''),console[_0x4f0f3(0x17a)](a136_0xf079f0['cyan'](_0x4f0f3(0x1a0))+('\x20\x20'+(_0x56c9d5?a136_0xf079f0['yellow'](_0x4f0f3(0x126)):a136_0xf079f0['green'](_0x4f0f3(0x156)))));_0x56c9d5&&console[_0x4f0f3(0x17a)](_0x4f0f3(0x144)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x4f0f3(0x17a)]('');if(_0x3b644b[_0x4f0f3(0x171)]){const {currentVersion:_0x561084,field:_0x4971b0,pkgPath:_0x248492}=_0x3b644b['sdkUpgrade'];console['log'](a136_0xf079f0[_0x4f0f3(0x172)](_0x4f0f3(0x196))+('\x20\x20'+a136_0xf079f0[_0x4f0f3(0x190)](_0x248492))),console[_0x4f0f3(0x17a)](_0x4f0f3(0x141)+_0x4971b0+':\x20'+a136_0xf079f0[_0x4f0f3(0x190)](_0x561084)+'\x20→\x20'+a136_0xf079f0['green'](_0x4f0f3(0x146))),console[_0x4f0f3(0x17a)](_0x4f0f3(0x188));}else console['log'](a136_0xf079f0['cyan']('@lovrabet/sdk:')+'\x20\x20'+a136_0xf079f0[_0x4f0f3(0x12b)](_0x4f0f3(0x192)));console[_0x4f0f3(0x17a)]('');}function execConfigMigration(_0x170fbc,_0x315737){const _0x439995=a136_0x1eca33,{configMigration:_0x3d0d28}=_0x170fbc;if(!_0x3d0d28?.[_0x439995(0x18a)])return{'step':0x1,'label':_0x439995(0x121),'ok':!![],'detail':_0x439995(0x19b)};const _0x3f000a=readConfigFile(_0x3d0d28[_0x439995(0x18a)]),_0x591c6f=resolve(_0x315737,NEW_CONFIG_NAME),_0x23e508=_0x3d0d28[_0x439995(0x18c)]?readConfigFile(_0x591c6f):{};for(const [_0x1e9414,_0x367b55]of Object[_0x439995(0x16a)](_0x3f000a)){!(_0x1e9414 in _0x23e508)&&(_0x23e508[_0x1e9414]=_0x367b55);}writeConfigFile(_0x591c6f,_0x23e508);const _0x407da1=_0x3d0d28['oldPath']+_0x439995(0x13d);return renameSync(_0x3d0d28[_0x439995(0x18a)],_0x407da1),{'step':0x1,'label':_0x439995(0x121),'ok':!![],'detail':_0x3d0d28[_0x439995(0x18a)]+_0x439995(0x15d)+_0x591c6f+_0x439995(0x14e)+_0x407da1+')'};}function execRemoveOldArtifacts(_0x3e6517){const _0x2d764f=a136_0x1eca33,_0x560c41=[];for(const _0x1154ee of _0x3e6517){try{if(!existsSync(_0x1154ee))continue;const _0x3b6139=tryStat(_0x1154ee);_0x3b6139?.[_0x2d764f(0x11b)]()?rmSync(_0x1154ee,{'recursive':!![],'force':!![]}):unlinkSync(_0x1154ee);}catch(_0x190f60){_0x560c41[_0x2d764f(0x182)](_0x1154ee+':\x20'+_0x190f60[_0x2d764f(0x135)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x560c41[_0x2d764f(0x130)]===0x0,'detail':_0x560c41[_0x2d764f(0x130)]>0x0?_0x3e6517[_0x2d764f(0x130)]-_0x560c41[_0x2d764f(0x130)]+'/'+_0x3e6517[_0x2d764f(0x130)]+_0x2d764f(0x132)+_0x560c41[_0x2d764f(0x175)](';\x20')+')':_0x3e6517['length']+_0x2d764f(0x11c)};}function execCleanMcp(_0x478703){const _0x2aa3ac=a136_0x1eca33;if(!_0x478703[_0x2aa3ac(0x189)])return{'step':0x4,'label':_0x2aa3ac(0x120),'ok':!![],'detail':_0x2aa3ac(0x137)};try{const _0x58a9ad=readFileSync(_0x478703[_0x2aa3ac(0x189)]['path'],'utf8'),_0x4acf17=JSON[_0x2aa3ac(0x143)](_0x58a9ad);if(_0x4acf17?.['mcpServers']&&typeof _0x4acf17[_0x2aa3ac(0x181)]==='object'){const _0x206d5c=[];for(const [_0x16e847,_0x3e5076]of Object[_0x2aa3ac(0x16a)](_0x4acf17[_0x2aa3ac(0x181)])){_0x3e5076?.['args']&&Array[_0x2aa3ac(0x15e)](_0x3e5076[_0x2aa3ac(0x153)])&&_0x3e5076[_0x2aa3ac(0x153)][_0x2aa3ac(0x160)](_0x48cf0d=>typeof _0x48cf0d===_0x2aa3ac(0x1a1)&&_0x48cf0d[_0x2aa3ac(0x169)](_0x2aa3ac(0x186)))&&_0x206d5c[_0x2aa3ac(0x182)](_0x16e847);}for(const _0x90847a of _0x206d5c){delete _0x4acf17[_0x2aa3ac(0x181)][_0x90847a];}return _0x206d5c[_0x2aa3ac(0x130)]>0x0&&writeFileSync(_0x478703[_0x2aa3ac(0x189)]['path'],JSON[_0x2aa3ac(0x122)](_0x4acf17,null,0x2)+'\x0a',_0x2aa3ac(0x150)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x2aa3ac(0x140)+_0x206d5c[_0x2aa3ac(0x175)](',\x20')+'\x20from\x20'+_0x478703['oldMcpConfig']['path']};}return{'step':0x4,'label':_0x2aa3ac(0x120),'ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x4f133b){return{'step':0x4,'label':_0x2aa3ac(0x120),'ok':![],'detail':_0x4f133b['message']};}}function execSkillsRemove(_0x415639,_0x24c210){const _0x266826=a136_0x1eca33,_0x2268db=runNpxSkillsRemove(_0x415639,{'stdio':_0x266826(0x184),'yes':_0x24c210});return{'step':0x5,'label':_0x266826(0x161),'ok':_0x2268db['ok'],'detail':_0x2268db['ok']?'lovrabet/lovrabet-skill\x20removed':_0x2268db[_0x266826(0x128)]??_0x266826(0x162)+_0x2268db['status']};}function execSkillsAdd(_0x46d99c,_0xa1a9aa){const _0x50ee03=a136_0x1eca33,_0x373d2b=runNpxSkillsAddGlobal(_0x46d99c,_0x50ee03(0x187),{'stdio':'inherit','yes':_0xa1a9aa});return{'step':0x6,'label':_0x50ee03(0x19f),'ok':_0x373d2b['ok'],'detail':_0x373d2b['ok']?_0x50ee03(0x19e):_0x373d2b['error']??_0x50ee03(0x162)+_0x373d2b['status']};}function execUpgradeSdk(_0x3d0a95){const _0x1092a3=a136_0x1eca33;if(!_0x3d0a95['sdkUpgrade'])return{'step':0x7,'label':_0x1092a3(0x199),'ok':!![],'detail':_0x1092a3(0x11f)};const {pkgPath:_0x593778,currentVersion:_0x13c3f6,field:_0x5e055e}=_0x3d0a95[_0x1092a3(0x171)];try{const _0x96477=readFileSync(_0x593778,'utf8'),_0x5b3ea8=JSON[_0x1092a3(0x143)](_0x96477);return _0x5b3ea8[_0x5e055e][_0x1092a3(0x15a)]=_0x1092a3(0x146),writeFileSync(_0x593778,JSON[_0x1092a3(0x122)](_0x5b3ea8,null,0x2)+'\x0a',_0x1092a3(0x150)),{'step':0x7,'label':_0x1092a3(0x199),'ok':!![],'detail':_0x5e055e+_0x1092a3(0x147)+_0x13c3f6+_0x1092a3(0x163)};}catch(_0x116ee3){return{'step':0x7,'label':_0x1092a3(0x199),'ok':![],'detail':_0x116ee3[_0x1092a3(0x135)]};}}function tryStat(_0x495cfd){try{return statSync(_0x495cfd);}catch{return undefined;}}function printSummary(_0xbe3925){const _0x3ea50a=a136_0x1eca33;console[_0x3ea50a(0x17a)](''),console['log'](a136_0xf079f0[_0x3ea50a(0x179)](_0x3ea50a(0x18e))),console['log']('');for(const _0x551047 of _0xbe3925){const _0x32e9b6=_0x551047['ok']?a136_0xf079f0[_0x3ea50a(0x12d)]('OK'):a136_0xf079f0[_0x3ea50a(0x16e)](_0x3ea50a(0x177));console[_0x3ea50a(0x17a)]('\x20\x20'+_0x32e9b6+_0x3ea50a(0x13a)+_0x551047[_0x3ea50a(0x152)]+':\x20'+_0x551047[_0x3ea50a(0x159)]);if(_0x551047[_0x3ea50a(0x127)])console[_0x3ea50a(0x17a)]('\x20\x20\x20\x20\x20\x20\x20'+a136_0xf079f0[_0x3ea50a(0x12b)](_0x551047[_0x3ea50a(0x127)]));}console[_0x3ea50a(0x17a)]('');}export async function upgradeApp(_0x362b16,_0xbaa820){const _0x25068e=a136_0x1eca33,_0x3cad5b=process[_0x25068e(0x19a)](),_0x47add5=analyse(_0x3cad5b),_0x37f3c9=!_0x47add5[_0x25068e(0x18d)]&&_0x47add5['oldArtifacts']['length']===0x0&&!_0x47add5[_0x25068e(0x189)]&&!_0x47add5[_0x25068e(0x133)]&&!_0x47add5[_0x25068e(0x171)];if(_0x37f3c9){console[_0x25068e(0x17a)](a136_0xf079f0[_0x25068e(0x12d)](_0x25068e(0x13b)));return;}printReport(_0x47add5);const _0x3ddcee=!!(_0xbaa820[_0x25068e(0x191)]||_0xbaa820['Y']||_0x362b16);if(!_0x3ddcee)try{const _0x511c83=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x511c83){console[_0x25068e(0x17a)](a136_0xf079f0[_0x25068e(0x12b)](_0x25068e(0x142)));return;}}catch(_0x2e5b00){if(_0x2e5b00?.[_0x25068e(0x135)]==='CANCEL'){console[_0x25068e(0x17a)](a136_0xf079f0[_0x25068e(0x12b)](_0x25068e(0x142)));return;}throw _0x2e5b00;}const _0xe78a0c=[],_0x474340=a136_0x2c2eb8({'text':_0x25068e(0x198),'color':_0x25068e(0x172)})['start'](),_0x4bc40a=execConfigMigration(_0x47add5,_0x3cad5b);_0xe78a0c[_0x25068e(0x182)](_0x4bc40a),_0x474340[_0x4bc40a['ok']?_0x25068e(0x12c):_0x25068e(0x15c)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x4bc40a[_0x25068e(0x127)]??(_0x4bc40a['ok']?_0x25068e(0x12f):_0x25068e(0x16d))));const _0x147696=resolve(_0x3cad5b,_0x25068e(0x167)),_0x492134=a136_0x2c2eb8({'text':_0x25068e(0x11a),'color':'cyan'})[_0x25068e(0x148)]();if(existsSync(_0x147696))try{rmSync(_0x147696,{'recursive':!![],'force':!![]}),_0x492134[_0x25068e(0x12c)](_0x25068e(0x185)),_0xe78a0c[_0x25068e(0x182)]({'step':0x2,'label':_0x25068e(0x157),'ok':!![]});}catch(_0x182413){_0x492134[_0x25068e(0x15c)](_0x25068e(0x134)+_0x182413[_0x25068e(0x135)]),_0xe78a0c[_0x25068e(0x182)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x182413[_0x25068e(0x135)]});}else _0x492134[_0x25068e(0x15b)](_0x25068e(0x16f)),_0xe78a0c[_0x25068e(0x182)]({'step':0x2,'label':_0x25068e(0x157),'ok':!![],'detail':'skipped'});const _0xf44a59=a136_0x2c2eb8({'text':_0x25068e(0x193),'color':_0x25068e(0x172)})['start'](),_0x395ef0=execRemoveOldArtifacts(_0x47add5[_0x25068e(0x164)]);_0xe78a0c['push'](_0x395ef0),_0xf44a59[_0x395ef0['ok']?_0x25068e(0x12c):_0x25068e(0x15c)](_0x25068e(0x13c)+(_0x395ef0[_0x25068e(0x127)]??(_0x395ef0['ok']?_0x25068e(0x12f):_0x25068e(0x16d))));const _0x1aec14=a136_0x2c2eb8({'text':'Step\x204/7:\x20Cleaning\x20MCP\x20config...','color':'cyan'})[_0x25068e(0x148)](),_0x40d984=execCleanMcp(_0x47add5);_0xe78a0c['push'](_0x40d984),_0x1aec14[_0x40d984['ok']?_0x25068e(0x12c):_0x25068e(0x15c)](_0x25068e(0x16b)+(_0x40d984[_0x25068e(0x127)]??(_0x40d984['ok']?'done':_0x25068e(0x16d))));const _0x3d6c7a=a136_0x2c2eb8({'text':'Step\x205/7:\x20Removing\x20old\x20skill...','color':_0x25068e(0x172)})[_0x25068e(0x148)](),_0x3638ff=execSkillsRemove(_0x3cad5b,_0x3ddcee);_0xe78a0c[_0x25068e(0x182)](_0x3638ff),_0x3d6c7a[_0x3638ff['ok']?_0x25068e(0x12c):_0x25068e(0x15c)](_0x25068e(0x139)+(_0x3638ff['detail']??(_0x3638ff['ok']?_0x25068e(0x12f):_0x25068e(0x16d))));const _0x3fef18=a136_0x2c2eb8({'text':_0x25068e(0x151),'color':_0x25068e(0x172)})[_0x25068e(0x148)](),_0x1b6521=execSkillsAdd(_0x3cad5b,_0x3ddcee);_0xe78a0c['push'](_0x1b6521),_0x3fef18[_0x1b6521['ok']?_0x25068e(0x12c):_0x25068e(0x15c)](_0x25068e(0x124)+(_0x1b6521[_0x25068e(0x127)]??(_0x1b6521['ok']?_0x25068e(0x12f):'failed')));const _0x5f54e6=a136_0x2c2eb8({'text':_0x25068e(0x17d),'color':'cyan'})[_0x25068e(0x148)](),_0x330325=execUpgradeSdk(_0x47add5);_0xe78a0c['push'](_0x330325),_0x5f54e6[_0x330325['ok']?_0x25068e(0x12c):_0x25068e(0x15c)](_0x25068e(0x13e)+(_0x330325['detail']??(_0x330325['ok']?_0x25068e(0x12f):'failed'))),printSummary(_0xe78a0c);const _0x22b59d=_0xe78a0c[_0x25068e(0x160)](_0x302ca2=>!_0x302ca2['ok']);_0x22b59d?console[_0x25068e(0x17a)](a136_0xf079f0[_0x25068e(0x190)](_0x25068e(0x16c))):console['log'](a136_0xf079f0[_0x25068e(0x12d)](_0x25068e(0x14c))),_0x330325['ok']&&_0x47add5[_0x25068e(0x171)]&&(console[_0x25068e(0x17a)](''),console[_0x25068e(0x17a)](a136_0xf079f0[_0x25068e(0x179)][_0x25068e(0x172)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console['log'](a136_0xf079f0[_0x25068e(0x172)](_0x25068e(0x168))),console[_0x25068e(0x17a)](''),console[_0x25068e(0x17a)](a136_0xf079f0[_0x25068e(0x165)]('\x20\x20npm\x20install')),console['log'](a136_0xf079f0[_0x25068e(0x165)](_0x25068e(0x136))),console[_0x25068e(0x17a)](a136_0xf079f0[_0x25068e(0x165)](_0x25068e(0x129))),console[_0x25068e(0x17a)](''));}
1
+ (function(_0x2a31a9,_0x4f3515){const _0x19661a=a136_0x14c4,_0x578917=_0x2a31a9();while(!![]){try{const _0x405044=-parseInt(_0x19661a(0x10b))/0x1+-parseInt(_0x19661a(0x11c))/0x2+-parseInt(_0x19661a(0xe9))/0x3+-parseInt(_0x19661a(0xeb))/0x4*(-parseInt(_0x19661a(0x108))/0x5)+parseInt(_0x19661a(0x12f))/0x6+-parseInt(_0x19661a(0x10e))/0x7+parseInt(_0x19661a(0xe8))/0x8;if(_0x405044===_0x4f3515)break;else _0x578917['push'](_0x578917['shift']());}catch(_0x5e92fb){_0x578917['push'](_0x578917['shift']());}}}(a136_0x5671,0x6cc2a));import a136_0xa06575 from'chalk';import a136_0x535223 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';function a136_0x14c4(_0x4b9b01,_0x58fdb9){_0x4b9b01=_0x4b9b01-0xc2;const _0x5671d4=a136_0x5671();let _0x14c4b0=_0x5671d4[_0x4b9b01];return _0x14c4b0;}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['filter'](_0x19bf50=>_0x19bf50!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x305713){const _0x4c689d=a136_0x14c4,_0x3e3cdd=[];for(const _0x4f8ff8 of Object[_0x4c689d(0x128)](CORE_IDE_CONFIGS)){if(_0x4f8ff8[_0x4c689d(0x140)])for(const _0x30e5ca of _0x4f8ff8[_0x4c689d(0x140)]){_0x3e3cdd['push'](resolve(_0x305713,_0x30e5ca[_0x4c689d(0xcc)]));}}return _0x3e3cdd;}function analyse(_0x1da1c3){const _0x43c506=a136_0x14c4;let _0x5a0f3a=null;const _0x3f7558=resolve(_0x1da1c3,NEW_CONFIG_NAME),_0x59f836=existsSync(_0x3f7558);for(const _0x172231 of LEGACY_CONFIG_NAMES){const _0x459ba5=resolve(_0x1da1c3,_0x172231);if(existsSync(_0x459ba5)){const _0x2f436d=readConfigFile(_0x459ba5),_0x95c95e=Object[_0x43c506(0xe3)](_0x2f436d)[_0x43c506(0xe0)](_0x358e8e=>typeof _0x2f436d[_0x358e8e]!==_0x43c506(0xd0));_0x5a0f3a={'oldPath':_0x459ba5,'hasNewConfig':_0x59f836,'fields':_0x95c95e};break;}}const _0x952270=[],_0x5b20e8=resolve(_0x1da1c3,_0x43c506(0xd2));if(existsSync(_0x5b20e8))_0x952270[_0x43c506(0x119)](_0x5b20e8);const _0x477185=resolve(_0x1da1c3,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x477185))_0x952270[_0x43c506(0x119)](_0x477185);const _0x15fefe=resolve(_0x1da1c3,'.claude/skills/lovrabet');if(existsSync(_0x15fefe))_0x952270[_0x43c506(0x119)](_0x15fefe);for(const _0x280d48 of collectIdeSkillFiles(_0x1da1c3)){if(existsSync(_0x280d48))_0x952270[_0x43c506(0x119)](_0x280d48);}let _0x15b1bc=null;const _0xdd7aaf=resolve(_0x1da1c3,_0x43c506(0x100));if(existsSync(_0xdd7aaf))try{const _0xb74e73=JSON[_0x43c506(0xda)](readFileSync(_0xdd7aaf,_0x43c506(0xfd)));if(_0xb74e73?.[_0x43c506(0x142)]&&typeof _0xb74e73[_0x43c506(0x142)]===_0x43c506(0x115)){const _0x15c38f=[];for(const [_0x312e8f,_0x39b33f]of Object[_0x43c506(0xd1)](_0xb74e73['mcpServers'])){const _0x12d854=_0x39b33f;_0x12d854?.[_0x43c506(0x10d)]&&Array['isArray'](_0x12d854[_0x43c506(0x10d)])&&_0x12d854[_0x43c506(0x10d)][_0x43c506(0x11f)](_0x4e5647=>typeof _0x4e5647===_0x43c506(0xf2)&&_0x4e5647[_0x43c506(0xf1)](_0x43c506(0x127)))&&_0x15c38f[_0x43c506(0x119)](_0x312e8f);}_0x15c38f[_0x43c506(0x106)]>0x0&&(_0x15b1bc={'path':_0xdd7aaf,'keys':_0x15c38f});}}catch{}const _0x1c028d=_0x952270[_0x43c506(0x106)]>0x0||_0x5a0f3a!==null;let _0x32f844=null;const _0x1e0d9a=resolve(_0x1da1c3,_0x43c506(0x12d));if(existsSync(_0x1e0d9a))try{const _0x5ddd50=JSON[_0x43c506(0xda)](readFileSync(_0x1e0d9a,_0x43c506(0xfd)));for(const _0x50f69e of[_0x43c506(0x103),_0x43c506(0xcb)]){const _0x551fbe=_0x5ddd50?.[_0x50f69e]?.['@lovrabet/sdk'];if(typeof _0x551fbe===_0x43c506(0xf2)){_0x551fbe!==_0x43c506(0x10c)&&(_0x32f844={'pkgPath':_0x1e0d9a,'currentVersion':_0x551fbe,'field':_0x50f69e});break;}}}catch{}return{'configMigration':_0x5a0f3a,'oldArtifacts':_0x952270,'oldMcpConfig':_0x15b1bc,'needsSkillSwap':_0x1c028d,'sdkUpgrade':_0x32f844};}function a136_0x5671(){const _0x4eac67=['@lovrabet/sdk','isDirectory','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','Config\x20file:','utf8','Config\x20migration','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','.cursor/mcp.json','inherit','done','dependencies','yes','not\x20needed','length','hasNewConfig','5Pnvpqq','Legacy\x20artifacts:','\x20(backup:\x20','462376lQTePL','latest','args','3312855ZcVIfo','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','exit\x20','Step\x204/7:\x20MCP\x20config\x20—\x20','failed','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','detail','object','gray','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','[\x22@lovrabet/sdk\x22]:\x20','push','info','Step\x201/7:\x20Migrating\x20config...','1643736FOejpK','\x20→\x20latest','\x20\x20Fields\x20to\x20migrate:\x20','some','\x20removed\x20(','lovrabet/lovrabet-skill\x20removed','isArray','skipped\x20(no\x20legacy\x20config)','succeed','green','red','@lovrabet/dataset-mcp-server','values','not\x20found\x20(will\x20create)','fields','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','\x20→\x20keys:\x20','package.json','Step\x206/7:\x20Installing\x20new\x20skill...','1534806AoyRnh','oldPath','label','needsSkillSwap','\x20\x20#\x20or','===\x20Upgrade\x20Analysis\x20===','stringify','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','Upgrade\x20cancelled.','lovrabet/rabetbase\x20installed\x20globally','Remove\x20.lovrabet/','===\x20Upgrade\x20Summary\x20===','\x20→\x20','oldArtifacts','\x20\x20npm\x20install','\x20\x20\x20\x20\x20\x20\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','files','yellow','mcpServers','no\x20matching\x20entry\x20found','\x20removed','cwd','none\x20found','Step\x205/7:\x20Removing\x20old\x20skill...','\x20\x20Step\x20','join','no\x20legacy\x20config\x20found','Install\x20new\x20skill','devDependencies','path','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','MCP\x20config:','status','undefined','entries','.lovrabet','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','Upgrade\x20completed\x20successfully!','Step\x201/7:\x20Config\x20migration\x20—\x20','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','CANCEL','cyan','lovrabet/rabetbase','parse','bold','oldMcpConfig','fail','\x20from\x20','@lovrabet/sdk:','filter','Upgrade\x20@lovrabet/sdk','needed','keys','start','Clean\x20MCP\x20config','\x20\x20bun\x20install','white','12549080Dtavhl','265299CEDWBb','skipped','1867952PjKsBl','Remove\x20old\x20skill','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','Proceed\x20with\x20upgrade?','message','log','includes','string','.bak','sdkUpgrade','already\x20exists\x20(will\x20merge)','FOUND','error','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...'];a136_0x5671=function(){return _0x4eac67;};return a136_0x5671();}function printReport(_0x5772fd){const _0x5f06c4=a136_0x14c4,{configMigration:_0x49c0cc,oldArtifacts:_0x295488,oldMcpConfig:_0xd8bc68,needsSkillSwap:_0x55ea32}=_0x5772fd;console[_0x5f06c4(0xf0)](''),console[_0x5f06c4(0xf0)](a136_0xa06575['bold'](_0x5f06c4(0x134))),console[_0x5f06c4(0xf0)]('');_0x49c0cc?(console[_0x5f06c4(0xf0)](a136_0xa06575[_0x5f06c4(0xd8)](_0x5f06c4(0xfc))+('\x20\x20'+a136_0xa06575['yellow'](_0x49c0cc['oldPath']))),console['log']('\x20\x20New\x20config\x20(.rabetbase.json):\x20'+(_0x49c0cc[_0x5f06c4(0x107)]?a136_0xa06575['green'](_0x5f06c4(0xf5)):a136_0xa06575[_0x5f06c4(0x116)](_0x5f06c4(0x129)))),console[_0x5f06c4(0xf0)](_0x5f06c4(0x11e)+_0x49c0cc[_0x5f06c4(0x12a)]['join'](',\x20')),console[_0x5f06c4(0xf0)](_0x5f06c4(0xd3))):console['log'](a136_0xa06575[_0x5f06c4(0xd8)](_0x5f06c4(0xfc))+'\x20\x20'+a136_0xa06575[_0x5f06c4(0x116)](_0x5f06c4(0xc9)));console[_0x5f06c4(0xf0)]('');if(_0x295488[_0x5f06c4(0x106)]>0x0){console[_0x5f06c4(0xf0)](a136_0xa06575[_0x5f06c4(0xd8)](_0x5f06c4(0x109)));for(const _0x479cb8 of _0x295488){console[_0x5f06c4(0xf0)]('\x20\x20'+a136_0xa06575['red'](_0x5f06c4(0xf6))+'\x20\x20'+_0x479cb8);}console[_0x5f06c4(0xf0)]('\x20\x20Action:\x20delete');}else console[_0x5f06c4(0xf0)](a136_0xa06575[_0x5f06c4(0xd8)]('Legacy\x20artifacts:')+'\x20\x20'+a136_0xa06575[_0x5f06c4(0x116)](_0x5f06c4(0xc5)));console['log']('');_0xd8bc68?(console[_0x5f06c4(0xf0)](a136_0xa06575['cyan'](_0x5f06c4(0xce))+('\x20\x20'+a136_0xa06575['yellow'](_0xd8bc68[_0x5f06c4(0xcc)])+_0x5f06c4(0x12c)+_0xd8bc68[_0x5f06c4(0xe3)]['join'](',\x20'))),console[_0x5f06c4(0xf0)](_0x5f06c4(0x10f))):console[_0x5f06c4(0xf0)](a136_0xa06575[_0x5f06c4(0xd8)]('MCP\x20config:')+'\x20\x20'+a136_0xa06575['gray']('no\x20legacy\x20entry'));console['log'](''),console[_0x5f06c4(0xf0)](a136_0xa06575[_0x5f06c4(0xd8)]('Skill\x20swap:')+('\x20\x20'+(_0x55ea32?a136_0xa06575[_0x5f06c4(0x141)](_0x5f06c4(0xe2)):a136_0xa06575[_0x5f06c4(0x125)](_0x5f06c4(0x105)))));_0x55ea32&&console[_0x5f06c4(0xf0)](_0x5f06c4(0x117)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x5f06c4(0xf0)]('');if(_0x5772fd[_0x5f06c4(0xf4)]){const {currentVersion:_0x255cf1,field:_0xd301a5,pkgPath:_0x1f9cab}=_0x5772fd['sdkUpgrade'];console[_0x5f06c4(0xf0)](a136_0xa06575[_0x5f06c4(0xd8)](_0x5f06c4(0xdf))+('\x20\x20'+a136_0xa06575[_0x5f06c4(0x141)](_0x1f9cab))),console[_0x5f06c4(0xf0)]('\x20\x20Current\x20version\x20in\x20'+_0xd301a5+':\x20'+a136_0xa06575[_0x5f06c4(0x141)](_0x255cf1)+_0x5f06c4(0x13b)+a136_0xa06575[_0x5f06c4(0x125)](_0x5f06c4(0x10c))),console['log'](_0x5f06c4(0x13f));}else console[_0x5f06c4(0xf0)](a136_0xa06575[_0x5f06c4(0xd8)](_0x5f06c4(0xdf))+'\x20\x20'+a136_0xa06575[_0x5f06c4(0x116)]('not\x20found\x20or\x20already\x20at\x20latest'));console['log']('');}function execConfigMigration(_0x18bf8e,_0xafb64){const _0x1ea4b6=a136_0x14c4,{configMigration:_0x5b8b5f}=_0x18bf8e;if(!_0x5b8b5f?.[_0x1ea4b6(0x130)])return{'step':0x1,'label':_0x1ea4b6(0xfe),'ok':!![],'detail':_0x1ea4b6(0x123)};const _0x1ed0ea=readConfigFile(_0x5b8b5f[_0x1ea4b6(0x130)]),_0x39150e=resolve(_0xafb64,NEW_CONFIG_NAME),_0x2053e7=_0x5b8b5f[_0x1ea4b6(0x107)]?readConfigFile(_0x39150e):{};for(const [_0x14fbee,_0x11bb7f]of Object[_0x1ea4b6(0xd1)](_0x1ed0ea)){!(_0x14fbee in _0x2053e7)&&(_0x2053e7[_0x14fbee]=_0x11bb7f);}writeConfigFile(_0x39150e,_0x2053e7);const _0x46ec18=_0x5b8b5f['oldPath']+_0x1ea4b6(0xf3);return renameSync(_0x5b8b5f[_0x1ea4b6(0x130)],_0x46ec18),{'step':0x1,'label':_0x1ea4b6(0xfe),'ok':!![],'detail':_0x5b8b5f['oldPath']+'\x20→\x20'+_0x39150e+_0x1ea4b6(0x10a)+_0x46ec18+')'};}function execRemoveOldArtifacts(_0x3f25b0){const _0x58d969=a136_0x14c4,_0x29a09a=[];for(const _0x462508 of _0x3f25b0){try{if(!existsSync(_0x462508))continue;const _0x189bea=tryStat(_0x462508);_0x189bea?.[_0x58d969(0xfa)]()?rmSync(_0x462508,{'recursive':!![],'force':!![]}):unlinkSync(_0x462508);}catch(_0xd301ef){_0x29a09a[_0x58d969(0x119)](_0x462508+':\x20'+_0xd301ef[_0x58d969(0xef)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x29a09a['length']===0x0,'detail':_0x29a09a['length']>0x0?_0x3f25b0[_0x58d969(0x106)]-_0x29a09a['length']+'/'+_0x3f25b0[_0x58d969(0x106)]+_0x58d969(0x120)+_0x29a09a[_0x58d969(0xc8)](';\x20')+')':_0x3f25b0[_0x58d969(0x106)]+_0x58d969(0xc3)};}function execCleanMcp(_0x7de2ff){const _0x18f572=a136_0x14c4;if(!_0x7de2ff[_0x18f572(0xdc)])return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x18f572(0xea)};try{const _0x5b79a7=readFileSync(_0x7de2ff[_0x18f572(0xdc)][_0x18f572(0xcc)],_0x18f572(0xfd)),_0x5db487=JSON[_0x18f572(0xda)](_0x5b79a7);if(_0x5db487?.['mcpServers']&&typeof _0x5db487[_0x18f572(0x142)]===_0x18f572(0x115)){const _0x160a5c=[];for(const [_0xbf584b,_0x38e402]of Object[_0x18f572(0xd1)](_0x5db487['mcpServers'])){_0x38e402?.['args']&&Array[_0x18f572(0x122)](_0x38e402[_0x18f572(0x10d)])&&_0x38e402[_0x18f572(0x10d)][_0x18f572(0x11f)](_0x13515d=>typeof _0x13515d==='string'&&_0x13515d[_0x18f572(0xf1)](_0x18f572(0x127)))&&_0x160a5c[_0x18f572(0x119)](_0xbf584b);}for(const _0x48c77d of _0x160a5c){delete _0x5db487[_0x18f572(0x142)][_0x48c77d];}return _0x160a5c[_0x18f572(0x106)]>0x0&&writeFileSync(_0x7de2ff['oldMcpConfig'][_0x18f572(0xcc)],JSON['stringify'](_0x5db487,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x18f572(0xe5),'ok':!![],'detail':'removed\x20'+_0x160a5c['join'](',\x20')+_0x18f572(0xde)+_0x7de2ff['oldMcpConfig']['path']};}return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x18f572(0xc2)};}catch(_0x798081){return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':![],'detail':_0x798081[_0x18f572(0xef)]};}}function execSkillsRemove(_0x577bcf,_0x25811c){const _0x49c0b8=a136_0x14c4,_0x51d43f=runNpxSkillsRemove(_0x577bcf,{'stdio':_0x49c0b8(0x101),'yes':_0x25811c});return{'step':0x5,'label':_0x49c0b8(0xec),'ok':_0x51d43f['ok'],'detail':_0x51d43f['ok']?_0x49c0b8(0x121):_0x51d43f[_0x49c0b8(0xf7)]??_0x49c0b8(0x110)+_0x51d43f[_0x49c0b8(0xcf)]};}function execSkillsAdd(_0x444e0e,_0x402c0a){const _0x4ffec3=a136_0x14c4,_0x222a43=runNpxSkillsAddGlobal(_0x444e0e,_0x4ffec3(0xd9),{'stdio':_0x4ffec3(0x101),'yes':_0x402c0a});return{'step':0x6,'label':_0x4ffec3(0xca),'ok':_0x222a43['ok'],'detail':_0x222a43['ok']?_0x4ffec3(0x138):_0x222a43[_0x4ffec3(0xf7)]??_0x4ffec3(0x110)+_0x222a43[_0x4ffec3(0xcf)]};}function execUpgradeSdk(_0x16f014){const _0x1d5b2d=a136_0x14c4;if(!_0x16f014[_0x1d5b2d(0xf4)])return{'step':0x7,'label':_0x1d5b2d(0xe1),'ok':!![],'detail':_0x1d5b2d(0xfb)};const {pkgPath:_0x15b601,currentVersion:_0x40a5fe,field:_0x13d255}=_0x16f014[_0x1d5b2d(0xf4)];try{const _0x434be1=readFileSync(_0x15b601,_0x1d5b2d(0xfd)),_0x239714=JSON[_0x1d5b2d(0xda)](_0x434be1);return _0x239714[_0x13d255][_0x1d5b2d(0xf9)]='latest',writeFileSync(_0x15b601,JSON[_0x1d5b2d(0x135)](_0x239714,null,0x2)+'\x0a',_0x1d5b2d(0xfd)),{'step':0x7,'label':_0x1d5b2d(0xe1),'ok':!![],'detail':_0x13d255+_0x1d5b2d(0x118)+_0x40a5fe+_0x1d5b2d(0x11d)};}catch(_0x4f5391){return{'step':0x7,'label':_0x1d5b2d(0xe1),'ok':![],'detail':_0x4f5391[_0x1d5b2d(0xef)]};}}function tryStat(_0x1a6a70){try{return statSync(_0x1a6a70);}catch{return undefined;}}function printSummary(_0x92834f){const _0x80ec84=a136_0x14c4;console['log'](''),console['log'](a136_0xa06575['bold'](_0x80ec84(0x13a))),console['log']('');for(const _0x3aece1 of _0x92834f){const _0x10c0b5=_0x3aece1['ok']?a136_0xa06575['green']('OK'):a136_0xa06575[_0x80ec84(0x126)]('FAIL');console[_0x80ec84(0xf0)]('\x20\x20'+_0x10c0b5+_0x80ec84(0xc7)+_0x3aece1['step']+':\x20'+_0x3aece1[_0x80ec84(0x131)]);if(_0x3aece1[_0x80ec84(0x114)])console[_0x80ec84(0xf0)](_0x80ec84(0x13e)+a136_0xa06575[_0x80ec84(0x116)](_0x3aece1[_0x80ec84(0x114)]));}console[_0x80ec84(0xf0)]('');}export async function upgradeApp(_0x54debd,_0x316ec7){const _0x54cd97=a136_0x14c4,_0x7cde5d=process[_0x54cd97(0xc4)](),_0x2b66d9=analyse(_0x7cde5d),_0x9f9296=!_0x2b66d9['configMigration']&&_0x2b66d9[_0x54cd97(0x13c)][_0x54cd97(0x106)]===0x0&&!_0x2b66d9[_0x54cd97(0xdc)]&&!_0x2b66d9[_0x54cd97(0x132)]&&!_0x2b66d9['sdkUpgrade'];if(_0x9f9296){console[_0x54cd97(0xf0)](a136_0xa06575[_0x54cd97(0x125)](_0x54cd97(0x12b)));return;}printReport(_0x2b66d9);const _0x59d8df=!!(_0x316ec7[_0x54cd97(0x104)]||_0x316ec7['Y']||_0x54debd);if(!_0x59d8df)try{const _0x49b023=await askConfirm(_0x54cd97(0xee));if(!_0x49b023){console[_0x54cd97(0xf0)](a136_0xa06575[_0x54cd97(0x116)](_0x54cd97(0x137)));return;}}catch(_0x33ab04){if(_0x33ab04?.[_0x54cd97(0xef)]===_0x54cd97(0xd7)){console[_0x54cd97(0xf0)](a136_0xa06575[_0x54cd97(0x116)](_0x54cd97(0x137)));return;}throw _0x33ab04;}const _0xd57254=[],_0x3a65e7=a136_0x535223({'text':_0x54cd97(0x11b),'color':_0x54cd97(0xd8)})[_0x54cd97(0xe4)](),_0x1d9a53=execConfigMigration(_0x2b66d9,_0x7cde5d);_0xd57254[_0x54cd97(0x119)](_0x1d9a53),_0x3a65e7[_0x1d9a53['ok']?_0x54cd97(0x124):_0x54cd97(0xdd)](_0x54cd97(0xd5)+(_0x1d9a53[_0x54cd97(0x114)]??(_0x1d9a53['ok']?_0x54cd97(0x102):_0x54cd97(0x112))));const _0x29a7f2=resolve(_0x7cde5d,'.lovrabet'),_0x50b87d=a136_0x535223({'text':_0x54cd97(0xf8),'color':_0x54cd97(0xd8)})[_0x54cd97(0xe4)]();if(existsSync(_0x29a7f2))try{rmSync(_0x29a7f2,{'recursive':!![],'force':!![]}),_0x50b87d[_0x54cd97(0x124)](_0x54cd97(0xcd)),_0xd57254[_0x54cd97(0x119)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x1838a7){_0x50b87d[_0x54cd97(0xdd)]('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x1838a7[_0x54cd97(0xef)]),_0xd57254[_0x54cd97(0x119)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x1838a7[_0x54cd97(0xef)]});}else _0x50b87d[_0x54cd97(0x11a)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0xd57254[_0x54cd97(0x119)]({'step':0x2,'label':_0x54cd97(0x139),'ok':!![],'detail':'skipped'});const _0x1a4179=a136_0x535223({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x54cd97(0xd8)})[_0x54cd97(0xe4)](),_0x81e17c=execRemoveOldArtifacts(_0x2b66d9[_0x54cd97(0x13c)]);_0xd57254[_0x54cd97(0x119)](_0x81e17c),_0x1a4179[_0x81e17c['ok']?_0x54cd97(0x124):_0x54cd97(0xdd)](_0x54cd97(0x113)+(_0x81e17c['detail']??(_0x81e17c['ok']?_0x54cd97(0x102):_0x54cd97(0x112))));const _0x2b658e=a136_0x535223({'text':'Step\x204/7:\x20Cleaning\x20MCP\x20config...','color':_0x54cd97(0xd8)})[_0x54cd97(0xe4)](),_0xe714c5=execCleanMcp(_0x2b66d9);_0xd57254[_0x54cd97(0x119)](_0xe714c5),_0x2b658e[_0xe714c5['ok']?_0x54cd97(0x124):_0x54cd97(0xdd)](_0x54cd97(0x111)+(_0xe714c5[_0x54cd97(0x114)]??(_0xe714c5['ok']?_0x54cd97(0x102):_0x54cd97(0x112))));const _0x41f43d=a136_0x535223({'text':_0x54cd97(0xc6),'color':'cyan'})[_0x54cd97(0xe4)](),_0x15b52d=execSkillsRemove(_0x7cde5d,_0x59d8df);_0xd57254[_0x54cd97(0x119)](_0x15b52d),_0x41f43d[_0x15b52d['ok']?_0x54cd97(0x124):'fail'](_0x54cd97(0xd6)+(_0x15b52d[_0x54cd97(0x114)]??(_0x15b52d['ok']?'done':_0x54cd97(0x112))));const _0x14b842=a136_0x535223({'text':_0x54cd97(0x12e),'color':'cyan'})[_0x54cd97(0xe4)](),_0x599e95=execSkillsAdd(_0x7cde5d,_0x59d8df);_0xd57254[_0x54cd97(0x119)](_0x599e95),_0x14b842[_0x599e95['ok']?_0x54cd97(0x124):'fail'](_0x54cd97(0x136)+(_0x599e95[_0x54cd97(0x114)]??(_0x599e95['ok']?_0x54cd97(0x102):_0x54cd97(0x112))));const _0x207649=a136_0x535223({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':'cyan'})['start'](),_0x112c79=execUpgradeSdk(_0x2b66d9);_0xd57254[_0x54cd97(0x119)](_0x112c79),_0x207649[_0x112c79['ok']?_0x54cd97(0x124):_0x54cd97(0xdd)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0x112c79['detail']??(_0x112c79['ok']?_0x54cd97(0x102):_0x54cd97(0x112)))),printSummary(_0xd57254);const _0x4ce065=_0xd57254['some'](_0x2fb4c3=>!_0x2fb4c3['ok']);_0x4ce065?console[_0x54cd97(0xf0)](a136_0xa06575['yellow'](_0x54cd97(0xff))):console[_0x54cd97(0xf0)](a136_0xa06575[_0x54cd97(0x125)](_0x54cd97(0xd4))),_0x112c79['ok']&&_0x2b66d9[_0x54cd97(0xf4)]&&(console[_0x54cd97(0xf0)](''),console['log'](a136_0xa06575[_0x54cd97(0xdb)][_0x54cd97(0xd8)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x54cd97(0xf0)](a136_0xa06575[_0x54cd97(0xd8)](_0x54cd97(0xed))),console[_0x54cd97(0xf0)](''),console[_0x54cd97(0xf0)](a136_0xa06575['white'](_0x54cd97(0x13d))),console['log'](a136_0xa06575[_0x54cd97(0xe7)](_0x54cd97(0x133))),console[_0x54cd97(0xf0)](a136_0xa06575['white'](_0x54cd97(0xe6))),console['log'](''));}
@@ -1 +1 @@
1
- const a137_0x488f8e=a137_0x21ba;(function(_0x5bf601,_0x54bcae){const _0x56b3c4=a137_0x21ba,_0x1b43e2=_0x5bf601();while(!![]){try{const _0x133679=parseInt(_0x56b3c4(0x17e))/0x1+parseInt(_0x56b3c4(0x1af))/0x2*(parseInt(_0x56b3c4(0x1a8))/0x3)+parseInt(_0x56b3c4(0x1b2))/0x4+parseInt(_0x56b3c4(0x1b0))/0x5*(parseInt(_0x56b3c4(0x194))/0x6)+-parseInt(_0x56b3c4(0x188))/0x7*(parseInt(_0x56b3c4(0x177))/0x8)+parseInt(_0x56b3c4(0x19c))/0x9+parseInt(_0x56b3c4(0x1b1))/0xa*(-parseInt(_0x56b3c4(0x18b))/0xb);if(_0x133679===_0x54bcae)break;else _0x1b43e2['push'](_0x1b43e2['shift']());}catch(_0x188759){_0x1b43e2['push'](_0x1b43e2['shift']());}}}(a137_0xb483,0xc27eb));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';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=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x306426){const _0x2295bc=a137_0x21ba;for(const _0x5b7125 of _0x306426){definitions[_0x2295bc(0x173)](_0x5b7125[_0x2295bc(0x191)]+':'+_0x5b7125[_0x2295bc(0x196)],_0x5b7125);let _0x166ab6=serviceGroups[_0x2295bc(0x198)](_0x5b7125['service']);!_0x166ab6&&(_0x166ab6=[],serviceGroups['set'](_0x5b7125[_0x2295bc(0x191)],_0x166ab6)),_0x166ab6[_0x2295bc(0x19f)](_0x5b7125);}}function registerDeclarativeService(_0x4ae0eb,_0x39e6c1,_0x1d9a3b){const _0x3f22b1=a137_0x21ba;registerDefinitions(_0x39e6c1);_0x1d9a3b?.[_0x3f22b1(0x1ab)]&&registerDefinitions([_0x1d9a3b[_0x3f22b1(0x1ab)]]);const _0x2c746c=_0x54c3ed=>_0x54c3ed==='read'?'':_0x54c3ed===_0x3f22b1(0x183)?_0x3f22b1(0x1a5):_0x3f22b1(0x1ad),_0xb1c308={'service':_0x39e6c1[0x0]['service'],'label':_0x4ae0eb,'commands':_0x39e6c1[_0x3f22b1(0x1a4)](_0x3d3555=>!_0x3d3555[_0x3f22b1(0x19b)])[_0x3f22b1(0x1aa)](_0x376369=>({'command':_0x376369[_0x3f22b1(0x196)],'description':_0x376369['description'],'tag':_0x2c746c(_0x376369[_0x3f22b1(0x1a2)])})),'declarative':!![],'defaultCommand':_0x1d9a3b?.['defaultCommand']??(_0x1d9a3b?.['isSingleCommand']?_0x39e6c1[0x0][_0x3f22b1(0x196)]:undefined),'wildcardDef':_0x1d9a3b?.[_0x3f22b1(0x1ab)],'isSingleCommand':_0x1d9a3b?.[_0x3f22b1(0x181)]};serviceRegistry[_0x3f22b1(0x19f)](_0xb1c308),serviceByName[_0x3f22b1(0x173)](_0xb1c308[_0x3f22b1(0x191)],_0xb1c308);}registerDeclarativeService(a137_0x488f8e(0x1ae),initDefinitions,{'defaultCommand':a137_0x488f8e(0x1ac),'isSingleCommand':!![]}),registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a137_0x488f8e(0x182),workspaceDefinitions),registerDeclarativeService(a137_0x488f8e(0x19e),appDefinitions),registerDeclarativeService(a137_0x488f8e(0x186),authDefinitions,{'defaultCommand':'login'}),registerDeclarativeService(a137_0x488f8e(0x18d),datasetDefinitions),registerDeclarativeService(a137_0x488f8e(0x17c),pageDefinitions),registerDeclarativeService(a137_0x488f8e(0x1a3),apiDefinitions),registerDeclarativeService(a137_0x488f8e(0x17f),dataDefinitions),registerDeclarativeService('BFF\x20Scripts',bffDefinitions),registerDeclarativeService('SQL\x20Queries',sqlDefinitions),registerDeclarativeService('Database\x20Connections',dbDefinitions),registerDeclarativeService('Menu',menuDefinitions),registerDeclarativeService('Roles',roleDefinitions),registerDeclarativeService(a137_0x488f8e(0x18e),permitDefinitions),registerDeclarativeService(a137_0x488f8e(0x179),appConfigDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService('Code\x20Generation',codegenDefinitions),registerDeclarativeService(a137_0x488f8e(0x197),configDefinitions),registerDeclarativeService(a137_0x488f8e(0x17d),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a137_0x488f8e(0x1a7),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('CLI\x20Built-in\x20Skill',cliSkillDefinitions,{'defaultCommand':a137_0x488f8e(0x172)}),registerDeclarativeService(a137_0x488f8e(0x192),logsDefinitions,{'defaultCommand':a137_0x488f8e(0x180)}),registerDeclarativeService(a137_0x488f8e(0x18f),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry['length']-0x1];last[a137_0x488f8e(0x189)]=[{'command':a137_0x488f8e(0x174),'description':a137_0x488f8e(0x1a0),'tag':''}];}function a137_0x21ba(_0x324302,_0x12359a){_0x324302=_0x324302-0x172;const _0xb4839d=a137_0xb483();let _0x21ba51=_0xb4839d[_0x324302];return _0x21ba51;}function a137_0xb483(){const _0xc1bbd2=['skill','create','hidden','2474982WdGokf','app','App\x20Management','push','Run\x20any\x20package.json\x20script','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','risk','API\x20Development','filter','\x20\x20[write]','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','Schema','3SfjmDq','`rabetbase\x20','map','wildcardDef','run','\x20\x20[high-risk-write]','Quick\x20Start','264154pMCeBV','6229805sGjfOM','50cZznce','2277124ZhMYsw','skills','install','set','<script>','skill\x20','has','184GqAGfJ','use','Runtime\x20App\x20Config\x20Management','start','Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.','Smart\x20List\x20Pages','Diagnostics','804447XhzUhh','Instant\x20API','show','isSingleCommand','Workspace','write','logout','`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','Authentication','`rabetbase\x20skills`\x20has\x20been\x20removed.','352072bhuCVU','commands','auth','2361271UJgyvC','remote','Dataset\x20&\x20Operations','Permissions','Run\x20Scripts','from','service','Logs','project','6mNdCVQ','`\x20has\x20been\x20removed.','command','Configuration','get'];a137_0xb483=function(){return _0xc1bbd2;};return a137_0xb483();}export const deprecatedAliases={'create':{'service':a137_0x488f8e(0x193),'command':a137_0x488f8e(0x19a)},'start':{'service':a137_0x488f8e(0x1ac),'command':a137_0x488f8e(0x17a)},'build':{'service':a137_0x488f8e(0x1ac),'command':'build'},'preview':{'service':a137_0x488f8e(0x1ac),'command':'preview'},'logout':{'service':a137_0x488f8e(0x18a),'command':a137_0x488f8e(0x184)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a137_0x488f8e(0x1a1),APP_REMOTE_REMOVED_HINT=a137_0x488f8e(0x1a6),APP_USE_REMOVED_HINT=a137_0x488f8e(0x17b);export function resolveRemovedCommand(_0x31b92c,_0x45bfe5){const _0x465e24=a137_0x488f8e;if(_0x31b92c===_0x465e24(0x199)){const _0x407dc8=_0x45bfe5?_0x465e24(0x175)+_0x45bfe5:_0x465e24(0x199);return{'command':_0x407dc8,'message':_0x465e24(0x1a9)+_0x407dc8+_0x465e24(0x195),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x31b92c===_0x465e24(0x1b3))return{'command':_0x465e24(0x1b3),'message':_0x465e24(0x187),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x31b92c===_0x465e24(0x19d)&&_0x45bfe5===_0x465e24(0x18c))return{'command':'app\x20remote','message':'`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','hint':APP_REMOTE_REMOVED_HINT};if(_0x31b92c===_0x465e24(0x19d)&&_0x45bfe5===_0x465e24(0x178))return{'command':'app\x20use','message':_0x465e24(0x185),'hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':'create'},'sql':{'new':a137_0x488f8e(0x19a)}};export function resolveDeprecatedSubcommand(_0x3baa23,_0x568f2f){return deprecatedSubcommands[_0x3baa23]?.[_0x568f2f];}export function findDefinition(_0x1accb1,_0x3df804){const _0x5551f5=a137_0x488f8e;return definitions[_0x5551f5(0x198)](_0x1accb1+':'+_0x3df804);}export function isKnownService(_0x233596){const _0x5b84ed=a137_0x488f8e;return serviceByName[_0x5b84ed(0x176)](_0x233596);}export function isDeclarativeService(_0x1f3e3e){const _0xa16ed=a137_0x488f8e;return serviceGroups[_0xa16ed(0x176)](_0x1f3e3e)||serviceByName[_0xa16ed(0x198)](_0x1f3e3e)?.[_0xa16ed(0x1ab)]!==undefined;}export function getServiceEntry(_0x22e11f){const _0x3dd3ad=a137_0x488f8e;return serviceByName[_0x3dd3ad(0x198)](_0x22e11f);}export function getLegacyHandler(_0x33f18d,_0x330888){return undefined;}export function getAllDefinitions(){const _0x5c5012=a137_0x488f8e;return Array[_0x5c5012(0x190)](definitions['values']());}
1
+ const a137_0x185f8a=a137_0x38c2;(function(_0x3a7ec7,_0x1377cd){const _0x56b322=a137_0x38c2,_0x5f596f=_0x3a7ec7();while(!![]){try{const _0x357db3=-parseInt(_0x56b322(0x1eb))/0x1+parseInt(_0x56b322(0x1f4))/0x2*(-parseInt(_0x56b322(0x1e8))/0x3)+-parseInt(_0x56b322(0x20e))/0x4+-parseInt(_0x56b322(0x21f))/0x5*(-parseInt(_0x56b322(0x200))/0x6)+parseInt(_0x56b322(0x22c))/0x7*(-parseInt(_0x56b322(0x223))/0x8)+-parseInt(_0x56b322(0x20d))/0x9*(-parseInt(_0x56b322(0x225))/0xa)+parseInt(_0x56b322(0x21b))/0xb;if(_0x357db3===_0x1377cd)break;else _0x5f596f['push'](_0x5f596f['shift']());}catch(_0x59ecbc){_0x5f596f['push'](_0x5f596f['shift']());}}}(a137_0x5223,0xbb88b));import{apiDefinitions}from'../commands/api/index.js';function a137_0x5223(){const _0x5e7378=['<script>','Platform\x20Issue','build','Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.','remote','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','Configuration','app\x20use','Schema','764973yuxITs','5399992hBNPqq','\x20\x20[high-risk-write]','command','logout','Run\x20any\x20package.json\x20script','get','service','CLI\x20Built-in\x20Skill','\x20\x20[write]','defaultCommand','Project','description','length','35526447kcPTVd','Instant\x20API','Smart\x20List\x20Pages','app','5sRhUYb','`\x20has\x20been\x20removed.','wildcardDef','isSingleCommand','400btjoqN','Menu','10hVwJnw','app\x20remote','run','commands','set','write','from','192248faThBc','login','71826VFcbFb','Dataset\x20&\x20Operations','Diagnostics','193516NliYzJ','use','risk','has','`rabetbase\x20','Workspace','values','filter','skills','68ejKdcb','read','Roles','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','project','Self\x20Update','map','skill','push','Runtime\x20App\x20Config\x20Management','skill\x20','Run\x20Scripts','7105242RwDEpl','create','Permissions'];a137_0x5223=function(){return _0x5e7378;};return a137_0x5223();}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{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 a137_0x38c2(_0x851ab1,_0xff56ff){_0x851ab1=_0x851ab1-0x1e7;const _0x5223b2=a137_0x5223();let _0x38c22a=_0x5223b2[_0x851ab1];return _0x38c22a;}function registerDefinitions(_0x3d0bb9){const _0xc49d98=a137_0x38c2;for(const _0x32f478 of _0x3d0bb9){definitions['set'](_0x32f478[_0xc49d98(0x214)]+':'+_0x32f478[_0xc49d98(0x210)],_0x32f478);let _0x32d773=serviceGroups[_0xc49d98(0x213)](_0x32f478['service']);!_0x32d773&&(_0x32d773=[],serviceGroups[_0xc49d98(0x229)](_0x32f478[_0xc49d98(0x214)],_0x32d773)),_0x32d773['push'](_0x32f478);}}function registerDeclarativeService(_0x406fe6,_0x437a55,_0x41aef0){const _0x25f2e2=a137_0x38c2;registerDefinitions(_0x437a55);_0x41aef0?.[_0x25f2e2(0x221)]&&registerDefinitions([_0x41aef0[_0x25f2e2(0x221)]]);const _0x548077=_0x55a2d2=>_0x55a2d2===_0x25f2e2(0x1f5)?'':_0x55a2d2===_0x25f2e2(0x22a)?_0x25f2e2(0x216):_0x25f2e2(0x20f),_0xc6165c={'service':_0x437a55[0x0][_0x25f2e2(0x214)],'label':_0x406fe6,'commands':_0x437a55[_0x25f2e2(0x1f2)](_0x5582a4=>!_0x5582a4['hidden'])[_0x25f2e2(0x1fa)](_0x259184=>({'command':_0x259184['command'],'description':_0x259184[_0x25f2e2(0x219)],'tag':_0x548077(_0x259184[_0x25f2e2(0x1ed)])})),'declarative':!![],'defaultCommand':_0x41aef0?.[_0x25f2e2(0x217)]??(_0x41aef0?.[_0x25f2e2(0x222)]?_0x437a55[0x0]['command']:undefined),'wildcardDef':_0x41aef0?.['wildcardDef'],'isSingleCommand':_0x41aef0?.[_0x25f2e2(0x222)]};serviceRegistry[_0x25f2e2(0x1fc)](_0xc6165c),serviceByName['set'](_0xc6165c[_0x25f2e2(0x214)],_0xc6165c);}registerDeclarativeService('Quick\x20Start',initDefinitions,{'defaultCommand':a137_0x185f8a(0x227),'isSingleCommand':!![]}),registerDeclarativeService(a137_0x185f8a(0x218),projectDefinitions),registerDeclarativeService(a137_0x185f8a(0x1f0),workspaceDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a137_0x185f8a(0x1e7)}),registerDeclarativeService(a137_0x185f8a(0x1e9),datasetDefinitions),registerDeclarativeService(a137_0x185f8a(0x21d),pageDefinitions),registerDeclarativeService('API\x20Development',apiDefinitions),registerDeclarativeService(a137_0x185f8a(0x21c),dataDefinitions),registerDeclarativeService('BFF\x20Scripts',bffDefinitions),registerDeclarativeService('SQL\x20Queries',sqlDefinitions),registerDeclarativeService('Database\x20Connections',dbDefinitions),registerDeclarativeService(a137_0x185f8a(0x224),menuDefinitions),registerDeclarativeService(a137_0x185f8a(0x1f6),roleDefinitions),registerDeclarativeService(a137_0x185f8a(0x202),permitDefinitions),registerDeclarativeService(a137_0x185f8a(0x1fd),appConfigDefinitions),registerDeclarativeService(a137_0x185f8a(0x204),issueDefinitions),registerDeclarativeService('Code\x20Generation',codegenDefinitions),registerDeclarativeService(a137_0x185f8a(0x20a),configDefinitions),registerDeclarativeService(a137_0x185f8a(0x1ea),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a137_0x185f8a(0x20c),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a137_0x185f8a(0x1f9),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a137_0x185f8a(0x215),cliSkillDefinitions,{'defaultCommand':'install'}),registerDeclarativeService('Logs',logsDefinitions,{'defaultCommand':'show'}),registerDeclarativeService(a137_0x185f8a(0x1ff),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a137_0x185f8a(0x21a)]-0x1];last[a137_0x185f8a(0x228)]=[{'command':a137_0x185f8a(0x203),'description':a137_0x185f8a(0x212),'tag':''}];}export const deprecatedAliases={'create':{'service':a137_0x185f8a(0x1f8),'command':'create'},'start':{'service':a137_0x185f8a(0x227),'command':'start'},'build':{'service':'run','command':a137_0x185f8a(0x205)},'preview':{'service':a137_0x185f8a(0x227),'command':'preview'},'logout':{'service':'auth','command':a137_0x185f8a(0x211)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a137_0x185f8a(0x208),APP_REMOTE_REMOVED_HINT=a137_0x185f8a(0x1f7),APP_USE_REMOVED_HINT=a137_0x185f8a(0x206);export function resolveRemovedCommand(_0x4a1fef,_0x135106){const _0x27dbe2=a137_0x185f8a;if(_0x4a1fef===_0x27dbe2(0x1fb)){const _0x3ebc46=_0x135106?_0x27dbe2(0x1fe)+_0x135106:_0x27dbe2(0x1fb);return{'command':_0x3ebc46,'message':_0x27dbe2(0x1ef)+_0x3ebc46+_0x27dbe2(0x220),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x4a1fef===_0x27dbe2(0x1f3))return{'command':_0x27dbe2(0x1f3),'message':'`rabetbase\x20skills`\x20has\x20been\x20removed.','hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x4a1fef===_0x27dbe2(0x21e)&&_0x135106===_0x27dbe2(0x207))return{'command':_0x27dbe2(0x226),'message':_0x27dbe2(0x209),'hint':APP_REMOTE_REMOVED_HINT};if(_0x4a1fef==='app'&&_0x135106===_0x27dbe2(0x1ec))return{'command':_0x27dbe2(0x20b),'message':'`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a137_0x185f8a(0x201)},'sql':{'new':'create'}};export function resolveDeprecatedSubcommand(_0x27a619,_0x2f97df){return deprecatedSubcommands[_0x27a619]?.[_0x2f97df];}export function findDefinition(_0x327c3b,_0x2e5606){return definitions['get'](_0x327c3b+':'+_0x2e5606);}export function isKnownService(_0xca2a21){const _0x29c4fb=a137_0x185f8a;return serviceByName[_0x29c4fb(0x1ee)](_0xca2a21);}export function isDeclarativeService(_0x349145){const _0x204959=a137_0x185f8a;return serviceGroups[_0x204959(0x1ee)](_0x349145)||serviceByName[_0x204959(0x213)](_0x349145)?.[_0x204959(0x221)]!==undefined;}export function getServiceEntry(_0x20e4da){return serviceByName['get'](_0x20e4da);}export function getLegacyHandler(_0x22b2e8,_0x294165){return undefined;}export function getAllDefinitions(){const _0x227b13=a137_0x185f8a;return Array[_0x227b13(0x22b)](definitions[_0x227b13(0x1f1)]());}
@@ -1 +1 @@
1
- const a138_0x3a2fad=a138_0xe449;(function(_0x282eca,_0xac264a){const _0x38902b=a138_0xe449,_0x3ed21b=_0x282eca();while(!![]){try{const _0x388672=-parseInt(_0x38902b(0x85))/0x1+-parseInt(_0x38902b(0x91))/0x2+parseInt(_0x38902b(0x7c))/0x3*(-parseInt(_0x38902b(0x7d))/0x4)+-parseInt(_0x38902b(0x86))/0x5+parseInt(_0x38902b(0x7e))/0x6*(-parseInt(_0x38902b(0x79))/0x7)+parseInt(_0x38902b(0x7f))/0x8*(-parseInt(_0x38902b(0x82))/0x9)+parseInt(_0x38902b(0x8a))/0xa;if(_0x388672===_0xac264a)break;else _0x3ed21b['push'](_0x3ed21b['shift']());}catch(_0x26f9fe){_0x3ed21b['push'](_0x3ed21b['shift']());}}}(a138_0x526c,0xcb86b));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';import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';function a138_0xe449(_0x3d22a5,_0x393d1f){_0x3d22a5=_0x3d22a5-0x79;const _0x526c40=a138_0x526c();let _0xe44992=_0x526c40[_0x3d22a5];return _0xe44992;}const CREATE_PATH=a138_0x3a2fad(0x92);function readName(_0x157d14){const _0x51e9c1=a138_0x3a2fad,_0x16e3de=_0x157d14[_0x51e9c1(0x93)](_0x51e9c1(0x83))[_0x51e9c1(0x7a)]();if(!_0x16e3de)throw CliErrors['flagMissing'](_0x51e9c1(0x83),'Pass\x20--name\x20<roleName>.');if(_0x16e3de[_0x51e9c1(0x8b)]>0x40)throw CliErrors[_0x51e9c1(0x8e)](_0x51e9c1(0x88));return _0x16e3de;}export const roleCreate={'service':a138_0x3a2fad(0x90),'command':a138_0x3a2fad(0x8d),'description':a138_0x3a2fad(0x8f),'risk':a138_0x3a2fad(0x80),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x38f8ab){readName(_0x38f8ab);},async 'dryRun'(_0x423f78){const _0x36fc05=a138_0x3a2fad,_0x4e31f9=readName(_0x423f78),_0x5d9fa0=_0x423f78[_0x36fc05(0x93)](_0x36fc05(0x84))['trim']()||undefined;return asDryRunResult({'operation':'create','selector':{'appCode':_0x423f78[_0x36fc05(0x8c)],'roleName':_0x4e31f9},'before':null,'after':{'roleName':_0x4e31f9,'roleType':_0x36fc05(0x87),'remark':_0x5d9fa0},'dryRun':!![],'backend':{'method':_0x36fc05(0x7b),'path':CREATE_PATH},'warnings':[]},{'method':_0x36fc05(0x7b),'url':CREATE_PATH});},async 'execute'(_0x3939ed){const _0x299d0e=a138_0x3a2fad,_0x3236d7=readName(_0x3939ed),_0x4bccab=_0x3939ed[_0x299d0e(0x93)](_0x299d0e(0x84))[_0x299d0e(0x7a)]()||undefined,_0x383bde=await createAppRole({'appCode':_0x3939ed[_0x299d0e(0x8c)],'roleName':_0x3236d7,..._0x4bccab?{'remark':_0x4bccab}:{}});return{'ok':!![],'data':{'operation':'create','selector':{'appCode':_0x3939ed['appCode'],'roleId':_0x383bde['id'],'roleName':_0x3236d7},'before':null,'after':projectRole(_0x383bde),'dryRun':![],'backend':{'method':_0x299d0e(0x7b),'path':CREATE_PATH},'warnings':[]},'message':_0x299d0e(0x81)+_0x383bde[_0x299d0e(0x89)]+_0x299d0e(0x94)+_0x383bde['id']+')'};}};function a138_0x526c(){const _0x22b4ce=['955035QnQWWO','name','remark','149420XVUlHf','3913705RXLdTi','CUSTOM','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','roleName','59871420VxxMBh','length','appCode','create','validation','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','role','941574nlAOnM','/smartapi/permit/role/create','str','\x20(id=','7APapKK','trim','POST','2661sbYjgR','3832vsISNq','8491170OAbopI','112MGWlRE','write','Created\x20role\x20'];a138_0x526c=function(){return _0x22b4ce;};return a138_0x526c();}
1
+ const a138_0x23074a=a138_0x1631;(function(_0x278e2f,_0x1cd0d9){const _0x568288=a138_0x1631,_0x20afad=_0x278e2f();while(!![]){try{const _0xe4f55=-parseInt(_0x568288(0x1df))/0x1*(parseInt(_0x568288(0x1eb))/0x2)+parseInt(_0x568288(0x1e0))/0x3+-parseInt(_0x568288(0x1db))/0x4+parseInt(_0x568288(0x1ea))/0x5*(-parseInt(_0x568288(0x1da))/0x6)+parseInt(_0x568288(0x1e2))/0x7+parseInt(_0x568288(0x1e8))/0x8+-parseInt(_0x568288(0x1d4))/0x9*(parseInt(_0x568288(0x1d7))/0xa);if(_0xe4f55===_0x1cd0d9)break;else _0x20afad['push'](_0x20afad['shift']());}catch(_0x4c6d7f){_0x20afad['push'](_0x20afad['shift']());}}}(a138_0x8aaf,0xe3778));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';import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';function a138_0x8aaf(){const _0x48edc3=['flagMissing','1749378ebCaTo','3284900BKiruI','Pass\x20--name\x20<roleName>.','validation','trim','2sAoSjN','1486176RJcrzn','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','1361738QnQqmD','appCode','\x20(id=','remark','POST','write','13949504PAamNc','name','5BzLeDh','369212tyfHra','17919OrnyVU','create','/smartapi/permit/role/create','100OMYImC','str'];a138_0x8aaf=function(){return _0x48edc3;};return a138_0x8aaf();}function a138_0x1631(_0x55acf0,_0x17ce07){_0x55acf0=_0x55acf0-0x1d4;const _0x8aafd7=a138_0x8aaf();let _0x163103=_0x8aafd7[_0x55acf0];return _0x163103;}const CREATE_PATH=a138_0x23074a(0x1d6);function readName(_0xdde17d){const _0x2878f5=a138_0x23074a,_0x3e1de5=_0xdde17d[_0x2878f5(0x1d8)](_0x2878f5(0x1e9))['trim']();if(!_0x3e1de5)throw CliErrors[_0x2878f5(0x1d9)](_0x2878f5(0x1e9),_0x2878f5(0x1dc));if(_0x3e1de5['length']>0x40)throw CliErrors[_0x2878f5(0x1dd)]('Role\x20name\x20cannot\x20exceed\x2064\x20characters.');return _0x3e1de5;}export const roleCreate={'service':'role','command':a138_0x23074a(0x1d5),'description':a138_0x23074a(0x1e1),'risk':a138_0x23074a(0x1e7),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x36e8b1){readName(_0x36e8b1);},async 'dryRun'(_0x3ebf7e){const _0x24fc7b=a138_0x23074a,_0x14822f=readName(_0x3ebf7e),_0x1cf76b=_0x3ebf7e[_0x24fc7b(0x1d8)](_0x24fc7b(0x1e5))[_0x24fc7b(0x1de)]()||undefined;return asDryRunResult({'operation':'create','selector':{'appCode':_0x3ebf7e[_0x24fc7b(0x1e3)],'roleName':_0x14822f},'before':null,'after':{'roleName':_0x14822f,'roleType':'CUSTOM','remark':_0x1cf76b},'dryRun':!![],'backend':{'method':_0x24fc7b(0x1e6),'path':CREATE_PATH},'warnings':[]},{'method':_0x24fc7b(0x1e6),'url':CREATE_PATH});},async 'execute'(_0x300abc){const _0x518e31=a138_0x23074a,_0x1f651a=readName(_0x300abc),_0x49c25c=_0x300abc['str'](_0x518e31(0x1e5))['trim']()||undefined,_0x86c712=await createAppRole({'appCode':_0x300abc[_0x518e31(0x1e3)],'roleName':_0x1f651a,..._0x49c25c?{'remark':_0x49c25c}:{}});return{'ok':!![],'data':{'operation':'create','selector':{'appCode':_0x300abc[_0x518e31(0x1e3)],'roleId':_0x86c712['id'],'roleName':_0x1f651a},'before':null,'after':projectRole(_0x86c712),'dryRun':![],'backend':{'method':_0x518e31(0x1e6),'path':CREATE_PATH},'warnings':[]},'message':'Created\x20role\x20'+_0x86c712['roleName']+_0x518e31(0x1e4)+_0x86c712['id']+')'};}};
@@ -1 +1 @@
1
- const a139_0xf735ce=a139_0x40de;(function(_0x38e139,_0x23e5dd){const _0x22593b=a139_0x40de,_0x2d160f=_0x38e139();while(!![]){try{const _0x244186=-parseInt(_0x22593b(0x70))/0x1+-parseInt(_0x22593b(0x77))/0x2*(parseInt(_0x22593b(0x7c))/0x3)+-parseInt(_0x22593b(0x7d))/0x4+-parseInt(_0x22593b(0x76))/0x5*(-parseInt(_0x22593b(0x75))/0x6)+parseInt(_0x22593b(0x7f))/0x7*(-parseInt(_0x22593b(0x6f))/0x8)+-parseInt(_0x22593b(0x71))/0x9+parseInt(_0x22593b(0x6e))/0xa*(parseInt(_0x22593b(0x81))/0xb);if(_0x244186===_0x23e5dd)break;else _0x2d160f['push'](_0x2d160f['shift']());}catch(_0x44f6ae){_0x2d160f['push'](_0x2d160f['shift']());}}}(a139_0x238c,0xc6616));import{deleteAppRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a139_0x40de(_0xf2f261,_0x48b8c1){_0xf2f261=_0xf2f261-0x6a;const _0x238c05=a139_0x238c();let _0x40de5e=_0x238c05[_0xf2f261];return _0x40de5e;}function a139_0x238c(){const _0x14105a=['Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','delete','10ONUZiD','221608xPDNjk','154631PnwKfV','1948932tBrCTh','roleName','num','POST','85578QJmAgj','25CFMcaK','405550kLrahm','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','role','\x20(id=','high-risk-write','3lqQwvS','4347324nQFpkY','Deleted\x20role\x20','7wSofex','Role\x20still\x20has\x20','26727107NlufCh','userCount','appCode'];a139_0x238c=function(){return _0x14105a;};return a139_0x238c();}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_0xf735ce(0x79),'command':a139_0xf735ce(0x6d),'description':a139_0xf735ce(0x6c),'risk':a139_0xf735ce(0x7b),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x17e08e){const _0x4956b9=a139_0xf735ce,_0x495b54=_0x17e08e[_0x4956b9(0x73)]('id'),_0x246d73=await getRoleById(_0x17e08e[_0x4956b9(0x6b)],_0x495b54);return assertCustomRole(_0x246d73,_0x4956b9(0x6d)),asDryRunResult({'operation':_0x4956b9(0x6d),'selector':{'appCode':_0x17e08e[_0x4956b9(0x6b)],'roleId':_0x495b54,'roleName':_0x246d73[_0x4956b9(0x72)]},'before':projectRole(_0x246d73),'after':null,'dryRun':!![],'backend':{'method':_0x4956b9(0x74),'path':DELETE_PATH},'warnings':_0x246d73[_0x4956b9(0x6a)]>0x0?[_0x4956b9(0x80)+_0x246d73[_0x4956b9(0x6a)]+_0x4956b9(0x78)]:[]},{'method':_0x4956b9(0x74),'url':DELETE_PATH});},async 'execute'(_0x82659d){const _0x4e5a11=a139_0xf735ce,_0x2cd673=_0x82659d[_0x4e5a11(0x73)]('id'),_0x772222=await getRoleById(_0x82659d[_0x4e5a11(0x6b)],_0x2cd673);return assertCustomRole(_0x772222,_0x4e5a11(0x6d)),await deleteAppRole(_0x2cd673),{'ok':!![],'data':{'operation':_0x4e5a11(0x6d),'selector':{'appCode':_0x82659d['appCode'],'roleId':_0x2cd673,'roleName':_0x772222[_0x4e5a11(0x72)]},'before':projectRole(_0x772222),'after':null,'dryRun':![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':[]},'message':_0x4e5a11(0x7e)+_0x772222[_0x4e5a11(0x72)]+_0x4e5a11(0x7a)+_0x2cd673+')'};}};
1
+ const a139_0x2c6081=a139_0x23ec;(function(_0x3cd06b,_0x225b98){const _0x225d2f=a139_0x23ec,_0x4e10a=_0x3cd06b();while(!![]){try{const _0x2cc0f0=parseInt(_0x225d2f(0xa2))/0x1*(parseInt(_0x225d2f(0xa3))/0x2)+-parseInt(_0x225d2f(0x97))/0x3*(parseInt(_0x225d2f(0x98))/0x4)+parseInt(_0x225d2f(0x9f))/0x5+parseInt(_0x225d2f(0xa0))/0x6+-parseInt(_0x225d2f(0x9a))/0x7+parseInt(_0x225d2f(0x9d))/0x8*(-parseInt(_0x225d2f(0x9b))/0x9)+parseInt(_0x225d2f(0x96))/0xa;if(_0x2cc0f0===_0x225b98)break;else _0x4e10a['push'](_0x4e10a['shift']());}catch(_0x5d0f9b){_0x4e10a['push'](_0x4e10a['shift']());}}}(a139_0x7533,0x56e18));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 a139_0x23ec(_0x4d6170,_0x6c0592){_0x4d6170=_0x4d6170-0x91;const _0x75337=a139_0x7533();let _0x23ecdc=_0x75337[_0x4d6170];return _0x23ecdc;}import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';const DELETE_PATH=a139_0x2c6081(0x9c);function a139_0x7533(){const _0x54300d=['userCount','Role\x20still\x20has\x20','roleName','Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','num','role','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','POST','8777430lyYkhD','1661931tzeGuZ','4TsWWvp','appCode','3673663aRxLHK','18IznfmZ','/smartapi/permit/role/delete','2256776NbFGiS','delete','3145755RvpsYv','63900oZwsFd','\x20(id=','2xduXnE','481300GQNFEX'];a139_0x7533=function(){return _0x54300d;};return a139_0x7533();}export const roleDelete={'service':a139_0x2c6081(0x93),'command':'delete','description':a139_0x2c6081(0x91),'risk':'high-risk-write','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x4a7c36){const _0x5efdd8=a139_0x2c6081,_0x3e266d=_0x4a7c36[_0x5efdd8(0x92)]('id'),_0x4ff021=await getRoleById(_0x4a7c36[_0x5efdd8(0x99)],_0x3e266d);return assertCustomRole(_0x4ff021,_0x5efdd8(0x9e)),asDryRunResult({'operation':_0x5efdd8(0x9e),'selector':{'appCode':_0x4a7c36[_0x5efdd8(0x99)],'roleId':_0x3e266d,'roleName':_0x4ff021[_0x5efdd8(0xa6)]},'before':projectRole(_0x4ff021),'after':null,'dryRun':!![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':_0x4ff021['userCount']>0x0?[_0x5efdd8(0xa5)+_0x4ff021[_0x5efdd8(0xa4)]+_0x5efdd8(0x94)]:[]},{'method':_0x5efdd8(0x95),'url':DELETE_PATH});},async 'execute'(_0x42a1a5){const _0xd8081d=a139_0x2c6081,_0x2b8f58=_0x42a1a5['num']('id'),_0x482389=await getRoleById(_0x42a1a5[_0xd8081d(0x99)],_0x2b8f58);return assertCustomRole(_0x482389,'delete'),await deleteAppRole(_0x2b8f58),{'ok':!![],'data':{'operation':_0xd8081d(0x9e),'selector':{'appCode':_0x42a1a5[_0xd8081d(0x99)],'roleId':_0x2b8f58,'roleName':_0x482389[_0xd8081d(0xa6)]},'before':projectRole(_0x482389),'after':null,'dryRun':![],'backend':{'method':_0xd8081d(0x95),'path':DELETE_PATH},'warnings':[]},'message':'Deleted\x20role\x20'+_0x482389[_0xd8081d(0xa6)]+_0xd8081d(0xa1)+_0x2b8f58+')'};}};
@@ -1 +1 @@
1
- const a140_0x37d769=a140_0x3aaa;(function(_0x1bd82a,_0x47ca9e){const _0x1d800f=a140_0x3aaa,_0x361f0c=_0x1bd82a();while(!![]){try{const _0x8b927d=parseInt(_0x1d800f(0x1ee))/0x1+parseInt(_0x1d800f(0x1f6))/0x2*(parseInt(_0x1d800f(0x1f4))/0x3)+-parseInt(_0x1d800f(0x1ef))/0x4*(parseInt(_0x1d800f(0x1f3))/0x5)+parseInt(_0x1d800f(0x1eb))/0x6+-parseInt(_0x1d800f(0x1f2))/0x7*(-parseInt(_0x1d800f(0x1ea))/0x8)+parseInt(_0x1d800f(0x1e9))/0x9*(parseInt(_0x1d800f(0x1f7))/0xa)+-parseInt(_0x1d800f(0x1f5))/0xb;if(_0x8b927d===_0x47ca9e)break;else _0x361f0c['push'](_0x361f0c['shift']());}catch(_0x23b019){_0x361f0c['push'](_0x361f0c['shift']());}}}(a140_0x182e,0x654cb));function a140_0x182e(){const _0x137b68=['192636KMvoxz','56uqzFWQ','1836528XbFHPU','read','roleName','156196bvyPtZ','2266660yYGHBN','appCode','roleType','328377FRtAFm','5DZNQjc','2655lJDDlQ','1795607kqToRJ','752fQKVeN','10gbxkCG'];a140_0x182e=function(){return _0x137b68;};return a140_0x182e();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a140_0x3aaa(_0x521403,_0x199783){_0x521403=_0x521403-0x1e9;const _0x182e6d=a140_0x182e();let _0x3aaa36=_0x182e6d[_0x521403];return _0x3aaa36;}export const roleDetail={'service':'role','command':'detail','description':'Show\x20a\x20single\x20role\x27s\x20detail','risk':a140_0x37d769(0x1ec),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x3a0fcf){const _0x10db26=a140_0x37d769,_0xe07282=_0x3a0fcf['num']('id'),_0x2a970c=await getRoleById(_0x3a0fcf[_0x10db26(0x1f0)],_0xe07282);return{'ok':!![],'data':{'role':projectRole(_0x2a970c)},'message':'Role\x20'+_0x2a970c[_0x10db26(0x1ed)]+'\x20('+_0x2a970c[_0x10db26(0x1f1)]+')'};}};
1
+ function a140_0x59e8(_0x1d21ba,_0x252b7b){_0x1d21ba=_0x1d21ba-0x190;const _0x1a854d=a140_0x1a85();let _0x59e8a2=_0x1a854d[_0x1d21ba];return _0x59e8a2;}const a140_0x5853b3=a140_0x59e8;function a140_0x1a85(){const _0x4f8762=['roleType','num','6rhMEyD','detail','2309135UdBhpA','10KgQndk','22632BffBuF','338891qzOyXp','171MDJVhN','roleName','120KWTnMp','1690447MAxKLJ','read','1802092FTTrrU','7741368LOlBal','Show\x20a\x20single\x20role\x27s\x20detail','role','appCode','833766XyEniL'];a140_0x1a85=function(){return _0x4f8762;};return a140_0x1a85();}(function(_0xf7c9bc,_0x253e86){const _0xfdc73d=a140_0x59e8,_0x1b7d15=_0xf7c9bc();while(!![]){try{const _0x1a63e3=parseInt(_0xfdc73d(0x19c))/0x1+parseInt(_0xfdc73d(0x190))/0x2*(-parseInt(_0xfdc73d(0x192))/0x3)+-parseInt(_0xfdc73d(0x197))/0x4+parseInt(_0xfdc73d(0x1a1))/0x5*(parseInt(_0xfdc73d(0x19f))/0x6)+parseInt(_0xfdc73d(0x191))/0x7*(-parseInt(_0xfdc73d(0x194))/0x8)+parseInt(_0xfdc73d(0x198))/0x9+-parseInt(_0xfdc73d(0x1a2))/0xa*(-parseInt(_0xfdc73d(0x195))/0xb);if(_0x1a63e3===_0x253e86)break;else _0x1b7d15['push'](_0x1b7d15['shift']());}catch(_0x3897c2){_0x1b7d15['push'](_0x1b7d15['shift']());}}}(a140_0x1a85,0x7710c));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';export const roleDetail={'service':a140_0x5853b3(0x19a),'command':a140_0x5853b3(0x1a0),'description':a140_0x5853b3(0x199),'risk':a140_0x5853b3(0x196),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x475179){const _0x171940=a140_0x5853b3,_0x4bcdef=_0x475179[_0x171940(0x19e)]('id'),_0x55608a=await getRoleById(_0x475179[_0x171940(0x19b)],_0x4bcdef);return{'ok':!![],'data':{'role':projectRole(_0x55608a)},'message':'Role\x20'+_0x55608a[_0x171940(0x193)]+'\x20('+_0x55608a[_0x171940(0x19d)]+')'};}};