hyper-model 1.0.alpha1.3 → 1.0.alpha1.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +4 -1
  3. data/.rspec +0 -1
  4. data/Gemfile +6 -5
  5. data/Rakefile +18 -6
  6. data/hyper-model.gemspec +12 -20
  7. data/lib/active_record_base.rb +95 -28
  8. data/lib/enumerable/pluck.rb +3 -2
  9. data/lib/hyper-model.rb +4 -1
  10. data/lib/hyper_model/version.rb +1 -1
  11. data/lib/hyper_react/input_tags.rb +2 -1
  12. data/lib/reactive_record/active_record/associations.rb +125 -35
  13. data/lib/reactive_record/active_record/base.rb +32 -0
  14. data/lib/reactive_record/active_record/class_methods.rb +125 -53
  15. data/lib/reactive_record/active_record/error.rb +2 -0
  16. data/lib/reactive_record/active_record/errors.rb +8 -4
  17. data/lib/reactive_record/active_record/instance_methods.rb +73 -5
  18. data/lib/reactive_record/active_record/public_columns_hash.rb +25 -26
  19. data/lib/reactive_record/active_record/reactive_record/backing_record_inspector.rb +22 -5
  20. data/lib/reactive_record/active_record/reactive_record/base.rb +50 -24
  21. data/lib/reactive_record/active_record/reactive_record/collection.rb +196 -63
  22. data/lib/reactive_record/active_record/reactive_record/dummy_polymorph.rb +22 -0
  23. data/lib/reactive_record/active_record/reactive_record/dummy_value.rb +27 -15
  24. data/lib/reactive_record/active_record/reactive_record/getters.rb +33 -10
  25. data/lib/reactive_record/active_record/reactive_record/isomorphic_base.rb +71 -44
  26. data/lib/reactive_record/active_record/reactive_record/lookup_tables.rb +5 -5
  27. data/lib/reactive_record/active_record/reactive_record/operations.rb +7 -1
  28. data/lib/reactive_record/active_record/reactive_record/scoped_collection.rb +3 -6
  29. data/lib/reactive_record/active_record/reactive_record/setters.rb +105 -68
  30. data/lib/reactive_record/active_record/reactive_record/while_loading.rb +22 -1
  31. data/lib/reactive_record/broadcast.rb +59 -25
  32. data/lib/reactive_record/interval.rb +3 -3
  33. data/lib/reactive_record/permissions.rb +1 -1
  34. data/lib/reactive_record/scope_description.rb +3 -2
  35. data/lib/reactive_record/server_data_cache.rb +78 -48
  36. data/polymorph-notes.md +143 -0
  37. metadata +52 -157
  38. data/Gemfile.lock +0 -440
