@lovrabet/rabetbase-cli 2.5.3-beta.3 → 2.5.3-beta.4

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 (361) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/api-group.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/api/generate-sdk-config-file.js +1 -1
  6. package/lib/api/legacy-api-file.js +1 -1
  7. package/lib/api/model-registry-file.js +1 -1
  8. package/lib/api/model-registry-scaffold.js +1 -1
  9. package/lib/api/model-source.js +1 -1
  10. package/lib/auth/auth-server-ui.js +1 -1
  11. package/lib/auth/auth-server.js +1 -1
  12. package/lib/auth/constant.js +1 -1
  13. package/lib/auth/get-cookie.js +1 -1
  14. package/lib/auth/get-session-user.js +1 -1
  15. package/lib/auth/is-session-valid.js +1 -1
  16. package/lib/auth/login-success-html.js +1 -1
  17. package/lib/auth/logout.js +1 -1
  18. package/lib/cli-flags.js +1 -1
  19. package/lib/cli.js +1 -1
  20. package/lib/commands/api/generate.js +1 -1
  21. package/lib/commands/api/index.js +1 -1
  22. package/lib/commands/api/list.js +1 -1
  23. package/lib/commands/api/pull.js +1 -1
  24. package/lib/commands/api/shared.js +1 -1
  25. package/lib/commands/app/index.js +1 -1
  26. package/lib/commands/app/list.js +1 -1
  27. package/lib/commands/app/members-list.js +1 -1
  28. package/lib/commands/app/remote-directory.js +1 -1
  29. package/lib/commands/app/shared.js +1 -1
  30. package/lib/commands/app-config/delete.js +1 -1
  31. package/lib/commands/app-config/get.js +1 -1
  32. package/lib/commands/app-config/index.js +1 -1
  33. package/lib/commands/app-config/list.js +1 -1
  34. package/lib/commands/app-config/set.js +1 -1
  35. package/lib/commands/app-config/shared.js +1 -1
  36. package/lib/commands/auth/index.js +1 -1
  37. package/lib/commands/bff/create.js +1 -1
  38. package/lib/commands/bff/delete.js +1 -1
  39. package/lib/commands/bff/detail.js +1 -1
  40. package/lib/commands/bff/index.js +1 -1
  41. package/lib/commands/bff/list.js +1 -1
  42. package/lib/commands/bff/logs.js +1 -1
  43. package/lib/commands/bff/pull.js +1 -1
  44. package/lib/commands/bff/push.js +1 -1
  45. package/lib/commands/bff/status.js +1 -1
  46. package/lib/commands/cli-skill/index.js +1 -1
  47. package/lib/commands/cli-update.js +1 -1
  48. package/lib/commands/codegen/index.js +1 -1
  49. package/lib/commands/codegen/sdk.js +1 -1
  50. package/lib/commands/codegen/sql.js +1 -1
  51. package/lib/commands/common/app-registry.js +1 -1
  52. package/lib/commands/common/app-selector.js +1 -1
  53. package/lib/commands/common/async-task.js +1 -1
  54. package/lib/commands/common/dry-run.js +1 -1
  55. package/lib/commands/common/flags.js +1 -1
  56. package/lib/commands/common/local-file.js +1 -1
  57. package/lib/commands/common/validate.js +1 -1
  58. package/lib/commands/config/delete.js +1 -1
  59. package/lib/commands/config/get.js +1 -1
  60. package/lib/commands/config/index.js +1 -1
  61. package/lib/commands/config/init.js +1 -1
  62. package/lib/commands/config/list.js +1 -1
  63. package/lib/commands/config/set.js +1 -1
  64. package/lib/commands/config/shared.js +1 -1
  65. package/lib/commands/dataset/batch-design.js +1 -1
  66. package/lib/commands/dataset/business-group-update.js +1 -1
  67. package/lib/commands/dataset/business-groups.js +1 -1
  68. package/lib/commands/dataset/capability.js +1 -1
  69. package/lib/commands/dataset/cross-relation-create.js +1 -1
  70. package/lib/commands/dataset/cross-relation-delete.js +1 -1
  71. package/lib/commands/dataset/cross-relation-list.js +1 -1
  72. package/lib/commands/dataset/cross-relation-shared.js +1 -1
  73. package/lib/commands/dataset/cross-relation-update.js +1 -1
  74. package/lib/commands/dataset/delete.js +1 -1
  75. package/lib/commands/dataset/detail.js +1 -1
  76. package/lib/commands/dataset/extend-update.js +1 -1
  77. package/lib/commands/dataset/field-restore.js +1 -1
  78. package/lib/commands/dataset/field-update.js +1 -1
  79. package/lib/commands/dataset/generate.js +1 -1
  80. package/lib/commands/dataset/index.js +1 -1
  81. package/lib/commands/dataset/list.js +1 -1
  82. package/lib/commands/dataset/operations.js +1 -1
  83. package/lib/commands/dataset/relation-audit.js +1 -1
  84. package/lib/commands/dataset/relation-create.js +1 -1
  85. package/lib/commands/dataset/relation-delete.js +1 -1
  86. package/lib/commands/dataset/relation-shared.js +1 -1
  87. package/lib/commands/dataset/relation-update.js +1 -1
  88. package/lib/commands/dataset/relations.js +1 -1
  89. package/lib/commands/dataset/rename.js +1 -1
  90. package/lib/commands/dataset/restore.js +1 -1
  91. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  92. package/lib/commands/db/analysis-batching.js +1 -1
  93. package/lib/commands/db/analyze-batch-plan.js +1 -1
  94. package/lib/commands/db/analyze-cancel.js +1 -1
  95. package/lib/commands/db/analyze-start.js +1 -1
  96. package/lib/commands/db/analyze-status.js +1 -1
  97. package/lib/commands/db/create.js +1 -1
  98. package/lib/commands/db/delete.js +1 -1
  99. package/lib/commands/db/detail.js +1 -1
  100. package/lib/commands/db/diff-refresh-start.js +1 -1
  101. package/lib/commands/db/diff-refresh-status.js +1 -1
  102. package/lib/commands/db/diff.js +1 -1
  103. package/lib/commands/db/index.js +1 -1
  104. package/lib/commands/db/list.js +1 -1
  105. package/lib/commands/db/shared.js +1 -1
  106. package/lib/commands/db/table-diff-shared.js +1 -1
  107. package/lib/commands/db/tables.js +1 -1
  108. package/lib/commands/db/test.js +1 -1
  109. package/lib/commands/db/update.js +1 -1
  110. package/lib/commands/deployment/index.js +1 -1
  111. package/lib/commands/deployment/sync-all.js +1 -1
  112. package/lib/commands/deployment/sync-jobs.js +1 -1
  113. package/lib/commands/deployment/sync-status.js +1 -1
  114. package/lib/commands/doctor.js +1 -1
  115. package/lib/commands/file/index.js +1 -1
  116. package/lib/commands/flow/create.js +1 -1
  117. package/lib/commands/flow/detail.js +1 -1
  118. package/lib/commands/flow/index.js +1 -1
  119. package/lib/commands/flow/list.js +1 -1
  120. package/lib/commands/flow/publish.js +1 -1
  121. package/lib/commands/flow/runtime-resources-shared.js +1 -1
  122. package/lib/commands/flow/runtime-role-list.js +1 -1
  123. package/lib/commands/flow/runtime-role-user-list.js +1 -1
  124. package/lib/commands/flow/runtime-user-search.js +1 -1
  125. package/lib/commands/flow/shared.js +1 -1
  126. package/lib/commands/flow/update.js +1 -1
  127. package/lib/commands/flow/validate.js +1 -1
  128. package/lib/commands/instant-api-policy/current.js +1 -1
  129. package/lib/commands/instant-api-policy/index.js +1 -1
  130. package/lib/commands/instant-api-policy/init.js +1 -1
  131. package/lib/commands/instant-api-policy/publish.js +1 -1
  132. package/lib/commands/instant-api-policy/pull.js +1 -1
  133. package/lib/commands/instant-api-policy/revision.js +1 -1
  134. package/lib/commands/instant-api-policy/revisions.js +1 -1
  135. package/lib/commands/instant-api-policy/rollback.js +1 -1
  136. package/lib/commands/instant-api-policy/shared.js +1 -1
  137. package/lib/commands/instant-api-policy/validate.js +1 -1
  138. package/lib/commands/issue/index.js +1 -1
  139. package/lib/commands/issue/nudge.js +1 -1
  140. package/lib/commands/issue/report.js +1 -1
  141. package/lib/commands/issue/shared.js +1 -1
  142. package/lib/commands/kb/create.js +1 -1
  143. package/lib/commands/kb/delete.js +1 -1
  144. package/lib/commands/kb/detail.js +1 -1
  145. package/lib/commands/kb/index.js +1 -1
  146. package/lib/commands/kb/list.js +1 -1
  147. package/lib/commands/kb/search.js +1 -1
  148. package/lib/commands/kb/shared.js +1 -1
  149. package/lib/commands/kb/update.js +1 -1
  150. package/lib/commands/logs/index.js +1 -1
  151. package/lib/commands/menu/asset-update.js +1 -1
  152. package/lib/commands/menu/delete.js +1 -1
  153. package/lib/commands/menu/external-link-create.js +1 -1
  154. package/lib/commands/menu/external-link-update.js +1 -1
  155. package/lib/commands/menu/group-create.js +1 -1
  156. package/lib/commands/menu/group-update.js +1 -1
  157. package/lib/commands/menu/index.js +1 -1
  158. package/lib/commands/menu/list.js +1 -1
  159. package/lib/commands/menu/move.js +1 -1
  160. package/lib/commands/menu/regroup-start.js +1 -1
  161. package/lib/commands/menu/rename.js +1 -1
  162. package/lib/commands/menu/shared/compare-table.js +1 -1
  163. package/lib/commands/menu/shared/delete-plan.js +1 -1
  164. package/lib/commands/menu/shared/facts.js +1 -1
  165. package/lib/commands/menu/shared/index.js +1 -1
  166. package/lib/commands/menu/shared/inquirer.js +1 -1
  167. package/lib/commands/menu/shared/local-pages.js +1 -1
  168. package/lib/commands/menu/shared/logic.js +1 -1
  169. package/lib/commands/menu/shared/mutations.js +1 -1
  170. package/lib/commands/menu/shared/service.js +1 -1
  171. package/lib/commands/menu/shared/sync-core.js +1 -1
  172. package/lib/commands/menu/shared/update-core.js +1 -1
  173. package/lib/commands/menu/shared/valid-url.js +1 -1
  174. package/lib/commands/menu/sync.js +1 -1
  175. package/lib/commands/menu/visibility-update.js +1 -1
  176. package/lib/commands/notification/config-create.js +1 -1
  177. package/lib/commands/notification/config-delete.js +1 -1
  178. package/lib/commands/notification/config-list.js +1 -1
  179. package/lib/commands/notification/config-update.js +1 -1
  180. package/lib/commands/notification/index.js +1 -1
  181. package/lib/commands/notification/shared.js +1 -1
  182. package/lib/commands/ocr/index.js +1 -1
  183. package/lib/commands/page/create.js +1 -1
  184. package/lib/commands/page/custom/detail.js +1 -1
  185. package/lib/commands/page/custom/list.js +1 -1
  186. package/lib/commands/page/custom/publish.js +1 -1
  187. package/lib/commands/page/custom/shared.js +1 -1
  188. package/lib/commands/page/custom/syntax.js +1 -1
  189. package/lib/commands/page/custom/update.js +1 -1
  190. package/lib/commands/page/data-list-status.js +1 -1
  191. package/lib/commands/page/generate-start.js +1 -1
  192. package/lib/commands/page/generate-status.js +1 -1
  193. package/lib/commands/page/index.js +1 -1
  194. package/lib/commands/page/pull.js +1 -1
  195. package/lib/commands/page/push.js +1 -1
  196. package/lib/commands/page/relation-audit.js +1 -1
  197. package/lib/commands/page/restore.js +1 -1
  198. package/lib/commands/page/shared.js +1 -1
  199. package/lib/commands/page/sync.js +1 -1
  200. package/lib/commands/project/api-architecture-upgrade.js +1 -1
  201. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  202. package/lib/commands/project/create/format-elapsed.js +1 -1
  203. package/lib/commands/project/create/main.js +1 -1
  204. package/lib/commands/project/create/materialize-project-template.js +1 -1
  205. package/lib/commands/project/create/project-name.js +1 -1
  206. package/lib/commands/project/create/project-template-archive.js +1 -1
  207. package/lib/commands/project/create/project-template-path.js +1 -1
  208. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  209. package/lib/commands/project/create/use-format-code.js +1 -1
  210. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  211. package/lib/commands/project/domain-routing-sync.js +1 -1
  212. package/lib/commands/project/index.js +1 -1
  213. package/lib/commands/project/upgrade.js +1 -1
  214. package/lib/commands/registry.js +1 -1
  215. package/lib/commands/role/delete.js +1 -1
  216. package/lib/commands/role/detail.js +1 -1
  217. package/lib/commands/role/index.js +1 -1
  218. package/lib/commands/role/list.js +1 -1
  219. package/lib/commands/role/shared.js +1 -1
  220. package/lib/commands/role/update.js +1 -1
  221. package/lib/commands/role/user-add.js +1 -1
  222. package/lib/commands/role/user-remove.js +1 -1
  223. package/lib/commands/role/user-resolve.js +1 -1
  224. package/lib/commands/rule/get.js +1 -1
  225. package/lib/commands/rule/index.js +1 -1
  226. package/lib/commands/rule/list.js +1 -1
  227. package/lib/commands/rule/set.js +1 -1
  228. package/lib/commands/rule/shared.js +1 -1
  229. package/lib/commands/run/index.js +1 -1
  230. package/lib/commands/schema.js +1 -1
  231. package/lib/commands/sql/create.js +1 -1
  232. package/lib/commands/sql/delete.js +1 -1
  233. package/lib/commands/sql/detail.js +1 -1
  234. package/lib/commands/sql/exec.js +1 -1
  235. package/lib/commands/sql/index.js +1 -1
  236. package/lib/commands/sql/list.js +1 -1
  237. package/lib/commands/sql/pull.js +1 -1
  238. package/lib/commands/sql/push.js +1 -1
  239. package/lib/commands/sql/shared.js +1 -1
  240. package/lib/commands/sql/status.js +1 -1
  241. package/lib/commands/sql/validate.js +1 -1
  242. package/lib/commands/task/index.js +1 -1
  243. package/lib/commands/task/status.js +1 -1
  244. package/lib/commands/tenant/index.js +1 -1
  245. package/lib/commands/tenant/members-list.js +1 -1
  246. package/lib/commands/tenant/shared.js +1 -1
  247. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  248. package/lib/commands/user-account/index.js +1 -1
  249. package/lib/commands/workspace/add.js +1 -1
  250. package/lib/commands/workspace/index.js +1 -1
  251. package/lib/commands/workspace/remove.js +1 -1
  252. package/lib/config/domain-config.js +1 -1
  253. package/lib/config/project-domain-routing.js +1 -1
  254. package/lib/config/region-config.js +1 -1
  255. package/lib/config/schema.js +1 -1
  256. package/lib/constant/cdn.d.ts +5 -3
  257. package/lib/constant/cdn.js +1 -1
  258. package/lib/constant/cli.js +1 -1
  259. package/lib/constant/defaults.js +1 -1
  260. package/lib/constant/domain.js +1 -1
  261. package/lib/constant/env.js +1 -1
  262. package/lib/constant/output.js +1 -1
  263. package/lib/constant/paths.js +1 -1
  264. package/lib/constant/region.js +1 -1
  265. package/lib/constant/risk.js +1 -1
  266. package/lib/constant/routing-profile.js +1 -1
  267. package/lib/context/app-resolver.js +1 -1
  268. package/lib/context/auth-resolver.js +1 -1
  269. package/lib/context/config-loader.js +1 -1
  270. package/lib/context.js +1 -1
  271. package/lib/core/alias-resolver.js +1 -1
  272. package/lib/core/api-client.js +1 -1
  273. package/lib/core/bff/config.js +1 -1
  274. package/lib/core/bff/file-system.js +1 -1
  275. package/lib/core/bff/hash.js +1 -1
  276. package/lib/core/bff/hook-directory.js +1 -1
  277. package/lib/core/bff/lock.js +1 -1
  278. package/lib/core/bff/utils.js +1 -1
  279. package/lib/core/cross-db-relation.js +1 -1
  280. package/lib/core/db-resolver.js +1 -1
  281. package/lib/core/flow-config.js +1 -1
  282. package/lib/core/instant-api-policy/config.js +1 -1
  283. package/lib/core/kb-search-client.js +1 -1
  284. package/lib/core/page/file-system.js +1 -1
  285. package/lib/core/page/hash.js +1 -1
  286. package/lib/core/page/lock.js +1 -1
  287. package/lib/core/page/lr-smart-jsx.js +1 -1
  288. package/lib/core/sql-index-auditor.js +1 -1
  289. package/lib/core/sql-sync/config.js +1 -1
  290. package/lib/core/sql-sync/file-system.js +1 -1
  291. package/lib/core/sql-sync/hash.js +1 -1
  292. package/lib/core/sql-sync/lock.js +1 -1
  293. package/lib/core/sql-sync/utils.js +1 -1
  294. package/lib/core/sql-validator.js +1 -1
  295. package/lib/errors.js +1 -1
  296. package/lib/framework/build-all-flags.js +1 -1
  297. package/lib/framework/error-output.js +1 -1
  298. package/lib/framework/explicit-yes.js +1 -1
  299. package/lib/framework/flags.js +1 -1
  300. package/lib/framework/help.js +1 -1
  301. package/lib/framework/index.js +1 -1
  302. package/lib/framework/output.js +1 -1
  303. package/lib/framework/response.js +1 -1
  304. package/lib/framework/runner-alias.js +1 -1
  305. package/lib/framework/runner.js +1 -1
  306. package/lib/framework/schema-export.js +1 -1
  307. package/lib/framework/supported-flags.js +1 -1
  308. package/lib/framework/types.js +1 -1
  309. package/lib/generated/build-info.d.ts +4 -4
  310. package/lib/generated/build-info.js +1 -1
  311. package/lib/generated/official-routing.js +1 -1
  312. package/lib/generated/routing-contract.js +1 -1
  313. package/lib/help.js +1 -1
  314. package/lib/postinstall.js +1 -1
  315. package/lib/runtime/confirmation.js +1 -1
  316. package/lib/runtime/event.js +1 -1
  317. package/lib/runtime/index.js +1 -1
  318. package/lib/runtime/queue.js +1 -1
  319. package/lib/runtime/resolve.js +1 -1
  320. package/lib/skills/builtin-skill.js +1 -1
  321. package/lib/skills/main.js +1 -1
  322. package/lib/skills/npx-skills-add.js +1 -1
  323. package/lib/skills/skill-presence.js +1 -1
  324. package/lib/telemetry/cli-command-trace.js +1 -1
  325. package/lib/telemetry/cli-help-trace.js +1 -1
  326. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  327. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  328. package/lib/telemetry/send-cli-trace-log.js +1 -1
  329. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  330. package/lib/utils/ai_config.js +1 -1
  331. package/lib/utils/apply-jq-filter.js +1 -1
  332. package/lib/utils/cdn-config.js +1 -1
  333. package/lib/utils/check-sdk-version.js +1 -1
  334. package/lib/utils/cli-version-check.js +1 -1
  335. package/lib/utils/cli-version-policy.d.ts +7 -0
  336. package/lib/utils/cli-version-policy.js +1 -1
  337. package/lib/utils/config.js +1 -1
  338. package/lib/utils/entity-with-id.js +1 -1
  339. package/lib/utils/file-utils.js +1 -1
  340. package/lib/utils/guides-cdn.js +1 -1
  341. package/lib/utils/http-client.js +1 -1
  342. package/lib/utils/is-non-interactive.js +1 -1
  343. package/lib/utils/logger.js +1 -1
  344. package/lib/utils/params.js +1 -1
  345. package/lib/utils/platform.js +1 -1
  346. package/lib/utils/sleep.js +1 -1
  347. package/lib/utils/template-replacer.js +1 -1
  348. package/lib/utils/update-notice.js +1 -1
  349. package/lib/utils/version.js +1 -1
  350. package/lib/utils/with-active-cookie.js +1 -1
  351. package/lib/utils/write-cli-side-channel.js +1 -1
  352. package/package.json +3 -1
  353. package/skills/rabetbase/SKILL.md +7 -5
  354. package/skills/rabetbase/guides/backend-function.md +5 -1
  355. package/skills/rabetbase/guides/bff-creation-workflow.md +3 -1
  356. package/skills/rabetbase/guides/cross-database-bff.md +70 -0
  357. package/skills/rabetbase/guides/data-api-guidelines.md +35 -33
  358. package/skills/rabetbase/guides/sql-creation-workflow.md +2 -0
  359. package/skills/rabetbase/references/rabetbase-dataset-cross-relations.md +5 -1
  360. package/skills/rabetbase.manifest.json +4 -3
  361. package/templates/README.md +41 -13
