@lovrabet/rabetbase-cli 2.5.2-beta.7 → 2.5.2

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 (322) 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/api/generate-sdk-config-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.js +1 -1
  11. package/lib/auth/login-success-html.js +1 -1
  12. package/lib/auth/logout.js +1 -1
  13. package/lib/cli-flags.js +1 -1
  14. package/lib/cli.js +1 -1
  15. package/lib/commands/api/generate.js +1 -1
  16. package/lib/commands/api/index.js +1 -1
  17. package/lib/commands/api/list.js +1 -1
  18. package/lib/commands/api/pull.js +1 -1
  19. package/lib/commands/api/shared.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/members-list.js +1 -1
  23. package/lib/commands/app/remote-directory.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.js +1 -1
  50. package/lib/commands/common/local-file.js +1 -1
  51. package/lib/commands/common/validate.js +1 -1
  52. package/lib/commands/config/delete.js +1 -1
  53. package/lib/commands/config/get.js +1 -1
  54. package/lib/commands/config/index.js +1 -1
  55. package/lib/commands/config/init.js +1 -1
  56. package/lib/commands/config/list.js +1 -1
  57. package/lib/commands/config/set.js +1 -1
  58. package/lib/commands/config/shared.js +1 -1
  59. package/lib/commands/dataset/business-group-update.js +1 -1
  60. package/lib/commands/dataset/business-groups.js +1 -1
  61. package/lib/commands/dataset/capability.js +1 -1
  62. package/lib/commands/dataset/delete.js +1 -1
  63. package/lib/commands/dataset/detail.js +1 -1
  64. package/lib/commands/dataset/extend-update.js +1 -1
  65. package/lib/commands/dataset/field-restore.js +1 -1
  66. package/lib/commands/dataset/field-update.js +1 -1
  67. package/lib/commands/dataset/generate.js +1 -1
  68. package/lib/commands/dataset/index.js +1 -1
  69. package/lib/commands/dataset/list.js +1 -1
  70. package/lib/commands/dataset/operations.js +1 -1
  71. package/lib/commands/dataset/relation-audit.js +1 -1
  72. package/lib/commands/dataset/relation-create.js +1 -1
  73. package/lib/commands/dataset/relation-delete.js +1 -1
  74. package/lib/commands/dataset/relation-shared.js +1 -1
  75. package/lib/commands/dataset/relation-update.js +1 -1
  76. package/lib/commands/dataset/relations.js +1 -1
  77. package/lib/commands/dataset/rename.js +1 -1
  78. package/lib/commands/dataset/restore.js +1 -1
  79. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  80. package/lib/commands/db/analysis-batching.js +1 -1
  81. package/lib/commands/db/analyze-batch-plan.js +1 -1
  82. package/lib/commands/db/analyze-cancel.js +1 -1
  83. package/lib/commands/db/analyze-start.js +1 -1
  84. package/lib/commands/db/analyze-status.js +1 -1
  85. package/lib/commands/db/create.js +1 -1
  86. package/lib/commands/db/delete.js +1 -1
  87. package/lib/commands/db/detail.js +1 -1
  88. package/lib/commands/db/diff-refresh-start.js +1 -1
  89. package/lib/commands/db/diff-refresh-status.js +1 -1
  90. package/lib/commands/db/diff.js +1 -1
  91. package/lib/commands/db/index.js +1 -1
  92. package/lib/commands/db/list.js +1 -1
  93. package/lib/commands/db/shared.js +1 -1
  94. package/lib/commands/db/table-diff-shared.js +1 -1
  95. package/lib/commands/db/tables.js +1 -1
  96. package/lib/commands/db/test.js +1 -1
  97. package/lib/commands/db/update.js +1 -1
  98. package/lib/commands/deployment/index.js +1 -1
  99. package/lib/commands/deployment/sync-all.js +1 -1
  100. package/lib/commands/deployment/sync-jobs.js +1 -1
  101. package/lib/commands/deployment/sync-status.js +1 -1
  102. package/lib/commands/doctor.js +1 -1
  103. package/lib/commands/file/index.js +1 -1
  104. package/lib/commands/instant-api-policy/current.js +1 -1
  105. package/lib/commands/instant-api-policy/index.js +1 -1
  106. package/lib/commands/instant-api-policy/init.js +1 -1
  107. package/lib/commands/instant-api-policy/publish.js +1 -1
  108. package/lib/commands/instant-api-policy/pull.js +1 -1
  109. package/lib/commands/instant-api-policy/revision.js +1 -1
  110. package/lib/commands/instant-api-policy/revisions.js +1 -1
  111. package/lib/commands/instant-api-policy/rollback.js +1 -1
  112. package/lib/commands/instant-api-policy/shared.js +1 -1
  113. package/lib/commands/instant-api-policy/validate.js +1 -1
  114. package/lib/commands/issue/index.js +1 -1
  115. package/lib/commands/issue/nudge.js +1 -1
  116. package/lib/commands/issue/report.js +1 -1
  117. package/lib/commands/issue/shared.js +1 -1
  118. package/lib/commands/kb/create.js +1 -1
  119. package/lib/commands/kb/delete.js +1 -1
  120. package/lib/commands/kb/detail.js +1 -1
  121. package/lib/commands/kb/index.js +1 -1
  122. package/lib/commands/kb/list.js +1 -1
  123. package/lib/commands/kb/search.js +1 -1
  124. package/lib/commands/kb/shared.js +1 -1
  125. package/lib/commands/kb/update.js +1 -1
  126. package/lib/commands/logs/index.js +1 -1
  127. package/lib/commands/menu/asset-update.js +1 -1
  128. package/lib/commands/menu/delete.js +1 -1
  129. package/lib/commands/menu/external-link-create.js +1 -1
  130. package/lib/commands/menu/external-link-update.js +1 -1
  131. package/lib/commands/menu/group-create.js +1 -1
  132. package/lib/commands/menu/group-update.js +1 -1
  133. package/lib/commands/menu/index.js +1 -1
  134. package/lib/commands/menu/list.js +1 -1
  135. package/lib/commands/menu/move.js +1 -1
  136. package/lib/commands/menu/regroup-start.js +1 -1
  137. package/lib/commands/menu/rename.js +1 -1
  138. package/lib/commands/menu/shared/compare-table.js +1 -1
  139. package/lib/commands/menu/shared/delete-plan.js +1 -1
  140. package/lib/commands/menu/shared/facts.js +1 -1
  141. package/lib/commands/menu/shared/index.js +1 -1
  142. package/lib/commands/menu/shared/inquirer.js +1 -1
  143. package/lib/commands/menu/shared/local-pages.js +1 -1
  144. package/lib/commands/menu/shared/logic.js +1 -1
  145. package/lib/commands/menu/shared/mutations.js +1 -1
  146. package/lib/commands/menu/shared/service.js +1 -1
  147. package/lib/commands/menu/shared/sync-core.js +1 -1
  148. package/lib/commands/menu/shared/update-core.js +1 -1
  149. package/lib/commands/menu/shared/valid-url.js +1 -1
  150. package/lib/commands/menu/sync.js +1 -1
  151. package/lib/commands/menu/visibility-update.js +1 -1
  152. package/lib/commands/notification/config-create.js +1 -1
  153. package/lib/commands/notification/config-delete.js +1 -1
  154. package/lib/commands/notification/config-list.js +1 -1
  155. package/lib/commands/notification/config-update.js +1 -1
  156. package/lib/commands/notification/index.js +1 -1
  157. package/lib/commands/notification/shared.js +1 -1
  158. package/lib/commands/ocr/index.js +1 -1
  159. package/lib/commands/page/create.js +1 -1
  160. package/lib/commands/page/custom/detail.js +1 -1
  161. package/lib/commands/page/custom/list.js +1 -1
  162. package/lib/commands/page/custom/publish.js +1 -1
  163. package/lib/commands/page/custom/shared.js +1 -1
  164. package/lib/commands/page/custom/syntax.js +1 -1
  165. package/lib/commands/page/custom/update.js +1 -1
  166. package/lib/commands/page/data-list-status.js +1 -1
  167. package/lib/commands/page/generate-start.js +1 -1
  168. package/lib/commands/page/generate-status.js +1 -1
  169. package/lib/commands/page/index.js +1 -1
  170. package/lib/commands/page/pull.js +1 -1
  171. package/lib/commands/page/push.js +1 -1
  172. package/lib/commands/page/relation-audit.js +1 -1
  173. package/lib/commands/page/restore.js +1 -1
  174. package/lib/commands/page/shared.js +1 -1
  175. package/lib/commands/page/sync.js +1 -1
  176. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  177. package/lib/commands/project/create/format-elapsed.js +1 -1
  178. package/lib/commands/project/create/main.js +1 -1
  179. package/lib/commands/project/create/materialize-project-template.js +1 -1
  180. package/lib/commands/project/create/project-name.js +1 -1
  181. package/lib/commands/project/create/project-template-archive.js +1 -1
  182. package/lib/commands/project/create/project-template-path.js +1 -1
  183. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  184. package/lib/commands/project/create/use-format-code.js +1 -1
  185. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  186. package/lib/commands/project/domain-routing-sync.js +1 -1
  187. package/lib/commands/project/index.js +1 -1
  188. package/lib/commands/project/upgrade.js +1 -1
  189. package/lib/commands/registry.js +1 -1
  190. package/lib/commands/role/delete.js +1 -1
  191. package/lib/commands/role/detail.js +1 -1
  192. package/lib/commands/role/index.js +1 -1
  193. package/lib/commands/role/list.js +1 -1
  194. package/lib/commands/role/shared.js +1 -1
  195. package/lib/commands/role/update.js +1 -1
  196. package/lib/commands/role/user-add.js +1 -1
  197. package/lib/commands/role/user-remove.js +1 -1
  198. package/lib/commands/role/user-resolve.js +1 -1
  199. package/lib/commands/rule/get.js +1 -1
  200. package/lib/commands/rule/index.js +1 -1
  201. package/lib/commands/rule/list.js +1 -1
  202. package/lib/commands/rule/set.js +1 -1
  203. package/lib/commands/rule/shared.js +1 -1
  204. package/lib/commands/run/index.js +1 -1
  205. package/lib/commands/schema.js +1 -1
  206. package/lib/commands/sql/create.js +1 -1
  207. package/lib/commands/sql/delete.js +1 -1
  208. package/lib/commands/sql/detail.js +1 -1
  209. package/lib/commands/sql/exec.js +1 -1
  210. package/lib/commands/sql/index.js +1 -1
  211. package/lib/commands/sql/list.js +1 -1
  212. package/lib/commands/sql/pull.js +1 -1
  213. package/lib/commands/sql/push.js +1 -1
  214. package/lib/commands/sql/shared.js +1 -1
  215. package/lib/commands/sql/status.js +1 -1
  216. package/lib/commands/sql/validate.js +1 -1
  217. package/lib/commands/task/index.js +1 -1
  218. package/lib/commands/task/status.js +1 -1
  219. package/lib/commands/tenant/index.js +1 -1
  220. package/lib/commands/tenant/members-list.js +1 -1
  221. package/lib/commands/tenant/shared.js +1 -1
  222. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  223. package/lib/commands/user-account/index.js +1 -1
  224. package/lib/commands/workspace/add.js +1 -1
  225. package/lib/commands/workspace/index.js +1 -1
  226. package/lib/commands/workspace/remove.js +1 -1
  227. package/lib/config/domain-config.js +1 -1
  228. package/lib/config/project-domain-routing.js +1 -1
  229. package/lib/config/schema.js +1 -1
  230. package/lib/constant/cdn.js +1 -1
  231. package/lib/constant/cli.js +1 -1
  232. package/lib/constant/defaults.js +1 -1
  233. package/lib/constant/domain.js +1 -1
  234. package/lib/constant/env.js +1 -1
  235. package/lib/constant/output.js +1 -1
  236. package/lib/constant/paths.js +1 -1
  237. package/lib/constant/region.js +1 -1
  238. package/lib/constant/risk.js +1 -1
  239. package/lib/constant/routing-profile.js +1 -1
  240. package/lib/context/app-resolver.js +1 -1
  241. package/lib/context/auth-resolver.js +1 -1
  242. package/lib/context/config-loader.js +1 -1
  243. package/lib/context.js +1 -1
  244. package/lib/core/alias-resolver.js +1 -1
  245. package/lib/core/api-client.js +1 -1
  246. package/lib/core/bff/config.js +1 -1
  247. package/lib/core/bff/file-system.js +1 -1
  248. package/lib/core/bff/hash.js +1 -1
  249. package/lib/core/bff/lock.js +1 -1
  250. package/lib/core/bff/utils.js +1 -1
  251. package/lib/core/db-resolver.js +1 -1
  252. package/lib/core/instant-api-policy/config.js +1 -1
  253. package/lib/core/kb-search-client.js +1 -1
  254. package/lib/core/page/file-system.js +1 -1
  255. package/lib/core/page/hash.js +1 -1
  256. package/lib/core/page/lock.js +1 -1
  257. package/lib/core/sql-index-auditor.js +1 -1
  258. package/lib/core/sql-sync/config.js +1 -1
  259. package/lib/core/sql-sync/file-system.js +1 -1
  260. package/lib/core/sql-sync/hash.js +1 -1
  261. package/lib/core/sql-sync/lock.js +1 -1
  262. package/lib/core/sql-sync/utils.js +1 -1
  263. package/lib/core/sql-validator.js +1 -1
  264. package/lib/errors.js +1 -1
  265. package/lib/framework/build-all-flags.js +1 -1
  266. package/lib/framework/error-output.js +1 -1
  267. package/lib/framework/explicit-yes.js +1 -1
  268. package/lib/framework/flags.js +1 -1
  269. package/lib/framework/help.js +1 -1
  270. package/lib/framework/index.js +1 -1
  271. package/lib/framework/output.js +1 -1
  272. package/lib/framework/response.js +1 -1
  273. package/lib/framework/runner-alias.js +1 -1
  274. package/lib/framework/runner.js +1 -1
  275. package/lib/framework/schema-export.js +1 -1
  276. package/lib/framework/supported-flags.js +1 -1
  277. package/lib/framework/types.js +1 -1
  278. package/lib/generated/build-info.d.ts +4 -4
  279. package/lib/generated/build-info.js +1 -1
  280. package/lib/generated/official-routing.js +1 -1
  281. package/lib/generated/routing-contract.js +1 -1
  282. package/lib/help.js +1 -1
  283. package/lib/postinstall.js +1 -1
  284. package/lib/runtime/confirmation.js +1 -1
  285. package/lib/runtime/event.js +1 -1
  286. package/lib/runtime/index.js +1 -1
  287. package/lib/runtime/queue.js +1 -1
  288. package/lib/runtime/resolve.js +1 -1
  289. package/lib/skills/builtin-skill.js +1 -1
  290. package/lib/skills/main.js +1 -1
  291. package/lib/skills/npx-skills-add.js +1 -1
  292. package/lib/skills/skill-presence.js +1 -1
  293. package/lib/telemetry/cli-command-trace.js +1 -1
  294. package/lib/telemetry/cli-help-trace.js +1 -1
  295. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  296. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  297. package/lib/telemetry/send-cli-trace-log.js +1 -1
  298. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  299. package/lib/utils/ai_config.js +1 -1
  300. package/lib/utils/apply-jq-filter.js +1 -1
  301. package/lib/utils/cdn-config.js +1 -1
  302. package/lib/utils/check-sdk-version.js +1 -1
  303. package/lib/utils/cli-version-check.js +1 -1
  304. package/lib/utils/cli-version-policy.js +1 -1
  305. package/lib/utils/config.js +1 -1
  306. package/lib/utils/entity-with-id.js +1 -1
  307. package/lib/utils/file-utils.js +1 -1
  308. package/lib/utils/guides-cdn.js +1 -1
  309. package/lib/utils/http-client.js +1 -1
  310. package/lib/utils/is-non-interactive.js +1 -1
  311. package/lib/utils/logger.js +1 -1
  312. package/lib/utils/params.js +1 -1
  313. package/lib/utils/platform.js +1 -1
  314. package/lib/utils/sleep.js +1 -1
  315. package/lib/utils/template-replacer.js +1 -1
  316. package/lib/utils/update-notice.js +1 -1
  317. package/lib/utils/version.js +1 -1
  318. package/lib/utils/with-active-cookie.js +1 -1
  319. package/lib/utils/write-cli-side-channel.js +1 -1
  320. package/package.json +1 -1
  321. package/skills/rabetbase/SKILL.md +1 -1
  322. package/skills/rabetbase.manifest.json +3 -3
