summaryrefslogtreecommitdiffstats
path: root/vnfmarket/common/thirdparty/angular-material/modules/js/colors/colors.js
diff options
context:
space:
mode:
authorseshukm <seshu.kumar.m@huawei.com>2017-03-08 11:54:56 +0530
committerseshukm <seshu.kumar.m@huawei.com>2017-03-08 11:54:56 +0530
commit80b299e8c4f290e3b16f35eea922cac989b6e767 (patch)
treeb99086734507728ae096349cca4d0258335dbf4f /vnfmarket/common/thirdparty/angular-material/modules/js/colors/colors.js
parent5fa92b4eb456b5f4959c39578a3c6e3555c4ae7d (diff)
VnfMarket place refactor
IssueId : CLIENT-4 Change-Id: Ia1b076400f9c3bedf9db714099a608ece392aa59 Signed-off-by: seshukm <seshu.kumar.m@huawei.com>
Diffstat (limited to 'vnfmarket/common/thirdparty/angular-material/modules/js/colors/colors.js')
-rw-r--r--vnfmarket/common/thirdparty/angular-material/modules/js/colors/colors.js411
1 files changed, 0 insertions, 411 deletions
diff --git a/vnfmarket/common/thirdparty/angular-material/modules/js/colors/colors.js b/vnfmarket/common/thirdparty/angular-material/modules/js/colors/colors.js
deleted file mode 100644
index 5e83f30f..00000000
--- a/vnfmarket/common/thirdparty/angular-material/modules/js/colors/colors.js
+++ /dev/null
@@ -1,411 +0,0 @@
-/*!
- * Angular Material Design
- * https://github.com/angular/material
- * @license MIT
- * v1.1.3
- */
-(function( window, angular, undefined ){
-"use strict";
-
-(function () {
- "use strict";
-
- /**
- * Use a RegExp to check if the `md-colors="<expression>"` is static string
- * or one that should be observed and dynamically interpolated.
- */
- MdColorsDirective['$inject'] = ["$mdColors", "$mdUtil", "$log", "$parse"];
- MdColorsService['$inject'] = ["$mdTheming", "$mdUtil", "$log"];
- var STATIC_COLOR_EXPRESSION = /^{((\s|,)*?["'a-zA-Z-]+?\s*?:\s*?('|")[a-zA-Z0-9-.]*('|"))+\s*}$/;
- var colorPalettes = null;
-
- /**
- * @ngdoc module
- * @name material.components.colors
- *
- * @description
- * Define $mdColors service and a `md-colors=""` attribute directive
- */
- angular
- .module('material.components.colors', ['material.core'])
- .directive('mdColors', MdColorsDirective)
- .service('$mdColors', MdColorsService);
-
- /**
- * @ngdoc service
- * @name $mdColors
- * @module material.components.colors
- *
- * @description
- * With only defining themes, one couldn't get non ngMaterial elements colored with Material colors,
- * `$mdColors` service is used by the md-color directive to convert the 1..n color expressions to RGBA values and will apply
- * those values to element as CSS property values.
- *
- * @usage
- * <hljs lang="js">
- * angular.controller('myCtrl', function ($mdColors) {
- * var color = $mdColors.getThemeColor('myTheme-red-200-0.5');
- * ...
- * });
- * </hljs>
- *
- */
- function MdColorsService($mdTheming, $mdUtil, $log) {
- colorPalettes = colorPalettes || Object.keys($mdTheming.PALETTES);
-
- // Publish service instance
- return {
- applyThemeColors: applyThemeColors,
- getThemeColor: getThemeColor,
- hasTheme: hasTheme
- };
-
- // ********************************************
- // Internal Methods
- // ********************************************
-
- /**
- * @ngdoc method
- * @name $mdColors#applyThemeColors
- *
- * @description
- * Gets a color json object, keys are css properties and values are string of the wanted color
- * Then calculate the rgba() values based on the theme color parts
- *
- * @param {DOMElement} element the element to apply the styles on.
- * @param {object} colorExpression json object, keys are css properties and values are string of the wanted color,
- * for example: `{color: 'red-A200-0.3'}`.
- *
- * @usage
- * <hljs lang="js">
- * app.directive('myDirective', function($mdColors) {
- * return {
- * ...
- * link: function (scope, elem) {
- * $mdColors.applyThemeColors(elem, {color: 'red'});
- * }
- * }
- * });
- * </hljs>
- */
- function applyThemeColors(element, colorExpression) {
- try {
- if (colorExpression) {
- // Assign the calculate RGBA color values directly as inline CSS
- element.css(interpolateColors(colorExpression));
- }
- } catch (e) {
- $log.error(e.message);
- }
-
- }
-
- /**
- * @ngdoc method
- * @name $mdColors#getThemeColor
- *
- * @description
- * Get parsed color from expression
- *
- * @param {string} expression string of a color expression (for instance `'red-700-0.8'`)
- *
- * @returns {string} a css color expression (for instance `rgba(211, 47, 47, 0.8)`)
- *
- * @usage
- * <hljs lang="js">
- * angular.controller('myCtrl', function ($mdColors) {
- * var color = $mdColors.getThemeColor('myTheme-red-200-0.5');
- * ...
- * });
- * </hljs>
- */
- function getThemeColor(expression) {
- var color = extractColorOptions(expression);
-
- return parseColor(color);
- }
-
- /**
- * Return the parsed color
- * @param color hashmap of color definitions
- * @param contrast whether use contrast color for foreground
- * @returns rgba color string
- */
- function parseColor(color, contrast) {
- contrast = contrast || false;
- var rgbValues = $mdTheming.PALETTES[color.palette][color.hue];
-
- rgbValues = contrast ? rgbValues.contrast : rgbValues.value;
-
- return $mdUtil.supplant('rgba({0}, {1}, {2}, {3})',
- [rgbValues[0], rgbValues[1], rgbValues[2], rgbValues[3] || color.opacity]
- );
- }
-
- /**
- * Convert the color expression into an object with scope-interpolated values
- * Then calculate the rgba() values based on the theme color parts
- *
- * @results Hashmap of CSS properties with associated `rgba( )` string vales
- *
- *
- */
- function interpolateColors(themeColors) {
- var rgbColors = {};
-
- var hasColorProperty = themeColors.hasOwnProperty('color');
-
- angular.forEach(themeColors, function (value, key) {
- var color = extractColorOptions(value);
- var hasBackground = key.indexOf('background') > -1;
-
- rgbColors[key] = parseColor(color);
- if (hasBackground && !hasColorProperty) {
- rgbColors.color = parseColor(color, true);
- }
- });
-
- return rgbColors;
- }
-
- /**
- * Check if expression has defined theme
- * e.g.
- * 'myTheme-primary' => true
- * 'red-800' => false
- */
- function hasTheme(expression) {
- return angular.isDefined($mdTheming.THEMES[expression.split('-')[0]]);
- }
-
- /**
- * For the evaluated expression, extract the color parts into a hash map
- */
- function extractColorOptions(expression) {
- var parts = expression.split('-');
- var hasTheme = angular.isDefined($mdTheming.THEMES[parts[0]]);
- var theme = hasTheme ? parts.splice(0, 1)[0] : $mdTheming.defaultTheme();
-
- return {
- theme: theme,
- palette: extractPalette(parts, theme),
- hue: extractHue(parts, theme),
- opacity: parts[2] || 1
- };
- }
-
- /**
- * Calculate the theme palette name
- */
- function extractPalette(parts, theme) {
- // If the next section is one of the palettes we assume it's a two word palette
- // Two word palette can be also written in camelCase, forming camelCase to dash-case
-
- var isTwoWord = parts.length > 1 && colorPalettes.indexOf(parts[1]) !== -1;
- var palette = parts[0].replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
-
- if (isTwoWord) palette = parts[0] + '-' + parts.splice(1, 1);
-
- if (colorPalettes.indexOf(palette) === -1) {
- // If the palette is not in the palette list it's one of primary/accent/warn/background
- var scheme = $mdTheming.THEMES[theme].colors[palette];
- if (!scheme) {
- throw new Error($mdUtil.supplant('mdColors: couldn\'t find \'{palette}\' in the palettes.', {palette: palette}));
- }
- palette = scheme.name;
- }
-
- return palette;
- }
-
- function extractHue(parts, theme) {
- var themeColors = $mdTheming.THEMES[theme].colors;
-
- if (parts[1] === 'hue') {
- var hueNumber = parseInt(parts.splice(2, 1)[0], 10);
-
- if (hueNumber < 1 || hueNumber > 3) {
- throw new Error($mdUtil.supplant('mdColors: \'hue-{hueNumber}\' is not a valid hue, can be only \'hue-1\', \'hue-2\' and \'hue-3\'', {hueNumber: hueNumber}));
- }
- parts[1] = 'hue-' + hueNumber;
-
- if (!(parts[0] in themeColors)) {
- throw new Error($mdUtil.supplant('mdColors: \'hue-x\' can only be used with [{availableThemes}], but was used with \'{usedTheme}\'', {
- availableThemes: Object.keys(themeColors).join(', '),
- usedTheme: parts[0]
- }));
- }
-
- return themeColors[parts[0]].hues[parts[1]];
- }
-
- return parts[1] || themeColors[parts[0] in themeColors ? parts[0] : 'primary'].hues['default'];
- }
- }
-
- /**
- * @ngdoc directive
- * @name mdColors
- * @module material.components.colors
- *
- * @restrict A
- *
- * @description
- * `mdColors` directive will apply the theme-based color expression as RGBA CSS style values.
- *
- * The format will be similar to our color defining in the scss files:
- *
- * ## `[?theme]-[palette]-[?hue]-[?opacity]`
- * - [theme] - default value is the default theme
- * - [palette] - can be either palette name or primary/accent/warn/background
- * - [hue] - default is 500 (hue-x can be used with primary/accent/warn/background)
- * - [opacity] - default is 1
- *
- * > `?` indicates optional parameter
- *
- * @usage
- * <hljs lang="html">
- * <div md-colors="{background: 'myTheme-accent-900-0.43'}">
- * <div md-colors="{color: 'red-A100', 'border-color': 'primary-600'}">
- * <span>Color demo</span>
- * </div>
- * </div>
- * </hljs>
- *
- * `mdColors` directive will automatically watch for changes in the expression if it recognizes an interpolation
- * expression or a function. For performance options, you can use `::` prefix to the `md-colors` expression
- * to indicate a one-time data binding.
- * <hljs lang="html">
- * <md-card md-colors="::{background: '{{theme}}-primary-700'}">
- * </md-card>
- * </hljs>
- *
- */
- function MdColorsDirective($mdColors, $mdUtil, $log, $parse) {
- return {
- restrict: 'A',
- require: ['^?mdTheme'],
- compile: function (tElem, tAttrs) {
- var shouldWatch = shouldColorsWatch();
-
- return function (scope, element, attrs, ctrl) {
- var mdThemeController = ctrl[0];
-
- var lastColors = {};
-
- var parseColors = function (theme) {
- if (typeof theme !== 'string') {
- theme = '';
- }
-
- if (!attrs.mdColors) {
- attrs.mdColors = '{}';
- }
-
- /**
- * Json.parse() does not work because the keys are not quoted;
- * use $parse to convert to a hash map
- */
- var colors = $parse(attrs.mdColors)(scope);
-
- /**
- * If mdTheme is defined up the DOM tree
- * we add mdTheme theme to colors who doesn't specified a theme
- *
- * # example
- * <hljs lang="html">
- * <div md-theme="myTheme">
- * <div md-colors="{background: 'primary-600'}">
- * <span md-colors="{background: 'mySecondTheme-accent-200'}">Color demo</span>
- * </div>
- * </div>
- * </hljs>
- *
- * 'primary-600' will be 'myTheme-primary-600',
- * but 'mySecondTheme-accent-200' will stay the same cause it has a theme prefix
- */
- if (mdThemeController) {
- Object.keys(colors).forEach(function (prop) {
- var color = colors[prop];
- if (!$mdColors.hasTheme(color)) {
- colors[prop] = (theme || mdThemeController.$mdTheme) + '-' + color;
- }
- });
- }
-
- cleanElement(colors);
-
- return colors;
- };
-
- var cleanElement = function (colors) {
- if (!angular.equals(colors, lastColors)) {
- var keys = Object.keys(lastColors);
-
- if (lastColors.background && !keys.color) {
- keys.push('color');
- }
-
- keys.forEach(function (key) {
- element.css(key, '');
- });
- }
-
- lastColors = colors;
- };
-
- /**
- * Registering for mgTheme changes and asking mdTheme controller run our callback whenever a theme changes
- */
- var unregisterChanges = angular.noop;
-
- if (mdThemeController) {
- unregisterChanges = mdThemeController.registerChanges(function (theme) {
- $mdColors.applyThemeColors(element, parseColors(theme));
- });
- }
-
- scope.$on('$destroy', function () {
- unregisterChanges();
- });
-
- try {
- if (shouldWatch) {
- scope.$watch(parseColors, angular.bind(this,
- $mdColors.applyThemeColors, element
- ), true);
- }
- else {
- $mdColors.applyThemeColors(element, parseColors());
- }
-
- }
- catch (e) {
- $log.error(e.message);
- }
-
- };
-
- function shouldColorsWatch() {
- // Simulate 1x binding and mark mdColorsWatch == false
- var rawColorExpression = tAttrs.mdColors;
- var bindOnce = rawColorExpression.indexOf('::') > -1;
- var isStatic = bindOnce ? true : STATIC_COLOR_EXPRESSION.test(tAttrs.mdColors);
-
- // Remove it for the postLink...
- tAttrs.mdColors = rawColorExpression.replace('::', '');
-
- var hasWatchAttr = angular.isDefined(tAttrs.mdColorsWatch);
-
- return (bindOnce || isStatic) ? false :
- hasWatchAttr ? $mdUtil.parseAttributeBoolean(tAttrs.mdColorsWatch) : true;
- }
- }
- };
-
- }
-
-
-})();
-
-})(window, window.angular); \ No newline at end of file