govuk_tech_docs 1.8.0 → 1.8.1
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/.travis.yml +0 -7
- data/CHANGELOG.md +8 -0
- data/CONTRIBUTING.md +1 -1
- data/{LICENSE → LICENCE} +0 -0
- data/README.md +49 -19
- data/docs/configuration.md +12 -0
- data/govuk_tech_docs.gemspec +1 -1
- data/lib/assets/stylesheets/_core.scss +1 -0
- data/lib/assets/stylesheets/modules/_warning-text.scss +73 -0
- data/lib/govuk_tech_docs.rb +2 -1
- data/lib/govuk_tech_docs/contribution_banner.rb +7 -1
- data/lib/govuk_tech_docs/table_of_contents/helpers.rb +14 -4
- data/lib/govuk_tech_docs/version.rb +1 -1
- data/lib/govuk_tech_docs/warning_text_extension.rb +23 -0
- metadata +7 -5
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 3cf2bab991925ed0fabb60ab0476495ab90c800d
|
|
4
|
+
data.tar.gz: dc103fe59f818f8a4e8409428bd5c10c3868c885
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f93a374fb0a35604b6832a3935a86f9dc9c4a1afc2663cd0ac5a20a7e5aa66cd7b10052c721a15c6eca1f956bad104b8de125f80a3f3b20368855ec0eac050e5
|
|
7
|
+
data.tar.gz: 970bfd4b026cce535b52bf7602fc9086e02e993875c99b11a37f2c94abd2f7fba82e0120f36965eaa3b757a93f07629fc16a4792c8a8b8895f165f399bc13ebe
|
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.8.1
|
|
4
|
+
|
|
5
|
+
This release fixes a bug (#79 - reported in
|
|
6
|
+
[alphagov/tech-docs-template#183][tdt-183]) which prevented a multipage site
|
|
7
|
+
from being generated when a custom `http_prefix` was configured.
|
|
8
|
+
|
|
9
|
+
[tdt-183]: https://github.com/alphagov/tech-docs-template/issues/183
|
|
10
|
+
|
|
3
11
|
## 1.8.0
|
|
4
12
|
|
|
5
13
|
🎉 Our first contributor from outside of GDS. Thanks [@timja](https://github.com/timja) from [HMCTS](https://hmcts.github.io)! 🤝
|
data/CONTRIBUTING.md
CHANGED
|
@@ -4,6 +4,6 @@ Everybody who uses this project is encouraged to contribute to this project. If
|
|
|
4
4
|
|
|
5
5
|
- Before adding your feature, [check the backlog to see if someone is already talking about it](https://github.com/alphagov/tech-docs-template/issues)
|
|
6
6
|
- If you add a new option to `config/tech-docs.yml`, make sure you [document the option in docs/configuration.md](docs/configuration.md)
|
|
7
|
-
- If you add a new option to the page frontmatter, make sure you [document the option in docs/frontmatter.md](docs/
|
|
7
|
+
- If you add a new option to the page frontmatter, make sure you [document the option in docs/frontmatter.md](docs/frontmatter.md)
|
|
8
8
|
- You can test your contribution using [unit tests](spec/govuk_tech_docs), [javascript tests](spec/javascripts) or [integration tests](spec/features)
|
|
9
9
|
- If your change is relevant to the users of the gem, add something to [CHANGELOG](CHANGELOG.md). You don't have to do this if it's just refactoring. Make sure that you include any upgrade instructions.
|
data/{LICENSE → LICENCE}
RENAMED
|
File without changes
|
data/README.md
CHANGED
|
@@ -1,50 +1,69 @@
|
|
|
1
1
|
# Tech Docs Template - gem
|
|
2
2
|
|
|
3
|
-
This repo
|
|
4
|
-
|
|
3
|
+
This repo contains the Ruby gem that distributes the [Tech Docs Template][tdt-template]. The Tech Docs Template is a [middleman template][mmt] that
|
|
4
|
+
you can use to build technical documentation using a GOV.UK style.
|
|
5
5
|
|
|
6
|
-
👉 [
|
|
6
|
+
👉 Find out more about the template and its features from the [Tech Docs Template documentation][tdt-docs].
|
|
7
7
|
|
|
8
8
|
## Usage
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
👉 Find out how to [generate a new website with the Tech Docs Template][tdt-readme].
|
|
11
11
|
|
|
12
12
|
## Contributing
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
Everybody who uses this project is encouraged to contribute.
|
|
15
|
+
|
|
16
|
+
👉 [See CONTRIBUTING.md](CONTRIBUTING.md) for guidance on making changes.
|
|
15
17
|
|
|
16
18
|
## Developing locally
|
|
17
19
|
|
|
18
|
-
There are 2 ways to develop with this gem.
|
|
20
|
+
There are 2 ways to develop with this gem. You can see your changes on either:
|
|
21
|
+
|
|
22
|
+
- your own Tech Docs Template website
|
|
23
|
+
- the example in this repository
|
|
24
|
+
|
|
25
|
+
### Use your own Tech Docs Template website
|
|
19
26
|
|
|
20
|
-
|
|
27
|
+
If you want to see how your changes to the gem affect your website, you have to point your site's Gemfile to your local checkout:
|
|
21
28
|
|
|
22
29
|
```rb
|
|
23
30
|
gem 'govuk_tech_docs', path: '../tech-docs-gem'
|
|
24
31
|
```
|
|
25
32
|
|
|
26
|
-
|
|
33
|
+
To view your changes locally run:
|
|
27
34
|
|
|
35
|
+
```sh
|
|
36
|
+
bundle exec middleman server
|
|
28
37
|
```
|
|
38
|
+
|
|
39
|
+
See your website on `http://localhost:4567` in your browser.
|
|
40
|
+
|
|
41
|
+
### Use the example in this repo
|
|
42
|
+
|
|
43
|
+
To start the example in this repo, run:
|
|
44
|
+
|
|
45
|
+
```sh
|
|
29
46
|
cd example
|
|
30
47
|
bundle install
|
|
31
|
-
bundle exec middleman
|
|
48
|
+
bundle exec middleman server
|
|
32
49
|
```
|
|
33
50
|
|
|
34
|
-
|
|
51
|
+
See your website on `http://localhost:4567` in your browser.
|
|
35
52
|
|
|
36
53
|
## Tests
|
|
37
54
|
|
|
38
|
-
|
|
39
|
-
|
|
55
|
+
The repository contains automated JavaScript tests that use [Jasmine][jas] test framework.
|
|
56
|
+
|
|
57
|
+
To run the tests and see the results in your browser:
|
|
40
58
|
|
|
41
|
-
|
|
59
|
+
1. Run `bundle exec rake jasmine`
|
|
60
|
+
2. Go to `http://localhost:8888` in your browser
|
|
42
61
|
|
|
43
|
-
|
|
44
|
-
- Navigate to `http://localhost:8888` in a browser of your choosing
|
|
45
|
-
- Peruse the output of your tests
|
|
62
|
+
To run the tests and see the results in your terminal, run:
|
|
46
63
|
|
|
47
|
-
|
|
64
|
+
```
|
|
65
|
+
bundle exec rake jasmine:ci
|
|
66
|
+
```
|
|
48
67
|
|
|
49
68
|
## Releasing new versions
|
|
50
69
|
|
|
@@ -52,8 +71,19 @@ To release a new version, create a new Pull Request that updates [version.rb](li
|
|
|
52
71
|
|
|
53
72
|
Travis will automatically release a [new version to Rubygems.org](https://rubygems.org/gems/govuk_tech_docs).
|
|
54
73
|
|
|
55
|
-
##
|
|
74
|
+
## Licence
|
|
75
|
+
|
|
76
|
+
Unless stated otherwise, the codebase is released under [the MIT License][mit].
|
|
77
|
+
This covers both the codebase and any sample code in the documentation.
|
|
78
|
+
|
|
79
|
+
The documentation is [© Crown copyright][copyright] and available under the terms of the [Open Government 3.0][ogl] licence.
|
|
56
80
|
|
|
57
|
-
|
|
81
|
+
[mit]: LICENCE
|
|
82
|
+
[copyright]: http://www.nationalarchives.gov.uk/information-management/re-using-public-sector-information/uk-government-licensing-framework/crown-copyright/
|
|
83
|
+
[ogl]: http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/
|
|
84
|
+
[tdt-docs]: https://tdt-documentation.london.cloudapps.digital
|
|
85
|
+
[tdt-template]: https://github.com/alphagov/tech-docs-template
|
|
86
|
+
[tdt-readme]: https://github.com/alphagov/tech-docs-template/blob/master/README.md
|
|
87
|
+
[mmt]: https://middlemanapp.com/advanced/project_templates/
|
|
58
88
|
|
|
59
89
|
[jas]: https://jasmine.github.io/
|
data/docs/configuration.md
CHANGED
|
@@ -157,6 +157,18 @@ show_contribution_banner: true
|
|
|
157
157
|
github_repo: alphagov/example-repo
|
|
158
158
|
```
|
|
159
159
|
|
|
160
|
+
## `source_urls`
|
|
161
|
+
|
|
162
|
+
Customise the URLs that the contribution banner links to. Only useful if
|
|
163
|
+
[show_contribution_banner](#show_contribution_banner) is turned on. By default, "Report issue" links
|
|
164
|
+
to raising a GitHub issue but by modifying the `report_issue_url` it can link to an email address
|
|
165
|
+
or another page.
|
|
166
|
+
|
|
167
|
+
```yaml
|
|
168
|
+
source_urls:
|
|
169
|
+
report_issue_url: mailto:support@example.com
|
|
170
|
+
```
|
|
171
|
+
|
|
160
172
|
## `show_govuk_logo`
|
|
161
173
|
|
|
162
174
|
Whether to show the GOV.UK crown logo.
|
data/govuk_tech_docs.gemspec
CHANGED
|
@@ -36,7 +36,7 @@ Gem::Specification.new do |spec|
|
|
|
36
36
|
spec.add_dependency "pry"
|
|
37
37
|
|
|
38
38
|
|
|
39
|
-
spec.add_development_dependency "bundler", "~> 1
|
|
39
|
+
spec.add_development_dependency "bundler", "~> 2.0.1"
|
|
40
40
|
spec.add_development_dependency "rake", "~> 10.0"
|
|
41
41
|
spec.add_development_dependency "capybara", "~> 2.18.0"
|
|
42
42
|
spec.add_development_dependency "govuk-lint", "~> 3.7.0"
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
.govuk-warning-text {
|
|
2
|
+
font-family: nta,Arial,sans-serif;
|
|
3
|
+
-webkit-font-smoothing: antialiased;
|
|
4
|
+
-moz-osx-font-smoothing: grayscale;
|
|
5
|
+
font-weight: 400;
|
|
6
|
+
font-size: 16px;
|
|
7
|
+
font-size: 1rem;
|
|
8
|
+
line-height: 1.25;
|
|
9
|
+
color: #0b0c0c;
|
|
10
|
+
position: relative;
|
|
11
|
+
margin-bottom: 20px;
|
|
12
|
+
padding: 10px 0; }
|
|
13
|
+
|
|
14
|
+
@media print {
|
|
15
|
+
.govuk-warning-text {
|
|
16
|
+
font-family: sans-serif; } }
|
|
17
|
+
@media (min-width: 40.0625em) {
|
|
18
|
+
.govuk-warning-text {
|
|
19
|
+
font-size: 19px;
|
|
20
|
+
font-size: 1.1875rem;
|
|
21
|
+
line-height: 1.31579; } }
|
|
22
|
+
@media print {
|
|
23
|
+
.govuk-warning-text {
|
|
24
|
+
font-size: 14pt;
|
|
25
|
+
line-height: 1.15;
|
|
26
|
+
color: #000; } }
|
|
27
|
+
@media (min-width: 40.0625em) {
|
|
28
|
+
.govuk-warning-text {
|
|
29
|
+
margin-bottom: 30px; } }
|
|
30
|
+
.govuk-warning-text__assistive {
|
|
31
|
+
position: absolute !important;
|
|
32
|
+
width: 1px !important;
|
|
33
|
+
height: 1px !important;
|
|
34
|
+
margin: 0 !important;
|
|
35
|
+
padding: 0 !important;
|
|
36
|
+
overflow: hidden !important;
|
|
37
|
+
clip: rect(0 0 0 0) !important;
|
|
38
|
+
-webkit-clip-path: inset(50%) !important;
|
|
39
|
+
clip-path: inset(50%) !important;
|
|
40
|
+
border: 0 !important;
|
|
41
|
+
white-space: nowrap !important; }
|
|
42
|
+
|
|
43
|
+
.govuk-warning-text__icon {
|
|
44
|
+
font-family: nta,Arial,sans-serif;
|
|
45
|
+
-webkit-font-smoothing: antialiased;
|
|
46
|
+
-moz-osx-font-smoothing: grayscale;
|
|
47
|
+
font-weight: 700;
|
|
48
|
+
display: inline-block;
|
|
49
|
+
position: absolute;
|
|
50
|
+
top: 50%;
|
|
51
|
+
left: 0;
|
|
52
|
+
min-width: 32px;
|
|
53
|
+
min-height: 29px;
|
|
54
|
+
margin-top: -20px;
|
|
55
|
+
padding-top: 3px;
|
|
56
|
+
border: 3px solid #0b0c0c;
|
|
57
|
+
border-radius: 50%;
|
|
58
|
+
color: #fff;
|
|
59
|
+
background: #0b0c0c;
|
|
60
|
+
font-size: 1.6em;
|
|
61
|
+
line-height: 29px;
|
|
62
|
+
text-align: center;
|
|
63
|
+
-webkit-user-select: none;
|
|
64
|
+
-moz-user-select: none;
|
|
65
|
+
-ms-user-select: none;
|
|
66
|
+
user-select: none; }
|
|
67
|
+
|
|
68
|
+
@media print {
|
|
69
|
+
.govuk-warning-text__icon {
|
|
70
|
+
font-family: sans-serif; } }
|
|
71
|
+
.govuk-warning-text__text {
|
|
72
|
+
display: block;
|
|
73
|
+
padding-left: 50px; }
|
data/lib/govuk_tech_docs.rb
CHANGED
|
@@ -20,6 +20,7 @@ require 'govuk_tech_docs/pages'
|
|
|
20
20
|
require 'govuk_tech_docs/tech_docs_html_renderer'
|
|
21
21
|
require 'govuk_tech_docs/unique_identifier_extension'
|
|
22
22
|
require 'govuk_tech_docs/unique_identifier_generator'
|
|
23
|
+
require 'govuk_tech_docs/warning_text_extension'
|
|
23
24
|
require 'govuk_tech_docs/api_reference/api_reference_extension'
|
|
24
25
|
|
|
25
26
|
module GovukTechDocs
|
|
@@ -58,7 +59,7 @@ module GovukTechDocs
|
|
|
58
59
|
|
|
59
60
|
context.config[:tech_docs] = YAML.load_file('config/tech-docs.yml').with_indifferent_access
|
|
60
61
|
context.activate :unique_identifier
|
|
61
|
-
|
|
62
|
+
context.activate :warning_text
|
|
62
63
|
context.activate :api_reference
|
|
63
64
|
|
|
64
65
|
context.helpers do
|
|
@@ -19,7 +19,13 @@ module GovukTechDocs
|
|
|
19
19
|
end
|
|
20
20
|
|
|
21
21
|
def report_issue_url
|
|
22
|
-
|
|
22
|
+
url = config[:source_urls]&.[](:report_issue_url)
|
|
23
|
+
|
|
24
|
+
if url.nil?
|
|
25
|
+
"#{repo_url}/issues/new?labels=bug&title=Re: '#{current_page.data.title}'&body=Problem with '#{current_page.data.title}' (#{config[:tech_docs][:host]}#{current_page.url})"
|
|
26
|
+
else
|
|
27
|
+
"#{url}?subject=Re: '#{current_page.data.title}'&body=Problem with '#{current_page.data.title}' (#{config[:tech_docs][:host]}#{current_page.url})"
|
|
28
|
+
end
|
|
23
29
|
end
|
|
24
30
|
|
|
25
31
|
def repo_url
|
|
@@ -45,11 +45,21 @@ module GovukTechDocs
|
|
|
45
45
|
# Avoid redirect pages
|
|
46
46
|
next if content.include? "http-equiv=refresh"
|
|
47
47
|
# If this page has children, just print the title and recursively
|
|
48
|
-
# render the children.
|
|
49
|
-
|
|
48
|
+
# render the children. If not, print the heading structure.
|
|
49
|
+
|
|
50
50
|
# We avoid printing the children of the root index.html as it is the
|
|
51
|
-
# parent of every other top level file.
|
|
52
|
-
|
|
51
|
+
# parent of every other top level file. We need to take any custom
|
|
52
|
+
# prefix in to consideration when checking for the root index.html.
|
|
53
|
+
# The prefix may be set with or without a trailing slash: make sure
|
|
54
|
+
# it has one for this comparison check.
|
|
55
|
+
home_url =
|
|
56
|
+
if config[:http_prefix].end_with?("/")
|
|
57
|
+
config[:http_prefix]
|
|
58
|
+
else
|
|
59
|
+
config[:http_prefix] + "/"
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
if resource.children.any? && resource.url != home_url
|
|
53
63
|
output += %{<ul><li><a href="#{resource.url}">#{resource.data.title}</a>\n}
|
|
54
64
|
output += render_page_tree(resource.children, current_page, config, current_page_html)
|
|
55
65
|
output += '</li></ul>'
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module GovukTechDocs
|
|
2
|
+
class WarningTextExtension < Middleman::Extension
|
|
3
|
+
def initialize(app, options_hash = {}, &block)
|
|
4
|
+
super
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
helpers do
|
|
8
|
+
def warning_text(text)
|
|
9
|
+
<<~EOS
|
|
10
|
+
<div class="govuk-warning-text">
|
|
11
|
+
<span class="govuk-warning-text__icon" aria-hidden="true">!</span>
|
|
12
|
+
<strong class="govuk-warning-text__text">
|
|
13
|
+
<span class="govuk-warning-text__assistive">Warning</span>
|
|
14
|
+
#{text}
|
|
15
|
+
</strong>
|
|
16
|
+
</div>
|
|
17
|
+
EOS
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
::Middleman::Extensions.register(:warning_text, GovukTechDocs::WarningTextExtension)
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: govuk_tech_docs
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.8.
|
|
4
|
+
version: 1.8.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Government Digital Service
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2019-
|
|
11
|
+
date: 2019-04-01 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activesupport
|
|
@@ -198,14 +198,14 @@ dependencies:
|
|
|
198
198
|
requirements:
|
|
199
199
|
- - "~>"
|
|
200
200
|
- !ruby/object:Gem::Version
|
|
201
|
-
version:
|
|
201
|
+
version: 2.0.1
|
|
202
202
|
type: :development
|
|
203
203
|
prerelease: false
|
|
204
204
|
version_requirements: !ruby/object:Gem::Requirement
|
|
205
205
|
requirements:
|
|
206
206
|
- - "~>"
|
|
207
207
|
- !ruby/object:Gem::Version
|
|
208
|
-
version:
|
|
208
|
+
version: 2.0.1
|
|
209
209
|
- !ruby/object:Gem::Dependency
|
|
210
210
|
name: rake
|
|
211
211
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -307,7 +307,7 @@ files:
|
|
|
307
307
|
- CHANGELOG.md
|
|
308
308
|
- CONTRIBUTING.md
|
|
309
309
|
- Gemfile
|
|
310
|
-
-
|
|
310
|
+
- LICENCE
|
|
311
311
|
- README.md
|
|
312
312
|
- Rakefile
|
|
313
313
|
- docs/configuration.md
|
|
@@ -390,6 +390,7 @@ files:
|
|
|
390
390
|
- lib/assets/stylesheets/modules/_skip-link.scss
|
|
391
391
|
- lib/assets/stylesheets/modules/_technical-documentation.scss
|
|
392
392
|
- lib/assets/stylesheets/modules/_toc.scss
|
|
393
|
+
- lib/assets/stylesheets/modules/_warning-text.scss
|
|
393
394
|
- lib/assets/stylesheets/palette/_syntax-highlighting.scss
|
|
394
395
|
- lib/assets/stylesheets/utilities/_fonts.scss
|
|
395
396
|
- lib/assets/stylesheets/utilities/_printable.scss
|
|
@@ -418,6 +419,7 @@ files:
|
|
|
418
419
|
- lib/govuk_tech_docs/unique_identifier_extension.rb
|
|
419
420
|
- lib/govuk_tech_docs/unique_identifier_generator.rb
|
|
420
421
|
- lib/govuk_tech_docs/version.rb
|
|
422
|
+
- lib/govuk_tech_docs/warning_text_extension.rb
|
|
421
423
|
- lib/source/api/pages.json.erb
|
|
422
424
|
- lib/source/favicon.ico
|
|
423
425
|
- lib/source/images/anchored-heading-icon-2x.png
|