qti 2.14.0 → 2.15.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ce025f977e8afee917a58d479c15bc56fc7320596b1bfb0c28da5e94ad19602a
4
- data.tar.gz: 642c6b5ba04eb180d5ff363d4aec28bdfc1807cb27fc8d8e99ab0d4b78c36ad0
3
+ metadata.gz: fcafa61127adf8dafdd3084cd6c22d56630473c0d01e42a7e6cddf6ee7b4ba96
4
+ data.tar.gz: 68fdf75e1b11fae2ca2ac55aca9daf936c2754ee1a0a244ccc94a51953c3957f
5
5
  SHA512:
6
- metadata.gz: c96870e3a861ce1e635a5a2f09a8be85820528cc703303bdea362468c0107704be4cf87e425ed4f11d892e3db3453450d4058c5d102442e43c5caa71f3b21b4a
7
- data.tar.gz: d0eac68354d0ffeeae4b1098e90bded2907462f0671ec21377de1d0fa596695fb4ae417f3f6770909c23edf108634f050b1452700b0324fd305833aedb536997
6
+ metadata.gz: 06543ad3a11e643f4c9731a641da3495afa53d94defa9ac8b40a34015d152ca24e5943fb1b33d9fe0db0714915f9a2e86dd2511821197f1b29395b071adf1ce0
7
+ data.tar.gz: 7b3ad6b2fa593ca9f2be62f524777fef0d41d9ddc8833af38ec445a89a3ffe5c855dd80312000978a0bd55bada68b8d711220a54b46d1b231223b0e41727b0b3
data/lib/qti/sanitizer.rb CHANGED
@@ -40,7 +40,7 @@ module Qti
40
40
  'object' => MEDIA_ATTR,
41
41
  'embed' => %w[name src type allowfullscreen pluginspage wmode
42
42
  allowscriptaccess width height],
43
- 'iframe' => %w[src width height name align frameborder scrolling sandbox
43
+ 'iframe' => %w[src style width height name align frameborder scrolling sandbox
44
44
  allowfullscreen webkitallowfullscreen mozallowfullscreen
45
45
  allow] + ALL_DATA_ATTR, # TODO: remove explicit allow with domain whitelist account setting
46
46
  'a' => relaxed_config('a', ['target'] + ALL_DATA_ATTR),
@@ -92,7 +92,7 @@ module Qti
92
92
  lambda do |env|
93
93
  return unless FILTER_TAGS.include?(env[:node_name])
94
94
  return if env[:is_whitelisted] || !env[:node].element?
95
- Sanitize.node!(env[:node], CONFIG)
95
+ Sanitize.node!(env[:node], Sanitize::Config.merge(Sanitize::Config::RELAXED, CONFIG))
96
96
  { node_whitelist: [env[:node]] }
97
97
  end
98
98
  end
data/lib/qti/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Qti
2
- VERSION = '2.14.0'.freeze
2
+ VERSION = '2.15.0'.freeze
3
3
  end
@@ -54,5 +54,14 @@ describe Qti::Sanitizer do
54
54
 
55
55
  expect(sanitizer.clean(html)).to include 'target="_blank"'
56
56
  end
57
+
58
+ it 'allows style attributes on iframe' do
59
+ html = '<iframe style="width: 523px; height: 294px; display: inline-block;"></iframe>'
60
+
61
+ expect(sanitizer.clean(html)).to include 'style'
62
+ expect(sanitizer.clean(html)).to include 'width: 523px;'
63
+ expect(sanitizer.clean(html)).to include 'height: 294px;'
64
+ expect(sanitizer.clean(html)).to include 'display: inline-block;'
65
+ end
57
66
  end
58
67
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qti
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.14.0
4
+ version: 2.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adrian Diaz
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2023-05-11 00:00:00.000000000 Z
15
+ date: 2023-05-16 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: actionview