avo 3.26.4 → 3.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +32 -32
  3. data/app/assets/stylesheets/avo.base.css +1 -0
  4. data/app/assets/stylesheets/css/fields/stars.css +13 -0
  5. data/app/components/avo/field_wrapper_component.rb +1 -5
  6. data/app/components/avo/fields/boolean_field/edit_component.html.erb +2 -1
  7. data/app/components/avo/fields/boolean_field/index_component.html.erb +1 -1
  8. data/app/components/avo/fields/boolean_field/show_component.html.erb +1 -1
  9. data/app/components/avo/fields/common/boolean_check_component.html.erb +2 -1
  10. data/app/components/avo/fields/common/boolean_check_component.rb +26 -6
  11. data/app/components/avo/fields/common/stars_component.html.erb +8 -0
  12. data/app/components/avo/fields/common/stars_component.rb +4 -0
  13. data/app/components/avo/fields/stars_field/edit_component.html.erb +23 -0
  14. data/app/components/avo/fields/stars_field/edit_component.rb +2 -0
  15. data/app/components/avo/fields/stars_field/index_component.html.erb +3 -0
  16. data/app/components/avo/fields/stars_field/index_component.rb +2 -0
  17. data/app/components/avo/fields/stars_field/show_component.html.erb +3 -0
  18. data/app/components/avo/fields/stars_field/show_component.rb +2 -0
  19. data/app/components/avo/index/field_wrapper_component.rb +1 -5
  20. data/app/components/avo/resource_component.rb +1 -17
  21. data/app/components/avo/views/resource_index_component.rb +1 -3
  22. data/app/javascript/js/controllers/fields/stars_field_controller.js +55 -0
  23. data/app/javascript/js/controllers.js +2 -0
  24. data/lib/avo/fields/boolean_field.rb +4 -0
  25. data/lib/avo/fields/stars_field.rb +13 -0
  26. data/lib/avo/media_library/configuration.rb +4 -5
  27. data/lib/avo/version.rb +1 -1
  28. data/lib/generators/avo/templates/cards/partial_card_partial.tt +3 -1
  29. data/public/avo-assets/avo.base.css +67 -38
  30. data/public/avo-assets/avo.base.js +175 -173
  31. data/public/avo-assets/avo.base.js.map +4 -4
  32. metadata +14 -5
@@ -3789,7 +3789,7 @@ body[data-theme=dark], body.dark {
3789
3789
  --tw-contain-style:
3790
3790
  }
3791
3791
 
3792
- /*! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com
3792
+ /*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
3793
3793
  */
3794
3794
 
