active_storage_drag_and_drop 0.3.5 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_storage_drag_and_drop
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dave O'Keeffe
@@ -9,8 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2018-11-29 00:00:00.000000000 Z
12
+ date: 2019-01-29 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: bootsnap
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: '0'
21
+ type: :development
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ version: '0'
14
28
  - !ruby/object:Gem::Dependency
15
29
  name: bundler
16
30
  requirement: !ruby/object:Gem::Requirement
@@ -25,6 +39,76 @@ dependencies:
25
39
  - - "~>"
26
40
  - !ruby/object:Gem::Version
27
41
  version: '1.16'
42
+ - !ruby/object:Gem::Dependency
43
+ name: capybara
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ">="
47
+ - !ruby/object:Gem::Version
48
+ version: '0'
49
+ type: :development
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: geckodriver-helper
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ - !ruby/object:Gem::Dependency
71
+ name: github-markup
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ version: '0'
84
+ - !ruby/object:Gem::Dependency
85
+ name: haml
86
+ requirement: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ type: :development
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ - !ruby/object:Gem::Dependency
99
+ name: listen
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: '0'
105
+ type: :development
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: '0'
28
112
  - !ruby/object:Gem::Dependency
29
113
  name: minitest
30
114
  requirement: !ruby/object:Gem::Requirement
@@ -39,6 +123,62 @@ dependencies:
39
123
  - - "~>"
40
124
  - !ruby/object:Gem::Version
41
125
  version: '5.0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: nokogiri
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '0'
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
140
+ - !ruby/object:Gem::Dependency
141
+ name: pry
142
+ requirement: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ type: :development
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
154
+ - !ruby/object:Gem::Dependency
155
+ name: pry-byebug
156
+ requirement: !ruby/object:Gem::Requirement
157
+ requirements:
158
+ - - ">="
159
+ - !ruby/object:Gem::Version
160
+ version: '0'
161
+ type: :development
162
+ prerelease: false
163
+ version_requirements: !ruby/object:Gem::Requirement
164
+ requirements:
165
+ - - ">="
166
+ - !ruby/object:Gem::Version
167
+ version: '0'
168
+ - !ruby/object:Gem::Dependency
169
+ name: puma
170
+ requirement: !ruby/object:Gem::Requirement
171
+ requirements:
172
+ - - ">="
173
+ - !ruby/object:Gem::Version
174
+ version: '0'
175
+ type: :development
176
+ prerelease: false
177
+ version_requirements: !ruby/object:Gem::Requirement
178
+ requirements:
179
+ - - ">="
180
+ - !ruby/object:Gem::Version
181
+ version: '0'
42
182
  - !ruby/object:Gem::Dependency
43
183
  name: rake
44
184
  requirement: !ruby/object:Gem::Requirement
@@ -53,6 +193,76 @@ dependencies:
53
193
  - - "~>"
54
194
  - !ruby/object:Gem::Version
55
195
  version: '10.0'
196
+ - !ruby/object:Gem::Dependency
197
+ name: redcarpet
198
+ requirement: !ruby/object:Gem::Requirement
199
+ requirements:
200
+ - - ">="
201
+ - !ruby/object:Gem::Version
202
+ version: '0'
203
+ type: :development
204
+ prerelease: false
205
+ version_requirements: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - ">="
208
+ - !ruby/object:Gem::Version
209
+ version: '0'
210
+ - !ruby/object:Gem::Dependency
211
+ name: rubocop
212
+ requirement: !ruby/object:Gem::Requirement
213
+ requirements:
214
+ - - ">="
215
+ - !ruby/object:Gem::Version
216
+ version: '0'
217
+ type: :development
218
+ prerelease: false
219
+ version_requirements: !ruby/object:Gem::Requirement
220
+ requirements:
221
+ - - ">="
222
+ - !ruby/object:Gem::Version
223
+ version: '0'
224
+ - !ruby/object:Gem::Dependency
225
+ name: selenium-webdriver
226
+ requirement: !ruby/object:Gem::Requirement
227
+ requirements:
228
+ - - ">="
229
+ - !ruby/object:Gem::Version
230
+ version: '0'
231
+ type: :development
232
+ prerelease: false
233
+ version_requirements: !ruby/object:Gem::Requirement
234
+ requirements:
235
+ - - ">="
236
+ - !ruby/object:Gem::Version
237
+ version: '0'
238
+ - !ruby/object:Gem::Dependency
239
+ name: simplecov
240
+ requirement: !ruby/object:Gem::Requirement
241
+ requirements:
242
+ - - ">="
243
+ - !ruby/object:Gem::Version
244
+ version: '0'
245
+ type: :development
246
+ prerelease: false
247
+ version_requirements: !ruby/object:Gem::Requirement
248
+ requirements:
249
+ - - ">="
250
+ - !ruby/object:Gem::Version
251
+ version: '0'
252
+ - !ruby/object:Gem::Dependency
253
+ name: sqlite3
254
+ requirement: !ruby/object:Gem::Requirement
255
+ requirements:
256
+ - - ">="
257
+ - !ruby/object:Gem::Version
258
+ version: '0'
259
+ type: :development
260
+ prerelease: false
261
+ version_requirements: !ruby/object:Gem::Requirement
262
+ requirements:
263
+ - - ">="
264
+ - !ruby/object:Gem::Version
265
+ version: '0'
56
266
  - !ruby/object:Gem::Dependency
57
267
  name: rack
58
268
  requirement: !ruby/object:Gem::Requirement
@@ -81,17 +291,21 @@ dependencies:
81
291
  - - "~>"
82
292
  - !ruby/object:Gem::Version
83
293
  version: '5.2'
84
- description: Provides a form helper to make it easy to make drag and drop file uploadfields
85
- that work with Rails' Active Storage.
294
+ description: Provides a form helper to make it easy to make drag and drop file upload
295
+ fields that work with Rails' Active Storage.
86
296
  email:
87
297
  - ian.grant@marinosoftware.com
88
298
  executables: []
89
299
  extensions: []
90
300
  extra_rdoc_files: []
91
301
  files:
302
+ - ".codeclimate.yml"
303
+ - ".eslintignore"
304
+ - ".eslintrc.yml"
92
305
  - ".gitignore"
93
306
  - ".rubocop.yml"
94
307
  - ".travis.yml"
308
+ - ".yardopts"
95
309
  - CODE_OF_CONDUCT.md
96
310
  - Gemfile
97
311
  - Gemfile.lock
@@ -107,14 +321,10 @@ files:
107
321
  - app/javascript/active_storage_drag_and_drop/index.js
108
322
  - app/javascript/active_storage_drag_and_drop/ujs.js
109
323
  - app/javascript/active_storage_drag_and_drop/upload_queue_processor.js
110
- - app/views/application/_active_storage_drag_and_drop.html.erb
111
324
  - bin/console
112
325
  - bin/setup
113
326
  - lib/active_storage_drag_and_drop.rb
114
- - lib/active_storage_drag_and_drop/rails.rb
115
- - lib/active_storage_drag_and_drop/rails/engine.rb
116
- - lib/active_storage_drag_and_drop/rails/form_builder.rb
117
- - lib/active_storage_drag_and_drop/rails/form_helper.rb
327
+ - lib/active_storage_drag_and_drop/form_builder.rb
118
328
  - lib/active_storage_drag_and_drop/version.rb
119
329
  - package.json
120
330
  - webpack.config.js
@@ -143,5 +353,5 @@ rubyforge_project:
143
353
  rubygems_version: 2.7.5
144
354
  signing_key:
145
355
  specification_version: 4
146
- summary: Provides js drag and drop file upload functionality for active storage.
356
+ summary: Provides JS drag and drop file upload functionality for active storage.
147
357
  test_files: []
@@ -1,15 +0,0 @@
1
- <label class="asdndzone" id="asdndz-<%= form.object_name %>_<%= method %>" data-dnd-input-id="<%= form.object_name %>_<%= method %>">
2
- <%= tag_value %>
3
- <div id="asdndz-<%= form.object_name %>_<%= method %>__icon-container"></div>
4
- <%= form.file_field method, options %>
5
- <% attachments.reject(&:persisted?).each_with_index do |blob,idx| %>
6
- <%= form.hidden_field method,
7
- value: blob.signed_id,
8
- :multiple => true,
9
- data: {
10
- direct_upload_id: idx,
11
- uploaded_file_name: blob.filename,
12
- icon_container_id: "asdndz-#{form.object_name}_#{method}__icon-container"
13
- } %>
14
- <% end %>
15
- </label>
@@ -1,8 +0,0 @@
1
- require 'rails'
2
- require 'rails/engine'
3
- require 'active_storage_drag_and_drop/rails/engine'
4
-
5
- module ActiveStorageDragAndDrop
6
- module Rails
7
- end
8
- end
@@ -1,11 +0,0 @@
1
- module ActiveStorageDragAndDrop
2
- module Rails
3
- class Engine < ::Rails::Engine
4
- initializer 'active_storage_drag_and_drop.form_helpers' do |_app|
5
- ActiveSupport.on_load(:action_view) do
6
- require 'active_storage_drag_and_drop/rails/form_helper'
7
- end
8
- end
9
- end
10
- end
11
- end
@@ -1,78 +0,0 @@
1
- module ActiveStorageDragAndDrop
2
- module Rails
3
- module FormBuilder
4
- include ActionView::Helpers::TagHelper
5
- include Haml::Helpers if defined? Haml
6
-
7
- def drag_and_drop_file_field(method, content_or_options = nil, options = {}, &block)
8
- if block_given?
9
- options = content_or_options if content_or_options.is_a? Hash
10
- drag_and_drop_file_field_string(method, capture(&block), options)
11
- else
12
- drag_and_drop_file_field_string(method, content_or_options, options)
13
- end
14
- end
15
-
16
- private
17
-
18
- def capture_haml(*args, &block)
19
- with_haml_buffer(load_buffer(block)) do
20
- position = haml_buffer.buffer.length
21
-
22
- haml_buffer.capture_position = position
23
- value = yield(*args)
24
- captured = haml_buffer.buffer.slice!(position..-1)
25
- capture_value(captured, value)
26
- end
27
- end
28
-
29
- def capture_value(captured, value)
30
- if (captured == '') && (value != haml_buffer.buffer)
31
- captured = (value.is_a?(String) ? value : nil)
32
- end
33
- captured.html_safe
34
- end
35
-
36
- def load_buffer(block)
37
- buffer = eval <<-RUBY, block.binding, __FILE__, __LINE__ + 1
38
- (defined? _hamlout) ? _hamlout : nil
39
- RUBY
40
- buffer || haml_buffer
41
- end
42
-
43
- def drag_and_drop_file_field_string(method, content = nil, options = {})
44
- content ||= tag.strong('Drag and drop') + ' files here or ' +
45
- tag.strong('click to browse')
46
- @template.render partial: 'active_storage_drag_and_drop',
47
- locals: {
48
- tag_value: content,
49
- form: self,
50
- attachments: @object.send(method),
51
- method: method,
52
- options: file_field_options(method, options)
53
- }
54
- end
55
-
56
- def default_file_field_options(method)
57
- {
58
- multiple: true,
59
- direct_upload: true,
60
- style: 'display:none;',
61
- data: {
62
- dnd: true,
63
- dnd_zone_id: "asdndz-#{object_name}_#{method}",
64
- icon_container_id: "asdndz-#{object_name}_#{method}__icon-container"
65
- }
66
- }
67
- end
68
-
69
- def file_field_options(method, custom_options)
70
- default_file_field_options(method).merge(custom_options) do |_key, default, custom|
71
- default.is_a?(Hash) && custom.is_a?(Hash) ? default.merge(custom) : custom
72
- end
73
- end
74
- end
75
- end
76
- end
77
-
78
- ActiveStorageDragAndDrop::FormBuilder = ActiveStorageDragAndDrop::Rails::FormBuilder
@@ -1,16 +0,0 @@
1
- require 'action_view/helpers'
2
- require 'active_storage_drag_and_drop/rails/form_builder'
3
-
4
- module ActiveStorageDragAndDrop
5
- module Rails
6
- module FormHelper
7
- def self.included(_base)
8
- ActionView::Helpers::FormBuilder.instance_eval do
9
- include FormBuilder
10
- end
11
- end
12
- end
13
- end
14
- end
15
-
16
- ActionView::Base.send :include, ActiveStorageDragAndDrop::Rails::FormHelper