gobl 0.1.3 → 0.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/lib/ext/hashme.rb +28 -0
- data/lib/gobl/bill/advances.rb +1 -77
- data/lib/gobl/bill/charge.rb +11 -65
- data/lib/gobl/bill/delivery.rb +5 -47
- data/lib/gobl/bill/discount.rb +11 -65
- data/lib/gobl/bill/exchange_rates.rb +1 -77
- data/lib/gobl/bill/invoice.rb +28 -104
- data/lib/gobl/bill/invoice_type.rb +3 -134
- data/lib/gobl/bill/line.rb +13 -65
- data/lib/gobl/bill/line_charge.rb +5 -47
- data/lib/gobl/bill/line_discount.rb +5 -47
- data/lib/gobl/bill/ordering.rb +2 -38
- data/lib/gobl/bill/outlay.rb +11 -59
- data/lib/gobl/bill/payment.rb +5 -47
- data/lib/gobl/bill/preceding.rb +12 -62
- data/lib/gobl/bill/scheme_keys.rb +1 -77
- data/lib/gobl/bill/tax.rb +4 -44
- data/lib/gobl/bill/totals.rb +17 -71
- data/lib/gobl/cal/date.rb +1 -90
- data/lib/gobl/cal/period.rb +5 -41
- data/lib/gobl/currency/code.rb +3 -134
- data/lib/gobl/currency/exchange_rate.rb +5 -41
- data/lib/gobl/document.rb +1 -58
- data/lib/gobl/dsig/digest.rb +5 -41
- data/lib/gobl/dsig/signature.rb +1 -90
- data/lib/gobl/enum.rb +81 -0
- data/lib/gobl/envelope.rb +9 -48
- data/lib/gobl/header.rb +10 -56
- data/lib/gobl/i18n/string.rb +1 -58
- data/lib/gobl/l10n/code.rb +1 -90
- data/lib/gobl/l10n/country_code.rb +3 -134
- data/lib/gobl/map.rb +62 -0
- data/lib/gobl/note/message.rb +5 -44
- data/lib/gobl/num/amount.rb +6 -35
- data/lib/gobl/object.rb +21 -0
- data/lib/gobl/operations.rb +3 -3
- data/lib/gobl/org/address.rb +18 -80
- data/lib/gobl/org/code.rb +1 -90
- data/lib/gobl/org/coordinates.rb +5 -47
- data/lib/gobl/org/email.rb +6 -47
- data/lib/gobl/org/inbox.rb +8 -50
- data/lib/gobl/org/item.rb +13 -65
- data/lib/gobl/org/item_code.rb +4 -41
- data/lib/gobl/org/key.rb +1 -90
- data/lib/gobl/org/meta.rb +1 -58
- data/lib/gobl/org/name.rb +12 -62
- data/lib/gobl/org/note.rb +6 -47
- data/lib/gobl/org/note_key.rb +3 -134
- data/lib/gobl/org/party.rb +14 -71
- data/lib/gobl/org/person.rb +9 -56
- data/lib/gobl/org/registration.rb +9 -59
- data/lib/gobl/org/source_key.rb +3 -134
- data/lib/gobl/org/tax_identity.rb +8 -53
- data/lib/gobl/org/telephone.rb +5 -44
- data/lib/gobl/org/unit.rb +1 -136
- data/lib/gobl/pay/advance.rb +11 -59
- data/lib/gobl/pay/card.rb +5 -41
- data/lib/gobl/pay/credit_transfer.rb +6 -50
- data/lib/gobl/pay/direct_debit.rb +4 -44
- data/lib/gobl/pay/due_date.rb +8 -50
- data/lib/gobl/pay/instructions.rb +11 -62
- data/lib/gobl/pay/method_key.rb +3 -134
- data/lib/gobl/pay/online.rb +4 -41
- data/lib/gobl/pay/term_key.rb +3 -134
- data/lib/gobl/pay/terms.rb +6 -47
- data/lib/gobl/stamp.rb +5 -41
- data/lib/gobl/struct.rb +15 -15
- data/lib/gobl/tax/category.rb +9 -50
- data/lib/gobl/tax/category_total.rb +11 -53
- data/lib/gobl/tax/combo.rb +6 -47
- data/lib/gobl/tax/localities.rb +1 -77
- data/lib/gobl/tax/locality.rb +6 -44
- data/lib/gobl/tax/rate.rb +8 -47
- data/lib/gobl/tax/rate_total.rb +9 -50
- data/lib/gobl/tax/rate_total_surcharge.rb +5 -41
- data/lib/gobl/tax/rate_value.rb +6 -47
- data/lib/gobl/tax/region.rb +12 -56
- data/lib/gobl/tax/scheme.rb +8 -50
- data/lib/gobl/tax/schemes.rb +1 -77
- data/lib/gobl/tax/set.rb +1 -77
- data/lib/gobl/tax/total.rb +4 -41
- data/lib/gobl/uuid/uuid.rb +1 -90
- data/lib/gobl/value.rb +58 -0
- data/lib/gobl/version.rb +1 -1
- data/lib/gobl.rb +3 -1
- data/lib/gobl_extensions/document_helper.rb +3 -3
- data/lib/gobl_extensions/envelope_helper.rb +5 -0
- data/lib/gobl_extensions/i18n/value_keys_helper.rb +3 -3
- data/lib/gobl_extensions/tax/region_helper.rb +3 -9
- metadata +11 -35
- data/lib/gobl/types.rb +0 -17
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require 'dry/files'
|
|
4
|
-
|
|
5
3
|
module GOBLExtensions
|
|
6
4
|
module Tax
|
|
7
5
|
# Additional methods for the generated {GOBL::Tax::Region} class
|
|
@@ -18,21 +16,17 @@ module GOBLExtensions
|
|
|
18
16
|
|
|
19
17
|
protected
|
|
20
18
|
|
|
21
|
-
def files
|
|
22
|
-
@files ||= Dry::Files.new
|
|
23
|
-
end
|
|
24
|
-
|
|
25
19
|
# map of region ID to region instance
|
|
26
20
|
def regions
|
|
27
21
|
@regions ||= {}
|
|
28
22
|
end
|
|
29
23
|
|
|
30
24
|
def load_region(code)
|
|
31
|
-
path =
|
|
25
|
+
path = File.join("#{__dir__}/../../../data/tax", "#{code}.json")
|
|
32
26
|
msg = "region definition for #{code} does not exist at #{path}"
|
|
33
|
-
raise StandardError, msg unless
|
|
27
|
+
raise StandardError, msg unless File.exist?(path)
|
|
34
28
|
|
|
35
|
-
data =
|
|
29
|
+
data = File.read(path)
|
|
36
30
|
from_json!(data)
|
|
37
31
|
end
|
|
38
32
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: gobl
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- David Lilue
|
|
@@ -10,7 +10,7 @@ authors:
|
|
|
10
10
|
autorequire:
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date: 2022-10-
|
|
13
|
+
date: 2022-10-07 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: activesupport
|
|
@@ -27,47 +27,19 @@ dependencies:
|
|
|
27
27
|
- !ruby/object:Gem::Version
|
|
28
28
|
version: '6.1'
|
|
29
29
|
- !ruby/object:Gem::Dependency
|
|
30
|
-
name:
|
|
30
|
+
name: hashme
|
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
|
32
32
|
requirements:
|
|
33
33
|
- - "~>"
|
|
34
34
|
- !ruby/object:Gem::Version
|
|
35
|
-
version: 0.
|
|
35
|
+
version: 0.2.6
|
|
36
36
|
type: :runtime
|
|
37
37
|
prerelease: false
|
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
|
39
39
|
requirements:
|
|
40
40
|
- - "~>"
|
|
41
41
|
- !ruby/object:Gem::Version
|
|
42
|
-
version: 0.
|
|
43
|
-
- !ruby/object:Gem::Dependency
|
|
44
|
-
name: dry-struct
|
|
45
|
-
requirement: !ruby/object:Gem::Requirement
|
|
46
|
-
requirements:
|
|
47
|
-
- - "~>"
|
|
48
|
-
- !ruby/object:Gem::Version
|
|
49
|
-
version: 1.4.0
|
|
50
|
-
type: :runtime
|
|
51
|
-
prerelease: false
|
|
52
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
53
|
-
requirements:
|
|
54
|
-
- - "~>"
|
|
55
|
-
- !ruby/object:Gem::Version
|
|
56
|
-
version: 1.4.0
|
|
57
|
-
- !ruby/object:Gem::Dependency
|
|
58
|
-
name: dry-types
|
|
59
|
-
requirement: !ruby/object:Gem::Requirement
|
|
60
|
-
requirements:
|
|
61
|
-
- - "~>"
|
|
62
|
-
- !ruby/object:Gem::Version
|
|
63
|
-
version: 1.5.1
|
|
64
|
-
type: :runtime
|
|
65
|
-
prerelease: false
|
|
66
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
67
|
-
requirements:
|
|
68
|
-
- - "~>"
|
|
69
|
-
- !ruby/object:Gem::Version
|
|
70
|
-
version: 1.5.1
|
|
42
|
+
version: 0.2.6
|
|
71
43
|
- !ruby/object:Gem::Dependency
|
|
72
44
|
name: json
|
|
73
45
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -106,6 +78,7 @@ files:
|
|
|
106
78
|
- data/tax/FR.json
|
|
107
79
|
- data/tax/GB.json
|
|
108
80
|
- data/tax/NL.json
|
|
81
|
+
- lib/ext/hashme.rb
|
|
109
82
|
- lib/extensions.rb
|
|
110
83
|
- lib/gobl.rb
|
|
111
84
|
- lib/gobl/bill/advances.rb
|
|
@@ -133,15 +106,18 @@ files:
|
|
|
133
106
|
- lib/gobl/document.rb
|
|
134
107
|
- lib/gobl/dsig/digest.rb
|
|
135
108
|
- lib/gobl/dsig/signature.rb
|
|
109
|
+
- lib/gobl/enum.rb
|
|
136
110
|
- lib/gobl/envelope.rb
|
|
137
111
|
- lib/gobl/header.rb
|
|
138
112
|
- lib/gobl/i18n/string.rb
|
|
139
113
|
- lib/gobl/id.rb
|
|
140
114
|
- lib/gobl/l10n/code.rb
|
|
141
115
|
- lib/gobl/l10n/country_code.rb
|
|
116
|
+
- lib/gobl/map.rb
|
|
142
117
|
- lib/gobl/note/message.rb
|
|
143
118
|
- lib/gobl/num/amount.rb
|
|
144
119
|
- lib/gobl/num/percentage.rb
|
|
120
|
+
- lib/gobl/object.rb
|
|
145
121
|
- lib/gobl/operations.rb
|
|
146
122
|
- lib/gobl/operations/service_error.rb
|
|
147
123
|
- lib/gobl/operations/validation_result.rb
|
|
@@ -190,8 +166,8 @@ files:
|
|
|
190
166
|
- lib/gobl/tax/schemes.rb
|
|
191
167
|
- lib/gobl/tax/set.rb
|
|
192
168
|
- lib/gobl/tax/total.rb
|
|
193
|
-
- lib/gobl/types.rb
|
|
194
169
|
- lib/gobl/uuid/uuid.rb
|
|
170
|
+
- lib/gobl/value.rb
|
|
195
171
|
- lib/gobl/version.rb
|
|
196
172
|
- lib/gobl_extensions/document_helper.rb
|
|
197
173
|
- lib/gobl_extensions/envelope_helper.rb
|
|
@@ -217,7 +193,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
217
193
|
- !ruby/object:Gem::Version
|
|
218
194
|
version: 3.1.4
|
|
219
195
|
requirements: []
|
|
220
|
-
rubygems_version: 3.
|
|
196
|
+
rubygems_version: 3.1.4
|
|
221
197
|
signing_key:
|
|
222
198
|
specification_version: 4
|
|
223
199
|
summary: Minimalist ruby version of the GOBL library
|
data/lib/gobl/types.rb
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
module GOBL
|
|
4
|
-
# Types used by the generated GOBL code.
|
|
5
|
-
# @api private
|
|
6
|
-
module Types
|
|
7
|
-
include Dry.Types()
|
|
8
|
-
|
|
9
|
-
Nil = Strict::Nil
|
|
10
|
-
Int = Strict::Integer # deprecated, use Integer
|
|
11
|
-
Integer = Strict::Integer
|
|
12
|
-
Bool = Strict::Bool
|
|
13
|
-
Hash = Strict::Hash
|
|
14
|
-
String = Strict::String
|
|
15
|
-
Double = Strict::Float | Strict::Integer
|
|
16
|
-
end
|
|
17
|
-
end
|