data_style_sanitizer 0.2.1 → 0.2.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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a99ffd99fabc59fadd239621056e2bbcf385002c72a7f5a21b782318f2cc5561
|
4
|
+
data.tar.gz: d5e162d48cbb7c9817501129c4d5ab671a295b3c451914b95f6b57b2a5699ff5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 076ecfb8d8c5b82f675cef01bcac30a09cedbcbe0902dde8f86ef0fb7fb8d56ef308e923ec9c2cf94c6a6907ea647868218ea97ce7475b160bbc653662590c1d
|
7
|
+
data.tar.gz: cbcd19bd0e21e3b44221fe871d1757e74a9509d6e0e63b0cbc07415c0bf1ae0feece7766f5f711a72b45eb7c60f11df4758f97d0b4ad7acc8373a6a2f69fa5a0
|
@@ -32,7 +32,16 @@ module DataStyleSanitizer
|
|
32
32
|
private
|
33
33
|
|
34
34
|
def extract_nonce(env)
|
35
|
-
env.
|
35
|
+
if env.respond_to?(:dig)
|
36
|
+
env.dig("action_dispatch.content_security_policy_nonce", :style)
|
37
|
+
else
|
38
|
+
# get nonce from meta tag
|
39
|
+
# This is a fallback for older versions of Rails
|
40
|
+
meta_tag = env["rack.session"]&.dig("meta_tags", "csp-nonce")
|
41
|
+
if meta_tag
|
42
|
+
meta_tag.match(/nonce="([^"]+)"/)[1] if /nonce="([^"]+)"/.match?(meta_tag)
|
43
|
+
end
|
44
|
+
end
|
36
45
|
end
|
37
46
|
end
|
38
47
|
end
|
data/lib/data_style_sanitizer.rb
CHANGED
@@ -1,8 +1,10 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
|
3
|
+
require_relative "data_style_sanitizer/processor"
|
4
|
+
require_relative "data_style_sanitizer/railtie"
|
5
5
|
require_relative "data_style_sanitizer/version"
|
6
|
+
require_relative "data_style_sanitizer/railtie"
|
7
|
+
require_relative "data_style_sanitizer/middleware"
|
6
8
|
|
7
9
|
module DataStyleSanitizer
|
8
10
|
class Error < StandardError; end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: data_style_sanitizer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- tedaford
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rails
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '7.1'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '7.1'
|
41
55
|
description: This is a gem that converts data-style attributes into CSP-compliant
|
42
56
|
nonced style blocks. It is designed to work with Rails applications and provides
|
43
57
|
a simple interface for sanitizing HTML content.
|