nexmo-oas-renderer 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (158) hide show
  1. checksums.yaml +7 -0
  2. data/.env.example +1 -0
  3. data/.gitignore +5 -0
  4. data/CHANGELOG.md +2 -0
  5. data/CONTRIBUTING.md +46 -0
  6. data/Gemfile +4 -0
  7. data/Gemfile.lock +183 -0
  8. data/LICENSE.txt +21 -0
  9. data/README.md +73 -0
  10. data/Rakefile +2 -0
  11. data/bin/console +14 -0
  12. data/bin/setup +8 -0
  13. data/exe/nexmo-oas-renderer +5 -0
  14. data/lib/nexmo/oas/engine.rb +9 -0
  15. data/lib/nexmo/oas/renderer.rb +13 -0
  16. data/lib/nexmo/oas/renderer/app.rb +116 -0
  17. data/lib/nexmo/oas/renderer/config.ru +7 -0
  18. data/lib/nexmo/oas/renderer/config/code_languages.yml +138 -0
  19. data/lib/nexmo/oas/renderer/config/dynamic_content.yml +1 -0
  20. data/lib/nexmo/oas/renderer/config/redirects.yml +8 -0
  21. data/lib/nexmo/oas/renderer/constraints/open_api.rb +76 -0
  22. data/lib/nexmo/oas/renderer/constraints/redirector.rb +17 -0
  23. data/lib/nexmo/oas/renderer/decorators/response_parser_decorator.rb +55 -0
  24. data/lib/nexmo/oas/renderer/filters/anchor.rb +17 -0
  25. data/lib/nexmo/oas/renderer/filters/audio.rb +21 -0
  26. data/lib/nexmo/oas/renderer/filters/block_escape.rb +24 -0
  27. data/lib/nexmo/oas/renderer/filters/break.rb +13 -0
  28. data/lib/nexmo/oas/renderer/filters/code.rb +64 -0
  29. data/lib/nexmo/oas/renderer/filters/code_snippet.rb +194 -0
  30. data/lib/nexmo/oas/renderer/filters/code_snippet_list.rb +33 -0
  31. data/lib/nexmo/oas/renderer/filters/code_snippets.rb +158 -0
  32. data/lib/nexmo/oas/renderer/filters/collapsible.rb +27 -0
  33. data/lib/nexmo/oas/renderer/filters/columns.rb +50 -0
  34. data/lib/nexmo/oas/renderer/filters/concept_list.rb +33 -0
  35. data/lib/nexmo/oas/renderer/filters/dynamic_content.rb +30 -0
  36. data/lib/nexmo/oas/renderer/filters/external_link.rb +32 -0
  37. data/lib/nexmo/oas/renderer/filters/frontmatter.rb +14 -0
  38. data/lib/nexmo/oas/renderer/filters/heading.rb +61 -0
  39. data/lib/nexmo/oas/renderer/filters/icon.rb +22 -0
  40. data/lib/nexmo/oas/renderer/filters/indent.rb +20 -0
  41. data/lib/nexmo/oas/renderer/filters/inline_escape.rb +17 -0
  42. data/lib/nexmo/oas/renderer/filters/js_sequence_diagram.rb +21 -0
  43. data/lib/nexmo/oas/renderer/filters/label.rb +32 -0
  44. data/lib/nexmo/oas/renderer/filters/language.rb +15 -0
  45. data/lib/nexmo/oas/renderer/filters/markdown.rb +85 -0
  46. data/lib/nexmo/oas/renderer/filters/modal.rb +41 -0
  47. data/lib/nexmo/oas/renderer/filters/partial.rb +28 -0
  48. data/lib/nexmo/oas/renderer/filters/php_inliner.rb +15 -0
  49. data/lib/nexmo/oas/renderer/filters/screenshot.rb +26 -0
  50. data/lib/nexmo/oas/renderer/filters/tab.rb +250 -0
  51. data/lib/nexmo/oas/renderer/filters/techio.rb +24 -0
  52. data/lib/nexmo/oas/renderer/filters/tooltip.rb +22 -0
  53. data/lib/nexmo/oas/renderer/filters/tutorial_link.rb +27 -0
  54. data/lib/nexmo/oas/renderer/filters/tutorials.rb +28 -0
  55. data/lib/nexmo/oas/renderer/filters/unfreeze.rb +20 -0
  56. data/lib/nexmo/oas/renderer/filters/user_personalization.rb +43 -0
  57. data/lib/nexmo/oas/renderer/helpers/navigation.rb +66 -0
  58. data/lib/nexmo/oas/renderer/helpers/render.rb +24 -0
  59. data/lib/nexmo/oas/renderer/helpers/summary.rb +30 -0
  60. data/lib/nexmo/oas/renderer/helpers/url.rb +17 -0
  61. data/lib/nexmo/oas/renderer/lib/core_ext/string.rb +14 -0
  62. data/lib/nexmo/oas/renderer/lib/redcarpet.rb +14 -0
  63. data/lib/nexmo/oas/renderer/models/code_snippet.rb +75 -0
  64. data/lib/nexmo/oas/renderer/models/tutorial.rb +83 -0
  65. data/lib/nexmo/oas/renderer/pipelines/markdown_pipeline.rb +52 -0
  66. data/lib/nexmo/oas/renderer/presenters/api_specification.rb +42 -0
  67. data/lib/nexmo/oas/renderer/presenters/groups.rb +35 -0
  68. data/lib/nexmo/oas/renderer/presenters/navigation.rb +24 -0
  69. data/lib/nexmo/oas/renderer/presenters/open_api_specification.rb +68 -0
  70. data/lib/nexmo/oas/renderer/presenters/versions.rb +40 -0
  71. data/lib/nexmo/oas/renderer/public/assets/fonts/Lato-Black.woff +0 -0
  72. data/lib/nexmo/oas/renderer/public/assets/fonts/Lato-Black.woff2 +0 -0
  73. data/lib/nexmo/oas/renderer/public/assets/fonts/Lato-Heavy.woff +0 -0
  74. data/lib/nexmo/oas/renderer/public/assets/fonts/Lato-Heavy.woff2 +0 -0
  75. data/lib/nexmo/oas/renderer/public/assets/fonts/Lato-Regular.woff +0 -0
  76. data/lib/nexmo/oas/renderer/public/assets/fonts/Lato-Regular.woff2 +0 -0
  77. data/lib/nexmo/oas/renderer/public/assets/fonts/Lato-Semibold.woff +0 -0
  78. data/lib/nexmo/oas/renderer/public/assets/fonts/Lato-Semibold.woff2 +0 -0
  79. data/lib/nexmo/oas/renderer/public/assets/images/brands/android.svg +1 -0
  80. data/lib/nexmo/oas/renderer/public/assets/images/brands/curl.svg +1 -0
  81. data/lib/nexmo/oas/renderer/public/assets/images/brands/dotnet.svg +1 -0
  82. data/lib/nexmo/oas/renderer/public/assets/images/brands/ios.svg +1 -0
  83. data/lib/nexmo/oas/renderer/public/assets/images/brands/java.svg +1 -0
  84. data/lib/nexmo/oas/renderer/public/assets/images/brands/javascript.svg +1 -0
  85. data/lib/nexmo/oas/renderer/public/assets/images/brands/node.svg +1 -0
  86. data/lib/nexmo/oas/renderer/public/assets/images/brands/php.svg +1 -0
  87. data/lib/nexmo/oas/renderer/public/assets/images/brands/python.svg +11 -0
  88. data/lib/nexmo/oas/renderer/public/assets/images/brands/ruby.svg +1 -0
  89. data/lib/nexmo/oas/renderer/public/assets/images/lost.svg +37 -0
  90. data/lib/nexmo/oas/renderer/public/assets/javascripts/components/format.js +42 -0
  91. data/lib/nexmo/oas/renderer/public/assets/javascripts/volta.accordion.js +249 -0
  92. data/lib/nexmo/oas/renderer/public/assets/javascripts/volta.core.js +230 -0
  93. data/lib/nexmo/oas/renderer/public/assets/javascripts/volta.modal.js +300 -0
  94. data/lib/nexmo/oas/renderer/public/assets/javascripts/volta.tabs.js +139 -0
  95. data/lib/nexmo/oas/renderer/public/assets/stylesheets/api.css +95 -0
  96. data/lib/nexmo/oas/renderer/public/assets/stylesheets/buttons.css +80 -0
  97. data/lib/nexmo/oas/renderer/public/assets/stylesheets/core.css +79 -0
  98. data/lib/nexmo/oas/renderer/public/assets/stylesheets/mediaqueries.css +2 -0
  99. data/lib/nexmo/oas/renderer/public/assets/stylesheets/mediaqueries.css.map +7 -0
  100. data/lib/nexmo/oas/renderer/public/assets/stylesheets/navigation.css +79 -0
  101. data/lib/nexmo/oas/renderer/public/assets/stylesheets/nexmo.css +68 -0
  102. data/lib/nexmo/oas/renderer/public/assets/stylesheets/sass/api.scss +147 -0
  103. data/lib/nexmo/oas/renderer/public/assets/stylesheets/sass/core.scss +133 -0
  104. data/lib/nexmo/oas/renderer/public/assets/stylesheets/sass/mediaqueries.scss +48 -0
  105. data/lib/nexmo/oas/renderer/public/assets/stylesheets/sass/navigation.scss +106 -0
  106. data/lib/nexmo/oas/renderer/public/assets/stylesheets/sass/nexmo.scss +61 -0
  107. data/lib/nexmo/oas/renderer/public/assets/stylesheets/sass/style.scss +10 -0
  108. data/lib/nexmo/oas/renderer/public/assets/stylesheets/sass/syntax.scss +63 -0
  109. data/lib/nexmo/oas/renderer/public/assets/stylesheets/sass/typography.scss +248 -0
  110. data/lib/nexmo/oas/renderer/public/assets/stylesheets/sass/variables.scss +91 -0
  111. data/lib/nexmo/oas/renderer/public/assets/stylesheets/sass/volta-templates.scss +119 -0
  112. data/lib/nexmo/oas/renderer/public/assets/stylesheets/style.css +2 -0
  113. data/lib/nexmo/oas/renderer/public/assets/stylesheets/style.css.map +7 -0
  114. data/lib/nexmo/oas/renderer/public/assets/stylesheets/syntax.css +79 -0
  115. data/lib/nexmo/oas/renderer/public/assets/stylesheets/typography.css +86 -0
  116. data/lib/nexmo/oas/renderer/public/assets/stylesheets/variables.css +2 -0
  117. data/lib/nexmo/oas/renderer/public/assets/stylesheets/variables.css.map +7 -0
  118. data/lib/nexmo/oas/renderer/public/assets/stylesheets/volta-templates.css +2 -0
  119. data/lib/nexmo/oas/renderer/public/assets/stylesheets/volta-templates.css.map +7 -0
  120. data/lib/nexmo/oas/renderer/public/assets/stylesheets/volta.min.css +1 -0
  121. data/lib/nexmo/oas/renderer/public/assets/symbol/volta-icons.svg +1 -0
  122. data/lib/nexmo/oas/renderer/public/favicon.ico +0 -0
  123. data/lib/nexmo/oas/renderer/services/code_language_api.rb +98 -0
  124. data/lib/nexmo/oas/renderer/services/oas_parser.rb +21 -0
  125. data/lib/nexmo/oas/renderer/services/open_api_definition_resolver.rb +33 -0
  126. data/lib/nexmo/oas/renderer/version.rb +7 -0
  127. data/lib/nexmo/oas/renderer/views/api/show.erb +1 -0
  128. data/lib/nexmo/oas/renderer/views/code_snippets/_application_messages_dispatch.html.erb +9 -0
  129. data/lib/nexmo/oas/renderer/views/code_snippets/_application_rtc.html.erb +41 -0
  130. data/lib/nexmo/oas/renderer/views/code_snippets/_application_voice.html.erb +24 -0
  131. data/lib/nexmo/oas/renderer/views/code_snippets/_code_only.html.erb +6 -0
  132. data/lib/nexmo/oas/renderer/views/code_snippets/_configure_client.html.erb +20 -0
  133. data/lib/nexmo/oas/renderer/views/code_snippets/_dependencies.html.erb +11 -0
  134. data/lib/nexmo/oas/renderer/views/code_snippets/_write_code.html.erb +13 -0
  135. data/lib/nexmo/oas/renderer/views/code_snippets/list/plain.html.erb +10 -0
  136. data/lib/nexmo/oas/renderer/views/concepts/list/plain.html.erb +5 -0
  137. data/lib/nexmo/oas/renderer/views/layouts/_head.erb +4 -0
  138. data/lib/nexmo/oas/renderer/views/layouts/_javascripts.erb +9 -0
  139. data/lib/nexmo/oas/renderer/views/layouts/api.erb +23 -0
  140. data/lib/nexmo/oas/renderer/views/layouts/open_api.erb +10 -0
  141. data/lib/nexmo/oas/renderer/views/open_api/_callback.erb +5 -0
  142. data/lib/nexmo/oas/renderer/views/open_api/_callback_endpoint.erb +48 -0
  143. data/lib/nexmo/oas/renderer/views/open_api/_code_examples.erb +16 -0
  144. data/lib/nexmo/oas/renderer/views/open_api/_endpoint.erb +156 -0
  145. data/lib/nexmo/oas/renderer/views/open_api/_model.erb +38 -0
  146. data/lib/nexmo/oas/renderer/views/open_api/_navigation.erb +80 -0
  147. data/lib/nexmo/oas/renderer/views/open_api/_parameter_groups.erb +50 -0
  148. data/lib/nexmo/oas/renderer/views/open_api/_parameters.erb +165 -0
  149. data/lib/nexmo/oas/renderer/views/open_api/_response_description_parameters.erb +61 -0
  150. data/lib/nexmo/oas/renderer/views/open_api/_response_descriptions.erb +41 -0
  151. data/lib/nexmo/oas/renderer/views/open_api/show.erb +104 -0
  152. data/lib/nexmo/oas/renderer/views/static/404.erb +6 -0
  153. data/lib/nexmo/oas/renderer/views/tutorials/_index.html.erb +32 -0
  154. data/lib/nexmo/oas/renderer/views/tutorials/index.html.erb +7 -0
  155. data/lib/nexmo/oas/renderer/views/tutorials/list/plain.html.erb +5 -0
  156. data/lib/nexmo/oas/renderer/views/tutorials/show.html.erb +8 -0
  157. data/nexmo-oas-renderer.gemspec +49 -0
  158. metadata +399 -0
