avo 3.6.0 → 3.6.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b24b80baf28fe7848e431079b17b9384ad5f4369e65a4c81bce9f1af68776d1f
4
- data.tar.gz: '08b79a4f7fe3c462937099421fc4d90c5b02ce54a6903eaa5cf5b525e56d9f8e'
3
+ metadata.gz: 9bcdaff03547e43800f1385ad2d3d328aa3017d453652e34b71e8b6ace66ed25
4
+ data.tar.gz: 811b6c854c53e4e04cfa91d4b0e8dc3881e8dc7f37578844f4f75db256d6be2d
5
5
  SHA512:
6
- metadata.gz: 71eaebcef5037f4ad99a49c8da1231c40e9aee6279cffc7083ba9f4f16ef344ccfeac970bbbe5358dc576703cb1196180338c18b0b788c1c50ab5c22f09ddc8a
7
- data.tar.gz: c5b562841cc86aa1063e393b59a5145018808dbdb524e8e5e5c0e38b99a32893f9349b2cd286c2cded8c237379b6f065bc1b42d669bc01799d58d7aeaeeeb4b3
6
+ metadata.gz: 550010a6c01e74234df0c8d379b56f3f7412ee654a8941e137eafc91ea6dac0b6c6430c597a6e2d4554fc5045501e6a5f026e856ec85a4e93379db5a895554f2
7
+ data.tar.gz: 284d0e648c29f6c4acbaccbccd24e915684e629278243f3bbed95f305a93b7b8ef9853c10ebddcd21af8cf9f00416c7a895bae466af7329aa6ff3d03a128d848
data/Gemfile CHANGED
@@ -75,6 +75,7 @@ group :development do
75
75
  gem "rubocop"
76
76
  gem "ripper-tags"
77
77
  gem "rubocop-shopify", require: false
78
+ gem "rubycritic", require: false
78
79
  end
79
80
 
80
81
  group :test do
@@ -152,7 +153,7 @@ gem "activestorage"
152
153
  # Required by Avo
153
154
  gem "sprockets-rails"
154
155
 
155
- # Avo file filed requires this gem
156
+ # Avo file field requires this gem
156
157
  # Use Active Storage variant
157
158
  gem "image_processing", "~> 1.12"
158
159
 
@@ -164,3 +165,8 @@ gem "prefixed_ids"
164
165
  gem "mapkick-rb", "~> 0.1.4"
165
166
 
166
167
  gem "pluggy", path: "./pluggy"
168
+
169
+ # Avo money field
170
+ # gem "avo-money_field", path: "./../avo-money_field"
171
+ gem "money-rails", "~> 1.12"
172
+ gem "avo-money_field"
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- avo (3.6.0)
4
+ avo (3.6.1)
5
5
  actionview (>= 6.1)
6
6
  active_link_to
7
7
  activerecord (>= 6.1)
@@ -119,6 +119,8 @@ GEM
119
119
  rake
120
120
  thor (>= 0.14.0)
121
121
  ast (2.4.2)
122
+ avo-money_field (0.0.4)
123
+ money-rails (~> 1.12)
122
124
  awesome_print (1.9.2)
123
125
  aws-eventstream (1.3.0)
124
126
  aws-partitions (1.888.0)
@@ -136,6 +138,10 @@ GEM
136
138
  aws-sigv4 (~> 1.8)
137
139
  aws-sigv4 (1.8.0)
138
140
  aws-eventstream (~> 1, >= 1.0.2)
141
+ axiom-types (0.1.1)
142
+ descendants_tracker (~> 0.0.4)
143
+ ice_nine (~> 0.11.0)
144
+ thread_safe (~> 0.3, >= 0.3.1)
139
145
  backport (1.2.0)
140
146
  base64 (0.2.0)
141
147
  bcrypt (3.1.20)
@@ -147,7 +153,7 @@ GEM
147
153
  erubi (~> 1.4)
148
154
  parser (>= 2.4)
149
155
  smart_properties
150
- bigdecimal (3.1.6)
156
+ bigdecimal (3.1.7)
151
157
  bindex (0.8.1)
152
158
  bootsnap (1.18.3)
153
159
  msgpack (~> 1.2)
@@ -165,6 +171,8 @@ GEM
165
171
  regexp_parser (>= 1.5, < 3.0)
