shimmer 0.0.28 → 0.0.29

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: c29fbc043f70767d14167a6da3f50d85790e85f3244628c207c41412a9d0db65
4
- data.tar.gz: 8b33c52bf110c85c72427fe5dd320bbb26ff782aecba81f4aae17fe3f1eb81f3
3
+ metadata.gz: e77dab032d0ec3a48d22321c020868645d0a6d8649821518189decd58ebffb0f
4
+ data.tar.gz: 1a6957d6dea3f04288166eaf4a7cbb011ebfdd9b26bb2675f0b1faaffa7eda3f
5
5
  SHA512:
6
- metadata.gz: 8c9bbb1b1ef81986d70a3101ec86ed3222c015ab2466d585bc5ebcc83cc0c80adfdc57e4ac223a01ae96fa2ab5be0aedebf60efeffba32507fd44402779e4f34
7
- data.tar.gz: 0b8e06125388ce26ae9e88adfdd3616828180a46332f584d4a631630a68c69fff6cd59f0242c8d9db69ed3c0a72ab77abdee84655785ae7f8f0a861e96513814
6
+ metadata.gz: 0a479f55de54862deb63928a2be5f58ccd3b142b059db16e4405c958f527758e348bbd1d82147646705492aa7d28ea2702549075de34522900d1eda83c5d0802
7
+ data.tar.gz: 6c493df14ce2242f4e735d04a2a5e398ae3cf1cb8c2d7d081a8061be6f08d0d552627d85753f542a97a4075a7acfb58c0bfa64bd5c708c4ca0344793ff047602
data/.rspec ADDED
@@ -0,0 +1 @@
1
+ --require spec_helper
data/.rubocop.yml CHANGED
@@ -1,5 +1,12 @@
1
1
  inherit_from: config/rubocop_base.yml
2
2
 
3
+ AllCops:
4
+ Exclude:
5
+ - "bin/**/*"
6
+ - "spec/rails_app/bin/**/*"
7
+ - "spec/rails_app/db/schema.rb"
8
+ - "vendor/**/*"
9
+
3
10
  # Allow controllers created in this library to inherit directly from ActionController::Base.
4
11
  Rails/ApplicationController:
5
12
  Enabled: false
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.0.3
1
+ 2.7.7
@@ -1,9 +1,12 @@
1
1
  {
2
- "solargraph.useBundler": false,
3
- "solargraph.formatting": true,
4
2
  "[ruby]": {
5
3
  "editor.formatOnSave": false,
6
- "editor.defaultFormatter": "castwide.solargraph"
4
+ "editor.defaultFormatter": "rebornix.ruby"
7
5
  },
8
- "typescript.tsdk": "node_modules/typescript/lib"
6
+ "ruby.format": "rubocop",
7
+ "ruby.lint": {
8
+ "rubocop": true
9
+ },
10
+ "ruby.useLanguageServer": true,
11
+ "typescript.tsdk": "node_modules/typescript/lib",
9
12
  }
data/Gemfile CHANGED
@@ -4,3 +4,45 @@ source "https://rubygems.org"
4
4
 
5
5
  # Specify your gem's dependencies in shimmer.gemspec
6
6
  gemspec
7
+
8
+ gem "rails"
9
+ gem "propshaft"
10
+ gem "sqlite3"
11
+ gem "puma"
12
+ gem "jsbundling-rails"
13
+ gem "turbo-rails"
14
+ gem "stimulus-rails"
15
+ gem "cssbundling-rails"
16
+ gem "jbuilder"
17
+ gem "bootsnap", require: false
18
+ gem "dotenv"
19
+ gem "slim-rails"
20
+ gem "awesome_print"
21
+ gem "dotenv-rails"
22
+
23
+ group :development, :test do
24
+ gem "debug", platforms: [:mri, :mingw, :x64_mingw]
25
+ gem "rake"
26
+ gem "rspec-rails"
27
+ gem "rspec-retry"
28
+ gem "pry"
29
+ gem "pry-rails"
30
+ gem "pry-byebug"
31
+ gem "pry-doc"
32
+ gem "guard"
33
+ gem "guard-rspec"
34
+ gem "capybara"
35
+ gem "rack_session_access"
36
+ gem "cuprite"
37
+ gem "standard"
38
+ gem "rubocop"
39
+ gem "rubocop-rails"
40
+ gem "rubocop-performance"
41
+ gem "rubocop-rspec"
42
+ gem "rubocop-rake"
43
+ end
44
+
45
+ group :development do
46
+ gem "web-console"
47
+ gem "annotate"
48
+ end
data/Gemfile.lock CHANGED
@@ -6,69 +6,381 @@ PATH
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- activesupport (7.0.2.3)
9
+ actioncable (7.0.4.2)
10
+ actionpack (= 7.0.4.2)
11
+ activesupport (= 7.0.4.2)
12
+ nio4r (~> 2.0)
13
+ websocket-driver (>= 0.6.1)
14
+ actionmailbox (7.0.4.2)
15
+ actionpack (= 7.0.4.2)
16
+ activejob (= 7.0.4.2)
17
+ activerecord (= 7.0.4.2)
18
+ activestorage (= 7.0.4.2)
19
+ activesupport (= 7.0.4.2)
20
+ mail (>= 2.7.1)
21
+ net-imap
22
+ net-pop
23
+ net-smtp
24
+ actionmailer (7.0.4.2)
25
+ actionpack (= 7.0.4.2)
26
+ actionview (= 7.0.4.2)
27
+ activejob (= 7.0.4.2)
28
+ activesupport (= 7.0.4.2)
29
+ mail (~> 2.5, >= 2.5.4)
30
+ net-imap
31
+ net-pop
32
+ net-smtp
33
+ rails-dom-testing (~> 2.0)
34
+ actionpack (7.0.4.2)
35
+ actionview (= 7.0.4.2)
36
+ activesupport (= 7.0.4.2)
37
+ rack (~> 2.0, >= 2.2.0)
38
+ rack-test (>= 0.6.3)
39
+ rails-dom-testing (~> 2.0)
40
+ rails-html-sanitizer (~> 1.0, >= 1.2.0)
41
+ actiontext (7.0.4.2)
42
+ actionpack (= 7.0.4.2)
43
+ activerecord (= 7.0.4.2)
44
+ activestorage (= 7.0.4.2)
45
+ activesupport (= 7.0.4.2)
46
+ globalid (>= 0.6.0)
47
+ nokogiri (>= 1.8.5)
48
+ actionview (7.0.4.2)
49
+ activesupport (= 7.0.4.2)
50
+ builder (~> 3.1)
51
+ erubi (~> 1.4)
52
+ rails-dom-testing (~> 2.0)
53
+ rails-html-sanitizer (~> 1.1, >= 1.2.0)
54
+ activejob (7.0.4.2)
55
+ activesupport (= 7.0.4.2)
56
+ globalid (>= 0.3.6)
57
+ activemodel (7.0.4.2)
58
+ activesupport (= 7.0.4.2)
59
+ activerecord (7.0.4.2)
60
+ activemodel (= 7.0.4.2)
61
+ activesupport (= 7.0.4.2)
62
+ activestorage (7.0.4.2)
63
+ actionpack (= 7.0.4.2)
64
+ activejob (= 7.0.4.2)
65
+ activerecord (= 7.0.4.2)
66
+ activesupport (= 7.0.4.2)
67
+ marcel (~> 1.0)
68
+ mini_mime (>= 1.1.0)
69
+ activesupport (7.0.4.2)
10
70
  concurrent-ruby (~> 1.0, >= 1.0.2)
