@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,163 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import { DOCUMENT } from '@angular/common';
|
|
6
|
+
import { Directive, ElementRef, HostListener, Inject, Input, NgZone } from '@angular/core';
|
|
7
|
+
import { Dsl, HasFocusTracking, Logger } from '@coolon/pectin';
|
|
8
|
+
import { DisposableComponent } from '../components/disposable-component';
|
|
9
|
+
export class FocusBindingDirective extends DisposableComponent {
|
|
10
|
+
/**
|
|
11
|
+
* @param {?} el
|
|
12
|
+
* @param {?} ngZone
|
|
13
|
+
* @param {?} document
|
|
14
|
+
*/
|
|
15
|
+
constructor(el, ngZone, document) {
|
|
16
|
+
super();
|
|
17
|
+
this.el = el;
|
|
18
|
+
this.ngZone = ngZone;
|
|
19
|
+
// @see https://stackoverflow.com/questions/49513359/could-not-resolve-type-document-in-angular5/53715642#53715642
|
|
20
|
+
this.document = (/** @type {?} */ (document));
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* @return {?}
|
|
24
|
+
*/
|
|
25
|
+
onFocusIn() {
|
|
26
|
+
this.pectinFocusBinding.focusCallbacks.notifyFocusIn();
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* @return {?}
|
|
30
|
+
*/
|
|
31
|
+
onFocusOut() {
|
|
32
|
+
this.pectinFocusBinding.focusCallbacks.notifyFocusOut();
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* @return {?}
|
|
36
|
+
*/
|
|
37
|
+
ngOnInit() {
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* @return {?}
|
|
41
|
+
*/
|
|
42
|
+
ngAfterViewInit() {
|
|
43
|
+
// TODO: Make this also track the current enabled/disabled state.
|
|
44
|
+
const { chain } = Dsl.disposeWith(this);
|
|
45
|
+
chain.value(this.pectinFocusBinding.focused).subscribe((/**
|
|
46
|
+
* @param {?} focused
|
|
47
|
+
* @return {?}
|
|
48
|
+
*/
|
|
49
|
+
(focused) => {
|
|
50
|
+
if (focused && !this.alreadyHasFocus()) {
|
|
51
|
+
this.tryAndFocus();
|
|
52
|
+
}
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
// Hook method for debugging via tracing.
|
|
56
|
+
/**
|
|
57
|
+
* @return {?}
|
|
58
|
+
*/
|
|
59
|
+
alreadyHasFocus() {
|
|
60
|
+
return this.isFocused(this.focusTarget);
|
|
61
|
+
}
|
|
62
|
+
// Hook method for debugging via tracing.
|
|
63
|
+
/**
|
|
64
|
+
* @param {?} element
|
|
65
|
+
* @return {?}
|
|
66
|
+
*/
|
|
67
|
+
isFocused(element) {
|
|
68
|
+
return this.document.activeElement === element;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* @param {?=} retries
|
|
72
|
+
* @return {?}
|
|
73
|
+
*/
|
|
74
|
+
tryAndFocus(retries = 5) {
|
|
75
|
+
if (this.modelShouldStillHaveFocus() && this.canFocus()) {
|
|
76
|
+
if (!this.alreadyHasFocus()) {
|
|
77
|
+
this.focusTarget.focus();
|
|
78
|
+
}
|
|
79
|
+
// if we didn't get the focus we try again later.
|
|
80
|
+
if (!this.alreadyHasFocus()) {
|
|
81
|
+
Logger.get(this).log(`focus failed, trying ${retries} more times`);
|
|
82
|
+
if (retries > 0) {
|
|
83
|
+
// try again on the next paint
|
|
84
|
+
// TODO: is there an angular way of doing this without calling a window function.
|
|
85
|
+
requestAnimationFrame((/**
|
|
86
|
+
* @return {?}
|
|
87
|
+
*/
|
|
88
|
+
() => {
|
|
89
|
+
this.tryAndFocus(retries - 1);
|
|
90
|
+
}));
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
Logger.get(this).warn(`Tried to focus but gave up as the component wasn't enabled or visible.`);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* @return {?}
|
|
100
|
+
*/
|
|
101
|
+
get focusTarget() {
|
|
102
|
+
return this.focusBindingTarget || this.el.nativeElement;
|
|
103
|
+
}
|
|
104
|
+
// Hook method for debugging via tracing.
|
|
105
|
+
/**
|
|
106
|
+
* @return {?}
|
|
107
|
+
*/
|
|
108
|
+
modelShouldStillHaveFocus() {
|
|
109
|
+
return this.pectinFocusBinding.focused.value;
|
|
110
|
+
}
|
|
111
|
+
// Hook method for debugging via tracing.
|
|
112
|
+
/**
|
|
113
|
+
* @return {?}
|
|
114
|
+
*/
|
|
115
|
+
canFocus() {
|
|
116
|
+
/** @type {?} */
|
|
117
|
+
const dimension = this.focusTarget.getBoundingClientRect();
|
|
118
|
+
/** @type {?} */
|
|
119
|
+
const hasSize = dimension.height >= 0 && dimension.height >= 0;
|
|
120
|
+
// tslint:disable-next-line:no-string-literal
|
|
121
|
+
return hasSize && !this.focusTarget['disabled'];
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
FocusBindingDirective.decorators = [
|
|
125
|
+
{ type: Directive, args: [{
|
|
126
|
+
// tslint:disable-next-line:directive-selector
|
|
127
|
+
selector: '[pectinFocusBinding]'
|
|
128
|
+
},] }
|
|
129
|
+
];
|
|
130
|
+
/** @nocollapse */
|
|
131
|
+
FocusBindingDirective.ctorParameters = () => [
|
|
132
|
+
{ type: ElementRef, decorators: [{ type: Inject, args: [ElementRef,] }] },
|
|
133
|
+
{ type: NgZone, decorators: [{ type: Inject, args: [NgZone,] }] },
|
|
134
|
+
{ type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
|
|
135
|
+
];
|
|
136
|
+
FocusBindingDirective.propDecorators = {
|
|
137
|
+
pectinFocusBinding: [{ type: Input }],
|
|
138
|
+
focusBindingTarget: [{ type: Input }],
|
|
139
|
+
onFocusIn: [{ type: HostListener, args: ['focusin',] }],
|
|
140
|
+
onFocusOut: [{ type: HostListener, args: ['focusout',] }]
|
|
141
|
+
};
|
|
142
|
+
if (false) {
|
|
143
|
+
/**
|
|
144
|
+
* @type {?}
|
|
145
|
+
* @private
|
|
146
|
+
*/
|
|
147
|
+
FocusBindingDirective.prototype.document;
|
|
148
|
+
/** @type {?} */
|
|
149
|
+
FocusBindingDirective.prototype.pectinFocusBinding;
|
|
150
|
+
/** @type {?} */
|
|
151
|
+
FocusBindingDirective.prototype.focusBindingTarget;
|
|
152
|
+
/**
|
|
153
|
+
* @type {?}
|
|
154
|
+
* @private
|
|
155
|
+
*/
|
|
156
|
+
FocusBindingDirective.prototype.el;
|
|
157
|
+
/**
|
|
158
|
+
* @type {?}
|
|
159
|
+
* @private
|
|
160
|
+
*/
|
|
161
|
+
FocusBindingDirective.prototype.ngZone;
|
|
162
|
+
}
|
|
163
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMtYmluZGluZy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9mb2N1cy1iaW5kaW5nLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFDLEdBQUcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQU92RSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsbUJBQW1COzs7Ozs7SUFpQjVELFlBQWlELEVBQWMsRUFDbEIsTUFBYyxFQUM3QixRQUFhO1FBQ3pDLEtBQUssRUFBRSxDQUFDO1FBSHVDLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUd6RCxrSEFBa0g7UUFDbEgsSUFBSSxDQUFDLFFBQVEsR0FBRyxtQkFBQSxRQUFRLEVBQVksQ0FBQztJQUN2QyxDQUFDOzs7O0lBZkQsU0FBUztRQUNQLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekQsQ0FBQzs7OztJQUdELFVBQVU7UUFDUixJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFELENBQUM7Ozs7SUFVRCxRQUFRO0lBQ1IsQ0FBQzs7OztJQUVELGVBQWU7O2NBRVAsRUFBQyxLQUFLLEVBQUMsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztRQUNyQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTOzs7O1FBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNqRSxJQUFJLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRTtnQkFDdEMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQ3BCO1FBQ0gsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7OztJQUdELGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Ozs7OztJQUdELFNBQVMsQ0FBQyxPQUFnQjtRQUN4QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxLQUFLLE9BQU8sQ0FBQztJQUNqRCxDQUFDOzs7OztJQUVELFdBQVcsQ0FBQyxVQUFrQixDQUFDO1FBQzdCLElBQUksSUFBSSxDQUFDLHlCQUF5QixFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3ZELElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUU7Z0JBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDMUI7WUFDRCxpREFBaUQ7WUFDakQsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRTtnQkFDM0IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsd0JBQXdCLE9BQU8sYUFBYSxDQUFDLENBQUM7Z0JBQ25FLElBQUksT0FBTyxHQUFHLENBQUMsRUFBRTtvQkFDZiw4QkFBOEI7b0JBQzlCLGlGQUFpRjtvQkFDakYscUJBQXFCOzs7b0JBQUMsR0FBRyxFQUFFO3dCQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDaEMsQ0FBQyxFQUFDLENBQUM7aUJBQ0o7cUJBQU07b0JBQ0wsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsd0VBQXdFLENBQUMsQ0FBQztpQkFDakc7YUFDRjtTQUNGO0lBQ0gsQ0FBQzs7OztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQzFELENBQUM7Ozs7O0lBR0QseUJBQXlCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDL0MsQ0FBQzs7Ozs7SUFHRCxRQUFROztjQUNBLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixFQUFFOztjQUNwRCxPQUFPLEdBQUcsU0FBUyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksU0FBUyxDQUFDLE1BQU0sSUFBSSxDQUFDO1FBQzlELDZDQUE2QztRQUM3QyxPQUFPLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEQsQ0FBQzs7O1lBeEZGLFNBQVMsU0FBQzs7Z0JBRVQsUUFBUSxFQUFFLHNCQUFzQjthQUNqQzs7OztZQVJpQyxVQUFVLHVCQTBCN0IsTUFBTSxTQUFDLFVBQVU7WUExQjJDLE1BQU0sdUJBMkJsRSxNQUFNLFNBQUMsTUFBTTs0Q0FDYixNQUFNLFNBQUMsUUFBUTs7O2lDQWYzQixLQUFLO2lDQUNMLEtBQUs7d0JBRUwsWUFBWSxTQUFDLFNBQVM7eUJBS3RCLFlBQVksU0FBQyxVQUFVOzs7Ozs7O0lBVnhCLHlDQUFvQzs7SUFFcEMsbURBQThDOztJQUM5QyxtREFBeUM7Ozs7O0lBWTdCLG1DQUFtRDs7Ozs7SUFDbkQsdUNBQStDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgSW5wdXQsIE5nWm9uZSwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RHNsLCBIYXNGb2N1c1RyYWNraW5nLCBMb2dnZXJ9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7RGlzcG9zYWJsZUNvbXBvbmVudH0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwb3NhYmxlLWNvbXBvbmVudCc7XG5cblxuQERpcmVjdGl2ZSh7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpkaXJlY3RpdmUtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdbcGVjdGluRm9jdXNCaW5kaW5nXSdcbn0pXG5leHBvcnQgY2xhc3MgRm9jdXNCaW5kaW5nRGlyZWN0aXZlIGV4dGVuZHMgRGlzcG9zYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudDogRG9jdW1lbnQ7XG5cbiAgQElucHV0KCkgcGVjdGluRm9jdXNCaW5kaW5nOiBIYXNGb2N1c1RyYWNraW5nO1xuICBASW5wdXQoKSBmb2N1c0JpbmRpbmdUYXJnZXQ6IEhUTUxFbGVtZW50O1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzaW4nKVxuICBvbkZvY3VzSW4oKSB7XG4gICAgdGhpcy5wZWN0aW5Gb2N1c0JpbmRpbmcuZm9jdXNDYWxsYmFja3Mubm90aWZ5Rm9jdXNJbigpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnKVxuICBvbkZvY3VzT3V0KCkge1xuICAgIHRoaXMucGVjdGluRm9jdXNCaW5kaW5nLmZvY3VzQ2FsbGJhY2tzLm5vdGlmeUZvY3VzT3V0KCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEVsZW1lbnRSZWYpIHByaXZhdGUgcmVhZG9ubHkgZWw6IEVsZW1lbnRSZWYsXG4gICAgICAgICAgICAgIEBJbmplY3QoTmdab25lKSBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lLFxuICAgICAgICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBkb2N1bWVudDogYW55KSB7XG4gICAgc3VwZXIoKTtcbiAgICAvLyBAc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzQ5NTEzMzU5L2NvdWxkLW5vdC1yZXNvbHZlLXR5cGUtZG9jdW1lbnQtaW4tYW5ndWxhcjUvNTM3MTU2NDIjNTM3MTU2NDJcbiAgICB0aGlzLmRvY3VtZW50ID0gZG9jdW1lbnQgYXMgRG9jdW1lbnQ7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAvLyBUT0RPOiBNYWtlIHRoaXMgYWxzbyB0cmFjayB0aGUgY3VycmVudCBlbmFibGVkL2Rpc2FibGVkIHN0YXRlLlxuICAgIGNvbnN0IHtjaGFpbn0gPSBEc2wuZGlzcG9zZVdpdGgodGhpcyk7XG4gICAgY2hhaW4udmFsdWUodGhpcy5wZWN0aW5Gb2N1c0JpbmRpbmcuZm9jdXNlZCkuc3Vic2NyaWJlKChmb2N1c2VkKSA9PiB7XG4gICAgICBpZiAoZm9jdXNlZCAmJiAhdGhpcy5hbHJlYWR5SGFzRm9jdXMoKSkge1xuICAgICAgICB0aGlzLnRyeUFuZEZvY3VzKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvLyBIb29rIG1ldGhvZCBmb3IgZGVidWdnaW5nIHZpYSB0cmFjaW5nLlxuICBhbHJlYWR5SGFzRm9jdXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNGb2N1c2VkKHRoaXMuZm9jdXNUYXJnZXQpO1xuICB9XG5cbiAgLy8gSG9vayBtZXRob2QgZm9yIGRlYnVnZ2luZyB2aWEgdHJhY2luZy5cbiAgaXNGb2N1c2VkKGVsZW1lbnQ6IEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBlbGVtZW50O1xuICB9XG5cbiAgdHJ5QW5kRm9jdXMocmV0cmllczogbnVtYmVyID0gNSkge1xuICAgIGlmICh0aGlzLm1vZGVsU2hvdWxkU3RpbGxIYXZlRm9jdXMoKSAmJiB0aGlzLmNhbkZvY3VzKCkpIHtcbiAgICAgIGlmICghdGhpcy5hbHJlYWR5SGFzRm9jdXMoKSkge1xuICAgICAgICB0aGlzLmZvY3VzVGFyZ2V0LmZvY3VzKCk7XG4gICAgICB9XG4gICAgICAvLyBpZiB3ZSBkaWRuJ3QgZ2V0IHRoZSBmb2N1cyB3ZSB0cnkgYWdhaW4gbGF0ZXIuXG4gICAgICBpZiAoIXRoaXMuYWxyZWFkeUhhc0ZvY3VzKCkpIHtcbiAgICAgICAgTG9nZ2VyLmdldCh0aGlzKS5sb2coYGZvY3VzIGZhaWxlZCwgdHJ5aW5nICR7cmV0cmllc30gbW9yZSB0aW1lc2ApO1xuICAgICAgICBpZiAocmV0cmllcyA+IDApIHtcbiAgICAgICAgICAvLyB0cnkgYWdhaW4gb24gdGhlIG5leHQgcGFpbnRcbiAgICAgICAgICAvLyBUT0RPOiBpcyB0aGVyZSBhbiBhbmd1bGFyIHdheSBvZiBkb2luZyB0aGlzIHdpdGhvdXQgY2FsbGluZyBhIHdpbmRvdyBmdW5jdGlvbi5cbiAgICAgICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy50cnlBbmRGb2N1cyhyZXRyaWVzIC0gMSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgTG9nZ2VyLmdldCh0aGlzKS53YXJuKGBUcmllZCB0byBmb2N1cyBidXQgZ2F2ZSB1cCBhcyB0aGUgY29tcG9uZW50IHdhc24ndCBlbmFibGVkIG9yIHZpc2libGUuYCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXQgZm9jdXNUYXJnZXQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmZvY3VzQmluZGluZ1RhcmdldCB8fCB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICAvLyBIb29rIG1ldGhvZCBmb3IgZGVidWdnaW5nIHZpYSB0cmFjaW5nLlxuICBtb2RlbFNob3VsZFN0aWxsSGF2ZUZvY3VzKCkge1xuICAgIHJldHVybiB0aGlzLnBlY3RpbkZvY3VzQmluZGluZy5mb2N1c2VkLnZhbHVlO1xuICB9XG5cbiAgLy8gSG9vayBtZXRob2QgZm9yIGRlYnVnZ2luZyB2aWEgdHJhY2luZy5cbiAgY2FuRm9jdXMoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgZGltZW5zaW9uID0gdGhpcy5mb2N1c1RhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBoYXNTaXplID0gZGltZW5zaW9uLmhlaWdodCA+PSAwICYmIGRpbWVuc2lvbi5oZWlnaHQgPj0gMDtcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tc3RyaW5nLWxpdGVyYWxcbiAgICByZXR1cm4gaGFzU2l6ZSAmJiAhdGhpcy5mb2N1c1RhcmdldFsnZGlzYWJsZWQnXTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @file Automatically generated by barrelsby.
|
|
7
|
+
*/
|
|
8
|
+
export { CommandDirective } from "./command.directive";
|
|
9
|
+
export { FocusBindingDirective } from "./focus-binding.directive";
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsaUNBQWMscUJBQXFCLENBQUM7QUFDcEMsc0NBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBmaWxlIEF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IGJhcnJlbHNieS5cbiAqL1xuXG5leHBvcnQgKiBmcm9tIFwiLi9jb21tYW5kLmRpcmVjdGl2ZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZm9jdXMtYmluZGluZy5kaXJlY3RpdmVcIjtcbiJdfQ==
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import { DelegatingValueModel, EventListenerList } from '@coolon/pectin';
|
|
6
|
+
import { DisposableComponent } from '../components/disposable-component';
|
|
7
|
+
/**
|
|
8
|
+
* @template D, R, E
|
|
9
|
+
*/
|
|
10
|
+
export class AbstractActivity extends DisposableComponent {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this._doneListeners = new EventListenerList();
|
|
14
|
+
this._cancelListeners = new EventListenerList();
|
|
15
|
+
this._finishListeners = new EventListenerList();
|
|
16
|
+
this._busyModel = new DelegatingValueModel().withDefault(false);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* @param {?} callback
|
|
20
|
+
* @return {?}
|
|
21
|
+
*/
|
|
22
|
+
onDone(callback) {
|
|
23
|
+
this._doneListeners.add(callback);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* @param {?} callback
|
|
27
|
+
* @return {?}
|
|
28
|
+
*/
|
|
29
|
+
onCancel(callback) {
|
|
30
|
+
this._cancelListeners.add(callback);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* @param {?=} result
|
|
34
|
+
* @return {?}
|
|
35
|
+
*/
|
|
36
|
+
done(result) {
|
|
37
|
+
return this._doneListeners
|
|
38
|
+
.fireAndWait((/**
|
|
39
|
+
* @param {?} l
|
|
40
|
+
* @return {?}
|
|
41
|
+
*/
|
|
42
|
+
l => l(result)))
|
|
43
|
+
.finally((/**
|
|
44
|
+
* @return {?}
|
|
45
|
+
*/
|
|
46
|
+
() => this.finalizeAndDispose()));
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* @param {?=} error
|
|
50
|
+
* @return {?}
|
|
51
|
+
*/
|
|
52
|
+
cancel(error) {
|
|
53
|
+
return this._cancelListeners
|
|
54
|
+
.fireAndWait((/**
|
|
55
|
+
* @param {?} l
|
|
56
|
+
* @return {?}
|
|
57
|
+
*/
|
|
58
|
+
l => l(error)))
|
|
59
|
+
.finally((/**
|
|
60
|
+
* @return {?}
|
|
61
|
+
*/
|
|
62
|
+
() => this.finalizeAndDispose()));
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* @private
|
|
66
|
+
* @return {?}
|
|
67
|
+
*/
|
|
68
|
+
finalizeAndDispose() {
|
|
69
|
+
// this._activeModel.value = false;
|
|
70
|
+
this._finishListeners.fire((/**
|
|
71
|
+
* @param {?} l
|
|
72
|
+
* @return {?}
|
|
73
|
+
*/
|
|
74
|
+
l => l()));
|
|
75
|
+
// this._interactionContext = null;
|
|
76
|
+
// this._initialized = false;
|
|
77
|
+
[
|
|
78
|
+
this._finishListeners,
|
|
79
|
+
this._doneListeners,
|
|
80
|
+
this._cancelListeners
|
|
81
|
+
].forEach((/**
|
|
82
|
+
* @param {?} l
|
|
83
|
+
* @return {?}
|
|
84
|
+
*/
|
|
85
|
+
l => l.dispose()));
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* @return {?}
|
|
89
|
+
*/
|
|
90
|
+
get busy() {
|
|
91
|
+
return this._busyModel.readonly;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* @param {?} busyModel
|
|
95
|
+
* @return {?}
|
|
96
|
+
*/
|
|
97
|
+
busyWhile(busyModel) {
|
|
98
|
+
this._busyModel.setDelegate(busyModel);
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* @return {?}
|
|
102
|
+
*/
|
|
103
|
+
isBusy() {
|
|
104
|
+
return this._busyModel.value;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
if (false) {
|
|
108
|
+
/**
|
|
109
|
+
* @type {?}
|
|
110
|
+
* @private
|
|
111
|
+
*/
|
|
112
|
+
AbstractActivity.prototype._doneListeners;
|
|
113
|
+
/**
|
|
114
|
+
* @type {?}
|
|
115
|
+
* @private
|
|
116
|
+
*/
|
|
117
|
+
AbstractActivity.prototype._cancelListeners;
|
|
118
|
+
/**
|
|
119
|
+
* @type {?}
|
|
120
|
+
* @private
|
|
121
|
+
*/
|
|
122
|
+
AbstractActivity.prototype._finishListeners;
|
|
123
|
+
/**
|
|
124
|
+
* @type {?}
|
|
125
|
+
* @private
|
|
126
|
+
*/
|
|
127
|
+
AbstractActivity.prototype._busyModel;
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtYWN0aXZpdHkuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvaW50ZXJhY3Rpb24vYWJzdHJhY3QtYWN0aXZpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBYyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7O0FBR3pFLE1BQU0sT0FBTyxnQkFBZ0MsU0FBUSxtQkFBbUI7SUFBeEU7O1FBRW1CLG1CQUFjLEdBQUcsSUFBSSxpQkFBaUIsRUFBd0IsQ0FBQztRQUMvRCxxQkFBZ0IsR0FBRyxJQUFJLGlCQUFpQixFQUF3QixDQUFDO1FBQ2pFLHFCQUFnQixHQUFHLElBQUksaUJBQWlCLEVBQWMsQ0FBQztRQUV2RCxlQUFVLEdBQUcsSUFBSSxvQkFBb0IsRUFBVyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQThDdkYsQ0FBQzs7Ozs7SUE1Q0MsTUFBTSxDQUFDLFFBQThCO1FBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7Ozs7O0lBRUQsUUFBUSxDQUFDLFFBQThCO1FBQ3JDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEMsQ0FBQzs7Ozs7SUFFRCxJQUFJLENBQUMsTUFBVTtRQUNiLE9BQU8sSUFBSSxDQUFDLGNBQWM7YUFDdkIsV0FBVzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFDO2FBQzNCLE9BQU87OztRQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxFQUFDLENBQUM7SUFDOUMsQ0FBQzs7Ozs7SUFFRCxNQUFNLENBQUMsS0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDLGdCQUFnQjthQUN6QixXQUFXOzs7O1FBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUM7YUFDMUIsT0FBTzs7O1FBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEVBQUMsQ0FBQztJQUM5QyxDQUFDOzs7OztJQUVPLGtCQUFrQjtRQUN4QixtQ0FBbUM7UUFDbkMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUk7Ozs7UUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFDLENBQUM7UUFDckMsbUNBQW1DO1FBQ25DLDZCQUE2QjtRQUM3QjtZQUNFLElBQUksQ0FBQyxnQkFBZ0I7WUFDckIsSUFBSSxDQUFDLGNBQWM7WUFDbkIsSUFBSSxDQUFDLGdCQUFnQjtTQUN0QixDQUFDLE9BQU87Ozs7UUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBQyxDQUFDO0lBQzlCLENBQUM7Ozs7SUFHRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDO0lBQ2xDLENBQUM7Ozs7O0lBRUQsU0FBUyxDQUFDLFNBQThCO1FBQ3RDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7Ozs7SUFFRCxNQUFNO1FBQ0osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQztJQUMvQixDQUFDO0NBQ0Y7Ozs7OztJQWxEQywwQ0FBZ0Y7Ozs7O0lBQ2hGLDRDQUFrRjs7Ozs7SUFDbEYsNENBQXdFOzs7OztJQUV4RSxzQ0FBcUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWxlZ2F0aW5nVmFsdWVNb2RlbCwgRXZlbnRMaXN0ZW5lckxpc3QsIFZhbHVlTW9kZWwgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBEaXNwb3NhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwb3NhYmxlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBBY3Rpdml0eSB9IGZyb20gJy4vYWN0aXZpdHknO1xuXG5leHBvcnQgY2xhc3MgQWJzdHJhY3RBY3Rpdml0eTxELCBSLCBFID0gYW55PiBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQgaW1wbGVtZW50cyBBY3Rpdml0eTxELCBSLCBFPiB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZG9uZUxpc3RlbmVycyA9IG5ldyBFdmVudExpc3RlbmVyTGlzdDxBY3Rpdml0eS5DYWxsQmFjazxSPj4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2FuY2VsTGlzdGVuZXJzID0gbmV3IEV2ZW50TGlzdGVuZXJMaXN0PEFjdGl2aXR5LkNhbGxCYWNrPEU+PigpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9maW5pc2hMaXN0ZW5lcnMgPSBuZXcgRXZlbnRMaXN0ZW5lckxpc3Q8KCkgPT4gdm9pZD4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9idXN5TW9kZWwgPSBuZXcgRGVsZWdhdGluZ1ZhbHVlTW9kZWw8Ym9vbGVhbj4oKS53aXRoRGVmYXVsdChmYWxzZSk7XG5cbiAgb25Eb25lKGNhbGxiYWNrOiBBY3Rpdml0eS5DYWxsQmFjazxSPikge1xuICAgIHRoaXMuX2RvbmVMaXN0ZW5lcnMuYWRkKGNhbGxiYWNrKTtcbiAgfVxuXG4gIG9uQ2FuY2VsKGNhbGxiYWNrOiBBY3Rpdml0eS5DYWxsQmFjazxFPikge1xuICAgIHRoaXMuX2NhbmNlbExpc3RlbmVycy5hZGQoY2FsbGJhY2spO1xuICB9XG5cbiAgZG9uZShyZXN1bHQ/OiBSKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fZG9uZUxpc3RlbmVyc1xuICAgICAgLmZpcmVBbmRXYWl0KGwgPT4gbChyZXN1bHQpKVxuICAgICAgLmZpbmFsbHkoKCkgPT4gdGhpcy5maW5hbGl6ZUFuZERpc3Bvc2UoKSk7XG4gIH1cblxuICBjYW5jZWwoZXJyb3I/OiBFKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fY2FuY2VsTGlzdGVuZXJzXG4gICAgICAuZmlyZUFuZFdhaXQobCA9PiBsKGVycm9yKSlcbiAgICAgIC5maW5hbGx5KCgpID0+IHRoaXMuZmluYWxpemVBbmREaXNwb3NlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5hbGl6ZUFuZERpc3Bvc2UoKSB7XG4gICAgLy8gdGhpcy5fYWN0aXZlTW9kZWwudmFsdWUgPSBmYWxzZTtcbiAgICB0aGlzLl9maW5pc2hMaXN0ZW5lcnMuZmlyZShsID0+IGwoKSk7XG4gICAgLy8gdGhpcy5faW50ZXJhY3Rpb25Db250ZXh0ID0gbnVsbDtcbiAgICAvLyB0aGlzLl9pbml0aWFsaXplZCA9IGZhbHNlO1xuICAgIFtcbiAgICAgIHRoaXMuX2ZpbmlzaExpc3RlbmVycyxcbiAgICAgIHRoaXMuX2RvbmVMaXN0ZW5lcnMsXG4gICAgICB0aGlzLl9jYW5jZWxMaXN0ZW5lcnNcbiAgICBdLmZvckVhY2gobCA9PiBsLmRpc3Bvc2UoKSk7XG4gIH1cblxuXG4gIGdldCBidXN5KCk6IFZhbHVlTW9kZWw8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9idXN5TW9kZWwucmVhZG9ubHk7XG4gIH1cblxuICBidXN5V2hpbGUoYnVzeU1vZGVsOiBWYWx1ZU1vZGVsPGJvb2xlYW4+KSB7XG4gICAgdGhpcy5fYnVzeU1vZGVsLnNldERlbGVnYXRlKGJ1c3lNb2RlbCk7XG4gIH1cblxuICBpc0J1c3koKSB7XG4gICAgcmV0dXJuIHRoaXMuX2J1c3lNb2RlbC52YWx1ZTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import { InjectionToken } from '@angular/core';
|
|
6
|
+
/** @type {?} */
|
|
7
|
+
export const ACTIVITY_DATA = new InjectionToken('InteractionActivityData');
|
|
8
|
+
/**
|
|
9
|
+
* @record
|
|
10
|
+
* @template D, R, E
|
|
11
|
+
*/
|
|
12
|
+
export function Activity() { }
|
|
13
|
+
if (false) {
|
|
14
|
+
/** @type {?} */
|
|
15
|
+
Activity.prototype.busy;
|
|
16
|
+
/**
|
|
17
|
+
* @param {?} callback
|
|
18
|
+
* @return {?}
|
|
19
|
+
*/
|
|
20
|
+
Activity.prototype.onDone = function (callback) { };
|
|
21
|
+
/**
|
|
22
|
+
* @param {?} callback
|
|
23
|
+
* @return {?}
|
|
24
|
+
*/
|
|
25
|
+
Activity.prototype.onCancel = function (callback) { };
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvaW50ZXJhY3Rpb24vYWN0aXZpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRy9DLE1BQU0sT0FBTyxhQUFhLEdBQUcsSUFBSSxjQUFjLENBQU0seUJBQXlCLENBQUM7Ozs7O0FBRS9FLDhCQU9DOzs7SUFOQyx3QkFBbUM7Ozs7O0lBRW5DLG9EQUF1Qzs7Ozs7SUFFdkMsc0RBQXlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbHVlTW9kZWwgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5cbmV4cG9ydCBjb25zdCBBQ1RJVklUWV9EQVRBID0gbmV3IEluamVjdGlvblRva2VuPGFueT4oJ0ludGVyYWN0aW9uQWN0aXZpdHlEYXRhJyk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aXZpdHk8RCwgUiwgRSA9IGFueT4ge1xuICByZWFkb25seSBidXN5OiBWYWx1ZU1vZGVsPGJvb2xlYW4+O1xuXG4gIG9uRG9uZShjYWxsYmFjazogQWN0aXZpdHkuQ2FsbEJhY2s8Uj4pO1xuXG4gIG9uQ2FuY2VsKGNhbGxiYWNrOiBBY3Rpdml0eS5DYWxsQmFjazxFPik7XG5cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBBY3Rpdml0eSB7XG4gIGV4cG9ydCB0eXBlIENhbGxCYWNrPFQ+ID0gKHZhbHVlOiBUKSA9PiB2b2lkIHwgUHJvbWlzZTxhbnk+O1xufVxuIl19
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @record
|
|
7
|
+
*/
|
|
8
|
+
export function Alert() { }
|
|
9
|
+
if (false) {
|
|
10
|
+
/**
|
|
11
|
+
* @return {?}
|
|
12
|
+
*/
|
|
13
|
+
Alert.prototype.title = function () { };
|
|
14
|
+
/**
|
|
15
|
+
* @return {?}
|
|
16
|
+
*/
|
|
17
|
+
Alert.prototype.content = function () { };
|
|
18
|
+
/**
|
|
19
|
+
* @return {?}
|
|
20
|
+
*/
|
|
21
|
+
Alert.prototype.ok = function () { };
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvaW50ZXJhY3Rpb24vYWxlcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBLDJCQUlDOzs7OztJQUhHLHdDQUFnQjs7OztJQUNoQiwwQ0FBbUI7Ozs7SUFDbkIscUNBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJcbmV4cG9ydCBpbnRlcmZhY2UgQWxlcnQge1xuICAgIHRpdGxlPygpOnN0cmluZztcbiAgICBjb250ZW50KCk6c3RyaW5nW107XG4gICAgb2soKTpzdHJpbmc7XG59XG4iXX0=
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
import { Component, Input, ViewChild } from '@angular/core';
|
|
6
|
+
import { MatTabGroup } from '@angular/material';
|
|
7
|
+
import { Dsl, MutableListModel } from '@coolon/pectin';
|
|
8
|
+
import { Deferred } from '@coolon/pectin/lib/promise/deferred.class';
|
|
9
|
+
import { DisposableComponent } from '../../../components/disposable-component';
|
|
10
|
+
import { InteractionContext } from '../../interaction-context';
|
|
11
|
+
import { AlertDialogComponent } from '../alert-dialog/alert-dialog.component';
|
|
12
|
+
import { ConfirmationDialogComponent } from '../confirmation-dialog/confirmation-dialog.component';
|
|
13
|
+
export class ActivityContainerComponent extends DisposableComponent {
|
|
14
|
+
constructor() {
|
|
15
|
+
super();
|
|
16
|
+
this.activityTabs = new MutableListModel();
|
|
17
|
+
this.obsoleteTabs = [];
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* @return {?}
|
|
21
|
+
*/
|
|
22
|
+
ngOnInit() {
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @return {?}
|
|
26
|
+
*/
|
|
27
|
+
ngAfterViewInit() {
|
|
28
|
+
const { observe } = Dsl.disposeWith(this);
|
|
29
|
+
observe.valuesFrom(this.tabs.animationDone).subscribe((/**
|
|
30
|
+
* @return {?}
|
|
31
|
+
*/
|
|
32
|
+
() => this.cleanUpTabs()));
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* @template D, R, E
|
|
36
|
+
* @param {?} options
|
|
37
|
+
* @return {?}
|
|
38
|
+
*/
|
|
39
|
+
initialise(options) {
|
|
40
|
+
this.initialActivity = Object.assign({}, options, { interactionContext: this });
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* @template D, R, E
|
|
44
|
+
* @param {?} activityType
|
|
45
|
+
* @param {?=} data
|
|
46
|
+
* @return {?}
|
|
47
|
+
*/
|
|
48
|
+
startActivity(activityType, data) {
|
|
49
|
+
/** @type {?} */
|
|
50
|
+
const deferred = Deferred.defer();
|
|
51
|
+
/** @type {?} */
|
|
52
|
+
const context = {
|
|
53
|
+
interactionContext: this,
|
|
54
|
+
activityClass: activityType,
|
|
55
|
+
activityData: data,
|
|
56
|
+
onDone: deferred.resolve,
|
|
57
|
+
onCancel: deferred.reject
|
|
58
|
+
};
|
|
59
|
+
this.activityTabs.push(context);
|
|
60
|
+
this.tabs.selectedIndex = this.activityTabs.length;
|
|
61
|
+
return deferred.promise.finally((/**
|
|
62
|
+
* @return {?}
|
|
63
|
+
*/
|
|
64
|
+
() => {
|
|
65
|
+
this.obsoleteTabs.push(context);
|
|
66
|
+
this.tabs.selectedIndex = this.activityTabs.length - 1;
|
|
67
|
+
}));
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* @param {?} alert
|
|
71
|
+
* @return {?}
|
|
72
|
+
*/
|
|
73
|
+
alert(alert) {
|
|
74
|
+
return this.startActivity(AlertDialogComponent, alert);
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* @param {?} confirm
|
|
78
|
+
* @return {?}
|
|
79
|
+
*/
|
|
80
|
+
confirm(confirm) {
|
|
81
|
+
return this.startActivity(ConfirmationDialogComponent, confirm);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* @private
|
|
85
|
+
* @return {?}
|
|
86
|
+
*/
|
|
87
|
+
cleanUpTabs() {
|
|
88
|
+
this.activityTabs.value = this.activityTabs.value.filter((/**
|
|
89
|
+
* @param {?} tab
|
|
90
|
+
* @return {?}
|
|
91
|
+
*/
|
|
92
|
+
tab => {
|
|
93
|
+
return !this.obsoleteTabs.includes(tab);
|
|
94
|
+
}));
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
ActivityContainerComponent.decorators = [
|
|
98
|
+
{ type: Component, args: [{
|
|
99
|
+
selector: 'angular-ui-powerups-activity-container',
|
|
100
|
+
template: "<mat-tab-group #tabs no-tab-header [dynamicHeight]=\"true\">\n <mat-tab>\n <angular-ui-powerups-activity-outlet [interactionContext]=\"this\" [activityContext]=\"initialActivity\"></angular-ui-powerups-activity-outlet>\n </mat-tab>\n <mat-tab *ngFor=\"let tab of activityTabs.value\">\n <angular-ui-powerups-activity-outlet [interactionContext]=\"this\" [activityContext]=\"tab\"></angular-ui-powerups-activity-outlet>\n </mat-tab>\n</mat-tab-group>\n",
|
|
101
|
+
styles: [":host{display:block}"]
|
|
102
|
+
}] }
|
|
103
|
+
];
|
|
104
|
+
/** @nocollapse */
|
|
105
|
+
ActivityContainerComponent.ctorParameters = () => [];
|
|
106
|
+
ActivityContainerComponent.propDecorators = {
|
|
107
|
+
parentInteractionContext: [{ type: Input }],
|
|
108
|
+
initialActivity: [{ type: Input }],
|
|
109
|
+
tabs: [{ type: ViewChild, args: ['tabs', { static: true },] }]
|
|
110
|
+
};
|
|
111
|
+
if (false) {
|
|
112
|
+
/** @type {?} */
|
|
113
|
+
ActivityContainerComponent.prototype.parentInteractionContext;
|
|
114
|
+
/** @type {?} */
|
|
115
|
+
ActivityContainerComponent.prototype.initialActivity;
|
|
116
|
+
/** @type {?} */
|
|
117
|
+
ActivityContainerComponent.prototype.tabs;
|
|
118
|
+
/** @type {?} */
|
|
119
|
+
ActivityContainerComponent.prototype.activityTabs;
|
|
120
|
+
/**
|
|
121
|
+
* @type {?}
|
|
122
|
+
* @private
|
|
123
|
+
*/
|
|
124
|
+
ActivityContainerComponent.prototype.obsoleteTabs;
|
|
125
|
+
}
|
|
126
|
+
(function (ActivityContainerComponent) {
|
|
127
|
+
/**
|
|
128
|
+
* @record
|
|
129
|
+
* @template D, R, E
|
|
130
|
+
*/
|
|
131
|
+
function ActivityContext() { }
|
|
132
|
+
ActivityContainerComponent.ActivityContext = ActivityContext;
|
|
133
|
+
if (false) {
|
|
134
|
+
/** @type {?} */
|
|
135
|
+
ActivityContext.prototype.activityClass;
|
|
136
|
+
/** @type {?} */
|
|
137
|
+
ActivityContext.prototype.activityData;
|
|
138
|
+
/** @type {?} */
|
|
139
|
+
ActivityContext.prototype.onDone;
|
|
140
|
+
/** @type {?} */
|
|
141
|
+
ActivityContext.prototype.onCancel;
|
|
142
|
+
}
|
|
143
|
+
})(ActivityContainerComponent || (ActivityContainerComponent = {}));
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb29sb24vYW5ndWxhci11aS1wb3dlcnVwcy8iLCJzb3VyY2VzIjpbImxpYi9pbnRlcmFjdGlvbi9jb21wb25lbnRzL2FjdGl2aXR5LWNvbnRhaW5lci9hY3Rpdml0eS1jb250YWluZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRCxPQUFPLEVBQWlCLEdBQUcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUsvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQU9uRyxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsbUJBQW1CO0lBY2pFO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFKRCxpQkFBWSxHQUFHLElBQUksZ0JBQWdCLEVBQXdDLENBQUM7UUFDN0UsaUJBQVksR0FBMkMsRUFBRSxDQUFDO0lBSWxFLENBQUM7Ozs7SUFFRCxRQUFRO0lBQ1IsQ0FBQzs7OztJQUVELGVBQWU7Y0FDUCxFQUFFLE9BQU8sRUFBRSxHQUFHLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQ3pDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxTQUFTOzs7UUFBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUMsQ0FBQztJQUNsRixDQUFDOzs7Ozs7SUFFRCxVQUFVLENBQVUsT0FBNEQ7UUFDOUUsSUFBSSxDQUFDLGVBQWUscUJBQ2YsT0FBTyxJQUNWLGtCQUFrQixFQUFFLElBQUksR0FDekIsQ0FBQztJQUNKLENBQUM7Ozs7Ozs7SUFFRCxhQUFhLENBQVUsWUFBOEMsRUFBRSxJQUFROztjQUN2RSxRQUFRLEdBQUcsUUFBUSxDQUFDLEtBQUssRUFBSzs7Y0FDOUIsT0FBTyxHQUFHO1lBQ2Qsa0JBQWtCLEVBQUUsSUFBSTtZQUN4QixhQUFhLEVBQUUsWUFBWTtZQUMzQixZQUFZLEVBQUUsSUFBSTtZQUNsQixNQUFNLEVBQUUsUUFBUSxDQUFDLE9BQU87WUFDeEIsUUFBUSxFQUFFLFFBQVEsQ0FBQyxNQUFNO1NBQzFCO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDbkQsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU87OztRQUFDLEdBQUcsRUFBRTtZQUNuQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDekQsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7OztJQUVELEtBQUssQ0FBQyxLQUFZO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN6RCxDQUFDOzs7OztJQUVELE9BQU8sQ0FBQyxPQUFnQjtRQUN0QixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsMkJBQTJCLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbEUsQ0FBQzs7Ozs7SUFFTyxXQUFXO1FBQ2pCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLE1BQU07Ozs7UUFBQyxHQUFHLENBQUMsRUFBRTtZQUM3RCxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUMsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7WUFuRUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx3Q0FBd0M7Z0JBQ2xELHlkQUFrRDs7YUFFbkQ7Ozs7O3VDQUdFLEtBQUs7OEJBR0wsS0FBSzttQkFHTCxTQUFTLFNBQUMsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7OztJQU5uQyw4REFDNkM7O0lBRTdDLHFEQUNzRDs7SUFFdEQsMENBQ2tCOztJQUVsQixrREFBcUY7Ozs7O0lBQ3JGLGtEQUFrRTs7QUFxRHBFLFdBQWlCLDBCQUEwQjs7Ozs7SUFFekMsOEJBS0M7Ozs7UUFKQyx3Q0FBZ0Q7O1FBQ2hELHVDQUFnQjs7UUFDaEIsaUNBQTRCOztRQUM1QixtQ0FBNkI7O0FBRWpDLENBQUMsRUFSZ0IsMEJBQTBCLEtBQTFCLDBCQUEwQixRQVExQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRUYWJHcm91cCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJztcbmltcG9ydCB7IENvbnN0cnVjdGFibGUsIERzbCwgTXV0YWJsZUxpc3RNb2RlbCB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IERlZmVycmVkIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4vbGliL3Byb21pc2UvZGVmZXJyZWQuY2xhc3MnO1xuaW1wb3J0IHsgRGlzcG9zYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvZGlzcG9zYWJsZS1jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBBY3Rpdml0eSB9IGZyb20gJy4uLy4uL2FjdGl2aXR5JztcbmltcG9ydCB7IEFsZXJ0IH0gZnJvbSAnLi4vLi4vYWxlcnQnO1xuaW1wb3J0IHsgQ29uZmlybSB9IGZyb20gJy4uLy4uL2NvbmZpcm0nO1xuaW1wb3J0IHsgSW50ZXJhY3Rpb25Db250ZXh0IH0gZnJvbSAnLi4vLi4vaW50ZXJhY3Rpb24tY29udGV4dCc7XG5pbXBvcnQgeyBBY3Rpdml0eU91dGxldENvbnRleHQgfSBmcm9tICcuLi9hY3Rpdml0eS1vdXRsZXQvYWN0aXZpdHktb3V0bGV0LWNvbnRleHQnO1xuaW1wb3J0IHsgQWxlcnREaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9hbGVydC1kaWFsb2cvYWxlcnQtZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYW5ndWxhci11aS1wb3dlcnVwcy1hY3Rpdml0eS1jb250YWluZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWN0aXZpdHktY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQWN0aXZpdHlDb250YWluZXJDb21wb25lbnQgZXh0ZW5kcyBEaXNwb3NhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBJbnRlcmFjdGlvbkNvbnRleHQge1xuXG4gIEBJbnB1dCgpXG4gIHBhcmVudEludGVyYWN0aW9uQ29udGV4dDogSW50ZXJhY3Rpb25Db250ZXh0O1xuXG4gIEBJbnB1dCgpXG4gIGluaXRpYWxBY3Rpdml0eTogQWN0aXZpdHlPdXRsZXRDb250ZXh0PGFueSwgYW55LCBhbnk+O1xuXG4gIEBWaWV3Q2hpbGQoJ3RhYnMnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICB0YWJzOiBNYXRUYWJHcm91cDtcblxuICByZWFkb25seSBhY3Rpdml0eVRhYnMgPSBuZXcgTXV0YWJsZUxpc3RNb2RlbDxBY3Rpdml0eU91dGxldENvbnRleHQ8YW55LCBhbnksIGFueT4+KCk7XG4gIHByaXZhdGUgb2Jzb2xldGVUYWJzOiBBY3Rpdml0eU91dGxldENvbnRleHQ8YW55LCBhbnksIGFueT5bXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCB7IG9ic2VydmUgfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgICBvYnNlcnZlLnZhbHVlc0Zyb20odGhpcy50YWJzLmFuaW1hdGlvbkRvbmUpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsZWFuVXBUYWJzKCkpO1xuICB9XG5cbiAgaW5pdGlhbGlzZTxELCBSLCBFPihvcHRpb25zOiBBY3Rpdml0eUNvbnRhaW5lckNvbXBvbmVudC5BY3Rpdml0eUNvbnRleHQ8RCwgUiwgRT4pIHtcbiAgICB0aGlzLmluaXRpYWxBY3Rpdml0eSA9IHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBpbnRlcmFjdGlvbkNvbnRleHQ6IHRoaXNcbiAgICB9O1xuICB9XG5cbiAgc3RhcnRBY3Rpdml0eTxELCBSLCBFPihhY3Rpdml0eVR5cGU6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LCBkYXRhPzogRCk6IFByb21pc2U8Uj4ge1xuICAgIGNvbnN0IGRlZmVycmVkID0gRGVmZXJyZWQuZGVmZXI8Uj4oKTtcbiAgICBjb25zdCBjb250ZXh0ID0ge1xuICAgICAgaW50ZXJhY3Rpb25Db250ZXh0OiB0aGlzLFxuICAgICAgYWN0aXZpdHlDbGFzczogYWN0aXZpdHlUeXBlLFxuICAgICAgYWN0aXZpdHlEYXRhOiBkYXRhLFxuICAgICAgb25Eb25lOiBkZWZlcnJlZC5yZXNvbHZlLFxuICAgICAgb25DYW5jZWw6IGRlZmVycmVkLnJlamVjdFxuICAgIH07XG4gICAgdGhpcy5hY3Rpdml0eVRhYnMucHVzaChjb250ZXh0KTtcbiAgICB0aGlzLnRhYnMuc2VsZWN0ZWRJbmRleCA9IHRoaXMuYWN0aXZpdHlUYWJzLmxlbmd0aDtcbiAgICByZXR1cm4gZGVmZXJyZWQucHJvbWlzZS5maW5hbGx5KCgpID0+IHtcbiAgICAgIHRoaXMub2Jzb2xldGVUYWJzLnB1c2goY29udGV4dCk7XG4gICAgICB0aGlzLnRhYnMuc2VsZWN0ZWRJbmRleCA9IHRoaXMuYWN0aXZpdHlUYWJzLmxlbmd0aCAtIDE7XG4gICAgfSk7XG4gIH1cblxuICBhbGVydChhbGVydDogQWxlcnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zdGFydEFjdGl2aXR5KEFsZXJ0RGlhbG9nQ29tcG9uZW50LCBhbGVydCk7XG4gIH1cblxuICBjb25maXJtKGNvbmZpcm06IENvbmZpcm0pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5zdGFydEFjdGl2aXR5KENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCwgY29uZmlybSk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFuVXBUYWJzKCkge1xuICAgIHRoaXMuYWN0aXZpdHlUYWJzLnZhbHVlID0gdGhpcy5hY3Rpdml0eVRhYnMudmFsdWUuZmlsdGVyKHRhYiA9PiB7XG4gICAgICByZXR1cm4gIXRoaXMub2Jzb2xldGVUYWJzLmluY2x1ZGVzKHRhYik7XG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBBY3Rpdml0eUNvbnRhaW5lckNvbXBvbmVudCB7XG5cbiAgZXhwb3J0IGludGVyZmFjZSBBY3Rpdml0eUNvbnRleHQ8RCwgUiwgRT4ge1xuICAgIGFjdGl2aXR5Q2xhc3M6IENvbnN0cnVjdGFibGU8QWN0aXZpdHk8RCwgUiwgRT4+LFxuICAgIGFjdGl2aXR5RGF0YTogRCxcbiAgICBvbkRvbmU6IChyZXN1bHQ6IFIpID0+IHZvaWQsXG4gICAgb25DYW5jZWw6IChlcnJvcjogRSkgPT4gdm9pZCxcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview added by tsickle
|
|
3
|
+
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @record
|
|
7
|
+
* @template D, R, E
|
|
8
|
+
*/
|
|
9
|
+
export function ActivityOutletContext() { }
|
|
10
|
+
if (false) {
|
|
11
|
+
/** @type {?} */
|
|
12
|
+
ActivityOutletContext.prototype.interactionContext;
|
|
13
|
+
/** @type {?} */
|
|
14
|
+
ActivityOutletContext.prototype.activityClass;
|
|
15
|
+
/** @type {?} */
|
|
16
|
+
ActivityOutletContext.prototype.activityData;
|
|
17
|
+
/** @type {?} */
|
|
18
|
+
ActivityOutletContext.prototype.onDone;
|
|
19
|
+
/** @type {?} */
|
|
20
|
+
ActivityOutletContext.prototype.onCancel;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHktb3V0bGV0LWNvbnRleHQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY29vbG9uL2FuZ3VsYXItdWktcG93ZXJ1cHMvIiwic291cmNlcyI6WyJsaWIvaW50ZXJhY3Rpb24vY29tcG9uZW50cy9hY3Rpdml0eS1vdXRsZXQvYWN0aXZpdHktb3V0bGV0LWNvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFLQSwyQ0FNQzs7O0lBTEMsbURBQXVDOztJQUN2Qyw4Q0FBZ0Q7O0lBQ2hELDZDQUFnQjs7SUFDaEIsdUNBQTRCOztJQUM1Qix5Q0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3RhYmxlIH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHsgQWN0aXZpdHkgfSBmcm9tICcuLi8uLi9hY3Rpdml0eSc7XG5pbXBvcnQgeyBJbnRlcmFjdGlvbkNvbnRleHQgfSBmcm9tICcuLi8uLi9pbnRlcmFjdGlvbi1jb250ZXh0JztcblxuXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5T3V0bGV0Q29udGV4dDxELCBSLCBFPiB7XG4gIGludGVyYWN0aW9uQ29udGV4dDogSW50ZXJhY3Rpb25Db250ZXh0LFxuICBhY3Rpdml0eUNsYXNzOiBDb25zdHJ1Y3RhYmxlPEFjdGl2aXR5PEQsIFIsIEU+PixcbiAgYWN0aXZpdHlEYXRhOiBELFxuICBvbkRvbmU6IChyZXN1bHQ6IFIpID0+IHZvaWQsXG4gIG9uQ2FuY2VsOiAoZXJyb3I6IEUpID0+IHZvaWQsXG59XG4iXX0=
|