@@ -1 +1 @@
1
- (function(_0xb3df4b,_0x4403f2){const _0x33499c=a337_0x2cc7,_0x4920c3=_0xb3df4b();while(!![]){try{const _0x3cb617=parseInt(_0x33499c(0x94))/0x1+parseInt(_0x33499c(0xa3))/0x2*(-parseInt(_0x33499c(0xa8))/0x3)+-parseInt(_0x33499c(0x96))/0x4*(-parseInt(_0x33499c(0x8f))/0x5)+-parseInt(_0x33499c(0x9b))/0x6*(-parseInt(_0x33499c(0x97))/0x7)+parseInt(_0x33499c(0x8b))/0x8+parseInt(_0x33499c(0x91))/0x9+parseInt(_0x33499c(0x93))/0xa*(-parseInt(_0x33499c(0x95))/0xb);if(_0x3cb617===_0x4403f2)break;else _0x4920c3['push'](_0x4920c3['shift']());}catch(_0x1ff458){_0x4920c3['push'](_0x4920c3['shift']());}}}(a337_0x494b,0x98a70));import{readFileSync}from'node:fs';import{resolve,dirname}from'node:path';import{fileURLToPath}from'node:url';import a337_0x1d6470 from'semver';import{getCliVersionPolicy}from'../utils/cli-version-policy.js';import{NPM_PACKAGE_NAME}from'../constant/cli.js';import{CliErrors}from'../errors.js';export function getCliUpgradeCommand(_0x584cf2){const _0xc6a021=a337_0x2cc7,_0x3a6394=_0x584cf2['stableVersion']||_0xc6a021(0x8c);return _0xc6a021(0x9c)+NPM_PACKAGE_NAME+'@'+_0x3a6394;}function a337_0x2cc7(_0x1dd184,_0x3488b2){_0x1dd184=_0x1dd184-0x86;const _0x494b25=a337_0x494b();let _0x2cc717=_0x494b25[_0x1dd184];return _0x2cc717;}function getCurrentCliVersion(){const _0x4d4d74=a337_0x2cc7;try{const _0x33ece8=fileURLToPath(import.meta.url),_0x22d78c=resolve(dirname(_0x33ece8),_0x4d4d74(0xa6)),_0x62fe9b=resolve(_0x22d78c,_0x4d4d74(0x98)),_0x1e4bea=JSON['parse'](readFileSync(_0x62fe9b,'utf-8'));return _0x1e4bea[_0x4d4d74(0x8d)]||'1.0.0';}catch{return _0x4d4d74(0x89);}}export async function checkCliVersion(){const _0x1e39f5=a337_0x2cc7,_0x4cd31e=getCurrentCliVersion(),_0x4d8562=await getCliVersionPolicy(),_0x20f7a9=_0x4d8562?.['stableVersion']||null,_0x129025=_0x4d8562?.[_0x1e39f5(0x87)]||null;let _0x31cb83=![],_0x494810=![];const _0x11a8e1=a337_0x1d6470[_0x1e39f5(0x8e)](_0x4cd31e);if(_0x11a8e1&&_0x20f7a9)try{const _0x3d733d=a337_0x1d6470[_0x1e39f5(0x8e)](_0x20f7a9);if(_0x3d733d)_0x31cb83=a337_0x1d6470['lt'](_0x11a8e1,_0x3d733d);}catch{}if(_0x11a8e1&&_0x129025)try{const _0x555ef4=a337_0x1d6470[_0x1e39f5(0x8e)](_0x129025);if(_0x555ef4)_0x494810=a337_0x1d6470['lt'](_0x11a8e1,_0x555ef4);}catch{}return _0x494810&&(_0x31cb83=!![]),{'currentVersion':_0x4cd31e,'stableVersion':_0x20f7a9,'minimumVersion':_0x129025,'needsUpgrade':_0x31cb83,'belowMinimum':_0x494810,'isPreRelease':![],'upgradeMessage':_0x4d8562?.['upgradeMessage'],'minimumVersionMessage':_0x4d8562?.[_0x1e39f5(0x8a)]};}export function printCliUpgradeWarning(_0x56624a){const _0x32adb6=a337_0x2cc7;if(!_0x56624a['needsUpgrade']&&!_0x56624a[_0x32adb6(0x86)])return;const _0x2b25b7='\x1b[31m',_0x238ed0=_0x32adb6(0xa2),_0x4cda9d=_0x32adb6(0xac),_0x59aa13='\x1b[1m',_0x4b6567=getCliUpgradeCommand(_0x56624a);console[_0x32adb6(0xa5)](),_0x56624a['belowMinimum']?(console[_0x32adb6(0xa5)](''+_0x2b25b7+_0x59aa13+_0x32adb6(0xa0)+_0x4cda9d),console[_0x32adb6(0xa5)](_0x2b25b7+'\x20\x20\x20Current\x20CLI\x20version:\x20'+_0x56624a[_0x32adb6(0x9d)]+_0x4cda9d),_0x56624a[_0x32adb6(0x87)]&&console['log'](_0x2b25b7+'\x20\x20\x20Minimum\x20supported:\x20'+_0x56624a['minimumVersion']+_0x4cda9d),_0x56624a['stableVersion']&&_0x56624a['stableVersion']!==_0x56624a['minimumVersion']&&console[_0x32adb6(0xa5)](_0x2b25b7+_0x32adb6(0x88)+_0x56624a['stableVersion']+_0x4cda9d),_0x56624a[_0x32adb6(0x8a)]&&console[_0x32adb6(0xa5)](_0x2b25b7+_0x32adb6(0x99)+_0x56624a[_0x32adb6(0x8a)]+_0x4cda9d),console[_0x32adb6(0xa5)](_0x2b25b7+_0x32adb6(0x9a)+_0x4b6567+_0x4cda9d)):(console[_0x32adb6(0xa5)](''+_0x238ed0+_0x59aa13+_0x32adb6(0xa7)+_0x4cda9d),console[_0x32adb6(0xa5)](_0x238ed0+_0x32adb6(0xa4)+_0x56624a[_0x32adb6(0x9d)]+_0x4cda9d),console[_0x32adb6(0xa5)](_0x238ed0+_0x32adb6(0xab)+_0x56624a[_0x32adb6(0xa1)]+_0x4cda9d),_0x56624a[_0x32adb6(0x9f)]&&console[_0x32adb6(0xa5)](_0x238ed0+_0x32adb6(0x99)+_0x56624a[_0x32adb6(0x9f)]+_0x4cda9d),console[_0x32adb6(0xa5)](_0x238ed0+_0x32adb6(0x9a)+_0x4b6567+_0x4cda9d)),console[_0x32adb6(0xa5)]();}function a337_0x494b(){const _0x4f7220=['filter','Upgrade\x20command:\x20','\x20\x20\x20Stable\x20version:\x20','\x1b[0m','belowMinimum','minimumVersion','\x20\x20\x20Recommended\x20stable:\x20','1.0.0','minimumVersionMessage','8728752CHovtL','latest','version','coerce','35dXUAAi','Current\x20CLI\x20version\x20is\x20below\x20the\x20service\x20compatibility\x20support\x20line.','9876465dqWHag','validation','610OsqKJq','959933rbgcou','622127CToOHw','435124rJqRbE','7ptunpO','package.json','\x20\x20\x20','\x20\x20\x20Upgrade\x20command:\x20','5589714YxzrVl','npm\x20install\x20-g\x20','currentVersion','join','upgradeMessage','↪\x20Critical\x20CLI\x20upgrade\x20required','stableVersion','\x1b[33m','6NdFYMo','\x20\x20\x20Current\x20CLI\x20version:\x20','log','../..','↪\x20New\x20version\x20available','766257XinHrJ'];a337_0x494b=function(){return _0x4f7220;};return a337_0x494b();}export function assertCliVersionSupported(_0x16440c){const _0x27bfd5=a337_0x2cc7;if(!_0x16440c['belowMinimum'])return;const _0x487c65=[_0x16440c['minimumVersionMessage'],'Current\x20version:\x20'+_0x16440c[_0x27bfd5(0x9d)],_0x16440c[_0x27bfd5(0x87)]?'Minimum\x20supported:\x20'+_0x16440c[_0x27bfd5(0x87)]:null,_0x27bfd5(0xaa)+getCliUpgradeCommand(_0x16440c)][_0x27bfd5(0xa9)](Boolean)[_0x27bfd5(0x9e)]('\x0a');throw CliErrors[_0x27bfd5(0x92)](_0x27bfd5(0x90),_0x487c65);}
1
+ (function(_0x20b444,_0x18cab6){const _0x29e0cb=a337_0x427c,_0x1f9613=_0x20b444();while(!![]){try{const _0x59914b=parseInt(_0x29e0cb(0x6b))/0x1+-parseInt(_0x29e0cb(0x79))/0x2*(parseInt(_0x29e0cb(0x89))/0x3)+parseInt(_0x29e0cb(0x6f))/0x4+-parseInt(_0x29e0cb(0x91))/0x5*(parseInt(_0x29e0cb(0x83))/0x6)+parseInt(_0x29e0cb(0x73))/0x7+-parseInt(_0x29e0cb(0x81))/0x8*(parseInt(_0x29e0cb(0x94))/0x9)+parseInt(_0x29e0cb(0x7d))/0xa;if(_0x59914b===_0x18cab6)break;else _0x1f9613['push'](_0x1f9613['shift']());}catch(_0x3ca0d0){_0x1f9613['push'](_0x1f9613['shift']());}}}(a337_0x16ac,0x85fc6));import{readFileSync}from'node:fs';import{resolve,dirname}from'node:path';import{fileURLToPath}from'node:url';import a337_0xd6bf3f from'semver';import{getCliVersionPolicy}from'../utils/cli-version-policy.js';import{NPM_PACKAGE_NAME}from'../constant/cli.js';function a337_0x427c(_0x50e4e6,_0x457b96){_0x50e4e6=_0x50e4e6-0x6b;const _0x16ac01=a337_0x16ac();let _0x427cb8=_0x16ac01[_0x50e4e6];return _0x427cb8;}import{CliErrors}from'../errors.js';export function getCliUpgradeCommand(_0x2d3d61){const _0x37a0a2=a337_0x427c,_0x1211b9=_0x2d3d61['stableVersion']||_0x37a0a2(0x8b);return _0x37a0a2(0x8f)+NPM_PACKAGE_NAME+'@'+_0x1211b9;}function getCurrentCliVersion(){const _0x4bbf0a=a337_0x427c;try{const _0x529d1b=fileURLToPath(import.meta.url),_0x48e477=resolve(dirname(_0x529d1b),_0x4bbf0a(0x93)),_0x1a2ba3=resolve(_0x48e477,_0x4bbf0a(0x7c)),_0x4e6177=JSON[_0x4bbf0a(0x7f)](readFileSync(_0x1a2ba3,_0x4bbf0a(0x84)));return _0x4e6177[_0x4bbf0a(0x76)]||_0x4bbf0a(0x90);}catch{return _0x4bbf0a(0x90);}}function a337_0x16ac(){const _0x4e780e=['parse','\x20\x20\x20Recommended\x20stable:\x20','1220536kiwXzD','Current\x20version:\x20','6BmLuQl','utf-8','\x1b[33m','filter','\x20\x20\x20Upgrade\x20command:\x20','↪\x20Critical\x20CLI\x20upgrade\x20required','398946FLbuFf','upgradeMessage','latest','coerce','\x20\x20\x20Current\x20CLI\x20version:\x20','currentVersion','npm\x20install\x20-g\x20','1.0.0','4049255whIZWy','minimumVersion','../..','18hdtKdB','492826WrFPoD','belowMinimum','log','Minimum\x20supported:\x20','3281696dldXou','\x1b[31m','needsUpgrade','Current\x20CLI\x20version\x20is\x20below\x20the\x20service\x20compatibility\x20support\x20line.','4328429kAoWEa','\x20\x20\x20Stable\x20version:\x20','\x1b[0m','version','validation','\x1b[1m','10KvHaSB','stableVersion','minimumVersionMessage','package.json','3971040BtXIAj','\x20\x20\x20'];a337_0x16ac=function(){return _0x4e780e;};return a337_0x16ac();}export async function checkCliVersion(){const _0x1f4b29=a337_0x427c,_0x100b3e=getCurrentCliVersion(),_0x50e71b=await getCliVersionPolicy(),_0x158041=_0x50e71b?.[_0x1f4b29(0x7a)]||null,_0x59b1c1=_0x50e71b?.[_0x1f4b29(0x92)]||null;let _0x11c871=![],_0x1cb18e=![];const _0x2decc9=a337_0xd6bf3f[_0x1f4b29(0x8c)](_0x100b3e);if(_0x2decc9&&_0x158041)try{const _0x1db2f0=a337_0xd6bf3f['coerce'](_0x158041);if(_0x1db2f0)_0x11c871=a337_0xd6bf3f['lt'](_0x2decc9,_0x1db2f0);}catch{}if(_0x2decc9&&_0x59b1c1)try{const _0x8e6266=a337_0xd6bf3f['coerce'](_0x59b1c1);if(_0x8e6266)_0x1cb18e=a337_0xd6bf3f['lt'](_0x2decc9,_0x8e6266);}catch{}return _0x1cb18e&&(_0x11c871=!![]),{'currentVersion':_0x100b3e,'stableVersion':_0x158041,'minimumVersion':_0x59b1c1,'needsUpgrade':_0x11c871,'belowMinimum':_0x1cb18e,'isPreRelease':![],'upgradeMessage':_0x50e71b?.[_0x1f4b29(0x8a)],'minimumVersionMessage':_0x50e71b?.[_0x1f4b29(0x7b)]};}export function printCliUpgradeWarning(_0x4e6bcb){const _0x5d2f91=a337_0x427c;if(!_0x4e6bcb[_0x5d2f91(0x71)]&&!_0x4e6bcb[_0x5d2f91(0x6c)])return;const _0x553552=_0x5d2f91(0x70),_0x73cba0=_0x5d2f91(0x85),_0x51209e=_0x5d2f91(0x75),_0x2be3af=_0x5d2f91(0x78),_0xae04d2=getCliUpgradeCommand(_0x4e6bcb);console[_0x5d2f91(0x6d)](),_0x4e6bcb['belowMinimum']?(console[_0x5d2f91(0x6d)](''+_0x553552+_0x2be3af+_0x5d2f91(0x88)+_0x51209e),console[_0x5d2f91(0x6d)](_0x553552+'\x20\x20\x20Current\x20CLI\x20version:\x20'+_0x4e6bcb['currentVersion']+_0x51209e),_0x4e6bcb[_0x5d2f91(0x92)]&&console[_0x5d2f91(0x6d)](_0x553552+'\x20\x20\x20Minimum\x20supported:\x20'+_0x4e6bcb['minimumVersion']+_0x51209e),_0x4e6bcb[_0x5d2f91(0x7a)]&&_0x4e6bcb['stableVersion']!==_0x4e6bcb[_0x5d2f91(0x92)]&&console[_0x5d2f91(0x6d)](_0x553552+_0x5d2f91(0x80)+_0x4e6bcb['stableVersion']+_0x51209e),_0x4e6bcb['minimumVersionMessage']&&console['log'](_0x553552+_0x5d2f91(0x7e)+_0x4e6bcb[_0x5d2f91(0x7b)]+_0x51209e),console[_0x5d2f91(0x6d)](_0x553552+'\x20\x20\x20Upgrade\x20command:\x20'+_0xae04d2+_0x51209e)):(console[_0x5d2f91(0x6d)](''+_0x73cba0+_0x2be3af+'↪\x20New\x20version\x20available'+_0x51209e),console[_0x5d2f91(0x6d)](_0x73cba0+_0x5d2f91(0x8d)+_0x4e6bcb[_0x5d2f91(0x8e)]+_0x51209e),console[_0x5d2f91(0x6d)](_0x73cba0+_0x5d2f91(0x74)+_0x4e6bcb['stableVersion']+_0x51209e),_0x4e6bcb['upgradeMessage']&&console[_0x5d2f91(0x6d)](_0x73cba0+_0x5d2f91(0x7e)+_0x4e6bcb[_0x5d2f91(0x8a)]+_0x51209e),console['log'](_0x73cba0+_0x5d2f91(0x87)+_0xae04d2+_0x51209e)),console[_0x5d2f91(0x6d)]();}export function assertCliVersionSupported(_0x3ebe86){const _0x22858d=a337_0x427c;if(!_0x3ebe86[_0x22858d(0x6c)])return;const _0x3b741e=[_0x3ebe86[_0x22858d(0x7b)],_0x22858d(0x82)+_0x3ebe86['currentVersion'],_0x3ebe86[_0x22858d(0x92)]?_0x22858d(0x6e)+_0x3ebe86[_0x22858d(0x92)]:null,'Upgrade\x20command:\x20'+getCliUpgradeCommand(_0x3ebe86)][_0x22858d(0x86)](Boolean)['join']('\x0a');throw CliErrors[_0x22858d(0x77)](_0x22858d(0x72),_0x3b741e);}
@@ -7,6 +7,7 @@ export interface CliVersionPolicy {
7
7
  export interface ProjectTemplateCdnDescriptor {
8
8
  version: string;
9
9
  name: string;
10
+ url?: string;
10
11
  sha256: string;
11
12
  size: number;
12
13
  }
@@ -20,6 +21,11 @@ export interface RabetbaseCdnConfig {
20
21
  };
21
22
  [key: string]: unknown;
22
23
  }
24
+ export interface ProjectTemplateCdnConfigResolution {
25
+ config: RabetbaseCdnConfig;
26
+ assetBaseUrl: string;
27
+ legacyAssetBaseUrl: string;
28
+ }
23
29
  export declare function isBetaCliVersion(version: string): boolean;
24
30
  /**
25
31
  * Resolve the project template channel without changing the legacy contract:
@@ -28,6 +34,7 @@ export declare function isBetaCliVersion(version: string): boolean;
28
34
  */
29
35
  export declare function resolveProjectTemplateDescriptor(config: RabetbaseCdnConfig, cliVersion: string): ProjectTemplateCdnDescriptor | undefined;
30
36
  export declare function fetchRabetbaseCdnConfig(): Promise<RabetbaseCdnConfig | null>;
37
+ export declare function fetchProjectTemplateCdnConfig(): Promise<ProjectTemplateCdnConfigResolution | null>;
31
38
  export declare function fetchCliVersionPolicy(): Promise<CliVersionPolicy | null>;
32
39
  export declare function getRabetbaseCdnConfig(): Promise<RabetbaseCdnConfig | null>;
33
40
  export declare function getCliVersionPolicy(): Promise<CliVersionPolicy | null>;
