@oaysus/cli 0.1.0

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 (243) hide show
  1. package/README.md +166 -0
  2. package/bin/oaysus.js +6 -0
  3. package/dist/cli.d.ts +11 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +174 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/commands/login.d.ts +2 -0
  8. package/dist/commands/login.d.ts.map +1 -0
  9. package/dist/commands/login.js +75 -0
  10. package/dist/commands/login.js.map +1 -0
  11. package/dist/commands/logout.d.ts +2 -0
  12. package/dist/commands/logout.d.ts.map +1 -0
  13. package/dist/commands/logout.js +23 -0
  14. package/dist/commands/logout.js.map +1 -0
  15. package/dist/commands/whoami.d.ts +2 -0
  16. package/dist/commands/whoami.d.ts.map +1 -0
  17. package/dist/commands/whoami.js +44 -0
  18. package/dist/commands/whoami.js.map +1 -0
  19. package/dist/components/App.d.ts +43 -0
  20. package/dist/components/App.d.ts.map +1 -0
  21. package/dist/components/App.js +63 -0
  22. package/dist/components/App.js.map +1 -0
  23. package/dist/components/BuildProgress.d.ts +16 -0
  24. package/dist/components/BuildProgress.d.ts.map +1 -0
  25. package/dist/components/BuildProgress.js +42 -0
  26. package/dist/components/BuildProgress.js.map +1 -0
  27. package/dist/components/ErrorMessage.d.ts +13 -0
  28. package/dist/components/ErrorMessage.d.ts.map +1 -0
  29. package/dist/components/ErrorMessage.js +29 -0
  30. package/dist/components/ErrorMessage.js.map +1 -0
  31. package/dist/components/FileList.d.ts +13 -0
  32. package/dist/components/FileList.d.ts.map +1 -0
  33. package/dist/components/FileList.js +25 -0
  34. package/dist/components/FileList.js.map +1 -0
  35. package/dist/components/Header.d.ts +12 -0
  36. package/dist/components/Header.d.ts.map +1 -0
  37. package/dist/components/Header.js +18 -0
  38. package/dist/components/Header.js.map +1 -0
  39. package/dist/components/LastCommand.d.ts +9 -0
  40. package/dist/components/LastCommand.d.ts.map +1 -0
  41. package/dist/components/LastCommand.js +39 -0
  42. package/dist/components/LastCommand.js.map +1 -0
  43. package/dist/components/Logo.d.ts +14 -0
  44. package/dist/components/Logo.d.ts.map +1 -0
  45. package/dist/components/Logo.js +44 -0
  46. package/dist/components/Logo.js.map +1 -0
  47. package/dist/components/ProgressBar.d.ts +13 -0
  48. package/dist/components/ProgressBar.d.ts.map +1 -0
  49. package/dist/components/ProgressBar.js +20 -0
  50. package/dist/components/ProgressBar.js.map +1 -0
  51. package/dist/components/SlashCommands.d.ts +17 -0
  52. package/dist/components/SlashCommands.d.ts.map +1 -0
  53. package/dist/components/SlashCommands.js +59 -0
  54. package/dist/components/SlashCommands.js.map +1 -0
  55. package/dist/components/Spinner.d.ts +13 -0
  56. package/dist/components/Spinner.d.ts.map +1 -0
  57. package/dist/components/Spinner.js +16 -0
  58. package/dist/components/Spinner.js.map +1 -0
  59. package/dist/components/StatusCard.d.ts +14 -0
  60. package/dist/components/StatusCard.d.ts.map +1 -0
  61. package/dist/components/StatusCard.js +40 -0
  62. package/dist/components/StatusCard.js.map +1 -0
  63. package/dist/components/SuccessMessage.d.ts +12 -0
  64. package/dist/components/SuccessMessage.d.ts.map +1 -0
  65. package/dist/components/SuccessMessage.js +18 -0
  66. package/dist/components/SuccessMessage.js.map +1 -0
  67. package/dist/components/UploadProgress.d.ts +13 -0
  68. package/dist/components/UploadProgress.d.ts.map +1 -0
  69. package/dist/components/UploadProgress.js +40 -0
  70. package/dist/components/UploadProgress.js.map +1 -0
  71. package/dist/components/ValidationProgress.d.ts +12 -0
  72. package/dist/components/ValidationProgress.d.ts.map +1 -0
  73. package/dist/components/ValidationProgress.js +44 -0
  74. package/dist/components/ValidationProgress.js.map +1 -0
  75. package/dist/index.d.ts +7 -0
  76. package/dist/index.d.ts.map +1 -0
  77. package/dist/index.js +21 -0
  78. package/dist/index.js.map +1 -0
  79. package/dist/lib/core/framework-registry.d.ts +27 -0
  80. package/dist/lib/core/framework-registry.d.ts.map +1 -0
  81. package/dist/lib/core/framework-registry.js +67 -0
  82. package/dist/lib/core/framework-registry.js.map +1 -0
  83. package/dist/lib/core/types.d.ts +124 -0
  84. package/dist/lib/core/types.d.ts.map +1 -0
  85. package/dist/lib/core/types.js +6 -0
  86. package/dist/lib/core/types.js.map +1 -0
  87. package/dist/lib/project-generator.d.ts +15 -0
  88. package/dist/lib/project-generator.d.ts.map +1 -0
  89. package/dist/lib/project-generator.js +286 -0
  90. package/dist/lib/project-generator.js.map +1 -0
  91. package/dist/lib/push.d.ts +20 -0
  92. package/dist/lib/push.d.ts.map +1 -0
  93. package/dist/lib/push.js +222 -0
  94. package/dist/lib/push.js.map +1 -0
  95. package/dist/lib/react/builder.d.ts +45 -0
  96. package/dist/lib/react/builder.d.ts.map +1 -0
  97. package/dist/lib/react/builder.js +381 -0
  98. package/dist/lib/react/builder.js.map +1 -0
  99. package/dist/lib/react/bundler.d.ts +104 -0
  100. package/dist/lib/react/bundler.d.ts.map +1 -0
  101. package/dist/lib/react/bundler.js +654 -0
  102. package/dist/lib/react/bundler.js.map +1 -0
  103. package/dist/lib/react/config.d.ts +34 -0
  104. package/dist/lib/react/config.d.ts.map +1 -0
  105. package/dist/lib/react/config.js +64 -0
  106. package/dist/lib/react/config.js.map +1 -0
  107. package/dist/lib/react/import-map.d.ts +54 -0
  108. package/dist/lib/react/import-map.d.ts.map +1 -0
  109. package/dist/lib/react/import-map.js +187 -0
  110. package/dist/lib/react/import-map.js.map +1 -0
  111. package/dist/lib/shared/auth-middleware.d.ts +29 -0
  112. package/dist/lib/shared/auth-middleware.d.ts.map +1 -0
  113. package/dist/lib/shared/auth-middleware.js +48 -0
  114. package/dist/lib/shared/auth-middleware.js.map +1 -0
  115. package/dist/lib/shared/auth.d.ts +50 -0
  116. package/dist/lib/shared/auth.d.ts.map +1 -0
  117. package/dist/lib/shared/auth.js +243 -0
  118. package/dist/lib/shared/auth.js.map +1 -0
  119. package/dist/lib/shared/cdn-downloader.d.ts +30 -0
  120. package/dist/lib/shared/cdn-downloader.d.ts.map +1 -0
  121. package/dist/lib/shared/cdn-downloader.js +126 -0
  122. package/dist/lib/shared/cdn-downloader.js.map +1 -0
  123. package/dist/lib/shared/command-history.d.ts +29 -0
  124. package/dist/lib/shared/command-history.d.ts.map +1 -0
  125. package/dist/lib/shared/command-history.js +73 -0
  126. package/dist/lib/shared/command-history.js.map +1 -0
  127. package/dist/lib/shared/commands.d.ts +24 -0
  128. package/dist/lib/shared/commands.d.ts.map +1 -0
  129. package/dist/lib/shared/commands.js +63 -0
  130. package/dist/lib/shared/commands.js.map +1 -0
  131. package/dist/lib/shared/config.d.ts +40 -0
  132. package/dist/lib/shared/config.d.ts.map +1 -0
  133. package/dist/lib/shared/config.js +69 -0
  134. package/dist/lib/shared/config.js.map +1 -0
  135. package/dist/lib/shared/file-utils.d.ts +45 -0
  136. package/dist/lib/shared/file-utils.d.ts.map +1 -0
  137. package/dist/lib/shared/file-utils.js +88 -0
  138. package/dist/lib/shared/file-utils.js.map +1 -0
  139. package/dist/lib/shared/import-analyzer.d.ts +49 -0
  140. package/dist/lib/shared/import-analyzer.d.ts.map +1 -0
  141. package/dist/lib/shared/import-analyzer.js +268 -0
  142. package/dist/lib/shared/import-analyzer.js.map +1 -0
  143. package/dist/lib/shared/path-builder.d.ts +55 -0
  144. package/dist/lib/shared/path-builder.d.ts.map +1 -0
  145. package/dist/lib/shared/path-builder.js +66 -0
  146. package/dist/lib/shared/path-builder.js.map +1 -0
  147. package/dist/lib/shared/uploader.d.ts +79 -0
  148. package/dist/lib/shared/uploader.d.ts.map +1 -0
  149. package/dist/lib/shared/uploader.js +340 -0
  150. package/dist/lib/shared/uploader.js.map +1 -0
  151. package/dist/lib/shared/zip-creator.d.ts +18 -0
  152. package/dist/lib/shared/zip-creator.d.ts.map +1 -0
  153. package/dist/lib/shared/zip-creator.js +131 -0
  154. package/dist/lib/shared/zip-creator.js.map +1 -0
  155. package/dist/lib/svelte/builder.d.ts +37 -0
  156. package/dist/lib/svelte/builder.d.ts.map +1 -0
  157. package/dist/lib/svelte/builder.js +364 -0
  158. package/dist/lib/svelte/builder.js.map +1 -0
  159. package/dist/lib/svelte/bundler.d.ts +92 -0
  160. package/dist/lib/svelte/bundler.d.ts.map +1 -0
  161. package/dist/lib/svelte/bundler.js +499 -0
  162. package/dist/lib/svelte/bundler.js.map +1 -0
  163. package/dist/lib/svelte/config.d.ts +22 -0
  164. package/dist/lib/svelte/config.d.ts.map +1 -0
  165. package/dist/lib/svelte/config.js +65 -0
  166. package/dist/lib/svelte/config.js.map +1 -0
  167. package/dist/lib/svelte/import-map.d.ts +42 -0
  168. package/dist/lib/svelte/import-map.d.ts.map +1 -0
  169. package/dist/lib/svelte/import-map.js +197 -0
  170. package/dist/lib/svelte/import-map.js.map +1 -0
  171. package/dist/lib/template-manager.d.ts +33 -0
  172. package/dist/lib/template-manager.d.ts.map +1 -0
  173. package/dist/lib/template-manager.js +69 -0
  174. package/dist/lib/template-manager.js.map +1 -0
  175. package/dist/lib/validator.d.ts +10 -0
  176. package/dist/lib/validator.d.ts.map +1 -0
  177. package/dist/lib/validator.js +343 -0
  178. package/dist/lib/validator.js.map +1 -0
  179. package/dist/lib/vue/builder.d.ts +37 -0
  180. package/dist/lib/vue/builder.d.ts.map +1 -0
  181. package/dist/lib/vue/builder.js +366 -0
  182. package/dist/lib/vue/builder.js.map +1 -0
  183. package/dist/lib/vue/bundler.d.ts +78 -0
  184. package/dist/lib/vue/bundler.d.ts.map +1 -0
  185. package/dist/lib/vue/bundler.js +208 -0
  186. package/dist/lib/vue/bundler.js.map +1 -0
  187. package/dist/lib/vue/config.d.ts +18 -0
  188. package/dist/lib/vue/config.d.ts.map +1 -0
  189. package/dist/lib/vue/config.js +42 -0
  190. package/dist/lib/vue/config.js.map +1 -0
  191. package/dist/lib/vue/import-map.d.ts +42 -0
  192. package/dist/lib/vue/import-map.d.ts.map +1 -0
  193. package/dist/lib/vue/import-map.js +156 -0
  194. package/dist/lib/vue/import-map.js.map +1 -0
  195. package/dist/screens/BuildScreen.d.ts +8 -0
  196. package/dist/screens/BuildScreen.d.ts.map +1 -0
  197. package/dist/screens/BuildScreen.js +158 -0
  198. package/dist/screens/BuildScreen.js.map +1 -0
  199. package/dist/screens/CreateScreen.d.ts +12 -0
  200. package/dist/screens/CreateScreen.d.ts.map +1 -0
  201. package/dist/screens/CreateScreen.js +305 -0
  202. package/dist/screens/CreateScreen.js.map +1 -0
  203. package/dist/screens/InitScreen.d.ts +11 -0
  204. package/dist/screens/InitScreen.d.ts.map +1 -0
  205. package/dist/screens/InitScreen.js +339 -0
  206. package/dist/screens/InitScreen.js.map +1 -0
  207. package/dist/screens/LoginScreen.d.ts +15 -0
  208. package/dist/screens/LoginScreen.d.ts.map +1 -0
  209. package/dist/screens/LoginScreen.js +427 -0
  210. package/dist/screens/LoginScreen.js.map +1 -0
  211. package/dist/screens/LogoutScreen.d.ts +15 -0
  212. package/dist/screens/LogoutScreen.d.ts.map +1 -0
  213. package/dist/screens/LogoutScreen.js +187 -0
  214. package/dist/screens/LogoutScreen.js.map +1 -0
  215. package/dist/screens/PushScreen.d.ts +12 -0
  216. package/dist/screens/PushScreen.d.ts.map +1 -0
  217. package/dist/screens/PushScreen.js +546 -0
  218. package/dist/screens/PushScreen.js.map +1 -0
  219. package/dist/screens/ValidateScreen.d.ts +12 -0
  220. package/dist/screens/ValidateScreen.d.ts.map +1 -0
  221. package/dist/screens/ValidateScreen.js +193 -0
  222. package/dist/screens/ValidateScreen.js.map +1 -0
  223. package/dist/screens/WelcomeScreen.d.ts +39 -0
  224. package/dist/screens/WelcomeScreen.d.ts.map +1 -0
  225. package/dist/screens/WelcomeScreen.js +297 -0
  226. package/dist/screens/WelcomeScreen.js.map +1 -0
  227. package/dist/screens/WhoamiScreen.d.ts +14 -0
  228. package/dist/screens/WhoamiScreen.d.ts.map +1 -0
  229. package/dist/screens/WhoamiScreen.js +180 -0
  230. package/dist/screens/WhoamiScreen.js.map +1 -0
  231. package/dist/types/index.d.ts +40 -0
  232. package/dist/types/index.d.ts.map +1 -0
  233. package/dist/types/index.js +2 -0
  234. package/dist/types/index.js.map +1 -0
  235. package/dist/types/templates.d.ts +55 -0
  236. package/dist/types/templates.d.ts.map +1 -0
  237. package/dist/types/templates.js +6 -0
  238. package/dist/types/templates.js.map +1 -0
  239. package/dist/types/validation.d.ts +108 -0
  240. package/dist/types/validation.d.ts.map +1 -0
  241. package/dist/types/validation.js +6 -0
  242. package/dist/types/validation.js.map +1 -0
  243. package/package.json +94 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zip-creator.js","sourceRoot":"","sources":["../../../src/lib/shared/zip-creator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Svelte Component Builder
