sproutcore 0.9.14 → 0.9.15
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +43 -0
- data/Manifest.txt +12 -3
- data/bin/sc-build +19 -3
- data/bin/sc-install +5 -0
- data/bin/sc-remove +5 -0
- data/bin/sc-update +5 -0
- data/frameworks/prototype/prototype.js +267 -230
- data/frameworks/sproutcore/HISTORY +281 -135
- data/frameworks/sproutcore/controllers/array.js +133 -22
- data/frameworks/sproutcore/controllers/collection.js +4 -5
- data/frameworks/sproutcore/controllers/object.js +8 -2
- data/frameworks/sproutcore/core.js +361 -159
- data/frameworks/sproutcore/{foundation → debug}/unittest.js +3 -3
- data/frameworks/sproutcore/english.lproj/detect-browser +1 -1
- data/frameworks/sproutcore/english.lproj/theme.css +2 -2
- data/frameworks/sproutcore/foundation/application.js +6 -1
- data/frameworks/sproutcore/foundation/benchmark.js +37 -11
- data/frameworks/sproutcore/foundation/date.js +1 -1
- data/frameworks/sproutcore/foundation/enumerator.js +105 -0
- data/frameworks/sproutcore/foundation/object.js +19 -20
- data/frameworks/sproutcore/foundation/responder.js +1 -1
- data/frameworks/sproutcore/foundation/set.js +164 -57
- data/frameworks/sproutcore/foundation/string.js +151 -47
- data/frameworks/sproutcore/foundation/utils.js +84 -3
- data/frameworks/sproutcore/lib/collection_view.rb +1 -0
- data/frameworks/sproutcore/license.js +28 -0
- data/frameworks/sproutcore/mixins/array.js +73 -209
- data/frameworks/sproutcore/mixins/delegate_support.js +1 -1
- data/frameworks/sproutcore/mixins/enumerable.js +1006 -0
- data/frameworks/sproutcore/mixins/observable.js +153 -84
- data/frameworks/sproutcore/mixins/selection_support.js +13 -1
- data/frameworks/sproutcore/models/record.js +74 -27
- data/frameworks/sproutcore/models/store.js +7 -3
- data/frameworks/sproutcore/server/rails_server.js +82 -0
- data/frameworks/sproutcore/server/rest_server.js +178 -0
- data/frameworks/sproutcore/{foundation → server}/server.js +101 -48
- data/frameworks/sproutcore/tests/core/guidFor.rhtml +114 -0
- data/frameworks/sproutcore/tests/foundation/array.rhtml +6 -7
- data/frameworks/sproutcore/tests/foundation/set.rhtml +254 -0
- data/frameworks/sproutcore/tests/mixins/enumerable.rhtml +421 -0
- data/frameworks/sproutcore/tests/mixins/observable.rhtml +127 -0
- data/frameworks/sproutcore/tests/models/model.rhtml +23 -22
- data/frameworks/sproutcore/tests/views/collection/incremental_rendering.rhtml +2 -2
- data/frameworks/sproutcore/tests/views/view/clippingFrame.rhtml +112 -109
- data/frameworks/sproutcore/tests/views/view/frame.rhtml +91 -88
- data/frameworks/sproutcore/validators/date.js +1 -7
- data/frameworks/sproutcore/views/collection/collection.js +7 -2
- data/frameworks/sproutcore/views/list_item.js +141 -3
- data/frameworks/sproutcore/views/split.js +14 -11
- data/frameworks/sproutcore/views/view.js +9 -6
- data/lib/sproutcore/build_tools/html_builder.rb +19 -3
- data/lib/sproutcore/build_tools/resource_builder.rb +9 -3
- data/lib/sproutcore/bundle.rb +21 -0
- data/lib/sproutcore/bundle_manifest.rb +64 -20
- data/lib/sproutcore/helpers/capture_helper.rb +2 -2
- data/lib/sproutcore/library.rb +33 -9
- data/lib/sproutcore/merb/bundle_controller.rb +16 -5
- data/lib/sproutcore/version.rb +1 -1
- data/lib/sproutcore/view_helpers.rb +1 -1
- data/{sc-config.rb → sc-config} +5 -2
- metadata +24 -5
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'yaml'
|
2
|
+
require 'digest/md5'
|
2
3
|
|
3
4
|
module SproutCore
|
4
5
|
|
@@ -25,6 +26,8 @@ module SproutCore
|
|
25
26
|
build!
|
26
27
|
end
|
27
28
|
|
29
|
+
def bundle_name; bundle.nil? ? nil : bundle.bundle_name; end
|
30
|
+
|
28
31
|
# ==== Returns
|
29
32
|
# All entries as an array
|
30
33
|
#
|
@@ -51,19 +54,29 @@ module SproutCore
|
|
51
54
|
# ==== Returns
|
52
55
|
# true if javascripts should be combined
|
53
56
|
def combine_javascript?
|
54
|
-
|
57
|
+
modes = bundle.library.combine_javascript_build_modes(bundle_name)
|
58
|
+
modes.include?(build_mode)
|
55
59
|
end
|
56
60
|
|
57
61
|
# ==== Returns
|
58
62
|
# true if stylesheets should be combined
|
59
63
|
def combine_stylesheets?
|
60
|
-
bundle.library.combine_stylesheets_build_modes
|
64
|
+
modes = bundle.library.combine_stylesheets_build_modes(bundle_name)
|
65
|
+
modes.include?(build_mode)
|
61
66
|
end
|
62
67
|
|
63
68
|
# ==== Returns
|
64
69
|
# true if stylesheets should be combined
|
65
70
|
def include_fixtures?
|
66
|
-
bundle.library.include_fixtures_build_modes
|
71
|
+
modes = bundle.library.include_fixtures_build_modes(bundle_name)
|
72
|
+
modes.include?(build_mode)
|
73
|
+
end
|
74
|
+
|
75
|
+
# ==== Returns
|
76
|
+
# true if debug code should be included in the build
|
77
|
+
def include_debug?
|
78
|
+
modes = bundle.library.include_debug_build_modes(bundle_name)
|
79
|
+
modes.include?(build_mode)
|
67
80
|
end
|
68
81
|
|
69
82
|
protected
|
@@ -86,21 +99,24 @@ module SproutCore
|
|
86
99
|
working.each { |x| x.hidden = true }
|
87
100
|
end
|
88
101
|
|
89
|
-
# STEP 5: Add entry for javascript.js & stylesheet.js. If in production
|
90
|
-
# mode, set these to visible and hide the composite. If in dev mode, do
|
91
|
-
# the opposite.
|
92
|
-
|
93
102
|
# STEP 3: Handle special build modes...
|
94
103
|
|
95
|
-
# a. Merge fixture types into JS types
|
104
|
+
# a. Merge fixture types into JS types if fixtures should be included
|
96
105
|
if self.include_fixtures? && !entries[:fixture].nil?
|
97
106
|
entries[:javascript] = (entries[:javascript] || []) + entries[:fixture]
|
98
107
|
else
|
99
108
|
entries.delete(:fixture)
|
100
109
|
end
|
101
110
|
|
102
|
-
# b.
|
103
|
-
|
111
|
+
# b. Merge debug types into JS types if debug should be included
|
112
|
+
if self.include_debug? && !entries[:debug].nil?
|
113
|
+
entries[:javascript] = (entries[:javascript] || []) + entries[:debug]
|
114
|
+
else
|
115
|
+
entries.delete(:debug)
|
116
|
+
end
|
117
|
+
|
118
|
+
# c. Rewrite all of the JS & CSS file paths and URLs to point to
|
119
|
+
# cached versions in development mode only.
|
104
120
|
# (Cached versions are written to _cache/filename-ctime.ext)
|
105
121
|
if self.build_mode == :development
|
106
122
|
(entries[:javascript] ||= []).each do | entry |
|
@@ -117,11 +133,14 @@ module SproutCore
|
|
117
133
|
entries.delete(:test)
|
118
134
|
end
|
119
135
|
|
120
|
-
#
|
136
|
+
# d. Rewrite the URLs for all other resources to go through the _src
|
121
137
|
# symlink
|
122
138
|
## -----> Already done build_entry_for()
|
139
|
+
|
140
|
+
# STEP 4: Generate entry for combined Javascript and CSS if needed
|
141
|
+
|
123
142
|
# a. Combine the JS file paths into a single entry for the
|
124
|
-
# javascript.js
|
143
|
+
# javascript.js if required for this build mode
|
125
144
|
hide_composite = self.combine_javascript?
|
126
145
|
if (working = entries[:javascript]) && working.size>0
|
127
146
|
entry = build_entry_for('javascript.js', :javascript, working, hide_composite)
|
@@ -131,7 +150,7 @@ module SproutCore
|
|
131
150
|
end
|
132
151
|
|
133
152
|
# b. Combine the CSS file paths into a single entry for the
|
134
|
-
# stylesheet.css
|
153
|
+
# stylesheet.css if required for this build mode
|
135
154
|
hide_composite = self.combine_stylesheets?
|
136
155
|
if (working = entries[:stylesheet]) && working.size>0
|
137
156
|
entry = build_entry_for('stylesheet.css', :stylesheet, working, hide_composite)
|
@@ -231,10 +250,16 @@ module SproutCore
|
|
231
250
|
:test
|
232
251
|
when /^fixtures\/.+\.js$/
|
233
252
|
:fixture
|
253
|
+
when /^debug\/.+\.js$/
|
254
|
+
:debug
|
234
255
|
when /\.rhtml$/
|
235
256
|
:html
|
236
257
|
when /\.html.erb$/
|
237
258
|
:html
|
259
|
+
when /\.haml$/
|
260
|
+
:html
|
261
|
+
when /\.html.haml$/
|
262
|
+
:html
|
238
263
|
when /\.css$/
|
239
264
|
:stylesheet
|
240
265
|
when /\.js$/
|
@@ -257,6 +282,7 @@ module SproutCore
|
|
257
282
|
ret.original_path = src_path
|
258
283
|
ret.hidden = false
|
259
284
|
ret.language = language
|
285
|
+
ret.use_digest_tokens = bundle.use_digest_tokens
|
260
286
|
|
261
287
|
# the filename is the src_path less any lproj in the front
|
262
288
|
ret.filename = src_path.gsub(/^[^\/]+.lproj\//,'')
|
@@ -308,7 +334,7 @@ module SproutCore
|
|
308
334
|
# Lookup the timestamp on the source path and interpolate that into the filename URL.
|
309
335
|
# also insert the _cache element.
|
310
336
|
def setup_timestamp_token(entry)
|
311
|
-
timestamp = entry.timestamp
|
337
|
+
timestamp = bundle.use_digest_tokens ? entry.digest : entry.timestamp
|
312
338
|
extname = File.extname(entry.url)
|
313
339
|
entry.url = entry.url.gsub(/#{extname}$/,"-#{timestamp}#{extname}") # add timestamp
|
314
340
|
|
@@ -331,8 +357,9 @@ module SproutCore
|
|
331
357
|
# use_source_directly:: if true, then this entry should be handled via the build symlink
|
332
358
|
# language:: the language in use when this entry was created
|
333
359
|
# composite:: If set, this will contain the filenames of other resources that should be combined to form this resource.
|
360
|
+
# bundle:: the owner bundle for this entry
|
334
361
|
#
|
335
|
-
class ManifestEntry < Struct.new(:filename, :ext, :source_path, :url, :build_path, :type, :original_path, :hidden, :use_source_directly, :language)
|
362
|
+
class ManifestEntry < Struct.new(:filename, :ext, :source_path, :url, :build_path, :type, :original_path, :hidden, :use_source_directly, :language, :use_digest_tokens)
|
336
363
|
def to_hash
|
337
364
|
ret = {}
|
338
365
|
self.members.zip(self.values).each { |p| ret[p[0]] = p[1] }
|
@@ -369,25 +396,42 @@ module SproutCore
|
|
369
396
|
mtimes = (composite || []).map { |x| x.source_path_mtime }
|
370
397
|
ret = mtimes.compact.sort.last
|
371
398
|
else
|
372
|
-
ret = (
|
399
|
+
ret = (File.exists?(source_path)) ? File.mtime(source_path) : nil
|
373
400
|
end
|
374
401
|
return @source_path_mtime = ret
|
375
402
|
end
|
376
403
|
|
377
|
-
# Returns a timestamp based on the source_path_mtime. If
|
378
|
-
# returns a new timestamp
|
404
|
+
# Returns a timestamp based on the source_path_mtime. If
|
405
|
+
# source_path_mtime is nil, always returns a new timestamp
|
379
406
|
def timestamp
|
380
407
|
(source_path_mtime || Time.now).to_i.to_s
|
381
408
|
end
|
382
409
|
|
383
|
-
# Returns
|
410
|
+
# Returns an MD5::digest of the file. If the file is composite, returns
|
411
|
+
# the MD5 digest of all the composite files.
|
412
|
+
def digest
|
413
|
+
return @digest unless @digest.nil?
|
414
|
+
|
415
|
+
if composite?
|
416
|
+
digests = (composite || []).map { |x| x.digest }
|
417
|
+
ret = Digest::SHA1.hexdigest(digests.join)
|
418
|
+
else
|
419
|
+
ret = (File.exists?(source_path)) ? Digest::SHA1.hexdigest(File.read(source_path)) : '0000'
|
420
|
+
end
|
421
|
+
@digest = ret
|
422
|
+
end
|
423
|
+
|
424
|
+
|
425
|
+
# Returns the content type for this entry. Based on a set of MIME_TYPES
|
426
|
+
# borrowed from Rack
|
384
427
|
def content_type
|
385
428
|
MIME_TYPES[File.extname(build_path)[1..-1]] || 'text/plain'
|
386
429
|
end
|
387
430
|
|
388
431
|
# Returns a URL that takes into account caching requirements.
|
389
432
|
def cacheable_url
|
390
|
-
|
433
|
+
token = (use_digest_tokens) ? digest : timestamp
|
434
|
+
[url, token].compact.join('?')
|
391
435
|
end
|
392
436
|
|
393
437
|
# :stopdoc:
|
data/lib/sproutcore/library.rb
CHANGED
@@ -170,12 +170,26 @@ module SproutCore
|
|
170
170
|
def bundles
|
171
171
|
@cached_all_bundles ||= (client_bundles + framework_bundles)
|
172
172
|
end
|
173
|
+
|
174
|
+
# ==== Returns
|
175
|
+
# All known bundles, except those whose autobuild setting is off.
|
176
|
+
def default_bundles_for_build
|
177
|
+
bundles.reject { |x| !x.autobuild? }
|
178
|
+
end
|
173
179
|
|
174
180
|
# Reloads the manifest for all bundles.
|
175
181
|
def reload_bundles!
|
176
182
|
bundles.each { |b| b.reload! }
|
177
183
|
end
|
178
184
|
|
185
|
+
def invalidate_bundle_caches
|
186
|
+
@cached_all_bundles =
|
187
|
+
@cached_framework_bundles =
|
188
|
+
@cached_client_bundles =
|
189
|
+
@bundles =
|
190
|
+
@cached_bundles_by_url = nil
|
191
|
+
end
|
192
|
+
|
179
193
|
# Build all of the bundles in the library. This can take awhile but it is the simple
|
180
194
|
# way to get all of your code onto disk in a deployable state
|
181
195
|
def build(*languages)
|
@@ -194,8 +208,11 @@ module SproutCore
|
|
194
208
|
# 1. merge together the :all configs.
|
195
209
|
# 2. Find the deepest config for the bundle specifically and merge that.
|
196
210
|
#
|
197
|
-
def environment_for(bundle_name)
|
211
|
+
def environment_for(bundle_name=nil)
|
198
212
|
|
213
|
+
# If no bundle name is provided, then just return the base environment.
|
214
|
+
return base_environment if bundle_name.nil?
|
215
|
+
|
199
216
|
# Get the bundle location info. This will return nil if the bundle
|
200
217
|
# is not found anywhere. In that case, return nil to indicate bundle
|
201
218
|
# does not exist.
|
@@ -260,32 +277,39 @@ module SproutCore
|
|
260
277
|
# ==== Returns
|
261
278
|
# The current minification settings.
|
262
279
|
#
|
263
|
-
def minify_build_modes
|
264
|
-
env =
|
280
|
+
def minify_build_modes(bundle_name=nil)
|
281
|
+
env = environment_for(bundle_name) || {}
|
265
282
|
[(env[:minify_javascript] || :production)].flatten
|
266
283
|
end
|
267
284
|
|
268
285
|
# ==== Returns
|
269
286
|
# The build modes wherein javascript should be combined.
|
270
|
-
def combine_javascript_build_modes
|
271
|
-
env =
|
287
|
+
def combine_javascript_build_modes(bundle_name=nil)
|
288
|
+
env = environment_for(bundle_name) || {}
|
272
289
|
[(env[:combine_javascript] || :production)].flatten
|
273
290
|
end
|
274
291
|
|
275
292
|
# ==== Returns
|
276
293
|
# The build modes wherein javascript should be combined.
|
277
|
-
def combine_stylesheets_build_modes
|
278
|
-
env =
|
294
|
+
def combine_stylesheets_build_modes(bundle_name=nil)
|
295
|
+
env = environment_for(bundle_name) || {}
|
279
296
|
[(env[:combine_stylesheets] || :production)].flatten
|
280
297
|
end
|
281
298
|
|
282
299
|
# ==== Returns
|
283
300
|
# The build modes where fixtures should be included.
|
284
|
-
def include_fixtures_build_modes
|
285
|
-
env =
|
301
|
+
def include_fixtures_build_modes(bundle_name=nil)
|
302
|
+
env = environment_for(bundle_name) || {}
|
286
303
|
[(env[:include_fixtures] || :development)].flatten
|
287
304
|
end
|
288
305
|
|
306
|
+
# ==== Returns
|
307
|
+
# The build modes where debug code should be included.
|
308
|
+
def include_debug_build_modes(bundle_name=nil)
|
309
|
+
env = environment_for(bundle_name) || {}
|
310
|
+
[(env[:include_debug] || :development)].flatten
|
311
|
+
end
|
312
|
+
|
289
313
|
# ==== Returns
|
290
314
|
# A BundleInstaller configured for the receiver library.
|
291
315
|
#
|
@@ -26,6 +26,9 @@ module SproutCore
|
|
26
26
|
# request.
|
27
27
|
def main
|
28
28
|
|
29
|
+
self.reset_current_bundle
|
30
|
+
puts current_bundle
|
31
|
+
|
29
32
|
# Before we do anything, set the build_mode for the bundles. This
|
30
33
|
# shouldn't change during execution, but if we set this during the
|
31
34
|
# router call, the Merb.environment is sometimes not ready yet.
|
@@ -110,7 +113,8 @@ module SproutCore
|
|
110
113
|
FileUtils.mv(entry.build_path, build_path)
|
111
114
|
end
|
112
115
|
|
113
|
-
# And return the file. Set the content type using a mime-map borroed
|
116
|
+
# And return the file. Set the content type using a mime-map borroed
|
117
|
+
# from Rack.
|
114
118
|
headers['Content-Type'] = entry.content_type
|
115
119
|
headers['Content-Length'] = File.size(build_path).to_s
|
116
120
|
ret = File.open(build_path, 'rb')
|
@@ -132,8 +136,8 @@ module SproutCore
|
|
132
136
|
# Proxy the request and return the result...
|
133
137
|
def handle_proxy(url, proxy_url, opts ={})
|
134
138
|
|
135
|
-
# collect the method
|
136
|
-
http_method = request.
|
139
|
+
# collect the method (don't use request.method as that might unmasquerade delete and put requests)
|
140
|
+
http_method = request.env['REQUEST_METHOD'].to_s.downcase
|
137
141
|
|
138
142
|
# capture the origin host for cookies. strip away any port.
|
139
143
|
origin_host = request.host.gsub(/:[0-9]+$/,'')
|
@@ -164,7 +168,7 @@ module SproutCore
|
|
164
168
|
# Handle those that require a body.
|
165
169
|
no_body_method = %w(delete get copy head move options trace)
|
166
170
|
::Net::HTTP.start(http_host, http_port) do |http|
|
167
|
-
if no_body_method.include?(http_method
|
171
|
+
if no_body_method.include?(http_method)
|
168
172
|
response = http.send(http_method, http_path, headers)
|
169
173
|
else
|
170
174
|
http_body = request.raw_post
|
@@ -247,11 +251,18 @@ module SproutCore
|
|
247
251
|
|
248
252
|
# Try root path if nothing found
|
249
253
|
ret = bundle_map['/'] if ret.nil?
|
250
|
-
|
254
|
+
|
251
255
|
# Return
|
252
256
|
return (@current_bundle = ret)
|
253
257
|
end
|
254
258
|
|
259
|
+
# This method is called at the beginning of each request just in case
|
260
|
+
# there as a build error last time around.
|
261
|
+
def reset_current_bundle
|
262
|
+
library.invalidate_bundle_caches
|
263
|
+
@current_bundle = nil
|
264
|
+
end
|
265
|
+
|
255
266
|
# This method is used to redirect certain urls to an alternate bundle. If the
|
256
267
|
# match phrase matches the url, then both the url we use to fetch resources and the
|
257
268
|
# current_bundle will be swapped out.
|
data/lib/sproutcore/version.rb
CHANGED
@@ -570,7 +570,7 @@ module SproutCore
|
|
570
570
|
view_settings = { :id => item_id, :class => view_class, :properties => rc.render_view, :lazy => opts[:lazy], :outlet_path => opts[:outlet_path] }
|
571
571
|
|
572
572
|
# if an outlet item is passed, then register this as an outlet.
|
573
|
-
outlet = opts[:outlet] ||
|
573
|
+
outlet = opts[:outlet] || !cur_rc.nil?
|
574
574
|
define = opts[:define]
|
575
575
|
if outlet && cur_rc
|
576
576
|
outlet = item_id if outlet == true
|
data/{sc-config.rb → sc-config}
RENAMED
@@ -6,8 +6,11 @@ config :all, :required => [:sproutcore, :prototype]
|
|
6
6
|
config :sproutcore, :required => [:prototype]
|
7
7
|
config :prototype, :required => []
|
8
8
|
|
9
|
-
|
10
|
-
|
9
|
+
[:sc_test_runner, :sc_docs].each do |bundle_name|
|
10
|
+
config bundle_name,
|
11
|
+
:layout => "sproutcore:lib/index.rhtml",
|
12
|
+
:required => [:sproutcore, :prototype],
|
13
|
+
:autobuild => false
|
11
14
|
end
|
12
15
|
|
13
16
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sproutcore
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.15
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Charles Jolley
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-
|
12
|
+
date: 2008-08-11 00:00:00 -07:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -62,6 +62,16 @@ dependencies:
|
|
62
62
|
- !ruby/object:Gem::Version
|
63
63
|
version: "0"
|
64
64
|
version:
|
65
|
+
- !ruby/object:Gem::Dependency
|
66
|
+
name: hoe
|
67
|
+
type: :development
|
68
|
+
version_requirement:
|
69
|
+
version_requirements: !ruby/object:Gem::Requirement
|
70
|
+
requirements:
|
71
|
+
- - ">="
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: 1.7.0
|
74
|
+
version:
|
65
75
|
description: SproutCore - JavaScript Application Framework + Build Tools
|
66
76
|
email:
|
67
77
|
- charles@sproutit.com
|
@@ -145,6 +155,7 @@ files:
|
|
145
155
|
- frameworks/sproutcore/controllers/controller.js
|
146
156
|
- frameworks/sproutcore/controllers/object.js
|
147
157
|
- frameworks/sproutcore/core.js
|
158
|
+
- frameworks/sproutcore/debug/unittest.js
|
148
159
|
- frameworks/sproutcore/drag/drag.js
|
149
160
|
- frameworks/sproutcore/drag/drag_data_source.js
|
150
161
|
- frameworks/sproutcore/drag/drag_source.js
|
@@ -183,6 +194,7 @@ files:
|
|
183
194
|
- frameworks/sproutcore/foundation/benchmark.js
|
184
195
|
- frameworks/sproutcore/foundation/binding.js
|
185
196
|
- frameworks/sproutcore/foundation/date.js
|
197
|
+
- frameworks/sproutcore/foundation/enumerator.js
|
186
198
|
- frameworks/sproutcore/foundation/error.js
|
187
199
|
- frameworks/sproutcore/foundation/input_manager.js
|
188
200
|
- frameworks/sproutcore/foundation/json.js
|
@@ -194,12 +206,10 @@ files:
|
|
194
206
|
- frameworks/sproutcore/foundation/responder.js
|
195
207
|
- frameworks/sproutcore/foundation/routes.js
|
196
208
|
- frameworks/sproutcore/foundation/run_loop.js
|
197
|
-
- frameworks/sproutcore/foundation/server.js
|
198
209
|
- frameworks/sproutcore/foundation/set.js
|
199
210
|
- frameworks/sproutcore/foundation/string.js
|
200
211
|
- frameworks/sproutcore/foundation/timer.js
|
201
212
|
- frameworks/sproutcore/foundation/undo_manager.js
|
202
|
-
- frameworks/sproutcore/foundation/unittest.js
|
203
213
|
- frameworks/sproutcore/foundation/utils.js
|
204
214
|
- frameworks/sproutcore/globals/panels.js
|
205
215
|
- frameworks/sproutcore/globals/popups.js
|
@@ -211,11 +221,13 @@ files:
|
|
211
221
|
- frameworks/sproutcore/lib/form_views.rb
|
212
222
|
- frameworks/sproutcore/lib/index.rhtml
|
213
223
|
- frameworks/sproutcore/lib/menu_views.rb
|
224
|
+
- frameworks/sproutcore/license.js
|
214
225
|
- frameworks/sproutcore/mixins/array.js
|
215
226
|
- frameworks/sproutcore/mixins/collection_view_delegate.js
|
216
227
|
- frameworks/sproutcore/mixins/control.js
|
217
228
|
- frameworks/sproutcore/mixins/delegate_support.js
|
218
229
|
- frameworks/sproutcore/mixins/editable.js
|
230
|
+
- frameworks/sproutcore/mixins/enumerable.js
|
219
231
|
- frameworks/sproutcore/mixins/inline_editor_delegate.js
|
220
232
|
- frameworks/sproutcore/mixins/observable.js
|
221
233
|
- frameworks/sproutcore/mixins/scrollable.js
|
@@ -232,17 +244,24 @@ files:
|
|
232
244
|
- frameworks/sproutcore/panes/panel.js
|
233
245
|
- frameworks/sproutcore/panes/picker.js
|
234
246
|
- frameworks/sproutcore/README
|
247
|
+
- frameworks/sproutcore/server/rails_server.js
|
248
|
+
- frameworks/sproutcore/server/rest_server.js
|
249
|
+
- frameworks/sproutcore/server/server.js
|
235
250
|
- frameworks/sproutcore/tests/controllers/array.rhtml
|
236
251
|
- frameworks/sproutcore/tests/controllers/controller.rhtml
|
237
252
|
- frameworks/sproutcore/tests/controllers/object.rhtml
|
253
|
+
- frameworks/sproutcore/tests/core/guidFor.rhtml
|
238
254
|
- frameworks/sproutcore/tests/foundation/application.rhtml
|
239
255
|
- frameworks/sproutcore/tests/foundation/array.rhtml
|
240
256
|
- frameworks/sproutcore/tests/foundation/object.rhtml
|
257
|
+
- frameworks/sproutcore/tests/foundation/set.rhtml
|
241
258
|
- frameworks/sproutcore/tests/foundation/timer/invalidate.rhtml
|
242
259
|
- frameworks/sproutcore/tests/foundation/timer/invokeLater.rhtml
|
243
260
|
- frameworks/sproutcore/tests/foundation/timer/isPaused.rhtml
|
244
261
|
- frameworks/sproutcore/tests/foundation/timer/schedule.rhtml
|
245
262
|
- frameworks/sproutcore/tests/globals/window.rhtml
|
263
|
+
- frameworks/sproutcore/tests/mixins/enumerable.rhtml
|
264
|
+
- frameworks/sproutcore/tests/mixins/observable.rhtml
|
246
265
|
- frameworks/sproutcore/tests/models/model.rhtml
|
247
266
|
- frameworks/sproutcore/tests/panes/pane.rhtml
|
248
267
|
- frameworks/sproutcore/tests/views/checkbox.rhtml
|
@@ -436,7 +455,7 @@ files:
|
|
436
455
|
- Manifest.txt
|
437
456
|
- Rakefile
|
438
457
|
- README.txt
|
439
|
-
- sc-config
|
458
|
+
- sc-config
|
440
459
|
- sc_generators/client/client_generator.rb
|
441
460
|
- sc_generators/client/README
|
442
461
|
- sc_generators/client/templates/core.js
|