avo 3.6.2 → 3.6.4
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.base.css +0 -20
- data/app/components/avo/index/resource_table_component.rb +21 -13
- data/lib/avo/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1686cd42a28d62d2877e3db2582df2ad34a6e30d27002151c1f3cc3b92490ac7
|
4
|
+
data.tar.gz: 319d4b0e6ad38d87e88379cef31c8ec650961643c5268d86b20e5579bb693b35
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6bb3637bf610b0ee8b78642685661015e26371d44e9dd7c31bf3e0796b89c9698f4e026a37f0378c4457e933a381f63040e66cd3dc55f155e7ba74e746b7b743
|
7
|
+
data.tar.gz: '081b731423609d9f8f53dd1fa1866b37674aacf3374f7911d582b426a533ee1caf3d390563c7d2807db52a58db916c6ced8099ec1d703ffc2c13c1d31882b950'
|
data/Gemfile.lock
CHANGED
@@ -7252,11 +7252,6 @@ tag.tagify__tag{
|
|
7252
7252
|
margin-right:1.5rem
|
7253
7253
|
}
|
7254
7254
|
|
7255
|
-
.mx-auto{
|
7256
|
-
margin-left:auto;
|
7257
|
-
margin-right:auto
|
7258
|
-
}
|
7259
|
-
|
7260
7255
|
.my-0{
|
7261
7256
|
margin-top:0px;
|
7262
7257
|
margin-bottom:0px
|
@@ -7796,10 +7791,6 @@ tag.tagify__tag{
|
|
7796
7791
|
max-width:32rem
|
7797
7792
|
}
|
7798
7793
|
|
7799
|
-
.max-w-screen-xl{
|
7800
|
-
max-width:1280px
|
7801
|
-
}
|
7802
|
-
|
7803
7794
|
.max-w-xs{
|
7804
7795
|
max-width:20rem
|
7805
7796
|
}
|
@@ -11091,17 +11082,6 @@ trix-editor {
|
|
11091
11082
|
}
|
11092
11083
|
}
|
11093
11084
|
|
11094
|
-
.rtl\:space-x-reverse:where([dir="rtl"], [dir="rtl"] *) > :not([hidden]) ~ :not([hidden]){
|
11095
|
-
--tw-space-x-reverse:1
|
11096
|
-
}
|
11097
|
-
|
11098
|
-
@media (prefers-color-scheme: dark){
|
11099
|
-
.dark\:bg-gray-900{
|
11100
|
-
--tw-bg-opacity:1;
|
11101
|
-
background-color:rgb(23 25 28 / var(--tw-bg-opacity))
|
11102
|
-
}
|
11103
|
-
}
|
11104
|
-
|
11105
11085
|
@media print{
|
11106
11086
|
.print\:hidden{
|
11107
11087
|
display:none
|
@@ -4,6 +4,10 @@ class Avo::Index::ResourceTableComponent < Avo::BaseComponent
|
|
4
4
|
include Avo::ApplicationHelper
|
5
5
|
attr_reader :pagy, :query
|
6
6
|
|
7
|
+
def before_render
|
8
|
+
@header_fields, @table_row_components = cache_table_rows
|
9
|
+
end
|
10
|
+
|
7
11
|
def initialize(resources: nil, resource: nil, reflection: nil, parent_record: nil, parent_resource: nil, pagy: nil, query: nil, actions: nil)
|
8
12
|
@resources = resources
|
9
13
|
@resource = resource
|
@@ -13,7 +17,6 @@ class Avo::Index::ResourceTableComponent < Avo::BaseComponent
|
|
13
17
|
@pagy = pagy
|
14
18
|
@query = query
|
15
19
|
@actions = actions
|
16
|
-
cache_table_rows
|
17
20
|
end
|
18
21
|
|
19
22
|
def encrypted_query
|
@@ -44,33 +47,33 @@ class Avo::Index::ResourceTableComponent < Avo::BaseComponent
|
|
44
47
|
def cache_table_rows
|
45
48
|
# Cache the execution of the following block if caching is enabled in Avo configuration
|
46
49
|
cache_if Avo.configuration.cache_resources_on_index_view, @resource.cache_hash(@parent_record), expires_in: 1.day do
|
47
|
-
|
48
|
-
@header_fields = []
|
49
|
-
@table_row_components = []
|
50
|
-
|
51
|
-
generate_table_row_components
|
52
|
-
|
53
|
-
# Remove duplicate header fields based on table_header_label
|
54
|
-
@header_fields.uniq!(&:table_header_label)
|
50
|
+
header_fields, table_row_components = generate_table_row_components
|
55
51
|
|
56
52
|
# Create an array of header field labels used for each row to render values on the right column
|
57
|
-
|
53
|
+
header_fields_ids = header_fields.map(&:table_header_label)
|
58
54
|
|
59
55
|
# Assign header field IDs to each TableRowComponent
|
60
56
|
# We assign it here because only complete header fields array after last table row.
|
61
|
-
|
57
|
+
table_row_components.map { |table_row_component| table_row_component.header_fields = header_fields_ids }
|
58
|
+
|
59
|
+
# Return header fields and table row components
|
60
|
+
return [header_fields, table_row_components]
|
62
61
|
end
|
63
62
|
end
|
64
63
|
|
65
64
|
def generate_table_row_components
|
65
|
+
# Initialize arrays to hold header fields and table row components
|
66
|
+
header_fields = []
|
67
|
+
table_row_components = []
|
68
|
+
|
66
69
|
# Loop through each resource in @resources
|
67
70
|
@resources.each do |resource|
|
68
71
|
# Get fields for the current resource and concat them to the @header_fields
|
69
72
|
row_fields = resource.get_fields(reflection: @reflection, only_root: true)
|
70
|
-
|
73
|
+
header_fields.concat row_fields
|
71
74
|
|
72
75
|
# Create a TableRowComponent instance for the resource and add it to @table_row_components
|
73
|
-
|
76
|
+
table_row_components << Avo::Index::TableRowComponent.new(
|
74
77
|
resource: resource,
|
75
78
|
fields: row_fields,
|
76
79
|
reflection: @reflection,
|
@@ -79,5 +82,10 @@ class Avo::Index::ResourceTableComponent < Avo::BaseComponent
|
|
79
82
|
actions: @actions
|
80
83
|
)
|
81
84
|
end
|
85
|
+
|
86
|
+
# Remove duplicate header fields based on table_header_label
|
87
|
+
header_fields.uniq!(&:table_header_label)
|
88
|
+
|
89
|
+
[header_fields, table_row_components]
|
82
90
|
end
|
83
91
|
end
|
data/lib/avo/version.rb
CHANGED