gobl 0.1.3 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. checksums.yaml +4 -4
  2. data/data/tax/CO.json +420 -0
  3. data/data/tax/ES.json +61 -0
  4. data/lib/ext/hashme.rb +28 -0
  5. data/lib/gobl/bill/advances.rb +1 -77
  6. data/lib/gobl/bill/charge.rb +11 -65
  7. data/lib/gobl/bill/delivery.rb +5 -47
  8. data/lib/gobl/bill/discount.rb +11 -65
  9. data/lib/gobl/bill/exchange_rates.rb +1 -77
  10. data/lib/gobl/bill/invoice.rb +28 -104
  11. data/lib/gobl/bill/invoice_type.rb +3 -134
  12. data/lib/gobl/bill/line.rb +13 -65
  13. data/lib/gobl/bill/line_charge.rb +5 -47
  14. data/lib/gobl/bill/line_discount.rb +5 -47
  15. data/lib/gobl/bill/ordering.rb +2 -38
  16. data/lib/gobl/bill/outlay.rb +11 -59
  17. data/lib/gobl/bill/payment.rb +5 -47
  18. data/lib/gobl/bill/preceding.rb +12 -62
  19. data/lib/gobl/bill/scheme_keys.rb +1 -77
  20. data/lib/gobl/bill/tax.rb +4 -44
  21. data/lib/gobl/bill/totals.rb +17 -71
  22. data/lib/gobl/cal/date.rb +1 -90
  23. data/lib/gobl/cal/period.rb +5 -41
  24. data/lib/gobl/currency/code.rb +3 -134
  25. data/lib/gobl/currency/exchange_rate.rb +5 -41
  26. data/lib/gobl/document.rb +1 -58
  27. data/lib/gobl/dsig/digest.rb +5 -41
  28. data/lib/gobl/dsig/signature.rb +1 -90
  29. data/lib/gobl/enum.rb +81 -0
  30. data/lib/gobl/envelope.rb +9 -48
  31. data/lib/gobl/header.rb +10 -56
  32. data/lib/gobl/i18n/string.rb +1 -58
  33. data/lib/gobl/l10n/code.rb +1 -90
  34. data/lib/gobl/l10n/country_code.rb +3 -134
  35. data/lib/gobl/map.rb +62 -0
  36. data/lib/gobl/note/message.rb +5 -44
  37. data/lib/gobl/num/amount.rb +6 -35
  38. data/lib/gobl/object.rb +21 -0
  39. data/lib/gobl/operations.rb +3 -3
  40. data/lib/gobl/org/address.rb +18 -80
  41. data/lib/gobl/org/code.rb +1 -90
  42. data/lib/gobl/org/coordinates.rb +5 -47
  43. data/lib/gobl/org/email.rb +6 -47
  44. data/lib/gobl/org/inbox.rb +8 -50
  45. data/lib/gobl/org/item.rb +13 -65
  46. data/lib/gobl/org/item_code.rb +4 -41
  47. data/lib/gobl/org/key.rb +1 -90
  48. data/lib/gobl/org/meta.rb +1 -58
  49. data/lib/gobl/org/name.rb +12 -62
  50. data/lib/gobl/org/note.rb +6 -47
  51. data/lib/gobl/org/note_key.rb +3 -134
  52. data/lib/gobl/org/party.rb +14 -71
  53. data/lib/gobl/org/person.rb +9 -56
  54. data/lib/gobl/org/registration.rb +9 -59
  55. data/lib/gobl/org/source_key.rb +3 -134
  56. data/lib/gobl/org/tax_identity.rb +8 -53
  57. data/lib/gobl/org/telephone.rb +5 -44
  58. data/lib/gobl/org/unit.rb +1 -136
  59. data/lib/gobl/pay/advance.rb +11 -59
  60. data/lib/gobl/pay/card.rb +5 -41
  61. data/lib/gobl/pay/credit_transfer.rb +6 -50
  62. data/lib/gobl/pay/direct_debit.rb +4 -44
  63. data/lib/gobl/pay/due_date.rb +8 -50
  64. data/lib/gobl/pay/instructions.rb +11 -62
  65. data/lib/gobl/pay/method_key.rb +3 -134
  66. data/lib/gobl/pay/online.rb +4 -41
  67. data/lib/gobl/pay/term_key.rb +3 -134
  68. data/lib/gobl/pay/terms.rb +6 -47
  69. data/lib/gobl/stamp.rb +5 -41
  70. data/lib/gobl/struct.rb +15 -15
  71. data/lib/gobl/tax/category.rb +9 -50
  72. data/lib/gobl/tax/category_total.rb +11 -53
  73. data/lib/gobl/tax/combo.rb +6 -47
  74. data/lib/gobl/tax/localities.rb +1 -77
  75. data/lib/gobl/tax/locality.rb +6 -44
  76. data/lib/gobl/tax/rate.rb +8 -47
  77. data/lib/gobl/tax/rate_total.rb +9 -50
  78. data/lib/gobl/tax/rate_total_surcharge.rb +5 -41
  79. data/lib/gobl/tax/rate_value.rb +6 -47
  80. data/lib/gobl/tax/region.rb +12 -56
  81. data/lib/gobl/tax/scheme.rb +8 -50
  82. data/lib/gobl/tax/schemes.rb +1 -77
  83. data/lib/gobl/tax/set.rb +1 -77
  84. data/lib/gobl/tax/total.rb +4 -41
  85. data/lib/gobl/uuid/uuid.rb +1 -90
  86. data/lib/gobl/value.rb +58 -0
  87. data/lib/gobl/version.rb +1 -1
  88. data/lib/gobl.rb +3 -1
  89. data/lib/gobl_extensions/document_helper.rb +3 -3
  90. data/lib/gobl_extensions/envelope_helper.rb +5 -0
  91. data/lib/gobl_extensions/i18n/value_keys_helper.rb +3 -3
  92. data/lib/gobl_extensions/tax/region_helper.rb +3 -9
  93. metadata +12 -35
  94. 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 = files.join("#{__dir__}/../../../data/tax", "#{code}.json")
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 files.exist?(path)
27
+ raise StandardError, msg unless File.exist?(path)
34
28
 
