webtranslateit-payday 1.5.0 → 1.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: eef54cccb42602b271a63975e2bd13edae13befdf6929503a4989abe4f74bd2a
4
- data.tar.gz: 2be86b92427a04b532e5b60a2fe2d1f60c907c498f2f217afbf5146ce217a3b3
3
+ metadata.gz: bb7eb8b193dfb36f037b5c9cb428229579da578a6f645edbb25730899d20701d
4
+ data.tar.gz: 1812ebfd3a8c05fde6dd07a5626d715d614a3a63167ec7c89662c7c9d81770e5
5
5
  SHA512:
6
- metadata.gz: 0d3e648695eb670d0af8c63c1627eb3e0b30c3efbae7ab908b57288d7b6f269fc267f253acc86bdd2fd7bad51825fa43dadc787e3c13ea4bb09a00780ed155c2
7
- data.tar.gz: b2f65b6742a6d4ce0d44d285aab50a92fbcec61eb7987cc6ec08923d4bb5abb0af81ec9ed21c3c531f0a6ad573a5d5d639cef0b3814c2a904f89a972f2a329e9
6
+ metadata.gz: e0af2856aca3b1451e98ad8f6f5bd1c8bd5b58e72d3189e058e2b732e0a10202caed2219c7f5720527b79bf74c59e4ce98de0b18c27264b951a7f12161896805
7
+ data.tar.gz: d2386981f2a425f306b1c5211e9da53e1ad5d16327f14bc32f73d93bda1c2aa9a34cbfc87653e892f8490632f10cef12098d850e2c6796f7514e35c3cba775e3
@@ -8,4 +8,6 @@ updates:
8
8
  - package-ecosystem: "bundler" # See documentation for possible values
9
9
  directory: "/" # Location of package manifests
10
10
  schedule:
11
- interval: "daily"
11
+ interval: "weekly"
12
+ day: "monday"
13
+ time: "04:00"
@@ -0,0 +1,36 @@
1
+ name-template: '$RESOLVED_VERSION 🌈'
2
+ tag-template: '$RESOLVED_VERSION'
3
+ categories:
4
+ - title: '🚀 Features'
5
+ labels:
6
+ - 'feature'
7
+ - 'enhancement'
8
+ - title: '🐛 Bug Fixes'
9
+ labels:
10
+ - 'bug'
11
+ - 'design'
12
+ - 'performance'
13
+ - title: '🧰 Maintenance'
14
+ labels:
15
+ - 'admin'
16
+ - 'refactoring'
17
+ - 'dependencies'
18
+ - 'github_actions'
19
+ - 'tests'
20
+ change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
21
+ change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks.
22
+ version-resolver:
23
+ major:
24
+ labels:
25
+ - 'major'
26
+ minor:
27
+ labels:
28
+ - 'minor'
29
+ patch:
30
+ labels:
31
+ - 'patch'
32
+ default: patch
33
+ template: |
34
+ ## Changes
35
+
36
+ $CHANGES
@@ -0,0 +1,29 @@
1
+ name: Release Drafter
2
+
3
+ on:
4
+ push:
5
+ # branches to consider in the event; optional, defaults to all
6
+ branches:
7
+ - main
8
+ # pull_request event is required only for autolabeler
9
+ pull_request:
10
+ # Only following types are handled by the action, but one can default to all as well
11
+ types: [opened, reopened, synchronize]
12
+
13
+ jobs:
14
+ update_release_draft:
15
+ runs-on: ubuntu-latest
16
+ steps:
17
+ # (Optional) GitHub Enterprise requires GHE_HOST variable set
18
+ #- name: Set GHE_HOST
19
+ # run: |
20
+ # echo "GHE_HOST=${GITHUB_SERVER_URL##https:\/\/}" >> $GITHUB_ENV
21
+
22
+ # Drafts your next Release notes as Pull Requests are merged into "master"
23
+ - uses: release-drafter/release-drafter@v5
24
+ # (Optional) specify config name to use, relative to .github/. Default: release-drafter.yml
25
+ # with:
26
+ # config-name: my-config.yml
27
+ # disable-autolabeler: true
28
+ env:
29
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
data/.gitignore CHANGED
@@ -2,7 +2,7 @@ tmp/
2
2
  doc/
3
3
  .yardoc/
4
4
  *.gem
5
- Gemfile.lock
6
5
  .bundle
7
6
  pkg/*
8
7
  bin/
8
+ .rubocop-http*
data/.rubocop.yml CHANGED
@@ -1,4 +1,9 @@
1
- inherit_from: .rubocop_todo.yml
1
+ require:
2
+ - rubocop-rspec
3
+
4
+ inherit_from:
5
+ - https://raw.githubusercontent.com/webtranslateit/webtranslateit/main/.rubocop_common.yml
6
+ - .rubocop_todo.yml
2
7
 
3
8
  AllCops:
4
9
  TargetRubyVersion: 3.1
@@ -6,160 +11,5 @@ AllCops:
6
11
  - lib/generators/**/*
7
12
 
8
13
  inherit_mode:
