eml 2.1.8 → 2.2.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/eml.gemspec +3 -3
 - data/lib/eml/error/rest/internal_server.rb +1 -1
 - data/lib/eml/error/tns.rb +1 -1
 - data/lib/eml/lib/basic_auth/generate.rb +1 -1
 - data/lib/eml/lib/basic_auth/verify.rb +1 -1
 - data/lib/eml/lib/constant_time_compare.rb +1 -1
 - data/lib/eml/parameters.rb +6 -3
 - data/lib/eml/payload.rb +1 -1
 - data/lib/eml/response.rb +1 -1
 - data/lib/eml/uk/models/tns/card.rb +1 -1
 - data/lib/eml/uk/models/transaction.rb +1 -1
 - data/lib/eml/uk/parameters/agreement/show.rb +3 -2
 - data/lib/eml/uk/parameters/card/activation.rb +4 -4
 - data/lib/eml/uk/parameters/card/lock.rb +4 -4
 - data/lib/eml/uk/parameters/card/register.rb +4 -4
 - data/lib/eml/uk/parameters/card/reload.rb +4 -4
 - data/lib/eml/uk/parameters/card/show.rb +16 -7
 - data/lib/eml/uk/parameters/card/transaction.rb +14 -7
 - data/lib/eml/uk/parameters/card/unload.rb +4 -4
 - data/lib/eml/uk/parameters/card/unlock.rb +4 -4
 - data/lib/eml/uk/parameters/card/void.rb +4 -4
 - data/lib/eml/uk/parameters.rb +3 -0
 - data/lib/eml/uk/payload/agreement/show.rb +19 -10
 - data/lib/eml/uk/payload/card/activation.rb +25 -14
 - data/lib/eml/uk/payload/card/lock.rb +14 -7
 - data/lib/eml/uk/payload/card/register.rb +22 -4
 - data/lib/eml/uk/payload/card/reload.rb +17 -8
 - data/lib/eml/uk/payload/card/show.rb +1 -1
 - data/lib/eml/uk/payload/card/transaction.rb +1 -1
 - data/lib/eml/uk/payload/card/unload.rb +17 -8
 - data/lib/eml/uk/payload/card/unlock.rb +5 -5
 - data/lib/eml/uk/payload/card/void.rb +5 -5
 - data/lib/eml/uk/payload/location.rb +6 -6
 - data/lib/eml/uk/response.rb +1 -1
 - data/lib/eml/uk/responses/agreement/show.rb +1 -1
 - data/lib/eml/uk/responses/card/reload.rb +1 -1
 - data/lib/eml/uk/responses/card/show.rb +1 -1
 - data/lib/eml/version.rb +1 -1
 - data/sorbet/rbi/gems/addressable.rbi +2 -2
 - data/sorbet/rbi/gems/byebug.rbi +1039 -0
 - data/sorbet/rbi/gems/coderay.rbi +91 -0
 - data/sorbet/rbi/gems/ffi-compiler.rbi +26 -0
 - data/sorbet/rbi/gems/ffi.rbi +559 -0
 - data/sorbet/rbi/gems/http-parser.rbi +120 -0
 - data/sorbet/rbi/gems/http.rbi +13 -7
 - data/sorbet/rbi/gems/method_source.rbi +63 -0
 - data/sorbet/rbi/gems/pry-byebug.rbi +149 -0
 - data/sorbet/rbi/gems/pry.rbi +1964 -0
 - data/sorbet/rbi/gems/public_suffix.rbi +1 -1
 - data/sorbet/rbi/gems/rake.rbi +645 -0
 - data/sorbet/rbi/gems/rspec-core.rbi +38 -1
 - data/sorbet/rbi/gems/rubocop.rbi +4 -0
 - data/sorbet/rbi/gems/simplecov-html.rbi +5 -1
 - data/sorbet/rbi/gems/simplecov.rbi +143 -17
 - data/sorbet/rbi/gems/webmock.rbi +0 -4
 - data/sorbet/rbi/hidden-definitions/errors.txt +7053 -166
 - data/sorbet/rbi/hidden-definitions/hidden.rbi +12951 -3455
 - data/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +3 -1
 - data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +254 -0
 - data/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +8 -8
 - data/sorbet/rbi/todo.rbi +18 -0
 - metadata +30 -15
 - data/sorbet/rbi/gems/http_parser.rb.rbi +0 -36
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 761eb94e49a489e9d3d46c0c08e587ca35ac3f261844f41c86d9e53e82884d7f
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 250769fefbdd1b167c9d96bbde90d6164c2eeab76b4ed3893a0b6263ea174c80
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: ea05e0d50c97d7b1383ca7ade24f062f5c3aacb897d240f962e570bf28a6bcb71b15857260bbfe49bac323653b8ba1c9387aa68adcc086b42c3868b35b974526
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 29962159168a5362a3716c3c53f76461a8c2bfd9f11b3fee37d2ff5f0736ead077915b4374ae5b38979b0ee7120b06ea45d17dd3d1c512cbc2051b3017d2a96c
         
     | 
    
        data/eml.gemspec
    CHANGED
    
    | 
         @@ -22,20 +22,20 @@ Gem::Specification.new do |spec| 
     | 
