oc 0.50.13 → 0.50.14
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.
- package/CHANGELOG.md +3 -0
- package/dist/components/oc-client/_package/package.json +4 -4
- package/dist/components/oc-client/_package/server.js +1 -1
- package/dist/components/oc-client/package.json +1 -1
- package/dist/registry/views/static/index.d.ts +1 -1
- package/dist/registry/views/static/index.js +100 -18
- package/dist/registry/views/static/style.d.ts +1 -1
- package/dist/registry/views/static/style.js +99 -28
- package/logintervals.md +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "oc-client",
|
|
3
3
|
"description": "The OpenComponents client-side javascript client",
|
|
4
|
-
"version": "0.50.
|
|
4
|
+
"version": "0.50.14",
|
|
5
5
|
"repository": "https://github.com/opencomponents/oc/tree/master/components/oc-client",
|
|
6
6
|
"author": "Matteo Figus <matteofigus@gmail.com>",
|
|
7
7
|
"oc": {
|
|
@@ -22,14 +22,14 @@
|
|
|
22
22
|
],
|
|
23
23
|
"dataProvider": {
|
|
24
24
|
"type": "node.js",
|
|
25
|
-
"hashKey": "
|
|
25
|
+
"hashKey": "534b22777fee404eba447989496b25c6113e872d",
|
|
26
26
|
"src": "server.js",
|
|
27
27
|
"size": 613
|
|
28
28
|
}
|
|
29
29
|
},
|
|
30
|
-
"version": "0.50.
|
|
30
|
+
"version": "0.50.14",
|
|
31
31
|
"packaged": true,
|
|
32
|
-
"date":
|
|
32
|
+
"date": 1753434833154
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"oc-template-es6-compiler": "^1.0.1"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=(t,s)=>{const{staticPath:e,templates:a}=t;return s(null,{staticPath:e,templates:a})},o=(t,s)=>{r(t,(e,a)=>{if(e)return s(e);if(a==null)return s(null,{__oc_emptyResponse:!0});const n=t.action?a:Object.assign({},a,{_staticPath:t.staticPath,_baseUrl:t.baseUrl,_componentName:"oc-client",_componentVersion:"0.50.
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=(t,s)=>{const{staticPath:e,templates:a}=t;return s(null,{staticPath:e,templates:a})},o=(t,s)=>{r(t,(e,a)=>{if(e)return s(e);if(a==null)return s(null,{__oc_emptyResponse:!0});const n=t.action?a:Object.assign({},a,{_staticPath:t.staticPath,_baseUrl:t.baseUrl,_componentName:"oc-client",_componentVersion:"0.50.14"}),c=t.staticPath.indexOf("http")===0?t.staticPath:"https:"+t.staticPath;return s(null,Object.assign({},{component:{key:"8b7545cba94f7c029b9d46108bfe8e4e6040ea09",src:c+"template.js",props:n}}))})};exports.data=o;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "oc-client",
|
|
3
3
|
"description": "The OpenComponents client-side javascript client",
|
|
4
|
-
"version": "0.50.
|
|
4
|
+
"version": "0.50.14",
|
|
5
5
|
"repository": "https://github.com/opencomponents/oc/tree/master/components/oc-client",
|
|
6
6
|
"author": "Matteo Figus <matteofigus@gmail.com>",
|
|
7
7
|
"oc": {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: "'use strict';\n\nvar oc = oc || {};\noc.cmd = oc.cmd || [];\n\noc.cmd.push(function() {\n var componentsListChanged = function() {\n $('.componentRow').removeClass('hide');\n var s = $('.search-filter').val(),\n a = $('.author-filter').val(),\n r = new RegExp(s),\n ar = new RegExp(a, 'i'),\n selectedCheckboxes = $('input[type=checkbox]:checked'),\n hiddenStates = [],\n hidden = 0,\n i;\n\n for (i = 0; i < selectedCheckboxes.length; i++) {\n hiddenStates.push($(selectedCheckboxes[i]).attr('name'));\n }\n\n for (i = 0; i < componentsList.length; i++) {\n var matches = !s || !!componentsList[i].name.match(r),\n matchesAuthor =\n !a ||\n (componentsList[i].author.name &&\n !!componentsList[i].author.name.match(ar)),\n selector = $('#component-' + componentsList[i].name),\n isHidden = false;\n\n for (var j = 0; j < hiddenStates.length; j++) {\n if (componentsList[i].state.toLowerCase() === hiddenStates[j]) {\n isHidden = true;\n }\n }\n\n var show = matches && matchesAuthor && !isHidden;\n selector[show ? 'removeClass' : 'addClass']('hide');\n if (!show) {\n hidden += 1;\n }\n }\n\n var totalShowing = componentsList.length - hidden,\n result = 'Showing ' + totalShowing + ' components';\n\n if (s) {\n result += ' matching search query: \"' + s + '\"';\n if (a) {\n result += ' and';\n }\n }\n if (a) {\n result += ' matching author query: \"' + a + '\"';\n }\n\n $('.componentRow.header .title').text(result);\n\n return false;\n };\n\n var
|
|
1
|
+
declare const _default: "'use strict';\n\nvar oc = oc || {};\noc.cmd = oc.cmd || [];\n\noc.cmd.push(function() {\n var componentsListChanged = function() {\n $('.componentRow').removeClass('hide');\n var s = $('.search-filter').val(),\n a = $('.author-filter').val(),\n r = new RegExp(s),\n ar = new RegExp(a, 'i'),\n selectedCheckboxes = $('input[type=checkbox]:checked'),\n hiddenStates = [],\n hidden = 0,\n i;\n\n for (i = 0; i < selectedCheckboxes.length; i++) {\n hiddenStates.push($(selectedCheckboxes[i]).attr('name'));\n }\n\n for (i = 0; i < componentsList.length; i++) {\n var matches = !s || !!componentsList[i].name.match(r),\n matchesAuthor =\n !a ||\n (componentsList[i].author.name &&\n !!componentsList[i].author.name.match(ar)),\n selector = $('#component-' + componentsList[i].name),\n isHidden = false;\n\n for (var j = 0; j < hiddenStates.length; j++) {\n if (componentsList[i].state.toLowerCase() === hiddenStates[j]) {\n isHidden = true;\n }\n }\n\n var show = matches && matchesAuthor && !isHidden;\n selector[show ? 'removeClass' : 'addClass']('hide');\n if (!show) {\n hidden += 1;\n }\n }\n\n var totalShowing = componentsList.length - hidden,\n result = 'Showing ' + totalShowing + ' components';\n\n if (s) {\n result += ' matching search query: \"' + s + '\"';\n if (a) {\n result += ' and';\n }\n }\n if (a) {\n result += ' matching author query: \"' + a + '\"';\n }\n\n $('.componentRow.header .title').text(result);\n\n return false;\n };\n\n var historyData = [];\n var historyRenderedCount = 0;\n var historyBatchSize = 50; // Number of items to render per batch\n var isLoadingMore = false;\n\n var renderHistoryBatch = function() {\n if (historyRenderedCount >= historyData.length || isLoadingMore) {\n return;\n }\n\n isLoadingMore = true;\n var historyContent = $('#history-content');\n var batchEnd = Math.min(historyRenderedCount + historyBatchSize, historyData.length);\n var batchHtml = '';\n\n for (var i = historyRenderedCount; i < batchEnd; i++) {\n var item = historyData[i];\n var templateSizeText = item.templateSize ? \n ' [' + Math.round(item.templateSize / 1024) + ' kb]' : '';\n \n batchHtml += '<a href=\"' + item.name + '/' + item.version + '/~info\">' +\n '<div class=\"componentRow row table\">' +\n '<p class=\"release\">' +\n item.publishDate + ' - Published ' + item.name + '@' + item.version +\n templateSizeText +\n '</p>' +\n '</div>' +\n '</a>';\n }\n\n // Append new batch to existing content\n historyContent.append(batchHtml);\n historyRenderedCount = batchEnd;\n \n // Add loading indicator if there are more items\n if (historyRenderedCount < historyData.length) {\n historyContent.append('<div id=\"history-loading-more\" class=\"loading-more\">Loading more...</div>');\n }\n \n isLoadingMore = false;\n };\n\n var setupHistoryScrollListener = function() {\n var historyContainer = $('#components-history');\n var checkScroll = function() {\n if (historyRenderedCount >= historyData.length) {\n return;\n }\n\n var containerTop = historyContainer.offset().top;\n var containerHeight = historyContainer.outerHeight();\n var scrollTop = $(window).scrollTop();\n var windowHeight = $(window).height();\n \n // Check if user scrolled close to the bottom of the history container\n var distanceFromBottom = (containerTop + containerHeight) - (scrollTop + windowHeight);\n \n if (distanceFromBottom < 200) { // Load more when 200px from bottom\n $('#history-loading-more').remove();\n renderHistoryBatch();\n }\n };\n\n $(window).on('scroll.history', checkScroll);\n \n // Also check on resize\n $(window).on('resize.history', checkScroll);\n };\n\n var loadComponentsHistory = function() {\n var historyLoader = $('#history-loader');\n var historyContent = $('#history-content');\n var historyError = $('#history-error');\n\n // Show loader\n historyLoader.show();\n historyContent.hide();\n historyError.hide();\n\n // Reset state\n historyData = [];\n historyRenderedCount = 0;\n isLoadingMore = false;\n\n // Remove any existing scroll listeners\n $(window).off('scroll.history resize.history');\n\n // Fetch history data\n fetch('~registry/history')\n .then(function(response) {\n if (!response.ok) {\n throw new Error('Failed to fetch history');\n }\n return response.json();\n })\n .then(function(data) {\n historyData = data.componentsHistory || [];\n \n // Clear content and show container\n historyContent.empty();\n historyLoader.hide();\n historyContent.show();\n \n if (historyData.length === 0) {\n historyContent.html('<p style=\"text-align: center; color: #64748b; padding: 2em;\">No components history available.</p>');\n return;\n }\n\n // Render first batch\n renderHistoryBatch();\n \n // Setup scroll listener for infinite loading\n setupHistoryScrollListener();\n })\n .catch(function(error) {\n console.error('Error loading components history:', error);\n historyLoader.hide();\n historyError.show();\n });\n };\n\n var isHistoryLoaded = false;\n\n var initialiseTabs = function() {\n var selectItem = function(target) {\n var $target = $(target);\n $('.box').hide();\n $target.show();\n $('#menuList a').removeClass('selected');\n $('#menuList a[href=\"' + target + '\"]').addClass('selected');\n \n // Clean up scroll listeners when leaving history tab\n if (target !== '#components-history') {\n $(window).off('scroll.history resize.history');\n }\n \n // Load history data when history tab is selected for the first time\n if (target === '#components-history' && !isHistoryLoaded) {\n loadComponentsHistory();\n isHistoryLoaded = true;\n }\n // Re-enable scroll listeners when returning to history tab\n else if (target === '#components-history' && isHistoryLoaded && historyRenderedCount < historyData.length) {\n setupHistoryScrollListener();\n }\n };\n\n var hash = location.href.split('#')[1] || '';\n var isHashValid = hash && $('#' + hash);\n var target = isHashValid ? '#' + hash : $($('#menuList a')[0]).attr('href');\n selectItem(target);\n\n $('#menuList a').click(function() {\n selectItem($(this).attr('href'));\n });\n };\n\n $('#filter-components')\n .submit(componentsListChanged)\n .keyup(componentsListChanged);\n $('#filter-components input[type=checkbox]').change(componentsListChanged);\n\n if (q) {\n $('.search').val(q);\n }\n\n componentsListChanged();\n initialiseTabs();\n});";
|
|
2
2
|
export default _default;
|
|
@@ -61,6 +61,75 @@ oc.cmd.push(function() {
|
|
|
61
61
|
return false;
|
|
62
62
|
};
|
|
63
63
|
|
|
64
|
+
var historyData = [];
|
|
65
|
+
var historyRenderedCount = 0;
|
|
66
|
+
var historyBatchSize = 50; // Number of items to render per batch
|
|
67
|
+
var isLoadingMore = false;
|
|
68
|
+
|
|
69
|
+
var renderHistoryBatch = function() {
|
|
70
|
+
if (historyRenderedCount >= historyData.length || isLoadingMore) {
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
isLoadingMore = true;
|
|
75
|
+
var historyContent = $('#history-content');
|
|
76
|
+
var batchEnd = Math.min(historyRenderedCount + historyBatchSize, historyData.length);
|
|
77
|
+
var batchHtml = '';
|
|
78
|
+
|
|
79
|
+
for (var i = historyRenderedCount; i < batchEnd; i++) {
|
|
80
|
+
var item = historyData[i];
|
|
81
|
+
var templateSizeText = item.templateSize ?
|
|
82
|
+
' [' + Math.round(item.templateSize / 1024) + ' kb]' : '';
|
|
83
|
+
|
|
84
|
+
batchHtml += '<a href="' + item.name + '/' + item.version + '/~info">' +
|
|
85
|
+
'<div class="componentRow row table">' +
|
|
86
|
+
'<p class="release">' +
|
|
87
|
+
item.publishDate + ' - Published ' + item.name + '@' + item.version +
|
|
88
|
+
templateSizeText +
|
|
89
|
+
'</p>' +
|
|
90
|
+
'</div>' +
|
|
91
|
+
'</a>';
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
// Append new batch to existing content
|
|
95
|
+
historyContent.append(batchHtml);
|
|
96
|
+
historyRenderedCount = batchEnd;
|
|
97
|
+
|
|
98
|
+
// Add loading indicator if there are more items
|
|
99
|
+
if (historyRenderedCount < historyData.length) {
|
|
100
|
+
historyContent.append('<div id="history-loading-more" class="loading-more">Loading more...</div>');
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
isLoadingMore = false;
|
|
104
|
+
};
|
|
105
|
+
|
|
106
|
+
var setupHistoryScrollListener = function() {
|
|
107
|
+
var historyContainer = $('#components-history');
|
|
108
|
+
var checkScroll = function() {
|
|
109
|
+
if (historyRenderedCount >= historyData.length) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
var containerTop = historyContainer.offset().top;
|
|
114
|
+
var containerHeight = historyContainer.outerHeight();
|
|
115
|
+
var scrollTop = $(window).scrollTop();
|
|
116
|
+
var windowHeight = $(window).height();
|
|
117
|
+
|
|
118
|
+
// Check if user scrolled close to the bottom of the history container
|
|
119
|
+
var distanceFromBottom = (containerTop + containerHeight) - (scrollTop + windowHeight);
|
|
120
|
+
|
|
121
|
+
if (distanceFromBottom < 200) { // Load more when 200px from bottom
|
|
122
|
+
$('#history-loading-more').remove();
|
|
123
|
+
renderHistoryBatch();
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
$(window).on('scroll.history', checkScroll);
|
|
128
|
+
|
|
129
|
+
// Also check on resize
|
|
130
|
+
$(window).on('resize.history', checkScroll);
|
|
131
|
+
};
|
|
132
|
+
|
|
64
133
|
var loadComponentsHistory = function() {
|
|
65
134
|
var historyLoader = $('#history-loader');
|
|
66
135
|
var historyContent = $('#history-content');
|
|
@@ -71,6 +140,14 @@ oc.cmd.push(function() {
|
|
|
71
140
|
historyContent.hide();
|
|
72
141
|
historyError.hide();
|
|
73
142
|
|
|
143
|
+
// Reset state
|
|
144
|
+
historyData = [];
|
|
145
|
+
historyRenderedCount = 0;
|
|
146
|
+
isLoadingMore = false;
|
|
147
|
+
|
|
148
|
+
// Remove any existing scroll listeners
|
|
149
|
+
$(window).off('scroll.history resize.history');
|
|
150
|
+
|
|
74
151
|
// Fetch history data
|
|
75
152
|
fetch('~registry/history')
|
|
76
153
|
.then(function(response) {
|
|
@@ -80,27 +157,23 @@ oc.cmd.push(function() {
|
|
|
80
157
|
return response.json();
|
|
81
158
|
})
|
|
82
159
|
.then(function(data) {
|
|
83
|
-
|
|
84
|
-
var historyHtml = '';
|
|
85
|
-
|
|
86
|
-
for (var i = 0; i < componentsHistory.length; i++) {
|
|
87
|
-
var item = componentsHistory[i];
|
|
88
|
-
var templateSizeText = item.templateSize ?
|
|
89
|
-
' [' + Math.round(item.templateSize / 1024) + ' kb]' : '';
|
|
90
|
-
|
|
91
|
-
historyHtml += '<a href="' + item.name + '/' + item.version + '/~info">' +
|
|
92
|
-
'<div class="componentRow row table">' +
|
|
93
|
-
'<p class="release">' +
|
|
94
|
-
item.publishDate + ' - Published ' + item.name + '@' + item.version +
|
|
95
|
-
templateSizeText +
|
|
96
|
-
'</p>' +
|
|
97
|
-
'</div>' +
|
|
98
|
-
'</a>';
|
|
99
|
-
}
|
|
160
|
+
historyData = data.componentsHistory || [];
|
|
100
161
|
|
|
101
|
-
|
|
162
|
+
// Clear content and show container
|
|
163
|
+
historyContent.empty();
|
|
102
164
|
historyLoader.hide();
|
|
103
165
|
historyContent.show();
|
|
166
|
+
|
|
167
|
+
if (historyData.length === 0) {
|
|
168
|
+
historyContent.html('<p style="text-align: center; color: #64748b; padding: 2em;">No components history available.</p>');
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
// Render first batch
|
|
173
|
+
renderHistoryBatch();
|
|
174
|
+
|
|
175
|
+
// Setup scroll listener for infinite loading
|
|
176
|
+
setupHistoryScrollListener();
|
|
104
177
|
})
|
|
105
178
|
.catch(function(error) {
|
|
106
179
|
console.error('Error loading components history:', error);
|
|
@@ -119,11 +192,20 @@ oc.cmd.push(function() {
|
|
|
119
192
|
$('#menuList a').removeClass('selected');
|
|
120
193
|
$('#menuList a[href="' + target + '"]').addClass('selected');
|
|
121
194
|
|
|
195
|
+
// Clean up scroll listeners when leaving history tab
|
|
196
|
+
if (target !== '#components-history') {
|
|
197
|
+
$(window).off('scroll.history resize.history');
|
|
198
|
+
}
|
|
199
|
+
|
|
122
200
|
// Load history data when history tab is selected for the first time
|
|
123
201
|
if (target === '#components-history' && !isHistoryLoaded) {
|
|
124
202
|
loadComponentsHistory();
|
|
125
203
|
isHistoryLoaded = true;
|
|
126
204
|
}
|
|
205
|
+
// Re-enable scroll listeners when returning to history tab
|
|
206
|
+
else if (target === '#components-history' && isHistoryLoaded && historyRenderedCount < historyData.length) {
|
|
207
|
+
setupHistoryScrollListener();
|
|
208
|
+
}
|
|
127
209
|
};
|
|
128
210
|
|
|
129
211
|
var hash = location.href.split('#')[1] || '';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: "\n@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap\");\n\n:root {\n
|
|
1
|
+
declare const _default: "\n@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap\");\n\n :root {\n /* New accent-based color system */\n --color-bg-default: #ffffff;\n --color-bg-muted: #f8fafc;\n --color-bg-alt: #f1f5f9;\n --color-bg-hover: #f3f0ff;\n\n --color-text-default: #22223b;\n --color-text-muted: #64748b;\n --color-text-inverse: #ffffff;\n\n --color-primary: #7c3aed;\n --color-primary-hover: #5f3dc4;\n /* Secondary accent for informational text (author names, etc.) */\n --color-info: #3b5bdb;\n\n --color-border-default: #e0e0e0;\n --color-border-muted: #d1d5db;\n --color-border-focus: #5f3dc4;\n\n --color-warning: #ffe066;\n --color-warning-text: #7c3aed;\n --color-danger: #ffd6d6;\n --color-danger-text: #c92a2a;\n --color-state-border: #e9ecef;\n\n /* Shadow definitions */\n --shadow-main: 0 2px 8px rgba(60, 60, 100, 0.04);\n --shadow-hover: 0 4px 16px rgba(95, 61, 196, 0.08);\n }\n\nbody {\n width: 100%;\n max-width: 1100px;\n margin: 0 auto;\n font-family: \"Inter\", \"Helvetica Neue\", Arial, sans-serif;\n background: var(--color-bg-muted);\n color: var(--color-text-default);\n line-height: 1.6;\n}\n\nh1,\nh2,\nh3 {\n color: var(--color-text-default);\n width: 100%;\n font-weight: 600;\n margin-bottom: 0.5em;\n}\n\nh1 {\n margin-top: 0;\n color: var(--color-text-default);\n border-bottom: 1px solid var(--color-border-default);\n font-size: 2.5rem;\n letter-spacing: -1px;\n padding-bottom: 0.3em;\n}\n\na {\n color: var(--color-primary);\n text-decoration: none;\n transition: color 0.2s;\n}\na:hover {\n color: var(--color-primary-hover);\n text-decoration: underline;\n}\n\n#components-list a:hover {\n text-decoration: none;\n}\n\np {\n margin-top: 0;\n}\n\n.back {\n width: 100%;\n margin-top: -20px;\n margin-bottom: 1.5em;\n display: block;\n color: var(--color-text-muted);\n font-size: 0.95em;\n}\n\n.code,\n.preview {\n width: 100%;\n background: var(--color-bg-default);\n border-radius: 10px;\n box-shadow: var(--shadow-main);\n margin-bottom: 1.5em;\n}\n\n.preview {\n height: 300px;\n border: 1px solid var(--color-border-default);\n}\n\n.table {\n width: 100%;\n}\n\n.w-100 {\n width: 100%;\n}\n\n.row {\n background: var(--color-bg-default);\n border: 1px solid var(--color-border-default);\n border-radius: 12px;\n width: 100%;\n display: flex;\n padding: 14px 0px;\n box-sizing: border-box;\n margin-bottom: 8px;\n align-items: center;\n box-shadow: var(--shadow-main);\n transition:\n box-shadow 0.2s,\n border 0.2s;\n}\n\n.row.header {\n background: var(--color-bg-alt);\n border: 1px solid var(--color-border-muted) !important;\n font-size: 1.1em;\n font-weight: 600;\n border-radius: 12px 12px 0 0;\n box-shadow: none;\n}\n\n.row.header div {\n font-weight: bold;\n margin: 0;\n align-self: flex-start;\n}\n\n.row.double {\n min-height: 60px;\n}\n\n.row div {\n word-wrap: break-word;\n}\n\n.row span {\n padding-right: 10px;\n}\n\n.componentRow {\n transition:\n box-shadow 0.2s,\n background 0.2s;\n}\n\n.componentRow:hover {\n background: var(--color-bg-hover);\n box-shadow: var(--shadow-hover);\n border-color: var(--color-primary-hover);\n}\n\n.componentRow .title .name {\n font-weight: bold;\n font-size: 1.15rem;\n margin: 0;\n width: 100%;\n color: var(--color-text-default);\n}\n\n.componentRow .release {\n font-size: 1rem;\n margin: 0;\n width: 100%;\n color: var(--color-text-default);\n}\n\n.componentRow .title .description {\n padding: 0;\n font-size: 0.98rem;\n color: var(--color-text-muted);\n}\n\n.social {\n width: 100%;\n margin-top: 20px;\n text-align: center;\n}\n\n.field {\n width: 100%;\n margin-bottom: 1em;\n}\n\n.field p,\n.field span,\n.field a {\n margin: 0;\n font-weight: 500;\n}\n\n.field p {\n color: var(--color-primary);\n font-weight: bold;\n margin-right: 10px;\n}\n\ninput[type=\"text\"],\ntextarea {\n height: 43px;\n font-family: \"Inter\", Arial, sans-serif;\n border: 1px solid var(--color-border-default);\n margin-bottom: 10px;\n font-size: 1.05rem;\n padding: 10px;\n border-radius: 8px;\n background: var(--color-bg-muted);\n box-sizing: border-box;\n transition: border 0.2s;\n}\ninput[type=\"text\"]:focus,\ntextarea:focus {\n border: 1.5px solid var(--color-primary);\n outline: none;\n}\n\n.filters {\n width: 100%;\n display: flex;\n justify-content: space-between;\n gap: 1em;\n margin-bottom: 0.5em;\n}\n\n.row > * {\n flex: 0 1 8%;\n padding: 0px 5px;\n align-self: center;\n}\n\n.row > *:last-child {\n padding-right: 10px;\n}\n\n.row > *:first-child {\n padding-left: 10px;\n}\n\n.release,\n.title,\n.filters > * {\n flex: 1 0;\n}\n\n.title {\n display: flex;\n flex-direction: column;\n}\n\n.author-filter {\n flex: 0 1 30%;\n margin-left: 15px;\n}\n\n.parameter {\n flex: 1 0;\n max-width: 25%;\n align-self: flex-start;\n}\n\n.parameter-description {\n flex: 1 0;\n max-width: 70%;\n}\n\n.author {\n flex: 0 1 15%;\n word-break: break-all;\n color: var(--color-info);\n}\n\n#href {\n height: 60px;\n}\n\n.states {\n width: 100%;\n margin-bottom: 30px;\n display: flex;\n align-items: center;\n}\n\n.states span,\n.states .state {\n margin-right: 20px;\n}\n\n.states input {\n margin-right: 6px;\n}\n\n.details-state span {\n padding: 1px 8px;\n margin-left: 10px;\n font-size: 0.95em;\n font-weight: bold;\n color: var(--color-text-inverse);\n background: var(--color-primary);\n border-radius: 8px;\n white-space: nowrap;\n}\n\n.state {\n margin-right: 10px;\n font-size: 0.95em;\n font-weight: bold;\n color: var(--color-text-inverse);\n border-radius: 8px;\n white-space: nowrap;\n padding: 2px 8px;\n}\n\n.table .state {\n background: var(--color-primary);\n height: 20px;\n}\n\n.component-state-experimental,\n.details-state .component-state-experimental,\n.table .component-state-experimental {\n background: var(--color-warning);\n color: var(--color-warning-text);\n border: 1px solid var(--color-state-border);\n}\n\n.component-state-deprecated,\n.details-state .component-state-deprecated,\n.table .component-state-deprecated {\n background: var(--color-danger);\n color: var(--color-danger-text);\n border: 1px solid var(--color-state-border);\n}\n\na.tab-link {\n color: var(--color-primary);\n font-weight: 500;\n padding: 0.1em 0.6em;\n border-radius: 8px;\n transition:\n background 0.2s,\n color 0.2s;\n font-size: 1.4rem;\n line-height: 1.2;\n vertical-align: middle;\n display: inline-block;\n}\n\na.tab-link.selected {\n background: var(--color-primary);\n color: var(--color-text-inverse);\n text-decoration: none;\n font-size: 1.5rem;\n line-height: 1.2;\n}\n\n.bold {\n font-weight: bold;\n}\n\n.hide {\n display: none !important;\n}\n\n.box {\n background: var(--color-bg-default);\n border-radius: 14px;\n box-shadow: var(--shadow-main);\n padding: 1.5em 1em;\n margin-bottom: 2em;\n}\n\n@media (max-width: 900px) {\n body {\n max-width: 100vw;\n padding: 0 0.5em;\n }\n .filters {\n flex-direction: column;\n gap: 0.5em;\n }\n .row {\n flex-direction: column;\n gap: 0.5em;\n padding: 10px 0;\n }\n .box {\n padding: 1em 0.5em;\n }\n }\n\n /* History loading states */\n .loader {\n text-align: center;\n padding: 2em;\n color: var(--color-text-muted);\n }\n\n .loader p {\n margin: 0;\n font-style: italic;\n }\n\n .loader::before {\n content: '';\n display: inline-block;\n width: 20px;\n height: 20px;\n border: 2px solid var(--color-border-muted);\n border-top: 2px solid var(--color-primary);\n border-radius: 50%;\n animation: spin 1s linear infinite;\n margin-right: 0.5em;\n vertical-align: middle;\n }\n\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n\n .loading-more {\n text-align: center;\n padding: 1em 2em;\n color: var(--color-text-muted);\n font-style: italic;\n font-size: 0.9em;\n border-top: 1px solid var(--color-border-default);\n margin-top: 1em;\n }\n\n .loading-more::before {\n content: '';\n display: inline-block;\n width: 16px;\n height: 16px;\n border: 2px solid var(--color-border-muted);\n border-top: 2px solid var(--color-primary);\n border-radius: 50%;\n animation: spin 1s linear infinite;\n margin-right: 0.5em;\n vertical-align: middle;\n }\n\n #history-error {\n text-align: center;\n padding: 2em;\n color: var(--color-danger-text);\n background-color: var(--color-danger);\n border: 1px solid var(--color-state-border);\n border-radius: 6px;\n margin: 1em 0;\n }\n\n #history-error p {\n margin: 0;\n }\n ";
|
|
2
2
|
export default _default;
|
|
@@ -3,32 +3,36 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.default = `
|
|
4
4
|
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap");
|
|
5
5
|
|
|
6
|
-
:root {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
6
|
+
:root {
|
|
7
|
+
/* New accent-based color system */
|
|
8
|
+
--color-bg-default: #ffffff;
|
|
9
|
+
--color-bg-muted: #f8fafc;
|
|
10
|
+
--color-bg-alt: #f1f5f9;
|
|
11
|
+
--color-bg-hover: #f3f0ff;
|
|
12
|
+
|
|
13
|
+
--color-text-default: #22223b;
|
|
14
|
+
--color-text-muted: #64748b;
|
|
15
|
+
--color-text-inverse: #ffffff;
|
|
16
|
+
|
|
17
|
+
--color-primary: #7c3aed;
|
|
18
|
+
--color-primary-hover: #5f3dc4;
|
|
19
|
+
/* Secondary accent for informational text (author names, etc.) */
|
|
20
|
+
--color-info: #3b5bdb;
|
|
21
|
+
|
|
22
|
+
--color-border-default: #e0e0e0;
|
|
23
|
+
--color-border-muted: #d1d5db;
|
|
24
|
+
--color-border-focus: #5f3dc4;
|
|
25
|
+
|
|
26
|
+
--color-warning: #ffe066;
|
|
27
|
+
--color-warning-text: #7c3aed;
|
|
28
|
+
--color-danger: #ffd6d6;
|
|
29
|
+
--color-danger-text: #c92a2a;
|
|
30
|
+
--color-state-border: #e9ecef;
|
|
31
|
+
|
|
32
|
+
/* Shadow definitions */
|
|
33
|
+
--shadow-main: 0 2px 8px rgba(60, 60, 100, 0.04);
|
|
34
|
+
--shadow-hover: 0 4px 16px rgba(95, 61, 196, 0.08);
|
|
35
|
+
}
|
|
32
36
|
|
|
33
37
|
body {
|
|
34
38
|
width: 100%;
|
|
@@ -397,6 +401,73 @@ a.tab-link.selected {
|
|
|
397
401
|
}
|
|
398
402
|
.box {
|
|
399
403
|
padding: 1em 0.5em;
|
|
404
|
+
}
|
|
400
405
|
}
|
|
401
|
-
|
|
402
|
-
|
|
406
|
+
|
|
407
|
+
/* History loading states */
|
|
408
|
+
.loader {
|
|
409
|
+
text-align: center;
|
|
410
|
+
padding: 2em;
|
|
411
|
+
color: var(--color-text-muted);
|
|
412
|
+
}
|
|
413
|
+
|
|
414
|
+
.loader p {
|
|
415
|
+
margin: 0;
|
|
416
|
+
font-style: italic;
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
.loader::before {
|
|
420
|
+
content: '';
|
|
421
|
+
display: inline-block;
|
|
422
|
+
width: 20px;
|
|
423
|
+
height: 20px;
|
|
424
|
+
border: 2px solid var(--color-border-muted);
|
|
425
|
+
border-top: 2px solid var(--color-primary);
|
|
426
|
+
border-radius: 50%;
|
|
427
|
+
animation: spin 1s linear infinite;
|
|
428
|
+
margin-right: 0.5em;
|
|
429
|
+
vertical-align: middle;
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
@keyframes spin {
|
|
433
|
+
0% { transform: rotate(0deg); }
|
|
434
|
+
100% { transform: rotate(360deg); }
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
.loading-more {
|
|
438
|
+
text-align: center;
|
|
439
|
+
padding: 1em 2em;
|
|
440
|
+
color: var(--color-text-muted);
|
|
441
|
+
font-style: italic;
|
|
442
|
+
font-size: 0.9em;
|
|
443
|
+
border-top: 1px solid var(--color-border-default);
|
|
444
|
+
margin-top: 1em;
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
.loading-more::before {
|
|
448
|
+
content: '';
|
|
449
|
+
display: inline-block;
|
|
450
|
+
width: 16px;
|
|
451
|
+
height: 16px;
|
|
452
|
+
border: 2px solid var(--color-border-muted);
|
|
453
|
+
border-top: 2px solid var(--color-primary);
|
|
454
|
+
border-radius: 50%;
|
|
455
|
+
animation: spin 1s linear infinite;
|
|
456
|
+
margin-right: 0.5em;
|
|
457
|
+
vertical-align: middle;
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
#history-error {
|
|
461
|
+
text-align: center;
|
|
462
|
+
padding: 2em;
|
|
463
|
+
color: var(--color-danger-text);
|
|
464
|
+
background-color: var(--color-danger);
|
|
465
|
+
border: 1px solid var(--color-state-border);
|
|
466
|
+
border-radius: 6px;
|
|
467
|
+
margin: 1em 0;
|
|
468
|
+
}
|
|
469
|
+
|
|
470
|
+
#history-error p {
|
|
471
|
+
margin: 0;
|
|
472
|
+
}
|
|
473
|
+
`;
|
package/logintervals.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"to":"v0.50.13","from":"v0.50.12"},{"to":"v0.50.12","from":"v0.50.11"},{"to":"v0.50.11","from":"v0.50.10"},{"to":"v0.50.10","from":"v0.50.9"},{"to":"v0.50.9","from":"v0.50.8"},{"to":"v0.50.8","from":"v0.50.7"},{"to":"v0.50.7","from":"v0.50.6"},{"to":"v0.50.6","from":"v0.50.5"},{"to":"v0.50.5","from":"v0.50.4"},{"to":"v0.50.4","from":"v0.50.3"},{"to":"v0.50.3","from":"v0.50.2"},{"to":"v0.50.2","from":"v0.50.1"},{"to":"v0.50.1","from":"v0.50.0"},{"to":"v0.50.0","from":"v0.49.67"},{"to":"v0.49.67","from":"v0.49.66"},{"to":"v0.49.66","from":"v0.49.65"},{"to":"v0.49.65","from":"v0.49.64"},{"to":"v0.49.64","from":"v0.49.63"},{"to":"v0.49.63","from":"v0.49.62"},{"to":"v0.49.62","from":"v0.49.61"},{"to":"v0.49.61","from":"v0.49.60"},{"to":"v0.49.60","from":"v0.49.59"},{"to":"v0.49.59","from":"v0.49.58"},{"to":"v0.49.58","from":"v0.49.57"},{"to":"v0.49.57","from":"v0.49.56"},{"to":"v0.49.56","from":"v0.49.55"},{"to":"v0.49.55","from":"v0.49.54"},{"to":"v0.49.54","from":"v0.49.53"},{"to":"v0.49.53","from":"v0.49.52"},{"to":"v0.49.52","from":"v0.49.51"},{"to":"v0.49.51","from":"v0.49.50"},{"to":"v0.49.50","from":"v0.49.49"},{"to":"v0.49.49","from":"v0.49.48"},{"to":"v0.49.48","from":"v0.49.47"},{"to":"v0.49.47","from":"v0.49.46"},{"to":"v0.49.46","from":"v0.49.45"},{"to":"v0.49.45","from":"v0.49.44"},{"to":"v0.49.44","from":"v0.49.43"},{"to":"v0.49.43","from":"v0.49.42"},{"to":"v0.49.42","from":"v0.49.41"},{"to":"v0.49.41","from":"v0.49.40"},{"to":"v0.49.40","from":"v0.49.39"},{"to":"v0.49.39","from":"v0.49.38"},{"to":"v0.49.38","from":"v0.49.37"},{"to":"v0.49.37","from":"v0.49.36"},{"to":"v0.49.36","from":"v0.49.35"},{"to":"v0.49.35","from":"v0.49.34"},{"to":"v0.49.34","from":"v0.49.32"},{"to":"v0.49.32","from":"v0.49.31"},{"to":"v0.49.31","from":"v0.49.30"},{"to":"v0.49.30","from":"v0.49.29"},{"to":"v0.49.29","from":"v0.49.28"},{"to":"v0.49.28","from":"v0.49.27"},{"to":"v0.49.27","from":"v0.49.26"},{"to":"v0.49.26","from":"v0.49.25"},{"to":"v0.49.25","from":"v0.49.24"},{"to":"v0.49.24","from":"v0.49.23"},{"to":"v0.49.23","from":"v0.49.22"},{"to":"v0.49.22","from":"v0.49.21"},{"to":"v0.49.21","from":"v0.49.20"},{"to":"v0.49.20","from":"v0.49.19"},{"to":"v0.49.19","from":"v0.49.18"},{"to":"v0.49.18","from":"v0.49.17"},{"to":"v0.49.17","from":"v0.49.16"},{"to":"v0.49.16","from":"v0.49.15"},{"to":"v0.49.15","from":"v0.49.14"},{"to":"v0.49.14","from":"v0.49.12"},{"to":"v0.49.12","from":"v0.49.11"},{"to":"v0.49.11","from":"v0.49.9"},{"to":"v0.49.9","from":"v0.49.8"},{"to":"v0.49.8","from":"v0.49.7"},{"to":"v0.49.7","from":"v0.49.6"},{"to":"v0.49.6","from":"v0.49.5"},{"to":"v0.49.5","from":"v0.49.4"},{"to":"v0.49.4","from":"v0.49.3"},{"to":"v0.49.3","from":"v0.49.2"},{"to":"v0.49.2","from":"v0.49.1"},{"to":"v0.49.1","from":"v0.49.0"},{"to":"v0.49.0","from":"v0.48.23"},{"to":"v0.48.23","from":"v0.48.22"},{"to":"v0.48.22","from":"v0.48.21"},{"to":"v0.48.21","from":"v0.48.19"},{"to":"v0.48.19","from":"v0.48.18"},{"to":"v0.48.18","from":"v0.48.17"},{"to":"v0.48.17","from":"v0.48.16"},{"to":"v0.48.16","from":"v0.48.15"},{"to":"v0.48.15","from":"v0.48.14"},{"to":"v0.48.14","from":"v0.48.13"},{"to":"v0.48.13","from":"v0.48.12"},{"to":"v0.48.12","from":"v0.48.11"},{"to":"v0.48.11","from":"v0.48.10"},{"to":"v0.48.10","from":"v0.48.9"},{"to":"v0.48.9","from":"v0.48.7"},{"to":"v0.48.7","from":"v0.48.6"},{"to":"v0.48.6","from":"v0.48.5"},{"to":"v0.48.5","from":"v0.48.4"},{"to":"v0.48.4","from":"v0.48.3"},{"to":"v0.48.3","from":"v0.48.2"},{"to":"v0.48.2","from":"v0.48.1"},{"to":"v0.48.1","from":"v0.48.0"},{"to":"v0.48.0","from":"v0.47.1"},{"to":"v0.47.1","from":"v0.47.0"},{"to":"v0.47.0","from":"v0.46.0"},{"to":"v0.46.0","from":"v0.45.4"},{"to":"v0.45.4","from":"v0.45.3"},{"to":"v0.45.3","from":"v0.45.2"},{"to":"v0.45.2","from":"v0.45.1"},{"to":"v0.45.1","from":"v0.45.0"},{"to":"v0.45.0","from":"v0.44.13"},{"to":"v0.44.13","from":"v0.44.12"},{"to":"v0.44.12","from":"v0.44.11"},{"to":"v0.44.11","from":"v0.44.10"},{"to":"v0.44.10","from":"v0.44.9"},{"to":"v0.44.9","from":"v0.44.8"},{"to":"v0.44.8","from":"v0.44.7"},{"to":"v0.44.7","from":"v0.44.6"},{"to":"v0.44.6","from":"v0.44.5"},{"to":"v0.44.5","from":"v0.44.4"},{"to":"v0.44.4","from":"v0.44.3"},{"to":"v0.44.3","from":"v0.44.2"},{"to":"v0.44.2","from":"v0.44.1"},{"to":"v0.44.1","from":"v0.44.0"},{"to":"v0.44.0","from":"v0.43.2"},{"to":"v0.43.2","from":"v0.43.1"},{"to":"v0.43.1","from":"v0.43.0"},{"to":"v0.43.0","from":"v0.42.26"},{"to":"v0.42.26","from":"v0.42.25"},{"to":"v0.42.25","from":"v0.42.24"},{"to":"v0.42.24","from":"v0.42.23"},{"to":"v0.42.23","from":"v0.42.22"},{"to":"v0.42.22","from":"v0.42.21"},{"to":"v0.42.21","from":"v0.42.20"},{"to":"v0.42.20","from":"v0.42.19"},{"to":"v0.42.19","from":"v0.42.18"},{"to":"v0.42.18","from":"v0.42.17"},{"to":"v0.42.17","from":"v0.42.16"},{"to":"v0.42.16","from":"v0.42.15"},{"to":"v0.42.15","from":"v0.42.14"},{"to":"v0.42.14","from":"v0.42.13"},{"to":"v0.42.13","from":"v0.42.12"},{"to":"v0.42.12","from":"v0.42.10"},{"to":"v0.42.10","from":"v0.42.9"},{"to":"v0.42.9","from":"v0.42.8"},{"to":"v0.42.8","from":"v0.42.7"},{"to":"v0.42.7","from":"v0.42.6"},{"to":"v0.42.6","from":"v0.42.5"},{"to":"v0.42.5","from":"v0.42.4"},{"to":"v0.42.4","from":"v0.42.3"},{"to":"v0.42.3","from":"v0.42.2"},{"to":"v0.42.2","from":"v0.42.1"},{"to":"v0.42.1","from":"v0.42.0"},{"to":"v0.42.0","from":"v0.41.16"},{"to":"v0.41.16","from":"v0.41.15"},{"to":"v0.41.15","from":"v0.41.14"},{"to":"v0.41.14","from":"v0.41.13"},{"to":"v0.41.13","from":"v0.41.12"},{"to":"v0.41.12","from":"v0.41.11"},{"to":"v0.41.11","from":"v0.41.10"},{"to":"v0.41.10","from":"v0.41.9"},{"to":"v0.41.9","from":"v0.41.8"},{"to":"v0.41.8","from":"v0.41.7"},{"to":"v0.41.7","from":"v0.41.6"},{"to":"v0.41.6","from":"v0.41.5"},{"to":"v0.41.5","from":"v0.41.4"},{"to":"v0.41.4","from":"v0.41.3"},{"to":"v0.41.3","from":"v0.41.2"},{"to":"v0.41.2","from":"v0.41.1"},{"to":"v0.41.1","from":"v0.41.0"},{"to":"v0.41.0","from":"v0.40.10"},{"to":"v0.40.10","from":"v0.40.9"},{"to":"v0.40.9","from":"v0.40.8"},{"to":"v0.40.8","from":"v0.40.7"},{"to":"v0.40.7","from":"v0.40.6"},{"to":"v0.40.6","from":"v0.40.5"},{"to":"v0.40.5","from":"v0.40.4"},{"to":"v0.40.4","from":"v0.40.3"},{"to":"v0.40.3","from":"v0.40.2"},{"to":"v0.40.2","from":"v0.40.1"},{"to":"v0.40.1","from":"v0.40.0"},{"to":"v0.40.0","from":"v0.39.8"},{"to":"v0.39.8","from":"v0.39.7"},{"to":"v0.39.7","from":"v0.39.6"},{"to":"v0.39.6","from":"v0.39.5"},{"to":"v0.39.5","from":"v0.39.4"},{"to":"v0.39.4","from":"v0.39.3"},{"to":"v0.39.3","from":"v0.39.2"},{"to":"v0.39.2","from":"v0.39.1"},{"to":"v0.39.1","from":"v0.39.0"},{"to":"v0.39.0","from":"v0.38.8"},{"to":"v0.38.8","from":"v0.38.7"},{"to":"v0.38.7","from":"v0.38.6"},{"to":"v0.38.6","from":"v0.38.5"},{"to":"v0.38.5","from":"v0.38.4"},{"to":"v0.38.4","from":"v0.38.3"},{"to":"v0.38.3","from":"v0.38.2"},{"to":"v0.38.2","from":"v0.38.1"},{"to":"v0.38.1","from":"v0.38.0"},{"to":"v0.38.0","from":"v0.37.11"},{"to":"v0.37.11","from":"v0.37.10"},{"to":"v0.37.10","from":"v0.37.9"},{"to":"v0.37.9","from":"v0.37.8"},{"to":"v0.37.8","from":"v0.37.7"},{"to":"v0.37.7","from":"v0.37.6"},{"to":"v0.37.6","from":"v0.37.5"},{"to":"v0.37.5","from":"v0.37.4"},{"to":"v0.37.4","from":"v0.37.3"},{"to":"v0.37.3","from":"v0.37.2"},{"to":"v0.37.2","from":"v0.37.1"},{"to":"v0.37.1","from":"v0.37.0"},{"to":"v0.37.0","from":"v0.36.28"},{"to":"v0.36.28","from":"v0.36.27"},{"to":"v0.36.27","from":"v0.36.26"},{"to":"v0.36.26","from":"v0.36.25"},{"to":"v0.36.25","from":"v0.36.24"},{"to":"v0.36.24","from":"v0.36.23"},{"to":"v0.36.23","from":"v0.36.22"},{"to":"v0.36.22","from":"v0.36.21"},{"to":"v0.36.21","from":"v0.36.20"},{"to":"v0.36.20","from":"v0.36.19"},{"to":"v0.36.19","from":"v0.36.18"},{"to":"v0.36.18","from":"v0.36.17"},{"to":"v0.36.17","from":"v0.36.16"},{"to":"v0.36.16","from":"v0.36.15"},{"to":"v0.36.15","from":"v0.36.14"},{"to":"v0.36.14","from":"v0.36.13"},{"to":"v0.36.13","from":"v0.36.12"},{"to":"v0.36.12","from":"v0.36.11"},{"to":"v0.36.11","from":"v0.36.10"},{"to":"v0.36.10","from":"v0.36.9"},{"to":"v0.36.9","from":"v0.36.8"},{"to":"v0.36.8","from":"v0.36.7"},{"to":"v0.36.7","from":"v0.36.6"},{"to":"v0.36.6","from":"v0.36.5"},{"to":"v0.36.5","from":"v0.36.4"},{"to":"v0.36.4","from":"v0.36.3"},{"to":"v0.36.3","from":"v0.36.2"},{"to":"v0.36.2","from":"v0.36.1"},{"to":"v0.36.1","from":"v0.36.0"},{"to":"v0.36.0","from":"v0.35.6"},{"to":"v0.35.6","from":"v0.35.5"},{"to":"v0.35.5","from":"v0.35.4"},{"to":"v0.35.4","from":"v0.35.3"},{"to":"v0.35.3","from":"v0.35.2"},{"to":"v0.35.2","from":"v0.35.1"},{"to":"v0.35.1","from":"v0.35.0"},{"to":"v0.35.0","from":"v0.34.8"},{"to":"v0.34.8","from":"v0.34.7"},{"to":"v0.34.7","from":"v0.34.6"},{"to":"v0.34.6","from":"v0.34.5"},{"to":"v0.34.5","from":"v0.34.4"},{"to":"v0.34.4","from":"v0.34.3"},{"to":"v0.34.3","from":"v0.34.2"},{"to":"v0.34.2","from":"v0.34.1"},{"to":"v0.34.1","from":"v0.34.0"},{"to":"v0.34.0","from":"v0.33.31"},{"to":"v0.33.31","from":"v0.33.30"},{"to":"v0.33.30","from":"v0.33.29"},{"to":"v0.33.29","from":"v0.33.28"},{"to":"v0.33.28","from":"v0.33.27"},{"to":"v0.33.27","from":"v0.33.26"},{"to":"v0.33.26","from":"v0.33.25"},{"to":"v0.33.25","from":"v0.33.24"},{"to":"v0.33.24","from":"v0.33.23"},{"to":"v0.33.23","from":"v0.33.22"},{"to":"v0.33.22","from":"v0.33.21"},{"to":"v0.33.21","from":"v0.33.20"},{"to":"v0.33.20","from":"v0.33.19"},{"to":"v0.33.19","from":"v0.33.18"},{"to":"v0.33.18","from":"v0.33.17"},{"to":"v0.33.17","from":"v0.33.16"},{"to":"v0.33.16","from":"v0.33.15"},{"to":"v0.33.15","from":"v0.33.14"},{"to":"v0.33.14","from":"v0.33.13"},{"to":"v0.33.13","from":"v0.33.12"},{"to":"v0.33.12","from":"v0.33.11"},{"to":"v0.33.11","from":"v0.33.10"},{"to":"v0.33.10","from":"v0.33.9"},{"to":"v0.33.9","from":"v0.33.8"},{"to":"v0.33.8","from":"v0.33.7"},{"to":"v0.33.7","from":"v0.33.6"},{"to":"v0.33.6","from":"v0.33.5"},{"to":"v0.33.5","from":"v0.33.4"},{"to":"v0.33.4","from":"v0.33.3"},{"to":"v0.33.3","from":"v0.33.2"},{"to":"v0.33.2","from":"v0.33.1"},{"to":"v0.33.1","from":"v0.33.0"},{"to":"v0.33.0","from":"v0.32.6"},{"to":"v0.32.6","from":"v0.32.5"},{"to":"v0.32.5","from":"v0.32.4"},{"to":"v0.32.4","from":"v0.32.3"},{"to":"v0.32.3","from":"v0.32.2"},{"to":"v0.32.2","from":"v0.32.1"},{"to":"v0.32.1","from":"v0.32.0"},{"to":"v0.32.0","from":"v0.31.2"},{"to":"v0.31.2","from":"v0.31.1"},{"to":"v0.31.1","from":"v0.31.0"},{"to":"v0.31.0","from":"v0.30.9"},{"to":"v0.30.9","from":"v0.30.8"},{"to":"v0.30.8","from":"v0.30.7"},{"to":"v0.30.7","from":"v0.30.6"},{"to":"v0.30.6","from":"v0.30.5"},{"to":"v0.30.5","from":"v0.30.4"},{"to":"v0.30.4","from":"v0.30.3"},{"to":"v0.30.3","from":"v0.30.2"},{"to":"v0.30.2","from":"v0.30.1"},{"to":"v0.30.1","from":"v0.30.0"},{"to":"v0.30.0","from":"v0.29.4"},{"to":"v0.29.4","from":"v0.29.3"},{"to":"v0.29.3","from":"v0.29.2"},{"to":"v0.29.2","from":"v0.29.1"},{"to":"v0.29.1","from":"v0.29.0"},{"to":"v0.29.0","from":"v0.28.9"},{"to":"v0.28.9","from":"v0.28.8"},{"to":"v0.28.8","from":"v0.28.7"},{"to":"v0.28.7","from":"v0.28.6"},{"to":"v0.28.6","from":"v0.28.5"},{"to":"v0.28.5","from":"v0.28.4"},{"to":"v0.28.4","from":"v0.28.3"},{"to":"v0.28.3","from":"v0.28.2"},{"to":"v0.28.2","from":"v0.28.1"},{"to":"v0.28.1","from":"v0.28.0"},{"to":"v0.28.0","from":"v0.27.9"},{"to":"v0.27.9","from":"v0.27.8"},{"to":"v0.27.8","from":"v0.27.7"},{"to":"v0.27.7","from":"v0.27.6"},{"to":"v0.27.6","from":"v0.27.5"},{"to":"v0.27.5","from":"v0.27.4"},{"to":"v0.27.4","from":"v0.27.3"},{"to":"v0.27.3","from":"v0.27.2"},{"to":"v0.27.2","from":"v0.27.1"},{"to":"v0.27.1","from":"v0.27.0"},{"to":"v0.27.0","from":"v0.26.2"},{"to":"v0.26.2","from":"v0.26.1"},{"to":"v0.26.1","from":"v0.26.0"},{"to":"v0.26.0","from":"v0.25.0"},{"to":"v0.25.0","from":"v0.24.1"},{"to":"v0.24.1","from":"v0.24.0"},{"to":"v0.24.0","from":"v0.23.7"},{"to":"v0.23.7","from":"v0.23.6"},{"to":"v0.23.6","from":"v0.23.5"},{"to":"v0.23.5","from":"v0.23.4"},{"to":"v0.23.4","from":"v0.23.3"},{"to":"v0.23.3","from":"v0.23.2"},{"to":"v0.23.2","from":"v0.23.1"},{"to":"v0.23.1","from":"v0.23.0"},{"to":"v0.23.0","from":"v0.22.3"},{"to":"v0.22.3","from":"v0.22.2"},{"to":"v0.22.2","from":"v0.22.1"},{"to":"v0.22.1","from":"v0.22.0"},{"to":"v0.22.0","from":"v0.21.0"},{"to":"v0.21.0","from":"v0.20.5"},{"to":"v0.20.5","from":"v0.20.4"},{"to":"v0.20.4","from":"v0.20.3"},{"to":"v0.20.3","from":"v0.20.2"},{"to":"v0.20.2","from":"v0.20.1"},{"to":"v0.20.1","from":"v0.20.0"},{"to":"v0.20.0","from":"v0.19.5"},{"to":"v0.19.5","from":"v0.19.4"},{"to":"v0.19.4","from":"v0.19.3"},{"to":"v0.19.3","from":"v0.19.2"},{"to":"v0.19.2","from":"v0.19.1"},{"to":"v0.19.1","from":"v0.19.0"},{"to":"v0.19.0","from":"6181a540729a7179d7a9d41489dfc241335cf1b5"}]
|
|
1
|
+
[{"to":"v0.50.14","from":"v0.50.13"},{"to":"v0.50.13","from":"v0.50.12"},{"to":"v0.50.12","from":"v0.50.11"},{"to":"v0.50.11","from":"v0.50.10"},{"to":"v0.50.10","from":"v0.50.9"},{"to":"v0.50.9","from":"v0.50.8"},{"to":"v0.50.8","from":"v0.50.7"},{"to":"v0.50.7","from":"v0.50.6"},{"to":"v0.50.6","from":"v0.50.5"},{"to":"v0.50.5","from":"v0.50.4"},{"to":"v0.50.4","from":"v0.50.3"},{"to":"v0.50.3","from":"v0.50.2"},{"to":"v0.50.2","from":"v0.50.1"},{"to":"v0.50.1","from":"v0.50.0"},{"to":"v0.50.0","from":"v0.49.67"},{"to":"v0.49.67","from":"v0.49.66"},{"to":"v0.49.66","from":"v0.49.65"},{"to":"v0.49.65","from":"v0.49.64"},{"to":"v0.49.64","from":"v0.49.63"},{"to":"v0.49.63","from":"v0.49.62"},{"to":"v0.49.62","from":"v0.49.61"},{"to":"v0.49.61","from":"v0.49.60"},{"to":"v0.49.60","from":"v0.49.59"},{"to":"v0.49.59","from":"v0.49.58"},{"to":"v0.49.58","from":"v0.49.57"},{"to":"v0.49.57","from":"v0.49.56"},{"to":"v0.49.56","from":"v0.49.55"},{"to":"v0.49.55","from":"v0.49.54"},{"to":"v0.49.54","from":"v0.49.53"},{"to":"v0.49.53","from":"v0.49.52"},{"to":"v0.49.52","from":"v0.49.51"},{"to":"v0.49.51","from":"v0.49.50"},{"to":"v0.49.50","from":"v0.49.49"},{"to":"v0.49.49","from":"v0.49.48"},{"to":"v0.49.48","from":"v0.49.47"},{"to":"v0.49.47","from":"v0.49.46"},{"to":"v0.49.46","from":"v0.49.45"},{"to":"v0.49.45","from":"v0.49.44"},{"to":"v0.49.44","from":"v0.49.43"},{"to":"v0.49.43","from":"v0.49.42"},{"to":"v0.49.42","from":"v0.49.41"},{"to":"v0.49.41","from":"v0.49.40"},{"to":"v0.49.40","from":"v0.49.39"},{"to":"v0.49.39","from":"v0.49.38"},{"to":"v0.49.38","from":"v0.49.37"},{"to":"v0.49.37","from":"v0.49.36"},{"to":"v0.49.36","from":"v0.49.35"},{"to":"v0.49.35","from":"v0.49.34"},{"to":"v0.49.34","from":"v0.49.32"},{"to":"v0.49.32","from":"v0.49.31"},{"to":"v0.49.31","from":"v0.49.30"},{"to":"v0.49.30","from":"v0.49.29"},{"to":"v0.49.29","from":"v0.49.28"},{"to":"v0.49.28","from":"v0.49.27"},{"to":"v0.49.27","from":"v0.49.26"},{"to":"v0.49.26","from":"v0.49.25"},{"to":"v0.49.25","from":"v0.49.24"},{"to":"v0.49.24","from":"v0.49.23"},{"to":"v0.49.23","from":"v0.49.22"},{"to":"v0.49.22","from":"v0.49.21"},{"to":"v0.49.21","from":"v0.49.20"},{"to":"v0.49.20","from":"v0.49.19"},{"to":"v0.49.19","from":"v0.49.18"},{"to":"v0.49.18","from":"v0.49.17"},{"to":"v0.49.17","from":"v0.49.16"},{"to":"v0.49.16","from":"v0.49.15"},{"to":"v0.49.15","from":"v0.49.14"},{"to":"v0.49.14","from":"v0.49.12"},{"to":"v0.49.12","from":"v0.49.11"},{"to":"v0.49.11","from":"v0.49.9"},{"to":"v0.49.9","from":"v0.49.8"},{"to":"v0.49.8","from":"v0.49.7"},{"to":"v0.49.7","from":"v0.49.6"},{"to":"v0.49.6","from":"v0.49.5"},{"to":"v0.49.5","from":"v0.49.4"},{"to":"v0.49.4","from":"v0.49.3"},{"to":"v0.49.3","from":"v0.49.2"},{"to":"v0.49.2","from":"v0.49.1"},{"to":"v0.49.1","from":"v0.49.0"},{"to":"v0.49.0","from":"v0.48.23"},{"to":"v0.48.23","from":"v0.48.22"},{"to":"v0.48.22","from":"v0.48.21"},{"to":"v0.48.21","from":"v0.48.19"},{"to":"v0.48.19","from":"v0.48.18"},{"to":"v0.48.18","from":"v0.48.17"},{"to":"v0.48.17","from":"v0.48.16"},{"to":"v0.48.16","from":"v0.48.15"},{"to":"v0.48.15","from":"v0.48.14"},{"to":"v0.48.14","from":"v0.48.13"},{"to":"v0.48.13","from":"v0.48.12"},{"to":"v0.48.12","from":"v0.48.11"},{"to":"v0.48.11","from":"v0.48.10"},{"to":"v0.48.10","from":"v0.48.9"},{"to":"v0.48.9","from":"v0.48.7"},{"to":"v0.48.7","from":"v0.48.6"},{"to":"v0.48.6","from":"v0.48.5"},{"to":"v0.48.5","from":"v0.48.4"},{"to":"v0.48.4","from":"v0.48.3"},{"to":"v0.48.3","from":"v0.48.2"},{"to":"v0.48.2","from":"v0.48.1"},{"to":"v0.48.1","from":"v0.48.0"},{"to":"v0.48.0","from":"v0.47.1"},{"to":"v0.47.1","from":"v0.47.0"},{"to":"v0.47.0","from":"v0.46.0"},{"to":"v0.46.0","from":"v0.45.4"},{"to":"v0.45.4","from":"v0.45.3"},{"to":"v0.45.3","from":"v0.45.2"},{"to":"v0.45.2","from":"v0.45.1"},{"to":"v0.45.1","from":"v0.45.0"},{"to":"v0.45.0","from":"v0.44.13"},{"to":"v0.44.13","from":"v0.44.12"},{"to":"v0.44.12","from":"v0.44.11"},{"to":"v0.44.11","from":"v0.44.10"},{"to":"v0.44.10","from":"v0.44.9"},{"to":"v0.44.9","from":"v0.44.8"},{"to":"v0.44.8","from":"v0.44.7"},{"to":"v0.44.7","from":"v0.44.6"},{"to":"v0.44.6","from":"v0.44.5"},{"to":"v0.44.5","from":"v0.44.4"},{"to":"v0.44.4","from":"v0.44.3"},{"to":"v0.44.3","from":"v0.44.2"},{"to":"v0.44.2","from":"v0.44.1"},{"to":"v0.44.1","from":"v0.44.0"},{"to":"v0.44.0","from":"v0.43.2"},{"to":"v0.43.2","from":"v0.43.1"},{"to":"v0.43.1","from":"v0.43.0"},{"to":"v0.43.0","from":"v0.42.26"},{"to":"v0.42.26","from":"v0.42.25"},{"to":"v0.42.25","from":"v0.42.24"},{"to":"v0.42.24","from":"v0.42.23"},{"to":"v0.42.23","from":"v0.42.22"},{"to":"v0.42.22","from":"v0.42.21"},{"to":"v0.42.21","from":"v0.42.20"},{"to":"v0.42.20","from":"v0.42.19"},{"to":"v0.42.19","from":"v0.42.18"},{"to":"v0.42.18","from":"v0.42.17"},{"to":"v0.42.17","from":"v0.42.16"},{"to":"v0.42.16","from":"v0.42.15"},{"to":"v0.42.15","from":"v0.42.14"},{"to":"v0.42.14","from":"v0.42.13"},{"to":"v0.42.13","from":"v0.42.12"},{"to":"v0.42.12","from":"v0.42.10"},{"to":"v0.42.10","from":"v0.42.9"},{"to":"v0.42.9","from":"v0.42.8"},{"to":"v0.42.8","from":"v0.42.7"},{"to":"v0.42.7","from":"v0.42.6"},{"to":"v0.42.6","from":"v0.42.5"},{"to":"v0.42.5","from":"v0.42.4"},{"to":"v0.42.4","from":"v0.42.3"},{"to":"v0.42.3","from":"v0.42.2"},{"to":"v0.42.2","from":"v0.42.1"},{"to":"v0.42.1","from":"v0.42.0"},{"to":"v0.42.0","from":"v0.41.16"},{"to":"v0.41.16","from":"v0.41.15"},{"to":"v0.41.15","from":"v0.41.14"},{"to":"v0.41.14","from":"v0.41.13"},{"to":"v0.41.13","from":"v0.41.12"},{"to":"v0.41.12","from":"v0.41.11"},{"to":"v0.41.11","from":"v0.41.10"},{"to":"v0.41.10","from":"v0.41.9"},{"to":"v0.41.9","from":"v0.41.8"},{"to":"v0.41.8","from":"v0.41.7"},{"to":"v0.41.7","from":"v0.41.6"},{"to":"v0.41.6","from":"v0.41.5"},{"to":"v0.41.5","from":"v0.41.4"},{"to":"v0.41.4","from":"v0.41.3"},{"to":"v0.41.3","from":"v0.41.2"},{"to":"v0.41.2","from":"v0.41.1"},{"to":"v0.41.1","from":"v0.41.0"},{"to":"v0.41.0","from":"v0.40.10"},{"to":"v0.40.10","from":"v0.40.9"},{"to":"v0.40.9","from":"v0.40.8"},{"to":"v0.40.8","from":"v0.40.7"},{"to":"v0.40.7","from":"v0.40.6"},{"to":"v0.40.6","from":"v0.40.5"},{"to":"v0.40.5","from":"v0.40.4"},{"to":"v0.40.4","from":"v0.40.3"},{"to":"v0.40.3","from":"v0.40.2"},{"to":"v0.40.2","from":"v0.40.1"},{"to":"v0.40.1","from":"v0.40.0"},{"to":"v0.40.0","from":"v0.39.8"},{"to":"v0.39.8","from":"v0.39.7"},{"to":"v0.39.7","from":"v0.39.6"},{"to":"v0.39.6","from":"v0.39.5"},{"to":"v0.39.5","from":"v0.39.4"},{"to":"v0.39.4","from":"v0.39.3"},{"to":"v0.39.3","from":"v0.39.2"},{"to":"v0.39.2","from":"v0.39.1"},{"to":"v0.39.1","from":"v0.39.0"},{"to":"v0.39.0","from":"v0.38.8"},{"to":"v0.38.8","from":"v0.38.7"},{"to":"v0.38.7","from":"v0.38.6"},{"to":"v0.38.6","from":"v0.38.5"},{"to":"v0.38.5","from":"v0.38.4"},{"to":"v0.38.4","from":"v0.38.3"},{"to":"v0.38.3","from":"v0.38.2"},{"to":"v0.38.2","from":"v0.38.1"},{"to":"v0.38.1","from":"v0.38.0"},{"to":"v0.38.0","from":"v0.37.11"},{"to":"v0.37.11","from":"v0.37.10"},{"to":"v0.37.10","from":"v0.37.9"},{"to":"v0.37.9","from":"v0.37.8"},{"to":"v0.37.8","from":"v0.37.7"},{"to":"v0.37.7","from":"v0.37.6"},{"to":"v0.37.6","from":"v0.37.5"},{"to":"v0.37.5","from":"v0.37.4"},{"to":"v0.37.4","from":"v0.37.3"},{"to":"v0.37.3","from":"v0.37.2"},{"to":"v0.37.2","from":"v0.37.1"},{"to":"v0.37.1","from":"v0.37.0"},{"to":"v0.37.0","from":"v0.36.28"},{"to":"v0.36.28","from":"v0.36.27"},{"to":"v0.36.27","from":"v0.36.26"},{"to":"v0.36.26","from":"v0.36.25"},{"to":"v0.36.25","from":"v0.36.24"},{"to":"v0.36.24","from":"v0.36.23"},{"to":"v0.36.23","from":"v0.36.22"},{"to":"v0.36.22","from":"v0.36.21"},{"to":"v0.36.21","from":"v0.36.20"},{"to":"v0.36.20","from":"v0.36.19"},{"to":"v0.36.19","from":"v0.36.18"},{"to":"v0.36.18","from":"v0.36.17"},{"to":"v0.36.17","from":"v0.36.16"},{"to":"v0.36.16","from":"v0.36.15"},{"to":"v0.36.15","from":"v0.36.14"},{"to":"v0.36.14","from":"v0.36.13"},{"to":"v0.36.13","from":"v0.36.12"},{"to":"v0.36.12","from":"v0.36.11"},{"to":"v0.36.11","from":"v0.36.10"},{"to":"v0.36.10","from":"v0.36.9"},{"to":"v0.36.9","from":"v0.36.8"},{"to":"v0.36.8","from":"v0.36.7"},{"to":"v0.36.7","from":"v0.36.6"},{"to":"v0.36.6","from":"v0.36.5"},{"to":"v0.36.5","from":"v0.36.4"},{"to":"v0.36.4","from":"v0.36.3"},{"to":"v0.36.3","from":"v0.36.2"},{"to":"v0.36.2","from":"v0.36.1"},{"to":"v0.36.1","from":"v0.36.0"},{"to":"v0.36.0","from":"v0.35.6"},{"to":"v0.35.6","from":"v0.35.5"},{"to":"v0.35.5","from":"v0.35.4"},{"to":"v0.35.4","from":"v0.35.3"},{"to":"v0.35.3","from":"v0.35.2"},{"to":"v0.35.2","from":"v0.35.1"},{"to":"v0.35.1","from":"v0.35.0"},{"to":"v0.35.0","from":"v0.34.8"},{"to":"v0.34.8","from":"v0.34.7"},{"to":"v0.34.7","from":"v0.34.6"},{"to":"v0.34.6","from":"v0.34.5"},{"to":"v0.34.5","from":"v0.34.4"},{"to":"v0.34.4","from":"v0.34.3"},{"to":"v0.34.3","from":"v0.34.2"},{"to":"v0.34.2","from":"v0.34.1"},{"to":"v0.34.1","from":"v0.34.0"},{"to":"v0.34.0","from":"v0.33.31"},{"to":"v0.33.31","from":"v0.33.30"},{"to":"v0.33.30","from":"v0.33.29"},{"to":"v0.33.29","from":"v0.33.28"},{"to":"v0.33.28","from":"v0.33.27"},{"to":"v0.33.27","from":"v0.33.26"},{"to":"v0.33.26","from":"v0.33.25"},{"to":"v0.33.25","from":"v0.33.24"},{"to":"v0.33.24","from":"v0.33.23"},{"to":"v0.33.23","from":"v0.33.22"},{"to":"v0.33.22","from":"v0.33.21"},{"to":"v0.33.21","from":"v0.33.20"},{"to":"v0.33.20","from":"v0.33.19"},{"to":"v0.33.19","from":"v0.33.18"},{"to":"v0.33.18","from":"v0.33.17"},{"to":"v0.33.17","from":"v0.33.16"},{"to":"v0.33.16","from":"v0.33.15"},{"to":"v0.33.15","from":"v0.33.14"},{"to":"v0.33.14","from":"v0.33.13"},{"to":"v0.33.13","from":"v0.33.12"},{"to":"v0.33.12","from":"v0.33.11"},{"to":"v0.33.11","from":"v0.33.10"},{"to":"v0.33.10","from":"v0.33.9"},{"to":"v0.33.9","from":"v0.33.8"},{"to":"v0.33.8","from":"v0.33.7"},{"to":"v0.33.7","from":"v0.33.6"},{"to":"v0.33.6","from":"v0.33.5"},{"to":"v0.33.5","from":"v0.33.4"},{"to":"v0.33.4","from":"v0.33.3"},{"to":"v0.33.3","from":"v0.33.2"},{"to":"v0.33.2","from":"v0.33.1"},{"to":"v0.33.1","from":"v0.33.0"},{"to":"v0.33.0","from":"v0.32.6"},{"to":"v0.32.6","from":"v0.32.5"},{"to":"v0.32.5","from":"v0.32.4"},{"to":"v0.32.4","from":"v0.32.3"},{"to":"v0.32.3","from":"v0.32.2"},{"to":"v0.32.2","from":"v0.32.1"},{"to":"v0.32.1","from":"v0.32.0"},{"to":"v0.32.0","from":"v0.31.2"},{"to":"v0.31.2","from":"v0.31.1"},{"to":"v0.31.1","from":"v0.31.0"},{"to":"v0.31.0","from":"v0.30.9"},{"to":"v0.30.9","from":"v0.30.8"},{"to":"v0.30.8","from":"v0.30.7"},{"to":"v0.30.7","from":"v0.30.6"},{"to":"v0.30.6","from":"v0.30.5"},{"to":"v0.30.5","from":"v0.30.4"},{"to":"v0.30.4","from":"v0.30.3"},{"to":"v0.30.3","from":"v0.30.2"},{"to":"v0.30.2","from":"v0.30.1"},{"to":"v0.30.1","from":"v0.30.0"},{"to":"v0.30.0","from":"v0.29.4"},{"to":"v0.29.4","from":"v0.29.3"},{"to":"v0.29.3","from":"v0.29.2"},{"to":"v0.29.2","from":"v0.29.1"},{"to":"v0.29.1","from":"v0.29.0"},{"to":"v0.29.0","from":"v0.28.9"},{"to":"v0.28.9","from":"v0.28.8"},{"to":"v0.28.8","from":"v0.28.7"},{"to":"v0.28.7","from":"v0.28.6"},{"to":"v0.28.6","from":"v0.28.5"},{"to":"v0.28.5","from":"v0.28.4"},{"to":"v0.28.4","from":"v0.28.3"},{"to":"v0.28.3","from":"v0.28.2"},{"to":"v0.28.2","from":"v0.28.1"},{"to":"v0.28.1","from":"v0.28.0"},{"to":"v0.28.0","from":"v0.27.9"},{"to":"v0.27.9","from":"v0.27.8"},{"to":"v0.27.8","from":"v0.27.7"},{"to":"v0.27.7","from":"v0.27.6"},{"to":"v0.27.6","from":"v0.27.5"},{"to":"v0.27.5","from":"v0.27.4"},{"to":"v0.27.4","from":"v0.27.3"},{"to":"v0.27.3","from":"v0.27.2"},{"to":"v0.27.2","from":"v0.27.1"},{"to":"v0.27.1","from":"v0.27.0"},{"to":"v0.27.0","from":"v0.26.2"},{"to":"v0.26.2","from":"v0.26.1"},{"to":"v0.26.1","from":"v0.26.0"},{"to":"v0.26.0","from":"v0.25.0"},{"to":"v0.25.0","from":"v0.24.1"},{"to":"v0.24.1","from":"v0.24.0"},{"to":"v0.24.0","from":"v0.23.7"},{"to":"v0.23.7","from":"v0.23.6"},{"to":"v0.23.6","from":"v0.23.5"},{"to":"v0.23.5","from":"v0.23.4"},{"to":"v0.23.4","from":"v0.23.3"},{"to":"v0.23.3","from":"v0.23.2"},{"to":"v0.23.2","from":"v0.23.1"},{"to":"v0.23.1","from":"v0.23.0"},{"to":"v0.23.0","from":"v0.22.3"},{"to":"v0.22.3","from":"v0.22.2"},{"to":"v0.22.2","from":"v0.22.1"},{"to":"v0.22.1","from":"v0.22.0"},{"to":"v0.22.0","from":"v0.21.0"},{"to":"v0.21.0","from":"v0.20.5"},{"to":"v0.20.5","from":"v0.20.4"},{"to":"v0.20.4","from":"v0.20.3"},{"to":"v0.20.3","from":"v0.20.2"},{"to":"v0.20.2","from":"v0.20.1"},{"to":"v0.20.1","from":"v0.20.0"},{"to":"v0.20.0","from":"v0.19.5"},{"to":"v0.19.5","from":"v0.19.4"},{"to":"v0.19.4","from":"v0.19.3"},{"to":"v0.19.3","from":"v0.19.2"},{"to":"v0.19.2","from":"v0.19.1"},{"to":"v0.19.1","from":"v0.19.0"},{"to":"v0.19.0","from":"6181a540729a7179d7a9d41489dfc241335cf1b5"}]
|