3795
3795
  /*
@@ -4227,7 +4227,7 @@ video {
4227
4227
  display: none;
4228
4228
  }
4229
4229
 
4230
- [type='text'],input:where(:not([type])),[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select{
4230
+ input:where([type='text']),input:where(:not([type])),input:where([type='email']),input:where([type='url']),input:where([type='password']),input:where([type='number']),input:where([type='date']),input:where([type='datetime-local']),input:where([type='month']),input:where([type='search']),input:where([type='tel']),input:where([type='time']),input:where([type='week']),select:where([multiple]),textarea,select{
4231
4231
  appearance:none;
4232
4232
  background-color:#fff;
4233
4233
  border-color:#757D8A;
@@ -4242,7 +4242,7 @@ video {
4242
4242
  --tw-shadow:0 0 #0000;
4243
4243
  }
4244
4244
 
4245
- [type='text']:focus, input:where(:not([type])):focus, [type='email']:focus, [type='url']:focus, [type='password']:focus, [type='number']:focus, [type='date']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='week']:focus, [multiple]:focus, textarea:focus, select:focus{
4245
+ input:where([type='text']):focus, input:where(:not([type])):focus, input:where([type='email']):focus, input:where([type='url']):focus, input:where([type='password']):focus, input:where([type='number']):focus, input:where([type='date']):focus, input:where([type='datetime-local']):focus, input:where([type='month']):focus, input:where([type='search']):focus, input:where([type='tel']):focus, input:where([type='time']):focus, input:where([type='week']):focus, select:where([multiple]):focus, textarea:focus, select:focus{
4246
4246
  outline:2px solid transparent;
4247
4247
  outline-offset:2px;
4248
4248
  --tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);
@@ -4288,7 +4288,7 @@ select{
4288
4288
  print-color-adjust:exact
4289
4289
  }
4290
4290
 
4291
- [multiple],[size]:where(select:not([size="1"])){
4291
+ select:where([multiple]),select:where([size]:not([size="1"])){
4292
4292
  background-image:initial;
4293
4293
  background-position:initial;
4294
4294
  background-repeat:unset;
@@ -4298,7 +4298,7 @@ select{
4298
4298
  print-color-adjust:unset
4299
4299
  }
4300
4300
 
4301
- [type='checkbox'],[type='radio']{
4301
+ input:where([type='checkbox']),input:where([type='radio']){
4302
4302
  appearance:none;
4303
4303
  padding:0;
4304
4304
  -webkit-print-color-adjust:exact;
@@ -4318,15 +4318,15 @@ select{
4318
4318
  --tw-shadow:0 0 #0000
4319
4319
  }
4320
4320
 
4321
- [type='checkbox']{
4321
+ input:where([type='checkbox']){
4322
4322
  border-radius:0px
4323
4323
  }
4324
4324
 
4325
- [type='radio']{
4325
+ input:where([type='radio']){
4326
4326
  border-radius:100%
4327
4327
  }
4328
4328
 
4329
- [type='checkbox']:focus,[type='radio']:focus{
4329
+ input:where([type='checkbox']):focus,input:where([type='radio']):focus{
4330
4330
  outline:2px solid transparent;
4331
4331
  outline-offset:2px;
4332
4332
  --tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);
@@ -4338,7 +4338,7 @@ select{
4338
4338
  box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)
4339
4339
  }
4340
4340
 
4341
- [type='checkbox']:checked,[type='radio']:checked{
4341
+ input:where([type='checkbox']):checked,input:where([type='radio']):checked{
4342
4342
  border-color:transparent;
4343
4343
  background-color:currentColor;
4344
4344
  background-size:100% 100%;
@@ -4346,32 +4346,32 @@ select{
4346
4346
  background-repeat:no-repeat
4347
4347
  }
4348
4348
 
4349
- [type='checkbox']:checked{
4349
+ input:where([type='checkbox']):checked{
4350
4350
  background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
4351
4351
  }
4352
4352
 
4353
4353
  @media (forced-colors: active) {
4354
- [type='checkbox']:checked{
4354
+ input:where([type='checkbox']):checked{
4355
4355
  appearance:auto
4356
4356
  }
4357
4357
  }
4358
4358
 
4359
- [type='radio']:checked{
4359
+ input:where([type='radio']):checked{
4360
4360
  background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
4361
4361
  }
4362
4362
 
4363
4363
  @media (forced-colors: active) {
4364
- [type='radio']:checked{
4364
+ input:where([type='radio']):checked{
4365
4365
  appearance:auto
4366
4366
  }
4367
4367
  }
4368
4368
 
4369
- [type='checkbox']:checked:hover,[type='checkbox']:checked:focus,[type='radio']:checked:hover,[type='radio']:checked:focus{
4369
+ input:where([type='checkbox']):checked:hover,input:where([type='checkbox']):checked:focus,input:where([type='radio']):checked:hover,input:where([type='radio']):checked:focus{
4370
4370
  border-color:transparent;
4371
4371
  background-color:currentColor
4372
4372
  }
4373
4373
 
4374
- [type='checkbox']:indeterminate{
4374
+ input:where([type='checkbox']):indeterminate{
4375
4375
  background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");
4376
4376
  border-color:transparent;
4377
4377
  background-color:currentColor;
@@ -4381,17 +4381,17 @@ select{
4381
4381
  }
4382
4382
 
4383
4383
  @media (forced-colors: active) {
4384
- [type='checkbox']:indeterminate{
4384
+ input:where([type='checkbox']):indeterminate{
4385
4385
  appearance:auto
4386
4386
  }
4387
4387
  }
4388
4388
 
4389
- [type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus{
4389
+ input:where([type='checkbox']):indeterminate:hover,input:where([type='checkbox']):indeterminate:focus{
4390
4390
  border-color:transparent;
4391
4391
  background-color:currentColor
4392
4392
  }
4393
4393
 
4394
- [type='file']{
4394
+ input:where([type='file']){
4395
4395
  background:unset;
4396
4396
  border-color:inherit;
4397
4397
  border-width:0;
@@ -4401,7 +4401,7 @@ select{
4401
4401
  line-height:inherit
4402
4402
  }
4403
4403
 
4404
- [type='file']:focus{
4404
+ input:where([type='file']):focus{
4405
4405
  outline:1px solid ButtonText;
4406
4406
  outline:1px auto -webkit-focus-ring-color
4407
4407
  }
@@ -7280,6 +7280,42 @@ tag.tagify__tag{
7280
7280
  list-style-type:decimal
7281
7281
  }
7282
7282
 
7283
+ [data-component="avo/fields/common/stars_component"] .star{
7284
+ height:1.25rem
7285
+ }
7286
+
7287
+ [data-component="avo/fields/common/stars_component"] .star{
7288
+ width:1.25rem
7289
+ }
7290
+
7291
+ [data-component="avo/fields/common/stars_component"] .star{
7292
+ --tw-text-opacity:1;
7293
+ color:rgb(172 177 185 / var(--tw-text-opacity, 1))
7294
+ }
7295
+
7296
+ [data-component="avo/fields/common/stars_component"] .star{
7297
+ transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;
7298
+ transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
7299
+ transition-duration:150ms
7300
+ }
7301
+
7302
+ [data-component="avo/fields/common/stars_component"] .star.filled{
7303
+ --tw-text-opacity:1;
7304
+ color:rgb(250 204 21 / var(--tw-text-opacity, 1))
7305
+ }
7306
+
7307
+ [data-component="avo/fields/common/stars_component"] .rating-group{
7308
+ display:flex
7309
+ }
7310
+
7311
+ [data-component="avo/fields/common/stars_component"] .rating-group{
7312
+ align-items:center
7313
+ }
7314
+
7315
+ [data-component="avo/fields/common/stars_component"] .rating-group{
7316
+ gap:0.25rem
7317
+ }
7318
+
7283
7319
  .container{
7284
7320
  width:100%
7285
7321
  }
@@ -7751,6 +7787,10 @@ tag.tagify__tag{
7751
7787
  margin-bottom:0.5rem
7752
7788
  }
7753
7789
 
7790
+ .mb-3{
7791
+ margin-bottom:0.75rem
7792
+ }
7793
+
7754
7794
  .mb-4{
7755
7795
  margin-bottom:1rem
7756
7796
  }
@@ -7759,6 +7799,10 @@ tag.tagify__tag{
7759
7799
  margin-bottom:1.25rem
7760
7800
  }
7761
7801
 
7802
+ .mb-6{
7803
+ margin-bottom:1.5rem
7804
+ }
7805
+
7762
7806
  .mb-8{
7763
7807
  margin-bottom:2rem
7764
7808
  }
@@ -7851,10 +7895,6 @@ tag.tagify__tag{
7851
7895
  margin-top:0.375rem
7852
7896
  }
7853
7897
 
7854
- .mt-11{
7855
- margin-top:2.75rem
7856
- }
7857
-
7858
7898
  .mt-12{
7859
7899
  margin-top:3rem
7860
7900
  }
@@ -9851,6 +9891,10 @@ tag.tagify__tag{
9851
9891
  padding-left:0.25rem
9852
9892
  }
9853
9893
 
9894
+ .pl-3{
9895
+ padding-left:0.75rem
9896
+ }
9897
+
9854
9898
  .pl-6{
9855
9899
  padding-left:1.5rem
9856
9900
  }
@@ -10433,21 +10477,6 @@ tag.tagify__tag{
10433
10477
  outline-color:#5E646E
10434
10478
  }
10435
10479
 
10436
- .ring-1{
10437
- --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
10438
- --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
10439
- box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)
10440
- }
10441
-
10442
- .ring-black{
10443
- --tw-ring-opacity:1;
10444
- --tw-ring-color:rgb(0 0 0 / var(--tw-ring-opacity, 1))
10445
- }
10446
-
10447
- .ring-opacity-5{
10448
- --tw-ring-opacity:0.05
10449
- }
10450
-
10451
10480
  .blur{
10452
10481
  --tw-blur:blur(8px);
10453
10482
  filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)