|
| 
       22 
22 
     | 
    
         
             
              end
         
     | 
| 
       23 
23 
     | 
    
         
             
              spec.require_paths = ["lib"]
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
       25 
     | 
    
         
            -
              spec.add_dependency "http", ">= 4.0.0", "<  
     | 
| 
      
 25 
     | 
    
         
            +
              spec.add_dependency "http", ">= 4.0.0", "< 6.0"
         
     | 
| 
       26 
26 
     | 
    
         
             
              spec.add_dependency "sorbet-runtime"
         
     | 
| 
       27 
27 
     | 
    
         | 
| 
       28 
28 
     | 
    
         
             
              spec.add_development_dependency "bundler", "~> 2.0"
         
     | 
| 
       29 
29 
     | 
    
         
             
              spec.add_development_dependency "dotenv"
         
     | 
| 
       30 
30 
     | 
    
         
             
              spec.add_development_dependency "faker"
         
     | 
| 
       31 
31 
     | 
    
         
             
              spec.add_development_dependency "pry-byebug"
         
     | 
| 
       32 
     | 
    
         
            -
              spec.add_development_dependency "rake" 
     | 
| 
      
 32 
     | 
    
         
            +
              spec.add_development_dependency "rake"
         
     | 
| 
       33 
33 
     | 
    
         
             
              spec.add_development_dependency "rspec", "~> 3.8"
         
     | 
| 
       34 
34 
     | 
    
         
             
              spec.add_development_dependency "rubocop", "~> 0.71"
         
     | 
| 
       35 
35 
     | 
    
         
             
              spec.add_development_dependency "rubocop-performance"
         
     | 
| 
       36 
36 
     | 
    
         
             
              spec.add_development_dependency "rubocop-rspec"
         
     | 
| 
       37 
37 
     | 
    
         
             
              spec.add_development_dependency "simplecov"
         
     | 
| 
       38 
     | 
    
         
            -
              spec.add_development_dependency "sorbet"
         
     | 
| 
      
 38 
     | 
    
         
            +
              spec.add_development_dependency "sorbet", ">= 0.4.5036", "< 1.0"
         
     | 
| 
       39 
39 
     | 
    
         
             
              spec.add_development_dependency "vcr"
         
     | 
| 
       40 
40 
     | 
    
         
             
              spec.add_development_dependency "webmock"
         
     | 
| 
       41 
41 
     | 
    
         
             
            end
         
     | 
    
        data/lib/eml/error/tns.rb
    CHANGED
    
    
    
        data/lib/eml/parameters.rb
    CHANGED
    
    | 
         @@ -61,9 +61,12 @@ module EML 
     | 
|
| 
       61 
61 
     | 
    
         
             
                sig { returns(T::Hash[Symbol, T.untyped]) }
         
     | 
| 
       62 
62 
     | 
    
         
             
                def to_h
         
     | 
| 
       63 
63 
     | 
    
         
             
                  instance_variables.each_with_object({}) do |variable_name, params|
         
     | 
| 
       64 
     | 
    
         
            -
                    key = variable_name.to_s[1..-1].to_sym
         
     | 
| 
      
 64 
     | 
    
         
            +
                    key = T.must(variable_name.to_s[1..-1]).to_sym
         
     | 
| 
       65 
65 
     | 
    
         
             
                    params[key] = instance_variable_get(variable_name)
         
     | 
| 
       66 
     | 
    
         
            -
             
     | 
| 
      
 66 
     | 
    
         
            +
             
     | 
| 
      
 67 
     | 
    
         
            +
                    if !params[key].nil? && params[key].respond_to?(:to_h)
         
     | 
| 
      
 68 
     | 
    
         
            +
                      params[key] = params[key].to_h
         
     | 
| 
      
 69 
     | 
    
         
            +
                    end
         
     | 
| 
       67 
70 
     | 
    
         
             
                  end
         
     | 
| 
       68 
71 
     | 
    
         
             
                end
         
     | 
| 
       69 
72 
     | 
    
         | 
| 
         @@ -98,7 +101,7 @@ module EML 
     | 
|
| 
       98 
101 
     | 
    
         | 
| 
       99 
102 
     | 
    
         
             
                private
         
     | 
| 
       100 
103 
     | 
    
         | 
