crossroadsjs-rails 1.0.0 → 1.1.0
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.
data/.gitignore
CHANGED
@@ -1 +1,2 @@
|
|
1
|
-
/Gemfile.lock
|
1
|
+
/Gemfile.lock
|
2
|
+
*.gem
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Crossroads.js for Rails ![Build Status][travis_ci_build_status]
|
2
2
|
|
3
|
-
Provides Crossroads.js (0.
|
3
|
+
Provides Crossroads.js (0.8.0) for use with Rails 3
|
4
4
|
|
5
5
|
[RubyGems][ruby_gems] | [Ruby Toolbox][ruby_toolbox] | [GitHub][github] | [Travis CI][travis_ci] | [RubyDoc][ruby_doc]
|
6
6
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require "spec_helper"
|
2
2
|
|
3
3
|
describe Crossroadsjs::Rails do
|
4
|
-
it { Crossroadsjs::Rails::VERSION.should == "1.
|
5
|
-
it { Crossroadsjs::Rails::CROSSROADSJS_VERSION.should == "0.
|
4
|
+
it { Crossroadsjs::Rails::VERSION.should == "1.1.0" }
|
5
|
+
it { Crossroadsjs::Rails::CROSSROADSJS_VERSION.should == "0.8.0" }
|
6
6
|
end
|
@@ -1,15 +1,14 @@
|
|
1
1
|
/** @license
|
2
|
-
*
|
3
|
-
*
|
2
|
+
* crossroads <http://millermedeiros.github.com/crossroads.js/>
|
3
|
+
* License: MIT
|
4
4
|
* Author: Miller Medeiros
|
5
|
-
* Version: 0.
|
5
|
+
* Version: 0.8.0 (2012/3/5 14:26)
|
6
6
|
*/
|
7
7
|
|
8
8
|
(function (define) {
|
9
9
|
define(['signals'], function (signals) {
|
10
10
|
|
11
11
|
var crossroads,
|
12
|
-
patternLexer,
|
13
12
|
UNDEF;
|
14
13
|
|
15
14
|
// Helpers -----------
|
@@ -85,6 +84,7 @@ define(['signals'], function (signals) {
|
|
85
84
|
*/
|
86
85
|
function Crossroads() {
|
87
86
|
this._routes = [];
|
87
|
+
this._prevRoutes = [];
|
88
88
|
this.bypassed = new signals.Signal();
|
89
89
|
this.routed = new signals.Signal();
|
90
90
|
}
|
@@ -121,8 +121,9 @@ define(['signals'], function (signals) {
|
|
121
121
|
this._routes.length = 0;
|
122
122
|
},
|
123
123
|
|
124
|
-
parse : function (request) {
|
124
|
+
parse : function (request, defaultArgs) {
|
125
125
|
request = request || '';
|
126
|
+
defaultArgs = defaultArgs || [];
|
126
127
|
|
127
128
|
var routes = this._getMatchedRoutes(request),
|
128
129
|
i = 0,
|
@@ -130,16 +131,26 @@ define(['signals'], function (signals) {
|
|
130
131
|
cur;
|
131
132
|
|
132
133
|
if (n) {
|
134
|
+
this._notifyPrevRoutes(request);
|
135
|
+
this._prevRoutes = routes;
|
133
136
|
//shold be incremental loop, execute routes in order
|
134
137
|
while (i < n) {
|
135
138
|
cur = routes[i];
|
136
|
-
cur.route.matched.dispatch.apply(cur.route.matched, cur.params);
|
139
|
+
cur.route.matched.dispatch.apply(cur.route.matched, defaultArgs.concat(cur.params));
|
137
140
|
cur.isFirst = !i;
|
138
|
-
this.routed.dispatch(request, cur);
|
141
|
+
this.routed.dispatch.apply(this.routed, defaultArgs.concat([request, cur]));
|
139
142
|
i += 1;
|
140
143
|
}
|
141
144
|
} else {
|
142
|
-
this.bypassed.dispatch(request);
|
145
|
+
this.bypassed.dispatch.apply(this.bypassed, defaultArgs.concat([request]));
|
146
|
+
}
|
147
|
+
},
|
148
|
+
|
149
|
+
_notifyPrevRoutes : function(request) {
|
150
|
+
var i = 0, cur;
|
151
|
+
while (cur = this._prevRoutes[i++]) {
|
152
|
+
//check if switched exist since route may be disposed
|
153
|
+
if(cur.route.switched) cur.route.switched.dispatch(request);
|
143
154
|
}
|
144
155
|
},
|
145
156
|
|
@@ -179,8 +190,15 @@ define(['signals'], function (signals) {
|
|
179
190
|
|
180
191
|
//"static" instance
|
181
192
|
crossroads = new Crossroads();
|
182
|
-
crossroads.VERSION = '0.
|
193
|
+
crossroads.VERSION = '0.8.0';
|
183
194
|
|
195
|
+
crossroads.NORM_AS_ARRAY = function (req, vals) {
|
196
|
+
return [vals.vals_];
|
197
|
+
};
|
198
|
+
|
199
|
+
crossroads.NORM_AS_OBJECT = function (req, vals) {
|
200
|
+
return [vals];
|
201
|
+
};
|
184
202
|
|
185
203
|
|
186
204
|
// Route --------------
|
@@ -190,13 +208,15 @@ define(['signals'], function (signals) {
|
|
190
208
|
* @constructor
|
191
209
|
*/
|
192
210
|
function Route(pattern, callback, priority, router) {
|
193
|
-
var isRegexPattern = isRegExp(pattern)
|
211
|
+
var isRegexPattern = isRegExp(pattern),
|
212
|
+
patternLexer = crossroads.patternLexer;
|
194
213
|
this._router = router;
|
195
214
|
this._pattern = pattern;
|
196
215
|
this._paramsIds = isRegexPattern? null : patternLexer.getParamIds(this._pattern);
|
197
216
|
this._optionalParamsIds = isRegexPattern? null : patternLexer.getOptionalParamsIds(this._pattern);
|
198
217
|
this._matchRegexp = isRegexPattern? pattern : patternLexer.compilePattern(pattern);
|
199
218
|
this.matched = new signals.Signal();
|
219
|
+
this.switched = new signals.Signal();
|
200
220
|
if (callback) {
|
201
221
|
this.matched.add(callback);
|
202
222
|
}
|
@@ -249,7 +269,7 @@ define(['signals'], function (signals) {
|
|
249
269
|
|
250
270
|
_getParamsObject : function (request) {
|
251
271
|
var shouldTypecast = this._router.shouldTypecast,
|
252
|
-
values = patternLexer.getParamValues(request, this._matchRegexp, shouldTypecast),
|
272
|
+
values = crossroads.patternLexer.getParamValues(request, this._matchRegexp, shouldTypecast),
|
253
273
|
o = {},
|
254
274
|
n = values.length;
|
255
275
|
while (n--) {
|
@@ -270,7 +290,7 @@ define(['signals'], function (signals) {
|
|
270
290
|
if (norm && isFunction(norm)) {
|
271
291
|
params = norm(request, this._getParamsObject(request));
|
272
292
|
} else {
|
273
|
-
params = patternLexer.getParamValues(request, this._matchRegexp, this._router.shouldTypecast);
|
293
|
+
params = crossroads.patternLexer.getParamValues(request, this._matchRegexp, this._router.shouldTypecast);
|
274
294
|
}
|
275
295
|
return params;
|
276
296
|
},
|
@@ -281,7 +301,8 @@ define(['signals'], function (signals) {
|
|
281
301
|
|
282
302
|
_destroy : function () {
|
283
303
|
this.matched.dispose();
|
284
|
-
this.
|
304
|
+
this.switched.dispose();
|
305
|
+
this.matched = this.switched = this._pattern = this._matchRegexp = null;
|
285
306
|
},
|
286
307
|
|
287
308
|
toString : function () {
|
@@ -295,7 +316,7 @@ define(['signals'], function (signals) {
|
|
295
316
|
// Pattern Lexer ------
|
296
317
|
//=====================
|
297
318
|
|
298
|
-
|
319
|
+
crossroads.patternLexer = (function () {
|
299
320
|
|
300
321
|
|
301
322
|
var ESCAPE_CHARS_REGEXP = /[\\.+*?\^$\[\](){}\/'#]/g, //match chars that should be escaped on string regexp
|
@@ -306,15 +327,21 @@ define(['signals'], function (signals) {
|
|
306
327
|
REQUIRED_PARAMS_REGEXP = /\{([^}]+)\}/g, //match everything between `{ }`
|
307
328
|
OPTIONAL_PARAMS_REGEXP = /:([^:]+):/g, //match everything between `: :`
|
308
329
|
PARAMS_REGEXP = /(?:\{|:)([^}:]+)(?:\}|:)/g, //capture everything between `{ }` or `: :`
|
330
|
+
REQUIRED_REST = /\{([^}]+)\*\}/g,
|
331
|
+
OPTIONAL_REST = /:([^:]+)\*:/g,
|
309
332
|
|
310
333
|
//used to save params during compile (avoid escaping things that
|
311
334
|
//shouldn't be escaped).
|
312
335
|
SAVE_REQUIRED_PARAMS = '__CR_RP__',
|
313
336
|
SAVE_OPTIONAL_PARAMS = '__CR_OP__',
|
337
|
+
SAVE_REQUIRED_REST = '__CR_RR__',
|
338
|
+
SAVE_OPTIONAL_REST = '__CR_OR__',
|
314
339
|
SAVE_REQUIRED_SLASHES = '__CR_RS__',
|
315
340
|
SAVE_OPTIONAL_SLASHES = '__CR_OS__',
|
316
341
|
SAVED_REQUIRED_REGEXP = new RegExp(SAVE_REQUIRED_PARAMS, 'g'),
|
317
342
|
SAVED_OPTIONAL_REGEXP = new RegExp(SAVE_OPTIONAL_PARAMS, 'g'),
|
343
|
+
SAVED_REQUIRED_REST_REGEXP = new RegExp(SAVE_REQUIRED_REST, 'g'),
|
344
|
+
SAVED_OPTIONAL_REST_REGEXP = new RegExp(SAVE_OPTIONAL_REST, 'g'),
|
318
345
|
SAVED_OPTIONAL_SLASHES_REGEXP = new RegExp(SAVE_OPTIONAL_SLASHES, 'g'),
|
319
346
|
SAVED_REQUIRED_SLASHES_REGEXP = new RegExp(SAVE_REQUIRED_SLASHES, 'g');
|
320
347
|
|
@@ -350,6 +377,8 @@ define(['signals'], function (signals) {
|
|
350
377
|
//save chars that shouldn't be escaped
|
351
378
|
pattern = pattern.replace(OPTIONAL_SLASHES_REGEXP, '$1'+ SAVE_OPTIONAL_SLASHES +'$2');
|
352
379
|
pattern = pattern.replace(REQUIRED_SLASHES_REGEXP, '$1'+ SAVE_REQUIRED_SLASHES +'$2');
|
380
|
+
pattern = pattern.replace(OPTIONAL_REST, SAVE_OPTIONAL_REST);
|
381
|
+
pattern = pattern.replace(REQUIRED_REST, SAVE_REQUIRED_REST);
|
353
382
|
pattern = pattern.replace(OPTIONAL_PARAMS_REGEXP, SAVE_OPTIONAL_PARAMS);
|
354
383
|
return pattern.replace(REQUIRED_PARAMS_REGEXP, SAVE_REQUIRED_PARAMS);
|
355
384
|
}
|
@@ -357,6 +386,8 @@ define(['signals'], function (signals) {
|
|
357
386
|
function untokenize(pattern) {
|
358
387
|
pattern = pattern.replace(SAVED_OPTIONAL_SLASHES_REGEXP, '\\/?');
|
359
388
|
pattern = pattern.replace(SAVED_REQUIRED_SLASHES_REGEXP, '\\/');
|
389
|
+
pattern = pattern.replace(SAVED_OPTIONAL_REST_REGEXP, '(.*)?'); // optional group to avoid passing empty string as captured
|
390
|
+
pattern = pattern.replace(SAVED_REQUIRED_REST_REGEXP, '(.+)');
|
360
391
|
pattern = pattern.replace(SAVED_OPTIONAL_REGEXP, '([^\\/]+)?\/?');
|
361
392
|
return pattern.replace(SAVED_REQUIRED_REGEXP, '([^\\/]+)');
|
362
393
|
}
|
@@ -1,15 +1,7 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
(function(f){f(["signals"],function(g){function f(a,b){if(a.indexOf)return a.indexOf(b);else{for(var c=a.length;c--;)if(a[c]===b)return c;return-1}}function i(a,b){return"[object "+b+"]"===Object.prototype.toString.call(a)}function n(a){return a===null||a==="null"?null:a==="true"?!0:a==="false"?!1:a===m||a==="undefined"?m:a===""||isNaN(a)?a:parseFloat(a)}function k(){this._routes=[];this.bypassed=new g.Signal;this.routed=new g.Signal}function o(a,b,c,e){var d=i(a,"RegExp");this._router=e;this._pattern=
|
9
|
-
a;this._paramsIds=d?null:h.getParamIds(this._pattern);this._optionalParamsIds=d?null:h.getOptionalParamsIds(this._pattern);this._matchRegexp=d?a:h.compilePattern(a);this.matched=new g.Signal;b&&this.matched.add(b);this._priority=c||0}var j,h,m;k.prototype={normalizeFn:null,create:function(){return new k},shouldTypecast:!1,addRoute:function(a,b,c){a=new o(a,b,c,this);this._sortedInsert(a);return a},removeRoute:function(a){var b=f(this._routes,a);b!==-1&&this._routes.splice(b,1);a._destroy()},removeAllRoutes:function(){for(var a=
|
10
|
-
this.getNumRoutes();a--;)this._routes[a]._destroy();this._routes.length=0},parse:function(a){var a=a||"",b=this._getMatchedRoutes(a),c=0,e=b.length,d;if(e)for(;c<e;)d=b[c],d.route.matched.dispatch.apply(d.route.matched,d.params),d.isFirst=!c,this.routed.dispatch(a,d),c+=1;else this.bypassed.dispatch(a)},getNumRoutes:function(){return this._routes.length},_sortedInsert:function(a){var b=this._routes,c=b.length;do--c;while(b[c]&&a._priority<=b[c]._priority);b.splice(c+1,0,a)},_getMatchedRoutes:function(a){for(var b=
|
11
|
-
[],c=this._routes,e=c.length,d;d=c[--e];)(!b.length||d.greedy)&&d.match(a)&&b.push({route:d,params:d._getParamsArray(a)});return b},toString:function(){return"[crossroads numRoutes:"+this.getNumRoutes()+"]"}};j=new k;j.VERSION="0.7.1";o.prototype={greedy:!1,rules:void 0,match:function(a){return this._matchRegexp.test(a)&&this._validateParams(a)},_validateParams:function(a){var b=this.rules,c=this._getParamsObject(a),e;for(e in b)if(e!=="normalize_"&&b.hasOwnProperty(e)&&!this._isValidParam(a,e,c))return!1;
|
12
|
-
return!0},_isValidParam:function(a,b,c){var e=this.rules[b],d=c[b],l=!1;d==null&&this._optionalParamsIds&&f(this._optionalParamsIds,b)!==-1?l=!0:i(e,"RegExp")?l=e.test(d):i(e,"Array")?l=f(e,d)!==-1:i(e,"Function")&&(l=e(d,a,c));return l},_getParamsObject:function(a){for(var b=this._router.shouldTypecast,c=h.getParamValues(a,this._matchRegexp,b),e={},d=c.length;d--;)e[d]=c[d],this._paramsIds&&(e[this._paramsIds[d]]=c[d]);e.request_=b?n(a):a;e.vals_=c;return e},_getParamsArray:function(a){var b=this.rules?
|
13
|
-
this.rules.normalize_:null;return(b=b||this._router.normalizeFn)&&i(b,"Function")?b(a,this._getParamsObject(a)):h.getParamValues(a,this._matchRegexp,this._router.shouldTypecast)},dispose:function(){this._router.removeRoute(this)},_destroy:function(){this.matched.dispose();this.matched=this._pattern=this._matchRegexp=null},toString:function(){return'[Route pattern:"'+this._pattern+'", numListeners:'+this.matched.getNumListeners()+"]"}};h=j.patternLexer=function(){function a(a,b){for(var c=[],d;d=a.exec(b);)c.push(d[1]);
|
14
|
-
return c}var b=/[\\.+*?\^$\[\](){}\/'#]/g,c=/\/$/g,e=/([:}]|\w(?=\/))\/?(:)/g,d=/([:}])\/?(\{)/g,f=/\{([^}]+)\}/g,g=/:([^:]+):/g,h=/(?:\{|:)([^}:]+)(?:\}|:)/g,i=RegExp("__CR_RP__","g"),j=RegExp("__CR_OP__","g"),k=RegExp("__CR_OS__","g"),m=RegExp("__CR_RS__","g");return{getParamIds:function(b){return a(h,b)},getOptionalParamsIds:function(b){return a(g,b)},getParamValues:function(a,b,c){if(a=b.exec(a))if(a.shift(),c){c=a;a=c.length;for(b=[];a--;)b[a]=n(c[a]);a=b}return a},compilePattern:function(a){if(a=
|
15
|
-
a||"")a=a.replace(c,""),a=a.replace(e,"$1__CR_OS__$2"),a=a.replace(d,"$1__CR_RS__$2"),a=a.replace(g,"__CR_OP__"),a=a.replace(f,"__CR_RP__"),a=a.replace(b,"\\$&"),a=a.replace(k,"\\/?"),a=a.replace(m,"\\/"),a=a.replace(j,"([^\\/]+)?/?"),a=a.replace(i,"([^\\/]+)");return RegExp("^"+a+"/?$")}}}();return j})})(typeof define==="function"&&define.amd?define:function(f,g){typeof module!=="undefined"&&module.exports?module.exports=g(require(f[0])):window.crossroads=g(window[f[0]])});
|
1
|
+
/** @license
|
2
|
+
* crossroads <http://millermedeiros.github.com/crossroads.js/>
|
3
|
+
* License: MIT
|
4
|
+
* Author: Miller Medeiros
|
5
|
+
* Version: 0.8.0 (2012/3/5 14:26)
|
6
|
+
*/
|
7
|
+
(function(a){a(["signals"],function(a){function d(a,b){if(a.indexOf)return a.indexOf(b);var c=a.length;while(c--)if(a[c]===b)return c;return-1}function e(a,b){return"[object "+b+"]"===Object.prototype.toString.call(a)}function f(a){return e(a,"RegExp")}function g(a){return e(a,"Array")}function h(a){return e(a,"Function")}function i(a){var b;return a===null||a==="null"?b=null:a==="true"?b=!0:a==="false"?b=!1:a===c||a==="undefined"?b=c:a===""||isNaN(a)?b=a:b=parseFloat(a),b}function j(a){var b=a.length,c=[];while(b--)c[b]=i(a[b]);return c}function k(){this._routes=[],this._prevRoutes=[],this.bypassed=new a.Signal,this.routed=new a.Signal}function l(c,d,e,g){var h=f(c),i=b.patternLexer;this._router=g,this._pattern=c,this._paramsIds=h?null:i.getParamIds(this._pattern),this._optionalParamsIds=h?null:i.getOptionalParamsIds(this._pattern),this._matchRegexp=h?c:i.compilePattern(c),this.matched=new a.Signal,this.switched=new a.Signal,d&&this.matched.add(d),this._priority=e||0}var b,c;return k.prototype={normalizeFn:null,create:function(){return new k},shouldTypecast:!1,addRoute:function(a,b,c){var d=new l(a,b,c,this);return this._sortedInsert(d),d},removeRoute:function(a){var b=d(this._routes,a);b!==-1&&this._routes.splice(b,1),a._destroy()},removeAllRoutes:function(){var a=this.getNumRoutes();while(a--)this._routes[a]._destroy();this._routes.length=0},parse:function(a,b){a=a||"",b=b||[];var c=this._getMatchedRoutes(a),d=0,e=c.length,f;if(e){this._notifyPrevRoutes(a),this._prevRoutes=c;while(d<e)f=c[d],f.route.matched.dispatch.apply(f.route.matched,b.concat(f.params)),f.isFirst=!d,this.routed.dispatch.apply(this.routed,b.concat([a,f])),d+=1}else this.bypassed.dispatch.apply(this.bypassed,b.concat([a]))},_notifyPrevRoutes:function(a){var b=0,c;while(c=this._prevRoutes[b++])c.route.switched&&c.route.switched.dispatch(a)},getNumRoutes:function(){return this._routes.length},_sortedInsert:function(a){var b=this._routes,c=b.length;do--c;while(b[c]&&a._priority<=b[c]._priority);b.splice(c+1,0,a)},_getMatchedRoutes:function(a){var b=[],c=this._routes,d=c.length,e;while(e=c[--d])(!b.length||e.greedy)&&e.match(a)&&b.push({route:e,params:e._getParamsArray(a)});return b},toString:function(){return"[crossroads numRoutes:"+this.getNumRoutes()+"]"}},b=new k,b.VERSION="0.8.0",b.NORM_AS_ARRAY=function(a,b){return[b.vals_]},b.NORM_AS_OBJECT=function(a,b){return[b]},l.prototype={greedy:!1,rules:void 0,match:function(a){return this._matchRegexp.test(a)&&this._validateParams(a)},_validateParams:function(a){var b=this.rules,c=this._getParamsObject(a),d;for(d in b)if(d!=="normalize_"&&b.hasOwnProperty(d)&&!this._isValidParam(a,d,c))return!1;return!0},_isValidParam:function(a,b,c){var e=this.rules[b],i=c[b],j=!1;return i==null&&this._optionalParamsIds&&d(this._optionalParamsIds,b)!==-1?j=!0:f(e)?j=e.test(i):g(e)?j=d(e,i)!==-1:h(e)&&(j=e(i,a,c)),j},_getParamsObject:function(a){var c=this._router.shouldTypecast,d=b.patternLexer.getParamValues(a,this._matchRegexp,c),e={},f=d.length;while(f--)e[f]=d[f],this._paramsIds&&(e[this._paramsIds[f]]=d[f]);return e.request_=c?i(a):a,e.vals_=d,e},_getParamsArray:function(a){var c=this.rules?this.rules.normalize_:null,d;return c=c||this._router.normalizeFn,c&&h(c)?d=c(a,this._getParamsObject(a)):d=b.patternLexer.getParamValues(a,this._matchRegexp,this._router.shouldTypecast),d},dispose:function(){this._router.removeRoute(this)},_destroy:function(){this.matched.dispose(),this.switched.dispose(),this.matched=this.switched=this._pattern=this._matchRegexp=null},toString:function(){return'[Route pattern:"'+this._pattern+'", numListeners:'+this.matched.getNumListeners()+"]"}},b.patternLexer=function(){function w(a,b){var c=[],d;while(d=a.exec(b))c.push(d[1]);return c}function x(a){return w(g,a)}function y(a){return w(f,a)}function z(c){return c=c||"",c&&(c=c.replace(b,""),c=A(c),c=c.replace(a,"\\$&"),c=B(c)),new RegExp("^"+c+"/?$")}function A(a){return a=a.replace(c,"$1"+p+"$2"),a=a.replace(d,"$1"+o+"$2"),a=a.replace(i,n),a=a.replace(h,m),a=a.replace(f,l),a.replace(e,k)}function B(a){return a=a.replace(u,"\\/?"),a=a.replace(v,"\\/"),a=a.replace(t,"(.*)?"),a=a.replace(s,"(.+)"),a=a.replace(r,"([^\\/]+)?/?"),a.replace(q,"([^\\/]+)")}function C(a,b,c){var d=b.exec(a);return d&&(d.shift(),c&&(d=j(d))),d}var a=/[\\.+*?\^$\[\](){}\/'#]/g,b=/\/$/g,c=/([:}]|\w(?=\/))\/?(:)/g,d=/([:}])\/?(\{)/g,e=/\{([^}]+)\}/g,f=/:([^:]+):/g,g=/(?:\{|:)([^}:]+)(?:\}|:)/g,h=/\{([^}]+)\*\}/g,i=/:([^:]+)\*:/g,k="__CR_RP__",l="__CR_OP__",m="__CR_RR__",n="__CR_OR__",o="__CR_RS__",p="__CR_OS__",q=new RegExp(k,"g"),r=new RegExp(l,"g"),s=new RegExp(m,"g"),t=new RegExp(n,"g"),u=new RegExp(p,"g"),v=new RegExp(o,"g");return{getParamIds:x,getOptionalParamsIds:y,getParamValues:C,compilePattern:z}}(),b})})(typeof define=="function"&&define.amd?define:function(a,b){typeof module!="undefined"&&module.exports?module.exports=b(require(a[0])):window.crossroads=b(window[a[0]])})
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: crossroadsjs-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-03-
|
12
|
+
date: 2012-03-12 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: railties
|
16
|
-
requirement: &
|
16
|
+
requirement: &21993624 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '3.0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *21993624
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rspec
|
27
|
-
requirement: &
|
27
|
+
requirement: &21993312 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,7 +32,7 @@ dependencies:
|
|
32
32
|
version: '2.0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *21993312
|
36
36
|
description: Provides Crossroads.js for use with Rails 3
|
37
37
|
email: philostler@gmail.com
|
38
38
|
executables: []
|
@@ -76,7 +76,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
76
76
|
version: '0'
|
77
77
|
requirements: []
|
78
78
|
rubyforge_project:
|
79
|
-
rubygems_version: 1.8.
|
79
|
+
rubygems_version: 1.8.16
|
80
80
|
signing_key:
|
81
81
|
specification_version: 3
|
82
82
|
summary: Crossroads.js for Rails
|