elemental_styleguide 1.0.0.beta1 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +5 -2
- data/app/assets/config/elemental_styleguide_manifest.js +0 -1
- data/app/assets/stylesheets/elemental_styleguide/application.css +0 -0
- data/app/controllers/elemental_styleguide/examples_controller.rb +4 -3
- data/app/controllers/elemental_styleguide/pages_controller.rb +1 -3
- data/app/helpers/elemental_styleguide/navigation_helper.rb +11 -8
- data/app/views/elemental_styleguide/examples/show.html.erb +1 -0
- data/app/views/layouts/elemental_styleguide/application.html.erb +18 -9
- data/config/routes.rb +1 -1
- data/lib/elemental_styleguide/markdown_renderer.rb +27 -13
- data/lib/elemental_styleguide/version.rb +1 -1
- data/lib/elemental_styleguide.rb +16 -3
- data/lib/generators/elemental_styleguide/templates/install/controllers/styleguide/examples_controller.rb +6 -0
- data/lib/generators/elemental_styleguide/templates/install/views/layouts/styleguide/example.html.erb +1 -3
- metadata +15 -73
- data/app/assets/javascripts/elemental_styleguide/application.js +0 -13
- data/app/assets/stylesheets/elemental_styleguide/application.css.erb +0 -182
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 514239bb5d770f06daeae819a23a20a7b40b8e0555aacc201a4b9bfdd294b899
|
|
4
|
+
data.tar.gz: 79113d713dbe7f1a3d786759ede47d96e94c1b2255a822b73bbb4737e570bacf
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 796272dfa2ce6e5306ef25473b2fd85110bffe42af7387250f393dd95c0d89234a68fb2e791f6bc75de4bcb8672b4450c1260348abef6af7416ac6799a9ef484
|
|
7
|
+
data.tar.gz: ba3ab40e9bf6c5ce80d4ba180d754e334c4c1b732b5288aa5e9abb7b5907980b9907b69fdbaa2ed931db02fcbf0c4aea892de8708d566b00f7b52977454ecc0b
|
data/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Elemental Style Guide
|
|
2
2
|
|
|
3
|
-
Simple style guide for Rails
|
|
3
|
+
Simple style guide for Rails 7.2+, designed to go well with [elemental_components](https://github.com/jensljungblad/elemental_components). The two together are inspired by the works of [Brad Frost](http://bradfrost.com) and by the [thoughts behind](http://engineering.lonelyplanet.com/2014/05/18/a-maintainable-styleguide.html) Lonely Planet's style guide [Rizzo](http://rizzo.lonelyplanet.com).
|
|
4
4
|
|
|
5
5
|
## Installation
|
|
6
6
|
|
|
@@ -26,6 +26,9 @@ This will create the following files and directories:
|
|
|
26
26
|
|
|
27
27
|
```
|
|
28
28
|
app/
|
|
29
|
+
controllers/
|
|
30
|
+
styleguide/
|
|
31
|
+
examples_controller.rb
|
|
29
32
|
views/
|
|
30
33
|
layouts/
|
|
31
34
|
styleguide/
|
|
@@ -72,7 +75,7 @@ height: 200
|
|
|
72
75
|
```
|
|
73
76
|
````
|
|
74
77
|
|
|
75
|
-
Examples need your application's CSS and JS in order to function properly. There is an `app/views/layouts/styleguide/example.html.erb` layout file that examples are rendered within. This file can be modified in order to
|
|
78
|
+
Examples need your application's CSS and JS in order to function properly. There is an `app/views/layouts/styleguide/example.html.erb` layout file that examples are rendered within. This file can be modified in order to include any CSS and JS needed.
|
|
76
79
|
|
|
77
80
|
## Acknowledgements
|
|
78
81
|
|
|
File without changes
|
|
@@ -2,11 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
module ElementalStyleguide
|
|
4
4
|
class ExamplesController < ApplicationController
|
|
5
|
-
|
|
6
|
-
helper Rails.application.routes.url_helpers
|
|
5
|
+
layout "styleguide/example"
|
|
7
6
|
|
|
8
7
|
def show
|
|
9
|
-
|
|
8
|
+
@code = ElementalStyleguide.message_verifier.verify(params[:example])
|
|
9
|
+
rescue ActiveSupport::MessageVerifier::InvalidSignature
|
|
10
|
+
head :forbidden
|
|
10
11
|
end
|
|
11
12
|
end
|
|
12
13
|
end
|
|
@@ -2,13 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
module ElementalStyleguide
|
|
4
4
|
class PagesController < ApplicationController
|
|
5
|
-
helper ElementalStyleguide::NavigationHelper
|
|
6
|
-
|
|
7
5
|
def show
|
|
8
6
|
unless params[:path]
|
|
9
7
|
params[:path] = ElementalStyleguide.page_names[0][0]
|
|
10
8
|
end
|
|
11
|
-
render "styleguide/#{params[:path]}"
|
|
9
|
+
render "styleguide/#{params[:path]}"
|
|
12
10
|
end
|
|
13
11
|
end
|
|
14
12
|
end
|
|
@@ -2,23 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
module ElementalStyleguide
|
|
4
4
|
module NavigationHelper
|
|
5
|
-
# rubocop:disable Metrics/AbcSize
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
# rubocop:disable Metrics/AbcSize
|
|
6
|
+
# rubocop:disable Metrics/MethodLength
|
|
7
|
+
def navigation(pages = nil, paths = [], level: 0)
|
|
8
|
+
content_tag :ul, class: "nav flex-column ms-#{level * 2}" do
|
|
8
9
|
(pages || ElementalStyleguide.page_names).map do |page|
|
|
9
10
|
path, label, children = page
|
|
10
11
|
path = paths.dup << path
|
|
11
12
|
|
|
12
|
-
content_tag :li do
|
|
13
|
+
content_tag :li, class: "nav-item" do
|
|
13
14
|
if children
|
|
14
|
-
|
|
15
|
+
content_tag(:span, label.html_safe, class: "nav-link disabled py-1") +
|
|
16
|
+
navigation(children, path, level: level + 1)
|
|
15
17
|
else
|
|
16
|
-
link_to label, elemental_styleguide.page_path(path)
|
|
18
|
+
link_to label, elemental_styleguide.page_path(path), class: "nav-link py-1"
|
|
17
19
|
end
|
|
18
20
|
end
|
|
19
|
-
end.join
|
|
21
|
+
end.join.html_safe
|
|
20
22
|
end
|
|
21
23
|
end
|
|
22
|
-
# rubocop:enable Metrics/
|
|
24
|
+
# rubocop:enable Metrics/MethodLength
|
|
25
|
+
# rubocop:enable Metrics/AbcSize
|
|
23
26
|
end
|
|
24
27
|
end
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<%= render inline: @code, type: :erb %>
|
|
@@ -2,18 +2,26 @@
|
|
|
2
2
|
<html>
|
|
3
3
|
<head>
|
|
4
4
|
<title>Style guide</title>
|
|
5
|
-
<%= stylesheet_link_tag "elemental_styleguide/application", media: "all" %>
|
|
6
|
-
<%= javascript_include_tag "elemental_styleguide/application" %>
|
|
7
5
|
<%= csrf_meta_tags %>
|
|
6
|
+
|
|
7
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css">
|
|
8
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.11.1/build/styles/github.min.css">
|
|
9
|
+
<%= stylesheet_link_tag "elemental_styleguide/application", media: "all" %>
|
|
10
|
+
|
|
11
|
+
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
|
12
|
+
<script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.11.1/build/highlight.min.js"></script>
|
|
13
|
+
<script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.11.1/build/languages/erb.min.js"></script>
|
|
8
14
|
</head>
|
|
9
15
|
<body>
|
|
10
|
-
<div class="
|
|
11
|
-
<
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
16
|
+
<div class="container-fluid">
|
|
17
|
+
<div class="row min-vh-100">
|
|
18
|
+
<nav class="col-md-3 col-lg-2 border-end shadow-sm px-2 py-4">
|
|
19
|
+
<%= navigation %>
|
|
20
|
+
</nav>
|
|
21
|
+
<main class="col-md-9 col-lg-10 p-4">
|
|
22
|
+
<%= yield %>
|
|
23
|
+
</main>
|
|
24
|
+
</div>
|
|
17
25
|
</div>
|
|
18
26
|
<script>
|
|
19
27
|
var iframes = document.getElementsByTagName('iframe');
|
|
@@ -32,5 +40,6 @@
|
|
|
32
40
|
}
|
|
33
41
|
}
|
|
34
42
|
</script>
|
|
43
|
+
<script>hljs.highlightAll();</script>
|
|
35
44
|
</body>
|
|
36
45
|
</html>
|
data/config/routes.rb
CHANGED
|
@@ -2,30 +2,44 @@
|
|
|
2
2
|
|
|
3
3
|
module ElementalStyleguide
|
|
4
4
|
class MarkdownRenderer < Redcarpet::Render::HTML
|
|
5
|
-
|
|
5
|
+
def block_quote(quote)
|
|
6
|
+
<<-BLOCK_QUOTE
|
|
7
|
+
<blockquote class="border-5 border-start border-secondary-subtle ps-3">
|
|
8
|
+
#{quote}
|
|
9
|
+
</blockquote>
|
|
10
|
+
BLOCK_QUOTE
|
|
11
|
+
end
|
|
6
12
|
|
|
7
13
|
def block_code(code, language)
|
|
8
14
|
case language
|
|
9
15
|
when "example"
|
|
10
|
-
|
|
11
|
-
example(code, options)
|
|
16
|
+
example(code)
|
|
12
17
|
else
|
|
13
|
-
|
|
18
|
+
<<-BLOCK_CODE
|
|
19
|
+
<pre><code class="language-#{language} bg-body-tertiary">#{code}</code></pre>
|
|
20
|
+
BLOCK_CODE
|
|
14
21
|
end
|
|
15
22
|
end
|
|
16
23
|
|
|
17
|
-
|
|
24
|
+
# rubocop:disable Metrics/MethodLength
|
|
25
|
+
def example(code)
|
|
26
|
+
options, code = parse_options(code)
|
|
27
|
+
|
|
18
28
|
<<-EXAMPLE
|
|
19
|
-
<div class="
|
|
20
|
-
<
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
29
|
+
<div class="card shadow-sm mb-4">
|
|
30
|
+
<div class="card-body">
|
|
31
|
+
<iframe src="#{ElementalStyleguide.example_path(code)}"
|
|
32
|
+
width="#{options['width'] || '100%'}"
|
|
33
|
+
height="#{options['height'] || 'auto'}"
|
|
34
|
+
class="d-block"></iframe>
|
|
35
|
+
</div>
|
|
36
|
+
<div class="card-footer">
|
|
37
|
+
<pre class="mb-0"><code class="language-erb bg-transparent p-0">#{ERB::Util.html_escape(code)}</code></pre>
|
|
38
|
+
</div>
|
|
26
39
|
</div>
|
|
27
40
|
EXAMPLE
|
|
28
41
|
end
|
|
42
|
+
# rubocop:enable Metrics/MethodLength
|
|
29
43
|
|
|
30
44
|
private
|
|
31
45
|
|
|
@@ -33,7 +47,7 @@ module ElementalStyleguide
|
|
|
33
47
|
pieces = code.split("---")
|
|
34
48
|
|
|
35
49
|
if pieces.length > 1
|
|
36
|
-
options = pieces[0].split("\n").
|
|
50
|
+
options = pieces[0].split("\n").to_h { |i| i.split(": ") }
|
|
37
51
|
[options, pieces[1]]
|
|
38
52
|
else
|
|
39
53
|
options = {}
|
data/lib/elemental_styleguide.rb
CHANGED
|
@@ -1,20 +1,33 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require "redcarpet"
|
|
4
|
-
require "rouge"
|
|
5
|
-
require "rouge/plugins/redcarpet"
|
|
6
4
|
require "elemental_styleguide/markdown_handler"
|
|
7
5
|
require "elemental_styleguide/markdown_renderer"
|
|
8
6
|
require "elemental_styleguide/engine"
|
|
9
7
|
|
|
10
8
|
module ElementalStyleguide
|
|
9
|
+
def self.example_path(example)
|
|
10
|
+
message_verifier.generate(example).then do |signed_example|
|
|
11
|
+
ElementalStyleguide::Engine.routes.url_helpers.example_path(example: signed_example)
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def self.message_verifier
|
|
16
|
+
@message_verifier ||= ActiveSupport::MessageVerifier.new(
|
|
17
|
+
Rails.application.secret_key_base,
|
|
18
|
+
digest: "SHA256",
|
|
19
|
+
serializer: ActiveSupport::MessageEncryptor::NullSerializer,
|
|
20
|
+
url_safe: true
|
|
21
|
+
)
|
|
22
|
+
end
|
|
23
|
+
|
|
11
24
|
def self.pages_path
|
|
12
25
|
Rails.root.join("app", "views", "styleguide")
|
|
13
26
|
end
|
|
14
27
|
|
|
15
28
|
def self.page_names(path = nil)
|
|
16
29
|
Dir.chdir(path || pages_path) do
|
|
17
|
-
Dir.glob("*").
|
|
30
|
+
Dir.glob("*").map do |item|
|
|
18
31
|
[
|
|
19
32
|
item.sub(/\..*/, ""),
|
|
20
33
|
item.sub(/\..*/, "").sub(/[0-9]*_?/, "").titleize
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: elemental_styleguide
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.0
|
|
4
|
+
version: 1.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jens Ljungblad
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: rails
|
|
@@ -16,14 +15,14 @@ dependencies:
|
|
|
16
15
|
requirements:
|
|
17
16
|
- - ">="
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
|
-
version:
|
|
18
|
+
version: 7.2.0
|
|
20
19
|
type: :runtime
|
|
21
20
|
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
23
|
- - ">="
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
|
-
version:
|
|
25
|
+
version: 7.2.0
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
28
27
|
name: redcarpet
|
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -38,63 +37,7 @@ dependencies:
|
|
|
38
37
|
- - ">="
|
|
39
38
|
- !ruby/object:Gem::Version
|
|
40
39
|
version: 3.5.0
|
|
41
|
-
|
|
42
|
-
name: rouge
|
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
|
44
|
-
requirements:
|
|
45
|
-
- - ">="
|
|
46
|
-
- !ruby/object:Gem::Version
|
|
47
|
-
version: 3.13.0
|
|
48
|
-
type: :runtime
|
|
49
|
-
prerelease: false
|
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
-
requirements:
|
|
52
|
-
- - ">="
|
|
53
|
-
- !ruby/object:Gem::Version
|
|
54
|
-
version: 3.13.0
|
|
55
|
-
- !ruby/object:Gem::Dependency
|
|
56
|
-
name: appraisal
|
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
|
58
|
-
requirements:
|
|
59
|
-
- - ">="
|
|
60
|
-
- !ruby/object:Gem::Version
|
|
61
|
-
version: '0'
|
|
62
|
-
type: :development
|
|
63
|
-
prerelease: false
|
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
-
requirements:
|
|
66
|
-
- - ">="
|
|
67
|
-
- !ruby/object:Gem::Version
|
|
68
|
-
version: '0'
|
|
69
|
-
- !ruby/object:Gem::Dependency
|
|
70
|
-
name: rubocop
|
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
|
72
|
-
requirements:
|
|
73
|
-
- - "~>"
|
|
74
|
-
- !ruby/object:Gem::Version
|
|
75
|
-
version: 0.74.0
|
|
76
|
-
type: :development
|
|
77
|
-
prerelease: false
|
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
-
requirements:
|
|
80
|
-
- - "~>"
|
|
81
|
-
- !ruby/object:Gem::Version
|
|
82
|
-
version: 0.74.0
|
|
83
|
-
- !ruby/object:Gem::Dependency
|
|
84
|
-
name: sqlite3
|
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
|
86
|
-
requirements:
|
|
87
|
-
- - "~>"
|
|
88
|
-
- !ruby/object:Gem::Version
|
|
89
|
-
version: 1.4.0
|
|
90
|
-
type: :development
|
|
91
|
-
prerelease: false
|
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
-
requirements:
|
|
94
|
-
- - "~>"
|
|
95
|
-
- !ruby/object:Gem::Version
|
|
96
|
-
version: 1.4.0
|
|
97
|
-
description: Simple style guide for Rails 5.1+
|
|
40
|
+
description: Simple style guide for Rails 7.2+
|
|
98
41
|
email:
|
|
99
42
|
- jens.ljungblad@gmail.com
|
|
100
43
|
executables: []
|
|
@@ -105,12 +48,12 @@ files:
|
|
|
105
48
|
- README.md
|
|
106
49
|
- Rakefile
|
|
107
50
|
- app/assets/config/elemental_styleguide_manifest.js
|
|
108
|
-
- app/assets/
|
|
109
|
-
- app/assets/stylesheets/elemental_styleguide/application.css.erb
|
|
51
|
+
- app/assets/stylesheets/elemental_styleguide/application.css
|
|
110
52
|
- app/controllers/elemental_styleguide/application_controller.rb
|
|
111
53
|
- app/controllers/elemental_styleguide/examples_controller.rb
|
|
112
54
|
- app/controllers/elemental_styleguide/pages_controller.rb
|
|
113
55
|
- app/helpers/elemental_styleguide/navigation_helper.rb
|
|
56
|
+
- app/views/elemental_styleguide/examples/show.html.erb
|
|
114
57
|
- app/views/layouts/elemental_styleguide/application.html.erb
|
|
115
58
|
- config/routes.rb
|
|
116
59
|
- lib/elemental_styleguide.rb
|
|
@@ -120,14 +63,15 @@ files:
|
|
|
120
63
|
- lib/elemental_styleguide/railtie.rb
|
|
121
64
|
- lib/elemental_styleguide/version.rb
|
|
122
65
|
- lib/generators/elemental_styleguide/install_generator.rb
|
|
66
|
+
- lib/generators/elemental_styleguide/templates/install/controllers/styleguide/examples_controller.rb
|
|
123
67
|
- lib/generators/elemental_styleguide/templates/install/views/layouts/styleguide/example.html.erb
|
|
124
68
|
- lib/generators/elemental_styleguide/templates/install/views/styleguide/01_home.md
|
|
125
69
|
- lib/tasks/elemental_styleguide_tasks.rake
|
|
126
70
|
homepage: https://www.github.com/jensljungblad/elemental_styleguide
|
|
127
71
|
licenses:
|
|
128
72
|
- MIT
|
|
129
|
-
metadata:
|
|
130
|
-
|
|
73
|
+
metadata:
|
|
74
|
+
rubygems_mfa_required: 'true'
|
|
131
75
|
rdoc_options: []
|
|
132
76
|
require_paths:
|
|
133
77
|
- lib
|
|
@@ -135,16 +79,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
135
79
|
requirements:
|
|
136
80
|
- - ">="
|
|
137
81
|
- !ruby/object:Gem::Version
|
|
138
|
-
version:
|
|
82
|
+
version: 3.1.0
|
|
139
83
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
140
84
|
requirements:
|
|
141
|
-
- - "
|
|
85
|
+
- - ">="
|
|
142
86
|
- !ruby/object:Gem::Version
|
|
143
|
-
version:
|
|
87
|
+
version: '0'
|
|
144
88
|
requirements: []
|
|
145
|
-
|
|
146
|
-
rubygems_version: 2.7.6
|
|
147
|
-
signing_key:
|
|
89
|
+
rubygems_version: 3.7.2
|
|
148
90
|
specification_version: 4
|
|
149
|
-
summary: Simple style guide for Rails
|
|
91
|
+
summary: Simple style guide for Rails 7.2+
|
|
150
92
|
test_files: []
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
|
2
|
-
// listed below.
|
|
3
|
-
//
|
|
4
|
-
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
|
5
|
-
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
|
|
6
|
-
//
|
|
7
|
-
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
|
8
|
-
// compiled file. JavaScript code in this file should be added after the last require_* statement.
|
|
9
|
-
//
|
|
10
|
-
// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
|
|
11
|
-
// about supported directives.
|
|
12
|
-
//
|
|
13
|
-
//= require_tree .
|
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* This is a manifest file that'll be compiled into application.css, which will include all the files
|
|
3
|
-
* listed below.
|
|
4
|
-
*
|
|
5
|
-
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
|
|
6
|
-
* or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
|
|
7
|
-
*
|
|
8
|
-
* You're free to add application-wide styles to this file and they'll appear at the bottom of the
|
|
9
|
-
* compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
|
|
10
|
-
* files in this directory. Styles in this file should be added after the last require_* statement.
|
|
11
|
-
* It is generally better to create a new file per style scope.
|
|
12
|
-
*
|
|
13
|
-
*= require_tree .
|
|
14
|
-
*= require_self
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
<%= Rouge::Themes::Base16.mode(:light).render(scope: '.highlight') %>
|
|
18
|
-
|
|
19
|
-
body {
|
|
20
|
-
margin: 0;
|
|
21
|
-
padding: 0;
|
|
22
|
-
font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
|
|
23
|
-
line-height: 1.5;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
a {
|
|
27
|
-
color: #5296b2;
|
|
28
|
-
text-decoration: none;
|
|
29
|
-
border-bottom: 2px solid #ddebf0;
|
|
30
|
-
transition: all .2s ease-in-out;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
a:hover {
|
|
34
|
-
border-color: #5296b2;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
p {
|
|
38
|
-
margin: 0 0 2em;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
main {
|
|
42
|
-
width: 100%;
|
|
43
|
-
max-width: 1024px;
|
|
44
|
-
margin: 0 auto;
|
|
45
|
-
padding: 40px 60px 60px;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
pre {
|
|
49
|
-
margin: 0 0 2em;
|
|
50
|
-
padding: 30px;
|
|
51
|
-
background: #f4f7fb;
|
|
52
|
-
border: 1px solid #dfe3e6;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
code {
|
|
56
|
-
font-family: SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
|
|
57
|
-
font-size: 15px;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
iframe {
|
|
61
|
-
margin: 0;
|
|
62
|
-
height: 0;
|
|
63
|
-
border: none;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
h1 {
|
|
67
|
-
margin: 0 0 1em;
|
|
68
|
-
padding: 0 0 .5em;
|
|
69
|
-
border-bottom: 2px solid #dfe3e6;
|
|
70
|
-
color: #333;
|
|
71
|
-
font-size: 50px;
|
|
72
|
-
font-weight: 500;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
h2 {
|
|
76
|
-
color: #333;
|
|
77
|
-
font-weight: 600;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
ul,
|
|
81
|
-
ol {
|
|
82
|
-
margin: 0 0 2em;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
table {
|
|
86
|
-
margin: 0 0 2em;
|
|
87
|
-
border-collapse: collapse;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
th,
|
|
91
|
-
td {
|
|
92
|
-
padding: .6em 2em .6em 0;
|
|
93
|
-
text-align: left;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
th:last-child,
|
|
97
|
-
td:last-child {
|
|
98
|
-
padding-right: 0;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
th {
|
|
102
|
-
border-bottom: 2px solid #dfe3e6;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
td {
|
|
106
|
-
border-bottom: 1px solid #dfe3e6;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
hr {
|
|
110
|
-
margin: 2em 0 0;
|
|
111
|
-
padding: 2em 0 0;
|
|
112
|
-
border: 1px solid #dfe3e6;
|
|
113
|
-
border-width: 1px 0 0;
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
blockquote {
|
|
117
|
-
padding-left: 25px;
|
|
118
|
-
border-left: 3px solid #dfe3e6;
|
|
119
|
-
color: #879097;
|
|
120
|
-
font-style: italic;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
nav {
|
|
124
|
-
padding: 10px 30px 40px;
|
|
125
|
-
background: #f4f7fb;
|
|
126
|
-
min-width: 180px;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
nav a {
|
|
130
|
-
text-decoration: none;
|
|
131
|
-
border-bottom: 2px solid transparent;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
nav a:hover {
|
|
135
|
-
border-bottom: 2px solid #a9cbd9;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
nav ul {
|
|
139
|
-
list-style: none;
|
|
140
|
-
margin: 0;
|
|
141
|
-
padding: 0;
|
|
142
|
-
font-size: 18px;
|
|
143
|
-
font-weight: 500;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
nav > ul > li {
|
|
147
|
-
display: block;
|
|
148
|
-
margin: .6em 0 0;
|
|
149
|
-
padding: .6em 0 0;
|
|
150
|
-
box-shadow: 0 -1px 0 0 #dfe3e6;
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
nav > ul > li:first-child {
|
|
154
|
-
box-shadow: none;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
nav ul ul {
|
|
158
|
-
margin: .6em 0;
|
|
159
|
-
padding: 0 0;
|
|
160
|
-
font-size: 15px;
|
|
161
|
-
font-weight: 400;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
nav ul ul ul {
|
|
165
|
-
font-size: 14px;
|
|
166
|
-
padding-left: 1em;
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
.example {
|
|
170
|
-
display: grid;
|
|
171
|
-
padding: 30px;
|
|
172
|
-
border: 1px solid #dfe3e6;
|
|
173
|
-
border-width: 1px 1px 0;
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
.grid-container {
|
|
177
|
-
display: grid;
|
|
178
|
-
width: 100%;
|
|
179
|
-
height: 100vh;
|
|
180
|
-
grid-gap: 0;
|
|
181
|
-
grid-template-columns: auto 1fr;
|
|
182
|
-
}
|