| 
       101 
     | 
    
         
            -
                sig { params(array: T::Array[ 
     | 
| 
      
 104 
     | 
    
         
            +
                sig { params(array: T::Array[Symbol]).returns(String) }
         
     | 
| 
       102 
105 
     | 
    
         
             
                def array_as_string(array)
         
     | 
| 
       103 
106 
     | 
    
         
             
                  array.dup.tap { |vals| vals[-1] = "or #{vals.last}" }.join(", ")
         
     | 
| 
       104 
107 
     | 
    
         
             
                end
         
     | 
    
        data/lib/eml/payload.rb
    CHANGED
    
    | 
         @@ -62,7 +62,7 @@ module EML 
     | 
|
| 
       62 
62 
     | 
    
         
             
                sig { returns(T::Hash[Symbol, T.untyped]) }
         
     | 
| 
       63 
63 
     | 
    
         
             
                def to_h
         
     | 
| 
       64 
64 
     | 
    
         
             
                  instance_variables.each_with_object({}) do |variable_name, params|
         
     | 
| 
       65 
     | 
    
         
            -
                    key = variable_name.to_s[1..-1].to_sym
         
     | 
| 
      
 65 
     | 
    
         
            +
                    key = T.must(variable_name.to_s[1..-1]).to_sym
         
     | 
| 
       66 
66 
     | 
    
         
             
                    params[key] = instance_variable_get(variable_name)
         
     | 
| 
       67 
67 
     | 
    
         
             
                    params[key] = params[key].to_h if params[key].respond_to?(:to_h)
         
     | 
| 
       68 
68 
     | 
    
         
             
                  end
         
     | 
    
        data/lib/eml/response.rb
    CHANGED
    
    
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,6 +6,7 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Parameters
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Agreement
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Show < ::EML::UK::Parameters
         
     | 
| 
      
 9 
     | 
    
         
            +
                      sig { params(params: T::Hash[T.untyped, T.untyped]).void }
         
     | 
| 
       9 
10 
     | 
    
         
             
                      def initialize(params)
         
     | 
| 
       10 
11 
     | 
    
         
             
                        params[:client_language] ||= "en"
         
     | 
| 
       11 
12 
     | 
    
         
             
                        super
         
     | 
| 
         @@ -13,7 +14,7 @@ module EML 
     | 
|
| 
       13 
14 
     | 
    
         | 
| 
       14 
15 
     | 
    
         
             
                      private
         
     | 
| 
       15 
16 
     | 
    
         | 
| 
       16 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 17 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       17 
18 
     | 
    
         
             
                      attr_accessor :client_language
         
     | 
| 
       18 
19 
     | 
    
         
             
                    end
         
     | 
| 
       19 
20 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,10 +6,10 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Parameters
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Activation < ::EML::UK::Parameters
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_CONFIG = %i[program].freeze
         
     | 
| 
       10 
     | 
    
         
            -
                      OPTIONAL_CONFIG = %i[search_parameter].freeze
         
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[program].freeze, T::Array[Symbol])
         
     | 
| 
      
 10 
     | 
    
         
            +
                      OPTIONAL_CONFIG = T.let(%i[search_parameter].freeze, T::Array[Symbol])
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 12 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       13 
13 
     | 
    
         
             
                      attr_accessor :program
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
                      sig { params(search_parameter: String).returns(String) }
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,12 +6,12 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Parameters
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Lock < ::EML::UK::Parameters
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_CONFIG = %i[program].freeze
         
     | 
| 
       10 
     | 
    
         
            -
                      OPTIONAL_CONFIG = %i[search_parameter].freeze
         
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[program].freeze, T::Array[Symbol])
         
     | 
| 
      
 10 
     | 
    
         
            +
                      OPTIONAL_CONFIG = T.let(%i[search_parameter].freeze, T::Array[Symbol])
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
                      private
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
       14 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 14 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       15 
15 
     | 
    
         
             
                      attr_accessor :program
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
                      sig { params(search_parameter: String).returns(String) }
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,10 +6,10 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Parameters
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Register < ::EML::UK::Parameters
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_CONFIG = %i[program].freeze
         
     | 
| 
       10 
     | 
    
         
            -
                      OPTIONAL_CONFIG = %i[search_parameter].freeze
         
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[program].freeze, T::Array[Symbol])
         
     | 
| 
      
 10 
     | 
    
         
            +
                      OPTIONAL_CONFIG = T.let(%i[search_parameter].freeze, T::Array[Symbol])
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 12 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       13 
13 
     | 
    
         
             
                      attr_accessor :program
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
                      sig { params(search_parameter: String).returns(String) }
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,10 +6,10 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Parameters
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Reload < ::EML::UK::Parameters
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_CONFIG = %i[program].freeze
         
     | 
| 
       10 
     | 
    
         
            -
                      OPTIONAL_CONFIG = %i[search_parameter].freeze
         
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[program].freeze, T::Array[Symbol])
         
     | 
| 
      
 10 
     | 
    
         
            +
                      OPTIONAL_CONFIG = T.let(%i[search_parameter].freeze, T::Array[Symbol])
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 12 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       13 
13 
     | 
    
         
             
                      attr_accessor :program
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
                      sig { params(search_parameter: String).returns(String) }
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,10 +6,10 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Parameters
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Show < ::EML::UK::Parameters
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_CONFIG = %i[program].freeze
         
     | 
