ratchet_design 0.1.19 → 0.1.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (102) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/ratchet/_esvg.js +72 -0
  3. data/app/assets/javascripts/ratchet/_icons.js +19 -0
  4. data/app/assets/javascripts/ratchet/_topology.js +19 -0
  5. data/app/assets/javascripts/ratchet/base/form.js +4 -4
  6. data/app/assets/javascripts/ratchet/core.js +15 -8
  7. data/app/assets/javascripts/ratchet/enhancement/{_collapse.js → collapse.js} +3 -3
  8. data/app/assets/javascripts/ratchet/enhancement/lightbox.js +52 -118
  9. data/app/assets/javascripts/ratchet/enhancement/modal.js +185 -0
  10. data/app/assets/javascripts/ratchet/enhancement/smooth-scroll.js +21 -0
  11. data/app/assets/javascripts/ratchet/utility/once.js +42 -0
  12. data/app/assets/stylesheets/ratchet/_colors.yml +54 -0
  13. data/app/assets/stylesheets/ratchet/_core.scss +8 -1
  14. data/app/assets/stylesheets/ratchet/base/_button.scss +22 -31
  15. data/app/assets/stylesheets/ratchet/base/_document.scss +66 -53
  16. data/app/assets/stylesheets/ratchet/base/_form.scss +0 -1
  17. data/app/assets/stylesheets/ratchet/base/_list.scss +6 -15
  18. data/app/assets/stylesheets/ratchet/base/_media.scss +22 -6
  19. data/app/assets/stylesheets/ratchet/base/_section.scss +8 -257
  20. data/app/assets/stylesheets/ratchet/base/_slider.scss +388 -0
  21. data/app/assets/stylesheets/ratchet/base/_table.scss +1 -2
  22. data/app/assets/stylesheets/ratchet/base/_text.scss +13 -29
  23. data/app/assets/stylesheets/ratchet/enhancement/_deployments.scss +26 -0
  24. data/app/assets/stylesheets/ratchet/enhancement/_hero.scss +1 -1
  25. data/app/assets/stylesheets/ratchet/enhancement/_lightbox.scss +35 -76
  26. data/app/assets/stylesheets/ratchet/enhancement/_modal.scss +125 -0
  27. data/app/assets/stylesheets/ratchet/utility/_animations.scss +8 -0
  28. data/app/assets/stylesheets/ratchet/utility/_color.scss +25 -105
  29. data/app/assets/stylesheets/ratchet/utility/_global.scss +30 -24
  30. data/app/assets/stylesheets/ratchet/utility/_grid.scss +152 -15
  31. data/app/assets/svgs/ratchet/_icons/backup.svg +9 -0
  32. data/app/assets/svgs/ratchet/_icons/block.svg +7 -0
  33. data/app/assets/svgs/ratchet/_icons/compose-logomark.svg +8 -0
  34. data/app/assets/svgs/ratchet/_icons/connecting-in.svg +46 -0
  35. data/app/assets/svgs/ratchet/_icons/connecting-out.svg +33 -0
  36. data/app/assets/svgs/ratchet/_icons/customer-buffer.svg +28 -0
  37. data/app/assets/svgs/ratchet/_icons/customer-citrix.svg +12 -0
  38. data/app/assets/svgs/ratchet/_icons/customer-guardian.svg +31 -0
  39. data/app/assets/svgs/ratchet/_icons/customer-roximity.svg +16 -0
  40. data/app/assets/svgs/ratchet/_icons/customer-upworthy.svg +13 -0
  41. data/app/assets/svgs/ratchet/_icons/db-money.svg +31 -0
  42. data/app/assets/svgs/ratchet/_icons/deployment.svg +1 -0
  43. data/app/assets/svgs/ratchet/{facebook.svg → _icons/facebook.svg} +0 -0
  44. data/app/assets/svgs/ratchet/_icons/gear.svg +12 -0
  45. data/app/assets/svgs/ratchet/{github.svg → _icons/github.svg} +0 -0
  46. data/app/assets/svgs/ratchet/{google-plus.svg → _icons/google-plus.svg} +0 -0
  47. data/app/assets/svgs/ratchet/{ibm.svg → _icons/ibm.svg} +0 -0
  48. data/app/assets/svgs/ratchet/{inbox.svg → _icons/inbox.svg} +0 -0
  49. data/app/assets/svgs/ratchet/_icons/index.svg +3 -0
  50. data/app/assets/svgs/ratchet/_icons/keylock.svg +8 -0
  51. data/app/assets/svgs/ratchet/_icons/life-preserver.svg +17 -0
  52. data/app/assets/svgs/ratchet/{linkedin.svg → _icons/linkedin.svg} +0 -0
  53. data/app/assets/svgs/ratchet/_icons/metrics.svg +7 -0
  54. data/app/assets/svgs/ratchet/_icons/money-stack.svg +60 -0
  55. data/app/assets/svgs/ratchet/_icons/notepad.svg +12 -0
  56. data/app/assets/svgs/ratchet/_icons/notepad2.svg +14 -0
  57. data/app/assets/svgs/ratchet/_icons/one-click.svg +6 -0
  58. data/app/assets/svgs/ratchet/{ratchet.svg → _icons/ratchet.svg} +0 -0
  59. data/app/assets/svgs/ratchet/_icons/reliability.svg +12 -0
  60. data/app/assets/svgs/ratchet/_icons/safe.svg +26 -0
  61. data/app/assets/svgs/ratchet/_icons/scaling.svg +16 -0
  62. data/app/assets/svgs/ratchet/{search.svg → _icons/search.svg} +0 -0
  63. data/app/assets/svgs/ratchet/{subscribe.svg → _icons/subscribe.svg} +0 -0
  64. data/app/assets/svgs/ratchet/{twitter.svg → _icons/twitter.svg} +0 -0
  65. data/app/assets/svgs/ratchet/{y-combinator.svg → _icons/y-combinator.svg} +0 -0
  66. data/app/assets/svgs/ratchet/_icons/youtube.svg +3 -0
  67. data/app/assets/svgs/ratchet/_topology/arbiter.svg +1 -0
  68. data/app/assets/svgs/ratchet/_topology/backup.svg +1 -0
  69. data/app/assets/svgs/ratchet/_topology/config.svg +1 -0
  70. data/app/assets/svgs/ratchet/_topology/haproxy-2.svg +1 -0
  71. data/app/assets/svgs/ratchet/_topology/haproxy-storage.svg +1 -0
  72. data/app/assets/svgs/ratchet/_topology/haproxy.svg +1 -0
  73. data/app/assets/svgs/ratchet/_topology/memory.svg +1 -0
  74. data/app/assets/svgs/ratchet/_topology/portal-2.svg +1 -0
  75. data/app/assets/svgs/ratchet/_topology/portal.svg +1 -0
  76. data/app/assets/svgs/ratchet/_topology/sentinel-memory.svg +1 -0
  77. data/app/assets/svgs/ratchet/_topology/sentinel.svg +1 -0
  78. data/app/assets/svgs/ratchet/_topology/storage.svg +1 -0
  79. data/app/helpers/ratchet/application_helper.rb +10 -2
  80. data/app/helpers/ratchet/form_helper.rb +84 -1
  81. data/app/helpers/ratchet/icon_helper.rb +113 -0
  82. data/app/helpers/ratchet/pricing_helper.rb +133 -0
  83. data/app/helpers/ratchet/toggle_nav_helper.rb +101 -0
  84. data/app/views/layouts/ratchet/default.html.slim +3 -3
  85. data/app/views/shared/ratchet/_defs.html.slim +30 -88
  86. data/app/views/shared/ratchet/_fonts.html.slim +88 -0
  87. data/app/views/shared/ratchet/_footer.html.slim +1 -1
  88. data/app/views/shared/ratchet/_header.html.slim +5 -5
  89. data/app/views/shared/ratchet/_icons.html.slim +190 -5
  90. data/lib/ratchet_design/config_data.rb +29 -0
  91. data/lib/ratchet_design/version.rb +1 -1
  92. data/lib/ratchet_design.rb +27 -10
  93. data/public/core-0.1.20.js +22627 -0
  94. data/public/{fonts-woff-0.1.19.css → fonts-woff-0.1.20.css} +0 -0
  95. data/public/{fonts-woff2-0.1.19.css → fonts-woff2-0.1.20.css} +0 -0
  96. metadata +84 -22
  97. data/app/assets/javascripts/ratchet/_svg.js +0 -55
  98. data/public/core-0.1.19.js +0 -138
  99. data/public/core-0.1.19.js.gz +0 -0
  100. data/public/core-0.1.19.map.json +0 -1
  101. data/public/fonts-woff-0.1.19.css.gz +0 -0
  102. data/public/fonts-woff2-0.1.19.css.gz +0 -0