@@ -1 +1 @@
1
- (function(_0x10f0cb,_0x41e307){const _0x7493f=a338_0x4e3e,_0x165fad=_0x10f0cb();while(!![]){try{const _0x562494=parseInt(_0x7493f(0x1a7))/0x1*(-parseInt(_0x7493f(0x1a9))/0x2)+parseInt(_0x7493f(0x1ae))/0x3+parseInt(_0x7493f(0x1b5))/0x4*(parseInt(_0x7493f(0x1a8))/0x5)+parseInt(_0x7493f(0x1b1))/0x6*(parseInt(_0x7493f(0x1bb))/0x7)+parseInt(_0x7493f(0x1bd))/0x8+-parseInt(_0x7493f(0x1b4))/0x9*(parseInt(_0x7493f(0x1b6))/0xa)+-parseInt(_0x7493f(0x1b3))/0xb;if(_0x562494===_0x41e307)break;else _0x165fad['push'](_0x165fad['shift']());}catch(_0x2626ae){_0x165fad['push'](_0x165fad['shift']());}}}(a338_0x2baa,0x32161));import{CLI_VERSION_POLICY_URL}from'../constant/cdn.js';import a338_0x5027f6 from'semver';const CACHE_TTL=0x5*0x3c*0x3e8,FAILURE_CACHE_TTL=0x3c*0x3e8,FETCH_TIMEOUT_MS=0xbb8;export function isBetaCliVersion(_0x580689){const _0x40cfb9=a338_0x4e3e,_0x195495=a338_0x5027f6[_0x40cfb9(0x1bc)](_0x580689);return _0x195495?a338_0x5027f6[_0x40cfb9(0x1b8)](_0x195495)?.[0x0]==='beta':![];}export function resolveProjectTemplateDescriptor(_0x5f04f7,_0x221624){const _0x18e59a=a338_0x4e3e;if(isBetaCliVersion(_0x221624))return _0x5f04f7[_0x18e59a(0x1a6)]?.['projectTemplate']??_0x5f04f7[_0x18e59a(0x1a5)];return _0x5f04f7[_0x18e59a(0x1a5)];}function pickString(_0x305bc1){const _0x2c8d22=a338_0x4e3e;return typeof _0x305bc1===_0x2c8d22(0x1ad)&&_0x305bc1[_0x2c8d22(0x1b2)]()[_0x2c8d22(0x1a3)]>0x0?_0x305bc1[_0x2c8d22(0x1b2)]():null;}function normalizeCliVersionPolicy(_0x4d6d65){const _0x5ce57c=a338_0x4e3e;if(!_0x4d6d65||typeof _0x4d6d65!=='object')return null;const _0x90969b=_0x4d6d65,_0x30f729=_0x90969b['cli']&&typeof _0x90969b[_0x5ce57c(0x1b7)]===_0x5ce57c(0x1aa)?_0x90969b[_0x5ce57c(0x1b7)]:_0x90969b,_0x3f1680=pickString(_0x30f729['stableVersion'])||pickString(_0x30f729['latestVersion'])||pickString(_0x30f729['recommendedVersion']),_0x49eae2=pickString(_0x30f729[_0x5ce57c(0x1b0)])||pickString(_0x30f729[_0x5ce57c(0x1ac)]);if(!_0x3f1680&&!_0x49eae2)return null;return{'stableVersion':_0x3f1680,'minimumVersion':_0x49eae2,'upgradeMessage':pickString(_0x30f729[_0x5ce57c(0x1b9)])||undefined,'minimumVersionMessage':pickString(_0x30f729[_0x5ce57c(0x1af)])||undefined};}export async function fetchRabetbaseCdnConfig(){const _0x4d29a1=a338_0x4e3e,_0xcb6b86=new AbortController(),_0x48125a=setTimeout(()=>_0xcb6b86[_0x4d29a1(0x1ba)](),FETCH_TIMEOUT_MS);try{const _0x1d6d06=await fetch(CLI_VERSION_POLICY_URL,{'headers':{'Accept':_0x4d29a1(0x1a2)},'signal':_0xcb6b86[_0x4d29a1(0x1a4)]});if(!_0x1d6d06['ok'])return null;const _0x2068d7=await _0x1d6d06[_0x4d29a1(0x1ab)]();return _0x2068d7&&typeof _0x2068d7===_0x4d29a1(0x1aa)?_0x2068d7:null;}catch{return null;}finally{clearTimeout(_0x48125a);}}export async function fetchCliVersionPolicy(){return normalizeCliVersionPolicy(await fetchRabetbaseCdnConfig());}let cachedConfig=null,cacheTime=0x0,hasCachedConfig=![];function a338_0x4e3e(_0x469238,_0x56149a){_0x469238=_0x469238-0x1a2;const _0x2baaeb=a338_0x2baa();let _0x4e3e0b=_0x2baaeb[_0x469238];return _0x4e3e0b;}function a338_0x2baa(){const _0x5ab609=['3142840fDmXwp','cli','prerelease','upgradeMessage','abort','6076jBsLVA','valid','2213920jEpbKU','application/json','length','signal','projectTemplate','beta','14020ywAsld','76185OVGeLr','26rfLKAM','object','json','minVersion','string','839313pFOjGf','minimumVersionMessage','minimumVersion','2172VzSyYE','trim','5043863eyotJY','9IwRiIi','76ggSWNv'];a338_0x2baa=function(){return _0x5ab609;};return a338_0x2baa();}export async function getRabetbaseCdnConfig(){const _0x2ca347=Date['now']();if(hasCachedConfig){const _0x15c981=cachedConfig?CACHE_TTL:FAILURE_CACHE_TTL;if(_0x2ca347-cacheTime<_0x15c981)return cachedConfig;}return cachedConfig=await fetchRabetbaseCdnConfig(),cacheTime=_0x2ca347,hasCachedConfig=!![],cachedConfig;}export async function getCliVersionPolicy(){return normalizeCliVersionPolicy(await getRabetbaseCdnConfig());}export function clearCliVersionPolicyCache(){cachedConfig=null,cacheTime=0x0,hasCachedConfig=![];}
1
+ (function(_0x5a77bc,_0x1b72d3){const _0x17a9c6=a338_0x209a,_0x1c5305=_0x5a77bc();while(!![]){try{const _0x1d4f44=parseInt(_0x17a9c6(0x95))/0x1+-parseInt(_0x17a9c6(0xa3))/0x2*(-parseInt(_0x17a9c6(0xa6))/0x3)+parseInt(_0x17a9c6(0x94))/0x4*(-parseInt(_0x17a9c6(0x91))/0x5)+parseInt(_0x17a9c6(0x8f))/0x6+-parseInt(_0x17a9c6(0xa5))/0x7*(-parseInt(_0x17a9c6(0x8e))/0x8)+parseInt(_0x17a9c6(0x99))/0x9+-parseInt(_0x17a9c6(0x9c))/0xa;if(_0x1d4f44===_0x1b72d3)break;else _0x1c5305['push'](_0x1c5305['shift']());}catch(_0x2f6619){_0x1c5305['push'](_0x1c5305['shift']());}}}(a338_0x4df7,0x2293c));import{getCliVersionPolicyUrl,getProjectTemplateAssetBaseUrl,getProjectTemplateLegacyAssetBaseUrl}from'../constant/cdn.js';import a338_0x1b3d57 from'semver';const CACHE_TTL=0x5*0x3c*0x3e8,FAILURE_CACHE_TTL=0x3c*0x3e8,FETCH_TIMEOUT_MS=0xbb8;export function isBetaCliVersion(_0x96d024){const _0x1cddf2=a338_0x209a,_0x136fe2=a338_0x1b3d57[_0x1cddf2(0x98)](_0x96d024);return _0x136fe2?a338_0x1b3d57[_0x1cddf2(0xa2)](_0x136fe2)?.[0x0]==='beta':![];}function a338_0x209a(_0x5f17c0,_0x1d27ee){_0x5f17c0=_0x5f17c0-0x8e;const _0x4df7e0=a338_0x4df7();let _0x209aae=_0x4df7e0[_0x5f17c0];return _0x209aae;}export function resolveProjectTemplateDescriptor(_0x3ed25b,_0x1e25c9){const _0x5151d3=a338_0x209a;if(isBetaCliVersion(_0x1e25c9))return _0x3ed25b[_0x5151d3(0xa1)]?.['projectTemplate']??_0x3ed25b[_0x5151d3(0x9d)];return _0x3ed25b[_0x5151d3(0x9d)];}function pickString(_0x3e3be3){const _0x56bde9=a338_0x209a;return typeof _0x3e3be3==='string'&&_0x3e3be3[_0x56bde9(0xa7)]()[_0x56bde9(0x9e)]>0x0?_0x3e3be3['trim']():null;}function normalizeCliVersionPolicy(_0x1479ae){const _0x3c426=a338_0x209a;if(!_0x1479ae||typeof _0x1479ae!=='object')return null;const _0x2fda7e=_0x1479ae,_0x3a676e=_0x2fda7e[_0x3c426(0x97)]&&typeof _0x2fda7e[_0x3c426(0x97)]===_0x3c426(0xa9)?_0x2fda7e[_0x3c426(0x97)]:_0x2fda7e,_0x46c10d=pickString(_0x3a676e[_0x3c426(0x9a)])||pickString(_0x3a676e[_0x3c426(0x96)])||pickString(_0x3a676e[_0x3c426(0x90)]),_0x927664=pickString(_0x3a676e[_0x3c426(0xa8)])||pickString(_0x3a676e['minVersion']);if(!_0x46c10d&&!_0x927664)return null;return{'stableVersion':_0x46c10d,'minimumVersion':_0x927664,'upgradeMessage':pickString(_0x3a676e[_0x3c426(0x9f)])||undefined,'minimumVersionMessage':pickString(_0x3a676e[_0x3c426(0xa4)])||undefined};}async function fetchRabetbaseCdnConfigAt(_0x43c35d){const _0x116cc9=a338_0x209a,_0x52bb6a=new AbortController(),_0x42f3ff=setTimeout(()=>_0x52bb6a[_0x116cc9(0xa0)](),FETCH_TIMEOUT_MS);try{const _0x4f68f5=await fetch(_0x43c35d,{'headers':{'Accept':'application/json'},'signal':_0x52bb6a[_0x116cc9(0x9b)]});if(!_0x4f68f5['ok'])return null;const _0xce1b53=await _0x4f68f5[_0x116cc9(0x92)]();return _0xce1b53&&typeof _0xce1b53===_0x116cc9(0xa9)?_0xce1b53:null;}catch{return null;}finally{clearTimeout(_0x42f3ff);}}export async function fetchRabetbaseCdnConfig(){return fetchRabetbaseCdnConfigAt(getCliVersionPolicyUrl());}export async function fetchProjectTemplateCdnConfig(){const _0x5b8038=await getRabetbaseCdnConfig();return _0x5b8038?{'config':_0x5b8038,'assetBaseUrl':getProjectTemplateAssetBaseUrl(),'legacyAssetBaseUrl':getProjectTemplateLegacyAssetBaseUrl()}:null;}export async function fetchCliVersionPolicy(){return normalizeCliVersionPolicy(await fetchRabetbaseCdnConfig());}let cachedConfig=null,cacheTime=0x0,hasCachedConfig=![];export async function getRabetbaseCdnConfig(){const _0x16e433=a338_0x209a,_0x2ad6da=Date[_0x16e433(0x93)]();if(hasCachedConfig){const _0x137a7a=cachedConfig?CACHE_TTL:FAILURE_CACHE_TTL;if(_0x2ad6da-cacheTime<_0x137a7a)return cachedConfig;}return cachedConfig=await fetchRabetbaseCdnConfig(),cacheTime=_0x2ad6da,hasCachedConfig=!![],cachedConfig;}export async function getCliVersionPolicy(){return normalizeCliVersionPolicy(await getRabetbaseCdnConfig());}function a338_0x4df7(){const _0x21916=['prerelease','522VmuggE','minimumVersionMessage','183162wtdOIV','1905eXSdcc','trim','minimumVersion','object','64ROOnHs','694212zxkvkq','recommendedVersion','185nXINHt','json','now','15076nRawBT','188011bNBghE','latestVersion','cli','valid','1144827ttmAhA','stableVersion','signal','5248980AlUPIN','projectTemplate','length','upgradeMessage','abort','beta'];a338_0x4df7=function(){return _0x21916;};return a338_0x4df7();}export function clearCliVersionPolicyCache(){cachedConfig=null,cacheTime=0x0,hasCachedConfig=![];}
@@ -1 +1 @@
1
- const a339_0x1a332a=a339_0x286b;(function(_0x400efd,_0x3fcf5e){const _0x559d57=a339_0x286b,_0x5a6fde=_0x400efd();while(!![]){try{const _0x43e6c7=parseInt(_0x559d57(0x1d8))/0x1*(parseInt(_0x559d57(0x1d3))/0x2)+-parseInt(_0x559d57(0x1d7))/0x3*(-parseInt(_0x559d57(0x1ce))/0x4)+parseInt(_0x559d57(0x1d5))/0x5*(parseInt(_0x559d57(0x1d4))/0x6)+-parseInt(_0x559d57(0x1cd))/0x7+-parseInt(_0x559d57(0x1db))/0x8+parseInt(_0x559d57(0x1d0))/0x9*(-parseInt(_0x559d57(0x1d6))/0xa)+-parseInt(_0x559d57(0x1da))/0xb*(-parseInt(_0x559d57(0x1cf))/0xc);if(_0x43e6c7===_0x3fcf5e)break;else _0x5a6fde['push'](_0x5a6fde['shift']());}catch(_0xf358c5){_0x5a6fde['push'](_0x5a6fde['shift']());}}}(a339_0xb1b1,0xe5961));import{initEnv}from'../constant/env.js';import{readRawConfig,getConfigAppCode as a339_0x50c915,getMultiAppConfigs as a339_0x549cdb,getTemplateBaseUrl as a339_0xbb1234}from'../context.js';export{getProjectConfigPath,getGlobalConfigPath}from'../context.js';function a339_0x286b(_0x7b0f8a,_0x31e260){_0x7b0f8a=_0x7b0f8a-0x1cd;const _0xb1b14a=a339_0xb1b1();let _0x286b68=_0xb1b14a[_0x7b0f8a];return _0x286b68;}export{isInProject}from'../context.js';export function readConfig(_0x44849b){const _0x491232=a339_0x286b,_0xb15184=readRawConfig(_0x44849b);return _0xb15184[_0x491232(0x1d1)]&&typeof _0xb15184[_0x491232(0x1d1)]===_0x491232(0x1d9)&&initEnv(_0xb15184[_0x491232(0x1d1)]),_0xb15184;}export function getConfigAppCode(){return a339_0x50c915();}export function getMultiAppConfigs(_0xe29288=a339_0x1a332a(0x1d2)){return a339_0x549cdb(_0xe29288);}function a339_0xb1b1(){const _0xdee32d=['440712AfpkUQ','8575317TuBZLM','env','project','2OdOuEM','24wFkrxT','1229270EHjgTG','10vyTslI','590931SIEoml','906553ksbInf','string','143eTtTMH','6032296Psqgqd','7693077puqhet','28DGToZW'];a339_0xb1b1=function(){return _0xdee32d;};return a339_0xb1b1();}export function getTemplateBaseUrl(){return a339_0xbb1234();}
1
+ const a339_0x195dd7=a339_0x4a05;(function(_0x522a60,_0x404164){const _0xfbfa72=a339_0x4a05,_0x167c57=_0x522a60();while(!![]){try{const _0x334945=-parseInt(_0xfbfa72(0xb6))/0x1+parseInt(_0xfbfa72(0xb5))/0x2*(parseInt(_0xfbfa72(0xb7))/0x3)+-parseInt(_0xfbfa72(0xbc))/0x4+parseInt(_0xfbfa72(0xc0))/0x5+parseInt(_0xfbfa72(0xb8))/0x6*(-parseInt(_0xfbfa72(0xba))/0x7)+-parseInt(_0xfbfa72(0xbe))/0x8+parseInt(_0xfbfa72(0xb9))/0x9;if(_0x334945===_0x404164)break;else _0x167c57['push'](_0x167c57['shift']());}catch(_0x43151d){_0x167c57['push'](_0x167c57['shift']());}}}(a339_0x4aab,0xec2da));import{initEnv}from'../constant/env.js';import{readRawConfig,getConfigAppCode as a339_0x24e5eb,getMultiAppConfigs as a339_0x4c211d,getTemplateBaseUrl as a339_0x2db2d7}from'../context.js';export{getProjectConfigPath,getGlobalConfigPath}from'../context.js';export{isInProject}from'../context.js';export function readConfig(_0x22c7b2){const _0x446685=a339_0x4a05,_0x27049c=readRawConfig(_0x22c7b2);return _0x27049c[_0x446685(0xbd)]&&typeof _0x27049c['env']===_0x446685(0xbb)&&initEnv(_0x27049c[_0x446685(0xbd)]),_0x27049c;}export function getConfigAppCode(){return a339_0x24e5eb();}function a339_0x4a05(_0x14140f,_0x5ea2e9){_0x14140f=_0x14140f-0xb5;const _0x4aab6a=a339_0x4aab();let _0x4a05a4=_0x4aab6a[_0x14140f];return _0x4a05a4;}function a339_0x4aab(){const _0x55cf25=['env','1572328TTPcsZ','project','2927120lmJZJs','41828pcDNrO','1508282xzsKSj','264ClTBIp','486786sqmxBr','4929408jHGCBI','7iHqXCJ','string','880912acmahf'];a339_0x4aab=function(){return _0x55cf25;};return a339_0x4aab();}export function getMultiAppConfigs(_0x5661f6=a339_0x195dd7(0xbf)){return a339_0x4c211d(_0x5661f6);}export function getTemplateBaseUrl(){return a339_0x2db2d7();}
@@ -1 +1 @@
1
- (function(_0x308ea7,_0x188662){const _0x4c3716=a340_0x3872,_0x3bd3df=_0x308ea7();while(!![]){try{const _0x3613f1=-parseInt(_0x4c3716(0x128))/0x1+parseInt(_0x4c3716(0x12a))/0x2*(parseInt(_0x4c3716(0x131))/0x3)+-parseInt(_0x4c3716(0x134))/0x4+parseInt(_0x4c3716(0x130))/0x5+parseInt(_0x4c3716(0x133))/0x6*(-parseInt(_0x4c3716(0x12c))/0x7)+parseInt(_0x4c3716(0x12e))/0x8*(-parseInt(_0x4c3716(0x132))/0x9)+-parseInt(_0x4c3716(0x135))/0xa*(-parseInt(_0x4c3716(0x12f))/0xb);if(_0x3613f1===_0x188662)break;else _0x3bd3df['push'](_0x3bd3df['shift']());}catch(_0xba22e1){_0x3bd3df['push'](_0x3bd3df['shift']());}}}(a340_0x244c,0x68c00));function toFiniteNumber(_0x48565e){const _0x3303bb=a340_0x3872;if(typeof _0x48565e===_0x3303bb(0x12d)&&Number[_0x3303bb(0x129)](_0x48565e))return _0x48565e;if(typeof _0x48565e==='string'){const _0x72bfd4=_0x48565e[_0x3303bb(0x127)]();if(!_0x72bfd4)return undefined;const _0x1aa4cc=Number(_0x72bfd4);if(Number[_0x3303bb(0x129)](_0x1aa4cc))return _0x1aa4cc;}return undefined;}function a340_0x3872(_0x8fe285,_0x5a8800){_0x8fe285=_0x8fe285-0x127;const _0x244c9d=a340_0x244c();let _0x387219=_0x244c9d[_0x8fe285];return _0x387219;}function a340_0x244c(){const _0x551ef3=['33lHQljd','3782095DTkVde','6eETsdw','195309jxKEPw','252ncqSTO','813792BFUHdV','2091510MEEFHI','trim','94400XxxBwi','isFinite','320154XOoMIH','object','90517OxYUIy','number','160KvIPnM'];a340_0x244c=function(){return _0x551ef3;};return a340_0x244c();}export function normalizeEntityWithIdResponse(_0x30ae12){const _0x25031e=a340_0x3872,_0x4d2c69=toFiniteNumber(_0x30ae12);if(_0x4d2c69!==undefined)return{'id':_0x4d2c69,'entity':{'id':_0x4d2c69}};if(!_0x30ae12||typeof _0x30ae12!==_0x25031e(0x12b))return{'id':undefined,'entity':{}};const _0x53ddaa={..._0x30ae12},_0x51ed71=toFiniteNumber(_0x53ddaa['id']);return _0x51ed71!==undefined&&(_0x53ddaa['id']=_0x51ed71),{'id':_0x51ed71,'entity':_0x53ddaa};}
1
+ function a340_0x112d(_0x5b20da,_0x285c2b){_0x5b20da=_0x5b20da-0xcd;const _0x50628f=a340_0x5062();let _0x112d6c=_0x50628f[_0x5b20da];return _0x112d6c;}(function(_0x41e3a9,_0x458292){const _0x5a28c7=a340_0x112d,_0x109865=_0x41e3a9();while(!![]){try{const _0x3a52b2=-parseInt(_0x5a28c7(0xd3))/0x1*(-parseInt(_0x5a28c7(0xd2))/0x2)+parseInt(_0x5a28c7(0xcf))/0x3+-parseInt(_0x5a28c7(0xd6))/0x4+parseInt(_0x5a28c7(0xd1))/0x5+-parseInt(_0x5a28c7(0xda))/0x6*(parseInt(_0x5a28c7(0xd8))/0x7)+parseInt(_0x5a28c7(0xd7))/0x8+parseInt(_0x5a28c7(0xd4))/0x9*(-parseInt(_0x5a28c7(0xce))/0xa);if(_0x3a52b2===_0x458292)break;else _0x109865['push'](_0x109865['shift']());}catch(_0x325b99){_0x109865['push'](_0x109865['shift']());}}}(a340_0x5062,0x89e2f));function toFiniteNumber(_0x29cde5){const _0x1da4ab=a340_0x112d;if(typeof _0x29cde5===_0x1da4ab(0xd9)&&Number[_0x1da4ab(0xcd)](_0x29cde5))return _0x29cde5;if(typeof _0x29cde5===_0x1da4ab(0xd5)){const _0x49dc9f=_0x29cde5[_0x1da4ab(0xd0)]();if(!_0x49dc9f)return undefined;const _0x1048e5=Number(_0x49dc9f);if(Number[_0x1da4ab(0xcd)](_0x1048e5))return _0x1048e5;}return undefined;}export function normalizeEntityWithIdResponse(_0x504b24){const _0x3dcb0f=toFiniteNumber(_0x504b24);if(_0x3dcb0f!==undefined)return{'id':_0x3dcb0f,'entity':{'id':_0x3dcb0f}};if(!_0x504b24||typeof _0x504b24!=='object')return{'id':undefined,'entity':{}};const _0x46800b={..._0x504b24},_0x23eb83=toFiniteNumber(_0x46800b['id']);return _0x23eb83!==undefined&&(_0x46800b['id']=_0x23eb83),{'id':_0x23eb83,'entity':_0x46800b};}function a340_0x5062(){const _0x3e9953=['5090WunCmP','397698aOitCX','trim','5633485LasHRb','14XBNmDh','144510UfFWpP','14616rabFvj','string','3323748zrtexY','6687712AqBaRJ','6191227LaaAyx','number','6lzedlr','isFinite'];a340_0x5062=function(){return _0x3e9953;};return a340_0x5062();}
@@ -1 +1 @@
1
- (function(_0x3e7721,_0x376f5c){const _0x564ac1=a341_0x5c35,_0x13f619=_0x3e7721();while(!![]){try{const _0x19ae26=-parseInt(_0x564ac1(0x86))/0x1*(parseInt(_0x564ac1(0x7e))/0x2)+parseInt(_0x564ac1(0x84))/0x3+parseInt(_0x564ac1(0x83))/0x4+parseInt(_0x564ac1(0x80))/0x5+parseInt(_0x564ac1(0x7f))/0x6*(-parseInt(_0x564ac1(0x82))/0x7)+parseInt(_0x564ac1(0x81))/0x8*(parseInt(_0x564ac1(0x7d))/0x9)+parseInt(_0x564ac1(0x7c))/0xa;if(_0x19ae26===_0x376f5c)break;else _0x13f619['push'](_0x13f619['shift']());}catch(_0x2a4a61){_0x13f619['push'](_0x13f619['shift']());}}}(a341_0x5e70,0x1f944));import{existsSync,mkdirSync,copyFileSync,readdirSync,statSync}from'node:fs';import{join}from'node:path';export async function copyDir(_0x5c01d1,_0x4c60a2){const _0x5680f1=a341_0x5c35,_0x2a23d6=statSync(_0x5c01d1);if(_0x2a23d6[_0x5680f1(0x85)]()){!existsSync(_0x4c60a2)&&mkdirSync(_0x4c60a2,{'recursive':!![]});const _0x125666=readdirSync(_0x5c01d1);for(const _0x1db64f of _0x125666){await copyDir(join(_0x5c01d1,_0x1db64f),join(_0x4c60a2,_0x1db64f));}}else copyFileSync(_0x5c01d1,_0x4c60a2);}function a341_0x5c35(_0x3ae9c3,_0x1db546){_0x3ae9c3=_0x3ae9c3-0x7c;const _0x5e7036=a341_0x5e70();let _0x5c35be=_0x5e7036[_0x3ae9c3];return _0x5c35be;}export function ensureDir(_0x4520fb){!existsSync(_0x4520fb)&&mkdirSync(_0x4520fb,{'recursive':!![]});}function a341_0x5e70(){const _0x28df29=['21728geCGsS','452625ufhodk','isDirectory','105977PgRUQt','122510KHRiqV','9yipPGP','4vrisIm','47298LCNVyg','797870prahbO','1555832DqChfz','161FKllTF'];a341_0x5e70=function(){return _0x28df29;};return a341_0x5e70();}export function pathExists(_0x1e6f24){return existsSync(_0x1e6f24);}
1
+ (function(_0x39d66a,_0xebca41){const _0xa936b4=a341_0x16f4,_0x528680=_0x39d66a();while(!![]){try{const _0x22c5a5=parseInt(_0xa936b4(0x19c))/0x1+parseInt(_0xa936b4(0x19f))/0x2+-parseInt(_0xa936b4(0x1a0))/0x3+-parseInt(_0xa936b4(0x19e))/0x4+-parseInt(_0xa936b4(0x19b))/0x5*(parseInt(_0xa936b4(0x1a2))/0x6)+parseInt(_0xa936b4(0x19d))/0x7+-parseInt(_0xa936b4(0x1a3))/0x8*(-parseInt(_0xa936b4(0x1a4))/0x9);if(_0x22c5a5===_0xebca41)break;else _0x528680['push'](_0x528680['shift']());}catch(_0x270ac3){_0x528680['push'](_0x528680['shift']());}}}(a341_0x192e,0x67321));import{existsSync,mkdirSync,copyFileSync,readdirSync,statSync}from'node:fs';import{join}from'node:path';function a341_0x16f4(_0x5c40c1,_0x55eda){_0x5c40c1=_0x5c40c1-0x19b;const _0x192e03=a341_0x192e();let _0x16f44f=_0x192e03[_0x5c40c1];return _0x16f44f;}export async function copyDir(_0x576436,_0x18b4a2){const _0x1a2004=a341_0x16f4,_0x2308b4=statSync(_0x576436);if(_0x2308b4[_0x1a2004(0x1a1)]()){!existsSync(_0x18b4a2)&&mkdirSync(_0x18b4a2,{'recursive':!![]});const _0x44e883=readdirSync(_0x576436);for(const _0x13d6d6 of _0x44e883){await copyDir(join(_0x576436,_0x13d6d6),join(_0x18b4a2,_0x13d6d6));}}else copyFileSync(_0x576436,_0x18b4a2);}export function ensureDir(_0x5deb59){!existsSync(_0x5deb59)&&mkdirSync(_0x5deb59,{'recursive':!![]});}function a341_0x192e(){const _0x106dae=['24rMktyA','4827411CpCztD','9095RSnvor','328842JTYQxo','371175hyCYNJ','2854160YWeKXM','167744nADOvj','682254pwGaoN','isDirectory','2346UhdUdG'];a341_0x192e=function(){return _0x106dae;};return a341_0x192e();}export function pathExists(_0x5c2260){return existsSync(_0x5c2260);}
@@ -1 +1 @@
1
- const a342_0x58878f=a342_0x4563;(function(_0x405527,_0x2ca249){const _0x3239f3=a342_0x4563,_0x3113ee=_0x405527();while(!![]){try{const _0x47f89f=parseInt(_0x3239f3(0xa5))/0x1*(parseInt(_0x3239f3(0x97))/0x2)+-parseInt(_0x3239f3(0x9c))/0x3*(parseInt(_0x3239f3(0xa1))/0x4)+-parseInt(_0x3239f3(0x94))/0x5+-parseInt(_0x3239f3(0x93))/0x6*(-parseInt(_0x3239f3(0xaa))/0x7)+-parseInt(_0x3239f3(0x90))/0x8+parseInt(_0x3239f3(0x99))/0x9+-parseInt(_0x3239f3(0x95))/0xa*(-parseInt(_0x3239f3(0x8b))/0xb);if(_0x47f89f===_0x2ca249)break;else _0x3113ee['push'](_0x3113ee['shift']());}catch(_0x53f622){_0x3113ee['push'](_0x3113ee['shift']());}}}(a342_0x394f,0x9f826));import{mkdirSync,writeFileSync}from'node:fs';import{dirname,join}from'node:path';import{homedir}from'node:os';import{getTemplateBaseUrl}from'../utils/config.js';function getGuidesCdnUrl(){const _0x274753=a342_0x4563,_0x5cab9e=getTemplateBaseUrl();return _0x5cab9e+_0x274753(0x9f);}const CACHE_DIR=join(homedir(),a342_0x58878f(0x91),'cache');export async function fetchGuidesFromCDN(){const _0x526618=a342_0x58878f,_0x27f03f=getGuidesCdnUrl(),_0xc27b1a=await fetch(_0x27f03f,{'headers':{'Accept':'application/json'}});if(!_0xc27b1a['ok'])throw new Error(_0x526618(0x92)+_0xc27b1a[_0x526618(0xa9)]+'\x20'+_0xc27b1a[_0x526618(0x9e)]);const _0x4537b8=await _0xc27b1a[_0x526618(0xa6)]();if(!_0x4537b8[_0x526618(0x9d)]||typeof _0x4537b8[_0x526618(0x9d)]!=='object')throw new Error(_0x526618(0x9a));return _0x4537b8;}export function writeGuidesToProject(_0x3e4105,_0x278ef4,_0x12c83d=a342_0x58878f(0xa3),_0x273a33){const _0x389cd9=a342_0x58878f,_0x500a3c=join(_0x278ef4,_0x12c83d);mkdirSync(_0x500a3c,{'recursive':!![]});for(const [_0x25ef00,_0x1db369]of Object[_0x389cd9(0xa2)](_0x3e4105[_0x389cd9(0x9d)])){let _0x1a5207=_0x1db369[_0x389cd9(0x8d)];_0x1db369[_0x389cd9(0x98)]&&(_0x1a5207=appendUpdateTime(_0x1a5207,_0x1db369[_0x389cd9(0x98)])),writeFileSync(join(_0x500a3c,_0x25ef00+'.md'),_0x1a5207,_0x389cd9(0x8f));}}export function appendUpdateTime(_0x434508,_0x288346){const _0x5f3cb5=a342_0x58878f;return _0x434508=_0x434508[_0x5f3cb5(0xa7)](/\n*>更新时间:.*$/m,''),_0x434508[_0x5f3cb5(0x8c)]()+(_0x5f3cb5(0x9b)+_0x288346);}export function getSkillTemplate(_0x4e8336){const _0x4abe20=a342_0x58878f;return _0x4e8336[_0x4abe20(0xac)]?.[_0x4abe20(0x8d)]||'';}export function appendExtendContents(_0x485e93,_0xe3cb61,_0x131f54){const _0x7e4dcc=a342_0x58878f,_0x12e4f3=[];for(const [,_0x391063]of Object[_0x7e4dcc(0xa2)](_0xe3cb61[_0x7e4dcc(0x9d)])){_0x391063[_0x7e4dcc(0xa8)]&&_0x12e4f3[_0x7e4dcc(0xab)](_0x391063[_0x7e4dcc(0xa8)][_0x7e4dcc(0x8c)]());}if(_0x12e4f3[_0x7e4dcc(0x8e)]===0x0)return _0x485e93;return _0x485e93[_0x7e4dcc(0x8c)]()+'\x0a\x0a'+_0x12e4f3[_0x7e4dcc(0x96)]('\x0a\x0a')+'\x0a';}export function writeSkillFile(_0x5fa697,_0x3b8bd8,_0xf8eef7){const _0x44eef7=a342_0x58878f,_0x3d9fd8=getSkillTemplate(_0x5fa697);if(!_0x3d9fd8)throw new Error('CDN\x20data\x20is\x20missing\x20skillTemplate');const _0x37e6df=dirname(_0x3b8bd8);mkdirSync(_0x37e6df,{'recursive':!![]});let _0x593343=_0x3d9fd8[_0x44eef7(0xa7)](/\{\{IDE_NAME\}\}/g,_0xf8eef7);_0x593343=appendExtendContents(_0x593343,_0x5fa697),_0x5fa697[_0x44eef7(0xac)]['lastUpdated']&&(_0x593343=appendUpdateTime(_0x593343,_0x5fa697[_0x44eef7(0xac)][_0x44eef7(0x98)])),writeFileSync(_0x3b8bd8,_0x593343,_0x44eef7(0x8f));}function a342_0x394f(){const _0x2cb0c2=['extendContent','status','666323rsHhrD','push','skillTemplate','2683241muiZJF','trimEnd','content','length','utf-8','8545672AVMOBv','.lovrabet','CDN\x20request\x20failed:\x20','78OTMQYG','1631045AHZZHr','20MzVXHH','join','350418xWCxTf','lastUpdated','532107jmnxZO','CDN\x20returned\x20invalid\x20data','\x0a\x0a>更新时间:','3SZRiXi','guides','statusText','/skills/guides.json','map','2450876KqUCIf','entries','.lovrabet/skill/guides','title','5btiOyU','json','replace'];a342_0x394f=function(){return _0x2cb0c2;};return a342_0x394f();}function a342_0x4563(_0x4bb3a8,_0x17eba5){_0x4bb3a8=_0x4bb3a8-0x8b;const _0x394f89=a342_0x394f();let _0x456398=_0x394f89[_0x4bb3a8];return _0x456398;}export async function installGuides(_0x2c46d3){const _0x358be4=a342_0x58878f,_0x43eb1d=await fetchGuidesFromCDN();return writeGuidesToProject(_0x43eb1d,_0x2c46d3),Object['keys'](_0x43eb1d[_0x358be4(0x9d)])[_0x358be4(0x8e)];}export function getGuidesSummary(_0x556aa1){const _0x5e4a2e=a342_0x58878f;return Object[_0x5e4a2e(0xa2)](_0x556aa1['guides'])[_0x5e4a2e(0xa0)](([_0x1f4171,_0x2bff81])=>({'key':_0x1f4171,'title':_0x2bff81[_0x5e4a2e(0xa4)],'path':_0x2bff81['path']}));}
1
+ const a342_0x5c7d4d=a342_0x4da6;(function(_0x1a08d4,_0x1e0999){const _0x3ea3f8=a342_0x4da6,_0x51d6dc=_0x1a08d4();while(!![]){try{const _0x453626=-parseInt(_0x3ea3f8(0x1d5))/0x1*(-parseInt(_0x3ea3f8(0x1e8))/0x2)+-parseInt(_0x3ea3f8(0x1f3))/0x3*(parseInt(_0x3ea3f8(0x1dd))/0x4)+-parseInt(_0x3ea3f8(0x1db))/0x5*(parseInt(_0x3ea3f8(0x1ed))/0x6)+-parseInt(_0x3ea3f8(0x1e4))/0x7*(-parseInt(_0x3ea3f8(0x1d6))/0x8)+parseInt(_0x3ea3f8(0x1e6))/0x9+parseInt(_0x3ea3f8(0x1f6))/0xa+-parseInt(_0x3ea3f8(0x1ef))/0xb;if(_0x453626===_0x1e0999)break;else _0x51d6dc['push'](_0x51d6dc['shift']());}catch(_0x2a69d0){_0x51d6dc['push'](_0x51d6dc['shift']());}}}(a342_0x2025,0x94578));import{mkdirSync,writeFileSync}from'node:fs';import{dirname,join}from'node:path';import{homedir}from'node:os';import{getTemplateBaseUrl}from'../utils/config.js';function getGuidesCdnUrl(){const _0x53a6e8=a342_0x4da6,_0x33c226=getTemplateBaseUrl();return _0x33c226+_0x53a6e8(0x1fa);}const CACHE_DIR=join(homedir(),a342_0x5c7d4d(0x1d8),a342_0x5c7d4d(0x1de));export async function fetchGuidesFromCDN(){const _0x1ea9b4=a342_0x5c7d4d,_0x3b730c=getGuidesCdnUrl(),_0x154133=await fetch(_0x3b730c,{'headers':{'Accept':_0x1ea9b4(0x1d9)}});if(!_0x154133['ok'])throw new Error(_0x1ea9b4(0x1dc)+_0x154133[_0x1ea9b4(0x1e5)]+'\x20'+_0x154133[_0x1ea9b4(0x1f4)]);const _0x137b19=await _0x154133[_0x1ea9b4(0x1e1)]();if(!_0x137b19['guides']||typeof _0x137b19[_0x1ea9b4(0x1ec)]!==_0x1ea9b4(0x1e2))throw new Error(_0x1ea9b4(0x1d7));return _0x137b19;}export function writeGuidesToProject(_0x51c69b,_0x35c92b,_0x433f2d=a342_0x5c7d4d(0x1ea),_0x383984){const _0x488376=a342_0x5c7d4d,_0x204f70=join(_0x35c92b,_0x433f2d);mkdirSync(_0x204f70,{'recursive':!![]});for(const [_0x28cdc2,_0xcb43eb]of Object[_0x488376(0x1e9)](_0x51c69b['guides'])){let _0x3bdb84=_0xcb43eb[_0x488376(0x1e3)];_0xcb43eb[_0x488376(0x1ee)]&&(_0x3bdb84=appendUpdateTime(_0x3bdb84,_0xcb43eb[_0x488376(0x1ee)])),writeFileSync(join(_0x204f70,_0x28cdc2+_0x488376(0x1d4)),_0x3bdb84,_0x488376(0x1f2));}}export function appendUpdateTime(_0x1335cf,_0x41f26f){const _0x467a2a=a342_0x5c7d4d;return _0x1335cf=_0x1335cf[_0x467a2a(0x1eb)](/\n*>更新时间:.*$/m,''),_0x1335cf[_0x467a2a(0x1f8)]()+(_0x467a2a(0x1f7)+_0x41f26f);}export function getSkillTemplate(_0x5ac229){const _0x1208db=a342_0x5c7d4d;return _0x5ac229[_0x1208db(0x1e7)]?.[_0x1208db(0x1e3)]||'';}export function appendExtendContents(_0x164418,_0x54c6e5,_0x49712c){const _0x15c910=a342_0x5c7d4d,_0x1b8a29=[];for(const [,_0x4743c7]of Object[_0x15c910(0x1e9)](_0x54c6e5[_0x15c910(0x1ec)])){_0x4743c7['extendContent']&&_0x1b8a29[_0x15c910(0x1f5)](_0x4743c7[_0x15c910(0x1da)][_0x15c910(0x1f8)]());}if(_0x1b8a29['length']===0x0)return _0x164418;return _0x164418[_0x15c910(0x1f8)]()+'\x0a\x0a'+_0x1b8a29[_0x15c910(0x1f1)]('\x0a\x0a')+'\x0a';}function a342_0x4da6(_0x5464a4,_0x49f039){_0x5464a4=_0x5464a4-0x1d4;const _0x20251d=a342_0x2025();let _0x4da685=_0x20251d[_0x5464a4];return _0x4da685;}export function writeSkillFile(_0x15f7d7,_0x114dc5,_0x37865a){const _0x183a71=a342_0x5c7d4d,_0x575aa2=getSkillTemplate(_0x15f7d7);if(!_0x575aa2)throw new Error(_0x183a71(0x1f9));const _0x121fa6=dirname(_0x114dc5);mkdirSync(_0x121fa6,{'recursive':!![]});let _0x18a6a8=_0x575aa2[_0x183a71(0x1eb)](/\{\{IDE_NAME\}\}/g,_0x37865a);_0x18a6a8=appendExtendContents(_0x18a6a8,_0x15f7d7),_0x15f7d7['skillTemplate']['lastUpdated']&&(_0x18a6a8=appendUpdateTime(_0x18a6a8,_0x15f7d7[_0x183a71(0x1e7)]['lastUpdated'])),writeFileSync(_0x114dc5,_0x18a6a8,'utf-8');}function a342_0x2025(){const _0x4a63ec=['application/json','extendContent','20vNJTMw','CDN\x20request\x20failed:\x20','412JeUqto','cache','path','length','json','object','content','7TXjSai','status','8187093WBFmdH','skillTemplate','2099186PfTpRs','entries','.lovrabet/skill/guides','replace','guides','789708BeFYll','lastUpdated','9806709mDAklY','keys','join','utf-8','30309LEGdBk','statusText','push','4736810YknVWb','\x0a\x0a>更新时间:','trimEnd','CDN\x20data\x20is\x20missing\x20skillTemplate','/skills/guides.json','map','.md','1xyLdXN','5066056BiONOW','CDN\x20returned\x20invalid\x20data','.lovrabet'];a342_0x2025=function(){return _0x4a63ec;};return a342_0x2025();}export async function installGuides(_0x437bff){const _0x475263=a342_0x5c7d4d,_0xaa4ff5=await fetchGuidesFromCDN();return writeGuidesToProject(_0xaa4ff5,_0x437bff),Object[_0x475263(0x1f0)](_0xaa4ff5[_0x475263(0x1ec)])[_0x475263(0x1e0)];}export function getGuidesSummary(_0x2e9a36){const _0x510919=a342_0x5c7d4d;return Object[_0x510919(0x1e9)](_0x2e9a36['guides'])[_0x510919(0x1fb)](([_0x2645d5,_0x499e7d])=>({'key':_0x2645d5,'title':_0x499e7d['title'],'path':_0x499e7d[_0x510919(0x1df)]}));}
@@ -1 +1 @@
1
- function a343_0xd8ee(_0x130b0d,_0x47d66d){_0x130b0d=_0x130b0d-0x6d;const _0x5eaf5d=a343_0x5eaf();let _0xd8eeb5=_0x5eaf5d[_0x130b0d];return _0xd8eeb5;}(function(_0x42922,_0xfd6786){const _0x393f63=a343_0xd8ee,_0x154d25=_0x42922();while(!![]){try{const _0x30b12e=-parseInt(_0x393f63(0x72))/0x1*(-parseInt(_0x393f63(0x78))/0x2)+-parseInt(_0x393f63(0x84))/0x3*(parseInt(_0x393f63(0x86))/0x4)+-parseInt(_0x393f63(0x87))/0x5+-parseInt(_0x393f63(0x80))/0x6*(parseInt(_0x393f63(0x7c))/0x7)+parseInt(_0x393f63(0x6e))/0x8+-parseInt(_0x393f63(0x8a))/0x9+parseInt(_0x393f63(0x7a))/0xa;if(_0x30b12e===_0xfd6786)break;else _0x154d25['push'](_0x154d25['shift']());}catch(_0x590bed){_0x154d25['push'](_0x154d25['shift']());}}}(a343_0x5eaf,0x864ae));export async function httpRequest(_0x3c6212,_0x5a495d={}){const _0x1ea567=a343_0xd8ee,{timeout:timeout=0x7530,retries:retries=0x3,retryDelay:retryDelay=0x3e8,headers:headers={}}=_0x5a495d;let _0x79572a=null;for(let _0x34cebb=0x0;_0x34cebb<=retries;_0x34cebb++){try{const _0x471112=new AbortController(),_0x2b281=setTimeout(()=>_0x471112[_0x1ea567(0x71)](),timeout),_0x266c5a=await fetch(_0x3c6212,{'headers':headers,'signal':_0x471112['signal']});clearTimeout(_0x2b281);let _0x4e414f;const _0xd1611a=_0x266c5a['headers'][_0x1ea567(0x6d)](_0x1ea567(0x77));return _0xd1611a?.[_0x1ea567(0x73)](_0x1ea567(0x82))?_0x4e414f=await _0x266c5a[_0x1ea567(0x7e)]():_0x4e414f=await _0x266c5a[_0x1ea567(0x81)](),{'ok':_0x266c5a['ok'],'status':_0x266c5a[_0x1ea567(0x7b)],'statusText':_0x266c5a[_0x1ea567(0x88)],'data':_0x4e414f,'headers':_0x266c5a[_0x1ea567(0x70)],'url':_0x266c5a['url'],'text':()=>_0x266c5a[_0x1ea567(0x81)]()};}catch(_0x250f7f){_0x79572a=_0x250f7f instanceof Error?_0x250f7f:new Error(String(_0x250f7f));if(_0x34cebb===retries)break;if(shouldRetry(_0x250f7f)){console[_0x1ea567(0x7d)](_0x1ea567(0x79)+(_0x34cebb+0x1)+_0x1ea567(0x83)+retryDelay+_0x1ea567(0x7f)),await sleep(retryDelay);continue;}else break;}}throw _0x79572a||new Error('Request\x20failed');}function shouldRetry(_0x2f658f){const _0x464e0d=a343_0xd8ee;if(_0x2f658f instanceof Error){if(_0x2f658f['name']===_0x464e0d(0x76))return![];if(_0x2f658f[_0x464e0d(0x74)]===_0x464e0d(0x85)&&_0x2f658f[_0x464e0d(0x89)][_0x464e0d(0x73)](_0x464e0d(0x6f)))return!![];if(_0x2f658f[_0x464e0d(0x89)]['includes']('ECONNRESET'))return!![];if(_0x2f658f[_0x464e0d(0x89)][_0x464e0d(0x73)](_0x464e0d(0x75)))return![];}return![];}function a343_0x5eaf(){const _0x53dbc0=['75714iNCPtI','text','application/json','\x20in\x20','4737YitUyN','TypeError','2780wgnBhp','3290070cMuZiZ','statusText','message','7164846TcEgbA','get','8075368pVcRyU','fetch','headers','abort','137413QmvKrR','includes','name','ENOTFOUND','AbortError','content-type','16TllufA','*\x20Request\x20failed;\x20retry\x20','11568970wnALxF','status','91aumotE','log','json','ms...'];a343_0x5eaf=function(){return _0x53dbc0;};return a343_0x5eaf();}function sleep(_0x11bada){return new Promise(_0x10b645=>setTimeout(_0x10b645,_0x11bada));}export function validateUrl(_0x104cc3){try{return new URL(_0x104cc3),!![];}catch{return![];}}
1
+ (function(_0x2e9d2b,_0x274061){const _0x53adc9=a343_0x4848,_0x48aa31=_0x2e9d2b();while(!![]){try{const _0x1d5eb1=parseInt(_0x53adc9(0x16a))/0x1+-parseInt(_0x53adc9(0x169))/0x2*(parseInt(_0x53adc9(0x166))/0x3)+-parseInt(_0x53adc9(0x158))/0x4*(-parseInt(_0x53adc9(0x167))/0x5)+parseInt(_0x53adc9(0x15b))/0x6+-parseInt(_0x53adc9(0x162))/0x7*(-parseInt(_0x53adc9(0x15e))/0x8)+parseInt(_0x53adc9(0x153))/0x9+-parseInt(_0x53adc9(0x16b))/0xa;if(_0x1d5eb1===_0x274061)break;else _0x48aa31['push'](_0x48aa31['shift']());}catch(_0x44c18e){_0x48aa31['push'](_0x48aa31['shift']());}}}(a343_0x1b1e,0xc52f5));function a343_0x4848(_0x4354d9,_0x15f9c4){_0x4354d9=_0x4354d9-0x14e;const _0x1b1e72=a343_0x1b1e();let _0x4848ad=_0x1b1e72[_0x4354d9];return _0x4848ad;}function a343_0x1b1e(){const _0x3b9ebb=['application/json','Request\x20failed','TypeError','ECONNRESET','url','3197394QyqaGe','AbortError','\x20in\x20','content-type','statusText','5438564mInrOQ','headers','signal','8274012SdGJSR','fetch','ENOTFOUND','256VfXUeu','message','name','abort','32956UOnQfP','ms...','text','includes','76824ZiNacs','5cRFiWd','log','34IBNjLK','316970NVcolt','23185300EoIYfl'];a343_0x1b1e=function(){return _0x3b9ebb;};return a343_0x1b1e();}export async function httpRequest(_0x3a918e,_0x507fc2={}){const _0x3ea54f=a343_0x4848,{timeout:timeout=0x7530,retries:retries=0x3,retryDelay:retryDelay=0x3e8,headers:headers={}}=_0x507fc2;let _0x5aacf4=null;for(let _0x4b4221=0x0;_0x4b4221<=retries;_0x4b4221++){try{const _0x341189=new AbortController(),_0x44ae5e=setTimeout(()=>_0x341189[_0x3ea54f(0x161)](),timeout),_0x5bf984=await fetch(_0x3a918e,{'headers':headers,'signal':_0x341189[_0x3ea54f(0x15a)]});clearTimeout(_0x44ae5e);let _0x2eb8e4;const _0x2ee075=_0x5bf984[_0x3ea54f(0x159)]['get'](_0x3ea54f(0x156));return _0x2ee075?.[_0x3ea54f(0x165)](_0x3ea54f(0x14e))?_0x2eb8e4=await _0x5bf984['json']():_0x2eb8e4=await _0x5bf984[_0x3ea54f(0x164)](),{'ok':_0x5bf984['ok'],'status':_0x5bf984['status'],'statusText':_0x5bf984[_0x3ea54f(0x157)],'data':_0x2eb8e4,'headers':_0x5bf984[_0x3ea54f(0x159)],'url':_0x5bf984[_0x3ea54f(0x152)],'text':()=>_0x5bf984[_0x3ea54f(0x164)]()};}catch(_0x565d13){_0x5aacf4=_0x565d13 instanceof Error?_0x565d13:new Error(String(_0x565d13));if(_0x4b4221===retries)break;if(shouldRetry(_0x565d13)){console[_0x3ea54f(0x168)]('*\x20Request\x20failed;\x20retry\x20'+(_0x4b4221+0x1)+_0x3ea54f(0x155)+retryDelay+_0x3ea54f(0x163)),await sleep(retryDelay);continue;}else break;}}throw _0x5aacf4||new Error(_0x3ea54f(0x14f));}function shouldRetry(_0x19e760){const _0x3ec9dc=a343_0x4848;if(_0x19e760 instanceof Error){if(_0x19e760[_0x3ec9dc(0x160)]===_0x3ec9dc(0x154))return![];if(_0x19e760['name']===_0x3ec9dc(0x150)&&_0x19e760['message'][_0x3ec9dc(0x165)](_0x3ec9dc(0x15c)))return!![];if(_0x19e760['message'][_0x3ec9dc(0x165)](_0x3ec9dc(0x151)))return!![];if(_0x19e760[_0x3ec9dc(0x15f)][_0x3ec9dc(0x165)](_0x3ec9dc(0x15d)))return![];}return![];}function sleep(_0xe3de83){return new Promise(_0x5596ba=>setTimeout(_0x5596ba,_0xe3de83));}export function validateUrl(_0x307b4d){try{return new URL(_0x307b4d),!![];}catch{return![];}}
@@ -1 +1 @@
1
- (function(_0x21468d,_0x3c5c48){const _0x41cb9e=a344_0x45a1,_0x1030aa=_0x21468d();while(!![]){try{const _0x17b7a7=parseInt(_0x41cb9e(0x167))/0x1*(parseInt(_0x41cb9e(0x16e))/0x2)+parseInt(_0x41cb9e(0x16f))/0x3+-parseInt(_0x41cb9e(0x172))/0x4*(-parseInt(_0x41cb9e(0x176))/0x5)+-parseInt(_0x41cb9e(0x16a))/0x6+-parseInt(_0x41cb9e(0x175))/0x7*(-parseInt(_0x41cb9e(0x173))/0x8)+parseInt(_0x41cb9e(0x16d))/0x9+-parseInt(_0x41cb9e(0x169))/0xa;if(_0x17b7a7===_0x3c5c48)break;else _0x1030aa['push'](_0x1030aa['shift']());}catch(_0x8e217c){_0x1030aa['push'](_0x1030aa['shift']());}}}(a344_0x5e31,0x6969b));function env(_0x47df5c){return process.env[`RABETBASE_${_0x47df5c}`]||process.env[`LOVRABET_${_0x47df5c}`]||undefined;}export function isNonInteractive(_0x2da682){const _0x58fca3=a344_0x45a1;return!!(_0x2da682[_0x58fca3(0x168)]||_0x2da682['ci']||env('CI')===_0x58fca3(0x170)||process.env.CI===_0x58fca3(0x170)||!process[_0x58fca3(0x174)][_0x58fca3(0x16c)]||!isStdinRawModeSupported());}function a344_0x45a1(_0x420944,_0x12a101){_0x420944=_0x420944-0x166;const _0x5e31de=a344_0x5e31();let _0x45a145=_0x5e31de[_0x420944];return _0x45a145;}function a344_0x5e31(){const _0x419efe=['stdout','7VCWIaZ','13270qLlGXw','stdin','346YMJsMG','nonInteractive','6714110BATxiB','4166640OErmTl','setRawMode','isTTY','1004940dnlJSW','3036dOVsPb','1024290IsxpNt','true','isRaw','628kFxlYd','3221008CXJbSY'];a344_0x5e31=function(){return _0x419efe;};return a344_0x5e31();}function isStdinRawModeSupported(){const _0x2f315a=a344_0x45a1;if(!process[_0x2f315a(0x166)]['isTTY'])return![];try{const _0x26eb65=process[_0x2f315a(0x166)][_0x2f315a(0x171)];return process['stdin'][_0x2f315a(0x16b)](!![]),process[_0x2f315a(0x166)][_0x2f315a(0x16b)](_0x26eb65??![]),!![];}catch{return![];}}
1
+ (function(_0x19599c,_0x4145c9){const _0x548c8f=a344_0x57f4,_0x302228=_0x19599c();while(!![]){try{const _0x4d8c00=-parseInt(_0x548c8f(0x12a))/0x1+-parseInt(_0x548c8f(0x122))/0x2+parseInt(_0x548c8f(0x130))/0x3*(parseInt(_0x548c8f(0x123))/0x4)+parseInt(_0x548c8f(0x12d))/0x5*(-parseInt(_0x548c8f(0x126))/0x6)+parseInt(_0x548c8f(0x129))/0x7*(-parseInt(_0x548c8f(0x124))/0x8)+-parseInt(_0x548c8f(0x12e))/0x9*(-parseInt(_0x548c8f(0x120))/0xa)+-parseInt(_0x548c8f(0x121))/0xb*(-parseInt(_0x548c8f(0x12c))/0xc);if(_0x4d8c00===_0x4145c9)break;else _0x302228['push'](_0x302228['shift']());}catch(_0x21dc33){_0x302228['push'](_0x302228['shift']());}}}(a344_0x1e67,0x8474d));function a344_0x1e67(){const _0x593c59=['true','4454628WfOpsx','5mcgBkR','93429FSKRGr','stdin','472893WlCDvb','isRaw','940yGtHgG','66deaLXQ','1313474UYzqNQ','8SKiuFD','1432KvflYd','setRawMode','6204570qcCSVG','stdout','isTTY','19579vGsFEx','784354wBRATt'];a344_0x1e67=function(){return _0x593c59;};return a344_0x1e67();}function env(_0x5692c9){return process.env[`RABETBASE_${_0x5692c9}`]||process.env[`LOVRABET_${_0x5692c9}`]||undefined;}export function isNonInteractive(_0x214760){const _0x145c96=a344_0x57f4;return!!(_0x214760['nonInteractive']||_0x214760['ci']||env('CI')===_0x145c96(0x12b)||process.env.CI===_0x145c96(0x12b)||!process[_0x145c96(0x127)][_0x145c96(0x128)]||!isStdinRawModeSupported());}function a344_0x57f4(_0x5e3599,_0x5b98ad){_0x5e3599=_0x5e3599-0x11f;const _0x1e6717=a344_0x1e67();let _0x57f4da=_0x1e6717[_0x5e3599];return _0x57f4da;}function isStdinRawModeSupported(){const _0x54310d=a344_0x57f4;if(!process['stdin'][_0x54310d(0x128)])return![];try{const _0xe49f4f=process[_0x54310d(0x12f)][_0x54310d(0x11f)];return process['stdin']['setRawMode'](!![]),process['stdin'][_0x54310d(0x125)](_0xe49f4f??![]),!![];}catch{return![];}}
@@ -1 +1 @@
1
- const a345_0x51c9fe=a345_0x46e1;function a345_0x288b(){const _0x5db7d4=['error','File','split','details','warn','8918872eYAnmb','readFileSync','command','winstonLogger','green','clearLogs','duration','25eRQAnS','logFilePath','filter','message','213191pgmwuu','clear','569408VeTQCT','existsSync','689661PZBrgt','join','combine','info','rawCommand','addColors','readLogs','success','printf','Failed:\x20','Starting:\x20','481134NoXgUo','createLogger','log','dirname','writeFileSync','initWinstonLogger','now','233908BiJrZW','logTask','1449028mXPezB','getWinstonInstance','errors','mkdirSync','trim','map','yellow','parse','transports','currentRawCommand','timestamp','Completed:\x20','setRawCommand','stringify','.lovrabet.log','format','utf8'];a345_0x288b=function(){return _0x5db7d4;};return a345_0x288b();}(function(_0x2fa785,_0x6671a1){const _0x5b7f7e=a345_0x46e1,_0x1bf926=_0x2fa785();while(!![]){try{const _0x4d48a2=parseInt(_0x5b7f7e(0xee))/0x1+parseInt(_0x5b7f7e(0xf0))/0x2+parseInt(_0x5b7f7e(0xf2))/0x3+parseInt(_0x5b7f7e(0x104))/0x4*(parseInt(_0x5b7f7e(0xea))/0x5)+parseInt(_0x5b7f7e(0xfd))/0x6+parseInt(_0x5b7f7e(0x106))/0x7+-parseInt(_0x5b7f7e(0xe3))/0x8;if(_0x4d48a2===_0x6671a1)break;else _0x1bf926['push'](_0x1bf926['shift']());}catch(_0x388638){_0x1bf926['push'](_0x1bf926['shift']());}}}(a345_0x288b,0x2eff5));function a345_0x46e1(_0xe93a07,_0x58007){_0xe93a07=_0xe93a07-0xe0;const _0x288bb4=a345_0x288b();let _0x46e189=_0x288bb4[_0xe93a07];return _0x46e189;}import a345_0x158ce1 from'winston';import a345_0x2a0059 from'node:fs';import a345_0x2fedb6 from'node:path';class Logger{[a345_0x51c9fe(0xe6)];[a345_0x51c9fe(0xeb)];[a345_0x51c9fe(0x10f)]='';constructor(){const _0x599c01=a345_0x51c9fe;this[_0x599c01(0xeb)]='';}[a345_0x51c9fe(0x112)](_0x72da20){const _0x57c4ca=a345_0x51c9fe;this[_0x57c4ca(0x10f)]=_0x72da20;}[a345_0x51c9fe(0x102)](){const _0xeadbb6=a345_0x51c9fe,_0x1947cc=a345_0x2fedb6[_0xeadbb6(0x100)](this[_0xeadbb6(0xeb)]);!a345_0x2a0059[_0xeadbb6(0xf1)](_0x1947cc)&&a345_0x2a0059[_0xeadbb6(0x109)](_0x1947cc,{'recursive':!![]});const _0x29e28c=a345_0x158ce1[_0xeadbb6(0x115)][_0xeadbb6(0xf4)](a345_0x158ce1['format'][_0xeadbb6(0x110)](),a345_0x158ce1[_0xeadbb6(0x115)][_0xeadbb6(0x108)]({'stack':!![]}),a345_0x158ce1[_0xeadbb6(0x115)][_0xeadbb6(0xfa)](_0x581358=>{const _0x587083=_0xeadbb6,_0x4cd786={'timestamp':_0x581358[_0x587083(0x110)]||new Date()['toISOString'](),'level':_0x581358['level']||'info','command':_0x581358[_0x587083(0xe5)]||'unknown','rawCommand':_0x581358[_0x587083(0xf6)]||this['currentRawCommand']||undefined,'message':_0x581358[_0x587083(0xed)]||'','duration':_0x581358[_0x587083(0xe9)]||undefined,'details':_0x581358[_0x587083(0xe1)]||undefined};return JSON[_0x587083(0x113)](_0x4cd786);}));this[_0xeadbb6(0xe6)]=a345_0x158ce1[_0xeadbb6(0xfe)]({'level':'info','format':_0x29e28c,'transports':[new a345_0x158ce1[(_0xeadbb6(0x10e))][(_0xeadbb6(0x118))]({'filename':this[_0xeadbb6(0xeb)],'level':_0xeadbb6(0xf5)})],'silent':![]}),a345_0x158ce1[_0xeadbb6(0xf7)]({'success':_0xeadbb6(0xe7),'error':'red','warn':_0xeadbb6(0x10c),'info':'blue'});}['setLogPath'](_0x39f304){const _0x570f3f=a345_0x51c9fe;this['logFilePath']=a345_0x2fedb6[_0x570f3f(0xf3)](_0x39f304,_0x570f3f(0x114)),this[_0x570f3f(0xe6)]&&this[_0x570f3f(0xe6)][_0x570f3f(0xef)](),this[_0x570f3f(0x102)]();}[a345_0x51c9fe(0xf5)](_0x466438,_0x35b810,_0x193269){const _0x128141=a345_0x51c9fe;if(!this[_0x128141(0xeb)]||!this[_0x128141(0xe6)])return;this[_0x128141(0xe6)]['info'](_0x35b810,{'command':_0x466438,'details':_0x193269});}[a345_0x51c9fe(0xf9)](_0x162820,_0x117b51,_0xd36b9e,_0x322349){const _0x557f14=a345_0x51c9fe;if(!this[_0x557f14(0xeb)]||!this['winstonLogger'])return;this[_0x557f14(0xe6)][_0x557f14(0xff)](_0x557f14(0xf5),_0x117b51,{'level':_0x557f14(0xf9),'command':_0x162820,'duration':_0xd36b9e,'details':_0x322349});}['error'](_0x1275b0,_0x354cec,_0x3c4799){const _0x5bce4a=a345_0x51c9fe;if(!this[_0x5bce4a(0xeb)]||!this['winstonLogger'])return;this['winstonLogger'][_0x5bce4a(0x117)](_0x354cec,{'command':_0x1275b0,'details':_0x3c4799});}[a345_0x51c9fe(0xe2)](_0x4ddaff,_0x585bd9,_0x66fc27){const _0x5a5f84=a345_0x51c9fe;if(!this['logFilePath']||!this[_0x5a5f84(0xe6)])return;this[_0x5a5f84(0xe6)][_0x5a5f84(0xe2)](_0x585bd9,{'command':_0x4ddaff,'details':_0x66fc27});}async[a345_0x51c9fe(0x105)](_0x4caaf1,_0x353514,_0x5a68f2){const _0x46dedd=a345_0x51c9fe,_0x2fd600=Date['now']();this[_0x46dedd(0xf5)](_0x4caaf1,_0x46dedd(0xfc)+_0x353514);try{const _0x2ba1a1=await _0x5a68f2(),_0x53dc93=Date[_0x46dedd(0x103)]()-_0x2fd600;return this[_0x46dedd(0xf9)](_0x4caaf1,_0x46dedd(0x111)+_0x353514,_0x53dc93),_0x2ba1a1;}catch(_0x4083e1){const _0x4268b7=Date[_0x46dedd(0x103)]()-_0x2fd600;this['error'](_0x4caaf1,_0x46dedd(0xfb)+_0x353514,{'error':_0x4083e1 instanceof Error?_0x4083e1[_0x46dedd(0xed)]:String(_0x4083e1),'duration':_0x4268b7});throw _0x4083e1;}}[a345_0x51c9fe(0xf8)](){const _0x4d2011=a345_0x51c9fe;try{if(!a345_0x2a0059['existsSync'](this[_0x4d2011(0xeb)]))return[];const _0xa29306=a345_0x2a0059[_0x4d2011(0xe4)](this[_0x4d2011(0xeb)],_0x4d2011(0x116));return _0xa29306[_0x4d2011(0xe0)]('\x0a')[_0x4d2011(0xec)](_0x2a3b23=>_0x2a3b23[_0x4d2011(0x10a)]())[_0x4d2011(0x10b)](_0x3a6754=>JSON[_0x4d2011(0x10d)](_0x3a6754));}catch(_0x5d375f){return console[_0x4d2011(0xe2)]('Failed\x20to\x20read\x20logs:',_0x5d375f),[];}}[a345_0x51c9fe(0xe8)](){const _0x1b6a3c=a345_0x51c9fe;try{a345_0x2a0059['existsSync'](this[_0x1b6a3c(0xeb)])&&a345_0x2a0059[_0x1b6a3c(0x101)](this[_0x1b6a3c(0xeb)],'',_0x1b6a3c(0x116));}catch(_0x2cdc1b){console[_0x1b6a3c(0xe2)]('Failed\x20to\x20clear\x20logs:',_0x2cdc1b);}}[a345_0x51c9fe(0x107)](){const _0x4348cd=a345_0x51c9fe;return this[_0x4348cd(0xe6)];}}export const logger=new Logger();
1
+ const a345_0x30a971=a345_0x573f;(function(_0xb55676,_0x3fc97b){const _0x40cffc=a345_0x573f,_0x7f079b=_0xb55676();while(!![]){try{const _0x568af1=parseInt(_0x40cffc(0x1ee))/0x1+parseInt(_0x40cffc(0x20c))/0x2*(-parseInt(_0x40cffc(0x208))/0x3)+-parseInt(_0x40cffc(0x1fe))/0x4+-parseInt(_0x40cffc(0x20b))/0x5+-parseInt(_0x40cffc(0x212))/0x6*(parseInt(_0x40cffc(0x217))/0x7)+-parseInt(_0x40cffc(0x214))/0x8+parseInt(_0x40cffc(0x210))/0x9;if(_0x568af1===_0x3fc97b)break;else _0x7f079b['push'](_0x7f079b['shift']());}catch(_0x205814){_0x7f079b['push'](_0x7f079b['shift']());}}}(a345_0x4501,0x4630c));function a345_0x4501(){const _0x3d1408=['setLogPath','Completed:\x20','createLogger','transports','blue','toISOString','stringify','command','red','114799kFDikt','unknown','initWinstonLogger','currentRawCommand','clear','trim','dirname','errors','success','File','parse','format','details','error','rawCommand','warn','305212UwrzDh','Failed:\x20','existsSync','timestamp','winstonLogger','logFilePath','logTask','message','Starting:\x20','info','1223724zgamIq','Failed\x20to\x20read\x20logs:','filter','2362080zVUvsz','2dHbGLt','getWinstonInstance','duration','Failed\x20to\x20clear\x20logs:','14531211SXSovC','mkdirSync','49902TzKNUm','yellow','89456thurMY','printf','clearLogs','399ZMJmWG','writeFileSync','combine','now','utf8','readLogs','split'];a345_0x4501=function(){return _0x3d1408;};return a345_0x4501();}import a345_0x3f169d from'winston';import a345_0x209e01 from'node:fs';import a345_0x1823a6 from'node:path';function a345_0x573f(_0x155bf2,_0x2641f7){_0x155bf2=_0x155bf2-0x1df;const _0x450199=a345_0x4501();let _0x573f17=_0x450199[_0x155bf2];return _0x573f17;}class Logger{[a345_0x30a971(0x202)];[a345_0x30a971(0x203)];['currentRawCommand']='';constructor(){const _0x3c082f=a345_0x30a971;this[_0x3c082f(0x203)]='';}['setRawCommand'](_0x2be72b){const _0x4c7d69=a345_0x30a971;this[_0x4c7d69(0x1f1)]=_0x2be72b;}[a345_0x30a971(0x1f0)](){const _0x1413fb=a345_0x30a971,_0x4180a3=a345_0x1823a6[_0x1413fb(0x1f4)](this[_0x1413fb(0x203)]);!a345_0x209e01[_0x1413fb(0x200)](_0x4180a3)&&a345_0x209e01[_0x1413fb(0x211)](_0x4180a3,{'recursive':!![]});const _0x22dd49=a345_0x3f169d[_0x1413fb(0x1f9)][_0x1413fb(0x1e0)](a345_0x3f169d[_0x1413fb(0x1f9)][_0x1413fb(0x201)](),a345_0x3f169d['format'][_0x1413fb(0x1f5)]({'stack':!![]}),a345_0x3f169d[_0x1413fb(0x1f9)][_0x1413fb(0x215)](_0x5657e8=>{const _0x226cc6=_0x1413fb,_0x51e2a1={'timestamp':_0x5657e8[_0x226cc6(0x201)]||new Date()[_0x226cc6(0x1ea)](),'level':_0x5657e8['level']||_0x226cc6(0x207),'command':_0x5657e8[_0x226cc6(0x1ec)]||_0x226cc6(0x1ef),'rawCommand':_0x5657e8[_0x226cc6(0x1fc)]||this[_0x226cc6(0x1f1)]||undefined,'message':_0x5657e8['message']||'','duration':_0x5657e8[_0x226cc6(0x20e)]||undefined,'details':_0x5657e8[_0x226cc6(0x1fa)]||undefined};return JSON[_0x226cc6(0x1eb)](_0x51e2a1);}));this[_0x1413fb(0x202)]=a345_0x3f169d[_0x1413fb(0x1e7)]({'level':_0x1413fb(0x207),'format':_0x22dd49,'transports':[new a345_0x3f169d[(_0x1413fb(0x1e8))][(_0x1413fb(0x1f7))]({'filename':this[_0x1413fb(0x203)],'level':'info'})],'silent':![]}),a345_0x3f169d['addColors']({'success':'green','error':_0x1413fb(0x1ed),'warn':_0x1413fb(0x213),'info':_0x1413fb(0x1e9)});}[a345_0x30a971(0x1e5)](_0x7e9f00){const _0x27ac3b=a345_0x30a971;this[_0x27ac3b(0x203)]=a345_0x1823a6['join'](_0x7e9f00,'.lovrabet.log'),this[_0x27ac3b(0x202)]&&this[_0x27ac3b(0x202)][_0x27ac3b(0x1f2)](),this[_0x27ac3b(0x1f0)]();}['info'](_0xf010e6,_0x3d45ad,_0x4dc91b){const _0x1a9516=a345_0x30a971;if(!this[_0x1a9516(0x203)]||!this['winstonLogger'])return;this[_0x1a9516(0x202)][_0x1a9516(0x207)](_0x3d45ad,{'command':_0xf010e6,'details':_0x4dc91b});}[a345_0x30a971(0x1f6)](_0x40e388,_0x2eef94,_0x1b36df,_0x5ca618){const _0x56319d=a345_0x30a971;if(!this['logFilePath']||!this[_0x56319d(0x202)])return;this[_0x56319d(0x202)]['log'](_0x56319d(0x207),_0x2eef94,{'level':_0x56319d(0x1f6),'command':_0x40e388,'duration':_0x1b36df,'details':_0x5ca618});}['error'](_0x18d754,_0x169b6c,_0x5a90f3){if(!this['logFilePath']||!this['winstonLogger'])return;this['winstonLogger']['error'](_0x169b6c,{'command':_0x18d754,'details':_0x5a90f3});}['warn'](_0x1bb115,_0x15eae0,_0x2d40d2){const _0x5385df=a345_0x30a971;if(!this[_0x5385df(0x203)]||!this[_0x5385df(0x202)])return;this[_0x5385df(0x202)][_0x5385df(0x1fd)](_0x15eae0,{'command':_0x1bb115,'details':_0x2d40d2});}async[a345_0x30a971(0x204)](_0x3fc379,_0x4bd4ce,_0x2cf2e2){const _0x201b35=a345_0x30a971,_0x17d6a2=Date[_0x201b35(0x1e1)]();this[_0x201b35(0x207)](_0x3fc379,_0x201b35(0x206)+_0x4bd4ce);try{const _0x567713=await _0x2cf2e2(),_0x17794d=Date[_0x201b35(0x1e1)]()-_0x17d6a2;return this[_0x201b35(0x1f6)](_0x3fc379,_0x201b35(0x1e6)+_0x4bd4ce,_0x17794d),_0x567713;}catch(_0x37a373){const _0x19bd8b=Date['now']()-_0x17d6a2;this[_0x201b35(0x1fb)](_0x3fc379,_0x201b35(0x1ff)+_0x4bd4ce,{'error':_0x37a373 instanceof Error?_0x37a373[_0x201b35(0x205)]:String(_0x37a373),'duration':_0x19bd8b});throw _0x37a373;}}[a345_0x30a971(0x1e3)](){const _0x288990=a345_0x30a971;try{if(!a345_0x209e01['existsSync'](this[_0x288990(0x203)]))return[];const _0x1bbf8a=a345_0x209e01['readFileSync'](this[_0x288990(0x203)],_0x288990(0x1e2));return _0x1bbf8a[_0x288990(0x1e4)]('\x0a')[_0x288990(0x20a)](_0x40d02f=>_0x40d02f[_0x288990(0x1f3)]())['map'](_0x4eafb4=>JSON[_0x288990(0x1f8)](_0x4eafb4));}catch(_0x296fd3){return console['warn'](_0x288990(0x209),_0x296fd3),[];}}[a345_0x30a971(0x216)](){const _0x564e5e=a345_0x30a971;try{a345_0x209e01[_0x564e5e(0x200)](this[_0x564e5e(0x203)])&&a345_0x209e01[_0x564e5e(0x1df)](this['logFilePath'],'',_0x564e5e(0x1e2));}catch(_0x370206){console[_0x564e5e(0x1fd)](_0x564e5e(0x20f),_0x370206);}}[a345_0x30a971(0x20d)](){return this['winstonLogger'];}}export const logger=new Logger();
@@ -1 +1 @@
1
- (function(_0x2abf10,_0x296788){const _0x1fd82d=a346_0x48c5,_0x2c87e5=_0x2abf10();while(!![]){try{const _0x4bc610=parseInt(_0x1fd82d(0x1e4))/0x1*(-parseInt(_0x1fd82d(0x1d8))/0x2)+-parseInt(_0x1fd82d(0x1dd))/0x3*(-parseInt(_0x1fd82d(0x1df))/0x4)+parseInt(_0x1fd82d(0x1da))/0x5+parseInt(_0x1fd82d(0x1e3))/0x6+-parseInt(_0x1fd82d(0x1e2))/0x7+parseInt(_0x1fd82d(0x1e1))/0x8+-parseInt(_0x1fd82d(0x1d9))/0x9;if(_0x4bc610===_0x296788)break;else _0x2c87e5['push'](_0x2c87e5['shift']());}catch(_0x5be161){_0x2c87e5['push'](_0x2c87e5['shift']());}}}(a346_0x4ae9,0x47e55));function a346_0x48c5(_0x4ed6d7,_0x1bec1a){_0x4ed6d7=_0x4ed6d7-0x1d6;const _0x4ae97b=a346_0x4ae9();let _0x48c573=_0x4ae97b[_0x4ed6d7];return _0x48c573;}import{CliErrors}from'../errors.js';export function parseJsonParams(_0x162837){const _0xe8eafb=a346_0x48c5;if(!_0x162837)return undefined;let _0x5cece9;try{_0x5cece9=JSON[_0xe8eafb(0x1e0)](_0x162837);}catch{throw CliErrors[_0xe8eafb(0x1d6)](_0xe8eafb(0x1e5)+_0x162837);}if(!_0x5cece9||typeof _0x5cece9!==_0xe8eafb(0x1dc)||Array[_0xe8eafb(0x1de)](_0x5cece9))throw CliErrors[_0xe8eafb(0x1d6)](_0xe8eafb(0x1db),_0xe8eafb(0x1d7));return _0x5cece9;}function a346_0x4ae9(){const _0x22bfaf=['Example:\x20--params\x20\x27{\x22id\x22:123}\x27','6qdswkV','1720053tqazWk','1574260qONAhi','--params\x20must\x20be\x20a\x20JSON\x20object','object','102369UzhdRN','isArray','44vveAuR','parse','3515448LKRORb','1349677pVfjvn','483756fSkJTN','177283OIpnOq','Invalid\x20JSON\x20for\x20--params:\x20','validation'];a346_0x4ae9=function(){return _0x22bfaf;};return a346_0x4ae9();}
1
+ (function(_0x45b770,_0x59d1e3){const _0x4ea76f=a346_0x3831,_0x284fef=_0x45b770();while(!![]){try{const _0x4d64b2=parseInt(_0x4ea76f(0x151))/0x1+-parseInt(_0x4ea76f(0x158))/0x2*(-parseInt(_0x4ea76f(0x155))/0x3)+-parseInt(_0x4ea76f(0x152))/0x4*(parseInt(_0x4ea76f(0x14b))/0x5)+parseInt(_0x4ea76f(0x157))/0x6+-parseInt(_0x4ea76f(0x14d))/0x7*(-parseInt(_0x4ea76f(0x14e))/0x8)+parseInt(_0x4ea76f(0x14f))/0x9+-parseInt(_0x4ea76f(0x154))/0xa*(parseInt(_0x4ea76f(0x14c))/0xb);if(_0x4d64b2===_0x59d1e3)break;else _0x284fef['push'](_0x284fef['shift']());}catch(_0x577d5e){_0x284fef['push'](_0x284fef['shift']());}}}(a346_0x1352,0xcba44));function a346_0x1352(){const _0x4f2da6=['184JGoRxj','6292305WRDsRr','Invalid\x20JSON\x20for\x20--params:\x20','222600hdTSJN','36TtieNo','isArray','3102370jHtdSs','24DjZxTL','validation','2349888hcscZT','347570xpZtVU','925105doZbxY','11cGrJcH','32221xinyLn'];a346_0x1352=function(){return _0x4f2da6;};return a346_0x1352();}function a346_0x3831(_0x529c34,_0x58d78a){_0x529c34=_0x529c34-0x14b;const _0x13522a=a346_0x1352();let _0x3831ac=_0x13522a[_0x529c34];return _0x3831ac;}import{CliErrors}from'../errors.js';export function parseJsonParams(_0x55c752){const _0x17a5c1=a346_0x3831;if(!_0x55c752)return undefined;let _0x3425f1;try{_0x3425f1=JSON['parse'](_0x55c752);}catch{throw CliErrors[_0x17a5c1(0x156)](_0x17a5c1(0x150)+_0x55c752);}if(!_0x3425f1||typeof _0x3425f1!=='object'||Array[_0x17a5c1(0x153)](_0x3425f1))throw CliErrors[_0x17a5c1(0x156)]('--params\x20must\x20be\x20a\x20JSON\x20object','Example:\x20--params\x20\x27{\x22id\x22:123}\x27');return _0x3425f1;}
@@ -1 +1 @@
1
- const a347_0x2c578e=a347_0xf3e6;(function(_0x5ea098,_0x372211){const _0x52d134=a347_0xf3e6,_0x42f46e=_0x5ea098();while(!![]){try{const _0x5cecbc=-parseInt(_0x52d134(0xe9))/0x1*(parseInt(_0x52d134(0xe1))/0x2)+parseInt(_0x52d134(0xe0))/0x3*(-parseInt(_0x52d134(0xe2))/0x4)+parseInt(_0x52d134(0xdf))/0x5*(parseInt(_0x52d134(0xe6))/0x6)+parseInt(_0x52d134(0xea))/0x7*(parseInt(_0x52d134(0xe3))/0x8)+-parseInt(_0x52d134(0xeb))/0x9+parseInt(_0x52d134(0xe4))/0xa+parseInt(_0x52d134(0xe8))/0xb;if(_0x5cecbc===_0x372211)break;else _0x42f46e['push'](_0x42f46e['shift']());}catch(_0x4e081b){_0x42f46e['push'](_0x42f46e['shift']());}}}(a347_0x4dcf,0x38705));function a347_0x4dcf(){const _0xd11c6=['5815095gDpoBU','3AbeffG','2293179JNaLap','3798558iXwQJI','.cmd','169460hOpFEm','24bVlGXR','302558xXKqAv','141008XKucWP','8PrTeXJ','2278180rxribi','platform','54mUttSD','win32'];a347_0x4dcf=function(){return _0xd11c6;};return a347_0x4dcf();}function a347_0xf3e6(_0x2d1877,_0x12318a){_0x2d1877=_0x2d1877-0xdf;const _0x4dcfae=a347_0x4dcf();let _0xf3e62e=_0x4dcfae[_0x2d1877];return _0xf3e62e;}export const isWindows=process[a347_0x2c578e(0xe5)]===a347_0x2c578e(0xe7);export function resolveNpmBin(_0x2955d2){const _0x5ad202=a347_0x2c578e;return isWindows?_0x2955d2+_0x5ad202(0xec):_0x2955d2;}
1
+ function a347_0x32bd(_0x1004b1,_0x11f5a9){_0x1004b1=_0x1004b1-0x162;const _0x5b046c=a347_0x5b04();let _0x32bdc2=_0x5b046c[_0x1004b1];return _0x32bdc2;}const a347_0x3c19d1=a347_0x32bd;(function(_0x1abcd8,_0x380c1b){const _0x46b7bc=a347_0x32bd,_0x244065=_0x1abcd8();while(!![]){try{const _0x3deb2b=-parseInt(_0x46b7bc(0x16a))/0x1*(parseInt(_0x46b7bc(0x167))/0x2)+parseInt(_0x46b7bc(0x166))/0x3*(-parseInt(_0x46b7bc(0x16b))/0x4)+-parseInt(_0x46b7bc(0x16e))/0x5+parseInt(_0x46b7bc(0x16c))/0x6+-parseInt(_0x46b7bc(0x169))/0x7+-parseInt(_0x46b7bc(0x165))/0x8*(-parseInt(_0x46b7bc(0x164))/0x9)+parseInt(_0x46b7bc(0x162))/0xa*(parseInt(_0x46b7bc(0x168))/0xb);if(_0x3deb2b===_0x380c1b)break;else _0x244065['push'](_0x244065['shift']());}catch(_0x4eada4){_0x244065['push'](_0x244065['shift']());}}}(a347_0x5b04,0x60831));export const isWindows=process[a347_0x3c19d1(0x163)]===a347_0x3c19d1(0x16d);export function resolveNpmBin(_0x394de4){const _0x2e0cdd=a347_0x3c19d1;return isWindows?_0x394de4+_0x2e0cdd(0x16f):_0x394de4;}function a347_0x5b04(){const _0x3d6870=['33MkynSs','1906dDxpSU','11fVxHdo','97146BmrclF','263CWyzgD','96752JdjSET','4726038MdiuZb','win32','2149600AflGQl','.cmd','1530430eZqIWV','platform','18ORhVKt','1660408NnbNnp'];a347_0x5b04=function(){return _0x3d6870;};return a347_0x5b04();}
@@ -1 +1 @@
1
- export function sleep(_0x8a76e5){return new Promise(_0x1ef6e4=>setTimeout(_0x1ef6e4,_0x8a76e5));}
1
+ export function sleep(_0x5d33ca){return new Promise(_0x53fe3e=>setTimeout(_0x53fe3e,_0x5d33ca));}
@@ -1 +1 @@
1
- function a349_0x3d8b(){const _0x5e1c01=['replaceApiContent','copyFile','getMinutes','map','formatLocalTimestamp','.scss','.tsx','getSeconds','message','readFile','.css','toUpperCase','push','alias:\x20\x22','6169572rPsvkC','toComponentName','getDate','2227897oVYxIB','.tpl','readdir','writeFile','10HTazRY','getHours','2745556iqOOPe','endsWith','pad','getFullYear','toDisplayTitle','5621016VYQzYO','YourModel','.md','8hwPYII','.json','mkdir','.js','isDirectory','join','24458hNDOWF','split','replace','processDirectory','error','128ogqJRO','toLowerCase','charAt','Template\x20content\x20replacement\x20failed','replaceContent','api','padStart','tableName:\x20\x22','3213200teidbC','sdk-config','slice','name:\x20\x22','5690313APwisu','pop','getMonth','tableName','now','alias','default','utf8','name','toISOString','Starting\x20template\x20content\x20replacement','LOVRABET','\x0a\x20\x20\x20\x20{\x20','processFile','template','promises','datasetCode','\x20},'];a349_0x3d8b=function(){return _0x5e1c01;};return a349_0x3d8b();}const a349_0x26c0a8=a349_0x183f;(function(_0x5aa4fe,_0x1a8be1){const _0x3627c1=a349_0x183f,_0x2415f8=_0x5aa4fe();while(!![]){try{const _0x5c0692=-parseInt(_0x3627c1(0xfa))/0x1*(-parseInt(_0x3627c1(0xf5))/0x2)+-parseInt(_0x3627c1(0xec))/0x3+parseInt(_0x3627c1(0xe7))/0x4+parseInt(_0x3627c1(0x102))/0x5+-parseInt(_0x3627c1(0xde))/0x6+parseInt(_0x3627c1(0xe1))/0x7*(parseInt(_0x3627c1(0xef))/0x8)+parseInt(_0x3627c1(0x106))/0x9*(parseInt(_0x3627c1(0xe5))/0xa);if(_0x5c0692===_0x1a8be1)break;else _0x2415f8['push'](_0x2415f8['shift']());}catch(_0x4fa30c){_0x2415f8['push'](_0x2415f8['shift']());}}}(a349_0x3d8b,0xe6357));import a349_0x4db5c9 from'node:fs';import a349_0x5440b7 from'node:path';import{logger}from'../utils/logger.js';import{getCliVersion}from'../utils/version.js';function a349_0x183f(_0x5f17aa,_0x148430){_0x5f17aa=_0x5f17aa-0xd1;const _0x3d8be7=a349_0x3d8b();let _0x183fca=_0x3d8be7[_0x5f17aa];return _0x183fca;}const CLI_VERSION=getCliVersion();export class TemplateReplacer{static[a349_0x26c0a8(0xe9)](_0x25c42d){const _0xc65851=a349_0x26c0a8;return String(_0x25c42d)[_0xc65851(0x100)](0x2,'0');}static[a349_0x26c0a8(0xd4)](_0x53128f){const _0x427fa1=a349_0x26c0a8,_0x148104=_0x53128f[_0x427fa1(0xea)](),_0x52bbf6=this[_0x427fa1(0xe9)](_0x53128f[_0x427fa1(0x108)]()+0x1),_0x384504=this[_0x427fa1(0xe9)](_0x53128f[_0x427fa1(0xe0)]()),_0x5f514a=this['pad'](_0x53128f[_0x427fa1(0xe6)]()),_0x135a73=this[_0x427fa1(0xe9)](_0x53128f[_0x427fa1(0xd2)]()),_0x4a3ad2=this['pad'](_0x53128f[_0x427fa1(0xd7)]());return{'createdAt':_0x148104+'-'+_0x52bbf6+'-'+_0x384504+'\x20'+_0x5f514a+':'+_0x135a73+':'+_0x4a3ad2,'createdDate':_0x148104+'-'+_0x52bbf6+'-'+_0x384504,'createdTime':_0x5f514a+':'+_0x135a73+':'+_0x4a3ad2};}static[a349_0x26c0a8(0xdf)](_0x4e4031){const _0x42e48b=a349_0x26c0a8,_0x444456=_0x4e4031[_0x42e48b(0xf6)]('/')[_0x42e48b(0x107)]()||_0x4e4031;return _0x444456[_0x42e48b(0xf6)]('-')['map'](_0x164506=>_0x164506['charAt'](0x0)[_0x42e48b(0xdb)]()+_0x164506[_0x42e48b(0x104)](0x1)[_0x42e48b(0xfb)]())[_0x42e48b(0xf4)]('');}static[a349_0x26c0a8(0xeb)](_0xc0b481){const _0x226a2f=a349_0x26c0a8,_0x41a675=_0xc0b481[_0x226a2f(0xf6)]('/')[_0x226a2f(0x107)]()||_0xc0b481;return _0x41a675[_0x226a2f(0xf6)]('-')[_0x226a2f(0xd3)](_0x37264e=>_0x37264e[_0x226a2f(0xfc)](0x0)[_0x226a2f(0xdb)]()+_0x37264e[_0x226a2f(0x104)](0x1)[_0x226a2f(0xfb)]())['join']('\x20');}static[a349_0x26c0a8(0xfe)](_0x23449c,_0x172ba7,_0x416746){const _0xfdccc3=a349_0x26c0a8,_0x2894b0=this['toComponentName'](_0x172ba7),_0x41ebd6=this['toDisplayTitle'](_0x172ba7),{createdAt:_0x46dc2f,createdDate:_0x476cc1,createdTime:_0x12d165}=this[_0xfdccc3(0xd4)](new Date());let _0x8fec54=_0x23449c[_0xfdccc3(0xf7)](/\{CliVersion\}/g,CLI_VERSION)[_0xfdccc3(0xf7)](/\{ComponentName\}/g,_0x2894b0)[_0xfdccc3(0xf7)](/\{DisplayTitle\}/g,_0x41ebd6)['replace'](/\{PageName\}/g,_0x172ba7)[_0xfdccc3(0xf7)](/\{TemplateName\}/g,_0x416746)[_0xfdccc3(0xf7)](/\{CreatedAt\}/g,_0x46dc2f)[_0xfdccc3(0xf7)](/\{CreatedDate\}/g,_0x476cc1)[_0xfdccc3(0xf7)](/\{CreatedTime\}/g,_0x12d165);return _0x8fec54;}static[a349_0x26c0a8(0x118)](_0x5a1f45,_0x278f55,_0x28da4e,_0x3901b4,_0x1c3a74,_0x6da68b,_0x486007,_0x2af2aa,_0x1fd594){const _0x2c3cfa=a349_0x26c0a8,_0x1fb85c=new Date(),_0x51ef6c=_0x1fb85c[_0x2c3cfa(0x10f)](),_0x5b9c27=_0x28da4e[_0x2c3cfa(0xd3)](_0x58647c=>{const _0x818d4=_0x2c3cfa,_0x5b56a8=['datasetCode:\x20\x22'+_0x58647c[_0x818d4(0x116)]+'\x22',_0x818d4(0x101)+_0x58647c[_0x818d4(0x109)]+'\x22',_0x818d4(0x105)+_0x58647c[_0x818d4(0x10e)]+'\x22'];return _0x58647c['alias']&&_0x5b56a8[_0x818d4(0xdc)](_0x818d4(0xdd)+_0x58647c[_0x818d4(0x10b)]+'\x22'),_0x818d4(0x112)+_0x5b56a8[_0x818d4(0xf4)](',\x20')+_0x818d4(0x117);})['join'](''),_0x35521d=_0x3901b4||_0x28da4e[0x0]?.['alias']||_0x2c3cfa(0xed);let _0x167b9a=_0x5a1f45[_0x2c3cfa(0xf7)](/\{AppCode\}/g,_0x278f55)[_0x2c3cfa(0xf7)](/\{ModelConfigs\}/g,_0x5b9c27)['replace'](/\{ExampleModelName\}/g,_0x35521d)[_0x2c3cfa(0xf7)](/\{ApiFileName\}/g,_0x1c3a74||_0x2c3cfa(0xff))[_0x2c3cfa(0xf7)](/\{ConfigName\}/g,_0x6da68b||_0x2c3cfa(0x10c))[_0x2c3cfa(0xf7)](/\{ClientConfigParam\}/g,_0x486007||'')[_0x2c3cfa(0xf7)](/\{SdkConfigFileName\}/g,_0x1fd594||_0x2c3cfa(0x103))[_0x2c3cfa(0xf7)](/\{VarPrefix\}/g,_0x2af2aa||_0x2c3cfa(0x111))[_0x2c3cfa(0xf7)](/\{CreatedAt\}/g,_0x51ef6c);return _0x167b9a;}static async['processTemplate'](_0x47330f,_0x1238c4,_0x14e444,_0x3ee316,_0x657738=!![]){const _0x2f7e87=a349_0x26c0a8,_0x1ec7a1=Date[_0x2f7e87(0x10a)]();try{_0x657738&&logger['info'](_0x2f7e87(0x114),_0x2f7e87(0x110),{'templatePath':_0x47330f,'targetPath':_0x1238c4,'pageName':_0x14e444,'templateName':_0x3ee316});await a349_0x4db5c9[_0x2f7e87(0x115)][_0x2f7e87(0xf1)](_0x1238c4,{'recursive':!![]}),await this[_0x2f7e87(0xf8)](_0x47330f,_0x1238c4,_0x14e444,_0x3ee316);if(_0x657738){const _0xebf82b=Date[_0x2f7e87(0x10a)]()-_0x1ec7a1;logger['success'](_0x2f7e87(0x114),'Template\x20content\x20replacement\x20completed',_0xebf82b,{'pageName':_0x14e444,'templateName':_0x3ee316});}}catch(_0x573cc4){if(_0x657738){const _0x4f6fb2=Date[_0x2f7e87(0x10a)]()-_0x1ec7a1;logger[_0x2f7e87(0xf9)](_0x2f7e87(0x114),_0x2f7e87(0xfd),{'templatePath':_0x47330f,'targetPath':_0x1238c4,'pageName':_0x14e444,'templateName':_0x3ee316,'error':_0x573cc4 instanceof Error?_0x573cc4[_0x2f7e87(0xd8)]:String(_0x573cc4),'duration':_0x4f6fb2});}throw _0x573cc4;}}static async['processDirectory'](_0x25680e,_0xa1916a,_0x41f67e,_0x45c798){const _0x36feb3=a349_0x26c0a8,_0x2f3eba=await a349_0x4db5c9[_0x36feb3(0x115)][_0x36feb3(0xe3)](_0x25680e,{'withFileTypes':!![]});for(const _0x516b6f of _0x2f3eba){const _0xa1669c=a349_0x5440b7['join'](_0x25680e,_0x516b6f['name']);let _0x20087c=a349_0x5440b7[_0x36feb3(0xf4)](_0xa1916a,_0x516b6f[_0x36feb3(0x10e)]);_0x516b6f[_0x36feb3(0x10e)][_0x36feb3(0xe8)](_0x36feb3(0xe2))&&(_0x20087c=a349_0x5440b7[_0x36feb3(0xf4)](_0xa1916a,_0x516b6f['name'][_0x36feb3(0xf7)](/\.tpl$/,'')));if(_0x516b6f[_0x36feb3(0xf3)]())await a349_0x4db5c9['promises'][_0x36feb3(0xf1)](_0x20087c,{'recursive':!![]}),await this[_0x36feb3(0xf8)](_0xa1669c,_0x20087c,_0x41f67e,_0x45c798);else _0x516b6f['isFile']()&&await this[_0x36feb3(0x113)](_0xa1669c,_0x20087c,_0x41f67e,_0x45c798);}}static async[a349_0x26c0a8(0x113)](_0x25d210,_0x350341,_0x4cbf43,_0x4372c5){const _0x4c1b04=a349_0x26c0a8,_0x2e19cc=a349_0x5440b7['extname'](_0x25d210)[_0x4c1b04(0xfb)]();_0x25d210['endsWith']('.tpl')&&(_0x350341=_0x350341[_0x4c1b04(0xf7)](/\.tpl$/,''));const _0x228d37=[_0x4c1b04(0xd6),'.ts','.jsx',_0x4c1b04(0xf2),_0x4c1b04(0xf0),_0x4c1b04(0xee),_0x4c1b04(0xda),_0x4c1b04(0xd5),_0x4c1b04(0xe2)];if(_0x228d37['includes'](_0x2e19cc)||_0x25d210['endsWith']('.tpl')){const _0x112519=await a349_0x4db5c9[_0x4c1b04(0x115)][_0x4c1b04(0xd9)](_0x25d210,_0x4c1b04(0x10d)),_0x2736b7=this['replaceContent'](_0x112519,_0x4cbf43,_0x4372c5);await a349_0x4db5c9[_0x4c1b04(0x115)][_0x4c1b04(0xe4)](_0x350341,_0x2736b7,_0x4c1b04(0x10d));}else await a349_0x4db5c9[_0x4c1b04(0x115)][_0x4c1b04(0xd1)](_0x25d210,_0x350341);}}
1
+ const a349_0x49c115=a349_0x3452;function a349_0x1142(){const _0x23a768=['.ts','tableName:\x20\x22','sdk-config','error','.jsx','processTemplate','19323MGFQaG','Starting\x20template\x20content\x20replacement','32523UtvTzE','processDirectory','50HIlAQs','toLowerCase','\x20},','processFile','toComponentName','push','getSeconds','datasetCode:\x20\x22','getFullYear','padStart','slice','utf8','copyFile','.tsx','pop','.tpl','getMonth','238zGjzce','toISOString','endsWith','includes','template','join','.scss','readdir','alias:\x20\x22','tableName','.json','928350GIddYR','extname','now','25hSGBVt','name:\x20\x22','map','pad','isFile','split','5416012uZFjcB','replace','replaceContent','4540KCLUBu','promises','message','getMinutes','name','default','datasetCode','success','54732909kQEutc','api','mkdir','433544DxqFbM','formatLocalTimestamp','toDisplayTitle','737306RpHjTF','.js','.md','alias','toUpperCase'];a349_0x1142=function(){return _0x23a768;};return a349_0x1142();}(function(_0x274559,_0x3f91c5){const _0x440157=a349_0x3452,_0x20f762=_0x274559();while(!![]){try{const _0x2d844f=parseInt(_0x440157(0x186))/0x1+parseInt(_0x440157(0x195))/0x2*(parseInt(_0x440157(0x193))/0x3)+parseInt(_0x440157(0x175))/0x4+-parseInt(_0x440157(0x16f))/0x5*(-parseInt(_0x440157(0x16c))/0x6)+parseInt(_0x440157(0x1a6))/0x7*(parseInt(_0x440157(0x183))/0x8)+parseInt(_0x440157(0x191))/0x9*(parseInt(_0x440157(0x178))/0xa)+-parseInt(_0x440157(0x180))/0xb;if(_0x2d844f===_0x3f91c5)break;else _0x20f762['push'](_0x20f762['shift']());}catch(_0x5e9c24){_0x20f762['push'](_0x20f762['shift']());}}}(a349_0x1142,0xeea84));import a349_0x3e5597 from'node:fs';import a349_0x5e2125 from'node:path';import{logger}from'../utils/logger.js';function a349_0x3452(_0x25b581,_0x167692){_0x25b581=_0x25b581-0x163;const _0x1142fd=a349_0x1142();let _0x34520e=_0x1142fd[_0x25b581];return _0x34520e;}import{getCliVersion}from'../utils/version.js';const CLI_VERSION=getCliVersion();export class TemplateReplacer{static['pad'](_0x9f822e){const _0x2e026f=a349_0x3452;return String(_0x9f822e)[_0x2e026f(0x19e)](0x2,'0');}static[a349_0x49c115(0x184)](_0x26492a){const _0x3c75f7=a349_0x49c115,_0x1dbfff=_0x26492a[_0x3c75f7(0x19d)](),_0x3b4ae6=this[_0x3c75f7(0x172)](_0x26492a[_0x3c75f7(0x1a5)]()+0x1),_0x442d0e=this[_0x3c75f7(0x172)](_0x26492a['getDate']()),_0x597dab=this['pad'](_0x26492a['getHours']()),_0x12bf2d=this[_0x3c75f7(0x172)](_0x26492a[_0x3c75f7(0x17b)]()),_0xc49f4e=this[_0x3c75f7(0x172)](_0x26492a[_0x3c75f7(0x19b)]());return{'createdAt':_0x1dbfff+'-'+_0x3b4ae6+'-'+_0x442d0e+'\x20'+_0x597dab+':'+_0x12bf2d+':'+_0xc49f4e,'createdDate':_0x1dbfff+'-'+_0x3b4ae6+'-'+_0x442d0e,'createdTime':_0x597dab+':'+_0x12bf2d+':'+_0xc49f4e};}static[a349_0x49c115(0x199)](_0x160140){const _0x529a98=a349_0x49c115,_0x5d57c5=_0x160140[_0x529a98(0x174)]('/')['pop']()||_0x160140;return _0x5d57c5['split']('-')[_0x529a98(0x171)](_0x7b57db=>_0x7b57db['charAt'](0x0)[_0x529a98(0x18a)]()+_0x7b57db[_0x529a98(0x19f)](0x1)[_0x529a98(0x196)]())[_0x529a98(0x166)]('');}static['toDisplayTitle'](_0x119f37){const _0x5c8af0=a349_0x49c115,_0x198ee3=_0x119f37[_0x5c8af0(0x174)]('/')[_0x5c8af0(0x1a3)]()||_0x119f37;return _0x198ee3['split']('-')['map'](_0x1618ee=>_0x1618ee['charAt'](0x0)[_0x5c8af0(0x18a)]()+_0x1618ee['slice'](0x1)['toLowerCase']())[_0x5c8af0(0x166)]('\x20');}static[a349_0x49c115(0x177)](_0xd03a00,_0x2aff80,_0x1e6050){const _0x1694ce=a349_0x49c115,_0xeeeaaa=this[_0x1694ce(0x199)](_0x2aff80),_0x5cc93f=this[_0x1694ce(0x185)](_0x2aff80),{createdAt:_0x4eeda9,createdDate:_0x28bb64,createdTime:_0x44a619}=this['formatLocalTimestamp'](new Date());let _0x391159=_0xd03a00[_0x1694ce(0x176)](/\{CliVersion\}/g,CLI_VERSION)['replace'](/\{ComponentName\}/g,_0xeeeaaa)[_0x1694ce(0x176)](/\{DisplayTitle\}/g,_0x5cc93f)[_0x1694ce(0x176)](/\{PageName\}/g,_0x2aff80)[_0x1694ce(0x176)](/\{TemplateName\}/g,_0x1e6050)[_0x1694ce(0x176)](/\{CreatedAt\}/g,_0x4eeda9)[_0x1694ce(0x176)](/\{CreatedDate\}/g,_0x28bb64)[_0x1694ce(0x176)](/\{CreatedTime\}/g,_0x44a619);return _0x391159;}static['replaceApiContent'](_0x594a8f,_0x2fbd9f,_0x26773f,_0x28cc1e,_0x4859b6,_0x2bfc68,_0x9b94c3,_0xfecae1,_0x353b2e){const _0xf36e23=a349_0x49c115,_0x38da57=new Date(),_0xaa9685=_0x38da57[_0xf36e23(0x1a7)](),_0x1f0167=_0x26773f[_0xf36e23(0x171)](_0x330a22=>{const _0x36a8dc=_0xf36e23,_0xa47a1=[_0x36a8dc(0x19c)+_0x330a22[_0x36a8dc(0x17e)]+'\x22',_0x36a8dc(0x18c)+_0x330a22[_0x36a8dc(0x16a)]+'\x22',_0x36a8dc(0x170)+_0x330a22['name']+'\x22'];return _0x330a22['alias']&&_0xa47a1[_0x36a8dc(0x19a)](_0x36a8dc(0x169)+_0x330a22[_0x36a8dc(0x189)]+'\x22'),'\x0a\x20\x20\x20\x20{\x20'+_0xa47a1[_0x36a8dc(0x166)](',\x20')+_0x36a8dc(0x197);})[_0xf36e23(0x166)](''),_0x2b03c8=_0x28cc1e||_0x26773f[0x0]?.[_0xf36e23(0x189)]||'YourModel';let _0x50ef1f=_0x594a8f['replace'](/\{AppCode\}/g,_0x2fbd9f)['replace'](/\{ModelConfigs\}/g,_0x1f0167)[_0xf36e23(0x176)](/\{ExampleModelName\}/g,_0x2b03c8)[_0xf36e23(0x176)](/\{ApiFileName\}/g,_0x4859b6||_0xf36e23(0x181))[_0xf36e23(0x176)](/\{ConfigName\}/g,_0x2bfc68||_0xf36e23(0x17d))['replace'](/\{ClientConfigParam\}/g,_0x9b94c3||'')[_0xf36e23(0x176)](/\{SdkConfigFileName\}/g,_0x353b2e||_0xf36e23(0x18d))[_0xf36e23(0x176)](/\{VarPrefix\}/g,_0xfecae1||'LOVRABET')[_0xf36e23(0x176)](/\{CreatedAt\}/g,_0xaa9685);return _0x50ef1f;}static async[a349_0x49c115(0x190)](_0x5a86b3,_0x54782d,_0x5812b2,_0x119379,_0x19e8ab=!![]){const _0x3a333a=a349_0x49c115,_0x4ea8b0=Date[_0x3a333a(0x16e)]();try{_0x19e8ab&&logger['info'](_0x3a333a(0x165),_0x3a333a(0x192),{'templatePath':_0x5a86b3,'targetPath':_0x54782d,'pageName':_0x5812b2,'templateName':_0x119379});await a349_0x3e5597[_0x3a333a(0x179)][_0x3a333a(0x182)](_0x54782d,{'recursive':!![]}),await this[_0x3a333a(0x194)](_0x5a86b3,_0x54782d,_0x5812b2,_0x119379);if(_0x19e8ab){const _0x2ba921=Date['now']()-_0x4ea8b0;logger[_0x3a333a(0x17f)](_0x3a333a(0x165),'Template\x20content\x20replacement\x20completed',_0x2ba921,{'pageName':_0x5812b2,'templateName':_0x119379});}}catch(_0x4538a1){if(_0x19e8ab){const _0x501cbf=Date['now']()-_0x4ea8b0;logger[_0x3a333a(0x18e)](_0x3a333a(0x165),'Template\x20content\x20replacement\x20failed',{'templatePath':_0x5a86b3,'targetPath':_0x54782d,'pageName':_0x5812b2,'templateName':_0x119379,'error':_0x4538a1 instanceof Error?_0x4538a1[_0x3a333a(0x17a)]:String(_0x4538a1),'duration':_0x501cbf});}throw _0x4538a1;}}static async[a349_0x49c115(0x194)](_0x403e87,_0x88ab93,_0x488143,_0x388f5c){const _0x3c50e1=a349_0x49c115,_0x3dbcb3=await a349_0x3e5597[_0x3c50e1(0x179)][_0x3c50e1(0x168)](_0x403e87,{'withFileTypes':!![]});for(const _0x2f5e5e of _0x3dbcb3){const _0x406b7=a349_0x5e2125[_0x3c50e1(0x166)](_0x403e87,_0x2f5e5e[_0x3c50e1(0x17c)]);let _0x2fa837=a349_0x5e2125[_0x3c50e1(0x166)](_0x88ab93,_0x2f5e5e['name']);_0x2f5e5e['name'][_0x3c50e1(0x163)](_0x3c50e1(0x1a4))&&(_0x2fa837=a349_0x5e2125[_0x3c50e1(0x166)](_0x88ab93,_0x2f5e5e[_0x3c50e1(0x17c)][_0x3c50e1(0x176)](/\.tpl$/,'')));if(_0x2f5e5e['isDirectory']())await a349_0x3e5597[_0x3c50e1(0x179)]['mkdir'](_0x2fa837,{'recursive':!![]}),await this[_0x3c50e1(0x194)](_0x406b7,_0x2fa837,_0x488143,_0x388f5c);else _0x2f5e5e[_0x3c50e1(0x173)]()&&await this[_0x3c50e1(0x198)](_0x406b7,_0x2fa837,_0x488143,_0x388f5c);}}static async[a349_0x49c115(0x198)](_0x5f4f59,_0x20c892,_0x57cfc2,_0x54e5e3){const _0x2cedd0=a349_0x49c115,_0x4f4c4f=a349_0x5e2125[_0x2cedd0(0x16d)](_0x5f4f59)[_0x2cedd0(0x196)]();_0x5f4f59['endsWith'](_0x2cedd0(0x1a4))&&(_0x20c892=_0x20c892[_0x2cedd0(0x176)](/\.tpl$/,''));const _0x46b81a=[_0x2cedd0(0x1a2),_0x2cedd0(0x18b),_0x2cedd0(0x18f),_0x2cedd0(0x187),_0x2cedd0(0x16b),_0x2cedd0(0x188),'.css',_0x2cedd0(0x167),_0x2cedd0(0x1a4)];if(_0x46b81a[_0x2cedd0(0x164)](_0x4f4c4f)||_0x5f4f59[_0x2cedd0(0x163)](_0x2cedd0(0x1a4))){const _0x44e60c=await a349_0x3e5597[_0x2cedd0(0x179)]['readFile'](_0x5f4f59,'utf8'),_0x2eef7d=this['replaceContent'](_0x44e60c,_0x57cfc2,_0x54e5e3);await a349_0x3e5597[_0x2cedd0(0x179)]['writeFile'](_0x20c892,_0x2eef7d,_0x2cedd0(0x1a0));}else await a349_0x3e5597[_0x2cedd0(0x179)][_0x2cedd0(0x1a1)](_0x5f4f59,_0x20c892);}}
@@ -1 +1 @@
1
- (function(_0x3749b9,_0x151853){const _0x4de585=a350_0x4e6d,_0x1c5091=_0x3749b9();while(!![]){try{const _0x3a1234=parseInt(_0x4de585(0x11e))/0x1*(-parseInt(_0x4de585(0x12b))/0x2)+parseInt(_0x4de585(0x122))/0x3+parseInt(_0x4de585(0x125))/0x4*(parseInt(_0x4de585(0x119))/0x5)+-parseInt(_0x4de585(0x115))/0x6+-parseInt(_0x4de585(0x124))/0x7+parseInt(_0x4de585(0x11a))/0x8*(parseInt(_0x4de585(0x111))/0x9)+parseInt(_0x4de585(0x12c))/0xa*(parseInt(_0x4de585(0x10f))/0xb);if(_0x3a1234===_0x151853)break;else _0x1c5091['push'](_0x1c5091['shift']());}catch(_0x1da84e){_0x1c5091['push'](_0x1c5091['shift']());}}}(a350_0x1f27,0xd3cee));import{mkdir,readFile,writeFile}from'node:fs/promises';import{homedir}from'node:os';import{dirname,join}from'node:path';import a350_0x3d37a6 from'semver';import{CLI_BIN_NAME,NPM_PACKAGE_NAME}from'../constant/cli.js';function a350_0x4e6d(_0x4d3644,_0x44df7b){_0x4d3644=_0x4d3644-0x10f;const _0x1f2729=a350_0x1f27();let _0x4e6ddd=_0x1f2729[_0x4d3644];return _0x4e6ddd;}import{getCliVersionPolicy}from'../utils/cli-version-policy.js';function a350_0x1f27(){const _0x1ddc9c=['8gxMRhn','/v/','yes','lastNotifiedAt','8371pWEywj','utf8','parse','trim','3568443HmZbsp',',\x20run:\x20','10533509FARlDO','43060VSgNSw','now','gte','toLowerCase','object','\x20update','226UAxZqF','10UwZGEk','checkedAt','latest','11844437GFRIae','number','10456497VbqccS','lastNotifiedVersion','valid','stableVersion','6924060oUTZyo','rabetbase-cli','stringify','true','485IvkHfI'];a350_0x1f27=function(){return _0x1ddc9c;};return a350_0x1f27();}import{getCliVersion}from'../utils/version.js';const UPDATE_CHECK_TTL_MS=0xc*0x3c*0x3c*0x3e8,UPDATE_NOTICE_TTL_MS=0x18*0x3c*0x3c*0x3e8;function isUpdateNoticeDisabled(){const _0x1d5a13=a350_0x4e6d,_0x31f58c=process.env.RABETBASE_NO_UPDATE_NOTICE?.[_0x1d5a13(0x121)]()[_0x1d5a13(0x128)]();return _0x31f58c==='1'||_0x31f58c===_0x1d5a13(0x118)||_0x31f58c===_0x1d5a13(0x11c);}function cacheRoot(){return process.env.XDG_CACHE_HOME||process.env.LOCALAPPDATA||join(homedir(),'.cache');}export function getUpdateNoticeCachePath(){const _0x266759=a350_0x4e6d;return join(cacheRoot(),_0x266759(0x116),'update-check.json');}async function readUpdateNoticeCache(){const _0xdda0c=a350_0x4e6d;try{const _0x38820c=await readFile(getUpdateNoticeCachePath(),_0xdda0c(0x11f)),_0x4a4b8a=JSON[_0xdda0c(0x120)](_0x38820c);if(!_0x4a4b8a||typeof _0x4a4b8a!==_0xdda0c(0x129))return{};return _0x4a4b8a;}catch{return{};}}async function writeUpdateNoticeCache(_0x36e18){const _0x65d5b5=a350_0x4e6d;try{const _0x1bc86e=getUpdateNoticeCachePath();await mkdir(dirname(_0x1bc86e),{'recursive':!![]}),await writeFile(_0x1bc86e,JSON[_0x65d5b5(0x117)](_0x36e18,null,0x2)+'\x0a',_0x65d5b5(0x11f));}catch{}}function isFreshCheck(_0x152505,_0x57c59e){const _0x37cc08=a350_0x4e6d;return typeof _0x152505[_0x37cc08(0x12d)]===_0x37cc08(0x110)&&_0x57c59e-_0x152505[_0x37cc08(0x12d)]<UPDATE_CHECK_TTL_MS;}function isRecentlyNotified(_0xac24f5,_0x19b905,_0xfc72f2){const _0x2762d4=a350_0x4e6d;return _0xac24f5[_0x2762d4(0x112)]===_0x19b905&&typeof _0xac24f5[_0x2762d4(0x11d)]===_0x2762d4(0x110)&&_0xfc72f2-_0xac24f5[_0x2762d4(0x11d)]<UPDATE_NOTICE_TTL_MS;}export function buildNpmVersionUrl(_0x785a65){const _0x1f8f61=a350_0x4e6d;return'https://www.npmjs.com/package/'+NPM_PACKAGE_NAME+_0x1f8f61(0x11b)+_0x785a65;}export async function resolveLatestUpdateNotice(){const _0x1b48de=a350_0x4e6d;if(isUpdateNoticeDisabled())return null;try{const _0x2650c0=Date[_0x1b48de(0x126)](),_0x437ce4=getCliVersion(),_0x29f940=await readUpdateNoticeCache();let _0x26fe65=isFreshCheck(_0x29f940,_0x2650c0)?_0x29f940[_0x1b48de(0x12e)]?.[_0x1b48de(0x121)]():undefined;if(!_0x26fe65&&!isFreshCheck(_0x29f940,_0x2650c0)){const _0x2b3700=await getCliVersionPolicy();_0x26fe65=_0x2b3700?.[_0x1b48de(0x114)]?.[_0x1b48de(0x121)]()||undefined,await writeUpdateNoticeCache({..._0x29f940,'checkedAt':_0x2650c0,'latest':_0x26fe65,'failed':!_0x26fe65});}if(!_0x26fe65||!a350_0x3d37a6[_0x1b48de(0x113)](_0x437ce4)||!a350_0x3d37a6['valid'](_0x26fe65))return null;if(a350_0x3d37a6[_0x1b48de(0x127)](_0x437ce4,_0x26fe65))return null;if(isRecentlyNotified(_0x29f940,_0x26fe65,_0x2650c0))return null;const _0x1c1873=CLI_BIN_NAME+_0x1b48de(0x12a);return await writeUpdateNoticeCache({..._0x29f940,'checkedAt':isFreshCheck(_0x29f940,_0x2650c0)?_0x29f940[_0x1b48de(0x12d)]:_0x2650c0,'latest':_0x26fe65,'failed':![],'lastNotifiedVersion':_0x26fe65,'lastNotifiedAt':_0x2650c0}),{'command':_0x1c1873,'current':_0x437ce4,'latest':_0x26fe65,'url':buildNpmVersionUrl(_0x26fe65),'message':CLI_BIN_NAME+'\x20'+_0x26fe65+'\x20available,\x20current\x20'+_0x437ce4+_0x1b48de(0x123)+_0x1c1873};}catch{return null;}}
1
+ (function(_0x399b6c,_0x31f98a){const _0x42bc00=a350_0x3360,_0x5d8278=_0x399b6c();while(!![]){try{const _0x3e56b9=-parseInt(_0x42bc00(0x8c))/0x1+parseInt(_0x42bc00(0x95))/0x2+-parseInt(_0x42bc00(0x8e))/0x3*(parseInt(_0x42bc00(0x9b))/0x4)+-parseInt(_0x42bc00(0x96))/0x5*(-parseInt(_0x42bc00(0x89))/0x6)+parseInt(_0x42bc00(0x94))/0x7*(-parseInt(_0x42bc00(0x92))/0x8)+parseInt(_0x42bc00(0x9c))/0x9+parseInt(_0x42bc00(0x8b))/0xa*(-parseInt(_0x42bc00(0x83))/0xb);if(_0x3e56b9===_0x31f98a)break;else _0x5d8278['push'](_0x5d8278['shift']());}catch(_0xca3789){_0x5d8278['push'](_0x5d8278['shift']());}}}(a350_0x35d9,0x5029a));import{mkdir,readFile,writeFile}from'node:fs/promises';import{homedir}from'node:os';import{dirname,join}from'node:path';function a350_0x3360(_0x2c63f5,_0xa13714){_0x2c63f5=_0x2c63f5-0x80;const _0x35d9da=a350_0x35d9();let _0x33607e=_0x35d9da[_0x2c63f5];return _0x33607e;}import a350_0x2f7d5e from'semver';import{CLI_BIN_NAME,NPM_PACKAGE_NAME}from'../constant/cli.js';import{getCliVersionPolicy}from'../utils/cli-version-policy.js';import{getCliVersion}from'../utils/version.js';function a350_0x35d9(){const _0xadb853=['yes','parse','toLowerCase','299152LsMDts','trim','84xaZbFs','1270646JiTDGx','13385oeeLoJ','lastNotifiedAt','\x20update','number','lastNotifiedVersion','12LsWplM','130464UVelas','stableVersion','update-check.json','true',',\x20run:\x20','55MUZjOl','latest','checkedAt','valid','gte','\x20available,\x20current\x20','1206IOdTbt','https://www.npmjs.com/package/','553870bITmGN','114378kYZbLd','utf8','19509aKQpXu'];a350_0x35d9=function(){return _0xadb853;};return a350_0x35d9();}const UPDATE_CHECK_TTL_MS=0xc*0x3c*0x3c*0x3e8,UPDATE_NOTICE_TTL_MS=0x18*0x3c*0x3c*0x3e8;function isUpdateNoticeDisabled(){const _0x1f4638=a350_0x3360,_0x203f1c=process.env.RABETBASE_NO_UPDATE_NOTICE?.[_0x1f4638(0x93)]()[_0x1f4638(0x91)]();return _0x203f1c==='1'||_0x203f1c===_0x1f4638(0x81)||_0x203f1c===_0x1f4638(0x8f);}function cacheRoot(){return process.env.XDG_CACHE_HOME||process.env.LOCALAPPDATA||join(homedir(),'.cache');}export function getUpdateNoticeCachePath(){const _0x426873=a350_0x3360;return join(cacheRoot(),'rabetbase-cli',_0x426873(0x80));}async function readUpdateNoticeCache(){const _0x3843e1=a350_0x3360;try{const _0x230878=await readFile(getUpdateNoticeCachePath(),_0x3843e1(0x8d)),_0x2e5a61=JSON[_0x3843e1(0x90)](_0x230878);if(!_0x2e5a61||typeof _0x2e5a61!=='object')return{};return _0x2e5a61;}catch{return{};}}async function writeUpdateNoticeCache(_0x16e36f){try{const _0x29ba51=getUpdateNoticeCachePath();await mkdir(dirname(_0x29ba51),{'recursive':!![]}),await writeFile(_0x29ba51,JSON['stringify'](_0x16e36f,null,0x2)+'\x0a','utf8');}catch{}}function isFreshCheck(_0x24e3b1,_0x253c5f){const _0x4b073a=a350_0x3360;return typeof _0x24e3b1[_0x4b073a(0x85)]===_0x4b073a(0x99)&&_0x253c5f-_0x24e3b1[_0x4b073a(0x85)]<UPDATE_CHECK_TTL_MS;}function isRecentlyNotified(_0x133c9e,_0x172aa5,_0x407064){const _0x9e2b89=a350_0x3360;return _0x133c9e[_0x9e2b89(0x9a)]===_0x172aa5&&typeof _0x133c9e[_0x9e2b89(0x97)]===_0x9e2b89(0x99)&&_0x407064-_0x133c9e[_0x9e2b89(0x97)]<UPDATE_NOTICE_TTL_MS;}export function buildNpmVersionUrl(_0x4b2048){const _0x13c83d=a350_0x3360;return _0x13c83d(0x8a)+NPM_PACKAGE_NAME+'/v/'+_0x4b2048;}export async function resolveLatestUpdateNotice(){const _0x4b7015=a350_0x3360;if(isUpdateNoticeDisabled())return null;try{const _0x57f1e6=Date['now'](),_0x44efbf=getCliVersion(),_0x4fd2f5=await readUpdateNoticeCache();let _0x3f7934=isFreshCheck(_0x4fd2f5,_0x57f1e6)?_0x4fd2f5[_0x4b7015(0x84)]?.[_0x4b7015(0x93)]():undefined;if(!_0x3f7934&&!isFreshCheck(_0x4fd2f5,_0x57f1e6)){const _0x2096df=await getCliVersionPolicy();_0x3f7934=_0x2096df?.[_0x4b7015(0x9d)]?.[_0x4b7015(0x93)]()||undefined,await writeUpdateNoticeCache({..._0x4fd2f5,'checkedAt':_0x57f1e6,'latest':_0x3f7934,'failed':!_0x3f7934});}if(!_0x3f7934||!a350_0x2f7d5e['valid'](_0x44efbf)||!a350_0x2f7d5e[_0x4b7015(0x86)](_0x3f7934))return null;if(a350_0x2f7d5e[_0x4b7015(0x87)](_0x44efbf,_0x3f7934))return null;if(isRecentlyNotified(_0x4fd2f5,_0x3f7934,_0x57f1e6))return null;const _0x163b00=CLI_BIN_NAME+_0x4b7015(0x98);return await writeUpdateNoticeCache({..._0x4fd2f5,'checkedAt':isFreshCheck(_0x4fd2f5,_0x57f1e6)?_0x4fd2f5[_0x4b7015(0x85)]:_0x57f1e6,'latest':_0x3f7934,'failed':![],'lastNotifiedVersion':_0x3f7934,'lastNotifiedAt':_0x57f1e6}),{'command':_0x163b00,'current':_0x44efbf,'latest':_0x3f7934,'url':buildNpmVersionUrl(_0x3f7934),'message':CLI_BIN_NAME+'\x20'+_0x3f7934+_0x4b7015(0x88)+_0x44efbf+_0x4b7015(0x82)+_0x163b00};}catch{return null;}}
@@ -1 +1 @@
1
- (function(_0x4c51d5,_0x29ff3f){var _0x3e10a1=a351_0x5d56,_0x1f037b=_0x4c51d5();while(!![]){try{var _0x191713=parseInt(_0x3e10a1(0x1c6))/0x1*(-parseInt(_0x3e10a1(0x1c4))/0x2)+-parseInt(_0x3e10a1(0x1c0))/0x3*(parseInt(_0x3e10a1(0x1bf))/0x4)+-parseInt(_0x3e10a1(0x1c3))/0x5*(-parseInt(_0x3e10a1(0x1c2))/0x6)+parseInt(_0x3e10a1(0x1c9))/0x7+parseInt(_0x3e10a1(0x1c7))/0x8+parseInt(_0x3e10a1(0x1c5))/0x9*(-parseInt(_0x3e10a1(0x1c1))/0xa)+parseInt(_0x3e10a1(0x1c8))/0xb*(parseInt(_0x3e10a1(0x1be))/0xc);if(_0x191713===_0x29ff3f)break;else _0x1f037b['push'](_0x1f037b['shift']());}catch(_0x3018a8){_0x1f037b['push'](_0x1f037b['shift']());}}}(a351_0x45f4,0x77910));import{VERSION}from'../generated/build-info.js';function a351_0x5d56(_0x440cab,_0x52a7c7){_0x440cab=_0x440cab-0x1be;var _0x45f449=a351_0x45f4();var _0x5d56f6=_0x45f449[_0x440cab];return _0x5d56f6;}function a351_0x45f4(){var _0x17045f=['9NancbE','132137snvxnn','1387776PiQOuF','11UEYMFf','111475KmclDd','11303256xdUjgo','4AoieKX','1703220NXiLxx','254990wiTblz','5259642gpHUda','5KXURWh','14wWGTnE'];a351_0x45f4=function(){return _0x17045f;};return a351_0x45f4();}export function getCliVersion(){return VERSION;}
1
+ (function(_0x4e2143,_0x29548b){var _0x588231=a351_0x4ab6,_0x103042=_0x4e2143();while(!![]){try{var _0x1b6fd8=parseInt(_0x588231(0x18e))/0x1+-parseInt(_0x588231(0x195))/0x2+-parseInt(_0x588231(0x194))/0x3*(parseInt(_0x588231(0x192))/0x4)+parseInt(_0x588231(0x190))/0x5*(parseInt(_0x588231(0x18d))/0x6)+parseInt(_0x588231(0x191))/0x7*(-parseInt(_0x588231(0x196))/0x8)+-parseInt(_0x588231(0x193))/0x9+-parseInt(_0x588231(0x18f))/0xa*(-parseInt(_0x588231(0x18c))/0xb);if(_0x1b6fd8===_0x29548b)break;else _0x103042['push'](_0x103042['shift']());}catch(_0x8f492c){_0x103042['push'](_0x103042['shift']());}}}(a351_0x5e80,0x9e75f));import{VERSION}from'../generated/build-info.js';function a351_0x5e80(){var _0x5ae819=['1045118Bqcfnn','130400JbidlE','1449155ImQFba','364MmBcty','2021672jgZykN','10868373oWNoFk','6evHalj','239652xNlYts','138352kYbLCi','1419orfDYX','24uLvkHQ'];a351_0x5e80=function(){return _0x5ae819;};return a351_0x5e80();}function a351_0x4ab6(_0x78f1cc,_0x259eee){_0x78f1cc=_0x78f1cc-0x18c;var _0x5e80f0=a351_0x5e80();var _0x4ab678=_0x5e80f0[_0x78f1cc];return _0x4ab678;}export function getCliVersion(){return VERSION;}
@@ -1 +1 @@
1
- (function(_0x1fc9f2,_0x567a3b){var _0x1e2882=a352_0x5c85,_0x3714bb=_0x1fc9f2();while(!![]){try{var _0x556c03=parseInt(_0x1e2882(0x177))/0x1+-parseInt(_0x1e2882(0x17b))/0x2+parseInt(_0x1e2882(0x17c))/0x3+parseInt(_0x1e2882(0x17d))/0x4*(parseInt(_0x1e2882(0x17a))/0x5)+parseInt(_0x1e2882(0x178))/0x6+-parseInt(_0x1e2882(0x17f))/0x7+parseInt(_0x1e2882(0x17e))/0x8*(-parseInt(_0x1e2882(0x179))/0x9);if(_0x556c03===_0x567a3b)break;else _0x3714bb['push'](_0x3714bb['shift']());}catch(_0x15082d){_0x3714bb['push'](_0x3714bb['shift']());}}}(a352_0x5c67,0x89364));import{setActiveCookie,clearActiveCookie}from'../core/api-client.js';function a352_0x5c85(_0x30dc8b,_0x3bf303){_0x30dc8b=_0x30dc8b-0x177;var _0x5c674d=a352_0x5c67();var _0x5c851e=_0x5c674d[_0x30dc8b];return _0x5c851e;}function a352_0x5c67(){var _0x1beebc=['785130mzJqba','9ynFHYK','430GzdKOC','642186FkhZUd','2164875ynqfUF','27096TsmUFn','8806960qpIOxB','3792516TzpFcy','1090727jxNbWF'];a352_0x5c67=function(){return _0x1beebc;};return a352_0x5c67();}export async function withActiveCookie(_0x1ab858,_0x3afcfc){setActiveCookie(_0x1ab858);try{return await _0x3afcfc();}finally{clearActiveCookie();}}
1
+ (function(_0x31b0b9,_0x3c54e4){var _0x372bb7=a352_0xaef1,_0x503218=_0x31b0b9();while(!![]){try{var _0x3facac=parseInt(_0x372bb7(0x199))/0x1*(parseInt(_0x372bb7(0x194))/0x2)+parseInt(_0x372bb7(0x196))/0x3*(-parseInt(_0x372bb7(0x19b))/0x4)+-parseInt(_0x372bb7(0x19c))/0x5*(parseInt(_0x372bb7(0x197))/0x6)+-parseInt(_0x372bb7(0x193))/0x7+parseInt(_0x372bb7(0x195))/0x8+-parseInt(_0x372bb7(0x198))/0x9*(parseInt(_0x372bb7(0x19d))/0xa)+parseInt(_0x372bb7(0x19a))/0xb;if(_0x3facac===_0x3c54e4)break;else _0x503218['push'](_0x503218['shift']());}catch(_0x595f2f){_0x503218['push'](_0x503218['shift']());}}}(a352_0x3846,0xee3e4));import{setActiveCookie,clearActiveCookie}from'../core/api-client.js';export async function withActiveCookie(_0x37b60c,_0x19f54f){setActiveCookie(_0x37b60c);try{return await _0x19f54f();}finally{clearActiveCookie();}}function a352_0xaef1(_0x1cf5f9,_0x3b556d){_0x1cf5f9=_0x1cf5f9-0x193;var _0x38462a=a352_0x3846();var _0xaef182=_0x38462a[_0x1cf5f9];return _0xaef182;}function a352_0x3846(){var _0x3f8488=['6iuiKzW','4149qirYKZ','743359jGsvjW','47232559nBnRVm','4sNhGSh','6797815ZivIyW','10410xqCGeX','10066665ugOyuV','2RjOViA','1047912QwyoJt','2744442KCLJyV'];a352_0x3846=function(){return _0x3f8488;};return a352_0x3846();}
@@ -1 +1 @@
1
- (function(_0x4ee1cc,_0x55f544){var _0x5884ca=a353_0x214a,_0x5570a0=_0x4ee1cc();while(!![]){try{var _0x2bab25=parseInt(_0x5884ca(0xdc))/0x1*(parseInt(_0x5884ca(0xda))/0x2)+parseInt(_0x5884ca(0xd4))/0x3*(parseInt(_0x5884ca(0xe0))/0x4)+-parseInt(_0x5884ca(0xd6))/0x5+parseInt(_0x5884ca(0xd9))/0x6*(parseInt(_0x5884ca(0xde))/0x7)+-parseInt(_0x5884ca(0xdd))/0x8*(-parseInt(_0x5884ca(0xd8))/0x9)+parseInt(_0x5884ca(0xd7))/0xa+-parseInt(_0x5884ca(0xdb))/0xb*(parseInt(_0x5884ca(0xdf))/0xc);if(_0x2bab25===_0x55f544)break;else _0x5570a0['push'](_0x5570a0['shift']());}catch(_0x928a7e){_0x5570a0['push'](_0x5570a0['shift']());}}}(a353_0x139e,0x9be38));function a353_0x139e(){var _0x1ce6bc=['36VIKlav','10632tztAoO','2FEPbqh','14960lnvkgB','1128782IArovo','1871400QPSQQS','3479cAhAET','19056dkPAjb','12BKYxdl','314646QnSfVJ','write','5364350DyQCqX','6112580dbCyTT'];a353_0x139e=function(){return _0x1ce6bc;};return a353_0x139e();}function a353_0x214a(_0x3c3c95,_0x185167){_0x3c3c95=_0x3c3c95-0xd4;var _0x139e73=a353_0x139e();var _0x214aac=_0x139e73[_0x3c3c95];return _0x214aac;}export function writeCliSideChannelLine(_0x3344bd){var _0x5b31ff=a353_0x214a;process['stderr'][_0x5b31ff(0xd5)](_0x3344bd+'\x0a');}
1
+ (function(_0x4f529f,_0x48e8c1){var _0x41aec4=a353_0x1a80,_0x960577=_0x4f529f();while(!![]){try{var _0x1b64b5=-parseInt(_0x41aec4(0x1d5))/0x1*(-parseInt(_0x41aec4(0x1c9))/0x2)+parseInt(_0x41aec4(0x1d1))/0x3*(-parseInt(_0x41aec4(0x1cc))/0x4)+parseInt(_0x41aec4(0x1d4))/0x5*(-parseInt(_0x41aec4(0x1ce))/0x6)+-parseInt(_0x41aec4(0x1cb))/0x7*(-parseInt(_0x41aec4(0x1ca))/0x8)+parseInt(_0x41aec4(0x1cd))/0x9*(parseInt(_0x41aec4(0x1cf))/0xa)+parseInt(_0x41aec4(0x1d0))/0xb*(-parseInt(_0x41aec4(0x1c8))/0xc)+parseInt(_0x41aec4(0x1c7))/0xd*(parseInt(_0x41aec4(0x1d2))/0xe);if(_0x1b64b5===_0x48e8c1)break;else _0x960577['push'](_0x960577['shift']());}catch(_0x14f96b){_0x960577['push'](_0x960577['shift']());}}}(a353_0xdb11,0xa957b));function a353_0xdb11(){var _0x27e95e=['4331817AXDLrp','3908MngsOc','26982nEGMnt','90876AdqaQn','2990BJRFKY','11jNRgNL','2697DcMjeh','4485502IDGQot','write','80qivdLI','7519zfDJUF','13evstwf','14990520iGRzQu','162iRjFvq','16bhWEJF'];a353_0xdb11=function(){return _0x27e95e;};return a353_0xdb11();}function a353_0x1a80(_0x1505f0,_0x5cbf8e){_0x1505f0=_0x1505f0-0x1c7;var _0xdb11c3=a353_0xdb11();var _0x1a8007=_0xdb11c3[_0x1505f0];return _0x1a8007;}export function writeCliSideChannelLine(_0x164c07){var _0xd350ce=a353_0x1a80;process['stderr'][_0xd350ce(0x1d3)](_0x164c07+'\x0a');}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lovrabet/rabetbase-cli",
3
- "version": "2.5.3-beta.3",
3
+ "version": "2.5.3-beta.4",
4
4
  "description": "Developer CLI for Lovrabet apps, datasets, pages, SQL, Backend Function, database connections, skills, and AI agent workflows.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "keywords": [