| 
       10 
     | 
    
         
            -
                      OPTIONAL_CONFIG = %i[search_parameter].freeze
         
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[program].freeze, T::Array[Symbol])
         
     | 
| 
      
 10 
     | 
    
         
            +
                      OPTIONAL_CONFIG = T.let(%i[search_parameter].freeze, T::Array[Symbol])
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
                      FIELDS_OPTIONS = %i[
         
     | 
| 
      
 12 
     | 
    
         
            +
                      FIELDS_OPTIONS = T.let(%i[
         
     | 
| 
       13 
13 
     | 
    
         
             
                        account_expiration_date
         
     | 
| 
       14 
14 
     | 
    
         
             
                        activating_merchant_group_name
         
     | 
| 
       15 
15 
     | 
    
         
             
                        activating_merchant_group_uniquetag
         
     | 
| 
         @@ -59,7 +59,16 @@ module EML 
     | 
|
| 
       59 
59 
     | 
    
         
             
                        status
         
     | 
| 
       60 
60 
     | 
    
         
             
                        uri
         
     | 
| 
       61 
61 
     | 
    
         
             
                        unload_to_ach_fee
         
     | 
| 
       62 
     | 
    
         
            -
                      ].freeze
         
     | 
| 
      
 62 
     | 
    
         
            +
                      ].freeze, T::Array[Symbol])
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
      
 64 
     | 
    
         
            +
                      sig { params(params: T::Hash[Symbol, T.untyped]).void }
         
     | 
| 
      
 65 
     | 
    
         
            +
                      def initialize(params)
         
     | 
| 
      
 66 
     | 
    
         
            +
                        super
         
     | 
| 
      
 67 
     | 
    
         
            +
             
     | 
| 
      
 68 
     | 
    
         
            +
                        @fields = T.let(nil, T.nilable(String))
         
     | 
| 
      
 69 
     | 
    
         
            +
                        @log_balance_inquiry = T.let(nil, T.nilable(String))
         
     | 
| 
      
 70 
     | 
    
         
            +
                        @only_valid_status = T.let(nil, T.nilable(String))
         
     | 
| 
      
 71 
     | 
    
         
            +
                      end
         
     | 
| 
       63 
72 
     | 
    
         | 
| 
       64 
73 
     | 
    
         
             
                      sig { params(fields: T::Array[Symbol]).returns(String) }
         
     | 
| 
       65 
74 
     | 
    
         
             
                      def fields=(fields)
         
     | 
| 
         @@ -82,7 +91,7 @@ module EML 
     | 
|
| 
       82 
91 
     | 
    
         
             
                        @only_valid_status = only_valid_status.inspect
         
     | 
| 
       83 
92 
     | 
    
         
             
                      end
         
     | 
| 
       84 
93 
     | 
    
         | 
| 
       85 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 94 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       86 
95 
     | 
    
         
             
                      attr_accessor :program
         
     | 
| 
       87 
96 
     | 
    
         | 
| 
       88 
97 
     | 
    
         
             
                      sig { params(search_parameter: String).returns(String) }
         
     | 
| 
         @@ -91,7 +100,7 @@ module EML 
     | 
|
| 
       91 
100 
     | 
    
         
             
                        @search_parameter = search_parameter
         
     | 
| 
       92 
101 
     | 
    
         
             
                      end
         
     | 
| 
       93 
102 
     | 
    
         | 
| 
       94 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 103 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       95 
104 
     | 
    
         
             
                      attr_accessor :security_code
         
     | 
| 
       96 
105 
     | 
    
         
             
                    end
         
     | 
| 
       97 
106 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,12 +6,12 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Parameters
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Transaction < ::EML::UK::Parameters
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_CONFIG = %i[program].freeze
         
     | 
| 
       10 
     | 
    
         
            -
                      OPTIONAL_CONFIG = %i[search_parameter].freeze
         
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[program].freeze, T::Array[Symbol])
         
     | 
| 
      
 10 
     | 
    
         
            +
                      OPTIONAL_CONFIG = T.let(%i[search_parameter].freeze, T::Array[Symbol])
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
                      private
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
       14 
     | 
    
         
            -
                      FIELDS_OPTIONS = %i[
         
     | 
| 
      
 14 
     | 
    
         
            +
                      FIELDS_OPTIONS = T.let(%i[
         
     | 
| 
       15 
15 
     | 
    
         
             
                        activity
         
     | 
| 
       16 
16 
     | 
    
         
             
                        amount
         
     | 
| 
       17 
17 
     | 
    
         
             
                        authorization_request_id
         
     | 
| 
         @@ -28,7 +28,14 @@ module EML 
     | 
|
| 
       28 
28 
     | 
    
         
             
                        system_transaction_id
         
     | 
| 
       29 
29 
     | 
    
         
             
                        timestamp
         
     | 
| 
       30 
30 
     | 
    
         
             
                        user
         
     | 
| 
       31 
     | 
    
         
            -
                      ].freeze
         
     | 
| 
      
 31 
     | 
    
         
            +
                      ].freeze, T::Array[Symbol])
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
                      sig { params(params: T::Hash[Symbol, T.untyped]).void }
         
     | 
