@lovrabet/rabetbase-cli 2.5.2-beta.5 → 2.5.2-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (329) 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.d.ts +0 -17
  246. package/lib/core/api-client.js +1 -1
  247. package/lib/core/bff/config.js +1 -1
  248. package/lib/core/bff/file-system.js +1 -1
  249. package/lib/core/bff/hash.js +1 -1
  250. package/lib/core/bff/lock.js +1 -1
  251. package/lib/core/bff/utils.js +1 -1
  252. package/lib/core/db-resolver.js +1 -1
  253. package/lib/core/instant-api-policy/config.js +1 -1
  254. package/lib/core/kb-search-client.js +1 -1
  255. package/lib/core/page/file-system.js +1 -1
  256. package/lib/core/page/hash.js +1 -1
  257. package/lib/core/page/lock.js +1 -1
  258. package/lib/core/sql-index-auditor.js +1 -1
  259. package/lib/core/sql-sync/config.js +1 -1
  260. package/lib/core/sql-sync/file-system.js +1 -1
  261. package/lib/core/sql-sync/hash.js +1 -1
  262. package/lib/core/sql-sync/lock.js +1 -1
  263. package/lib/core/sql-sync/utils.js +1 -1
  264. package/lib/core/sql-validator.js +1 -1
  265. package/lib/errors.js +1 -1
  266. package/lib/framework/build-all-flags.js +1 -1
  267. package/lib/framework/error-output.js +1 -1
  268. package/lib/framework/explicit-yes.js +1 -1
  269. package/lib/framework/flags.js +1 -1
  270. package/lib/framework/help.js +1 -1
  271. package/lib/framework/index.js +1 -1
  272. package/lib/framework/output.js +1 -1
  273. package/lib/framework/response.js +1 -1
  274. package/lib/framework/runner-alias.js +1 -1
  275. package/lib/framework/runner.js +1 -1
  276. package/lib/framework/schema-export.js +1 -1
  277. package/lib/framework/supported-flags.js +1 -1
  278. package/lib/framework/types.js +1 -1
  279. package/lib/generated/build-info.d.ts +4 -4
  280. package/lib/generated/build-info.js +1 -1
  281. package/lib/generated/official-routing.js +1 -1
  282. package/lib/generated/routing-contract.js +1 -1
  283. package/lib/help.js +1 -1
  284. package/lib/postinstall.js +1 -1
  285. package/lib/runtime/confirmation.js +1 -1
  286. package/lib/runtime/event.js +1 -1
  287. package/lib/runtime/index.js +1 -1
  288. package/lib/runtime/queue.js +1 -1
  289. package/lib/runtime/resolve.js +1 -1
  290. package/lib/skills/builtin-skill.js +1 -1
  291. package/lib/skills/main.js +1 -1
  292. package/lib/skills/npx-skills-add.js +1 -1
  293. package/lib/skills/skill-presence.js +1 -1
  294. package/lib/telemetry/cli-command-trace.js +1 -1
  295. package/lib/telemetry/cli-help-trace.js +1 -1
  296. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  297. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  298. package/lib/telemetry/send-cli-trace-log.js +1 -1
  299. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  300. package/lib/utils/ai_config.js +1 -1
  301. package/lib/utils/apply-jq-filter.js +1 -1
  302. package/lib/utils/cdn-config.js +1 -1
  303. package/lib/utils/check-sdk-version.js +1 -1
  304. package/lib/utils/cli-version-check.js +1 -1
  305. package/lib/utils/cli-version-policy.js +1 -1
  306. package/lib/utils/config.js +1 -1
  307. package/lib/utils/entity-with-id.js +1 -1
  308. package/lib/utils/file-utils.js +1 -1
  309. package/lib/utils/guides-cdn.js +1 -1
  310. package/lib/utils/http-client.js +1 -1
  311. package/lib/utils/is-non-interactive.js +1 -1
  312. package/lib/utils/logger.js +1 -1
  313. package/lib/utils/params.js +1 -1
  314. package/lib/utils/platform.js +1 -1
  315. package/lib/utils/sleep.js +1 -1
  316. package/lib/utils/template-replacer.js +1 -1
  317. package/lib/utils/update-notice.js +1 -1
  318. package/lib/utils/version.js +1 -1
  319. package/lib/utils/with-active-cookie.js +1 -1
  320. package/lib/utils/write-cli-side-channel.js +1 -1
  321. package/package.json +1 -1
  322. package/skills/rabetbase/SKILL.md +5 -6
  323. package/skills/rabetbase/references/rabetbase-deployment-sync-all.md +56 -0
  324. package/skills/rabetbase.manifest.json +4 -4
  325. package/lib/commands/deployment/auto-sync.d.ts +0 -20
  326. package/lib/commands/deployment/auto-sync.js +0 -1
  327. package/lib/commands/deployment/sync.d.ts +0 -2
  328. package/lib/commands/deployment/sync.js +0 -1
  329. package/skills/rabetbase/references/rabetbase-deployment-sync.md +0 -100
