volt-repo_cache 0.1.4
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 +7 -0
- data/.gitignore +19 -0
- data/.rspec +2 -0
- data/Gemfile +12 -0
- data/LICENSE.txt +22 -0
- data/README.md +314 -0
- data/Rakefile +1 -0
- data/lib/volt/repo_cache.rb +6 -0
- data/lib/volt/repo_cache/association.rb +100 -0
- data/lib/volt/repo_cache/cache.rb +116 -0
- data/lib/volt/repo_cache/collection.rb +259 -0
- data/lib/volt/repo_cache/model.rb +671 -0
- data/lib/volt/repo_cache/model_array.rb +169 -0
- data/lib/volt/repo_cache/util.rb +78 -0
- data/lib/volt/repo_cache/version.rb +5 -0
- data/spec/dummy/.gitignore +9 -0
- data/spec/dummy/README.md +4 -0
- data/spec/dummy/app/main/assets/css/app.css.scss +1 -0
- data/spec/dummy/app/main/config/dependencies.rb +11 -0
- data/spec/dummy/app/main/config/initializers/boot.rb +10 -0
- data/spec/dummy/app/main/config/routes.rb +14 -0
- data/spec/dummy/app/main/controllers/main_controller.rb +27 -0
- data/spec/dummy/app/main/models/customer.rb +4 -0
- data/spec/dummy/app/main/models/order.rb +6 -0
- data/spec/dummy/app/main/models/product.rb +5 -0
- data/spec/dummy/app/main/models/user.rb +12 -0
- data/spec/dummy/app/main/views/main/about.html +7 -0
- data/spec/dummy/app/main/views/main/index.html +6 -0
- data/spec/dummy/app/main/views/main/main.html +29 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/config/app.rb +147 -0
- data/spec/dummy/config/base/index.html +15 -0
- data/spec/dummy/config/initializers/boot.rb +4 -0
- data/spec/integration/sample_integration_spec.rb +11 -0
- data/spec/sample_spec.rb +7 -0
- data/spec/spec_helper.rb +18 -0
- data/volt-repo_cache.gemspec +38 -0
- metadata +287 -0
@@ -0,0 +1,15 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<%# IMPORTANT: Please read before changing! %>
|
4
|
+
<%# This file is rendered on the server using ERB, so it does NOT use Volt's %>
|
5
|
+
<%# normal template system. You can add to it, but keep in mind the template %>
|
6
|
+
<%# language difference. This file handles auto-loading all JS/Opal and CSS. %>
|
7
|
+
<head>
|
8
|
+
<meta charset="UTF-8" />
|
9
|
+
<%= javascript_tags %>
|
10
|
+
<%= css_tags %>
|
11
|
+
</head>
|
12
|
+
<body>
|
13
|
+
|
14
|
+
</body>
|
15
|
+
</html>
|
@@ -0,0 +1,4 @@
|
|
1
|
+
# Any ./config/initializers/*.rb files will when the app starts up on the server.
|
2
|
+
# To load code on the client (or client and server), you can use the
|
3
|
+
# config/initializers folder in a component in the app directory. This folder
|
4
|
+
# is only for things that are server only. (Usually for things like config)
|
@@ -0,0 +1,11 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe 'sample integration test', type: :feature do
|
4
|
+
# An example integration spec, this will only be run if ENV['BROWSER'] is
|
5
|
+
# specified. Current values for ENV['BROWSER'] are 'firefox' and 'phantom'
|
6
|
+
it 'should load the page' do
|
7
|
+
visit '/'
|
8
|
+
|
9
|
+
expect(page).to have_content('Home')
|
10
|
+
end
|
11
|
+
end
|
data/spec/sample_spec.rb
ADDED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
# Volt sets up rspec and capybara for testing.
|
2
|
+
require 'volt/spec/setup'
|
3
|
+
|
4
|
+
# When testing Volt component gems, we boot up a dummy app first to run the
|
5
|
+
# test in, so we have access to Volt itself.
|
6
|
+
dummy_app_path = File.join(File.dirname(__FILE__), 'dummy')
|
7
|
+
Volt.spec_setup(dummy_app_path)
|
8
|
+
|
9
|
+
RSpec.configure do |config|
|
10
|
+
config.run_all_when_everything_filtered = true
|
11
|
+
config.filter_run :focus
|
12
|
+
|
13
|
+
# Run specs in random order to surface order dependencies. If you find an
|
14
|
+
# order dependency and want to debug it, you can fix the order by providing
|
15
|
+
# the seed, which is printed after each run.
|
16
|
+
# --seed 1234
|
17
|
+
config.order = 'random'
|
18
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'volt/repo_cache/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "volt-repo_cache"
|
8
|
+
spec.version = Volt::RepoCache::VERSION
|
9
|
+
spec.authors = ["Colin Gunn"]
|
10
|
+
spec.email = ["colgunn@icloud.com"]
|
11
|
+
spec.summary = %q{Caching for collections, models and their associations loaded from Volt repositories.}
|
12
|
+
spec.description = %q{Cache multiple collections or query based subsets from any Volt repository. Provides faster and simpler client-side processing. Reduces the burden of promise handling. Changes - updates, creates and destroys - can be saved (flushed) back to the repository at model, collection or cache level.}
|
13
|
+
spec.homepage = "https://github.com/balmoral/volt-repo_cache"
|
14
|
+
spec.license = "MIT"
|
15
|
+
|
16
|
+
spec.files = `git ls-files -z`.split("\x0")
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.add_development_dependency "volt", "~> 0.9.6"
|
22
|
+
spec.add_development_dependency "rake"
|
23
|
+
|
24
|
+
# Testing gems
|
25
|
+
spec.add_development_dependency 'rspec', '~> 3.2.0'
|
26
|
+
spec.add_development_dependency 'opal-rspec', '~> 0.4.2'
|
27
|
+
spec.add_development_dependency 'capybara', '~> 2.4.4'
|
28
|
+
spec.add_development_dependency 'selenium-webdriver', '~> 2.47.0'
|
29
|
+
spec.add_development_dependency 'chromedriver-helper', '~> 1.0.0'
|
30
|
+
spec.add_development_dependency 'poltergeist', '~> 1.6.0'
|
31
|
+
|
32
|
+
# Gems to run the dummy app
|
33
|
+
spec.add_development_dependency 'volt-mongo', '0.1.1'
|
34
|
+
spec.add_development_dependency 'volt-bootstrap', '~> 0.1.0'
|
35
|
+
spec.add_development_dependency 'volt-bootstrap_jumbotron_theme', '~> 0.1.0'
|
36
|
+
spec.add_development_dependency 'volt-user_templates', '~> 0.4.0'
|
37
|
+
spec.add_development_dependency 'thin', '~> 1.6.0'
|
38
|
+
end
|
metadata
ADDED
@@ -0,0 +1,287 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: volt-repo_cache
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.4
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Colin Gunn
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2016-02-02 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: volt
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.9.6
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 0.9.6
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
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: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 3.2.0
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 3.2.0
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: opal-rspec
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 0.4.2
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 0.4.2
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: capybara
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 2.4.4
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 2.4.4
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: selenium-webdriver
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 2.47.0
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 2.47.0
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: chromedriver-helper
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 1.0.0
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 1.0.0
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: poltergeist
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 1.6.0
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 1.6.0
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: volt-mongo
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - '='
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 0.1.1
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - '='
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 0.1.1
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: volt-bootstrap
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: 0.1.0
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: 0.1.0
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: volt-bootstrap_jumbotron_theme
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: 0.1.0
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - "~>"
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: 0.1.0
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: volt-user_templates
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - "~>"
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: 0.4.0
|
174
|
+
type: :development
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - "~>"
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: 0.4.0
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: thin
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - "~>"
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: 1.6.0
|
188
|
+
type: :development
|
189
|
+
prerelease: false
|
190
|
+
version_requirements: !ruby/object:Gem::Requirement
|
191
|
+
requirements:
|
192
|
+
- - "~>"
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: 1.6.0
|
195
|
+
description: Cache multiple collections or query based subsets from any Volt repository.
|
196
|
+
Provides faster and simpler client-side processing. Reduces the burden of promise
|
197
|
+
handling. Changes - updates, creates and destroys - can be saved (flushed) back
|
198
|
+
to the repository at model, collection or cache level.
|
199
|
+
email:
|
200
|
+
- colgunn@icloud.com
|
201
|
+
executables: []
|
202
|
+
extensions: []
|
203
|
+
extra_rdoc_files: []
|
204
|
+
files:
|
205
|
+
- ".gitignore"
|
206
|
+
- ".rspec"
|
207
|
+
- Gemfile
|
208
|
+
- LICENSE.txt
|
209
|
+
- README.md
|
210
|
+
- Rakefile
|
211
|
+
- lib/volt/repo_cache.rb
|
212
|
+
- lib/volt/repo_cache/association.rb
|
213
|
+
- lib/volt/repo_cache/cache.rb
|
214
|
+
- lib/volt/repo_cache/collection.rb
|
215
|
+
- lib/volt/repo_cache/model.rb
|
216
|
+
- lib/volt/repo_cache/model_array.rb
|
217
|
+
- lib/volt/repo_cache/util.rb
|
218
|
+
- lib/volt/repo_cache/version.rb
|
219
|
+
- spec/dummy/.gitignore
|
220
|
+
- spec/dummy/README.md
|
221
|
+
- spec/dummy/app/main/assets/css/app.css.scss
|
222
|
+
- spec/dummy/app/main/config/dependencies.rb
|
223
|
+
- spec/dummy/app/main/config/initializers/boot.rb
|
224
|
+
- spec/dummy/app/main/config/routes.rb
|
225
|
+
- spec/dummy/app/main/controllers/main_controller.rb
|
226
|
+
- spec/dummy/app/main/models/customer.rb
|
227
|
+
- spec/dummy/app/main/models/order.rb
|
228
|
+
- spec/dummy/app/main/models/product.rb
|
229
|
+
- spec/dummy/app/main/models/user.rb
|
230
|
+
- spec/dummy/app/main/views/main/about.html
|
231
|
+
- spec/dummy/app/main/views/main/index.html
|
232
|
+
- spec/dummy/app/main/views/main/main.html
|
233
|
+
- spec/dummy/config.ru
|
234
|
+
- spec/dummy/config/app.rb
|
235
|
+
- spec/dummy/config/base/index.html
|
236
|
+
- spec/dummy/config/initializers/boot.rb
|
237
|
+
- spec/integration/sample_integration_spec.rb
|
238
|
+
- spec/sample_spec.rb
|
239
|
+
- spec/spec_helper.rb
|
240
|
+
- volt-repo_cache.gemspec
|
241
|
+
homepage: https://github.com/balmoral/volt-repo_cache
|
242
|
+
licenses:
|
243
|
+
- MIT
|
244
|
+
metadata: {}
|
245
|
+
post_install_message:
|
246
|
+
rdoc_options: []
|
247
|
+
require_paths:
|
248
|
+
- lib
|
249
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
250
|
+
requirements:
|
251
|
+
- - ">="
|
252
|
+
- !ruby/object:Gem::Version
|
253
|
+
version: '0'
|
254
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
255
|
+
requirements:
|
256
|
+
- - ">="
|
257
|
+
- !ruby/object:Gem::Version
|
258
|
+
version: '0'
|
259
|
+
requirements: []
|
260
|
+
rubyforge_project:
|
261
|
+
rubygems_version: 2.4.6
|
262
|
+
signing_key:
|
263
|
+
specification_version: 4
|
264
|
+
summary: Caching for collections, models and their associations loaded from Volt repositories.
|
265
|
+
test_files:
|
266
|
+
- spec/dummy/.gitignore
|
267
|
+
- spec/dummy/README.md
|
268
|
+
- spec/dummy/app/main/assets/css/app.css.scss
|
269
|
+
- spec/dummy/app/main/config/dependencies.rb
|
270
|
+
- spec/dummy/app/main/config/initializers/boot.rb
|
271
|
+
- spec/dummy/app/main/config/routes.rb
|
272
|
+
- spec/dummy/app/main/controllers/main_controller.rb
|
273
|
+
- spec/dummy/app/main/models/customer.rb
|
274
|
+
- spec/dummy/app/main/models/order.rb
|
275
|
+
- spec/dummy/app/main/models/product.rb
|
276
|
+
- spec/dummy/app/main/models/user.rb
|
277
|
+
- spec/dummy/app/main/views/main/about.html
|
278
|
+
- spec/dummy/app/main/views/main/index.html
|
279
|
+
- spec/dummy/app/main/views/main/main.html
|
280
|
+
- spec/dummy/config.ru
|
281
|
+
- spec/dummy/config/app.rb
|
282
|
+
- spec/dummy/config/base/index.html
|
283
|
+
- spec/dummy/config/initializers/boot.rb
|
284
|
+
- spec/integration/sample_integration_spec.rb
|
285
|
+
- spec/sample_spec.rb
|
286
|
+
- spec/spec_helper.rb
|
287
|
+
has_rdoc:
|