sforkowany z mirror/soapbox
				
			Remove generateLocalePacks.js
							rodzic
							
								
									f0528e9d43
								
							
						
					
					
						commit
						e935fb90b9
					
				|  | @ -1,50 +0,0 @@ | |||
| // To avoid adding a lot of boilerplate, locale packs are
 | ||||
| // automatically generated here. These are written into the tmp/
 | ||||
| // directory and then used to generate locale_en.js, locale_fr.js, etc.
 | ||||
| 
 | ||||
| const fs = require('fs'); | ||||
| const path = require('path'); | ||||
| const rimraf = require('rimraf'); | ||||
| const mkdirp = require('mkdirp'); | ||||
| 
 | ||||
| const localesJsonPath = path.join(__dirname, '../app/soapbox/locales'); | ||||
| const locales = fs.readdirSync(localesJsonPath).filter(filename => { | ||||
|   return /\.json$/.test(filename) && | ||||
|     !/defaultMessages/.test(filename) && | ||||
|     !/whitelist/.test(filename); | ||||
| }).map(filename => filename.replace(/\.json$/, '')); | ||||
| 
 | ||||
| const outPath = path.join(__dirname, '..', 'tmp', 'packs'); | ||||
| 
 | ||||
| rimraf.sync(outPath); | ||||
| mkdirp.sync(outPath); | ||||
| 
 | ||||
| const outPaths = []; | ||||
| 
 | ||||
| locales.forEach(locale => { | ||||
|   const localePath = path.join(outPath, `locale_${locale}.js`); | ||||
|   const baseLocale = locale.split('-')[0]; // e.g. 'zh-TW' -> 'zh'
 | ||||
|   const localeDataPath = [ | ||||
|     // first try react-intl
 | ||||
|     `../../node_modules/react-intl/locale-data/${baseLocale}.js`, | ||||
|     // then check locales/locale-data
 | ||||
|     `../../app/soapbox/locales/locale-data/${baseLocale}.js`, | ||||
|     // fall back to English (this is what react-intl does anyway)
 | ||||
|     '../../node_modules/react-intl/locale-data/en.js', | ||||
|   ].filter(filename => fs.existsSync(path.join(outPath, filename))) | ||||
|     .map(filename => filename.replace(/..\/..\/node_modules\//, ''))[0]; | ||||
| 
 | ||||
|   const localeContent = `//
 | ||||
| // locale_${locale}.js
 | ||||
| // automatically generated by generateLocalePacks.js
 | ||||
| //
 | ||||
| import messages from '../../app/soapbox/locales/${locale}.json'; | ||||
| import localeData from ${JSON.stringify(localeDataPath)}; | ||||
| import { setLocale } from '../../app/soapbox/locales'; | ||||
| setLocale({messages, localeData}); | ||||
| `;
 | ||||
|   fs.writeFileSync(localePath, localeContent, 'utf8'); | ||||
|   outPaths.push(localePath); | ||||
| }); | ||||
| 
 | ||||
| module.exports = outPaths; | ||||
|  | @ -1,24 +1,17 @@ | |||
| // Note: You must restart bin/webpack-dev-server for changes to take effect
 | ||||
| 
 | ||||
| const webpack = require('webpack'); | ||||
| const { basename, join, resolve } = require('path'); | ||||
| const { join, resolve } = require('path'); | ||||
| const MiniCssExtractPlugin = require('mini-css-extract-plugin'); | ||||
| const AssetsManifestPlugin = require('webpack-assets-manifest'); | ||||
| const HtmlWebpackPlugin = require('html-webpack-plugin'); | ||||
| const HtmlWebpackHarddiskPlugin = require('html-webpack-harddisk-plugin'); | ||||
| const extname = require('path-complete-extname'); | ||||
| const { env, settings, output } = require('./configuration'); | ||||
| const rules = require('./rules'); | ||||
| const localePackPaths = require('./generateLocalePacks'); | ||||
| 
 | ||||
| module.exports = { | ||||
|   entry: Object.assign( | ||||
|     { application: resolve('app/application.js') }, | ||||
|     localePackPaths.reduce((map, entry) => { | ||||
|       const localMap = map; | ||||
|       localMap[basename(entry, extname(entry, extname(entry)))] = resolve(entry); | ||||
|       return localMap; | ||||
|     }, {}), | ||||
|     { styles: resolve(join(settings.source_path, 'styles/application.scss')) } | ||||
|   ), | ||||
| 
 | ||||
|  |  | |||
		Ładowanie…
	
		Reference in New Issue
	
	 Alex Gleason
						Alex Gleason