@@ -1,88 +1,30 @@
1
- ruby:
2
- activeColor = [
3
- { "name" => "azure" },
4
- { "name" => "cerulean" },
5
- { "name" => "byzantine" },
6
- { "name" => "mulberry" },
7
- { "name" => "majorelle" },
8
- { "name" => "caribbean" },
9
- { "name" => "grass" },
10
- { "name" => "apple" },
11
- { "name" => "gold" },
12
- { "name" => "tangelo" },
13
- { "name" => "rusty" },
14
- { "name" => "orchid" }
15
- ]
16
-
17
- passiveColor = [
18
- { "name" => "space" },
19
- { "name" => "shark" },
20
- { "name" => "steel" },
21
- { "name" => "pewter" },
22
- { "name" => "dolphin" },
23
- { "name" => "alabaster" },
24
- { "name" => "isabella" },
25
- { "name" => "smoke" },
26
- { "name" => "white" }
27
- ]
28
-
29
- gradient = [
30
- { "name" => "earthrise" },
31
- { "name" => "royalty" },
32
- { "name" => "lagoon" },
33
- { "name" => "pearlescent" },
34
- { "name" => "firestorm" },
35
- { "name" => "sunset" },
36
- { "name" => "berries" },
37
- { "name" => "supernova" },
38
- { "name" => "emerald" },
39
- { "name" => "aurora" },
40
- { "name" => "tidal" },
41
- { "name" => "blackhole" },
42
- { "name" => "midnight" },
43
- { "name" => "shady" },
44
- { "name" => "grayscale" },
45
- { "name" => "polar" },
46
- { "name" => "eggshell" }
47
- ]
48
-
49
- defs#svg-defs
50
-
51
- // Active Colors
52
- - activeColor.each do | a |
53
- linearGradient id="#{a["name"]}" gradientUnits="objectBoundingBox"
54
- stop offset="0"
55
-
56
- - activeColor.each do | a |
57
- linearGradient id="#{a["name"]}-darken" gradientUnits="objectBoundingBox"
58
- stop offset="0"
59
-
60
- // Passive Colors
61
- - passiveColor.each do | a |
62
- linearGradient id="#{a["name"]}" gradientUnits="objectBoundingBox"
63
- stop offset="0"
64
-
65
- - passiveColor.each do | a |
66
- linearGradient id="#{a["name"]}-darken" gradientUnits="objectBoundingBox"
67
- stop offset="0"
68
-
69
- // Standard Gradients
70
- - gradient.each do | a |
71
- linearGradient id="#{a["name"]}" gradientUnits="objectBoundingBox" gradientTransform="rotate(55)"
72
- stop offset="0"
73
- stop offset="1"
74
-
75
- - gradient.each do | a |
76
- linearGradient id="#{a["name"]}-darken" gradientUnits="objectBoundingBox" gradientTransform="rotate(55)"
77
- stop offset="0"
78
- stop offset="1"
79
-
80
- - gradient.each do | a |
81
- linearGradient id="#{a["name"]}-lighten" gradientUnits="objectBoundingBox" gradientTransform="rotate(55)"
82
- stop offset="0"
83
- stop offset="1"
84
-
85
- // White
86
- linearGradient#white gradientUnits="objectBoundingBox"
87
- stop offset="0" style="stop-color:#FFFFFF"
88
- stop offset="1" style="stop-color:#FFFFFF"
1
+ - gradients = sass_data('colors')['gradients']
2
+ - colors = sass_data('colors')['colors']
3
+
4
+ defs#svg-defs
5
+ // White
6
+ linearGradient#white gradientUnits="objectBoundingBox"
7
+ stop offset="0" style="stop-color:#FFFFFF"
8
+ stop offset="1" style="stop-color:#FFFFFF"
9
+
10
+ // Color Gradients
11
+ - colors.each do | name, color |
12
+ linearGradient id="#{name}" gradientUnits="objectBoundingBox"
13
+ stop offset="0"
14
+
15
+ linearGradient id="#{name}-darken" gradientUnits="objectBoundingBox"
16
+ stop offset="0"
17
+
18
+ // Standard Gradients
19
+ - gradients.each do | name, color |
20
+ linearGradient id="#{name}" gradientUnits="objectBoundingBox" gradientTransform="rotate(55)"
21
+ stop offset="0"
22
+ stop offset="1"
23
+
24
+ linearGradient id="#{name}-darken" gradientUnits="objectBoundingBox" gradientTransform="rotate(55)"
25
+ stop offset="0"
26
+ stop offset="1"
27
+
28
+ linearGradient id="#{name}-lighten" gradientUnits="objectBoundingBox" gradientTransform="rotate(55)"
29
+ stop offset="0"
30
+ stop offset="1"
@@ -0,0 +1,88 @@
1
+ javascript:
2
+
3
+ /**
4
+ * LoadFont 0.0.1
5
+ * A font loader that leverages LocalStorage
6
+ * @author Adam Beres-Deak (@bdadam) & Kyle Foster (@hkfoster)
7
+ * @source https://github.com/bdadam/OptimizedWebfontLoading
8
+ * @license MIT
9
+ **/
10
+
11
+ // Dependencies - https://github.com/filamentgroup/woff2-feature-test
12
+ var supportsWoff2 = ( function( win ) {
13
+ if ( !( "FontFace" in win ) ) return false;
14
+ var f = new FontFace( 't', 'url( "data:application/font-woff2;base64,d09GMgABAAAAAAIkAAoAAAAABVwAAAHcAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlYAgloKLEoBNgIkAxgLDgAEIAWDcgc1G7IEyB6SJAFID5YA3nAHC6h4+H7s27nP1kTyOoQkGuJWtNGIJKYznRI3VEL7IaHq985ZUuKryZKcAtJsi5eULwUybm9KzajBBhywZ5ZwoJNuwDX5C/xBjvz5DbsoNsvG1NGQiqp0NMLZ7JlnW+5MaM3HwcHheUQeiVokekHkn/FRdefvJaTp2PczN+I1Sc3k9VuX51Tb0Tqqf1deVXGdJsDOhz0/EffMOPOzHNH06pYkDDjs+P8fb/z/8n9Iq8ITzWywkP6PBMMN9L/O7vY2FNoTAkp5PpD6g1nV9WmyQnM5uPpAMHR2fe06jbfvzPriekVTQxC6lpKr43oDtRZfCATl5OVAUKykqwm9o8R/kg37cxa6eZikS7cjK4aIwoyh6jOFplhFrz2b833G3Jii9AjDUiAZ9AxZtxdEYV6imvRF0+0Nej3wu6nPZrTLh81AVcV3kmMVdQj6Qbe9qetzbuDZ7vXOlRrqooFSxCv6SfrDICA6rnHZXQPVcUHJYGcoqa3jVH7ATrjWBNYYkEqF3RFpVIl0q2JvMOJd7/TyjXHw2NyAuJpNaEbz8RTEVtCbSH7JrwQQOqwGl7sTUOtdBZIY2DKqKlvOmPvUxJaURAZZcviTT0SKHCXqzwc=" ) format( "woff2" )', {} );
15
+ f.load()[ 'catch' ]( function() {} );
16
+ return f.status == 'loading' || f.status == 'loaded';
17
+ })( window );
18
+
19
+ // Catch-all LocalStorage availability check
20
+ var localStorageAvailable = function() {
21
+ var testKey = 'test', storage = window.localStorage;
22
+ try {
23
+ storage.setItem( testKey, '1' );
24
+ storage.removeItem( testKey );
25
+ return true;
26
+ } catch ( error ) {
27
+ return false;
28
+ }
29
+ };
30
+
31
+ // Public API function
32
+ var loadFont = function( fontName, woffUrl, woff2Url, onlyLoadFontOnSecondPageload ){
33
+
34
+ // Many unsupported browsers should stop here
35
+ var nua = navigator.userAgent,
36
+ pass = localStorageAvailable(),
37
+ nope = !window.addEventListener || !pass || ( nua.match( /(Android (2|3|4.0|4.1|4.2|4.3))|(Opera (Mini|Mobi))/ ) && !nua.match( /Chrome/ ) );
38
+
39
+ if ( nope ) return;
40
+
41
+ // Set up LocalStorage
42
+ var loSto = {};
43
+
44
+ // Set up a proxy variable to help with LocalStorage
45
+ try { loSto = localStorage || {}; }
46
+ catch( ex ) {}
47
+
48
+ var loStoPrefix = 'x-font-' + fontName,
49
+ loStoUrlKey = loStoPrefix + 'url',
50
+ loStoCssKey = loStoPrefix + 'css',
51
+ storedFontUrl = loSto[ loStoUrlKey ],
52
+ storedFontCss = loSto[ loStoCssKey ],
53
+ storedUrlMatch = storedFontUrl === woffUrl || storedFontUrl === woff2Url,
54
+ styleElement = document.createElement( 'style' );
55
+
56
+ // Make <style> element & apply base64 encoded font data
57
+ styleElement.rel = 'stylesheet';
58
+ document.head.appendChild( styleElement );
59
+
60
+ // CSS in LocalStorage & loaded from one of the current URLs
61
+ if ( storedFontCss && storedUrlMatch ) {
62
+
63
+ styleElement.textContent = storedFontCss;
64
+
65
+ // Data not present or loaded from an obsolete URL
66
+ } else {
67
+
68
+ // Check for WOFF2 support
69
+ var cssUrl = ( woff2Url && supportsWoff2 ) ? woff2Url : woffUrl,
70
+ request = new XMLHttpRequest();
71
+
72
+ // Fetch font data from the server
73
+ request.open( 'GET', cssUrl );
74
+ request.onload = function() {
75
+ if ( request.status >= 200 && request.status < 400 ) {
76
+
77
+ // Update LocalStorage with fresh data & apply
78
+ loSto[ loStoUrlKey ] = cssUrl;
79
+ loSto[ loStoCssKey ] = request.responseText;
80
+ if ( !onlyLoadFontOnSecondPageload ) styleElement.textContent = request.responseText;
81
+ }
82
+ };
83
+ request.send();
84
+ }
85
+ };
86
+
87
+ // Init
88
+ loadFont( 'ratchet-', '#{stylesheet_url("fonts-woff.css").first}', '#{stylesheet_url("fonts-woff2.css").first}' );
@@ -4,4 +4,4 @@
4
4
 
5
5
  / Render Kraken footer
6
6
  - else
7
- = render "pages/kraken/partials/footer"
7
+ = render "pages/partials/footer"
@@ -12,9 +12,9 @@ header role="banner"
12
12
 
13
13
  / Main site navigation
14
14
  nav.main-nav role="navigation"
15
- = yield :top_nav
15
+ .main-nav-left
16
+ = yield :top_nav
16
17
 
17
- - if content_for?(:app_nav)
18
-
19
- nav.app-nav role="navigation"
20
- = yield :app_nav
18
+ - if content_for?(:app_nav)
19
+ .main-nav-right
20
+ = yield :app_nav
@@ -91,9 +91,17 @@ svg#icons xmlns="http://www.w3.org/2000/svg" height="0" width="0" style="positio
91
91
  polygon points="5.8,64.9 38.3,84.7 38.3,50.2 5.8,30.6"
92
92
  polygon points="122.1,88.1 155.2,107.8 155.2,73.5 122.1,54"
93
93
 