11
71
  i18n (>= 1.6, < 2)
12
72
  minitest (>= 5.1)
13
73
  tzinfo (~> 2.0)
74
+ addressable (2.8.1)
75
+ public_suffix (>= 2.0.2, < 6.0)
76
+ annotate (3.2.0)
77
+ activerecord (>= 3.2, < 8.0)
78
+ rake (>= 10.4, < 14.0)
14
79
  ast (2.4.2)
15
- concurrent-ruby (1.1.10)
16
- i18n (1.10.0)
80
+ awesome_print (1.9.2)
81
+ bindex (0.8.1)
82
+ bootsnap (1.16.0)
83
+ msgpack (~> 1.2)
84
+ builder (3.2.4)
85
+ byebug (11.1.3)
86
+ capybara (3.38.0)
87
+ addressable
88
+ matrix
89
+ mini_mime (>= 0.1.3)
90
+ nokogiri (~> 1.8)
91
+ rack (>= 1.6.0)
92
+ rack-test (>= 0.6.3)
93
+ regexp_parser (>= 1.5, < 3.0)
94
+ xpath (~> 3.2)
95
+ coderay (1.1.3)
96
+ concurrent-ruby (1.2.0)
97
+ crass (1.0.6)
98
+ cssbundling-rails (1.1.2)
99
+ railties (>= 6.0.0)
100
+ cuprite (0.14.3)
101
+ capybara (~> 3.0)
102
+ ferrum (~> 0.13.0)
103
+ date (3.3.3)
104
+ debug (1.7.1)
105
+ irb (>= 1.5.0)
106
+ reline (>= 0.3.1)
107
+ diff-lcs (1.5.0)
108
+ dotenv (2.8.1)
109
+ dotenv-rails (2.8.1)
110
+ dotenv (= 2.8.1)
111
+ railties (>= 3.2)
112
+ erubi (1.12.0)
113
+ ferrum (0.13)
114
+ addressable (~> 2.5)
115
+ concurrent-ruby (~> 1.1)
116
+ webrick (~> 1.7)
117
+ websocket-driver (>= 0.6, < 0.8)
118
+ ffi (1.15.5)
119
+ formatador (1.1.0)
120
+ globalid (1.1.0)
121
+ activesupport (>= 5.0)
122
+ guard (2.18.0)
123
+ formatador (>= 0.2.4)
124
+ listen (>= 2.7, < 4.0)
125
+ lumberjack (>= 1.0.12, < 2.0)
126
+ nenv (~> 0.1)
127
+ notiffany (~> 0.0)
128
+ pry (>= 0.13.0)
129
+ shellany (~> 0.0)
130
+ thor (>= 0.18.1)
131
+ guard-compat (1.2.1)
132
+ guard-rspec (4.7.3)
133
+ guard (~> 2.1)
134
+ guard-compat (~> 1.1)
135
+ rspec (>= 2.99.0, < 4.0)
136
+ i18n (1.12.0)
17
137
  concurrent-ruby (~> 1.0)