data/Gemfile.lock DELETED
@@ -1,440 +0,0 @@
1
- PATH
2
- remote: ../hyper-component
3
- specs:
4
- hyper-component (1.0.alpha1.3)
5
- hyper-state (= 1.0.alpha1.3)
6
- hyperstack-config (= 1.0.alpha1.3)
7
- libv8 (~> 6.7.0)
8
- mini_racer (~> 0.2.4)
9
- opal (>= 0.11.0, < 0.12.0)
10
- opal-activesupport (~> 0.3.1)
11
- react-rails (>= 2.4.0, < 2.5.0)
12
-
13
- PATH
14
- remote: ../hyper-operation
15
- specs:
16
- hyper-operation (1.0.alpha1.3)
17
- activerecord (>= 4.0.0)
18
- hyper-component (= 1.0.alpha1.3)
19
- mutations
20
- opal-activesupport (~> 0.3.1)
21
- tty-table
22
-
23
- PATH
24
- remote: ../hyper-state
25
- specs:
26
- hyper-state (1.0.alpha1.3)
27
- hyperstack-config (= 1.0.alpha1.3)
28
- opal (>= 0.11.0, < 0.12.0)
29
-
30
- PATH
31
- remote: ../hyperstack-config
32
- specs:
33
- hyperstack-config (1.0.alpha1.3)
34
- listen (~> 3.0)
35
- mini_racer (~> 0.2.4)
36
- opal (>= 0.11.0, < 0.12.0)
37
- opal-browser (~> 0.2.0)
38
- uglifier
39
- websocket
40
-
41
- PATH
42
- remote: .
43
- specs:
44
- hyper-model (1.0.alpha1.3)
45
- activemodel
46
- activerecord (>= 4.0.0)
47
- hyper-component (= 1.0.alpha1.3)
48
- hyper-operation (= 1.0.alpha1.3)
49
-
50
- GEM
51
- remote: https://rubygems.org/
52
- specs:
53
- abstract_type (0.0.7)
54
- actioncable (5.2.1)
55
- actionpack (= 5.2.1)
56
- nio4r (~> 2.0)
57
- websocket-driver (>= 0.6.1)
58
- actionmailer (5.2.1)
59
- actionpack (= 5.2.1)
60
- actionview (= 5.2.1)
61
- activejob (= 5.2.1)
62
- mail (~> 2.5, >= 2.5.4)
63
- rails-dom-testing (~> 2.0)
64
- actionpack (5.2.1)
65
- actionview (= 5.2.1)
66
- activesupport (= 5.2.1)
67
- rack (~> 2.0)
68
- rack-test (>= 0.6.3)
69
- rails-dom-testing (~> 2.0)
70
- rails-html-sanitizer (~> 1.0, >= 1.0.2)
71
- actionview (5.2.1)
72
- activesupport (= 5.2.1)
73
- builder (~> 3.1)
74
- erubi (~> 1.4)
75
- rails-dom-testing (~> 2.0)
76
- rails-html-sanitizer (~> 1.0, >= 1.0.3)
77
- activejob (5.2.1)
78
- activesupport (= 5.2.1)
79
- globalid (>= 0.3.6)
80
- activemodel (5.2.1)
81
- activesupport (= 5.2.1)
82
- activerecord (5.2.1)
83
- activemodel (= 5.2.1)
84
- activesupport (= 5.2.1)
85
- arel (>= 9.0)
86
- activestorage (5.2.1)
87
- actionpack (= 5.2.1)
88
- activerecord (= 5.2.1)
89
- marcel (~> 0.3.1)
90
- activesupport (5.2.1)
91
- concurrent-ruby (~> 1.0, >= 1.0.2)
92
- i18n (>= 0.7, < 2)
93
- minitest (~> 5.1)
94
- tzinfo (~> 1.1)
95
- adamantium (0.2.0)
96
- ice_nine (~> 0.11.0)
97
- memoizable (~> 0.4.0)
98
- addressable (2.5.2)
99
- public_suffix (>= 2.0.2, < 4.0)
100
- archive-zip (0.11.0)
101
- io-like (~> 0.3.0)
102
- arel (9.0.0)
103
- ast (2.4.0)
104
- babel-source (5.8.35)
105
- babel-transpiler (0.7.0)
106
- babel-source (>= 4.0, < 6)
107
- execjs (~> 2.0)
108
- builder (3.2.3)
109
- capybara (3.7.2)
110
- addressable
111
- mini_mime (>= 0.1.3)
112
- nokogiri (~> 1.8)
113
- rack (>= 1.6.0)
114
- rack-test (>= 0.6.3)
115
- xpath (~> 3.1)
116
- childprocess (0.9.0)
117
- ffi (~> 1.0, >= 1.0.11)
118
- chromedriver-helper (1.2.0)
119
- archive-zip (~> 0.10)
120
- nokogiri (~> 1.8)
121
- coderay (1.1.2)
122
- concord (0.1.5)
123
- adamantium (~> 0.2.0)
124
- equalizer (~> 0.0.9)
125
- concurrent-ruby (1.0.5)
126
- connection_pool (2.2.2)
127
- cookiejar (0.3.3)
128
- crass (1.0.4)
129
- daemons (1.2.6)
130
- database_cleaner (1.7.0)
131
- diff-lcs (1.3)
132
- em-http-request (1.1.5)
133
- addressable (>= 2.3.4)
134
- cookiejar (!= 0.3.1)
135
- em-socksify (>= 0.3)
136
- eventmachine (>= 1.0.3)
137
- http_parser.rb (>= 0.6.0)
138
- em-socksify (0.3.2)
139
- eventmachine (>= 1.0.0.beta.4)
140
- em-websocket (0.5.1)
141
- eventmachine (>= 0.12.9)
142
- http_parser.rb (~> 0.6.0)
143
- equalizer (0.0.11)
144
- equatable (0.5.0)
145
- erubi (1.7.1)
146
- eventmachine (1.2.7)
147
- execjs (2.7.0)
148
- factory_bot (4.11.1)
149
- activesupport (>= 3.0.0)
150
- factory_bot_rails (4.11.1)
151
- factory_bot (~> 4.11.1)
152
- railties (>= 3.0.0)
153
- ffi (1.9.25)
154
- globalid (0.4.1)
155
- activesupport (>= 4.2.0)
156
- hike (1.2.3)
157
- http_parser.rb (0.6.0)
158
- httpclient (2.8.3)
159
- i18n (1.1.0)
160
- concurrent-ruby (~> 1.0)
161
- ice_nine (0.11.2)
162
- interception (0.5)
163
- io-like (0.3.0)
164
- jquery-rails (4.3.3)
165
- rails-dom-testing (>= 1, < 3)
166
- railties (>= 4.2.0)
167
- thor (>= 0.14, < 2.0)
168
- libv8 (6.7.288.46.1)
169
- listen (3.1.5)
170
- rb-fsevent (~> 0.9, >= 0.9.4)
171
- rb-inotify (~> 0.9, >= 0.9.7)
172
- ruby_dep (~> 1.2)
173
- loofah (2.2.2)
174
- crass (~> 1.0.2)
175
- nokogiri (>= 1.5.9)
176
- mail (2.7.0)
177
- mini_mime (>= 0.1.1)
178
- marcel (0.3.2)
179
- mimemagic (~> 0.3.2)
180
- memoizable (0.4.2)
181
- thread_safe (~> 0.3, >= 0.3.1)
182
- method_source (0.9.0)
183
- mimemagic (0.3.2)
184
- mini_mime (1.0.1)
185
- mini_portile2 (2.3.0)
186
- mini_racer (0.2.4)
187
- libv8 (>= 6.3)
188
- minitest (5.11.3)
189
- multi_json (1.13.1)
190
- mutations (0.8.3)
191
- activesupport
192
- mysql2 (0.5.2)
193
- necromancer (0.4.0)
194
- nio4r (2.3.1)
195
- nokogiri (1.8.4)
196
- mini_portile2 (~> 2.3.0)
197
- opal (0.11.3)
198
- ast (>= 2.3.0)
199
- hike (~> 1.2)
200
- parser (= 2.3.3.1)
201
- sourcemap (~> 0.1.0)
202
- opal-activesupport (0.3.1)
203
- opal (>= 0.5.0, < 1.0.0)
204
- opal-browser (0.2.0)
205
- opal
206
- paggio
207
- opal-jquery (0.4.3)
208
- opal (>= 0.10.0, < 0.12.0)
209
- opal-rails (0.9.5)
210
- jquery-rails
211
- opal (>= 0.11.0, < 0.12)
212
- opal-activesupport (>= 0.0.5)
213
- opal-jquery (~> 0.4.0)
214
- opal-sprockets (~> 0.4.2)
215
- rails (>= 4.1, < 6.0)
216
- sprockets-rails (>= 2.3.3, < 4.0)
217
- opal-sprockets (0.4.2.0.11.0.3.1)
218
- opal (~> 0.11.0)
219
- sprockets (~> 3.1)
220
- tilt (>= 1.4)
221
- paggio (0.2.6)
222
- parallel (1.12.1)
223
- parser (2.3.3.1)
224
- ast (~> 2.2)
225
- pastel (0.7.2)
226
- equatable (~> 0.5.0)
227
- tty-color (~> 0.4.0)
228
- powerpack (0.1.2)
229
- procto (0.0.3)
230
- pry (0.11.3)
231
- coderay (~> 1.1.0)
232
- method_source (~> 0.9.0)
233
- pry-rescue (1.4.5)
234
- interception (>= 0.5)
235
- pry
236
- public_suffix (3.0.3)
237
- puma (3.12.0)
238
- pusher (1.3.1)
239
- httpclient (~> 2.7)
240
- multi_json (~> 1.0)
241
- pusher-signature (~> 0.1.8)
242
- pusher-fake (1.10.0)
243
- em-http-request (~> 1.1)
244
- em-websocket (~> 0.5)
245
- multi_json (~> 1.6)
246
- thin (~> 1.5)
247
- pusher-signature (0.1.8)
248
- rack (2.0.5)
249
- rack-test (1.1.0)
250
- rack (>= 1.0, < 3)
251
- rails (5.2.1)
252
- actioncable (= 5.2.1)
253
- actionmailer (= 5.2.1)
254
- actionpack (= 5.2.1)
255
- actionview (= 5.2.1)
256
- activejob (= 5.2.1)
257
- activemodel (= 5.2.1)
258
- activerecord (= 5.2.1)
259
- activestorage (= 5.2.1)
260
- activesupport (= 5.2.1)
261
- bundler (>= 1.3.0)
262
- railties (= 5.2.1)
263
- sprockets-rails (>= 2.0.0)
264
- rails-dom-testing (2.0.3)
265
- activesupport (>= 4.2.0)
266
- nokogiri (>= 1.6)
267
- rails-html-sanitizer (1.0.4)
268
- loofah (~> 2.2, >= 2.2.2)
269
- railties (5.2.1)
270
- actionpack (= 5.2.1)
271
- activesupport (= 5.2.1)
272
- method_source
273
- rake (>= 0.8.7)
274
- thor (>= 0.19.0, < 2.0)
275
- rainbow (2.2.2)
276
- rake
277
- rake (12.3.1)
278
- rb-fsevent (0.10.3)
279
- rb-inotify (0.10.0)
280
- ffi (~> 1.0)
281
- react-rails (2.4.7)
282
- babel-transpiler (>= 0.7.0)
283
- connection_pool
284
- execjs
285
- railties (>= 3.2)
286
- tilt
287
- reactrb-rails-generator (0.2.0)
288
- rails (>= 4.0.0)
289
- rspec (3.8.0)
290
- rspec-core (~> 3.8.0)
291
- rspec-expectations (~> 3.8.0)
292
- rspec-mocks (~> 3.8.0)
293
- rspec-collection_matchers (1.1.3)
294
- rspec-expectations (>= 2.99.0.beta1)
295
- rspec-core (3.8.0)
296
- rspec-support (~> 3.8.0)
297
- rspec-expectations (3.8.1)
298
- diff-lcs (>= 1.2.0, < 2.0)
299
- rspec-support (~> 3.8.0)
300
- rspec-its (1.2.0)
301
- rspec-core (>= 3.0.0)
302
- rspec-expectations (>= 3.0.0)
303
- rspec-mocks (3.8.0)
304
- diff-lcs (>= 1.2.0, < 2.0)
305
- rspec-support (~> 3.8.0)
306
- rspec-rails (3.8.0)
307
- actionpack (>= 3.0)
308
- activesupport (>= 3.0)
309
- railties (>= 3.0)
310
- rspec-core (~> 3.8.0)
311
- rspec-expectations (~> 3.8.0)
312
- rspec-mocks (~> 3.8.0)
313
- rspec-support (~> 3.8.0)
314
- rspec-steps (2.1.1)
315
- rspec (>= 3.0, < 3.99)
316
- rspec-support (3.8.0)
317
- rspec-wait (0.0.9)
318
- rspec (>= 3, < 4)
319
- rubocop (0.51.0)
320
- parallel (~> 1.10)
321
- parser (>= 2.3.3.1, < 3.0)
322
- powerpack (~> 0.1)
323
- rainbow (>= 2.2.2, < 3.0)
324
- ruby-progressbar (~> 1.7)
325
- unicode-display_width (~> 1.0, >= 1.0.1)
326
- ruby-progressbar (1.10.0)
327
- ruby_dep (1.5.0)
328
- rubyzip (1.2.2)
329
- selenium-webdriver (3.14.0)
330
- childprocess (~> 0.5)
331
- rubyzip (~> 1.2)
332
- shoulda (3.6.0)
333
- shoulda-context (~> 1.0, >= 1.0.1)
334
- shoulda-matchers (~> 3.0)
335
- shoulda-context (1.2.2)
336
- shoulda-matchers (3.1.2)
337
- activesupport (>= 4.0.0)
338
- sourcemap (0.1.1)
339
- spring (2.0.2)
340
- activesupport (>= 4.2)
341
- spring-commands-rspec (1.0.4)
342
- spring (>= 0.9.1)
343
- sprockets (3.7.2)
344
- concurrent-ruby (~> 1.0)
345
- rack (> 1, < 3)
346
- sprockets-rails (3.2.1)
347
- actionpack (>= 4.0)
348
- activesupport (>= 4.0)
349
- sprockets (>= 3.0.0)
350
- sqlite3 (1.3.13)
351
- strings (0.1.4)
352
- strings-ansi (~> 0.1.0)
353
- unicode-display_width (~> 1.4.0)
354
- unicode_utils (~> 1.4.0)
355
- strings-ansi (0.1.0)
356
- thin (1.7.2)
357
- daemons (~> 1.0, >= 1.0.9)
358
- eventmachine (~> 1.0, >= 1.0.4)
359
- rack (>= 1, < 3)
360
- thor (0.20.0)
361
- thread_safe (0.3.6)
362
- tilt (2.0.8)
363
- timecop (0.8.1)
364
- tty-color (0.4.3)
365
- tty-screen (0.6.5)
366
- tty-table (0.10.0)
367
- equatable (~> 0.5.0)
368
- necromancer (~> 0.4.0)
369
- pastel (~> 0.7.2)
370
- strings (~> 0.1.0)
371
- tty-screen (~> 0.6.4)
372
- tzinfo (1.2.5)
373
- thread_safe (~> 0.1)
374
- uglifier (4.1.20)
375
- execjs (>= 0.3.0, < 3)
376
- unicode-display_width (1.4.0)
377
- unicode_utils (1.4.0)
378
- unparser (0.2.8)
379
- abstract_type (~> 0.0.7)
380
- adamantium (~> 0.2.0)
381
- concord (~> 0.1.5)
382
- diff-lcs (~> 1.3)
383
- equalizer (~> 0.0.9)
384
- parser (>= 2.3.1.2, < 2.6)
385
- procto (~> 0.0.2)
386
- websocket (1.2.8)
387
- websocket-driver (0.7.0)
388
- websocket-extensions (>= 0.1.0)
389
- websocket-extensions (0.1.3)
390
- xpath (3.1.0)
391
- nokogiri (~> 1.8)
392
-
393
- PLATFORMS
394
- ruby
395
-
396
- DEPENDENCIES
397
- bundler (>= 1.17.3, < 2.1)
398
- capybara
399
- chromedriver-helper (= 1.2.0)
400
- database_cleaner
401
- factory_bot_rails
402
- hyper-component!
403
- hyper-model!
404
- hyper-operation!
405
- hyper-state!
406
- hyperstack-config!
407
- libv8
408
- mini_racer (~> 0.2.4)
409
- mysql2
410
- opal-activesupport (~> 0.3.1)
411
- opal-browser (~> 0.2.0)
412
- opal-rails (~> 0.9.4)
413
- parser
414
- pry
415
- pry-rescue
416
- puma
417
- pusher
418
- pusher-fake
419
- rails (>= 4.0.0)
420
- rake
421
- react-rails (>= 2.4.0, < 2.5.0)
422
- reactrb-rails-generator
423
- rspec-collection_matchers
424
- rspec-expectations
425
- rspec-its
426
- rspec-mocks
427
- rspec-rails
428
- rspec-steps (~> 2.1.1)
429
- rspec-wait
430
- rubocop (~> 0.51.0)
431
- selenium-webdriver
432
- shoulda
433
- shoulda-matchers
434
- spring-commands-rspec
435
- sqlite3
436
- timecop (~> 0.8.1)
437
- unparser
438
-
439
- BUNDLED WITH
440
- 2.0.1