UNPKG

1.25 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7var _lodash = require('lodash');
8
9var _lodash2 = _interopRequireDefault(_lodash);
10
11function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
13/**
14 * @typedef CSSModules~Options
15 * @see {@link https://github.com/gajus/react-css-modules#options}
16 * @property {boolean} allowMultiple
17 * @property {boolean} errorWhenNotFound
18 */
19
20/**
21 * @param {CSSModules~Options} userConfiguration
22 * @returns {CSSModules~Options}
23 */
24
25exports.default = function () {
26 var userConfiguration = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
27
28 var configuration = {
29 allowMultiple: false,
30 errorWhenNotFound: true
31 };
32
33 _lodash2.default.forEach(userConfiguration, function (value, name) {
34 if (_lodash2.default.isUndefined(configuration[name])) {
35 throw new Error('Unknown configuration property "' + name + '".');
36 }
37
38 if (!_lodash2.default.isBoolean(value)) {
39 throw new Error('"' + name + '" property value must be a boolean.');
40 }
41
42 configuration[name] = value;
43 });
44
45 return configuration;
46};
47
48module.exports = exports['default'];
\No newline at end of file