Loads .properties files into JavaScript as precompiled functions using dot-properties and messageformat.
Property values are parsed directly as ICU MessageFormat. With the default options, will assume that the filename has _ separated parts, of which the second is the two- or three-letter language code as in Java Resource Bundles.
npm install messageformat-properties-loaderFor a working demo of the following, run npm install && npm run build in the example/ directory, and then open example/dist/index.html in a browser.
{ test: /\.properties$/, loader: 'messageformat-properties-loader', options: { biDiSupport: false, // enables bi-directional text support defaultLocale: 'en', // used if resolution from filename fails encoding: 'auto', // .properties file encoding, use one of // 'auto', 'latin1', or 'utf8' keyPath: false, // if true, dots '.' key names will result // in multi-level objects -- use a string // value to customize pathSep: '_' // separator for parsing locale from filename } }Default option values are shown above, though none are required.
errors.confirmation: {src} doesn't match {attribute} errors.accepted: {src} must be accepted errors.wrong_length: {src} is the wrong length (should be {count, plural, one{1 character} other{# characters}}) errors.equal_to: {src} must be equal to {count} import messages from './messages_en.properties' messages.errors.accepted({ src: 'Terms' }) // 'Terms must be accepted' messages.errors.wrong_length({ src: 'Foo', count: 42 }) // 'Foo is the wrong length (should be 42 characters)'