@@ -45,8 +45,10 @@
45
45
  "start": "tsc --watch",
46
46
  "sync:cdn": "node scripts/sync-cdn-assets.js",
47
47
  "sync:cdn:beta": "node scripts/sync-cdn-assets.js --beta",
48
+ "sync:cdn:all": "node scripts/sync-cdn-assets.js --all",
48
49
  "check:cdn": "node scripts/sync-cdn-assets.js --check",
49
50
  "check:cdn:beta": "node scripts/sync-cdn-assets.js --beta --check",
51
+ "check:cdn:all": "node scripts/sync-cdn-assets.js --all --check",
50
52
  "verify:bundled-jq": "node scripts/verify-bundled-jq.mjs",
51
53
  "regression:release-smoke": "node scripts/regression-release-smoke.mjs",
52
54
  "release:summary:prepare": "node scripts/release-summary-preparation.mjs",
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: rabetbase
3
- version: 2.5.3-beta.3
3
+ version: 2.5.3-beta.4
4
4
  description: "Use for Lovrabet development work through the rabetbase CLI: create or bind projects (including creating an AppCode project in the current folder), pull Dataset/API facts and maintain SDK clients, or manage datasets, Instant API access policies, database connections, pages, SQL, Backend Functions, menus, notifications, knowledge bases and kb search, Agent Context Rules, roles, files, OCR, deployment metadata, platform issues, and 钉钉沙箱账号绑定. Trigger when the user mentions rabetbase, Lovrabet development, AppCode, Dataset, Instant API allow/deny/route policy, project creation, api pull/codegen, dblink, page, SQL, BFF, menu, notification, knowledge base, kb search, Agent Context Rules, RULES.md, DATABASE.md, rule list/get/set, role, file/OCR, or related development workflows."