@@ -1 +1 @@
1
- (function(_0x592ba2,_0x1fcc79){const _0x21e14f=a178_0x4ca2,_0x339f3e=_0x592ba2();while(!![]){try{const _0x807e1f=parseInt(_0x21e14f(0x1b7))/0x1+parseInt(_0x21e14f(0x1ac))/0x2*(-parseInt(_0x21e14f(0x1ad))/0x3)+parseInt(_0x21e14f(0x1b5))/0x4*(-parseInt(_0x21e14f(0x1b6))/0x5)+parseInt(_0x21e14f(0x1ae))/0x6+-parseInt(_0x21e14f(0x1b4))/0x7*(-parseInt(_0x21e14f(0x1bd))/0x8)+-parseInt(_0x21e14f(0x1ba))/0x9+parseInt(_0x21e14f(0x1be))/0xa;if(_0x807e1f===_0x1fcc79)break;else _0x339f3e['push'](_0x339f3e['shift']());}catch(_0x566ccb){_0x339f3e['push'](_0x339f3e['shift']());}}}(a178_0x3dc5,0xaac46));import{existsSync}from'node:fs';import a178_0x433774 from'node:path';import a178_0x36d707 from'chalk';import{input,confirm}from'@inquirer/prompts';import{getIsSessionValid}from'../../../auth/is-session-valid.js';import{authServer}from'../../../auth/auth-server.js';function a178_0x4ca2(_0x4cf641,_0xb18e13){_0x4cf641=_0x4cf641-0x1a5;const _0x3dc591=a178_0x3dc5();let _0x4ca2df=_0x3dc591[_0x4cf641];return _0x4ca2df;}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(_0x430d21,_0xbfb48c,_0x4c0032){const _0x4d0468=a178_0x4ca2,_0xba5b4f='my-app',_0x11eee9=readConfig(),_0x27ddff=typeof _0x11eee9[_0x4d0468(0x1aa)]===_0x4d0468(0x1c0)?_0x11eee9[_0x4d0468(0x1aa)]:undefined,_0x31aa0f=await input({'message':_0x4d0468(0x1af),'default':_0xba5b4f,'validate':_0x1aedc2=>{const _0x396862=_0x4d0468,_0x3a4710=_0x1aedc2[_0x396862(0x1b1)]()||_0xba5b4f,_0x224918=getProjectNameValidationError(_0x3a4710);if(_0x224918)return _0x224918;const _0x32b67d=a178_0x433774['resolve'](process[_0x396862(0x1b0)](),_0x3a4710);if(existsSync(_0x32b67d))return _0x396862(0x1b3)+_0x3a4710+_0x396862(0x1ab);return!![];}});console[_0x4d0468(0x1b9)](a178_0x36d707[_0x4d0468(0x1a5)](_0x4d0468(0x1a8)+a178_0x36d707[_0x4d0468(0x1b8)](_0x31aa0f)));const _0x11c199=await selectSingleAppcode(_0x4c0032);console[_0x4d0468(0x1b9)](a178_0x36d707[_0x4d0468(0x1a5)](_0x4d0468(0x1bb)+a178_0x36d707[_0x4d0468(0x1b8)](_0x11c199||_0x4d0468(0x1a7))));if(_0x11c199){const _0x1e5327=await getIsSessionValid();if(!_0x1e5327){const _0x72a717=await confirm({'message':_0x4d0468(0x1a9),'default':!![]});if(_0x72a717){const _0x49d85f=await authServer({'silent':!![]});console[_0x4d0468(0x1b9)](a178_0x36d707[_0x4d0468(0x1a5)](_0x4d0468(0x1bc)+a178_0x36d707['cyan'](_0x49d85f?_0x4d0468(0x1a6):_0x4d0468(0x1b2))));}else console[_0x4d0468(0x1b9)](a178_0x36d707[_0x4d0468(0x1a5)](_0x4d0468(0x1bc)+a178_0x36d707[_0x4d0468(0x1b8)]('Skipped')));}await _0x430d21({'projectName':_0x31aa0f,'appCode':_0x11c199,'env':_0xbfb48c||_0x27ddff||_0x4d0468(0x1bf)});}else await _0x430d21({'projectName':_0x31aa0f,'env':_0xbfb48c||_0x27ddff||_0x4d0468(0x1bf)});}function a178_0x3dc5(){const _0xe6c29f=['Directory\x20\x22','7mgfUhO','4YRUCjf','4553815zVIPeq','202508ERwEdc','cyan','log','7143669edxXLx','√\x20App\x20Code:\x20','√\x20Login\x20status:\x20','6888968oiNDxx','16897550xLQkZI','production','string','green','Logged\x20in','Not\x20set','√\x20Project\x20Name:\x20','No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','env','\x22\x20already\x20exists','2agOXwv','4029687JhJMXh','5962866BZWKci','Project\x20name:','cwd','trim','Login\x20failed'];a178_0x3dc5=function(){return _0xe6c29f;};return a178_0x3dc5();}
1
+ (function(_0x464c51,_0x2d3fd7){const _0x9c7b6e=a176_0x59a0,_0x5a5466=_0x464c51();while(!![]){try{const _0x201876=parseInt(_0x9c7b6e(0x185))/0x1+parseInt(_0x9c7b6e(0x191))/0x2*(parseInt(_0x9c7b6e(0x19d))/0x3)+parseInt(_0x9c7b6e(0x198))/0x4+parseInt(_0x9c7b6e(0x18b))/0x5*(parseInt(_0x9c7b6e(0x199))/0x6)+parseInt(_0x9c7b6e(0x195))/0x7+-parseInt(_0x9c7b6e(0x193))/0x8*(parseInt(_0x9c7b6e(0x19c))/0x9)+-parseInt(_0x9c7b6e(0x19f))/0xa*(parseInt(_0x9c7b6e(0x188))/0xb);if(_0x201876===_0x2d3fd7)break;else _0x5a5466['push'](_0x5a5466['shift']());}catch(_0x3c7aa9){_0x5a5466['push'](_0x5a5466['shift']());}}}(a176_0x2c98,0x45b33));import{existsSync}from'node:fs';import a176_0x37b600 from'node:path';import a176_0x29d993 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';function a176_0x59a0(_0x4c1a1a,_0xdbf662){_0x4c1a1a=_0x4c1a1a-0x185;const _0x2c985e=a176_0x2c98();let _0x59a04a=_0x2c985e[_0x4c1a1a];return _0x59a04a;}import{selectSingleAppcode}from'../../../commands/common/app-selector.js';import{getProjectNameValidationError}from'../../../commands/project/create/project-name.js';export async function guidedCreateProject(_0x437280,_0x49bd38,_0xb5d3bf){const _0x292df6=a176_0x59a0,_0x4c5a79=_0x292df6(0x189),_0x54bb72=readConfig(),_0x3b9db2=typeof _0x54bb72[_0x292df6(0x19b)]===_0x292df6(0x186)?_0x54bb72[_0x292df6(0x19b)]:undefined,_0xd83660=await input({'message':_0x292df6(0x18e),'default':_0x4c5a79,'validate':_0xe28b47=>{const _0x27b72b=_0x292df6,_0x2cfe5f=_0xe28b47['trim']()||_0x4c5a79,_0x3eb957=getProjectNameValidationError(_0x2cfe5f);if(_0x3eb957)return _0x3eb957;const _0x2940a1=a176_0x37b600[_0x27b72b(0x19a)](process[_0x27b72b(0x196)](),_0x2cfe5f);if(existsSync(_0x2940a1))return _0x27b72b(0x194)+_0x2cfe5f+_0x27b72b(0x18d);return!![];}});console[_0x292df6(0x190)](a176_0x29d993[_0x292df6(0x18a)](_0x292df6(0x187)+a176_0x29d993['cyan'](_0xd83660)));const _0x58aab6=await selectSingleAppcode(_0xb5d3bf);console[_0x292df6(0x190)](a176_0x29d993[_0x292df6(0x18a)]('√\x20App\x20Code:\x20'+a176_0x29d993[_0x292df6(0x192)](_0x58aab6||'Not\x20set')));if(_0x58aab6){const _0x151328=await getIsSessionValid();if(!_0x151328){const _0x3f994b=await confirm({'message':'No\x20valid\x20login\x20detected.\x20Login\x20first\x20to\x20pull\x20API\x20config?','default':!![]});if(_0x3f994b){const _0x11ea0d=await authServer({'silent':!![]});console[_0x292df6(0x190)](a176_0x29d993[_0x292df6(0x18a)](_0x292df6(0x18f)+a176_0x29d993[_0x292df6(0x192)](_0x11ea0d?_0x292df6(0x197):_0x292df6(0x19e))));}else console[_0x292df6(0x190)](a176_0x29d993[_0x292df6(0x18a)](_0x292df6(0x18f)+a176_0x29d993[_0x292df6(0x192)]('Skipped')));}await _0x437280({'projectName':_0xd83660,'appCode':_0x58aab6,'env':_0x49bd38||_0x3b9db2||_0x292df6(0x18c)});}else await _0x437280({'projectName':_0xd83660,'env':_0x49bd38||_0x3b9db2||_0x292df6(0x18c)});}function a176_0x2c98(){const _0x24a05a=['2010yKrzth','Login\x20failed','13890550POxxVn','311028ZLJqig','string','√\x20Project\x20Name:\x20','11HUYRgM','my-app','green','15tiPvXy','production','\x22\x20already\x20exists','Project\x20name:','√\x20Login\x20status:\x20','log','962IDYuvD','cyan','24aVAhAi','Directory\x20\x22','3708985MYptqL','cwd','Logged\x20in','2193160IRFrvc','321540GbDoDi','resolve','env','593001zAdSDs'];a176_0x2c98=function(){return _0x24a05a;};return a176_0x2c98();}
@@ -1 +1 @@
1
- function a179_0x2553(_0x2c0279,_0x4afbb1){_0x2c0279=_0x2c0279-0x1dd;const _0x125be6=a179_0x125b();let _0x25534e=_0x125be6[_0x2c0279];return _0x25534e;}(function(_0x52b682,_0x54b7cd){const _0x3e0967=a179_0x2553,_0x5cd869=_0x52b682();while(!![]){try{const _0x48a27d=parseInt(_0x3e0967(0x1de))/0x1+-parseInt(_0x3e0967(0x1e3))/0x2*(parseInt(_0x3e0967(0x1ea))/0x3)+parseInt(_0x3e0967(0x1eb))/0x4*(-parseInt(_0x3e0967(0x1e6))/0x5)+-parseInt(_0x3e0967(0x1e1))/0x6*(parseInt(_0x3e0967(0x1e7))/0x7)+-parseInt(_0x3e0967(0x1dd))/0x8*(parseInt(_0x3e0967(0x1ec))/0x9)+parseInt(_0x3e0967(0x1e0))/0xa*(-parseInt(_0x3e0967(0x1e5))/0xb)+-parseInt(_0x3e0967(0x1e4))/0xc*(-parseInt(_0x3e0967(0x1e2))/0xd);if(_0x48a27d===_0x54b7cd)break;else _0x5cd869['push'](_0x5cd869['shift']());}catch(_0x5c2eca){_0x5cd869['push'](_0x5cd869['shift']());}}}(a179_0x125b,0x6d7c2));export function formatElapsed(_0x338077){const _0x22308a=a179_0x2553,_0x597c12=Date[_0x22308a(0x1e9)]()-_0x338077;if(_0x597c12<0x3e8)return _0x597c12+'ms';const _0x3df1a2=(_0x597c12/0x3e8)[_0x22308a(0x1df)](0x2),_0x3e88bb=_0x3df1a2[_0x22308a(0x1e8)](/\.?0+$/u,'');return _0x3e88bb+'s';}function a179_0x125b(){const _0x125875=['now','141NqIfNb','28clVyFB','9dcLiOR','2879080qtHLYb','733148eXpeFw','toFixed','890QXtUqt','3194238lwYbnW','7163kSngQd','3046MYZjFA','46392qdRsdZ','97163JtPIKG','474920YVRoKM','7tmmlfW','replace'];a179_0x125b=function(){return _0x125875;};return a179_0x125b();}
1
+ function a177_0x5a9a(){const _0x35145f=['23103EpmlzI','4748898kIRuAx','24sDQrGf','312ykKgOT','468545bdoxnU','now','3973464BKkhsb','replace','8lzpkBr','toFixed','30oKZVcG','1842246nXKetD','35535TnQKsO','177558MQlHFN'];a177_0x5a9a=function(){return _0x35145f;};return a177_0x5a9a();}function a177_0x5a44(_0x497a01,_0x23ffec){_0x497a01=_0x497a01-0xc4;const _0x5a9a2f=a177_0x5a9a();let _0x5a4401=_0x5a9a2f[_0x497a01];return _0x5a4401;}(function(_0x3f6e45,_0x5beb9c){const _0x4dbf66=a177_0x5a44,_0xcef37b=_0x3f6e45();while(!![]){try{const _0x39ef68=parseInt(_0x4dbf66(0xcb))/0x1*(parseInt(_0x4dbf66(0xc6))/0x2)+-parseInt(_0x4dbf66(0xcc))/0x3*(parseInt(_0x4dbf66(0xcf))/0x4)+-parseInt(_0x4dbf66(0xca))/0x5+-parseInt(_0x4dbf66(0xce))/0x6*(parseInt(_0x4dbf66(0xd0))/0x7)+-parseInt(_0x4dbf66(0xc4))/0x8+-parseInt(_0x4dbf66(0xc9))/0x9*(-parseInt(_0x4dbf66(0xc8))/0xa)+parseInt(_0x4dbf66(0xcd))/0xb;if(_0x39ef68===_0x5beb9c)break;else _0xcef37b['push'](_0xcef37b['shift']());}catch(_0x1e41ea){_0xcef37b['push'](_0xcef37b['shift']());}}}(a177_0x5a9a,0x5db50));export function formatElapsed(_0x19d8ac){const _0x5d9c9a=a177_0x5a44,_0xe86256=Date[_0x5d9c9a(0xd1)]()-_0x19d8ac;if(_0xe86256<0x3e8)return _0xe86256+'ms';const _0x807608=(_0xe86256/0x3e8)[_0x5d9c9a(0xc7)](0x2),_0x13269a=_0x807608[_0x5d9c9a(0xc5)](/\.?0+$/u,'');return _0x13269a+'s';}
@@ -1 +1 @@
1
- (function(_0x2874c7,_0x2cd943){const _0x94afb8=a180_0x3ebd,_0x476f4d=_0x2874c7();while(!![]){try{const _0x664ff7=parseInt(_0x94afb8(0x1e9))/0x1*(parseInt(_0x94afb8(0x217))/0x2)+-parseInt(_0x94afb8(0x1fd))/0x3+parseInt(_0x94afb8(0x219))/0x4*(-parseInt(_0x94afb8(0x1ce))/0x5)+-parseInt(_0x94afb8(0x21a))/0x6+parseInt(_0x94afb8(0x21d))/0x7*(-parseInt(_0x94afb8(0x1f9))/0x8)+-parseInt(_0x94afb8(0x1cb))/0x9*(parseInt(_0x94afb8(0x1cc))/0xa)+parseInt(_0x94afb8(0x1c5))/0xb*(parseInt(_0x94afb8(0x1d8))/0xc);if(_0x664ff7===_0x2cd943)break;else _0x476f4d['push'](_0x476f4d['shift']());}catch(_0x5a3971){_0x476f4d['push'](_0x476f4d['shift']());}}}(a180_0x2bda,0xb406f));function a180_0x3ebd(_0x531014,_0x5e159a){_0x531014=_0x531014-0x1c1;const _0x2bda22=a180_0x2bda();let _0x3ebd03=_0x2bda22[_0x531014];return _0x3ebd03;}import a180_0x4e7068 from'path';import a180_0x1c4ae1 from'fs';import a180_0x3b6d22 from'chalk';import a180_0x1f66fc 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';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(_0x16641d){const _0x4bf5b7=a180_0x3ebd;try{const _0x319f23=a180_0x1c4ae1[_0x4bf5b7(0x1fa)](_0x16641d);if(!_0x319f23[_0x4bf5b7(0x1f8)]())return null;return{'dev':_0x319f23[_0x4bf5b7(0x1f5)],'ino':_0x319f23[_0x4bf5b7(0x1ff)]};}catch{return null;}}function isSameDirectory(_0x2b9fbb,_0x16768e){const _0x35819c=a180_0x3ebd;return!!_0x2b9fbb&&!!_0x16768e&&_0x2b9fbb[_0x35819c(0x1f5)]===_0x16768e[_0x35819c(0x1f5)]&&_0x2b9fbb['ino']===_0x16768e['ino'];}function commitCurrentDirectoryProject(_0x296559,_0x2102ec,_0x5d7247){const _0x18a2f8=a180_0x3ebd;if(!isSameDirectory(readDirectoryIdentity(_0x296559),_0x5d7247))throw new Error(_0x18a2f8(0x1f4));const _0x583e74=a180_0x4e7068[_0x18a2f8(0x212)](_0x2102ec),_0x3a6ea9=a180_0x1c4ae1[_0x18a2f8(0x20a)](_0x296559);if(_0x3a6ea9[_0x18a2f8(0x1e3)]!==0x1||_0x3a6ea9[0x0]!==_0x583e74)throw CliErrors[_0x18a2f8(0x1c9)](_0x18a2f8(0x225),_0x18a2f8(0x21b));const _0xd265e5=a180_0x4e7068[_0x18a2f8(0x1fc)](_0x2102ec,_0x18a2f8(0x1e6)),_0x1a0ffd=[];try{for(const _0x579cbc of a180_0x1c4ae1['readdirSync'](_0xd265e5)){a180_0x1c4ae1[_0x18a2f8(0x1c8)](a180_0x4e7068[_0x18a2f8(0x1fc)](_0xd265e5,_0x579cbc),a180_0x4e7068[_0x18a2f8(0x1fc)](_0x296559,_0x579cbc)),_0x1a0ffd[_0x18a2f8(0x22c)](_0x579cbc);}a180_0x1c4ae1[_0x18a2f8(0x207)](_0x2102ec,{'recursive':!![],'force':!![]});}catch(_0x35c2ef){for(const _0x14e09f of _0x1a0ffd[_0x18a2f8(0x1cf)]()){const _0x5c3049=a180_0x4e7068[_0x18a2f8(0x1fc)](_0x296559,_0x14e09f);if(!a180_0x1c4ae1[_0x18a2f8(0x22d)](_0x5c3049))continue;a180_0x1c4ae1[_0x18a2f8(0x1c8)](_0x5c3049,a180_0x4e7068[_0x18a2f8(0x1fc)](_0xd265e5,_0x14e09f));}throw _0x35c2ef;}}export async function createApp(_0x20f317){const _0x22eca7=a180_0x3ebd,_0x149677=await checkCliVersion();(_0x149677[_0x22eca7(0x22e)]||_0x149677[_0x22eca7(0x203)])&&(printCliUpgradeWarning(_0x149677),assertCliVersionSupported(_0x149677),logger['info'](_0x22eca7(0x21e),_0x22eca7(0x1c6),{'currentVersion':_0x149677[_0x22eca7(0x218)],'stableVersion':_0x149677[_0x22eca7(0x216)],'minimumVersion':_0x149677[_0x22eca7(0x20c)],'needsUpgrade':_0x149677['needsUpgrade'],'belowMinimum':_0x149677[_0x22eca7(0x203)]}));const _0x13ca7a=_0x20f317['currentDir']?a180_0x4e7068[_0x22eca7(0x212)](process[_0x22eca7(0x1f0)]()):_0x20f317[_0x22eca7(0x1d0)];if(_0x13ca7a&&(_0x20f317['appCode']||_0x20f317[_0x22eca7(0x205)]))await runCreate({'projectName':_0x13ca7a,'appCode':_0x20f317[_0x22eca7(0x233)],'env':_0x20f317[_0x22eca7(0x20b)]},_0x20f317);else{if(_0x13ca7a){const _0x4cd97c=await selectSingleAppcode(_0x20f317[_0x22eca7(0x1e4)]);await runCreate({'projectName':_0x13ca7a,'appCode':_0x4cd97c||undefined,'env':_0x20f317[_0x22eca7(0x20b)]},_0x20f317);}else await guidedCreateProject(_0x5e6f78=>runCreate(_0x5e6f78,_0x20f317),_0x20f317[_0x22eca7(0x20b)],_0x20f317[_0x22eca7(0x1e4)]);}}async function runCreate(_0x4a3281,_0x118099){const _0x39b251=a180_0x3ebd;_0x4a3281[_0x39b251(0x20e)]=validateProjectName(_0x4a3281['projectName']);const _0x1fa7ae=_0x118099['currentDir']?process[_0x39b251(0x1f0)]():a180_0x4e7068['resolve'](process[_0x39b251(0x1f0)](),_0x4a3281[_0x39b251(0x20e)]);if(_0x118099[_0x39b251(0x1f3)]){if(a180_0x1c4ae1[_0x39b251(0x20a)](_0x1fa7ae)[_0x39b251(0x1e3)]>0x0)throw CliErrors[_0x39b251(0x1c9)]('The\x20current\x20directory\x20must\x20be\x20empty.',_0x39b251(0x204));}else{if(a180_0x1c4ae1['existsSync'](_0x1fa7ae))throw new Error(_0x39b251(0x1dc)+_0x4a3281[_0x39b251(0x20e)]+_0x39b251(0x1f1));}let _0x2e4a46=null;const _0x223189=_0x118099[_0x39b251(0x1f3)]?readDirectoryIdentity(_0x1fa7ae):null;let _0xca87b6=null;try{a180_0x1c4ae1[_0x39b251(0x22f)](a180_0x4e7068['dirname'](_0x1fa7ae),a180_0x1c4ae1['constants'][_0x39b251(0x21c)]);}catch{throw new Error('Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions');}logger['info']('create','Starting\x20project\x20creation:\x20'+_0x4a3281[_0x39b251(0x20e)],{'projectDir':_0x1fa7ae,'appCode':_0x4a3281[_0x39b251(0x233)]}),console[_0x39b251(0x1e5)](),console[_0x39b251(0x1e5)](a180_0x3b6d22[_0x39b251(0x1e7)](_0x39b251(0x20d))+'Project\x20name:\x20'+a180_0x3b6d22[_0x39b251(0x1e7)](_0x4a3281['projectName'])+(_0x4a3281[_0x39b251(0x233)]?_0x39b251(0x1d7)+a180_0x3b6d22[_0x39b251(0x1d3)](_0x4a3281[_0x39b251(0x233)]):''));try{let _0x47250e=_0x4a3281[_0x39b251(0x20e)];_0x118099[_0x39b251(0x1f3)]&&(_0xca87b6=a180_0x1c4ae1['mkdtempSync'](a180_0x4e7068['join'](_0x1fa7ae,_0x39b251(0x1e2))),_0x47250e=a180_0x4e7068[_0x39b251(0x1da)](process[_0x39b251(0x1f0)](),a180_0x4e7068[_0x39b251(0x1fc)](_0xca87b6,_0x39b251(0x1e6))));const _0x184828=a180_0x4e7068[_0x39b251(0x1fb)](process['cwd'](),_0x47250e);await runTask(_0x39b251(0x1ea),_0x1652c9=>copyProjectTemplate(_0x47250e,_0x34155d=>_0x1652c9(projectTemplateStageLabel(_0x34155d)),_0x118099['templateSource']),_0x39b251(0x1ca)),_0x2e4a46=_0x118099['currentDir']?null:readDirectoryIdentity(_0x1fa7ae);if(!_0x118099[_0x39b251(0x1f3)]&&!_0x2e4a46)throw new Error('Unable\x20to\x20verify\x20ownership\x20of\x20the\x20created\x20project\x20directory');await updatePackageJsonName(_0x47250e,_0x4a3281['projectName']),await runTask('Install\x20dependencies',()=>installDependencies(_0x47250e)),await runTask(_0x39b251(0x211),()=>formatProjectCode(_0x47250e)),await configureAppCode(_0x47250e,_0x4a3281[_0x39b251(0x20e)],_0x4a3281['appCode']||'',_0x4a3281[_0x39b251(0x20b)]);let _0x20772f=![];if(_0x4a3281[_0x39b251(0x233)]){console[_0x39b251(0x1e5)]('*\x20Pulling\x20API\x20configuration...');const _0x6fd091=process[_0x39b251(0x1f0)]();try{process[_0x39b251(0x1f7)](_0x184828);const _0x49e42f=_0x4a3281['env']||_0x39b251(0x1fe);initEnv(_0x49e42f);const {configArray:_0x49f399}=await fetchModelList(_0x4a3281[_0x39b251(0x233)],_0x118099[_0x39b251(0x1e4)]||''),_0x206ce1=DEFAULT_API_DIR,_0x1de2d3=await generateApiFile(_0x49f399,'',_0x4a3281[_0x39b251(0x233)],!![],_0x49e42f,_0x206ce1,undefined,getSdkClientRoutingConfig(),{'overwriteTypescript':!![]});console[_0x39b251(0x1e5)](_0x39b251(0x1c2)+_0x49f399[_0x39b251(0x1e3)]+_0x39b251(0x20f)+_0x1de2d3[_0x39b251(0x227)]+'\x20model(s)'),logger['info'](_0x39b251(0x21e),'API\x20configuration\x20pulled:\x20'+_0x4a3281[_0x39b251(0x233)]);}catch(_0x2352ae){_0x20772f=!![],console[_0x39b251(0x1e5)]('!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20'+CLI_BIN_NAME+_0x39b251(0x1d4)),logger[_0x39b251(0x22a)](_0x39b251(0x21e),_0x39b251(0x201),{'error':_0x2352ae instanceof Error?_0x2352ae[_0x39b251(0x208)]:String(_0x2352ae)});}finally{process[_0x39b251(0x1f7)](_0x6fd091);}}if(_0x118099[_0x39b251(0x1f3)]){if(!_0xca87b6||!_0x223189)throw new Error(_0x39b251(0x1e0));commitCurrentDirectoryProject(_0x1fa7ae,_0xca87b6,_0x223189),_0xca87b6=null;}try{logger['setLogPath'](_0x1fa7ae),logger[_0x39b251(0x1ed)]('create',_0x39b251(0x228)+_0x4a3281[_0x39b251(0x20e)]);}catch(_0xdd15f1){console[_0x39b251(0x22a)](_0x39b251(0x206)+(_0xdd15f1 instanceof Error?_0xdd15f1['message']:String(_0xdd15f1)));}console[_0x39b251(0x1e5)](),console['log'](a180_0x3b6d22[_0x39b251(0x1e7)]('─'['repeat'](0x3c))),console[_0x39b251(0x1e5)](a180_0x3b6d22[_0x39b251(0x1d3)][_0x39b251(0x224)](_0x39b251(0x1d2))),console['log']();const _0x356e6a=_0x118099[_0x39b251(0x1f3)]?CLI_BIN_NAME+'\x20run\x20start':_0x39b251(0x223)+_0x4a3281[_0x39b251(0x20e)]+_0x39b251(0x22b)+CLI_BIN_NAME+_0x39b251(0x221);console[_0x39b251(0x1e5)]('\x20\x201.\x20Start\x20project:\x20'+a180_0x3b6d22[_0x39b251(0x1d3)]['bold'](_0x356e6a)),_0x20772f&&console[_0x39b251(0x1e5)](_0x39b251(0x1dd)+a180_0x3b6d22[_0x39b251(0x1d3)][_0x39b251(0x224)](CLI_BIN_NAME+_0x39b251(0x1d4))),console[_0x39b251(0x1e5)](a180_0x3b6d22['green']('─'[_0x39b251(0x1ee)](0x3c)));}catch(_0x28fa5c){logger[_0x39b251(0x1c4)](_0x39b251(0x21e),_0x39b251(0x231)+_0x4a3281['projectName'],{'error':_0x28fa5c instanceof Error?_0x28fa5c[_0x39b251(0x208)]:String(_0x28fa5c)});try{const _0x51ab7c=readDirectoryIdentity(_0x1fa7ae);if(_0x118099[_0x39b251(0x1f3)]&&_0xca87b6)a180_0x1c4ae1[_0x39b251(0x207)](_0xca87b6,{'recursive':!![],'force':!![]});else{if(_0x2e4a46&&_0x51ab7c?.[_0x39b251(0x1f5)]===_0x2e4a46[_0x39b251(0x1f5)]&&_0x51ab7c[_0x39b251(0x1ff)]===_0x2e4a46[_0x39b251(0x1ff)])console[_0x39b251(0x1e5)](_0x39b251(0x1c3)+_0x1fa7ae),a180_0x1c4ae1[_0x39b251(0x207)](_0x1fa7ae,{'recursive':!![],'force':!![]});else _0x51ab7c&&logger[_0x39b251(0x22a)](_0x39b251(0x21e),_0x39b251(0x210)+_0x1fa7ae);}}catch{logger['warn'](_0x39b251(0x21e),_0x39b251(0x222)+_0x1fa7ae);}throw _0x28fa5c;}}function a180_0x2bda(){const _0x267b10=['\x20dataset(s),\x20generated\x20','Skip\x20cleanup:\x20project\x20directory\x20ownership\x20changed:\x20','Format\x20code','basename','copying','√\x20package.json\x20updated:\x20name=','writeFileSync','stableVersion','2624IbQmmU','currentVersion','82932koPjsd','7857468wutYEa','Remove\x20the\x20new\x20files\x20and\x20retry\x20from\x20an\x20empty\x20directory.','W_OK','7TUFQqk','create','package.json','Failed\x20to\x20configure\x20app\x20AppCode','\x20run\x20start','Failed\x20to\x20clean\x20up\x20project\x20directory:\x20','cd\x20','bold','The\x20current\x20directory\x20changed\x20during\x20project\x20creation.','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','modelCount','Project\x20created:\x20','Extracting\x20project\x20template','warn','\x20&&\x20','push','existsSync','needsUpgrade','accessSync','keys','Project\x20creation\x20failed:\x20','1.0.0','appCode','gray','√\x20Pulled\x20','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','error','31647oSODzZ','CLI\x20version\x20check','description','renameSync','validation','Project\x20template\x20ready','243OrtUgU','163520GiFVRx','version','305fxRvTN','reverse','projectCode','\x20config\x20set\x20appcode\x20<app-code>\x27','🚀\x20Next\x20Steps:','cyan','\x20api\x20pull\x20--force\x20--yes','extracting','text','\x20|\x20AppCode:\x20','15612eqnVPv','name','relative','resolving','Project\x20directory\x20','\x20\x202.\x20Pull\x20API\x20configuration:\x20','start','utf8','Unable\x20to\x20prepare\x20the\x20current\x20directory\x20workspace','info','.rabetbase-create-','length','cookie','log','project','green','apps','857tIBsJQ','Resolving\x20project\x20template','toLocaleString','parse','success','repeat','...','cwd','\x20already\x20exists','Configured\x20app\x20AppCode:\x20','currentDir','Current\x20directory\x20identity\x20changed\x20during\x20project\x20creation','dev','\x20|\x20Default:\x20implicit\x20(single\x20app)','chdir','isDirectory','7175416ylPesh','lstatSync','resolve','join','651744ZyUqgm','production','ino','Downloading\x20project\x20template','API\x20configuration\x20pull\x20failed','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','belowMinimum','Remove\x20or\x20move\x20the\x20existing\x20files,\x20then\x20retry\x20with\x20--current-dir.','nonInteractive','!\x20Project\x20created,\x20but\x20local\x20logging\x20could\x20not\x20be\x20initialized:\x20','rmSync','message','readFileSync','readdirSync','env','minimumVersion','\x20√\x20','projectName'];a180_0x2bda=function(){return _0x267b10;};return a180_0x2bda();}async function runTask(_0x201f25,_0x20eeb8,_0x999f2e=_0x201f25){const _0x45f33b=a180_0x3ebd,_0x51e888=a180_0x1f66fc(_0x201f25+'...')[_0x45f33b(0x1de)]();try{const _0x56a05e=await _0x20eeb8(_0x50afdf=>{const _0x1fadbb=_0x45f33b;_0x51e888[_0x1fadbb(0x1d6)]=_0x50afdf+_0x1fadbb(0x1ef);});_0x51e888['stop'](),console['log'](''+a180_0x3b6d22[_0x45f33b(0x1e7)](_0x45f33b(0x20d))+_0x999f2e+'\x20'+a180_0x3b6d22[_0x45f33b(0x1c1)]('['+_0x56a05e+']'));}catch(_0x1a8abe){_0x51e888['fail'](_0x201f25);throw _0x1a8abe;}}function projectTemplateStageLabel(_0x584941){const _0x53acca=a180_0x3ebd;switch(_0x584941){case _0x53acca(0x1db):return'Resolving\x20project\x20template';case'downloading':return _0x53acca(0x200);case'verifying':return'Verifying\x20project\x20template';case _0x53acca(0x1d5):return _0x53acca(0x229);case _0x53acca(0x213):return'Copying\x20local\x20template\x20source';}}async function updatePackageJsonName(_0x50d4ab,_0x5bf168){const _0x44ca4f=a180_0x3ebd,_0x38d356=a180_0x4e7068[_0x44ca4f(0x1fb)](process[_0x44ca4f(0x1f0)](),_0x50d4ab),_0xd954c=a180_0x4e7068['join'](_0x38d356,_0x44ca4f(0x21f));try{console[_0x44ca4f(0x1e5)](_0x44ca4f(0x202));const _0x4598ae=getRabetbaseCliPackageRoot(),_0x5971a1=a180_0x4e7068[_0x44ca4f(0x1fc)](_0x4598ae,_0x44ca4f(0x21f));let _0x40ec1d='1.0.0';try{const _0xae2aa8=JSON[_0x44ca4f(0x1ec)](a180_0x1c4ae1['readFileSync'](_0x5971a1,_0x44ca4f(0x1df)));_0x40ec1d=_0xae2aa8['version']||_0x44ca4f(0x232);}catch{}const _0x29e273=a180_0x1c4ae1[_0x44ca4f(0x209)](_0xd954c,_0x44ca4f(0x1df)),_0x4d68d4=JSON[_0x44ca4f(0x1ec)](_0x29e273);_0x4d68d4[_0x44ca4f(0x1d9)]=_0x5bf168,_0x4d68d4[_0x44ca4f(0x1c7)]=_0x5bf168+'\x20Generated\x20by\x20rabetbase\x20cli\x20'+_0x40ec1d,a180_0x1c4ae1[_0x44ca4f(0x215)](_0xd954c,JSON['stringify'](_0x4d68d4,null,0x2)+'\x0a',_0x44ca4f(0x1df)),console[_0x44ca4f(0x1e5)](_0x44ca4f(0x214)+_0x5bf168),logger['info'](_0x44ca4f(0x21e),'Updating\x20package.json\x20name');}catch(_0x365f7d){logger[_0x44ca4f(0x1c4)](_0x44ca4f(0x21e),'Failed\x20to\x20update\x20package.json');throw _0x365f7d;}}async function configureAppCode(_0xd76a2a,_0x1dfe20,_0x770cff,_0x3fe538){const _0xfd39c5=a180_0x3ebd,_0x5bfd62=a180_0x4e7068[_0xfd39c5(0x1fb)](process[_0xfd39c5(0x1f0)](),_0xd76a2a),_0x592c63=a180_0x4e7068[_0xfd39c5(0x1fc)](_0x5bfd62,NEW_CONFIG_NAME);try{_0x770cff?console['log']('*\x20Configuring\x20AppCode\x20for\x20project\x20'+_0x1dfe20+':\x20'+_0x770cff):console[_0xfd39c5(0x1e5)](_0xfd39c5(0x226)+_0x1dfe20);const _0x526239=getRabetbaseCliPackageRoot(),_0x4f60a1=a180_0x4e7068[_0xfd39c5(0x1fc)](_0x526239,_0xfd39c5(0x21f));let _0x18c4ba=_0xfd39c5(0x232);try{const _0x4ea7ae=JSON['parse'](a180_0x1c4ae1[_0xfd39c5(0x209)](_0x4f60a1,_0xfd39c5(0x1df)));_0x18c4ba=_0x4ea7ae[_0xfd39c5(0x1cd)]||'1.0.0';}catch{}const {globalConfig:_0x426cf4}=loadRawConfigLayers(),_0x2b6f66=typeof _0x426cf4['env']==='string'?_0x426cf4[_0xfd39c5(0x20b)]:undefined,_0x469d3f={};for(const _0x385b96 of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x426cf4[_0x385b96]!=null)_0x469d3f[_0x385b96]=_0x426cf4[_0x385b96];}const _0x3d5d8e=buildCanonicalProjectConfig(_0x469d3f,{'appCodes':_0x770cff?[_0x770cff]:[],'env':_0x3fe538||_0x2b6f66||_0xfd39c5(0x1fe),'metadata':{'createdAt':new Date()[_0xfd39c5(0x1eb)](),'version':_0x18c4ba}});writeConfigFile(_0x592c63,_0x3d5d8e),await generateSdkConfigFile(a180_0x4e7068['join'](_0x5bfd62,DEFAULT_API_DIR),getSdkClientRoutingConfig()),writeProjectDomainRoutingManifest(_0x5bfd62),_0x770cff?console[_0xfd39c5(0x1e5)]('√\x20Configuration\x20file\x20created,\x20Apps:\x20'+Object[_0xfd39c5(0x230)](_0x3d5d8e[_0xfd39c5(0x1e8)]||{})[_0xfd39c5(0x1fc)](',\x20')+_0xfd39c5(0x1f6)):console[_0xfd39c5(0x1e5)]('√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27'+CLI_BIN_NAME+_0xfd39c5(0x1d1)),logger[_0xfd39c5(0x1e1)](_0xfd39c5(0x21e),_0xfd39c5(0x1f2)+_0x770cff);}catch(_0x3a4910){logger[_0xfd39c5(0x1c4)](_0xfd39c5(0x21e),_0xfd39c5(0x220));throw _0x3a4910;}}
1
+ (function(_0x24c9e9,_0x3f024a){const _0x3e781b=a178_0x569a,_0x5bef58=_0x24c9e9();while(!![]){try{const _0x179d24=parseInt(_0x3e781b(0xfc))/0x1*(-parseInt(_0x3e781b(0xe1))/0x2)+-parseInt(_0x3e781b(0xd1))/0x3*(-parseInt(_0x3e781b(0xac))/0x4)+-parseInt(_0x3e781b(0xf3))/0x5*(parseInt(_0x3e781b(0xc4))/0x6)+-parseInt(_0x3e781b(0xc3))/0x7*(-parseInt(_0x3e781b(0xa7))/0x8)+-parseInt(_0x3e781b(0xad))/0x9+parseInt(_0x3e781b(0xa6))/0xa*(-parseInt(_0x3e781b(0xcf))/0xb)+-parseInt(_0x3e781b(0xb3))/0xc*(-parseInt(_0x3e781b(0xa8))/0xd);if(_0x179d24===_0x3f024a)break;else _0x5bef58['push'](_0x5bef58['shift']());}catch(_0x28ec2d){_0x5bef58['push'](_0x5bef58['shift']());}}}(a178_0x3237,0xdc06e));function a178_0x3237(){const _0x21b0ac=['\x20|\x20AppCode:\x20','version','env','apps','Failed\x20to\x20configure\x20app\x20AppCode','Unable\x20to\x20prepare\x20the\x20current\x20directory\x20workspace','2836CsDCaf','dev','Project\x20directory\x20','utf8','\x20\x201.\x20Start\x20project:\x20','Verifying\x20project\x20template','mkdtempSync','\x20api\x20pull\x20--force\x20--yes','needsUpgrade','Resolving\x20project\x20template','\x20√\x20','package.json','\x20Generated\x20by\x20rabetbase\x20cli\x20','chdir','\x20config\x20set\x20appcode\x20<app-code>\x27','templateSource','cwd','info','50oEeVfW','projectCode','ino','Copying\x20local\x20template\x20source','bold','\x20already\x20exists','cyan','Downloading\x20project\x20template','rmSync','106AzigJx','\x20dataset(s),\x20generated\x20','Starting\x20project\x20creation:\x20','gray','currentVersion','log','Project\x20creation\x20failed:\x20','√\x20Pulled\x20','Format\x20code','Install\x20dependencies','readFileSync','green','√\x20Configuration\x20file\x20created,\x20Apps:\x20','Failed\x20to\x20update\x20package.json','setLogPath','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','Failed\x20to\x20clean\x20up\x20project\x20directory:\x20','*\x20Creating\x20configuration\x20file\x20for\x20project\x20','resolve','belowMinimum','push','Remove\x20or\x20move\x20the\x20existing\x20files,\x20then\x20retry\x20with\x20--current-dir.','isDirectory','nonInteractive','reverse','Extracting\x20project\x20template','toLocaleString','appCode','\x20&&\x20','\x20|\x20Default:\x20implicit\x20(single\x20app)','message','accessSync','text','fail','renameSync','\x20run\x20start','10VdaEIe','14936jRPhVM','13OtCjIA','create','API\x20configuration\x20pull\x20failed','keys','4wwAsmx','7775613TQYkEP','The\x20current\x20directory\x20must\x20be\x20empty.','stringify','basename','modelCount','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20','18071436kqmfcM','error','verifying','Remove\x20the\x20new\x20files\x20and\x20retry\x20from\x20an\x20empty\x20directory.','1.0.0','extracting','W_OK','repeat','CLI\x20version\x20check','*\x20Configuring\x20AppCode\x20for\x20project\x20','copying','validation','\x20\x202.\x20Pull\x20API\x20configuration:\x20','join','production','existsSync','5131IvcMtm','333942ZCcCqO','projectName','readdirSync','🚀\x20Next\x20Steps:','downloading','...','resolving','name','cookie','Skip\x20cleanup:\x20project\x20directory\x20ownership\x20changed:\x20','project','12666379EGyuGQ','length','2247270LtjPzj','parse','cd\x20','!\x20Project\x20created,\x20but\x20local\x20logging\x20could\x20not\x20be\x20initialized:\x20','*\x20Pulling\x20API\x20configuration...','stableVersion','currentDir','.rabetbase-create-','Unable\x20to\x20verify\x20ownership\x20of\x20the\x20created\x20project\x20directory','warn'];a178_0x3237=function(){return _0x21b0ac;};return a178_0x3237();}import a178_0x23bf7f from'path';import a178_0x46d95a from'fs';import a178_0x254f7a from'chalk';import a178_0x26607a 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';function a178_0x569a(_0x3e2a4d,_0x37bda4){_0x3e2a4d=_0x3e2a4d-0x87;const _0x323799=a178_0x3237();let _0x569a42=_0x323799[_0x3e2a4d];return _0x569a42;}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(_0x52af3e){const _0x119d34=a178_0x569a;try{const _0x163d0b=a178_0x46d95a['lstatSync'](_0x52af3e);if(!_0x163d0b[_0x119d34(0x98)]())return null;return{'dev':_0x163d0b[_0x119d34(0xe2)],'ino':_0x163d0b['ino']};}catch{return null;}}function isSameDirectory(_0x5c5a20,_0x1cf26c){const _0x2f3a54=a178_0x569a;return!!_0x5c5a20&&!!_0x1cf26c&&_0x5c5a20['dev']===_0x1cf26c['dev']&&_0x5c5a20[_0x2f3a54(0xf5)]===_0x1cf26c[_0x2f3a54(0xf5)];}function commitCurrentDirectoryProject(_0x930181,_0x18f5f7,_0x568f15){const _0x4038fc=a178_0x569a;if(!isSameDirectory(readDirectoryIdentity(_0x930181),_0x568f15))throw new Error('Current\x20directory\x20identity\x20changed\x20during\x20project\x20creation');const _0x4410a8=a178_0x23bf7f[_0x4038fc(0xb0)](_0x18f5f7),_0x5f37c0=a178_0x46d95a[_0x4038fc(0xc6)](_0x930181);if(_0x5f37c0[_0x4038fc(0xd0)]!==0x1||_0x5f37c0[0x0]!==_0x4410a8)throw CliErrors[_0x4038fc(0xbe)]('The\x20current\x20directory\x20changed\x20during\x20project\x20creation.',_0x4038fc(0xb6));const _0x333abc=a178_0x23bf7f[_0x4038fc(0xc0)](_0x18f5f7,_0x4038fc(0xce)),_0x31def5=[];try{for(const _0x5138c3 of a178_0x46d95a[_0x4038fc(0xc6)](_0x333abc)){a178_0x46d95a[_0x4038fc(0xa4)](a178_0x23bf7f['join'](_0x333abc,_0x5138c3),a178_0x23bf7f[_0x4038fc(0xc0)](_0x930181,_0x5138c3)),_0x31def5[_0x4038fc(0x96)](_0x5138c3);}a178_0x46d95a[_0x4038fc(0xfb)](_0x18f5f7,{'recursive':!![],'force':!![]});}catch(_0x32fa57){for(const _0xe0e56 of _0x31def5[_0x4038fc(0x9a)]()){const _0xc47c7c=a178_0x23bf7f[_0x4038fc(0xc0)](_0x930181,_0xe0e56);if(!a178_0x46d95a['existsSync'](_0xc47c7c))continue;a178_0x46d95a[_0x4038fc(0xa4)](_0xc47c7c,a178_0x23bf7f[_0x4038fc(0xc0)](_0x333abc,_0xe0e56));}throw _0x32fa57;}}export async function createApp(_0x2a2f73){const _0x2a7b00=a178_0x569a,_0x36f522=await checkCliVersion();(_0x36f522[_0x2a7b00(0xe9)]||_0x36f522[_0x2a7b00(0x95)])&&(printCliUpgradeWarning(_0x36f522),assertCliVersionSupported(_0x36f522),logger[_0x2a7b00(0xf2)](_0x2a7b00(0xa9),_0x2a7b00(0xbb),{'currentVersion':_0x36f522[_0x2a7b00(0x100)],'stableVersion':_0x36f522[_0x2a7b00(0xd6)],'minimumVersion':_0x36f522['minimumVersion'],'needsUpgrade':_0x36f522['needsUpgrade'],'belowMinimum':_0x36f522[_0x2a7b00(0x95)]}));const _0xa1f82=_0x2a2f73[_0x2a7b00(0xd7)]?a178_0x23bf7f[_0x2a7b00(0xb0)](process[_0x2a7b00(0xf1)]()):_0x2a2f73[_0x2a7b00(0xf4)];if(_0xa1f82&&(_0x2a2f73['appCode']||_0x2a2f73[_0x2a7b00(0x99)]))await runCreate({'projectName':_0xa1f82,'appCode':_0x2a2f73['appCode'],'env':_0x2a2f73[_0x2a7b00(0xdd)]},_0x2a2f73);else{if(_0xa1f82){const _0x32459d=await selectSingleAppcode(_0x2a2f73[_0x2a7b00(0xcc)]);await runCreate({'projectName':_0xa1f82,'appCode':_0x32459d||undefined,'env':_0x2a2f73[_0x2a7b00(0xdd)]},_0x2a2f73);}else await guidedCreateProject(_0x55a861=>runCreate(_0x55a861,_0x2a2f73),_0x2a2f73[_0x2a7b00(0xdd)],_0x2a2f73[_0x2a7b00(0xcc)]);}}async function runCreate(_0x393889,_0x21f55e){const _0x39dcab=a178_0x569a;_0x393889[_0x39dcab(0xc5)]=validateProjectName(_0x393889[_0x39dcab(0xc5)]);const _0x2f384e=_0x21f55e['currentDir']?process[_0x39dcab(0xf1)]():a178_0x23bf7f[_0x39dcab(0x94)](process[_0x39dcab(0xf1)](),_0x393889[_0x39dcab(0xc5)]);if(_0x21f55e[_0x39dcab(0xd7)]){if(a178_0x46d95a[_0x39dcab(0xc6)](_0x2f384e)[_0x39dcab(0xd0)]>0x0)throw CliErrors[_0x39dcab(0xbe)](_0x39dcab(0xae),_0x39dcab(0x97));}else{if(a178_0x46d95a[_0x39dcab(0xc2)](_0x2f384e))throw new Error(_0x39dcab(0xe3)+_0x393889[_0x39dcab(0xc5)]+_0x39dcab(0xf8));}let _0x3ac4b7=null;const _0x2414b5=_0x21f55e['currentDir']?readDirectoryIdentity(_0x2f384e):null;let _0x9c0ed8=null;try{a178_0x46d95a[_0x39dcab(0xa1)](a178_0x23bf7f['dirname'](_0x2f384e),a178_0x46d95a['constants'][_0x39dcab(0xb9)]);}catch{throw new Error('Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions');}logger[_0x39dcab(0xf2)]('create',_0x39dcab(0xfe)+_0x393889[_0x39dcab(0xc5)],{'projectDir':_0x2f384e,'appCode':_0x393889['appCode']}),console['log'](),console[_0x39dcab(0x87)](a178_0x254f7a[_0x39dcab(0x8d)](_0x39dcab(0xeb))+'Project\x20name:\x20'+a178_0x254f7a['green'](_0x393889[_0x39dcab(0xc5)])+(_0x393889[_0x39dcab(0x9d)]?_0x39dcab(0xdb)+a178_0x254f7a[_0x39dcab(0xf9)](_0x393889[_0x39dcab(0x9d)]):''));try{let _0x29a705=_0x393889['projectName'];_0x21f55e['currentDir']&&(_0x9c0ed8=a178_0x46d95a[_0x39dcab(0xe7)](a178_0x23bf7f[_0x39dcab(0xc0)](_0x2f384e,_0x39dcab(0xd8))),_0x29a705=a178_0x23bf7f['relative'](process[_0x39dcab(0xf1)](),a178_0x23bf7f[_0x39dcab(0xc0)](_0x9c0ed8,'project')));const _0x4f96d3=a178_0x23bf7f[_0x39dcab(0x94)](process['cwd'](),_0x29a705);await runTask('Resolving\x20project\x20template',_0x1e4148=>copyProjectTemplate(_0x29a705,_0x39dd25=>_0x1e4148(projectTemplateStageLabel(_0x39dd25)),_0x21f55e[_0x39dcab(0xf0)]),'Project\x20template\x20ready'),_0x3ac4b7=_0x21f55e[_0x39dcab(0xd7)]?null:readDirectoryIdentity(_0x2f384e);if(!_0x21f55e[_0x39dcab(0xd7)]&&!_0x3ac4b7)throw new Error(_0x39dcab(0xd9));await updatePackageJsonName(_0x29a705,_0x393889[_0x39dcab(0xc5)]),await runTask(_0x39dcab(0x8b),()=>installDependencies(_0x29a705)),await runTask(_0x39dcab(0x8a),()=>formatProjectCode(_0x29a705)),await configureAppCode(_0x29a705,_0x393889[_0x39dcab(0xc5)],_0x393889['appCode']||'',_0x393889[_0x39dcab(0xdd)]);let _0x16c2f8=![];if(_0x393889[_0x39dcab(0x9d)]){console[_0x39dcab(0x87)](_0x39dcab(0xd5));const _0x461d78=process['cwd']();try{process[_0x39dcab(0xee)](_0x4f96d3);const _0x3c19cd=_0x393889[_0x39dcab(0xdd)]||_0x39dcab(0xc1);initEnv(_0x3c19cd);const {configArray:_0x16c2ad}=await fetchModelList(_0x393889[_0x39dcab(0x9d)],_0x21f55e['cookie']||''),_0x3b929c=DEFAULT_API_DIR,_0x4907a4=await generateApiFile(_0x16c2ad,'',_0x393889[_0x39dcab(0x9d)],!![],_0x3c19cd,_0x3b929c,undefined,getSdkClientRoutingConfig(),{'overwriteTypescript':!![]});console[_0x39dcab(0x87)](_0x39dcab(0x89)+_0x16c2ad[_0x39dcab(0xd0)]+_0x39dcab(0xfd)+_0x4907a4[_0x39dcab(0xb1)]+'\x20model(s)'),logger[_0x39dcab(0xf2)](_0x39dcab(0xa9),'API\x20configuration\x20pulled:\x20'+_0x393889[_0x39dcab(0x9d)]);}catch(_0x476023){_0x16c2f8=!![],console[_0x39dcab(0x87)]('!\x20API\x20configuration\x20pull\x20error,\x20you\x20can\x20manually\x20run:\x20'+CLI_BIN_NAME+_0x39dcab(0xe8)),logger[_0x39dcab(0xda)]('create',_0x39dcab(0xaa),{'error':_0x476023 instanceof Error?_0x476023['message']:String(_0x476023)});}finally{process[_0x39dcab(0xee)](_0x461d78);}}if(_0x21f55e[_0x39dcab(0xd7)]){if(!_0x9c0ed8||!_0x2414b5)throw new Error(_0x39dcab(0xe0));commitCurrentDirectoryProject(_0x2f384e,_0x9c0ed8,_0x2414b5),_0x9c0ed8=null;}try{logger[_0x39dcab(0x90)](_0x2f384e),logger['success']('create','Project\x20created:\x20'+_0x393889[_0x39dcab(0xc5)]);}catch(_0x6bc5e1){console[_0x39dcab(0xda)](_0x39dcab(0xd4)+(_0x6bc5e1 instanceof Error?_0x6bc5e1[_0x39dcab(0xa0)]:String(_0x6bc5e1)));}console[_0x39dcab(0x87)](),console['log'](a178_0x254f7a[_0x39dcab(0x8d)]('─'[_0x39dcab(0xba)](0x3c))),console[_0x39dcab(0x87)](a178_0x254f7a[_0x39dcab(0xf9)]['bold'](_0x39dcab(0xc7))),console[_0x39dcab(0x87)]();const _0x4174fa=_0x21f55e[_0x39dcab(0xd7)]?CLI_BIN_NAME+_0x39dcab(0xa5):_0x39dcab(0xd3)+_0x393889[_0x39dcab(0xc5)]+_0x39dcab(0x9e)+CLI_BIN_NAME+_0x39dcab(0xa5);console[_0x39dcab(0x87)](_0x39dcab(0xe5)+a178_0x254f7a['cyan'][_0x39dcab(0xf7)](_0x4174fa)),_0x16c2f8&&console[_0x39dcab(0x87)](_0x39dcab(0xbf)+a178_0x254f7a['cyan'][_0x39dcab(0xf7)](CLI_BIN_NAME+_0x39dcab(0xe8))),console[_0x39dcab(0x87)](a178_0x254f7a[_0x39dcab(0x8d)]('─'[_0x39dcab(0xba)](0x3c)));}catch(_0x17328c){logger[_0x39dcab(0xb4)](_0x39dcab(0xa9),_0x39dcab(0x88)+_0x393889['projectName'],{'error':_0x17328c instanceof Error?_0x17328c[_0x39dcab(0xa0)]:String(_0x17328c)});try{const _0x147029=readDirectoryIdentity(_0x2f384e);if(_0x21f55e[_0x39dcab(0xd7)]&&_0x9c0ed8)a178_0x46d95a['rmSync'](_0x9c0ed8,{'recursive':!![],'force':!![]});else{if(_0x3ac4b7&&_0x147029?.[_0x39dcab(0xe2)]===_0x3ac4b7[_0x39dcab(0xe2)]&&_0x147029['ino']===_0x3ac4b7[_0x39dcab(0xf5)])console['log'](_0x39dcab(0xb2)+_0x2f384e),a178_0x46d95a[_0x39dcab(0xfb)](_0x2f384e,{'recursive':!![],'force':!![]});else _0x147029&&logger[_0x39dcab(0xda)](_0x39dcab(0xa9),_0x39dcab(0xcd)+_0x2f384e);}}catch{logger[_0x39dcab(0xda)](_0x39dcab(0xa9),_0x39dcab(0x92)+_0x2f384e);}throw _0x17328c;}}async function runTask(_0x3a3d2b,_0x20c955,_0x3c7590=_0x3a3d2b){const _0x260eb4=a178_0x569a,_0x43225a=a178_0x26607a(_0x3a3d2b+_0x260eb4(0xc9))['start']();try{const _0xe89260=await _0x20c955(_0x3b154d=>{const _0x261f9f=_0x260eb4;_0x43225a[_0x261f9f(0xa2)]=_0x3b154d+_0x261f9f(0xc9);});_0x43225a['stop'](),console[_0x260eb4(0x87)](''+a178_0x254f7a[_0x260eb4(0x8d)]('\x20√\x20')+_0x3c7590+'\x20'+a178_0x254f7a[_0x260eb4(0xff)]('['+_0xe89260+']'));}catch(_0x274219){_0x43225a[_0x260eb4(0xa3)](_0x3a3d2b);throw _0x274219;}}function projectTemplateStageLabel(_0x510b9b){const _0x51cab0=a178_0x569a;switch(_0x510b9b){case _0x51cab0(0xca):return _0x51cab0(0xea);case _0x51cab0(0xc8):return _0x51cab0(0xfa);case _0x51cab0(0xb5):return _0x51cab0(0xe6);case _0x51cab0(0xb8):return _0x51cab0(0x9b);case _0x51cab0(0xbd):return _0x51cab0(0xf6);}}async function updatePackageJsonName(_0x3a82ba,_0x27c104){const _0x3c9f56=a178_0x569a,_0xf4bd61=a178_0x23bf7f[_0x3c9f56(0x94)](process['cwd'](),_0x3a82ba),_0x32a414=a178_0x23bf7f['join'](_0xf4bd61,_0x3c9f56(0xec));try{console[_0x3c9f56(0x87)](_0x3c9f56(0x91));const _0x32f39c=getRabetbaseCliPackageRoot(),_0x4973b3=a178_0x23bf7f[_0x3c9f56(0xc0)](_0x32f39c,'package.json');let _0x393616=_0x3c9f56(0xb7);try{const _0x194688=JSON[_0x3c9f56(0xd2)](a178_0x46d95a[_0x3c9f56(0x8c)](_0x4973b3,_0x3c9f56(0xe4)));_0x393616=_0x194688[_0x3c9f56(0xdc)]||_0x3c9f56(0xb7);}catch{}const _0x1a1202=a178_0x46d95a[_0x3c9f56(0x8c)](_0x32a414,_0x3c9f56(0xe4)),_0xb0c317=JSON['parse'](_0x1a1202);_0xb0c317[_0x3c9f56(0xcb)]=_0x27c104,_0xb0c317['description']=_0x27c104+_0x3c9f56(0xed)+_0x393616,a178_0x46d95a['writeFileSync'](_0x32a414,JSON[_0x3c9f56(0xaf)](_0xb0c317,null,0x2)+'\x0a',_0x3c9f56(0xe4)),console['log']('√\x20package.json\x20updated:\x20name='+_0x27c104),logger[_0x3c9f56(0xf2)](_0x3c9f56(0xa9),'Updating\x20package.json\x20name');}catch(_0x1f20f3){logger[_0x3c9f56(0xb4)](_0x3c9f56(0xa9),_0x3c9f56(0x8f));throw _0x1f20f3;}}async function configureAppCode(_0x57fd8f,_0x354146,_0x253649,_0x196331){const _0x3d3a8f=a178_0x569a,_0x1538e4=a178_0x23bf7f['resolve'](process[_0x3d3a8f(0xf1)](),_0x57fd8f),_0x38d3db=a178_0x23bf7f[_0x3d3a8f(0xc0)](_0x1538e4,NEW_CONFIG_NAME);try{_0x253649?console[_0x3d3a8f(0x87)](_0x3d3a8f(0xbc)+_0x354146+':\x20'+_0x253649):console[_0x3d3a8f(0x87)](_0x3d3a8f(0x93)+_0x354146);const _0x5e6474=getRabetbaseCliPackageRoot(),_0x1c81d7=a178_0x23bf7f[_0x3d3a8f(0xc0)](_0x5e6474,_0x3d3a8f(0xec));let _0x2632f0='1.0.0';try{const _0x1906ab=JSON[_0x3d3a8f(0xd2)](a178_0x46d95a[_0x3d3a8f(0x8c)](_0x1c81d7,'utf8'));_0x2632f0=_0x1906ab[_0x3d3a8f(0xdc)]||_0x3d3a8f(0xb7);}catch{}const {globalConfig:_0x325682}=loadRawConfigLayers(),_0x2ac0ab=typeof _0x325682[_0x3d3a8f(0xdd)]==='string'?_0x325682['env']:undefined,_0x4c2463={};for(const _0x205eaa of PROJECT_CREATE_INHERITABLE_KEYS){if(_0x325682[_0x205eaa]!=null)_0x4c2463[_0x205eaa]=_0x325682[_0x205eaa];}const _0x26a8ae=buildCanonicalProjectConfig(_0x4c2463,{'appCodes':_0x253649?[_0x253649]:[],'env':_0x196331||_0x2ac0ab||_0x3d3a8f(0xc1),'metadata':{'createdAt':new Date()[_0x3d3a8f(0x9c)](),'version':_0x2632f0}});writeConfigFile(_0x38d3db,_0x26a8ae),await generateSdkConfigFile(a178_0x23bf7f['join'](_0x1538e4,DEFAULT_API_DIR),getSdkClientRoutingConfig()),writeProjectDomainRoutingManifest(_0x1538e4),_0x253649?console[_0x3d3a8f(0x87)](_0x3d3a8f(0x8e)+Object[_0x3d3a8f(0xab)](_0x26a8ae[_0x3d3a8f(0xde)]||{})[_0x3d3a8f(0xc0)](',\x20')+_0x3d3a8f(0x9f)):console['log']('√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27'+CLI_BIN_NAME+_0x3d3a8f(0xef)),logger[_0x3d3a8f(0xf2)](_0x3d3a8f(0xa9),'Configured\x20app\x20AppCode:\x20'+_0x253649);}catch(_0x3c2df6){logger[_0x3d3a8f(0xb4)](_0x3d3a8f(0xa9),_0x3d3a8f(0xdf));throw _0x3c2df6;}}
@@ -1 +1 @@
1
- const a181_0x2c1ab3=a181_0x59ed;(function(_0x381118,_0x32628e){const _0xdca143=a181_0x59ed,_0x5bec54=_0x381118();while(!![]){try{const _0x1d70d2=-parseInt(_0xdca143(0xf6))/0x1*(parseInt(_0xdca143(0xc0))/0x2)+-parseInt(_0xdca143(0xa6))/0x3+-parseInt(_0xdca143(0xab))/0x4+parseInt(_0xdca143(0xf9))/0x5+-parseInt(_0xdca143(0xd3))/0x6+-parseInt(_0xdca143(0xcc))/0x7*(parseInt(_0xdca143(0xd5))/0x8)+-parseInt(_0xdca143(0xcb))/0x9*(-parseInt(_0xdca143(0xea))/0xa);if(_0x1d70d2===_0x32628e)break;else _0x5bec54['push'](_0x5bec54['shift']());}catch(_0x3153a8){_0x5bec54['push'](_0x5bec54['shift']());}}}(a181_0x1647,0x48ce0));import{createHash}from'node:crypto';import a181_0x1e0944 from'node:fs/promises';import a181_0x3b58f8 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=a181_0x2c1ab3(0xaa),ARCHIVE_TIMEOUT_MS=0x3a98,MAX_ARCHIVE_SIZE=0x14*0x400*0x400;function nonEmptyString(_0x256617){const _0x93c42c=a181_0x2c1ab3;return typeof _0x256617===_0x93c42c(0xcd)&&_0x256617[_0x93c42c(0xc4)]()?_0x256617['trim']():null;}function parseDescriptor(_0x290df8){const _0x5a501b=a181_0x2c1ab3;if(!_0x290df8||typeof _0x290df8!==_0x5a501b(0x9e))throw new Error(_0x5a501b(0xd7)+TEMPLATE_ID+'\x22.');const _0xf66c92=_0x290df8,_0x21e275=nonEmptyString(_0xf66c92['version']),_0x54c6ad=nonEmptyString(_0xf66c92[_0x5a501b(0xa8)]),_0x2447c7=nonEmptyString(_0xf66c92[_0x5a501b(0xb9)])?.['toLowerCase'](),_0x32c475=_0xf66c92[_0x5a501b(0x98)];if(!_0x21e275||!_0x54c6ad||_0x54c6ad!==a181_0x3b58f8[_0x5a501b(0x96)][_0x5a501b(0xe8)](_0x54c6ad)||_0x54c6ad[_0x5a501b(0xd1)]('\x5c')||!_0x2447c7||!/^sha256:[a-f0-9]{64}$/[_0x5a501b(0xca)](_0x2447c7)||typeof _0x32c475!==_0x5a501b(0xbf)||!Number[_0x5a501b(0xf1)](_0x32c475)||_0x32c475<=0x0||_0x32c475>MAX_ARCHIVE_SIZE)throw new Error('CDN\x20config\x20contains\x20an\x20invalid\x20descriptor\x20for\x20\x22'+TEMPLATE_ID+'\x22.');return{'version':_0x21e275,'name':_0x54c6ad,'sha256':_0x2447c7,'size':_0x32c475};}async function fetchWithTimeout(_0x170f5b,_0x4caa40,_0x19db6a,_0x4320d1){const _0x54caf2=a181_0x2c1ab3,_0x4c450e=new AbortController(),_0x2ca93e=setTimeout(()=>_0x4c450e[_0x54caf2(0xac)](),_0x4caa40);try{const _0x339728=await fetch(_0x170f5b,{'headers':{'Accept':_0x19db6a},'signal':_0x4c450e['signal']});return await _0x4320d1(_0x339728);}finally{clearTimeout(_0x2ca93e);}}async function fetchTemplateDescriptor(){const _0x261117=a181_0x2c1ab3,_0x12d703=await getRabetbaseCdnConfig();if(!_0x12d703)throw new Error(_0x261117(0xda));return parseDescriptor(_0x12d703[_0x261117(0xf8)]);}function resolveArchiveUrl(_0x5d4255){const _0x102081=a181_0x2c1ab3,_0x5afb4d=new URL(PROJECT_TEMPLATE_ASSET_BASE_URL+'/'),_0x1f7c37=new URL(_0x5d4255,_0x5afb4d);if(_0x1f7c37['protocol']!==_0x102081(0xad)||_0x1f7c37[_0x102081(0xd4)]!==_0x5afb4d[_0x102081(0xd4)]||!_0x1f7c37[_0x102081(0xd8)]['startsWith'](_0x5afb4d[_0x102081(0xd8)]))throw new Error(_0x102081(0xa3));return _0x1f7c37['href'];}async function readResponseBytes(_0x3b1473,_0x91d746){const _0x1cd71e=a181_0x2c1ab3;if(!_0x3b1473[_0x1cd71e(0xa0)]){const _0x46c22c=Buffer['from'](await _0x3b1473[_0x1cd71e(0xe0)]());if(_0x46c22c[_0x1cd71e(0x9b)]>_0x91d746)throw new Error(_0x1cd71e(0xb2));return _0x46c22c;}const _0x15f7ba=_0x3b1473[_0x1cd71e(0xa0)][_0x1cd71e(0xce)](),_0x5f4c28=[];let _0x184716=0x0;try{while(!![]){const {done:_0x54b907,value:_0x197da8}=await _0x15f7ba[_0x1cd71e(0x92)]();if(_0x54b907)break;_0x184716+=_0x197da8[_0x1cd71e(0xb1)];if(_0x184716>_0x91d746){await _0x15f7ba['cancel']();throw new Error(_0x1cd71e(0xb2));}_0x5f4c28[_0x1cd71e(0xb7)](Buffer[_0x1cd71e(0xf5)](_0x197da8));}}finally{_0x15f7ba['releaseLock']();}return Buffer[_0x1cd71e(0xe6)](_0x5f4c28,_0x184716);}async function downloadArchive(_0x33fd9e,_0xb7288e,_0x57920b){const _0x1b2fcc=a181_0x2c1ab3,_0x380560=await fetchWithTimeout(resolveArchiveUrl(_0x33fd9e['name']),ARCHIVE_TIMEOUT_MS,_0x1b2fcc(0xeb),async _0x2526c8=>{const _0x1784fb=_0x1b2fcc;if(!_0x2526c8['ok'])throw new Error(_0x1784fb(0xa7)+_0x2526c8[_0x1784fb(0xbe)]+'.');const _0x2a0462=Number(_0x2526c8[_0x1784fb(0xc2)]['get']('content-length'));if(Number[_0x1784fb(0xfa)](_0x2a0462)&&_0x2a0462>MAX_ARCHIVE_SIZE)throw new Error(_0x1784fb(0xd9));return readResponseBytes(_0x2526c8,_0x33fd9e['size']);});if(_0x380560[_0x1b2fcc(0x9b)]!==_0x33fd9e[_0x1b2fcc(0x98)])throw new Error('CDN\x20project\x20template\x20size\x20mismatch:\x20expected\x20'+_0x33fd9e['size']+',\x20received\x20'+_0x380560[_0x1b2fcc(0x9b)]+'.');_0x57920b?.(_0x1b2fcc(0xc8));const _0x5870b4=_0x1b2fcc(0x100)+createHash(_0x1b2fcc(0xb9))[_0x1b2fcc(0xd0)](_0x380560)['digest'](_0x1b2fcc(0xd2));if(_0x5870b4!==_0x33fd9e['sha256'])throw new Error(_0x1b2fcc(0xc9));await a181_0x1e0944[_0x1b2fcc(0xa4)](_0xb7288e,_0x380560,{'flag':'wx'});}async function assertTemplateRoot(_0x98bbff){const _0x57055d=a181_0x2c1ab3,_0x4f5dec=a181_0x3b58f8[_0x57055d(0xe7)](_0x98bbff,'package.json'),_0x1a8aab=JSON[_0x57055d(0xf2)](await a181_0x1e0944[_0x57055d(0x94)](_0x4f5dec,'utf8'));if(!_0x1a8aab||typeof _0x1a8aab!==_0x57055d(0x9e))throw new Error(_0x57055d(0x97));}const LOCAL_FORBIDDEN_NAMES=new Set([a181_0x2c1ab3(0x95),a181_0x2c1ab3(0x93),a181_0x2c1ab3(0xb0),'.idea',a181_0x2c1ab3(0xb8),a181_0x2c1ab3(0xb4),a181_0x2c1ab3(0xa9),a181_0x2c1ab3(0xb3),a181_0x2c1ab3(0xed),a181_0x2c1ab3(0xc7)]);function a181_0x1647(){const _0x321968=['2630192BeoSwA','Check\x20your\x20network\x20and\x20retry.\x20Details:\x20','CDN\x20config\x20does\x20not\x20define\x20template\x20\x22','pathname','CDN\x20project\x20template\x20exceeds\x20the\x2020\x20MB\x20download\x20limit.','Rabetbase\x20CDN\x20config\x20is\x20unavailable.','package.json','isSymbolicLink','message','local','copying','arrayBuffer','.env.','resolve','resolving','Project\x20directory\x20already\x20exists:\x20','Choose\x20an\x20output\x20directory\x20outside\x20the\x20template\x20source.','concat','join','basename','downloading','4444600LpMwwo','application/zip','realpath','dist','Local\x20project\x20template\x20must\x20not\x20contain\x20symlinks:\x20','extracting','chmod','isSafeInteger','parse','ENOENT','Unable\x20to\x20download\x20a\x20valid\x20project\x20template\x20from\x20CDN.','from','85MmupmZ','template.zip','projectTemplate','1144565EEKCdX','isFinite','readdir','dirname','lstat','validation','Local\x20template\x20source\x20and\x20project\x20output\x20must\x20not\x20overlap.','sha256:','read','.codegraph','readFile','.DS_Store','posix','Project\x20template\x20package.json\x20is\x20invalid.','size','Unable\x20to\x20claim\x20the\x20project\x20directory.','.env','length','mkdir','isAbsolute','object','code','body','ino','Use\x20a\x20different\x20project\x20name.','CDN\x20project\x20template\x20URL\x20must\x20use\x20the\x20trusted\x20HTTPS\x20origin.','writeFile','mode','1528185RBruCu','CDN\x20project\x20template\x20request\x20failed\x20with\x20HTTP\x20','name','.rabetbase','sub-app-react-demo','1565296HHrzDK','abort','https:','EEXIST','.rabetbase-create-','.git','byteLength','CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.','.rabetbase.json','.lovrabet.log','.env.example','dev','push','.lovrabet.json','sha256','copyFile','Check\x20the\x20source\x20directory\x20and\x20retry.','isDirectory','Local\x20template\x20source\x20is\x20not\x20a\x20directory:\x20','status','number','10490SjpfWF','rename','headers','access','trim','version','Local\x20template\x20source\x20does\x20not\x20exist:\x20','node_modules','verifying','CDN\x20project\x20template\x20checksum\x20verification\x20failed.','test','45HbfjdA','7pyVqRE','string','getReader','Local\x20project\x20template\x20contains\x20a\x20local-only\x20entry:\x20','update','includes','hex','2866122fPDbpc','origin'];a181_0x1647=function(){return _0x321968;};return a181_0x1647();}function isForbiddenTemplateEntry(_0x2bc454){const _0xeade30=a181_0x2c1ab3;if(LOCAL_FORBIDDEN_NAMES['has'](_0x2bc454))return!![];return _0x2bc454===_0xeade30(0x9a)||_0x2bc454['startsWith'](_0xeade30(0xe1))&&_0x2bc454!==_0xeade30(0xb5);}function containsPath(_0x1055d1,_0x5d2192){const _0x4e6123=a181_0x2c1ab3,_0x34f5d3=a181_0x3b58f8['relative'](_0x1055d1,_0x5d2192);return _0x34f5d3===''||!_0x34f5d3['startsWith']('..'+a181_0x3b58f8['sep'])&&_0x34f5d3!=='..'&&!a181_0x3b58f8[_0x4e6123(0x9d)](_0x34f5d3);}async function copyLocalTemplateDirectory(_0x3e8259,_0x3be07c){const _0x304baa=a181_0x2c1ab3;await a181_0x1e0944[_0x304baa(0x9c)](_0x3be07c,{'recursive':!![]});for(const _0x124bf4 of await a181_0x1e0944[_0x304baa(0xfb)](_0x3e8259,{'withFileTypes':!![]})){const _0x11dcb9=a181_0x3b58f8['join'](_0x3e8259,_0x124bf4[_0x304baa(0xa8)]),_0x108d71=a181_0x3b58f8[_0x304baa(0xe7)](_0x3be07c,_0x124bf4['name']);if(isForbiddenTemplateEntry(_0x124bf4['name']))throw new Error(_0x304baa(0xcf)+_0x11dcb9);const _0x2021bf=await a181_0x1e0944['lstat'](_0x11dcb9);if(_0x2021bf[_0x304baa(0xdc)]())throw new Error(_0x304baa(0xee)+_0x11dcb9);if(_0x2021bf['isDirectory']()){await copyLocalTemplateDirectory(_0x11dcb9,_0x108d71);continue;}if(!_0x2021bf['isFile']())continue;await a181_0x1e0944[_0x304baa(0xba)](_0x11dcb9,_0x108d71),await a181_0x1e0944[_0x304baa(0xf0)](_0x108d71,_0x2021bf[_0x304baa(0xa5)]&0x1ff);}}async function readTemplateVersion(_0x59120c){const _0x30ab5a=a181_0x2c1ab3,_0x2dc04c=JSON[_0x30ab5a(0xf2)](await a181_0x1e0944[_0x30ab5a(0x94)](a181_0x3b58f8[_0x30ab5a(0xe7)](_0x59120c,_0x30ab5a(0xdb)),'utf8'));return nonEmptyString(_0x2dc04c[_0x30ab5a(0xc5)])||'local';}async function readDirectoryIdentity(_0x54bf58){const _0x89e212=a181_0x2c1ab3;try{const _0x35c0da=await a181_0x1e0944[_0x89e212(0xfd)](_0x54bf58);if(!_0x35c0da['isDirectory']())return null;return{'dev':_0x35c0da[_0x89e212(0xb6)],'ino':_0x35c0da[_0x89e212(0xa1)]};}catch{return null;}}async function commitStagedProject(_0x3e53c3,_0x2a9a01){const _0x1fadae=a181_0x2c1ab3;await a181_0x1e0944[_0x1fadae(0x9c)](_0x2a9a01);const _0x229a46=await readDirectoryIdentity(_0x2a9a01);if(!_0x229a46)throw new Error(_0x1fadae(0x99));try{for(const _0x285d98 of await a181_0x1e0944['readdir'](_0x3e53c3)){await a181_0x1e0944[_0x1fadae(0xc1)](a181_0x3b58f8[_0x1fadae(0xe7)](_0x3e53c3,_0x285d98),a181_0x3b58f8[_0x1fadae(0xe7)](_0x2a9a01,_0x285d98));}}catch(_0x2da49c){const _0x240625=await readDirectoryIdentity(_0x2a9a01);_0x240625?.[_0x1fadae(0xb6)]===_0x229a46[_0x1fadae(0xb6)]&&_0x240625[_0x1fadae(0xa1)]===_0x229a46[_0x1fadae(0xa1)]&&await a181_0x1e0944['rm'](_0x2a9a01,{'recursive':!![],'force':!![]});throw _0x2da49c;}}export async function materializeProjectTemplate(_0x19c877,_0x1da7d9){const _0x35b0b9=a181_0x2c1ab3,_0x295f66=a181_0x3b58f8[_0x35b0b9(0xe2)](_0x19c877),_0x351357=a181_0x3b58f8[_0x35b0b9(0xfc)](_0x295f66);try{await a181_0x1e0944[_0x35b0b9(0xfd)](_0x295f66);throw new Error(_0x35b0b9(0xe4)+_0x295f66);}catch(_0x4a8fb4){if(_0x4a8fb4[_0x35b0b9(0x9f)]!==_0x35b0b9(0xf3))throw _0x4a8fb4;}const _0x3d43e1=await a181_0x1e0944['mkdtemp'](a181_0x3b58f8[_0x35b0b9(0xe7)](_0x351357,_0x35b0b9(0xaf))),_0x2f1d3d=a181_0x3b58f8[_0x35b0b9(0xe7)](_0x3d43e1,'project'),_0x2149fa=a181_0x3b58f8['join'](_0x3d43e1,_0x35b0b9(0xf7));try{try{_0x1da7d9?.(_0x35b0b9(0xe3));const _0x17ad8f=await fetchTemplateDescriptor();return _0x1da7d9?.(_0x35b0b9(0xe9)),await downloadArchive(_0x17ad8f,_0x2149fa,_0x1da7d9),_0x1da7d9?.(_0x35b0b9(0xef)),await extractProjectTemplateArchive(_0x2149fa,_0x2f1d3d),await assertTemplateRoot(_0x2f1d3d),await commitStagedProject(_0x2f1d3d,_0x295f66),{'source':'cdn','version':_0x17ad8f['version']};}catch(_0x49bda5){if(_0x49bda5[_0x35b0b9(0x9f)]===_0x35b0b9(0xae))throw CliErrors[_0x35b0b9(0xfe)]('Project\x20directory\x20already\x20exists:\x20'+_0x295f66,_0x35b0b9(0xa2));const _0x4a6e29=_0x49bda5 instanceof Error?_0x49bda5['message']:String(_0x49bda5);throw CliErrors[_0x35b0b9(0xfe)](_0x35b0b9(0xf4),_0x35b0b9(0xd6)+_0x4a6e29);}}finally{await a181_0x1e0944['rm'](_0x3d43e1,{'recursive':!![],'force':!![]});}}function a181_0x59ed(_0x1b469f,_0x43a9b3){_0x1b469f=_0x1b469f-0x92;const _0x164732=a181_0x1647();let _0x59eda3=_0x164732[_0x1b469f];return _0x59eda3;}export async function materializeLocalProjectTemplate(_0x11d448,_0x5531ba,_0x569cfd){const _0x3f0e7f=a181_0x2c1ab3;let _0x58e369;try{_0x58e369=await a181_0x1e0944['realpath'](a181_0x3b58f8[_0x3f0e7f(0xe2)](_0x11d448));}catch{throw CliErrors[_0x3f0e7f(0xfe)](_0x3f0e7f(0xc6)+a181_0x3b58f8['resolve'](_0x11d448),'Pass\x20a\x20directory\x20containing\x20the\x20template\x20source\x20package.json.');}const _0x24d679=await a181_0x1e0944[_0x3f0e7f(0xfd)](_0x58e369);if(!_0x24d679[_0x3f0e7f(0xbc)]())throw CliErrors[_0x3f0e7f(0xfe)](_0x3f0e7f(0xbd)+_0x58e369);const _0x2b0ac5=a181_0x3b58f8[_0x3f0e7f(0xe2)](_0x5531ba),_0x1b1c6f=await a181_0x1e0944[_0x3f0e7f(0xec)](a181_0x3b58f8[_0x3f0e7f(0xfc)](_0x2b0ac5)),_0x3e6faf=a181_0x3b58f8['join'](_0x1b1c6f,a181_0x3b58f8[_0x3f0e7f(0xe8)](_0x2b0ac5));if(containsPath(_0x58e369,_0x3e6faf)||containsPath(_0x3e6faf,_0x58e369))throw CliErrors['validation'](_0x3f0e7f(0xff),_0x3f0e7f(0xe5));try{await a181_0x1e0944['lstat'](_0x3e6faf);throw CliErrors[_0x3f0e7f(0xfe)](_0x3f0e7f(0xe4)+_0x3e6faf,'Choose\x20a\x20different\x20project\x20name\x20or\x20remove\x20the\x20directory\x20first.');}catch(_0x133fd0){if(_0x133fd0[_0x3f0e7f(0x9f)]!=='ENOENT')throw _0x133fd0;}const _0x1dbc21=a181_0x3b58f8[_0x3f0e7f(0xfc)](_0x3e6faf);await a181_0x1e0944[_0x3f0e7f(0xc3)](_0x1dbc21);const _0x1fbecb=await a181_0x1e0944['mkdtemp'](a181_0x3b58f8[_0x3f0e7f(0xe7)](_0x1dbc21,_0x3f0e7f(0xaf))),_0x3b9c08=a181_0x3b58f8[_0x3f0e7f(0xe7)](_0x1fbecb,'project');try{_0x569cfd?.(_0x3f0e7f(0xdf)),await copyLocalTemplateDirectory(_0x58e369,_0x3b9c08),await assertTemplateRoot(_0x3b9c08);const _0x512e22=await readTemplateVersion(_0x3b9c08);return await commitStagedProject(_0x3b9c08,_0x3e6faf),{'source':_0x3f0e7f(0xde),'version':_0x512e22};}catch(_0x5e9568){const _0x226637=_0x5e9568 instanceof Error?_0x5e9568[_0x3f0e7f(0xdd)]:String(_0x5e9568);throw CliErrors[_0x3f0e7f(0xfe)]('Invalid\x20local\x20template\x20source:\x20'+_0x226637,_0x3f0e7f(0xbb));}finally{await a181_0x1e0944['rm'](_0x1fbecb,{'recursive':!![],'force':!![]});}}
1
+ const a179_0x3f53e7=a179_0x1e59;function a179_0x1e59(_0x376516,_0x1f5f1c){_0x376516=_0x376516-0xba;const _0x33f693=a179_0x33f6();let _0x1e59c9=_0x33f693[_0x376516];return _0x1e59c9;}(function(_0x2324dc,_0x3df59f){const _0x725813=a179_0x1e59,_0x219d02=_0x2324dc();while(!![]){try{const _0x5a06ee=-parseInt(_0x725813(0x10c))/0x1*(-parseInt(_0x725813(0x121))/0x2)+-parseInt(_0x725813(0x105))/0x3*(-parseInt(_0x725813(0x113))/0x4)+-parseInt(_0x725813(0xbf))/0x5*(parseInt(_0x725813(0x10b))/0x6)+-parseInt(_0x725813(0x10f))/0x7*(parseInt(_0x725813(0x11d))/0x8)+parseInt(_0x725813(0x101))/0x9*(-parseInt(_0x725813(0xfc))/0xa)+-parseInt(_0x725813(0x10e))/0xb+parseInt(_0x725813(0x128))/0xc*(parseInt(_0x725813(0xef))/0xd);if(_0x5a06ee===_0x3df59f)break;else _0x219d02['push'](_0x219d02['shift']());}catch(_0xc7934){_0x219d02['push'](_0x219d02['shift']());}}}(a179_0x33f6,0x57a92));import{createHash}from'node:crypto';import a179_0x209989 from'node:fs/promises';import a179_0x4429bd 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';function a179_0x33f6(){const _0x2f9689=['relative','template.zip','1657520uKpLxw','resolve','push','protocol','isDirectory','.rabetbase-create-','CDN\x20project\x20template\x20exceeds\x20the\x2020\x20MB\x20download\x20limit.','pathname','Check\x20your\x20network\x20and\x20retry.\x20Details:\x20','.env.','12592BXGYUR','mode',',\x20received\x20','name','259384OoodLw','Use\x20a\x20different\x20project\x20name.','.env.example','writeFile','CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.','hex','body','12YgeyjL','Unable\x20to\x20download\x20a\x20valid\x20project\x20template\x20from\x20CDN.','Check\x20the\x20source\x20directory\x20and\x20retry.','arrayBuffer','from','version','trim','CDN\x20project\x20template\x20request\x20failed\x20with\x20HTTP\x20','package.json','sep','.DS_Store','39975arnHVp','abort','readdir','mkdir','ino','Local\x20template\x20source\x20is\x20not\x20a\x20directory:\x20','node_modules','posix','cdn','Choose\x20a\x20different\x20project\x20name\x20or\x20remove\x20the\x20directory\x20first.','parse','realpath','code','Local\x20template\x20source\x20does\x20not\x20exist:\x20','join','CDN\x20project\x20template\x20URL\x20must\x20use\x20the\x20trusted\x20HTTPS\x20origin.','isAbsolute','message','length','.codegraph','Local\x20project\x20template\x20must\x20not\x20contain\x20symlinks:\x20','content-length','href','get','extracting','downloading','has','CDN\x20config\x20does\x20not\x20define\x20template\x20\x22','projectTemplate','.rabetbase','validation','isSafeInteger','.lovrabet.log','sub-app-react-demo','dirname','resolving','copying','getReader','isFinite','sha256','.env','.git','headers','origin','size','cancel','application/zip','CDN\x20project\x20template\x20size\x20mismatch:\x20expected\x20','14161381MWKTkZ','Local\x20template\x20source\x20and\x20project\x20output\x20must\x20not\x20overlap.','chmod','toLowerCase','copyFile','EEXIST','access','number','concat','test','utf8','dist','.idea','20wAyiRi','dev','Project\x20template\x20package.json\x20is\x20invalid.','read','object','18027dnELTi','lstat','mkdtemp','Project\x20directory\x20already\x20exists:\x20','3VMFYMr','startsWith','includes','CDN\x20project\x20template\x20checksum\x20verification\x20failed.','isFile','ENOENT','468Fyykyj','2fIcsuw','readFile','1736295FBtHlY','2751bTYePm','Choose\x20an\x20output\x20directory\x20outside\x20the\x20template\x20source.'];a179_0x33f6=function(){return _0x2f9689;};return a179_0x33f6();}const TEMPLATE_ID=a179_0x3f53e7(0xe0),ARCHIVE_TIMEOUT_MS=0x3a98,MAX_ARCHIVE_SIZE=0x14*0x400*0x400;function nonEmptyString(_0x3d727b){const _0xd34abf=a179_0x3f53e7;return typeof _0x3d727b==='string'&&_0x3d727b[_0xd34abf(0xba)]()?_0x3d727b[_0xd34abf(0xba)]():null;}function parseDescriptor(_0x284cc0){const _0x14f230=a179_0x3f53e7;if(!_0x284cc0||typeof _0x284cc0!==_0x14f230(0x100))throw new Error(_0x14f230(0xda)+TEMPLATE_ID+'\x22.');const _0x196c4c=_0x284cc0,_0x40a9d3=nonEmptyString(_0x196c4c[_0x14f230(0x12d)]),_0x24791a=nonEmptyString(_0x196c4c[_0x14f230(0x120)]),_0x224384=nonEmptyString(_0x196c4c[_0x14f230(0xe6)])?.[_0x14f230(0xf2)](),_0x32f4c1=_0x196c4c[_0x14f230(0xeb)];if(!_0x40a9d3||!_0x24791a||_0x24791a!==a179_0x4429bd[_0x14f230(0xc6)]['basename'](_0x24791a)||_0x24791a[_0x14f230(0x107)]('\x5c')||!_0x224384||!/^sha256:[a-f0-9]{64}$/[_0x14f230(0xf8)](_0x224384)||typeof _0x32f4c1!==_0x14f230(0xf6)||!Number[_0x14f230(0xde)](_0x32f4c1)||_0x32f4c1<=0x0||_0x32f4c1>MAX_ARCHIVE_SIZE)throw new Error('CDN\x20config\x20contains\x20an\x20invalid\x20descriptor\x20for\x20\x22'+TEMPLATE_ID+'\x22.');return{'version':_0x40a9d3,'name':_0x24791a,'sha256':_0x224384,'size':_0x32f4c1};}async function fetchWithTimeout(_0x12042a,_0x4372dd,_0x3dc0e2,_0x3088b9){const _0x16e844=a179_0x3f53e7,_0x11c430=new AbortController(),_0x5675f8=setTimeout(()=>_0x11c430[_0x16e844(0xc0)](),_0x4372dd);try{const _0x1dc9c3=await fetch(_0x12042a,{'headers':{'Accept':_0x3dc0e2},'signal':_0x11c430['signal']});return await _0x3088b9(_0x1dc9c3);}finally{clearTimeout(_0x5675f8);}}async function fetchTemplateDescriptor(){const _0x33822f=a179_0x3f53e7,_0x51938e=await getRabetbaseCdnConfig();if(!_0x51938e)throw new Error('Rabetbase\x20CDN\x20config\x20is\x20unavailable.');return parseDescriptor(_0x51938e[_0x33822f(0xdb)]);}function resolveArchiveUrl(_0x421b13){const _0x3e3c14=a179_0x3f53e7,_0x4a33ec=new URL(PROJECT_TEMPLATE_ASSET_BASE_URL+'/'),_0x1b28bf=new URL(_0x421b13,_0x4a33ec);if(_0x1b28bf[_0x3e3c14(0x116)]!=='https:'||_0x1b28bf[_0x3e3c14(0xea)]!==_0x4a33ec[_0x3e3c14(0xea)]||!_0x1b28bf[_0x3e3c14(0x11a)][_0x3e3c14(0x106)](_0x4a33ec[_0x3e3c14(0x11a)]))throw new Error(_0x3e3c14(0xce));return _0x1b28bf[_0x3e3c14(0xd5)];}async function readResponseBytes(_0x6afcb8,_0x4c08ef){const _0x447a60=a179_0x3f53e7;if(!_0x6afcb8[_0x447a60(0x127)]){const _0x279ba0=Buffer[_0x447a60(0x12c)](await _0x6afcb8[_0x447a60(0x12b)]());if(_0x279ba0['length']>_0x4c08ef)throw new Error(_0x447a60(0x125));return _0x279ba0;}const _0x40d438=_0x6afcb8[_0x447a60(0x127)][_0x447a60(0xe4)](),_0x2daed3=[];let _0x2db66a=0x0;try{while(!![]){const {done:_0x3bb467,value:_0x45834b}=await _0x40d438[_0x447a60(0xff)]();if(_0x3bb467)break;_0x2db66a+=_0x45834b['byteLength'];if(_0x2db66a>_0x4c08ef){await _0x40d438[_0x447a60(0xec)]();throw new Error('CDN\x20project\x20template\x20exceeds\x20its\x20declared\x20download\x20size.');}_0x2daed3[_0x447a60(0x115)](Buffer['from'](_0x45834b));}}finally{_0x40d438['releaseLock']();}return Buffer[_0x447a60(0xf7)](_0x2daed3,_0x2db66a);}async function downloadArchive(_0x262525,_0x5d5d98,_0x20dd8c){const _0x57b90a=a179_0x3f53e7,_0x51397d=await fetchWithTimeout(resolveArchiveUrl(_0x262525[_0x57b90a(0x120)]),ARCHIVE_TIMEOUT_MS,_0x57b90a(0xed),async _0x65627b=>{const _0x38d275=_0x57b90a;if(!_0x65627b['ok'])throw new Error(_0x38d275(0xbb)+_0x65627b['status']+'.');const _0x839f9b=Number(_0x65627b[_0x38d275(0xe9)][_0x38d275(0xd6)](_0x38d275(0xd4)));if(Number[_0x38d275(0xe5)](_0x839f9b)&&_0x839f9b>MAX_ARCHIVE_SIZE)throw new Error(_0x38d275(0x119));return readResponseBytes(_0x65627b,_0x262525[_0x38d275(0xeb)]);});if(_0x51397d[_0x57b90a(0xd1)]!==_0x262525[_0x57b90a(0xeb)])throw new Error(_0x57b90a(0xee)+_0x262525[_0x57b90a(0xeb)]+_0x57b90a(0x11f)+_0x51397d['length']+'.');_0x20dd8c?.('verifying');const _0x26c9c5='sha256:'+createHash('sha256')['update'](_0x51397d)['digest'](_0x57b90a(0x126));if(_0x26c9c5!==_0x262525[_0x57b90a(0xe6)])throw new Error(_0x57b90a(0x108));await a179_0x209989[_0x57b90a(0x124)](_0x5d5d98,_0x51397d,{'flag':'wx'});}async function assertTemplateRoot(_0x5a5c77){const _0x22fd61=a179_0x3f53e7,_0x540dfa=a179_0x4429bd[_0x22fd61(0xcd)](_0x5a5c77,_0x22fd61(0xbc)),_0x58aed3=JSON[_0x22fd61(0xc9)](await a179_0x209989[_0x22fd61(0x10d)](_0x540dfa,_0x22fd61(0xf9)));if(!_0x58aed3||typeof _0x58aed3!==_0x22fd61(0x100))throw new Error(_0x22fd61(0xfe));}const LOCAL_FORBIDDEN_NAMES=new Set([a179_0x3f53e7(0xbe),a179_0x3f53e7(0xd2),a179_0x3f53e7(0xe8),a179_0x3f53e7(0xfb),'.lovrabet.json',a179_0x3f53e7(0xdf),a179_0x3f53e7(0xdc),'.rabetbase.json',a179_0x3f53e7(0xfa),a179_0x3f53e7(0xc5)]);function isForbiddenTemplateEntry(_0x5d647c){const _0x1930c0=a179_0x3f53e7;if(LOCAL_FORBIDDEN_NAMES[_0x1930c0(0xd9)](_0x5d647c))return!![];return _0x5d647c===_0x1930c0(0xe7)||_0x5d647c[_0x1930c0(0x106)](_0x1930c0(0x11c))&&_0x5d647c!==_0x1930c0(0x123);}function containsPath(_0x65f19a,_0x1d572b){const _0x4118f8=a179_0x3f53e7,_0x31745b=a179_0x4429bd[_0x4118f8(0x111)](_0x65f19a,_0x1d572b);return _0x31745b===''||!_0x31745b['startsWith']('..'+a179_0x4429bd[_0x4118f8(0xbd)])&&_0x31745b!=='..'&&!a179_0x4429bd[_0x4118f8(0xcf)](_0x31745b);}async function copyLocalTemplateDirectory(_0x47fbfe,_0x5a83ad){const _0x386992=a179_0x3f53e7;await a179_0x209989['mkdir'](_0x5a83ad,{'recursive':!![]});for(const _0x1c0f6b of await a179_0x209989[_0x386992(0xc1)](_0x47fbfe,{'withFileTypes':!![]})){const _0x11baba=a179_0x4429bd[_0x386992(0xcd)](_0x47fbfe,_0x1c0f6b[_0x386992(0x120)]),_0x7b7e95=a179_0x4429bd[_0x386992(0xcd)](_0x5a83ad,_0x1c0f6b[_0x386992(0x120)]);if(isForbiddenTemplateEntry(_0x1c0f6b[_0x386992(0x120)]))throw new Error('Local\x20project\x20template\x20contains\x20a\x20local-only\x20entry:\x20'+_0x11baba);const _0xd94d3d=await a179_0x209989['lstat'](_0x11baba);if(_0xd94d3d['isSymbolicLink']())throw new Error(_0x386992(0xd3)+_0x11baba);if(_0xd94d3d['isDirectory']()){await copyLocalTemplateDirectory(_0x11baba,_0x7b7e95);continue;}if(!_0xd94d3d[_0x386992(0x109)]())continue;await a179_0x209989[_0x386992(0xf3)](_0x11baba,_0x7b7e95),await a179_0x209989[_0x386992(0xf1)](_0x7b7e95,_0xd94d3d[_0x386992(0x11e)]&0x1ff);}}async function readTemplateVersion(_0x392a07){const _0x1948d9=a179_0x3f53e7,_0x15044e=JSON['parse'](await a179_0x209989[_0x1948d9(0x10d)](a179_0x4429bd[_0x1948d9(0xcd)](_0x392a07,_0x1948d9(0xbc)),'utf8'));return nonEmptyString(_0x15044e[_0x1948d9(0x12d)])||'local';}async function readDirectoryIdentity(_0x204910){const _0x45cc6b=a179_0x3f53e7;try{const _0x20001a=await a179_0x209989[_0x45cc6b(0x102)](_0x204910);if(!_0x20001a['isDirectory']())return null;return{'dev':_0x20001a[_0x45cc6b(0xfd)],'ino':_0x20001a[_0x45cc6b(0xc3)]};}catch{return null;}}async function commitStagedProject(_0x1e51f5,_0x42197e){const _0x402177=a179_0x3f53e7;await a179_0x209989[_0x402177(0xc2)](_0x42197e);const _0x184f80=await readDirectoryIdentity(_0x42197e);if(!_0x184f80)throw new Error('Unable\x20to\x20claim\x20the\x20project\x20directory.');try{for(const _0x186374 of await a179_0x209989[_0x402177(0xc1)](_0x1e51f5)){await a179_0x209989['rename'](a179_0x4429bd[_0x402177(0xcd)](_0x1e51f5,_0x186374),a179_0x4429bd[_0x402177(0xcd)](_0x42197e,_0x186374));}}catch(_0x1b7fed){const _0xb7dbb3=await readDirectoryIdentity(_0x42197e);_0xb7dbb3?.[_0x402177(0xfd)]===_0x184f80[_0x402177(0xfd)]&&_0xb7dbb3[_0x402177(0xc3)]===_0x184f80[_0x402177(0xc3)]&&await a179_0x209989['rm'](_0x42197e,{'recursive':!![],'force':!![]});throw _0x1b7fed;}}export async function materializeProjectTemplate(_0xd2b62b,_0x233cde){const _0xf2d574=a179_0x3f53e7,_0x5279dd=a179_0x4429bd[_0xf2d574(0x114)](_0xd2b62b),_0x361655=a179_0x4429bd['dirname'](_0x5279dd);try{await a179_0x209989[_0xf2d574(0x102)](_0x5279dd);throw new Error(_0xf2d574(0x104)+_0x5279dd);}catch(_0xcd4ec1){if(_0xcd4ec1[_0xf2d574(0xcb)]!==_0xf2d574(0x10a))throw _0xcd4ec1;}const _0x5980a6=await a179_0x209989[_0xf2d574(0x103)](a179_0x4429bd[_0xf2d574(0xcd)](_0x361655,'.rabetbase-create-')),_0x51ab4b=a179_0x4429bd[_0xf2d574(0xcd)](_0x5980a6,'project'),_0x412aa4=a179_0x4429bd[_0xf2d574(0xcd)](_0x5980a6,_0xf2d574(0x112));try{try{_0x233cde?.(_0xf2d574(0xe2));const _0x124c03=await fetchTemplateDescriptor();return _0x233cde?.(_0xf2d574(0xd8)),await downloadArchive(_0x124c03,_0x412aa4,_0x233cde),_0x233cde?.(_0xf2d574(0xd7)),await extractProjectTemplateArchive(_0x412aa4,_0x51ab4b),await assertTemplateRoot(_0x51ab4b),await commitStagedProject(_0x51ab4b,_0x5279dd),{'source':_0xf2d574(0xc7),'version':_0x124c03[_0xf2d574(0x12d)]};}catch(_0x5417b3){if(_0x5417b3[_0xf2d574(0xcb)]===_0xf2d574(0xf4))throw CliErrors[_0xf2d574(0xdd)](_0xf2d574(0x104)+_0x5279dd,_0xf2d574(0x122));const _0x3312b4=_0x5417b3 instanceof Error?_0x5417b3[_0xf2d574(0xd0)]:String(_0x5417b3);throw CliErrors[_0xf2d574(0xdd)](_0xf2d574(0x129),_0xf2d574(0x11b)+_0x3312b4);}}finally{await a179_0x209989['rm'](_0x5980a6,{'recursive':!![],'force':!![]});}}export async function materializeLocalProjectTemplate(_0x20f78f,_0x70e05,_0x2eaab7){const _0xd705c9=a179_0x3f53e7;let _0xd1ffc5;try{_0xd1ffc5=await a179_0x209989['realpath'](a179_0x4429bd[_0xd705c9(0x114)](_0x20f78f));}catch{throw CliErrors[_0xd705c9(0xdd)](_0xd705c9(0xcc)+a179_0x4429bd[_0xd705c9(0x114)](_0x20f78f),'Pass\x20a\x20directory\x20containing\x20the\x20template\x20source\x20package.json.');}const _0x4c2479=await a179_0x209989[_0xd705c9(0x102)](_0xd1ffc5);if(!_0x4c2479[_0xd705c9(0x117)]())throw CliErrors['validation'](_0xd705c9(0xc4)+_0xd1ffc5);const _0x1fb2e0=a179_0x4429bd[_0xd705c9(0x114)](_0x70e05),_0xb530f4=await a179_0x209989[_0xd705c9(0xca)](a179_0x4429bd[_0xd705c9(0xe1)](_0x1fb2e0)),_0x5916f8=a179_0x4429bd[_0xd705c9(0xcd)](_0xb530f4,a179_0x4429bd['basename'](_0x1fb2e0));if(containsPath(_0xd1ffc5,_0x5916f8)||containsPath(_0x5916f8,_0xd1ffc5))throw CliErrors['validation'](_0xd705c9(0xf0),_0xd705c9(0x110));try{await a179_0x209989[_0xd705c9(0x102)](_0x5916f8);throw CliErrors[_0xd705c9(0xdd)](_0xd705c9(0x104)+_0x5916f8,_0xd705c9(0xc8));}catch(_0x47132f){if(_0x47132f[_0xd705c9(0xcb)]!==_0xd705c9(0x10a))throw _0x47132f;}const _0xdf6455=a179_0x4429bd[_0xd705c9(0xe1)](_0x5916f8);await a179_0x209989[_0xd705c9(0xf5)](_0xdf6455);const _0x414c80=await a179_0x209989[_0xd705c9(0x103)](a179_0x4429bd[_0xd705c9(0xcd)](_0xdf6455,_0xd705c9(0x118))),_0x1b29f9=a179_0x4429bd['join'](_0x414c80,'project');try{_0x2eaab7?.(_0xd705c9(0xe3)),await copyLocalTemplateDirectory(_0xd1ffc5,_0x1b29f9),await assertTemplateRoot(_0x1b29f9);const _0x6daec1=await readTemplateVersion(_0x1b29f9);return await commitStagedProject(_0x1b29f9,_0x5916f8),{'source':'local','version':_0x6daec1};}catch(_0x21c048){const _0x3e2b8e=_0x21c048 instanceof Error?_0x21c048['message']:String(_0x21c048);throw CliErrors[_0xd705c9(0xdd)]('Invalid\x20local\x20template\x20source:\x20'+_0x3e2b8e,_0xd705c9(0x12a));}finally{await a179_0x209989['rm'](_0x414c80,{'recursive':!![],'force':!![]});}}
@@ -1 +1 @@
1
- (function(_0x195b8b,_0x3f182c){const _0x5ed314=a182_0x3dd9,_0x308ce1=_0x195b8b();while(!![]){try{const _0x1d5b61=-parseInt(_0x5ed314(0x1b7))/0x1+-parseInt(_0x5ed314(0x1bd))/0x2+-parseInt(_0x5ed314(0x1b5))/0x3+parseInt(_0x5ed314(0x1bf))/0x4*(parseInt(_0x5ed314(0x1b0))/0x5)+parseInt(_0x5ed314(0x1c0))/0x6+parseInt(_0x5ed314(0x1bc))/0x7+parseInt(_0x5ed314(0x1b3))/0x8*(parseInt(_0x5ed314(0x1b8))/0x9);if(_0x1d5b61===_0x3f182c)break;else _0x308ce1['push'](_0x308ce1['shift']());}catch(_0x3cf9b0){_0x308ce1['push'](_0x308ce1['shift']());}}}(a182_0x1be9,0x788ef));import{CliErrors}from'../../../errors.js';function a182_0x1be9(){const _0x575c4f=['4kXUbMQ','1006878kjnBDr','3241260FSeuha','trim','\x20characters','2160352qykHJg','Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','2674368jiKema','validation','215165cHkHHE','36rzVAjL','test','length','\x22\x20is\x20reserved\x20on\x20Windows','484085EZJnhR','729936pddCNX','Project\x20name\x20cannot\x20exceed\x20'];a182_0x1be9=function(){return _0x575c4f;};return a182_0x1be9();}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;function a182_0x3dd9(_0x20551d,_0x30b37f){_0x20551d=_0x20551d-0x1b0;const _0x1be953=a182_0x1be9();let _0x3dd988=_0x1be953[_0x20551d];return _0x3dd988;}export function getProjectNameValidationError(_0x58f2aa){const _0x51aefa=a182_0x3dd9,_0x9b8580=_0x58f2aa[_0x51aefa(0x1b1)]();if(!_0x9b8580)return'Project\x20name\x20cannot\x20be\x20empty';if(_0x9b8580[_0x51aefa(0x1ba)]>MAX_PROJECT_NAME_LENGTH)return _0x51aefa(0x1be)+MAX_PROJECT_NAME_LENGTH+_0x51aefa(0x1b2);if(!PROJECT_NAME_PATTERN['test'](_0x9b8580))return _0x51aefa(0x1b4);if(WINDOWS_RESERVED_NAME[_0x51aefa(0x1b9)](_0x9b8580))return'Project\x20name\x20\x22'+_0x9b8580+_0x51aefa(0x1bb);return null;}export function validateProjectName(_0x579a73){const _0x40d606=a182_0x3dd9,_0x29cfb1=_0x579a73['trim'](),_0x10dbff=getProjectNameValidationError(_0x29cfb1);if(_0x10dbff)throw CliErrors[_0x40d606(0x1b6)](_0x10dbff,'Use\x20a\x20portable\x20directory\x20name\x20without\x20path\x20separators.');return _0x29cfb1;}
1
+ (function(_0x3d31be,_0x1e457b){const _0x49d67b=a180_0x1d7d,_0x4735ac=_0x3d31be();while(!![]){try{const _0x160e13=parseInt(_0x49d67b(0x97))/0x1*(parseInt(_0x49d67b(0x96))/0x2)+-parseInt(_0x49d67b(0x91))/0x3+-parseInt(_0x49d67b(0xa0))/0x4*(parseInt(_0x49d67b(0x98))/0x5)+-parseInt(_0x49d67b(0x93))/0x6+-parseInt(_0x49d67b(0x9e))/0x7+parseInt(_0x49d67b(0x90))/0x8+-parseInt(_0x49d67b(0x9b))/0x9*(-parseInt(_0x49d67b(0x9a))/0xa);if(_0x160e13===_0x1e457b)break;else _0x4735ac['push'](_0x4735ac['shift']());}catch(_0x221b5d){_0x4735ac['push'](_0x4735ac['shift']());}}}(a180_0x414d,0x43d0d));import{CliErrors}from'../../../errors.js';function a180_0x1d7d(_0x30cad7,_0x5910b6){_0x30cad7=_0x30cad7-0x90;const _0x414d2a=a180_0x414d();let _0x1d7d9a=_0x414d2a[_0x30cad7];return _0x1d7d9a;}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(_0x528594){const _0x5bbafe=a180_0x1d7d,_0x454783=_0x528594[_0x5bbafe(0x92)]();if(!_0x454783)return _0x5bbafe(0x9d);if(_0x454783['length']>MAX_PROJECT_NAME_LENGTH)return _0x5bbafe(0x9f)+MAX_PROJECT_NAME_LENGTH+_0x5bbafe(0x94);if(!PROJECT_NAME_PATTERN[_0x5bbafe(0xa1)](_0x454783))return _0x5bbafe(0xa2);if(WINDOWS_RESERVED_NAME[_0x5bbafe(0xa1)](_0x454783))return _0x5bbafe(0x95)+_0x454783+'\x22\x20is\x20reserved\x20on\x20Windows';return null;}export function validateProjectName(_0x406e76){const _0x5940f6=a180_0x1d7d,_0x2bf5bf=_0x406e76['trim'](),_0xa3fcde=getProjectNameValidationError(_0x2bf5bf);if(_0xa3fcde)throw CliErrors[_0x5940f6(0x9c)](_0xa3fcde,_0x5940f6(0x99));return _0x2bf5bf;}function a180_0x414d(){const _0x3c70d9=['8fuTsof','test','Must\x20start\x20with\x20a\x20letter/number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','1899256gqvXuW','187881uXjJjt','trim','591834KQLxfD','\x20characters','Project\x20name\x20\x22','2EtUjNh','245566oogXDd','592055ewQryQ','Use\x20a\x20portable\x20directory\x20name\x20without\x20path\x20separators.','10tzmmiC','5341725fkLUYQ','validation','Project\x20name\x20cannot\x20be\x20empty','2804459IuBmCb','Project\x20name\x20cannot\x20exceed\x20'];a180_0x414d=function(){return _0x3c70d9;};return a180_0x414d();}
@@ -1 +1 @@
1
- (function(_0x5e180e,_0x205f31){const _0x2a6718=a183_0x3ba7,_0x11cc72=_0x5e180e();while(!![]){try{const _0x2f2b24=-parseInt(_0x2a6718(0xc6))/0x1+-parseInt(_0x2a6718(0xb9))/0x2*(-parseInt(_0x2a6718(0xb5))/0x3)+-parseInt(_0x2a6718(0xe0))/0x4*(-parseInt(_0x2a6718(0xbd))/0x5)+parseInt(_0x2a6718(0xd1))/0x6+-parseInt(_0x2a6718(0xcd))/0x7*(parseInt(_0x2a6718(0xd9))/0x8)+-parseInt(_0x2a6718(0xd4))/0x9+parseInt(_0x2a6718(0xc8))/0xa*(parseInt(_0x2a6718(0xc1))/0xb);if(_0x2f2b24===_0x205f31)break;else _0x11cc72['push'](_0x11cc72['shift']());}catch(_0x55481e){_0x11cc72['push'](_0x11cc72['shift']());}}}(a183_0x40c4,0xdd44a));import{createWriteStream}from'node:fs';function a183_0x3ba7(_0x542df0,_0x38b94e){_0x542df0=_0x542df0-0xb5;const _0x40c49f=a183_0x40c4();let _0x3ba761=_0x40c49f[_0x542df0];return _0x3ba761;}import a183_0xffbab from'node:fs/promises';import a183_0x3ac23d from'node:path';function a183_0x40c4(){const _0x31cd6c=['split','Symbolic\x20links\x20are\x20not\x20allowed\x20in\x20project\x20templates:\x20','9132480IELwIG','length','endsWith','14661117VDZrcL','mkdir','Unable\x20to\x20read\x20ZIP\x20entry:\x20','replace','close','1174408qVkHLK','test','catch','resolve','dirname','Unsafe\x20absolute\x20ZIP\x20entry\x20path:\x20','slice','934572kDMhYr','entry','33yxvcUo','get','ZIP\x20entry\x20escapes\x20the\x20destination\x20directory:\x20','fileName','67278LulEIg','readEntry','add','uncompressedSize','5MoayTG','has','startsWith','externalFileAttributes','9739433KNERYv','Project\x20template\x20ZIP\x20exceeds\x20','Project\x20template\x20ZIP\x20expands\x20beyond\x20the\x2050\x20MB\x20safety\x20limit.','set','Unsafe\x20or\x20non-portable\x20ZIP\x20entry\x20path:\x20','186823xjOcEl','join','20xLevNH','toLocaleLowerCase','Unable\x20to\x20open\x20project\x20template\x20archive.','open','sep','56OeCfya','error'];a183_0x40c4=function(){return _0x31cd6c;};return a183_0x40c4();}import{pipeline}from'node:stream/promises';import a183_0x15a94c 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(_0x50055e){return new Promise((_0x4c4377,_0x36140e)=>{const _0x3022dd=a183_0x3ba7;a183_0x15a94c[_0x3022dd(0xcb)](_0x50055e,{'lazyEntries':!![],'decodeStrings':!![],'strictFileNames':!![],'validateEntrySizes':!![]},(_0x2869b6,_0x267120)=>{const _0x54e953=_0x3022dd;if(_0x2869b6||!_0x267120){_0x36140e(_0x2869b6||new Error(_0x54e953(0xca)));return;}_0x4c4377(_0x267120);});});}function openEntryStream(_0x42fa1f,_0x4b25c8){return new Promise((_0x33d0d9,_0x8d19d4)=>{_0x42fa1f['openReadStream'](_0x4b25c8,(_0x4e94ec,_0x299608)=>{const _0x6563ea=a183_0x3ba7;if(_0x4e94ec||!_0x299608){_0x8d19d4(_0x4e94ec||new Error(_0x6563ea(0xd6)+_0x4b25c8['fileName']));return;}_0x33d0d9(_0x299608);});});}function validateEntryPath(_0x3cac9d){const _0x3e859a=a183_0x3ba7,_0x1f4c9b=_0x3cac9d[_0x3e859a(0xd7)](/\\/g,'/'),_0x3057e7=_0x1f4c9b[_0x3e859a(0xd3)]('/'),_0x34288b=_0x3057e7?_0x1f4c9b[_0x3e859a(0xdf)](0x0,-0x1):_0x1f4c9b;if(!_0x34288b||_0x1f4c9b[_0x3e859a(0xbf)]('/')||/^[A-Za-z]:\//['test'](_0x1f4c9b))throw new Error(_0x3e859a(0xde)+_0x3cac9d);const _0x585904=_0x34288b['split']('/');for(const _0x548dd4 of _0x585904){if(!_0x548dd4||_0x548dd4==='.'||_0x548dd4==='..'||_0x548dd4[_0x3e859a(0xd3)]('.')||_0x548dd4[_0x3e859a(0xd3)]('\x20')||WINDOWS_INVALID_CHAR[_0x3e859a(0xda)](_0x548dd4)||WINDOWS_RESERVED_NAME[_0x3e859a(0xda)](_0x548dd4))throw new Error(_0x3e859a(0xc5)+_0x3cac9d);}return{'relativePath':_0x585904[_0x3e859a(0xc7)](a183_0x3ac23d[_0x3e859a(0xcc)]),'directory':_0x3057e7};}function isSymbolicLink(_0x4863b2){const _0x23507e=a183_0x3ba7,_0x376148=_0x4863b2[_0x23507e(0xc0)]>>>0x10&0xffff;return(_0x376148&0xf000)===0xa000;}export async function extractProjectTemplateArchive(_0xdd17d,_0x44b878){const _0x5ba741=a183_0x3ba7,_0x1c0a22=await openZip(_0xdd17d),_0x41cc2f=a183_0x3ac23d[_0x5ba741(0xdc)](_0x44b878),_0x3edc65=new Set(),_0x21792e=new Map();let _0xea00f4=0x0,_0x5dd258=0x0;await a183_0xffbab[_0x5ba741(0xd5)](_0x41cc2f,{'recursive':!![]}),await new Promise((_0x54ecae,_0x1b78c3)=>{const _0x6d00a7=_0x5ba741;let _0x205731=![];const _0x48a2d4=_0x3736a2=>{const _0x760f34=a183_0x3ba7;if(_0x205731)return;_0x205731=!![],_0x1c0a22[_0x760f34(0xd8)](),_0x1b78c3(_0x3736a2 instanceof Error?_0x3736a2:new Error(String(_0x3736a2)));};_0x1c0a22['once'](_0x6d00a7(0xce),_0x48a2d4),_0x1c0a22['once']('end',()=>{if(_0x205731)return;_0x205731=!![],_0x54ecae();}),_0x1c0a22['on'](_0x6d00a7(0xe1),_0x4d1834=>{const _0x1b80fa=_0x6d00a7;void(async()=>{const _0x3ab44=a183_0x3ba7;_0xea00f4+=0x1,_0x5dd258+=_0x4d1834[_0x3ab44(0xbc)];if(_0xea00f4>MAX_ENTRY_COUNT)throw new Error(_0x3ab44(0xc2)+MAX_ENTRY_COUNT+'\x20entries.');if(_0x5dd258>MAX_UNCOMPRESSED_SIZE)throw new Error(_0x3ab44(0xc3));if(_0x4d1834['isEncrypted']())throw new Error('Encrypted\x20ZIP\x20entries\x20are\x20not\x20supported:\x20'+_0x4d1834[_0x3ab44(0xb8)]);if(isSymbolicLink(_0x4d1834))throw new Error(_0x3ab44(0xd0)+_0x4d1834[_0x3ab44(0xb8)]);const {relativePath:_0x1e8ec8,directory:_0x178a2c}=validateEntryPath(_0x4d1834['fileName']),_0x131cc2=_0x1e8ec8[_0x3ab44(0xcf)](a183_0x3ac23d[_0x3ab44(0xcc)]);for(let _0x384711=0x1;_0x384711<=_0x131cc2[_0x3ab44(0xd2)];_0x384711+=0x1){const _0x398475=_0x131cc2[_0x3ab44(0xdf)](0x0,_0x384711)['join'](a183_0x3ac23d[_0x3ab44(0xcc)]),_0x3cb16c=_0x398475[_0x3ab44(0xc9)]('en-US'),_0xa82697=_0x21792e[_0x3ab44(0xb6)](_0x3cb16c);if(_0xa82697&&_0xa82697!==_0x398475)throw new Error('Case-conflicting\x20ZIP\x20entry\x20path:\x20'+_0x4d1834['fileName']);_0x21792e[_0x3ab44(0xc4)](_0x3cb16c,_0x398475);}const _0x1ce9b0=_0x1e8ec8[_0x3ab44(0xc9)]('en-US');if(_0x3edc65[_0x3ab44(0xbe)](_0x1ce9b0))throw new Error('Duplicate\x20or\x20case-conflicting\x20ZIP\x20entry:\x20'+_0x4d1834[_0x3ab44(0xb8)]);_0x3edc65[_0x3ab44(0xbb)](_0x1ce9b0);const _0x1cddc8=a183_0x3ac23d[_0x3ab44(0xdc)](_0x41cc2f,_0x1e8ec8);if(_0x1cddc8!==_0x41cc2f&&!_0x1cddc8['startsWith'](''+_0x41cc2f+a183_0x3ac23d[_0x3ab44(0xcc)]))throw new Error(_0x3ab44(0xb7)+_0x4d1834['fileName']);if(_0x178a2c)await a183_0xffbab['mkdir'](_0x1cddc8,{'recursive':!![]});else{await a183_0xffbab['mkdir'](a183_0x3ac23d[_0x3ab44(0xdd)](_0x1cddc8),{'recursive':!![]});const _0x7734cb=await openEntryStream(_0x1c0a22,_0x4d1834);await pipeline(_0x7734cb,createWriteStream(_0x1cddc8,{'flags':'wx','mode':0x1a4}));}_0x1c0a22[_0x3ab44(0xba)]();})()[_0x1b80fa(0xdb)](_0x48a2d4);}),_0x1c0a22[_0x6d00a7(0xba)]();});}
1
+ (function(_0x1ab3ab,_0x1abbd7){const _0x332dd5=a181_0x4904,_0x19d29f=_0x1ab3ab();while(!![]){try{const _0x445401=-parseInt(_0x332dd5(0x82))/0x1+parseInt(_0x332dd5(0x80))/0x2*(parseInt(_0x332dd5(0x7a))/0x3)+-parseInt(_0x332dd5(0x73))/0x4*(parseInt(_0x332dd5(0x7c))/0x5)+parseInt(_0x332dd5(0x7d))/0x6+parseInt(_0x332dd5(0x99))/0x7+parseInt(_0x332dd5(0x83))/0x8+-parseInt(_0x332dd5(0x77))/0x9;if(_0x445401===_0x1abbd7)break;else _0x19d29f['push'](_0x19d29f['shift']());}catch(_0xbf5be7){_0x19d29f['push'](_0x19d29f['shift']());}}}(a181_0x498d,0x2e416));import{createWriteStream}from'node:fs';function a181_0x498d(){const _0x2e571c=['93kyNjGK','Project\x20template\x20ZIP\x20expands\x20beyond\x20the\x2050\x20MB\x20safety\x20limit.','5KoXMwk','1255368ygFVeT','once','catch','19268DoqpNo','test','179749DbXZMW','1398728mUaoTt','length','Unable\x20to\x20open\x20project\x20template\x20archive.','Encrypted\x20ZIP\x20entries\x20are\x20not\x20supported:\x20','ZIP\x20entry\x20escapes\x20the\x20destination\x20directory:\x20','resolve','sep','Case-conflicting\x20ZIP\x20entry\x20path:\x20','Unable\x20to\x20read\x20ZIP\x20entry:\x20','Project\x20template\x20ZIP\x20exceeds\x20','endsWith','fileName','mkdir','openReadStream','close','readEntry','\x20entries.','Unsafe\x20or\x20non-portable\x20ZIP\x20entry\x20path:\x20','Duplicate\x20or\x20case-conflicting\x20ZIP\x20entry:\x20','startsWith','get','has','1500667UmdgSv','join','toLocaleLowerCase','open','en-US','split','slice','344496xEWquS','end','externalFileAttributes','replace','3975921cKixOD','uncompressedSize','set'];a181_0x498d=function(){return _0x2e571c;};return a181_0x498d();}import a181_0x72c462 from'node:fs/promises';import a181_0x1ae020 from'node:path';import{pipeline}from'node:stream/promises';import a181_0xb08bd7 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(_0x1c9403){return new Promise((_0x18c83f,_0x354606)=>{const _0x12aaa0=a181_0x4904;a181_0xb08bd7[_0x12aaa0(0x9c)](_0x1c9403,{'lazyEntries':!![],'decodeStrings':!![],'strictFileNames':!![],'validateEntrySizes':!![]},(_0x31ea3f,_0x23b5b6)=>{const _0x15d1bd=_0x12aaa0;if(_0x31ea3f||!_0x23b5b6){_0x354606(_0x31ea3f||new Error(_0x15d1bd(0x85)));return;}_0x18c83f(_0x23b5b6);});});}function openEntryStream(_0x1211b4,_0x2dbe52){return new Promise((_0x92b022,_0x4a5421)=>{const _0x329067=a181_0x4904;_0x1211b4[_0x329067(0x90)](_0x2dbe52,(_0x388060,_0x4cb4c2)=>{const _0x1c6f2c=_0x329067;if(_0x388060||!_0x4cb4c2){_0x4a5421(_0x388060||new Error(_0x1c6f2c(0x8b)+_0x2dbe52[_0x1c6f2c(0x8e)]));return;}_0x92b022(_0x4cb4c2);});});}function validateEntryPath(_0x35b39e){const _0x391d71=a181_0x4904,_0x721c47=_0x35b39e[_0x391d71(0x76)](/\\/g,'/'),_0x2c8c5e=_0x721c47[_0x391d71(0x8d)]('/'),_0x450134=_0x2c8c5e?_0x721c47['slice'](0x0,-0x1):_0x721c47;if(!_0x450134||_0x721c47['startsWith']('/')||/^[A-Za-z]:\//[_0x391d71(0x81)](_0x721c47))throw new Error('Unsafe\x20absolute\x20ZIP\x20entry\x20path:\x20'+_0x35b39e);const _0x4bda5e=_0x450134['split']('/');for(const _0x3c0f85 of _0x4bda5e){if(!_0x3c0f85||_0x3c0f85==='.'||_0x3c0f85==='..'||_0x3c0f85['endsWith']('.')||_0x3c0f85[_0x391d71(0x8d)]('\x20')||WINDOWS_INVALID_CHAR[_0x391d71(0x81)](_0x3c0f85)||WINDOWS_RESERVED_NAME[_0x391d71(0x81)](_0x3c0f85))throw new Error(_0x391d71(0x94)+_0x35b39e);}return{'relativePath':_0x4bda5e[_0x391d71(0x9a)](a181_0x1ae020[_0x391d71(0x89)]),'directory':_0x2c8c5e};}function a181_0x4904(_0x2f5a6d,_0x5f0be4){_0x2f5a6d=_0x2f5a6d-0x73;const _0x498d1c=a181_0x498d();let _0x490406=_0x498d1c[_0x2f5a6d];return _0x490406;}function isSymbolicLink(_0x3eaf97){const _0x57ca87=a181_0x4904,_0x551a20=_0x3eaf97[_0x57ca87(0x75)]>>>0x10&0xffff;return(_0x551a20&0xf000)===0xa000;}export async function extractProjectTemplateArchive(_0x309856,_0x4c4562){const _0x2ad554=a181_0x4904,_0xc78349=await openZip(_0x309856),_0x4e96e7=a181_0x1ae020['resolve'](_0x4c4562),_0x381eff=new Set(),_0x4987bb=new Map();let _0x473fb4=0x0,_0x124a92=0x0;await a181_0x72c462[_0x2ad554(0x8f)](_0x4e96e7,{'recursive':!![]}),await new Promise((_0x5d102d,_0x1a8ef1)=>{const _0x25d7aa=_0x2ad554;let _0x4b280a=![];const _0x39a657=_0x562e7c=>{const _0x142165=a181_0x4904;if(_0x4b280a)return;_0x4b280a=!![],_0xc78349[_0x142165(0x91)](),_0x1a8ef1(_0x562e7c instanceof Error?_0x562e7c:new Error(String(_0x562e7c)));};_0xc78349[_0x25d7aa(0x7e)]('error',_0x39a657),_0xc78349['once'](_0x25d7aa(0x74),()=>{if(_0x4b280a)return;_0x4b280a=!![],_0x5d102d();}),_0xc78349['on']('entry',_0x30fcf6=>{const _0xcddcc4=_0x25d7aa;void(async()=>{const _0x119137=a181_0x4904;_0x473fb4+=0x1,_0x124a92+=_0x30fcf6[_0x119137(0x78)];if(_0x473fb4>MAX_ENTRY_COUNT)throw new Error(_0x119137(0x8c)+MAX_ENTRY_COUNT+_0x119137(0x93));if(_0x124a92>MAX_UNCOMPRESSED_SIZE)throw new Error(_0x119137(0x7b));if(_0x30fcf6['isEncrypted']())throw new Error(_0x119137(0x86)+_0x30fcf6[_0x119137(0x8e)]);if(isSymbolicLink(_0x30fcf6))throw new Error('Symbolic\x20links\x20are\x20not\x20allowed\x20in\x20project\x20templates:\x20'+_0x30fcf6[_0x119137(0x8e)]);const {relativePath:_0x620ead,directory:_0x1cb753}=validateEntryPath(_0x30fcf6['fileName']),_0x3db7e6=_0x620ead[_0x119137(0x9e)](a181_0x1ae020[_0x119137(0x89)]);for(let _0x479daf=0x1;_0x479daf<=_0x3db7e6[_0x119137(0x84)];_0x479daf+=0x1){const _0x8232d5=_0x3db7e6[_0x119137(0x9f)](0x0,_0x479daf)['join'](a181_0x1ae020[_0x119137(0x89)]),_0x25cbe1=_0x8232d5['toLocaleLowerCase'](_0x119137(0x9d)),_0x46b33e=_0x4987bb[_0x119137(0x97)](_0x25cbe1);if(_0x46b33e&&_0x46b33e!==_0x8232d5)throw new Error(_0x119137(0x8a)+_0x30fcf6[_0x119137(0x8e)]);_0x4987bb[_0x119137(0x79)](_0x25cbe1,_0x8232d5);}const _0x3b738c=_0x620ead[_0x119137(0x9b)](_0x119137(0x9d));if(_0x381eff[_0x119137(0x98)](_0x3b738c))throw new Error(_0x119137(0x95)+_0x30fcf6[_0x119137(0x8e)]);_0x381eff['add'](_0x3b738c);const _0x3f9230=a181_0x1ae020[_0x119137(0x88)](_0x4e96e7,_0x620ead);if(_0x3f9230!==_0x4e96e7&&!_0x3f9230[_0x119137(0x96)](''+_0x4e96e7+a181_0x1ae020[_0x119137(0x89)]))throw new Error(_0x119137(0x87)+_0x30fcf6[_0x119137(0x8e)]);if(_0x1cb753)await a181_0x72c462[_0x119137(0x8f)](_0x3f9230,{'recursive':!![]});else{await a181_0x72c462[_0x119137(0x8f)](a181_0x1ae020['dirname'](_0x3f9230),{'recursive':!![]});const _0x379037=await openEntryStream(_0xc78349,_0x30fcf6);await pipeline(_0x379037,createWriteStream(_0x3f9230,{'flags':'wx','mode':0x1a4}));}_0xc78349[_0x119137(0x92)]();})()[_0xcddcc4(0x7f)](_0x39a657);}),_0xc78349[_0x25d7aa(0x92)]();});}
@@ -1 +1 @@
1
- function a184_0x4d46(_0x5c5a30,_0x140b79){_0x5c5a30=_0x5c5a30-0x16f;const _0x44dfa6=a184_0x44df();let _0x4d4687=_0x44dfa6[_0x5c5a30];return _0x4d4687;}(function(_0x17ea1e,_0x45ae3e){const _0x499ab1=a184_0x4d46,_0x5bf331=_0x17ea1e();while(!![]){try{const _0x46fbd5=parseInt(_0x499ab1(0x176))/0x1*(parseInt(_0x499ab1(0x175))/0x2)+parseInt(_0x499ab1(0x173))/0x3+-parseInt(_0x499ab1(0x16f))/0x4+-parseInt(_0x499ab1(0x171))/0x5*(-parseInt(_0x499ab1(0x177))/0x6)+-parseInt(_0x499ab1(0x174))/0x7+parseInt(_0x499ab1(0x179))/0x8*(-parseInt(_0x499ab1(0x170))/0x9)+parseInt(_0x499ab1(0x178))/0xa;if(_0x46fbd5===_0x45ae3e)break;else _0x5bf331['push'](_0x5bf331['shift']());}catch(_0x175291){_0x5bf331['push'](_0x5bf331['shift']());}}}(a184_0x44df,0x7feb2));function a184_0x44df(){const _0x111761=['1802220wHjoEJ','140402uLNhGU','2HNUHYu','168xCHMEB','1608630SohWLU','1295256hWVpLx','2993828cSflSa','9tSMRXB','130155vigWIZ','resolve','1984935shvuFK'];a184_0x44df=function(){return _0x111761;};return a184_0x44df();}import a184_0x38bfa1 from'node:path';import{fileURLToPath}from'node:url';const __dirname=a184_0x38bfa1['dirname'](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x359811=a184_0x4d46;return a184_0x38bfa1[_0x359811(0x172)](__dirname,'../../../../');}
1
+ const a182_0x3dcdea=a182_0x511b;(function(_0x5bd0e3,_0x2491ed){const _0xd4b116=a182_0x511b,_0x610bab=_0x5bd0e3();while(!![]){try{const _0x5d9588=parseInt(_0xd4b116(0x192))/0x1*(-parseInt(_0xd4b116(0x18c))/0x2)+-parseInt(_0xd4b116(0x186))/0x3*(parseInt(_0xd4b116(0x18d))/0x4)+parseInt(_0xd4b116(0x191))/0x5*(parseInt(_0xd4b116(0x18b))/0x6)+-parseInt(_0xd4b116(0x189))/0x7*(parseInt(_0xd4b116(0x18e))/0x8)+parseInt(_0xd4b116(0x190))/0x9*(-parseInt(_0xd4b116(0x183))/0xa)+-parseInt(_0xd4b116(0x187))/0xb+parseInt(_0xd4b116(0x185))/0xc*(parseInt(_0xd4b116(0x18f))/0xd);if(_0x5d9588===_0x2491ed)break;else _0x610bab['push'](_0x610bab['shift']());}catch(_0x5d6997){_0x610bab['push'](_0x610bab['shift']());}}}(a182_0x330d,0x4c477));function a182_0x511b(_0x3ff007,_0x42fbd4){_0x3ff007=_0x3ff007-0x183;const _0x330d7f=a182_0x330d();let _0x511b0f=_0x330d7f[_0x3ff007];return _0x511b0f;}import a182_0x37d99a from'node:path';import{fileURLToPath}from'node:url';const __dirname=a182_0x37d99a[a182_0x3dcdea(0x18a)](fileURLToPath(import.meta.url));export function getRabetbaseCliPackageRoot(){const _0x3a41bb=a182_0x3dcdea;return a182_0x37d99a[_0x3a41bb(0x184)](__dirname,_0x3a41bb(0x188));}function a182_0x330d(){const _0x58b4c0=['8rTPkrw','16654963ObszFA','684WqfSdW','3495BhqUQz','18rwJymO','33090YuGwhF','resolve','12VQSYpp','84EyLHCd','4514686iwzqrQ','../../../../','1069509arwbOv','dirname','3030BhAFAz','9086xDOdtv','60748bqzDcF'];a182_0x330d=function(){return _0x58b4c0;};return a182_0x330d();}
@@ -1 +1 @@
1
- (function(_0x131a84,_0x122f33){const _0x5d1e46=a185_0x3785,_0x495e78=_0x131a84();while(!![]){try{const _0x3f9a3f=-parseInt(_0x5d1e46(0x90))/0x1*(-parseInt(_0x5d1e46(0x91))/0x2)+-parseInt(_0x5d1e46(0x8a))/0x3+-parseInt(_0x5d1e46(0x8e))/0x4+parseInt(_0x5d1e46(0x85))/0x5*(-parseInt(_0x5d1e46(0x97))/0x6)+-parseInt(_0x5d1e46(0x93))/0x7*(-parseInt(_0x5d1e46(0x88))/0x8)+parseInt(_0x5d1e46(0x84))/0x9*(-parseInt(_0x5d1e46(0x92))/0xa)+-parseInt(_0x5d1e46(0x8d))/0xb*(-parseInt(_0x5d1e46(0x96))/0xc);if(_0x3f9a3f===_0x122f33)break;else _0x495e78['push'](_0x495e78['shift']());}catch(_0x3f743f){_0x495e78['push'](_0x495e78['shift']());}}}(a185_0xd137,0x98328));import a185_0x44b02b from'node:path';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a185_0x3785(_0x58d0d8,_0x2ce6ad){_0x58d0d8=_0x58d0d8-0x84;const _0xd13734=a185_0xd137();let _0x37854b=_0xd13734[_0x58d0d8];return _0x37854b;}import{materializeLocalProjectTemplate,materializeProjectTemplate}from'../../../commands/project/create/materialize-project-template.js';function a185_0xd137(){const _0x178422=['copy','message','209ingjAO','1352448jhPzCQ','version','1gfWTuf','167798zrrZof','1867640PwaBxG','959EiEWal','Project\x20template\x20created','cwd','1900332SkRIoa','6930246SnzvGD','source','error','9uNQVuI','5JXDZiK','Starting\x20project\x20template\x20creation','Failed\x20to\x20copy\x20project\x20template','2584iAznPZ','now','2501076ZupDhc'];a185_0xd137=function(){return _0x178422;};return a185_0xd137();}export async function copyProjectTemplate(_0x23d366,_0x37cd13,_0x4aa151){const _0x18404c=a185_0x3785,_0x1c8f1e=Date[_0x18404c(0x89)](),_0x7cc8df=a185_0x44b02b['resolve'](process[_0x18404c(0x95)](),_0x23d366);try{logger['info'](_0x18404c(0x8b),_0x18404c(0x86),{'projectCode':_0x23d366});const _0x57c9b4=_0x4aa151?await materializeLocalProjectTemplate(_0x4aa151,_0x7cc8df,_0x37cd13):await materializeProjectTemplate(_0x7cc8df,_0x37cd13),_0x2afddd=Date['now']()-_0x1c8f1e;logger['success']('copy',_0x18404c(0x94),_0x2afddd,{'projectCode':_0x23d366,'templateSource':_0x57c9b4[_0x18404c(0x98)],'templateVersion':_0x57c9b4[_0x18404c(0x8f)]});}catch(_0x4705cd){const _0x152b3f=Date[_0x18404c(0x89)]()-_0x1c8f1e;logger[_0x18404c(0x99)]('copy',_0x18404c(0x87),{'projectCode':_0x23d366,'error':_0x4705cd instanceof Error?_0x4705cd[_0x18404c(0x8c)]:String(_0x4705cd),'duration':_0x152b3f});throw _0x4705cd;}return formatElapsed(_0x1c8f1e);}
1
+ (function(_0x4ea376,_0x43cfef){const _0x3f616f=a183_0x5e12,_0x81837e=_0x4ea376();while(!![]){try{const _0x353f82=-parseInt(_0x3f616f(0xe2))/0x1*(-parseInt(_0x3f616f(0xe3))/0x2)+parseInt(_0x3f616f(0xe8))/0x3*(parseInt(_0x3f616f(0xe0))/0x4)+parseInt(_0x3f616f(0xe4))/0x5+-parseInt(_0x3f616f(0xd9))/0x6*(-parseInt(_0x3f616f(0xdb))/0x7)+-parseInt(_0x3f616f(0xdf))/0x8+parseInt(_0x3f616f(0xd7))/0x9*(-parseInt(_0x3f616f(0xd1))/0xa)+parseInt(_0x3f616f(0xe7))/0xb*(-parseInt(_0x3f616f(0xde))/0xc);if(_0x353f82===_0x43cfef)break;else _0x81837e['push'](_0x81837e['shift']());}catch(_0xb4a3f8){_0x81837e['push'](_0x81837e['shift']());}}}(a183_0x17ec,0x21981));import a183_0xdb2a3b 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_0x5e12(_0x37110f,_0x57ce6f){_0x37110f=_0x37110f-0xd1;const _0x17ec8f=a183_0x17ec();let _0x5e12d5=_0x17ec8f[_0x37110f];return _0x5e12d5;}function a183_0x17ec(){const _0x4844fa=['25948kRijfQ','copy','9407yYcmPm','26tLBLjU','787170iBZdCs','cwd','Project\x20template\x20created','2880856zDivmo','39hVeAQX','252470sqGfWF','error','source','info','now','version','18LFKmJt','Failed\x20to\x20copy\x20project\x20template','308364lutaVp','resolve','14sXzvPE','success','message','12XGbaiX','134824DfHERa'];a183_0x17ec=function(){return _0x4844fa;};return a183_0x17ec();}export async function copyProjectTemplate(_0x5a2909,_0x39e0fd,_0x5cb0fe){const _0x373eec=a183_0x5e12,_0x2c0bba=Date[_0x373eec(0xd5)](),_0x2e68ef=a183_0xdb2a3b[_0x373eec(0xda)](process[_0x373eec(0xe5)](),_0x5a2909);try{logger[_0x373eec(0xd4)](_0x373eec(0xe1),'Starting\x20project\x20template\x20creation',{'projectCode':_0x5a2909});const _0x36f845=_0x5cb0fe?await materializeLocalProjectTemplate(_0x5cb0fe,_0x2e68ef,_0x39e0fd):await materializeProjectTemplate(_0x2e68ef,_0x39e0fd),_0xa5f84b=Date[_0x373eec(0xd5)]()-_0x2c0bba;logger[_0x373eec(0xdc)](_0x373eec(0xe1),_0x373eec(0xe6),_0xa5f84b,{'projectCode':_0x5a2909,'templateSource':_0x36f845[_0x373eec(0xd3)],'templateVersion':_0x36f845[_0x373eec(0xd6)]});}catch(_0x2e13e6){const _0x491d20=Date[_0x373eec(0xd5)]()-_0x2c0bba;logger[_0x373eec(0xd2)](_0x373eec(0xe1),_0x373eec(0xd8),{'projectCode':_0x5a2909,'error':_0x2e13e6 instanceof Error?_0x2e13e6[_0x373eec(0xdd)]:String(_0x2e13e6),'duration':_0x491d20});throw _0x2e13e6;}return formatElapsed(_0x2c0bba);}
@@ -1 +1 @@
1
- (function(_0x1898a4,_0x445c0e){const _0x4162d1=a186_0x9c08,_0x456f5c=_0x1898a4();while(!![]){try{const _0x4aa6b2=parseInt(_0x4162d1(0x1c3))/0x1*(-parseInt(_0x4162d1(0x1c0))/0x2)+parseInt(_0x4162d1(0x1c2))/0x3+parseInt(_0x4162d1(0x1d6))/0x4+parseInt(_0x4162d1(0x1cd))/0x5*(-parseInt(_0x4162d1(0x1d5))/0x6)+-parseInt(_0x4162d1(0x1c9))/0x7*(parseInt(_0x4162d1(0x1ca))/0x8)+parseInt(_0x4162d1(0x1cb))/0x9+parseInt(_0x4162d1(0x1c7))/0xa;if(_0x4aa6b2===_0x445c0e)break;else _0x456f5c['push'](_0x456f5c['shift']());}catch(_0x5ebd3c){_0x456f5c['push'](_0x456f5c['shift']());}}}(a186_0x519f,0xce995));import a186_0x216ea4 from'node:path';function a186_0x9c08(_0x1f5933,_0x4a5b3a){_0x1f5933=_0x1f5933-0x1c0;const _0x519fe4=a186_0x519f();let _0x9c0860=_0x519fe4[_0x1f5933];return _0x9c0860;}import{execa}from'execa';function a186_0x519f(){const _0x54c26c=['message','Code\x20format\x20completed','npx','cwd','6qpLZpj','3958284gQBBzv','878732hVIWrz','prettier','695910HeHshe','2AVdSTS','now','success','resolve','1476750WRCgHx','Starting\x20code\x20format','1558991loMItX','8ZGHmNO','10057608fjSlIK','--write','2695270EracKa','format','info','error'];a186_0x519f=function(){return _0x54c26c;};return a186_0x519f();}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(_0x160a01){const _0x38fc69=a186_0x9c08,_0x5a7813=Date['now'](),_0x257e61=a186_0x216ea4[_0x38fc69(0x1c6)](process[_0x38fc69(0x1d4)](),_0x160a01);try{logger[_0x38fc69(0x1cf)](_0x38fc69(0x1ce),_0x38fc69(0x1c8),{'projectCode':_0x160a01}),await execa(resolveNpmBin(_0x38fc69(0x1d3)),[_0x38fc69(0x1c1),_0x38fc69(0x1cc),'.'],{'cwd':_0x257e61});const _0xfcae54=Date[_0x38fc69(0x1c4)]()-_0x5a7813;logger[_0x38fc69(0x1c5)](_0x38fc69(0x1ce),_0x38fc69(0x1d2),_0xfcae54,{'projectCode':_0x160a01});}catch(_0x57ad08){const _0x5d2b27=Date[_0x38fc69(0x1c4)]()-_0x5a7813;logger[_0x38fc69(0x1d0)](_0x38fc69(0x1ce),'Code\x20format\x20failed',{'projectCode':_0x160a01,'error':_0x57ad08 instanceof Error?_0x57ad08[_0x38fc69(0x1d1)]:String(_0x57ad08),'duration':_0x5d2b27});throw _0x57ad08;}return formatElapsed(_0x5a7813);}
1
+ function a184_0x5d73(){const _0x46aedc=['48IPbamQ','824lxvexY','8933050YgFYUz','19744LGVWFx','58924pjGuTd','22335hmaKFo','message','resolve','4842CmpHdd','now','1351JEmHfY','1626420vFWrVH','Code\x20format\x20completed','format','39684wXUyVX','prettier','534900LMgSRu','Code\x20format\x20failed','cwd','success','121SsTxfk'];a184_0x5d73=function(){return _0x46aedc;};return a184_0x5d73();}(function(_0x2a83cc,_0x47ff25){const _0x3ce532=a184_0x3f38,_0x2a7a1f=_0x2a83cc();while(!![]){try{const _0x260c40=parseInt(_0x3ce532(0x1b3))/0x1*(-parseInt(_0x3ce532(0x1af))/0x2)+parseInt(_0x3ce532(0x1b4))/0x3*(parseInt(_0x3ce532(0x1b0))/0x4)+parseInt(_0x3ce532(0x1bf))/0x5+-parseInt(_0x3ce532(0x1bd))/0x6*(-parseInt(_0x3ce532(0x1b9))/0x7)+-parseInt(_0x3ce532(0x1b2))/0x8*(parseInt(_0x3ce532(0x1b7))/0x9)+-parseInt(_0x3ce532(0x1b1))/0xa+parseInt(_0x3ce532(0x1ae))/0xb*(parseInt(_0x3ce532(0x1ba))/0xc);if(_0x260c40===_0x47ff25)break;else _0x2a7a1f['push'](_0x2a7a1f['shift']());}catch(_0x4f8262){_0x2a7a1f['push'](_0x2a7a1f['shift']());}}}(a184_0x5d73,0xbcaa4));import a184_0x24c345 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';import{logger}from'../../../utils/logger.js';function a184_0x3f38(_0x15b766,_0x1516ec){_0x15b766=_0x15b766-0x1ae;const _0x5d73c0=a184_0x5d73();let _0x3f387f=_0x5d73c0[_0x15b766];return _0x3f387f;}import{resolveNpmBin}from'../../../utils/platform.js';export async function formatProjectCode(_0x53330c){const _0x59595c=a184_0x3f38,_0x37e657=Date[_0x59595c(0x1b8)](),_0x406988=a184_0x24c345[_0x59595c(0x1b6)](process[_0x59595c(0x1c1)](),_0x53330c);try{logger['info'](_0x59595c(0x1bc),'Starting\x20code\x20format',{'projectCode':_0x53330c}),await execa(resolveNpmBin('npx'),[_0x59595c(0x1be),'--write','.'],{'cwd':_0x406988});const _0x39d953=Date[_0x59595c(0x1b8)]()-_0x37e657;logger[_0x59595c(0x1c2)]('format',_0x59595c(0x1bb),_0x39d953,{'projectCode':_0x53330c});}catch(_0x58c323){const _0x25ef13=Date[_0x59595c(0x1b8)]()-_0x37e657;logger['error'](_0x59595c(0x1bc),_0x59595c(0x1c0),{'projectCode':_0x53330c,'error':_0x58c323 instanceof Error?_0x58c323[_0x59595c(0x1b5)]:String(_0x58c323),'duration':_0x25ef13});throw _0x58c323;}return formatElapsed(_0x37e657);}
@@ -1 +1 @@
1
- (function(_0x48ea29,_0x33f676){const _0x1b1b5d=a187_0xd8fa,_0x3e2a68=_0x48ea29();while(!![]){try{const _0x5acac8=parseInt(_0x1b1b5d(0x167))/0x1+-parseInt(_0x1b1b5d(0x168))/0x2+-parseInt(_0x1b1b5d(0x173))/0x3*(-parseInt(_0x1b1b5d(0x178))/0x4)+parseInt(_0x1b1b5d(0x172))/0x5*(parseInt(_0x1b1b5d(0x174))/0x6)+parseInt(_0x1b1b5d(0x16d))/0x7*(-parseInt(_0x1b1b5d(0x165))/0x8)+-parseInt(_0x1b1b5d(0x177))/0x9*(parseInt(_0x1b1b5d(0x171))/0xa)+parseInt(_0x1b1b5d(0x175))/0xb;if(_0x5acac8===_0x33f676)break;else _0x3e2a68['push'](_0x3e2a68['shift']());}catch(_0x56ea57){_0x3e2a68['push'](_0x3e2a68['shift']());}}}(a187_0x196d,0x2460b));import a187_0x33ccf7 from'node:path';function a187_0x196d(){const _0x6c3e9d=['error','https://registry.npmmirror.com','install','1256675HYZazn','Starting\x20dependency\x20install','now','resolve','50uolpSa','52645cGMgOT','65253tdkkuu','162qjPncH','1820137GqHwgb','message','15957CzgIVV','8tgyVmD','info','npm','8nXrgIX','cwd','30209ArFiUB','372136fZCfXn','Dependency\x20install\x20failed'];a187_0x196d=function(){return _0x6c3e9d;};return a187_0x196d();}import{execa}from'execa';function a187_0xd8fa(_0x574090,_0x419c82){_0x574090=_0x574090-0x163;const _0x196d5b=a187_0x196d();let _0xd8fa83=_0x196d5b[_0x574090];return _0xd8fa83;}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(_0x1f30fd){const _0x34e54c=a187_0xd8fa,_0x87a5b2=Date['now'](),_0x143ae7=a187_0x33ccf7[_0x34e54c(0x170)](process[_0x34e54c(0x166)](),_0x1f30fd);try{logger[_0x34e54c(0x163)](_0x34e54c(0x16c),_0x34e54c(0x16e),{'projectCode':_0x1f30fd,'registry':_0x34e54c(0x16b)}),await execa(resolveNpmBin(_0x34e54c(0x164)),[_0x34e54c(0x16c),'--registry','https://registry.npmmirror.com'],{'cwd':_0x143ae7});const _0x1b571d=Date['now']()-_0x87a5b2;logger['success']('install','Dependency\x20install\x20completed',_0x1b571d,{'projectCode':_0x1f30fd});}catch(_0x3b6645){const _0x4ecc0e=Date[_0x34e54c(0x16f)]()-_0x87a5b2;logger[_0x34e54c(0x16a)](_0x34e54c(0x16c),_0x34e54c(0x169),{'projectCode':_0x1f30fd,'error':_0x3b6645 instanceof Error?_0x3b6645[_0x34e54c(0x176)]:String(_0x3b6645),'duration':_0x4ecc0e});throw _0x3b6645;}return formatElapsed(_0x87a5b2);}
1
+ (function(_0x4a05c2,_0x4326e6){const _0x5a0fcf=a185_0x2b0b,_0x45c595=_0x4a05c2();while(!![]){try{const _0x1fea40=-parseInt(_0x5a0fcf(0x164))/0x1*(-parseInt(_0x5a0fcf(0x165))/0x2)+-parseInt(_0x5a0fcf(0x16e))/0x3+parseInt(_0x5a0fcf(0x166))/0x4*(parseInt(_0x5a0fcf(0x163))/0x5)+-parseInt(_0x5a0fcf(0x174))/0x6+parseInt(_0x5a0fcf(0x160))/0x7+-parseInt(_0x5a0fcf(0x16c))/0x8*(parseInt(_0x5a0fcf(0x16b))/0x9)+parseInt(_0x5a0fcf(0x16a))/0xa*(parseInt(_0x5a0fcf(0x167))/0xb);if(_0x1fea40===_0x4326e6)break;else _0x45c595['push'](_0x45c595['shift']());}catch(_0xa90b38){_0x45c595['push'](_0x45c595['shift']());}}}(a185_0x1954,0x9ed07));import a185_0x5491f0 from'node:path';import{execa}from'execa';import{formatElapsed}from'../../../commands/project/create/format-elapsed.js';function a185_0x2b0b(_0x5d0670,_0x8f1916){_0x5d0670=_0x5d0670-0x160;const _0x1954a2=a185_0x1954();let _0x2b0b17=_0x1954a2[_0x5d0670];return _0x2b0b17;}function a185_0x1954(){const _0x35473a=['Dependency\x20install\x20completed','1770114IWCkZz','npm','install','resolve','info','Starting\x20dependency\x20install','2623332CfnMsQ','message','now','5930274VZXklh','https://registry.npmmirror.com','Dependency\x20install\x20failed','10szyedU','1csioFo','1758668wMbbPh','1051844lOyWnu','11iofxjR','success','error','3886690SmbKPg','4335048LfPRiZ','16SaMAAB'];a185_0x1954=function(){return _0x35473a;};return a185_0x1954();}import{logger}from'../../../utils/logger.js';import{resolveNpmBin}from'../../../utils/platform.js';export async function installDependencies(_0x39a165){const _0x21e43f=a185_0x2b0b,_0xb9e5ed=Date[_0x21e43f(0x176)](),_0x32145b=a185_0x5491f0[_0x21e43f(0x171)](process['cwd'](),_0x39a165);try{logger[_0x21e43f(0x172)](_0x21e43f(0x170),_0x21e43f(0x173),{'projectCode':_0x39a165,'registry':'https://registry.npmmirror.com'}),await execa(resolveNpmBin(_0x21e43f(0x16f)),[_0x21e43f(0x170),'--registry',_0x21e43f(0x161)],{'cwd':_0x32145b});const _0x182bf9=Date['now']()-_0xb9e5ed;logger[_0x21e43f(0x168)]('install',_0x21e43f(0x16d),_0x182bf9,{'projectCode':_0x39a165});}catch(_0x550fae){const _0x3f7a35=Date[_0x21e43f(0x176)]()-_0xb9e5ed;logger[_0x21e43f(0x169)]('install',_0x21e43f(0x162),{'projectCode':_0x39a165,'error':_0x550fae instanceof Error?_0x550fae[_0x21e43f(0x175)]:String(_0x550fae),'duration':_0x3f7a35});throw _0x550fae;}return formatElapsed(_0xb9e5ed);}
@@ -1 +1 @@
1
- const a188_0x518b44=a188_0x3c34;(function(_0x3d012b,_0x3d0f5f){const _0x410033=a188_0x3c34,_0x4495cc=_0x3d012b();while(!![]){try{const _0x354503=-parseInt(_0x410033(0xd1))/0x1*(parseInt(_0x410033(0xcf))/0x2)+parseInt(_0x410033(0xc4))/0x3*(parseInt(_0x410033(0xca))/0x4)+-parseInt(_0x410033(0xcd))/0x5*(parseInt(_0x410033(0xc1))/0x6)+parseInt(_0x410033(0xd0))/0x7*(-parseInt(_0x410033(0xcb))/0x8)+parseInt(_0x410033(0xc5))/0x9+parseInt(_0x410033(0xc8))/0xa*(parseInt(_0x410033(0xbe))/0xb)+parseInt(_0x410033(0xce))/0xc;if(_0x354503===_0x3d0f5f)break;else _0x4495cc['push'](_0x4495cc['shift']());}catch(_0x4590ef){_0x4495cc['push'](_0x4495cc['shift']());}}}(a188_0x3f09,0x482cf));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a188_0x3f09(){const _0x1435e5=['path','domain-routing-sync','144XQdhBH','Run\x20','No\x20Rabetbase\x20project\x20configuration\x20was\x20found.','591DCAbEP','508086ywhJLY','Domain\x20routing\x20synchronized:\x20','\x20workspace\x20init\x20--appcode\x20<code>\x20in\x20the\x20project\x20directory\x20first.','50udoeEj','Synchronize\x20the\x20current\x20project\x27s\x20public\x20Domain\x20routing','4748PwPKlA','2350776zIOGXB','validation','66540PbbvkH','5475384aROCrI','152256KfDadU','7ofHLDv','5ZziYtd','read','1194457wuQvoQ'];a188_0x3f09=function(){return _0x1435e5;};return a188_0x3f09();}import{findProjectRootDirectory,resolveConfigPath}from'../../context/config-loader.js';function a188_0x3c34(_0x2d9754,_0x4552d1){_0x2d9754=_0x2d9754-0xbd;const _0x3f093e=a188_0x3f09();let _0x3c344f=_0x3f093e[_0x2d9754];return _0x3c344f;}import{writeProjectDomainRoutingManifest}from'../../config/project-domain-routing.js';export const projectDomainRoutingSyncDefinition={'service':'project','command':a188_0x518b44(0xc0),'description':a188_0x518b44(0xc9),'risk':a188_0x518b44(0xbd),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':[],async 'execute'(){const _0x33bbcc=a188_0x518b44,_0x377ef4=findProjectRootDirectory();if(!resolveConfigPath(_0x377ef4))throw CliErrors[_0x33bbcc(0xcc)](_0x33bbcc(0xc3),_0x33bbcc(0xc2)+CLI_BIN_NAME+_0x33bbcc(0xc7));const _0x45b6a=writeProjectDomainRoutingManifest(_0x377ef4);return{'ok':!![],'message':_0x33bbcc(0xc6)+_0x45b6a[_0x33bbcc(0xbf)],'data':_0x45b6a};}};
1
+ function a186_0x2930(_0x1bf93a,_0x307252){_0x1bf93a=_0x1bf93a-0x70;const _0x53a7a6=a186_0x53a7();let _0x2930d5=_0x53a7a6[_0x1bf93a];return _0x2930d5;}function a186_0x53a7(){const _0xf033e7=['validation','path','7095137VlrZQa','1686185IBTHbK','Run\x20','1001PopOWQ','2185165rvhWZF','108obPPkm','read','107952iumuBc','18OQxUYi','24EWeeIr','Domain\x20routing\x20synchronized:\x20','domain-routing-sync','No\x20Rabetbase\x20project\x20configuration\x20was\x20found.','159370doBGxM','8ujYCIp','4623868SNzWWG','46239trEZdP'];a186_0x53a7=function(){return _0xf033e7;};return a186_0x53a7();}const a186_0x497a28=a186_0x2930;(function(_0x37d2fe,_0x3e67c6){const _0x316cfd=a186_0x2930,_0x2e2ea1=_0x37d2fe();while(!![]){try{const _0x4ad64d=-parseInt(_0x316cfd(0x75))/0x1+-parseInt(_0x316cfd(0x7d))/0x2*(parseInt(_0x316cfd(0x71))/0x3)+parseInt(_0x316cfd(0x70))/0x4+-parseInt(_0x316cfd(0x78))/0x5*(-parseInt(_0x316cfd(0x7c))/0x6)+parseInt(_0x316cfd(0x74))/0x7*(parseInt(_0x316cfd(0x82))/0x8)+-parseInt(_0x316cfd(0x79))/0x9*(-parseInt(_0x316cfd(0x81))/0xa)+parseInt(_0x316cfd(0x77))/0xb*(-parseInt(_0x316cfd(0x7b))/0xc);if(_0x4ad64d===_0x3e67c6)break;else _0x2e2ea1['push'](_0x2e2ea1['shift']());}catch(_0x3023d6){_0x2e2ea1['push'](_0x2e2ea1['shift']());}}}(a186_0x53a7,0xefc6c));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{findProjectRootDirectory,resolveConfigPath}from'../../context/config-loader.js';import{writeProjectDomainRoutingManifest}from'../../config/project-domain-routing.js';export const projectDomainRoutingSyncDefinition={'service':'project','command':a186_0x497a28(0x7f),'description':'Synchronize\x20the\x20current\x20project\x27s\x20public\x20Domain\x20routing','risk':a186_0x497a28(0x7a),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'flags':[],async 'execute'(){const _0x4f4204=a186_0x497a28,_0x4dd082=findProjectRootDirectory();if(!resolveConfigPath(_0x4dd082))throw CliErrors[_0x4f4204(0x72)](_0x4f4204(0x80),_0x4f4204(0x76)+CLI_BIN_NAME+'\x20workspace\x20init\x20--appcode\x20<code>\x20in\x20the\x20project\x20directory\x20first.');const _0x1f6dce=writeProjectDomainRoutingManifest(_0x4dd082);return{'ok':!![],'message':_0x4f4204(0x7e)+_0x1f6dce[_0x4f4204(0x73)],'data':_0x1f6dce};}};
@@ -1 +1 @@
1
- const a189_0x279e94=a189_0xdc8b;(function(_0x44a769,_0x371867){const _0x32920f=a189_0xdc8b,_0x593e67=_0x44a769();while(!![]){try{const _0x5f193f=parseInt(_0x32920f(0x1d3))/0x1+parseInt(_0x32920f(0x1cc))/0x2+parseInt(_0x32920f(0x1b1))/0x3*(parseInt(_0x32920f(0x1c1))/0x4)+-parseInt(_0x32920f(0x1c2))/0x5+parseInt(_0x32920f(0x1cb))/0x6*(parseInt(_0x32920f(0x1bf))/0x7)+-parseInt(_0x32920f(0x1ce))/0x8*(-parseInt(_0x32920f(0x1b3))/0x9)+-parseInt(_0x32920f(0x1d6))/0xa;if(_0x5f193f===_0x371867)break;else _0x593e67['push'](_0x593e67['shift']());}catch(_0x166eef){_0x593e67['push'](_0x593e67['shift']());}}}(a189_0x4b09,0x70179));import{CliErrors}from'../../errors.js';function a189_0xdc8b(_0x2a3dc6,_0x5b688e){_0x2a3dc6=_0x2a3dc6-0x1b1;const _0x4b09c5=a189_0x4b09();let _0xdc8b82=_0x4b09c5[_0x2a3dc6];return _0xdc8b82;}function a189_0x4b09(){const _0x1cd861=['../../commands/project/create/main.js','create','boolean','yes','project-name','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]','str','66xaNGCh','1690118fyfrWE','write','43864kuZHYY','name','trim','Run\x20','env','484874vyEOWX','appcode','cookie','7221000lsGOTZ','validation','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','args','3EYbpgG','upgrade','45yeSrWK','template-source','nonInteractive','Prepared\x20local\x20project\x20template\x20directory','Skip\x20confirmation\x20prompt','Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','bool','--current-dir\x20cannot\x20be\x20combined\x20with\x20a\x20project\x20name.','project','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]\x20or\x20','string','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]\x20from\x20the\x20empty\x20target\x20directory.','2191tzhVLt','Target\x20environment','2110748basUEP','3536245DNYXLw','current-dir'];a189_0x4b09=function(){return _0x1cd861;};return a189_0x4b09();}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':a189_0x279e94(0x1cf),'type':a189_0x279e94(0x1bd),'description':'Project\x20name'},{'name':a189_0x279e94(0x1d2),'type':'string','description':a189_0x279e94(0x1c0)},{'name':'appcode','type':'string','description':'App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)'},{'name':a189_0x279e94(0x1c3),'type':a189_0x279e94(0x1c6),'description':'Initialize\x20the\x20current\x20empty\x20directory\x20instead\x20of\x20creating\x20a\x20child\x20directory','default':![]},{'name':a189_0x279e94(0x1b4),'type':'string','description':a189_0x279e94(0x1b6)}],upgradeFlags=[{'name':a189_0x279e94(0x1c7),'type':a189_0x279e94(0x1c6),'description':a189_0x279e94(0x1b7),'default':![]}];export const projectDefinitions=[{'service':a189_0x279e94(0x1bb),'command':a189_0x279e94(0x1c5),'description':'Create\x20a\x20new\x20project','risk':'write','requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a189_0x279e94(0x1c8),'description':a189_0x279e94(0x1d8),'required':![]}],'flags':createFlags,async 'execute'(_0x518f6b){const _0x2dec7f=a189_0x279e94,{createApp:_0x5f1cf3}=await import(_0x2dec7f(0x1c4)),_0x965c36=_0x518f6b[_0x2dec7f(0x1ca)]('name')[_0x2dec7f(0x1d0)]()||_0x518f6b[_0x2dec7f(0x1d9)][0x0]?.[_0x2dec7f(0x1d0)](),_0x339cc8=_0x518f6b[_0x2dec7f(0x1ca)](_0x2dec7f(0x1d2))||undefined,_0x16a380=_0x518f6b[_0x2dec7f(0x1ca)](_0x2dec7f(0x1d4))||undefined,_0x2e773f=_0x518f6b['str'](_0x2dec7f(0x1b4))[_0x2dec7f(0x1d0)]()||undefined,_0x56a4bd=_0x518f6b['bool'](_0x2dec7f(0x1c3));if(_0x56a4bd&&_0x965c36)throw CliErrors[_0x2dec7f(0x1d7)](_0x2dec7f(0x1ba),_0x2dec7f(0x1d1)+CLI_BIN_NAME+_0x2dec7f(0x1be));if(_0x518f6b[_0x2dec7f(0x1b5)]){if(!_0x965c36&&!_0x56a4bd)throw CliErrors['validation']('Non-interactive\x20mode\x20requires\x20a\x20project\x20name.','Usage:\x20'+CLI_BIN_NAME+_0x2dec7f(0x1bc)+CLI_BIN_NAME+_0x2dec7f(0x1c9));await _0x5f1cf3({'projectCode':_0x965c36,'appCode':_0x16a380,'env':_0x339cc8,'cookie':_0x518f6b[_0x2dec7f(0x1d5)],'currentDir':_0x56a4bd,'nonInteractive':!![],'templateSource':_0x2e773f});}else await _0x5f1cf3({'projectCode':_0x965c36,'appCode':_0x16a380,'env':_0x339cc8,'cookie':_0x518f6b['cookie'],'currentDir':_0x56a4bd,'templateSource':_0x2e773f});return{'ok':!![]};}},projectDomainRoutingSyncDefinition,{'service':a189_0x279e94(0x1bb),'command':a189_0x279e94(0x1b2),'description':a189_0x279e94(0x1b8),'risk':a189_0x279e94(0x1cd),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0x3c3ded){const _0x22d7df=a189_0x279e94;return await upgradeApp(_0x3c3ded['nonInteractive'],{'yes':_0x3c3ded[_0x22d7df(0x1b9)]('yes')}),{'ok':!![]};}}];
1
+ function a187_0x2e66(_0x465147,_0x13a9ee){_0x465147=_0x465147-0x1de;const _0x15ff83=a187_0x15ff();let _0x2e6614=_0x15ff83[_0x465147];return _0x2e6614;}const a187_0x530504=a187_0x2e66;(function(_0x409814,_0x3e28e0){const _0x13b991=a187_0x2e66,_0x3386b8=_0x409814();while(!![]){try{const _0x4d064b=parseInt(_0x13b991(0x1df))/0x1+-parseInt(_0x13b991(0x1f4))/0x2*(parseInt(_0x13b991(0x1f6))/0x3)+-parseInt(_0x13b991(0x205))/0x4*(-parseInt(_0x13b991(0x1eb))/0x5)+-parseInt(_0x13b991(0x200))/0x6+-parseInt(_0x13b991(0x1e3))/0x7*(parseInt(_0x13b991(0x1f8))/0x8)+parseInt(_0x13b991(0x1fd))/0x9*(-parseInt(_0x13b991(0x1de))/0xa)+parseInt(_0x13b991(0x1f2))/0xb*(parseInt(_0x13b991(0x1ec))/0xc);if(_0x4d064b===_0x3e28e0)break;else _0x3386b8['push'](_0x3386b8['shift']());}catch(_0x616afe){_0x3386b8['push'](_0x3386b8['shift']());}}}(a187_0x15ff,0xadc14));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';function a187_0x15ff(){const _0x52ff25=['args','658BEdxif','project-name','Target\x20environment','write','appcode','yes','cookie','template-source','2136615okMTUm','72tmcifY','../../commands/project/create/main.js','Usage:\x20','Run\x20','\x20project\x20create\x20<project-name>\x20[--appcode\x20<code>]\x20or\x20','trim','1710071ufkrea','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]\x20from\x20the\x20empty\x20target\x20directory.','751670qfjTTH','Project\x20code/name\x20(optional,\x20prompts\x20if\x20omitted)','6dtrnfg','project','19048XNwmji','\x20project\x20create\x20--current-dir\x20[--appcode\x20<code>]','str','App\x20code\x20to\x20bind\x20(skips\x20interactive\x20selection)','Create\x20a\x20new\x20project','9GGTEtR','bool','current-dir','455676NydQHR','string','validation','env','upgrade','4tUmHyd','5503610OIRPoN','953402EfrSCb','Initialize\x20the\x20current\x20empty\x20directory\x20instead\x20of\x20creating\x20a\x20child\x20directory','nonInteractive'];a187_0x15ff=function(){return _0x52ff25;};return a187_0x15ff();}const createFlags=[{'name':'name','type':'string','description':'Project\x20name'},{'name':'env','type':a187_0x530504(0x201),'description':a187_0x530504(0x1e5)},{'name':'appcode','type':a187_0x530504(0x201),'description':a187_0x530504(0x1fb)},{'name':a187_0x530504(0x1ff),'type':'boolean','description':a187_0x530504(0x1e0),'default':![]},{'name':a187_0x530504(0x1ea),'type':a187_0x530504(0x201),'description':'Prepared\x20local\x20project\x20template\x20directory'}],upgradeFlags=[{'name':a187_0x530504(0x1e8),'type':'boolean','description':'Skip\x20confirmation\x20prompt','default':![]}];export const projectDefinitions=[{'service':'project','command':'create','description':a187_0x530504(0x1fc),'risk':a187_0x530504(0x1e6),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a187_0x530504(0x1e4),'description':a187_0x530504(0x1f5),'required':![]}],'flags':createFlags,async 'execute'(_0x4fed31){const _0x2f8f02=a187_0x530504,{createApp:_0x4e02c2}=await import(_0x2f8f02(0x1ed)),_0x1a661f=_0x4fed31[_0x2f8f02(0x1fa)]('name')[_0x2f8f02(0x1f1)]()||_0x4fed31[_0x2f8f02(0x1e2)][0x0]?.[_0x2f8f02(0x1f1)](),_0x426d46=_0x4fed31[_0x2f8f02(0x1fa)](_0x2f8f02(0x203))||undefined,_0x4b0415=_0x4fed31[_0x2f8f02(0x1fa)](_0x2f8f02(0x1e7))||undefined,_0x625455=_0x4fed31[_0x2f8f02(0x1fa)](_0x2f8f02(0x1ea))['trim']()||undefined,_0x35ea0b=_0x4fed31[_0x2f8f02(0x1fe)]('current-dir');if(_0x35ea0b&&_0x1a661f)throw CliErrors[_0x2f8f02(0x202)]('--current-dir\x20cannot\x20be\x20combined\x20with\x20a\x20project\x20name.',_0x2f8f02(0x1ef)+CLI_BIN_NAME+_0x2f8f02(0x1f3));if(_0x4fed31[_0x2f8f02(0x1e1)]){if(!_0x1a661f&&!_0x35ea0b)throw CliErrors[_0x2f8f02(0x202)]('Non-interactive\x20mode\x20requires\x20a\x20project\x20name.',_0x2f8f02(0x1ee)+CLI_BIN_NAME+_0x2f8f02(0x1f0)+CLI_BIN_NAME+_0x2f8f02(0x1f9));await _0x4e02c2({'projectCode':_0x1a661f,'appCode':_0x4b0415,'env':_0x426d46,'cookie':_0x4fed31[_0x2f8f02(0x1e9)],'currentDir':_0x35ea0b,'nonInteractive':!![],'templateSource':_0x625455});}else await _0x4e02c2({'projectCode':_0x1a661f,'appCode':_0x4b0415,'env':_0x426d46,'cookie':_0x4fed31[_0x2f8f02(0x1e9)],'currentDir':_0x35ea0b,'templateSource':_0x625455});return{'ok':!![]};}},projectDomainRoutingSyncDefinition,{'service':a187_0x530504(0x1f7),'command':a187_0x530504(0x204),'description':'Upgrade\x20from\x20lovrabet-cli\x20to\x20rabetbase-cli','risk':a187_0x530504(0x1e6),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':upgradeFlags,async 'execute'(_0xdcff49){const _0x3a5103=a187_0x530504;return await upgradeApp(_0xdcff49[_0x3a5103(0x1e1)],{'yes':_0xdcff49[_0x3a5103(0x1fe)](_0x3a5103(0x1e8))}),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a190_0x4afdb4=a190_0xed96;(function(_0x446e65,_0x387cd8){const _0x54633b=a190_0xed96,_0x12eef0=_0x446e65();while(!![]){try{const _0x3d76fe=parseInt(_0x54633b(0x1f8))/0x1+-parseInt(_0x54633b(0x1d3))/0x2+parseInt(_0x54633b(0x20f))/0x3+-parseInt(_0x54633b(0x1e3))/0x4*(-parseInt(_0x54633b(0x1b8))/0x5)+parseInt(_0x54633b(0x1cc))/0x6+parseInt(_0x54633b(0x1e7))/0x7+parseInt(_0x54633b(0x1b9))/0x8*(-parseInt(_0x54633b(0x1d7))/0x9);if(_0x3d76fe===_0x387cd8)break;else _0x12eef0['push'](_0x12eef0['shift']());}catch(_0xb7a5e9){_0x12eef0['push'](_0x12eef0['shift']());}}}(a190_0x3ab3,0x951eb));import a190_0x113da6 from'chalk';import a190_0x26ee96 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=[a190_0x4afdb4(0x196),a190_0x4afdb4(0x1e2)];function collectIdeSkillFiles(_0x4a12bd){const _0x4a9444=a190_0x4afdb4,_0x366319=[];for(const _0xd5ad07 of Object[_0x4a9444(0x1fa)](CORE_IDE_CONFIGS)){if(_0xd5ad07['files'])for(const _0x270ad2 of _0xd5ad07[_0x4a9444(0x1e9)]){_0x366319[_0x4a9444(0x1a3)](resolve(_0x4a12bd,_0x270ad2[_0x4a9444(0x206)]));}}return _0x366319;}function analyse(_0x5ea8d4){const _0x53b398=a190_0x4afdb4;let _0x22a0bb=null;const _0x6a3822=resolve(_0x5ea8d4,NEW_CONFIG_NAME),_0x325772=existsSync(_0x6a3822);for(const _0x2a09c0 of LEGACY_CONFIG_NAMES){const _0x35e50a=resolve(_0x5ea8d4,_0x2a09c0);if(existsSync(_0x35e50a)){const _0x2ba9dd=readConfigFile(_0x35e50a),_0x468de9=Object['keys'](_0x2ba9dd)['filter'](_0x4c0f2c=>typeof _0x2ba9dd[_0x4c0f2c]!==_0x53b398(0x1c2));_0x22a0bb={'oldPath':_0x35e50a,'hasNewConfig':_0x325772,'fields':_0x468de9};break;}}const _0x4aa4aa=[],_0x3b32e4=resolve(_0x5ea8d4,_0x53b398(0x1f5));if(existsSync(_0x3b32e4))_0x4aa4aa[_0x53b398(0x1a3)](_0x3b32e4);const _0x5f0add=resolve(_0x5ea8d4,'.cursor/rules/lovrabet_rules.mdc');if(existsSync(_0x5f0add))_0x4aa4aa[_0x53b398(0x1a3)](_0x5f0add);const _0x5c9258=resolve(_0x5ea8d4,'.claude/skills/lovrabet');if(existsSync(_0x5c9258))_0x4aa4aa[_0x53b398(0x1a3)](_0x5c9258);for(const _0x2453a5 of collectIdeSkillFiles(_0x5ea8d4)){if(existsSync(_0x2453a5))_0x4aa4aa[_0x53b398(0x1a3)](_0x2453a5);}let _0x4cab5a=null;const _0x2b4dcf=resolve(_0x5ea8d4,_0x53b398(0x201));if(existsSync(_0x2b4dcf))try{const _0x110a9d=JSON[_0x53b398(0x1ca)](readFileSync(_0x2b4dcf,_0x53b398(0x1fc)));if(_0x110a9d?.[_0x53b398(0x192)]&&typeof _0x110a9d[_0x53b398(0x192)]===_0x53b398(0x1d9)){const _0x42f634=[];for(const [_0x1a8ba9,_0x983e50]of Object[_0x53b398(0x1af)](_0x110a9d['mcpServers'])){const _0x51827c=_0x983e50;_0x51827c?.[_0x53b398(0x1f2)]&&Array[_0x53b398(0x1df)](_0x51827c['args'])&&_0x51827c[_0x53b398(0x1f2)]['some'](_0x5ded45=>typeof _0x5ded45===_0x53b398(0x1b5)&&_0x5ded45[_0x53b398(0x1e4)](_0x53b398(0x1f7)))&&_0x42f634[_0x53b398(0x1a3)](_0x1a8ba9);}_0x42f634[_0x53b398(0x1c7)]>0x0&&(_0x4cab5a={'path':_0x2b4dcf,'keys':_0x42f634});}}catch{}const _0x1191c0=_0x4aa4aa['length']>0x0||_0x22a0bb!==null;let _0x28baa3=null;const _0x26ccfb=resolve(_0x5ea8d4,'package.json');if(existsSync(_0x26ccfb))try{const _0x2f1c11=JSON[_0x53b398(0x1ca)](readFileSync(_0x26ccfb,'utf8'));for(const _0x3b4ad3 of[_0x53b398(0x205),_0x53b398(0x1c1)]){const _0x4953a0=_0x2f1c11?.[_0x3b4ad3]?.[_0x53b398(0x1fb)];if(typeof _0x4953a0===_0x53b398(0x1b5)){_0x4953a0!==_0x53b398(0x1a0)&&(_0x28baa3={'pkgPath':_0x26ccfb,'currentVersion':_0x4953a0,'field':_0x3b4ad3});break;}}}catch{}return{'configMigration':_0x22a0bb,'oldArtifacts':_0x4aa4aa,'oldMcpConfig':_0x4cab5a,'needsSkillSwap':_0x1191c0,'sdkUpgrade':_0x28baa3};}function printReport(_0x55538a){const _0xec6517=a190_0x4afdb4,{configMigration:_0x383c49,oldArtifacts:_0x4f8881,oldMcpConfig:_0x3dedcb,needsSkillSwap:_0x64fb82}=_0x55538a;console[_0xec6517(0x19c)](''),console['log'](a190_0x113da6[_0xec6517(0x1dd)](_0xec6517(0x1a7))),console['log']('');_0x383c49?(console['log'](a190_0x113da6[_0xec6517(0x198)](_0xec6517(0x1cb))+('\x20\x20'+a190_0x113da6[_0xec6517(0x1fe)](_0x383c49['oldPath']))),console[_0xec6517(0x19c)](_0xec6517(0x1ef)+(_0x383c49['hasNewConfig']?a190_0x113da6[_0xec6517(0x1bd)]('already\x20exists\x20(will\x20merge)'):a190_0x113da6[_0xec6517(0x20d)]('not\x20found\x20(will\x20create)'))),console[_0xec6517(0x19c)](_0xec6517(0x1e6)+_0x383c49[_0xec6517(0x204)]['join'](',\x20')),console[_0xec6517(0x19c)](_0xec6517(0x1c6))):console[_0xec6517(0x19c)](a190_0x113da6['cyan'](_0xec6517(0x1cb))+'\x20\x20'+a190_0x113da6[_0xec6517(0x20d)]('no\x20legacy\x20config\x20found'));console[_0xec6517(0x19c)]('');if(_0x4f8881[_0xec6517(0x1c7)]>0x0){console['log'](a190_0x113da6[_0xec6517(0x198)](_0xec6517(0x1c4)));for(const _0x3cf8ef of _0x4f8881){console[_0xec6517(0x19c)]('\x20\x20'+a190_0x113da6[_0xec6517(0x1b0)](_0xec6517(0x1ee))+'\x20\x20'+_0x3cf8ef);}console['log'](_0xec6517(0x1b7));}else console['log'](a190_0x113da6[_0xec6517(0x198)](_0xec6517(0x1c4))+'\x20\x20'+a190_0x113da6[_0xec6517(0x20d)](_0xec6517(0x194)));console[_0xec6517(0x19c)]('');_0x3dedcb?(console[_0xec6517(0x19c)](a190_0x113da6[_0xec6517(0x198)](_0xec6517(0x1ae))+('\x20\x20'+a190_0x113da6[_0xec6517(0x1fe)](_0x3dedcb['path'])+'\x20→\x20keys:\x20'+_0x3dedcb['keys'][_0xec6517(0x19f)](',\x20'))),console[_0xec6517(0x19c)]('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console[_0xec6517(0x19c)](a190_0x113da6[_0xec6517(0x198)](_0xec6517(0x1ae))+'\x20\x20'+a190_0x113da6[_0xec6517(0x20d)](_0xec6517(0x1a8)));console['log'](''),console[_0xec6517(0x19c)](a190_0x113da6['cyan']('Skill\x20swap:')+('\x20\x20'+(_0x64fb82?a190_0x113da6[_0xec6517(0x1fe)](_0xec6517(0x19b)):a190_0x113da6[_0xec6517(0x1bd)](_0xec6517(0x200)))));_0x64fb82&&console[_0xec6517(0x19c)](_0xec6517(0x1d0)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0xec6517(0x19c)]('');if(_0x55538a['sdkUpgrade']){const {currentVersion:_0x495b69,field:_0xf7834d,pkgPath:_0x51df5f}=_0x55538a[_0xec6517(0x1ec)];console[_0xec6517(0x19c)](a190_0x113da6[_0xec6517(0x198)](_0xec6517(0x1dc))+('\x20\x20'+a190_0x113da6[_0xec6517(0x1fe)](_0x51df5f))),console['log'](_0xec6517(0x1ad)+_0xf7834d+':\x20'+a190_0x113da6['yellow'](_0x495b69)+_0xec6517(0x1bf)+a190_0x113da6['green'](_0xec6517(0x1a0))),console[_0xec6517(0x19c)](_0xec6517(0x20a));}else console[_0xec6517(0x19c)](a190_0x113da6[_0xec6517(0x198)]('@lovrabet/sdk:')+'\x20\x20'+a190_0x113da6[_0xec6517(0x20d)](_0xec6517(0x1c5)));console[_0xec6517(0x19c)]('');}function execConfigMigration(_0x516679,_0x130839){const _0x5b27a9=a190_0x4afdb4,{configMigration:_0x45cd72}=_0x516679;if(!_0x45cd72?.[_0x5b27a9(0x1d2)])return{'step':0x1,'label':_0x5b27a9(0x1d8),'ok':!![],'detail':_0x5b27a9(0x1ea)};const _0x3eb3b4=readConfigFile(_0x45cd72[_0x5b27a9(0x1d2)]),_0x400338=resolve(_0x130839,NEW_CONFIG_NAME),_0x5af57a=_0x45cd72[_0x5b27a9(0x1c3)]?readConfigFile(_0x400338):{};for(const [_0x163a45,_0x30a6c4]of Object['entries'](_0x3eb3b4)){!(_0x163a45 in _0x5af57a)&&(_0x5af57a[_0x163a45]=_0x30a6c4);}writeConfigFile(_0x400338,_0x5af57a);const _0x33a7d5=_0x45cd72[_0x5b27a9(0x1d2)]+_0x5b27a9(0x1d6);return renameSync(_0x45cd72[_0x5b27a9(0x1d2)],_0x33a7d5),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x45cd72[_0x5b27a9(0x1d2)]+_0x5b27a9(0x1bf)+_0x400338+_0x5b27a9(0x19a)+_0x33a7d5+')'};}function execRemoveOldArtifacts(_0xf62939){const _0xd0bf1a=a190_0x4afdb4,_0x3460e3=[];for(const _0x113d39 of _0xf62939){try{if(!existsSync(_0x113d39))continue;const _0x473276=tryStat(_0x113d39);_0x473276?.[_0xd0bf1a(0x1d1)]()?rmSync(_0x113d39,{'recursive':!![],'force':!![]}):unlinkSync(_0x113d39);}catch(_0x514a62){_0x3460e3[_0xd0bf1a(0x1a3)](_0x113d39+':\x20'+_0x514a62[_0xd0bf1a(0x1e1)]);}}return{'step':0x3,'label':_0xd0bf1a(0x191),'ok':_0x3460e3[_0xd0bf1a(0x1c7)]===0x0,'detail':_0x3460e3[_0xd0bf1a(0x1c7)]>0x0?_0xf62939[_0xd0bf1a(0x1c7)]-_0x3460e3[_0xd0bf1a(0x1c7)]+'/'+_0xf62939[_0xd0bf1a(0x1c7)]+_0xd0bf1a(0x1e5)+_0x3460e3['join'](';\x20')+')':_0xf62939[_0xd0bf1a(0x1c7)]+'\x20removed'};}function execCleanMcp(_0x2acba6){const _0x231cca=a190_0x4afdb4;if(!_0x2acba6['oldMcpConfig'])return{'step':0x4,'label':_0x231cca(0x1ed),'ok':!![],'detail':_0x231cca(0x1f9)};try{const _0xb1059=readFileSync(_0x2acba6[_0x231cca(0x1f1)][_0x231cca(0x206)],_0x231cca(0x1fc)),_0x20422e=JSON['parse'](_0xb1059);if(_0x20422e?.[_0x231cca(0x192)]&&typeof _0x20422e['mcpServers']===_0x231cca(0x1d9)){const _0x3f7366=[];for(const [_0x4fae27,_0x41e9cf]of Object[_0x231cca(0x1af)](_0x20422e[_0x231cca(0x192)])){_0x41e9cf?.[_0x231cca(0x1f2)]&&Array[_0x231cca(0x1df)](_0x41e9cf[_0x231cca(0x1f2)])&&_0x41e9cf[_0x231cca(0x1f2)][_0x231cca(0x195)](_0x13fa24=>typeof _0x13fa24===_0x231cca(0x1b5)&&_0x13fa24[_0x231cca(0x1e4)](_0x231cca(0x1f7)))&&_0x3f7366[_0x231cca(0x1a3)](_0x4fae27);}for(const _0x1f069d of _0x3f7366){delete _0x20422e['mcpServers'][_0x1f069d];}return _0x3f7366[_0x231cca(0x1c7)]>0x0&&writeFileSync(_0x2acba6[_0x231cca(0x1f1)]['path'],JSON[_0x231cca(0x1c0)](_0x20422e,null,0x2)+'\x0a',_0x231cca(0x1fc)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x231cca(0x1a2)+_0x3f7366[_0x231cca(0x19f)](',\x20')+_0x231cca(0x212)+_0x2acba6[_0x231cca(0x1f1)][_0x231cca(0x206)]};}return{'step':0x4,'label':_0x231cca(0x1ed),'ok':!![],'detail':_0x231cca(0x1ab)};}catch(_0x1029ed){return{'step':0x4,'label':_0x231cca(0x1ed),'ok':![],'detail':_0x1029ed[_0x231cca(0x1e1)]};}}function a190_0x3ab3(){const _0x4777e6=['.lovrabet','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','@lovrabet/dataset-mcp-server','1056598hcwLdi','skipped','values','@lovrabet/sdk','utf8','succeed','yellow','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','not\x20needed','.cursor/mcp.json','needsSkillSwap','label','fields','dependencies','path','status','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','\x20\x20#\x20or','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','\x20\x20bun\x20install','gray','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','2556510FGjvzY','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','\x20→\x20latest','\x20from\x20','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','\x20\x20Step\x20','Remove\x20legacy\x20artifacts','mcpServers','cwd','none\x20found','some','.lovrabet.json','\x20\x20\x20\x20\x20\x20\x20','cyan','Step\x205/7:\x20Removing\x20old\x20skill...','\x20(backup:\x20','needed','log','configMigration','lovrabet/rabetbase','join','latest','Step\x201/7:\x20Migrating\x20config...','removed\x20','push','white','oldArtifacts','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','===\x20Upgrade\x20Analysis\x20===','no\x20legacy\x20entry','Remove\x20old\x20skill','lovrabet/rabetbase\x20installed\x20globally','no\x20matching\x20entry\x20found','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','\x20\x20Current\x20version\x20in\x20','MCP\x20config:','entries','red','fail','inherit','Upgrade\x20cancelled.','Remove\x20.lovrabet/','string','Install\x20new\x20skill','\x20\x20Action:\x20delete','3236435BMncDh','309072mOEMLJ','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','===\x20Upgrade\x20Summary\x20===','green','Proceed\x20with\x20upgrade?','\x20→\x20','stringify','devDependencies','undefined','hasNewConfig','Legacy\x20artifacts:','not\x20found\x20or\x20already\x20at\x20latest','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','length','lovrabet/lovrabet-skill\x20removed','Upgrade\x20@lovrabet/sdk','parse','Config\x20file:','3460122AiMhTe','FAIL','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','step','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','isDirectory','oldPath','187872OOOjLQ','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','\x20\x20npm\x20install','.bak','639hBfslr','Config\x20migration','object','[\x22@lovrabet/sdk\x22]:\x20','done','@lovrabet/sdk:','bold','error','isArray','start','message','.lovrabetrc','4hJAkpF','includes','\x20removed\x20(','\x20\x20Fields\x20to\x20migrate:\x20','2205021XUIGlb','detail','files','skipped\x20(no\x20legacy\x20config)','Step\x204/7:\x20Cleaning\x20MCP\x20config...','sdkUpgrade','Clean\x20MCP\x20config','FOUND','\x20\x20New\x20config\x20(.rabetbase.json):\x20','failed','oldMcpConfig','args','yes','exit\x20'];a190_0x3ab3=function(){return _0x4777e6;};return a190_0x3ab3();}function execSkillsRemove(_0x18fbb0,_0x5752e2){const _0x14d04b=a190_0x4afdb4,_0x486fa6=runNpxSkillsRemove(_0x18fbb0,{'stdio':_0x14d04b(0x1b2),'yes':_0x5752e2});return{'step':0x5,'label':_0x14d04b(0x1a9),'ok':_0x486fa6['ok'],'detail':_0x486fa6['ok']?_0x14d04b(0x1c8):_0x486fa6[_0x14d04b(0x1de)]??_0x14d04b(0x1f4)+_0x486fa6[_0x14d04b(0x207)]};}function execSkillsAdd(_0x3c9ea1,_0x4e1175){const _0x33793c=a190_0x4afdb4,_0x2e752f=runNpxSkillsAddGlobal(_0x3c9ea1,_0x33793c(0x19e),{'stdio':_0x33793c(0x1b2),'yes':_0x4e1175});return{'step':0x6,'label':_0x33793c(0x1b6),'ok':_0x2e752f['ok'],'detail':_0x2e752f['ok']?_0x33793c(0x1aa):_0x2e752f[_0x33793c(0x1de)]??_0x33793c(0x1f4)+_0x2e752f['status']};}function execUpgradeSdk(_0xc9de3){const _0x2e444d=a190_0x4afdb4;if(!_0xc9de3['sdkUpgrade'])return{'step':0x7,'label':_0x2e444d(0x1c9),'ok':!![],'detail':_0x2e444d(0x1bb)};const {pkgPath:_0x1c6103,currentVersion:_0xcb7f70,field:_0x5776af}=_0xc9de3[_0x2e444d(0x1ec)];try{const _0x225b7e=readFileSync(_0x1c6103,_0x2e444d(0x1fc)),_0x418c9e=JSON[_0x2e444d(0x1ca)](_0x225b7e);return _0x418c9e[_0x5776af]['@lovrabet/sdk']=_0x2e444d(0x1a0),writeFileSync(_0x1c6103,JSON[_0x2e444d(0x1c0)](_0x418c9e,null,0x2)+'\x0a',_0x2e444d(0x1fc)),{'step':0x7,'label':_0x2e444d(0x1c9),'ok':!![],'detail':_0x5776af+_0x2e444d(0x1da)+_0xcb7f70+_0x2e444d(0x211)};}catch(_0x1aea23){return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':![],'detail':_0x1aea23[_0x2e444d(0x1e1)]};}}function a190_0xed96(_0x41182d,_0x57a567){_0x41182d=_0x41182d-0x191;const _0x3ab3af=a190_0x3ab3();let _0xed967e=_0x3ab3af[_0x41182d];return _0xed967e;}function tryStat(_0x27946a){try{return statSync(_0x27946a);}catch{return undefined;}}function printSummary(_0x397d18){const _0x41c1d3=a190_0x4afdb4;console['log'](''),console[_0x41c1d3(0x19c)](a190_0x113da6[_0x41c1d3(0x1dd)](_0x41c1d3(0x1bc))),console[_0x41c1d3(0x19c)]('');for(const _0x4e7571 of _0x397d18){const _0x3cfb36=_0x4e7571['ok']?a190_0x113da6[_0x41c1d3(0x1bd)]('OK'):a190_0x113da6[_0x41c1d3(0x1b0)](_0x41c1d3(0x1cd));console[_0x41c1d3(0x19c)]('\x20\x20'+_0x3cfb36+_0x41c1d3(0x214)+_0x4e7571[_0x41c1d3(0x1cf)]+':\x20'+_0x4e7571[_0x41c1d3(0x203)]);if(_0x4e7571[_0x41c1d3(0x1e8)])console['log'](_0x41c1d3(0x197)+a190_0x113da6['gray'](_0x4e7571[_0x41c1d3(0x1e8)]));}console[_0x41c1d3(0x19c)]('');}export async function upgradeApp(_0x4f1054,_0x2a8cfd){const _0x14aa32=a190_0x4afdb4,_0x480e8f=process[_0x14aa32(0x193)](),_0x4bd1f6=analyse(_0x480e8f),_0x14e4f7=!_0x4bd1f6[_0x14aa32(0x19d)]&&_0x4bd1f6[_0x14aa32(0x1a5)][_0x14aa32(0x1c7)]===0x0&&!_0x4bd1f6[_0x14aa32(0x1f1)]&&!_0x4bd1f6[_0x14aa32(0x202)]&&!_0x4bd1f6['sdkUpgrade'];if(_0x14e4f7){console[_0x14aa32(0x19c)](a190_0x113da6[_0x14aa32(0x1bd)](_0x14aa32(0x20b)));return;}printReport(_0x4bd1f6);const _0x42ce7a=!!(_0x2a8cfd[_0x14aa32(0x1f3)]||_0x2a8cfd['Y']||_0x4f1054);if(!_0x42ce7a)try{const _0x1694a1=await askConfirm(_0x14aa32(0x1be));if(!_0x1694a1){console[_0x14aa32(0x19c)](a190_0x113da6[_0x14aa32(0x20d)](_0x14aa32(0x1b3)));return;}}catch(_0x37b806){if(_0x37b806?.['message']==='CANCEL'){console[_0x14aa32(0x19c)](a190_0x113da6[_0x14aa32(0x20d)](_0x14aa32(0x1b3)));return;}throw _0x37b806;}const _0x2cf242=[],_0x5037c3=a190_0x26ee96({'text':_0x14aa32(0x1a1),'color':'cyan'})['start'](),_0x455010=execConfigMigration(_0x4bd1f6,_0x480e8f);_0x2cf242[_0x14aa32(0x1a3)](_0x455010),_0x5037c3[_0x455010['ok']?_0x14aa32(0x1fd):_0x14aa32(0x1b1)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x455010[_0x14aa32(0x1e8)]??(_0x455010['ok']?_0x14aa32(0x1db):_0x14aa32(0x1f0))));const _0x57d3a4=resolve(_0x480e8f,_0x14aa32(0x1f5)),_0x14d092=a190_0x26ee96({'text':_0x14aa32(0x210),'color':_0x14aa32(0x198)})[_0x14aa32(0x1e0)]();if(existsSync(_0x57d3a4))try{rmSync(_0x57d3a4,{'recursive':!![],'force':!![]}),_0x14d092[_0x14aa32(0x1fd)](_0x14aa32(0x1f6)),_0x2cf242[_0x14aa32(0x1a3)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x5177d8){_0x14d092[_0x14aa32(0x1b1)](_0x14aa32(0x1ff)+_0x5177d8[_0x14aa32(0x1e1)]),_0x2cf242[_0x14aa32(0x1a3)]({'step':0x2,'label':_0x14aa32(0x1b4),'ok':![],'detail':_0x5177d8[_0x14aa32(0x1e1)]});}else _0x14d092['info'](_0x14aa32(0x1ac)),_0x2cf242[_0x14aa32(0x1a3)]({'step':0x2,'label':_0x14aa32(0x1b4),'ok':!![],'detail':_0x14aa32(0x1f9)});const _0xab258=a190_0x26ee96({'text':_0x14aa32(0x1a6),'color':_0x14aa32(0x198)})[_0x14aa32(0x1e0)](),_0x2c442a=execRemoveOldArtifacts(_0x4bd1f6['oldArtifacts']);_0x2cf242['push'](_0x2c442a),_0xab258[_0x2c442a['ok']?'succeed':_0x14aa32(0x1b1)]('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x2c442a[_0x14aa32(0x1e8)]??(_0x2c442a['ok']?_0x14aa32(0x1db):'failed')));const _0x5e1545=a190_0x26ee96({'text':_0x14aa32(0x1eb),'color':_0x14aa32(0x198)})[_0x14aa32(0x1e0)](),_0x13bab1=execCleanMcp(_0x4bd1f6);_0x2cf242[_0x14aa32(0x1a3)](_0x13bab1),_0x5e1545[_0x13bab1['ok']?_0x14aa32(0x1fd):_0x14aa32(0x1b1)]('Step\x204/7:\x20MCP\x20config\x20—\x20'+(_0x13bab1[_0x14aa32(0x1e8)]??(_0x13bab1['ok']?_0x14aa32(0x1db):_0x14aa32(0x1f0))));const _0x1f5153=a190_0x26ee96({'text':_0x14aa32(0x199),'color':_0x14aa32(0x198)})[_0x14aa32(0x1e0)](),_0x235cb5=execSkillsRemove(_0x480e8f,_0x42ce7a);_0x2cf242[_0x14aa32(0x1a3)](_0x235cb5),_0x1f5153[_0x235cb5['ok']?_0x14aa32(0x1fd):'fail'](_0x14aa32(0x20e)+(_0x235cb5[_0x14aa32(0x1e8)]??(_0x235cb5['ok']?_0x14aa32(0x1db):_0x14aa32(0x1f0))));const _0x1eb452=a190_0x26ee96({'text':'Step\x206/7:\x20Installing\x20new\x20skill...','color':'cyan'})[_0x14aa32(0x1e0)](),_0x16eae5=execSkillsAdd(_0x480e8f,_0x42ce7a);_0x2cf242[_0x14aa32(0x1a3)](_0x16eae5),_0x1eb452[_0x16eae5['ok']?_0x14aa32(0x1fd):_0x14aa32(0x1b1)](_0x14aa32(0x1ce)+(_0x16eae5['detail']??(_0x16eae5['ok']?_0x14aa32(0x1db):_0x14aa32(0x1f0))));const _0x24262f=a190_0x26ee96({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':_0x14aa32(0x198)})['start'](),_0x3e9d71=execUpgradeSdk(_0x4bd1f6);_0x2cf242[_0x14aa32(0x1a3)](_0x3e9d71),_0x24262f[_0x3e9d71['ok']?_0x14aa32(0x1fd):_0x14aa32(0x1b1)](_0x14aa32(0x213)+(_0x3e9d71[_0x14aa32(0x1e8)]??(_0x3e9d71['ok']?'done':_0x14aa32(0x1f0)))),printSummary(_0x2cf242);const _0x2828cf=_0x2cf242[_0x14aa32(0x195)](_0x189139=>!_0x189139['ok']);_0x2828cf?console[_0x14aa32(0x19c)](a190_0x113da6[_0x14aa32(0x1fe)](_0x14aa32(0x208))):console['log'](a190_0x113da6[_0x14aa32(0x1bd)]('Upgrade\x20completed\x20successfully!')),_0x3e9d71['ok']&&_0x4bd1f6['sdkUpgrade']&&(console[_0x14aa32(0x19c)](''),console['log'](a190_0x113da6[_0x14aa32(0x1dd)][_0x14aa32(0x198)](_0x14aa32(0x1ba))),console[_0x14aa32(0x19c)](a190_0x113da6['cyan'](_0x14aa32(0x1d4))),console['log'](''),console[_0x14aa32(0x19c)](a190_0x113da6[_0x14aa32(0x1a4)](_0x14aa32(0x1d5))),console[_0x14aa32(0x19c)](a190_0x113da6[_0x14aa32(0x1a4)](_0x14aa32(0x209))),console[_0x14aa32(0x19c)](a190_0x113da6[_0x14aa32(0x1a4)](_0x14aa32(0x20c))),console['log'](''));}
1
+ const a188_0x48f01e=a188_0x204c;(function(_0x4f4831,_0x1385b9){const _0x1e6cfe=a188_0x204c,_0x238a9f=_0x4f4831();while(!![]){try{const _0x2041f9=parseInt(_0x1e6cfe(0x135))/0x1+parseInt(_0x1e6cfe(0x156))/0x2+parseInt(_0x1e6cfe(0x138))/0x3*(parseInt(_0x1e6cfe(0x19f))/0x4)+-parseInt(_0x1e6cfe(0x1a1))/0x5+-parseInt(_0x1e6cfe(0x141))/0x6+parseInt(_0x1e6cfe(0x196))/0x7+-parseInt(_0x1e6cfe(0x166))/0x8;if(_0x2041f9===_0x1385b9)break;else _0x238a9f['push'](_0x238a9f['shift']());}catch(_0xc6cf00){_0x238a9f['push'](_0x238a9f['shift']());}}}(a188_0x10e0,0x8e910));function a188_0x10e0(){const _0x5bcac4=['Legacy\x20artifacts:','isArray','Config\x20migration','gray','\x20from\x20','length','@lovrabet/sdk','Remove\x20.lovrabet/','args','white','string','3608444hLJZHq','Step\x206/7:\x20Installing\x20new\x20skill...','===\x20Upgrade\x20Analysis\x20===','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','succeed','.lovrabet','push','dependencies','Clean\x20MCP\x20config','1864EEcEoN','mcpServers','2010070MAAgjT','lovrabet/rabetbase\x20installed\x20globally','cyan','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','lovrabet/rabetbase','\x20\x20bun\x20install','Install\x20new\x20skill','Step\x204/7:\x20MCP\x20config\x20—\x20','.claude/skills/lovrabet','red','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','.cursor/mcp.json','.lovrabet.json','FOUND','isDirectory','bold','yellow','oldPath','1077369DTRtyp','cwd','configMigration','2487wnViNR','utf8','status','inherit','Upgrade\x20@lovrabet/sdk','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','already\x20exists\x20(will\x20merge)','undefined','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','6838674QoxkGw','needed','\x20→\x20','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','no\x20legacy\x20entry','done','info','\x20\x20npm\x20install','not\x20found\x20or\x20already\x20at\x20latest','join','entries','.bak','oldArtifacts','Step\x204/7:\x20Cleaning\x20MCP\x20config...','oldMcpConfig','[\x22@lovrabet/sdk\x22]:\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','\x20removed\x20(','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','object','includes','809026qJPYUG','green','CANCEL','detail','no\x20legacy\x20config\x20found','error','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','Proceed\x20with\x20upgrade?','\x20\x20New\x20config\x20(.rabetbase.json):\x20','Remove\x20old\x20skill','skipped','filter','parse','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','===\x20Upgrade\x20Summary\x20===','2063544StsNAC','Remove\x20legacy\x20artifacts','\x20\x20Step\x20','Step\x205/7:\x20Removing\x20old\x20skill...','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','hasNewConfig','fail','some','Upgrade\x20cancelled.','.cursor/rules/lovrabet_rules.mdc','exit\x20','latest','yes','step','@lovrabet/sdk:','not\x20found\x20(will\x20create)','\x20→\x20latest','Config\x20file:','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','values','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','not\x20needed','log','message','devDependencies','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','files','\x20\x20#\x20or','failed','stringify','start','\x20\x20Fields\x20to\x20migrate:\x20','path','Skill\x20swap:','MCP\x20config:','label','sdkUpgrade'];a188_0x10e0=function(){return _0x5bcac4;};return a188_0x10e0();}import a188_0x5706cb from'chalk';import a188_0x4ab3f2 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_0x48f01e(0x12f),'.lovrabetrc'];function collectIdeSkillFiles(_0x529c54){const _0x35f344=a188_0x48f01e,_0x436248=[];for(const _0xbb1346 of Object[_0x35f344(0x179)](CORE_IDE_CONFIGS)){if(_0xbb1346[_0x35f344(0x180)])for(const _0xfe48df of _0xbb1346[_0x35f344(0x180)]){_0x436248[_0x35f344(0x19c)](resolve(_0x529c54,_0xfe48df[_0x35f344(0x186)]));}}return _0x436248;}function analyse(_0x56a23e){const _0x137199=a188_0x48f01e;let _0x187282=null;const _0x4048ac=resolve(_0x56a23e,NEW_CONFIG_NAME),_0x146514=existsSync(_0x4048ac);for(const _0x5c0c89 of LEGACY_CONFIG_NAMES){const _0x1432b3=resolve(_0x56a23e,_0x5c0c89);if(existsSync(_0x1432b3)){const _0x2eb247=readConfigFile(_0x1432b3),_0x5e0d9c=Object['keys'](_0x2eb247)[_0x137199(0x162)](_0x31c083=>typeof _0x2eb247[_0x31c083]!==_0x137199(0x13f));_0x187282={'oldPath':_0x1432b3,'hasNewConfig':_0x146514,'fields':_0x5e0d9c};break;}}const _0x2a8d96=[],_0x4e5c14=resolve(_0x56a23e,_0x137199(0x19b));if(existsSync(_0x4e5c14))_0x2a8d96['push'](_0x4e5c14);const _0x2001f0=resolve(_0x56a23e,_0x137199(0x16f));if(existsSync(_0x2001f0))_0x2a8d96[_0x137199(0x19c)](_0x2001f0);const _0x3da19a=resolve(_0x56a23e,_0x137199(0x12b));if(existsSync(_0x3da19a))_0x2a8d96[_0x137199(0x19c)](_0x3da19a);for(const _0x3ee67f of collectIdeSkillFiles(_0x56a23e)){if(existsSync(_0x3ee67f))_0x2a8d96[_0x137199(0x19c)](_0x3ee67f);}let _0x4114b3=null;const _0x4df02e=resolve(_0x56a23e,_0x137199(0x12e));if(existsSync(_0x4df02e))try{const _0x405453=JSON['parse'](readFileSync(_0x4df02e,_0x137199(0x139)));if(_0x405453?.[_0x137199(0x1a0)]&&typeof _0x405453['mcpServers']===_0x137199(0x154)){const _0x2218b9=[];for(const [_0x2793ba,_0xc44256]of Object['entries'](_0x405453[_0x137199(0x1a0)])){const _0x324c8a=_0xc44256;_0x324c8a?.[_0x137199(0x193)]&&Array['isArray'](_0x324c8a[_0x137199(0x193)])&&_0x324c8a[_0x137199(0x193)][_0x137199(0x16d)](_0x281587=>typeof _0x281587===_0x137199(0x195)&&_0x281587[_0x137199(0x155)]('@lovrabet/dataset-mcp-server'))&&_0x2218b9[_0x137199(0x19c)](_0x2793ba);}_0x2218b9[_0x137199(0x190)]>0x0&&(_0x4114b3={'path':_0x4df02e,'keys':_0x2218b9});}}catch{}const _0xca65d5=_0x2a8d96['length']>0x0||_0x187282!==null;let _0x74dbcc=null;const _0x11acc1=resolve(_0x56a23e,'package.json');if(existsSync(_0x11acc1))try{const _0x317ca0=JSON[_0x137199(0x163)](readFileSync(_0x11acc1,_0x137199(0x139)));for(const _0x5e9c92 of[_0x137199(0x19d),_0x137199(0x17e)]){const _0x4a1068=_0x317ca0?.[_0x5e9c92]?.['@lovrabet/sdk'];if(typeof _0x4a1068===_0x137199(0x195)){_0x4a1068!==_0x137199(0x171)&&(_0x74dbcc={'pkgPath':_0x11acc1,'currentVersion':_0x4a1068,'field':_0x5e9c92});break;}}}catch{}return{'configMigration':_0x187282,'oldArtifacts':_0x2a8d96,'oldMcpConfig':_0x4114b3,'needsSkillSwap':_0xca65d5,'sdkUpgrade':_0x74dbcc};}function printReport(_0x3e3742){const _0x5ef845=a188_0x48f01e,{configMigration:_0x12349b,oldArtifacts:_0x3d33d9,oldMcpConfig:_0x38d566,needsSkillSwap:_0x267507}=_0x3e3742;console[_0x5ef845(0x17c)](''),console['log'](a188_0x5706cb['bold'](_0x5ef845(0x198))),console[_0x5ef845(0x17c)]('');_0x12349b?(console[_0x5ef845(0x17c)](a188_0x5706cb[_0x5ef845(0x1a3)](_0x5ef845(0x177))+('\x20\x20'+a188_0x5706cb[_0x5ef845(0x133)](_0x12349b[_0x5ef845(0x134)]))),console[_0x5ef845(0x17c)](_0x5ef845(0x15f)+(_0x12349b[_0x5ef845(0x16b)]?a188_0x5706cb[_0x5ef845(0x157)](_0x5ef845(0x13e)):a188_0x5706cb[_0x5ef845(0x18e)](_0x5ef845(0x175)))),console[_0x5ef845(0x17c)](_0x5ef845(0x185)+_0x12349b['fields'][_0x5ef845(0x14a)](',\x20')),console[_0x5ef845(0x17c)](_0x5ef845(0x12d))):console[_0x5ef845(0x17c)](a188_0x5706cb[_0x5ef845(0x1a3)](_0x5ef845(0x177))+'\x20\x20'+a188_0x5706cb[_0x5ef845(0x18e)](_0x5ef845(0x15a)));console[_0x5ef845(0x17c)]('');if(_0x3d33d9[_0x5ef845(0x190)]>0x0){console[_0x5ef845(0x17c)](a188_0x5706cb['cyan']('Legacy\x20artifacts:'));for(const _0x1c8732 of _0x3d33d9){console[_0x5ef845(0x17c)]('\x20\x20'+a188_0x5706cb['red'](_0x5ef845(0x130))+'\x20\x20'+_0x1c8732);}console[_0x5ef845(0x17c)]('\x20\x20Action:\x20delete');}else console['log'](a188_0x5706cb['cyan'](_0x5ef845(0x18b))+'\x20\x20'+a188_0x5706cb[_0x5ef845(0x18e)]('none\x20found'));console[_0x5ef845(0x17c)]('');_0x38d566?(console[_0x5ef845(0x17c)](a188_0x5706cb[_0x5ef845(0x1a3)](_0x5ef845(0x188))+('\x20\x20'+a188_0x5706cb[_0x5ef845(0x133)](_0x38d566[_0x5ef845(0x186)])+'\x20→\x20keys:\x20'+_0x38d566['keys']['join'](',\x20'))),console[_0x5ef845(0x17c)](_0x5ef845(0x15c))):console['log'](a188_0x5706cb['cyan'](_0x5ef845(0x188))+'\x20\x20'+a188_0x5706cb[_0x5ef845(0x18e)](_0x5ef845(0x145)));console[_0x5ef845(0x17c)](''),console['log'](a188_0x5706cb[_0x5ef845(0x1a3)](_0x5ef845(0x187))+('\x20\x20'+(_0x267507?a188_0x5706cb[_0x5ef845(0x133)](_0x5ef845(0x142)):a188_0x5706cb[_0x5ef845(0x157)](_0x5ef845(0x17b)))));_0x267507&&console[_0x5ef845(0x17c)](_0x5ef845(0x164)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x5ef845(0x17c)]('');if(_0x3e3742[_0x5ef845(0x18a)]){const {currentVersion:_0x211216,field:_0x3832b1,pkgPath:_0x218a61}=_0x3e3742[_0x5ef845(0x18a)];console['log'](a188_0x5706cb['cyan'](_0x5ef845(0x174))+('\x20\x20'+a188_0x5706cb[_0x5ef845(0x133)](_0x218a61))),console[_0x5ef845(0x17c)]('\x20\x20Current\x20version\x20in\x20'+_0x3832b1+':\x20'+a188_0x5706cb[_0x5ef845(0x133)](_0x211216)+_0x5ef845(0x143)+a188_0x5706cb['green'](_0x5ef845(0x171))),console['log'](_0x5ef845(0x151));}else console[_0x5ef845(0x17c)](a188_0x5706cb[_0x5ef845(0x1a3)](_0x5ef845(0x174))+'\x20\x20'+a188_0x5706cb[_0x5ef845(0x18e)](_0x5ef845(0x149)));console[_0x5ef845(0x17c)]('');}function execConfigMigration(_0x31b67a,_0x542191){const _0x2b64cc=a188_0x48f01e,{configMigration:_0x493259}=_0x31b67a;if(!_0x493259?.['oldPath'])return{'step':0x1,'label':_0x2b64cc(0x18d),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x56f2da=readConfigFile(_0x493259[_0x2b64cc(0x134)]),_0x7c2e91=resolve(_0x542191,NEW_CONFIG_NAME),_0x3b5f24=_0x493259[_0x2b64cc(0x16b)]?readConfigFile(_0x7c2e91):{};for(const [_0x3dfc2a,_0xec4272]of Object[_0x2b64cc(0x14b)](_0x56f2da)){!(_0x3dfc2a in _0x3b5f24)&&(_0x3b5f24[_0x3dfc2a]=_0xec4272);}writeConfigFile(_0x7c2e91,_0x3b5f24);const _0xb3054b=_0x493259[_0x2b64cc(0x134)]+_0x2b64cc(0x14c);return renameSync(_0x493259[_0x2b64cc(0x134)],_0xb3054b),{'step':0x1,'label':_0x2b64cc(0x18d),'ok':!![],'detail':_0x493259['oldPath']+_0x2b64cc(0x143)+_0x7c2e91+'\x20(backup:\x20'+_0xb3054b+')'};}function execRemoveOldArtifacts(_0x4eb353){const _0x28a89f=a188_0x48f01e,_0x29f991=[];for(const _0x8dd0aa of _0x4eb353){try{if(!existsSync(_0x8dd0aa))continue;const _0x46f586=tryStat(_0x8dd0aa);_0x46f586?.[_0x28a89f(0x131)]()?rmSync(_0x8dd0aa,{'recursive':!![],'force':!![]}):unlinkSync(_0x8dd0aa);}catch(_0x3fe86b){_0x29f991[_0x28a89f(0x19c)](_0x8dd0aa+':\x20'+_0x3fe86b['message']);}}return{'step':0x3,'label':_0x28a89f(0x167),'ok':_0x29f991[_0x28a89f(0x190)]===0x0,'detail':_0x29f991[_0x28a89f(0x190)]>0x0?_0x4eb353[_0x28a89f(0x190)]-_0x29f991['length']+'/'+_0x4eb353[_0x28a89f(0x190)]+_0x28a89f(0x152)+_0x29f991[_0x28a89f(0x14a)](';\x20')+')':_0x4eb353[_0x28a89f(0x190)]+'\x20removed'};}function execCleanMcp(_0x499da6){const _0x4876ef=a188_0x48f01e;if(!_0x499da6[_0x4876ef(0x14f)])return{'step':0x4,'label':_0x4876ef(0x19e),'ok':!![],'detail':_0x4876ef(0x161)};try{const _0x3873b8=readFileSync(_0x499da6[_0x4876ef(0x14f)][_0x4876ef(0x186)],_0x4876ef(0x139)),_0x1ba115=JSON['parse'](_0x3873b8);if(_0x1ba115?.['mcpServers']&&typeof _0x1ba115[_0x4876ef(0x1a0)]===_0x4876ef(0x154)){const _0x3def7c=[];for(const [_0x1baa97,_0x403956]of Object[_0x4876ef(0x14b)](_0x1ba115[_0x4876ef(0x1a0)])){_0x403956?.[_0x4876ef(0x193)]&&Array[_0x4876ef(0x18c)](_0x403956[_0x4876ef(0x193)])&&_0x403956[_0x4876ef(0x193)][_0x4876ef(0x16d)](_0x486db6=>typeof _0x486db6==='string'&&_0x486db6['includes']('@lovrabet/dataset-mcp-server'))&&_0x3def7c[_0x4876ef(0x19c)](_0x1baa97);}for(const _0x31ac85 of _0x3def7c){delete _0x1ba115[_0x4876ef(0x1a0)][_0x31ac85];}return _0x3def7c[_0x4876ef(0x190)]>0x0&&writeFileSync(_0x499da6[_0x4876ef(0x14f)][_0x4876ef(0x186)],JSON[_0x4876ef(0x183)](_0x1ba115,null,0x2)+'\x0a',_0x4876ef(0x139)),{'step':0x4,'label':_0x4876ef(0x19e),'ok':!![],'detail':'removed\x20'+_0x3def7c[_0x4876ef(0x14a)](',\x20')+_0x4876ef(0x18f)+_0x499da6[_0x4876ef(0x14f)][_0x4876ef(0x186)]};}return{'step':0x4,'label':_0x4876ef(0x19e),'ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x51458c){return{'step':0x4,'label':'Clean\x20MCP\x20config','ok':![],'detail':_0x51458c[_0x4876ef(0x17d)]};}}function a188_0x204c(_0x221e42,_0x10b707){_0x221e42=_0x221e42-0x12b;const _0x10e021=a188_0x10e0();let _0x204c25=_0x10e021[_0x221e42];return _0x204c25;}function execSkillsRemove(_0x50122d,_0x2b2ab7){const _0x43bf50=a188_0x48f01e,_0xac97d0=runNpxSkillsRemove(_0x50122d,{'stdio':_0x43bf50(0x13b),'yes':_0x2b2ab7});return{'step':0x5,'label':_0x43bf50(0x160),'ok':_0xac97d0['ok'],'detail':_0xac97d0['ok']?'lovrabet/lovrabet-skill\x20removed':_0xac97d0[_0x43bf50(0x15b)]??'exit\x20'+_0xac97d0[_0x43bf50(0x13a)]};}function execSkillsAdd(_0x3057c5,_0x3e30b4){const _0x178f97=a188_0x48f01e,_0x41f884=runNpxSkillsAddGlobal(_0x3057c5,_0x178f97(0x1a5),{'stdio':_0x178f97(0x13b),'yes':_0x3e30b4});return{'step':0x6,'label':_0x178f97(0x1a7),'ok':_0x41f884['ok'],'detail':_0x41f884['ok']?_0x178f97(0x1a2):_0x41f884[_0x178f97(0x15b)]??_0x178f97(0x170)+_0x41f884['status']};}function execUpgradeSdk(_0xbed579){const _0x23a64f=a188_0x48f01e;if(!_0xbed579['sdkUpgrade'])return{'step':0x7,'label':'Upgrade\x20@lovrabet/sdk','ok':!![],'detail':_0x23a64f(0x17a)};const {pkgPath:_0x5d3a29,currentVersion:_0x210ee9,field:_0x5085d7}=_0xbed579[_0x23a64f(0x18a)];try{const _0x3af8fd=readFileSync(_0x5d3a29,_0x23a64f(0x139)),_0x1462d4=JSON[_0x23a64f(0x163)](_0x3af8fd);return _0x1462d4[_0x5085d7][_0x23a64f(0x191)]=_0x23a64f(0x171),writeFileSync(_0x5d3a29,JSON['stringify'](_0x1462d4,null,0x2)+'\x0a',_0x23a64f(0x139)),{'step':0x7,'label':_0x23a64f(0x13c),'ok':!![],'detail':_0x5085d7+_0x23a64f(0x150)+_0x210ee9+_0x23a64f(0x176)};}catch(_0x566567){return{'step':0x7,'label':_0x23a64f(0x13c),'ok':![],'detail':_0x566567[_0x23a64f(0x17d)]};}}function tryStat(_0x398da1){try{return statSync(_0x398da1);}catch{return undefined;}}function printSummary(_0x2296be){const _0x5154b1=a188_0x48f01e;console[_0x5154b1(0x17c)](''),console[_0x5154b1(0x17c)](a188_0x5706cb[_0x5154b1(0x132)](_0x5154b1(0x165))),console[_0x5154b1(0x17c)]('');for(const _0x40ed4a of _0x2296be){const _0x26d25a=_0x40ed4a['ok']?a188_0x5706cb['green']('OK'):a188_0x5706cb[_0x5154b1(0x12c)]('FAIL');console[_0x5154b1(0x17c)]('\x20\x20'+_0x26d25a+_0x5154b1(0x168)+_0x40ed4a[_0x5154b1(0x173)]+':\x20'+_0x40ed4a[_0x5154b1(0x189)]);if(_0x40ed4a[_0x5154b1(0x159)])console[_0x5154b1(0x17c)]('\x20\x20\x20\x20\x20\x20\x20'+a188_0x5706cb[_0x5154b1(0x18e)](_0x40ed4a[_0x5154b1(0x159)]));}console[_0x5154b1(0x17c)]('');}export async function upgradeApp(_0x46480f,_0x36a7f4){const _0x529420=a188_0x48f01e,_0x4c7bb5=process[_0x529420(0x136)](),_0x5aeb7a=analyse(_0x4c7bb5),_0x2a80f7=!_0x5aeb7a[_0x529420(0x137)]&&_0x5aeb7a['oldArtifacts']['length']===0x0&&!_0x5aeb7a[_0x529420(0x14f)]&&!_0x5aeb7a['needsSkillSwap']&&!_0x5aeb7a[_0x529420(0x18a)];if(_0x2a80f7){console[_0x529420(0x17c)](a188_0x5706cb[_0x529420(0x157)](_0x529420(0x140)));return;}printReport(_0x5aeb7a);const _0x2a56f4=!!(_0x36a7f4[_0x529420(0x172)]||_0x36a7f4['Y']||_0x46480f);if(!_0x2a56f4)try{const _0x5b19cd=await askConfirm(_0x529420(0x15e));if(!_0x5b19cd){console['log'](a188_0x5706cb[_0x529420(0x18e)](_0x529420(0x16e)));return;}}catch(_0x185d6a){if(_0x185d6a?.[_0x529420(0x17d)]===_0x529420(0x158)){console[_0x529420(0x17c)](a188_0x5706cb[_0x529420(0x18e)]('Upgrade\x20cancelled.'));return;}throw _0x185d6a;}const _0x5cdbcc=[],_0x4a8263=a188_0x4ab3f2({'text':'Step\x201/7:\x20Migrating\x20config...','color':_0x529420(0x1a3)})[_0x529420(0x184)](),_0x3aecbc=execConfigMigration(_0x5aeb7a,_0x4c7bb5);_0x5cdbcc[_0x529420(0x19c)](_0x3aecbc),_0x4a8263[_0x3aecbc['ok']?_0x529420(0x19a):_0x529420(0x16c)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0x3aecbc['detail']??(_0x3aecbc['ok']?_0x529420(0x146):_0x529420(0x182))));const _0x45a6b3=resolve(_0x4c7bb5,'.lovrabet'),_0x2077ae=a188_0x4ab3f2({'text':_0x529420(0x144),'color':_0x529420(0x1a3)})[_0x529420(0x184)]();if(existsSync(_0x45a6b3))try{rmSync(_0x45a6b3,{'recursive':!![],'force':!![]}),_0x2077ae['succeed'](_0x529420(0x199)),_0x5cdbcc[_0x529420(0x19c)]({'step':0x2,'label':_0x529420(0x192),'ok':!![]});}catch(_0x975608){_0x2077ae[_0x529420(0x16c)](_0x529420(0x153)+_0x975608[_0x529420(0x17d)]),_0x5cdbcc[_0x529420(0x19c)]({'step':0x2,'label':_0x529420(0x192),'ok':![],'detail':_0x975608[_0x529420(0x17d)]});}else _0x2077ae[_0x529420(0x147)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x5cdbcc[_0x529420(0x19c)]({'step':0x2,'label':_0x529420(0x192),'ok':!![],'detail':_0x529420(0x161)});const _0x6f45e=a188_0x4ab3f2({'text':_0x529420(0x15d),'color':_0x529420(0x1a3)})[_0x529420(0x184)](),_0x56346a=execRemoveOldArtifacts(_0x5aeb7a[_0x529420(0x14d)]);_0x5cdbcc[_0x529420(0x19c)](_0x56346a),_0x6f45e[_0x56346a['ok']?'succeed':_0x529420(0x16c)]('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x56346a[_0x529420(0x159)]??(_0x56346a['ok']?_0x529420(0x146):_0x529420(0x182))));const _0x563b54=a188_0x4ab3f2({'text':_0x529420(0x14e),'color':_0x529420(0x1a3)})[_0x529420(0x184)](),_0xb5ef64=execCleanMcp(_0x5aeb7a);_0x5cdbcc[_0x529420(0x19c)](_0xb5ef64),_0x563b54[_0xb5ef64['ok']?'succeed':_0x529420(0x16c)](_0x529420(0x1a8)+(_0xb5ef64[_0x529420(0x159)]??(_0xb5ef64['ok']?_0x529420(0x146):_0x529420(0x182))));const _0x4984ad=a188_0x4ab3f2({'text':_0x529420(0x169),'color':'cyan'})[_0x529420(0x184)](),_0x193de9=execSkillsRemove(_0x4c7bb5,_0x2a56f4);_0x5cdbcc[_0x529420(0x19c)](_0x193de9),_0x4984ad[_0x193de9['ok']?'succeed':'fail'](_0x529420(0x1a4)+(_0x193de9['detail']??(_0x193de9['ok']?_0x529420(0x146):'failed')));const _0x4113b2=a188_0x4ab3f2({'text':_0x529420(0x197),'color':_0x529420(0x1a3)})[_0x529420(0x184)](),_0x4c57c8=execSkillsAdd(_0x4c7bb5,_0x2a56f4);_0x5cdbcc[_0x529420(0x19c)](_0x4c57c8),_0x4113b2[_0x4c57c8['ok']?'succeed':_0x529420(0x16c)]('Step\x206/7:\x20Install\x20new\x20skill\x20—\x20'+(_0x4c57c8[_0x529420(0x159)]??(_0x4c57c8['ok']?_0x529420(0x146):_0x529420(0x182))));const _0x36467a=a188_0x4ab3f2({'text':_0x529420(0x13d),'color':_0x529420(0x1a3)})[_0x529420(0x184)](),_0x4d0492=execUpgradeSdk(_0x5aeb7a);_0x5cdbcc[_0x529420(0x19c)](_0x4d0492),_0x36467a[_0x4d0492['ok']?_0x529420(0x19a):_0x529420(0x16c)]('Step\x207/7:\x20@lovrabet/sdk\x20—\x20'+(_0x4d0492[_0x529420(0x159)]??(_0x4d0492['ok']?_0x529420(0x146):_0x529420(0x182)))),printSummary(_0x5cdbcc);const _0x5b538c=_0x5cdbcc[_0x529420(0x16d)](_0x1ca6c7=>!_0x1ca6c7['ok']);_0x5b538c?console[_0x529420(0x17c)](a188_0x5706cb[_0x529420(0x133)](_0x529420(0x16a))):console[_0x529420(0x17c)](a188_0x5706cb[_0x529420(0x157)]('Upgrade\x20completed\x20successfully!')),_0x4d0492['ok']&&_0x5aeb7a[_0x529420(0x18a)]&&(console[_0x529420(0x17c)](''),console[_0x529420(0x17c)](a188_0x5706cb[_0x529420(0x132)][_0x529420(0x1a3)](_0x529420(0x17f))),console[_0x529420(0x17c)](a188_0x5706cb['cyan'](_0x529420(0x178))),console[_0x529420(0x17c)](''),console[_0x529420(0x17c)](a188_0x5706cb['white'](_0x529420(0x148))),console[_0x529420(0x17c)](a188_0x5706cb[_0x529420(0x194)](_0x529420(0x181))),console[_0x529420(0x17c)](a188_0x5706cb[_0x529420(0x194)](_0x529420(0x1a6))),console[_0x529420(0x17c)](''));}