9
- merge:
10
- - Exclude
11
-
12
- require: rubocop-rspec
13
-
14
- Gemspec/DeprecatedAttributeAssignment: # new in 1.30
15
- Enabled: true
16
- Gemspec/RequireMFA: # new in 1.23
17
- Enabled: true
18
- Layout/LineEndStringConcatenationIndentation: # new in 1.18
19
- Enabled: true
20
- Layout/SpaceBeforeBrackets: # new in 1.7
21
- Enabled: true
22
- Lint/AmbiguousAssignment: # new in 1.7
23
- Enabled: true
24
- Lint/AmbiguousOperatorPrecedence: # new in 1.21
25
- Enabled: true
26
- Lint/AmbiguousRange: # new in 1.19
27
- Enabled: true
28
- Lint/DeprecatedConstants: # new in 1.8
29
- Enabled: true
30
- Lint/DuplicateBranch: # new in 1.3
31
- Enabled: true
32
- Lint/DuplicateRegexpCharacterClassElement: # new in 1.1
33
- Enabled: true
34
- Lint/EmptyBlock: # new in 1.1
35
- Enabled: true
36
- Lint/EmptyClass: # new in 1.3
37
- Enabled: true
38
- Lint/EmptyInPattern: # new in 1.16
39
- Enabled: true
40
- Lint/IncompatibleIoSelectWithFiberScheduler: # new in 1.21
41
- Enabled: true
42
- Lint/LambdaWithoutLiteralBlock: # new in 1.8
43
- Enabled: true
44
- Lint/NoReturnInBeginEndBlocks: # new in 1.2
45
- Enabled: true
46
- Lint/NumberedParameterAssignment: # new in 1.9
47
- Enabled: true
48
- Lint/OrAssignmentToConstant: # new in 1.9
49
- Enabled: true
50
- Lint/RedundantDirGlobSort: # new in 1.8
51
- Enabled: true
52
- Lint/RefinementImportMethods: # new in 1.27
53
- Enabled: true
54
- Lint/RequireRelativeSelfPath: # new in 1.22
55
- Enabled: true
56
- Lint/SymbolConversion: # new in 1.9
57
- Enabled: true
58
- Lint/ToEnumArguments: # new in 1.1
59
- Enabled: true
60
- Lint/TripleQuotes: # new in 1.9
61
- Enabled: true
62
- Lint/UnexpectedBlockArity: # new in 1.5
63
- Enabled: true
64
- Lint/UnmodifiedReduceAccumulator: # new in 1.1
65
- Enabled: true
66
- Lint/UselessRuby2Keywords: # new in 1.23
67
- Enabled: true
68
- Naming/BlockForwarding: # new in 1.24
69
- Enabled: true
70
- Security/CompoundHash: # new in 1.28
71
- Enabled: true
72
- Security/IoMethods: # new in 1.22
73
- Enabled: true
74
- Style/ArgumentsForwarding: # new in 1.1
75
- Enabled: true
76
- Style/CollectionCompact: # new in 1.2
77
- Enabled: true
78
- Style/DocumentDynamicEvalDefinition: # new in 1.1
79
- Enabled: true
80
- Style/EndlessMethod: # new in 1.8
81
- Enabled: true
82
- Style/EnvHome: # new in 1.29
83
- Enabled: true
84
- Style/FetchEnvVar: # new in 1.28
85
- Enabled: true
86
- Style/FileRead: # new in 1.24
87
- Enabled: true
88
- Style/FileWrite: # new in 1.24
89
- Enabled: true
90
- Style/HashConversion: # new in 1.10
91
- Enabled: true
92
- Style/HashExcept: # new in 1.7
93
- Enabled: true
94
- Style/IfWithBooleanLiteralBranches: # new in 1.9
95
- Enabled: true
96
- Style/InPatternThen: # new in 1.16
97
- Enabled: true
98
- Style/MapCompactWithConditionalBlock: # new in 1.30
99
- Enabled: true
100
- Style/MapToHash: # new in 1.24
101
- Enabled: true
102
- Style/MultilineInPatternThen: # new in 1.16
103
- Enabled: true
104
- Style/NegatedIfElseCondition: # new in 1.2
105
- Enabled: true
106
- Style/NestedFileDirname: # new in 1.26
107
- Enabled: true
108
- Style/NilLambda: # new in 1.3
109
- Enabled: true
110
- Style/NumberedParameters: # new in 1.22
111
- Enabled: true
112
- Style/NumberedParametersLimit: # new in 1.22
113
- Enabled: true
114
- Style/ObjectThen: # new in 1.28
115
- Enabled: true
116
- Style/OpenStructUse: # new in 1.23
117
- Enabled: true
118
- Style/QuotedSymbols: # new in 1.16
119
- Enabled: true
120
- Style/RedundantArgument: # new in 1.4
121
- Enabled: true
122
- Style/RedundantInitialize: # new in 1.27
123
- Enabled: true
124
- Style/RedundantSelfAssignmentBranch: # new in 1.19
125
- Enabled: true
126
- Style/SelectByRegexp: # new in 1.22
127
- Enabled: true
128
- Style/StringChars: # new in 1.12
129
- Enabled: true
130
- Style/SwapValues: # new in 1.1
131
- Enabled: true
132
- RSpec/BeEq: # new in 2.9.0
133
- Enabled: true
134
- RSpec/BeNil: # new in 2.9.0
135
- Enabled: true
136
- RSpec/ChangeByZero: # new in 2.11.0
137
- Enabled: true
138
- RSpec/ExcessiveDocstringSpacing: # new in 2.5
139
- Enabled: true
140
- RSpec/IdenticalEqualityAssertion: # new in 2.4
141
- Enabled: true
142
- RSpec/SubjectDeclaration: # new in 2.5
143
- Enabled: true
144
- RSpec/VerifiedDoubleReference: # new in 2.10.0
145
- Enabled: true
146
- RSpec/FactoryBot/SyntaxMethods: # new in 2.7
147
- Enabled: true
148
- RSpec/Rails/AvoidSetupHook: # new in 2.4
149
- Enabled: true
150
- Layout/LineContinuationLeadingSpace: # new in 1.31
151
- Enabled: true
152
- Layout/LineContinuationSpacing: # new in 1.31
153
- Enabled: true
154
- Lint/ConstantOverwrittenInRescue: # new in 1.31
155
- Enabled: true
156
- Lint/NonAtomicFileOperation: # new in 1.31
157
- Enabled: true
158
- Lint/RequireRangeParentheses: # new in 1.32
159
- Enabled: true
160
- Style/EmptyHeredoc: # new in 1.32
161
- Enabled: true
162
- RSpec/Capybara/SpecificMatcher: # new in 2.12
163
- Enabled: true
164
- RSpec/Rails/HaveHttpStatus: # new in 2.12
165
- Enabled: true
14
+ merge:
15
+ - Exclude
data/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 1.6.0 (2002-08-16)
4
+
5
+ * Set up release-drafter.
6
+ * Don’t leave gemspec dependencies open ended.
7
+ * Move development dependencies to Gemfile and add Gemfile.lock to version control so dependabot can update them.
8
+ * Inherit rubocop styles from our defaults and fix offences.
9
+ * Load gem’s files using Zeitwerk.
10
+
11
+ ## 1.5.0 (2002-08-09)
12
+
13
+ * Rubocop offences fixes.
14
+
3
15
  ## 1.4.0 (2022-06-29)