3
+ * Svelte-specific implementation of the component builder
4
+ */
5
+ import type { ValidationResult } from '../../types/validation.js';
6
+ import type { IBuilder, BuildResult } from '../core/types.js';
7
+ declare class SvelteBuilder implements IBuilder {
8
+ /**
9
+ * Build a single Svelte component with Vite
10
+ */
11
+ private buildComponent;
12
+ /**
13
+ * Build theme-level Tailwind CSS
14
+ * Supports both Tailwind v3 and v4
15
+ */
16
+ buildThemeCSS(projectPath: string, outputDir: string, packageJson: any): Promise<{
17
+ cssPath: string;
18
+ size: number;
19
+ } | null>;
20
+ /**
21
+ * Build all Svelte components in a package
22
+ */
23
+ buildComponents(validationResult: ValidationResult, projectPath: string): Promise<BuildResult>;
24
+ /**
25
+ * Build a single Svelte component for server-side rendering
26
+ * Creates self-contained Node.js bundle with render function export
27
+ */
28
+ private buildServerComponent;
29
+ /**
30
+ * Build all Svelte components for server-side rendering
31
+ */
32
+ buildServerComponents(validationResult: ValidationResult, projectPath: string): Promise<import('../core/types.js').ServerBuildResult>;
33
+ }
34
+ declare const builder: SvelteBuilder;
35
+ export default builder;
36
+ export { builder };
37
+ //# sourceMappingURL=builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../../src/lib/svelte/builder.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,gBAAgB,EAAiB,MAAM,2BAA2B,CAAC;AACjF,OAAO,KAAK,EAAE,QAAQ,EAAwB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpF,cAAM,aAAc,YAAW,QAAQ;IACrC;;OAEG;YACW,cAAc;IA6G5B;;;OAGG;IACG,aAAa,CACjB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,GAAG,GACf,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAiGpD;;OAEG;IACG,eAAe,CACnB,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,WAAW,CAAC;IAyDvB;;;OAGG;YACW,oBAAoB;IAwGlC;;OAEG;IACG,qBAAqB,CACzB,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,kBAAkB,EAAE,iBAAiB,CAAC;CAkCzD;AAGD,QAAA,MAAM,OAAO,eAAsB,CAAC;AACpC,eAAe,OAAO,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,364 @@
1
+ /**
2
+ * Svelte Component Builder
3
+ * Svelte-specific implementation of the component builder
4
+ */
5
+ import { build as viteBuild } from 'vite';
6
+ import path from 'path';
7
+ import fs from 'fs';
8
+ import { execSync } from 'child_process';
9
+ import { SVELTE_EXTERNALS, getSveltePlugin } from './config.js';
10
+ class SvelteBuilder {
11
+ /**
12
+ * Build a single Svelte component with Vite
13
+ */
14
+ async buildComponent(component, projectPath, outputDir, packageJson, getDependenciesToBundle, filterRuntimeDependencies) {
15
+ const componentOutDir = path.join(outputDir, component.name);
16
+ // Ensure output directory exists
17
+ if (!fs.existsSync(componentOutDir)) {
18
+ fs.mkdirSync(componentOutDir, { recursive: true });
19
+ }
20
+ // Get Svelte plugin
21
+ const plugin = await getSveltePlugin();
22
+ const plugins = plugin ? [plugin] : [];
23
+ // Externalize ONLY Svelte framework dependencies
24
+ // Everything else is bundled to allow tree-shaking
25
+ const external = (id) => {
26
+ // Externalize all svelte imports
27
+ if (id === 'svelte' || id.startsWith('svelte/')) {
28
+ return true;
29
+ }
30
+ // Externalize other framework externals if any (e.g. svelte-i18n if we decided to share it)
31
+ return SVELTE_EXTERNALS.includes(id);
32
+ };
33
+ // Resolve absolute entry path
34
+ const entryPath = path.resolve(projectPath, component.entryPoint);
35
+ // Build with Vite in production mode
36
+ const originalNodeEnv = process.env.NODE_ENV;
37
+ process.env.NODE_ENV = 'production';
38
+ try {
39
+ await viteBuild({
40
+ configFile: false,
41
+ mode: 'production',
42
+ logLevel: 'warn',
43
+ define: {
44
+ 'process.env.NODE_ENV': JSON.stringify('production')
45
+ },
46
+ build: {
47
+ lib: {
48
+ entry: entryPath,
49
+ formats: ['es'],
50
+ fileName: 'index'
51
+ },
52
+ rollupOptions: {
53
+ external,
54
+ output: {
55
+ format: 'es',
56
+ entryFileNames: 'index.js',
57
+ exports: 'auto'
58
+ }
59
+ },
60
+ outDir: componentOutDir,
61
+ minify: 'terser', // Enable minification for production
62
+ sourcemap: false,
63
+ emptyOutDir: false,
64
+ target: 'es2020',
65
+ cssCodeSplit: false
66
+ },
67
+ plugins
68
+ });
69
+ }
70
+ finally {
71
+ // Restore original NODE_ENV
72
+ if (originalNodeEnv !== undefined) {
73
+ process.env.NODE_ENV = originalNodeEnv;
74
+ }
75
+ else {
76
+ delete process.env.NODE_ENV;
77
+ }
78
+ }
79
+ // Copy schema.json
80
+ const schemaSource = path.join(component.path, 'schema.json');
81
+ const schemaDest = path.join(componentOutDir, 'schema.json');
82
+ if (fs.existsSync(schemaSource)) {
83
+ fs.copyFileSync(schemaSource, schemaDest);
84
+ }
85
+ // Get file sizes
86
+ const jsPath = path.join(componentOutDir, 'index.js');
87
+ const cssPath = path.join(componentOutDir, 'style.css');
88
+ let size = 0;
89
+ if (fs.existsSync(jsPath)) {
90
+ size += fs.statSync(jsPath).size;
91
+ }
92
+ const hasCss = fs.existsSync(cssPath);
93
+ if (hasCss) {
94
+ size += fs.statSync(cssPath).size;
95
+ }
96
+ return {
97
+ name: component.name,
98
+ displayName: component.displayName,
99
+ jsPath,
100
+ cssPath: hasCss ? cssPath : undefined,
101
+ schemaPath: schemaDest,
102
+ size
103
+ };
104
+ }
105
+ /**
106
+ * Build theme-level Tailwind CSS
107
+ * Supports both Tailwind v3 and v4
108
+ */
109
+ async buildThemeCSS(projectPath, outputDir, packageJson) {
110
+ // Check if Tailwind is in dependencies
111
+ const deps = {
112
+ ...packageJson.dependencies,
113
+ ...packageJson.devDependencies
114
+ };
115
+ if (!deps.tailwindcss) {
116
+ console.log('[SvelteBuilder] No Tailwind dependency found, skipping CSS build');
117
+ return null;
118
+ }
119
+ // Detect Tailwind version
120
+ const tailwindVersion = deps.tailwindcss;
121
+ const isV4 = tailwindVersion.match(/^[\^~]?4/);
122
+ // Check for tailwind config
123
+ const tailwindConfigPath = path.join(projectPath, 'tailwind.config.js');
124
+ const tailwindConfigTsPath = path.join(projectPath, 'tailwind.config.ts');
125
+ const hasTailwindConfig = fs.existsSync(tailwindConfigPath) || fs.existsSync(tailwindConfigTsPath);
126
+ if (!isV4 && !hasTailwindConfig) {
127
+ console.log('[SvelteBuilder] No tailwind.config found, skipping CSS build');
128
+ return null;
129
+ }
130
+ try {
131
+ // Create temporary CSS entry file
132
+ const tempCssEntry = path.join(projectPath, '.oaysus-temp-tailwind.css');
133
+ if (isV4) {
134
+ fs.writeFileSync(tempCssEntry, `@import "tailwindcss";\n`);
135
+ }
136
+ else {
137
+ fs.writeFileSync(tempCssEntry, `@tailwind base;
138
+ @tailwind components;
139
+ @tailwind utilities;
140
+ `);
141
+ }
142
+ const themeCssPath = path.join(outputDir, 'theme.css');
143
+ console.log(`[SvelteBuilder] Building Tailwind CSS (v${isV4 ? '4' : '3'})...`);
144
+ // Get Tailwind binary
145
+ let tailwindBin;
146
+ if (isV4) {
147
+ const v4CliBin = path.join(projectPath, 'node_modules/.bin/tailwindcss');
148
+ const v4CliPackage = path.join(projectPath, 'node_modules/@tailwindcss/cli');
149
+ if (fs.existsSync(v4CliPackage)) {
150
+ tailwindBin = v4CliBin;
151
+ }
152
+ else {
153
+ console.log('[SvelteBuilder] Installing @tailwindcss/cli for Tailwind v4...');
154
+ execSync('npm install --save-dev @tailwindcss/cli', {
155
+ cwd: projectPath,
156
+ stdio: 'pipe'
157
+ });
158
+ tailwindBin = v4CliBin;
159
+ }
160
+ }
161
+ else {
162
+ tailwindBin = path.join(projectPath, 'node_modules/.bin/tailwindcss');
163
+ }
164
+ execSync(`"${tailwindBin}" -i "${tempCssEntry}" -o "${themeCssPath}" --minify`, {
165
+ cwd: projectPath,
166
+ stdio: 'pipe',
167
+ env: {
168
+ ...process.env,
169
+ NODE_ENV: 'production'
170
+ }
171
+ });
172
+ // Clean up temp file
173
+ fs.unlinkSync(tempCssEntry);
174
+ // Get file size
175
+ const size = fs.existsSync(themeCssPath) ? fs.statSync(themeCssPath).size : 0;
176
+ console.log(`[SvelteBuilder] Theme CSS built: ${(size / 1024).toFixed(2)} KB`);
177
+ return {
178
+ cssPath: themeCssPath,
179
+ size
180
+ };
181
+ }
182
+ catch (error) {
183
+ console.error('[SvelteBuilder] Failed to build Tailwind CSS:', error);
184
+ const tempCssEntry = path.join(projectPath, '.oaysus-temp-tailwind.css');
185
+ if (fs.existsSync(tempCssEntry)) {
186
+ fs.unlinkSync(tempCssEntry);
187
+ }
188
+ return null;
189
+ }
190
+ }
191
+ /**
192
+ * Build all Svelte components in a package
193
+ */
194
+ async buildComponents(validationResult, projectPath) {
195
+ const outputDir = path.join(projectPath, '.oaysus-build');
196
+ const components = [];
197
+ let totalSize = 0;
198
+ try {
199
+ // Clean output directory
200
+ if (fs.existsSync(outputDir)) {
201
+ fs.rmSync(outputDir, { recursive: true });
202
+ }
203
+ fs.mkdirSync(outputDir, { recursive: true });
204
+ // Import dependencies functions dynamically
205
+ const { getDependenciesToBundle } = await import('./import-map.js');
206
+ const { filterRuntimeDependencies } = await import('./bundler.js');
207
+ // Build each component
208
+ for (const component of validationResult.components) {
209
+ const builtComponent = await this.buildComponent(component, projectPath, outputDir, validationResult.packageJson, getDependenciesToBundle, filterRuntimeDependencies);
210
+ components.push(builtComponent);
211
+ totalSize += builtComponent.size;
212
+ }
213
+ // Build theme-level Tailwind CSS
214
+ const themeCss = await this.buildThemeCSS(projectPath, outputDir, validationResult.packageJson);
215
+ return {
216
+ success: true,
217
+ outputDir,
218
+ components,
219
+ totalSize: totalSize + (themeCss?.size || 0),
220
+ themeCssPath: themeCss?.cssPath,
221
+ themeCssSize: themeCss?.size
222
+ };
223
+ }
224
+ catch (error) {
225
+ return {
226
+ success: false,
227
+ outputDir,
228
+ components,
229
+ totalSize: 0,
230
+ error: error instanceof Error ? error.message : 'Build failed'
231
+ };
232
+ }
233
+ }
234
+ /**
235
+ * Build a single Svelte component for server-side rendering
236
+ * Creates self-contained Node.js bundle with render function export
237
+ */
238
+ async buildServerComponent(component, projectPath, outputDir) {
239
+ const componentOutDir = path.join(outputDir, component.name);
240
+ // Ensure output directory exists
241
+ if (!fs.existsSync(componentOutDir)) {
242
+ fs.mkdirSync(componentOutDir, { recursive: true });
243
+ }
244
+ // Create temporary wrapper that exports component + render function
245
+ const componentPath = path.resolve(projectPath, component.entryPoint);
246
+ const wrapperPath = path.join(componentOutDir, '.temp-server-wrapper.js');
247
+ const wrapperCode = `
248
+ import Component from '${componentPath}';
249
+ import * as SvelteServer from 'svelte/internal/server';
250
+
251
+ export default Component;
252
+
253
+ export function render(props) {
254
+ return SvelteServer.render(Component, { props });
255
+ }
256
+ `;
257
+ fs.writeFileSync(wrapperPath, wrapperCode);
258
+ // Get Svelte SSR plugin
259
+ const { getSvelteSSRPlugin } = await import('./config.js');
260
+ const plugin = await getSvelteSSRPlugin();
261
+ const plugins = plugin ? [plugin] : [];
262
+ // Bundle EVERYTHING - no externals (self-contained server bundles)
263
+ // Use function that returns false to force bundling all dependencies
264
+ const external = () => false;
265
+ // Build with Vite in production mode for Node.js
266
+ const originalNodeEnv = process.env.NODE_ENV;
267
+ process.env.NODE_ENV = 'production';
268
+ try {
269
+ await viteBuild({
270
+ configFile: false,
271
+ mode: 'production',
272
+ logLevel: 'warn',
273
+ define: {
274
+ 'process.env.NODE_ENV': JSON.stringify('production')
275
+ },
276
+ ssr: {
277
+ noExternal: true // Bundle all dependencies, don't externalize anything
278
+ },
279
+ build: {
280
+ lib: {
281
+ entry: wrapperPath, // Build the wrapper, not the component directly
282
+ formats: ['es'],
283
+ fileName: 'server'
284
+ },
285
+ rollupOptions: {
286
+ external,
287
+ output: {
288
+ format: 'es',
289
+ entryFileNames: 'server.js',
290
+ exports: 'auto',
291
+ inlineDynamicImports: false
292
+ }
293
+ },
294
+ outDir: componentOutDir,
295
+ minify: 'terser',
296
+ sourcemap: false,
297
+ emptyOutDir: false,
298
+ target: 'node18',
299
+ ssr: true, // Enable SSR mode for proper Svelte compilation
300
+ cssCodeSplit: false
301
+ },
302
+ plugins
303
+ });
304
+ }
305
+ finally {
306
+ // Restore original NODE_ENV
307
+ if (originalNodeEnv !== undefined) {
308
+ process.env.NODE_ENV = originalNodeEnv;
309
+ }
310
+ else {
311
+ delete process.env.NODE_ENV;
312
+ }
313
+ // Clean up temp wrapper file
314
+ if (fs.existsSync(wrapperPath)) {
315
+ fs.unlinkSync(wrapperPath);
316
+ }
317
+ }
318
+ // Get file size
319
+ const jsPath = path.join(componentOutDir, 'server.js');
320
+ const size = fs.existsSync(jsPath) ? fs.statSync(jsPath).size : 0;
321
+ return {
322
+ name: component.name,
323
+ displayName: component.displayName,
324
+ jsPath,
325
+ size
326
+ };
327
+ }
328
+ /**
329
+ * Build all Svelte components for server-side rendering
330
+ */
331
+ async buildServerComponents(validationResult, projectPath) {
332
+ const outputDir = path.join(projectPath, '.oaysus-build');
333
+ const serverComponents = [];
334
+ let totalSize = 0;
335
+ try {
336
+ // Build each component for server
337
+ for (const component of validationResult.components) {
338
+ const builtServerComponent = await this.buildServerComponent(component, projectPath, outputDir);
339
+ serverComponents.push(builtServerComponent);
340
+ totalSize += builtServerComponent.size;
341
+ }
342
+ return {
343
+ success: true,
344
+ outputDir,
345
+ components: serverComponents,
346
+ totalSize
347
+ };
348
+ }
349
+ catch (error) {
350
+ return {
351
+ success: false,
352
+ outputDir,
353
+ components: [],
354
+ totalSize: 0,
355
+ error: error instanceof Error ? error.message : 'Server build failed'
356
+ };
357
+ }
358
+ }
359
+ }
360
+ // Export singleton instance
361
+ const builder = new SvelteBuilder();
362
+ export default builder;
363
+ export { builder };
364
+ //# sourceMappingURL=builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/lib/svelte/builder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * Svelte Dependency Bundler
3
+ * Svelte-specific implementation for bundling dependencies
4
+ */
5
+ import type { IBundler, BundledDependency, BundleDependencyOptions } from '../core/types.js';
6
+ declare class SvelteBundler implements IBundler {
7
+ /**
8
+ * Get Svelte major version from version string
9
+ */
10
+ private getSvelteMajorVersion;
11
+ /**
12
+ * Get exports configuration for a Svelte package
13
+ */
14
+ private getExportsConfig;
15
+ /**
16
+ * Read bundle file from multiple possible paths
17
+ */
18
+ private readBundleFile;
19
+ /**
20
+ * Bundle a sub-export (e.g., svelte/store, svelte/motion)
21
+ */
22
+ private bundleSubExport;
23
+ /**
24
+ * Bundle Svelte runtime into a SINGLE unified bundle
25
+ * Svelte 5 requires shared module state for DOM prototype getters.
26
+ * All exports come from one bundle to ensure prototypes are initialized once.
27
+ */
28
+ private bundleSvelteRuntime;
29
+ /**
30
+ * Bundle a single dependency
31
+ */
32
+ private bundleSingleDependency;
33
+ /**
34
+ * Bundle multiple dependencies for R2 upload
35
+ */
36
+ bundleDependencies(dependencies: Array<{
37
+ name: string;
38
+ version: string;
39
+ }>, options: BundleDependencyOptions): Promise<BundledDependency[]>;
40
+ /**
41
+ * Filter dependencies to only include runtime dependencies
42
+ */
43
+ filterRuntimeDependencies(dependencies: Array<{
44
+ name: string;
45
+ version: string;
46
+ }>): Array<{
47
+ name: string;
48
+ version: string;
49
+ }>;
50
+ /**
51
+ * Get the size of bundled dependencies in bytes
52
+ */
53
+ getBundleSize(bundles: BundledDependency[]): number;
54
+ /**
55
+ * Format bundle size for display
56
+ */
57
+ formatBundleSize(bytes: number): string;
58
+ /**
59
+ * Bundle server-side dependencies for SSR (stub for Svelte)
60
+ * TODO: Implement Svelte SSR bundling when needed
61
+ */
62
+ bundleServerDependencies(_dependencies: Array<{
63
+ name: string;
64
+ version: string;
65
+ }>, _options: BundleDependencyOptions): Promise<{
66
+ depKey: string;
67
+ path: string;
68
+ size: number;
69
+ }[]>;
70
+ /**
71
+ * Bundle detected external dependencies (stub for Svelte)
72
+ * TODO: Implement when Svelte components need third-party libs
73
+ */
74
+ bundleDetectedDependencies(_detectedDeps: import('../core/types.js').DetectedDependency[], _options: BundleDependencyOptions): Promise<BundledDependency[]>;
75
+ }
76
+ declare const bundler: SvelteBundler;
77
+ export default bundler;
78
+ export { bundler };
79
+ export declare const bundleDependencies: (dependencies: Array<{
80
+ name: string;
81
+ version: string;
82
+ }>, options: BundleDependencyOptions) => Promise<BundledDependency[]>;
83
+ export declare const filterRuntimeDependencies: (dependencies: Array<{
84
+ name: string;
85
+ version: string;
86
+ }>) => Array<{
87
+ name: string;
88
+ version: string;
89
+ }>;
90
+ export declare const getBundleSize: (bundles: BundledDependency[]) => number;
91
+ export declare const formatBundleSize: (bytes: number) => string;
92
+ //# sourceMappingURL=bundler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundler.d.ts","sourceRoot":"","sources":["../../../src/lib/svelte/bundler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,uBAAuB,EAAyB,MAAM,kBAAkB,CAAC;AA2BpH,cAAM,aAAc,YAAW,QAAQ;IACrC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAK7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;YACW,eAAe;IA2D7B;;;;OAIG;YACW,mBAAmB;IA2NjC;;OAEG;YACW,sBAAsB;IA4GpC;;OAEG;IACG,kBAAkB,CACtB,YAAY,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,EACtD,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAY/B;;OAEG;IACH,yBAAyB,CACvB,YAAY,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,GACrD,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAyB3C;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,MAAM;IAcnD;;OAEG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAMvC;;;OAGG;IACG,wBAAwB,CAC5B,aAAa,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,EACvD,QAAQ,EAAE,uBAAuB,GAChC,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAM5D;;;OAGG;IACG,0BAA0B,CAC9B,aAAa,EAAE,OAAO,kBAAkB,EAAE,kBAAkB,EAAE,EAC9D,QAAQ,EAAE,uBAAuB,GAChC,OAAO,CAAC,iBAAiB,EAAE,CAAC;CAIhC;AAGD,QAAA,MAAM,OAAO,eAAsB,CAAC;AACpC,eAAe,OAAO,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,CAAC;AAGnB,eAAO,MAAM,kBAAkB,iBAtGb,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,WAC7C,uBAAuB,KAC/B,OAAO,CAAC,iBAAiB,EAAE,CAoG0C,CAAC;AAC3E,eAAO,MAAM,yBAAyB,iBArFpB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,KACrD,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAoF4C,CAAC;AACzF,eAAO,MAAM,aAAa,YAzDD,iBAAiB,EAAE,KAAG,MAyDiB,CAAC;AACjE,eAAO,MAAM,gBAAgB,UAzCH,MAAM,KAAG,MAyCmC,CAAC"}