gobl 0.21.0 → 0.22.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/data/regimes/at.json +55 -50
- data/data/regimes/be.json +55 -50
- data/data/regimes/ca.json +1 -1
- data/data/regimes/ch.json +55 -50
- data/data/regimes/co.json +113 -61
- data/data/regimes/de.json +61 -47
- data/data/regimes/el.json +204 -0
- data/data/regimes/es.json +66 -548
- data/data/regimes/fr.json +55 -50
- data/data/regimes/gb.json +59 -50
- data/data/regimes/it.json +60 -1311
- data/data/regimes/mx.json +38 -639
- data/data/regimes/nl.json +55 -50
- data/data/regimes/pl.json +103 -100
- data/data/regimes/pt.json +17 -349
- data/data/regimes/us.json +55 -50
- data/lib/generated/gobl/bill/correction_options.rb +2 -2
- data/lib/generated/gobl/bill/invoice.rb +49 -9
- data/lib/generated/gobl/bill/ordering.rb +34 -34
- data/lib/generated/gobl/bill/tax.rb +0 -5
- data/lib/generated/gobl/cbc/key_definition.rb +4 -9
- data/lib/generated/gobl/cbc/value_definition.rb +37 -0
- data/lib/generated/gobl/head/header.rb +5 -5
- data/lib/generated/gobl/head/link.rb +43 -0
- data/lib/generated/gobl/l10n/{country_code.rb → iso_country_code.rb} +3 -3
- data/lib/generated/gobl/l10n/tax_country_code.rb +277 -0
- data/lib/generated/gobl/org/address.rb +2 -3
- data/lib/generated/gobl/org/document_ref.rb +87 -0
- data/lib/generated/gobl/org/identity.rb +5 -0
- data/lib/generated/gobl/org/item.rb +2 -2
- data/lib/generated/gobl/org/name.rb +0 -2
- data/lib/generated/gobl/org/party.rb +5 -6
- data/lib/generated/gobl/org/person.rb +5 -0
- data/lib/generated/gobl/org/registration.rb +4 -0
- data/lib/generated/gobl/pay/advance.rb +5 -0
- data/lib/generated/gobl/pay/instructions.rb +5 -0
- data/lib/generated/gobl/tax/addon_def.rb +61 -0
- data/lib/generated/gobl/tax/{category.rb → category_def.rb} +11 -11
- data/lib/generated/gobl/tax/combo.rb +5 -0
- data/lib/generated/gobl/tax/correction_definition.rb +1 -1
- data/lib/generated/gobl/tax/correction_set.rb +13 -0
- data/lib/generated/gobl/tax/identity.rb +3 -3
- data/lib/generated/gobl/tax/{rate.rb → rate_def.rb} +11 -16
- data/lib/generated/gobl/tax/rate_total.rb +5 -0
- data/lib/generated/gobl/tax/{rate_value.rb → rate_value_def.rb} +4 -4
- data/lib/generated/gobl/tax/{regime.rb → regime_def.rb} +23 -13
- data/lib/generated/gobl/tax/scenario.rb +20 -10
- data/lib/generated/gobl/tax/scenario_set.rb +1 -1
- data/lib/generated/gobl/tax/source.rb +1 -1
- data/lib/generated/gobl/tax/tag_set.rb +28 -0
- data/lib/gobl/extensions/bill/invoice_helper.rb +6 -36
- data/lib/gobl/extensions/envelope_helper.rb +4 -0
- data/lib/gobl/version.rb +1 -1
- data/lib/gobl.rb +3 -2
- metadata +15 -11
- data/lib/generated/gobl/bill/document_reference.rb +0 -36
- data/lib/generated/gobl/bill/preceding.rb +0 -78
- data/lib/generated/gobl/cbc/code_definition.rb +0 -37
- data/lib/gobl/extensions/bill/scenario_summary.rb +0 -25
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.22.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luismi Cavalle
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2024-
|
14
|
+
date: 2024-09-26 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: activesupport
|
@@ -68,6 +68,7 @@ files:
|
|
68
68
|
- data/regimes/ch.json
|
69
69
|
- data/regimes/co.json
|
70
70
|
- data/regimes/de.json
|
71
|
+
- data/regimes/el.json
|
71
72
|
- data/regimes/es.json
|
72
73
|
- data/regimes/fr.json
|
73
74
|
- data/regimes/gb.json
|
@@ -82,7 +83,6 @@ files:
|
|
82
83
|
- lib/generated/gobl/bill/correction_options.rb
|
83
84
|
- lib/generated/gobl/bill/delivery.rb
|
84
85
|
- lib/generated/gobl/bill/discount.rb
|
85
|
-
- lib/generated/gobl/bill/document_reference.rb
|
86
86
|
- lib/generated/gobl/bill/invoice.rb
|
87
87
|
- lib/generated/gobl/bill/line.rb
|
88
88
|
- lib/generated/gobl/bill/line_charge.rb
|
@@ -90,19 +90,18 @@ files:
|
|
90
90
|
- lib/generated/gobl/bill/ordering.rb
|
91
91
|
- lib/generated/gobl/bill/outlay.rb
|
92
92
|
- lib/generated/gobl/bill/payment.rb
|
93
|
-
- lib/generated/gobl/bill/preceding.rb
|
94
93
|
- lib/generated/gobl/bill/tax.rb
|
95
94
|
- lib/generated/gobl/bill/totals.rb
|
96
95
|
- lib/generated/gobl/cal/date.rb
|
97
96
|
- lib/generated/gobl/cal/date_time.rb
|
98
97
|
- lib/generated/gobl/cal/period.rb
|
99
98
|
- lib/generated/gobl/cbc/code.rb
|
100
|
-
- lib/generated/gobl/cbc/code_definition.rb
|
101
99
|
- lib/generated/gobl/cbc/code_map.rb
|
102
100
|
- lib/generated/gobl/cbc/key.rb
|
103
101
|
- lib/generated/gobl/cbc/key_definition.rb
|
104
102
|
- lib/generated/gobl/cbc/meta.rb
|
105
103
|
- lib/generated/gobl/cbc/note.rb
|
104
|
+
- lib/generated/gobl/cbc/value_definition.rb
|
106
105
|
- lib/generated/gobl/currency/amount.rb
|
107
106
|
- lib/generated/gobl/currency/code.rb
|
108
107
|
- lib/generated/gobl/currency/exchange_rate.rb
|
@@ -110,13 +109,16 @@ files:
|
|
110
109
|
- lib/generated/gobl/dsig/signature.rb
|
111
110
|
- lib/generated/gobl/envelope.rb
|
112
111
|
- lib/generated/gobl/head/header.rb
|
112
|
+
- lib/generated/gobl/head/link.rb
|
113
113
|
- lib/generated/gobl/head/stamp.rb
|
114
114
|
- lib/generated/gobl/i18n/string.rb
|
115
115
|
- lib/generated/gobl/l10n/code.rb
|
116
|
-
- lib/generated/gobl/l10n/
|
116
|
+
- lib/generated/gobl/l10n/iso_country_code.rb
|
117
|
+
- lib/generated/gobl/l10n/tax_country_code.rb
|
117
118
|
- lib/generated/gobl/note/message.rb
|
118
119
|
- lib/generated/gobl/org/address.rb
|
119
120
|
- lib/generated/gobl/org/coordinates.rb
|
121
|
+
- lib/generated/gobl/org/document_ref.rb
|
120
122
|
- lib/generated/gobl/org/email.rb
|
121
123
|
- lib/generated/gobl/org/identity.rb
|
122
124
|
- lib/generated/gobl/org/image.rb
|
@@ -145,27 +147,29 @@ files:
|
|
145
147
|
- lib/generated/gobl/regimes/mx/fuel_account_line.rb
|
146
148
|
- lib/generated/gobl/regimes/mx/fuel_account_tax.rb
|
147
149
|
- lib/generated/gobl/schema/object.rb
|
148
|
-
- lib/generated/gobl/tax/
|
150
|
+
- lib/generated/gobl/tax/addon_def.rb
|
151
|
+
- lib/generated/gobl/tax/category_def.rb
|
149
152
|
- lib/generated/gobl/tax/category_total.rb
|
150
153
|
- lib/generated/gobl/tax/combo.rb
|
151
154
|
- lib/generated/gobl/tax/correction_definition.rb
|
155
|
+
- lib/generated/gobl/tax/correction_set.rb
|
152
156
|
- lib/generated/gobl/tax/extensions.rb
|
153
157
|
- lib/generated/gobl/tax/identity.rb
|
154
|
-
- lib/generated/gobl/tax/
|
158
|
+
- lib/generated/gobl/tax/rate_def.rb
|
155
159
|
- lib/generated/gobl/tax/rate_total.rb
|
156
160
|
- lib/generated/gobl/tax/rate_total_surcharge.rb
|
157
|
-
- lib/generated/gobl/tax/
|
158
|
-
- lib/generated/gobl/tax/
|
161
|
+
- lib/generated/gobl/tax/rate_value_def.rb
|
162
|
+
- lib/generated/gobl/tax/regime_def.rb
|
159
163
|
- lib/generated/gobl/tax/scenario.rb
|
160
164
|
- lib/generated/gobl/tax/scenario_set.rb
|
161
165
|
- lib/generated/gobl/tax/set.rb
|
162
166
|
- lib/generated/gobl/tax/source.rb
|
167
|
+
- lib/generated/gobl/tax/tag_set.rb
|
163
168
|
- lib/generated/gobl/tax/total.rb
|
164
169
|
- lib/gobl.rb
|
165
170
|
- lib/gobl/config.rb
|
166
171
|
- lib/gobl/enum.rb
|
167
172
|
- lib/gobl/extensions/bill/invoice_helper.rb
|
168
|
-
- lib/gobl/extensions/bill/scenario_summary.rb
|
169
173
|
- lib/gobl/extensions/envelope_helper.rb
|
170
174
|
- lib/gobl/extensions/i18n/value_keys_helper.rb
|
171
175
|
- lib/gobl/extensions/schema/object_helper.rb
|
@@ -1,36 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
##
|
4
|
-
## DO NOT EDIT - This file was generated automatically.
|
5
|
-
##
|
6
|
-
##
|
7
|
-
|
8
|
-
module GOBL
|
9
|
-
module Bill
|
10
|
-
# DocumentReference provides a link to a existing document.
|
11
|
-
class DocumentReference < GOBL::Object
|
12
|
-
# The Schema ID of the GOBL DocumentReference structure
|
13
|
-
SCHEMA_ID = 'https://gobl.org/draft-0/bill/invoice#/$defs/DocumentReference'
|
14
|
-
|
15
|
-
# @!attribute [r] uuid
|
16
|
-
# Unique ID copied from the source document.
|
17
|
-
# @return [String]
|
18
|
-
property :uuid, String
|
19
|
-
|
20
|
-
# @!attribute [r] series
|
21
|
-
# Series the reference document belongs to.
|
22
|
-
# @return [String]
|
23
|
-
property :series, String
|
24
|
-
|
25
|
-
# @!attribute [r] code
|
26
|
-
# Source document's code or other identifier.
|
27
|
-
# @return [String]
|
28
|
-
property :code, String
|
29
|
-
|
30
|
-
# @!attribute [r] url
|
31
|
-
# Link to the source document.
|
32
|
-
# @return [String]
|
33
|
-
property :url, String
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
@@ -1,78 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
##
|
4
|
-
## DO NOT EDIT - This file was generated automatically.
|
5
|
-
##
|
6
|
-
##
|
7
|
-
|
8
|
-
module GOBL
|
9
|
-
module Bill
|
10
|
-
# Preceding allows for information to be provided about a previous invoice that this one will replace, subtract from, or add to.
|
11
|
-
class Preceding < GOBL::Object
|
12
|
-
# The Schema ID of the GOBL Preceding structure
|
13
|
-
SCHEMA_ID = 'https://gobl.org/draft-0/bill/invoice#/$defs/Preceding'
|
14
|
-
|
15
|
-
# @!attribute [r] uuid
|
16
|
-
# Preceding document's UUID.
|
17
|
-
# @return [String]
|
18
|
-
property :uuid, String
|
19
|
-
|
20
|
-
# Enumeration of possible values for {#type} with their corresponding descriptions
|
21
|
-
TYPE_ENUM = {
|
22
|
-
'standard' => 'A regular commercial invoice document between a supplier and customer.',
|
23
|
-
'proforma' => 'For a clients validation before sending a final invoice.',
|
24
|
-
'corrective' => 'Corrected invoice that completely *replaces* the preceding document.',
|
25
|
-
'credit-note' => 'Reflects a refund either partial or complete of the preceding document. A
|
26
|
-
credit note effectively *extends* the previous document.',
|
27
|
-
'debit-note' => 'An additional set of charges to be added to the preceding document.'
|
28
|
-
}.freeze
|
29
|
-
|
30
|
-
# @!attribute [r] type
|
31
|
-
# Type of the preceding document
|
32
|
-
# @return [GOBL::CBC::Key]
|
33
|
-
property :type, GOBL::CBC::Key
|
34
|
-
validates_inclusion_of :type, in: TYPE_ENUM.keys, allow_blank: true
|
35
|
-
|
36
|
-
# @!attribute [r] series
|
37
|
-
# Series identification code
|
38
|
-
# @return [String]
|
39
|
-
property :series, String
|
40
|
-
|
41
|
-
# @!attribute [r] code
|
42
|
-
# Code of the previous document.
|
43
|
-
# @return [String]
|
44
|
-
property :code, String
|
45
|
-
validates_presence_of :code
|
46
|
-
|
47
|
-
# @!attribute [r] issue_date
|
48
|
-
# The issue date of the previous document.
|
49
|
-
# @return [GOBL::Cal::Date]
|
50
|
-
property :issue_date, GOBL::Cal::Date
|
51
|
-
|
52
|
-
# @!attribute [r] reason
|
53
|
-
# Human readable description on why the preceding invoice is being replaced.
|
54
|
-
# @return [String]
|
55
|
-
property :reason, String
|
56
|
-
|
57
|
-
# @!attribute [r] stamps
|
58
|
-
# Seals of approval from other organisations that may need to be listed.
|
59
|
-
# @return [Array<GOBL::Head::Stamp>]
|
60
|
-
property :stamps, [GOBL::Head::Stamp]
|
61
|
-
|
62
|
-
# @!attribute [r] period
|
63
|
-
# Tax period in which the previous invoice had an effect required by some tax regimes and formats.
|
64
|
-
# @return [GOBL::Cal::Period]
|
65
|
-
property :period, GOBL::Cal::Period
|
66
|
-
|
67
|
-
# @!attribute [r] ext
|
68
|
-
# Extensions for region specific requirements.
|
69
|
-
# @return [GOBL::Tax::Extensions]
|
70
|
-
property :ext, GOBL::Tax::Extensions
|
71
|
-
|
72
|
-
# @!attribute [r] meta
|
73
|
-
# Additional semi-structured data that may be useful in specific regions
|
74
|
-
# @return [GOBL::CBC::Meta]
|
75
|
-
property :meta, GOBL::CBC::Meta
|
76
|
-
end
|
77
|
-
end
|
78
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
##
|
4
|
-
## DO NOT EDIT - This file was generated automatically.
|
5
|
-
##
|
6
|
-
##
|
7
|
-
|
8
|
-
module GOBL
|
9
|
-
module CBC
|
10
|
-
# CodeDefinition describes a specific code and how it maps to a human name and description if appropriate.
|
11
|
-
class CodeDefinition < GOBL::Object
|
12
|
-
# The Schema ID of the GOBL CodeDefinition structure
|
13
|
-
SCHEMA_ID = 'https://gobl.org/draft-0/cbc/code-definition'
|
14
|
-
|
15
|
-
# @!attribute [r] code
|
16
|
-
# Code for which the definition is for.
|
17
|
-
# @return [GOBL::CBC::Code]
|
18
|
-
property :code, GOBL::CBC::Code
|
19
|
-
validates_presence_of :code
|
20
|
-
|
21
|
-
# @!attribute [r] name
|
22
|
-
# Short name for the code, if relevant.
|
23
|
-
# @return [GOBL::I18n::String]
|
24
|
-
property :name, GOBL::I18n::String
|
25
|
-
|
26
|
-
# @!attribute [r] desc
|
27
|
-
# Description offering more details about when the code should be used.
|
28
|
-
# @return [GOBL::I18n::String]
|
29
|
-
property :desc, GOBL::I18n::String
|
30
|
-
|
31
|
-
# @!attribute [r] meta
|
32
|
-
# Meta defines any additional details that may be useful or associated with the code.
|
33
|
-
# @return [GOBL::CBC::Meta]
|
34
|
-
property :meta, GOBL::CBC::Meta
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
@@ -1,25 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module GOBL
|
4
|
-
module Extensions
|
5
|
-
module Bill
|
6
|
-
# Aggregates the data of collection of scenarios
|
7
|
-
class ScenarioSummary
|
8
|
-
def initialize(scenarios)
|
9
|
-
@scenarios = scenarios
|
10
|
-
end
|
11
|
-
|
12
|
-
# Returns the aggregated codes of the scenarios
|
13
|
-
def codes
|
14
|
-
scenarios.inject({}) do |codes, scenario|
|
15
|
-
codes.merge(scenario.codes.to_h)
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
private
|
20
|
-
|
21
|
-
attr_reader :scenarios
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|