18
- minitest (5.15.0)
19
- parallel (1.21.0)
20
- parser (3.0.3.2)
138
+ io-console (0.6.0)
139
+ irb (1.6.2)
140
+ reline (>= 0.3.0)
141
+ jbuilder (2.11.5)
142
+ actionview (>= 5.0.0)
143
+ activesupport (>= 5.0.0)
144
+ jsbundling-rails (1.1.1)
145
+ railties (>= 6.0.0)
146
+ json (2.6.3)
147
+ language_server-protocol (3.17.0.3)
148
+ lint_roller (1.0.0)
149
+ listen (3.8.0)
150
+ rb-fsevent (~> 0.10, >= 0.10.3)
151
+ rb-inotify (~> 0.9, >= 0.9.10)
152
+ loofah (2.19.1)
153
+ crass (~> 1.0.2)
154
+ nokogiri (>= 1.5.9)
155
+ lumberjack (1.2.8)
156
+ mail (2.8.1)
157
+ mini_mime (>= 0.1.1)
158
+ net-imap
159
+ net-pop
160
+ net-smtp
161
+ marcel (1.0.2)
162
+ matrix (0.4.2)
163
+ method_source (1.0.0)
164
+ mini_mime (1.1.2)
165
+ minitest (5.17.0)
166
+ msgpack (1.6.0)
167
+ nenv (0.3.0)
168
+ net-imap (0.3.4)
169
+ date
170
+ net-protocol
171
+ net-pop (0.1.2)
172
+ net-protocol
173
+ net-protocol (0.2.1)
174
+ timeout
175
+ net-smtp (0.3.3)
176
+ net-protocol
177
+ nio4r (2.5.8)
178
+ nokogiri (1.14.1-x86_64-darwin)
179
+ racc (~> 1.4)
180
+ notiffany (0.1.3)
181
+ nenv (~> 0.1)
182
+ shellany (~> 0.0)
183
+ parallel (1.23.0)
184
+ parser (3.2.2.1)
21
185
  ast (~> 2.4.1)
22
- rack (2.2.3)
23
- rainbow (3.0.0)
186
+ propshaft (0.6.4)
187
+ actionpack (>= 7.0.0)
188
+ activesupport (>= 7.0.0)
189
+ rack
190
+ railties (>= 7.0.0)
191
+ pry (0.14.2)
192
+ coderay (~> 1.1)
193
+ method_source (~> 1.0)
194
+ pry-byebug (3.10.1)
195
+ byebug (~> 11.0)
196
+ pry (>= 0.13, < 0.15)
197
+ pry-doc (1.4.0)
198
+ pry (~> 0.11)
199
+ yard (~> 0.9.11)
200
+ pry-rails (0.3.9)
201
+ pry (>= 0.10.4)
202
+ public_suffix (5.0.1)
203
+ puma (6.0.2)
204
+ nio4r (~> 2.0)
205
+ racc (1.6.2)
206
+ rack (2.2.6.2)
207
+ rack-test (2.0.2)
208
+ rack (>= 1.3)
209
+ rack_session_access (0.2.0)
210
+ builder (>= 2.0.0)
211
+ rack (>= 1.0.0)
212
+ rails (7.0.4.2)
213
+ actioncable (= 7.0.4.2)
214
+ actionmailbox (= 7.0.4.2)
215
+ actionmailer (= 7.0.4.2)
216
+ actionpack (= 7.0.4.2)
217
+ actiontext (= 7.0.4.2)
218
+ actionview (= 7.0.4.2)
219
+ activejob (= 7.0.4.2)
220
+ activemodel (= 7.0.4.2)
221
+ activerecord (= 7.0.4.2)
222
+ activestorage (= 7.0.4.2)
223
+ activesupport (= 7.0.4.2)
224
+ bundler (>= 1.15.0)
225
+ railties (= 7.0.4.2)
226
+ rails-dom-testing (2.0.3)
227
+ activesupport (>= 4.2.0)
228
+ nokogiri (>= 1.6)
229
+ rails-html-sanitizer (1.5.0)
230
+ loofah (~> 2.19, >= 2.19.1)
231
+ railties (7.0.4.2)
232
+ actionpack (= 7.0.4.2)
233
+ activesupport (= 7.0.4.2)
234
+ method_source
235
+ rake (>= 12.2)
236
+ thor (~> 1.0)
237
+ zeitwerk (~> 2.5)
238
+ rainbow (3.1.1)
24
239
  rake (13.0.6)
25
- regexp_parser (2.2.0)
240
+ rb-fsevent (0.11.2)
241
+ rb-inotify (0.10.1)
242
+ ffi (~> 1.0)
243
+ regexp_parser (2.8.0)
244
+ reline (0.3.2)
245
+ io-console (~> 0.5)
26
246
  rexml (3.2.5)
27
- rubocop (1.23.0)
247
+ rspec (3.12.0)
248
+ rspec-core (~> 3.12.0)
249
+ rspec-expectations (~> 3.12.0)
250
+ rspec-mocks (~> 3.12.0)
251
+ rspec-core (3.12.1)
252
+ rspec-support (~> 3.12.0)
253
+ rspec-expectations (3.12.2)
254
+ diff-lcs (>= 1.2.0, < 2.0)
255
+ rspec-support (~> 3.12.0)
256
+ rspec-mocks (3.12.3)
257
+ diff-lcs (>= 1.2.0, < 2.0)
258
+ rspec-support (~> 3.12.0)
259
+ rspec-rails (6.0.1)
260
+ actionpack (>= 6.1)
261
+ activesupport (>= 6.1)
262
+ railties (>= 6.1)
263
+ rspec-core (~> 3.11)
264
+ rspec-expectations (~> 3.11)
265
+ rspec-mocks (~> 3.11)
266
+ rspec-support (~> 3.11)
267
+ rspec-retry (0.6.2)
268
+ rspec-core (> 3.3)
269
+ rspec-support (3.12.0)
270
+ rubocop (1.50.2)
271
+ json (~> 2.3)
28
272
  parallel (~> 1.10)
29
- parser (>= 3.0.0.0)
273
+ parser (>= 3.2.0.0)
30
274
  rainbow (>= 2.2.2, < 4.0)
31
275
  regexp_parser (>= 1.8, < 3.0)
