ember-source 2.7.0.beta.2 → 2.7.0.beta.3
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 +4 -4
- data/VERSION +1 -1
- data/dist/ember-runtime.js +4 -4
- data/dist/ember-template-compiler.js +2 -2
- data/dist/ember-testing.js +1 -1
- data/dist/ember.debug.js +163 -56
- data/dist/ember.js +163 -56
- data/dist/ember.min.js +14 -14
- data/dist/ember.prod.js +163 -56
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a594c8e9c67550132a13c32311604b3a218f308c
|
4
|
+
data.tar.gz: cf31eba641a4bb747db8e94ee843f61114e233a1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f3a9c579776bf514d9f2cf08f04b458d247be9519f0b589d5c3346b5ef33062bba753d76ca52f8858086cd6f7d71e50492f4b9f5da885fa2a303c2fdd569b793
|
7
|
+
data.tar.gz: 4faa2a66d654c9011855ec0574fdf4a13a8125083eb3e14ce55ad796ac9a591fb6a5e5cc0524e369aaced90a07608f4787ebe3bb5e0c26f9f2799131a62b1f8d
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.7.0-beta.
|
1
|
+
2.7.0-beta.3
|
data/dist/ember-runtime.js
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
* Portions Copyright 2008-2011 Apple Inc. All rights reserved.
|
7
7
|
* @license Licensed under MIT license
|
8
8
|
* See https://raw.github.com/emberjs/ember.js/master/LICENSE
|
9
|
-
* @version 2.7.0-beta.
|
9
|
+
* @version 2.7.0-beta.3
|
10
10
|
*/
|
11
11
|
|
12
12
|
var enifed, requireModule, require, Ember;
|
@@ -2485,7 +2485,7 @@ enifed("ember/features", ["exports"], function (exports) {
|
|
2485
2485
|
enifed("ember/version", ["exports"], function (exports) {
|
2486
2486
|
"use strict";
|
2487
2487
|
|
2488
|
-
exports.default = "2.7.0-beta.
|
2488
|
+
exports.default = "2.7.0-beta.3";
|
2489
2489
|
});
|
2490
2490
|
enifed('ember-console/index', ['exports', 'ember-environment'], function (exports, _emberEnvironment) {
|
2491
2491
|
'use strict';
|
@@ -11525,7 +11525,7 @@ enifed('ember-runtime/computed/computed_macros', ['exports', 'ember-metal/debug'
|
|
11525
11525
|
|
11526
11526
|
You may pass in more than two properties and even use
|
11527
11527
|
property brace expansion. The computed property will
|
11528
|
-
|
11528
|
+
return the first falsy value or last truthy value
|
11529
11529
|
just like JavaScript's `||` operator.
|
11530
11530
|
|
11531
11531
|
Example
|
@@ -11567,7 +11567,7 @@ enifed('ember-runtime/computed/computed_macros', ['exports', 'ember-metal/debug'
|
|
11567
11567
|
|
11568
11568
|
You may pass in more than two properties and even use
|
11569
11569
|
property brace expansion. The computed property will
|
11570
|
-
|
11570
|
+
return the first truthy value or last falsy value just
|
11571
11571
|
like JavaScript's `||` operator.
|
11572
11572
|
|
11573
11573
|
Example
|
@@ -6,7 +6,7 @@
|
|
6
6
|
* Portions Copyright 2008-2011 Apple Inc. All rights reserved.
|
7
7
|
* @license Licensed under MIT license
|
8
8
|
* See https://raw.github.com/emberjs/ember.js/master/LICENSE
|
9
|
-
* @version 2.7.0-beta.
|
9
|
+
* @version 2.7.0-beta.3
|
10
10
|
*/
|
11
11
|
|
12
12
|
var enifed, requireModule, require, Ember;
|
@@ -1161,7 +1161,7 @@ enifed("ember/features", ["exports"], function (exports) {
|
|
1161
1161
|
enifed("ember/version", ["exports"], function (exports) {
|
1162
1162
|
"use strict";
|
1163
1163
|
|
1164
|
-
exports.default = "2.7.0-beta.
|
1164
|
+
exports.default = "2.7.0-beta.3";
|
1165
1165
|
});
|
1166
1166
|
enifed('ember-console/index', ['exports', 'ember-environment'], function (exports, _emberEnvironment) {
|
1167
1167
|
'use strict';
|
data/dist/ember-testing.js
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
* Portions Copyright 2008-2011 Apple Inc. All rights reserved.
|
7
7
|
* @license Licensed under MIT license
|
8
8
|
* See https://raw.github.com/emberjs/ember.js/master/LICENSE
|
9
|
-
* @version 2.7.0-beta.
|
9
|
+
* @version 2.7.0-beta.3
|
10
10
|
*/
|
11
11
|
|
12
12
|
var enifed, requireModule, require, Ember;
|
data/dist/ember.debug.js
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
* Portions Copyright 2008-2011 Apple Inc. All rights reserved.
|
7
7
|
* @license Licensed under MIT license
|
8
8
|
* See https://raw.github.com/emberjs/ember.js/master/LICENSE
|
9
|
-
* @version 2.7.0-beta.
|
9
|
+
* @version 2.7.0-beta.3
|
10
10
|
*/
|
11
11
|
|
12
12
|
var enifed, requireModule, require, Ember;
|
@@ -3751,7 +3751,7 @@ enifed('ember/index', ['exports', 'ember-metal', 'ember-runtime', 'ember-views',
|
|
3751
3751
|
enifed("ember/version", ["exports"], function (exports) {
|
3752
3752
|
"use strict";
|
3753
3753
|
|
3754
|
-
exports.default = "2.7.0-beta.
|
3754
|
+
exports.default = "2.7.0-beta.3";
|
3755
3755
|
});
|
3756
3756
|
enifed('ember-application/index', ['exports', 'ember-metal/core', 'ember-metal/features', 'ember-runtime/system/lazy_load', 'ember-application/system/resolver', 'ember-application/system/application', 'ember-application/system/application-instance', 'ember-application/system/engine', 'ember-application/system/engine-instance'], function (exports, _emberMetalCore, _emberMetalFeatures, _emberRuntimeSystemLazy_load, _emberApplicationSystemResolver, _emberApplicationSystemApplication, _emberApplicationSystemApplicationInstance, _emberApplicationSystemEngine, _emberApplicationSystemEngineInstance) {
|
3757
3757
|
'use strict';
|
@@ -9609,11 +9609,16 @@ enifed('ember-htmlbars/helper', ['exports', 'ember-runtime/system/object'], func
|
|
9609
9609
|
|
9610
9610
|
```js
|
9611
9611
|
// app/helpers/format-currency.js
|
9612
|
-
export
|
9613
|
-
let cents = params[0];
|
9612
|
+
export function formatCurrency([cents], hash) {
|
9614
9613
|
let currency = hash.currency;
|
9615
9614
|
return `${currency}${cents * 0.01}`;
|
9616
9615
|
});
|
9616
|
+
|
9617
|
+
export default Ember.Helper.helper(formatCurrency);
|
9618
|
+
|
9619
|
+
// tests/myhelper.js
|
9620
|
+
import { formatCurrency } from ..../helpers/myhelper
|
9621
|
+
// add some tests
|
9617
9622
|
```
|
9618
9623
|
|
9619
9624
|
@static
|
@@ -31755,7 +31760,7 @@ enifed('ember-runtime/computed/computed_macros', ['exports', 'ember-metal/debug'
|
|
31755
31760
|
|
31756
31761
|
You may pass in more than two properties and even use
|
31757
31762
|
property brace expansion. The computed property will
|
31758
|
-
|
31763
|
+
return the first falsy value or last truthy value
|
31759
31764
|
just like JavaScript's `||` operator.
|
31760
31765
|
|
31761
31766
|
Example
|
@@ -31797,7 +31802,7 @@ enifed('ember-runtime/computed/computed_macros', ['exports', 'ember-metal/debug'
|
|
31797
31802
|
|
31798
31803
|
You may pass in more than two properties and even use
|
31799
31804
|
property brace expansion. The computed property will
|
31800
|
-
|
31805
|
+
return the first truthy value or last falsy value just
|
31801
31806
|
like JavaScript's `||` operator.
|
31802
31807
|
|
31803
31808
|
Example
|
@@ -49077,9 +49082,100 @@ enifed("route-recognizer/dsl", ["exports"], function (exports) {
|
|
49077
49082
|
}, this);
|
49078
49083
|
};
|
49079
49084
|
});
|
49080
|
-
enifed('route-recognizer', ['exports'
|
49085
|
+
enifed('route-recognizer/normalizer', ['exports'], function (exports) {
|
49086
|
+
// Match percent-encoded values (e.g. %3a, %3A, %25)
|
49081
49087
|
'use strict';
|
49082
49088
|
|
49089
|
+
var PERCENT_ENCODED_VALUES = /%[a-fA-F0-9]{2}/g;
|
49090
|
+
|
49091
|
+
function toUpper(str) {
|
49092
|
+
return str.toUpperCase();
|
49093
|
+
}
|
49094
|
+
|
49095
|
+
// Turn percent-encoded values to upper case ("%3a" -> "%3A")
|
49096
|
+
function percentEncodedValuesToUpper(string) {
|
49097
|
+
return string.replace(PERCENT_ENCODED_VALUES, toUpper);
|
49098
|
+
}
|
49099
|
+
|
49100
|
+
// Normalizes percent-encoded values to upper-case and decodes percent-encoded
|
49101
|
+
// values that are not reserved (like unicode characters).
|
49102
|
+
// Safe to call multiple times on the same path.
|
49103
|
+
function normalizePath(path) {
|
49104
|
+
return path.split('/').map(normalizeSegment).join('/');
|
49105
|
+
}
|
49106
|
+
|
49107
|
+
function percentEncode(char) {
|
49108
|
+
return '%' + charToHex(char);
|
49109
|
+
}
|
49110
|
+
|
49111
|
+
function charToHex(char) {
|
49112
|
+
return char.charCodeAt(0).toString(16).toUpperCase();
|
49113
|
+
}
|
49114
|
+
|
49115
|
+
// Decodes percent-encoded values in the string except those
|
49116
|
+
// characters in `reservedHex`, where `reservedHex` is an array of 2-character
|
49117
|
+
// percent-encodings
|
49118
|
+
function decodeURIComponentExcept(string, reservedHex) {
|
49119
|
+
if (string.indexOf('%') === -1) {
|
49120
|
+
// If there is no percent char, there is no decoding that needs to
|
49121
|
+
// be done and we exit early
|
49122
|
+
return string;
|
49123
|
+
}
|
49124
|
+
string = percentEncodedValuesToUpper(string);
|
49125
|
+
|
49126
|
+
var result = '';
|
49127
|
+
var buffer = '';
|
49128
|
+
var idx = 0;
|
49129
|
+
while (idx < string.length) {
|
49130
|
+
var pIdx = string.indexOf('%', idx);
|
49131
|
+
|
49132
|
+
if (pIdx === -1) {
|
49133
|
+
// no percent char
|
49134
|
+
buffer += string.slice(idx);
|
49135
|
+
break;
|
49136
|
+
} else {
|
49137
|
+
// found percent char
|
49138
|
+
buffer += string.slice(idx, pIdx);
|
49139
|
+
idx = pIdx + 3;
|
49140
|
+
|
49141
|
+
var hex = string.slice(pIdx + 1, pIdx + 3);
|
49142
|
+
var encoded = '%' + hex;
|
49143
|
+
|
49144
|
+
if (reservedHex.indexOf(hex) === -1) {
|
49145
|
+
// encoded is not in reserved set, add to buffer
|
49146
|
+
buffer += encoded;
|
49147
|
+
} else {
|
49148
|
+
result += decodeURIComponent(buffer);
|
49149
|
+
buffer = '';
|
49150
|
+
result += encoded;
|
49151
|
+
}
|
49152
|
+
}
|
49153
|
+
}
|
49154
|
+
result += decodeURIComponent(buffer);
|
49155
|
+
return result;
|
49156
|
+
}
|
49157
|
+
|
49158
|
+
// Leave these characters in encoded state in segments
|
49159
|
+
var reservedSegmentChars = ['%', '/'];
|
49160
|
+
var reservedHex = reservedSegmentChars.map(charToHex);
|
49161
|
+
|
49162
|
+
function normalizeSegment(segment) {
|
49163
|
+
return decodeURIComponentExcept(segment, reservedHex);
|
49164
|
+
}
|
49165
|
+
|
49166
|
+
var Normalizer = {
|
49167
|
+
normalizeSegment: normalizeSegment,
|
49168
|
+
normalizePath: normalizePath
|
49169
|
+
};
|
49170
|
+
|
49171
|
+
exports.default = Normalizer;
|
49172
|
+
});
|
49173
|
+
enifed('route-recognizer', ['exports', 'route-recognizer/dsl', 'route-recognizer/normalizer'], function (exports, _routeRecognizerDsl, _routeRecognizerNormalizer) {
|
49174
|
+
'use strict';
|
49175
|
+
|
49176
|
+
var normalizePath = _routeRecognizerNormalizer.default.normalizePath;
|
49177
|
+
var normalizeSegment = _routeRecognizerNormalizer.default.normalizeSegment;
|
49178
|
+
|
49083
49179
|
var specials = ['/', '.', '*', '+', '?', '|', '(', ')', '[', ']', '{', '}', '\\'];
|
49084
49180
|
|
49085
49181
|
var escapeRegex = new RegExp('(\\' + specials.join('|\\') + ')', 'g');
|
@@ -49106,7 +49202,7 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49106
49202
|
// * `repeat`: true if the character specification can repeat
|
49107
49203
|
|
49108
49204
|
function StaticSegment(string) {
|
49109
|
-
this.string = string;
|
49205
|
+
this.string = normalizeSegment(string);
|
49110
49206
|
}
|
49111
49207
|
StaticSegment.prototype = {
|
49112
49208
|
eachChar: function (currentState) {
|
@@ -49131,7 +49227,7 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49131
49227
|
};
|
49132
49228
|
|
49133
49229
|
function DynamicSegment(name) {
|
49134
|
-
this.name = name;
|
49230
|
+
this.name = normalizeSegment(name);
|
49135
49231
|
}
|
49136
49232
|
DynamicSegment.prototype = {
|
49137
49233
|
eachChar: function (currentState) {
|
@@ -49143,7 +49239,11 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49143
49239
|
},
|
49144
49240
|
|
49145
49241
|
generate: function (params) {
|
49146
|
-
|
49242
|
+
if (RouteRecognizer.ENCODE_AND_DECODE_PATH_SEGMENTS) {
|
49243
|
+
return encodeURIComponent(params[this.name]);
|
49244
|
+
} else {
|
49245
|
+
return params[this.name];
|
49246
|
+
}
|
49147
49247
|
}
|
49148
49248
|
};
|
49149
49249
|
|
@@ -49177,7 +49277,10 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49177
49277
|
}
|
49178
49278
|
};
|
49179
49279
|
|
49180
|
-
|
49280
|
+
// The `names` will be populated with the paramter name for each dynamic/star
|
49281
|
+
// segment. `shouldDecodes` will be populated with a boolean for each dyanamic/star
|
49282
|
+
// segment, indicating whether it should be decoded during recognition.
|
49283
|
+
function parse(route, names, specificity, shouldDecodes) {
|
49181
49284
|
// normalize route as not starting with a "/". Recognition will
|
49182
49285
|
// also normalize.
|
49183
49286
|
if (route.charAt(0) === "/") {
|
@@ -49191,7 +49294,7 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49191
49294
|
// appear in. This system mirrors how the magnitude of numbers written as strings
|
49192
49295
|
// works.
|
49193
49296
|
// Consider a number written as: "abc". An example would be "200". Any other number written
|
49194
|
-
// "xyz" will be smaller than "abc" so long as `a >
|
49297
|
+
// "xyz" will be smaller than "abc" so long as `a > x`. For instance, "199" is smaller
|
49195
49298
|
// then "200", even though "y" and "z" (which are both 9) are larger than "0" (the value
|
49196
49299
|
// of (`b` and `c`). This is because the leading symbol, "2", is larger than the other
|
49197
49300
|
// leading symbol, "1".
|
@@ -49215,11 +49318,13 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49215
49318
|
if (match = segment.match(/^:([^\/]+)$/)) {
|
49216
49319
|
results[i] = new DynamicSegment(match[1]);
|
49217
49320
|
names.push(match[1]);
|
49321
|
+
shouldDecodes.push(true);
|
49218
49322
|
specificity.val += '3';
|
49219
49323
|
} else if (match = segment.match(/^\*([^\/]+)$/)) {
|
49220
49324
|
results[i] = new StarSegment(match[1]);
|
49221
|
-
specificity.val += '1';
|
49222
49325
|
names.push(match[1]);
|
49326
|
+
shouldDecodes.push(false);
|
49327
|
+
specificity.val += '1';
|
49223
49328
|
} else if (segment === "") {
|
49224
49329
|
results[i] = new EpsilonSegment();
|
49225
49330
|
specificity.val += '2';
|
@@ -49309,13 +49414,11 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49309
49414
|
|
49310
49415
|
// Find a list of child states matching the next character
|
49311
49416
|
match: function (ch) {
|
49312
|
-
// DEBUG "Processing `" + ch + "`:"
|
49313
49417
|
var nextStates = this.nextStates,
|
49314
49418
|
child,
|
49315
49419
|
charSpec,
|
49316
49420
|
chars;
|
49317
49421
|
|
49318
|
-
// DEBUG " " + debugState(this)
|
49319
49422
|
var returned = [];
|
49320
49423
|
|
49321
49424
|
for (var i = 0; i < nextStates.length; i++) {
|
@@ -49336,34 +49439,8 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49336
49439
|
|
49337
49440
|
return returned;
|
49338
49441
|
}
|
49339
|
-
|
49340
|
-
/** IF DEBUG
|
49341
|
-
, debug: function() {
|
49342
|
-
var charSpec = this.charSpec,
|
49343
|
-
debug = "[",
|
49344
|
-
chars = charSpec.validChars || charSpec.invalidChars;
|
49345
|
-
if (charSpec.invalidChars) { debug += "^"; }
|
49346
|
-
debug += chars;
|
49347
|
-
debug += "]";
|
49348
|
-
if (charSpec.repeat) { debug += "+"; }
|
49349
|
-
return debug;
|
49350
|
-
}
|
49351
|
-
END IF **/
|
49352
49442
|
};
|
49353
49443
|
|
49354
|
-
/** IF DEBUG
|
49355
|
-
function debug(log) {
|
49356
|
-
console.log(log);
|
49357
|
-
}
|
49358
|
-
|
49359
|
-
function debugState(state) {
|
49360
|
-
return state.nextStates.map(function(n) {
|
49361
|
-
if (n.nextStates.length === 0) { return "( " + n.debug() + " [accepting] )"; }
|
49362
|
-
return "( " + n.debug() + " <then> " + n.nextStates.map(function(s) { return s.debug() }).join(" or ") + " )";
|
49363
|
-
}).join(", ")
|
49364
|
-
}
|
49365
|
-
END IF **/
|
49366
|
-
|
49367
49444
|
// Sort the routes by specificity
|
49368
49445
|
function sortSolutions(states) {
|
49369
49446
|
return states.sort(function (a, b) {
|
@@ -49400,10 +49477,10 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49400
49477
|
queryParams: null
|
49401
49478
|
});
|
49402
49479
|
|
49403
|
-
function findHandler(state,
|
49480
|
+
function findHandler(state, originalPath, queryParams) {
|
49404
49481
|
var handlers = state.handlers,
|
49405
49482
|
regex = state.regex;
|
49406
|
-
var captures =
|
49483
|
+
var captures = originalPath.match(regex),
|
49407
49484
|
currentCapture = 1;
|
49408
49485
|
var result = new RecognizeResults(queryParams);
|
49409
49486
|
|
@@ -49412,10 +49489,24 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49412
49489
|
for (var i = 0; i < handlers.length; i++) {
|
49413
49490
|
var handler = handlers[i],
|
49414
49491
|
names = handler.names,
|
49492
|
+
shouldDecodes = handler.shouldDecodes,
|
49415
49493
|
params = {};
|
49494
|
+
var name, shouldDecode, capture;
|
49416
49495
|
|
49417
49496
|
for (var j = 0; j < names.length; j++) {
|
49418
|
-
|
49497
|
+
name = names[j];
|
49498
|
+
shouldDecode = shouldDecodes[j];
|
49499
|
+
capture = captures[currentCapture++];
|
49500
|
+
|
49501
|
+
if (RouteRecognizer.ENCODE_AND_DECODE_PATH_SEGMENTS) {
|
49502
|
+
if (shouldDecode) {
|
49503
|
+
params[name] = decodeURIComponent(capture);
|
49504
|
+
} else {
|
49505
|
+
params[name] = capture;
|
49506
|
+
}
|
49507
|
+
} else {
|
49508
|
+
params[name] = capture;
|
49509
|
+
}
|
49419
49510
|
}
|
49420
49511
|
|
49421
49512
|
result[i] = { handler: handler.handler, params: params, isDynamic: !!names.length };
|
@@ -49456,9 +49547,10 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49456
49547
|
|
49457
49548
|
for (var i = 0; i < routes.length; i++) {
|
49458
49549
|
var route = routes[i],
|
49459
|
-
names = []
|
49550
|
+
names = [],
|
49551
|
+
shouldDecodes = [];
|
49460
49552
|
|
49461
|
-
var segments = parse(route.path, names, specificity);
|
49553
|
+
var segments = parse(route.path, names, specificity, shouldDecodes);
|
49462
49554
|
|
49463
49555
|
allSegments = allSegments.concat(segments);
|
49464
49556
|
|
@@ -49479,7 +49571,7 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49479
49571
|
currentState = segment.eachChar(currentState);
|
49480
49572
|
regex += segment.regex();
|
49481
49573
|
}
|
49482
|
-
var handler = { handler: route.handler, names: names };
|
49574
|
+
var handler = { handler: route.handler, names: names, shouldDecodes: shouldDecodes };
|
49483
49575
|
handlers[i] = handler;
|
49484
49576
|
}
|
49485
49577
|
|
@@ -49623,8 +49715,14 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49623
49715
|
l,
|
49624
49716
|
queryStart,
|
49625
49717
|
queryParams = {},
|
49718
|
+
hashStart,
|
49626
49719
|
isSlashDropped = false;
|
49627
49720
|
|
49721
|
+
hashStart = path.indexOf('#');
|
49722
|
+
if (hashStart !== -1) {
|
49723
|
+
path = path.substr(0, hashStart);
|
49724
|
+
}
|
49725
|
+
|
49628
49726
|
queryStart = path.indexOf('?');
|
49629
49727
|
if (queryStart !== -1) {
|
49630
49728
|
var queryString = path.substr(queryStart + 1, path.length);
|
@@ -49632,17 +49730,22 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49632
49730
|
queryParams = this.parseQueryString(queryString);
|
49633
49731
|
}
|
49634
49732
|
|
49635
|
-
path = decodeURI(path);
|
49636
|
-
|
49637
|
-
// DEBUG GROUP path
|
49638
|
-
|
49639
49733
|
if (path.charAt(0) !== "/") {
|
49640
49734
|
path = "/" + path;
|
49641
49735
|
}
|
49736
|
+
var originalPath = path;
|
49737
|
+
|
49738
|
+
if (RouteRecognizer.ENCODE_AND_DECODE_PATH_SEGMENTS) {
|
49739
|
+
path = normalizePath(path);
|
49740
|
+
} else {
|
49741
|
+
path = decodeURI(path);
|
49742
|
+
originalPath = decodeURI(originalPath);
|
49743
|
+
}
|
49642
49744
|
|
49643
49745
|
pathLen = path.length;
|
49644
49746
|
if (pathLen > 1 && path.charAt(pathLen - 1) === "/") {
|
49645
49747
|
path = path.substr(0, pathLen - 1);
|
49748
|
+
originalPath = originalPath.substr(0, pathLen - 1);
|
49646
49749
|
isSlashDropped = true;
|
49647
49750
|
}
|
49648
49751
|
|
@@ -49653,8 +49756,6 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49653
49756
|
}
|
49654
49757
|
}
|
49655
49758
|
|
49656
|
-
// END DEBUG GROUP
|
49657
|
-
|
49658
49759
|
var solutions = [];
|
49659
49760
|
for (i = 0; i < states.length; i++) {
|
49660
49761
|
if (states[i].handlers) {
|
@@ -49670,16 +49771,22 @@ enifed('route-recognizer', ['exports', 'route-recognizer/dsl'], function (export
|
|
49670
49771
|
// if a trailing slash was dropped and a star segment is the last segment
|
49671
49772
|
// specified, put the trailing slash back
|
49672
49773
|
if (isSlashDropped && state.regex.source.slice(-5) === "(.+)$") {
|
49673
|
-
|
49774
|
+
originalPath = originalPath + "/";
|
49674
49775
|
}
|
49675
|
-
return findHandler(state,
|
49776
|
+
return findHandler(state, originalPath, queryParams);
|
49676
49777
|
}
|
49677
49778
|
}
|
49678
49779
|
};
|
49679
49780
|
|
49680
49781
|
RouteRecognizer.prototype.map = _routeRecognizerDsl.default;
|
49681
49782
|
|
49682
|
-
RouteRecognizer.VERSION = '0.
|
49783
|
+
RouteRecognizer.VERSION = '0.2.0';
|
49784
|
+
|
49785
|
+
// Set to false to opt-out of encoding and decoding path segments.
|
49786
|
+
// See https://github.com/tildeio/route-recognizer/pull/55
|
49787
|
+
RouteRecognizer.ENCODE_AND_DECODE_PATH_SEGMENTS = true;
|
49788
|
+
|
49789
|
+
RouteRecognizer.Normalizer = _routeRecognizerNormalizer.default;
|
49683
49790
|
|
49684
49791
|
exports.default = RouteRecognizer;
|
49685
49792
|
});
|