@simplysm/sd-cli 13.0.99 → 14.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. package/dist/commands/build.js +29 -19
  2. package/dist/commands/build.js.map +1 -6
  3. package/dist/commands/check.d.ts +1 -0
  4. package/dist/commands/check.d.ts.map +1 -1
  5. package/dist/commands/check.js +130 -115
  6. package/dist/commands/check.js.map +1 -6
  7. package/dist/commands/dev.d.ts +6 -7
  8. package/dist/commands/dev.d.ts.map +1 -1
  9. package/dist/commands/dev.js +24 -14
  10. package/dist/commands/dev.js.map +1 -6
  11. package/dist/commands/lint.d.ts +1 -1
  12. package/dist/commands/lint.js +158 -116
  13. package/dist/commands/lint.js.map +1 -6
  14. package/dist/commands/publish.d.ts.map +1 -1
  15. package/dist/commands/publish.js +637 -510
  16. package/dist/commands/publish.js.map +1 -6
  17. package/dist/commands/replace-deps.js +12 -12
  18. package/dist/commands/replace-deps.js.map +1 -6
  19. package/dist/commands/typecheck.d.ts +5 -30
  20. package/dist/commands/typecheck.d.ts.map +1 -1
  21. package/dist/commands/typecheck.js +144 -207
  22. package/dist/commands/typecheck.js.map +1 -6
  23. package/dist/commands/watch.d.ts +6 -4
  24. package/dist/commands/watch.d.ts.map +1 -1
  25. package/dist/commands/watch.js +25 -16
  26. package/dist/commands/watch.js.map +1 -6
  27. package/dist/engines/NgtscEngine.d.ts +47 -0
  28. package/dist/engines/NgtscEngine.d.ts.map +1 -0
  29. package/dist/engines/NgtscEngine.js +151 -0
  30. package/dist/engines/NgtscEngine.js.map +1 -0
  31. package/dist/engines/ServerEsbuildEngine.d.ts +47 -0
  32. package/dist/engines/ServerEsbuildEngine.d.ts.map +1 -0
  33. package/dist/engines/ServerEsbuildEngine.js +159 -0
  34. package/dist/engines/ServerEsbuildEngine.js.map +1 -0
  35. package/dist/engines/TscEngine.d.ts +47 -0
  36. package/dist/engines/TscEngine.d.ts.map +1 -0
  37. package/dist/engines/TscEngine.js +153 -0
  38. package/dist/engines/TscEngine.js.map +1 -0
  39. package/dist/engines/ViteEngine.d.ts +49 -0
  40. package/dist/engines/ViteEngine.d.ts.map +1 -0
  41. package/dist/engines/ViteEngine.js +161 -0
  42. package/dist/engines/ViteEngine.js.map +1 -0
  43. package/dist/engines/index.d.ts +26 -0
  44. package/dist/engines/index.d.ts.map +1 -0
  45. package/dist/engines/index.js +30 -0
  46. package/dist/engines/index.js.map +1 -0
  47. package/dist/engines/types.d.ts +77 -0
  48. package/dist/engines/types.d.ts.map +1 -0
  49. package/dist/engines/types.js +2 -0
  50. package/dist/engines/types.js.map +1 -0
  51. package/dist/index.d.ts +0 -1
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +2 -2
  54. package/dist/index.js.map +1 -6
  55. package/dist/infra/ResultCollector.d.ts +1 -1
  56. package/dist/infra/ResultCollector.d.ts.map +1 -1
  57. package/dist/infra/ResultCollector.js +30 -27
  58. package/dist/infra/ResultCollector.js.map +1 -6
  59. package/dist/infra/SignalHandler.js +45 -42
  60. package/dist/infra/SignalHandler.js.map +1 -6
  61. package/dist/infra/WorkerManager.js +56 -53
  62. package/dist/infra/WorkerManager.js.map +1 -6
  63. package/dist/orchestrators/BuildOrchestrator.d.ts +33 -1
  64. package/dist/orchestrators/BuildOrchestrator.d.ts.map +1 -1
  65. package/dist/orchestrators/BuildOrchestrator.js +314 -309
  66. package/dist/orchestrators/BuildOrchestrator.js.map +1 -6
  67. package/dist/orchestrators/DevWatchOrchestrator.d.ts +60 -0
  68. package/dist/orchestrators/DevWatchOrchestrator.d.ts.map +1 -0
  69. package/dist/orchestrators/DevWatchOrchestrator.js +465 -0
  70. package/dist/orchestrators/DevWatchOrchestrator.js.map +1 -0
  71. package/dist/sd-cli-entry.d.ts.map +1 -1
  72. package/dist/sd-cli-entry.js +190 -266
  73. package/dist/sd-cli-entry.js.map +1 -6
  74. package/dist/sd-cli.js +77 -49
  75. package/dist/sd-cli.js.map +1 -6
  76. package/dist/sd-config.types.d.ts +2 -0
  77. package/dist/sd-config.types.d.ts.map +1 -1
  78. package/dist/sd-config.types.js +2 -1
  79. package/dist/sd-config.types.js.map +1 -6
  80. package/dist/utils/angular-build.d.ts +77 -0
  81. package/dist/utils/angular-build.d.ts.map +1 -0
  82. package/dist/utils/angular-build.js +84 -0
  83. package/dist/utils/angular-build.js.map +1 -0
  84. package/dist/utils/build-env.js +9 -9
  85. package/dist/utils/build-env.js.map +1 -6
  86. package/dist/utils/concurrency.d.ts +15 -0
  87. package/dist/utils/concurrency.d.ts.map +1 -0
  88. package/dist/utils/concurrency.js +38 -0
  89. package/dist/utils/concurrency.js.map +1 -0
  90. package/dist/utils/copy-public.js +104 -87
  91. package/dist/utils/copy-public.js.map +1 -6
  92. package/dist/utils/copy-src.js +49 -35
  93. package/dist/utils/copy-src.js.map +1 -6
  94. package/dist/utils/esbuild-config.d.ts +0 -29
  95. package/dist/utils/esbuild-config.d.ts.map +1 -1
  96. package/dist/utils/esbuild-config.js +151 -218
  97. package/dist/utils/esbuild-config.js.map +1 -6
  98. package/dist/utils/ngtsc-build-core.d.ts +49 -0
  99. package/dist/utils/ngtsc-build-core.d.ts.map +1 -0
  100. package/dist/utils/ngtsc-build-core.js +250 -0
  101. package/dist/utils/ngtsc-build-core.js.map +1 -0
  102. package/dist/utils/output-path-rewriter.d.ts +23 -0
  103. package/dist/utils/output-path-rewriter.d.ts.map +1 -0
  104. package/dist/utils/output-path-rewriter.js +74 -0
  105. package/dist/utils/output-path-rewriter.js.map +1 -0
  106. package/dist/utils/output-utils.js +55 -40
  107. package/dist/utils/output-utils.js.map +1 -6
  108. package/dist/utils/package-utils.d.ts +8 -0
  109. package/dist/utils/package-utils.d.ts.map +1 -1
  110. package/dist/utils/package-utils.js +103 -73
  111. package/dist/utils/package-utils.js.map +1 -6
  112. package/dist/utils/rebuild-manager.js +41 -44
  113. package/dist/utils/rebuild-manager.js.map +1 -6
  114. package/dist/utils/replace-deps.js +283 -184
  115. package/dist/utils/replace-deps.js.map +1 -6
  116. package/dist/utils/scss-compiler.d.ts +10 -0
  117. package/dist/utils/scss-compiler.d.ts.map +1 -0
  118. package/dist/utils/scss-compiler.js +36 -0
  119. package/dist/utils/scss-compiler.js.map +1 -0
  120. package/dist/utils/sd-config.js +29 -19
  121. package/dist/utils/sd-config.js.map +1 -6
  122. package/dist/utils/tsc-build.d.ts +36 -0
  123. package/dist/utils/tsc-build.d.ts.map +1 -0
  124. package/dist/utils/tsc-build.js +130 -0
  125. package/dist/utils/tsc-build.js.map +1 -0
  126. package/dist/utils/tsconfig.d.ts +7 -26
  127. package/dist/utils/tsconfig.d.ts.map +1 -1
  128. package/dist/utils/tsconfig.js +39 -64
  129. package/dist/utils/tsconfig.js.map +1 -6
  130. package/dist/utils/typecheck-non-package.d.ts +18 -0
  131. package/dist/utils/typecheck-non-package.d.ts.map +1 -0
  132. package/dist/utils/typecheck-non-package.js +64 -0
  133. package/dist/utils/typecheck-non-package.js.map +1 -0
  134. package/dist/utils/typecheck-serialization.js +58 -40
  135. package/dist/utils/typecheck-serialization.js.map +1 -6
  136. package/dist/utils/worker-events.js +48 -40
  137. package/dist/utils/worker-events.js.map +1 -6
  138. package/dist/utils/worker-utils.js +48 -28
  139. package/dist/utils/worker-utils.js.map +1 -6
  140. package/dist/vitest-plugin.d.ts +9 -0
  141. package/dist/vitest-plugin.d.ts.map +1 -0
  142. package/dist/vitest-plugin.js +85 -0
  143. package/dist/vitest-plugin.js.map +1 -0
  144. package/dist/workers/library-build.worker.d.ts +54 -0
  145. package/dist/workers/library-build.worker.d.ts.map +1 -0
  146. package/dist/workers/library-build.worker.js +97 -0
  147. package/dist/workers/library-build.worker.js.map +1 -0
  148. package/dist/workers/lint.worker.js +9 -6
  149. package/dist/workers/lint.worker.js.map +1 -6
  150. package/dist/workers/ngtsc-build.worker.d.ts +23 -0
  151. package/dist/workers/ngtsc-build.worker.d.ts.map +1 -0
  152. package/dist/workers/ngtsc-build.worker.js +98 -0
  153. package/dist/workers/ngtsc-build.worker.js.map +1 -0
  154. package/dist/workers/{server.worker.d.ts → server-build.worker.d.ts} +39 -29
  155. package/dist/workers/server-build.worker.d.ts.map +1 -0
  156. package/dist/workers/server-build.worker.js +399 -0
  157. package/dist/workers/server-build.worker.js.map +1 -0
  158. package/dist/workers/server-runtime.worker.d.ts +3 -2
  159. package/dist/workers/server-runtime.worker.d.ts.map +1 -1
  160. package/dist/workers/server-runtime.worker.js +100 -95
  161. package/dist/workers/server-runtime.worker.js.map +1 -6
  162. package/dist/workers/vite-build.worker.d.ts +56 -0
  163. package/dist/workers/vite-build.worker.d.ts.map +1 -0
  164. package/dist/workers/vite-build.worker.js +167 -0
  165. package/dist/workers/vite-build.worker.js.map +1 -0
  166. package/package.json +10 -16
  167. package/src/commands/check.ts +21 -3
  168. package/src/commands/dev.ts +10 -8
  169. package/src/commands/lint.ts +1 -1
  170. package/src/commands/publish.ts +4 -0
  171. package/src/commands/typecheck.ts +89 -256
  172. package/src/commands/watch.ts +9 -8
  173. package/src/engines/NgtscEngine.ts +190 -0
  174. package/src/engines/ServerEsbuildEngine.ts +195 -0
  175. package/src/engines/TscEngine.ts +189 -0
  176. package/src/engines/ViteEngine.ts +203 -0
  177. package/src/engines/index.ts +49 -0
  178. package/src/engines/types.ts +79 -0
  179. package/src/index.ts +0 -3
  180. package/src/infra/ResultCollector.ts +1 -1
  181. package/src/orchestrators/BuildOrchestrator.ts +87 -157
  182. package/src/orchestrators/DevWatchOrchestrator.ts +573 -0
  183. package/src/sd-cli-entry.ts +13 -116
  184. package/src/sd-config.types.ts +2 -0
  185. package/src/utils/angular-build.ts +157 -0
  186. package/src/utils/concurrency.ts +43 -0
  187. package/src/utils/esbuild-config.ts +1 -122
  188. package/src/utils/ngtsc-build-core.ts +379 -0
  189. package/src/utils/output-path-rewriter.ts +82 -0
  190. package/src/utils/package-utils.ts +20 -0
  191. package/src/utils/scss-compiler.ts +58 -0
  192. package/src/utils/tsc-build.ts +175 -0
  193. package/src/utils/tsconfig.ts +27 -95
  194. package/src/utils/typecheck-non-package.ts +87 -0
  195. package/src/vitest-plugin.ts +118 -0
  196. package/src/workers/library-build.worker.ts +153 -0
  197. package/src/workers/ngtsc-build.worker.ts +146 -0
  198. package/src/workers/server-build.worker.ts +565 -0
  199. package/src/workers/server-runtime.worker.ts +17 -26
  200. package/src/workers/vite-build.worker.ts +252 -0
  201. package/tests/commands/check.spec.ts +276 -0
  202. package/tests/commands/dev.spec.ts +53 -0
  203. package/tests/commands/lint.spec.ts +243 -0
  204. package/tests/commands/publish.spec.ts +1159 -0
  205. package/tests/commands/typecheck.spec.ts +294 -0
  206. package/tests/commands/watch.spec.ts +53 -0
  207. package/tests/engines/engine-selection.spec.ts +247 -0
  208. package/tests/engines/ngtsc-engine.spec.ts +274 -0
  209. package/tests/engines/server-esbuild-engine.spec.ts +256 -0
  210. package/tests/engines/tsc-engine.spec.ts +213 -0
  211. package/tests/engines/vite-engine.spec.ts +358 -0
  212. package/tests/infra/result-collector.spec.ts +46 -0
  213. package/tests/infra/signal-handler.spec.ts +32 -0
  214. package/tests/infra/worker-manager.spec.ts +63 -0
  215. package/tests/orchestrators/build-orchestrator.spec.ts +772 -0
  216. package/tests/orchestrators/dev-watch-orchestrator.spec.ts +1173 -0
  217. package/tests/sd-cli-entry.spec.ts +49 -0
  218. package/tests/utils/angular-build.spec.ts +251 -0
  219. package/tests/utils/build-env.spec.ts +33 -0
  220. package/tests/utils/concurrency.spec.ts +65 -0
  221. package/tests/utils/copy-src.spec.ts +144 -0
  222. package/tests/utils/esbuild-config.spec.ts +186 -0
  223. package/tests/utils/external-modules.spec.ts +161 -0
  224. package/tests/utils/ngtsc-scss-refactor.spec.ts +66 -0
  225. package/tests/utils/output-path-rewriter.spec.ts +165 -0
  226. package/tests/utils/output-utils.spec.ts +104 -0
  227. package/tests/utils/package-utils.spec.ts +52 -0
  228. package/tests/utils/rebuild-manager.spec.ts +30 -27
  229. package/tests/utils/replace-deps.spec.ts +69 -0
  230. package/tests/utils/scss-compiler.spec.ts +131 -0
  231. package/tests/utils/sd-config.spec.ts +77 -0
  232. package/tests/utils/tsc-build.spec.ts +358 -0
  233. package/tests/utils/tsconfig-angular.spec.ts +71 -0
  234. package/tests/utils/typecheck-non-package.spec.ts +120 -0
  235. package/tests/utils/worker-events.spec.ts +155 -0
  236. package/tests/utils/worker-utils.spec.ts +43 -0
  237. package/tests/vitest-plugin-cwd.spec.ts +68 -0
  238. package/tests/vitest-plugin.spec.ts +103 -0
  239. package/tests/workers/library-build-worker.spec.ts +258 -0
  240. package/tests/workers/ngtsc-build-worker.spec.ts +187 -0
  241. package/tests/workers/server-build-worker.spec.ts +566 -0
  242. package/tests/workers/server-runtime-worker.spec.ts +251 -0
  243. package/README.md +0 -295
  244. package/dist/builders/BaseBuilder.d.ts +0 -88
  245. package/dist/builders/BaseBuilder.d.ts.map +0 -1
  246. package/dist/builders/BaseBuilder.js +0 -142
  247. package/dist/builders/BaseBuilder.js.map +0 -6
  248. package/dist/builders/DtsBuilder.d.ts +0 -22
  249. package/dist/builders/DtsBuilder.d.ts.map +0 -1
  250. package/dist/builders/DtsBuilder.js +0 -72
  251. package/dist/builders/DtsBuilder.js.map +0 -6
  252. package/dist/builders/LibraryBuilder.d.ts +0 -22
  253. package/dist/builders/LibraryBuilder.d.ts.map +0 -1
  254. package/dist/builders/LibraryBuilder.js +0 -85
  255. package/dist/builders/LibraryBuilder.js.map +0 -6
  256. package/dist/builders/types.d.ts +0 -55
  257. package/dist/builders/types.d.ts.map +0 -1
  258. package/dist/builders/types.js +0 -1
  259. package/dist/builders/types.js.map +0 -6
  260. package/dist/capacitor/capacitor.d.ts +0 -151
  261. package/dist/capacitor/capacitor.d.ts.map +0 -1
  262. package/dist/capacitor/capacitor.js +0 -694
  263. package/dist/capacitor/capacitor.js.map +0 -6
  264. package/dist/commands/device.d.ts +0 -22
  265. package/dist/commands/device.d.ts.map +0 -1
  266. package/dist/commands/device.js +0 -98
  267. package/dist/commands/device.js.map +0 -6
  268. package/dist/commands/init.d.ts +0 -14
  269. package/dist/commands/init.d.ts.map +0 -1
  270. package/dist/commands/init.js +0 -72
  271. package/dist/commands/init.js.map +0 -6
  272. package/dist/electron/electron.d.ts +0 -84
  273. package/dist/electron/electron.d.ts.map +0 -1
  274. package/dist/electron/electron.js +0 -263
  275. package/dist/electron/electron.js.map +0 -6
  276. package/dist/orchestrators/DevOrchestrator.d.ts +0 -83
  277. package/dist/orchestrators/DevOrchestrator.d.ts.map +0 -1
  278. package/dist/orchestrators/DevOrchestrator.js +0 -540
  279. package/dist/orchestrators/DevOrchestrator.js.map +0 -6
  280. package/dist/orchestrators/WatchOrchestrator.d.ts +0 -57
  281. package/dist/orchestrators/WatchOrchestrator.d.ts.map +0 -1
  282. package/dist/orchestrators/WatchOrchestrator.js +0 -199
  283. package/dist/orchestrators/WatchOrchestrator.js.map +0 -6
  284. package/dist/utils/tailwind-config-deps.d.ts +0 -8
  285. package/dist/utils/tailwind-config-deps.d.ts.map +0 -1
  286. package/dist/utils/tailwind-config-deps.js +0 -82
  287. package/dist/utils/tailwind-config-deps.js.map +0 -6
  288. package/dist/utils/template.d.ts +0 -14
  289. package/dist/utils/template.d.ts.map +0 -1
  290. package/dist/utils/template.js +0 -33
  291. package/dist/utils/template.js.map +0 -6
  292. package/dist/utils/vite-config.d.ts +0 -35
  293. package/dist/utils/vite-config.d.ts.map +0 -1
  294. package/dist/utils/vite-config.js +0 -259
  295. package/dist/utils/vite-config.js.map +0 -6
  296. package/dist/workers/client.worker.d.ts +0 -83
  297. package/dist/workers/client.worker.d.ts.map +0 -1
  298. package/dist/workers/client.worker.js +0 -111
  299. package/dist/workers/client.worker.js.map +0 -6
  300. package/dist/workers/dts.worker.d.ts +0 -75
  301. package/dist/workers/dts.worker.d.ts.map +0 -1
  302. package/dist/workers/dts.worker.js +0 -270
  303. package/dist/workers/dts.worker.js.map +0 -6
  304. package/dist/workers/library.worker.d.ts +0 -75
  305. package/dist/workers/library.worker.d.ts.map +0 -1
  306. package/dist/workers/library.worker.js +0 -166
  307. package/dist/workers/library.worker.js.map +0 -6
  308. package/dist/workers/server.worker.d.ts.map +0 -1
  309. package/dist/workers/server.worker.js +0 -482
  310. package/dist/workers/server.worker.js.map +0 -6
  311. package/src/builders/BaseBuilder.ts +0 -218
  312. package/src/builders/DtsBuilder.ts +0 -92
  313. package/src/builders/LibraryBuilder.ts +0 -110
  314. package/src/builders/types.ts +0 -60
  315. package/src/capacitor/capacitor.ts +0 -931
  316. package/src/commands/device.ts +0 -140
  317. package/src/commands/init.ts +0 -113
  318. package/src/electron/electron.ts +0 -362
  319. package/src/orchestrators/DevOrchestrator.ts +0 -744
  320. package/src/orchestrators/WatchOrchestrator.ts +0 -277
  321. package/src/utils/tailwind-config-deps.ts +0 -98
  322. package/src/utils/template.ts +0 -56
  323. package/src/utils/vite-config.ts +0 -390
  324. package/src/workers/client.worker.ts +0 -250
  325. package/src/workers/dts.worker.ts +0 -453
  326. package/src/workers/library.worker.ts +0 -316
  327. package/src/workers/server.worker.ts +0 -734
  328. package/templates/init/.gitignore.hbs +0 -34
  329. package/templates/init/.npmrc.hbs +0 -1
  330. package/templates/init/.prettierignore +0 -1
  331. package/templates/init/.prettierrc.yaml +0 -12
  332. package/templates/init/eslint.config.ts +0 -15
  333. package/templates/init/mise.toml +0 -3
  334. package/templates/init/package.json.hbs +0 -32
  335. package/templates/init/packages/client-admin/index.html.hbs +0 -144
  336. package/templates/init/packages/client-admin/package.json.hbs +0 -27
  337. package/templates/init/packages/client-admin/public/assets/logo-landscape.png +0 -0
  338. package/templates/init/packages/client-admin/public/assets/logo.png +0 -0
  339. package/templates/init/packages/client-admin/public/favicon.ico +0 -0
  340. package/templates/init/packages/client-admin/src/App.tsx +0 -42
  341. package/templates/init/packages/client-admin/src/dev/DevDialog.tsx +0 -34
  342. package/templates/init/packages/client-admin/src/events/AuthChangeEvent.ts +0 -3
  343. package/templates/init/packages/client-admin/src/main.css +0 -4
  344. package/templates/init/packages/client-admin/src/main.tsx.hbs +0 -146
  345. package/templates/init/packages/client-admin/src/providers/AppServiceProvider.tsx.hbs +0 -103
  346. package/templates/init/packages/client-admin/src/providers/AppStructureProvider.tsx +0 -84
  347. package/templates/init/packages/client-admin/src/providers/AuthProvider.tsx.hbs +0 -96
  348. package/templates/init/packages/client-admin/src/providers/configureSharedData.ts.hbs +0 -67
  349. package/templates/init/packages/client-admin/src/views/auth/LoginView.tsx +0 -132
  350. package/templates/init/packages/client-admin/src/views/home/HomeView.tsx +0 -108
  351. package/templates/init/packages/client-admin/src/views/home/base/employee/EmployeeDetail.tsx.hbs +0 -243
  352. package/templates/init/packages/client-admin/src/views/home/base/employee/EmployeeSheet.tsx.hbs +0 -271
  353. package/templates/init/packages/client-admin/src/views/home/base/role-permission/RoleDetail.tsx.hbs +0 -146
  354. package/templates/init/packages/client-admin/src/views/home/base/role-permission/RolePermissionDetail.tsx.hbs +0 -121
  355. package/templates/init/packages/client-admin/src/views/home/base/role-permission/RolePermissionView.tsx +0 -52
  356. package/templates/init/packages/client-admin/src/views/home/base/role-permission/RoleSheet.tsx.hbs +0 -125
  357. package/templates/init/packages/client-admin/src/views/home/main/MainView.tsx.hbs +0 -13
  358. package/templates/init/packages/client-admin/src/views/home/my-info/MyInfoDetail.tsx.hbs +0 -241
  359. package/templates/init/packages/client-admin/src/views/home/system/system-log/SystemLogSheet.tsx.hbs +0 -169
  360. package/templates/init/packages/client-admin/src/views/not-found/NotFoundView.tsx +0 -15
  361. package/templates/init/packages/client-admin/tailwind.config.ts +0 -10
  362. package/templates/init/packages/db-main/package.json.hbs +0 -13
  363. package/templates/init/packages/db-main/src/MainDbContext.ts +0 -22
  364. package/templates/init/packages/db-main/src/dataLogExt.ts +0 -127
  365. package/templates/init/packages/db-main/src/index.ts +0 -14
  366. package/templates/init/packages/db-main/src/tables/base/Employee.ts +0 -24
  367. package/templates/init/packages/db-main/src/tables/base/EmployeeConfig.ts +0 -13
  368. package/templates/init/packages/db-main/src/tables/base/Role.ts +0 -9
  369. package/templates/init/packages/db-main/src/tables/base/RolePermission.ts +0 -13
  370. package/templates/init/packages/db-main/src/tables/system/_DataLog.ts +0 -19
  371. package/templates/init/packages/db-main/src/tables/system/_Log.ts +0 -16
  372. package/templates/init/packages/server/package.json.hbs +0 -20
  373. package/templates/init/packages/server/public-dev/dev//354/264/210/352/270/260/355/231/224.xlsx +0 -0
  374. package/templates/init/packages/server/src/index.ts +0 -4
  375. package/templates/init/packages/server/src/main.ts.hbs +0 -34
  376. package/templates/init/packages/server/src/services/AuthService.ts.hbs +0 -171
  377. package/templates/init/packages/server/src/services/DevService.ts.hbs +0 -94
  378. package/templates/init/packages/server/src/services/EmployeeService.ts.hbs +0 -122
  379. package/templates/init/packages/server/src/services/RoleService.ts.hbs +0 -59
  380. package/templates/init/pnpm-workspace.yaml +0 -15
  381. package/templates/init/sd.config.ts.hbs +0 -48
  382. package/templates/init/tsconfig.json.hbs +0 -39
  383. package/templates/init/vitest.config.ts +0 -36
  384. package/tests/capacitor-exclude.spec.ts +0 -78
  385. package/tests/capacitor.spec.ts +0 -49
  386. package/tests/copy-src.spec.ts +0 -50
  387. package/tests/electron-exclude.spec.ts +0 -61
  388. package/tests/get-compiler-options-for-package.spec.ts +0 -80
  389. package/tests/get-package-source-files.spec.ts +0 -139
  390. package/tests/get-types-from-package-json.spec.ts +0 -92
  391. package/tests/infra/ResultCollector.spec.ts +0 -30
  392. package/tests/infra/SignalHandler.spec.ts +0 -38
  393. package/tests/infra/WorkerManager.spec.ts +0 -63
  394. package/tests/load-ignore-patterns.spec.ts +0 -163
  395. package/tests/load-sd-config.spec.ts +0 -100
  396. package/tests/package-utils.spec.ts +0 -188
  397. package/tests/parse-root-tsconfig.spec.ts +0 -89
  398. package/tests/publish-config-narrowing.spec.ts +0 -20
  399. package/tests/replace-deps.spec.ts +0 -308
  400. package/tests/run-lint.spec.ts +0 -366
  401. package/tests/run-typecheck.spec.ts +0 -544
  402. package/tests/run-watch.spec.ts +0 -76
  403. package/tests/sd-cli.spec.ts +0 -265
  404. package/tests/sd-public-dev-plugin-mime.spec.ts +0 -19
  405. package/tests/tailwind-config-deps.spec.ts +0 -30
  406. package/tests/template.spec.ts +0 -70
  407. package/tests/vite-config-exclude.spec.ts +0 -35
  408. package/tests/vite-config-outdir.spec.ts +0 -38
  409. package/tests/write-changed-output-files.spec.ts +0 -97