4
16
 
5
17
  * Target ruby 3.1.
data/Gemfile CHANGED
@@ -1,5 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- source 'http://rubygems.org'
3
+ source 'https://rubygems.org'
4
4
 
5
5
  gemspec
6
+
7
+ gem 'guard'
8
+ gem 'guard-rspec'
9
+ gem 'guard-rubocop'
10
+ gem 'matrix'
11
+ gem 'rspec', '~> 3.11.0'
12
+ gem 'rubocop'
13
+ gem 'rubocop-rspec'
data/Gemfile.lock ADDED
@@ -0,0 +1,139 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ webtranslateit-payday (1.6.0)
5
+ activesupport (~> 7, < 8)
6
+ i18n (~> 1.12, < 2)
7
+ money (~> 6.16, < 7)
8
+ prawn (~> 2.4, < 3)
9
+ prawn-svg (~> 0.32, < 1)
10
+ prawn-table (~> 0.2, < 1)
11
+ zeitwerk (~> 2.6, < 3)
12
+
13
+ GEM
14
+ remote: https://rubygems.org/
15
+ specs:
16
+ activesupport (7.0.3.1)
17
+ concurrent-ruby (~> 1.0, >= 1.0.2)
18
+ i18n (>= 1.6, < 2)
19
+ minitest (>= 5.1)
20
+ tzinfo (~> 2.0)
21
+ addressable (2.8.0)
22
+ public_suffix (>= 2.0.2, < 5.0)
23
+ ast (2.4.2)
24
+ coderay (1.1.3)
25
+ concurrent-ruby (1.1.10)
26
+ css_parser (1.11.0)
27
+ addressable
28
+ diff-lcs (1.5.0)
29
+ ffi (1.15.5)
30
+ formatador (1.1.0)
31
+ guard (2.18.0)
32
+ formatador (>= 0.2.4)
33
+ listen (>= 2.7, < 4.0)
34
+ lumberjack (>= 1.0.12, < 2.0)
35
+ nenv (~> 0.1)
36
+ notiffany (~> 0.0)
37
+ pry (>= 0.13.0)
38
+ shellany (~> 0.0)
39
+ thor (>= 0.18.1)
40
+ guard-compat (1.2.1)
41
+ guard-rspec (4.7.3)
42
+ guard (~> 2.1)
43
+ guard-compat (~> 1.1)
44
+ rspec (>= 2.99.0, < 4.0)
45
+ guard-rubocop (1.5.0)
46
+ guard (~> 2.0)
47
+ rubocop (< 2.0)
48
+ i18n (1.12.0)
49
+ concurrent-ruby (~> 1.0)
50
+ json (2.6.2)
51
+ listen (3.7.1)
52
+ rb-fsevent (~> 0.10, >= 0.10.3)
53
+ rb-inotify (~> 0.9, >= 0.9.10)
54
+ lumberjack (1.2.8)
55
+ matrix (0.4.2)
56
+ method_source (1.0.0)
57
+ minitest (5.16.2)
58
+ money (6.16.0)
59
+ i18n (>= 0.6.4, <= 2)
60
+ nenv (0.3.0)
61
+ notiffany (0.1.3)
62
+ nenv (~> 0.1)
63
+ shellany (~> 0.0)
64
+ parallel (1.22.1)
65
+ parser (3.1.2.1)
66
+ ast (~> 2.4.1)
67
+ pdf-core (0.9.0)
68
+ prawn (2.4.0)
69
+ pdf-core (~> 0.9.0)
70
+ ttfunk (~> 1.7)
71
+ prawn-svg (0.32.0)
72
+ css_parser (~> 1.6)
73
+ prawn (>= 0.11.1, < 3)
74
+ rexml (~> 3.2)
75
+ prawn-table (0.2.2)
76
+ prawn (>= 1.3.0, < 3.0.0)
77
+ pry (0.14.1)
78
+ coderay (~> 1.1)
79
+ method_source (~> 1.0)
80
+ public_suffix (4.0.7)
81
+ rainbow (3.1.1)
82
+ rb-fsevent (0.11.1)
83
+ rb-inotify (0.10.1)
84
+ ffi (~> 1.0)
85
+ regexp_parser (2.5.0)
86
+ rexml (3.2.5)
87
+ rspec (3.11.0)
88
+ rspec-core (~> 3.11.0)
89
+ rspec-expectations (~> 3.11.0)
90
+ rspec-mocks (~> 3.11.0)
91
+ rspec-core (3.11.0)
92
+ rspec-support (~> 3.11.0)
93
+ rspec-expectations (3.11.0)
94
+ diff-lcs (>= 1.2.0, < 2.0)
95
+ rspec-support (~> 3.11.0)
96
+ rspec-mocks (3.11.1)
97
+ diff-lcs (>= 1.2.0, < 2.0)
98
+ rspec-support (~> 3.11.0)
99
+ rspec-support (3.11.0)
100
+ rubocop (1.35.0)
101
+ json (~> 2.3)
102
+ parallel (~> 1.10)
103
+ parser (>= 3.1.2.1)
104
+ rainbow (>= 2.2.2, < 4.0)
105
+ regexp_parser (>= 1.8, < 3.0)
106
+ rexml (>= 3.2.5, < 4.0)
107
+ rubocop-ast (>= 1.20.1, < 2.0)
108
+ ruby-progressbar (~> 1.7)
109
+ unicode-display_width (>= 1.4.0, < 3.0)
110
+ rubocop-ast (1.21.0)
111
+ parser (>= 3.1.1.0)
112
+ rubocop-rspec (2.12.1)
113
+ rubocop (~> 1.31)
114
+ ruby-progressbar (1.11.0)
115
+ shellany (0.0.1)
116
+ thor (1.2.1)
117
+ ttfunk (1.7.0)
118
+ tzinfo (2.0.5)
119
+ concurrent-ruby (~> 1.0)
120
+ unicode-display_width (2.2.0)
121
+ zeitwerk (2.6.0)
122
+
123
+ PLATFORMS
124
+ arm64-darwin-21
125
+ x86_64-darwin-21
126
+ x86_64-linux
127
+
128
+ DEPENDENCIES
129
+ guard
130
+ guard-rspec
131
+ guard-rubocop
132
+ matrix
133
+ rspec (~> 3.11.0)
134
+ rubocop
135
+ rubocop-rspec
136
+ webtranslateit-payday!
137
+
138
+ BUNDLED WITH
139
+ 2.3.12
data/lib/payday/config.rb CHANGED
@@ -1,9 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Payday
4
+
4
5
  # Configuration for Payday. This is a singleton, so to set the company_name you would call