| 
      
 34 
     | 
    
         
            +
                      def initialize(params)
         
     | 
| 
      
 35 
     | 
    
         
            +
                        super
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
                        @fields = T.let(nil, T.nilable(String))
         
     | 
| 
      
 38 
     | 
    
         
            +
                      end
         
     | 
| 
       32 
39 
     | 
    
         | 
| 
       33 
40 
     | 
    
         
             
                      sig { params(fields: T::Array[Symbol]).returns(String) }
         
     | 
| 
       34 
41 
     | 
    
         
             
                      def fields=(fields)
         
     | 
| 
         @@ -41,10 +48,10 @@ module EML 
     | 
|
| 
       41 
48 
     | 
    
         
             
                        @fields = fields.join(",")
         
     | 
| 
       42 
49 
     | 
    
         
             
                      end
         
     | 
| 
       43 
50 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 51 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       45 
52 
     | 
    
         
             
                      attr_accessor :filter
         
     | 
| 
       46 
53 
     | 
    
         | 
| 
       47 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 54 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       48 
55 
     | 
    
         
             
                      attr_accessor :program
         
     | 
| 
       49 
56 
     | 
    
         | 
| 
       50 
57 
     | 
    
         
             
                      sig { params(search_parameter: String).returns(String) }
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,12 +6,12 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Parameters
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Unload < ::EML::UK::Parameters
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_CONFIG = %i[program].freeze
         
     | 
| 
       10 
     | 
    
         
            -
                      OPTIONAL_CONFIG = %i[search_parameter].freeze
         
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[program].freeze, T::Array[Symbol])
         
     | 
| 
      
 10 
     | 
    
         
            +
                      OPTIONAL_CONFIG = T.let(%i[search_parameter].freeze, T::Array[Symbol])
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
                      private
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
       14 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 14 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       15 
15 
     | 
    
         
             
                      attr_accessor :program
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
                      sig { params(search_parameter: String).returns(String) }
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,12 +6,12 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Parameters
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Unlock < ::EML::UK::Parameters
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_CONFIG = %i[program].freeze
         
     | 
| 
       10 
     | 
    
         
            -
                      OPTIONAL_CONFIG = %i[search_parameter].freeze
         
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[program].freeze, T::Array[Symbol])
         
     | 
| 
      
 10 
     | 
    
         
            +
                      OPTIONAL_CONFIG = T.let(%i[search_parameter].freeze, T::Array[Symbol])
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
                      private
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
       14 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 14 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       15 
15 
     | 
    
         
             
                      attr_accessor :program
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
                      sig { params(search_parameter: String).returns(String) }
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,12 +6,12 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Parameters
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Unlock < ::EML::UK::Parameters
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_CONFIG = %i[program].freeze
         
     | 
| 
       10 
     | 
    
         
            -
                      OPTIONAL_CONFIG = %i[search_parameter].freeze
         
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[program].freeze, T::Array[Symbol])
         
     | 
| 
      
 10 
     | 
    
         
            +
                      OPTIONAL_CONFIG = T.let(%i[search_parameter].freeze, T::Array[Symbol])
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
                      private
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
       14 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 14 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       15 
15 
     | 
    
         
             
                      attr_accessor :program
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
                      sig { params(search_parameter: String).returns(String) }
         
     | 
    
        data/lib/eml/uk/parameters.rb
    CHANGED
    
    
| 
         @@ -1,25 +1,34 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
      
 4 
     | 
    
         
            +
            # rubocop:disable Naming/VariableName
         
     | 
| 
       4 
5 
     | 
    
         
             
            module EML
         
     | 
| 
       5 
6 
     | 
    
         
             
              module UK
         
     | 
| 
       6 
7 
     | 
    
         
             
                class Payload
         
     | 
| 
       7 
8 
     | 
    
         
             
                  module Agreement
         
     | 
| 
       8 
9 
     | 
    
         
             
                    class Show < ::EML::UK::Payload
         
     | 
| 
       9 
     | 
    
         
            -
                      OPTIONAL_DEFAULTS = 
     | 
| 
      
 10 
     | 
    
         
            +
                      OPTIONAL_DEFAULTS =
         
     | 
| 
      
 11 
     | 
    
         
            +
                        T.let(%i[merchant_group program].freeze, T::Array[Symbol])
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                      sig { params(payload: T::Hash[Symbol, T.untyped]).void }
         
     | 
| 
      
 14 
     | 
    
         
            +
                      def initialize(payload)
         
     | 