5
5
  metadata:
6
6
  requires:
@@ -45,14 +45,14 @@ metadata:
45
45
  - 表单审批流或独立工作流定义 → 先读 [`approval-flow-development-workflow.md`](guides/approval-flow-development-workflow.md),先确定 `flowType`,再使用 `flow validate/create/update/publish`
46
46
  - Instant API 标准数据记录操作 → SDK filter/getOne/create/batchCreate/update/delete;批量更新使用 `update({ id: [...] })`,不存在 `batchUpdate()`
47
47
  - 简单聚合且数据集是 DB_TABLE → SDK aggregate;聚合列用 `aggregate[].column`,不要用旧别名 `field`
48
- - 复杂 JOIN / 数据库函数且数据集是 DB_TABLE → Custom SQL
48
+ - 同库 DB_TABLE 的复杂 JOIN / 数据库函数 → 评估 Custom SQL;跨库查询 → 按 [跨库 BFF 指南](guides/cross-database-bff.md)分别读取并拼接
49
49
  - 图表、统计卡片或数据大屏 → 自定义页面 + ECharts;数据层根据查询复杂度选择 Dataset 或 Custom SQL
50
50
  - 当前用户、角色、数据范围、外部系统、跨表事务或复杂业务编排 → Backend Function;Backend Function HOOK 可挂 DB_TABLE 或 METADATA,具体 operation 以后端返回为准