5
6
  # Payday::Config.default.company_name = "Awesome Corp".
6
7
  class Config
8
+
7
9
  attr_accessor :invoice_logo, :company_name, :company_details, :date_format, :currency
8
10
 
9
11
  # Sets the page size to use. See the
@@ -33,5 +35,7 @@ module Payday
33
35
  def initialize
34
36
  reset
35
37
  end
38
+
36
39
  end
40
+
37
41
  end
@@ -1,8 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Payday
4
+
4
5
  # Basically just an invoice. Stick a ton of line items in it, add some details, and then render it out!
5
6
  class Invoice
7
+
6
8
  include Payday::Invoiceable
7
9
 
8
10
  attr_accessor :invoice_number, :bill_to, :ship_to, :notes, :line_items, :shipping_description,
@@ -50,5 +52,7 @@ module Payday
50
52
  def add_line_item(options = {})
51
53
  line_items << Payday::LineItem.new(options)
52
54
  end
55
+
53
56
  end
57
+
54
58
  end
@@ -17,7 +17,9 @@
17
17
  # rubocop:enable Layout/LineLength
18
18
  # paid dates, and refunded dates, as well as stamps showing if the invoice is paid or due.
19
19
  module Payday
20
- module Invoiceable # rubocop:todo Style/Documentation
20
+
21
+ module Invoiceable
22
+
21
23
  # Who the invoice is being sent to.
22
24
  def bill_to
23
25
  "Goofy McGoofison\nYour Invoice Doesn't\nHave It's Own BillTo Method"
@@ -85,5 +87,7 @@ module Payday
85
87
  block.call(detail[0], detail[1])
86
88
  end
87
89
  end
90
+
88
91
  end
92
+
89
93
  end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Payday
4
+
4
5
  # Represents a line item in an invoice.
5
6
  #
6
7
  # rubocop:todo Layout/LineLength
@@ -9,6 +10,7 @@ module Payday
9
10
  # them your invoice math could get pretty messed up. It's recommended that both values be set to +BigDecimal+ values.
10
11
  # Otherwise, we'll do our best to convert the set values to a +BigDecimal+.
11
12
  class LineItem
13
+
12
14
  include LineItemable
13
15
 
14
16
  attr_accessor :description, :display_quantity, :display_price
@@ -44,5 +46,7 @@ module Payday
44
46
  value = 0 if value.to_s.blank?
45
47
  @predefined_amount = BigDecimal(value.to_s)
46
48
  end
49
+
47
50
  end
51
+
48
52
  end
@@ -3,12 +3,16 @@
3
3
  # Include this module into your line item implementation to make sure that Payday stays happy
4
4
  # with it, or just make sure that your line item implements the amount method.
5
5
  module Payday
6
- module LineItemable # rubocop:todo Style/Documentation
6
+
7
+ module LineItemable
8
+
7
9
  # Returns the total amount for this {LineItemable}, or +price * quantity+
8
10
  def amount
9
11
  return predefined_amount if predefined_amount
10
12
 
11
13
  price * quantity
12
14
  end
15
+
13
16
  end
17
+
14
18
  end
@@ -1,9 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Payday
4
+
4
5
  # The PDF renderer. We use this internally in Payday to render pdfs, but really you should just need to call
5
6
  # {{Payday::Invoiceable#render_pdf}} to render pdfs yourself.
6
7
  class PdfRenderer # rubocop:todo Metrics/ClassLength
8
+
7
9
  # Renders the given invoice as a pdf on disk
8
10
  def self.render_to_file(invoice, path)
9
11
  pdf(invoice).render_file(path)
@@ -19,8 +21,8 @@ module Payday
19
21
 
20
22
  font_dir = File.join(File.dirname(__dir__), '..', 'fonts')
21
23
  pdf.font_families.update(
22
- 'NotoSans' => { normal: File.join(font_dir, 'NotoSans-Regular.ttf'),
23
- bold: File.join(font_dir, 'NotoSans-Bold.ttf') }
24
+ 'NotoSans' => {normal: File.join(font_dir, 'NotoSans-Regular.ttf'),
25
+ bold: File.join(font_dir, 'NotoSans-Bold.ttf')}
24
26
  )
25
27
 
26
28
  # set up some default styling
@@ -77,10 +79,10 @@ module Payday
77
79
  end
78
80
 
79
81
  if File.extname(image) == '.svg'
80
- logo_info = pdf.svg(File.read(image), at: pdf.bounds.top_left, width:, height:)
82
+ logo_info = pdf.svg(File.read(image), at: pdf.bounds.top_left, width: width, height: height)
81
83
  logo_height = logo_info[:height]
82
84
  else
83
- logo_info = pdf.image(image, at: pdf.bounds.top_left, width:, height:)
85
+ logo_info = pdf.image(image, at: pdf.bounds.top_left, width: width, height: height)
84
86
  logo_height = logo_info.scaled_height
85
87
  end
86
88
 
@@ -90,7 +92,7 @@ module Payday
90
92
 
91
93
  invoice_or_default(invoice, :company_details).lines.each { |line| table_data << [line] }
92
94
 
93
- table = pdf.make_table(table_data, cell_style: { borders: [], padding: 0 })
95
+ table = pdf.make_table(table_data, cell_style: {borders: [], padding: 0})
94
96
  pdf.bounding_box([pdf.bounds.width - table.width, pdf.bounds.top], width: table.width,
95
97
  height: table.height + 5) do