94
+ /! Enterprise Logomark (viewbox="0 10 86 68")
95
+ symbol#compose-enterprise-logomark fill="currentColor"
96
+ path d="M80,36.517l0,19.971l-17.965,10.875l-13.456,-8.36l-12.787,7.503l-30.459,-18.418l0,-19.072l18.247,-10.965l13.011,7.751l12.588,-7.832c10.273,6.183 20.547,12.365 30.821,18.547Zm-43.39,-8.814l-13.027,-7.761l-16.626,9.992l0,17.239l28.847,17.444l12.799,-7.51l13.443,8.352l16.331,-9.886l0,-18.138l-29.184,-17.562c-4.195,2.61 -8.389,5.22 -12.583,7.83Z" style="fill-rule:nonzero;fill-opacity:0.5;"
97
+ g
98
+ path d="M49.306,52.474l12.121,7.245l0.418,-12.679l-12.26,-6.966l-0.279,12.4Zm-25.635,0.279l12.121,6.966l0,-12.679l-11.842,-6.966l-0.279,12.679Zm-13.096,-7.942l11.981,7.106l0.14,-12.539l-12.121,-7.245l0,12.678Z" style="fill-opacity:0.5;"
99
+ path d="M49.167,22.88l-12.539,7.802l-13.096,-7.802l-14.35,8.638l0,14.211l26.749,15.743l12.818,-7.523l13.375,7.941l13.932,-8.22l0,-14.768l-26.889,-16.022Zm-27.029,28.422l-11.285,-6.688l0,-11.564l11.285,6.688l0,11.564Zm-9.891,-19.645l11.145,-6.548l10.867,6.409l-11.006,6.687l-11.006,-6.548Zm23.127,27.586l-11.285,-6.687l0,-11.564l11.285,6.687l0,11.564Zm0.975,-13.236l-11.006,-6.548l11.146,-6.548l10.867,6.409l-11.007,6.687Zm1.812,-14.21l11.145,-6.549l10.867,6.409l-11.006,6.688l-11.006,-6.548Zm22.988,27.307l-11.285,-6.548l0,-11.704l11.285,6.688l0,11.564Zm0.975,-13.236l-11.146,-6.548l11.146,-6.548l10.867,6.409l-10.867,6.687Z" style="fill-rule:nonzero;"
100
+ g
101
+
94
102
  /! Icon Placeholder (viewBox="0 0 48 48")
95
103
  symbol id="icon-placeholder" fill="currentColor"
96
- path id="XMLID_1_" class="st0" d="M45,48H3c-1.6,0-3-1.3-3-3V3c0-1.6,1.4-3,3-3h42c1.7,0,3,1.4,3,3v42C48,46.7,46.7,48,45,48z"
104
+ path id="XMLID_1_" d="M45,48H3c-1.6,0-3-1.3-3-3V3c0-1.6,1.4-3,3-3h42c1.7,0,3,1.4,3,3v42C48,46.7,46.7,48,45,48z"
97
105
  /! Search Icon
98
106
  symbol#search-icon fill="currentColor" viewbox="0 0 38 38"
99
107
  path d="M26.7 25.1l-3.7-3.8c.7-1.1 1.2-2.4 1.2-3.8-.1-3.6-3-6.5-6.7-6.5-3.6 0-6.6 2.9-6.6 6.6s3 6.6 6.6 6.6c1.4 0 2.7-.5 3.8-1.2l3.7 3.7c.2.2.5.3.9.3.3 0 .6-.1.9-.3.3-.4.3-1.2-.1-1.6m-9.1-2.6c-2.7 0-4.9-2.2-4.9-4.9s2.2-4.9 4.9-4.9 4.9 2.2 4.9 4.9-2.2 4.9-4.9 4.9"
@@ -136,6 +144,7 @@ svg#icons xmlns="http://www.w3.org/2000/svg" height="0" width="0" style="positio
136
144
  symbol#index stroke="currentColor" fill="none" stroke-width=".75" stroke-linecap="round" viewBox="0 0 15 13"
137
145
  path d="M7.5 2.606c0-1.233 3.335-2.231 7.125-2.231v9.939c-3.79 0-7.125.828-7.125 2.061 0-1.233-3.335-2.061-7.125-2.061v-9.939c3.79 0 7.125.998 7.125 2.231zm0 0v9.769m-1.619-9.036c-1.043-.393-2.518-.677-4.211-.79m4.211 2.703c-1.043-.393-2.518-.677-4.211-.791m4.211 2.703c-1.043-.393-2.518-.677-4.211-.79m4.211 2.703c-1.043-.393-2.518-.677-4.211-.791m7.449-4.947c1.044-.393 2.518-.677 4.211-.79m-4.211 2.703c1.044-.393 2.518-.677 4.211-.791m-4.211 2.703c1.044-.393 2.518-.677 4.211-.79m-4.211 2.703c1.044-.393 2.518-.677 4.211-.791"
138
146
 
147
+ /! MongoDB Hexagon
139
148
  symbol#icon-mongodb viewBox="0 0 193.4 223.9"
140
149
  polygon fill="url(#emerald)" points="6.9,59.8 96.1,8.3 185.3,59.8 185.3,162.8 96.1,214.3 6.9,162.8 "
141
150
  / polygon fill="url(#emerald-darken)" points="96,113.9 6.8,62.4 6.8,165.4 96,216.9 185.1,165.4 185.1,62.4 "
@@ -144,6 +153,7 @@ svg#icons xmlns="http://www.w3.org/2000/svg" height="0" width="0" style="positio
144
153
  path id="XMLID_3_" d="M92.5,127.3V101l-10.6,26.3h-3.5L67.8,101v26.3h-8V89.7H71l9.1,22.7l9.1-22.7h11.3v37.6H92.5z"
145
154
  path id="XMLID_5_" d="M107.3,134.3l3.2-5.2c2.2,2.4,5.1,3.4,8.5,3.4c3.4,0,7.5-1.5,7.5-6.9v-2.8c-2.1,2.7-5.1,4.3-8.4,4.3c-6.8,0-12-4.8-12-13.9c0-8.9,5.1-13.9,12-13.9c3.3,0,6.2,1.4,8.4,4.2v-3.5h7.2v25.4c0,10.4-8,12.9-14.7,12.9C114.3,138.4,110.7,137.3,107.3,134.3z M126.5,117.7v-8.8c-1.2-1.8-3.8-3.1-6.1-3.1c-4.1,0-6.9,2.8-6.9,7.5c0,4.7,2.8,7.5,6.9,7.5C122.7,120.8,125.3,119.4,126.5,117.7z"
146
155
 
156
+ /! Elasticsearch Hexagon
147
157
  symbol id="icon-elasticsearch" viewBox="0 0 193.4 223.9"
148
158
  polygon fill="url(#earthrise)" points="6.9,59.8 96.1,8.3 185.3,59.8 185.3,162.8 96.1,214.3 6.9,162.8 "
149
159
  path fill="url(#white)" d="M96.1,216.6L4.9,163.9V58.7L96.1,6l91.2,52.6v105.3L96.1,216.6z M8.9,161.6l87.2,50.3l87.2-50.3V61L96.1,10.6L8.9,61V161.6z"
@@ -151,6 +161,7 @@ svg#icons xmlns="http://www.w3.org/2000/svg" height="0" width="0" style="positio
151
161
  path d="M70.5,127.3V89.7h26.6v7H78.5v8h18.2v7H78.5v8.5h18.6v7H70.5z"
152
162
  path d="M100.9,123.8l3.1-5c2,1.9,6,3.7,9.4,3.7c3.1,0,4.6-1.2,4.6-2.9c0-4.5-16.2-0.8-16.2-11.6c0-4.6,4-8.6,11.2-8.6c4.6,0,8.3,1.6,11,3.7l-2.9,4.9c-1.6-1.7-4.7-3.2-8.1-3.2c-2.6,0-4.3,1.2-4.3,2.7c0,4.1,16.1,0.7,16.1,11.7c0,5-4.2,8.7-11.8,8.7C108.3,128,103.7,126.4,100.9,123.8z"
153
163
 
164
+ /! RethinkDB Hexagon
154
165
  symbol id="icon-rethinkdb" viewBox="0 0 193.4 223.9"
155
166
  polygon fill="url(#lagoon)" points="6.9,59.8 96.1,8.3 185.3,59.8 185.3,162.8 96.1,214.3 6.9,162.8 "
156
167
  path fill="url(#white)" d="M96.1,216.6L4.9,163.9V58.7L96.1,6l91.2,52.6v105.3L96.1,216.6z M8.9,161.6l87.2,50.3l87.2-50.3V61L96.1,10.6L8.9,61V161.6z"
@@ -158,6 +169,7 @@ svg#icons xmlns="http://www.w3.org/2000/svg" height="0" width="0" style="positio
158
169
  path id="XMLID_3_" d="M94,127.3L86.6,114h-5.9v13.4h-8V89.7h17.6c7.8,0,12.6,5.1,12.6,12.1c0,6.7-4.2,10.2-8.2,11.2l8.5,14.3H94z M94.8,101.9c0-3.2-2.4-5.1-5.6-5.1h-8.4v10.2h8.4C92.4,106.9,94.8,105,94.8,101.9z"
159
170
  path id="XMLID_6_" d="M110.2,120.6v-14.2h-4.5v-6.3h4.5v-7.4h7.2v7.4h5.5v6.3h-5.5v12.3c0,1.7,0.9,3,2.5,3c1.1,0,2.1-0.4,2.5-0.8l1.5,5.4c-1.1,1-3,1.7-6,1.7C113,128,110.2,125.4,110.2,120.6z"
160
171
 
172
+ /! Redis Hexagon
161
173
  symbol id="icon-redis" viewBox="0 0 193.4 223.9"
162
174
  polygon fill="url(#sunset)" points="6.9,59.8 96.1,8.3 185.3,59.8 185.3,162.8 96.1,214.3 6.9,162.8 "
163
175
  path fill="url(#white)" d="M96.1,216.6L4.9,163.9V58.7L96.1,6l91.2,52.6v105.3L96.1,216.6z M8.9,161.6l87.2,50.3l87.2-50.3V61L96.1,10.6L8.9,61V161.6z"
@@ -165,6 +177,7 @@ svg#icons xmlns="http://www.w3.org/2000/svg" height="0" width="0" style="positio
165
177
  path id="XMLID_3_" d="M87.9,127.3L80.5,114h-5.9v13.4h-8V89.7h17.6c7.8,0,12.6,5.1,12.6,12.1c0,6.7-4.2,10.2-8.2,11.2l8.5,14.3H87.9z M88.6,101.9c0-3.2-2.4-5.1-5.6-5.1h-8.4v10.2H83C86.2,106.9,88.6,105,88.6,101.9z"