51
51
  2. **先拿元数据,再写代码**
52
52
  - 至少先查 `rabetbase dataset detail --code xxx --format compress`(或 `json`)获取表结构
53
53
  - 跨表场景还需查目标表的结构
54
54
  - 写入前用 `data.fields[]` 确认真实字段、必填字段、枚举选项;枚举/选择字段写入 `options[].value`,不是展示 `label`
55
- - 需要了解数据集关联关系时用 `rabetbase dataset relations --format compress`(或 `json`);需要审计关系事实错误和人工复核项时用 `rabetbase dataset relation-audit --format compress`
55
+ - 默认关联关系指同库关联关系;同库/跨库按平台数据库连接区分,执行时核对真实连接信息。同库关系用 `rabetbase dataset relations --format compress`(或 `json`)查询,用 `rabetbase dataset relation-audit --format compress` 审计关系事实错误和人工复核项
56
56
  - 需要管理不同数据库连接之间的 DB_TABLE 关联时,先读 [跨库关系](references/rabetbase-dataset-cross-relations.md),使用 `dataset cross-relation-list/create/update/delete`;源数据集+字段定位,更新/删除必须唯一匹配,写前 dry-run,写后以跨库 list 回读为准
57
57
  - 需要从文本需求创建新的 `METADATA` 数据集时,先读 [`dataset generate-start/status`](references/rabetbase-dataset-generate.md),执行 preview 写出 design 文件,审阅后用 `generate-start --apply --design-file` 提交任务,再用 `generate-status` 查询到成功