96
98
  table.draw
@@ -102,7 +104,7 @@ module Payday
102
104
 
103
105
  # rubocop:todo Metrics/MethodLength
104
106
  def self.bill_to_ship_to(invoice, pdf) # rubocop:todo Metrics/AbcSize, Metrics/MethodLength
105
- bill_to_cell_style = { borders: [], padding: [2, 0] }
107
+ bill_to_cell_style = {borders: [], padding: [2, 0]}
106
108
  bill_to_ship_to_bottom = 0
107
109
 
108
110
  # render bill to
@@ -138,21 +140,21 @@ module Payday
138
140
  # invoice number
139
141
  if defined?(invoice.invoice_number) && invoice.invoice_number
140
142
  table_data << if invoice.paid?
141
- [bold_cell(pdf, I18n.t('payday.invoice.receipt_no', default: 'Receipt #:')),
142
- bold_cell(pdf, invoice.invoice_number.to_s, align: :right)]
143
- else
144
- [bold_cell(pdf, I18n.t('payday.invoice.invoice_no', default: 'Invoice #:')),
145
- bold_cell(pdf, invoice.invoice_number.to_s, align: :right)]
146
- end
143
+ [bold_cell(pdf, I18n.t('payday.invoice.receipt_no', default: 'Receipt #:')),
144
+ bold_cell(pdf, invoice.invoice_number.to_s, align: :right)]
145
+ else
146
+ [bold_cell(pdf, I18n.t('payday.invoice.invoice_no', default: 'Invoice #:')),
147
+ bold_cell(pdf, invoice.invoice_number.to_s, align: :right)]
148
+ end
147
149
  end
148
150
 
149
151
  # Due on
150
152
  if defined?(invoice.due_at) && invoice.due_at
151
153
  due_date = if invoice.due_at.is_a?(Date) || invoice.due_at.is_a?(Time)
152
- invoice.due_at.strftime(Payday::Config.default.date_format)
153
- else
154
- invoice.due_at.to_s
155
- end
154
+ invoice.due_at.strftime(Payday::Config.default.date_format)
155
+ else
156
+ invoice.due_at.to_s
157
+ end
156
158
 
157
159
  table_data << [bold_cell(pdf, I18n.t('payday.invoice.due_date', default: 'Due Date:')),
158
160
  bold_cell(pdf, due_date, align: :right)]
@@ -161,10 +163,10 @@ module Payday
161
163
  # Paid on
162
164
  if defined?(invoice.paid_at) && invoice.paid_at
163
165
  paid_date = if invoice.paid_at.is_a?(Date) || invoice.due_at.is_a?(Time)
164
- invoice.paid_at.strftime(Payday::Config.default.date_format)
165
- else
166
- invoice.paid_at.to_s
167
- end
166
+ invoice.paid_at.strftime(Payday::Config.default.date_format)
167
+ else
168
+ invoice.paid_at.to_s
169
+ end
168
170
 
169
171
  table_data << [bold_cell(pdf, I18n.t('payday.invoice.paid_date', default: 'Paid Date:')),
170
172
  bold_cell(pdf, paid_date, align: :right)]
@@ -178,7 +180,7 @@ module Payday
178
180
 
179
181
  return unless table_data.length.positive?
180
182
 
181
- pdf.table(table_data, cell_style: { borders: [], padding: [1, 10, 1, 1] })
183
+ pdf.table(table_data, cell_style: {borders: [], padding: [1, 10, 1, 1]})
182
184
  end
183
185
  # rubocop:enable Metrics/AbcSize
184
186
  # rubocop:enable Metrics/MethodLength
@@ -195,20 +197,20 @@ module Payday
195
197
  bold_cell(pdf, I18n.t('payday.line_item.amount', default: 'Amount'), align: :center, borders: [])]
196
198
  invoice.line_items.each do |line|
197
199
  table_data << if line.predefined_amount
198
- [line.description, '', '', number_to_currency(line.predefined_amount, invoice)]
199
- else
200
- [line.description,
201
- (line.display_price || number_to_currency(line.price, invoice)),
202
- (line.display_quantity || BigDecimal(line.quantity.to_s).to_s('F')),
203
- number_to_currency(line.amount, invoice)]
204
- end
200
+ [line.description, '', '', number_to_currency(line.predefined_amount, invoice)]
201
+ else
202
+ [line.description,
203
+ (line.display_price || number_to_currency(line.price, invoice)),
204
+ (line.display_quantity || BigDecimal(line.quantity.to_s).to_s('F')),
205
+ number_to_currency(line.amount, invoice)]
206
+ end
205
207
  end
206
208
 
207
209
  pdf.move_cursor_to(pdf.cursor - 20)
208
210
  pdf.table(table_data, width: pdf.bounds.width, header: true,
209
- cell_style: { border_width: 0.5, border_left_color: 'FFFFFF', border_right_color: 'FFFFFF',
210
- border_top_color: 'F6F9FC', border_bottom_color: 'BCC6D0', padding: [5, 10],
211
- inline_format: true },
211
+ cell_style: {border_width: 0.5, border_left_color: 'FFFFFF', border_right_color: 'FFFFFF',
212
+ border_top_color: 'F6F9FC', border_bottom_color: 'BCC6D0', padding: [5, 10],
213
+ inline_format: true},
212
214
  row_colors: %w[F6F9FC ffffff]) do
213
215
  # left align the number columns
214
216
  columns(1..3).rows(1..row_length - 1).style(align: :right)
@@ -229,10 +231,10 @@ module Payday
229
231
  ]
230
232
 
231
233
  tax_description = if invoice.tax_description.nil?
232
- I18n.t('payday.invoice.tax', default: 'Tax:')
233
- else
234
- invoice.tax_description
235
- end
234
+ I18n.t('payday.invoice.tax', default: 'Tax:')
235
+ else
236
+ invoice.tax_description
237
+ end
236
238
 
