rails_extensions_core 0.0.6 → 0.0.9

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: 9a7b6331898bd69a8990dcf2212ad4a1d0b3b263b2350b1b7a49f41058d03d3d
4
- data.tar.gz: 70bef4c26dc0f64f15cebd4223224653216d5219f9c2479ab0d5ec4f944eebe7
3
+ metadata.gz: aeb9d5d2403c6eb84351035fe68ee160888241fd9085360bc2fca32bf6228f5d
4
+ data.tar.gz: 973a311a91044a5c7bf67a5a0032f379dc5dccc8f9bc4e6be0468df14cc5da39
5
5
  SHA512:
6
- metadata.gz: 461382f4c505dbd90fc7a5ef2c533fbed2c5a02f4dfcf1aa32d2fb53d02c39e011638ff2bb05eb61ce7480d67b96696b1723e6139c3bcec451d256abe117663a
7
- data.tar.gz: 6b6fc61cc03c547a7fe2b6455997696b8807bc14b8ec45bfdb146cf31a6c78f4944039de7311e212dfda4c3708e7e102071fd0f2344bd5182fded65c27aa3713
6
+ metadata.gz: 8597ff7b90c5de17a4a3c021c4a40c050d8d7a1c7f09b7adb2b65ba23162f9726d7c5bb1429b3745a01f9d3dba63d37560effd4b4b752321de0834ef66d89d92
7
+ data.tar.gz: 6ee80e1a28564419432b2671c5cf511599625184cf5eb31276134ea875dcc2497cf9c4fd4314d8761413902c29bd233f9c60c9001f6dbe7ddae0afac92d99518
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 0.0.9 (2022-04-15)
5
+ ------------------
6
+
7
+ * Configurations weren't working
8
+
9
+ 0.0.8 (2022-04-14)
10
+ ------------------
11
+
12
+ * Added `logger_cycle_extension`
13
+
14
+ 0.0.7 (2022-04-01)
15
+ ------------------
16
+
17
+ * Added `Array` methods to `Set`
18
+
4
19
  0.0.6 (2022-03-31)
5
20
  ------------------
6
21
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.6
1
+ 0.0.9
@@ -1,29 +1,94 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'compact_map_extension'
4
- require 'current_day_extension'
5
- require 'current_month_extension'
6
- require 'current_week_extension'
7
- require 'day_of_week_extension'
8
- require 'display_military_extension'
9
- require 'display_user_extension'
10
- require 'find_bang_extension'
11
- require 'find_dupes_extension'
12
- require 'first_dupe_extension'
13
- require 'google_format_extension'
14
- require 'hash_only_extension'
15
- require 'input_extension'
16
- require 'in_utc_extension'
17
- require 'month_and_year_extension'
18
- require 'month_year_extension'
19
- require 'overlaps_extension'
20
- require 'pipe_extension'
21
- require 'to_bool_extension'
22
- require 'to_dec_extension'
23
- require 'to_i_extension'
24
- require 'to_or_sentence_extension'
25
- require 'to_sort_i_extension'
26
- require 'to_x_extension'
27
- require 'usd_to_f_extension'
28
- require 'usd_to_i_extension'
29
- require 'yesno_extension'
3
+ module RailsExtensions
4
+ # requires all the gems
5
+ def require_gems
6
+ gem_list.each do |gem_base|
7
+ if configuration.public_send("#{flag_name(gem_base)}?")
8
+ require(gem_name(gem_base))
9
+ end
10
+ end
11
+ end
12
+
13
+ module_function :require_gems
14
+
15
+ # @return [CONFIGURATION]
16
+ def self.configuration
17
+ @configuration ||= CONFIGURATION.new
18
+ end
19
+
20
+ # @yield [Configuration]
21
+ def self.configure
22
+ yield(configuration)
23
+ end
24
+
25
+ private
26
+
27
+ # @return [Symbol] the flag name
28
+ def flag_name(gem_base)
29
+ :"include_#{gem_base}"
30
+ end
31
+
32
+ module_function :flag_name
33
+
34
+ # @return [String] the gem name
35
+ def gem_name(gem_base)
36
+ "#{gem_base}_extension"
37
+ end
38
+
39
+ module_function :gem_name
40
+
41
+ BOOLEAN_GEMS = %i[
42
+ compact_map
43
+ current_day
44
+ current_month
45
+ current_week
46
+ day_of_week
47
+ display_military
48
+ display_user
49
+ find_bang
50
+ find_dupes
51
+ first_dupe
52
+ google_format
53
+ hash_only
54
+ input
55
+ in_utc
56
+ month_and_year
57
+ month_year
58
+ overlaps
59
+ pipe
60
+ to_bool
61
+ to_dec
62
+ to_i
63
+ to_or_sentence
64
+ to_sort_i
65
+ to_x
66
+ usd_to_f
67
+ usd_to_i
68
+ yesno
69
+ ].freeze
70
+
71
+ # @return [Array<Symbol>] the list of gems
72
+ def gem_list
73
+ BOOLEAN_GEMS
74
+ end
75
+
76
+ module_function :gem_list
77
+
78
+ CONFIGURATION = Struct.new(*gem_list.map(&method(:flag_name))) do
79
+ members.each do |gem_member|
80
+ define_method(:"#{gem_member}?") do
81
+ public_send(gem_member) != false
82
+ end
83
+ end
84
+
85
+ # Sets all flags to true by default
86
+ def initialize
87
+ super
88
+
89
+ members.each do |gem_member|
90
+ public_send("#{gem_member}=", true)
91
+ end
92
+ end
93
+ end
94
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_extensions_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcus Wyatt
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-03-31 00:00:00.000000000 Z
11
+ date: 2022-04-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: compact_map_extension
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.0.5
19
+ version: 0.0.6
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.0.5
26
+ version: 0.0.6
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: current_day_extension
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -114,14 +114,14 @@ dependencies:
114
114
  requirements:
