Advertisement
Guest User

Untitled

a guest
Jul 20th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.23 KB | None | 0 0
  1. export function getColorObject(value, name) {
  2. var c = tinycolor(value);
  3. return {
  4. name: name,
  5. hex: c.toHexString(),
  6. darkContrast: c.isLight()
  7. };
  8. }
  9.  
  10. export function calculateMaterialPalette(hex) {
  11. // Return array of color objects.
  12. if($rootScope.settings.algorithm == 'constantin'){
  13. var baseLight = tinycolor('#ffffff');
  14. var baseDark = $scope.multiply(tinycolor(hex).toRgb(), tinycolor(hex).toRgb());
  15. var baseTriad = tinycolor(hex).tetrad();
  16. return [
  17. getColorObject(tinycolor.mix(baseLight, hex, 12), '50'),
  18. getColorObject(tinycolor.mix(baseLight, hex, 30), '100'),
  19. getColorObject(tinycolor.mix(baseLight, hex, 50), '200'),
  20. getColorObject(tinycolor.mix(baseLight, hex, 70), '300'),
  21. getColorObject(tinycolor.mix(baseLight, hex, 85), '400'),
  22. getColorObject(tinycolor.mix(baseLight, hex, 100), '500'),
  23. getColorObject(tinycolor.mix(baseDark, hex, 87), '600'),
  24. getColorObject(tinycolor.mix(baseDark, hex, 70), '700'),
  25. getColorObject(tinycolor.mix(baseDark, hex, 54), '800'),
  26. getColorObject(tinycolor.mix(baseDark, hex, 25), '900'),
  27. getColorObject(tinycolor.mix(baseDark, baseTriad[4], 15).saturate(80).lighten(65), 'A100'),
  28. getColorObject(tinycolor.mix(baseDark, baseTriad[4], 15).saturate(80).lighten(55), 'A200'),
  29. getColorObject(tinycolor.mix(baseDark, baseTriad[4], 15).saturate(100).lighten(45), 'A400'),
  30. getColorObject(tinycolor.mix(baseDark, baseTriad[4], 15).saturate(100).lighten(40), 'A700')
  31. ];
  32. }else{
  33. return [
  34. getColorObject(tinycolor(hex).lighten(52), '50'),
  35. getColorObject(tinycolor(hex).lighten(37), '100'),
  36. getColorObject(tinycolor(hex).lighten(26), '200'),
  37. getColorObject(tinycolor(hex).lighten(12), '300'),
  38. getColorObject(tinycolor(hex).lighten(6), '400'),
  39. getColorObject(tinycolor(hex), '500'),
  40. getColorObject(tinycolor(hex).darken(6), '600'),
  41. getColorObject(tinycolor(hex).darken(12), '700'),
  42. getColorObject(tinycolor(hex).darken(18), '800'),
  43. getColorObject(tinycolor(hex).darken(24), '900'),
  44. getColorObject(tinycolor(hex).lighten(50).saturate(30), 'A100'),
  45. getColorObject(tinycolor(hex).lighten(30).saturate(30), 'A200'),
  46. getColorObject(tinycolor(hex).lighten(10).saturate(15), 'A400'),
  47. getColorObject(tinycolor(hex).lighten(5).saturate(5), 'A700')
  48. ];
  49. }
  50. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement