rails-autocomplete 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/CHANGELOG.md +51 -0
- data/LICENSE +20 -0
- data/README.md +453 -0
- data/Rakefile +21 -0
- data/lib/assets/javascripts/autocomplete-rails-uncompressed.js +197 -0
- data/lib/assets/javascripts/autocomplete-rails.js +1 -0
- data/lib/cucumber/autocomplete.rb +6 -0
- data/lib/generators/autocomplete/install_generator.rb +14 -0
- data/lib/generators/autocomplete/uncompressed_generator.rb +14 -0
- data/lib/rails-jquery-autocomplete.rb +23 -0
- data/lib/rails-jquery-autocomplete/autocomplete.rb +112 -0
- data/lib/rails-jquery-autocomplete/form_helper.rb +49 -0
- data/lib/rails-jquery-autocomplete/formtastic.rb +41 -0
- data/lib/rails-jquery-autocomplete/formtastic_plugin.rb +44 -0
- data/lib/rails-jquery-autocomplete/orm.rb +6 -0
- data/lib/rails-jquery-autocomplete/orm/active_record.rb +83 -0
- data/lib/rails-jquery-autocomplete/rails/engine.rb +5 -0
- data/lib/rails-jquery-autocomplete/simple_form_plugin.rb +100 -0
- data/lib/rails-jquery-autocomplete/version.rb +3 -0
- data/lib/steak/autocomplete.rb +12 -0
- data/test/form_helper_test.rb +25 -0
- data/test/generators/autocomplete/install_generator_test.rb +25 -0
- data/test/generators/autocomplete/uncompressed_generator_test.rb +25 -0
- data/test/lib/rails-jquery-autocomplete/autocomplete_test.rb +93 -0
- data/test/lib/rails-jquery-autocomplete/orm/active_record_test.rb +190 -0
- data/test/lib/rails-jquery-autocomplete/simple_form_plugin_test.rb +33 -0
- data/test/lib/rails-jquery-autocomplete_test.rb +38 -0
- data/test/test_helper.rb +35 -0
- data/test/view_test_helper.rb +108 -0
- metadata +196 -0
@@ -0,0 +1,190 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module RailsJQueryAutocomplete
|
4
|
+
module Orm
|
5
|
+
class ActiveRecordTest < Test::Unit::TestCase
|
6
|
+
include RailsJQueryAutocomplete::Orm::ActiveRecord
|
7
|
+
|
8
|
+
context "#get_autocomplete_order" do
|
9
|
+
context 'order is specified' do
|
10
|
+
should 'returns that order option' do
|
11
|
+
assert_equal "field ASC", active_record_get_autocomplete_order(:field, {:order => 'field ASC'})
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
context 'no order is specified' do
|
16
|
+
should 'return the order clause by the LOWER(table_name.field) ASC' do
|
17
|
+
assert_equal "LOWER(field) ASC", active_record_get_autocomplete_order(:field, {})
|
18
|
+
end
|
19
|
+
|
20
|
+
context 'a different model is specified' do
|
21
|
+
should 'return the order clause by the LOWER(table_name.field) ASC' do
|
22
|
+
model = Object.new
|
23
|
+
mock(model).table_name { 'table_name' }
|
24
|
+
assert_equal "LOWER(table_name.field) ASC", active_record_get_autocomplete_order(:field, {}, model)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
context '#active_record_get_autocomplete_items' do
|
31
|
+
should 'retrieve the items from ActiveRecord' do
|
32
|
+
class Dog ; end
|
33
|
+
|
34
|
+
model = Dog
|
35
|
+
scoped = []
|
36
|
+
whered = []
|
37
|
+
term = 'query'
|
38
|
+
method = :field
|
39
|
+
|
40
|
+
options = {
|
41
|
+
:model => model,
|
42
|
+
:term => term,
|
43
|
+
:method => method,
|
44
|
+
:options => {}
|
45
|
+
}
|
46
|
+
|
47
|
+
mock(self).get_autocomplete_limit(anything) { 10 }
|
48
|
+
mock(self).active_record_get_autocomplete_order(anything, anything, anything) { "order ASC" }
|
49
|
+
mock(self).get_autocomplete_select_clause(model, method, {}) { ["field"] }
|
50
|
+
mock(self).get_autocomplete_where_clause(model, term, method, {}) { ["WHERE something"] }
|
51
|
+
mock(model).table_name.times(any_times) { 'model_table_name' }
|
52
|
+
|
53
|
+
mock(model).scoped { model }
|
54
|
+
mock(model).select(["field"]) { model }
|
55
|
+
mock(model).where(["WHERE something"]).mock!.limit(10).mock!.
|
56
|
+
order("order ASC") { 1 }
|
57
|
+
|
58
|
+
assert_equal 1, active_record_get_autocomplete_items(options)
|
59
|
+
end
|
60
|
+
|
61
|
+
should 'use hstore method if present' do
|
62
|
+
class Dog ; end
|
63
|
+
|
64
|
+
model = Dog
|
65
|
+
scoped = []
|
66
|
+
whered = []
|
67
|
+
term = 'query'
|
68
|
+
method = :field
|
69
|
+
hsmethod = :hsfield
|
70
|
+
|
71
|
+
options = {
|
72
|
+
:model => model,
|
73
|
+
:term => term,
|
74
|
+
:method => method,
|
75
|
+
:options => {hstore: {method: hsmethod}}
|
76
|
+
}
|
77
|
+
|
78
|
+
mock(self).get_autocomplete_limit(anything) { 10 }
|
79
|
+
mock(self).active_record_get_autocomplete_order(anything, anything, anything) { "order ASC" }
|
80
|
+
mock(self).get_autocomplete_select_clause(model, hsmethod, options[:options]) { ["hsfield"] }
|
81
|
+
mock(self).get_autocomplete_where_clause(model, term, hsmethod, options[:options]) { ["WHERE something"] }
|
82
|
+
mock(model).table_name.times(any_times) { 'model_table_name' }
|
83
|
+
|
84
|
+
mock(model).scoped { model }
|
85
|
+
mock(model).select(["hsfield"]) { model }
|
86
|
+
mock(model).where(["WHERE something"]).mock!.limit(10).mock!.
|
87
|
+
order("order ASC") { 1 }
|
88
|
+
|
89
|
+
assert_equal 1, active_record_get_autocomplete_items(options)
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
context '#get_autocomplete_select_clause' do
|
94
|
+
setup do
|
95
|
+
@model = Object.new
|
96
|
+
mock(@model).table_name { 'table_name' }
|
97
|
+
mock(@model).primary_key { 'id' }
|
98
|
+
end
|
99
|
+
|
100
|
+
should 'create a select clause' do
|
101
|
+
assert_equal ["table_name.id", "table_name.method"],
|
102
|
+
get_autocomplete_select_clause(@model, :method, {})
|
103
|
+
end
|
104
|
+
|
105
|
+
should 'create a select clause with hstore method' do
|
106
|
+
assert_equal ["table_name.id", "table_name.hsmethod"],
|
107
|
+
get_autocomplete_select_clause(@model, :hsmethod, {hstore: {method: :hsmethod}})
|
108
|
+
end
|
109
|
+
|
110
|
+
context 'with extra options' do
|
111
|
+
should 'return those extra fields on the clause' do
|
112
|
+
options = {:extra_data => ['table_name.created_at']}
|
113
|
+
|
114
|
+
assert_equal ["table_name.id", "table_name.method", "table_name.created_at"],
|
115
|
+
get_autocomplete_select_clause(@model, :method, options)
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
context '#get_autocomplete_where_clause' do
|
121
|
+
setup do
|
122
|
+
@model = Object.new
|
123
|
+
mock(@model).table_name { 'table_name' }
|
124
|
+
|
125
|
+
@term = 'query'
|
126
|
+
@options = {}
|
127
|
+
@method = :method
|
128
|
+
end
|
129
|
+
|
130
|
+
context 'Not Postgres' do
|
131
|
+
should 'return options for where' do
|
132
|
+
mock(self).postgres?(@model) { false }
|
133
|
+
assert_equal ["LOWER(table_name.method) LIKE LOWER(?)", "query%"], get_autocomplete_where_clause(@model, @term, @method, @options)
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
context 'Postgres' do
|
138
|
+
should 'return options for where with ILIKE' do
|
139
|
+
mock(self).postgres?(@model) { true }
|
140
|
+
assert_equal ["LOWER(table_name.method) ILIKE LOWER(?)", "query%"], get_autocomplete_where_clause(@model, @term, @method, @options)
|
141
|
+
end
|
142
|
+
end
|
143
|
+
|
144
|
+
context 'HStore' do
|
145
|
+
should 'return options for where from hstore options' do
|
146
|
+
mock(self).postgres?(@model) { true }
|
147
|
+
@options[:hstore] = {method: :hsmethod, key: :hskey}
|
148
|
+
@method = :hsmethod
|
149
|
+
assert_equal ["LOWER(table_name.hsmethod -> 'hskey') LIKE LOWER(?)", "query%"], get_autocomplete_where_clause(@model, @term, @method, @options)
|
150
|
+
end
|
151
|
+
end
|
152
|
+
|
153
|
+
context 'full search' do
|
154
|
+
should 'return options for where with the term sourrounded by %%' do
|
155
|
+
mock(self).postgres?(@model) { false }
|
156
|
+
@options[:full] = true
|
157
|
+
assert_equal ["LOWER(table_name.method) LIKE LOWER(?)", "%query%"], get_autocomplete_where_clause(@model, @term, @method, @options)
|
158
|
+
end
|
159
|
+
end
|
160
|
+
end
|
161
|
+
|
162
|
+
context '#postgres?' do
|
163
|
+
setup do
|
164
|
+
@model = stub
|
165
|
+
end
|
166
|
+
|
167
|
+
context 'the connection class is not postgres' do
|
168
|
+
setup do
|
169
|
+
mock(@model).connection { stub }
|
170
|
+
end
|
171
|
+
|
172
|
+
should 'return nil if the connection class matches PostgreSQLAdapter' do
|
173
|
+
assert_nil self.postgres?(@model)
|
174
|
+
end
|
175
|
+
end
|
176
|
+
|
177
|
+
context 'the connection class matches PostgreSQLAdapter' do
|
178
|
+
setup do
|
179
|
+
class PostgreSQLAdapter; end
|
180
|
+
mock(@model).connection { PostgreSQLAdapter.new }
|
181
|
+
end
|
182
|
+
|
183
|
+
should 'return true' do
|
184
|
+
assert self.postgres?(@model)
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|
188
|
+
end
|
189
|
+
end
|
190
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'view_test_helper'
|
3
|
+
|
4
|
+
module RailsJQueryAutocomplete
|
5
|
+
class SimpleFormPluginTest < ActionView::TestCase
|
6
|
+
|
7
|
+
should "apply a class of 'autocomplete'" do
|
8
|
+
with_input_for @user, :name, :autocomplete
|
9
|
+
assert_select "input#user_name.autocomplete[type=text][name='user[name]']"
|
10
|
+
end
|
11
|
+
|
12
|
+
should "add a data-autocomplete attribute with the provided :url" do
|
13
|
+
with_input_for @user, :name, :autocomplete, :url => '/test'
|
14
|
+
assert_select "input#user_name[data-autocomplete=/test]"
|
15
|
+
end
|
16
|
+
|
17
|
+
should "add a data-update-elements attribute with encoded data if passed an :update_elements option" do
|
18
|
+
with_input_for @user, :name, :autocomplete, :update_elements => { :id => '#this', :ego => '#that' }
|
19
|
+
assert_select "input#user_name[data-update-elements='{"id":"#this","ego":"#that"}']"
|
20
|
+
end
|
21
|
+
|
22
|
+
should "not add a data-update-elements attribute if not passed an :update_elements option" do
|
23
|
+
with_input_for @user, :name, :autocomplete, :url => '/test'
|
24
|
+
assert_no_select "input#user_name[data-update-elements]"
|
25
|
+
end
|
26
|
+
|
27
|
+
should "add arbitrary html options, if specified" do
|
28
|
+
with_input_for @user, :name, :autocomplete, :input_html => { :class => "superego" }
|
29
|
+
assert_select "input#user_name.superego"
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module RailsJQueryAutocomplete
|
4
|
+
class RailsJQueryAutocompleteTest < ActionController::TestCase
|
5
|
+
ActorsController = Class.new(ActionController::Base)
|
6
|
+
ActorsController.autocomplete(:movie, :name)
|
7
|
+
|
8
|
+
class ::Movie ; end
|
9
|
+
|
10
|
+
context '#autocomplete_object_method' do
|
11
|
+
setup do
|
12
|
+
@controller = ActorsController.new
|
13
|
+
@items = {}
|
14
|
+
@options = { :display_value => :name }
|
15
|
+
end
|
16
|
+
|
17
|
+
should 'respond to the action' do
|
18
|
+
assert_respond_to @controller, :autocomplete_movie_name
|
19
|
+
end
|
20
|
+
|
21
|
+
should 'render the JSON items' do
|
22
|
+
mock(@controller).get_autocomplete_items({
|
23
|
+
:model => Movie, :method => :name, :options => @options, :term => "query"
|
24
|
+
}) { @items }
|
25
|
+
|
26
|
+
mock(@controller).json_for_autocomplete(@items, :name, nil)
|
27
|
+
get :autocomplete_movie_name, :term => 'query'
|
28
|
+
end
|
29
|
+
|
30
|
+
context 'no term is specified' do
|
31
|
+
should "render an empty hash" do
|
32
|
+
mock(@controller).json_for_autocomplete({}, :name, nil)
|
33
|
+
get :autocomplete_movie_name
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
data/test/test_helper.rb
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'bundler/setup'
|
3
|
+
require 'test/unit'
|
4
|
+
|
5
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
6
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
7
|
+
|
8
|
+
ENV["RAILS_ENV"] = "test"
|
9
|
+
module Rails
|
10
|
+
def self.env
|
11
|
+
ActiveSupport::StringInquirer.new("test")
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
require 'rails/all'
|
16
|
+
require 'shoulda'
|
17
|
+
require 'rr'
|
18
|
+
require 'rails/test_help'
|
19
|
+
require 'rails-jquery-autocomplete'
|
20
|
+
|
21
|
+
module RailsJQueryAutocomplete
|
22
|
+
class Application < ::Rails::Application
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
RailsJQueryAutocomplete::Application.routes.draw do
|
27
|
+
match '/:controller(/:action(/:id))', via: [:get, :post]
|
28
|
+
end
|
29
|
+
|
30
|
+
ActionController::Base.send :include, RailsJQueryAutocomplete::Application.routes.url_helpers
|
31
|
+
|
32
|
+
class Test::Unit::TestCase
|
33
|
+
|
34
|
+
end
|
35
|
+
|
@@ -0,0 +1,108 @@
|
|
1
|
+
class User
|
2
|
+
extend ActiveModel::Naming
|
3
|
+
include ActiveModel::Conversion
|
4
|
+
|
5
|
+
attr_accessor :id, :name, :description, :created_at, :updated_at
|
6
|
+
|
7
|
+
def initialize(options={})
|
8
|
+
@new_record = false
|
9
|
+
options.each do |key, value|
|
10
|
+
send("#{key}=", value)
|
11
|
+
end if options
|
12
|
+
end
|
13
|
+
|
14
|
+
def new_record!
|
15
|
+
@new_record = true
|
16
|
+
end
|
17
|
+
|
18
|
+
def persisted?
|
19
|
+
!@new_record
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
class MockController
|
24
|
+
attr_writer :action_name
|
25
|
+
|
26
|
+
def _routes
|
27
|
+
self
|
28
|
+
end
|
29
|
+
|
30
|
+
def action_name
|
31
|
+
defined?(@action_name) ? @action_name : "edit"
|
32
|
+
end
|
33
|
+
|
34
|
+
def url_for(*args)
|
35
|
+
"http://example.com"
|
36
|
+
end
|
37
|
+
|
38
|
+
def url_helpers
|
39
|
+
self
|
40
|
+
end
|
41
|
+
|
42
|
+
def hash_for_user_path(*args); end
|
43
|
+
def hash_for_users_path(*args); end
|
44
|
+
end
|
45
|
+
|
46
|
+
class MockResponse
|
47
|
+
|
48
|
+
def initialize(test_case)
|
49
|
+
@test_case = test_case
|
50
|
+
end
|
51
|
+
|
52
|
+
def content_type
|
53
|
+
'text/html'
|
54
|
+
end
|
55
|
+
|
56
|
+
def body
|
57
|
+
@test_case.send :output_buffer
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
class ActionView::TestCase
|
62
|
+
include RailsJQueryAutocomplete::Autocomplete
|
63
|
+
include SimpleForm::ActionViewExtensions::FormHelper
|
64
|
+
|
65
|
+
setup :set_controller
|
66
|
+
setup :set_response
|
67
|
+
setup :setup_new_user
|
68
|
+
|
69
|
+
def assert_no_select(selector, value = nil)
|
70
|
+
assert_select(selector, :text => value, :count => 0)
|
71
|
+
end
|
72
|
+
|
73
|
+
def with_concat_form_for(*args, &block)
|
74
|
+
concat simple_form_for(*args, &block)
|
75
|
+
end
|
76
|
+
|
77
|
+
def with_input_for(object, attribute_name, type, options={})
|
78
|
+
with_concat_form_for(object) do |f|
|
79
|
+
f.input(attribute_name, options.merge(:as => type))
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
def set_controller
|
84
|
+
@controller = MockController.new
|
85
|
+
end
|
86
|
+
|
87
|
+
def set_response
|
88
|
+
@response = MockResponse.new(self)
|
89
|
+
end
|
90
|
+
|
91
|
+
def setup_new_user
|
92
|
+
@user = User.new(
|
93
|
+
:id => 1,
|
94
|
+
:name => 'New in SimpleForm!',
|
95
|
+
:description => 'Hello!',
|
96
|
+
:created_at => Time.now
|
97
|
+
)
|
98
|
+
end
|
99
|
+
|
100
|
+
def protect_against_forgery?
|
101
|
+
false
|
102
|
+
end
|
103
|
+
|
104
|
+
def user_path(*args)
|
105
|
+
'/users'
|
106
|
+
end
|
107
|
+
alias :users_path :user_path
|
108
|
+
end
|
metadata
ADDED
@@ -0,0 +1,196 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rails-autocomplete
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- David Padilla
|
8
|
+
- Joiey Seeley
|
9
|
+
- Sundus Yousuf
|
10
|
+
- XPeppers
|
11
|
+
autorequire:
|
12
|
+
bindir: bin
|
13
|
+
cert_chain: []
|
14
|
+
date: 2017-08-03 00:00:00.000000000 Z
|
15
|
+
dependencies:
|
16
|
+
- !ruby/object:Gem::Dependency
|
17
|
+
name: rails
|
18
|
+
requirement: !ruby/object:Gem::Requirement
|
19
|
+
requirements:
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '4.0'
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '4.0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: sqlite3-ruby
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
requirements:
|
34
|
+
- - ">="
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '0'
|
37
|
+
type: :development
|
38
|
+
prerelease: false
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0'
|
44
|
+
- !ruby/object:Gem::Dependency
|
45
|
+
name: bson_ext
|
46
|
+
requirement: !ruby/object:Gem::Requirement
|
47
|
+
requirements:
|
48
|
+
- - ">="
|
49
|
+
- !ruby/object:Gem::Version
|
50
|
+
version: '0'
|
51
|
+
type: :development
|
52
|
+
prerelease: false
|
53
|
+
version_requirements: !ruby/object:Gem::Requirement
|
54
|
+
requirements:
|
55
|
+
- - ">="
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
version: '0'
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: test-unit
|
60
|
+
requirement: !ruby/object:Gem::Requirement
|
61
|
+
requirements:
|
62
|
+
- - ">="
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: '0'
|
65
|
+
type: :development
|
66
|
+
prerelease: false
|
67
|
+
version_requirements: !ruby/object:Gem::Requirement
|
68
|
+
requirements:
|
69
|
+
- - ">="
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: '0'
|
72
|
+
- !ruby/object:Gem::Dependency
|
73
|
+
name: shoulda
|
74
|
+
requirement: !ruby/object:Gem::Requirement
|
75
|
+
requirements:
|
76
|
+
- - ">="
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: '0'
|
79
|
+
type: :development
|
80
|
+
prerelease: false
|
81
|
+
version_requirements: !ruby/object:Gem::Requirement
|
82
|
+
requirements:
|
83
|
+
- - ">="
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '0'
|
86
|
+
- !ruby/object:Gem::Dependency
|
87
|
+
name: uglifier
|
88
|
+
requirement: !ruby/object:Gem::Requirement
|
89
|
+
requirements:
|
90
|
+
- - ">="
|
91
|
+
- !ruby/object:Gem::Version
|
92
|
+
version: '0'
|
93
|
+
type: :development
|
94
|
+
prerelease: false
|
95
|
+
version_requirements: !ruby/object:Gem::Requirement
|
96
|
+
requirements:
|
97
|
+
- - ">="
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: '0'
|
100
|
+
- !ruby/object:Gem::Dependency
|
101
|
+
name: rr
|
102
|
+
requirement: !ruby/object:Gem::Requirement
|
103
|
+
requirements:
|
104
|
+
- - ">="
|
105
|
+
- !ruby/object:Gem::Version
|
106
|
+
version: '0'
|
107
|
+
type: :development
|
108
|
+
prerelease: false
|
109
|
+
version_requirements: !ruby/object:Gem::Requirement
|
110
|
+
requirements:
|
111
|
+
- - ">="
|
112
|
+
- !ruby/object:Gem::Version
|
113
|
+
version: '0'
|
114
|
+
- !ruby/object:Gem::Dependency
|
115
|
+
name: simple_form
|
116
|
+
requirement: !ruby/object:Gem::Requirement
|
117
|
+
requirements:
|
118
|
+
- - ">="
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: '0'
|
121
|
+
type: :development
|
122
|
+
prerelease: false
|
123
|
+
version_requirements: !ruby/object:Gem::Requirement
|
124
|
+
requirements:
|
125
|
+
- - ">="
|
126
|
+
- !ruby/object:Gem::Version
|
127
|
+
version: '0'
|
128
|
+
description: Use jQuery's autocomplete plugin with Rails 4+.
|
129
|
+
email: david@padilla.cc joiey.seeley@gmail.com sundusahmedyousuf@gmail.com orione-team@xpeppers.com
|
130
|
+
executables: []
|
131
|
+
extensions: []
|
132
|
+
extra_rdoc_files: []
|
133
|
+
files:
|
134
|
+
- CHANGELOG.md
|
135
|
+
- LICENSE
|
136
|
+
- README.md
|
137
|
+
- Rakefile
|
138
|
+
- lib/assets/javascripts/autocomplete-rails-uncompressed.js
|
139
|
+
- lib/assets/javascripts/autocomplete-rails.js
|
140
|
+
- lib/cucumber/autocomplete.rb
|
141
|
+
- lib/generators/autocomplete/install_generator.rb
|
142
|
+
- lib/generators/autocomplete/uncompressed_generator.rb
|
143
|
+
- lib/rails-jquery-autocomplete.rb
|
144
|
+
- lib/rails-jquery-autocomplete/autocomplete.rb
|
145
|
+
- lib/rails-jquery-autocomplete/form_helper.rb
|
146
|
+
- lib/rails-jquery-autocomplete/formtastic.rb
|
147
|
+
- lib/rails-jquery-autocomplete/formtastic_plugin.rb
|
148
|
+
- lib/rails-jquery-autocomplete/orm.rb
|
149
|
+
- lib/rails-jquery-autocomplete/orm/active_record.rb
|
150
|
+
- lib/rails-jquery-autocomplete/rails/engine.rb
|
151
|
+
- lib/rails-jquery-autocomplete/simple_form_plugin.rb
|
152
|
+
- lib/rails-jquery-autocomplete/version.rb
|
153
|
+
- lib/steak/autocomplete.rb
|
154
|
+
- test/form_helper_test.rb
|
155
|
+
- test/generators/autocomplete/install_generator_test.rb
|
156
|
+
- test/generators/autocomplete/uncompressed_generator_test.rb
|
157
|
+
- test/lib/rails-jquery-autocomplete/autocomplete_test.rb
|
158
|
+
- test/lib/rails-jquery-autocomplete/orm/active_record_test.rb
|
159
|
+
- test/lib/rails-jquery-autocomplete/simple_form_plugin_test.rb
|
160
|
+
- test/lib/rails-jquery-autocomplete_test.rb
|
161
|
+
- test/test_helper.rb
|
162
|
+
- test/view_test_helper.rb
|
163
|
+
homepage: https://github.com/xpeppers/rails-jquery-autocomplete/
|
164
|
+
licenses:
|
165
|
+
- MIT
|
166
|
+
metadata: {}
|
167
|
+
post_install_message:
|
168
|
+
rdoc_options: []
|
169
|
+
require_paths:
|
170
|
+
- lib
|
171
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
172
|
+
requirements:
|
173
|
+
- - ">="
|
174
|
+
- !ruby/object:Gem::Version
|
175
|
+
version: '0'
|
176
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - ">="
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '0'
|
181
|
+
requirements: []
|
182
|
+
rubyforge_project:
|
183
|
+
rubygems_version: 2.6.12
|
184
|
+
signing_key:
|
185
|
+
specification_version: 4
|
186
|
+
summary: Use jQuery's autocomplete plugin with Rails 4+.
|
187
|
+
test_files:
|
188
|
+
- test/form_helper_test.rb
|
189
|
+
- test/generators/autocomplete/install_generator_test.rb
|
190
|
+
- test/generators/autocomplete/uncompressed_generator_test.rb
|
191
|
+
- test/lib/rails-jquery-autocomplete/autocomplete_test.rb
|
192
|
+
- test/lib/rails-jquery-autocomplete/orm/active_record_test.rb
|
193
|
+
- test/lib/rails-jquery-autocomplete/simple_form_plugin_test.rb
|
194
|
+
- test/lib/rails-jquery-autocomplete_test.rb
|
195
|
+
- test/test_helper.rb
|
196
|
+
- test/view_test_helper.rb
|