115
115
  - - '='
116
116
  - !ruby/object:Gem::Version
117
- version: 0.0.5
117
+ version: 0.0.6
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - '='
123
123
  - !ruby/object:Gem::Version
124
- version: 0.0.5
124
+ version: 0.0.6
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: find_dupes_extension
127
127
  requirement: !ruby/object:Gem::Requirement
@@ -240,28 +240,28 @@ dependencies:
240
240
  requirements:
241
241
  - - '='
242
242
  - !ruby/object:Gem::Version
243
- version: 0.0.5
243
+ version: 0.0.6
244
244
  type: :runtime
245
245
  prerelease: false
246
246
  version_requirements: !ruby/object:Gem::Requirement
247
247
  requirements:
248
248
  - - '='
249
249
  - !ruby/object:Gem::Version
250
- version: 0.0.5
250
+ version: 0.0.6
251
251
  - !ruby/object:Gem::Dependency
252
252
  name: pipe_extension
253
253
  requirement: !ruby/object:Gem::Requirement
254
254
  requirements:
255
255
  - - '='
256
256
  - !ruby/object:Gem::Version
257
- version: 0.0.5
257
+ version: 0.0.6
258
258
  type: :runtime
259
259
  prerelease: false
260
260
  version_requirements: !ruby/object:Gem::Requirement
261
261
  requirements:
262
262
  - - '='
263
263
  - !ruby/object:Gem::Version
264
- version: 0.0.5
264
+ version: 0.0.6
265
265
  - !ruby/object:Gem::Dependency
266
266
  name: to_bool_extension
267
267
  requirement: !ruby/object:Gem::Requirement
@@ -310,14 +310,14 @@ dependencies:
310
310
  requirements:
311
311
  - - '='
312
312
  - !ruby/object:Gem::Version
313
- version: 0.0.5
313
+ version: 0.0.6
314
314
  type: :runtime
315
315
  prerelease: false
316
316
  version_requirements: !ruby/object:Gem::Requirement
317
317
  requirements:
318
318
  - - '='
319
319
  - !ruby/object:Gem::Version
320
- version: 0.0.5
320
+ version: 0.0.6
321
321
  - !ruby/object:Gem::Dependency
322
322
  name: to_sort_i_extension
323
323
  requirement: !ruby/object:Gem::Requirement