58
58
  - **管理物理库连接 / 测连 / 同步表结构分析**时用 `rabetbase db …`(先 [`db list`](references/rabetbase-db-list.md),trace/plan id 见 [`database-connection-workflow.md`](guides/database-connection-workflow.md))
@@ -70,6 +70,7 @@ metadata:
70
70
  - 先使用 `sql list/detail` 查找可复用的 Custom SQL;没有满足需求的资源时,按照 [`sql-creation-workflow.md`](guides/sql-creation-workflow.md) 与 [`sql-mybatis.md`](guides/sql-mybatis.md) 创建、校验、发布并验证
71
71
  - 页面执行已发布的 Custom SQL 时使用 `sqlCode` + `params`;Backend Function 默认使用 `context.client.sql.byName(sqlName).execute({ params })`,`sql.execute({ sqlCode, params })` 仅作兼容路径
72
72
  4. **Backend Function 工作流严格分步**
73
+ - 跨数据库连接的业务查询、关联筛选或聚合,先读 [跨库 BFF 查询与拼接](guides/cross-database-bff.md),确认完整键、执行顺序、各端授权和结果完整性
73
74
  - 查现有 → 确认字段或通知配置 → 查公共函数 → 本地创建(`bff create`) → 检查状态(`bff status`) → 先预览(`--dry-run`) → 再拉取/推送/删除;运行行为异常时用 `bff logs` 按时间、级别和关键字查询日志
