paperclip-gcs 0.3.0 → 0.3.2
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 +8 -0
- data/lib/paperclip/gcs/version.rb +1 -1
- data/lib/paperclip/storage/gcs/client_repository.rb +1 -1
- data/lib/paperclip/storage/gcs.rb +13 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a1d92a7ec7300528df2c69939eca97548b3cbb482427b15e3e8e63fcdccc456a
|
4
|
+
data.tar.gz: 36a2ca6b9a42f01266980f76c62443e0d5b68519fbd78d1e8229570b6614111e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8a35c54927a1920a05016b0f0053ced96374860164457786e4a9c30a18dbb60152cd28264019766cd93c2627eb1dde0ad328a4881d929f6f57dcb8b5881dfb84
|
7
|
+
data.tar.gz: 4a6a26ec94dcbec160fa73e3b709b601661ee6c514ac1728480654fba12d64e913d5506006351872d1e9544a76bf63d007db0e3c898b606755b3a30834a2ec83
|
data/README.md
CHANGED
@@ -184,6 +184,14 @@ gcs_storage_class: :multi_regional
|
|
184
184
|
|
185
185
|
The Cache-Control metadata allows you to control whether and for how long browser and Internet caches are allowed to cache your objects.
|
186
186
|
|
187
|
+
### gcs_content_disposition
|
188
|
+
|
189
|
+
The Content-Disposition metadata allows you to specify the presentation of the object in the browser.
|
190
|
+
|
191
|
+
### gcs_content_type
|
192
|
+
|
193
|
+
The Content-Type metadata allows you to specify the content type of the object. By default it will use the file content type.
|
194
|
+
|
187
195
|
### Interpolates
|
188
196
|
|
189
197
|
#### :gcs_alias_url
|
@@ -23,6 +23,8 @@ module Paperclip
|
|
23
23
|
@gcs_permissions = normalize_style(@options[:gcs_permissions])
|
24
24
|
@gcs_storage_class = normalize_style(@options[:gcs_storage_class])
|
25
25
|
@gcs_cache_control = normalize_style(@options[:gcs_cache_control])
|
26
|
+
@gcs_content_type = normalize_style(@options[:gcs_content_type])
|
27
|
+
@gcs_content_disposition = normalize_style(@options[:gcs_content_disposition])
|
26
28
|
|
27
29
|
unless @options[:url].to_s.match(%r{\A:gcs_(alias|path|domain)_url\z}) || @options[:url] == ":asset_host".freeze
|
28
30
|
@options[:path] = path_option.gsub(/:url/, @options[:url]).sub(%r{\A:rails_root/public/system}, "".freeze)
|
@@ -70,14 +72,15 @@ module Paperclip
|
|
70
72
|
log("saving #{path(style)}")
|
71
73
|
|
72
74
|
opts = {
|
73
|
-
content_type: file
|
75
|
+
content_type: gcs_content_type(file, style),
|
76
|
+
content_disposition: gcs_content_disposition(style),
|
74
77
|
cache_control: gcs_cache_control(style),
|
75
78
|
encryption_key: gcs_encryption_key,
|
76
79
|
acl: gcs_permissions(style),
|
77
80
|
storage_class: gcs_storage_class(style),
|
78
81
|
metadata: gcs_metadata(style),
|
79
82
|
}
|
80
|
-
gcs_bucket.upload_file(file.path, path(style), opts)
|
83
|
+
gcs_bucket.upload_file(file.path, path(style), **opts)
|
81
84
|
end
|
82
85
|
after_flush_writes
|
83
86
|
@queued_for_write = {}
|
@@ -141,6 +144,14 @@ module Paperclip
|
|
141
144
|
unwrap_proc(@gcs_permissions[style] || @gcs_permissions[:default], self, style)
|
142
145
|
end
|
143
146
|
|
147
|
+
def gcs_content_type(file, style = default_style)
|
148
|
+
unwrap_proc(@gcs_content_type[style] || @gcs_content_type[:default], self, style) || file.content_type
|
149
|
+
end
|
150
|
+
|
151
|
+
def gcs_content_disposition(style = default_style)
|
152
|
+
unwrap_proc(@gcs_content_disposition[style] || @gcs_content_disposition[:default], self, style)
|
153
|
+
end
|
154
|
+
|
144
155
|
def gcs_storage_class(style = default_style)
|
145
156
|
unwrap_proc(@gcs_storage_class[style] || @gcs_storage_class[:default], self, style)
|
146
157
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: paperclip-gcs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daichi HIRATA
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-06-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: kt-paperclip
|