@@ -0,0 +1,61 @@
1
+ $blue-light: $blue;
2
+ $pink: #E6547B;
3
+ $peach: #F88175;
4
+ $ice: #f9fbfd;
5
+ $mint: #E4EEF3;
6
+ $atom: #282c34;
7
+
8
+ $gray: #A1A1A1;
9
+ $gray-light: lighten($gray, 25%);
10
+ $stone-light: #93B6C7;
11
+ $stone: #224E66;
12
+ $stone-dark: #193c56;
13
+ $gray-dark: #252A2D;
14
+
15
+ $sms: #40569F;
16
+ $sms-light: #EFF3FE;
17
+ $number-insight: #57AF7B;
18
+ $number-insight-light: #F3FFF8;
19
+ $voice: #E7883C;
20
+ $voice-light: #FDF7F1;
21
+ $chat: #CA579C;
22
+ $verify: #7C578D;
23
+ $verify-light: #FCF8FF;
24
+ $account: #D65E7C;
25
+ $account-light: #FDF3F8;
26
+
27
+ $primary: $pink;
28
+ $positive: $green;
29
+ $negative: $red;
30
+ $warning: $orange;
31
+ $background: $ice;
32
+ $text: $stone;
33
+ $text-subtle: desaturate(lighten($text, 15%), 20%);
34
+ $code-background: $atom;
35
+
36
+ $callback: $orange;
37
+ $webhook: $orange;
38
+
39
+ $spacing: 20px;
40
+ $radius: 3px;
41
+ $radius-top: $radius $radius 0 0;
42
+ $radius-bottom: 0 0 $radius $radius;
43
+ $shadow-soft: 1px 0 8px rgba(44, 45, 48, 0.2);
44
+ $shadow: 0 2px 14px 0 rgba(0,0,0,0.12);
45
+ $shadow-hard: 0 1px 8px 0 rgba(0,0,0,0.30);
46
+
47
+ $border-color: darken($mint, 5%);
48
+ $border-color-ligher: $mint;
49
+ $border: 1px solid $border-color;
50
+
51
+ $golden-ratio: 1.618;
52
+
53
+ $font-family: 'Lato', sans-serif;
54
+
55
+ .Vlt-sidenav {
56
+ display: inline-flex; // Temporary
57
+ }
58
+
59
+ body {
60
+ background: $grey-lighter;
61
+ }
@@ -0,0 +1,10 @@
1
+ @import "./variables";
2
+ @import "./nexmo";
3
+ @import "./mediaqueries";
4
+
5
+ @import "./api";
6
+ @import "./core";
7
+ @import "./navigation";
8
+ @import "./syntax";
9
+ @import "./typography";
10
+ @import "./volta-templates";
@@ -0,0 +1,63 @@
1
+ .highlight .c { color: $grey-dark } /* Comment */
2
+ .highlight .err { color: $red-lighter; background-color: rgba($red-light, 0.7) } /* Error */
3
+ .highlight .k { color: $blue-light } /* Keyword */
4
+ .highlight .l { color: $purple-light } /* Literal */
5
+ .highlight .n { color: $grey } /* Name */
6
+ .highlight .o { color: $red-light } /* Operator */
7
+ .highlight .p { color: $grey } /* Punctuation */
8
+ .highlight .cm { color: $grey-dark } /* Comment.Multiline */
9
+ .highlight .cp { color: $grey-dark } /* Comment.Preproc */
10
+ .highlight .c1 { color: $grey-dark } /* Comment.Single */
11
+ .highlight .cs { color: $grey-dark } /* Comment.Special */
12
+ .highlight .ge { font-style: italic } /* Generic.Emph */
13
+ .highlight .gs { font-weight: bold } /* Generic.Strong */
14
+ .highlight .kc { color: $blue-light } /* Keyword.Constant */
15
+ .highlight .kd { color: $blue-light } /* Keyword.Declaration */
16
+ .highlight .kn { color: $red-light } /* Keyword.Namespace */
17
+ .highlight .kp { color: $blue-light } /* Keyword.Pseudo */
18
+ .highlight .kr { color: $blue-light } /* Keyword.Reserved */
19
+ .highlight .kt { color: $blue-light } /* Keyword.Type */
20
+ .highlight .ld { color: $yellow } /* Literal.Date */
21
+ .highlight .m { color: $purple-light } /* Literal.Number */
22
+ .highlight .s { color: $yellow } /* Literal.String */
23
+ .highlight .na { color: $green-light } /* Name.Attribute */
24
+ .highlight .nb { color: $grey } /* Name.Builtin */
25
+ .highlight .nc { color: $green-light } /* Name.Class */
26
+ .highlight .no { color: $blue-light } /* Name.Constant */
27
+ .highlight .nd { color: $green-light } /* Name.Decorator */
28
+ .highlight .ni { color: $grey } /* Name.Entity */
29
+ .highlight .ne { color: $green-light } /* Name.Exception */
30
+ .highlight .nf { color: $green-light } /* Name.Function */
31
+ .highlight .nl { color: $grey } /* Name.Label */
32
+ .highlight .nn { color: $grey } /* Name.Namespace */
33
+ .highlight .nx { color: $green-light } /* Name.Other */
34
+ .highlight .py { color: $grey } /* Name.Property */
35
+ .highlight .nt { color: $red-light } /* Name.Tag */
36
+ .highlight .nv { color: $grey } /* Name.Variable */
37
+ .highlight .ow { color: $red-light } /* Operator.Word */
38
+ .highlight .w { color: $grey } /* Text.Whitespace */
39
+ .highlight .mf { color: $purple-light } /* Literal.Number.Float */
40
+ .highlight .mh { color: $purple-light } /* Literal.Number.Hex */
41
+ .highlight .mi { color: $purple-light } /* Literal.Number.Integer */
42
+ .highlight .mo { color: $purple-light } /* Literal.Number.Oct */
43
+ .highlight .sb { color: $yellow } /* Literal.String.Backtick */
44
+ .highlight .sc { color: $yellow } /* Literal.String.Char */
45
+ .highlight .sd { color: $yellow } /* Literal.String.Doc */
46
+ .highlight .s2 { color: $yellow } /* Literal.String.Double */
47
+ .highlight .se { color: $purple-light } /* Literal.String.Escape */
48
+ .highlight .sh { color: $yellow } /* Literal.String.Heredoc */
49
+ .highlight .si { color: $orange-light } /* Literal.String.Interpol */
50
+ .highlight .sx { color: $yellow } /* Literal.String.Other */
51
+ .highlight .sr { color: $yellow } /* Literal.String.Regex */
52
+ .highlight .s1 { color: $yellow } /* Literal.String.Single */
53
+ .highlight .ss { color: $yellow } /* Literal.String.Symbol */
54
+ .highlight .bp { color: $grey } /* Name.Builtin.Pseudo */
55
+ .highlight .vc { color: $grey } /* Name.Variable.Class */
56
+ .highlight .vg { color: $grey } /* Name.Variable.Global */
57
+ .highlight .vi { color: $grey } /* Name.Variable.Instance */
58
+ .highlight .il { color: $purple-light } /* Literal.Number.Integer.Long */
59
+
60
+ .highlight .gh { } /* Generic Heading & Diff Header */
61
+ .highlight .gu { color: $grey-dark; } /* Generic.Subheading & Diff Unified/Comment? */
62
+ .highlight .gd { color: $red-light; } /* Generic.Deleted & Diff Deleted */
63
+ .highlight .gi { color: $green-light; } /* Generic.Inserted & Diff Inserted */
@@ -0,0 +1,248 @@
1
+ ul, ol, p, h1, h2, h3, h4, h5, h6, table {
2
+ pre code {
3
+ display: inline;
4
+ border: none;
5
+ color: inherit;
6
+ background: none;
7
+ padding: 0;
8
+ margin: 0;
9
+ border-radius: none;
10
+ }
11
+ }
12
+
13
+ a {
14
+ nav &, h1 & {
15
+ border-bottom: none;
16
+ }
17
+ }
18
+
19
+ .center {
20
+ text-align: center;
21
+ }
22
+
23
+ .left {
24
+ text-align: left;
25
+ }
26
+
27
+ .right {
28
+ text-align: right;
29
+ }
30
+
31
+ .indent {
32
+ margin-left: $spacing * 1.5;
33
+ }
34
+
35
+ pre.highlight {
36
+ background: $black;
37
+ -webkit-font-smoothing: antialiased;
38
+ padding: $spacing;
39
+ color: $white;
40
+ margin-bottom: $spacing;
41
+ line-height: 1.35;
42
+ overflow: auto;
43
+ position: relative;
44
+ border-radius: 4px;
45
+
46
+ code {
47
+ color: $grey-light;
48
+ }
49
+ }
50
+
51
+ pre {
52
+ font-family: Consolas, monospace;
53
+ font-size: 16px;
54
+ }
55
+
56
+ .gutter {
57
+ color: #5f697c;
58
+ text-align: right;
59
+ padding-right: 5px;
60
+ user-select: none;
61
+ }
62
+
63
+ .active {
64
+ color: $blue-dark;
65
+ }
66
+
67
+ .Nxd-article {
68
+
69
+ li ul, li ol {
70
+ margin-top: 5px;
71
+ }
72
+
73
+ ul {
74
+ margin-bottom: 15px;
75
+ }
76
+
77
+ ul li {
78
+ font-size: 1em;
79
+ margin-bottom: 5px;
80
+ }
81
+
82
+ .tight {
83
+ margin: 0;
84
+ }
85
+ }
86
+
87
+ .tight {
88
+ margin: 0;
89
+ }
90
+
91
+ .color-text {
92
+ color: $text;
93
+ }
94
+
95
+ .color--warn {
96
+ color: $orange;
97
+ }
98
+
99
+ .color--error {
100
+ color: $red;
101
+ }
102
+
103
+ .color--success {
104
+ color: $green;
105
+ }
106
+
107
+ .meta {
108
+ display: block;
109
+ color: mix($stone, $stone-light);
110
+ text-transform: uppercase;
111
+ font-weight: 700;
112
+ font-size: 13px;
113
+ margin-bottom: 5px;
114
+ }
115
+
116
+ .tooltip {
117
+ position: relative;
118
+ display: inline-block;
119
+ color: $text-subtle;
120
+ border-bottom: 1px dotted $stone-light;
121
+ font-size: 0.95em;
122
+ cursor: pointer;
123
+
124
+ &:before {
125
+ display: none;
126
+ content: ' ';
127
+ width: 0;
128
+ height: 0;
129
+ border-style: solid;
130
+ border-width: 0 10px 12px 10px;
131
+ border-color: transparent transparent $atom transparent;
132
+ position: absolute;
133
+ left: 50%;
134
+ margin-left: -5px;
135
+ bottom: -12px;
136
+ }
137
+
138
+ &:after {
139
+ display: none;
140
+ content: attr(data-text);
141
+ pointer-events: none;
142
+ background: $atom;
143
+ color: $white;
144
+ padding: $spacing / 2;
145
+ position: absolute;
146
+ width: 300px;
147
+ left: 50%;
148
+ margin-left: -150px;
149
+ margin-top: 10px;
150
+ text-align: center;
151
+ z-index: 2;
152
+ }
153
+
154
+ &:hover, &:focus {
155
+ outline: none;
156
+ color: $pink;
157
+ border-bottom-color: $pink;
158
+ &:before, &:after {
159
+ display: block;
160
+ }
161
+ }
162
+ }
163
+
164
+ .flash {
165
+ font-size: 1.2em;
166
+ margin: $spacing 0;
167
+ color: $pink;
168
+ }
169
+
170
+ .version {
171
+ margin-top: $spacing * 2;
172
+ }
173
+
174
+ .api-path {
175
+ display: block;
176
+ border: 2px solid $mint;
177
+ border-radius: 4px;
178
+ overflow: hidden;
179
+ margin-bottom: $spacing;
180
+ font-size: 1.2em;
181
+ background: $white;
182
+
183
+ .api-path-parameter {
184
+ color: $pink;
185
+ }
186
+
187
+ .api-path-method {
188
+ display: inline-block;
189
+ font-family: Consolas, monospace;
190
+ color: $blue-dark;
191
+ background: mix($blue-dark, $white, 5%);
192
+ border-right: 1px solid mix($blue-dark, $white, 15%);
193
+ margin-right: 10px;
194
+ font-weight: 700;
195
+ padding: 6px $spacing 3px $spacing;
196
+
197
+ &--post {
198
+ color: $green;
199
+ background: mix($green, $white, 5%);
200
+ border-right: 1px solid mix($green, $white, 15%);
201
+ }
202
+
203
+ &--delete {
204
+ color: $red;
205
+ background: mix($red, $white, 5%);
206
+ border-right: 1px solid mix($red, $white, 15%);
207
+ }
208
+
209
+ &--update {
210
+ color: $orange;
211
+ background: mix($orange, $white, 5%);
212
+ border-right: 1px solid mix($orange, $white, 15%);
213
+ }
214
+ }
215
+
216
+ .api-path-host {
217
+ margin-right: -10px;
218
+ color: mix($text-subtle, $gray-light);
219
+ }
220
+ }
221
+
222
+ .api-reference {
223
+ b {
224
+ color: $text-subtle;
225
+ }
226
+ }
227
+
228
+ .flag {
229
+ text-transform: uppercase;
230
+ font-size: 0.82em;
231
+ font-weight: 600;
232
+ color: $blue-dark;
233
+
234
+ &--strong {
235
+ color: $red;
236
+ }
237
+ }
238
+
239
+ .subtle {
240
+ color: $text-subtle;
241
+ }
242
+
243
+ .truncate {
244
+ overflow: hidden;
245
+ display: -webkit-box;
246
+ -webkit-line-clamp: 3;
247
+ -webkit-box-orient: vertical;
248
+ }
@@ -0,0 +1,91 @@
1
+ $deep-black: #000000;
2
+ $white: #ffffff;
3
+
4
+ $orange-lighter: #ffe9cc;
5
+ $orange-light: #ffbc67;
6
+ $orange: #ff8f02;
7
+ $orange-dark: #c05717;
8
+ $orange-darker: #4a1504;
9
+ $orange-text: #594430;
10
+
11
+ $blue-lighter: #d6eefc;
12
+ $blue-light: #85ccf5;
13
+ $blue: #33aaee;
14
+ $blue-dark: #117bb8;
15
+ $blue-darker: #005282;
16
+ $blue-text: #3e4e57;
17
+
18
+ $red-lighter: #fde8eb;
19
+ $red-light: #f79ca6;
20
+ $red: #f25a6b;
21
+ $red-dark: #bb3241;
22
+ $red-darker: #330202;
23
+ $red-text: #583c35;
24
+
25
+ $green-lighter: #d7f2e8;
26
+ $green-light: #86d8b9;
27
+ $green: #35be8b;
28
+ $green-dark: #2d966f;
29
+ $green-darker: #173630;
30
+ $green-text: #414f3e;
31
+
32
+ $purple-lighter: #f3e7f8;
33
+ $purple-light: #dcb6e9;
34
+ $purple: #c485db;
35
+ $purple-dark: #8f4fa7;
36
+ $purple-darker: #230051;
37
+ $purple-text: #50495a;
38
+
39
+ $teal-lighter: #dbf3f6;
40
+ $teal-light: #94dbe4;
41
+ $teal: #4cc3d2;
42
+ $teal-dark: #00848e;
43
+ $teal-darker: #003136;
44
+ $teal-text: #405352;
45
+
46
+ $yellow-lighter: #fff2cc;
47
+ $yellow-light: #f8e71c;
48
+ $yellow: #ffc000;
49
+ $yellow-dark: #9c6f19;
50
+ $yellow-darker: #573b00;
51
+ $yellow-text: #595130;
52
+
53
+ $indigo-lighter: #e4e6f7;
54
+ $indigo-light: #b3bcf5;
55
+ $indigo: #7683d8;
56
+ $indigo-dark: #5664b5;
57
+ $indigo-darker: #202e78;
58
+ $indigo-text: #3e4155;
59
+
60
+ $grey-lighter: #f8fafc;
61
+ $grey-light: #e7ebee;
62
+ $grey: #c4cdd5;
63
+ $grey-dark: #919eab;
64
+ $grey-darker: #4e5a64;
65
+ $black: #2c2d30;
66
+
67
+ $aqua-lighter: #d0e7f1;
68
+ $aqua-light: #9ccde2;
69
+ $aqua: #3298c4;
70
+ $aqua-dark: #0070a1;
71
+ $aqua-darker: #035879;
72
+ $aqua-text: #004059;
73
+
74
+ $unitN: 0;
75
+ $unit0: 4px;
76
+ $unit1: 8px;
77
+ $unit2: 16px;
78
+ $unit3: 24px;
79
+ $unit4: 32px;
80
+ $unit5: 40px;
81
+
82
+ $Vlt-font-url: '../../fonts/' !default;
83
+
84
+ $z-index-dropdowns: 500;
85
+ $z-index-flash: 1000;
86
+ $z-index-modals: 900;
87
+ $z-index-tooltips: 600;
88
+ $z-index-sidenav: 650;
89
+ $z-index-sidenav-mobile: 800; // Sidenav needs to be higher than the header for mobile
90
+ $z-index-sidenav-mobile-trigger: 650; // Sidenav button on mobile needs to be lower than the header for mobile
91
+ $z-index-header: 700;