Files
goTorrent/torrent-project/node_modules/material-ui/styles/createPalette.js

172 lines
5.2 KiB
JavaScript

'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.dark = exports.light = undefined;
var _keys = require('babel-runtime/core-js/object/keys');
var _keys2 = _interopRequireDefault(_keys);
var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties');
var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);
exports.default = createPalette;
var _warning = require('warning');
var _warning2 = _interopRequireDefault(_warning);
var _deepmerge = require('deepmerge');
var _deepmerge2 = _interopRequireDefault(_deepmerge);
var _indigo = require('../colors/indigo');
var _indigo2 = _interopRequireDefault(_indigo);
var _pink = require('../colors/pink');
var _pink2 = _interopRequireDefault(_pink);
var _grey = require('../colors/grey');
var _grey2 = _interopRequireDefault(_grey);
var _red = require('../colors/red');
var _red2 = _interopRequireDefault(_red);
var _common = require('../colors/common');
var _common2 = _interopRequireDefault(_common);
var _colorManipulator = require('./colorManipulator');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// < 1kb payload overhead when lodash/merge is > 3kb.
var light = exports.light = {
text: {
primary: 'rgba(0, 0, 0, 0.87)',
secondary: 'rgba(0, 0, 0, 0.54)',
disabled: 'rgba(0, 0, 0, 0.38)',
hint: 'rgba(0, 0, 0, 0.38)',
icon: 'rgba(0, 0, 0, 0.38)',
divider: 'rgba(0, 0, 0, 0.12)',
lightDivider: 'rgba(0, 0, 0, 0.075)'
},
input: {
bottomLine: 'rgba(0, 0, 0, 0.42)',
helperText: 'rgba(0, 0, 0, 0.54)',
labelText: 'rgba(0, 0, 0, 0.54)',
inputText: 'rgba(0, 0, 0, 0.87)',
disabled: 'rgba(0, 0, 0, 0.42)'
},
action: {
active: 'rgba(0, 0, 0, 0.54)',
disabled: 'rgba(0, 0, 0, 0.26)'
},
background: {
default: _grey2.default[50],
paper: _common2.default.white,
appBar: _grey2.default[100],
contentFrame: _grey2.default[200]
}
};
var dark = exports.dark = {
text: {
primary: 'rgba(255, 255, 255, 1)',
secondary: 'rgba(255, 255, 255, 0.7)',
disabled: 'rgba(255, 255, 255, 0.5)',
hint: 'rgba(255, 255, 255, 0.5)',
icon: 'rgba(255, 255, 255, 0.5)',
divider: 'rgba(255, 255, 255, 0.12)',
lightDivider: 'rgba(255, 255, 255, 0.075)'
},
input: {
bottomLine: 'rgba(255, 255, 255, 0.7)',
helperText: 'rgba(255, 255, 255, 0.7)',
labelText: 'rgba(255, 255, 255, 0.7)',
inputText: 'rgba(255, 255, 255, 1)',
disabled: 'rgba(255, 255, 255, 0.5)'
},
action: {
active: 'rgba(255, 255, 255, 1)',
disabled: 'rgba(255, 255, 255, 0.3)'
},
background: {
default: '#303030',
paper: _grey2.default[800],
appBar: _grey2.default[900],
contentFrame: _grey2.default[900]
}
};
function getContrastText(color) {
if ((0, _colorManipulator.getContrastRatio)(color, _common2.default.black) < 7) {
return dark.text.primary;
}
return light.text.primary;
}
function createPalette(palette) {
var _palette$primary = palette.primary,
primary = _palette$primary === undefined ? _indigo2.default : _palette$primary,
_palette$secondary = palette.secondary,
secondary = _palette$secondary === undefined ? _pink2.default : _palette$secondary,
_palette$error = palette.error,
error = _palette$error === undefined ? _red2.default : _palette$error,
_palette$type = palette.type,
type = _palette$type === undefined ? 'light' : _palette$type,
other = (0, _objectWithoutProperties3.default)(palette, ['primary', 'secondary', 'error', 'type']);
var shades = { dark: dark, light: light };
process.env.NODE_ENV !== "production" ? (0, _warning2.default)(Boolean(shades[type]), 'Material-UI: the palette type `' + type + '` is not supported.') : void 0;
var paletteOutput = (0, _deepmerge2.default)({
common: _common2.default,
type: type,
primary: primary,
secondary: secondary,
error: error,
grey: _grey2.default,
shades: shades,
text: shades[type].text,
input: shades[type].input,
action: shades[type].action,
background: shades[type].background,
getContrastText: getContrastText
}, other, {
clone: false // No need to clone deep
});
// Dev warnings
if (process.env.NODE_ENV !== 'production') {
var difference = function difference(base, compare) {
if (!compare) {
compare = {};
}
return (0, _keys2.default)(base).filter(function (hue) {
return !compare[hue];
});
};
var paletteColorError = function paletteColorError(name, base, compare) {
var missing = difference(base, compare);
process.env.NODE_ENV !== "production" ? (0, _warning2.default)(missing.length === 0, ['Material-UI: ' + name + ' color is missing the following hues: ' + missing.join(','), 'See the default colors, indigo, or pink, as exported from material-ui/colors.'].join('\n')) : void 0;
};
paletteColorError('primary', _indigo2.default, paletteOutput.primary);
paletteColorError('secondary', _pink2.default, paletteOutput.secondary);
paletteColorError('error', _red2.default, paletteOutput.error);
paletteColorError('grey', _red2.default, paletteOutput.grey);
}
return paletteOutput;
}