@@ -1,218 +0,0 @@
1
- import { consola } from "consola";
2
- import { WorkerManager } from "../infra/WorkerManager";
3
- import type { BuildResult, ResultCollector } from "../infra/ResultCollector";
4
- import type { RebuildManager } from "../utils/rebuild-manager";
5
- import type { BuildEventData, ErrorEventData } from "../utils/worker-events";
6
- import { formatBuildMessages } from "../utils/output-utils";
7
- import type { IBuilder, PackageInfo } from "./types";
8
-
9
- const baseBuilderLogger = consola.withTag("sd:cli:build");
10
-
11
- /**
12
- * Abstract base class for Builder
13
- *
14
- * Provides common logic for all Builders and
15
- * defines abstract methods that subclasses must implement.
16
- */
17
- export abstract class BaseBuilder implements IBuilder {
18
- protected readonly workerManager: WorkerManager;
19
- protected readonly resultCollector: ResultCollector;
20
- protected readonly rebuildManager: RebuildManager | undefined;
21
- protected readonly packages: PackageInfo[];
22
- protected readonly cwd: string;
23
- protected isWatchMode = false;
24
-
25
- /** Initial build Promise (per package) */
26
- protected readonly initialBuildPromises = new Map<string, Promise<void>>();
27
- /** Initial build resolver (per package) */
28
- protected readonly buildResolvers = new Map<string, () => void>();
29
-
30
- constructor(options: {
31
- cwd: string;
32
- packages: PackageInfo[];
33
- resultCollector: ResultCollector;
34
- rebuildManager?: RebuildManager;
35
- }) {
36
- this.cwd = options.cwd;
37
- this.packages = options.packages;
38
- this.resultCollector = options.resultCollector;
39
- this.rebuildManager = options.rebuildManager;
40
- this.workerManager = new WorkerManager();
41
- }
42
-
43
- /**
44
- * Initialize Builder
45
- */
46
- initialize(): Promise<void> {
47
- // Create initial build Promises
48
- for (const pkg of this.packages) {
49
- const key = this.getPackageKey(pkg);
50
- this.initialBuildPromises.set(
51
- key,
52
- new Promise<void>((resolve) => {
53
- this.buildResolvers.set(key, resolve);
54
- }),
55
- );
56
- }
57
-
58
- // Create Workers
59
- this.createWorkers();
60
-
61
- // Register event handlers
62
- this.registerEventHandlers();
63
-
64
- return Promise.resolve();
65
- }
66
-
67
- /**
68
- * One-time build (production)
69
- */
70
- async build(): Promise<void> {
71
- await Promise.all(this.packages.map((pkg) => this.buildPackage(pkg)));
72
- }
73
-
74
- /**
75
- * Start watch mode
76
- */
77
- async startWatch(): Promise<void> {
78
- this.isWatchMode = true;
79
-
80
- // Start watching all packages (without await - run in background)
81
- for (const pkg of this.packages) {
82
- this.startWatchPackage(pkg);
83
- }
84
-
85
- // Wait until initial build is complete
86
- await Promise.all(this.initialBuildPromises.values());
87
- }
88
-
89
- /**
90
- * Shutdown Builder
91
- */
92
- async shutdown(): Promise<void> {
93
- await this.workerManager.terminateAll();
94
- }
95
-
96
- /**
97
- * Get initial build Promise map
98
- */
99
- getInitialBuildPromises(): Map<string, Promise<void>> {
100
- return this.initialBuildPromises;
101
- }
102
-
103
- /**
104
- * Generate package key (for result storage)
105
- */
106
- protected getPackageKey(pkg: PackageInfo): string {
107
- return `${pkg.name}:${this.getBuilderType()}`;
108
- }
109
-
110
- /**
111
- * Handle build completion
112
- */
113
- protected completeBuild(pkg: PackageInfo): void {
114
- const key = this.getPackageKey(pkg);
115
- const resolver = this.buildResolvers.get(key);
116
- if (resolver != null) {
117
- resolver();
118
- this.buildResolvers.delete(key);
119
- }
120
- }
121
-
122
- /**
123
- * Register common Worker event handlers (buildStart, build, error)
124
- *
125
- * Provides common logic so LibraryBuilder and DtsBuilder can register
126
- * event handlers with the same pattern without duplication.
127
- *
128
- * @param workerKey Worker identifier (e.g., "core-common:build")
129
- * @param resultType BuildResult type field value
130
- * @param listrTitle Title to display during rebuild
131
- */
132
- protected registerEventHandlersForWorker(
133
- pkg: PackageInfo,
134
- workerKey: string,
135
- resultType: BuildResult["type"],
136
- listrTitle: string,
137
- ): void {
138
- const worker = this.workerManager.get(workerKey)!;
139
-
140
- // Track if this is initial build
141
- let isInitialBuild = true;
142
-
143
- // Build start (during rebuild)
144
- worker.on("buildStart", () => {
145
- if (!isInitialBuild && this.rebuildManager != null) {
146
- const resolver = this.rebuildManager.registerBuild(workerKey, listrTitle);
147
- this.buildResolvers.set(workerKey, resolver);
148
- }
149
- });
150
-
151
- // Build complete
152
- worker.on("build", (data) => {
153
- const event = data as BuildEventData;
154
-
155
- // Output warnings
156
- if (event.warnings != null && event.warnings.length > 0) {
157
- baseBuilderLogger.warn(formatBuildMessages(pkg.name, pkg.config.target, event.warnings));
158
- }
159
-
160
- const result: BuildResult = {
161
- name: pkg.name,
162
- target: pkg.config.target,
163
- type: resultType,
164
- status: event.success ? "success" : "error",
165
- message: event.errors?.join("\n"),
166
- };
167
- this.resultCollector.add(result);
168
-
169
- if (isInitialBuild) {
170
- isInitialBuild = false;
171
- }
172
- this.completeBuild(pkg);
173
- });
174
-
175
- // Error
176
- worker.on("error", (data) => {
177
- const event = data as ErrorEventData;
178
- const result: BuildResult = {
179
- name: pkg.name,
180
- target: pkg.config.target,
181
- type: resultType,
182
- status: "error",
183
- message: event.message,
184
- };
185
- this.resultCollector.add(result);
186
-
187
- if (isInitialBuild) {
188
- isInitialBuild = false;
189
- }
190
- this.completeBuild(pkg);
191
- });
192
- }
193
-
194
- /**
195
- * Builder type (for result key generation)
196
- */
197
- protected abstract getBuilderType(): string;
198
-
199
- /**
200
- * Create Workers
201
- */
202
- protected abstract createWorkers(): void;
203
-
204
- /**
205
- * Register event handlers
206
- */
207
- protected abstract registerEventHandlers(): void;
208
-
209
- /**
210
- * Single package build (production)
211
- */
212
- protected abstract buildPackage(pkg: PackageInfo): Promise<void>;
213
-
214
- /**
215
- * Start watching single package
216
- */
217
- protected abstract startWatchPackage(pkg: PackageInfo): void;
218
- }
@@ -1,92 +0,0 @@
1
- import type * as DtsWorkerModule from "../workers/dts.worker";
2
- import type { BuildResult } from "../infra/ResultCollector";
3
- import { err as errNs } from "@simplysm/core-common";
4
- import type { TypecheckEnv } from "../utils/tsconfig";
5
- import { BaseBuilder } from "./BaseBuilder";
6
- import type { PackageInfo } from "./types";
7
-
8
- /**
9
- * Builder responsible for generating .d.ts files
10
- *
11
- * Handles TypeScript declaration file generation for library packages.
12
- * Supports both watch mode and production builds.
13
- */
14
- export class DtsBuilder extends BaseBuilder {
15
- private readonly _workerPath: string;
16
-
17
- constructor(options: ConstructorParameters<typeof BaseBuilder>[0]) {
18
- super(options);
19
- this._workerPath = import.meta.resolve("../workers/dts.worker");
20
- }
21
-
22
- protected getBuilderType(): string {
23
- return "dts";
24
- }
25
-
26
- /**
27
- * Determine TypecheckEnv from package target
28
- */
29
- private _getEnv(pkg: PackageInfo): TypecheckEnv {
30
- const target = pkg.config.target;
31
- if (target === "node") return "node";
32
- return "browser"; // browser, neutral, client all use browser environment
33
- }
34
-
35
- protected createWorkers(): void {
36
- for (const pkg of this.packages) {
37
- this.workerManager.create<typeof DtsWorkerModule>(`${pkg.name}:dts`, this._workerPath);
38
- }
39
- }
40
-
41
- protected registerEventHandlers(): void {
42
- for (const pkg of this.packages) {
43
- const workerKey = `${pkg.name}:dts`;
44
- const listrTitle = `${pkg.name} (dts)`;
45
- this.registerEventHandlersForWorker(pkg, workerKey, "dts", listrTitle);
46
- }
47
- }
48
-
49
- protected async buildPackage(pkg: PackageInfo): Promise<void> {
50
- const worker = this.workerManager.get<typeof DtsWorkerModule>(`${pkg.name}:dts`)!;
51
-
52
- const buildPromise = new Promise<void>((resolve) => {
53
- const originalResolver = this.buildResolvers.get(`${pkg.name}:dts`);
54
- this.buildResolvers.set(`${pkg.name}:dts`, () => {
55
- originalResolver?.();
56
- resolve();
57
- });
58
- });
59
-
60
- void worker.startWatch({
61
- name: pkg.name,
62
- cwd: this.cwd,
63
- pkgDir: pkg.dir,
64
- env: this._getEnv(pkg),
65
- });
66
-
67
- await buildPromise;
68
- }
69
-
70
- protected startWatchPackage(pkg: PackageInfo): void {
71
- const worker = this.workerManager.get<typeof DtsWorkerModule>(`${pkg.name}:dts`)!;
72
-
73
- worker
74
- .startWatch({
75
- name: pkg.name,
76
- cwd: this.cwd,
77
- pkgDir: pkg.dir,
78
- env: this._getEnv(pkg),
79
- })
80
- .catch((err: unknown) => {
81
- const result: BuildResult = {
82
- name: pkg.name,
83
- target: pkg.config.target,
84
- type: "dts",
85
- status: "error",
86
- message: errNs.message(err),
87
- };
88
- this.resultCollector.add(result);
89
- this.completeBuild(pkg);
90
- });
91
- }
92
- }
@@ -1,110 +0,0 @@
1
- import type * as LibraryWorkerModule from "../workers/library.worker";
2
- import type { BuildResult } from "../infra/ResultCollector";
3
- import { err as errNs } from "@simplysm/core-common";
4
- import { BaseBuilder } from "./BaseBuilder";
5
- import type { BuildPackageInfo } from "./types";
6
-
7
- /**
8
- * Builder responsible for Library package builds
9
- *
10
- * Handles esbuild compilation for node/browser/neutral target packages.
11
- * Supports both watch mode and production builds.
12
- */
13
- export class LibraryBuilder extends BaseBuilder {
14
- private readonly _workerPath: string;
15
-
16
- constructor(options: ConstructorParameters<typeof BaseBuilder>[0]) {
17
- super(options);
18
- this._workerPath = import.meta.resolve("../workers/library.worker");
19
- }
20
-
21
- protected getBuilderType(): string {
22
- return "build";
23
- }
24
-
25
- protected createWorkers(): void {
26
- for (const pkg of this.packages) {
27
- this.workerManager.create<typeof LibraryWorkerModule>(`${pkg.name}:build`, this._workerPath);
28
- }
29
- }
30
-
31
- protected registerEventHandlers(): void {
32
- for (const pkg of this.packages) {
33
- const workerKey = `${pkg.name}:build`;
34
- const listrTitle = `${pkg.name} (${pkg.config.target})`;
35
- this.registerEventHandlersForWorker(pkg, workerKey, "build", listrTitle);
36
- }
37
- }
38
-
39
- protected async buildPackage(pkg: BuildPackageInfo): Promise<void> {
40
- const worker = this.workerManager.get<typeof LibraryWorkerModule>(`${pkg.name}:build`)!;
41
-
42
- // Create build completion Promise
43
- const buildPromise = new Promise<void>((resolve) => {
44
- const originalResolver = this.buildResolvers.get(`${pkg.name}:build`);
45
- this.buildResolvers.set(`${pkg.name}:build`, () => {
46
- originalResolver?.();
47
- resolve();
48
- });
49
- });
50
-
51
- // Start build (without await - completion detected via events)
52
- void worker.startWatch({
53
- name: pkg.name,
54
- config: pkg.config,
55
- cwd: this.cwd,
56
- pkgDir: pkg.dir,
57
- });
58
-
59
- await buildPromise;
60
- }
61
-
62
- protected startWatchPackage(pkg: BuildPackageInfo): void {
63
- const worker = this.workerManager.get<typeof LibraryWorkerModule>(`${pkg.name}:build`)!;
64
-
65
- worker
66
- .startWatch({
67
- name: pkg.name,
68
- config: pkg.config,
69
- cwd: this.cwd,
70
- pkgDir: pkg.dir,
71
- })
72
- .catch((err: unknown) => {
73
- const result: BuildResult = {
74
- name: pkg.name,
75
- target: pkg.config.target,
76
- type: "build",
77
- status: "error",
78
- message: errNs.message(err),
79
- };
80
- this.resultCollector.add(result);
81
- this.completeBuild(pkg);
82
- });
83
- }
84
-
85
- /**
86
- * Graceful shutdown (esbuild context dispose)
87
- */
88
- override async shutdown(): Promise<void> {
89
- const shutdownTimeout = 3000;
90
-
91
- // Call stopWatch method on each Worker, then terminate
92
- await Promise.all(
93
- this.workerManager.ids.map(async (id) => {
94
- const worker = this.workerManager.get<typeof LibraryWorkerModule>(id);
95
- if (worker != null) {
96
- try {
97
- await Promise.race([
98
- worker.stopWatch(),
99
- new Promise<void>((resolve) => setTimeout(resolve, shutdownTimeout)),
100
- ]);
101
- } catch {
102
- // Continue even if stopWatch fails
103
- }
104
- }
105
- }),
106
- );
107
-
108
- await super.shutdown();
109
- }
110
- }
@@ -1,60 +0,0 @@
1
- import type { SdBuildPackageConfig, SdPackageConfig } from "../sd-config.types";
2
- import type { ResultCollector } from "../infra/ResultCollector";
3
- import type { RebuildManager } from "../utils/rebuild-manager";
4
-
5
- /**
6
- * Package information
7
- */
8
- export interface PackageInfo {
9
- name: string;
10
- dir: string;
11
- config: SdPackageConfig;
12
- }
13
-
14
- /**
15
- * PackageInfo narrowed for build packages (node/browser/neutral)
16
- */
17
- export type BuildPackageInfo = PackageInfo & { config: SdBuildPackageConfig };
18
-
19
- /**
20
- * Common Builder options
21
- */
22
- export interface BuilderOptions {
23
- cwd: string;
24
- packages: PackageInfo[];
25
- resultCollector: ResultCollector;
26
- rebuildManager?: RebuildManager;
27
- }
28
-
29
- /**
30
- * Builder interface
31
- *
32
- * Common interface that all Builders must implement
33
- */
34
- export interface IBuilder {
35
- /**
36
- * Initialize Builder (create Workers, register event handlers)
37
- */
38
- initialize(): Promise<void>;
39
-
40
- /**
41
- * One-time build (for production builds)
42
- */
43
- build(): Promise<void>;
44
-
45
- /**
46
- * Start watch mode
47
- * Promise resolves when initial build is complete
48
- */
49
- startWatch(): Promise<void>;
50
-
51
- /**
52
- * Shutdown Builder (clean up Workers)
53
- */
54
- shutdown(): Promise<void>;
55
-
56
- /**
57
- * Get initial build Promise map (for Listr tasks)
58
- */
59
- getInitialBuildPromises(): Map<string, Promise<void>>;
60
- }