| 
      
 15 
     | 
    
         
            +
                        super
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
                        @Is_account_expiry = T.let(nil, T.nilable(String))
         
     | 
| 
      
 18 
     | 
    
         
            +
                        @Is_fee_free = T.let(nil, T.nilable(String))
         
     | 
| 
      
 19 
     | 
    
         
            +
                      end
         
     | 
| 
       10 
20 
     | 
    
         | 
| 
       11 
21 
     | 
    
         
             
                      private
         
     | 
| 
       12 
22 
     | 
    
         | 
| 
       13 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 23 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       14 
24 
     | 
    
         
             
                      attr_accessor :bin
         
     | 
| 
       15 
25 
     | 
    
         | 
| 
       16 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 26 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       17 
27 
     | 
    
         
             
                      attr_accessor :country
         
     | 
| 
       18 
28 
     | 
    
         | 
| 
       19 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 29 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       20 
30 
     | 
    
         
             
                      attr_accessor :developer
         
     | 
| 
       21 
31 
     | 
    
         | 
| 
       22 
     | 
    
         
            -
                      # rubocop:disable Naming/VariableName
         
     | 
| 
       23 
32 
     | 
    
         
             
                      sig { params(is_account_expiry: T::Boolean).returns(String) }
         
     | 
| 
       24 
33 
     | 
    
         
             
                      def is_account_expiry=(is_account_expiry)
         
     | 
| 
       25 
34 
     | 
    
         
             
                        @Is_account_expiry = is_account_expiry.inspect
         
     | 
| 
         @@ -29,18 +38,18 @@ module EML 
     | 
|
| 
       29 
38 
     | 
    
         
             
                      def is_fee_free=(is_fee_free)
         
     | 
| 
       30 
39 
     | 
    
         
             
                        @Is_fee_free = is_fee_free.inspect
         
     | 
| 
       31 
40 
     | 
    
         
             
                      end
         
     | 
| 
       32 
     | 
    
         
            -
                      # rubocop:enable Naming/VariableName
         
     | 
| 
       33 
41 
     | 
    
         | 
| 
       34 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 42 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       35 
43 
     | 
    
         
             
                      attr_accessor :merchant_group
         
     | 
| 
       36 
44 
     | 
    
         | 
| 
       37 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 45 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       38 
46 
     | 
    
         
             
                      attr_accessor :program
         
     | 
| 
       39 
47 
     | 
    
         | 
| 
       40 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 48 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       41 
49 
     | 
    
         
             
                      attr_accessor :region
         
     | 
| 
       42 
50 
     | 
    
         
             
                    end
         
     | 
| 
       43 
51 
     | 
    
         
             
                  end
         
     | 
| 
       44 
52 
     | 
    
         
             
                end
         
     | 
| 
       45 
53 
     | 
    
         
             
              end
         
     | 
| 
       46 
54 
     | 
    
         
             
            end
         
     | 
| 
      
 55 
     | 
    
         
            +
            # rubocop:enable Naming/VariableName
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,26 +6,37 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Payload
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Activation < ::EML::UK::Payload
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_VALUES =
         
     | 
| 
       10 
     | 
    
         
            -
                        %i[amount location.name location.country sales_channel].freeze
         
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_VALUES = T.let(
         
     | 
| 
      
 10 
     | 
    
         
            +
                        %i[amount location.name location.country sales_channel].freeze,
         
     | 
| 
      
 11 
     | 
    
         
            +
                        T::Array[Symbol]
         
     | 
| 
      
 12 
     | 
    
         
            +
                      )
         
     | 
| 
      
 13 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[merchant_group].freeze, T::Array[Symbol])
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
                      sig { params(payload: T::Hash[Symbol, T.untyped]).void }
         
     | 
| 
      
 16 
     | 
    
         
            +
                      def initialize(payload)
         
     | 
| 
      
 17 
     | 
    
         
            +
                        super
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
                        @client_reference_number = T.let(nil, T.nilable(String))
         
     | 
| 
      
 20 
     | 
    
         
            +
                        @client_tracking_id = T.let(nil, T.nilable(String))
         
     | 
| 
      
 21 
     | 
    
         
            +
                        @location = T.let(nil, T.nilable(EML::UK::Payload::Location))
         
     | 
| 
      
 22 
     | 
    
         
            +
                      end
         
     | 
| 
       12 
23 
     | 
    
         | 
| 
       13 
24 
     | 
    
         
             
                      private
         
     | 
| 
       14 
25 
     | 
    
         | 
| 
       15 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 26 
     | 
    
         
            +
                      sig { returns(T.nilable(Numeric)) }
         
     | 
| 
       16 
27 
     | 
    
         
             
                      attr_accessor :amount
         
     | 
| 
       17 
28 
     | 
    
         | 
| 
       18 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 29 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       19 
30 
     | 
    
         
             
                      attr_accessor :campaign
         
     | 
| 
       20 
31 
     | 
    
         | 
| 
       21 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 32 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       22 
