attributes_sanitizer 0.1.1 → 0.1.2

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: 12b4709383dbae4f0d6a6f345719ecffa47fe27e750d39cf00b14e788cf35536
4
- data.tar.gz: 56fdfa609e76e3870cda762b237e234d9bbafc1904875114970a56f41de0325d
3
+ metadata.gz: 0a0c3bafdd04afef4a778d991247d32bd27537fde4c0b005b2ad0ddaee8bbbe3
4
+ data.tar.gz: 9fe53322bee091b4e7a6df4e6e3fa8efe4f759c8dae69a125003450ae7ee3bbf
5
5
  SHA512:
6
- metadata.gz: a05d6ea506b2c4d77f5d9022ebde30514d5e1de50d6ac94a974ea378efc77c52a2a08463e665b5981f6df727d5b6d179e74d42ceda14c0c07a9ba583490efbf5
7
- data.tar.gz: 9ae866687f015fae0041fd60aee83ee96834b7033ab10c75d55366afe6a72172df9687cce35336bf9629744d3e280f91a5121110a4df6bf5c543b43d2a56bf57
6
+ metadata.gz: 5c081ce4dedf43daa64700455d7fcb1e705ac6e1701bf4c3f6a575904b0e566874f5804f04c9dad7c53293ceb1eb08caba5a863562c6f27c3538f8850fefa885
7
+ data.tar.gz: 3b7574ce20365ac239cfefc1ad33021f66c952e3a7b39e6e6d5caa71cc545dca08bc790a4be8800508fc1dd94fba5d8c63e4102e58e4843155fa36f33ee1c14e
data/README.md CHANGED
@@ -9,8 +9,6 @@ A simple way to append sanitizers to attributes on Rails.
9
9
 
10
10
  ```ruby
11
11
  class Product < ApplicationRecord
12
- extend AttributesSanitizer::Concern
13
-
14
12
  sanitize_attribute :title, with: -> (value) {
15
13
  value.gsub(/[1-9]/, 'X')
16
14
  }
@@ -1,13 +1,12 @@
1
1
  module AttributesSanitizer::Concern
2
- def self.extended(klass)
3
- klass.cattr_accessor :attributes_sanitize_map
4
- klass.extend ClassMethods
5
- end
2
+ extend ActiveSupport::Concern
6
3
 
7
- module ClassMethods
8
- def sanitize_attributes(*attributes)
9
- self.attributes_sanitize_map ||= {}
4
+ class_methods do
5
+ def attributes_sanitize_map
6
+ @attributes_sanitize_map ||= {}
7
+ end
10
8
 
9
+ def sanitize_attributes(*attributes)
11
10
  fetch_sanitizers_from_options(attributes).each do |sanitizer|
12
11
  sanitizer = AttributesSanitizer::SanitizerProc.new(sanitizer)
13
12
 
@@ -21,7 +20,7 @@ module AttributesSanitizer::Concern
21
20
  alias_method :sanitize_attribute, :sanitize_attributes
22
21
 
23
22
  def execute_sanitizers_for(attribute, value)
24
- return value if self.attributes_sanitize_map.blank? || value.nil?
23
+ return value if self.attributes_sanitize_map[attribute].blank? || value.nil?
25
24
 
26
25
  self.attributes_sanitize_map[attribute].reduce(value) do |value, sanitizer|
27
26
  sanitizer.call(value)
@@ -1,4 +1,9 @@
1
1
  module AttributesSanitizer
2
2
  class Railtie < ::Rails::Railtie
3
+ initializer 'attributes_sanitizer.insert_into_active_record' do
4
+ ActiveSupport.on_load :active_record do
5
+ ActiveRecord::Base.send(:include, AttributesSanitizer::Concern)
6
+ end
7
+ end
3
8
  end
4
9
  end
@@ -1,3 +1,3 @@
1
1
  module AttributesSanitizer
2
- VERSION = '0.1.1'
2
+ VERSION = '0.1.2'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: attributes_sanitizer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anderson Dias