fitting 2.16.0 → 2.18.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/.rubocop.yml +34 -3
- data/CHANGELOG.md +19 -0
- data/README.md +37 -4
- data/fitting.gemspec +9 -9
- data/images/example.png +0 -0
- data/images/example2.png +0 -0
- data/images/logo.png +0 -0
- data/lib/fitting/configuration/legacy.rb +6 -5
- data/lib/fitting/configuration/yaml.rb +2 -2
- data/lib/fitting/cover/json_schema.rb +3 -2
- data/lib/fitting/cover/json_schema_enum.rb +1 -1
- data/lib/fitting/cover/json_schema_one_of.rb +1 -1
- data/lib/fitting/cover/response.rb +1 -5
- data/lib/fitting/documentation.rb +0 -2
- data/lib/fitting/matchers/response_matcher.rb +2 -1
- data/lib/fitting/records/documented/request.rb +1 -0
- data/lib/fitting/records/realized_unit.rb +13 -15
- data/lib/fitting/records/spherical/request.rb +1 -1
- data/lib/fitting/records/spherical/requests.rb +2 -1
- data/lib/fitting/records/spherical/response.rb +2 -2
- data/lib/fitting/records/test_unit/request.rb +4 -0
- data/lib/fitting/records/tested/request.rb +4 -4
- data/lib/fitting/records/unit/combination.rb +5 -6
- data/lib/fitting/records/unit/json_schema.rb +38 -33
- data/lib/fitting/records/unit/request.rb +1 -0
- data/lib/fitting/records/unit/response.rb +1 -0
- data/lib/fitting/report/action.rb +6 -9
- data/lib/fitting/report/actions.rb +7 -5
- data/lib/fitting/report/combination.rb +1 -15
- data/lib/fitting/report/combinations.rb +4 -5
- data/lib/fitting/report/console.rb +1 -0
- data/lib/fitting/report/prefix.rb +42 -51
- data/lib/fitting/report/prefixes.rb +6 -4
- data/lib/fitting/report/response.rb +17 -18
- data/lib/fitting/report/responses.rb +9 -8
- data/lib/fitting/report/test.rb +9 -11
- data/lib/fitting/report/tests.rb +10 -13
- data/lib/fitting/request.rb +0 -1
- data/lib/fitting/response.rb +4 -3
- data/lib/fitting/statistics/cover_error.rb +2 -0
- data/lib/fitting/statistics/cover_error_enum.rb +2 -0
- data/lib/fitting/statistics/cover_error_one_of.rb +2 -0
- data/lib/fitting/statistics/list.rb +5 -4
- data/lib/fitting/statistics/not_covered_responses.rb +1 -1
- data/lib/fitting/statistics/percent.rb +2 -1
- data/lib/fitting/statistics/template.rb +10 -8
- data/lib/fitting/storage/responses.rb +2 -2
- data/lib/fitting/storage/white_list.rb +7 -0
- data/lib/fitting/templates/realized_template.rb +2 -0
- data/lib/fitting/tests.rb +1 -1
- data/lib/fitting/version.rb +1 -1
- data/lib/fitting.rb +9 -6
- data/lib/tasks/fitting.rake +62 -54
- data/lib/templates/bomboniere/package-lock.json +82 -67
- data/lib/templates/bomboniere/src/components/HelloWorld.vue +3 -0
- metadata +30 -55
- data/example.png +0 -0
- data/example2.png +0 -0
@@ -17,6 +17,7 @@ module Fitting
|
|
17
17
|
return nil if @white_list == nil && @resource_white_list == nil && @include_resources == nil && @include_actions == nil
|
18
18
|
return @white_list if @white_list
|
19
19
|
return @white_list = transformation if @resource_white_list
|
20
|
+
|
20
21
|
@white_list = {}
|
21
22
|
@white_list.merge!(new_transformation) if @include_resources
|
22
23
|
@white_list.merge!(postnew_transformation) if @include_actions
|
@@ -25,6 +26,7 @@ module Fitting
|
|
25
26
|
|
26
27
|
def without_group
|
27
28
|
return @without_group_list if @without_group_list
|
29
|
+
|
28
30
|
@without_group_list = @resource_white_list.inject([]) do |all_requests, resource|
|
29
31
|
resource_selection(resource, all_requests)
|
30
32
|
end.flatten.uniq
|
@@ -43,6 +45,7 @@ module Fitting
|
|
43
45
|
|
44
46
|
def find_warnings(resource)
|
45
47
|
return nil if @resources[resource]
|
48
|
+
|
46
49
|
@warnings.push(
|
47
50
|
"FITTING WARNING: In the documentation there isn't resource from the resource_white_list #{resource}"
|
48
51
|
)
|
@@ -50,6 +53,7 @@ module Fitting
|
|
50
53
|
|
51
54
|
def puts_warnings
|
52
55
|
return nil if @warnings == []
|
56
|
+
|
53
57
|
warnings_string = @warnings.join("\n")
|
54
58
|
puts "\n#{warnings_string}"
|
55
59
|
end
|
@@ -93,6 +97,7 @@ module Fitting
|
|
93
97
|
|
94
98
|
def new_without_group
|
95
99
|
return @newwithout_group_list if @newwithout_group_list
|
100
|
+
|
96
101
|
@newwithout_group_list = @include_resources.inject([]) do |all_requests, resource|
|
97
102
|
if resource[0] == '/'
|
98
103
|
new_resource_selection(resource, all_requests)
|
@@ -120,6 +125,7 @@ module Fitting
|
|
120
125
|
|
121
126
|
def new_find_warnings(resource)
|
122
127
|
return nil if @new_resources[resource]
|
128
|
+
|
123
129
|
@warnings.push(
|
124
130
|
"FITTING WARNING: In the documentation there isn't resource from the resource_white_list #{resource}"
|
125
131
|
)
|
@@ -135,6 +141,7 @@ module Fitting
|
|
135
141
|
|
136
142
|
def postnew_without_group
|
137
143
|
return @postnewwithout_group_list if @postnewwithout_group_list
|
144
|
+
|
138
145
|
@postnewwithout_group_list = @include_actions.inject([]) do |all_requests, resource|
|
139
146
|
method, path = resource.split(' ')
|
140
147
|
if path[0] == '/'
|
@@ -27,8 +27,10 @@ module Fitting
|
|
27
27
|
all_good = requests.all?(&:valid_json_schemas?)
|
28
28
|
res += "path: #{key} #{all_good ? '✔' : '✖'}\n"
|
29
29
|
next if all_good
|
30
|
+
|
30
31
|
requests.map do |request|
|
31
32
|
next if request.valid_json_schemas?
|
33
|
+
|
32
34
|
res += " full path: #{request.test_path} ✖\n"
|
33
35
|
res += " request.method #{request.method}\n"
|
34
36
|
res += " request.path #{request.path}\n"
|
data/lib/fitting/tests.rb
CHANGED
@@ -13,7 +13,7 @@ module Fitting
|
|
13
13
|
end
|
14
14
|
json = JSON.dump(array)
|
15
15
|
|
16
|
-
File.open("fitting_tests/test#{ENV[
|
16
|
+
File.open("fitting_tests/test#{ENV['TEST_ENV_NUMBER']}.json", 'w') { |file| file.write(json) }
|
17
17
|
end
|
18
18
|
|
19
19
|
def make_dir(dir_name)
|
data/lib/fitting/version.rb
CHANGED
data/lib/fitting.rb
CHANGED
@@ -16,7 +16,6 @@ module Fitting
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def statistics
|
19
|
-
puts 'DEPRECATED: deprecated method statistics, use new method save_test_data'
|
20
19
|
responses = Fitting::Storage::Responses.new
|
21
20
|
|
22
21
|
RSpec.configure do |config|
|
@@ -30,18 +29,21 @@ module Fitting
|
|
30
29
|
end
|
31
30
|
end
|
32
31
|
|
32
|
+
extend Gem::Deprecate
|
33
|
+
deprecate :statistics, :save_test_data, 2022, 1
|
34
|
+
|
33
35
|
def save_test_data
|
34
36
|
responses = Fitting::Storage::Responses.new
|
35
37
|
|
36
|
-
FileUtils.rm_r Dir.glob(
|
38
|
+
FileUtils.rm_r Dir.glob('fitting_tests/*'), force: true
|
37
39
|
|
38
40
|
RSpec.configure do |config|
|
39
|
-
config.after(:each, type: :request) do
|
40
|
-
responses.add(response,
|
41
|
+
config.after(:each, type: :request) do |example|
|
42
|
+
responses.add(response, example.metadata)
|
41
43
|
end
|
42
44
|
|
43
|
-
config.after(:each, type: :controller) do
|
44
|
-
responses.add(response,
|
45
|
+
config.after(:each, type: :controller) do |example|
|
46
|
+
responses.add(response, example.metadata)
|
45
47
|
end
|
46
48
|
|
47
49
|
config.after(:suite) do
|
@@ -61,6 +63,7 @@ module Fitting
|
|
61
63
|
|
62
64
|
def self.load_tasks
|
63
65
|
return if loaded_tasks
|
66
|
+
|
64
67
|
self.loaded_tasks = true
|
65
68
|
|
66
69
|
Dir[File.join(File.dirname(__FILE__), 'tasks', '**/*.rake')].each do |rake|
|
data/lib/tasks/fitting.rake
CHANGED
@@ -22,29 +22,33 @@ namespace :fitting do
|
|
22
22
|
end
|
23
23
|
|
24
24
|
prefixes.to_a.map do |prefix|
|
25
|
+
next if prefix.skip?
|
26
|
+
|
25
27
|
prefix.actions.to_a.map do |action|
|
26
28
|
action.responses.join(action.tests)
|
27
|
-
end
|
29
|
+
end
|
28
30
|
end
|
29
31
|
|
30
32
|
prefixes.to_a.map do |prefix|
|
33
|
+
next if prefix.skip?
|
34
|
+
|
31
35
|
prefix.actions.to_a.map do |action|
|
32
36
|
action.responses.to_a.map do |response|
|
33
37
|
response.combinations.join(response.tests)
|
34
38
|
end
|
35
|
-
end
|
39
|
+
end
|
36
40
|
end
|
37
41
|
|
38
42
|
report = JSON.pretty_generate(
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
+
{
|
44
|
+
tests_without_prefixes: tests.without_prefixes,
|
45
|
+
prefixes_details: prefixes.to_a.map(&:details)
|
46
|
+
}
|
43
47
|
)
|
44
48
|
|
45
49
|
destination = 'fitting'
|
46
50
|
FileUtils.mkdir_p(destination)
|
47
|
-
FileUtils.rm_r Dir.glob("#{destination}/*"), :
|
51
|
+
FileUtils.rm_r Dir.glob("#{destination}/*"), force: true
|
48
52
|
File.open('fitting/report.json', 'w') { |file| file.write(report) }
|
49
53
|
|
50
54
|
gem_path = $LOAD_PATH.find { |i| i.include?('fitting') }
|
@@ -54,6 +58,8 @@ namespace :fitting do
|
|
54
58
|
json_schemas = {}
|
55
59
|
combinations = {}
|
56
60
|
prefixes.to_a.map do |prefix|
|
61
|
+
next if prefix.skip?
|
62
|
+
|
57
63
|
prefix.actions.to_a.map do |action|
|
58
64
|
action.responses.to_a.map do |response|
|
59
65
|
json_schemas.merge!(response.id => response.body)
|
@@ -61,24 +67,24 @@ namespace :fitting do
|
|
61
67
|
combinations.merge!(combination.id => combination.json_schema)
|
62
68
|
end
|
63
69
|
end
|
64
|
-
end
|
70
|
+
end
|
65
71
|
end
|
66
72
|
File.open('fitting/json_schemas.json', 'w') { |file| file.write(JSON.pretty_generate(json_schemas)) }
|
67
73
|
File.open('fitting/combinations.json', 'w') { |file| file.write(JSON.pretty_generate(combinations)) }
|
68
74
|
File.open('fitting/tests.json', 'w') { |file| file.write(JSON.pretty_generate(tests.to_h)) }
|
69
75
|
|
70
|
-
js_path = Dir["#{destination}/js/*"].find { |f| f[0..14] == 'fitting/js/app.' and f[-3
|
76
|
+
js_path = Dir["#{destination}/js/*"].find { |f| f[0..14] == 'fitting/js/app.' and f[-3..] == '.js' }
|
71
77
|
js_file = File.read(js_path)
|
72
|
-
new_js_file = js_file.gsub(
|
73
|
-
new_js_file = new_js_file.gsub(
|
74
|
-
new_js_file = new_js_file.gsub(
|
75
|
-
new_js_file = new_js_file.gsub(
|
76
|
-
new_js_file = new_js_file.gsub(
|
78
|
+
new_js_file = js_file.gsub('{stub:"prefixes report"}', report)
|
79
|
+
new_js_file = new_js_file.gsub('{stub:"for action page"}', report)
|
80
|
+
new_js_file = new_js_file.gsub('{stub:"json-schemas"}', JSON.pretty_generate(json_schemas))
|
81
|
+
new_js_file = new_js_file.gsub('{stub:"combinations"}', JSON.pretty_generate(combinations))
|
82
|
+
new_js_file = new_js_file.gsub('{stub:"tests"}', JSON.pretty_generate(tests.to_h))
|
77
83
|
File.open(js_path, 'w') { |file| file.write(new_js_file) }
|
78
84
|
|
79
85
|
console = Fitting::Report::Console.new(
|
80
|
-
|
81
|
-
|
86
|
+
tests.without_prefixes,
|
87
|
+
prefixes.to_a.map(&:details)
|
82
88
|
)
|
83
89
|
|
84
90
|
puts console.output
|
@@ -88,53 +94,53 @@ namespace :fitting do
|
|
88
94
|
exit 0
|
89
95
|
|
90
96
|
actions.map do |action|
|
91
|
-
action.to_hash[
|
97
|
+
action.to_hash['responses'].map do |response|
|
92
98
|
response['combination'] ||= []
|
93
|
-
combinations = Fitting::Cover::JSONSchema.new(response['body']).combi +
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
99
|
+
combinations = Fitting::Cover::JSONSchema.new(response['body']).combi +
|
100
|
+
Fitting::Cover::JSONSchemaEnum.new(response['body']).combi +
|
101
|
+
Fitting::Cover::JSONSchemaOneOf.new(response['body']).combi
|
102
|
+
next unless combinations != []
|
103
|
+
|
104
|
+
combinations.map do |combination|
|
105
|
+
response['combination'].push(
|
106
|
+
{
|
107
|
+
'json_schema' => combination[0],
|
108
|
+
'type' => combination[1][0],
|
109
|
+
'combination' => combination[1][1],
|
110
|
+
'tests' => [],
|
111
|
+
'error' => []
|
112
|
+
}
|
113
|
+
)
|
106
114
|
end
|
107
115
|
end
|
108
116
|
end
|
109
117
|
|
110
118
|
actions.map do |action|
|
111
|
-
action.to_hash[
|
119
|
+
action.to_hash['responses'].map do |response|
|
112
120
|
response['tests'] ||= []
|
113
121
|
response['tests'].map do |test|
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
end
|
125
|
-
rescue JSON::Schema::SchemaError => error
|
126
|
-
combination['error'].push({test: test, error: error})
|
127
|
-
end
|
122
|
+
next unless response['combination'][0]
|
123
|
+
|
124
|
+
response['combination'].map do |combination|
|
125
|
+
res = JSON::Validator.fully_validate(combination['json_schema'], test['response']['body'])
|
126
|
+
if res == []
|
127
|
+
combination['tests'].push(test)
|
128
|
+
response['tests'] = response['tests'] - [test]
|
129
|
+
next
|
130
|
+
else
|
131
|
+
combination['error'].push({ test: test, error: res })
|
128
132
|
end
|
133
|
+
rescue JSON::Schema::SchemaError => e
|
134
|
+
combination['error'].push({ test: test, error: e })
|
129
135
|
end
|
130
136
|
end
|
131
137
|
end
|
132
138
|
end
|
133
139
|
|
134
|
-
actions_test = {actions: actions, tests: tests}
|
140
|
+
actions_test = { actions: actions, tests: tests }
|
135
141
|
|
136
142
|
makedirs('fitting')
|
137
|
-
File.open('fitting/old_report.json', 'w') { |file| file.write(
|
143
|
+
File.open('fitting/old_report.json', 'w') { |file| file.write(JSON.dump(actions_test)) }
|
138
144
|
end
|
139
145
|
|
140
146
|
# deprecated
|
@@ -154,7 +160,8 @@ namespace :fitting do
|
|
154
160
|
|
155
161
|
desc 'Fitting documentation responses cover'
|
156
162
|
task :documentation_responses, [:size] => :environment do |_, args|
|
157
|
-
|
163
|
+
case args.size
|
164
|
+
when 'xs'
|
158
165
|
documented_unit = Fitting::Statistics::Template.new(
|
159
166
|
Fitting::Records::Spherical::Requests.new,
|
160
167
|
Fitting.configuration
|
@@ -165,7 +172,7 @@ namespace :fitting do
|
|
165
172
|
puts 'Not all responses from the whitelist are covered!'
|
166
173
|
exit 1
|
167
174
|
end
|
168
|
-
|
175
|
+
when 's'
|
169
176
|
documented_unit = Fitting::Statistics::Template.new(
|
170
177
|
Fitting::Records::Spherical::Requests.new,
|
171
178
|
Fitting.configuration,
|
@@ -177,7 +184,7 @@ namespace :fitting do
|
|
177
184
|
puts 'Not all responses from the whitelist are covered!'
|
178
185
|
exit 1
|
179
186
|
end
|
180
|
-
|
187
|
+
when 'm'
|
181
188
|
documented_unit = Fitting::Statistics::Template.new(
|
182
189
|
Fitting::Records::Spherical::Requests.new,
|
183
190
|
Fitting.configuration,
|
@@ -189,7 +196,7 @@ namespace :fitting do
|
|
189
196
|
puts 'Not all responses from the whitelist are covered!'
|
190
197
|
exit 1
|
191
198
|
end
|
192
|
-
|
199
|
+
when 'l'
|
193
200
|
documented_unit = Fitting::Statistics::Template.new(
|
194
201
|
Fitting::Records::Spherical::Requests.new,
|
195
202
|
Fitting.configuration,
|
@@ -208,19 +215,20 @@ namespace :fitting do
|
|
208
215
|
|
209
216
|
desc 'Fitting documentation responses cover error'
|
210
217
|
task :documentation_responses_error, [:size] => :environment do |_, args|
|
211
|
-
|
218
|
+
case args.size
|
219
|
+
when 's'
|
212
220
|
documented_unit = Fitting::Statistics::TemplateCoverError.new(
|
213
221
|
Fitting::Records::Spherical::Requests.new,
|
214
222
|
Fitting.configuration
|
215
223
|
)
|
216
224
|
puts documented_unit.stats
|
217
|
-
|
225
|
+
when 'm'
|
218
226
|
documented_unit = Fitting::Statistics::TemplateCoverErrorEnum.new(
|
219
227
|
Fitting::Records::Spherical::Requests.new,
|
220
228
|
Fitting.configuration
|
221
229
|
)
|
222
230
|
puts documented_unit.stats
|
223
|
-
|
231
|
+
when 'l'
|
224
232
|
documented_unit = Fitting::Statistics::TemplateCoverErrorOneOf.new(
|
225
233
|
Fitting::Records::Spherical::Requests.new,
|
226
234
|
Fitting.configuration
|
@@ -1185,15 +1185,48 @@
|
|
1185
1185
|
}
|
1186
1186
|
},
|
1187
1187
|
"browserslist": {
|
1188
|
-
"version": "4.
|
1189
|
-
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.
|
1190
|
-
"integrity": "sha512-
|
1188
|
+
"version": "4.16.6",
|
1189
|
+
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz",
|
1190
|
+
"integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==",
|
1191
1191
|
"dev": true,
|
1192
1192
|
"requires": {
|
1193
|
-
"caniuse-lite": "^1.0.
|
1194
|
-
"
|
1195
|
-
"
|
1196
|
-
"
|
1193
|
+
"caniuse-lite": "^1.0.30001219",
|
1194
|
+
"colorette": "^1.2.2",
|
1195
|
+
"electron-to-chromium": "^1.3.723",
|
1196
|
+
"escalade": "^3.1.1",
|
1197
|
+
"node-releases": "^1.1.71"
|
1198
|
+
},
|
1199
|
+
"dependencies": {
|
1200
|
+
"caniuse-lite": {
|
1201
|
+
"version": "1.0.30001230",
|
1202
|
+
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001230.tgz",
|
1203
|
+
"integrity": "sha512-5yBd5nWCBS+jWKTcHOzXwo5xzcj4ePE/yjtkZyUV1BTUmrBaA9MRGC+e7mxnqXSA90CmCA8L3eKLaSUkt099IQ==",
|
1204
|
+
"dev": true
|
1205
|
+
},
|
1206
|
+
"colorette": {
|
1207
|
+
"version": "1.2.2",
|
1208
|
+
"resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz",
|
1209
|
+
"integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==",
|
1210
|
+
"dev": true
|
1211
|
+
},
|
1212
|
+
"electron-to-chromium": {
|
1213
|
+
"version": "1.3.739",
|
1214
|
+
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.739.tgz",
|
1215
|
+
"integrity": "sha512-+LPJVRsN7hGZ9EIUUiWCpO7l4E3qBYHNadazlucBfsXBbccDFNKUBAgzE68FnkWGJPwD/AfKhSzL+G+Iqb8A4A==",
|
1216
|
+
"dev": true
|
1217
|
+
},
|
1218
|
+
"escalade": {
|
1219
|
+
"version": "3.1.1",
|
1220
|
+
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
|
1221
|
+
"integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
|
1222
|
+
"dev": true
|
1223
|
+
},
|
1224
|
+
"node-releases": {
|
1225
|
+
"version": "1.1.72",
|
1226
|
+
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.72.tgz",
|
1227
|
+
"integrity": "sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==",
|
1228
|
+
"dev": true
|
1229
|
+
}
|
1197
1230
|
}
|
1198
1231
|
},
|
1199
1232
|
"buffer": {
|
@@ -1267,9 +1300,9 @@
|
|
1267
1300
|
},
|
1268
1301
|
"dependencies": {
|
1269
1302
|
"ssri": {
|
1270
|
-
"version": "6.0.
|
1271
|
-
"resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.
|
1272
|
-
"integrity": "sha512-
|
1303
|
+
"version": "6.0.2",
|
1304
|
+
"resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz",
|
1305
|
+
"integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==",
|
1273
1306
|
"dev": true,
|
1274
1307
|
"requires": {
|
1275
1308
|
"figgy-pudding": "^3.5.1"
|
@@ -1722,9 +1755,9 @@
|
|
1722
1755
|
"dev": true
|
1723
1756
|
},
|
1724
1757
|
"color-string": {
|
1725
|
-
"version": "1.
|
1726
|
-
"resolved": "https://registry.npmjs.org/color-string/-/color-string-1.
|
1727
|
-
"integrity": "sha512-
|
1758
|
+
"version": "1.6.0",
|
1759
|
+
"resolved": "https://registry.npmjs.org/color-string/-/color-string-1.6.0.tgz",
|
1760
|
+
"integrity": "sha512-c/hGS+kRWJutUBEngKKmk4iH3sD59MBkoxVapS/0wgpCz2u7XsNloxknyvBhzwEs1IbV36D9PwqLPJ2DTu3vMA==",
|
1728
1761
|
"dev": true,
|
1729
1762
|
"requires": {
|
1730
1763
|
"color-name": "^1.0.0",
|
@@ -2693,9 +2726,9 @@
|
|
2693
2726
|
"dev": true
|
2694
2727
|
},
|
2695
2728
|
"dns-packet": {
|
2696
|
-
"version": "1.3.
|
2697
|
-
"resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.
|
2698
|
-
"integrity": "sha512-
|
2729
|
+
"version": "1.3.4",
|
2730
|
+
"resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz",
|
2731
|
+
"integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==",
|
2699
2732
|
"dev": true,
|
2700
2733
|
"requires": {
|
2701
2734
|
"ip": "^1.1.0",
|
@@ -2836,31 +2869,25 @@
|
|
2836
2869
|
"integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==",
|
2837
2870
|
"dev": true
|
2838
2871
|
},
|
2839
|
-
"electron-to-chromium": {
|
2840
|
-
"version": "1.3.483",
|
2841
|
-
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.483.tgz",
|
2842
|
-
"integrity": "sha512-+05RF8S9rk8S0G8eBCqBRBaRq7+UN3lDs2DAvnG8SBSgQO3hjy0+qt4CmRk5eiuGbTcaicgXfPmBi31a+BD3lg==",
|
2843
|
-
"dev": true
|
2844
|
-
},
|
2845
2872
|
"elliptic": {
|
2846
|
-
"version": "6.5.
|
2847
|
-
"resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.
|
2848
|
-
"integrity": "sha512-
|
2873
|
+
"version": "6.5.4",
|
2874
|
+
"resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz",
|
2875
|
+
"integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==",
|
2849
2876
|
"dev": true,
|
2850
2877
|
"requires": {
|
2851
|
-
"bn.js": "^4.
|
2852
|
-
"brorand": "^1.0
|
2878
|
+
"bn.js": "^4.11.9",
|
2879
|
+
"brorand": "^1.1.0",
|
2853
2880
|
"hash.js": "^1.0.0",
|
2854
|
-
"hmac-drbg": "^1.0.
|
2855
|
-
"inherits": "^2.0.
|
2856
|
-
"minimalistic-assert": "^1.0.
|
2857
|
-
"minimalistic-crypto-utils": "^1.0.
|
2881
|
+
"hmac-drbg": "^1.0.1",
|
2882
|
+
"inherits": "^2.0.4",
|
2883
|
+
"minimalistic-assert": "^1.0.1",
|
2884
|
+
"minimalistic-crypto-utils": "^1.0.1"
|
2858
2885
|
},
|
2859
2886
|
"dependencies": {
|
2860
2887
|
"bn.js": {
|
2861
|
-
"version": "4.
|
2862
|
-
"resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.
|
2863
|
-
"integrity": "sha512-
|
2888
|
+
"version": "4.12.0",
|
2889
|
+
"resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
|
2890
|
+
"integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
|
2864
2891
|
"dev": true
|
2865
2892
|
}
|
2866
2893
|
}
|
@@ -2978,12 +3005,6 @@
|
|
2978
3005
|
"is-symbol": "^1.0.2"
|
2979
3006
|
}
|
2980
3007
|
},
|
2981
|
-
"escalade": {
|
2982
|
-
"version": "3.0.1",
|
2983
|
-
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.1.tgz",
|
2984
|
-
"integrity": "sha512-DR6NO3h9niOT+MZs7bjxlj2a1k+POu5RN8CLTPX2+i78bRi9eLe7+0zXgUHMnGXWybYcL61E9hGhPKqedy8tQA==",
|
2985
|
-
"dev": true
|
2986
|
-
},
|
2987
3008
|
"escape-html": {
|
2988
3009
|
"version": "1.0.3",
|
2989
3010
|
"resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
|
@@ -3846,9 +3867,9 @@
|
|
3846
3867
|
"dev": true
|
3847
3868
|
},
|
3848
3869
|
"hosted-git-info": {
|
3849
|
-
"version": "2.8.
|
3850
|
-
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.
|
3851
|
-
"integrity": "sha512-
|
3870
|
+
"version": "2.8.9",
|
3871
|
+
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
|
3872
|
+
"integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
|
3852
3873
|
"dev": true
|
3853
3874
|
},
|
3854
3875
|
"hpack.js": {
|
@@ -4762,9 +4783,9 @@
|
|
4762
4783
|
}
|
4763
4784
|
},
|
4764
4785
|
"lodash": {
|
4765
|
-
"version": "4.17.
|
4766
|
-
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.
|
4767
|
-
"integrity": "sha512-
|
4786
|
+
"version": "4.17.21",
|
4787
|
+
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
|
4788
|
+
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
|
4768
4789
|
"dev": true
|
4769
4790
|
},
|
4770
4791
|
"lodash.defaultsdeep": {
|
@@ -5295,12 +5316,6 @@
|
|
5295
5316
|
}
|
5296
5317
|
}
|
5297
5318
|
},
|
5298
|
-
"node-releases": {
|
5299
|
-
"version": "1.1.58",
|
5300
|
-
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.58.tgz",
|
5301
|
-
"integrity": "sha512-NxBudgVKiRh/2aPWMgPR7bPTX0VPmGx5QBwCtdHitnqFE5/O8DeBXuIMH1nwNnw/aMo6AjOrpsHzfY3UbUJ7yg==",
|
5302
|
-
"dev": true
|
5303
|
-
},
|
5304
5319
|
"normalize-package-data": {
|
5305
5320
|
"version": "2.5.0",
|
5306
5321
|
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
|
@@ -5747,9 +5762,9 @@
|
|
5747
5762
|
"dev": true
|
5748
5763
|
},
|
5749
5764
|
"path-parse": {
|
5750
|
-
"version": "1.0.
|
5751
|
-
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.
|
5752
|
-
"integrity": "sha512-
|
5765
|
+
"version": "1.0.7",
|
5766
|
+
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
|
5767
|
+
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
|
5753
5768
|
"dev": true
|
5754
5769
|
},
|
5755
5770
|
"path-to-regexp": {
|
@@ -5869,9 +5884,9 @@
|
|
5869
5884
|
"dev": true
|
5870
5885
|
},
|
5871
5886
|
"postcss": {
|
5872
|
-
"version": "7.0.
|
5873
|
-
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.
|
5874
|
-
"integrity": "sha512-
|
5887
|
+
"version": "7.0.36",
|
5888
|
+
"resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz",
|
5889
|
+
"integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==",
|
5875
5890
|
"dev": true,
|
5876
5891
|
"requires": {
|
5877
5892
|
"chalk": "^2.4.2",
|
@@ -8248,9 +8263,9 @@
|
|
8248
8263
|
}
|
8249
8264
|
},
|
8250
8265
|
"url-parse": {
|
8251
|
-
"version": "1.
|
8252
|
-
"resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.
|
8253
|
-
"integrity": "sha512-
|
8266
|
+
"version": "1.5.3",
|
8267
|
+
"resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.3.tgz",
|
8268
|
+
"integrity": "sha512-IIORyIQD9rvj0A4CLWsHkBBJuNqWpFQe224b6j9t/ABmquIS0qDU2pY6kl6AuOrL5OkCXHMCFNe1jBcuAggjvQ==",
|
8254
8269
|
"dev": true,
|
8255
8270
|
"requires": {
|
8256
8271
|
"querystringify": "^2.1.1",
|
@@ -9199,9 +9214,9 @@
|
|
9199
9214
|
"dev": true
|
9200
9215
|
},
|
9201
9216
|
"ws": {
|
9202
|
-
"version": "6.2.
|
9203
|
-
"resolved": "https://registry.npmjs.org/ws/-/ws-6.2.
|
9204
|
-
"integrity": "sha512-
|
9217
|
+
"version": "6.2.2",
|
9218
|
+
"resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz",
|
9219
|
+
"integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==",
|
9205
9220
|
"dev": true,
|
9206
9221
|
"requires": {
|
9207
9222
|
"async-limiter": "~1.0.0"
|
@@ -9214,9 +9229,9 @@
|
|
9214
9229
|
"dev": true
|
9215
9230
|
},
|
9216
9231
|
"y18n": {
|
9217
|
-
"version": "4.0.
|
9218
|
-
"resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.
|
9219
|
-
"integrity": "sha512-
|
9232
|
+
"version": "4.0.1",
|
9233
|
+
"resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz",
|
9234
|
+
"integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==",
|
9220
9235
|
"dev": true
|
9221
9236
|
},
|
9222
9237
|
"yallist": {
|