@nativescript-community/ui-material-bottomsheet 7.0.39 → 7.0.41
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 +18 -1
- package/angular/bottomsheet.module.d.ts +10 -0
- package/angular/bottomsheet.service.d.ts +28 -0
- package/angular/esm2020/bottomsheet.module.mjs +4 -3
- package/angular/esm2020/bottomsheet.service.mjs +7 -2
- package/angular/esm2020/nativescript-community-ui-material-bottomsheet-angular.mjs +4 -1
- package/angular/fesm2015/nativescript-community-ui-material-bottomsheet-angular.mjs +13 -3
- package/angular/fesm2015/nativescript-community-ui-material-bottomsheet-angular.mjs.map +1 -1
- package/angular/fesm2020/nativescript-community-ui-material-bottomsheet-angular.mjs +13 -3
- package/angular/fesm2020/nativescript-community-ui-material-bottomsheet-angular.mjs.map +1 -1
- package/angular/index.d.ts +2 -0
- package/package.json +3 -3
- package/vue/index.d.ts +1 -0
- package/vue/index.js +1 -0
- package/vue/index.js.map +1 -1
- package/vue3/index.d.ts +1 -0
- package/vue3/index.js +6 -3
- package/vue3/index.js.map +1 -1
package/README.md
CHANGED
@@ -137,6 +137,15 @@ import MyComponent from 'MyComponent.vue';
|
|
137
137
|
|
138
138
|
//inside another Vue component
|
139
139
|
const options: VueBottomSheetOptions = {
|
140
|
+
// props to be passed to MyComponent
|
141
|
+
props: {
|
142
|
+
someProp: true,
|
143
|
+
anotherProp: false
|
144
|
+
},
|
145
|
+
// listeners to be connected to MyComponent
|
146
|
+
on: {
|
147
|
+
someEvent: (value) => { console.log(value) }
|
148
|
+
}
|
140
149
|
};
|
141
150
|
this.$showBottomSheet(MyComponent, options)
|
142
151
|
```
|
@@ -158,7 +167,15 @@ import MyComponent from 'MyComponent.vue';
|
|
158
167
|
|
159
168
|
|
160
169
|
const options: VueBottomSheetOptions = {
|
161
|
-
|
170
|
+
// props to be passed to MyComponent
|
171
|
+
props: {
|
172
|
+
someProp: true,
|
173
|
+
anotherProp: false
|
174
|
+
},
|
175
|
+
// listeners to be connected to MyComponent
|
176
|
+
on: {
|
177
|
+
someEvent: (value) => { console.log(value) }
|
178
|
+
}
|
162
179
|
};
|
163
180
|
|
164
181
|
const { showBottomSheet, closeBottomSheet } = useBottomSheet()
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import { ModuleWithProviders } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export declare class NativeScriptMaterialBottomSheetModule {
|
4
|
+
private static initialized;
|
5
|
+
static forRoot(): ModuleWithProviders<NativeScriptMaterialBottomSheetModule>;
|
6
|
+
constructor();
|
7
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NativeScriptMaterialBottomSheetModule, never>;
|
8
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<NativeScriptMaterialBottomSheetModule, never, never, never>;
|
9
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<NativeScriptMaterialBottomSheetModule>;
|
10
|
+
}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
import { Type, ViewContainerRef } from '@angular/core';
|
2
|
+
import type { BottomSheetOptions as MaterialBottomSheetOptions } from '@nativescript-community/ui-material-bottomsheet';
|
3
|
+
import { Observable } from 'rxjs';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare type BaseShowBottomSheetOptions = Omit<MaterialBottomSheetOptions, 'closeCallback' | 'view'>;
|
6
|
+
export interface BottomSheetOptions extends BaseShowBottomSheetOptions {
|
7
|
+
viewContainerRef?: ViewContainerRef;
|
8
|
+
}
|
9
|
+
export declare class BottomSheetParams {
|
10
|
+
readonly context: any;
|
11
|
+
readonly closeCallback: (...args: any[]) => void;
|
12
|
+
constructor(context: any, closeCallback: (...args: any[]) => void);
|
13
|
+
}
|
14
|
+
export declare class BottomSheetService {
|
15
|
+
show<TResult = any>(type: Type<any>, options: BottomSheetOptions): Observable<TResult>;
|
16
|
+
showWithCloseCallback<TResult = any>(type: Type<any>, options: BottomSheetOptions): {
|
17
|
+
observable: Observable<TResult>;
|
18
|
+
closeCallback: () => void;
|
19
|
+
};
|
20
|
+
private getParentView;
|
21
|
+
private getFactoryResolver;
|
22
|
+
private createChildInjector;
|
23
|
+
private getBottomSheetParams;
|
24
|
+
private createDetachedLoader;
|
25
|
+
private loadComponent;
|
26
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BottomSheetService, never>;
|
27
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<BottomSheetService>;
|
28
|
+
}
|
@@ -16,11 +16,12 @@ export class NativeScriptMaterialBottomSheetModule {
|
|
16
16
|
};
|
17
17
|
}
|
18
18
|
}
|
19
|
+
// This flag help us to avoid problems when using the new development workflow
|
19
20
|
NativeScriptMaterialBottomSheetModule.initialized = false;
|
20
21
|
NativeScriptMaterialBottomSheetModule.ɵfac = function NativeScriptMaterialBottomSheetModule_Factory(t) { return new (t || NativeScriptMaterialBottomSheetModule)(); };
|
21
|
-
NativeScriptMaterialBottomSheetModule.ɵmod = i0.ɵɵdefineNgModule({ type: NativeScriptMaterialBottomSheetModule });
|
22
|
-
NativeScriptMaterialBottomSheetModule.ɵinj = i0.ɵɵdefineInjector({});
|
22
|
+
NativeScriptMaterialBottomSheetModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: NativeScriptMaterialBottomSheetModule });
|
23
|
+
NativeScriptMaterialBottomSheetModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({});
|
23
24
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NativeScriptMaterialBottomSheetModule, [{
|
24
25
|
type: NgModule
|
25
26
|
}], function () { return []; }, null); })();
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90dG9tc2hlZXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JvdHRvbXNoZWV0L2FuZ3VsYXIvYm90dG9tc2hlZXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7QUFHMUUsTUFBTSxPQUFPLHFDQUFxQztJQVc5QztRQUNJLElBQUksQ0FBQyxxQ0FBcUMsQ0FBQyxXQUFXLEVBQUU7WUFDcEQsT0FBTyxFQUFFLENBQUM7WUFDVixxQ0FBcUMsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1NBQzVEO0lBQ0wsQ0FBQztJQVpELE1BQU0sQ0FBQyxPQUFPO1FBQ1YsT0FBTztZQUNILFFBQVEsRUFBRSxxQ0FBcUM7WUFDL0MsU0FBUyxFQUFFLENBQUMsa0JBQWtCLENBQUM7U0FDbEMsQ0FBQztJQUNOLENBQUM7O0FBUkQsOEVBQThFO0FBQy9ELGlEQUFXLEdBQUcsS0FBSyxDQUFDOzBIQUYxQixxQ0FBcUM7dUZBQXJDLHFDQUFxQzs7dUZBQXJDLHFDQUFxQztjQURqRCxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQm90dG9tU2hlZXRTZXJ2aWNlIH0gZnJvbSAnLi9ib3R0b21zaGVldC5zZXJ2aWNlJztcbmltcG9ydCB7IGluc3RhbGwgfSBmcm9tICdAbmF0aXZlc2NyaXB0LWNvbW11bml0eS91aS1tYXRlcmlhbC1ib3R0b21zaGVldCc7XG5cbkBOZ01vZHVsZSgpXG5leHBvcnQgY2xhc3MgTmF0aXZlU2NyaXB0TWF0ZXJpYWxCb3R0b21TaGVldE1vZHVsZSB7XG4gICAgLy8gVGhpcyBmbGFnIGhlbHAgdXMgdG8gYXZvaWQgcHJvYmxlbXMgd2hlbiB1c2luZyB0aGUgbmV3IGRldmVsb3BtZW50IHdvcmtmbG93XG4gICAgcHJpdmF0ZSBzdGF0aWMgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcblxuICAgIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8TmF0aXZlU2NyaXB0TWF0ZXJpYWxCb3R0b21TaGVldE1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IE5hdGl2ZVNjcmlwdE1hdGVyaWFsQm90dG9tU2hlZXRNb2R1bGUsXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtCb3R0b21TaGVldFNlcnZpY2VdLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgaWYgKCFOYXRpdmVTY3JpcHRNYXRlcmlhbEJvdHRvbVNoZWV0TW9kdWxlLmluaXRpYWxpemVkKSB7XG4gICAgICAgICAgICBpbnN0YWxsKCk7XG4gICAgICAgICAgICBOYXRpdmVTY3JpcHRNYXRlcmlhbEJvdHRvbVNoZWV0TW9kdWxlLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
@@ -41,12 +41,17 @@ export class BottomSheetService {
|
|
41
41
|
if (parentView instanceof AppHostView && parentView.ngAppRoot) {
|
42
42
|
parentView = parentView.ngAppRoot;
|
43
43
|
}
|
44
|
+
// _ngDialogRoot is the first child of the previously detached proxy.
|
45
|
+
// It should have 'viewController' (iOS) or '_dialogFragment' (Android) available for
|
46
|
+
// presenting future bottomSheets views.
|
44
47
|
if (parentView._ngDialogRoot) {
|
45
48
|
parentView = parentView._ngDialogRoot;
|
46
49
|
}
|
47
50
|
return parentView;
|
48
51
|
}
|
49
52
|
getFactoryResolver(componentContainer) {
|
53
|
+
// resolve from particular module (moduleRef)
|
54
|
+
// or from same module as parentView (viewContainerRef)
|
50
55
|
return componentContainer.injector.get(ComponentFactoryResolver);
|
51
56
|
}
|
52
57
|
createChildInjector(bottomSheetParams, containerRef) {
|
@@ -101,11 +106,11 @@ export class BottomSheetService {
|
|
101
106
|
}
|
102
107
|
}
|
103
108
|
BottomSheetService.ɵfac = function BottomSheetService_Factory(t) { return new (t || BottomSheetService)(); };
|
104
|
-
BottomSheetService.ɵprov = i0.ɵɵdefineInjectable({ token: BottomSheetService, factory: BottomSheetService.ɵfac, providedIn: 'root' });
|
109
|
+
BottomSheetService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: BottomSheetService, factory: BottomSheetService.ɵfac, providedIn: 'root' });
|
105
110
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BottomSheetService, [{
|
106
111
|
type: Injectable,
|
107
112
|
args: [{
|
108
113
|
providedIn: 'root'
|
109
114
|
}]
|
110
115
|
}], null, null); })();
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90dG9tc2hlZXQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ib3R0b21zaGVldC9hbmd1bGFyL2JvdHRvbXNoZWV0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVySCxPQUFPLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVEzQyxNQUFNLE9BQU8saUJBQWlCO0lBQzFCLFlBQW1DLE9BQVksRUFBa0IsYUFBZ0M7UUFBOUQsWUFBTyxHQUFQLE9BQU8sQ0FBSztRQUFrQixrQkFBYSxHQUFiLGFBQWEsQ0FBbUI7SUFBRyxDQUFDO0NBQ3hHO0FBYUQsTUFBTSxPQUFPLGtCQUFrQjtJQUNwQixJQUFJLENBQWdCLElBQWUsRUFBRSxPQUEyQjtRQUNuRSxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsVUFBVSxDQUFDO0lBQ2hFLENBQUM7SUFFTSxxQkFBcUIsQ0FBZ0IsSUFBZSxFQUFFLE9BQTJCO1FBQ3BGLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUU7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxpRkFBaUYsQ0FBQyxDQUFDO1NBQ3RHO1FBRUQsTUFBTSxRQUFRLEdBQXNCO1lBQ2hDLE1BQU0sRUFBRSxJQUFJLE9BQU8sRUFBRTtTQUN4QixDQUFDO1FBRUYsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNoRSxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDMUUsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztRQUUvRSxRQUFRLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFbEgsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUU7WUFDdEQsVUFBVSxDQUFDLGVBQWUsQ0FBQztnQkFDdkIsR0FBRyxPQUFPO2dCQUNWLEdBQUcsaUJBQWlCO2dCQUNwQixJQUFJLEVBQUUsYUFBYTthQUN0QixDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU87WUFDSCxVQUFVLEVBQUUsUUFBUSxDQUFDLE1BQU07WUFDM0IsYUFBYSxFQUFFLGlCQUFpQixDQUFDLGFBQWE7U0FDakQsQ0FBQztJQUNOLENBQUM7SUFFTyxhQUFhLENBQUMsZ0JBQWtDO1FBQ3BELElBQUksVUFBVSxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxhQUFxQixDQUFDO1FBRWhFLElBQUksVUFBVSxZQUFZLFdBQVcsSUFBSSxVQUFVLENBQUMsU0FBUyxFQUFFO1lBQzNELFVBQVUsR0FBRyxVQUFVLENBQUMsU0FBUyxDQUFDO1NBQ3JDO1FBS0QsSUFBSyxVQUFpQyxDQUFDLGFBQWEsRUFBRTtZQUNsRCxVQUFVLEdBQUksVUFBaUMsQ0FBQyxhQUFhLENBQUM7U0FDakU7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUN0QixDQUFDO0lBRU8sa0JBQWtCLENBQUMsa0JBQW9DO1FBRzNELE9BQU8sa0JBQWtCLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxpQkFBb0MsRUFBRSxZQUE4QjtRQUM1RixPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDbkIsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFFBQVEsRUFBRSxpQkFBaUI7aUJBQzlCO2FBQ0o7WUFDRCxNQUFNLEVBQUUsWUFBWSxDQUFDLFFBQVE7U0FDaEMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLG9CQUFvQixDQUFDLE9BQVksRUFBRSxRQUFrQjtRQUN6RCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNoQyxNQUFNLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsR0FBRyxRQUFRLENBQUM7WUFFM0QsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQixNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7WUFFbEIsSUFBSSxhQUFhLEVBQUU7Z0JBQ2YsYUFBYSxDQUFDLGdCQUFnQixFQUFFLENBQUM7YUFDcEM7WUFFRCxJQUFJLGNBQWMsRUFBRTtnQkFDaEIsY0FBYyxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDeEMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQzVCO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksaUJBQWlCLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxlQUF5QyxFQUFFLGlCQUFvQyxFQUFFLGdCQUFrQztRQUM1SSxNQUFNLHFCQUFxQixHQUFHLGVBQWUsQ0FBQyx1QkFBdUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN0RixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsaUJBQWlCLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUVwRixPQUFPLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDckYsQ0FBQztJQUVPLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBZSxFQUFFLFFBQWtCO1FBQzNELElBQUk7WUFDQSxNQUFNLFlBQVksR0FBRyxNQUFNLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoRixNQUFNLGFBQWEsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQW1DLENBQUM7WUFFaEYsSUFBSSxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLEVBQUU7Z0JBQ3RDLE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELENBQUMsQ0FBQzthQUN2RTtZQUVELFFBQVEsQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVyRCxJQUFJLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxZQUFZLFVBQVUsRUFBRTtnQkFDcEQsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUE2QixDQUFDLGFBQWEsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDO2dCQUM3RixRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ3JFO1lBRUQsT0FBTyxRQUFRLENBQUMsYUFBYSxDQUFDO1NBQ2pDO1FBQUMsT0FBTyxHQUFHLEVBQUU7WUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRW5CLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7SUFDTCxDQUFDOztvRkF0SFEsa0JBQWtCOzBEQUFsQixrQkFBa0IsV0FBbEIsa0JBQWtCLG1CQUZmLE1BQU07dUZBRVQsa0JBQWtCO2NBSDlCLFVBQVU7ZUFBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgQ29tcG9uZW50UmVmLCBJbmplY3RhYmxlLCBJbmplY3RvciwgVHlwZSwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBCb3R0b21TaGVldE9wdGlvbnMgYXMgTWF0ZXJpYWxCb3R0b21TaGVldE9wdGlvbnMgfSBmcm9tICdAbmF0aXZlc2NyaXB0LWNvbW11bml0eS91aS1tYXRlcmlhbC1ib3R0b21zaGVldCc7XG5pbXBvcnQgeyBBcHBIb3N0VmlldywgRGV0YWNoZWRMb2FkZXIsIG9uY2UgfSBmcm9tICdAbmF0aXZlc2NyaXB0L2FuZ3VsYXInO1xuaW1wb3J0IHsgTGF5b3V0QmFzZSwgUHJveHlWaWV3Q29udGFpbmVyLCBWaWV3IH0gZnJvbSAnQG5hdGl2ZXNjcmlwdC9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IHR5cGUgQmFzZVNob3dCb3R0b21TaGVldE9wdGlvbnMgPSBPbWl0PE1hdGVyaWFsQm90dG9tU2hlZXRPcHRpb25zLCAnY2xvc2VDYWxsYmFjaycgfCAndmlldyc+O1xuXG5leHBvcnQgaW50ZXJmYWNlIEJvdHRvbVNoZWV0T3B0aW9ucyBleHRlbmRzIEJhc2VTaG93Qm90dG9tU2hlZXRPcHRpb25zIHtcbiAgICB2aWV3Q29udGFpbmVyUmVmPzogVmlld0NvbnRhaW5lclJlZjtcbn1cblxuZXhwb3J0IGNsYXNzIEJvdHRvbVNoZWV0UGFyYW1zIHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGNvbnRleHQ6IGFueSwgcHVibGljIHJlYWRvbmx5IGNsb3NlQ2FsbGJhY2s6ICguLi5hcmdzKSA9PiB2b2lkKSB7fVxufVxuXG50eXBlIFZpZXdXaXRoRGlhbG9nUm9vdCA9IFZpZXcgJiB7IF9uZ0RpYWxvZ1Jvb3Q/OiBWaWV3IH07XG5cbmludGVyZmFjZSBTaGVldFJlZjxUUmVzdWx0ID0gdW5rbm93bj4ge1xuICAgIGRldGFjaGVkTG9hZGVyPzogQ29tcG9uZW50UmVmPERldGFjaGVkTG9hZGVyPjtcbiAgICBjb21wb25lbnRWaWV3PzogVmlldztcbiAgICByZXN1bHQ6IFN1YmplY3Q8VFJlc3VsdD47XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQm90dG9tU2hlZXRTZXJ2aWNlIHtcbiAgICBwdWJsaWMgc2hvdzxUUmVzdWx0ID0gYW55Pih0eXBlOiBUeXBlPGFueT4sIG9wdGlvbnM6IEJvdHRvbVNoZWV0T3B0aW9ucyk6IE9ic2VydmFibGU8VFJlc3VsdD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zaG93V2l0aENsb3NlQ2FsbGJhY2sodHlwZSwgb3B0aW9ucykub2JzZXJ2YWJsZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2hvd1dpdGhDbG9zZUNhbGxiYWNrPFRSZXN1bHQgPSBhbnk+KHR5cGU6IFR5cGU8YW55Piwgb3B0aW9uczogQm90dG9tU2hlZXRPcHRpb25zKTogeyBvYnNlcnZhYmxlOiBPYnNlcnZhYmxlPFRSZXN1bHQ+OyBjbG9zZUNhbGxiYWNrOiAoKSA9PiB2b2lkIH0ge1xuICAgICAgICBpZiAoIW9wdGlvbnMudmlld0NvbnRhaW5lclJlZikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyB2aWV3Q29udGFpbmVyUmVmOiBNYWtlIHN1cmUgeW91IHBhc3Mgdmlld0NvbnRhaW5lclJlZiBpbiBCb3R0b21TaGVldE9wdGlvbnMuJyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzaGVldFJlZjogU2hlZXRSZWY8VFJlc3VsdD4gPSB7XG4gICAgICAgICAgICByZXN1bHQ6IG5ldyBTdWJqZWN0KClcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBwYXJlbnRWaWV3ID0gdGhpcy5nZXRQYXJlbnRWaWV3KG9wdGlvbnMudmlld0NvbnRhaW5lclJlZik7XG4gICAgICAgIGNvbnN0IGZhY3RvcnlSZXNvbHZlciA9IHRoaXMuZ2V0RmFjdG9yeVJlc29sdmVyKG9wdGlvbnMudmlld0NvbnRhaW5lclJlZik7XG4gICAgICAgIGNvbnN0IGJvdHRvbVNoZWV0UGFyYW1zID0gdGhpcy5nZXRCb3R0b21TaGVldFBhcmFtcyhvcHRpb25zLmNvbnRleHQsIHNoZWV0UmVmKTtcblxuICAgICAgICBzaGVldFJlZi5kZXRhY2hlZExvYWRlciA9IHRoaXMuY3JlYXRlRGV0YWNoZWRMb2FkZXIoZmFjdG9yeVJlc29sdmVyLCBib3R0b21TaGVldFBhcmFtcywgb3B0aW9ucy52aWV3Q29udGFpbmVyUmVmKTtcblxuICAgICAgICB0aGlzLmxvYWRDb21wb25lbnQodHlwZSwgc2hlZXRSZWYpLnRoZW4oKGNvbXBvbmVudFZpZXcpID0+IHtcbiAgICAgICAgICAgIHBhcmVudFZpZXcuc2hvd0JvdHRvbVNoZWV0KHtcbiAgICAgICAgICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICAgICAgICAgIC4uLmJvdHRvbVNoZWV0UGFyYW1zLFxuICAgICAgICAgICAgICAgIHZpZXc6IGNvbXBvbmVudFZpZXdcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgb2JzZXJ2YWJsZTogc2hlZXRSZWYucmVzdWx0LFxuICAgICAgICAgICAgY2xvc2VDYWxsYmFjazogYm90dG9tU2hlZXRQYXJhbXMuY2xvc2VDYWxsYmFja1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UGFyZW50Vmlldyh2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmKTogVmlldyB7XG4gICAgICAgIGxldCBwYXJlbnRWaWV3ID0gdmlld0NvbnRhaW5lclJlZi5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQgYXMgVmlldztcblxuICAgICAgICBpZiAocGFyZW50VmlldyBpbnN0YW5jZW9mIEFwcEhvc3RWaWV3ICYmIHBhcmVudFZpZXcubmdBcHBSb290KSB7XG4gICAgICAgICAgICBwYXJlbnRWaWV3ID0gcGFyZW50Vmlldy5uZ0FwcFJvb3Q7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBfbmdEaWFsb2dSb290IGlzIHRoZSBmaXJzdCBjaGlsZCBvZiB0aGUgcHJldmlvdXNseSBkZXRhY2hlZCBwcm94eS5cbiAgICAgICAgLy8gSXQgc2hvdWxkIGhhdmUgJ3ZpZXdDb250cm9sbGVyJyAoaU9TKSBvciAnX2RpYWxvZ0ZyYWdtZW50JyAoQW5kcm9pZCkgYXZhaWxhYmxlIGZvclxuICAgICAgICAvLyBwcmVzZW50aW5nIGZ1dHVyZSBib3R0b21TaGVldHMgdmlld3MuXG4gICAgICAgIGlmICgocGFyZW50VmlldyBhcyBWaWV3V2l0aERpYWxvZ1Jvb3QpLl9uZ0RpYWxvZ1Jvb3QpIHtcbiAgICAgICAgICAgIHBhcmVudFZpZXcgPSAocGFyZW50VmlldyBhcyBWaWV3V2l0aERpYWxvZ1Jvb3QpLl9uZ0RpYWxvZ1Jvb3Q7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcGFyZW50VmlldztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEZhY3RvcnlSZXNvbHZlcihjb21wb25lbnRDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIge1xuICAgICAgICAvLyByZXNvbHZlIGZyb20gcGFydGljdWxhciBtb2R1bGUgKG1vZHVsZVJlZilcbiAgICAgICAgLy8gb3IgZnJvbSBzYW1lIG1vZHVsZSBhcyBwYXJlbnRWaWV3ICh2aWV3Q29udGFpbmVyUmVmKVxuICAgICAgICByZXR1cm4gY29tcG9uZW50Q29udGFpbmVyLmluamVjdG9yLmdldChDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlQ2hpbGRJbmplY3Rvcihib3R0b21TaGVldFBhcmFtczogQm90dG9tU2hlZXRQYXJhbXMsIGNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZik6IEluamVjdG9yIHtcbiAgICAgICAgcmV0dXJuIEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEJvdHRvbVNoZWV0UGFyYW1zLFxuICAgICAgICAgICAgICAgICAgICB1c2VWYWx1ZTogYm90dG9tU2hlZXRQYXJhbXNcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgcGFyZW50OiBjb250YWluZXJSZWYuaW5qZWN0b3JcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRCb3R0b21TaGVldFBhcmFtcyhjb250ZXh0OiBhbnksIHNoZWV0UmVmOiBTaGVldFJlZik6IEJvdHRvbVNoZWV0UGFyYW1zIHtcbiAgICAgICAgY29uc3QgY2xvc2VDYWxsYmFjayA9IG9uY2UoKGFyZ3MpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgcmVzdWx0LCBjb21wb25lbnRWaWV3LCBkZXRhY2hlZExvYWRlciB9ID0gc2hlZXRSZWY7XG5cbiAgICAgICAgICAgIHJlc3VsdC5uZXh0KGFyZ3MpO1xuICAgICAgICAgICAgcmVzdWx0LmNvbXBsZXRlKCk7XG5cbiAgICAgICAgICAgIGlmIChjb21wb25lbnRWaWV3KSB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50Vmlldy5jbG9zZUJvdHRvbVNoZWV0KCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChkZXRhY2hlZExvYWRlcikge1xuICAgICAgICAgICAgICAgIGRldGFjaGVkTG9hZGVyLmluc3RhbmNlLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICBkZXRhY2hlZExvYWRlci5kZXN0cm95KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBuZXcgQm90dG9tU2hlZXRQYXJhbXMoY29udGV4dCwgY2xvc2VDYWxsYmFjayk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVEZXRhY2hlZExvYWRlcihmYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgYm90dG9tU2hlZXRQYXJhbXM6IEJvdHRvbVNoZWV0UGFyYW1zLCB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmKTogQ29tcG9uZW50UmVmPERldGFjaGVkTG9hZGVyPiB7XG4gICAgICAgIGNvbnN0IGRldGFjaGVkTG9hZGVyRmFjdG9yeSA9IGZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShEZXRhY2hlZExvYWRlcik7XG4gICAgICAgIGNvbnN0IGNoaWxkSW5qZWN0b3IgPSB0aGlzLmNyZWF0ZUNoaWxkSW5qZWN0b3IoYm90dG9tU2hlZXRQYXJhbXMsIHZpZXdDb250YWluZXJSZWYpO1xuXG4gICAgICAgIHJldHVybiB2aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChkZXRhY2hlZExvYWRlckZhY3RvcnksIDAsIGNoaWxkSW5qZWN0b3IpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgbG9hZENvbXBvbmVudCh0eXBlOiBUeXBlPGFueT4sIHNoZWV0UmVmOiBTaGVldFJlZik6IFByb21pc2U8Vmlldz4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gYXdhaXQgc2hlZXRSZWYuZGV0YWNoZWRMb2FkZXIuaW5zdGFuY2UubG9hZENvbXBvbmVudCh0eXBlKTtcbiAgICAgICAgICAgIGNvbnN0IGRldGFjaGVkUHJveHkgPSBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCBhcyBQcm94eVZpZXdDb250YWluZXI7XG5cbiAgICAgICAgICAgIGlmIChkZXRhY2hlZFByb3h5LmdldENoaWxkcmVuQ291bnQoKSA+IDEpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0JvdHRvbVNoZWV0IGNvbnRlbnQgaGFzIG1vcmUgdGhhbiBvbmUgcm9vdCB2aWV3LicpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzaGVldFJlZi5jb21wb25lbnRWaWV3ID0gZGV0YWNoZWRQcm94eS5nZXRDaGlsZEF0KDApO1xuXG4gICAgICAgICAgICBpZiAoc2hlZXRSZWYuY29tcG9uZW50Vmlldy5wYXJlbnQgaW5zdGFuY2VvZiBMYXlvdXRCYXNlKSB7XG4gICAgICAgICAgICAgICAgKHNoZWV0UmVmLmNvbXBvbmVudFZpZXcucGFyZW50IGFzIFZpZXdXaXRoRGlhbG9nUm9vdCkuX25nRGlhbG9nUm9vdCA9IHNoZWV0UmVmLmNvbXBvbmVudFZpZXc7XG4gICAgICAgICAgICAgICAgc2hlZXRSZWYuY29tcG9uZW50Vmlldy5wYXJlbnQucmVtb3ZlQ2hpbGQoc2hlZXRSZWYuY29tcG9uZW50Vmlldyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBzaGVldFJlZi5jb21wb25lbnRWaWV3O1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcblxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90dG9tc2hlZXQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9ib3R0b21zaGVldC9hbmd1bGFyL2JvdHRvbXNoZWV0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVySCxPQUFPLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVEzQyxNQUFNLE9BQU8saUJBQWlCO0lBQzFCLFlBQW1DLE9BQVksRUFBa0IsYUFBZ0M7UUFBOUQsWUFBTyxHQUFQLE9BQU8sQ0FBSztRQUFrQixrQkFBYSxHQUFiLGFBQWEsQ0FBbUI7SUFBRyxDQUFDO0NBQ3hHO0FBYUQsTUFBTSxPQUFPLGtCQUFrQjtJQUNwQixJQUFJLENBQWdCLElBQWUsRUFBRSxPQUEyQjtRQUNuRSxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUMsVUFBVSxDQUFDO0lBQ2hFLENBQUM7SUFFTSxxQkFBcUIsQ0FBZ0IsSUFBZSxFQUFFLE9BQTJCO1FBQ3BGLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUU7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxpRkFBaUYsQ0FBQyxDQUFDO1NBQ3RHO1FBRUQsTUFBTSxRQUFRLEdBQXNCO1lBQ2hDLE1BQU0sRUFBRSxJQUFJLE9BQU8sRUFBRTtTQUN4QixDQUFDO1FBRUYsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFD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RUFBRSxNQUFNO2FBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBDb21wb25lbnRSZWYsIEluamVjdGFibGUsIEluamVjdG9yLCBUeXBlLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IEJvdHRvbVNoZWV0T3B0aW9ucyBhcyBNYXRlcmlhbEJvdHRvbVNoZWV0T3B0aW9ucyB9IGZyb20gJ0BuYXRpdmVzY3JpcHQtY29tbXVuaXR5L3VpLW1hdGVyaWFsLWJvdHRvbXNoZWV0JztcbmltcG9ydCB7IEFwcEhvc3RWaWV3LCBEZXRhY2hlZExvYWRlciwgb25jZSB9IGZyb20gJ0BuYXRpdmVzY3JpcHQvYW5ndWxhcic7XG5pbXBvcnQgeyBMYXlvdXRCYXNlLCBQcm94eVZpZXdDb250YWluZXIsIFZpZXcgfSBmcm9tICdAbmF0aXZlc2NyaXB0L2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgdHlwZSBCYXNlU2hvd0JvdHRvbVNoZWV0T3B0aW9ucyA9IE9taXQ8TWF0ZXJpYWxCb3R0b21TaGVldE9wdGlvbnMsICdjbG9zZUNhbGxiYWNrJyB8ICd2aWV3Jz47XG5cbmV4cG9ydCBpbnRlcmZhY2UgQm90dG9tU2hlZXRPcHRpb25zIGV4dGVuZHMgQmFzZVNob3dCb3R0b21TaGVldE9wdGlvbnMge1xuICAgIHZpZXdDb250YWluZXJSZWY/OiBWaWV3Q29udGFpbmVyUmVmO1xufVxuXG5leHBvcnQgY2xhc3MgQm90dG9tU2hlZXRQYXJhbXMge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgY29udGV4dDogYW55LCBwdWJsaWMgcmVhZG9ubHkgY2xvc2VDYWxsYmFjazogKC4uLmFyZ3MpID0+IHZvaWQpIHt9XG59XG5cbnR5cGUgVmlld1dpdGhEaWFsb2dSb290ID0gVmlldyAmIHsgX25nRGlhbG9nUm9vdD86IFZpZXcgfTtcblxuaW50ZXJmYWNlIFNoZWV0UmVmPFRSZXN1bHQgPSB1bmtub3duPiB7XG4gICAgZGV0YWNoZWRMb2FkZXI/OiBDb21wb25lbnRSZWY8RGV0YWNoZWRMb2FkZXI+O1xuICAgIGNvbXBvbmVudFZpZXc/OiBWaWV3O1xuICAgIHJlc3VsdDogU3ViamVjdDxUUmVzdWx0Pjtcbn1cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBCb3R0b21TaGVldFNlcnZpY2Uge1xuICAgIHB1YmxpYyBzaG93PFRSZXN1bHQgPSBhbnk+KHR5cGU6IFR5cGU8YW55Piwgb3B0aW9uczogQm90dG9tU2hlZXRPcHRpb25zKTogT2JzZXJ2YWJsZTxUUmVzdWx0PiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNob3dXaXRoQ2xvc2VDYWxsYmFjayh0eXBlLCBvcHRpb25zKS5vYnNlcnZhYmxlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzaG93V2l0aENsb3NlQ2FsbGJhY2s8VFJlc3VsdCA9IGFueT4odHlwZTogVHlwZTxhbnk+LCBvcHRpb25zOiBCb3R0b21TaGVldE9wdGlvbnMpOiB7IG9ic2VydmFibGU6IE9ic2VydmFibGU8VFJlc3VsdD47IGNsb3NlQ2FsbGJhY2s6ICgpID0+IHZvaWQgfSB7XG4gICAgICAgIGlmICghb3B0aW9ucy52aWV3Q29udGFpbmVyUmVmKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHZpZXdDb250YWluZXJSZWY6IE1ha2Ugc3VyZSB5b3UgcGFzcyB2aWV3Q29udGFpbmVyUmVmIGluIEJvdHRvbVNoZWV0T3B0aW9ucy4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHNoZWV0UmVmOiBTaGVldFJlZjxUUmVzdWx0PiA9IHtcbiAgICAgICAgICAgIHJlc3VsdDogbmV3IFN1YmplY3QoKVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHBhcmVudFZpZXcgPSB0aGlzLmdldFBhcmVudFZpZXcob3B0aW9ucy52aWV3Q29udGFpbmVyUmVmKTtcbiAgICAgICAgY29uc3QgZmFjdG9yeVJlc29sdmVyID0gdGhpcy5nZXRGYWN0b3J5UmVzb2x2ZXIob3B0aW9ucy52aWV3Q29udGFpbmVyUmVmKTtcbiAgICAgICAgY29uc3QgYm90dG9tU2hlZXRQYXJhbXMgPSB0aGlzLmdldEJvdHRvbVNoZWV0UGFyYW1zKG9wdGlvbnMuY29udGV4dCwgc2hlZXRSZWYpO1xuXG4gICAgICAgIHNoZWV0UmVmLmRldGFjaGVkTG9hZGVyID0gdGhpcy5jcmVhdGVEZXRhY2hlZExvYWRlcihmYWN0b3J5UmVzb2x2ZXIsIGJvdHRvbVNoZWV0UGFyYW1zLCBvcHRpb25zLnZpZXdDb250YWluZXJSZWYpO1xuXG4gICAgICAgIHRoaXMubG9hZENvbXBvbmVudCh0eXBlLCBzaGVldFJlZikudGhlbigoY29tcG9uZW50VmlldykgPT4ge1xuICAgICAgICAgICAgcGFyZW50Vmlldy5zaG93Qm90dG9tU2hlZXQoe1xuICAgICAgICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgICAgICAgLi4uYm90dG9tU2hlZXRQYXJhbXMsXG4gICAgICAgICAgICAgICAgdmlldzogY29tcG9uZW50Vmlld1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBvYnNlcnZhYmxlOiBzaGVldFJlZi5yZXN1bHQsXG4gICAgICAgICAgICBjbG9zZUNhbGxiYWNrOiBib3R0b21TaGVldFBhcmFtcy5jbG9zZUNhbGxiYWNrXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRQYXJlbnRWaWV3KHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYpOiBWaWV3IHtcbiAgICAgICAgbGV0IHBhcmVudFZpZXcgPSB2aWV3Q29udGFpbmVyUmVmLmVsZW1lbnQubmF0aXZlRWxlbWVudCBhcyBWaWV3O1xuXG4gICAgICAgIGlmIChwYXJlbnRWaWV3IGluc3RhbmNlb2YgQXBwSG9zdFZpZXcgJiYgcGFyZW50Vmlldy5uZ0FwcFJvb3QpIHtcbiAgICAgICAgICAgIHBhcmVudFZpZXcgPSBwYXJlbnRWaWV3Lm5nQXBwUm9vdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIF9uZ0RpYWxvZ1Jvb3QgaXMgdGhlIGZpcnN0IGNoaWxkIG9mIHRoZSBwcmV2aW91c2x5IGRldGFjaGVkIHByb3h5LlxuICAgICAgICAvLyBJdCBzaG91bGQgaGF2ZSAndmlld0NvbnRyb2xsZXInIChpT1MpIG9yICdfZGlhbG9nRnJhZ21lbnQnIChBbmRyb2lkKSBhdmFpbGFibGUgZm9yXG4gICAgICAgIC8vIHByZXNlbnRpbmcgZnV0dXJlIGJvdHRvbVNoZWV0cyB2aWV3cy5cbiAgICAgICAgaWYgKChwYXJlbnRWaWV3IGFzIFZpZXdXaXRoRGlhbG9nUm9vdCkuX25nRGlhbG9nUm9vdCkge1xuICAgICAgICAgICAgcGFyZW50VmlldyA9IChwYXJlbnRWaWV3IGFzIFZpZXdXaXRoRGlhbG9nUm9vdCkuX25nRGlhbG9nUm9vdDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwYXJlbnRWaWV3O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RmFjdG9yeVJlc29sdmVyKGNvbXBvbmVudENvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZik6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciB7XG4gICAgICAgIC8vIHJlc29sdmUgZnJvbSBwYXJ0aWN1bGFyIG1vZHVsZSAobW9kdWxlUmVmKVxuICAgICAgICAvLyBvciBmcm9tIHNhbWUgbW9kdWxlIGFzIHBhcmVudFZpZXcgKHZpZXdDb250YWluZXJSZWYpXG4gICAgICAgIHJldHVybiBjb21wb25lbnRDb250YWluZXIuaW5qZWN0b3IuZ2V0KENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVDaGlsZEluamVjdG9yKGJvdHRvbVNoZWV0UGFyYW1zOiBCb3R0b21TaGVldFBhcmFtcywgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmKTogSW5qZWN0b3Ige1xuICAgICAgICByZXR1cm4gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQm90dG9tU2hlZXRQYXJhbXMsXG4gICAgICAgICAgICAgICAgICAgIHVzZVZhbHVlOiBib3R0b21TaGVldFBhcmFtc1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBwYXJlbnQ6IGNvbnRhaW5lclJlZi5pbmplY3RvclxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEJvdHRvbVNoZWV0UGFyYW1zKGNvbnRleHQ6IGFueSwgc2hlZXRSZWY6IFNoZWV0UmVmKTogQm90dG9tU2hlZXRQYXJhbXMge1xuICAgICAgICBjb25zdCBjbG9zZUNhbGxiYWNrID0gb25jZSgoYXJncykgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyByZXN1bHQsIGNvbXBvbmVudFZpZXcsIGRldGFjaGVkTG9hZGVyIH0gPSBzaGVldFJlZjtcblxuICAgICAgICAgICAgcmVzdWx0Lm5leHQoYXJncyk7XG4gICAgICAgICAgICByZXN1bHQuY29tcGxldGUoKTtcblxuICAgICAgICAgICAgaWYgKGNvbXBvbmVudFZpZXcpIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRWaWV3LmNsb3NlQm90dG9tU2hlZXQoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGRldGFjaGVkTG9hZGVyKSB7XG4gICAgICAgICAgICAgICAgZGV0YWNoZWRMb2FkZXIuaW5zdGFuY2UuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgICAgIGRldGFjaGVkTG9hZGVyLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBCb3R0b21TaGVldFBhcmFtcyhjb250ZXh0LCBjbG9zZUNhbGxiYWNrKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZURldGFjaGVkTG9hZGVyKGZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBib3R0b21TaGVldFBhcmFtczogQm90dG9tU2hlZXRQYXJhbXMsIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYpOiBDb21wb25lbnRSZWY8RGV0YWNoZWRMb2FkZXI+IHtcbiAgICAgICAgY29uc3QgZGV0YWNoZWRMb2FkZXJGYWN0b3J5ID0gZmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KERldGFjaGVkTG9hZGVyKTtcbiAgICAgICAgY29uc3QgY2hpbGRJbmplY3RvciA9IHRoaXMuY3JlYXRlQ2hpbGRJbmplY3Rvcihib3R0b21TaGVldFBhcmFtcywgdmlld0NvbnRhaW5lclJlZik7XG5cbiAgICAgICAgcmV0dXJuIHZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGRldGFjaGVkTG9hZGVyRmFjdG9yeSwgMCwgY2hpbGRJbmplY3Rvcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBsb2FkQ29tcG9uZW50KHR5cGU6IFR5cGU8YW55Piwgc2hlZXRSZWY6IFNoZWV0UmVmKTogUHJvbWlzZTxWaWV3PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBjb21wb25lbnRSZWYgPSBhd2FpdCBzaGVldFJlZi5kZXRhY2hlZExvYWRlci5pbnN0YW5jZS5sb2FkQ29tcG9uZW50KHR5cGUpO1xuICAgICAgICAgICAgY29uc3QgZGV0YWNoZWRQcm94eSA9IGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50IGFzIFByb3h5Vmlld0NvbnRhaW5lcjtcblxuICAgICAgICAgICAgaWYgKGRldGFjaGVkUHJveHkuZ2V0Q2hpbGRyZW5Db3VudCgpID4gMSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQm90dG9tU2hlZXQgY29udGVudCBoYXMgbW9yZSB0aGFuIG9uZSByb290IHZpZXcuJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNoZWV0UmVmLmNvbXBvbmVudFZpZXcgPSBkZXRhY2hlZFByb3h5LmdldENoaWxkQXQoMCk7XG5cbiAgICAgICAgICAgIGlmIChzaGVldFJlZi5jb21wb25lbnRWaWV3LnBhcmVudCBpbnN0YW5jZW9mIExheW91dEJhc2UpIHtcbiAgICAgICAgICAgICAgICAoc2hlZXRSZWYuY29tcG9uZW50Vmlldy5wYXJlbnQgYXMgVmlld1dpdGhEaWFsb2dSb290KS5fbmdEaWFsb2dSb290ID0gc2hlZXRSZWYuY29tcG9uZW50VmlldztcbiAgICAgICAgICAgICAgICBzaGVldFJlZi5jb21wb25lbnRWaWV3LnBhcmVudC5yZW1vdmVDaGlsZChzaGVldFJlZi5jb21wb25lbnRWaWV3KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHNoZWV0UmVmLmNvbXBvbmVudFZpZXc7XG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xuXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
@@ -1,2 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
1
4
|
export * from './index';
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlc2NyaXB0LWNvbW11bml0eS11aS1tYXRlcmlhbC1ib3R0b21zaGVldC1hbmd1bGFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JvdHRvbXNoZWV0L2FuZ3VsYXIvbmF0aXZlc2NyaXB0LWNvbW11bml0eS11aS1tYXRlcmlhbC1ib3R0b21zaGVldC1hbmd1bGFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
|
@@ -40,12 +40,17 @@ class BottomSheetService {
|
|
40
40
|
if (parentView instanceof AppHostView && parentView.ngAppRoot) {
|
41
41
|
parentView = parentView.ngAppRoot;
|
42
42
|
}
|
43
|
+
// _ngDialogRoot is the first child of the previously detached proxy.
|
44
|
+
// It should have 'viewController' (iOS) or '_dialogFragment' (Android) available for
|
45
|
+
// presenting future bottomSheets views.
|
43
46
|
if (parentView._ngDialogRoot) {
|
44
47
|
parentView = parentView._ngDialogRoot;
|
45
48
|
}
|
46
49
|
return parentView;
|
47
50
|
}
|
48
51
|
getFactoryResolver(componentContainer) {
|
52
|
+
// resolve from particular module (moduleRef)
|
53
|
+
// or from same module as parentView (viewContainerRef)
|
49
54
|
return componentContainer.injector.get(ComponentFactoryResolver);
|
50
55
|
}
|
51
56
|
createChildInjector(bottomSheetParams, containerRef) {
|
@@ -102,7 +107,7 @@ class BottomSheetService {
|
|
102
107
|
}
|
103
108
|
}
|
104
109
|
BottomSheetService.ɵfac = function BottomSheetService_Factory(t) { return new (t || BottomSheetService)(); };
|
105
|
-
BottomSheetService.ɵprov = i0.ɵɵdefineInjectable({ token: BottomSheetService, factory: BottomSheetService.ɵfac, providedIn: 'root' });
|
110
|
+
BottomSheetService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: BottomSheetService, factory: BottomSheetService.ɵfac, providedIn: 'root' });
|
106
111
|
(function () {
|
107
112
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BottomSheetService, [{
|
108
113
|
type: Injectable,
|
@@ -126,15 +131,20 @@ class NativeScriptMaterialBottomSheetModule {
|
|
126
131
|
};
|
127
132
|
}
|
128
133
|
}
|
134
|
+
// This flag help us to avoid problems when using the new development workflow
|
129
135
|
NativeScriptMaterialBottomSheetModule.initialized = false;
|
130
136
|
NativeScriptMaterialBottomSheetModule.ɵfac = function NativeScriptMaterialBottomSheetModule_Factory(t) { return new (t || NativeScriptMaterialBottomSheetModule)(); };
|
131
|
-
NativeScriptMaterialBottomSheetModule.ɵmod = i0.ɵɵdefineNgModule({ type: NativeScriptMaterialBottomSheetModule });
|
132
|
-
NativeScriptMaterialBottomSheetModule.ɵinj = i0.ɵɵdefineInjector({});
|
137
|
+
NativeScriptMaterialBottomSheetModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: NativeScriptMaterialBottomSheetModule });
|
138
|
+
NativeScriptMaterialBottomSheetModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({});
|
133
139
|
(function () {
|
134
140
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NativeScriptMaterialBottomSheetModule, [{
|
135
141
|
type: NgModule
|
136
142
|
}], function () { return []; }, null);
|
137
143
|
})();
|
138
144
|
|
145
|
+
/**
|
146
|
+
* Generated bundle index. Do not edit.
|
147
|
+
*/
|
148
|
+
|
139
149
|
export { BottomSheetParams, BottomSheetService, NativeScriptMaterialBottomSheetModule };
|
140
150
|
//# sourceMappingURL=nativescript-community-ui-material-bottomsheet-angular.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nativescript-community-ui-material-bottomsheet-angular.mjs","sources":["../../../../src/bottomsheet/angular/bottomsheet.service.ts","../../../../src/bottomsheet/angular/bottomsheet.module.ts"],"sourcesContent":["import { ComponentFactoryResolver, ComponentRef, Injectable, Injector, Type, ViewContainerRef } from '@angular/core';\nimport type { BottomSheetOptions as MaterialBottomSheetOptions } from '@nativescript-community/ui-material-bottomsheet';\nimport { AppHostView, DetachedLoader, once } from '@nativescript/angular';\nimport { LayoutBase, ProxyViewContainer, View } from '@nativescript/core';\nimport { Observable, Subject } from 'rxjs';\n\nexport type BaseShowBottomSheetOptions = Omit<MaterialBottomSheetOptions, 'closeCallback' | 'view'>;\n\nexport interface BottomSheetOptions extends BaseShowBottomSheetOptions {\n viewContainerRef?: ViewContainerRef;\n}\n\nexport class BottomSheetParams {\n public constructor(public readonly context: any, public readonly closeCallback: (...args) => void) {}\n}\n\ntype ViewWithDialogRoot = View & { _ngDialogRoot?: View };\n\ninterface SheetRef<TResult = unknown> {\n detachedLoader?: ComponentRef<DetachedLoader>;\n componentView?: View;\n result: Subject<TResult>;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BottomSheetService {\n public show<TResult = any>(type: Type<any>, options: BottomSheetOptions): Observable<TResult> {\n return this.showWithCloseCallback(type, options).observable;\n }\n\n public showWithCloseCallback<TResult = any>(type: Type<any>, options: BottomSheetOptions): { observable: Observable<TResult>; closeCallback: () => void } {\n if (!options.viewContainerRef) {\n throw new Error('No viewContainerRef: Make sure you pass viewContainerRef in BottomSheetOptions.');\n }\n\n const sheetRef: SheetRef<TResult> = {\n result: new Subject()\n };\n\n const parentView = this.getParentView(options.viewContainerRef);\n const factoryResolver = this.getFactoryResolver(options.viewContainerRef);\n const bottomSheetParams = this.getBottomSheetParams(options.context, sheetRef);\n\n sheetRef.detachedLoader = this.createDetachedLoader(factoryResolver, bottomSheetParams, options.viewContainerRef);\n\n this.loadComponent(type, sheetRef).then((componentView) => {\n parentView.showBottomSheet({\n ...options,\n ...bottomSheetParams,\n view: componentView\n });\n });\n\n return {\n observable: sheetRef.result,\n closeCallback: bottomSheetParams.closeCallback\n };\n }\n\n private getParentView(viewContainerRef: ViewContainerRef): View {\n let parentView = viewContainerRef.element.nativeElement as View;\n\n if (parentView instanceof AppHostView && parentView.ngAppRoot) {\n parentView = parentView.ngAppRoot;\n }\n\n // _ngDialogRoot is the first child of the previously detached proxy.\n // It should have 'viewController' (iOS) or '_dialogFragment' (Android) available for\n // presenting future bottomSheets views.\n if ((parentView as ViewWithDialogRoot)._ngDialogRoot) {\n parentView = (parentView as ViewWithDialogRoot)._ngDialogRoot;\n }\n\n return parentView;\n }\n\n private getFactoryResolver(componentContainer: ViewContainerRef): ComponentFactoryResolver {\n // resolve from particular module (moduleRef)\n // or from same module as parentView (viewContainerRef)\n return componentContainer.injector.get(ComponentFactoryResolver);\n }\n\n private createChildInjector(bottomSheetParams: BottomSheetParams, containerRef: ViewContainerRef): Injector {\n return Injector.create({\n providers: [\n {\n provide: BottomSheetParams,\n useValue: bottomSheetParams\n }\n ],\n parent: containerRef.injector\n });\n }\n\n private getBottomSheetParams(context: any, sheetRef: SheetRef): BottomSheetParams {\n const closeCallback = once((args) => {\n const { result, componentView, detachedLoader } = sheetRef;\n\n result.next(args);\n result.complete();\n\n if (componentView) {\n componentView.closeBottomSheet();\n }\n\n if (detachedLoader) {\n detachedLoader.instance.detectChanges();\n detachedLoader.destroy();\n }\n });\n\n return new BottomSheetParams(context, closeCallback);\n }\n\n private createDetachedLoader(factoryResolver: ComponentFactoryResolver, bottomSheetParams: BottomSheetParams, viewContainerRef: ViewContainerRef): ComponentRef<DetachedLoader> {\n const detachedLoaderFactory = factoryResolver.resolveComponentFactory(DetachedLoader);\n const childInjector = this.createChildInjector(bottomSheetParams, viewContainerRef);\n\n return viewContainerRef.createComponent(detachedLoaderFactory, 0, childInjector);\n }\n\n private async loadComponent(type: Type<any>, sheetRef: SheetRef): Promise<View> {\n try {\n const componentRef = await sheetRef.detachedLoader.instance.loadComponent(type);\n const detachedProxy = componentRef.location.nativeElement as ProxyViewContainer;\n\n if (detachedProxy.getChildrenCount() > 1) {\n throw new Error('BottomSheet content has more than one root view.');\n }\n\n sheetRef.componentView = detachedProxy.getChildAt(0);\n\n if (sheetRef.componentView.parent instanceof LayoutBase) {\n (sheetRef.componentView.parent as ViewWithDialogRoot)._ngDialogRoot = sheetRef.componentView;\n sheetRef.componentView.parent.removeChild(sheetRef.componentView);\n }\n\n return sheetRef.componentView;\n } catch (err) {\n console.error(err);\n\n return null;\n }\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { BottomSheetService } from './bottomsheet.service';\nimport { install } from '@nativescript-community/ui-material-bottomsheet';\n\n@NgModule()\nexport class NativeScriptMaterialBottomSheetModule {\n // This flag help us to avoid problems when using the new development workflow\n private static initialized = false;\n\n static forRoot(): ModuleWithProviders<NativeScriptMaterialBottomSheetModule> {\n return {\n ngModule: NativeScriptMaterialBottomSheetModule,\n providers: [BottomSheetService],\n };\n }\n\n public constructor() {\n if (!NativeScriptMaterialBottomSheetModule.initialized) {\n install();\n NativeScriptMaterialBottomSheetModule.initialized = true;\n }\n }\n}\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"nativescript-community-ui-material-bottomsheet-angular.mjs","sources":["../../../../src/bottomsheet/angular/bottomsheet.service.ts","../../../../src/bottomsheet/angular/bottomsheet.module.ts","../../../../src/bottomsheet/angular/nativescript-community-ui-material-bottomsheet-angular.ts"],"sourcesContent":["import { ComponentFactoryResolver, ComponentRef, Injectable, Injector, Type, ViewContainerRef } from '@angular/core';\nimport type { BottomSheetOptions as MaterialBottomSheetOptions } from '@nativescript-community/ui-material-bottomsheet';\nimport { AppHostView, DetachedLoader, once } from '@nativescript/angular';\nimport { LayoutBase, ProxyViewContainer, View } from '@nativescript/core';\nimport { Observable, Subject } from 'rxjs';\n\nexport type BaseShowBottomSheetOptions = Omit<MaterialBottomSheetOptions, 'closeCallback' | 'view'>;\n\nexport interface BottomSheetOptions extends BaseShowBottomSheetOptions {\n viewContainerRef?: ViewContainerRef;\n}\n\nexport class BottomSheetParams {\n public constructor(public readonly context: any, public readonly closeCallback: (...args) => void) {}\n}\n\ntype ViewWithDialogRoot = View & { _ngDialogRoot?: View };\n\ninterface SheetRef<TResult = unknown> {\n detachedLoader?: ComponentRef<DetachedLoader>;\n componentView?: View;\n result: Subject<TResult>;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BottomSheetService {\n public show<TResult = any>(type: Type<any>, options: BottomSheetOptions): Observable<TResult> {\n return this.showWithCloseCallback(type, options).observable;\n }\n\n public showWithCloseCallback<TResult = any>(type: Type<any>, options: BottomSheetOptions): { observable: Observable<TResult>; closeCallback: () => void } {\n if (!options.viewContainerRef) {\n throw new Error('No viewContainerRef: Make sure you pass viewContainerRef in BottomSheetOptions.');\n }\n\n const sheetRef: SheetRef<TResult> = {\n result: new Subject()\n };\n\n const parentView = this.getParentView(options.viewContainerRef);\n const factoryResolver = this.getFactoryResolver(options.viewContainerRef);\n const bottomSheetParams = this.getBottomSheetParams(options.context, sheetRef);\n\n sheetRef.detachedLoader = this.createDetachedLoader(factoryResolver, bottomSheetParams, options.viewContainerRef);\n\n this.loadComponent(type, sheetRef).then((componentView) => {\n parentView.showBottomSheet({\n ...options,\n ...bottomSheetParams,\n view: componentView\n });\n });\n\n return {\n observable: sheetRef.result,\n closeCallback: bottomSheetParams.closeCallback\n };\n }\n\n private getParentView(viewContainerRef: ViewContainerRef): View {\n let parentView = viewContainerRef.element.nativeElement as View;\n\n if (parentView instanceof AppHostView && parentView.ngAppRoot) {\n parentView = parentView.ngAppRoot;\n }\n\n // _ngDialogRoot is the first child of the previously detached proxy.\n // It should have 'viewController' (iOS) or '_dialogFragment' (Android) available for\n // presenting future bottomSheets views.\n if ((parentView as ViewWithDialogRoot)._ngDialogRoot) {\n parentView = (parentView as ViewWithDialogRoot)._ngDialogRoot;\n }\n\n return parentView;\n }\n\n private getFactoryResolver(componentContainer: ViewContainerRef): ComponentFactoryResolver {\n // resolve from particular module (moduleRef)\n // or from same module as parentView (viewContainerRef)\n return componentContainer.injector.get(ComponentFactoryResolver);\n }\n\n private createChildInjector(bottomSheetParams: BottomSheetParams, containerRef: ViewContainerRef): Injector {\n return Injector.create({\n providers: [\n {\n provide: BottomSheetParams,\n useValue: bottomSheetParams\n }\n ],\n parent: containerRef.injector\n });\n }\n\n private getBottomSheetParams(context: any, sheetRef: SheetRef): BottomSheetParams {\n const closeCallback = once((args) => {\n const { result, componentView, detachedLoader } = sheetRef;\n\n result.next(args);\n result.complete();\n\n if (componentView) {\n componentView.closeBottomSheet();\n }\n\n if (detachedLoader) {\n detachedLoader.instance.detectChanges();\n detachedLoader.destroy();\n }\n });\n\n return new BottomSheetParams(context, closeCallback);\n }\n\n private createDetachedLoader(factoryResolver: ComponentFactoryResolver, bottomSheetParams: BottomSheetParams, viewContainerRef: ViewContainerRef): ComponentRef<DetachedLoader> {\n const detachedLoaderFactory = factoryResolver.resolveComponentFactory(DetachedLoader);\n const childInjector = this.createChildInjector(bottomSheetParams, viewContainerRef);\n\n return viewContainerRef.createComponent(detachedLoaderFactory, 0, childInjector);\n }\n\n private async loadComponent(type: Type<any>, sheetRef: SheetRef): Promise<View> {\n try {\n const componentRef = await sheetRef.detachedLoader.instance.loadComponent(type);\n const detachedProxy = componentRef.location.nativeElement as ProxyViewContainer;\n\n if (detachedProxy.getChildrenCount() > 1) {\n throw new Error('BottomSheet content has more than one root view.');\n }\n\n sheetRef.componentView = detachedProxy.getChildAt(0);\n\n if (sheetRef.componentView.parent instanceof LayoutBase) {\n (sheetRef.componentView.parent as ViewWithDialogRoot)._ngDialogRoot = sheetRef.componentView;\n sheetRef.componentView.parent.removeChild(sheetRef.componentView);\n }\n\n return sheetRef.componentView;\n } catch (err) {\n console.error(err);\n\n return null;\n }\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { BottomSheetService } from './bottomsheet.service';\nimport { install } from '@nativescript-community/ui-material-bottomsheet';\n\n@NgModule()\nexport class NativeScriptMaterialBottomSheetModule {\n // This flag help us to avoid problems when using the new development workflow\n private static initialized = false;\n\n static forRoot(): ModuleWithProviders<NativeScriptMaterialBottomSheetModule> {\n return {\n ngModule: NativeScriptMaterialBottomSheetModule,\n providers: [BottomSheetService],\n };\n }\n\n public constructor() {\n if (!NativeScriptMaterialBottomSheetModule.initialized) {\n install();\n NativeScriptMaterialBottomSheetModule.initialized = true;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -43,12 +43,17 @@ class BottomSheetService {
|
|
43
43
|
if (parentView instanceof AppHostView && parentView.ngAppRoot) {
|
44
44
|
parentView = parentView.ngAppRoot;
|
45
45
|
}
|
46
|
+
// _ngDialogRoot is the first child of the previously detached proxy.
|
47
|
+
// It should have 'viewController' (iOS) or '_dialogFragment' (Android) available for
|
48
|
+
// presenting future bottomSheets views.
|
46
49
|
if (parentView._ngDialogRoot) {
|
47
50
|
parentView = parentView._ngDialogRoot;
|
48
51
|
}
|
49
52
|
return parentView;
|
50
53
|
}
|
51
54
|
getFactoryResolver(componentContainer) {
|
55
|
+
// resolve from particular module (moduleRef)
|
56
|
+
// or from same module as parentView (viewContainerRef)
|
52
57
|
return componentContainer.injector.get(ComponentFactoryResolver);
|
53
58
|
}
|
54
59
|
createChildInjector(bottomSheetParams, containerRef) {
|
@@ -103,7 +108,7 @@ class BottomSheetService {
|
|
103
108
|
}
|
104
109
|
}
|
105
110
|
BottomSheetService.ɵfac = function BottomSheetService_Factory(t) { return new (t || BottomSheetService)(); };
|
106
|
-
BottomSheetService.ɵprov = i0.ɵɵdefineInjectable({ token: BottomSheetService, factory: BottomSheetService.ɵfac, providedIn: 'root' });
|
111
|
+
BottomSheetService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: BottomSheetService, factory: BottomSheetService.ɵfac, providedIn: 'root' });
|
107
112
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BottomSheetService, [{
|
108
113
|
type: Injectable,
|
109
114
|
args: [{
|
@@ -125,13 +130,18 @@ class NativeScriptMaterialBottomSheetModule {
|
|
125
130
|
};
|
126
131
|
}
|
127
132
|
}
|
133
|
+
// This flag help us to avoid problems when using the new development workflow
|
128
134
|
NativeScriptMaterialBottomSheetModule.initialized = false;
|
129
135
|
NativeScriptMaterialBottomSheetModule.ɵfac = function NativeScriptMaterialBottomSheetModule_Factory(t) { return new (t || NativeScriptMaterialBottomSheetModule)(); };
|
130
|
-
NativeScriptMaterialBottomSheetModule.ɵmod = i0.ɵɵdefineNgModule({ type: NativeScriptMaterialBottomSheetModule });
|
131
|
-
NativeScriptMaterialBottomSheetModule.ɵinj = i0.ɵɵdefineInjector({});
|
136
|
+
NativeScriptMaterialBottomSheetModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: NativeScriptMaterialBottomSheetModule });
|
137
|
+
NativeScriptMaterialBottomSheetModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({});
|
132
138
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NativeScriptMaterialBottomSheetModule, [{
|
133
139
|
type: NgModule
|
134
140
|
}], function () { return []; }, null); })();
|
135
141
|
|
142
|
+
/**
|
143
|
+
* Generated bundle index. Do not edit.
|
144
|
+
*/
|
145
|
+
|
136
146
|
export { BottomSheetParams, BottomSheetService, NativeScriptMaterialBottomSheetModule };
|
137
147
|
//# sourceMappingURL=nativescript-community-ui-material-bottomsheet-angular.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nativescript-community-ui-material-bottomsheet-angular.mjs","sources":["../../../../src/bottomsheet/angular/bottomsheet.service.ts","../../../../src/bottomsheet/angular/bottomsheet.module.ts"],"sourcesContent":["import { ComponentFactoryResolver, ComponentRef, Injectable, Injector, Type, ViewContainerRef } from '@angular/core';\nimport type { BottomSheetOptions as MaterialBottomSheetOptions } from '@nativescript-community/ui-material-bottomsheet';\nimport { AppHostView, DetachedLoader, once } from '@nativescript/angular';\nimport { LayoutBase, ProxyViewContainer, View } from '@nativescript/core';\nimport { Observable, Subject } from 'rxjs';\n\nexport type BaseShowBottomSheetOptions = Omit<MaterialBottomSheetOptions, 'closeCallback' | 'view'>;\n\nexport interface BottomSheetOptions extends BaseShowBottomSheetOptions {\n viewContainerRef?: ViewContainerRef;\n}\n\nexport class BottomSheetParams {\n public constructor(public readonly context: any, public readonly closeCallback: (...args) => void) {}\n}\n\ntype ViewWithDialogRoot = View & { _ngDialogRoot?: View };\n\ninterface SheetRef<TResult = unknown> {\n detachedLoader?: ComponentRef<DetachedLoader>;\n componentView?: View;\n result: Subject<TResult>;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BottomSheetService {\n public show<TResult = any>(type: Type<any>, options: BottomSheetOptions): Observable<TResult> {\n return this.showWithCloseCallback(type, options).observable;\n }\n\n public showWithCloseCallback<TResult = any>(type: Type<any>, options: BottomSheetOptions): { observable: Observable<TResult>; closeCallback: () => void } {\n if (!options.viewContainerRef) {\n throw new Error('No viewContainerRef: Make sure you pass viewContainerRef in BottomSheetOptions.');\n }\n\n const sheetRef: SheetRef<TResult> = {\n result: new Subject()\n };\n\n const parentView = this.getParentView(options.viewContainerRef);\n const factoryResolver = this.getFactoryResolver(options.viewContainerRef);\n const bottomSheetParams = this.getBottomSheetParams(options.context, sheetRef);\n\n sheetRef.detachedLoader = this.createDetachedLoader(factoryResolver, bottomSheetParams, options.viewContainerRef);\n\n this.loadComponent(type, sheetRef).then((componentView) => {\n parentView.showBottomSheet({\n ...options,\n ...bottomSheetParams,\n view: componentView\n });\n });\n\n return {\n observable: sheetRef.result,\n closeCallback: bottomSheetParams.closeCallback\n };\n }\n\n private getParentView(viewContainerRef: ViewContainerRef): View {\n let parentView = viewContainerRef.element.nativeElement as View;\n\n if (parentView instanceof AppHostView && parentView.ngAppRoot) {\n parentView = parentView.ngAppRoot;\n }\n\n // _ngDialogRoot is the first child of the previously detached proxy.\n // It should have 'viewController' (iOS) or '_dialogFragment' (Android) available for\n // presenting future bottomSheets views.\n if ((parentView as ViewWithDialogRoot)._ngDialogRoot) {\n parentView = (parentView as ViewWithDialogRoot)._ngDialogRoot;\n }\n\n return parentView;\n }\n\n private getFactoryResolver(componentContainer: ViewContainerRef): ComponentFactoryResolver {\n // resolve from particular module (moduleRef)\n // or from same module as parentView (viewContainerRef)\n return componentContainer.injector.get(ComponentFactoryResolver);\n }\n\n private createChildInjector(bottomSheetParams: BottomSheetParams, containerRef: ViewContainerRef): Injector {\n return Injector.create({\n providers: [\n {\n provide: BottomSheetParams,\n useValue: bottomSheetParams\n }\n ],\n parent: containerRef.injector\n });\n }\n\n private getBottomSheetParams(context: any, sheetRef: SheetRef): BottomSheetParams {\n const closeCallback = once((args) => {\n const { result, componentView, detachedLoader } = sheetRef;\n\n result.next(args);\n result.complete();\n\n if (componentView) {\n componentView.closeBottomSheet();\n }\n\n if (detachedLoader) {\n detachedLoader.instance.detectChanges();\n detachedLoader.destroy();\n }\n });\n\n return new BottomSheetParams(context, closeCallback);\n }\n\n private createDetachedLoader(factoryResolver: ComponentFactoryResolver, bottomSheetParams: BottomSheetParams, viewContainerRef: ViewContainerRef): ComponentRef<DetachedLoader> {\n const detachedLoaderFactory = factoryResolver.resolveComponentFactory(DetachedLoader);\n const childInjector = this.createChildInjector(bottomSheetParams, viewContainerRef);\n\n return viewContainerRef.createComponent(detachedLoaderFactory, 0, childInjector);\n }\n\n private async loadComponent(type: Type<any>, sheetRef: SheetRef): Promise<View> {\n try {\n const componentRef = await sheetRef.detachedLoader.instance.loadComponent(type);\n const detachedProxy = componentRef.location.nativeElement as ProxyViewContainer;\n\n if (detachedProxy.getChildrenCount() > 1) {\n throw new Error('BottomSheet content has more than one root view.');\n }\n\n sheetRef.componentView = detachedProxy.getChildAt(0);\n\n if (sheetRef.componentView.parent instanceof LayoutBase) {\n (sheetRef.componentView.parent as ViewWithDialogRoot)._ngDialogRoot = sheetRef.componentView;\n sheetRef.componentView.parent.removeChild(sheetRef.componentView);\n }\n\n return sheetRef.componentView;\n } catch (err) {\n console.error(err);\n\n return null;\n }\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { BottomSheetService } from './bottomsheet.service';\nimport { install } from '@nativescript-community/ui-material-bottomsheet';\n\n@NgModule()\nexport class NativeScriptMaterialBottomSheetModule {\n // This flag help us to avoid problems when using the new development workflow\n private static initialized = false;\n\n static forRoot(): ModuleWithProviders<NativeScriptMaterialBottomSheetModule> {\n return {\n ngModule: NativeScriptMaterialBottomSheetModule,\n providers: [BottomSheetService],\n };\n }\n\n public constructor() {\n if (!NativeScriptMaterialBottomSheetModule.initialized) {\n install();\n NativeScriptMaterialBottomSheetModule.initialized = true;\n }\n }\n}\n"],"names":[],"mappings":";;;;;;;MAYa,iBAAiB,CAAA;IAC1B,WAAmC,CAAA,OAAY,EAAkB,aAAgC,EAAA;QAA9D,IAAO,CAAA,OAAA,GAAP,OAAO,CAAK;QAAkB,IAAa,CAAA,aAAA,GAAb,aAAa,CAAmB;KAAI;AACxG,CAAA;MAaY,kBAAkB,CAAA;IACpB,IAAI,CAAgB,IAAe,EAAE,OAA2B,EAAA;QACnE,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC;KAC/D;IAEM,qBAAqB,CAAgB,IAAe,EAAE,OAA2B,EAAA;AACpF,QAAA,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;AAC3B,YAAA,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;AACtG,SAAA;AAED,QAAA,MAAM,QAAQ,GAAsB;YAChC,MAAM,EAAE,IAAI,OAAO,EAAE;SACxB,CAAC;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1E,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAE/E,QAAA,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,EAAE,iBAAiB,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAElH,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,KAAI;YACtD,UAAU,CAAC,eAAe,CAAC;AACvB,gBAAA,GAAG,OAAO;AACV,gBAAA,GAAG,iBAAiB;AACpB,gBAAA,IAAI,EAAE,aAAa;AACtB,aAAA,CAAC,CAAC;AACP,SAAC,CAAC,CAAC;QAEH,OAAO;YACH,UAAU,EAAE,QAAQ,CAAC,MAAM;YAC3B,aAAa,EAAE,iBAAiB,CAAC,aAAa;SACjD,CAAC;KACL;AAEO,IAAA,aAAa,CAAC,gBAAkC,EAAA;AACpD,QAAA,IAAI,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,aAAqB,CAAC;AAEhE,QAAA,IAAI,UAAU,YAAY,WAAW,IAAI,UAAU,CAAC,SAAS,EAAE;AAC3D,YAAA,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC;AACrC,SAAA;QAKD,IAAK,UAAiC,CAAC,aAAa,EAAE;AAClD,YAAA,UAAU,GAAI,UAAiC,CAAC,aAAa,CAAC;AACjE,SAAA;AAED,QAAA,OAAO,UAAU,CAAC;KACrB;AAEO,IAAA,kBAAkB,CAAC,kBAAoC,EAAA;QAG3D,OAAO,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;KACpE;IAEO,mBAAmB,CAAC,iBAAoC,EAAE,YAA8B,EAAA;QAC5F,OAAO,QAAQ,CAAC,MAAM,CAAC;AACnB,YAAA,SAAS,EAAE;AACP,gBAAA;AACI,oBAAA,OAAO,EAAE,iBAAiB;AAC1B,oBAAA,QAAQ,EAAE,iBAAiB;AAC9B,iBAAA;AACJ,aAAA;YACD,MAAM,EAAE,YAAY,CAAC,QAAQ;AAChC,SAAA,CAAC,CAAC;KACN;IAEO,oBAAoB,CAAC,OAAY,EAAE,QAAkB,EAAA;AACzD,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,IAAI,KAAI;YAChC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAC;AAE3D,YAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,MAAM,CAAC,QAAQ,EAAE,CAAC;AAElB,YAAA,IAAI,aAAa,EAAE;gBACf,aAAa,CAAC,gBAAgB,EAAE,CAAC;AACpC,aAAA;AAED,YAAA,IAAI,cAAc,EAAE;AAChB,gBAAA,cAAc,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;gBACxC,cAAc,CAAC,OAAO,EAAE,CAAC;AAC5B,aAAA;AACL,SAAC,CAAC,CAAC;AAEH,QAAA,OAAO,IAAI,iBAAiB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;KACxD;AAEO,IAAA,oBAAoB,CAAC,eAAyC,EAAE,iBAAoC,EAAE,gBAAkC,EAAA;QAC5I,MAAM,qBAAqB,GAAG,eAAe,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QACtF,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;QAEpF,OAAO,gBAAgB,CAAC,eAAe,CAAC,qBAAqB,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;KACpF;AAEO,IAAA,MAAM,aAAa,CAAC,IAAe,EAAE,QAAkB,EAAA;QAC3D,IAAI;AACA,YAAA,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAChF,YAAA,MAAM,aAAa,GAAG,YAAY,CAAC,QAAQ,CAAC,aAAmC,CAAC;AAEhF,YAAA,IAAI,aAAa,CAAC,gBAAgB,EAAE,GAAG,CAAC,EAAE;AACtC,gBAAA,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACvE,aAAA;YAED,QAAQ,CAAC,aAAa,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAErD,YAAA,IAAI,QAAQ,CAAC,aAAa,CAAC,MAAM,YAAY,UAAU,EAAE;gBACpD,QAAQ,CAAC,aAAa,CAAC,MAA6B,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;gBAC7F,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACrE,aAAA;YAED,OAAO,QAAQ,CAAC,aAAa,CAAC;AACjC,SAAA;AAAC,QAAA,OAAO,GAAG,EAAE;AACV,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAEnB,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;KACJ;;oFAtHQ,kBAAkB,GAAA,CAAA,EAAA,CAAA;0DAAlB,kBAAkB,EAAA,OAAA,EAAlB,kBAAkB,CAAA,IAAA,EAAA,UAAA,EAFf,MAAM,EAAA,CAAA,CAAA;uFAET,kBAAkB,EAAA,CAAA;cAH9B,UAAU;AAAC,QAAA,IAAA,EAAA,CAAA;AACR,gBAAA,UAAU,EAAE,MAAM;AACrB,aAAA,CAAA;;;MCpBY,qCAAqC,CAAA;AAW9C,IAAA,WAAA,GAAA;AACI,QAAA,IAAI,CAAC,qCAAqC,CAAC,WAAW,EAAE;AACpD,YAAA,OAAO,EAAE,CAAC;AACV,YAAA,qCAAqC,CAAC,WAAW,GAAG,IAAI,CAAC;AAC5D,SAAA;KACJ;AAZD,IAAA,OAAO,OAAO,GAAA;QACV,OAAO;AACH,YAAA,QAAQ,EAAE,qCAAqC;YAC/C,SAAS,EAAE,CAAC,kBAAkB,CAAC;SAClC,CAAC;KACL;;AAPc,qCAAW,CAAA,WAAA,GAAG,KAAK,CAAC;0HAF1B,qCAAqC,GAAA,CAAA,EAAA,CAAA;yEAArC,qCAAqC,EAAA,CAAA,CAAA;;uFAArC,qCAAqC,EAAA,CAAA;cADjD,QAAQ;;;;;"}
|
1
|
+
{"version":3,"file":"nativescript-community-ui-material-bottomsheet-angular.mjs","sources":["../../../../src/bottomsheet/angular/bottomsheet.service.ts","../../../../src/bottomsheet/angular/bottomsheet.module.ts","../../../../src/bottomsheet/angular/nativescript-community-ui-material-bottomsheet-angular.ts"],"sourcesContent":["import { ComponentFactoryResolver, ComponentRef, Injectable, Injector, Type, ViewContainerRef } from '@angular/core';\nimport type { BottomSheetOptions as MaterialBottomSheetOptions } from '@nativescript-community/ui-material-bottomsheet';\nimport { AppHostView, DetachedLoader, once } from '@nativescript/angular';\nimport { LayoutBase, ProxyViewContainer, View } from '@nativescript/core';\nimport { Observable, Subject } from 'rxjs';\n\nexport type BaseShowBottomSheetOptions = Omit<MaterialBottomSheetOptions, 'closeCallback' | 'view'>;\n\nexport interface BottomSheetOptions extends BaseShowBottomSheetOptions {\n viewContainerRef?: ViewContainerRef;\n}\n\nexport class BottomSheetParams {\n public constructor(public readonly context: any, public readonly closeCallback: (...args) => void) {}\n}\n\ntype ViewWithDialogRoot = View & { _ngDialogRoot?: View };\n\ninterface SheetRef<TResult = unknown> {\n detachedLoader?: ComponentRef<DetachedLoader>;\n componentView?: View;\n result: Subject<TResult>;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BottomSheetService {\n public show<TResult = any>(type: Type<any>, options: BottomSheetOptions): Observable<TResult> {\n return this.showWithCloseCallback(type, options).observable;\n }\n\n public showWithCloseCallback<TResult = any>(type: Type<any>, options: BottomSheetOptions): { observable: Observable<TResult>; closeCallback: () => void } {\n if (!options.viewContainerRef) {\n throw new Error('No viewContainerRef: Make sure you pass viewContainerRef in BottomSheetOptions.');\n }\n\n const sheetRef: SheetRef<TResult> = {\n result: new Subject()\n };\n\n const parentView = this.getParentView(options.viewContainerRef);\n const factoryResolver = this.getFactoryResolver(options.viewContainerRef);\n const bottomSheetParams = this.getBottomSheetParams(options.context, sheetRef);\n\n sheetRef.detachedLoader = this.createDetachedLoader(factoryResolver, bottomSheetParams, options.viewContainerRef);\n\n this.loadComponent(type, sheetRef).then((componentView) => {\n parentView.showBottomSheet({\n ...options,\n ...bottomSheetParams,\n view: componentView\n });\n });\n\n return {\n observable: sheetRef.result,\n closeCallback: bottomSheetParams.closeCallback\n };\n }\n\n private getParentView(viewContainerRef: ViewContainerRef): View {\n let parentView = viewContainerRef.element.nativeElement as View;\n\n if (parentView instanceof AppHostView && parentView.ngAppRoot) {\n parentView = parentView.ngAppRoot;\n }\n\n // _ngDialogRoot is the first child of the previously detached proxy.\n // It should have 'viewController' (iOS) or '_dialogFragment' (Android) available for\n // presenting future bottomSheets views.\n if ((parentView as ViewWithDialogRoot)._ngDialogRoot) {\n parentView = (parentView as ViewWithDialogRoot)._ngDialogRoot;\n }\n\n return parentView;\n }\n\n private getFactoryResolver(componentContainer: ViewContainerRef): ComponentFactoryResolver {\n // resolve from particular module (moduleRef)\n // or from same module as parentView (viewContainerRef)\n return componentContainer.injector.get(ComponentFactoryResolver);\n }\n\n private createChildInjector(bottomSheetParams: BottomSheetParams, containerRef: ViewContainerRef): Injector {\n return Injector.create({\n providers: [\n {\n provide: BottomSheetParams,\n useValue: bottomSheetParams\n }\n ],\n parent: containerRef.injector\n });\n }\n\n private getBottomSheetParams(context: any, sheetRef: SheetRef): BottomSheetParams {\n const closeCallback = once((args) => {\n const { result, componentView, detachedLoader } = sheetRef;\n\n result.next(args);\n result.complete();\n\n if (componentView) {\n componentView.closeBottomSheet();\n }\n\n if (detachedLoader) {\n detachedLoader.instance.detectChanges();\n detachedLoader.destroy();\n }\n });\n\n return new BottomSheetParams(context, closeCallback);\n }\n\n private createDetachedLoader(factoryResolver: ComponentFactoryResolver, bottomSheetParams: BottomSheetParams, viewContainerRef: ViewContainerRef): ComponentRef<DetachedLoader> {\n const detachedLoaderFactory = factoryResolver.resolveComponentFactory(DetachedLoader);\n const childInjector = this.createChildInjector(bottomSheetParams, viewContainerRef);\n\n return viewContainerRef.createComponent(detachedLoaderFactory, 0, childInjector);\n }\n\n private async loadComponent(type: Type<any>, sheetRef: SheetRef): Promise<View> {\n try {\n const componentRef = await sheetRef.detachedLoader.instance.loadComponent(type);\n const detachedProxy = componentRef.location.nativeElement as ProxyViewContainer;\n\n if (detachedProxy.getChildrenCount() > 1) {\n throw new Error('BottomSheet content has more than one root view.');\n }\n\n sheetRef.componentView = detachedProxy.getChildAt(0);\n\n if (sheetRef.componentView.parent instanceof LayoutBase) {\n (sheetRef.componentView.parent as ViewWithDialogRoot)._ngDialogRoot = sheetRef.componentView;\n sheetRef.componentView.parent.removeChild(sheetRef.componentView);\n }\n\n return sheetRef.componentView;\n } catch (err) {\n console.error(err);\n\n return null;\n }\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { BottomSheetService } from './bottomsheet.service';\nimport { install } from '@nativescript-community/ui-material-bottomsheet';\n\n@NgModule()\nexport class NativeScriptMaterialBottomSheetModule {\n // This flag help us to avoid problems when using the new development workflow\n private static initialized = false;\n\n static forRoot(): ModuleWithProviders<NativeScriptMaterialBottomSheetModule> {\n return {\n ngModule: NativeScriptMaterialBottomSheetModule,\n providers: [BottomSheetService],\n };\n }\n\n public constructor() {\n if (!NativeScriptMaterialBottomSheetModule.initialized) {\n install();\n NativeScriptMaterialBottomSheetModule.initialized = true;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@nativescript-community/ui-material-bottomsheet",
|
3
|
-
"version": "7.0.
|
3
|
+
"version": "7.0.41",
|
4
4
|
"description": "Material Design Bottom Sheets slide up from the bottom of the screen to reveal more content. Bottom sheets integrate with the app to display supporting content or present deep-linked content from other apps.",
|
5
5
|
"main": "./bottomsheet",
|
6
6
|
"sideEffects": false,
|
@@ -46,7 +46,7 @@
|
|
46
46
|
},
|
47
47
|
"readmeFilename": "README.md",
|
48
48
|
"dependencies": {
|
49
|
-
"@nativescript-community/ui-material-core": "^7.0.
|
49
|
+
"@nativescript-community/ui-material-core": "^7.0.41"
|
50
50
|
},
|
51
|
-
"gitHead": "
|
51
|
+
"gitHead": "b24131b59dff199386b753f92be168d30a15634a"
|
52
52
|
}
|
package/vue/index.d.ts
CHANGED
@@ -3,6 +3,7 @@ import { BottomSheetOptions } from '../bottomsheet';
|
|
3
3
|
import { View } from '@nativescript/core';
|
4
4
|
export interface VueBottomSheetOptions extends Omit<BottomSheetOptions, 'view'> {
|
5
5
|
props?: any;
|
6
|
+
on?: Record<string, (...args: any[]) => any>;
|
6
7
|
}
|
7
8
|
declare module 'nativescript-vue' {
|
8
9
|
interface NativeScriptVue<V = View> extends Vue {
|
package/vue/index.js
CHANGED
package/vue/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["vue/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["vue/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAc1C,IAAI,iBAAiB,GAAG,CAAC,CAAC;AAE1B,SAAS,qBAAqB,CAAC,OAAO;IAClC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;QACvC,OAAO,IAAI,CAAC;KACf;IAED,MAAM,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC;IAE/B,OAAO,CACH,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;SACf,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;SACvC,MAAM,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;SACrC,IAAI,CAAC,IAAI,CAAC,GAAG,cAAc,CACnC,CAAC;AACN,CAAC;AAED,MAAM,iBAAiB,GAAG;IACtB,OAAO,CAAC,GAAG;QACP,GAAG,CAAC,SAAS,CAAC,gBAAgB,GAAG,UAAU,SAAS,EAAE,OAA8B;YAChF,OAAO,IAAI,OAAO,CAAC,CAAC,OAA0B,EAAE,EAAE;gBAC9C,IAAI,QAAQ,GAAG,KAAK,CAAC;gBACrB,IAAI,gBAAgB,GAAG,IAAI,GAAG,CAAC;oBAC3B,IAAI,EAAE,kBAAkB;oBACxB,MAAM,EAAE,IAAI,CAAC,KAAK;oBAClB,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CACV,CAAC,CAAC,SAAS,EAAE;wBACT,KAAK,EAAE,OAAO,CAAC,KAAK;wBACpB,EAAE,EAAE,OAAO,CAAC,EAAE;wBACd,GAAG,EAAE,qBAAqB,CAAC,OAAO,CAAC;qBACtC,CAAC;iBACT,CAAC,CAAC;gBACH,gBAAgB,CAAC,MAAM,EAAE,CAAC;gBAC1B,IAAI,CAAC,UAAU,CAAC,eAAe,CAC3B,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE;oBACvB,IAAI,EAAE,gBAAgB,CAAC,UAAU;oBACjC,aAAa,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE;wBACvB,IAAI,QAAQ,EAAE;4BACV,OAAO;yBACV;wBACD,QAAQ,GAAG,IAAI,CAAC;wBAChB,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,UAAU,EAAE;4BACjD,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;4BACtE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;4BACjB,gBAAgB,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;4BAC5C,gBAAgB,CAAC,QAAQ,EAAE,CAAC;4BAC5B,gBAAgB,GAAG,IAAI,CAAC;yBAC3B;oBACL,CAAC;iBACJ,CAAC,CACL,CAAC;YACN,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QACF,GAAG,CAAC,SAAS,CAAC,iBAAiB,GAAG,UAAU,GAAG,IAAI;YAC/C,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAClE,CAAC,CAAC;IACN,CAAC;CACJ,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
package/vue3/index.d.ts
CHANGED
@@ -16,5 +16,6 @@ declare const BottomSheetPlugin: {
|
|
16
16
|
interface VueBottomSheetOptions extends Partial<BottomSheetOptions> {
|
17
17
|
view?: string | ViewBase;
|
18
18
|
props?: any;
|
19
|
+
on?: Record<string, (...args: any[]) => any>;
|
19
20
|
}
|
20
21
|
export { BottomSheetPlugin, VueBottomSheetOptions, useBottomSheet };
|
package/vue3/index.js
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
import { App, createApp } from 'nativescript-vue3';
|
2
2
|
import { Frame, View, ViewBase } from '@nativescript/core';
|
3
|
-
import { ComponentCustomProperties } from '@vue/runtime-core';
|
4
3
|
const modalStack = [];
|
5
4
|
const useBottomSheet = () => {
|
6
5
|
const showBottomSheet = (component, options) => showSheet(component, options);
|
@@ -12,9 +11,13 @@ const useBottomSheet = () => {
|
|
12
11
|
};
|
13
12
|
const showSheet = (component, options) => new Promise((resolve) => {
|
14
13
|
let resolved = false;
|
15
|
-
|
14
|
+
const listeners = Object.entries(options.on ?? {}).reduce((listeners, [key, value]) => {
|
15
|
+
listeners['on' + key.charAt(0).toUpperCase() + key.slice(1)] = value;
|
16
|
+
return listeners;
|
17
|
+
}, {});
|
18
|
+
let navEntryInstance = createNativeView(component, Object.assign({
|
16
19
|
props: options.props
|
17
|
-
}).mount();
|
20
|
+
}, listeners)).mount();
|
18
21
|
const viewAttached = options.view ?? Frame.topmost().currentPage;
|
19
22
|
viewAttached.showBottomSheet(Object.assign({}, options, {
|
20
23
|
view: navEntryInstance.$el.nativeView,
|
package/vue3/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["vue3/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["vue3/index.ts"],"names":[],"mappings":"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"}
|