166
172
  xpath (~> 3.2)
167
173
  chartkick (5.0.5)
174
+ coercible (1.0.0)
175
+ descendants_tracker (~> 0.0.1)
168
176
  concurrent-ruby (1.2.3)
169
177
  connection_pool (2.4.1)
170
178
  countries (5.7.1)
@@ -183,6 +191,8 @@ GEM
183
191
  database_cleaner-core (~> 2.0.0)
184
192
  database_cleaner-core (2.0.1)
185
193
  date (3.3.4)
194
+ descendants_tracker (0.0.4)
195
+ thread_safe (~> 0.3, >= 0.3.1)
186
196
  devise (4.9.3)
187
197
  bcrypt (~> 3.0)
188
198
  orm_adapter (~> 0.1)
@@ -195,9 +205,34 @@ GEM
195
205
  dotenv-rails (2.8.1)
196
206
  dotenv (= 2.8.1)
197
207
  railties (>= 3.2)
198
- drb (2.2.0)
199
- ruby2_keywords
208
+ drb (2.2.1)
209
+ dry-configurable (1.1.0)
210
+ dry-core (~> 1.0, < 2)
211
+ zeitwerk (~> 2.6)
212
+ dry-core (1.0.1)
213
+ concurrent-ruby (~> 1.0)
214
+ zeitwerk (~> 2.6)
215
+ dry-inflector (1.0.0)
200
216
  dry-initializer (3.1.1)
217
+ dry-logic (1.5.0)
218
+ concurrent-ruby (~> 1.0)
219
+ dry-core (~> 1.0, < 2)
220
+ zeitwerk (~> 2.6)
221
+ dry-schema (1.13.3)
222
+ concurrent-ruby (~> 1.0)
223
+ dry-configurable (~> 1.0, >= 1.0.1)
224
+ dry-core (~> 1.0, < 2)
225
+ dry-initializer (~> 3.0)
226
+ dry-logic (>= 1.4, < 2)
227
+ dry-types (>= 1.7, < 2)
228
+ zeitwerk (~> 2.6)
229
+ dry-types (1.7.2)
230
+ bigdecimal (~> 3.0)
231
+ concurrent-ruby (~> 1.0)
232
+ dry-core (~> 1.0)
233
+ dry-inflector (~> 1.0)
234
+ dry-logic (~> 1.4)
235
+ zeitwerk (~> 2.6)
201
236
  e2mmap (0.1.0)
202
237
  erb-formatter (0.7.1)
203
238
  syntax_tree (~> 6.0)
@@ -215,6 +250,15 @@ GEM
215
250
  webrick (~> 1.7)
216
251
  websocket-driver (>= 0.6, < 0.8)
217
252
  ffi (1.16.3)
253
+ flay (2.13.2)
254
+ erubi (~> 1.10)
255
+ path_expander (~> 1.0)
256
+ ruby_parser (~> 3.0)
257
+ sexp_processor (~> 4.0)
258
+ flog (4.8.0)
259
+ path_expander (~> 1.0)
260
+ ruby_parser (~> 3.1, > 3.1.0)
261
+ sexp_processor (~> 4.8)
218
262
  friendly_id (5.5.1)
219
263
  activerecord (>= 4.0.0)
220
264
  fuubar (2.5.1)
@@ -238,7 +282,7 @@ GEM
238
282
  httparty (0.21.0)
239
283
  mini_mime (>= 1.0.0)
240
284
  multi_xml (>= 0.5.2)
241
- i18n (1.14.1)
285
+ i18n (1.14.4)
242
286
  concurrent-ruby (~> 1.0)
243
287
  i18n-tasks (1.0.13)
244
288
  activesupport (>= 4.0.2)
@@ -251,6 +295,7 @@ GEM
251
295
  rails-i18n
252
296
  rainbow (>= 2.2.2, < 4.0)
253
297
  terminal-table (>= 1.5.1)
298
+ ice_nine (0.11.2)
254
299
  image_processing (1.12.2)
255
300
  mini_magick (>= 4.9.5, < 5)
256
301
  ruby-vips (>= 2.0.17, < 3)
@@ -258,7 +303,7 @@ GEM
258
303
  activesupport (>= 3.0)
259
304
  nokogiri (>= 1.6)