33 
     | 
    
         
             
                      attr_accessor :cardholder_user_id
         
     | 
| 
       23 
34 
     | 
    
         | 
| 
       24 
35 
     | 
    
         
             
                      # While client_order_date is sent to EML as a JSON DateTime,
         
     | 
| 
       25 
36 
     | 
    
         
             
                      # there are many classes that could be used which causes a typing
         
     | 
| 
       26 
37 
     | 
    
         
             
                      # challenge. For example, if Rails is in use, we will probably receive
         
     | 
| 
       27 
38 
     | 
    
         
             
                      # a ActiveSupport::TimeWithZone
         
     | 
| 
       28 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 39 
     | 
    
         
            +
                      sig { returns(T.nilable(T.untyped)) }
         
     | 
| 
       29 
40 
     | 
    
         
             
                      attr_accessor :client_order_date
         
     | 
| 
       30 
41 
     | 
    
         | 
| 
       31 
42 
     | 
    
         
             
                      sig { params(client_reference_number: String).void }
         
     | 
| 
         @@ -40,7 +51,7 @@ module EML 
     | 
|
| 
       40 
51 
     | 
    
         
             
                      # there are many classes that could be used which causes a typing
         
     | 
| 
       41 
52 
     | 
    
         
             
                      # challenge. For example, if Rails is in use, we will probably receive
         
     | 
| 
       42 
53 
     | 
    
         
             
                      # a ActiveSupport::TimeWithZone
         
     | 
| 
       43 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 54 
     | 
    
         
            +
                      sig { returns(T.nilable(T.untyped)) }
         
     | 
| 
       44 
55 
     | 
    
         
             
                      attr_accessor :client_time
         
     | 
| 
       45 
56 
     | 
    
         | 
| 
       46 
57 
     | 
    
         
             
                      sig { params(client_tracking_id: String).void }
         
     | 
| 
         @@ -51,20 +62,20 @@ module EML 
     | 
|
| 
       51 
62 
     | 
    
         
             
                        @client_tracking_id = client_tracking_id
         
     | 
| 
       52 
63 
     | 
    
         
             
                      end
         
     | 
| 
       53 
64 
     | 
    
         | 
| 
       54 
     | 
    
         
            -
                      sig { params(location: Hash).void }
         
     | 
| 
      
 65 
     | 
    
         
            +
                      sig { params(location: T::Hash[T.untyped, T.untyped]).void }
         
     | 
| 
       55 
66 
     | 
    
         
             
                      def location=(location)
         
     | 
| 
       56 
67 
     | 
    
         
             
                        @location = EML::UK::Payload::Location.new(location)
         
     | 
| 
       57 
68 
     | 
    
         
             
                      end
         
     | 
| 
       58 
69 
     | 
    
         | 
| 
       59 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 70 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       60 
71 
     | 
    
         
             
                      attr_accessor :merchant_group
         
     | 
| 
       61 
72 
     | 
    
         | 
| 
       62 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 73 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       63 
74 
     | 
    
         
             
                      attr_accessor :note
         
     | 
| 
       64 
75 
     | 
    
         | 
| 
       65 
     | 
    
         
            -
                      SALES_CHANNELS = %w[Online InPerson].freeze
         
     | 
| 
      
 76 
     | 
    
         
            +
                      SALES_CHANNELS = T.let(%w[Online InPerson].freeze, T::Array[String])
         
     | 
| 
       66 
77 
     | 
    
         | 
| 
       67 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 78 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       68 
79 
     | 
    
         
             
                      attr_accessor :sales_channel
         
     | 
| 
       69 
80 
     | 
    
         
             
                    end
         
     | 
| 
       70 
81 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -6,21 +6,28 @@ module EML 
     | 
|
| 
       6 
6 
     | 
    
         
             
                class Payload
         
     | 
| 
       7 
7 
     | 
    
         
             
                  module Card
         
     | 
| 
       8 
8 
     | 
    
         
             
                    class Lock < ::EML::UK::Payload
         
     | 
| 
       9 
     | 
    
         
            -
                      REQUIRED_CONFIG = %i[merchant_group].freeze
         
     | 
| 
       10 
     | 
    
         
            -
                      REQUIRED_VALUES = %i[note reason].freeze
         
     | 
| 
      
 9 
     | 
    
         
            +
                      REQUIRED_CONFIG = T.let(%i[merchant_group].freeze, T::Array[Symbol])
         
     | 
| 
      
 10 
     | 
    
         
            +
                      REQUIRED_VALUES = T.let(%i[note reason].freeze, T::Array[Symbol])
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
                      sig { params(payload: T::Hash[Symbol, T.untyped]).void }
         
     | 
| 
      
 13 
     | 
    
         
            +
                      def initialize(payload)
         
     | 
| 
      
 14 
     | 
    
         
            +
                        super
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
                        @reason = T.let(nil, T.nilable(Symbol))
         
     | 
