gobl 0.21.0 → 0.22.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/data/regimes/at.json +55 -50
  3. data/data/regimes/be.json +55 -50
  4. data/data/regimes/ca.json +1 -1
  5. data/data/regimes/ch.json +55 -50
  6. data/data/regimes/co.json +113 -61
  7. data/data/regimes/de.json +61 -47
  8. data/data/regimes/el.json +204 -0
  9. data/data/regimes/es.json +66 -548
  10. data/data/regimes/fr.json +55 -50
  11. data/data/regimes/gb.json +59 -50
  12. data/data/regimes/it.json +60 -1311
  13. data/data/regimes/mx.json +38 -639
  14. data/data/regimes/nl.json +55 -50
  15. data/data/regimes/pl.json +103 -100
  16. data/data/regimes/pt.json +17 -349
  17. data/data/regimes/us.json +55 -50
  18. data/lib/generated/gobl/bill/correction_options.rb +2 -2
  19. data/lib/generated/gobl/bill/invoice.rb +49 -9
  20. data/lib/generated/gobl/bill/ordering.rb +34 -34
  21. data/lib/generated/gobl/bill/tax.rb +0 -5
  22. data/lib/generated/gobl/cbc/key_definition.rb +4 -9
  23. data/lib/generated/gobl/cbc/value_definition.rb +37 -0
  24. data/lib/generated/gobl/head/header.rb +5 -5
  25. data/lib/generated/gobl/head/link.rb +43 -0
  26. data/lib/generated/gobl/l10n/{country_code.rb → iso_country_code.rb} +3 -3
  27. data/lib/generated/gobl/l10n/tax_country_code.rb +277 -0
  28. data/lib/generated/gobl/org/address.rb +2 -3
  29. data/lib/generated/gobl/org/document_ref.rb +87 -0
  30. data/lib/generated/gobl/org/identity.rb +5 -0
  31. data/lib/generated/gobl/org/item.rb +2 -2
  32. data/lib/generated/gobl/org/name.rb +0 -2
  33. data/lib/generated/gobl/org/party.rb +5 -6
  34. data/lib/generated/gobl/org/person.rb +5 -0
  35. data/lib/generated/gobl/org/registration.rb +4 -0
  36. data/lib/generated/gobl/pay/advance.rb +5 -0
  37. data/lib/generated/gobl/pay/instructions.rb +5 -0
  38. data/lib/generated/gobl/tax/addon_def.rb +61 -0
  39. data/lib/generated/gobl/tax/{category.rb → category_def.rb} +11 -11
  40. data/lib/generated/gobl/tax/combo.rb +5 -0
  41. data/lib/generated/gobl/tax/correction_definition.rb +1 -1
  42. data/lib/generated/gobl/tax/correction_set.rb +13 -0
  43. data/lib/generated/gobl/tax/identity.rb +3 -3
  44. data/lib/generated/gobl/tax/{rate.rb → rate_def.rb} +11 -16
  45. data/lib/generated/gobl/tax/rate_total.rb +5 -0
  46. data/lib/generated/gobl/tax/{rate_value.rb → rate_value_def.rb} +4 -4
  47. data/lib/generated/gobl/tax/{regime.rb → regime_def.rb} +23 -13
  48. data/lib/generated/gobl/tax/scenario.rb +20 -10
  49. data/lib/generated/gobl/tax/scenario_set.rb +1 -1
  50. data/lib/generated/gobl/tax/source.rb +1 -1
  51. data/lib/generated/gobl/tax/tag_set.rb +28 -0
  52. data/lib/gobl/extensions/bill/invoice_helper.rb +6 -36
  53. data/lib/gobl/extensions/envelope_helper.rb +4 -0
  54. data/lib/gobl/version.rb +1 -1
  55. data/lib/gobl.rb +3 -2
  56. metadata +15 -11
  57. data/lib/generated/gobl/bill/document_reference.rb +0 -36
  58. data/lib/generated/gobl/bill/preceding.rb +0 -78
  59. data/lib/generated/gobl/cbc/code_definition.rb +0 -37
  60. 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.21.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-07-18 00:00:00.000000000 Z
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/country_code.rb
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/category.rb
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/rate.rb
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/rate_value.rb
158
- - lib/generated/gobl/tax/regime.rb
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