Skip to content

Commit 0b8fb2e

Browse files
committed
4902244 fix(router): allow forward slashes in query parameters
1 parent e632c4d commit 0b8fb2e

22 files changed

Lines changed: 271 additions & 46 deletions

BUILD_INFO

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
Wed Apr 6 22:28:09 UTC 2016
2-
08f788a5e490a59dd4ca59823da7096c5e46d24e
1+
Wed Apr 6 22:38:21 UTC 2016
2+
4902244cce6b03bf1d0f322d7e0b5150105c5f90

bundles/angular2-all-testing.umd.dev.js

Lines changed: 26 additions & 4 deletions
Large diffs are not rendered by default.

bundles/angular2-all.umd.dev.js

Lines changed: 26 additions & 4 deletions
Large diffs are not rendered by default.

bundles/angular2-all.umd.js

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20919,7 +20919,7 @@ return /******/ (function(modules) { // webpackBootstrap
2091920919
}
2092020920
};
2092120921
__decorate([
20922-
core_1.Input('ngValue'),
20922+
core_1.Input('ng-value'),
2092320923
__metadata('design:type', Object),
2092420924
__metadata('design:paramtypes', [Object])
2092520925
], NgSelectOption.prototype, "ngValue", null);
@@ -34674,6 +34674,11 @@ return /******/ (function(modules) { // webpackBootstrap
3467434674
var match = lang_1.RegExpWrapper.firstMatch(SEGMENT_RE, str);
3467534675
return lang_1.isPresent(match) ? match[0] : '';
3467634676
}
34677+
var QUERY_PARAM_VALUE_RE = lang_1.RegExpWrapper.create('^[^\\(\\)\\?;&#]+');
34678+
function matchUrlQueryParamValue(str) {
34679+
var match = lang_1.RegExpWrapper.firstMatch(QUERY_PARAM_VALUE_RE, str);
34680+
return lang_1.isPresent(match) ? match[0] : '';
34681+
}
3467734682
var UrlParser = (function () {
3467834683
function UrlParser() {
3467934684
}
@@ -34745,10 +34750,10 @@ return /******/ (function(modules) { // webpackBootstrap
3474534750
UrlParser.prototype.parseQueryParams = function () {
3474634751
var params = {};
3474734752
this.capture('?');
34748-
this.parseParam(params);
34753+
this.parseQueryParam(params);
3474934754
while (this._remaining.length > 0 && this.peekStartsWith('&')) {
3475034755
this.capture('&');
34751-
this.parseParam(params);
34756+
this.parseQueryParam(params);
3475234757
}
3475334758
return params;
3475434759
};
@@ -34777,6 +34782,23 @@ return /******/ (function(modules) { // webpackBootstrap
3477734782
}
3477834783
params[key] = value;
3477934784
};
34785+
UrlParser.prototype.parseQueryParam = function (params) {
34786+
var key = matchUrlSegment(this._remaining);
34787+
if (lang_1.isBlank(key)) {
34788+
return;
34789+
}
34790+
this.capture(key);
34791+
var value = true;
34792+
if (this.peekStartsWith('=')) {
34793+
this.capture('=');
34794+
var valueMatch = matchUrlQueryParamValue(this._remaining);
34795+
if (lang_1.isPresent(valueMatch)) {
34796+
value = valueMatch;
34797+
this.capture(value);
34798+
}
34799+
}
34800+
params[key] = value;
34801+
};
3478034802
UrlParser.prototype.parseAuxiliaryRoutes = function () {
3478134803
var routes = [];
3478234804
this.capture('(');

bundles/angular2-all.umd.min.js

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

bundles/angular2.dev.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16538,7 +16538,7 @@ System.register("angular2/src/common/forms/directives/select_control_value_acces
1653816538
this._select.writeValue(this._select.value);
1653916539
}
1654016540
};
16541-
__decorate([core_1.Input('ngValue'), __metadata('design:type', Object), __metadata('design:paramtypes', [Object])], NgSelectOption.prototype, "ngValue", null);
16541+
__decorate([core_1.Input('ng-value'), __metadata('design:type', Object), __metadata('design:paramtypes', [Object])], NgSelectOption.prototype, "ngValue", null);
1654216542
__decorate([core_1.Input('value'), __metadata('design:type', Object), __metadata('design:paramtypes', [Object])], NgSelectOption.prototype, "value", null);
1654316543
NgSelectOption = __decorate([core_1.Directive({selector: 'option'}), __param(2, core_1.Optional()), __param(2, core_1.Host()), __metadata('design:paramtypes', [core_1.ElementRef, core_1.Renderer, SelectControlValueAccessor])], NgSelectOption);
1654416544
return NgSelectOption;

bundles/angular2.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16538,7 +16538,7 @@ System.register("angular2/src/common/forms/directives/select_control_value_acces
1653816538
this._select.writeValue(this._select.value);
1653916539
}
1654016540
};
16541-
__decorate([core_1.Input('ngValue'), __metadata('design:type', Object), __metadata('design:paramtypes', [Object])], NgSelectOption.prototype, "ngValue", null);
16541+
__decorate([core_1.Input('ng-value'), __metadata('design:type', Object), __metadata('design:paramtypes', [Object])], NgSelectOption.prototype, "ngValue", null);
1654216542
__decorate([core_1.Input('value'), __metadata('design:type', Object), __metadata('design:paramtypes', [Object])], NgSelectOption.prototype, "value", null);
1654316543
NgSelectOption = __decorate([core_1.Directive({selector: 'option'}), __param(2, core_1.Optional()), __param(2, core_1.Host()), __metadata('design:paramtypes', [core_1.ElementRef, core_1.Renderer, SelectControlValueAccessor])], NgSelectOption);
1654416544
return NgSelectOption;

bundles/angular2.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

bundles/router.dev.js

Lines changed: 24 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

bundles/router.js

Lines changed: 24 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)