| 
      
 17 
     | 
    
         
            +
                      end
         
     | 
| 
       11 
18 
     | 
    
         | 
| 
       12 
19 
     | 
    
         
             
                      private
         
     | 
| 
       13 
20 
     | 
    
         | 
| 
       14 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 21 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       15 
22 
     | 
    
         
             
                      attr_accessor :merchant_group
         
     | 
| 
       16 
23 
     | 
    
         | 
| 
       17 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 24 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       18 
25 
     | 
    
         
             
                      attr_accessor :note
         
     | 
| 
       19 
26 
     | 
    
         | 
| 
       20 
     | 
    
         
            -
                      REASONS = %i[
         
     | 
| 
      
 27 
     | 
    
         
            +
                      REASONS = T.let(%i[
         
     | 
| 
       21 
28 
     | 
    
         
             
                        Damaged DataBreach Lost Miscellaneous OfficeError
         
     | 
| 
       22 
29 
     | 
    
         
             
                        PastAccountExpirationDate Stolen UnclaimedProperty
         
     | 
| 
       23 
     | 
    
         
            -
                      ].freeze
         
     | 
| 
      
 30 
     | 
    
         
            +
                      ].freeze, T::Array[Symbol])
         
     | 
| 
       24 
31 
     | 
    
         | 
| 
       25 
32 
     | 
    
         
             
                      sig { params(reason: Symbol).void }
         
     | 
| 
       26 
33 
     | 
    
         
             
                      def reason=(reason)
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # typed:  
     | 
| 
      
 1 
     | 
    
         
            +
            # typed: strict
         
     | 
| 
       2 
2 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            module EML
         
     | 
| 
         @@ -8,8 +8,26 @@ module EML 
     | 
|
| 
       8 
8 
     | 
    
         
             
                    class Register < ::EML::UK::Payload
         
     | 
| 
       9 
9 
     | 
    
         
             
                      include ISO
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
       11 
     | 
    
         
            -
                      REQUIRED_VALUES =
         
     | 
| 
       12 
     | 
    
         
            -
                        %i[first_name last_name address1 city country email].freeze
         
     | 
| 
      
 11 
     | 
    
         
            +
                      REQUIRED_VALUES = T.let(
         
     | 
| 
      
 12 
     | 
    
         
            +
                        %i[first_name last_name address1 city country email].freeze,
         
     | 
| 
      
 13 
     | 
    
         
            +
                        T::Array[Symbol]
         
     | 
| 
      
 14 
     | 
    
         
            +
                      )
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
                      # rubocop:disable Metrics/AbcSize
         
     | 
| 
      
 17 
     | 
    
         
            +
                      sig { params(payload: T::Hash[Symbol, T.untyped]).void }
         
     | 
| 
      
 18 
     | 
    
         
            +
                      def initialize(payload)
         
     | 
| 
      
 19 
     | 
    
         
            +
                        super
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
                        @first_name = T.let(nil, T.nilable(String))
         
     | 
| 
      
 22 
     | 
    
         
            +
                        @last_name = T.let(nil, T.nilable(String))
         
     | 
| 
      
 23 
     | 
    
         
            +
                        @address1 = T.let(nil, T.nilable(String))
         
     | 
| 
      
 24 
     | 
    
         
            +
                        @address2 = T.let(nil, T.nilable(String))
         
     | 
| 
      
 25 
     | 
    
         
            +
                        @city = T.let(nil, T.nilable(String))
         
     | 
| 
      
 26 
     | 
    
         
            +
                        @dob = T.let(nil, T.nilable(T.any(Date, String, Time)))
         
     | 
| 
      
 27 
     | 
    
         
            +
                        @email = T.let(nil, T.nilable(String))
         
     | 
| 
      
 28 
     | 
    
         
            +
                        @phone = T.let(nil, T.nilable(String))
         
     | 
| 
      
 29 
     | 
    
         
            +
                      end
         
     | 
| 
      
 30 
     | 
    
         
            +
                      # rubocop:enable Metrics/AbcSize
         
     | 
| 
       13 
31 
     | 
    
         | 
| 
       14 
32 
     | 
    
         
             
                      private
         
     | 
| 
       15 
33 
     | 
    
         | 
| 
         @@ -62,7 +80,7 @@ module EML 
     | 
|
| 
       62 
80 
     | 
    
         
             
                        @phone = phone
         
     | 
| 
       63 
81 
     | 
    
         
             
                      end
         
     | 
| 
       64 
82 
     | 
    
         | 
| 
       65 
     | 
    
         
            -
                      sig {  
     | 
| 
      
 83 
     | 
    
         
            +
                      sig { returns(T.nilable(String)) }
         
     | 
| 
       66 
84 
     | 
    
         
             
                      attr_accessor :postal_code
         
     | 
| 
       67 
85 
     | 
    
         
             
                    end
         
     | 
| 
       68 
86 
     | 
    
         
             
                  end
         
     |