32
- rexml
33
- rubocop-ast (>= 1.12.0, < 2.0)
276
+ rexml (>= 3.2.5, < 4.0)
277
+ rubocop-ast (>= 1.28.0, < 2.0)
34
278
  ruby-progressbar (~> 1.7)
35
- unicode-display_width (>= 1.4.0, < 3.0)
36
- rubocop-ast (1.15.0)
37
- parser (>= 3.0.1.1)
38
- rubocop-performance (1.12.0)
279
+ unicode-display_width (>= 2.4.0, < 3.0)
280
+ rubocop-ast (1.28.0)
281
+ parser (>= 3.2.1.0)
282
+ rubocop-capybara (2.18.0)
283
+ rubocop (~> 1.41)
284
+ rubocop-performance (1.16.0)
39
285
  rubocop (>= 1.7.0, < 2.0)
40
286
  rubocop-ast (>= 0.4.0)
41
- rubocop-rails (2.14.2)
287
+ rubocop-rails (2.17.4)
42
288
  activesupport (>= 4.2.0)
43
289
  rack (>= 1.1)
44
- rubocop (>= 1.7.0, < 2.0)
290
+ rubocop (>= 1.33.0, < 2.0)
45
291
  rubocop-rake (0.6.0)
46
292
  rubocop (~> 1.0)
47
- rubocop-rspec (2.9.0)
48
- rubocop (~> 1.19)
49
- ruby-progressbar (1.11.0)
50
- standard (1.5.0)
51
- rubocop (= 1.23.0)
52
- rubocop-performance (= 1.12.0)
53
- standardrb (1.0.1)
54
- standard
55
- tzinfo (2.0.4)
293
+ rubocop-rspec (2.20.0)
294
+ rubocop (~> 1.33)
295
+ rubocop-capybara (~> 2.17)
296
+ ruby-progressbar (1.13.0)
297
+ shellany (0.0.1)
298
+ slim (4.1.0)
299
+ temple (>= 0.7.6, < 0.9)
300
+ tilt (>= 2.0.6, < 2.1)
301
+ slim-rails (3.5.1)
302
+ actionpack (>= 3.1)
303
+ railties (>= 3.1)
304
+ slim (>= 3.0, < 5.0)
305
+ sqlite3 (1.6.0-x86_64-darwin)
306
+ standard (1.28.0)
307
+ language_server-protocol (~> 3.17.0.2)
308
+ lint_roller (~> 1.0)
309
+ rubocop (~> 1.50.2)
310
+ standard-custom (~> 1.0.0)
311
+ standard-performance (~> 1.0.1)
312
+ standard-custom (1.0.0)
313
+ lint_roller (~> 1.0)
314
+ standard-performance (1.0.1)
315
+ lint_roller (~> 1.0)
316
+ rubocop-performance (~> 1.16.0)
317
+ stimulus-rails (1.2.1)
318
+ railties (>= 6.0.0)
319
+ temple (0.8.2)
320
+ thor (1.2.1)
321
+ tilt (2.0.11)
322
+ timeout (0.3.1)
323
+ turbo-rails (1.3.3)
324
+ actionpack (>= 6.0.0)
325
+ activejob (>= 6.0.0)
326
+ railties (>= 6.0.0)
327
+ tzinfo (2.0.6)
56
328
  concurrent-ruby (~> 1.0)
57
- unicode-display_width (2.1.0)
329
+ unicode-display_width (2.4.2)
330
+ web-console (4.2.0)
331
+ actionview (>= 6.0.0)
332
+ activemodel (>= 6.0.0)
333
+ bindex (>= 0.4.0)
334
+ railties (>= 6.0.0)
335
+ webrick (1.8.1)
336
+ websocket-driver (0.7.5)
337
+ websocket-extensions (>= 0.1.0)
338
+ websocket-extensions (0.1.5)
339
+ xpath (3.2.0)
340
+ nokogiri (~> 1.8)
341
+ yard (0.9.26)
342
+ zeitwerk (2.6.6)
58
343
 
59
344
  PLATFORMS
60
- x86_64-darwin-21
61
- x86_64-linux
345
+ x86_64-darwin-22
62
346
 
63
347
  DEPENDENCIES
64
- rake (~> 13.0)
348
+ annotate
349
+ awesome_print
350
+ bootsnap
351
+ capybara
352
+ cssbundling-rails
353
+ cuprite
354
+ debug
355
+ dotenv
356
+ dotenv-rails
357
+ guard
358
+ guard-rspec
359
+ jbuilder
360
+ jsbundling-rails
361
+ propshaft
362
+ pry
363
+ pry-byebug
364
+ pry-doc
365
+ pry-rails
366
+ puma
367
+ rack_session_access
368
+ rails
369
+ rake
370
+ rspec-rails
371
+ rspec-retry
65
372
  rubocop
66
373
  rubocop-performance
67
374
  rubocop-rails
68
375
  rubocop-rake
69
376
  rubocop-rspec
70
377
  shimmer!
71
- standardrb
378
+ slim-rails
379
+ sqlite3
380
+ standard
381
+ stimulus-rails
382
+ turbo-rails
383
+ web-console
72
384
 
73
385
  BUNDLED WITH
74
- 2.2.32
386
+ 2.3.26
data/Guardfile ADDED
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ clearing :on
4
+
5
+ guard :rspec, cmd: "bin/rspec" do
6
+ require "guard/rspec/dsl"
7
+ dsl = Guard::RSpec::Dsl.new(self)
8
+
9
+ # RSpec files
10
+ rspec = dsl.rspec
11
+ watch(rspec.spec_files)
12
+ end
data/README.md CHANGED
@@ -203,6 +203,30 @@ import { application } from "controllers/application";
203
203
  start({ application });
