govuk_publishing_components 71.0.1 → 71.1.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/app/assets/javascripts/govuk_publishing_components/components/contents-list-with-body.js +96 -92
- data/app/assets/javascripts/govuk_publishing_components/lib/govspeak/table-scroll.js +0 -13
- data/app/assets/stylesheets/govuk_publishing_components/components/govspeak/_tables.scss +11 -39
- data/app/views/govuk_publishing_components/components/_metadata.html.erb +17 -2
- data/app/views/govuk_publishing_components/components/docs/metadata.yml +13 -1
- data/config/locales/ar.yml +1 -0
- data/config/locales/az.yml +1 -0
- data/config/locales/be.yml +1 -0
- data/config/locales/bg.yml +1 -0
- data/config/locales/bn.yml +1 -0
- data/config/locales/cs.yml +1 -0
- data/config/locales/cy.yml +1 -0
- data/config/locales/da.yml +1 -0
- data/config/locales/de.yml +1 -0
- data/config/locales/dr.yml +1 -0
- data/config/locales/el.yml +1 -0
- data/config/locales/en.yml +1 -0
- data/config/locales/es-419.yml +1 -0
- data/config/locales/es.yml +1 -0
- data/config/locales/et.yml +1 -0
- data/config/locales/fa.yml +1 -0
- data/config/locales/fi.yml +1 -0
- data/config/locales/fr.yml +1 -0
- data/config/locales/gd.yml +1 -0
- data/config/locales/gu.yml +1 -0
- data/config/locales/he.yml +1 -0
- data/config/locales/hi.yml +1 -0
- data/config/locales/hr.yml +1 -0
- data/config/locales/hu.yml +1 -0
- data/config/locales/hy.yml +1 -0
- data/config/locales/id.yml +1 -0
- data/config/locales/is.yml +1 -0
- data/config/locales/it.yml +1 -0
- data/config/locales/ja.yml +1 -0
- data/config/locales/ka.yml +1 -0
- data/config/locales/kk.yml +1 -0
- data/config/locales/ko.yml +1 -0
- data/config/locales/ku.yml +1 -0
- data/config/locales/ky.yml +1 -0
- data/config/locales/lt.yml +1 -0
- data/config/locales/lv.yml +1 -0
- data/config/locales/ms.yml +1 -0
- data/config/locales/mt.yml +1 -0
- data/config/locales/ne.yml +1 -0
- data/config/locales/nl.yml +1 -0
- data/config/locales/no.yml +1 -0
- data/config/locales/pa-pk.yml +1 -0
- data/config/locales/pa.yml +1 -0
- data/config/locales/pl.yml +1 -0
- data/config/locales/ps.yml +1 -0
- data/config/locales/pt.yml +1 -0
- data/config/locales/ro.yml +1 -0
- data/config/locales/ru.yml +1 -0
- data/config/locales/si.yml +1 -0
- data/config/locales/sk.yml +1 -0
- data/config/locales/sl.yml +1 -0
- data/config/locales/so.yml +1 -0
- data/config/locales/sq.yml +1 -0
- data/config/locales/sr.yml +1 -0
- data/config/locales/sv.yml +1 -0
- data/config/locales/sw.yml +1 -0
- data/config/locales/ta.yml +1 -0
- data/config/locales/th.yml +1 -0
- data/config/locales/ti.yml +1 -0
- data/config/locales/tk.yml +1 -0
- data/config/locales/tr.yml +1 -0
- data/config/locales/uk.yml +1 -0
- data/config/locales/ur.yml +1 -0
- data/config/locales/uz.yml +1 -0
- data/config/locales/vi.yml +1 -0
- data/config/locales/zh-hk.yml +1 -0
- data/config/locales/zh-tw.yml +1 -0
- data/config/locales/zh.yml +1 -0
- data/lib/govuk_publishing_components/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b52ceb254eb609759602cb6bc0e2a6b5db708b5934acd2d533ce0c719da617fb
|
|
4
|
+
data.tar.gz: 6560960dcd97afd22c9a79035cd0342d711ec9495272eba304e7d4ec82a315ae
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d6cb5790d20ba98d55bc3a62481f468fc3b54eea9022c44dc9dbbf7d26571fc83a721c02fbcc7e3fbaa0f7298c4d493874e96a1254574a6c98652186f0fbba3f
|
|
7
|
+
data.tar.gz: 6ecbb506695215fb52444d463c8be8354906b4ee986059ed1929d98840c9d5501ea43918a692b9b78a83af990991ee1d899d8371778d0215624fbe2a9578659c
|
data/app/assets/javascripts/govuk_publishing_components/components/contents-list-with-body.js
CHANGED
|
@@ -1,113 +1,117 @@
|
|
|
1
|
-
/*
|
|
2
|
-
This module will cause a child in the target element to:
|
|
3
|
-
- hide when the top of the target element is visible;
|
|
4
|
-
- stick to the bottom of the window while the parent element is in view;
|
|
5
|
-
- stick to the bottom of the target when the user scrolls past the bottom.
|
|
6
|
-
|
|
7
|
-
Use 'data-module="contents-list-with-body"' to instantiate, and add
|
|
8
|
-
`[data-sticky-element]` to the child you want to position.
|
|
9
|
-
*/
|
|
10
|
-
|
|
1
|
+
/* global IntersectionObserver */
|
|
11
2
|
(function (Modules) {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
this.startPosition = 0
|
|
20
|
-
this.stopPosition = 0
|
|
21
|
-
}
|
|
3
|
+
class ContentsListWithBody {
|
|
4
|
+
/**
|
|
5
|
+
* @param {HTMLElement} $module
|
|
6
|
+
*/
|
|
7
|
+
constructor ($module) {
|
|
8
|
+
/** @type {HTMLElement} */
|
|
9
|
+
this.$module = $module
|
|
22
10
|
|
|
23
|
-
|
|
24
|
-
|
|
11
|
+
/** @type {HTMLElement | null} */
|
|
12
|
+
this.stickyElement = this.$module.querySelector('[data-sticky-element]')
|
|
25
13
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
setInterval(this.checkResize.bind(this), this.interval)
|
|
29
|
-
setInterval(this.checkScroll.bind(this), this.interval)
|
|
30
|
-
this.checkResize()
|
|
31
|
-
this.checkScroll()
|
|
32
|
-
this.stickyElement.classList.add('gem-c-contents-list-with-body__sticky-element--enabled')
|
|
33
|
-
}
|
|
14
|
+
/** @type {HTMLElement | null} */
|
|
15
|
+
this.topSentinel = this.$module.querySelector('.gem-c-contents-list-with-body__list-container')
|
|
34
16
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
height: window.innerHeight,
|
|
38
|
-
width: window.innerWidth
|
|
39
|
-
}
|
|
40
|
-
}
|
|
17
|
+
/** @type {HTMLDivElement | null} */
|
|
18
|
+
this.bottomSentinel = null
|
|
41
19
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
scrollTop: window.scrollY
|
|
45
|
-
}
|
|
46
|
-
}
|
|
20
|
+
/** @type {IntersectionObserver | null} */
|
|
21
|
+
this.topObserver = null
|
|
47
22
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
23
|
+
/** @type {IntersectionObserver | null} */
|
|
24
|
+
this.bottomObserver = null
|
|
51
25
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
26
|
+
/** @type {string} */
|
|
27
|
+
this.enabledClass = 'gem-c-contents-list-with-body__sticky-element--enabled'
|
|
55
28
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
this.hasResized = false
|
|
59
|
-
this.hasScrolled = true
|
|
29
|
+
/** @type {string} */
|
|
30
|
+
this.stuckToWindowClass = 'gem-c-contents-list-with-body__sticky-element--stuck-to-window'
|
|
60
31
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
this.startPosition = this.wrapper.offsetTop
|
|
64
|
-
this.stopPosition = this.wrapper.offsetTop + elementHeight - windowDimensions.height
|
|
32
|
+
/** @type {string} */
|
|
33
|
+
this.hiddenClass = 'gem-c-contents-list-with-body__sticky-element--hidden'
|
|
65
34
|
}
|
|
66
|
-
}
|
|
67
35
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
36
|
+
/**
|
|
37
|
+
* Initialise the contents list with body component
|
|
38
|
+
*/
|
|
39
|
+
init () {
|
|
40
|
+
if (!this.stickyElement || !this.topSentinel) return
|
|
71
41
|
|
|
72
|
-
|
|
42
|
+
// Ensure the sticky element starts hidden before we check for intersection observer support
|
|
43
|
+
this.stickyElement.classList.add(this.hiddenClass)
|
|
73
44
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
}
|
|
45
|
+
if (!('IntersectionObserver' in window)) {
|
|
46
|
+
return
|
|
47
|
+
}
|
|
78
48
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
this.show()
|
|
83
|
-
} else {
|
|
84
|
-
this.hide()
|
|
49
|
+
this.stickyElement.classList.add(this.enabledClass)
|
|
50
|
+
this.createBottomSentinel(this.stickyElement)
|
|
51
|
+
this.setupObservers(this.stickyElement)
|
|
85
52
|
}
|
|
86
|
-
}
|
|
87
53
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
54
|
+
/**
|
|
55
|
+
* Create and insert a bottom sentinel tripwire onto the page before the sticky element.
|
|
56
|
+
* This is used to determine when the sticky element should be docked to the bottom of
|
|
57
|
+
* the parent container instead of sticking to the window.
|
|
58
|
+
*
|
|
59
|
+
* @param {HTMLElement} stickyElement
|
|
60
|
+
*/
|
|
61
|
+
createBottomSentinel (stickyElement) {
|
|
62
|
+
const stickyElementParent = stickyElement.parentElement
|
|
63
|
+
if (!stickyElementParent) return
|
|
64
|
+
|
|
65
|
+
this.bottomSentinel = document.createElement('div')
|
|
66
|
+
this.bottomSentinel.className = 'gem-c-contents-list-with-body__bottom-sentinel'
|
|
67
|
+
this.bottomSentinel.setAttribute('aria-hidden', 'true')
|
|
68
|
+
this.bottomSentinel.style.height = '1px'
|
|
69
|
+
this.bottomSentinel.style.width = '100%'
|
|
70
|
+
this.bottomSentinel.style.pointerEvents = 'none'
|
|
71
|
+
this.bottomSentinel.style.visibility = 'hidden'
|
|
72
|
+
|
|
73
|
+
stickyElementParent.insertBefore(this.bottomSentinel, stickyElement)
|
|
94
74
|
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
ContentsListWithBody.prototype.stickToWindow = function () {
|
|
98
|
-
this.stickyElement.classList.add('gem-c-contents-list-with-body__sticky-element--stuck-to-window')
|
|
99
|
-
}
|
|
100
75
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
76
|
+
/**
|
|
77
|
+
* Set up IntersectionObservers to monitor top and bottom boundaries
|
|
78
|
+
*
|
|
79
|
+
* @param {HTMLElement} stickyElement
|
|
80
|
+
*/
|
|
81
|
+
setupObservers (stickyElement) {
|
|
82
|
+
if (!this.topSentinel || !this.bottomSentinel) return
|
|
83
|
+
|
|
84
|
+
this.topObserver = new IntersectionObserver((entries) => {
|
|
85
|
+
entries.forEach((entry) => {
|
|
86
|
+
// Handle showing/hiding the sticky element based on the contents block position.
|
|
87
|
+
// !entry.isIntersecting: Element is completely outside the viewport
|
|
88
|
+
// entry.boundingClientRect.top < 0: Coordinates become negative when scrolled off the top of the screen
|
|
89
|
+
// Required for initial load (e.g. mobile with tall header content) where isIntersecting is false
|
|
90
|
+
// because the contents have not yet entered the viewport from below
|
|
91
|
+
const isPastContents = !entry.isIntersecting && entry.boundingClientRect.top < 0
|
|
92
|
+
|
|
93
|
+
isPastContents
|
|
94
|
+
? stickyElement.classList.remove(this.hiddenClass)
|
|
95
|
+
: stickyElement.classList.add(this.hiddenClass)
|
|
96
|
+
})
|
|
97
|
+
})
|
|
98
|
+
|
|
99
|
+
this.bottomObserver = new IntersectionObserver((entries) => {
|
|
100
|
+
entries.forEach((entry) => {
|
|
101
|
+
// Handle sticking to the viewport or docking to the bottom of the parent container based on the bottom sentinel position.
|
|
102
|
+
// entry.boundingClientRect.top <= window.innerHeight: True when the sentinel has reached the bottom of the screen
|
|
103
|
+
// or scrolled past above it (e.g. deep into in the footer)
|
|
104
|
+
const isAtBottom = entry.boundingClientRect.top <= window.innerHeight
|
|
105
|
+
|
|
106
|
+
isAtBottom
|
|
107
|
+
? stickyElement.classList.remove(this.stuckToWindowClass)
|
|
108
|
+
: stickyElement.classList.add(this.stuckToWindowClass)
|
|
109
|
+
})
|
|
110
|
+
})
|
|
111
|
+
|
|
112
|
+
this.topObserver.observe(this.topSentinel)
|
|
113
|
+
this.bottomObserver.observe(this.bottomSentinel)
|
|
114
|
+
}
|
|
111
115
|
}
|
|
112
116
|
|
|
113
117
|
Modules.ContentsListWithBody = ContentsListWithBody
|
|
@@ -75,7 +75,6 @@
|
|
|
75
75
|
scrollBar.append(scrollBarChild)
|
|
76
76
|
table.before(scrollBar)
|
|
77
77
|
scrollBar.scrollLeft = table.scrollLeft
|
|
78
|
-
this.updateLeftRight(table)
|
|
79
78
|
|
|
80
79
|
scrollBar.onscroll = () => {
|
|
81
80
|
if (this.preventScrolling) {
|
|
@@ -84,7 +83,6 @@
|
|
|
84
83
|
}
|
|
85
84
|
this.preventScrolling = true
|
|
86
85
|
table.scrollLeft = scrollBar.scrollLeft
|
|
87
|
-
this.updateLeftRight(table)
|
|
88
86
|
}
|
|
89
87
|
|
|
90
88
|
table.onscroll = () => {
|
|
@@ -94,21 +92,10 @@
|
|
|
94
92
|
}
|
|
95
93
|
this.preventScrolling = true
|
|
96
94
|
scrollBar.scrollLeft = table.scrollLeft
|
|
97
|
-
this.updateLeftRight(table)
|
|
98
95
|
}
|
|
99
96
|
})
|
|
100
97
|
}
|
|
101
98
|
|
|
102
|
-
TableScroll.prototype.updateLeftRight = function (table) {
|
|
103
|
-
if ((table.scrollWidth - table.scrollLeft) < (table.offsetWidth + 1)) {
|
|
104
|
-
table.parentElement.className = 'tablewrapper tablewrapper--active tablewrapper--end'
|
|
105
|
-
} else if (table.scrollLeft < 1) {
|
|
106
|
-
table.parentElement.className = 'tablewrapper tablewrapper--active tablewrapper--start'
|
|
107
|
-
} else {
|
|
108
|
-
table.parentElement.className = 'tablewrapper tablewrapper--active'
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
|
|
112
99
|
TableScroll.prototype.destroyElements = function () {
|
|
113
100
|
const scrollBars = this.element.querySelectorAll('.govspeak-table-scrollbar')
|
|
114
101
|
scrollBars.forEach(bar => {
|
|
@@ -56,50 +56,22 @@
|
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
.tablewrapper {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
bottom: 20px;
|
|
70
|
-
background: rgb(0, 0, 0, 0.1);
|
|
71
|
-
border-color: $govuk-border-colour;
|
|
72
|
-
border-width: 5px;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
&::before {
|
|
76
|
-
left: 0;
|
|
77
|
-
border-left-style: solid;
|
|
78
|
-
border-radius: 0 15px 15px 0;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
&::after {
|
|
82
|
-
right: 0;
|
|
83
|
-
border-right-style: solid;
|
|
84
|
-
border-radius: 15px 0 0 15px;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
.tablewrapper--start {
|
|
89
|
-
&::before {
|
|
90
|
-
display: none;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
.tablewrapper--end {
|
|
95
|
-
&::after {
|
|
96
|
-
display: none;
|
|
59
|
+
table {
|
|
60
|
+
background:
|
|
61
|
+
linear-gradient(90deg, govuk-functional-colour('body-background') 30%, rgb(255, 255, 255, 0)), // this covers the left
|
|
62
|
+
linear-gradient(90deg, rgb(255,255,255,0), govuk-functional-colour('body-background') 70%) 100% 100%, // this covers the right
|
|
63
|
+
linear-gradient(90deg, rgb(0, 0, 0, 0.2), rgb(255, 255, 255, 0)), // this should show when you can scroll left
|
|
64
|
+
linear-gradient(90deg, rgb(255, 255, 255, 0), rgb(0, 0, 0, 0.2)) 100% 100%; // this should show when you can scroll right
|
|
65
|
+
background-repeat: no-repeat;
|
|
66
|
+
background-color: govuk-functional-colour('body-background');
|
|
67
|
+
background-size: 50px 100%, 50px 100%, 14px 100%, 14px 100%;
|
|
68
|
+
background-attachment: local, local, scroll, scroll;
|
|
97
69
|
}
|
|
98
70
|
}
|
|
99
71
|
|
|
100
72
|
.govspeak-table-scrollbar {
|
|
101
73
|
position: sticky;
|
|
102
|
-
background:
|
|
74
|
+
background: govuk-functional-colour('body-background');
|
|
103
75
|
z-index: 1;
|
|
104
76
|
top: 0;
|
|
105
77
|
overflow-x: scroll;
|
|
@@ -23,7 +23,6 @@
|
|
|
23
23
|
component_helper.add_class("gem-c-metadata")
|
|
24
24
|
component_helper.add_class("direction-#{direction}") if local_assigns.include?(:direction)
|
|
25
25
|
component_helper.add_class("gem-c-metadata--border-top") if border_top
|
|
26
|
-
component_helper.set_id("full-publication-update-history") if page_history.any?
|
|
27
26
|
|
|
28
27
|
if inverse
|
|
29
28
|
component_helper.add_class("gem-c-metadata--inverse")
|
|
@@ -38,6 +37,12 @@
|
|
|
38
37
|
type: "content history",
|
|
39
38
|
section: "Top",
|
|
40
39
|
}.to_json unless disable_ga4
|
|
40
|
+
see_all_link_ga4_object = {
|
|
41
|
+
event_name: "navigation",
|
|
42
|
+
type: "content history",
|
|
43
|
+
section: "Top",
|
|
44
|
+
index_section: 1,
|
|
45
|
+
}.to_json unless disable_ga4
|
|
41
46
|
|
|
42
47
|
render_component = true if from.any? || part_of.any? || history || first_published || last_updated || page_history.any? || other
|
|
43
48
|
%>
|
|
@@ -78,6 +83,16 @@
|
|
|
78
83
|
<dt class="gem-c-metadata__term"><%= t("components.metadata.last_updated") %>:</dt>
|
|
79
84
|
<dd class="gem-c-metadata__definition">
|
|
80
85
|
<%= last_updated %>
|
|
86
|
+
<% if local_assigns.include?(:see_updates_link) %>
|
|
87
|
+
—
|
|
88
|
+
<a href="#full-publication-update-history" class="govuk-!-display-none-print"
|
|
89
|
+
<% unless disable_ga4 %>
|
|
90
|
+
data-module="ga4-link-tracker"
|
|
91
|
+
data-ga4-link="<%= see_all_link_ga4_object %>"
|
|
92
|
+
<% end %>>
|
|
93
|
+
<%= t("components.metadata.see_all_updates") %>
|
|
94
|
+
</a>
|
|
95
|
+
<% end %>
|
|
81
96
|
<% if page_history.any? %>
|
|
82
97
|
<div class="gem-c-metadata__details-wrapper">
|
|
83
98
|
<%= render "govuk_publishing_components/components/details", {
|
|
@@ -87,7 +102,7 @@
|
|
|
87
102
|
ga4_attributes: page_history_details_ga4,
|
|
88
103
|
disable_ga4: disable_ga4,
|
|
89
104
|
} do %>
|
|
90
|
-
<ol class="gem-c-metadata__change-history">
|
|
105
|
+
<ol class="gem-c-metadata__change-history" id="full-publication-update-history">
|
|
91
106
|
<% page_history.each do |change| %>
|
|
92
107
|
<li class="gem-c-metadata__change-history-item">
|
|
93
108
|
<time class="gem-c-metadata__change-date" datetime="<%= change[:timestamp] %>"><%= change[:display_time] %></time>
|
|
@@ -26,10 +26,22 @@ examples:
|
|
|
26
26
|
data:
|
|
27
27
|
border_top: true
|
|
28
28
|
from: <a href='/government/organisations/ministry-of-defence'>Ministry of Defence</a>
|
|
29
|
-
|
|
29
|
+
published_and_last_updated:
|
|
30
30
|
data:
|
|
31
31
|
first_published: 14 June 2014
|
|
32
32
|
last_updated: 10 September 2015
|
|
33
|
+
last_updated_and_link_to_see_details:
|
|
34
|
+
description: |
|
|
35
|
+
If a `last_updated` value exists and `see_updates_link` is set to true, a "See all updates" link will be shown.
|
|
36
|
+
|
|
37
|
+
The link's href will be set to `#full-publication-update-history` to match the ID of the page history displayed in a second metadata component at the bottom of the page (for example on [Set up a Driver CPC training centre](https://www.gov.uk/guidance/set-up-a-driver-cpc-training-centre)).
|
|
38
|
+
|
|
39
|
+
Clicking on this link will jump to the page history at the bottom of the page. Because the ID is contained within a details element, it will also automatically open that element so that the page history is visible.
|
|
40
|
+
|
|
41
|
+
On this component guide page, clicking the link will jump to the example below, and open the details element there.
|
|
42
|
+
data:
|
|
43
|
+
last_updated: 10 September 2015
|
|
44
|
+
see_updates_link: true
|
|
33
45
|
display_page_history:
|
|
34
46
|
description: |
|
|
35
47
|
This will set up an expandable section on the page, with a top border, to let users toggle the display of the page history. It also includes a hidden H2 heading of 'Updates to this page'. This heading will not be included if one is passed to the component using the `title` option.
|
data/config/locales/ar.yml
CHANGED
data/config/locales/az.yml
CHANGED
data/config/locales/be.yml
CHANGED
data/config/locales/bg.yml
CHANGED
|
@@ -161,6 +161,7 @@ bg:
|
|
|
161
161
|
last_updated: Последно актуализирани
|
|
162
162
|
part_of: Част от
|
|
163
163
|
published: Публикуван
|
|
164
|
+
see_all_updates: Вижте всички актуализации
|
|
164
165
|
show_all_updates: показване на всички актуализации
|
|
165
166
|
modal_dialogue:
|
|
166
167
|
close_modal: Затваряне на модалния диалог
|
data/config/locales/bn.yml
CHANGED
data/config/locales/cs.yml
CHANGED
data/config/locales/cy.yml
CHANGED
data/config/locales/da.yml
CHANGED
data/config/locales/de.yml
CHANGED
data/config/locales/dr.yml
CHANGED
data/config/locales/el.yml
CHANGED
|
@@ -157,6 +157,7 @@ el:
|
|
|
157
157
|
last_updated: Τελευταία ενημέρωση
|
|
158
158
|
part_of: Μέρος του
|
|
159
159
|
published: Δημοσιεύθηκε
|
|
160
|
+
see_all_updates: Δείτε όλες τις ενημερώσεις
|
|
160
161
|
show_all_updates: εμφάνιση όλων των ενημερώσεων
|
|
161
162
|
modal_dialogue:
|
|
162
163
|
close_modal: Κλείσιμο παράθυρου διαλόγου
|
data/config/locales/en.yml
CHANGED
data/config/locales/es-419.yml
CHANGED
data/config/locales/es.yml
CHANGED
|
@@ -157,6 +157,7 @@ es:
|
|
|
157
157
|
last_updated: Última actualización
|
|
158
158
|
part_of: Parte de
|
|
159
159
|
published: Publicado
|
|
160
|
+
see_all_updates: Ver todas las actualizaciones
|
|
160
161
|
show_all_updates: mostrar todas las actualizaciones
|
|
161
162
|
modal_dialogue:
|
|
162
163
|
close_modal: Cierre el cuadro de diálogo modal
|
data/config/locales/et.yml
CHANGED
data/config/locales/fa.yml
CHANGED
data/config/locales/fi.yml
CHANGED
data/config/locales/fr.yml
CHANGED
|
@@ -157,6 +157,7 @@ fr:
|
|
|
157
157
|
last_updated: Dernière mise à jour
|
|
158
158
|
part_of: Fait partie de
|
|
159
159
|
published: Publié
|
|
160
|
+
see_all_updates: Afficher toutes les mises à jour
|
|
160
161
|
show_all_updates: afficher toutes les mises à jour
|
|
161
162
|
modal_dialogue:
|
|
162
163
|
close_modal: Fermer le dialogue modal
|
data/config/locales/gd.yml
CHANGED
data/config/locales/gu.yml
CHANGED
data/config/locales/he.yml
CHANGED
data/config/locales/hi.yml
CHANGED
data/config/locales/hr.yml
CHANGED
data/config/locales/hu.yml
CHANGED
|
@@ -160,6 +160,7 @@ hu:
|
|
|
160
160
|
last_updated: Utolsó frissítés
|
|
161
161
|
part_of: 'Része a következőnek:'
|
|
162
162
|
published: Közzététel időpontja
|
|
163
|
+
see_all_updates: Minden frissítés megtekintése
|
|
163
164
|
show_all_updates: minden frissítés megjelenítése
|
|
164
165
|
modal_dialogue:
|
|
165
166
|
close_modal: Modális párbeszédpanel bezárása
|
data/config/locales/hy.yml
CHANGED
data/config/locales/id.yml
CHANGED
data/config/locales/is.yml
CHANGED
data/config/locales/it.yml
CHANGED
data/config/locales/ja.yml
CHANGED
data/config/locales/ka.yml
CHANGED
data/config/locales/kk.yml
CHANGED
data/config/locales/ko.yml
CHANGED
data/config/locales/ku.yml
CHANGED
data/config/locales/ky.yml
CHANGED
data/config/locales/lt.yml
CHANGED
|
@@ -162,6 +162,7 @@ lt:
|
|
|
162
162
|
last_updated: Paskutinį kartą naujinta
|
|
163
163
|
part_of: Dalis
|
|
164
164
|
published: Publikuota
|
|
165
|
+
see_all_updates: Matyti visą naujausią informaciją
|
|
165
166
|
show_all_updates: rodyti visą naują informaciją
|
|
166
167
|
modal_dialogue:
|
|
167
168
|
close_modal: Uždaryti modalinį dialogo langą
|
data/config/locales/lv.yml
CHANGED
data/config/locales/ms.yml
CHANGED
data/config/locales/mt.yml
CHANGED
data/config/locales/ne.yml
CHANGED
data/config/locales/nl.yml
CHANGED
data/config/locales/no.yml
CHANGED
data/config/locales/pa-pk.yml
CHANGED
|
@@ -153,6 +153,7 @@ pa-pk:
|
|
|
153
153
|
last_updated: آخری دفعہ کدوں نویں گل دسی سی
|
|
154
154
|
part_of: ایندا حصہ
|
|
155
155
|
published: شائع کیتا گیا
|
|
156
|
+
see_all_updates: ساریاں نویاں چیزاں دیکھو
|
|
156
157
|
show_all_updates: ساری تازہ ترین صورتِ حال وکھاؤ
|
|
157
158
|
modal_dialogue:
|
|
158
159
|
close_modal: موڈیل ڈائیلاگ نوں بند کرو
|
data/config/locales/pa.yml
CHANGED
data/config/locales/pl.yml
CHANGED
data/config/locales/ps.yml
CHANGED
data/config/locales/pt.yml
CHANGED
data/config/locales/ro.yml
CHANGED
data/config/locales/ru.yml
CHANGED
|
@@ -161,6 +161,7 @@ ru:
|
|
|
161
161
|
last_updated: Последнее обновление
|
|
162
162
|
part_of: Является частью
|
|
163
163
|
published: Опубликовано
|
|
164
|
+
see_all_updates: Посмотреть все обновления
|
|
164
165
|
show_all_updates: Показать всю поледнюю информацию
|
|
165
166
|
modal_dialogue:
|
|
166
167
|
close_modal: Закрыть модальное диалоговое окно
|
data/config/locales/si.yml
CHANGED
data/config/locales/sk.yml
CHANGED
data/config/locales/sl.yml
CHANGED
data/config/locales/so.yml
CHANGED
|
@@ -157,6 +157,7 @@ so:
|
|
|
157
157
|
last_updated: Cusboonaysiintii ugu dambaysay
|
|
158
158
|
part_of: Ka qeyba
|
|
159
159
|
published: Daabacaada
|
|
160
|
+
see_all_updates: Eeg dhamaan cusboonaysiinaha
|
|
160
161
|
show_all_updates: muuji dhamaan cusboonaysiinaha
|
|
161
162
|
modal_dialogue:
|
|
162
163
|
close_modal: Kusoo dhawoow wada hadal dhex dhexaad ah
|
data/config/locales/sq.yml
CHANGED
data/config/locales/sr.yml
CHANGED
data/config/locales/sv.yml
CHANGED
data/config/locales/sw.yml
CHANGED
data/config/locales/ta.yml
CHANGED
|
@@ -158,6 +158,7 @@ ta:
|
|
|
158
158
|
last_updated: கடைசியாகப் புதுப்பிக்கப்பட்டது
|
|
159
159
|
part_of: பகுதி
|
|
160
160
|
published: வெளியிடப்பட்டது
|
|
161
|
+
see_all_updates: அனைத்து புதுப்பித்தல்களையும் பார்
|
|
161
162
|
show_all_updates: அனைத்து புதுப்பித்தல்களையும் காட்டு
|
|
162
163
|
modal_dialogue:
|
|
163
164
|
close_modal: மாதிரி உரையாடலை மூடு
|
data/config/locales/th.yml
CHANGED
data/config/locales/ti.yml
CHANGED
data/config/locales/tk.yml
CHANGED
data/config/locales/tr.yml
CHANGED
data/config/locales/uk.yml
CHANGED
data/config/locales/ur.yml
CHANGED
data/config/locales/uz.yml
CHANGED
data/config/locales/vi.yml
CHANGED
|
@@ -156,6 +156,7 @@ vi:
|
|
|
156
156
|
last_updated: Lần cập nhật gần đây nhất
|
|
157
157
|
part_of: Một phần của
|
|
158
158
|
published: Đã xuất bản
|
|
159
|
+
see_all_updates: Xem tất cả nội dung cập nhật
|
|
159
160
|
show_all_updates: hiển thị tất cả nội dung cập nhật
|
|
160
161
|
modal_dialogue:
|
|
161
162
|
close_modal: Đóng đối thoại phương thức
|
data/config/locales/zh-hk.yml
CHANGED
data/config/locales/zh-tw.yml
CHANGED
data/config/locales/zh.yml
CHANGED