260
305
  io-console (0.7.2)
261
- irb (1.11.2)
306
+ irb (1.12.0)
262
307
  rdoc
263
308
  reline (>= 0.4.2)
264
309
  iso (0.4.0)
@@ -296,7 +341,16 @@ GEM
296
341
  mini_magick (4.12.0)
297
342
  mini_mime (1.1.5)
298
343
  mini_portile2 (2.8.5)
299
- minitest (5.22.2)
344
+ minitest (5.22.3)
345
+ monetize (1.13.0)
346
+ money (~> 6.12)
347
+ money (6.19.0)
348
+ i18n (>= 0.6.4, <= 2)
349
+ money-rails (1.15.0)
350
+ activesupport (>= 3.0)
351
+ monetize (~> 1.9)
352
+ money (~> 6.13)
353
+ railties (>= 3.0)
300
354
  msgpack (1.7.2)
301
355
  multi_xml (0.6.0)
302
356
  mutex_m (0.2.0)
@@ -310,10 +364,10 @@ GEM
310
364
  net-smtp (0.4.0.1)
311
365
  net-protocol
312
366
  nio4r (2.7.0)
313
- nokogiri (1.16.2)
367
+ nokogiri (1.16.3)
314
368
  mini_portile2 (~> 2.8.2)
315
369
  racc (~> 1.4)
316
- nokogiri (1.16.2-x86_64-linux)
370
+ nokogiri (1.16.3-x86_64-linux)
317
371
  racc (~> 1.4)
318
372
  orm_adapter (0.5.0)
319
373
  pagy (7.0.6)
@@ -321,6 +375,7 @@ GEM
321
375
  parser (3.3.0.5)
322
376
  ast (~> 2.4.1)
323
377
  racc
378
+ path_expander (1.1.1)
324
379
  pg (1.5.4)
325
380
  prefixed_ids (1.6.1)
326
381
  hashids (>= 1.0.0, < 2.0.0)
@@ -332,7 +387,7 @@ GEM
332
387
  puma (6.4.2)
333
388
  nio4r (~> 2.0)
334
389
  racc (1.7.3)
335
- rack (3.0.9.1)
390
+ rack (3.0.10)
336
391
  rack-session (2.0.0)
337
392
  rack (>= 3.0.0)
338
393
  rack-test (2.1.0)
@@ -377,7 +432,7 @@ GEM
377
432
  thor (~> 1.0, >= 1.2.2)
378
433
  zeitwerk (~> 2.6)
379
434
  rainbow (3.1.1)
380
- rake (13.1.0)
435
+ rake (13.2.1)
381
436
  ransack (4.1.1)
382
437
  activerecord (>= 6.1.5)
383
438
  activesupport (>= 6.1.5)
@@ -392,8 +447,13 @@ GEM
392
447
  redis-client (>= 0.17.0)
393
448
  redis-client (0.19.1)
394
449
  connection_pool
450
+ reek (6.3.0)
451
+ dry-schema (~> 1.13.0)
452
+ parser (~> 3.3.0)
453
+ rainbow (>= 2.0, < 4.0)
454
+ rexml (~> 3.1)
395
455
  regexp_parser (2.9.0)
396
- reline (0.4.3)
456
+ reline (0.5.1)
397
457
  io-console (~> 0.5)
398
458
  responders (3.1.1)
399
459
  actionpack (>= 5.2)
@@ -442,7 +502,22 @@ GEM
442
502
  ruby-progressbar (1.13.0)
443
503
  ruby-vips (2.2.0)
444
504
  ffi (~> 1.12)
445
- ruby2_keywords (0.0.5)
505
+ ruby_parser (3.21.0)
506
+ racc (~> 1.5)
507
+ sexp_processor (~> 4.16)
508
+ rubycritic (4.9.0)
509
+ flay (~> 2.13)
510
+ flog (~> 4.7)
511
+ launchy (>= 2.5.2)
512
+ parser (>= 3.2.2.1)
513
+ rainbow (~> 3.1.1)
514
+ reek (~> 6.0, < 7.0)
515
+ rexml
516
+ ruby_parser (~> 3.20)
517
+ simplecov (>= 0.22.0)
518
+ tty-which (~> 0.5.0)
519
+ virtus (~> 2.0)
520
+ sexp_processor (4.17.1)
446
521
  simplecov (0.22.0)