166
178
  path id="XMLID_6_" d="M119.7,127.3v-3.5c-2.1,2.7-5.1,4.2-8.4,4.2c-6.9,0-12.1-5.2-12.1-14.3c0-8.9,5.1-14.3,12.1-14.3c3.2,0,6.3,1.4,8.4,4.2V89.7h7.2v37.6H119.7z M119.7,118.5v-9.6c-1.2-1.8-3.8-3.1-6.2-3.1c-4.1,0-6.9,3.2-6.9,8c0,4.7,2.8,7.9,6.9,7.9C115.9,121.6,118.5,120.4,119.7,118.5z"
167
179
 
180
+ /! PostgreSQL Hexagon
168
181
  symbol id="icon-postgresql" viewBox="0 0 193.4 223.9"
169
182
  polygon fill="url(#pearlescent)" points="6.9,59.8 96.1,8.3 185.3,59.8 185.3,162.8 96.1,214.3 6.9,162.8 "
170
183
  path fill="url(#white)" d="M96.1,216.6L4.9,163.9V58.7L96.1,6l91.2,52.6v105.3L96.1,216.6z M8.9,161.6l87.2,50.3l87.2-50.3V61L96.1,10.6L8.9,61V161.6z"
@@ -172,7 +185,7 @@ svg#icons xmlns="http://www.w3.org/2000/svg" height="0" width="0" style="positio
172
185
  path d="M66.8,127.3V89.7h17.6c8.2,0,12.6,5.5,12.6,12.1c0,6.5-4.5,12.1-12.6,12.1h-9.6v13.4H66.8zM88.8,101.9c0-3.2-2.4-5.1-5.5-5.1h-8.5v10.2h8.5C86.5,106.9,88.8,105,88.8,101.9z"
173
186
  path id="XMLID_6_" d="M100.3,134.3l3.2-5.2c2.2,2.4,5.1,3.4,8.5,3.4s7.5-1.5,7.5-6.9v-2.8c-2.1,2.7-5.1,4.3-8.4,4.3c-6.8,0-12-4.8-12-13.9c0-8.9,5.1-13.9,12-13.9c3.3,0,6.2,1.4,8.4,4.2v-3.5h7.2v25.4c0,10.4-8,12.9-14.7,12.9C107.3,138.4,103.7,137.3,100.3,134.3z M119.5,117.7v-8.8c-1.2-1.8-3.8-3.1-6.1-3.1c-4.1,0-6.9,2.8-6.9,7.5c0,4.7,2.8,7.5,6.9,7.5C115.7,120.8,118.3,119.4,119.5,117.7z"
174
187
 
175
-
188
+ /! Etcd Hexagon
176
189
  symbol id="icon-etcd" viewBox="0 0 193.4 223.9"
177
190
  polygon fill="url(#berries)" points="6.9,59.8 96.1,8.3 185.3,59.8 185.3,162.8 96.1,214.3 6.9,162.8 "
178
191
  path fill="url(#white)" d="M96.1,216.6L4.9,163.9V58.7L96.1,6l91.2,52.6v105.3L96.1,216.6z M8.9,161.6l87.2,50.3l87.2-50.3V61L96.1,10.6L8.9,61V161.6z"
@@ -180,7 +193,7 @@ svg#icons xmlns="http://www.w3.org/2000/svg" height="0" width="0" style="positio
180
193
  path id="XMLID_3_" d="M74.4,127.3V89.7h26.6v7H82.4v8h18.2v7H82.4v8.5h18.6v7H74.4z"
181
194
  path id="XMLID_5_" d="M108.6,120.6v-14.2H104v-6.3h4.5v-7.4h7.2v7.4h5.5v6.3h-5.5v12.3c0,1.7,0.9,3,2.5,3c1.1,0,2.1-0.4,2.5-0.8l1.5,5.4c-1.1,1-3,1.7-6,1.7C111.3,128,108.6,125.4,108.6,120.6z"
182
195
 
183
-
196
+ /! RabbitMQ Hexagon
184
197
  symbol id="icon-rabbitmq" viewBox="0 0 193.4 223.9"
185
198
  polygon fill="url(#firestorm)" points="6.9,59.8 96.1,8.3 185.3,59.8 185.3,162.8 96.1,214.3 6.9,162.8 "
186
199
  path fill="url(#white)" d="M96.1,216.6L4.9,163.9V58.7L96.1,6l91.2,52.6v105.3L96.1,216.6z M8.9,161.6l87.2,50.3l87.2-50.3V61L96.1,10.6L8.9,61V161.6z"
@@ -188,7 +201,7 @@ svg#icons xmlns="http://www.w3.org/2000/svg" height="0" width="0" style="positio
188
201
  path id="XMLID_3_" d="M87,127.3L79.6,114h-5.9v13.4h-8V89.7h17.6c7.8,0,12.6,5.1,12.6,12.1c0,6.7-4.2,10.2-8.2,11.2l8.5,14.3H87z M87.8,101.9c0-3.2-2.4-5.1-5.6-5.1h-8.4v10.2h8.4C85.4,106.9,87.8,105,87.8,101.9z"
189
202
  path id="XMLID_6_" d="M101.8,127.3V89.7h7.2v13.9c2.1-2.8,5.2-4.2,8.4-4.2c6.9,0,12.1,5.4,12.1,14.3c0,9.1-5.2,14.3-12.1,14.3c-3.3,0-6.3-1.5-8.4-4.2v3.5H101.8z M115.2,121.6c4.2,0,6.9-3.2,6.9-7.9s-2.8-8-6.9-8c-2.3,0-5,1.4-6.1,3.2v9.6C110.2,120.4,112.8,121.6,115.2,121.6z"
190
203
 
191
-
204
+ /! ScyllaDB Hexagon
192
205
  symbol id="icon-scylladb" viewBox="0 0 193.4 223.9"
193
206
  polygon fill="url(#royalty)" points="6.9,59.8 96.1,8.3 185.3,59.8 185.3,162.8 96.1,214.3 6.9,162.8 "
194
207
  path fill="url(#white)" d="M96.1,216.6L4.9,163.9V58.7L96.1,6l91.2,52.6v105.3L96.1,216.6z M8.9,161.6l87.2,50.3l87.2-50.3V61L96.1,10.6L8.9,61V161.6z"
@@ -196,10 +209,182 @@ svg#icons xmlns="http://www.w3.org/2000/svg" height="0" width="0" style="positio
196
209
  path id="XMLID_3_" d="M66.9,122l4.3-6.1c2.7,2.8,6.8,5.1,12,5.1c4.4,0,6.5-2,6.5-4.2c0-6.7-21.7-2.1-21.7-16.2c0-6.3,5.4-11.4,14.3-11.4c6,0,10.9,1.8,14.7,5.2l-4.5,5.9c-3-2.8-7.1-4.1-10.9-4.1c-3.4,0-5.4,1.5-5.4,3.8c0,6,21.6,2,21.6,16c0,6.9-4.9,12.1-15.1,12.1C75.6,128,70.4,125.6,66.9,122z"
197
210
  path id="XMLID_5_" d="M101.3,113.7c0-8.3,6-14.3,14.4-14.3c5.6,0,9,2.4,10.8,4.9l-4.7,4.4c-1.3-1.9-3.3-2.9-5.8-2.9c-4.3,0-7.4,3.2-7.4,7.9c0,4.7,3,8,7.4,8c2.5,0,4.5-1.1,5.8-2.9l4.7,4.3c-1.8,2.5-5.2,5-10.8,5C107.4,128,101.3,122.1,101.3,113.7z"
198
211
 
199
-
212
+ /! MySQL Hexagon
200
213
  symbol id="icon-mysql" viewBox="0 0 193.4 223.9"
201
214
  polygon fill="url(#earthrise)" points="6.9,59.8 96.1,8.3 185.3,59.8 185.3,162.8 96.1,214.3 6.9,162.8 "
202
215
  path fill="url(#white)" d="M96.1,216.6L4.9,163.9V58.7L96.1,6l91.2,52.6v105.3L96.1,216.6z M8.9,161.6l87.2,50.3l87.2-50.3V61L96.1,10.6L8.9,61V161.6z"
203
216
  g fill="url(#white)"
204
217
  path d="M94.5,127.3V101l-10.6,26.3h-3.5L69.8,101v26.3h-8V89.7h11.2l9.1,22.7l9.1-22.7h11.3v37.6H94.5z"
205
218
  path d="M110,131.6c0.6,0.3,1.6,0.5,2.3,0.5c1.9,0,3.1-0.5,3.8-2l1-2.3L106,100.1h7.7l7.1,18.9l7.1-18.9h7.7l-12.8,31.7c-2,5.1-5.6,6.5-10.3,6.6c-0.8,0-2.7-0.2-3.6-0.4L110,131.6z"
