cm-admin 0.9.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/ISSUE_TEMPLATE/bug_report.md +82 -0
- data/.github/ISSUE_TEMPLATE/config.yml +5 -0
- data/.github/ISSUE_TEMPLATE/feature_request.md +21 -0
- data/Gemfile.lock +96 -9
- data/app/assets/config/cm_admin_manifest.js +1 -0
- data/app/assets/javascripts/cm_admin/application.js +5 -0
- data/app/{javascript/packs → assets/javascripts}/cm_admin/exports.js +0 -0
- data/app/{javascript/packs → assets/javascripts}/cm_admin/filters.js +20 -31
- data/app/{javascript/packs → assets/javascripts}/cm_admin/form_validation.js +0 -0
- data/app/{javascript/packs → assets/javascripts}/cm_admin/quick_search.js +16 -3
- data/app/assets/javascripts/cm_admin/scaffolds.js +44 -0
- data/app/assets/stylesheets/cm_admin/base/form.scss +115 -40
- data/app/assets/stylesheets/cm_admin/base/scaffold.scss +2 -0
- data/app/assets/stylesheets/cm_admin/components/_input.scss +12 -0
- data/app/controllers/cm_admin/resource_controller.rb +10 -7
- data/app/helpers/cm_admin/application_helper.rb +0 -3
- data/app/javascript/packs/cm_admin/application.js +4 -4
- data/app/javascript/packs/cm_admin/scaffolds.js +81 -0
- data/app/views/cm_admin/main/_nested_fields.html.slim +26 -9
- data/app/views/cm_admin/main/_nested_table_form.html.slim +9 -10
- data/app/views/cm_admin/main/_tabs.html.slim +1 -1
- data/app/views/layouts/cm_admin.html.slim +9 -4
- data/app/views/layouts/static.html.slim +3 -2
- data/bin/importmap +15 -0
- data/bin/webpack +8 -8
- data/bin/webpack-dev-server +9 -9
- data/cm_admin.gemspec +3 -0
- data/config/importmap.rb +12 -0
- data/config/webpack/development.js +1 -1
- data/config/webpack/environment.js +1 -1
- data/config/webpack/production.js +1 -1
- data/config/webpacker.yml +2 -2
- data/lib/cm_admin/configuration.rb +5 -2
- data/lib/cm_admin/engine.rb +36 -15
- data/lib/cm_admin/models/filter.rb +1 -1
- data/lib/cm_admin/models/form_field.rb +8 -2
- data/lib/cm_admin/version.rb +1 -1
- data/lib/cm_admin/version_manager.rb +21 -0
- data/lib/cm_admin/view_helpers/form_field_helper.rb +183 -35
- data/lib/cm_admin/view_helpers/page_info_helper.rb +4 -0
- data/lib/cm_admin.rb +7 -2
- data/lib/generators/cm_admin/templates/actiontext.scss +0 -1
- data/lib/tasks/webpack_install.rake +15 -13
- data/package-lock.json +42 -55
- data/tmp/cache/webpacker/last-compilation-digest-development +1 -1
- data/yarn.lock +6708 -6916
- metadata +43 -6
@@ -1,50 +1,198 @@
|
|
1
1
|
module CmAdmin
|
2
2
|
module ViewHelpers
|
3
3
|
module FormFieldHelper
|
4
|
-
def input_field_for_column(
|
5
|
-
return unless
|
6
|
-
|
7
|
-
|
4
|
+
def input_field_for_column(form_obj, cm_field)
|
5
|
+
return unless cm_field.display_if.call(form_obj.object)
|
6
|
+
|
7
|
+
value = cm_field.helper_method ? send(cm_field.helper_method, form_obj.object, cm_field.field_name) : form_obj.object.send(cm_field.field_name)
|
8
|
+
is_required = form_obj.object._validators[cm_field.field_name].map(&:kind).include?(:presence)
|
8
9
|
required_class = is_required ? 'required' : ''
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
10
|
+
target_action = @model.available_actions.select{|x| x.name == cm_field.target[:action_name].to_s}.first if cm_field.target.present?
|
11
|
+
send("cm_#{cm_field.input_type}_field", form_obj, cm_field, value, required_class, target_action)
|
12
|
+
end
|
13
|
+
|
14
|
+
def cm_integer_field(form_obj, cm_field, value, required_class, _target_action)
|
15
|
+
form_obj.text_field cm_field.field_name,
|
16
|
+
class: "normal-input #{required_class}",
|
17
|
+
disabled: cm_field.disabled,
|
18
|
+
value: value,
|
19
|
+
placeholder: "Enter #{cm_field.field_name.to_s.humanize.downcase}",
|
20
|
+
data: { behaviour: 'integer-only' }
|
21
|
+
end
|
22
|
+
|
23
|
+
def cm_decimal_field(form_obj, cm_field, value, required_class, _target_action)
|
24
|
+
form_obj.number_field cm_field.field_name,
|
25
|
+
class: "normal-input #{required_class}",
|
26
|
+
disabled: cm_field.disabled,
|
27
|
+
value: value,
|
28
|
+
placeholder: "Enter #{cm_field.field_name.to_s.downcase.gsub('_', ' ')}",
|
29
|
+
data: { behaviour: 'decimal-only' }
|
30
|
+
end
|
31
|
+
|
32
|
+
def cm_string_field(form_obj, cm_field, value, required_class, _target_action)
|
33
|
+
form_obj.text_field cm_field.field_name,
|
34
|
+
class: "normal-input #{required_class}",
|
35
|
+
disabled: cm_field.disabled,
|
36
|
+
value: value,
|
37
|
+
placeholder: "Enter #{cm_field.field_name.to_s.downcase.gsub('_', ' ')}"
|
38
|
+
end
|
39
|
+
|
40
|
+
def cm_single_select_field(form_obj, cm_field, value, required_class, target_action)
|
41
|
+
form_obj.select cm_field.field_name, options_for_select(select_collection_value(form_obj.object, cm_field), form_obj.object.send(cm_field.field_name)),
|
42
|
+
{ include_blank: cm_field.placeholder.to_s },
|
43
|
+
class: "normal-input #{required_class} select-2",
|
44
|
+
disabled: cm_field.disabled,
|
45
|
+
data: {
|
46
|
+
field_name: cm_field.field_name,
|
47
|
+
field_type: 'linked-field',
|
48
|
+
target_action: target_action&.name,
|
49
|
+
target_url: target_action&.name ? cm_admin.send("#{@model.name.underscore}_#{target_action&.name}_path") : ''
|
50
|
+
}
|
51
|
+
end
|
52
|
+
|
53
|
+
def cm_multi_select_field(form_obj, cm_field, value, required_class, target_action)
|
54
|
+
form_obj.select cm_field.field_name,
|
55
|
+
options_for_select(select_collection_value(form_obj.object, cm_field), form_obj.object.send(cm_field.field_name)),
|
56
|
+
{ include_blank: "Select #{cm_field.field_name.to_s.downcase.gsub('_', ' ')}" },
|
57
|
+
class: "normal-input #{required_class} select-2",
|
58
|
+
disabled: cm_field.disabled, multiple: true
|
59
|
+
end
|
60
|
+
|
61
|
+
def cm_date_field(form_obj, cm_field, value, required_class, _target_action)
|
62
|
+
form_obj.text_field cm_field.field_name,
|
63
|
+
class: "normal-input #{required_class}",
|
64
|
+
disabled: cm_field.disabled,
|
65
|
+
value: value&.strftime('%d-%m-%Y'),
|
66
|
+
placeholder: "Enter #{cm_field.field_name.to_s.downcase.gsub('_', ' ')}",
|
67
|
+
data: { behaviour: 'date-only' }
|
68
|
+
end
|
69
|
+
|
70
|
+
def cm_date_time_field(form_obj, cm_field, value, required_class, _target_action)
|
71
|
+
form_obj.text_field cm_field.field_name,
|
72
|
+
class: "normal-input #{required_class}",
|
73
|
+
disabled: cm_field.disabled,
|
74
|
+
value: value,
|
75
|
+
placeholder: "Enter #{cm_field.field_name.to_s.downcase.gsub('_', ' ')}",
|
76
|
+
data: { behaviour: 'date-time' }
|
77
|
+
end
|
78
|
+
|
79
|
+
def cm_text_field(form_obj, cm_field, value, required_class, _target_action)
|
80
|
+
form_obj.text_area cm_field.field_name,
|
81
|
+
class: "normal-input #{required_class}",
|
82
|
+
placeholder: "Enter #{cm_field.field_name.to_s.downcase.gsub('_', ' ')}"
|
83
|
+
end
|
84
|
+
|
85
|
+
def cm_rich_text_field(form_obj, cm_field, value, required_class, _target_action)
|
86
|
+
form_obj.rich_text_area cm_field.field_name,
|
87
|
+
class: "normal-input #{required_class}",
|
88
|
+
placeholder: "Enter #{cm_field.field_name.to_s.downcase.gsub('_', ' ')}"
|
89
|
+
end
|
90
|
+
|
91
|
+
def cm_single_file_upload_field(form_obj, cm_field, value, required_class, _target_action)
|
92
|
+
form_obj.file_field cm_field.field_name, class: "normal-input #{required_class}"
|
93
|
+
end
|
94
|
+
|
95
|
+
def cm_single_multi_upload_field(form_obj, cm_field, value, required_class, _target_action)
|
96
|
+
form_obj.file_field cm_field.field_name, multiple: true, class: "normal-input #{required_class}"
|
97
|
+
end
|
98
|
+
|
99
|
+
def cm_check_box_field(form_obj, cm_field, value, required_class, target_action)
|
100
|
+
format_check_box_options(value, form_obj, cm_field, required_class, target_action)
|
101
|
+
end
|
102
|
+
|
103
|
+
def cm_radio_button_field(form_obj, cm_field, value, required_class, _target_action)
|
104
|
+
format_radio_button_options(value, form_obj)
|
105
|
+
end
|
106
|
+
|
107
|
+
def cm_hidden_field(form_obj, cm_field, value, required_class, _target_action)
|
108
|
+
form_obj.hidden_field cm_field.field_name,
|
109
|
+
value: value,
|
110
|
+
name: cm_field.html_attr[:name] || "#{form_obj.object_name}[#{cm_field.field_name}]"
|
35
111
|
end
|
36
112
|
|
37
113
|
# Refactor: Collection argument can be removed.
|
38
114
|
# helper_method argument will accept a method where value can be passed.
|
39
|
-
def select_collection_value(object,
|
40
|
-
if
|
41
|
-
collection = send(
|
42
|
-
elsif
|
43
|
-
collection =
|
115
|
+
def select_collection_value(object, cm_field)
|
116
|
+
if cm_field.helper_method
|
117
|
+
collection = send(cm_field.helper_method, object, cm_field.field_name)
|
118
|
+
elsif cm_field.collection
|
119
|
+
collection = cm_field.collection
|
44
120
|
else
|
45
121
|
collection = []
|
46
122
|
end
|
47
123
|
end
|
124
|
+
|
125
|
+
def format_check_box_options(value, form_obj, cm_field, required_class, target_action)
|
126
|
+
if value.class == Array
|
127
|
+
format_check_box_array(value, form_obj, cm_field, required_class, target_action)
|
128
|
+
else
|
129
|
+
form_obj.check_box cm_field.field_name,
|
130
|
+
{
|
131
|
+
class: "normal-input cm-checkbox #{required_class}",
|
132
|
+
disabled: cm_field.disabled,
|
133
|
+
data: {
|
134
|
+
field_name: cm_field.field_name,
|
135
|
+
field_type: 'linked-field',
|
136
|
+
target_action: target_action&.name,
|
137
|
+
target_url: target_action&.name ? cm_admin.send("#{@model.name.underscore}_#{target_action&.name}_path") : ''
|
138
|
+
}
|
139
|
+
}
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
def format_check_box_array(options, form_obj, cm_field, required_class, target_action)
|
144
|
+
content_tag :div do
|
145
|
+
options.each do |key, val|
|
146
|
+
concat format_check_box(val, key, form_obj, cm_field, required_class, target_action)
|
147
|
+
end
|
148
|
+
end
|
149
|
+
end
|
150
|
+
|
151
|
+
def format_check_box(val, key, form_obj, cm_field, required_class, target_action)
|
152
|
+
content_tag :div, class: 'cm-checkbox-section' do
|
153
|
+
concat format_check_box_tag(val, form_obj, cm_field, required_class, target_action)
|
154
|
+
concat content_tag(:div, key, class: 'cm-checkbox-label')
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
def format_check_box_tag(val, form_obj, cm_field, required_class, target_action)
|
159
|
+
content_tag :div, class: 'cm-radio-tag' do
|
160
|
+
concat form_obj.check_box cm_field.field_name,
|
161
|
+
{
|
162
|
+
class: "normal-input cm-checkbox #{required_class} #{target_action.present? ? 'linked-field-request' : ''}",
|
163
|
+
disabled: cm_field.disabled,
|
164
|
+
name: "#{@model.name.underscore}[#{cm_field.field_name}][]",
|
165
|
+
data: {
|
166
|
+
field_name: cm_field.field_name,
|
167
|
+
field_type: 'linked-field',
|
168
|
+
target_action: target_action&.name,
|
169
|
+
target_url: target_action&.name ? cm_admin.send("#{@model.name.underscore}_#{target_action&.name}_path", ':param_1') : ''
|
170
|
+
}
|
171
|
+
}, val
|
172
|
+
end
|
173
|
+
end
|
174
|
+
|
175
|
+
|
176
|
+
def format_radio_button_options(options, form_obj)
|
177
|
+
content_tag :div do
|
178
|
+
options.each do |val, key|
|
179
|
+
concat format_radio_option(val, key, form_obj)
|
180
|
+
end
|
181
|
+
end
|
182
|
+
end
|
183
|
+
|
184
|
+
def format_radio_option(val, key, form_obj)
|
185
|
+
content_tag :div, class: 'cm-radio-section' do
|
186
|
+
concat format_radio_button(val, form_obj)
|
187
|
+
concat content_tag(:div, key, class: 'cm-radio-label')
|
188
|
+
end
|
189
|
+
end
|
190
|
+
|
191
|
+
def format_radio_button(val, form_obj)
|
192
|
+
content_tag :div, class: 'cm-radio-tag' do
|
193
|
+
concat form_obj.radio_button :level, val, class: 'normal-input cm-radio'
|
194
|
+
end
|
195
|
+
end
|
48
196
|
end
|
49
197
|
end
|
50
198
|
end
|
@@ -84,6 +84,10 @@ module CmAdmin
|
|
84
84
|
def custom_action_title(custom_action)
|
85
85
|
custom_action.display_name.to_s.presence || custom_action.name.to_s.titleize
|
86
86
|
end
|
87
|
+
|
88
|
+
def tab_display_name(nav_item_name)
|
89
|
+
nav_item_name.instance_of?(Symbol) ? nav_item_name.to_s.titleize : nav_item_name.to_s
|
90
|
+
end
|
87
91
|
end
|
88
92
|
end
|
89
93
|
end
|
data/lib/cm_admin.rb
CHANGED
@@ -14,9 +14,9 @@ module CmAdmin
|
|
14
14
|
@@authorized_roles ||= []
|
15
15
|
@@included_models ||= []
|
16
16
|
@@cm_admin_models ||= []
|
17
|
-
|
18
17
|
|
19
18
|
class << self
|
19
|
+
|
20
20
|
def webpacker
|
21
21
|
@webpacker ||= ::Webpacker::Instance.new(
|
22
22
|
root_path: CmAdmin::Engine.root,
|
@@ -25,7 +25,12 @@ module CmAdmin
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def configure(&block)
|
28
|
-
instance_eval(&block)
|
28
|
+
# instance_eval(&block)
|
29
|
+
@config ||= Configuration.new
|
30
|
+
yield(@config)
|
31
|
+
end
|
32
|
+
|
33
|
+
def layout
|
29
34
|
end
|
30
35
|
|
31
36
|
def config
|
@@ -3,7 +3,6 @@
|
|
3
3
|
// the trix-editor content (whether displayed or under editing). Feel free to incorporate this
|
4
4
|
// inclusion directly in any other asset bundle and remove this file.
|
5
5
|
//
|
6
|
-
//= require trix/dist/trix
|
7
6
|
|
8
7
|
// We need to override trix.css’s image gallery styles to accommodate the
|
9
8
|
// <action-text-attachment> element we wrap around attachments. Otherwise,
|
@@ -4,11 +4,11 @@
|
|
4
4
|
# end
|
5
5
|
|
6
6
|
def ensure_log_goes_to_stdout
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
old_logger = Webpacker.logger
|
8
|
+
Webpacker.logger = ActiveSupport::Logger.new(STDOUT)
|
9
|
+
yield
|
10
10
|
ensure
|
11
|
-
|
11
|
+
Webpacker.logger = old_logger
|
12
12
|
end
|
13
13
|
|
14
14
|
namespace :cm_admin do
|
@@ -51,13 +51,15 @@ def enhance_assets_precompile
|
|
51
51
|
end
|
52
52
|
end
|
53
53
|
|
54
|
-
|
55
|
-
|
54
|
+
if CmAdmin::VersionManager.rails6?
|
55
|
+
# Compile packs after we've compiled all other assets during precompilation
|
56
|
+
skip_webpacker_precompile = %w(no false n f).include?(ENV["WEBPACKER_PRECOMPILE"])
|
56
57
|
|
57
|
-
unless skip_webpacker_precompile
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
end
|
58
|
+
unless skip_webpacker_precompile
|
59
|
+
if Rake::Task.task_defined?("assets:precompile")
|
60
|
+
enhance_assets_precompile
|
61
|
+
else
|
62
|
+
Rake::Task.define_task("assets:precompile" =>"cm_admin:webpacker:compile")
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
data/package-lock.json
CHANGED
@@ -3965,10 +3965,9 @@
|
|
3965
3965
|
}
|
3966
3966
|
},
|
3967
3967
|
"node_modules/decode-uri-component": {
|
3968
|
-
"version": "0.2.
|
3969
|
-
"resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.
|
3970
|
-
"integrity": "
|
3971
|
-
"license": "MIT",
|
3968
|
+
"version": "0.2.2",
|
3969
|
+
"resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz",
|
3970
|
+
"integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==",
|
3972
3971
|
"engines": {
|
3973
3972
|
"node": ">=0.10"
|
3974
3973
|
}
|
@@ -4902,10 +4901,9 @@
|
|
4902
4901
|
}
|
4903
4902
|
},
|
4904
4903
|
"node_modules/file-loader/node_modules/loader-utils": {
|
4905
|
-
"version": "2.0.
|
4906
|
-
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.
|
4907
|
-
"integrity": "sha512-
|
4908
|
-
"license": "MIT",
|
4904
|
+
"version": "2.0.4",
|
4905
|
+
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz",
|
4906
|
+
"integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
|
4909
4907
|
"dependencies": {
|
4910
4908
|
"big.js": "^5.2.2",
|
4911
4909
|
"emojis-list": "^3.0.0",
|
@@ -6483,13 +6481,9 @@
|
|
6483
6481
|
"license": "MIT"
|
6484
6482
|
},
|
6485
6483
|
"node_modules/json5": {
|
6486
|
-
"version": "2.2.
|
6487
|
-
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.
|
6488
|
-
"integrity": "sha512-
|
6489
|
-
"license": "MIT",
|
6490
|
-
"dependencies": {
|
6491
|
-
"minimist": "^1.2.5"
|
6492
|
-
},
|
6484
|
+
"version": "2.2.3",
|
6485
|
+
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
|
6486
|
+
"integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
|
6493
6487
|
"bin": {
|
6494
6488
|
"json5": "lib/cli.js"
|
6495
6489
|
},
|
@@ -6550,10 +6544,9 @@
|
|
6550
6544
|
}
|
6551
6545
|
},
|
6552
6546
|
"node_modules/loader-utils": {
|
6553
|
-
"version": "1.4.
|
6554
|
-
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.
|
6555
|
-
"integrity": "sha512-
|
6556
|
-
"license": "MIT",
|
6547
|
+
"version": "1.4.2",
|
6548
|
+
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
|
6549
|
+
"integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
|
6557
6550
|
"dependencies": {
|
6558
6551
|
"big.js": "^5.2.2",
|
6559
6552
|
"emojis-list": "^3.0.0",
|
@@ -6564,10 +6557,9 @@
|
|
6564
6557
|
}
|
6565
6558
|
},
|
6566
6559
|
"node_modules/loader-utils/node_modules/json5": {
|
6567
|
-
"version": "1.0.
|
6568
|
-
"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.
|
6569
|
-
"integrity": "sha512-
|
6570
|
-
"license": "MIT",
|
6560
|
+
"version": "1.0.2",
|
6561
|
+
"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
|
6562
|
+
"integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
|
6571
6563
|
"dependencies": {
|
6572
6564
|
"minimist": "^1.2.0"
|
6573
6565
|
},
|
@@ -6984,10 +6976,9 @@
|
|
6984
6976
|
"license": "MIT"
|
6985
6977
|
},
|
6986
6978
|
"node_modules/minimatch": {
|
6987
|
-
"version": "3.
|
6988
|
-
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.
|
6989
|
-
"integrity": "sha512-
|
6990
|
-
"license": "ISC",
|
6979
|
+
"version": "3.1.2",
|
6980
|
+
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
6981
|
+
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
6991
6982
|
"dependencies": {
|
6992
6983
|
"brace-expansion": "^1.1.7"
|
6993
6984
|
},
|
@@ -9919,10 +9910,9 @@
|
|
9919
9910
|
}
|
9920
9911
|
},
|
9921
9912
|
"node_modules/sass-loader/node_modules/loader-utils": {
|
9922
|
-
"version": "2.0.
|
9923
|
-
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.
|
9924
|
-
"integrity": "sha512-
|
9925
|
-
"license": "MIT",
|
9913
|
+
"version": "2.0.4",
|
9914
|
+
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz",
|
9915
|
+
"integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
|
9926
9916
|
"dependencies": {
|
9927
9917
|
"big.js": "^5.2.2",
|
9928
9918
|
"emojis-list": "^3.0.0",
|
@@ -16274,9 +16264,9 @@
|
|
16274
16264
|
}
|
16275
16265
|
},
|
16276
16266
|
"decode-uri-component": {
|
16277
|
-
"version": "0.2.
|
16278
|
-
"resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.
|
16279
|
-
"integrity": "
|
16267
|
+
"version": "0.2.2",
|
16268
|
+
"resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz",
|
16269
|
+
"integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ=="
|
16280
16270
|
},
|
16281
16271
|
"default-gateway": {
|
16282
16272
|
"version": "6.0.3",
|
@@ -16974,9 +16964,9 @@
|
|
16974
16964
|
},
|
16975
16965
|
"dependencies": {
|
16976
16966
|
"loader-utils": {
|
16977
|
-
"version": "2.0.
|
16978
|
-
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.
|
16979
|
-
"integrity": "sha512-
|
16967
|
+
"version": "2.0.4",
|
16968
|
+
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz",
|
16969
|
+
"integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
|
16980
16970
|
"requires": {
|
16981
16971
|
"big.js": "^5.2.2",
|
16982
16972
|
"emojis-list": "^3.0.0",
|
@@ -18050,12 +18040,9 @@
|
|
18050
18040
|
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
|
18051
18041
|
},
|
18052
18042
|
"json5": {
|
18053
|
-
"version": "2.2.
|
18054
|
-
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.
|
18055
|
-
"integrity": "sha512-
|
18056
|
-
"requires": {
|
18057
|
-
"minimist": "^1.2.5"
|
18058
|
-
}
|
18043
|
+
"version": "2.2.3",
|
18044
|
+
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
|
18045
|
+
"integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg=="
|
18059
18046
|
},
|
18060
18047
|
"kind-of": {
|
18061
18048
|
"version": "3.2.2",
|
@@ -18096,9 +18083,9 @@
|
|
18096
18083
|
"integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw=="
|
18097
18084
|
},
|
18098
18085
|
"loader-utils": {
|
18099
|
-
"version": "1.4.
|
18100
|
-
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.
|
18101
|
-
"integrity": "sha512-
|
18086
|
+
"version": "1.4.2",
|
18087
|
+
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
|
18088
|
+
"integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
|
18102
18089
|
"requires": {
|
18103
18090
|
"big.js": "^5.2.2",
|
18104
18091
|
"emojis-list": "^3.0.0",
|
@@ -18106,9 +18093,9 @@
|
|
18106
18093
|
},
|
18107
18094
|
"dependencies": {
|
18108
18095
|
"json5": {
|
18109
|
-
"version": "1.0.
|
18110
|
-
"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.
|
18111
|
-
"integrity": "sha512-
|
18096
|
+
"version": "1.0.2",
|
18097
|
+
"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
|
18098
|
+
"integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
|
18112
18099
|
"requires": {
|
18113
18100
|
"minimist": "^1.2.0"
|
18114
18101
|
}
|
@@ -18413,9 +18400,9 @@
|
|
18413
18400
|
"integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo="
|
18414
18401
|
},
|
18415
18402
|
"minimatch": {
|
18416
|
-
"version": "3.
|
18417
|
-
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.
|
18418
|
-
"integrity": "sha512-
|
18403
|
+
"version": "3.1.2",
|
18404
|
+
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
18405
|
+
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
18419
18406
|
"requires": {
|
18420
18407
|
"brace-expansion": "^1.1.7"
|
18421
18408
|
}
|
@@ -20626,9 +20613,9 @@
|
|
20626
20613
|
},
|
20627
20614
|
"dependencies": {
|
20628
20615
|
"loader-utils": {
|
20629
|
-
"version": "2.0.
|
20630
|
-
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.
|
20631
|
-
"integrity": "sha512-
|
20616
|
+
"version": "2.0.4",
|
20617
|
+
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz",
|
20618
|
+
"integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
|
20632
20619
|
"requires": {
|
20633
20620
|
"big.js": "^5.2.2",
|
20634
20621
|
"emojis-list": "^3.0.0",
|
@@ -1 +1 @@
|
|
1
|
-
44c10d1e702ae7e3f4af6ad8684f30bfd32edcf9
|
1
|
+
44c10d1e702ae7e3f4af6ad8684f30bfd32edcf9
|