usps-imis-api 0.11.8 → 0.11.9
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/lib/usps/imis/command_line/interface.rb +2 -1
- data/lib/usps/imis/mapper.rb +25 -2
- data/lib/usps/imis/version.rb +1 -1
- data/lib/usps/imis.rb +2 -0
- metadata +15 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 626c55f443b00f5c4bcf5fe4e266041157fc0bf961825f42a551e6473f8decc0
|
|
4
|
+
data.tar.gz: b7e430d604ff0f1ae3db77e8cad1a2cb41851fe0ed3e0d8c90c19782b0e5708d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e8c1ec5ef4528680e87878225df3abda47e9892913d250eba1a8495ccde36a9801a78170a3bc211fad0714ac61d6696ba8d4cbe025888fa3a25a307d45a6e595
|
|
7
|
+
data.tar.gz: 98a8d1c2d38de72f9604b28070ca65144979d271ddacd077a2ce548ca7d8eef0a4fb15ad9d81acde7a63a0e1918ce7f8c354f4dbc6bb83d078a01a290aef9f48
|
|
@@ -66,7 +66,8 @@ module Usps
|
|
|
66
66
|
def perform!
|
|
67
67
|
case convert(options)
|
|
68
68
|
in mapper:, field:, data: then mapper.put_field(field.to_sym, data)
|
|
69
|
-
in mapper:,
|
|
69
|
+
in mapper:, fields: then mapper.get_fields(*fields)
|
|
70
|
+
in mapper:, field: then mapper.get_field(field.to_sym)
|
|
70
71
|
in mapper:, data: then mapper.update(data)
|
|
71
72
|
|
|
72
73
|
in on:, delete: true then on.delete
|
data/lib/usps/imis/mapper.rb
CHANGED
|
@@ -38,13 +38,36 @@ module Usps
|
|
|
38
38
|
#
|
|
39
39
|
# @return Value of the field
|
|
40
40
|
#
|
|
41
|
-
def
|
|
41
|
+
def get_field(field_key)
|
|
42
42
|
missing_mapping!(field_key) unless FIELD_MAPPING.key?(field_key.to_sym)
|
|
43
43
|
|
|
44
44
|
business_object_name, field = FIELD_MAPPING[field_key]
|
|
45
45
|
api.on(business_object_name)[field]
|
|
46
46
|
end
|
|
47
|
-
alias
|
|
47
|
+
alias fetch get_field
|
|
48
|
+
alias [] get_field
|
|
49
|
+
|
|
50
|
+
# Get specific fields by arbitrary field names
|
|
51
|
+
#
|
|
52
|
+
# @param names [Array<String>] Internal name of the fields
|
|
53
|
+
#
|
|
54
|
+
# @return [Array] Values of the field
|
|
55
|
+
#
|
|
56
|
+
def get_fields(*fields)
|
|
57
|
+
business_objects = {}
|
|
58
|
+
|
|
59
|
+
fields.map do |field_key|
|
|
60
|
+
business_object_name, field = FIELD_MAPPING[field_key.to_sym]
|
|
61
|
+
|
|
62
|
+
business_objects[business_object_name] ||= []
|
|
63
|
+
business_objects[business_object_name] << field
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
business_objects.flat_map do |business_object_name, fields|
|
|
67
|
+
api.on(business_object_name).get_fields(*fields)
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
alias fetch_all get_fields
|
|
48
71
|
|
|
49
72
|
# Update a member's data for a specific field by arbitrary field name
|
|
50
73
|
#
|
data/lib/usps/imis/version.rb
CHANGED
data/lib/usps/imis.rb
CHANGED
|
@@ -16,6 +16,8 @@ require 'logger'
|
|
|
16
16
|
require 'active_support/isolated_execution_state' # Fix costant loading issue with TaggedLogging
|
|
17
17
|
require 'active_support/tagged_logging'
|
|
18
18
|
|
|
19
|
+
require 'dotenv/load'
|
|
20
|
+
|
|
19
21
|
# Internal requires
|
|
20
22
|
require_relative 'imis/config'
|
|
21
23
|
require_relative 'imis/error'
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: usps-imis-api
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.11.
|
|
4
|
+
version: 0.11.9
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Julian Fiander
|
|
@@ -23,6 +23,20 @@ dependencies:
|
|
|
23
23
|
- - "~>"
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
25
|
version: '8.0'
|
|
26
|
+
- !ruby/object:Gem::Dependency
|
|
27
|
+
name: dotenv
|
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
|
29
|
+
requirements:
|
|
30
|
+
- - "~>"
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: 3.1.4
|
|
33
|
+
type: :runtime
|
|
34
|
+
prerelease: false
|
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
36
|
+
requirements:
|
|
37
|
+
- - "~>"
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
version: 3.1.4
|
|
26
40
|
- !ruby/object:Gem::Dependency
|
|
27
41
|
name: colorize
|
|
28
42
|
requirement: !ruby/object:Gem::Requirement
|