| 
									
										
										
										
											2025-05-02 21:29:19 +03:00
										 |  |  | /** | 
					
						
							|  |  |  |  * @module | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * This script synchronizes the `package.json` version of the monorepo (root `package.json`) | 
					
						
							|  |  |  |  * into the apps, so that it is properly displayed. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-05-27 22:25:00 +03:00
										 |  |  | import { join } from "path"; | 
					
						
							|  |  |  | import { readFileSync, writeFileSync } from "fs"; | 
					
						
							| 
									
										
										
										
											2025-05-02 21:29:19 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  | function patchPackageJson(packageJsonPath: string, version: string) { | 
					
						
							|  |  |  |     // Read the version from package.json and process it.
 | 
					
						
							| 
									
										
										
										
											2025-05-27 22:25:00 +03:00
										 |  |  |     const packageJson = JSON.parse(readFileSync(packageJsonPath, "utf-8")); | 
					
						
							| 
									
										
										
										
											2025-05-02 21:29:19 +03:00
										 |  |  | 
 | 
					
						
							|  |  |  |     // Write the adjusted version back in.
 | 
					
						
							|  |  |  |     packageJson.version = version; | 
					
						
							|  |  |  |     const formattedJson = JSON.stringify(packageJson, null, 2); | 
					
						
							| 
									
										
										
										
											2025-05-27 22:25:00 +03:00
										 |  |  |     writeFileSync(packageJsonPath, formattedJson); | 
					
						
							| 
									
										
										
										
											2025-05-02 21:29:19 +03:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function getVersion(packageJsonPath: string) { | 
					
						
							| 
									
										
										
										
											2025-05-27 22:25:00 +03:00
										 |  |  |     const packageJson = JSON.parse(readFileSync(packageJsonPath, "utf-8")); | 
					
						
							| 
									
										
										
										
											2025-05-02 21:29:19 +03:00
										 |  |  |     return packageJson.version; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function main() { | 
					
						
							| 
									
										
										
										
											2025-05-27 22:25:00 +03:00
										 |  |  |     const version = getVersion(join(__dirname, "..", "package.json")); | 
					
						
							| 
									
										
										
										
											2025-05-02 21:29:19 +03:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-05-27 22:26:52 +03:00
										 |  |  |     for (const appName of ["server", "client", "desktop"]) { | 
					
						
							| 
									
										
										
										
											2025-05-27 22:25:00 +03:00
										 |  |  |         patchPackageJson(join(__dirname, "..", "apps", appName, "package.json"), version); | 
					
						
							| 
									
										
										
										
											2025-05-02 21:29:19 +03:00
										 |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     for (const packageName of ["commons"]) { | 
					
						
							| 
									
										
										
										
											2025-05-27 22:25:00 +03:00
										 |  |  |         patchPackageJson(join(__dirname, "..", "packages", packageName, "package.json"), version); | 
					
						
							| 
									
										
										
										
											2025-05-02 21:29:19 +03:00
										 |  |  |     } | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | main(); |