admin_suite 0.2.6 → 0.2.7

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4a19232543e5f8aa66155c67a802f471e6263987ab9931ba5cc3b09d4594c8c1
4
- data.tar.gz: f84997e801a5de253a888d7b43e6b18f9d147befa72c31b3b42b1037c28d002c
3
+ metadata.gz: d5150c2ac986138055644b1e6f52c61ee774efc62e27a951a34d4ca9943fe7d8
4
+ data.tar.gz: 57729f5a0e760f26111c7f73aeec78a7493a1b849ba12bd50c992ebfbaf6c034
5
5
  SHA512:
6
- metadata.gz: '00488cc60abfd97e0dee09e8a6958a39488a190ab7e60667f554a06b316a1209ee1a720c7af888d6c43d045786d99f528fbc7c5c66ec9546370f8d15337e7a09'
7
- data.tar.gz: 866b3dabd47b50f4fbe6f2f6ee8cfdb894906cbd9e7a1217f7b3f47a693ddcfcabf6fb1802b516ee68b768a9d341012ba1ba7eb6eba2dabc1bcaf7e3f2e1a284
6
+ metadata.gz: e99ac448e983647cb570ae875e0681e138895c7783a6538ee6aa0b898e93001c3dd65b8dcf6b882885c83ef35042f55c29ef2e75f00d77025af6de58254be7b4
7
+ data.tar.gz: df3a565311c4a10df7603eaa776bf1a3e4ed3f2cea6dc6445b3702986887c900f13c0af272af4bb006bb9af921b8d0ec545b8f049b12dbb2078cd77d69eddb2d
@@ -205,8 +205,20 @@ module AdminSuite
205
205
  next unless field.is_a?(Admin::Base::Resource::FieldDefinition)
206
206
 
207
207
  if field.type == :tags || field.type == :multi_select
208
- array_fields << { field.name => [] }
209
- array_fields << { tag_list: [] } if field.type == :tags && field.name != :tag_list
208
+ if field.type == :tags
209
+ name_str = field.name.to_s
210
+ submitted_name =
211
+ if name_str.end_with?("_list")
212
+ field.name
213
+ elsif resource_class.method_defined?("#{name_str}_list")
214
+ :"#{name_str}_list"
215
+ else
216
+ :tag_list
217
+ end
218
+ array_fields << { submitted_name => [] }
219
+ else
220
+ array_fields << { field.name => [] }
221
+ end
210
222
  else
211
223
  permitted_fields << field.name
212
224
  end
@@ -1137,7 +1137,19 @@ module AdminSuite
1137
1137
  []
1138
1138
  end
1139
1139
 
1140
- field_name = field.type == :tags ? "tag_list" : field.name
1140
+ field_name =
1141
+ if field.type == :tags
1142
+ name_str = field.name.to_s
1143
+ if name_str.end_with?("_list")
1144
+ field.name
1145
+ elsif resource.class.method_defined?("#{name_str}_list")
1146
+ :"#{name_str}_list"
1147
+ else
1148
+ :tag_list
1149
+ end
1150
+ else
1151
+ field.name
1152
+ end
1141
1153
  full_field_name = "#{param_key}[#{field_name}][]"
1142
1154
 
1143
1155
  content_tag(:div,
@@ -2,7 +2,7 @@
2
2
 
3
3
  module AdminSuite
4
4
  module Version
5
- VERSION = "0.2.6"
5
+ VERSION = "0.2.7"
6
6
  end
7
7
 
8
8
  # Backward-compatible constant.
@@ -36,7 +36,7 @@ module AdminSuite
36
36
  RUBY
37
37
 
38
38
  AdminSuite.reset_root_dashboard!
39
- AdminSuite.config.dashboard_globs = [File.join(dir, "*.rb")]
39
+ AdminSuite.config.dashboard_globs = [ File.join(dir, "*.rb") ]
40
40
 
41
41
  get "/internal/admin_suite"
42
42
  assert_response :success
@@ -27,7 +27,7 @@ module AdminSuite
27
27
  pushed_dirs << { path: path.to_s, namespace: namespace }
28
28
  end
29
29
 
30
- [loader, ignored_dirs, pushed_dirs]
30
+ [ loader, ignored_dirs, pushed_dirs ]
31
31
  end
32
32
 
33
33
  # Helper method that simulates the Zeitwerk integration logic from engine.rb
@@ -170,7 +170,7 @@ module AdminSuite
170
170
 
171
171
  # Temporarily override File.binread to simulate read errors
172
172
  original_binread = File.singleton_class.instance_method(:binread)
173
-
173
+
174
174
  File.singleton_class.define_method(:binread) do |path|
175
175
  if path == test_file
176
176
  raise StandardError, "Simulated read error"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: admin_suite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - TechWright Labs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-02-21 00:00:00.000000000 Z
11
+ date: 2026-02-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails