pretty_file_input 0.0.5 → 0.1.0
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/README.md +1 -1
- data/app/inputs/pretty_file_input_input.rb +1 -1
- data/lib/pretty_file_input.rb +8 -1
- data/lib/pretty_file_input/version.rb +1 -1
- data/lib/pretty_file_input/views/component.rb +31 -0
- data/pretty_file_input.gemspec +2 -2
- data/spec/dummy/app/views/base.rb +7 -0
- data/spec/dummy/bin/rails +4 -0
- data/spec/dummy/db/schema.rb +2 -2
- metadata +10 -6
- data/lib/pretty_file_input/component.rb +0 -33
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 68b54fdac68bd00ae0371edd16a8eea1e4430115
|
4
|
+
data.tar.gz: ce5eb69566b3f2ff100973d57171bae85ff2f560
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 14e98da6f206086cd9f60359d9a93647b48aff45e45e7b0a741491407f6071f6bcbf0a8f4c0c7abf650f01d8f9af7878236c6beab355806acd296484c176d8f8
|
7
|
+
data.tar.gz: 24f7d7d052888e177d91098f8b50b50ffd7075819cf01bae9d4be4a6120b6553ab1758bb817fa88fad7a9f34d89352bd414202fdcdb5b28b9a1bf3ea840002d3
|
data/README.md
CHANGED
@@ -52,7 +52,7 @@ The resulting behavior will depend on whether or not the parent object is alread
|
|
52
52
|
|
53
53
|
### Manual
|
54
54
|
|
55
|
-
If your use case doesn't fit the patterns above, you can use the "Manual" integration with pretty_file_input. `PrettyFileInput::Component` is
|
55
|
+
If your use case doesn't fit the patterns above, you can use the "Manual" integration with pretty_file_input. `PrettyFileInput::Views::Component` is a Fortitude widget that can be customized with the following options:
|
56
56
|
|
57
57
|
```rb
|
58
58
|
:name, # input name that will be sent to the server
|
@@ -1,7 +1,7 @@
|
|
1
1
|
class PrettyFileInputInput < SimpleForm::Inputs::Base
|
2
2
|
def input(wrapper_options)
|
3
3
|
@builder.multipart = true
|
4
|
-
PrettyFileInput::Component.new(
|
4
|
+
PrettyFileInput::Views::Component.new(
|
5
5
|
name: tag_name,
|
6
6
|
persisted: object.try(:persisted?),
|
7
7
|
filename: object.try(:send, attribute_name).try(:file).try(:filename)
|
data/lib/pretty_file_input.rb
CHANGED
@@ -1,8 +1,15 @@
|
|
1
1
|
require 'pretty_file_input/version'
|
2
|
-
require '
|
2
|
+
require 'fortitude'
|
3
3
|
|
4
4
|
module PrettyFileInput
|
5
5
|
class Engine < ::Rails::Engine
|
6
|
+
initializer 'pretty_file_input.load_views' do |app|
|
7
|
+
require 'pretty_file_input/views/component'
|
8
|
+
end
|
9
|
+
end
|
6
10
|
|
11
|
+
module Views
|
12
|
+
mattr_accessor :base_view_class
|
13
|
+
self.base_view_class = 'Views::Base'
|
7
14
|
end
|
8
15
|
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
class PrettyFileInput::Views::Component < PrettyFileInput::Views.base_view_class.constantize
|
2
|
+
needs :name,
|
3
|
+
persisted: false,
|
4
|
+
filename: nil,
|
5
|
+
method: nil,
|
6
|
+
action: nil,
|
7
|
+
additional_params: {}
|
8
|
+
|
9
|
+
def content
|
10
|
+
div(
|
11
|
+
class: "pfi cf #{filename ? 'is_uploaded' : ''}",
|
12
|
+
'data-pfi' => {
|
13
|
+
name: name,
|
14
|
+
persisted: persisted,
|
15
|
+
action: action,
|
16
|
+
method: method,
|
17
|
+
additionalParams: additional_params
|
18
|
+
}.to_json
|
19
|
+
) {
|
20
|
+
div(class: 'pfi_uploaded') {
|
21
|
+
span filename, class: 'pfi_existing_filename'
|
22
|
+
text ' '
|
23
|
+
a 'Remove', 'data-pfi-remove' => true, class: 'button mini info'
|
24
|
+
}
|
25
|
+
div(class: 'pfi_not_uploaded') {
|
26
|
+
input type: 'file'
|
27
|
+
span class: 'pfi_status'
|
28
|
+
}
|
29
|
+
}
|
30
|
+
end
|
31
|
+
end
|
data/pretty_file_input.gemspec
CHANGED
@@ -17,12 +17,12 @@ Gem::Specification.new do |s|
|
|
17
17
|
s.homepage = 'http://github.com/dobtco/pretty_file_input'
|
18
18
|
|
19
19
|
s.add_dependency 'coffee-script'
|
20
|
-
s.add_dependency '
|
20
|
+
s.add_dependency 'fortitude'
|
21
21
|
s.add_dependency 'sass'
|
22
22
|
|
23
23
|
s.add_development_dependency 'capybara', '2.4.4'
|
24
24
|
s.add_development_dependency 'carrierwave'
|
25
|
-
s.add_development_dependency 'rails', '4.
|
25
|
+
s.add_development_dependency 'rails', '4.2.5'
|
26
26
|
s.add_development_dependency 'rspec-rails', '3.1.0'
|
27
27
|
s.add_development_dependency 'selenium-webdriver', '2.45.0'
|
28
28
|
s.add_development_dependency 'simple_form', '3.1.0'
|
data/spec/dummy/db/schema.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pretty_file_input
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adam Becker
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-12-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: coffee-script
|
@@ -25,7 +25,7 @@ dependencies:
|
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: fortitude
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
@@ -86,14 +86,14 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - '='
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 4.
|
89
|
+
version: 4.2.5
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - '='
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 4.
|
96
|
+
version: 4.2.5
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: rspec-rails
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -165,8 +165,8 @@ files:
|
|
165
165
|
- app/assets/stylesheets/pretty_file_input.scss
|
166
166
|
- app/inputs/pretty_file_input_input.rb
|
167
167
|
- lib/pretty_file_input.rb
|
168
|
-
- lib/pretty_file_input/component.rb
|
169
168
|
- lib/pretty_file_input/version.rb
|
169
|
+
- lib/pretty_file_input/views/component.rb
|
170
170
|
- pretty_file_input.gemspec
|
171
171
|
- script/cibuild
|
172
172
|
- script/release
|
@@ -176,10 +176,12 @@ files:
|
|
176
176
|
- spec/dummy/app/assets/stylesheets/application.css
|
177
177
|
- spec/dummy/app/controllers/users_controller.rb
|
178
178
|
- spec/dummy/app/models/user.rb
|
179
|
+
- spec/dummy/app/views/base.rb
|
179
180
|
- spec/dummy/app/views/layouts/application.html.erb
|
180
181
|
- spec/dummy/app/views/users/_form.html.erb
|
181
182
|
- spec/dummy/app/views/users/edit.html.erb
|
182
183
|
- spec/dummy/app/views/users/new.html.erb
|
184
|
+
- spec/dummy/bin/rails
|
183
185
|
- spec/dummy/config.ru
|
184
186
|
- spec/dummy/config/application.rb
|
185
187
|
- spec/dummy/config/boot.rb
|
@@ -225,10 +227,12 @@ test_files:
|
|
225
227
|
- spec/dummy/app/assets/stylesheets/application.css
|
226
228
|
- spec/dummy/app/controllers/users_controller.rb
|
227
229
|
- spec/dummy/app/models/user.rb
|
230
|
+
- spec/dummy/app/views/base.rb
|
228
231
|
- spec/dummy/app/views/layouts/application.html.erb
|
229
232
|
- spec/dummy/app/views/users/_form.html.erb
|
230
233
|
- spec/dummy/app/views/users/edit.html.erb
|
231
234
|
- spec/dummy/app/views/users/new.html.erb
|
235
|
+
- spec/dummy/bin/rails
|
232
236
|
- spec/dummy/config.ru
|
233
237
|
- spec/dummy/config/application.rb
|
234
238
|
- spec/dummy/config/boot.rb
|
@@ -1,33 +0,0 @@
|
|
1
|
-
require 'erector'
|
2
|
-
|
3
|
-
class PrettyFileInput::Component < Erector::Widget
|
4
|
-
needs :name,
|
5
|
-
persisted: false,
|
6
|
-
filename: nil,
|
7
|
-
method: nil,
|
8
|
-
action: nil,
|
9
|
-
additional_params: {}
|
10
|
-
|
11
|
-
def content
|
12
|
-
div(
|
13
|
-
class: "pfi cf #{@filename ? 'is_uploaded' : ''}",
|
14
|
-
'data-pfi' => {
|
15
|
-
name: @name,
|
16
|
-
persisted: @persisted,
|
17
|
-
action: @action,
|
18
|
-
method: @method,
|
19
|
-
additionalParams: @additional_params
|
20
|
-
}.to_json
|
21
|
-
) {
|
22
|
-
div.pfi_uploaded {
|
23
|
-
span.pfi_existing_filename @filename
|
24
|
-
text ' '
|
25
|
-
a.button.mini.info 'Remove', 'data-pfi-remove' => true
|
26
|
-
}
|
27
|
-
div.pfi_not_uploaded {
|
28
|
-
input type: 'file'
|
29
|
-
span.pfi_status
|
30
|
-
}
|
31
|
-
}
|
32
|
-
end
|
33
|
-
end
|