219
+
220
+ /! JanusGraph Hexagon
221
+ symbol id="icon-janusgraph" viewBox="0 0 193.4 223.9"
222
+ polygon fill="url(#aurora)" points="6.9,59.8 96.1,8.3 185.3,59.8 185.3,162.8 96.1,214.3 6.9,162.8 "
223
+ path fill="url(#white)" d="M96.1,216.6L4.9,163.9V58.7L96.1,6l91.2,52.6v105.3L96.1,216.6z M8.9,161.6l87.2,50.3l87.2-50.3V61L96.1,10.6L8.9,61V161.6z"
224
+ g fill="url(#white)"
225
+ path id="XMLID_4_" d="M69.6,124.2l3.7-6.5c1.6,1.5,3.6,2.9,6.3,2.9c3.8,0,6.2-2.5,6.2-6.4V87.4h8.5v26.8c0,9.5-5.9,13.8-14.1,13.8
226
+ C76.3,128.1,72.5,127,69.6,124.2z"
227
+ path id="XMLID_6_" d="M100.3,134.3l3.2-5.2c2.2,2.4,5.1,3.4,8.5,3.4s7.5-1.5,7.5-6.9v-2.8c-2.1,2.7-5.1,4.3-8.4,4.3c-6.8,0-12-4.8-12-13.9c0-8.9,5.1-13.9,12-13.9c3.3,0,6.2,1.4,8.4,4.2v-3.5h7.2v25.4c0,10.4-8,12.9-14.7,12.9C107.3,138.4,103.7,137.3,100.3,134.3z M119.5,117.7v-8.8c-1.2-1.8-3.8-3.1-6.1-3.1c-4.1,0-6.9,2.8-6.9,7.5c0,4.7,2.8,7.5,6.9,7.5C115.7,120.8,118.3,119.4,119.5,117.7z"
228
+
229
+ /! AWS Icon
230
+ symbol id="aws" viewBox="0 0 580 218" fill="#ffffff"
231
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="76.2,217.5 42.5,206.2 42.5,157.5 76.2,167.5 "
232
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="85,167.5 118.7,157.5 118.6,206.2 85,217.5 85,167.5 "
233
+ path fill-rule="evenodd" clip-rule="evenodd" d="M463.3,217.4L463.3,217.4l-4,0c-0.5,0-1-0.2-1.4-0.5c-0.4-0.4-0.7-0.8-0.7-1.3
234
+ l0-40.1c0-1,1-1.9,2.1-1.9l4,0c1.1,0,2.1,0.9,2.1,1.8v40.1C465.4,216.6,464.4,217.4,463.3,217.4L463.3,217.4z"
235
+ path fill-rule="evenodd" clip-rule="evenodd" d="M225.5,174.4c0.8,0,1.5,0.3,1.8,0.8c0.3,0.4,0.3,0.8,0.2,1.1l-10.6,39.1
236
+ c-0.2,1-1.1,1.7-2,1.7h-3.5c-1,0-1.8-0.9-2-1.7l-7.4-26.1l-6.8,26.1c-0.2,1-1.1,1.7-2,1.7h-3.5c-1,0-1.8-0.8-2-1.7l-11-39.1
237
+ c-0.1-0.4,0-0.8,0.2-1.1c0.4-0.5,1.1-0.9,1.9-0.9l3.6,0c0.9,0,2.1,0.6,2.4,1.6l7.2,26.3l6.9-26.2c0.2-0.8,1-1.7,2-1.7h2.9
238
+ c1.1,0,1.8,0.8,2.1,1.7l7.4,26.4l7.5-26.5c0.3-1,1.4-1.6,2.4-1.6L225.5,174.4L225.5,174.4z"
239
+ path fill-rule="evenodd" clip-rule="evenodd" d="M344.1,194.6c-2.4-1.7-5.2-2.3-8.1-2.9l-5.5-1c-3.9-0.6-6.2-1.7-6.2-5.2
240
+ c0-3.7,3.8-5.1,7-5.2c3.9,0.1,6.9,1.9,8.4,5c0.3,0.7,1.1,1.2,1.9,1.2c0.1,0,0.3,0,0.4,0l3.4-0.8c0.6-0.1,1.1-0.5,1.4-1
241
+ c0.2-0.4,0.3-0.8,0.1-1.2c-2.1-6.1-7.4-9.3-15.5-9.3c-7.3,0-15.1,3.3-15.1,12.3c0,6.2,3.9,10.1,11.6,11.7l6.2,1.2
242
+ c3.4,0.6,6.8,1.8,6.8,5.4c0,5.4-6.2,5.9-8.1,6c-4.2-0.1-9-2-10.2-6c-0.2-0.9-1.3-1.5-2.3-1.3l-3.6,0.7c-0.5,0.1-1,0.5-1.3,0.9
243
+ c-0.2,0.4-0.3,0.8-0.2,1.2c1.9,6.6,8.3,10.6,17.1,10.7l0.2,0c7.9,0,16.4-3.4,16.4-12.9C348.8,200.3,347.1,196.8,344.1,194.6
244
+ L344.1,194.6z"
245
+ path fill-rule="evenodd" clip-rule="evenodd" d="M574.2,194.6c3,2.2,4.8,5.6,4.8,9.5c0,9.5-8.5,12.9-16.4,12.9l-0.2,0
246
+ c-8.9-0.1-15.3-4.1-17.1-10.7c-0.1-0.4,0-0.8,0.2-1.2c0.3-0.5,0.8-0.8,1.3-0.9l3.6-0.7c1-0.2,2.1,0.4,2.3,1.3
247
+ c1.2,4.3,6.3,5.9,10.2,6c1.9,0,8.1-0.6,8.1-6c0-3.6-3.5-4.8-6.8-5.4l-6.2-1.2c-7.7-1.6-11.6-5.5-11.6-11.7c0-9,7.8-12.3,15.1-12.3
248
+ c8.1,0,13.4,3.2,15.5,9.3c0.1,0.4,0.1,0.8-0.1,1.2c-0.3,0.5-0.8,0.9-1.4,1l-3.4,0.8c-0.1,0-0.3,0-0.4,0c-0.8,0-1.6-0.5-1.9-1.2
249
+ c-1.4-3.1-4.4-4.9-8.4-5c-1.1,0-7,0.4-7,5.2c0,3.5,2.3,4.5,6.2,5.2l5.5,1C568.9,192.3,571.8,192.9,574.2,194.6L574.2,194.6z"
250
+ path fill-rule="evenodd" clip-rule="evenodd" d="M487.6,217H487c-12.3,0-16.7-11.5-16.7-21.3c0-10.7,5.2-21.5,16.7-21.5l0.3,0
251
+ l0.3,0c8,0,13.9,5.6,15.2,14.1c0,1-0.8,1.8-1.9,1.9l-3.6,0c-1-0.1-1.8-0.9-1.9-1.8c-0.9-4.8-3.8-7.7-7.9-7.8
252
+ c-6.7,0.2-9.2,7.7-9.2,14.7c0,3.5,0.6,14.9,8.8,15.2c4.2-0.1,7-2.9,8.2-8.1c0.3-1,1.1-1.5,2.1-1.5l3.4,0c0.7,0,1.3,0.3,1.7,0.8
253
+ c0.3,0.3,0.4,0.8,0.4,1.2C501.2,211.6,495.4,217,487.6,217L487.6,217z"
254
+ path fill-rule="evenodd" clip-rule="evenodd" d="M399.1,175.7c1.1,0,2,0.8,2,1.8l0,3.9c2.4-4.4,5.9-6.8,10.1-6.8
255
+ c0.5,0,0.9,0,1.4,0.1c1,0.1,1.8,0.9,1.8,1.8v3.5c0,1-0.9,1.9-1.9,1.9c-4,0-7,2-9.1,6c-1.5,2.8-1.8,5.2-1.8,8.3l0,19
256
+ c0,1-1.1,1.8-2.1,1.8l-3.7,0c-1.1,0-2-0.8-2-1.8l0-37.7c0-1,0.9-1.8,2-1.8H399.1L399.1,175.7z"
257
+ path fill-rule="evenodd" clip-rule="evenodd" d="M438.8,216.9h-5.1c-1.1,0-1.7-0.9-2-1.7l-13.3-39.4c-0.1-0.4-0.1-0.8,0.2-1.1
258
+ c0.4-0.5,1.1-0.9,1.9-0.9l4.2,0c0.9,0,2.1,0.7,2.4,1.7l9.7,29.8l9.5-29.8c0.3-1,1.5-1.6,2.4-1.6l2.9,0c0.8,0,1.5,0.3,1.9,0.9
259
+ c0.3,0.4,0.3,0.8,0.2,1.1l-12.9,39.3C440.5,216.3,439.8,216.9,438.8,216.9L438.8,216.9z"
260
+ path fill-rule="evenodd" clip-rule="evenodd" d="M300.3,180.6c-2.7-4.2-7.3-6.8-12.1-6.8h-0.7c-4.2,0-7.5,1.7-10,5.3l0-16.5
261
+ c0-0.9-1-1.8-2-1.8h-3.7c-1,0-2,0.8-2,1.8v51.5c0,0.9,1,1.8,2,1.8l1.1,0c1,0,1.7-0.8,2-1.6l1.1-3.6c2.7,3.8,6.7,6,11,6h0.7
262
+ c11.3,0,16.3-11,16.3-21.9C304,189.4,302.6,184.2,300.3,180.6z M286.9,210.4c-2.8-0.1-5.7-1.8-7.3-4.3c-1.2-1.9-1.9-4.5-2.1-7.7v-7
263
+ c0.1-5.4,3.9-11.3,9.4-11.5c8.5,0.3,9,13.2,9,15.8C295.8,198.2,295.4,210.1,286.9,210.4z"
264
+ path fill-rule="evenodd" clip-rule="evenodd" d="M388.2,196.2c0.3-0.3,0.5-0.7,0.5-1.1c-0.1-10.1-4.7-20.9-17.5-20.9
265
+ c-12.7,0-18.4,11.2-18.4,21.6c0,13,7.2,21.4,18.3,21.4c7.9,0,14-4,16.6-11c0.1-0.4,0.1-0.8-0.1-1.2c-0.3-0.5-0.8-0.8-1.4-1l-3.5-0.7
266
+ c-0.8-0.1-2,0.3-2.4,1.2c-1.7,3.9-4.8,6.1-8.7,6.2c-3.8-0.1-7.2-2.4-8.8-5.7c-1.3-2.7-1.5-5.4-1.5-8.1l25.4,0
267
+ C387.2,196.9,387.8,196.6,388.2,196.2z M361.6,191.1c0.4-5.3,3.8-10.7,9.6-10.9c6.2,0.2,9,5.5,9.1,10.9H361.6z"
268
+ path fill-rule="evenodd" clip-rule="evenodd" d="M541.8,196.2c0.3-0.3,0.5-0.7,0.5-1.1c-0.1-10.1-4.7-20.9-17.5-20.9
269
+ c-12.7,0-18.4,11.2-18.4,21.6c0,13,7.2,21.4,18.3,21.4c7.9,0,14-4,16.6-11c0.1-0.4,0.1-0.8-0.1-1.2c-0.3-0.5-0.8-0.8-1.4-1l-3.5-0.7
270
+ c-0.8-0.1-2,0.3-2.4,1.2c-1.7,3.9-4.8,6.1-8.7,6.2c-3.8-0.1-7.2-2.4-8.8-5.7c-1.3-2.7-1.5-5.4-1.5-8.1l25.5,0
271
+ C540.8,196.9,541.4,196.6,541.8,196.2z M515.2,191.1c0.4-5.3,3.8-10.7,9.6-10.9c6.2,0.2,9,5.5,9.1,10.9H515.2z"
272
+ path fill-rule="evenodd" clip-rule="evenodd" d="M264,196.2c0.3-0.3,0.5-0.7,0.5-1.1c-0.1-10.1-4.7-20.9-17.5-20.9
273
+ c-12.7,0-18.4,11.2-18.4,21.6c0,13,7.2,21.4,18.3,21.4c7.9,0,14-4,16.6-11c0.1-0.4,0.1-0.8-0.1-1.2c-0.3-0.5-0.8-0.8-1.4-1l-3.5-0.7
274
+ c-0.9-0.1-2,0.4-2.4,1.2c-1.7,3.9-4.8,6.1-8.7,6.2c-3.8-0.1-7.2-2.3-8.8-5.7c-1.3-2.7-1.5-5.4-1.5-8.1l25.5,0
275
+ C263.1,196.8,263.6,196.6,264,196.2z M237.4,191c0.4-5.3,3.8-10.7,9.6-10.9c6.2,0.2,9,5.5,9.1,10.9H237.4z"
276
+ path fill-rule="evenodd" clip-rule="evenodd" d="M461.3,158.8c-2.7,0-4.9,2.2-4.9,4.9c0,2.7,2.2,4.9,4.9,4.9c2.7,0,4.9-2.2,4.9-4.9
277
+ C466.2,161,464,158.8,461.3,158.8z"
278
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="111.9,152.2 80.4,142.5 49.4,152.2 80.5,160.6 "
279
+ path fill-rule="evenodd" clip-rule="evenodd" d="M262.2,153.3h-12.4c-1.2-0.1-2.1-1-2.2-2.1l0-63.7c0-1.3,1.1-2.3,2.4-2.3l11.6,0
280
+ c1.2,0.1,2.2,1,2.3,2.1v8.3h0.2c3-8,8.7-11.8,16.3-11.8c7.8,0,12.6,3.7,16.1,11.8c3-8,9.8-11.8,17.1-11.8c5.2,0,10.9,2.1,14.4,7
281
+ c3.9,5.4,3.1,13.1,3.1,20l0,40.2c0,1.3-1.1,2.3-2.4,2.3h-12.4c-1.2-0.1-2.2-1.1-2.2-2.3v-33.8c0-2.7,0.2-9.4-0.3-11.9
282
+ c-0.9-4.3-3.7-5.5-7.3-5.5c-3,0-6.1,2-7.4,5.2c-1.3,3.2-1.2,8.6-1.2,12.2V151c0,1.3-1.1,2.3-2.4,2.3H283c-1.2-0.1-2.2-1.1-2.2-2.3
283
+ l0-33.8c0-7.1,1.2-17.5-7.6-17.5c-8.9,0-8.6,10.2-8.6,17.5l0,33.7C264.6,152.3,263.5,153.3,262.2,153.3L262.2,153.3z"
284
+ path fill-rule="evenodd" clip-rule="evenodd" d="M543.7,153.3h-12.4c-1.2-0.1-2.2-1.1-2.2-2.3l0-63.7c0.1-1.2,1.1-2.1,2.4-2.1
285
+ l11.5,0c1.1,0.1,2,0.8,2.2,1.8v9.7h0.2c3.5-8.7,8.3-12.9,16.9-12.9c5.6,0,11,2,14.5,7.5c3.2,5.1,3.2,13.7,3.2,19.8v40.1
286
+ c-0.1,1.1-1.1,2-2.4,2h-12.4c-1.1-0.1-2.1-0.9-2.2-2v-34.6c0-7,0.8-17.1-7.8-17.1c-3,0-5.8,2-7.2,5.1c-1.7,3.9-2,7.8-2,12.1V151
287
+ C546.1,152.3,545,153.3,543.7,153.3L543.7,153.3z"
288
+ path fill-rule="evenodd" clip-rule="evenodd" d="M410.9,96.5v-9.1c0-1.4,1.1-2.3,2.3-2.3l40.8,0c1.3,0,2.4,0.9,2.4,2.3v7.8
289
+ c0,1.3-1.1,3-3.1,5.7l-21.1,30.2c7.8-0.2,16.1,1,23.2,5c1.6,0.9,2,2.2,2.2,3.5v9.7c0,1.3-1.5,2.9-3,2.1c-12.5-6.6-29.2-7.3-43.1,0.1
290
+ c-1.4,0.8-2.9-0.8-2.9-2.1v-9.2c0-1.5,0-4,1.5-6.3l24.5-35.1l-21.3,0C411.9,98.8,410.9,97.9,410.9,96.5L410.9,96.5z"
291
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="42.5,96.2 76.2,86.2 76.1,135 42.5,146.2 42.5,96.2 "
292
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="33.7,96.2 0,86.2 0,135 33.7,146.2 33.7,96.2 "
293
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="118.7,146.2 85,135 85,86.2 118.7,96.2 "
294
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="127.5,96.2 161.2,86.2 161.1,135 127.5,146.2 127.5,96.2 "
295
+ path fill-rule="evenodd" clip-rule="evenodd" d="M400.5,141.6c-2.3-3.1-4.7-5.7-4.7-11.5v-19.3c0-8.2,0.6-15.7-5.4-21.3
296
+ c-4.8-4.6-12.7-6.2-18.7-6.2c-11.8,0-25,4.4-27.7,19c-0.3,1.5,0.8,2.4,1.9,2.6l12,1.3c1.1-0.1,1.9-1.2,2.2-2.3c1-5,5.2-7.5,10-7.5
297
+ c2.6,0,5.5,0.9,7,3.2c1.7,2.5,1.5,6,1.5,9v1.6c-7.2,0.8-16.6,1.3-23.3,4.3c-7.8,3.4-13.2,10.2-13.2,20.3c0,12.9,8.1,19.3,18.6,19.3
298
+ c8.8,0,13.6-2.1,20.4-9c2.3,3.3,3,4.8,7.1,8.3c0.9,0.5,2.1,0.4,2.9-0.3l0,0c2.5-2.2,7-6.1,9.5-8.2
299
+ C401.4,144.1,401.3,142.8,400.5,141.6z M376.1,136.1c-2,3.5-5.1,5.6-8.6,5.6c-4.8,0-7.5-3.6-7.5-9c0-10.6,9.5-12.5,18.4-12.5v2.7
300
+ C378.4,127.7,378.5,131.8,376.1,136.1z"
301
+ path fill-rule="evenodd" clip-rule="evenodd" d="M237.9,141.6c-2.3-3.1-4.7-5.7-4.7-11.5v-19.3c0-8.2,0.6-15.7-5.5-21.3
302
+ c-4.8-4.6-12.6-6.2-18.7-6.2c-11.8,0-25,4.4-27.7,19c-0.3,1.5,0.8,2.4,1.9,2.6l12,1.3c1.1-0.1,1.9-1.2,2.2-2.3c1-5,5.2-7.5,10-7.5
303
+ c2.5,0,5.5,0.9,7,3.2c1.7,2.5,1.5,6,1.5,9v1.6c-7.2,0.8-16.6,1.3-23.3,4.3c-7.8,3.4-13.2,10.2-13.2,20.3c0,12.9,8.1,19.3,18.6,19.3
304
+ c8.8,0,13.6-2.1,20.4-9c2.3,3.3,3,4.8,7.1,8.3c0.9,0.5,2.1,0.4,2.9-0.3l0,0c2.5-2.2,7-6.1,9.5-8.2
305
+ C238.9,144.1,238.7,142.8,237.9,141.6z M213.5,136.1c-2,3.5-5.1,5.6-8.6,5.6c-4.8,0-7.5-3.6-7.5-9c0-10.6,9.5-12.5,18.4-12.5v2.7
306
+ C215.8,127.7,215.9,131.8,213.5,136.1z"
307
+ path fill-rule="evenodd" clip-rule="evenodd" d="M491.4,83.9c-18,0-27.9,15.4-27.9,35.2c0,19.7,9.8,35.5,27.9,35.5
308
+ c17.4,0,28.4-15.4,28.4-34.8C519.8,99.7,509.8,83.9,491.4,83.9z M491.4,141.5c-9.7,0-9.6-16.6-9.6-24.4c0-7.8,0.6-20.2,9.7-20.2
309
+ c3.9,0,6.7,1.7,8.1,6.2c1.6,5.1,1.8,11.5,1.8,16.9C501.5,128.1,501,141.5,491.4,141.5z"
310
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="69.4,81 37.9,71.2 6.9,81 38,89.3 "
311
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="154.4,81 122.9,71.2 91.9,81 123,89.3 "
312
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="161.2,75 127.5,63.7 127.5,15 161.2,25 "
313
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="170,25 203.7,15 203.6,63.7 170,75 "
314
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="246.2,75 212.5,63.7 212.5,15 246.2,25 "
315
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="255,25 288.8,15 288.6,63.7 255,75 "
316
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="196.9,9.7 165.4,0 134.4,9.7 165.5,18.1 "
317
+ polygon fill-rule="evenodd" clip-rule="evenodd" points="281.9,9.7 250.4,0 219.4,9.7 250.5,18.1 "
318
+
319
+ /! GCP Icon
320
+ symbol id="gcp" viewBox="0 430 1000 140" fill="#ffffff"
321
+ path d="M101.2,467.5l15.8,27.5c0.3,0.5,0.5,0.9,0.6,1.5c0.3,1.1,0.3,2.2,0,3.2c-0.1,0.4-0.3,0.9-0.5,1.3
322
+ c-8.9,15.4-17.4,31.1-26.6,46.3c-0.2,0.3-0.5,0.7-0.7,0.9c-0.8,0.8-1.7,1.4-2.8,1.7c-0.4,0.1-0.9,0.2-1.4,0.2
323
+ c-5.6,0.1-11.1,0-16.7,0l10.6-18.5L98.4,499c0.1-0.2,0.1-0.2,0.2-0.5c0.1-0.3,0.1-0.7,0.1-1c0-0.2-0.1-0.3-0.1-0.5l-0.1-0.2
324
+ l-16.9-29.4C81.5,467.5,101.2,467.5,101.2,467.5z"
325
+ path d="M64,550.1H32.5c-0.5,0-1.1-0.1-1.6-0.2c-1.1-0.3-2.1-0.9-2.8-1.7c-0.3-0.3-0.5-0.6-0.7-0.9
326
+ c-9.2-15.3-18-30.9-26.7-46.6c-0.2-0.4-0.3-0.7-0.4-1.1c-0.3-1.1-0.3-2.2-0.1-3.3c0.1-0.5,0.3-1,0.6-1.5c2.7-4.8,5.4-9.6,8.2-14.3
327
+ L19.5,499l18.8,32.6c0.1,0.2,0.1,0.2,0.3,0.4c0.3,0.3,0.7,0.5,1.1,0.6c0.2,0.1,0.3,0,0.5,0.1H74L64,550.1z"
328
+ path d="M153.1,496.3c0.3-19.7,16.6-35.7,36.3-35.6c9.1-0.1,17.9,3.4,24.4,9.8l-7,6.8c-4.7-4.5-10.9-7-17.4-7
329
+ c0,0,0,0,0,0c-14,0-25.6,11.5-25.6,25.6c0,0.2,0,0.3,0,0.5c0,0.2,0,0.3,0,0.5c0,14,11.5,25.6,25.6,25.6c0,0,0,0,0,0
330
+ c6.7,0.3,13.3-2.3,18-7.1c3.1-3.4,5-7.7,5.3-12.3h-23.3V493H222c0.4,2,0.5,4,0.5,6.1c0.3,8.4-2.8,16.6-8.4,22.8
331
+ c-6.4,6.7-15.4,10.3-24.7,10C169.7,532,153.3,516,153.1,496.3C153.1,496.3,153.1,496.3,153.1,496.3z"
332
+ path d="M619.1,530.6h-7.7l0.2-0.1v-5.9h-0.5c-3,4.5-8.1,7.3-13.5,7.3c-11,0-16.3-7.4-16.3-17.9v-26.1h8v24.8
333
+ c0,8.7,4.3,11.9,10.5,11.9c6.6-0.6,11.6-6.4,11.2-13v-23.5h8L619.1,530.6L619.1,530.6z"
334
+ path d="M487.7,466.9c8.5,0,16.6,3.7,22.2,10.2l-5.6,5.4c-4.2-5.3-10.7-8.2-17.4-7.9c-0.2,0-0.3,0-0.5,0
335
+ c-13,0-23.7,10.7-23.7,23.7c0,0.4,0,0.8,0,1.2c0,0.3,0,0.6,0,1c0,13,10.7,23.7,23.7,23.7c0.1,0,0.3,0,0.4,0c7.3,0,14.3-3.2,19.1-8.7
336
+ l5.6,5.6c-6.2,7-15,11-24.3,11c-17.8,0-32.5-14.7-32.5-32.5v-0.1c0-0.2,0-0.4,0-0.6c0-17.4,14.3-31.8,31.8-31.8c0.2,0,0.4,0,0.6,0
337
+ C487.2,466.9,487.4,466.9,487.7,466.9L487.7,466.9L487.7,466.9z"
338
+ path d="M808.9,487.9h10.4v7.3h-10.4v21.7c0,4.8,2,7,5.7,7c1.3,0.1,2.5-0.2,3.7-0.7l2.8,6.9c-2,0.8-4.2,1.2-6.4,1.1
339
+ c-0.5,0.1-1,0.1-1.5,0.1c-6.8,0-12.3-5.6-12.3-12.3c0-0.5,0-0.9,0.1-1.4v-22.3h-7.5v-7.3h7.5v-13h8L808.9,487.9L808.9,487.9z"
340
+ rect x="377.4" y="463.1" width="10.1" height="67.4"
341
+ path d="M941.5,530.4h-8v-42.5h7.7v5.9h0.4c2.9-4.4,7.8-7.1,13-7.3c5.8-0.5,11.2,2.8,13.5,8.2c3.2-5.1,8.8-8.2,14.9-8.2
342
+ c10.4,0,15.2,7.4,15.2,17.9v26.1h-8v-24.9c0-8.7-3.4-11.8-9.5-11.8s-10.9,6.6-10.9,13v23.6h-8v-24.8c0-8.7-3.4-11.8-9.5-11.8
343
+ s-10.9,6.6-10.9,13L941.5,530.4L941.5,530.4z"
344
+ rect x="736.6" y="468.3" width="8" height="62.3"
345
+ path d="M910.8,530.5h-7.9v-42.6h7.7v7h0.3c2.3-4.8,7.1-7.9,12.3-8c2.1-0.1,4.1,0.3,6,1l-3,7.5
346
+ c-1.4-0.5-2.9-0.7-4.3-0.6c-6.2,0.3-11.1,5.4-11.1,11.6c0,0.3,0,0.6,0,0.9V530.5z"
347
+ rect x="517.7" y="468.3" width="8" height="62.3"
348
+ path d="M839.1,530.5h-8v-35.3h-8v-7.3h8v-5.7c0-0.1,0-0.3,0-0.4c0-7.7,6.3-14,14-14c0.4,0,0.8,0,1.2,0.1
349
+ c2.3-0.1,4.5,0.3,6.7,1.1l-2.7,6.9c-1.1-0.5-2.4-0.8-3.7-0.7c-0.2,0-0.3,0-0.5,0c-3.7,0-6.7,3-6.7,6.7c0,0.2,0,0.5,0,0.7v5.4h10.8
350
+ v7.3h-11.1C839.1,495.2,839.1,530.5,839.1,530.5z"
351
+ path d="M770.2,486.3c-7.2,0-13.8,4-17.1,10.4l7.3,3.1c1.9-3.8,5.8-6.2,10.1-6.2c5.9,0,10.9,4.7,11.2,10.6v1.2
352
+ c-3.6-1.8-7.6-2.7-11.6-2.6c-10,0-18.7,5.2-18.7,14.9c0.1,7.9,6.7,14.3,14.6,14.3c0.5,0,0.9,0,1.3-0.1c5.6,0.2,10.9-2.6,14-7.3h0.3
353
+ v5.9h7.7v-25.7C789,494.5,780.4,486.3,770.2,486.3z M781.7,512.2c-0.3,6.9-6.1,12.4-13,12.4c-4.2,0.5-8.1-2.6-8.7-6.8
354
+ c0-4.1,3.3-8.4,11.7-8.4c3.6-0.2,7.2,0.8,10.2,2.8H781.7z"
355
+ path d="M660.4,468.3v19.7l0.3,5.9h-0.3c-3.3-4.7-8.8-7.5-14.5-7.3c-11.7,0.8-20.7,11-20.2,22.7
356
+ c-0.5,11.7,8.5,21.9,20.2,22.7c5.8,0.2,11.2-2.6,14.5-7.3h0.3v5.9h7.7c0,0,0-62.3,0-62.3H660.4z M660.9,510.7
357
+ c0,7.5-6.2,13.7-13.7,13.7c-7.5,0-13.7-6.2-13.7-13.7c0-0.5,0-1,0.1-1.5c-0.1-0.5-0.1-1-0.1-1.5c0-7.5,6.2-13.7,13.7-13.7
358
+ c7.5,0,13.7,6.2,13.7,13.7c0,0.5,0,1-0.1,1.5C660.9,509.7,660.9,510.2,660.9,510.7z"
359
+ path d="M874.5,487.3c-12,0-21.9,9.9-21.9,21.9s9.9,21.9,21.9,21.9c12,0,21.9-9.9,21.9-21.9
360
+ C896.4,497.2,886.5,487.3,874.5,487.3z M888.5,510.3c0,7.7-6.3,14-14,14c-7.7,0-14-6.3-14-14c0-0.4,0-0.7,0-1.1c0-0.4,0-0.7,0-1.1
361
+ c0-7.7,6.3-14,14-14c7.7,0,14,6.3,14,14c0,0.4,0,0.7,0,1.1C888.5,509.6,888.5,509.9,888.5,510.3z"
362
+ path d="M553.6,487.3c-12,0-21.9,9.9-21.9,21.9s9.9,21.9,21.9,21.9c12,0,21.9-9.9,21.9-21.9
363
+ C575.5,497.2,565.6,487.3,553.6,487.3z M553.7,523.2c-7.7,0-14-6.3-14-14c0-0.4,0-0.7,0-1.1c0-7.7,6.3-14,14-14c7.7,0,14,6.3,14,14
364
+ c0,0.4,0,0.7,0,1.1h0.1C567.6,516.9,561.3,523.2,553.7,523.2z"
365
+ path d="M249.4,486c-0.1,0-0.3,0-0.4,0h0c-12.6,0-22.9,10.4-22.9,23c0,12.6,10.4,23,23,23c12.6,0,23-10.4,23-23
366
+ c0-0.1,0-0.2,0-0.4C272,496.2,261.8,486,249.4,486z M249,522.9L249,522.9c-7.2-0.2-13.1-6.1-13.1-13.3c0-0.2,0-0.4,0-0.7
367
+ c0-7.2,5.9-13,13-13c7.2,0,13,5.9,13,13c0,0.2,0,0.5,0,0.7C262.1,516.8,256.2,522.8,249,522.9z"
368
+ path d="M360.9,487.4v3.7h-0.3c-3.1-3.4-7.5-5.2-12.1-5.1c-12.2,0.5-22,10.7-22,22.9s9.8,22.4,22,22.9
369
+ c4.6,0.1,9-1.8,12.1-5.2h0.3v3.3c0,8.7-4.7,13.5-12.3,13.5c-5.1-0.2-9.6-3.4-11.4-8.1l-8.7,3.7c3.3,8.3,11.4,13.6,20.3,13.6
370
+ c11.8,0,21.7-7,21.7-23.9v-41.2H360.9z M361.6,509.8c0,6.9-5.4,12.6-12.3,13c-7.1-0.1-12.8-6-12.8-13c0-0.3,0-0.5,0-0.8
371
+ c0-0.2,0-0.5,0-0.7c0-7.1,5.7-13,12.8-13.3c6.9,0.4,12.3,6.1,12.3,13c0,0.3,0,0.7,0,1C361.6,509.3,361.6,509.6,361.6,509.8z"
372
+ path d="M299.7,486c-0.1,0-0.3,0-0.4,0c-12.6,0-22.9,10.4-22.9,23c0,12.6,10.4,23,23,23c12.6,0,23-10.4,23-23
373
+ c0-0.1,0-0.2,0-0.4C322.3,496.2,312.1,486,299.7,486z M299.3,522.9L299.3,522.9c-7.2-0.2-13.1-6.1-13.1-13.3c0-0.2,0-0.4,0-0.7
374
+ c0-7.2,5.9-13,13-13c7.2,0,13,5.9,13,13c0,0.2,0,0.5,0,0.7C312.3,516.8,306.5,522.8,299.3,522.9z"
375
+ path d="M76.5,467.5h-35c-5.8,10.1-11.7,20.3-17.5,30.4l17.5,30.4h35L94,497.9L76.5,467.5z M58.9,514.3
376
+ c-9,0-16.3-7.3-16.3-16.3s7.3-16.3,16.3-16.3c9,0,16.3,7.3,16.3,16.3S67.9,514.3,58.9,514.3z"
377
+ path d="M415.1,522.9c-4.8,0.2-9.2-2.6-11.1-7l30.7-12.7l-1-2.6c-2.8-8.5-10.7-14.4-19.7-14.6c0,0,0,0,0,0
378
+ c-11.9,0-21.7,9.8-21.7,21.7c0,0.4,0,0.8,0,1.2c0,0.2,0,0.3,0,0.5c0,12.3,10.1,22.4,22.4,22.4c0.1,0,0.2,0,0.4,0
379
+ c7.7,0,14.9-3.8,19.1-10.2l-7.8-5.2C424,520.5,419.7,522.9,415.1,522.9z M402.5,507.4c0-6.6,5.2-12.2,11.9-12.5
380
+ c3.6-0.4,7.1,1.6,8.7,4.9l-20.5,8.7C402.5,508.1,402.5,507.7,402.5,507.4z"
381
+ path d="M712.1,468.2c-0.2,0-0.4,0-0.6,0h-21.2v62.3h8.2c0,0,0-25.2,0-25.2h13c0.2,0,0.4,0,0.6,0
382
+ c10.2,0,18.7-8.3,18.9-18.5C730.8,476.6,722.4,468.2,712.1,468.2z M711.7,497.6h-13.6v-21.7h13.6c6,0,10.9,4.9,10.9,10.9
383
+ C722.6,492.7,717.7,497.6,711.7,497.6z"
384
+ path d="M40.2,463.2c-0.2,0-0.3,0-0.5,0.1c-0.4,0.1-0.8,0.3-1.1,0.6c-0.2,0.2-0.2,0.2-0.3,0.4l-16.9,29.3l-10-17.4
385
+ l15.8-27.4c0.2-0.3,0.4-0.7,0.7-1c0.8-0.9,1.8-1.5,2.9-1.8c0.5-0.1,1-0.2,1.6-0.2c17.7,0,35.4-0.3,53.1,0c0.5,0,0.9,0.1,1.4,0.2
386
+ c1.3,0.3,2.4,1.1,3.2,2.1c0.1,0.2,0.2,0.3,0.3,0.5c2.9,4.8,5.5,9.7,8.2,14.6C98.7,463.2,40.2,463.2,40.2,463.2z"
387
+
388
+ /! Softlayer Icon
389
+ symbol id="softlayer" viewBox="0 0 339 29" fill="#ffffff"
390
+ path d="M24.937,28.721l-17.757,0c-5.399,0 -7.18,-1.391 -7.18,-6.791l0.046,-1.997l5.854,-0.007l0,3.396l20.316,0l0,-6.568l-17.923,0c-5.399,0 -7.125,-1.391 -7.125,-6.791l0,-3.172c0,-5.4 1.726,-6.791 7.125,-6.791l16.31,0c5.121,0 7.125,1.336 7.125,6.289l-0.006,2.019l-5.895,-0.015l0,-3.284l-18.814,0l0,6.178l17.924,0c5.399,0 7.18,1.393 7.18,6.792l0,3.951c0,5.4 -1.781,6.791 -7.18,6.791Zm42.162,0l-21.151,0c-5.401,0 -7.125,-1.392 -7.125,-6.791l0,-15.139c0,-5.4 1.724,-6.791 7.125,-6.791l21.151,0c5.399,0 7.124,1.391 7.124,6.791l0,15.139c0,5.399 -1.725,6.791 -7.124,6.791Zm21.346,0l-6.68,0l0,-28.721l29.056,0l0,5.009l-22.376,0l0,7.571l12.078,0l0,5.232l-12.078,0l0,10.909Zm61.241,-23.6l-13.248,0l0,23.6l-6.68,0l0,-23.6l-13.191,0l0,-5.121l33.119,0l0,5.121Zm32.715,23.6l-28.222,0l0,-28.721l6.68,0l0,23.322l21.542,0l0,5.399Zm57.231,0l-6.734,0l0,-12.858l-14.917,-15.863l8.906,0l9.85,11.021l9.91,-11.021l7.848,0l-14.863,15.696l0,13.025Zm-13.763,-0.001l-7.513,0l-3.453,-6.289l-18.199,0l-3.341,6.289l-6.678,0l16.251,-28.72l6.46,0l16.473,28.72Zm75.84,0l-6.57,0l0,-28.72l24.604,0c4.396,0 6.457,1.558 6.457,5.566l0,6.734c0,4.008 -2.061,5.567 -6.457,5.567l-3.786,0l13.248,10.853l-9.574,0l-11.576,-10.853l-6.346,0l0,10.853Zm-13.173,-0.029l-29.408,0l0,-5.285l29.408,0l0,5.285Zm-220.992,-23.569l-22.042,0l0,18.2l22.042,0l0,-18.2Zm144.578,12.132l-6.179,-11.688l-6.402,11.688l12.581,0Zm76.414,-0.262l-29.408,0l0,-5.287l29.408,0l0,5.287Zm28.2,-12.038l-15.027,0l0,8.014l15.027,0c2.061,0 3.007,-0.388 3.007,-2.281l0,-3.451c0,-1.893 -0.946,-2.282 -3.007,-2.282Zm17.429,-4.952c2.166,0 3.891,1.761 3.891,3.961c0,2.236 -1.725,3.979 -3.908,3.979c-2.165,0 -3.926,-1.743 -3.926,-3.979c0,-2.2 1.761,-3.961 3.926,-3.961l0.017,0Zm0,0.617l-0.017,0c-1.743,0 -3.168,1.496 -3.168,3.344c0,1.884 1.425,3.362 3.185,3.362c1.761,0.018 3.168,-1.478 3.168,-3.345c0,-1.865 -1.407,-3.361 -3.168,-3.361Zm-0.757,5.65l-0.704,0l0,-4.418c0.37,-0.053 0.722,-0.106 1.25,-0.106c0.668,0 1.111,0.141 1.374,0.335c0.264,0.193 0.406,0.493 0.406,0.915c0,0.581 -0.39,0.932 -0.865,1.074l0,0.034c0.389,0.07 0.654,0.424 0.74,1.074c0.106,0.687 0.21,0.951 0.282,1.092l-0.74,0c-0.105,-0.141 -0.211,-0.545 -0.297,-1.127c-0.108,-0.563 -0.388,-0.774 -0.952,-0.774l-0.494,0l0,1.901Zm-44.872,-0.959l-29.408,0l0,-5.287l29.408,0l0,5.287Zm44.872,-1.488l0.512,0c0.579,0 1.074,-0.211 1.074,-0.756c0,-0.389 -0.284,-0.775 -1.074,-0.775c-0.229,0 -0.387,0.017 -0.512,0.035l0,1.496Z"
@@ -0,0 +1,29 @@
1
+ module RatchetDesign
2
+ module ConfigData
3
+ extend self
4
+ def read(*roots)
5
+ data ||= {}
6
+
7
+ data_files(*roots).each do |path|
8
+ name = File.basename(path, '.*')
9
+ case File.extname(path)
10
+ when '.json'
11
+ data[name] = JSON.parse(File.read(path))
12
+ when '.yml'
13
+ data[name] = YAML.load_file(path)
14
+ end
15
+ end
16
+
17
+ data
18
+ end
19
+
20
+ def data_files(*roots)
21
+ files = []
22
+ [roots].flatten.each do |root|
23
+ files.concat Dir[File.join(root, 'config/data/**/*.json')]
24
+ files.concat Dir[File.join(root, 'config/data/**/*.yml')]
25
+ end
26
+ files.flatten.compact.uniq
27
+ end
28
+ end
29
+ end
@@ -1,3 +1,3 @@
1
1
  module RatchetDesign