447
522
  docile (~> 1.1)
448
523
  simplecov-html (~> 0.11)
@@ -501,9 +576,11 @@ GEM
501
576
  terminal-table (3.0.2)
502
577
  unicode-display_width (>= 1.1.1, < 3)
503
578
  test-prof (1.3.1)
504
- thor (1.3.0)
579
+ thor (1.3.1)
580
+ thread_safe (0.3.6)
505
581
  tilt (2.3.0)
506
582
  timeout (0.4.1)
583
+ tty-which (0.5.0)
507
584
  turbo-rails (2.0.1)
508
585
  actionpack (>= 6.0.0)
509
586
  activejob (>= 6.0.0)
@@ -518,6 +595,10 @@ GEM
518
595
  activesupport (>= 5.2.0, < 8.0)
519
596
  concurrent-ruby (~> 1.0)
520
597
  method_source (~> 1.0)
598
+ virtus (2.0.0)
599
+ axiom-types (~> 0.1)
600
+ coercible (~> 1.0)
601
+ descendants_tracker (~> 0.0, >= 0.0.3)
521
602
  warden (1.2.9)
522
603
  rack (>= 2.0.9)
523
604
  web-console (4.2.1)
@@ -552,6 +633,7 @@ DEPENDENCIES
552
633
  annotate
553
634
  appraisal
554
635
  avo!
636
+ avo-money_field
555
637
  awesome_print
556
638
  aws-sdk-s3
557
639
  bootsnap (>= 1.4.2)
@@ -585,6 +667,7 @@ DEPENDENCIES
585
667
  listen (>= 3.5.1)
586
668
  mapkick-rb (~> 0.1.4)
587
669
  meta-tags
670
+ money-rails (~> 1.12)
588
671
  net-smtp
589
672
  pg (>= 0.18, < 2.0)
590
673
  pluggy!
@@ -599,6 +682,7 @@ DEPENDENCIES
599
682
  rspec-retry (~> 0.6.2)
600
683
  rubocop
601
684
  rubocop-shopify
685
+ rubycritic
602
686
  simplecov
603
687
  simplecov-cobertura
604
688
  simplecov-lcov
@@ -8222,6 +8222,10 @@ tag.tagify__tag{
8222
8222
  border-top-width:0px
8223
8223
  }
8224
8224
 
8225
+ .border-solid{
8226
+ border-style:solid
8227
+ }
8228
+
8225
8229
  .border-dashed{
8226
8230
  border-style:dashed
8227
8231
  }
@@ -1,31 +1,33 @@
1
1
  <%= content_tag :div, data: data_attributes, class: classes do %>
2
2
  <% if render_header? %>
3
- <div data-target="panel-header" class="flex-1 flex flex-col xl:flex-row justify-between mb-4">
4
- <div class="overflow-hidden flex flex-col">
5
- <% if display_breadcrumbs? %>
6
- <div class="breadcrumbs truncate mb-2">
7
- <%= helpers.render_avo_breadcrumbs(separator: helpers.svg('chevron-right', class: 'inline-block h-3 stroke-current relative top-[-1px] ml-1' )) if Avo.configuration.display_breadcrumbs %>
8
- </div>
9
- <% end %>
10
- <div class="text-2xl tracking-normal font-semibold text-gray-800 truncate items-center flex flex-1" data-target="title">
11
- <span><%= @name %></span>
12
- <% if @reloadable %>
13
- <%= button_tag data: { controller: "panel-refresh", action: "click->panel-refresh#refresh" } do %>
14
- <%= svg "heroicons/outline/arrow-path", class: "ml-2 text-2xl h-6 " %>
3
+ <div data-target="panel-header" class="mb-4">
4
+ <% if display_breadcrumbs? %>
5
+ <div class="breadcrumbs mb-2">
6
+ <%= helpers.render_avo_breadcrumbs(separator: helpers.svg('chevron-right', class: 'inline-block h-3 stroke-current relative top-[-1px] ml-1' )) if Avo.configuration.display_breadcrumbs %>
7
+ </div>
8
+ <% end %>
9
+ <div class="flex-1 flex flex-col xl:flex-row justify-between gap-1">
10
+ <div class="overflow-hidden flex flex-col">
11
+ <div class="text-2xl tracking-normal font-semibold text-gray-800 items-center flex flex-1" data-target="title">
12
+ <span><%= @name %></span>
13
+ <% if @reloadable %>
14
+ <%= button_tag data: { controller: "panel-refresh", action: "click->panel-refresh#refresh" } do %>
15
+ <%= svg "heroicons/outline/arrow-path", class: "ml-2 text-2xl h-6 " %>
16
+ <% end %>
15
17
  <% end %>
