| 
									
										
										
										
											2023-08-17 20:30:13 +00:00
										 |  |  | // @ts-ignore
 | 
					
						
							|  |  |  | import { defineTransformer } from "@nuxt/content/transformers/utils"; | 
					
						
							|  |  |  | import { read, utils } from "xlsx"; | 
					
						
							|  |  |  | import { readFileSync } from "node:fs"; | 
					
						
							| 
									
										
										
										
											2025-05-18 20:09:19 +00:00
										 |  |  | import { resolve } from "node:path"; | 
					
						
							| 
									
										
										
										
											2023-08-17 20:30:13 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | export default defineTransformer({ | 
					
						
							|  |  |  |   name: 'sheetformer', | 
					
						
							|  |  |  |   extensions: ['.xlsx'], | 
					
						
							|  |  |  |   parse (_id: string, rawContent: string) { | 
					
						
							|  |  |  |     const wb = read(readFileSync(resolve("./content/" + _id.slice(8)))); | 
					
						
							| 
									
										
										
										
											2025-04-24 00:30:01 +00:00
										 |  |  |     const body = wb.SheetNames.map(name => ({ name, data: utils.sheet_to_json(wb.Sheets[name]!)})); | 
					
						
							| 
									
										
										
										
											2023-08-17 20:30:13 +00:00
										 |  |  |     return { _id, body }; | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | }); |