2
- VERSION = "0.1.19".freeze
2
+ VERSION = "0.1.20".freeze
3
3
  end
@@ -1,29 +1,46 @@
1
- require "cyborg"
2
- require "country_select"
3
- require "ratchet_design/version"
1
+ Gem.loaded_specs['ratchet_design'].dependencies.each do |d|
2
+ require d.name
3
+ end
4
+ require 'json'
5
+ require 'ratchet_design/version'
6
+ require 'ratchet_design/config_data'
4
7
 
5
8
  module RatchetDesign
6
9
  class Plugin < Cyborg::Plugin
7
10
  end
11
+
12
+ class Helper < BlockHelpers::Base
13
+ end
14
+
8
15
  end
9
16
 
10
17
  # Overridable site-level variables
11
18
  module Site
19
+ extend self
12
20
 
13
21
  # Default values
14
- class << self
15
- mattr_accessor :name
16
- self.name = "Site name"
22
+ mattr_accessor :name
23
+ self.name = "Site name"
17
24
 
18
- mattr_accessor :title
19
- self.title = "Site title"
20
- end
25
+ mattr_accessor :title
26
+ self.title = "Site title"
21
27
 
22
28
  # Map vars from app into engine
23
- def self.setup
29
+ def setup
24
30
  yield self
25
31
  end
26
32
 
33
+ def config_data
34
+ @config_data ||= RatchetDesign::ConfigData.read(Cyborg.plugin.root, Rails.root.to_s)
35
+ end
36
+
37
+ def deployment_data
38
+ config_data['deployments']
39
+ end
40
+
41
+ def deployment_icon
42
+ @deployment_icon ||= Esvg.find_symbol('icons/deployment')
43
+ end
27
44
  end
28
45
 
29
46
  Cyborg.register(RatchetDesign::Plugin, {