@lovrabet/rabetbase-cli 2.3.1-beta.2 → 2.3.2-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (218) 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/discover.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.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/use.js +1 -1
  26. package/lib/commands/app-config/delete.js +1 -1
  27. package/lib/commands/app-config/get.js +1 -1
  28. package/lib/commands/app-config/index.js +1 -1
  29. package/lib/commands/app-config/list.js +1 -1
  30. package/lib/commands/app-config/set.js +1 -1
  31. package/lib/commands/app-config/shared.js +1 -1
  32. package/lib/commands/auth/index.js +1 -1
  33. package/lib/commands/bff/create.js +1 -1
  34. package/lib/commands/bff/delete.js +1 -1
  35. package/lib/commands/bff/detail.js +1 -1
  36. package/lib/commands/bff/index.js +1 -1
  37. package/lib/commands/bff/list.js +1 -1
  38. package/lib/commands/bff/pull.js +1 -1
  39. package/lib/commands/bff/push.js +1 -1
  40. package/lib/commands/bff/status.js +1 -1
  41. package/lib/commands/cli-skill/index.js +1 -1
  42. package/lib/commands/cli-update.js +1 -1
  43. package/lib/commands/codegen/index.js +1 -1
  44. package/lib/commands/codegen/sdk.js +1 -1
  45. package/lib/commands/codegen/sql.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/flags.js +1 -1
  48. package/lib/commands/common/validate.js +1 -1
  49. package/lib/commands/config/get.js +1 -1
  50. package/lib/commands/config/index.js +1 -1
  51. package/lib/commands/config/list.js +1 -1
  52. package/lib/commands/config/set.js +1 -1
  53. package/lib/commands/config/shared.js +1 -1
  54. package/lib/commands/data/filter.js +1 -1
  55. package/lib/commands/data/getOne.js +1 -1
  56. package/lib/commands/data/index.js +1 -1
  57. package/lib/commands/data/shared.js +1 -1
  58. package/lib/commands/dataset/business-group-update.js +1 -1
  59. package/lib/commands/dataset/capability.js +1 -1
  60. package/lib/commands/dataset/delete.js +1 -1
  61. package/lib/commands/dataset/detail.js +1 -1
  62. package/lib/commands/dataset/extend-update.js +1 -1
  63. package/lib/commands/dataset/field-update.js +1 -1
  64. package/lib/commands/dataset/index.js +1 -1
  65. package/lib/commands/dataset/list.js +1 -1
  66. package/lib/commands/dataset/operations.js +1 -1
  67. package/lib/commands/dataset/relation-audit.js +1 -0
  68. package/lib/commands/dataset/relation-create.js +1 -1
  69. package/lib/commands/dataset/relation-delete.js +1 -1
  70. package/lib/commands/dataset/relation-shared.js +1 -1
  71. package/lib/commands/dataset/relation-update.js +1 -1
  72. package/lib/commands/dataset/relations.js +1 -1
  73. package/lib/commands/dataset/rename.js +1 -1
  74. package/lib/commands/dataset/restore.js +1 -1
  75. package/lib/commands/db/analyze-cancel.js +1 -1
  76. package/lib/commands/db/analyze-start.js +1 -1
  77. package/lib/commands/db/analyze-status.js +1 -1
  78. package/lib/commands/db/create.js +1 -1
  79. package/lib/commands/db/delete.js +1 -1
  80. package/lib/commands/db/detail.js +1 -1
  81. package/lib/commands/db/diff.js +1 -1
  82. package/lib/commands/db/index.js +1 -1
  83. package/lib/commands/db/list.js +1 -1
  84. package/lib/commands/db/shared.js +1 -1
  85. package/lib/commands/db/tables.js +1 -1
  86. package/lib/commands/db/test.js +1 -1
  87. package/lib/commands/db/update.js +1 -1
  88. package/lib/commands/doctor.js +1 -1
  89. package/lib/commands/init/index.js +1 -1
  90. package/lib/commands/issue/index.js +1 -1
  91. package/lib/commands/issue/nudge.js +1 -1
  92. package/lib/commands/issue/report.js +1 -1
  93. package/lib/commands/issue/shared.js +1 -1
  94. package/lib/commands/logs/index.js +1 -1
  95. package/lib/commands/menu/index.js +1 -1
  96. package/lib/commands/menu/list.js +1 -1
  97. package/lib/commands/menu/shared/compare-table.js +1 -1
  98. package/lib/commands/menu/shared/index.js +1 -1
  99. package/lib/commands/menu/shared/inquirer.js +1 -1
  100. package/lib/commands/menu/shared/local-pages.js +1 -1
  101. package/lib/commands/menu/shared/logic.js +1 -1
  102. package/lib/commands/menu/shared/service.js +1 -1
  103. package/lib/commands/menu/shared/sync-core.js +1 -1
  104. package/lib/commands/menu/shared/update-core.js +1 -1
  105. package/lib/commands/menu/shared/valid-url.js +1 -1
  106. package/lib/commands/menu/sync.js +1 -1
  107. package/lib/commands/menu/update.js +1 -1
  108. package/lib/commands/page/generate-start.js +1 -1
  109. package/lib/commands/page/generate-status.js +1 -1
  110. package/lib/commands/page/index.js +1 -1
  111. package/lib/commands/page/pull.js +1 -1
  112. package/lib/commands/page/push.js +1 -1
  113. package/lib/commands/page/relation-audit.js +1 -1
  114. package/lib/commands/page/shared.js +1 -1
  115. package/lib/commands/page/standard-page-status.js +1 -1
  116. package/lib/commands/page/sync.js +1 -1
  117. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  118. package/lib/commands/project/create/format-elapsed.js +1 -1
  119. package/lib/commands/project/create/main.js +1 -1
  120. package/lib/commands/project/create/non-interactive.js +1 -1
  121. package/lib/commands/project/create/project-template-path.js +1 -1
  122. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  123. package/lib/commands/project/create/use-format-code.js +1 -1
  124. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  125. package/lib/commands/project/index.js +1 -1
  126. package/lib/commands/project/init.js +1 -1
  127. package/lib/commands/project/upgrade.js +1 -1
  128. package/lib/commands/registry.js +1 -1
  129. package/lib/commands/run/index.js +1 -1
  130. package/lib/commands/schema.js +1 -1
  131. package/lib/commands/sql/create.js +1 -1
  132. package/lib/commands/sql/delete.js +1 -1
  133. package/lib/commands/sql/detail.js +1 -1
  134. package/lib/commands/sql/exec.js +1 -1
  135. package/lib/commands/sql/index.js +1 -1
  136. package/lib/commands/sql/list.js +1 -1
  137. package/lib/commands/sql/pull.js +1 -1
  138. package/lib/commands/sql/push.js +1 -1
  139. package/lib/commands/sql/save.js +1 -1
  140. package/lib/commands/sql/shared.js +1 -1
  141. package/lib/commands/sql/status.js +1 -1
  142. package/lib/commands/sql/validate.js +1 -1
  143. package/lib/commands/workspace/index.js +1 -1
  144. package/lib/config/schema.js +1 -1
  145. package/lib/constant/cdn.js +1 -1
  146. package/lib/constant/cli.js +1 -1
  147. package/lib/constant/defaults.js +1 -1
  148. package/lib/constant/domain.js +1 -1
  149. package/lib/constant/env.js +1 -1
  150. package/lib/constant/output.js +1 -1
  151. package/lib/constant/paths.js +1 -1
  152. package/lib/constant/risk.js +1 -1
  153. package/lib/context/app-resolver.js +1 -1
  154. package/lib/context/auth-resolver.js +1 -1
  155. package/lib/context/config-loader.js +1 -1
  156. package/lib/context.js +1 -1
  157. package/lib/core/alias-resolver.js +1 -1
  158. package/lib/core/api-client.js +1 -1
  159. package/lib/core/bff/config.js +1 -1
  160. package/lib/core/bff/file-system.js +1 -1
  161. package/lib/core/bff/hash.js +1 -1
  162. package/lib/core/bff/lock.js +1 -1
  163. package/lib/core/bff/utils.js +1 -1
  164. package/lib/core/db-resolver.js +1 -1
  165. package/lib/core/page/file-system.js +1 -1
  166. package/lib/core/page/hash.js +1 -1
  167. package/lib/core/page/lock.js +1 -1
  168. package/lib/core/sql-sync/config.js +1 -1
  169. package/lib/core/sql-sync/file-system.js +1 -1
  170. package/lib/core/sql-sync/hash.js +1 -1
  171. package/lib/core/sql-sync/lock.js +1 -1
  172. package/lib/core/sql-sync/utils.js +1 -1
  173. package/lib/core/sql-validator.js +1 -1
  174. package/lib/errors.js +1 -1
  175. package/lib/framework/build-all-flags.js +1 -1
  176. package/lib/framework/flags.js +1 -1
  177. package/lib/framework/help.js +1 -1
  178. package/lib/framework/index.js +1 -1
  179. package/lib/framework/output.js +1 -1
  180. package/lib/framework/response.js +1 -1
  181. package/lib/framework/runner-alias.js +1 -1
  182. package/lib/framework/runner.js +1 -1
  183. package/lib/framework/schema-export.js +1 -1
  184. package/lib/framework/types.js +1 -1
  185. package/lib/generated/build-info.js +1 -1
  186. package/lib/help.js +1 -1
  187. package/lib/skills/main.js +1 -1
  188. package/lib/skills/npx-skills-add.js +1 -1
  189. package/lib/telemetry/cli-command-trace.js +1 -1
  190. package/lib/telemetry/cli-help-trace.js +1 -1
  191. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  192. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  193. package/lib/telemetry/send-cli-trace-log.js +1 -1
  194. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  195. package/lib/utils/ai_config.js +1 -1
  196. package/lib/utils/apply-jq-filter.js +1 -1
  197. package/lib/utils/cdn-config.js +1 -1
  198. package/lib/utils/check-sdk-version.js +1 -1
  199. package/lib/utils/cli-version-check.js +1 -1
  200. package/lib/utils/cli-version-policy.js +1 -1
  201. package/lib/utils/config.js +1 -1
  202. package/lib/utils/copy-directory.js +1 -1
  203. package/lib/utils/entity-with-id.js +1 -1
  204. package/lib/utils/file-utils.js +1 -1
  205. package/lib/utils/guides-cdn.js +1 -1
  206. package/lib/utils/http-client.js +1 -1
  207. package/lib/utils/is-non-interactive.js +1 -1
  208. package/lib/utils/logger.js +1 -1
  209. package/lib/utils/params.js +1 -1
  210. package/lib/utils/platform.js +1 -1
  211. package/lib/utils/rules-cdn.js +1 -1
  212. package/lib/utils/sleep.js +1 -1
  213. package/lib/utils/template-replacer.js +1 -1
  214. package/lib/utils/update-notice.js +1 -1
  215. package/lib/utils/version.js +1 -1
  216. package/lib/utils/with-active-cookie.js +1 -1
  217. package/lib/utils/write-cli-side-channel.js +1 -1
  218. package/package.json +1 -1
