@coolon/angular-ui-powerups 0.0.1
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.
- package/README.md +7 -0
- package/bundles/coolon-angular-ui-powerups.umd.js +3373 -0
- package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -0
- package/bundles/coolon-angular-ui-powerups.umd.min.js +2 -0
- package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -0
- package/coolon-angular-ui-powerups.d.ts +12 -0
- package/coolon-angular-ui-powerups.metadata.json +1 -0
- package/esm2015/coolon-angular-ui-powerups.js +17 -0
- package/esm2015/index.js +6 -0
- package/esm2015/lib/angular-ui-powerups.module.js +48 -0
- package/esm2015/lib/components/disposable-component.js +14 -0
- package/esm2015/lib/components/forms/abstract-input.component.js +173 -0
- package/esm2015/lib/components/forms/number-input/number-input.component.js +26 -0
- package/esm2015/lib/components/forms/password-input/password-input.component.js +26 -0
- package/esm2015/lib/components/forms/select-input/select-input.component.js +60 -0
- package/esm2015/lib/components/forms/string-input/string-input.component.js +26 -0
- package/esm2015/lib/components/index.js +18 -0
- package/esm2015/lib/components/resize-aware.component.js +96 -0
- package/esm2015/lib/components/types/bounds.class.js +56 -0
- package/esm2015/lib/components/types/dimension.class.js +21 -0
- package/esm2015/lib/components/types/point.class.js +36 -0
- package/esm2015/lib/directives/command.directive.js +91 -0
- package/esm2015/lib/directives/focus-binding.directive.js +163 -0
- package/esm2015/lib/directives/index.js +10 -0
- package/esm2015/lib/interaction/abstract-activity.js +129 -0
- package/esm2015/lib/interaction/activity.js +27 -0
- package/esm2015/lib/interaction/alert.js +23 -0
- package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +144 -0
- package/esm2015/lib/interaction/components/activity-outlet/activity-outlet-context.js +22 -0
- package/esm2015/lib/interaction/components/activity-outlet/activity-outlet.component.js +169 -0
- package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js +37 -0
- package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +46 -0
- package/esm2015/lib/interaction/confirm.js +17 -0
- package/esm2015/lib/interaction/index.js +21 -0
- package/esm2015/lib/interaction/interaction-context.js +35 -0
- package/esm2015/lib/interaction/interaction.module.js +41 -0
- package/esm2015/lib/interaction/result.js +24 -0
- package/esm2015/lib/interaction/services/dialog-interaction.service.js +112 -0
- package/esm2015/lib/place/abstract-place-component.js +59 -0
- package/esm2015/lib/place/components/busy-overlay/busy-overlay.component.js +44 -0
- package/esm2015/lib/place/components/empty-state/empty-state.component.js +28 -0
- package/esm2015/lib/place/components/place-outlet/place-outlet.component.js +52 -0
- package/esm2015/lib/place/guards/leave-place.guard.js +52 -0
- package/esm2015/lib/place/guards/place-route.guard.js +74 -0
- package/esm2015/lib/place/index.js +25 -0
- package/esm2015/lib/place/place-component.js +17 -0
- package/esm2015/lib/place/place.decorator.js +67 -0
- package/esm2015/lib/place/place.module.js +38 -0
- package/esm2015/lib/place/place.service.js +61 -0
- package/esm2015/lib/place/route/json-types.js +13 -0
- package/esm2015/lib/place/route/parameter-decorators.js +82 -0
- package/esm2015/lib/place/route/parameter-definition.class.js +22 -0
- package/esm2015/lib/place/route/parameter-sanitiser.js +17 -0
- package/esm2015/lib/place/route/parameter-type.js +43 -0
- package/esm2015/lib/place/route/route-parameter-bindings.js +282 -0
- package/esm2015/lib/place/route/route-parameter-sanitiser.js +148 -0
- package/esm2015/public_api.js +10 -0
- package/esm5/coolon-angular-ui-powerups.js +17 -0
- package/esm5/index.js +6 -0
- package/esm5/lib/angular-ui-powerups.module.js +52 -0
- package/esm5/lib/components/disposable-component.js +24 -0
- package/esm5/lib/components/forms/abstract-input.component.js +218 -0
- package/esm5/lib/components/forms/number-input/number-input.component.js +33 -0
- package/esm5/lib/components/forms/password-input/password-input.component.js +33 -0
- package/esm5/lib/components/forms/select-input/select-input.component.js +67 -0
- package/esm5/lib/components/forms/string-input/string-input.component.js +33 -0
- package/esm5/lib/components/index.js +18 -0
- package/esm5/lib/components/resize-aware.component.js +124 -0
- package/esm5/lib/components/types/bounds.class.js +59 -0
- package/esm5/lib/components/types/dimension.class.js +19 -0
- package/esm5/lib/components/types/point.class.js +43 -0
- package/esm5/lib/directives/command.directive.js +107 -0
- package/esm5/lib/directives/focus-binding.directive.js +211 -0
- package/esm5/lib/directives/index.js +10 -0
- package/esm5/lib/interaction/abstract-activity.js +173 -0
- package/esm5/lib/interaction/activity.js +27 -0
- package/esm5/lib/interaction/alert.js +23 -0
- package/esm5/lib/interaction/components/activity-container/activity-container.component.js +181 -0
- package/esm5/lib/interaction/components/activity-outlet/activity-outlet-context.js +22 -0
- package/esm5/lib/interaction/components/activity-outlet/activity-outlet.component.js +206 -0
- package/esm5/lib/interaction/components/alert-dialog/alert-dialog.component.js +42 -0
- package/esm5/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +54 -0
- package/esm5/lib/interaction/confirm.js +17 -0
- package/esm5/lib/interaction/index.js +21 -0
- package/esm5/lib/interaction/interaction-context.js +45 -0
- package/esm5/lib/interaction/interaction.module.js +45 -0
- package/esm5/lib/interaction/result.js +24 -0
- package/esm5/lib/interaction/services/dialog-interaction.service.js +138 -0
- package/esm5/lib/place/abstract-place-component.js +66 -0
- package/esm5/lib/place/components/busy-overlay/busy-overlay.component.js +49 -0
- package/esm5/lib/place/components/empty-state/empty-state.component.js +29 -0
- package/esm5/lib/place/components/place-outlet/place-outlet.component.js +62 -0
- package/esm5/lib/place/guards/leave-place.guard.js +57 -0
- package/esm5/lib/place/guards/place-route.guard.js +78 -0
- package/esm5/lib/place/index.js +25 -0
- package/esm5/lib/place/place-component.js +17 -0
- package/esm5/lib/place/place.decorator.js +64 -0
- package/esm5/lib/place/place.module.js +42 -0
- package/esm5/lib/place/place.service.js +75 -0
- package/esm5/lib/place/route/json-types.js +13 -0
- package/esm5/lib/place/route/parameter-decorators.js +82 -0
- package/esm5/lib/place/route/parameter-definition.class.js +22 -0
- package/esm5/lib/place/route/parameter-sanitiser.js +17 -0
- package/esm5/lib/place/route/parameter-type.js +65 -0
- package/esm5/lib/place/route/route-parameter-bindings.js +327 -0
- package/esm5/lib/place/route/route-parameter-sanitiser.js +203 -0
- package/esm5/public_api.js +10 -0
- package/fesm2015/coolon-angular-ui-powerups.js +2687 -0
- package/fesm2015/coolon-angular-ui-powerups.js.map +1 -0
- package/fesm5/coolon-angular-ui-powerups.js +3164 -0
- package/fesm5/coolon-angular-ui-powerups.js.map +1 -0
- package/index.d.ts +1 -0
- package/lib/angular-ui-powerups.module.d.ts +2 -0
- package/lib/components/disposable-component.d.ts +5 -0
- package/lib/components/forms/abstract-input.component.d.ts +34 -0
- package/lib/components/forms/number-input/number-input.component.d.ts +6 -0
- package/lib/components/forms/password-input/password-input.component.d.ts +6 -0
- package/lib/components/forms/select-input/select-input.component.d.ts +11 -0
- package/lib/components/forms/string-input/string-input.component.d.ts +6 -0
- package/lib/components/index.d.ts +13 -0
- package/lib/components/resize-aware.component.d.ts +22 -0
- package/lib/components/types/bounds.class.d.ts +16 -0
- package/lib/components/types/dimension.class.d.ts +5 -0
- package/lib/components/types/point.class.d.ts +10 -0
- package/lib/directives/command.directive.d.ts +11 -0
- package/lib/directives/focus-binding.directive.d.ts +21 -0
- package/lib/directives/index.d.ts +5 -0
- package/lib/interaction/abstract-activity.d.ts +17 -0
- package/lib/interaction/activity.d.ts +11 -0
- package/lib/interaction/alert.d.ts +5 -0
- package/lib/interaction/components/activity-container/activity-container.component.d.ts +32 -0
- package/lib/interaction/components/activity-outlet/activity-outlet-context.d.ts +10 -0
- package/lib/interaction/components/activity-outlet/activity-outlet.component.d.ts +30 -0
- package/lib/interaction/components/alert-dialog/alert-dialog.component.d.ts +8 -0
- package/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.d.ts +9 -0
- package/lib/interaction/confirm.d.ts +5 -0
- package/lib/interaction/index.d.ts +16 -0
- package/lib/interaction/interaction-context.d.ts +11 -0
- package/lib/interaction/interaction.module.d.ts +2 -0
- package/lib/interaction/result.d.ts +8 -0
- package/lib/interaction/services/dialog-interaction.service.d.ts +14 -0
- package/lib/place/abstract-place-component.d.ts +13 -0
- package/lib/place/components/busy-overlay/busy-overlay.component.d.ts +8 -0
- package/lib/place/components/empty-state/empty-state.component.d.ts +5 -0
- package/lib/place/components/place-outlet/place-outlet.component.d.ts +10 -0
- package/lib/place/guards/leave-place.guard.d.ts +10 -0
- package/lib/place/guards/place-route.guard.d.ts +9 -0
- package/lib/place/index.d.ts +20 -0
- package/lib/place/place-component.d.ts +5 -0
- package/lib/place/place.decorator.d.ts +18 -0
- package/lib/place/place.module.d.ts +2 -0
- package/lib/place/place.service.d.ts +8 -0
- package/lib/place/route/json-types.d.ts +7 -0
- package/lib/place/route/parameter-decorators.d.ts +9 -0
- package/lib/place/route/parameter-definition.class.d.ts +10 -0
- package/lib/place/route/parameter-sanitiser.d.ts +3 -0
- package/lib/place/route/parameter-type.d.ts +16 -0
- package/lib/place/route/route-parameter-bindings.d.ts +18 -0
- package/lib/place/route/route-parameter-sanitiser.d.ts +15 -0
- package/package.json +31 -0
- package/public_api.d.ts +5 -0
- package/schematics/collection.json +14 -0
- package/schematics/ng-add/index.d.ts +2 -0
- package/schematics/ng-add/index.js +12 -0
- package/schematics/ng-add/index.js.map +1 -0
- package/schematics/place-routes/index.d.ts +3 -0
- package/schematics/place-routes/index.js +92 -0
- package/schematics/place-routes/index.js.map +1 -0
- package/schematics/place-routes/place-def.d.ts +31 -0
- package/schematics/place-routes/place-def.js +75 -0
- package/schematics/place-routes/place-def.js.map +1 -0
- package/schematics/place-routes/scanner.d.ts +26 -0
- package/schematics/place-routes/scanner.js +124 -0
- package/schematics/place-routes/scanner.js.map +1 -0
- package/schematics/place-routes/schema.d.ts +7 -0
- package/schematics/place-routes/schema.js +3 -0
- package/schematics/place-routes/schema.js.map +1 -0
- package/schematics/place-routes/schema.json +17 -0
- package/schematics/place-routes/templates/apps/__project__/src/app/place-routes.ts.template +31 -0
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
7
|
+
import { Binding, Dsl, GarbageCollector, MutableValueModel, Trace, TransactionObserver } from '@coolon/pectin';
|
|
8
|
+
import { Klass } from '@coolon/typescript-utilities';
|
|
9
|
+
/**
|
|
10
|
+
* @record
|
|
11
|
+
* @template T
|
|
12
|
+
*/
|
|
13
|
+
function ResolvedParameter() { }
|
|
14
|
+
if (false) {
|
|
15
|
+
/** @type {?} */
|
|
16
|
+
ResolvedParameter.prototype.parameter;
|
|
17
|
+
/** @type {?} */
|
|
18
|
+
ResolvedParameter.prototype.resolvedValue;
|
|
19
|
+
}
|
|
20
|
+
class ResolvedParameters {
|
|
21
|
+
/**
|
|
22
|
+
* @param {?} parameters
|
|
23
|
+
*/
|
|
24
|
+
constructor(parameters) {
|
|
25
|
+
this.parameters = parameters;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @template T
|
|
29
|
+
* @param {?} parameter
|
|
30
|
+
* @return {?}
|
|
31
|
+
*/
|
|
32
|
+
get(parameter) {
|
|
33
|
+
/** @type {?} */
|
|
34
|
+
const resolved = this.parameters.find((/**
|
|
35
|
+
* @param {?} p
|
|
36
|
+
* @return {?}
|
|
37
|
+
*/
|
|
38
|
+
p => p.parameter === parameter));
|
|
39
|
+
return resolved ? resolved.resolvedValue : null;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* @template T
|
|
43
|
+
* @param {?} parameter
|
|
44
|
+
* @param {?} value
|
|
45
|
+
* @return {?}
|
|
46
|
+
*/
|
|
47
|
+
replace(parameter, value) {
|
|
48
|
+
return new ResolvedParameters(this.parameters.filter((/**
|
|
49
|
+
* @param {?} p
|
|
50
|
+
* @return {?}
|
|
51
|
+
*/
|
|
52
|
+
p => p.parameter !== parameter)).concat({
|
|
53
|
+
parameter,
|
|
54
|
+
resolvedValue: value
|
|
55
|
+
}));
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* @protected
|
|
59
|
+
* @return {?}
|
|
60
|
+
*/
|
|
61
|
+
getFormattedRouteId() {
|
|
62
|
+
/** @type {?} */
|
|
63
|
+
const routeIdParam = this.getRouteIdParam();
|
|
64
|
+
return routeIdParam ? routeIdParam.parameter.type.format(routeIdParam.resolvedValue) : null;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* @private
|
|
68
|
+
* @return {?}
|
|
69
|
+
*/
|
|
70
|
+
getRouteIdParam() {
|
|
71
|
+
return this.parameters.find((/**
|
|
72
|
+
* @param {?} p
|
|
73
|
+
* @return {?}
|
|
74
|
+
*/
|
|
75
|
+
p => p.parameter.isRouteId));
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* @protected
|
|
79
|
+
* @return {?}
|
|
80
|
+
*/
|
|
81
|
+
getFormattedParameters() {
|
|
82
|
+
/** @type {?} */
|
|
83
|
+
const params = {};
|
|
84
|
+
/** @type {?} */
|
|
85
|
+
const routeIdParam = this.parameters.filter((/**
|
|
86
|
+
* @param {?} p
|
|
87
|
+
* @return {?}
|
|
88
|
+
*/
|
|
89
|
+
p => !p.parameter.isRouteId)).forEach((/**
|
|
90
|
+
* @param {?} p
|
|
91
|
+
* @return {?}
|
|
92
|
+
*/
|
|
93
|
+
p => {
|
|
94
|
+
params[p.parameter.name] = p.parameter.type.format(p.resolvedValue);
|
|
95
|
+
}));
|
|
96
|
+
return params;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* @return {?}
|
|
100
|
+
*/
|
|
101
|
+
hasRouteId() {
|
|
102
|
+
return !!this.getRouteIdParam();
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* @param {?} previous
|
|
106
|
+
* @param {?} router
|
|
107
|
+
* @param {?} activatedRoute
|
|
108
|
+
* @return {?}
|
|
109
|
+
*/
|
|
110
|
+
redirect(previous, router, activatedRoute) {
|
|
111
|
+
/** @type {?} */
|
|
112
|
+
const routeId = this.getFormattedRouteId();
|
|
113
|
+
/** @type {?} */
|
|
114
|
+
const relativePath = !!previous.hasRouteId() ? '..' : '.';
|
|
115
|
+
/** @type {?} */
|
|
116
|
+
const path = routeId ? [relativePath, routeId, this.getFormattedParameters()] : [relativePath, this.getFormattedParameters()];
|
|
117
|
+
router.navigate(path, {
|
|
118
|
+
relativeTo: activatedRoute,
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
tslib_1.__decorate([
|
|
123
|
+
Trace(),
|
|
124
|
+
tslib_1.__metadata("design:type", Function),
|
|
125
|
+
tslib_1.__metadata("design:paramtypes", []),
|
|
126
|
+
tslib_1.__metadata("design:returntype", void 0)
|
|
127
|
+
], ResolvedParameters.prototype, "getFormattedRouteId", null);
|
|
128
|
+
tslib_1.__decorate([
|
|
129
|
+
Trace(),
|
|
130
|
+
tslib_1.__metadata("design:type", Function),
|
|
131
|
+
tslib_1.__metadata("design:paramtypes", []),
|
|
132
|
+
tslib_1.__metadata("design:returntype", void 0)
|
|
133
|
+
], ResolvedParameters.prototype, "getFormattedParameters", null);
|
|
134
|
+
tslib_1.__decorate([
|
|
135
|
+
Trace(),
|
|
136
|
+
tslib_1.__metadata("design:type", Function),
|
|
137
|
+
tslib_1.__metadata("design:paramtypes", [ResolvedParameters, Router, ActivatedRoute]),
|
|
138
|
+
tslib_1.__metadata("design:returntype", void 0)
|
|
139
|
+
], ResolvedParameters.prototype, "redirect", null);
|
|
140
|
+
if (false) {
|
|
141
|
+
/** @type {?} */
|
|
142
|
+
ResolvedParameters.prototype.parameters;
|
|
143
|
+
}
|
|
144
|
+
export class RouteParameterBindings extends GarbageCollector {
|
|
145
|
+
/**
|
|
146
|
+
* @param {?} component
|
|
147
|
+
* @param {?} router
|
|
148
|
+
* @param {?} activatedRoute
|
|
149
|
+
*/
|
|
150
|
+
constructor(component, router, activatedRoute) {
|
|
151
|
+
super();
|
|
152
|
+
this.component = component;
|
|
153
|
+
this.router = router;
|
|
154
|
+
this.activatedRoute = activatedRoute;
|
|
155
|
+
this._incomingRouteChange = new MutableValueModel(false);
|
|
156
|
+
this.resolvedParameters = new MutableValueModel();
|
|
157
|
+
const { chain, valueOf, before, when, after, observe } = Dsl.disposeWith(this);
|
|
158
|
+
this.txo = new TransactionObserver(); //.onEvent(e => console.log(e.toString()));
|
|
159
|
+
//.onEvent(e => console.log(e.toString()));
|
|
160
|
+
/** @type {?} */
|
|
161
|
+
const routeParameterDefs = Klass.get(component).getMetadataList(RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY);
|
|
162
|
+
routeParameterDefs.forEach((/**
|
|
163
|
+
* @param {?} parameter
|
|
164
|
+
* @return {?}
|
|
165
|
+
*/
|
|
166
|
+
parameter => this.installBinding(parameter)));
|
|
167
|
+
/** @type {?} */
|
|
168
|
+
const incomingResolvedRouteParameters = observe.valuesFrom(activatedRoute.paramMap)
|
|
169
|
+
.last()
|
|
170
|
+
.map((/**
|
|
171
|
+
* @param {?} params
|
|
172
|
+
* @return {?}
|
|
173
|
+
*/
|
|
174
|
+
params => {
|
|
175
|
+
/** @type {?} */
|
|
176
|
+
const result = [];
|
|
177
|
+
routeParameterDefs.forEach((/**
|
|
178
|
+
* @param {?} parameter
|
|
179
|
+
* @return {?}
|
|
180
|
+
*/
|
|
181
|
+
parameter => {
|
|
182
|
+
result.push({ parameter, resolvedValue: parameter.type.parse(params.get(parameter.name)) });
|
|
183
|
+
}));
|
|
184
|
+
return new ResolvedParameters(result);
|
|
185
|
+
}));
|
|
186
|
+
incomingResolvedRouteParameters.subscribe((/**
|
|
187
|
+
* @param {?} resolvedParameters
|
|
188
|
+
* @return {?}
|
|
189
|
+
*/
|
|
190
|
+
resolvedParameters => {
|
|
191
|
+
this._incomingRouteChange.value = true;
|
|
192
|
+
this.resolvedParameters.value = resolvedParameters;
|
|
193
|
+
this._incomingRouteChange.value = false;
|
|
194
|
+
}));
|
|
195
|
+
when.valueOf(this.resolvedParameters).changes((/**
|
|
196
|
+
* @param {?} params
|
|
197
|
+
* @param {?} previous
|
|
198
|
+
* @return {?}
|
|
199
|
+
*/
|
|
200
|
+
(params, previous) => {
|
|
201
|
+
params.redirect(previous, router, activatedRoute);
|
|
202
|
+
}), { unless: this.incomingRouteChange });
|
|
203
|
+
this.txo.observe('incomingResolvedRouteParameters', incomingResolvedRouteParameters);
|
|
204
|
+
this.txo.observe('this.routeIsChanging', this.incomingRouteChange);
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* @return {?}
|
|
208
|
+
*/
|
|
209
|
+
get incomingRouteChange() {
|
|
210
|
+
return this._incomingRouteChange.readonly;
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* @protected
|
|
214
|
+
* @template T
|
|
215
|
+
* @param {?} parameter
|
|
216
|
+
* @return {?}
|
|
217
|
+
*/
|
|
218
|
+
installBinding(parameter) {
|
|
219
|
+
/** @type {?} */
|
|
220
|
+
const model = this.getModelFor(parameter);
|
|
221
|
+
this.txo.observe(parameter.propertyName, model);
|
|
222
|
+
this.registerDisposable(new Binding(this.resolvedParameters, model, {
|
|
223
|
+
/**
|
|
224
|
+
* @param {?} parameters
|
|
225
|
+
* @return {?}
|
|
226
|
+
*/
|
|
227
|
+
toRight(parameters) {
|
|
228
|
+
return parameters.get(parameter);
|
|
229
|
+
},
|
|
230
|
+
/**
|
|
231
|
+
* @param {?} value
|
|
232
|
+
* @param {?=} currentParameters
|
|
233
|
+
* @return {?}
|
|
234
|
+
*/
|
|
235
|
+
toLeft(value, currentParameters) {
|
|
236
|
+
return currentParameters.replace(parameter, value);
|
|
237
|
+
}
|
|
238
|
+
}));
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* @private
|
|
242
|
+
* @template T
|
|
243
|
+
* @param {?} parameter
|
|
244
|
+
* @return {?}
|
|
245
|
+
*/
|
|
246
|
+
getModelFor(parameter) {
|
|
247
|
+
return this.component[parameter.propertyName];
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
if (false) {
|
|
251
|
+
/** @type {?} */
|
|
252
|
+
RouteParameterBindings.prototype._incomingRouteChange;
|
|
253
|
+
/**
|
|
254
|
+
* @type {?}
|
|
255
|
+
* @private
|
|
256
|
+
*/
|
|
257
|
+
RouteParameterBindings.prototype.txo;
|
|
258
|
+
/**
|
|
259
|
+
* @type {?}
|
|
260
|
+
* @private
|
|
261
|
+
*/
|
|
262
|
+
RouteParameterBindings.prototype.resolvedParameters;
|
|
263
|
+
/**
|
|
264
|
+
* @type {?}
|
|
265
|
+
* @private
|
|
266
|
+
*/
|
|
267
|
+
RouteParameterBindings.prototype.component;
|
|
268
|
+
/**
|
|
269
|
+
* @type {?}
|
|
270
|
+
* @private
|
|
271
|
+
*/
|
|
272
|
+
RouteParameterBindings.prototype.router;
|
|
273
|
+
/**
|
|
274
|
+
* @type {?}
|
|
275
|
+
* @private
|
|
276
|
+
*/
|
|
277
|
+
RouteParameterBindings.prototype.activatedRoute;
|
|
278
|
+
}
|
|
279
|
+
(function (RouteParameterBindings) {
|
|
280
|
+
RouteParameterBindings.ROUTE_PARAMETER_LIST_KEY = Symbol('place:route:parameters');
|
|
281
|
+
})(RouteParameterBindings || (RouteParameterBindings = {}));
|
|
282
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtcGFyYW1ldGVyLWJpbmRpbmdzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGNvb2xvbi9hbmd1bGFyLXVpLXBvd2VydXBzLyIsInNvdXJjZXMiOlsibGliL3BsYWNlL3JvdXRlL3JvdXRlLXBhcmFtZXRlci1iaW5kaW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUNMLE9BQU8sRUFDUCxHQUFHLEVBQ0gsZ0JBQWdCLEVBRWhCLGlCQUFpQixFQUNqQixLQUFLLEVBQ0wsbUJBQW1CLEVBQ3BCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7OztBQUlyRCxnQ0FHQzs7O0lBRkMsc0NBQWtDOztJQUNsQywwQ0FBaUI7O0FBR25CLE1BQU0sa0JBQWtCOzs7O0lBQ3RCLFlBQXFCLFVBQW9DO1FBQXBDLGVBQVUsR0FBVixVQUFVLENBQTBCO0lBQ3pELENBQUM7Ozs7OztJQUVELEdBQUcsQ0FBSSxTQUFpQzs7Y0FDaEMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSTs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUM7UUFDckUsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNsRCxDQUFDOzs7Ozs7O0lBRUQsT0FBTyxDQUFJLFNBQWlDLEVBQUUsS0FBUTtRQUNwRCxPQUFPLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNOzs7O1FBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBQyxDQUFDLE1BQU0sQ0FBQztZQUMxRixTQUFTO1lBQ1QsYUFBYSxFQUFF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LGdEQUErQzs7QUF1RC9ILFdBQWlCLHNCQUFzQjtJQUN4QiwrQ0FBd0IsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUM7QUFDMUUsQ0FBQyxFQUZnQixzQkFBc0IsS0FBdEIsc0JBQXNCLFFBRXRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBCaW5kaW5nLFxuICBEc2wsXG4gIEdhcmJhZ2VDb2xsZWN0b3IsXG4gIE11dGFibGVIYXNWYWx1ZSxcbiAgTXV0YWJsZVZhbHVlTW9kZWwsXG4gIFRyYWNlLFxuICBUcmFuc2FjdGlvbk9ic2VydmVyXG59IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IEtsYXNzIH0gZnJvbSAnQGNvb2xvbi90eXBlc2NyaXB0LXV0aWxpdGllcyc7XG5pbXBvcnQgeyBBYnN0cmFjdFBsYWNlQ29tcG9uZW50IH0gZnJvbSAnLi4vYWJzdHJhY3QtcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7IFBhcmFtZXRlckRlZmluaXRpb24gfSBmcm9tICcuL3BhcmFtZXRlci1kZWZpbml0aW9uLmNsYXNzJztcblxuaW50ZXJmYWNlIFJlc29sdmVkUGFyYW1ldGVyPFQ+IHtcbiAgcGFyYW1ldGVyOiBQYXJhbWV0ZXJEZWZpbml0aW9uPFQ+O1xuICByZXNvbHZlZFZhbHVlOiBUO1xufVxuXG5jbGFzcyBSZXNvbHZlZFBhcmFtZXRlcnMge1xuICBjb25zdHJ1Y3RvcihyZWFkb25seSBwYXJhbWV0ZXJzOiBSZXNvbHZlZFBhcmFtZXRlcjxhbnk+W10pIHtcbiAgfVxuXG4gIGdldDxUPihwYXJhbWV0ZXI6IFBhcmFtZXRlckRlZmluaXRpb248VD4pOiBUIHtcbiAgICBjb25zdCByZXNvbHZlZCA9IHRoaXMucGFyYW1ldGVycy5maW5kKHAgPT4gcC5wYXJhbWV0ZXIgPT09IHBhcmFtZXRlcik7XG4gICAgcmV0dXJuIHJlc29sdmVkID8gcmVzb2x2ZWQucmVzb2x2ZWRWYWx1ZSA6IG51bGw7XG4gIH1cblxuICByZXBsYWNlPFQ+KHBhcmFtZXRlcjogUGFyYW1ldGVyRGVmaW5pdGlvbjxUPiwgdmFsdWU6IFQpOiBSZXNvbHZlZFBhcmFtZXRlcnMge1xuICAgIHJldHVybiBuZXcgUmVzb2x2ZWRQYXJhbWV0ZXJzKHRoaXMucGFyYW1ldGVycy5maWx0ZXIocCA9PiBwLnBhcmFtZXRlciAhPT0gcGFyYW1ldGVyKS5jb25jYXQoe1xuICAgICAgcGFyYW1ldGVyLFxuICAgICAgcmVzb2x2ZWRWYWx1ZTogdmFsdWVcbiAgICB9KSk7XG4gIH1cblxuICBAVHJhY2UoKVxuICBwcm90ZWN0ZWQgZ2V0Rm9ybWF0dGVkUm91dGVJZCgpIHtcbiAgICBjb25zdCByb3V0ZUlkUGFyYW0gPSB0aGlzLmdldFJvdXRlSWRQYXJhbSgpO1xuICAgIHJldHVybiByb3V0ZUlkUGFyYW0gPyByb3V0ZUlkUGFyYW0ucGFyYW1ldGVyLnR5cGUuZm9ybWF0KHJvdXRlSWRQYXJhbS5yZXNvbHZlZFZhbHVlKSA6IG51bGw7XG4gIH1cblxuICBwcml2YXRlIGdldFJvdXRlSWRQYXJhbSgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJhbWV0ZXJzLmZpbmQocCA9PiBwLnBhcmFtZXRlci5pc1JvdXRlSWQpO1xuICB9XG5cbiAgQFRyYWNlKClcbiAgcHJvdGVjdGVkIGdldEZvcm1hdHRlZFBhcmFtZXRlcnMoKSB7XG4gICAgY29uc3QgcGFyYW1zID0ge307XG4gICAgY29uc3Qgcm91dGVJZFBhcmFtID0gdGhpcy5wYXJhbWV0ZXJzLmZpbHRlcihwID0+ICFwLnBhcmFtZXRlci5pc1JvdXRlSWQpLmZvckVhY2gocCA9PiB7XG4gICAgICBwYXJhbXNbcC5wYXJhbWV0ZXIubmFtZV0gPSBwLnBhcmFtZXRlci50eXBlLmZvcm1hdChwLnJlc29sdmVkVmFsdWUpO1xuICAgIH0pO1xuICAgIHJldHVybiBwYXJhbXM7XG4gIH1cblxuICBoYXNSb3V0ZUlkKCkge1xuICAgIHJldHVybiAhIXRoaXMuZ2V0Um91dGVJZFBhcmFtKCk7XG4gIH1cblxuICBAVHJhY2UoKVxuICByZWRpcmVjdChwcmV2aW91czogUmVzb2x2ZWRQYXJhbWV0ZXJzLCByb3V0ZXI6IFJvdXRlciwgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XG4gICAgY29uc3Qgcm91dGVJZCA9IHRoaXMuZ2V0Rm9ybWF0dGVkUm91dGVJZCgpO1xuICAgIGNvbnN0IHJlbGF0aXZlUGF0aCA9ICEhcHJldmlvdXMuaGFzUm91dGVJZCgpID8gJy4uJyA6ICcuJztcbiAgICBjb25zdCBwYXRoID0gcm91dGVJZCA/IFtyZWxhdGl2ZVBhdGgsIHJvdXRlSWQsIHRoaXMuZ2V0Rm9ybWF0dGVkUGFyYW1ldGVycygpXSA6IFtyZWxhdGl2ZVBhdGgsIHRoaXMuZ2V0Rm9ybWF0dGVkUGFyYW1ldGVycygpXTtcbiAgICByb3V0ZXIubmF2aWdhdGUocGF0aCwge1xuICAgICAgcmVsYXRpdmVUbzogYWN0aXZhdGVkUm91dGUsXG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJvdXRlUGFyYW1ldGVyQmluZGluZ3MgZXh0ZW5kcyBHYXJiYWdlQ29sbGVjdG9yIHtcblxuICBwdWJsaWMgcmVhZG9ubHkgX2luY29taW5nUm91dGVDaGFuZ2UgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHByaXZhdGUgdHhvOiBUcmFuc2FjdGlvbk9ic2VydmVyO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzb2x2ZWRQYXJhbWV0ZXJzID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPFJlc29sdmVkUGFyYW1ldGVycz4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNvbXBvbmVudDogYW55LCBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHJlYWRvbmx5IGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkge1xuICAgIHN1cGVyKCk7XG4gICAgY29uc3QgeyBjaGFpbiwgdmFsdWVPZiwgYmVmb3JlLCB3aGVuLCBhZnRlciwgb2JzZXJ2ZSB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuICAgIHRoaXMudHhvID0gbmV3IFRyYW5zYWN0aW9uT2JzZXJ2ZXIoKTsvLy5vbkV2ZW50KGUgPT4gY29uc29sZS5sb2coZS50b1N0cmluZygpKSk7XG5cbiAgICBjb25zdCByb3V0ZVBhcmFtZXRlckRlZnMgPSBLbGFzcy5nZXQoY29tcG9uZW50KS5nZXRNZXRhZGF0YUxpc3QoUm91dGVQYXJhbWV0ZXJCaW5kaW5ncy5ST1VURV9QQVJBTUVURVJfTElTVF9LRVkpO1xuICAgIHJvdXRlUGFyYW1ldGVyRGVmcy5mb3JFYWNoKHBhcmFtZXRlciA9PiB0aGlzLmluc3RhbGxCaW5kaW5nKHBhcmFtZXRlcikpO1xuXG4gICAgY29uc3QgaW5jb21pbmdSZXNvbHZlZFJvdXRlUGFyYW1ldGVycyA9IG9ic2VydmUudmFsdWVzRnJvbShhY3RpdmF0ZWRSb3V0ZS5wYXJhbU1hcClcbiAgICAgIC5sYXN0KClcbiAgICAgIC5tYXAocGFyYW1zID0+IHtcbiAgICAgICAgY29uc3QgcmVzdWx0OiBSZXNvbHZlZFBhcmFtZXRlcjxhbnk+W10gPSBbXTtcbiAgICAgICAgcm91dGVQYXJhbWV0ZXJEZWZzLmZvckVhY2gocGFyYW1ldGVyID0+IHtcbiAgICAgICAgICByZXN1bHQucHVzaCh7IHBhcmFtZXRlciwgcmVzb2x2ZWRWYWx1ZTogcGFyYW1ldGVyLnR5cGUucGFyc2UocGFyYW1zLmdldChwYXJhbWV0ZXIubmFtZSkpIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIG5ldyBSZXNvbHZlZFBhcmFtZXRlcnMocmVzdWx0KTtcbiAgICAgIH0pO1xuXG4gICAgaW5jb21pbmdSZXNvbHZlZFJvdXRlUGFyYW1ldGVycy5zdWJzY3JpYmUocmVzb2x2ZWRQYXJhbWV0ZXJzID0+IHtcbiAgICAgIHRoaXMuX2luY29taW5nUm91dGVDaGFuZ2UudmFsdWUgPSB0cnVlO1xuICAgICAgdGhpcy5yZXNvbHZlZFBhcmFtZXRlcnMudmFsdWUgPSByZXNvbHZlZFBhcmFtZXRlcnM7XG4gICAgICB0aGlzLl9pbmNvbWluZ1JvdXRlQ2hhbmdlLnZhbHVlID0gZmFsc2U7XG4gICAgfSk7XG5cbiAgICB3aGVuLnZhbHVlT2YodGhpcy5yZXNvbHZlZFBhcmFtZXRlcnMpLmNoYW5nZXMoKHBhcmFtcywgcHJldmlvdXMpID0+IHtcbiAgICAgIHBhcmFtcy5yZWRpcmVjdChwcmV2aW91cywgcm91dGVyLCBhY3RpdmF0ZWRSb3V0ZSk7XG4gICAgfSwgeyB1bmxlc3M6IHRoaXMuaW5jb21pbmdSb3V0ZUNoYW5nZSB9KTtcblxuICAgIHRoaXMudHhvLm9ic2VydmUoJ2luY29taW5nUmVzb2x2ZWRSb3V0ZVBhcmFtZXRlcnMnLCBpbmNvbWluZ1Jlc29sdmVkUm91dGVQYXJhbWV0ZXJzKTtcbiAgICB0aGlzLnR4by5vYnNlcnZlKCd0aGlzLnJvdXRlSXNDaGFuZ2luZycsIHRoaXMuaW5jb21pbmdSb3V0ZUNoYW5nZSk7XG4gIH1cblxuICBnZXQgaW5jb21pbmdSb3V0ZUNoYW5nZSgpIHtcbiAgICByZXR1cm4gdGhpcy5faW5jb21pbmdSb3V0ZUNoYW5nZS5yZWFkb25seTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbnN0YWxsQmluZGluZzxUPihwYXJhbWV0ZXI6IFBhcmFtZXRlckRlZmluaXRpb248VD4pIHtcbiAgICBjb25zdCBtb2RlbCA9IHRoaXMuZ2V0TW9kZWxGb3IocGFyYW1ldGVyKTtcbiAgICB0aGlzLnR4by5vYnNlcnZlKHBhcmFtZXRlci5wcm9wZXJ0eU5hbWUsIG1vZGVsKTtcbiAgICB0aGlzLnJlZ2lzdGVyRGlzcG9zYWJsZShuZXcgQmluZGluZyh0aGlzLnJlc29sdmVkUGFyYW1ldGVycywgbW9kZWwsIHtcbiAgICAgIHRvUmlnaHQocGFyYW1ldGVyczogUmVzb2x2ZWRQYXJhbWV0ZXJzKTogVCB7XG4gICAgICAgIHJldHVybiBwYXJhbWV0ZXJzLmdldChwYXJhbWV0ZXIpO1xuICAgICAgfSxcbiAgICAgIHRvTGVmdCh2YWx1ZTogVCwgY3VycmVudFBhcmFtZXRlcnM/OiBSZXNvbHZlZFBhcmFtZXRlcnMpOiBSZXNvbHZlZFBhcmFtZXRlcnMge1xuICAgICAgICByZXR1cm4gY3VycmVudFBhcmFtZXRlcnMucmVwbGFjZShwYXJhbWV0ZXIsIHZhbHVlKTtcbiAgICAgIH1cbiAgICB9KSk7XG4gIH1cblxuXG4gIHByaXZhdGUgZ2V0TW9kZWxGb3I8VD4ocGFyYW1ldGVyOiBQYXJhbWV0ZXJEZWZpbml0aW9uPFQ+KTogTXV0YWJsZUhhc1ZhbHVlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRbcGFyYW1ldGVyLnByb3BlcnR5TmFtZV07XG4gIH1cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBSb3V0ZVBhcmFtZXRlckJpbmRpbmdzIHtcbiAgZXhwb3J0IGNvbnN0IFJPVVRFX1BBUkFNRVRFUl9MSVNUX0tFWSA9IFN5bWJvbCgncGxhY2U6cm91dGU6cGFyYW1ldGVycycpO1xufVxuIl19
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { assert, Trace } from '@coolon/pectin';
|
|
7
|
+
import { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';
|
|
8
|
+
export class RouteParameterSanitiser {
|
|
9
|
+
/**
|
|
10
|
+
* @param {?} parameterDefs
|
|
11
|
+
* @param {?} injector
|
|
12
|
+
*/
|
|
13
|
+
constructor(parameterDefs, injector) {
|
|
14
|
+
this.parameterDefs = parameterDefs;
|
|
15
|
+
this.injector = injector;
|
|
16
|
+
this.sanitisedParameters = [];
|
|
17
|
+
this.routeParameter = parameterDefs.find((/**
|
|
18
|
+
* @param {?} p
|
|
19
|
+
* @return {?}
|
|
20
|
+
*/
|
|
21
|
+
p => p.isRouteId));
|
|
22
|
+
this.queryParameters = parameterDefs.filter((/**
|
|
23
|
+
* @param {?} p
|
|
24
|
+
* @return {?}
|
|
25
|
+
*/
|
|
26
|
+
p => !p.isRouteId));
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* @param {?} snapshot
|
|
30
|
+
* @return {?}
|
|
31
|
+
*/
|
|
32
|
+
sanitise(snapshot) {
|
|
33
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
if (this.routeParameter) {
|
|
35
|
+
/** @type {?} */
|
|
36
|
+
const routeOk = yield this.sanitiseParameter(this.routeParameter, snapshot.paramMap.get(this.routeParameter.name));
|
|
37
|
+
if (!routeOk) {
|
|
38
|
+
// if the route id isn't ok we redirect immediately as the query params may need to be sanitised in the
|
|
39
|
+
// context of the route id.
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
for (const param of this.queryParameters) {
|
|
44
|
+
yield this.sanitiseParameter(param, snapshot.queryParamMap.get(param.name));
|
|
45
|
+
}
|
|
46
|
+
return this.sanitisedParameters.length === 0;
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* @template T
|
|
51
|
+
* @param {?} def
|
|
52
|
+
* @param {?} formattedInitialValue
|
|
53
|
+
* @return {?}
|
|
54
|
+
*/
|
|
55
|
+
sanitiseParameter(def, formattedInitialValue) {
|
|
56
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
if (def) {
|
|
58
|
+
/** @type {?} */
|
|
59
|
+
const sanitiser = this.getSanitiser(def);
|
|
60
|
+
if (sanitiser) {
|
|
61
|
+
/** @type {?} */
|
|
62
|
+
const initialValue = def.type.parse(formattedInitialValue);
|
|
63
|
+
/** @type {?} */
|
|
64
|
+
const sanitisedValue = yield sanitiser.sanitise(initialValue);
|
|
65
|
+
if (initialValue !== sanitisedValue) {
|
|
66
|
+
this.sanitisedParameters.push({ def, value: def.type.format(sanitisedValue) });
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return true;
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* @param {?} router
|
|
76
|
+
* @return {?}
|
|
77
|
+
*/
|
|
78
|
+
redirect(router) {
|
|
79
|
+
assert.isTruthy(this.sanitisedParameters.length !== 0);
|
|
80
|
+
/** @type {?} */
|
|
81
|
+
const sanitisedRouteId = this.sanitisedParameters.find((/**
|
|
82
|
+
* @param {?} s
|
|
83
|
+
* @return {?}
|
|
84
|
+
*/
|
|
85
|
+
s => s.def === this.routeParameter));
|
|
86
|
+
if (sanitisedRouteId) {
|
|
87
|
+
return router.navigate(['..', sanitisedRouteId.value]);
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
/** @type {?} */
|
|
91
|
+
const queryParams = this.sanitisedParameters.filter((/**
|
|
92
|
+
* @param {?} s
|
|
93
|
+
* @return {?}
|
|
94
|
+
*/
|
|
95
|
+
s => s.def !== this.routeParameter))
|
|
96
|
+
.reduce((/**
|
|
97
|
+
* @param {?} params
|
|
98
|
+
* @param {?} item
|
|
99
|
+
* @return {?}
|
|
100
|
+
*/
|
|
101
|
+
(params, item) => (Object.assign({}, params, { [item.def.name]: item.value }))), {});
|
|
102
|
+
return router.navigate(['.', queryParams]);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* @private
|
|
107
|
+
* @template T
|
|
108
|
+
* @param {?} def
|
|
109
|
+
* @return {?}
|
|
110
|
+
*/
|
|
111
|
+
getSanitiser(def) {
|
|
112
|
+
return def.sanitiser ? this.injector.get(def.sanitiser, new def.sanitiser()) : null;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
tslib_1.__decorate([
|
|
116
|
+
Trace(),
|
|
117
|
+
tslib_1.__metadata("design:type", Function),
|
|
118
|
+
tslib_1.__metadata("design:paramtypes", [Object, String]),
|
|
119
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
120
|
+
], RouteParameterSanitiser.prototype, "sanitiseParameter", null);
|
|
121
|
+
tslib_1.__decorate([
|
|
122
|
+
Memoize(),
|
|
123
|
+
tslib_1.__metadata("design:type", Function),
|
|
124
|
+
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
125
|
+
tslib_1.__metadata("design:returntype", Object)
|
|
126
|
+
], RouteParameterSanitiser.prototype, "getSanitiser", null);
|
|
127
|
+
if (false) {
|
|
128
|
+
/**
|
|
129
|
+
* @type {?}
|
|
130
|
+
* @private
|
|
131
|
+
*/
|
|
132
|
+
RouteParameterSanitiser.prototype.routeParameter;
|
|
133
|
+
/**
|
|
134
|
+
* @type {?}
|
|
135
|
+
* @private
|
|
136
|
+
*/
|
|
137
|
+
RouteParameterSanitiser.prototype.queryParameters;
|
|
138
|
+
/**
|
|
139
|
+
* @type {?}
|
|
140
|
+
* @private
|
|
141
|
+
*/
|
|
142
|
+
RouteParameterSanitiser.prototype.sanitisedParameters;
|
|
143
|
+
/** @type {?} */
|
|
144
|
+
RouteParameterSanitiser.prototype.parameterDefs;
|
|
145
|
+
/** @type {?} */
|
|
146
|
+
RouteParameterSanitiser.prototype.injector;
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtcGFyYW1ldGVyLXNhbml0aXNlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9wbGFjZS9yb3V0ZS9yb3V0ZS1wYXJhbWV0ZXItc2FuaXRpc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFJM0UsTUFBTSxPQUFPLHVCQUF1Qjs7Ozs7SUFPbEMsWUFBcUIsYUFBeUMsRUFBVyxRQUFrQjtRQUF0RSxrQkFBYSxHQUFiLGFBQWEsQ0FBNEI7UUFBVyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBRjFFLHdCQUFtQixHQUF1RCxFQUFFLENBQUM7UUFHNUYsSUFBSSxDQUFDLGNBQWMsR0FBRyxhQUFhLENBQUMsSUFBSTs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxlQUFlLEdBQUcsYUFBYSxDQUFDLE1BQU07Ozs7UUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBQyxDQUFDO0lBQ2pFLENBQUM7Ozs7O0lBRUssUUFBUSxDQUFDLFFBQWdDOztZQUM3QyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7O3NCQUNqQixPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNsSCxJQUFJLENBQUMsT0FBTyxFQUFFO29CQUNaLHVHQUF1RztvQkFDdkcsMkJBQTJCO29CQUMzQixPQUFPLEtBQUssQ0FBQztpQkFDZDthQUNGO1lBQ0QsS0FBSyxNQUFNLEtBQUssSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO2dCQUN4QyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDN0U7WUFDRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO1FBQy9DLENBQUM7S0FBQTs7Ozs7OztJQUdLLGlCQUFpQixDQUFJLEdBQTJCLEVBQUUscUJBQTZCOztZQUNuRixJQUFJLEdBQUcsRUFBRTs7c0JBQ0QsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDO2dCQUN4QyxJQUFJLFNBQVMsRUFBRTs7MEJBQ1AsWUFBWSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDOzswQkFDcEQsY0FBYyxHQUFHLE1BQU0sU0FBUyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUM7b0JBQzdELElBQUksWUFBWSxLQUFLLGNBQWMsRUFBRTt3QkFDbkMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO3dCQUMvRSxPQUFPLEtBQUssQ0FBQztxQkFDZDtpQkFDRjthQUNGO1lBQ0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0tBQUE7Ozs7O0lBRUQsUUFBUSxDQUFDLE1BQWM7UUFDckIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDOztjQUNqRCxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSTs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsY0FBYyxFQUFDO1FBQzFGLElBQUksZ0JBQWdCLEVBQUU7WUFDcEIsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDeEQ7YUFBTTs7a0JBQ0MsV0FBVyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNOzs7O1lBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLElBQUksQ0FBQyxjQUFjLEVBQUM7aUJBQ3BGLE1BQU07Ozs7O1lBQUMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxtQkFBTSxNQUFNLElBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLElBQUcsR0FBRSxFQUFFLENBQUM7WUFDN0UsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7U0FDNUM7SUFDSCxDQUFDOzs7Ozs7O0lBR08sWUFBWSxDQUFJLEdBQTJCO1FBQ2pELE9BQU8sR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQXdCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsSUFBSSxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzdHLENBQUM7Q0FDRjtBQS9CQztJQURDLEtBQUssRUFBRTs7OztnRUFjUDtBQWVEO0lBREMsT0FBTyxFQUFFOzs7OzJEQUdUOzs7Ozs7SUF4REQsaURBQTBEOzs7OztJQUMxRCxrREFBNkQ7Ozs7O0lBRTdELHNEQUE4Rjs7SUFFbEYsZ0RBQWtEOztJQUFFLDJDQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgYXNzZXJ0LCBUcmFjZSB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IE1lbW9pemUgfSBmcm9tICdAdHlwZXNjcmlwdC1wbHVzL2Zhc3QtbWVtb2l6ZS1kZWNvcmF0b3IvZGlzdC9zcmMnO1xuaW1wb3J0IHsgUGFyYW1ldGVyRGVmaW5pdGlvbiB9IGZyb20gJy4vcGFyYW1ldGVyLWRlZmluaXRpb24uY2xhc3MnO1xuaW1wb3J0IHsgUGFyYW1ldGVyU2FuaXRpc2VyIH0gZnJvbSAnLi9wYXJhbWV0ZXItc2FuaXRpc2VyJztcblxuZXhwb3J0IGNsYXNzIFJvdXRlUGFyYW1ldGVyU2FuaXRpc2VyIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlUGFyYW1ldGVyOiBQYXJhbWV0ZXJEZWZpbml0aW9uPGFueT47XG4gIHByaXZhdGUgcmVhZG9ubHkgcXVlcnlQYXJhbWV0ZXJzOiBQYXJhbWV0ZXJEZWZpbml0aW9uPGFueT5bXTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXNlZFBhcmFtZXRlcnM6IHsgZGVmOiBQYXJhbWV0ZXJEZWZpbml0aW9uPGFueT4sIHZhbHVlOiBzdHJpbmcgfVtdID0gW107XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgcGFyYW1ldGVyRGVmczogUGFyYW1ldGVyRGVmaW5pdGlvbjxhbnk+W10sIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHRoaXMucm91dGVQYXJhbWV0ZXIgPSBwYXJhbWV0ZXJEZWZzLmZpbmQocCA9PiBwLmlzUm91dGVJZCk7XG4gICAgdGhpcy5xdWVyeVBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJEZWZzLmZpbHRlcihwID0+ICFwLmlzUm91dGVJZCk7XG4gIH1cblxuICBhc3luYyBzYW5pdGlzZShzbmFwc2hvdDogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGlmICh0aGlzLnJvdXRlUGFyYW1ldGVyKSB7XG4gICAgICBjb25zdCByb3V0ZU9rID0gYXdhaXQgdGhpcy5zYW5pdGlzZVBhcmFtZXRlcih0aGlzLnJvdXRlUGFyYW1ldGVyLCBzbmFwc2hvdC5wYXJhbU1hcC5nZXQodGhpcy5yb3V0ZVBhcmFtZXRlci5uYW1lKSk7XG4gICAgICBpZiAoIXJvdXRlT2spIHtcbiAgICAgICAgLy8gaWYgdGhlIHJvdXRlIGlkIGlzbid0IG9rIHdlIHJlZGlyZWN0IGltbWVkaWF0ZWx5IGFzIHRoZSBxdWVyeSBwYXJhbXMgbWF5IG5lZWQgdG8gYmUgc2FuaXRpc2VkIGluIHRoZVxuICAgICAgICAvLyBjb250ZXh0IG9mIHRoZSByb3V0ZSBpZC5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgICBmb3IgKGNvbnN0IHBhcmFtIG9mIHRoaXMucXVlcnlQYXJhbWV0ZXJzKSB7XG4gICAgICBhd2FpdCB0aGlzLnNhbml0aXNlUGFyYW1ldGVyKHBhcmFtLCBzbmFwc2hvdC5xdWVyeVBhcmFtTWFwLmdldChwYXJhbS5uYW1lKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNhbml0aXNlZFBhcmFtZXRlcnMubGVuZ3RoID09PSAwO1xuICB9XG5cbiAgQFRyYWNlKClcbiAgYXN5bmMgc2FuaXRpc2VQYXJhbWV0ZXI8VD4oZGVmOiBQYXJhbWV0ZXJEZWZpbml0aW9uPFQ+LCBmb3JtYXR0ZWRJbml0aWFsVmFsdWU6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGlmIChkZWYpIHtcbiAgICAgIGNvbnN0IHNhbml0aXNlciA9IHRoaXMuZ2V0U2FuaXRpc2VyKGRlZik7XG4gICAgICBpZiAoc2FuaXRpc2VyKSB7XG4gICAgICAgIGNvbnN0IGluaXRpYWxWYWx1ZSA9IGRlZi50eXBlLnBhcnNlKGZvcm1hdHRlZEluaXRpYWxWYWx1ZSk7XG4gICAgICAgIGNvbnN0IHNhbml0aXNlZFZhbHVlID0gYXdhaXQgc2FuaXRpc2VyLnNhbml0aXNlKGluaXRpYWxWYWx1ZSk7XG4gICAgICAgIGlmIChpbml0aWFsVmFsdWUgIT09IHNhbml0aXNlZFZhbHVlKSB7XG4gICAgICAgICAgdGhpcy5zYW5pdGlzZWRQYXJhbWV0ZXJzLnB1c2goeyBkZWYsIHZhbHVlOiBkZWYudHlwZS5mb3JtYXQoc2FuaXRpc2VkVmFsdWUpIH0pO1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHJlZGlyZWN0KHJvdXRlcjogUm91dGVyKSB7XG4gICAgYXNzZXJ0LmlzVHJ1dGh5KHRoaXMuc2FuaXRpc2VkUGFyYW1ldGVycy5sZW5ndGggIT09IDApO1xuICAgIGNvbnN0IHNhbml0aXNlZFJvdXRlSWQgPSB0aGlzLnNhbml0aXNlZFBhcmFtZXRlcnMuZmluZChzID0+IHMuZGVmID09PSB0aGlzLnJvdXRlUGFyYW1ldGVyKTtcbiAgICBpZiAoc2FuaXRpc2VkUm91dGVJZCkge1xuICAgICAgcmV0dXJuIHJvdXRlci5uYXZpZ2F0ZShbJy4uJywgc2FuaXRpc2VkUm91dGVJZC52YWx1ZV0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBxdWVyeVBhcmFtcyA9IHRoaXMuc2FuaXRpc2VkUGFyYW1ldGVycy5maWx0ZXIocyA9PiBzLmRlZiAhPT0gdGhpcy5yb3V0ZVBhcmFtZXRlcilcbiAgICAgICAgLnJlZHVjZSgocGFyYW1zLCBpdGVtKSA9PiAoeyAuLi5wYXJhbXMsIFtpdGVtLmRlZi5uYW1lXTogaXRlbS52YWx1ZSB9KSwge30pO1xuICAgICAgcmV0dXJuIHJvdXRlci5uYXZpZ2F0ZShbJy4nLCBxdWVyeVBhcmFtc10pO1xuICAgIH1cbiAgfVxuXG4gIEBNZW1vaXplKClcbiAgcHJpdmF0ZSBnZXRTYW5pdGlzZXI8VD4oZGVmOiBQYXJhbWV0ZXJEZWZpbml0aW9uPFQ+KTogUGFyYW1ldGVyU2FuaXRpc2VyPFQ+IHtcbiAgICByZXR1cm4gZGVmLnNhbml0aXNlciA/IHRoaXMuaW5qZWN0b3IuZ2V0PFBhcmFtZXRlclNhbml0aXNlcjxUPj4oZGVmLnNhbml0aXNlciwgbmV3IGRlZi5zYW5pdGlzZXIoKSkgOiBudWxsO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
export { AngularUiPowerupsModule } from './lib/angular-ui-powerups.module';
|
|
6
|
+
export { DisposableComponent, ResizeAwareComponent, AbstractInputComponent, NumberInputComponent, PasswordInputComponent, SelectInputComponent, StringInputComponent, Bounds, Dimension, Point } from './lib/components';
|
|
7
|
+
export { CommandDirective, FocusBindingDirective } from './lib/directives';
|
|
8
|
+
export { AbstractActivity, ACTIVITY_DATA, INTERACTION_CONTEXT, InteractionContext, InteractionModule, ActivityContainerComponent, ActivityOutletComponent, AlertDialogComponent, ConfirmationDialogComponent, DialogInteractionService } from './lib/interaction';
|
|
9
|
+
export { AbstractPlaceComponent, Place, PlaceModule, PlaceService, BusyOverlayComponent, EmptyStateComponent, PlaceOutletComponent, LeavePlaceGuard, PlaceRouteGuard, RouteId, QueryParameter, ParameterType, RouteParameterBindings, RouteParameterSanitiser } from './lib/place';
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHdDQUFjLGtDQUFrQyxDQUFDO0FBQ2pELHNNQUFjLGtCQUFrQixDQUFDO0FBQ2pDLHdEQUFjLGtCQUFrQixDQUFDO0FBQ2pDLDhPQUFjLG1CQUFtQixDQUFDO0FBQ2xDLHFRQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2FuZ3VsYXItdWktcG93ZXJ1cHMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlcmFjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wbGFjZSc7XG4iXX0=
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Generated bundle index. Do not edit.
|
|
7
|
+
*/
|
|
8
|
+
export { AngularUiPowerupsModule, DisposableComponent, ResizeAwareComponent, AbstractInputComponent, NumberInputComponent, PasswordInputComponent, SelectInputComponent, StringInputComponent, Bounds, Dimension, Point, CommandDirective, FocusBindingDirective, AbstractActivity, ACTIVITY_DATA, INTERACTION_CONTEXT, InteractionContext, InteractionModule, ActivityContainerComponent, ActivityOutletComponent, AlertDialogComponent, ConfirmationDialogComponent, DialogInteractionService, AbstractPlaceComponent, Place, PlaceModule, PlaceService, BusyOverlayComponent, EmptyStateComponent, PlaceOutletComponent, LeavePlaceGuard, PlaceRouteGuard, RouteId, QueryParameter, ParameterType, RouteParameterBindings, RouteParameterSanitiser } from './index';
|
|
9
|
+
export { DisposableComponent as ɵc } from './lib/components/disposable-component';
|
|
10
|
+
export { AbstractInputComponent as ɵe } from './lib/components/forms/abstract-input.component';
|
|
11
|
+
export { NumberInputComponent as ɵd } from './lib/components/forms/number-input/number-input.component';
|
|
12
|
+
export { PasswordInputComponent as ɵg } from './lib/components/forms/password-input/password-input.component';
|
|
13
|
+
export { SelectInputComponent as ɵh } from './lib/components/forms/select-input/select-input.component';
|
|
14
|
+
export { StringInputComponent as ɵf } from './lib/components/forms/string-input/string-input.component';
|
|
15
|
+
export { CommandDirective as ɵa } from './lib/directives/command.directive';
|
|
16
|
+
export { FocusBindingDirective as ɵb } from './lib/directives/focus-binding.directive';
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29vbG9uLWFuZ3VsYXItdWktcG93ZXJ1cHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJjb29sb24tYW5ndWxhci11aS1wb3dlcnVwcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsNnRCQUFjLFNBQVMsQ0FBQztBQUV4QixPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQzdGLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUN0RyxPQUFPLEVBQUMsc0JBQXNCLElBQUksRUFBRSxFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDNUcsT0FBTyxFQUFDLG9CQUFvQixJQUFJLEVBQUUsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ3RHLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUN0RyxPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcblxuZXhwb3J0IHtEaXNwb3NhYmxlQ29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9kaXNwb3NhYmxlLWNvbXBvbmVudCc7XG5leHBvcnQge0Fic3RyYWN0SW5wdXRDb21wb25lbnQgYXMgybVlfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Zvcm1zL2Fic3RyYWN0LWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQge051bWJlcklucHV0Q29tcG9uZW50IGFzIMm1ZH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9mb3Jtcy9udW1iZXItaW5wdXQvbnVtYmVyLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQge1Bhc3N3b3JkSW5wdXRDb21wb25lbnQgYXMgybVnfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Zvcm1zL3Bhc3N3b3JkLWlucHV0L3Bhc3N3b3JkLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQge1NlbGVjdElucHV0Q29tcG9uZW50IGFzIMm1aH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9mb3Jtcy9zZWxlY3QtaW5wdXQvc2VsZWN0LWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQge1N0cmluZ0lucHV0Q29tcG9uZW50IGFzIMm1Zn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9mb3Jtcy9zdHJpbmctaW5wdXQvc3RyaW5nLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQge0NvbW1hbmREaXJlY3RpdmUgYXMgybVhfSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2NvbW1hbmQuZGlyZWN0aXZlJztcbmV4cG9ydCB7Rm9jdXNCaW5kaW5nRGlyZWN0aXZlIGFzIMm1Yn0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9mb2N1cy1iaW5kaW5nLmRpcmVjdGl2ZSc7Il19
|
package/esm5/index.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
export { AngularUiPowerupsModule, DisposableComponent, ResizeAwareComponent, AbstractInputComponent, NumberInputComponent, PasswordInputComponent, SelectInputComponent, StringInputComponent, Bounds, Dimension, Point, CommandDirective, FocusBindingDirective, AbstractActivity, ACTIVITY_DATA, INTERACTION_CONTEXT, InteractionContext, InteractionModule, ActivityContainerComponent, ActivityOutletComponent, AlertDialogComponent, ConfirmationDialogComponent, DialogInteractionService, AbstractPlaceComponent, Place, PlaceModule, PlaceService, BusyOverlayComponent, EmptyStateComponent, PlaceOutletComponent, LeavePlaceGuard, PlaceRouteGuard, RouteId, QueryParameter, ParameterType, RouteParameterBindings, RouteParameterSanitiser } from "./public_api";
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNnRCQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL3B1YmxpY19hcGlcIjtcbiJdfQ==
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import { CommonModule } from '@angular/common';
|
|
6
|
+
import { NgModule } from '@angular/core';
|
|
7
|
+
import { FormsModule } from '@angular/forms';
|
|
8
|
+
import { MatFormFieldModule, MatInputModule, MatSelectModule } from '@angular/material';
|
|
9
|
+
import { BrowserModule } from '@angular/platform-browser';
|
|
10
|
+
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
11
|
+
import { NumberInputComponent } from './components/forms/number-input/number-input.component';
|
|
12
|
+
import { CommandDirective } from './directives/command.directive';
|
|
13
|
+
import { FocusBindingDirective } from './directives/focus-binding.directive';
|
|
14
|
+
import { StringInputComponent } from './components/forms/string-input/string-input.component';
|
|
15
|
+
import { PasswordInputComponent } from './components/forms/password-input/password-input.component';
|
|
16
|
+
import { SelectInputComponent } from './components/forms/select-input/select-input.component';
|
|
17
|
+
var AngularUiPowerupsModule = /** @class */ (function () {
|
|
18
|
+
function AngularUiPowerupsModule() {
|
|
19
|
+
}
|
|
20
|
+
AngularUiPowerupsModule.decorators = [
|
|
21
|
+
{ type: NgModule, args: [{
|
|
22
|
+
declarations: [
|
|
23
|
+
CommandDirective,
|
|
24
|
+
FocusBindingDirective,
|
|
25
|
+
NumberInputComponent,
|
|
26
|
+
StringInputComponent,
|
|
27
|
+
PasswordInputComponent,
|
|
28
|
+
SelectInputComponent,
|
|
29
|
+
],
|
|
30
|
+
imports: [
|
|
31
|
+
CommonModule,
|
|
32
|
+
BrowserModule,
|
|
33
|
+
BrowserAnimationsModule,
|
|
34
|
+
FormsModule,
|
|
35
|
+
MatInputModule,
|
|
36
|
+
MatFormFieldModule,
|
|
37
|
+
MatSelectModule
|
|
38
|
+
],
|
|
39
|
+
exports: [
|
|
40
|
+
CommandDirective,
|
|
41
|
+
FocusBindingDirective,
|
|
42
|
+
NumberInputComponent,
|
|
43
|
+
StringInputComponent,
|
|
44
|
+
PasswordInputComponent,
|
|
45
|
+
SelectInputComponent,
|
|
46
|
+
]
|
|
47
|
+
},] }
|
|
48
|
+
];
|
|
49
|
+
return AngularUiPowerupsModule;
|
|
50
|
+
}());
|
|
51
|
+
export { AngularUiPowerupsModule };
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci11aS1wb3dlcnVwcy5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvYW5ndWxhci11aS1wb3dlcnVwcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUM3RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUM5RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUU5RjtJQUFBO0lBNkJBLENBQUM7O2dCQTdCQSxRQUFRLFNBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGdCQUFnQjt3QkFDaEIscUJBQXFCO3dCQUNyQixvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3dCQUN0QixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsdUJBQXVCO3dCQUN2QixXQUFXO3dCQUNYLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsb0JBQW9CO3dCQUNwQixzQkFBc0I7d0JBQ3RCLG9CQUFvQjtxQkFDckI7aUJBRUY7O0lBRUQsOEJBQUM7Q0FBQSxBQTdCRCxJQTZCQztTQURZLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbCc7XG5pbXBvcnQgeyBCcm93c2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBOdW1iZXJJbnB1dENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvcm1zL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IENvbW1hbmREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvY29tbWFuZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRm9jdXNCaW5kaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2ZvY3VzLWJpbmRpbmcuZGlyZWN0aXZlJztcbmltcG9ydCB7IFN0cmluZ0lucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvcm1zL3N0cmluZy1pbnB1dC9zdHJpbmctaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFBhc3N3b3JkSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9ybXMvcGFzc3dvcmQtaW5wdXQvcGFzc3dvcmQtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Zvcm1zL3NlbGVjdC1pbnB1dC9zZWxlY3QtaW5wdXQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBGb2N1c0JpbmRpbmdEaXJlY3RpdmUsXG4gICAgTnVtYmVySW5wdXRDb21wb25lbnQsXG4gICAgU3RyaW5nSW5wdXRDb21wb25lbnQsXG4gICAgUGFzc3dvcmRJbnB1dENvbXBvbmVudCxcbiAgICBTZWxlY3RJbnB1dENvbXBvbmVudCxcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCcm93c2VyTW9kdWxlLFxuICAgIEJyb3dzZXJBbmltYXRpb25zTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRTZWxlY3RNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIENvbW1hbmREaXJlY3RpdmUsXG4gICAgRm9jdXNCaW5kaW5nRGlyZWN0aXZlLFxuICAgIE51bWJlcklucHV0Q29tcG9uZW50LFxuICAgIFN0cmluZ0lucHV0Q29tcG9uZW50LFxuICAgIFBhc3N3b3JkSW5wdXRDb21wb25lbnQsXG4gICAgU2VsZWN0SW5wdXRDb21wb25lbnQsXG4gIF1cblxufSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFyVWlQb3dlcnVwc01vZHVsZSB7XG59XG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import * as tslib_1 from "tslib";
|
|
6
|
+
import { GarbageCollector } from '@coolon/pectin';
|
|
7
|
+
var DisposableComponent = /** @class */ (function (_super) {
|
|
8
|
+
tslib_1.__extends(DisposableComponent, _super);
|
|
9
|
+
function DisposableComponent() {
|
|
10
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* @return {?}
|
|
14
|
+
*/
|
|
15
|
+
DisposableComponent.prototype.ngOnDestroy = /**
|
|
16
|
+
* @return {?}
|
|
17
|
+
*/
|
|
18
|
+
function () {
|
|
19
|
+
this.dispose();
|
|
20
|
+
};
|
|
21
|
+
return DisposableComponent;
|
|
22
|
+
}(GarbageCollector));
|
|
23
|
+
export { DisposableComponent };
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcG9zYWJsZS1jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9kaXNwb3NhYmxlLWNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRWhEO0lBQXlDLCtDQUFnQjtJQUF6RDs7SUFLQSxDQUFDOzs7O0lBSEcseUNBQVc7OztJQUFYO1FBQ0ksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFDTCwwQkFBQztBQUFELENBQUMsQUFMRCxDQUF5QyxnQkFBZ0IsR0FLeEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09uRGVzdHJveX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0dhcmJhZ2VDb2xsZWN0b3J9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcblxuZXhwb3J0IGNsYXNzIERpc3Bvc2FibGVDb21wb25lbnQgZXh0ZW5kcyBHYXJiYWdlQ29sbGVjdG9yIGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc3Bvc2UoKTtcbiAgICB9XG59XG4iXX0=
|