18
+ </div>
19
+ <% if description.present? %>
20
+ <div class="text-sm tracking-normal font-medium text-gray-600" data-target="description">
21
+ <%== description %>
22
+ </div>
16
23
  <% end %>
17
24
  </div>
18
- <% if description.present? %>
19
- <div class="text-sm tracking-normal font-medium text-gray-600" data-target="description">
20
- <%== description %>
25
+ <% if tools.present? %>
26
+ <div class="flex-1 w-full flex flex-col sm:flex-row xl:justify-end sm:items-end gap-2 mt-4 xl:mt-0" data-target="panel-tools">
27
+ <%= tools %>
21
28
  </div>
22
29
  <% end %>
23
30
  </div>
24
- <% if tools.present? %>
25
- <div class="flex-1 w-full flex flex-wrap flex-col sm:flex-row xl:justify-end sm:items-end gap-2 mt-4 xl:mt-0" data-target="panel-tools">
26
- <%= tools %>
27
- </div>
28
- <% end %>
29
31
  </div>
30
32
  <% end %>
31
33
  <% if body? %>
@@ -274,7 +274,7 @@ module Avo
274
274
  item.is_heading? ||
275
275
  item.is_a?(Avo::Fields::LocationField)
276
276
 
277
- item.resource.record.respond_to?("#{item.id}=")
277
+ item.resource.record.respond_to?(:"#{item.id}=")
278
278
  end
279
279
  .select do |item|
280
280
  # Check if the user is authorized to view it.
@@ -267,10 +267,10 @@ module Avo
267
267
 
268
268
  # Used by Avo to fill the record with the default value on :new and :edit views
269
269
  def assign_value(record:, value:)
270
- id = type == "belongs_to" ? foreign_key : database_id
270
+ id = (type == "belongs_to") ? foreign_key : database_id
271
271
 
272
272
  if record.send(id).nil?
273
- record.send("#{id}=", value)
273
+ record.send(:"#{id}=", value)
274
274
  end
275
275
  end
276
276
 
@@ -29,7 +29,7 @@ module Avo
29
29
  view: view
30
30
  ).handle
31
31
 
32
- component_class = custom_components.dig("#{view}_component".to_sym) || "#{view_component_namespace}::#{view.to_s.camelize}Component"
32
+ component_class = custom_components.dig(:"#{view}_component") || "#{view_component_namespace}::#{view.to_s.camelize}Component"
33
33
  component_class.to_s.constantize
34
34
  rescue
35
35
  unless Rails.env.test?
@@ -44,12 +44,20 @@ module Avo
44
44
  end
45
45
  end
46
46
 
47
- def load_field(method_name, klass)
47
+ def load_field(name, klass)
48
+ return if field_exists?(name)
49
+
48
50
  fields.push(
49
- name: method_name.to_s,
51
+ name: name.to_s,
50
52
  class: klass
51
53
  )
52
54
  end
55
+
56
+ private
57
+
58
+ def field_exists?(name)
59
+ fields.pluck(:name).map(&:to_sym).include?(name.to_sym)
60
+ end
53
61
  end
54
62
  end
55
63
  end
@@ -83,7 +83,7 @@ module Avo
83
83
  def component_for_view(view = Avo::ViewInquirer.new("index"))
84
84
  view = Avo::ViewInquirer.new("show") if view.in? %w[new create update edit]
85
85
 
86
- super view
86
+ super(view)
87
87
  end
88
88
 
89
89
  def authorized?
data/lib/avo/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Avo
2
- VERSION = "3.6.0" unless const_defined?(:VERSION)
2
+ VERSION = "3.6.1" unless const_defined?(:VERSION)
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avo
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.6.0
4
+ version: 3.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adrian Marin
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2024-04-09 00:00:00.000000000 Z
13
+ date: 2024-04-11 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activerecord