@@ -1 +1 @@
1
- const a114_0x8c2b00=a114_0x1f1a;(function(_0x587cf6,_0x3e1376){const _0x3b3b8d=a114_0x1f1a,_0x23f50f=_0x587cf6();while(!![]){try{const _0x5c80fc=-parseInt(_0x3b3b8d(0x19e))/0x1*(-parseInt(_0x3b3b8d(0x19c))/0x2)+parseInt(_0x3b3b8d(0x1a2))/0x3+parseInt(_0x3b3b8d(0x1ad))/0x4*(-parseInt(_0x3b3b8d(0x1a6))/0x5)+parseInt(_0x3b3b8d(0x1a9))/0x6+parseInt(_0x3b3b8d(0x1b0))/0x7+parseInt(_0x3b3b8d(0x1a5))/0x8+parseInt(_0x3b3b8d(0x1af))/0x9*(-parseInt(_0x3b3b8d(0x19d))/0xa);if(_0x5c80fc===_0x3e1376)break;else _0x23f50f['push'](_0x23f50f['shift']());}catch(_0x309bfe){_0x23f50f['push'](_0x23f50f['shift']());}}}(a114_0x2454,0xb2d06));import{APPCODE_FLAG_OPTIONAL,DATASETCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assessStandardPageState,getUndeletedRelatedPages,loadDatasetDetailForPage,loadStandardPageStatusForGenerate,serializeDryRunDescription,validateDatasetSelector}from'../../commands/page/shared.js';function a114_0x1f1a(_0x5a27fa,_0x42283e){_0x5a27fa=_0x5a27fa-0x197;const _0x24544b=a114_0x2454();let _0x1f1aa4=_0x24544b[_0x5a27fa];return _0x1f1aa4;}export const pageStandardPageStatus={'service':a114_0x8c2b00(0x1aa),'command':a114_0x8c2b00(0x1a4),'description':a114_0x8c2b00(0x19f),'risk':a114_0x8c2b00(0x1ae),'defaultOutputFormat':a114_0x8c2b00(0x1a1),'flags':[APPCODE_FLAG_OPTIONAL,DATASETCODE_FLAG_OPTIONAL,{'name':a114_0x8c2b00(0x19b),'type':'string','description':'Dataset\x20alias\x20from\x20api.ts\x20(resolves\x20to\x20dataset\x20code\x20automatically)'}],async 'validate'(_0xcde3f2){validateDatasetSelector(_0xcde3f2);},async 'dryRun'(_0x30c5c9){const _0x1788c1=a114_0x8c2b00,_0x1cd0a3=await loadDatasetDetailForPage(_0x30c5c9);return{'method':'GET','url':_0x1788c1(0x199)+_0x1cd0a3['code']+_0x1788c1(0x197)+encodeURIComponent(_0x30c5c9[_0x1788c1(0x1a3)]),'description':serializeDryRunDescription({'dataset':{'id':_0x1cd0a3['id'],'code':_0x1cd0a3[_0x1788c1(0x198)],'name':_0x1cd0a3['name']},'action':_0x1788c1(0x19a)})};},async 'execute'(_0x292544){const _0x3f318a=a114_0x8c2b00,_0x77086b=await loadDatasetDetailForPage(_0x292544),_0x3ac05d=await loadStandardPageStatusForGenerate(_0x292544,_0x77086b[_0x3f318a(0x198)]),_0x16ebbc=getUndeletedRelatedPages(_0x77086b),_0x56810f=assessStandardPageState(_0x77086b[_0x3f318a(0x198)],_0x3ac05d,{'fallbackUndeletedPages':_0x16ebbc});return{'ok':!![],'data':{'datasetCode':_0x77086b[_0x3f318a(0x198)],'precheckSource':_0x3ac05d?.[_0x3f318a(0x1ac)]??_0x3f318a(0x1a7),'status':_0x56810f['status'],'manualResolutionRequired':_0x56810f[_0x3f318a(0x1a8)],'nextAction':_0x56810f['nextAction'],'standardPageStatus':_0x3ac05d,'relatedPages':{'total':_0x77086b[_0x3f318a(0x1ab)][_0x3f318a(0x1a0)],'undeletedCount':_0x16ebbc[_0x3f318a(0x1a0)]}}};}};function a114_0x2454(){const _0x4596e9=['page','relatedPages','source','3508172YptoJX','read','18vrvgUV','9019227akVLHD','/standard-page-status?appCode=','code','/smartapi/lovrabet/dataset/','query-standard-page-status','alias','1402CfVykg','16426510HAMgJX','1747FJIAIo','Query\x20Smart\x20List\x20Page\x20facts\x20for\x20a\x20dataset','length','compress','1182141PQXWVR','appCode','standard-page-status','10883096nAPvJL','5kzXHQH','related-pages-fallback','manualResolutionRequired','3763350eIjnOR'];a114_0x2454=function(){return _0x4596e9;};return a114_0x2454();}
1
+ const a115_0x2cd4d6=a115_0x15aa;(function(_0x442b2c,_0x8c024){const _0x483604=a115_0x15aa,_0x511757=_0x442b2c();while(!![]){try{const _0x50eddf=-parseInt(_0x483604(0x197))/0x1*(parseInt(_0x483604(0x18d))/0x2)+parseInt(_0x483604(0x18c))/0x3*(-parseInt(_0x483604(0x1a8))/0x4)+-parseInt(_0x483604(0x19d))/0x5+-parseInt(_0x483604(0x198))/0x6*(-parseInt(_0x483604(0x1a1))/0x7)+-parseInt(_0x483604(0x19b))/0x8*(parseInt(_0x483604(0x1a3))/0x9)+-parseInt(_0x483604(0x19a))/0xa*(-parseInt(_0x483604(0x18f))/0xb)+parseInt(_0x483604(0x196))/0xc*(parseInt(_0x483604(0x1a6))/0xd);if(_0x50eddf===_0x8c024)break;else _0x511757['push'](_0x511757['shift']());}catch(_0x276af0){_0x511757['push'](_0x511757['shift']());}}}(a115_0x3842,0x442f9));import{APPCODE_FLAG_OPTIONAL,DATASETCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{assessStandardPageState,getUndeletedRelatedPages,loadDatasetDetailForPage,loadStandardPageStatusForGenerate,serializeDryRunDescription,validateDatasetSelector}from'../../commands/page/shared.js';function a115_0x15aa(_0x53cc4c,_0x38a91f){_0x53cc4c=_0x53cc4c-0x18c;const _0x3842fc=a115_0x3842();let _0x15aaf9=_0x3842fc[_0x53cc4c];return _0x15aaf9;}export const pageStandardPageStatus={'service':a115_0x2cd4d6(0x1aa),'command':a115_0x2cd4d6(0x199),'description':a115_0x2cd4d6(0x194),'risk':a115_0x2cd4d6(0x1a4),'defaultOutputFormat':a115_0x2cd4d6(0x19c),'flags':[APPCODE_FLAG_OPTIONAL,DATASETCODE_FLAG_OPTIONAL,{'name':a115_0x2cd4d6(0x1ac),'type':a115_0x2cd4d6(0x1a5),'description':'Dataset\x20alias\x20from\x20api.ts\x20(resolves\x20to\x20dataset\x20code\x20automatically)'}],async 'validate'(_0x17194b){validateDatasetSelector(_0x17194b);},async 'dryRun'(_0x541146){const _0x20391a=a115_0x2cd4d6,_0x146aed=await loadDatasetDetailForPage(_0x541146);return{'method':_0x20391a(0x1a2),'url':_0x20391a(0x195)+_0x146aed[_0x20391a(0x19f)]+_0x20391a(0x1a7)+encodeURIComponent(_0x541146[_0x20391a(0x1a0)]),'description':serializeDryRunDescription({'dataset':{'id':_0x146aed['id'],'code':_0x146aed['code'],'name':_0x146aed[_0x20391a(0x1a9)]},'action':'query-standard-page-status'})};},async 'execute'(_0x1b6b21){const _0x4b934b=a115_0x2cd4d6,_0x2141e1=await loadDatasetDetailForPage(_0x1b6b21),_0x2317b2=await loadStandardPageStatusForGenerate(_0x1b6b21,_0x2141e1[_0x4b934b(0x19f)]),_0x156c06=getUndeletedRelatedPages(_0x2141e1),_0x4aa985=assessStandardPageState(_0x2141e1[_0x4b934b(0x19f)],_0x2317b2,{'fallbackUndeletedPages':_0x156c06});return{'ok':!![],'data':{'datasetCode':_0x2141e1['code'],'precheckSource':_0x2317b2?.[_0x4b934b(0x192)]??_0x4b934b(0x190),'status':_0x4aa985[_0x4b934b(0x19e)],'manualResolutionRequired':_0x4aa985[_0x4b934b(0x18e)],'nextAction':_0x4aa985[_0x4b934b(0x191)],'standardPageStatus':_0x2317b2,'relatedPages':{'total':_0x2141e1[_0x4b934b(0x1ab)][_0x4b934b(0x193)],'undeletedCount':_0x156c06[_0x4b934b(0x193)]}}};}};function a115_0x3842(){const _0x23bc60=['code','appCode','14SxcgQi','GET','1189008FaCnlw','read','string','6631599vpJshp','/standard-page-status?appCode=','1614752apijtz','name','page','relatedPages','alias','3iOtZgC','40aHpEPy','manualResolutionRequired','224642EHIOiS','related-pages-fallback','nextAction','source','length','Query\x20Smart\x20List\x20Page\x20facts\x20for\x20a\x20dataset','/smartapi/lovrabet/dataset/','12mjQgRz','295URXUyk','1209750sofluB','standard-page-status','80UkSMmU','8TxPjnb','compress','1278800FwYdKM','status'];a115_0x3842=function(){return _0x23bc60;};return a115_0x3842();}
@@ -1 +1 @@
1
- function a115_0x4ed3(_0x8f871b,_0x1b4233){_0x8f871b=_0x8f871b-0xef;const _0x1802bd=a115_0x1802();let _0x4ed38b=_0x1802bd[_0x8f871b];return _0x4ed38b;}const a115_0x3d222a=a115_0x4ed3;function a115_0x1802(){const _0x4b1baa=['3942680IMBkQs','4695oTaXTf','18IdLSsF','318eytVCm','1251744ZsPoOV','name','/sync-to-pages','Dataset\x20alias\x20from\x20api.ts\x20(resolves\x20to\x20dataset\x20code\x20automatically)','appCode','dataset','sync','length','5276090QphYbN','部分页面同步失败','fieldCount','isArray','failedPages','compress','3832976WAKofC','undeletedPages','code','/smartapi/lovrabet/dataset/','string','9936325xquCCR','10634RoYRDc','5802RHpsvL','\x20undeleted\x20related\x20page(s)\x20found','page','同步成功'];a115_0x1802=function(){return _0x4b1baa;};return a115_0x1802();}(function(_0x4a665d,_0x51ab3f){const _0x388e57=a115_0x4ed3,_0x5350f3=_0x4a665d();while(!![]){try{const _0x420ce9=parseInt(_0x388e57(0x108))/0x1+parseInt(_0x388e57(0xff))/0x2*(parseInt(_0x388e57(0x107))/0x3)+-parseInt(_0x388e57(0xf9))/0x4+parseInt(_0x388e57(0x105))/0x5*(-parseInt(_0x388e57(0x100))/0x6)+parseInt(_0x388e57(0xfe))/0x7+-parseInt(_0x388e57(0x104))/0x8*(parseInt(_0x388e57(0x106))/0x9)+parseInt(_0x388e57(0xf3))/0xa;if(_0x420ce9===_0x51ab3f)break;else _0x5350f3['push'](_0x5350f3['shift']());}catch(_0x500646){_0x5350f3['push'](_0x5350f3['shift']());}}}(a115_0x1802,0xde4a7));import{APPCODE_FLAG_OPTIONAL,DATASETCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{loadDatasetDetailForPage,prepareDatasetAction,serializeDryRunDescription,validateDatasetSelector}from'../../commands/page/shared.js';import{syncStandardPages}from'../../core/api-client.js';export const pageSync={'service':a115_0x3d222a(0x102),'command':a115_0x3d222a(0xf1),'description':'Sync\x20dataset\x20changes\x20to\x20related\x20Smart\x20List\x20Pages','risk':'write','defaultOutputFormat':a115_0x3d222a(0xf8),'flags':[APPCODE_FLAG_OPTIONAL,DATASETCODE_FLAG_OPTIONAL,{'name':'alias','type':a115_0x3d222a(0xfd),'description':a115_0x3d222a(0x10b)}],async 'validate'(_0x1c3c13){validateDatasetSelector(_0x1c3c13);},async 'dryRun'(_0x588d3b){const _0x5b822a=a115_0x3d222a,_0x2e49c8=await prepare(_0x588d3b);return{'method':'POST','url':_0x5b822a(0xfc)+_0x2e49c8['dataset'][_0x5b822a(0xfb)]+_0x5b822a(0x10a),'body':{'appCode':_0x588d3b[_0x5b822a(0xef)]},'description':serializeDryRunDescription({'dataset':{'id':_0x2e49c8[_0x5b822a(0xf0)]['id'],'code':_0x2e49c8['dataset']['code'],'name':_0x2e49c8[_0x5b822a(0xf0)][_0x5b822a(0x109)],'fieldCount':_0x2e49c8['dataset'][_0x5b822a(0xf5)]},'relatedPages':{'total':_0x2e49c8[_0x5b822a(0xf0)]['relatedPages'][_0x5b822a(0xf2)],'undeletedCount':_0x2e49c8[_0x5b822a(0xfa)][_0x5b822a(0xf2)]},'action':_0x5b822a(0xf1),'reason':_0x2e49c8['undeletedPages'][_0x5b822a(0xf2)]+_0x5b822a(0x101)})};},async 'execute'(_0x329cf0){const _0x316710=a115_0x3d222a,_0x3717ac=await prepare(_0x329cf0),_0x3e18ee=await syncStandardPages(_0x329cf0['appCode'],_0x3717ac[_0x316710(0xf0)][_0x316710(0xfb)]),_0x1b14d0=Array[_0x316710(0xf6)](_0x3e18ee[_0x316710(0xf7)])&&_0x3e18ee[_0x316710(0xf7)][_0x316710(0xf2)]>0x0,_0x3b057a=_0x1b14d0?_0x316710(0xf4):_0x316710(0x103);return{'ok':!![],'message':_0x3b057a,'data':{'datasetCode':_0x3717ac[_0x316710(0xf0)][_0x316710(0xfb)],..._0x3e18ee}};}};async function prepare(_0x2efef6){const _0x5db31a=a115_0x3d222a,_0x545bc5=await loadDatasetDetailForPage(_0x2efef6);return prepareDatasetAction(_0x545bc5,_0x5db31a(0xf1));}
1
+ const a116_0x31bd5e=a116_0x4993;(function(_0x17b87b,_0x2fa861){const _0x46db3d=a116_0x4993,_0x3f5390=_0x17b87b();while(!![]){try{const _0x117250=-parseInt(_0x46db3d(0x123))/0x1*(-parseInt(_0x46db3d(0x114))/0x2)+-parseInt(_0x46db3d(0x121))/0x3+-parseInt(_0x46db3d(0x11d))/0x4*(parseInt(_0x46db3d(0x124))/0x5)+-parseInt(_0x46db3d(0x110))/0x6+parseInt(_0x46db3d(0x12a))/0x7*(parseInt(_0x46db3d(0x11a))/0x8)+-parseInt(_0x46db3d(0x119))/0x9*(parseInt(_0x46db3d(0x129))/0xa)+parseInt(_0x46db3d(0x127))/0xb;if(_0x117250===_0x2fa861)break;else _0x3f5390['push'](_0x3f5390['shift']());}catch(_0x29442f){_0x3f5390['push'](_0x3f5390['shift']());}}}(a116_0x146e,0x1bda8));import{APPCODE_FLAG_OPTIONAL,DATASETCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a116_0x4993(_0x2a14bb,_0x2c6a90){_0x2a14bb=_0x2a14bb-0x110;const _0x146ec7=a116_0x146e();let _0x49939b=_0x146ec7[_0x2a14bb];return _0x49939b;}function a116_0x146e(){const _0x1817c7=['824124hGjdOP','code','write','/sync-to-pages','404013FPPIFh','string','10mQaZRN','5BKNmNy','alias','\x20undeleted\x20related\x20page(s)\x20found','5417335OCJRIO','relatedPages','194290pvIqOb','5159CVYXYx','undeletedPages','fieldCount','725172bzuIyj','dataset','/smartapi/lovrabet/dataset/','failedPages','11970NwsCHp','Dataset\x20alias\x20from\x20api.ts\x20(resolves\x20to\x20dataset\x20code\x20automatically)','同步成功','compress','length','9vflpjv','464erpPaG','部分页面同步失败','sync'];a116_0x146e=function(){return _0x1817c7;};return a116_0x146e();}import{loadDatasetDetailForPage,prepareDatasetAction,serializeDryRunDescription,validateDatasetSelector}from'../../commands/page/shared.js';import{syncStandardPages}from'../../core/api-client.js';export const pageSync={'service':'page','command':a116_0x31bd5e(0x11c),'description':'Sync\x20dataset\x20changes\x20to\x20related\x20Smart\x20List\x20Pages','risk':a116_0x31bd5e(0x11f),'defaultOutputFormat':a116_0x31bd5e(0x117),'flags':[APPCODE_FLAG_OPTIONAL,DATASETCODE_FLAG_OPTIONAL,{'name':a116_0x31bd5e(0x125),'type':a116_0x31bd5e(0x122),'description':a116_0x31bd5e(0x115)}],async 'validate'(_0x1e54e3){validateDatasetSelector(_0x1e54e3);},async 'dryRun'(_0xc6f4a8){const _0x4a99c2=a116_0x31bd5e,_0x42f190=await prepare(_0xc6f4a8);return{'method':'POST','url':_0x4a99c2(0x112)+_0x42f190['dataset'][_0x4a99c2(0x11e)]+_0x4a99c2(0x120),'body':{'appCode':_0xc6f4a8['appCode']},'description':serializeDryRunDescription({'dataset':{'id':_0x42f190[_0x4a99c2(0x111)]['id'],'code':_0x42f190[_0x4a99c2(0x111)][_0x4a99c2(0x11e)],'name':_0x42f190[_0x4a99c2(0x111)]['name'],'fieldCount':_0x42f190['dataset'][_0x4a99c2(0x12c)]},'relatedPages':{'total':_0x42f190[_0x4a99c2(0x111)][_0x4a99c2(0x128)][_0x4a99c2(0x118)],'undeletedCount':_0x42f190[_0x4a99c2(0x12b)]['length']},'action':_0x4a99c2(0x11c),'reason':_0x42f190[_0x4a99c2(0x12b)][_0x4a99c2(0x118)]+_0x4a99c2(0x126)})};},async 'execute'(_0x292381){const _0x15e046=a116_0x31bd5e,_0x177c26=await prepare(_0x292381),_0x4fce22=await syncStandardPages(_0x292381['appCode'],_0x177c26[_0x15e046(0x111)][_0x15e046(0x11e)]),_0x57efba=Array['isArray'](_0x4fce22[_0x15e046(0x113)])&&_0x4fce22[_0x15e046(0x113)][_0x15e046(0x118)]>0x0,_0x516927=_0x57efba?_0x15e046(0x11b):_0x15e046(0x116);return{'ok':!![],'message':_0x516927,'data':{'datasetCode':_0x177c26[_0x15e046(0x111)][_0x15e046(0x11e)],..._0x4fce22}};}};async function prepare(_0x13918b){const _0x3b1602=a116_0x31bd5e,_0x56b0f6=await loadDatasetDetailForPage(_0x13918b);return prepareDatasetAction(_0x56b0f6,_0x3b1602(0x11c));}
@@ -1 +1 @@
1
- (function(_0x40b4cb,_0x10664e){const _0x4469d0=a116_0x3a38,_0x278fa5=_0x40b4cb();while(!![]){try{const _0x632d9e=parseInt(_0x4469d0(0x1f7))/0x1+parseInt(_0x4469d0(0x1fe))/0x2+parseInt(_0x4469d0(0x1ff))/0x3+parseInt(_0x4469d0(0x1f0))/0x4*(parseInt(_0x4469d0(0x1fa))/0x5)+-parseInt(_0x4469d0(0x1f9))/0x6+parseInt(_0x4469d0(0x1fb))/0x7*(-parseInt(_0x4469d0(0x1f5))/0x8)+-parseInt(_0x4469d0(0x202))/0x9*(parseInt(_0x4469d0(0x1f4))/0xa);if(_0x632d9e===_0x10664e)break;else _0x278fa5['push'](_0x278fa5['shift']());}catch(_0x218b0e){_0x278fa5['push'](_0x278fa5['shift']());}}}(a116_0x433b,0xae5b6));import{existsSync}from'node:fs';function a116_0x3a38(_0x5d53be,_0x59e523){_0x5d53be=_0x5d53be-0x1ea;const _0x433bca=a116_0x433b();let _0x3a38bd=_0x433bca[_0x5d53be];return _0x3a38bd;}import a116_0x1a5ce8 from'node:path';import a116_0x1bd139 from'chalk';import{input,confirm}from'@inquirer/prompts';import{getIsSessionValid}from'../../../auth/is-session-valid.js';import{authServer}from'../../../auth/auth-server.js';import{readConfig}from'../../../utils/config.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';function a116_0x433b(){const _0x2875da=['5955672PSQCen','34690IXMDXF','1877855fEdByb','Login\x20failed','trim','2364438UXpsJy','1912275XHJoUz','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','production','9tZcsZZ','env','length','my-app','√\x20App\x20Code:\x20','√\x20Project\x20Name:\x20','test','cwd','string','Logged\x20in','resolve','Project\x20name\x20cannot\x20exceed\x2050\x20characters','708tULbGD','log','Project\x20name:','Skipped','13836770gamhDk','8wNuCnm','cyan','311050bqlozo','green'];a116_0x433b=function(){return _0x2875da;};return a116_0x433b();}export async function guidedCreateProject(_0x4004ad,_0x155f0d,_0x5e50ed){const _0x1999d7=a116_0x3a38,_0x5675bd=_0x1999d7(0x205),_0x7e8ad4=readConfig(),_0x8fd590=typeof _0x7e8ad4['env']===_0x1999d7(0x1ec)?_0x7e8ad4[_0x1999d7(0x203)]:undefined,_0xd7c16c=await input({'message':_0x1999d7(0x1f2),'default':_0x5675bd,'validate':_0x3a76f8=>{const _0xbb73c0=_0x1999d7,_0x58e716=_0x3a76f8[_0xbb73c0(0x1fd)]()||_0x5675bd;if(_0x58e716[_0xbb73c0(0x204)]>0x32)return _0xbb73c0(0x1ef);const _0x19c917=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(_0x58e716&&!_0x19c917[_0xbb73c0(0x1ea)](_0x58e716))return'Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_';const _0x1777e4=a116_0x1a5ce8[_0xbb73c0(0x1ee)](process[_0xbb73c0(0x1eb)](),_0x58e716);if(existsSync(_0x1777e4))return'Directory\x20\x22'+_0x58e716+'\x22\x20already\x20exists';return!![];}});console[_0x1999d7(0x1f1)](a116_0x1bd139['green'](_0x1999d7(0x207)+a116_0x1bd139['cyan'](_0xd7c16c)));const _0xc20faf=await selectSingleAppcode(_0x5e50ed);console['log'](a116_0x1bd139[_0x1999d7(0x1f8)](_0x1999d7(0x206)+a116_0x1bd139[_0x1999d7(0x1f6)](_0xc20faf||'Not\x20set')));if(_0xc20faf){const _0x2da8ff=await getIsSessionValid();if(!_0x2da8ff){const _0x53991f=await confirm({'message':_0x1999d7(0x200),'default':!![]});if(_0x53991f){const _0x5db47e=await authServer({'silent':!![]});console[_0x1999d7(0x1f1)](a116_0x1bd139[_0x1999d7(0x1f8)]('√\x20Login\x20status:\x20'+a116_0x1bd139[_0x1999d7(0x1f6)](_0x5db47e?_0x1999d7(0x1ed):_0x1999d7(0x1fc))));}else console[_0x1999d7(0x1f1)](a116_0x1bd139[_0x1999d7(0x1f8)]('√\x20Login\x20status:\x20'+a116_0x1bd139[_0x1999d7(0x1f6)](_0x1999d7(0x1f3))));}await _0x4004ad({'projectName':_0xd7c16c,'appCode':_0xc20faf,'env':_0x155f0d||_0x8fd590||_0x1999d7(0x201)});}else await _0x4004ad({'projectName':_0xd7c16c,'env':_0x155f0d||_0x8fd590||_0x1999d7(0x201)});}
1
+ (function(_0x6931d6,_0x224e1c){const _0x43b633=a117_0x1297,_0x14007c=_0x6931d6();while(!![]){try{const _0x284e14=-parseInt(_0x43b633(0x149))/0x1+parseInt(_0x43b633(0x156))/0x2*(-parseInt(_0x43b633(0x153))/0x3)+-parseInt(_0x43b633(0x15f))/0x4+-parseInt(_0x43b633(0x14a))/0x5*(parseInt(_0x43b633(0x161))/0x6)+parseInt(_0x43b633(0x160))/0x7*(-parseInt(_0x43b633(0x15a))/0x8)+-parseInt(_0x43b633(0x14d))/0x9*(parseInt(_0x43b633(0x163))/0xa)+-parseInt(_0x43b633(0x164))/0xb*(-parseInt(_0x43b633(0x14b))/0xc);if(_0x284e14===_0x224e1c)break;else _0x14007c['push'](_0x14007c['shift']());}catch(_0x3987a3){_0x14007c['push'](_0x14007c['shift']());}}}(a117_0x3f62,0x493f4));function a117_0x1297(_0x43b093,_0x1e888b){_0x43b093=_0x43b093-0x149;const _0x3f62be=a117_0x3f62();let _0x129758=_0x3f62be[_0x43b093];return _0x129758;}import{existsSync}from'node:fs';import a117_0x1173cc from'node:path';import a117_0x2de0be from'chalk';import{input,confirm}from'@inquirer/prompts';import{getIsSessionValid}from'../../../auth/is-session-valid.js';function a117_0x3f62(){const _0x194f50=['1312104sFesrm','7RRcLcm','210ThEAtb','green','10zrudHQ','3556443eRzBVl','20966CDnDTf','33985fDatoA','72MmbLFU','Login\x20failed','5365431ULeDLO','cyan','Skipped','√\x20Login\x20status:\x20','length','log','21veFsNP','√\x20Project\x20Name:\x20','Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','109340bZALsV','Not\x20set','resolve','trim','592976ZyAhGD','string','Logged\x20in','Project\x20name:','Project\x20name\x20cannot\x20exceed\x2050\x20characters'];a117_0x3f62=function(){return _0x194f50;};return a117_0x3f62();}import{authServer}from'../../../auth/auth-server.js';import{readConfig}from'../../../utils/config.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';export async function guidedCreateProject(_0x39ec3e,_0x34079c,_0x45d8c2){const _0x8ebb83=a117_0x1297,_0x29a901='my-app',_0x2f3d46=readConfig(),_0x1ea4ca=typeof _0x2f3d46['env']===_0x8ebb83(0x15b)?_0x2f3d46['env']:undefined,_0x3b4dcd=await input({'message':_0x8ebb83(0x15d),'default':_0x29a901,'validate':_0x11ae4a=>{const _0x2e164e=_0x8ebb83,_0x25e95f=_0x11ae4a[_0x2e164e(0x159)]()||_0x29a901;if(_0x25e95f[_0x2e164e(0x151)]>0x32)return _0x2e164e(0x15e);const _0x27a861=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;if(_0x25e95f&&!_0x27a861['test'](_0x25e95f))return _0x2e164e(0x155);const _0x58dd05=a117_0x1173cc[_0x2e164e(0x158)](process['cwd'](),_0x25e95f);if(existsSync(_0x58dd05))return'Directory\x20\x22'+_0x25e95f+'\x22\x20already\x20exists';return!![];}});console[_0x8ebb83(0x152)](a117_0x2de0be[_0x8ebb83(0x162)](_0x8ebb83(0x154)+a117_0x2de0be[_0x8ebb83(0x14e)](_0x3b4dcd)));const _0x6eca26=await selectSingleAppcode(_0x45d8c2);console[_0x8ebb83(0x152)](a117_0x2de0be[_0x8ebb83(0x162)]('√\x20App\x20Code:\x20'+a117_0x2de0be['cyan'](_0x6eca26||_0x8ebb83(0x157))));if(_0x6eca26){const _0x2dcee6=await getIsSessionValid();if(!_0x2dcee6){const _0x2fcd17=await confirm({'message':'No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','default':!![]});if(_0x2fcd17){const _0x56fdd4=await authServer({'silent':!![]});console[_0x8ebb83(0x152)](a117_0x2de0be[_0x8ebb83(0x162)](_0x8ebb83(0x150)+a117_0x2de0be['cyan'](_0x56fdd4?_0x8ebb83(0x15c):_0x8ebb83(0x14c))));}else console[_0x8ebb83(0x152)](a117_0x2de0be[_0x8ebb83(0x162)]('√\x20Login\x20status:\x20'+a117_0x2de0be[_0x8ebb83(0x14e)](_0x8ebb83(0x14f))));}await _0x39ec3e({'projectName':_0x3b4dcd,'appCode':_0x6eca26,'env':_0x34079c||_0x1ea4ca||'production'});}else await _0x39ec3e({'projectName':_0x3b4dcd,'env':_0x34079c||_0x1ea4ca||'production'});}
@@ -1 +1 @@
1
- function a117_0x13cb(){const _0x16f8d8=['426502fKxzbZ','12VoMvuQ','3903486RqYqPT','23615sMDyDF','2156581CnglyP','5272496IUYrVw','302931wSvWtl','toFixed','160Afqnvl','replace','13066407ILXjNl'];a117_0x13cb=function(){return _0x16f8d8;};return a117_0x13cb();}function a117_0x3333(_0x20d951,_0x113f38){_0x20d951=_0x20d951-0x17b;const _0x13cb35=a117_0x13cb();let _0x333372=_0x13cb35[_0x20d951];return _0x333372;}(function(_0x50e6e5,_0x77a7fa){const _0x59b1ef=a117_0x3333,_0x5510ad=_0x50e6e5();while(!![]){try{const _0x1d4ad3=parseInt(_0x59b1ef(0x17e))/0x1+-parseInt(_0x59b1ef(0x17f))/0x2*(-parseInt(_0x59b1ef(0x184))/0x3)+-parseInt(_0x59b1ef(0x17b))/0x4*(parseInt(_0x59b1ef(0x181))/0x5)+parseInt(_0x59b1ef(0x180))/0x6+-parseInt(_0x59b1ef(0x182))/0x7+parseInt(_0x59b1ef(0x183))/0x8+-parseInt(_0x59b1ef(0x17d))/0x9;if(_0x1d4ad3===_0x77a7fa)break;else _0x5510ad['push'](_0x5510ad['shift']());}catch(_0x442e8f){_0x5510ad['push'](_0x5510ad['shift']());}}}(a117_0x13cb,0x5ffdd));export function formatElapsed(_0x517bb2){const _0x5b0b4a=a117_0x3333,_0x1168fe=Date['now']()-_0x517bb2;if(_0x1168fe<0x3e8)return _0x1168fe+'ms';const _0x23a2ba=(_0x1168fe/0x3e8)[_0x5b0b4a(0x185)](0x2),_0xd5cad2=_0x23a2ba[_0x5b0b4a(0x17c)](/\.?0+$/u,'');return _0xd5cad2+'s';}
1
+ function a118_0x1b7e(_0x4a9c54,_0x51306c){_0x4a9c54=_0x4a9c54-0x67;const _0x20cd39=a118_0x20cd();let _0x1b7e85=_0x20cd39[_0x4a9c54];return _0x1b7e85;}(function(_0x16fdc8,_0x3a6fff){const _0x275ed9=a118_0x1b7e,_0x359a06=_0x16fdc8();while(!![]){try{const _0x13dd94=parseInt(_0x275ed9(0x6b))/0x1*(parseInt(_0x275ed9(0x70))/0x2)+parseInt(_0x275ed9(0x69))/0x3+-parseInt(_0x275ed9(0x6d))/0x4+-parseInt(_0x275ed9(0x6c))/0x5+parseInt(_0x275ed9(0x72))/0x6*(parseInt(_0x275ed9(0x67))/0x7)+parseInt(_0x275ed9(0x68))/0x8*(-parseInt(_0x275ed9(0x6a))/0x9)+parseInt(_0x275ed9(0x71))/0xa*(parseInt(_0x275ed9(0x6e))/0xb);if(_0x13dd94===_0x3a6fff)break;else _0x359a06['push'](_0x359a06['shift']());}catch(_0x3e0733){_0x359a06['push'](_0x359a06['shift']());}}}(a118_0x20cd,0x4280f));export function formatElapsed(_0xf7f790){const _0x140887=a118_0x1b7e,_0x5eb8f3=Date['now']()-_0xf7f790;if(_0x5eb8f3<0x3e8)return _0x5eb8f3+'ms';const _0x468b89=(_0x5eb8f3/0x3e8)[_0x140887(0x73)](0x2),_0x2ac064=_0x468b89[_0x140887(0x6f)](/\.?0+$/u,'');return _0x2ac064+'s';}function a118_0x20cd(){const _0x45d498=['1036720rUGpxL','77vsTHBz','replace','11314gNCsmV','710770mUyDLf','7662emQudJ','toFixed','623RsQKvc','170592bkvKuu','821922hkZtmj','63XxfoDY','20WorBCv','1587295mTLTFW'];a118_0x20cd=function(){return _0x45d498;};return a118_0x20cd();}
@@ -1 +1 @@
1
- function a118_0x5f2e(_0x4b3f1b,_0x390b71){_0x4b3f1b=_0x4b3f1b-0x6b;const _0x622df9=a118_0x622d();let _0x5f2e7a=_0x622df9[_0x4b3f1b];return _0x5f2e7a;}(function(_0x4f0376,_0x84e01d){const _0x21f605=a118_0x5f2e,_0xb0c064=_0x4f0376();while(!![]){try{const _0x71a318=parseInt(_0x21f605(0x9b))/0x1*(-parseInt(_0x21f605(0x7f))/0x2)+parseInt(_0x21f605(0xa1))/0x3+parseInt(_0x21f605(0x8d))/0x4*(-parseInt(_0x21f605(0x86))/0x5)+parseInt(_0x21f605(0x8a))/0x6*(parseInt(_0x21f605(0xb8))/0x7)+-parseInt(_0x21f605(0x82))/0x8*(parseInt(_0x21f605(0xbb))/0x9)+parseInt(_0x21f605(0xa0))/0xa+parseInt(_0x21f605(0x7a))/0xb*(parseInt(_0x21f605(0xb3))/0xc);if(_0x71a318===_0x84e01d)break;else _0xb0c064['push'](_0xb0c064['shift']());}catch(_0x25ae3a){_0xb0c064['push'](_0xb0c064['shift']());}}}(a118_0x622d,0xb4253));import a118_0x2cd85b from'path';import a118_0x1e53e0 from'fs';import a118_0x210517 from'chalk';import a118_0x391224 from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../api/fetch-model-list.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{readConfig}from'../../../utils/config.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';import{logger}from'../../../utils/logger.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{PROJECT_CREATE_INHERITABLE_KEYS,buildCanonicalProjectConfig}from'../../../config/schema.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getRabetbaseCliPackageRoot}from'../../../commands/project/create/project-template-path.js';export async function createApp(_0x10a539){const _0x39a143=a118_0x5f2e,_0x26f172=await checkCliVersion();(_0x26f172['needsUpgrade']||_0x26f172[_0x39a143(0x9d)])&&(printCliUpgradeWarning(_0x26f172),assertCliVersionSupported(_0x26f172),logger[_0x39a143(0x78)](_0x39a143(0x98),_0x39a143(0x88),{'currentVersion':_0x26f172[_0x39a143(0xc5)],'stableVersion':_0x26f172[_0x39a143(0xa4)],'minimumVersion':_0x26f172['minimumVersion'],'needsUpgrade':_0x26f172[_0x39a143(0x7c)],'belowMinimum':_0x26f172['belowMinimum']}));if(_0x10a539[_0x39a143(0xac)]&&_0x10a539[_0x39a143(0x95)])await runCreate({'projectName':_0x10a539[_0x39a143(0xac)],'appCode':_0x10a539[_0x39a143(0x95)],'env':_0x10a539['env']},_0x10a539);else{if(_0x10a539[_0x39a143(0xac)]){const _0x23374c=await selectSingleAppcode(_0x10a539[_0x39a143(0xa7)]);await runCreate({'projectName':_0x10a539[_0x39a143(0xac)],'appCode':_0x23374c||undefined,'env':_0x10a539[_0x39a143(0x91)]},_0x10a539);}else await guidedCreateProject(_0x32d825=>runCreate(_0x32d825,_0x10a539),_0x10a539[_0x39a143(0x91)],_0x10a539['cookie']);}}async function runCreate(_0x1a66f2,_0x30f196){const _0x2873e4=a118_0x5f2e;if(!_0x1a66f2[_0x2873e4(0x93)]||_0x1a66f2[_0x2873e4(0x93)][_0x2873e4(0xaa)]()==='')throw new Error(_0x2873e4(0x92));const _0x1e7792=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x1e7792['test'](_0x1a66f2[_0x2873e4(0x93)]))throw new Error(_0x2873e4(0x87));if(_0x1a66f2[_0x2873e4(0x93)]['length']>0x64)throw new Error(_0x2873e4(0x99));const _0x3fd9cb=a118_0x2cd85b['resolve'](process[_0x2873e4(0x81)](),_0x1a66f2['projectName']);if(a118_0x1e53e0[_0x2873e4(0xae)](_0x3fd9cb))throw new Error(_0x2873e4(0xa3)+_0x1a66f2[_0x2873e4(0x93)]+_0x2873e4(0xb6));try{a118_0x1e53e0['accessSync'](a118_0x2cd85b[_0x2873e4(0xb7)](_0x3fd9cb),a118_0x1e53e0[_0x2873e4(0xa5)]['W_OK']);}catch{throw new Error(_0x2873e4(0x73));}logger[_0x2873e4(0xba)](_0x3fd9cb),logger[_0x2873e4(0x78)](_0x2873e4(0x98),'开始创建项目:\x20'+_0x1a66f2[_0x2873e4(0x93)],{'projectDir':_0x3fd9cb,'appCode':_0x1a66f2[_0x2873e4(0x95)]}),console[_0x2873e4(0xa6)](),console['log'](a118_0x210517['green'](_0x2873e4(0x79))+_0x2873e4(0x74)+a118_0x210517[_0x2873e4(0xb0)](_0x1a66f2[_0x2873e4(0x93)])+(_0x1a66f2['appCode']?_0x2873e4(0x71)+a118_0x210517[_0x2873e4(0x6c)](_0x1a66f2[_0x2873e4(0x95)]):''));try{await runTask('Copy\x20project\x20files',()=>copyProjectTemplate(_0x1a66f2[_0x2873e4(0x93)])),await updatePackageJsonName(_0x1a66f2[_0x2873e4(0x93)]),await runTask(_0x2873e4(0xc4),()=>installDependencies(_0x1a66f2['projectName'])),await runTask(_0x2873e4(0xbc),()=>formatProjectCode(_0x1a66f2[_0x2873e4(0x93)])),await configureAppCode(_0x1a66f2[_0x2873e4(0x93)],_0x1a66f2[_0x2873e4(0x95)]||'',_0x1a66f2[_0x2873e4(0x91)]);let _0x1f4bd2=![];if(_0x1a66f2[_0x2873e4(0x95)]){console[_0x2873e4(0xa6)](_0x2873e4(0xa9));const _0x75563f=process[_0x2873e4(0x81)]();try{process['chdir'](_0x3fd9cb);const _0x4309b8=_0x1a66f2[_0x2873e4(0x91)]||_0x2873e4(0x9f);initEnv(_0x4309b8);const {configArray:_0x2ad3e5}=await fetchModelList(_0x1a66f2['appCode'],_0x30f196[_0x2873e4(0xa7)]||''),_0x279fb6=DEFAULT_API_DIR,_0x2ed96e=await generateApiFile(_0x2ad3e5,'',_0x1a66f2[_0x2873e4(0x95)],!![],_0x4309b8,_0x279fb6);console[_0x2873e4(0xa6)](_0x2873e4(0x9a)+_0x2ad3e5[_0x2873e4(0x9e)]+_0x2873e4(0x8b)+_0x2ed96e['modelCount']+_0x2873e4(0x75)),logger['info'](_0x2873e4(0x98),_0x2873e4(0xbd)+_0x1a66f2[_0x2873e4(0x95)]);}catch(_0x147820){_0x1f4bd2=!![],console['log'](_0x2873e4(0xbe)),logger[_0x2873e4(0xaf)]('create',_0x2873e4(0xab),{'error':_0x147820 instanceof Error?_0x147820[_0x2873e4(0xb4)]:String(_0x147820)});}finally{process['chdir'](_0x75563f);}}logger['success'](_0x2873e4(0x98),'项目创建完成:\x20'+_0x1a66f2['projectName']),console[_0x2873e4(0xa6)](),console['log'](a118_0x210517[_0x2873e4(0xb0)]('─'[_0x2873e4(0x85)](0x3c))),console[_0x2873e4(0xa6)](a118_0x210517['cyan']['bold'](_0x2873e4(0xa8))),console[_0x2873e4(0xa6)](),console[_0x2873e4(0xa6)](_0x2873e4(0x89)+a118_0x210517['cyan'][_0x2873e4(0x7b)]('cd\x20'+_0x1a66f2[_0x2873e4(0x93)]+_0x2873e4(0xad)+CLI_BIN_NAME+'\x20run\x20start')),_0x1f4bd2&&console['log']('\x20\x202.\x20Pull\x20API\x20configuration:\x20'+a118_0x210517[_0x2873e4(0x6c)]['bold'](CLI_BIN_NAME+_0x2873e4(0x90))),console[_0x2873e4(0xa6)](a118_0x210517[_0x2873e4(0xb0)]('─'[_0x2873e4(0x85)](0x3c)));}catch(_0x31c59d){logger[_0x2873e4(0x83)]('create','项目创建失败:\x20'+_0x1a66f2['projectName'],{'error':_0x31c59d instanceof Error?_0x31c59d[_0x2873e4(0xb4)]:String(_0x31c59d)});try{a118_0x1e53e0['existsSync'](_0x3fd9cb)&&(console[_0x2873e4(0xa6)](_0x2873e4(0x94)+_0x3fd9cb),a118_0x1e53e0[_0x2873e4(0x6f)](_0x3fd9cb,{'recursive':!![],'force':!![]}));}catch{logger['warn'](_0x2873e4(0x98),'清理项目目录失败:\x20'+_0x3fd9cb);}throw _0x31c59d;}}async function runTask(_0x175ef3,_0x3f6028){const _0x563abf=a118_0x5f2e,_0x4c56f6=a118_0x391224(_0x175ef3+_0x563abf(0x70))[_0x563abf(0xb1)]();try{const _0x9185db=await _0x3f6028();_0x4c56f6[_0x563abf(0x6d)](),console[_0x563abf(0xa6)](''+a118_0x210517['green'](_0x563abf(0x79))+_0x175ef3+'\x20'+a118_0x210517[_0x563abf(0xa2)]('['+_0x9185db+']'));}catch(_0x18b52a){_0x4c56f6[_0x563abf(0x8c)](_0x175ef3);throw _0x18b52a;}}async function updatePackageJsonName(_0x54468d){const _0x5bf23e=a118_0x5f2e,_0x3d2dab=a118_0x2cd85b['resolve'](process[_0x5bf23e(0x81)](),_0x54468d),_0x21e613=a118_0x2cd85b[_0x5bf23e(0x96)](_0x3d2dab,_0x5bf23e(0xb9));try{console[_0x5bf23e(0xa6)](_0x5bf23e(0x97));const _0x110742=getRabetbaseCliPackageRoot(),_0x3d3909=a118_0x2cd85b[_0x5bf23e(0x96)](_0x110742,_0x5bf23e(0xb9));let _0x296762=_0x5bf23e(0x6b);try{const _0x4213ae=JSON[_0x5bf23e(0xb2)](a118_0x1e53e0[_0x5bf23e(0x7e)](_0x3d3909,_0x5bf23e(0xb5)));_0x296762=_0x4213ae['version']||_0x5bf23e(0x6b);}catch{}const _0x3eb7c0=a118_0x1e53e0[_0x5bf23e(0x7e)](_0x21e613,_0x5bf23e(0xb5)),_0x1a5e8c=JSON[_0x5bf23e(0xb2)](_0x3eb7c0);_0x1a5e8c['name']=_0x54468d,_0x1a5e8c[_0x5bf23e(0x84)]=_0x54468d+_0x5bf23e(0xc6)+_0x296762,a118_0x1e53e0[_0x5bf23e(0x76)](_0x21e613,JSON[_0x5bf23e(0x77)](_0x1a5e8c,null,0x2)+'\x0a','utf8'),console[_0x5bf23e(0xa6)](_0x5bf23e(0xbf)+_0x54468d),logger['info'](_0x5bf23e(0x98),_0x5bf23e(0x80));}catch(_0x558b61){logger[_0x5bf23e(0x83)](_0x5bf23e(0x98),_0x5bf23e(0x72));throw _0x558b61;}}function a118_0x622d(){const _0x4ecae4=['cwd','528vxpTWO','error','description','repeat','4980545SfRICo','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','CLI\x20版本检查','\x20\x201.\x20Start\x20project:\x20','366DoWCnX','\x20dataset(s),\x20generated\x20','fail','4hgEpaO','keys','\x20config\x20set\x20appcode\x20<app-code>\x27','\x20api\x20pull','env','Project\x20name\x20cannot\x20be\x20empty','projectName','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','appCode','join','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','create','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','√\x20Pulled\x20','1rkoSXS','配置应用AppCode失败','belowMinimum','length','production','9903790VVGdHs','2353998BxAnPe','gray','Project\x20directory\x20','stableVersion','constants','log','cookie','🚀\x20Next\x20Steps:','*\x20Pulling\x20API\x20configuration...','trim','API\x20配置拉取异常','projectCode','\x20&&\x20','existsSync','warn','green','start','parse','2724WRTOYC','message','utf8','\x20already\x20exists','dirname','8981WZjRVN','package.json','setLogPath','68850GdxXcu','Format\x20code','API\x20configuration\x20pulled:\x20','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','√\x20package.json\x20updated:\x20name=','\x20|\x20Default:\x20','version','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','resolve','Install\x20dependencies','currentVersion','\x20Generated\x20by\x20rabetbase\x20cli\x20','1.0.0','cyan','stop','配置应用AppCode:\x20','rmSync','...','\x20|\x20AppCode:\x20','更新\x20package.json\x20失败','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','Project\x20name:\x20','\x20model(s)','writeFileSync','stringify','info','\x20√\x20','77077TVrpUp','bold','needsUpgrade','√\x20Configuration\x20file\x20created,\x20Apps:\x20','readFileSync','2410026jJxjSB','更新\x20package.json\x20name'];a118_0x622d=function(){return _0x4ecae4;};return a118_0x622d();}async function configureAppCode(_0x29097f,_0x16dd86,_0x11e440){const _0x45a01c=a118_0x5f2e,_0x48ab8f=a118_0x2cd85b[_0x45a01c(0xc3)](process['cwd'](),_0x29097f),_0x29883e=a118_0x2cd85b[_0x45a01c(0x96)](_0x48ab8f,NEW_CONFIG_NAME);try{_0x16dd86?console[_0x45a01c(0xa6)]('*\x20Configuring\x20AppCode\x20for\x20project\x20'+_0x29097f+':\x20'+_0x16dd86):console[_0x45a01c(0xa6)](_0x45a01c(0xc2)+_0x29097f);const _0x2bc6c5=getRabetbaseCliPackageRoot(),_0x5321d9=a118_0x2cd85b[_0x45a01c(0x96)](_0x2bc6c5,_0x45a01c(0xb9));let _0x55d5f3=_0x45a01c(0x6b);try{const _0xa30a6d=JSON['parse'](a118_0x1e53e0[_0x45a01c(0x7e)](_0x5321d9,_0x45a01c(0xb5)));_0x55d5f3=_0xa30a6d[_0x45a01c(0xc1)]||_0x45a01c(0x6b);}catch{}const _0x441f39=readConfig(),_0x1f364d=typeof _0x441f39[_0x45a01c(0x91)]==='string'?_0x441f39[_0x45a01c(0x91)]:undefined,_0x28657e={};for(const _0x123775 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x441f39[_0x123775]!=null)_0x28657e[_0x123775]=_0x441f39[_0x123775];}const _0x2579e9=buildCanonicalProjectConfig(_0x28657e,{'appCodes':_0x16dd86?[_0x16dd86]:[],'env':_0x11e440||_0x1f364d||_0x45a01c(0x9f),'metadata':{'createdAt':new Date()['toLocaleString'](),'version':_0x55d5f3}});writeConfigFile(_0x29883e,_0x2579e9),_0x16dd86?console['log'](_0x45a01c(0x7d)+Object[_0x45a01c(0x8e)](_0x2579e9['apps']||{})[_0x45a01c(0x96)](',\x20')+_0x45a01c(0xc0)+_0x2579e9['defaultApp']):console['log']('√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27'+CLI_BIN_NAME+_0x45a01c(0x8f)),logger[_0x45a01c(0x78)](_0x45a01c(0x98),_0x45a01c(0x6e)+_0x16dd86);}catch(_0x429027){logger[_0x45a01c(0x83)](_0x45a01c(0x98),_0x45a01c(0x9c));}}
1
+ (function(_0x115ec9,_0x2cfd06){const _0x203df3=a119_0x2eed,_0xcfdde8=_0x115ec9();while(!![]){try{const _0x48c1b3=-parseInt(_0x203df3(0xba))/0x1+parseInt(_0x203df3(0x99))/0x2*(-parseInt(_0x203df3(0xb6))/0x3)+parseInt(_0x203df3(0x6e))/0x4+-parseInt(_0x203df3(0x78))/0x5+-parseInt(_0x203df3(0xbc))/0x6+-parseInt(_0x203df3(0x97))/0x7+parseInt(_0x203df3(0xb8))/0x8*(parseInt(_0x203df3(0x81))/0x9);if(_0x48c1b3===_0x2cfd06)break;else _0xcfdde8['push'](_0xcfdde8['shift']());}catch(_0xed41e2){_0xcfdde8['push'](_0xcfdde8['shift']());}}}(a119_0x2dd6,0x2ae1a));import a119_0x4e6ff5 from'path';import a119_0x4e7e12 from'fs';import a119_0x432498 from'chalk';import a119_0x12c442 from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../api/fetch-model-list.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{readConfig}from'../../../utils/config.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';import{logger}from'../../../utils/logger.js';function a119_0x2eed(_0x4c0be5,_0x2d44da){_0x4c0be5=_0x4c0be5-0x65;const _0x2dd60f=a119_0x2dd6();let _0x2eed73=_0x2dd60f[_0x4c0be5];return _0x2eed73;}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(_0x3aadf5){const _0x477628=a119_0x2eed,_0x767fd9=await checkCliVersion();(_0x767fd9[_0x477628(0x88)]||_0x767fd9[_0x477628(0xa0)])&&(printCliUpgradeWarning(_0x767fd9),assertCliVersionSupported(_0x767fd9),logger['info'](_0x477628(0xa6),_0x477628(0xa2),{'currentVersion':_0x767fd9['currentVersion'],'stableVersion':_0x767fd9[_0x477628(0x7a)],'minimumVersion':_0x767fd9[_0x477628(0x72)],'needsUpgrade':_0x767fd9[_0x477628(0x88)],'belowMinimum':_0x767fd9[_0x477628(0xa0)]}));if(_0x3aadf5[_0x477628(0x79)]&&_0x3aadf5[_0x477628(0x8a)])await runCreate({'projectName':_0x3aadf5[_0x477628(0x79)],'appCode':_0x3aadf5['appCode'],'env':_0x3aadf5[_0x477628(0xa4)]},_0x3aadf5);else{if(_0x3aadf5[_0x477628(0x79)]){const _0x517ab5=await selectSingleAppcode(_0x3aadf5[_0x477628(0x93)]);await runCreate({'projectName':_0x3aadf5[_0x477628(0x79)],'appCode':_0x517ab5||undefined,'env':_0x3aadf5[_0x477628(0xa4)]},_0x3aadf5);}else await guidedCreateProject(_0x2f4988=>runCreate(_0x2f4988,_0x3aadf5),_0x3aadf5[_0x477628(0xa4)],_0x3aadf5[_0x477628(0x93)]);}}async function runCreate(_0x17acb6,_0x1445cb){const _0x5b74a8=a119_0x2eed;if(!_0x17acb6[_0x5b74a8(0x83)]||_0x17acb6[_0x5b74a8(0x83)]['trim']()==='')throw new Error(_0x5b74a8(0x8e));const _0x3ca438=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x3ca438[_0x5b74a8(0xa9)](_0x17acb6[_0x5b74a8(0x83)]))throw new Error(_0x5b74a8(0x74));if(_0x17acb6[_0x5b74a8(0x83)]['length']>0x64)throw new Error(_0x5b74a8(0x76));const _0xd3b115=a119_0x4e6ff5[_0x5b74a8(0x7e)](process[_0x5b74a8(0x68)](),_0x17acb6[_0x5b74a8(0x83)]);if(a119_0x4e7e12['existsSync'](_0xd3b115))throw new Error('Project\x20directory\x20'+_0x17acb6[_0x5b74a8(0x83)]+'\x20already\x20exists');try{a119_0x4e7e12['accessSync'](a119_0x4e6ff5[_0x5b74a8(0xab)](_0xd3b115),a119_0x4e7e12[_0x5b74a8(0x6d)][_0x5b74a8(0x8f)]);}catch{throw new Error('Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions');}logger[_0x5b74a8(0x98)](_0xd3b115),logger['info'](_0x5b74a8(0xa6),_0x5b74a8(0xa5)+_0x17acb6[_0x5b74a8(0x83)],{'projectDir':_0xd3b115,'appCode':_0x17acb6['appCode']}),console[_0x5b74a8(0x94)](),console[_0x5b74a8(0x94)](a119_0x432498[_0x5b74a8(0x7b)](_0x5b74a8(0xac))+_0x5b74a8(0x9e)+a119_0x432498[_0x5b74a8(0x7b)](_0x17acb6[_0x5b74a8(0x83)])+(_0x17acb6[_0x5b74a8(0x8a)]?'\x20|\x20AppCode:\x20'+a119_0x432498['cyan'](_0x17acb6['appCode']):''));try{await runTask(_0x5b74a8(0x6c),()=>copyProjectTemplate(_0x17acb6[_0x5b74a8(0x83)])),await updatePackageJsonName(_0x17acb6['projectName']),await runTask(_0x5b74a8(0xad),()=>installDependencies(_0x17acb6['projectName'])),await runTask(_0x5b74a8(0x70),()=>formatProjectCode(_0x17acb6[_0x5b74a8(0x83)])),await configureAppCode(_0x17acb6[_0x5b74a8(0x83)],_0x17acb6[_0x5b74a8(0x8a)]||'',_0x17acb6[_0x5b74a8(0xa4)]);let _0x37af46=![];if(_0x17acb6[_0x5b74a8(0x8a)]){console['log']('*\x20Pulling\x20API\x20configuration...');const _0x1eee3b=process[_0x5b74a8(0x68)]();try{process[_0x5b74a8(0xb1)](_0xd3b115);const _0x1f33dd=_0x17acb6[_0x5b74a8(0xa4)]||_0x5b74a8(0x87);initEnv(_0x1f33dd);const {configArray:_0x273b0a}=await fetchModelList(_0x17acb6[_0x5b74a8(0x8a)],_0x1445cb[_0x5b74a8(0x93)]||''),_0x1adda6=DEFAULT_API_DIR,_0xa2b8ba=await generateApiFile(_0x273b0a,'',_0x17acb6[_0x5b74a8(0x8a)],!![],_0x1f33dd,_0x1adda6);console['log'](_0x5b74a8(0xae)+_0x273b0a['length']+_0x5b74a8(0x75)+_0xa2b8ba['modelCount']+'\x20model(s)'),logger[_0x5b74a8(0xb7)](_0x5b74a8(0xa6),_0x5b74a8(0x80)+_0x17acb6['appCode']);}catch(_0x1f323f){_0x37af46=!![],console['log'](_0x5b74a8(0xaf)),logger[_0x5b74a8(0x69)](_0x5b74a8(0xa6),_0x5b74a8(0x67),{'error':_0x1f323f instanceof Error?_0x1f323f[_0x5b74a8(0xb9)]:String(_0x1f323f)});}finally{process[_0x5b74a8(0xb1)](_0x1eee3b);}}logger[_0x5b74a8(0x66)]('create',_0x5b74a8(0x71)+_0x17acb6[_0x5b74a8(0x83)]),console[_0x5b74a8(0x94)](),console[_0x5b74a8(0x94)](a119_0x432498[_0x5b74a8(0x7b)]('─'[_0x5b74a8(0x6b)](0x3c))),console['log'](a119_0x432498[_0x5b74a8(0x7c)]['bold']('🚀\x20Next\x20Steps:')),console[_0x5b74a8(0x94)](),console[_0x5b74a8(0x94)]('\x20\x201.\x20Start\x20project:\x20'+a119_0x432498[_0x5b74a8(0x7c)]['bold'](_0x5b74a8(0x86)+_0x17acb6['projectName']+'\x20&&\x20'+CLI_BIN_NAME+_0x5b74a8(0x8d))),_0x37af46&&console[_0x5b74a8(0x94)]('\x20\x202.\x20Pull\x20API\x20configuration:\x20'+a119_0x432498['cyan'][_0x5b74a8(0xa1)](CLI_BIN_NAME+_0x5b74a8(0xa3))),console[_0x5b74a8(0x94)](a119_0x432498[_0x5b74a8(0x7b)]('─'[_0x5b74a8(0x6b)](0x3c)));}catch(_0x2f89ea){logger['error'](_0x5b74a8(0xa6),_0x5b74a8(0x9c)+_0x17acb6[_0x5b74a8(0x83)],{'error':_0x2f89ea instanceof Error?_0x2f89ea[_0x5b74a8(0xb9)]:String(_0x2f89ea)});try{a119_0x4e7e12[_0x5b74a8(0x7d)](_0xd3b115)&&(console['log']('*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20'+_0xd3b115),a119_0x4e7e12[_0x5b74a8(0x6a)](_0xd3b115,{'recursive':!![],'force':!![]}));}catch{logger['warn'](_0x5b74a8(0xa6),_0x5b74a8(0x82)+_0xd3b115);}throw _0x2f89ea;}}function a119_0x2dd6(){const _0x57193a=['create','\x20config\x20set\x20appcode\x20<app-code>\x27','stringify','test','配置应用AppCode:\x20','dirname','\x20√\x20','Install\x20dependencies','√\x20Pulled\x20','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20rabetbase\x20api\x20pull','version','chdir','join','package.json','√\x20package.json\x20updated:\x20name=','utf8','213fVgVQp','info','1816eeZxTE','message','293310Eyzvsu','\x20Generated\x20by\x20rabetbase\x20cli\x20','1560702Eumkuy','stop','keys','success','API\x20配置拉取异常','cwd','warn','rmSync','repeat','Copy\x20project\x20files','constants','964652vWcjev','更新\x20package.json\x20name','Format\x20code','项目创建完成:\x20','minimumVersion','error','Invalid\x20characters\x20in\x20project\x20name.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','\x20dataset(s),\x20generated\x20','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','1594140sSkNks','projectCode','stableVersion','green','cyan','existsSync','resolve','name','API\x20configuration\x20pulled:\x20','39789hbMWuM','清理项目目录失败:\x20','projectName','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','更新\x20package.json\x20失败','cd\x20','production','needsUpgrade','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','appCode','配置应用AppCode失败','parse','\x20run\x20start','Project\x20name\x20cannot\x20be\x20empty','W_OK','readFileSync','toLocaleString','...','cookie','log','string','start','962836cdRnSa','setLogPath','1670HbDXVL','√\x20Configuration\x20file\x20created,\x20Apps:\x20','*\x20Configuring\x20AppCode\x20for\x20project\x20','项目创建失败:\x20','gray','Project\x20name:\x20','1.0.0','belowMinimum','bold','CLI\x20版本检查','\x20api\x20pull','env','开始创建项目:\x20'];a119_0x2dd6=function(){return _0x57193a;};return a119_0x2dd6();}async function runTask(_0x2c253b,_0x31a8d1){const _0x41acfb=a119_0x2eed,_0x42cacf=a119_0x12c442(_0x2c253b+_0x41acfb(0x92))[_0x41acfb(0x96)]();try{const _0x5ae716=await _0x31a8d1();_0x42cacf[_0x41acfb(0xbd)](),console[_0x41acfb(0x94)](''+a119_0x432498[_0x41acfb(0x7b)]('\x20√\x20')+_0x2c253b+'\x20'+a119_0x432498[_0x41acfb(0x9d)]('['+_0x5ae716+']'));}catch(_0xd0a7b5){_0x42cacf['fail'](_0x2c253b);throw _0xd0a7b5;}}async function updatePackageJsonName(_0x90f1b0){const _0x4468d8=a119_0x2eed,_0x54ce0f=a119_0x4e6ff5[_0x4468d8(0x7e)](process['cwd'](),_0x90f1b0),_0x35112b=a119_0x4e6ff5[_0x4468d8(0xb2)](_0x54ce0f,'package.json');try{console[_0x4468d8(0x94)](_0x4468d8(0x89));const _0x1bf8fd=getRabetbaseCliPackageRoot(),_0x225eea=a119_0x4e6ff5[_0x4468d8(0xb2)](_0x1bf8fd,_0x4468d8(0xb3));let _0x2dabb7=_0x4468d8(0x9f);try{const _0xa1c590=JSON['parse'](a119_0x4e7e12[_0x4468d8(0x90)](_0x225eea,_0x4468d8(0xb5)));_0x2dabb7=_0xa1c590['version']||_0x4468d8(0x9f);}catch{}const _0x113653=a119_0x4e7e12[_0x4468d8(0x90)](_0x35112b,'utf8'),_0x45c755=JSON[_0x4468d8(0x8c)](_0x113653);_0x45c755[_0x4468d8(0x7f)]=_0x90f1b0,_0x45c755['description']=_0x90f1b0+_0x4468d8(0xbb)+_0x2dabb7,a119_0x4e7e12['writeFileSync'](_0x35112b,JSON[_0x4468d8(0xa8)](_0x45c755,null,0x2)+'\x0a',_0x4468d8(0xb5)),console[_0x4468d8(0x94)](_0x4468d8(0xb4)+_0x90f1b0),logger[_0x4468d8(0xb7)](_0x4468d8(0xa6),_0x4468d8(0x6f));}catch(_0x3eedef){logger['error'](_0x4468d8(0xa6),_0x4468d8(0x85));throw _0x3eedef;}}async function configureAppCode(_0x48233e,_0x3d2ce1,_0x1660f8){const _0x39e995=a119_0x2eed,_0x2ccf19=a119_0x4e6ff5['resolve'](process[_0x39e995(0x68)](),_0x48233e),_0x58b072=a119_0x4e6ff5['join'](_0x2ccf19,NEW_CONFIG_NAME);try{_0x3d2ce1?console[_0x39e995(0x94)](_0x39e995(0x9b)+_0x48233e+':\x20'+_0x3d2ce1):console[_0x39e995(0x94)](_0x39e995(0x84)+_0x48233e);const _0x4b25c5=getRabetbaseCliPackageRoot(),_0x48ba0e=a119_0x4e6ff5['join'](_0x4b25c5,_0x39e995(0xb3));let _0x4c1873=_0x39e995(0x9f);try{const _0x1153d5=JSON[_0x39e995(0x8c)](a119_0x4e7e12[_0x39e995(0x90)](_0x48ba0e,_0x39e995(0xb5)));_0x4c1873=_0x1153d5[_0x39e995(0xb0)]||'1.0.0';}catch{}const _0x1b3ab5=readConfig(),_0x138809=typeof _0x1b3ab5[_0x39e995(0xa4)]===_0x39e995(0x95)?_0x1b3ab5[_0x39e995(0xa4)]:undefined,_0x367c24={};for(const _0x415319 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x1b3ab5[_0x415319]!=null)_0x367c24[_0x415319]=_0x1b3ab5[_0x415319];}const _0x223b7b=buildCanonicalProjectConfig(_0x367c24,{'appCodes':_0x3d2ce1?[_0x3d2ce1]:[],'env':_0x1660f8||_0x138809||_0x39e995(0x87),'metadata':{'createdAt':new Date()[_0x39e995(0x91)](),'version':_0x4c1873}});writeConfigFile(_0x58b072,_0x223b7b),_0x3d2ce1?console[_0x39e995(0x94)](_0x39e995(0x9a)+Object[_0x39e995(0x65)](_0x223b7b['apps']||{})[_0x39e995(0xb2)](',\x20')+'\x20|\x20Default:\x20'+_0x223b7b['defaultApp']):console[_0x39e995(0x94)](_0x39e995(0x77)+CLI_BIN_NAME+_0x39e995(0xa7)),logger['info']('create',_0x39e995(0xaa)+_0x3d2ce1);}catch(_0x34e09b){logger[_0x39e995(0x73)](_0x39e995(0xa6),_0x39e995(0x8b));}}
@@ -1 +1 @@
1
- (function(_0x1b9b5b,_0x67f483){const _0x5dcff7=a119_0x2a39,_0x3af0db=_0x1b9b5b();while(!![]){try{const _0x2a3e4e=parseInt(_0x5dcff7(0x11e))/0x1+parseInt(_0x5dcff7(0x10c))/0x2+-parseInt(_0x5dcff7(0xec))/0x3*(-parseInt(_0x5dcff7(0xe9))/0x4)+-parseInt(_0x5dcff7(0x118))/0x5*(-parseInt(_0x5dcff7(0xf0))/0x6)+parseInt(_0x5dcff7(0xfb))/0x7+parseInt(_0x5dcff7(0xff))/0x8+-parseInt(_0x5dcff7(0xfe))/0x9;if(_0x2a3e4e===_0x67f483)break;else _0x3af0db['push'](_0x3af0db['shift']());}catch(_0xfe2f09){_0x3af0db['push'](_0x3af0db['shift']());}}}(a119_0x5753,0x5d170));import a119_0x566cf0 from'path';import a119_0x5300a4 from'fs/promises';function a119_0x2a39(_0x481c64,_0x20cb3a){_0x481c64=_0x481c64-0xe7;const _0x575321=a119_0x5753();let _0x2a39b8=_0x575321[_0x481c64];return _0x2a39b8;}import{existsSync}from'fs';function a119_0x5753(){const _0x1c4adb=['\x0a\x20\x20cd\x20','package.json','221929rObswt','npm','chdir','trim','resolve','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','writeFile','24bLxKmC','Project\x20directory\x20\x22','ignore','144546QHSAPd','log','validation','W_OK','3048DkBirZ','\x20\x20Pulling\x20API\x20configuration...','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','\x20api\x20pull`\x20manually\x20later.','access','\x20\x20√\x20Project\x20template\x20created','\x20\x20√\x20Code\x20formatted','needsUpgrade','\x0a√\x20Project\x20','Cannot\x20create\x20project\x20in\x20current\x20directory.','5201700cdvlEK','description','modelCount','17484876hcJLWt','762824Pjqxta','Project\x20name\x20contains\x20invalid\x20characters.','toLocaleString','*\x20Creating\x20project\x20','readFile','string','bun\x20--version','parse','env','stringify','name','\x20created\x20successfully!','bun\x20run\x20format','1448284bQHvFg','constants','test','\x22\x20already\x20exists.','\x20model(s)','Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','bun','Use\x20a\x20different\x20project\x20name.','\x20\x20rabetbase\x20run\x20start\x0a','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','Check\x20directory\x20permissions.','cwd','2465mjVext','belowMinimum','\x20dataset(s),\x20generated\x20','production'];a119_0x5753=function(){return _0x1c4adb;};return a119_0x5753();}import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';import{fetchModelList}from'../../../api/fetch-model-list.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(_0x4cb6b4,_0x3b1b78,_0x2a0585,_0xb043f9){const _0x1cddcc=a119_0x2a39,_0x568ab9=await checkCliVersion();(_0x568ab9[_0x1cddcc(0xf8)]||_0x568ab9[_0x1cddcc(0x119)])&&(printCliUpgradeWarning(_0x568ab9),assertCliVersionSupported(_0x568ab9));if(!_0x4cb6b4||_0x4cb6b4[_0x1cddcc(0x121)]()==='')throw CliErrors[_0x1cddcc(0xee)]('Project\x20name\x20cannot\x20be\x20empty.');const _0x1703e8=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x1703e8[_0x1cddcc(0x10e)](_0x4cb6b4))throw CliErrors[_0x1cddcc(0xee)](_0x1cddcc(0x100),_0x1cddcc(0x111));if(_0x4cb6b4['length']>0x64)throw CliErrors[_0x1cddcc(0xee)](_0x1cddcc(0x115));const _0x469363=a119_0x566cf0[_0x1cddcc(0x122)](process[_0x1cddcc(0x117)](),_0x4cb6b4);if(existsSync(_0x469363))throw CliErrors[_0x1cddcc(0xee)](_0x1cddcc(0xea)+_0x4cb6b4+_0x1cddcc(0x10f),_0x1cddcc(0x113));try{const _0x40172b=a119_0x566cf0['dirname'](_0x469363);await a119_0x5300a4[_0x1cddcc(0xf5)](_0x40172b,a119_0x5300a4[_0x1cddcc(0x10d)][_0x1cddcc(0xef)]);}catch{throw CliErrors[_0x1cddcc(0xee)](_0x1cddcc(0xfa),_0x1cddcc(0x116));}try{console['log'](_0x1cddcc(0x102)+_0x4cb6b4+'...');const _0x282623=getSubAppReactDemoTemplateDir();await copyDirectory(_0x282623,_0x469363),console[_0x1cddcc(0xed)](_0x1cddcc(0xf6)),await updatePackageJsonName(_0x4cb6b4),console[_0x1cddcc(0xed)]('\x20\x20√\x20package.json\x20updated'),console['log']('\x20\x20Installing\x20dependencies...'),console[_0x1cddcc(0xed)](_0x1cddcc(0xf3)),await formatCode(_0x469363),console['log'](_0x1cddcc(0xf7)),await configureProject(_0x4cb6b4,_0x2a0585,_0x3b1b78),console[_0x1cddcc(0xed)]('\x20\x20√\x20Configuration\x20file\x20created'),_0x2a0585&&await pullApiConfig(_0x469363,_0x2a0585,_0x3b1b78,_0xb043f9),console[_0x1cddcc(0xed)](_0x1cddcc(0xf9)+_0x4cb6b4+_0x1cddcc(0x10a)),console[_0x1cddcc(0xed)](_0x1cddcc(0x11c)+_0x4cb6b4),console[_0x1cddcc(0xed)](_0x1cddcc(0x114));}catch(_0x4c5e04){try{existsSync(_0x469363)&&await a119_0x5300a4['rm'](_0x469363,{'recursive':!![],'force':!![]});}catch{}throw _0x4c5e04;}}async function updatePackageJsonName(_0xd68c6f){const _0x4dc9d9=a119_0x2a39,_0x383b0e=a119_0x566cf0['resolve'](process['cwd'](),_0xd68c6f),_0x460803=a119_0x566cf0['join'](_0x383b0e,_0x4dc9d9(0x11d)),_0x2946c6=await a119_0x5300a4[_0x4dc9d9(0x103)](_0x460803,'utf-8'),_0x4a5946=JSON[_0x4dc9d9(0x106)](_0x2946c6);_0x4a5946[_0x4dc9d9(0x109)]=_0xd68c6f,_0x4a5946[_0x4dc9d9(0xfc)]=_0x4dc9d9(0xe7),await a119_0x5300a4[_0x4dc9d9(0xe8)](_0x460803,JSON[_0x4dc9d9(0x108)](_0x4a5946,null,0x2)+'\x0a');}function detectPackageManager(){const _0x52314a=a119_0x2a39;try{return execSync(_0x52314a(0x105),{'stdio':_0x52314a(0xeb)}),_0x52314a(0x112);}catch{return _0x52314a(0x11f);}}async function formatCode(_0xa1b63b){const _0x583c62=a119_0x2a39;try{await execAsync(_0x583c62(0x10b),{'cwd':_0xa1b63b});}catch{}}async function configureProject(_0x4bf7f6,_0x4a07ce,_0x15a276){const _0xd9c74=a119_0x2a39,_0x2202f7=a119_0x566cf0['resolve'](process['cwd'](),_0x4bf7f6),_0x1654bf=a119_0x566cf0['join'](_0x2202f7,NEW_CONFIG_NAME),_0x3a8d39=readConfig(),_0x593487=typeof _0x3a8d39[_0xd9c74(0x107)]===_0xd9c74(0x104)?_0x3a8d39[_0xd9c74(0x107)]:undefined,_0x364bda={};for(const _0x54432a of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x3a8d39[_0x54432a]!=null)_0x364bda[_0x54432a]=_0x3a8d39[_0x54432a];}const _0x29d0fd=buildCanonicalProjectConfig(_0x364bda,{'appCodes':_0x4a07ce?[_0x4a07ce]:[],'env':_0x15a276||_0x593487||_0xd9c74(0x11b),'metadata':{'createdAt':new Date()[_0xd9c74(0x101)](),'version':getCliVersion()}});writeConfigFile(_0x1654bf,_0x29d0fd);}async function pullApiConfig(_0x9fd6ea,_0xabf843,_0x41f273,_0x53eba2){const _0x31cf65=a119_0x2a39,_0x4c6285=process['cwd']();try{process[_0x31cf65(0x120)](_0x9fd6ea);const _0x66e6=_0x41f273||_0x31cf65(0x11b);initEnv(_0x66e6),console[_0x31cf65(0xed)](_0x31cf65(0xf1));const {configArray:_0x124682}=await fetchModelList(_0xabf843,_0x53eba2||''),_0x2aec1b=await generateApiFile(_0x124682,'',_0xabf843,!![],_0x66e6,DEFAULT_API_DIR);console[_0x31cf65(0xed)]('\x20\x20√\x20Pulled\x20'+_0x124682['length']+_0x31cf65(0x11a)+_0x2aec1b[_0x31cf65(0xfd)]+_0x31cf65(0x110));}catch(_0x4f4d0f){console[_0x31cf65(0xed)](_0x31cf65(0xf2)+CLI_BIN_NAME+_0x31cf65(0xf4));}finally{process[_0x31cf65(0x120)](_0x4c6285);}}
1
+ (function(_0x8c1631,_0x3cd1aa){const _0x27ac7b=a120_0x1c73,_0x4adaeb=_0x8c1631();while(!![]){try{const _0x336573=parseInt(_0x27ac7b(0x1cf))/0x1+-parseInt(_0x27ac7b(0x1de))/0x2+parseInt(_0x27ac7b(0x1be))/0x3+-parseInt(_0x27ac7b(0x1ea))/0x4*(-parseInt(_0x27ac7b(0x1e4))/0x5)+-parseInt(_0x27ac7b(0x1dd))/0x6*(parseInt(_0x27ac7b(0x1e2))/0x7)+-parseInt(_0x27ac7b(0x1e0))/0x8+parseInt(_0x27ac7b(0x1e6))/0x9;if(_0x336573===_0x3cd1aa)break;else _0x4adaeb['push'](_0x4adaeb['shift']());}catch(_0x1acfab){_0x4adaeb['push'](_0x4adaeb['shift']());}}}(a120_0x5dbb,0xbf297));import a120_0x576d9e from'path';import a120_0x26273b from'fs/promises';import{existsSync}from'fs';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{exec,execSync}from'child_process';import{copyDirectory}from'../../../utils/copy-directory.js';import{promisify}from'util';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../../utils/cli-version-check.js';import{writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{readConfig}from'../../../utils/config.js';import{getCliVersion}from'../../../utils/version.js';import{CliErrors}from'../../../errors.js';function a120_0x1c73(_0x455e9a,_0x3cfeef){_0x455e9a=_0x455e9a-0x1b7;const _0x5dbb3c=a120_0x5dbb();let _0x1c7321=_0x5dbb3c[_0x455e9a];return _0x1c7321;}import{fetchModelList}from'../../../api/fetch-model-list.js';import{generateApiFile}from'../../../api/generate-api-file.js';function a120_0x5dbb(){const _0x397a1f=['log','\x20\x20Installing\x20dependencies...','\x20\x20!\x20API\x20pull\x20failed,\x20run\x20`','...','parse','Use\x20a\x20different\x20project\x20name.','bun\x20--version','\x20\x20√\x20Configuration\x20file\x20created','string','Project\x20name\x20contains\x20invalid\x20characters.','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters.','7320PwpsUT','1810088tUEXRQ','package.json','1224736soPCXO','needsUpgrade','7217gKOCXF','\x20\x20√\x20Code\x20formatted','15YPnziS','env','8681535XMIgoN','cwd','*\x20Creating\x20project\x20','Project\x20name\x20cannot\x20be\x20empty.','437152tnqXqy','W_OK','validation','\x20\x20rabetbase\x20run\x20start\x0a','\x20created\x20successfully!','Cannot\x20create\x20project\x20in\x20current\x20directory.','bun\x20run\x20format','npm','ignore','bun','description','1676352zygift','belowMinimum','production','resolve','join','\x20\x20√\x20Pulled\x20','chdir','Project\x20directory\x20\x22','writeFile','access','modelCount','\x20\x20Pulling\x20API\x20configuration...','length','trim','stringify','\x20\x20√\x20Project\x20template\x20created','A\x20project\x20created\x20with\x20Lovrabet\x20CLI','1247692mwSQVO','\x20dataset(s),\x20generated\x20','\x0a√\x20Project\x20'];a120_0x5dbb=function(){return _0x397a1f;};return a120_0x5dbb();}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(_0x3e90af,_0x538629,_0x5c5911,_0x33bff9){const _0x4b5ada=a120_0x1c73,_0x32073d=await checkCliVersion();(_0x32073d[_0x4b5ada(0x1e1)]||_0x32073d[_0x4b5ada(0x1bf)])&&(printCliUpgradeWarning(_0x32073d),assertCliVersionSupported(_0x32073d));if(!_0x3e90af||_0x3e90af[_0x4b5ada(0x1cb)]()==='')throw CliErrors[_0x4b5ada(0x1ec)](_0x4b5ada(0x1e9));const _0x3a38af=/[<>:"|?*\x00-\x1f\x7f]/;if(_0x3a38af['test'](_0x3e90af))throw CliErrors[_0x4b5ada(0x1ec)](_0x4b5ada(0x1db),'Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters');if(_0x3e90af[_0x4b5ada(0x1ca)]>0x64)throw CliErrors[_0x4b5ada(0x1ec)](_0x4b5ada(0x1dc));const _0x421063=a120_0x576d9e[_0x4b5ada(0x1c1)](process[_0x4b5ada(0x1e7)](),_0x3e90af);if(existsSync(_0x421063))throw CliErrors[_0x4b5ada(0x1ec)](_0x4b5ada(0x1c5)+_0x3e90af+'\x22\x20already\x20exists.',_0x4b5ada(0x1d7));try{const _0x136305=a120_0x576d9e['dirname'](_0x421063);await a120_0x26273b[_0x4b5ada(0x1c7)](_0x136305,a120_0x26273b['constants'][_0x4b5ada(0x1eb)]);}catch{throw CliErrors[_0x4b5ada(0x1ec)](_0x4b5ada(0x1b8),'Check\x20directory\x20permissions.');}try{console[_0x4b5ada(0x1d2)](_0x4b5ada(0x1e8)+_0x3e90af+_0x4b5ada(0x1d5));const _0x41c735=getSubAppReactDemoTemplateDir();await copyDirectory(_0x41c735,_0x421063),console[_0x4b5ada(0x1d2)](_0x4b5ada(0x1cd)),await updatePackageJsonName(_0x3e90af),console[_0x4b5ada(0x1d2)]('\x20\x20√\x20package.json\x20updated'),console[_0x4b5ada(0x1d2)](_0x4b5ada(0x1d3)),console[_0x4b5ada(0x1d2)]('\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)'),await formatCode(_0x421063),console['log'](_0x4b5ada(0x1e3)),await configureProject(_0x3e90af,_0x5c5911,_0x538629),console[_0x4b5ada(0x1d2)](_0x4b5ada(0x1d9)),_0x5c5911&&await pullApiConfig(_0x421063,_0x5c5911,_0x538629,_0x33bff9),console['log'](_0x4b5ada(0x1d1)+_0x3e90af+_0x4b5ada(0x1b7)),console[_0x4b5ada(0x1d2)]('\x0a\x20\x20cd\x20'+_0x3e90af),console['log'](_0x4b5ada(0x1ed));}catch(_0x2ab5e6){try{existsSync(_0x421063)&&await a120_0x26273b['rm'](_0x421063,{'recursive':!![],'force':!![]});}catch{}throw _0x2ab5e6;}}async function updatePackageJsonName(_0x4458ea){const _0xe41cd=a120_0x1c73,_0x4be1da=a120_0x576d9e['resolve'](process['cwd'](),_0x4458ea),_0x1ff46d=a120_0x576d9e['join'](_0x4be1da,_0xe41cd(0x1df)),_0x11cfed=await a120_0x26273b['readFile'](_0x1ff46d,'utf-8'),_0x4bfbf1=JSON[_0xe41cd(0x1d6)](_0x11cfed);_0x4bfbf1['name']=_0x4458ea,_0x4bfbf1[_0xe41cd(0x1bd)]=_0xe41cd(0x1ce),await a120_0x26273b[_0xe41cd(0x1c6)](_0x1ff46d,JSON[_0xe41cd(0x1cc)](_0x4bfbf1,null,0x2)+'\x0a');}function detectPackageManager(){const _0x3bf9a0=a120_0x1c73;try{return execSync(_0x3bf9a0(0x1d8),{'stdio':_0x3bf9a0(0x1bb)}),_0x3bf9a0(0x1bc);}catch{return _0x3bf9a0(0x1ba);}}async function formatCode(_0x15e686){const _0x56a66c=a120_0x1c73;try{await execAsync(_0x56a66c(0x1b9),{'cwd':_0x15e686});}catch{}}async function configureProject(_0x32ceaf,_0x2412de,_0x3fa445){const _0x5dc17b=a120_0x1c73,_0xc61d85=a120_0x576d9e[_0x5dc17b(0x1c1)](process[_0x5dc17b(0x1e7)](),_0x32ceaf),_0x16eece=a120_0x576d9e[_0x5dc17b(0x1c2)](_0xc61d85,NEW_CONFIG_NAME),_0x197c86=readConfig(),_0x13cc3d=typeof _0x197c86[_0x5dc17b(0x1e5)]===_0x5dc17b(0x1da)?_0x197c86['env']:undefined,_0x38387c={};for(const _0x2b15af of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x197c86[_0x2b15af]!=null)_0x38387c[_0x2b15af]=_0x197c86[_0x2b15af];}const _0x31644a=buildCanonicalProjectConfig(_0x38387c,{'appCodes':_0x2412de?[_0x2412de]:[],'env':_0x3fa445||_0x13cc3d||_0x5dc17b(0x1c0),'metadata':{'createdAt':new Date()['toLocaleString'](),'version':getCliVersion()}});writeConfigFile(_0x16eece,_0x31644a);}async function pullApiConfig(_0x269574,_0x1a4671,_0x58cd0d,_0x37b975){const _0x3c8c32=a120_0x1c73,_0x3f3ef4=process[_0x3c8c32(0x1e7)]();try{process[_0x3c8c32(0x1c4)](_0x269574);const _0x454d24=_0x58cd0d||_0x3c8c32(0x1c0);initEnv(_0x454d24),console[_0x3c8c32(0x1d2)](_0x3c8c32(0x1c9));const {configArray:_0x5ed41c}=await fetchModelList(_0x1a4671,_0x37b975||''),_0x1fffd3=await generateApiFile(_0x5ed41c,'',_0x1a4671,!![],_0x454d24,DEFAULT_API_DIR);console['log'](_0x3c8c32(0x1c3)+_0x5ed41c[_0x3c8c32(0x1ca)]+_0x3c8c32(0x1d0)+_0x1fffd3[_0x3c8c32(0x1c8)]+'\x20model(s)');}catch(_0x50a650){console[_0x3c8c32(0x1d2)](_0x3c8c32(0x1d4)+CLI_BIN_NAME+'\x20api\x20pull`\x20manually\x20later.');}finally{process[_0x3c8c32(0x1c4)](_0x3f3ef4);}}
@@ -1 +1 @@
1
- const a120_0x2dda96=a120_0x55d3;(function(_0x3b5e44,_0x4422b6){const _0x3b8037=a120_0x55d3,_0x1753e6=_0x3b5e44();while(!![]){try{const _0x5c09bd=parseInt(_0x3b8037(0x194))/0x1+-parseInt(_0x3b8037(0x197))/0x2*(-parseInt(_0x3b8037(0x195))/0x3)+parseInt(_0x3b8037(0x19e))/0x4*(-parseInt(_0x3b8037(0x1a1))/0x5)+-parseInt(_0x3b8037(0x19b))/0x6+-parseInt(_0x3b8037(0x1a2))/0x7+-parseInt(_0x3b8037(0x193))/0x8*(-parseInt(_0x3b8037(0x19f))/0x9)+-parseInt(_0x3b8037(0x198))/0xa*(-parseInt(_0x3b8037(0x199))/0xb);if(_0x5c09bd===_0x4422b6)break;else _0x1753e6['push'](_0x1753e6['shift']());}catch(_0x3a988c){_0x1753e6['push'](_0x1753e6['shift']());}}}(a120_0x303f,0xb32df));import a120_0x55dd68 from'node:path';function a120_0x303f(){const _0x393e44=['1089yMkmxb','projects','102175lJYXgD','9989588Yyfyjr','49208TThKLE','803452zgBPij','42543zznAQo','../../../../','56OQPpZf','530jGPlgy','540859ymYEhz','templates','5755770ToMmaF','dirname','resolve','280jBNRwa'];a120_0x303f=function(){return _0x393e44;};return a120_0x303f();}function a120_0x55d3(_0x388d65,_0x47f896){_0x388d65=_0x388d65-0x193;const _0x303f20=a120_0x303f();let _0x55d373=_0x303f20[_0x388d65];return _0x55d373;}import{fileURLToPath}from'node:url';const __dirname=a120_0x55dd68[a120_0x2dda96(0x19c)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x299706=a120_0x2dda96;return a120_0x55dd68[_0x299706(0x19d)](__dirname,_0x299706(0x196));}export function getSubAppReactDemoTemplateDir(){const _0x2b072b=a120_0x2dda96;return a120_0x55dd68['join'](getRabetbaseCliPackageRoot(),_0x2b072b(0x19a),_0x2b072b(0x1a0),'sub-app-react-demo');}
1
+ const a121_0x27df8c=a121_0x5b67;(function(_0x4638c1,_0x3423c3){const _0x11ec20=a121_0x5b67,_0x4657b0=_0x4638c1();while(!![]){try{const _0x237da2=parseInt(_0x11ec20(0xdb))/0x1*(-parseInt(_0x11ec20(0xd1))/0x2)+-parseInt(_0x11ec20(0xd6))/0x3*(-parseInt(_0x11ec20(0xd0))/0x4)+-parseInt(_0x11ec20(0xd9))/0x5+-parseInt(_0x11ec20(0xcd))/0x6+parseInt(_0x11ec20(0xcf))/0x7+parseInt(_0x11ec20(0xd8))/0x8*(parseInt(_0x11ec20(0xce))/0x9)+parseInt(_0x11ec20(0xcc))/0xa*(-parseInt(_0x11ec20(0xd5))/0xb);if(_0x237da2===_0x3423c3)break;else _0x4657b0['push'](_0x4657b0['shift']());}catch(_0x368905){_0x4657b0['push'](_0x4657b0['shift']());}}}(a121_0xbcbe,0xefeab));import a121_0xe88776 from'node:path';function a121_0xbcbe(){const _0x5315e1=['templates','25GWSuqi','30uAsMhU','6493866UryWSP','63TXhuEO','11427003oFONaW','4umeWOq','36158tkoBNU','../../../../','projects','dirname','2972321etsLWS','2042589wIwOSE','join','1499096fNfAcr','1486915OfXDuo'];a121_0xbcbe=function(){return _0x5315e1;};return a121_0xbcbe();}import{fileURLToPath}from'node:url';const __dirname=a121_0xe88776[a121_0x27df8c(0xd4)](fileURLToPath(import.meta.url));function a121_0x5b67(_0x8c1d3c,_0x56e2a2){_0x8c1d3c=_0x8c1d3c-0xcc;const _0xbcbe33=a121_0xbcbe();let _0x5b6747=_0xbcbe33[_0x8c1d3c];return _0x5b6747;}export function getRabetbaseCliPackageRoot(){const _0x22f165=a121_0x27df8c;return a121_0xe88776['resolve'](__dirname,_0x22f165(0xd2));}export function getSubAppReactDemoTemplateDir(){const _0x71ace6=a121_0x27df8c;return a121_0xe88776[_0x71ace6(0xd7)](getRabetbaseCliPackageRoot(),_0x71ace6(0xda),_0x71ace6(0xd3),'sub-app-react-demo');}
@@ -1 +1 @@
1
- (function(_0x20e7d6,_0x1869cb){const _0x5bc897=a121_0x245b,_0x5b62c4=_0x20e7d6();while(!![]){try{const _0x566015=parseInt(_0x5bc897(0xc3))/0x1+-parseInt(_0x5bc897(0xc6))/0x2+parseInt(_0x5bc897(0xc5))/0x3+-parseInt(_0x5bc897(0xc4))/0x4*(-parseInt(_0x5bc897(0xc9))/0x5)+-parseInt(_0x5bc897(0xd0))/0x6+parseInt(_0x5bc897(0xd1))/0x7*(parseInt(_0x5bc897(0xcc))/0x8)+parseInt(_0x5bc897(0xcf))/0x9*(-parseInt(_0x5bc897(0xd2))/0xa);if(_0x566015===_0x1869cb)break;else _0x5b62c4['push'](_0x5b62c4['shift']());}catch(_0x586e9b){_0x5b62c4['push'](_0x5b62c4['shift']());}}}(a121_0x5b0a,0x5b06e));import a121_0x3c0993 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 a121_0x245b(_0x3dd42a,_0x570bfe){_0x3dd42a=_0x3dd42a-0xc2;const _0x5b0a65=a121_0x5b0a();let _0x245b18=_0x5b0a65[_0x3dd42a];return _0x245b18;}import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x17cf9c){const _0x4864dc=a121_0x245b,_0x316537=Date[_0x4864dc(0xcb)](),_0x5d07aa=a121_0x3c0993[_0x4864dc(0xc7)](process['cwd'](),_0x17cf9c);try{logger[_0x4864dc(0xce)](_0x4864dc(0xca),'开始复制项目模板',{'projectCode':_0x17cf9c,'templateDir':templateDir}),await copyDirectory(templateDir,_0x5d07aa);const _0x199544=Date[_0x4864dc(0xcb)]()-_0x316537;logger[_0x4864dc(0xc2)](_0x4864dc(0xca),_0x4864dc(0xcd),_0x199544,{'projectCode':_0x17cf9c});}catch(_0x1c7a4b){const _0x5c7f1b=Date['now']()-_0x316537;logger['error'](_0x4864dc(0xca),_0x4864dc(0xc8),{'projectCode':_0x17cf9c,'error':_0x1c7a4b instanceof Error?_0x1c7a4b[_0x4864dc(0xd3)]:String(_0x1c7a4b),'duration':_0x5c7f1b});throw _0x1c7a4b;}return formatElapsed(_0x316537);}function a121_0x5b0a(){const _0x340021=['572RKZcDJ','106626gmBdbK','371240UwiqlD','resolve','项目模板复制失败','17815ZCiWOQ','copy','now','360HTkGLp','项目模板复制完成','info','2126673toPoOf','1298670IOaAUB','46249TcgMKV','30uVkjWT','message','success','641436FrHDSR'];a121_0x5b0a=function(){return _0x340021;};return a121_0x5b0a();}
1
+ (function(_0x2de98d,_0x53684){const _0x52b614=a122_0xd4bb,_0x3ae67f=_0x2de98d();while(!![]){try{const _0x3f8485=parseInt(_0x52b614(0x106))/0x1+-parseInt(_0x52b614(0x111))/0x2+-parseInt(_0x52b614(0x108))/0x3*(-parseInt(_0x52b614(0x115))/0x4)+parseInt(_0x52b614(0x114))/0x5*(-parseInt(_0x52b614(0x10f))/0x6)+-parseInt(_0x52b614(0x10c))/0x7*(-parseInt(_0x52b614(0x105))/0x8)+-parseInt(_0x52b614(0x103))/0x9*(parseInt(_0x52b614(0x109))/0xa)+-parseInt(_0x52b614(0x113))/0xb*(-parseInt(_0x52b614(0x10e))/0xc);if(_0x3f8485===_0x53684)break;else _0x3ae67f['push'](_0x3ae67f['shift']());}catch(_0x5384d5){_0x3ae67f['push'](_0x3ae67f['shift']());}}}(a122_0x4600,0x404d6));import a122_0x2ceacb 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 a122_0xd4bb(_0x578fb6,_0x1d7cb5){_0x578fb6=_0x578fb6-0x103;const _0x460082=a122_0x4600();let _0xd4bb48=_0x460082[_0x578fb6];return _0xd4bb48;}import{getSubAppReactDemoTemplateDir}from'../../../commands/project/create/project-template-path.js';const templateDir=getSubAppReactDemoTemplateDir();export async function copyProjectTemplate(_0x3d6291){const _0xd318a2=a122_0xd4bb,_0x1d8101=Date[_0xd318a2(0x104)](),_0x2da57a=a122_0x2ceacb['resolve'](process[_0xd318a2(0x10d)](),_0x3d6291);try{logger[_0xd318a2(0x110)]('copy',_0xd318a2(0x107),{'projectCode':_0x3d6291,'templateDir':templateDir}),await copyDirectory(templateDir,_0x2da57a);const _0x5457c3=Date['now']()-_0x1d8101;logger[_0xd318a2(0x10a)](_0xd318a2(0x116),_0xd318a2(0x112),_0x5457c3,{'projectCode':_0x3d6291});}catch(_0x3c150b){const _0x4317c8=Date['now']()-_0x1d8101;logger[_0xd318a2(0x10b)]('copy','项目模板复制失败',{'projectCode':_0x3d6291,'error':_0x3c150b instanceof Error?_0x3c150b['message']:String(_0x3c150b),'duration':_0x4317c8});throw _0x3c150b;}return formatElapsed(_0x1d8101);}function a122_0x4600(){const _0x30a43e=['success','error','1351lYiIwF','cwd','228hjrYYl','12yzkVNk','info','943630QlBRdD','项目模板复制完成','516263JFBWvA','636865ZhLdrz','5532hYKKSO','copy','9nNYygM','now','1392maPdyh','331327QcMKKt','开始复制项目模板','27iRCVzo','2791400azhFGC'];a122_0x4600=function(){return _0x30a43e;};return a122_0x4600();}
@@ -1 +1 @@
1
- (function(_0x419152,_0x538e13){const _0x54bbe1=a122_0x44d0,_0x205fcf=_0x419152();while(!![]){try{const _0x19d916=parseInt(_0x54bbe1(0x82))/0x1+-parseInt(_0x54bbe1(0x7b))/0x2+-parseInt(_0x54bbe1(0x76))/0x3+-parseInt(_0x54bbe1(0x84))/0x4+-parseInt(_0x54bbe1(0x81))/0x5*(parseInt(_0x54bbe1(0x79))/0x6)+-parseInt(_0x54bbe1(0x7a))/0x7+parseInt(_0x54bbe1(0x7c))/0x8*(parseInt(_0x54bbe1(0x74))/0x9);if(_0x19d916===_0x538e13)break;else _0x205fcf['push'](_0x205fcf['shift']());}catch(_0x183ec5){_0x205fcf['push'](_0x205fcf['shift']());}}}(a122_0x4297,0xe6845));function a122_0x44d0(_0x4c2924,_0x738088){_0x4c2924=_0x4c2924-0x73;const _0x429752=a122_0x4297();let _0x44d024=_0x429752[_0x4c2924];return _0x44d024;}import a122_0x563171 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a122_0x4297(){const _0x14a15c=['npx','2930712cKOvCD','代码格式化完成','success','resolve','format','738UQJIng','info','5123688PVibrK','开始格式化代码','代码格式化失败','19842XryUSv','11567248euAIgI','469484gsvDmW','531536vwdnMy','cwd','prettier','--write','now','2610jYtAsL','1549987SmfUgt'];a122_0x4297=function(){return _0x14a15c;};return a122_0x4297();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x38dd9f){const _0x42b25e=a122_0x44d0,_0x1a167c=Date['now'](),_0x7e6ee5=a122_0x563171[_0x42b25e(0x87)](process[_0x42b25e(0x7d)](),_0x38dd9f);try{logger[_0x42b25e(0x75)]('format',_0x42b25e(0x77),{'projectCode':_0x38dd9f}),await execa(resolveNpmBin(_0x42b25e(0x83)),[_0x42b25e(0x7e),_0x42b25e(0x7f),'.'],{'cwd':_0x7e6ee5});const _0xd52bad=Date[_0x42b25e(0x80)]()-_0x1a167c;logger[_0x42b25e(0x86)](_0x42b25e(0x73),_0x42b25e(0x85),_0xd52bad,{'projectCode':_0x38dd9f});}catch(_0x25df6c){const _0xce8098=Date[_0x42b25e(0x80)]()-_0x1a167c;logger['error'](_0x42b25e(0x73),_0x42b25e(0x78),{'projectCode':_0x38dd9f,'error':_0x25df6c instanceof Error?_0x25df6c['message']:String(_0x25df6c),'duration':_0xce8098});throw _0x25df6c;}return formatElapsed(_0x1a167c);}
1
+ (function(_0x228312,_0x38e4a1){const _0x35e524=a123_0x5b4e,_0x51ca30=_0x228312();while(!![]){try{const _0x1e399d=-parseInt(_0x35e524(0xad))/0x1*(parseInt(_0x35e524(0xac))/0x2)+-parseInt(_0x35e524(0xab))/0x3+-parseInt(_0x35e524(0xa7))/0x4+-parseInt(_0x35e524(0xaa))/0x5*(parseInt(_0x35e524(0xa5))/0x6)+parseInt(_0x35e524(0xae))/0x7+-parseInt(_0x35e524(0xa3))/0x8+parseInt(_0x35e524(0xa4))/0x9;if(_0x1e399d===_0x38e4a1)break;else _0x51ca30['push'](_0x51ca30['shift']());}catch(_0x539d2e){_0x51ca30['push'](_0x51ca30['shift']());}}}(a123_0x5c76,0xa4379));import a123_0xdb2f19 from'node:path';import{execa}from'execa';function a123_0x5c76(){const _0x32b3db=['2693769jBkwJW','20TMtXqk','86344jGNbXK','2373987sYtbNH','format','error','resolve','now','代码格式化失败','npx','prettier','6862544FbZvwb','38861397hlGWbK','906852KLdWWJ','success','1229064aSmbzE','message','代码格式化完成','35hbpnrz'];a123_0x5c76=function(){return _0x32b3db;};return a123_0x5c76();}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a123_0x5b4e(_0x5eca4e,_0x37308c){_0x5eca4e=_0x5eca4e-0xa0;const _0x5c7607=a123_0x5c76();let _0x5b4e95=_0x5c7607[_0x5eca4e];return _0x5b4e95;}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x10565f){const _0x358400=a123_0x5b4e,_0x34661c=Date['now'](),_0x256092=a123_0xdb2f19[_0x358400(0xb1)](process['cwd'](),_0x10565f);try{logger['info'](_0x358400(0xaf),'开始格式化代码',{'projectCode':_0x10565f}),await execa(resolveNpmBin(_0x358400(0xa1)),[_0x358400(0xa2),'--write','.'],{'cwd':_0x256092});const _0x9463c6=Date['now']()-_0x34661c;logger[_0x358400(0xa6)](_0x358400(0xaf),_0x358400(0xa9),_0x9463c6,{'projectCode':_0x10565f});}catch(_0x68773f){const _0x59d5dd=Date[_0x358400(0xb2)]()-_0x34661c;logger[_0x358400(0xb0)](_0x358400(0xaf),_0x358400(0xa0),{'projectCode':_0x10565f,'error':_0x68773f instanceof Error?_0x68773f[_0x358400(0xa8)]:String(_0x68773f),'duration':_0x59d5dd});throw _0x68773f;}return formatElapsed(_0x34661c);}
@@ -1 +1 @@
1
- function a123_0x1d5c(){const _0x1b4224=['8693776bEtKJn','250pQSfdP','install','1276880sdCSoB','message','--registry','8713098KRaZfJ','resolve','21297xZQVuX','7229430aEYKzt','开始安装依赖','npm','25992736ZUwtMq','1632007WLRtrS','error','success','cwd','https://registry.npmmirror.com'];a123_0x1d5c=function(){return _0x1b4224;};return a123_0x1d5c();}(function(_0x52ed5e,_0x139cc4){const _0x27f6d5=a123_0x4d65,_0x474634=_0x52ed5e();while(!![]){try{const _0x5a0a05=parseInt(_0x27f6d5(0x1a4))/0x1+-parseInt(_0x27f6d5(0x198))/0x2*(-parseInt(_0x27f6d5(0x19f))/0x3)+parseInt(_0x27f6d5(0x19a))/0x4+parseInt(_0x27f6d5(0x1a0))/0x5+-parseInt(_0x27f6d5(0x19d))/0x6+parseInt(_0x27f6d5(0x197))/0x7+-parseInt(_0x27f6d5(0x1a3))/0x8;if(_0x5a0a05===_0x139cc4)break;else _0x474634['push'](_0x474634['shift']());}catch(_0x159386){_0x474634['push'](_0x474634['shift']());}}}(a123_0x1d5c,0xc975d));import a123_0x195f96 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 a123_0x4d65(_0x36360f,_0x4c49f3){_0x36360f=_0x36360f-0x194;const _0x1d5c79=a123_0x1d5c();let _0x4d6515=_0x1d5c79[_0x36360f];return _0x4d6515;}export async function installDependencies(_0x223297){const _0x542c96=a123_0x4d65,_0x12f0c8=Date['now'](),_0x507d02=a123_0x195f96[_0x542c96(0x19e)](process[_0x542c96(0x195)](),_0x223297);try{logger['info'](_0x542c96(0x199),_0x542c96(0x1a1),{'projectCode':_0x223297,'registry':_0x542c96(0x196)}),await execa(resolveNpmBin(_0x542c96(0x1a2)),[_0x542c96(0x199),_0x542c96(0x19c),'https://registry.npmmirror.com'],{'cwd':_0x507d02});const _0x5819ba=Date['now']()-_0x12f0c8;logger[_0x542c96(0x194)](_0x542c96(0x199),'依赖安装完成',_0x5819ba,{'projectCode':_0x223297});}catch(_0x5582e8){const _0x432252=Date['now']()-_0x12f0c8;logger[_0x542c96(0x1a5)]('install','依赖安装失败',{'projectCode':_0x223297,'error':_0x5582e8 instanceof Error?_0x5582e8[_0x542c96(0x19b)]:String(_0x5582e8),'duration':_0x432252});throw _0x5582e8;}return formatElapsed(_0x12f0c8);}
1
+ function a124_0x32bc(){const _0x491821=['error','70EEEOZY','npm','184JDseuK','依赖安装失败','message','success','345874IhcBGa','install','4701969vnaycd','resolve','依赖安装完成','270109YYmohj','--registry','5181380EgULsP','https://registry.npmmirror.com','now','2559148KoHaBz','302028PWECxE','6777ovwRnn','开始安装依赖','info','35970KoWTnQ'];a124_0x32bc=function(){return _0x491821;};return a124_0x32bc();}(function(_0x4c591a,_0x538b33){const _0x3235f6=a124_0x2b5f,_0x54e738=_0x4c591a();while(!![]){try{const _0xc1900d=parseInt(_0x3235f6(0x185))/0x1+-parseInt(_0x3235f6(0x178))/0x2+parseInt(_0x3235f6(0x187))/0x3+parseInt(_0x3235f6(0x175))/0x4+-parseInt(_0x3235f6(0x17f))/0x5*(-parseInt(_0x3235f6(0x179))/0x6)+parseInt(_0x3235f6(0x18a))/0x7*(parseInt(_0x3235f6(0x181))/0x8)+parseInt(_0x3235f6(0x17a))/0x9*(-parseInt(_0x3235f6(0x17d))/0xa);if(_0xc1900d===_0x538b33)break;else _0x54e738['push'](_0x54e738['shift']());}catch(_0x1ed0ea){_0x54e738['push'](_0x54e738['shift']());}}}(a124_0x32bc,0xc6674));import a124_0x5b79d5 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 a124_0x2b5f(_0x27df95,_0x144a97){_0x27df95=_0x27df95-0x175;const _0x32bcbb=a124_0x32bc();let _0x2b5f34=_0x32bcbb[_0x27df95];return _0x2b5f34;}export async function installDependencies(_0x4e6179){const _0x1557a2=a124_0x2b5f,_0x1aac97=Date[_0x1557a2(0x177)](),_0x1ef9f4=a124_0x5b79d5[_0x1557a2(0x188)](process['cwd'](),_0x4e6179);try{logger[_0x1557a2(0x17c)](_0x1557a2(0x186),_0x1557a2(0x17b),{'projectCode':_0x4e6179,'registry':_0x1557a2(0x176)}),await execa(resolveNpmBin(_0x1557a2(0x180)),[_0x1557a2(0x186),_0x1557a2(0x18b),_0x1557a2(0x176)],{'cwd':_0x1ef9f4});const _0x5bf0ce=Date[_0x1557a2(0x177)]()-_0x1aac97;logger[_0x1557a2(0x184)](_0x1557a2(0x186),_0x1557a2(0x189),_0x5bf0ce,{'projectCode':_0x4e6179});}catch(_0x2e991e){const _0x42f9cb=Date['now']()-_0x1aac97;logger[_0x1557a2(0x17e)](_0x1557a2(0x186),_0x1557a2(0x182),{'projectCode':_0x4e6179,'error':_0x2e991e instanceof Error?_0x2e991e[_0x1557a2(0x183)]:String(_0x2e991e),'duration':_0x42f9cb});throw _0x2e991e;}return formatElapsed(_0x1aac97);}
@@ -1 +1 @@
1
- const a124_0x4de022=a124_0x2c13;function a124_0x2c13(_0x1e48b8,_0x774b1c){_0x1e48b8=_0x1e48b8-0x115;const _0x4fb8df=a124_0x4fb8();let _0x2c1354=_0x4fb8df[_0x1e48b8];return _0x2c1354;}(function(_0x46a589,_0x3c62d1){const _0x546912=a124_0x2c13,_0x1270a7=_0x46a589();while(!![]){try{const _0x52bb87=parseInt(_0x546912(0x12e))/0x1*(parseInt(_0x546912(0x129))/0x2)+-parseInt(_0x546912(0x11b))/0x3*(-parseInt(_0x546912(0x138))/0x4)+parseInt(_0x546912(0x11c))/0x5+parseInt(_0x546912(0x12a))/0x6*(parseInt(_0x546912(0x13a))/0x7)+-parseInt(_0x546912(0x126))/0x8+parseInt(_0x546912(0x119))/0x9*(parseInt(_0x546912(0x13d))/0xa)+-parseInt(_0x546912(0x118))/0xb;if(_0x52bb87===_0x3c62d1)break;else _0x1270a7['push'](_0x1270a7['shift']());}catch(_0x47dce8){_0x1270a7['push'](_0x1270a7['shift']());}}}(a124_0x4fb8,0x56501));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{initConfig}from'../../commands/project/init.js';function a124_0x4fb8(){const _0x3f4f2e=['Usage:\x20','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','write','validation','trim','8HLYpLu','../../commands/project/create/main.js','206332hrfEFE','upgrade','string','320540CkYufB','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]','App\x20code\x20to\x20initialize','Initialize\x20.rabetbase.json\x20config\x20in\x20existing\x20project','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','10777569PFtZpF','72kiFUcU','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','329877iPEQsj','1669980FLvGjj','project','args','name','appcode','yes','Target\x20environment','boolean','nonInteractive','../../commands/project/create/non-interactive.js','762688fLCxfK','bool','cookie','206AiVAjW','102FsCSjE','Auto-confirm\x20prompts','Skip\x20confirmation\x20prompt','str','1138ELfwpo','create','Create\x20a\x20new\x20project','env','project-name'];a124_0x4fb8=function(){return _0x3f4f2e;};return a124_0x4fb8();}import{upgradeApp}from'../../commands/project/upgrade.js';const initFlags=[{'name':a124_0x4de022(0x120),'type':a124_0x4de022(0x13c),'description':a124_0x4de022(0x115)},{'name':'env','type':a124_0x4de022(0x13c),'description':a124_0x4de022(0x122)},{'name':a124_0x4de022(0x121),'type':a124_0x4de022(0x123),'description':a124_0x4de022(0x12b),'default':![]}],createFlags=[{'name':a124_0x4de022(0x11f),'type':'string','description':'Project\x20name'},{'name':a124_0x4de022(0x131),'type':'string','description':'Target\x20environment'},{'name':a124_0x4de022(0x120),'type':'string','description':a124_0x4de022(0x134)}],upgradeFlags=[{'name':a124_0x4de022(0x121),'type':a124_0x4de022(0x123),'description':a124_0x4de022(0x12c),'default':![]}];export const projectDefinitions=[{'service':a124_0x4de022(0x11d),'command':'init','description':a124_0x4de022(0x116),'risk':a124_0x4de022(0x135),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initFlags,async 'execute'(_0x394f49){const _0x23f243=a124_0x4de022;return await initConfig({'appcode':_0x394f49[_0x23f243(0x12d)](_0x23f243(0x120))||undefined,'env':_0x394f49[_0x23f243(0x12d)](_0x23f243(0x131))||undefined,'autoYes':_0x394f49[_0x23f243(0x127)](_0x23f243(0x121))}),{'ok':!![]};}},{'service':a124_0x4de022(0x11d),'command':a124_0x4de022(0x12f),'description':a124_0x4de022(0x130),'risk':a124_0x4de022(0x135),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a124_0x4de022(0x132),'description':a124_0x4de022(0x11a),'required':![]}],'flags':createFlags,async 'execute'(_0x1920de){const _0x16d44c=a124_0x4de022,{createApp:_0x32287a}=await import(_0x16d44c(0x139)),{createProjectNonInteractive:_0x4152d8}=await import(_0x16d44c(0x125)),_0x5826f4=_0x1920de[_0x16d44c(0x12d)](_0x16d44c(0x11f))[_0x16d44c(0x137)]()||_0x1920de[_0x16d44c(0x11e)][0x0]?.[_0x16d44c(0x137)](),_0x4990b9=_0x1920de['str'](_0x16d44c(0x131))||undefined,_0x516647=_0x1920de[_0x16d44c(0x12d)](_0x16d44c(0x120))||undefined;if(_0x1920de[_0x16d44c(0x124)]){if(!_0x5826f4)throw CliErrors[_0x16d44c(0x136)](_0x16d44c(0x117),_0x16d44c(0x133)+CLI_BIN_NAME+_0x16d44c(0x13e));await _0x4152d8(_0x5826f4,_0x4990b9,_0x516647,_0x1920de[_0x16d44c(0x128)]);}else await _0x32287a({'projectCode':_0x5826f4,'appCode':_0x516647,'env':_0x4990b9,'cookie':_0x1920de[_0x16d44c(0x128)]});return{'ok':!![]};}},{'service':a124_0x4de022(0x11d),'command':a124_0x4de022(0x13b),'description':'Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x71a14f){const _0x5fe3ad=a124_0x4de022;return await upgradeApp(_0x71a14f[_0x5fe3ad(0x124)],{'yes':_0x71a14f['bool']('yes')}),{'ok':!![]};}}];
1
+ function a125_0x121d(_0x3b9d97,_0x5725c5){_0x3b9d97=_0x3b9d97-0x9b;const _0x49cda9=a125_0x49cd();let _0x121d3a=_0x49cda9[_0x3b9d97];return _0x121d3a;}const a125_0x242200=a125_0x121d;(function(_0x10699b,_0x56d913){const _0x23aa5d=a125_0x121d,_0x57a97e=_0x10699b();while(!![]){try{const _0x3bd5e3=parseInt(_0x23aa5d(0xa9))/0x1*(-parseInt(_0x23aa5d(0xa1))/0x2)+parseInt(_0x23aa5d(0xac))/0x3*(-parseInt(_0x23aa5d(0xbe))/0x4)+parseInt(_0x23aa5d(0xad))/0x5*(parseInt(_0x23aa5d(0xb3))/0x6)+-parseInt(_0x23aa5d(0xa8))/0x7+-parseInt(_0x23aa5d(0xa5))/0x8*(parseInt(_0x23aa5d(0xc0))/0x9)+parseInt(_0x23aa5d(0xc3))/0xa+parseInt(_0x23aa5d(0xa0))/0xb;if(_0x3bd5e3===_0x56d913)break;else _0x57a97e['push'](_0x57a97e['shift']());}catch(_0x4be86c){_0x57a97e['push'](_0x57a97e['shift']());}}}(a125_0x49cd,0xbafe5));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{initConfig}from'../../commands/project/init.js';function a125_0x49cd(){const _0x54f729=['name','project','trim','write','Project\x20name','Target\x20environment','upgrade','../../commands/project/create/main.js','appcode','8TeYfRp','Auto-confirm\x20prompts','4402305nHrrNb','bool','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','9796970YIFSPE','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','create','args','init','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','4554055vhaUZF','46044SmrTeF','str','Create\x20a\x20new\x20project','boolean','8NoHazm','project-name','Initialize\x20.rabetbase.json\x20config\x20in\x20existing\x20project','582981qUUldT','22SalWjg','../../commands/project/create/non-interactive.js','validation','1160163zQkijJ','5SYkOQx','yes','nonInteractive','env','string','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','7347462OlflAZ','cookie'];a125_0x49cd=function(){return _0x54f729;};return a125_0x49cd();}import{upgradeApp}from'../../commands/project/upgrade.js';const initFlags=[{'name':a125_0x242200(0xbd),'type':'string','description':'App\x20code\x20to\x20initialize'},{'name':a125_0x242200(0xb0),'type':a125_0x242200(0xb1),'description':a125_0x242200(0xba)},{'name':'yes','type':a125_0x242200(0xa4),'description':a125_0x242200(0xbf),'default':![]}],createFlags=[{'name':a125_0x242200(0xb5),'type':a125_0x242200(0xb1),'description':a125_0x242200(0xb9)},{'name':a125_0x242200(0xb0),'type':a125_0x242200(0xb1),'description':a125_0x242200(0xba)},{'name':a125_0x242200(0xbd),'type':'string','description':a125_0x242200(0xc2)}],upgradeFlags=[{'name':a125_0x242200(0xae),'type':a125_0x242200(0xa4),'description':'Skip\x20confirmation\x20prompt','default':![]}];export const projectDefinitions=[{'service':a125_0x242200(0xb6),'command':a125_0x242200(0x9e),'description':a125_0x242200(0xa7),'risk':a125_0x242200(0xb8),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initFlags,async 'execute'(_0x45d650){const _0xaf1544=a125_0x242200;return await initConfig({'appcode':_0x45d650[_0xaf1544(0xa2)](_0xaf1544(0xbd))||undefined,'env':_0x45d650[_0xaf1544(0xa2)](_0xaf1544(0xb0))||undefined,'autoYes':_0x45d650[_0xaf1544(0xc1)](_0xaf1544(0xae))}),{'ok':!![]};}},{'service':a125_0x242200(0xb6),'command':a125_0x242200(0x9c),'description':a125_0x242200(0xa3),'risk':a125_0x242200(0xb8),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a125_0x242200(0xa6),'description':a125_0x242200(0xb2),'required':![]}],'flags':createFlags,async 'execute'(_0x10cc58){const _0x4f1090=a125_0x242200,{createApp:_0x57987f}=await import(_0x4f1090(0xbc)),{createProjectNonInteractive:_0x46000d}=await import(_0x4f1090(0xaa)),_0x2de997=_0x10cc58[_0x4f1090(0xa2)](_0x4f1090(0xb5))[_0x4f1090(0xb7)]()||_0x10cc58[_0x4f1090(0x9d)][0x0]?.[_0x4f1090(0xb7)](),_0x42953b=_0x10cc58[_0x4f1090(0xa2)](_0x4f1090(0xb0))||undefined,_0x16c38d=_0x10cc58[_0x4f1090(0xa2)](_0x4f1090(0xbd))||undefined;if(_0x10cc58[_0x4f1090(0xaf)]){if(!_0x2de997)throw CliErrors[_0x4f1090(0xab)](_0x4f1090(0x9b),'Usage:\x20'+CLI_BIN_NAME+'\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]');await _0x46000d(_0x2de997,_0x42953b,_0x16c38d,_0x10cc58[_0x4f1090(0xb4)]);}else await _0x57987f({'projectCode':_0x2de997,'appCode':_0x16c38d,'env':_0x42953b,'cookie':_0x10cc58[_0x4f1090(0xb4)]});return{'ok':!![]};}},{'service':a125_0x242200(0xb6),'command':a125_0x242200(0xbb),'description':a125_0x242200(0x9f),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x1ca640){const _0xaa1f14=a125_0x242200;return await upgradeApp(_0x1ca640[_0xaa1f14(0xaf)],{'yes':_0x1ca640[_0xaa1f14(0xc1)](_0xaa1f14(0xae))}),{'ok':!![]};}}];
@@ -1 +1 @@
1
- (function(_0x594210,_0x13c630){const _0x21c9fe=a125_0x5626,_0x32d15d=_0x594210();while(!![]){try{const _0x57c3f8=parseInt(_0x21c9fe(0x9f))/0x1*(-parseInt(_0x21c9fe(0xbf))/0x2)+-parseInt(_0x21c9fe(0x9e))/0x3*(-parseInt(_0x21c9fe(0xb8))/0x4)+-parseInt(_0x21c9fe(0x9b))/0x5*(-parseInt(_0x21c9fe(0xcc))/0x6)+parseInt(_0x21c9fe(0xa5))/0x7+-parseInt(_0x21c9fe(0xaf))/0x8*(-parseInt(_0x21c9fe(0xc6))/0x9)+parseInt(_0x21c9fe(0xc5))/0xa*(-parseInt(_0x21c9fe(0xbc))/0xb)+-parseInt(_0x21c9fe(0xb7))/0xc*(parseInt(_0x21c9fe(0xb6))/0xd);if(_0x57c3f8===_0x13c630)break;else _0x32d15d['push'](_0x32d15d['shift']());}catch(_0x1aed01){_0x32d15d['push'](_0x32d15d['shift']());}}}(a125_0x4c7b,0x6730b));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';import{fileURLToPath}from'node:url';import a125_0x12683d 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';function a125_0x4c7b(){const _0x2ebdd9=['471eoanXP','77emGVBW','app','package.json','info','Upgrade\x20it\x20to\x20','init','1165794cgWJkZ','App\x20Code\x20cannot\x20be\x20empty','\x20project\x20init`\x20to\x20start\x20fresh.','apps','Migration\x20cancelled.\x20Run\x20`','1.0.0','toLocaleString','utf8','✓\x20Upgraded\x20','Invalid\x20App\x20Code','16144ugGYGV','defaultApp','cwd','trim','从旧配置文件升级成功','string','appcode','451412RDDtOA','276PsVblG','16480xNekPx','.bak','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','\x20api\x20pull\x27','11qWObiP','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','setLogPath','6962jEcGHj','env','../..','cyan','\x20→\x20.rabetbase.json','\x20\x20Default:\x20','3224490VjIXFB','1503ILSmuG','\x20\x20appcode:\x20','?\x20(Old\x20file\x20→\x20*.bak)','keys','yellow','.rabetbase.json','3968502nHfzIO','green','初始化项目配置文件成功','production','version','\x20\x20Apps:\x20','5PYWplL','bold','log'];a125_0x4c7b=function(){return _0x2ebdd9;};return a125_0x4c7b();}import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x449a3a){const _0x1cce5f=a125_0x5626,{appcode:_0x57e01e,env:_0x5c6947,autoYes:_0x44bbf3}=_0x449a3a,_0x3f9bb4=process[_0x1cce5f(0xb1)]();if(getProjectConfigPath())throw new Error(_0x1cce5f(0xbd));let _0x4b2394;for(const _0x27f087 of LEGACY_CONFIG_NAMES){const _0x105ff3=resolve(_0x3f9bb4,_0x27f087);if(existsSync(_0x105ff3)){_0x4b2394=_0x105ff3;break;}}if(_0x4b2394){let _0x5b61d3={};try{_0x5b61d3=JSON['parse'](readFileSync(_0x4b2394,_0x1cce5f(0xac)));}catch{}const _0x526f52=basename(_0x4b2394),_0x2b7d3f=_0x5b61d3?.['appcode']||_0x5b61d3?.['app'];let _0xb77c74=_0x44bbf3;!_0x44bbf3&&(console['log'](a125_0x12683d[_0x1cce5f(0xca)]('⚠\x20Found\x20legacy\x20configuration\x20file:\x20'+a125_0x12683d[_0x1cce5f(0x9c)](_0x526f52))),_0x2b7d3f&&console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0xc2)](_0x1cce5f(0xc7)+_0x2b7d3f)),_0xb77c74=await confirm({'message':_0x1cce5f(0xa3)+a125_0x12683d[_0x1cce5f(0x9c)](_0x1cce5f(0xcb))+_0x1cce5f(0xc8),'default':!![]}));if(!_0xb77c74){console[_0x1cce5f(0x9d)](_0x1cce5f(0xa9)+CLI_BIN_NAME+_0x1cce5f(0xa7));return;}const _0x2ecc69=resolve(_0x3f9bb4,NEW_CONFIG_NAME),_0x577182=getCliVersionFromPkg(),_0x44cfe9=readRawConfig(),_0x1754e3=_0x57e01e||(typeof _0x5b61d3?.[_0x1cce5f(0xb5)]===_0x1cce5f(0xb4)?_0x5b61d3[_0x1cce5f(0xb5)]:undefined)||(typeof _0x5b61d3?.[_0x1cce5f(0xa0)]===_0x1cce5f(0xb4)?_0x5b61d3[_0x1cce5f(0xa0)]:undefined)||await askAppcode(),_0x1c22be=typeof _0x5b61d3?.[_0x1cce5f(0xc0)]===_0x1cce5f(0xb4)?_0x5b61d3[_0x1cce5f(0xc0)]:typeof _0x44cfe9[_0x1cce5f(0xc0)]===_0x1cce5f(0xb4)?_0x44cfe9['env']:'production',_0x32c773=buildCanonicalProjectConfig({..._0x44cfe9,..._0x5b61d3},{'appCodes':[_0x1754e3],'env':_0x1c22be,'metadata':{'version':_0x577182,'migratedAt':new Date()[_0x1cce5f(0xab)](),'migratedFrom':_0x4b2394}});writeConfigFile(_0x2ecc69,_0x32c773);const _0x4d55ba=_0x4b2394+_0x1cce5f(0xb9);renameSync(_0x4b2394,_0x4d55ba),logger[_0x1cce5f(0xbe)](_0x3f9bb4),logger[_0x1cce5f(0xa2)](_0x1cce5f(0xa4),_0x1cce5f(0xb3),{'from':_0x4b2394,'to':_0x2ecc69,'appcode':_0x1754e3,'env':_0x32c773[_0x1cce5f(0xc0)]}),console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0x96)](_0x1cce5f(0xad)+_0x526f52+_0x1cce5f(0xc3))),console[_0x1cce5f(0x9d)](a125_0x12683d['cyan'](_0x1cce5f(0x9a)+Object[_0x1cce5f(0xc9)](_0x32c773[_0x1cce5f(0xa8)]||{})['join'](',\x20'))),console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0xc2)](_0x1cce5f(0xc4)+_0x32c773[_0x1cce5f(0xb0)])),console[_0x1cce5f(0x9d)](a125_0x12683d['gray'](_0x1cce5f(0xba)+_0x526f52+_0x1cce5f(0xb9)));return;}const _0x3e522a=_0x57e01e||await askAppcode(),_0x573b16=resolve(_0x3f9bb4,NEW_CONFIG_NAME),_0x1e4155=getCliVersionFromPkg(),_0x516518=readRawConfig(),_0x182dd6=typeof _0x516518[_0x1cce5f(0xc0)]===_0x1cce5f(0xb4)?_0x516518[_0x1cce5f(0xc0)]:undefined,_0x25f20d=buildCanonicalProjectConfig({},{'appCodes':[_0x3e522a],'env':_0x5c6947||_0x182dd6||_0x1cce5f(0x98),'metadata':{'version':_0x1e4155,'createdAt':new Date()[_0x1cce5f(0xab)]()}});writeConfigFile(_0x573b16,_0x25f20d),logger[_0x1cce5f(0xbe)](_0x3f9bb4),logger['info'](_0x1cce5f(0xa4),_0x1cce5f(0x97),{'appcode':_0x3e522a,'env':_0x25f20d['env'],'version':_0x25f20d[_0x1cce5f(0x99)],'configPath':_0x573b16}),console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0x96)]('✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory')),console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0xc2)](_0x1cce5f(0x9a)+Object[_0x1cce5f(0xc9)](_0x25f20d['apps']||{})['join'](',\x20'))),console[_0x1cce5f(0x9d)](a125_0x12683d[_0x1cce5f(0xc2)](_0x1cce5f(0xc4)+_0x25f20d[_0x1cce5f(0xb0)])),console[_0x1cce5f(0x9d)]('\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27'+CLI_BIN_NAME+'\x20api\x20generate\x27\x20and\x20\x27'+CLI_BIN_NAME+_0x1cce5f(0xbb));}function askAppcode(){return input({'message':'Please\x20enter\x20App\x20Code:','validate':_0x21b093=>{const _0x168a67=a125_0x5626;if(!_0x21b093[_0x168a67(0xb2)]())return _0x168a67(0xa6);const {valid:_0x37bd3e,message:_0x1b2899}=validateAppcode(_0x21b093[_0x168a67(0xb2)]());return _0x37bd3e||_0x1b2899||_0x168a67(0xae);}});}function a125_0x5626(_0x5e374e,_0x156501){_0x5e374e=_0x5e374e-0x96;const _0x4c7b3e=a125_0x4c7b();let _0x562681=_0x4c7b3e[_0x5e374e];return _0x562681;}function getCliVersionFromPkg(){const _0x459b01=a125_0x5626;try{const _0x141e85=fileURLToPath(import.meta.url),_0x4fe471=resolve(dirname(_0x141e85),_0x459b01(0xc1)),_0x555ccf=JSON['parse'](readFileSync(resolve(_0x4fe471,_0x459b01(0xa1)),'utf8'));return _0x555ccf[_0x459b01(0x99)]||'1.0.0';}catch{return _0x459b01(0xaa);}}
1
+ (function(_0x529f87,_0x4444ed){const _0x4928a7=a126_0x5a9f,_0xe1577a=_0x529f87();while(!![]){try{const _0x1c1f76=-parseInt(_0x4928a7(0x1c8))/0x1+parseInt(_0x4928a7(0x1d2))/0x2+-parseInt(_0x4928a7(0x1da))/0x3*(parseInt(_0x4928a7(0x1e8))/0x4)+parseInt(_0x4928a7(0x1bb))/0x5*(-parseInt(_0x4928a7(0x1b6))/0x6)+parseInt(_0x4928a7(0x1e5))/0x7*(-parseInt(_0x4928a7(0x1bd))/0x8)+parseInt(_0x4928a7(0x1c5))/0x9+parseInt(_0x4928a7(0x1dd))/0xa;if(_0x1c1f76===_0x4444ed)break;else _0xe1577a['push'](_0xe1577a['shift']());}catch(_0x523309){_0xe1577a['push'](_0xe1577a['shift']());}}}(a126_0x1735,0xb24d7));import{readFileSync,existsSync,renameSync}from'node:fs';import{resolve,dirname,basename}from'node:path';function a126_0x5a9f(_0x12bbd1,_0x87702b){_0x12bbd1=_0x12bbd1-0x1b6;const _0x173514=a126_0x1735();let _0x5a9f30=_0x173514[_0x12bbd1];return _0x5a9f30;}import{fileURLToPath}from'node:url';import a126_0x5d3cf4 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';function a126_0x1735(){const _0x2b81cc=['11501613SIohTW','.rabetbase.json','\x20\x20Apps:\x20','1217290UGEuHW','package.json','cwd','parse','1.0.0','env','\x20api\x20pull\x27','keys','\x20\x20You\x20can\x20now\x20use\x20commands\x20like\x20\x27','string','1775652HKRRGx','?\x20(Old\x20file\x20→\x20*.bak)','toLocaleString','.rabetbase.json\x20already\x20exists\x20in\x20current\x20directory.\x20Nothing\x20to\x20do.','初始化项目配置文件成功','app','cyan','version','3BIQHAQ','⚠\x20Found\x20legacy\x20configuration\x20file:\x20','.bak','21455160GSCamA','从旧配置文件升级成功','\x20\x20Old\x20file\x20backed\x20up\x20as\x20','production','apps','appcode','\x20\x20Default:\x20','\x20→\x20.rabetbase.json','4479811hvyYQz','info','Invalid\x20App\x20Code','4172732TYapjU','2274iTpled','defaultApp','bold','green','Upgrade\x20it\x20to\x20','535Fdsnpa','\x20\x20appcode:\x20','16KPugbg','trim','✓\x20Upgraded\x20','setLogPath','join','log','utf8','init'];a126_0x1735=function(){return _0x2b81cc;};return a126_0x1735();}import{validateAppcode}from'../../commands/common/validate.js';import{buildCanonicalProjectConfig}from'../../config/schema.js';export async function initConfig(_0x312e85){const _0x4b6696=a126_0x5a9f,{appcode:_0x2bf9a8,env:_0x2e538c,autoYes:_0x377668}=_0x312e85,_0x2153df=process[_0x4b6696(0x1ca)]();if(getProjectConfigPath())throw new Error(_0x4b6696(0x1d5));let _0x42d6bf;for(const _0x2f805f of LEGACY_CONFIG_NAMES){const _0x14a86e=resolve(_0x2153df,_0x2f805f);if(existsSync(_0x14a86e)){_0x42d6bf=_0x14a86e;break;}}if(_0x42d6bf){let _0x97e1d8={};try{_0x97e1d8=JSON[_0x4b6696(0x1cb)](readFileSync(_0x42d6bf,_0x4b6696(0x1c3)));}catch{}const _0x11a319=basename(_0x42d6bf),_0x166d4e=_0x97e1d8?.['appcode']||_0x97e1d8?.[_0x4b6696(0x1d7)];let _0x19e893=_0x377668;!_0x377668&&(console[_0x4b6696(0x1c2)](a126_0x5d3cf4['yellow'](_0x4b6696(0x1db)+a126_0x5d3cf4[_0x4b6696(0x1b8)](_0x11a319))),_0x166d4e&&console['log'](a126_0x5d3cf4[_0x4b6696(0x1d8)](_0x4b6696(0x1bc)+_0x166d4e)),_0x19e893=await confirm({'message':_0x4b6696(0x1ba)+a126_0x5d3cf4['bold'](_0x4b6696(0x1c6))+_0x4b6696(0x1d3),'default':!![]}));if(!_0x19e893){console[_0x4b6696(0x1c2)]('Migration\x20cancelled.\x20Run\x20`'+CLI_BIN_NAME+'\x20project\x20init`\x20to\x20start\x20fresh.');return;}const _0x416a98=resolve(_0x2153df,NEW_CONFIG_NAME),_0x2d2a9b=getCliVersionFromPkg(),_0x1ba7b5=readRawConfig(),_0x3abd8b=_0x2bf9a8||(typeof _0x97e1d8?.[_0x4b6696(0x1e2)]==='string'?_0x97e1d8[_0x4b6696(0x1e2)]:undefined)||(typeof _0x97e1d8?.['app']===_0x4b6696(0x1d1)?_0x97e1d8[_0x4b6696(0x1d7)]:undefined)||await askAppcode(),_0x487abe=typeof _0x97e1d8?.['env']==='string'?_0x97e1d8['env']:typeof _0x1ba7b5[_0x4b6696(0x1cd)]===_0x4b6696(0x1d1)?_0x1ba7b5[_0x4b6696(0x1cd)]:_0x4b6696(0x1e0),_0x5eb3c2=buildCanonicalProjectConfig({..._0x1ba7b5,..._0x97e1d8},{'appCodes':[_0x3abd8b],'env':_0x487abe,'metadata':{'version':_0x2d2a9b,'migratedAt':new Date()[_0x4b6696(0x1d4)](),'migratedFrom':_0x42d6bf}});writeConfigFile(_0x416a98,_0x5eb3c2);const _0x13e08b=_0x42d6bf+'.bak';renameSync(_0x42d6bf,_0x13e08b),logger[_0x4b6696(0x1c0)](_0x2153df),logger[_0x4b6696(0x1e6)](_0x4b6696(0x1c4),_0x4b6696(0x1de),{'from':_0x42d6bf,'to':_0x416a98,'appcode':_0x3abd8b,'env':_0x5eb3c2[_0x4b6696(0x1cd)]}),console[_0x4b6696(0x1c2)](a126_0x5d3cf4['green'](_0x4b6696(0x1bf)+_0x11a319+_0x4b6696(0x1e4))),console['log'](a126_0x5d3cf4['cyan'](_0x4b6696(0x1c7)+Object[_0x4b6696(0x1cf)](_0x5eb3c2[_0x4b6696(0x1e1)]||{})[_0x4b6696(0x1c1)](',\x20'))),console[_0x4b6696(0x1c2)](a126_0x5d3cf4['cyan'](_0x4b6696(0x1e3)+_0x5eb3c2[_0x4b6696(0x1b7)])),console[_0x4b6696(0x1c2)](a126_0x5d3cf4['gray'](_0x4b6696(0x1df)+_0x11a319+_0x4b6696(0x1dc)));return;}const _0x529c21=_0x2bf9a8||await askAppcode(),_0x27a055=resolve(_0x2153df,NEW_CONFIG_NAME),_0x38b530=getCliVersionFromPkg(),_0x1b7f10=readRawConfig(),_0x1789e4=typeof _0x1b7f10[_0x4b6696(0x1cd)]===_0x4b6696(0x1d1)?_0x1b7f10[_0x4b6696(0x1cd)]:undefined,_0x581799=buildCanonicalProjectConfig({},{'appCodes':[_0x529c21],'env':_0x2e538c||_0x1789e4||_0x4b6696(0x1e0),'metadata':{'version':_0x38b530,'createdAt':new Date()[_0x4b6696(0x1d4)]()}});writeConfigFile(_0x27a055,_0x581799),logger[_0x4b6696(0x1c0)](_0x2153df),logger[_0x4b6696(0x1e6)]('init',_0x4b6696(0x1d6),{'appcode':_0x529c21,'env':_0x581799['env'],'version':_0x581799[_0x4b6696(0x1d9)],'configPath':_0x27a055}),console[_0x4b6696(0x1c2)](a126_0x5d3cf4[_0x4b6696(0x1b9)]('✓\x20Successfully\x20initialized\x20.rabetbase.json\x20in\x20current\x20directory')),console['log'](a126_0x5d3cf4['cyan'](_0x4b6696(0x1c7)+Object[_0x4b6696(0x1cf)](_0x581799['apps']||{})[_0x4b6696(0x1c1)](',\x20'))),console[_0x4b6696(0x1c2)](a126_0x5d3cf4[_0x4b6696(0x1d8)](_0x4b6696(0x1e3)+_0x581799['defaultApp'])),console[_0x4b6696(0x1c2)](_0x4b6696(0x1d0)+CLI_BIN_NAME+'\x20api\x20generate\x27\x20and\x20\x27'+CLI_BIN_NAME+_0x4b6696(0x1ce));}function askAppcode(){return input({'message':'Please\x20enter\x20App\x20Code:','validate':_0x566496=>{const _0x1ca007=a126_0x5a9f;if(!_0x566496[_0x1ca007(0x1be)]())return'App\x20Code\x20cannot\x20be\x20empty';const {valid:_0x5a578b,message:_0x457e6e}=validateAppcode(_0x566496['trim']());return _0x5a578b||_0x457e6e||_0x1ca007(0x1e7);}});}function getCliVersionFromPkg(){const _0x33b1fe=a126_0x5a9f;try{const _0x53e9d7=fileURLToPath(import.meta.url),_0x43292a=resolve(dirname(_0x53e9d7),'../..'),_0x4c8749=JSON['parse'](readFileSync(resolve(_0x43292a,_0x33b1fe(0x1c9)),_0x33b1fe(0x1c3)));return _0x4c8749[_0x33b1fe(0x1d9)]||_0x33b1fe(0x1cc);}catch{return _0x33b1fe(0x1cc);}}
@@ -1 +1 @@
1
- const a126_0x4acc28=a126_0x2b07;(function(_0x54e97c,_0x1fa897){const _0x50128a=a126_0x2b07,_0x591559=_0x54e97c();while(!![]){try{const _0x48497c=-parseInt(_0x50128a(0x18f))/0x1+parseInt(_0x50128a(0x187))/0x2+parseInt(_0x50128a(0x1a7))/0x3*(-parseInt(_0x50128a(0x1c7))/0x4)+parseInt(_0x50128a(0x1d7))/0x5+-parseInt(_0x50128a(0x172))/0x6+parseInt(_0x50128a(0x1a1))/0x7+parseInt(_0x50128a(0x1d4))/0x8;if(_0x48497c===_0x1fa897)break;else _0x591559['push'](_0x591559['shift']());}catch(_0x4278ec){_0x591559['push'](_0x591559['shift']());}}}(a126_0x2aa3,0x78fbb));import a126_0x36533f from'chalk';import a126_0x2fc026 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';function a126_0x2aa3(){const _0x3631d6=['1196ugcXyD','oldPath','object','isDirectory','.lovrabet','.cursor/mcp.json','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','[\x22@lovrabet/sdk\x22]:\x20','gray','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','bold','\x20→\x20','\x20\x20Action:\x20delete','10510144jGfbNt','some','includes','1402800rQlIyB','join','oldMcpConfig','args','Step\x201/7:\x20Migrating\x20config...','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','skipped','fail','lovrabet/rabetbase','Upgrade\x20@lovrabet/sdk','.claude/skills/lovrabet','\x20from\x20','path','\x20\x20bun\x20install','latest','\x20(backup:\x20','fields','skipped\x20(no\x20legacy\x20config)','===\x20Upgrade\x20Analysis\x20===','Install\x20new\x20skill','label','white','1238712sqinoL','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','Step\x204/7:\x20MCP\x20config\x20—\x20','not\x20found\x20or\x20already\x20at\x20latest','===\x20Upgrade\x20Summary\x20===','MCP\x20config:','sdkUpgrade','\x20\x20#\x20or','lovrabet/rabetbase\x20installed\x20globally','no\x20legacy\x20entry','push','\x20\x20Current\x20version\x20in\x20','\x20removed','length','Config\x20migration','green','@lovrabet/dataset-mcp-server','Clean\x20MCP\x20config','start','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','\x20\x20\x20\x20\x20\x20\x20','704292jBShhx','cwd','configMigration','error','\x20removed\x20(','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','FAIL','@lovrabet/sdk:','761820BpIyBJ','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','red','cyan','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','utf8','mcpServers','no\x20matching\x20entry\x20found','files','exit\x20','Remove\x20old\x20skill','done','isArray','Step\x205/7:\x20Removing\x20old\x20skill...','Remove\x20legacy\x20artifacts','@lovrabet/sdk','detail','hasNewConfig','424396JVFNzZ','needed','keys','stringify','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','inherit','5451wSMSAO','not\x20found\x20(will\x20create)','filter','status','Step\x206/7:\x20Installing\x20new\x20skill...','Step\x204/7:\x20Cleaning\x20MCP\x20config...','Config\x20file:','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','message','string','dependencies','failed','yellow','succeed','Legacy\x20artifacts:','entries','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','removed\x20','package.json','Remove\x20.lovrabet/','values','.bak','log','Step\x201/7:\x20Config\x20migration\x20—\x20','needsSkillSwap','not\x20needed','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','\x20\x20New\x20config\x20(.rabetbase.json):\x20','parse','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...'];a126_0x2aa3=function(){return _0x3631d6;};return a126_0x2aa3();}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[a126_0x4acc28(0x1a9)](_0x40d556=>_0x40d556!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x1335dc){const _0x1edf4f=a126_0x4acc28,_0x105110=[];for(const _0x59c45c of Object[_0x1edf4f(0x1bb)](CORE_IDE_CONFIGS)){if(_0x59c45c[_0x1edf4f(0x197)])for(const _0x2cdfab of _0x59c45c[_0x1edf4f(0x197)]){_0x105110[_0x1edf4f(0x17c)](resolve(_0x1335dc,_0x2cdfab[_0x1edf4f(0x168)]));}}return _0x105110;}function a126_0x2b07(_0x50b75f,_0x2b9d92){_0x50b75f=_0x50b75f-0x168;const _0x2aa3c5=a126_0x2aa3();let _0x2b07d8=_0x2aa3c5[_0x50b75f];return _0x2b07d8;}function analyse(_0x108c88){const _0xef69a6=a126_0x4acc28;let _0x25570d=null;const _0x84ac47=resolve(_0x108c88,NEW_CONFIG_NAME),_0x492c44=existsSync(_0x84ac47);for(const _0x53340b of LEGACY_CONFIG_NAMES){const _0x3e2aee=resolve(_0x108c88,_0x53340b);if(existsSync(_0x3e2aee)){const _0x568f0a=readConfigFile(_0x3e2aee),_0x37480b=Object[_0xef69a6(0x1a3)](_0x568f0a)[_0xef69a6(0x1a9)](_0x74d28d=>typeof _0x568f0a[_0x74d28d]!=='undefined');_0x25570d={'oldPath':_0x3e2aee,'hasNewConfig':_0x492c44,'fields':_0x37480b};break;}}const _0x2fa767=[],_0x33782a=resolve(_0x108c88,_0xef69a6(0x1cb));if(existsSync(_0x33782a))_0x2fa767[_0xef69a6(0x17c)](_0x33782a);const _0x579965=resolve(_0x108c88,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x579965))_0x2fa767[_0xef69a6(0x17c)](_0x579965);const _0x31c8f0=resolve(_0x108c88,_0xef69a6(0x1e1));if(existsSync(_0x31c8f0))_0x2fa767['push'](_0x31c8f0);for(const _0x4b9560 of collectIdeSkillFiles(_0x108c88)){if(existsSync(_0x4b9560))_0x2fa767['push'](_0x4b9560);}let _0xed432e=null;const _0x45fb8b=resolve(_0x108c88,_0xef69a6(0x1cc));if(existsSync(_0x45fb8b))try{const _0x25b24c=JSON[_0xef69a6(0x1c5)](readFileSync(_0x45fb8b,_0xef69a6(0x194)));if(_0x25b24c?.[_0xef69a6(0x195)]&&typeof _0x25b24c[_0xef69a6(0x195)]===_0xef69a6(0x1c9)){const _0x163146=[];for(const [_0x472c42,_0x11ecc6]of Object[_0xef69a6(0x1b6)](_0x25b24c['mcpServers'])){const _0x324a5c=_0x11ecc6;_0x324a5c?.['args']&&Array[_0xef69a6(0x19b)](_0x324a5c[_0xef69a6(0x1da)])&&_0x324a5c[_0xef69a6(0x1da)][_0xef69a6(0x1d5)](_0x20db1a=>typeof _0x20db1a===_0xef69a6(0x1b0)&&_0x20db1a[_0xef69a6(0x1d6)](_0xef69a6(0x182)))&&_0x163146['push'](_0x472c42);}_0x163146[_0xef69a6(0x17f)]>0x0&&(_0xed432e={'path':_0x45fb8b,'keys':_0x163146});}}catch{}const _0x5d5bfd=_0x2fa767[_0xef69a6(0x17f)]>0x0||_0x25570d!==null;let _0x3903a2=null;const _0x449634=resolve(_0x108c88,_0xef69a6(0x1b9));if(existsSync(_0x449634))try{const _0x3330dd=JSON[_0xef69a6(0x1c5)](readFileSync(_0x449634,'utf8'));for(const _0x457191 of[_0xef69a6(0x1b1),'devDependencies']){const _0x28ef2b=_0x3330dd?.[_0x457191]?.[_0xef69a6(0x19e)];if(typeof _0x28ef2b===_0xef69a6(0x1b0)){_0x28ef2b!==_0xef69a6(0x16a)&&(_0x3903a2={'pkgPath':_0x449634,'currentVersion':_0x28ef2b,'field':_0x457191});break;}}}catch{}return{'configMigration':_0x25570d,'oldArtifacts':_0x2fa767,'oldMcpConfig':_0xed432e,'needsSkillSwap':_0x5d5bfd,'sdkUpgrade':_0x3903a2};}function printReport(_0x4886bc){const _0x12ad13=a126_0x4acc28,{configMigration:_0x584ebd,oldArtifacts:_0x5ca313,oldMcpConfig:_0x2d827b,needsSkillSwap:_0x3ffa12}=_0x4886bc;console['log'](''),console[_0x12ad13(0x1bd)](a126_0x36533f[_0x12ad13(0x1d1)](_0x12ad13(0x16e))),console[_0x12ad13(0x1bd)]('');_0x584ebd?(console[_0x12ad13(0x1bd)](a126_0x36533f[_0x12ad13(0x192)](_0x12ad13(0x1ad))+('\x20\x20'+a126_0x36533f[_0x12ad13(0x1b3)](_0x584ebd[_0x12ad13(0x1c8)]))),console[_0x12ad13(0x1bd)](_0x12ad13(0x1c4)+(_0x584ebd[_0x12ad13(0x1a0)]?a126_0x36533f[_0x12ad13(0x181)]('already\x20exists\x20(will\x20merge)'):a126_0x36533f[_0x12ad13(0x1cf)](_0x12ad13(0x1a8)))),console['log']('\x20\x20Fields\x20to\x20migrate:\x20'+_0x584ebd[_0x12ad13(0x16c)][_0x12ad13(0x1d8)](',\x20')),console[_0x12ad13(0x1bd)](_0x12ad13(0x1cd))):console[_0x12ad13(0x1bd)](a126_0x36533f[_0x12ad13(0x192)](_0x12ad13(0x1ad))+'\x20\x20'+a126_0x36533f[_0x12ad13(0x1cf)]('no\x20legacy\x20config\x20found'));console[_0x12ad13(0x1bd)]('');if(_0x5ca313[_0x12ad13(0x17f)]>0x0){console['log'](a126_0x36533f['cyan'](_0x12ad13(0x1b5)));for(const _0x1d2584 of _0x5ca313){console['log']('\x20\x20'+a126_0x36533f[_0x12ad13(0x191)]('FOUND')+'\x20\x20'+_0x1d2584);}console[_0x12ad13(0x1bd)](_0x12ad13(0x1d3));}else console[_0x12ad13(0x1bd)](a126_0x36533f['cyan']('Legacy\x20artifacts:')+'\x20\x20'+a126_0x36533f[_0x12ad13(0x1cf)]('none\x20found'));console[_0x12ad13(0x1bd)]('');_0x2d827b?(console[_0x12ad13(0x1bd)](a126_0x36533f['cyan'](_0x12ad13(0x177))+('\x20\x20'+a126_0x36533f[_0x12ad13(0x1b3)](_0x2d827b[_0x12ad13(0x168)])+'\x20→\x20keys:\x20'+_0x2d827b[_0x12ad13(0x1a3)][_0x12ad13(0x1d8)](',\x20'))),console[_0x12ad13(0x1bd)](_0x12ad13(0x193))):console[_0x12ad13(0x1bd)](a126_0x36533f[_0x12ad13(0x192)](_0x12ad13(0x177))+'\x20\x20'+a126_0x36533f[_0x12ad13(0x1cf)](_0x12ad13(0x17b)));console[_0x12ad13(0x1bd)](''),console[_0x12ad13(0x1bd)](a126_0x36533f['cyan']('Skill\x20swap:')+('\x20\x20'+(_0x3ffa12?a126_0x36533f['yellow'](_0x12ad13(0x1a2)):a126_0x36533f[_0x12ad13(0x181)](_0x12ad13(0x1c0)))));_0x3ffa12&&console['log'](_0x12ad13(0x1c2)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x12ad13(0x1bd)]('');if(_0x4886bc['sdkUpgrade']){const {currentVersion:_0x381f9a,field:_0x6e3235,pkgPath:_0xceb358}=_0x4886bc[_0x12ad13(0x178)];console[_0x12ad13(0x1bd)](a126_0x36533f['cyan'](_0x12ad13(0x18e))+('\x20\x20'+a126_0x36533f[_0x12ad13(0x1b3)](_0xceb358))),console['log'](_0x12ad13(0x17d)+_0x6e3235+':\x20'+a126_0x36533f[_0x12ad13(0x1b3)](_0x381f9a)+_0x12ad13(0x1d2)+a126_0x36533f[_0x12ad13(0x181)](_0x12ad13(0x16a))),console[_0x12ad13(0x1bd)](_0x12ad13(0x1ae));}else console[_0x12ad13(0x1bd)](a126_0x36533f[_0x12ad13(0x192)](_0x12ad13(0x18e))+'\x20\x20'+a126_0x36533f[_0x12ad13(0x1cf)](_0x12ad13(0x175)));console[_0x12ad13(0x1bd)]('');}function execConfigMigration(_0x47a27d,_0xa035be){const _0x5b411f=a126_0x4acc28,{configMigration:_0x1f4248}=_0x47a27d;if(!_0x1f4248?.[_0x5b411f(0x1c8)])return{'step':0x1,'label':_0x5b411f(0x180),'ok':!![],'detail':_0x5b411f(0x16d)};const _0x2ee421=readConfigFile(_0x1f4248[_0x5b411f(0x1c8)]),_0x4555e9=resolve(_0xa035be,NEW_CONFIG_NAME),_0x103b78=_0x1f4248[_0x5b411f(0x1a0)]?readConfigFile(_0x4555e9):{};for(const [_0x2b41c4,_0x312df8]of Object['entries'](_0x2ee421)){!(_0x2b41c4 in _0x103b78)&&(_0x103b78[_0x2b41c4]=_0x312df8);}writeConfigFile(_0x4555e9,_0x103b78);const _0x57d2e5=_0x1f4248[_0x5b411f(0x1c8)]+_0x5b411f(0x1bc);return renameSync(_0x1f4248[_0x5b411f(0x1c8)],_0x57d2e5),{'step':0x1,'label':_0x5b411f(0x180),'ok':!![],'detail':_0x1f4248[_0x5b411f(0x1c8)]+_0x5b411f(0x1d2)+_0x4555e9+_0x5b411f(0x16b)+_0x57d2e5+')'};}function execRemoveOldArtifacts(_0x3d716d){const _0x31007b=a126_0x4acc28,_0xe14a0e=[];for(const _0x2a92b0 of _0x3d716d){try{if(!existsSync(_0x2a92b0))continue;const _0x344fdb=tryStat(_0x2a92b0);_0x344fdb?.[_0x31007b(0x1ca)]()?rmSync(_0x2a92b0,{'recursive':!![],'force':!![]}):unlinkSync(_0x2a92b0);}catch(_0x181050){_0xe14a0e['push'](_0x2a92b0+':\x20'+_0x181050[_0x31007b(0x1af)]);}}return{'step':0x3,'label':_0x31007b(0x19d),'ok':_0xe14a0e[_0x31007b(0x17f)]===0x0,'detail':_0xe14a0e[_0x31007b(0x17f)]>0x0?_0x3d716d[_0x31007b(0x17f)]-_0xe14a0e[_0x31007b(0x17f)]+'/'+_0x3d716d['length']+_0x31007b(0x18b)+_0xe14a0e['join'](';\x20')+')':_0x3d716d[_0x31007b(0x17f)]+_0x31007b(0x17e)};}function execCleanMcp(_0x5b8208){const _0x43bb66=a126_0x4acc28;if(!_0x5b8208['oldMcpConfig'])return{'step':0x4,'label':_0x43bb66(0x183),'ok':!![],'detail':_0x43bb66(0x1dd)};try{const _0x24fd54=readFileSync(_0x5b8208['oldMcpConfig'][_0x43bb66(0x168)],_0x43bb66(0x194)),_0x59582e=JSON[_0x43bb66(0x1c5)](_0x24fd54);if(_0x59582e?.[_0x43bb66(0x195)]&&typeof _0x59582e['mcpServers']===_0x43bb66(0x1c9)){const _0x31ee2a=[];for(const [_0x5aacf6,_0x17e7ee]of Object[_0x43bb66(0x1b6)](_0x59582e[_0x43bb66(0x195)])){_0x17e7ee?.[_0x43bb66(0x1da)]&&Array[_0x43bb66(0x19b)](_0x17e7ee['args'])&&_0x17e7ee[_0x43bb66(0x1da)][_0x43bb66(0x1d5)](_0x3c3e96=>typeof _0x3c3e96===_0x43bb66(0x1b0)&&_0x3c3e96[_0x43bb66(0x1d6)](_0x43bb66(0x182)))&&_0x31ee2a['push'](_0x5aacf6);}for(const _0x157a7b of _0x31ee2a){delete _0x59582e[_0x43bb66(0x195)][_0x157a7b];}return _0x31ee2a[_0x43bb66(0x17f)]>0x0&&writeFileSync(_0x5b8208['oldMcpConfig'][_0x43bb66(0x168)],JSON['stringify'](_0x59582e,null,0x2)+'\x0a',_0x43bb66(0x194)),{'step':0x4,'label':_0x43bb66(0x183),'ok':!![],'detail':_0x43bb66(0x1b8)+_0x31ee2a[_0x43bb66(0x1d8)](',\x20')+_0x43bb66(0x1e2)+_0x5b8208[_0x43bb66(0x1d9)][_0x43bb66(0x168)]};}return{'step':0x4,'label':_0x43bb66(0x183),'ok':!![],'detail':_0x43bb66(0x196)};}catch(_0x45ecef){return{'step':0x4,'label':_0x43bb66(0x183),'ok':![],'detail':_0x45ecef['message']};}}function execSkillsRemove(_0x478758,_0x11d372){const _0x43e2d7=a126_0x4acc28,_0x4afdbe=runNpxSkillsRemove(_0x478758,{'stdio':_0x43e2d7(0x1a6),'yes':_0x11d372});return{'step':0x5,'label':_0x43e2d7(0x199),'ok':_0x4afdbe['ok'],'detail':_0x4afdbe['ok']?'lovrabet/lovrabet-skill\x20removed':_0x4afdbe[_0x43e2d7(0x18a)]??_0x43e2d7(0x198)+_0x4afdbe[_0x43e2d7(0x1aa)]};}function execSkillsAdd(_0x4a1343,_0x238617){const _0x38c965=a126_0x4acc28,_0x54ad14=runNpxSkillsAddGlobal(_0x4a1343,_0x38c965(0x1df),{'stdio':_0x38c965(0x1a6),'yes':_0x238617});return{'step':0x6,'label':_0x38c965(0x16f),'ok':_0x54ad14['ok'],'detail':_0x54ad14['ok']?_0x38c965(0x17a):_0x54ad14[_0x38c965(0x18a)]??_0x38c965(0x198)+_0x54ad14[_0x38c965(0x1aa)]};}function execUpgradeSdk(_0x4e5487){const _0x9ff4ca=a126_0x4acc28;if(!_0x4e5487[_0x9ff4ca(0x178)])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x9ff4ca(0x1b7)};const {pkgPath:_0x400122,currentVersion:_0x48fd33,field:_0xa6d01}=_0x4e5487[_0x9ff4ca(0x178)];try{const _0xc84307=readFileSync(_0x400122,'utf8'),_0x8659f=JSON[_0x9ff4ca(0x1c5)](_0xc84307);return _0x8659f[_0xa6d01][_0x9ff4ca(0x19e)]=_0x9ff4ca(0x16a),writeFileSync(_0x400122,JSON[_0x9ff4ca(0x1a4)](_0x8659f,null,0x2)+'\x0a',_0x9ff4ca(0x194)),{'step':0x7,'label':_0x9ff4ca(0x1e0),'ok':!![],'detail':_0xa6d01+_0x9ff4ca(0x1ce)+_0x48fd33+'\x20→\x20latest'};}catch(_0x53a964){return{'step':0x7,'label':_0x9ff4ca(0x1e0),'ok':![],'detail':_0x53a964[_0x9ff4ca(0x1af)]};}}function tryStat(_0x3af87a){try{return statSync(_0x3af87a);}catch{return undefined;}}function printSummary(_0x39744a){const _0x1e5517=a126_0x4acc28;console['log'](''),console['log'](a126_0x36533f['bold'](_0x1e5517(0x176))),console[_0x1e5517(0x1bd)]('');for(const _0x27c573 of _0x39744a){const _0x405f3e=_0x27c573['ok']?a126_0x36533f['green']('OK'):a126_0x36533f['red'](_0x1e5517(0x18d));console[_0x1e5517(0x1bd)]('\x20\x20'+_0x405f3e+'\x20\x20Step\x20'+_0x27c573['step']+':\x20'+_0x27c573[_0x1e5517(0x170)]);if(_0x27c573[_0x1e5517(0x19f)])console[_0x1e5517(0x1bd)](_0x1e5517(0x186)+a126_0x36533f[_0x1e5517(0x1cf)](_0x27c573[_0x1e5517(0x19f)]));}console[_0x1e5517(0x1bd)]('');}export async function upgradeApp(_0x5bf3ef,_0x4d678b){const _0x4e9db4=a126_0x4acc28,_0x145e49=process[_0x4e9db4(0x188)](),_0x4ea308=analyse(_0x145e49),_0x4f49d5=!_0x4ea308[_0x4e9db4(0x189)]&&_0x4ea308['oldArtifacts']['length']===0x0&&!_0x4ea308[_0x4e9db4(0x1d9)]&&!_0x4ea308[_0x4e9db4(0x1bf)]&&!_0x4ea308['sdkUpgrade'];if(_0x4f49d5){console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x181)](_0x4e9db4(0x1d0)));return;}printReport(_0x4ea308);const _0x165992=!!(_0x4d678b['yes']||_0x4d678b['Y']||_0x5bf3ef);if(!_0x165992)try{const _0x163375=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x163375){console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x1cf)]('Upgrade\x20cancelled.'));return;}}catch(_0x171766){if(_0x171766?.['message']==='CANCEL'){console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x1cf)]('Upgrade\x20cancelled.'));return;}throw _0x171766;}const _0x888a77=[],_0x3eece2=a126_0x2fc026({'text':_0x4e9db4(0x1db),'color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)](),_0x7a16a=execConfigMigration(_0x4ea308,_0x145e49);_0x888a77[_0x4e9db4(0x17c)](_0x7a16a),_0x3eece2[_0x7a16a['ok']?'succeed':_0x4e9db4(0x1de)](_0x4e9db4(0x1be)+(_0x7a16a['detail']??(_0x7a16a['ok']?_0x4e9db4(0x19a):_0x4e9db4(0x1b2))));const _0x5b5aa8=resolve(_0x145e49,'.lovrabet'),_0x345560=a126_0x2fc026({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)]();if(existsSync(_0x5b5aa8))try{rmSync(_0x5b5aa8,{'recursive':!![],'force':!![]}),_0x345560[_0x4e9db4(0x1b4)](_0x4e9db4(0x1a5)),_0x888a77[_0x4e9db4(0x17c)]({'step':0x2,'label':_0x4e9db4(0x1ba),'ok':!![]});}catch(_0x2f5eed){_0x345560[_0x4e9db4(0x1de)](_0x4e9db4(0x173)+_0x2f5eed[_0x4e9db4(0x1af)]),_0x888a77[_0x4e9db4(0x17c)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x2f5eed['message']});}else _0x345560['info'](_0x4e9db4(0x185)),_0x888a77[_0x4e9db4(0x17c)]({'step':0x2,'label':_0x4e9db4(0x1ba),'ok':!![],'detail':_0x4e9db4(0x1dd)});const _0x24d4c3=a126_0x2fc026({'text':_0x4e9db4(0x1c6),'color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)](),_0x217dc0=execRemoveOldArtifacts(_0x4ea308['oldArtifacts']);_0x888a77[_0x4e9db4(0x17c)](_0x217dc0),_0x24d4c3[_0x217dc0['ok']?_0x4e9db4(0x1b4):_0x4e9db4(0x1de)](_0x4e9db4(0x1dc)+(_0x217dc0['detail']??(_0x217dc0['ok']?_0x4e9db4(0x19a):_0x4e9db4(0x1b2))));const _0x1c149b=a126_0x2fc026({'text':_0x4e9db4(0x1ac),'color':_0x4e9db4(0x192)})['start'](),_0x16059b=execCleanMcp(_0x4ea308);_0x888a77['push'](_0x16059b),_0x1c149b[_0x16059b['ok']?_0x4e9db4(0x1b4):_0x4e9db4(0x1de)](_0x4e9db4(0x174)+(_0x16059b[_0x4e9db4(0x19f)]??(_0x16059b['ok']?'done':_0x4e9db4(0x1b2))));const _0x18d03c=a126_0x2fc026({'text':_0x4e9db4(0x19c),'color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)](),_0x2abf9d=execSkillsRemove(_0x145e49,_0x165992);_0x888a77[_0x4e9db4(0x17c)](_0x2abf9d),_0x18d03c[_0x2abf9d['ok']?_0x4e9db4(0x1b4):_0x4e9db4(0x1de)](_0x4e9db4(0x1c3)+(_0x2abf9d[_0x4e9db4(0x19f)]??(_0x2abf9d['ok']?_0x4e9db4(0x19a):_0x4e9db4(0x1b2))));const _0x564cb8=a126_0x2fc026({'text':_0x4e9db4(0x1ab),'color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)](),_0x279723=execSkillsAdd(_0x145e49,_0x165992);_0x888a77[_0x4e9db4(0x17c)](_0x279723),_0x564cb8[_0x279723['ok']?_0x4e9db4(0x1b4):_0x4e9db4(0x1de)]('Step\x206/7:\x20Install\x20new\x20skill\x20—\x20'+(_0x279723['detail']??(_0x279723['ok']?'done':_0x4e9db4(0x1b2))));const _0x4b6832=a126_0x2fc026({'text':_0x4e9db4(0x18c),'color':_0x4e9db4(0x192)})[_0x4e9db4(0x184)](),_0x5cc815=execUpgradeSdk(_0x4ea308);_0x888a77[_0x4e9db4(0x17c)](_0x5cc815),_0x4b6832[_0x5cc815['ok']?_0x4e9db4(0x1b4):_0x4e9db4(0x1de)](_0x4e9db4(0x190)+(_0x5cc815[_0x4e9db4(0x19f)]??(_0x5cc815['ok']?_0x4e9db4(0x19a):_0x4e9db4(0x1b2)))),printSummary(_0x888a77);const _0x6c79e6=_0x888a77[_0x4e9db4(0x1d5)](_0x35adec=>!_0x35adec['ok']);_0x6c79e6?console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x1b3)]('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x181)]('Upgrade\x20completed\x20successfully!')),_0x5cc815['ok']&&_0x4ea308['sdkUpgrade']&&(console[_0x4e9db4(0x1bd)](''),console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x1d1)][_0x4e9db4(0x192)]('@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.')),console[_0x4e9db4(0x1bd)](a126_0x36533f[_0x4e9db4(0x192)](_0x4e9db4(0x1c1))),console[_0x4e9db4(0x1bd)](''),console[_0x4e9db4(0x1bd)](a126_0x36533f['white']('\x20\x20npm\x20install')),console['log'](a126_0x36533f['white'](_0x4e9db4(0x179))),console['log'](a126_0x36533f[_0x4e9db4(0x171)](_0x4e9db4(0x169))),console[_0x4e9db4(0x1bd)](''));}
1
+ const a127_0x204f76=a127_0x1a3d;(function(_0x291472,_0x4f5f7a){const _0x383f21=a127_0x1a3d,_0x4587ca=_0x291472();while(!![]){try{const _0x4e414c=parseInt(_0x383f21(0x109))/0x1*(-parseInt(_0x383f21(0xe1))/0x2)+-parseInt(_0x383f21(0xc9))/0x3+-parseInt(_0x383f21(0xe5))/0x4*(-parseInt(_0x383f21(0x9e))/0x5)+-parseInt(_0x383f21(0xb5))/0x6*(parseInt(_0x383f21(0x107))/0x7)+parseInt(_0x383f21(0xb1))/0x8+parseInt(_0x383f21(0xf4))/0x9*(parseInt(_0x383f21(0x9f))/0xa)+parseInt(_0x383f21(0x9a))/0xb*(-parseInt(_0x383f21(0xf7))/0xc);if(_0x4e414c===_0x4f5f7a)break;else _0x4587ca['push'](_0x4587ca['shift']());}catch(_0x596de1){_0x4587ca['push'](_0x4587ca['shift']());}}}(a127_0x1b54,0x24eec));import a127_0x235d05 from'chalk';import a127_0x553d6a 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[a127_0x204f76(0x10f)](_0xc0df31=>_0xc0df31!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x559c02){const _0x56e286=a127_0x204f76,_0xa769b3=[];for(const _0x1d7a1a of Object[_0x56e286(0xd4)](CORE_IDE_CONFIGS)){if(_0x1d7a1a[_0x56e286(0xf0)])for(const _0x39b47c of _0x1d7a1a[_0x56e286(0xf0)]){_0xa769b3[_0x56e286(0x10d)](resolve(_0x559c02,_0x39b47c[_0x56e286(0xc3)]));}}return _0xa769b3;}function analyse(_0x6092a9){const _0x4741ce=a127_0x204f76;let _0x34ba18=null;const _0x30583a=resolve(_0x6092a9,NEW_CONFIG_NAME),_0x35eb8c=existsSync(_0x30583a);for(const _0x5bd00c of LEGACY_CONFIG_NAMES){const _0x4ffd39=resolve(_0x6092a9,_0x5bd00c);if(existsSync(_0x4ffd39)){const _0x390eda=readConfigFile(_0x4ffd39),_0xc821fe=Object[_0x4741ce(0xc7)](_0x390eda)['filter'](_0x1ec3a2=>typeof _0x390eda[_0x1ec3a2]!==_0x4741ce(0xa1));_0x34ba18={'oldPath':_0x4ffd39,'hasNewConfig':_0x35eb8c,'fields':_0xc821fe};break;}}const _0x3b8ce4=[],_0x5ec328=resolve(_0x6092a9,_0x4741ce(0xdc));if(existsSync(_0x5ec328))_0x3b8ce4['push'](_0x5ec328);const _0x45eeca=resolve(_0x6092a9,_0x4741ce(0xd7));if(existsSync(_0x45eeca))_0x3b8ce4[_0x4741ce(0x10d)](_0x45eeca);const _0x112302=resolve(_0x6092a9,'.claude/skills/lovrabet');if(existsSync(_0x112302))_0x3b8ce4[_0x4741ce(0x10d)](_0x112302);for(const _0x3f3fc4 of collectIdeSkillFiles(_0x6092a9)){if(existsSync(_0x3f3fc4))_0x3b8ce4['push'](_0x3f3fc4);}let _0xf97471=null;const _0x332093=resolve(_0x6092a9,_0x4741ce(0xd5));if(existsSync(_0x332093))try{const _0x224a6d=JSON[_0x4741ce(0x106)](readFileSync(_0x332093,_0x4741ce(0xd1)));if(_0x224a6d?.[_0x4741ce(0x95)]&&typeof _0x224a6d[_0x4741ce(0x95)]===_0x4741ce(0x10e)){const _0x2af64e=[];for(const [_0x1b16ab,_0x5d6062]of Object['entries'](_0x224a6d[_0x4741ce(0x95)])){const _0x5cbe65=_0x5d6062;_0x5cbe65?.[_0x4741ce(0x94)]&&Array[_0x4741ce(0xf5)](_0x5cbe65[_0x4741ce(0x94)])&&_0x5cbe65[_0x4741ce(0x94)][_0x4741ce(0xb0)](_0x2798b9=>typeof _0x2798b9===_0x4741ce(0xb9)&&_0x2798b9[_0x4741ce(0x100)](_0x4741ce(0xde)))&&_0x2af64e[_0x4741ce(0x10d)](_0x1b16ab);}_0x2af64e['length']>0x0&&(_0xf97471={'path':_0x332093,'keys':_0x2af64e});}}catch{}const _0x46cfb0=_0x3b8ce4['length']>0x0||_0x34ba18!==null;let _0x58a4eb=null;const _0x268c90=resolve(_0x6092a9,_0x4741ce(0x104));if(existsSync(_0x268c90))try{const _0x385c1d=JSON[_0x4741ce(0x106)](readFileSync(_0x268c90,_0x4741ce(0xd1)));for(const _0x4a1c6f of[_0x4741ce(0x114),'devDependencies']){const _0x3cc362=_0x385c1d?.[_0x4a1c6f]?.['@lovrabet/sdk'];if(typeof _0x3cc362==='string'){_0x3cc362!==_0x4741ce(0x113)&&(_0x58a4eb={'pkgPath':_0x268c90,'currentVersion':_0x3cc362,'field':_0x4a1c6f});break;}}}catch{}return{'configMigration':_0x34ba18,'oldArtifacts':_0x3b8ce4,'oldMcpConfig':_0xf97471,'needsSkillSwap':_0x46cfb0,'sdkUpgrade':_0x58a4eb};}function printReport(_0xeb1510){const _0x15bbb7=a127_0x204f76,{configMigration:_0x477d44,oldArtifacts:_0x4b16cf,oldMcpConfig:_0x26a507,needsSkillSwap:_0x2b7931}=_0xeb1510;console[_0x15bbb7(0xeb)](''),console[_0x15bbb7(0xeb)](a127_0x235d05[_0x15bbb7(0x97)](_0x15bbb7(0xf8))),console[_0x15bbb7(0xeb)]('');_0x477d44?(console[_0x15bbb7(0xeb)](a127_0x235d05['cyan'](_0x15bbb7(0xf6))+('\x20\x20'+a127_0x235d05[_0x15bbb7(0x117)](_0x477d44[_0x15bbb7(0xfd)]))),console['log'](_0x15bbb7(0xbe)+(_0x477d44[_0x15bbb7(0xe3)]?a127_0x235d05[_0x15bbb7(0xd9)]('already\x20exists\x20(will\x20merge)'):a127_0x235d05[_0x15bbb7(0xef)](_0x15bbb7(0xa9)))),console[_0x15bbb7(0xeb)](_0x15bbb7(0xce)+_0x477d44[_0x15bbb7(0xb6)][_0x15bbb7(0xcd)](',\x20')),console[_0x15bbb7(0xeb)](_0x15bbb7(0x108))):console[_0x15bbb7(0xeb)](a127_0x235d05['cyan'](_0x15bbb7(0xf6))+'\x20\x20'+a127_0x235d05['gray'](_0x15bbb7(0x10a)));console[_0x15bbb7(0xeb)]('');if(_0x4b16cf[_0x15bbb7(0xd0)]>0x0){console['log'](a127_0x235d05[_0x15bbb7(0x9d)](_0x15bbb7(0x98)));for(const _0x3988a4 of _0x4b16cf){console[_0x15bbb7(0xeb)]('\x20\x20'+a127_0x235d05[_0x15bbb7(0x112)]('FOUND')+'\x20\x20'+_0x3988a4);}console[_0x15bbb7(0xeb)](_0x15bbb7(0x10b));}else console[_0x15bbb7(0xeb)](a127_0x235d05['cyan'](_0x15bbb7(0x98))+'\x20\x20'+a127_0x235d05[_0x15bbb7(0xef)](_0x15bbb7(0xe7)));console[_0x15bbb7(0xeb)]('');_0x26a507?(console['log'](a127_0x235d05[_0x15bbb7(0x9d)]('MCP\x20config:')+('\x20\x20'+a127_0x235d05[_0x15bbb7(0x117)](_0x26a507['path'])+_0x15bbb7(0xa0)+_0x26a507[_0x15bbb7(0xc7)][_0x15bbb7(0xcd)](',\x20'))),console[_0x15bbb7(0xeb)](_0x15bbb7(0x115))):console[_0x15bbb7(0xeb)](a127_0x235d05[_0x15bbb7(0x9d)](_0x15bbb7(0xa6))+'\x20\x20'+a127_0x235d05[_0x15bbb7(0xef)](_0x15bbb7(0xc6)));console[_0x15bbb7(0xeb)](''),console['log'](a127_0x235d05[_0x15bbb7(0x9d)]('Skill\x20swap:')+('\x20\x20'+(_0x2b7931?a127_0x235d05['yellow'](_0x15bbb7(0x99)):a127_0x235d05[_0x15bbb7(0xd9)](_0x15bbb7(0xba)))));_0x2b7931&&console['log'](_0x15bbb7(0xd6)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x15bbb7(0xeb)]('');if(_0xeb1510['sdkUpgrade']){const {currentVersion:_0x127cde,field:_0x11046e,pkgPath:_0x235535}=_0xeb1510[_0x15bbb7(0xfb)];console['log'](a127_0x235d05[_0x15bbb7(0x9d)](_0x15bbb7(0xb4))+('\x20\x20'+a127_0x235d05[_0x15bbb7(0x117)](_0x235535))),console['log'](_0x15bbb7(0xf1)+_0x11046e+':\x20'+a127_0x235d05[_0x15bbb7(0x117)](_0x127cde)+_0x15bbb7(0x96)+a127_0x235d05[_0x15bbb7(0xd9)](_0x15bbb7(0x113))),console[_0x15bbb7(0xeb)](_0x15bbb7(0xb7));}else console['log'](a127_0x235d05['cyan'](_0x15bbb7(0xb4))+'\x20\x20'+a127_0x235d05[_0x15bbb7(0xef)]('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x15bbb7(0xeb)]('');}function execConfigMigration(_0x24f400,_0x55f24d){const _0xb487dd=a127_0x204f76,{configMigration:_0x1c3912}=_0x24f400;if(!_0x1c3912?.['oldPath'])return{'step':0x1,'label':_0xb487dd(0xe2),'ok':!![],'detail':_0xb487dd(0xd8)};const _0x5b66fd=readConfigFile(_0x1c3912[_0xb487dd(0xfd)]),_0x2555fb=resolve(_0x55f24d,NEW_CONFIG_NAME),_0x1c9912=_0x1c3912[_0xb487dd(0xe3)]?readConfigFile(_0x2555fb):{};for(const [_0x425677,_0x19f08a]of Object[_0xb487dd(0xc0)](_0x5b66fd)){!(_0x425677 in _0x1c9912)&&(_0x1c9912[_0x425677]=_0x19f08a);}writeConfigFile(_0x2555fb,_0x1c9912);const _0x4d4677=_0x1c3912[_0xb487dd(0xfd)]+_0xb487dd(0xb3);return renameSync(_0x1c3912['oldPath'],_0x4d4677),{'step':0x1,'label':_0xb487dd(0xe2),'ok':!![],'detail':_0x1c3912[_0xb487dd(0xfd)]+_0xb487dd(0x96)+_0x2555fb+'\x20(backup:\x20'+_0x4d4677+')'};}function execRemoveOldArtifacts(_0x30cdc4){const _0x26f9be=a127_0x204f76,_0x351d68=[];for(const _0x5d691f of _0x30cdc4){try{if(!existsSync(_0x5d691f))continue;const _0x2594ef=tryStat(_0x5d691f);_0x2594ef?.[_0x26f9be(0x102)]()?rmSync(_0x5d691f,{'recursive':!![],'force':!![]}):unlinkSync(_0x5d691f);}catch(_0x58faea){_0x351d68['push'](_0x5d691f+':\x20'+_0x58faea[_0x26f9be(0x103)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x351d68[_0x26f9be(0xd0)]===0x0,'detail':_0x351d68[_0x26f9be(0xd0)]>0x0?_0x30cdc4['length']-_0x351d68[_0x26f9be(0xd0)]+'/'+_0x30cdc4[_0x26f9be(0xd0)]+_0x26f9be(0x105)+_0x351d68['join'](';\x20')+')':_0x30cdc4['length']+_0x26f9be(0xe9)};}function execCleanMcp(_0x7bac78){const _0x55e6a2=a127_0x204f76;if(!_0x7bac78[_0x55e6a2(0xda)])return{'step':0x4,'label':_0x55e6a2(0xbd),'ok':!![],'detail':_0x55e6a2(0xbc)};try{const _0x2e46b9=readFileSync(_0x7bac78['oldMcpConfig'][_0x55e6a2(0xc3)],'utf8'),_0x5e7de8=JSON[_0x55e6a2(0x106)](_0x2e46b9);if(_0x5e7de8?.['mcpServers']&&typeof _0x5e7de8['mcpServers']===_0x55e6a2(0x10e)){const _0x2d813f=[];for(const [_0x3935a6,_0x5c0e31]of Object[_0x55e6a2(0xc0)](_0x5e7de8[_0x55e6a2(0x95)])){_0x5c0e31?.['args']&&Array['isArray'](_0x5c0e31[_0x55e6a2(0x94)])&&_0x5c0e31[_0x55e6a2(0x94)][_0x55e6a2(0xb0)](_0x3d5a18=>typeof _0x3d5a18==='string'&&_0x3d5a18[_0x55e6a2(0x100)](_0x55e6a2(0xde)))&&_0x2d813f['push'](_0x3935a6);}for(const _0x406c18 of _0x2d813f){delete _0x5e7de8[_0x55e6a2(0x95)][_0x406c18];}return _0x2d813f[_0x55e6a2(0xd0)]>0x0&&writeFileSync(_0x7bac78['oldMcpConfig'][_0x55e6a2(0xc3)],JSON[_0x55e6a2(0xf9)](_0x5e7de8,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x55e6a2(0xbd),'ok':!![],'detail':'removed\x20'+_0x2d813f['join'](',\x20')+'\x20from\x20'+_0x7bac78[_0x55e6a2(0xda)][_0x55e6a2(0xc3)]};}return{'step':0x4,'label':_0x55e6a2(0xbd),'ok':!![],'detail':_0x55e6a2(0xf3)};}catch(_0x255a75){return{'step':0x4,'label':_0x55e6a2(0xbd),'ok':![],'detail':_0x255a75['message']};}}function execSkillsRemove(_0x5bae5d,_0x3e8078){const _0xb3da=a127_0x204f76,_0x5c7e54=runNpxSkillsRemove(_0x5bae5d,{'stdio':_0xb3da(0xa8),'yes':_0x3e8078});return{'step':0x5,'label':_0xb3da(0xca),'ok':_0x5c7e54['ok'],'detail':_0x5c7e54['ok']?_0xb3da(0x101):_0x5c7e54['error']??_0xb3da(0x9b)+_0x5c7e54['status']};}function execSkillsAdd(_0x47e0cb,_0x25f213){const _0x1faefb=a127_0x204f76,_0x28e80f=runNpxSkillsAddGlobal(_0x47e0cb,_0x1faefb(0xa7),{'stdio':'inherit','yes':_0x25f213});return{'step':0x6,'label':'Install\x20new\x20skill','ok':_0x28e80f['ok'],'detail':_0x28e80f['ok']?_0x1faefb(0xdb):_0x28e80f[_0x1faefb(0xc2)]??_0x1faefb(0x9b)+_0x28e80f[_0x1faefb(0xa2)]};}function execUpgradeSdk(_0x251986){const _0xd2bdbf=a127_0x204f76;if(!_0x251986[_0xd2bdbf(0xfb)])return{'step':0x7,'label':_0xd2bdbf(0xcf),'ok':!![],'detail':_0xd2bdbf(0xa4)};const {pkgPath:_0x1df2b1,currentVersion:_0x56ad46,field:_0x33c9f2}=_0x251986['sdkUpgrade'];try{const _0x2b0c57=readFileSync(_0x1df2b1,_0xd2bdbf(0xd1)),_0x9745c3=JSON[_0xd2bdbf(0x106)](_0x2b0c57);return _0x9745c3[_0x33c9f2][_0xd2bdbf(0xaf)]=_0xd2bdbf(0x113),writeFileSync(_0x1df2b1,JSON[_0xd2bdbf(0xf9)](_0x9745c3,null,0x2)+'\x0a',_0xd2bdbf(0xd1)),{'step':0x7,'label':_0xd2bdbf(0xcf),'ok':!![],'detail':_0x33c9f2+'[\x22@lovrabet/sdk\x22]:\x20'+_0x56ad46+'\x20→\x20latest'};}catch(_0x44a9ff){return{'step':0x7,'label':_0xd2bdbf(0xcf),'ok':![],'detail':_0x44a9ff[_0xd2bdbf(0x103)]};}}function a127_0x1b54(){const _0x2051d5=['needed','1056PEmAxP','exit\x20','Step\x205/7:\x20Removing\x20old\x20skill...','cyan','5MOQhrS','90790QzkeUc','\x20→\x20keys:\x20','undefined','status','\x20\x20Step\x20','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','needsSkillSwap','MCP\x20config:','lovrabet/rabetbase','inherit','not\x20found\x20(will\x20create)','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','Step\x201/7:\x20Migrating\x20config...','FAIL','Proceed\x20with\x20upgrade?','\x20\x20bun\x20install','@lovrabet/sdk','some','841384WgXcED','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','.bak','@lovrabet/sdk:','10158lajkoZ','fields','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','info','string','not\x20needed','Step\x206/7:\x20Installing\x20new\x20skill...','skipped','Clean\x20MCP\x20config','\x20\x20New\x20config\x20(.rabetbase.json):\x20','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','entries','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','error','path','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','Step\x204/7:\x20MCP\x20config\x20—\x20','no\x20legacy\x20entry','keys','step','130401YuZnCm','Remove\x20old\x20skill','\x20\x20#\x20or','Upgrade\x20cancelled.','join','\x20\x20Fields\x20to\x20migrate:\x20','Upgrade\x20@lovrabet/sdk','length','utf8','cwd','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','values','.cursor/mcp.json','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','.cursor/rules/lovrabet_rules.mdc','skipped\x20(no\x20legacy\x20config)','green','oldMcpConfig','lovrabet/rabetbase\x20installed\x20globally','.lovrabet','===\x20Upgrade\x20Summary\x20===','@lovrabet/dataset-mcp-server','\x20\x20\x20\x20\x20\x20\x20','failed','6FwUblU','Config\x20migration','hasNewConfig','yes','702196wFvjVd','succeed','none\x20found','fail','\x20removed','Step\x201/7:\x20Config\x20migration\x20—\x20','log','oldArtifacts','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','white','gray','files','\x20\x20Current\x20version\x20in\x20','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','no\x20matching\x20entry\x20found','144lPUDVX','isArray','Config\x20file:','8676ckFHbD','===\x20Upgrade\x20Analysis\x20===','stringify','Remove\x20.lovrabet/','sdkUpgrade','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','oldPath','detail','Step\x204/7:\x20Cleaning\x20MCP\x20config...','includes','lovrabet/lovrabet-skill\x20removed','isDirectory','message','package.json','\x20removed\x20(','parse','399mDHoGM','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','21778aGKruy','no\x20legacy\x20config\x20found','\x20\x20Action:\x20delete','CANCEL','push','object','filter','done','start','red','latest','dependencies','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','label','yellow','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','args','mcpServers','\x20→\x20','bold','Legacy\x20artifacts:'];a127_0x1b54=function(){return _0x2051d5;};return a127_0x1b54();}function tryStat(_0x58ce88){try{return statSync(_0x58ce88);}catch{return undefined;}}function printSummary(_0x2ef0b1){const _0x5d037c=a127_0x204f76;console[_0x5d037c(0xeb)](''),console[_0x5d037c(0xeb)](a127_0x235d05['bold'](_0x5d037c(0xdd))),console[_0x5d037c(0xeb)]('');for(const _0x521f23 of _0x2ef0b1){const _0x28d6d2=_0x521f23['ok']?a127_0x235d05[_0x5d037c(0xd9)]('OK'):a127_0x235d05[_0x5d037c(0x112)](_0x5d037c(0xac));console[_0x5d037c(0xeb)]('\x20\x20'+_0x28d6d2+_0x5d037c(0xa3)+_0x521f23[_0x5d037c(0xc8)]+':\x20'+_0x521f23[_0x5d037c(0x116)]);if(_0x521f23['detail'])console[_0x5d037c(0xeb)](_0x5d037c(0xdf)+a127_0x235d05['gray'](_0x521f23[_0x5d037c(0xfe)]));}console[_0x5d037c(0xeb)]('');}function a127_0x1a3d(_0x10f90c,_0x1c17d8){_0x10f90c=_0x10f90c-0x93;const _0x1b54ef=a127_0x1b54();let _0x1a3dbb=_0x1b54ef[_0x10f90c];return _0x1a3dbb;}export async function upgradeApp(_0x4d0c18,_0x148427){const _0x5912bb=a127_0x204f76,_0x3f73f5=process[_0x5912bb(0xd2)](),_0x3a087f=analyse(_0x3f73f5),_0x109e27=!_0x3a087f['configMigration']&&_0x3a087f[_0x5912bb(0xec)][_0x5912bb(0xd0)]===0x0&&!_0x3a087f[_0x5912bb(0xda)]&&!_0x3a087f[_0x5912bb(0xa5)]&&!_0x3a087f[_0x5912bb(0xfb)];if(_0x109e27){console['log'](a127_0x235d05[_0x5912bb(0xd9)]('No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.'));return;}printReport(_0x3a087f);const _0x15c657=!!(_0x148427[_0x5912bb(0xe4)]||_0x148427['Y']||_0x4d0c18);if(!_0x15c657)try{const _0x257431=await askConfirm(_0x5912bb(0xad));if(!_0x257431){console[_0x5912bb(0xeb)](a127_0x235d05['gray'](_0x5912bb(0xcc)));return;}}catch(_0x1afc90){if(_0x1afc90?.[_0x5912bb(0x103)]===_0x5912bb(0x10c)){console[_0x5912bb(0xeb)](a127_0x235d05['gray']('Upgrade\x20cancelled.'));return;}throw _0x1afc90;}const _0x108ba8=[],_0x462dc6=a127_0x553d6a({'text':_0x5912bb(0xab),'color':_0x5912bb(0x9d)})[_0x5912bb(0x111)](),_0x1448b3=execConfigMigration(_0x3a087f,_0x3f73f5);_0x108ba8[_0x5912bb(0x10d)](_0x1448b3),_0x462dc6[_0x1448b3['ok']?'succeed':_0x5912bb(0xe8)](_0x5912bb(0xea)+(_0x1448b3['detail']??(_0x1448b3['ok']?_0x5912bb(0x110):'failed')));const _0x2d51ab=resolve(_0x3f73f5,_0x5912bb(0xdc)),_0x1df016=a127_0x553d6a({'text':_0x5912bb(0xc1),'color':_0x5912bb(0x9d)})[_0x5912bb(0x111)]();if(existsSync(_0x2d51ab))try{rmSync(_0x2d51ab,{'recursive':!![],'force':!![]}),_0x1df016[_0x5912bb(0xe6)]('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x108ba8[_0x5912bb(0x10d)]({'step':0x2,'label':_0x5912bb(0xfa),'ok':!![]});}catch(_0x903af2){_0x1df016[_0x5912bb(0xe8)](_0x5912bb(0xc4)+_0x903af2[_0x5912bb(0x103)]),_0x108ba8[_0x5912bb(0x10d)]({'step':0x2,'label':_0x5912bb(0xfa),'ok':![],'detail':_0x903af2[_0x5912bb(0x103)]});}else _0x1df016[_0x5912bb(0xb8)](_0x5912bb(0xd3)),_0x108ba8[_0x5912bb(0x10d)]({'step':0x2,'label':_0x5912bb(0xfa),'ok':!![],'detail':_0x5912bb(0xbc)});const _0x2cb401=a127_0x553d6a({'text':_0x5912bb(0x93),'color':_0x5912bb(0x9d)})[_0x5912bb(0x111)](),_0x359322=execRemoveOldArtifacts(_0x3a087f[_0x5912bb(0xec)]);_0x108ba8[_0x5912bb(0x10d)](_0x359322),_0x2cb401[_0x359322['ok']?_0x5912bb(0xe6):_0x5912bb(0xe8)](_0x5912bb(0xbf)+(_0x359322['detail']??(_0x359322['ok']?_0x5912bb(0x110):_0x5912bb(0xe0))));const _0x278dab=a127_0x553d6a({'text':_0x5912bb(0xff),'color':_0x5912bb(0x9d)})['start'](),_0x14ee5e=execCleanMcp(_0x3a087f);_0x108ba8[_0x5912bb(0x10d)](_0x14ee5e),_0x278dab[_0x14ee5e['ok']?_0x5912bb(0xe6):_0x5912bb(0xe8)](_0x5912bb(0xc5)+(_0x14ee5e[_0x5912bb(0xfe)]??(_0x14ee5e['ok']?_0x5912bb(0x110):_0x5912bb(0xe0))));const _0x44d9ce=a127_0x553d6a({'text':_0x5912bb(0x9c),'color':'cyan'})[_0x5912bb(0x111)](),_0x30652f=execSkillsRemove(_0x3f73f5,_0x15c657);_0x108ba8[_0x5912bb(0x10d)](_0x30652f),_0x44d9ce[_0x30652f['ok']?_0x5912bb(0xe6):_0x5912bb(0xe8)](_0x5912bb(0xf2)+(_0x30652f[_0x5912bb(0xfe)]??(_0x30652f['ok']?_0x5912bb(0x110):_0x5912bb(0xe0))));const _0x1b52ee=a127_0x553d6a({'text':_0x5912bb(0xbb),'color':_0x5912bb(0x9d)})[_0x5912bb(0x111)](),_0x33edd1=execSkillsAdd(_0x3f73f5,_0x15c657);_0x108ba8[_0x5912bb(0x10d)](_0x33edd1),_0x1b52ee[_0x33edd1['ok']?'succeed':_0x5912bb(0xe8)](_0x5912bb(0xaa)+(_0x33edd1[_0x5912bb(0xfe)]??(_0x33edd1['ok']?_0x5912bb(0x110):_0x5912bb(0xe0))));const _0xd4fbc3=a127_0x553d6a({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':_0x5912bb(0x9d)})[_0x5912bb(0x111)](),_0x21ed69=execUpgradeSdk(_0x3a087f);_0x108ba8[_0x5912bb(0x10d)](_0x21ed69),_0xd4fbc3[_0x21ed69['ok']?_0x5912bb(0xe6):_0x5912bb(0xe8)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0x21ed69[_0x5912bb(0xfe)]??(_0x21ed69['ok']?'done':_0x5912bb(0xe0)))),printSummary(_0x108ba8);const _0x394956=_0x108ba8[_0x5912bb(0xb0)](_0xe10b9e=>!_0xe10b9e['ok']);_0x394956?console['log'](a127_0x235d05[_0x5912bb(0x117)](_0x5912bb(0xfc))):console[_0x5912bb(0xeb)](a127_0x235d05[_0x5912bb(0xd9)]('Upgrade\x20completed\x20successfully!')),_0x21ed69['ok']&&_0x3a087f[_0x5912bb(0xfb)]&&(console[_0x5912bb(0xeb)](''),console[_0x5912bb(0xeb)](a127_0x235d05[_0x5912bb(0x97)][_0x5912bb(0x9d)](_0x5912bb(0xb2))),console['log'](a127_0x235d05['cyan'](_0x5912bb(0xed))),console[_0x5912bb(0xeb)](''),console[_0x5912bb(0xeb)](a127_0x235d05['white']('\x20\x20npm\x20install')),console[_0x5912bb(0xeb)](a127_0x235d05[_0x5912bb(0xee)](_0x5912bb(0xcb))),console[_0x5912bb(0xeb)](a127_0x235d05['white'](_0x5912bb(0xae))),console[_0x5912bb(0xeb)](''));}