204
204
  ```
205
205
 
206
+ ## Testing & Demo
207
+
208
+ This library is tested using _RSpec_.
209
+
210
+ ```bash
211
+ bin/rspec
212
+ ```
213
+
214
+ A **system test** suite is included and is performed against a demo _Rails_ application in `spec/rails_app`. This
215
+ application can be started in development mode for "playing around" with _Shimmer_ during its development and add
216
+ more system tests. The `bin/dev` script starts that demo application.
217
+
218
+ The first time, you want to initialize the database and seed it some data.
219
+
220
+ ```bash
221
+ bin/setup
222
+ ```
223
+
224
+ Then you can start the development server.
225
+
226
+ ```bash
227
+ bin/dev
228
+ ```
229
+
206
230
  ## Contributing
207
231
 
208
232
  Bug reports and pull requests are welcome on GitHub at https://github.com/nerdgeschoss/shimmer. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/nerdgeschoss/shimmer/blob/master/CODE_OF_CONDUCT.md).
data/Rakefile CHANGED
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "bundler/gem_tasks"
4
- task default: %i[]
4
+ task default: []
data/bin/_guard-core ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application '_guard-core' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("guard", "_guard-core")
data/bin/dev ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env bash
2
+ (cd spec/rails_app && bin/dev)
data/bin/guard ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'guard' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("guard", "guard")
data/bin/rake ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'rake' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("rake", "rake")
data/bin/rspec ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'rspec' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
12
+
13
+ bundle_binstub = File.expand_path("bundle", __dir__)
14
+
15
+ if File.file?(bundle_binstub)
16
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
17
+ load(bundle_binstub)
18
+ else
19
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
20
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
21
+ end
22
+ end
23
+
24
+ require "rubygems"
25
+ require "bundler/setup"
26
+
27
+ load Gem.bin_path("rspec-core", "rspec")
data/bin/setup CHANGED
@@ -6,3 +6,6 @@ set -vx
6
6
  bundle install
7
7
 
8
8
  # Do any other automated setup that you need to do here
9
+
10
+ # Initialize the Rails demo & tests app.
11
+ (cd spec/rails_app && bin/setup)
@@ -1,15 +1,11 @@
1
+ # Most of those cops are documented here:
2
+ # https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Style
3
+ #
1
4
  AllCops:
2
5
  NewCops: disable
3
- Exclude:
4
- - '**/vendor/bundle/**/*'
5
- - '**/bin/**/*'
6
- - '**/db/schema.rb'
7
- - '**/node_modules/**/*'
8
6
 
9
7
  require:
10
- - standard
11
- - rubocop-rails
12
- - rubocop-rake
8
+ - standard # https://github.com/standardrb/standard
13
9
 
14
10
  inherit_gem:
15
11
  standard: config/base.yml
@@ -23,10 +19,32 @@ Style/MutableConstant:
23
19
  Enabled: true
24
20
  EnforcedStyle: strict
25
21
 
26
- # Allow `.update_all`.
27
- Rails/SkipsModelValidations:
28
- Enabled: false
22
+ # Pass &:method_name as an argument to index_by instead of a block.
23
+ Style/SymbolProc:
24
+ Enabled: true
25
+
26
+ # Prefer `[:foo, :bar]` to `%i[foo bar]`.
27
+ Style/SymbolArray:
28
+ Enabled: true
29
+ EnforcedStyle: brackets
30
+
31
+ # Prefer `["foo", "bar"]` to `%w[foo bar]`.
32
+ Style/WordArray:
33
+ Enabled: true
34
+ EnforcedStyle: brackets
35
+
36
+ # <% if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("3.1") %>
37
+ Style/HashSyntax:
38
+ Enabled: true
39
+ EnforcedShorthandSyntax: always
40
+ # <% end %>
29
41
 
30
- # Allow Rake tasks to not require the full Rails app to be loaded.
31
- Rails/RakeEnvironment:
32
- Enabled: false
42
+ # Keep at the end of the file (after the individual cops configuration),
43
+ # otherwise, those cops are not configured properly.
44
+ inherit_from:
45
+ # <% Dir["#{File.expand_path(__dir__)}/rubocop_extensions/*.yml"].each do |filename| %>
46
+ # <% gem_name = filename.delete_suffix(".yml").delete_prefix("#{File.expand_path(__dir__)}/rubocop_extensions/") %>
47
+ # <% if Gem.loaded_specs.key?(gem_name) %>
48
+ - rubocop_extensions/<%= gem_name %>.yml
49
+ # <% end # if Gem.loaded_specs.key? %>
50
+ # <% end # Dir.foreach %>
@@ -0,0 +1,68 @@
1
+ # Documentation on the rules can be found here:
2
+ # https://github.com/DmitryTsepelev/rubocop-graphql/tree/master/lib/rubocop/cop/graphql
3
+ #
4
+ require:
5
+ - rubocop-graphql
6
+
7
+ GraphQL:
8
+ Enabled: false
9
+
10
+ # Keep mutation file ordered.
11
+ GraphQL/OrderedFields:
12
+ Enabled: true
13
+ Exclude:
14
+ - "*"
15
+ Include:
16
+ - '**/mutation_type.rb'
17
+
18
+ # Ensures snake case of argument name.
19
+ GraphQL/ArgumentName:
20
+ Enabled: true
21
+
22
+ # Detects duplicate argument definitions.
23
+ GraphQL/ArgumentUniqueness:
24
+ Enabled: true
25
+
26
+ # Prevents defining unnecessary resolver methods in cases when `:hash_key` option can be used.
27
+ GraphQL/FieldHashKey:
28
+ Enabled: true
29
+
30
+ # Prevents defining unnecessary resolver methods in cases when `:method option` can be used.
31
+ GraphQL/FieldMethod:
32
+ Enabled: true
33
+
34
+ # Ensures snake case of field name.
35
+ GraphQL/FieldName:
36
+ Enabled: true
37
+
38
+ # Detects duplicate field definitions within the same type.
39
+ GraphQL/FieldUniqueness:
40
+ Enabled: true
41
+
42
+ # Ensures type definitions are class-based (no longer legacy).
43
+ GraphQL/LegacyDsl:
44
+ Enabled: true
45
+
46
+ # Ensures fields with multiple definitions are grouped together
47
+ GraphQL/MultipleFieldDefinitions:
48
+ Enabled: true
49
+
50
+ # Forces `Relay::Node` implementations to expose an `authorized?` method.
51
+ GraphQL/NotAuthorizedNodeType:
52
+ Enabled: true
53
+
54
+ # Checks for has an unnecessary argument camelize.
55
+ GraphQL/UnnecessaryArgumentCamelize:
56
+ Enabled: true
57
+
58
+ # Prevents defining an unnecessary `alias`, `method`, or `resolver_method` arguements to fields.
59
+ GraphQL/UnnecessaryFieldAlias:
60
+ Enabled: true
61
+
62
+ # Checks for has an unnecessary field camelize.
63
+ GraphQL/UnnecessaryFieldCamelize:
64
+ Enabled: true
65
+
66
+ # Arguments should either be listed explicitly or `**rest` should be in the resolve signature.
67
+ GraphQL/UnusedArgument:
68
+ Enabled: true
@@ -0,0 +1,34 @@
1
+ AllCops:
2
+ Exclude:
3
+ - '**/vendor/bundle/**/*'
4
+ - '**/db/schema.rb'
5
+
6
+ require:
7
+ - rubocop-rails
8
+
9
+ Rails:
10
+ Enabled: false
11
+
12
+ # Prefer :bad_request over 400 to define HTTP status code.
13
+ Rails/HttpStatus:
14
+ Enabled: true
15
+
16
+ # Prefer index_by over map { ... }.to_h.
17
+ Rails/IndexBy:
18
+ Enabled: true
19
+
20
+ # Prefer index_with over each_with_object.
21
+ Rails/IndexWith:
22
+ Enabled: true
23
+
24
+ # Specify a :dependent option. (https://rails.rubystyle.guide#has_many-has_one-dependent-option)
25
+ Rails/HasManyOrHasOneDependent:
26
+ Enabled: true
27
+
28
+ # Specify an :inverse_of option.
29
+ Rails/InverseOf:
30
+ Enabled: true
31
+
32
+ # Specifying the default value for foreign_key is redundant.
33
+ Rails/RedundantForeignKey:
34
+ Enabled: true
@@ -0,0 +1,208 @@
1
+ require:
2
+ - rubocop-rspec
3
+
4
+ RSpec:
5
+ Enabled: false
6
+
7
+ # Check that instances are not being stubbed globally.
8
+ # Prefer instance doubles over stubbing any instance of a class.
9
+ RSpec/AnyInstance:
10
+ Enabled: true
11
+
12
+ # Checks that around blocks actually run the test.
13
+ # Would be a shame if the test would be green simply because it is not called.
14
+ RSpec/AroundBlock:
15
+ Enabled: true
16
+
17
+ # Be what? Not nil? Present? Truthy?
18
+ RSpec/Be:
19
+ Enabled: true
20
+
21
+ # The be matcher compares by identity while the eq matcher compares using ==.
22
+ # Booleans and nil can be compared by identity and therefore the be matcher is
23
+ # preferable as it is a more strict test.
24
+ RSpec/BeEq:
25
+ Enabled: true
26
+
27
+ # The be matcher compares by identity while the eq matcher compares using ==.
28
+ # Booleans and nil can be compared by identity and therefore the be matcher is
29
+ # preferable as it is a more strict test.
30
+ RSpec/BeEql:
31
+ Enabled: true
32
+
33
+ # Prefer `.to be_nil` to `.to be(nil)`.
34
+ RSpec/BeNil:
35
+ Enabled: true
36
+
37
+ # Avoid `before(:all)`, prefer `before(:each)` within a group.
38
+ RSpec/BeforeAfterAll:
39
+ Enabled: true
40
+
41
+ # Avoid `.to change(...).by(0)`, prefer `not_to change` and `.to not_change` (for composite).
42
+ RSpec/ChangeByZero:
43
+ Enabled: true
44
+
45
+ # Expect expectations in all tests.
46
+ # If it's just expecting it to not raise, wrap it in `expect do ... end.not_to raise`.
47
+ RSpec/EmptyExampleGroup:
48
+ Enabled: true
49
+
50
+ # Don't allow empty hooks.
51
+ RSpec/EmptyHook:
52
+ Enabled: true
53
+
54
+ # Separate groups.
55
+ RSpec/EmptyLineAfterExampleGroup:
56
+ Enabled: true
57
+
58
+ # Separate `let`s from tests.
59
+ RSpec/EmptyLineAfterFinalLet:
60
+ Enabled: true
61
+
62
+ # Separate hooks from tests.
63
+ RSpec/EmptyLineAfterHook:
64
+ Enabled: true
65
+
66
+ # Don't allow specs without description.
67
+ RSpec/ExampleWithoutDescription:
68
+ Enabled: true
69
+
70
+ # Checks for common mistakes in example descriptions.
71
+ RSpec/ExampleWording:
72
+ Enabled: true
73
+
74
+ # Trim descriptions.
75
+ RSpec/ExcessiveDocstringSpacing:
76
+ Enabled: true
77
+
78
+ # Do stdout expectations right.
79
+ RSpec/ExpectOutput:
80
+ Enabled: true
81
+
82
+ # Enforces spec file naming convention.
83
+ RSpec/FilePath:
84
+ Enabled: true
85
+
86
+ # Don't forget focussed tests (expecially useful for the CI to fail).
87
+ RSpec/Focus:
88
+ Enabled: true
89
+ AutoCorrect: false
90
+
91
+ # Checks for before/around/after hooks that come after an example.
92
+ RSpec/HooksBeforeExamples:
93
+ Enabled: true
94
+
95
+ # Don't expect something to be itself.
96
+ RSpec/IdenticalEqualityAssertion:
97
+ Enabled: true
98
+
99
+ # Explicitly declare `it` blocks.
100
+ RSpec/ImplicitBlockExpectation:
101
+ Enabled: true
102
+
103
+ # Prevent instance variable usage in specs.
104
+ RSpec/InstanceVariable:
105
+ Enabled: true
106
+
107
+ # Check that all matcher is used instead of iterating over an array.
108
+ RSpec/IteratedExpectation:
109
+ Enabled: true
110
+
111
+ # Checks that no class, module, or constant is declared.
112
+ # Constants, including classes and modules, when declared in a block scope,
113
+ # are defined in global namespace, and leak between examples.
114
+ # Prevents class re-opening, leading to unpredictable side effects.
115
+ RSpec/LeakyConstantDeclaration:
116
+ Enabled: true
117
+
118
+ # Force `let`s to be before tests.
119
+ RSpec/LetBeforeExamples:
120
+ Enabled: true
121
+
122
+ # Force groups to have descriptions or symbol.
123
+ RSpec/MissingExampleGroupArgument:
124
+ Enabled: true
125
+
126
+ # Files should have only one root `describe` block.
127
+ RSpec/MultipleDescribes:
128
+ Enabled: true
129
+
130
+ # Checks if an example group defines subject multiple times.
131
+ RSpec/MultipleSubjects:
132
+ Enabled: true
133
+
134
+ # Checks if an example contains any expectation.
135
+ RSpec/NoExpectationExample:
136
+ Enabled: false # considered, but gives false positives when expectations are inside of a re-used function
137
+
138
+ # Prefer `expect(...).not_to` to `expect(...).to_not`.
139
+ RSpec/NotToNot:
140
+ Enabled: true
141
+
142
+ # Prevent setting the same `let` block more than once.
143
+ RSpec/OverwritingSetup:
144
+ Enabled: true
145
+
146
+ # Prevent useless `around` hooks.
147
+ RSpec/RedundantAround:
148
+ Enabled: true
149
+
150
+ # Prevent duplicate description.
151
+ RSpec/RepeatedDescription:
152
+ Enabled: true
153
+
154
+ # Prevent duplicate example (test).
155
+ RSpec/RepeatedExample:
156
+ Enabled: true
157
+
158
+ # Detects duplicate in example group body.
159
+ RSpec/RepeatedExampleGroupBody:
160
+ Enabled: true
161
+
162
+ # Detects duplicate in example group description.
163
+ RSpec/RepeatedExampleGroupDescription:
164
+ Enabled: true
165
+
166
+ # Check for repeated include of shared examples.
167
+ RSpec/RepeatedIncludeExample:
168
+ Enabled: true
169
+
170
+ # Keep `let` blocks together.
171
+ RSpec/ScatteredLet:
172
+ Enabled: true
173
+
174
+ # Keep `setup` blocks (ex: group `before`) together.
175
+ RSpec/ScatteredSetup:
176
+ Enabled: true
177
+
178
+ # Checks for proper shared_context and shared_examples usage.
179
+ RSpec/SharedContext:
180
+ Enabled: true
181
+
182
+ # Enforces use of string to titleize shared examples.
183
+ RSpec/SharedExamples:
184
+ Enabled: true
185
+
186
+ # Checks that chains of messages contain more than one element.
187
+ RSpec/SingleArgumentMessageChain:
188
+ Enabled: true
189
+
190
+ # Skip either the whole example of not at all.
191
+ RSpec/SkipBlockInsideExample:
192
+ Enabled: true
193
+
194
+ # Be specific about what exception/error is expected.
195
+ RSpec/UnspecifiedException:
196
+ Enabled: true
197
+
198
+ # Use symbols for `let` and `subject` names.
199
+ RSpec/VariableDefinition:
200
+ Enabled: true
201
+
202
+ # Avoid empty expectation.
203
+ RSpec/VoidExpect:
204
+ Enabled: true
205
+
206
+ # Use proper `yield` stub syntax.
207
+ RSpec/Yield:
208
+ Enabled: true
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ source "https://rubygems.org"
4
+
5
+ # Specify your gem's dependencies in shimmer.gemspec
6
+ gemspec path: ".."
7
+
8
+ gem "rails", "~> 7.0.0"
9
+ gem "propshaft"
10
+ gem "sqlite3"
11
+ gem "puma"
12
+ gem "jsbundling-rails"
13
+ gem "turbo-rails"
14
+ gem "stimulus-rails"
15
+ gem "cssbundling-rails"
16
+ gem "jbuilder"
17
+ gem "bootsnap", require: false
18
+ gem "dotenv"
19
+ gem "slim-rails"
20
+ gem "awesome_print"
21
+ gem "dotenv-rails"
22
+
23
+ group :development, :test do
24
+ gem "debug", platforms: %i[mri mingw x64_mingw]
25
+ gem "rake"
26
+ gem "rspec-rails"
27
+ gem "rspec-retry"
28
+ gem "pry"
29
+ gem "pry-rails"
30
+ gem "pry-byebug"
31
+ gem "pry-doc"
32
+ gem "guard"
33
+ gem "guard-rspec"
34
+ gem "capybara"
35
+ gem "rack_session_access"
36
+ gem "cuprite"
37
+ gem "standard"
38
+ gem "rubocop"
39
+ gem "rubocop-rails"
40
+ gem "rubocop-performance"
41
+ gem "rubocop-rspec"
42
+ gem "rubocop-rake"
43
+ end
44
+
45
+ group :development do
46
+ gem "web-console"
47
+ gem "annotate"
48
+ end
@@ -10,7 +10,7 @@ module Shimmer
10
10
  def request_details(params)
11
11
  name = params[:user] ? JSON.parse(params[:user])["name"] : {}
12
12
  headers = {
13
- 'Content-Type': "application/x-www-form-urlencoded"
13
+ "Content-Type": "application/x-www-form-urlencoded"
14
14
  }
15
15
  form = {
16
16
  grant_type: "authorization_code",
@@ -72,7 +72,7 @@ module Shimmer
72
72
  classes << "input--error"
73
73
  errors = safe_join(object.errors[method].map { |e| content_tag :div, e, class: "input__error" })
74
74
  end
75
- label = label == false ? nil : self.label(label_method || method, label, class: "input__label")
75
+ label = (label == false) ? nil : self.label(label_method || method, label, class: "input__label")
76
76
  description = description.presence ? content_tag(:div, description, class: "input__description") : nil
77
77
  content_tag(:div, safe_join([label, content, description, errors, extra].compact), class: ["input"] + classes, **options)
78
78
  end
@@ -3,16 +3,22 @@
3
3
  module Shimmer
4
4
  class Config
5
5
  include Singleton
6
+
6
7
  class MissingConfigError < StandardError; end
7
8
 
8
- def method_missing(method_name)
9
+ def method_missing(method_name, **options)
10
+ default_provided = options.key?(:default)
11
+ default_value = options.delete(:default) if default_provided
12
+ raise ArgumentError, "unknown option#{"s" if options.length > 1}: #{options.keys.join(", ")}." if options.any?
13
+
9
14
  method_name = method_name.to_s
10
15
  type = :string
11
16
  key = method_name.delete_suffix("!").delete_suffix("?")
12
17
  required = method_name.end_with?("!")
13
18
  type = :bool if method_name.end_with?("?")
14
19
  value = ENV[key.upcase].presence
15
- value ||= Rails.application.credentials.send(key)
20
+ value ||= Rails.application.credentials.public_send(key)
21
+ value = default_value if value.nil?
16
22
  raise MissingConfigError, "#{key.upcase} environment value is missing" if required && value.blank?
17
23
 
18
24
  coerce value, type
@@ -25,7 +31,7 @@ module Shimmer
25
31
  private
26
32
 
27
33
  def coerce(value, type)
28
- return !value.in?(["n", "0", "no", "false"]) if type == :bool && value.is_a?(String)
34
+ return !value.downcase.in?(["n", "0", "no", "false"]) if type == :bool && value.is_a?(String)
29
35
 
30
36
  value
31
37
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Shimmer
4
- VERSION = "0.0.28"
4
+ VERSION = "0.0.29"
5
5
  end
metadata CHANGED
@@ -1,113 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shimmer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.28
4
+ version: 0.0.29
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jens Ravens
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-02-02 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: rake
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '13.0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '13.0'
27
- - !ruby/object:Gem::Dependency
28
- name: standardrb
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: rubocop
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: rubocop-rails
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: rubocop-performance
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: rubocop-rspec
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: rubocop-rake
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
11
+ date: 2023-05-08 00:00:00.000000000 Z
12
+ dependencies: []
111
13
  description:
112
14
  email:
113
15
  - jens@nerdgeschoss.de
@@ -118,6 +20,7 @@ files:
118
20
  - ".editorconfig"
119
21
  - ".eslintrc.js"
120
22
  - ".prettierrc"
23
+ - ".rspec"
121
24
  - ".rubocop.yml"
122
25
  - ".ruby-version"
123
26
  - ".solargraph.yml"
@@ -126,14 +29,24 @@ files:
126
29
  - CODE_OF_CONDUCT.md
127
30
  - Gemfile
128
31
  - Gemfile.lock
32
+ - Guardfile
129
33
  - LICENSE.txt
130
34
  - README.md
131
35
  - Rakefile
36
+ - bin/_guard-core
132
37
  - bin/console
38
+ - bin/dev
39
+ - bin/guard
40
+ - bin/rake
41
+ - bin/rspec
133
42
  - bin/rubocop
134
43
  - bin/setup
135
44
  - bin/solargraph
136
45
  - config/rubocop_base.yml
46
+ - config/rubocop_extensions/graphql.yml
47
+ - config/rubocop_extensions/rails.yml
48
+ - config/rubocop_extensions/rspec.yml
49
+ - gemfiles/Gemfile-rails-7-0
137
50
  - lib/shimmer.rb
138
51
  - lib/shimmer/auth.rb
139
52
  - lib/shimmer/auth/apple_provider.rb
@@ -217,7 +130,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
217
130
  - !ruby/object:Gem::Version
218
131
  version: '0'
219
132
  requirements: []
220
- rubygems_version: 3.2.32
133
+ rubygems_version: 3.1.6
221
134
  signing_key:
222
135
  specification_version: 4
223
136
  summary: Shimmer brings all the bells and whistles of a hotwired application, right