administrate-field-has_many_search 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 9e5a699068fe8d5f017ca36b723813241ed8033046c4324fda887978702841d2
4
+ data.tar.gz: 8d9bcb27f7f35be527c14534f94bf6bf31df444acfe1ac4838027425540cfc8f
5
+ SHA512:
6
+ metadata.gz: d4a8b0ef760d8b84902714733ee9560a9b883914d8fcf96a80481c6122236e045b7e292b87e2803e28e94e878d7a84ebe0da5d68b1c56d83bb1eaf4a3f2c4bd5
7
+ data.tar.gz: 0c18bd52a87f50b35fa1e8e1c7ecdb710bd892129a231fef133ffff306ed728c7993f9b15bfb93a2967aca7d779d3e135f5ea4de78e07c8d9d212c0a627e8582
data/.gitignore ADDED
@@ -0,0 +1,9 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --require spec_helper
data/.rubocop.yml ADDED
@@ -0,0 +1,38 @@
1
+ Rails:
2
+ Enabled: true
3
+
4
+ Metrics/LineLength:
5
+ Max: 120
6
+ Metrics/MethodLength:
7
+ Max: 20
8
+ Metrics/ClassLength:
9
+ Max: 220
10
+
11
+ Metrics/AbcSize:
12
+ Max: 35
13
+
14
+ Documentation:
15
+ Enabled: false
16
+
17
+ Style/FrozenStringLiteralComment:
18
+ Enabled: false
19
+
20
+ # allow multiline `expect { ... }.to do_something`
21
+ Style/BlockDelimiters:
22
+ Exclude:
23
+ - 'spec/**/*'
24
+
25
+ # specs tend to get long
26
+ Metrics/BlockLength:
27
+ Exclude:
28
+ - 'spec/**/*'
29
+
30
+ Rails/ApplicationRecord:
31
+ Exclude:
32
+ - 'spec/**/*'
33
+
34
+ Style/TrailingCommaInHashLiteral:
35
+ EnforcedStyleForMultiline: comma
36
+
37
+ Style/TrailingCommaInArrayLiteral:
38
+ EnforcedStyleForMultiline: comma
data/.simplecov ADDED
@@ -0,0 +1,11 @@
1
+ SimpleCov.start 'rails' do
2
+ add_group 'app', 'app'
3
+ add_group 'lib', 'lib'
4
+
5
+ refuse_coverage_drop
6
+
7
+ formatter SimpleCov::Formatter::MultiFormatter.new([
8
+ SimpleCov::Formatter::HTMLFormatter,
9
+ Coveralls::SimpleCov::Formatter
10
+ ])
11
+ end
data/.travis.yml ADDED
@@ -0,0 +1,10 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.5.1
4
+ - 2.4.1
5
+ - 2.3.4
6
+ cache: bundler
7
+ install: bundle install
8
+ script:
9
+ - bundle exec rubocop -D
10
+ - bundle exec rake
data/CHANGELOG.md ADDED
@@ -0,0 +1,5 @@
1
+ # Changelog
2
+
3
+ ## 0.1.0
4
+
5
+ Initial release
@@ -0,0 +1,74 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ In the interest of fostering an open and welcoming environment, we as
6
+ contributors and maintainers pledge to making participation in our project and
7
+ our community a harassment-free experience for everyone, regardless of age, body
8
+ size, disability, ethnicity, gender identity and expression, level of experience,
9
+ nationality, personal appearance, race, religion, or sexual identity and
10
+ orientation.
11
+
12
+ ## Our Standards
13
+
14
+ Examples of behavior that contributes to creating a positive environment
15
+ include:
16
+
17
+ * Using welcoming and inclusive language
18
+ * Being respectful of differing viewpoints and experiences
19
+ * Gracefully accepting constructive criticism
20
+ * Focusing on what is best for the community
21
+ * Showing empathy towards other community members
22
+
23
+ Examples of unacceptable behavior by participants include:
24
+
25
+ * The use of sexualized language or imagery and unwelcome sexual attention or
26
+ advances
27
+ * Trolling, insulting/derogatory comments, and personal or political attacks
28
+ * Public or private harassment
29
+ * Publishing others' private information, such as a physical or electronic
30
+ address, without explicit permission
31
+ * Other conduct which could reasonably be considered inappropriate in a
32
+ professional setting
33
+
34
+ ## Our Responsibilities
35
+
36
+ Project maintainers are responsible for clarifying the standards of acceptable
37
+ behavior and are expected to take appropriate and fair corrective action in
38
+ response to any instances of unacceptable behavior.
39
+
40
+ Project maintainers have the right and responsibility to remove, edit, or
41
+ reject comments, commits, code, wiki edits, issues, and other contributions
42
+ that are not aligned to this Code of Conduct, or to ban temporarily or
43
+ permanently any contributor for other behaviors that they deem inappropriate,
44
+ threatening, offensive, or harmful.
45
+
46
+ ## Scope
47
+
48
+ This Code of Conduct applies both within project spaces and in public spaces
49
+ when an individual is representing the project or its community. Examples of
50
+ representing a project or community include using an official project e-mail
51
+ address, posting via an official social media account, or acting as an appointed
52
+ representative at an online or offline event. Representation of a project may be
53
+ further defined and clarified by project maintainers.
54
+
55
+ ## Enforcement
56
+
57
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
+ reported by contacting the project team at developer@fishbrain.com. All
59
+ complaints will be reviewed and investigated and will result in a response that
60
+ is deemed necessary and appropriate to the circumstances. The project team is
61
+ obligated to maintain confidentiality with regard to the reporter of an incident.
62
+ Further details of specific enforcement policies may be posted separately.
63
+
64
+ Project maintainers who do not follow or enforce the Code of Conduct in good
65
+ faith may face temporary or permanent repercussions as determined by other
66
+ members of the project's leadership.
67
+
68
+ ## Attribution
69
+
70
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71
+ available at [http://contributor-covenant.org/version/1/4][version]
72
+
73
+ [homepage]: http://contributor-covenant.org
74
+ [version]: http://contributor-covenant.org/version/1/4/
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License
2
+
3
+ Copyright (c) 2017 Fishbrain AB.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,59 @@
1
+ # Administrate::Field::HasManySearch
2
+
3
+ A plugin to search through `has_many` associations in [thoughtbot's Administrate](https://github.com/thoughtbot/administrate) Rails engine.
4
+
5
+ ## Usage
6
+
7
+ Add it to your `Gemfile`:
8
+
9
+ ```ruby
10
+ gem 'administrate-field-has_many_search'
11
+ ```
12
+
13
+ Run bundler to install:
14
+
15
+ ```sh
16
+ bundle install
17
+ ```
18
+
19
+ Add it to your Administrate dashboard, for instance:
20
+
21
+ ```ruby
22
+ class PostDashboard < Administrate::BaseDashboard
23
+ ATTRIBUTE_TYPES = {
24
+ authors: Field::HasManySearch.with_options(class_name: 'User')
25
+ }
26
+ # ...
27
+ ```
28
+
29
+ With this, you should be good to go!
30
+
31
+ ## Develop and Contribute
32
+
33
+ Fork and clone the repo. Install dependencies and run test using:
34
+
35
+ ```sh
36
+ bundle install
37
+ bundle exec rake
38
+ ```
39
+
40
+ Then, implement your feature/fix, [write a good commit message](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
41
+ and submit a pull request to this repository. If you only have some feedback or are unsure about how to do something, you're welcome to
42
+ submit an [issue](https://github.com/redrick/administrate-field-has_many_search/issues/new).
43
+
44
+ This is meant to be an welcoming and friendly place for collaboration. Therefore, all contributors are expected to adhere to the [Contributor Covenant Code of Conduct](CODE_OF_CONDUCT.md).
45
+
46
+ ## License
47
+
48
+ It is licensed under the MIT license. See [LICENSE](LICENSE) for details.
49
+
50
+ ## Screenshot
51
+
52
+ ![Screenshot](https://user-images.githubusercontent.com/865364/167399301-49f7de4b-6240-4875-b509-6f354fe62503.png)
53
+
54
+ ## Credits
55
+
56
+ I have to give much credit to [Fishbrain AB](https://fishbrain.com)
57
+ This was not only inspired, but shamelessly copy-pasted from
58
+ [here](https://github.com/fishbrain/administrate-field-belongs_to_search) for
59
+ convenience, many thanks guys :)
data/Rakefile ADDED
@@ -0,0 +1,22 @@
1
+ #!/usr/bin/env rake
2
+
3
+ begin
4
+ require 'bundler/setup'
5
+ rescue LoadError
6
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
7
+ end
8
+
9
+ require 'bundler/gem_tasks'
10
+
11
+ ##
12
+ # Configure the test suite.
13
+ ##
14
+ require 'rspec/core'
15
+ require 'rspec/core/rake_task'
16
+
17
+ RSpec::Core::RakeTask.new
18
+
19
+ ##
20
+ # By default, just run the tests.
21
+ ##
22
+ task default: :spec
@@ -0,0 +1,33 @@
1
+ lib = File.expand_path('lib', __dir__)
2
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
+
4
+ Gem::Specification.new do |gem|
5
+ gem.name = 'administrate-field-has_many_search'
6
+ gem.version = '0.1.0'.freeze
7
+ gem.authors = ['Klas Eskilson', 'Andrej Antas']
8
+ gem.email = ['klas.eskilson@gmail.com', 'andrej@antas.cz']
9
+ gem.homepage = 'https://github.com/redrick/administrate-field-has_many_search'
10
+ gem.summary = 'Plugin that adds search capabilities to has_many associations for Administrate'
11
+ gem.license = 'MIT'
12
+
13
+ gem.require_paths = %w[lib]
14
+ gem.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(spec)/}) }
15
+ gem.test_files = `git ls-files -z -- {spec}/*`.split("\x0")
16
+
17
+ gem.add_dependency 'administrate', '>= 0.3', '< 1.0'
18
+ gem.add_dependency 'jbuilder', '~> 2'
19
+ gem.add_dependency 'rails', '>= 4.2', '< 7.1'
20
+ gem.add_dependency 'selectize-rails', '~> 0.6'
21
+
22
+ gem.add_development_dependency 'coveralls', '~> 0'
23
+ gem.add_development_dependency 'factory_girl', '~> 4.8'
24
+ gem.add_development_dependency 'rake', '~> 13.0'
25
+ gem.add_development_dependency 'rspec', '~> 3.4'
26
+ gem.add_development_dependency 'rubocop', '~> 0.76.0'
27
+ gem.add_development_dependency 'simplecov', '~> 0'
28
+ gem.add_development_dependency 'sqlite3', '~> 1.3'
29
+
30
+ gem.description = <<-DESCRIPTION
31
+ Add support to search through (potentially large) has_many associations in your Administrate dashboards.
32
+ DESCRIPTION
33
+ end
@@ -0,0 +1,28 @@
1
+ // belongs_to form
2
+ $(function() {
3
+ $(".field-unit--has-many-search select").each(function initializeSelectize(index, element) {
4
+ var $element = $(element);
5
+ $element.selectize({
6
+ valueField: 'id',
7
+ labelField: 'dashboard_display_name',
8
+ searchField: 'dashboard_display_name',
9
+ create: false,
10
+ searchUrl: $element.data('url') + '?search=',
11
+
12
+ load: function(query, callback) {
13
+ if (!query.length) return callback();
14
+ var searchUrl = this.settings.searchUrl;
15
+ $.ajax({
16
+ url: searchUrl + encodeURIComponent(query),
17
+ type: 'GET',
18
+ error: function() {
19
+ callback();
20
+ },
21
+ success: function(res) {
22
+ callback(res.resources);
23
+ }
24
+ });
25
+ },
26
+ });
27
+ });
28
+ });
@@ -0,0 +1,23 @@
1
+ # ## Index
2
+ #
3
+ # This view is the template for the index page.
4
+ #
5
+ # ## Local variables:
6
+ #
7
+ # - `page`:
8
+ # An instance of [Administrate::Page::Collection][1].
9
+ # Contains helper methods to help display a table,
10
+ # and knows which attributes should be displayed in the resource's table.
11
+ # - `resources`:
12
+ # An instance of `ActiveRecord::Relation` containing the resources
13
+ # that match the user's search criteria.
14
+ # By default, these resources are passed to the table partial to be displayed.
15
+ # - `search_term`:
16
+ # A string containing the term the user has searched for, if any.
17
+ #
18
+ # [1]: http://www.rubydoc.info/gems/administrate/Administrate/Page/Collection
19
+
20
+ json.resources resources do |resource|
21
+ json.id resource.id
22
+ json.dashboard_display_name @dashboard.display_resource(resource)
23
+ end
@@ -0,0 +1,28 @@
1
+ <%#
2
+ # BelongsToSearch Form Partial
3
+
4
+ This partial renders an search input element for belongs_to relationships.
5
+ By default, the input is a collection select box
6
+ that displays all possible records to associate with.
7
+
8
+ ## Local variables:
9
+
10
+ - `f`:
11
+ A Rails form generator, used to help create the appropriate input fields.
12
+ - `field`:
13
+ An instance of [BelongsToWithSearchField].
14
+ Contains helper methods for displaying a collection select box.
15
+ %>
16
+
17
+ <div class="field-unit__label">
18
+ <%= f.label field.attribute, for: "#{f.object_name}_#{field.attribute_key}" %>
19
+ </div>
20
+ <div class="field-unit__field">
21
+ <%= f.select(field.attribute_key,
22
+ nil,
23
+ {},
24
+ multiple: true,
25
+ 'data-url': polymorphic_url([namespace, field.associated_class], format: :json)) do %>
26
+ <%= options_for_select(field.associated_resource_options, field.selected_options) %>
27
+ <% end %>
28
+ </div>
@@ -0,0 +1,16 @@
1
+ <%#
2
+ # BelongsToSearch Index Partial
3
+
4
+ This partial renders a belongs_to relationship,
5
+ to be displayed on a resource's index page.
6
+
7
+ By default, the relationship is rendered as a link to the associated object.
8
+
9
+ ## Local variables:
10
+
11
+ - `field`:
12
+ An instance of Administrate::Field::BelongsToSearch.
13
+ A wrapper around the belongs_to relationship pulled from the database.
14
+ %>
15
+
16
+ <%= pluralize(field.data.size, t("activerecord.models.#{field.attribute.to_s.singularize}", default: field.attribute.to_s.humanize.downcase.singularize, count: field.data.size)) %>
@@ -0,0 +1,32 @@
1
+ <%#
2
+ # BelongsToSearch Show Partial
3
+
4
+ This partial renders a belongs_to relationship,
5
+ to be displayed on a resource's show page.
6
+
7
+ By default, the relationship is rendered as a link to the associated object.
8
+
9
+ ## Local variables:
10
+
11
+ - `field`:
12
+ An instance of Administrate::Field::BelongsToSearch.
13
+ A wrapper around the belongs_to relationship pulled from the database.
14
+ %>
15
+
16
+ <% if field.resources.any? %>
17
+ <% order = field.order_from_params(params.fetch(field.name, {})) %>
18
+ <% page_number = params.fetch(field.name, {}).fetch(:page, nil) %>
19
+ <%= render(
20
+ "collection",
21
+ collection_presenter: field.associated_collection(order),
22
+ collection_field_name: field.name,
23
+ page: page,
24
+ resources: field.resources(page_number, order),
25
+ table_title: field.name,
26
+ ) %>
27
+ <% if field.more_than_limit? %>
28
+ <%= paginate field.resources(page_number), param_name: "#{field.name}[page]" %>
29
+ <% end %>
30
+ <% else %>
31
+ <%= t("administrate.fields.has_many.none", default: "–") %>
32
+ <% end %>
@@ -0,0 +1,29 @@
1
+ require "administrate/field/has_many"
2
+ require "rails"
3
+
4
+ module Administrate
5
+ module Field
6
+ class HasManySearch < Administrate::Field::HasMany
7
+ class Engine < ::Rails::Engine
8
+ initializer "administrate-field-has_many_search.add_assets" do |app|
9
+ app.config.assets.precompile << "has_many_search.js" if app.config.respond_to? :assets
10
+ Administrate::Engine.add_javascript "has_many_search.js" if defined?(Administrate::Engine)
11
+ end
12
+ end
13
+
14
+ def associated_resource_options
15
+ if data.blank?
16
+ []
17
+ else
18
+ data.map do |d|
19
+ [display_candidate_resource(d), d.id]
20
+ end
21
+ end
22
+ end
23
+
24
+ def associated_class
25
+ super
26
+ end
27
+ end
28
+ end
29
+ end
metadata ADDED
@@ -0,0 +1,230 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: administrate-field-has_many_search
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Klas Eskilson
8
+ - Andrej Antas
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2022-05-09 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: administrate
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: '0.3'
21
+ - - "<"
22
+ - !ruby/object:Gem::Version
23
+ version: '1.0'
24
+ type: :runtime
25
+ prerelease: false
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ requirements:
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ version: '0.3'
31
+ - - "<"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.0'
34
+ - !ruby/object:Gem::Dependency
35
+ name: jbuilder
36
+ requirement: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '2'
41
+ type: :runtime
42
+ prerelease: false
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '2'
48
+ - !ruby/object:Gem::Dependency
49
+ name: rails
50
+ requirement: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '4.2'
55
+ - - "<"
56
+ - !ruby/object:Gem::Version
57
+ version: '7.1'
58
+ type: :runtime
59
+ prerelease: false
60
+ version_requirements: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: '4.2'
65
+ - - "<"
66
+ - !ruby/object:Gem::Version
67
+ version: '7.1'
68
+ - !ruby/object:Gem::Dependency
69
+ name: selectize-rails
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '0.6'
75
+ type: :runtime
76
+ prerelease: false
77
+ version_requirements: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '0.6'
82
+ - !ruby/object:Gem::Dependency
83
+ name: coveralls
84
+ requirement: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ type: :development
90
+ prerelease: false
91
+ version_requirements: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - "~>"
94
+ - !ruby/object:Gem::Version
95
+ version: '0'
96
+ - !ruby/object:Gem::Dependency
97
+ name: factory_girl
98
+ requirement: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - "~>"
101
+ - !ruby/object:Gem::Version
102
+ version: '4.8'
103
+ type: :development
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '4.8'
110
+ - !ruby/object:Gem::Dependency
111
+ name: rake
112
+ requirement: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - "~>"
115
+ - !ruby/object:Gem::Version
116
+ version: '13.0'
117
+ type: :development
118
+ prerelease: false
119
+ version_requirements: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: '13.0'
124
+ - !ruby/object:Gem::Dependency
125
+ name: rspec
126
+ requirement: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: '3.4'
131
+ type: :development
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '3.4'
138
+ - !ruby/object:Gem::Dependency
139
+ name: rubocop
140
+ requirement: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: 0.76.0
145
+ type: :development
146
+ prerelease: false
147
+ version_requirements: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: 0.76.0
152
+ - !ruby/object:Gem::Dependency
153
+ name: simplecov
154
+ requirement: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - "~>"
157
+ - !ruby/object:Gem::Version
158
+ version: '0'
159
+ type: :development
160
+ prerelease: false
161
+ version_requirements: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - "~>"
164
+ - !ruby/object:Gem::Version
165
+ version: '0'
166
+ - !ruby/object:Gem::Dependency
167
+ name: sqlite3
168
+ requirement: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - "~>"
171
+ - !ruby/object:Gem::Version
172
+ version: '1.3'
173
+ type: :development
174
+ prerelease: false
175
+ version_requirements: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - "~>"
178
+ - !ruby/object:Gem::Version
179
+ version: '1.3'
180
+ description: " Add support to search through (potentially large) has_many associations
181
+ in your Administrate dashboards.\n"
182
+ email:
183
+ - klas.eskilson@gmail.com
184
+ - andrej@antas.cz
185
+ executables: []
186
+ extensions: []
187
+ extra_rdoc_files: []
188
+ files:
189
+ - ".gitignore"
190
+ - ".rspec"
191
+ - ".rubocop.yml"
192
+ - ".simplecov"
193
+ - ".travis.yml"
194
+ - CHANGELOG.md
195
+ - CODE_OF_CONDUCT.md
196
+ - Gemfile
197
+ - LICENSE
198
+ - README.md
199
+ - Rakefile
200
+ - administrate-field-has_many_search.gemspec
201
+ - app/assets/javascripts/has_many_search.js
202
+ - app/views/administrate/application/index.json.jbuilder
203
+ - app/views/fields/has_many_search/_form.html.erb
204
+ - app/views/fields/has_many_search/_index.html.erb
205
+ - app/views/fields/has_many_search/_show.html.erb
206
+ - lib/administrate/field/has_many_search.rb
207
+ homepage: https://github.com/redrick/administrate-field-has_many_search
208
+ licenses:
209
+ - MIT
210
+ metadata: {}
211
+ post_install_message:
212
+ rdoc_options: []
213
+ require_paths:
214
+ - lib
215
+ required_ruby_version: !ruby/object:Gem::Requirement
216
+ requirements:
217
+ - - ">="
218
+ - !ruby/object:Gem::Version
219
+ version: '0'
220
+ required_rubygems_version: !ruby/object:Gem::Requirement
221
+ requirements:
222
+ - - ">="
223
+ - !ruby/object:Gem::Version
224
+ version: '0'
225
+ requirements: []
226
+ rubygems_version: 3.1.2
227
+ signing_key:
228
+ specification_version: 4
229
+ summary: Plugin that adds search capabilities to has_many associations for Administrate
230
+ test_files: []