From 49baf134666cb4668dd15f0b17c1b61f752f3d28 Mon Sep 17 00:00:00 2001 From: Alex Mercier Date: Sat, 4 Aug 2018 11:38:54 +0200 Subject: [PATCH 1/2] Replaced fetch() by 'material-colors-object' module --- dist/colors.css | 28 +++++------ dist/colors.es2015.js | 10 ++-- dist/colors.js | 2 +- dist/colors.json | 6 +-- dist/colors.less | 8 +-- dist/colors.sass | 8 +-- dist/colors.scss | 8 +-- dist/colors.styl | 8 +-- dist/colors.var.css | 8 +-- lib/compat.json | 22 +++++++++ lib/fetch.js | 110 ------------------------------------------ package.json | 2 +- tasks/json.js | 46 +++++++++++++----- 13 files changed, 99 insertions(+), 167 deletions(-) create mode 100644 lib/compat.json delete mode 100644 lib/fetch.js diff --git a/dist/colors.css b/dist/colors.css index 6861629..96064e4 100644 --- a/dist/colors.css +++ b/dist/colors.css @@ -1306,6 +1306,20 @@ .stroke-blue-grey-900 { stroke: #263238; } +.color-black { color: #000000; } +.bg-black { background-color: #000000; } +.border-black { border-color: #000000; } +.fill-black { fill: #000000; } +.stroke-black { stroke: #000000; } + + +.color-white { color: #ffffff; } +.bg-white { background-color: #ffffff; } +.border-white { border-color: #ffffff; } +.fill-white { fill: #ffffff; } +.stroke-white { stroke: #ffffff; } + + .color-dark-text-primary { color: rgba(0, 0, 0, 0.87); } .bg-dark-text-primary { background-color: rgba(0, 0, 0, 0.87); } .border-dark-text-primary { border-color: rgba(0, 0, 0, 0.87); } @@ -1374,18 +1388,4 @@ .stroke-light-icons-inactive { stroke: rgba(255, 255, 255, 0.5); } -.color-white { color: #ffffff; } -.bg-white { background-color: #ffffff; } -.border-white { border-color: #ffffff; } -.fill-white { fill: #ffffff; } -.stroke-white { stroke: #ffffff; } - - -.color-black { color: #000000; } -.bg-black { background-color: #000000; } -.border-black { border-color: #000000; } -.fill-black { fill: #000000; } -.stroke-black { stroke: #000000; } - - diff --git a/dist/colors.es2015.js b/dist/colors.es2015.js index 66231fb..e9d3f33 100644 --- a/dist/colors.es2015.js +++ b/dist/colors.es2015.js @@ -17,12 +17,12 @@ export var deepOrange = {"50":"#fbe9e7","100":"#ffccbc","200":"#ffab91","300":"# export var brown = {"50":"#efebe9","100":"#d7ccc8","200":"#bcaaa4","300":"#a1887f","400":"#8d6e63","500":"#795548","600":"#6d4c41","700":"#5d4037","800":"#4e342e","900":"#3e2723"}; export var grey = {"50":"#fafafa","100":"#f5f5f5","200":"#eeeeee","300":"#e0e0e0","400":"#bdbdbd","500":"#9e9e9e","600":"#757575","700":"#616161","800":"#424242","900":"#212121"}; export var blueGrey = {"50":"#eceff1","100":"#cfd8dc","200":"#b0bec5","300":"#90a4ae","400":"#78909c","500":"#607d8b","600":"#546e7a","700":"#455a64","800":"#37474f","900":"#263238"}; +export var black = "#000000"; +export var white = "#ffffff"; export var darkText = {"primary":"rgba(0, 0, 0, 0.87)","secondary":"rgba(0, 0, 0, 0.54)","disabled":"rgba(0, 0, 0, 0.38)","dividers":"rgba(0, 0, 0, 0.12)"}; export var lightText = {"primary":"rgba(255, 255, 255, 1)","secondary":"rgba(255, 255, 255, 0.7)","disabled":"rgba(255, 255, 255, 0.5)","dividers":"rgba(255, 255, 255, 0.12)"}; export var darkIcons = {"active":"rgba(0, 0, 0, 0.54)","inactive":"rgba(0, 0, 0, 0.38)"}; export var lightIcons = {"active":"rgba(255, 255, 255, 1)","inactive":"rgba(255, 255, 255, 0.5)"}; -export var white = "#ffffff"; -export var black = "#000000"; export default { red: red, @@ -44,10 +44,10 @@ export default { brown: brown, grey: grey, blueGrey: blueGrey, + black: black, + white: white, darkText: darkText, lightText: lightText, darkIcons: darkIcons, - lightIcons: lightIcons, - white: white, - black: black + lightIcons: lightIcons }; diff --git a/dist/colors.js b/dist/colors.js index c734473..78a9742 100644 --- a/dist/colors.js +++ b/dist/colors.js @@ -7,5 +7,5 @@ root.materialColors = factory(); } })(this, function() { - return {"red":{"50":"#ffebee","100":"#ffcdd2","200":"#ef9a9a","300":"#e57373","400":"#ef5350","500":"#f44336","600":"#e53935","700":"#d32f2f","800":"#c62828","900":"#b71c1c","a100":"#ff8a80","a200":"#ff5252","a400":"#ff1744","a700":"#d50000"},"pink":{"50":"#fce4ec","100":"#f8bbd0","200":"#f48fb1","300":"#f06292","400":"#ec407a","500":"#e91e63","600":"#d81b60","700":"#c2185b","800":"#ad1457","900":"#880e4f","a100":"#ff80ab","a200":"#ff4081","a400":"#f50057","a700":"#c51162"},"purple":{"50":"#f3e5f5","100":"#e1bee7","200":"#ce93d8","300":"#ba68c8","400":"#ab47bc","500":"#9c27b0","600":"#8e24aa","700":"#7b1fa2","800":"#6a1b9a","900":"#4a148c","a100":"#ea80fc","a200":"#e040fb","a400":"#d500f9","a700":"#aa00ff"},"deepPurple":{"50":"#ede7f6","100":"#d1c4e9","200":"#b39ddb","300":"#9575cd","400":"#7e57c2","500":"#673ab7","600":"#5e35b1","700":"#512da8","800":"#4527a0","900":"#311b92","a100":"#b388ff","a200":"#7c4dff","a400":"#651fff","a700":"#6200ea"},"indigo":{"50":"#e8eaf6","100":"#c5cae9","200":"#9fa8da","300":"#7986cb","400":"#5c6bc0","500":"#3f51b5","600":"#3949ab","700":"#303f9f","800":"#283593","900":"#1a237e","a100":"#8c9eff","a200":"#536dfe","a400":"#3d5afe","a700":"#304ffe"},"blue":{"50":"#e3f2fd","100":"#bbdefb","200":"#90caf9","300":"#64b5f6","400":"#42a5f5","500":"#2196f3","600":"#1e88e5","700":"#1976d2","800":"#1565c0","900":"#0d47a1","a100":"#82b1ff","a200":"#448aff","a400":"#2979ff","a700":"#2962ff"},"lightBlue":{"50":"#e1f5fe","100":"#b3e5fc","200":"#81d4fa","300":"#4fc3f7","400":"#29b6f6","500":"#03a9f4","600":"#039be5","700":"#0288d1","800":"#0277bd","900":"#01579b","a100":"#80d8ff","a200":"#40c4ff","a400":"#00b0ff","a700":"#0091ea"},"cyan":{"50":"#e0f7fa","100":"#b2ebf2","200":"#80deea","300":"#4dd0e1","400":"#26c6da","500":"#00bcd4","600":"#00acc1","700":"#0097a7","800":"#00838f","900":"#006064","a100":"#84ffff","a200":"#18ffff","a400":"#00e5ff","a700":"#00b8d4"},"teal":{"50":"#e0f2f1","100":"#b2dfdb","200":"#80cbc4","300":"#4db6ac","400":"#26a69a","500":"#009688","600":"#00897b","700":"#00796b","800":"#00695c","900":"#004d40","a100":"#a7ffeb","a200":"#64ffda","a400":"#1de9b6","a700":"#00bfa5"},"green":{"50":"#e8f5e9","100":"#c8e6c9","200":"#a5d6a7","300":"#81c784","400":"#66bb6a","500":"#4caf50","600":"#43a047","700":"#388e3c","800":"#2e7d32","900":"#1b5e20","a100":"#b9f6ca","a200":"#69f0ae","a400":"#00e676","a700":"#00c853"},"lightGreen":{"50":"#f1f8e9","100":"#dcedc8","200":"#c5e1a5","300":"#aed581","400":"#9ccc65","500":"#8bc34a","600":"#7cb342","700":"#689f38","800":"#558b2f","900":"#33691e","a100":"#ccff90","a200":"#b2ff59","a400":"#76ff03","a700":"#64dd17"},"lime":{"50":"#f9fbe7","100":"#f0f4c3","200":"#e6ee9c","300":"#dce775","400":"#d4e157","500":"#cddc39","600":"#c0ca33","700":"#afb42b","800":"#9e9d24","900":"#827717","a100":"#f4ff81","a200":"#eeff41","a400":"#c6ff00","a700":"#aeea00"},"yellow":{"50":"#fffde7","100":"#fff9c4","200":"#fff59d","300":"#fff176","400":"#ffee58","500":"#ffeb3b","600":"#fdd835","700":"#fbc02d","800":"#f9a825","900":"#f57f17","a100":"#ffff8d","a200":"#ffff00","a400":"#ffea00","a700":"#ffd600"},"amber":{"50":"#fff8e1","100":"#ffecb3","200":"#ffe082","300":"#ffd54f","400":"#ffca28","500":"#ffc107","600":"#ffb300","700":"#ffa000","800":"#ff8f00","900":"#ff6f00","a100":"#ffe57f","a200":"#ffd740","a400":"#ffc400","a700":"#ffab00"},"orange":{"50":"#fff3e0","100":"#ffe0b2","200":"#ffcc80","300":"#ffb74d","400":"#ffa726","500":"#ff9800","600":"#fb8c00","700":"#f57c00","800":"#ef6c00","900":"#e65100","a100":"#ffd180","a200":"#ffab40","a400":"#ff9100","a700":"#ff6d00"},"deepOrange":{"50":"#fbe9e7","100":"#ffccbc","200":"#ffab91","300":"#ff8a65","400":"#ff7043","500":"#ff5722","600":"#f4511e","700":"#e64a19","800":"#d84315","900":"#bf360c","a100":"#ff9e80","a200":"#ff6e40","a400":"#ff3d00","a700":"#dd2c00"},"brown":{"50":"#efebe9","100":"#d7ccc8","200":"#bcaaa4","300":"#a1887f","400":"#8d6e63","500":"#795548","600":"#6d4c41","700":"#5d4037","800":"#4e342e","900":"#3e2723"},"grey":{"50":"#fafafa","100":"#f5f5f5","200":"#eeeeee","300":"#e0e0e0","400":"#bdbdbd","500":"#9e9e9e","600":"#757575","700":"#616161","800":"#424242","900":"#212121"},"blueGrey":{"50":"#eceff1","100":"#cfd8dc","200":"#b0bec5","300":"#90a4ae","400":"#78909c","500":"#607d8b","600":"#546e7a","700":"#455a64","800":"#37474f","900":"#263238"},"darkText":{"primary":"rgba(0, 0, 0, 0.87)","secondary":"rgba(0, 0, 0, 0.54)","disabled":"rgba(0, 0, 0, 0.38)","dividers":"rgba(0, 0, 0, 0.12)"},"lightText":{"primary":"rgba(255, 255, 255, 1)","secondary":"rgba(255, 255, 255, 0.7)","disabled":"rgba(255, 255, 255, 0.5)","dividers":"rgba(255, 255, 255, 0.12)"},"darkIcons":{"active":"rgba(0, 0, 0, 0.54)","inactive":"rgba(0, 0, 0, 0.38)"},"lightIcons":{"active":"rgba(255, 255, 255, 1)","inactive":"rgba(255, 255, 255, 0.5)"},"white":"#ffffff","black":"#000000"}; + return {"red":{"50":"#ffebee","100":"#ffcdd2","200":"#ef9a9a","300":"#e57373","400":"#ef5350","500":"#f44336","600":"#e53935","700":"#d32f2f","800":"#c62828","900":"#b71c1c","a100":"#ff8a80","a200":"#ff5252","a400":"#ff1744","a700":"#d50000"},"pink":{"50":"#fce4ec","100":"#f8bbd0","200":"#f48fb1","300":"#f06292","400":"#ec407a","500":"#e91e63","600":"#d81b60","700":"#c2185b","800":"#ad1457","900":"#880e4f","a100":"#ff80ab","a200":"#ff4081","a400":"#f50057","a700":"#c51162"},"purple":{"50":"#f3e5f5","100":"#e1bee7","200":"#ce93d8","300":"#ba68c8","400":"#ab47bc","500":"#9c27b0","600":"#8e24aa","700":"#7b1fa2","800":"#6a1b9a","900":"#4a148c","a100":"#ea80fc","a200":"#e040fb","a400":"#d500f9","a700":"#aa00ff"},"deepPurple":{"50":"#ede7f6","100":"#d1c4e9","200":"#b39ddb","300":"#9575cd","400":"#7e57c2","500":"#673ab7","600":"#5e35b1","700":"#512da8","800":"#4527a0","900":"#311b92","a100":"#b388ff","a200":"#7c4dff","a400":"#651fff","a700":"#6200ea"},"indigo":{"50":"#e8eaf6","100":"#c5cae9","200":"#9fa8da","300":"#7986cb","400":"#5c6bc0","500":"#3f51b5","600":"#3949ab","700":"#303f9f","800":"#283593","900":"#1a237e","a100":"#8c9eff","a200":"#536dfe","a400":"#3d5afe","a700":"#304ffe"},"blue":{"50":"#e3f2fd","100":"#bbdefb","200":"#90caf9","300":"#64b5f6","400":"#42a5f5","500":"#2196f3","600":"#1e88e5","700":"#1976d2","800":"#1565c0","900":"#0d47a1","a100":"#82b1ff","a200":"#448aff","a400":"#2979ff","a700":"#2962ff"},"lightBlue":{"50":"#e1f5fe","100":"#b3e5fc","200":"#81d4fa","300":"#4fc3f7","400":"#29b6f6","500":"#03a9f4","600":"#039be5","700":"#0288d1","800":"#0277bd","900":"#01579b","a100":"#80d8ff","a200":"#40c4ff","a400":"#00b0ff","a700":"#0091ea"},"cyan":{"50":"#e0f7fa","100":"#b2ebf2","200":"#80deea","300":"#4dd0e1","400":"#26c6da","500":"#00bcd4","600":"#00acc1","700":"#0097a7","800":"#00838f","900":"#006064","a100":"#84ffff","a200":"#18ffff","a400":"#00e5ff","a700":"#00b8d4"},"teal":{"50":"#e0f2f1","100":"#b2dfdb","200":"#80cbc4","300":"#4db6ac","400":"#26a69a","500":"#009688","600":"#00897b","700":"#00796b","800":"#00695c","900":"#004d40","a100":"#a7ffeb","a200":"#64ffda","a400":"#1de9b6","a700":"#00bfa5"},"green":{"50":"#e8f5e9","100":"#c8e6c9","200":"#a5d6a7","300":"#81c784","400":"#66bb6a","500":"#4caf50","600":"#43a047","700":"#388e3c","800":"#2e7d32","900":"#1b5e20","a100":"#b9f6ca","a200":"#69f0ae","a400":"#00e676","a700":"#00c853"},"lightGreen":{"50":"#f1f8e9","100":"#dcedc8","200":"#c5e1a5","300":"#aed581","400":"#9ccc65","500":"#8bc34a","600":"#7cb342","700":"#689f38","800":"#558b2f","900":"#33691e","a100":"#ccff90","a200":"#b2ff59","a400":"#76ff03","a700":"#64dd17"},"lime":{"50":"#f9fbe7","100":"#f0f4c3","200":"#e6ee9c","300":"#dce775","400":"#d4e157","500":"#cddc39","600":"#c0ca33","700":"#afb42b","800":"#9e9d24","900":"#827717","a100":"#f4ff81","a200":"#eeff41","a400":"#c6ff00","a700":"#aeea00"},"yellow":{"50":"#fffde7","100":"#fff9c4","200":"#fff59d","300":"#fff176","400":"#ffee58","500":"#ffeb3b","600":"#fdd835","700":"#fbc02d","800":"#f9a825","900":"#f57f17","a100":"#ffff8d","a200":"#ffff00","a400":"#ffea00","a700":"#ffd600"},"amber":{"50":"#fff8e1","100":"#ffecb3","200":"#ffe082","300":"#ffd54f","400":"#ffca28","500":"#ffc107","600":"#ffb300","700":"#ffa000","800":"#ff8f00","900":"#ff6f00","a100":"#ffe57f","a200":"#ffd740","a400":"#ffc400","a700":"#ffab00"},"orange":{"50":"#fff3e0","100":"#ffe0b2","200":"#ffcc80","300":"#ffb74d","400":"#ffa726","500":"#ff9800","600":"#fb8c00","700":"#f57c00","800":"#ef6c00","900":"#e65100","a100":"#ffd180","a200":"#ffab40","a400":"#ff9100","a700":"#ff6d00"},"deepOrange":{"50":"#fbe9e7","100":"#ffccbc","200":"#ffab91","300":"#ff8a65","400":"#ff7043","500":"#ff5722","600":"#f4511e","700":"#e64a19","800":"#d84315","900":"#bf360c","a100":"#ff9e80","a200":"#ff6e40","a400":"#ff3d00","a700":"#dd2c00"},"brown":{"50":"#efebe9","100":"#d7ccc8","200":"#bcaaa4","300":"#a1887f","400":"#8d6e63","500":"#795548","600":"#6d4c41","700":"#5d4037","800":"#4e342e","900":"#3e2723"},"grey":{"50":"#fafafa","100":"#f5f5f5","200":"#eeeeee","300":"#e0e0e0","400":"#bdbdbd","500":"#9e9e9e","600":"#757575","700":"#616161","800":"#424242","900":"#212121"},"blueGrey":{"50":"#eceff1","100":"#cfd8dc","200":"#b0bec5","300":"#90a4ae","400":"#78909c","500":"#607d8b","600":"#546e7a","700":"#455a64","800":"#37474f","900":"#263238"},"black":"#000000","white":"#ffffff","darkText":{"primary":"rgba(0, 0, 0, 0.87)","secondary":"rgba(0, 0, 0, 0.54)","disabled":"rgba(0, 0, 0, 0.38)","dividers":"rgba(0, 0, 0, 0.12)"},"lightText":{"primary":"rgba(255, 255, 255, 1)","secondary":"rgba(255, 255, 255, 0.7)","disabled":"rgba(255, 255, 255, 0.5)","dividers":"rgba(255, 255, 255, 0.12)"},"darkIcons":{"active":"rgba(0, 0, 0, 0.54)","inactive":"rgba(0, 0, 0, 0.38)"},"lightIcons":{"active":"rgba(255, 255, 255, 1)","inactive":"rgba(255, 255, 255, 0.5)"}}; }); diff --git a/dist/colors.json b/dist/colors.json index 87560a0..f6b65d2 100644 --- a/dist/colors.json +++ b/dist/colors.json @@ -291,6 +291,8 @@ "800": "#37474f", "900": "#263238" }, + "black": "#000000", + "white": "#ffffff", "dark-text": { "primary": "rgba(0, 0, 0, 0.87)", "secondary": "rgba(0, 0, 0, 0.54)", @@ -310,7 +312,5 @@ "light-icons": { "active": "rgba(255, 255, 255, 1)", "inactive": "rgba(255, 255, 255, 0.5)" - }, - "white": "#ffffff", - "black": "#000000" + } } \ No newline at end of file diff --git a/dist/colors.less b/dist/colors.less index caa6ce1..37c8ef8 100644 --- a/dist/colors.less +++ b/dist/colors.less @@ -271,6 +271,10 @@ @md-blue-grey-800: #37474f; @md-blue-grey-900: #263238; +@md-black: #000000; + +@md-white: #ffffff; + @md-dark-text-primary: rgba(0, 0, 0, 0.87); @md-dark-text-secondary: rgba(0, 0, 0, 0.54); @md-dark-text-disabled: rgba(0, 0, 0, 0.38); @@ -287,8 +291,4 @@ @md-light-icons-active: rgba(255, 255, 255, 1); @md-light-icons-inactive: rgba(255, 255, 255, 0.5); -@md-white: #ffffff; - -@md-black: #000000; - diff --git a/dist/colors.sass b/dist/colors.sass index d58072b..cecb688 100644 --- a/dist/colors.sass +++ b/dist/colors.sass @@ -271,6 +271,10 @@ $md-blue-grey-700: #455a64 $md-blue-grey-800: #37474f $md-blue-grey-900: #263238 +$md-black: #000000 + +$md-white: #ffffff + $md-dark-text-primary: rgba(0, 0, 0, 0.87) $md-dark-text-secondary: rgba(0, 0, 0, 0.54) $md-dark-text-disabled: rgba(0, 0, 0, 0.38) @@ -287,8 +291,4 @@ $md-dark-icons-inactive: rgba(0, 0, 0, 0.38) $md-light-icons-active: rgba(255, 255, 255, 1) $md-light-icons-inactive: rgba(255, 255, 255, 0.5) -$md-white: #ffffff - -$md-black: #000000 - diff --git a/dist/colors.scss b/dist/colors.scss index 1ba90b9..f6e6c27 100644 --- a/dist/colors.scss +++ b/dist/colors.scss @@ -271,6 +271,10 @@ $md-blue-grey-700: #455a64; $md-blue-grey-800: #37474f; $md-blue-grey-900: #263238; +$md-black: #000000; + +$md-white: #ffffff; + $md-dark-text-primary: rgba(0, 0, 0, 0.87); $md-dark-text-secondary: rgba(0, 0, 0, 0.54); $md-dark-text-disabled: rgba(0, 0, 0, 0.38); @@ -287,8 +291,4 @@ $md-dark-icons-inactive: rgba(0, 0, 0, 0.38); $md-light-icons-active: rgba(255, 255, 255, 1); $md-light-icons-inactive: rgba(255, 255, 255, 0.5); -$md-white: #ffffff; - -$md-black: #000000; - diff --git a/dist/colors.styl b/dist/colors.styl index e90baca..0bd79d6 100644 --- a/dist/colors.styl +++ b/dist/colors.styl @@ -271,6 +271,10 @@ md-blue-grey-700 = #455a64 md-blue-grey-800 = #37474f md-blue-grey-900 = #263238 +md-black = #000000 + +md-white = #ffffff + md-dark-text-primary = rgba(0, 0, 0, 0.87) md-dark-text-secondary = rgba(0, 0, 0, 0.54) md-dark-text-disabled = rgba(0, 0, 0, 0.38) @@ -287,8 +291,4 @@ md-dark-icons-inactive = rgba(0, 0, 0, 0.38) md-light-icons-active = rgba(255, 255, 255, 1) md-light-icons-inactive = rgba(255, 255, 255, 0.5) -md-white = #ffffff - -md-black = #000000 - diff --git a/dist/colors.var.css b/dist/colors.var.css index 6eb6084..6b3bcb6 100644 --- a/dist/colors.var.css +++ b/dist/colors.var.css @@ -272,6 +272,10 @@ --md-blue-grey-800: #37474f; --md-blue-grey-900: #263238; +--md-black: #000000; + +--md-white: #ffffff; + --md-dark-text-primary: rgba(0, 0, 0, 0.87); --md-dark-text-secondary: rgba(0, 0, 0, 0.54); --md-dark-text-disabled: rgba(0, 0, 0, 0.38); @@ -288,9 +292,5 @@ --md-light-icons-active: rgba(255, 255, 255, 1); --md-light-icons-inactive: rgba(255, 255, 255, 0.5); ---md-white: #ffffff; - ---md-black: #000000; - } diff --git a/lib/compat.json b/lib/compat.json new file mode 100644 index 0000000..cc2c816 --- /dev/null +++ b/lib/compat.json @@ -0,0 +1,22 @@ +{ + "dark-text": { + "primary": "rgba(0, 0, 0, 0.87)", + "secondary": "rgba(0, 0, 0, 0.54)", + "disabled": "rgba(0, 0, 0, 0.38)", + "dividers": "rgba(0, 0, 0, 0.12)" + }, + "light-text": { + "primary": "rgba(255, 255, 255, 1)", + "secondary": "rgba(255, 255, 255, 0.7)", + "disabled": "rgba(255, 255, 255, 0.5)", + "dividers": "rgba(255, 255, 255, 0.12)" + }, + "dark-icons": { + "active": "rgba(0, 0, 0, 0.54)", + "inactive": "rgba(0, 0, 0, 0.38)" + }, + "light-icons": { + "active": "rgba(255, 255, 255, 1)", + "inactive": "rgba(255, 255, 255, 0.5)" + } +} diff --git a/lib/fetch.js b/lib/fetch.js deleted file mode 100644 index 0886ace..0000000 --- a/lib/fetch.js +++ /dev/null @@ -1,110 +0,0 @@ -var https = require('https'); -var util = require('util'); -var cheerio = require('cheerio'); - -// Create an Object from an Array of objects. -function toObject(objects, keyName, valueName) { - return objects.reduce(function(acc, obj) { - acc[obj[keyName]] = obj[valueName]; - return acc; - }, {}); -} - -function parse(html) { - var $ = cheerio.load(html); - - function pickColor(_i, item) { - var $item = $(item); - var shade = $item.find('.shade').text().toLowerCase(); - var hex = $item.find('.hex').text().toLowerCase(); - return { shade: shade, hex: hex }; - } - - function pickGroupColors(_i, group) { - var $group = $(group); - var colorName = $group.find('.color-tag .group').text(); - var name = colorName.toLowerCase().split(' ').join('-'); - var $items = $group.find('.color-tag .details'); - var groupColors = $items.map(pickColor).get(); - var colors = toObject(groupColors, 'shade', 'hex'); - return { name: name, colors: colors }; - } - - function toRGBA(baseColor, opacity) { - return 'rgba(' + baseColor - .substr(1) - .replace(/[\da-f]{2}/ig, function(n) { - return Number.parseInt(n, 16) + ', '; - }) + opacity + ')'; - } - - function pickTextColor(baseColor) { - return function(_i, item) { - var $item = $(item); - var $cols = $item.find('> td'); - var name = $cols.first().text().split(' ')[0].toLowerCase(); - var opacity = Number.parseInt($cols.last().text(), 10) / 100; - var rgbaColor = toRGBA(baseColor, opacity); - return { name: name, color: rgbaColor }; - }; - } - - function pickTextGroups(_i, group) { - var $group = $(group); - var colorName = $group.find('> tr:first-child > td:first-child').text(); - var name = colorName.replace(/ \(.+/, '').replace(' ', '-').toLowerCase(); - var baseColor = colorName.replace(/.+\((.+)\)/, '$1'); - var $items = $group.find('> tr:nth-child(1n+2)'); - var groupColors = $items.map(pickTextColor(baseColor)).get(); - var colors = toObject(groupColors, 'name', 'color'); - return { name: name, colors: colors }; - } - - function filterEmpty(_, el) { - return $(el).text().trim() !== ''; - } - - var $groups = $('#color-color-palette .module').filter(filterEmpty); - var colorGroups = $groups.map(pickGroupColors).get(); - var $textGroups = $('.s-tag-table > tbody'); - var textGroups = $textGroups.map(pickTextGroups).get(); - - var colorSet = toObject(colorGroups.concat(textGroups), 'name', 'colors'); - // Put black and white at the top level. - if ('' in colorSet) { - util._extend(colorSet, colorSet['']); - delete colorSet['']; - } - return colorSet; -} - -function fetchURL(url, callback) { - https.get(url, function(res) { - if (res.statusCode === 301 || res.statusCode === 302) { - fetchURL(res.headers.location, callback); - return; - } - if (res.statusCode !== 200) { - callback('Status code: ' + res.statusCode); - return; - } - - var html = ''; - res.setEncoding('utf8'); - res.on('readable', function() { - html += res.read(); - }); - res.on('end', function() { - var colorSet = parse(html); - callback(null, colorSet); - }); - res.on('error', callback); - }).on('error', callback); -} - -function fetch(callback) { - process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0"; - fetchURL('https://material.io/guidelines/style/color.html', callback); -} - -module.exports = fetch; diff --git a/package.json b/package.json index a77793a..cd76356 100644 --- a/package.json +++ b/package.json @@ -33,9 +33,9 @@ }, "license": "ISC", "devDependencies": { - "cheerio": "^0.22.0", "grunt": "^1.0.1", "grunt-cli": "^1.2.0", + "material-colors-object": "^1.0.0", "rollup": "^0.40.2", "tape": "^4.6.3", "tmp": "0.0.31" diff --git a/tasks/json.js b/tasks/json.js index 0b865fb..c3cdeb6 100644 --- a/tasks/json.js +++ b/tasks/json.js @@ -1,18 +1,38 @@ -var fetch = require('../lib/fetch'); +const materialColors = require('material-colors-object'); +const compatColors = require('../lib/compat'); + +const keys = Object.keys; + +function reduceColorShades(color) { + const colorShadeReducer = (acc, shadeKey) => { + acc[shadeKey] = color.shades[shadeKey].value; + return acc; + } + return keys(color.shades).reduce(colorShadeReducer, {}); +} + +function reduceColorSet(colorSet) { + const colorReducer = (acc, colorKey) => { + // Rename gray -> grey for backward-compatibility + acc[colorKey.replace('gray', 'grey')] = + colorSet[colorKey].shades + ? reduceColorShades(colorSet[colorKey]) + : colorSet[colorKey].value; + return acc; + }; + return keys(colorSet).reduce(colorReducer, {}); +} module.exports = function(grunt) { - grunt.registerTask('json', function() { - var done = this.async(); - fetch(function(err, colorSet) { - if (err) { - grunt.log.writeln(err); - done(false); - return; - } + grunt.registerTask('json', function () { + // Cleanup + const colorSet = reduceColorSet(materialColors); + + // Combine official colors with set from lib/compat.json + Object.assign(colorSet, compatColors); - var json = JSON.stringify(colorSet, null, 2); - grunt.file.write('dist/colors.json', json); - done(); - }); + // Write JSON file + const json = JSON.stringify(colorSet, null, 2); + grunt.file.write('dist/colors.json', json); }); }; From 2d7266b0ef86f43b6ee3e8252c5d9557bf4dbd8c Mon Sep 17 00:00:00 2001 From: Alex Mercier Date: Sun, 5 Aug 2018 10:54:40 +0200 Subject: [PATCH 2/2] Pinned material-colors-object to 1.0.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index cd76356..d871db3 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "devDependencies": { "grunt": "^1.0.1", "grunt-cli": "^1.2.0", - "material-colors-object": "^1.0.0", + "material-colors-object": "1.0.0", "rollup": "^0.40.2", "tape": "^4.6.3", "tmp": "0.0.31"