237
239
  table_data << [
238
240
  bold_cell(pdf, tax_description),
@@ -241,10 +243,10 @@ module Payday
241
243
 
242
244
  if invoice.shipping_rate.positive?
243
245
  shipping_description = if invoice.shipping_description.nil?
244
- I18n.t('payday.invoice.shipping', default: 'Shipping:')
245
- else
246
- invoice.shipping_description
247
- end
246
+ I18n.t('payday.invoice.shipping', default: 'Shipping:')
247
+ else
248
+ invoice.shipping_description
249
+ end
248
250
 
249
251
  table_data << [
250
252
  bold_cell(pdf, shipping_description),
@@ -258,7 +260,7 @@ module Payday
258
260
  cell(pdf, number_to_currency(invoice.total, invoice),
259
261
  size: 12, align: :right)
260
262
  ]
261
- table = pdf.make_table(table_data, cell_style: { borders: [] })
263
+ table = pdf.make_table(table_data, cell_style: {borders: []})
262
264
  pdf.bounding_box([pdf.bounds.width - table.width, pdf.cursor],
263
265
  width: table.width, height: table.height + 2) do
264
266
  table.draw
@@ -320,5 +322,7 @@ module Payday
320
322
 
321
323
  max
322
324
  end
325
+
323
326
  end
327
+
324
328
  end
data/lib/payday.rb CHANGED
@@ -1,20 +1,19 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Not much to see here
4
- require 'date'
5
- require 'time'
3
+ require 'zeitwerk'
4
+ loader = Zeitwerk::Loader.for_gem
5
+ loader.ignore("#{__dir__}/generators")
6
+ loader.setup
7
+
8
+ require 'active_support/core_ext/object/blank' # For Object#blank? method
6
9
  require 'bigdecimal'
10
+ require 'date'
11
+ require 'money'
7
12
  require 'prawn'
8
13
  require 'prawn/table'
9
14
  require 'prawn-svg'
10
- require 'money'
11
- require 'active_support/all'
15
+ require 'time'
12
16
 
13
- require_relative 'payday/version'
14
- require_relative 'payday/config'
15
- require_relative 'payday/i18n'
16
- require_relative 'payday/line_itemable'
17
- require_relative 'payday/line_item'
18
- require_relative 'payday/pdf_renderer'
19
- require_relative 'payday/invoiceable'
20
- require_relative 'payday/invoice'
17
+ # Load translations from the locale folder
18
+ I18n.enforce_available_locales = false
19
+ I18n.load_path.concat(Dir[File.join('lib', 'payday', 'locale', '*.yml')])
data/payday.gemspec CHANGED
@@ -1,11 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- $LOAD_PATH.push File.expand_path('lib', __dir__)
4
- require 'payday/version'
5
-
6
3
  Gem::Specification.new do |s|
7
4
  s.name = 'webtranslateit-payday'
8
- s.version = Payday::VERSION
5
+ s.version = '1.6.0'
9
6
  s.required_ruby_version = '>= 3.1'
10
7
  s.platform = Gem::Platform::RUBY
11
8
  s.authors = ['Alan Johnson', 'Edouard Briere']
@@ -14,25 +11,15 @@ Gem::Specification.new do |s|
14
11
  s.summary = 'A simple library for rendering invoices.'
15
12
  s.description = 'Payday is a library for rendering invoices to pdf.'
16
13
 
17
- s.add_dependency 'activesupport'
18
- s.add_dependency 'i18n', '>= 0.7'
19
- s.add_dependency 'money', '~> 6.16'
20
- s.add_dependency 'prawn', '>= 2.0'
21
- s.add_dependency 'prawn-svg', '>= 0.32.0'
22
- s.add_dependency 'prawn-table', '>= 0.2.2'
23
- s.add_dependency 'rexml'
24
-
25
- s.add_development_dependency 'guard'
26
- s.add_development_dependency 'guard-rspec'
27
- s.add_development_dependency 'guard-rubocop'
28
- s.add_development_dependency 'matrix' # for compat reasons, required in builds
29
- s.add_development_dependency 'rspec', '~> 3.11.0'
30
- s.add_development_dependency 'rubocop'
31
- s.add_development_dependency 'rubocop-rspec'
14
+ s.add_dependency 'activesupport', '~> 7', '< 8'
15
+ s.add_dependency 'i18n', '~> 1.12', '< 2'
16
+ s.add_dependency 'money', '~> 6.16', '< 7'
17
+ s.add_dependency 'prawn', '~> 2.4', '< 3'
18
+ s.add_dependency 'prawn-svg', '~> 0.32', '< 1'
19
+ s.add_dependency 'prawn-table', '~> 0.2', '< 1'
20
+ s.add_dependency 'zeitwerk', '~> 2.6', '< 3'
32
21
 
33
22
  s.files = `git ls-files`.split("\n")
34
- s.executables =
35
- `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
36
23
  s.require_paths = ['lib']
37
24
  s.metadata['rubygems_mfa_required'] = 'true'
38
25
  end
data/spec/invoice_spec.rb CHANGED
@@ -3,6 +3,7 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  module Payday # rubocop:todo Metrics/ModuleLength
6
+
6
7
  describe Invoice do
7
8
  # rubocop:todo RSpec/MultipleExpectations
8
9
  it 'is able to be initialized with a hash of options' do # rubocop:todo RSpec/ExampleLength, RSpec/MultipleExpectations
@@ -127,7 +128,7 @@ module Payday # rubocop:todo Metrics/ModuleLength
127
128
  it 'is able to iterate through invoice_details as a hash' do # rubocop:todo RSpec/ExampleLength, RSpec/MultipleExpectations
128
129
  # rubocop:enable RSpec/MultipleExpectations
129
130
  i = described_class.new(invoice_details:
130
- { 'Test' => 'Yes', 'Awesome' => 'Absolutely' })
131
+ {'Test' => 'Yes', 'Awesome' => 'Absolutely'})
131
132
  details = []
132
133
  i.each_detail do |key, value|
133
134
  details << [key, value]
@@ -211,11 +212,11 @@ module Payday # rubocop:todo Metrics/ModuleLength
211
212
 
212
213
  context 'paid, with an svg logo' do # rubocop:todo RSpec/ContextWording
213
214
  before do
214
- logo = { filename: 'spec/assets/tiger.svg', size: '100x100' }
215
+ logo = {filename: 'spec/assets/tiger.svg', size: '100x100'}
215
216
  Payday::Config.default.invoice_logo = logo
216
217
  end
217
218
 
218
- let(:invoice_params) { { paid_at: Date.civil(2012, 2, 22) } }
219
+ let(:invoice_params) { {paid_at: Date.civil(2012, 2, 22)} }
219
220
 
220
221
  it 'renders an invoice correctly' do # rubocop:todo RSpec/ExampleLength
221
222
  invoice.line_items += [
@@ -243,4 +244,5 @@ module Payday # rubocop:todo Metrics/ModuleLength
243
244
  end
244
245
  end
245
246
  end
247
+
246
248
  end
@@ -3,6 +3,7 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  module Payday
6
+
6
7
  describe LineItem do
7
8
  it 'is able to be initialized with a price' do
8
9
  li = described_class.new(price: BigDecimal('20'))
@@ -29,4 +30,5 @@ module Payday
29
30
  expect(li.amount).to eq(BigDecimal('244'))
30
31
  end
31
32
  end
33
+
32
34
  end
@@ -3,6 +3,7 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  module Payday
6
+
6
7
  describe PdfRenderer do
7
8
  describe '.number_to_currency' do
8
9
  it 'formats numbers to currency currectly' do
@@ -10,4 +11,5 @@ module Payday
10
11
  end
11
12
  end
12
13
  end
14
+
13
15
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: webtranslateit-payday
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alan Johnson
@@ -9,36 +9,48 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-08-09 00:00:00.000000000 Z
12
+ date: 2022-08-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ">="
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: '7'
21
+ - - "<"
19
22
  - !ruby/object:Gem::Version
20
- version: '0'
23
+ version: '8'
21
24
  type: :runtime
22
25
  prerelease: false
23
26
  version_requirements: !ruby/object:Gem::Requirement
24
27
  requirements:
25
- - - ">="
28
+ - - "~>"
26
29
  - !ruby/object:Gem::Version
27
- version: '0'
30
+ version: '7'
31
+ - - "<"
32
+ - !ruby/object:Gem::Version
33
+ version: '8'
28
34
  - !ruby/object:Gem::Dependency
29
35
  name: i18n
30
36
  requirement: !ruby/object:Gem::Requirement
31
37
  requirements:
32
- - - ">="
38
+ - - "~>"
33
39
  - !ruby/object:Gem::Version
34
- version: '0.7'
40
+ version: '1.12'
41
+ - - "<"
42
+ - !ruby/object:Gem::Version
43
+ version: '2'
35
44
  type: :runtime
36
45
  prerelease: false
37
46
  version_requirements: !ruby/object:Gem::Requirement
38
47
  requirements:
39
- - - ">="
48
+ - - "~>"
49
+ - !ruby/object:Gem::Version
50
+ version: '1.12'
51
+ - - "<"
40
52
  - !ruby/object:Gem::Version
41
- version: '0.7'
53
+ version: '2'
42
54
  - !ruby/object:Gem::Dependency
43
55
  name: money
44
56
  requirement: !ruby/object:Gem::Requirement
@@ -46,6 +58,9 @@ dependencies:
46
58
  - - "~>"
47
59
  - !ruby/object:Gem::Version
48
60
  version: '6.16'
61
+ - - "<"
62
+ - !ruby/object:Gem::Version
63
+ version: '7'
49
64
  type: :runtime
50
65
  prerelease: false
51
66
  version_requirements: !ruby/object:Gem::Requirement
@@ -53,160 +68,89 @@ dependencies:
53
68
  - - "~>"
54
69
  - !ruby/object:Gem::Version
55
70
  version: '6.16'
71
+ - - "<"
72
+ - !ruby/object:Gem::Version
73
+ version: '7'
56
74
  - !ruby/object:Gem::Dependency
57
75
  name: prawn
58
76
  requirement: !ruby/object:Gem::Requirement
59
77
  requirements:
60
- - - ">="
61
- - !ruby/object:Gem::Version
62
- version: '2.0'
63
- type: :runtime
64
- prerelease: false
65
- version_requirements: !ruby/object:Gem::Requirement
66
- requirements:
67
- - - ">="
78
+ - - "~>"
68
79
  - !ruby/object:Gem::Version
69
- version: '2.0'
70
- - !ruby/object:Gem::Dependency
71
- name: prawn-svg
72
- requirement: !ruby/object:Gem::Requirement
73
- requirements:
74
- - - ">="
80
+ version: '2.4'
81
+ - - "<"
75
82
  - !ruby/object:Gem::Version
76
- version: 0.32.0
83
+ version: '3'
77
84
  type: :runtime
78
85
  prerelease: false
79
86
  version_requirements: !ruby/object:Gem::Requirement
80
87
  requirements:
81
- - - ">="
88
+ - - "~>"
82
89
  - !ruby/object:Gem::Version
83
- version: 0.32.0
84
- - !ruby/object:Gem::Dependency
85
- name: prawn-table
86
- requirement: !ruby/object:Gem::Requirement
87
- requirements:
88
- - - ">="
90
+ version: '2.4'
91
+ - - "<"
89
92
  - !ruby/object:Gem::Version
90
- version: 0.2.2
91
- type: :runtime
92
- prerelease: false
93
- version_requirements: !ruby/object:Gem::Requirement
94
- requirements:
95
- - - ">="
96
- - !ruby/object:Gem::Version
97
- version: 0.2.2
93
+ version: '3'
98
94
  - !ruby/object:Gem::Dependency
99
- name: rexml
95
+ name: prawn-svg
100
96
  requirement: !ruby/object:Gem::Requirement
101
97
  requirements:
102
- - - ">="
98
+ - - "~>"
103
99
  - !ruby/object:Gem::Version
104
- version: '0'
100
+ version: '0.32'
101
+ - - "<"
102
+ - !ruby/object:Gem::Version
103
+ version: '1'
105
104
  type: :runtime
106
105
  prerelease: false
107
106
  version_requirements: !ruby/object:Gem::Requirement
108
107
  requirements:
109
- - - ">="
110
- - !ruby/object:Gem::Version
111
- version: '0'
112
- - !ruby/object:Gem::Dependency
113
- name: guard
114
- requirement: !ruby/object:Gem::Requirement
115
- requirements:
116
- - - ">="
108
+ - - "~>"
117
109
  - !ruby/object:Gem::Version
118
- version: '0'
119
- type: :development
120
- prerelease: false
121
- version_requirements: !ruby/object:Gem::Requirement
122
- requirements:
123
- - - ">="
110
+ version: '0.32'
111
+ - - "<"
124
112
  - !ruby/object:Gem::Version
125
- version: '0'
113
+ version: '1'
126
114
  - !ruby/object:Gem::Dependency
127
- name: guard-rspec
115
+ name: prawn-table
128
116
  requirement: !ruby/object:Gem::Requirement
129
117
  requirements:
130
- - - ">="
118
+ - - "~>"
131
119
  - !ruby/object:Gem::Version
132
- version: '0'
133
- type: :development
134
- prerelease: false
135
- version_requirements: !ruby/object:Gem::Requirement
136
- requirements:
137
- - - ">="
120
+ version: '0.2'
121
+ - - "<"
138
122
  - !ruby/object:Gem::Version
139
- version: '0'
140
- - !ruby/object:Gem::Dependency
141
- name: guard-rubocop
142
- requirement: !ruby/object:Gem::Requirement
143
- requirements:
144
- - - ">="
145
- - !ruby/object:Gem::Version
146
- version: '0'
147
- type: :development
123
+ version: '1'
124
+ type: :runtime
148
125
  prerelease: false
149
126
  version_requirements: !ruby/object:Gem::Requirement
150
127
  requirements:
151
- - - ">="
152
- - !ruby/object:Gem::Version
153
- version: '0'
154
- - !ruby/object:Gem::Dependency
155
- name: matrix
156
- requirement: !ruby/object:Gem::Requirement
157
- requirements:
158
- - - ">="
128
+ - - "~>"
159
129
  - !ruby/object:Gem::Version
160
- version: '0'
161
- type: :development
162
- prerelease: false
163
- version_requirements: !ruby/object:Gem::Requirement
164
- requirements:
165
- - - ">="
130
+ version: '0.2'
131
+ - - "<"
166
132
  - !ruby/object:Gem::Version
167
- version: '0'
133
+ version: '1'
168
134
  - !ruby/object:Gem::Dependency
169
- name: rspec
135
+ name: zeitwerk
170
136
  requirement: !ruby/object:Gem::Requirement
171
137
  requirements:
172
138
  - - "~>"
173
139
  - !ruby/object:Gem::Version
174
- version: 3.11.0
175
- type: :development
176
- prerelease: false
177
- version_requirements: !ruby/object:Gem::Requirement
178
- requirements:
179
- - - "~>"
180
- - !ruby/object:Gem::Version
181
- version: 3.11.0
182
- - !ruby/object:Gem::Dependency
183
- name: rubocop
184
- requirement: !ruby/object:Gem::Requirement
185
- requirements:
186
- - - ">="
140
+ version: '2.6'
141
+ - - "<"
187
142
  - !ruby/object:Gem::Version
188
- version: '0'
189
- type: :development
143
+ version: '3'
144
+ type: :runtime
190
145
  prerelease: false
191
146
  version_requirements: !ruby/object:Gem::Requirement
192
147
  requirements:
193
- - - ">="
194
- - !ruby/object:Gem::Version
195
- version: '0'
196
- - !ruby/object:Gem::Dependency
197
- name: rubocop-rspec
198
- requirement: !ruby/object:Gem::Requirement
199
- requirements:
200
- - - ">="
148
+ - - "~>"
201
149
  - !ruby/object:Gem::Version
202
- version: '0'
203
- type: :development
204
- prerelease: false
205
- version_requirements: !ruby/object:Gem::Requirement
206
- requirements:
207
- - - ">="
150
+ version: '2.6'
151
+ - - "<"
208
152
  - !ruby/object:Gem::Version
209
- version: '0'
153
+ version: '3'
210
154
  description: Payday is a library for rendering invoices to pdf.
211
155
  email:
212
156
  - edouard@webtranslateit.com
@@ -216,12 +160,15 @@ extra_rdoc_files: []
216
160
  files:
217
161
  - ".gitattributes"
218
162
  - ".github/dependabot.yml"
163
+ - ".github/release-drafter.yml"
219
164
  - ".github/workflows/ci.yml"
165
+ - ".github/workflows/release-drafter.yml"
220
166
  - ".gitignore"
221
167
  - ".rubocop.yml"
222
168
  - ".rubocop_todo.yml"
223
169
  - CHANGELOG.md
224
170
  - Gemfile
171
+ - Gemfile.lock
225
172
  - Guardfile
226
173
  - README.md
227
174
  - Rakefile
@@ -234,7 +181,6 @@ files:
234
181
  - lib/generators/payday/setup/templates/migration.rb
235
182
  - lib/payday.rb
236
183
  - lib/payday/config.rb
237
- - lib/payday/i18n.rb
238
184
  - lib/payday/invoice.rb
239
185
  - lib/payday/invoiceable.rb
240
186
  - lib/payday/line_item.rb
@@ -246,7 +192,6 @@ files:
246
192
  - lib/payday/locale/nl.yml
247
193
  - lib/payday/locale/zh-CN.yml
248
194
  - lib/payday/pdf_renderer.rb
249
- - lib/payday/version.rb
250
195
  - payday.gemspec
251
196
  - spec/assets/default_logo.png
252
197
  - spec/assets/svg.pdf
data/lib/payday/i18n.rb DELETED
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Load everything in the local folder
4
- I18n.enforce_available_locales = false
5
- I18n.load_path.concat(Dir[File.join(File.dirname(__FILE__), 'locale', '*.yml')])
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # This is Payday!
4
- module Payday
5
- # Current Version
6
- VERSION = '1.5.0'
7
- end