74
75
  - `bff pull` / `bff push` 返回 `data.conflicts` 时,逐项报告 `lockKey` 和 `code`,并只在审阅后执行该项 `nextAction`;不得把同步冲突说成失败、自动使用 `--force`,或盲目重试整批脚本
75
76
  - 创建会发送消息通知的 Backend Function 时,先读取 [`backend-function.md`](guides/backend-function.md) 的“消息通知扩展”契约,再执行 [`rabetbase notification config-list --type EMAIL`](references/rabetbase-notification-config-list.md) 获取当前应用的 `configCode`;不得猜测渠道、收件人或把密钥写进脚本
@@ -235,7 +236,7 @@ metadata:
235
236
 
236
237
  1. **标准 SDK 接口**(filter/getOne/create 等)— 能用就不写 SQL
237
238
  2. **aggregate 聚合接口** — DB_TABLE 的简单分组汇总;METADATA 不默认支持 aggregate;聚合定义使用 `column` 指定列,`field` 仅作为历史兼容别名
238
- 3. **自定义 SQL** — DB_TABLE 的复杂 JOIN、数据库函数、跨表统计;METADATA 不支持 SQL 路径
239
+ 3. **自定义 SQL** — 同库 DB_TABLE 的复杂 JOIN、数据库函数、跨表统计;跨库查询由 Backend Function 分别读取并拼接,METADATA 不支持 SQL 路径
239
240
  4. **Backend Function** — 外部系统调用、跨表事务、复杂业务编排
240
241
 
241
242
  ## SDK 核心规则
@@ -461,7 +462,7 @@ const result = await client.bff.execute<DashboardData>({
461
462
  | Database Connections (`db`) | [`list`](references/rabetbase-db-list.md) / [`detail`](references/rabetbase-db-detail.md) / [`create`](references/rabetbase-db-create.md) / [`update`](references/rabetbase-db-update.md) / [`delete`](references/rabetbase-db-delete.md) / [`test`](references/rabetbase-db-test.md) / [`analyze`](references/rabetbase-db-analyze.md) / [`tables`](references/rabetbase-db-tables.md) / [`diff`](references/rabetbase-db-diff.md) / [`diff-refresh-start/status`](references/rabetbase-db-diff-refresh.md) |
462
463
  | Deployment | [`sync-all` / `sync-status` / `sync-jobs`](references/rabetbase-deployment-sync-all.md)(管理员初始化、回填与恢复) |
463
464
  | api commands | [`pull`](references/rabetbase-api-pull.md) / [`list`](references/rabetbase-api-list.md) |
464
- | sql commands | [`list`](references/rabetbase-sql-list.md) / [`detail`](references/rabetbase-sql-detail.md) / [`create`](references/rabetbase-sql-create.md) / [`status`](references/rabetbase-sql-status.md) / [`pull`](references/rabetbase-sql-pull.md) / [`push`](references/rabetbase-sql-push.md) / [`delete`](references/rabetbase-sql-delete.md) / [`validate`](references/rabetbase-sql-validate.md) / [`save`(deprecated)](references/rabetbase-sql-save.md) / [`exec`](references/rabetbase-sql-exec.md) |
465
+ | sql commands | [`list`](references/rabetbase-sql-list.md) / [`detail`](references/rabetbase-sql-detail.md) / [`create`](references/rabetbase-sql-create.md) / [`status`](references/rabetbase-sql-status.md) / [`pull`](references/rabetbase-sql-pull.md) / [`push`](references/rabetbase-sql-push.md) / [`delete`](references/rabetbase-sql-delete.md) / [`validate`](references/rabetbase-sql-validate.md) / [`exec`](references/rabetbase-sql-exec.md) |
465
466
  | bff commands | [`list`](references/rabetbase-bff-list.md) / [`detail`](references/rabetbase-bff-detail.md) / [`logs`](references/rabetbase-bff-logs.md) / [`create`](references/rabetbase-bff-create.md) / [`status`](references/rabetbase-bff-status.md) / [`pull`](references/rabetbase-bff-pull.md) / [`push`](references/rabetbase-bff-push.md) / [`delete`](references/rabetbase-bff-delete.md) |
466
467
  | file / ocr commands | [`file upload/query-url`](references/rabetbase-file.md) / [`ocr recognize`](references/rabetbase-ocr.md) |
467
468
  | codegen commands | [`sdk`](references/rabetbase-codegen-sdk.md) / [`sql`](references/rabetbase-codegen-sql.md) |
@@ -539,6 +540,7 @@ const result = await client.bff.execute<DashboardData>({
539
540
  | 数据接口访问 | 先 detail 再编码、外键/枚举、禁止 N+1、批量与关联查询;验证真实行数据时交接 `lovrabet data`(**`lovrabet` CLI ≥ 2.0**) | [`data-api-guidelines.md`](guides/data-api-guidelines.md) |
540
541
  | SQL 创建工作流 | list/detail → pull/create → edit → validate → status → push/delete → exec 全链路 | [`sql-creation-workflow.md`](guides/sql-creation-workflow.md) |
541
542
  | Backend Function 创建工作流 | new → status → dry-run → pull/push | [`bff-creation-workflow.md`](guides/bff-creation-workflow.md) |
543
+ | 跨库 BFF 查询与拼接 | 完整键、分库批量读取、分页筛选排序、授权与一致性边界 | [`cross-database-bff.md`](guides/cross-database-bff.md) |
542
544
  | 冲突检测与保存 | `blocked`、未保存时的用户沟通、响应结构 | [`conflict-detection.md`](guides/conflict-detection.md) |
543
545
  | 质量与最佳实践 | 审查 SQL/Backend Function、命名、高危边界、描述字段 | [`best-practices.md`](guides/best-practices.md) |
544
546
  | 数据库连接与分析 | 接入/改连/测连、`traceId` 来源、`db analyze-*` 与 dataset 分工;子命令速查见上文 **「数据库连接(db)」** | [`database-connection-workflow.md`](guides/database-connection-workflow.md) |