35
- data = files.read(path)
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.1.3
4
+ version: 0.3.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-05 00:00:00.000000000 Z
13
+ date: 2022-10-25 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: dry-files
30
+ name: hashme
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
33
  - - "~>"
34
34
  - !ruby/object:Gem::Version
35
- version: 0.1.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.1.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
@@ -102,10 +74,12 @@ executables: []
102
74
  extensions: []
103
75
  extra_rdoc_files: []
104
76
  files:
77
+ - data/tax/CO.json
105
78
  - data/tax/ES.json
106
79
  - data/tax/FR.json
107
80
  - data/tax/GB.json
108
81
  - data/tax/NL.json
82
+ - lib/ext/hashme.rb
109
83
  - lib/extensions.rb
110
84
  - lib/gobl.rb
111
85
  - lib/gobl/bill/advances.rb
@@ -133,15 +107,18 @@ files:
133
107
  - lib/gobl/document.rb
134
108
  - lib/gobl/dsig/digest.rb
135
109
  - lib/gobl/dsig/signature.rb
110
+ - lib/gobl/enum.rb
136
111
  - lib/gobl/envelope.rb
137
112
  - lib/gobl/header.rb
138
113
  - lib/gobl/i18n/string.rb
139
114
  - lib/gobl/id.rb
140
115
  - lib/gobl/l10n/code.rb
141
116
  - lib/gobl/l10n/country_code.rb
117
+ - lib/gobl/map.rb
142
118
  - lib/gobl/note/message.rb
143
119
  - lib/gobl/num/amount.rb
144
120
  - lib/gobl/num/percentage.rb
121
+ - lib/gobl/object.rb
145
122
  - lib/gobl/operations.rb
146
123
  - lib/gobl/operations/service_error.rb
147
124
  - lib/gobl/operations/validation_result.rb
@@ -190,8 +167,8 @@ files:
190
167
  - lib/gobl/tax/schemes.rb
191
168
  - lib/gobl/tax/set.rb
192
169
  - lib/gobl/tax/total.rb
193
- - lib/gobl/types.rb
194
170
  - lib/gobl/uuid/uuid.rb
171
+ - lib/gobl/value.rb
195
172
  - lib/gobl/version.rb
196
173
  - lib/gobl_extensions/document_helper.rb
197
174
  - lib/gobl_extensions/envelope_helper.rb
@@ -217,7 +194,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
217
194
  - !ruby/object:Gem::Version
218
195
  version: 3.1.4
219
196
  requirements: []
220
- rubygems_version: 3.3.7
197
+ rubygems_version: 3.1.4
221
198
  signing_key:
222
199
  specification_version: 4
223
200
  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