@@ -1 +1 @@
1
- function a176_0x3b89(_0x4ca9d3,_0x48c92b){_0x4ca9d3=_0x4ca9d3-0x1e3;const _0x2d0a5f=a176_0x2d0a();let _0x3b891b=_0x2d0a5f[_0x4ca9d3];return _0x3b891b;}(function(_0x53ef83,_0x1eca1d){const _0x482d4b=a176_0x3b89,_0x20fe45=_0x53ef83();while(!![]){try{const _0x238a98=-parseInt(_0x482d4b(0x1f4))/0x1+-parseInt(_0x482d4b(0x1fc))/0x2+parseInt(_0x482d4b(0x1fa))/0x3+parseInt(_0x482d4b(0x1e4))/0x4+parseInt(_0x482d4b(0x1f0))/0x5*(-parseInt(_0x482d4b(0x1f7))/0x6)+parseInt(_0x482d4b(0x1ed))/0x7*(parseInt(_0x482d4b(0x1f3))/0x8)+parseInt(_0x482d4b(0x1ef))/0x9;if(_0x238a98===_0x1eca1d)break;else _0x20fe45['push'](_0x20fe45['shift']());}catch(_0x2efdb0){_0x20fe45['push'](_0x20fe45['shift']());}}}(a176_0x2d0a,0x466b5));import{existsSync}from'node:fs';import a176_0x5a471c from'node:path';import a176_0x4165ce from'chalk';import{input,confirm}from'@inquirer/prompts';import{getIsSessionValid}from'../../../auth/is-session-valid.js';import{authServer}from'../../../auth/auth-server.js';function a176_0x2d0a(){const _0x4ff2fa=['string','trim','75438uXPmTp','Login\x20failed','1040120PffLml','production','√\x20Project\x20Name:\x20','1859848aDKJvh','log','√\x20App\x20Code:\x20','√\x20Login\x20status:\x20','Skipped','cyan','green','Directory\x20\x22','\x22\x20already\x20exists','1924363baUdpu','env','2692908nbBqRD','566395DIVaqd','Logged\x20in','Project\x20name:','16nmFsBR','190804IhKXDr','cwd','my-app','18MZjhZy'];a176_0x2d0a=function(){return _0x4ff2fa;};return a176_0x2d0a();}import{readConfig}from'../../../utils/config.js';import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getProjectNameValidationError}from'../../../commands/project/create/project-name.js';export async function guidedCreateProject(_0x54523e,_0x29b253,_0x11f346){const _0x19c76e=a176_0x3b89,_0x4854fc=_0x19c76e(0x1f6),_0x1afa7e=readConfig(),_0x309e5f=typeof _0x1afa7e[_0x19c76e(0x1ee)]===_0x19c76e(0x1f8)?_0x1afa7e[_0x19c76e(0x1ee)]:undefined,_0xa973fb=await input({'message':_0x19c76e(0x1f2),'default':_0x4854fc,'validate':_0x277d82=>{const _0x300c62=_0x19c76e,_0x369a67=_0x277d82[_0x300c62(0x1f9)]()||_0x4854fc,_0xecb759=getProjectNameValidationError(_0x369a67);if(_0xecb759)return _0xecb759;const _0x3120be=a176_0x5a471c['resolve'](process[_0x300c62(0x1f5)](),_0x369a67);if(existsSync(_0x3120be))return _0x300c62(0x1eb)+_0x369a67+_0x300c62(0x1ec);return!![];}});console[_0x19c76e(0x1e5)](a176_0x4165ce[_0x19c76e(0x1ea)](_0x19c76e(0x1e3)+a176_0x4165ce['cyan'](_0xa973fb)));const _0x46deeb=await selectSingleAppcode(_0x11f346);console[_0x19c76e(0x1e5)](a176_0x4165ce['green'](_0x19c76e(0x1e6)+a176_0x4165ce[_0x19c76e(0x1e9)](_0x46deeb||'Not\x20set')));if(_0x46deeb){const _0x3d33c0=await getIsSessionValid();if(!_0x3d33c0){const _0x29f7b8=await confirm({'message':'No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','default':!![]});if(_0x29f7b8){const _0x37347b=await authServer({'silent':!![]});console[_0x19c76e(0x1e5)](a176_0x4165ce['green'](_0x19c76e(0x1e7)+a176_0x4165ce['cyan'](_0x37347b?_0x19c76e(0x1f1):_0x19c76e(0x1fb))));}else console[_0x19c76e(0x1e5)](a176_0x4165ce[_0x19c76e(0x1ea)](_0x19c76e(0x1e7)+a176_0x4165ce[_0x19c76e(0x1e9)](_0x19c76e(0x1e8))));}await _0x54523e({'projectName':_0xa973fb,'appCode':_0x46deeb,'env':_0x29b253||_0x309e5f||_0x19c76e(0x1fd)});}else await _0x54523e({'projectName':_0xa973fb,'env':_0x29b253||_0x309e5f||_0x19c76e(0x1fd)});}
1
+ (function(_0x483d86,_0x4fcff8){const _0x23fd6e=a176_0x51a5,_0x24b74c=_0x483d86();while(!![]){try{const _0xa31d64=-parseInt(_0x23fd6e(0x1a3))/0x1+parseInt(_0x23fd6e(0x1ac))/0x2*(parseInt(_0x23fd6e(0x1a0))/0x3)+parseInt(_0x23fd6e(0x1ad))/0x4*(parseInt(_0x23fd6e(0x19e))/0x5)+parseInt(_0x23fd6e(0x1aa))/0x6*(parseInt(_0x23fd6e(0x197))/0x7)+parseInt(_0x23fd6e(0x1af))/0x8*(parseInt(_0x23fd6e(0x1a6))/0x9)+parseInt(_0x23fd6e(0x198))/0xa+-parseInt(_0x23fd6e(0x1b0))/0xb;if(_0xa31d64===_0x4fcff8)break;else _0x24b74c['push'](_0x24b74c['shift']());}catch(_0x93431b){_0x24b74c['push'](_0x24b74c['shift']());}}}(a176_0x1627,0x32067));import{existsSync}from'node:fs';import a176_0x1c9336 from'node:path';function a176_0x1627(){const _0xd66275=['Login\x20failed','√\x20Login\x20status:\x20','trim','2420526SdqGSp','production','530890QbIMte','8cVCcZE','my-app','8hPgcbH','10874677VMsFiH','Logged\x20in','√\x20App\x20Code:\x20','string','\x22\x20already\x20exists','green','7RRgpot','1670380MPPwvc','√\x20Project\x20Name:\x20','log','cyan','Directory\x20\x22','cwd','724215SKqBPl','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','3zhYcNX','env','Project\x20name:','169075zDwuhm','Skipped','Not\x20set','2132955LjcRrX'];a176_0x1627=function(){return _0xd66275;};return a176_0x1627();}import a176_0x19d245 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';import{getProjectNameValidationError}from'../../../commands/project/create/project-name.js';function a176_0x51a5(_0x36e57d,_0x205d33){_0x36e57d=_0x36e57d-0x192;const _0x162774=a176_0x1627();let _0x51a5f4=_0x162774[_0x36e57d];return _0x51a5f4;}export async function guidedCreateProject(_0x8f3c31,_0x1515ea,_0x2010ab){const _0x779b7c=a176_0x51a5,_0x516b2d=_0x779b7c(0x1ae),_0x2387ec=readConfig(),_0x46d5f6=typeof _0x2387ec['env']===_0x779b7c(0x194)?_0x2387ec[_0x779b7c(0x1a1)]:undefined,_0x4affc3=await input({'message':_0x779b7c(0x1a2),'default':_0x516b2d,'validate':_0x99cd27=>{const _0x4311b7=_0x779b7c,_0x5c0caf=_0x99cd27[_0x4311b7(0x1a9)]()||_0x516b2d,_0x261b48=getProjectNameValidationError(_0x5c0caf);if(_0x261b48)return _0x261b48;const _0x4c447a=a176_0x1c9336['resolve'](process[_0x4311b7(0x19d)](),_0x5c0caf);if(existsSync(_0x4c447a))return _0x4311b7(0x19c)+_0x5c0caf+_0x4311b7(0x195);return!![];}});console[_0x779b7c(0x19a)](a176_0x19d245[_0x779b7c(0x196)](_0x779b7c(0x199)+a176_0x19d245[_0x779b7c(0x19b)](_0x4affc3)));const _0x3eeed8=await selectSingleAppcode(_0x2010ab);console[_0x779b7c(0x19a)](a176_0x19d245[_0x779b7c(0x196)](_0x779b7c(0x193)+a176_0x19d245[_0x779b7c(0x19b)](_0x3eeed8||_0x779b7c(0x1a5))));if(_0x3eeed8){const _0x5ead47=await getIsSessionValid();if(!_0x5ead47){const _0x53ab57=await confirm({'message':_0x779b7c(0x19f),'default':!![]});if(_0x53ab57){const _0x20e9f8=await authServer({'silent':!![]});console[_0x779b7c(0x19a)](a176_0x19d245[_0x779b7c(0x196)](_0x779b7c(0x1a8)+a176_0x19d245['cyan'](_0x20e9f8?_0x779b7c(0x192):_0x779b7c(0x1a7))));}else console[_0x779b7c(0x19a)](a176_0x19d245[_0x779b7c(0x196)](_0x779b7c(0x1a8)+a176_0x19d245[_0x779b7c(0x19b)](_0x779b7c(0x1a4))));}await _0x8f3c31({'projectName':_0x4affc3,'appCode':_0x3eeed8,'env':_0x1515ea||_0x46d5f6||_0x779b7c(0x1ab)});}else await _0x8f3c31({'projectName':_0x4affc3,'env':_0x1515ea||_0x46d5f6||_0x779b7c(0x1ab)});}
@@ -1 +1 @@
1
- function a177_0x10c6(){const _0x4f42aa=['4NEhdRV','now','100431FhZZKe','22158vlhbtb','replace','6468504ngyAwj','31854frbsvu','6348480YfiAvk','toFixed','1212920TaJGZt','320GdneGo','704682jgeBsd','39gelLda'];a177_0x10c6=function(){return _0x4f42aa;};return a177_0x10c6();}function a177_0x8180(_0x564e20,_0x361ac3){_0x564e20=_0x564e20-0x17d;const _0x10c6f5=a177_0x10c6();let _0x8180bd=_0x10c6f5[_0x564e20];return _0x8180bd;}(function(_0x533187,_0x2fee67){const _0x4d97f5=a177_0x8180,_0x206ee3=_0x533187();while(!![]){try{const _0x3f363e=-parseInt(_0x4d97f5(0x189))/0x1+-parseInt(_0x4d97f5(0x181))/0x2*(parseInt(_0x4d97f5(0x17d))/0x3)+-parseInt(_0x4d97f5(0x17e))/0x4*(-parseInt(_0x4d97f5(0x187))/0x5)+-parseInt(_0x4d97f5(0x184))/0x6+parseInt(_0x4d97f5(0x183))/0x7+parseInt(_0x4d97f5(0x188))/0x8*(-parseInt(_0x4d97f5(0x180))/0x9)+parseInt(_0x4d97f5(0x185))/0xa;if(_0x3f363e===_0x2fee67)break;else _0x206ee3['push'](_0x206ee3['shift']());}catch(_0x477376){_0x206ee3['push'](_0x206ee3['shift']());}}}(a177_0x10c6,0x7a586));export function formatElapsed(_0x1fef5e){const _0x3242df=a177_0x8180,_0x49f63a=Date[_0x3242df(0x17f)]()-_0x1fef5e;if(_0x49f63a<0x3e8)return _0x49f63a+'ms';const _0x6b7a77=(_0x49f63a/0x3e8)[_0x3242df(0x186)](0x2),_0x5719d2=_0x6b7a77[_0x3242df(0x182)](/\.?0+$/u,'');return _0x5719d2+'s';}
1
+ function a177_0x1c18(_0x17c40b,_0x214cbc){_0x17c40b=_0x17c40b-0x1d3;const _0x26f5d5=a177_0x26f5();let _0x1c18a4=_0x26f5d5[_0x17c40b];return _0x1c18a4;}(function(_0x14b220,_0x3774b4){const _0x3a8e62=a177_0x1c18,_0x17f1e6=_0x14b220();while(!![]){try{const _0xa41496=parseInt(_0x3a8e62(0x1da))/0x1*(-parseInt(_0x3a8e62(0x1dd))/0x2)+parseInt(_0x3a8e62(0x1d3))/0x3+parseInt(_0x3a8e62(0x1db))/0x4+parseInt(_0x3a8e62(0x1d4))/0x5+-parseInt(_0x3a8e62(0x1dc))/0x6*(-parseInt(_0x3a8e62(0x1df))/0x7)+-parseInt(_0x3a8e62(0x1de))/0x8+parseInt(_0x3a8e62(0x1d8))/0x9*(parseInt(_0x3a8e62(0x1d5))/0xa);if(_0xa41496===_0x3774b4)break;else _0x17f1e6['push'](_0x17f1e6['shift']());}catch(_0xb1d275){_0x17f1e6['push'](_0x17f1e6['shift']());}}}(a177_0x26f5,0xd51bf));export function formatElapsed(_0x2b78ca){const _0x541a9d=a177_0x1c18,_0x413007=Date[_0x541a9d(0x1d6)]()-_0x2b78ca;if(_0x413007<0x3e8)return _0x413007+'ms';const _0x2255ac=(_0x413007/0x3e8)[_0x541a9d(0x1d7)](0x2),_0x44ef30=_0x2255ac[_0x541a9d(0x1d9)](/\.?0+$/u,'');return _0x44ef30+'s';}function a177_0x26f5(){const _0x1bc094=['448670yVTtfk','now','toFixed','9VBJguC','replace','1JyygJf','3767112VjFVLo','6GXVSzH','3244818POCPZf','9155984ejnMcb','6113345DBqkNX','1937541OHaCOT','5669875mlRDrx'];a177_0x26f5=function(){return _0x1bc094;};return a177_0x26f5();}
@@ -1 +1 @@
1
- (function(_0x45c54b,_0x3bec8c){const _0x15d394=a178_0x784c,_0x565084=_0x45c54b();while(!![]){try{const _0x2407b8=parseInt(_0x15d394(0x133))/0x1*(-parseInt(_0x15d394(0x137))/0x2)+-parseInt(_0x15d394(0x115))/0x3*(parseInt(_0x15d394(0x103))/0x4)+parseInt(_0x15d394(0x132))/0x5+-parseInt(_0x15d394(0x107))/0x6+-parseInt(_0x15d394(0x141))/0x7+parseInt(_0x15d394(0x123))/0x8+parseInt(_0x15d394(0x118))/0x9;if(_0x2407b8===_0x3bec8c)break;else _0x565084['push'](_0x565084['shift']());}catch(_0x202942){_0x565084['push'](_0x565084['shift']());}}}(a178_0x4c2a,0x66a99));import a178_0x4d9e73 from'path';import a178_0x41c4c2 from'fs';import a178_0x1b8f94 from'chalk';import a178_0x584634 from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../core/api-client.js';function a178_0x784c(_0x15100b,_0x2cac5f){_0x15100b=_0x15100b-0xfb;const _0x4c2a46=a178_0x4c2a();let _0x784c6d=_0x4c2a46[_0x15100b];return _0x784c6d;}import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{loadRawConfigLayers,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';import{validateProjectName}from'../../../commands/project/create/project-name.js';import{getSdkClientRoutingConfig}from'../../../constant/domain.js';import{generateSdkConfigFile}from'../../../api/generate-sdk-config-file.js';import{writeProjectDomainRoutingManifest}from'../../../config/project-domain-routing.js';import{CliErrors}from'../../../errors.js';function readDirectoryIdentity(_0x2f6d78){const _0x564432=a178_0x784c;try{const _0x4e0058=a178_0x41c4c2['lstatSync'](_0x2f6d78);if(!_0x4e0058[_0x564432(0x151)]())return null;return{'dev':_0x4e0058[_0x564432(0x13c)],'ino':_0x4e0058['ino']};}catch{return null;}}function isSameDirectory(_0x2cecb1,_0x1e7b29){const _0x4a7e2f=a178_0x784c;return!!_0x2cecb1&&!!_0x1e7b29&&_0x2cecb1[_0x4a7e2f(0x13c)]===_0x1e7b29[_0x4a7e2f(0x13c)]&&_0x2cecb1[_0x4a7e2f(0x14d)]===_0x1e7b29[_0x4a7e2f(0x14d)];}function commitCurrentDirectoryProject(_0x5e1b5e,_0x264abf,_0x428314){const _0x1b9b29=a178_0x784c;if(!isSameDirectory(readDirectoryIdentity(_0x5e1b5e),_0x428314))throw new Error('Current\x20directory\x20identity\x20changed\x20during\x20project\x20creation');const _0x22f360=a178_0x4d9e73[_0x1b9b29(0x13a)](_0x264abf),_0x3c15e4=a178_0x41c4c2[_0x1b9b29(0x154)](_0x5e1b5e);if(_0x3c15e4[_0x1b9b29(0x12b)]!==0x1||_0x3c15e4[0x0]!==_0x22f360)throw CliErrors[_0x1b9b29(0x139)]('The\x20current\x20directory\x20changed\x20during\x20project\x20creation.',_0x1b9b29(0x129));const _0x2062f6=a178_0x4d9e73[_0x1b9b29(0x15f)](_0x264abf,_0x1b9b29(0xfe)),_0x30ee5e=[];try{for(const _0x4fc545 of a178_0x41c4c2[_0x1b9b29(0x154)](_0x2062f6)){a178_0x41c4c2[_0x1b9b29(0x11d)](a178_0x4d9e73['join'](_0x2062f6,_0x4fc545),a178_0x4d9e73[_0x1b9b29(0x15f)](_0x5e1b5e,_0x4fc545)),_0x30ee5e[_0x1b9b29(0x16c)](_0x4fc545);}a178_0x41c4c2[_0x1b9b29(0x12c)](_0x264abf,{'recursive':!![],'force':!![]});}catch(_0x5a6099){for(const _0x2a39ac of _0x30ee5e[_0x1b9b29(0x15a)]()){const _0x483646=a178_0x4d9e73['join'](_0x5e1b5e,_0x2a39ac);if(!a178_0x41c4c2[_0x1b9b29(0x101)](_0x483646))continue;a178_0x41c4c2[_0x1b9b29(0x11d)](_0x483646,a178_0x4d9e73[_0x1b9b29(0x15f)](_0x2062f6,_0x2a39ac));}throw _0x5a6099;}}function a178_0x4c2a(){const _0x4020ca=['start','project','Configured\x20app\x20AppCode:\x20','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','existsSync','1.0.0','948180apTsRg','apps','package.json','constants','251142CLzgnR','Downloading\x20project\x20template','repeat','W_OK','\x20api\x20pull\x20--force\x20--yes','dirname','resolving','cookie','projectName','API\x20configuration\x20pulled:\x20','\x20run\x20start','cwd','green','Unable\x20to\x20verify\x20ownership\x20of\x20the\x20created\x20project\x20directory','6nctoCD','extracting','log','2171961CMHJxF','fail','bold','currentDir','production','renameSync','chdir','version','relative','\x20√\x20','message','4134840riGedc','CLI\x20version\x20check','nonInteractive','env','cyan','description','Remove\x20the\x20new\x20files\x20and\x20retry\x20from\x20an\x20empty\x20directory.','Remove\x20or\x20move\x20the\x20existing\x20files,\x20then\x20retry\x20with\x20--current-dir.','length','rmSync','copying','resolve','.rabetbase-create-','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27','warn','3335845HtEivH','849jQGoaY','needsUpgrade','Copying\x20local\x20template\x20source','*\x20Configuring\x20AppCode\x20for\x20project\x20','142obTgBa','Failed\x20to\x20update\x20package.json','validation','basename','gray','dev','√\x20package.json\x20updated:\x20name=','\x20already\x20exists','\x20\x202.\x20Pull\x20API\x20configuration:\x20','\x20&&\x20','3000354IsLQSg','\x20|\x20Default:\x20implicit\x20(single\x20app)','Resolving\x20project\x20template','*\x20Pulling\x20API\x20configuration...','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','Project\x20template\x20ready','string','downloading','accessSync','error','verifying','The\x20current\x20directory\x20must\x20be\x20empty.','ino','Verifying\x20project\x20template','Unable\x20to\x20prepare\x20the\x20current\x20directory\x20workspace','currentVersion','isDirectory','projectCode','utf8','readdirSync','readFileSync','\x20Generated\x20by\x20rabetbase\x20cli\x20','Starting\x20project\x20creation:\x20','√\x20Configuration\x20file\x20created,\x20Apps:\x20','toLocaleString','reverse','text','info','...','\x20|\x20AppCode:\x20','join','create','appCode','templateSource','Failed\x20to\x20clean\x20up\x20project\x20directory:\x20','stop','\x20dataset(s),\x20generated\x20','stableVersion','Failed\x20to\x20configure\x20app\x20AppCode','writeFileSync','minimumVersion','keys','mkdtempSync','push','Project\x20creation\x20failed:\x20','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','API\x20configuration\x20pull\x20failed','Format\x20code','√\x20Pulled\x20'];a178_0x4c2a=function(){return _0x4020ca;};return a178_0x4c2a();}export async function createApp(_0x319b21){const _0x1db22f=a178_0x784c,_0x484860=await checkCliVersion();(_0x484860['needsUpgrade']||_0x484860['belowMinimum'])&&(printCliUpgradeWarning(_0x484860),assertCliVersionSupported(_0x484860),logger[_0x1db22f(0x15c)]('create',_0x1db22f(0x124),{'currentVersion':_0x484860[_0x1db22f(0x150)],'stableVersion':_0x484860[_0x1db22f(0x166)],'minimumVersion':_0x484860[_0x1db22f(0x169)],'needsUpgrade':_0x484860[_0x1db22f(0x134)],'belowMinimum':_0x484860['belowMinimum']}));const _0x7c0d03=_0x319b21[_0x1db22f(0x11b)]?a178_0x4d9e73[_0x1db22f(0x13a)](process[_0x1db22f(0x112)]()):_0x319b21[_0x1db22f(0x152)];if(_0x7c0d03&&(_0x319b21[_0x1db22f(0x161)]||_0x319b21[_0x1db22f(0x125)]))await runCreate({'projectName':_0x7c0d03,'appCode':_0x319b21[_0x1db22f(0x161)],'env':_0x319b21[_0x1db22f(0x126)]},_0x319b21);else{if(_0x7c0d03){const _0x56f8ff=await selectSingleAppcode(_0x319b21['cookie']);await runCreate({'projectName':_0x7c0d03,'appCode':_0x56f8ff||undefined,'env':_0x319b21[_0x1db22f(0x126)]},_0x319b21);}else await guidedCreateProject(_0x294d9a=>runCreate(_0x294d9a,_0x319b21),_0x319b21[_0x1db22f(0x126)],_0x319b21['cookie']);}}async function runCreate(_0x1a8054,_0x377259){const _0x4c1c5c=a178_0x784c;_0x1a8054[_0x4c1c5c(0x10f)]=validateProjectName(_0x1a8054[_0x4c1c5c(0x10f)]);const _0x4cb328=_0x377259[_0x4c1c5c(0x11b)]?process[_0x4c1c5c(0x112)]():a178_0x4d9e73['resolve'](process[_0x4c1c5c(0x112)](),_0x1a8054['projectName']);if(_0x377259['currentDir']){if(a178_0x41c4c2[_0x4c1c5c(0x154)](_0x4cb328)[_0x4c1c5c(0x12b)]>0x0)throw CliErrors[_0x4c1c5c(0x139)](_0x4c1c5c(0x14c),_0x4c1c5c(0x12a));}else{if(a178_0x41c4c2[_0x4c1c5c(0x101)](_0x4cb328))throw new Error('Project\x20directory\x20'+_0x1a8054[_0x4c1c5c(0x10f)]+_0x4c1c5c(0x13e));}let _0x5bce5e=null;const _0x5b414f=_0x377259[_0x4c1c5c(0x11b)]?readDirectoryIdentity(_0x4cb328):null;let _0x20228c=null;try{a178_0x41c4c2[_0x4c1c5c(0x149)](a178_0x4d9e73[_0x4c1c5c(0x10c)](_0x4cb328),a178_0x41c4c2[_0x4c1c5c(0x106)][_0x4c1c5c(0x10a)]);}catch{throw new Error(_0x4c1c5c(0x16e));}logger[_0x4c1c5c(0x15c)](_0x4c1c5c(0x160),_0x4c1c5c(0x157)+_0x1a8054['projectName'],{'projectDir':_0x4cb328,'appCode':_0x1a8054[_0x4c1c5c(0x161)]}),console[_0x4c1c5c(0x117)](),console[_0x4c1c5c(0x117)](a178_0x1b8f94[_0x4c1c5c(0x113)]('\x20√\x20')+'Project\x20name:\x20'+a178_0x1b8f94[_0x4c1c5c(0x113)](_0x1a8054['projectName'])+(_0x1a8054[_0x4c1c5c(0x161)]?_0x4c1c5c(0x15e)+a178_0x1b8f94[_0x4c1c5c(0x127)](_0x1a8054['appCode']):''));try{let _0x1d3b91=_0x1a8054[_0x4c1c5c(0x10f)];_0x377259[_0x4c1c5c(0x11b)]&&(_0x20228c=a178_0x41c4c2[_0x4c1c5c(0x16b)](a178_0x4d9e73[_0x4c1c5c(0x15f)](_0x4cb328,_0x4c1c5c(0x12f))),_0x1d3b91=a178_0x4d9e73[_0x4c1c5c(0x120)](process[_0x4c1c5c(0x112)](),a178_0x4d9e73[_0x4c1c5c(0x15f)](_0x20228c,_0x4c1c5c(0xfe))));const _0x20d451=a178_0x4d9e73[_0x4c1c5c(0x12e)](process[_0x4c1c5c(0x112)](),_0x1d3b91);await runTask(_0x4c1c5c(0x143),_0x132038=>copyProjectTemplate(_0x1d3b91,_0x36ae1c=>_0x132038(projectTemplateStageLabel(_0x36ae1c)),_0x377259[_0x4c1c5c(0x162)]),_0x4c1c5c(0x146)),_0x5bce5e=_0x377259[_0x4c1c5c(0x11b)]?null:readDirectoryIdentity(_0x4cb328);if(!_0x377259[_0x4c1c5c(0x11b)]&&!_0x5bce5e)throw new Error(_0x4c1c5c(0x114));await updatePackageJsonName(_0x1d3b91,_0x1a8054[_0x4c1c5c(0x10f)]),await runTask('Install\x20dependencies',()=>installDependencies(_0x1d3b91)),await runTask(_0x4c1c5c(0xfb),()=>formatProjectCode(_0x1d3b91)),await configureAppCode(_0x1d3b91,_0x1a8054[_0x4c1c5c(0x10f)],_0x1a8054[_0x4c1c5c(0x161)]||'',_0x1a8054[_0x4c1c5c(0x126)]);let _0x581b23=![];if(_0x1a8054[_0x4c1c5c(0x161)]){console['log'](_0x4c1c5c(0x144));const _0x5a8ba1=process[_0x4c1c5c(0x112)]();try{process[_0x4c1c5c(0x11e)](_0x20d451);const _0x3f88fe=_0x1a8054[_0x4c1c5c(0x126)]||_0x4c1c5c(0x11c);initEnv(_0x3f88fe);const {configArray:_0xf64271}=await fetchModelList(_0x1a8054['appCode'],_0x377259[_0x4c1c5c(0x10e)]||''),_0x325aa1=DEFAULT_API_DIR,_0x53881b=await generateApiFile(_0xf64271,'',_0x1a8054[_0x4c1c5c(0x161)],!![],_0x3f88fe,_0x325aa1,undefined,getSdkClientRoutingConfig(),{'overwriteTypescript':!![]});console[_0x4c1c5c(0x117)](_0x4c1c5c(0xfc)+_0xf64271[_0x4c1c5c(0x12b)]+_0x4c1c5c(0x165)+_0x53881b['modelCount']+'\x20model(s)'),logger[_0x4c1c5c(0x15c)](_0x4c1c5c(0x160),_0x4c1c5c(0x110)+_0x1a8054[_0x4c1c5c(0x161)]);}catch(_0x19c384){_0x581b23=!![],console[_0x4c1c5c(0x117)]('!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20'+CLI_BIN_NAME+_0x4c1c5c(0x10b)),logger[_0x4c1c5c(0x131)](_0x4c1c5c(0x160),_0x4c1c5c(0x16f),{'error':_0x19c384 instanceof Error?_0x19c384[_0x4c1c5c(0x122)]:String(_0x19c384)});}finally{process['chdir'](_0x5a8ba1);}}if(_0x377259[_0x4c1c5c(0x11b)]){if(!_0x20228c||!_0x5b414f)throw new Error(_0x4c1c5c(0x14f));commitCurrentDirectoryProject(_0x4cb328,_0x20228c,_0x5b414f),_0x20228c=null;}try{logger['setLogPath'](_0x4cb328),logger['success'](_0x4c1c5c(0x160),'Project\x20created:\x20'+_0x1a8054[_0x4c1c5c(0x10f)]);}catch(_0x464aaa){console[_0x4c1c5c(0x131)]('!\x20Project\x20created,\x20but\x20local\x20logging\x20could\x20not\x20be\x20initialized:\x20'+(_0x464aaa instanceof Error?_0x464aaa[_0x4c1c5c(0x122)]:String(_0x464aaa)));}console['log'](),console['log'](a178_0x1b8f94['green']('─'[_0x4c1c5c(0x109)](0x3c))),console[_0x4c1c5c(0x117)](a178_0x1b8f94[_0x4c1c5c(0x127)][_0x4c1c5c(0x11a)]('🚀\x20Next\x20Steps:')),console[_0x4c1c5c(0x117)]();const _0x55a1d8=_0x377259['currentDir']?CLI_BIN_NAME+_0x4c1c5c(0x111):'cd\x20'+_0x1a8054[_0x4c1c5c(0x10f)]+_0x4c1c5c(0x140)+CLI_BIN_NAME+_0x4c1c5c(0x111);console[_0x4c1c5c(0x117)]('\x20\x201.\x20Start\x20project:\x20'+a178_0x1b8f94[_0x4c1c5c(0x127)][_0x4c1c5c(0x11a)](_0x55a1d8)),_0x581b23&&console['log'](_0x4c1c5c(0x13f)+a178_0x1b8f94[_0x4c1c5c(0x127)][_0x4c1c5c(0x11a)](CLI_BIN_NAME+_0x4c1c5c(0x10b))),console['log'](a178_0x1b8f94['green']('─'['repeat'](0x3c)));}catch(_0x642267){logger['error'](_0x4c1c5c(0x160),_0x4c1c5c(0x16d)+_0x1a8054[_0x4c1c5c(0x10f)],{'error':_0x642267 instanceof Error?_0x642267[_0x4c1c5c(0x122)]:String(_0x642267)});try{const _0xc3d16e=readDirectoryIdentity(_0x4cb328);if(_0x377259['currentDir']&&_0x20228c)a178_0x41c4c2[_0x4c1c5c(0x12c)](_0x20228c,{'recursive':!![],'force':!![]});else{if(_0x5bce5e&&_0xc3d16e?.[_0x4c1c5c(0x13c)]===_0x5bce5e[_0x4c1c5c(0x13c)]&&_0xc3d16e[_0x4c1c5c(0x14d)]===_0x5bce5e[_0x4c1c5c(0x14d)])console[_0x4c1c5c(0x117)](_0x4c1c5c(0x100)+_0x4cb328),a178_0x41c4c2[_0x4c1c5c(0x12c)](_0x4cb328,{'recursive':!![],'force':!![]});else _0xc3d16e&&logger[_0x4c1c5c(0x131)](_0x4c1c5c(0x160),'Skip\x20cleanup:\x20project\x20directory\x20ownership\x20changed:\x20'+_0x4cb328);}}catch{logger[_0x4c1c5c(0x131)](_0x4c1c5c(0x160),_0x4c1c5c(0x163)+_0x4cb328);}throw _0x642267;}}async function runTask(_0x1d88de,_0xf73d5b,_0x1c0ad3=_0x1d88de){const _0x5b21e7=a178_0x784c,_0x65682=a178_0x584634(_0x1d88de+_0x5b21e7(0x15d))[_0x5b21e7(0xfd)]();try{const _0x3ff850=await _0xf73d5b(_0x4615d3=>{const _0x490c74=_0x5b21e7;_0x65682[_0x490c74(0x15b)]=_0x4615d3+'...';});_0x65682[_0x5b21e7(0x164)](),console[_0x5b21e7(0x117)](''+a178_0x1b8f94['green'](_0x5b21e7(0x121))+_0x1c0ad3+'\x20'+a178_0x1b8f94[_0x5b21e7(0x13b)]('['+_0x3ff850+']'));}catch(_0x24d340){_0x65682[_0x5b21e7(0x119)](_0x1d88de);throw _0x24d340;}}function projectTemplateStageLabel(_0x5481ce){const _0x1a6b19=a178_0x784c;switch(_0x5481ce){case _0x1a6b19(0x10d):return _0x1a6b19(0x143);case _0x1a6b19(0x148):return _0x1a6b19(0x108);case _0x1a6b19(0x14b):return _0x1a6b19(0x14e);case _0x1a6b19(0x116):return'Extracting\x20project\x20template';case _0x1a6b19(0x12d):return _0x1a6b19(0x135);}}async function updatePackageJsonName(_0x45df0d,_0xce977c){const _0x56e032=a178_0x784c,_0x2e07bf=a178_0x4d9e73['resolve'](process['cwd'](),_0x45df0d),_0x4957bc=a178_0x4d9e73[_0x56e032(0x15f)](_0x2e07bf,_0x56e032(0x105));try{console[_0x56e032(0x117)]('*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields');const _0x4ee6d3=getRabetbaseCliPackageRoot(),_0x24b79b=a178_0x4d9e73[_0x56e032(0x15f)](_0x4ee6d3,_0x56e032(0x105));let _0x24e19c=_0x56e032(0x102);try{const _0x3c7466=JSON['parse'](a178_0x41c4c2[_0x56e032(0x155)](_0x24b79b,_0x56e032(0x153)));_0x24e19c=_0x3c7466[_0x56e032(0x11f)]||_0x56e032(0x102);}catch{}const _0x14abfa=a178_0x41c4c2['readFileSync'](_0x4957bc,_0x56e032(0x153)),_0x1de806=JSON['parse'](_0x14abfa);_0x1de806['name']=_0xce977c,_0x1de806[_0x56e032(0x128)]=_0xce977c+_0x56e032(0x156)+_0x24e19c,a178_0x41c4c2[_0x56e032(0x168)](_0x4957bc,JSON['stringify'](_0x1de806,null,0x2)+'\x0a','utf8'),console[_0x56e032(0x117)](_0x56e032(0x13d)+_0xce977c),logger[_0x56e032(0x15c)](_0x56e032(0x160),'Updating\x20package.json\x20name');}catch(_0x26b2dd){logger[_0x56e032(0x14a)](_0x56e032(0x160),_0x56e032(0x138));throw _0x26b2dd;}}async function configureAppCode(_0x329d1a,_0x3cdba3,_0x24ff8b,_0x31df3b){const _0xe5b5f3=a178_0x784c,_0x5cb960=a178_0x4d9e73[_0xe5b5f3(0x12e)](process[_0xe5b5f3(0x112)](),_0x329d1a),_0x5affec=a178_0x4d9e73[_0xe5b5f3(0x15f)](_0x5cb960,NEW_CONFIG_NAME);try{_0x24ff8b?console[_0xe5b5f3(0x117)](_0xe5b5f3(0x136)+_0x3cdba3+':\x20'+_0x24ff8b):console[_0xe5b5f3(0x117)](_0xe5b5f3(0x145)+_0x3cdba3);const _0x4a577c=getRabetbaseCliPackageRoot(),_0x5a5bd9=a178_0x4d9e73[_0xe5b5f3(0x15f)](_0x4a577c,'package.json');let _0x4bce95=_0xe5b5f3(0x102);try{const _0x1e4a09=JSON['parse'](a178_0x41c4c2['readFileSync'](_0x5a5bd9,'utf8'));_0x4bce95=_0x1e4a09[_0xe5b5f3(0x11f)]||_0xe5b5f3(0x102);}catch{}const {globalConfig:_0x1de0d5}=loadRawConfigLayers(),_0x659043=typeof _0x1de0d5[_0xe5b5f3(0x126)]===_0xe5b5f3(0x147)?_0x1de0d5[_0xe5b5f3(0x126)]:undefined,_0x174352={};for(const _0x19861e of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x1de0d5[_0x19861e]!=null)_0x174352[_0x19861e]=_0x1de0d5[_0x19861e];}const _0x479290=buildCanonicalProjectConfig(_0x174352,{'appCodes':_0x24ff8b?[_0x24ff8b]:[],'env':_0x31df3b||_0x659043||'production','metadata':{'createdAt':new Date()[_0xe5b5f3(0x159)](),'version':_0x4bce95}});writeConfigFile(_0x5affec,_0x479290),await generateSdkConfigFile(a178_0x4d9e73['join'](_0x5cb960,DEFAULT_API_DIR),getSdkClientRoutingConfig()),writeProjectDomainRoutingManifest(_0x5cb960),_0x24ff8b?console['log'](_0xe5b5f3(0x158)+Object[_0xe5b5f3(0x16a)](_0x479290[_0xe5b5f3(0x104)]||{})[_0xe5b5f3(0x15f)](',\x20')+_0xe5b5f3(0x142)):console[_0xe5b5f3(0x117)](_0xe5b5f3(0x130)+CLI_BIN_NAME+'\x20config\x20set\x20appcode\x20<app-code>\x27'),logger[_0xe5b5f3(0x15c)]('create',_0xe5b5f3(0xff)+_0x24ff8b);}catch(_0x3148d7){logger[_0xe5b5f3(0x14a)](_0xe5b5f3(0x160),_0xe5b5f3(0x167));throw _0x3148d7;}}
1
+ function a178_0x2e9e(){const _0x288358=['basename','1145608PdyIBf','fail','writeFileSync','reverse','√\x20package.json\x20updated:\x20name=','dev','W_OK','CLI\x20version\x20check','info','√\x20Pulled\x20','1208430wwUvih','belowMinimum','join','start','The\x20current\x20directory\x20must\x20be\x20empty.','warn','keys','minimumVersion','relative','24652RUfKXU','cd\x20','7507320eoMjvT','renameSync','version','description','env','√\x20Configuration\x20file\x20created,\x20Apps:\x20','...','gray','\x20√\x20','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','utf8','stableVersion','bold','Install\x20dependencies','Project\x20creation\x20failed:\x20','Remove\x20or\x20move\x20the\x20existing\x20files,\x20then\x20retry\x20with\x20--current-dir.','green','length','verifying','115otBPVt','!\x20Project\x20created,\x20but\x20local\x20logging\x20could\x20not\x20be\x20initialized:\x20','message','Verifying\x20project\x20template','projectCode','projectName','repeat','42QNiNGF','cyan','rmSync','3572hLuNRG','create','isDirectory','*\x20Configuring\x20AppCode\x20for\x20project\x20','1.0.0','dirname','package.json','stop','\x20&&\x20','\x20\x201.\x20Start\x20project:\x20','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','Unable\x20to\x20verify\x20ownership\x20of\x20the\x20created\x20project\x20directory','needsUpgrade','Failed\x20to\x20configure\x20app\x20AppCode','lstatSync','*\x20Pulling\x20API\x20configuration...','readdirSync','toLocaleString','mkdtempSync','validation','resolving','Project\x20name:\x20','!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20','The\x20current\x20directory\x20changed\x20during\x20project\x20creation.','constants','Extracting\x20project\x20template','production','templateSource','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','modelCount','Configured\x20app\x20AppCode:\x20','Resolving\x20project\x20template','success','extracting','chdir','23027334YUNnyh','Unable\x20to\x20prepare\x20the\x20current\x20directory\x20workspace','160nJdAxa','API\x20configuration\x20pull\x20failed','Updating\x20package.json\x20name','API\x20configuration\x20pulled:\x20','cwd','project','Current\x20directory\x20identity\x20changed\x20during\x20project\x20creation','\x20config\x20set\x20appcode\x20<app-code>\x27','appCode','Failed\x20to\x20clean\x20up\x20project\x20directory:\x20','\x20run\x20start','log','\x20api\x20pull\x20--force\x20--yes','Project\x20created:\x20','Skip\x20cleanup:\x20project\x20directory\x20ownership\x20changed:\x20','Project\x20template\x20ready','nonInteractive','existsSync','apps','accessSync','Remove\x20the\x20new\x20files\x20and\x20retry\x20from\x20an\x20empty\x20directory.','\x20model(s)','currentVersion','Project\x20directory\x20','ino','\x20already\x20exists','\x20\x202.\x20Pull\x20API\x20configuration:\x20','downloading','parse','cookie','36bdPVlC','\x20|\x20AppCode:\x20','135114UuNchm','resolve','\x20Generated\x20by\x20rabetbase\x20cli\x20','currentDir','push','stringify','Failed\x20to\x20update\x20package.json','readFileSync','error','12paSpBy'];a178_0x2e9e=function(){return _0x288358;};return a178_0x2e9e();}(function(_0x3ba786,_0x1e15b1){const _0x373a3c=a178_0x6994,_0x2d9bb6=_0x3ba786();while(!![]){try{const _0x68c031=parseInt(_0x373a3c(0x144))/0x1*(parseInt(_0x373a3c(0x169))/0x2)+-parseInt(_0x373a3c(0x187))/0x3*(-parseInt(_0x373a3c(0x1a7))/0x4)+-parseInt(_0x373a3c(0x1bc))/0x5*(-parseInt(_0x373a3c(0x189))/0x6)+parseInt(_0x373a3c(0x141))/0x7*(parseInt(_0x373a3c(0x194))/0x8)+parseInt(_0x373a3c(0x19e))/0x9+parseInt(_0x373a3c(0x1a9))/0xa+parseInt(_0x373a3c(0x167))/0xb*(-parseInt(_0x373a3c(0x192))/0xc);if(_0x68c031===_0x1e15b1)break;else _0x2d9bb6['push'](_0x2d9bb6['shift']());}catch(_0x5d6226){_0x2d9bb6['push'](_0x2d9bb6['shift']());}}}(a178_0x2e9e,0x81053));import a178_0x5308e7 from'path';import a178_0x569b84 from'fs';import a178_0x2d6ee6 from'chalk';import a178_0x5c2aa3 from'ora';import{guidedCreateProject}from'../../../commands/project/create/enhanced-guided-create.js';import{fetchModelList}from'../../../core/api-client.js';import{generateApiFile}from'../../../api/generate-api-file.js';import{initEnv}from'../../../constant/env.js';import{CLI_BIN_NAME}from'../../../constant/cli.js';import{DEFAULT_API_DIR}from'../../../constant/paths.js';import{loadRawConfigLayers,writeConfigFile,NEW_CONFIG_NAME}from'../../../context.js';import{copyProjectTemplate}from'../../../commands/project/create/use-copy-project-template.js';import{installDependencies}from'../../../commands/project/create/use-install-dependencies.js';import{formatProjectCode}from'../../../commands/project/create/use-format-code.js';function a178_0x6994(_0x4c3179,_0x27124f){_0x4c3179=_0x4c3179-0x13e;const _0x2e9e77=a178_0x2e9e();let _0x69949b=_0x2e9e77[_0x4c3179];return _0x69949b;}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';import{validateProjectName}from'../../../commands/project/create/project-name.js';import{getSdkClientRoutingConfig}from'../../../constant/domain.js';import{generateSdkConfigFile}from'../../../api/generate-sdk-config-file.js';import{writeProjectDomainRoutingManifest}from'../../../config/project-domain-routing.js';import{CliErrors}from'../../../errors.js';function readDirectoryIdentity(_0x4654f3){const _0x551a98=a178_0x6994;try{const _0x5b58bf=a178_0x569b84[_0x551a98(0x152)](_0x4654f3);if(!_0x5b58bf[_0x551a98(0x146)]())return null;return{'dev':_0x5b58bf['dev'],'ino':_0x5b58bf['ino']};}catch{return null;}}function isSameDirectory(_0x535724,_0x328520){const _0x520b5e=a178_0x6994;return!!_0x535724&&!!_0x328520&&_0x535724[_0x520b5e(0x199)]===_0x328520[_0x520b5e(0x199)]&&_0x535724[_0x520b5e(0x181)]===_0x328520['ino'];}function commitCurrentDirectoryProject(_0x31688c,_0xc9fbae,_0x38adf0){const _0x147d9b=a178_0x6994;if(!isSameDirectory(readDirectoryIdentity(_0x31688c),_0x38adf0))throw new Error(_0x147d9b(0x16f));const _0x58366c=a178_0x5308e7['basename'](_0xc9fbae),_0x42968e=a178_0x569b84[_0x147d9b(0x154)](_0x31688c);if(_0x42968e[_0x147d9b(0x1ba)]!==0x1||_0x42968e[0x0]!==_0x58366c)throw CliErrors['validation'](_0x147d9b(0x15b),_0x147d9b(0x17d));const _0x42c890=a178_0x5308e7[_0x147d9b(0x1a0)](_0xc9fbae,'project'),_0x10d863=[];try{for(const _0x9193c1 of a178_0x569b84[_0x147d9b(0x154)](_0x42c890)){a178_0x569b84[_0x147d9b(0x1aa)](a178_0x5308e7['join'](_0x42c890,_0x9193c1),a178_0x5308e7[_0x147d9b(0x1a0)](_0x31688c,_0x9193c1)),_0x10d863[_0x147d9b(0x18d)](_0x9193c1);}a178_0x569b84[_0x147d9b(0x143)](_0xc9fbae,{'recursive':!![],'force':!![]});}catch(_0x589682){for(const _0x3f297a of _0x10d863[_0x147d9b(0x197)]()){const _0x449549=a178_0x5308e7[_0x147d9b(0x1a0)](_0x31688c,_0x3f297a);if(!a178_0x569b84[_0x147d9b(0x17a)](_0x449549))continue;a178_0x569b84[_0x147d9b(0x1aa)](_0x449549,a178_0x5308e7[_0x147d9b(0x1a0)](_0x42c890,_0x3f297a));}throw _0x589682;}}export async function createApp(_0x42c98b){const _0x546ccd=a178_0x6994,_0x4bd5ee=await checkCliVersion();(_0x4bd5ee[_0x546ccd(0x150)]||_0x4bd5ee[_0x546ccd(0x19f)])&&(printCliUpgradeWarning(_0x4bd5ee),assertCliVersionSupported(_0x4bd5ee),logger[_0x546ccd(0x19c)](_0x546ccd(0x145),_0x546ccd(0x19b),{'currentVersion':_0x4bd5ee[_0x546ccd(0x17f)],'stableVersion':_0x4bd5ee[_0x546ccd(0x1b4)],'minimumVersion':_0x4bd5ee[_0x546ccd(0x1a5)],'needsUpgrade':_0x4bd5ee[_0x546ccd(0x150)],'belowMinimum':_0x4bd5ee[_0x546ccd(0x19f)]}));const _0x4b0df7=_0x42c98b['currentDir']?a178_0x5308e7[_0x546ccd(0x193)](process[_0x546ccd(0x16d)]()):_0x42c98b[_0x546ccd(0x13e)];if(_0x4b0df7&&(_0x42c98b['appCode']||_0x42c98b[_0x546ccd(0x179)]))await runCreate({'projectName':_0x4b0df7,'appCode':_0x42c98b[_0x546ccd(0x171)],'env':_0x42c98b[_0x546ccd(0x1ad)]},_0x42c98b);else{if(_0x4b0df7){const _0x1b6faa=await selectSingleAppcode(_0x42c98b[_0x546ccd(0x186)]);await runCreate({'projectName':_0x4b0df7,'appCode':_0x1b6faa||undefined,'env':_0x42c98b[_0x546ccd(0x1ad)]},_0x42c98b);}else await guidedCreateProject(_0x323405=>runCreate(_0x323405,_0x42c98b),_0x42c98b[_0x546ccd(0x1ad)],_0x42c98b['cookie']);}}async function runCreate(_0xdc526c,_0x26a179){const _0x40abff=a178_0x6994;_0xdc526c[_0x40abff(0x13f)]=validateProjectName(_0xdc526c['projectName']);const _0x2ecbca=_0x26a179[_0x40abff(0x18c)]?process[_0x40abff(0x16d)]():a178_0x5308e7[_0x40abff(0x18a)](process[_0x40abff(0x16d)](),_0xdc526c[_0x40abff(0x13f)]);if(_0x26a179[_0x40abff(0x18c)]){if(a178_0x569b84[_0x40abff(0x154)](_0x2ecbca)[_0x40abff(0x1ba)]>0x0)throw CliErrors[_0x40abff(0x157)](_0x40abff(0x1a2),_0x40abff(0x1b8));}else{if(a178_0x569b84[_0x40abff(0x17a)](_0x2ecbca))throw new Error(_0x40abff(0x180)+_0xdc526c['projectName']+_0x40abff(0x182));}let _0x55b8af=null;const _0x59e9da=_0x26a179[_0x40abff(0x18c)]?readDirectoryIdentity(_0x2ecbca):null;let _0x44aefc=null;try{a178_0x569b84[_0x40abff(0x17c)](a178_0x5308e7[_0x40abff(0x149)](_0x2ecbca),a178_0x569b84[_0x40abff(0x15c)][_0x40abff(0x19a)]);}catch{throw new Error(_0x40abff(0x160));}logger['info'](_0x40abff(0x145),'Starting\x20project\x20creation:\x20'+_0xdc526c[_0x40abff(0x13f)],{'projectDir':_0x2ecbca,'appCode':_0xdc526c[_0x40abff(0x171)]}),console[_0x40abff(0x174)](),console[_0x40abff(0x174)](a178_0x2d6ee6['green'](_0x40abff(0x1b1))+_0x40abff(0x159)+a178_0x2d6ee6[_0x40abff(0x1b9)](_0xdc526c[_0x40abff(0x13f)])+(_0xdc526c[_0x40abff(0x171)]?_0x40abff(0x188)+a178_0x2d6ee6[_0x40abff(0x142)](_0xdc526c[_0x40abff(0x171)]):''));try{let _0x4dd1d8=_0xdc526c[_0x40abff(0x13f)];_0x26a179[_0x40abff(0x18c)]&&(_0x44aefc=a178_0x569b84[_0x40abff(0x156)](a178_0x5308e7[_0x40abff(0x1a0)](_0x2ecbca,'.rabetbase-create-')),_0x4dd1d8=a178_0x5308e7[_0x40abff(0x1a6)](process[_0x40abff(0x16d)](),a178_0x5308e7[_0x40abff(0x1a0)](_0x44aefc,_0x40abff(0x16e))));const _0x2abb4f=a178_0x5308e7['resolve'](process['cwd'](),_0x4dd1d8);await runTask(_0x40abff(0x163),_0x5abfad=>copyProjectTemplate(_0x4dd1d8,_0x226811=>_0x5abfad(projectTemplateStageLabel(_0x226811)),_0x26a179[_0x40abff(0x15f)]),_0x40abff(0x178)),_0x55b8af=_0x26a179[_0x40abff(0x18c)]?null:readDirectoryIdentity(_0x2ecbca);if(!_0x26a179['currentDir']&&!_0x55b8af)throw new Error(_0x40abff(0x14f));await updatePackageJsonName(_0x4dd1d8,_0xdc526c[_0x40abff(0x13f)]),await runTask(_0x40abff(0x1b6),()=>installDependencies(_0x4dd1d8)),await runTask('Format\x20code',()=>formatProjectCode(_0x4dd1d8)),await configureAppCode(_0x4dd1d8,_0xdc526c[_0x40abff(0x13f)],_0xdc526c[_0x40abff(0x171)]||'',_0xdc526c[_0x40abff(0x1ad)]);let _0x13c108=![];if(_0xdc526c[_0x40abff(0x171)]){console[_0x40abff(0x174)](_0x40abff(0x153));const _0x5f3657=process['cwd']();try{process[_0x40abff(0x166)](_0x2abb4f);const _0x783846=_0xdc526c[_0x40abff(0x1ad)]||_0x40abff(0x15e);initEnv(_0x783846);const {configArray:_0x2d113c}=await fetchModelList(_0xdc526c[_0x40abff(0x171)],_0x26a179[_0x40abff(0x186)]||''),_0x1c81f7=DEFAULT_API_DIR,_0x33176e=await generateApiFile(_0x2d113c,'',_0xdc526c[_0x40abff(0x171)],!![],_0x783846,_0x1c81f7,undefined,getSdkClientRoutingConfig(),{'overwriteTypescript':!![]});console['log'](_0x40abff(0x19d)+_0x2d113c[_0x40abff(0x1ba)]+'\x20dataset(s),\x20generated\x20'+_0x33176e[_0x40abff(0x161)]+_0x40abff(0x17e)),logger[_0x40abff(0x19c)](_0x40abff(0x145),_0x40abff(0x16c)+_0xdc526c[_0x40abff(0x171)]);}catch(_0x59a849){_0x13c108=!![],console[_0x40abff(0x174)](_0x40abff(0x15a)+CLI_BIN_NAME+_0x40abff(0x175)),logger[_0x40abff(0x1a3)]('create',_0x40abff(0x16a),{'error':_0x59a849 instanceof Error?_0x59a849[_0x40abff(0x1be)]:String(_0x59a849)});}finally{process['chdir'](_0x5f3657);}}if(_0x26a179['currentDir']){if(!_0x44aefc||!_0x59e9da)throw new Error(_0x40abff(0x168));commitCurrentDirectoryProject(_0x2ecbca,_0x44aefc,_0x59e9da),_0x44aefc=null;}try{logger['setLogPath'](_0x2ecbca),logger[_0x40abff(0x164)](_0x40abff(0x145),_0x40abff(0x176)+_0xdc526c[_0x40abff(0x13f)]);}catch(_0x46dcf1){console[_0x40abff(0x1a3)](_0x40abff(0x1bd)+(_0x46dcf1 instanceof Error?_0x46dcf1['message']:String(_0x46dcf1)));}console[_0x40abff(0x174)](),console[_0x40abff(0x174)](a178_0x2d6ee6[_0x40abff(0x1b9)]('─'[_0x40abff(0x140)](0x3c))),console[_0x40abff(0x174)](a178_0x2d6ee6[_0x40abff(0x142)][_0x40abff(0x1b5)]('🚀\x20Next\x20Steps:')),console[_0x40abff(0x174)]();const _0x6567e6=_0x26a179[_0x40abff(0x18c)]?CLI_BIN_NAME+_0x40abff(0x173):_0x40abff(0x1a8)+_0xdc526c[_0x40abff(0x13f)]+_0x40abff(0x14c)+CLI_BIN_NAME+_0x40abff(0x173);console[_0x40abff(0x174)](_0x40abff(0x14d)+a178_0x2d6ee6[_0x40abff(0x142)][_0x40abff(0x1b5)](_0x6567e6)),_0x13c108&&console[_0x40abff(0x174)](_0x40abff(0x183)+a178_0x2d6ee6['cyan'][_0x40abff(0x1b5)](CLI_BIN_NAME+'\x20api\x20pull\x20--force\x20--yes')),console['log'](a178_0x2d6ee6[_0x40abff(0x1b9)]('─'[_0x40abff(0x140)](0x3c)));}catch(_0x139550){logger[_0x40abff(0x191)](_0x40abff(0x145),_0x40abff(0x1b7)+_0xdc526c[_0x40abff(0x13f)],{'error':_0x139550 instanceof Error?_0x139550[_0x40abff(0x1be)]:String(_0x139550)});try{const _0x5d95f7=readDirectoryIdentity(_0x2ecbca);if(_0x26a179['currentDir']&&_0x44aefc)a178_0x569b84[_0x40abff(0x143)](_0x44aefc,{'recursive':!![],'force':!![]});else{if(_0x55b8af&&_0x5d95f7?.[_0x40abff(0x199)]===_0x55b8af[_0x40abff(0x199)]&&_0x5d95f7[_0x40abff(0x181)]===_0x55b8af[_0x40abff(0x181)])console[_0x40abff(0x174)]('*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20'+_0x2ecbca),a178_0x569b84[_0x40abff(0x143)](_0x2ecbca,{'recursive':!![],'force':!![]});else _0x5d95f7&&logger[_0x40abff(0x1a3)](_0x40abff(0x145),_0x40abff(0x177)+_0x2ecbca);}}catch{logger[_0x40abff(0x1a3)](_0x40abff(0x145),_0x40abff(0x172)+_0x2ecbca);}throw _0x139550;}}async function runTask(_0x119018,_0x13d419,_0x9166a9=_0x119018){const _0x31e269=a178_0x6994,_0xe1b206=a178_0x5c2aa3(_0x119018+_0x31e269(0x1af))[_0x31e269(0x1a1)]();try{const _0x1d72d0=await _0x13d419(_0x2a4106=>{const _0x9fec5f=_0x31e269;_0xe1b206['text']=_0x2a4106+_0x9fec5f(0x1af);});_0xe1b206[_0x31e269(0x14b)](),console[_0x31e269(0x174)](''+a178_0x2d6ee6[_0x31e269(0x1b9)]('\x20√\x20')+_0x9166a9+'\x20'+a178_0x2d6ee6[_0x31e269(0x1b0)]('['+_0x1d72d0+']'));}catch(_0x29604b){_0xe1b206[_0x31e269(0x195)](_0x119018);throw _0x29604b;}}function projectTemplateStageLabel(_0xae6621){const _0x1b75be=a178_0x6994;switch(_0xae6621){case _0x1b75be(0x158):return _0x1b75be(0x163);case _0x1b75be(0x184):return'Downloading\x20project\x20template';case _0x1b75be(0x1bb):return _0x1b75be(0x1bf);case _0x1b75be(0x165):return _0x1b75be(0x15d);case'copying':return'Copying\x20local\x20template\x20source';}}async function updatePackageJsonName(_0x303443,_0x4093d0){const _0x52186c=a178_0x6994,_0x54bf50=a178_0x5308e7[_0x52186c(0x18a)](process[_0x52186c(0x16d)](),_0x303443),_0x38d65d=a178_0x5308e7[_0x52186c(0x1a0)](_0x54bf50,_0x52186c(0x14a));try{console[_0x52186c(0x174)](_0x52186c(0x14e));const _0x337ee8=getRabetbaseCliPackageRoot(),_0x26e28a=a178_0x5308e7['join'](_0x337ee8,'package.json');let _0x3f4395=_0x52186c(0x148);try{const _0xa330a0=JSON[_0x52186c(0x185)](a178_0x569b84[_0x52186c(0x190)](_0x26e28a,_0x52186c(0x1b3)));_0x3f4395=_0xa330a0[_0x52186c(0x1ab)]||_0x52186c(0x148);}catch{}const _0x58c500=a178_0x569b84[_0x52186c(0x190)](_0x38d65d,'utf8'),_0x209553=JSON['parse'](_0x58c500);_0x209553['name']=_0x4093d0,_0x209553[_0x52186c(0x1ac)]=_0x4093d0+_0x52186c(0x18b)+_0x3f4395,a178_0x569b84[_0x52186c(0x196)](_0x38d65d,JSON[_0x52186c(0x18e)](_0x209553,null,0x2)+'\x0a',_0x52186c(0x1b3)),console[_0x52186c(0x174)](_0x52186c(0x198)+_0x4093d0),logger['info'](_0x52186c(0x145),_0x52186c(0x16b));}catch(_0x3fcc08){logger[_0x52186c(0x191)](_0x52186c(0x145),_0x52186c(0x18f));throw _0x3fcc08;}}async function configureAppCode(_0x127977,_0x12489f,_0x1527fe,_0x2df9c8){const _0x2abf84=a178_0x6994,_0x240c9c=a178_0x5308e7[_0x2abf84(0x18a)](process[_0x2abf84(0x16d)](),_0x127977),_0x25d0b2=a178_0x5308e7[_0x2abf84(0x1a0)](_0x240c9c,NEW_CONFIG_NAME);try{_0x1527fe?console[_0x2abf84(0x174)](_0x2abf84(0x147)+_0x12489f+':\x20'+_0x1527fe):console['log'](_0x2abf84(0x1b2)+_0x12489f);const _0x5790ee=getRabetbaseCliPackageRoot(),_0x4f4e6e=a178_0x5308e7[_0x2abf84(0x1a0)](_0x5790ee,'package.json');let _0x556f6d='1.0.0';try{const _0x3bcedc=JSON[_0x2abf84(0x185)](a178_0x569b84['readFileSync'](_0x4f4e6e,'utf8'));_0x556f6d=_0x3bcedc[_0x2abf84(0x1ab)]||_0x2abf84(0x148);}catch{}const {globalConfig:_0x424b6d}=loadRawConfigLayers(),_0x1a4729=typeof _0x424b6d['env']==='string'?_0x424b6d['env']:undefined,_0x5ee7b6={};for(const _0x5ea567 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x424b6d[_0x5ea567]!=null)_0x5ee7b6[_0x5ea567]=_0x424b6d[_0x5ea567];}const _0x52a2d7=buildCanonicalProjectConfig(_0x5ee7b6,{'appCodes':_0x1527fe?[_0x1527fe]:[],'env':_0x2df9c8||_0x1a4729||_0x2abf84(0x15e),'metadata':{'createdAt':new Date()[_0x2abf84(0x155)](),'version':_0x556f6d}});writeConfigFile(_0x25d0b2,_0x52a2d7),await generateSdkConfigFile(a178_0x5308e7['join'](_0x240c9c,DEFAULT_API_DIR),getSdkClientRoutingConfig()),writeProjectDomainRoutingManifest(_0x240c9c),_0x1527fe?console['log'](_0x2abf84(0x1ae)+Object[_0x2abf84(0x1a4)](_0x52a2d7[_0x2abf84(0x17b)]||{})['join'](',\x20')+'\x20|\x20Default:\x20implicit\x20(single\x20app)'):console[_0x2abf84(0x174)]('√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27'+CLI_BIN_NAME+_0x2abf84(0x170)),logger[_0x2abf84(0x19c)](_0x2abf84(0x145),_0x2abf84(0x162)+_0x1527fe);}catch(_0x4109bf){logger[_0x2abf84(0x191)]('create',_0x2abf84(0x151));throw _0x4109bf;}}
@@ -1 +1 @@
1
- const a179_0x6d88d0=a179_0x2fe6;(function(_0x103e06,_0x5b7fb8){const _0x45f3c1=a179_0x2fe6,_0x3e33f3=_0x103e06();while(!![]){try{const _0x54fc37=-parseInt(_0x45f3c1(0x1c4))/0x1+-parseInt(_0x45f3c1(0x200))/0x2*(parseInt(_0x45f3c1(0x1e3))/0x3)+parseInt(_0x45f3c1(0x1f8))/0x4+parseInt(_0x45f3c1(0x1bd))/0x5+parseInt(_0x45f3c1(0x1df))/0x6*(-parseInt(_0x45f3c1(0x1cc))/0x7)+parseInt(_0x45f3c1(0x1c2))/0x8*(parseInt(_0x45f3c1(0x1d3))/0x9)+parseInt(_0x45f3c1(0x1b6))/0xa;if(_0x54fc37===_0x5b7fb8)break;else _0x3e33f3['push'](_0x3e33f3['shift']());}catch(_0x56407a){_0x3e33f3['push'](_0x3e33f3['shift']());}}}(a179_0x2c6d,0x64106));import{createHash}from'node:crypto';import a179_0x27de59 from'node:fs/promises';import a179_0x4c4911 from'node:path';import{PROJECT_TEMPLATE_ASSET_BASE_URL}from'../../../constant/cdn.js';import{extractProjectTemplateArchive}from'../../../commands/project/create/project-template-archive.js';function a179_0x2c6d(){const _0x3d298b=['240060taXLUK','isFinite','application/zip','isDirectory','utf8','number','readdir','template.zip','7qADTCi','dev','isFile','Local\x20template\x20source\x20and\x20project\x20output\x20must\x20not\x20overlap.','sub-app-react-demo','Invalid\x20local\x20template\x20source:\x20','from','23211EvcQav','length','copyFile','sha256:','trim','extracting','isSafeInteger','Project\x20directory\x20already\x20exists:\x20','parse','origin','body','version','4337994plkNSK','message','lstat','downloading','711999MOBqkO','readFile','headers','content-length','project','verifying','node_modules','package.json','push','join',',\x20received\x20','.codegraph','CDN\x20config\x20contains\x20an\x20invalid\x20descriptor\x20for\x20\x22','isAbsolute','mkdtemp','.lovrabet.json','Pass\x20a\x20directory\x20containing\x20the\x20template\x20source\x20package.json.','https:','resolve','CDN\x20project\x20template\x20checksum\x20verification\x20failed.','CDN\x20project\x20template\x20size\x20mismatch:\x20expected\x20','1396620YOqIRC','.env.','status','access','has','byteLength','href','relative','2jxesDu','includes','Unable\x20to\x20download\x20a\x20valid\x20project\x20template\x20from\x20CDN.','.git','read','.rabetbase.json','releaseLock','update','CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.','dirname','CDN\x20project\x20template\x20URL\x20must\x20use\x20the\x20trusted\x20HTTPS\x20origin.','get','Unable\x20to\x20claim\x20the\x20project\x20directory.','local','toLowerCase','code','pathname','abort','mkdir','Rabetbase\x20CDN\x20config\x20is\x20unavailable.','cdn','hex','CDN\x20config\x20does\x20not\x20define\x20template\x20\x22','string','name','validation','.env.example','protocol','ino','.rabetbase','startsWith','.DS_Store','sha256','8993900OWUHIR','size','dist','Local\x20project\x20template\x20must\x20not\x20contain\x20symlinks:\x20','chmod','copying','rename','248250eofelk','.env','object','Check\x20your\x20network\x20and\x20retry.\x20Details:\x20','sep','968iltlSt','basename'];a179_0x2c6d=function(){return _0x3d298b;};return a179_0x2c6d();}import{getRabetbaseCdnConfig}from'../../../utils/cli-version-policy.js';import{CliErrors}from'../../../errors.js';const TEMPLATE_ID=a179_0x6d88d0(0x1d0),ARCHIVE_TIMEOUT_MS=0x3a98,MAX_ARCHIVE_SIZE=0x14*0x400*0x400;function nonEmptyString(_0x2f790e){const _0x2ab6d3=a179_0x6d88d0;return typeof _0x2f790e===_0x2ab6d3(0x1ac)&&_0x2f790e[_0x2ab6d3(0x1d7)]()?_0x2f790e[_0x2ab6d3(0x1d7)]():null;}function parseDescriptor(_0xe0d381){const _0x15d2ef=a179_0x6d88d0;if(!_0xe0d381||typeof _0xe0d381!=='object')throw new Error(_0x15d2ef(0x1ab)+TEMPLATE_ID+'\x22.');const _0x1f5fe2=_0xe0d381,_0x356433=nonEmptyString(_0x1f5fe2[_0x15d2ef(0x1de)]),_0x56bc13=nonEmptyString(_0x1f5fe2['name']),_0x277acb=nonEmptyString(_0x1f5fe2[_0x15d2ef(0x1b5)])?.[_0x15d2ef(0x1a3)](),_0x139ddc=_0x1f5fe2[_0x15d2ef(0x1b7)];if(!_0x356433||!_0x56bc13||_0x56bc13!==a179_0x4c4911['posix'][_0x15d2ef(0x1c3)](_0x56bc13)||_0x56bc13[_0x15d2ef(0x201)]('\x5c')||!_0x277acb||!/^sha256:[a-f0-9]{64}$/['test'](_0x277acb)||typeof _0x139ddc!==_0x15d2ef(0x1c9)||!Number[_0x15d2ef(0x1d9)](_0x139ddc)||_0x139ddc<=0x0||_0x139ddc>MAX_ARCHIVE_SIZE)throw new Error(_0x15d2ef(0x1ef)+TEMPLATE_ID+'\x22.');return{'version':_0x356433,'name':_0x56bc13,'sha256':_0x277acb,'size':_0x139ddc};}async function fetchWithTimeout(_0x16dede,_0x1d2cc4,_0x261a5c,_0x42fd43){const _0x1103b3=a179_0x6d88d0,_0x303b36=new AbortController(),_0x529077=setTimeout(()=>_0x303b36[_0x1103b3(0x1a6)](),_0x1d2cc4);try{const _0x353c79=await fetch(_0x16dede,{'headers':{'Accept':_0x261a5c},'signal':_0x303b36['signal']});return await _0x42fd43(_0x353c79);}finally{clearTimeout(_0x529077);}}async function fetchTemplateDescriptor(){const _0x24cf2d=a179_0x6d88d0,_0x320335=await getRabetbaseCdnConfig();if(!_0x320335)throw new Error(_0x24cf2d(0x1a8));return parseDescriptor(_0x320335['projectTemplate']);}function resolveArchiveUrl(_0x5989ca){const _0x5a2f2d=a179_0x6d88d0,_0x510569=new URL(PROJECT_TEMPLATE_ASSET_BASE_URL+'/'),_0x364441=new URL(_0x5989ca,_0x510569);if(_0x364441[_0x5a2f2d(0x1b0)]!==_0x5a2f2d(0x1f4)||_0x364441[_0x5a2f2d(0x1dc)]!==_0x510569[_0x5a2f2d(0x1dc)]||!_0x364441[_0x5a2f2d(0x1a5)][_0x5a2f2d(0x1b3)](_0x510569[_0x5a2f2d(0x1a5)]))throw new Error(_0x5a2f2d(0x20a));return _0x364441[_0x5a2f2d(0x1fe)];}async function readResponseBytes(_0x22a95b,_0x5a5ae2){const _0x1fd170=a179_0x6d88d0;if(!_0x22a95b[_0x1fd170(0x1dd)]){const _0x508e1c=Buffer[_0x1fd170(0x1d2)](await _0x22a95b['arrayBuffer']());if(_0x508e1c[_0x1fd170(0x1d4)]>_0x5a5ae2)throw new Error(_0x1fd170(0x208));return _0x508e1c;}const _0x3ba457=_0x22a95b['body']['getReader'](),_0x3cb484=[];let _0x42aa3a=0x0;try{while(!![]){const {done:_0x3bb33f,value:_0x58e9c4}=await _0x3ba457[_0x1fd170(0x204)]();if(_0x3bb33f)break;_0x42aa3a+=_0x58e9c4[_0x1fd170(0x1fd)];if(_0x42aa3a>_0x5a5ae2){await _0x3ba457['cancel']();throw new Error(_0x1fd170(0x208));}_0x3cb484[_0x1fd170(0x1eb)](Buffer[_0x1fd170(0x1d2)](_0x58e9c4));}}finally{_0x3ba457[_0x1fd170(0x206)]();}return Buffer['concat'](_0x3cb484,_0x42aa3a);}function a179_0x2fe6(_0x431f37,_0x115141){_0x431f37=_0x431f37-0x1a1;const _0x2c6dd6=a179_0x2c6d();let _0x2fe62e=_0x2c6dd6[_0x431f37];return _0x2fe62e;}async function downloadArchive(_0x36dfea,_0x2e380e,_0xe62a9){const _0x41141d=a179_0x6d88d0,_0x4662a7=await fetchWithTimeout(resolveArchiveUrl(_0x36dfea[_0x41141d(0x1ad)]),ARCHIVE_TIMEOUT_MS,_0x41141d(0x1c6),async _0x843d5e=>{const _0x220783=_0x41141d;if(!_0x843d5e['ok'])throw new Error('CDN\x20project\x20template\x20request\x20failed\x20with\x20HTTP\x20'+_0x843d5e[_0x220783(0x1fa)]+'.');const _0xa02a90=Number(_0x843d5e[_0x220783(0x1e5)][_0x220783(0x20b)](_0x220783(0x1e6)));if(Number[_0x220783(0x1c5)](_0xa02a90)&&_0xa02a90>MAX_ARCHIVE_SIZE)throw new Error('CDN\x20project\x20template\x20exceeds\x20the\x2020\x20MB\x20download\x20limit.');return readResponseBytes(_0x843d5e,_0x36dfea[_0x220783(0x1b7)]);});if(_0x4662a7[_0x41141d(0x1d4)]!==_0x36dfea[_0x41141d(0x1b7)])throw new Error(_0x41141d(0x1f7)+_0x36dfea[_0x41141d(0x1b7)]+_0x41141d(0x1ed)+_0x4662a7['length']+'.');_0xe62a9?.(_0x41141d(0x1e8));const _0x4ba257=_0x41141d(0x1d6)+createHash(_0x41141d(0x1b5))[_0x41141d(0x207)](_0x4662a7)['digest'](_0x41141d(0x1aa));if(_0x4ba257!==_0x36dfea[_0x41141d(0x1b5)])throw new Error(_0x41141d(0x1f6));await a179_0x27de59['writeFile'](_0x2e380e,_0x4662a7,{'flag':'wx'});}async function assertTemplateRoot(_0x427c42){const _0x3794c3=a179_0x6d88d0,_0x339747=a179_0x4c4911[_0x3794c3(0x1ec)](_0x427c42,_0x3794c3(0x1ea)),_0x51f056=JSON[_0x3794c3(0x1db)](await a179_0x27de59[_0x3794c3(0x1e4)](_0x339747,_0x3794c3(0x1c8)));if(!_0x51f056||typeof _0x51f056!==_0x3794c3(0x1bf))throw new Error('Project\x20template\x20package.json\x20is\x20invalid.');}const LOCAL_FORBIDDEN_NAMES=new Set([a179_0x6d88d0(0x1b4),a179_0x6d88d0(0x1ee),a179_0x6d88d0(0x203),'.idea',a179_0x6d88d0(0x1f2),'.lovrabet.log',a179_0x6d88d0(0x1b2),a179_0x6d88d0(0x205),a179_0x6d88d0(0x1b8),a179_0x6d88d0(0x1e9)]);function isForbiddenTemplateEntry(_0x2f3fba){const _0xa8964a=a179_0x6d88d0;if(LOCAL_FORBIDDEN_NAMES[_0xa8964a(0x1fc)](_0x2f3fba))return!![];return _0x2f3fba===_0xa8964a(0x1be)||_0x2f3fba['startsWith'](_0xa8964a(0x1f9))&&_0x2f3fba!==_0xa8964a(0x1af);}function containsPath(_0xffd6cc,_0x5e8446){const _0x538dfc=a179_0x6d88d0,_0x23d350=a179_0x4c4911[_0x538dfc(0x1ff)](_0xffd6cc,_0x5e8446);return _0x23d350===''||!_0x23d350[_0x538dfc(0x1b3)]('..'+a179_0x4c4911[_0x538dfc(0x1c1)])&&_0x23d350!=='..'&&!a179_0x4c4911[_0x538dfc(0x1f0)](_0x23d350);}async function copyLocalTemplateDirectory(_0x22efb8,_0x2dd1cb){const _0x39cae7=a179_0x6d88d0;await a179_0x27de59[_0x39cae7(0x1a7)](_0x2dd1cb,{'recursive':!![]});for(const _0x375e2d of await a179_0x27de59['readdir'](_0x22efb8,{'withFileTypes':!![]})){const _0xb34e4a=a179_0x4c4911[_0x39cae7(0x1ec)](_0x22efb8,_0x375e2d['name']),_0x458de8=a179_0x4c4911[_0x39cae7(0x1ec)](_0x2dd1cb,_0x375e2d[_0x39cae7(0x1ad)]);if(isForbiddenTemplateEntry(_0x375e2d[_0x39cae7(0x1ad)]))throw new Error('Local\x20project\x20template\x20contains\x20a\x20local-only\x20entry:\x20'+_0xb34e4a);const _0x1d1e36=await a179_0x27de59[_0x39cae7(0x1e1)](_0xb34e4a);if(_0x1d1e36['isSymbolicLink']())throw new Error(_0x39cae7(0x1b9)+_0xb34e4a);if(_0x1d1e36[_0x39cae7(0x1c7)]()){await copyLocalTemplateDirectory(_0xb34e4a,_0x458de8);continue;}if(!_0x1d1e36[_0x39cae7(0x1ce)]())continue;await a179_0x27de59[_0x39cae7(0x1d5)](_0xb34e4a,_0x458de8),await a179_0x27de59[_0x39cae7(0x1ba)](_0x458de8,_0x1d1e36['mode']&0x1ff);}}async function readTemplateVersion(_0x2a6919){const _0x5ccba5=a179_0x6d88d0,_0x227603=JSON['parse'](await a179_0x27de59[_0x5ccba5(0x1e4)](a179_0x4c4911['join'](_0x2a6919,_0x5ccba5(0x1ea)),_0x5ccba5(0x1c8)));return nonEmptyString(_0x227603[_0x5ccba5(0x1de)])||_0x5ccba5(0x1a2);}async function readDirectoryIdentity(_0x2b97bf){const _0x1e5963=a179_0x6d88d0;try{const _0x1c7bd5=await a179_0x27de59[_0x1e5963(0x1e1)](_0x2b97bf);if(!_0x1c7bd5['isDirectory']())return null;return{'dev':_0x1c7bd5[_0x1e5963(0x1cd)],'ino':_0x1c7bd5['ino']};}catch{return null;}}async function commitStagedProject(_0x4ac9a8,_0x1aeeb6){const _0x4e5483=a179_0x6d88d0;await a179_0x27de59[_0x4e5483(0x1a7)](_0x1aeeb6);const _0x30624b=await readDirectoryIdentity(_0x1aeeb6);if(!_0x30624b)throw new Error(_0x4e5483(0x1a1));try{for(const _0x43256a of await a179_0x27de59[_0x4e5483(0x1ca)](_0x4ac9a8)){await a179_0x27de59[_0x4e5483(0x1bc)](a179_0x4c4911[_0x4e5483(0x1ec)](_0x4ac9a8,_0x43256a),a179_0x4c4911[_0x4e5483(0x1ec)](_0x1aeeb6,_0x43256a));}}catch(_0x46e75b){const _0x16667d=await readDirectoryIdentity(_0x1aeeb6);_0x16667d?.[_0x4e5483(0x1cd)]===_0x30624b[_0x4e5483(0x1cd)]&&_0x16667d[_0x4e5483(0x1b1)]===_0x30624b['ino']&&await a179_0x27de59['rm'](_0x1aeeb6,{'recursive':!![],'force':!![]});throw _0x46e75b;}}export async function materializeProjectTemplate(_0x28f4be,_0x209f50){const _0x1759bd=a179_0x6d88d0,_0x3d5452=a179_0x4c4911[_0x1759bd(0x1f5)](_0x28f4be),_0x22ef9b=a179_0x4c4911[_0x1759bd(0x209)](_0x3d5452);try{await a179_0x27de59[_0x1759bd(0x1e1)](_0x3d5452);throw new Error(_0x1759bd(0x1da)+_0x3d5452);}catch(_0x4e25c6){if(_0x4e25c6['code']!=='ENOENT')throw _0x4e25c6;}const _0x3fd976=await a179_0x27de59[_0x1759bd(0x1f1)](a179_0x4c4911[_0x1759bd(0x1ec)](_0x22ef9b,'.rabetbase-create-')),_0x58e447=a179_0x4c4911[_0x1759bd(0x1ec)](_0x3fd976,_0x1759bd(0x1e7)),_0x2c5476=a179_0x4c4911[_0x1759bd(0x1ec)](_0x3fd976,_0x1759bd(0x1cb));try{try{_0x209f50?.('resolving');const _0x307bbe=await fetchTemplateDescriptor();return _0x209f50?.(_0x1759bd(0x1e2)),await downloadArchive(_0x307bbe,_0x2c5476,_0x209f50),_0x209f50?.(_0x1759bd(0x1d8)),await extractProjectTemplateArchive(_0x2c5476,_0x58e447),await assertTemplateRoot(_0x58e447),await commitStagedProject(_0x58e447,_0x3d5452),{'source':_0x1759bd(0x1a9),'version':_0x307bbe[_0x1759bd(0x1de)]};}catch(_0xf2b686){if(_0xf2b686[_0x1759bd(0x1a4)]==='EEXIST')throw CliErrors['validation']('Project\x20directory\x20already\x20exists:\x20'+_0x3d5452,'Use\x20a\x20different\x20project\x20name.');const _0x4074dd=_0xf2b686 instanceof Error?_0xf2b686[_0x1759bd(0x1e0)]:String(_0xf2b686);throw CliErrors['validation'](_0x1759bd(0x202),_0x1759bd(0x1c0)+_0x4074dd);}}finally{await a179_0x27de59['rm'](_0x3fd976,{'recursive':!![],'force':!![]});}}export async function materializeLocalProjectTemplate(_0x367dcb,_0xdc1838,_0x26a7c4){const _0x585cd9=a179_0x6d88d0;let _0x429965;try{_0x429965=await a179_0x27de59['realpath'](a179_0x4c4911[_0x585cd9(0x1f5)](_0x367dcb));}catch{throw CliErrors[_0x585cd9(0x1ae)]('Local\x20template\x20source\x20does\x20not\x20exist:\x20'+a179_0x4c4911['resolve'](_0x367dcb),_0x585cd9(0x1f3));}const _0x8ef6ff=await a179_0x27de59[_0x585cd9(0x1e1)](_0x429965);if(!_0x8ef6ff[_0x585cd9(0x1c7)]())throw CliErrors['validation']('Local\x20template\x20source\x20is\x20not\x20a\x20directory:\x20'+_0x429965);const _0x580896=a179_0x4c4911[_0x585cd9(0x1f5)](_0xdc1838),_0x3b2ccf=await a179_0x27de59['realpath'](a179_0x4c4911['dirname'](_0x580896)),_0xfbb0ea=a179_0x4c4911[_0x585cd9(0x1ec)](_0x3b2ccf,a179_0x4c4911[_0x585cd9(0x1c3)](_0x580896));if(containsPath(_0x429965,_0xfbb0ea)||containsPath(_0xfbb0ea,_0x429965))throw CliErrors[_0x585cd9(0x1ae)](_0x585cd9(0x1cf),'Choose\x20an\x20output\x20directory\x20outside\x20the\x20template\x20source.');try{await a179_0x27de59[_0x585cd9(0x1e1)](_0xfbb0ea);throw CliErrors[_0x585cd9(0x1ae)](_0x585cd9(0x1da)+_0xfbb0ea,'Choose\x20a\x20different\x20project\x20name\x20or\x20remove\x20the\x20directory\x20first.');}catch(_0x6865ec){if(_0x6865ec[_0x585cd9(0x1a4)]!=='ENOENT')throw _0x6865ec;}const _0x118d77=a179_0x4c4911[_0x585cd9(0x209)](_0xfbb0ea);await a179_0x27de59[_0x585cd9(0x1fb)](_0x118d77);const _0xce0bba=await a179_0x27de59[_0x585cd9(0x1f1)](a179_0x4c4911[_0x585cd9(0x1ec)](_0x118d77,'.rabetbase-create-')),_0xe578f3=a179_0x4c4911[_0x585cd9(0x1ec)](_0xce0bba,_0x585cd9(0x1e7));try{_0x26a7c4?.(_0x585cd9(0x1bb)),await copyLocalTemplateDirectory(_0x429965,_0xe578f3),await assertTemplateRoot(_0xe578f3);const _0x5da4c7=await readTemplateVersion(_0xe578f3);return await commitStagedProject(_0xe578f3,_0xfbb0ea),{'source':_0x585cd9(0x1a2),'version':_0x5da4c7};}catch(_0x2c0334){const _0x75d673=_0x2c0334 instanceof Error?_0x2c0334[_0x585cd9(0x1e0)]:String(_0x2c0334);throw CliErrors[_0x585cd9(0x1ae)](_0x585cd9(0x1d1)+_0x75d673,'Check\x20the\x20source\x20directory\x20and\x20retry.');}finally{await a179_0x27de59['rm'](_0xce0bba,{'recursive':!![],'force':!![]});}}
1
+ const a179_0x372b09=a179_0x47c9;(function(_0xe67ce0,_0x3316b7){const _0x154601=a179_0x47c9,_0x375403=_0xe67ce0();while(!![]){try{const _0x42ed7a=parseInt(_0x154601(0xa0))/0x1*(parseInt(_0x154601(0xce))/0x2)+parseInt(_0x154601(0xfe))/0x3*(parseInt(_0x154601(0xbc))/0x4)+parseInt(_0x154601(0xe0))/0x5+parseInt(_0x154601(0xf3))/0x6*(parseInt(_0x154601(0xba))/0x7)+-parseInt(_0x154601(0xe8))/0x8+-parseInt(_0x154601(0x104))/0x9*(parseInt(_0x154601(0xc8))/0xa)+parseInt(_0x154601(0x9e))/0xb;if(_0x42ed7a===_0x3316b7)break;else _0x375403['push'](_0x375403['shift']());}catch(_0x54f7f3){_0x375403['push'](_0x375403['shift']());}}}(a179_0xd1da,0x9d224));function a179_0xd1da(){const _0x594f61=['join','get','dev','concat','9dEOjpP','https:','node_modules','readdir','sep','.env','status','mkdtemp','.lovrabet.json','Local\x20template\x20source\x20is\x20not\x20a\x20directory:\x20','parse','9176002aIlgcn',',\x20received\x20','149551IzcNxA','downloading','local','href','version','toLowerCase','sha256:','Check\x20the\x20source\x20directory\x20and\x20retry.','test','mode','pathname','abort','hex','Choose\x20a\x20different\x20project\x20name\x20or\x20remove\x20the\x20directory\x20first.','lstat','Local\x20project\x20template\x20contains\x20a\x20local-only\x20entry:\x20','verifying','code','sub-app-react-demo','utf8','.env.','Local\x20template\x20source\x20and\x20project\x20output\x20must\x20not\x20overlap.','readFile','.lovrabet.log','length','CDN\x20project\x20template\x20size\x20mismatch:\x20expected\x20','100968dIiGOy','sha256','2236khDuZi','CDN\x20project\x20template\x20request\x20failed\x20with\x20HTTP\x20','CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.','protocol','validation','copyFile','isFile','realpath','dirname','.idea','.rabetbase-create-','application/zip','12135650byXpsL','includes','from','rename','isDirectory','.env.example','2jjVTCc','startsWith','.DS_Store','CDN\x20project\x20template\x20exceeds\x20the\x2020\x20MB\x20download\x20limit.','template.zip','update','read','package.json','resolve','ino','message','origin','isFinite','headers','cdn','copying','signal','.rabetbase','4793235DlLSAP','access','resolving','name','CDN\x20project\x20template\x20checksum\x20verification\x20failed.','isAbsolute','CDN\x20config\x20contains\x20an\x20invalid\x20descriptor\x20for\x20\x22','CDN\x20project\x20template\x20URL\x20must\x20use\x20the\x20trusted\x20HTTPS\x20origin.','8567888ysfLuC','chmod','isSafeInteger','object','Unable\x20to\x20claim\x20the\x20project\x20directory.','trim','releaseLock','CDN\x20config\x20does\x20not\x20define\x20template\x20\x22','Invalid\x20local\x20template\x20source:\x20','Pass\x20a\x20directory\x20containing\x20the\x20template\x20source\x20package.json.','Unable\x20to\x20download\x20a\x20valid\x20project\x20template\x20from\x20CDN.','168fBeBPY','mkdir','.git','body','.codegraph','basename','size','project','ENOENT','Project\x20directory\x20already\x20exists:\x20','isSymbolicLink','3123BhmTum','number'];a179_0xd1da=function(){return _0x594f61;};return a179_0xd1da();}import{createHash}from'node:crypto';import a179_0x24c6ba from'node:fs/promises';import a179_0x4830f4 from'node:path';import{PROJECT_TEMPLATE_ASSET_BASE_URL}from'../../../constant/cdn.js';import{extractProjectTemplateArchive}from'../../../commands/project/create/project-template-archive.js';import{getRabetbaseCdnConfig}from'../../../utils/cli-version-policy.js';import{CliErrors}from'../../../errors.js';const TEMPLATE_ID=a179_0x372b09(0xb2),ARCHIVE_TIMEOUT_MS=0x3a98,MAX_ARCHIVE_SIZE=0x14*0x400*0x400;function nonEmptyString(_0x757b70){const _0x2a8d65=a179_0x372b09;return typeof _0x757b70==='string'&&_0x757b70[_0x2a8d65(0xed)]()?_0x757b70['trim']():null;}function parseDescriptor(_0x495b6b){const _0x448e95=a179_0x372b09;if(!_0x495b6b||typeof _0x495b6b!=='object')throw new Error(_0x448e95(0xef)+TEMPLATE_ID+'\x22.');const _0xe4838a=_0x495b6b,_0x1e31ec=nonEmptyString(_0xe4838a['version']),_0x3a0097=nonEmptyString(_0xe4838a[_0x448e95(0xe3)]),_0x5bfabf=nonEmptyString(_0xe4838a[_0x448e95(0xbb)])?.[_0x448e95(0xa5)](),_0x5ef750=_0xe4838a['size'];if(!_0x1e31ec||!_0x3a0097||_0x3a0097!==a179_0x4830f4['posix'][_0x448e95(0xf8)](_0x3a0097)||_0x3a0097[_0x448e95(0xc9)]('\x5c')||!_0x5bfabf||!/^sha256:[a-f0-9]{64}$/[_0x448e95(0xa8)](_0x5bfabf)||typeof _0x5ef750!==_0x448e95(0xff)||!Number[_0x448e95(0xea)](_0x5ef750)||_0x5ef750<=0x0||_0x5ef750>MAX_ARCHIVE_SIZE)throw new Error(_0x448e95(0xe6)+TEMPLATE_ID+'\x22.');return{'version':_0x1e31ec,'name':_0x3a0097,'sha256':_0x5bfabf,'size':_0x5ef750};}async function fetchWithTimeout(_0x595e4,_0xb6ca8a,_0x2b32e6,_0x2f31ac){const _0x155461=a179_0x372b09,_0x2cf40a=new AbortController(),_0x1b8f4b=setTimeout(()=>_0x2cf40a[_0x155461(0xab)](),_0xb6ca8a);try{const _0x4c24ea=await fetch(_0x595e4,{'headers':{'Accept':_0x2b32e6},'signal':_0x2cf40a[_0x155461(0xde)]});return await _0x2f31ac(_0x4c24ea);}finally{clearTimeout(_0x1b8f4b);}}async function fetchTemplateDescriptor(){const _0x36f12f=await getRabetbaseCdnConfig();if(!_0x36f12f)throw new Error('Rabetbase\x20CDN\x20config\x20is\x20unavailable.');return parseDescriptor(_0x36f12f['projectTemplate']);}function resolveArchiveUrl(_0x2d1b24){const _0x5f51e0=a179_0x372b09,_0x3ce7e2=new URL(PROJECT_TEMPLATE_ASSET_BASE_URL+'/'),_0x55e0e4=new URL(_0x2d1b24,_0x3ce7e2);if(_0x55e0e4[_0x5f51e0(0xbf)]!==_0x5f51e0(0x105)||_0x55e0e4[_0x5f51e0(0xd9)]!==_0x3ce7e2[_0x5f51e0(0xd9)]||!_0x55e0e4[_0x5f51e0(0xaa)]['startsWith'](_0x3ce7e2[_0x5f51e0(0xaa)]))throw new Error(_0x5f51e0(0xe7));return _0x55e0e4[_0x5f51e0(0xa3)];}async function readResponseBytes(_0x101225,_0xb35243){const _0x2cf3e4=a179_0x372b09;if(!_0x101225[_0x2cf3e4(0xf6)]){const _0x246c88=Buffer['from'](await _0x101225['arrayBuffer']());if(_0x246c88[_0x2cf3e4(0xb8)]>_0xb35243)throw new Error('CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.');return _0x246c88;}const _0x1ec447=_0x101225[_0x2cf3e4(0xf6)]['getReader'](),_0x170aa0=[];let _0x3e6506=0x0;try{while(!![]){const {done:_0x51e2d7,value:_0x2d0054}=await _0x1ec447[_0x2cf3e4(0xd4)]();if(_0x51e2d7)break;_0x3e6506+=_0x2d0054['byteLength'];if(_0x3e6506>_0xb35243){await _0x1ec447['cancel']();throw new Error(_0x2cf3e4(0xbe));}_0x170aa0['push'](Buffer[_0x2cf3e4(0xca)](_0x2d0054));}}finally{_0x1ec447[_0x2cf3e4(0xee)]();}return Buffer[_0x2cf3e4(0x103)](_0x170aa0,_0x3e6506);}async function downloadArchive(_0x466e8c,_0x3d3ed1,_0x484225){const _0x294e63=a179_0x372b09,_0x12d309=await fetchWithTimeout(resolveArchiveUrl(_0x466e8c['name']),ARCHIVE_TIMEOUT_MS,_0x294e63(0xc7),async _0x2e0b92=>{const _0x317259=_0x294e63;if(!_0x2e0b92['ok'])throw new Error(_0x317259(0xbd)+_0x2e0b92[_0x317259(0x10a)]+'.');const _0x1ea6b8=Number(_0x2e0b92[_0x317259(0xdb)][_0x317259(0x101)]('content-length'));if(Number[_0x317259(0xda)](_0x1ea6b8)&&_0x1ea6b8>MAX_ARCHIVE_SIZE)throw new Error(_0x317259(0xd1));return readResponseBytes(_0x2e0b92,_0x466e8c[_0x317259(0xf9)]);});if(_0x12d309[_0x294e63(0xb8)]!==_0x466e8c[_0x294e63(0xf9)])throw new Error(_0x294e63(0xb9)+_0x466e8c[_0x294e63(0xf9)]+_0x294e63(0x9f)+_0x12d309[_0x294e63(0xb8)]+'.');_0x484225?.(_0x294e63(0xb0));const _0x3df3cc=_0x294e63(0xa6)+createHash('sha256')[_0x294e63(0xd3)](_0x12d309)['digest'](_0x294e63(0xac));if(_0x3df3cc!==_0x466e8c['sha256'])throw new Error(_0x294e63(0xe4));await a179_0x24c6ba['writeFile'](_0x3d3ed1,_0x12d309,{'flag':'wx'});}async function assertTemplateRoot(_0x4a168d){const _0x443e01=a179_0x372b09,_0x553204=a179_0x4830f4['join'](_0x4a168d,_0x443e01(0xd5)),_0x38def1=JSON[_0x443e01(0x10e)](await a179_0x24c6ba[_0x443e01(0xb6)](_0x553204,_0x443e01(0xb3)));if(!_0x38def1||typeof _0x38def1!==_0x443e01(0xeb))throw new Error('Project\x20template\x20package.json\x20is\x20invalid.');}const LOCAL_FORBIDDEN_NAMES=new Set([a179_0x372b09(0xd0),a179_0x372b09(0xf7),a179_0x372b09(0xf5),a179_0x372b09(0xc5),a179_0x372b09(0x10c),a179_0x372b09(0xb7),a179_0x372b09(0xdf),'.rabetbase.json','dist',a179_0x372b09(0x106)]);function isForbiddenTemplateEntry(_0x292d77){const _0xf3362f=a179_0x372b09;if(LOCAL_FORBIDDEN_NAMES['has'](_0x292d77))return!![];return _0x292d77===_0xf3362f(0x109)||_0x292d77[_0xf3362f(0xcf)](_0xf3362f(0xb4))&&_0x292d77!==_0xf3362f(0xcd);}function containsPath(_0x5503f7,_0xaade38){const _0x19e346=a179_0x372b09,_0x28247c=a179_0x4830f4['relative'](_0x5503f7,_0xaade38);return _0x28247c===''||!_0x28247c[_0x19e346(0xcf)]('..'+a179_0x4830f4[_0x19e346(0x108)])&&_0x28247c!=='..'&&!a179_0x4830f4[_0x19e346(0xe5)](_0x28247c);}async function copyLocalTemplateDirectory(_0x46a831,_0x28cd7a){const _0x19896f=a179_0x372b09;await a179_0x24c6ba[_0x19896f(0xf4)](_0x28cd7a,{'recursive':!![]});for(const _0x5f32ba of await a179_0x24c6ba[_0x19896f(0x107)](_0x46a831,{'withFileTypes':!![]})){const _0x1cad96=a179_0x4830f4['join'](_0x46a831,_0x5f32ba[_0x19896f(0xe3)]),_0x13e51a=a179_0x4830f4[_0x19896f(0x100)](_0x28cd7a,_0x5f32ba[_0x19896f(0xe3)]);if(isForbiddenTemplateEntry(_0x5f32ba['name']))throw new Error(_0x19896f(0xaf)+_0x1cad96);const _0x31f554=await a179_0x24c6ba[_0x19896f(0xae)](_0x1cad96);if(_0x31f554[_0x19896f(0xfd)]())throw new Error('Local\x20project\x20template\x20must\x20not\x20contain\x20symlinks:\x20'+_0x1cad96);if(_0x31f554[_0x19896f(0xcc)]()){await copyLocalTemplateDirectory(_0x1cad96,_0x13e51a);continue;}if(!_0x31f554[_0x19896f(0xc2)]())continue;await a179_0x24c6ba[_0x19896f(0xc1)](_0x1cad96,_0x13e51a),await a179_0x24c6ba[_0x19896f(0xe9)](_0x13e51a,_0x31f554[_0x19896f(0xa9)]&0x1ff);}}async function readTemplateVersion(_0x1d6488){const _0x1f12e8=a179_0x372b09,_0xcc738e=JSON[_0x1f12e8(0x10e)](await a179_0x24c6ba[_0x1f12e8(0xb6)](a179_0x4830f4[_0x1f12e8(0x100)](_0x1d6488,_0x1f12e8(0xd5)),_0x1f12e8(0xb3)));return nonEmptyString(_0xcc738e[_0x1f12e8(0xa4)])||_0x1f12e8(0xa2);}async function readDirectoryIdentity(_0x5c9a9a){const _0x453e13=a179_0x372b09;try{const _0x165bf3=await a179_0x24c6ba['lstat'](_0x5c9a9a);if(!_0x165bf3[_0x453e13(0xcc)]())return null;return{'dev':_0x165bf3[_0x453e13(0x102)],'ino':_0x165bf3['ino']};}catch{return null;}}function a179_0x47c9(_0x1c108a,_0x1ce7a9){_0x1c108a=_0x1c108a-0x9e;const _0xd1da0e=a179_0xd1da();let _0x47c9f3=_0xd1da0e[_0x1c108a];return _0x47c9f3;}async function commitStagedProject(_0x452c1a,_0x58d9d2){const _0x3d7415=a179_0x372b09;await a179_0x24c6ba[_0x3d7415(0xf4)](_0x58d9d2);const _0x128d84=await readDirectoryIdentity(_0x58d9d2);if(!_0x128d84)throw new Error(_0x3d7415(0xec));try{for(const _0x4b47b3 of await a179_0x24c6ba[_0x3d7415(0x107)](_0x452c1a)){await a179_0x24c6ba[_0x3d7415(0xcb)](a179_0x4830f4[_0x3d7415(0x100)](_0x452c1a,_0x4b47b3),a179_0x4830f4[_0x3d7415(0x100)](_0x58d9d2,_0x4b47b3));}}catch(_0x568b87){const _0x18b302=await readDirectoryIdentity(_0x58d9d2);_0x18b302?.[_0x3d7415(0x102)]===_0x128d84[_0x3d7415(0x102)]&&_0x18b302[_0x3d7415(0xd7)]===_0x128d84[_0x3d7415(0xd7)]&&await a179_0x24c6ba['rm'](_0x58d9d2,{'recursive':!![],'force':!![]});throw _0x568b87;}}export async function materializeProjectTemplate(_0x37e00a,_0x3e5b57){const _0x3599f1=a179_0x372b09,_0x2897d1=a179_0x4830f4[_0x3599f1(0xd6)](_0x37e00a),_0x5c89bd=a179_0x4830f4[_0x3599f1(0xc4)](_0x2897d1);try{await a179_0x24c6ba[_0x3599f1(0xae)](_0x2897d1);throw new Error(_0x3599f1(0xfc)+_0x2897d1);}catch(_0x227804){if(_0x227804['code']!==_0x3599f1(0xfb))throw _0x227804;}const _0x465ab3=await a179_0x24c6ba[_0x3599f1(0x10b)](a179_0x4830f4[_0x3599f1(0x100)](_0x5c89bd,_0x3599f1(0xc6))),_0x121c3e=a179_0x4830f4[_0x3599f1(0x100)](_0x465ab3,'project'),_0x2fa199=a179_0x4830f4[_0x3599f1(0x100)](_0x465ab3,_0x3599f1(0xd2));try{try{_0x3e5b57?.(_0x3599f1(0xe2));const _0x192ef9=await fetchTemplateDescriptor();return _0x3e5b57?.(_0x3599f1(0xa1)),await downloadArchive(_0x192ef9,_0x2fa199,_0x3e5b57),_0x3e5b57?.('extracting'),await extractProjectTemplateArchive(_0x2fa199,_0x121c3e),await assertTemplateRoot(_0x121c3e),await commitStagedProject(_0x121c3e,_0x2897d1),{'source':_0x3599f1(0xdc),'version':_0x192ef9['version']};}catch(_0x439daf){if(_0x439daf[_0x3599f1(0xb1)]==='EEXIST')throw CliErrors['validation']('Project\x20directory\x20already\x20exists:\x20'+_0x2897d1,'Use\x20a\x20different\x20project\x20name.');const _0x2303a0=_0x439daf instanceof Error?_0x439daf[_0x3599f1(0xd8)]:String(_0x439daf);throw CliErrors[_0x3599f1(0xc0)](_0x3599f1(0xf2),'Check\x20your\x20network\x20and\x20retry.\x20Details:\x20'+_0x2303a0);}}finally{await a179_0x24c6ba['rm'](_0x465ab3,{'recursive':!![],'force':!![]});}}export async function materializeLocalProjectTemplate(_0x24a8b7,_0x555022,_0x50eedf){const _0x27ea58=a179_0x372b09;let _0x187e7a;try{_0x187e7a=await a179_0x24c6ba[_0x27ea58(0xc3)](a179_0x4830f4[_0x27ea58(0xd6)](_0x24a8b7));}catch{throw CliErrors['validation']('Local\x20template\x20source\x20does\x20not\x20exist:\x20'+a179_0x4830f4['resolve'](_0x24a8b7),_0x27ea58(0xf1));}const _0x15851e=await a179_0x24c6ba['lstat'](_0x187e7a);if(!_0x15851e[_0x27ea58(0xcc)]())throw CliErrors['validation'](_0x27ea58(0x10d)+_0x187e7a);const _0x38a21e=a179_0x4830f4[_0x27ea58(0xd6)](_0x555022),_0x5d9d87=await a179_0x24c6ba[_0x27ea58(0xc3)](a179_0x4830f4['dirname'](_0x38a21e)),_0x2e2f9f=a179_0x4830f4[_0x27ea58(0x100)](_0x5d9d87,a179_0x4830f4['basename'](_0x38a21e));if(containsPath(_0x187e7a,_0x2e2f9f)||containsPath(_0x2e2f9f,_0x187e7a))throw CliErrors[_0x27ea58(0xc0)](_0x27ea58(0xb5),'Choose\x20an\x20output\x20directory\x20outside\x20the\x20template\x20source.');try{await a179_0x24c6ba[_0x27ea58(0xae)](_0x2e2f9f);throw CliErrors[_0x27ea58(0xc0)]('Project\x20directory\x20already\x20exists:\x20'+_0x2e2f9f,_0x27ea58(0xad));}catch(_0x118a10){if(_0x118a10[_0x27ea58(0xb1)]!==_0x27ea58(0xfb))throw _0x118a10;}const _0xf03f8b=a179_0x4830f4[_0x27ea58(0xc4)](_0x2e2f9f);await a179_0x24c6ba[_0x27ea58(0xe1)](_0xf03f8b);const _0x1c88d3=await a179_0x24c6ba[_0x27ea58(0x10b)](a179_0x4830f4[_0x27ea58(0x100)](_0xf03f8b,_0x27ea58(0xc6))),_0x20c286=a179_0x4830f4['join'](_0x1c88d3,_0x27ea58(0xfa));try{_0x50eedf?.(_0x27ea58(0xdd)),await copyLocalTemplateDirectory(_0x187e7a,_0x20c286),await assertTemplateRoot(_0x20c286);const _0x1d0914=await readTemplateVersion(_0x20c286);return await commitStagedProject(_0x20c286,_0x2e2f9f),{'source':_0x27ea58(0xa2),'version':_0x1d0914};}catch(_0x299ec9){const _0xb9686=_0x299ec9 instanceof Error?_0x299ec9[_0x27ea58(0xd8)]:String(_0x299ec9);throw CliErrors[_0x27ea58(0xc0)](_0x27ea58(0xf0)+_0xb9686,_0x27ea58(0xa7));}finally{await a179_0x24c6ba['rm'](_0x1c88d3,{'recursive':!![],'force':!![]});}}
@@ -1 +1 @@
1
- (function(_0x40cafd,_0x7f2809){const _0x52f547=a180_0x4e55,_0x30e02a=_0x40cafd();while(!![]){try{const _0x2a9d48=-parseInt(_0x52f547(0xe7))/0x1+parseInt(_0x52f547(0xe1))/0x2*(-parseInt(_0x52f547(0xf4))/0x3)+-parseInt(_0x52f547(0xe0))/0x4*(-parseInt(_0x52f547(0xec))/0x5)+-parseInt(_0x52f547(0xed))/0x6+-parseInt(_0x52f547(0xe2))/0x7+-parseInt(_0x52f547(0xee))/0x8*(parseInt(_0x52f547(0xe3))/0x9)+parseInt(_0x52f547(0xf5))/0xa*(parseInt(_0x52f547(0xef))/0xb);if(_0x2a9d48===_0x7f2809)break;else _0x30e02a['push'](_0x30e02a['shift']());}catch(_0x4cb23c){_0x30e02a['push'](_0x30e02a['shift']());}}}(a180_0x384c,0xe2cea));function a180_0x4e55(_0x3bdd18,_0x102212){_0x3bdd18=_0x3bdd18-0xe0;const _0x384c43=a180_0x384c();let _0x4e55a1=_0x384c43[_0x3bdd18];return _0x4e55a1;}import{CliErrors}from'../../../errors.js';const PROJECT_NAME_PATTERN=/^[A-Za-z0-9][A-Za-z0-9_-]*$/,WINDOWS_RESERVED_NAME=/^(con|prn|aux|nul|com[1-9]|lpt[1-9])$/i,MAX_PROJECT_NAME_LENGTH=0x64;export function getProjectNameValidationError(_0x40a915){const _0x48f670=a180_0x4e55,_0x33d285=_0x40a915[_0x48f670(0xe6)]();if(!_0x33d285)return _0x48f670(0xea);if(_0x33d285[_0x48f670(0xe9)]>MAX_PROJECT_NAME_LENGTH)return _0x48f670(0xeb)+MAX_PROJECT_NAME_LENGTH+_0x48f670(0xf0);if(!PROJECT_NAME_PATTERN[_0x48f670(0xe4)](_0x33d285))return _0x48f670(0xe5);if(WINDOWS_RESERVED_NAME['test'](_0x33d285))return _0x48f670(0xf1)+_0x33d285+_0x48f670(0xf3);return null;}function a180_0x384c(){const _0x204cf1=['52FsByDa','52AbNALr','6628398lnexHq','7191Xopfaj','test','Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','trim','1249866QXBKHy','Use\x20a\x20portable\x20directory\x20name\x20without\x20path\x20separators.','length','Project\x20name\x20cannot\x20be\x20empty','Project\x20name\x20cannot\x20exceed\x20','155810HlyPyB','1075026OPORzZ','10616UpOeFz','2354DNBJJS','\x20characters','Project\x20name\x20\x22','validation','\x22\x20is\x20reserved\x20on\x20Windows','56589YHBeeq','207970jUFOuz'];a180_0x384c=function(){return _0x204cf1;};return a180_0x384c();}export function validateProjectName(_0x1c85d7){const _0x38168b=a180_0x4e55,_0x429da3=_0x1c85d7[_0x38168b(0xe6)](),_0x31a65f=getProjectNameValidationError(_0x429da3);if(_0x31a65f)throw CliErrors[_0x38168b(0xf2)](_0x31a65f,_0x38168b(0xe8));return _0x429da3;}
1
+ (function(_0x1978ec,_0xd2469f){const _0x536894=a180_0x29b4,_0x497558=_0x1978ec();while(!![]){try{const _0x32536b=-parseInt(_0x536894(0xd9))/0x1*(-parseInt(_0x536894(0xda))/0x2)+-parseInt(_0x536894(0xe1))/0x3+parseInt(_0x536894(0xdd))/0x4+parseInt(_0x536894(0xd5))/0x5+parseInt(_0x536894(0xd8))/0x6+-parseInt(_0x536894(0xe2))/0x7+-parseInt(_0x536894(0xdc))/0x8;if(_0x32536b===_0xd2469f)break;else _0x497558['push'](_0x497558['shift']());}catch(_0x2a6374){_0x497558['push'](_0x497558['shift']());}}}(a180_0x40a9,0x351ff));import{CliErrors}from'../../../errors.js';function a180_0x40a9(){const _0x51d4c9=['1070670EdiCVo','Use\x20a\x20portable\x20directory\x20name\x20without\x20path\x20separators.','trim','1010238LommCB','114667pOeAGY','4AuVcFJ','validation','4690656kKdBHj','1584488lfdTus','Project\x20name\x20cannot\x20exceed\x20','Project\x20name\x20\x22','\x20characters','438171wzelfj','405825eGFVhH','Project\x20name\x20cannot\x20be\x20empty','\x22\x20is\x20reserved\x20on\x20Windows','length','test','Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_'];a180_0x40a9=function(){return _0x51d4c9;};return a180_0x40a9();}function a180_0x29b4(_0x2693f8,_0x29e0fd){_0x2693f8=_0x2693f8-0xd2;const _0x40a9bd=a180_0x40a9();let _0x29b48c=_0x40a9bd[_0x2693f8];return _0x29b48c;}const PROJECT_NAME_PATTERN=/^[A-Za-z0-9][A-Za-z0-9_-]*$/,WINDOWS_RESERVED_NAME=/^(con|prn|aux|nul|com[1-9]|lpt[1-9])$/i,MAX_PROJECT_NAME_LENGTH=0x64;export function getProjectNameValidationError(_0x544e8a){const _0x547821=a180_0x29b4,_0x1fe9a9=_0x544e8a[_0x547821(0xd7)]();if(!_0x1fe9a9)return _0x547821(0xe3);if(_0x1fe9a9[_0x547821(0xd2)]>MAX_PROJECT_NAME_LENGTH)return _0x547821(0xde)+MAX_PROJECT_NAME_LENGTH+_0x547821(0xe0);if(!PROJECT_NAME_PATTERN[_0x547821(0xd3)](_0x1fe9a9))return _0x547821(0xd4);if(WINDOWS_RESERVED_NAME['test'](_0x1fe9a9))return _0x547821(0xdf)+_0x1fe9a9+_0x547821(0xe4);return null;}export function validateProjectName(_0x1eeada){const _0xfed070=a180_0x29b4,_0x22cba5=_0x1eeada[_0xfed070(0xd7)](),_0x48aa46=getProjectNameValidationError(_0x22cba5);if(_0x48aa46)throw CliErrors[_0xfed070(0xdb)](_0x48aa46,_0xfed070(0xd6));return _0x22cba5;}
@@ -1 +1 @@
1
- (function(_0x4141a1,_0x130881){const _0x5ccc93=a181_0x4a23,_0x46cccd=_0x4141a1();while(!![]){try{const _0x55453b=-parseInt(_0x5ccc93(0x1e1))/0x1*(parseInt(_0x5ccc93(0x1dd))/0x2)+-parseInt(_0x5ccc93(0x1c1))/0x3*(-parseInt(_0x5ccc93(0x1df))/0x4)+-parseInt(_0x5ccc93(0x1c9))/0x5*(parseInt(_0x5ccc93(0x1e6))/0x6)+-parseInt(_0x5ccc93(0x1d0))/0x7+parseInt(_0x5ccc93(0x1c6))/0x8+parseInt(_0x5ccc93(0x1d1))/0x9*(-parseInt(_0x5ccc93(0x1d3))/0xa)+parseInt(_0x5ccc93(0x1e0))/0xb*(parseInt(_0x5ccc93(0x1c5))/0xc);if(_0x55453b===_0x130881)break;else _0x46cccd['push'](_0x46cccd['shift']());}catch(_0xcae55d){_0x46cccd['push'](_0x46cccd['shift']());}}}(a181_0x4423,0x55ff3));import{createWriteStream}from'node:fs';function a181_0x4a23(_0x417491,_0x1e7ae4){_0x417491=_0x417491-0x1bc;const _0x442371=a181_0x4423();let _0x4a2302=_0x442371[_0x417491];return _0x4a2302;}import a181_0x12c066 from'node:fs/promises';import a181_0x454d1e from'node:path';import{pipeline}from'node:stream/promises';import a181_0x4f065b from'yauzl';const MAX_ENTRY_COUNT=0x7d0,MAX_UNCOMPRESSED_SIZE=0x32*0x400*0x400,WINDOWS_RESERVED_NAME=/^(con|prn|aux|nul|com[1-9]|lpt[1-9])(?:\..*)?$/i,WINDOWS_INVALID_CHAR=/[<>:"|?*\x00-\x1f]/;function a181_0x4423(){const _0x55de3b=['Project\x20template\x20ZIP\x20expands\x20beyond\x20the\x2050\x20MB\x20safety\x20limit.','length','322007hcYTVt','5032053lKIOvW','fileName','10YfaLMG','ZIP\x20entry\x20escapes\x20the\x20destination\x20directory:\x20','join','catch','end','get','replace','resolve','uncompressedSize','endsWith','131636JdQArr','entry','28784iYHdiy','738001RRHrCV','7TJdkGz','en-US','open','dirname','mkdir','28128vmRauQ','Duplicate\x20or\x20case-conflicting\x20ZIP\x20entry:\x20','Symbolic\x20links\x20are\x20not\x20allowed\x20in\x20project\x20templates:\x20','readEntry','toLocaleLowerCase','error','slice','has','279OEPveD','Case-conflicting\x20ZIP\x20entry\x20path:\x20','startsWith','isEncrypted','168LSgpFx','3839752BfXVFh','sep','Unsafe\x20or\x20non-portable\x20ZIP\x20entry\x20path:\x20','715ZBmgDs','Encrypted\x20ZIP\x20entries\x20are\x20not\x20supported:\x20','test','set','add'];a181_0x4423=function(){return _0x55de3b;};return a181_0x4423();}function openZip(_0x2eb3be){return new Promise((_0x5d11a2,_0x14f6f6)=>{const _0xda06d4=a181_0x4a23;a181_0x4f065b[_0xda06d4(0x1e3)](_0x2eb3be,{'lazyEntries':!![],'decodeStrings':!![],'strictFileNames':!![],'validateEntrySizes':!![]},(_0x56aea9,_0x1d686e)=>{if(_0x56aea9||!_0x1d686e){_0x14f6f6(_0x56aea9||new Error('Unable\x20to\x20open\x20project\x20template\x20archive.'));return;}_0x5d11a2(_0x1d686e);});});}function openEntryStream(_0x1b71a4,_0x34a958){return new Promise((_0x2b8259,_0x41c5fe)=>{_0x1b71a4['openReadStream'](_0x34a958,(_0x226dd2,_0x4c18ad)=>{const _0x3e141f=a181_0x4a23;if(_0x226dd2||!_0x4c18ad){_0x41c5fe(_0x226dd2||new Error('Unable\x20to\x20read\x20ZIP\x20entry:\x20'+_0x34a958[_0x3e141f(0x1d2)]));return;}_0x2b8259(_0x4c18ad);});});}function validateEntryPath(_0x2fdba6){const _0xa0d215=a181_0x4a23,_0x5eb3bd=_0x2fdba6[_0xa0d215(0x1d9)](/\\/g,'/'),_0x2ffb22=_0x5eb3bd[_0xa0d215(0x1dc)]('/'),_0x4e62e5=_0x2ffb22?_0x5eb3bd[_0xa0d215(0x1bf)](0x0,-0x1):_0x5eb3bd;if(!_0x4e62e5||_0x5eb3bd[_0xa0d215(0x1c3)]('/')||/^[A-Za-z]:\//[_0xa0d215(0x1cb)](_0x5eb3bd))throw new Error('Unsafe\x20absolute\x20ZIP\x20entry\x20path:\x20'+_0x2fdba6);const _0x489f97=_0x4e62e5['split']('/');for(const _0x29fe68 of _0x489f97){if(!_0x29fe68||_0x29fe68==='.'||_0x29fe68==='..'||_0x29fe68['endsWith']('.')||_0x29fe68[_0xa0d215(0x1dc)]('\x20')||WINDOWS_INVALID_CHAR[_0xa0d215(0x1cb)](_0x29fe68)||WINDOWS_RESERVED_NAME['test'](_0x29fe68))throw new Error(_0xa0d215(0x1c8)+_0x2fdba6);}return{'relativePath':_0x489f97[_0xa0d215(0x1d5)](a181_0x454d1e[_0xa0d215(0x1c7)]),'directory':_0x2ffb22};}function isSymbolicLink(_0x377020){const _0x393087=_0x377020['externalFileAttributes']>>>0x10&0xffff;return(_0x393087&0xf000)===0xa000;}export async function extractProjectTemplateArchive(_0x243f2b,_0x24e310){const _0x2ea0a1=a181_0x4a23,_0x191fa7=await openZip(_0x243f2b),_0xc3c523=a181_0x454d1e[_0x2ea0a1(0x1da)](_0x24e310),_0x2d5ee8=new Set(),_0x2294ed=new Map();let _0x2c1d75=0x0,_0x4d16ce=0x0;await a181_0x12c066['mkdir'](_0xc3c523,{'recursive':!![]}),await new Promise((_0x5c6ecc,_0x4aa248)=>{const _0x5630b8=_0x2ea0a1;let _0x3bed48=![];const _0x5d5acd=_0x4236dd=>{if(_0x3bed48)return;_0x3bed48=!![],_0x191fa7['close'](),_0x4aa248(_0x4236dd instanceof Error?_0x4236dd:new Error(String(_0x4236dd)));};_0x191fa7['once'](_0x5630b8(0x1be),_0x5d5acd),_0x191fa7['once'](_0x5630b8(0x1d7),()=>{if(_0x3bed48)return;_0x3bed48=!![],_0x5c6ecc();}),_0x191fa7['on'](_0x5630b8(0x1de),_0x242442=>{const _0x342a07=_0x5630b8;void(async()=>{const _0x940df4=a181_0x4a23;_0x2c1d75+=0x1,_0x4d16ce+=_0x242442[_0x940df4(0x1db)];if(_0x2c1d75>MAX_ENTRY_COUNT)throw new Error('Project\x20template\x20ZIP\x20exceeds\x20'+MAX_ENTRY_COUNT+'\x20entries.');if(_0x4d16ce>MAX_UNCOMPRESSED_SIZE)throw new Error(_0x940df4(0x1ce));if(_0x242442[_0x940df4(0x1c4)]())throw new Error(_0x940df4(0x1ca)+_0x242442[_0x940df4(0x1d2)]);if(isSymbolicLink(_0x242442))throw new Error(_0x940df4(0x1e8)+_0x242442[_0x940df4(0x1d2)]);const {relativePath:_0x7f989f,directory:_0x249a26}=validateEntryPath(_0x242442['fileName']),_0x5a3df0=_0x7f989f['split'](a181_0x454d1e['sep']);for(let _0x1ff3c4=0x1;_0x1ff3c4<=_0x5a3df0[_0x940df4(0x1cf)];_0x1ff3c4+=0x1){const _0x4e15e5=_0x5a3df0[_0x940df4(0x1bf)](0x0,_0x1ff3c4)['join'](a181_0x454d1e['sep']),_0x4395f6=_0x4e15e5[_0x940df4(0x1bd)](_0x940df4(0x1e2)),_0x500022=_0x2294ed[_0x940df4(0x1d8)](_0x4395f6);if(_0x500022&&_0x500022!==_0x4e15e5)throw new Error(_0x940df4(0x1c2)+_0x242442['fileName']);_0x2294ed[_0x940df4(0x1cc)](_0x4395f6,_0x4e15e5);}const _0x162db1=_0x7f989f[_0x940df4(0x1bd)](_0x940df4(0x1e2));if(_0x2d5ee8[_0x940df4(0x1c0)](_0x162db1))throw new Error(_0x940df4(0x1e7)+_0x242442['fileName']);_0x2d5ee8[_0x940df4(0x1cd)](_0x162db1);const _0x2b9356=a181_0x454d1e['resolve'](_0xc3c523,_0x7f989f);if(_0x2b9356!==_0xc3c523&&!_0x2b9356[_0x940df4(0x1c3)](''+_0xc3c523+a181_0x454d1e['sep']))throw new Error(_0x940df4(0x1d4)+_0x242442['fileName']);if(_0x249a26)await a181_0x12c066[_0x940df4(0x1e5)](_0x2b9356,{'recursive':!![]});else{await a181_0x12c066[_0x940df4(0x1e5)](a181_0x454d1e[_0x940df4(0x1e4)](_0x2b9356),{'recursive':!![]});const _0x510e12=await openEntryStream(_0x191fa7,_0x242442);await pipeline(_0x510e12,createWriteStream(_0x2b9356,{'flags':'wx','mode':0x1a4}));}_0x191fa7['readEntry']();})()[_0x342a07(0x1d6)](_0x5d5acd);}),_0x191fa7[_0x5630b8(0x1bc)]();});}
1
+ (function(_0x1ee677,_0x1ff692){const _0x3fae1e=a181_0x1214,_0x38307e=_0x1ee677();while(!![]){try{const _0x2b57e4=parseInt(_0x3fae1e(0x10d))/0x1+-parseInt(_0x3fae1e(0x12c))/0x2*(-parseInt(_0x3fae1e(0x11c))/0x3)+-parseInt(_0x3fae1e(0x130))/0x4+parseInt(_0x3fae1e(0x129))/0x5*(-parseInt(_0x3fae1e(0x10b))/0x6)+-parseInt(_0x3fae1e(0x117))/0x7+parseInt(_0x3fae1e(0x132))/0x8*(-parseInt(_0x3fae1e(0x133))/0x9)+parseInt(_0x3fae1e(0x121))/0xa;if(_0x2b57e4===_0x1ff692)break;else _0x38307e['push'](_0x38307e['shift']());}catch(_0x3c3fb2){_0x38307e['push'](_0x38307e['shift']());}}}(a181_0x5d66,0x43f83));function a181_0x5d66(){const _0x5a5a67=['Symbolic\x20links\x20are\x20not\x20allowed\x20in\x20project\x20templates:\x20','Case-conflicting\x20ZIP\x20entry\x20path:\x20','readEntry','sep','error','Unable\x20to\x20read\x20ZIP\x20entry:\x20','12185zVXDPb','replace','fileName','228428DZADAF','startsWith','Unsafe\x20or\x20non-portable\x20ZIP\x20entry\x20path:\x20','dirname','1992264RCEDSl','get','8NoOekU','2479239gmPnVC','\x20entries.','endsWith','Unsafe\x20absolute\x20ZIP\x20entry\x20path:\x20','1284pTtbFX','entry','145772xsgvpW','slice','open','catch','test','uncompressedSize','Project\x20template\x20ZIP\x20expands\x20beyond\x20the\x2050\x20MB\x20safety\x20limit.','Duplicate\x20or\x20case-conflicting\x20ZIP\x20entry:\x20','has','isEncrypted','659379JKtisd','once','ZIP\x20entry\x20escapes\x20the\x20destination\x20directory:\x20','add','toLocaleLowerCase','3bcQifn','openReadStream','join','resolve','en-US','14076690hlOUec','mkdir'];a181_0x5d66=function(){return _0x5a5a67;};return a181_0x5d66();}import{createWriteStream}from'node:fs';import a181_0x5b36de from'node:fs/promises';import a181_0x650c35 from'node:path';import{pipeline}from'node:stream/promises';import a181_0x52ae4f from'yauzl';const MAX_ENTRY_COUNT=0x7d0,MAX_UNCOMPRESSED_SIZE=0x32*0x400*0x400,WINDOWS_RESERVED_NAME=/^(con|prn|aux|nul|com[1-9]|lpt[1-9])(?:\..*)?$/i,WINDOWS_INVALID_CHAR=/[<>:"|?*\x00-\x1f]/;function openZip(_0x4ccaf3){return new Promise((_0x13e34c,_0x36cf23)=>{const _0xc7d969=a181_0x1214;a181_0x52ae4f[_0xc7d969(0x10f)](_0x4ccaf3,{'lazyEntries':!![],'decodeStrings':!![],'strictFileNames':!![],'validateEntrySizes':!![]},(_0x2639d3,_0x4aba86)=>{if(_0x2639d3||!_0x4aba86){_0x36cf23(_0x2639d3||new Error('Unable\x20to\x20open\x20project\x20template\x20archive.'));return;}_0x13e34c(_0x4aba86);});});}function openEntryStream(_0x2457f4,_0x5267db){return new Promise((_0x29fa5a,_0x40fb52)=>{const _0x410ce3=a181_0x1214;_0x2457f4[_0x410ce3(0x11d)](_0x5267db,(_0x135cfd,_0x3c6f15)=>{const _0x3a612d=_0x410ce3;if(_0x135cfd||!_0x3c6f15){_0x40fb52(_0x135cfd||new Error(_0x3a612d(0x128)+_0x5267db[_0x3a612d(0x12b)]));return;}_0x29fa5a(_0x3c6f15);});});}function validateEntryPath(_0x430334){const _0x3b2a14=a181_0x1214,_0x3fe09f=_0x430334[_0x3b2a14(0x12a)](/\\/g,'/'),_0x43cb5f=_0x3fe09f[_0x3b2a14(0x135)]('/'),_0x51c10d=_0x43cb5f?_0x3fe09f[_0x3b2a14(0x10e)](0x0,-0x1):_0x3fe09f;if(!_0x51c10d||_0x3fe09f[_0x3b2a14(0x12d)]('/')||/^[A-Za-z]:\//[_0x3b2a14(0x111)](_0x3fe09f))throw new Error(_0x3b2a14(0x10a)+_0x430334);const _0x59d9d1=_0x51c10d['split']('/');for(const _0x15eeda of _0x59d9d1){if(!_0x15eeda||_0x15eeda==='.'||_0x15eeda==='..'||_0x15eeda['endsWith']('.')||_0x15eeda['endsWith']('\x20')||WINDOWS_INVALID_CHAR[_0x3b2a14(0x111)](_0x15eeda)||WINDOWS_RESERVED_NAME[_0x3b2a14(0x111)](_0x15eeda))throw new Error(_0x3b2a14(0x12e)+_0x430334);}return{'relativePath':_0x59d9d1['join'](a181_0x650c35[_0x3b2a14(0x126)]),'directory':_0x43cb5f};}function isSymbolicLink(_0x2536ee){const _0x4bcb46=_0x2536ee['externalFileAttributes']>>>0x10&0xffff;return(_0x4bcb46&0xf000)===0xa000;}function a181_0x1214(_0x8bc417,_0x5d009e){_0x8bc417=_0x8bc417-0x10a;const _0x5d66d5=a181_0x5d66();let _0x12143c=_0x5d66d5[_0x8bc417];return _0x12143c;}export async function extractProjectTemplateArchive(_0x5d15c3,_0x33ef58){const _0x27ac67=a181_0x1214,_0x14a56b=await openZip(_0x5d15c3),_0x2ff944=a181_0x650c35[_0x27ac67(0x11f)](_0x33ef58),_0x2994bd=new Set(),_0x1f2cae=new Map();let _0x1d737a=0x0,_0x1a56ca=0x0;await a181_0x5b36de['mkdir'](_0x2ff944,{'recursive':!![]}),await new Promise((_0xf4ccd9,_0x55dcc2)=>{const _0x134928=_0x27ac67;let _0x33ffd9=![];const _0x4089af=_0x51a927=>{if(_0x33ffd9)return;_0x33ffd9=!![],_0x14a56b['close'](),_0x55dcc2(_0x51a927 instanceof Error?_0x51a927:new Error(String(_0x51a927)));};_0x14a56b[_0x134928(0x118)](_0x134928(0x127),_0x4089af),_0x14a56b[_0x134928(0x118)]('end',()=>{if(_0x33ffd9)return;_0x33ffd9=!![],_0xf4ccd9();}),_0x14a56b['on'](_0x134928(0x10c),_0x576939=>{const _0x27c4e1=_0x134928;void(async()=>{const _0x819580=a181_0x1214;_0x1d737a+=0x1,_0x1a56ca+=_0x576939[_0x819580(0x112)];if(_0x1d737a>MAX_ENTRY_COUNT)throw new Error('Project\x20template\x20ZIP\x20exceeds\x20'+MAX_ENTRY_COUNT+_0x819580(0x134));if(_0x1a56ca>MAX_UNCOMPRESSED_SIZE)throw new Error(_0x819580(0x113));if(_0x576939[_0x819580(0x116)]())throw new Error('Encrypted\x20ZIP\x20entries\x20are\x20not\x20supported:\x20'+_0x576939[_0x819580(0x12b)]);if(isSymbolicLink(_0x576939))throw new Error(_0x819580(0x123)+_0x576939['fileName']);const {relativePath:_0x15678e,directory:_0x763cbe}=validateEntryPath(_0x576939[_0x819580(0x12b)]),_0xdcb100=_0x15678e['split'](a181_0x650c35[_0x819580(0x126)]);for(let _0x3ef60d=0x1;_0x3ef60d<=_0xdcb100['length'];_0x3ef60d+=0x1){const _0x3ad4b6=_0xdcb100[_0x819580(0x10e)](0x0,_0x3ef60d)[_0x819580(0x11e)](a181_0x650c35[_0x819580(0x126)]),_0x6cf111=_0x3ad4b6['toLocaleLowerCase'](_0x819580(0x120)),_0x3bbdf0=_0x1f2cae[_0x819580(0x131)](_0x6cf111);if(_0x3bbdf0&&_0x3bbdf0!==_0x3ad4b6)throw new Error(_0x819580(0x124)+_0x576939[_0x819580(0x12b)]);_0x1f2cae['set'](_0x6cf111,_0x3ad4b6);}const _0x1ee9d6=_0x15678e[_0x819580(0x11b)](_0x819580(0x120));if(_0x2994bd[_0x819580(0x115)](_0x1ee9d6))throw new Error(_0x819580(0x114)+_0x576939[_0x819580(0x12b)]);_0x2994bd[_0x819580(0x11a)](_0x1ee9d6);const _0x543054=a181_0x650c35[_0x819580(0x11f)](_0x2ff944,_0x15678e);if(_0x543054!==_0x2ff944&&!_0x543054[_0x819580(0x12d)](''+_0x2ff944+a181_0x650c35[_0x819580(0x126)]))throw new Error(_0x819580(0x119)+_0x576939[_0x819580(0x12b)]);if(_0x763cbe)await a181_0x5b36de[_0x819580(0x122)](_0x543054,{'recursive':!![]});else{await a181_0x5b36de[_0x819580(0x122)](a181_0x650c35[_0x819580(0x12f)](_0x543054),{'recursive':!![]});const _0x20ada5=await openEntryStream(_0x14a56b,_0x576939);await pipeline(_0x20ada5,createWriteStream(_0x543054,{'flags':'wx','mode':0x1a4}));}_0x14a56b[_0x819580(0x125)]();})()[_0x27c4e1(0x110)](_0x4089af);}),_0x14a56b[_0x134928(0x125)]();});}
@@ -1 +1 @@
1
- const a182_0x51e20f=a182_0xa14c;(function(_0x1ffa41,_0x20ff9d){const _0x4bfa8a=a182_0xa14c,_0x1d26c1=_0x1ffa41();while(!![]){try{const _0x13fca8=-parseInt(_0x4bfa8a(0x99))/0x1+-parseInt(_0x4bfa8a(0x9e))/0x2*(parseInt(_0x4bfa8a(0x9a))/0x3)+-parseInt(_0x4bfa8a(0xa2))/0x4*(parseInt(_0x4bfa8a(0x9b))/0x5)+-parseInt(_0x4bfa8a(0x9d))/0x6+parseInt(_0x4bfa8a(0xa0))/0x7+-parseInt(_0x4bfa8a(0x97))/0x8*(-parseInt(_0x4bfa8a(0xa1))/0x9)+parseInt(_0x4bfa8a(0x9f))/0xa;if(_0x13fca8===_0x20ff9d)break;else _0x1d26c1['push'](_0x1d26c1['shift']());}catch(_0x5da58a){_0x1d26c1['push'](_0x1d26c1['shift']());}}}(a182_0x2430,0x40df7));import a182_0x195ce1 from'node:path';function a182_0x2430(){const _0x38e967=['2564364ksswOc','18nfjVdL','12130290HNBdXV','1102528iazuPj','234pBVNKA','8edyyTx','35816GFPbEp','resolve','2077EQFnrR','154719cVMmFD','818970BQdmqn','dirname'];a182_0x2430=function(){return _0x38e967;};return a182_0x2430();}import{fileURLToPath}from'node:url';const __dirname=a182_0x195ce1[a182_0x51e20f(0x9c)](fileURLToPath(import.meta.url));function a182_0xa14c(_0x1c4d76,_0x3ad063){_0x1c4d76=_0x1c4d76-0x97;const _0x24308e=a182_0x2430();let _0xa14c07=_0x24308e[_0x1c4d76];return _0xa14c07;}export function getRabetbaseCliPackageRoot(){const _0x2d5a4f=a182_0x51e20f;return a182_0x195ce1[_0x2d5a4f(0x98)](__dirname,'../../../../');}
1
+ const a182_0x2d1728=a182_0x230c;function a182_0x230c(_0x44da5e,_0x705e9a){_0x44da5e=_0x44da5e-0xb1;const _0x5156e8=a182_0x5156();let _0x230c52=_0x5156e8[_0x44da5e];return _0x230c52;}(function(_0x5d4068,_0x1998ce){const _0x553ba4=a182_0x230c,_0x5dbba0=_0x5d4068();while(!![]){try{const _0x3fa045=parseInt(_0x553ba4(0xb4))/0x1*(parseInt(_0x553ba4(0xb9))/0x2)+-parseInt(_0x553ba4(0xb3))/0x3+-parseInt(_0x553ba4(0xb5))/0x4+parseInt(_0x553ba4(0xba))/0x5*(-parseInt(_0x553ba4(0xb1))/0x6)+parseInt(_0x553ba4(0xb8))/0x7*(parseInt(_0x553ba4(0xb6))/0x8)+parseInt(_0x553ba4(0xbc))/0x9+parseInt(_0x553ba4(0xb2))/0xa;if(_0x3fa045===_0x1998ce)break;else _0x5dbba0['push'](_0x5dbba0['shift']());}catch(_0xa117ed){_0x5dbba0['push'](_0x5dbba0['shift']());}}}(a182_0x5156,0xb1374));import a182_0x2c0565 from'node:path';import{fileURLToPath}from'node:url';const __dirname=a182_0x2c0565[a182_0x2d1728(0xbb)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x5185a6=a182_0x2d1728;return a182_0x2c0565[_0x5185a6(0xb7)](__dirname,'../../../../');}function a182_0x5156(){const _0x2eeb02=['3535479vIXcob','1VmbDhh','2365704klEZvf','5326040qXuQuM','resolve','7QFuHJx','1407930ilFIYp','174080hVkoie','dirname','8763543PSuHkZ','180JZbYvq','11968280AKoAkT'];a182_0x5156=function(){return _0x2eeb02;};return a182_0x5156();}
@@ -1 +1 @@
1
- (function(_0x488e9f,_0x208742){const _0x510fe1=a183_0x2e65,_0x3cc116=_0x488e9f();while(!![]){try{const _0x57dd04=parseInt(_0x510fe1(0x1d4))/0x1+-parseInt(_0x510fe1(0x1d5))/0x2+-parseInt(_0x510fe1(0x1cb))/0x3*(-parseInt(_0x510fe1(0x1c4))/0x4)+parseInt(_0x510fe1(0x1ce))/0x5+-parseInt(_0x510fe1(0x1c7))/0x6*(parseInt(_0x510fe1(0x1c8))/0x7)+parseInt(_0x510fe1(0x1cc))/0x8+parseInt(_0x510fe1(0x1d2))/0x9*(-parseInt(_0x510fe1(0x1ca))/0xa);if(_0x57dd04===_0x208742)break;else _0x3cc116['push'](_0x3cc116['shift']());}catch(_0x40f9de){_0x3cc116['push'](_0x3cc116['shift']());}}}(a183_0x11a5,0x27654));import a183_0x4d3a30 from'node:path';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a183_0x2e65(_0x3900cb,_0x530a7c){_0x3900cb=_0x3900cb-0x1c4;const _0x11a551=a183_0x11a5();let _0x2e6517=_0x11a551[_0x3900cb];return _0x2e6517;}import{logger}from'../../../utils/logger.js';import{materializeLocalProjectTemplate,materializeProjectTemplate}from'../../../commands/project/create/materialize-project-template.js';export async function copyProjectTemplate(_0x49642b,_0x47aa27,_0x3d59a8){const _0x5804c3=a183_0x2e65,_0x393419=Date[_0x5804c3(0x1cd)](),_0x19a239=a183_0x4d3a30['resolve'](process[_0x5804c3(0x1d7)](),_0x49642b);try{logger[_0x5804c3(0x1c5)](_0x5804c3(0x1cf),_0x5804c3(0x1d1),{'projectCode':_0x49642b});const _0x416e85=_0x3d59a8?await materializeLocalProjectTemplate(_0x3d59a8,_0x19a239,_0x47aa27):await materializeProjectTemplate(_0x19a239,_0x47aa27),_0x2e915c=Date[_0x5804c3(0x1cd)]()-_0x393419;logger[_0x5804c3(0x1c6)]('copy',_0x5804c3(0x1c9),_0x2e915c,{'projectCode':_0x49642b,'templateSource':_0x416e85[_0x5804c3(0x1d0)],'templateVersion':_0x416e85[_0x5804c3(0x1d6)]});}catch(_0x4b97d9){const _0xf7c2f4=Date[_0x5804c3(0x1cd)]()-_0x393419;logger[_0x5804c3(0x1d3)]('copy','Failed\x20to\x20copy\x20project\x20template',{'projectCode':_0x49642b,'error':_0x4b97d9 instanceof Error?_0x4b97d9['message']:String(_0x4b97d9),'duration':_0xf7c2f4});throw _0x4b97d9;}return formatElapsed(_0x393419);}function a183_0x11a5(){const _0x4b0bd9=['211539tAiMJQ','619752KOzhys','now','139195DJyesK','copy','source','Starting\x20project\x20template\x20creation','927pnULah','error','261908hEMvdr','419660FgzhTj','version','cwd','16PPaMkh','info','success','192THpjyH','41587BukZPp','Project\x20template\x20created','8540JBXVTy'];a183_0x11a5=function(){return _0x4b0bd9;};return a183_0x11a5();}
1
+ (function(_0x31e970,_0x8eca12){const _0x2f4e82=a183_0xa45b,_0x927fdf=_0x31e970();while(!![]){try{const _0x36a29b=-parseInt(_0x2f4e82(0x194))/0x1+parseInt(_0x2f4e82(0x198))/0x2*(-parseInt(_0x2f4e82(0x1a4))/0x3)+parseInt(_0x2f4e82(0x19e))/0x4+parseInt(_0x2f4e82(0x193))/0x5*(parseInt(_0x2f4e82(0x195))/0x6)+-parseInt(_0x2f4e82(0x19a))/0x7*(-parseInt(_0x2f4e82(0x1a1))/0x8)+-parseInt(_0x2f4e82(0x19d))/0x9*(parseInt(_0x2f4e82(0x19c))/0xa)+-parseInt(_0x2f4e82(0x1a3))/0xb*(-parseInt(_0x2f4e82(0x199))/0xc);if(_0x36a29b===_0x8eca12)break;else _0x927fdf['push'](_0x927fdf['shift']());}catch(_0x4aed6f){_0x927fdf['push'](_0x927fdf['shift']());}}}(a183_0x4e3f,0xdca22));function a183_0xa45b(_0x3817d8,_0x2be57b){_0x3817d8=_0x3817d8-0x191;const _0x4e3f88=a183_0x4e3f();let _0xa45b1e=_0x4e3f88[_0x3817d8];return _0xa45b1e;}import a183_0x14b867 from'node:path';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{materializeLocalProjectTemplate,materializeProjectTemplate}from'../../../commands/project/create/materialize-project-template.js';function a183_0x4e3f(){const _0x297378=['8689608qrFxVU','3464060rSPoxv','Failed\x20to\x20copy\x20project\x20template','copy','48dIyyMP','resolve','4038639endWqm','1174224aiFnnt','now','message','error','312940BruaAL','350136FEJCJQ','54RXLUaM','info','success','8NWvLYK','60xsywkz','606599xvOane','Starting\x20project\x20template\x20creation','10NGGVPq'];a183_0x4e3f=function(){return _0x297378;};return a183_0x4e3f();}export async function copyProjectTemplate(_0x4212e8,_0x56508f,_0x108b01){const _0x46a32a=a183_0xa45b,_0x5299a5=Date[_0x46a32a(0x1a5)](),_0x323bd0=a183_0x14b867[_0x46a32a(0x1a2)](process['cwd'](),_0x4212e8);try{logger[_0x46a32a(0x196)](_0x46a32a(0x1a0),_0x46a32a(0x19b),{'projectCode':_0x4212e8});const _0x56760a=_0x108b01?await materializeLocalProjectTemplate(_0x108b01,_0x323bd0,_0x56508f):await materializeProjectTemplate(_0x323bd0,_0x56508f),_0x25b24c=Date[_0x46a32a(0x1a5)]()-_0x5299a5;logger[_0x46a32a(0x197)](_0x46a32a(0x1a0),'Project\x20template\x20created',_0x25b24c,{'projectCode':_0x4212e8,'templateSource':_0x56760a['source'],'templateVersion':_0x56760a['version']});}catch(_0x3e9476){const _0x5bf2a2=Date[_0x46a32a(0x1a5)]()-_0x5299a5;logger[_0x46a32a(0x192)](_0x46a32a(0x1a0),_0x46a32a(0x19f),{'projectCode':_0x4212e8,'error':_0x3e9476 instanceof Error?_0x3e9476[_0x46a32a(0x191)]:String(_0x3e9476),'duration':_0x5bf2a2});throw _0x3e9476;}return formatElapsed(_0x5299a5);}
@@ -1 +1 @@
1
- (function(_0x40709a,_0x516fc5){const _0x2a4be8=a184_0x58d5,_0xe24f=_0x40709a();while(!![]){try{const _0x29e938=parseInt(_0x2a4be8(0x167))/0x1*(-parseInt(_0x2a4be8(0x16a))/0x2)+-parseInt(_0x2a4be8(0x170))/0x3+parseInt(_0x2a4be8(0x173))/0x4*(-parseInt(_0x2a4be8(0x16f))/0x5)+parseInt(_0x2a4be8(0x161))/0x6*(-parseInt(_0x2a4be8(0x171))/0x7)+parseInt(_0x2a4be8(0x15f))/0x8*(-parseInt(_0x2a4be8(0x172))/0x9)+-parseInt(_0x2a4be8(0x163))/0xa*(-parseInt(_0x2a4be8(0x162))/0xb)+-parseInt(_0x2a4be8(0x16b))/0xc*(-parseInt(_0x2a4be8(0x16e))/0xd);if(_0x29e938===_0x516fc5)break;else _0xe24f['push'](_0xe24f['shift']());}catch(_0xd8dc85){_0xe24f['push'](_0xe24f['shift']());}}}(a184_0x3219,0xf3807));import a184_0x38e485 from'node:path';import{execa}from'execa';function a184_0x58d5(_0x33e660,_0x5848a6){_0x33e660=_0x33e660-0x15f;const _0x321919=a184_0x3219();let _0x58d55c=_0x321919[_0x33e660];return _0x58d55c;}function a184_0x3219(){const _0x27e4b8=['success','7799496CYUkKh','20222213uadvXK','10bMIByB','Starting\x20code\x20format','info','prettier','2965CVXJBy','format','now','2LAGnPM','188376weVcfE','error','message','3081ksMdou','559585EFHHQI','3972051sOFHTj','7EGuIdu','334701GqwDuO','8KwlgJZ','Code\x20format\x20failed','Code\x20format\x20completed','368tLDEob'];a184_0x3219=function(){return _0x27e4b8;};return a184_0x3219();}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x5efbc3){const _0x2669ab=a184_0x58d5,_0x594941=Date['now'](),_0x5c873f=a184_0x38e485['resolve'](process['cwd'](),_0x5efbc3);try{logger[_0x2669ab(0x165)](_0x2669ab(0x168),_0x2669ab(0x164),{'projectCode':_0x5efbc3}),await execa(resolveNpmBin('npx'),[_0x2669ab(0x166),'--write','.'],{'cwd':_0x5c873f});const _0x579562=Date[_0x2669ab(0x169)]()-_0x594941;logger[_0x2669ab(0x160)](_0x2669ab(0x168),_0x2669ab(0x175),_0x579562,{'projectCode':_0x5efbc3});}catch(_0x58eef9){const _0x180864=Date[_0x2669ab(0x169)]()-_0x594941;logger[_0x2669ab(0x16c)]('format',_0x2669ab(0x174),{'projectCode':_0x5efbc3,'error':_0x58eef9 instanceof Error?_0x58eef9[_0x2669ab(0x16d)]:String(_0x58eef9),'duration':_0x180864});throw _0x58eef9;}return formatElapsed(_0x594941);}
1
+ function a184_0x350e(_0x2b7f81,_0x3e15c7){_0x2b7f81=_0x2b7f81-0x118;const _0x56786c=a184_0x5678();let _0x350e8b=_0x56786c[_0x2b7f81];return _0x350e8b;}(function(_0x171942,_0x2167a3){const _0x158c1d=a184_0x350e,_0x193788=_0x171942();while(!![]){try{const _0x3ba0c5=parseInt(_0x158c1d(0x11c))/0x1*(-parseInt(_0x158c1d(0x11a))/0x2)+parseInt(_0x158c1d(0x125))/0x3*(parseInt(_0x158c1d(0x128))/0x4)+parseInt(_0x158c1d(0x12a))/0x5+-parseInt(_0x158c1d(0x118))/0x6+parseInt(_0x158c1d(0x126))/0x7+-parseInt(_0x158c1d(0x11e))/0x8*(-parseInt(_0x158c1d(0x12f))/0x9)+-parseInt(_0x158c1d(0x12b))/0xa;if(_0x3ba0c5===_0x2167a3)break;else _0x193788['push'](_0x193788['shift']());}catch(_0x37645d){_0x193788['push'](_0x193788['shift']());}}}(a184_0x5678,0x27803));import a184_0x36c381 from'node:path';import{execa}from'execa';function a184_0x5678(){const _0x3ebd38=['Code\x20format\x20completed','success','Code\x20format\x20failed','--write','11505rfpeUN','1895495npjqFV','prettier','196gKLfve','message','350515vgSQoh','2176380bkiGeS','now','Starting\x20code\x20format','cwd','171PQMCgz','1363950yVChyE','npx','69352QOmqQk','format','2oFTucd','info','62024CjGFyG','resolve','error'];a184_0x5678=function(){return _0x3ebd38;};return a184_0x5678();}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x827d26){const _0x229878=a184_0x350e,_0x530b4f=Date[_0x229878(0x12c)](),_0x395509=a184_0x36c381[_0x229878(0x11f)](process[_0x229878(0x12e)](),_0x827d26);try{logger[_0x229878(0x11d)](_0x229878(0x11b),_0x229878(0x12d),{'projectCode':_0x827d26}),await execa(resolveNpmBin(_0x229878(0x119)),[_0x229878(0x127),_0x229878(0x124),'.'],{'cwd':_0x395509});const _0x20e022=Date[_0x229878(0x12c)]()-_0x530b4f;logger[_0x229878(0x122)](_0x229878(0x11b),_0x229878(0x121),_0x20e022,{'projectCode':_0x827d26});}catch(_0x4516ce){const _0x543164=Date[_0x229878(0x12c)]()-_0x530b4f;logger[_0x229878(0x120)](_0x229878(0x11b),_0x229878(0x123),{'projectCode':_0x827d26,'error':_0x4516ce instanceof Error?_0x4516ce[_0x229878(0x129)]:String(_0x4516ce),'duration':_0x543164});throw _0x4516ce;}return formatElapsed(_0x530b4f);}
@@ -1 +1 @@
1
- (function(_0x95fcf1,_0x5c7ed7){const _0x4c0c73=a185_0x3847,_0x21322d=_0x95fcf1();while(!![]){try{const _0x1f2cb5=-parseInt(_0x4c0c73(0x113))/0x1+-parseInt(_0x4c0c73(0x110))/0x2*(-parseInt(_0x4c0c73(0x112))/0x3)+parseInt(_0x4c0c73(0x115))/0x4*(-parseInt(_0x4c0c73(0x10e))/0x5)+parseInt(_0x4c0c73(0x10f))/0x6+-parseInt(_0x4c0c73(0x107))/0x7+-parseInt(_0x4c0c73(0x10a))/0x8+parseInt(_0x4c0c73(0x105))/0x9;if(_0x1f2cb5===_0x5c7ed7)break;else _0x21322d['push'](_0x21322d['shift']());}catch(_0x5d44ca){_0x21322d['push'](_0x21322d['shift']());}}}(a185_0xa7c3,0x6f743));import a185_0x174d75 from'node:path';import{execa}from'execa';function a185_0x3847(_0x3bc489,_0x2c0026){_0x3bc489=_0x3bc489-0x105;const _0xa7c316=a185_0xa7c3();let _0x384774=_0xa7c316[_0x3bc489];return _0x384774;}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a185_0xa7c3(){const _0x7b1c1d=['Starting\x20dependency\x20install','error','15003045MeTFAQ','message','3737433hMIzWo','--registry','resolve','2798536pWkGwg','install','https://registry.npmmirror.com','npm','60CGRJvG','4870170vpYGQv','262vWkuZD','now','1110rNORqk','897167uajEdI','Dependency\x20install\x20completed','96584gKbeKM'];a185_0xa7c3=function(){return _0x7b1c1d;};return a185_0xa7c3();}import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x148135){const _0x3f2755=a185_0x3847,_0x379d68=Date[_0x3f2755(0x111)](),_0x55ef5e=a185_0x174d75[_0x3f2755(0x109)](process['cwd'](),_0x148135);try{logger['info']('install',_0x3f2755(0x116),{'projectCode':_0x148135,'registry':_0x3f2755(0x10c)}),await execa(resolveNpmBin(_0x3f2755(0x10d)),['install',_0x3f2755(0x108),'https://registry.npmmirror.com'],{'cwd':_0x55ef5e});const _0xa11be4=Date[_0x3f2755(0x111)]()-_0x379d68;logger['success'](_0x3f2755(0x10b),_0x3f2755(0x114),_0xa11be4,{'projectCode':_0x148135});}catch(_0x4561b3){const _0xcf34a1=Date[_0x3f2755(0x111)]()-_0x379d68;logger[_0x3f2755(0x117)](_0x3f2755(0x10b),'Dependency\x20install\x20failed',{'projectCode':_0x148135,'error':_0x4561b3 instanceof Error?_0x4561b3[_0x3f2755(0x106)]:String(_0x4561b3),'duration':_0xcf34a1});throw _0x4561b3;}return formatElapsed(_0x379d68);}
1
+ (function(_0x1a323f,_0x157205){const _0x4099fb=a185_0x3f72,_0x1ad27c=_0x1a323f();while(!![]){try{const _0xe74247=parseInt(_0x4099fb(0x1d2))/0x1*(parseInt(_0x4099fb(0x1c7))/0x2)+parseInt(_0x4099fb(0x1ca))/0x3+-parseInt(_0x4099fb(0x1c9))/0x4*(parseInt(_0x4099fb(0x1c8))/0x5)+parseInt(_0x4099fb(0x1d1))/0x6*(parseInt(_0x4099fb(0x1d0))/0x7)+parseInt(_0x4099fb(0x1bf))/0x8*(-parseInt(_0x4099fb(0x1c2))/0x9)+parseInt(_0x4099fb(0x1cc))/0xa*(-parseInt(_0x4099fb(0x1d4))/0xb)+-parseInt(_0x4099fb(0x1c6))/0xc;if(_0xe74247===_0x157205)break;else _0x1ad27c['push'](_0x1ad27c['shift']());}catch(_0x56dcb7){_0x1ad27c['push'](_0x1ad27c['shift']());}}}(a185_0x326f,0x85d10));import a185_0x239dfe from'node:path';function a185_0x3f72(_0x5e857f,_0x18b2d9){_0x5e857f=_0x5e857f-0x1bf;const _0x326fd7=a185_0x326f();let _0x3f72c7=_0x326fd7[_0x5e857f];return _0x3f72c7;}import{execa}from'execa';function a185_0x326f(){const _0x54321f=['success','1153356RzHfxk','36838nWhfcS','15cBYnoy','1109368fupLgY','2676033kJEelW','resolve','383730BpHpaT','cwd','info','https://registry.npmmirror.com','3614366RfmtOH','6ekYilQ','42IUcedv','Dependency\x20install\x20completed','66EbSsyA','48RBXgzl','now','install','713187regsPF','npm','error'];a185_0x326f=function(){return _0x54321f;};return a185_0x326f();}import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x144b87){const _0x49637f=a185_0x3f72,_0x4c0298=Date[_0x49637f(0x1c0)](),_0x7833ce=a185_0x239dfe[_0x49637f(0x1cb)](process[_0x49637f(0x1cd)](),_0x144b87);try{logger[_0x49637f(0x1ce)]('install','Starting\x20dependency\x20install',{'projectCode':_0x144b87,'registry':_0x49637f(0x1cf)}),await execa(resolveNpmBin(_0x49637f(0x1c3)),['install','--registry',_0x49637f(0x1cf)],{'cwd':_0x7833ce});const _0xe2aff9=Date[_0x49637f(0x1c0)]()-_0x4c0298;logger[_0x49637f(0x1c5)](_0x49637f(0x1c1),_0x49637f(0x1d3),_0xe2aff9,{'projectCode':_0x144b87});}catch(_0x1b3efc){const _0x18716b=Date[_0x49637f(0x1c0)]()-_0x4c0298;logger[_0x49637f(0x1c4)](_0x49637f(0x1c1),'Dependency\x20install\x20failed',{'projectCode':_0x144b87,'error':_0x1b3efc instanceof Error?_0x1b3efc['message']:String(_0x1b3efc),'duration':_0x18716b});throw _0x1b3efc;}return formatElapsed(_0x4c0298);}
@@ -1 +1 @@
1
- function a186_0x3835(){const _0x18e6b4=['684NCgqtm','path','\x20workspace\x20init\x20--appcode\x20<code>\x20in\x20the\x20project\x20directory\x20first.','1946035WCvRIs','24690400nqTOax','project','Domain\x20routing\x20synchronized:\x20','Synchronize\x20the\x20current\x20project\x27s\x20public\x20Domain\x20routing','No\x20Rabetbase\x20project\x20configuration\x20was\x20found.','45078iYEyGr','3714560QHsoxs','1288896VqAdYr','2428601uAhQwV','11034fKeLRX'];a186_0x3835=function(){return _0x18e6b4;};return a186_0x3835();}const a186_0xf76ae1=a186_0x5dfd;(function(_0x1c45cc,_0x2386de){const _0x37f8cd=a186_0x5dfd,_0x4f5154=_0x1c45cc();while(!![]){try{const _0x2dcd70=-parseInt(_0x37f8cd(0xfe))/0x1+parseInt(_0x37f8cd(0x100))/0x2*(-parseInt(_0x37f8cd(0x101))/0x3)+parseInt(_0x37f8cd(0xfd))/0x4+-parseInt(_0x37f8cd(0x104))/0x5+-parseInt(_0x37f8cd(0xfc))/0x6+-parseInt(_0x37f8cd(0xff))/0x7+parseInt(_0x37f8cd(0x105))/0x8;if(_0x2dcd70===_0x2386de)break;else _0x4f5154['push'](_0x4f5154['shift']());}catch(_0x25a5b2){_0x4f5154['push'](_0x4f5154['shift']());}}}(a186_0x3835,0xb0e19));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{findProjectRootDirectory,resolveConfigPath}from'../../context/config-loader.js';function a186_0x5dfd(_0x134338,_0x19225b){_0x134338=_0x134338-0xfa;const _0x3835e0=a186_0x3835();let _0x5dfd54=_0x3835e0[_0x134338];return _0x5dfd54;}import{writeProjectDomainRoutingManifest}from'../../config/project-domain-routing.js';export const projectDomainRoutingSyncDefinition={'service':a186_0xf76ae1(0x106),'command':'domain-routing-sync','description':a186_0xf76ae1(0xfa),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':[],async 'execute'(){const _0x41ac3f=a186_0xf76ae1,_0x326d07=findProjectRootDirectory();if(!resolveConfigPath(_0x326d07))throw CliErrors['validation'](_0x41ac3f(0xfb),'Run\x20'+CLI_BIN_NAME+_0x41ac3f(0x103));const _0x1c4ced=writeProjectDomainRoutingManifest(_0x326d07);return{'ok':!![],'message':_0x41ac3f(0x107)+_0x1c4ced[_0x41ac3f(0x102)],'data':_0x1c4ced};}};
1
+ const a186_0x20ae44=a186_0x5154;(function(_0x2762fb,_0x3872cd){const _0x58b1a9=a186_0x5154,_0x3adf52=_0x2762fb();while(!![]){try{const _0x1125d6=-parseInt(_0x58b1a9(0x160))/0x1*(-parseInt(_0x58b1a9(0x15f))/0x2)+parseInt(_0x58b1a9(0x168))/0x3*(parseInt(_0x58b1a9(0x159))/0x4)+-parseInt(_0x58b1a9(0x15a))/0x5*(parseInt(_0x58b1a9(0x156))/0x6)+-parseInt(_0x58b1a9(0x161))/0x7*(parseInt(_0x58b1a9(0x155))/0x8)+parseInt(_0x58b1a9(0x163))/0x9+-parseInt(_0x58b1a9(0x15d))/0xa*(-parseInt(_0x58b1a9(0x158))/0xb)+-parseInt(_0x58b1a9(0x167))/0xc;if(_0x1125d6===_0x3872cd)break;else _0x3adf52['push'](_0x3adf52['shift']());}catch(_0x124a27){_0x3adf52['push'](_0x3adf52['shift']());}}}(a186_0x3a77,0xd5f12));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a186_0x5154(_0x45bcd4,_0x19f614){_0x45bcd4=_0x45bcd4-0x155;const _0x3a7797=a186_0x3a77();let _0x5154e1=_0x3a7797[_0x45bcd4];return _0x5154e1;}function a186_0x3a77(){const _0x3c7f4b=['\x20workspace\x20init\x20--appcode\x20<code>\x20in\x20the\x20project\x20directory\x20first.','project','validation','22243956WnxeXY','9qCeXeN','165576jEewnQ','566178IwwebX','No\x20Rabetbase\x20project\x20configuration\x20was\x20found.','25993auvNPM','1535604hsUUGJ','65URhqcJ','read','Domain\x20routing\x20synchronized:\x20','3620oUEuAy','domain-routing-sync','86126AsxAWp','23KXWHaF','7WlZupK','Synchronize\x20the\x20current\x20project\x27s\x20public\x20Domain\x20routing','8818443wjttQt'];a186_0x3a77=function(){return _0x3c7f4b;};return a186_0x3a77();}import{findProjectRootDirectory,resolveConfigPath}from'../../context/config-loader.js';import{writeProjectDomainRoutingManifest}from'../../config/project-domain-routing.js';export const projectDomainRoutingSyncDefinition={'service':a186_0x20ae44(0x165),'command':a186_0x20ae44(0x15e),'description':a186_0x20ae44(0x162),'risk':a186_0x20ae44(0x15b),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':[],async 'execute'(){const _0x257963=a186_0x20ae44,_0x3d3eae=findProjectRootDirectory();if(!resolveConfigPath(_0x3d3eae))throw CliErrors[_0x257963(0x166)](_0x257963(0x157),'Run\x20'+CLI_BIN_NAME+_0x257963(0x164));const _0x3bafb2=writeProjectDomainRoutingManifest(_0x3d3eae);return{'ok':!![],'message':_0x257963(0x15c)+_0x3bafb2['path'],'data':_0x3bafb2};}};
@@ -1 +1 @@
1
- const a187_0x4589ab=a187_0xd6af;function a187_0xd6af(_0x1cf053,_0x564856){_0x1cf053=_0x1cf053-0x8a;const _0x130e6b=a187_0x130e();let _0xd6afc9=_0x130e6b[_0x1cf053];return _0xd6afc9;}function a187_0x130e(){const _0x19ffd0=['763504Dtksvs','11244933ZWrZqQ','186925YdeQcl','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','upgrade','Initialize\x20the\x20current\x20empty\x20directory\x20instead\x20of\x20creating\x20a\x20child\x20directory','1749099mjwXCG','Create\x20a\x20new\x20project','Skip\x20confirmation\x20prompt','bool','project','str','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]\x20or\x20','7FomNKe','string','create','args','nonInteractive','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]\x20from\x20the\x20empty\x20target\x20directory.','2233368PanXGi','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','template-source','write','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','trim','Run\x20','Prepared\x20local\x20project\x20template\x20directory','5eDofkF','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','Target\x20environment','Usage:\x20','--current-dir\x20cannot\x20be\x20combined\x20with\x20a\x20project\x20name.','4142802scYrvm','env','appcode','validation','yes','257876JwiCaD'];a187_0x130e=function(){return _0x19ffd0;};return a187_0x130e();}(function(_0x120e81,_0x23f800){const _0x121d63=a187_0xd6af,_0x1aa0b9=_0x120e81();while(!![]){try{const _0x1b6c5b=parseInt(_0x121d63(0xae))/0x1+parseInt(_0x121d63(0xac))/0x2+parseInt(_0x121d63(0x8b))/0x3+parseInt(_0x121d63(0xab))/0x4*(parseInt(_0x121d63(0xa1))/0x5)+parseInt(_0x121d63(0xa6))/0x6*(parseInt(_0x121d63(0x92))/0x7)+-parseInt(_0x121d63(0x98))/0x8+-parseInt(_0x121d63(0xad))/0x9;if(_0x1b6c5b===_0x23f800)break;else _0x1aa0b9['push'](_0x1aa0b9['shift']());}catch(_0xa547c7){_0x1aa0b9['push'](_0x1aa0b9['shift']());}}}(a187_0x130e,0x5c4b6));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{upgradeApp}from'../../commands/project/upgrade.js';import{projectDomainRoutingSyncDefinition}from'../../commands/project/domain-routing-sync.js';const createFlags=[{'name':'name','type':a187_0x4589ab(0x93),'description':'Project\x20name'},{'name':a187_0x4589ab(0xa7),'type':a187_0x4589ab(0x93),'description':a187_0x4589ab(0xa3)},{'name':a187_0x4589ab(0xa8),'type':a187_0x4589ab(0x93),'description':a187_0x4589ab(0x9d)},{'name':'current-dir','type':'boolean','description':a187_0x4589ab(0x8a),'default':![]},{'name':'template-source','type':a187_0x4589ab(0x93),'description':a187_0x4589ab(0xa0)}],upgradeFlags=[{'name':a187_0x4589ab(0xaa),'type':'boolean','description':a187_0x4589ab(0x8d),'default':![]}];export const projectDefinitions=[{'service':a187_0x4589ab(0x8f),'command':a187_0x4589ab(0x94),'description':a187_0x4589ab(0x8c),'risk':a187_0x4589ab(0x9b),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'project-name','description':a187_0x4589ab(0xaf),'required':![]}],'flags':createFlags,async 'execute'(_0x5241e1){const _0x52f9da=a187_0x4589ab,{createApp:_0x45e3ce}=await import('../../commands/project/create/main.js'),_0x3f0813=_0x5241e1[_0x52f9da(0x90)]('name')[_0x52f9da(0x9e)]()||_0x5241e1[_0x52f9da(0x95)][0x0]?.[_0x52f9da(0x9e)](),_0xfa3577=_0x5241e1['str'](_0x52f9da(0xa7))||undefined,_0x55c809=_0x5241e1[_0x52f9da(0x90)](_0x52f9da(0xa8))||undefined,_0x3ad8ef=_0x5241e1[_0x52f9da(0x90)](_0x52f9da(0x9a))[_0x52f9da(0x9e)]()||undefined,_0x11c087=_0x5241e1['bool']('current-dir');if(_0x11c087&&_0x3f0813)throw CliErrors['validation'](_0x52f9da(0xa5),_0x52f9da(0x9f)+CLI_BIN_NAME+_0x52f9da(0x97));if(_0x5241e1['nonInteractive']){if(!_0x3f0813&&!_0x11c087)throw CliErrors[_0x52f9da(0xa9)](_0x52f9da(0xa2),_0x52f9da(0xa4)+CLI_BIN_NAME+_0x52f9da(0x91)+CLI_BIN_NAME+_0x52f9da(0x9c));await _0x45e3ce({'projectCode':_0x3f0813,'appCode':_0x55c809,'env':_0xfa3577,'cookie':_0x5241e1['cookie'],'currentDir':_0x11c087,'nonInteractive':!![],'templateSource':_0x3ad8ef});}else await _0x45e3ce({'projectCode':_0x3f0813,'appCode':_0x55c809,'env':_0xfa3577,'cookie':_0x5241e1['cookie'],'currentDir':_0x11c087,'templateSource':_0x3ad8ef});return{'ok':!![]};}},projectDomainRoutingSyncDefinition,{'service':a187_0x4589ab(0x8f),'command':a187_0x4589ab(0xb0),'description':a187_0x4589ab(0x99),'risk':a187_0x4589ab(0x9b),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x159d26){const _0x58e05a=a187_0x4589ab;return await upgradeApp(_0x159d26[_0x58e05a(0x96)],{'yes':_0x159d26[_0x58e05a(0x8e)](_0x58e05a(0xaa))}),{'ok':!![]};}}];
1
+ const a187_0x376a60=a187_0x2b9c;(function(_0x264ad4,_0x10d292){const _0x4b7af6=a187_0x2b9c,_0x466275=_0x264ad4();while(!![]){try{const _0x1c5e7e=-parseInt(_0x4b7af6(0x189))/0x1+parseInt(_0x4b7af6(0x17c))/0x2*(-parseInt(_0x4b7af6(0x191))/0x3)+parseInt(_0x4b7af6(0x17a))/0x4*(parseInt(_0x4b7af6(0x175))/0x5)+parseInt(_0x4b7af6(0x18e))/0x6+parseInt(_0x4b7af6(0x18f))/0x7+-parseInt(_0x4b7af6(0x172))/0x8*(-parseInt(_0x4b7af6(0x170))/0x9)+parseInt(_0x4b7af6(0x192))/0xa*(-parseInt(_0x4b7af6(0x16c))/0xb);if(_0x1c5e7e===_0x10d292)break;else _0x466275['push'](_0x466275['shift']());}catch(_0x51aaa0){_0x466275['push'](_0x466275['shift']());}}}(a187_0x5441,0xe8816));import{CliErrors}from'../../errors.js';function a187_0x5441(){const _0x2db8b7=['write','9IiHMvX','24808690XipTJo','env','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','boolean','11BAVouP','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]\x20or\x20','bool','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]\x20from\x20the\x20empty\x20target\x20directory.','17163mooxGx','Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','6952eMorSa','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]','upgrade','5YZEdOl','template-source','Initialize\x20the\x20current\x20empty\x20directory\x20instead\x20of\x20creating\x20a\x20child\x20directory','project','nonInteractive','2879752PSEFuY','validation','1018828MLThFN','Skip\x20confirmation\x20prompt','current-dir','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','str','trim','Usage:\x20','project-name','name','string','Project\x20name','create','--current-dir\x20cannot\x20be\x20combined\x20with\x20a\x20project\x20name.','307808CyMwaO','appcode','Prepared\x20local\x20project\x20template\x20directory','cookie','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','9335736zPyCFH','9353288uBmOFk'];a187_0x5441=function(){return _0x2db8b7;};return a187_0x5441();}import{CLI_BIN_NAME}from'../../constant/cli.js';function a187_0x2b9c(_0x3989e6,_0x48298a){_0x3989e6=_0x3989e6-0x16a;const _0x544110=a187_0x5441();let _0x2b9c25=_0x544110[_0x3989e6];return _0x2b9c25;}import{upgradeApp}from'../../commands/project/upgrade.js';import{projectDomainRoutingSyncDefinition}from'../../commands/project/domain-routing-sync.js';const createFlags=[{'name':a187_0x376a60(0x184),'type':a187_0x376a60(0x185),'description':a187_0x376a60(0x186)},{'name':a187_0x376a60(0x193),'type':a187_0x376a60(0x185),'description':'Target\x20environment'},{'name':a187_0x376a60(0x18a),'type':a187_0x376a60(0x185),'description':a187_0x376a60(0x16a)},{'name':a187_0x376a60(0x17e),'type':'boolean','description':a187_0x376a60(0x177),'default':![]},{'name':a187_0x376a60(0x176),'type':a187_0x376a60(0x185),'description':a187_0x376a60(0x18b)}],upgradeFlags=[{'name':'yes','type':a187_0x376a60(0x16b),'description':a187_0x376a60(0x17d),'default':![]}];export const projectDefinitions=[{'service':a187_0x376a60(0x178),'command':a187_0x376a60(0x187),'description':'Create\x20a\x20new\x20project','risk':a187_0x376a60(0x190),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a187_0x376a60(0x183),'description':a187_0x376a60(0x18d),'required':![]}],'flags':createFlags,async 'execute'(_0x2b0f69){const _0x29635c=a187_0x376a60,{createApp:_0x130453}=await import('../../commands/project/create/main.js'),_0x543f50=_0x2b0f69[_0x29635c(0x180)](_0x29635c(0x184))[_0x29635c(0x181)]()||_0x2b0f69['args'][0x0]?.[_0x29635c(0x181)](),_0x232f75=_0x2b0f69[_0x29635c(0x180)](_0x29635c(0x193))||undefined,_0x5005f2=_0x2b0f69[_0x29635c(0x180)](_0x29635c(0x18a))||undefined,_0x580c7b=_0x2b0f69[_0x29635c(0x180)](_0x29635c(0x176))['trim']()||undefined,_0x396faa=_0x2b0f69[_0x29635c(0x16e)](_0x29635c(0x17e));if(_0x396faa&&_0x543f50)throw CliErrors[_0x29635c(0x17b)](_0x29635c(0x188),'Run\x20'+CLI_BIN_NAME+_0x29635c(0x16f));if(_0x2b0f69[_0x29635c(0x179)]){if(!_0x543f50&&!_0x396faa)throw CliErrors['validation'](_0x29635c(0x171),_0x29635c(0x182)+CLI_BIN_NAME+_0x29635c(0x16d)+CLI_BIN_NAME+_0x29635c(0x173));await _0x130453({'projectCode':_0x543f50,'appCode':_0x5005f2,'env':_0x232f75,'cookie':_0x2b0f69[_0x29635c(0x18c)],'currentDir':_0x396faa,'nonInteractive':!![],'templateSource':_0x580c7b});}else await _0x130453({'projectCode':_0x543f50,'appCode':_0x5005f2,'env':_0x232f75,'cookie':_0x2b0f69[_0x29635c(0x18c)],'currentDir':_0x396faa,'templateSource':_0x580c7b});return{'ok':!![]};}},projectDomainRoutingSyncDefinition,{'service':a187_0x376a60(0x178),'command':a187_0x376a60(0x174),'description':a187_0x376a60(0x17f),'risk':a187_0x376a60(0x190),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x434b59){const _0x3f30f4=a187_0x376a60;return await upgradeApp(_0x434b59['nonInteractive'],{'yes':_0x434b59[_0x3f30f4(0x16e)]('yes')}),{'ok':!![]};}}];
@@ -1 +1 @@
1
- function a188_0x39a5(_0x1c784b,_0x3db562){_0x1c784b=_0x1c784b-0x76;const _0x555c15=a188_0x555c();let _0x39a53a=_0x555c15[_0x1c784b];return _0x39a53a;}const a188_0x12ad0e=a188_0x39a5;function a188_0x555c(){const _0x35e3e5=['dependencies','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','hasNewConfig','Upgrade\x20@lovrabet/sdk','lovrabet/rabetbase','red','66600axsdSE','configMigration','no\x20matching\x20entry\x20found','.lovrabetrc','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','needsSkillSwap','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','white','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','mcpServers','128hpUQMX','skipped\x20(no\x20legacy\x20config)','yes','bold','\x20\x20New\x20config\x20(.rabetbase.json):\x20','\x20→\x20latest','Skill\x20swap:','lovrabet/lovrabet-skill\x20removed','Config\x20file:','removed\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','@lovrabet/dataset-mcp-server','\x20\x20npm\x20install','lovrabet/rabetbase\x20installed\x20globally','Clean\x20MCP\x20config','not\x20found\x20(will\x20create)','not\x20found\x20or\x20already\x20at\x20latest','entries','step','yellow','oldMcpConfig','info','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','status','Legacy\x20artifacts:','Step\x206/7:\x20Installing\x20new\x20skill...','CANCEL','\x20\x20#\x20or','\x20\x20Action:\x20delete','utf8','Remove\x20.lovrabet/','object','start','parse','log','done','\x20→\x20keys:\x20','1396386XhPTTM','\x20\x20Fields\x20to\x20migrate:\x20','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','Config\x20migration','210694cfWGpo','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','\x20\x20Step\x20','fail','Install\x20new\x20skill','succeed','error','760039yXMxWK','join','Step\x204/7:\x20MCP\x20config\x20—\x20','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','label','not\x20needed','length','.lovrabet','\x20\x20bun\x20install','none\x20found','detail','\x20from\x20','message','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','push','filter','Step\x205/7:\x20Removing\x20old\x20skill...','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','cyan','FOUND','keys','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','.cursor/mcp.json','args','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','inherit','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','Proceed\x20with\x20upgrade?','failed','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','\x20→\x20','path','830lGyxVy','string','Step\x204/7:\x20Cleaning\x20MCP\x20config...','values','MCP\x20config:','sdkUpgrade','exit\x20','files','\x20\x20\x20\x20\x20\x20\x20','17016THDTZG','oldPath','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','skipped','green','stringify','includes','Step\x201/7:\x20Config\x20migration\x20—\x20','already\x20exists\x20(will\x20merge)','@lovrabet/sdk:','no\x20legacy\x20config\x20found','\x20\x20Current\x20version\x20in\x20','oldArtifacts','Upgrade\x20cancelled.','4328peZMVy','latest','@lovrabet/sdk','some','\x20removed','1852720qTldIg','gray','424IHvxCj','.lovrabet.json','isArray','package.json'];a188_0x555c=function(){return _0x35e3e5;};return a188_0x555c();}(function(_0x565050,_0x1aa863){const _0x525797=a188_0x39a5,_0x4e35f9=_0x565050();while(!![]){try{const _0xc68c9c=-parseInt(_0x525797(0x80))/0x1+-parseInt(_0x525797(0xd9))/0x2*(parseInt(_0x525797(0xb0))/0x3)+-parseInt(_0x525797(0xbe))/0x4*(-parseInt(_0x525797(0xa7))/0x5)+parseInt(_0x525797(0x7c))/0x6+-parseInt(_0x525797(0x87))/0x7+-parseInt(_0x525797(0xc5))/0x8*(-parseInt(_0x525797(0xcf))/0x9)+parseInt(_0x525797(0xc3))/0xa;if(_0xc68c9c===_0x1aa863)break;else _0x4e35f9['push'](_0x4e35f9['shift']());}catch(_0x53754a){_0x4e35f9['push'](_0x4e35f9['shift']());}}}(a188_0x555c,0x4b150));import a188_0x56b2ca from'chalk';import a188_0x51bb04 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{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=[a188_0x12ad0e(0xc6),a188_0x12ad0e(0xd2)];function collectIdeSkillFiles(_0x3cee79){const _0x25cac7=a188_0x12ad0e,_0x2dce89=[];for(const _0x114207 of Object[_0x25cac7(0xaa)](CORE_IDE_CONFIGS)){if(_0x114207['files'])for(const _0x404b17 of _0x114207[_0x25cac7(0xae)]){_0x2dce89['push'](resolve(_0x3cee79,_0x404b17['path']));}}return _0x2dce89;}function analyse(_0x3acc69){const _0x490769=a188_0x12ad0e;let _0x57d3d0=null;const _0x18d847=resolve(_0x3acc69,NEW_CONFIG_NAME),_0x4a63d4=existsSync(_0x18d847);for(const _0x571457 of LEGACY_CONFIG_NAMES){const _0x2665af=resolve(_0x3acc69,_0x571457);if(existsSync(_0x2665af)){const _0x5b1a2d=readConfigFile(_0x2665af),_0xa2a2c9=Object['keys'](_0x5b1a2d)[_0x490769(0x96)](_0x1db1db=>typeof _0x5b1a2d[_0x1db1db]!=='undefined');_0x57d3d0={'oldPath':_0x2665af,'hasNewConfig':_0x4a63d4,'fields':_0xa2a2c9};break;}}const _0x55cc99=[],_0x4c2d27=resolve(_0x3acc69,_0x490769(0x8e));if(existsSync(_0x4c2d27))_0x55cc99[_0x490769(0x95)](_0x4c2d27);const _0x9e58f2=resolve(_0x3acc69,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x9e58f2))_0x55cc99['push'](_0x9e58f2);const _0x4c397b=resolve(_0x3acc69,'.claude/skills/lovrabet');if(existsSync(_0x4c397b))_0x55cc99[_0x490769(0x95)](_0x4c397b);for(const _0x4b05f2 of collectIdeSkillFiles(_0x3acc69)){if(existsSync(_0x4b05f2))_0x55cc99[_0x490769(0x95)](_0x4b05f2);}let _0x247863=null;const _0xfb0471=resolve(_0x3acc69,_0x490769(0x9d));if(existsSync(_0xfb0471))try{const _0x597d8a=JSON[_0x490769(0x78)](readFileSync(_0xfb0471,_0x490769(0xf6)));if(_0x597d8a?.[_0x490769(0xd8)]&&typeof _0x597d8a['mcpServers']===_0x490769(0x76)){const _0x50a40a=[];for(const [_0x2e3ca4,_0x67a66a]of Object[_0x490769(0xea)](_0x597d8a[_0x490769(0xd8)])){const _0x580327=_0x67a66a;_0x580327?.[_0x490769(0x9e)]&&Array[_0x490769(0xc7)](_0x580327[_0x490769(0x9e)])&&_0x580327[_0x490769(0x9e)][_0x490769(0xc1)](_0x228cca=>typeof _0x228cca===_0x490769(0xa8)&&_0x228cca['includes'](_0x490769(0xe4)))&&_0x50a40a[_0x490769(0x95)](_0x2e3ca4);}_0x50a40a[_0x490769(0x8d)]>0x0&&(_0x247863={'path':_0xfb0471,'keys':_0x50a40a});}}catch{}const _0x5ec974=_0x55cc99[_0x490769(0x8d)]>0x0||_0x57d3d0!==null;let _0x4d4d07=null;const _0x4f137c=resolve(_0x3acc69,_0x490769(0xc8));if(existsSync(_0x4f137c))try{const _0x3605fc=JSON[_0x490769(0x78)](readFileSync(_0x4f137c,_0x490769(0xf6)));for(const _0x55e03e of[_0x490769(0xc9),'devDependencies']){const _0x339dc3=_0x3605fc?.[_0x55e03e]?.['@lovrabet/sdk'];if(typeof _0x339dc3==='string'){_0x339dc3!=='latest'&&(_0x4d4d07={'pkgPath':_0x4f137c,'currentVersion':_0x339dc3,'field':_0x55e03e});break;}}}catch{}return{'configMigration':_0x57d3d0,'oldArtifacts':_0x55cc99,'oldMcpConfig':_0x247863,'needsSkillSwap':_0x5ec974,'sdkUpgrade':_0x4d4d07};}function printReport(_0x4332a0){const _0x362413=a188_0x12ad0e,{configMigration:_0x5090b9,oldArtifacts:_0x3e3272,oldMcpConfig:_0x1b5f33,needsSkillSwap:_0x2c47e0}=_0x4332a0;console[_0x362413(0x79)](''),console['log'](a188_0x56b2ca['bold']('===\x20Upgrade\x20Analysis\x20===')),console[_0x362413(0x79)]('');_0x5090b9?(console[_0x362413(0x79)](a188_0x56b2ca[_0x362413(0x99)](_0x362413(0xe1))+('\x20\x20'+a188_0x56b2ca[_0x362413(0xec)](_0x5090b9['oldPath']))),console[_0x362413(0x79)](_0x362413(0xdd)+(_0x5090b9[_0x362413(0xcb)]?a188_0x56b2ca[_0x362413(0xb4)](_0x362413(0xb8)):a188_0x56b2ca[_0x362413(0xc4)](_0x362413(0xe8)))),console['log'](_0x362413(0x7d)+_0x5090b9['fields']['join'](',\x20')),console[_0x362413(0x79)](_0x362413(0x9f))):console[_0x362413(0x79)](a188_0x56b2ca['cyan'](_0x362413(0xe1))+'\x20\x20'+a188_0x56b2ca['gray'](_0x362413(0xba)));console[_0x362413(0x79)]('');if(_0x3e3272[_0x362413(0x8d)]>0x0){console[_0x362413(0x79)](a188_0x56b2ca['cyan'](_0x362413(0xf1)));for(const _0x47edea of _0x3e3272){console[_0x362413(0x79)]('\x20\x20'+a188_0x56b2ca[_0x362413(0xce)](_0x362413(0x9a))+'\x20\x20'+_0x47edea);}console[_0x362413(0x79)](_0x362413(0xf5));}else console[_0x362413(0x79)](a188_0x56b2ca[_0x362413(0x99)](_0x362413(0xf1))+'\x20\x20'+a188_0x56b2ca[_0x362413(0xc4)](_0x362413(0x90)));console[_0x362413(0x79)]('');_0x1b5f33?(console[_0x362413(0x79)](a188_0x56b2ca[_0x362413(0x99)](_0x362413(0xab))+('\x20\x20'+a188_0x56b2ca[_0x362413(0xec)](_0x1b5f33[_0x362413(0xa6)])+_0x362413(0x7b)+_0x1b5f33[_0x362413(0x9b)][_0x362413(0x88)](',\x20'))),console['log']('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console['log'](a188_0x56b2ca[_0x362413(0x99)](_0x362413(0xab))+'\x20\x20'+a188_0x56b2ca['gray']('no\x20legacy\x20entry'));console['log'](''),console[_0x362413(0x79)](a188_0x56b2ca[_0x362413(0x99)](_0x362413(0xdf))+('\x20\x20'+(_0x2c47e0?a188_0x56b2ca[_0x362413(0xec)]('needed'):a188_0x56b2ca['green'](_0x362413(0x8c)))));_0x2c47e0&&console['log'](_0x362413(0x7e)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x362413(0x79)]('');if(_0x4332a0['sdkUpgrade']){const {currentVersion:_0x3640b8,field:_0x541216,pkgPath:_0xffc691}=_0x4332a0[_0x362413(0xac)];console[_0x362413(0x79)](a188_0x56b2ca[_0x362413(0x99)](_0x362413(0xb9))+('\x20\x20'+a188_0x56b2ca['yellow'](_0xffc691))),console[_0x362413(0x79)](_0x362413(0xbb)+_0x541216+':\x20'+a188_0x56b2ca[_0x362413(0xec)](_0x3640b8)+_0x362413(0xa5)+a188_0x56b2ca[_0x362413(0xb4)](_0x362413(0xbf))),console[_0x362413(0x79)](_0x362413(0xe3));}else console[_0x362413(0x79)](a188_0x56b2ca['cyan'](_0x362413(0xb9))+'\x20\x20'+a188_0x56b2ca['gray'](_0x362413(0xe9)));console[_0x362413(0x79)]('');}function execConfigMigration(_0x492740,_0xf269eb){const _0x532fd0=a188_0x12ad0e,{configMigration:_0x30b510}=_0x492740;if(!_0x30b510?.[_0x532fd0(0xb1)])return{'step':0x1,'label':_0x532fd0(0x7f),'ok':!![],'detail':_0x532fd0(0xda)};const _0x2c0e28=readConfigFile(_0x30b510[_0x532fd0(0xb1)]),_0x31b7cd=resolve(_0xf269eb,NEW_CONFIG_NAME),_0x57c006=_0x30b510[_0x532fd0(0xcb)]?readConfigFile(_0x31b7cd):{};for(const [_0x591535,_0x409723]of Object['entries'](_0x2c0e28)){!(_0x591535 in _0x57c006)&&(_0x57c006[_0x591535]=_0x409723);}writeConfigFile(_0x31b7cd,_0x57c006);const _0x130f2e=_0x30b510[_0x532fd0(0xb1)]+'.bak';return renameSync(_0x30b510[_0x532fd0(0xb1)],_0x130f2e),{'step':0x1,'label':_0x532fd0(0x7f),'ok':!![],'detail':_0x30b510['oldPath']+_0x532fd0(0xa5)+_0x31b7cd+'\x20(backup:\x20'+_0x130f2e+')'};}function execRemoveOldArtifacts(_0x436688){const _0x4edcd0=a188_0x12ad0e,_0x54cb74=[];for(const _0x386da9 of _0x436688){try{if(!existsSync(_0x386da9))continue;const _0x5e167e=tryStat(_0x386da9);_0x5e167e?.['isDirectory']()?rmSync(_0x386da9,{'recursive':!![],'force':!![]}):unlinkSync(_0x386da9);}catch(_0x5500de){_0x54cb74[_0x4edcd0(0x95)](_0x386da9+':\x20'+_0x5500de[_0x4edcd0(0x93)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x54cb74[_0x4edcd0(0x8d)]===0x0,'detail':_0x54cb74[_0x4edcd0(0x8d)]>0x0?_0x436688[_0x4edcd0(0x8d)]-_0x54cb74['length']+'/'+_0x436688[_0x4edcd0(0x8d)]+'\x20removed\x20('+_0x54cb74['join'](';\x20')+')':_0x436688[_0x4edcd0(0x8d)]+_0x4edcd0(0xc2)};}function execCleanMcp(_0x3e4fce){const _0x21b244=a188_0x12ad0e;if(!_0x3e4fce[_0x21b244(0xed)])return{'step':0x4,'label':_0x21b244(0xe7),'ok':!![],'detail':_0x21b244(0xb3)};try{const _0x1155b2=readFileSync(_0x3e4fce[_0x21b244(0xed)]['path'],_0x21b244(0xf6)),_0x15b154=JSON[_0x21b244(0x78)](_0x1155b2);if(_0x15b154?.['mcpServers']&&typeof _0x15b154[_0x21b244(0xd8)]===_0x21b244(0x76)){const _0x344a87=[];for(const [_0x3b1a58,_0x759128]of Object[_0x21b244(0xea)](_0x15b154[_0x21b244(0xd8)])){_0x759128?.[_0x21b244(0x9e)]&&Array[_0x21b244(0xc7)](_0x759128['args'])&&_0x759128['args'][_0x21b244(0xc1)](_0x38feb6=>typeof _0x38feb6===_0x21b244(0xa8)&&_0x38feb6[_0x21b244(0xb6)]('@lovrabet/dataset-mcp-server'))&&_0x344a87[_0x21b244(0x95)](_0x3b1a58);}for(const _0xfac2fb of _0x344a87){delete _0x15b154[_0x21b244(0xd8)][_0xfac2fb];}return _0x344a87['length']>0x0&&writeFileSync(_0x3e4fce['oldMcpConfig']['path'],JSON[_0x21b244(0xb5)](_0x15b154,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x21b244(0xe2)+_0x344a87[_0x21b244(0x88)](',\x20')+_0x21b244(0x92)+_0x3e4fce[_0x21b244(0xed)][_0x21b244(0xa6)]};}return{'step':0x4,'label':_0x21b244(0xe7),'ok':!![],'detail':_0x21b244(0xd1)};}catch(_0x409995){return{'step':0x4,'label':_0x21b244(0xe7),'ok':![],'detail':_0x409995[_0x21b244(0x93)]};}}function execSkillsRemove(_0x22fe0e,_0x1a939a){const _0x82b6ba=a188_0x12ad0e,_0x3559bb=runNpxSkillsRemove(_0x22fe0e,{'stdio':_0x82b6ba(0xa0),'yes':_0x1a939a});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x3559bb['ok'],'detail':_0x3559bb['ok']?_0x82b6ba(0xe0):_0x3559bb[_0x82b6ba(0x86)]??_0x82b6ba(0xad)+_0x3559bb[_0x82b6ba(0xf0)]};}function execSkillsAdd(_0x32b917,_0x434b48){const _0x1653e2=a188_0x12ad0e,_0x249f87=runNpxSkillsAddGlobal(_0x32b917,_0x1653e2(0xcd),{'stdio':_0x1653e2(0xa0),'yes':_0x434b48});return{'step':0x6,'label':_0x1653e2(0x84),'ok':_0x249f87['ok'],'detail':_0x249f87['ok']?_0x1653e2(0xe6):_0x249f87[_0x1653e2(0x86)]??_0x1653e2(0xad)+_0x249f87['status']};}function execUpgradeSdk(_0x4b6de0){const _0x353f2d=a188_0x12ad0e;if(!_0x4b6de0[_0x353f2d(0xac)])return{'step':0x7,'label':_0x353f2d(0xcc),'ok':!![],'detail':_0x353f2d(0x81)};const {pkgPath:_0x3f37e0,currentVersion:_0x4dd168,field:_0x3fe4b8}=_0x4b6de0[_0x353f2d(0xac)];try{const _0x16b6ab=readFileSync(_0x3f37e0,'utf8'),_0x337b4d=JSON[_0x353f2d(0x78)](_0x16b6ab);return _0x337b4d[_0x3fe4b8][_0x353f2d(0xc0)]=_0x353f2d(0xbf),writeFileSync(_0x3f37e0,JSON['stringify'](_0x337b4d,null,0x2)+'\x0a',_0x353f2d(0xf6)),{'step':0x7,'label':_0x353f2d(0xcc),'ok':!![],'detail':_0x3fe4b8+'[\x22@lovrabet/sdk\x22]:\x20'+_0x4dd168+_0x353f2d(0xde)};}catch(_0x185cbe){return{'step':0x7,'label':_0x353f2d(0xcc),'ok':![],'detail':_0x185cbe['message']};}}function tryStat(_0x239613){try{return statSync(_0x239613);}catch{return undefined;}}function printSummary(_0x22ca3c){const _0x1966c2=a188_0x12ad0e;console[_0x1966c2(0x79)](''),console[_0x1966c2(0x79)](a188_0x56b2ca[_0x1966c2(0xdc)]('===\x20Upgrade\x20Summary\x20===')),console[_0x1966c2(0x79)]('');for(const _0x31d4fd of _0x22ca3c){const _0x28da39=_0x31d4fd['ok']?a188_0x56b2ca[_0x1966c2(0xb4)]('OK'):a188_0x56b2ca[_0x1966c2(0xce)]('FAIL');console[_0x1966c2(0x79)]('\x20\x20'+_0x28da39+_0x1966c2(0x82)+_0x31d4fd[_0x1966c2(0xeb)]+':\x20'+_0x31d4fd[_0x1966c2(0x8b)]);if(_0x31d4fd[_0x1966c2(0x91)])console[_0x1966c2(0x79)](_0x1966c2(0xaf)+a188_0x56b2ca[_0x1966c2(0xc4)](_0x31d4fd['detail']));}console[_0x1966c2(0x79)]('');}export async function upgradeApp(_0x2fbd5a,_0x5a589c){const _0x5afb82=a188_0x12ad0e,_0x2c6d8f=process['cwd'](),_0x134fcc=analyse(_0x2c6d8f),_0x3bc100=!_0x134fcc[_0x5afb82(0xd0)]&&_0x134fcc[_0x5afb82(0xbc)][_0x5afb82(0x8d)]===0x0&&!_0x134fcc[_0x5afb82(0xed)]&&!_0x134fcc[_0x5afb82(0xd4)]&&!_0x134fcc[_0x5afb82(0xac)];if(_0x3bc100){console[_0x5afb82(0x79)](a188_0x56b2ca[_0x5afb82(0xb4)](_0x5afb82(0xef)));return;}printReport(_0x134fcc);const _0x277134=!!(_0x5a589c[_0x5afb82(0xdb)]||_0x5a589c['Y']||_0x2fbd5a);if(!_0x277134)try{const _0x8be639=await askConfirm(_0x5afb82(0xa2));if(!_0x8be639){console[_0x5afb82(0x79)](a188_0x56b2ca[_0x5afb82(0xc4)](_0x5afb82(0xbd)));return;}}catch(_0x17016e){if(_0x17016e?.[_0x5afb82(0x93)]===_0x5afb82(0xf3)){console[_0x5afb82(0x79)](a188_0x56b2ca[_0x5afb82(0xc4)](_0x5afb82(0xbd)));return;}throw _0x17016e;}const _0x119ddd=[],_0x2a6358=a188_0x51bb04({'text':'Step\x201/7:\x20Migrating\x20config...','color':_0x5afb82(0x99)})[_0x5afb82(0x77)](),_0x3b1fff=execConfigMigration(_0x134fcc,_0x2c6d8f);_0x119ddd[_0x5afb82(0x95)](_0x3b1fff),_0x2a6358[_0x3b1fff['ok']?_0x5afb82(0x85):_0x5afb82(0x83)](_0x5afb82(0xb7)+(_0x3b1fff[_0x5afb82(0x91)]??(_0x3b1fff['ok']?'done':_0x5afb82(0xa3))));const _0x4b8e54=resolve(_0x2c6d8f,_0x5afb82(0x8e)),_0xa17e27=a188_0x51bb04({'text':_0x5afb82(0xb2),'color':_0x5afb82(0x99)})['start']();if(existsSync(_0x4b8e54))try{rmSync(_0x4b8e54,{'recursive':!![],'force':!![]}),_0xa17e27[_0x5afb82(0x85)]('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x119ddd[_0x5afb82(0x95)]({'step':0x2,'label':_0x5afb82(0xf7),'ok':!![]});}catch(_0x448aa8){_0xa17e27[_0x5afb82(0x83)](_0x5afb82(0xd5)+_0x448aa8['message']),_0x119ddd['push']({'step':0x2,'label':_0x5afb82(0xf7),'ok':![],'detail':_0x448aa8[_0x5afb82(0x93)]});}else _0xa17e27[_0x5afb82(0xee)](_0x5afb82(0xca)),_0x119ddd['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':_0x5afb82(0xb3)});const _0x4b8793=a188_0x51bb04({'text':_0x5afb82(0x9c),'color':_0x5afb82(0x99)})[_0x5afb82(0x77)](),_0x36664a=execRemoveOldArtifacts(_0x134fcc[_0x5afb82(0xbc)]);_0x119ddd['push'](_0x36664a),_0x4b8793[_0x36664a['ok']?_0x5afb82(0x85):_0x5afb82(0x83)](_0x5afb82(0xd3)+(_0x36664a[_0x5afb82(0x91)]??(_0x36664a['ok']?_0x5afb82(0x7a):_0x5afb82(0xa3))));const _0x1c9622=a188_0x51bb04({'text':_0x5afb82(0xa9),'color':_0x5afb82(0x99)})['start'](),_0x4c6658=execCleanMcp(_0x134fcc);_0x119ddd[_0x5afb82(0x95)](_0x4c6658),_0x1c9622[_0x4c6658['ok']?'succeed':_0x5afb82(0x83)](_0x5afb82(0x89)+(_0x4c6658['detail']??(_0x4c6658['ok']?_0x5afb82(0x7a):'failed')));const _0xa4d10d=a188_0x51bb04({'text':_0x5afb82(0x97),'color':'cyan'})[_0x5afb82(0x77)](),_0x30a6e5=execSkillsRemove(_0x2c6d8f,_0x277134);_0x119ddd[_0x5afb82(0x95)](_0x30a6e5),_0xa4d10d[_0x30a6e5['ok']?_0x5afb82(0x85):_0x5afb82(0x83)](_0x5afb82(0xa4)+(_0x30a6e5['detail']??(_0x30a6e5['ok']?_0x5afb82(0x7a):_0x5afb82(0xa3))));const _0x4acc9b=a188_0x51bb04({'text':_0x5afb82(0xf2),'color':_0x5afb82(0x99)})[_0x5afb82(0x77)](),_0xed821b=execSkillsAdd(_0x2c6d8f,_0x277134);_0x119ddd['push'](_0xed821b),_0x4acc9b[_0xed821b['ok']?'succeed':_0x5afb82(0x83)]('Step\x206/7:\x20Install\x20new\x20skill\x20—\x20'+(_0xed821b[_0x5afb82(0x91)]??(_0xed821b['ok']?_0x5afb82(0x7a):'failed')));const _0x1a1418=a188_0x51bb04({'text':_0x5afb82(0x8a),'color':'cyan'})[_0x5afb82(0x77)](),_0x2b0483=execUpgradeSdk(_0x134fcc);_0x119ddd[_0x5afb82(0x95)](_0x2b0483),_0x1a1418[_0x2b0483['ok']?_0x5afb82(0x85):_0x5afb82(0x83)](_0x5afb82(0xa1)+(_0x2b0483[_0x5afb82(0x91)]??(_0x2b0483['ok']?_0x5afb82(0x7a):_0x5afb82(0xa3)))),printSummary(_0x119ddd);const _0x97783e=_0x119ddd[_0x5afb82(0xc1)](_0x221347=>!_0x221347['ok']);_0x97783e?console[_0x5afb82(0x79)](a188_0x56b2ca['yellow'](_0x5afb82(0xd7))):console['log'](a188_0x56b2ca[_0x5afb82(0xb4)]('Upgrade\x20completed\x20successfully!')),_0x2b0483['ok']&&_0x134fcc[_0x5afb82(0xac)]&&(console[_0x5afb82(0x79)](''),console[_0x5afb82(0x79)](a188_0x56b2ca[_0x5afb82(0xdc)][_0x5afb82(0x99)](_0x5afb82(0x94))),console[_0x5afb82(0x79)](a188_0x56b2ca['cyan'](_0x5afb82(0x98))),console[_0x5afb82(0x79)](''),console[_0x5afb82(0x79)](a188_0x56b2ca[_0x5afb82(0xd6)](_0x5afb82(0xe5))),console[_0x5afb82(0x79)](a188_0x56b2ca[_0x5afb82(0xd6)](_0x5afb82(0xf4))),console['log'](a188_0x56b2ca[_0x5afb82(0xd6)](_0x5afb82(0x8f))),console[_0x5afb82(0x79)](''));}
1
+ const a188_0xad0a10=a188_0x3488;(function(_0x66162c,_0x1094d1){const _0xb11631=a188_0x3488,_0x39aa0a=_0x66162c();while(!![]){try{const _0x4ea8f3=parseInt(_0xb11631(0x204))/0x1*(-parseInt(_0xb11631(0x1ba))/0x2)+parseInt(_0xb11631(0x203))/0x3*(parseInt(_0xb11631(0x200))/0x4)+-parseInt(_0xb11631(0x1c6))/0x5+parseInt(_0xb11631(0x212))/0x6+parseInt(_0xb11631(0x1a9))/0x7*(-parseInt(_0xb11631(0x1cf))/0x8)+-parseInt(_0xb11631(0x1b7))/0x9+parseInt(_0xb11631(0x205))/0xa*(parseInt(_0xb11631(0x1aa))/0xb);if(_0x4ea8f3===_0x1094d1)break;else _0x39aa0a['push'](_0x39aa0a['shift']());}catch(_0x45f570){_0x39aa0a['push'](_0x39aa0a['shift']());}}}(a188_0x4ad9,0x6aaf8));import a188_0x153756 from'chalk';import a188_0x461dff from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';function a188_0x3488(_0x1fcf5f,_0x105b5d){_0x1fcf5f=_0x1fcf5f-0x199;const _0x4ad95c=a188_0x4ad9();let _0x348878=_0x4ad95c[_0x1fcf5f];return _0x348878;}import{resolve}from'node:path';import{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=[a188_0xad0a10(0x1df),a188_0xad0a10(0x1d3)];function collectIdeSkillFiles(_0x54d328){const _0x44fb30=a188_0xad0a10,_0x6abfaf=[];for(const _0x490f70 of Object[_0x44fb30(0x20c)](CORE_IDE_CONFIGS)){if(_0x490f70[_0x44fb30(0x1f1)])for(const _0x481424 of _0x490f70[_0x44fb30(0x1f1)]){_0x6abfaf[_0x44fb30(0x1dc)](resolve(_0x54d328,_0x481424['path']));}}return _0x6abfaf;}function analyse(_0x37e673){const _0x194551=a188_0xad0a10;let _0x2391ce=null;const _0x45d4c4=resolve(_0x37e673,NEW_CONFIG_NAME),_0x5c53f9=existsSync(_0x45d4c4);for(const _0x1d6cf4 of LEGACY_CONFIG_NAMES){const _0x1711e7=resolve(_0x37e673,_0x1d6cf4);if(existsSync(_0x1711e7)){const _0x144e49=readConfigFile(_0x1711e7),_0x67b12=Object[_0x194551(0x1c0)](_0x144e49)[_0x194551(0x215)](_0x49044e=>typeof _0x144e49[_0x49044e]!==_0x194551(0x214));_0x2391ce={'oldPath':_0x1711e7,'hasNewConfig':_0x5c53f9,'fields':_0x67b12};break;}}const _0x20a40f=[],_0x1d80f6=resolve(_0x37e673,'.lovrabet');if(existsSync(_0x1d80f6))_0x20a40f[_0x194551(0x1dc)](_0x1d80f6);const _0x2505d4=resolve(_0x37e673,_0x194551(0x1d2));if(existsSync(_0x2505d4))_0x20a40f[_0x194551(0x1dc)](_0x2505d4);const _0x58a506=resolve(_0x37e673,'.claude/skills/lovrabet');if(existsSync(_0x58a506))_0x20a40f[_0x194551(0x1dc)](_0x58a506);for(const _0x4fe063 of collectIdeSkillFiles(_0x37e673)){if(existsSync(_0x4fe063))_0x20a40f[_0x194551(0x1dc)](_0x4fe063);}let _0x36ae54=null;const _0x54ff02=resolve(_0x37e673,_0x194551(0x20f));if(existsSync(_0x54ff02))try{const _0x6fb40a=JSON['parse'](readFileSync(_0x54ff02,'utf8'));if(_0x6fb40a?.[_0x194551(0x1ca)]&&typeof _0x6fb40a['mcpServers']===_0x194551(0x1f6)){const _0x326d9e=[];for(const [_0x2f41e4,_0x42378b]of Object['entries'](_0x6fb40a['mcpServers'])){const _0x2b878a=_0x42378b;_0x2b878a?.[_0x194551(0x1b4)]&&Array['isArray'](_0x2b878a['args'])&&_0x2b878a[_0x194551(0x1b4)][_0x194551(0x1e7)](_0x20a394=>typeof _0x20a394===_0x194551(0x1c8)&&_0x20a394['includes']('@lovrabet/dataset-mcp-server'))&&_0x326d9e['push'](_0x2f41e4);}_0x326d9e['length']>0x0&&(_0x36ae54={'path':_0x54ff02,'keys':_0x326d9e});}}catch{}const _0x1f68b2=_0x20a40f[_0x194551(0x201)]>0x0||_0x2391ce!==null;let _0x4bae71=null;const _0x4ac535=resolve(_0x37e673,_0x194551(0x1a3));if(existsSync(_0x4ac535))try{const _0x51a4c3=JSON[_0x194551(0x1d7)](readFileSync(_0x4ac535,_0x194551(0x1bc)));for(const _0x12fa2 of['dependencies',_0x194551(0x1b6)]){const _0x4201de=_0x51a4c3?.[_0x12fa2]?.[_0x194551(0x208)];if(typeof _0x4201de===_0x194551(0x1c8)){_0x4201de!==_0x194551(0x1b5)&&(_0x4bae71={'pkgPath':_0x4ac535,'currentVersion':_0x4201de,'field':_0x12fa2});break;}}}catch{}return{'configMigration':_0x2391ce,'oldArtifacts':_0x20a40f,'oldMcpConfig':_0x36ae54,'needsSkillSwap':_0x1f68b2,'sdkUpgrade':_0x4bae71};}function printReport(_0x44ec00){const _0x5ead55=a188_0xad0a10,{configMigration:_0x3c66cf,oldArtifacts:_0x3b3e63,oldMcpConfig:_0x5084c9,needsSkillSwap:_0x34b9dc}=_0x44ec00;console[_0x5ead55(0x1dd)](''),console[_0x5ead55(0x1dd)](a188_0x153756['bold']('===\x20Upgrade\x20Analysis\x20===')),console[_0x5ead55(0x1dd)]('');_0x3c66cf?(console[_0x5ead55(0x1dd)](a188_0x153756[_0x5ead55(0x1c2)](_0x5ead55(0x1ee))+('\x20\x20'+a188_0x153756['yellow'](_0x3c66cf[_0x5ead55(0x1b2)]))),console[_0x5ead55(0x1dd)]('\x20\x20New\x20config\x20(.rabetbase.json):\x20'+(_0x3c66cf[_0x5ead55(0x206)]?a188_0x153756[_0x5ead55(0x1d8)]('already\x20exists\x20(will\x20merge)'):a188_0x153756[_0x5ead55(0x1f9)](_0x5ead55(0x19b)))),console[_0x5ead55(0x1dd)](_0x5ead55(0x1db)+_0x3c66cf[_0x5ead55(0x1e6)][_0x5ead55(0x1b1)](',\x20')),console[_0x5ead55(0x1dd)](_0x5ead55(0x1de))):console[_0x5ead55(0x1dd)](a188_0x153756[_0x5ead55(0x1c2)](_0x5ead55(0x1ee))+'\x20\x20'+a188_0x153756['gray'](_0x5ead55(0x1ae)));console[_0x5ead55(0x1dd)]('');if(_0x3b3e63[_0x5ead55(0x201)]>0x0){console['log'](a188_0x153756['cyan'](_0x5ead55(0x19e)));for(const _0x8ac1fb of _0x3b3e63){console[_0x5ead55(0x1dd)]('\x20\x20'+a188_0x153756[_0x5ead55(0x1fd)](_0x5ead55(0x218))+'\x20\x20'+_0x8ac1fb);}console['log']('\x20\x20Action:\x20delete');}else console[_0x5ead55(0x1dd)](a188_0x153756[_0x5ead55(0x1c2)](_0x5ead55(0x19e))+'\x20\x20'+a188_0x153756[_0x5ead55(0x1f9)]('none\x20found'));console[_0x5ead55(0x1dd)]('');_0x5084c9?(console[_0x5ead55(0x1dd)](a188_0x153756[_0x5ead55(0x1c2)]('MCP\x20config:')+('\x20\x20'+a188_0x153756[_0x5ead55(0x1f7)](_0x5084c9[_0x5ead55(0x1f4)])+_0x5ead55(0x1a7)+_0x5084c9[_0x5ead55(0x1c0)][_0x5ead55(0x1b1)](',\x20'))),console[_0x5ead55(0x1dd)](_0x5ead55(0x207))):console[_0x5ead55(0x1dd)](a188_0x153756[_0x5ead55(0x1c2)]('MCP\x20config:')+'\x20\x20'+a188_0x153756['gray'](_0x5ead55(0x1bb)));console[_0x5ead55(0x1dd)](''),console['log'](a188_0x153756[_0x5ead55(0x1c2)](_0x5ead55(0x1a2))+('\x20\x20'+(_0x34b9dc?a188_0x153756['yellow'](_0x5ead55(0x1ce)):a188_0x153756[_0x5ead55(0x1d8)]('not\x20needed'))));_0x34b9dc&&console[_0x5ead55(0x1dd)](_0x5ead55(0x1eb)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x5ead55(0x1dd)]('');if(_0x44ec00[_0x5ead55(0x20d)]){const {currentVersion:_0x376697,field:_0x19f647,pkgPath:_0x306a91}=_0x44ec00['sdkUpgrade'];console[_0x5ead55(0x1dd)](a188_0x153756[_0x5ead55(0x1c2)](_0x5ead55(0x213))+('\x20\x20'+a188_0x153756['yellow'](_0x306a91))),console[_0x5ead55(0x1dd)](_0x5ead55(0x1f8)+_0x19f647+':\x20'+a188_0x153756['yellow'](_0x376697)+_0x5ead55(0x21b)+a188_0x153756[_0x5ead55(0x1d8)]('latest')),console[_0x5ead55(0x1dd)]('\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)');}else console['log'](a188_0x153756[_0x5ead55(0x1c2)](_0x5ead55(0x213))+'\x20\x20'+a188_0x153756[_0x5ead55(0x1f9)]('not\x20found\x20or\x20already\x20at\x20latest'));console[_0x5ead55(0x1dd)]('');}function execConfigMigration(_0x288a53,_0x5b3b8e){const _0x12be5b=a188_0xad0a10,{configMigration:_0x5c9e5d}=_0x288a53;if(!_0x5c9e5d?.['oldPath'])return{'step':0x1,'label':_0x12be5b(0x1e3),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x59a1f0=readConfigFile(_0x5c9e5d[_0x12be5b(0x1b2)]),_0x58df78=resolve(_0x5b3b8e,NEW_CONFIG_NAME),_0x50bdca=_0x5c9e5d[_0x12be5b(0x206)]?readConfigFile(_0x58df78):{};for(const [_0x278dcb,_0x4e9c45]of Object[_0x12be5b(0x1be)](_0x59a1f0)){!(_0x278dcb in _0x50bdca)&&(_0x50bdca[_0x278dcb]=_0x4e9c45);}writeConfigFile(_0x58df78,_0x50bdca);const _0xe76b13=_0x5c9e5d[_0x12be5b(0x1b2)]+'.bak';return renameSync(_0x5c9e5d[_0x12be5b(0x1b2)],_0xe76b13),{'step':0x1,'label':_0x12be5b(0x1e3),'ok':!![],'detail':_0x5c9e5d[_0x12be5b(0x1b2)]+_0x12be5b(0x21b)+_0x58df78+_0x12be5b(0x1f0)+_0xe76b13+')'};}function execRemoveOldArtifacts(_0x15cc79){const _0x7facf5=a188_0xad0a10,_0x5300c9=[];for(const _0x461fbe of _0x15cc79){try{if(!existsSync(_0x461fbe))continue;const _0x458ab=tryStat(_0x461fbe);_0x458ab?.[_0x7facf5(0x1e2)]()?rmSync(_0x461fbe,{'recursive':!![],'force':!![]}):unlinkSync(_0x461fbe);}catch(_0x1d5aa8){_0x5300c9[_0x7facf5(0x1dc)](_0x461fbe+':\x20'+_0x1d5aa8[_0x7facf5(0x1e1)]);}}return{'step':0x3,'label':_0x7facf5(0x211),'ok':_0x5300c9['length']===0x0,'detail':_0x5300c9[_0x7facf5(0x201)]>0x0?_0x15cc79[_0x7facf5(0x201)]-_0x5300c9[_0x7facf5(0x201)]+'/'+_0x15cc79[_0x7facf5(0x201)]+_0x7facf5(0x1e8)+_0x5300c9[_0x7facf5(0x1b1)](';\x20')+')':_0x15cc79[_0x7facf5(0x201)]+_0x7facf5(0x1fe)};}function execCleanMcp(_0x1fb596){const _0x1c5a11=a188_0xad0a10;if(!_0x1fb596[_0x1c5a11(0x1d1)])return{'step':0x4,'label':_0x1c5a11(0x1c9),'ok':!![],'detail':_0x1c5a11(0x1c3)};try{const _0x5ef344=readFileSync(_0x1fb596['oldMcpConfig']['path'],_0x1c5a11(0x1bc)),_0x379d30=JSON[_0x1c5a11(0x1d7)](_0x5ef344);if(_0x379d30?.[_0x1c5a11(0x1ca)]&&typeof _0x379d30[_0x1c5a11(0x1ca)]==='object'){const _0x57527e=[];for(const [_0x297927,_0x294c0e]of Object['entries'](_0x379d30[_0x1c5a11(0x1ca)])){_0x294c0e?.[_0x1c5a11(0x1b4)]&&Array[_0x1c5a11(0x1ab)](_0x294c0e[_0x1c5a11(0x1b4)])&&_0x294c0e['args']['some'](_0x253938=>typeof _0x253938===_0x1c5a11(0x1c8)&&_0x253938[_0x1c5a11(0x1a5)]('@lovrabet/dataset-mcp-server'))&&_0x57527e[_0x1c5a11(0x1dc)](_0x297927);}for(const _0x5a8bb7 of _0x57527e){delete _0x379d30[_0x1c5a11(0x1ca)][_0x5a8bb7];}return _0x57527e[_0x1c5a11(0x201)]>0x0&&writeFileSync(_0x1fb596[_0x1c5a11(0x1d1)]['path'],JSON['stringify'](_0x379d30,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':_0x1c5a11(0x1c9),'ok':!![],'detail':_0x1c5a11(0x1fa)+_0x57527e[_0x1c5a11(0x1b1)](',\x20')+'\x20from\x20'+_0x1fb596['oldMcpConfig']['path']};}return{'step':0x4,'label':_0x1c5a11(0x1c9),'ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x547466){return{'step':0x4,'label':_0x1c5a11(0x1c9),'ok':![],'detail':_0x547466[_0x1c5a11(0x1e1)]};}}function execSkillsRemove(_0x29b455,_0x20127a){const _0xd8f5f8=a188_0xad0a10,_0x267920=runNpxSkillsRemove(_0x29b455,{'stdio':_0xd8f5f8(0x1cc),'yes':_0x20127a});return{'step':0x5,'label':_0xd8f5f8(0x1c4),'ok':_0x267920['ok'],'detail':_0x267920['ok']?_0xd8f5f8(0x216):_0x267920['error']??_0xd8f5f8(0x1b0)+_0x267920[_0xd8f5f8(0x20a)]};}function execSkillsAdd(_0x74505,_0x28c009){const _0x1426a9=a188_0xad0a10,_0x48d42e=runNpxSkillsAddGlobal(_0x74505,_0x1426a9(0x20e),{'stdio':_0x1426a9(0x1cc),'yes':_0x28c009});return{'step':0x6,'label':'Install\x20new\x20skill','ok':_0x48d42e['ok'],'detail':_0x48d42e['ok']?_0x1426a9(0x19d):_0x48d42e[_0x1426a9(0x219)]??_0x1426a9(0x1b0)+_0x48d42e[_0x1426a9(0x20a)]};}function execUpgradeSdk(_0x18fe81){const _0x4e1d3e=a188_0xad0a10;if(!_0x18fe81[_0x4e1d3e(0x20d)])return{'step':0x7,'label':_0x4e1d3e(0x1cd),'ok':!![],'detail':_0x4e1d3e(0x1e0)};const {pkgPath:_0x25458d,currentVersion:_0x316a0e,field:_0x19a9aa}=_0x18fe81[_0x4e1d3e(0x20d)];try{const _0x2bc198=readFileSync(_0x25458d,_0x4e1d3e(0x1bc)),_0x3995d8=JSON[_0x4e1d3e(0x1d7)](_0x2bc198);return _0x3995d8[_0x19a9aa][_0x4e1d3e(0x208)]=_0x4e1d3e(0x1b5),writeFileSync(_0x25458d,JSON[_0x4e1d3e(0x1f2)](_0x3995d8,null,0x2)+'\x0a',_0x4e1d3e(0x1bc)),{'step':0x7,'label':_0x4e1d3e(0x1cd),'ok':!![],'detail':_0x19a9aa+_0x4e1d3e(0x1a4)+_0x316a0e+_0x4e1d3e(0x1e4)};}catch(_0x4060f9){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x4060f9[_0x4e1d3e(0x1e1)]};}}function tryStat(_0x5594e7){try{return statSync(_0x5594e7);}catch{return undefined;}}function a188_0x4ad9(){const _0x24dfef=['.lovrabetrc','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','failed','step','parse','green','\x20\x20\x20\x20\x20\x20\x20','\x20\x20Step\x20','\x20\x20Fields\x20to\x20migrate:\x20','push','log','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','.lovrabet.json','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','message','isDirectory','Config\x20migration','\x20→\x20latest','Step\x206/7:\x20Installing\x20new\x20skill...','fields','some','\x20removed\x20(','start','oldArtifacts','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','Step\x201/7:\x20Migrating\x20config...','Config\x20file:','Upgrade\x20completed\x20successfully!','\x20(backup:\x20','files','stringify','detail','path','succeed','object','yellow','\x20\x20Current\x20version\x20in\x20','gray','removed\x20','\x20\x20#\x20or','white','red','\x20removed','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','8uWCvTT','length','needsSkillSwap','956073QBrSVD','4aawEPz','11670590gBaawf','hasNewConfig','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','@lovrabet/sdk','Remove\x20.lovrabet/','status','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','values','sdkUpgrade','lovrabet/rabetbase','.cursor/mcp.json','\x20\x20npm\x20install','Remove\x20legacy\x20artifacts','2252856IqLYVv','@lovrabet/sdk:','undefined','filter','lovrabet/lovrabet-skill\x20removed','Step\x201/7:\x20Config\x20migration\x20—\x20','FOUND','error','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','\x20→\x20','Step\x205/7:\x20Removing\x20old\x20skill...','Step\x204/7:\x20MCP\x20config\x20—\x20','not\x20found\x20(will\x20create)','Upgrade\x20cancelled.','lovrabet/rabetbase\x20installed\x20globally','Legacy\x20artifacts:','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','yes','Proceed\x20with\x20upgrade?','Skill\x20swap:','package.json','[\x22@lovrabet/sdk\x22]:\x20','includes','FAIL','\x20→\x20keys:\x20','info','221501uJvpxM','11XWhMOc','isArray','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','===\x20Upgrade\x20Summary\x20===','no\x20legacy\x20config\x20found','bold','exit\x20','join','oldPath','CANCEL','args','latest','devDependencies','5427477SzzyPi','Step\x204/7:\x20Cleaning\x20MCP\x20config...','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','394636YMWlJd','no\x20legacy\x20entry','utf8','label','entries','cwd','keys','done','cyan','skipped','Remove\x20old\x20skill','fail','329105yQiqeW','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','string','Clean\x20MCP\x20config','mcpServers','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','inherit','Upgrade\x20@lovrabet/sdk','needed','72cOrZyA','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','oldMcpConfig','.cursor/rules/lovrabet_rules.mdc'];a188_0x4ad9=function(){return _0x24dfef;};return a188_0x4ad9();}function printSummary(_0x14ade6){const _0x1c4d7a=a188_0xad0a10;console[_0x1c4d7a(0x1dd)](''),console[_0x1c4d7a(0x1dd)](a188_0x153756[_0x1c4d7a(0x1af)](_0x1c4d7a(0x1ad))),console[_0x1c4d7a(0x1dd)]('');for(const _0x42eb34 of _0x14ade6){const _0x16bced=_0x42eb34['ok']?a188_0x153756['green']('OK'):a188_0x153756['red'](_0x1c4d7a(0x1a6));console[_0x1c4d7a(0x1dd)]('\x20\x20'+_0x16bced+_0x1c4d7a(0x1da)+_0x42eb34[_0x1c4d7a(0x1d6)]+':\x20'+_0x42eb34[_0x1c4d7a(0x1bd)]);if(_0x42eb34[_0x1c4d7a(0x1f3)])console['log'](_0x1c4d7a(0x1d9)+a188_0x153756[_0x1c4d7a(0x1f9)](_0x42eb34[_0x1c4d7a(0x1f3)]));}console[_0x1c4d7a(0x1dd)]('');}export async function upgradeApp(_0x41b51f,_0xe71c89){const _0x394dcc=a188_0xad0a10,_0x13c025=process[_0x394dcc(0x1bf)](),_0x24e287=analyse(_0x13c025),_0x24c292=!_0x24e287['configMigration']&&_0x24e287[_0x394dcc(0x1ea)][_0x394dcc(0x201)]===0x0&&!_0x24e287[_0x394dcc(0x1d1)]&&!_0x24e287[_0x394dcc(0x202)]&&!_0x24e287[_0x394dcc(0x20d)];if(_0x24c292){console[_0x394dcc(0x1dd)](a188_0x153756[_0x394dcc(0x1d8)](_0x394dcc(0x1cb)));return;}printReport(_0x24e287);const _0x4b29ef=!!(_0xe71c89[_0x394dcc(0x1a0)]||_0xe71c89['Y']||_0x41b51f);if(!_0x4b29ef)try{const _0xc008b4=await askConfirm(_0x394dcc(0x1a1));if(!_0xc008b4){console[_0x394dcc(0x1dd)](a188_0x153756[_0x394dcc(0x1f9)](_0x394dcc(0x19c)));return;}}catch(_0x1369db){if(_0x1369db?.['message']===_0x394dcc(0x1b3)){console[_0x394dcc(0x1dd)](a188_0x153756[_0x394dcc(0x1f9)](_0x394dcc(0x19c)));return;}throw _0x1369db;}const _0x10fe38=[],_0x507835=a188_0x461dff({'text':_0x394dcc(0x1ed),'color':_0x394dcc(0x1c2)})[_0x394dcc(0x1e9)](),_0x2bf878=execConfigMigration(_0x24e287,_0x13c025);_0x10fe38[_0x394dcc(0x1dc)](_0x2bf878),_0x507835[_0x2bf878['ok']?_0x394dcc(0x1f5):_0x394dcc(0x1c5)](_0x394dcc(0x217)+(_0x2bf878['detail']??(_0x2bf878['ok']?'done':_0x394dcc(0x1d5))));const _0x422381=resolve(_0x13c025,'.lovrabet'),_0x41567e=a188_0x461dff({'text':_0x394dcc(0x1b9),'color':_0x394dcc(0x1c2)})['start']();if(existsSync(_0x422381))try{rmSync(_0x422381,{'recursive':!![],'force':!![]}),_0x41567e[_0x394dcc(0x1f5)](_0x394dcc(0x1ff)),_0x10fe38[_0x394dcc(0x1dc)]({'step':0x2,'label':_0x394dcc(0x209),'ok':!![]});}catch(_0x114cd3){_0x41567e[_0x394dcc(0x1c5)](_0x394dcc(0x1d4)+_0x114cd3[_0x394dcc(0x1e1)]),_0x10fe38[_0x394dcc(0x1dc)]({'step':0x2,'label':_0x394dcc(0x209),'ok':![],'detail':_0x114cd3[_0x394dcc(0x1e1)]});}else _0x41567e[_0x394dcc(0x1a8)](_0x394dcc(0x21a)),_0x10fe38[_0x394dcc(0x1dc)]({'step':0x2,'label':_0x394dcc(0x209),'ok':!![],'detail':_0x394dcc(0x1c3)});const _0x3f6f55=a188_0x461dff({'text':'Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','color':_0x394dcc(0x1c2)})[_0x394dcc(0x1e9)](),_0x19faa9=execRemoveOldArtifacts(_0x24e287['oldArtifacts']);_0x10fe38['push'](_0x19faa9),_0x3f6f55[_0x19faa9['ok']?_0x394dcc(0x1f5):_0x394dcc(0x1c5)]('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x19faa9[_0x394dcc(0x1f3)]??(_0x19faa9['ok']?_0x394dcc(0x1c1):_0x394dcc(0x1d5))));const _0xa2b35a=a188_0x461dff({'text':_0x394dcc(0x1b8),'color':'cyan'})[_0x394dcc(0x1e9)](),_0x29d235=execCleanMcp(_0x24e287);_0x10fe38['push'](_0x29d235),_0xa2b35a[_0x29d235['ok']?_0x394dcc(0x1f5):_0x394dcc(0x1c5)](_0x394dcc(0x19a)+(_0x29d235[_0x394dcc(0x1f3)]??(_0x29d235['ok']?_0x394dcc(0x1c1):_0x394dcc(0x1d5))));const _0x5b120f=a188_0x461dff({'text':_0x394dcc(0x199),'color':_0x394dcc(0x1c2)})[_0x394dcc(0x1e9)](),_0x169193=execSkillsRemove(_0x13c025,_0x4b29ef);_0x10fe38[_0x394dcc(0x1dc)](_0x169193),_0x5b120f[_0x169193['ok']?_0x394dcc(0x1f5):'fail'](_0x394dcc(0x1ac)+(_0x169193['detail']??(_0x169193['ok']?_0x394dcc(0x1c1):_0x394dcc(0x1d5))));const _0x303d42=a188_0x461dff({'text':_0x394dcc(0x1e5),'color':_0x394dcc(0x1c2)})[_0x394dcc(0x1e9)](),_0x3f55d3=execSkillsAdd(_0x13c025,_0x4b29ef);_0x10fe38[_0x394dcc(0x1dc)](_0x3f55d3),_0x303d42[_0x3f55d3['ok']?_0x394dcc(0x1f5):_0x394dcc(0x1c5)](_0x394dcc(0x1c7)+(_0x3f55d3['detail']??(_0x3f55d3['ok']?_0x394dcc(0x1c1):_0x394dcc(0x1d5))));const _0x909e96=a188_0x461dff({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':_0x394dcc(0x1c2)})[_0x394dcc(0x1e9)](),_0x32350d=execUpgradeSdk(_0x24e287);_0x10fe38['push'](_0x32350d),_0x909e96[_0x32350d['ok']?_0x394dcc(0x1f5):_0x394dcc(0x1c5)](_0x394dcc(0x1ec)+(_0x32350d[_0x394dcc(0x1f3)]??(_0x32350d['ok']?'done':_0x394dcc(0x1d5)))),printSummary(_0x10fe38);const _0xbd83b5=_0x10fe38[_0x394dcc(0x1e7)](_0x12bb5e=>!_0x12bb5e['ok']);_0xbd83b5?console[_0x394dcc(0x1dd)](a188_0x153756['yellow'](_0x394dcc(0x19f))):console[_0x394dcc(0x1dd)](a188_0x153756[_0x394dcc(0x1d8)](_0x394dcc(0x1ef))),_0x32350d['ok']&&_0x24e287['sdkUpgrade']&&(console['log'](''),console['log'](a188_0x153756[_0x394dcc(0x1af)][_0x394dcc(0x1c2)](_0x394dcc(0x20b))),console[_0x394dcc(0x1dd)](a188_0x153756[_0x394dcc(0x1c2)](_0x394dcc(0x1d0))),console[_0x394dcc(0x1dd)](''),console[_0x394dcc(0x1dd)](a188_0x153756[_0x394dcc(0x1fc)](_0x394dcc(0x210))),console[_0x394dcc(0x1dd)](a188_0x153756[_0x394dcc(0x1fc)](_0x394dcc(0x1fb))),console[_0x394dcc(0x1dd)](a188_0x153756[_0x394dcc(0x1fc)]('\x20\x20bun\x20install')),console[_0x394dcc(0x1dd)](''));}