avo 4.0.0.beta.46 → 4.0.0.beta.47
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/Gemfile.lock +1 -1
- data/app/assets/builds/avo/application.css +0 -88
- data/app/components/avo/fields/belongs_to_field/edit_component.html.erb +2 -2
- data/app/components/avo/index/resource_controls_component.rb +2 -2
- data/app/views/avo/associations/new.html.erb +1 -1
- data/app/views/avo/partials/_navbar.html.erb +2 -2
- data/lib/avo/configuration.rb +2 -2
- data/lib/avo/engine_dsl.rb +9 -2
- data/lib/avo/plugin_dsl.rb +8 -0
- data/lib/avo/railtie_dsl.rb +15 -0
- data/lib/avo/version.rb +1 -1
- data/lib/avo.rb +6 -1
- data/lib/tasks/avo_tasks.rake +1 -1
- data/public/avo-assets/avo.base.css +13370 -0
- data/public/avo-assets/avo.base.js +1201 -0
- data/public/avo-assets/avo.base.js.map +7 -0
- data/public/avo-assets/late-registration.js +2 -0
- data/public/avo-assets/late-registration.js.map +7 -0
- metadata +9 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ba23003f4ee7bc29482310429df972d07aeb1af97571856a37b3a026f45201d5
|
|
4
|
+
data.tar.gz: 695659c58a27c067cbea38878c4a166daa9e0063f0defa7f4a7741b8a64d4e6e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 64d62afda0ff20ec3570dae40bd73f5bf989d9e64fe230ac647101a3c6449126fad622c6403c4f544599a77595a867336531a88801215b922d17b7e948c5add4
|
|
7
|
+
data.tar.gz: 318edb1f086d42e925db79293f948326bf84ab6e05feff7df04d8e46e4080e7700276a0c5236260986dcee178651d83d1604bf4fd78b12e072546326664f2de3
|
data/Gemfile.lock
CHANGED
|
@@ -236,7 +236,6 @@
|
|
|
236
236
|
--color-white: #fff;
|
|
237
237
|
--spacing: 0.25rem;
|
|
238
238
|
--breakpoint-xl: 80rem;
|
|
239
|
-
--container-xs: 20rem;
|
|
240
239
|
--container-sm: 24rem;
|
|
241
240
|
--container-md: 28rem;
|
|
242
241
|
--container-lg: 32rem;
|
|
@@ -1374,9 +1373,6 @@
|
|
|
1374
1373
|
.h-10 {
|
|
1375
1374
|
height: calc(var(--spacing) * 10);
|
|
1376
1375
|
}
|
|
1377
|
-
.h-12 {
|
|
1378
|
-
height: calc(var(--spacing) * 12);
|
|
1379
|
-
}
|
|
1380
1376
|
.h-20 {
|
|
1381
1377
|
height: calc(var(--spacing) * 20);
|
|
1382
1378
|
}
|
|
@@ -1506,9 +1502,6 @@
|
|
|
1506
1502
|
.w-16 {
|
|
1507
1503
|
width: calc(var(--spacing) * 16);
|
|
1508
1504
|
}
|
|
1509
|
-
.w-32 {
|
|
1510
|
-
width: calc(var(--spacing) * 32);
|
|
1511
|
-
}
|
|
1512
1505
|
.w-64 {
|
|
1513
1506
|
width: calc(var(--spacing) * 64);
|
|
1514
1507
|
}
|
|
@@ -1581,9 +1574,6 @@
|
|
|
1581
1574
|
.max-w-xl {
|
|
1582
1575
|
max-width: var(--container-xl);
|
|
1583
1576
|
}
|
|
1584
|
-
.max-w-xs {
|
|
1585
|
-
max-width: var(--container-xs);
|
|
1586
|
-
}
|
|
1587
1577
|
.min-w-0 {
|
|
1588
1578
|
min-width: calc(var(--spacing) * 0);
|
|
1589
1579
|
}
|
|
@@ -1659,9 +1649,6 @@
|
|
|
1659
1649
|
.cursor-grab {
|
|
1660
1650
|
cursor: grab;
|
|
1661
1651
|
}
|
|
1662
|
-
.cursor-grabbing {
|
|
1663
|
-
cursor: grabbing;
|
|
1664
|
-
}
|
|
1665
1652
|
.cursor-not-allowed {
|
|
1666
1653
|
cursor: not-allowed;
|
|
1667
1654
|
}
|
|
@@ -1671,9 +1658,6 @@
|
|
|
1671
1658
|
.cursor-wait {
|
|
1672
1659
|
cursor: wait;
|
|
1673
1660
|
}
|
|
1674
|
-
.list-none {
|
|
1675
|
-
list-style-type: none;
|
|
1676
|
-
}
|
|
1677
1661
|
.appearance-none {
|
|
1678
1662
|
appearance: none;
|
|
1679
1663
|
}
|
|
@@ -2197,18 +2181,6 @@
|
|
|
2197
2181
|
.border-violet-500 {
|
|
2198
2182
|
border-color: var(--color-violet-500);
|
|
2199
2183
|
}
|
|
2200
|
-
.border-warning\/30 {
|
|
2201
|
-
border-color: color-mix(in srgb, oklch(79.5% 0.184 86.047) 30%, transparent);
|
|
2202
|
-
@supports (color: color-mix(in lab, red, red)) {
|
|
2203
|
-
border-color: color-mix(in oklab, var(--color-warning) 30%, transparent);
|
|
2204
|
-
}
|
|
2205
|
-
}
|
|
2206
|
-
.border-warning\/40 {
|
|
2207
|
-
border-color: color-mix(in srgb, oklch(79.5% 0.184 86.047) 40%, transparent);
|
|
2208
|
-
@supports (color: color-mix(in lab, red, red)) {
|
|
2209
|
-
border-color: color-mix(in oklab, var(--color-warning) 40%, transparent);
|
|
2210
|
-
}
|
|
2211
|
-
}
|
|
2212
2184
|
.border-yellow-300 {
|
|
2213
2185
|
border-color: var(--color-yellow-300);
|
|
2214
2186
|
}
|
|
@@ -2311,9 +2283,6 @@
|
|
|
2311
2283
|
.bg-gray-100 {
|
|
2312
2284
|
background-color: var(--color-gray-100);
|
|
2313
2285
|
}
|
|
2314
|
-
.bg-gray-100\! {
|
|
2315
|
-
background-color: var(--color-gray-100) !important;
|
|
2316
|
-
}
|
|
2317
2286
|
.bg-gray-500 {
|
|
2318
2287
|
background-color: var(--color-gray-500);
|
|
2319
2288
|
}
|
|
@@ -2437,12 +2406,6 @@
|
|
|
2437
2406
|
.bg-violet-500 {
|
|
2438
2407
|
background-color: var(--color-violet-500);
|
|
2439
2408
|
}
|
|
2440
|
-
.bg-warning\/10 {
|
|
2441
|
-
background-color: color-mix(in srgb, oklch(79.5% 0.184 86.047) 10%, transparent);
|
|
2442
|
-
@supports (color: color-mix(in lab, red, red)) {
|
|
2443
|
-
background-color: color-mix(in oklab, var(--color-warning) 10%, transparent);
|
|
2444
|
-
}
|
|
2445
|
-
}
|
|
2446
2409
|
.bg-white {
|
|
2447
2410
|
background-color: var(--color-white);
|
|
2448
2411
|
}
|
|
@@ -2512,9 +2475,6 @@
|
|
|
2512
2475
|
.p-2 {
|
|
2513
2476
|
padding: calc(var(--spacing) * 2);
|
|
2514
2477
|
}
|
|
2515
|
-
.p-3 {
|
|
2516
|
-
padding: calc(var(--spacing) * 3);
|
|
2517
|
-
}
|
|
2518
2478
|
.p-4 {
|
|
2519
2479
|
padding: calc(var(--spacing) * 4);
|
|
2520
2480
|
}
|
|
@@ -2929,12 +2889,6 @@
|
|
|
2929
2889
|
.text-violet-700 {
|
|
2930
2890
|
color: var(--color-violet-700);
|
|
2931
2891
|
}
|
|
2932
|
-
.text-warning {
|
|
2933
|
-
color: var(--color-warning);
|
|
2934
|
-
}
|
|
2935
|
-
.text-warning-content {
|
|
2936
|
-
color: var(--color-warning-content);
|
|
2937
|
-
}
|
|
2938
2892
|
.text-white {
|
|
2939
2893
|
color: var(--color-white);
|
|
2940
2894
|
}
|
|
@@ -3265,11 +3219,6 @@
|
|
|
3265
3219
|
}
|
|
3266
3220
|
}
|
|
3267
3221
|
}
|
|
3268
|
-
.last\:mb-0 {
|
|
3269
|
-
&:last-child {
|
|
3270
|
-
margin-bottom: calc(var(--spacing) * 0);
|
|
3271
|
-
}
|
|
3272
|
-
}
|
|
3273
3222
|
.hover\:z-\[21\] {
|
|
3274
3223
|
&:hover {
|
|
3275
3224
|
z-index: 21;
|
|
@@ -3385,14 +3334,6 @@
|
|
|
3385
3334
|
border-color: var(--color-violet-600);
|
|
3386
3335
|
}
|
|
3387
3336
|
}
|
|
3388
|
-
.hover\:border-warning\/40 {
|
|
3389
|
-
&:hover {
|
|
3390
|
-
border-color: color-mix(in srgb, oklch(79.5% 0.184 86.047) 40%, transparent);
|
|
3391
|
-
@supports (color: color-mix(in lab, red, red)) {
|
|
3392
|
-
border-color: color-mix(in oklab, var(--color-warning) 40%, transparent);
|
|
3393
|
-
}
|
|
3394
|
-
}
|
|
3395
|
-
}
|
|
3396
3337
|
.hover\:border-yellow-600 {
|
|
3397
3338
|
&:hover {
|
|
3398
3339
|
border-color: var(--color-yellow-600);
|
|
@@ -3644,14 +3585,6 @@
|
|
|
3644
3585
|
background-color: var(--color-violet-600);
|
|
3645
3586
|
}
|
|
3646
3587
|
}
|
|
3647
|
-
.hover\:bg-warning\/20 {
|
|
3648
|
-
&:hover {
|
|
3649
|
-
background-color: color-mix(in srgb, oklch(79.5% 0.184 86.047) 20%, transparent);
|
|
3650
|
-
@supports (color: color-mix(in lab, red, red)) {
|
|
3651
|
-
background-color: color-mix(in oklab, var(--color-warning) 20%, transparent);
|
|
3652
|
-
}
|
|
3653
|
-
}
|
|
3654
|
-
}
|
|
3655
3588
|
.hover\:bg-yellow-100 {
|
|
3656
3589
|
&:hover {
|
|
3657
3590
|
background-color: var(--color-yellow-100);
|
|
@@ -3692,22 +3625,6 @@
|
|
|
3692
3625
|
opacity: 100%;
|
|
3693
3626
|
}
|
|
3694
3627
|
}
|
|
3695
|
-
.focus\:border-warning\/50 {
|
|
3696
|
-
&:focus {
|
|
3697
|
-
border-color: color-mix(in srgb, oklch(79.5% 0.184 86.047) 50%, transparent);
|
|
3698
|
-
@supports (color: color-mix(in lab, red, red)) {
|
|
3699
|
-
border-color: color-mix(in oklab, var(--color-warning) 50%, transparent);
|
|
3700
|
-
}
|
|
3701
|
-
}
|
|
3702
|
-
}
|
|
3703
|
-
.focus\:ring-warning\/50 {
|
|
3704
|
-
&:focus {
|
|
3705
|
-
--tw-ring-color: color-mix(in srgb, oklch(79.5% 0.184 86.047) 50%, transparent);
|
|
3706
|
-
@supports (color: color-mix(in lab, red, red)) {
|
|
3707
|
-
--tw-ring-color: color-mix(in oklab, var(--color-warning) 50%, transparent);
|
|
3708
|
-
}
|
|
3709
|
-
}
|
|
3710
|
-
}
|
|
3711
3628
|
.active\:translate-x-px {
|
|
3712
3629
|
&:active {
|
|
3713
3630
|
--tw-translate-x: 1px;
|
|
@@ -4530,11 +4447,6 @@
|
|
|
4530
4447
|
width: auto;
|
|
4531
4448
|
}
|
|
4532
4449
|
}
|
|
4533
|
-
.sm\:w-full {
|
|
4534
|
-
@media (width >= 40rem) {
|
|
4535
|
-
width: 100%;
|
|
4536
|
-
}
|
|
4537
|
-
}
|
|
4538
4450
|
.sm\:min-w-48 {
|
|
4539
4451
|
@media (width >= 40rem) {
|
|
4540
4452
|
min-width: calc(var(--spacing) * 48);
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
<div data-polymorphic-type="<%= type %>">
|
|
36
36
|
<%= field_wrapper(**field_wrapper_args.merge!(data: reload_data), label: Avo.resource_manager.get_resource_by_model_class(type.to_s).name, class: "!w-full") do %>
|
|
37
37
|
<% if @field.is_searchable? %>
|
|
38
|
-
<%= render Avo::
|
|
38
|
+
<%= render Avo::AdvancedSearch::Association::ContainerComponent.new(
|
|
39
39
|
form: @form,
|
|
40
40
|
field: @field,
|
|
41
41
|
polymorphic_type: type
|
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
<% else %>
|
|
87
87
|
<%= field_wrapper(**field_wrapper_args.merge!(data: reload_data)) do %>
|
|
88
88
|
<% if @field.is_searchable? %>
|
|
89
|
-
<%= render Avo::
|
|
89
|
+
<%= render Avo::AdvancedSearch::Association::ContainerComponent.new(form: @form, field: @field) %>
|
|
90
90
|
<% else %>
|
|
91
91
|
<%= @form.select @field.id_input_foreign_key,
|
|
92
92
|
options_for_select(@field.options, selected: @field.value.to_param, disabled: t("avo.more_records_available")),
|
|
@@ -143,8 +143,8 @@ class Avo::Index::ResourceControlsComponent < Avo::ResourceComponent
|
|
|
143
143
|
end
|
|
144
144
|
|
|
145
145
|
def render_order_controls(control)
|
|
146
|
-
if try(:can_reorder?)
|
|
147
|
-
render Avo::
|
|
146
|
+
if Avo.plugin_manager.installed?("avo-record_reordering") && try(:can_reorder?)
|
|
147
|
+
render Avo::RecordReordering::ButtonsComponent.new resource: @resource, reflection: @reflection, view_type: @view_type
|
|
148
148
|
end
|
|
149
149
|
end
|
|
150
150
|
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
resource: @resource,
|
|
23
23
|
label_for: 'related_id',
|
|
24
24
|
label: @field.name.singularize do %>
|
|
25
|
-
<%= render Avo::
|
|
25
|
+
<%= render Avo::AdvancedSearch::Association::ContainerComponent.new(
|
|
26
26
|
form: form,
|
|
27
27
|
field: @field,
|
|
28
28
|
attach: true
|
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
</div>
|
|
32
32
|
|
|
33
33
|
<div class="top-navbar__center">
|
|
34
|
-
<% if
|
|
35
|
-
<%= render Avo::
|
|
34
|
+
<% if Avo.plugin_manager.installed?("avo-advanced_search") %>
|
|
35
|
+
<%= render Avo::AdvancedSearch::Global::InputComponent.new(resource: @resource) %>
|
|
36
36
|
<% end %>
|
|
37
37
|
</div>
|
|
38
38
|
|
data/lib/avo/configuration.rb
CHANGED
|
@@ -231,9 +231,9 @@ module Avo
|
|
|
231
231
|
end
|
|
232
232
|
|
|
233
233
|
# Authorization is enabled when:
|
|
234
|
-
# (avo-
|
|
234
|
+
# (avo-authorization gem is installed) AND (authorization_client is NOT nil)
|
|
235
235
|
def authorization_enabled?
|
|
236
|
-
@authorization_enabled ||= Avo.plugin_manager.installed?("avo-
|
|
236
|
+
@authorization_enabled ||= Avo.plugin_manager.installed?("avo-authorization") && !authorization_client.nil?
|
|
237
237
|
end
|
|
238
238
|
|
|
239
239
|
def current_user_method(&block)
|
data/lib/avo/engine_dsl.rb
CHANGED
|
@@ -1,8 +1,15 @@
|
|
|
1
|
+
require_relative "plugin_dsl"
|
|
2
|
+
|
|
1
3
|
module Avo
|
|
2
4
|
module EngineDSL
|
|
5
|
+
extend PluginDSL
|
|
6
|
+
|
|
7
|
+
def self.extended(base)
|
|
8
|
+
base.extend(PluginDSL)
|
|
9
|
+
end
|
|
10
|
+
|
|
3
11
|
def avo_engine(handler_class = nil)
|
|
4
|
-
handler_class
|
|
5
|
-
instance_exec(&handler_class.handle)
|
|
12
|
+
avo_plugin(handler_class, handler_name: "EngineHandler")
|
|
6
13
|
end
|
|
7
14
|
end
|
|
8
15
|
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
require_relative "plugin_dsl"
|
|
2
|
+
|
|
3
|
+
module Avo
|
|
4
|
+
module RailtieDSL
|
|
5
|
+
extend PluginDSL
|
|
6
|
+
|
|
7
|
+
def self.extended(base)
|
|
8
|
+
base.extend(PluginDSL)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def avo_railtie(handler_class = nil)
|
|
12
|
+
avo_plugin(handler_class, handler_name: "RailtieHandler")
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
data/lib/avo/version.rb
CHANGED
data/lib/avo.rb
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
require_relative "avo/engine_dsl"
|
|
2
|
+
require_relative "avo/railtie_dsl"
|
|
2
3
|
|
|
3
4
|
require "zeitwerk"
|
|
4
5
|
require "net/http"
|
|
@@ -13,10 +14,14 @@ loader.inflector.inflect(
|
|
|
13
14
|
"html" => "HTML",
|
|
14
15
|
"uri_service" => "URIService",
|
|
15
16
|
"has_html_attributes" => "HasHTMLAttributes",
|
|
16
|
-
"engine_dsl" => "EngineDSL"
|
|
17
|
+
"engine_dsl" => "EngineDSL",
|
|
18
|
+
"plugin_dsl" => "PluginDSL",
|
|
19
|
+
"railtie_dsl" => "RailtieDSL"
|
|
17
20
|
)
|
|
18
21
|
loader.ignore("#{__dir__}/generators")
|
|
19
22
|
loader.ignore("#{__dir__}/avo/engine_dsl.rb")
|
|
23
|
+
loader.ignore("#{__dir__}/avo/plugin_dsl.rb")
|
|
24
|
+
loader.ignore("#{__dir__}/avo/railtie_dsl.rb")
|
|
20
25
|
loader.setup
|
|
21
26
|
|
|
22
27
|
module Avo
|
data/lib/tasks/avo_tasks.rake
CHANGED
|
@@ -92,7 +92,7 @@ task "avo:sym_link" do
|
|
|
92
92
|
end
|
|
93
93
|
|
|
94
94
|
gem_paths = `bundle list --paths 2>/dev/null`.split("\n")
|
|
95
|
-
["avo-advanced", "avo-pro", "avo-dynamic_filters", "avo-dashboards", "avo-menu", "avo-kanban", "avo-forms"].each do |gem|
|
|
95
|
+
["avo-advanced", "avo-pro", "avo-advanced_search", "avo-authorization", "avo-record_reordering", "avo-dynamic_filters", "avo-dashboards", "avo-menu", "avo-kanban", "avo-forms"].each do |gem|
|
|
96
96
|
path = gem_paths.find { |gem_path| gem_path.include?("/#{gem}-") }
|
|
97
97
|
|
|
98
98
|
# If path is nil we check if package is defined outside of root (on release process it is)
|